test-raydium-sdk-v2
Version:
An SDK for building applications on top of Raydium.
2 lines • 43.6 kB
JavaScript
var _n=Object.defineProperty,Wn=Object.defineProperties;var An=Object.getOwnPropertyDescriptors;var fe=Object.getOwnPropertySymbols;var $e=Object.prototype.hasOwnProperty,ze=Object.prototype.propertyIsEnumerable;var Xe=(e,n,t)=>n in e?_n(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t,le=(e,n)=>{for(var t in n||(n={}))$e.call(n,t)&&Xe(e,t,n[t]);if(fe)for(var t of fe(n))ze.call(n,t)&&Xe(e,t,n[t]);return e},Be=(e,n)=>Wn(e,An(n));var Je=(e,n)=>{var t={};for(var r in e)$e.call(e,r)&&n.indexOf(r)<0&&(t[r]=e[r]);if(e!=null&&fe)for(var r of fe(e))n.indexOf(r)<0&&ze.call(e,r)&&(t[r]=e[r]);return t};import{PublicKey as Un}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as Qe}from"@solana/spl-token";var ne={chainId:101,address:Un.default.toBase58(),programId:Qe.toBase58(),decimals:9,symbol:"SOL",name:"solana",logoURI:"https://img.raydium.io/icon/So11111111111111111111111111111111111111112.png",tags:[],priority:2,type:"raydium",extensions:{coingeckoId:"solana"}},I={chainId:101,address:"So11111111111111111111111111111111111111112",programId:Qe.toBase58(),decimals:9,symbol:"WSOL",name:"Wrapped SOL",logoURI:"https://img.raydium.io/icon/So11111111111111111111111111111111111111112.png",tags:[],priority:2,type:"raydium",extensions:{coingeckoId:"solana"}};import{PublicKey as Mn}from"@solana/web3.js";import nn,{isBN as ri}from"bn.js";import{bits as ir,BitStructure as or,blob as On,Blob as sr,cstr as ur,f32 as ar,f32be as cr,f64 as fr,f64be as lr,greedy as pr,Layout as Rn,ns64 as dr,ns64be as mr,nu64 as gr,nu64be as hr,offset as br,s16 as yr,s16be as wr,s24 as Pr,s24be as xr,s32 as Nr,s32be as Tr,s40 as Lr,s40be as Sr,s48 as kr,s48be as Br,s8 as Dr,seq as Er,struct as vr,Structure as Cn,u16 as _r,u16be as Wr,u24 as Ar,u24be as Ur,u32 as Or,u32be as Rr,u40 as Cr,u40be as Fr,u48 as Mr,u48be as qr,u8 as Ir,UInt as Fn,union as Kr,Union as jr,unionLayoutDiscriminator as Zr,utf8 as Hr}from"@solana/buffer-layout";var De=Rn,en=Cn;var Ee=Fn;var ve=On;var _e=class extends De{constructor(t,r,i){super(t,i);this.blob=ve(t),this.signed=r}decode(t,r=0){let i=new nn(this.blob.decode(t,r),10,"le");return this.signed?i.fromTwos(this.span*8).clone():i}encode(t,r,i=0){return typeof t=="number"&&(t=new nn(t)),this.signed&&(t=t.toTwos(this.span*8)),this.blob.encode(t.toArrayLike(Buffer,"le",this.span),r,i)}};function Ue(e){return new Ee(1,e)}function Oe(e){return new Ee(4,e)}function tn(e){return new _e(8,!1,e)}var We=class extends De{constructor(t,r,i,o){super(t.span,o);this.layout=t,this.decoder=r,this.encoder=i}decode(t,r){return this.decoder(this.layout.decode(t,r))}encode(t,r,i){return this.layout.encode(this.encoder(t),r,i)}getSpan(t,r){return this.layout.getSpan(t,r)}};function Re(e){return new We(ve(32),n=>new Mn(n),n=>n.toBuffer(),e)}var Ae=class extends en{decode(n,t){return super.decode(n,t)}};function rn(e,n,t){return new Ae(e,n,t)}var ai=rn([Oe("mintAuthorityOption"),Re("mintAuthority"),tn("supply"),Ue("decimals"),Ue("isInitialized"),Oe("freezeAuthorityOption"),Re("freezeAuthority")]);import{PublicKey as zt}from"@solana/web3.js";import{MintLayout as vn,TOKEN_PROGRAM_ID as Jt}from"@solana/spl-token";import Gt from"big.js";import Te from"bn.js";import O from"bn.js";var J=9e15,z=1e9,Ce="0123456789abcdef",de="2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058",me="3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789",Fe={precision:20,rounding:4,modulo:1,toExpNeg:-7,toExpPos:21,minE:-J,maxE:J,crypto:!1},an,H,b=!0,he="[DecimalError] ",$=he+"Invalid argument: ",cn=he+"Precision limit exceeded",fn=he+"crypto unavailable",ln="[object Decimal]",W=Math.floor,D=Math.pow,qn=/^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i,In=/^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i,Kn=/^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i,pn=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,M=1e7,h=7,jn=9007199254740991,Zn=de.length-1,Me=me.length-1,d={toStringTag:ln};d.absoluteValue=d.abs=function(){var e=new this.constructor(this);return e.s<0&&(e.s=1),m(e)};d.ceil=function(){return m(new this.constructor(this),this.e+1,2)};d.clampedTo=d.clamp=function(e,n){var t,r=this,i=r.constructor;if(e=new i(e),n=new i(n),!e.s||!n.s)return new i(NaN);if(e.gt(n))throw Error($+n);return t=r.cmp(e),t<0?e:r.cmp(n)>0?n:new i(r)};d.comparedTo=d.cmp=function(e){var n,t,r,i,o=this,s=o.d,u=(e=new o.constructor(e)).d,c=o.s,a=e.s;if(!s||!u)return!c||!a?NaN:c!==a?c:s===u?0:!s^c<0?1:-1;if(!s[0]||!u[0])return s[0]?c:u[0]?-a:0;if(c!==a)return c;if(o.e!==e.e)return o.e>e.e^c<0?1:-1;for(r=s.length,i=u.length,n=0,t=r<i?r:i;n<t;++n)if(s[n]!==u[n])return s[n]>u[n]^c<0?1:-1;return r===i?0:r>i^c<0?1:-1};d.cosine=d.cos=function(){var e,n,t=this,r=t.constructor;return t.d?t.d[0]?(e=r.precision,n=r.rounding,r.precision=e+Math.max(t.e,t.sd())+h,r.rounding=1,t=Hn(r,bn(r,t)),r.precision=e,r.rounding=n,m(H==2||H==3?t.neg():t,e,n,!0)):new r(1):new r(NaN)};d.cubeRoot=d.cbrt=function(){var e,n,t,r,i,o,s,u,c,a,f=this,l=f.constructor;if(!f.isFinite()||f.isZero())return new l(f);for(b=!1,o=f.s*D(f.s*f,1/3),!o||Math.abs(o)==1/0?(t=E(f.d),e=f.e,(o=(e-t.length+1)%3)&&(t+=o==1||o==-2?"0":"00"),o=D(t,1/3),e=W((e+1)/3)-(e%3==(e<0?-1:2)),o==1/0?t="5e"+e:(t=o.toExponential(),t=t.slice(0,t.indexOf("e")+1)+e),r=new l(t),r.s=f.s):r=new l(o.toString()),s=(e=l.precision)+3;;)if(u=r,c=u.times(u).times(u),a=c.plus(f),r=x(a.plus(f).times(u),a.plus(c),s+2,1),E(u.d).slice(0,s)===(t=E(r.d)).slice(0,s))if(t=t.slice(s-3,s+1),t=="9999"||!i&&t=="4999"){if(!i&&(m(u,e+1,0),u.times(u).times(u).eq(f))){r=u;break}s+=4,i=1}else{(!+t||!+t.slice(1)&&t.charAt(0)=="5")&&(m(r,e+1,1),n=!r.times(r).times(r).eq(f));break}return b=!0,m(r,e,l.rounding,n)};d.decimalPlaces=d.dp=function(){var e,n=this.d,t=NaN;if(n){if(e=n.length-1,t=(e-W(this.e/h))*h,e=n[e],e)for(;e%10==0;e/=10)t--;t<0&&(t=0)}return t};d.dividedBy=d.div=function(e){return x(this,new this.constructor(e))};d.dividedToIntegerBy=d.divToInt=function(e){var n=this,t=n.constructor;return m(x(n,new t(e),0,1,1),t.precision,t.rounding)};d.equals=d.eq=function(e){return this.cmp(e)===0};d.floor=function(){return m(new this.constructor(this),this.e+1,3)};d.greaterThan=d.gt=function(e){return this.cmp(e)>0};d.greaterThanOrEqualTo=d.gte=function(e){var n=this.cmp(e);return n==1||n===0};d.hyperbolicCosine=d.cosh=function(){var e,n,t,r,i,o=this,s=o.constructor,u=new s(1);if(!o.isFinite())return new s(o.s?1/0:NaN);if(o.isZero())return u;t=s.precision,r=s.rounding,s.precision=t+Math.max(o.e,o.sd())+4,s.rounding=1,i=o.d.length,i<32?(e=Math.ceil(i/3),n=(1/ye(4,e)).toString()):(e=16,n="2.3283064365386962890625e-10"),o=Q(s,1,o.times(n),new s(1),!0);for(var c,a=e,f=new s(8);a--;)c=o.times(o),o=u.minus(c.times(f.minus(c.times(f))));return m(o,s.precision=t,s.rounding=r,!0)};d.hyperbolicSine=d.sinh=function(){var e,n,t,r,i=this,o=i.constructor;if(!i.isFinite()||i.isZero())return new o(i);if(n=o.precision,t=o.rounding,o.precision=n+Math.max(i.e,i.sd())+4,o.rounding=1,r=i.d.length,r<3)i=Q(o,2,i,i,!0);else{e=1.4*Math.sqrt(r),e=e>16?16:e|0,i=i.times(1/ye(5,e)),i=Q(o,2,i,i,!0);for(var s,u=new o(5),c=new o(16),a=new o(20);e--;)s=i.times(i),i=i.times(u.plus(s.times(c.times(s).plus(a))))}return o.precision=n,o.rounding=t,m(i,n,t,!0)};d.hyperbolicTangent=d.tanh=function(){var e,n,t=this,r=t.constructor;return t.isFinite()?t.isZero()?new r(t):(e=r.precision,n=r.rounding,r.precision=e+7,r.rounding=1,x(t.sinh(),t.cosh(),r.precision=e,r.rounding=n)):new r(t.s)};d.inverseCosine=d.acos=function(){var e,n=this,t=n.constructor,r=n.abs().cmp(1),i=t.precision,o=t.rounding;return r!==-1?r===0?n.isNeg()?F(t,i,o):new t(0):new t(NaN):n.isZero()?F(t,i+4,o).times(.5):(t.precision=i+6,t.rounding=1,n=n.asin(),e=F(t,i+4,o).times(.5),t.precision=i,t.rounding=o,e.minus(n))};d.inverseHyperbolicCosine=d.acosh=function(){var e,n,t=this,r=t.constructor;return t.lte(1)?new r(t.eq(1)?0:NaN):t.isFinite()?(e=r.precision,n=r.rounding,r.precision=e+Math.max(Math.abs(t.e),t.sd())+4,r.rounding=1,b=!1,t=t.times(t).minus(1).sqrt().plus(t),b=!0,r.precision=e,r.rounding=n,t.ln()):new r(t)};d.inverseHyperbolicSine=d.asinh=function(){var e,n,t=this,r=t.constructor;return!t.isFinite()||t.isZero()?new r(t):(e=r.precision,n=r.rounding,r.precision=e+2*Math.max(Math.abs(t.e),t.sd())+6,r.rounding=1,b=!1,t=t.times(t).plus(1).sqrt().plus(t),b=!0,r.precision=e,r.rounding=n,t.ln())};d.inverseHyperbolicTangent=d.atanh=function(){var e,n,t,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,n=o.rounding,r=i.sd(),Math.max(r,e)<2*-i.e-1?m(new o(i),e,n,!0):(o.precision=t=r-i.e,i=x(i.plus(1),new o(1).minus(i),t+e,1),o.precision=e+4,o.rounding=1,i=i.ln(),o.precision=e,o.rounding=n,i.times(.5))):new o(NaN)};d.inverseSine=d.asin=function(){var e,n,t,r,i=this,o=i.constructor;return i.isZero()?new o(i):(n=i.abs().cmp(1),t=o.precision,r=o.rounding,n!==-1?n===0?(e=F(o,t+4,r).times(.5),e.s=i.s,e):new o(NaN):(o.precision=t+6,o.rounding=1,i=i.div(new o(1).minus(i.times(i)).sqrt().plus(1)).atan(),o.precision=t,o.rounding=r,i.times(2)))};d.inverseTangent=d.atan=function(){var e,n,t,r,i,o,s,u,c,a=this,f=a.constructor,l=f.precision,p=f.rounding;if(a.isFinite()){if(a.isZero())return new f(a);if(a.abs().eq(1)&&l+4<=Me)return s=F(f,l+4,p).times(.25),s.s=a.s,s}else{if(!a.s)return new f(NaN);if(l+4<=Me)return s=F(f,l+4,p).times(.5),s.s=a.s,s}for(f.precision=u=l+10,f.rounding=1,t=Math.min(28,u/h+2|0),e=t;e;--e)a=a.div(a.times(a).plus(1).sqrt().plus(1));for(b=!1,n=Math.ceil(u/h),r=1,c=a.times(a),s=new f(a),i=a;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[n]!==void 0)for(e=n;s.d[e]===o.d[e]&&e--;);return t&&(s=s.times(2<<t-1)),b=!0,m(s,f.precision=l,f.rounding=p,!0)};d.isFinite=function(){return!!this.d};d.isInteger=d.isInt=function(){return!!this.d&&W(this.e/h)>this.d.length-2};d.isNaN=function(){return!this.s};d.isNegative=d.isNeg=function(){return this.s<0};d.isPositive=d.isPos=function(){return this.s>0};d.isZero=function(){return!!this.d&&this.d[0]===0};d.lessThan=d.lt=function(e){return this.cmp(e)<0};d.lessThanOrEqualTo=d.lte=function(e){return this.cmp(e)<1};d.logarithm=d.log=function(e){var n,t,r,i,o,s,u,c,a=this,f=a.constructor,l=f.precision,p=f.rounding,g=5;if(e==null)e=new f(10),n=!0;else{if(e=new f(e),t=e.d,e.s<0||!t||!t[0]||e.eq(1))return new f(NaN);n=e.eq(10)}if(t=a.d,a.s<0||!t||!t[0]||a.eq(1))return new f(t&&!t[0]?-1/0:a.s!=1?NaN:t?0:1/0);if(n)if(t.length>1)o=!0;else{for(i=t[0];i%10===0;)i/=10;o=i!==1}if(b=!1,u=l+g,s=X(a,u),r=n?ge(f,u+10):X(e,u),c=x(s,r,u,1),te(c.d,i=l,p))do if(u+=10,s=X(a,u),r=n?ge(f,u+10):X(e,u),c=x(s,r,u,1),!o){+E(c.d).slice(i+1,i+15)+1==1e14&&(c=m(c,l+1,0));break}while(te(c.d,i+=10,p));return b=!0,m(c,l,p)};d.minus=d.sub=function(e){var n,t,r,i,o,s,u,c,a,f,l,p,g=this,w=g.constructor;if(e=new w(e),!g.d||!e.d)return!g.s||!e.s?e=new w(NaN):g.d?e.s=-e.s:e=new w(e.d||g.s!==e.s?g:NaN),e;if(g.s!=e.s)return e.s=-e.s,g.plus(e);if(a=g.d,p=e.d,u=w.precision,c=w.rounding,!a[0]||!p[0]){if(p[0])e.s=-e.s;else if(a[0])e=new w(g);else return new w(c===3?-0:0);return b?m(e,u,c):e}if(t=W(e.e/h),f=W(g.e/h),a=a.slice(),o=f-t,o){for(l=o<0,l?(n=a,o=-o,s=p.length):(n=p,t=f,s=a.length),r=Math.max(Math.ceil(u/h),s)+2,o>r&&(o=r,n.length=1),n.reverse(),r=o;r--;)n.push(0);n.reverse()}else{for(r=a.length,s=p.length,l=r<s,l&&(s=r),r=0;r<s;r++)if(a[r]!=p[r]){l=a[r]<p[r];break}o=0}for(l&&(n=a,a=p,p=n,e.s=-e.s),s=a.length,r=p.length-s;r>0;--r)a[s++]=0;for(r=p.length;r>o;){if(a[--r]<p[r]){for(i=r;i&&a[--i]===0;)a[i]=M-1;--a[i],a[r]+=M}a[r]-=p[r]}for(;a[--s]===0;)a.pop();for(;a[0]===0;a.shift())--t;return a[0]?(e.d=a,e.e=be(a,t),b?m(e,u,c):e):new w(c===3?-0:0)};d.modulo=d.mod=function(e){var n,t=this,r=t.constructor;return e=new r(e),!t.d||!e.s||e.d&&!e.d[0]?new r(NaN):!e.d||t.d&&!t.d[0]?m(new r(t),r.precision,r.rounding):(b=!1,r.modulo==9?(n=x(t,e.abs(),0,3,1),n.s*=e.s):n=x(t,e,0,r.modulo,1),n=n.times(e),b=!0,t.minus(n))};d.naturalExponential=d.exp=function(){return qe(this)};d.naturalLogarithm=d.ln=function(){return X(this)};d.negated=d.neg=function(){var e=new this.constructor(this);return e.s=-e.s,m(e)};d.plus=d.add=function(e){var n,t,r,i,o,s,u,c,a,f,l=this,p=l.constructor;if(e=new p(e),!l.d||!e.d)return!l.s||!e.s?e=new p(NaN):l.d||(e=new p(e.d||l.s===e.s?l:NaN)),e;if(l.s!=e.s)return e.s=-e.s,l.minus(e);if(a=l.d,f=e.d,u=p.precision,c=p.rounding,!a[0]||!f[0])return f[0]||(e=new p(l)),b?m(e,u,c):e;if(o=W(l.e/h),r=W(e.e/h),a=a.slice(),i=o-r,i){for(i<0?(t=a,i=-i,s=f.length):(t=f,r=o,s=a.length),o=Math.ceil(u/h),s=o>s?o+1:s+1,i>s&&(i=s,t.length=1),t.reverse();i--;)t.push(0);t.reverse()}for(s=a.length,i=f.length,s-i<0&&(i=s,t=f,f=a,a=t),n=0;i;)n=(a[--i]=a[i]+f[i]+n)/M|0,a[i]%=M;for(n&&(a.unshift(n),++r),s=a.length;a[--s]==0;)a.pop();return e.d=a,e.e=be(a,r),b?m(e,u,c):e};d.precision=d.sd=function(e){var n,t=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error($+e);return t.d?(n=dn(t.d),e&&t.e+1>n&&(n=t.e+1)):n=NaN,n};d.round=function(){var e=this,n=e.constructor;return m(new n(e),e.e+1,n.rounding)};d.sine=d.sin=function(){var e,n,t=this,r=t.constructor;return t.isFinite()?t.isZero()?new r(t):(e=r.precision,n=r.rounding,r.precision=e+Math.max(t.e,t.sd())+h,r.rounding=1,t=Yn(r,bn(r,t)),r.precision=e,r.rounding=n,m(H>2?t.neg():t,e,n,!0)):new r(NaN)};d.squareRoot=d.sqrt=function(){var e,n,t,r,i,o,s=this,u=s.d,c=s.e,a=s.s,f=s.constructor;if(a!==1||!u||!u[0])return new f(!a||a<0&&(!u||u[0])?NaN:u?s:1/0);for(b=!1,a=Math.sqrt(+s),a==0||a==1/0?(n=E(u),(n.length+c)%2==0&&(n+="0"),a=Math.sqrt(n),c=W((c+1)/2)-(c<0||c%2),a==1/0?n="5e"+c:(n=a.toExponential(),n=n.slice(0,n.indexOf("e")+1)+c),r=new f(n)):r=new f(a.toString()),t=(c=f.precision)+3;;)if(o=r,r=o.plus(x(s,o,t+2,1)).times(.5),E(o.d).slice(0,t)===(n=E(r.d)).slice(0,t))if(n=n.slice(t-3,t+1),n=="9999"||!i&&n=="4999"){if(!i&&(m(o,c+1,0),o.times(o).eq(s))){r=o;break}t+=4,i=1}else{(!+n||!+n.slice(1)&&n.charAt(0)=="5")&&(m(r,c+1,1),e=!r.times(r).eq(s));break}return b=!0,m(r,c,f.rounding,e)};d.tangent=d.tan=function(){var e,n,t=this,r=t.constructor;return t.isFinite()?t.isZero()?new r(t):(e=r.precision,n=r.rounding,r.precision=e+10,r.rounding=1,t=t.sin(),t.s=1,t=x(t,new r(1).minus(t.times(t)).sqrt(),e+10,0),r.precision=e,r.rounding=n,m(H==2||H==4?t.neg():t,e,n,!0)):new r(NaN)};d.times=d.mul=function(e){var n,t,r,i,o,s,u,c,a,f=this,l=f.constructor,p=f.d,g=(e=new l(e)).d;if(e.s*=f.s,!p||!p[0]||!g||!g[0])return new l(!e.s||p&&!p[0]&&!g||g&&!g[0]&&!p?NaN:!p||!g?e.s/0:e.s*0);for(t=W(f.e/h)+W(e.e/h),c=p.length,a=g.length,c<a&&(o=p,p=g,g=o,s=c,c=a,a=s),o=[],s=c+a,r=s;r--;)o.push(0);for(r=a;--r>=0;){for(n=0,i=c+r;i>r;)u=o[i]+g[r]*p[i-r-1]+n,o[i--]=u%M|0,n=u/M|0;o[i]=(o[i]+n)%M|0}for(;!o[--s];)o.pop();return n?++t:o.shift(),e.d=o,e.e=be(o,t),b?m(e,l.precision,l.rounding):e};d.toBinary=function(e,n){return Ke(this,2,e,n)};d.toDecimalPlaces=d.toDP=function(e,n){var t=this,r=t.constructor;return t=new r(t),e===void 0?t:(U(e,0,z),n===void 0?n=r.rounding:U(n,0,8),m(t,e+t.e+1,n))};d.toExponential=function(e,n){var t,r=this,i=r.constructor;return e===void 0?t=K(r,!0):(U(e,0,z),n===void 0?n=i.rounding:U(n,0,8),r=m(new i(r),e+1,n),t=K(r,!0,e+1)),r.isNeg()&&!r.isZero()?"-"+t:t};d.toFixed=function(e,n){var t,r,i=this,o=i.constructor;return e===void 0?t=K(i):(U(e,0,z),n===void 0?n=o.rounding:U(n,0,8),r=m(new o(i),e+i.e+1,n),t=K(r,!1,e+r.e+1)),i.isNeg()&&!i.isZero()?"-"+t:t};d.toFraction=function(e){var n,t,r,i,o,s,u,c,a,f,l,p,g=this,w=g.d,y=g.constructor;if(!w)return new y(g);if(a=t=new y(1),r=c=new y(0),n=new y(r),o=n.e=dn(w)-g.e-1,s=o%h,n.d[0]=D(10,s<0?h+s:s),e==null)e=o>0?n:a;else{if(u=new y(e),!u.isInt()||u.lt(a))throw Error($+u);e=u.gt(n)?o>0?n:a:u}for(b=!1,u=new y(E(w)),f=y.precision,y.precision=o=w.length*h*2;l=x(u,n,0,1,1),i=t.plus(l.times(r)),i.cmp(e)!=1;)t=r,r=i,i=a,a=c.plus(l.times(i)),c=i,i=n,n=u.minus(l.times(i)),u=i;return i=x(e.minus(t),r,0,1,1),c=c.plus(i.times(a)),t=t.plus(i.times(r)),c.s=a.s=g.s,p=x(a,r,o,1).minus(g).abs().cmp(x(c,t,o,1).minus(g).abs())<1?[a,r]:[c,t],y.precision=f,b=!0,p};d.toHexadecimal=d.toHex=function(e,n){return Ke(this,16,e,n)};d.toNearest=function(e,n){var t=this,r=t.constructor;if(t=new r(t),e==null){if(!t.d)return t;e=new r(1),n=r.rounding}else{if(e=new r(e),n===void 0?n=r.rounding:U(n,0,8),!t.d)return e.s?t:e;if(!e.d)return e.s&&(e.s=t.s),e}return e.d[0]?(b=!1,t=x(t,e,0,n,1).times(e),b=!0,m(t)):(e.s=t.s,t=e),t};d.toNumber=function(){return+this};d.toOctal=function(e,n){return Ke(this,8,e,n)};d.toPower=d.pow=function(e){var n,t,r,i,o,s,u=this,c=u.constructor,a=+(e=new c(e));if(!u.d||!e.d||!u.d[0]||!e.d[0])return new c(D(+u,a));if(u=new c(u),u.eq(1))return u;if(r=c.precision,o=c.rounding,e.eq(1))return m(u,r,o);if(n=W(e.e/h),n>=e.d.length-1&&(t=a<0?-a:a)<=jn)return i=mn(c,u,t,r),e.s<0?new c(1).div(i):m(i,r,o);if(s=u.s,s<0){if(n<e.d.length-1)return new c(NaN);if((e.d[n]&1)==0&&(s=1),u.e==0&&u.d[0]==1&&u.d.length==1)return u.s=s,u}return t=D(+u,a),n=t==0||!isFinite(t)?W(a*(Math.log("0."+E(u.d))/Math.LN10+u.e+1)):new c(t+"").e,n>c.maxE+1||n<c.minE-1?new c(n>0?s/0:0):(b=!1,c.rounding=u.s=1,t=Math.min(12,(n+"").length),i=qe(e.times(X(u,r+t)),r),i.d&&(i=m(i,r+5,1),te(i.d,r,o)&&(n=r+10,i=m(qe(e.times(X(u,n+t)),n),n+5,1),+E(i.d).slice(r+1,r+15)+1==1e14&&(i=m(i,r+1,0)))),i.s=s,b=!0,c.rounding=o,m(i,r,o))};d.toPrecision=function(e,n){var t,r=this,i=r.constructor;return e===void 0?t=K(r,r.e<=i.toExpNeg||r.e>=i.toExpPos):(U(e,1,z),n===void 0?n=i.rounding:U(n,0,8),r=m(new i(r),e,n),t=K(r,e<=r.e||r.e<=i.toExpNeg,e)),r.isNeg()&&!r.isZero()?"-"+t:t};d.toSignificantDigits=d.toSD=function(e,n){var t=this,r=t.constructor;return e===void 0?(e=r.precision,n=r.rounding):(U(e,1,z),n===void 0?n=r.rounding:U(n,0,8)),m(new r(t),e,n)};d.toString=function(){var e=this,n=e.constructor,t=K(e,e.e<=n.toExpNeg||e.e>=n.toExpPos);return e.isNeg()&&!e.isZero()?"-"+t:t};d.truncated=d.trunc=function(){return m(new this.constructor(this),this.e+1,1)};d.valueOf=d.toJSON=function(){var e=this,n=e.constructor,t=K(e,e.e<=n.toExpNeg||e.e>=n.toExpPos);return e.isNeg()?"-"+t:t};function E(e){var n,t,r,i=e.length-1,o="",s=e[0];if(i>0){for(o+=s,n=1;n<i;n++)r=e[n]+"",t=h-r.length,t&&(o+=G(t)),o+=r;s=e[n],r=s+"",t=h-r.length,t&&(o+=G(t))}else if(s===0)return"0";for(;s%10===0;)s/=10;return o+s}function U(e,n,t){if(e!==~~e||e<n||e>t)throw Error($+e)}function te(e,n,t,r){var i,o,s,u;for(o=e[0];o>=10;o/=10)--n;return--n<0?(n+=h,i=0):(i=Math.ceil((n+1)/h),n%=h),o=D(10,h-n),u=e[i]%o|0,r==null?n<3?(n==0?u=u/100|0:n==1&&(u=u/10|0),s=t<4&&u==99999||t>3&&u==49999||u==5e4||u==0):s=(t<4&&u+1==o||t>3&&u+1==o/2)&&(e[i+1]/o/100|0)==D(10,n-2)-1||(u==o/2||u==0)&&(e[i+1]/o/100|0)==0:n<4?(n==0?u=u/1e3|0:n==1?u=u/100|0:n==2&&(u=u/10|0),s=(r||t<4)&&u==9999||!r&&t>3&&u==4999):s=((r||t<4)&&u+1==o||!r&&t>3&&u+1==o/2)&&(e[i+1]/o/1e3|0)==D(10,n-3)-1,s}function pe(e,n,t){for(var r,i=[0],o,s=0,u=e.length;s<u;){for(o=i.length;o--;)i[o]*=n;for(i[0]+=Ce.indexOf(e.charAt(s++)),r=0;r<i.length;r++)i[r]>t-1&&(i[r+1]===void 0&&(i[r+1]=0),i[r+1]+=i[r]/t|0,i[r]%=t)}return i.reverse()}function Hn(e,n){var t,r,i;if(n.isZero())return n;r=n.d.length,r<32?(t=Math.ceil(r/3),i=(1/ye(4,t)).toString()):(t=16,i="2.3283064365386962890625e-10"),e.precision+=t,n=Q(e,1,n.times(i),new e(1));for(var o=t;o--;){var s=n.times(n);n=s.times(s).minus(s).times(8).plus(1)}return e.precision-=t,n}var x=function(){function e(r,i,o){var s,u=0,c=r.length;for(r=r.slice();c--;)s=r[c]*i+u,r[c]=s%o|0,u=s/o|0;return u&&r.unshift(u),r}function n(r,i,o,s){var u,c;if(o!=s)c=o>s?1:-1;else for(u=c=0;u<o;u++)if(r[u]!=i[u]){c=r[u]>i[u]?1:-1;break}return c}function t(r,i,o,s){for(var u=0;o--;)r[o]-=u,u=r[o]<i[o]?1:0,r[o]=u*s+r[o]-i[o];for(;!r[0]&&r.length>1;)r.shift()}return function(r,i,o,s,u,c){var a,f,l,p,g,w,y,A,L,R,P,v,se,Z,Le,ue,ee,Se,C,ae,ce=r.constructor,ke=r.s==i.s?1:-1,_=r.d,N=i.d;if(!_||!_[0]||!N||!N[0])return new ce(!r.s||!i.s||(_?N&&_[0]==N[0]:!N)?NaN:_&&_[0]==0||!N?ke*0:ke/0);for(c?(g=1,f=r.e-i.e):(c=M,g=h,f=W(r.e/g)-W(i.e/g)),C=N.length,ee=_.length,L=new ce(ke),R=L.d=[],l=0;N[l]==(_[l]||0);l++);if(N[l]>(_[l]||0)&&f--,o==null?(Z=o=ce.precision,s=ce.rounding):u?Z=o+(r.e-i.e)+1:Z=o,Z<0)R.push(1),w=!0;else{if(Z=Z/g+2|0,l=0,C==1){for(p=0,N=N[0],Z++;(l<ee||p)&&Z--;l++)Le=p*c+(_[l]||0),R[l]=Le/N|0,p=Le%N|0;w=p||l<ee}else{for(p=c/(N[0]+1)|0,p>1&&(N=e(N,p,c),_=e(_,p,c),C=N.length,ee=_.length),ue=C,P=_.slice(0,C),v=P.length;v<C;)P[v++]=0;ae=N.slice(),ae.unshift(0),Se=N[0],N[1]>=c/2&&++Se;do p=0,a=n(N,P,C,v),a<0?(se=P[0],C!=v&&(se=se*c+(P[1]||0)),p=se/Se|0,p>1?(p>=c&&(p=c-1),y=e(N,p,c),A=y.length,v=P.length,a=n(y,P,A,v),a==1&&(p--,t(y,C<A?ae:N,A,c))):(p==0&&(a=p=1),y=N.slice()),A=y.length,A<v&&y.unshift(0),t(P,y,v,c),a==-1&&(v=P.length,a=n(N,P,C,v),a<1&&(p++,t(P,C<v?ae:N,v,c))),v=P.length):a===0&&(p++,P=[0]),R[l++]=p,a&&P[0]?P[v++]=_[ue]||0:(P=[_[ue]],v=1);while((ue++<ee||P[0]!==void 0)&&Z--);w=P[0]!==void 0}R[0]||R.shift()}if(g==1)L.e=f,an=w;else{for(l=1,p=R[0];p>=10;p/=10)l++;L.e=l+f*g-1,m(L,u?o+L.e+1:o,s,w)}return L}}();function m(e,n,t,r){var i,o,s,u,c,a,f,l,p,g=e.constructor;e:if(n!=null){if(l=e.d,!l)return e;for(i=1,u=l[0];u>=10;u/=10)i++;if(o=n-i,o<0)o+=h,s=n,f=l[p=0],c=f/D(10,i-s-1)%10|0;else if(p=Math.ceil((o+1)/h),u=l.length,p>=u)if(r){for(;u++<=p;)l.push(0);f=c=0,i=1,o%=h,s=o-h+1}else break e;else{for(f=u=l[p],i=1;u>=10;u/=10)i++;o%=h,s=o-h+i,c=s<0?0:f/D(10,i-s-1)%10|0}if(r=r||n<0||l[p+1]!==void 0||(s<0?f:f%D(10,i-s-1)),a=t<4?(c||r)&&(t==0||t==(e.s<0?3:2)):c>5||c==5&&(t==4||r||t==6&&(o>0?s>0?f/D(10,i-s):0:l[p-1])%10&1||t==(e.s<0?8:7)),n<1||!l[0])return l.length=0,a?(n-=e.e+1,l[0]=D(10,(h-n%h)%h),e.e=-n||0):l[0]=e.e=0,e;if(o==0?(l.length=p,u=1,p--):(l.length=p+1,u=D(10,h-o),l[p]=s>0?(f/D(10,i-s)%D(10,s)|0)*u:0),a)for(;;)if(p==0){for(o=1,s=l[0];s>=10;s/=10)o++;for(s=l[0]+=u,u=1;s>=10;s/=10)u++;o!=u&&(e.e++,l[0]==M&&(l[0]=1));break}else{if(l[p]+=u,l[p]!=M)break;l[p--]=0,u=1}for(o=l.length;l[--o]===0;)l.pop()}return b&&(e.e>g.maxE?(e.d=null,e.e=NaN):e.e<g.minE&&(e.e=0,e.d=[0])),e}function K(e,n,t){if(!e.isFinite())return hn(e);var r,i=e.e,o=E(e.d),s=o.length;return n?(t&&(r=t-s)>0?o=o.charAt(0)+"."+o.slice(1)+G(r):s>1&&(o=o.charAt(0)+"."+o.slice(1)),o=o+(e.e<0?"e":"e+")+e.e):i<0?(o="0."+G(-i-1)+o,t&&(r=t-s)>0&&(o+=G(r))):i>=s?(o+=G(i+1-s),t&&(r=t-i-1)>0&&(o=o+"."+G(r))):((r=i+1)<s&&(o=o.slice(0,r)+"."+o.slice(r)),t&&(r=t-s)>0&&(i+1===s&&(o+="."),o+=G(r))),o}function be(e,n){var t=e[0];for(n*=h;t>=10;t/=10)n++;return n}function ge(e,n,t){if(n>Zn)throw b=!0,t&&(e.precision=t),Error(cn);return m(new e(de),n,1,!0)}function F(e,n,t){if(n>Me)throw Error(cn);return m(new e(me),n,t,!0)}function dn(e){var n=e.length-1,t=n*h+1;if(n=e[n],n){for(;n%10==0;n/=10)t--;for(n=e[0];n>=10;n/=10)t++}return t}function G(e){for(var n="";e--;)n+="0";return n}function mn(e,n,t,r){var i,o=new e(1),s=Math.ceil(r/h+4);for(b=!1;;){if(t%2&&(o=o.times(n),sn(o.d,s)&&(i=!0)),t=W(t/2),t===0){t=o.d.length-1,i&&o.d[t]===0&&++o.d[t];break}n=n.times(n),sn(n.d,s)}return b=!0,o}function on(e){return e.d[e.d.length-1]&1}function gn(e,n,t){for(var r,i=new e(n[0]),o=0;++o<n.length;)if(r=new e(n[o]),r.s)i[t](r)&&(i=r);else{i=r;break}return i}function qe(e,n){var t,r,i,o,s,u,c,a=0,f=0,l=0,p=e.constructor,g=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(n==null?(b=!1,c=w):c=n,u=new p(.03125);e.e>-2;)e=e.times(u),l+=5;for(r=Math.log(D(2,l))/Math.LN10*2+5|0,c+=r,t=o=s=new p(1),p.precision=c;;){if(o=m(o.times(e),c,1),t=t.times(++f),u=s.plus(x(o,t,c,1)),E(u.d).slice(0,c)===E(s.d).slice(0,c)){for(i=l;i--;)s=m(s.times(s),c,1);if(n==null)if(a<3&&te(s.d,c-r,g,a))p.precision=c+=10,t=o=u=new p(1),f=0,a++;else return m(s,p.precision=w,g,b=!0);else return p.precision=w,s}s=u}}function X(e,n){var t,r,i,o,s,u,c,a,f,l,p,g=1,w=10,y=e,A=y.d,L=y.constructor,R=L.rounding,P=L.precision;if(y.s<0||!A||!A[0]||!y.e&&A[0]==1&&A.length==1)return new L(A&&!A[0]?-1/0:y.s!=1?NaN:A?0:y);if(n==null?(b=!1,f=P):f=n,L.precision=f+=w,t=E(A),r=t.charAt(0),Math.abs(o=y.e)<15e14){for(;r<7&&r!=1||r==1&&t.charAt(1)>3;)y=y.times(e),t=E(y.d),r=t.charAt(0),g++;o=y.e,r>1?(y=new L("0."+t),o++):y=new L(r+"."+t.slice(1))}else return a=ge(L,f+2,P).times(o+""),y=X(new L(r+"."+t.slice(1)),f-w).plus(a),L.precision=P,n==null?m(y,P,R,b=!0):y;for(l=y,c=s=y=x(y.minus(1),y.plus(1),f,1),p=m(y.times(y),f,1),i=3;;){if(s=m(s.times(p),f,1),a=c.plus(x(s,new L(i),f,1)),E(a.d).slice(0,f)===E(c.d).slice(0,f))if(c=c.times(2),o!==0&&(c=c.plus(ge(L,f+2,P).times(o+""))),c=x(c,new L(g),f,1),n==null)if(te(c.d,f-w,R,u))L.precision=f+=w,a=s=y=x(l.minus(1),l.plus(1),f,1),p=m(y.times(y),f,1),i=u=1;else return m(c,L.precision=P,R,b=!0);else return L.precision=P,c;c=a,i+=2}}function hn(e){return String(e.s*e.s/0)}function Ie(e,n){var t,r,i;for((t=n.indexOf("."))>-1&&(n=n.replace(".","")),(r=n.search(/e/i))>0?(t<0&&(t=r),t+=+n.slice(r+1),n=n.substring(0,r)):t<0&&(t=n.length),r=0;n.charCodeAt(r)===48;r++);for(i=n.length;n.charCodeAt(i-1)===48;--i);if(n=n.slice(r,i),n){if(i-=r,e.e=t=t-r-1,e.d=[],r=(t+1)%h,t<0&&(r+=h),r<i){for(r&&e.d.push(+n.slice(0,r)),i-=h;r<i;)e.d.push(+n.slice(r,r+=h));n=n.slice(r),r=h-n.length}else r-=i;for(;r--;)n+="0";e.d.push(+n),b&&(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 Vn(e,n){var t,r,i,o,s,u,c,a,f;if(n.indexOf("_")>-1){if(n=n.replace(/(\d)_(?=\d)/g,"$1"),pn.test(n))return Ie(e,n)}else if(n==="Infinity"||n==="NaN")return+n||(e.s=NaN),e.e=NaN,e.d=null,e;if(In.test(n))t=16,n=n.toLowerCase();else if(qn.test(n))t=2;else if(Kn.test(n))t=8;else throw Error($+n);for(o=n.search(/p/i),o>0?(c=+n.slice(o+1),n=n.substring(2,o)):n=n.slice(2),o=n.indexOf("."),s=o>=0,r=e.constructor,s&&(n=n.replace(".",""),u=n.length,o=u-o,i=mn(r,new r(t),o,o*2)),a=pe(n,t,M),f=a.length-1,o=f;a[o]===0;--o)a.pop();return o<0?new r(e.s*0):(e.e=be(a,f),e.d=a,b=!1,s&&(e=x(e,i,u*4)),c&&(e=e.times(Math.abs(c)<54?D(2,c):we.pow(2,c))),b=!0,e)}function Yn(e,n){var t,r=n.d.length;if(r<3)return n.isZero()?n:Q(e,2,n,n);t=1.4*Math.sqrt(r),t=t>16?16:t|0,n=n.times(1/ye(5,t)),n=Q(e,2,n,n);for(var i,o=new e(5),s=new e(16),u=new e(20);t--;)i=n.times(n),n=n.times(o.plus(i.times(s.times(i).minus(u))));return n}function Q(e,n,t,r,i){var o,s,u,c,a=1,f=e.precision,l=Math.ceil(f/h);for(b=!1,c=t.times(t),u=new e(r);;){if(s=x(u.times(c),new e(n++*n++),f,1),u=i?r.plus(s):r.minus(s),r=x(s.times(c),new e(n++*n++),f,1),s=u.plus(r),s.d[l]!==void 0){for(o=l;s.d[o]===u.d[o]&&o--;);if(o==-1)break}o=u,u=r,r=s,s=o,a++}return b=!0,s.d.length=l+1,s}function ye(e,n){for(var t=e;--n;)t*=e;return t}function bn(e,n){var t,r=n.s<0,i=F(e,e.precision,1),o=i.times(.5);if(n=n.abs(),n.lte(o))return H=r?4:1,n;if(t=n.divToInt(i),t.isZero())H=r?3:2;else{if(n=n.minus(t.times(i)),n.lte(o))return H=on(t)?r?2:3:r?4:1,n;H=on(t)?r?1:4:r?3:2}return n.minus(i).abs()}function Ke(e,n,t,r){var i,o,s,u,c,a,f,l,p,g=e.constructor,w=t!==void 0;if(w?(U(t,1,z),r===void 0?r=g.rounding:U(r,0,8)):(t=g.precision,r=g.rounding),!e.isFinite())f=hn(e);else{for(f=K(e),s=f.indexOf("."),w?(i=2,n==16?t=t*4-3:n==8&&(t=t*3-2)):i=n,s>=0&&(f=f.replace(".",""),p=new g(1),p.e=f.length-s,p.d=pe(K(p),10,i),p.e=p.d.length),l=pe(f,10,i),o=c=l.length;l[--c]==0;)l.pop();if(!l[0])f=w?"0p+0":"0";else{if(s<0?o--:(e=new g(e),e.d=l,e.e=o,e=x(e,p,t,r,0,i),l=e.d,o=e.e,a=an),s=l[t],u=i/2,a=a||l[t+1]!==void 0,a=r<4?(s!==void 0||a)&&(r===0||r===(e.s<0?3:2)):s>u||s===u&&(r===4||a||r===6&&l[t-1]&1||r===(e.s<0?8:7)),l.length=t,a)for(;++l[--t]>i-1;)l[t]=0,t||(++o,l.unshift(1));for(c=l.length;!l[c-1];--c);for(s=0,f="";s<c;s++)f+=Ce.charAt(l[s]);if(w){if(c>1)if(n==16||n==8){for(s=n==16?4:3,--c;c%s;c++)f+="0";for(l=pe(f,i,n),c=l.length;!l[c-1];--c);for(s=1,f="1.";s<c;s++)f+=Ce.charAt(l[s])}else f=f.charAt(0)+"."+f.slice(1);f=f+(o<0?"p":"p+")+o}else if(o<0){for(;++o;)f="0"+f;f="0."+f}else if(++o>c)for(o-=c;o--;)f+="0";else o<c&&(f=f.slice(0,o)+"."+f.slice(o))}f=(n==16?"0x":n==2?"0b":n==8?"0o":"")+f}return e.s<0?"-"+f:f}function sn(e,n){if(e.length>n)return e.length=n,!0}function Gn(e){return new this(e).abs()}function Xn(e){return new this(e).acos()}function $n(e){return new this(e).acosh()}function zn(e,n){return new this(e).plus(n)}function Jn(e){return new this(e).asin()}function Qn(e){return new this(e).asinh()}function et(e){return new this(e).atan()}function nt(e){return new this(e).atanh()}function tt(e,n){e=new this(e),n=new this(n);var t,r=this.precision,i=this.rounding,o=r+4;return!e.s||!n.s?t=new this(NaN):!e.d&&!n.d?(t=F(this,o,1).times(n.s>0?.25:.75),t.s=e.s):!n.d||e.isZero()?(t=n.s<0?F(this,r,i):new this(0),t.s=e.s):!e.d||n.isZero()?(t=F(this,o,1).times(.5),t.s=e.s):n.s<0?(this.precision=o,this.rounding=1,t=this.atan(x(e,n,o,1)),n=F(this,o,1),this.precision=r,this.rounding=i,t=e.s<0?t.minus(n):t.plus(n)):t=this.atan(x(e,n,o,1)),t}function rt(e){return new this(e).cbrt()}function it(e){return m(e=new this(e),e.e+1,2)}function ot(e,n,t){return new this(e).clamp(n,t)}function st(e){if(!e||typeof e!="object")throw Error(he+"Object expected");var n,t,r,i=e.defaults===!0,o=["precision",1,z,"rounding",0,8,"toExpNeg",-J,0,"toExpPos",0,J,"maxE",0,J,"minE",-J,0,"modulo",0,9];for(n=0;n<o.length;n+=3)if(t=o[n],i&&(this[t]=Fe[t]),(r=e[t])!==void 0)if(W(r)===r&&r>=o[n+1]&&r<=o[n+2])this[t]=r;else throw Error($+t+": "+r);if(t="crypto",i&&(this[t]=Fe[t]),(r=e[t])!==void 0)if(r===!0||r===!1||r===0||r===1)if(r)if(typeof crypto<"u"&&crypto&&(crypto.getRandomValues||crypto.randomBytes))this[t]=!0;else throw Error(fn);else this[t]=!1;else throw Error($+t+": "+r);return this}function ut(e){return new this(e).cos()}function at(e){return new this(e).cosh()}function yn(e){var n,t,r;function i(o){var s,u,c,a=this;if(!(a instanceof i))return new i(o);if(a.constructor=i,un(o)){a.s=o.s,b?!o.d||o.e>i.maxE?(a.e=NaN,a.d=null):o.e<i.minE?(a.e=0,a.d=[0]):(a.e=o.e,a.d=o.d.slice()):(a.e=o.e,a.d=o.d?o.d.slice():o.d);return}if(c=typeof o,c==="number"){if(o===0){a.s=1/o<0?-1:1,a.e=0,a.d=[0];return}if(o<0?(o=-o,a.s=-1):a.s=1,o===~~o&&o<1e7){for(s=0,u=o;u>=10;u/=10)s++;b?s>i.maxE?(a.e=NaN,a.d=null):s<i.minE?(a.e=0,a.d=[0]):(a.e=s,a.d=[o]):(a.e=s,a.d=[o]);return}else if(o*0!==0){o||(a.s=NaN),a.e=NaN,a.d=null;return}return Ie(a,o.toString())}else if(c!=="string")throw Error($+o);return(u=o.charCodeAt(0))===45?(o=o.slice(1),a.s=-1):(u===43&&(o=o.slice(1)),a.s=1),pn.test(o)?Ie(a,o):Vn(a,o)}if(i.prototype=d,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=st,i.clone=yn,i.isDecimal=un,i.abs=Gn,i.acos=Xn,i.acosh=$n,i.add=zn,i.asin=Jn,i.asinh=Qn,i.atan=et,i.atanh=nt,i.atan2=tt,i.cbrt=rt,i.ceil=it,i.clamp=ot,i.cos=ut,i.cosh=at,i.div=ct,i.exp=ft,i.floor=lt,i.hypot=pt,i.ln=dt,i.log=mt,i.log10=ht,i.log2=gt,i.max=bt,i.min=yt,i.mod=wt,i.mul=Pt,i.pow=xt,i.random=Nt,i.round=Tt,i.sign=Lt,i.sin=St,i.sinh=kt,i.sqrt=Bt,i.sub=Dt,i.sum=Et,i.tan=vt,i.tanh=_t,i.trunc=Wt,e===void 0&&(e={}),e&&e.defaults!==!0)for(r=["precision","rounding","toExpNeg","toExpPos","maxE","minE","modulo","crypto"],n=0;n<r.length;)e.hasOwnProperty(t=r[n++])||(e[t]=this[t]);return i.config(e),i}function ct(e,n){return new this(e).div(n)}function ft(e){return new this(e).exp()}function lt(e){return m(e=new this(e),e.e+1,3)}function pt(){var e,n,t=new this(0);for(b=!1,e=0;e<arguments.length;)if(n=new this(arguments[e++]),n.d)t.d&&(t=t.plus(n.times(n)));else{if(n.s)return b=!0,new this(1/0);t=n}return b=!0,t.sqrt()}function un(e){return e instanceof we||e&&e.toStringTag===ln||!1}function dt(e){return new this(e).ln()}function mt(e,n){return new this(e).log(n)}function gt(e){return new this(e).log(2)}function ht(e){return new this(e).log(10)}function bt(){return gn(this,arguments,"lt")}function yt(){return gn(this,arguments,"gt")}function wt(e,n){return new this(e).mod(n)}function Pt(e,n){return new this(e).mul(n)}function xt(e,n){return new this(e).pow(n)}function Nt(e){var n,t,r,i,o=0,s=new this(1),u=[];if(e===void 0?e=this.precision:U(e,1,z),r=Math.ceil(e/h),this.crypto)if(crypto.getRandomValues)for(n=crypto.getRandomValues(new Uint32Array(r));o<r;)i=n[o],i>=429e7?n[o]=crypto.getRandomValues(new Uint32Array(1))[0]:u[o++]=i%1e7;else if(crypto.randomBytes){for(n=crypto.randomBytes(r*=4);o<r;)i=n[o]+(n[o+1]<<8)+(n[o+2]<<16)+((n[o+3]&127)<<24),i>=214e7?crypto.randomBytes(4).copy(n,o):(u.push(i%1e7),o+=4);o=r/4}else throw Error(fn);else for(;o<r;)u[o++]=Math.random()*1e7|0;for(r=u[--o],e%=h,r&&e&&(i=D(10,h-e),u[o]=(r/i|0)*i);u[o]===0;o--)u.pop();if(o<0)t=0,u=[0];else{for(t=-1;u[0]===0;t-=h)u.shift();for(r=1,i=u[0];i>=10;i/=10)r++;r<h&&(t-=h-r)}return s.e=t,s.d=u,s}function Tt(e){return m(e=new this(e),e.e+1,this.rounding)}function Lt(e){return e=new this(e),e.d?e.d[0]?e.s:0*e.s:e.s||NaN}function St(e){return new this(e).sin()}function kt(e){return new this(e).sinh()}function Bt(e){return new this(e).sqrt()}function Dt(e,n){return new this(e).sub(n)}function Et(){var e=0,n=arguments,t=new this(n[e]);for(b=!1;t.s&&++e<n.length;)t=t.plus(n[e]);return b=!0,m(t,this.precision,this.rounding)}function vt(e){return new this(e).tan()}function _t(e){return new this(e).tanh()}function Wt(e){return m(e=new this(e),e.e+1,1)}d[Symbol.for("nodejs.util.inspect.custom")]=d.toString;d[Symbol.toStringTag]="Decimal";var we=d.constructor=yn(Fe);de=new we(de);me=new we(me);import{PublicKey as Ze}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as At}from"@solana/spl-token";import{PublicKey as S,SystemProgram as Ut,SYSVAR_RENT_PUBKEY as Ot}from"@solana/web3.js";function je({pubkey:e,isSigner:n=!1,isWritable:t=!0}){return{pubkey:e,isWritable:t,isSigner:n}}var mi=[je({pubkey:At,isWritable:!1}),je({pubkey:Ut.programId,isWritable:!1}),je({pubkey:Ot,isWritable:!1})];function Pn({publicKey:e,transformSol:n}){let t=xn(e.toString());if(t instanceof S)return n&&t.equals(re)?wn:t;if(n&&t.toString()===re.toBase58())return wn;if(typeof t=="string"){if(t===S.default.toBase58())return S.default;try{return new S(t)}catch{throw new Error("invalid public key")}}throw new Error("invalid public key")}function xn(e){try{return new S(e)}catch{return e}}var gi=new S("MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"),hi=new S("SysvarRent111111111111111111111111111111111"),bi=new S("SysvarC1ock11111111111111111111111111111111"),yi=new S("metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),wi=new S("Sysvar1nstructions1111111111111111111111111"),Pi=new S("4k3Dyjzvzp8eMZWUXbBCjEvwSkkk59S5iCNLY3QrkX6R"),xi=new S("Ea5SjE2Y6yvCeW5dYTn7PYMuW5ikXkvbGdcmSnXeaLjS"),Ni=new S("SRMuApVNdxXokk5GT7XD5cUUgXMBCoAz2LHeuAoKWRt"),Ti=new S("EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"),Li=new S("Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB"),Si=new S("mSoLzYCxHdYgdzU16g5QSh3i5K3z3KZK7ytfqcJm7So"),ki=new S("7dHbWXmci3dT8UFYWYZweBLXgycu7Y3iL6trKn1Y7ARj"),Bi=new S("USDH1SM1ojwWUga67PGrgFWUHibbjqMvuMaDkRJTgkX"),Di=new S("NRVwhjBQiUPYtfDT5zRBVJajzFQHaBUNtC7SNVvqRFa"),Ei=new S("ANAxByE6G2WjFp7A4NqtWYXb3mgruyzZYg3spfxe6Lbo"),vi=new S("7vfCXTUXx5WJV5JADk17DUJ4ksgau7utNKj4b963voxs"),wn=new S("So11111111111111111111111111111111111111112"),re=S.default;var He=class{constructor({mint:n,decimals:t,symbol:r,name:i,skipMint:o=!1,isToken2022:s=!1}){if(n===re.toBase58()||n instanceof Ze&&re.equals(n)){this.decimals=I.decimals,this.symbol=I.symbol,this.name=I.name,this.mint=new Ze(I.address),this.isToken2022=!1;return}this.decimals=t,this.symbol=r||n.toString().substring(0,6),this.name=i||n.toString().substring(0,6),this.mint=o?Ze.default:Pn({publicKey:n}),this.isToken2022=s}equals(n){return this===n?!0:this.mint.equals(n.mint)}},V=He;V.WSOL=new He(Be(le({},I),{mint:I.address}));import{get as Nn,set as Rt}from"lodash";import Ln from"dayjs";import Ct from"dayjs/plugin/utc";Ln.extend(Ct);var Ve=class{constructor(n){this.logLevel=n.logLevel!==void 0?n.logLevel:0,this.name=n.name}set level(n){this.logLevel=n}get time(){return Ln().utc().format("YYYY/MM/DD HH:mm:ss UTC")}get moduleName(){return this.name}isLogLevel(n){return n<=this.logLevel}error(...n){return this.isLogLevel(0)?(console.error(this.time,this.name,"sdk logger error",...n),this):this}logWithError(...n){let t=n.map(r=>typeof r=="object"?JSON.stringify(r):r).join(", ");throw new Error(t)}warning(...n){return this.isLogLevel(1)?(console.warn(this.time,this.name,"sdk logger warning",...n),this):this}info(...n){return this.isLogLevel(2)?(console.info(this.time,this.name,"sdk logger info",...n),this):this}debug(...n){return this.isLogLevel(3)?(console.debug(this.time,this.name,"sdk logger debug",...n),this):this}},Tn={},Ft={};function Y(e){let n=Nn(Tn,e);if(!n){let t=Nn(Ft,e);n=new Ve({name:e,logLevel:t}),Rt(Tn,e,n)}return n}import xe from"big.js";import It from"bn.js";import Kt from"decimal.js-light";import Mt from"toformat";var qt=Mt,ie=qt;var Pe=Y("module/fraction"),Ye=ie(xe),oe=ie(Kt),jt={[0]:oe.ROUND_DOWN,[1]:oe.ROUND_HALF_UP,[2]:oe.ROUND_UP},Zt={[0]:xe.roundDown,[1]:xe.roundHalfUp,[2]:xe.roundUp},T=class{constructor(n,t=new It(1)){this.numerator=q(n),this.denominator=q(t)}get quotient(){return this.numerator.div(this.denominator)}invert(){return new T(this.denominator,this.numerator)}add(n){let t=n instanceof T?n:new T(q(n));return this.denominator.eq(t.denominator)?new T(this.numerator.add(t.numerator),this.denominator):new T(this.numerator.mul(t.denominator).add(t.numerator.mul(this.denominator)),this.denominator.mul(t.denominator))}sub(n){let t=n instanceof T?n:new T(q(n));return this.denominator.eq(t.denominator)?new T(this.numerator.sub(t.numerator),this.denominator):new T(this.numerator.mul(t.denominator).sub(t.numerator.mul(this.denominator)),this.denominator.mul(t.denominator))}mul(n){let t=n instanceof T?n:new T(q(n));return new T(this.numerator.mul(t.numerator),this.denominator.mul(t.denominator))}div(n){let t=n instanceof T?n:new T(q(n));return new T(this.numerator.mul(t.denominator),this.denominator.mul(t.numerator))}toSignificant(n,t={groupSeparator:""},r=1){Number.isInteger(n)||Pe.logWithError(`${n} is not an integer.`),n<=0&&Pe.logWithError(`${n} is not positive.`),oe.set({precision:n+1,rounding:jt[r]});let i=new oe(this.numerator.toString()).div(this.denominator.toString()).toSignificantDigits(n);return i.toFormat(i.decimalPlaces(),t)}toFixed(n,t={groupSeparator:""},r=1){return Number.isInteger(n)||Pe.logWithError(`${n} is not an integer.`),n<0&&Pe.logWithError(`${n} is negative.`),Ye.DP=n,Ye.RM=Zt[r]||1,new Ye(this.numerator.toString()).div(this.denominator.toString()).toFormat(n,t)}isZero(){return this.numerator.isZero()}};var ro=Y("Raydium_price");var Ge=class{constructor({decimals:n,symbol:t="UNKNOWN",name:r="UNKNOWN"}){this.decimals=n,this.symbol=t,this.name=r}equals(n){return this===n}},Ne=Ge;Ne.SOL=new Ge(ne);import Vt from"bn.js";var lo=new T(new Vt(100));import{PublicKey as Po}from"@solana/web3.js";import No from"bn.js";var Yt=new O(0),qo=new O(1),Io=new O(2),Ko=new O(3),jo=new O(5),Dn=new O(10),Zo=new O(100),Ho=new O(1e3),Vo=new O(1e4),Bn=9007199254740991;function q(e){let n=Y("Raydium_parseBigNumberish");if(e instanceof O)return e;if(typeof e=="string"){if(e.match(/^-?[0-9]+$/))return new O(e);n.logWithError(`invalid BigNumberish string: ${e}`)}return typeof e=="number"?(e%1&&n.logWithError(`BigNumberish number underflow: ${e}`),(e>=Bn||e<=-Bn)&&n.logWithError(`BigNumberish number overflow: ${e}`),new O(String(e))):typeof e=="bigint"?new O(e.toString()):(n.error(`invalid BigNumberish value: ${e}`),new O(0))}var Xt=Y("Raydium_amount"),En=ie(Gt);function $t(e,n){let t="0",r="0";if(e.includes(".")){let i=e.split(".");i.length===2?([t,r]=i,r=r.padEnd(n,"0")):Xt.logWithError(`invalid number string, num: ${e}`)}else t=e;return[t,r.slice(0,n)||r]}var j=class extends T{constructor(t,r,i=!0,o){let s=new Te(0),u=Dn.pow(new Te(t.decimals));if(i)s=q(r);else{let c=new Te(0),a=new Te(0);if(typeof r=="string"||typeof r=="number"||typeof r=="bigint"){let[f,l]=$t(r.toString(),t.decimals);c=q(f),a=q(l)}c=c.mul(u),s=c.add(a)}super(s,u);this.logger=Y(o||"TokenAmount"),this.token=t}get raw(){return this.numerator}isZero(){return this.raw.isZero()}gt(t){return this.token.equals(t.token)||this.logger.logWithError("gt token not equals"),this.raw.gt(t.raw)}lt(t){return this.token.equals(t.token)||this.logger.logWithError("lt token not equals"),this.raw.lt(t.raw)}add(t){return this.token.equals(t.token)||this.logger.logWithError("add token not equals"),new j(this.token,this.raw.add(t.raw))}subtract(t){return this.token.equals(t.token)||this.logger.logWithError("sub token not equals"),new j(this.token,this.raw.sub(t.raw))}toSignificant(t=this.token.decimals,r,i=0){return super.toSignificant(t,r,i)}toFixed(t=this.token.decimals,r,i=0){return t>this.token.decimals&&this.logger.logWithError("decimals overflow"),super.toFixed(t,r,i)}toExact(t={groupSeparator:""}){return En.DP=this.token.decimals,new En(this.numerator.toString()).div(this.denominator.toString()).toFormat(t)}};var ws=async({connection:e,mint:n})=>{let t=await e.getAccountInfo(new zt(n));return!t||t.data.length!==vn.span?void 0:vn.decode(t.data)},Ps=({mint:e,decimals:n,programId:t=Jt,logoURI:r="",priority:i=3})=>{let o=e.toBase58().substring(0,6);return{address:e.toBase58(),decimals:n,symbol:o,logoURI:r,extensions:{},chainId:101,programId:t.toString(),name:o,tags:[],priority:i}},xs=e=>new V({mint:e.address,decimals:e.decimals,symbol:e.symbol,name:e.name}),Ns=i=>{var o=i,{amount:e,isRaw:n,name:t}=o,r=Je(o,["amount","isRaw","name"]);return new j(new V({mint:r.address,decimals:r.decimals,symbol:r.symbol,name:t}),e,n,t)};function Ts(e){return e.address===ne.address?I:e}function Ls(e){return e.address===I.address?ne:e}export{ne as SOL_INFO,ai as SPL_MINT_LAYOUT,I as TOKEN_WSOL,ws as parseTokenInfo,Ts as solToWSolToken,xs as toToken,Ns as toTokenAmount,Ps as toTokenInfo,Ls as wSolToSolToken};
//# sourceMappingURL=index.mjs.map