UNPKG

@cobaltx/sdk-v2

Version:

An SDK for building applications on top of CobaltX.

10 lines 58 kB
import{MINT_SIZE as wr,TOKEN_PROGRAM_ID as yr,getTransferFeeConfig as xr,unpackMint as Pr}from"@solana/spl-token";import{PublicKey as Er}from"@solana/web3.js";import{get as et,set as It}from"lodash";var Re=class{constructor(t){this.logLevel=t.logLevel!==void 0?t.logLevel:0,this.name=t.name}set level(t){this.logLevel=t}get time(){return Date.now().toString()}get moduleName(){return this.name}isLogLevel(t){return t<=this.logLevel}error(...t){return this.isLogLevel(0)?(console.error(this.time,this.name,"sdk logger error",...t),this):this}logWithError(...t){let 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}},tt={},Dt={};function M(e){let t=et(tt,e);if(!t){let n=et(Dt,e);t=new Re({name:e,logLevel:n}),It(tt,e,t)}return t}var kr=M("CobaltX_accountInfo_util");import j from"bn.js";var ee=9e15,Z=1e9,Oe="0123456789abcdef",be="2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058",Te="3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789",ve={precision:20,rounding:4,modulo:1,toExpNeg:-7,toExpPos:21,minE:-ee,maxE:ee,crypto:!1},ot,q,T=!0,ye="[DecimalError] ",Q=ye+"Invalid argument: ",st=ye+"Precision limit exceeded",at=ye+"crypto unavailable",ut="[object Decimal]",I=Math.floor,B=Math.pow,Mt=/^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i,Rt=/^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i,Ot=/^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i,ct=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,K=1e7,h=7,vt=9007199254740991,Kt=be.length-1,Ke=Te.length-1,m={toStringTag:ut};m.absoluteValue=m.abs=function(){var e=new this.constructor(this);return e.s<0&&(e.s=1),g(e)};m.ceil=function(){return g(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(Q+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())+h,r.rounding=1,n=Ut(r,dt(r,n)),r.precision=e,r.rounding=t,g(q==2||q==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(T=!1,o=l.s*B(l.s*l,1/3),!o||Math.abs(o)==1/0?(n=L(l.d),e=l.e,(o=(e-n.length+1)%3)&&(n+=o==1||o==-2?"0":"00"),o=B(n,1/3),e=I((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=A(u.plus(l).times(a),u.plus(c),s+2,1),L(a.d).slice(0,s)===(n=L(r.d)).slice(0,s))if(n=n.slice(s-3,s+1),n=="9999"||!i&&n=="4999"){if(!i&&(g(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")&&(g(r,e+1,1),t=!r.times(r).times(r).eq(l));break}return T=!0,g(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-I(this.e/h))*h,e=t[e],e)for(;e%10==0;e/=10)n--;n<0&&(n=0)}return n};m.dividedBy=m.div=function(e){return A(this,new this.constructor(e))};m.dividedToIntegerBy=m.divToInt=function(e){var t=this,n=t.constructor;return g(A(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 g(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/Pe(4,e)).toString()):(e=16,t="2.3283064365386962890625e-10"),o=te(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 g(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=te(o,2,i,i,!0);else{e=1.4*Math.sqrt(r),e=e>16?16:e|0,i=i.times(1/Pe(5,e)),i=te(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,g(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,A(n.sinh(),n.cosh(),r.precision=e,r.rounding=t)):new r(n.s)};m.inverseCosine=m.acos=function(){var e=this,t=e.constructor,n=e.abs().cmp(1),r=t.precision,i=t.rounding;return n!==-1?n===0?e.isNeg()?V(t,r,i):new t(0):new t(NaN):e.isZero()?V(t,r+4,i).times(.5):(t.precision=r+6,t.rounding=1,e=new t(1).minus(e).div(e.plus(1)).sqrt().atan(),t.precision=r,t.rounding=i,e.times(2))};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,T=!1,n=n.times(n).minus(1).sqrt().plus(n),T=!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,T=!1,n=n.times(n).plus(1).sqrt().plus(n),T=!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?g(new o(i),e,t,!0):(o.precision=n=r-i.e,i=A(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=V(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<=Ke)return s=V(l,f+4,p).times(.25),s.s=u.s,s}else{if(!u.s)return new l(NaN);if(f+4<=Ke)return s=V(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/h+2|0),e=n;e;--e)u=u.div(u.times(u).plus(1).sqrt().plus(1));for(T=!1,t=Math.ceil(a/h),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)),T=!0,g(s,l.precision=f,l.rounding=p,!0)};m.isFinite=function(){return!!this.d};m.isInteger=m.isInt=function(){return!!this.d&&I(this.e/h)>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(T=!1,a=f+d,s=z(u,a),r=t?we(l,a+10):z(e,a),c=A(s,r,a,1),ie(c.d,i=f,p))do if(a+=10,s=z(u,a),r=t?we(l,a+10):z(e,a),c=A(s,r,a,1),!o){+L(c.d).slice(i+1,i+15)+1==1e14&&(c=g(c,f+1,0));break}while(ie(c.d,i+=10,p));return T=!0,g(c,f,p)};m.minus=m.sub=function(e){var t,n,r,i,o,s,a,c,u,l,f,p,d=this,P=d.constructor;if(e=new P(e),!d.d||!e.d)return!d.s||!e.s?e=new P(NaN):d.d?e.s=-e.s:e=new P(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=P.precision,c=P.rounding,!u[0]||!p[0]){if(p[0])e.s=-e.s;else if(u[0])e=new P(d);else return new P(c===3?-0:0);return T?g(e,a,c):e}if(n=I(e.e/h),l=I(d.e/h),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/h),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]=K-1;--u[i],u[r]+=K}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=xe(u,n),T?g(e,a,c):e):new P(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]?g(new r(n),r.precision,r.rounding):(T=!1,r.modulo==9?(t=A(n,e.abs(),0,3,1),t.s*=e.s):t=A(n,e,0,r.modulo,1),t=t.times(e),T=!0,n.minus(t))};m.naturalExponential=m.exp=function(){return Ue(this)};m.naturalLogarithm=m.ln=function(){return z(this)};m.negated=m.neg=function(){var e=new this.constructor(this);return e.s=-e.s,g(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)),T?g(e,a,c):e;if(o=I(f.e/h),r=I(e.e/h),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/h),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)/K|0,u[i]%=K;for(t&&(u.unshift(t),++r),s=u.length;u[--s]==0;)u.pop();return e.d=u,e.e=xe(u,r),T?g(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(Q+e);return n.d?(t=lt(n.d),e&&n.e+1>t&&(t=n.e+1)):t=NaN,t};m.round=function(){var e=this,t=e.constructor;return g(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())+h,r.rounding=1,n=Vt(r,dt(r,n)),r.precision=e,r.rounding=t,g(q>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(T=!1,u=Math.sqrt(+s),u==0||u==1/0?(t=L(a),(t.length+c)%2==0&&(t+="0"),u=Math.sqrt(t),c=I((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(A(s,o,n+2,1)).times(.5),L(o.d).slice(0,n)===(t=L(r.d)).slice(0,n))if(t=t.slice(n-3,n+1),t=="9999"||!i&&t=="4999"){if(!i&&(g(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")&&(g(r,c+1,1),e=!r.times(r).eq(s));break}return T=!0,g(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=A(n,new r(1).minus(n.times(n)).sqrt(),e+10,0),r.precision=e,r.rounding=t,g(q==2||q==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=I(l.e/h)+I(e.e/h),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%K|0,t=a/K|0;o[i]=(o[i]+t)%K|0}for(;!o[--s];)o.pop();return t?++n:o.shift(),e.d=o,e.e=xe(o,n),T?g(e,f.precision,f.rounding):e};m.toBinary=function(e,t){return Fe(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:(R(e,0,Z),t===void 0?t=r.rounding:R(t,0,8),g(n,e+n.e+1,t))};m.toExponential=function(e,t){var n,r=this,i=r.constructor;return e===void 0?n=W(r,!0):(R(e,0,Z),t===void 0?t=i.rounding:R(t,0,8),r=g(new i(r),e+1,t),n=W(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=W(i):(R(e,0,Z),t===void 0?t=o.rounding:R(t,0,8),r=g(new o(i),e+i.e+1,t),n=W(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,P=d.d,b=d.constructor;if(!P)return new b(d);if(u=n=new b(1),r=c=new b(0),t=new b(r),o=t.e=lt(P)-d.e-1,s=o%h,t.d[0]=B(10,s<0?h+s:s),e==null)e=o>0?t:u;else{if(a=new b(e),!a.isInt()||a.lt(u))throw Error(Q+a);e=a.gt(t)?o>0?t:u:a}for(T=!1,a=new b(L(P)),l=b.precision,b.precision=o=P.length*h*2;f=A(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=A(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=A(u,r,o,1).minus(d).abs().cmp(A(c,n,o,1).minus(d).abs())<1?[u,r]:[c,n],b.precision=l,T=!0,p};m.toHexadecimal=m.toHex=function(e,t){return Fe(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:R(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]?(T=!1,n=A(n,e,0,t,1).times(e),T=!0,g(n)):(e.s=n.s,n=e),n};m.toNumber=function(){return+this};m.toOctal=function(e,t){return Fe(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(B(+a,u));if(a=new c(a),a.eq(1))return a;if(r=c.precision,o=c.rounding,e.eq(1))return g(a,r,o);if(t=I(e.e/h),t>=e.d.length-1&&(n=u<0?-u:u)<=vt)return i=ft(c,a,n,r),e.s<0?new c(1).div(i):g(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=B(+a,u),t=n==0||!isFinite(n)?I(u*(Math.log("0."+L(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):(T=!1,c.rounding=a.s=1,n=Math.min(12,(t+"").length),i=Ue(e.times(z(a,r+n)),r),i.d&&(i=g(i,r+5,1),ie(i.d,r,o)&&(t=r+10,i=g(Ue(e.times(z(a,t+n)),t),t+5,1),+L(i.d).slice(r+1,r+15)+1==1e14&&(i=g(i,r+1,0)))),i.s=s,T=!0,c.rounding=o,g(i,r,o))};m.toPrecision=function(e,t){var n,r=this,i=r.constructor;return e===void 0?n=W(r,r.e<=i.toExpNeg||r.e>=i.toExpPos):(R(e,1,Z),t===void 0?t=i.rounding:R(t,0,8),r=g(new i(r),e,t),n=W(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):(R(e,1,Z),t===void 0?t=r.rounding:R(t,0,8)),g(new r(n),e,t)};m.toString=function(){var e=this,t=e.constructor,n=W(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()&&!e.isZero()?"-"+n:n};m.truncated=m.trunc=function(){return g(new this.constructor(this),this.e+1,1)};m.valueOf=m.toJSON=function(){var e=this,t=e.constructor,n=W(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()?"-"+n:n};function L(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=h-r.length,n&&(o+=Y(n)),o+=r;s=e[t],r=s+"",n=h-r.length,n&&(o+=Y(n))}else if(s===0)return"0";for(;s%10===0;)s/=10;return o+s}function R(e,t,n){if(e!==~~e||e<t||e>n)throw Error(Q+e)}function ie(e,t,n,r){var i,o,s,a;for(o=e[0];o>=10;o/=10)--t;return--t<0?(t+=h,i=0):(i=Math.ceil((t+1)/h),t%=h),o=B(10,h-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)==B(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)==B(10,t-3)-1,s}function ge(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]+=Oe.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 Ut(e,t){var n,r,i;if(t.isZero())return t;r=t.d.length,r<32?(n=Math.ceil(r/3),i=(1/Pe(4,n)).toString()):(n=16,i="2.3283064365386962890625e-10"),e.precision+=n,t=te(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 A=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,P,b,D,E,O,S,k,fe,H,Ie,pe,re,De,v,me,de=r.constructor,Me=r.s==i.s?1:-1,C=r.d,N=i.d;if(!C||!C[0]||!N||!N[0])return new de(!r.s||!i.s||(C?N&&C[0]==N[0]:!N)?NaN:C&&C[0]==0||!N?Me*0:Me/0);for(c?(d=1,l=r.e-i.e):(c=K,d=h,l=I(r.e/d)-I(i.e/d)),v=N.length,re=C.length,E=new de(Me),O=E.d=[],f=0;N[f]==(C[f]||0);f++);if(N[f]>(C[f]||0)&&l--,o==null?(H=o=de.precision,s=de.rounding):a?H=o+(r.e-i.e)+1:H=o,H<0)O.push(1),P=!0;else{if(H=H/d+2|0,f=0,v==1){for(p=0,N=N[0],H++;(f<re||p)&&H--;f++)Ie=p*c+(C[f]||0),O[f]=Ie/N|0,p=Ie%N|0;P=p||f<re}else{for(p=c/(N[0]+1)|0,p>1&&(N=e(N,p,c),C=e(C,p,c),v=N.length,re=C.length),pe=v,S=C.slice(0,v),k=S.length;k<v;)S[k++]=0;me=N.slice(),me.unshift(0),De=N[0],N[1]>=c/2&&++De;do p=0,u=t(N,S,v,k),u<0?(fe=S[0],v!=k&&(fe=fe*c+(S[1]||0)),p=fe/De|0,p>1?(p>=c&&(p=c-1),b=e(N,p,c),D=b.length,k=S.length,u=t(b,S,D,k),u==1&&(p--,n(b,v<D?me:N,D,c))):(p==0&&(u=p=1),b=N.slice()),D=b.length,D<k&&b.unshift(0),n(S,b,k,c),u==-1&&(k=S.length,u=t(N,S,v,k),u<1&&(p++,n(S,v<k?me:N,k,c))),k=S.length):u===0&&(p++,S=[0]),O[f++]=p,u&&S[0]?S[k++]=C[pe]||0:(S=[C[pe]],k=1);while((pe++<re||S[0]!==void 0)&&H--);P=S[0]!==void 0}O[0]||O.shift()}if(d==1)E.e=l,ot=P;else{for(f=1,p=O[0];p>=10;p/=10)f++;E.e=f+l*d-1,g(E,a?o+E.e+1:o,s,P)}return E}}();function g(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+=h,s=t,l=f[p=0],c=l/B(10,i-s-1)%10|0;else if(p=Math.ceil((o+1)/h),a=f.length,p>=a)if(r){for(;a++<=p;)f.push(0);l=c=0,i=1,o%=h,s=o-h+1}else break e;else{for(l=a=f[p],i=1;a>=10;a/=10)i++;o%=h,s=o-h+i,c=s<0?0:l/B(10,i-s-1)%10|0}if(r=r||t<0||f[p+1]!==void 0||(s<0?l:l%B(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/B(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]=B(10,(h-t%h)%h),e.e=-t||0):f[0]=e.e=0,e;if(o==0?(f.length=p,a=1,p--):(f.length=p+1,a=B(10,h-o),f[p]=s>0?(l/B(10,i-s)%B(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]==K&&(f[0]=1));break}else{if(f[p]+=a,f[p]!=K)break;f[p--]=0,a=1}for(o=f.length;f[--o]===0;)f.pop()}return T&&(e.e>d.maxE?(e.d=null,e.e=NaN):e.e<d.minE&&(e.e=0,e.d=[0])),e}function W(e,t,n){if(!e.isFinite())return mt(e);var r,i=e.e,o=L(e.d),s=o.length;return t?(n&&(r=n-s)>0?o=o.charAt(0)+"."+o.slice(1)+Y(r):s>1&&(o=o.charAt(0)+"."+o.slice(1)),o=o+(e.e<0?"e":"e+")+e.e):i<0?(o="0."+Y(-i-1)+o,n&&(r=n-s)>0&&(o+=Y(r))):i>=s?(o+=Y(i+1-s),n&&(r=n-i-1)>0&&(o=o+"."+Y(r))):((r=i+1)<s&&(o=o.slice(0,r)+"."+o.slice(r)),n&&(r=n-s)>0&&(i+1===s&&(o+="."),o+=Y(r))),o}function xe(e,t){var n=e[0];for(t*=h;n>=10;n/=10)t++;return t}function we(e,t,n){if(t>Kt)throw T=!0,n&&(e.precision=n),Error(st);return g(new e(be),t,1,!0)}function V(e,t,n){if(t>Ke)throw Error(st);return g(new e(Te),t,n,!0)}function lt(e){var t=e.length-1,n=t*h+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 Y(e){for(var t="";e--;)t+="0";return t}function ft(e,t,n,r){var i,o=new e(1),s=Math.ceil(r/h+4);for(T=!1;;){if(n%2&&(o=o.times(t),rt(o.d,s)&&(i=!0)),n=I(n/2),n===0){n=o.d.length-1,i&&o.d[n]===0&&++o.d[n];break}t=t.times(t),rt(t.d,s)}return T=!0,o}function nt(e){return e.d[e.d.length-1]&1}function pt(e,t,n){for(var r,i,o=new e(t[0]),s=0;++s<t.length;){if(i=new e(t[s]),!i.s){o=i;break}r=o.cmp(i),(r===n||r===0&&o.s===n)&&(o=i)}return o}function Ue(e,t){var n,r,i,o,s,a,c,u=0,l=0,f=0,p=e.constructor,d=p.rounding,P=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?(T=!1,c=P):c=t,a=new p(.03125);e.e>-2;)e=e.times(a),f+=5;for(r=Math.log(B(2,f))/Math.LN10*2+5|0,c+=r,n=o=s=new p(1),p.precision=c;;){if(o=g(o.times(e),c,1),n=n.times(++l),a=s.plus(A(o,n,c,1)),L(a.d).slice(0,c)===L(s.d).slice(0,c)){for(i=f;i--;)s=g(s.times(s),c,1);if(t==null)if(u<3&&ie(s.d,c-r,d,u))p.precision=c+=10,n=o=a=new p(1),l=0,u++;else return g(s,p.precision=P,d,T=!0);else return p.precision=P,s}s=a}}function z(e,t){var n,r,i,o,s,a,c,u,l,f,p,d=1,P=10,b=e,D=b.d,E=b.constructor,O=E.rounding,S=E.precision;if(b.s<0||!D||!D[0]||!b.e&&D[0]==1&&D.length==1)return new E(D&&!D[0]?-1/0:b.s!=1?NaN:D?0:b);if(t==null?(T=!1,l=S):l=t,E.precision=l+=P,n=L(D),r=n.charAt(0),Math.abs(o=b.e)<15e14){for(;r<7&&r!=1||r==1&&n.charAt(1)>3;)b=b.times(e),n=L(b.d),r=n.charAt(0),d++;o=b.e,r>1?(b=new E("0."+n),o++):b=new E(r+"."+n.slice(1))}else return u=we(E,l+2,S).times(o+""),b=z(new E(r+"."+n.slice(1)),l-P).plus(u),E.precision=S,t==null?g(b,S,O,T=!0):b;for(f=b,c=s=b=A(b.minus(1),b.plus(1),l,1),p=g(b.times(b),l,1),i=3;;){if(s=g(s.times(p),l,1),u=c.plus(A(s,new E(i),l,1)),L(u.d).slice(0,l)===L(c.d).slice(0,l))if(c=c.times(2),o!==0&&(c=c.plus(we(E,l+2,S).times(o+""))),c=A(c,new E(d),l,1),t==null)if(ie(c.d,l-P,O,a))E.precision=l+=P,u=s=b=A(f.minus(1),f.plus(1),l,1),p=g(b.times(b),l,1),i=a=1;else return g(c,E.precision=S,O,T=!0);else return E.precision=S,c;c=u,i+=2}}function mt(e){return String(e.s*e.s/0)}function he(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)%h,n<0&&(r+=h),r<i){for(r&&e.d.push(+t.slice(0,r)),i-=h;r<i;)e.d.push(+t.slice(r,r+=h));t=t.slice(r),r=h-t.length}else r-=i;for(;r--;)t+="0";e.d.push(+t),T&&(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 Ft(e,t){var n,r,i,o,s,a,c,u,l;if(t.indexOf("_")>-1){if(t=t.replace(/(\d)_(?=\d)/g,"$1"),ct.test(t))return he(e,t)}else if(t==="Infinity"||t==="NaN")return+t||(e.s=NaN),e.e=NaN,e.d=null,e;if(Rt.test(t))n=16,t=t.toLowerCase();else if(Mt.test(t))n=2;else if(Ot.test(t))n=8;else throw Error(Q+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=ft(r,new r(n),o,o*2)),u=ge(t,n,K),l=u.length-1,o=l;u[o]===0;--o)u.pop();return o<0?new r(e.s*0):(e.e=xe(u,l),e.d=u,T=!1,s&&(e=A(e,i,a*4)),c&&(e=e.times(Math.abs(c)<54?B(2,c):Se.pow(2,c))),T=!0,e)}function Vt(e,t){var n,r=t.d.length;if(r<3)return t.isZero()?t:te(e,2,t,t);n=1.4*Math.sqrt(r),n=n>16?16:n|0,t=t.times(1/Pe(5,n)),t=te(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 te(e,t,n,r,i){var o,s,a,c,u=1,l=e.precision,f=Math.ceil(l/h);for(T=!1,c=n.times(n),a=new e(r);;){if(s=A(a.times(c),new e(t++*t++),l,1),a=i?r.plus(s):r.minus(s),r=A(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 T=!0,s.d.length=f+1,s}function Pe(e,t){for(var n=e;--t;)n*=e;return n}function dt(e,t){var n,r=t.s<0,i=V(e,e.precision,1),o=i.times(.5);if(t=t.abs(),t.lte(o))return q=r?4:1,t;if(n=t.divToInt(i),n.isZero())q=r?3:2;else{if(t=t.minus(n.times(i)),t.lte(o))return q=nt(n)?r?2:3:r?4:1,t;q=nt(n)?r?1:4:r?3:2}return t.minus(i).abs()}function Fe(e,t,n,r){var i,o,s,a,c,u,l,f,p,d=e.constructor,P=n!==void 0;if(P?(R(n,1,Z),r===void 0?r=d.rounding:R(r,0,8)):(n=d.precision,r=d.rounding),!e.isFinite())l=mt(e);else{for(l=W(e),s=l.indexOf("."),P?(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=ge(W(p),10,i),p.e=p.d.length),f=ge(l,10,i),o=c=f.length;f[--c]==0;)f.pop();if(!f[0])l=P?"0p+0":"0";else{if(s<0?o--:(e=new d(e),e.d=f,e.e=o,e=A(e,p,n,r,0,i),f=e.d,o=e.e,u=ot),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+=Oe.charAt(f[s]);if(P){if(c>1)if(t==16||t==8){for(s=t==16?4:3,--c;c%s;c++)l+="0";for(f=ge(l,i,t),c=f.length;!f[c-1];--c);for(s=1,l="1.";s<c;s++)l+=Oe.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 rt(e,t){if(e.length>t)return e.length=t,!0}function Wt(e){return new this(e).abs()}function Ht(e){return new this(e).acos()}function qt(e){return new this(e).acosh()}function Gt(e,t){return new this(e).plus(t)}function jt(e){return new this(e).asin()}function Yt(e){return new this(e).asinh()}function zt(e){return new this(e).atan()}function Qt(e){return new this(e).atanh()}function Zt(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=V(this,o,1).times(t.s>0?.25:.75),n.s=e.s):!t.d||e.isZero()?(n=t.s<0?V(this,r,i):new this(0),n.s=e.s):!e.d||t.isZero()?(n=V(this,o,1).times(.5),n.s=e.s):t.s<0?(this.precision=o,this.rounding=1,n=this.atan(A(e,t,o,1)),t=V(this,o,1),this.precision=r,this.rounding=i,n=e.s<0?n.minus(t):n.plus(t)):n=this.atan(A(e,t,o,1)),n}function Xt(e){return new this(e).cbrt()}function Jt(e){return g(e=new this(e),e.e+1,2)}function $t(e,t,n){return new this(e).clamp(t,n)}function en(e){if(!e||typeof e!="object")throw Error(ye+"Object expected");var t,n,r,i=e.defaults===!0,o=["precision",1,Z,"rounding",0,8,"toExpNeg",-ee,0,"toExpPos",0,ee,"maxE",0,ee,"minE",-ee,0,"modulo",0,9];for(t=0;t<o.length;t+=3)if(n=o[t],i&&(this[n]=ve[n]),(r=e[n])!==void 0)if(I(r)===r&&r>=o[t+1]&&r<=o[t+2])this[n]=r;else throw Error(Q+n+": "+r);if(n="crypto",i&&(this[n]=ve[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(at);else this[n]=!1;else throw Error(Q+n+": "+r);return this}function tn(e){return new this(e).cos()}function nn(e){return new this(e).cosh()}function gt(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,it(o)){u.s=o.s,T?!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++;T?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}if(o*0!==0){o||(u.s=NaN),u.e=NaN,u.d=null;return}return he(u,o.toString())}if(c==="string")return(a=o.charCodeAt(0))===45?(o=o.slice(1),u.s=-1):(a===43&&(o=o.slice(1)),u.s=1),ct.test(o)?he(u,o):Ft(u,o);if(c==="bigint")return o<0?(o=-o,u.s=-1):u.s=1,he(u,o.toString());throw Error(Q+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=en,i.clone=gt,i.isDecimal=it,i.abs=Wt,i.acos=Ht,i.acosh=qt,i.add=Gt,i.asin=jt,i.asinh=Yt,i.atan=zt,i.atanh=Qt,i.atan2=Zt,i.cbrt=Xt,i.ceil=Jt,i.clamp=$t,i.cos=tn,i.cosh=nn,i.div=rn,i.exp=on,i.floor=sn,i.hypot=an,i.ln=un,i.log=cn,i.log10=fn,i.log2=ln,i.max=pn,i.min=mn,i.mod=dn,i.mul=gn,i.pow=hn,i.random=bn,i.round=Tn,i.sign=wn,i.sin=yn,i.sinh=xn,i.sqrt=Pn,i.sub=Sn,i.sum=An,i.tan=Nn,i.tanh=_n,i.trunc=En,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 rn(e,t){return new this(e).div(t)}function on(e){return new this(e).exp()}function sn(e){return g(e=new this(e),e.e+1,3)}function an(){var e,t,n=new this(0);for(T=!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 T=!0,new this(1/0);n=t}return T=!0,n.sqrt()}function it(e){return e instanceof Se||e&&e.toStringTag===ut||!1}function un(e){return new this(e).ln()}function cn(e,t){return new this(e).log(t)}function ln(e){return new this(e).log(2)}function fn(e){return new this(e).log(10)}function pn(){return pt(this,arguments,-1)}function mn(){return pt(this,arguments,1)}function dn(e,t){return new this(e).mod(t)}function gn(e,t){return new this(e).mul(t)}function hn(e,t){return new this(e).pow(t)}function bn(e){var t,n,r,i,o=0,s=new this(1),a=[];if(e===void 0?e=this.precision:R(e,1,Z),r=Math.ceil(e/h),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(at);else for(;o<r;)a[o++]=Math.random()*1e7|0;for(r=a[--o],e%=h,r&&e&&(i=B(10,h-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-=h)a.shift();for(r=1,i=a[0];i>=10;i/=10)r++;r<h&&(n-=h-r)}return s.e=n,s.d=a,s}function Tn(e){return g(e=new this(e),e.e+1,this.rounding)}function wn(e){return e=new this(e),e.d?e.d[0]?e.s:0*e.s:e.s||NaN}function yn(e){return new this(e).sin()}function xn(e){return new this(e).sinh()}function Pn(e){return new this(e).sqrt()}function Sn(e,t){return new this(e).sub(t)}function An(){var e=0,t=arguments,n=new this(t[e]);for(T=!1;n.s&&++e<t.length;)n=n.plus(t[e]);return T=!0,g(n,this.precision,this.rounding)}function Nn(e){return new this(e).tan()}function _n(e){return new this(e).tanh()}function En(e){return g(e=new this(e),e.e+1,1)}m[Symbol.for("nodejs.util.inspect.custom")]=m.toString;m[Symbol.toStringTag]="Decimal";var Se=m.constructor=gt(ve);be=new Se(be);Te=new Se(Te);import Rn from"big.js";import Xr from"bn.js";import Bn from"toformat";var Ln=Bn,oe=Ln;import Ne from"big.js";import Cn from"bn.js";import In from"decimal.js-light";import se from"bn.js";var ht=9007199254740991;function U(e){let t=M("CobaltX_parseBigNumberish");if(e instanceof se)return e;if(typeof e=="string"){if(e.match(/^-?[0-9]+$/))return new se(e);t.logWithError(`invalid BigNumberish string: ${e}`)}return typeof e=="number"?(e%1&&t.logWithError(`BigNumberish number underflow: ${e}`),(e>=ht||e<=-ht)&&t.logWithError(`BigNumberish number overflow: ${e}`),new se(String(e))):typeof e=="bigint"?new se(e.toString()):(t.error(`invalid BigNumberish value: ${e}`),new se(0))}var Ae=M("module/fraction"),Ve=oe(Ne),ae=oe(In),Dn={[0]:ae.ROUND_DOWN,[1]:ae.ROUND_HALF_UP,[2]:ae.ROUND_UP},Mn={[0]:Ne.roundDown,[1]:Ne.roundHalfUp,[2]:Ne.roundUp},_=class{constructor(t,n=new Cn(1)){this.numerator=U(t),this.denominator=U(n)}get quotient(){return this.numerator.div(this.denominator)}invert(){return new _(this.denominator,this.numerator)}add(t){let n=t instanceof _?t:new _(U(t));return this.denominator.eq(n.denominator)?new _(this.numerator.add(n.numerator),this.denominator):new _(this.numerator.mul(n.denominator).add(n.numerator.mul(this.denominator)),this.denominator.mul(n.denominator))}sub(t){let n=t instanceof _?t:new _(U(t));return this.denominator.eq(n.denominator)?new _(this.numerator.sub(n.numerator),this.denominator):new _(this.numerator.mul(n.denominator).sub(n.numerator.mul(this.denominator)),this.denominator.mul(n.denominator))}mul(t){let n=t instanceof _?t:new _(U(t));return new _(this.numerator.mul(n.numerator),this.denominator.mul(n.denominator))}div(t){let n=t instanceof _?t:new _(U(t));return new _(this.numerator.mul(n.denominator),this.denominator.mul(n.numerator))}toSignificant(t,n={groupSeparator:""},r=1){Number.isInteger(t)||Ae.logWithError(`${t} is not an integer.`),t<=0&&Ae.logWithError(`${t} is not positive.`),ae.set({precision:t+1,rounding:Dn[r]});let i=new ae(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)||Ae.logWithError(`${t} is not an integer.`),t<0&&Ae.logWithError(`${t} is negative.`),Ve.DP=t,Ve.RM=Mn[r]||1,new Ve(this.numerator.toString()).div(this.denominator.toString()).toFormat(t,n)}isZero(){return this.numerator.isZero()}};var si=M("CobaltX_amount"),ai=oe(Rn);import{TOKEN_PROGRAM_ID as Kn}from"@solana/spl-token";import{PublicKey as mi}from"@solana/web3.js";import{PublicKey as G}from"@solana/web3.js";var vn={["sooneth"]:{NATIVE_TOKEN_SYMBOL:"ETH",SWAP_HOST:"https://trade-api.cobaltx.io",BASE_HOST:"https://api.cobaltx.io",OWNER_BASE_HOST:"https://api.cobaltx.io",SERVICE_BASE_HOST:"https://api.cobaltx.io",MONITOR_BASE_HOST:"https://api.cobaltx.io",SERVICE_1_BASE_HOST:"https://api.cobaltx.io",ANALYTICS_BASE_HOST:"https://api.cobaltx.io",GITHUB_TOKEN_LIST_URL:"https://raw.githubusercontent.com/cobaltx-io/tokens/main/tokens.json",WSOL_MINT_ADDRESS:"So11111111111111111111111111111111111111112",GITHUB_LOGO_URL:"https://raw.githubusercontent.com/cobaltx-io/tokens/main/logo/So11111111111111111111111111111111111111112.png",LOOKUP_TABLE_CACHE:"6fa5xTGwoYJPMLMXaQ4tQFKMoYvXuvsJFLigMJ9a5QeB",CLMM_PROGRAMM_ID:"2TnjBuwqyBB9to5jURagDT7jLmBPefGRiKL2yh1zPZ4V",BONK_MINT_ADDRESS:"71kRXzJMvSeArtXYNEWa8KAjpRJosdMQ7Dpgy5Jt5zfd",SOL_MINT_ADDRESS:"ERFzpDteGNo8LTDKW1WwVGrkRMmA2y9WZHXNHxMA6BSV",USDC_MINT_ADDRESS:"ExYxyorY2x3h8gLcuypnHFQV3F36rmMkQVn7HHV8mUy9",USDT_MINT_ADDRESS:"742wcXVzkhNuEePAot7L3GvPseh93pvYFPgyHLX8mUy9",FULL_TOKEN_NAME:"Wrapped Ethereum",ETH_MINT_ADDRESS:"71kRXzJMvSeArtXYNEWa8KAjpRJosdMQ7Dpgy5Jt5zfd",WRAPPED_TOKEN_SYMBOL:"WETH",INPUT_MINT_ADDRESS:G.default.toString(),OUTPUT_MINT_ADDRESS:"742wcXVzkhNuEePAot7L3GvPseh93pvYFPgyHLX8mUy9",POPULAR_TOKENS:{SOL:G.default.toString(),ETH:"71kRXzJMvSeArtXYNEWa8KAjpRJosdMQ7Dpgy5Jt5zfd",USDC:"ExYxyorY2x3h8gLcuypnHFQV3F36rmMkQVn7HHV8KjtA",USDT:"742wcXVzkhNuEePAot7L3GvPseh93pvYFPgyHLX8mUy9"},WSOL_DECIMALS:9},["svmbnb"]:{NATIVE_TOKEN_SYMBOL:"BNB",SWAP_HOST:"https://trade-api.svmbnb.cobaltx.io",BASE_HOST:"https://api.svmbnb.cobaltx.io",OWNER_BASE_HOST:"https://api.svmbnb.cobaltx.io",SERVICE_BASE_HOST:"https://api.svmbnb.cobaltx.io",MONITOR_BASE_HOST:"https://api.svmbnb.cobaltx.io",SERVICE_1_BASE_HOST:"https://api.svmbnb.cobaltx.io",ANALYTICS_BASE_HOST:"https://api.svmbnb.cobaltx.io",GITHUB_TOKEN_LIST_URL:"https://raw.githubusercontent.com/cobaltx-io/svmbnb-tokens/main/tokens.json",WSOL_MINT_ADDRESS:"So11111111111111111111111111111111111111112",GITHUB_LOGO_URL:"https://raw.githubusercontent.com/cobaltx-io/svmbnb-tokens/main/logo/So11111111111111111111111111111111111111112.svg",LOOKUP_TABLE_CACHE:"GSR5XQGWhpzV9TTduBJR6qPNjYsepMQSGkpaqfrbrW9w",CLMM_PROGRAMM_ID:"6f1b3xyVZbnWMHXBjgW1KPwxmPAgXcRdrvKNn4Nmf1Cn",ETH_MINT_ADDRESS:"H3xpFH1yN5E1zFdAoBrC9Y7m7RfJUeQNLvkHi8kNf9Qu",USDC_MINT_ADDRESS:"5odzAHDpDETYhupMkc6kjiYen3K2nrf8oPmvqmsoNW4L",USDT_MINT_ADDRESS:"s8cRDxnp3VxjB6khRnGDdxv6QbCUPyY9Vn1bgSQQsnG",SOL_MINT_ADDRESS:"So11111111111111111111111111111111111111112",FULL_TOKEN_NAME:"Wrapped BNB",WRAPPED_TOKEN_SYMBOL:"WBNB",INPUT_MINT_ADDRESS:G.default.toBase58(),OUTPUT_MINT_ADDRESS:"ABoT7umUXnx8RtJTeRqKB6myebVjP2wdJGQuV23jVVH3",POPULAR_TOKENS:{SOL:G.default.toString(),ETH:"H3xpFH1yN5E1zFdAoBrC9Y7m7RfJUeQNLvkHi8kNf9Qu",USDC:"5odzAHDpDETYhupMkc6kjiYen3K2nrf8oPmvqmsoNW4L",USDT:"s8cRDxnp3VxjB6khRnGDdxv6QbCUPyY9Vn1bgSQQsnG"},WSOL_DECIMALS:9},["svmbnb_testnet"]:{NATIVE_TOKEN_SYMBOL:"BNB",SWAP_HOST:"https://trade-api.svmbnb.cobaltx.io",BASE_HOST:"https://api.testnet.svmbnb.cobaltx.io",OWNER_BASE_HOST:"https://api.testnet.svmbnb.cobaltx.io",SERVICE_BASE_HOST:"https://api.testnet.svmbnb.cobaltx.io",MONITOR_BASE_HOST:"https://api.testnet.svmbnb.cobaltx.io",SERVICE_1_BASE_HOST:"https://api.testnet.svmbnb.cobaltx.io",ANALYTICS_BASE_HOST:"https://api.testnet.svmbnb.cobaltx.io",GITHUB_TOKEN_LIST_URL:"https://raw.githubusercontent.com/cobaltx-io/svmbnb-testnet-tokens/main/tokens.json",WSOL_MINT_ADDRESS:"So11111111111111111111111111111111111111112",GITHUB_LOGO_URL:"https://raw.githubusercontent.com/cobaltx-io/svmbnb-testnet-tokens/main/logo/So11111111111111111111111111111111111111112.svg",LOOKUP_TABLE_CACHE:"D79gSiTNV9pyLPJyscW5yZYwdPVDrtKsamL3ZfQi6JiM",CLMM_PROGRAMM_ID:"FgycD57kcCZsjpoTAi2u67GTPxm59bPEhycL2Lw1icm1",ETH_MINT_ADDRESS:"5aLr3sV4UNVcMB6CiA3PZTWbgVBRNyMdEp1s5LNfhR95",USDC_MINT_ADDRESS:"jrhUNRxEDpFmGV3sqaWyveS7bVtRQgtHsfBTCdjfMBw",USDT_MINT_ADDRESS:"Ex86C4gmdjvPRNrfyvsyejbjkP6RstNaBC5g3itZw2iv",FULL_TOKEN_NAME:"Wrapped BNB",WRAPPED_TOKEN_SYMBOL:"WBNB",INPUT_MINT_ADDRESS:"bnb",OUTPUT_MINT_ADDRESS:"jrhUNRxEDpFmGV3sqaWyveS7bVtRQgtHsfBTCdjfMBw",POPULAR_TOKENS:{SOL:G.default.toString(),ETH:"5aLr3sV4UNVcMB6CiA3PZTWbgVBRNyMdEp1s5LNfhR95",USDC:"jrhUNRxEDpFmGV3sqaWyveS7bVtRQgtHsfBTCdjfMBw",USDT:"Ex86C4gmdjvPRNrfyvsyejbjkP6RstNaBC5g3itZw2iv"},WSOL_DECIMALS:9},["svmbase_testnet"]:{NATIVE_TOKEN_SYMBOL:"ETH",SWAP_HOST:"https://trade-api.testnet.svmbase.cobaltx.io",BASE_HOST:"https://api.testnet.svmbase.cobaltx.io",OWNER_BASE_HOST:"https://api.testnet.svmbase.cobaltx.io",SERVICE_BASE_HOST:"https://api.testnet.svmbase.cobaltx.io",MONITOR_BASE_HOST:"https://api.testnet.svmbase.cobaltx.io",SERVICE_1_BASE_HOST:"https://api.testnet.svmbase.cobaltx.io",ANALYTICS_BASE_HOST:"https://api.testnet.svmbase.cobaltx.io",GITHUB_TOKEN_LIST_URL:"https://raw.githubusercontent.com/cobaltx-io/svmbase-testnet-tokens/main/tokens.json",WSOL_MINT_ADDRESS:"So11111111111111111111111111111111111111112",GITHUB_LOGO_URL:"https://raw.githubusercontent.com/cobaltx-io/svmbase-testnet-tokens/main/logo/So11111111111111111111111111111111111111112.png",LOOKUP_TABLE_CACHE:"AyPMvNmUUY2jwZ75NxhkLYPraQGNk5DssVfP4TnMcPJF",CLMM_PROGRAMM_ID:"DnZnBqJKiGSYHUHYvkXAbQmkMbwrjfgo4orR7jWyMsik",ETH_MINT_ADDRESS:"71kRXzJMvSeArtXYNEWa8KAjpRJosdMQ7Dpgy5Jt5zfd",USDC_MINT_ADDRESS:"63tPXWPnYeZ9hA3dJsAY5RcQ8YbwEz8uZ5nKu3uFD1aK",USDT_MINT_ADDRESS:"4fyX7hSmPetQC2wRS3YVAhWeFzif7WStarKwTvCXrBtD",FULL_TOKEN_NAME:"Wrapped Ethereum",WRAPPED_TOKEN_SYMBOL:"WETH",INPUT_MINT_ADDRESS:G.default.toString(),OUTPUT_MINT_ADDRESS:"63tPXWPnYeZ9hA3dJsAY5RcQ8YbwEz8uZ5nKu3uFD1aK",POPULAR_TOKENS:{SOL:G.default.toString(),ETH:"So11111111111111111111111111111111111111112",USDC:"63tPXWPnYeZ9hA3dJsAY5RcQ8YbwEz8uZ5nKu3uFD1aK",USDT:"4fyX7hSmPetQC2wRS3YVAhWeFzif7WStarKwTvCXrBtD"},WSOL_DECIMALS:9},["soonbase_mainnet"]:{NATIVE_TOKEN_SYMBOL:"ETH",SWAP_HOST:"https://trade-api.soonbase.cobaltx.io",BASE_HOST:"https://api.soonbase.cobaltx.io",OWNER_BASE_HOST:"https://api.soonbase.cobaltx.io",SERVICE_BASE_HOST:"https://api.soonbase.cobaltx.io",MONITOR_BASE_HOST:"https://api.soonbase.cobaltx.io",SERVICE_1_BASE_HOST:"https://api.soonbase.cobaltx.io",ANALYTICS_BASE_HOST:"https://api.soonbase.cobaltx.io",GITHUB_TOKEN_LIST_URL:"https://raw.githubusercontent.com/cobaltx-io/soonbase-tokens/main/tokens.json",WSOL_MINT_ADDRESS:"So11111111111111111111111111111111111111112",GITHUB_LOGO_URL:"https://raw.githubusercontent.com/cobaltx-io/soonbase-tokens/main/logo/So11111111111111111111111111111111111111112.png",LOOKUP_TABLE_CACHE:"FGRusuLycV6nhSPQc9VX55YjT6DCzJFc59mvTTarSTjK",CLMM_PROGRAMM_ID:"6f1b3xyVZbnWMHXBjgW1KPwxmPAgXcRdrvKNn4Nmf1Cn",ETH_MINT_ADDRESS:"71kRXzJMvSeArtXYNEWa8KAjpRJosdMQ7Dpgy5Jt5zfd",USDC_MINT_ADDRESS:"BoYN2f2gLQS4jpvMSV9dAZwfzKJiKGk4NPck5BjXfujo",USDT_MINT_ADDRESS:"J87bysZjwfS3n6KR21cwbdPZVJWNSFcXpWF5kiChAwQH",FULL_TOKEN_NAME:"Wrapped Ethereum",WRAPPED_TOKEN_SYMBOL:"WETH",INPUT_MINT_ADDRESS:G.default.toString(),OUTPUT_MINT_ADDRESS:"BoYN2f2gLQS4jpvMSV9dAZwfzKJiKGk4NPck5BjXfujo",POPULAR_TOKENS:{SOL:G.default.toString(),ETH:"FkvCG5DcuYCQ1BnPH4ZzTkCdk3VzutgyDAFBec4qAjhh",USDC:"BoYN2f2gLQS4jpvMSV9dAZwfzKJiKGk4NPck5BjXfujo",USDT:"J87bysZjwfS3n6KR21cwbdPZVJWNSFcXpWF5kiChAwQH"},WSOL_DECIMALS:9}},ue=e=>vn[e];function We(e){let t=ue(e);return{chainId:101,address:t.WSOL_MINT_ADDRESS,programId:Kn.toBase58(),decimals:9,symbol:t.WRAPPED_TOKEN_SYMBOL||"",name:t.FULL_TOKEN_NAME,logoURI:t.GITHUB_LOGO_URL,tags:[],priority:2,type:"cobaltx",extensions:{coingeckoId:"solana"}}}import{PublicKey as Ii}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as Un}from"@solana/spl-token";import{PublicKey as $,SystemProgram as bt,SYSVAR_RENT_PUBKEY as Fn}from"@solana/web3.js";function He({pubkey:e,isSigner:t=!1,isWritable:n=!0}){return{pubkey:e,isWritable:n,isSigner:t}}var xi=[He({pubkey:Un,isWritable:!1}),He({pubkey:bt.programId,isWritable:!1}),He({pubkey:Fn,isWritable:!1})];var Pi=new $("MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"),Si=new $("MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"),Ai=new $("SysvarRent111111111111111111111111111111111"),Ni=new $("SysvarC1ock11111111111111111111111111111111"),_i=new $("metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),Ei=new $("Sysvar1nstructions1111111111111111111111111"),Bi=bt.programId,Vn=$.default;import Wn from"bn.js";var Hi=new _(new Wn(100));var Qi=M("CobaltX_price");import{PublicKey as mo}from"@solana/web3.js";import ho from"bn.js";var Hn=new j(0),Oo=new j(1),vo=new j(2),Ko=new j(3),Uo=new j(5),On=new j(10),Fo=new j(100),Vo=new j(1e3),Wo=new j(1e4);import{PublicKey as ds}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as hs}from"@solana/spl-token";import{ComputeBudgetProgram as Zo,Keypair as $o,PublicKey as es,Transaction as ns,TransactionMessage as is,VersionedTransaction as os}from"@solana/web3.js";var ce={CreateAccount:"CreateAccount",InitAccount:"InitAccount",CreateATA:"CreateATA",CloseAccount:"CloseAccount",TransferAmount:"TransferAmount",InitMint:"InitMint",MintTo:"MintTo",InitMarket:"InitMarket",Util1216OwnerClaim:"Util1216OwnerClaim",SetComputeUnitPrice:"SetComputeUnitPrice",SetComputeUnitLimit:"SetComputeUnitLimit",ClmmCreatePool:"ClmmCreatePool",ClmmOpenPosition:"ClmmOpenPosition",ClmmIncreasePosition:"ClmmIncreasePosition",ClmmDecreasePosition:"ClmmDecreasePosition",ClmmClosePosition:"ClmmClosePosition",ClmmSwapBaseIn:"ClmmSwapBaseIn",ClmmSwapBaseOut:"ClmmSwapBaseOut",ClmmInitReward:"ClmmInitReward",ClmmSetReward:"ClmmSetReward",ClmmCollectReward:"ClmmCollectReward",ClmmLockPosition:"ClmmLockPosition",ClmmHarvestLockPosition:"ClmmHarvestLockPosition",AmmV4Swap:"AmmV4Swap",AmmV4AddLiquidity:"AmmV4AddLiquidity",AmmV4RemoveLiquidity:"AmmV4RemoveLiquidity",AmmV4SimulatePoolInfo:"AmmV4SimulatePoolInfo",AmmV4SwapBaseIn:"AmmV4SwapBaseIn",AmmV4SwapBaseOut:"AmmV4SwapBaseOut",AmmV4CreatePool:"AmmV4CreatePool",AmmV4InitPool:"AmmV4InitPool",AmmV5AddLiquidity:"AmmV5AddLiquidity",AmmV5RemoveLiquidity:"AmmV5RemoveLiquidity",AmmV5SimulatePoolInfo:"AmmV5SimulatePoolInfo",AmmV5SwapBaseIn:"AmmV5SwapBaseIn",AmmV5SwapBaseOut:"AmmV5SwapBaseOut",RouteSwap:"RouteSwap",RouteSwap1:"RouteSwap1",RouteSwap2:"RouteSwap2",FarmV3Deposit:"FarmV3Deposit",FarmV3Withdraw:"FarmV3Withdraw",FarmV3CreateLedger:"FarmV3CreateLedger",FarmV4Withdraw:"FarmV4Withdraw",FarmV5Deposit:"FarmV5Deposit",FarmV5Withdraw:"FarmV5Withdraw",FarmV5CreateLedger:"FarmV5CreateLedger",FarmV6Deposit:"FarmV6Deposit",FarmV6Withdraw:"FarmV6Withdraw",FarmV6Create:"FarmV6Create",FarmV6Restart:"FarmV6Restart",FarmV6CreatorAddReward:"FarmV6CreatorAddReward",FarmV6CreatorWithdraw:"FarmV6CreatorWithdraw",CpmmCreatePool:"CpmmCreatePool",CpmmAddLiquidity:"CpmmAddLiquidity",CpmmWithdrawLiquidity:"CpmmWithdrawLiquidity",CpmmSwapBaseIn:"CpmmSwapBaseIn",CpmmSwapBaseOut:"CpmmSwapBaseOut",CpmmLockLp:"CpmmLockLp",CpmmCollectLockFee:"CpmmCollectLockFee"};import{TOKEN_PROGRAM_ID as cs}from"@solana/spl-token";var ls=M("CobaltX_txUtil");import{PublicKey as w}from"@solana/web3.js";var xs=new w("EhhTKczWMGQt46ynNeRX1WfeagwwJd7ufHvCDjRxjo5Q"),Ps=new w("CBuCnLe26faBpcBP2fktp4rp8abpcAnTWft6ZrP5Q4T"),Ss=new w("9KEPoZmtHUrBbhWN1v1KWLMkkvwY6WLtAVUCPRtRjP4z"),As=new w("FarmqiPv5eAj3j1GMdMCMUGXqPUvmquZtMy86QH6rzhG"),Ns=new w("CLaimxFqjHzgTJtAGHU47NPhg6qrc5sCnpC4tBLyABQS"),_s=new w("srmqPvymJeFKQ4zGQed1GFppgkRHL9kaELCbyksJtPX"),Es=new w("9xQeWvG816bUx9EPjHmaT23yvVM2ZWbrrpZb9PusVFin"),Bs=new w("675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8"),Ls=new w("5quBtoiQqxF9Jv6KYKctB59NT3gtJD2Y65kdnB1Uev3h"),ks=new w("CDSr3ssLcRB6XYPJwAfFt18MZvEZp4LjHcvzBVZ45duo");var Cs=new w("LockrWmn6K5twhz3y9w1dQERbmgSaRkfnTeTKbpofwE"),Is=new w("kN1kEznaF5Xbd8LYuqtEFcxzWSBk5Fv6ygX6SqEGJVy"),Ds=new w("routeUGWgWzqBWFcrCfv8tritsqukccJPu3q5GPP3xS"),Ms=new w("7YttLkHDoNj9wyDur5pM1ejNaAvT9X4eqaYcHQqtj2G5"),Rs=new w("6FJon3QE27qgPVggARueB22hLvoh22VzJpXv4rBEoSLF"),Os=new w("CC12se5To1CdEuw7fDS27B7Geo5jJyL7t5UK2B44NgiH"),vs=new w("9HzJyW1qZsEiSfMUf6L2jo3CcTKAyBmSyKdwQeYisHrC"),Ks=new w("DropEU8AvevN3UrXWXTMuz3rqnMczQVNjq3kcSdW2SQi"),Us=new w("CPMMoo8L3F4NbTegBCKVNunggL7H1ZpdTHKxQB5qKP1C"),Fs=new w("GpMZbSM2GgvTKHJirzeGfMFoaZ8UR2X7F4v8vHTvxFbL"),Vs=new w("DNXgeM9EiiaAbaWvwjHj9fQQLAX5ZsfHyvmYUNRAdNC8"),qn=new w("CPMDWBwJDtYax9qW7AyRuVC19Cc4L4Vcy4n2BHAbHkCW"),Gn=new w("7rQ1QFNosMkUCuh7Z7fPbTHvh73b68sQYdirycEzJVuw"),jn=new w("G11FKBRaAkHAKuLCgLM6K6NUc9rTjPAznRCjZifrTQe2"),Ws=new w("LockrWmn6K5twhz3y9w1dQERbmgSaRkfnTeTKbpofwE"),Yn=new w("DLockwT7X7sxtLmGH9g5kmfcjaBtncdbUmi738m5bvQC"),Hs=new w("3f7GcQFG397GAaEnv51zR6tsTVihYRydnydDD1cXekxH"),zn=new w("7AFUeLVRjBfzqK3tTGw8hN48KLQWSk6DTE8xprWdPqix");var qs={SERUM_MARKET:w.default,OPENBOOK_MARKET:new w("EoTcMgcDRTJVZDMZWBoU6rhYHZfkNTVEAfz3uUJRcYGj"),UTIL1216:w.default,FarmV3:new w("85BFyr98MbCUU9MVTEgzx1nbhWACbJqLzho6zd6DZcWL"),FarmV5:new w("EcLzTrNg9V7qhcdyXDe2qjtPkiGzDM2UbdRaeaadU5r2"),FarmV6:new w("Farm2hJLcqPtPg8M4rR6DMrsRNc5TPm5Cs4bVQrMe2T7"),AmmV4:new w("HWy1jotHpo6UqeQxx49dpYYdQB8wj9Qk9MdxwjLvDHB8"),AmmStable:new w("DDg4VmQaJV9ogWce7LpcjBA9bv22wRp5uaTPa5pGjijF"),CLMM:new w("devi51mZmdwUJGU9hjN27vEz64Gps7uUefqxg27EAtH"),CLMM_LOCK_PROGRAM_ID:new w("DLockwT7X7sxtLmGH9g5kmfcjaBtncdbUmi738m5bvQC"),CLMM_LOCK_AUTH_ID:new w("8qmHNvu2Kr2C7U8mJL4Vz1vTDxMhVuXKREwU7TNoaVEo"),Router:new w("BVChZ3XFEwTMUk1o9i3HAf91H6mFxSwa5X2wFAWhYPhU"),CREATE_CPMM_POOL_PROGRAM:qn,CREATE_CPMM_POOL_AUTH:Gn,CREATE_CPMM_POOL_FEE_ACC:jn,FEE_DESTINATION_ID:new w("3XMrhbv989VxAMi3DErLV9eJht1pHppW5LbKxe9fkEFR"),LOCK_CPMM_PROGRAM:Yn,LCOK_CPMM_AUTH:zn};import Ys from"bn.js";import{PublicKey as Js,AddressLookupTableAccount as $s}from"@solana/web3.js";import{PublicKey as ha,sendAndConfirmTransaction as ba,Transaction as wa,TransactionMessage as xa,VersionedTransaction as Pa}from"@solana/web3.js";import Aa from"axios";import{createCloseAccountInstruction as ur,createInitializeAccountInstruction as cr,createTransferInstruction as lr,TOKEN_PROGRAM_ID as ne}from"@solana/spl-token";import{PublicKey as fr,SystemProgram as pr}from"@solana/web3.js";import mr from"bn.js";import{PublicKey as $n}from"@solana/web3.js";import St,{isBN as zu}from"bn.js";import{bits as Qa,BitStructure as Za,blob as Qn,Blob as Xa,cstr as Ja,f32 as $a,f32be as eu,f64 as tu,f64be as nu,greedy as ru,Layout as Zn,ns64 as iu,ns64be as ou,nu64 as su,nu64be as au,offset as uu,s16 as cu,s16be as lu,s24 as fu,s24be as pu,s32 as mu,s32be as du,s40 as gu,s40be as hu,s48 as bu,s48be as Tu,s8 as wu,seq as yu,struct as xu,Structure as Xn,u16 as Pu,u16be as Su,u24 as Au,u24be as Nu,u32 as _u,u32be as Eu,u40 as Bu,u40be as Lu,u48 as ku,u48be as Cu,u8 as Iu,UInt as Jn,union as Du,Union as Mu,unionLayoutDiscriminator as Ru,utf8 as Ou}from"@solana/buffer-layout";var qe=Zn,Pt=Xn;var Ge=Jn;var je=Qn;var Ye=class extends qe{constructor(n,r,i){super(n,i);this.blob=je(n),this.signed=r}decode(n,r=0){let i=new St(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 St(n)),this.signed&&(n=n.toTwos(this.span*8)),this.blob.encode(n.toArrayLike(Buffer,"le",this.span),r,i)}};function At(e){return new Ge(1,e)}function _e(e){return new Ge(4,e)}function Ee(e){return new Ye(8,!1,e)}var ze=class extends qe{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 le(e){return new ze(je(32),t=>new $n(t),t=>t.toBuffer(),e)}var Qe=class extends Pt{decode(t,n){return super.decode(t,n)}};function Nt(e,t,n){return new Qe(e,t,n)}var Be=Nt([le("mint"),le("owner"),Ee("amount"),_e("delegateOption"),le("delegate"),At("state"),_e("isNativeOption"),Ee("isNative"),Ee("delegatedAmount"),_e("closeAuthorityOption"),le("closeAuthority")]);function er(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"}function Ze(e,...t){if(!er(e))throw new Error("Uint8Array expected");if(t.length>0&&!t.includes(e.length))throw new Error("Uint8Array expected of length "+t+", got length="+e.length)}function Xe(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function _t(e,t){Ze(e);let n=t.outputLen;if(e.length<n)throw new Error("digestInto() expects output buffer of length at least "+n)}function ke(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function F(e,t){return e<<32-t|e>>>t}function tr(e){if(typeof e!="string")throw new Error("utf8ToBytes expected string, got "+typeof e);return new Uint8Array(new TextEncoder().encode(e))}function Je(e){return typeof e=="string"&&(e=tr(e)),Ze(e),e}var Le=class{clone(){return this._cloneInto()}};function Et(e){let t=r=>e().update(Je(r)).digest(),n=e();return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=()=>e(),t}function nr(e,t,n,r){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,n,r);let i=BigInt(32),o=BigInt(4294967295),s=Number(n>>i&o),a=Number(n&o),c=r?4:0,u=r?0:4;e.setUint32(t+c,s,r),e.setUint32(t+u,a,r)}function Bt(e,t,n){return e&t^~e&n}function Lt(e,t,n){return e&t^e&n^t&n}var Ce=class extends Le{constructor(t,n,r,i){super(),this.blockLen=t,this.outputLen=n,this.padOffset=r,this.isLE=i,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(t),this.view=ke(this.buffer)}update(t){Xe(this);let{view:n,buffer:r,blockLen:i}=this;t=Je(t);let o=t.length;for(let s=0;s<o;){let a=Math.min(i-this.pos,o-s);if(a===i){let c=ke(t);for(;i<=o-s;s+=i)this.process(c,s);continue}r.set(t.subarray(s,s+a),this.pos),this.pos+=a,s+=a,this.pos===i&&(this.process(n,0),this.pos=0)}return this.length+=t.length,this.roundClean(),this}digestInto(t){Xe(this),_t(t,this),this.finished=!0;let{buffer:n,view:r,blockLen:i,isLE:o}=this,{pos:s}=this;n[s++]=128,this.buffer.subarray(s).fill(0),this.padOffset>i-s&&(this.process(r,0),s=0);for(let f=s;f<i;f++)n[f]=0;nr(r,i-8,BigInt(this.length*8),o),this.process(r,0);let a=ke(t),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let u=c/4,l=this.get();if(u>l.length)throw new Error("_sha2: outputLen bigger than state");for(let f=0;f<u;f++)a.setUint32(4*f,l[f],o)}digest(){let{buffer:t,outputLen:n}=this;this.digestInto(t);let r=t.slice(0,n);return this.destroy(),r}_cloneInto(t){t||(t=new this.constructor),t.set(...this.get());let{blockLen:n,buffer:r,length:i,finished:o,destroyed:s,pos:a}=this;return t.length=i,t.pos=a,t.finished=o,t.destroyed=s,i%n&&t.buffer.set(r),t}};var rr=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),X=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),J=new Uint32Array(64),$e=class extends Ce{constructor(){super(64,32,8,!1),this.A=X[0]|0,this.B=X[1]|0,this.C=X[2]|0,this.D=X[3]|0,this.E=X[4]|0,this.F=X[5]|0,this.G=X[6]|0,this.H=X[7]|0}get(){let{A:t,B:n,C:r,D:i,E:o,F:s,G:a,H:c}=this;return[t,n,r,i,o,s,a,c]}set(t,n,r,i,o,s,a,c){this.A=t|0,this.B=n|0,this.C=r|0,this.D=i|0,this.E=o|0,this.F=s|0,this.G=a|0,this.H=c|0}process(t,n){for(let f=0;f<16;f++,n+=4)J[f]=t.getUint32(n,!1);for(let f=16;f<64;f++){let p=J[f-15],d=J[f-2],P=F(p,7)^F(p,18)^p>>>3,b=F(d,17)^F(d,19)^d>>>10;J[f]=b+J[f-7]+P+J[f-16]|0}let{A:r,B:i,C:o,D:s,E:a,F:c,G:u,H:l}=this;for(let f=0;f<64;f++){let p=F(a,6)^F(a,11)^F(a,25),d=l+p+Bt(a,c,u)+rr[f]+J[f]|0,b=(F(r,2)^F(r,13)^F(r,22))+Lt(r,i,o)|0;l=u,u=c,c=a,a=s+d|0,s=o,o=i,i=r,r=d+b|0}r=r+this.A|0,i=i+this.B|0,o=o+this.C|0,s=s+this.D|0,a=a+this.E|0,c=c+this.F|0,u=u+this.G|0,l=l+this.H|0,this.set(r,i,o,s,a,c,u,l)}roundClean(){J.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var kt=Et(()=>new $e);import{TOKEN_PROGRAM_ID as ir}from"@solana/spl-token";import{Keypair as or,PublicKey as sr}from"@solana/web3.js";import bc from"bn.js";var yc=M("CobaltX_Util");function Ct({fromPublicKey:e,programId:t=ir,assignSeed:n}){let r=n?btoa(n).slice(0,32):or.generate().publicKey.toBase58().slice(0,32);return{publicKey:ar(e,r,t),seed:r}}function ar(e,t,n){let r=Buffer.concat([e.toBuffer(),Buffer.from(t),n.toBuffer()]),i=kt(r);return new sr(i)}function dr(e){let{mint:t,tokenAccount:n,owner:r,programId:i=ne}=e;return cr(n,t,r,i)}function gr(e){let{tokenAccount:t,payer:n,multiSigners:r=[],owner:i,programId:o=ne}=e;return ur(t,n,i,r,o)}async function Rc(e){let{connection:t,amount:n,commitment:r,payer:i,owner:o,skipCloseAccount:s,network:a}=e,c=await t.getMinimumBalanceForRentExemption(Be.span,r),u=U(n).add(new mr(c)),l=Ct({fromPublicKey:i,programId:ne});return{addresses:{newAccount:l.publicKey},signers:[],instructions:[pr.createAccountWithSeed({fromPubkey:i,basePubkey:i,seed:l.seed,newAccountPubkey:l.publicKey,lamports:u.toNumber(),space:Be.span,programId:ne}),dr({mint:new fr(We(a).address),tokenAccount:l.publicKey,owner:o,programId:ne})],instructionTypes:[ce.CreateAccount,ce.InitAccount],endInstructionTypes:s?[]:[ce.CloseAccount],endInstructions:s?[]:[gr({tokenAccount:l.publicKey,payer:i,owner:o})]}}function Oc({source:e,destination:t,owner:n,amount:r,multiSigners:i=[],tokenProgram:o=ne}){return lr(e,t,n,BigInt(String(r)),i,o)}export{gr as closeAccountInstruction,Rc as createWSolAccountInstructions,dr as initTokenAccountInstruction,Oc as makeTransferInstruction};
/*!
 *  decimal.js v10.5.0
 *  An arbitrary-precision Decimal type for JavaScript.
 *  https://github.com/MikeMcl/decimal.js
 *  Copyright (c) 2025 Michael Mclaughlin <M8ch88l@gmail.com>
 *  MIT Licence
 */
/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */
//# sourceMappingURL=instruction.mjs.map