@raydium-io/raydium-sdk-v2
Version:
An SDK for building applications on top of Raydium.
1 lines • 80.1 kB
JavaScript
var Wr=Object.defineProperty,Or=Object.defineProperties;var Ur=Object.getOwnPropertyDescriptors;var Ut=Object.getOwnPropertySymbols;var qr=Object.prototype.hasOwnProperty,Gr=Object.prototype.propertyIsEnumerable;var qt=(e,t,r)=>t in e?Wr(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,q=(e,t)=>{for(var r in t||(t={}))qr.call(t,r)&&qt(e,r,t[r]);if(Ut)for(var r of Ut(t))Gr.call(t,r)&&qt(e,r,t[r]);return e},Q=(e,t)=>Or(e,Ur(t));import{PublicKey as Jr}from"@solana/web3.js";import Zt,{isBN as zt}from"bn.js";import{bits as Ji,BitStructure as Yi,blob as Hr,Blob as $i,cstr as eo,f32 as to,f32be as ro,f64 as no,f64be as io,greedy as oo,Layout as jr,ns64 as so,ns64be as ao,nu64 as uo,nu64be as co,offset as lo,s16 as fo,s16be as po,s24 as mo,s24be as go,s32 as yo,s32be as bo,s40 as ho,s40be as wo,s48 as To,s48be as Po,s8 as xo,seq as Zr,struct as So,Structure as zr,u16 as ko,u16be as Ao,u24 as Lo,u24be as Io,u32 as Bo,u32be as Ro,u40 as Co,u40be as No,u48 as Ko,u48be as vo,u8 as Qr,UInt as Xr,union as Vo,Union as Eo,unionLayoutDiscriminator as Fo,utf8 as Mo}from"@solana/buffer-layout";var at=jr,Gt=zr;var ut=Xr;var Ht=Qr;var jt=Zr;var ye=Hr;var ke=class extends at{constructor(r,n,i){super(r,i);this.blob=ye(r),this.signed=n}decode(r,n=0){let i=new Zt(this.blob.decode(r,n),10,"le");return this.signed?i.fromTwos(this.span*8).clone():i}encode(r,n,i=0){return typeof r=="number"&&(r=new Zt(r)),this.signed&&(r=r.toTwos(this.span*8)),this.blob.encode(r.toArrayLike(Buffer,"le",this.span),n,i)}};function K(e){return new ut(1,e)}function Ae(e){return new ut(4,e)}function y(e){return new ke(8,!1,e)}function oe(e){return new ke(16,!1,e)}function Qt(e){return new ke(1,!0,e)}function Ge(e){return new ke(8,!0,e)}var qe=class extends at{constructor(r,n,i,o){super(r.span,o);this.layout=r,this.decoder=n,this.encoder=i}decode(r,n){return this.decoder(this.layout.decode(r,n))}encode(r,n,i){return this.layout.encode(this.encoder(r),n,i)}getSpan(r,n){return this.layout.getSpan(r,n)}};function L(e){return new qe(ye(32),t=>new Jr(t),t=>t.toBuffer(),e)}function ve(e){return new qe(Ht(),Yr,$r,e)}function Yr(e){if(e===0)return!1;if(e===1)return!0;throw new Error("Invalid bool: "+e)}function $r(e){return e?1:0}var ct=class extends Gt{decode(t,r){return super.decode(t,r)}};function N(e,t,r){return new ct(e,t,r)}function M(e,t,r){let n,i=typeof t=="number"?t:zt(t)?t.toNumber():new Proxy(t,{get(o,s){if(!n){let a=Reflect.get(o,"count");n=zt(a)?a.toNumber():a,Reflect.set(o,"count",n)}return Reflect.get(o,s)},set(o,s,a){return s==="count"&&(n=a),Reflect.set(o,s,a)}});return jt(e,i,r)}import{PublicKey as rr}from"@solana/web3.js";import{get as Xt,set as en}from"lodash";var lt=class{constructor(t){this.logLevel=t.logLevel!==void 0?t.logLevel:0,this.name=t.name}set level(t){this.logLevel=t}get time(){return Date.now().toString()}get moduleName(){return this.name}isLogLevel(t){return t<=this.logLevel}error(...t){return this.isLogLevel(0)?(console.error(this.time,this.name,"sdk logger error",...t),this):this}logWithError(...t){let r=t.map(n=>typeof n=="object"?JSON.stringify(n):n).join(", ");throw new Error(r)}warning(...t){return this.isLogLevel(1)?(console.warn(this.time,this.name,"sdk logger warning",...t),this):this}info(...t){return this.isLogLevel(2)?(console.info(this.time,this.name,"sdk logger info",...t),this):this}debug(...t){return this.isLogLevel(3)?(console.debug(this.time,this.name,"sdk logger debug",...t),this):this}},Jt={},tn={};function W(e){let t=Xt(Jt,e);if(!t){let r=Xt(tn,e);t=new lt({name:e,logLevel:r}),en(Jt,e,t)}return t}import{PublicKey as S}from"@solana/web3.js";var Yt=new S("EhhTKczWMGQt46ynNeRX1WfeagwwJd7ufHvCDjRxjo5Q"),$t=new S("CBuCnLe26faBpcBP2fktp4rp8abpcAnTWft6ZrP5Q4T"),er=new S("9KEPoZmtHUrBbhWN1v1KWLMkkvwY6WLtAVUCPRtRjP4z"),tr=new S("FarmqiPv5eAj3j1GMdMCMUGXqPUvmquZtMy86QH6rzhG"),$o=new S("CLaimxFqjHzgTJtAGHU47NPhg6qrc5sCnpC4tBLyABQS"),es=new S("srmqPvymJeFKQ4zGQed1GFppgkRHL9kaELCbyksJtPX"),ts=new S("9xQeWvG816bUx9EPjHmaT23yvVM2ZWbrrpZb9PusVFin"),rs=new S("675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8"),ns=new S("5quBtoiQqxF9Jv6KYKctB59NT3gtJD2Y65kdnB1Uev3h"),is=new S("CDSr3ssLcRB6XYPJwAfFt18MZvEZp4LjHcvzBVZ45duo"),os=new S("CAMMCzo5YL8w4VFF8KVHrK22GGUsp5VTaW7grrKgrWqK"),ss=new S("LockrWmn6K5twhz3y9w1dQERbmgSaRkfnTeTKbpofwE"),as=new S("kN1kEznaF5Xbd8LYuqtEFcxzWSBk5Fv6ygX6SqEGJVy"),us=new S("routeUGWgWzqBWFcrCfv8tritsqukccJPu3q5GPP3xS"),cs=new S("7YttLkHDoNj9wyDur5pM1ejNaAvT9X4eqaYcHQqtj2G5"),ls=new S("6FJon3QE27qgPVggARueB22hLvoh22VzJpXv4rBEoSLF"),ds=new S("CC12se5To1CdEuw7fDS27B7Geo5jJyL7t5UK2B44NgiH"),fs=new S("9HzJyW1qZsEiSfMUf6L2jo3CcTKAyBmSyKdwQeYisHrC"),ps=new S("DropEU8AvevN3UrXWXTMuz3rqnMczQVNjq3kcSdW2SQi"),ms=new S("CPMMoo8L3F4NbTegBCKVNunggL7H1ZpdTHKxQB5qKP1C"),gs=new S("GpMZbSM2GgvTKHJirzeGfMFoaZ8UR2X7F4v8vHTvxFbL"),ys=new S("DNXgeM9EiiaAbaWvwjHj9fQQLAX5ZsfHyvmYUNRAdNC8"),rn=new S("CPMDWBwJDtYax9qW7AyRuVC19Cc4L4Vcy4n2BHAbHkCW"),nn=new S("7rQ1QFNosMkUCuh7Z7fPbTHvh73b68sQYdirycEzJVuw"),on=new S("G11FKBRaAkHAKuLCgLM6K6NUc9rTjPAznRCjZifrTQe2"),bs=new S("LockrWmn6K5twhz3y9w1dQERbmgSaRkfnTeTKbpofwE"),sn=new S("DLockwT7X7sxtLmGH9g5kmfcjaBtncdbUmi738m5bvQC"),hs=new S("3f7GcQFG397GAaEnv51zR6tsTVihYRydnydDD1cXekxH"),an=new S("7AFUeLVRjBfzqK3tTGw8hN48KLQWSk6DTE8xprWdPqix"),ws=new S("LanMV9sAd7wArD4vJFi2qDdfnVhFxYSUg6eADduJ3uj"),Ts=new S("WLHv2UAZm6z4KyaaELi5pjdbJh6RESMva1Rnn8pJVVh"),un=new S("7soRSLviCKHCKzCbRuVpZDif76NWLVqFtbjt8LpyxWSq"),cn=new S("DG6kZFFCqxdtWXw53Zc28hLs3MTr28Efkm2FrsNERNSQ");var Ps={SERUM_MARKET:S.default,OPENBOOK_MARKET:new S("EoTcMgcDRTJVZDMZWBoU6rhYHZfkNTVEAfz3uUJRcYGj"),UTIL1216:S.default,FarmV3:new S("85BFyr98MbCUU9MVTEgzx1nbhWACbJqLzho6zd6DZcWL"),FarmV5:new S("EcLzTrNg9V7qhcdyXDe2qjtPkiGzDM2UbdRaeaadU5r2"),FarmV6:new S("Farm2hJLcqPtPg8M4rR6DMrsRNc5TPm5Cs4bVQrMe2T7"),AmmV4:new S("HWy1jotHpo6UqeQxx49dpYYdQB8wj9Qk9MdxwjLvDHB8"),AmmStable:new S("DDg4VmQaJV9ogWce7LpcjBA9bv22wRp5uaTPa5pGjijF"),CLMM:new S("devi51mZmdwUJGU9hjN27vEz64Gps7uUefqxg27EAtH"),CLMM_LOCK_PROGRAM_ID:new S("DLockwT7X7sxtLmGH9g5kmfcjaBtncdbUmi738m5bvQC"),CLMM_LOCK_AUTH_ID:new S("8qmHNvu2Kr2C7U8mJL4Vz1vTDxMhVuXKREwU7TNoaVEo"),Router:new S("BVChZ3XFEwTMUk1o9i3HAf91H6mFxSwa5X2wFAWhYPhU"),CREATE_CPMM_POOL_PROGRAM:rn,CREATE_CPMM_POOL_AUTH:nn,CREATE_CPMM_POOL_FEE_ACC:on,FEE_DESTINATION_ID:new S("3XMrhbv989VxAMi3DErLV9eJht1pHppW5LbKxe9fkEFR"),LOCK_CPMM_PROGRAM:sn,LCOK_CPMM_AUTH:an,LAUNCHPAD_PROGRAM:un,LAUNCHPAD_AUTH:cn};var Rs=W("Raydium_farm_config"),Cs=new rr("4k3Dyjzvzp8eMZWUXbBCjEvwSkkk59S5iCNLY3QrkX6R"),Ns=new rr("FrspKwj8i3pNmKwXreTveC4fu7KL5ZbGeXdZBe2XViu1"),nr={3:or,5:sr,6:ar},ir={3:Ve,5:ur,6:cr},Ks=e=>[3,4,5,6].indexOf(e)!==-1,vs=e=>{var s;let{version:t,rewardInfos:r,rewardTokenAccountsPublicKeys:n}=e,i=`rewardInfo:${JSON.stringify(r)}, rewardAccount:${JSON.stringify(n)}`,o={3:()=>{if(r.length!==1||n.length!==1)return`rewardInfos or rewardTokenAccounts lengths not equal 1: ${i}`},5:()=>{if(r.length!==n.length)return`rewardInfos and rewardTokenAccounts lengths not equal: ${i}`},6:()=>{if(!n.length||r.length!==n.length)return`no rewardTokenAccounts or rewardInfos and rewardTokenAccounts lengths not equal: ${i}`}};return(s=o[t])==null?void 0:s.call(o)},Le={"Standard SPL":0,"Option tokens":1},Vs={[Yt.toString()]:3,[$t.toString()]:4,[er.toString()]:5,[tr.toString()]:6};var dt=N([K("instruction")]),ft=N([K("instruction")]),ln=N([y("rewardState"),y("rewardOpenTime"),y("rewardEndTime"),y("rewardLastUpdateTime"),y("totalReward"),y("totalRewardEmissioned"),y("rewardClaimed"),y("rewardPerSecond"),oe("accRewardPerShare"),L("rewardVault"),L("rewardMint"),L("rewardSender"),y("rewardType"),M(y(),15,"padding")]),dn=N([y("state"),y("nonce"),L("lpVault"),L("rewardVault"),L(),L(),y(),y(),y("totalReward"),oe("perShareReward"),y("lastSlot"),y("perSlotReward")]),fn=N([y("state"),y("nonce"),L("lpVault"),L("rewardVaultA"),y("totalRewardA"),oe("perShareRewardA"),y("perSlotRewardA"),K("option"),L("rewardVaultB"),ye(7),y("totalRewardB"),oe("perShareRewardB"),y("perSlotRewardB"),y("lastSlot"),L()]),pn=N([y(),y("state"),y("nonce"),y("validRewardTokenNum"),oe("rewardMultiplier"),y("rewardPeriodMax"),y("rewardPeriodMin"),y("rewardPeriodExtend"),L("lpMint"),L("lpVault"),M(ln,5,"rewardInfos"),L("creator"),L(),M(y(),32,"padding")]),or=new Proxy(dn,{get(e,t,r){return t==="decode"?(...n)=>{let i=e.decode(...n);return Q(q({},i),{version:3,rewardInfos:[{rewardVault:i.rewardVault,totalReward:i.totalReward,perSlotReward:i.perSlotReward,perShareReward:i.perShareReward}]})}:Reflect.get(e,t,r)}}),sr=new Proxy(fn,{get(e,t,r){return t==="decode"?(...n)=>{let i=e.decode(...n);return Q(q({},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(e,t,r)}}),ar=new Proxy(pn,{get(e,t,r){return t==="decode"?(...n)=>{let i=e.decode(...n);return Q(q({},i),{version:6,rewardInfos:i.rewardInfos.map(o=>{var s;return Q(q({},o),{rewardType:((s=Object.entries(Le).find(a=>String(a[1])===o.rewardType.toString()))!=null?s:["Standard SPL"])[0]})})})}:Reflect.get(e,t,r)}}),mn=N([y("isSet"),y("rewardPerSecond"),y("rewardOpenTime"),y("rewardEndTime"),y("rewardType")]),pt=N([K("instruction"),y("nonce"),M(mn,5,"rewardTimeInfo")]),mt=N([K("instruction"),y("rewardReopenTime"),y("rewardEndTime"),y("rewardPerSecond")]),gt=N([K("instruction"),y("isSet"),y("rewardPerSecond"),y("rewardOpenTime"),y("rewardEndTime"),y("rewardType")]),Os=N([y("state"),L("id"),L("owner"),y("deposited"),M(y(),1,"rewardDebts")]),Ve=N([y("state"),L("id"),L("owner"),y("deposited"),M(oe(),1,"rewardDebts"),y(""),y("voteLockedBalance"),M(y(),15)]),Us=N([y("state"),L("id"),L("owner"),y("deposited"),M(y(),2,"rewardDebts")]),ur=N([y("state"),L("id"),L("owner"),y("deposited"),M(oe(),2,"rewardDebts"),M(y(),17)]),cr=N([y(),y("state"),L("id"),L("owner"),y("deposited"),M(oe(),5,"rewardDebts"),M(y(),16)]),z=N([K("instruction"),y("amount")]),gn=N([L("mint"),L("grantAuthority"),y("baselineVoteWeightScaledFactor"),y("maxExtraLockupVoteWeightScaledFactor"),y("lockupSaturationSecs"),Qt("digitShift"),M(K(),7,"reserved1"),M(y(),7,"reserved2")]),lr=N([ye(8),L("governanceProgramId"),L("realm"),L("realmGoverningTokenMint"),L("realmAuthority"),M(K(),32,"reserved1"),M(gn,4,"votingMints"),Ge("timeOffset"),K("bump"),M(K(),7,"reserved2"),M(y(),11,"reserved3")]),yn=N([Ge("startTime"),Ge("endTime"),K("kind"),M(K(),15,"reserved")]),bn=N([M(yn,1,"lockup"),y("amountDeposited_native"),y("amountInitiallyLockedNative"),ve("isUsed"),ve("allowClawback"),K("votingMintConfigIdx"),M(K(),29,"reserved")]),dr=N([ye(8),L("voterAuthority"),L("registrar"),M(bn,32,"deposits"),K("voterBump"),K("voterWweightRecordBump"),M(K(),94,"reserved")]);import J from"bn.js";import{PublicKey as hn}from"@solana/web3.js";import{MINT_SIZE as Js,TOKEN_PROGRAM_ID as Ys,getTransferFeeConfig as $s,unpackMint as ea}from"@solana/spl-token";var yt=W("Raydium_accountInfo_util");async function fr(e,t,r){let{batchRequest:n,commitment:i="confirmed",chunkCount:o=100}=q({batchRequest:!1},r),s=bt(t,o),a=new Array(s.length).fill([]);if(n){let c=s.map(d=>{let f=e._buildArgs([d.map(m=>m.toBase58())],i,"base64");return{methodName:"getMultipleAccounts",args:f}}),u=bt(c,10);a=(await(await Promise.all(u.map(async d=>await e._rpcBatchRequest(d)))).flat()).map(d=>(d.error&&yt.logWithError(`failed to get info for multiple accounts, RPC_ERROR, ${d.error.message}`),d.result.value.map(f=>{if(f){let{data:m,executable:h,lamports:b,owner:x,rentEpoch:A}=f;return m.length!==2&&m[1]!=="base64"&&yt.logWithError("info must be base64 encoded, RPC_ERROR"),{data:Buffer.from(m[0],"base64"),executable:h,lamports:b,owner:new hn(x),rentEpoch:A}}return null})))}else try{a=await Promise.all(s.map(c=>e.getMultipleAccountsInfo(c,i)))}catch(c){c instanceof Error&&yt.logWithError(`failed to get info for multiple accounts, RPC_ERROR, ${c.message}`)}return a.flat()}async function pr(e,t,r){let n=await fr(e,t.map(i=>i.pubkey),r);return t.map((i,o)=>Q(q({},i),{accountInfo:n[o]}))}import ce from"bn.js";var Ie=9e15,me=1e9,wt="0123456789abcdef",je="2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058",Ze="3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789",Tt={precision:20,rounding:4,modulo:1,toExpNeg:-7,toExpPos:21,minE:-Ie,maxE:Ie,crypto:!1},br,se,k=!0,Qe="[DecimalError] ",pe=Qe+"Invalid argument: ",hr=Qe+"Precision limit exceeded",wr=Qe+"crypto unavailable",Tr="[object Decimal]",j=Math.floor,O=Math.pow,wn=/^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i,Tn=/^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i,Pn=/^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i,Pr=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,re=1e7,T=7,xn=9007199254740991,Sn=je.length-1,Pt=Ze.length-1,g={toStringTag:Tr};g.absoluteValue=g.abs=function(){var e=new this.constructor(this);return e.s<0&&(e.s=1),w(e)};g.ceil=function(){return w(new this.constructor(this),this.e+1,2)};g.clampedTo=g.clamp=function(e,t){var r,n=this,i=n.constructor;if(e=new i(e),t=new i(t),!e.s||!t.s)return new i(NaN);if(e.gt(t))throw Error(pe+t);return r=n.cmp(e),r<0?e:n.cmp(t)>0?t:new i(n)};g.comparedTo=g.cmp=function(e){var t,r,n,i,o=this,s=o.d,a=(e=new o.constructor(e)).d,c=o.s,u=e.s;if(!s||!a)return!c||!u?NaN:c!==u?c:s===a?0:!s^c<0?1:-1;if(!s[0]||!a[0])return s[0]?c:a[0]?-u:0;if(c!==u)return c;if(o.e!==e.e)return o.e>e.e^c<0?1:-1;for(n=s.length,i=a.length,t=0,r=n<i?n:i;t<r;++t)if(s[t]!==a[t])return s[t]>a[t]^c<0?1:-1;return n===i?0:n>i^c<0?1:-1};g.cosine=g.cos=function(){var e,t,r=this,n=r.constructor;return r.d?r.d[0]?(e=n.precision,t=n.rounding,n.precision=e+Math.max(r.e,r.sd())+T,n.rounding=1,r=kn(n,Lr(n,r)),n.precision=e,n.rounding=t,w(se==2||se==3?r.neg():r,e,t,!0)):new n(1):new n(NaN)};g.cubeRoot=g.cbrt=function(){var e,t,r,n,i,o,s,a,c,u,l=this,d=l.constructor;if(!l.isFinite()||l.isZero())return new d(l);for(k=!1,o=l.s*O(l.s*l,1/3),!o||Math.abs(o)==1/0?(r=G(l.d),e=l.e,(o=(e-r.length+1)%3)&&(r+=o==1||o==-2?"0":"00"),o=O(r,1/3),e=j((e+1)/3)-(e%3==(e<0?-1:2)),o==1/0?r="5e"+e:(r=o.toExponential(),r=r.slice(0,r.indexOf("e")+1)+e),n=new d(r),n.s=l.s):n=new d(o.toString()),s=(e=d.precision)+3;;)if(a=n,c=a.times(a).times(a),u=c.plus(l),n=V(u.plus(l).times(a),u.plus(c),s+2,1),G(a.d).slice(0,s)===(r=G(n.d)).slice(0,s))if(r=r.slice(s-3,s+1),r=="9999"||!i&&r=="4999"){if(!i&&(w(a,e+1,0),a.times(a).times(a).eq(l))){n=a;break}s+=4,i=1}else{(!+r||!+r.slice(1)&&r.charAt(0)=="5")&&(w(n,e+1,1),t=!n.times(n).times(n).eq(l));break}return k=!0,w(n,e,d.rounding,t)};g.decimalPlaces=g.dp=function(){var e,t=this.d,r=NaN;if(t){if(e=t.length-1,r=(e-j(this.e/T))*T,e=t[e],e)for(;e%10==0;e/=10)r--;r<0&&(r=0)}return r};g.dividedBy=g.div=function(e){return V(this,new this.constructor(e))};g.dividedToIntegerBy=g.divToInt=function(e){var t=this,r=t.constructor;return w(V(t,new r(e),0,1,1),r.precision,r.rounding)};g.equals=g.eq=function(e){return this.cmp(e)===0};g.floor=function(){return w(new this.constructor(this),this.e+1,3)};g.greaterThan=g.gt=function(e){return this.cmp(e)>0};g.greaterThanOrEqualTo=g.gte=function(e){var t=this.cmp(e);return t==1||t===0};g.hyperbolicCosine=g.cosh=function(){var e,t,r,n,i,o=this,s=o.constructor,a=new s(1);if(!o.isFinite())return new s(o.s?1/0:NaN);if(o.isZero())return a;r=s.precision,n=s.rounding,s.precision=r+Math.max(o.e,o.sd())+4,s.rounding=1,i=o.d.length,i<32?(e=Math.ceil(i/3),t=(1/Je(4,e)).toString()):(e=16,t="2.3283064365386962890625e-10"),o=Be(s,1,o.times(t),new s(1),!0);for(var c,u=e,l=new s(8);u--;)c=o.times(o),o=a.minus(c.times(l.minus(c.times(l))));return w(o,s.precision=r,s.rounding=n,!0)};g.hyperbolicSine=g.sinh=function(){var e,t,r,n,i=this,o=i.constructor;if(!i.isFinite()||i.isZero())return new o(i);if(t=o.precision,r=o.rounding,o.precision=t+Math.max(i.e,i.sd())+4,o.rounding=1,n=i.d.length,n<3)i=Be(o,2,i,i,!0);else{e=1.4*Math.sqrt(n),e=e>16?16:e|0,i=i.times(1/Je(5,e)),i=Be(o,2,i,i,!0);for(var s,a=new o(5),c=new o(16),u=new o(20);e--;)s=i.times(i),i=i.times(a.plus(s.times(c.times(s).plus(u))))}return o.precision=t,o.rounding=r,w(i,t,r,!0)};g.hyperbolicTangent=g.tanh=function(){var e,t,r=this,n=r.constructor;return r.isFinite()?r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+7,n.rounding=1,V(r.sinh(),r.cosh(),n.precision=e,n.rounding=t)):new n(r.s)};g.inverseCosine=g.acos=function(){var e,t=this,r=t.constructor,n=t.abs().cmp(1),i=r.precision,o=r.rounding;return n!==-1?n===0?t.isNeg()?te(r,i,o):new r(0):new r(NaN):t.isZero()?te(r,i+4,o).times(.5):(r.precision=i+6,r.rounding=1,t=t.asin(),e=te(r,i+4,o).times(.5),r.precision=i,r.rounding=o,e.minus(t))};g.inverseHyperbolicCosine=g.acosh=function(){var e,t,r=this,n=r.constructor;return r.lte(1)?new n(r.eq(1)?0:NaN):r.isFinite()?(e=n.precision,t=n.rounding,n.precision=e+Math.max(Math.abs(r.e),r.sd())+4,n.rounding=1,k=!1,r=r.times(r).minus(1).sqrt().plus(r),k=!0,n.precision=e,n.rounding=t,r.ln()):new n(r)};g.inverseHyperbolicSine=g.asinh=function(){var e,t,r=this,n=r.constructor;return!r.isFinite()||r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+2*Math.max(Math.abs(r.e),r.sd())+6,n.rounding=1,k=!1,r=r.times(r).plus(1).sqrt().plus(r),k=!0,n.precision=e,n.rounding=t,r.ln())};g.inverseHyperbolicTangent=g.atanh=function(){var e,t,r,n,i=this,o=i.constructor;return i.isFinite()?i.e>=0?new o(i.abs().eq(1)?i.s/0:i.isZero()?i:NaN):(e=o.precision,t=o.rounding,n=i.sd(),Math.max(n,e)<2*-i.e-1?w(new o(i),e,t,!0):(o.precision=r=n-i.e,i=V(i.plus(1),new o(1).minus(i),r+e,1),o.precision=e+4,o.rounding=1,i=i.ln(),o.precision=e,o.rounding=t,i.times(.5))):new o(NaN)};g.inverseSine=g.asin=function(){var e,t,r,n,i=this,o=i.constructor;return i.isZero()?new o(i):(t=i.abs().cmp(1),r=o.precision,n=o.rounding,t!==-1?t===0?(e=te(o,r+4,n).times(.5),e.s=i.s,e):new o(NaN):(o.precision=r+6,o.rounding=1,i=i.div(new o(1).minus(i.times(i)).sqrt().plus(1)).atan(),o.precision=r,o.rounding=n,i.times(2)))};g.inverseTangent=g.atan=function(){var e,t,r,n,i,o,s,a,c,u=this,l=u.constructor,d=l.precision,f=l.rounding;if(u.isFinite()){if(u.isZero())return new l(u);if(u.abs().eq(1)&&d+4<=Pt)return s=te(l,d+4,f).times(.25),s.s=u.s,s}else{if(!u.s)return new l(NaN);if(d+4<=Pt)return s=te(l,d+4,f).times(.5),s.s=u.s,s}for(l.precision=a=d+10,l.rounding=1,r=Math.min(28,a/T+2|0),e=r;e;--e)u=u.div(u.times(u).plus(1).sqrt().plus(1));for(k=!1,t=Math.ceil(a/T),n=1,c=u.times(u),s=new l(u),i=u;e!==-1;)if(i=i.times(c),o=s.minus(i.div(n+=2)),i=i.times(c),s=o.plus(i.div(n+=2)),s.d[t]!==void 0)for(e=t;s.d[e]===o.d[e]&&e--;);return r&&(s=s.times(2<<r-1)),k=!0,w(s,l.precision=d,l.rounding=f,!0)};g.isFinite=function(){return!!this.d};g.isInteger=g.isInt=function(){return!!this.d&&j(this.e/T)>this.d.length-2};g.isNaN=function(){return!this.s};g.isNegative=g.isNeg=function(){return this.s<0};g.isPositive=g.isPos=function(){return this.s>0};g.isZero=function(){return!!this.d&&this.d[0]===0};g.lessThan=g.lt=function(e){return this.cmp(e)<0};g.lessThanOrEqualTo=g.lte=function(e){return this.cmp(e)<1};g.logarithm=g.log=function(e){var t,r,n,i,o,s,a,c,u=this,l=u.constructor,d=l.precision,f=l.rounding,m=5;if(e==null)e=new l(10),t=!0;else{if(e=new l(e),r=e.d,e.s<0||!r||!r[0]||e.eq(1))return new l(NaN);t=e.eq(10)}if(r=u.d,u.s<0||!r||!r[0]||u.eq(1))return new l(r&&!r[0]?-1/0:u.s!=1?NaN:r?0:1/0);if(t)if(r.length>1)o=!0;else{for(i=r[0];i%10===0;)i/=10;o=i!==1}if(k=!1,a=d+m,s=fe(u,a),n=t?ze(l,a+10):fe(e,a),c=V(s,n,a,1),Ee(c.d,i=d,f))do if(a+=10,s=fe(u,a),n=t?ze(l,a+10):fe(e,a),c=V(s,n,a,1),!o){+G(c.d).slice(i+1,i+15)+1==1e14&&(c=w(c,d+1,0));break}while(Ee(c.d,i+=10,f));return k=!0,w(c,d,f)};g.minus=g.sub=function(e){var t,r,n,i,o,s,a,c,u,l,d,f,m=this,h=m.constructor;if(e=new h(e),!m.d||!e.d)return!m.s||!e.s?e=new h(NaN):m.d?e.s=-e.s:e=new h(e.d||m.s!==e.s?m:NaN),e;if(m.s!=e.s)return e.s=-e.s,m.plus(e);if(u=m.d,f=e.d,a=h.precision,c=h.rounding,!u[0]||!f[0]){if(f[0])e.s=-e.s;else if(u[0])e=new h(m);else return new h(c===3?-0:0);return k?w(e,a,c):e}if(r=j(e.e/T),l=j(m.e/T),u=u.slice(),o=l-r,o){for(d=o<0,d?(t=u,o=-o,s=f.length):(t=f,r=l,s=u.length),n=Math.max(Math.ceil(a/T),s)+2,o>n&&(o=n,t.length=1),t.reverse(),n=o;n--;)t.push(0);t.reverse()}else{for(n=u.length,s=f.length,d=n<s,d&&(s=n),n=0;n<s;n++)if(u[n]!=f[n]){d=u[n]<f[n];break}o=0}for(d&&(t=u,u=f,f=t,e.s=-e.s),s=u.length,n=f.length-s;n>0;--n)u[s++]=0;for(n=f.length;n>o;){if(u[--n]<f[n]){for(i=n;i&&u[--i]===0;)u[i]=re-1;--u[i],u[n]+=re}u[n]-=f[n]}for(;u[--s]===0;)u.pop();for(;u[0]===0;u.shift())--r;return u[0]?(e.d=u,e.e=Xe(u,r),k?w(e,a,c):e):new h(c===3?-0:0)};g.modulo=g.mod=function(e){var t,r=this,n=r.constructor;return e=new n(e),!r.d||!e.s||e.d&&!e.d[0]?new n(NaN):!e.d||r.d&&!r.d[0]?w(new n(r),n.precision,n.rounding):(k=!1,n.modulo==9?(t=V(r,e.abs(),0,3,1),t.s*=e.s):t=V(r,e,0,n.modulo,1),t=t.times(e),k=!0,r.minus(t))};g.naturalExponential=g.exp=function(){return xt(this)};g.naturalLogarithm=g.ln=function(){return fe(this)};g.negated=g.neg=function(){var e=new this.constructor(this);return e.s=-e.s,w(e)};g.plus=g.add=function(e){var t,r,n,i,o,s,a,c,u,l,d=this,f=d.constructor;if(e=new f(e),!d.d||!e.d)return!d.s||!e.s?e=new f(NaN):d.d||(e=new f(e.d||d.s===e.s?d:NaN)),e;if(d.s!=e.s)return e.s=-e.s,d.minus(e);if(u=d.d,l=e.d,a=f.precision,c=f.rounding,!u[0]||!l[0])return l[0]||(e=new f(d)),k?w(e,a,c):e;if(o=j(d.e/T),n=j(e.e/T),u=u.slice(),i=o-n,i){for(i<0?(r=u,i=-i,s=l.length):(r=l,n=o,s=u.length),o=Math.ceil(a/T),s=o>s?o+1:s+1,i>s&&(i=s,r.length=1),r.reverse();i--;)r.push(0);r.reverse()}for(s=u.length,i=l.length,s-i<0&&(i=s,r=l,l=u,u=r),t=0;i;)t=(u[--i]=u[i]+l[i]+t)/re|0,u[i]%=re;for(t&&(u.unshift(t),++n),s=u.length;u[--s]==0;)u.pop();return e.d=u,e.e=Xe(u,n),k?w(e,a,c):e};g.precision=g.sd=function(e){var t,r=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(pe+e);return r.d?(t=xr(r.d),e&&r.e+1>t&&(t=r.e+1)):t=NaN,t};g.round=function(){var e=this,t=e.constructor;return w(new t(e),e.e+1,t.rounding)};g.sine=g.sin=function(){var e,t,r=this,n=r.constructor;return r.isFinite()?r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+Math.max(r.e,r.sd())+T,n.rounding=1,r=Ln(n,Lr(n,r)),n.precision=e,n.rounding=t,w(se>2?r.neg():r,e,t,!0)):new n(NaN)};g.squareRoot=g.sqrt=function(){var e,t,r,n,i,o,s=this,a=s.d,c=s.e,u=s.s,l=s.constructor;if(u!==1||!a||!a[0])return new l(!u||u<0&&(!a||a[0])?NaN:a?s:1/0);for(k=!1,u=Math.sqrt(+s),u==0||u==1/0?(t=G(a),(t.length+c)%2==0&&(t+="0"),u=Math.sqrt(t),c=j((c+1)/2)-(c<0||c%2),u==1/0?t="5e"+c:(t=u.toExponential(),t=t.slice(0,t.indexOf("e")+1)+c),n=new l(t)):n=new l(u.toString()),r=(c=l.precision)+3;;)if(o=n,n=o.plus(V(s,o,r+2,1)).times(.5),G(o.d).slice(0,r)===(t=G(n.d)).slice(0,r))if(t=t.slice(r-3,r+1),t=="9999"||!i&&t=="4999"){if(!i&&(w(o,c+1,0),o.times(o).eq(s))){n=o;break}r+=4,i=1}else{(!+t||!+t.slice(1)&&t.charAt(0)=="5")&&(w(n,c+1,1),e=!n.times(n).eq(s));break}return k=!0,w(n,c,l.rounding,e)};g.tangent=g.tan=function(){var e,t,r=this,n=r.constructor;return r.isFinite()?r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+10,n.rounding=1,r=r.sin(),r.s=1,r=V(r,new n(1).minus(r.times(r)).sqrt(),e+10,0),n.precision=e,n.rounding=t,w(se==2||se==4?r.neg():r,e,t,!0)):new n(NaN)};g.times=g.mul=function(e){var t,r,n,i,o,s,a,c,u,l=this,d=l.constructor,f=l.d,m=(e=new d(e)).d;if(e.s*=l.s,!f||!f[0]||!m||!m[0])return new d(!e.s||f&&!f[0]&&!m||m&&!m[0]&&!f?NaN:!f||!m?e.s/0:e.s*0);for(r=j(l.e/T)+j(e.e/T),c=f.length,u=m.length,c<u&&(o=f,f=m,m=o,s=c,c=u,u=s),o=[],s=c+u,n=s;n--;)o.push(0);for(n=u;--n>=0;){for(t=0,i=c+n;i>n;)a=o[i]+m[n]*f[i-n-1]+t,o[i--]=a%re|0,t=a/re|0;o[i]=(o[i]+t)%re|0}for(;!o[--s];)o.pop();return t?++r:o.shift(),e.d=o,e.e=Xe(o,r),k?w(e,d.precision,d.rounding):e};g.toBinary=function(e,t){return kt(this,2,e,t)};g.toDecimalPlaces=g.toDP=function(e,t){var r=this,n=r.constructor;return r=new n(r),e===void 0?r:(X(e,0,me),t===void 0?t=n.rounding:X(t,0,8),w(r,e+r.e+1,t))};g.toExponential=function(e,t){var r,n=this,i=n.constructor;return e===void 0?r=ie(n,!0):(X(e,0,me),t===void 0?t=i.rounding:X(t,0,8),n=w(new i(n),e+1,t),r=ie(n,!0,e+1)),n.isNeg()&&!n.isZero()?"-"+r:r};g.toFixed=function(e,t){var r,n,i=this,o=i.constructor;return e===void 0?r=ie(i):(X(e,0,me),t===void 0?t=o.rounding:X(t,0,8),n=w(new o(i),e+i.e+1,t),r=ie(n,!1,e+n.e+1)),i.isNeg()&&!i.isZero()?"-"+r:r};g.toFraction=function(e){var t,r,n,i,o,s,a,c,u,l,d,f,m=this,h=m.d,b=m.constructor;if(!h)return new b(m);if(u=r=new b(1),n=c=new b(0),t=new b(n),o=t.e=xr(h)-m.e-1,s=o%T,t.d[0]=O(10,s<0?T+s:s),e==null)e=o>0?t:u;else{if(a=new b(e),!a.isInt()||a.lt(u))throw Error(pe+a);e=a.gt(t)?o>0?t:u:a}for(k=!1,a=new b(G(h)),l=b.precision,b.precision=o=h.length*T*2;d=V(a,t,0,1,1),i=r.plus(d.times(n)),i.cmp(e)!=1;)r=n,n=i,i=u,u=c.plus(d.times(i)),c=i,i=t,t=a.minus(d.times(i)),a=i;return i=V(e.minus(r),n,0,1,1),c=c.plus(i.times(u)),r=r.plus(i.times(n)),c.s=u.s=m.s,f=V(u,n,o,1).minus(m).abs().cmp(V(c,r,o,1).minus(m).abs())<1?[u,n]:[c,r],b.precision=l,k=!0,f};g.toHexadecimal=g.toHex=function(e,t){return kt(this,16,e,t)};g.toNearest=function(e,t){var r=this,n=r.constructor;if(r=new n(r),e==null){if(!r.d)return r;e=new n(1),t=n.rounding}else{if(e=new n(e),t===void 0?t=n.rounding:X(t,0,8),!r.d)return e.s?r:e;if(!e.d)return e.s&&(e.s=r.s),e}return e.d[0]?(k=!1,r=V(r,e,0,t,1).times(e),k=!0,w(r)):(e.s=r.s,r=e),r};g.toNumber=function(){return+this};g.toOctal=function(e,t){return kt(this,8,e,t)};g.toPower=g.pow=function(e){var t,r,n,i,o,s,a=this,c=a.constructor,u=+(e=new c(e));if(!a.d||!e.d||!a.d[0]||!e.d[0])return new c(O(+a,u));if(a=new c(a),a.eq(1))return a;if(n=c.precision,o=c.rounding,e.eq(1))return w(a,n,o);if(t=j(e.e/T),t>=e.d.length-1&&(r=u<0?-u:u)<=xn)return i=Sr(c,a,r,n),e.s<0?new c(1).div(i):w(i,n,o);if(s=a.s,s<0){if(t<e.d.length-1)return new c(NaN);if((e.d[t]&1)==0&&(s=1),a.e==0&&a.d[0]==1&&a.d.length==1)return a.s=s,a}return r=O(+a,u),t=r==0||!isFinite(r)?j(u*(Math.log("0."+G(a.d))/Math.LN10+a.e+1)):new c(r+"").e,t>c.maxE+1||t<c.minE-1?new c(t>0?s/0:0):(k=!1,c.rounding=a.s=1,r=Math.min(12,(t+"").length),i=xt(e.times(fe(a,n+r)),n),i.d&&(i=w(i,n+5,1),Ee(i.d,n,o)&&(t=n+10,i=w(xt(e.times(fe(a,t+r)),t),t+5,1),+G(i.d).slice(n+1,n+15)+1==1e14&&(i=w(i,n+1,0)))),i.s=s,k=!0,c.rounding=o,w(i,n,o))};g.toPrecision=function(e,t){var r,n=this,i=n.constructor;return e===void 0?r=ie(n,n.e<=i.toExpNeg||n.e>=i.toExpPos):(X(e,1,me),t===void 0?t=i.rounding:X(t,0,8),n=w(new i(n),e,t),r=ie(n,e<=n.e||n.e<=i.toExpNeg,e)),n.isNeg()&&!n.isZero()?"-"+r:r};g.toSignificantDigits=g.toSD=function(e,t){var r=this,n=r.constructor;return e===void 0?(e=n.precision,t=n.rounding):(X(e,1,me),t===void 0?t=n.rounding:X(t,0,8)),w(new n(r),e,t)};g.toString=function(){var e=this,t=e.constructor,r=ie(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()&&!e.isZero()?"-"+r:r};g.truncated=g.trunc=function(){return w(new this.constructor(this),this.e+1,1)};g.valueOf=g.toJSON=function(){var e=this,t=e.constructor,r=ie(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()?"-"+r:r};function G(e){var t,r,n,i=e.length-1,o="",s=e[0];if(i>0){for(o+=s,t=1;t<i;t++)n=e[t]+"",r=T-n.length,r&&(o+=de(r)),o+=n;s=e[t],n=s+"",r=T-n.length,r&&(o+=de(r))}else if(s===0)return"0";for(;s%10===0;)s/=10;return o+s}function X(e,t,r){if(e!==~~e||e<t||e>r)throw Error(pe+e)}function Ee(e,t,r,n){var i,o,s,a;for(o=e[0];o>=10;o/=10)--t;return--t<0?(t+=T,i=0):(i=Math.ceil((t+1)/T),t%=T),o=O(10,T-t),a=e[i]%o|0,n==null?t<3?(t==0?a=a/100|0:t==1&&(a=a/10|0),s=r<4&&a==99999||r>3&&a==49999||a==5e4||a==0):s=(r<4&&a+1==o||r>3&&a+1==o/2)&&(e[i+1]/o/100|0)==O(10,t-2)-1||(a==o/2||a==0)&&(e[i+1]/o/100|0)==0:t<4?(t==0?a=a/1e3|0:t==1?a=a/100|0:t==2&&(a=a/10|0),s=(n||r<4)&&a==9999||!n&&r>3&&a==4999):s=((n||r<4)&&a+1==o||!n&&r>3&&a+1==o/2)&&(e[i+1]/o/1e3|0)==O(10,t-3)-1,s}function He(e,t,r){for(var n,i=[0],o,s=0,a=e.length;s<a;){for(o=i.length;o--;)i[o]*=t;for(i[0]+=wt.indexOf(e.charAt(s++)),n=0;n<i.length;n++)i[n]>r-1&&(i[n+1]===void 0&&(i[n+1]=0),i[n+1]+=i[n]/r|0,i[n]%=r)}return i.reverse()}function kn(e,t){var r,n,i;if(t.isZero())return t;n=t.d.length,n<32?(r=Math.ceil(n/3),i=(1/Je(4,r)).toString()):(r=16,i="2.3283064365386962890625e-10"),e.precision+=r,t=Be(e,1,t.times(i),new e(1));for(var o=r;o--;){var s=t.times(t);t=s.times(s).minus(s).times(8).plus(1)}return e.precision-=r,t}var V=function(){function e(n,i,o){var s,a=0,c=n.length;for(n=n.slice();c--;)s=n[c]*i+a,n[c]=s%o|0,a=s/o|0;return a&&n.unshift(a),n}function t(n,i,o,s){var a,c;if(o!=s)c=o>s?1:-1;else for(a=c=0;a<o;a++)if(n[a]!=i[a]){c=n[a]>i[a]?1:-1;break}return c}function r(n,i,o,s){for(var a=0;o--;)n[o]-=a,a=n[o]<i[o]?1:0,n[o]=a*s+n[o]-i[o];for(;!n[0]&&n.length>1;)n.shift()}return function(n,i,o,s,a,c){var u,l,d,f,m,h,b,x,A,E,R,D,le,Z,ge,Ke,Pe,xe,$,Se,Ue=n.constructor,st=n.s==i.s?1:-1,H=n.d,F=i.d;if(!H||!H[0]||!F||!F[0])return new Ue(!n.s||!i.s||(H?F&&H[0]==F[0]:!F)?NaN:H&&H[0]==0||!F?st*0:st/0);for(c?(m=1,l=n.e-i.e):(c=re,m=T,l=j(n.e/m)-j(i.e/m)),$=F.length,Pe=H.length,A=new Ue(st),E=A.d=[],d=0;F[d]==(H[d]||0);d++);if(F[d]>(H[d]||0)&&l--,o==null?(Z=o=Ue.precision,s=Ue.rounding):a?Z=o+(n.e-i.e)+1:Z=o,Z<0)E.push(1),h=!0;else{if(Z=Z/m+2|0,d=0,$==1){for(f=0,F=F[0],Z++;(d<Pe||f)&&Z--;d++)ge=f*c+(H[d]||0),E[d]=ge/F|0,f=ge%F|0;h=f||d<Pe}else{for(f=c/(F[0]+1)|0,f>1&&(F=e(F,f,c),H=e(H,f,c),$=F.length,Pe=H.length),Ke=$,R=H.slice(0,$),D=R.length;D<$;)R[D++]=0;Se=F.slice(),Se.unshift(0),xe=F[0],F[1]>=c/2&&++xe;do f=0,u=t(F,R,$,D),u<0?(le=R[0],$!=D&&(le=le*c+(R[1]||0)),f=le/xe|0,f>1?(f>=c&&(f=c-1),b=e(F,f,c),x=b.length,D=R.length,u=t(b,R,x,D),u==1&&(f--,r(b,$<x?Se:F,x,c))):(f==0&&(u=f=1),b=F.slice()),x=b.length,x<D&&b.unshift(0),r(R,b,D,c),u==-1&&(D=R.length,u=t(F,R,$,D),u<1&&(f++,r(R,$<D?Se:F,D,c))),D=R.length):u===0&&(f++,R=[0]),E[d++]=f,u&&R[0]?R[D++]=H[Ke]||0:(R=[H[Ke]],D=1);while((Ke++<Pe||R[0]!==void 0)&&Z--);h=R[0]!==void 0}E[0]||E.shift()}if(m==1)A.e=l,br=h;else{for(d=1,f=E[0];f>=10;f/=10)d++;A.e=d+l*m-1,w(A,a?o+A.e+1:o,s,h)}return A}}();function w(e,t,r,n){var i,o,s,a,c,u,l,d,f,m=e.constructor;e:if(t!=null){if(d=e.d,!d)return e;for(i=1,a=d[0];a>=10;a/=10)i++;if(o=t-i,o<0)o+=T,s=t,l=d[f=0],c=l/O(10,i-s-1)%10|0;else if(f=Math.ceil((o+1)/T),a=d.length,f>=a)if(n){for(;a++<=f;)d.push(0);l=c=0,i=1,o%=T,s=o-T+1}else break e;else{for(l=a=d[f],i=1;a>=10;a/=10)i++;o%=T,s=o-T+i,c=s<0?0:l/O(10,i-s-1)%10|0}if(n=n||t<0||d[f+1]!==void 0||(s<0?l:l%O(10,i-s-1)),u=r<4?(c||n)&&(r==0||r==(e.s<0?3:2)):c>5||c==5&&(r==4||n||r==6&&(o>0?s>0?l/O(10,i-s):0:d[f-1])%10&1||r==(e.s<0?8:7)),t<1||!d[0])return d.length=0,u?(t-=e.e+1,d[0]=O(10,(T-t%T)%T),e.e=-t||0):d[0]=e.e=0,e;if(o==0?(d.length=f,a=1,f--):(d.length=f+1,a=O(10,T-o),d[f]=s>0?(l/O(10,i-s)%O(10,s)|0)*a:0),u)for(;;)if(f==0){for(o=1,s=d[0];s>=10;s/=10)o++;for(s=d[0]+=a,a=1;s>=10;s/=10)a++;o!=a&&(e.e++,d[0]==re&&(d[0]=1));break}else{if(d[f]+=a,d[f]!=re)break;d[f--]=0,a=1}for(o=d.length;d[--o]===0;)d.pop()}return k&&(e.e>m.maxE?(e.d=null,e.e=NaN):e.e<m.minE&&(e.e=0,e.d=[0])),e}function ie(e,t,r){if(!e.isFinite())return Ar(e);var n,i=e.e,o=G(e.d),s=o.length;return t?(r&&(n=r-s)>0?o=o.charAt(0)+"."+o.slice(1)+de(n):s>1&&(o=o.charAt(0)+"."+o.slice(1)),o=o+(e.e<0?"e":"e+")+e.e):i<0?(o="0."+de(-i-1)+o,r&&(n=r-s)>0&&(o+=de(n))):i>=s?(o+=de(i+1-s),r&&(n=r-i-1)>0&&(o=o+"."+de(n))):((n=i+1)<s&&(o=o.slice(0,n)+"."+o.slice(n)),r&&(n=r-s)>0&&(i+1===s&&(o+="."),o+=de(n))),o}function Xe(e,t){var r=e[0];for(t*=T;r>=10;r/=10)t++;return t}function ze(e,t,r){if(t>Sn)throw k=!0,r&&(e.precision=r),Error(hr);return w(new e(je),t,1,!0)}function te(e,t,r){if(t>Pt)throw Error(hr);return w(new e(Ze),t,r,!0)}function xr(e){var t=e.length-1,r=t*T+1;if(t=e[t],t){for(;t%10==0;t/=10)r--;for(t=e[0];t>=10;t/=10)r++}return r}function de(e){for(var t="";e--;)t+="0";return t}function Sr(e,t,r,n){var i,o=new e(1),s=Math.ceil(n/T+4);for(k=!1;;){if(r%2&&(o=o.times(t),gr(o.d,s)&&(i=!0)),r=j(r/2),r===0){r=o.d.length-1,i&&o.d[r]===0&&++o.d[r];break}t=t.times(t),gr(t.d,s)}return k=!0,o}function mr(e){return e.d[e.d.length-1]&1}function kr(e,t,r){for(var n,i=new e(t[0]),o=0;++o<t.length;)if(n=new e(t[o]),n.s)i[r](n)&&(i=n);else{i=n;break}return i}function xt(e,t){var r,n,i,o,s,a,c,u=0,l=0,d=0,f=e.constructor,m=f.rounding,h=f.precision;if(!e.d||!e.d[0]||e.e>17)return new f(e.d?e.d[0]?e.s<0?0:1/0:1:e.s?e.s<0?0:e:0/0);for(t==null?(k=!1,c=h):c=t,a=new f(.03125);e.e>-2;)e=e.times(a),d+=5;for(n=Math.log(O(2,d))/Math.LN10*2+5|0,c+=n,r=o=s=new f(1),f.precision=c;;){if(o=w(o.times(e),c,1),r=r.times(++l),a=s.plus(V(o,r,c,1)),G(a.d).slice(0,c)===G(s.d).slice(0,c)){for(i=d;i--;)s=w(s.times(s),c,1);if(t==null)if(u<3&&Ee(s.d,c-n,m,u))f.precision=c+=10,r=o=a=new f(1),l=0,u++;else return w(s,f.precision=h,m,k=!0);else return f.precision=h,s}s=a}}function fe(e,t){var r,n,i,o,s,a,c,u,l,d,f,m=1,h=10,b=e,x=b.d,A=b.constructor,E=A.rounding,R=A.precision;if(b.s<0||!x||!x[0]||!b.e&&x[0]==1&&x.length==1)return new A(x&&!x[0]?-1/0:b.s!=1?NaN:x?0:b);if(t==null?(k=!1,l=R):l=t,A.precision=l+=h,r=G(x),n=r.charAt(0),Math.abs(o=b.e)<15e14){for(;n<7&&n!=1||n==1&&r.charAt(1)>3;)b=b.times(e),r=G(b.d),n=r.charAt(0),m++;o=b.e,n>1?(b=new A("0."+r),o++):b=new A(n+"."+r.slice(1))}else return u=ze(A,l+2,R).times(o+""),b=fe(new A(n+"."+r.slice(1)),l-h).plus(u),A.precision=R,t==null?w(b,R,E,k=!0):b;for(d=b,c=s=b=V(b.minus(1),b.plus(1),l,1),f=w(b.times(b),l,1),i=3;;){if(s=w(s.times(f),l,1),u=c.plus(V(s,new A(i),l,1)),G(u.d).slice(0,l)===G(c.d).slice(0,l))if(c=c.times(2),o!==0&&(c=c.plus(ze(A,l+2,R).times(o+""))),c=V(c,new A(m),l,1),t==null)if(Ee(c.d,l-h,E,a))A.precision=l+=h,u=s=b=V(d.minus(1),d.plus(1),l,1),f=w(b.times(b),l,1),i=a=1;else return w(c,A.precision=R,E,k=!0);else return A.precision=R,c;c=u,i+=2}}function Ar(e){return String(e.s*e.s/0)}function St(e,t){var r,n,i;for((r=t.indexOf("."))>-1&&(t=t.replace(".","")),(n=t.search(/e/i))>0?(r<0&&(r=n),r+=+t.slice(n+1),t=t.substring(0,n)):r<0&&(r=t.length),n=0;t.charCodeAt(n)===48;n++);for(i=t.length;t.charCodeAt(i-1)===48;--i);if(t=t.slice(n,i),t){if(i-=n,e.e=r=r-n-1,e.d=[],n=(r+1)%T,r<0&&(n+=T),n<i){for(n&&e.d.push(+t.slice(0,n)),i-=T;n<i;)e.d.push(+t.slice(n,n+=T));t=t.slice(n),n=T-t.length}else n-=i;for(;n--;)t+="0";e.d.push(+t),k&&(e.e>e.constructor.maxE?(e.d=null,e.e=NaN):e.e<e.constructor.minE&&(e.e=0,e.d=[0]))}else e.e=0,e.d=[0];return e}function An(e,t){var r,n,i,o,s,a,c,u,l;if(t.indexOf("_")>-1){if(t=t.replace(/(\d)_(?=\d)/g,"$1"),Pr.test(t))return St(e,t)}else if(t==="Infinity"||t==="NaN")return+t||(e.s=NaN),e.e=NaN,e.d=null,e;if(Tn.test(t))r=16,t=t.toLowerCase();else if(wn.test(t))r=2;else if(Pn.test(t))r=8;else throw Error(pe+t);for(o=t.search(/p/i),o>0?(c=+t.slice(o+1),t=t.substring(2,o)):t=t.slice(2),o=t.indexOf("."),s=o>=0,n=e.constructor,s&&(t=t.replace(".",""),a=t.length,o=a-o,i=Sr(n,new n(r),o,o*2)),u=He(t,r,re),l=u.length-1,o=l;u[o]===0;--o)u.pop();return o<0?new n(e.s*0):(e.e=Xe(u,l),e.d=u,k=!1,s&&(e=V(e,i,a*4)),c&&(e=e.times(Math.abs(c)<54?O(2,c):Ye.pow(2,c))),k=!0,e)}function Ln(e,t){var r,n=t.d.length;if(n<3)return t.isZero()?t:Be(e,2,t,t);r=1.4*Math.sqrt(n),r=r>16?16:r|0,t=t.times(1/Je(5,r)),t=Be(e,2,t,t);for(var i,o=new e(5),s=new e(16),a=new e(20);r--;)i=t.times(t),t=t.times(o.plus(i.times(s.times(i).minus(a))));return t}function Be(e,t,r,n,i){var o,s,a,c,u=1,l=e.precision,d=Math.ceil(l/T);for(k=!1,c=r.times(r),a=new e(n);;){if(s=V(a.times(c),new e(t++*t++),l,1),a=i?n.plus(s):n.minus(s),n=V(s.times(c),new e(t++*t++),l,1),s=a.plus(n),s.d[d]!==void 0){for(o=d;s.d[o]===a.d[o]&&o--;);if(o==-1)break}o=a,a=n,n=s,s=o,u++}return k=!0,s.d.length=d+1,s}function Je(e,t){for(var r=e;--t;)r*=e;return r}function Lr(e,t){var r,n=t.s<0,i=te(e,e.precision,1),o=i.times(.5);if(t=t.abs(),t.lte(o))return se=n?4:1,t;if(r=t.divToInt(i),r.isZero())se=n?3:2;else{if(t=t.minus(r.times(i)),t.lte(o))return se=mr(r)?n?2:3:n?4:1,t;se=mr(r)?n?1:4:n?3:2}return t.minus(i).abs()}function kt(e,t,r,n){var i,o,s,a,c,u,l,d,f,m=e.constructor,h=r!==void 0;if(h?(X(r,1,me),n===void 0?n=m.rounding:X(n,0,8)):(r=m.precision,n=m.rounding),!e.isFinite())l=Ar(e);else{for(l=ie(e),s=l.indexOf("."),h?(i=2,t==16?r=r*4-3:t==8&&(r=r*3-2)):i=t,s>=0&&(l=l.replace(".",""),f=new m(1),f.e=l.length-s,f.d=He(ie(f),10,i),f.e=f.d.length),d=He(l,10,i),o=c=d.length;d[--c]==0;)d.pop();if(!d[0])l=h?"0p+0":"0";else{if(s<0?o--:(e=new m(e),e.d=d,e.e=o,e=V(e,f,r,n,0,i),d=e.d,o=e.e,u=br),s=d[r],a=i/2,u=u||d[r+1]!==void 0,u=n<4?(s!==void 0||u)&&(n===0||n===(e.s<0?3:2)):s>a||s===a&&(n===4||u||n===6&&d[r-1]&1||n===(e.s<0?8:7)),d.length=r,u)for(;++d[--r]>i-1;)d[r]=0,r||(++o,d.unshift(1));for(c=d.length;!d[c-1];--c);for(s=0,l="";s<c;s++)l+=wt.charAt(d[s]);if(h){if(c>1)if(t==16||t==8){for(s=t==16?4:3,--c;c%s;c++)l+="0";for(d=He(l,i,t),c=d.length;!d[c-1];--c);for(s=1,l="1.";s<c;s++)l+=wt.charAt(d[s])}else l=l.charAt(0)+"."+l.slice(1);l=l+(o<0?"p":"p+")+o}else if(o<0){for(;++o;)l="0"+l;l="0."+l}else if(++o>c)for(o-=c;o--;)l+="0";else o<c&&(l=l.slice(0,o)+"."+l.slice(o))}l=(t==16?"0x":t==2?"0b":t==8?"0o":"")+l}return e.s<0?"-"+l:l}function gr(e,t){if(e.length>t)return e.length=t,!0}function In(e){return new this(e).abs()}function Bn(e){return new this(e).acos()}function Rn(e){return new this(e).acosh()}function Cn(e,t){return new this(e).plus(t)}function Nn(e){return new this(e).asin()}function Kn(e){return new this(e).asinh()}function vn(e){return new this(e).atan()}function Vn(e){return new this(e).atanh()}function En(e,t){e=new this(e),t=new this(t);var r,n=this.precision,i=this.rounding,o=n+4;return!e.s||!t.s?r=new this(NaN):!e.d&&!t.d?(r=te(this,o,1).times(t.s>0?.25:.75),r.s=e.s):!t.d||e.isZero()?(r=t.s<0?te(this,n,i):new this(0),r.s=e.s):!e.d||t.isZero()?(r=te(this,o,1).times(.5),r.s=e.s):t.s<0?(this.precision=o,this.rounding=1,r=this.atan(V(e,t,o,1)),t=te(this,o,1),this.precision=n,this.rounding=i,r=e.s<0?r.minus(t):r.plus(t)):r=this.atan(V(e,t,o,1)),r}function Fn(e){return new this(e).cbrt()}function Mn(e){return w(e=new this(e),e.e+1,2)}function _n(e,t,r){return new this(e).clamp(t,r)}function Dn(e){if(!e||typeof e!="object")throw Error(Qe+"Object expected");var t,r,n,i=e.defaults===!0,o=["precision",1,me,"rounding",0,8,"toExpNeg",-Ie,0,"toExpPos",0,Ie,"maxE",0,Ie,"minE",-Ie,0,"modulo",0,9];for(t=0;t<o.length;t+=3)if(r=o[t],i&&(this[r]=Tt[r]),(n=e[r])!==void 0)if(j(n)===n&&n>=o[t+1]&&n<=o[t+2])this[r]=n;else throw Error(pe+r+": "+n);if(r="crypto",i&&(this[r]=Tt[r]),(n=e[r])!==void 0)if(n===!0||n===!1||n===0||n===1)if(n)if(typeof crypto<"u"&&crypto&&(crypto.getRandomValues||crypto.randomBytes))this[r]=!0;else throw Error(wr);else this[r]=!1;else throw Error(pe+r+": "+n);return this}function Wn(e){return new this(e).cos()}function On(e){return new this(e).cosh()}function Ir(e){var t,r,n;function i(o){var s,a,c,u=this;if(!(u instanceof i))return new i(o);if(u.constructor=i,yr(o)){u.s=o.s,k?!o.d||o.e>i.maxE?(u.e=NaN,u.d=null):o.e<i.minE?(u.e=0,u.d=[0]):(u.e=o.e,u.d=o.d.slice()):(u.e=o.e,u.d=o.d?o.d.slice():o.d);return}if(c=typeof o,c==="number"){if(o===0){u.s=1/o<0?-1:1,u.e=0,u.d=[0];return}if(o<0?(o=-o,u.s=-1):u.s=1,o===~~o&&o<1e7){for(s=0,a=o;a>=10;a/=10)s++;k?s>i.maxE?(u.e=NaN,u.d=null):s<i.minE?(u.e=0,u.d=[0]):(u.e=s,u.d=[o]):(u.e=s,u.d=[o]);return}else if(o*0!==0){o||(u.s=NaN),u.e=NaN,u.d=null;return}return St(u,o.toString())}else if(c!=="string")throw Error(pe+o);return(a=o.charCodeAt(0))===45?(o=o.slice(1),u.s=-1):(a===43&&(o=o.slice(1)),u.s=1),Pr.test(o)?St(u,o):An(u,o)}if(i.prototype=g,i.ROUND_UP=0,i.ROUND_DOWN=1,i.ROUND_CEIL=2,i.ROUND_FLOOR=3,i.ROUND_HALF_UP=4,i.ROUND_HALF_DOWN=5,i.ROUND_HALF_EVEN=6,i.ROUND_HALF_CEIL=7,i.ROUND_HALF_FLOOR=8,i.EUCLID=9,i.config=i.set=Dn,i.clone=Ir,i.isDecimal=yr,i.abs=In,i.acos=Bn,i.acosh=Rn,i.add=Cn,i.asin=Nn,i.asinh=Kn,i.atan=vn,i.atanh=Vn,i.atan2=En,i.cbrt=Fn,i.ceil=Mn,i.clamp=_n,i.cos=Wn,i.cosh=On,i.div=Un,i.exp=qn,i.floor=Gn,i.hypot=Hn,i.ln=jn,i.log=Zn,i.log10=Qn,i.log2=zn,i.max=Xn,i.min=Jn,i.mod=Yn,i.mul=$n,i.pow=ei,i.random=ti,i.round=ri,i.sign=ni,i.sin=ii,i.sinh=oi,i.sqrt=si,i.sub=ai,i.sum=ui,i.tan=ci,i.tanh=li,i.trunc=di,e===void 0&&(e={}),e&&e.defaults!==!0)for(n=["precision","rounding","toExpNeg","toExpPos","maxE","minE","modulo","crypto"],t=0;t<n.length;)e.hasOwnProperty(r=n[t++])||(e[r]=this[r]);return i.config(e),i}function Un(e,t){return new this(e).div(t)}function qn(e){return new this(e).exp()}function Gn(e){return w(e=new this(e),e.e+1,3)}function Hn(){var e,t,r=new this(0);for(k=!1,e=0;e<arguments.length;)if(t=new this(arguments[e++]),t.d)r.d&&(r=r.plus(t.times(t)));else{if(t.s)return k=!0,new this(1/0);r=t}return k=!0,r.sqrt()}function yr(e){return e instanceof Ye||e&&e.toStringTag===Tr||!1}function jn(e){return new this(e).ln()}function Zn(e,t){return new this(e).log(t)}function zn(e){return new this(e).log(2)}function Qn(e){return new this(e).log(10)}function Xn(){return kr(this,arguments,"lt")}function Jn(){return kr(this,arguments,"gt")}function Yn(e,t){return new this(e).mod(t)}function $n(e,t){return new this(e).mul(t)}function ei(e,t){return new this(e).pow(t)}function ti(e){var t,r,n,i,o=0,s=new this(1),a=[];if(e===void 0?e=this.precision:X(e,1,me),n=Math.ceil(e/T),this.crypto)if(crypto.getRandomValues)for(t=crypto.getRandomValues(new Uint32Array(n));o<n;)i=t[o],i>=429e7?t[o]=crypto.getRandomValues(new Uint32Array(1))[0]:a[o++]=i%1e7;else if(crypto.randomBytes){for(t=crypto.randomBytes(n*=4);o<n;)i=t[o]+(t[o+1]<<8)+(t[o+2]<<16)+((t[o+3]&127)<<24),i>=214e7?crypto.randomBytes(4).copy(t,o):(a.push(i%1e7),o+=4);o=n/4}else throw Error(wr);else for(;o<n;)a[o++]=Math.random()*1e7|0;for(n=a[--o],e%=T,n&&e&&(i=O(10,T-e),a[o]=(n/i|0)*i);a[o]===0;o--)a.pop();if(o<0)r=0,a=[0];else{for(r=-1;a[0]===0;r-=T)a.shift();for(n=1,i=a[0];i>=10;i/=10)n++;n<T&&(r-=T-n)}return s.e=r,s.d=a,s}function ri(e){return w(e=new this(e),e.e+1,this.rounding)}function ni(e){return e=new this(e),e.d?e.d[0]?e.s:0*e.s:e.s||NaN}function ii(e){return new this(e).sin()}function oi(e){return new this(e).sinh()}function si(e){return new this(e).sqrt()}function ai(e,t){return new this(e).sub(t)}function ui(){var e=0,t=arguments,r=new this(t[e]);for(k=!1;r.s&&++e<t.length;)r=r.plus(t[e]);return k=!0,w(r,this.precision,this.rounding)}function ci(e){return new this(e).tan()}function li(e){return new this(e).tanh()}function di(e){return w(e=new this(e),e.e+1,1)}g[Symbol.for("nodejs.util.inspect.custom")]=g.toString;g[Symbol.toStringTag]="Decimal";var Ye=g.constructor=Ir(Tt);je=new Ye(je);Ze=new Ye(Ze);import wi from"big.js";import tt from"bn.js";import fi from"toformat";var pi=fi,Fe=pi;import et from"big.js";import gi from"bn.js";import yi from"decimal.js-light";import Me from"bn.js";var Br=9007199254740991;function C(e){let t=W("Raydium_parseBigNumberish");if(e instanceof Me)return e;if(typeof e=="string"){if(e.match(/^-?[0-9]+$/))return new Me(e);t.logWithError(`invalid BigNumberish string: ${e}`)}return typeof e=="number"?(e%1&&t.logWithError(`BigNumberish number underflow: ${e}`),(e>=Br||e<=-Br)&&t.logWithError(`BigNumberish number overflow: ${e}`),new Me(String(e))):typeof e=="bigint"?new Me(e.toString()):(t.error(`invalid BigNumberish value: ${e}`),new Me(0))}var $e=W("module/fraction"),At=Fe(et),_e=Fe(yi),bi={[0]:_e.ROUND_DOWN,[1]:_e.ROUND_HALF_UP,[2]:_e.ROUND_UP},hi={[0]:et.roundDown,[1]:et.roundHalfUp,[2]:et.roundUp},v=class{constructor(t,r=new gi(1)){this.numerator=C(t),this.denominator=C(r)}get quotient(){return this.numerator.div(this.denominator)}invert(){return new v(this.denominator,this.numerator)}add(t){let r=t instanceof v?t:new v(C(t));return this.denominator.eq(r.denominator)?new v(this.numerator.add(r.numerator),this.denominator):new v(this.numerator.mul(r.denominator).add(r.numerator.mul(this.denominator)),this.denominator.mul(r.denominator))}sub(t){let r=t instanceof v?t:new v(C(t));return this.denominator.eq(r.denominator)?new v(this.numerator.sub(r.numerator),this.denominator):new v(this.numerator.mul(r.denominator).sub(r.numerator.mul(this.denominator)),this.denominator.mul(r.denominator))}mul(t){let r=t instanceof v?t:new v(C(t));return new v(this.numerator.mul(r.numerator),this.denominator.mul(r.denominator))}div(t){let r=t instanceof v?t:new v(C(t));return new v(this.numerator.mul(r.denominator),this.denominator.mul(r.numerator))}toSignificant(t,r={groupSeparator:""},n=1){Number.isInteger(t)||$e.logWithError(`${t} is not an integer.`),t<=0&&$e.logWithError(`${t} is not positive.`),_e.set({precision:t+1,rounding:bi[n]});let i=new _e(this.numerator.toString()).div(this.denominator.toString()).toSignificantDigits(t);return i.toFormat(i.decimalPlaces(),r)}toFixed(t,r={groupSeparator:""},n=1){return Number.isInteger(t)||$e.logWithError(`${t} is not an integer.`),t<0&&$e.logWithError(`${t} is negative.`),At.DP=t,At.RM=hi[n]||1,new At(this.numerator.toString()).div(this.denominator.toString()).toFormat(t,r)}isZero(){return this.numerator.isZero()}};var Ti=W("Raydium_amount"),Rr=Fe(wi);function Pi(e,t){let r="0",n="0";if(e.includes(".")){let i=e.split(".");i.length===2?([r,n]=i,n=n.padEnd(t,"0")):Ti.logWithError(`invalid number string, num: ${e}`)}else r=e;return[r,n.slice(0,t)||n]}var ae=class extends v{constructor(r,n,i=!0,o){let s=new tt(0),a=Lt.pow(new tt(r.decimals));if(i)s=C(n);else{let c=new tt(0),u=new tt(0);if(typeof n=="string"||typeof n=="number"||typeof n=="bigint"){let[l,d]=Pi(n.toString(),r.decimals);c=C(l),u=C(d)}c=c.mul(a),s=c.add(u)}super(s,a);this.logger=W(o||"TokenAmount"),this.token=r}get raw(){return this.numerator}isZero(){return this.raw.isZero()}gt(r){return this.token.equals(r.token)||this.logger.logWithError("gt token not equals"),this.raw.gt(r.raw)}lt(r){return this.token.equals(r.token)||this.logger.logWithError("lt token not equals"),this.raw.lt(r.raw)}add(r){return this.token.equals(r.token)||this.logger.logWithError("add token not equals"),new ae(this.token,this.raw.add(r.raw))}subtract(r){return this.token.equals(r.token)||this.logger.logWithError("sub token not equals"),new ae(this.token,this.raw.sub(r.raw))}toSignificant(r=this.token.decimals,n,i=0){return super.toSignificant(r,n,i)}toFixed(r=this.token.decimals,n,i=0){return r>this.token.decimals&&this.logger.logWithError("decimals overflow"),super.toFixed(r,n,i)}toExact(r={groupSeparator:""}){return Rr.DP=this.token.decimals,new Rr(this.numerator.toString()).div(this.denominator.toString()).toFormat(r)}};import{PublicKey as xi}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as Cr}from"@solana/spl-token";var Nr={chainId:101,address:xi.default.toBase58(),programId:Cr.toBase58(),decimals:9,symbol:"SOL",name:"solana",logoURI:"https://img-v1.raydium.io/icon/So11111111111111111111111111111111111111112.png",tags:[],priority:2,type:"raydium",extensions:{coingeckoId:"solana"}},be={chainId:101,address:"So11111111111111111111111111111111111111112",programId:Cr.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 Ct}from"@solana/web3.js";import{PublicKey as _,SystemProgram as Kr,SYSVAR_RENT_PUBKEY as Si}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as ki}from"@solana/spl-token";function p({pubkey:e,isSigner:t=!1,isWritable:r=!0}){return{pubkey:e,isWritable:r,isSigner:t}}var It=[p({pubkey:ki,isWritable:!1}),p({pubkey:Kr.programId,isWritable:!1}),p({pubkey:Si,isWritable:!1})];function vr({publicKey:e,transformSol:t}){let r=Bt(e.toString());if(r instanceof _)return t&&r.equals(he)?ht:r;if(t&&r.toString()===he.toBase58())return ht;if(typeof r=="string"){if(r===_.default.toBase58())return _.default;try{return new _(r)}catch{throw new Error("invalid public key")}}throw new Error("invalid public key")}function Bt(e){try{return new _(e)}catch{return e}}var Va=new _("MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"),Ea=new _("MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"),Rt=new _("SysvarRent111111111111111111111111111111111"),Fa=new _("SysvarC1ock11111111111111111111111111111111"),Ma=new _("metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),rt=new _("Sysvar1nstructions1111111111111111111111111"),_a=Kr.programId,Da=new _("4k3Dyjzvzp8eMZWUXbBCjEvwSkkk59S5iCNLY3QrkX6R"),Wa=new _("Ea5SjE2Y6yvCeW5dYTn7PYMuW5ikXkvbGdcmSnXeaLjS"),Oa=new _("SRMuApVNdxXokk5GT7