@raydium-io/raydium-sdk-v2 0.0.30-alpha → 0.0.32-alpha
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/api/api.d.ts +1 -1
- package/lib/api/index.d.ts +1 -1
- package/lib/api/type.d.ts +1 -1
- package/lib/common/accountInfo.d.ts +1 -1
- package/lib/common/bignumber.d.ts +1 -1
- package/lib/common/fractionUtil.d.ts +1 -1
- package/lib/common/index.d.ts +1 -1
- package/lib/common/transfer.d.ts +1 -1
- package/lib/common/txTool/txTool.d.ts +1 -1
- package/lib/common/txTool/txUtils.d.ts +1 -1
- package/lib/common/utility.d.ts +1 -1
- package/lib/index.d.ts +3 -3
- package/lib/index.js +1 -1
- package/lib/index.js.map +1 -1
- package/lib/index.mjs +1 -1
- package/lib/index.mjs.map +1 -1
- package/lib/module/amount.d.ts +1 -1
- package/lib/module/fraction.d.ts +1 -1
- package/lib/module/index.d.ts +1 -1
- package/lib/module/percent.d.ts +1 -1
- package/lib/module/price.d.ts +1 -1
- package/lib/raydium/account/account.d.ts +3 -3
- package/lib/raydium/account/index.d.ts +1 -1
- package/lib/raydium/account/instruction.d.ts +1 -1
- package/lib/raydium/account/types.d.ts +1 -1
- package/lib/raydium/account/util.d.ts +1 -1
- package/lib/raydium/clmm/clmm.d.ts +3 -3
- package/lib/raydium/clmm/index.d.ts +3 -3
- package/lib/raydium/clmm/instrument.d.ts +2 -2
- package/lib/raydium/clmm/layout.d.ts +6 -6
- package/lib/raydium/clmm/type.d.ts +2 -2
- package/lib/raydium/clmm/utils/math.d.ts +2 -2
- package/lib/raydium/clmm/utils/pool.d.ts +2 -2
- package/lib/raydium/clmm/utils/position.d.ts +2 -2
- package/lib/raydium/clmm/utils/tick.d.ts +2 -2
- package/lib/raydium/clmm/utils/tickQuery.d.ts +2 -2
- package/lib/raydium/clmm/utils/tickarrayBitmap.d.ts +2 -2
- package/lib/raydium/cpmm/cpmm.d.ts +4 -4
- package/lib/raydium/cpmm/cpmm.js +1 -1
- package/lib/raydium/cpmm/cpmm.js.map +1 -1
- package/lib/raydium/cpmm/cpmm.mjs +1 -1
- package/lib/raydium/cpmm/cpmm.mjs.map +1 -1
- package/lib/raydium/cpmm/index.d.ts +1 -1
- package/lib/raydium/cpmm/index.js +1 -1
- package/lib/raydium/cpmm/index.js.map +1 -1
- package/lib/raydium/cpmm/index.mjs +1 -1
- package/lib/raydium/cpmm/index.mjs.map +1 -1
- package/lib/raydium/cpmm/instruction.js +1 -1
- package/lib/raydium/cpmm/instruction.js.map +1 -1
- package/lib/raydium/cpmm/instruction.mjs +1 -1
- package/lib/raydium/cpmm/instruction.mjs.map +1 -1
- package/lib/raydium/cpmm/layout.d.ts +1 -1
- package/lib/raydium/cpmm/type.d.ts +9 -2
- package/lib/raydium/cpmm/type.js +1 -1
- package/lib/raydium/cpmm/type.js.map +1 -1
- package/lib/raydium/farm/config.d.ts +1 -1
- package/lib/raydium/farm/farm.d.ts +3 -3
- package/lib/raydium/farm/index.d.ts +1 -1
- package/lib/raydium/farm/instruction.d.ts +1 -1
- package/lib/raydium/farm/layout.d.ts +1 -1
- package/lib/raydium/farm/type.d.ts +1 -1
- package/lib/raydium/farm/util.d.ts +1 -1
- package/lib/raydium/ido/ido.d.ts +3 -3
- package/lib/raydium/ido/index.d.ts +3 -3
- package/lib/raydium/ido/instruction.d.ts +1 -1
- package/lib/raydium/ido/type.d.ts +1 -1
- package/lib/raydium/index.d.ts +3 -3
- package/lib/raydium/index.js +1 -1
- package/lib/raydium/index.js.map +1 -1
- package/lib/raydium/index.mjs +1 -1
- package/lib/raydium/index.mjs.map +1 -1
- package/lib/raydium/liquidity/index.d.ts +1 -1
- package/lib/raydium/liquidity/instruction.d.ts +1 -1
- package/lib/raydium/liquidity/layout.d.ts +2 -2
- package/lib/raydium/liquidity/liquidity.d.ts +3 -3
- package/lib/raydium/liquidity/type.d.ts +1 -1
- package/lib/raydium/liquidity/utils.d.ts +1 -1
- package/lib/raydium/marketV2/createMarket.d.ts +3 -3
- package/lib/raydium/marketV2/index.d.ts +3 -3
- package/lib/raydium/moduleBase.d.ts +3 -3
- package/lib/raydium/raydium.d.ts +3 -3
- package/lib/raydium/raydium.js +1 -1
- package/lib/raydium/raydium.js.map +1 -1
- package/lib/raydium/raydium.mjs +1 -1
- package/lib/raydium/raydium.mjs.map +1 -1
- package/lib/raydium/token/constant.d.ts +1 -1
- package/lib/raydium/token/index.d.ts +1 -1
- package/lib/raydium/token/token.d.ts +3 -3
- package/lib/raydium/token/type.d.ts +1 -1
- package/lib/raydium/token/utils.d.ts +1 -1
- package/lib/raydium/tradeV2/index.d.ts +2 -2
- package/lib/raydium/tradeV2/instrument.d.ts +2 -2
- package/lib/raydium/tradeV2/trade.d.ts +3 -3
- package/lib/raydium/tradeV2/type.d.ts +2 -2
- package/lib/raydium/type.d.ts +1 -1
- package/lib/raydium/utils1216/index.d.ts +3 -3
- package/lib/raydium/utils1216/utils1216.d.ts +3 -3
- package/lib/{raydium-d75706f4.d.ts → raydium-03e9d402.d.ts} +7 -6
- package/lib/{type-83523f5f.d.ts → type-322fdce2.d.ts} +8 -8
- package/lib/{type-6fd96950.d.ts → type-5c2ec3f0.d.ts} +1 -1
- package/package.json +1 -1
- package/src/raydium/cpmm/cpmm.ts +70 -19
- package/src/raydium/cpmm/instruction.ts +1 -1
- package/src/raydium/cpmm/type.ts +9 -2
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var Xt=Object.defineProperty,Jt=Object.defineProperties;var Qt=Object.getOwnPropertyDescriptors;var rt=Object.getOwnPropertySymbols;var $t=Object.prototype.hasOwnProperty,en=Object.prototype.propertyIsEnumerable;var it=(e,t,n)=>t in e?Xt(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,ee=(e,t)=>{for(var n in t||(t={}))$t.call(t,n)&&it(e,n,t[n]);if(rt)for(var n of rt(t))en.call(t,n)&&it(e,n,t[n]);return e},ie=(e,t)=>Jt(e,Qt(t));import{PublicKey as cn}from"@solana/web3.js";import lt,{isBN as ft}from"bn.js";import{bits as qr,BitStructure as Gr,blob as tn,Blob as Hr,cstr as zr,f32 as jr,f32be as Zr,f64 as Yr,f64be as Xr,greedy as Jr,Layout as nn,ns64 as Qr,ns64be as $r,nu64 as ei,nu64be as ti,offset as ni,s16 as ri,s16be as ii,s24 as oi,s24be as si,s32 as ai,s32be as ui,s40 as ci,s40be as li,s48 as fi,s48be as pi,s8 as mi,seq as rn,struct as di,Structure as on,u16 as sn,u16be as gi,u24 as hi,u24be as bi,u32 as yi,u32be as wi,u40 as Pi,u40be as Ti,u48 as xi,u48be as Bi,u8 as an,UInt as un,union as Si,Union as Ai,unionLayoutDiscriminator as ki,utf8 as Ni}from"@solana/buffer-layout";var We=nn,ot=on;var st=un;var at=an,ut=sn;var ct=rn;var oe=tn;var Oe=class extends We{constructor(n,r,i){super(n,i);this.blob=oe(n),this.signed=r}decode(n,r=0){let i=new lt(this.blob.decode(n,r),10,"le");return this.signed?i.fromTwos(this.span*8).clone():i}encode(n,r,i=0){return typeof n=="number"&&(n=new lt(n)),this.signed&&(n=n.toTwos(this.span*8)),this.blob.encode(n.toArrayLike(Buffer,"le",this.span),r,i)}};function te(e){return new st(1,e)}function A(e){return new Oe(8,!1,e)}var Te=class extends We{constructor(n,r,i,o){super(n.span,o);this.layout=n,this.decoder=r,this.encoder=i}decode(n,r){return this.decoder(this.layout.decode(n,r))}encode(n,r,i){return this.layout.encode(this.encoder(n),r,i)}getSpan(n,r){return this.layout.getSpan(n,r)}};function O(e){return new Te(oe(32),t=>new cn(t),t=>t.toBuffer(),e)}function pt(e){return new Te(at(),ln,fn,e)}function ln(e){if(e===0)return!1;if(e===1)return!0;throw new Error("Invalid bool: "+e)}function fn(e){return e?1:0}var Ve=class extends ot{decode(t,n){return super.decode(t,n)}};function z(e,t,n){return new Ve(e,t,n)}function Ue(e,t,n){let r,i=typeof t=="number"?t:ft(t)?t.toNumber():new Proxy(t,{get(o,s){if(!r){let a=Reflect.get(o,"count");r=ft(a)?a.toNumber():a,Reflect.set(o,"count",r)}return Reflect.get(o,s)},set(o,s,a){return s==="count"&&(r=a),Reflect.set(o,s,a)}});return ct(e,i,n)}var Vi=z([oe(8),te("bump"),pt("disableCreatePool"),ut("index"),A("tradeFeeRate"),A("protocolFeeRate"),A("fundFeeRate"),A("createPoolFee"),O("protocolOwner"),O("fundOwner"),Ue(A(),16)]),Ui=z([oe(8),O("configId"),O("poolCreator"),O("vaultA"),O("vaultB"),O("mintLp"),O("mintA"),O("mintB"),O("mintProgramA"),O("mintProgramB"),O("observationId"),te("bump"),te("status"),te("lpDecimals"),te("mintDecimalA"),te("mintDecimalB"),A("lpAmount"),A("protocolFeesMintA"),A("protocolFeesMintB"),A("fundFeesMintA"),A("fundFeesMintB"),A("openTime"),Ue(A(),32)]);import{TransactionInstruction as ge}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as tt,TOKEN_2022_PROGRAM_ID as Gt,ASSOCIATED_TOKEN_PROGRAM_ID as Ar}from"@solana/spl-token";import{get as mt,set as pn}from"lodash";import gt from"dayjs";import mn from"dayjs/plugin/utc";gt.extend(mn);var qe=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 gt().utc().format("YYYY/MM/DD HH:mm:ss UTC")}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 n=t.map(r=>typeof r=="object"?JSON.stringify(r):r).join(", ");throw new Error(n)}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}},dt={},dn={};function F(e){let t=mt(dt,e);if(!t){let n=mt(dn,e);t=new qe({name:e,logLevel:n}),pn(dt,e,t)}return t}import{PublicKey as zs}from"@solana/web3.js";import Zs from"bn.js";import Tr from"big.js";import ks from"bn.js";import W from"bn.js";var se=9e15,J=1e9,Ge="0123456789abcdef",Be="2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058",Se="3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789",He={precision:20,rounding:4,modulo:1,toExpNeg:-7,toExpPos:21,minE:-se,maxE:se,crypto:!1},wt,j,y=!0,ke="[DecimalError] ",X=ke+"Invalid argument: ",Pt=ke+"Precision limit exceeded",Tt=ke+"crypto unavailable",xt="[object Decimal]",_=Math.floor,M=Math.pow,gn=/^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i,hn=/^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i,bn=/^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i,Bt=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,G=1e7,b=7,yn=9007199254740991,wn=Be.length-1,ze=Se.length-1,m={toStringTag:xt};m.absoluteValue=m.abs=function(){var e=new this.constructor(this);return e.s<0&&(e.s=1),h(e)};m.ceil=function(){return h(new this.constructor(this),this.e+1,2)};m.clampedTo=m.clamp=function(e,t){var n,r=this,i=r.constructor;if(e=new i(e),t=new i(t),!e.s||!t.s)return new i(NaN);if(e.gt(t))throw Error(X+t);return n=r.cmp(e),n<0?e:r.cmp(t)>0?t:new i(r)};m.comparedTo=m.cmp=function(e){var t,n,r,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(r=s.length,i=a.length,t=0,n=r<i?r:i;t<n;++t)if(s[t]!==a[t])return s[t]>a[t]^c<0?1:-1;return r===i?0:r>i^c<0?1:-1};m.cosine=m.cos=function(){var e,t,n=this,r=n.constructor;return n.d?n.d[0]?(e=r.precision,t=r.rounding,r.precision=e+Math.max(n.e,n.sd())+b,r.rounding=1,n=Pn(r,Ct(r,n)),r.precision=e,r.rounding=t,h(j==2||j==3?n.neg():n,e,t,!0)):new r(1):new r(NaN)};m.cubeRoot=m.cbrt=function(){var e,t,n,r,i,o,s,a,c,u,l=this,f=l.constructor;if(!l.isFinite()||l.isZero())return new f(l);for(y=!1,o=l.s*M(l.s*l,1/3),!o||Math.abs(o)==1/0?(n=D(l.d),e=l.e,(o=(e-n.length+1)%3)&&(n+=o==1||o==-2?"0":"00"),o=M(n,1/3),e=_((e+1)/3)-(e%3==(e<0?-1:2)),o==1/0?n="5e"+e:(n=o.toExponential(),n=n.slice(0,n.indexOf("e")+1)+e),r=new f(n),r.s=l.s):r=new f(o.toString()),s=(e=f.precision)+3;;)if(a=r,c=a.times(a).times(a),u=c.plus(l),r=k(u.plus(l).times(a),u.plus(c),s+2,1),D(a.d).slice(0,s)===(n=D(r.d)).slice(0,s))if(n=n.slice(s-3,s+1),n=="9999"||!i&&n=="4999"){if(!i&&(h(a,e+1,0),a.times(a).times(a).eq(l))){r=a;break}s+=4,i=1}else{(!+n||!+n.slice(1)&&n.charAt(0)=="5")&&(h(r,e+1,1),t=!r.times(r).times(r).eq(l));break}return y=!0,h(r,e,f.rounding,t)};m.decimalPlaces=m.dp=function(){var e,t=this.d,n=NaN;if(t){if(e=t.length-1,n=(e-_(this.e/b))*b,e=t[e],e)for(;e%10==0;e/=10)n--;n<0&&(n=0)}return n};m.dividedBy=m.div=function(e){return k(this,new this.constructor(e))};m.dividedToIntegerBy=m.divToInt=function(e){var t=this,n=t.constructor;return h(k(t,new n(e),0,1,1),n.precision,n.rounding)};m.equals=m.eq=function(e){return this.cmp(e)===0};m.floor=function(){return h(new this.constructor(this),this.e+1,3)};m.greaterThan=m.gt=function(e){return this.cmp(e)>0};m.greaterThanOrEqualTo=m.gte=function(e){var t=this.cmp(e);return t==1||t===0};m.hyperbolicCosine=m.cosh=function(){var e,t,n,r,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;n=s.precision,r=s.rounding,s.precision=n+Math.max(o.e,o.sd())+4,s.rounding=1,i=o.d.length,i<32?(e=Math.ceil(i/3),t=(1/Ce(4,e)).toString()):(e=16,t="2.3283064365386962890625e-10"),o=ae(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 h(o,s.precision=n,s.rounding=r,!0)};m.hyperbolicSine=m.sinh=function(){var e,t,n,r,i=this,o=i.constructor;if(!i.isFinite()||i.isZero())return new o(i);if(t=o.precision,n=o.rounding,o.precision=t+Math.max(i.e,i.sd())+4,o.rounding=1,r=i.d.length,r<3)i=ae(o,2,i,i,!0);else{e=1.4*Math.sqrt(r),e=e>16?16:e|0,i=i.times(1/Ce(5,e)),i=ae(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=n,h(i,t,n,!0)};m.hyperbolicTangent=m.tanh=function(){var e,t,n=this,r=n.constructor;return n.isFinite()?n.isZero()?new r(n):(e=r.precision,t=r.rounding,r.precision=e+7,r.rounding=1,k(n.sinh(),n.cosh(),r.precision=e,r.rounding=t)):new r(n.s)};m.inverseCosine=m.acos=function(){var e,t=this,n=t.constructor,r=t.abs().cmp(1),i=n.precision,o=n.rounding;return r!==-1?r===0?t.isNeg()?q(n,i,o):new n(0):new n(NaN):t.isZero()?q(n,i+4,o).times(.5):(n.precision=i+6,n.rounding=1,t=t.asin(),e=q(n,i+4,o).times(.5),n.precision=i,n.rounding=o,e.minus(t))};m.inverseHyperbolicCosine=m.acosh=function(){var e,t,n=this,r=n.constructor;return n.lte(1)?new r(n.eq(1)?0:NaN):n.isFinite()?(e=r.precision,t=r.rounding,r.precision=e+Math.max(Math.abs(n.e),n.sd())+4,r.rounding=1,y=!1,n=n.times(n).minus(1).sqrt().plus(n),y=!0,r.precision=e,r.rounding=t,n.ln()):new r(n)};m.inverseHyperbolicSine=m.asinh=function(){var e,t,n=this,r=n.constructor;return!n.isFinite()||n.isZero()?new r(n):(e=r.precision,t=r.rounding,r.precision=e+2*Math.max(Math.abs(n.e),n.sd())+6,r.rounding=1,y=!1,n=n.times(n).plus(1).sqrt().plus(n),y=!0,r.precision=e,r.rounding=t,n.ln())};m.inverseHyperbolicTangent=m.atanh=function(){var e,t,n,r,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,r=i.sd(),Math.max(r,e)<2*-i.e-1?h(new o(i),e,t,!0):(o.precision=n=r-i.e,i=k(i.plus(1),new o(1).minus(i),n+e,1),o.precision=e+4,o.rounding=1,i=i.ln(),o.precision=e,o.rounding=t,i.times(.5))):new o(NaN)};m.inverseSine=m.asin=function(){var e,t,n,r,i=this,o=i.constructor;return i.isZero()?new o(i):(t=i.abs().cmp(1),n=o.precision,r=o.rounding,t!==-1?t===0?(e=q(o,n+4,r).times(.5),e.s=i.s,e):new o(NaN):(o.precision=n+6,o.rounding=1,i=i.div(new o(1).minus(i.times(i)).sqrt().plus(1)).atan(),o.precision=n,o.rounding=r,i.times(2)))};m.inverseTangent=m.atan=function(){var e,t,n,r,i,o,s,a,c,u=this,l=u.constructor,f=l.precision,p=l.rounding;if(u.isFinite()){if(u.isZero())return new l(u);if(u.abs().eq(1)&&f+4<=ze)return s=q(l,f+4,p).times(.25),s.s=u.s,s}else{if(!u.s)return new l(NaN);if(f+4<=ze)return s=q(l,f+4,p).times(.5),s.s=u.s,s}for(l.precision=a=f+10,l.rounding=1,n=Math.min(28,a/b+2|0),e=n;e;--e)u=u.div(u.times(u).plus(1).sqrt().plus(1));for(y=!1,t=Math.ceil(a/b),r=1,c=u.times(u),s=new l(u),i=u;e!==-1;)if(i=i.times(c),o=s.minus(i.div(r+=2)),i=i.times(c),s=o.plus(i.div(r+=2)),s.d[t]!==void 0)for(e=t;s.d[e]===o.d[e]&&e--;);return n&&(s=s.times(2<<n-1)),y=!0,h(s,l.precision=f,l.rounding=p,!0)};m.isFinite=function(){return!!this.d};m.isInteger=m.isInt=function(){return!!this.d&&_(this.e/b)>this.d.length-2};m.isNaN=function(){return!this.s};m.isNegative=m.isNeg=function(){return this.s<0};m.isPositive=m.isPos=function(){return this.s>0};m.isZero=function(){return!!this.d&&this.d[0]===0};m.lessThan=m.lt=function(e){return this.cmp(e)<0};m.lessThanOrEqualTo=m.lte=function(e){return this.cmp(e)<1};m.logarithm=m.log=function(e){var t,n,r,i,o,s,a,c,u=this,l=u.constructor,f=l.precision,p=l.rounding,d=5;if(e==null)e=new l(10),t=!0;else{if(e=new l(e),n=e.d,e.s<0||!n||!n[0]||e.eq(1))return new l(NaN);t=e.eq(10)}if(n=u.d,u.s<0||!n||!n[0]||u.eq(1))return new l(n&&!n[0]?-1/0:u.s!=1?NaN:n?0:1/0);if(t)if(n.length>1)o=!0;else{for(i=n[0];i%10===0;)i/=10;o=i!==1}if(y=!1,a=f+d,s=Y(u,a),r=t?Ae(l,a+10):Y(e,a),c=k(s,r,a,1),fe(c.d,i=f,p))do if(a+=10,s=Y(u,a),r=t?Ae(l,a+10):Y(e,a),c=k(s,r,a,1),!o){+D(c.d).slice(i+1,i+15)+1==1e14&&(c=h(c,f+1,0));break}while(fe(c.d,i+=10,p));return y=!0,h(c,f,p)};m.minus=m.sub=function(e){var t,n,r,i,o,s,a,c,u,l,f,p,d=this,w=d.constructor;if(e=new w(e),!d.d||!e.d)return!d.s||!e.s?e=new w(NaN):d.d?e.s=-e.s:e=new w(e.d||d.s!==e.s?d:NaN),e;if(d.s!=e.s)return e.s=-e.s,d.plus(e);if(u=d.d,p=e.d,a=w.precision,c=w.rounding,!u[0]||!p[0]){if(p[0])e.s=-e.s;else if(u[0])e=new w(d);else return new w(c===3?-0:0);return y?h(e,a,c):e}if(n=_(e.e/b),l=_(d.e/b),u=u.slice(),o=l-n,o){for(f=o<0,f?(t=u,o=-o,s=p.length):(t=p,n=l,s=u.length),r=Math.max(Math.ceil(a/b),s)+2,o>r&&(o=r,t.length=1),t.reverse(),r=o;r--;)t.push(0);t.reverse()}else{for(r=u.length,s=p.length,f=r<s,f&&(s=r),r=0;r<s;r++)if(u[r]!=p[r]){f=u[r]<p[r];break}o=0}for(f&&(t=u,u=p,p=t,e.s=-e.s),s=u.length,r=p.length-s;r>0;--r)u[s++]=0;for(r=p.length;r>o;){if(u[--r]<p[r]){for(i=r;i&&u[--i]===0;)u[i]=G-1;--u[i],u[r]+=G}u[r]-=p[r]}for(;u[--s]===0;)u.pop();for(;u[0]===0;u.shift())--n;return u[0]?(e.d=u,e.e=Ne(u,n),y?h(e,a,c):e):new w(c===3?-0:0)};m.modulo=m.mod=function(e){var t,n=this,r=n.constructor;return e=new r(e),!n.d||!e.s||e.d&&!e.d[0]?new r(NaN):!e.d||n.d&&!n.d[0]?h(new r(n),r.precision,r.rounding):(y=!1,r.modulo==9?(t=k(n,e.abs(),0,3,1),t.s*=e.s):t=k(n,e,0,r.modulo,1),t=t.times(e),y=!0,n.minus(t))};m.naturalExponential=m.exp=function(){return je(this)};m.naturalLogarithm=m.ln=function(){return Y(this)};m.negated=m.neg=function(){var e=new this.constructor(this);return e.s=-e.s,h(e)};m.plus=m.add=function(e){var t,n,r,i,o,s,a,c,u,l,f=this,p=f.constructor;if(e=new p(e),!f.d||!e.d)return!f.s||!e.s?e=new p(NaN):f.d||(e=new p(e.d||f.s===e.s?f:NaN)),e;if(f.s!=e.s)return e.s=-e.s,f.minus(e);if(u=f.d,l=e.d,a=p.precision,c=p.rounding,!u[0]||!l[0])return l[0]||(e=new p(f)),y?h(e,a,c):e;if(o=_(f.e/b),r=_(e.e/b),u=u.slice(),i=o-r,i){for(i<0?(n=u,i=-i,s=l.length):(n=l,r=o,s=u.length),o=Math.ceil(a/b),s=o>s?o+1:s+1,i>s&&(i=s,n.length=1),n.reverse();i--;)n.push(0);n.reverse()}for(s=u.length,i=l.length,s-i<0&&(i=s,n=l,l=u,u=n),t=0;i;)t=(u[--i]=u[i]+l[i]+t)/G|0,u[i]%=G;for(t&&(u.unshift(t),++r),s=u.length;u[--s]==0;)u.pop();return e.d=u,e.e=Ne(u,r),y?h(e,a,c):e};m.precision=m.sd=function(e){var t,n=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(X+e);return n.d?(t=St(n.d),e&&n.e+1>t&&(t=n.e+1)):t=NaN,t};m.round=function(){var e=this,t=e.constructor;return h(new t(e),e.e+1,t.rounding)};m.sine=m.sin=function(){var e,t,n=this,r=n.constructor;return n.isFinite()?n.isZero()?new r(n):(e=r.precision,t=r.rounding,r.precision=e+Math.max(n.e,n.sd())+b,r.rounding=1,n=xn(r,Ct(r,n)),r.precision=e,r.rounding=t,h(j>2?n.neg():n,e,t,!0)):new r(NaN)};m.squareRoot=m.sqrt=function(){var e,t,n,r,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(y=!1,u=Math.sqrt(+s),u==0||u==1/0?(t=D(a),(t.length+c)%2==0&&(t+="0"),u=Math.sqrt(t),c=_((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),r=new l(t)):r=new l(u.toString()),n=(c=l.precision)+3;;)if(o=r,r=o.plus(k(s,o,n+2,1)).times(.5),D(o.d).slice(0,n)===(t=D(r.d)).slice(0,n))if(t=t.slice(n-3,n+1),t=="9999"||!i&&t=="4999"){if(!i&&(h(o,c+1,0),o.times(o).eq(s))){r=o;break}n+=4,i=1}else{(!+t||!+t.slice(1)&&t.charAt(0)=="5")&&(h(r,c+1,1),e=!r.times(r).eq(s));break}return y=!0,h(r,c,l.rounding,e)};m.tangent=m.tan=function(){var e,t,n=this,r=n.constructor;return n.isFinite()?n.isZero()?new r(n):(e=r.precision,t=r.rounding,r.precision=e+10,r.rounding=1,n=n.sin(),n.s=1,n=k(n,new r(1).minus(n.times(n)).sqrt(),e+10,0),r.precision=e,r.rounding=t,h(j==2||j==4?n.neg():n,e,t,!0)):new r(NaN)};m.times=m.mul=function(e){var t,n,r,i,o,s,a,c,u,l=this,f=l.constructor,p=l.d,d=(e=new f(e)).d;if(e.s*=l.s,!p||!p[0]||!d||!d[0])return new f(!e.s||p&&!p[0]&&!d||d&&!d[0]&&!p?NaN:!p||!d?e.s/0:e.s*0);for(n=_(l.e/b)+_(e.e/b),c=p.length,u=d.length,c<u&&(o=p,p=d,d=o,s=c,c=u,u=s),o=[],s=c+u,r=s;r--;)o.push(0);for(r=u;--r>=0;){for(t=0,i=c+r;i>r;)a=o[i]+d[r]*p[i-r-1]+t,o[i--]=a%G|0,t=a/G|0;o[i]=(o[i]+t)%G|0}for(;!o[--s];)o.pop();return t?++n:o.shift(),e.d=o,e.e=Ne(o,n),y?h(e,f.precision,f.rounding):e};m.toBinary=function(e,t){return Ye(this,2,e,t)};m.toDecimalPlaces=m.toDP=function(e,t){var n=this,r=n.constructor;return n=new r(n),e===void 0?n:(v(e,0,J),t===void 0?t=r.rounding:v(t,0,8),h(n,e+n.e+1,t))};m.toExponential=function(e,t){var n,r=this,i=r.constructor;return e===void 0?n=H(r,!0):(v(e,0,J),t===void 0?t=i.rounding:v(t,0,8),r=h(new i(r),e+1,t),n=H(r,!0,e+1)),r.isNeg()&&!r.isZero()?"-"+n:n};m.toFixed=function(e,t){var n,r,i=this,o=i.constructor;return e===void 0?n=H(i):(v(e,0,J),t===void 0?t=o.rounding:v(t,0,8),r=h(new o(i),e+i.e+1,t),n=H(r,!1,e+r.e+1)),i.isNeg()&&!i.isZero()?"-"+n:n};m.toFraction=function(e){var t,n,r,i,o,s,a,c,u,l,f,p,d=this,w=d.d,g=d.constructor;if(!w)return new g(d);if(u=n=new g(1),r=c=new g(0),t=new g(r),o=t.e=St(w)-d.e-1,s=o%b,t.d[0]=M(10,s<0?b+s:s),e==null)e=o>0?t:u;else{if(a=new g(e),!a.isInt()||a.lt(u))throw Error(X+a);e=a.gt(t)?o>0?t:u:a}for(y=!1,a=new g(D(w)),l=g.precision,g.precision=o=w.length*b*2;f=k(a,t,0,1,1),i=n.plus(f.times(r)),i.cmp(e)!=1;)n=r,r=i,i=u,u=c.plus(f.times(i)),c=i,i=t,t=a.minus(f.times(i)),a=i;return i=k(e.minus(n),r,0,1,1),c=c.plus(i.times(u)),n=n.plus(i.times(r)),c.s=u.s=d.s,p=k(u,r,o,1).minus(d).abs().cmp(k(c,n,o,1).minus(d).abs())<1?[u,r]:[c,n],g.precision=l,y=!0,p};m.toHexadecimal=m.toHex=function(e,t){return Ye(this,16,e,t)};m.toNearest=function(e,t){var n=this,r=n.constructor;if(n=new r(n),e==null){if(!n.d)return n;e=new r(1),t=r.rounding}else{if(e=new r(e),t===void 0?t=r.rounding:v(t,0,8),!n.d)return e.s?n:e;if(!e.d)return e.s&&(e.s=n.s),e}return e.d[0]?(y=!1,n=k(n,e,0,t,1).times(e),y=!0,h(n)):(e.s=n.s,n=e),n};m.toNumber=function(){return+this};m.toOctal=function(e,t){return Ye(this,8,e,t)};m.toPower=m.pow=function(e){var t,n,r,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(M(+a,u));if(a=new c(a),a.eq(1))return a;if(r=c.precision,o=c.rounding,e.eq(1))return h(a,r,o);if(t=_(e.e/b),t>=e.d.length-1&&(n=u<0?-u:u)<=yn)return i=At(c,a,n,r),e.s<0?new c(1).div(i):h(i,r,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 n=M(+a,u),t=n==0||!isFinite(n)?_(u*(Math.log("0."+D(a.d))/Math.LN10+a.e+1)):new c(n+"").e,t>c.maxE+1||t<c.minE-1?new c(t>0?s/0:0):(y=!1,c.rounding=a.s=1,n=Math.min(12,(t+"").length),i=je(e.times(Y(a,r+n)),r),i.d&&(i=h(i,r+5,1),fe(i.d,r,o)&&(t=r+10,i=h(je(e.times(Y(a,t+n)),t),t+5,1),+D(i.d).slice(r+1,r+15)+1==1e14&&(i=h(i,r+1,0)))),i.s=s,y=!0,c.rounding=o,h(i,r,o))};m.toPrecision=function(e,t){var n,r=this,i=r.constructor;return e===void 0?n=H(r,r.e<=i.toExpNeg||r.e>=i.toExpPos):(v(e,1,J),t===void 0?t=i.rounding:v(t,0,8),r=h(new i(r),e,t),n=H(r,e<=r.e||r.e<=i.toExpNeg,e)),r.isNeg()&&!r.isZero()?"-"+n:n};m.toSignificantDigits=m.toSD=function(e,t){var n=this,r=n.constructor;return e===void 0?(e=r.precision,t=r.rounding):(v(e,1,J),t===void 0?t=r.rounding:v(t,0,8)),h(new r(n),e,t)};m.toString=function(){var e=this,t=e.constructor,n=H(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()&&!e.isZero()?"-"+n:n};m.truncated=m.trunc=function(){return h(new this.constructor(this),this.e+1,1)};m.valueOf=m.toJSON=function(){var e=this,t=e.constructor,n=H(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()?"-"+n:n};function D(e){var t,n,r,i=e.length-1,o="",s=e[0];if(i>0){for(o+=s,t=1;t<i;t++)r=e[t]+"",n=b-r.length,n&&(o+=Z(n)),o+=r;s=e[t],r=s+"",n=b-r.length,n&&(o+=Z(n))}else if(s===0)return"0";for(;s%10===0;)s/=10;return o+s}function v(e,t,n){if(e!==~~e||e<t||e>n)throw Error(X+e)}function fe(e,t,n,r){var i,o,s,a;for(o=e[0];o>=10;o/=10)--t;return--t<0?(t+=b,i=0):(i=Math.ceil((t+1)/b),t%=b),o=M(10,b-t),a=e[i]%o|0,r==null?t<3?(t==0?a=a/100|0:t==1&&(a=a/10|0),s=n<4&&a==99999||n>3&&a==49999||a==5e4||a==0):s=(n<4&&a+1==o||n>3&&a+1==o/2)&&(e[i+1]/o/100|0)==M(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=(r||n<4)&&a==9999||!r&&n>3&&a==4999):s=((r||n<4)&&a+1==o||!r&&n>3&&a+1==o/2)&&(e[i+1]/o/1e3|0)==M(10,t-3)-1,s}function xe(e,t,n){for(var r,i=[0],o,s=0,a=e.length;s<a;){for(o=i.length;o--;)i[o]*=t;for(i[0]+=Ge.indexOf(e.charAt(s++)),r=0;r<i.length;r++)i[r]>n-1&&(i[r+1]===void 0&&(i[r+1]=0),i[r+1]+=i[r]/n|0,i[r]%=n)}return i.reverse()}function Pn(e,t){var n,r,i;if(t.isZero())return t;r=t.d.length,r<32?(n=Math.ceil(r/3),i=(1/Ce(4,n)).toString()):(n=16,i="2.3283064365386962890625e-10"),e.precision+=n,t=ae(e,1,t.times(i),new e(1));for(var o=n;o--;){var s=t.times(t);t=s.times(s).minus(s).times(8).plus(1)}return e.precision-=n,t}var k=function(){function e(r,i,o){var s,a=0,c=r.length;for(r=r.slice();c--;)s=r[c]*i+a,r[c]=s%o|0,a=s/o|0;return a&&r.unshift(a),r}function t(r,i,o,s){var a,c;if(o!=s)c=o>s?1:-1;else for(a=c=0;a<o;a++)if(r[a]!=i[a]){c=r[a]>i[a]?1:-1;break}return c}function n(r,i,o,s){for(var a=0;o--;)r[o]-=a,a=r[o]<i[o]?1:0,r[o]=a*s+r[o]-i[o];for(;!r[0]&&r.length>1;)r.shift()}return function(r,i,o,s,a,c){var u,l,f,p,d,w,g,S,x,K,B,E,re,V,_e,ye,le,Fe,U,we,Pe=r.constructor,ve=r.s==i.s?1:-1,R=r.d,N=i.d;if(!R||!R[0]||!N||!N[0])return new Pe(!r.s||!i.s||(R?N&&R[0]==N[0]:!N)?NaN:R&&R[0]==0||!N?ve*0:ve/0);for(c?(d=1,l=r.e-i.e):(c=G,d=b,l=_(r.e/d)-_(i.e/d)),U=N.length,le=R.length,x=new Pe(ve),K=x.d=[],f=0;N[f]==(R[f]||0);f++);if(N[f]>(R[f]||0)&&l--,o==null?(V=o=Pe.precision,s=Pe.rounding):a?V=o+(r.e-i.e)+1:V=o,V<0)K.push(1),w=!0;else{if(V=V/d+2|0,f=0,U==1){for(p=0,N=N[0],V++;(f<le||p)&&V--;f++)_e=p*c+(R[f]||0),K[f]=_e/N|0,p=_e%N|0;w=p||f<le}else{for(p=c/(N[0]+1)|0,p>1&&(N=e(N,p,c),R=e(R,p,c),U=N.length,le=R.length),ye=U,B=R.slice(0,U),E=B.length;E<U;)B[E++]=0;we=N.slice(),we.unshift(0),Fe=N[0],N[1]>=c/2&&++Fe;do p=0,u=t(N,B,U,E),u<0?(re=B[0],U!=E&&(re=re*c+(B[1]||0)),p=re/Fe|0,p>1?(p>=c&&(p=c-1),g=e(N,p,c),S=g.length,E=B.length,u=t(g,B,S,E),u==1&&(p--,n(g,U<S?we:N,S,c))):(p==0&&(u=p=1),g=N.slice()),S=g.length,S<E&&g.unshift(0),n(B,g,E,c),u==-1&&(E=B.length,u=t(N,B,U,E),u<1&&(p++,n(B,U<E?we:N,E,c))),E=B.length):u===0&&(p++,B=[0]),K[f++]=p,u&&B[0]?B[E++]=R[ye]||0:(B=[R[ye]],E=1);while((ye++<le||B[0]!==void 0)&&V--);w=B[0]!==void 0}K[0]||K.shift()}if(d==1)x.e=l,wt=w;else{for(f=1,p=K[0];p>=10;p/=10)f++;x.e=f+l*d-1,h(x,a?o+x.e+1:o,s,w)}return x}}();function h(e,t,n,r){var i,o,s,a,c,u,l,f,p,d=e.constructor;e:if(t!=null){if(f=e.d,!f)return e;for(i=1,a=f[0];a>=10;a/=10)i++;if(o=t-i,o<0)o+=b,s=t,l=f[p=0],c=l/M(10,i-s-1)%10|0;else if(p=Math.ceil((o+1)/b),a=f.length,p>=a)if(r){for(;a++<=p;)f.push(0);l=c=0,i=1,o%=b,s=o-b+1}else break e;else{for(l=a=f[p],i=1;a>=10;a/=10)i++;o%=b,s=o-b+i,c=s<0?0:l/M(10,i-s-1)%10|0}if(r=r||t<0||f[p+1]!==void 0||(s<0?l:l%M(10,i-s-1)),u=n<4?(c||r)&&(n==0||n==(e.s<0?3:2)):c>5||c==5&&(n==4||r||n==6&&(o>0?s>0?l/M(10,i-s):0:f[p-1])%10&1||n==(e.s<0?8:7)),t<1||!f[0])return f.length=0,u?(t-=e.e+1,f[0]=M(10,(b-t%b)%b),e.e=-t||0):f[0]=e.e=0,e;if(o==0?(f.length=p,a=1,p--):(f.length=p+1,a=M(10,b-o),f[p]=s>0?(l/M(10,i-s)%M(10,s)|0)*a:0),u)for(;;)if(p==0){for(o=1,s=f[0];s>=10;s/=10)o++;for(s=f[0]+=a,a=1;s>=10;s/=10)a++;o!=a&&(e.e++,f[0]==G&&(f[0]=1));break}else{if(f[p]+=a,f[p]!=G)break;f[p--]=0,a=1}for(o=f.length;f[--o]===0;)f.pop()}return y&&(e.e>d.maxE?(e.d=null,e.e=NaN):e.e<d.minE&&(e.e=0,e.d=[0])),e}function H(e,t,n){if(!e.isFinite())return Nt(e);var r,i=e.e,o=D(e.d),s=o.length;return t?(n&&(r=n-s)>0?o=o.charAt(0)+"."+o.slice(1)+Z(r):s>1&&(o=o.charAt(0)+"."+o.slice(1)),o=o+(e.e<0?"e":"e+")+e.e):i<0?(o="0."+Z(-i-1)+o,n&&(r=n-s)>0&&(o+=Z(r))):i>=s?(o+=Z(i+1-s),n&&(r=n-i-1)>0&&(o=o+"."+Z(r))):((r=i+1)<s&&(o=o.slice(0,r)+"."+o.slice(r)),n&&(r=n-s)>0&&(i+1===s&&(o+="."),o+=Z(r))),o}function Ne(e,t){var n=e[0];for(t*=b;n>=10;n/=10)t++;return t}function Ae(e,t,n){if(t>wn)throw y=!0,n&&(e.precision=n),Error(Pt);return h(new e(Be),t,1,!0)}function q(e,t,n){if(t>ze)throw Error(Pt);return h(new e(Se),t,n,!0)}function St(e){var t=e.length-1,n=t*b+1;if(t=e[t],t){for(;t%10==0;t/=10)n--;for(t=e[0];t>=10;t/=10)n++}return n}function Z(e){for(var t="";e--;)t+="0";return t}function At(e,t,n,r){var i,o=new e(1),s=Math.ceil(r/b+4);for(y=!1;;){if(n%2&&(o=o.times(t),bt(o.d,s)&&(i=!0)),n=_(n/2),n===0){n=o.d.length-1,i&&o.d[n]===0&&++o.d[n];break}t=t.times(t),bt(t.d,s)}return y=!0,o}function ht(e){return e.d[e.d.length-1]&1}function kt(e,t,n){for(var r,i=new e(t[0]),o=0;++o<t.length;)if(r=new e(t[o]),r.s)i[n](r)&&(i=r);else{i=r;break}return i}function je(e,t){var n,r,i,o,s,a,c,u=0,l=0,f=0,p=e.constructor,d=p.rounding,w=p.precision;if(!e.d||!e.d[0]||e.e>17)return new p(e.d?e.d[0]?e.s<0?0:1/0:1:e.s?e.s<0?0:e:0/0);for(t==null?(y=!1,c=w):c=t,a=new p(.03125);e.e>-2;)e=e.times(a),f+=5;for(r=Math.log(M(2,f))/Math.LN10*2+5|0,c+=r,n=o=s=new p(1),p.precision=c;;){if(o=h(o.times(e),c,1),n=n.times(++l),a=s.plus(k(o,n,c,1)),D(a.d).slice(0,c)===D(s.d).slice(0,c)){for(i=f;i--;)s=h(s.times(s),c,1);if(t==null)if(u<3&&fe(s.d,c-r,d,u))p.precision=c+=10,n=o=a=new p(1),l=0,u++;else return h(s,p.precision=w,d,y=!0);else return p.precision=w,s}s=a}}function Y(e,t){var n,r,i,o,s,a,c,u,l,f,p,d=1,w=10,g=e,S=g.d,x=g.constructor,K=x.rounding,B=x.precision;if(g.s<0||!S||!S[0]||!g.e&&S[0]==1&&S.length==1)return new x(S&&!S[0]?-1/0:g.s!=1?NaN:S?0:g);if(t==null?(y=!1,l=B):l=t,x.precision=l+=w,n=D(S),r=n.charAt(0),Math.abs(o=g.e)<15e14){for(;r<7&&r!=1||r==1&&n.charAt(1)>3;)g=g.times(e),n=D(g.d),r=n.charAt(0),d++;o=g.e,r>1?(g=new x("0."+n),o++):g=new x(r+"."+n.slice(1))}else return u=Ae(x,l+2,B).times(o+""),g=Y(new x(r+"."+n.slice(1)),l-w).plus(u),x.precision=B,t==null?h(g,B,K,y=!0):g;for(f=g,c=s=g=k(g.minus(1),g.plus(1),l,1),p=h(g.times(g),l,1),i=3;;){if(s=h(s.times(p),l,1),u=c.plus(k(s,new x(i),l,1)),D(u.d).slice(0,l)===D(c.d).slice(0,l))if(c=c.times(2),o!==0&&(c=c.plus(Ae(x,l+2,B).times(o+""))),c=k(c,new x(d),l,1),t==null)if(fe(c.d,l-w,K,a))x.precision=l+=w,u=s=g=k(f.minus(1),f.plus(1),l,1),p=h(g.times(g),l,1),i=a=1;else return h(c,x.precision=B,K,y=!0);else return x.precision=B,c;c=u,i+=2}}function Nt(e){return String(e.s*e.s/0)}function Ze(e,t){var n,r,i;for((n=t.indexOf("."))>-1&&(t=t.replace(".","")),(r=t.search(/e/i))>0?(n<0&&(n=r),n+=+t.slice(r+1),t=t.substring(0,r)):n<0&&(n=t.length),r=0;t.charCodeAt(r)===48;r++);for(i=t.length;t.charCodeAt(i-1)===48;--i);if(t=t.slice(r,i),t){if(i-=r,e.e=n=n-r-1,e.d=[],r=(n+1)%b,n<0&&(r+=b),r<i){for(r&&e.d.push(+t.slice(0,r)),i-=b;r<i;)e.d.push(+t.slice(r,r+=b));t=t.slice(r),r=b-t.length}else r-=i;for(;r--;)t+="0";e.d.push(+t),y&&(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 Tn(e,t){var n,r,i,o,s,a,c,u,l;if(t.indexOf("_")>-1){if(t=t.replace(/(\d)_(?=\d)/g,"$1"),Bt.test(t))return Ze(e,t)}else if(t==="Infinity"||t==="NaN")return+t||(e.s=NaN),e.e=NaN,e.d=null,e;if(hn.test(t))n=16,t=t.toLowerCase();else if(gn.test(t))n=2;else if(bn.test(t))n=8;else throw Error(X+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,r=e.constructor,s&&(t=t.replace(".",""),a=t.length,o=a-o,i=At(r,new r(n),o,o*2)),u=xe(t,n,G),l=u.length-1,o=l;u[o]===0;--o)u.pop();return o<0?new r(e.s*0):(e.e=Ne(u,l),e.d=u,y=!1,s&&(e=k(e,i,a*4)),c&&(e=e.times(Math.abs(c)<54?M(2,c):Le.pow(2,c))),y=!0,e)}function xn(e,t){var n,r=t.d.length;if(r<3)return t.isZero()?t:ae(e,2,t,t);n=1.4*Math.sqrt(r),n=n>16?16:n|0,t=t.times(1/Ce(5,n)),t=ae(e,2,t,t);for(var i,o=new e(5),s=new e(16),a=new e(20);n--;)i=t.times(t),t=t.times(o.plus(i.times(s.times(i).minus(a))));return t}function ae(e,t,n,r,i){var o,s,a,c,u=1,l=e.precision,f=Math.ceil(l/b);for(y=!1,c=n.times(n),a=new e(r);;){if(s=k(a.times(c),new e(t++*t++),l,1),a=i?r.plus(s):r.minus(s),r=k(s.times(c),new e(t++*t++),l,1),s=a.plus(r),s.d[f]!==void 0){for(o=f;s.d[o]===a.d[o]&&o--;);if(o==-1)break}o=a,a=r,r=s,s=o,u++}return y=!0,s.d.length=f+1,s}function Ce(e,t){for(var n=e;--t;)n*=e;return n}function Ct(e,t){var n,r=t.s<0,i=q(e,e.precision,1),o=i.times(.5);if(t=t.abs(),t.lte(o))return j=r?4:1,t;if(n=t.divToInt(i),n.isZero())j=r?3:2;else{if(t=t.minus(n.times(i)),t.lte(o))return j=ht(n)?r?2:3:r?4:1,t;j=ht(n)?r?1:4:r?3:2}return t.minus(i).abs()}function Ye(e,t,n,r){var i,o,s,a,c,u,l,f,p,d=e.constructor,w=n!==void 0;if(w?(v(n,1,J),r===void 0?r=d.rounding:v(r,0,8)):(n=d.precision,r=d.rounding),!e.isFinite())l=Nt(e);else{for(l=H(e),s=l.indexOf("."),w?(i=2,t==16?n=n*4-3:t==8&&(n=n*3-2)):i=t,s>=0&&(l=l.replace(".",""),p=new d(1),p.e=l.length-s,p.d=xe(H(p),10,i),p.e=p.d.length),f=xe(l,10,i),o=c=f.length;f[--c]==0;)f.pop();if(!f[0])l=w?"0p+0":"0";else{if(s<0?o--:(e=new d(e),e.d=f,e.e=o,e=k(e,p,n,r,0,i),f=e.d,o=e.e,u=wt),s=f[n],a=i/2,u=u||f[n+1]!==void 0,u=r<4?(s!==void 0||u)&&(r===0||r===(e.s<0?3:2)):s>a||s===a&&(r===4||u||r===6&&f[n-1]&1||r===(e.s<0?8:7)),f.length=n,u)for(;++f[--n]>i-1;)f[n]=0,n||(++o,f.unshift(1));for(c=f.length;!f[c-1];--c);for(s=0,l="";s<c;s++)l+=Ge.charAt(f[s]);if(w){if(c>1)if(t==16||t==8){for(s=t==16?4:3,--c;c%s;c++)l+="0";for(f=xe(l,i,t),c=f.length;!f[c-1];--c);for(s=1,l="1.";s<c;s++)l+=Ge.charAt(f[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 bt(e,t){if(e.length>t)return e.length=t,!0}function Bn(e){return new this(e).abs()}function Sn(e){return new this(e).acos()}function An(e){return new this(e).acosh()}function kn(e,t){return new this(e).plus(t)}function Nn(e){return new this(e).asin()}function Cn(e){return new this(e).asinh()}function Ln(e){return new this(e).atan()}function In(e){return new this(e).atanh()}function Kn(e,t){e=new this(e),t=new this(t);var n,r=this.precision,i=this.rounding,o=r+4;return!e.s||!t.s?n=new this(NaN):!e.d&&!t.d?(n=q(this,o,1).times(t.s>0?.25:.75),n.s=e.s):!t.d||e.isZero()?(n=t.s<0?q(this,r,i):new this(0),n.s=e.s):!e.d||t.isZero()?(n=q(this,o,1).times(.5),n.s=e.s):t.s<0?(this.precision=o,this.rounding=1,n=this.atan(k(e,t,o,1)),t=q(this,o,1),this.precision=r,this.rounding=i,n=e.s<0?n.minus(t):n.plus(t)):n=this.atan(k(e,t,o,1)),n}function En(e){return new this(e).cbrt()}function Mn(e){return h(e=new this(e),e.e+1,2)}function Dn(e,t,n){return new this(e).clamp(t,n)}function Rn(e){if(!e||typeof e!="object")throw Error(ke+"Object expected");var t,n,r,i=e.defaults===!0,o=["precision",1,J,"rounding",0,8,"toExpNeg",-se,0,"toExpPos",0,se,"maxE",0,se,"minE",-se,0,"modulo",0,9];for(t=0;t<o.length;t+=3)if(n=o[t],i&&(this[n]=He[n]),(r=e[n])!==void 0)if(_(r)===r&&r>=o[t+1]&&r<=o[t+2])this[n]=r;else throw Error(X+n+": "+r);if(n="crypto",i&&(this[n]=He[n]),(r=e[n])!==void 0)if(r===!0||r===!1||r===0||r===1)if(r)if(typeof crypto<"u"&&crypto&&(crypto.getRandomValues||crypto.randomBytes))this[n]=!0;else throw Error(Tt);else this[n]=!1;else throw Error(X+n+": "+r);return this}function _n(e){return new this(e).cos()}function Fn(e){return new this(e).cosh()}function Lt(e){var t,n,r;function i(o){var s,a,c,u=this;if(!(u instanceof i))return new i(o);if(u.constructor=i,yt(o)){u.s=o.s,y?!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++;y?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 Ze(u,o.toString())}else if(c!=="string")throw Error(X+o);return(a=o.charCodeAt(0))===45?(o=o.slice(1),u.s=-1):(a===43&&(o=o.slice(1)),u.s=1),Bt.test(o)?Ze(u,o):Tn(u,o)}if(i.prototype=m,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=Rn,i.clone=Lt,i.isDecimal=yt,i.abs=Bn,i.acos=Sn,i.acosh=An,i.add=kn,i.asin=Nn,i.asinh=Cn,i.atan=Ln,i.atanh=In,i.atan2=Kn,i.cbrt=En,i.ceil=Mn,i.clamp=Dn,i.cos=_n,i.cosh=Fn,i.div=vn,i.exp=Wn,i.floor=On,i.hypot=Vn,i.ln=Un,i.log=qn,i.log10=Hn,i.log2=Gn,i.max=zn,i.min=jn,i.mod=Zn,i.mul=Yn,i.pow=Xn,i.random=Jn,i.round=Qn,i.sign=$n,i.sin=er,i.sinh=tr,i.sqrt=nr,i.sub=rr,i.sum=ir,i.tan=or,i.tanh=sr,i.trunc=ar,e===void 0&&(e={}),e&&e.defaults!==!0)for(r=["precision","rounding","toExpNeg","toExpPos","maxE","minE","modulo","crypto"],t=0;t<r.length;)e.hasOwnProperty(n=r[t++])||(e[n]=this[n]);return i.config(e),i}function vn(e,t){return new this(e).div(t)}function Wn(e){return new this(e).exp()}function On(e){return h(e=new this(e),e.e+1,3)}function Vn(){var e,t,n=new this(0);for(y=!1,e=0;e<arguments.length;)if(t=new this(arguments[e++]),t.d)n.d&&(n=n.plus(t.times(t)));else{if(t.s)return y=!0,new this(1/0);n=t}return y=!0,n.sqrt()}function yt(e){return e instanceof Le||e&&e.toStringTag===xt||!1}function Un(e){return new this(e).ln()}function qn(e,t){return new this(e).log(t)}function Gn(e){return new this(e).log(2)}function Hn(e){return new this(e).log(10)}function zn(){return kt(this,arguments,"lt")}function jn(){return kt(this,arguments,"gt")}function Zn(e,t){return new this(e).mod(t)}function Yn(e,t){return new this(e).mul(t)}function Xn(e,t){return new this(e).pow(t)}function Jn(e){var t,n,r,i,o=0,s=new this(1),a=[];if(e===void 0?e=this.precision:v(e,1,J),r=Math.ceil(e/b),this.crypto)if(crypto.getRandomValues)for(t=crypto.getRandomValues(new Uint32Array(r));o<r;)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(r*=4);o<r;)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=r/4}else throw Error(Tt);else for(;o<r;)a[o++]=Math.random()*1e7|0;for(r=a[--o],e%=b,r&&e&&(i=M(10,b-e),a[o]=(r/i|0)*i);a[o]===0;o--)a.pop();if(o<0)n=0,a=[0];else{for(n=-1;a[0]===0;n-=b)a.shift();for(r=1,i=a[0];i>=10;i/=10)r++;r<b&&(n-=b-r)}return s.e=n,s.d=a,s}function Qn(e){return h(e=new this(e),e.e+1,this.rounding)}function $n(e){return e=new this(e),e.d?e.d[0]?e.s:0*e.s:e.s||NaN}function er(e){return new this(e).sin()}function tr(e){return new this(e).sinh()}function nr(e){return new this(e).sqrt()}function rr(e,t){return new this(e).sub(t)}function ir(){var e=0,t=arguments,n=new this(t[e]);for(y=!1;n.s&&++e<t.length;)n=n.plus(t[e]);return y=!0,h(n,this.precision,this.rounding)}function or(e){return new this(e).tan()}function sr(e){return new this(e).tanh()}function ar(e){return h(e=new this(e),e.e+1,1)}m[Symbol.for("nodejs.util.inspect.custom")]=m.toString;m[Symbol.toStringTag]="Decimal";var Le=m.constructor=Lt(He);Be=new Le(Be);Se=new Le(Se);import{PublicKey as Je}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as ur}from"@solana/spl-token";import{PublicKey as L,SystemProgram as Kt,SYSVAR_RENT_PUBKEY as cr}from"@solana/web3.js";function Xe({pubkey:e,isSigner:t=!1,isWritable:n=!0}){return{pubkey:e,isWritable:n,isSigner:t}}var Qi=[Xe({pubkey:ur,isWritable:!1}),Xe({pubkey:Kt.programId,isWritable:!1}),Xe({pubkey:cr,isWritable:!1})];function Et({publicKey:e,transformSol:t}){let n=Mt(e.toString());if(n instanceof L)return t&&n.equals(pe)?It:n;if(t&&n.toString()===pe.toBase58())return It;if(typeof n=="string"){if(n===L.default.toBase58())return L.default;try{return new L(n)}catch{throw new Error("invalid public key")}}throw new Error("invalid public key")}function Mt(e){try{return new L(e)}catch{return e}}var $i=new L("MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"),Dt=new L("MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"),Rt=new L("SysvarRent111111111111111111111111111111111"),eo=new L("SysvarC1ock11111111111111111111111111111111"),to=new L("metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),no=new L("Sysvar1nstructions1111111111111111111111111"),_t=Kt.programId,ro=new L("4k3Dyjzvzp8eMZWUXbBCjEvwSkkk59S5iCNLY3QrkX6R"),io=new L("Ea5SjE2Y6yvCeW5dYTn7PYMuW5ikXkvbGdcmSnXeaLjS"),oo=new L("SRMuApVNdxXokk5GT7XD5cUUgXMBCoAz2LHeuAoKWRt"),so=new L("EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"),ao=new L("Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB"),uo=new L("mSoLzYCxHdYgdzU16g5QSh3i5K3z3KZK7ytfqcJm7So"),co=new L("7dHbWXmci3dT8UFYWYZweBLXgycu7Y3iL6trKn1Y7ARj"),lo=new L("USDH1SM1ojwWUga67PGrgFWUHibbjqMvuMaDkRJTgkX"),fo=new L("NRVwhjBQiUPYtfDT5zRBVJajzFQHaBUNtC7SNVvqRFa"),po=new L("ANAxByE6G2WjFp7A4NqtWYXb3mgruyzZYg3spfxe6Lbo"),mo=new L("7vfCXTUXx5WJV5JADk17DUJ4ksgau7utNKj4b963voxs"),It=new L("So11111111111111111111111111111111111111112"),pe=L.default;import{PublicKey as lr}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as Ft}from"@solana/spl-token";var vt={chainId:101,address:lr.default.toBase58(),programId:Ft.toBase58(),decimals:9,symbol:"SOL",name:"solana",logoURI:"https://img.raydium.io/icon/So11111111111111111111111111111111111111112.png",tags:[],priority:2,type:"raydium",extensions:{coingeckoId:"solana"}},ne={chainId:101,address:"So11111111111111111111111111111111111111112",programId:Ft.toBase58(),decimals:9,symbol:"WSOL",name:"Wrapped SOL",logoURI:"https://img.raydium.io/icon/So11111111111111111111111111111111111111112.png",tags:[],priority:2,type:"raydium",extensions:{coingeckoId:"solana"}};var Qe=class{constructor({mint:t,decimals:n,symbol:r,name:i,skipMint:o=!1,isToken2022:s=!1}){if(t===pe.toBase58()||t instanceof Je&&pe.equals(t)){this.decimals=ne.decimals,this.symbol=ne.symbol,this.name=ne.name,this.mint=new Je(ne.address),this.isToken2022=!1;return}this.decimals=n,this.symbol=r||t.toString().substring(0,6),this.name=i||t.toString().substring(0,6),this.mint=o?Je.default:Et({publicKey:t}),this.isToken2022=s}equals(t){return this===t?!0:this.mint.equals(t.mint)}},ue=Qe;ue.WSOL=new Qe(ie(ee({},ne),{mint:ne.address}));import Ke from"big.js";import mr from"bn.js";import dr from"decimal.js-light";import fr from"toformat";var pr=fr,me=pr;var Ie=F("module/fraction"),$e=me(Ke),de=me(dr),gr={[0]:de.ROUND_DOWN,[1]:de.ROUND_HALF_UP,[2]:de.ROUND_UP},hr={[0]:Ke.roundDown,[1]:Ke.roundHalfUp,[2]:Ke.roundUp},C=class{constructor(t,n=new mr(1)){this.numerator=Q(t),this.denominator=Q(n)}get quotient(){return this.numerator.div(this.denominator)}invert(){return new C(this.denominator,this.numerator)}add(t){let n=t instanceof C?t:new C(Q(t));return this.denominator.eq(n.denominator)?new C(this.numerator.add(n.numerator),this.denominator):new C(this.numerator.mul(n.denominator).add(n.numerator.mul(this.denominator)),this.denominator.mul(n.denominator))}sub(t){let n=t instanceof C?t:new C(Q(t));return this.denominator.eq(n.denominator)?new C(this.numerator.sub(n.numerator),this.denominator):new C(this.numerator.mul(n.denominator).sub(n.numerator.mul(this.denominator)),this.denominator.mul(n.denominator))}mul(t){let n=t instanceof C?t:new C(Q(t));return new C(this.numerator.mul(n.numerator),this.denominator.mul(n.denominator))}div(t){let n=t instanceof C?t:new C(Q(t));return new C(this.numerator.mul(n.denominator),this.denominator.mul(n.numerator))}toSignificant(t,n={groupSeparator:""},r=1){Number.isInteger(t)||Ie.logWithError(`${t} is not an integer.`),t<=0&&Ie.logWithError(`${t} is not positive.`),de.set({precision:t+1,rounding:gr[r]});let i=new de(this.numerator.toString()).div(this.denominator.toString()).toSignificantDigits(t);return i.toFormat(i.decimalPlaces(),n)}toFixed(t,n={groupSeparator:""},r=1){return Number.isInteger(t)||Ie.logWithError(`${t} is not an integer.`),t<0&&Ie.logWithError(`${t} is negative.`),$e.DP=t,$e.RM=hr[r]||1,new $e(this.numerator.toString()).div(this.denominator.toString()).toFormat(t,n)}isZero(){return this.numerator.isZero()}};var Oo=F("Raydium_price");var et=class{constructor({decimals:t,symbol:n="UNKNOWN",name:r="UNKNOWN"}){this.decimals=t,this.symbol=n,this.name=r}equals(t){return this===t}},Ee=et;Ee.SOL=new et(vt);import yr from"bn.js";var Zo=new C(new yr(100));var wr=new W(0),ds=new W(1),gs=new W(2),hs=new W(3),bs=new W(5),Pr=new W(10),ys=new W(100),ws=new W(1e3),Ps=new W(1e4),Ut=9007199254740991;function Q(e){let t=F("Raydium_parseBigNumberish");if(e instanceof W)return e;if(typeof e=="string"){if(e.match(/^-?[0-9]+$/))return new W(e);t.logWithError(`invalid BigNumberish string: ${e}`)}return typeof e=="number"?(e%1&&t.logWithError(`BigNumberish number underflow: ${e}`),(e>=Ut||e<=-Ut)&&t.logWithError(`BigNumberish number overflow: ${e}`),new W(String(e))):typeof e=="bigint"?new W(e.toString()):(t.error(`invalid BigNumberish value: ${e}`),new W(0))}var Ds=F("Raydium_amount"),Rs=me(Tr);import{PublicKey as Ga,sendAndConfirmTransaction as Ha,Transaction as ja,TransactionMessage as Ya,VersionedTransaction as Xa}from"@solana/web3.js";import Qa from"axios";import{PublicKey as xr,ComputeBudgetProgram as na,Transaction as ia,TransactionMessage as sa,Keypair as aa,VersionedTransaction as ca}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as fa}from"@solana/spl-token";var da=F("Raydium_txUtil");function $(e,t){let[n,r]=xr.findProgramAddressSync(e,t);return{publicKey:n,nonce:r}}import{PublicKey as Br,AddressLookupTableAccount as qt}from"@solana/web3.js";import{PublicKey as Pa}from"@solana/web3.js";import{getTransferFeeConfig as xa,unpackMint as Ba}from"@solana/spl-token";var ka=F("Raydium_accountInfo_util");var Sr={"2immgwYNHBbyVQKVGCEkgWpi53bLwWNRMB5G2nbgYV17":new qt({key:new Br("2immgwYNHBbyVQKVGCEkgWpi53bLwWNRMB5G2nbgYV17"),state:qt.deserialize(Buffer.from("AQAAAP//////////d49+DAAAAAAAAQZMWvw7GUNJdaccNBVnb57OKakxL2BHLYvhRwVILRsgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMGRm/lIRcy/+ytunLDm+e8jOW7xfcSayxDmzpAAAAABt324ddloZPZy+FGzut5rBy0he1fWzeROoz1hX7/AKkG3fbh7nWP3hhCXbzkbM3athr8TYO5DSf+vfko2KGL/AVKU1D4XciC1hSlVnJ4iilt3x6rq9CmBniISTL07vagBqfVFxksXFEhjMlMPUrxf1ja7gibof1E49vZigAAAAAGp9UXGMd0yShWY5hpHV62i164o5tLbVxzVVshAAAAAIyXJY9OJInxuz0QKRSODYMLWhOZ2v8QhASOe9jb6fhZC3BlsePRfEU4nVJ/awTDzVi4bHMaoP21SbbRvAP4KUbIScv+6Yw2LHF/6K0ZjUPibbSWXCirYPGuuVl7zT789IUPLW4CpHr4JNCatp3ELXDLKMv6JJ+37le50lbBJ2LvDQdRqCgtphMF/imcN7mY5YRx2xE1A3MQ+L4QRaYK9u4GRfZP3LsAd00a+IkCpA22UNQMKdq5BFbJuwuOLqc8zxCTDlqxBG8J0HcxtfogQHDK06ukzfaXiNDKAob1MqBHS9lJxDYCwz8gd5DtFqNSTKG5l1zxIaKpDP/sffi2is1H9aKveyXSu5StXElYRl9SD5As0DHE4N0GLnf84/siiKXVyp4Ez121kLcUui/jLLFZEz/BwZK3Ilf9B9OcsEAeDMKAy2vjGSxQODgBz0QwGA+eP4ZjIjrIAQaXENv31QfLlOdXSRCkaybRniDHF4C8YcwhcvsqrOVuTP4B2Na+9wLdtrB31uz2rtlFI5kahdsnp/d1SrASDInYCtTYtdoke4kX+hoKWcEWM4Tle8pTUkUVv4BxS6fje/EzKBE4Qu9N9LMnrw/JNO0hqMVB4rk/2ou4AB1loQ7FZoPwut2o4KZB+0p9xnbrQKw038qjpHar+PyDwvxBRcu5hpHw3dguezeWv+IwvgW5icu8EGkhGa9AkFPPJT7VMSFb8xowveU=","base64"))})};import{PublicKey as I}from"@solana/web3.js";var uu=new I("EhhTKczWMGQt46ynNeRX1WfeagwwJd7ufHvCDjRxjo5Q"),cu=new I("9KEPoZmtHUrBbhWN1v1KWLMkkvwY6WLtAVUCPRtRjP4z"),lu=new I("FarmqiPv5eAj3j1GMdMCMUGXqPUvmquZtMy86QH6rzhG"),fu=new I("CLaimxFqjHzgTJtAGHU47NPhg6qrc5sCnpC4tBLyABQS"),pu=new I("srmqPvymJeFKQ4zGQed1GFppgkRHL9kaELCbyksJtPX"),mu=new I("9xQeWvG816bUx9EPjHmaT23yvVM2ZWbrrpZb9PusVFin"),du=new I("675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8"),gu=new I("5quBtoiQqxF9Jv6KYKctB59NT3gtJD2Y65kdnB1Uev3h"),hu=new I("CAMMCzo5YL8w4VFF8KVHrK22GGUsp5VTaW7grrKgrWqK"),bu=new I("routeUGWgWzqBWFcrCfv8tritsqukccJPu3q5GPP3xS"),yu=new I("6FJon3QE27qgPVggARueB22hLvoh22VzJpXv4rBEoSLF"),wu=new I("CC12se5To1CdEuw7fDS27B7Geo5jJyL7t5UK2B44NgiH"),Pu=new I("9HzJyW1qZsEiSfMUf6L2jo3CcTKAyBmSyKdwQeYisHrC"),Tu=new I("DropEU8AvevN3UrXWXTMuz3rqnMczQVNjq3kcSdW2SQi"),xu=new I("CPMMoo8L3F4NbTegBCKVNunggL7H1ZpdTHKxQB5qKP1C"),Bu=new I("GpMZbSM2GgvTKHJirzeGfMFoaZ8UR2X7F4v8vHTvxFbL"),Su=new I("DNXgeM9EiiaAbaWvwjHj9fQQLAX5ZsfHyvmYUNRAdNC8"),Au=new I("CPMDWBwJDtYax9qW7AyRuVC19Cc4L4Vcy4n2BHAbHkCW"),ku=new I("7rQ1QFNosMkUCuh7Z7fPbTHvh73b68sQYdirycEzJVuw"),Nu=new I("G11FKBRaAkHAKuLCgLM6K6NUc9rTjPAznRCjZifrTQe2");import{PublicKey as Iu}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as Mu}from"@solana/spl-token";import _u from"bn.js";var kr=F("Raydium_Cpmm_ins"),he={initialize:[175,175,109,31,13,152,155,237],deposit:[242,35,198,137,82,225,242,182],withdraw:[183,18,70,156,148,109,161,34],swapBaseInput:[143,190,90,218,196,30,51,222],swapBaseOutput:[55,217,98,86,163,74,180,173]};function ac(e,t,n,r,i,o,s,a,c,u,l,f,p,d,w,g,S,x,K,B){let E=z([A("amountMaxA"),A("amountMaxB"),A("openTime")]),re=[{pubkey:t,isSigner:!0,isWritable:!1},{pubkey:n,isSigner:!1,isWritable:!1},{pubkey:r,isSigner:!1,isWritable:!1},{pubkey:i,isSigner:!1,isWritable:!0},{pubkey:o,isSigner:!1,isWritable:!1},{pubkey:s,isSigner:!1,isWritable:!1},{pubkey:a,isSigner:!1,isWritable:!0},{pubkey:c,isSigner:!1,isWritable:!0},{pubkey:u,isSigner:!1,isWritable:!0},{pubkey:l,isSigner:!1,isWritable:!0},{pubkey:f,isSigner:!1,isWritable:!0},{pubkey:p,isSigner:!1,isWritable:!0},{pubkey:d,isSigner:!1,isWritable:!0},{pubkey:S,isSigner:!1,isWritable:!0},{pubkey:tt,isSigner:!1,isWritable:!1},{pubkey:w,isSigner:!1,isWritable:!1},{pubkey:g,isSigner:!1,isWritable:!1},{pubkey:Ar,isSigner:!1,isWritable:!1},{pubkey:_t,isSigner:!1,isWritable:!1},{pubkey:Rt,isSigner:!1,isWritable:!1}],V=Buffer.alloc(E.span);return E.encode({amountMaxA:x,amountMaxB:K,openTime:B},V),new ge({keys:re,programId:e,data:Buffer.from([...he.initialize,...V])})}function uc(e,t,n,r,i,o,s,a,c,u,l,f,p,d,w){let g=z([A("lpAmount"),A("amountMaxA"),A("amountMaxB")]),S=[{pubkey:t,isSigner:!0,isWritable:!1},{pubkey:n,isSigner:!1,isWritable:!1},{pubkey:r,isSigner:!1,isWritable:!0},{pubkey:i,isSigner:!1,isWritable:!0},{pubkey:o,isSigner:!1,isWritable:!0},{pubkey:s,isSigner:!1,isWritable:!0},{pubkey:a,isSigner:!1,isWritable:!0},{pubkey:c,isSigner:!1,isWritable:!0},{pubkey:tt,isSigner:!1,isWritable:!1},{pubkey:Gt,isSigner:!1,isWritable:!1},{pubkey:u,isSigner:!1,isWritable:!1},{pubkey:l,isSigner:!1,isWritable:!1},{pubkey:f,isSigner:!1,isWritable:!0}],x=Buffer.alloc(g.span);return kr.debug("cpmm deposit data",{lpAmount:p.toString(),amountMaxA:d.toString(),amountMaxB:w.toString()}),g.encode({lpAmount:p,amountMaxA:d,amountMaxB:w},x),new ge({keys:S,programId:e,data:Buffer.from([...he.deposit,...x])})}function cc(e,t,n,r,i,o,s,a,c,u,l,f,p,d,w){let g=z([A("lpAmount"),A("amountMinA"),A("amountMinB")]),S=[{pubkey:t,isSigner:!0,isWritable:!1},{pubkey:n,isSigner:!1,isWritable:!1},{pubkey:r,isSigner:!1,isWritable:!0},{pubkey:i,isSigner:!1,isWritable:!0},{pubkey:o,isSigner:!1,isWritable:!0},{pubkey:s,isSigner:!1,isWritable:!0},{pubkey:a,isSigner:!1,isWritable:!0},{pubkey:c,isSigner:!1,isWritable:!0},{pubkey:tt,isSigner:!1,isWritable:!1},{pubkey:Gt,isSigner:!1,isWritable:!1},{pubkey:u,isSigner:!1,isWritable:!1},{pubkey:l,isSigner:!1,isWritable:!1},{pubkey:f,isSigner:!1,isWritable:!0},{pubkey:Dt,isSigner:!1,isWritable:!1}],x=Buffer.alloc(g.span);return g.encode({lpAmount:p,amountMinA:d,amountMinB:w},x),new ge({keys:S,programId:e,data:Buffer.from([...he.withdraw,...x])})}function lc(e,t,n,r,i,o,s,a,c,u,l,f,p,d,w,g){let S=z([A("amountIn"),A("amounOutMin")]),x=[{pubkey:t,isSigner:!0,isWritable:!1},{pubkey:n,isSigner:!1,isWritable:!1},{pubkey:r,isSigner:!1,isWritable:!1},{pubkey:i,isSigner:!1,isWritable:!0},{pubkey:o,isSigner:!1,isWritable:!0},{pubkey:s,isSigner:!1,isWritable:!0},{pubkey:a,isSigner:!1,isWritable:!0},{pubkey:c,isSigner:!1,isWritable:!0},{pubkey:u,isSigner:!1,isWritable:!1},{pubkey:l,isSigner:!1,isWritable:!1},{pubkey:f,isSigner:!1,isWritable:!1},{pubkey:p,isSigner:!1,isWritable:!1},{pubkey:d,isSigner:!1,isWritable:!0}],K=Buffer.alloc(S.span);return S.encode({amountIn:w,amounOutMin:g},K),new ge({keys:x,programId:e,data:Buffer.from([...he.swapBaseInput,...K])})}function fc(e,t,n,r,i,o,s,a,c,u,l,f,p,d,w,g){let S=z([A("amountInMax"),A("amountOut")]),x=[{pubkey:t,isSigner:!0,isWritable:!1},{pubkey:n,isSigner:!1,isWritable:!1},{pubkey:r,isSigner:!1,isWritable:!1},{pubkey:i,isSigner:!1,isWritable:!0},{pubkey:o,isSigner:!1,isWritable:!0},{pubkey:s,isSigner:!1,isWritable:!0},{pubkey:a,isSigner:!1,isWritable:!0},{pubkey:c,isSigner:!1,isWritable:!0},{pubkey:u,isSigner:!1,isWritable:!1},{pubkey:l,isSigner:!1,isWritable:!1},{pubkey:f,isSigner:!1,isWritable:!1},{pubkey:p,isSigner:!1,isWritable:!1},{pubkey:d,isSigner:!1,isWritable:!0}],K=Buffer.alloc(S.span);return S.encode({amountInMax:w,amountOut:g},K),new ge({keys:x,programId:e,data:Buffer.from([...he.swapBaseOutput,...K])})}var Nr=Buffer.from("vault_and_lp_mint_auth_seed","utf8"),Cr=Buffer.from("amm_config","utf8"),Lr=Buffer.from("pool","utf8"),Ir=Buffer.from("pool_lp_mint","utf8"),Kr=Buffer.from("pool_vault","utf8"),Er=Buffer.from("observation","utf8");function Mr(e){return $([Nr],e)}function Dr(e,t){return $([Cr,vr(t)],e)}function Rr(e,t,n,r){return $([Lr,t.toBuffer(),n.toBuffer(),r.toBuffer()],e)}function _r(e,t){return $([Ir,t.toBuffer()],e)}function Ht(e,t,n){return $([Kr,t.toBuffer(),n.toBuffer()],e)}function Fr(e,t){return $([Er,t.toBuffer()],e)}function vr(e){let t=new ArrayBuffer(2);return new DataView(t).setUint16(0,e,!1),new Uint8Array(t)}function dc({programId:e,mintA:t,mintB:n}){let r=Dr(e,0).publicKey,i=Mr(e).publicKey,o=Rr(e,r,t,n).publicKey,s=_r(e,o).publicKey,a=Ht(e,o,t).publicKey,c=Ht(e,o,n).publicKey,u=Fr(e,o).publicKey;return{poolId:o,configId:r,authority:i,lpMint:s,vaultA:a,vaultB:c,observationId:u}}import jt from"bn.js";var nt=new jt(1e6);function Wr(e,t,n){return e.mul(t).add(n).sub(new jt(1)).div(n)}function zt(e,t,n){return e.mul(t).div(n)}var Me=class{static tradingFee(t,n){return Wr(t,n,nt)}static protocolFee(t,n){return zt(t,n,nt)}static fundFee(t,n){return zt(t,n,nt)}};import be from"bn.js";function De(e,t){if(t.isZero())throw Error("divisor is zero");return e.mod(t)}function Or(e,t){if(t.isZero())throw Error("rhs is zero");let n=e.div(t);if(n.isZero())throw Error("quotient is zero");let r=De(e,t);if(r.gt(ce)){n=n.add(new be(1));let i=e.div(n);r=De(e,n),r.gt(ce)&&(i=i.add(new be(1)))}return[n,t]}var ce=new be(0),Re=class{static swapWithoutFees(t,n,r){let i=n.mul(r),o=n.add(t),[s,a]=Or(i,o),c=a.sub(n),u=r.sub(s);if(u.isZero())throw Error("destinationAmountSwapped is zero");return{sourceAmountSwapped:c,destinationAmountSwapped:u}}static lpTokensToTradingTokens(t,n,r,i,o){let s=t.mul(r).div(n),a=t.mul(i).div(n);if(o===0)return{tokenAmount0:s,tokenAmount1:a};if(o===1)return De(t.mul(r),n).gt(ce)&&s.gt(ce)&&(s=s.add(new be(1))),De(t.mul(i),n).gt(ce)&&a.gt(ce)&&(a=a.add(new be(1))),{tokenAmount0:s,tokenAmount1:a};throw Error("roundDirection value error")}};var Zt=(n=>(n[n.Floor=0]="Floor",n[n.Ceiling=1]="Ceiling",n))(Zt||{}),Yt=class{static validate_supply(t,n){if(t.isZero())throw Error("tokenAmount0 is zero");if(n.isZero())throw Error("tokenAmount1 is zero")}static swap(t,n,r,i){let o=Me.tradingFee(t,i),s=t.sub(o),{sourceAmountSwapped:a,destinationAmountSwapped:c}=Re.swapWithoutFees(s,n,r),u=a.add(o);return{newSwapSourceAmount:n.add(u),newSwapDestinationAmount:r.sub(c),sourceAmountSwapped:u,destinationAmountSwapped:c,tradeFee:o}}};export{Re as ConstantProductCurve,Vi as CpmmConfigInfoLayout,Me as CpmmFee,Ui as CpmmPoolInfoLayout,Yt as CurveCalculator,nt as FEE_RATE_DENOMINATOR_VALUE,Zt as RoundDirection,Wr as ceilDiv,zt as floorDiv,Dr as getCpmmPdaAmmConfigId,Rr as getCpmmPdaPoolId,dc as getCreatePoolKeys,_r as getPdaLpMint,Fr as getPdaObservationId,Mr as getPdaPoolAuthority,Ht as getPdaVault,ac as makeCreateCpmmPoolInInstruction,uc as makeDepositCpmmInInstruction,lc as makeSwapCpmmBaseInInInstruction,fc as makeSwapCpmmBaseOutInInstruction,cc as makeWithdrawCpmmInInstruction};
|
|
1
|
+
var Xt=Object.defineProperty,Jt=Object.defineProperties;var Qt=Object.getOwnPropertyDescriptors;var rt=Object.getOwnPropertySymbols;var $t=Object.prototype.hasOwnProperty,en=Object.prototype.propertyIsEnumerable;var it=(e,t,n)=>t in e?Xt(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,ee=(e,t)=>{for(var n in t||(t={}))$t.call(t,n)&&it(e,n,t[n]);if(rt)for(var n of rt(t))en.call(t,n)&&it(e,n,t[n]);return e},ie=(e,t)=>Jt(e,Qt(t));import{PublicKey as cn}from"@solana/web3.js";import lt,{isBN as ft}from"bn.js";import{bits as Ur,BitStructure as Gr,blob as tn,Blob as Hr,cstr as zr,f32 as jr,f32be as Zr,f64 as Yr,f64be as Xr,greedy as Jr,Layout as nn,ns64 as Qr,ns64be as $r,nu64 as ei,nu64be as ti,offset as ni,s16 as ri,s16be as ii,s24 as oi,s24be as si,s32 as ai,s32be as ui,s40 as ci,s40be as li,s48 as fi,s48be as pi,s8 as mi,seq as rn,struct as di,Structure as on,u16 as sn,u16be as gi,u24 as hi,u24be as bi,u32 as yi,u32be as wi,u40 as Pi,u40be as Ti,u48 as xi,u48be as Bi,u8 as an,UInt as un,union as Ai,Union as Si,unionLayoutDiscriminator as ki,utf8 as Ni}from"@solana/buffer-layout";var We=nn,ot=on;var st=un;var at=an,ut=sn;var ct=rn;var oe=tn;var Oe=class extends We{constructor(n,r,i){super(n,i);this.blob=oe(n),this.signed=r}decode(n,r=0){let i=new lt(this.blob.decode(n,r),10,"le");return this.signed?i.fromTwos(this.span*8).clone():i}encode(n,r,i=0){return typeof n=="number"&&(n=new lt(n)),this.signed&&(n=n.toTwos(this.span*8)),this.blob.encode(n.toArrayLike(Buffer,"le",this.span),r,i)}};function te(e){return new st(1,e)}function S(e){return new Oe(8,!1,e)}var Te=class extends We{constructor(n,r,i,o){super(n.span,o);this.layout=n,this.decoder=r,this.encoder=i}decode(n,r){return this.decoder(this.layout.decode(n,r))}encode(n,r,i){return this.layout.encode(this.encoder(n),r,i)}getSpan(n,r){return this.layout.getSpan(n,r)}};function O(e){return new Te(oe(32),t=>new cn(t),t=>t.toBuffer(),e)}function pt(e){return new Te(at(),ln,fn,e)}function ln(e){if(e===0)return!1;if(e===1)return!0;throw new Error("Invalid bool: "+e)}function fn(e){return e?1:0}var Ve=class extends ot{decode(t,n){return super.decode(t,n)}};function z(e,t,n){return new Ve(e,t,n)}function qe(e,t,n){let r,i=typeof t=="number"?t:ft(t)?t.toNumber():new Proxy(t,{get(o,s){if(!r){let a=Reflect.get(o,"count");r=ft(a)?a.toNumber():a,Reflect.set(o,"count",r)}return Reflect.get(o,s)},set(o,s,a){return s==="count"&&(r=a),Reflect.set(o,s,a)}});return ct(e,i,n)}var Vi=z([oe(8),te("bump"),pt("disableCreatePool"),ut("index"),S("tradeFeeRate"),S("protocolFeeRate"),S("fundFeeRate"),S("createPoolFee"),O("protocolOwner"),O("fundOwner"),qe(S(),16)]),qi=z([oe(8),O("configId"),O("poolCreator"),O("vaultA"),O("vaultB"),O("mintLp"),O("mintA"),O("mintB"),O("mintProgramA"),O("mintProgramB"),O("observationId"),te("bump"),te("status"),te("lpDecimals"),te("mintDecimalA"),te("mintDecimalB"),S("lpAmount"),S("protocolFeesMintA"),S("protocolFeesMintB"),S("fundFeesMintA"),S("fundFeesMintB"),S("openTime"),qe(S(),32)]);import{TransactionInstruction as ge}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as tt,TOKEN_2022_PROGRAM_ID as Gt,ASSOCIATED_TOKEN_PROGRAM_ID as Sr}from"@solana/spl-token";import{get as mt,set as pn}from"lodash";import gt from"dayjs";import mn from"dayjs/plugin/utc";gt.extend(mn);var Ue=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 gt().utc().format("YYYY/MM/DD HH:mm:ss UTC")}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 n=t.map(r=>typeof r=="object"?JSON.stringify(r):r).join(", ");throw new Error(n)}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}},dt={},dn={};function F(e){let t=mt(dt,e);if(!t){let n=mt(dn,e);t=new Ue({name:e,logLevel:n}),pn(dt,e,t)}return t}import{PublicKey as zs}from"@solana/web3.js";import Zs from"bn.js";import Tr from"big.js";import ks from"bn.js";import W from"bn.js";var se=9e15,J=1e9,Ge="0123456789abcdef",Be="2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058",Ae="3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789",He={precision:20,rounding:4,modulo:1,toExpNeg:-7,toExpPos:21,minE:-se,maxE:se,crypto:!1},wt,j,y=!0,ke="[DecimalError] ",X=ke+"Invalid argument: ",Pt=ke+"Precision limit exceeded",Tt=ke+"crypto unavailable",xt="[object Decimal]",_=Math.floor,M=Math.pow,gn=/^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i,hn=/^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i,bn=/^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i,Bt=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,G=1e7,b=7,yn=9007199254740991,wn=Be.length-1,ze=Ae.length-1,m={toStringTag:xt};m.absoluteValue=m.abs=function(){var e=new this.constructor(this);return e.s<0&&(e.s=1),h(e)};m.ceil=function(){return h(new this.constructor(this),this.e+1,2)};m.clampedTo=m.clamp=function(e,t){var n,r=this,i=r.constructor;if(e=new i(e),t=new i(t),!e.s||!t.s)return new i(NaN);if(e.gt(t))throw Error(X+t);return n=r.cmp(e),n<0?e:r.cmp(t)>0?t:new i(r)};m.comparedTo=m.cmp=function(e){var t,n,r,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(r=s.length,i=a.length,t=0,n=r<i?r:i;t<n;++t)if(s[t]!==a[t])return s[t]>a[t]^c<0?1:-1;return r===i?0:r>i^c<0?1:-1};m.cosine=m.cos=function(){var e,t,n=this,r=n.constructor;return n.d?n.d[0]?(e=r.precision,t=r.rounding,r.precision=e+Math.max(n.e,n.sd())+b,r.rounding=1,n=Pn(r,Ct(r,n)),r.precision=e,r.rounding=t,h(j==2||j==3?n.neg():n,e,t,!0)):new r(1):new r(NaN)};m.cubeRoot=m.cbrt=function(){var e,t,n,r,i,o,s,a,c,u,l=this,f=l.constructor;if(!l.isFinite()||l.isZero())return new f(l);for(y=!1,o=l.s*M(l.s*l,1/3),!o||Math.abs(o)==1/0?(n=R(l.d),e=l.e,(o=(e-n.length+1)%3)&&(n+=o==1||o==-2?"0":"00"),o=M(n,1/3),e=_((e+1)/3)-(e%3==(e<0?-1:2)),o==1/0?n="5e"+e:(n=o.toExponential(),n=n.slice(0,n.indexOf("e")+1)+e),r=new f(n),r.s=l.s):r=new f(o.toString()),s=(e=f.precision)+3;;)if(a=r,c=a.times(a).times(a),u=c.plus(l),r=k(u.plus(l).times(a),u.plus(c),s+2,1),R(a.d).slice(0,s)===(n=R(r.d)).slice(0,s))if(n=n.slice(s-3,s+1),n=="9999"||!i&&n=="4999"){if(!i&&(h(a,e+1,0),a.times(a).times(a).eq(l))){r=a;break}s+=4,i=1}else{(!+n||!+n.slice(1)&&n.charAt(0)=="5")&&(h(r,e+1,1),t=!r.times(r).times(r).eq(l));break}return y=!0,h(r,e,f.rounding,t)};m.decimalPlaces=m.dp=function(){var e,t=this.d,n=NaN;if(t){if(e=t.length-1,n=(e-_(this.e/b))*b,e=t[e],e)for(;e%10==0;e/=10)n--;n<0&&(n=0)}return n};m.dividedBy=m.div=function(e){return k(this,new this.constructor(e))};m.dividedToIntegerBy=m.divToInt=function(e){var t=this,n=t.constructor;return h(k(t,new n(e),0,1,1),n.precision,n.rounding)};m.equals=m.eq=function(e){return this.cmp(e)===0};m.floor=function(){return h(new this.constructor(this),this.e+1,3)};m.greaterThan=m.gt=function(e){return this.cmp(e)>0};m.greaterThanOrEqualTo=m.gte=function(e){var t=this.cmp(e);return t==1||t===0};m.hyperbolicCosine=m.cosh=function(){var e,t,n,r,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;n=s.precision,r=s.rounding,s.precision=n+Math.max(o.e,o.sd())+4,s.rounding=1,i=o.d.length,i<32?(e=Math.ceil(i/3),t=(1/Ce(4,e)).toString()):(e=16,t="2.3283064365386962890625e-10"),o=ae(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 h(o,s.precision=n,s.rounding=r,!0)};m.hyperbolicSine=m.sinh=function(){var e,t,n,r,i=this,o=i.constructor;if(!i.isFinite()||i.isZero())return new o(i);if(t=o.precision,n=o.rounding,o.precision=t+Math.max(i.e,i.sd())+4,o.rounding=1,r=i.d.length,r<3)i=ae(o,2,i,i,!0);else{e=1.4*Math.sqrt(r),e=e>16?16:e|0,i=i.times(1/Ce(5,e)),i=ae(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=n,h(i,t,n,!0)};m.hyperbolicTangent=m.tanh=function(){var e,t,n=this,r=n.constructor;return n.isFinite()?n.isZero()?new r(n):(e=r.precision,t=r.rounding,r.precision=e+7,r.rounding=1,k(n.sinh(),n.cosh(),r.precision=e,r.rounding=t)):new r(n.s)};m.inverseCosine=m.acos=function(){var e,t=this,n=t.constructor,r=t.abs().cmp(1),i=n.precision,o=n.rounding;return r!==-1?r===0?t.isNeg()?U(n,i,o):new n(0):new n(NaN):t.isZero()?U(n,i+4,o).times(.5):(n.precision=i+6,n.rounding=1,t=t.asin(),e=U(n,i+4,o).times(.5),n.precision=i,n.rounding=o,e.minus(t))};m.inverseHyperbolicCosine=m.acosh=function(){var e,t,n=this,r=n.constructor;return n.lte(1)?new r(n.eq(1)?0:NaN):n.isFinite()?(e=r.precision,t=r.rounding,r.precision=e+Math.max(Math.abs(n.e),n.sd())+4,r.rounding=1,y=!1,n=n.times(n).minus(1).sqrt().plus(n),y=!0,r.precision=e,r.rounding=t,n.ln()):new r(n)};m.inverseHyperbolicSine=m.asinh=function(){var e,t,n=this,r=n.constructor;return!n.isFinite()||n.isZero()?new r(n):(e=r.precision,t=r.rounding,r.precision=e+2*Math.max(Math.abs(n.e),n.sd())+6,r.rounding=1,y=!1,n=n.times(n).plus(1).sqrt().plus(n),y=!0,r.precision=e,r.rounding=t,n.ln())};m.inverseHyperbolicTangent=m.atanh=function(){var e,t,n,r,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,r=i.sd(),Math.max(r,e)<2*-i.e-1?h(new o(i),e,t,!0):(o.precision=n=r-i.e,i=k(i.plus(1),new o(1).minus(i),n+e,1),o.precision=e+4,o.rounding=1,i=i.ln(),o.precision=e,o.rounding=t,i.times(.5))):new o(NaN)};m.inverseSine=m.asin=function(){var e,t,n,r,i=this,o=i.constructor;return i.isZero()?new o(i):(t=i.abs().cmp(1),n=o.precision,r=o.rounding,t!==-1?t===0?(e=U(o,n+4,r).times(.5),e.s=i.s,e):new o(NaN):(o.precision=n+6,o.rounding=1,i=i.div(new o(1).minus(i.times(i)).sqrt().plus(1)).atan(),o.precision=n,o.rounding=r,i.times(2)))};m.inverseTangent=m.atan=function(){var e,t,n,r,i,o,s,a,c,u=this,l=u.constructor,f=l.precision,p=l.rounding;if(u.isFinite()){if(u.isZero())return new l(u);if(u.abs().eq(1)&&f+4<=ze)return s=U(l,f+4,p).times(.25),s.s=u.s,s}else{if(!u.s)return new l(NaN);if(f+4<=ze)return s=U(l,f+4,p).times(.5),s.s=u.s,s}for(l.precision=a=f+10,l.rounding=1,n=Math.min(28,a/b+2|0),e=n;e;--e)u=u.div(u.times(u).plus(1).sqrt().plus(1));for(y=!1,t=Math.ceil(a/b),r=1,c=u.times(u),s=new l(u),i=u;e!==-1;)if(i=i.times(c),o=s.minus(i.div(r+=2)),i=i.times(c),s=o.plus(i.div(r+=2)),s.d[t]!==void 0)for(e=t;s.d[e]===o.d[e]&&e--;);return n&&(s=s.times(2<<n-1)),y=!0,h(s,l.precision=f,l.rounding=p,!0)};m.isFinite=function(){return!!this.d};m.isInteger=m.isInt=function(){return!!this.d&&_(this.e/b)>this.d.length-2};m.isNaN=function(){return!this.s};m.isNegative=m.isNeg=function(){return this.s<0};m.isPositive=m.isPos=function(){return this.s>0};m.isZero=function(){return!!this.d&&this.d[0]===0};m.lessThan=m.lt=function(e){return this.cmp(e)<0};m.lessThanOrEqualTo=m.lte=function(e){return this.cmp(e)<1};m.logarithm=m.log=function(e){var t,n,r,i,o,s,a,c,u=this,l=u.constructor,f=l.precision,p=l.rounding,d=5;if(e==null)e=new l(10),t=!0;else{if(e=new l(e),n=e.d,e.s<0||!n||!n[0]||e.eq(1))return new l(NaN);t=e.eq(10)}if(n=u.d,u.s<0||!n||!n[0]||u.eq(1))return new l(n&&!n[0]?-1/0:u.s!=1?NaN:n?0:1/0);if(t)if(n.length>1)o=!0;else{for(i=n[0];i%10===0;)i/=10;o=i!==1}if(y=!1,a=f+d,s=Y(u,a),r=t?Se(l,a+10):Y(e,a),c=k(s,r,a,1),fe(c.d,i=f,p))do if(a+=10,s=Y(u,a),r=t?Se(l,a+10):Y(e,a),c=k(s,r,a,1),!o){+R(c.d).slice(i+1,i+15)+1==1e14&&(c=h(c,f+1,0));break}while(fe(c.d,i+=10,p));return y=!0,h(c,f,p)};m.minus=m.sub=function(e){var t,n,r,i,o,s,a,c,u,l,f,p,d=this,w=d.constructor;if(e=new w(e),!d.d||!e.d)return!d.s||!e.s?e=new w(NaN):d.d?e.s=-e.s:e=new w(e.d||d.s!==e.s?d:NaN),e;if(d.s!=e.s)return e.s=-e.s,d.plus(e);if(u=d.d,p=e.d,a=w.precision,c=w.rounding,!u[0]||!p[0]){if(p[0])e.s=-e.s;else if(u[0])e=new w(d);else return new w(c===3?-0:0);return y?h(e,a,c):e}if(n=_(e.e/b),l=_(d.e/b),u=u.slice(),o=l-n,o){for(f=o<0,f?(t=u,o=-o,s=p.length):(t=p,n=l,s=u.length),r=Math.max(Math.ceil(a/b),s)+2,o>r&&(o=r,t.length=1),t.reverse(),r=o;r--;)t.push(0);t.reverse()}else{for(r=u.length,s=p.length,f=r<s,f&&(s=r),r=0;r<s;r++)if(u[r]!=p[r]){f=u[r]<p[r];break}o=0}for(f&&(t=u,u=p,p=t,e.s=-e.s),s=u.length,r=p.length-s;r>0;--r)u[s++]=0;for(r=p.length;r>o;){if(u[--r]<p[r]){for(i=r;i&&u[--i]===0;)u[i]=G-1;--u[i],u[r]+=G}u[r]-=p[r]}for(;u[--s]===0;)u.pop();for(;u[0]===0;u.shift())--n;return u[0]?(e.d=u,e.e=Ne(u,n),y?h(e,a,c):e):new w(c===3?-0:0)};m.modulo=m.mod=function(e){var t,n=this,r=n.constructor;return e=new r(e),!n.d||!e.s||e.d&&!e.d[0]?new r(NaN):!e.d||n.d&&!n.d[0]?h(new r(n),r.precision,r.rounding):(y=!1,r.modulo==9?(t=k(n,e.abs(),0,3,1),t.s*=e.s):t=k(n,e,0,r.modulo,1),t=t.times(e),y=!0,n.minus(t))};m.naturalExponential=m.exp=function(){return je(this)};m.naturalLogarithm=m.ln=function(){return Y(this)};m.negated=m.neg=function(){var e=new this.constructor(this);return e.s=-e.s,h(e)};m.plus=m.add=function(e){var t,n,r,i,o,s,a,c,u,l,f=this,p=f.constructor;if(e=new p(e),!f.d||!e.d)return!f.s||!e.s?e=new p(NaN):f.d||(e=new p(e.d||f.s===e.s?f:NaN)),e;if(f.s!=e.s)return e.s=-e.s,f.minus(e);if(u=f.d,l=e.d,a=p.precision,c=p.rounding,!u[0]||!l[0])return l[0]||(e=new p(f)),y?h(e,a,c):e;if(o=_(f.e/b),r=_(e.e/b),u=u.slice(),i=o-r,i){for(i<0?(n=u,i=-i,s=l.length):(n=l,r=o,s=u.length),o=Math.ceil(a/b),s=o>s?o+1:s+1,i>s&&(i=s,n.length=1),n.reverse();i--;)n.push(0);n.reverse()}for(s=u.length,i=l.length,s-i<0&&(i=s,n=l,l=u,u=n),t=0;i;)t=(u[--i]=u[i]+l[i]+t)/G|0,u[i]%=G;for(t&&(u.unshift(t),++r),s=u.length;u[--s]==0;)u.pop();return e.d=u,e.e=Ne(u,r),y?h(e,a,c):e};m.precision=m.sd=function(e){var t,n=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(X+e);return n.d?(t=At(n.d),e&&n.e+1>t&&(t=n.e+1)):t=NaN,t};m.round=function(){var e=this,t=e.constructor;return h(new t(e),e.e+1,t.rounding)};m.sine=m.sin=function(){var e,t,n=this,r=n.constructor;return n.isFinite()?n.isZero()?new r(n):(e=r.precision,t=r.rounding,r.precision=e+Math.max(n.e,n.sd())+b,r.rounding=1,n=xn(r,Ct(r,n)),r.precision=e,r.rounding=t,h(j>2?n.neg():n,e,t,!0)):new r(NaN)};m.squareRoot=m.sqrt=function(){var e,t,n,r,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(y=!1,u=Math.sqrt(+s),u==0||u==1/0?(t=R(a),(t.length+c)%2==0&&(t+="0"),u=Math.sqrt(t),c=_((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),r=new l(t)):r=new l(u.toString()),n=(c=l.precision)+3;;)if(o=r,r=o.plus(k(s,o,n+2,1)).times(.5),R(o.d).slice(0,n)===(t=R(r.d)).slice(0,n))if(t=t.slice(n-3,n+1),t=="9999"||!i&&t=="4999"){if(!i&&(h(o,c+1,0),o.times(o).eq(s))){r=o;break}n+=4,i=1}else{(!+t||!+t.slice(1)&&t.charAt(0)=="5")&&(h(r,c+1,1),e=!r.times(r).eq(s));break}return y=!0,h(r,c,l.rounding,e)};m.tangent=m.tan=function(){var e,t,n=this,r=n.constructor;return n.isFinite()?n.isZero()?new r(n):(e=r.precision,t=r.rounding,r.precision=e+10,r.rounding=1,n=n.sin(),n.s=1,n=k(n,new r(1).minus(n.times(n)).sqrt(),e+10,0),r.precision=e,r.rounding=t,h(j==2||j==4?n.neg():n,e,t,!0)):new r(NaN)};m.times=m.mul=function(e){var t,n,r,i,o,s,a,c,u,l=this,f=l.constructor,p=l.d,d=(e=new f(e)).d;if(e.s*=l.s,!p||!p[0]||!d||!d[0])return new f(!e.s||p&&!p[0]&&!d||d&&!d[0]&&!p?NaN:!p||!d?e.s/0:e.s*0);for(n=_(l.e/b)+_(e.e/b),c=p.length,u=d.length,c<u&&(o=p,p=d,d=o,s=c,c=u,u=s),o=[],s=c+u,r=s;r--;)o.push(0);for(r=u;--r>=0;){for(t=0,i=c+r;i>r;)a=o[i]+d[r]*p[i-r-1]+t,o[i--]=a%G|0,t=a/G|0;o[i]=(o[i]+t)%G|0}for(;!o[--s];)o.pop();return t?++n:o.shift(),e.d=o,e.e=Ne(o,n),y?h(e,f.precision,f.rounding):e};m.toBinary=function(e,t){return Ye(this,2,e,t)};m.toDecimalPlaces=m.toDP=function(e,t){var n=this,r=n.constructor;return n=new r(n),e===void 0?n:(v(e,0,J),t===void 0?t=r.rounding:v(t,0,8),h(n,e+n.e+1,t))};m.toExponential=function(e,t){var n,r=this,i=r.constructor;return e===void 0?n=H(r,!0):(v(e,0,J),t===void 0?t=i.rounding:v(t,0,8),r=h(new i(r),e+1,t),n=H(r,!0,e+1)),r.isNeg()&&!r.isZero()?"-"+n:n};m.toFixed=function(e,t){var n,r,i=this,o=i.constructor;return e===void 0?n=H(i):(v(e,0,J),t===void 0?t=o.rounding:v(t,0,8),r=h(new o(i),e+i.e+1,t),n=H(r,!1,e+r.e+1)),i.isNeg()&&!i.isZero()?"-"+n:n};m.toFraction=function(e){var t,n,r,i,o,s,a,c,u,l,f,p,d=this,w=d.d,g=d.constructor;if(!w)return new g(d);if(u=n=new g(1),r=c=new g(0),t=new g(r),o=t.e=At(w)-d.e-1,s=o%b,t.d[0]=M(10,s<0?b+s:s),e==null)e=o>0?t:u;else{if(a=new g(e),!a.isInt()||a.lt(u))throw Error(X+a);e=a.gt(t)?o>0?t:u:a}for(y=!1,a=new g(R(w)),l=g.precision,g.precision=o=w.length*b*2;f=k(a,t,0,1,1),i=n.plus(f.times(r)),i.cmp(e)!=1;)n=r,r=i,i=u,u=c.plus(f.times(i)),c=i,i=t,t=a.minus(f.times(i)),a=i;return i=k(e.minus(n),r,0,1,1),c=c.plus(i.times(u)),n=n.plus(i.times(r)),c.s=u.s=d.s,p=k(u,r,o,1).minus(d).abs().cmp(k(c,n,o,1).minus(d).abs())<1?[u,r]:[c,n],g.precision=l,y=!0,p};m.toHexadecimal=m.toHex=function(e,t){return Ye(this,16,e,t)};m.toNearest=function(e,t){var n=this,r=n.constructor;if(n=new r(n),e==null){if(!n.d)return n;e=new r(1),t=r.rounding}else{if(e=new r(e),t===void 0?t=r.rounding:v(t,0,8),!n.d)return e.s?n:e;if(!e.d)return e.s&&(e.s=n.s),e}return e.d[0]?(y=!1,n=k(n,e,0,t,1).times(e),y=!0,h(n)):(e.s=n.s,n=e),n};m.toNumber=function(){return+this};m.toOctal=function(e,t){return Ye(this,8,e,t)};m.toPower=m.pow=function(e){var t,n,r,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(M(+a,u));if(a=new c(a),a.eq(1))return a;if(r=c.precision,o=c.rounding,e.eq(1))return h(a,r,o);if(t=_(e.e/b),t>=e.d.length-1&&(n=u<0?-u:u)<=yn)return i=St(c,a,n,r),e.s<0?new c(1).div(i):h(i,r,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 n=M(+a,u),t=n==0||!isFinite(n)?_(u*(Math.log("0."+R(a.d))/Math.LN10+a.e+1)):new c(n+"").e,t>c.maxE+1||t<c.minE-1?new c(t>0?s/0:0):(y=!1,c.rounding=a.s=1,n=Math.min(12,(t+"").length),i=je(e.times(Y(a,r+n)),r),i.d&&(i=h(i,r+5,1),fe(i.d,r,o)&&(t=r+10,i=h(je(e.times(Y(a,t+n)),t),t+5,1),+R(i.d).slice(r+1,r+15)+1==1e14&&(i=h(i,r+1,0)))),i.s=s,y=!0,c.rounding=o,h(i,r,o))};m.toPrecision=function(e,t){var n,r=this,i=r.constructor;return e===void 0?n=H(r,r.e<=i.toExpNeg||r.e>=i.toExpPos):(v(e,1,J),t===void 0?t=i.rounding:v(t,0,8),r=h(new i(r),e,t),n=H(r,e<=r.e||r.e<=i.toExpNeg,e)),r.isNeg()&&!r.isZero()?"-"+n:n};m.toSignificantDigits=m.toSD=function(e,t){var n=this,r=n.constructor;return e===void 0?(e=r.precision,t=r.rounding):(v(e,1,J),t===void 0?t=r.rounding:v(t,0,8)),h(new r(n),e,t)};m.toString=function(){var e=this,t=e.constructor,n=H(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()&&!e.isZero()?"-"+n:n};m.truncated=m.trunc=function(){return h(new this.constructor(this),this.e+1,1)};m.valueOf=m.toJSON=function(){var e=this,t=e.constructor,n=H(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()?"-"+n:n};function R(e){var t,n,r,i=e.length-1,o="",s=e[0];if(i>0){for(o+=s,t=1;t<i;t++)r=e[t]+"",n=b-r.length,n&&(o+=Z(n)),o+=r;s=e[t],r=s+"",n=b-r.length,n&&(o+=Z(n))}else if(s===0)return"0";for(;s%10===0;)s/=10;return o+s}function v(e,t,n){if(e!==~~e||e<t||e>n)throw Error(X+e)}function fe(e,t,n,r){var i,o,s,a;for(o=e[0];o>=10;o/=10)--t;return--t<0?(t+=b,i=0):(i=Math.ceil((t+1)/b),t%=b),o=M(10,b-t),a=e[i]%o|0,r==null?t<3?(t==0?a=a/100|0:t==1&&(a=a/10|0),s=n<4&&a==99999||n>3&&a==49999||a==5e4||a==0):s=(n<4&&a+1==o||n>3&&a+1==o/2)&&(e[i+1]/o/100|0)==M(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=(r||n<4)&&a==9999||!r&&n>3&&a==4999):s=((r||n<4)&&a+1==o||!r&&n>3&&a+1==o/2)&&(e[i+1]/o/1e3|0)==M(10,t-3)-1,s}function xe(e,t,n){for(var r,i=[0],o,s=0,a=e.length;s<a;){for(o=i.length;o--;)i[o]*=t;for(i[0]+=Ge.indexOf(e.charAt(s++)),r=0;r<i.length;r++)i[r]>n-1&&(i[r+1]===void 0&&(i[r+1]=0),i[r+1]+=i[r]/n|0,i[r]%=n)}return i.reverse()}function Pn(e,t){var n,r,i;if(t.isZero())return t;r=t.d.length,r<32?(n=Math.ceil(r/3),i=(1/Ce(4,n)).toString()):(n=16,i="2.3283064365386962890625e-10"),e.precision+=n,t=ae(e,1,t.times(i),new e(1));for(var o=n;o--;){var s=t.times(t);t=s.times(s).minus(s).times(8).plus(1)}return e.precision-=n,t}var k=function(){function e(r,i,o){var s,a=0,c=r.length;for(r=r.slice();c--;)s=r[c]*i+a,r[c]=s%o|0,a=s/o|0;return a&&r.unshift(a),r}function t(r,i,o,s){var a,c;if(o!=s)c=o>s?1:-1;else for(a=c=0;a<o;a++)if(r[a]!=i[a]){c=r[a]>i[a]?1:-1;break}return c}function n(r,i,o,s){for(var a=0;o--;)r[o]-=a,a=r[o]<i[o]?1:0,r[o]=a*s+r[o]-i[o];for(;!r[0]&&r.length>1;)r.shift()}return function(r,i,o,s,a,c){var u,l,f,p,d,w,g,A,x,K,B,E,re,V,_e,ye,le,Fe,q,we,Pe=r.constructor,ve=r.s==i.s?1:-1,D=r.d,N=i.d;if(!D||!D[0]||!N||!N[0])return new Pe(!r.s||!i.s||(D?N&&D[0]==N[0]:!N)?NaN:D&&D[0]==0||!N?ve*0:ve/0);for(c?(d=1,l=r.e-i.e):(c=G,d=b,l=_(r.e/d)-_(i.e/d)),q=N.length,le=D.length,x=new Pe(ve),K=x.d=[],f=0;N[f]==(D[f]||0);f++);if(N[f]>(D[f]||0)&&l--,o==null?(V=o=Pe.precision,s=Pe.rounding):a?V=o+(r.e-i.e)+1:V=o,V<0)K.push(1),w=!0;else{if(V=V/d+2|0,f=0,q==1){for(p=0,N=N[0],V++;(f<le||p)&&V--;f++)_e=p*c+(D[f]||0),K[f]=_e/N|0,p=_e%N|0;w=p||f<le}else{for(p=c/(N[0]+1)|0,p>1&&(N=e(N,p,c),D=e(D,p,c),q=N.length,le=D.length),ye=q,B=D.slice(0,q),E=B.length;E<q;)B[E++]=0;we=N.slice(),we.unshift(0),Fe=N[0],N[1]>=c/2&&++Fe;do p=0,u=t(N,B,q,E),u<0?(re=B[0],q!=E&&(re=re*c+(B[1]||0)),p=re/Fe|0,p>1?(p>=c&&(p=c-1),g=e(N,p,c),A=g.length,E=B.length,u=t(g,B,A,E),u==1&&(p--,n(g,q<A?we:N,A,c))):(p==0&&(u=p=1),g=N.slice()),A=g.length,A<E&&g.unshift(0),n(B,g,E,c),u==-1&&(E=B.length,u=t(N,B,q,E),u<1&&(p++,n(B,q<E?we:N,E,c))),E=B.length):u===0&&(p++,B=[0]),K[f++]=p,u&&B[0]?B[E++]=D[ye]||0:(B=[D[ye]],E=1);while((ye++<le||B[0]!==void 0)&&V--);w=B[0]!==void 0}K[0]||K.shift()}if(d==1)x.e=l,wt=w;else{for(f=1,p=K[0];p>=10;p/=10)f++;x.e=f+l*d-1,h(x,a?o+x.e+1:o,s,w)}return x}}();function h(e,t,n,r){var i,o,s,a,c,u,l,f,p,d=e.constructor;e:if(t!=null){if(f=e.d,!f)return e;for(i=1,a=f[0];a>=10;a/=10)i++;if(o=t-i,o<0)o+=b,s=t,l=f[p=0],c=l/M(10,i-s-1)%10|0;else if(p=Math.ceil((o+1)/b),a=f.length,p>=a)if(r){for(;a++<=p;)f.push(0);l=c=0,i=1,o%=b,s=o-b+1}else break e;else{for(l=a=f[p],i=1;a>=10;a/=10)i++;o%=b,s=o-b+i,c=s<0?0:l/M(10,i-s-1)%10|0}if(r=r||t<0||f[p+1]!==void 0||(s<0?l:l%M(10,i-s-1)),u=n<4?(c||r)&&(n==0||n==(e.s<0?3:2)):c>5||c==5&&(n==4||r||n==6&&(o>0?s>0?l/M(10,i-s):0:f[p-1])%10&1||n==(e.s<0?8:7)),t<1||!f[0])return f.length=0,u?(t-=e.e+1,f[0]=M(10,(b-t%b)%b),e.e=-t||0):f[0]=e.e=0,e;if(o==0?(f.length=p,a=1,p--):(f.length=p+1,a=M(10,b-o),f[p]=s>0?(l/M(10,i-s)%M(10,s)|0)*a:0),u)for(;;)if(p==0){for(o=1,s=f[0];s>=10;s/=10)o++;for(s=f[0]+=a,a=1;s>=10;s/=10)a++;o!=a&&(e.e++,f[0]==G&&(f[0]=1));break}else{if(f[p]+=a,f[p]!=G)break;f[p--]=0,a=1}for(o=f.length;f[--o]===0;)f.pop()}return y&&(e.e>d.maxE?(e.d=null,e.e=NaN):e.e<d.minE&&(e.e=0,e.d=[0])),e}function H(e,t,n){if(!e.isFinite())return Nt(e);var r,i=e.e,o=R(e.d),s=o.length;return t?(n&&(r=n-s)>0?o=o.charAt(0)+"."+o.slice(1)+Z(r):s>1&&(o=o.charAt(0)+"."+o.slice(1)),o=o+(e.e<0?"e":"e+")+e.e):i<0?(o="0."+Z(-i-1)+o,n&&(r=n-s)>0&&(o+=Z(r))):i>=s?(o+=Z(i+1-s),n&&(r=n-i-1)>0&&(o=o+"."+Z(r))):((r=i+1)<s&&(o=o.slice(0,r)+"."+o.slice(r)),n&&(r=n-s)>0&&(i+1===s&&(o+="."),o+=Z(r))),o}function Ne(e,t){var n=e[0];for(t*=b;n>=10;n/=10)t++;return t}function Se(e,t,n){if(t>wn)throw y=!0,n&&(e.precision=n),Error(Pt);return h(new e(Be),t,1,!0)}function U(e,t,n){if(t>ze)throw Error(Pt);return h(new e(Ae),t,n,!0)}function At(e){var t=e.length-1,n=t*b+1;if(t=e[t],t){for(;t%10==0;t/=10)n--;for(t=e[0];t>=10;t/=10)n++}return n}function Z(e){for(var t="";e--;)t+="0";return t}function St(e,t,n,r){var i,o=new e(1),s=Math.ceil(r/b+4);for(y=!1;;){if(n%2&&(o=o.times(t),bt(o.d,s)&&(i=!0)),n=_(n/2),n===0){n=o.d.length-1,i&&o.d[n]===0&&++o.d[n];break}t=t.times(t),bt(t.d,s)}return y=!0,o}function ht(e){return e.d[e.d.length-1]&1}function kt(e,t,n){for(var r,i=new e(t[0]),o=0;++o<t.length;)if(r=new e(t[o]),r.s)i[n](r)&&(i=r);else{i=r;break}return i}function je(e,t){var n,r,i,o,s,a,c,u=0,l=0,f=0,p=e.constructor,d=p.rounding,w=p.precision;if(!e.d||!e.d[0]||e.e>17)return new p(e.d?e.d[0]?e.s<0?0:1/0:1:e.s?e.s<0?0:e:0/0);for(t==null?(y=!1,c=w):c=t,a=new p(.03125);e.e>-2;)e=e.times(a),f+=5;for(r=Math.log(M(2,f))/Math.LN10*2+5|0,c+=r,n=o=s=new p(1),p.precision=c;;){if(o=h(o.times(e),c,1),n=n.times(++l),a=s.plus(k(o,n,c,1)),R(a.d).slice(0,c)===R(s.d).slice(0,c)){for(i=f;i--;)s=h(s.times(s),c,1);if(t==null)if(u<3&&fe(s.d,c-r,d,u))p.precision=c+=10,n=o=a=new p(1),l=0,u++;else return h(s,p.precision=w,d,y=!0);else return p.precision=w,s}s=a}}function Y(e,t){var n,r,i,o,s,a,c,u,l,f,p,d=1,w=10,g=e,A=g.d,x=g.constructor,K=x.rounding,B=x.precision;if(g.s<0||!A||!A[0]||!g.e&&A[0]==1&&A.length==1)return new x(A&&!A[0]?-1/0:g.s!=1?NaN:A?0:g);if(t==null?(y=!1,l=B):l=t,x.precision=l+=w,n=R(A),r=n.charAt(0),Math.abs(o=g.e)<15e14){for(;r<7&&r!=1||r==1&&n.charAt(1)>3;)g=g.times(e),n=R(g.d),r=n.charAt(0),d++;o=g.e,r>1?(g=new x("0."+n),o++):g=new x(r+"."+n.slice(1))}else return u=Se(x,l+2,B).times(o+""),g=Y(new x(r+"."+n.slice(1)),l-w).plus(u),x.precision=B,t==null?h(g,B,K,y=!0):g;for(f=g,c=s=g=k(g.minus(1),g.plus(1),l,1),p=h(g.times(g),l,1),i=3;;){if(s=h(s.times(p),l,1),u=c.plus(k(s,new x(i),l,1)),R(u.d).slice(0,l)===R(c.d).slice(0,l))if(c=c.times(2),o!==0&&(c=c.plus(Se(x,l+2,B).times(o+""))),c=k(c,new x(d),l,1),t==null)if(fe(c.d,l-w,K,a))x.precision=l+=w,u=s=g=k(f.minus(1),f.plus(1),l,1),p=h(g.times(g),l,1),i=a=1;else return h(c,x.precision=B,K,y=!0);else return x.precision=B,c;c=u,i+=2}}function Nt(e){return String(e.s*e.s/0)}function Ze(e,t){var n,r,i;for((n=t.indexOf("."))>-1&&(t=t.replace(".","")),(r=t.search(/e/i))>0?(n<0&&(n=r),n+=+t.slice(r+1),t=t.substring(0,r)):n<0&&(n=t.length),r=0;t.charCodeAt(r)===48;r++);for(i=t.length;t.charCodeAt(i-1)===48;--i);if(t=t.slice(r,i),t){if(i-=r,e.e=n=n-r-1,e.d=[],r=(n+1)%b,n<0&&(r+=b),r<i){for(r&&e.d.push(+t.slice(0,r)),i-=b;r<i;)e.d.push(+t.slice(r,r+=b));t=t.slice(r),r=b-t.length}else r-=i;for(;r--;)t+="0";e.d.push(+t),y&&(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 Tn(e,t){var n,r,i,o,s,a,c,u,l;if(t.indexOf("_")>-1){if(t=t.replace(/(\d)_(?=\d)/g,"$1"),Bt.test(t))return Ze(e,t)}else if(t==="Infinity"||t==="NaN")return+t||(e.s=NaN),e.e=NaN,e.d=null,e;if(hn.test(t))n=16,t=t.toLowerCase();else if(gn.test(t))n=2;else if(bn.test(t))n=8;else throw Error(X+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,r=e.constructor,s&&(t=t.replace(".",""),a=t.length,o=a-o,i=St(r,new r(n),o,o*2)),u=xe(t,n,G),l=u.length-1,o=l;u[o]===0;--o)u.pop();return o<0?new r(e.s*0):(e.e=Ne(u,l),e.d=u,y=!1,s&&(e=k(e,i,a*4)),c&&(e=e.times(Math.abs(c)<54?M(2,c):Le.pow(2,c))),y=!0,e)}function xn(e,t){var n,r=t.d.length;if(r<3)return t.isZero()?t:ae(e,2,t,t);n=1.4*Math.sqrt(r),n=n>16?16:n|0,t=t.times(1/Ce(5,n)),t=ae(e,2,t,t);for(var i,o=new e(5),s=new e(16),a=new e(20);n--;)i=t.times(t),t=t.times(o.plus(i.times(s.times(i).minus(a))));return t}function ae(e,t,n,r,i){var o,s,a,c,u=1,l=e.precision,f=Math.ceil(l/b);for(y=!1,c=n.times(n),a=new e(r);;){if(s=k(a.times(c),new e(t++*t++),l,1),a=i?r.plus(s):r.minus(s),r=k(s.times(c),new e(t++*t++),l,1),s=a.plus(r),s.d[f]!==void 0){for(o=f;s.d[o]===a.d[o]&&o--;);if(o==-1)break}o=a,a=r,r=s,s=o,u++}return y=!0,s.d.length=f+1,s}function Ce(e,t){for(var n=e;--t;)n*=e;return n}function Ct(e,t){var n,r=t.s<0,i=U(e,e.precision,1),o=i.times(.5);if(t=t.abs(),t.lte(o))return j=r?4:1,t;if(n=t.divToInt(i),n.isZero())j=r?3:2;else{if(t=t.minus(n.times(i)),t.lte(o))return j=ht(n)?r?2:3:r?4:1,t;j=ht(n)?r?1:4:r?3:2}return t.minus(i).abs()}function Ye(e,t,n,r){var i,o,s,a,c,u,l,f,p,d=e.constructor,w=n!==void 0;if(w?(v(n,1,J),r===void 0?r=d.rounding:v(r,0,8)):(n=d.precision,r=d.rounding),!e.isFinite())l=Nt(e);else{for(l=H(e),s=l.indexOf("."),w?(i=2,t==16?n=n*4-3:t==8&&(n=n*3-2)):i=t,s>=0&&(l=l.replace(".",""),p=new d(1),p.e=l.length-s,p.d=xe(H(p),10,i),p.e=p.d.length),f=xe(l,10,i),o=c=f.length;f[--c]==0;)f.pop();if(!f[0])l=w?"0p+0":"0";else{if(s<0?o--:(e=new d(e),e.d=f,e.e=o,e=k(e,p,n,r,0,i),f=e.d,o=e.e,u=wt),s=f[n],a=i/2,u=u||f[n+1]!==void 0,u=r<4?(s!==void 0||u)&&(r===0||r===(e.s<0?3:2)):s>a||s===a&&(r===4||u||r===6&&f[n-1]&1||r===(e.s<0?8:7)),f.length=n,u)for(;++f[--n]>i-1;)f[n]=0,n||(++o,f.unshift(1));for(c=f.length;!f[c-1];--c);for(s=0,l="";s<c;s++)l+=Ge.charAt(f[s]);if(w){if(c>1)if(t==16||t==8){for(s=t==16?4:3,--c;c%s;c++)l+="0";for(f=xe(l,i,t),c=f.length;!f[c-1];--c);for(s=1,l="1.";s<c;s++)l+=Ge.charAt(f[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 bt(e,t){if(e.length>t)return e.length=t,!0}function Bn(e){return new this(e).abs()}function An(e){return new this(e).acos()}function Sn(e){return new this(e).acosh()}function kn(e,t){return new this(e).plus(t)}function Nn(e){return new this(e).asin()}function Cn(e){return new this(e).asinh()}function Ln(e){return new this(e).atan()}function In(e){return new this(e).atanh()}function Kn(e,t){e=new this(e),t=new this(t);var n,r=this.precision,i=this.rounding,o=r+4;return!e.s||!t.s?n=new this(NaN):!e.d&&!t.d?(n=U(this,o,1).times(t.s>0?.25:.75),n.s=e.s):!t.d||e.isZero()?(n=t.s<0?U(this,r,i):new this(0),n.s=e.s):!e.d||t.isZero()?(n=U(this,o,1).times(.5),n.s=e.s):t.s<0?(this.precision=o,this.rounding=1,n=this.atan(k(e,t,o,1)),t=U(this,o,1),this.precision=r,this.rounding=i,n=e.s<0?n.minus(t):n.plus(t)):n=this.atan(k(e,t,o,1)),n}function En(e){return new this(e).cbrt()}function Mn(e){return h(e=new this(e),e.e+1,2)}function Rn(e,t,n){return new this(e).clamp(t,n)}function Dn(e){if(!e||typeof e!="object")throw Error(ke+"Object expected");var t,n,r,i=e.defaults===!0,o=["precision",1,J,"rounding",0,8,"toExpNeg",-se,0,"toExpPos",0,se,"maxE",0,se,"minE",-se,0,"modulo",0,9];for(t=0;t<o.length;t+=3)if(n=o[t],i&&(this[n]=He[n]),(r=e[n])!==void 0)if(_(r)===r&&r>=o[t+1]&&r<=o[t+2])this[n]=r;else throw Error(X+n+": "+r);if(n="crypto",i&&(this[n]=He[n]),(r=e[n])!==void 0)if(r===!0||r===!1||r===0||r===1)if(r)if(typeof crypto<"u"&&crypto&&(crypto.getRandomValues||crypto.randomBytes))this[n]=!0;else throw Error(Tt);else this[n]=!1;else throw Error(X+n+": "+r);return this}function _n(e){return new this(e).cos()}function Fn(e){return new this(e).cosh()}function Lt(e){var t,n,r;function i(o){var s,a,c,u=this;if(!(u instanceof i))return new i(o);if(u.constructor=i,yt(o)){u.s=o.s,y?!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++;y?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 Ze(u,o.toString())}else if(c!=="string")throw Error(X+o);return(a=o.charCodeAt(0))===45?(o=o.slice(1),u.s=-1):(a===43&&(o=o.slice(1)),u.s=1),Bt.test(o)?Ze(u,o):Tn(u,o)}if(i.prototype=m,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=Lt,i.isDecimal=yt,i.abs=Bn,i.acos=An,i.acosh=Sn,i.add=kn,i.asin=Nn,i.asinh=Cn,i.atan=Ln,i.atanh=In,i.atan2=Kn,i.cbrt=En,i.ceil=Mn,i.clamp=Rn,i.cos=_n,i.cosh=Fn,i.div=vn,i.exp=Wn,i.floor=On,i.hypot=Vn,i.ln=qn,i.log=Un,i.log10=Hn,i.log2=Gn,i.max=zn,i.min=jn,i.mod=Zn,i.mul=Yn,i.pow=Xn,i.random=Jn,i.round=Qn,i.sign=$n,i.sin=er,i.sinh=tr,i.sqrt=nr,i.sub=rr,i.sum=ir,i.tan=or,i.tanh=sr,i.trunc=ar,e===void 0&&(e={}),e&&e.defaults!==!0)for(r=["precision","rounding","toExpNeg","toExpPos","maxE","minE","modulo","crypto"],t=0;t<r.length;)e.hasOwnProperty(n=r[t++])||(e[n]=this[n]);return i.config(e),i}function vn(e,t){return new this(e).div(t)}function Wn(e){return new this(e).exp()}function On(e){return h(e=new this(e),e.e+1,3)}function Vn(){var e,t,n=new this(0);for(y=!1,e=0;e<arguments.length;)if(t=new this(arguments[e++]),t.d)n.d&&(n=n.plus(t.times(t)));else{if(t.s)return y=!0,new this(1/0);n=t}return y=!0,n.sqrt()}function yt(e){return e instanceof Le||e&&e.toStringTag===xt||!1}function qn(e){return new this(e).ln()}function Un(e,t){return new this(e).log(t)}function Gn(e){return new this(e).log(2)}function Hn(e){return new this(e).log(10)}function zn(){return kt(this,arguments,"lt")}function jn(){return kt(this,arguments,"gt")}function Zn(e,t){return new this(e).mod(t)}function Yn(e,t){return new this(e).mul(t)}function Xn(e,t){return new this(e).pow(t)}function Jn(e){var t,n,r,i,o=0,s=new this(1),a=[];if(e===void 0?e=this.precision:v(e,1,J),r=Math.ceil(e/b),this.crypto)if(crypto.getRandomValues)for(t=crypto.getRandomValues(new Uint32Array(r));o<r;)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(r*=4);o<r;)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=r/4}else throw Error(Tt);else for(;o<r;)a[o++]=Math.random()*1e7|0;for(r=a[--o],e%=b,r&&e&&(i=M(10,b-e),a[o]=(r/i|0)*i);a[o]===0;o--)a.pop();if(o<0)n=0,a=[0];else{for(n=-1;a[0]===0;n-=b)a.shift();for(r=1,i=a[0];i>=10;i/=10)r++;r<b&&(n-=b-r)}return s.e=n,s.d=a,s}function Qn(e){return h(e=new this(e),e.e+1,this.rounding)}function $n(e){return e=new this(e),e.d?e.d[0]?e.s:0*e.s:e.s||NaN}function er(e){return new this(e).sin()}function tr(e){return new this(e).sinh()}function nr(e){return new this(e).sqrt()}function rr(e,t){return new this(e).sub(t)}function ir(){var e=0,t=arguments,n=new this(t[e]);for(y=!1;n.s&&++e<t.length;)n=n.plus(t[e]);return y=!0,h(n,this.precision,this.rounding)}function or(e){return new this(e).tan()}function sr(e){return new this(e).tanh()}function ar(e){return h(e=new this(e),e.e+1,1)}m[Symbol.for("nodejs.util.inspect.custom")]=m.toString;m[Symbol.toStringTag]="Decimal";var Le=m.constructor=Lt(He);Be=new Le(Be);Ae=new Le(Ae);import{PublicKey as Je}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as ur}from"@solana/spl-token";import{PublicKey as L,SystemProgram as Kt,SYSVAR_RENT_PUBKEY as cr}from"@solana/web3.js";function Xe({pubkey:e,isSigner:t=!1,isWritable:n=!0}){return{pubkey:e,isWritable:n,isSigner:t}}var Qi=[Xe({pubkey:ur,isWritable:!1}),Xe({pubkey:Kt.programId,isWritable:!1}),Xe({pubkey:cr,isWritable:!1})];function Et({publicKey:e,transformSol:t}){let n=Mt(e.toString());if(n instanceof L)return t&&n.equals(pe)?It:n;if(t&&n.toString()===pe.toBase58())return It;if(typeof n=="string"){if(n===L.default.toBase58())return L.default;try{return new L(n)}catch{throw new Error("invalid public key")}}throw new Error("invalid public key")}function Mt(e){try{return new L(e)}catch{return e}}var $i=new L("MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"),Rt=new L("MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"),Dt=new L("SysvarRent111111111111111111111111111111111"),eo=new L("SysvarC1ock11111111111111111111111111111111"),to=new L("metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),no=new L("Sysvar1nstructions1111111111111111111111111"),_t=Kt.programId,ro=new L("4k3Dyjzvzp8eMZWUXbBCjEvwSkkk59S5iCNLY3QrkX6R"),io=new L("Ea5SjE2Y6yvCeW5dYTn7PYMuW5ikXkvbGdcmSnXeaLjS"),oo=new L("SRMuApVNdxXokk5GT7XD5cUUgXMBCoAz2LHeuAoKWRt"),so=new L("EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"),ao=new L("Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB"),uo=new L("mSoLzYCxHdYgdzU16g5QSh3i5K3z3KZK7ytfqcJm7So"),co=new L("7dHbWXmci3dT8UFYWYZweBLXgycu7Y3iL6trKn1Y7ARj"),lo=new L("USDH1SM1ojwWUga67PGrgFWUHibbjqMvuMaDkRJTgkX"),fo=new L("NRVwhjBQiUPYtfDT5zRBVJajzFQHaBUNtC7SNVvqRFa"),po=new L("ANAxByE6G2WjFp7A4NqtWYXb3mgruyzZYg3spfxe6Lbo"),mo=new L("7vfCXTUXx5WJV5JADk17DUJ4ksgau7utNKj4b963voxs"),It=new L("So11111111111111111111111111111111111111112"),pe=L.default;import{PublicKey as lr}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as Ft}from"@solana/spl-token";var vt={chainId:101,address:lr.default.toBase58(),programId:Ft.toBase58(),decimals:9,symbol:"SOL",name:"solana",logoURI:"https://img.raydium.io/icon/So11111111111111111111111111111111111111112.png",tags:[],priority:2,type:"raydium",extensions:{coingeckoId:"solana"}},ne={chainId:101,address:"So11111111111111111111111111111111111111112",programId:Ft.toBase58(),decimals:9,symbol:"WSOL",name:"Wrapped SOL",logoURI:"https://img.raydium.io/icon/So11111111111111111111111111111111111111112.png",tags:[],priority:2,type:"raydium",extensions:{coingeckoId:"solana"}};var Qe=class{constructor({mint:t,decimals:n,symbol:r,name:i,skipMint:o=!1,isToken2022:s=!1}){if(t===pe.toBase58()||t instanceof Je&&pe.equals(t)){this.decimals=ne.decimals,this.symbol=ne.symbol,this.name=ne.name,this.mint=new Je(ne.address),this.isToken2022=!1;return}this.decimals=n,this.symbol=r||t.toString().substring(0,6),this.name=i||t.toString().substring(0,6),this.mint=o?Je.default:Et({publicKey:t}),this.isToken2022=s}equals(t){return this===t?!0:this.mint.equals(t.mint)}},ue=Qe;ue.WSOL=new Qe(ie(ee({},ne),{mint:ne.address}));import Ke from"big.js";import mr from"bn.js";import dr from"decimal.js-light";import fr from"toformat";var pr=fr,me=pr;var Ie=F("module/fraction"),$e=me(Ke),de=me(dr),gr={[0]:de.ROUND_DOWN,[1]:de.ROUND_HALF_UP,[2]:de.ROUND_UP},hr={[0]:Ke.roundDown,[1]:Ke.roundHalfUp,[2]:Ke.roundUp},C=class{constructor(t,n=new mr(1)){this.numerator=Q(t),this.denominator=Q(n)}get quotient(){return this.numerator.div(this.denominator)}invert(){return new C(this.denominator,this.numerator)}add(t){let n=t instanceof C?t:new C(Q(t));return this.denominator.eq(n.denominator)?new C(this.numerator.add(n.numerator),this.denominator):new C(this.numerator.mul(n.denominator).add(n.numerator.mul(this.denominator)),this.denominator.mul(n.denominator))}sub(t){let n=t instanceof C?t:new C(Q(t));return this.denominator.eq(n.denominator)?new C(this.numerator.sub(n.numerator),this.denominator):new C(this.numerator.mul(n.denominator).sub(n.numerator.mul(this.denominator)),this.denominator.mul(n.denominator))}mul(t){let n=t instanceof C?t:new C(Q(t));return new C(this.numerator.mul(n.numerator),this.denominator.mul(n.denominator))}div(t){let n=t instanceof C?t:new C(Q(t));return new C(this.numerator.mul(n.denominator),this.denominator.mul(n.numerator))}toSignificant(t,n={groupSeparator:""},r=1){Number.isInteger(t)||Ie.logWithError(`${t} is not an integer.`),t<=0&&Ie.logWithError(`${t} is not positive.`),de.set({precision:t+1,rounding:gr[r]});let i=new de(this.numerator.toString()).div(this.denominator.toString()).toSignificantDigits(t);return i.toFormat(i.decimalPlaces(),n)}toFixed(t,n={groupSeparator:""},r=1){return Number.isInteger(t)||Ie.logWithError(`${t} is not an integer.`),t<0&&Ie.logWithError(`${t} is negative.`),$e.DP=t,$e.RM=hr[r]||1,new $e(this.numerator.toString()).div(this.denominator.toString()).toFormat(t,n)}isZero(){return this.numerator.isZero()}};var Oo=F("Raydium_price");var et=class{constructor({decimals:t,symbol:n="UNKNOWN",name:r="UNKNOWN"}){this.decimals=t,this.symbol=n,this.name=r}equals(t){return this===t}},Ee=et;Ee.SOL=new et(vt);import yr from"bn.js";var Zo=new C(new yr(100));var wr=new W(0),ds=new W(1),gs=new W(2),hs=new W(3),bs=new W(5),Pr=new W(10),ys=new W(100),ws=new W(1e3),Ps=new W(1e4),qt=9007199254740991;function Q(e){let t=F("Raydium_parseBigNumberish");if(e instanceof W)return e;if(typeof e=="string"){if(e.match(/^-?[0-9]+$/))return new W(e);t.logWithError(`invalid BigNumberish string: ${e}`)}return typeof e=="number"?(e%1&&t.logWithError(`BigNumberish number underflow: ${e}`),(e>=qt||e<=-qt)&&t.logWithError(`BigNumberish number overflow: ${e}`),new W(String(e))):typeof e=="bigint"?new W(e.toString()):(t.error(`invalid BigNumberish value: ${e}`),new W(0))}var Rs=F("Raydium_amount"),Ds=me(Tr);import{PublicKey as Ga,sendAndConfirmTransaction as Ha,Transaction as ja,TransactionMessage as Ya,VersionedTransaction as Xa}from"@solana/web3.js";import Qa from"axios";import{PublicKey as xr,ComputeBudgetProgram as na,Transaction as ia,TransactionMessage as sa,Keypair as aa,VersionedTransaction as ca}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as fa}from"@solana/spl-token";var da=F("Raydium_txUtil");function $(e,t){let[n,r]=xr.findProgramAddressSync(e,t);return{publicKey:n,nonce:r}}import{PublicKey as Br,AddressLookupTableAccount as Ut}from"@solana/web3.js";import{PublicKey as Pa}from"@solana/web3.js";import{getTransferFeeConfig as xa,unpackMint as Ba}from"@solana/spl-token";var ka=F("Raydium_accountInfo_util");var Ar={"2immgwYNHBbyVQKVGCEkgWpi53bLwWNRMB5G2nbgYV17":new Ut({key:new Br("2immgwYNHBbyVQKVGCEkgWpi53bLwWNRMB5G2nbgYV17"),state:Ut.deserialize(Buffer.from("AQAAAP//////////d49+DAAAAAAAAQZMWvw7GUNJdaccNBVnb57OKakxL2BHLYvhRwVILRsgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMGRm/lIRcy/+ytunLDm+e8jOW7xfcSayxDmzpAAAAABt324ddloZPZy+FGzut5rBy0he1fWzeROoz1hX7/AKkG3fbh7nWP3hhCXbzkbM3athr8TYO5DSf+vfko2KGL/AVKU1D4XciC1hSlVnJ4iilt3x6rq9CmBniISTL07vagBqfVFxksXFEhjMlMPUrxf1ja7gibof1E49vZigAAAAAGp9UXGMd0yShWY5hpHV62i164o5tLbVxzVVshAAAAAIyXJY9OJInxuz0QKRSODYMLWhOZ2v8QhASOe9jb6fhZC3BlsePRfEU4nVJ/awTDzVi4bHMaoP21SbbRvAP4KUbIScv+6Yw2LHF/6K0ZjUPibbSWXCirYPGuuVl7zT789IUPLW4CpHr4JNCatp3ELXDLKMv6JJ+37le50lbBJ2LvDQdRqCgtphMF/imcN7mY5YRx2xE1A3MQ+L4QRaYK9u4GRfZP3LsAd00a+IkCpA22UNQMKdq5BFbJuwuOLqc8zxCTDlqxBG8J0HcxtfogQHDK06ukzfaXiNDKAob1MqBHS9lJxDYCwz8gd5DtFqNSTKG5l1zxIaKpDP/sffi2is1H9aKveyXSu5StXElYRl9SD5As0DHE4N0GLnf84/siiKXVyp4Ez121kLcUui/jLLFZEz/BwZK3Ilf9B9OcsEAeDMKAy2vjGSxQODgBz0QwGA+eP4ZjIjrIAQaXENv31QfLlOdXSRCkaybRniDHF4C8YcwhcvsqrOVuTP4B2Na+9wLdtrB31uz2rtlFI5kahdsnp/d1SrASDInYCtTYtdoke4kX+hoKWcEWM4Tle8pTUkUVv4BxS6fje/EzKBE4Qu9N9LMnrw/JNO0hqMVB4rk/2ou4AB1loQ7FZoPwut2o4KZB+0p9xnbrQKw038qjpHar+PyDwvxBRcu5hpHw3dguezeWv+IwvgW5icu8EGkhGa9AkFPPJT7VMSFb8xowveU=","base64"))})};import{PublicKey as I}from"@solana/web3.js";var uu=new I("EhhTKczWMGQt46ynNeRX1WfeagwwJd7ufHvCDjRxjo5Q"),cu=new I("9KEPoZmtHUrBbhWN1v1KWLMkkvwY6WLtAVUCPRtRjP4z"),lu=new I("FarmqiPv5eAj3j1GMdMCMUGXqPUvmquZtMy86QH6rzhG"),fu=new I("CLaimxFqjHzgTJtAGHU47NPhg6qrc5sCnpC4tBLyABQS"),pu=new I("srmqPvymJeFKQ4zGQed1GFppgkRHL9kaELCbyksJtPX"),mu=new I("9xQeWvG816bUx9EPjHmaT23yvVM2ZWbrrpZb9PusVFin"),du=new I("675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8"),gu=new I("5quBtoiQqxF9Jv6KYKctB59NT3gtJD2Y65kdnB1Uev3h"),hu=new I("CAMMCzo5YL8w4VFF8KVHrK22GGUsp5VTaW7grrKgrWqK"),bu=new I("routeUGWgWzqBWFcrCfv8tritsqukccJPu3q5GPP3xS"),yu=new I("6FJon3QE27qgPVggARueB22hLvoh22VzJpXv4rBEoSLF"),wu=new I("CC12se5To1CdEuw7fDS27B7Geo5jJyL7t5UK2B44NgiH"),Pu=new I("9HzJyW1qZsEiSfMUf6L2jo3CcTKAyBmSyKdwQeYisHrC"),Tu=new I("DropEU8AvevN3UrXWXTMuz3rqnMczQVNjq3kcSdW2SQi"),xu=new I("CPMMoo8L3F4NbTegBCKVNunggL7H1ZpdTHKxQB5qKP1C"),Bu=new I("GpMZbSM2GgvTKHJirzeGfMFoaZ8UR2X7F4v8vHTvxFbL"),Au=new I("DNXgeM9EiiaAbaWvwjHj9fQQLAX5ZsfHyvmYUNRAdNC8"),Su=new I("CPMDWBwJDtYax9qW7AyRuVC19Cc4L4Vcy4n2BHAbHkCW"),ku=new I("7rQ1QFNosMkUCuh7Z7fPbTHvh73b68sQYdirycEzJVuw"),Nu=new I("G11FKBRaAkHAKuLCgLM6K6NUc9rTjPAznRCjZifrTQe2");import{PublicKey as Iu}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as Mu}from"@solana/spl-token";import _u from"bn.js";var kr=F("Raydium_cpmm"),he={initialize:[175,175,109,31,13,152,155,237],deposit:[242,35,198,137,82,225,242,182],withdraw:[183,18,70,156,148,109,161,34],swapBaseInput:[143,190,90,218,196,30,51,222],swapBaseOutput:[55,217,98,86,163,74,180,173]};function ac(e,t,n,r,i,o,s,a,c,u,l,f,p,d,w,g,A,x,K,B){let E=z([S("amountMaxA"),S("amountMaxB"),S("openTime")]),re=[{pubkey:t,isSigner:!0,isWritable:!1},{pubkey:n,isSigner:!1,isWritable:!1},{pubkey:r,isSigner:!1,isWritable:!1},{pubkey:i,isSigner:!1,isWritable:!0},{pubkey:o,isSigner:!1,isWritable:!1},{pubkey:s,isSigner:!1,isWritable:!1},{pubkey:a,isSigner:!1,isWritable:!0},{pubkey:c,isSigner:!1,isWritable:!0},{pubkey:u,isSigner:!1,isWritable:!0},{pubkey:l,isSigner:!1,isWritable:!0},{pubkey:f,isSigner:!1,isWritable:!0},{pubkey:p,isSigner:!1,isWritable:!0},{pubkey:d,isSigner:!1,isWritable:!0},{pubkey:A,isSigner:!1,isWritable:!0},{pubkey:tt,isSigner:!1,isWritable:!1},{pubkey:w,isSigner:!1,isWritable:!1},{pubkey:g,isSigner:!1,isWritable:!1},{pubkey:Sr,isSigner:!1,isWritable:!1},{pubkey:_t,isSigner:!1,isWritable:!1},{pubkey:Dt,isSigner:!1,isWritable:!1}],V=Buffer.alloc(E.span);return E.encode({amountMaxA:x,amountMaxB:K,openTime:B},V),new ge({keys:re,programId:e,data:Buffer.from([...he.initialize,...V])})}function uc(e,t,n,r,i,o,s,a,c,u,l,f,p,d,w){let g=z([S("lpAmount"),S("amountMaxA"),S("amountMaxB")]),A=[{pubkey:t,isSigner:!0,isWritable:!1},{pubkey:n,isSigner:!1,isWritable:!1},{pubkey:r,isSigner:!1,isWritable:!0},{pubkey:i,isSigner:!1,isWritable:!0},{pubkey:o,isSigner:!1,isWritable:!0},{pubkey:s,isSigner:!1,isWritable:!0},{pubkey:a,isSigner:!1,isWritable:!0},{pubkey:c,isSigner:!1,isWritable:!0},{pubkey:tt,isSigner:!1,isWritable:!1},{pubkey:Gt,isSigner:!1,isWritable:!1},{pubkey:u,isSigner:!1,isWritable:!1},{pubkey:l,isSigner:!1,isWritable:!1},{pubkey:f,isSigner:!1,isWritable:!0}],x=Buffer.alloc(g.span);return kr.debug("cpmm deposit data",{lpAmount:p.toString(),amountMaxA:d.toString(),amountMaxB:w.toString()}),g.encode({lpAmount:p,amountMaxA:d,amountMaxB:w},x),new ge({keys:A,programId:e,data:Buffer.from([...he.deposit,...x])})}function cc(e,t,n,r,i,o,s,a,c,u,l,f,p,d,w){let g=z([S("lpAmount"),S("amountMinA"),S("amountMinB")]),A=[{pubkey:t,isSigner:!0,isWritable:!1},{pubkey:n,isSigner:!1,isWritable:!1},{pubkey:r,isSigner:!1,isWritable:!0},{pubkey:i,isSigner:!1,isWritable:!0},{pubkey:o,isSigner:!1,isWritable:!0},{pubkey:s,isSigner:!1,isWritable:!0},{pubkey:a,isSigner:!1,isWritable:!0},{pubkey:c,isSigner:!1,isWritable:!0},{pubkey:tt,isSigner:!1,isWritable:!1},{pubkey:Gt,isSigner:!1,isWritable:!1},{pubkey:u,isSigner:!1,isWritable:!1},{pubkey:l,isSigner:!1,isWritable:!1},{pubkey:f,isSigner:!1,isWritable:!0},{pubkey:Rt,isSigner:!1,isWritable:!1}],x=Buffer.alloc(g.span);return g.encode({lpAmount:p,amountMinA:d,amountMinB:w},x),new ge({keys:A,programId:e,data:Buffer.from([...he.withdraw,...x])})}function lc(e,t,n,r,i,o,s,a,c,u,l,f,p,d,w,g){let A=z([S("amountIn"),S("amounOutMin")]),x=[{pubkey:t,isSigner:!0,isWritable:!1},{pubkey:n,isSigner:!1,isWritable:!1},{pubkey:r,isSigner:!1,isWritable:!1},{pubkey:i,isSigner:!1,isWritable:!0},{pubkey:o,isSigner:!1,isWritable:!0},{pubkey:s,isSigner:!1,isWritable:!0},{pubkey:a,isSigner:!1,isWritable:!0},{pubkey:c,isSigner:!1,isWritable:!0},{pubkey:u,isSigner:!1,isWritable:!1},{pubkey:l,isSigner:!1,isWritable:!1},{pubkey:f,isSigner:!1,isWritable:!1},{pubkey:p,isSigner:!1,isWritable:!1},{pubkey:d,isSigner:!1,isWritable:!0}],K=Buffer.alloc(A.span);return A.encode({amountIn:w,amounOutMin:g},K),new ge({keys:x,programId:e,data:Buffer.from([...he.swapBaseInput,...K])})}function fc(e,t,n,r,i,o,s,a,c,u,l,f,p,d,w,g){let A=z([S("amountInMax"),S("amountOut")]),x=[{pubkey:t,isSigner:!0,isWritable:!1},{pubkey:n,isSigner:!1,isWritable:!1},{pubkey:r,isSigner:!1,isWritable:!1},{pubkey:i,isSigner:!1,isWritable:!0},{pubkey:o,isSigner:!1,isWritable:!0},{pubkey:s,isSigner:!1,isWritable:!0},{pubkey:a,isSigner:!1,isWritable:!0},{pubkey:c,isSigner:!1,isWritable:!0},{pubkey:u,isSigner:!1,isWritable:!1},{pubkey:l,isSigner:!1,isWritable:!1},{pubkey:f,isSigner:!1,isWritable:!1},{pubkey:p,isSigner:!1,isWritable:!1},{pubkey:d,isSigner:!1,isWritable:!0}],K=Buffer.alloc(A.span);return A.encode({amountInMax:w,amountOut:g},K),new ge({keys:x,programId:e,data:Buffer.from([...he.swapBaseOutput,...K])})}var Nr=Buffer.from("vault_and_lp_mint_auth_seed","utf8"),Cr=Buffer.from("amm_config","utf8"),Lr=Buffer.from("pool","utf8"),Ir=Buffer.from("pool_lp_mint","utf8"),Kr=Buffer.from("pool_vault","utf8"),Er=Buffer.from("observation","utf8");function Mr(e){return $([Nr],e)}function Rr(e,t){return $([Cr,vr(t)],e)}function Dr(e,t,n,r){return $([Lr,t.toBuffer(),n.toBuffer(),r.toBuffer()],e)}function _r(e,t){return $([Ir,t.toBuffer()],e)}function Ht(e,t,n){return $([Kr,t.toBuffer(),n.toBuffer()],e)}function Fr(e,t){return $([Er,t.toBuffer()],e)}function vr(e){let t=new ArrayBuffer(2);return new DataView(t).setUint16(0,e,!1),new Uint8Array(t)}function dc({programId:e,mintA:t,mintB:n}){let r=Rr(e,0).publicKey,i=Mr(e).publicKey,o=Dr(e,r,t,n).publicKey,s=_r(e,o).publicKey,a=Ht(e,o,t).publicKey,c=Ht(e,o,n).publicKey,u=Fr(e,o).publicKey;return{poolId:o,configId:r,authority:i,lpMint:s,vaultA:a,vaultB:c,observationId:u}}import jt from"bn.js";var nt=new jt(1e6);function Wr(e,t,n){return e.mul(t).add(n).sub(new jt(1)).div(n)}function zt(e,t,n){return e.mul(t).div(n)}var Me=class{static tradingFee(t,n){return Wr(t,n,nt)}static protocolFee(t,n){return zt(t,n,nt)}static fundFee(t,n){return zt(t,n,nt)}};import be from"bn.js";function Re(e,t){if(t.isZero())throw Error("divisor is zero");return e.mod(t)}function Or(e,t){if(t.isZero())throw Error("rhs is zero");let n=e.div(t);if(n.isZero())throw Error("quotient is zero");let r=Re(e,t);if(r.gt(ce)){n=n.add(new be(1));let i=e.div(n);r=Re(e,n),r.gt(ce)&&(i=i.add(new be(1)))}return[n,t]}var ce=new be(0),De=class{static swapWithoutFees(t,n,r){let i=n.mul(r),o=n.add(t),[s,a]=Or(i,o),c=a.sub(n),u=r.sub(s);if(u.isZero())throw Error("destinationAmountSwapped is zero");return{sourceAmountSwapped:c,destinationAmountSwapped:u}}static lpTokensToTradingTokens(t,n,r,i,o){let s=t.mul(r).div(n),a=t.mul(i).div(n);if(o===0)return{tokenAmount0:s,tokenAmount1:a};if(o===1)return Re(t.mul(r),n).gt(ce)&&s.gt(ce)&&(s=s.add(new be(1))),Re(t.mul(i),n).gt(ce)&&a.gt(ce)&&(a=a.add(new be(1))),{tokenAmount0:s,tokenAmount1:a};throw Error("roundDirection value error")}};var Zt=(n=>(n[n.Floor=0]="Floor",n[n.Ceiling=1]="Ceiling",n))(Zt||{}),Yt=class{static validate_supply(t,n){if(t.isZero())throw Error("tokenAmount0 is zero");if(n.isZero())throw Error("tokenAmount1 is zero")}static swap(t,n,r,i){let o=Me.tradingFee(t,i),s=t.sub(o),{sourceAmountSwapped:a,destinationAmountSwapped:c}=De.swapWithoutFees(s,n,r),u=a.add(o);return{newSwapSourceAmount:n.add(u),newSwapDestinationAmount:r.sub(c),sourceAmountSwapped:u,destinationAmountSwapped:c,tradeFee:o}}};export{De as ConstantProductCurve,Vi as CpmmConfigInfoLayout,Me as CpmmFee,qi as CpmmPoolInfoLayout,Yt as CurveCalculator,nt as FEE_RATE_DENOMINATOR_VALUE,Zt as RoundDirection,Wr as ceilDiv,zt as floorDiv,Rr as getCpmmPdaAmmConfigId,Dr as getCpmmPdaPoolId,dc as getCreatePoolKeys,_r as getPdaLpMint,Fr as getPdaObservationId,Mr as getPdaPoolAuthority,Ht as getPdaVault,ac as makeCreateCpmmPoolInInstruction,uc as makeDepositCpmmInInstruction,lc as makeSwapCpmmBaseInInInstruction,fc as makeSwapCpmmBaseOutInInstruction,cc as makeWithdrawCpmmInInstruction};
|
|
2
2
|
//# sourceMappingURL=index.mjs.map
|