@raydium-io/raydium-sdk-v2
Version:
An SDK for building applications on top of Raydium.
1 lines • 63 kB
JavaScript
var Nn=Object.defineProperty,Rn=Object.defineProperties;var Ln=Object.getOwnPropertyDescriptors;var Mt=Object.getOwnPropertySymbols;var Mn=Object.prototype.hasOwnProperty,On=Object.prototype.propertyIsEnumerable;var Ot=(e,t,n)=>t in e?Nn(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Z=(e,t)=>{for(var n in t||(t={}))Mn.call(t,n)&&Ot(e,n,t[n]);if(Mt)for(var n of Mt(t))On.call(t,n)&&Ot(e,n,t[n]);return e},j=(e,t)=>Rn(e,Ln(t));import{PublicKey as Ee,TransactionInstruction as oe,Keypair as Nr,SystemProgram as Rt}from"@solana/web3.js";import{ASSOCIATED_TOKEN_PROGRAM_ID as rt,TOKEN_2022_PROGRAM_ID as Lt,TOKEN_PROGRAM_ID as re}from"@solana/spl-token";import{PublicKey as Dr}from"@solana/web3.js";import{get as Ft,set as Fn}from"lodash";var at=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(i=>typeof i=="object"?JSON.stringify(i):i).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}},Et={},En={};function v(e){let t=Ft(Et,e);if(!t){let n=Ft(En,e);t=new at({name:e,logLevel:n}),Fn(Et,e,t)}return t}import{MINT_SIZE as Ur,TOKEN_PROGRAM_ID as Xr,getTransferFeeConfig as Hr,unpackMint as zr}from"@solana/spl-token";var Zr=v("Raydium_accountInfo_util");import ne from"bn.js";var ge=9e15,de=1e9,ut="0123456789abcdef",qe="2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058",Ge="3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789",ct={precision:20,rounding:4,modulo:1,toExpNeg:-7,toExpPos:21,minE:-ge,maxE:ge,crypto:!1},Vt,te,h=!0,Xe="[DecimalError] ",me=Xe+"Invalid argument: ",qt=Xe+"Precision limit exceeded",Gt=Xe+"crypto unavailable",Ut="[object Decimal]",q=Math.floor,W=Math.pow,Wn=/^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i,vn=/^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i,_n=/^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i,Xt=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,Y=1e7,k=7,Dn=9007199254740991,Vn=qe.length-1,lt=Ge.length-1,p={toStringTag:Ut};p.absoluteValue=p.abs=function(){var e=new this.constructor(this);return e.s<0&&(e.s=1),y(e)};p.ceil=function(){return y(new this.constructor(this),this.e+1,2)};p.clampedTo=p.clamp=function(e,t){var n,i=this,r=i.constructor;if(e=new r(e),t=new r(t),!e.s||!t.s)return new r(NaN);if(e.gt(t))throw Error(me+t);return n=i.cmp(e),n<0?e:i.cmp(t)>0?t:new r(i)};p.comparedTo=p.cmp=function(e){var t,n,i,r,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(i=s.length,r=a.length,t=0,n=i<r?i:r;t<n;++t)if(s[t]!==a[t])return s[t]>a[t]^c<0?1:-1;return i===r?0:i>r^c<0?1:-1};p.cosine=p.cos=function(){var e,t,n=this,i=n.constructor;return n.d?n.d[0]?(e=i.precision,t=i.rounding,i.precision=e+Math.max(n.e,n.sd())+k,i.rounding=1,n=qn(i,jt(i,n)),i.precision=e,i.rounding=t,y(te==2||te==3?n.neg():n,e,t,!0)):new i(1):new i(NaN)};p.cubeRoot=p.cbrt=function(){var e,t,n,i,r,o,s,a,c,u,l=this,m=l.constructor;if(!l.isFinite()||l.isZero())return new m(l);for(h=!1,o=l.s*W(l.s*l,1/3),!o||Math.abs(o)==1/0?(n=_(l.d),e=l.e,(o=(e-n.length+1)%3)&&(n+=o==1||o==-2?"0":"00"),o=W(n,1/3),e=q((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),i=new m(n),i.s=l.s):i=new m(o.toString()),s=(e=m.precision)+3;;)if(a=i,c=a.times(a).times(a),u=c.plus(l),i=C(u.plus(l).times(a),u.plus(c),s+2,1),_(a.d).slice(0,s)===(n=_(i.d)).slice(0,s))if(n=n.slice(s-3,s+1),n=="9999"||!r&&n=="4999"){if(!r&&(y(a,e+1,0),a.times(a).times(a).eq(l))){i=a;break}s+=4,r=1}else{(!+n||!+n.slice(1)&&n.charAt(0)=="5")&&(y(i,e+1,1),t=!i.times(i).times(i).eq(l));break}return h=!0,y(i,e,m.rounding,t)};p.decimalPlaces=p.dp=function(){var e,t=this.d,n=NaN;if(t){if(e=t.length-1,n=(e-q(this.e/k))*k,e=t[e],e)for(;e%10==0;e/=10)n--;n<0&&(n=0)}return n};p.dividedBy=p.div=function(e){return C(this,new this.constructor(e))};p.dividedToIntegerBy=p.divToInt=function(e){var t=this,n=t.constructor;return y(C(t,new n(e),0,1,1),n.precision,n.rounding)};p.equals=p.eq=function(e){return this.cmp(e)===0};p.floor=function(){return y(new this.constructor(this),this.e+1,3)};p.greaterThan=p.gt=function(e){return this.cmp(e)>0};p.greaterThanOrEqualTo=p.gte=function(e){var t=this.cmp(e);return t==1||t===0};p.hyperbolicCosine=p.cosh=function(){var e,t,n,i,r,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,i=s.rounding,s.precision=n+Math.max(o.e,o.sd())+4,s.rounding=1,r=o.d.length,r<32?(e=Math.ceil(r/3),t=(1/ze(4,e)).toString()):(e=16,t="2.3283064365386962890625e-10"),o=Pe(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 y(o,s.precision=n,s.rounding=i,!0)};p.hyperbolicSine=p.sinh=function(){var e,t,n,i,r=this,o=r.constructor;if(!r.isFinite()||r.isZero())return new o(r);if(t=o.precision,n=o.rounding,o.precision=t+Math.max(r.e,r.sd())+4,o.rounding=1,i=r.d.length,i<3)r=Pe(o,2,r,r,!0);else{e=1.4*Math.sqrt(i),e=e>16?16:e|0,r=r.times(1/ze(5,e)),r=Pe(o,2,r,r,!0);for(var s,a=new o(5),c=new o(16),u=new o(20);e--;)s=r.times(r),r=r.times(a.plus(s.times(c.times(s).plus(u))))}return o.precision=t,o.rounding=n,y(r,t,n,!0)};p.hyperbolicTangent=p.tanh=function(){var e,t,n=this,i=n.constructor;return n.isFinite()?n.isZero()?new i(n):(e=i.precision,t=i.rounding,i.precision=e+7,i.rounding=1,C(n.sinh(),n.cosh(),i.precision=e,i.rounding=t)):new i(n.s)};p.inverseCosine=p.acos=function(){var e=this,t=e.constructor,n=e.abs().cmp(1),i=t.precision,r=t.rounding;return n!==-1?n===0?e.isNeg()?Q(t,i,r):new t(0):new t(NaN):e.isZero()?Q(t,i+4,r).times(.5):(t.precision=i+6,t.rounding=1,e=new t(1).minus(e).div(e.plus(1)).sqrt().atan(),t.precision=i,t.rounding=r,e.times(2))};p.inverseHyperbolicCosine=p.acosh=function(){var e,t,n=this,i=n.constructor;return n.lte(1)?new i(n.eq(1)?0:NaN):n.isFinite()?(e=i.precision,t=i.rounding,i.precision=e+Math.max(Math.abs(n.e),n.sd())+4,i.rounding=1,h=!1,n=n.times(n).minus(1).sqrt().plus(n),h=!0,i.precision=e,i.rounding=t,n.ln()):new i(n)};p.inverseHyperbolicSine=p.asinh=function(){var e,t,n=this,i=n.constructor;return!n.isFinite()||n.isZero()?new i(n):(e=i.precision,t=i.rounding,i.precision=e+2*Math.max(Math.abs(n.e),n.sd())+6,i.rounding=1,h=!1,n=n.times(n).plus(1).sqrt().plus(n),h=!0,i.precision=e,i.rounding=t,n.ln())};p.inverseHyperbolicTangent=p.atanh=function(){var e,t,n,i,r=this,o=r.constructor;return r.isFinite()?r.e>=0?new o(r.abs().eq(1)?r.s/0:r.isZero()?r:NaN):(e=o.precision,t=o.rounding,i=r.sd(),Math.max(i,e)<2*-r.e-1?y(new o(r),e,t,!0):(o.precision=n=i-r.e,r=C(r.plus(1),new o(1).minus(r),n+e,1),o.precision=e+4,o.rounding=1,r=r.ln(),o.precision=e,o.rounding=t,r.times(.5))):new o(NaN)};p.inverseSine=p.asin=function(){var e,t,n,i,r=this,o=r.constructor;return r.isZero()?new o(r):(t=r.abs().cmp(1),n=o.precision,i=o.rounding,t!==-1?t===0?(e=Q(o,n+4,i).times(.5),e.s=r.s,e):new o(NaN):(o.precision=n+6,o.rounding=1,r=r.div(new o(1).minus(r.times(r)).sqrt().plus(1)).atan(),o.precision=n,o.rounding=i,r.times(2)))};p.inverseTangent=p.atan=function(){var e,t,n,i,r,o,s,a,c,u=this,l=u.constructor,m=l.precision,d=l.rounding;if(u.isFinite()){if(u.isZero())return new l(u);if(u.abs().eq(1)&&m+4<=lt)return s=Q(l,m+4,d).times(.25),s.s=u.s,s}else{if(!u.s)return new l(NaN);if(m+4<=lt)return s=Q(l,m+4,d).times(.5),s.s=u.s,s}for(l.precision=a=m+10,l.rounding=1,n=Math.min(28,a/k+2|0),e=n;e;--e)u=u.div(u.times(u).plus(1).sqrt().plus(1));for(h=!1,t=Math.ceil(a/k),i=1,c=u.times(u),s=new l(u),r=u;e!==-1;)if(r=r.times(c),o=s.minus(r.div(i+=2)),r=r.times(c),s=o.plus(r.div(i+=2)),s.d[t]!==void 0)for(e=t;s.d[e]===o.d[e]&&e--;);return n&&(s=s.times(2<<n-1)),h=!0,y(s,l.precision=m,l.rounding=d,!0)};p.isFinite=function(){return!!this.d};p.isInteger=p.isInt=function(){return!!this.d&&q(this.e/k)>this.d.length-2};p.isNaN=function(){return!this.s};p.isNegative=p.isNeg=function(){return this.s<0};p.isPositive=p.isPos=function(){return this.s>0};p.isZero=function(){return!!this.d&&this.d[0]===0};p.lessThan=p.lt=function(e){return this.cmp(e)<0};p.lessThanOrEqualTo=p.lte=function(e){return this.cmp(e)<1};p.logarithm=p.log=function(e){var t,n,i,r,o,s,a,c,u=this,l=u.constructor,m=l.precision,d=l.rounding,f=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(r=n[0];r%10===0;)r/=10;o=r!==1}if(h=!1,a=m+f,s=le(u,a),i=t?Ue(l,a+10):le(e,a),c=C(s,i,a,1),xe(c.d,r=m,d))do if(a+=10,s=le(u,a),i=t?Ue(l,a+10):le(e,a),c=C(s,i,a,1),!o){+_(c.d).slice(r+1,r+15)+1==1e14&&(c=y(c,m+1,0));break}while(xe(c.d,r+=10,d));return h=!0,y(c,m,d)};p.minus=p.sub=function(e){var t,n,i,r,o,s,a,c,u,l,m,d,f=this,w=f.constructor;if(e=new w(e),!f.d||!e.d)return!f.s||!e.s?e=new w(NaN):f.d?e.s=-e.s:e=new w(e.d||f.s!==e.s?f:NaN),e;if(f.s!=e.s)return e.s=-e.s,f.plus(e);if(u=f.d,d=e.d,a=w.precision,c=w.rounding,!u[0]||!d[0]){if(d[0])e.s=-e.s;else if(u[0])e=new w(f);else return new w(c===3?-0:0);return h?y(e,a,c):e}if(n=q(e.e/k),l=q(f.e/k),u=u.slice(),o=l-n,o){for(m=o<0,m?(t=u,o=-o,s=d.length):(t=d,n=l,s=u.length),i=Math.max(Math.ceil(a/k),s)+2,o>i&&(o=i,t.length=1),t.reverse(),i=o;i--;)t.push(0);t.reverse()}else{for(i=u.length,s=d.length,m=i<s,m&&(s=i),i=0;i<s;i++)if(u[i]!=d[i]){m=u[i]<d[i];break}o=0}for(m&&(t=u,u=d,d=t,e.s=-e.s),s=u.length,i=d.length-s;i>0;--i)u[s++]=0;for(i=d.length;i>o;){if(u[--i]<d[i]){for(r=i;r&&u[--r]===0;)u[r]=Y-1;--u[r],u[i]+=Y}u[i]-=d[i]}for(;u[--s]===0;)u.pop();for(;u[0]===0;u.shift())--n;return u[0]?(e.d=u,e.e=He(u,n),h?y(e,a,c):e):new w(c===3?-0:0)};p.modulo=p.mod=function(e){var t,n=this,i=n.constructor;return e=new i(e),!n.d||!e.s||e.d&&!e.d[0]?new i(NaN):!e.d||n.d&&!n.d[0]?y(new i(n),i.precision,i.rounding):(h=!1,i.modulo==9?(t=C(n,e.abs(),0,3,1),t.s*=e.s):t=C(n,e,0,i.modulo,1),t=t.times(e),h=!0,n.minus(t))};p.naturalExponential=p.exp=function(){return mt(this)};p.naturalLogarithm=p.ln=function(){return le(this)};p.negated=p.neg=function(){var e=new this.constructor(this);return e.s=-e.s,y(e)};p.plus=p.add=function(e){var t,n,i,r,o,s,a,c,u,l,m=this,d=m.constructor;if(e=new d(e),!m.d||!e.d)return!m.s||!e.s?e=new d(NaN):m.d||(e=new d(e.d||m.s===e.s?m:NaN)),e;if(m.s!=e.s)return e.s=-e.s,m.minus(e);if(u=m.d,l=e.d,a=d.precision,c=d.rounding,!u[0]||!l[0])return l[0]||(e=new d(m)),h?y(e,a,c):e;if(o=q(m.e/k),i=q(e.e/k),u=u.slice(),r=o-i,r){for(r<0?(n=u,r=-r,s=l.length):(n=l,i=o,s=u.length),o=Math.ceil(a/k),s=o>s?o+1:s+1,r>s&&(r=s,n.length=1),n.reverse();r--;)n.push(0);n.reverse()}for(s=u.length,r=l.length,s-r<0&&(r=s,n=l,l=u,u=n),t=0;r;)t=(u[--r]=u[r]+l[r]+t)/Y|0,u[r]%=Y;for(t&&(u.unshift(t),++i),s=u.length;u[--s]==0;)u.pop();return e.d=u,e.e=He(u,i),h?y(e,a,c):e};p.precision=p.sd=function(e){var t,n=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(me+e);return n.d?(t=Ht(n.d),e&&n.e+1>t&&(t=n.e+1)):t=NaN,t};p.round=function(){var e=this,t=e.constructor;return y(new t(e),e.e+1,t.rounding)};p.sine=p.sin=function(){var e,t,n=this,i=n.constructor;return n.isFinite()?n.isZero()?new i(n):(e=i.precision,t=i.rounding,i.precision=e+Math.max(n.e,n.sd())+k,i.rounding=1,n=Un(i,jt(i,n)),i.precision=e,i.rounding=t,y(te>2?n.neg():n,e,t,!0)):new i(NaN)};p.squareRoot=p.sqrt=function(){var e,t,n,i,r,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(h=!1,u=Math.sqrt(+s),u==0||u==1/0?(t=_(a),(t.length+c)%2==0&&(t+="0"),u=Math.sqrt(t),c=q((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),i=new l(t)):i=new l(u.toString()),n=(c=l.precision)+3;;)if(o=i,i=o.plus(C(s,o,n+2,1)).times(.5),_(o.d).slice(0,n)===(t=_(i.d)).slice(0,n))if(t=t.slice(n-3,n+1),t=="9999"||!r&&t=="4999"){if(!r&&(y(o,c+1,0),o.times(o).eq(s))){i=o;break}n+=4,r=1}else{(!+t||!+t.slice(1)&&t.charAt(0)=="5")&&(y(i,c+1,1),e=!i.times(i).eq(s));break}return h=!0,y(i,c,l.rounding,e)};p.tangent=p.tan=function(){var e,t,n=this,i=n.constructor;return n.isFinite()?n.isZero()?new i(n):(e=i.precision,t=i.rounding,i.precision=e+10,i.rounding=1,n=n.sin(),n.s=1,n=C(n,new i(1).minus(n.times(n)).sqrt(),e+10,0),i.precision=e,i.rounding=t,y(te==2||te==4?n.neg():n,e,t,!0)):new i(NaN)};p.times=p.mul=function(e){var t,n,i,r,o,s,a,c,u,l=this,m=l.constructor,d=l.d,f=(e=new m(e)).d;if(e.s*=l.s,!d||!d[0]||!f||!f[0])return new m(!e.s||d&&!d[0]&&!f||f&&!f[0]&&!d?NaN:!d||!f?e.s/0:e.s*0);for(n=q(l.e/k)+q(e.e/k),c=d.length,u=f.length,c<u&&(o=d,d=f,f=o,s=c,c=u,u=s),o=[],s=c+u,i=s;i--;)o.push(0);for(i=u;--i>=0;){for(t=0,r=c+i;r>i;)a=o[r]+f[i]*d[r-i-1]+t,o[r--]=a%Y|0,t=a/Y|0;o[r]=(o[r]+t)%Y|0}for(;!o[--s];)o.pop();return t?++n:o.shift(),e.d=o,e.e=He(o,n),h?y(e,m.precision,m.rounding):e};p.toBinary=function(e,t){return dt(this,2,e,t)};p.toDecimalPlaces=p.toDP=function(e,t){var n=this,i=n.constructor;return n=new i(n),e===void 0?n:(G(e,0,de),t===void 0?t=i.rounding:G(t,0,8),y(n,e+n.e+1,t))};p.toExponential=function(e,t){var n,i=this,r=i.constructor;return e===void 0?n=J(i,!0):(G(e,0,de),t===void 0?t=r.rounding:G(t,0,8),i=y(new r(i),e+1,t),n=J(i,!0,e+1)),i.isNeg()&&!i.isZero()?"-"+n:n};p.toFixed=function(e,t){var n,i,r=this,o=r.constructor;return e===void 0?n=J(r):(G(e,0,de),t===void 0?t=o.rounding:G(t,0,8),i=y(new o(r),e+r.e+1,t),n=J(i,!1,e+i.e+1)),r.isNeg()&&!r.isZero()?"-"+n:n};p.toFraction=function(e){var t,n,i,r,o,s,a,c,u,l,m,d,f=this,w=f.d,b=f.constructor;if(!w)return new b(f);if(u=n=new b(1),i=c=new b(0),t=new b(i),o=t.e=Ht(w)-f.e-1,s=o%k,t.d[0]=W(10,s<0?k+s:s),e==null)e=o>0?t:u;else{if(a=new b(e),!a.isInt()||a.lt(u))throw Error(me+a);e=a.gt(t)?o>0?t:u:a}for(h=!1,a=new b(_(w)),l=b.precision,b.precision=o=w.length*k*2;m=C(a,t,0,1,1),r=n.plus(m.times(i)),r.cmp(e)!=1;)n=i,i=r,r=u,u=c.plus(m.times(r)),c=r,r=t,t=a.minus(m.times(r)),a=r;return r=C(e.minus(n),i,0,1,1),c=c.plus(r.times(u)),n=n.plus(r.times(i)),c.s=u.s=f.s,d=C(u,i,o,1).minus(f).abs().cmp(C(c,n,o,1).minus(f).abs())<1?[u,i]:[c,n],b.precision=l,h=!0,d};p.toHexadecimal=p.toHex=function(e,t){return dt(this,16,e,t)};p.toNearest=function(e,t){var n=this,i=n.constructor;if(n=new i(n),e==null){if(!n.d)return n;e=new i(1),t=i.rounding}else{if(e=new i(e),t===void 0?t=i.rounding:G(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]?(h=!1,n=C(n,e,0,t,1).times(e),h=!0,y(n)):(e.s=n.s,n=e),n};p.toNumber=function(){return+this};p.toOctal=function(e,t){return dt(this,8,e,t)};p.toPower=p.pow=function(e){var t,n,i,r,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(W(+a,u));if(a=new c(a),a.eq(1))return a;if(i=c.precision,o=c.rounding,e.eq(1))return y(a,i,o);if(t=q(e.e/k),t>=e.d.length-1&&(n=u<0?-u:u)<=Dn)return r=zt(c,a,n,i),e.s<0?new c(1).div(r):y(r,i,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=W(+a,u),t=n==0||!isFinite(n)?q(u*(Math.log("0."+_(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):(h=!1,c.rounding=a.s=1,n=Math.min(12,(t+"").length),r=mt(e.times(le(a,i+n)),i),r.d&&(r=y(r,i+5,1),xe(r.d,i,o)&&(t=i+10,r=y(mt(e.times(le(a,t+n)),t),t+5,1),+_(r.d).slice(i+1,i+15)+1==1e14&&(r=y(r,i+1,0)))),r.s=s,h=!0,c.rounding=o,y(r,i,o))};p.toPrecision=function(e,t){var n,i=this,r=i.constructor;return e===void 0?n=J(i,i.e<=r.toExpNeg||i.e>=r.toExpPos):(G(e,1,de),t===void 0?t=r.rounding:G(t,0,8),i=y(new r(i),e,t),n=J(i,e<=i.e||i.e<=r.toExpNeg,e)),i.isNeg()&&!i.isZero()?"-"+n:n};p.toSignificantDigits=p.toSD=function(e,t){var n=this,i=n.constructor;return e===void 0?(e=i.precision,t=i.rounding):(G(e,1,de),t===void 0?t=i.rounding:G(t,0,8)),y(new i(n),e,t)};p.toString=function(){var e=this,t=e.constructor,n=J(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()&&!e.isZero()?"-"+n:n};p.truncated=p.trunc=function(){return y(new this.constructor(this),this.e+1,1)};p.valueOf=p.toJSON=function(){var e=this,t=e.constructor,n=J(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()?"-"+n:n};function _(e){var t,n,i,r=e.length-1,o="",s=e[0];if(r>0){for(o+=s,t=1;t<r;t++)i=e[t]+"",n=k-i.length,n&&(o+=ce(n)),o+=i;s=e[t],i=s+"",n=k-i.length,n&&(o+=ce(n))}else if(s===0)return"0";for(;s%10===0;)s/=10;return o+s}function G(e,t,n){if(e!==~~e||e<t||e>n)throw Error(me+e)}function xe(e,t,n,i){var r,o,s,a;for(o=e[0];o>=10;o/=10)--t;return--t<0?(t+=k,r=0):(r=Math.ceil((t+1)/k),t%=k),o=W(10,k-t),a=e[r]%o|0,i==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[r+1]/o/100|0)==W(10,t-2)-1||(a==o/2||a==0)&&(e[r+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=(i||n<4)&&a==9999||!i&&n>3&&a==4999):s=((i||n<4)&&a+1==o||!i&&n>3&&a+1==o/2)&&(e[r+1]/o/1e3|0)==W(10,t-3)-1,s}function De(e,t,n){for(var i,r=[0],o,s=0,a=e.length;s<a;){for(o=r.length;o--;)r[o]*=t;for(r[0]+=ut.indexOf(e.charAt(s++)),i=0;i<r.length;i++)r[i]>n-1&&(r[i+1]===void 0&&(r[i+1]=0),r[i+1]+=r[i]/n|0,r[i]%=n)}return r.reverse()}function qn(e,t){var n,i,r;if(t.isZero())return t;i=t.d.length,i<32?(n=Math.ceil(i/3),r=(1/ze(4,n)).toString()):(n=16,r="2.3283064365386962890625e-10"),e.precision+=n,t=Pe(e,1,t.times(r),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 C=function(){function e(i,r,o){var s,a=0,c=i.length;for(i=i.slice();c--;)s=i[c]*r+a,i[c]=s%o|0,a=s/o|0;return a&&i.unshift(a),i}function t(i,r,o,s){var a,c;if(o!=s)c=o>s?1:-1;else for(a=c=0;a<o;a++)if(i[a]!=r[a]){c=i[a]>r[a]?1:-1;break}return c}function n(i,r,o,s){for(var a=0;o--;)i[o]-=a,a=i[o]<r[o]?1:0,i[o]=a*s+i[o]-r[o];for(;!i[0]&&i.length>1;)i.shift()}return function(i,r,o,s,a,c){var u,l,m,d,f,w,b,x,B,K,I,R,ae,U,ee,ye,ue,ot,z,We,ve=i.constructor,st=i.s==r.s?1:-1,V=i.d,N=r.d;if(!V||!V[0]||!N||!N[0])return new ve(!i.s||!r.s||(V?N&&V[0]==N[0]:!N)?NaN:V&&V[0]==0||!N?st*0:st/0);for(c?(f=1,l=i.e-r.e):(c=Y,f=k,l=q(i.e/f)-q(r.e/f)),z=N.length,ue=V.length,B=new ve(st),K=B.d=[],m=0;N[m]==(V[m]||0);m++);if(N[m]>(V[m]||0)&&l--,o==null?(U=o=ve.precision,s=ve.rounding):a?U=o+(i.e-r.e)+1:U=o,U<0)K.push(1),w=!0;else{if(U=U/f+2|0,m=0,z==1){for(d=0,N=N[0],U++;(m<ue||d)&&U--;m++)ee=d*c+(V[m]||0),K[m]=ee/N|0,d=ee%N|0;w=d||m<ue}else{for(d=c/(N[0]+1)|0,d>1&&(N=e(N,d,c),V=e(V,d,c),z=N.length,ue=V.length),ye=z,I=V.slice(0,z),R=I.length;R<z;)I[R++]=0;We=N.slice(),We.unshift(0),ot=N[0],N[1]>=c/2&&++ot;do d=0,u=t(N,I,z,R),u<0?(ae=I[0],z!=R&&(ae=ae*c+(I[1]||0)),d=ae/ot|0,d>1?(d>=c&&(d=c-1),b=e(N,d,c),x=b.length,R=I.length,u=t(b,I,x,R),u==1&&(d--,n(b,z<x?We:N,x,c))):(d==0&&(u=d=1),b=N.slice()),x=b.length,x<R&&b.unshift(0),n(I,b,R,c),u==-1&&(R=I.length,u=t(N,I,z,R),u<1&&(d++,n(I,z<R?We:N,R,c))),R=I.length):u===0&&(d++,I=[0]),K[m++]=d,u&&I[0]?I[R++]=V[ye]||0:(I=[V[ye]],R=1);while((ye++<ue||I[0]!==void 0)&&U--);w=I[0]!==void 0}K[0]||K.shift()}if(f==1)B.e=l,Vt=w;else{for(m=1,d=K[0];d>=10;d/=10)m++;B.e=m+l*f-1,y(B,a?o+B.e+1:o,s,w)}return B}}();function y(e,t,n,i){var r,o,s,a,c,u,l,m,d,f=e.constructor;e:if(t!=null){if(m=e.d,!m)return e;for(r=1,a=m[0];a>=10;a/=10)r++;if(o=t-r,o<0)o+=k,s=t,l=m[d=0],c=l/W(10,r-s-1)%10|0;else if(d=Math.ceil((o+1)/k),a=m.length,d>=a)if(i){for(;a++<=d;)m.push(0);l=c=0,r=1,o%=k,s=o-k+1}else break e;else{for(l=a=m[d],r=1;a>=10;a/=10)r++;o%=k,s=o-k+r,c=s<0?0:l/W(10,r-s-1)%10|0}if(i=i||t<0||m[d+1]!==void 0||(s<0?l:l%W(10,r-s-1)),u=n<4?(c||i)&&(n==0||n==(e.s<0?3:2)):c>5||c==5&&(n==4||i||n==6&&(o>0?s>0?l/W(10,r-s):0:m[d-1])%10&1||n==(e.s<0?8:7)),t<1||!m[0])return m.length=0,u?(t-=e.e+1,m[0]=W(10,(k-t%k)%k),e.e=-t||0):m[0]=e.e=0,e;if(o==0?(m.length=d,a=1,d--):(m.length=d+1,a=W(10,k-o),m[d]=s>0?(l/W(10,r-s)%W(10,s)|0)*a:0),u)for(;;)if(d==0){for(o=1,s=m[0];s>=10;s/=10)o++;for(s=m[0]+=a,a=1;s>=10;s/=10)a++;o!=a&&(e.e++,m[0]==Y&&(m[0]=1));break}else{if(m[d]+=a,m[d]!=Y)break;m[d--]=0,a=1}for(o=m.length;m[--o]===0;)m.pop()}return h&&(e.e>f.maxE?(e.d=null,e.e=NaN):e.e<f.minE&&(e.e=0,e.d=[0])),e}function J(e,t,n){if(!e.isFinite())return Yt(e);var i,r=e.e,o=_(e.d),s=o.length;return t?(n&&(i=n-s)>0?o=o.charAt(0)+"."+o.slice(1)+ce(i):s>1&&(o=o.charAt(0)+"."+o.slice(1)),o=o+(e.e<0?"e":"e+")+e.e):r<0?(o="0."+ce(-r-1)+o,n&&(i=n-s)>0&&(o+=ce(i))):r>=s?(o+=ce(r+1-s),n&&(i=n-r-1)>0&&(o=o+"."+ce(i))):((i=r+1)<s&&(o=o.slice(0,i)+"."+o.slice(i)),n&&(i=n-s)>0&&(r+1===s&&(o+="."),o+=ce(i))),o}function He(e,t){var n=e[0];for(t*=k;n>=10;n/=10)t++;return t}function Ue(e,t,n){if(t>Vn)throw h=!0,n&&(e.precision=n),Error(qt);return y(new e(qe),t,1,!0)}function Q(e,t,n){if(t>lt)throw Error(qt);return y(new e(Ge),t,n,!0)}function Ht(e){var t=e.length-1,n=t*k+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 ce(e){for(var t="";e--;)t+="0";return t}function zt(e,t,n,i){var r,o=new e(1),s=Math.ceil(i/k+4);for(h=!1;;){if(n%2&&(o=o.times(t),_t(o.d,s)&&(r=!0)),n=q(n/2),n===0){n=o.d.length-1,r&&o.d[n]===0&&++o.d[n];break}t=t.times(t),_t(t.d,s)}return h=!0,o}function vt(e){return e.d[e.d.length-1]&1}function Zt(e,t,n){for(var i,r,o=new e(t[0]),s=0;++s<t.length;){if(r=new e(t[s]),!r.s){o=r;break}i=o.cmp(r),(i===n||i===0&&o.s===n)&&(o=r)}return o}function mt(e,t){var n,i,r,o,s,a,c,u=0,l=0,m=0,d=e.constructor,f=d.rounding,w=d.precision;if(!e.d||!e.d[0]||e.e>17)return new d(e.d?e.d[0]?e.s<0?0:1/0:1:e.s?e.s<0?0:e:0/0);for(t==null?(h=!1,c=w):c=t,a=new d(.03125);e.e>-2;)e=e.times(a),m+=5;for(i=Math.log(W(2,m))/Math.LN10*2+5|0,c+=i,n=o=s=new d(1),d.precision=c;;){if(o=y(o.times(e),c,1),n=n.times(++l),a=s.plus(C(o,n,c,1)),_(a.d).slice(0,c)===_(s.d).slice(0,c)){for(r=m;r--;)s=y(s.times(s),c,1);if(t==null)if(u<3&&xe(s.d,c-i,f,u))d.precision=c+=10,n=o=a=new d(1),l=0,u++;else return y(s,d.precision=w,f,h=!0);else return d.precision=w,s}s=a}}function le(e,t){var n,i,r,o,s,a,c,u,l,m,d,f=1,w=10,b=e,x=b.d,B=b.constructor,K=B.rounding,I=B.precision;if(b.s<0||!x||!x[0]||!b.e&&x[0]==1&&x.length==1)return new B(x&&!x[0]?-1/0:b.s!=1?NaN:x?0:b);if(t==null?(h=!1,l=I):l=t,B.precision=l+=w,n=_(x),i=n.charAt(0),Math.abs(o=b.e)<15e14){for(;i<7&&i!=1||i==1&&n.charAt(1)>3;)b=b.times(e),n=_(b.d),i=n.charAt(0),f++;o=b.e,i>1?(b=new B("0."+n),o++):b=new B(i+"."+n.slice(1))}else return u=Ue(B,l+2,I).times(o+""),b=le(new B(i+"."+n.slice(1)),l-w).plus(u),B.precision=I,t==null?y(b,I,K,h=!0):b;for(m=b,c=s=b=C(b.minus(1),b.plus(1),l,1),d=y(b.times(b),l,1),r=3;;){if(s=y(s.times(d),l,1),u=c.plus(C(s,new B(r),l,1)),_(u.d).slice(0,l)===_(c.d).slice(0,l))if(c=c.times(2),o!==0&&(c=c.plus(Ue(B,l+2,I).times(o+""))),c=C(c,new B(f),l,1),t==null)if(xe(c.d,l-w,K,a))B.precision=l+=w,u=s=b=C(m.minus(1),m.plus(1),l,1),d=y(b.times(b),l,1),r=a=1;else return y(c,B.precision=I,K,h=!0);else return B.precision=I,c;c=u,r+=2}}function Yt(e){return String(e.s*e.s/0)}function Ve(e,t){var n,i,r;for((n=t.indexOf("."))>-1&&(t=t.replace(".","")),(i=t.search(/e/i))>0?(n<0&&(n=i),n+=+t.slice(i+1),t=t.substring(0,i)):n<0&&(n=t.length),i=0;t.charCodeAt(i)===48;i++);for(r=t.length;t.charCodeAt(r-1)===48;--r);if(t=t.slice(i,r),t){if(r-=i,e.e=n=n-i-1,e.d=[],i=(n+1)%k,n<0&&(i+=k),i<r){for(i&&e.d.push(+t.slice(0,i)),r-=k;i<r;)e.d.push(+t.slice(i,i+=k));t=t.slice(i),i=k-t.length}else i-=r;for(;i--;)t+="0";e.d.push(+t),h&&(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 Gn(e,t){var n,i,r,o,s,a,c,u,l;if(t.indexOf("_")>-1){if(t=t.replace(/(\d)_(?=\d)/g,"$1"),Xt.test(t))return Ve(e,t)}else if(t==="Infinity"||t==="NaN")return+t||(e.s=NaN),e.e=NaN,e.d=null,e;if(vn.test(t))n=16,t=t.toLowerCase();else if(Wn.test(t))n=2;else if(_n.test(t))n=8;else throw Error(me+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,i=e.constructor,s&&(t=t.replace(".",""),a=t.length,o=a-o,r=zt(i,new i(n),o,o*2)),u=De(t,n,Y),l=u.length-1,o=l;u[o]===0;--o)u.pop();return o<0?new i(e.s*0):(e.e=He(u,l),e.d=u,h=!1,s&&(e=C(e,r,a*4)),c&&(e=e.times(Math.abs(c)<54?W(2,c):Ze.pow(2,c))),h=!0,e)}function Un(e,t){var n,i=t.d.length;if(i<3)return t.isZero()?t:Pe(e,2,t,t);n=1.4*Math.sqrt(i),n=n>16?16:n|0,t=t.times(1/ze(5,n)),t=Pe(e,2,t,t);for(var r,o=new e(5),s=new e(16),a=new e(20);n--;)r=t.times(t),t=t.times(o.plus(r.times(s.times(r).minus(a))));return t}function Pe(e,t,n,i,r){var o,s,a,c,u=1,l=e.precision,m=Math.ceil(l/k);for(h=!1,c=n.times(n),a=new e(i);;){if(s=C(a.times(c),new e(t++*t++),l,1),a=r?i.plus(s):i.minus(s),i=C(s.times(c),new e(t++*t++),l,1),s=a.plus(i),s.d[m]!==void 0){for(o=m;s.d[o]===a.d[o]&&o--;);if(o==-1)break}o=a,a=i,i=s,s=o,u++}return h=!0,s.d.length=m+1,s}function ze(e,t){for(var n=e;--t;)n*=e;return n}function jt(e,t){var n,i=t.s<0,r=Q(e,e.precision,1),o=r.times(.5);if(t=t.abs(),t.lte(o))return te=i?4:1,t;if(n=t.divToInt(r),n.isZero())te=i?3:2;else{if(t=t.minus(n.times(r)),t.lte(o))return te=vt(n)?i?2:3:i?4:1,t;te=vt(n)?i?1:4:i?3:2}return t.minus(r).abs()}function dt(e,t,n,i){var r,o,s,a,c,u,l,m,d,f=e.constructor,w=n!==void 0;if(w?(G(n,1,de),i===void 0?i=f.rounding:G(i,0,8)):(n=f.precision,i=f.rounding),!e.isFinite())l=Yt(e);else{for(l=J(e),s=l.indexOf("."),w?(r=2,t==16?n=n*4-3:t==8&&(n=n*3-2)):r=t,s>=0&&(l=l.replace(".",""),d=new f(1),d.e=l.length-s,d.d=De(J(d),10,r),d.e=d.d.length),m=De(l,10,r),o=c=m.length;m[--c]==0;)m.pop();if(!m[0])l=w?"0p+0":"0";else{if(s<0?o--:(e=new f(e),e.d=m,e.e=o,e=C(e,d,n,i,0,r),m=e.d,o=e.e,u=Vt),s=m[n],a=r/2,u=u||m[n+1]!==void 0,u=i<4?(s!==void 0||u)&&(i===0||i===(e.s<0?3:2)):s>a||s===a&&(i===4||u||i===6&&m[n-1]&1||i===(e.s<0?8:7)),m.length=n,u)for(;++m[--n]>r-1;)m[n]=0,n||(++o,m.unshift(1));for(c=m.length;!m[c-1];--c);for(s=0,l="";s<c;s++)l+=ut.charAt(m[s]);if(w){if(c>1)if(t==16||t==8){for(s=t==16?4:3,--c;c%s;c++)l+="0";for(m=De(l,r,t),c=m.length;!m[c-1];--c);for(s=1,l="1.";s<c;s++)l+=ut.charAt(m[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 _t(e,t){if(e.length>t)return e.length=t,!0}function Xn(e){return new this(e).abs()}function Hn(e){return new this(e).acos()}function zn(e){return new this(e).acosh()}function Zn(e,t){return new this(e).plus(t)}function Yn(e){return new this(e).asin()}function jn(e){return new this(e).asinh()}function Qn(e){return new this(e).atan()}function Jn(e){return new this(e).atanh()}function $n(e,t){e=new this(e),t=new this(t);var n,i=this.precision,r=this.rounding,o=i+4;return!e.s||!t.s?n=new this(NaN):!e.d&&!t.d?(n=Q(this,o,1).times(t.s>0?.25:.75),n.s=e.s):!t.d||e.isZero()?(n=t.s<0?Q(this,i,r):new this(0),n.s=e.s):!e.d||t.isZero()?(n=Q(this,o,1).times(.5),n.s=e.s):t.s<0?(this.precision=o,this.rounding=1,n=this.atan(C(e,t,o,1)),t=Q(this,o,1),this.precision=i,this.rounding=r,n=e.s<0?n.minus(t):n.plus(t)):n=this.atan(C(e,t,o,1)),n}function ei(e){return new this(e).cbrt()}function ti(e){return y(e=new this(e),e.e+1,2)}function ni(e,t,n){return new this(e).clamp(t,n)}function ii(e){if(!e||typeof e!="object")throw Error(Xe+"Object expected");var t,n,i,r=e.defaults===!0,o=["precision",1,de,"rounding",0,8,"toExpNeg",-ge,0,"toExpPos",0,ge,"maxE",0,ge,"minE",-ge,0,"modulo",0,9];for(t=0;t<o.length;t+=3)if(n=o[t],r&&(this[n]=ct[n]),(i=e[n])!==void 0)if(q(i)===i&&i>=o[t+1]&&i<=o[t+2])this[n]=i;else throw Error(me+n+": "+i);if(n="crypto",r&&(this[n]=ct[n]),(i=e[n])!==void 0)if(i===!0||i===!1||i===0||i===1)if(i)if(typeof crypto<"u"&&crypto&&(crypto.getRandomValues||crypto.randomBytes))this[n]=!0;else throw Error(Gt);else this[n]=!1;else throw Error(me+n+": "+i);return this}function ri(e){return new this(e).cos()}function oi(e){return new this(e).cosh()}function Qt(e){var t,n,i;function r(o){var s,a,c,u=this;if(!(u instanceof r))return new r(o);if(u.constructor=r,Dt(o)){u.s=o.s,h?!o.d||o.e>r.maxE?(u.e=NaN,u.d=null):o.e<r.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++;h?s>r.maxE?(u.e=NaN,u.d=null):s<r.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 Ve(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),Xt.test(o)?Ve(u,o):Gn(u,o);if(c==="bigint")return o<0?(o=-o,u.s=-1):u.s=1,Ve(u,o.toString());throw Error(me+o)}if(r.prototype=p,r.ROUND_UP=0,r.ROUND_DOWN=1,r.ROUND_CEIL=2,r.ROUND_FLOOR=3,r.ROUND_HALF_UP=4,r.ROUND_HALF_DOWN=5,r.ROUND_HALF_EVEN=6,r.ROUND_HALF_CEIL=7,r.ROUND_HALF_FLOOR=8,r.EUCLID=9,r.config=r.set=ii,r.clone=Qt,r.isDecimal=Dt,r.abs=Xn,r.acos=Hn,r.acosh=zn,r.add=Zn,r.asin=Yn,r.asinh=jn,r.atan=Qn,r.atanh=Jn,r.atan2=$n,r.cbrt=ei,r.ceil=ti,r.clamp=ni,r.cos=ri,r.cosh=oi,r.div=si,r.exp=ai,r.floor=ui,r.hypot=ci,r.ln=li,r.log=mi,r.log10=pi,r.log2=di,r.max=fi,r.min=bi,r.mod=yi,r.mul=gi,r.pow=Pi,r.random=wi,r.round=ki,r.sign=Ai,r.sin=Ti,r.sinh=hi,r.sqrt=Bi,r.sub=xi,r.sum=Ii,r.tan=Si,r.tanh=Ki,r.trunc=Ci,e===void 0&&(e={}),e&&e.defaults!==!0)for(i=["precision","rounding","toExpNeg","toExpPos","maxE","minE","modulo","crypto"],t=0;t<i.length;)e.hasOwnProperty(n=i[t++])||(e[n]=this[n]);return r.config(e),r}function si(e,t){return new this(e).div(t)}function ai(e){return new this(e).exp()}function ui(e){return y(e=new this(e),e.e+1,3)}function ci(){var e,t,n=new this(0);for(h=!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 h=!0,new this(1/0);n=t}return h=!0,n.sqrt()}function Dt(e){return e instanceof Ze||e&&e.toStringTag===Ut||!1}function li(e){return new this(e).ln()}function mi(e,t){return new this(e).log(t)}function di(e){return new this(e).log(2)}function pi(e){return new this(e).log(10)}function fi(){return Zt(this,arguments,-1)}function bi(){return Zt(this,arguments,1)}function yi(e,t){return new this(e).mod(t)}function gi(e,t){return new this(e).mul(t)}function Pi(e,t){return new this(e).pow(t)}function wi(e){var t,n,i,r,o=0,s=new this(1),a=[];if(e===void 0?e=this.precision:G(e,1,de),i=Math.ceil(e/k),this.crypto)if(crypto.getRandomValues)for(t=crypto.getRandomValues(new Uint32Array(i));o<i;)r=t[o],r>=429e7?t[o]=crypto.getRandomValues(new Uint32Array(1))[0]:a[o++]=r%1e7;else if(crypto.randomBytes){for(t=crypto.randomBytes(i*=4);o<i;)r=t[o]+(t[o+1]<<8)+(t[o+2]<<16)+((t[o+3]&127)<<24),r>=214e7?crypto.randomBytes(4).copy(t,o):(a.push(r%1e7),o+=4);o=i/4}else throw Error(Gt);else for(;o<i;)a[o++]=Math.random()*1e7|0;for(i=a[--o],e%=k,i&&e&&(r=W(10,k-e),a[o]=(i/r|0)*r);a[o]===0;o--)a.pop();if(o<0)n=0,a=[0];else{for(n=-1;a[0]===0;n-=k)a.shift();for(i=1,r=a[0];r>=10;r/=10)i++;i<k&&(n-=k-i)}return s.e=n,s.d=a,s}function ki(e){return y(e=new this(e),e.e+1,this.rounding)}function Ai(e){return e=new this(e),e.d?e.d[0]?e.s:0*e.s:e.s||NaN}function Ti(e){return new this(e).sin()}function hi(e){return new this(e).sinh()}function Bi(e){return new this(e).sqrt()}function xi(e,t){return new this(e).sub(t)}function Ii(){var e=0,t=arguments,n=new this(t[e]);for(h=!1;n.s&&++e<t.length;)n=n.plus(t[e]);return h=!0,y(n,this.precision,this.rounding)}function Si(e){return new this(e).tan()}function Ki(e){return new this(e).tanh()}function Ci(e){return y(e=new this(e),e.e+1,1)}p[Symbol.for("nodejs.util.inspect.custom")]=p.toString;p[Symbol.toStringTag]="Decimal";var Ze=p.constructor=Qt(ct);qe=new Ze(qe);Ge=new Ze(Ge);import Wi from"big.js";import fo from"bn.js";import Ni from"toformat";var Ri=Ni,Ie=Ri;import je from"big.js";import Mi from"bn.js";import Oi from"decimal.js-light";import Se from"bn.js";var Jt=9007199254740991;function $(e){let t=v("Raydium_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>=Jt||e<=-Jt)&&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 Ye=v("module/fraction"),pt=Ie(je),Ke=Ie(Oi),Fi={[0]:Ke.ROUND_DOWN,[1]:Ke.ROUND_HALF_UP,[2]:Ke.ROUND_UP},Ei={[0]:je.roundDown,[1]:je.roundHalfUp,[2]:je.roundUp},L=class{constructor(t,n=new Mi(1)){this.numerator=$(t),this.denominator=$(n)}get quotient(){return this.numerator.div(this.denominator)}invert(){return new L(this.denominator,this.numerator)}add(t){let n=t instanceof L?t:new L($(t));return this.denominator.eq(n.denominator)?new L(this.numerator.add(n.numerator),this.denominator):new L(this.numerator.mul(n.denominator).add(n.numerator.mul(this.denominator)),this.denominator.mul(n.denominator))}sub(t){let n=t instanceof L?t:new L($(t));return this.denominator.eq(n.denominator)?new L(this.numerator.sub(n.numerator),this.denominator):new L(this.numerator.mul(n.denominator).sub(n.numerator.mul(this.denominator)),this.denominator.mul(n.denominator))}mul(t){let n=t instanceof L?t:new L($(t));return new L(this.numerator.mul(n.numerator),this.denominator.mul(n.denominator))}div(t){let n=t instanceof L?t:new L($(t));return new L(this.numerator.mul(n.denominator),this.denominator.mul(n.numerator))}toSignificant(t,n={groupSeparator:""},i=1){Number.isInteger(t)||Ye.logWithError(`${t} is not an integer.`),t<=0&&Ye.logWithError(`${t} is not positive.`),Ke.set({precision:t+1,rounding:Fi[i]});let r=new Ke(this.numerator.toString()).div(this.denominator.toString()).toSignificantDigits(t);return r.toFormat(r.decimalPlaces(),n)}toFixed(t,n={groupSeparator:""},i=1){return Number.isInteger(t)||Ye.logWithError(`${t} is not an integer.`),t<0&&Ye.logWithError(`${t} is negative.`),pt.DP=t,pt.RM=Ei[i]||1,new pt(this.numerator.toString()).div(this.denominator.toString()).toFormat(t,n)}isZero(){return this.numerator.isZero()}};var ho=v("Raydium_amount"),Bo=Ie(Wi);import{PublicKey as _i}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as $t}from"@solana/spl-token";var ft={chainId:101,address:_i.default.toBase58(),programId:$t.toBase58(),decimals:9,symbol:"SOL",name:"solana",logoURI:"https://img-v1.raydium.io/icon/So11111111111111111111111111111111111111112.png",tags:[],priority:2,type:"raydium",extensions:{coingeckoId:"solana"}},pe={chainId:101,address:"So11111111111111111111111111111111111111112",programId:$t.toBase58(),decimals:9,symbol:"WSOL",name:"Wrapped SOL",logoURI:"https://img-v1.raydium.io/icon/So11111111111111111111111111111111111111112.png",tags:[],priority:2,type:"raydium",extensions:{coingeckoId:"solana"}};import{PublicKey as yt}from"@solana/web3.js";import{PublicKey as O,SystemProgram as en,SYSVAR_RENT_PUBKEY as Di}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as Vi}from"@solana/spl-token";function bt({pubkey:e,isSigner:t=!1,isWritable:n=!0}){return{pubkey:e,isWritable:n,isSigner:t}}var Lo=[bt({pubkey:Vi,isWritable:!1}),bt({pubkey:en.programId,isWritable:!1}),bt({pubkey:Di,isWritable:!1})];function tn({publicKey:e,transformSol:t}){let n=nn(e.toString());if(n instanceof O)return t&&n.equals(Ce)?_e:n;if(t&&n.toString()===Ce.toBase58())return _e;if(typeof n=="string"){if(n===O.default.toBase58())return O.default;try{return new O(n)}catch{throw new Error("invalid public key")}}throw new Error("invalid public key")}function nn(e){try{return new O(e)}catch{return e}}var qi=new O("MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"),Qe=new O("MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"),Je=new O("SysvarRent111111111111111111111111111111111"),Mo=new O("SysvarC1ock11111111111111111111111111111111"),we=new O("metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),Oo=new O("Sysvar1nstructions1111111111111111111111111"),rn=en.programId,Fo=new O("4k3Dyjzvzp8eMZWUXbBCjEvwSkkk59S5iCNLY3QrkX6R"),Eo=new O("Ea5SjE2Y6yvCeW5dYTn7PYMuW5ikXkvbGdcmSnXeaLjS"),Wo=new O("SRMuApVNdxXokk5GT7XD5cUUgXMBCoAz2LHeuAoKWRt"),vo=new O("EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"),_o=new O("Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB"),Do=new O("mSoLzYCxHdYgdzU16g5QSh3i5K3z3KZK7ytfqcJm7So"),Vo=new O("7dHbWXmci3dT8UFYWYZweBLXgycu7Y3iL6trKn1Y7ARj"),qo=new O("USDH1SM1ojwWUga67PGrgFWUHibbjqMvuMaDkRJTgkX"),Go=new O("NRVwhjBQiUPYtfDT5zRBVJajzFQHaBUNtC7SNVvqRFa"),Uo=new O("ANAxByE6G2WjFp7A4NqtWYXb3mgruyzZYg3spfxe6Lbo"),Xo=new O("7vfCXTUXx5WJV5JADk17DUJ4ksgau7utNKj4b963voxs"),_e=new O("So11111111111111111111111111111111111111112"),Ce=O.default;var gt=class{constructor({mint:t,decimals:n,symbol:i,name:r,skipMint:o=!1,isToken2022:s=!1}){if(t===Ce.toBase58()||t instanceof yt&&Ce.equals(t)){this.decimals=pe.decimals,this.symbol=pe.symbol,this.name=pe.name,this.mint=new yt(pe.address),this.isToken2022=!1;return}this.decimals=n,this.symbol=i||t.toString().substring(0,6),this.name=r||t.toString().substring(0,6),this.mint=o?yt.default:tn({publicKey:t}),this.isToken2022=s}equals(t){return this===t?!0:this.mint.equals(t.mint)}},fe=gt;fe.WSOL=new gt(j(Z({},pe),{mint:pe.address}));var Pt=class{constructor({decimals:t,symbol:n="UNKNOWN",name:i="UNKNOWN"}){this.decimals=t,this.symbol=n,this.name=i}equals(t){return this===t}},$e=Pt;$e.SOL=new Pt(ft);import Gi from"bn.js";var is=new L(new Gi(100));var cs=v("Raydium_price");var Ui=new ne(0),Ws=new ne(1),vs=new ne(2),_s=new ne(3),Ds=new ne(5),vi=new ne(10),Vs=new ne(100),qs=new ne(1e3),Gs=new ne(1e4);import{PublicKey as Hi}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as zi}from"@solana/spl-token";import{ComputeBudgetProgram as Qs,Keypair as ea,PublicKey as Xi,Transaction as na,TransactionMessage as ra,VersionedTransaction as oa}from"@solana/web3.js";var ke={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",TransferTip:"TransferTip"};import{TOKEN_PROGRAM_ID as ca}from"@solana/spl-token";var la=v("Raydium_txUtil");function be(e,t){let[n,i]=Xi.findProgramAddressSync(e,t);return{publicKey:n,nonce:i}}function Ae(e,t,n){return be([e.toBuffer(),(n!=null?n:zi).toBuffer(),t.toBuffer()],new Hi("ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"))}import{PublicKey as g}from"@solana/web3.js";var ga=new g("EhhTKczWMGQt46ynNeRX1WfeagwwJd7ufHvCDjRxjo5Q"),Pa=new g("CBuCnLe26faBpcBP2fktp4rp8abpcAnTWft6ZrP5Q4T"),wa=new g("9KEPoZmtHUrBbhWN1v1KWLMkkvwY6WLtAVUCPRtRjP4z"),ka=new g("FarmqiPv5eAj3j1GMdMCMUGXqPUvmquZtMy86QH6rzhG"),Aa=new g("CLaimxFqjHzgTJtAGHU47NPhg6qrc5sCnpC4tBLyABQS"),Ta=new g("srmqPvymJeFKQ4zGQed1GFppgkRHL9kaELCbyksJtPX"),ha=new g("9xQeWvG816bUx9EPjHmaT23yvVM2ZWbrrpZb9PusVFin"),Ba=new g("675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8"),xa=new g("5quBtoiQqxF9Jv6KYKctB59NT3gtJD2Y65kdnB1Uev3h"),Ia=new g("CDSr3ssLcRB6XYPJwAfFt18MZvEZp4LjHcvzBVZ45duo"),Zi=new g("CAMMCzo5YL8w4VFF8KVHrK22GGUsp5VTaW7grrKgrWqK"),Yi=new g("LockrWmn6K5twhz3y9w1dQERbmgSaRkfnTeTKbpofwE"),ji=new g("kN1kEznaF5Xbd8LYuqtEFcxzWSBk5Fv6ygX6SqEGJVy"),Sa=new g("CDSr3ssLcRB6XYPJwAfFt18MZvEZp4LjHcvzBVZ45duo"),Ka=new g("routeUGWgWzqBWFcrCfv8tritsqukccJPu3q5GPP3xS"),Ca=new g("7YttLkHDoNj9wyDur5pM1ejNaAvT9X4eqaYcHQqtj2G5"),Na=new g("6FJon3QE27qgPVggARueB22hLvoh22VzJpXv4rBEoSLF"),Ra=new g("CC12se5To1CdEuw7fDS27B7Geo5jJyL7t5UK2B44NgiH"),La=new g("9HzJyW1qZsEiSfMUf6L2jo3CcTKAyBmSyKdwQeYisHrC"),Ma=new g("DropEU8AvevN3UrXWXTMuz3rqnMczQVNjq3kcSdW2SQi"),on=new g("CPMMoo8L3F4NbTegBCKVNunggL7H1ZpdTHKxQB5qKP1C"),sn=new g("GpMZbSM2GgvTKHJirzeGfMFoaZ8UR2X7F4v8vHTvxFbL"),Oa=new g("DNXgeM9EiiaAbaWvwjHj9fQQLAX5ZsfHyvmYUNRAdNC8"),Fa=new g("LockrWmn6K5twhz3y9w1dQERbmgSaRkfnTeTKbpofwE"),Ea=new g("3f7GcQFG397GAaEnv51zR6tsTVihYRydnydDD1cXekxH"),Wa=new g("LanMV9sAd7wArD4vJFi2qDdfnVhFxYSUg6eADduJ3uj"),va=new g("WLHv2UAZm6z4KyaaELi5pjdbJh6RESMva1Rnn8pJVVh"),_a=new g("DRay6fNdQ5J82H7xV6uq2aV3mNrUZ1J4PgSKsWgptcm6"),Da=new g("5xqNaZXX5eUi4p5HU4oz9i5QnwRNT2y6oN7yyn4qENeq"),Va=new g("4Bu96XjU84XjPDSpveTVf6LYGCkfW5FK7SNkREWcEfV4"),qa=new g("6s1xP3hpbAfFoNtUNF8mfHsjr2Bd97JxFJRWLbL6aHuX");var Ga={OPEN_BOOK_PROGRAM:new g("EoTcMgcDRTJVZDMZWBoU6rhYHZfkNTVEAfz3uUJRcYGj"),SERUM_PROGRAM_ID_V3:new g("Ray1111111111111111111111111111111111111111"),AMM_V4:new g("DRaya7Kj3aMWQSy19kSjvmuwq9docCHofyP9kanQGaav"),AMM_STABLE:new g("DRayDdXc1NZQ9C3hRWmoSf8zK4iapgMnjdNZWrfwsP8m"),CLMM_PROGRAM_ID:new g("DRayAUgENGQBKVaX8owNhgzkEDyoHTGVEGHVJT1E9pfH"),CLMM_LOCK_PROGRAM_ID:new g("DRay25Usp3YJAi7beckgpGUC7mGJ2cR1AVPxhYfwVCUX"),CLMM_LOCK_AUTH_ID:new g("6Aoh8h2Lw2m5UGxYR8AdAL87jTWYeKoxM52mJRzfYwN"),CREATE_CPMM_POOL_PROGRAM:new g("DRaycpLY18LhpbydsBWbVJtxpNv9oXPgjRSfpF2bWpYb"),CREATE_CPMM_POOL_AUTH:new g("CXniRufdq5xL8t8jZAPxsPZDpuudwuJSPWnbcD5Y5Nxq"),CREATE_CPMM_POOL_FEE_ACC:new g("3oE58BKVt8KuYkGxx8zBojugnymWmBiyafWgMrnb6eYy"),LOCK_CPMM_PROGRAM:new g("DRay25Usp3YJAi7beckgpGUC7mGJ2cR1AVPxhYfwVCUX"),LOCK_CPMM_AUTH:new g("7qWVV8UY2bRJfDLP4s37YzBPKUkVB46DStYJBpYbQzu3"),UTIL1216:g.default,Router:new g("DRaybByLpbUL57LJARs3j8BitTxVfzBg351EaMr5UTCd"),FARM_PROGRAM_ID_V3:new g("DRayWyrLmEW5KEeqs8kdTMMaBabapqagaBC7KWpGtJeZ"),FARM_PROGRAM_ID_V4:new g("Ray1111111111111111111111111111111111111111"),FARM_PROGRAM_ID_V5:new g("DRayiCGSZgku1GTK6rXD6mVDdingXy6APAH1R6R5L2LC"),FARM_PROGRAM_ID_V6:new g("DRayzbYakXs45ELHkzH6vC3fuhQqTAnv5A68gdFuvZyZ"),LAUNCHPAD_PROGRAM:new g("DRay6fNdQ5J82H7xV6uq2aV3mNrUZ1J4PgSKsWgptcm6"),LAUNCHPAD_AUTH:new g("5xqNaZXX5eUi4p5HU4oz9i5QnwRNT2y6oN7yyn4qENeq"),LAUNCHPAD_PLATFORM:new g("2Jx4KTDrVSdWNazuGpcA8n3ZLTRGGBDxAWhuKe2Xcj2a"),LAUNCHPAD_CONFIG:new g("7ZR4zD7PYfY2XxoG1Gxcy2EgEeGYrpxrwzPuwdUBssEt"),FEE_DESTINATION_ID:new g("9y8ENuuZ3b19quffx9hQvRVygG5ky6snHfRvGpuSfeJy"),MODEL_DATA_PUBKEY:new g("Ray1111111111111111111111111111111111111111")};import Ha from"bn.js";import{PublicKey as ja,AddressLookupTableAccount as Qa}from"@solana/web3.js";import{PublicKey as du,sendAndConfirmTransaction as pu,SystemProgram as yu,Transaction as gu,TransactionMessage as wu,VersionedTransaction as ku}from"@solana/web3.js";import Tu from"axios";import{PublicKey as Cu}from"@solana/web3.js";import Ru from"bn.js";import $i from"bn.js";var Eu=new $i(1e6);var rc=Buffer.from("vault_and_lp_mint_auth_seed","utf8"),oc=Buffer.from("amm_config","utf8"),er=Buffer.from("pool","utf8"),sc=Buffer.from("pool_lp_mint","utf8"),ac=Buffer.from("pool_vault","utf8"),uc=Buffer.from("observation","utf8"),cc=Buffer.from("permission","utf8");function un(e,t,n,i){return be([er,t.toBuffer(),n.toBuffer(),i.toBuffer()],e)}var tr=Buffer.from("locked_liquidity","utf8");function cn(e,t){return be([tr,t.toBuffer()],e)}import{PublicKey as lr}from"@solana/web3.js";import pn,{isBN as fn}from"bn.js";import{bits as dc,BitStructure as pc,blob as nr,Blob as fc,cstr as bc,f32 as yc,f32be as gc,f64 as Pc,f64be as wc,greedy as kc,Layout as ir,ns64 as Ac,ns64be as Tc,nu64 as hc,nu64be as Bc,offset as xc,s16 as Ic,s16be as Sc,s24 as Kc,s24be as Cc,s32 as rr,s32be as Nc,s40 as Rc,s40be as Lc,s48 as Mc,s48be as Oc,s8 as Fc,seq as or,struct as Ec,Structure as sr,u16 as ar,u16be as Wc,u24 as vc,u24be as _c,u32 as Dc,u32be as Vc,u40 as qc,u40be as Gc,u48 as Uc,u48be as Xc,u8 as ur,UInt as cr,union as Hc,Union as zc,unionLayoutDiscriminator as Zc,utf8 as Yc}from"@solana/buffer-layout";var At=ir,ln=sr;var Tt=cr;var mn=ur,Re=ar;var ie=rr;var dn=or;var X=nr;var Te=class extends At{constructor(n,i,r){super(n,r);this.blob=X(n),this.signed=i}decode(n,i=0){let r=new pn(this.blob.decode(n,i),10,"le");return this.signed?r.fromTwos(this.span*8).clone():r}encode(n,i,r=0){return typeof n=="number"&&(n=new pn(n)),this.signed&&(n=n.toTwos(this.span*8)),this.blob.encode(n.toArrayLike(Buffer,"le",this.span),i,r)}};function D(e){return new Tt(1,e)}function he(e){return new Tt(4,e)}function P(e){return new Te(8,!1,e)}function F(e){return new Te(16,!1,e)}function bn(e){return new Te(8,!0,e)}function yn(e){return new Te(16,!0,e)}var tt=class extends At{constructor(n,i,r,o){super(n.span,o);this.layout=n,this.decoder=i,this.encoder=r}decode(n,i){return this.decoder(this.layout.decode(n,i))}encode(n,i,r){return this.layout.encode(this.encoder(n),i,r)}getSpan(n,i){return this.layout.getSpan(n,i)}};function S(e){return new tt(X(32),t=>new lr(t),t=>t.toBuffer(),e)}function Le(e){return new tt(mn(),mr,dr,e)}function mr(e){if(e===0)return!1;if(e===1)return!0;throw new Error("Invalid bool: "+e)}function dr(e){return e?1:0}var ht=class extends ln{decode(t,n){return super.decode(t,n)}};function M(e,t,n){return new ht(e,t,n)}function E(e,t,n){let i,r=typeof t=="number"?t:fn(t)?t.toNumber():new Proxy(t,{get(o,s){if(!i){let a=Reflect.get(o,"count");i=fn(a)?a.toNumber():a,Reflect.set(o,"count",i)}return Reflect.get(o,s)},set(o,s,a){return s==="count"&&(i=a),Reflect.set(o,s,a)}});return dn(e,r,n)}import{PublicKey as up}from"@solana/web3.js";import lp from"bn.js";import{AccountLayout as fp,createAssociatedTokenAccountIdempotentInstruction as bp,TOKEN_2022_PROGRAM_ID as yp,TOKEN_PROGRAM_ID as gp}from"@solana/spl-token";import{PublicKey as ll}from"@solana/web3.js";import{MintLayout as dl,TOKEN_PROGRAM_ID as fl}from"@solana/spl-token";import{Keypair as Rd,PublicKey as Ld,SystemProgram as Od,TransactionInstruction as Fd}from"@solana/web3.js";import Wd from"bn.js";import{ASSOCIATED_TOKEN_PROGRAM_ID as Dd,TOKEN_2022_PROGRAM_ID as Vd,TOKEN_PROGRAM_ID as qd}from"@solana/spl-token";import md from"bn.js";import H from"bn.js";var Bt=new H(0),gn=new H(1),Pn=new H(-1),nt=new H(1).shln(64),wn=new H(1).shln(128),pr=nt.sub(gn);var fr=wn.subn(1),Be=-443636,Me=-Be,xt=new H("4295048016"),It=new H("79226673521066979257578248091"),Il=new H("4295048017"),Sl=new H("79226673521066979257578248090");var br=new H(10).pow(new H(6));var Kl=new H("18446744073700000000");import Qm from"bn.js";var Fl=Buffer.from("amm_config","utf8"),El=Buffer.from("pool","utf8"),Wl=Buffer.from("pool_vault","utf8"),vl=Buffer.from("pool_reward_vault","utf8"),_l=Bu