snapper-sdk
Version:
An SDK for building applications on top of Snapper.
1 lines • 51.3 kB
JavaScript
import{Keypair as hr,PublicKey as Vt}from"@solana/web3.js";import br from"bn.js";import{PublicKey as Sr}from"@solana/web3.js";import{get as nt,set as Ut}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}},rt={},Wt={};function _(e){let t=nt(rt,e);if(!t){let n=nt(Wt,e);t=new Re({name:e,logLevel:n}),Ut(rt,e,t)}return t}import{MINT_SIZE as Er,TOKEN_PROGRAM_ID as Mr,getTransferFeeConfig as Ir,unpackMint as Rr}from"@solana/spl-token";var Dr=_("Raydium_accountInfo_util");import j from"bn.js";var ee=9e15,X=1e9,_e="0123456789abcdef",ge="2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058",he="3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789",Oe={precision:20,rounding:4,modulo:1,toExpNeg:-7,toExpPos:21,minE:-ee,maxE:ee,crypto:!1},at,G,y=!0,ye="[DecimalError] ",Z=ye+"Invalid argument: ",ut=ye+"Precision limit exceeded",ct=ye+"crypto unavailable",lt="[object Decimal]",R=Math.floor,N=Math.pow,qt=/^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i,Gt=/^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i,Ht=/^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i,ft=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,V=1e7,h=7,jt=9007199254740991,zt=ge.length-1,Fe=he.length-1,m={toStringTag:lt};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(Z+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=Yt(r,ht(r,n)),r.precision=e,r.rounding=t,g(G==2||G==3?n.neg():n,e,t,!0)):new r(1):new r(NaN)};m.cubeRoot=m.cbrt=function(){var e,t,n,r,i,o,s,a,c,u,l=this,f=l.constructor;if(!l.isFinite()||l.isZero())return new f(l);for(y=!1,o=l.s*N(l.s*l,1/3),!o||Math.abs(o)==1/0?(n=E(l.d),e=l.e,(o=(e-n.length+1)%3)&&(n+=o==1||o==-2?"0":"00"),o=N(n,1/3),e=R((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=B(u.plus(l).times(a),u.plus(c),s+2,1),E(a.d).slice(0,s)===(n=E(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 y=!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-R(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 B(this,new this.constructor(e))};m.dividedToIntegerBy=m.divToInt=function(e){var t=this,n=t.constructor;return g(B(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/xe(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/xe(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,B(n.sinh(),n.cosh(),r.precision=e,r.rounding=t)):new r(n.s)};m.inverseCosine=m.acos=function(){var e,t=this,n=t.constructor,r=t.abs().cmp(1),i=n.precision,o=n.rounding;return r!==-1?r===0?t.isNeg()?K(n,i,o):new n(0):new n(NaN):t.isZero()?K(n,i+4,o).times(.5):(n.precision=i+6,n.rounding=1,t=t.asin(),e=K(n,i+4,o).times(.5),n.precision=i,n.rounding=o,e.minus(t))};m.inverseHyperbolicCosine=m.acosh=function(){var e,t,n=this,r=n.constructor;return n.lte(1)?new r(n.eq(1)?0:NaN):n.isFinite()?(e=r.precision,t=r.rounding,r.precision=e+Math.max(Math.abs(n.e),n.sd())+4,r.rounding=1,y=!1,n=n.times(n).minus(1).sqrt().plus(n),y=!0,r.precision=e,r.rounding=t,n.ln()):new r(n)};m.inverseHyperbolicSine=m.asinh=function(){var e,t,n=this,r=n.constructor;return!n.isFinite()||n.isZero()?new r(n):(e=r.precision,t=r.rounding,r.precision=e+2*Math.max(Math.abs(n.e),n.sd())+6,r.rounding=1,y=!1,n=n.times(n).plus(1).sqrt().plus(n),y=!0,r.precision=e,r.rounding=t,n.ln())};m.inverseHyperbolicTangent=m.atanh=function(){var e,t,n,r,i=this,o=i.constructor;return i.isFinite()?i.e>=0?new o(i.abs().eq(1)?i.s/0:i.isZero()?i:NaN):(e=o.precision,t=o.rounding,r=i.sd(),Math.max(r,e)<2*-i.e-1?g(new o(i),e,t,!0):(o.precision=n=r-i.e,i=B(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=K(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<=Fe)return s=K(l,f+4,p).times(.25),s.s=u.s,s}else{if(!u.s)return new l(NaN);if(f+4<=Fe)return s=K(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(y=!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)),y=!0,g(s,l.precision=f,l.rounding=p,!0)};m.isFinite=function(){return!!this.d};m.isInteger=m.isInt=function(){return!!this.d&&R(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(y=!1,a=f+d,s=Y(u,a),r=t?be(l,a+10):Y(e,a),c=B(s,r,a,1),ie(c.d,i=f,p))do if(a+=10,s=Y(u,a),r=t?be(l,a+10):Y(e,a),c=B(s,r,a,1),!o){+E(c.d).slice(i+1,i+15)+1==1e14&&(c=g(c,f+1,0));break}while(ie(c.d,i+=10,p));return y=!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,x=d.constructor;if(e=new x(e),!d.d||!e.d)return!d.s||!e.s?e=new x(NaN):d.d?e.s=-e.s:e=new x(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=x.precision,c=x.rounding,!u[0]||!p[0]){if(p[0])e.s=-e.s;else if(u[0])e=new x(d);else return new x(c===3?-0:0);return y?g(e,a,c):e}if(n=R(e.e/h),l=R(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]=V-1;--u[i],u[r]+=V}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=we(u,n),y?g(e,a,c):e):new x(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):(y=!1,r.modulo==9?(t=B(n,e.abs(),0,3,1),t.s*=e.s):t=B(n,e,0,r.modulo,1),t=t.times(e),y=!0,n.minus(t))};m.naturalExponential=m.exp=function(){return ve(this)};m.naturalLogarithm=m.ln=function(){return Y(this)};m.negated=m.neg=function(){var e=new this.constructor(this);return e.s=-e.s,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)),y?g(e,a,c):e;if(o=R(f.e/h),r=R(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)/V|0,u[i]%=V;for(t&&(u.unshift(t),++r),s=u.length;u[--s]==0;)u.pop();return e.d=u,e.e=we(u,r),y?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(Z+e);return n.d?(t=pt(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=Xt(r,ht(r,n)),r.precision=e,r.rounding=t,g(G>2?n.neg():n,e,t,!0)):new r(NaN)};m.squareRoot=m.sqrt=function(){var e,t,n,r,i,o,s=this,a=s.d,c=s.e,u=s.s,l=s.constructor;if(u!==1||!a||!a[0])return new l(!u||u<0&&(!a||a[0])?NaN:a?s:1/0);for(y=!1,u=Math.sqrt(+s),u==0||u==1/0?(t=E(a),(t.length+c)%2==0&&(t+="0"),u=Math.sqrt(t),c=R((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(B(s,o,n+2,1)).times(.5),E(o.d).slice(0,n)===(t=E(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 y=!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=B(n,new r(1).minus(n.times(n)).sqrt(),e+10,0),r.precision=e,r.rounding=t,g(G==2||G==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=R(l.e/h)+R(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%V|0,t=a/V|0;o[i]=(o[i]+t)%V|0}for(;!o[--s];)o.pop();return t?++n:o.shift(),e.d=o,e.e=we(o,n),y?g(e,f.precision,f.rounding):e};m.toBinary=function(e,t){return Ve(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:(O(e,0,X),t===void 0?t=r.rounding:O(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):(O(e,0,X),t===void 0?t=i.rounding:O(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):(O(e,0,X),t===void 0?t=o.rounding:O(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,x=d.d,b=d.constructor;if(!x)return new b(d);if(u=n=new b(1),r=c=new b(0),t=new b(r),o=t.e=pt(x)-d.e-1,s=o%h,t.d[0]=N(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(Z+a);e=a.gt(t)?o>0?t:u:a}for(y=!1,a=new b(E(x)),l=b.precision,b.precision=o=x.length*h*2;f=B(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=B(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=B(u,r,o,1).minus(d).abs().cmp(B(c,n,o,1).minus(d).abs())<1?[u,r]:[c,n],b.precision=l,y=!0,p};m.toHexadecimal=m.toHex=function(e,t){return Ve(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:O(t,0,8),!n.d)return e.s?n:e;if(!e.d)return e.s&&(e.s=n.s),e}return e.d[0]?(y=!1,n=B(n,e,0,t,1).times(e),y=!0,g(n)):(e.s=n.s,n=e),n};m.toNumber=function(){return+this};m.toOctal=function(e,t){return Ve(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(N(+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=R(e.e/h),t>=e.d.length-1&&(n=u<0?-u:u)<=jt)return i=mt(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=N(+a,u),t=n==0||!isFinite(n)?R(u*(Math.log("0."+E(a.d))/Math.LN10+a.e+1)):new c(n+"").e,t>c.maxE+1||t<c.minE-1?new c(t>0?s/0:0):(y=!1,c.rounding=a.s=1,n=Math.min(12,(t+"").length),i=ve(e.times(Y(a,r+n)),r),i.d&&(i=g(i,r+5,1),ie(i.d,r,o)&&(t=r+10,i=g(ve(e.times(Y(a,t+n)),t),t+5,1),+E(i.d).slice(r+1,r+15)+1==1e14&&(i=g(i,r+1,0)))),i.s=s,y=!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):(O(e,1,X),t===void 0?t=i.rounding:O(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):(O(e,1,X),t===void 0?t=r.rounding:O(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 E(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+=z(n)),o+=r;s=e[t],r=s+"",n=h-r.length,n&&(o+=z(n))}else if(s===0)return"0";for(;s%10===0;)s/=10;return o+s}function O(e,t,n){if(e!==~~e||e<t||e>n)throw Error(Z+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=N(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)==N(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)==N(10,t-3)-1,s}function de(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]+=_e.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 Yt(e,t){var n,r,i;if(t.isZero())return t;r=t.d.length,r<32?(n=Math.ceil(r/3),i=(1/xe(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 B=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,x,b,D,C,F,A,M,le,q,Ee,fe,re,Me,v,pe,me=r.constructor,Ie=r.s==i.s?1:-1,I=r.d,L=i.d;if(!I||!I[0]||!L||!L[0])return new me(!r.s||!i.s||(I?L&&I[0]==L[0]:!L)?NaN:I&&I[0]==0||!L?Ie*0:Ie/0);for(c?(d=1,l=r.e-i.e):(c=V,d=h,l=R(r.e/d)-R(i.e/d)),v=L.length,re=I.length,C=new me(Ie),F=C.d=[],f=0;L[f]==(I[f]||0);f++);if(L[f]>(I[f]||0)&&l--,o==null?(q=o=me.precision,s=me.rounding):a?q=o+(r.e-i.e)+1:q=o,q<0)F.push(1),x=!0;else{if(q=q/d+2|0,f=0,v==1){for(p=0,L=L[0],q++;(f<re||p)&&q--;f++)Ee=p*c+(I[f]||0),F[f]=Ee/L|0,p=Ee%L|0;x=p||f<re}else{for(p=c/(L[0]+1)|0,p>1&&(L=e(L,p,c),I=e(I,p,c),v=L.length,re=I.length),fe=v,A=I.slice(0,v),M=A.length;M<v;)A[M++]=0;pe=L.slice(),pe.unshift(0),Me=L[0],L[1]>=c/2&&++Me;do p=0,u=t(L,A,v,M),u<0?(le=A[0],v!=M&&(le=le*c+(A[1]||0)),p=le/Me|0,p>1?(p>=c&&(p=c-1),b=e(L,p,c),D=b.length,M=A.length,u=t(b,A,D,M),u==1&&(p--,n(b,v<D?pe:L,D,c))):(p==0&&(u=p=1),b=L.slice()),D=b.length,D<M&&b.unshift(0),n(A,b,M,c),u==-1&&(M=A.length,u=t(L,A,v,M),u<1&&(p++,n(A,v<M?pe:L,M,c))),M=A.length):u===0&&(p++,A=[0]),F[f++]=p,u&&A[0]?A[M++]=I[fe]||0:(A=[I[fe]],M=1);while((fe++<re||A[0]!==void 0)&&q--);x=A[0]!==void 0}F[0]||F.shift()}if(d==1)C.e=l,at=x;else{for(f=1,p=F[0];p>=10;p/=10)f++;C.e=f+l*d-1,g(C,a?o+C.e+1:o,s,x)}return C}}();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/N(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/N(10,i-s-1)%10|0}if(r=r||t<0||f[p+1]!==void 0||(s<0?l:l%N(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/N(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]=N(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=N(10,h-o),f[p]=s>0?(l/N(10,i-s)%N(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]==V&&(f[0]=1));break}else{if(f[p]+=a,f[p]!=V)break;f[p--]=0,a=1}for(o=f.length;f[--o]===0;)f.pop()}return y&&(e.e>d.maxE?(e.d=null,e.e=NaN):e.e<d.minE&&(e.e=0,e.d=[0])),e}function W(e,t,n){if(!e.isFinite())return gt(e);var r,i=e.e,o=E(e.d),s=o.length;return t?(n&&(r=n-s)>0?o=o.charAt(0)+"."+o.slice(1)+z(r):s>1&&(o=o.charAt(0)+"."+o.slice(1)),o=o+(e.e<0?"e":"e+")+e.e):i<0?(o="0."+z(-i-1)+o,n&&(r=n-s)>0&&(o+=z(r))):i>=s?(o+=z(i+1-s),n&&(r=n-i-1)>0&&(o=o+"."+z(r))):((r=i+1)<s&&(o=o.slice(0,r)+"."+o.slice(r)),n&&(r=n-s)>0&&(i+1===s&&(o+="."),o+=z(r))),o}function we(e,t){var n=e[0];for(t*=h;n>=10;n/=10)t++;return t}function be(e,t,n){if(t>zt)throw y=!0,n&&(e.precision=n),Error(ut);return g(new e(ge),t,1,!0)}function K(e,t,n){if(t>Fe)throw Error(ut);return g(new e(he),t,n,!0)}function pt(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 z(e){for(var t="";e--;)t+="0";return t}function mt(e,t,n,r){var i,o=new e(1),s=Math.ceil(r/h+4);for(y=!1;;){if(n%2&&(o=o.times(t),ot(o.d,s)&&(i=!0)),n=R(n/2),n===0){n=o.d.length-1,i&&o.d[n]===0&&++o.d[n];break}t=t.times(t),ot(t.d,s)}return y=!0,o}function it(e){return e.d[e.d.length-1]&1}function dt(e,t,n){for(var r,i=new e(t[0]),o=0;++o<t.length;)if(r=new e(t[o]),r.s)i[n](r)&&(i=r);else{i=r;break}return i}function ve(e,t){var n,r,i,o,s,a,c,u=0,l=0,f=0,p=e.constructor,d=p.rounding,x=p.precision;if(!e.d||!e.d[0]||e.e>17)return new p(e.d?e.d[0]?e.s<0?0:1/0:1:e.s?e.s<0?0:e:0/0);for(t==null?(y=!1,c=x):c=t,a=new p(.03125);e.e>-2;)e=e.times(a),f+=5;for(r=Math.log(N(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(B(o,n,c,1)),E(a.d).slice(0,c)===E(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=x,d,y=!0);else return p.precision=x,s}s=a}}function Y(e,t){var n,r,i,o,s,a,c,u,l,f,p,d=1,x=10,b=e,D=b.d,C=b.constructor,F=C.rounding,A=C.precision;if(b.s<0||!D||!D[0]||!b.e&&D[0]==1&&D.length==1)return new C(D&&!D[0]?-1/0:b.s!=1?NaN:D?0:b);if(t==null?(y=!1,l=A):l=t,C.precision=l+=x,n=E(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=E(b.d),r=n.charAt(0),d++;o=b.e,r>1?(b=new C("0."+n),o++):b=new C(r+"."+n.slice(1))}else return u=be(C,l+2,A).times(o+""),b=Y(new C(r+"."+n.slice(1)),l-x).plus(u),C.precision=A,t==null?g(b,A,F,y=!0):b;for(f=b,c=s=b=B(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(B(s,new C(i),l,1)),E(u.d).slice(0,l)===E(c.d).slice(0,l))if(c=c.times(2),o!==0&&(c=c.plus(be(C,l+2,A).times(o+""))),c=B(c,new C(d),l,1),t==null)if(ie(c.d,l-x,F,a))C.precision=l+=x,u=s=b=B(f.minus(1),f.plus(1),l,1),p=g(b.times(b),l,1),i=a=1;else return g(c,C.precision=A,F,y=!0);else return C.precision=A,c;c=u,i+=2}}function gt(e){return String(e.s*e.s/0)}function Ke(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),y&&(e.e>e.constructor.maxE?(e.d=null,e.e=NaN):e.e<e.constructor.minE&&(e.e=0,e.d=[0]))}else e.e=0,e.d=[0];return e}function Zt(e,t){var n,r,i,o,s,a,c,u,l;if(t.indexOf("_")>-1){if(t=t.replace(/(\d)_(?=\d)/g,"$1"),ft.test(t))return Ke(e,t)}else if(t==="Infinity"||t==="NaN")return+t||(e.s=NaN),e.e=NaN,e.d=null,e;if(Gt.test(t))n=16,t=t.toLowerCase();else if(qt.test(t))n=2;else if(Ht.test(t))n=8;else throw Error(Z+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=mt(r,new r(n),o,o*2)),u=de(t,n,V),l=u.length-1,o=l;u[o]===0;--o)u.pop();return o<0?new r(e.s*0):(e.e=we(u,l),e.d=u,y=!1,s&&(e=B(e,i,a*4)),c&&(e=e.times(Math.abs(c)<54?N(2,c):Te.pow(2,c))),y=!0,e)}function Xt(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/xe(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(y=!1,c=n.times(n),a=new e(r);;){if(s=B(a.times(c),new e(t++*t++),l,1),a=i?r.plus(s):r.minus(s),r=B(s.times(c),new e(t++*t++),l,1),s=a.plus(r),s.d[f]!==void 0){for(o=f;s.d[o]===a.d[o]&&o--;);if(o==-1)break}o=a,a=r,r=s,s=o,u++}return y=!0,s.d.length=f+1,s}function xe(e,t){for(var n=e;--t;)n*=e;return n}function ht(e,t){var n,r=t.s<0,i=K(e,e.precision,1),o=i.times(.5);if(t=t.abs(),t.lte(o))return G=r?4:1,t;if(n=t.divToInt(i),n.isZero())G=r?3:2;else{if(t=t.minus(n.times(i)),t.lte(o))return G=it(n)?r?2:3:r?4:1,t;G=it(n)?r?1:4:r?3:2}return t.minus(i).abs()}function Ve(e,t,n,r){var i,o,s,a,c,u,l,f,p,d=e.constructor,x=n!==void 0;if(x?(O(n,1,X),r===void 0?r=d.rounding:O(r,0,8)):(n=d.precision,r=d.rounding),!e.isFinite())l=gt(e);else{for(l=W(e),s=l.indexOf("."),x?(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=de(W(p),10,i),p.e=p.d.length),f=de(l,10,i),o=c=f.length;f[--c]==0;)f.pop();if(!f[0])l=x?"0p+0":"0";else{if(s<0?o--:(e=new d(e),e.d=f,e.e=o,e=B(e,p,n,r,0,i),f=e.d,o=e.e,u=at),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+=_e.charAt(f[s]);if(x){if(c>1)if(t==16||t==8){for(s=t==16?4:3,--c;c%s;c++)l+="0";for(f=de(l,i,t),c=f.length;!f[c-1];--c);for(s=1,l="1.";s<c;s++)l+=_e.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 ot(e,t){if(e.length>t)return e.length=t,!0}function Qt(e){return new this(e).abs()}function Jt(e){return new this(e).acos()}function $t(e){return new this(e).acosh()}function en(e,t){return new this(e).plus(t)}function tn(e){return new this(e).asin()}function nn(e){return new this(e).asinh()}function rn(e){return new this(e).atan()}function on(e){return new this(e).atanh()}function sn(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=K(this,o,1).times(t.s>0?.25:.75),n.s=e.s):!t.d||e.isZero()?(n=t.s<0?K(this,r,i):new this(0),n.s=e.s):!e.d||t.isZero()?(n=K(this,o,1).times(.5),n.s=e.s):t.s<0?(this.precision=o,this.rounding=1,n=this.atan(B(e,t,o,1)),t=K(this,o,1),this.precision=r,this.rounding=i,n=e.s<0?n.minus(t):n.plus(t)):n=this.atan(B(e,t,o,1)),n}function an(e){return new this(e).cbrt()}function un(e){return g(e=new this(e),e.e+1,2)}function cn(e,t,n){return new this(e).clamp(t,n)}function ln(e){if(!e||typeof e!="object")throw Error(ye+"Object expected");var t,n,r,i=e.defaults===!0,o=["precision",1,X,"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]=Oe[n]),(r=e[n])!==void 0)if(R(r)===r&&r>=o[t+1]&&r<=o[t+2])this[n]=r;else throw Error(Z+n+": "+r);if(n="crypto",i&&(this[n]=Oe[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(ct);else this[n]=!1;else throw Error(Z+n+": "+r);return this}function fn(e){return new this(e).cos()}function pn(e){return new this(e).cosh()}function bt(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,st(o)){u.s=o.s,y?!o.d||o.e>i.maxE?(u.e=NaN,u.d=null):o.e<i.minE?(u.e=0,u.d=[0]):(u.e=o.e,u.d=o.d.slice()):(u.e=o.e,u.d=o.d?o.d.slice():o.d);return}if(c=typeof o,c==="number"){if(o===0){u.s=1/o<0?-1:1,u.e=0,u.d=[0];return}if(o<0?(o=-o,u.s=-1):u.s=1,o===~~o&&o<1e7){for(s=0,a=o;a>=10;a/=10)s++;y?s>i.maxE?(u.e=NaN,u.d=null):s<i.minE?(u.e=0,u.d=[0]):(u.e=s,u.d=[o]):(u.e=s,u.d=[o]);return}else if(o*0!==0){o||(u.s=NaN),u.e=NaN,u.d=null;return}return Ke(u,o.toString())}else if(c!=="string")throw Error(Z+o);return(a=o.charCodeAt(0))===45?(o=o.slice(1),u.s=-1):(a===43&&(o=o.slice(1)),u.s=1),ft.test(o)?Ke(u,o):Zt(u,o)}if(i.prototype=m,i.ROUND_UP=0,i.ROUND_DOWN=1,i.ROUND_CEIL=2,i.ROUND_FLOOR=3,i.ROUND_HALF_UP=4,i.ROUND_HALF_DOWN=5,i.ROUND_HALF_EVEN=6,i.ROUND_HALF_CEIL=7,i.ROUND_HALF_FLOOR=8,i.EUCLID=9,i.config=i.set=ln,i.clone=bt,i.isDecimal=st,i.abs=Qt,i.acos=Jt,i.acosh=$t,i.add=en,i.asin=tn,i.asinh=nn,i.atan=rn,i.atanh=on,i.atan2=sn,i.cbrt=an,i.ceil=un,i.clamp=cn,i.cos=fn,i.cosh=pn,i.div=mn,i.exp=dn,i.floor=gn,i.hypot=hn,i.ln=bn,i.log=yn,i.log10=xn,i.log2=wn,i.max=Tn,i.min=Pn,i.mod=An,i.mul=Bn,i.pow=Ln,i.random=Sn,i.round=kn,i.sign=Cn,i.sin=Nn,i.sinh=En,i.sqrt=Mn,i.sub=In,i.sum=Rn,i.tan=Dn,i.tanh=_n,i.trunc=On,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 mn(e,t){return new this(e).div(t)}function dn(e){return new this(e).exp()}function gn(e){return g(e=new this(e),e.e+1,3)}function hn(){var e,t,n=new this(0);for(y=!1,e=0;e<arguments.length;)if(t=new this(arguments[e++]),t.d)n.d&&(n=n.plus(t.times(t)));else{if(t.s)return y=!0,new this(1/0);n=t}return y=!0,n.sqrt()}function st(e){return e instanceof Te||e&&e.toStringTag===lt||!1}function bn(e){return new this(e).ln()}function yn(e,t){return new this(e).log(t)}function wn(e){return new this(e).log(2)}function xn(e){return new this(e).log(10)}function Tn(){return dt(this,arguments,"lt")}function Pn(){return dt(this,arguments,"gt")}function An(e,t){return new this(e).mod(t)}function Bn(e,t){return new this(e).mul(t)}function Ln(e,t){return new this(e).pow(t)}function Sn(e){var t,n,r,i,o=0,s=new this(1),a=[];if(e===void 0?e=this.precision:O(e,1,X),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(ct);else for(;o<r;)a[o++]=Math.random()*1e7|0;for(r=a[--o],e%=h,r&&e&&(i=N(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 kn(e){return g(e=new this(e),e.e+1,this.rounding)}function Cn(e){return e=new this(e),e.d?e.d[0]?e.s:0*e.s:e.s||NaN}function Nn(e){return new this(e).sin()}function En(e){return new this(e).sinh()}function Mn(e){return new this(e).sqrt()}function In(e,t){return new this(e).sub(t)}function Rn(){var e=0,t=arguments,n=new this(t[e]);for(y=!1;n.s&&++e<t.length;)n=n.plus(t[e]);return y=!0,g(n,this.precision,this.rounding)}function Dn(e){return new this(e).tan()}function _n(e){return new this(e).tanh()}function On(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 Te=m.constructor=bt(Oe);ge=new Te(ge);he=new Te(he);import Gn from"big.js";import ei from"bn.js";import Fn from"toformat";var vn=Fn,oe=vn;import Ae from"big.js";import Vn from"bn.js";import Un from"decimal.js-light";import se from"bn.js";var yt=9007199254740991;function H(e){let t=_("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>=yt||e<=-yt)&&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 Pe=_("module/fraction"),Ue=oe(Ae),ae=oe(Un),Wn={[0]:ae.ROUND_DOWN,[1]:ae.ROUND_HALF_UP,[2]:ae.ROUND_UP},qn={[0]:Ae.roundDown,[1]:Ae.roundHalfUp,[2]:Ae.roundUp},S=class{constructor(t,n=new Vn(1)){this.numerator=H(t),this.denominator=H(n)}get quotient(){return this.numerator.div(this.denominator)}invert(){return new S(this.denominator,this.numerator)}add(t){let n=t instanceof S?t:new S(H(t));return this.denominator.eq(n.denominator)?new S(this.numerator.add(n.numerator),this.denominator):new S(this.numerator.mul(n.denominator).add(n.numerator.mul(this.denominator)),this.denominator.mul(n.denominator))}sub(t){let n=t instanceof S?t:new S(H(t));return this.denominator.eq(n.denominator)?new S(this.numerator.sub(n.numerator),this.denominator):new S(this.numerator.mul(n.denominator).sub(n.numerator.mul(this.denominator)),this.denominator.mul(n.denominator))}mul(t){let n=t instanceof S?t:new S(H(t));return new S(this.numerator.mul(n.numerator),this.denominator.mul(n.denominator))}div(t){let n=t instanceof S?t:new S(H(t));return new S(this.numerator.mul(n.denominator),this.denominator.mul(n.numerator))}toSignificant(t,n={groupSeparator:""},r=1){Number.isInteger(t)||Pe.logWithError(`${t} is not an integer.`),t<=0&&Pe.logWithError(`${t} is not positive.`),ae.set({precision:t+1,rounding:Wn[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)||Pe.logWithError(`${t} is not an integer.`),t<0&&Pe.logWithError(`${t} is negative.`),Ue.DP=t,Ue.RM=qn[r]||1,new Ue(this.numerator.toString()).div(this.denominator.toString()).toFormat(t,n)}isZero(){return this.numerator.isZero()}};var ci=_("Raydium_amount"),li=oe(Gn);import{PublicKey as jn}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as wt}from"@solana/spl-token";var xt={chainId:101,address:jn.default.toBase58(),programId:wt.toBase58(),decimals:9,symbol:"SOL",name:"solana",logoURI:"https://img.raydium.io/icon/So11111111111111111111111111111111111111112.png",tags:[],priority:2,type:"raydium",extensions:{coingeckoId:"solana"}},$={chainId:101,address:"So11111111111111111111111111111111111111112",programId:wt.toBase58(),decimals:9,symbol:"WSOL",name:"Wrapped SOL",logoURI:"https://img.raydium.io/icon/So11111111111111111111111111111111111111112.png",tags:[],priority:2,type:"raydium",extensions:{coingeckoId:"solana"}};import{PublicKey as qe}from"@solana/web3.js";import{PublicKey as k,SystemProgram as Tt,SYSVAR_RENT_PUBKEY as zn}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as Yn}from"@solana/spl-token";function We({pubkey:e,isSigner:t=!1,isWritable:n=!0}){return{pubkey:e,isWritable:n,isSigner:t}}var yi=[We({pubkey:Yn,isWritable:!1}),We({pubkey:Tt.programId,isWritable:!1}),We({pubkey:zn,isWritable:!1})];function Pt({publicKey:e,transformSol:t}){let n=At(e.toString());if(n instanceof k)return t&&n.equals(ue)?De:n;if(t&&n.toString()===ue.toBase58())return De;if(typeof n=="string"){if(n===k.default.toBase58())return k.default;try{return new k(n)}catch{throw new Error("invalid public key")}}throw new Error("invalid public key")}function At(e){try{return new k(e)}catch{return e}}var wi=new k("MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"),xi=new k("MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"),Ti=new k("SysvarRent111111111111111111111111111111111"),Pi=new k("SysvarC1ock11111111111111111111111111111111"),Ai=new k("metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),Bi=new k("Sysvar1nstructions1111111111111111111111111"),Li=Tt.programId,Si=new k("2cpMA1jNS4obgRz8XNg38QuSP83L1AXpUgfxPNcvnAGj"),ki=new k("Ea5SjE2Y6yvCeW5dYTn7PYMuW5ikXkvbGdcmSnXeaLjS"),Ci=new k("SRMuApVNdxXokk5GT7XD5cUUgXMBCoAz2LHeuAoKWRt"),Ni=new k("EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"),Ei=new k("Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB"),Mi=new k("mSoLzYCxHdYgdzU16g5QSh3i5K3z3KZK7ytfqcJm7So"),Ii=new k("7dHbWXmci3dT8UFYWYZweBLXgycu7Y3iL6trKn1Y7ARj"),Ri=new k("USDH1SM1ojwWUga67PGrgFWUHibbjqMvuMaDkRJTgkX"),Di=new k("NRVwhjBQiUPYtfDT5zRBVJajzFQHaBUNtC7SNVvqRFa"),_i=new k("ANAxByE6G2WjFp7A4NqtWYXb3mgruyzZYg3spfxe6Lbo"),Oi=new k("7vfCXTUXx5WJV5JADk17DUJ4ksgau7utNKj4b963voxs"),De=new k("So11111111111111111111111111111111111111112"),ue=k.default;var Ge=class{constructor({mint:t,decimals:n,symbol:r,name:i,skipMint:o=!1,isToken2022:s=!1}){if(t===ue.toBase58()||t instanceof qe&&ue.equals(t)){this.decimals=$.decimals,this.symbol=$.symbol,this.name=$.name,this.mint=new qe($.address),this.isToken2022=!1;return}this.decimals=n,this.symbol=r||t.toString().substring(0,6),this.name=i||t.toString().substring(0,6),this.mint=o?qe.default:Pt({publicKey:t}),this.isToken2022=s}equals(t){return this===t?!0:this.mint.equals(t.mint)}},ne=Ge;ne.WSOL=new Ge({...$,mint:$.address});var He=class{constructor({decimals:t,symbol:n="UNKNOWN",name:r="UNKNOWN"}){this.decimals=t,this.symbol=n,this.name=r}equals(t){return this===t}},Be=He;Be.SOL=new He(xt);import Zn from"bn.js";var Yi=new S(new Zn(100));var eo=_("Raydium_price");import{PublicKey as yo}from"@solana/web3.js";import xo from"bn.js";var Xn=new j(0),Ko=new j(1),Vo=new j(2),Uo=new j(3),Wo=new j(5),Hn=new j(10),qo=new j(100),Go=new j(1e3),Ho=new j(1e4);import{PublicKey as Jn}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as $n}from"@solana/spl-token";import{ComputeBudgetProgram as es,Keypair as rs,PublicKey as Qn,Transaction as os,TransactionMessage as as,VersionedTransaction as us}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as ps}from"@solana/spl-token";var ms=_("Raydium_txUtil");function kt(e,t){let[n,r]=Qn.findProgramAddressSync(e,t);return{publicKey:n,nonce:r}}function Ct(e,t,n){return kt([e.toBuffer(),(n!=null?n:$n).toBuffer(),t.toBuffer()],new Jn("ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"))}import{PublicKey as w}from"@solana/web3.js";var xs=new w("EhhTKczWMGQt46ynNeRX1WfeagwwJd7ufHvCDjRxjo5Q"),Ts=new w("9KEPoZmtHUrBbhWN1v1KWLMkkvwY6WLtAVUCPRtRjP4z"),Ps=new w("FarmqiPv5eAj3j1GMdMCMUGXqPUvmquZtMy86QH6rzhG"),As=new w("CLaimxFqjHzgTJtAGHU47NPhg6qrc5sCnpC4tBLyABQS"),Bs=new w("srmqPvymJeFKQ4zGQed1GFppgkRHL9kaELCbyksJtPX"),Ls=new w("9xQeWvG816bUx9EPjHmaT23yvVM2ZWbrrpZb9PusVFin"),Ss=new w("675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8"),ks=new w("5quBtoiQqxF9Jv6KYKctB59NT3gtJD2Y65kdnB1Uev3h"),Cs=new w("CDSr3ssLcRB6XYPJwAfFt18MZvEZp4LjHcvzBVZ45duo"),Ns=new w("CAMMCzo5YL8w4VFF8KVHrK22GGUsp5VTaW7grrKgrWqK"),Es=new w("LockrWmn6K5twhz3y9w1dQERbmgSaRkfnTeTKbpofwE"),Ms=new w("kN1kEznaF5Xbd8LYuqtEFcxzWSBk5Fv6ygX6SqEGJVy"),Is=new w("routeUGWgWzqBWFcrCfv8tritsqukccJPu3q5GPP3xS"),Rs=new w("7YttLkHDoNj9wyDur5pM1ejNaAvT9X4eqaYcHQqtj2G5"),Ds=new w("6FJon3QE27qgPVggARueB22hLvoh22VzJpXv4rBEoSLF"),_s=new w("CC12se5To1CdEuw7fDS27B7Geo5jJyL7t5UK2B44NgiH"),Os=new w("9HzJyW1qZsEiSfMUf6L2jo3CcTKAyBmSyKdwQeYisHrC"),Fs=new w("DropEU8AvevN3UrXWXTMuz3rqnMczQVNjq3kcSdW2SQi"),vs=new w("SNaPnpKUY656VPwbKmKT8FG4T85g4VWhRH1B4TQUfKs"),Ks=new w("9pR79Lqe6wDNjag3v8MeVYUostoXjY2ognTydor6AtEZ"),Vs=new w("DNXgeM9EiiaAbaWvwjHj9fQQLAX5ZsfHyvmYUNRAdNC8"),er=new w("4AscABy58S62owbByjUUkQfZsP7fxYH1rDYb69V58HPM"),tr=new w("7rQ1QFNosMkUCuh7Z7fPbTHvh73b68sQYdirycEzJVuw"),nr=new w("G11FKBRaAkHAKuLCgLM6K6NUc9rTjPAznRCjZifrTQe2"),Us=new w("LockrWmn6K5twhz3y9w1dQERbmgSaRkfnTeTKbpofwE"),rr=new w("DLockwT7X7sxtLmGH9g5kmfcjaBtncdbUmi738m5bvQC"),Ws=new w("3f7GcQFG397GAaEnv51zR6tsTVihYRydnydDD1cXekxH"),ir=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:er,CREATE_CPMM_POOL_AUTH:tr,CREATE_CPMM_POOL_FEE_ACC:nr,FEE_DESTINATION_ID:new w("3XMrhbv989VxAMi3DErLV9eJht1pHppW5LbKxe9fkEFR"),LOCK_CPMM_PROGRAM:rr,LCOK_CPMM_AUTH:ir};import js from"bn.js";import{PublicKey as or,AddressLookupTableAccount as Nt}from"@solana/web3.js";var sr={"2immgwYNHBbyVQKVGCEkgWpi53bLwWNRMB5G2nbgYV17":new Nt({key:new or("2immgwYNHBbyVQKVGCEkgWpi53bLwWNRMB5G2nbgYV17"),state:Nt.deserialize(Buffer.from("AQAAAP//////////d49+DAAAAAAAAQZMWvw7GUNJdaccNBVnb57OKakxL2BHLYvhRwVILRsgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMGRm/lIRcy/+ytunLDm+e8jOW7xfcSayxDmzpAAAAABt324ddloZPZy+FGzut5rBy0he1fWzeROoz1hX7/AKkG3fbh7nWP3hhCXbzkbM3athr8TYO5DSf+vfko2KGL/AVKU1D4XciC1hSlVnJ4iilt3x6rq9CmBniISTL07vagBqfVFxksXFEhjMlMPUrxf1ja7gibof1E49vZigAAAAAGp9UXGMd0yShWY5hpHV62i164o5tLbVxzVVshAAAAAIyXJY9OJInxuz0QKRSODYMLWhOZ2v8QhASOe9jb6fhZC3BlsePRfEU4nVJ/awTDzVi4bHMaoP21SbbRvAP4KUbIScv+6Yw2LHF/6K0ZjUPibbSWXCirYPGuuVl7zT789IUPLW4CpHr4JNCatp3ELXDLKMv6JJ+37le50lbBJ2LvDQdRqCgtphMF/imcN7mY5YRx2xE1A3MQ+L4QRaYK9u4GRfZP3LsAd00a+IkCpA22UNQMKdq5BFbJuwuOLqc8zxCTDlqxBG8J0HcxtfogQHDK06ukzfaXiNDKAob1MqBHS9lJxDYCwz8gd5DtFqNSTKG5l1zxIaKpDP/sffi2is1H9aKveyXSu5StXElYRl9SD5As0DHE4N0GLnf84/siiKXVyp4Ez121kLcUui/jLLFZEz/BwZK3Ilf9B9OcsEAeDMKAy2vjGSxQODgBz0QwGA+eP4ZjIjrIAQaXENv31QfLlOdXSRCkaybRniDHF4C8YcwhcvsqrOVuTP4B2Na+9wLdtrB31uz2rtlFI5kahdsnp/d1SrASDInYCtTYtdoke4kX+hoKWcEWM4Tle8pTUkUVv4BxS6fje/EzKBE4Qu9N9LMnrw/JNO0hqMVB4rk/2ou4AB1loQ7FZoPwut2o4KZB+0p9xnbrQKw038qjpHar+PyDwvxBRcu5hpHw3dguezeWv+IwvgW5icu8EGkhGa9AkFPPJT7VMSFb8xowveU=","base64"))})};import{PublicKey as la,sendAndConfirmTransaction as fa,Transaction as ma,TransactionMessage as ga,VersionedTransaction as ha}from"@solana/web3.js";import ya from"axios";import{TOKEN_PROGRAM_ID as yr}from"@solana/spl-token";function ar(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}function je(e,...t){if(!ar(e))throw new Error("Uint8Array expected");if(t.length>0&&!t.includes(e.length))throw new Error(`Uint8Array expected of length ${t}, not of length=${e.length}`)}function ze(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 Et(e,t){je(e);let n=t.outputLen;if(e.length<n)throw new Error(`digestInto() expects output buffer of length at least ${n}`)}var Se=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),U=(e,t)=>e<<32-t|e>>>t;var Ga=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function ur(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function Ye(e){return typeof e=="string"&&(e=ur(e)),je(e),e}var Le=class{clone(){return this._cloneInto()}},Ha={}.toString;function Mt(e){let t=r=>e().update(Ye(r)).digest(),n=e();return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=()=>e(),t}function cr(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)}var It=(e,t,n)=>e&t^~e&n,Rt=(e,t,n)=>e&t^e&n^t&n,ke=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=Se(this.buffer)}update(t){ze(this);let{view:n,buffer:r,blockLen:i}=this;t=Ye(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=Se(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){ze(this),Et(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;cr(r,i-8,BigInt(this.length*8),o),this.process(r,0);let a=Se(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 lr=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]),Q=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),J=new Uint32Array(64),Ze=class extends ke{constructor(){super(64,32,8,!1),this.A=Q[0]|0,this.B=Q[1]|0,this.C=Q[2]|0,this.D=Q[3]|0,this.E=Q[4]|0,this.F=Q[5]|0,this.G=Q[6]|0,this.H=Q[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],x=U(p,7)^U(p,18)^p>>>3,b=U(d,17)^U(d,19)^d>>>10;J[f]=b+J[f-7]+x+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=U(a,6)^U(a,11)^U(a,25),d=l+p+It(a,c,u)+lr[f]+J[f]|0,b=(U(r,2)^U(r,13)^U(r,22))+Rt(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 Dt=Mt(()=>new Ze);import{PublicKey as gr}from"@solana/web3.js";import Ot,{isBN as $u}from"bn.js";import{bits as eu,BitStructure as tu,blob as fr,Blob as nu,cstr as ru,f32 as iu,f32be as ou,f64 as su,f64be as au,greedy as uu,Layout as pr,ns64 as cu,ns64be as lu,nu64 as fu,nu64be as pu,offset as mu,s16 as du,s16be as gu,s24 as hu,s24be as bu,s32 as yu,s32be as wu,s40 as xu,s40be as Tu,s48 as Pu,s48be as Au,s8 as Bu,seq as Lu,struct as Su,Structure as mr,u16 as ku,u16be as Cu,u24 as Nu,u24be as Eu,u32 as Mu,u32be as Iu,u40 as Ru,u40be as Du,u48 as _u,u48be as Ou,u8 as Fu,UInt as dr,union as vu,Union as Ku,unionLayoutDiscriminator as Vu,utf8 as Uu}from"@solana/buffer-layout";var Xe=pr,_t=mr;var Qe=dr;var Je=fr;var $e=class extends Xe{constructor(n,r,i){super(n,i);this.blob=Je(n),this.signed=r}decode(n,r=0){let i=new Ot(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 Ot(n)),this.signed&&(n=n.toTwos(this.span*8)),this.blob.encode(n.toArrayLike(Buffer,"le",this.span),r,i)}};function Ft(e){return new Qe(1,e)}function Ce(e){return new Qe(4,e)}function Ne(e){return new $e(8,!1,e)}var et=class extends Xe{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 ce(e){return new et(Je(32),t=>new gr(t),t=>t.toBuffer(),e)}var tt=class extends _t{decode(t,n){return super.decode(t,n)}};function vt(e,t,n){return new tt(e,t,n)}var Kt=vt([ce("mint"),ce("owner"),Ne("amoun