UNPKG

snapper-sdk

Version:

An SDK for building applications on top of Snapper.

1 lines 67.4 kB
import{PublicKey as S,SystemProgram as me,SYSVAR_CLOCK_PUBKEY as Ke,SYSVAR_RENT_PUBKEY as ei,TransactionInstruction as U}from"@solana/web3.js";import Xe from"bn.js";import{ASSOCIATED_TOKEN_PROGRAM_ID as ti,createAssociatedTokenAccountInstruction as ri,TOKEN_PROGRAM_ID as X}from"@solana/spl-token";import{PublicKey as yi}from"@solana/web3.js";import{get as It,set as fr}from"lodash";var Je=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 r=t.map(n=>typeof n=="object"?JSON.stringify(n):n).join(", ");throw new Error(r)}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}},Bt={},dr={};function O(e){let t=It(Bt,e);if(!t){let r=It(dr,e);t=new Je({name:e,logLevel:r}),fr(Bt,e,t)}return t}import{MINT_SIZE as Pi,TOKEN_PROGRAM_ID as Ti,getTransferFeeConfig as xi,unpackMint as Si}from"@solana/spl-token";var ki=O("Raydium_accountInfo_util");import ne from"bn.js";var be=9e15,ce=1e9,et="0123456789abcdef",ve="2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058",Me="3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789",tt={precision:20,rounding:4,modulo:1,toExpNeg:-7,toExpPos:21,minE:-be,maxE:be,crypto:!1},Kt,re,T=!0,De="[DecimalError] ",ue=De+"Invalid argument: ",_t=De+"Precision limit exceeded",Vt=De+"crypto unavailable",Et="[object Decimal]",H=Math.floor,D=Math.pow,pr=/^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i,mr=/^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i,gr=/^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i,vt=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,J=1e7,P=7,yr=9007199254740991,hr=ve.length-1,rt=Me.length-1,m={toStringTag:Et};m.absoluteValue=m.abs=function(){var e=new this.constructor(this);return e.s<0&&(e.s=1),b(e)};m.ceil=function(){return b(new this.constructor(this),this.e+1,2)};m.clampedTo=m.clamp=function(e,t){var r,n=this,i=n.constructor;if(e=new i(e),t=new i(t),!e.s||!t.s)return new i(NaN);if(e.gt(t))throw Error(ue+t);return r=n.cmp(e),r<0?e:n.cmp(t)>0?t:new i(n)};m.comparedTo=m.cmp=function(e){var t,r,n,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(n=s.length,i=a.length,t=0,r=n<i?n:i;t<r;++t)if(s[t]!==a[t])return s[t]>a[t]^c<0?1:-1;return n===i?0:n>i^c<0?1:-1};m.cosine=m.cos=function(){var e,t,r=this,n=r.constructor;return r.d?r.d[0]?(e=n.precision,t=n.rounding,n.precision=e+Math.max(r.e,r.sd())+P,n.rounding=1,r=br(n,Ot(n,r)),n.precision=e,n.rounding=t,b(re==2||re==3?r.neg():r,e,t,!0)):new n(1):new n(NaN)};m.cubeRoot=m.cbrt=function(){var e,t,r,n,i,o,s,a,c,u,l=this,f=l.constructor;if(!l.isFinite()||l.isZero())return new f(l);for(T=!1,o=l.s*D(l.s*l,1/3),!o||Math.abs(o)==1/0?(r=q(l.d),e=l.e,(o=(e-r.length+1)%3)&&(r+=o==1||o==-2?"0":"00"),o=D(r,1/3),e=H((e+1)/3)-(e%3==(e<0?-1:2)),o==1/0?r="5e"+e:(r=o.toExponential(),r=r.slice(0,r.indexOf("e")+1)+e),n=new f(r),n.s=l.s):n=new f(o.toString()),s=(e=f.precision)+3;;)if(a=n,c=a.times(a).times(a),u=c.plus(l),n=K(u.plus(l).times(a),u.plus(c),s+2,1),q(a.d).slice(0,s)===(r=q(n.d)).slice(0,s))if(r=r.slice(s-3,s+1),r=="9999"||!i&&r=="4999"){if(!i&&(b(a,e+1,0),a.times(a).times(a).eq(l))){n=a;break}s+=4,i=1}else{(!+r||!+r.slice(1)&&r.charAt(0)=="5")&&(b(n,e+1,1),t=!n.times(n).times(n).eq(l));break}return T=!0,b(n,e,f.rounding,t)};m.decimalPlaces=m.dp=function(){var e,t=this.d,r=NaN;if(t){if(e=t.length-1,r=(e-H(this.e/P))*P,e=t[e],e)for(;e%10==0;e/=10)r--;r<0&&(r=0)}return r};m.dividedBy=m.div=function(e){return K(this,new this.constructor(e))};m.dividedToIntegerBy=m.divToInt=function(e){var t=this,r=t.constructor;return b(K(t,new r(e),0,1,1),r.precision,r.rounding)};m.equals=m.eq=function(e){return this.cmp(e)===0};m.floor=function(){return b(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,r,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;r=s.precision,n=s.rounding,s.precision=r+Math.max(o.e,o.sd())+4,s.rounding=1,i=o.d.length,i<32?(e=Math.ceil(i/3),t=(1/Oe(4,e)).toString()):(e=16,t="2.3283064365386962890625e-10"),o=we(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 b(o,s.precision=r,s.rounding=n,!0)};m.hyperbolicSine=m.sinh=function(){var e,t,r,n,i=this,o=i.constructor;if(!i.isFinite()||i.isZero())return new o(i);if(t=o.precision,r=o.rounding,o.precision=t+Math.max(i.e,i.sd())+4,o.rounding=1,n=i.d.length,n<3)i=we(o,2,i,i,!0);else{e=1.4*Math.sqrt(n),e=e>16?16:e|0,i=i.times(1/Oe(5,e)),i=we(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=r,b(i,t,r,!0)};m.hyperbolicTangent=m.tanh=function(){var e,t,r=this,n=r.constructor;return r.isFinite()?r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+7,n.rounding=1,K(r.sinh(),r.cosh(),n.precision=e,n.rounding=t)):new n(r.s)};m.inverseCosine=m.acos=function(){var e,t=this,r=t.constructor,n=t.abs().cmp(1),i=r.precision,o=r.rounding;return n!==-1?n===0?t.isNeg()?Q(r,i,o):new r(0):new r(NaN):t.isZero()?Q(r,i+4,o).times(.5):(r.precision=i+6,r.rounding=1,t=t.asin(),e=Q(r,i+4,o).times(.5),r.precision=i,r.rounding=o,e.minus(t))};m.inverseHyperbolicCosine=m.acosh=function(){var e,t,r=this,n=r.constructor;return r.lte(1)?new n(r.eq(1)?0:NaN):r.isFinite()?(e=n.precision,t=n.rounding,n.precision=e+Math.max(Math.abs(r.e),r.sd())+4,n.rounding=1,T=!1,r=r.times(r).minus(1).sqrt().plus(r),T=!0,n.precision=e,n.rounding=t,r.ln()):new n(r)};m.inverseHyperbolicSine=m.asinh=function(){var e,t,r=this,n=r.constructor;return!r.isFinite()||r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+2*Math.max(Math.abs(r.e),r.sd())+6,n.rounding=1,T=!1,r=r.times(r).plus(1).sqrt().plus(r),T=!0,n.precision=e,n.rounding=t,r.ln())};m.inverseHyperbolicTangent=m.atanh=function(){var e,t,r,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):(e=o.precision,t=o.rounding,n=i.sd(),Math.max(n,e)<2*-i.e-1?b(new o(i),e,t,!0):(o.precision=r=n-i.e,i=K(i.plus(1),new o(1).minus(i),r+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,r,n,i=this,o=i.constructor;return i.isZero()?new o(i):(t=i.abs().cmp(1),r=o.precision,n=o.rounding,t!==-1?t===0?(e=Q(o,r+4,n).times(.5),e.s=i.s,e):new o(NaN):(o.precision=r+6,o.rounding=1,i=i.div(new o(1).minus(i.times(i)).sqrt().plus(1)).atan(),o.precision=r,o.rounding=n,i.times(2)))};m.inverseTangent=m.atan=function(){var e,t,r,n,i,o,s,a,c,u=this,l=u.constructor,f=l.precision,d=l.rounding;if(u.isFinite()){if(u.isZero())return new l(u);if(u.abs().eq(1)&&f+4<=rt)return s=Q(l,f+4,d).times(.25),s.s=u.s,s}else{if(!u.s)return new l(NaN);if(f+4<=rt)return s=Q(l,f+4,d).times(.5),s.s=u.s,s}for(l.precision=a=f+10,l.rounding=1,r=Math.min(28,a/P+2|0),e=r;e;--e)u=u.div(u.times(u).plus(1).sqrt().plus(1));for(T=!1,t=Math.ceil(a/P),n=1,c=u.times(u),s=new l(u),i=u;e!==-1;)if(i=i.times(c),o=s.minus(i.div(n+=2)),i=i.times(c),s=o.plus(i.div(n+=2)),s.d[t]!==void 0)for(e=t;s.d[e]===o.d[e]&&e--;);return r&&(s=s.times(2<<r-1)),T=!0,b(s,l.precision=f,l.rounding=d,!0)};m.isFinite=function(){return!!this.d};m.isInteger=m.isInt=function(){return!!this.d&&H(this.e/P)>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,r,n,i,o,s,a,c,u=this,l=u.constructor,f=l.precision,d=l.rounding,g=5;if(e==null)e=new l(10),t=!0;else{if(e=new l(e),r=e.d,e.s<0||!r||!r[0]||e.eq(1))return new l(NaN);t=e.eq(10)}if(r=u.d,u.s<0||!r||!r[0]||u.eq(1))return new l(r&&!r[0]?-1/0:u.s!=1?NaN:r?0:1/0);if(t)if(r.length>1)o=!0;else{for(i=r[0];i%10===0;)i/=10;o=i!==1}if(T=!1,a=f+g,s=ae(u,a),n=t?Fe(l,a+10):ae(e,a),c=K(s,n,a,1),ke(c.d,i=f,d))do if(a+=10,s=ae(u,a),n=t?Fe(l,a+10):ae(e,a),c=K(s,n,a,1),!o){+q(c.d).slice(i+1,i+15)+1==1e14&&(c=b(c,f+1,0));break}while(ke(c.d,i+=10,d));return T=!0,b(c,f,d)};m.minus=m.sub=function(e){var t,r,n,i,o,s,a,c,u,l,f,d,g=this,w=g.constructor;if(e=new w(e),!g.d||!e.d)return!g.s||!e.s?e=new w(NaN):g.d?e.s=-e.s:e=new w(e.d||g.s!==e.s?g:NaN),e;if(g.s!=e.s)return e.s=-e.s,g.plus(e);if(u=g.d,d=e.d,a=w.precision,c=w.rounding,!u[0]||!d[0]){if(d[0])e.s=-e.s;else if(u[0])e=new w(g);else return new w(c===3?-0:0);return T?b(e,a,c):e}if(r=H(e.e/P),l=H(g.e/P),u=u.slice(),o=l-r,o){for(f=o<0,f?(t=u,o=-o,s=d.length):(t=d,r=l,s=u.length),n=Math.max(Math.ceil(a/P),s)+2,o>n&&(o=n,t.length=1),t.reverse(),n=o;n--;)t.push(0);t.reverse()}else{for(n=u.length,s=d.length,f=n<s,f&&(s=n),n=0;n<s;n++)if(u[n]!=d[n]){f=u[n]<d[n];break}o=0}for(f&&(t=u,u=d,d=t,e.s=-e.s),s=u.length,n=d.length-s;n>0;--n)u[s++]=0;for(n=d.length;n>o;){if(u[--n]<d[n]){for(i=n;i&&u[--i]===0;)u[i]=J-1;--u[i],u[n]+=J}u[n]-=d[n]}for(;u[--s]===0;)u.pop();for(;u[0]===0;u.shift())--r;return u[0]?(e.d=u,e.e=We(u,r),T?b(e,a,c):e):new w(c===3?-0:0)};m.modulo=m.mod=function(e){var t,r=this,n=r.constructor;return e=new n(e),!r.d||!e.s||e.d&&!e.d[0]?new n(NaN):!e.d||r.d&&!r.d[0]?b(new n(r),n.precision,n.rounding):(T=!1,n.modulo==9?(t=K(r,e.abs(),0,3,1),t.s*=e.s):t=K(r,e,0,n.modulo,1),t=t.times(e),T=!0,r.minus(t))};m.naturalExponential=m.exp=function(){return nt(this)};m.naturalLogarithm=m.ln=function(){return ae(this)};m.negated=m.neg=function(){var e=new this.constructor(this);return e.s=-e.s,b(e)};m.plus=m.add=function(e){var t,r,n,i,o,s,a,c,u,l,f=this,d=f.constructor;if(e=new d(e),!f.d||!e.d)return!f.s||!e.s?e=new d(NaN):f.d||(e=new d(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=d.precision,c=d.rounding,!u[0]||!l[0])return l[0]||(e=new d(f)),T?b(e,a,c):e;if(o=H(f.e/P),n=H(e.e/P),u=u.slice(),i=o-n,i){for(i<0?(r=u,i=-i,s=l.length):(r=l,n=o,s=u.length),o=Math.ceil(a/P),s=o>s?o+1:s+1,i>s&&(i=s,r.length=1),r.reverse();i--;)r.push(0);r.reverse()}for(s=u.length,i=l.length,s-i<0&&(i=s,r=l,l=u,u=r),t=0;i;)t=(u[--i]=u[i]+l[i]+t)/J|0,u[i]%=J;for(t&&(u.unshift(t),++n),s=u.length;u[--s]==0;)u.pop();return e.d=u,e.e=We(u,n),T?b(e,a,c):e};m.precision=m.sd=function(e){var t,r=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(ue+e);return r.d?(t=Mt(r.d),e&&r.e+1>t&&(t=r.e+1)):t=NaN,t};m.round=function(){var e=this,t=e.constructor;return b(new t(e),e.e+1,t.rounding)};m.sine=m.sin=function(){var e,t,r=this,n=r.constructor;return r.isFinite()?r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+Math.max(r.e,r.sd())+P,n.rounding=1,r=Pr(n,Ot(n,r)),n.precision=e,n.rounding=t,b(re>2?r.neg():r,e,t,!0)):new n(NaN)};m.squareRoot=m.sqrt=function(){var e,t,r,n,i,o,s=this,a=s.d,c=s.e,u=s.s,l=s.constructor;if(u!==1||!a||!a[0])return new l(!u||u<0&&(!a||a[0])?NaN:a?s:1/0);for(T=!1,u=Math.sqrt(+s),u==0||u==1/0?(t=q(a),(t.length+c)%2==0&&(t+="0"),u=Math.sqrt(t),c=H((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),n=new l(t)):n=new l(u.toString()),r=(c=l.precision)+3;;)if(o=n,n=o.plus(K(s,o,r+2,1)).times(.5),q(o.d).slice(0,r)===(t=q(n.d)).slice(0,r))if(t=t.slice(r-3,r+1),t=="9999"||!i&&t=="4999"){if(!i&&(b(o,c+1,0),o.times(o).eq(s))){n=o;break}r+=4,i=1}else{(!+t||!+t.slice(1)&&t.charAt(0)=="5")&&(b(n,c+1,1),e=!n.times(n).eq(s));break}return T=!0,b(n,c,l.rounding,e)};m.tangent=m.tan=function(){var e,t,r=this,n=r.constructor;return r.isFinite()?r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+10,n.rounding=1,r=r.sin(),r.s=1,r=K(r,new n(1).minus(r.times(r)).sqrt(),e+10,0),n.precision=e,n.rounding=t,b(re==2||re==4?r.neg():r,e,t,!0)):new n(NaN)};m.times=m.mul=function(e){var t,r,n,i,o,s,a,c,u,l=this,f=l.constructor,d=l.d,g=(e=new f(e)).d;if(e.s*=l.s,!d||!d[0]||!g||!g[0])return new f(!e.s||d&&!d[0]&&!g||g&&!g[0]&&!d?NaN:!d||!g?e.s/0:e.s*0);for(r=H(l.e/P)+H(e.e/P),c=d.length,u=g.length,c<u&&(o=d,d=g,g=o,s=c,c=u,u=s),o=[],s=c+u,n=s;n--;)o.push(0);for(n=u;--n>=0;){for(t=0,i=c+n;i>n;)a=o[i]+g[n]*d[i-n-1]+t,o[i--]=a%J|0,t=a/J|0;o[i]=(o[i]+t)%J|0}for(;!o[--s];)o.pop();return t?++r:o.shift(),e.d=o,e.e=We(o,r),T?b(e,f.precision,f.rounding):e};m.toBinary=function(e,t){return ot(this,2,e,t)};m.toDecimalPlaces=m.toDP=function(e,t){var r=this,n=r.constructor;return r=new n(r),e===void 0?r:(Y(e,0,ce),t===void 0?t=n.rounding:Y(t,0,8),b(r,e+r.e+1,t))};m.toExponential=function(e,t){var r,n=this,i=n.constructor;return e===void 0?r=ee(n,!0):(Y(e,0,ce),t===void 0?t=i.rounding:Y(t,0,8),n=b(new i(n),e+1,t),r=ee(n,!0,e+1)),n.isNeg()&&!n.isZero()?"-"+r:r};m.toFixed=function(e,t){var r,n,i=this,o=i.constructor;return e===void 0?r=ee(i):(Y(e,0,ce),t===void 0?t=o.rounding:Y(t,0,8),n=b(new o(i),e+i.e+1,t),r=ee(n,!1,e+n.e+1)),i.isNeg()&&!i.isZero()?"-"+r:r};m.toFraction=function(e){var t,r,n,i,o,s,a,c,u,l,f,d,g=this,w=g.d,h=g.constructor;if(!w)return new h(g);if(u=r=new h(1),n=c=new h(0),t=new h(n),o=t.e=Mt(w)-g.e-1,s=o%P,t.d[0]=D(10,s<0?P+s:s),e==null)e=o>0?t:u;else{if(a=new h(e),!a.isInt()||a.lt(u))throw Error(ue+a);e=a.gt(t)?o>0?t:u:a}for(T=!1,a=new h(q(w)),l=h.precision,h.precision=o=w.length*P*2;f=K(a,t,0,1,1),i=r.plus(f.times(n)),i.cmp(e)!=1;)r=n,n=i,i=u,u=c.plus(f.times(i)),c=i,i=t,t=a.minus(f.times(i)),a=i;return i=K(e.minus(r),n,0,1,1),c=c.plus(i.times(u)),r=r.plus(i.times(n)),c.s=u.s=g.s,d=K(u,n,o,1).minus(g).abs().cmp(K(c,r,o,1).minus(g).abs())<1?[u,n]:[c,r],h.precision=l,T=!0,d};m.toHexadecimal=m.toHex=function(e,t){return ot(this,16,e,t)};m.toNearest=function(e,t){var r=this,n=r.constructor;if(r=new n(r),e==null){if(!r.d)return r;e=new n(1),t=n.rounding}else{if(e=new n(e),t===void 0?t=n.rounding:Y(t,0,8),!r.d)return e.s?r:e;if(!e.d)return e.s&&(e.s=r.s),e}return e.d[0]?(T=!1,r=K(r,e,0,t,1).times(e),T=!0,b(r)):(e.s=r.s,r=e),r};m.toNumber=function(){return+this};m.toOctal=function(e,t){return ot(this,8,e,t)};m.toPower=m.pow=function(e){var t,r,n,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(D(+a,u));if(a=new c(a),a.eq(1))return a;if(n=c.precision,o=c.rounding,e.eq(1))return b(a,n,o);if(t=H(e.e/P),t>=e.d.length-1&&(r=u<0?-u:u)<=yr)return i=Ft(c,a,r,n),e.s<0?new c(1).div(i):b(i,n,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 r=D(+a,u),t=r==0||!isFinite(r)?H(u*(Math.log("0."+q(a.d))/Math.LN10+a.e+1)):new c(r+"").e,t>c.maxE+1||t<c.minE-1?new c(t>0?s/0:0):(T=!1,c.rounding=a.s=1,r=Math.min(12,(t+"").length),i=nt(e.times(ae(a,n+r)),n),i.d&&(i=b(i,n+5,1),ke(i.d,n,o)&&(t=n+10,i=b(nt(e.times(ae(a,t+r)),t),t+5,1),+q(i.d).slice(n+1,n+15)+1==1e14&&(i=b(i,n+1,0)))),i.s=s,T=!0,c.rounding=o,b(i,n,o))};m.toPrecision=function(e,t){var r,n=this,i=n.constructor;return e===void 0?r=ee(n,n.e<=i.toExpNeg||n.e>=i.toExpPos):(Y(e,1,ce),t===void 0?t=i.rounding:Y(t,0,8),n=b(new i(n),e,t),r=ee(n,e<=n.e||n.e<=i.toExpNeg,e)),n.isNeg()&&!n.isZero()?"-"+r:r};m.toSignificantDigits=m.toSD=function(e,t){var r=this,n=r.constructor;return e===void 0?(e=n.precision,t=n.rounding):(Y(e,1,ce),t===void 0?t=n.rounding:Y(t,0,8)),b(new n(r),e,t)};m.toString=function(){var e=this,t=e.constructor,r=ee(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()&&!e.isZero()?"-"+r:r};m.truncated=m.trunc=function(){return b(new this.constructor(this),this.e+1,1)};m.valueOf=m.toJSON=function(){var e=this,t=e.constructor,r=ee(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()?"-"+r:r};function q(e){var t,r,n,i=e.length-1,o="",s=e[0];if(i>0){for(o+=s,t=1;t<i;t++)n=e[t]+"",r=P-n.length,r&&(o+=se(r)),o+=n;s=e[t],n=s+"",r=P-n.length,r&&(o+=se(r))}else if(s===0)return"0";for(;s%10===0;)s/=10;return o+s}function Y(e,t,r){if(e!==~~e||e<t||e>r)throw Error(ue+e)}function ke(e,t,r,n){var i,o,s,a;for(o=e[0];o>=10;o/=10)--t;return--t<0?(t+=P,i=0):(i=Math.ceil((t+1)/P),t%=P),o=D(10,P-t),a=e[i]%o|0,n==null?t<3?(t==0?a=a/100|0:t==1&&(a=a/10|0),s=r<4&&a==99999||r>3&&a==49999||a==5e4||a==0):s=(r<4&&a+1==o||r>3&&a+1==o/2)&&(e[i+1]/o/100|0)==D(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=(n||r<4)&&a==9999||!n&&r>3&&a==4999):s=((n||r<4)&&a+1==o||!n&&r>3&&a+1==o/2)&&(e[i+1]/o/1e3|0)==D(10,t-3)-1,s}function Ee(e,t,r){for(var n,i=[0],o,s=0,a=e.length;s<a;){for(o=i.length;o--;)i[o]*=t;for(i[0]+=et.indexOf(e.charAt(s++)),n=0;n<i.length;n++)i[n]>r-1&&(i[n+1]===void 0&&(i[n+1]=0),i[n+1]+=i[n]/r|0,i[n]%=r)}return i.reverse()}function br(e,t){var r,n,i;if(t.isZero())return t;n=t.d.length,n<32?(r=Math.ceil(n/3),i=(1/Oe(4,r)).toString()):(r=16,i="2.3283064365386962890625e-10"),e.precision+=r,t=we(e,1,t.times(i),new e(1));for(var o=r;o--;){var s=t.times(t);t=s.times(s).minus(s).times(8).plus(1)}return e.precision-=r,t}var K=function(){function e(n,i,o){var s,a=0,c=n.length;for(n=n.slice();c--;)s=n[c]*i+a,n[c]=s%o|0,a=s/o|0;return a&&n.unshift(a),n}function t(n,i,o,s){var a,c;if(o!=s)c=o>s?1:-1;else for(a=c=0;a<o;a++)if(n[a]!=i[a]){c=n[a]>i[a]?1:-1;break}return c}function r(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,c){var u,l,f,d,g,w,h,N,R,W,I,F,oe,j,le,Se,ge,ye,Z,he,Ve=n.constructor,Qe=n.s==i.s?1:-1,G=n.d,_=i.d;if(!G||!G[0]||!_||!_[0])return new Ve(!n.s||!i.s||(G?_&&G[0]==_[0]:!_)?NaN:G&&G[0]==0||!_?Qe*0:Qe/0);for(c?(g=1,l=n.e-i.e):(c=J,g=P,l=H(n.e/g)-H(i.e/g)),Z=_.length,ge=G.length,R=new Ve(Qe),W=R.d=[],f=0;_[f]==(G[f]||0);f++);if(_[f]>(G[f]||0)&&l--,o==null?(j=o=Ve.precision,s=Ve.rounding):a?j=o+(n.e-i.e)+1:j=o,j<0)W.push(1),w=!0;else{if(j=j/g+2|0,f=0,Z==1){for(d=0,_=_[0],j++;(f<ge||d)&&j--;f++)le=d*c+(G[f]||0),W[f]=le/_|0,d=le%_|0;w=d||f<ge}else{for(d=c/(_[0]+1)|0,d>1&&(_=e(_,d,c),G=e(G,d,c),Z=_.length,ge=G.length),Se=Z,I=G.slice(0,Z),F=I.length;F<Z;)I[F++]=0;he=_.slice(),he.unshift(0),ye=_[0],_[1]>=c/2&&++ye;do d=0,u=t(_,I,Z,F),u<0?(oe=I[0],Z!=F&&(oe=oe*c+(I[1]||0)),d=oe/ye|0,d>1?(d>=c&&(d=c-1),h=e(_,d,c),N=h.length,F=I.length,u=t(h,I,N,F),u==1&&(d--,r(h,Z<N?he:_,N,c))):(d==0&&(u=d=1),h=_.slice()),N=h.length,N<F&&h.unshift(0),r(I,h,F,c),u==-1&&(F=I.length,u=t(_,I,Z,F),u<1&&(d++,r(I,Z<F?he:_,F,c))),F=I.length):u===0&&(d++,I=[0]),W[f++]=d,u&&I[0]?I[F++]=G[Se]||0:(I=[G[Se]],F=1);while((Se++<ge||I[0]!==void 0)&&j--);w=I[0]!==void 0}W[0]||W.shift()}if(g==1)R.e=l,Kt=w;else{for(f=1,d=W[0];d>=10;d/=10)f++;R.e=f+l*g-1,b(R,a?o+R.e+1:o,s,w)}return R}}();function b(e,t,r,n){var i,o,s,a,c,u,l,f,d,g=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+=P,s=t,l=f[d=0],c=l/D(10,i-s-1)%10|0;else if(d=Math.ceil((o+1)/P),a=f.length,d>=a)if(n){for(;a++<=d;)f.push(0);l=c=0,i=1,o%=P,s=o-P+1}else break e;else{for(l=a=f[d],i=1;a>=10;a/=10)i++;o%=P,s=o-P+i,c=s<0?0:l/D(10,i-s-1)%10|0}if(n=n||t<0||f[d+1]!==void 0||(s<0?l:l%D(10,i-s-1)),u=r<4?(c||n)&&(r==0||r==(e.s<0?3:2)):c>5||c==5&&(r==4||n||r==6&&(o>0?s>0?l/D(10,i-s):0:f[d-1])%10&1||r==(e.s<0?8:7)),t<1||!f[0])return f.length=0,u?(t-=e.e+1,f[0]=D(10,(P-t%P)%P),e.e=-t||0):f[0]=e.e=0,e;if(o==0?(f.length=d,a=1,d--):(f.length=d+1,a=D(10,P-o),f[d]=s>0?(l/D(10,i-s)%D(10,s)|0)*a:0),u)for(;;)if(d==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]==J&&(f[0]=1));break}else{if(f[d]+=a,f[d]!=J)break;f[d--]=0,a=1}for(o=f.length;f[--o]===0;)f.pop()}return T&&(e.e>g.maxE?(e.d=null,e.e=NaN):e.e<g.minE&&(e.e=0,e.d=[0])),e}function ee(e,t,r){if(!e.isFinite())return Wt(e);var n,i=e.e,o=q(e.d),s=o.length;return t?(r&&(n=r-s)>0?o=o.charAt(0)+"."+o.slice(1)+se(n):s>1&&(o=o.charAt(0)+"."+o.slice(1)),o=o+(e.e<0?"e":"e+")+e.e):i<0?(o="0."+se(-i-1)+o,r&&(n=r-s)>0&&(o+=se(n))):i>=s?(o+=se(i+1-s),r&&(n=r-i-1)>0&&(o=o+"."+se(n))):((n=i+1)<s&&(o=o.slice(0,n)+"."+o.slice(n)),r&&(n=r-s)>0&&(i+1===s&&(o+="."),o+=se(n))),o}function We(e,t){var r=e[0];for(t*=P;r>=10;r/=10)t++;return t}function Fe(e,t,r){if(t>hr)throw T=!0,r&&(e.precision=r),Error(_t);return b(new e(ve),t,1,!0)}function Q(e,t,r){if(t>rt)throw Error(_t);return b(new e(Me),t,r,!0)}function Mt(e){var t=e.length-1,r=t*P+1;if(t=e[t],t){for(;t%10==0;t/=10)r--;for(t=e[0];t>=10;t/=10)r++}return r}function se(e){for(var t="";e--;)t+="0";return t}function Ft(e,t,r,n){var i,o=new e(1),s=Math.ceil(n/P+4);for(T=!1;;){if(r%2&&(o=o.times(t),Ct(o.d,s)&&(i=!0)),r=H(r/2),r===0){r=o.d.length-1,i&&o.d[r]===0&&++o.d[r];break}t=t.times(t),Ct(t.d,s)}return T=!0,o}function Rt(e){return e.d[e.d.length-1]&1}function Dt(e,t,r){for(var n,i=new e(t[0]),o=0;++o<t.length;)if(n=new e(t[o]),n.s)i[r](n)&&(i=n);else{i=n;break}return i}function nt(e,t){var r,n,i,o,s,a,c,u=0,l=0,f=0,d=e.constructor,g=d.rounding,w=d.precision;if(!e.d||!e.d[0]||e.e>17)return new d(e.d?e.d[0]?e.s<0?0:1/0:1:e.s?e.s<0?0:e:0/0);for(t==null?(T=!1,c=w):c=t,a=new d(.03125);e.e>-2;)e=e.times(a),f+=5;for(n=Math.log(D(2,f))/Math.LN10*2+5|0,c+=n,r=o=s=new d(1),d.precision=c;;){if(o=b(o.times(e),c,1),r=r.times(++l),a=s.plus(K(o,r,c,1)),q(a.d).slice(0,c)===q(s.d).slice(0,c)){for(i=f;i--;)s=b(s.times(s),c,1);if(t==null)if(u<3&&ke(s.d,c-n,g,u))d.precision=c+=10,r=o=a=new d(1),l=0,u++;else return b(s,d.precision=w,g,T=!0);else return d.precision=w,s}s=a}}function ae(e,t){var r,n,i,o,s,a,c,u,l,f,d,g=1,w=10,h=e,N=h.d,R=h.constructor,W=R.rounding,I=R.precision;if(h.s<0||!N||!N[0]||!h.e&&N[0]==1&&N.length==1)return new R(N&&!N[0]?-1/0:h.s!=1?NaN:N?0:h);if(t==null?(T=!1,l=I):l=t,R.precision=l+=w,r=q(N),n=r.charAt(0),Math.abs(o=h.e)<15e14){for(;n<7&&n!=1||n==1&&r.charAt(1)>3;)h=h.times(e),r=q(h.d),n=r.charAt(0),g++;o=h.e,n>1?(h=new R("0."+r),o++):h=new R(n+"."+r.slice(1))}else return u=Fe(R,l+2,I).times(o+""),h=ae(new R(n+"."+r.slice(1)),l-w).plus(u),R.precision=I,t==null?b(h,I,W,T=!0):h;for(f=h,c=s=h=K(h.minus(1),h.plus(1),l,1),d=b(h.times(h),l,1),i=3;;){if(s=b(s.times(d),l,1),u=c.plus(K(s,new R(i),l,1)),q(u.d).slice(0,l)===q(c.d).slice(0,l))if(c=c.times(2),o!==0&&(c=c.plus(Fe(R,l+2,I).times(o+""))),c=K(c,new R(g),l,1),t==null)if(ke(c.d,l-w,W,a))R.precision=l+=w,u=s=h=K(f.minus(1),f.plus(1),l,1),d=b(h.times(h),l,1),i=a=1;else return b(c,R.precision=I,W,T=!0);else return R.precision=I,c;c=u,i+=2}}function Wt(e){return String(e.s*e.s/0)}function it(e,t){var r,n,i;for((r=t.indexOf("."))>-1&&(t=t.replace(".","")),(n=t.search(/e/i))>0?(r<0&&(r=n),r+=+t.slice(n+1),t=t.substring(0,n)):r<0&&(r=t.length),n=0;t.charCodeAt(n)===48;n++);for(i=t.length;t.charCodeAt(i-1)===48;--i);if(t=t.slice(n,i),t){if(i-=n,e.e=r=r-n-1,e.d=[],n=(r+1)%P,r<0&&(n+=P),n<i){for(n&&e.d.push(+t.slice(0,n)),i-=P;n<i;)e.d.push(+t.slice(n,n+=P));t=t.slice(n),n=P-t.length}else n-=i;for(;n--;)t+="0";e.d.push(+t),T&&(e.e>e.constructor.maxE?(e.d=null,e.e=NaN):e.e<e.constructor.minE&&(e.e=0,e.d=[0]))}else e.e=0,e.d=[0];return e}function wr(e,t){var r,n,i,o,s,a,c,u,l;if(t.indexOf("_")>-1){if(t=t.replace(/(\d)_(?=\d)/g,"$1"),vt.test(t))return it(e,t)}else if(t==="Infinity"||t==="NaN")return+t||(e.s=NaN),e.e=NaN,e.d=null,e;if(mr.test(t))r=16,t=t.toLowerCase();else if(pr.test(t))r=2;else if(gr.test(t))r=8;else throw Error(ue+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,n=e.constructor,s&&(t=t.replace(".",""),a=t.length,o=a-o,i=Ft(n,new n(r),o,o*2)),u=Ee(t,r,J),l=u.length-1,o=l;u[o]===0;--o)u.pop();return o<0?new n(e.s*0):(e.e=We(u,l),e.d=u,T=!1,s&&(e=K(e,i,a*4)),c&&(e=e.times(Math.abs(c)<54?D(2,c):Ue.pow(2,c))),T=!0,e)}function Pr(e,t){var r,n=t.d.length;if(n<3)return t.isZero()?t:we(e,2,t,t);r=1.4*Math.sqrt(n),r=r>16?16:r|0,t=t.times(1/Oe(5,r)),t=we(e,2,t,t);for(var i,o=new e(5),s=new e(16),a=new e(20);r--;)i=t.times(t),t=t.times(o.plus(i.times(s.times(i).minus(a))));return t}function we(e,t,r,n,i){var o,s,a,c,u=1,l=e.precision,f=Math.ceil(l/P);for(T=!1,c=r.times(r),a=new e(n);;){if(s=K(a.times(c),new e(t++*t++),l,1),a=i?n.plus(s):n.minus(s),n=K(s.times(c),new e(t++*t++),l,1),s=a.plus(n),s.d[f]!==void 0){for(o=f;s.d[o]===a.d[o]&&o--;);if(o==-1)break}o=a,a=n,n=s,s=o,u++}return T=!0,s.d.length=f+1,s}function Oe(e,t){for(var r=e;--t;)r*=e;return r}function Ot(e,t){var r,n=t.s<0,i=Q(e,e.precision,1),o=i.times(.5);if(t=t.abs(),t.lte(o))return re=n?4:1,t;if(r=t.divToInt(i),r.isZero())re=n?3:2;else{if(t=t.minus(r.times(i)),t.lte(o))return re=Rt(r)?n?2:3:n?4:1,t;re=Rt(r)?n?1:4:n?3:2}return t.minus(i).abs()}function ot(e,t,r,n){var i,o,s,a,c,u,l,f,d,g=e.constructor,w=r!==void 0;if(w?(Y(r,1,ce),n===void 0?n=g.rounding:Y(n,0,8)):(r=g.precision,n=g.rounding),!e.isFinite())l=Wt(e);else{for(l=ee(e),s=l.indexOf("."),w?(i=2,t==16?r=r*4-3:t==8&&(r=r*3-2)):i=t,s>=0&&(l=l.replace(".",""),d=new g(1),d.e=l.length-s,d.d=Ee(ee(d),10,i),d.e=d.d.length),f=Ee(l,10,i),o=c=f.length;f[--c]==0;)f.pop();if(!f[0])l=w?"0p+0":"0";else{if(s<0?o--:(e=new g(e),e.d=f,e.e=o,e=K(e,d,r,n,0,i),f=e.d,o=e.e,u=Kt),s=f[r],a=i/2,u=u||f[r+1]!==void 0,u=n<4?(s!==void 0||u)&&(n===0||n===(e.s<0?3:2)):s>a||s===a&&(n===4||u||n===6&&f[r-1]&1||n===(e.s<0?8:7)),f.length=r,u)for(;++f[--r]>i-1;)f[r]=0,r||(++o,f.unshift(1));for(c=f.length;!f[c-1];--c);for(s=0,l="";s<c;s++)l+=et.charAt(f[s]);if(w){if(c>1)if(t==16||t==8){for(s=t==16?4:3,--c;c%s;c++)l+="0";for(f=Ee(l,i,t),c=f.length;!f[c-1];--c);for(s=1,l="1.";s<c;s++)l+=et.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 Ct(e,t){if(e.length>t)return e.length=t,!0}function Tr(e){return new this(e).abs()}function xr(e){return new this(e).acos()}function Sr(e){return new this(e).acosh()}function kr(e,t){return new this(e).plus(t)}function Ar(e){return new this(e).asin()}function Lr(e){return new this(e).asinh()}function Ir(e){return new this(e).atan()}function Br(e){return new this(e).atanh()}function Rr(e,t){e=new this(e),t=new this(t);var r,n=this.precision,i=this.rounding,o=n+4;return!e.s||!t.s?r=new this(NaN):!e.d&&!t.d?(r=Q(this,o,1).times(t.s>0?.25:.75),r.s=e.s):!t.d||e.isZero()?(r=t.s<0?Q(this,n,i):new this(0),r.s=e.s):!e.d||t.isZero()?(r=Q(this,o,1).times(.5),r.s=e.s):t.s<0?(this.precision=o,this.rounding=1,r=this.atan(K(e,t,o,1)),t=Q(this,o,1),this.precision=n,this.rounding=i,r=e.s<0?r.minus(t):r.plus(t)):r=this.atan(K(e,t,o,1)),r}function Cr(e){return new this(e).cbrt()}function Nr(e){return b(e=new this(e),e.e+1,2)}function Kr(e,t,r){return new this(e).clamp(t,r)}function _r(e){if(!e||typeof e!="object")throw Error(De+"Object expected");var t,r,n,i=e.defaults===!0,o=["precision",1,ce,"rounding",0,8,"toExpNeg",-be,0,"toExpPos",0,be,"maxE",0,be,"minE",-be,0,"modulo",0,9];for(t=0;t<o.length;t+=3)if(r=o[t],i&&(this[r]=tt[r]),(n=e[r])!==void 0)if(H(n)===n&&n>=o[t+1]&&n<=o[t+2])this[r]=n;else throw Error(ue+r+": "+n);if(r="crypto",i&&(this[r]=tt[r]),(n=e[r])!==void 0)if(n===!0||n===!1||n===0||n===1)if(n)if(typeof crypto<"u"&&crypto&&(crypto.getRandomValues||crypto.randomBytes))this[r]=!0;else throw Error(Vt);else this[r]=!1;else throw Error(ue+r+": "+n);return this}function Vr(e){return new this(e).cos()}function Er(e){return new this(e).cosh()}function Ut(e){var t,r,n;function i(o){var s,a,c,u=this;if(!(u instanceof i))return new i(o);if(u.constructor=i,Nt(o)){u.s=o.s,T?!o.d||o.e>i.maxE?(u.e=NaN,u.d=null):o.e<i.minE?(u.e=0,u.d=[0]):(u.e=o.e,u.d=o.d.slice()):(u.e=o.e,u.d=o.d?o.d.slice():o.d);return}if(c=typeof o,c==="number"){if(o===0){u.s=1/o<0?-1:1,u.e=0,u.d=[0];return}if(o<0?(o=-o,u.s=-1):u.s=1,o===~~o&&o<1e7){for(s=0,a=o;a>=10;a/=10)s++;T?s>i.maxE?(u.e=NaN,u.d=null):s<i.minE?(u.e=0,u.d=[0]):(u.e=s,u.d=[o]):(u.e=s,u.d=[o]);return}else if(o*0!==0){o||(u.s=NaN),u.e=NaN,u.d=null;return}return it(u,o.toString())}else if(c!=="string")throw Error(ue+o);return(a=o.charCodeAt(0))===45?(o=o.slice(1),u.s=-1):(a===43&&(o=o.slice(1)),u.s=1),vt.test(o)?it(u,o):wr(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=_r,i.clone=Ut,i.isDecimal=Nt,i.abs=Tr,i.acos=xr,i.acosh=Sr,i.add=kr,i.asin=Ar,i.asinh=Lr,i.atan=Ir,i.atanh=Br,i.atan2=Rr,i.cbrt=Cr,i.ceil=Nr,i.clamp=Kr,i.cos=Vr,i.cosh=Er,i.div=vr,i.exp=Mr,i.floor=Fr,i.hypot=Dr,i.ln=Wr,i.log=Or,i.log10=qr,i.log2=Ur,i.max=Gr,i.min=Hr,i.mod=jr,i.mul=zr,i.pow=Yr,i.random=Zr,i.round=Xr,i.sign=Qr,i.sin=Jr,i.sinh=$r,i.sqrt=en,i.sub=tn,i.sum=rn,i.tan=nn,i.tanh=on,i.trunc=sn,e===void 0&&(e={}),e&&e.defaults!==!0)for(n=["precision","rounding","toExpNeg","toExpPos","maxE","minE","modulo","crypto"],t=0;t<n.length;)e.hasOwnProperty(r=n[t++])||(e[r]=this[r]);return i.config(e),i}function vr(e,t){return new this(e).div(t)}function Mr(e){return new this(e).exp()}function Fr(e){return b(e=new this(e),e.e+1,3)}function Dr(){var e,t,r=new this(0);for(T=!1,e=0;e<arguments.length;)if(t=new this(arguments[e++]),t.d)r.d&&(r=r.plus(t.times(t)));else{if(t.s)return T=!0,new this(1/0);r=t}return T=!0,r.sqrt()}function Nt(e){return e instanceof Ue||e&&e.toStringTag===Et||!1}function Wr(e){return new this(e).ln()}function Or(e,t){return new this(e).log(t)}function Ur(e){return new this(e).log(2)}function qr(e){return new this(e).log(10)}function Gr(){return Dt(this,arguments,"lt")}function Hr(){return Dt(this,arguments,"gt")}function jr(e,t){return new this(e).mod(t)}function zr(e,t){return new this(e).mul(t)}function Yr(e,t){return new this(e).pow(t)}function Zr(e){var t,r,n,i,o=0,s=new this(1),a=[];if(e===void 0?e=this.precision:Y(e,1,ce),n=Math.ceil(e/P),this.crypto)if(crypto.getRandomValues)for(t=crypto.getRandomValues(new Uint32Array(n));o<n;)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(n*=4);o<n;)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=n/4}else throw Error(Vt);else for(;o<n;)a[o++]=Math.random()*1e7|0;for(n=a[--o],e%=P,n&&e&&(i=D(10,P-e),a[o]=(n/i|0)*i);a[o]===0;o--)a.pop();if(o<0)r=0,a=[0];else{for(r=-1;a[0]===0;r-=P)a.shift();for(n=1,i=a[0];i>=10;i/=10)n++;n<P&&(r-=P-n)}return s.e=r,s.d=a,s}function Xr(e){return b(e=new this(e),e.e+1,this.rounding)}function Qr(e){return e=new this(e),e.d?e.d[0]?e.s:0*e.s:e.s||NaN}function Jr(e){return new this(e).sin()}function $r(e){return new this(e).sinh()}function en(e){return new this(e).sqrt()}function tn(e,t){return new this(e).sub(t)}function rn(){var e=0,t=arguments,r=new this(t[e]);for(T=!1;r.s&&++e<t.length;)r=r.plus(t[e]);return T=!0,b(r,this.precision,this.rounding)}function nn(e){return new this(e).tan()}function on(e){return new this(e).tanh()}function sn(e){return b(e=new this(e),e.e+1,1)}m[Symbol.for("nodejs.util.inspect.custom")]=m.toString;m[Symbol.toStringTag]="Decimal";var Ue=m.constructor=Ut(tt);ve=new Ue(ve);Me=new Ue(Me);import mn from"big.js";import Gi from"bn.js";import an from"toformat";var un=an,Ae=un;import Ge from"big.js";import ln from"bn.js";import fn from"decimal.js-light";import Le from"bn.js";var qt=9007199254740991;function E(e){let t=O("Raydium_parseBigNumberish");if(e instanceof Le)return e;if(typeof e=="string"){if(e.match(/^-?[0-9]+$/))return new Le(e);t.logWithError(`invalid BigNumberish string: ${e}`)}return typeof e=="number"?(e%1&&t.logWithError(`BigNumberish number underflow: ${e}`),(e>=qt||e<=-qt)&&t.logWithError(`BigNumberish number overflow: ${e}`),new Le(String(e))):typeof e=="bigint"?new Le(e.toString()):(t.error(`invalid BigNumberish value: ${e}`),new Le(0))}var qe=O("module/fraction"),st=Ae(Ge),Ie=Ae(fn),dn={[0]:Ie.ROUND_DOWN,[1]:Ie.ROUND_HALF_UP,[2]:Ie.ROUND_UP},pn={[0]:Ge.roundDown,[1]:Ge.roundHalfUp,[2]:Ge.roundUp},V=class{constructor(t,r=new ln(1)){this.numerator=E(t),this.denominator=E(r)}get quotient(){return this.numerator.div(this.denominator)}invert(){return new V(this.denominator,this.numerator)}add(t){let r=t instanceof V?t:new V(E(t));return this.denominator.eq(r.denominator)?new V(this.numerator.add(r.numerator),this.denominator):new V(this.numerator.mul(r.denominator).add(r.numerator.mul(this.denominator)),this.denominator.mul(r.denominator))}sub(t){let r=t instanceof V?t:new V(E(t));return this.denominator.eq(r.denominator)?new V(this.numerator.sub(r.numerator),this.denominator):new V(this.numerator.mul(r.denominator).sub(r.numerator.mul(this.denominator)),this.denominator.mul(r.denominator))}mul(t){let r=t instanceof V?t:new V(E(t));return new V(this.numerator.mul(r.numerator),this.denominator.mul(r.denominator))}div(t){let r=t instanceof V?t:new V(E(t));return new V(this.numerator.mul(r.denominator),this.denominator.mul(r.numerator))}toSignificant(t,r={groupSeparator:""},n=1){Number.isInteger(t)||qe.logWithError(`${t} is not an integer.`),t<=0&&qe.logWithError(`${t} is not positive.`),Ie.set({precision:t+1,rounding:dn[n]});let i=new Ie(this.numerator.toString()).div(this.denominator.toString()).toSignificantDigits(t);return i.toFormat(i.decimalPlaces(),r)}toFixed(t,r={groupSeparator:""},n=1){return Number.isInteger(t)||qe.logWithError(`${t} is not an integer.`),t<0&&qe.logWithError(`${t} is negative.`),st.DP=t,st.RM=pn[n]||1,new st(this.numerator.toString()).div(this.denominator.toString()).toFormat(t,r)}isZero(){return this.numerator.isZero()}};var $i=O("Raydium_amount"),eo=Ae(mn);import{PublicKey as yn}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as Gt}from"@solana/spl-token";var Ht={chainId:101,address:yn.default.toBase58(),programId:Gt.toBase58(),decimals:9,symbol:"SOL",name:"solana",logoURI:"https://img.raydium.io/icon/So11111111111111111111111111111111111111112.png",tags:[],priority:2,type:"raydium",extensions:{coingeckoId:"solana"}},fe={chainId:101,address:"So11111111111111111111111111111111111111112",programId:Gt.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 ct}from"@solana/web3.js";import{PublicKey as v,SystemProgram as jt,SYSVAR_RENT_PUBKEY as hn}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as bn}from"@solana/spl-token";function p({pubkey:e,isSigner:t=!1,isWritable:r=!0}){return{pubkey:e,isWritable:r,isSigner:t}}var at=[p({pubkey:bn,isWritable:!1}),p({pubkey:jt.programId,isWritable:!1}),p({pubkey:hn,isWritable:!1})];function zt({publicKey:e,transformSol:t}){let r=Yt(e.toString());if(r instanceof v)return t&&r.equals(de)?$e:r;if(t&&r.toString()===de.toBase58())return $e;if(typeof r=="string"){if(r===v.default.toBase58())return v.default;try{return new v(r)}catch{throw new Error("invalid public key")}}throw new Error("invalid public key")}function Yt(e){try{return new v(e)}catch{return e}}var uo=new v("MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"),co=new v("MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"),ut=new v("SysvarRent111111111111111111111111111111111"),lo=new v("SysvarC1ock11111111111111111111111111111111"),fo=new v("metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),He=new v("Sysvar1nstructions1111111111111111111111111"),po=jt.programId,mo=new v("2cpMA1jNS4obgRz8XNg38QuSP83L1AXpUgfxPNcvnAGj"),go=new v("Ea5SjE2Y6yvCeW5dYTn7PYMuW5ikXkvbGdcmSnXeaLjS"),yo=new v("SRMuApVNdxXokk5GT7XD5cUUgXMBCoAz2LHeuAoKWRt"),ho=new v("EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"),bo=new v("Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB"),wo=new v("mSoLzYCxHdYgdzU16g5QSh3i5K3z3KZK7ytfqcJm7So"),Po=new v("7dHbWXmci3dT8UFYWYZweBLXgycu7Y3iL6trKn1Y7ARj"),To=new v("USDH1SM1ojwWUga67PGrgFWUHibbjqMvuMaDkRJTgkX"),xo=new v("NRVwhjBQiUPYtfDT5zRBVJajzFQHaBUNtC7SNVvqRFa"),So=new v("ANAxByE6G2WjFp7A4NqtWYXb3mgruyzZYg3spfxe6Lbo"),ko=new v("7vfCXTUXx5WJV5JADk17DUJ4ksgau7utNKj4b963voxs"),$e=new v("So11111111111111111111111111111111111111112"),de=v.default;var lt=class{constructor({mint:t,decimals:r,symbol:n,name:i,skipMint:o=!1,isToken2022:s=!1}){if(t===de.toBase58()||t instanceof ct&&de.equals(t)){this.decimals=fe.decimals,this.symbol=fe.symbol,this.name=fe.name,this.mint=new ct(fe.address),this.isToken2022=!1;return}this.decimals=r,this.symbol=n||t.toString().substring(0,6),this.name=i||t.toString().substring(0,6),this.mint=o?ct.default:zt({publicKey:t}),this.isToken2022=s}equals(t){return this===t?!0:this.mint.equals(t.mint)}},Pe=lt;Pe.WSOL=new lt({...fe,mint:fe.address});var ft=class{constructor({decimals:t,symbol:r="UNKNOWN",name:n="UNKNOWN"}){this.decimals=t,this.symbol=r,this.name=n}equals(t){return this===t}},je=ft;je.SOL=new ft(Ht);import wn from"bn.js";var vo=new V(new wn(100));var Uo=O("Raydium_price");import{PublicKey as os}from"@solana/web3.js";import as from"bn.js";var Pn=new ne(0),Ls=new ne(1),Is=new ne(2),Bs=new ne(3),Rs=new ne(5),gn=new ne(10),Cs=new ne(100),Ns=new ne(1e3),Ks=new ne(1e4);import{PublicKey as xn}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as Sn}from"@solana/spl-token";import{ComputeBudgetProgram as Ws,Keypair as qs,PublicKey as Tn,Transaction as Hs,TransactionMessage as zs,VersionedTransaction as Ys}from"@solana/web3.js";var Be={CreateAccount:"CreateAccount",InitAccount:"InitAccount",CreateATA:"CreateATA",CloseAccount:"CloseAccount",TransferAmount:"TransferAmount",InitMint:"InitMint",MintTo:"MintTo",InitMarket:"InitMarket",Util1216OwnerClaim:"Util1216OwnerClaim",SetComputeUnitPrice:"SetComputeUnitPrice",SetComputeUnitLimit:"SetComputeUnitLimit",ClmmCreatePool:"ClmmCreatePool",ClmmOpenPosition:"ClmmOpenPosition",ClmmIncreasePosition:"ClmmIncreasePosition",ClmmDecreasePosition:"ClmmDecreasePosition",ClmmClosePosition:"ClmmClosePosition",ClmmSwapBaseIn:"ClmmSwapBaseIn",ClmmSwapBaseOut:"ClmmSwapBaseOut",ClmmInitReward:"ClmmInitReward",ClmmSetReward:"ClmmSetReward",ClmmCollectReward:"ClmmCollectReward",ClmmLockPosition:"ClmmLockPosition",ClmmHarvestLockPosition:"ClmmHarvestLockPosition",AmmV4Swap:"AmmV4Swap",AmmV4AddLiquidity:"AmmV4AddLiquidity",AmmV4RemoveLiquidity:"AmmV4RemoveLiquidity",AmmV4SimulatePoolInfo:"AmmV4SimulatePoolInfo",AmmV4SwapBaseIn:"AmmV4SwapBaseIn",AmmV4SwapBaseOut:"AmmV4SwapBaseOut",AmmV4CreatePool:"AmmV4CreatePool",AmmV4InitPool:"AmmV4InitPool",AmmV5AddLiquidity:"AmmV5AddLiquidity",AmmV5RemoveLiquidity:"AmmV5RemoveLiquidity",AmmV5SimulatePoolInfo:"AmmV5SimulatePoolInfo",AmmV5SwapBaseIn:"AmmV5SwapBaseIn",AmmV5SwapBaseOut:"AmmV5SwapBaseOut",RouteSwap:"RouteSwap",RouteSwap1:"RouteSwap1",RouteSwap2:"RouteSwap2",FarmV3Deposit:"FarmV3Deposit",FarmV3Withdraw:"FarmV3Withdraw",FarmV3CreateLedger:"FarmV3CreateLedger",FarmV5Deposit:"FarmV5Deposit",FarmV5Withdraw:"FarmV5Withdraw",FarmV5CreateLedger:"FarmV5CreateLedger",FarmV6Deposit:"FarmV6Deposit",FarmV6Withdraw:"FarmV6Withdraw",FarmV6Create:"FarmV6Create",FarmV6Restart:"FarmV6Restart",FarmV6CreatorAddReward:"FarmV6CreatorAddReward",FarmV6CreatorWithdraw:"FarmV6CreatorWithdraw",CpmmCreatePool:"CpmmCreatePool",CpmmCreateConfig:"CpmmCreateConfig",CpmmAddLiquidity:"CpmmAddLiquidity",CpmmWithdrawLiquidity:"CpmmWithdrawLiquidity",CpmmSwapBaseIn:"CpmmSwapBaseIn",CpmmSwapBaseOut:"CpmmSwapBaseOut",CpmmLockLp:"CpmmLockLp",CpmmCollectLockFee:"CpmmCollectLockFee"};import{TOKEN_PROGRAM_ID as Js}from"@solana/spl-token";var $s=O("Raydium_txUtil");function $(e,t){let[r,n]=Tn.findProgramAddressSync(e,t);return{publicKey:r,nonce:n}}function Re(e,t,r){return $([e.toBuffer(),(r!=null?r:Sn).toBuffer(),t.toBuffer()],new xn("ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"))}import{PublicKey as x}from"@solana/web3.js";var Jt=new x("EhhTKczWMGQt46ynNeRX1WfeagwwJd7ufHvCDjRxjo5Q"),$t=new x("9KEPoZmtHUrBbhWN1v1KWLMkkvwY6WLtAVUCPRtRjP4z"),er=new x("FarmqiPv5eAj3j1GMdMCMUGXqPUvmquZtMy86QH6rzhG"),sa=new x("CLaimxFqjHzgTJtAGHU47NPhg6qrc5sCnpC4tBLyABQS"),aa=new x("srmqPvymJeFKQ4zGQed1GFppgkRHL9kaELCbyksJtPX"),ua=new x("9xQeWvG816bUx9EPjHmaT23yvVM2ZWbrrpZb9PusVFin"),ca=new x("675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8"),la=new x("5quBtoiQqxF9Jv6KYKctB59NT3gtJD2Y65kdnB1Uev3h"),fa=new x("CDSr3ssLcRB6XYPJwAfFt18MZvEZp4LjHcvzBVZ45duo"),da=new x("CAMMCzo5YL8w4VFF8KVHrK22GGUsp5VTaW7grrKgrWqK"),pa=new x("LockrWmn6K5twhz3y9w1dQERbmgSaRkfnTeTKbpofwE"),ma=new x("kN1kEznaF5Xbd8LYuqtEFcxzWSBk5Fv6ygX6SqEGJVy"),ga=new x("routeUGWgWzqBWFcrCfv8tritsqukccJPu3q5GPP3xS"),ya=new x("7YttLkHDoNj9wyDur5pM1ejNaAvT9X4eqaYcHQqtj2G5"),ha=new x("6FJon3QE27qgPVggARueB22hLvoh22VzJpXv4rBEoSLF"),ba=new x("CC12se5To1CdEuw7fDS27B7Geo5jJyL7t5UK2B44NgiH"),wa=new x("9HzJyW1qZsEiSfMUf6L2jo3CcTKAyBmSyKdwQeYisHrC"),Pa=new x("DropEU8AvevN3UrXWXTMuz3rqnMczQVNjq3kcSdW2SQi"),Ta=new x("SNaPnpKUY656VPwbKmKT8FG4T85g4VWhRH1B4TQUfKs"),xa=new x("9pR79Lqe6wDNjag3v8MeVYUostoXjY2ognTydor6AtEZ"),Sa=new x("DNXgeM9EiiaAbaWvwjHj9fQQLAX5ZsfHyvmYUNRAdNC8"),kn=new x("4AscABy58S62owbByjUUkQfZsP7fxYH1rDYb69V58HPM"),An=new x("7rQ1QFNosMkUCuh7Z7fPbTHvh73b68sQYdirycEzJVuw"),Ln=new x("G11FKBRaAkHAKuLCgLM6K6NUc9rTjPAznRCjZifrTQe2"),ka=new x("LockrWmn6K5twhz3y9w1dQERbmgSaRkfnTeTKbpofwE"),In=new x("DLockwT7X7sxtLmGH9g5kmfcjaBtncdbUmi738m5bvQC"),Aa=new x("3f7GcQFG397GAaEnv51zR6tsTVihYRydnydDD1cXekxH"),Bn=new x("7AFUeLVRjBfzqK3tTGw8hN48KLQWSk6DTE8xprWdPqix");var La={SERUM_MARKET:x.default,OPENBOOK_MARKET:new x("EoTcMgcDRTJVZDMZWBoU6rhYHZfkNTVEAfz3uUJRcYGj"),UTIL1216:x.default,FarmV3:new x("85BFyr98MbCUU9MVTEgzx1nbhWACbJqLzho6zd6DZcWL"),FarmV5:new x("EcLzTrNg9V7qhcdyXDe2qjtPkiGzDM2UbdRaeaadU5r2"),FarmV6:new x("Farm2hJLcqPtPg8M4rR6DMrsRNc5TPm5Cs4bVQrMe2T7"),AmmV4:new x("HWy1jotHpo6UqeQxx49dpYYdQB8wj9Qk9MdxwjLvDHB8"),AmmStable:new x("DDg4VmQaJV9ogWce7LpcjBA9bv22wRp5uaTPa5pGjijF"),CLMM:new x("devi51mZmdwUJGU9hjN27vEz64Gps7uUefqxg27EAtH"),CLMM_LOCK_PROGRAM_ID:new x("DLockwT7X7sxtLmGH9g5kmfcjaBtncdbUmi738m5bvQC"),CLMM_LOCK_AUTH_ID:new x("8qmHNvu2Kr2C7U8mJL4Vz1vTDxMhVuXKREwU7TNoaVEo"),Router:new x("BVChZ3XFEwTMUk1o9i3HAf91H6mFxSwa5X2wFAWhYPhU"),CREATE_CPMM_POOL_PROGRAM:kn,CREATE_CPMM_POOL_AUTH:An,CREATE_CPMM_POOL_FEE_ACC:Ln,FEE_DESTINATION_ID:new x("3XMrhbv989VxAMi3DErLV9eJht1pHppW5LbKxe9fkEFR"),LOCK_CPMM_PROGRAM:In,LCOK_CPMM_AUTH:Bn};import Ra from"bn.js";import{PublicKey as Rn,AddressLookupTableAccount as tr}from"@solana/web3.js";var Cn={"2immgwYNHBbyVQKVGCEkgWpi53bLwWNRMB5G2nbgYV17":new tr({key:new Rn("2immgwYNHBbyVQKVGCEkgWpi53bLwWNRMB5G2nbgYV17"),state:tr.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 za,sendAndConfirmTransaction as Ya,Transaction as Xa,TransactionMessage as Ja,VersionedTransaction as $a}from"@solana/web3.js";import tu from"axios";import{PublicKey as Mn}from"@solana/web3.js";import or,{isBN as sr}from"bn.js";import{bits as Lu,BitStructure as Iu,blob as Nn,Blob as Bu,cstr as Ru,f32 as Cu,f32be as Nu,f64 as Ku,f64be as _u,greedy as Vu,Layout as Kn,ns64 as Eu,ns64be as vu,nu64 as Mu,nu64be as Fu,offset as Du,s16 as Wu,s16be as Ou,s24 as Uu,s24be as qu,s32 as Gu,s32be as Hu,s40 as ju,s40be as zu,s48 as Yu,s48be as Zu,s8 as Xu,seq as _n,struct as Qu,Structure as Vn,u16 as Ju,u16be as $u,u24 as ec,u24be as tc,u32 as rc,u32be as nc,u40 as ic,u40be as oc,u48 as sc,u48be as ac,u8 as En,UInt as vn,union as uc,Union as cc,unionLayoutDiscriminator as lc,utf8 as fc}from"@solana/buffer-layout";var dt=Kn,rr=Vn;var pt=vn;var nr=En;var ir=_n;var pe=Nn;var Te=class extends dt{constructor(r,n,i){super(r,i);this.blob=pe(r),this.signed=n}decode(r,n=0){let i=new or(this.blob.decode(r,n),10,"le");return this.signed?i.fromTwos(this.span*8).clone():i}encode(r,n,i=0){return typeof r=="number"&&(r=new or(r)),this.signed&&(r=r.toTwos(this.span*8)),this.blob.encode(r.toArrayLike(Buffer,"le",this.span),n,i)}};function C(e){return new pt(1,e)}function xe(e){return new pt(4,e)}function y(e){return new Te(8,!1,e)}function ie(e){return new Te(16,!1,e)}function ar(e){return new Te(1,!0,e)}function Ye(e){return new Te(8,!0,e)}var ze=class extends dt{constructor(r,n,i,o){super(r.span,o);this.layout=r,this.decoder=n,this.encoder=i}decode(r,n){return this.decoder(this.layout.decode(r,n))}encode(r,n,i){return this.layout.encode(this.encoder(r),n,i)}getSpan(r,n){return this.layout.getSpan(r,n)}};function k(e){return new ze(pe(32),t=>new Mn(t),t=>t.toBuffer(),e)}function Ce(e){return new ze(nr(),Fn,Dn,e)}function Fn(e){if(e===0)return!1;if(e===1)return!0;throw new Error("Invalid bool: "+e)}function Dn(e){return e?1:0}var mt=class extends rr{decode(t,r){return super.decode(t,r)}};function B(e,t,r){return new mt(e,t,r)}function M(e,t,r){let n,i=typeof t=="number"?t:sr(t)?t.toNumber():new Proxy(t,{get(o,s){if(!n){let a=Reflect.get(o,"count");n=sr(a)?a.toNumber():a,Reflect.set(o,"count",n)}return Reflect.get(o,s)},set(o,s,a){return s==="count"&&(n=a),Reflect.set(o,s,a)}});return ir(e,i,r)}import{PublicKey as lr}from"@solana/web3.js";var gt=B([C("instruction")]),yt=B([C("instruction")]),Wn=B([y("rewardState"),y("rewardOpenTime"),y("rewardEndTime"),y("rewardLastUpdateTime"),y("totalReward"),y("totalRewardEmissioned"),y("rewardClaimed"),y("rewardPerSecond"),ie("accRewardPerShare"),k("rewardVault"),k("rewardMint"),k("rewardSender"),y("rewardType"),M(y(),15,"padding")]),On=B([y("state"),y("nonce"),k("lpVault"),k("rewardVault"),k(),k(),y(),y(),y("totalReward"),ie("perShareReward"),y("lastSlot"),y("perSlotReward")]),Un=B([y("state"),y("nonce"),k("lpVault"),k("rewardVaultA"),y("totalRewardA"),ie("perShareRewardA"),y("perSlotRewardA"),C("option"),k("rewardVaultB"),pe(7),y("totalRewardB"),ie("perShareRewardB"),y("perSlotRewardB"),y("lastSlot"),k()]),qn=B([y(),y("state"),y("nonce"),y("validRewardTokenNum"),ie("rewardMultiplier"),y("rewardPeriodMax"),y("rewardPeriodMin"),y("rewardPeriodExtend"),k("lpMint"),k("lpVault"),M(Wn,5,"rewardInfos"),k("creator"),k(),M(y(),32,"padding")]),Gn=new Proxy(On,{get(e,t,r){return t==="decode"?(...n)=>{let i=e.decode(...n);return{...i,version:3,rewardInfos:[{rewardVault:i.rewardVault,totalReward:i.totalReward,perSlotReward:i.perSlotReward,perShareReward:i.perShareReward}]}}:Reflect.get(e,t,r)}}),Hn=new Proxy(Un,{get(e,t,r){return t==="decode"?(...n)=>{let i=e.decode(...n);return{...i,version:5,rewardInfos:[{rewardVault:i.rewardVaultA,totalReward:i.totalRewardA,perSlotReward:i.perSlotRewardA,perShareReward:i.perShareRewardA},{rewardVault:i.rewardVaultB,totalReward:i.totalRewardB,perSlotReward:i.perSlotRewardB,perShareReward:i.perShareRewardB}]}}:Reflect.get(e,t,r)}}),jn=new Proxy(qn,{get(e,t,r){return t==="decode"?(...n)=>{let i=e.decode(...n);return{...i,version:6,rewardInfos:i.rewardInfos.map(o=>{var s;return{...o,rewardType:((s=Object.entries(Ne).find(a=>St