test-raydium-sdk-v2
Version:
An SDK for building applications on top of Raydium.
1 lines • 91.8 kB
JavaScript
var Zn=Object.defineProperty,jn=Object.defineProperties;var Qn=Object.getOwnPropertyDescriptors;var on=Object.getOwnPropertySymbols;var Jn=Object.prototype.hasOwnProperty,$n=Object.prototype.propertyIsEnumerable;var sn=(r,e,t)=>e in r?Zn(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Z=(r,e)=>{for(var t in e||(e={}))Jn.call(e,t)&&sn(r,t,e[t]);if(on)for(var t of on(e))$n.call(e,t)&&sn(r,t,e[t]);return r},ne=(r,e)=>jn(r,Qn(e));import{PublicKey as Yn}from"@solana/web3.js";import Y from"bn.js";import Be from"bn.js";var z=new Be(0),Ie=new Be(1),Le=new Be(-1),ge=new Be(1).shln(64),dt=new Be(1).shln(128),Lt=ge.sub(Ie),tt=64,an=dt.subn(1),se=-443636,ce=-se,Ze=new Be("4295048016"),je=new Be("79226673521066979257578248091"),un=16,cn="59543866431248",ln="184467440737095516",mn="15793534762490258745",ft=new Be(10).pow(new Be(6));var qi=new Be("18446744073700000000");import S from"bn.js";var Qe=9e15,Ke=1e9,Et="0123456789abcdef",gt="2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058",ht="3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789",Rt={precision:20,rounding:4,modulo:1,toExpNeg:-7,toExpPos:21,minE:-Qe,maxE:Qe,crypto:!1},gn,Ee,B=!0,yt="[DecimalError] ",ve=yt+"Invalid argument: ",hn=yt+"Precision limit exceeded",bn=yt+"crypto unavailable",yn="[object Decimal]",ae=Math.floor,J=Math.pow,er=/^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i,tr=/^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i,nr=/^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i,wn=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,Ae=1e7,A=7,rr=9007199254740991,ir=gt.length-1,Ft=ht.length-1,p={toStringTag:yn};p.absoluteValue=p.abs=function(){var r=new this.constructor(this);return r.s<0&&(r.s=1),x(r)};p.ceil=function(){return x(new this.constructor(this),this.e+1,2)};p.clampedTo=p.clamp=function(r,e){var t,n=this,i=n.constructor;if(r=new i(r),e=new i(e),!r.s||!e.s)return new i(NaN);if(r.gt(e))throw Error(ve+e);return t=n.cmp(r),t<0?r:n.cmp(e)>0?e:new i(n)};p.comparedTo=p.cmp=function(r){var e,t,n,i,o=this,s=o.d,a=(r=new o.constructor(r)).d,u=o.s,c=r.s;if(!s||!a)return!u||!c?NaN:u!==c?u:s===a?0:!s^u<0?1:-1;if(!s[0]||!a[0])return s[0]?u:a[0]?-c:0;if(u!==c)return u;if(o.e!==r.e)return o.e>r.e^u<0?1:-1;for(n=s.length,i=a.length,e=0,t=n<i?n:i;e<t;++e)if(s[e]!==a[e])return s[e]>a[e]^u<0?1:-1;return n===i?0:n>i^u<0?1:-1};p.cosine=p.cos=function(){var r,e,t=this,n=t.constructor;return t.d?t.d[0]?(r=n.precision,e=n.rounding,n.precision=r+Math.max(t.e,t.sd())+A,n.rounding=1,t=or(n,Pn(n,t)),n.precision=r,n.rounding=e,x(Ee==2||Ee==3?t.neg():t,r,e,!0)):new n(1):new n(NaN)};p.cubeRoot=p.cbrt=function(){var r,e,t,n,i,o,s,a,u,c,l=this,m=l.constructor;if(!l.isFinite()||l.isZero())return new m(l);for(B=!1,o=l.s*J(l.s*l,1/3),!o||Math.abs(o)==1/0?(t=oe(l.d),r=l.e,(o=(r-t.length+1)%3)&&(t+=o==1||o==-2?"0":"00"),o=J(t,1/3),r=ae((r+1)/3)-(r%3==(r<0?-1:2)),o==1/0?t="5e"+r:(t=o.toExponential(),t=t.slice(0,t.indexOf("e")+1)+r),n=new m(t),n.s=l.s):n=new m(o.toString()),s=(r=m.precision)+3;;)if(a=n,u=a.times(a).times(a),c=u.plus(l),n=v(c.plus(l).times(a),c.plus(u),s+2,1),oe(a.d).slice(0,s)===(t=oe(n.d)).slice(0,s))if(t=t.slice(s-3,s+1),t=="9999"||!i&&t=="4999"){if(!i&&(x(a,r+1,0),a.times(a).times(a).eq(l))){n=a;break}s+=4,i=1}else{(!+t||!+t.slice(1)&&t.charAt(0)=="5")&&(x(n,r+1,1),e=!n.times(n).times(n).eq(l));break}return B=!0,x(n,r,m.rounding,e)};p.decimalPlaces=p.dp=function(){var r,e=this.d,t=NaN;if(e){if(r=e.length-1,t=(r-ae(this.e/A))*A,r=e[r],r)for(;r%10==0;r/=10)t--;t<0&&(t=0)}return t};p.dividedBy=p.div=function(r){return v(this,new this.constructor(r))};p.dividedToIntegerBy=p.divToInt=function(r){var e=this,t=e.constructor;return x(v(e,new t(r),0,1,1),t.precision,t.rounding)};p.equals=p.eq=function(r){return this.cmp(r)===0};p.floor=function(){return x(new this.constructor(this),this.e+1,3)};p.greaterThan=p.gt=function(r){return this.cmp(r)>0};p.greaterThanOrEqualTo=p.gte=function(r){var e=this.cmp(r);return e==1||e===0};p.hyperbolicCosine=p.cosh=function(){var r,e,t,n,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;t=s.precision,n=s.rounding,s.precision=t+Math.max(o.e,o.sd())+4,s.rounding=1,i=o.d.length,i<32?(r=Math.ceil(i/3),e=(1/Tt(4,r)).toString()):(r=16,e="2.3283064365386962890625e-10"),o=Je(s,1,o.times(e),new s(1),!0);for(var u,c=r,l=new s(8);c--;)u=o.times(o),o=a.minus(u.times(l.minus(u.times(l))));return x(o,s.precision=t,s.rounding=n,!0)};p.hyperbolicSine=p.sinh=function(){var r,e,t,n,i=this,o=i.constructor;if(!i.isFinite()||i.isZero())return new o(i);if(e=o.precision,t=o.rounding,o.precision=e+Math.max(i.e,i.sd())+4,o.rounding=1,n=i.d.length,n<3)i=Je(o,2,i,i,!0);else{r=1.4*Math.sqrt(n),r=r>16?16:r|0,i=i.times(1/Tt(5,r)),i=Je(o,2,i,i,!0);for(var s,a=new o(5),u=new o(16),c=new o(20);r--;)s=i.times(i),i=i.times(a.plus(s.times(u.times(s).plus(c))))}return o.precision=e,o.rounding=t,x(i,e,t,!0)};p.hyperbolicTangent=p.tanh=function(){var r,e,t=this,n=t.constructor;return t.isFinite()?t.isZero()?new n(t):(r=n.precision,e=n.rounding,n.precision=r+7,n.rounding=1,v(t.sinh(),t.cosh(),n.precision=r,n.rounding=e)):new n(t.s)};p.inverseCosine=p.acos=function(){var r,e=this,t=e.constructor,n=e.abs().cmp(1),i=t.precision,o=t.rounding;return n!==-1?n===0?e.isNeg()?xe(t,i,o):new t(0):new t(NaN):e.isZero()?xe(t,i+4,o).times(.5):(t.precision=i+6,t.rounding=1,e=e.asin(),r=xe(t,i+4,o).times(.5),t.precision=i,t.rounding=o,r.minus(e))};p.inverseHyperbolicCosine=p.acosh=function(){var r,e,t=this,n=t.constructor;return t.lte(1)?new n(t.eq(1)?0:NaN):t.isFinite()?(r=n.precision,e=n.rounding,n.precision=r+Math.max(Math.abs(t.e),t.sd())+4,n.rounding=1,B=!1,t=t.times(t).minus(1).sqrt().plus(t),B=!0,n.precision=r,n.rounding=e,t.ln()):new n(t)};p.inverseHyperbolicSine=p.asinh=function(){var r,e,t=this,n=t.constructor;return!t.isFinite()||t.isZero()?new n(t):(r=n.precision,e=n.rounding,n.precision=r+2*Math.max(Math.abs(t.e),t.sd())+6,n.rounding=1,B=!1,t=t.times(t).plus(1).sqrt().plus(t),B=!0,n.precision=r,n.rounding=e,t.ln())};p.inverseHyperbolicTangent=p.atanh=function(){var r,e,t,n,i=this,o=i.constructor;return i.isFinite()?i.e>=0?new o(i.abs().eq(1)?i.s/0:i.isZero()?i:NaN):(r=o.precision,e=o.rounding,n=i.sd(),Math.max(n,r)<2*-i.e-1?x(new o(i),r,e,!0):(o.precision=t=n-i.e,i=v(i.plus(1),new o(1).minus(i),t+r,1),o.precision=r+4,o.rounding=1,i=i.ln(),o.precision=r,o.rounding=e,i.times(.5))):new o(NaN)};p.inverseSine=p.asin=function(){var r,e,t,n,i=this,o=i.constructor;return i.isZero()?new o(i):(e=i.abs().cmp(1),t=o.precision,n=o.rounding,e!==-1?e===0?(r=xe(o,t+4,n).times(.5),r.s=i.s,r):new o(NaN):(o.precision=t+6,o.rounding=1,i=i.div(new o(1).minus(i.times(i)).sqrt().plus(1)).atan(),o.precision=t,o.rounding=n,i.times(2)))};p.inverseTangent=p.atan=function(){var r,e,t,n,i,o,s,a,u,c=this,l=c.constructor,m=l.precision,d=l.rounding;if(c.isFinite()){if(c.isZero())return new l(c);if(c.abs().eq(1)&&m+4<=Ft)return s=xe(l,m+4,d).times(.25),s.s=c.s,s}else{if(!c.s)return new l(NaN);if(m+4<=Ft)return s=xe(l,m+4,d).times(.5),s.s=c.s,s}for(l.precision=a=m+10,l.rounding=1,t=Math.min(28,a/A+2|0),r=t;r;--r)c=c.div(c.times(c).plus(1).sqrt().plus(1));for(B=!1,e=Math.ceil(a/A),n=1,u=c.times(c),s=new l(c),i=c;r!==-1;)if(i=i.times(u),o=s.minus(i.div(n+=2)),i=i.times(u),s=o.plus(i.div(n+=2)),s.d[e]!==void 0)for(r=e;s.d[r]===o.d[r]&&r--;);return t&&(s=s.times(2<<t-1)),B=!0,x(s,l.precision=m,l.rounding=d,!0)};p.isFinite=function(){return!!this.d};p.isInteger=p.isInt=function(){return!!this.d&&ae(this.e/A)>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(r){return this.cmp(r)<0};p.lessThanOrEqualTo=p.lte=function(r){return this.cmp(r)<1};p.logarithm=p.log=function(r){var e,t,n,i,o,s,a,u,c=this,l=c.constructor,m=l.precision,d=l.rounding,f=5;if(r==null)r=new l(10),e=!0;else{if(r=new l(r),t=r.d,r.s<0||!t||!t[0]||r.eq(1))return new l(NaN);e=r.eq(10)}if(t=c.d,c.s<0||!t||!t[0]||c.eq(1))return new l(t&&!t[0]?-1/0:c.s!=1?NaN:t?0:1/0);if(e)if(t.length>1)o=!0;else{for(i=t[0];i%10===0;)i/=10;o=i!==1}if(B=!1,a=m+f,s=_e(c,a),n=e?bt(l,a+10):_e(r,a),u=v(s,n,a,1),nt(u.d,i=m,d))do if(a+=10,s=_e(c,a),n=e?bt(l,a+10):_e(r,a),u=v(s,n,a,1),!o){+oe(u.d).slice(i+1,i+15)+1==1e14&&(u=x(u,m+1,0));break}while(nt(u.d,i+=10,d));return B=!0,x(u,m,d)};p.minus=p.sub=function(r){var e,t,n,i,o,s,a,u,c,l,m,d,f=this,b=f.constructor;if(r=new b(r),!f.d||!r.d)return!f.s||!r.s?r=new b(NaN):f.d?r.s=-r.s:r=new b(r.d||f.s!==r.s?f:NaN),r;if(f.s!=r.s)return r.s=-r.s,f.plus(r);if(c=f.d,d=r.d,a=b.precision,u=b.rounding,!c[0]||!d[0]){if(d[0])r.s=-r.s;else if(c[0])r=new b(f);else return new b(u===3?-0:0);return B?x(r,a,u):r}if(t=ae(r.e/A),l=ae(f.e/A),c=c.slice(),o=l-t,o){for(m=o<0,m?(e=c,o=-o,s=d.length):(e=d,t=l,s=c.length),n=Math.max(Math.ceil(a/A),s)+2,o>n&&(o=n,e.length=1),e.reverse(),n=o;n--;)e.push(0);e.reverse()}else{for(n=c.length,s=d.length,m=n<s,m&&(s=n),n=0;n<s;n++)if(c[n]!=d[n]){m=c[n]<d[n];break}o=0}for(m&&(e=c,c=d,d=e,r.s=-r.s),s=c.length,n=d.length-s;n>0;--n)c[s++]=0;for(n=d.length;n>o;){if(c[--n]<d[n]){for(i=n;i&&c[--i]===0;)c[i]=Ae-1;--c[i],c[n]+=Ae}c[n]-=d[n]}for(;c[--s]===0;)c.pop();for(;c[0]===0;c.shift())--t;return c[0]?(r.d=c,r.e=wt(c,t),B?x(r,a,u):r):new b(u===3?-0:0)};p.modulo=p.mod=function(r){var e,t=this,n=t.constructor;return r=new n(r),!t.d||!r.s||r.d&&!r.d[0]?new n(NaN):!r.d||t.d&&!t.d[0]?x(new n(t),n.precision,n.rounding):(B=!1,n.modulo==9?(e=v(t,r.abs(),0,3,1),e.s*=r.s):e=v(t,r,0,n.modulo,1),e=e.times(r),B=!0,t.minus(e))};p.naturalExponential=p.exp=function(){return Ot(this)};p.naturalLogarithm=p.ln=function(){return _e(this)};p.negated=p.neg=function(){var r=new this.constructor(this);return r.s=-r.s,x(r)};p.plus=p.add=function(r){var e,t,n,i,o,s,a,u,c,l,m=this,d=m.constructor;if(r=new d(r),!m.d||!r.d)return!m.s||!r.s?r=new d(NaN):m.d||(r=new d(r.d||m.s===r.s?m:NaN)),r;if(m.s!=r.s)return r.s=-r.s,m.minus(r);if(c=m.d,l=r.d,a=d.precision,u=d.rounding,!c[0]||!l[0])return l[0]||(r=new d(m)),B?x(r,a,u):r;if(o=ae(m.e/A),n=ae(r.e/A),c=c.slice(),i=o-n,i){for(i<0?(t=c,i=-i,s=l.length):(t=l,n=o,s=c.length),o=Math.ceil(a/A),s=o>s?o+1:s+1,i>s&&(i=s,t.length=1),t.reverse();i--;)t.push(0);t.reverse()}for(s=c.length,i=l.length,s-i<0&&(i=s,t=l,l=c,c=t),e=0;i;)e=(c[--i]=c[i]+l[i]+e)/Ae|0,c[i]%=Ae;for(e&&(c.unshift(e),++n),s=c.length;c[--s]==0;)c.pop();return r.d=c,r.e=wt(c,n),B?x(r,a,u):r};p.precision=p.sd=function(r){var e,t=this;if(r!==void 0&&r!==!!r&&r!==1&&r!==0)throw Error(ve+r);return t.d?(e=Tn(t.d),r&&t.e+1>e&&(e=t.e+1)):e=NaN,e};p.round=function(){var r=this,e=r.constructor;return x(new e(r),r.e+1,e.rounding)};p.sine=p.sin=function(){var r,e,t=this,n=t.constructor;return t.isFinite()?t.isZero()?new n(t):(r=n.precision,e=n.rounding,n.precision=r+Math.max(t.e,t.sd())+A,n.rounding=1,t=ar(n,Pn(n,t)),n.precision=r,n.rounding=e,x(Ee>2?t.neg():t,r,e,!0)):new n(NaN)};p.squareRoot=p.sqrt=function(){var r,e,t,n,i,o,s=this,a=s.d,u=s.e,c=s.s,l=s.constructor;if(c!==1||!a||!a[0])return new l(!c||c<0&&(!a||a[0])?NaN:a?s:1/0);for(B=!1,c=Math.sqrt(+s),c==0||c==1/0?(e=oe(a),(e.length+u)%2==0&&(e+="0"),c=Math.sqrt(e),u=ae((u+1)/2)-(u<0||u%2),c==1/0?e="5e"+u:(e=c.toExponential(),e=e.slice(0,e.indexOf("e")+1)+u),n=new l(e)):n=new l(c.toString()),t=(u=l.precision)+3;;)if(o=n,n=o.plus(v(s,o,t+2,1)).times(.5),oe(o.d).slice(0,t)===(e=oe(n.d)).slice(0,t))if(e=e.slice(t-3,t+1),e=="9999"||!i&&e=="4999"){if(!i&&(x(o,u+1,0),o.times(o).eq(s))){n=o;break}t+=4,i=1}else{(!+e||!+e.slice(1)&&e.charAt(0)=="5")&&(x(n,u+1,1),r=!n.times(n).eq(s));break}return B=!0,x(n,u,l.rounding,r)};p.tangent=p.tan=function(){var r,e,t=this,n=t.constructor;return t.isFinite()?t.isZero()?new n(t):(r=n.precision,e=n.rounding,n.precision=r+10,n.rounding=1,t=t.sin(),t.s=1,t=v(t,new n(1).minus(t.times(t)).sqrt(),r+10,0),n.precision=r,n.rounding=e,x(Ee==2||Ee==4?t.neg():t,r,e,!0)):new n(NaN)};p.times=p.mul=function(r){var e,t,n,i,o,s,a,u,c,l=this,m=l.constructor,d=l.d,f=(r=new m(r)).d;if(r.s*=l.s,!d||!d[0]||!f||!f[0])return new m(!r.s||d&&!d[0]&&!f||f&&!f[0]&&!d?NaN:!d||!f?r.s/0:r.s*0);for(t=ae(l.e/A)+ae(r.e/A),u=d.length,c=f.length,u<c&&(o=d,d=f,f=o,s=u,u=c,c=s),o=[],s=u+c,n=s;n--;)o.push(0);for(n=c;--n>=0;){for(e=0,i=u+n;i>n;)a=o[i]+f[n]*d[i-n-1]+e,o[i--]=a%Ae|0,e=a/Ae|0;o[i]=(o[i]+e)%Ae|0}for(;!o[--s];)o.pop();return e?++t:o.shift(),r.d=o,r.e=wt(o,t),B?x(r,m.precision,m.rounding):r};p.toBinary=function(r,e){return Mt(this,2,r,e)};p.toDecimalPlaces=p.toDP=function(r,e){var t=this,n=t.constructor;return t=new n(t),r===void 0?t:(me(r,0,Ke),e===void 0?e=n.rounding:me(e,0,8),x(t,r+t.e+1,e))};p.toExponential=function(r,e){var t,n=this,i=n.constructor;return r===void 0?t=Ne(n,!0):(me(r,0,Ke),e===void 0?e=i.rounding:me(e,0,8),n=x(new i(n),r+1,e),t=Ne(n,!0,r+1)),n.isNeg()&&!n.isZero()?"-"+t:t};p.toFixed=function(r,e){var t,n,i=this,o=i.constructor;return r===void 0?t=Ne(i):(me(r,0,Ke),e===void 0?e=o.rounding:me(e,0,8),n=x(new o(i),r+i.e+1,e),t=Ne(n,!1,r+n.e+1)),i.isNeg()&&!i.isZero()?"-"+t:t};p.toFraction=function(r){var e,t,n,i,o,s,a,u,c,l,m,d,f=this,b=f.d,g=f.constructor;if(!b)return new g(f);if(c=t=new g(1),n=u=new g(0),e=new g(n),o=e.e=Tn(b)-f.e-1,s=o%A,e.d[0]=J(10,s<0?A+s:s),r==null)r=o>0?e:c;else{if(a=new g(r),!a.isInt()||a.lt(c))throw Error(ve+a);r=a.gt(e)?o>0?e:c:a}for(B=!1,a=new g(oe(b)),l=g.precision,g.precision=o=b.length*A*2;m=v(a,e,0,1,1),i=t.plus(m.times(n)),i.cmp(r)!=1;)t=n,n=i,i=c,c=u.plus(m.times(i)),u=i,i=e,e=a.minus(m.times(i)),a=i;return i=v(r.minus(t),n,0,1,1),u=u.plus(i.times(c)),t=t.plus(i.times(n)),u.s=c.s=f.s,d=v(c,n,o,1).minus(f).abs().cmp(v(u,t,o,1).minus(f).abs())<1?[c,n]:[u,t],g.precision=l,B=!0,d};p.toHexadecimal=p.toHex=function(r,e){return Mt(this,16,r,e)};p.toNearest=function(r,e){var t=this,n=t.constructor;if(t=new n(t),r==null){if(!t.d)return t;r=new n(1),e=n.rounding}else{if(r=new n(r),e===void 0?e=n.rounding:me(e,0,8),!t.d)return r.s?t:r;if(!r.d)return r.s&&(r.s=t.s),r}return r.d[0]?(B=!1,t=v(t,r,0,e,1).times(r),B=!0,x(t)):(r.s=t.s,t=r),t};p.toNumber=function(){return+this};p.toOctal=function(r,e){return Mt(this,8,r,e)};p.toPower=p.pow=function(r){var e,t,n,i,o,s,a=this,u=a.constructor,c=+(r=new u(r));if(!a.d||!r.d||!a.d[0]||!r.d[0])return new u(J(+a,c));if(a=new u(a),a.eq(1))return a;if(n=u.precision,o=u.rounding,r.eq(1))return x(a,n,o);if(e=ae(r.e/A),e>=r.d.length-1&&(t=c<0?-c:c)<=rr)return i=xn(u,a,t,n),r.s<0?new u(1).div(i):x(i,n,o);if(s=a.s,s<0){if(e<r.d.length-1)return new u(NaN);if((r.d[e]&1)==0&&(s=1),a.e==0&&a.d[0]==1&&a.d.length==1)return a.s=s,a}return t=J(+a,c),e=t==0||!isFinite(t)?ae(c*(Math.log("0."+oe(a.d))/Math.LN10+a.e+1)):new u(t+"").e,e>u.maxE+1||e<u.minE-1?new u(e>0?s/0:0):(B=!1,u.rounding=a.s=1,t=Math.min(12,(e+"").length),i=Ot(r.times(_e(a,n+t)),n),i.d&&(i=x(i,n+5,1),nt(i.d,n,o)&&(e=n+10,i=x(Ot(r.times(_e(a,e+t)),e),e+5,1),+oe(i.d).slice(n+1,n+15)+1==1e14&&(i=x(i,n+1,0)))),i.s=s,B=!0,u.rounding=o,x(i,n,o))};p.toPrecision=function(r,e){var t,n=this,i=n.constructor;return r===void 0?t=Ne(n,n.e<=i.toExpNeg||n.e>=i.toExpPos):(me(r,1,Ke),e===void 0?e=i.rounding:me(e,0,8),n=x(new i(n),r,e),t=Ne(n,r<=n.e||n.e<=i.toExpNeg,r)),n.isNeg()&&!n.isZero()?"-"+t:t};p.toSignificantDigits=p.toSD=function(r,e){var t=this,n=t.constructor;return r===void 0?(r=n.precision,e=n.rounding):(me(r,1,Ke),e===void 0?e=n.rounding:me(e,0,8)),x(new n(t),r,e)};p.toString=function(){var r=this,e=r.constructor,t=Ne(r,r.e<=e.toExpNeg||r.e>=e.toExpPos);return r.isNeg()&&!r.isZero()?"-"+t:t};p.truncated=p.trunc=function(){return x(new this.constructor(this),this.e+1,1)};p.valueOf=p.toJSON=function(){var r=this,e=r.constructor,t=Ne(r,r.e<=e.toExpNeg||r.e>=e.toExpPos);return r.isNeg()?"-"+t:t};function oe(r){var e,t,n,i=r.length-1,o="",s=r[0];if(i>0){for(o+=s,e=1;e<i;e++)n=r[e]+"",t=A-n.length,t&&(o+=Me(t)),o+=n;s=r[e],n=s+"",t=A-n.length,t&&(o+=Me(t))}else if(s===0)return"0";for(;s%10===0;)s/=10;return o+s}function me(r,e,t){if(r!==~~r||r<e||r>t)throw Error(ve+r)}function nt(r,e,t,n){var i,o,s,a;for(o=r[0];o>=10;o/=10)--e;return--e<0?(e+=A,i=0):(i=Math.ceil((e+1)/A),e%=A),o=J(10,A-e),a=r[i]%o|0,n==null?e<3?(e==0?a=a/100|0:e==1&&(a=a/10|0),s=t<4&&a==99999||t>3&&a==49999||a==5e4||a==0):s=(t<4&&a+1==o||t>3&&a+1==o/2)&&(r[i+1]/o/100|0)==J(10,e-2)-1||(a==o/2||a==0)&&(r[i+1]/o/100|0)==0:e<4?(e==0?a=a/1e3|0:e==1?a=a/100|0:e==2&&(a=a/10|0),s=(n||t<4)&&a==9999||!n&&t>3&&a==4999):s=((n||t<4)&&a+1==o||!n&&t>3&&a+1==o/2)&&(r[i+1]/o/1e3|0)==J(10,e-3)-1,s}function pt(r,e,t){for(var n,i=[0],o,s=0,a=r.length;s<a;){for(o=i.length;o--;)i[o]*=e;for(i[0]+=Et.indexOf(r.charAt(s++)),n=0;n<i.length;n++)i[n]>t-1&&(i[n+1]===void 0&&(i[n+1]=0),i[n+1]+=i[n]/t|0,i[n]%=t)}return i.reverse()}function or(r,e){var t,n,i;if(e.isZero())return e;n=e.d.length,n<32?(t=Math.ceil(n/3),i=(1/Tt(4,t)).toString()):(t=16,i="2.3283064365386962890625e-10"),r.precision+=t,e=Je(r,1,e.times(i),new r(1));for(var o=t;o--;){var s=e.times(e);e=s.times(s).minus(s).times(8).plus(1)}return r.precision-=t,e}var v=function(){function r(n,i,o){var s,a=0,u=n.length;for(n=n.slice();u--;)s=n[u]*i+a,n[u]=s%o|0,a=s/o|0;return a&&n.unshift(a),n}function e(n,i,o,s){var a,u;if(o!=s)u=o>s?1:-1;else for(a=u=0;a<o;a++)if(n[a]!=i[a]){u=n[a]>i[a]?1:-1;break}return u}function t(n,i,o,s){for(var a=0;o--;)n[o]-=a,a=n[o]<i[o]?1:0,n[o]=a*s+n[o]-i[o];for(;!n[0]&&n.length>1;)n.shift()}return function(n,i,o,s,a,u){var c,l,m,d,f,b,g,h,y,P,w,L,T,_,G,X,te,V,U,Pe,pe=n.constructor,De=n.s==i.s?1:-1,Q=n.d,M=i.d;if(!Q||!Q[0]||!M||!M[0])return new pe(!n.s||!i.s||(Q?M&&Q[0]==M[0]:!M)?NaN:Q&&Q[0]==0||!M?De*0:De/0);for(u?(f=1,l=n.e-i.e):(u=Ae,f=A,l=ae(n.e/f)-ae(i.e/f)),U=M.length,te=Q.length,y=new pe(De),P=y.d=[],m=0;M[m]==(Q[m]||0);m++);if(M[m]>(Q[m]||0)&&l--,o==null?(_=o=pe.precision,s=pe.rounding):a?_=o+(n.e-i.e)+1:_=o,_<0)P.push(1),b=!0;else{if(_=_/f+2|0,m=0,U==1){for(d=0,M=M[0],_++;(m<te||d)&&_--;m++)G=d*u+(Q[m]||0),P[m]=G/M|0,d=G%M|0;b=d||m<te}else{for(d=u/(M[0]+1)|0,d>1&&(M=r(M,d,u),Q=r(Q,d,u),U=M.length,te=Q.length),X=U,w=Q.slice(0,U),L=w.length;L<U;)w[L++]=0;Pe=M.slice(),Pe.unshift(0),V=M[0],M[1]>=u/2&&++V;do d=0,c=e(M,w,U,L),c<0?(T=w[0],U!=L&&(T=T*u+(w[1]||0)),d=T/V|0,d>1?(d>=u&&(d=u-1),g=r(M,d,u),h=g.length,L=w.length,c=e(g,w,h,L),c==1&&(d--,t(g,U<h?Pe:M,h,u))):(d==0&&(c=d=1),g=M.slice()),h=g.length,h<L&&g.unshift(0),t(w,g,L,u),c==-1&&(L=w.length,c=e(M,w,U,L),c<1&&(d++,t(w,U<L?Pe:M,L,u))),L=w.length):c===0&&(d++,w=[0]),P[m++]=d,c&&w[0]?w[L++]=Q[X]||0:(w=[Q[X]],L=1);while((X++<te||w[0]!==void 0)&&_--);b=w[0]!==void 0}P[0]||P.shift()}if(f==1)y.e=l,gn=b;else{for(m=1,d=P[0];d>=10;d/=10)m++;y.e=m+l*f-1,x(y,a?o+y.e+1:o,s,b)}return y}}();function x(r,e,t,n){var i,o,s,a,u,c,l,m,d,f=r.constructor;e:if(e!=null){if(m=r.d,!m)return r;for(i=1,a=m[0];a>=10;a/=10)i++;if(o=e-i,o<0)o+=A,s=e,l=m[d=0],u=l/J(10,i-s-1)%10|0;else if(d=Math.ceil((o+1)/A),a=m.length,d>=a)if(n){for(;a++<=d;)m.push(0);l=u=0,i=1,o%=A,s=o-A+1}else break e;else{for(l=a=m[d],i=1;a>=10;a/=10)i++;o%=A,s=o-A+i,u=s<0?0:l/J(10,i-s-1)%10|0}if(n=n||e<0||m[d+1]!==void 0||(s<0?l:l%J(10,i-s-1)),c=t<4?(u||n)&&(t==0||t==(r.s<0?3:2)):u>5||u==5&&(t==4||n||t==6&&(o>0?s>0?l/J(10,i-s):0:m[d-1])%10&1||t==(r.s<0?8:7)),e<1||!m[0])return m.length=0,c?(e-=r.e+1,m[0]=J(10,(A-e%A)%A),r.e=-e||0):m[0]=r.e=0,r;if(o==0?(m.length=d,a=1,d--):(m.length=d+1,a=J(10,A-o),m[d]=s>0?(l/J(10,i-s)%J(10,s)|0)*a:0),c)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&&(r.e++,m[0]==Ae&&(m[0]=1));break}else{if(m[d]+=a,m[d]!=Ae)break;m[d--]=0,a=1}for(o=m.length;m[--o]===0;)m.pop()}return B&&(r.e>f.maxE?(r.d=null,r.e=NaN):r.e<f.minE&&(r.e=0,r.d=[0])),r}function Ne(r,e,t){if(!r.isFinite())return kn(r);var n,i=r.e,o=oe(r.d),s=o.length;return e?(t&&(n=t-s)>0?o=o.charAt(0)+"."+o.slice(1)+Me(n):s>1&&(o=o.charAt(0)+"."+o.slice(1)),o=o+(r.e<0?"e":"e+")+r.e):i<0?(o="0."+Me(-i-1)+o,t&&(n=t-s)>0&&(o+=Me(n))):i>=s?(o+=Me(i+1-s),t&&(n=t-i-1)>0&&(o=o+"."+Me(n))):((n=i+1)<s&&(o=o.slice(0,n)+"."+o.slice(n)),t&&(n=t-s)>0&&(i+1===s&&(o+="."),o+=Me(n))),o}function wt(r,e){var t=r[0];for(e*=A;t>=10;t/=10)e++;return e}function bt(r,e,t){if(e>ir)throw B=!0,t&&(r.precision=t),Error(hn);return x(new r(gt),e,1,!0)}function xe(r,e,t){if(e>Ft)throw Error(hn);return x(new r(ht),e,t,!0)}function Tn(r){var e=r.length-1,t=e*A+1;if(e=r[e],e){for(;e%10==0;e/=10)t--;for(e=r[0];e>=10;e/=10)t++}return t}function Me(r){for(var e="";r--;)e+="0";return e}function xn(r,e,t,n){var i,o=new r(1),s=Math.ceil(n/A+4);for(B=!1;;){if(t%2&&(o=o.times(e),fn(o.d,s)&&(i=!0)),t=ae(t/2),t===0){t=o.d.length-1,i&&o.d[t]===0&&++o.d[t];break}e=e.times(e),fn(e.d,s)}return B=!0,o}function dn(r){return r.d[r.d.length-1]&1}function An(r,e,t){for(var n,i=new r(e[0]),o=0;++o<e.length;)if(n=new r(e[o]),n.s)i[t](n)&&(i=n);else{i=n;break}return i}function Ot(r,e){var t,n,i,o,s,a,u,c=0,l=0,m=0,d=r.constructor,f=d.rounding,b=d.precision;if(!r.d||!r.d[0]||r.e>17)return new d(r.d?r.d[0]?r.s<0?0:1/0:1:r.s?r.s<0?0:r:0/0);for(e==null?(B=!1,u=b):u=e,a=new d(.03125);r.e>-2;)r=r.times(a),m+=5;for(n=Math.log(J(2,m))/Math.LN10*2+5|0,u+=n,t=o=s=new d(1),d.precision=u;;){if(o=x(o.times(r),u,1),t=t.times(++l),a=s.plus(v(o,t,u,1)),oe(a.d).slice(0,u)===oe(s.d).slice(0,u)){for(i=m;i--;)s=x(s.times(s),u,1);if(e==null)if(c<3&&nt(s.d,u-n,f,c))d.precision=u+=10,t=o=a=new d(1),l=0,c++;else return x(s,d.precision=b,f,B=!0);else return d.precision=b,s}s=a}}function _e(r,e){var t,n,i,o,s,a,u,c,l,m,d,f=1,b=10,g=r,h=g.d,y=g.constructor,P=y.rounding,w=y.precision;if(g.s<0||!h||!h[0]||!g.e&&h[0]==1&&h.length==1)return new y(h&&!h[0]?-1/0:g.s!=1?NaN:h?0:g);if(e==null?(B=!1,l=w):l=e,y.precision=l+=b,t=oe(h),n=t.charAt(0),Math.abs(o=g.e)<15e14){for(;n<7&&n!=1||n==1&&t.charAt(1)>3;)g=g.times(r),t=oe(g.d),n=t.charAt(0),f++;o=g.e,n>1?(g=new y("0."+t),o++):g=new y(n+"."+t.slice(1))}else return c=bt(y,l+2,w).times(o+""),g=_e(new y(n+"."+t.slice(1)),l-b).plus(c),y.precision=w,e==null?x(g,w,P,B=!0):g;for(m=g,u=s=g=v(g.minus(1),g.plus(1),l,1),d=x(g.times(g),l,1),i=3;;){if(s=x(s.times(d),l,1),c=u.plus(v(s,new y(i),l,1)),oe(c.d).slice(0,l)===oe(u.d).slice(0,l))if(u=u.times(2),o!==0&&(u=u.plus(bt(y,l+2,w).times(o+""))),u=v(u,new y(f),l,1),e==null)if(nt(u.d,l-b,P,a))y.precision=l+=b,c=s=g=v(m.minus(1),m.plus(1),l,1),d=x(g.times(g),l,1),i=a=1;else return x(u,y.precision=w,P,B=!0);else return y.precision=w,u;u=c,i+=2}}function kn(r){return String(r.s*r.s/0)}function Dt(r,e){var t,n,i;for((t=e.indexOf("."))>-1&&(e=e.replace(".","")),(n=e.search(/e/i))>0?(t<0&&(t=n),t+=+e.slice(n+1),e=e.substring(0,n)):t<0&&(t=e.length),n=0;e.charCodeAt(n)===48;n++);for(i=e.length;e.charCodeAt(i-1)===48;--i);if(e=e.slice(n,i),e){if(i-=n,r.e=t=t-n-1,r.d=[],n=(t+1)%A,t<0&&(n+=A),n<i){for(n&&r.d.push(+e.slice(0,n)),i-=A;n<i;)r.d.push(+e.slice(n,n+=A));e=e.slice(n),n=A-e.length}else n-=i;for(;n--;)e+="0";r.d.push(+e),B&&(r.e>r.constructor.maxE?(r.d=null,r.e=NaN):r.e<r.constructor.minE&&(r.e=0,r.d=[0]))}else r.e=0,r.d=[0];return r}function sr(r,e){var t,n,i,o,s,a,u,c,l;if(e.indexOf("_")>-1){if(e=e.replace(/(\d)_(?=\d)/g,"$1"),wn.test(e))return Dt(r,e)}else if(e==="Infinity"||e==="NaN")return+e||(r.s=NaN),r.e=NaN,r.d=null,r;if(tr.test(e))t=16,e=e.toLowerCase();else if(er.test(e))t=2;else if(nr.test(e))t=8;else throw Error(ve+e);for(o=e.search(/p/i),o>0?(u=+e.slice(o+1),e=e.substring(2,o)):e=e.slice(2),o=e.indexOf("."),s=o>=0,n=r.constructor,s&&(e=e.replace(".",""),a=e.length,o=a-o,i=xn(n,new n(t),o,o*2)),c=pt(e,t,Ae),l=c.length-1,o=l;c[o]===0;--o)c.pop();return o<0?new n(r.s*0):(r.e=wt(c,l),r.d=c,B=!1,s&&(r=v(r,i,a*4)),u&&(r=r.times(Math.abs(u)<54?J(2,u):rt.pow(2,u))),B=!0,r)}function ar(r,e){var t,n=e.d.length;if(n<3)return e.isZero()?e:Je(r,2,e,e);t=1.4*Math.sqrt(n),t=t>16?16:t|0,e=e.times(1/Tt(5,t)),e=Je(r,2,e,e);for(var i,o=new r(5),s=new r(16),a=new r(20);t--;)i=e.times(e),e=e.times(o.plus(i.times(s.times(i).minus(a))));return e}function Je(r,e,t,n,i){var o,s,a,u,c=1,l=r.precision,m=Math.ceil(l/A);for(B=!1,u=t.times(t),a=new r(n);;){if(s=v(a.times(u),new r(e++*e++),l,1),a=i?n.plus(s):n.minus(s),n=v(s.times(u),new r(e++*e++),l,1),s=a.plus(n),s.d[m]!==void 0){for(o=m;s.d[o]===a.d[o]&&o--;);if(o==-1)break}o=a,a=n,n=s,s=o,c++}return B=!0,s.d.length=m+1,s}function Tt(r,e){for(var t=r;--e;)t*=r;return t}function Pn(r,e){var t,n=e.s<0,i=xe(r,r.precision,1),o=i.times(.5);if(e=e.abs(),e.lte(o))return Ee=n?4:1,e;if(t=e.divToInt(i),t.isZero())Ee=n?3:2;else{if(e=e.minus(t.times(i)),e.lte(o))return Ee=dn(t)?n?2:3:n?4:1,e;Ee=dn(t)?n?1:4:n?3:2}return e.minus(i).abs()}function Mt(r,e,t,n){var i,o,s,a,u,c,l,m,d,f=r.constructor,b=t!==void 0;if(b?(me(t,1,Ke),n===void 0?n=f.rounding:me(n,0,8)):(t=f.precision,n=f.rounding),!r.isFinite())l=kn(r);else{for(l=Ne(r),s=l.indexOf("."),b?(i=2,e==16?t=t*4-3:e==8&&(t=t*3-2)):i=e,s>=0&&(l=l.replace(".",""),d=new f(1),d.e=l.length-s,d.d=pt(Ne(d),10,i),d.e=d.d.length),m=pt(l,10,i),o=u=m.length;m[--u]==0;)m.pop();if(!m[0])l=b?"0p+0":"0";else{if(s<0?o--:(r=new f(r),r.d=m,r.e=o,r=v(r,d,t,n,0,i),m=r.d,o=r.e,c=gn),s=m[t],a=i/2,c=c||m[t+1]!==void 0,c=n<4?(s!==void 0||c)&&(n===0||n===(r.s<0?3:2)):s>a||s===a&&(n===4||c||n===6&&m[t-1]&1||n===(r.s<0?8:7)),m.length=t,c)for(;++m[--t]>i-1;)m[t]=0,t||(++o,m.unshift(1));for(u=m.length;!m[u-1];--u);for(s=0,l="";s<u;s++)l+=Et.charAt(m[s]);if(b){if(u>1)if(e==16||e==8){for(s=e==16?4:3,--u;u%s;u++)l+="0";for(m=pt(l,i,e),u=m.length;!m[u-1];--u);for(s=1,l="1.";s<u;s++)l+=Et.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>u)for(o-=u;o--;)l+="0";else o<u&&(l=l.slice(0,o)+"."+l.slice(o))}l=(e==16?"0x":e==2?"0b":e==8?"0o":"")+l}return r.s<0?"-"+l:l}function fn(r,e){if(r.length>e)return r.length=e,!0}function ur(r){return new this(r).abs()}function cr(r){return new this(r).acos()}function lr(r){return new this(r).acosh()}function mr(r,e){return new this(r).plus(e)}function dr(r){return new this(r).asin()}function fr(r){return new this(r).asinh()}function pr(r){return new this(r).atan()}function gr(r){return new this(r).atanh()}function hr(r,e){r=new this(r),e=new this(e);var t,n=this.precision,i=this.rounding,o=n+4;return!r.s||!e.s?t=new this(NaN):!r.d&&!e.d?(t=xe(this,o,1).times(e.s>0?.25:.75),t.s=r.s):!e.d||r.isZero()?(t=e.s<0?xe(this,n,i):new this(0),t.s=r.s):!r.d||e.isZero()?(t=xe(this,o,1).times(.5),t.s=r.s):e.s<0?(this.precision=o,this.rounding=1,t=this.atan(v(r,e,o,1)),e=xe(this,o,1),this.precision=n,this.rounding=i,t=r.s<0?t.minus(e):t.plus(e)):t=this.atan(v(r,e,o,1)),t}function br(r){return new this(r).cbrt()}function yr(r){return x(r=new this(r),r.e+1,2)}function wr(r,e,t){return new this(r).clamp(e,t)}function Tr(r){if(!r||typeof r!="object")throw Error(yt+"Object expected");var e,t,n,i=r.defaults===!0,o=["precision",1,Ke,"rounding",0,8,"toExpNeg",-Qe,0,"toExpPos",0,Qe,"maxE",0,Qe,"minE",-Qe,0,"modulo",0,9];for(e=0;e<o.length;e+=3)if(t=o[e],i&&(this[t]=Rt[t]),(n=r[t])!==void 0)if(ae(n)===n&&n>=o[e+1]&&n<=o[e+2])this[t]=n;else throw Error(ve+t+": "+n);if(t="crypto",i&&(this[t]=Rt[t]),(n=r[t])!==void 0)if(n===!0||n===!1||n===0||n===1)if(n)if(typeof crypto<"u"&&crypto&&(crypto.getRandomValues||crypto.randomBytes))this[t]=!0;else throw Error(bn);else this[t]=!1;else throw Error(ve+t+": "+n);return this}function xr(r){return new this(r).cos()}function Ar(r){return new this(r).cosh()}function Bn(r){var e,t,n;function i(o){var s,a,u,c=this;if(!(c instanceof i))return new i(o);if(c.constructor=i,pn(o)){c.s=o.s,B?!o.d||o.e>i.maxE?(c.e=NaN,c.d=null):o.e<i.minE?(c.e=0,c.d=[0]):(c.e=o.e,c.d=o.d.slice()):(c.e=o.e,c.d=o.d?o.d.slice():o.d);return}if(u=typeof o,u==="number"){if(o===0){c.s=1/o<0?-1:1,c.e=0,c.d=[0];return}if(o<0?(o=-o,c.s=-1):c.s=1,o===~~o&&o<1e7){for(s=0,a=o;a>=10;a/=10)s++;B?s>i.maxE?(c.e=NaN,c.d=null):s<i.minE?(c.e=0,c.d=[0]):(c.e=s,c.d=[o]):(c.e=s,c.d=[o]);return}else if(o*0!==0){o||(c.s=NaN),c.e=NaN,c.d=null;return}return Dt(c,o.toString())}else if(u!=="string")throw Error(ve+o);return(a=o.charCodeAt(0))===45?(o=o.slice(1),c.s=-1):(a===43&&(o=o.slice(1)),c.s=1),wn.test(o)?Dt(c,o):sr(c,o)}if(i.prototype=p,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=Tr,i.clone=Bn,i.isDecimal=pn,i.abs=ur,i.acos=cr,i.acosh=lr,i.add=mr,i.asin=dr,i.asinh=fr,i.atan=pr,i.atanh=gr,i.atan2=hr,i.cbrt=br,i.ceil=yr,i.clamp=wr,i.cos=xr,i.cosh=Ar,i.div=kr,i.exp=Pr,i.floor=Br,i.hypot=Ir,i.ln=Nr,i.log=Sr,i.log10=Lr,i.log2=Cr,i.max=Er,i.min=Rr,i.mod=Fr,i.mul=Or,i.pow=Dr,i.random=Mr,i.round=_r,i.sign=vr,i.sin=Kr,i.sinh=qr,i.sqrt=Gr,i.sub=Vr,i.sum=Ur,i.tan=Wr,i.tanh=Xr,i.trunc=zr,r===void 0&&(r={}),r&&r.defaults!==!0)for(n=["precision","rounding","toExpNeg","toExpPos","maxE","minE","modulo","crypto"],e=0;e<n.length;)r.hasOwnProperty(t=n[e++])||(r[t]=this[t]);return i.config(r),i}function kr(r,e){return new this(r).div(e)}function Pr(r){return new this(r).exp()}function Br(r){return x(r=new this(r),r.e+1,3)}function Ir(){var r,e,t=new this(0);for(B=!1,r=0;r<arguments.length;)if(e=new this(arguments[r++]),e.d)t.d&&(t=t.plus(e.times(e)));else{if(e.s)return B=!0,new this(1/0);t=e}return B=!0,t.sqrt()}function pn(r){return r instanceof rt||r&&r.toStringTag===yn||!1}function Nr(r){return new this(r).ln()}function Sr(r,e){return new this(r).log(e)}function Cr(r){return new this(r).log(2)}function Lr(r){return new this(r).log(10)}function Er(){return An(this,arguments,"lt")}function Rr(){return An(this,arguments,"gt")}function Fr(r,e){return new this(r).mod(e)}function Or(r,e){return new this(r).mul(e)}function Dr(r,e){return new this(r).pow(e)}function Mr(r){var e,t,n,i,o=0,s=new this(1),a=[];if(r===void 0?r=this.precision:me(r,1,Ke),n=Math.ceil(r/A),this.crypto)if(crypto.getRandomValues)for(e=crypto.getRandomValues(new Uint32Array(n));o<n;)i=e[o],i>=429e7?e[o]=crypto.getRandomValues(new Uint32Array(1))[0]:a[o++]=i%1e7;else if(crypto.randomBytes){for(e=crypto.randomBytes(n*=4);o<n;)i=e[o]+(e[o+1]<<8)+(e[o+2]<<16)+((e[o+3]&127)<<24),i>=214e7?crypto.randomBytes(4).copy(e,o):(a.push(i%1e7),o+=4);o=n/4}else throw Error(bn);else for(;o<n;)a[o++]=Math.random()*1e7|0;for(n=a[--o],r%=A,n&&r&&(i=J(10,A-r),a[o]=(n/i|0)*i);a[o]===0;o--)a.pop();if(o<0)t=0,a=[0];else{for(t=-1;a[0]===0;t-=A)a.shift();for(n=1,i=a[0];i>=10;i/=10)n++;n<A&&(t-=A-n)}return s.e=t,s.d=a,s}function _r(r){return x(r=new this(r),r.e+1,this.rounding)}function vr(r){return r=new this(r),r.d?r.d[0]?r.s:0*r.s:r.s||NaN}function Kr(r){return new this(r).sin()}function qr(r){return new this(r).sinh()}function Gr(r){return new this(r).sqrt()}function Vr(r,e){return new this(r).sub(e)}function Ur(){var r=0,e=arguments,t=new this(e[r]);for(B=!1;t.s&&++r<e.length;)t=t.plus(e[r]);return B=!0,x(t,this.precision,this.rounding)}function Wr(r){return new this(r).tan()}function Xr(r){return new this(r).tanh()}function zr(r){return x(r=new this(r),r.e+1,1)}p[Symbol.for("nodejs.util.inspect.custom")]=p.toString;p[Symbol.toStringTag]="Decimal";var rt=p.constructor=Bn(Rt);gt=new rt(gt);ht=new rt(ht);var k=rt;import{get as In,set as Hr}from"lodash";import Sn from"dayjs";import Yr from"dayjs/plugin/utc";Sn.extend(Yr);var _t=class{constructor(e){this.logLevel=e.logLevel!==void 0?e.logLevel:0,this.name=e.name}set level(e){this.logLevel=e}get time(){return Sn().utc().format("YYYY/MM/DD HH:mm:ss UTC")}get moduleName(){return this.name}isLogLevel(e){return e<=this.logLevel}error(...e){return this.isLogLevel(0)?(console.error(this.time,this.name,"sdk logger error",...e),this):this}logWithError(...e){let t=e.map(n=>typeof n=="object"?JSON.stringify(n):n).join(", ");throw new Error(t)}warning(...e){return this.isLogLevel(1)?(console.warn(this.time,this.name,"sdk logger warning",...e),this):this}info(...e){return this.isLogLevel(2)?(console.info(this.time,this.name,"sdk logger info",...e),this):this}debug(...e){return this.isLogLevel(3)?(console.debug(this.time,this.name,"sdk logger debug",...e),this):this}},Nn={},Zr={};function he(r){let e=In(Nn,r);if(!e){let t=In(Zr,r);e=new _t({name:r,logLevel:t}),Hr(Nn,r,e)}return e}import{PublicKey as _s}from"@solana/web3.js";import Ks from"bn.js";import mi from"big.js";import It from"bn.js";import de from"bn.js";import{PublicKey as Gt}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as jr}from"@solana/spl-token";import{PublicKey as W,SystemProgram as Qr,SYSVAR_RENT_PUBKEY as Jr}from"@solana/web3.js";function vt({pubkey:r,isSigner:e=!1,isWritable:t=!0}){return{pubkey:r,isWritable:t,isSigner:e}}var ji=[vt({pubkey:jr,isWritable:!1}),vt({pubkey:Qr.programId,isWritable:!1}),vt({pubkey:Jr,isWritable:!1})];function Kt({publicKey:r,transformSol:e}){let t=Cn(r.toString());if(t instanceof W)return e&&t.equals(Ge)?xt:t;if(e&&t.toString()===Ge.toBase58())return xt;if(typeof t=="string"){if(t===W.default.toBase58())return W.default;try{return new W(t)}catch{throw new Error("invalid public key")}}throw new Error("invalid public key")}function Cn(r){try{return new W(r)}catch{return r}}var Qi=new W("MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"),Ji=new W("SysvarRent111111111111111111111111111111111"),$i=new W("SysvarC1ock11111111111111111111111111111111"),$r=new W("metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),eo=new W("Sysvar1nstructions1111111111111111111111111"),to=new W("4k3Dyjzvzp8eMZWUXbBCjEvwSkkk59S5iCNLY3QrkX6R"),no=new W("Ea5SjE2Y6yvCeW5dYTn7PYMuW5ikXkvbGdcmSnXeaLjS"),ro=new W("SRMuApVNdxXokk5GT7XD5cUUgXMBCoAz2LHeuAoKWRt"),io=new W("EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"),oo=new W("Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB"),so=new W("mSoLzYCxHdYgdzU16g5QSh3i5K3z3KZK7ytfqcJm7So"),ao=new W("7dHbWXmci3dT8UFYWYZweBLXgycu7Y3iL6trKn1Y7ARj"),uo=new W("USDH1SM1ojwWUga67PGrgFWUHibbjqMvuMaDkRJTgkX"),co=new W("NRVwhjBQiUPYtfDT5zRBVJajzFQHaBUNtC7SNVvqRFa"),lo=new W("ANAxByE6G2WjFp7A4NqtWYXb3mgruyzZYg3spfxe6Lbo"),mo=new W("7vfCXTUXx5WJV5JADk17DUJ4ksgau7utNKj4b963voxs"),xt=new W("So11111111111111111111111111111111111111112"),Ge=W.default;function qt(r){return Kt({publicKey:r,transformSol:!0})}import{PublicKey as ei}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as Ln}from"@solana/spl-token";var At={chainId:101,address:ei.default.toBase58(),programId:Ln.toBase58(),decimals:9,symbol:"SOL",name:"solana",logoURI:"https://img.raydium.io/icon/So11111111111111111111111111111111111111112.png",tags:[],priority:2,type:"raydium",extensions:{coingeckoId:"solana"}},Ve={chainId:101,address:"So11111111111111111111111111111111111111112",programId:Ln.toBase58(),decimals:9,symbol:"WSOL",name:"Wrapped SOL",logoURI:"https://img.raydium.io/icon/So11111111111111111111111111111111111111112.png",tags:[],priority:2,type:"raydium",extensions:{coingeckoId:"solana"}};var Vt=class{constructor({mint:e,decimals:t,symbol:n,name:i,skipMint:o=!1,isToken2022:s=!1}){if(e===Ge.toBase58()||e instanceof Gt&&Ge.equals(e)){this.decimals=Ve.decimals,this.symbol=Ve.symbol,this.name=Ve.name,this.mint=new Gt(Ve.address),this.isToken2022=!1;return}this.decimals=t,this.symbol=n||e.toString().substring(0,6),this.name=i||e.toString().substring(0,6),this.mint=o?Gt.default:Kt({publicKey:e}),this.isToken2022=s}equals(e){return this===e?!0:this.mint.equals(e.mint)}},Re=Vt;Re.WSOL=new Vt(ne(Z({},Ve),{mint:Ve.address}));import Pt from"big.js";import ri from"bn.js";import ii from"decimal.js-light";import ti from"toformat";var ni=ti,it=ni;var kt=he("module/fraction"),Ut=it(Pt),ot=it(ii),oi={[0]:ot.ROUND_DOWN,[1]:ot.ROUND_HALF_UP,[2]:ot.ROUND_UP},si={[0]:Pt.roundDown,[1]:Pt.roundHalfUp,[2]:Pt.roundUp},D=class{constructor(e,t=new ri(1)){this.numerator=ye(e),this.denominator=ye(t)}get quotient(){return this.numerator.div(this.denominator)}invert(){return new D(this.denominator,this.numerator)}add(e){let t=e instanceof D?e:new D(ye(e));return this.denominator.eq(t.denominator)?new D(this.numerator.add(t.numerator),this.denominator):new D(this.numerator.mul(t.denominator).add(t.numerator.mul(this.denominator)),this.denominator.mul(t.denominator))}sub(e){let t=e instanceof D?e:new D(ye(e));return this.denominator.eq(t.denominator)?new D(this.numerator.sub(t.numerator),this.denominator):new D(this.numerator.mul(t.denominator).sub(t.numerator.mul(this.denominator)),this.denominator.mul(t.denominator))}mul(e){let t=e instanceof D?e:new D(ye(e));return new D(this.numerator.mul(t.numerator),this.denominator.mul(t.denominator))}div(e){let t=e instanceof D?e:new D(ye(e));return new D(this.numerator.mul(t.denominator),this.denominator.mul(t.numerator))}toSignificant(e,t={groupSeparator:""},n=1){Number.isInteger(e)||kt.logWithError(`${e} is not an integer.`),e<=0&&kt.logWithError(`${e} is not positive.`),ot.set({precision:e+1,rounding:oi[n]});let i=new ot(this.numerator.toString()).div(this.denominator.toString()).toSignificantDigits(e);return i.toFormat(i.decimalPlaces(),t)}toFixed(e,t={groupSeparator:""},n=1){return Number.isInteger(e)||kt.logWithError(`${e} is not an integer.`),e<0&&kt.logWithError(`${e} is negative.`),Ut.DP=e,Ut.RM=si[n]||1,new Ut(this.numerator.toString()).div(this.denominator.toString()).toFormat(e,t)}isZero(){return this.numerator.isZero()}};var ui=he("Raydium_price"),ke=class extends D{constructor(t){let{baseToken:n,quoteToken:i,numerator:o,denominator:s}=t;super(o,s);this.baseToken=n,this.quoteToken=i,this.scalar=new D(Wt(n.decimals),Wt(i.decimals))}get raw(){return new D(this.numerator,this.denominator)}get adjusted(){return super.mul(this.scalar)}invert(){return new ke({baseToken:this.quoteToken,quoteToken:this.baseToken,denominator:this.numerator,numerator:this.denominator})}mul(t){this.quoteToken!==t.baseToken&&ui.logWithError("mul token not equals");let n=super.mul(t);return new ke({baseToken:this.baseToken,quoteToken:t.quoteToken,denominator:n.denominator,numerator:n.numerator})}toSignificant(t=this.quoteToken.decimals,n,i){return this.adjusted.toSignificant(t,n,i)}toFixed(t=this.quoteToken.decimals,n,i){return this.adjusted.toFixed(t,n,i)}};var Xt=class{constructor({decimals:e,symbol:t="UNKNOWN",name:n="UNKNOWN"}){this.decimals=e,this.symbol=t,this.name=n}equals(e){return this===e}},Bt=Xt;Bt.SOL=new Xt(At);import ci from"bn.js";var En=new D(new ci(100)),Ue=class extends D{toSignificant(e=5,t,n){return this.mul(En).toSignificant(e,t,n)}toFixed(e=2,t,n){return this.mul(En).toFixed(e,t,n)}};var li=new de(0),us=new de(1),cs=new de(2),ls=new de(3),ms=new de(5),zt=new de(10),ds=new de(100),fs=new de(1e3),ps=new de(1e4),Rn=9007199254740991;function ye(r){let e=he("Raydium_parseBigNumberish");if(r instanceof de)return r;if(typeof r=="string"){if(r.match(/^-?[0-9]+$/))return new de(r);e.logWithError(`invalid BigNumberish string: ${r}`)}return typeof r=="number"?(r%1&&e.logWithError(`BigNumberish number underflow: ${r}`),(r>=Rn||r<=-Rn)&&e.logWithError(`BigNumberish number overflow: ${r}`),new de(String(r))):typeof r=="bigint"?new de(r.toString()):(e.error(`invalid BigNumberish value: ${r}`),new de(0))}function Wt(r){return zt.pow(ye(r))}var di=he("Raydium_amount"),Fn=it(mi);function fi(r,e){let t="0",n="0";if(r.includes(".")){let i=r.split(".");i.length===2?([t,n]=i,n=n.padEnd(e,"0")):di.logWithError(`invalid number string, num: ${r}`)}else t=r;return[t,n.slice(0,e)||n]}var ue=class extends D{constructor(t,n,i=!0,o){let s=new It(0),a=zt.pow(new It(t.decimals));if(i)s=ye(n);else{let u=new It(0),c=new It(0);if(typeof n=="string"||typeof n=="number"||typeof n=="bigint"){let[l,m]=fi(n.toString(),t.decimals);u=ye(l),c=ye(m)}u=u.mul(a),s=u.add(c)}super(s,a);this.logger=he(o||"TokenAmount"),this.token=t}get raw(){return this.numerator}isZero(){return this.raw.isZero()}gt(t){return this.token.equals(t.token)||this.logger.logWithError("gt token not equals"),this.raw.gt(t.raw)}lt(t){return this.token.equals(t.token)||this.logger.logWithError("lt token not equals"),this.raw.lt(t.raw)}add(t){return this.token.equals(t.token)||this.logger.logWithError("add token not equals"),new ue(this.token,this.raw.add(t.raw))}subtract(t){return this.token.equals(t.token)||this.logger.logWithError("sub token not equals"),new ue(this.token,this.raw.sub(t.raw))}toSignificant(t=this.token.decimals,n,i=0){return super.toSignificant(t,n,i)}toFixed(t=this.token.decimals,n,i=0){return t>this.token.decimals&&this.logger.logWithError("decimals overflow"),super.toFixed(t,n,i)}toExact(t={groupSeparator:""}){return Fn.DP=this.token.decimals,new Fn(this.numerator.toString()).div(this.denominator.toString()).toFormat(t)}};import{PublicKey as Ea,sendAndConfirmTransaction as Ra,Transaction as Oa,TransactionMessage as Ma,VersionedTransaction as _a}from"@solana/web3.js";import Ka from"axios";import{PublicKey as pi,ComputeBudgetProgram as Hs,Transaction as Zs,TransactionMessage as Qs,Keypair as Js,VersionedTransaction as ea}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as na}from"@solana/spl-token";var oa=he("Raydium_txUtil");function Nt(r,e){let[t,n]=pi.findProgramAddressSync(r,e);return{publicKey:t,nonce:n}}import{PublicKey as hi,AddressLookupTableAccount as On}from"@solana/web3.js";import{PublicKey as gi}from"@solana/web3.js";import{getTransferFeeConfig as da,unpackMint as fa}from"@solana/spl-token";var Ht=he("Raydium_accountInfo_util");async function We(r,e,t){let{batchRequest:n,commitment:i="confirmed"}=Z({batchRequest:!1},t),o=Yt(e,100),s=new Array(o.length).fill([]);if(n){let a=o.map(l=>{let m=r._buildArgs([l.map(d=>d.toBase58())],i,"base64");return{methodName:"getMultipleAccounts",args:m}}),u=Yt(a,10);s=(await(await Promise.all(u.map(async l=>await r._rpcBatchRequest(l)))).flat()).map(l=>(l.error&&Ht.logWithError(`failed to get info for multiple accounts, RPC_ERROR, ${l.error.message}`),l.result.value.map(m=>{if(m){let{data:d,executable:f,lamports:b,owner:g,rentEpoch:h}=m;return d.length!==2&&d[1]!=="base64"&&Ht.logWithError("info must be base64 encoded, RPC_ERROR"),{data:Buffer.from(d[0],"base64"),executable:f,lamports:b,owner:new gi(g),rentEpoch:h}}return null})))}else try{s=await Promise.all(o.map(a=>r.getMultipleAccountsInfo(a,i)))}catch(a){a instanceof Error&&Ht.logWithError(`failed to get info for multiple accounts, RPC_ERROR, ${a.message}`)}return s.flat()}async function Zt(r,e,t){let n=await We(r,e.map(i=>i.pubkey),t);return e.map((i,o)=>ne(Z({},i),{accountInfo:n[o]}))}var bi={"2immgwYNHBbyVQKVGCEkgWpi53bLwWNRMB5G2nbgYV17":new On({key:new hi("2immgwYNHBbyVQKVGCEkgWpi53bLwWNRMB5G2nbgYV17"),state:On.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"))})};function Yt(r,e=1,t=[]){let n=[...r];if(e<=0)return t;for(;n.length;)t.push(n.splice(0,e));return t}import{PublicKey as fe}from"@solana/web3.js";var Za=new fe("EhhTKczWMGQt46ynNeRX1WfeagwwJd7ufHvCDjRxjo5Q"),ja=new fe("9KEPoZmtHUrBbhWN1v1KWLMkkvwY6WLtAVUCPRtRjP4z"),Qa=new fe("FarmqiPv5eAj3j1GMdMCMUGXqPUvmquZtMy86QH6rzhG"),Ja=new fe("CLaimxFqjHzgTJtAGHU47NPhg6qrc5sCnpC4tBLyABQS"),$a=new fe("srmqPvymJeFKQ4zGQed1GFppgkRHL9kaELCbyksJtPX"),eu=new fe("9xQeWvG816bUx9EPjHmaT23yvVM2ZWbrrpZb9PusVFin"),tu=new fe("675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8"),nu=new fe("5quBtoiQqxF9Jv6KYKctB59NT3gtJD2Y65kdnB1Uev3h"),ru=new fe("CAMMCzo5YL8w4VFF8KVHrK22GGUsp5VTaW7grrKgrWqK"),iu=new fe("routeUGWgWzqBWFcrCfv8tritsqukccJPu3q5GPP3xS"),ou=new fe("6FJon3QE27qgPVggARueB22hLvoh22VzJpXv4rBEoSLF"),su=new fe("CC12se5To1CdEuw7fDS27B7Geo5jJyL7t5UK2B44NgiH"),au=new fe("9HzJyW1qZsEiSfMUf6L2jo3CcTKAyBmSyKdwQeYisHrC"),uu=new fe("DropEU8AvevN3UrXWXTMuz3rqnMczQVNjq3kcSdW2SQi");import{PublicKey as mu}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as pu}from"@solana/spl-token";import j from"bn.js";var Se=1e4;function St(r,e,t,n){if(e===void 0)return{amount:r,fee:void 0,expirationTime:void 0};let i=t.epoch<e.newerTransferFee.epoch?e.olderTransferFee:e.newerTransferFee,o=new j(i.maximumFee.toString()),s=t.epoch<e.newerTransferFee.epoch?(Number(e.newerTransferFee.epoch)*t.slotsInEpoch-t.absoluteSlot)*400/1e3:void 0;if(n)if(i.transferFeeBasisPoints===Se){let a=new j(i.maximumFee.toString());return{amount:r.add(a),fee:a,expirationTime:s}}else{let a=$e(r.mul(new j(Se)),new j(Se-i.transferFeeBasisPoints)),u=new j(i.maximumFee.toString()),c=a.sub(r).gt(u)?r.add(u):a,l=$e(c.mul(new j(i.transferFeeBasisPoints)),new j(Se)),m=l.gt(o)?o:l;return{amount:c,fee:m,expirationTime:s}}else{let a=$e(r.mul(new j(i.transferFeeBasisPoints)),new j(Se)),u=a.gt(o)?o:a;return{amount:r,fee:u,expirationTime:s}}}function re(r,e,t,n){if(e===void 0)return{amount:r,fee:void 0,expirationTime:void 0};let i=ne(Z({},e),{olderTransferFee:{epoch:BigInt(e.olderTransferFee.epoch),maximumFee:BigInt(e.olderTransferFee.maximumFee),transferFeeBasisPoints:e.olderTransferFee.transferFeeBasisPoints},newerTransferFee:{epoch:BigInt(e.newerTransferFee.epoch),maximumFee:BigInt(e.newerTransferFee.maximumFee),transferFeeBasisPoints:e.newerTransferFee.transferFeeBasisPoints}}),o=t.epoch<i.newerTransferFee.epoch?i.olderTransferFee:i.newerTransferFee,s=new j(o.maximumFee.toString()),a=t.epoch<i.newerTransferFee.epoch?(Number(i.newerTransferFee.epoch)*t.slotsInEpoch-t.absoluteSlot)*400/1e3:void 0;if(n)if(o.transferFeeBasisPoints===Se){let u=new j(o.maximumFee.toString());return{amount:r.add(u),fee:u,expirationTime:a}}else{let u=$e(r.mul(new j(Se)),new j(Se-o.transferFeeBasisPoints)),c=new j(o.maximumFee.toString()),l=u.sub(r).gt(c)?r.add(c):u,m=$e(l.mul(new j(o.transferFeeBasisPoints)),new j(Se)),d=m.gt(s)?s:m;return{amount:l,fee:d,expirationTime:a}}else{let u=$e(r.mul(new j(o.transferFeeBasisPoints)),new j(Se)),c=u.gt(s)?s:u;return{amount:r,fee:c,expirationTime:a}}}function Xe(r,e){return r===void 0?e:e===void 0?r:Math.min(r,e)}function $e(r,e){let{div:t,mod:n}=r.divmod(e);return n.gt(new j(0))?t.add(new j(1)):t}function Dn(r){let e=new ArrayBuffer(4);return new DataView(e).setInt32(0,r,!1),new Uint8Array(e)}function jt(r,e){let t=0;for(let n=r-1;n>=0&&!e.testn(n);n--)t++;return t}function Qt(r,e){let t=0;for(let n=0;n<r&&!e.testn(n);n++)t++;return t}function st(r,e){for(let t=0;t<r;t++)if(e.testn(t))return!1;return!0}function Mn(r,e){return st(r,e)?null:jt(r,e)}function _n(r,e){return st(r,e)?null:Qt(r,e)}var Ku=Buffer.from("amm_config","utf8"),qu=Buffer.from("pool","utf8"),Gu=Buffer.from("pool_vault","utf8"),Vu=Buffer.from("pool_reward_vault","utf8"),yi=Buffer.from("position","utf8"),wi=Buffer.from("tick_array","utf8"),Uu=Buffer.from("operation","utf8"),Wu=Buffer.from("pool_tick_array_bitmap_extension","utf8");function le(r,e,t){return Nt([wi,e.toBuffer(),Dn(t)],r)}function vn(r,e){return Nt([yi,e.toBuffer()],r)}import Mi from"bn.js";import{PublicKey as Si}from"@solana/web3.js";import Vn,{isBN as Un}from"bn.js";import{bits as Hu,BitStructure as Yu,blob as Ti,Blob as Zu,cstr as ju,f32 as Qu,f32be as Ju,f64 as $u,f64be as ec,greedy as tc,Layout as xi,ns64 as nc,ns64be as rc,nu64 as ic,nu64be as oc,offset as sc,s16 as ac,s16be as uc,s24 as cc,s24be as lc,s32 as Ai,s32be as mc,s40 as dc,s40be as fc,s48 as pc,s48be as gc,s8 as hc,seq as ki,struct as bc,Structure as Pi,u16 as Bi,u16be as yc,u24 as wc,u24be as Tc,u32 as xc,u32be as Ac,u40 as kc,u40be as Pc,u48 as Bc,u48be as Ic,u8 as Ii,UInt as Ni,union as Nc,Union as Sc,u