UNPKG

raydium-sdk-v2-custody

Version:

An SDK for building applications on top of Raydium.

1 lines 78.5 kB
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},Z=(e,t)=>Or(e,Ur(t));import{PublicKey as Jr}from"@solana/web3.js";import zt,{isBN as Yt}from"bn.js";import{bits as Yi,BitStructure as Zi,blob as Hr,Blob as Xi,cstr as Ji,f32 as Qi,f32be as $i,f64 as eo,f64be as to,greedy as ro,Layout as jr,ns64 as no,ns64be as io,nu64 as oo,nu64be as so,offset as ao,s16 as uo,s16be as co,s24 as lo,s24be as fo,s32 as po,s32be as mo,s40 as go,s40be as yo,s48 as bo,s48be as ho,s8 as wo,seq as zr,struct as To,Structure as Yr,u16 as Po,u16be as xo,u24 as So,u24be as ko,u32 as Ao,u32be as Lo,u40 as Io,u40be as Bo,u48 as Ro,u48be as Co,u8 as Zr,UInt as Xr,union as Ko,Union as No,unionLayoutDiscriminator as vo,utf8 as Vo}from"@solana/buffer-layout";var at=jr,Gt=Yr;var ut=Xr;var Ht=Zr;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 N(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 Zt(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(),Qr,$r,e)}function Qr(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 K(e,t,r){return new ct(e,t,r)}function F(e,t,r){let n,i=typeof t=="number"?t:Yt(t)?t.toNumber():new Proxy(t,{get(o,s){if(!n){let a=Reflect.get(o,"count");n=Yt(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 k}from"@solana/web3.js";var Qt=new k("EhhTKczWMGQt46ynNeRX1WfeagwwJd7ufHvCDjRxjo5Q"),$t=new k("CBuCnLe26faBpcBP2fktp4rp8abpcAnTWft6ZrP5Q4T"),er=new k("9KEPoZmtHUrBbhWN1v1KWLMkkvwY6WLtAVUCPRtRjP4z"),tr=new k("FarmqiPv5eAj3j1GMdMCMUGXqPUvmquZtMy86QH6rzhG"),Xo=new k("CLaimxFqjHzgTJtAGHU47NPhg6qrc5sCnpC4tBLyABQS"),Jo=new k("srmqPvymJeFKQ4zGQed1GFppgkRHL9kaELCbyksJtPX"),Qo=new k("9xQeWvG816bUx9EPjHmaT23yvVM2ZWbrrpZb9PusVFin"),$o=new k("675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8"),es=new k("5quBtoiQqxF9Jv6KYKctB59NT3gtJD2Y65kdnB1Uev3h"),ts=new k("CDSr3ssLcRB6XYPJwAfFt18MZvEZp4LjHcvzBVZ45duo"),rs=new k("CAMMCzo5YL8w4VFF8KVHrK22GGUsp5VTaW7grrKgrWqK"),ns=new k("LockrWmn6K5twhz3y9w1dQERbmgSaRkfnTeTKbpofwE"),is=new k("kN1kEznaF5Xbd8LYuqtEFcxzWSBk5Fv6ygX6SqEGJVy"),os=new k("routeUGWgWzqBWFcrCfv8tritsqukccJPu3q5GPP3xS"),ss=new k("7YttLkHDoNj9wyDur5pM1ejNaAvT9X4eqaYcHQqtj2G5"),as=new k("6FJon3QE27qgPVggARueB22hLvoh22VzJpXv4rBEoSLF"),us=new k("CC12se5To1CdEuw7fDS27B7Geo5jJyL7t5UK2B44NgiH"),cs=new k("9HzJyW1qZsEiSfMUf6L2jo3CcTKAyBmSyKdwQeYisHrC"),ls=new k("DropEU8AvevN3UrXWXTMuz3rqnMczQVNjq3kcSdW2SQi"),ds=new k("CPMMoo8L3F4NbTegBCKVNunggL7H1ZpdTHKxQB5qKP1C"),fs=new k("GpMZbSM2GgvTKHJirzeGfMFoaZ8UR2X7F4v8vHTvxFbL"),ps=new k("DNXgeM9EiiaAbaWvwjHj9fQQLAX5ZsfHyvmYUNRAdNC8"),rn=new k("CPMDWBwJDtYax9qW7AyRuVC19Cc4L4Vcy4n2BHAbHkCW"),nn=new k("7rQ1QFNosMkUCuh7Z7fPbTHvh73b68sQYdirycEzJVuw"),on=new k("G11FKBRaAkHAKuLCgLM6K6NUc9rTjPAznRCjZifrTQe2"),ms=new k("LockrWmn6K5twhz3y9w1dQERbmgSaRkfnTeTKbpofwE"),sn=new k("DLockwT7X7sxtLmGH9g5kmfcjaBtncdbUmi738m5bvQC"),gs=new k("3f7GcQFG397GAaEnv51zR6tsTVihYRydnydDD1cXekxH"),an=new k("7AFUeLVRjBfzqK3tTGw8hN48KLQWSk6DTE8xprWdPqix");var ys={SERUM_MARKET:k.default,OPENBOOK_MARKET:new k("EoTcMgcDRTJVZDMZWBoU6rhYHZfkNTVEAfz3uUJRcYGj"),UTIL1216:k.default,FarmV3:new k("85BFyr98MbCUU9MVTEgzx1nbhWACbJqLzho6zd6DZcWL"),FarmV5:new k("EcLzTrNg9V7qhcdyXDe2qjtPkiGzDM2UbdRaeaadU5r2"),FarmV6:new k("Farm2hJLcqPtPg8M4rR6DMrsRNc5TPm5Cs4bVQrMe2T7"),AmmV4:new k("HWy1jotHpo6UqeQxx49dpYYdQB8wj9Qk9MdxwjLvDHB8"),AmmStable:new k("DDg4VmQaJV9ogWce7LpcjBA9bv22wRp5uaTPa5pGjijF"),CLMM:new k("devi51mZmdwUJGU9hjN27vEz64Gps7uUefqxg27EAtH"),CLMM_LOCK_PROGRAM_ID:new k("DLockwT7X7sxtLmGH9g5kmfcjaBtncdbUmi738m5bvQC"),CLMM_LOCK_AUTH_ID:new k("8qmHNvu2Kr2C7U8mJL4Vz1vTDxMhVuXKREwU7TNoaVEo"),Router:new k("BVChZ3XFEwTMUk1o9i3HAf91H6mFxSwa5X2wFAWhYPhU"),CREATE_CPMM_POOL_PROGRAM:rn,CREATE_CPMM_POOL_AUTH:nn,CREATE_CPMM_POOL_FEE_ACC:on,FEE_DESTINATION_ID:new k("3XMrhbv989VxAMi3DErLV9eJht1pHppW5LbKxe9fkEFR"),LOCK_CPMM_PROGRAM:sn,LCOK_CPMM_AUTH:an};var ks=W("Raydium_farm_config"),As=new rr("4k3Dyjzvzp8eMZWUXbBCjEvwSkkk59S5iCNLY3QrkX6R"),Ls=new rr("FrspKwj8i3pNmKwXreTveC4fu7KL5ZbGeXdZBe2XViu1"),nr={3:or,5:sr,6:ar},ir={3:Ve,5:ur,6:cr},Is=e=>[3,4,5,6].indexOf(e)!==-1,Bs=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},Rs={[Qt.toString()]:3,[$t.toString()]:4,[er.toString()]:5,[tr.toString()]:6};var dt=K([N("instruction")]),ft=K([N("instruction")]),un=K([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"),F(y(),15,"padding")]),cn=K([y("state"),y("nonce"),L("lpVault"),L("rewardVault"),L(),L(),y(),y(),y("totalReward"),oe("perShareReward"),y("lastSlot"),y("perSlotReward")]),ln=K([y("state"),y("nonce"),L("lpVault"),L("rewardVaultA"),y("totalRewardA"),oe("perShareRewardA"),y("perSlotRewardA"),N("option"),L("rewardVaultB"),ye(7),y("totalRewardB"),oe("perShareRewardB"),y("perSlotRewardB"),y("lastSlot"),L()]),dn=K([y(),y("state"),y("nonce"),y("validRewardTokenNum"),oe("rewardMultiplier"),y("rewardPeriodMax"),y("rewardPeriodMin"),y("rewardPeriodExtend"),L("lpMint"),L("lpVault"),F(un,5,"rewardInfos"),L("creator"),L(),F(y(),32,"padding")]),or=new Proxy(cn,{get(e,t,r){return t==="decode"?(...n)=>{let i=e.decode(...n);return Z(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(ln,{get(e,t,r){return t==="decode"?(...n)=>{let i=e.decode(...n);return Z(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(dn,{get(e,t,r){return t==="decode"?(...n)=>{let i=e.decode(...n);return Z(q({},i),{version:6,rewardInfos:i.rewardInfos.map(o=>{var s;return Z(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)}}),fn=K([y("isSet"),y("rewardPerSecond"),y("rewardOpenTime"),y("rewardEndTime"),y("rewardType")]),pt=K([N("instruction"),y("nonce"),F(fn,5,"rewardTimeInfo")]),mt=K([N("instruction"),y("rewardReopenTime"),y("rewardEndTime"),y("rewardPerSecond")]),gt=K([N("instruction"),y("isSet"),y("rewardPerSecond"),y("rewardOpenTime"),y("rewardEndTime"),y("rewardType")]),Es=K([y("state"),L("id"),L("owner"),y("deposited"),F(y(),1,"rewardDebts")]),Ve=K([y("state"),L("id"),L("owner"),y("deposited"),F(oe(),1,"rewardDebts"),y(""),y("voteLockedBalance"),F(y(),15)]),Fs=K([y("state"),L("id"),L("owner"),y("deposited"),F(y(),2,"rewardDebts")]),ur=K([y("state"),L("id"),L("owner"),y("deposited"),F(oe(),2,"rewardDebts"),F(y(),17)]),cr=K([y(),y("state"),L("id"),L("owner"),y("deposited"),F(oe(),5,"rewardDebts"),F(y(),16)]),Y=K([N("instruction"),y("amount")]),pn=K([L("mint"),L("grantAuthority"),y("baselineVoteWeightScaledFactor"),y("maxExtraLockupVoteWeightScaledFactor"),y("lockupSaturationSecs"),Zt("digitShift"),F(N(),7,"reserved1"),F(y(),7,"reserved2")]),lr=K([ye(8),L("governanceProgramId"),L("realm"),L("realmGoverningTokenMint"),L("realmAuthority"),F(N(),32,"reserved1"),F(pn,4,"votingMints"),Ge("timeOffset"),N("bump"),F(N(),7,"reserved2"),F(y(),11,"reserved3")]),mn=K([Ge("startTime"),Ge("endTime"),N("kind"),F(N(),15,"reserved")]),gn=K([F(mn,1,"lockup"),y("amountDeposited_native"),y("amountInitiallyLockedNative"),ve("isUsed"),ve("allowClawback"),N("votingMintConfigIdx"),F(N(),29,"reserved")]),dr=K([ye(8),L("voterAuthority"),L("registrar"),F(gn,32,"deposits"),N("voterBump"),N("voterWweightRecordBump"),F(N(),94,"reserved")]);import J from"bn.js";import{PublicKey as yn}from"@solana/web3.js";import{MINT_SIZE as js,TOKEN_PROGRAM_ID as zs,getTransferFeeConfig as Ys,unpackMint as Zs}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 yn(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)=>Z(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,S=!0,Ze="[DecimalError] ",pe=Ze+"Invalid argument: ",hr=Ze+"Precision limit exceeded",wr=Ze+"crypto unavailable",Tr="[object Decimal]",j=Math.floor,O=Math.pow,bn=/^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i,hn=/^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i,wn=/^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i,Pr=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,re=1e7,T=7,Tn=9007199254740991,Pn=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=xn(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(S=!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 S=!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,S=!1,r=r.times(r).minus(1).sqrt().plus(r),S=!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,S=!1,r=r.times(r).plus(1).sqrt().plus(r),S=!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(S=!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)),S=!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(S=!1,a=d+m,s=fe(u,a),n=t?Ye(l,a+10):fe(e,a),c=V(s,n,a,1),Me(c.d,i=d,f))do if(a+=10,s=fe(u,a),n=t?Ye(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(Me(c.d,i+=10,f));return S=!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 S?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),S?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):(S=!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),S=!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)),S?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),S?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=kn(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(S=!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 S=!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),S?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(S=!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,S=!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]?(S=!1,r=V(r,e,0,t,1).times(e),S=!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)<=Tn)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):(S=!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),Me(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,S=!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 Me(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 xn(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,M,R,D,le,z,ge,Ne,Pe,xe,$,Se,Ue=n.constructor,st=n.s==i.s?1:-1,H=n.d,E=i.d;if(!H||!H[0]||!E||!E[0])return new Ue(!n.s||!i.s||(H?E&&H[0]==E[0]:!E)?NaN:H&&H[0]==0||!E?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)),$=E.length,Pe=H.length,A=new Ue(st),M=A.d=[],d=0;E[d]==(H[d]||0);d++);if(E[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)M.push(1),h=!0;else{if(z=z/m+2|0,d=0,$==1){for(f=0,E=E[0],z++;(d<Pe||f)&&z--;d++)ge=f*c+(H[d]||0),M[d]=ge/E|0,f=ge%E|0;h=f||d<Pe}else{for(f=c/(E[0]+1)|0,f>1&&(E=e(E,f,c),H=e(H,f,c),$=E.length,Pe=H.length),Ne=$,R=H.slice(0,$),D=R.length;D<$;)R[D++]=0;Se=E.slice(),Se.unshift(0),xe=E[0],E[1]>=c/2&&++xe;do f=0,u=t(E,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(E,f,c),x=b.length,D=R.length,u=t(b,R,x,D),u==1&&(f--,r(b,$<x?Se:E,x,c))):(f==0&&(u=f=1),b=E.slice()),x=b.length,x<D&&b.unshift(0),r(R,b,D,c),u==-1&&(D=R.length,u=t(E,R,$,D),u<1&&(f++,r(R,$<D?Se:E,D,c))),D=R.length):u===0&&(f++,R=[0]),M[d++]=f,u&&R[0]?R[D++]=H[Ne]||0:(R=[H[Ne]],D=1);while((Ne++<Pe||R[0]!==void 0)&&z--);h=R[0]!==void 0}M[0]||M.shift()}if(m==1)A.e=l,br=h;else{for(d=1,f=M[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 S&&(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 Ye(e,t,r){if(t>Pn)throw S=!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(S=!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 S=!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?(S=!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&&Me(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,S=!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,M=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?(S=!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=Ye(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,M,S=!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(Ye(A,l+2,R).times(o+""))),c=V(c,new A(m),l,1),t==null)if(Me(c.d,l-h,M,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,M,S=!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),S&&(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 Sn(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(hn.test(t))r=16,t=t.toLowerCase();else if(bn.test(t))r=2;else if(wn.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,S=!1,s&&(e=V(e,i,a*4)),c&&(e=e.times(Math.abs(c)<54?O(2,c):Qe.pow(2,c))),S=!0,e)}function kn(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(S=!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 S=!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 An(e){return new this(e).abs()}function Ln(e){return new this(e).acos()}function In(e){return new this(e).acosh()}function Bn(e,t){return new this(e).plus(t)}function Rn(e){return new this(e).asin()}function Cn(e){return new this(e).asinh()}function Kn(e){return new this(e).atan()}function Nn(e){return new this(e).atanh()}function vn(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 Vn(e){return new this(e).cbrt()}function Mn(e){return w(e=new this(e),e.e+1,2)}function En(e,t,r){return new this(e).clamp(t,r)}function Fn(e){if(!e||typeof e!="object")throw Error(Ze+"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 _n(e){return new this(e).cos()}function Dn(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,S?!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++;S?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):Sn(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=Fn,i.clone=Ir,i.isDecimal=yr,i.abs=An,i.acos=Ln,i.acosh=In,i.add=Bn,i.asin=Rn,i.asinh=Cn,i.atan=Kn,i.atanh=Nn,i.atan2=vn,i.cbrt=Vn,i.ceil=Mn,i.clamp=En,i.cos=_n,i.cosh=Dn,i.div=Wn,i.exp=On,i.floor=Un,i.hypot=qn,i.ln=Gn,i.log=Hn,i.log10=zn,i.log2=jn,i.max=Yn,i.min=Zn,i.mod=Xn,i.mul=Jn,i.pow=Qn,i.random=$n,i.round=ei,i.sign=ti,i.sin=ri,i.sinh=ni,i.sqrt=ii,i.sub=oi,i.sum=si,i.tan=ai,i.tanh=ui,i.trunc=ci,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 Wn(e,t){return new this(e).div(t)}function On(e){return new this(e).exp()}function Un(e){return w(e=new this(e),e.e+1,3)}function qn(){var e,t,r=new this(0);for(S=!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 S=!0,new this(1/0);r=t}return S=!0,r.sqrt()}function yr(e){return e instanceof Qe||e&&e.toStringTag===Tr||!1}function Gn(e){return new this(e).ln()}function Hn(e,t){return new this(e).log(t)}function jn(e){return new this(e).log(2)}function zn(e){return new this(e).log(10)}function Yn(){return kr(this,arguments,"lt")}function Zn(){return kr(this,arguments,"gt")}function Xn(e,t){return new this(e).mod(t)}function Jn(e,t){return new this(e).mul(t)}function Qn(e,t){return new this(e).pow(t)}function $n(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 ei(e){return w(e=new this(e),e.e+1,this.rounding)}function ti(e){return e=new this(e),e.d?e.d[0]?e.s:0*e.s:e.s||NaN}function ri(e){return new this(e).sin()}function ni(e){return new this(e).sinh()}function ii(e){return new this(e).sqrt()}function oi(e,t){return new this(e).sub(t)}function si(){var e=0,t=arguments,r=new this(t[e]);for(S=!1;r.s&&++e<t.length;)r=r.plus(t[e]);return S=!0,w(r,this.precision,this.rounding)}function ai(e){return new this(e).tan()}function ui(e){return new this(e).tanh()}function ci(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 Qe=g.constructor=Ir(Tt);je=new Qe(je);ze=new Qe(ze);import bi from"big.js";import tt from"bn.js";import li from"toformat";var di=li,Ee=di;import et from"big.js";import pi from"bn.js";import mi from"decimal.js-light";import Fe from"bn.js";var Br=9007199254740991;function C(e){let t=W("Raydium_parseBigNumberish");if(e instanceof Fe)return e;if(typeof e=="string"){if(e.match(/^-?[0-9]+$/))return new Fe(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 Fe(String(e))):typeof e=="bigint"?new Fe(e.toString()):(t.error(`invalid BigNumberish value: ${e}`),new Fe(0))}var $e=W("module/fraction"),At=Ee(et),_e=Ee(mi),gi={[0]:_e.ROUND_DOWN,[1]:_e.ROUND_HALF_UP,[2]:_e.ROUND_UP},yi={[0]:et.roundDown,[1]:et.roundHalfUp,[2]:et.roundUp},v=class{constructor(t,r=new pi(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:gi[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=yi[n]||1,new At(this.numerator.toString()).div(this.denominator.toString()).toFormat(t,r)}isZero(){return this.numerator.isZero()}};var hi=W("Raydium_amount"),Rr=Ee(bi);function wi(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")):hi.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]=wi(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 Ti}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as Cr}from"@solana/spl-token";var Kr={chainId:101,address:Ti.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 Nr,SYSVAR_RENT_PUBKEY as Pi}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as xi}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:xi,isWritable:!1}),p({pubkey:Nr.programId,isWritable:!1}),p({pubkey:Pi,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 Ra=new _("MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"),Ca=new _("MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"),Rt=new _("SysvarRent111111111111111111111111111111111"),Ka=new _("SysvarC1ock11111111111111111111111111111111"),Na=new _("metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),rt=new _("Sysvar1nstructions1111111111111111111111111"),va=Nr.programId,Va=new _("4k3Dyjzvzp8eMZWUXbBCjEvwSkkk59S5iCNLY3QrkX6R"),Ma=new _("Ea5SjE2Y6yvCeW5dYTn7PYMuW5ikXkvbGdcmSnXeaLjS"),Ea=new _("SRMuApVNdxXokk5GT7XD5cUUgXMBCoAz2LHeuAoKWRt"),Fa=new _("EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"),_a=new _("Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB"),Da=new _("mSoLzYCxHdYgdzU16g5QSh3i5K3z3KZK7ytfqcJm7So"),Wa=new _("7dHbWXmci3dT8UFYWYZweBLXgycu7Y3iL6trKn1Y7ARj"),Oa=new _("