@cobaltx/sdk-v2
Version:
An SDK for building applications on top of CobaltX.
1 lines • 56.3 kB
JavaScript
import{ComputeBudgetProgram as Ur,Keypair as zr,PublicKey as pt,Transaction as qe,TransactionMessage as Zr,VersionedTransaction as Yr}from"@solana/web3.js";import{get as lt,set as jt}from"lodash";var We=class{constructor(t){this.logLevel=t.logLevel!==void 0?t.logLevel:0,this.name=t.name}set level(t){this.logLevel=t}get time(){return Date.now().toString()}get moduleName(){return this.name}isLogLevel(t){return t<=this.logLevel}error(...t){return this.isLogLevel(0)?(console.error(this.time,this.name,"sdk logger error",...t),this):this}logWithError(...t){let n=t.map(r=>typeof r=="object"?JSON.stringify(r):r).join(", ");throw new Error(n)}warning(...t){return this.isLogLevel(1)?(console.warn(this.time,this.name,"sdk logger warning",...t),this):this}info(...t){return this.isLogLevel(2)?(console.info(this.time,this.name,"sdk logger info",...t),this):this}debug(...t){return this.isLogLevel(3)?(console.debug(this.time,this.name,"sdk logger debug",...t),this):this}},mt={},Qt={};function O(e){let t=lt(mt,e);if(!t){let n=lt(Qt,e);t=new We({name:e,logLevel:n}),jt(mt,e,t)}return t}import{TOKEN_PROGRAM_ID as ei}from"@solana/spl-token";var Z=O("CobaltX_txUtil"),Yt=1644;function Xt(e,t){e.length<1&&Z.logWithError(`no instructions provided: ${e.toString()}`),t.length<1&&Z.logWithError(`no signers provided:, ${t.toString()}`);let n=new qe;n.recentBlockhash="11111111111111111111111111111111",n.feePayer=t[0],n.add(...e);try{return Buffer.from(n.serialize({verifySignatures:!1})).toString("base64").length<Yt}catch{return!1}}async function ft(e,t,n,r=!0){let i=new pt("CobaltXSimuLateTransaction11111111111111111"),o=[],s=new qe;s.feePayer=i;for(let u of t)Xt([...s.instructions,u],[i])||(o.push(s),s=new qe,s.feePayer=i),s.add(u);s.instructions.length>0&&o.push(s);let a=[];try{if(a=await Jt(e,o,r),a.find(u=>u.err!==null))throw Error("rpc simulateTransaction error")}catch(u){u instanceof Error&&Z.logWithError("failed to simulate for instructions","RPC_ERROR",{message:u.message})}let c=[];for(let u of a)if(Z.debug("simulate result:",u),u.logs){let l=u.logs.filter(m=>m&&m.includes(n));Z.debug("filteredLog:",c),l.length||Z.logWithError("simulate log not match keyword","keyword",n),c.push(...l)}return c}function dt(e,t){let n=e.match(/{["\w:,]+}/g);return!n||n.length!==1?Z.logWithError(`simulate log fail to match json, keyword: ${t}`):n[0]}function Y(e,t){let r=new RegExp(`"${t}":(\\d+)`,"g").exec(e);return!r||r.length!==2?Z.logWithError(`simulate log fail to match key", key: ${t}`):r[1]}function ue(e,t){let[n,r]=pt.findProgramAddressSync(e,t);return{publicKey:n,nonce:r}}async function Jt(e,t,n){let r=[];if(n){let i=await e.getLatestBlockhash(),o=[];for(let u of t){u.recentBlockhash=i.blockhash,u.lastValidBlockHeight=i.lastValidBlockHeight;let m=u._compile().serialize(),g=u._serialize(m).toString("base64");o.push(g)}let s=o.map(u=>{let l=e._buildArgs([u],void 0,"base64");return{methodName:"simulateTransaction",args:l}}),a=[],c=20;for(let u=0;u<Math.ceil(s.length/c);u++)a.push(s.slice(u*c,(u+1)*c));r=await(await Promise.all(a.map(async u=>(await e._rpcBatchRequest(u)).map(l=>l.result.value)))).flat()}else try{r=await Promise.all(t.map(async i=>await(await e.simulateTransaction(i)).value))}catch(i){i instanceof Error&&Z.logWithError("failed to get info for multiple accounts","RPC_ERROR",{message:i.message})}return r}import{TOKEN_PROGRAM_ID as Rr}from"@solana/spl-token";import{PublicKey as Dr}from"@solana/web3.js";import Te from"bn.js";var ce=9e15,ie=1e9,Ue="0123456789abcdef",Be="2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058",Le="3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789",Ge={precision:20,rounding:4,modulo:1,toExpNeg:-7,toExpPos:21,minE:-ce,maxE:ce,crypto:!1},yt,X,w=!0,Ne="[DecimalError] ",re=Ne+"Invalid argument: ",wt=Ne+"Precision limit exceeded",Tt=Ne+"crypto unavailable",xt="[object Decimal]",v=Math.floor,C=Math.pow,$t=/^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i,en=/^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i,tn=/^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i,Pt=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,H=1e7,b=7,nn=9007199254740991,rn=Be.length-1,He=Le.length-1,f={toStringTag:xt};f.absoluteValue=f.abs=function(){var e=new this.constructor(this);return e.s<0&&(e.s=1),h(e)};f.ceil=function(){return h(new this.constructor(this),this.e+1,2)};f.clampedTo=f.clamp=function(e,t){var n,r=this,i=r.constructor;if(e=new i(e),t=new i(t),!e.s||!t.s)return new i(NaN);if(e.gt(t))throw Error(re+t);return n=r.cmp(e),n<0?e:r.cmp(t)>0?t:new i(r)};f.comparedTo=f.cmp=function(e){var t,n,r,i,o=this,s=o.d,a=(e=new o.constructor(e)).d,c=o.s,u=e.s;if(!s||!a)return!c||!u?NaN:c!==u?c:s===a?0:!s^c<0?1:-1;if(!s[0]||!a[0])return s[0]?c:a[0]?-u:0;if(c!==u)return c;if(o.e!==e.e)return o.e>e.e^c<0?1:-1;for(r=s.length,i=a.length,t=0,n=r<i?r:i;t<n;++t)if(s[t]!==a[t])return s[t]>a[t]^c<0?1:-1;return r===i?0:r>i^c<0?1:-1};f.cosine=f.cos=function(){var e,t,n=this,r=n.constructor;return n.d?n.d[0]?(e=r.precision,t=r.rounding,r.precision=e+Math.max(n.e,n.sd())+b,r.rounding=1,n=on(r,Lt(r,n)),r.precision=e,r.rounding=t,h(X==2||X==3?n.neg():n,e,t,!0)):new r(1):new r(NaN)};f.cubeRoot=f.cbrt=function(){var e,t,n,r,i,o,s,a,c,u,l=this,m=l.constructor;if(!l.isFinite()||l.isZero())return new m(l);for(w=!1,o=l.s*C(l.s*l,1/3),!o||Math.abs(o)==1/0?(n=_(l.d),e=l.e,(o=(e-n.length+1)%3)&&(n+=o==1||o==-2?"0":"00"),o=C(n,1/3),e=v((e+1)/3)-(e%3==(e<0?-1:2)),o==1/0?n="5e"+e:(n=o.toExponential(),n=n.slice(0,n.indexOf("e")+1)+e),r=new m(n),r.s=l.s):r=new m(o.toString()),s=(e=m.precision)+3;;)if(a=r,c=a.times(a).times(a),u=c.plus(l),r=S(u.plus(l).times(a),u.plus(c),s+2,1),_(a.d).slice(0,s)===(n=_(r.d)).slice(0,s))if(n=n.slice(s-3,s+1),n=="9999"||!i&&n=="4999"){if(!i&&(h(a,e+1,0),a.times(a).times(a).eq(l))){r=a;break}s+=4,i=1}else{(!+n||!+n.slice(1)&&n.charAt(0)=="5")&&(h(r,e+1,1),t=!r.times(r).times(r).eq(l));break}return w=!0,h(r,e,m.rounding,t)};f.decimalPlaces=f.dp=function(){var e,t=this.d,n=NaN;if(t){if(e=t.length-1,n=(e-v(this.e/b))*b,e=t[e],e)for(;e%10==0;e/=10)n--;n<0&&(n=0)}return n};f.dividedBy=f.div=function(e){return S(this,new this.constructor(e))};f.dividedToIntegerBy=f.divToInt=function(e){var t=this,n=t.constructor;return h(S(t,new n(e),0,1,1),n.precision,n.rounding)};f.equals=f.eq=function(e){return this.cmp(e)===0};f.floor=function(){return h(new this.constructor(this),this.e+1,3)};f.greaterThan=f.gt=function(e){return this.cmp(e)>0};f.greaterThanOrEqualTo=f.gte=function(e){var t=this.cmp(e);return t==1||t===0};f.hyperbolicCosine=f.cosh=function(){var e,t,n,r,i,o=this,s=o.constructor,a=new s(1);if(!o.isFinite())return new s(o.s?1/0:NaN);if(o.isZero())return a;n=s.precision,r=s.rounding,s.precision=n+Math.max(o.e,o.sd())+4,s.rounding=1,i=o.d.length,i<32?(e=Math.ceil(i/3),t=(1/Ee(4,e)).toString()):(e=16,t="2.3283064365386962890625e-10"),o=le(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 h(o,s.precision=n,s.rounding=r,!0)};f.hyperbolicSine=f.sinh=function(){var e,t,n,r,i=this,o=i.constructor;if(!i.isFinite()||i.isZero())return new o(i);if(t=o.precision,n=o.rounding,o.precision=t+Math.max(i.e,i.sd())+4,o.rounding=1,r=i.d.length,r<3)i=le(o,2,i,i,!0);else{e=1.4*Math.sqrt(r),e=e>16?16:e|0,i=i.times(1/Ee(5,e)),i=le(o,2,i,i,!0);for(var s,a=new o(5),c=new o(16),u=new o(20);e--;)s=i.times(i),i=i.times(a.plus(s.times(c.times(s).plus(u))))}return o.precision=t,o.rounding=n,h(i,t,n,!0)};f.hyperbolicTangent=f.tanh=function(){var e,t,n=this,r=n.constructor;return n.isFinite()?n.isZero()?new r(n):(e=r.precision,t=r.rounding,r.precision=e+7,r.rounding=1,S(n.sinh(),n.cosh(),r.precision=e,r.rounding=t)):new r(n.s)};f.inverseCosine=f.acos=function(){var e,t=this,n=t.constructor,r=t.abs().cmp(1),i=n.precision,o=n.rounding;return r!==-1?r===0?t.isNeg()?G(n,i,o):new n(0):new n(NaN):t.isZero()?G(n,i+4,o).times(.5):(n.precision=i+6,n.rounding=1,t=t.asin(),e=G(n,i+4,o).times(.5),n.precision=i,n.rounding=o,e.minus(t))};f.inverseHyperbolicCosine=f.acosh=function(){var e,t,n=this,r=n.constructor;return n.lte(1)?new r(n.eq(1)?0:NaN):n.isFinite()?(e=r.precision,t=r.rounding,r.precision=e+Math.max(Math.abs(n.e),n.sd())+4,r.rounding=1,w=!1,n=n.times(n).minus(1).sqrt().plus(n),w=!0,r.precision=e,r.rounding=t,n.ln()):new r(n)};f.inverseHyperbolicSine=f.asinh=function(){var e,t,n=this,r=n.constructor;return!n.isFinite()||n.isZero()?new r(n):(e=r.precision,t=r.rounding,r.precision=e+2*Math.max(Math.abs(n.e),n.sd())+6,r.rounding=1,w=!1,n=n.times(n).plus(1).sqrt().plus(n),w=!0,r.precision=e,r.rounding=t,n.ln())};f.inverseHyperbolicTangent=f.atanh=function(){var e,t,n,r,i=this,o=i.constructor;return i.isFinite()?i.e>=0?new o(i.abs().eq(1)?i.s/0:i.isZero()?i:NaN):(e=o.precision,t=o.rounding,r=i.sd(),Math.max(r,e)<2*-i.e-1?h(new o(i),e,t,!0):(o.precision=n=r-i.e,i=S(i.plus(1),new o(1).minus(i),n+e,1),o.precision=e+4,o.rounding=1,i=i.ln(),o.precision=e,o.rounding=t,i.times(.5))):new o(NaN)};f.inverseSine=f.asin=function(){var e,t,n,r,i=this,o=i.constructor;return i.isZero()?new o(i):(t=i.abs().cmp(1),n=o.precision,r=o.rounding,t!==-1?t===0?(e=G(o,n+4,r).times(.5),e.s=i.s,e):new o(NaN):(o.precision=n+6,o.rounding=1,i=i.div(new o(1).minus(i.times(i)).sqrt().plus(1)).atan(),o.precision=n,o.rounding=r,i.times(2)))};f.inverseTangent=f.atan=function(){var e,t,n,r,i,o,s,a,c,u=this,l=u.constructor,m=l.precision,p=l.rounding;if(u.isFinite()){if(u.isZero())return new l(u);if(u.abs().eq(1)&&m+4<=He)return s=G(l,m+4,p).times(.25),s.s=u.s,s}else{if(!u.s)return new l(NaN);if(m+4<=He)return s=G(l,m+4,p).times(.5),s.s=u.s,s}for(l.precision=a=m+10,l.rounding=1,n=Math.min(28,a/b+2|0),e=n;e;--e)u=u.div(u.times(u).plus(1).sqrt().plus(1));for(w=!1,t=Math.ceil(a/b),r=1,c=u.times(u),s=new l(u),i=u;e!==-1;)if(i=i.times(c),o=s.minus(i.div(r+=2)),i=i.times(c),s=o.plus(i.div(r+=2)),s.d[t]!==void 0)for(e=t;s.d[e]===o.d[e]&&e--;);return n&&(s=s.times(2<<n-1)),w=!0,h(s,l.precision=m,l.rounding=p,!0)};f.isFinite=function(){return!!this.d};f.isInteger=f.isInt=function(){return!!this.d&&v(this.e/b)>this.d.length-2};f.isNaN=function(){return!this.s};f.isNegative=f.isNeg=function(){return this.s<0};f.isPositive=f.isPos=function(){return this.s>0};f.isZero=function(){return!!this.d&&this.d[0]===0};f.lessThan=f.lt=function(e){return this.cmp(e)<0};f.lessThanOrEqualTo=f.lte=function(e){return this.cmp(e)<1};f.logarithm=f.log=function(e){var t,n,r,i,o,s,a,c,u=this,l=u.constructor,m=l.precision,p=l.rounding,g=5;if(e==null)e=new l(10),t=!0;else{if(e=new l(e),n=e.d,e.s<0||!n||!n[0]||e.eq(1))return new l(NaN);t=e.eq(10)}if(n=u.d,u.s<0||!n||!n[0]||u.eq(1))return new l(n&&!n[0]?-1/0:u.s!=1?NaN:n?0:1/0);if(t)if(n.length>1)o=!0;else{for(i=n[0];i%10===0;)i/=10;o=i!==1}if(w=!1,a=m+g,s=ne(u,a),r=t?Ie(l,a+10):ne(e,a),c=S(s,r,a,1),pe(c.d,i=m,p))do if(a+=10,s=ne(u,a),r=t?Ie(l,a+10):ne(e,a),c=S(s,r,a,1),!o){+_(c.d).slice(i+1,i+15)+1==1e14&&(c=h(c,m+1,0));break}while(pe(c.d,i+=10,p));return w=!0,h(c,m,p)};f.minus=f.sub=function(e){var t,n,r,i,o,s,a,c,u,l,m,p,g=this,x=g.constructor;if(e=new x(e),!g.d||!e.d)return!g.s||!e.s?e=new x(NaN):g.d?e.s=-e.s:e=new x(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,p=e.d,a=x.precision,c=x.rounding,!u[0]||!p[0]){if(p[0])e.s=-e.s;else if(u[0])e=new x(g);else return new x(c===3?-0:0);return w?h(e,a,c):e}if(n=v(e.e/b),l=v(g.e/b),u=u.slice(),o=l-n,o){for(m=o<0,m?(t=u,o=-o,s=p.length):(t=p,n=l,s=u.length),r=Math.max(Math.ceil(a/b),s)+2,o>r&&(o=r,t.length=1),t.reverse(),r=o;r--;)t.push(0);t.reverse()}else{for(r=u.length,s=p.length,m=r<s,m&&(s=r),r=0;r<s;r++)if(u[r]!=p[r]){m=u[r]<p[r];break}o=0}for(m&&(t=u,u=p,p=t,e.s=-e.s),s=u.length,r=p.length-s;r>0;--r)u[s++]=0;for(r=p.length;r>o;){if(u[--r]<p[r]){for(i=r;i&&u[--i]===0;)u[i]=H-1;--u[i],u[r]+=H}u[r]-=p[r]}for(;u[--s]===0;)u.pop();for(;u[0]===0;u.shift())--n;return u[0]?(e.d=u,e.e=Ce(u,n),w?h(e,a,c):e):new x(c===3?-0:0)};f.modulo=f.mod=function(e){var t,n=this,r=n.constructor;return e=new r(e),!n.d||!e.s||e.d&&!e.d[0]?new r(NaN):!e.d||n.d&&!n.d[0]?h(new r(n),r.precision,r.rounding):(w=!1,r.modulo==9?(t=S(n,e.abs(),0,3,1),t.s*=e.s):t=S(n,e,0,r.modulo,1),t=t.times(e),w=!0,n.minus(t))};f.naturalExponential=f.exp=function(){return ze(this)};f.naturalLogarithm=f.ln=function(){return ne(this)};f.negated=f.neg=function(){var e=new this.constructor(this);return e.s=-e.s,h(e)};f.plus=f.add=function(e){var t,n,r,i,o,s,a,c,u,l,m=this,p=m.constructor;if(e=new p(e),!m.d||!e.d)return!m.s||!e.s?e=new p(NaN):m.d||(e=new p(e.d||m.s===e.s?m:NaN)),e;if(m.s!=e.s)return e.s=-e.s,m.minus(e);if(u=m.d,l=e.d,a=p.precision,c=p.rounding,!u[0]||!l[0])return l[0]||(e=new p(m)),w?h(e,a,c):e;if(o=v(m.e/b),r=v(e.e/b),u=u.slice(),i=o-r,i){for(i<0?(n=u,i=-i,s=l.length):(n=l,r=o,s=u.length),o=Math.ceil(a/b),s=o>s?o+1:s+1,i>s&&(i=s,n.length=1),n.reverse();i--;)n.push(0);n.reverse()}for(s=u.length,i=l.length,s-i<0&&(i=s,n=l,l=u,u=n),t=0;i;)t=(u[--i]=u[i]+l[i]+t)/H|0,u[i]%=H;for(t&&(u.unshift(t),++r),s=u.length;u[--s]==0;)u.pop();return e.d=u,e.e=Ce(u,r),w?h(e,a,c):e};f.precision=f.sd=function(e){var t,n=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(re+e);return n.d?(t=kt(n.d),e&&n.e+1>t&&(t=n.e+1)):t=NaN,t};f.round=function(){var e=this,t=e.constructor;return h(new t(e),e.e+1,t.rounding)};f.sine=f.sin=function(){var e,t,n=this,r=n.constructor;return n.isFinite()?n.isZero()?new r(n):(e=r.precision,t=r.rounding,r.precision=e+Math.max(n.e,n.sd())+b,r.rounding=1,n=an(r,Lt(r,n)),r.precision=e,r.rounding=t,h(X>2?n.neg():n,e,t,!0)):new r(NaN)};f.squareRoot=f.sqrt=function(){var e,t,n,r,i,o,s=this,a=s.d,c=s.e,u=s.s,l=s.constructor;if(u!==1||!a||!a[0])return new l(!u||u<0&&(!a||a[0])?NaN:a?s:1/0);for(w=!1,u=Math.sqrt(+s),u==0||u==1/0?(t=_(a),(t.length+c)%2==0&&(t+="0"),u=Math.sqrt(t),c=v((c+1)/2)-(c<0||c%2),u==1/0?t="5e"+c:(t=u.toExponential(),t=t.slice(0,t.indexOf("e")+1)+c),r=new l(t)):r=new l(u.toString()),n=(c=l.precision)+3;;)if(o=r,r=o.plus(S(s,o,n+2,1)).times(.5),_(o.d).slice(0,n)===(t=_(r.d)).slice(0,n))if(t=t.slice(n-3,n+1),t=="9999"||!i&&t=="4999"){if(!i&&(h(o,c+1,0),o.times(o).eq(s))){r=o;break}n+=4,i=1}else{(!+t||!+t.slice(1)&&t.charAt(0)=="5")&&(h(r,c+1,1),e=!r.times(r).eq(s));break}return w=!0,h(r,c,l.rounding,e)};f.tangent=f.tan=function(){var e,t,n=this,r=n.constructor;return n.isFinite()?n.isZero()?new r(n):(e=r.precision,t=r.rounding,r.precision=e+10,r.rounding=1,n=n.sin(),n.s=1,n=S(n,new r(1).minus(n.times(n)).sqrt(),e+10,0),r.precision=e,r.rounding=t,h(X==2||X==4?n.neg():n,e,t,!0)):new r(NaN)};f.times=f.mul=function(e){var t,n,r,i,o,s,a,c,u,l=this,m=l.constructor,p=l.d,g=(e=new m(e)).d;if(e.s*=l.s,!p||!p[0]||!g||!g[0])return new m(!e.s||p&&!p[0]&&!g||g&&!g[0]&&!p?NaN:!p||!g?e.s/0:e.s*0);for(n=v(l.e/b)+v(e.e/b),c=p.length,u=g.length,c<u&&(o=p,p=g,g=o,s=c,c=u,u=s),o=[],s=c+u,r=s;r--;)o.push(0);for(r=u;--r>=0;){for(t=0,i=c+r;i>r;)a=o[i]+g[r]*p[i-r-1]+t,o[i--]=a%H|0,t=a/H|0;o[i]=(o[i]+t)%H|0}for(;!o[--s];)o.pop();return t?++n:o.shift(),e.d=o,e.e=Ce(o,n),w?h(e,m.precision,m.rounding):e};f.toBinary=function(e,t){return Qe(this,2,e,t)};f.toDecimalPlaces=f.toDP=function(e,t){var n=this,r=n.constructor;return n=new r(n),e===void 0?n:(V(e,0,ie),t===void 0?t=r.rounding:V(t,0,8),h(n,e+n.e+1,t))};f.toExponential=function(e,t){var n,r=this,i=r.constructor;return e===void 0?n=z(r,!0):(V(e,0,ie),t===void 0?t=i.rounding:V(t,0,8),r=h(new i(r),e+1,t),n=z(r,!0,e+1)),r.isNeg()&&!r.isZero()?"-"+n:n};f.toFixed=function(e,t){var n,r,i=this,o=i.constructor;return e===void 0?n=z(i):(V(e,0,ie),t===void 0?t=o.rounding:V(t,0,8),r=h(new o(i),e+i.e+1,t),n=z(r,!1,e+r.e+1)),i.isNeg()&&!i.isZero()?"-"+n:n};f.toFraction=function(e){var t,n,r,i,o,s,a,c,u,l,m,p,g=this,x=g.d,y=g.constructor;if(!x)return new y(g);if(u=n=new y(1),r=c=new y(0),t=new y(r),o=t.e=kt(x)-g.e-1,s=o%b,t.d[0]=C(10,s<0?b+s:s),e==null)e=o>0?t:u;else{if(a=new y(e),!a.isInt()||a.lt(u))throw Error(re+a);e=a.gt(t)?o>0?t:u:a}for(w=!1,a=new y(_(x)),l=y.precision,y.precision=o=x.length*b*2;m=S(a,t,0,1,1),i=n.plus(m.times(r)),i.cmp(e)!=1;)n=r,r=i,i=u,u=c.plus(m.times(i)),c=i,i=t,t=a.minus(m.times(i)),a=i;return i=S(e.minus(n),r,0,1,1),c=c.plus(i.times(u)),n=n.plus(i.times(r)),c.s=u.s=g.s,p=S(u,r,o,1).minus(g).abs().cmp(S(c,n,o,1).minus(g).abs())<1?[u,r]:[c,n],y.precision=l,w=!0,p};f.toHexadecimal=f.toHex=function(e,t){return Qe(this,16,e,t)};f.toNearest=function(e,t){var n=this,r=n.constructor;if(n=new r(n),e==null){if(!n.d)return n;e=new r(1),t=r.rounding}else{if(e=new r(e),t===void 0?t=r.rounding:V(t,0,8),!n.d)return e.s?n:e;if(!e.d)return e.s&&(e.s=n.s),e}return e.d[0]?(w=!1,n=S(n,e,0,t,1).times(e),w=!0,h(n)):(e.s=n.s,n=e),n};f.toNumber=function(){return+this};f.toOctal=function(e,t){return Qe(this,8,e,t)};f.toPower=f.pow=function(e){var t,n,r,i,o,s,a=this,c=a.constructor,u=+(e=new c(e));if(!a.d||!e.d||!a.d[0]||!e.d[0])return new c(C(+a,u));if(a=new c(a),a.eq(1))return a;if(r=c.precision,o=c.rounding,e.eq(1))return h(a,r,o);if(t=v(e.e/b),t>=e.d.length-1&&(n=u<0?-u:u)<=nn)return i=At(c,a,n,r),e.s<0?new c(1).div(i):h(i,r,o);if(s=a.s,s<0){if(t<e.d.length-1)return new c(NaN);if((e.d[t]&1)==0&&(s=1),a.e==0&&a.d[0]==1&&a.d.length==1)return a.s=s,a}return n=C(+a,u),t=n==0||!isFinite(n)?v(u*(Math.log("0."+_(a.d))/Math.LN10+a.e+1)):new c(n+"").e,t>c.maxE+1||t<c.minE-1?new c(t>0?s/0:0):(w=!1,c.rounding=a.s=1,n=Math.min(12,(t+"").length),i=ze(e.times(ne(a,r+n)),r),i.d&&(i=h(i,r+5,1),pe(i.d,r,o)&&(t=r+10,i=h(ze(e.times(ne(a,t+n)),t),t+5,1),+_(i.d).slice(r+1,r+15)+1==1e14&&(i=h(i,r+1,0)))),i.s=s,w=!0,c.rounding=o,h(i,r,o))};f.toPrecision=function(e,t){var n,r=this,i=r.constructor;return e===void 0?n=z(r,r.e<=i.toExpNeg||r.e>=i.toExpPos):(V(e,1,ie),t===void 0?t=i.rounding:V(t,0,8),r=h(new i(r),e,t),n=z(r,e<=r.e||r.e<=i.toExpNeg,e)),r.isNeg()&&!r.isZero()?"-"+n:n};f.toSignificantDigits=f.toSD=function(e,t){var n=this,r=n.constructor;return e===void 0?(e=r.precision,t=r.rounding):(V(e,1,ie),t===void 0?t=r.rounding:V(t,0,8)),h(new r(n),e,t)};f.toString=function(){var e=this,t=e.constructor,n=z(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()&&!e.isZero()?"-"+n:n};f.truncated=f.trunc=function(){return h(new this.constructor(this),this.e+1,1)};f.valueOf=f.toJSON=function(){var e=this,t=e.constructor,n=z(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()?"-"+n:n};function _(e){var t,n,r,i=e.length-1,o="",s=e[0];if(i>0){for(o+=s,t=1;t<i;t++)r=e[t]+"",n=b-r.length,n&&(o+=te(n)),o+=r;s=e[t],r=s+"",n=b-r.length,n&&(o+=te(n))}else if(s===0)return"0";for(;s%10===0;)s/=10;return o+s}function V(e,t,n){if(e!==~~e||e<t||e>n)throw Error(re+e)}function pe(e,t,n,r){var i,o,s,a;for(o=e[0];o>=10;o/=10)--t;return--t<0?(t+=b,i=0):(i=Math.ceil((t+1)/b),t%=b),o=C(10,b-t),a=e[i]%o|0,r==null?t<3?(t==0?a=a/100|0:t==1&&(a=a/10|0),s=n<4&&a==99999||n>3&&a==49999||a==5e4||a==0):s=(n<4&&a+1==o||n>3&&a+1==o/2)&&(e[i+1]/o/100|0)==C(10,t-2)-1||(a==o/2||a==0)&&(e[i+1]/o/100|0)==0:t<4?(t==0?a=a/1e3|0:t==1?a=a/100|0:t==2&&(a=a/10|0),s=(r||n<4)&&a==9999||!r&&n>3&&a==4999):s=((r||n<4)&&a+1==o||!r&&n>3&&a+1==o/2)&&(e[i+1]/o/1e3|0)==C(10,t-3)-1,s}function Se(e,t,n){for(var r,i=[0],o,s=0,a=e.length;s<a;){for(o=i.length;o--;)i[o]*=t;for(i[0]+=Ue.indexOf(e.charAt(s++)),r=0;r<i.length;r++)i[r]>n-1&&(i[r+1]===void 0&&(i[r+1]=0),i[r+1]+=i[r]/n|0,i[r]%=n)}return i.reverse()}function on(e,t){var n,r,i;if(t.isZero())return t;r=t.d.length,r<32?(n=Math.ceil(r/3),i=(1/Ee(4,n)).toString()):(n=16,i="2.3283064365386962890625e-10"),e.precision+=n,t=le(e,1,t.times(i),new e(1));for(var o=n;o--;){var s=t.times(t);t=s.times(s).minus(s).times(8).plus(1)}return e.precision-=n,t}var S=function(){function e(r,i,o){var s,a=0,c=r.length;for(r=r.slice();c--;)s=r[c]*i+a,r[c]=s%o|0,a=s/o|0;return a&&r.unshift(a),r}function t(r,i,o,s){var a,c;if(o!=s)c=o>s?1:-1;else for(a=c=0;a<o;a++)if(r[a]!=i[a]){c=r[a]>i[a]?1:-1;break}return c}function n(r,i,o,s){for(var a=0;o--;)r[o]-=a,a=r[o]<i[o]?1:0,r[o]=a*s+r[o]-i[o];for(;!r[0]&&r.length>1;)r.shift()}return function(r,i,o,s,a,c){var u,l,m,p,g,x,y,E,L,K,A,R,xe,Q,Fe,Pe,me,Ve,U,ke,Ae=r.constructor,Ke=r.s==i.s?1:-1,D=r.d,B=i.d;if(!D||!D[0]||!B||!B[0])return new Ae(!r.s||!i.s||(D?B&&D[0]==B[0]:!B)?NaN:D&&D[0]==0||!B?Ke*0:Ke/0);for(c?(g=1,l=r.e-i.e):(c=H,g=b,l=v(r.e/g)-v(i.e/g)),U=B.length,me=D.length,L=new Ae(Ke),K=L.d=[],m=0;B[m]==(D[m]||0);m++);if(B[m]>(D[m]||0)&&l--,o==null?(Q=o=Ae.precision,s=Ae.rounding):a?Q=o+(r.e-i.e)+1:Q=o,Q<0)K.push(1),x=!0;else{if(Q=Q/g+2|0,m=0,U==1){for(p=0,B=B[0],Q++;(m<me||p)&&Q--;m++)Fe=p*c+(D[m]||0),K[m]=Fe/B|0,p=Fe%B|0;x=p||m<me}else{for(p=c/(B[0]+1)|0,p>1&&(B=e(B,p,c),D=e(D,p,c),U=B.length,me=D.length),Pe=U,A=D.slice(0,U),R=A.length;R<U;)A[R++]=0;ke=B.slice(),ke.unshift(0),Ve=B[0],B[1]>=c/2&&++Ve;do p=0,u=t(B,A,U,R),u<0?(xe=A[0],U!=R&&(xe=xe*c+(A[1]||0)),p=xe/Ve|0,p>1?(p>=c&&(p=c-1),y=e(B,p,c),E=y.length,R=A.length,u=t(y,A,E,R),u==1&&(p--,n(y,U<E?ke:B,E,c))):(p==0&&(u=p=1),y=B.slice()),E=y.length,E<R&&y.unshift(0),n(A,y,R,c),u==-1&&(R=A.length,u=t(B,A,U,R),u<1&&(p++,n(A,U<R?ke:B,R,c))),R=A.length):u===0&&(p++,A=[0]),K[m++]=p,u&&A[0]?A[R++]=D[Pe]||0:(A=[D[Pe]],R=1);while((Pe++<me||A[0]!==void 0)&&Q--);x=A[0]!==void 0}K[0]||K.shift()}if(g==1)L.e=l,yt=x;else{for(m=1,p=K[0];p>=10;p/=10)m++;L.e=m+l*g-1,h(L,a?o+L.e+1:o,s,x)}return L}}();function h(e,t,n,r){var i,o,s,a,c,u,l,m,p,g=e.constructor;e:if(t!=null){if(m=e.d,!m)return e;for(i=1,a=m[0];a>=10;a/=10)i++;if(o=t-i,o<0)o+=b,s=t,l=m[p=0],c=l/C(10,i-s-1)%10|0;else if(p=Math.ceil((o+1)/b),a=m.length,p>=a)if(r){for(;a++<=p;)m.push(0);l=c=0,i=1,o%=b,s=o-b+1}else break e;else{for(l=a=m[p],i=1;a>=10;a/=10)i++;o%=b,s=o-b+i,c=s<0?0:l/C(10,i-s-1)%10|0}if(r=r||t<0||m[p+1]!==void 0||(s<0?l:l%C(10,i-s-1)),u=n<4?(c||r)&&(n==0||n==(e.s<0?3:2)):c>5||c==5&&(n==4||r||n==6&&(o>0?s>0?l/C(10,i-s):0:m[p-1])%10&1||n==(e.s<0?8:7)),t<1||!m[0])return m.length=0,u?(t-=e.e+1,m[0]=C(10,(b-t%b)%b),e.e=-t||0):m[0]=e.e=0,e;if(o==0?(m.length=p,a=1,p--):(m.length=p+1,a=C(10,b-o),m[p]=s>0?(l/C(10,i-s)%C(10,s)|0)*a:0),u)for(;;)if(p==0){for(o=1,s=m[0];s>=10;s/=10)o++;for(s=m[0]+=a,a=1;s>=10;s/=10)a++;o!=a&&(e.e++,m[0]==H&&(m[0]=1));break}else{if(m[p]+=a,m[p]!=H)break;m[p--]=0,a=1}for(o=m.length;m[--o]===0;)m.pop()}return w&&(e.e>g.maxE?(e.d=null,e.e=NaN):e.e<g.minE&&(e.e=0,e.d=[0])),e}function z(e,t,n){if(!e.isFinite())return Bt(e);var r,i=e.e,o=_(e.d),s=o.length;return t?(n&&(r=n-s)>0?o=o.charAt(0)+"."+o.slice(1)+te(r):s>1&&(o=o.charAt(0)+"."+o.slice(1)),o=o+(e.e<0?"e":"e+")+e.e):i<0?(o="0."+te(-i-1)+o,n&&(r=n-s)>0&&(o+=te(r))):i>=s?(o+=te(i+1-s),n&&(r=n-i-1)>0&&(o=o+"."+te(r))):((r=i+1)<s&&(o=o.slice(0,r)+"."+o.slice(r)),n&&(r=n-s)>0&&(i+1===s&&(o+="."),o+=te(r))),o}function Ce(e,t){var n=e[0];for(t*=b;n>=10;n/=10)t++;return t}function Ie(e,t,n){if(t>rn)throw w=!0,n&&(e.precision=n),Error(wt);return h(new e(Be),t,1,!0)}function G(e,t,n){if(t>He)throw Error(wt);return h(new e(Le),t,n,!0)}function kt(e){var t=e.length-1,n=t*b+1;if(t=e[t],t){for(;t%10==0;t/=10)n--;for(t=e[0];t>=10;t/=10)n++}return n}function te(e){for(var t="";e--;)t+="0";return t}function At(e,t,n,r){var i,o=new e(1),s=Math.ceil(r/b+4);for(w=!1;;){if(n%2&&(o=o.times(t),ht(o.d,s)&&(i=!0)),n=v(n/2),n===0){n=o.d.length-1,i&&o.d[n]===0&&++o.d[n];break}t=t.times(t),ht(t.d,s)}return w=!0,o}function gt(e){return e.d[e.d.length-1]&1}function St(e,t,n){for(var r,i=new e(t[0]),o=0;++o<t.length;)if(r=new e(t[o]),r.s)i[n](r)&&(i=r);else{i=r;break}return i}function ze(e,t){var n,r,i,o,s,a,c,u=0,l=0,m=0,p=e.constructor,g=p.rounding,x=p.precision;if(!e.d||!e.d[0]||e.e>17)return new p(e.d?e.d[0]?e.s<0?0:1/0:1:e.s?e.s<0?0:e:0/0);for(t==null?(w=!1,c=x):c=t,a=new p(.03125);e.e>-2;)e=e.times(a),m+=5;for(r=Math.log(C(2,m))/Math.LN10*2+5|0,c+=r,n=o=s=new p(1),p.precision=c;;){if(o=h(o.times(e),c,1),n=n.times(++l),a=s.plus(S(o,n,c,1)),_(a.d).slice(0,c)===_(s.d).slice(0,c)){for(i=m;i--;)s=h(s.times(s),c,1);if(t==null)if(u<3&&pe(s.d,c-r,g,u))p.precision=c+=10,n=o=a=new p(1),l=0,u++;else return h(s,p.precision=x,g,w=!0);else return p.precision=x,s}s=a}}function ne(e,t){var n,r,i,o,s,a,c,u,l,m,p,g=1,x=10,y=e,E=y.d,L=y.constructor,K=L.rounding,A=L.precision;if(y.s<0||!E||!E[0]||!y.e&&E[0]==1&&E.length==1)return new L(E&&!E[0]?-1/0:y.s!=1?NaN:E?0:y);if(t==null?(w=!1,l=A):l=t,L.precision=l+=x,n=_(E),r=n.charAt(0),Math.abs(o=y.e)<15e14){for(;r<7&&r!=1||r==1&&n.charAt(1)>3;)y=y.times(e),n=_(y.d),r=n.charAt(0),g++;o=y.e,r>1?(y=new L("0."+n),o++):y=new L(r+"."+n.slice(1))}else return u=Ie(L,l+2,A).times(o+""),y=ne(new L(r+"."+n.slice(1)),l-x).plus(u),L.precision=A,t==null?h(y,A,K,w=!0):y;for(m=y,c=s=y=S(y.minus(1),y.plus(1),l,1),p=h(y.times(y),l,1),i=3;;){if(s=h(s.times(p),l,1),u=c.plus(S(s,new L(i),l,1)),_(u.d).slice(0,l)===_(c.d).slice(0,l))if(c=c.times(2),o!==0&&(c=c.plus(Ie(L,l+2,A).times(o+""))),c=S(c,new L(g),l,1),t==null)if(pe(c.d,l-x,K,a))L.precision=l+=x,u=s=y=S(m.minus(1),m.plus(1),l,1),p=h(y.times(y),l,1),i=a=1;else return h(c,L.precision=A,K,w=!0);else return L.precision=A,c;c=u,i+=2}}function Bt(e){return String(e.s*e.s/0)}function je(e,t){var n,r,i;for((n=t.indexOf("."))>-1&&(t=t.replace(".","")),(r=t.search(/e/i))>0?(n<0&&(n=r),n+=+t.slice(r+1),t=t.substring(0,r)):n<0&&(n=t.length),r=0;t.charCodeAt(r)===48;r++);for(i=t.length;t.charCodeAt(i-1)===48;--i);if(t=t.slice(r,i),t){if(i-=r,e.e=n=n-r-1,e.d=[],r=(n+1)%b,n<0&&(r+=b),r<i){for(r&&e.d.push(+t.slice(0,r)),i-=b;r<i;)e.d.push(+t.slice(r,r+=b));t=t.slice(r),r=b-t.length}else r-=i;for(;r--;)t+="0";e.d.push(+t),w&&(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 sn(e,t){var n,r,i,o,s,a,c,u,l;if(t.indexOf("_")>-1){if(t=t.replace(/(\d)_(?=\d)/g,"$1"),Pt.test(t))return je(e,t)}else if(t==="Infinity"||t==="NaN")return+t||(e.s=NaN),e.e=NaN,e.d=null,e;if(en.test(t))n=16,t=t.toLowerCase();else if($t.test(t))n=2;else if(tn.test(t))n=8;else throw Error(re+t);for(o=t.search(/p/i),o>0?(c=+t.slice(o+1),t=t.substring(2,o)):t=t.slice(2),o=t.indexOf("."),s=o>=0,r=e.constructor,s&&(t=t.replace(".",""),a=t.length,o=a-o,i=At(r,new r(n),o,o*2)),u=Se(t,n,H),l=u.length-1,o=l;u[o]===0;--o)u.pop();return o<0?new r(e.s*0):(e.e=Ce(u,l),e.d=u,w=!1,s&&(e=S(e,i,a*4)),c&&(e=e.times(Math.abs(c)<54?C(2,c):fe.pow(2,c))),w=!0,e)}function an(e,t){var n,r=t.d.length;if(r<3)return t.isZero()?t:le(e,2,t,t);n=1.4*Math.sqrt(r),n=n>16?16:n|0,t=t.times(1/Ee(5,n)),t=le(e,2,t,t);for(var i,o=new e(5),s=new e(16),a=new e(20);n--;)i=t.times(t),t=t.times(o.plus(i.times(s.times(i).minus(a))));return t}function le(e,t,n,r,i){var o,s,a,c,u=1,l=e.precision,m=Math.ceil(l/b);for(w=!1,c=n.times(n),a=new e(r);;){if(s=S(a.times(c),new e(t++*t++),l,1),a=i?r.plus(s):r.minus(s),r=S(s.times(c),new e(t++*t++),l,1),s=a.plus(r),s.d[m]!==void 0){for(o=m;s.d[o]===a.d[o]&&o--;);if(o==-1)break}o=a,a=r,r=s,s=o,u++}return w=!0,s.d.length=m+1,s}function Ee(e,t){for(var n=e;--t;)n*=e;return n}function Lt(e,t){var n,r=t.s<0,i=G(e,e.precision,1),o=i.times(.5);if(t=t.abs(),t.lte(o))return X=r?4:1,t;if(n=t.divToInt(i),n.isZero())X=r?3:2;else{if(t=t.minus(n.times(i)),t.lte(o))return X=gt(n)?r?2:3:r?4:1,t;X=gt(n)?r?1:4:r?3:2}return t.minus(i).abs()}function Qe(e,t,n,r){var i,o,s,a,c,u,l,m,p,g=e.constructor,x=n!==void 0;if(x?(V(n,1,ie),r===void 0?r=g.rounding:V(r,0,8)):(n=g.precision,r=g.rounding),!e.isFinite())l=Bt(e);else{for(l=z(e),s=l.indexOf("."),x?(i=2,t==16?n=n*4-3:t==8&&(n=n*3-2)):i=t,s>=0&&(l=l.replace(".",""),p=new g(1),p.e=l.length-s,p.d=Se(z(p),10,i),p.e=p.d.length),m=Se(l,10,i),o=c=m.length;m[--c]==0;)m.pop();if(!m[0])l=x?"0p+0":"0";else{if(s<0?o--:(e=new g(e),e.d=m,e.e=o,e=S(e,p,n,r,0,i),m=e.d,o=e.e,u=yt),s=m[n],a=i/2,u=u||m[n+1]!==void 0,u=r<4?(s!==void 0||u)&&(r===0||r===(e.s<0?3:2)):s>a||s===a&&(r===4||u||r===6&&m[n-1]&1||r===(e.s<0?8:7)),m.length=n,u)for(;++m[--n]>i-1;)m[n]=0,n||(++o,m.unshift(1));for(c=m.length;!m[c-1];--c);for(s=0,l="";s<c;s++)l+=Ue.charAt(m[s]);if(x){if(c>1)if(t==16||t==8){for(s=t==16?4:3,--c;c%s;c++)l+="0";for(m=Se(l,i,t),c=m.length;!m[c-1];--c);for(s=1,l="1.";s<c;s++)l+=Ue.charAt(m[s])}else l=l.charAt(0)+"."+l.slice(1);l=l+(o<0?"p":"p+")+o}else if(o<0){for(;++o;)l="0"+l;l="0."+l}else if(++o>c)for(o-=c;o--;)l+="0";else o<c&&(l=l.slice(0,o)+"."+l.slice(o))}l=(t==16?"0x":t==2?"0b":t==8?"0o":"")+l}return e.s<0?"-"+l:l}function ht(e,t){if(e.length>t)return e.length=t,!0}function un(e){return new this(e).abs()}function cn(e){return new this(e).acos()}function ln(e){return new this(e).acosh()}function mn(e,t){return new this(e).plus(t)}function pn(e){return new this(e).asin()}function fn(e){return new this(e).asinh()}function dn(e){return new this(e).atan()}function gn(e){return new this(e).atanh()}function hn(e,t){e=new this(e),t=new this(t);var n,r=this.precision,i=this.rounding,o=r+4;return!e.s||!t.s?n=new this(NaN):!e.d&&!t.d?(n=G(this,o,1).times(t.s>0?.25:.75),n.s=e.s):!t.d||e.isZero()?(n=t.s<0?G(this,r,i):new this(0),n.s=e.s):!e.d||t.isZero()?(n=G(this,o,1).times(.5),n.s=e.s):t.s<0?(this.precision=o,this.rounding=1,n=this.atan(S(e,t,o,1)),t=G(this,o,1),this.precision=r,this.rounding=i,n=e.s<0?n.minus(t):n.plus(t)):n=this.atan(S(e,t,o,1)),n}function bn(e){return new this(e).cbrt()}function yn(e){return h(e=new this(e),e.e+1,2)}function wn(e,t,n){return new this(e).clamp(t,n)}function Tn(e){if(!e||typeof e!="object")throw Error(Ne+"Object expected");var t,n,r,i=e.defaults===!0,o=["precision",1,ie,"rounding",0,8,"toExpNeg",-ce,0,"toExpPos",0,ce,"maxE",0,ce,"minE",-ce,0,"modulo",0,9];for(t=0;t<o.length;t+=3)if(n=o[t],i&&(this[n]=Ge[n]),(r=e[n])!==void 0)if(v(r)===r&&r>=o[t+1]&&r<=o[t+2])this[n]=r;else throw Error(re+n+": "+r);if(n="crypto",i&&(this[n]=Ge[n]),(r=e[n])!==void 0)if(r===!0||r===!1||r===0||r===1)if(r)if(typeof crypto<"u"&&crypto&&(crypto.getRandomValues||crypto.randomBytes))this[n]=!0;else throw Error(Tt);else this[n]=!1;else throw Error(re+n+": "+r);return this}function xn(e){return new this(e).cos()}function Pn(e){return new this(e).cosh()}function It(e){var t,n,r;function i(o){var s,a,c,u=this;if(!(u instanceof i))return new i(o);if(u.constructor=i,bt(o)){u.s=o.s,w?!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++;w?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 je(u,o.toString())}else if(c!=="string")throw Error(re+o);return(a=o.charCodeAt(0))===45?(o=o.slice(1),u.s=-1):(a===43&&(o=o.slice(1)),u.s=1),Pt.test(o)?je(u,o):sn(u,o)}if(i.prototype=f,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=Tn,i.clone=It,i.isDecimal=bt,i.abs=un,i.acos=cn,i.acosh=ln,i.add=mn,i.asin=pn,i.asinh=fn,i.atan=dn,i.atanh=gn,i.atan2=hn,i.cbrt=bn,i.ceil=yn,i.clamp=wn,i.cos=xn,i.cosh=Pn,i.div=kn,i.exp=An,i.floor=Sn,i.hypot=Bn,i.ln=Ln,i.log=In,i.log10=Cn,i.log2=Nn,i.max=En,i.min=_n,i.mod=Mn,i.mul=Rn,i.pow=Dn,i.random=On,i.round=vn,i.sign=Fn,i.sin=Vn,i.sinh=Kn,i.sqrt=Wn,i.sub=qn,i.sum=Un,i.tan=Gn,i.tanh=Hn,i.trunc=zn,e===void 0&&(e={}),e&&e.defaults!==!0)for(r=["precision","rounding","toExpNeg","toExpPos","maxE","minE","modulo","crypto"],t=0;t<r.length;)e.hasOwnProperty(n=r[t++])||(e[n]=this[n]);return i.config(e),i}function kn(e,t){return new this(e).div(t)}function An(e){return new this(e).exp()}function Sn(e){return h(e=new this(e),e.e+1,3)}function Bn(){var e,t,n=new this(0);for(w=!1,e=0;e<arguments.length;)if(t=new this(arguments[e++]),t.d)n.d&&(n=n.plus(t.times(t)));else{if(t.s)return w=!0,new this(1/0);n=t}return w=!0,n.sqrt()}function bt(e){return e instanceof fe||e&&e.toStringTag===xt||!1}function Ln(e){return new this(e).ln()}function In(e,t){return new this(e).log(t)}function Nn(e){return new this(e).log(2)}function Cn(e){return new this(e).log(10)}function En(){return St(this,arguments,"lt")}function _n(){return St(this,arguments,"gt")}function Mn(e,t){return new this(e).mod(t)}function Rn(e,t){return new this(e).mul(t)}function Dn(e,t){return new this(e).pow(t)}function On(e){var t,n,r,i,o=0,s=new this(1),a=[];if(e===void 0?e=this.precision:V(e,1,ie),r=Math.ceil(e/b),this.crypto)if(crypto.getRandomValues)for(t=crypto.getRandomValues(new Uint32Array(r));o<r;)i=t[o],i>=429e7?t[o]=crypto.getRandomValues(new Uint32Array(1))[0]:a[o++]=i%1e7;else if(crypto.randomBytes){for(t=crypto.randomBytes(r*=4);o<r;)i=t[o]+(t[o+1]<<8)+(t[o+2]<<16)+((t[o+3]&127)<<24),i>=214e7?crypto.randomBytes(4).copy(t,o):(a.push(i%1e7),o+=4);o=r/4}else throw Error(Tt);else for(;o<r;)a[o++]=Math.random()*1e7|0;for(r=a[--o],e%=b,r&&e&&(i=C(10,b-e),a[o]=(r/i|0)*i);a[o]===0;o--)a.pop();if(o<0)n=0,a=[0];else{for(n=-1;a[0]===0;n-=b)a.shift();for(r=1,i=a[0];i>=10;i/=10)r++;r<b&&(n-=b-r)}return s.e=n,s.d=a,s}function vn(e){return h(e=new this(e),e.e+1,this.rounding)}function Fn(e){return e=new this(e),e.d?e.d[0]?e.s:0*e.s:e.s||NaN}function Vn(e){return new this(e).sin()}function Kn(e){return new this(e).sinh()}function Wn(e){return new this(e).sqrt()}function qn(e,t){return new this(e).sub(t)}function Un(){var e=0,t=arguments,n=new this(t[e]);for(w=!1;n.s&&++e<t.length;)n=n.plus(t[e]);return w=!0,h(n,this.precision,this.rounding)}function Gn(e){return new this(e).tan()}function Hn(e){return new this(e).tanh()}function zn(e){return h(e=new this(e),e.e+1,1)}f[Symbol.for("nodejs.util.inspect.custom")]=f.toString;f[Symbol.toStringTag]="Decimal";var fe=f.constructor=It(Ge);Be=new fe(Be);Le=new fe(Le);var de=fe;import{PublicKey as Xa}from"@solana/web3.js";import{MintLayout as $a,TOKEN_PROGRAM_ID as tu}from"@solana/spl-token";import dr from"big.js";import Na from"bn.js";import J from"bn.js";import{TOKEN_PROGRAM_ID as Nt}from"@solana/spl-token";import{PublicKey as jn}from"@solana/web3.js";var Ze={chainId:101,address:jn.default.toBase58(),programId:Nt.toBase58(),decimals:9,symbol:"ETH",name:"Ethereum",logoURI:"https://raw.githubusercontent.com/cobaltx-io/tokens/main/logo/So11111111111111111111111111111111111111112.png",tags:[],priority:2,type:"cobaltx",extensions:{coingeckoId:"solana"}},oe={chainId:101,address:"So11111111111111111111111111111111111111112",programId:Nt.toBase58(),decimals:9,symbol:"WETH",name:"Wrapped ETH",logoURI:"https://raw.githubusercontent.com/cobaltx-io/tokens/main/logo/So11111111111111111111111111111111111111112.png",tags:[],priority:2,type:"cobaltx",extensions:{coingeckoId:"solana"}};import{PublicKey as $e}from"@solana/web3.js";import{PublicKey as M,SystemProgram as Ct,SYSVAR_RENT_PUBKEY as Qn}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as Zn}from"@solana/spl-token";function W({pubkey:e,isSigner:t=!1,isWritable:n=!0}){return{pubkey:e,isWritable:n,isSigner:t}}var ci=[W({pubkey:Zn,isWritable:!1}),W({pubkey:Ct.programId,isWritable:!1}),W({pubkey:Qn,isWritable:!1})];function Xe({publicKey:e,transformSol:t}){let n=Et(e.toString());if(n instanceof M)return t&&n.equals(ge)?Ye:n;if(t&&n.toString()===ge.toBase58())return Ye;if(typeof n=="string"){if(n===M.default.toBase58())return M.default;try{return new M(n)}catch{throw new Error("invalid public key")}}throw new Error("invalid public key")}function Et(e){try{return new M(e)}catch{return e}}var li=new M("MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"),mi=new M("MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"),Yn=new M("SysvarRent111111111111111111111111111111111"),pi=new M("SysvarC1ock11111111111111111111111111111111"),fi=new M("metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),di=new M("Sysvar1nstructions1111111111111111111111111"),gi=Ct.programId,hi=new M("a2Gt18uJC8puJT9JRYQLU6rPi6okxQb4WqCjwtYshZB"),bi=new M("bXSKiFqYrALF9gJy1KqHm8tv4QXk8nCgbLN8WRsGEbh"),Ye=new M("So11111111111111111111111111111111111111112"),ge=M.default,yi=new M("71kRXzJMvSeArtXYNEWa8KAjpRJosdMQ7Dpgy5Jt5zfd"),wi=new M("ERFzpDteGNo8LTDKW1WwVGrkRMmA2y9WZHXNHxMA6BSV");function Je(e){return Xe({publicKey:e,transformSol:!0})}var et=class{constructor({mint:t,decimals:n,symbol:r,name:i,skipMint:o=!1,isToken2022:s=!1}){if(t===ge.toBase58()||t instanceof $e&&ge.equals(t)){this.decimals=oe.decimals,this.symbol=oe.symbol,this.name=oe.name,this.mint=new $e(oe.address),this.isToken2022=!1;return}this.decimals=n,this.symbol=r||t.toString().substring(0,6),this.name=i||t.toString().substring(0,6),this.mint=o?$e.default:Xe({publicKey:t}),this.isToken2022=s}equals(t){return this===t?!0:this.mint.equals(t.mint)}},se=et;se.WSOL=new et({...oe,mint:oe.address});var tt=class{constructor({decimals:t,symbol:n="UNKNOWN",name:r="UNKNOWN"}){this.decimals=t,this.symbol=n,this.name=r}equals(t){return this===t}},_e=tt;_e.SOL=new tt(Ze);import Re from"big.js";import er from"bn.js";import tr from"decimal.js-light";import he from"bn.js";var _t=9007199254740991;function j(e){let t=O("CobaltX_parseBigNumberish");if(e instanceof he)return e;if(typeof e=="string"){if(e.match(/^-?[0-9]+$/))return new he(e);t.logWithError(`invalid BigNumberish string: ${e}`)}return typeof e=="number"?(e%1&&t.logWithError(`BigNumberish number underflow: ${e}`),(e>=_t||e<=-_t)&&t.logWithError(`BigNumberish number overflow: ${e}`),new he(String(e))):typeof e=="bigint"?new he(e.toString()):(t.error(`invalid BigNumberish value: ${e}`),new he(0))}import Xn from"toformat";var Jn=Xn,be=Jn;var Me=O("module/fraction"),nt=be(Re),ye=be(tr),nr={[0]:ye.ROUND_DOWN,[1]:ye.ROUND_HALF_UP,[2]:ye.ROUND_UP},rr={[0]:Re.roundDown,[1]:Re.roundHalfUp,[2]:Re.roundUp},I=class{constructor(t,n=new er(1)){this.numerator=j(t),this.denominator=j(n)}get quotient(){return this.numerator.div(this.denominator)}invert(){return new I(this.denominator,this.numerator)}add(t){let n=t instanceof I?t:new I(j(t));return this.denominator.eq(n.denominator)?new I(this.numerator.add(n.numerator),this.denominator):new I(this.numerator.mul(n.denominator).add(n.numerator.mul(this.denominator)),this.denominator.mul(n.denominator))}sub(t){let n=t instanceof I?t:new I(j(t));return this.denominator.eq(n.denominator)?new I(this.numerator.sub(n.numerator),this.denominator):new I(this.numerator.mul(n.denominator).sub(n.numerator.mul(this.denominator)),this.denominator.mul(n.denominator))}mul(t){let n=t instanceof I?t:new I(j(t));return new I(this.numerator.mul(n.numerator),this.denominator.mul(n.denominator))}div(t){let n=t instanceof I?t:new I(j(t));return new I(this.numerator.mul(n.denominator),this.denominator.mul(n.numerator))}toSignificant(t,n={groupSeparator:""},r=1){Number.isInteger(t)||Me.logWithError(`${t} is not an integer.`),t<=0&&Me.logWithError(`${t} is not positive.`),ye.set({precision:t+1,rounding:nr[r]});let i=new ye(this.numerator.toString()).div(this.denominator.toString()).toSignificantDigits(t);return i.toFormat(i.decimalPlaces(),n)}toFixed(t,n={groupSeparator:""},r=1){return Number.isInteger(t)||Me.logWithError(`${t} is not an integer.`),t<0&&Me.logWithError(`${t} is negative.`),nt.DP=t,nt.RM=rr[r]||1,new nt(this.numerator.toString()).div(this.denominator.toString()).toFormat(t,n)}isZero(){return this.numerator.isZero()}};import ir from"bn.js";var Gi=new I(new ir(100));var Yi=O("CobaltX_price");import{PublicKey as oo}from"@solana/web3.js";import ao from"bn.js";var Dt=new J(0),or=new J(1),So=new J(2),Bo=new J(3),Lo=new J(5),sr=new J(10),Io=new J(100),No=new J(1e3),Co=new J(1e4);import{MINT_SIZE as Ro,TOKEN_PROGRAM_ID as Do,getTransferFeeConfig as Oo,unpackMint as vo}from"@solana/spl-token";import{PublicKey as qo}from"@solana/web3.js";var Ho=O("CobaltX_accountInfo_util");import{PublicKey as Jo}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as es}from"@solana/spl-token";import{PublicKey as T}from"@solana/web3.js";var is=new T("EhhTKczWMGQt46ynNeRX1WfeagwwJd7ufHvCDjRxjo5Q"),os=new T("CBuCnLe26faBpcBP2fktp4rp8abpcAnTWft6ZrP5Q4T"),ss=new T("9KEPoZmtHUrBbhWN1v1KWLMkkvwY6WLtAVUCPRtRjP4z"),as=new T("FarmqiPv5eAj3j1GMdMCMUGXqPUvmquZtMy86QH6rzhG"),us=new T("CLaimxFqjHzgTJtAGHU47NPhg6qrc5sCnpC4tBLyABQS"),cs=new T("srmqPvymJeFKQ4zGQed1GFppgkRHL9kaELCbyksJtPX"),ls=new T("9xQeWvG816bUx9EPjHmaT23yvVM2ZWbrrpZb9PusVFin"),ms=new T("675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8"),ps=new T("5quBtoiQqxF9Jv6KYKctB59NT3gtJD2Y65kdnB1Uev3h"),fs=new T("CDSr3ssLcRB6XYPJwAfFt18MZvEZp4LjHcvzBVZ45duo"),ds=new T("2TnjBuwqyBB9to5jURagDT7jLmBPefGRiKL2yh1zPZ4V"),gs=new T("LockrWmn6K5twhz3y9w1dQERbmgSaRkfnTeTKbpofwE"),hs=new T("kN1kEznaF5Xbd8LYuqtEFcxzWSBk5Fv6ygX6SqEGJVy"),bs=new T("routeUGWgWzqBWFcrCfv8tritsqukccJPu3q5GPP3xS"),ys=new T("7YttLkHDoNj9wyDur5pM1ejNaAvT9X4eqaYcHQqtj2G5"),ws=new T("6FJon3QE27qgPVggARueB22hLvoh22VzJpXv4rBEoSLF"),Ts=new T("CC12se5To1CdEuw7fDS27B7Geo5jJyL7t5UK2B44NgiH"),xs=new T("9HzJyW1qZsEiSfMUf6L2jo3CcTKAyBmSyKdwQeYisHrC"),Ps=new T("DropEU8AvevN3UrXWXTMuz3rqnMczQVNjq3kcSdW2SQi"),ks=new T("CPMMoo8L3F4NbTegBCKVNunggL7H1ZpdTHKxQB5qKP1C"),As=new T("GpMZbSM2GgvTKHJirzeGfMFoaZ8UR2X7F4v8vHTvxFbL"),Ss=new T("DNXgeM9EiiaAbaWvwjHj9fQQLAX5ZsfHyvmYUNRAdNC8"),ar=new T("CPMDWBwJDtYax9qW7AyRuVC19Cc4L4Vcy4n2BHAbHkCW"),ur=new T("7rQ1QFNosMkUCuh7Z7fPbTHvh73b68sQYdirycEzJVuw"),cr=new T("G11FKBRaAkHAKuLCgLM6K6NUc9rTjPAznRCjZifrTQe2"),Bs=new T("LockrWmn6K5twhz3y9w1dQERbmgSaRkfnTeTKbpofwE"),lr=new T("DLockwT7X7sxtLmGH9g5kmfcjaBtncdbUmi738m5bvQC"),Ls=new T("3f7GcQFG397GAaEnv51zR6tsTVihYRydnydDD1cXekxH"),mr=new T("7AFUeLVRjBfzqK3tTGw8hN48KLQWSk6DTE8xprWdPqix");var Is={SERUM_MARKET:T.default,OPENBOOK_MARKET:new T("EoTcMgcDRTJVZDMZWBoU6rhYHZfkNTVEAfz3uUJRcYGj"),UTIL1216:T.default,FarmV3:new T("85BFyr98MbCUU9MVTEgzx1nbhWACbJqLzho6zd6DZcWL"),FarmV5:new T("EcLzTrNg9V7qhcdyXDe2qjtPkiGzDM2UbdRaeaadU5r2"),FarmV6:new T("Farm2hJLcqPtPg8M4rR6DMrsRNc5TPm5Cs4bVQrMe2T7"),AmmV4:new T("HWy1jotHpo6UqeQxx49dpYYdQB8wj9Qk9MdxwjLvDHB8"),AmmStable:new T("DDg4VmQaJV9ogWce7LpcjBA9bv22wRp5uaTPa5pGjijF"),CLMM:new T("devi51mZmdwUJGU9hjN27vEz64Gps7uUefqxg27EAtH"),CLMM_LOCK_PROGRAM_ID:new T("DLockwT7X7sxtLmGH9g5kmfcjaBtncdbUmi738m5bvQC"),CLMM_LOCK_AUTH_ID:new T("8qmHNvu2Kr2C7U8mJL4Vz1vTDxMhVuXKREwU7TNoaVEo"),Router:new T("BVChZ3XFEwTMUk1o9i3HAf91H6mFxSwa5X2wFAWhYPhU"),CREATE_CPMM_POOL_PROGRAM:ar,CREATE_CPMM_POOL_AUTH:ur,CREATE_CPMM_POOL_FEE_ACC:cr,FEE_DESTINATION_ID:new T("3XMrhbv989VxAMi3DErLV9eJht1pHppW5LbKxe9fkEFR"),LOCK_CPMM_PROGRAM:lr,LCOK_CPMM_AUTH:mr};import Es from"bn.js";import{PublicKey as pr,AddressLookupTableAccount as Ot}from"@solana/web3.js";var fr={AiAibtFJts8e4W1FjWYRH34aBJkJqghdmXiJozK7MvTM:new Ot({key:new pr("AiAibtFJts8e4W1FjWYRH34aBJkJqghdmXiJozK7MvTM"),state:Ot.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 Zs,sendAndConfirmTransaction as Ys,Transaction as Js,TransactionMessage as ea,VersionedTransaction as ta}from"@solana/web3.js";import ra from"axios";var Fa=O("CobaltX_amount"),Va=be(dr);var De=({address:e,programId:t,decimals:n,...r})=>({chainId:101,address:Je(e).toBase58(),programId:t,logoURI:"",symbol:"",name:"",decimals:n,tags:[],extensions:r.extensions||{},...r});import{ASSOCIATED_TOKEN_PROGRAM_ID as xc,TOKEN_PROGRAM_ID as Pc}from"@solana/spl-token";import{PublicKey as ee,SystemProgram as Ac,SYSVAR_RENT_PUBKEY as Sc,TransactionInstruction as Er}from"@solana/web3.js";import{PublicKey as Tr}from"@solana/web3.js";import Kt,{isBN as Wt}from"bn.js";import{bits as uu,BitStructure as cu,blob as gr,Blob as lu,cstr as mu,f32 as pu,f32be as fu,f64 as du,f64be as gu,greedy as hu,Layout as hr,ns64 as bu,ns64be as yu,nu64 as wu,nu64be as Tu,offset as xu,s16 as Pu,s16be as ku,s24 as Au,s24be as Su,s32 as Bu,s32be as Lu,s40 as Iu,s40be as Nu,s48 as Cu,s48be as Eu,s8 as _u,seq as br,struct as Mu,Structure as yr,u16 as Ru,u16be as Du,u24 as Ou,u24be as vu,u32 as Fu,u32be as Vu,u40 as Ku,u40be as Wu,u48 as qu,u48be as Uu,u8 as Gu,UInt as wr,union as Hu,Union as zu,unionLayoutDiscriminator as ju,utf8 as Qu}from"@solana/buffer-layout";var it=hr,vt=yr;var Ft=wr;var Vt=br;var ot=gr;var Oe=class extends it{constructor(n,r,i){super(n,i);this.blob=ot(n),this.signed=r}decode(n,r=0){let i=new Kt(this.blob.decode(n,r),10,"le");return this.signed?i.fromTwos(this.span*8).clone():i}encode(n,r,i=0){return typeof n=="number"&&(n=new Kt(n)),this.signed&&(n=n.toTwos(this.span*8)),this.blob.encode(n.toArrayLike(Buffer,"le",this.span),r,i)}};function q(e){return new Ft(1,e)}function d(e){return new Oe(8,!1,e)}function $(e){return new Oe(16,!1,e)}var st=class extends it{constructor(n,r,i,o){super(n.span,o);this.layout=n,this.decoder=r,this.encoder=i}decode(n,r){return this.decoder(this.layout.decode(n,r))}encode(n,r,i){return this.layout.encode(this.encoder(n),r,i)}getSpan(n,r){return this.layout.getSpan(n,r)}};function N(e){return new st(ot(32),t=>new Tr(t),t=>t.toBuffer(),e)}var at=class extends vt{decode(t,n){return super.decode(t,n)}};function F(e,t,n){return new at(e,t,n)}function we(e,t,n){let r,i=typeof t=="number"?t:Wt(t)?t.toNumber():new Proxy(t,{get(o,s){if(!r){let a=Reflect.get(o,"count");r=Wt(a)?a.toNumber():a,Reflect.set(o,"count",r)}return Reflect.get(o,s)},set(o,s,a){return s==="count"&&(r=a),Reflect.set(o,s,a)}});return Vt(e,i,n)}var xr=F([q("instruction"),d("amountIn"),d("minAmountOut")]),Pr=F([q("instruction"),d("maxAmountIn"),d("amountOut")]),lc=F([q("instruction"),q("nonce")]),kr=F([q("instruction"),q("nonce"),d("startTime")]),mc=F([d("status"),d("nonce"),d("maxOrder"),d("depth"),d("baseDecimal"),d("quoteDecimal"),d("state"),d("resetFlag"),d("minSize"),d("volMaxCutRatio"),d("amountWaveRatio"),d("baseLotSize"),d("quoteLotSize"),d("minPriceMultiplier"),d("maxPriceMultiplier"),d("systemDecimalValue"),d("minSeparateNumerator"),d("minSeparateDenominator"),d("tradeFeeNumerator"),d("tradeFeeDenominator"),d("pnlNumerator"),d("pnlDenominator"),d("swapFeeNumerator"),d("swapFeeDenominator"),d("baseNeedTakePnl"),d("quoteNeedTakePnl"),d("quoteTotalPnl"),d("baseTotalPnl"),d("poolOpenTime"),d("punishPcAmount"),d("punishCoinAmount"),d("orderbookToInitTime"),$("swapBaseInAmount"),$("swapQuoteOutAmount"),d("swapBase2QuoteFee"),$("swapQuoteInAmount"),$("swapBaseOutAmount"),d("swapQuote2BaseFee"),N("baseVault"),N("quoteVault"),N("baseMint"),N("quoteMint"),N("lpMint"),N("openOrders"),N("marketId"),N("marketProgramId"),N("targetOrders"),N("withdrawQueue"),N("lpVault"),N("owner"),d("lpReserve"),we(d(),3,"padding")]),pc=F([d("accountType"),d("status"),d("nonce"),d("maxOrder"),d("depth"),d("baseDecimal"),d("quoteDecimal"),d("state"),d("resetFlag"),d("minSize"),d("volMaxCutRatio"),d("amountWaveRatio"),d("baseLotSize"),d("quoteLotSize"),d("minPriceMultiplier"),d("maxPriceMultiplier"),d("systemDecimalsValue"),d("abortTradeFactor"),d("priceTickMultiplier"),d("priceTick"),d("minSeparateNumerator"),d("minSeparateDenominator"),d("tradeFeeNumerator"),d("tradeFeeDenominator"),d("pnlNumerator"),d("pnlDenominator"),d("swapFeeNumerator"),d("swapFeeDenominator"),d("baseNeedTakePnl"),d("quoteNeedTakePnl"),d("quoteTotalPnl"),d("baseTotalPnl"),d("poolOpenTime"),d("punishPcAmount"),d("punishCoinAmount"),d("orderbookToInitTime"),$("swapBaseInAmount"),$("swapQuoteOutAmount"),$("swapQuoteInAmount"),$("swapBaseOutAmount"),d("swapQuote2BaseFee"),d("swapBase2QuoteFee"),N("baseVault"),N("quoteVault"),N("baseMint"