@raydium-io/raydium-sdk-v2
Version:
An SDK for building applications on top of Raydium.
1 lines • 130 kB
JavaScript
var $i=Object.defineProperty,Ji=Object.defineProperties;var er=Object.getOwnPropertyDescriptors;var Qt=Object.getOwnPropertySymbols;var Vo=Object.prototype.hasOwnProperty,_o=Object.prototype.propertyIsEnumerable;var vo=(a,e,t)=>e in a?$i(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,M=(a,e)=>{for(var t in e||(e={}))Vo.call(e,t)&&vo(a,t,e[t]);if(Qt)for(var t of Qt(e))_o.call(e,t)&&vo(a,t,e[t]);return a},D=(a,e)=>Ji(a,er(e));var Ne=(a,e)=>{var t={};for(var n in a)Vo.call(a,n)&&e.indexOf(n)<0&&(t[n]=a[n]);if(a!=null&&Qt)for(var n of Qt(a))e.indexOf(n)<0&&_o.call(a,n)&&(t[n]=a[n]);return t};import{get as Eo,set as tr}from"lodash";var Rn=class{constructor(e){this.logLevel=e.logLevel!==void 0?e.logLevel:0,this.name=e.name}set level(e){this.logLevel=e}get time(){return Date.now().toString()}get moduleName(){return this.name}isLogLevel(e){return e<=this.logLevel}error(...e){return this.isLogLevel(0)?(console.error(this.time,this.name,"sdk logger error",...e),this):this}logWithError(...e){let t=e.map(n=>typeof n=="object"?JSON.stringify(n):n).join(", ");throw new Error(t)}warning(...e){return this.isLogLevel(1)?(console.warn(this.time,this.name,"sdk logger warning",...e),this):this}info(...e){return this.isLogLevel(2)?(console.info(this.time,this.name,"sdk logger info",...e),this):this}debug(...e){return this.isLogLevel(3)?(console.debug(this.time,this.name,"sdk logger debug",...e),this):this}},Do={},nr={};function Q(a){let e=Eo(Do,a);if(!e){let t=Eo(nr,a);e=new Rn({name:a,logLevel:t}),tr(Do,a,e)}return e}import{PublicKey as St,sendAndConfirmTransaction as ko,SystemProgram as iu,Transaction as Ut,TransactionMessage as Gt,VersionedTransaction as zt}from"@solana/web3.js";import ru from"axios";import{PublicKey as go,AddressLookupTableAccount as Bt}from"@solana/web3.js";import{PublicKey as ou}from"@solana/web3.js";import $e from"bn.js";import IC from"decimal.js";import lr from"big.js";import xu from"bn.js";import or from"toformat";var ir=or,xt=ir;import Ht from"big.js";import ar from"bn.js";import sr from"decimal.js-light";import Kt from"bn.js";var Wo=9007199254740991;function Ae(a){let e=Q("Raydium_parseBigNumberish");if(a instanceof Kt)return a;if(typeof a=="string"){if(a.match(/^-?[0-9]+$/))return new Kt(a);e.logWithError(`invalid BigNumberish string: ${a}`)}return typeof a=="number"?(a%1&&e.logWithError(`BigNumberish number underflow: ${a}`),(a>=Wo||a<=-Wo)&&e.logWithError(`BigNumberish number overflow: ${a}`),new Kt(String(a))):typeof a=="bigint"?new Kt(a.toString()):(e.error(`invalid BigNumberish value: ${a}`),new Kt(0))}var Zt=Q("module/fraction"),Ln=xt(Ht),Ct=xt(sr),ur={[0]:Ct.ROUND_DOWN,[1]:Ct.ROUND_HALF_UP,[2]:Ct.ROUND_UP},cr={[0]:Ht.roundDown,[1]:Ht.roundHalfUp,[2]:Ht.roundUp},te=class{constructor(e,t=new ar(1)){this.numerator=Ae(e),this.denominator=Ae(t)}get quotient(){return this.numerator.div(this.denominator)}invert(){return new te(this.denominator,this.numerator)}add(e){let t=e instanceof te?e:new te(Ae(e));return this.denominator.eq(t.denominator)?new te(this.numerator.add(t.numerator),this.denominator):new te(this.numerator.mul(t.denominator).add(t.numerator.mul(this.denominator)),this.denominator.mul(t.denominator))}sub(e){let t=e instanceof te?e:new te(Ae(e));return this.denominator.eq(t.denominator)?new te(this.numerator.sub(t.numerator),this.denominator):new te(this.numerator.mul(t.denominator).sub(t.numerator.mul(this.denominator)),this.denominator.mul(t.denominator))}mul(e){let t=e instanceof te?e:new te(Ae(e));return new te(this.numerator.mul(t.numerator),this.denominator.mul(t.denominator))}div(e){let t=e instanceof te?e:new te(Ae(e));return new te(this.numerator.mul(t.denominator),this.denominator.mul(t.numerator))}toSignificant(e,t={groupSeparator:""},n=1){Number.isInteger(e)||Zt.logWithError(`${e} is not an integer.`),e<=0&&Zt.logWithError(`${e} is not positive.`),Ct.set({precision:e+1,rounding:ur[n]});let i=new Ct(this.numerator.toString()).div(this.denominator.toString()).toSignificantDigits(e);return i.toFormat(i.decimalPlaces(),t)}toFixed(e,t={groupSeparator:""},n=1){return Number.isInteger(e)||Zt.logWithError(`${e} is not an integer.`),e<0&&Zt.logWithError(`${e} is negative.`),Ln.DP=e,Ln.RM=cr[n]||1,new Ln(this.numerator.toString()).div(this.denominator.toString()).toFormat(e,t)}isZero(){return this.numerator.isZero()}};var vu=Q("Raydium_amount"),Vu=xt(lr);import{PublicKey as dr}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as qo}from"@solana/spl-token";var jt={chainId:101,address:dr.default.toBase58(),programId:qo.toBase58(),decimals:9,symbol:"SOL",name:"solana",logoURI:"https://img-v1.raydium.io/icon/So11111111111111111111111111111111111111112.png",tags:[],priority:2,type:"raydium",extensions:{coingeckoId:"solana"}},_e={chainId:101,address:"So11111111111111111111111111111111111111112",programId:qo.toBase58(),decimals:9,symbol:"WSOL",name:"Wrapped SOL",logoURI:"https://img-v1.raydium.io/icon/So11111111111111111111111111111111111111112.png",tags:[],priority:2,type:"raydium",extensions:{coingeckoId:"solana"}};import{PublicKey as Nn}from"@solana/web3.js";import{PublicKey as oe,SystemProgram as Uo,SYSVAR_RENT_PUBKEY as pr}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as fr}from"@solana/spl-token";function dt({pubkey:a,isSigner:e=!1,isWritable:t=!0}){return{pubkey:a,isWritable:t,isSigner:e}}var yr=[dt({pubkey:fr,isWritable:!1}),dt({pubkey:Uo.programId,isWritable:!1}),dt({pubkey:pr,isWritable:!1})];function Go({publicKey:a,transformSol:e}){let t=zo(a.toString());if(t instanceof oe)return e&&t.equals(et)?Ee:t;if(e&&t.toString()===et.toBase58())return Ee;if(typeof t=="string"){if(t===oe.default.toBase58())return oe.default;try{return new oe(t)}catch{throw new Error("invalid public key")}}throw new Error("invalid public key")}function zo(a){try{return new oe(a)}catch{return a}}var On=new oe("MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"),tt=new oe("SysvarRent111111111111111111111111111111111"),br=new oe("SysvarC1ock11111111111111111111111111111111"),nt=new oe("metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),gr=new oe("Sysvar1nstructions1111111111111111111111111"),Yo=Uo.programId,zu=new oe("4k3Dyjzvzp8eMZWUXbBCjEvwSkkk59S5iCNLY3QrkX6R"),Yu=new oe("Ea5SjE2Y6yvCeW5dYTn7PYMuW5ikXkvbGdcmSnXeaLjS"),Xu=new oe("SRMuApVNdxXokk5GT7XD5cUUgXMBCoAz2LHeuAoKWRt"),Qu=new oe("EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"),Zu=new oe("Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB"),Hu=new oe("mSoLzYCxHdYgdzU16g5QSh3i5K3z3KZK7ytfqcJm7So"),ju=new oe("7dHbWXmci3dT8UFYWYZweBLXgycu7Y3iL6trKn1Y7ARj"),$u=new oe("USDH1SM1ojwWUga67PGrgFWUHibbjqMvuMaDkRJTgkX"),Ju=new oe("NRVwhjBQiUPYtfDT5zRBVJajzFQHaBUNtC7SNVvqRFa"),ec=new oe("ANAxByE6G2WjFp7A4NqtWYXb3mgruyzZYg3spfxe6Lbo"),tc=new oe("7vfCXTUXx5WJV5JADk17DUJ4ksgau7utNKj4b963voxs"),Ee=new oe("So11111111111111111111111111111111111111112"),et=oe.default;var Mn=class{constructor({mint:e,decimals:t,symbol:n,name:i,skipMint:r=!1,isToken2022:s=!1}){if(e===et.toBase58()||e instanceof Nn&&et.equals(e)){this.decimals=_e.decimals,this.symbol=_e.symbol,this.name=_e.name,this.mint=new Nn(_e.address),this.isToken2022=!1;return}this.decimals=t,this.symbol=n||e.toString().substring(0,6),this.name=i||e.toString().substring(0,6),this.mint=r?Nn.default:Go({publicKey:e}),this.isToken2022=s}equals(e){return this===e?!0:this.mint.equals(e.mint)}},fe=Mn;fe.WSOL=new Mn(D(M({},_e),{mint:_e.address}));var Fn=class{constructor({decimals:e,symbol:t="UNKNOWN",name:n="UNKNOWN"}){this.decimals=e,this.symbol=t,this.name=n}equals(e){return this===e}},$t=Fn;$t.SOL=new Fn(jt);import Pr from"bn.js";var pc=new te(new Pr(100));var Ac=Q("Raydium_price");import{merge as IK}from"lodash";import Kc from"axios";var Xo={BASE_HOST:"https://api-v3.raydium.io",OWNER_BASE_HOST:"https://owner-v1.raydium.io",SERVICE_BASE_HOST:"https://service.raydium.io",MONITOR_BASE_HOST:"https://monitor.raydium.io",SERVICE_1_BASE_HOST:"https://service-v1.raydium.io",TEMP_HOST:"https://temp-api-v1.raydium.io",SEND_TRANSACTION:"/send-transaction",FARM_ARP:"/main/farm/info",FARM_ARP_LINE:"/main/farm-apr-tv",CLMM_CONFIG:"/main/clmm-config",CPMM_CONFIG:"/main/cpmm-config",CLMM_DYNAMIC_CONFIG:"/main/clmm-dynamic-config",VERSION:"/main/version",CHECK_AVAILABILITY:"/v3/main/AvailabilityCheckAPI",RPCS:"/main/rpcs",INFO:"/main/info",STAKE_POOLS:"/main/stake-pools",CHAIN_TIME:"/main/chain-time",TOKEN_LIST:"/mint/list",MINT_INFO_ID:"/mint/ids",JUP_TOKEN_LIST:"https://lite-api.jup.ag/tokens/v2/tag?query=verified",POOL_LIST:"/pools/info/list-v2",POOL_SEARCH_BY_ID:"/pools/info/ids",POOL_SEARCH_MINT:"/pools/info/list-v2",POOL_SEARCH_LP:"/pools/info/lps",POOL_KEY_BY_ID:"/pools/key/ids",POOL_LIQUIDITY_LINE:"/pools/line/liquidity",POOL_POSITION_LINE:"/pools/line/position",FARM_INFO:"/farms/info/ids",FARM_LP_INFO:"/farms/info/lp",FARM_KEYS:"/farms/key/ids",OWNER_CREATED_FARM:"/create-pool/{owner}",OWNER_IDO:"/main/ido/{owner}",OWNER_STAKE_FARMS:"/position/stake/{owner}",OWNER_LOCK_POSITION:"/position/clmm-lock/{owner}",IDO_KEYS:"/ido/key/ids",SWAP_HOST:"https://transaction-v1.raydium.io",SWAP_COMPUTE:"/compute/",SWAP_TX:"/transaction/",MINT_PRICE:"/mint/price",MIGRATE_CONFIG:"/main/migrate-lp",PRIORITY_FEE:"/main/auto-fee",CPMM_LOCK:"https://dynamic-ipfs.raydium.io/lock/cpmm/position",LAUNCH_AUTH_HOST:"https://launch-auth-v1.raydium.io",LAUNCH_COMMENT_HOST:"hhttps://launch-forum-v1.raydium.io",LAUNCH_HISTORY_HOST:"https://launch-history-v1.raydium.io",LAUNCH_MINT_HOST:"https://launch-mint-v1.raydium.io"},Ar=D(M({},Xo),{BASE_HOST:"https://api-v3-devnet.raydium.io",OWNER_BASE_HOST:"https://owner-v1-devnet.raydium.io",SWAP_HOST:"https://transaction-v1-devnet.raydium.io",CPMM_LOCK:"https://dynamic-ipfs-devnet.raydium.io/lock/cpmm/position",TEMP_HOST:"https://temp-api-v1-devnet.raydium.io",LAUNCH_AUTH_HOST:"https://launch-auth-v1-devnet.raydium.io",LAUNCH_COMMENT_HOST:"https://launch-forum-v1-devnet.raydium.io",LAUNCH_HISTORY_HOST:"https://launch-history-v1-devnet.raydium.io",LAUNCH_MINT_HOST:"https://launch-mint-v1-devnet.raydium.io"});var jc=Q("Raydium_Api");import{PublicKey as Em,SystemProgram as Dm}from"@solana/web3.js";import{AccountLayout as zm,createAssociatedTokenAccountIdempotentInstruction as Ym,TOKEN_PROGRAM_ID as Xm,TOKEN_2022_PROGRAM_ID as Qm}from"@solana/spl-token";import{PublicKey as bm,SystemProgram as Pm}from"@solana/web3.js";import km from"bn.js";import{createCloseAccountInstruction as Bm,createInitializeAccountInstruction as Sm,createTransferInstruction as xm,TOKEN_PROGRAM_ID as Km}from"@solana/spl-token";var le={CreateAccount:"CreateAccount",InitAccount:"InitAccount",CreateATA:"CreateATA",CloseAccount:"CloseAccount",TransferAmount:"TransferAmount",InitMint:"InitMint",MintTo:"MintTo",InitMarket:"InitMarket",Util1216OwnerClaim:"Util1216OwnerClaim",SetComputeUnitPrice:"SetComputeUnitPrice",SetComputeUnitLimit:"SetComputeUnitLimit",ClmmCreatePool:"ClmmCreatePool",ClmmOpenPosition:"ClmmOpenPosition",ClmmIncreasePosition:"ClmmIncreasePosition",ClmmDecreasePosition:"ClmmDecreasePosition",ClmmClosePosition:"ClmmClosePosition",ClmmSwapBaseIn:"ClmmSwapBaseIn",ClmmSwapBaseOut:"ClmmSwapBaseOut",ClmmInitReward:"ClmmInitReward",ClmmSetReward:"ClmmSetReward",ClmmCollectReward:"ClmmCollectReward",ClmmLockPosition:"ClmmLockPosition",ClmmHarvestLockPosition:"ClmmHarvestLockPosition",AmmV4Swap:"AmmV4Swap",AmmV4AddLiquidity:"AmmV4AddLiquidity",AmmV4RemoveLiquidity:"AmmV4RemoveLiquidity",AmmV4SimulatePoolInfo:"AmmV4SimulatePoolInfo",AmmV4SwapBaseIn:"AmmV4SwapBaseIn",AmmV4SwapBaseOut:"AmmV4SwapBaseOut",AmmV4CreatePool:"AmmV4CreatePool",AmmV4InitPool:"AmmV4InitPool",AmmV5AddLiquidity:"AmmV5AddLiquidity",AmmV5RemoveLiquidity:"AmmV5RemoveLiquidity",AmmV5SimulatePoolInfo:"AmmV5SimulatePoolInfo",AmmV5SwapBaseIn:"AmmV5SwapBaseIn",AmmV5SwapBaseOut:"AmmV5SwapBaseOut",RouteSwap:"RouteSwap",RouteSwap1:"RouteSwap1",RouteSwap2:"RouteSwap2",FarmV3Deposit:"FarmV3Deposit",FarmV3Withdraw:"FarmV3Withdraw",FarmV3CreateLedger:"FarmV3CreateLedger",FarmV4Withdraw:"FarmV4Withdraw",FarmV5Deposit:"FarmV5Deposit",FarmV5Withdraw:"FarmV5Withdraw",FarmV5CreateLedger:"FarmV5CreateLedger",FarmV6Deposit:"FarmV6Deposit",FarmV6Withdraw:"FarmV6Withdraw",FarmV6Create:"FarmV6Create",FarmV6Restart:"FarmV6Restart",FarmV6CreatorAddReward:"FarmV6CreatorAddReward",FarmV6CreatorWithdraw:"FarmV6CreatorWithdraw",CpmmCreatePool:"CpmmCreatePool",CpmmAddLiquidity:"CpmmAddLiquidity",CpmmWithdrawLiquidity:"CpmmWithdrawLiquidity",CpmmSwapBaseIn:"CpmmSwapBaseIn",CpmmSwapBaseOut:"CpmmSwapBaseOut",CpmmLockLp:"CpmmLockLp",CpmmCollectLockFee:"CpmmCollectLockFee",TransferTip:"TransferTip"};import{Keypair as om,PublicKey as im}from"@solana/web3.js";import sm from"bn.js";import{TOKEN_PROGRAM_ID as lm}from"@solana/spl-token";import{PublicKey as Or}from"@solana/web3.js";import $o,{isBN as Jo}from"bn.js";import{bits as wr,BitStructure as cl,blob as kr,Blob as ll,cstr as ml,f32 as dl,f32be as pl,f64 as fl,f64be as yl,greedy as bl,Layout as Tr,ns64 as gl,ns64be as Pl,nu64 as hr,nu64be as Al,offset as Ir,s16 as wl,s16be as kl,s24 as Tl,s24be as hl,s32 as Br,s32be as Il,s40 as Bl,s40be as Sl,s48 as xl,s48be as Kl,s8 as Cl,seq as Sr,struct as Rl,Structure as xr,u16 as Kr,u16be as Ll,u24 as Ol,u24be as Nl,u32 as Cr,u32be as Ml,u40 as Fl,u40be as vl,u48 as Vl,u48be as _l,u8 as Rr,UInt as Lr,union as El,Union as Dl,unionLayoutDiscriminator as Wl,utf8 as ql}from"@solana/buffer-layout";var Jt=Tr,Qo=xr;var vn=Lr;var Zo=Rr,se=Kr;var Lt=Cr;var Ho=hr;var Me=Br;var jo=Sr;var z=kr;var Vn=wr,_n=Ir;var ot=class extends Jt{constructor(t,n,i){super(t,i);this.blob=z(t),this.signed=n}decode(t,n=0){let i=new $o(this.blob.decode(t,n),10,"le");return this.signed?i.fromTwos(this.span*8).clone():i}encode(t,n,i=0){return typeof t=="number"&&(t=new $o(t)),this.signed&&(t=t.toTwos(this.span*8)),this.blob.encode(t.toArrayLike(Buffer,"le",this.span),n,i)}},en=class extends Jt{constructor(t){super(8,t);this._lower=Vn(Lt(),!1),this._upper=Vn(Lt(),!1)}addBoolean(t){this._lower.fields.length<32?this._lower.addBoolean(t):this._upper.addBoolean(t)}decode(t,n=0){let i=this._lower.decode(t,n),r=this._upper.decode(t,n+this._lower.span);return M(M({},i),r)}encode(t,n,i=0){return this._lower.encode(t,n,i)+this._upper.encode(t,n,i+this._lower.span)}};function h(a){return new vn(1,a)}function ie(a){return new vn(4,a)}function o(a){return new ot(8,!1,a)}function G(a){return new ot(16,!1,a)}function ei(a){return new ot(1,!0,a)}function pt(a){return new ot(8,!0,a)}function ti(a){return new ot(16,!0,a)}var it=class extends Jt{constructor(t,n,i,r){super(t.span,r);this.layout=t,this.decoder=n,this.encoder=i}decode(t,n){return this.decoder(this.layout.decode(t,n))}encode(t,n,i){return this.layout.encode(this.encoder(t),n,i)}getSpan(t,n){return this.layout.getSpan(t,n)}};function l(a){return new it(z(32),e=>new Or(e),e=>e.toBuffer(),a)}function Re(a){return new it(Zo(),Nr,Mr,a)}function Nr(a){if(a===0)return!1;if(a===1)return!0;throw new Error("Invalid bool: "+a)}function Mr(a){return a?1:0}function ni(a,e){let t=Lt("length"),n=w([t,L(a,_n(t,-t.span),"values")]);return new it(n,({values:i})=>i,i=>({values:i}),e)}function Fr(a){let e=Lt("length"),t=w([e,z(_n(e,-e.span),"data")]);return new it(t,({data:n})=>n,n=>({data:n}),a)}function ke(a){return new it(Fr(),e=>e.toString("utf-8"),e=>Buffer.from(e,"utf-8"),a)}var En=class extends Qo{decode(e,t){return super.decode(e,t)}};function w(a,e,t){return new En(a,e,t)}function L(a,e,t){let n,i=typeof e=="number"?e:Jo(e)?e.toNumber():new Proxy(e,{get(r,s){if(!n){let c=Reflect.get(r,"count");n=Jo(c)?c.toNumber():c,Reflect.set(r,"count",n)}return Reflect.get(r,s)},set(r,s,c){return s==="count"&&(n=c),Reflect.set(r,s,c)}});return jo(a,i,t)}var tn=w([l("mint"),l("owner"),o("amount"),ie("delegateOption"),l("delegate"),h("state"),ie("isNativeOption"),o("isNative"),o("delegatedAmount"),ie("closeAuthorityOption"),l("closeAuthority")]);import{PublicKey as UP,SystemProgram as GP}from"@solana/web3.js";import{createAssociatedTokenAccountIdempotentInstruction as YP}from"@solana/spl-token";import{PublicKey as qr}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as Ur}from"@solana/spl-token";import{ComputeBudgetProgram as ii,Keypair as ai,PublicKey as Vr,Transaction as si,TransactionMessage as _r,VersionedTransaction as ui}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as Er}from"@solana/spl-token";var ri=Q("Raydium_txUtil"),ci=1644;function on(a){let e=[],t=[];return a.microLamports&&(e.push(ii.setComputeUnitPrice({microLamports:a.microLamports})),t.push(le.SetComputeUnitPrice)),a.units&&(e.push(ii.setComputeUnitLimit({units:a.units})),t.push(le.SetComputeUnitLimit)),{instructions:e,instructionTypes:t}}async function ft(a,e){var n,i;let t=e!=null?e:"confirmed";return(i=await((n=a.getLatestBlockhash)==null?void 0:n.call(a,{commitment:t})))==null?void 0:i.blockhash}async function rn(a,e){return a.getSignatureStatuses([e]),new Promise((t,n)=>{let i=setTimeout(n,6e4);a.onSignature(e,r=>{if(clearTimeout(i),!r.err){t("");return}n(Object.assign(r.err,{txId:e}))},"confirmed")})}function Dn(a,e){a.length<1&&ri.logWithError(`no instructions provided: ${a.toString()}`),e.length<1&&ri.logWithError(`no signers provided:, ${e.toString()}`);let t=new si;t.recentBlockhash="11111111111111111111111111111111",t.feePayer=e[0],t.add(...a);try{return Buffer.from(t.serialize({verifySignatures:!1})).toString("base64").length<ci}catch{return!1}}function re(a,e){let[t,n]=Vr.findProgramAddressSync(a,e);return{publicKey:t,nonce:n}}function Ot({instructions:a,payer:e,signers:t}){return Dn(a,[e,...t])}function Nt({instructions:a,payer:e,lookupTableAddressAccount:t,recentBlockhash:n=ai.generate().publicKey.toString()}){let r=new _r({payerKey:e,recentBlockhash:n,instructions:a}).compileToV0Message(Object.values(t!=null?t:{}));try{return Buffer.from(new ui(r).serialize()).toString("base64").length<ci}catch{return!1}}var Dr=a=>Buffer.isBuffer(a)?a:a instanceof Uint8Array?Buffer.from(a.buffer,a.byteOffset,a.byteLength):Buffer.from(a),Wr=a=>{let e=a.serialize({requireAllSignatures:!1,verifySignatures:!1});a instanceof ui&&(e=Dr(e));try{return e instanceof Buffer?e.toString("base64"):Buffer.from(e).toString("base64")}catch{return e.toString("base64")}};function rt(a){let e=[];return a.forEach(t=>{t instanceof si&&(t.recentBlockhash||(t.recentBlockhash=Er.toBase58()),t.feePayer||(t.feePayer=ai.generate().publicKey)),e.push(Wr(t))}),console.log("simulate tx string:",e),e}function ue(a,e,t){return re([a.toBuffer(),(t!=null?t:Ur).toBuffer(),e.toBuffer()],new qr("ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"))}import{PublicKey as E}from"@solana/web3.js";var li=new E("EhhTKczWMGQt46ynNeRX1WfeagwwJd7ufHvCDjRxjo5Q"),mi=new E("CBuCnLe26faBpcBP2fktp4rp8abpcAnTWft6ZrP5Q4T"),di=new E("9KEPoZmtHUrBbhWN1v1KWLMkkvwY6WLtAVUCPRtRjP4z"),Wn=new E("FarmqiPv5eAj3j1GMdMCMUGXqPUvmquZtMy86QH6rzhG"),yd=new E("CLaimxFqjHzgTJtAGHU47NPhg6qrc5sCnpC4tBLyABQS"),Gr=new E("srmqPvymJeFKQ4zGQed1GFppgkRHL9kaELCbyksJtPX"),pi=new E("9xQeWvG816bUx9EPjHmaT23yvVM2ZWbrrpZb9PusVFin"),fi=new E("675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8"),bd=new E("5quBtoiQqxF9Jv6KYKctB59NT3gtJD2Y65kdnB1Uev3h"),zr=new E("CDSr3ssLcRB6XYPJwAfFt18MZvEZp4LjHcvzBVZ45duo"),yi=new E("CAMMCzo5YL8w4VFF8KVHrK22GGUsp5VTaW7grrKgrWqK"),Yr=new E("LockrWmn6K5twhz3y9w1dQERbmgSaRkfnTeTKbpofwE"),Xr=new E("kN1kEznaF5Xbd8LYuqtEFcxzWSBk5Fv6ygX6SqEGJVy"),bi=new E("CDSr3ssLcRB6XYPJwAfFt18MZvEZp4LjHcvzBVZ45duo"),gd=new E("routeUGWgWzqBWFcrCfv8tritsqukccJPu3q5GPP3xS"),Qr=new E("7YttLkHDoNj9wyDur5pM1ejNaAvT9X4eqaYcHQqtj2G5"),Zr=new E("6FJon3QE27qgPVggARueB22hLvoh22VzJpXv4rBEoSLF"),Hr=new E("CC12se5To1CdEuw7fDS27B7Geo5jJyL7t5UK2B44NgiH"),jr=new E("9HzJyW1qZsEiSfMUf6L2jo3CcTKAyBmSyKdwQeYisHrC"),$r=new E("DropEU8AvevN3UrXWXTMuz3rqnMczQVNjq3kcSdW2SQi"),qn=new E("CPMMoo8L3F4NbTegBCKVNunggL7H1ZpdTHKxQB5qKP1C"),Jr=new E("GpMZbSM2GgvTKHJirzeGfMFoaZ8UR2X7F4v8vHTvxFbL"),Pd=new E("DNXgeM9EiiaAbaWvwjHj9fQQLAX5ZsfHyvmYUNRAdNC8"),ea=new E("LockrWmn6K5twhz3y9w1dQERbmgSaRkfnTeTKbpofwE"),ta=new E("3f7GcQFG397GAaEnv51zR6tsTVihYRydnydDD1cXekxH"),ce=new E("LanMV9sAd7wArD4vJFi2qDdfnVhFxYSUg6eADduJ3uj"),Ad=new E("WLHv2UAZm6z4KyaaELi5pjdbJh6RESMva1Rnn8pJVVh"),wd=new E("DRay6fNdQ5J82H7xV6uq2aV3mNrUZ1J4PgSKsWgptcm6"),kd=new E("5xqNaZXX5eUi4p5HU4oz9i5QnwRNT2y6oN7yyn4qENeq"),Td=new E("4Bu96XjU84XjPDSpveTVf6LYGCkfW5FK7SNkREWcEfV4"),hd=new E("6s1xP3hpbAfFoNtUNF8mfHsjr2Bd97JxFJRWLbL6aHuX"),Mt={IDO_PROGRAM_ID_V1:Zr,IDO_PROGRAM_ID_V2:Hr,IDO_PROGRAM_ID_V3:jr,IDO_PROGRAM_ID_V4:$r};var Xe={OPEN_BOOK_PROGRAM:new E("EoTcMgcDRTJVZDMZWBoU6rhYHZfkNTVEAfz3uUJRcYGj"),SERUM_PROGRAM_ID_V3:new E("Ray1111111111111111111111111111111111111111"),AMM_V4:new E("DRaya7Kj3aMWQSy19kSjvmuwq9docCHofyP9kanQGaav"),AMM_STABLE:new E("DRayDdXc1NZQ9C3hRWmoSf8zK4iapgMnjdNZWrfwsP8m"),CLMM_PROGRAM_ID:new E("DRayAUgENGQBKVaX8owNhgzkEDyoHTGVEGHVJT1E9pfH"),CLMM_LOCK_PROGRAM_ID:new E("DRay25Usp3YJAi7beckgpGUC7mGJ2cR1AVPxhYfwVCUX"),CLMM_LOCK_AUTH_ID:new E("6Aoh8h2Lw2m5UGxYR8AdAL87jTWYeKoxM52mJRzfYwN"),CREATE_CPMM_POOL_PROGRAM:new E("DRaycpLY18LhpbydsBWbVJtxpNv9oXPgjRSfpF2bWpYb"),CREATE_CPMM_POOL_AUTH:new E("CXniRufdq5xL8t8jZAPxsPZDpuudwuJSPWnbcD5Y5Nxq"),CREATE_CPMM_POOL_FEE_ACC:new E("3oE58BKVt8KuYkGxx8zBojugnymWmBiyafWgMrnb6eYy"),LOCK_CPMM_PROGRAM:new E("DRay25Usp3YJAi7beckgpGUC7mGJ2cR1AVPxhYfwVCUX"),LOCK_CPMM_AUTH:new E("7qWVV8UY2bRJfDLP4s37YzBPKUkVB46DStYJBpYbQzu3"),UTIL1216:E.default,Router:new E("DRaybByLpbUL57LJARs3j8BitTxVfzBg351EaMr5UTCd"),FARM_PROGRAM_ID_V3:new E("DRayWyrLmEW5KEeqs8kdTMMaBabapqagaBC7KWpGtJeZ"),FARM_PROGRAM_ID_V4:new E("Ray1111111111111111111111111111111111111111"),FARM_PROGRAM_ID_V5:new E("DRayiCGSZgku1GTK6rXD6mVDdingXy6APAH1R6R5L2LC"),FARM_PROGRAM_ID_V6:new E("DRayzbYakXs45ELHkzH6vC3fuhQqTAnv5A68gdFuvZyZ"),LAUNCHPAD_PROGRAM:new E("DRay6fNdQ5J82H7xV6uq2aV3mNrUZ1J4PgSKsWgptcm6"),LAUNCHPAD_AUTH:new E("5xqNaZXX5eUi4p5HU4oz9i5QnwRNT2y6oN7yyn4qENeq"),LAUNCHPAD_PLATFORM:new E("2Jx4KTDrVSdWNazuGpcA8n3ZLTRGGBDxAWhuKe2Xcj2a"),LAUNCHPAD_CONFIG:new E("7ZR4zD7PYfY2XxoG1Gxcy2EgEeGYrpxrwzPuwdUBssEt"),FEE_DESTINATION_ID:new E("9y8ENuuZ3b19quffx9hQvRVygG5ky6snHfRvGpuSfeJy"),MODEL_DATA_PUBKEY:new E("Ray1111111111111111111111111111111111111111")};import nA from"decimal.js";import{createAssociatedTokenAccountIdempotentInstruction as wb,TOKEN_2022_PROGRAM_ID as kb,TOKEN_PROGRAM_ID as Tb}from"@solana/spl-token";import{PublicKey as Ib}from"@solana/web3.js";import Sb from"bn.js";import Kb from"decimal.js";import{TOKEN_PROGRAM_ID as Vd}from"@solana/spl-token";import{PublicKey as Wd}from"@solana/web3.js";var na=w([ie("mintAuthorityOption"),l("mintAuthority"),o("supply"),h("decimals"),h("isInitialized"),ie("freezeAuthorityOption"),l("freezeAuthority")]);import{ASSOCIATED_TOKEN_PROGRAM_ID as qy,TOKEN_2022_PROGRAM_ID as Uy,TOKEN_PROGRAM_ID as Gy}from"@solana/spl-token";import{Keypair as Xy,PublicKey as Qy,SystemProgram as Hy,TransactionInstruction as jy}from"@solana/web3.js";import Jy from"bn.js";import Z from"bn.js";var Le=new Z(1).shln(64);var oa=new Z(1).shln(128),an=new Z(1).shln(64).subn(1),ia=new Z(1).shln(128).subn(1);var bt=new Z("4295048016"),gt=new Z("79226673521066979257578248091"),ra=new Z("59543866431248"),aa=new Z("184467440737095516"),sa=new Z("15793534762490258745");var Un=60,Jd=new Z("18446743708227953217"),ua=[{bit:0,factor:new Z("fffcb933bd6fb800",16)},{bit:1,factor:new Z("fff97272373d4000",16)},{bit:2,factor:new Z("fff2e50f5f657000",16)},{bit:3,factor:new Z("ffe5caca7e10f000",16)},{bit:4,factor:new Z("ffcb9843d60f7000",16)},{bit:5,factor:new Z("ff973b41fa98e800",16)},{bit:6,factor:new Z("ff2ea16466c9b000",16)},{bit:7,factor:new Z("fe5dee046a9a3800",16)},{bit:8,factor:new Z("fcbe86c7900bb000",16)},{bit:9,factor:new Z("f987a7253ac65800",16)},{bit:10,factor:new Z("f3392b0822bb6000",16)},{bit:11,factor:new Z("e7159475a2caf000",16)},{bit:12,factor:new Z("d097f3bdfd2f2000",16)},{bit:13,factor:new Z("a9f746462d9f8000",16)},{bit:14,factor:new Z("70d869a156f31c00",16)},{bit:15,factor:new Z("31be135f97ed3200",16)},{bit:16,factor:new Z("9aa508b5b85a500",16)},{bit:17,factor:new Z("5d6af8dedc582c",16)},{bit:18,factor:new Z("2216e584f5fa",16)}];var Ft=3,gi=100;var Pi=10,Ai=100,sn=14;var me=new Z(0),Pt=new Z(1),ep=new Z(-1);var tp=new Z("18446744073700000000");var ca=w([z(8),h("bump"),se("index"),l("owner"),ie("protocolFeeRate"),ie("tradeFeeRate"),se("tickSpacing"),ie("fundFeeRate"),L(ie(),1),l("fundOwner"),L(o(),3)]),la=w([ie("blockTimestamp"),pt("tickCumulative"),L(o(),4)]),wi=w([z(8),Re("initialized"),o("recentEpoch"),se("observationIndex"),l("poolId"),L(la,gi,"observations"),L(o(),4)]),ma=w([se("filterPeriod"),se("decayPeriod"),se("reductionFactor"),ie("dynamicFeeControl"),ie("maxVolatilityAccumulator"),Me("tickSpacingIndexReference"),ie("volatilityReference"),ie("volatilityAccumulator"),o("lastUpdateTimestamp"),L(h(),46)]),da=w([h("state"),o("openTime"),o("endTime"),o("lastUpdateTime"),G("emissionsPerSecondX64"),o("totalEmissioned"),o("claimed"),l("mint"),l("vault"),l("creator"),G("growthGlobalX64")]),Gn=w([z(8),h("bump"),l("configId"),l("creator"),l("mintA"),l("mintB"),l("vaultA"),l("vaultB"),l("observationId"),h("mintDecimalsA"),h("mintDecimalsB"),se("tickSpacing"),G("liquidity"),G("sqrtPriceX64"),Me("tickCurrent"),ie(),G("feeGrowthGlobalX64A"),G("feeGrowthGlobalX64B"),o("protocolFeesTokenA"),o("protocolFeesTokenB"),L(G(),4),h("status"),h("feeOn"),z(6),L(da,Ft,"rewardInfos"),z(8*16,"tickArrayBitmap"),L(o(),4),o("fundFeesTokenA"),o("fundFeesTokenB"),o("startTime"),o("recentEpoch"),ma.replicate("dynamicFeeInfo"),L(o(),46)]),pa=w([G("growthInsideLastX64"),o("rewardAmountOwed")]),fa=w([z(8),h("bump"),l("nftMint"),l("poolId"),Me("tickLower"),Me("tickUpper"),G("liquidity"),G("feeGrowthInsideLastX64A"),G("feeGrowthInsideLastX64B"),o("tokenFeesOwedA"),o("tokenFeesOwedB"),L(pa,Ft,"rewardInfos"),o("recentEpoch"),L(o(),7)]),rp=w([z(8),h("bump"),l("poolId"),Me("tickLower"),Me("tickUpper"),G("liquidity"),G("feeGrowthInsideLastX64A"),G("feeGrowthInsideLastX64B"),o("tokenFeesOwedA"),o("tokenFeesOwedB"),L(G(),Ft,"rewardGrowthInside"),o("recentEpoch"),L(o(),7)]),ya=w([Me("tick"),ti("liquidityNet"),G("liquidityGross"),G("feeGrowthOutsideX64A"),G("feeGrowthOutsideX64B"),L(G(),Ft,"rewardGrowthsOutsideX64"),o("orderPhase"),o("ordersAmount"),o("partFilledOrdersRemaining"),G("unfilledRatioX64"),L(ie(),3)]),ki=w([z(8),l("poolId"),Me("startTickIndex"),L(ya,Un,"ticks"),h("initializedTickCount"),o("recentEpoch"),L(h(),107)]),ba=w([z(8),h("bump"),L(l(),Pi,"operationOwners"),L(l(),Ai,"whitelistMints")]),ga=w([z(8),l("poolId"),l("owner"),Me("tick"),Re("zeroForOne"),o("orderPhase"),o("totalAmount"),o("filledAmount"),o("settleBase"),o("settleOutput"),o("openTime"),G("unfilledRatioX64"),L(o(),4)]),Ti=w([z(8),l("poolId"),z(8*8*sn,"positiveTickArrayBitmap"),z(8*8*sn,"negativeTickArrayBitmap")]),ap=w([z(8),se("index"),se("filterPeriod"),se("decayPeriod"),se("reductionFactor"),ie("dynamicFeeControl"),ie("maxVolatilityAccumulator"),L(o(),8)]),Pa=w([z(8),l("wallet"),h("nonceIndex"),o("orderNonce"),L(o(),4)]),sp=w([o(),h("bump"),l("owner"),l("poolId"),l("positionId"),l("nftAccount"),L(o(),8)]),Aa=w([z(8),h("bump"),l("lockOwner"),l("poolId"),l("positionId"),l("nftAccount"),l("lockNftMint"),o("recentEpoch"),L(o(),8)]);import lp from"bn.js";var kp=Buffer.from("amm_config","utf8"),hi=Buffer.from("pool","utf8"),Ii=Buffer.from("pool_vault","utf8"),Tp=Buffer.from("pool_reward_vault","utf8"),hp=Buffer.from("position","utf8"),Ip=Buffer.from("tick_array","utf8"),Bp=Buffer.from("operation","utf8"),Sp=Buffer.from("pool_tick_array_bitmap_extension","utf8"),xp=Buffer.from("observation","utf8"),Kp=Buffer.from("support_mint","utf8"),Cp=Buffer.from("dynamic_fee_config","utf8");function un(a){return re([Buffer.from("metadata","utf8"),nt.toBuffer(),a.toBuffer()],nt)}var Rp=Buffer.from("locked_position","utf8");import{sha256 as Fa}from"js-sha256";import wa from"bn.js";import Mp from"decimal.js";var vp=new wa(1).shln(256).subn(1);import ef from"bn.js";import Up from"bn.js";import zp from"decimal.js";import cf from"bn.js";import mf from"decimal.js";import{PublicKey as Xf}from"@solana/web3.js";import Zf from"bn.js";import{TOKEN_2022_PROGRAM_ID as oy}from"@solana/spl-token";import sy from"decimal.js";import vf from"bn.js";import hf from"bn.js";import by from"bn.js";function de(a){let e=`global:${a}`;return Buffer.from(Fa.digest(e)).slice(0,8)}wi.span;var sb=Q("Raydium_Clmm"),ub={createPool:de("create_pool"),createCustomizablePool:de("create_customizable_pool"),openPositionV2:de("open_position_v2"),openPositionWithToken22Nft:de("open_position_with_token22_nft"),closePosition:de("close_position"),increaseLiquidityV2:de("increase_liquidity_v2"),decreaseLiquidityV2:de("decrease_liquidity_v2"),initializeReward:de("initialize_reward"),setRewardParams:de("set_reward_params"),updateRewardInfos:de("update_reward_infos"),collectRemainingRewards:de("collect_remaining_rewards"),swapV2:de("swap_v2"),openLimitOrder:de("open_limit_order"),increaseLimitOrder:de("increase_limit_order"),decreaseLimitOrder:de("decrease_limit_order"),settleLimitOrder:de("settle_limit_order"),closeLimitOrder:de("close_limit_order")};import{PublicKey as Zn}from"@solana/web3.js";var Da=w([h("instruction")]),Wa=w([h("instruction")]),qa=w([o("rewardState"),o("rewardOpenTime"),o("rewardEndTime"),o("rewardLastUpdateTime"),o("totalReward"),o("totalRewardEmissioned"),o("rewardClaimed"),o("rewardPerSecond"),G("accRewardPerShare"),l("rewardVault"),l("rewardMint"),l("rewardSender"),o("rewardType"),L(o(),15,"padding")]),Ua=w([o("state"),o("nonce"),l("lpVault"),l("rewardVault"),l(),l(),o(),o(),o("totalReward"),G("perShareReward"),o("lastSlot"),o("perSlotReward")]),Ga=w([o("state"),o("nonce"),l("lpVault"),l("rewardVaultA"),o("totalRewardA"),G("perShareRewardA"),o("perSlotRewardA"),h("option"),l("rewardVaultB"),z(7),o("totalRewardB"),G("perShareRewardB"),o("perSlotRewardB"),o("lastSlot"),l()]),za=w([o(),o("state"),o("nonce"),o("validRewardTokenNum"),G("rewardMultiplier"),o("rewardPeriodMax"),o("rewardPeriodMin"),o("rewardPeriodExtend"),l("lpMint"),l("lpVault"),L(qa,5,"rewardInfos"),l("creator"),l(),L(o(),32,"padding")]),Ya=new Proxy(Ua,{get(a,e,t){return e==="decode"?(...n)=>{let i=a.decode(...n);return D(M({},i),{version:3,rewardInfos:[{rewardVault:i.rewardVault,totalReward:i.totalReward,perSlotReward:i.perSlotReward,perShareReward:i.perShareReward}]})}:Reflect.get(a,e,t)}}),Xa=new Proxy(Ga,{get(a,e,t){return e==="decode"?(...n)=>{let i=a.decode(...n);return D(M({},i),{version:5,rewardInfos:[{rewardVault:i.rewardVaultA,totalReward:i.totalRewardA,perSlotReward:i.perSlotRewardA,perShareReward:i.perShareRewardA},{rewardVault:i.rewardVaultB,totalReward:i.totalRewardB,perSlotReward:i.perSlotRewardB,perShareReward:i.perShareRewardB}]})}:Reflect.get(a,e,t)}}),Ci=new Proxy(za,{get(a,e,t){return e==="decode"?(...n)=>{let i=a.decode(...n);return D(M({},i),{version:6,rewardInfos:i.rewardInfos.map(r=>{var s;return D(M({},r),{rewardType:((s=Object.entries(_t).find(c=>String(c[1])===r.rewardType.toString()))!=null?s:["Standard SPL"])[0]})})})}:Reflect.get(a,e,t)}}),Qa=w([o("isSet"),o("rewardPerSecond"),o("rewardOpenTime"),o("rewardEndTime"),o("rewardType")]),Za=w([h("instruction"),o("nonce"),L(Qa,5,"rewardTimeInfo")]),Ha=w([h("instruction"),o("rewardReopenTime"),o("rewardEndTime"),o("rewardPerSecond")]),ja=w([h("instruction"),o("isSet"),o("rewardPerSecond"),o("rewardOpenTime"),o("rewardEndTime"),o("rewardType")]),sg=w([o("state"),l("id"),l("owner"),o("deposited"),L(o(),1,"rewardDebts")]),Ri=w([o("state"),l("id"),l("owner"),o("deposited"),L(G(),1,"rewardDebts"),o(""),o("voteLockedBalance"),L(o(),15)]),ug=w([o("state"),l("id"),l("owner"),o("deposited"),L(o(),2,"rewardDebts")]),$a=w([o("state"),l("id"),l("owner"),o("deposited"),L(G(),2,"rewardDebts"),L(o(),17)]),Ja=w([o(),o("state"),l("id"),l("owner"),o("deposited"),L(G(),5,"rewardDebts"),L(o(),16)]),es=w([h("instruction"),o("amount")]),ts=w([l("mint"),l("grantAuthority"),o("baselineVoteWeightScaledFactor"),o("maxExtraLockupVoteWeightScaledFactor"),o("lockupSaturationSecs"),ei("digitShift"),L(h(),7,"reserved1"),L(o(),7,"reserved2")]),ns=w([z(8),l("governanceProgramId"),l("realm"),l("realmGoverningTokenMint"),l("realmAuthority"),L(h(),32,"reserved1"),L(ts,4,"votingMints"),pt("timeOffset"),h("bump"),L(h(),7,"reserved2"),L(o(),11,"reserved3")]),os=w([pt("startTime"),pt("endTime"),h("kind"),L(h(),15,"reserved")]),is=w([L(os,1,"lockup"),o("amountDeposited_native"),o("amountInitiallyLockedNative"),Re("isUsed"),Re("allowClawback"),h("votingMintConfigIdx"),L(h(),29,"reserved")]),rs=w([z(8),l("voterAuthority"),l("registrar"),L(is,32,"deposits"),h("voterBump"),h("voterWweightRecordBump"),L(h(),94,"reserved")]);import{NATIVE_MINT as gg}from"@solana/spl-token";var Pg=Q("Raydium_farm_config"),as=new Zn("4k3Dyjzvzp8eMZWUXbBCjEvwSkkk59S5iCNLY3QrkX6R"),ss=new Zn("FrspKwj8i3pNmKwXreTveC4fu7KL5ZbGeXdZBe2XViu1");var Ag=new Zn("3TRTX4dXUpp2eqxi3tvQDFYUV7SdDJjcPE3Y4mbtftaX");var _t={"Standard SPL":0,"Option tokens":1},Li={[li.toString()]:3,[mi.toString()]:4,[di.toString()]:5,[Wn.toString()]:6,[Xe.FARM_PROGRAM_ID_V3.toString()]:3,[Xe.FARM_PROGRAM_ID_V4.toString()]:4,[Xe.FARM_PROGRAM_ID_V5.toString()]:5,[Xe.FARM_PROGRAM_ID_V6.toString()]:6};import{PublicKey as iP,SystemProgram as rP,SYSVAR_CLOCK_PUBKEY as aP,SYSVAR_RENT_PUBKEY as sP,TransactionInstruction as uP}from"@solana/web3.js";import lP from"bn.js";import{ASSOCIATED_TOKEN_PROGRAM_ID as dP,createAssociatedTokenAccountIdempotentInstruction as pP,TOKEN_PROGRAM_ID as fP}from"@solana/spl-token";import Mg from"bn.js";import{PublicKey as Bg}from"@solana/web3.js";import xg from"bn.js";var Xg=Q("Raydium.farm.util");var BP=Q("Raydium_farm_instruction"),SP={voterStakeRegistryCreateVoter:Buffer.from([6,24,245,52,243,255,148,25]),voterStakeRegistryCreateDepositEntry:Buffer.from([185,131,167,186,159,125,19,67]),voterStakeRegistryDeposit:Buffer.from([242,35,198,137,82,225,242,182]),voterStakeRegistryWithdraw:Buffer.from([183,18,70,156,148,109,161,34]),voterStakeRegistryUpdateVoterWeightRecord:Buffer.from([45,185,3,36,109,190,115,169])};import pA from"bn.js";import{PublicKey as Ak}from"@solana/web3.js";import{AccountLayout as Tk,MintLayout as hk,NATIVE_MINT as Ik,TOKEN_PROGRAM_ID as Sk}from"@solana/spl-token";import be from"bn.js";var Et=1e4;function pn(a,e){let{div:t,mod:n}=a.divmod(e);return n.gt(new be(0))?t.add(new be(1)):t}function st(a,e){if(a.isZero())return new be(0);let t=a.div(e);return t.isZero()?new be(1):a.mod(e).gt(new be(0))?t.add(new be(1)):t}function Hn(a,e,t){if(e===void 0)return{amount:a,fee:void 0,expirationTime:void 0};let n=Math.floor(t/432e3),i=n<e.newerTransferFee.epoch?e.olderTransferFee:e.newerTransferFee,r=new be(i.maximumFee.toString()),s=n<e.newerTransferFee.epoch?(Number(e.newerTransferFee.epoch)*432e3-t)*400/1e3:void 0,c=pn(a.mul(new be(i.transferFeeBasisPoints)),new be(Et)),u=c.gt(r)?r:c;return{amount:a,fee:u,expirationTime:s}}function jn(a,e,t){if(e===void 0)return{amount:a,fee:void 0,expirationTime:void 0};let n=Math.floor(t/432e3),i=n<e.newerTransferFee.epoch?e.olderTransferFee:e.newerTransferFee,r=new be(i.maximumFee.toString()),s=n<e.newerTransferFee.epoch?(Number(e.newerTransferFee.epoch)*432e3-t)*400/1e3:void 0;if(i.transferFeeBasisPoints===Et){let c=new be(i.maximumFee.toString());return{amount:a.add(c),fee:c,expirationTime:s}}else{let c=pn(a.mul(new be(Et)),new be(Et-i.transferFeeBasisPoints)),u=new be(i.maximumFee.toString()),m=c.sub(a).gt(u)?a.add(u):c,d=pn(m.mul(new be(i.transferFeeBasisPoints)),new be(Et)),p=d.gt(r)?r:d;return{amount:m,fee:p,expirationTime:s}}}import Ni from"bn.js";var ys=new Ni(25),bs=new Ni(1e4);import{ASSOCIATED_TOKEN_PROGRAM_ID as VA,TOKEN_PROGRAM_ID as _A}from"@solana/spl-token";import{PublicKey as DA,SystemProgram as WA,SYSVAR_RENT_PUBKEY as qA,TransactionInstruction as UA}from"@solana/web3.js";import jA from"bn.js";var gs=w([h("instruction"),o("amountIn"),o("minAmountOut")]),Ps=w([h("instruction"),o("maxAmountIn"),o("amountOut")]),NA=w([h("instruction"),h("nonce")]),As=w([h("instruction"),h("nonce"),o("startTime")]),Mi=w([o("status"),o("nonce"),o("maxOrder"),o("depth"),o("baseDecimal"),o("quoteDecimal"),o("state"),o("resetFlag"),o("minSize"),o("volMaxCutRatio"),o("amountWaveRatio"),o("baseLotSize"),o("quoteLotSize"),o("minPriceMultiplier"),o("maxPriceMultiplier"),o("systemDecimalValue"),o("minSeparateNumerator"),o("minSeparateDenominator"),o("tradeFeeNumerator"),o("tradeFeeDenominator"),o("pnlNumerator"),o("pnlDenominator"),o("swapFeeNumerator"),o("swapFeeDenominator"),o("baseNeedTakePnl"),o("quoteNeedTakePnl"),o("quoteTotalPnl"),o("baseTotalPnl"),o("poolOpenTime"),o("punishPcAmount"),o("punishCoinAmount"),o("orderbookToInitTime"),G("swapBaseInAmount"),G("swapQuoteOutAmount"),o("swapBase2QuoteFee"),G("swapQuoteInAmount"),G("swapBaseOutAmount"),o("swapQuote2BaseFee"),l("baseVault"),l("quoteVault"),l("baseMint"),l("quoteMint"),l("lpMint"),l("openOrders"),l("marketId"),l("marketProgramId"),l("targetOrders"),l("withdrawQueue"),l("lpVault"),l("owner"),o("lpReserve"),L(o(),3,"padding")]),MA=w([o("accountType"),o("status"),o("nonce"),o("maxOrder"),o("depth"),o("baseDecimal"),o("quoteDecimal"),o("state"),o("resetFlag"),o("minSize"),o("volMaxCutRatio"),o("amountWaveRatio"),o("baseLotSize"),o("quoteLotSize"),o("minPriceMultiplier"),o("maxPriceMultiplier"),o("systemDecimalsValue"),o("abortTradeFactor"),o("priceTickMultiplier"),o("priceTick"),o("minSeparateNumerator"),o("minSeparateDenominator"),o("tradeFeeNumerator"),o("tradeFeeDenominator"),o("pnlNumerator"),o("pnlDenominator"),o("swapFeeNumerator"),o("swapFeeDenominator"),o("baseNeedTakePnl"),o("quoteNeedTakePnl"),o("quoteTotalPnl"),o("baseTotalPnl"),o("poolOpenTime"),o("punishPcAmount"),o("punishCoinAmount"),o("orderbookToInitTime"),G("swapBaseInAmount"),G("swapQuoteOutAmount"),G("swapQuoteInAmount"),G("swapBaseOutAmount"),o("swapQuote2BaseFee"),o("swapBase2QuoteFee"),l("baseVault"),l("quoteVault"),l("baseMint"),l("quoteMint"),l("lpMint"),l("modelDataAccount"),l("openOrders"),l("marketId"),l("marketProgramId"),l("targetOrders"),l("owner"),L(o(),64,"padding")]),ws=w([h("instruction"),o("baseAmountIn"),o("quoteAmountIn"),o("fixedSide"),o("otherAmountMin")]),ks=w([h("instruction"),o("lpAmount"),o("baseAmountMin"),o("quoteAmountMin")]);var Ts=w([o("fee")]);var ew=Q("Raydium_liquidity_instruction");var hs=5e4,Is=w([o("x"),o("y"),o("price")]),iw=w([o("accountType"),o("status"),o("multiplier"),o("validDataCount"),L(Is,hs,"DataElement")]);import{PublicKey as bw}from"@solana/web3.js";import Pw from"decimal.js";import{TOKEN_PROGRAM_ID as ww}from"@solana/spl-token";import{PublicKey as uw}from"@solana/web3.js";var mw=Q("Raydium_liquidity_serum");import Yk from"bn.js";import Qk from"decimal.js";import{TOKEN_PROGRAM_ID as Xw}from"@solana/spl-token";import{PublicKey as Zw}from"@solana/web3.js";import jw from"bn.js";import{SystemProgram as Mw,SYSVAR_RENT_PUBKEY as Fw,Transaction as vw,TransactionInstruction as Vw}from"@solana/web3.js";import{createInitializeAccountInstruction as Ew,TOKEN_PROGRAM_ID as Dw}from"@solana/spl-token";function Bs(a="accountFlags"){let e=new en(a);return e.addBoolean("initialized"),e.addBoolean("market"),e.addBoolean("openOrders"),e.addBoolean("requestQueue"),e.addBoolean("eventQueue"),e.addBoolean("bids"),e.addBoolean("asks"),e}var Ss=w([z(5),Bs("accountFlags"),l("ownAddress"),o("vaultSignerNonce"),l("baseMint"),l("quoteMint"),l("baseVault"),o("baseDepositsTotal"),o("baseFeesAccrued"),l("quoteVault"),o("quoteDepositsTotal"),o("quoteFeesAccrued"),o("quoteDustThreshold"),l("requestQueue"),l("eventQueue"),l("bids"),l("asks"),o("baseLotSize"),o("quoteLotSize"),o("feeRateBps"),o("referrerRebatesAccrued"),z(7)]);import{PublicKey as bh}from"@solana/web3.js";import{AccountLayout as Ph,NATIVE_MINT as Ah,TOKEN_PROGRAM_ID as wh,createAssociatedTokenAccountIdempotentInstruction as kh}from"@solana/spl-token";import PT from"bn.js";import Ns from"bn.js";var iT=new Ns(0);import lT from"bn.js";import Ms from"bn.js";var De=new Ms(1e6);import Ch from"bn.js";import Lh from"decimal.js";import{PublicKey as FT,TransactionInstruction as vT,Keypair as _T,SystemProgram as ET}from"@solana/web3.js";import{ASSOCIATED_TOKEN_PROGRAM_ID as WT,TOKEN_2022_PROGRAM_ID as qT,TOKEN_PROGRAM_ID as UT}from"@solana/spl-token";var hT=Buffer.from("vault_and_lp_mint_auth_seed","utf8"),IT=Buffer.from("amm_config","utf8"),BT=Buffer.from("pool","utf8"),ST=Buffer.from("pool_lp_mint","utf8"),xT=Buffer.from("pool_vault","utf8"),KT=Buffer.from("observation","utf8"),CT=Buffer.from("permission","utf8");var RT=Buffer.from("locked_liquidity","utf8");var HT=Q("Raydium_cpmm"),jT={initialize:[175,175,109,31,13,152,155,237],deposit:[242,35,198,137,82,225,242,182],withdraw:[183,18,70,156,148,109,161,34],swapBaseInput:[143,190,90,218,196,30,51,222],swapBaseOutput:[55,217,98,86,163,74,180,173],lockCpLiquidity:[216,157,29,78,38,51,31,26],collectCpFee:[8,30,51,199,209,184,247,133],createPermissionPda:Buffer.from([135,136,2,216,137,169,181,202]),closePermissionPda:Buffer.from([156,84,32,118,69,135,70,123]),initializeWithPermission:Buffer.from([63,55,254,65,49,178,89,121]),collectCreatorFee:Buffer.from([20,22,86,123,198,28,219,132])};var vs=w([z(8),h("bump"),Re("disableCreatePool"),se("index"),o("tradeFeeRate"),o("protocolFeeRate"),o("fundFeeRate"),o("createPoolFee"),l("protocolOwner"),l("fundOwner"),o("creatorFeeRate"),L(o(),15)]),Fi=w([z(8),l("configId"),l("poolCreator"),l("vaultA"),l("vaultB"),l("mintLp"),l("mintA"),l("mintB"),l("mintProgramA"),l("mintProgramB"),l("observationId"),h("bump"),h("status"),h("lpDecimals"),h("mintDecimalA"),h("mintDecimalB"),o("lpAmount"),o("protocolFeesMintA"),o("protocolFeesMintB"),o("fundFeesMintA"),o("fundFeesMintB"),o("openTime"),o("epoch"),h("feeOn"),Re("enableCreatorFee"),L(h(),6),o("creatorFeesMintA"),o("creatorFeesMintB"),L(o(),28)]),eh=w([z(8),l("configId"),L(o(),30)]);import{PublicKey as kS,SystemProgram as TS}from"@solana/web3.js";import{createTransferInstruction as IS,TOKEN_PROGRAM_ID as BS,TOKEN_2022_PROGRAM_ID as SS,createAssociatedTokenAccountIdempotentInstruction as xS,createSyncNativeInstruction as CS,createTransferCheckedInstruction as RS}from"@solana/spl-token";import Hs from"bn.js";import NS from"decimal.js";import{ASSOCIATED_TOKEN_PROGRAM_ID as fn,TOKEN_2022_PROGRAM_ID as Xs,TOKEN_PROGRAM_ID as io}from"@solana/spl-token";import{SystemProgram as xe,TransactionInstruction as Te}from"@solana/web3.js";import Tt from"bn.js";var Qe=w([o(),o("epoch"),h("curveType"),se("index"),o("migrateFee"),o("tradeFeeRate"),o("maxShareFeeRate"),o("minSupplyA"),o("maxLockRate"),o("minSellRateA"),o("minMigrateRateA"),o("minFundRaisingB"),l("mintB"),l("protocolFeeOwner"),l("migrateFeeOwner"),l("migrateToAmmWallet"),l("migrateToCpmmWallet"),L(o(),16)]),Es=w([o("totalLockedAmount"),o("cliffPeriod"),o("unlockPeriod"),o("startTime"),o("totalAllocatedShare")]),Fe=w([o(),o("epoch"),h("bump"),h("status"),h("mintDecimalsA"),h("mintDecimalsB"),h("migrateType"),o("supply"),o("totalSellA"),o("virtualA"),o("virtualB"),o("realA"),o("realB"),o("totalFundRaisingB"),o("protocolFee"),o("platformFee"),o("migrateFee"),Es.replicate("vestingSchedule"),l("configId"),l("platformId"),l("mintA"),l("mintB"),l("vaultA"),l("vaultB"),l("creator"),h("mintProgramFlag"),h("cpmmCreatorFeeOn"),o("platformVestingShare"),L(h(),54)]),TI=w([o(),o("epoch"),l("poolId"),l("beneficiary"),o("claimedAmount"),o("tokenShareAmount"),L(o(),8)]),Vi=w([h("migrateType"),h("migrateCpmmFeeOn"),o("supply"),o("totalSellA"),o("totalFundRaisingB"),o("totalLockedAmount"),o("cliffPeriod"),o("unlockPeriod")]),Ds=w([o("epoch"),h("index"),l("configId"),Vi.replicate("bondingCurveParam"),L(o(),50)]),ut=w([o(),o("epoch"),l("platformClaimFeeWallet"),l("platformLockNftWallet"),o("platformScale"),o("creatorScale"),o("burnScale"),o("feeRate"),L(h(),64,"name"),L(h(),256,"web"),L(h(),256,"img"),l("cpConfigId"),o("creatorFeeRate"),l("transferFeeExtensionAuth"),l("platformVestingWallet"),o("platformVestingScale"),l("platformCpCreator"),L(h(),108),ni(Ds,"platformCurve")]);var Ws=Buffer.from("vault_auth_seed","utf8"),KI=Buffer.from("global_config","utf8"),qs=Buffer.from("pool_vesting","utf8"),Us=Buffer.from("platform_config","utf8"),Gs=Buffer.from("platform_fee_vault_auth_seed","utf8"),zs=Buffer.from("creator_fee_vault_auth_seed","utf8"),Ys=Buffer.from("platform_global_access","utf8");function ve(a){return re([Ws],a)}function wt(a,e,t){return re([hi,e.toBuffer(),t.toBuffer()],a)}function Jn(a,e,t){return re([Ii,e.toBuffer(),t.toBuffer()],a)}function ct(a){return re([Buffer.from("__event_authority","utf8")],a)}function eo(a,e){return re([Us,e.toBuffer()],a)}function kt(a,e,t){return re([qs,e.toBuffer(),t.toBuffer()],a)}function Ze(a,e,t){return re([e.toBuffer(),t.toBuffer()],a)}function to(a){return re([Gs],a)}function He(a,e,t){return re([e.toBuffer(),t.toBuffer()],a)}function no(a){return re([zs],a)}function oo(a,e,t){return re([Ys,e.toBuffer(),t.toBuffer()],a)}var he={initialize:Buffer.from([175,175,109,31,13,152,155,237]),initializeV2:Buffer.from([67,153,175,39,218,16,38,32]),buyExactIn:Buffer.from([250,234,13,123,213,156,19,236]),buyExactOut:Buffer.from([24,211,116,40,105,3,153,56]),sellExactIn:Buffer.from([149,39,222,155,211,124,152,26]),sellExactOut:Buffer.from([95,200,71,34,8,9,11,166]),createVestingAccount:Buffer.from([129,178,2,13,217,172,230,218]),claimVestedToken:Buffer.from([49,33,104,30,189,157,79,35]),createPlatformConfig:Buffer.from([176,90,196,175,253,113,220,20]),claimPlatformFee:Buffer.from([156,39,208,135,76,237,61,72]),updatePlaformConfig:Buffer.from([195,60,76,129,146,45,67,143]),initializeWithToken2022:Buffer.from([37,190,126,222,44,154,171,17]),claimPlatformFeeFromVault:Buffer.from([117,241,198,168,248,218,80,29]),claimCreatorFee:Buffer.from([26,97,138,203,132,171,141,252]),updatePlatformCurveParam:Buffer.from([138,144,138,250,220,128,4,57]),removePlatformCurveParam:Buffer.from([27,30,62,169,93,224,24,145]),createPlatformVestingAccount:Buffer.from([146,71,173,69,98,19,15,106])};function _i(a,e,t,n,i,r,s,c,u,m,d,p,T,g,P,f,k,B,I,R,O,A){let S=w([h("decimals"),ke("name"),ke("symbol"),ke("uri")]),C=w([o("totalLockedAmount"),o("cliffPeriod"),o("unlockPeriod"),h("cpmmCreatorFeeOn")]),x=w([h("index"),o("supply"),o("totalFundRaisingB"),h("migrateType")]),N=w([h("index"),o("supply"),o("totalSellA"),o("totalFundRaisingB"),h("migrateType")]),V=[{pubkey:e,isSigner:!0,isWritable:!0},{pubkey:t,isSigner:!1,isWritable:!1},{pubkey:n,isSigner:!1,isWritable:!1},{pubkey:i,isSigner:!1,isWritable:!1},{pubkey:r,isSigner:!1,isWritable:!1},{pubkey:s,isSigner:!1,isWritable:!0},{pubkey:c,isSigner:!0,isWritable:!0},{pubkey:u,isSigner:!1,isWritable:!1},{pubkey:m,isSigner:!1,isWritable:!0},{pubkey:d,isSigner:!1,isWritable:!0},{pubkey:p,isSigner:!1,isWritable:!0},{pubkey:io,isSigner:!1,isWritable:!1},{pubkey:io,isSigner:!1,isWritable:!1},{pubkey:nt,isSigner:!1,isWritable:!1},{pubkey:xe.programId,isSigner:!1,isWritable:!1},{pubkey:tt,isSigner:!1,isWritable:!1},{pubkey:ct(a).publicKey,isSigner:!1,isWritable:!1},{pubkey:a,isSigner:!1,isWritable:!1}];A&&V.push({pubkey:A,isSigner:!1,isWritable:!1});let F=Buffer.alloc(Buffer.from(g,"utf-8").length+Buffer.from(P,"utf-8").length+Buffer.from(f,"utf-8").length+4*3+1),q=Buffer.alloc(C.span),v=Buffer.alloc(k.type==="ConstantCurve"?N.span:x.span);return S.encode({decimals:T,name:g,symbol:P,uri:f},F),k.type==="ConstantCurve"?N.encode(D(M({index:0},k),{migrateType:k.migrateType==="amm"?0:1}),v):k.type==="FixedCurve"?x.encode(D(M({index:1},k),{migrateType:k.migrateType==="amm"?0:1}),v):k.type==="LinearCurve"&&x.encode(D(M({index:2},k),{migrateType:k.migrateType==="amm"?0:1}),v),C.encode({totalLockedAmount:B,cliffPeriod:I,unlockPeriod:R,cpmmCreatorFeeOn:O},q),new Te({keys:V,programId:a,data:Buffer.from([...he.initializeV2,...F,...v,...q])})}function Ei(a,e,t,n,i,r,s,c,u,m,d,p,T,g,P,f,k,B,I,R,O,A){let S=w([h("decimals"),ke("name"),ke("symbol"),ke("uri")]),C=w([o("totalLockedAmount"),o("cliffPeriod"),o("unlockPeriod"),h("cpmmCreatorFeeOn"),h("transferFeeExtensionParamsOption"),w([se("transferFeeBasePoints"),o("maxinumFee")]).replicate("transferFeeExtensionParams")]),x=w([h("index"),o("supply"),o("totalFundRaisingB"),h("migrateType")]),N=w([h("index"),o("supply"),o("totalSellA"),o("totalFundRaisingB"),h("migrateType")]),V=[{pubkey:e,isSigner:!0,isWritable:!0},{pubkey:t,isSigner:!1,isWritable:!1},{pubkey:n,isSigner:!1,isWritable:!1},{pubkey:i,isSigner:!1,isWritable:!1},{pubkey:r,isSigner:!1,isWritable:!1},{pubkey:s,isSigner:!1,isWritable:!0},{pubkey:c,isSigner:!0,isWritable:!0},{pubkey:u,isSigner:!1,isWritable:!1},{pubkey:m,isSigner:!1,isWritable:!0},{pubkey:d,isSigner:!1,isWritable:!0},{pubkey:Xs,isSigner:!1,isWritable:!1},{pubkey:io,isSigner:!1,isWritable:!1},{pubkey:xe.programId,isSigner:!1,isWritable:!1},{pubkey:ct(a).publicKey,isSigner:!1,isWritable:!1},{pubkey:a,isSigner:!1,isWritable:!1}];A&&V.push({pubkey:A,isSigner:!1,isWritable:!1});let F=Buffer.alloc(Buffer.from(T,"utf-8").length+Buffer.from(g,"utf-8").length+Buffer.from(P,"utf-8").length+4*3+1),q=Buffer.alloc(C.span),v=Buffer.alloc(f.type==="ConstantCurve"?N.span:x.span);return S.encode({decimals:p,name:T,symbol:g,uri:P},F),f.type==="ConstantCurve"?N.encode(D(M({index:0},f),{migrateType:f.migrateType==="amm"?0:1}),v):f.type==="FixedCurve"?x.encode(D(M({index:1},f),{migrateType:f.migrateType==="amm"?0:1}),v):f.type==="LinearCurve"&&x.encode(D(M({index:2},f),{migrateType:f.migrateType==="amm"?0:1}),v),C.encode({totalLockedAmount:k,cliffPeriod:B,unlockPeriod:I,cpmmCreatorFeeOn:R,transferFeeExtensionParamsOption:O?1:0,transferFeeExtensionParams:O!=null?O:{transferFeeBasePoints:0,maxinumFee:new Tt(0)}},q),new Te({keys:V,programId:a,data:Buffer.from([...he.initializeWithToken2022,...F,...v,...q])})}function ro(a,e,t,n,i,r,s,c,u,m,d,p,T,g,P,f,k,B,I,R){let O=w([o("amountB"),o("minAmountA"),o("shareFeeRate")]),A=[{pubkey:e,isSigner:!0,isWritable:!0},{pubkey:t,isSigner:!1,isWritable:!1},{pubkey:n,isSigner:!1,isWritable:!1},{pubkey:i,isSigner:!1,isWritable:!1},{pubkey:r,isSigner:!1,isWritable:!0},{pubkey:s,isSigner:!1,isWritable:!0},{pubkey:c,isSigner:!1,isWritable:!0},{pubkey:u,isSigner:!1,isWritable:!0},{pubkey:m,isS