@cobaltx/sdk-v2
Version:
An SDK for building applications on top of CobaltX.
1 lines • 54.3 kB
JavaScript
import{PublicKey as Zt}from"@solana/web3.js";import st,{isBN as Ei}from"bn.js";import{bits as Mr,BitStructure as Rr,blob as Gt,Blob as _r,cstr as Dr,f32 as Or,f32be as Fr,f64 as Kr,f64be as vr,greedy as Vr,Layout as Ht,ns64 as Ur,ns64be as Wr,nu64 as qr,nu64be as Gr,offset as Hr,s16 as jr,s16be as zr,s24 as Zr,s24be as Jr,s32 as Xr,s32be as Qr,s40 as Yr,s40be as $r,s48 as ei,s48be as ti,s8 as ni,seq as ri,struct as ii,Structure as jt,u16 as oi,u16be as si,u24 as ai,u24be as ui,u32 as ci,u32be as li,u40 as fi,u40be as pi,u48 as mi,u48be as di,u8 as gi,UInt as zt,union as hi,Union as bi,unionLayoutDiscriminator as yi,utf8 as wi}from"@solana/buffer-layout";var Oe=Ht,ot=jt;var Fe=zt;var Ke=Gt;var ve=class extends Oe{constructor(n,r,i){super(n,i);this.blob=Ke(n),this.signed=r}decode(n,r=0){let i=new st(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 st(n)),this.signed&&(n=n.toTwos(this.span*8)),this.blob.encode(n.toArrayLike(Buffer,"le",this.span),r,i)}};function at(e){return new Fe(1,e)}function be(e){return new Fe(4,e)}function ye(e){return new ve(8,!1,e)}var Ve=class extends Oe{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 oe(e){return new Ve(Ke(32),t=>new Zt(t),t=>t.toBuffer(),e)}var Ue=class extends ot{decode(t,n){return super.decode(t,n)}};function ut(e,t,n){return new Ue(e,t,n)}var se=ut([oe("mint"),oe("owner"),ye("amount"),be("delegateOption"),oe("delegate"),at("state"),be("isNativeOption"),ye("isNative"),ye("delegatedAmount"),be("closeAuthorityOption"),oe("closeAuthority")]);function Jt(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"}function We(e,...t){if(!Jt(e))throw new Error("Uint8Array expected");if(t.length>0&&!t.includes(e.length))throw new Error("Uint8Array expected of length "+t+", got length="+e.length)}function qe(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function ct(e,t){We(e);let n=t.outputLen;if(e.length<n)throw new Error("digestInto() expects output buffer of length at least "+n)}var xe=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),v=(e,t)=>e<<32-t|e>>>t;function Xt(e){if(typeof e!="string")throw new Error("utf8ToBytes expected string, got "+typeof e);return new Uint8Array(new TextEncoder().encode(e))}function Ge(e){return typeof e=="string"&&(e=Xt(e)),We(e),e}var we=class{clone(){return this._cloneInto()}};function lt(e){let t=r=>e().update(Ge(r)).digest(),n=e();return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=()=>e(),t}function Qt(e,t,n,r){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,n,r);let i=BigInt(32),o=BigInt(4294967295),s=Number(n>>i&o),a=Number(n&o),c=r?4:0,u=r?0:4;e.setUint32(t+c,s,r),e.setUint32(t+u,a,r)}var ft=(e,t,n)=>e&t^~e&n,pt=(e,t,n)=>e&t^e&n^t&n,Te=class extends we{constructor(t,n,r,i){super(),this.blockLen=t,this.outputLen=n,this.padOffset=r,this.isLE=i,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(t),this.view=xe(this.buffer)}update(t){qe(this);let{view:n,buffer:r,blockLen:i}=this;t=Ge(t);let o=t.length;for(let s=0;s<o;){let a=Math.min(i-this.pos,o-s);if(a===i){let c=xe(t);for(;i<=o-s;s+=i)this.process(c,s);continue}r.set(t.subarray(s,s+a),this.pos),this.pos+=a,s+=a,this.pos===i&&(this.process(n,0),this.pos=0)}return this.length+=t.length,this.roundClean(),this}digestInto(t){qe(this),ct(t,this),this.finished=!0;let{buffer:n,view:r,blockLen:i,isLE:o}=this,{pos:s}=this;n[s++]=128,this.buffer.subarray(s).fill(0),this.padOffset>i-s&&(this.process(r,0),s=0);for(let f=s;f<i;f++)n[f]=0;Qt(r,i-8,BigInt(this.length*8),o),this.process(r,0);let a=xe(t),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let u=c/4,l=this.get();if(u>l.length)throw new Error("_sha2: outputLen bigger than state");for(let f=0;f<u;f++)a.setUint32(4*f,l[f],o)}digest(){let{buffer:t,outputLen:n}=this;this.digestInto(t);let r=t.slice(0,n);return this.destroy(),r}_cloneInto(t){t||(t=new this.constructor),t.set(...this.get());let{blockLen:n,buffer:r,length:i,finished:o,destroyed:s,pos:a}=this;return t.length=i,t.pos=a,t.finished=o,t.destroyed=s,i%n&&t.buffer.set(r),t}};var Yt=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),Z=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),J=new Uint32Array(64),He=class extends Te{constructor(){super(64,32,8,!1),this.A=Z[0]|0,this.B=Z[1]|0,this.C=Z[2]|0,this.D=Z[3]|0,this.E=Z[4]|0,this.F=Z[5]|0,this.G=Z[6]|0,this.H=Z[7]|0}get(){let{A:t,B:n,C:r,D:i,E:o,F:s,G:a,H:c}=this;return[t,n,r,i,o,s,a,c]}set(t,n,r,i,o,s,a,c){this.A=t|0,this.B=n|0,this.C=r|0,this.D=i|0,this.E=o|0,this.F=s|0,this.G=a|0,this.H=c|0}process(t,n){for(let f=0;f<16;f++,n+=4)J[f]=t.getUint32(n,!1);for(let f=16;f<64;f++){let p=J[f-15],d=J[f-2],P=v(p,7)^v(p,18)^p>>>3,b=v(d,17)^v(d,19)^d>>>10;J[f]=b+J[f-7]+P+J[f-16]|0}let{A:r,B:i,C:o,D:s,E:a,F:c,G:u,H:l}=this;for(let f=0;f<64;f++){let p=v(a,6)^v(a,11)^v(a,25),d=l+p+ft(a,c,u)+Yt[f]+J[f]|0,b=(v(r,2)^v(r,13)^v(r,22))+pt(r,i,o)|0;l=u,u=c,c=a,a=s+d|0,s=o,o=i,i=r,r=d+b|0}r=r+this.A|0,i=i+this.B|0,o=o+this.C|0,s=s+this.D|0,a=a+this.E|0,c=c+this.F|0,u=u+this.G|0,l=l+this.H|0,this.set(r,i,o,s,a,c,u,l)}roundClean(){J.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var mt=lt(()=>new He);import{TOKEN_PROGRAM_ID as wr}from"@solana/spl-token";import{Keypair as xr,PublicKey as Wt}from"@solana/web3.js";import Tr from"bn.js";import{MINT_SIZE as Ji,TOKEN_PROGRAM_ID as Xi,getTransferFeeConfig as Qi,unpackMint as Yi}from"@solana/spl-token";import{PublicKey as ro}from"@solana/web3.js";import{get as dt,set as $t}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 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}},gt={},en={};function D(e){let t=dt(gt,e);if(!t){let n=dt(en,e);t=new je({name:e,logLevel:n}),$t(gt,e,t)}return t}var so=D("CobaltX_accountInfo_util");import z from"bn.js";var ee=9e15,$=1e9,Ze="0123456789abcdef",Ae="2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058",Be="3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789",Je={precision:20,rounding:4,modulo:1,toExpNeg:-7,toExpPos:21,minE:-ee,maxE:ee,crypto:!1},wt,H,y=!0,Se="[DecimalError] ",Y=Se+"Invalid argument: ",xt=Se+"Precision limit exceeded",Tt=Se+"crypto unavailable",Pt="[object Decimal]",R=Math.floor,C=Math.pow,tn=/^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i,nn=/^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i,rn=/^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i,At=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,U=1e7,h=7,on=9007199254740991,sn=Ae.length-1,Xe=Be.length-1,m={toStringTag:Pt};m.absoluteValue=m.abs=function(){var e=new this.constructor(this);return e.s<0&&(e.s=1),g(e)};m.ceil=function(){return g(new this.constructor(this),this.e+1,2)};m.clampedTo=m.clamp=function(e,t){var n,r=this,i=r.constructor;if(e=new i(e),t=new i(t),!e.s||!t.s)return new i(NaN);if(e.gt(t))throw Error(Y+t);return n=r.cmp(e),n<0?e:r.cmp(t)>0?t:new i(r)};m.comparedTo=m.cmp=function(e){var t,n,r,i,o=this,s=o.d,a=(e=new o.constructor(e)).d,c=o.s,u=e.s;if(!s||!a)return!c||!u?NaN:c!==u?c:s===a?0:!s^c<0?1:-1;if(!s[0]||!a[0])return s[0]?c:a[0]?-u:0;if(c!==u)return c;if(o.e!==e.e)return o.e>e.e^c<0?1:-1;for(r=s.length,i=a.length,t=0,n=r<i?r:i;t<n;++t)if(s[t]!==a[t])return s[t]>a[t]^c<0?1:-1;return r===i?0:r>i^c<0?1:-1};m.cosine=m.cos=function(){var e,t,n=this,r=n.constructor;return n.d?n.d[0]?(e=r.precision,t=r.rounding,r.precision=e+Math.max(n.e,n.sd())+h,r.rounding=1,n=an(r,Ct(r,n)),r.precision=e,r.rounding=t,g(H==2||H==3?n.neg():n,e,t,!0)):new r(1):new r(NaN)};m.cubeRoot=m.cbrt=function(){var e,t,n,r,i,o,s,a,c,u,l=this,f=l.constructor;if(!l.isFinite()||l.isZero())return new f(l);for(y=!1,o=l.s*C(l.s*l,1/3),!o||Math.abs(o)==1/0?(n=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=R((e+1)/3)-(e%3==(e<0?-1:2)),o==1/0?n="5e"+e:(n=o.toExponential(),n=n.slice(0,n.indexOf("e")+1)+e),r=new f(n),r.s=l.s):r=new f(o.toString()),s=(e=f.precision)+3;;)if(a=r,c=a.times(a).times(a),u=c.plus(l),r=B(u.plus(l).times(a),u.plus(c),s+2,1),N(a.d).slice(0,s)===(n=N(r.d)).slice(0,s))if(n=n.slice(s-3,s+1),n=="9999"||!i&&n=="4999"){if(!i&&(g(a,e+1,0),a.times(a).times(a).eq(l))){r=a;break}s+=4,i=1}else{(!+n||!+n.slice(1)&&n.charAt(0)=="5")&&(g(r,e+1,1),t=!r.times(r).times(r).eq(l));break}return y=!0,g(r,e,f.rounding,t)};m.decimalPlaces=m.dp=function(){var e,t=this.d,n=NaN;if(t){if(e=t.length-1,n=(e-R(this.e/h))*h,e=t[e],e)for(;e%10==0;e/=10)n--;n<0&&(n=0)}return n};m.dividedBy=m.div=function(e){return B(this,new this.constructor(e))};m.dividedToIntegerBy=m.divToInt=function(e){var t=this,n=t.constructor;return g(B(t,new n(e),0,1,1),n.precision,n.rounding)};m.equals=m.eq=function(e){return this.cmp(e)===0};m.floor=function(){return g(new this.constructor(this),this.e+1,3)};m.greaterThan=m.gt=function(e){return this.cmp(e)>0};m.greaterThanOrEqualTo=m.gte=function(e){var t=this.cmp(e);return t==1||t===0};m.hyperbolicCosine=m.cosh=function(){var e,t,n,r,i,o=this,s=o.constructor,a=new s(1);if(!o.isFinite())return new s(o.s?1/0:NaN);if(o.isZero())return a;n=s.precision,r=s.rounding,s.precision=n+Math.max(o.e,o.sd())+4,s.rounding=1,i=o.d.length,i<32?(e=Math.ceil(i/3),t=(1/Ce(4,e)).toString()):(e=16,t="2.3283064365386962890625e-10"),o=te(s,1,o.times(t),new s(1),!0);for(var c,u=e,l=new s(8);u--;)c=o.times(o),o=a.minus(c.times(l.minus(c.times(l))));return g(o,s.precision=n,s.rounding=r,!0)};m.hyperbolicSine=m.sinh=function(){var e,t,n,r,i=this,o=i.constructor;if(!i.isFinite()||i.isZero())return new o(i);if(t=o.precision,n=o.rounding,o.precision=t+Math.max(i.e,i.sd())+4,o.rounding=1,r=i.d.length,r<3)i=te(o,2,i,i,!0);else{e=1.4*Math.sqrt(r),e=e>16?16:e|0,i=i.times(1/Ce(5,e)),i=te(o,2,i,i,!0);for(var s,a=new o(5),c=new o(16),u=new o(20);e--;)s=i.times(i),i=i.times(a.plus(s.times(c.times(s).plus(u))))}return o.precision=t,o.rounding=n,g(i,t,n,!0)};m.hyperbolicTangent=m.tanh=function(){var e,t,n=this,r=n.constructor;return n.isFinite()?n.isZero()?new r(n):(e=r.precision,t=r.rounding,r.precision=e+7,r.rounding=1,B(n.sinh(),n.cosh(),r.precision=e,r.rounding=t)):new r(n.s)};m.inverseCosine=m.acos=function(){var e,t=this,n=t.constructor,r=t.abs().cmp(1),i=n.precision,o=n.rounding;return r!==-1?r===0?t.isNeg()?V(n,i,o):new n(0):new n(NaN):t.isZero()?V(n,i+4,o).times(.5):(n.precision=i+6,n.rounding=1,t=t.asin(),e=V(n,i+4,o).times(.5),n.precision=i,n.rounding=o,e.minus(t))};m.inverseHyperbolicCosine=m.acosh=function(){var e,t,n=this,r=n.constructor;return n.lte(1)?new r(n.eq(1)?0:NaN):n.isFinite()?(e=r.precision,t=r.rounding,r.precision=e+Math.max(Math.abs(n.e),n.sd())+4,r.rounding=1,y=!1,n=n.times(n).minus(1).sqrt().plus(n),y=!0,r.precision=e,r.rounding=t,n.ln()):new r(n)};m.inverseHyperbolicSine=m.asinh=function(){var e,t,n=this,r=n.constructor;return!n.isFinite()||n.isZero()?new r(n):(e=r.precision,t=r.rounding,r.precision=e+2*Math.max(Math.abs(n.e),n.sd())+6,r.rounding=1,y=!1,n=n.times(n).plus(1).sqrt().plus(n),y=!0,r.precision=e,r.rounding=t,n.ln())};m.inverseHyperbolicTangent=m.atanh=function(){var e,t,n,r,i=this,o=i.constructor;return i.isFinite()?i.e>=0?new o(i.abs().eq(1)?i.s/0:i.isZero()?i:NaN):(e=o.precision,t=o.rounding,r=i.sd(),Math.max(r,e)<2*-i.e-1?g(new o(i),e,t,!0):(o.precision=n=r-i.e,i=B(i.plus(1),new o(1).minus(i),n+e,1),o.precision=e+4,o.rounding=1,i=i.ln(),o.precision=e,o.rounding=t,i.times(.5))):new o(NaN)};m.inverseSine=m.asin=function(){var e,t,n,r,i=this,o=i.constructor;return i.isZero()?new o(i):(t=i.abs().cmp(1),n=o.precision,r=o.rounding,t!==-1?t===0?(e=V(o,n+4,r).times(.5),e.s=i.s,e):new o(NaN):(o.precision=n+6,o.rounding=1,i=i.div(new o(1).minus(i.times(i)).sqrt().plus(1)).atan(),o.precision=n,o.rounding=r,i.times(2)))};m.inverseTangent=m.atan=function(){var e,t,n,r,i,o,s,a,c,u=this,l=u.constructor,f=l.precision,p=l.rounding;if(u.isFinite()){if(u.isZero())return new l(u);if(u.abs().eq(1)&&f+4<=Xe)return s=V(l,f+4,p).times(.25),s.s=u.s,s}else{if(!u.s)return new l(NaN);if(f+4<=Xe)return s=V(l,f+4,p).times(.5),s.s=u.s,s}for(l.precision=a=f+10,l.rounding=1,n=Math.min(28,a/h+2|0),e=n;e;--e)u=u.div(u.times(u).plus(1).sqrt().plus(1));for(y=!1,t=Math.ceil(a/h),r=1,c=u.times(u),s=new l(u),i=u;e!==-1;)if(i=i.times(c),o=s.minus(i.div(r+=2)),i=i.times(c),s=o.plus(i.div(r+=2)),s.d[t]!==void 0)for(e=t;s.d[e]===o.d[e]&&e--;);return n&&(s=s.times(2<<n-1)),y=!0,g(s,l.precision=f,l.rounding=p,!0)};m.isFinite=function(){return!!this.d};m.isInteger=m.isInt=function(){return!!this.d&&R(this.e/h)>this.d.length-2};m.isNaN=function(){return!this.s};m.isNegative=m.isNeg=function(){return this.s<0};m.isPositive=m.isPos=function(){return this.s>0};m.isZero=function(){return!!this.d&&this.d[0]===0};m.lessThan=m.lt=function(e){return this.cmp(e)<0};m.lessThanOrEqualTo=m.lte=function(e){return this.cmp(e)<1};m.logarithm=m.log=function(e){var t,n,r,i,o,s,a,c,u=this,l=u.constructor,f=l.precision,p=l.rounding,d=5;if(e==null)e=new l(10),t=!0;else{if(e=new l(e),n=e.d,e.s<0||!n||!n[0]||e.eq(1))return new l(NaN);t=e.eq(10)}if(n=u.d,u.s<0||!n||!n[0]||u.eq(1))return new l(n&&!n[0]?-1/0:u.s!=1?NaN:n?0:1/0);if(t)if(n.length>1)o=!0;else{for(i=n[0];i%10===0;)i/=10;o=i!==1}if(y=!1,a=f+d,s=Q(u,a),r=t?ke(l,a+10):Q(e,a),c=B(s,r,a,1),ae(c.d,i=f,p))do if(a+=10,s=Q(u,a),r=t?ke(l,a+10):Q(e,a),c=B(s,r,a,1),!o){+N(c.d).slice(i+1,i+15)+1==1e14&&(c=g(c,f+1,0));break}while(ae(c.d,i+=10,p));return y=!0,g(c,f,p)};m.minus=m.sub=function(e){var t,n,r,i,o,s,a,c,u,l,f,p,d=this,P=d.constructor;if(e=new P(e),!d.d||!e.d)return!d.s||!e.s?e=new P(NaN):d.d?e.s=-e.s:e=new P(e.d||d.s!==e.s?d:NaN),e;if(d.s!=e.s)return e.s=-e.s,d.plus(e);if(u=d.d,p=e.d,a=P.precision,c=P.rounding,!u[0]||!p[0]){if(p[0])e.s=-e.s;else if(u[0])e=new P(d);else return new P(c===3?-0:0);return y?g(e,a,c):e}if(n=R(e.e/h),l=R(d.e/h),u=u.slice(),o=l-n,o){for(f=o<0,f?(t=u,o=-o,s=p.length):(t=p,n=l,s=u.length),r=Math.max(Math.ceil(a/h),s)+2,o>r&&(o=r,t.length=1),t.reverse(),r=o;r--;)t.push(0);t.reverse()}else{for(r=u.length,s=p.length,f=r<s,f&&(s=r),r=0;r<s;r++)if(u[r]!=p[r]){f=u[r]<p[r];break}o=0}for(f&&(t=u,u=p,p=t,e.s=-e.s),s=u.length,r=p.length-s;r>0;--r)u[s++]=0;for(r=p.length;r>o;){if(u[--r]<p[r]){for(i=r;i&&u[--i]===0;)u[i]=U-1;--u[i],u[r]+=U}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=Le(u,n),y?g(e,a,c):e):new P(c===3?-0:0)};m.modulo=m.mod=function(e){var t,n=this,r=n.constructor;return e=new r(e),!n.d||!e.s||e.d&&!e.d[0]?new r(NaN):!e.d||n.d&&!n.d[0]?g(new r(n),r.precision,r.rounding):(y=!1,r.modulo==9?(t=B(n,e.abs(),0,3,1),t.s*=e.s):t=B(n,e,0,r.modulo,1),t=t.times(e),y=!0,n.minus(t))};m.naturalExponential=m.exp=function(){return Qe(this)};m.naturalLogarithm=m.ln=function(){return Q(this)};m.negated=m.neg=function(){var e=new this.constructor(this);return e.s=-e.s,g(e)};m.plus=m.add=function(e){var t,n,r,i,o,s,a,c,u,l,f=this,p=f.constructor;if(e=new p(e),!f.d||!e.d)return!f.s||!e.s?e=new p(NaN):f.d||(e=new p(e.d||f.s===e.s?f:NaN)),e;if(f.s!=e.s)return e.s=-e.s,f.minus(e);if(u=f.d,l=e.d,a=p.precision,c=p.rounding,!u[0]||!l[0])return l[0]||(e=new p(f)),y?g(e,a,c):e;if(o=R(f.e/h),r=R(e.e/h),u=u.slice(),i=o-r,i){for(i<0?(n=u,i=-i,s=l.length):(n=l,r=o,s=u.length),o=Math.ceil(a/h),s=o>s?o+1:s+1,i>s&&(i=s,n.length=1),n.reverse();i--;)n.push(0);n.reverse()}for(s=u.length,i=l.length,s-i<0&&(i=s,n=l,l=u,u=n),t=0;i;)t=(u[--i]=u[i]+l[i]+t)/U|0,u[i]%=U;for(t&&(u.unshift(t),++r),s=u.length;u[--s]==0;)u.pop();return e.d=u,e.e=Le(u,r),y?g(e,a,c):e};m.precision=m.sd=function(e){var t,n=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(Y+e);return n.d?(t=Bt(n.d),e&&n.e+1>t&&(t=n.e+1)):t=NaN,t};m.round=function(){var e=this,t=e.constructor;return g(new t(e),e.e+1,t.rounding)};m.sine=m.sin=function(){var e,t,n=this,r=n.constructor;return n.isFinite()?n.isZero()?new r(n):(e=r.precision,t=r.rounding,r.precision=e+Math.max(n.e,n.sd())+h,r.rounding=1,n=cn(r,Ct(r,n)),r.precision=e,r.rounding=t,g(H>2?n.neg():n,e,t,!0)):new r(NaN)};m.squareRoot=m.sqrt=function(){var e,t,n,r,i,o,s=this,a=s.d,c=s.e,u=s.s,l=s.constructor;if(u!==1||!a||!a[0])return new l(!u||u<0&&(!a||a[0])?NaN:a?s:1/0);for(y=!1,u=Math.sqrt(+s),u==0||u==1/0?(t=N(a),(t.length+c)%2==0&&(t+="0"),u=Math.sqrt(t),c=R((c+1)/2)-(c<0||c%2),u==1/0?t="5e"+c:(t=u.toExponential(),t=t.slice(0,t.indexOf("e")+1)+c),r=new l(t)):r=new l(u.toString()),n=(c=l.precision)+3;;)if(o=r,r=o.plus(B(s,o,n+2,1)).times(.5),N(o.d).slice(0,n)===(t=N(r.d)).slice(0,n))if(t=t.slice(n-3,n+1),t=="9999"||!i&&t=="4999"){if(!i&&(g(o,c+1,0),o.times(o).eq(s))){r=o;break}n+=4,i=1}else{(!+t||!+t.slice(1)&&t.charAt(0)=="5")&&(g(r,c+1,1),e=!r.times(r).eq(s));break}return y=!0,g(r,c,l.rounding,e)};m.tangent=m.tan=function(){var e,t,n=this,r=n.constructor;return n.isFinite()?n.isZero()?new r(n):(e=r.precision,t=r.rounding,r.precision=e+10,r.rounding=1,n=n.sin(),n.s=1,n=B(n,new r(1).minus(n.times(n)).sqrt(),e+10,0),r.precision=e,r.rounding=t,g(H==2||H==4?n.neg():n,e,t,!0)):new r(NaN)};m.times=m.mul=function(e){var t,n,r,i,o,s,a,c,u,l=this,f=l.constructor,p=l.d,d=(e=new f(e)).d;if(e.s*=l.s,!p||!p[0]||!d||!d[0])return new f(!e.s||p&&!p[0]&&!d||d&&!d[0]&&!p?NaN:!p||!d?e.s/0:e.s*0);for(n=R(l.e/h)+R(e.e/h),c=p.length,u=d.length,c<u&&(o=p,p=d,d=o,s=c,c=u,u=s),o=[],s=c+u,r=s;r--;)o.push(0);for(r=u;--r>=0;){for(t=0,i=c+r;i>r;)a=o[i]+d[r]*p[i-r-1]+t,o[i--]=a%U|0,t=a/U|0;o[i]=(o[i]+t)%U|0}for(;!o[--s];)o.pop();return t?++n:o.shift(),e.d=o,e.e=Le(o,n),y?g(e,f.precision,f.rounding):e};m.toBinary=function(e,t){return $e(this,2,e,t)};m.toDecimalPlaces=m.toDP=function(e,t){var n=this,r=n.constructor;return n=new r(n),e===void 0?n:(O(e,0,$),t===void 0?t=r.rounding:O(t,0,8),g(n,e+n.e+1,t))};m.toExponential=function(e,t){var n,r=this,i=r.constructor;return e===void 0?n=q(r,!0):(O(e,0,$),t===void 0?t=i.rounding:O(t,0,8),r=g(new i(r),e+1,t),n=q(r,!0,e+1)),r.isNeg()&&!r.isZero()?"-"+n:n};m.toFixed=function(e,t){var n,r,i=this,o=i.constructor;return e===void 0?n=q(i):(O(e,0,$),t===void 0?t=o.rounding:O(t,0,8),r=g(new o(i),e+i.e+1,t),n=q(r,!1,e+r.e+1)),i.isNeg()&&!i.isZero()?"-"+n:n};m.toFraction=function(e){var t,n,r,i,o,s,a,c,u,l,f,p,d=this,P=d.d,b=d.constructor;if(!P)return new b(d);if(u=n=new b(1),r=c=new b(0),t=new b(r),o=t.e=Bt(P)-d.e-1,s=o%h,t.d[0]=C(10,s<0?h+s:s),e==null)e=o>0?t:u;else{if(a=new b(e),!a.isInt()||a.lt(u))throw Error(Y+a);e=a.gt(t)?o>0?t:u:a}for(y=!1,a=new b(N(P)),l=b.precision,b.precision=o=P.length*h*2;f=B(a,t,0,1,1),i=n.plus(f.times(r)),i.cmp(e)!=1;)n=r,r=i,i=u,u=c.plus(f.times(i)),c=i,i=t,t=a.minus(f.times(i)),a=i;return i=B(e.minus(n),r,0,1,1),c=c.plus(i.times(u)),n=n.plus(i.times(r)),c.s=u.s=d.s,p=B(u,r,o,1).minus(d).abs().cmp(B(c,n,o,1).minus(d).abs())<1?[u,r]:[c,n],b.precision=l,y=!0,p};m.toHexadecimal=m.toHex=function(e,t){return $e(this,16,e,t)};m.toNearest=function(e,t){var n=this,r=n.constructor;if(n=new r(n),e==null){if(!n.d)return n;e=new r(1),t=r.rounding}else{if(e=new r(e),t===void 0?t=r.rounding:O(t,0,8),!n.d)return e.s?n:e;if(!e.d)return e.s&&(e.s=n.s),e}return e.d[0]?(y=!1,n=B(n,e,0,t,1).times(e),y=!0,g(n)):(e.s=n.s,n=e),n};m.toNumber=function(){return+this};m.toOctal=function(e,t){return $e(this,8,e,t)};m.toPower=m.pow=function(e){var t,n,r,i,o,s,a=this,c=a.constructor,u=+(e=new c(e));if(!a.d||!e.d||!a.d[0]||!e.d[0])return new c(C(+a,u));if(a=new c(a),a.eq(1))return a;if(r=c.precision,o=c.rounding,e.eq(1))return g(a,r,o);if(t=R(e.e/h),t>=e.d.length-1&&(n=u<0?-u:u)<=on)return i=kt(c,a,n,r),e.s<0?new c(1).div(i):g(i,r,o);if(s=a.s,s<0){if(t<e.d.length-1)return new c(NaN);if((e.d[t]&1)==0&&(s=1),a.e==0&&a.d[0]==1&&a.d.length==1)return a.s=s,a}return n=C(+a,u),t=n==0||!isFinite(n)?R(u*(Math.log("0."+N(a.d))/Math.LN10+a.e+1)):new c(n+"").e,t>c.maxE+1||t<c.minE-1?new c(t>0?s/0:0):(y=!1,c.rounding=a.s=1,n=Math.min(12,(t+"").length),i=Qe(e.times(Q(a,r+n)),r),i.d&&(i=g(i,r+5,1),ae(i.d,r,o)&&(t=r+10,i=g(Qe(e.times(Q(a,t+n)),t),t+5,1),+N(i.d).slice(r+1,r+15)+1==1e14&&(i=g(i,r+1,0)))),i.s=s,y=!0,c.rounding=o,g(i,r,o))};m.toPrecision=function(e,t){var n,r=this,i=r.constructor;return e===void 0?n=q(r,r.e<=i.toExpNeg||r.e>=i.toExpPos):(O(e,1,$),t===void 0?t=i.rounding:O(t,0,8),r=g(new i(r),e,t),n=q(r,e<=r.e||r.e<=i.toExpNeg,e)),r.isNeg()&&!r.isZero()?"-"+n:n};m.toSignificantDigits=m.toSD=function(e,t){var n=this,r=n.constructor;return e===void 0?(e=r.precision,t=r.rounding):(O(e,1,$),t===void 0?t=r.rounding:O(t,0,8)),g(new r(n),e,t)};m.toString=function(){var e=this,t=e.constructor,n=q(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()&&!e.isZero()?"-"+n:n};m.truncated=m.trunc=function(){return g(new this.constructor(this),this.e+1,1)};m.valueOf=m.toJSON=function(){var e=this,t=e.constructor,n=q(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()?"-"+n:n};function N(e){var t,n,r,i=e.length-1,o="",s=e[0];if(i>0){for(o+=s,t=1;t<i;t++)r=e[t]+"",n=h-r.length,n&&(o+=X(n)),o+=r;s=e[t],r=s+"",n=h-r.length,n&&(o+=X(n))}else if(s===0)return"0";for(;s%10===0;)s/=10;return o+s}function O(e,t,n){if(e!==~~e||e<t||e>n)throw Error(Y+e)}function ae(e,t,n,r){var i,o,s,a;for(o=e[0];o>=10;o/=10)--t;return--t<0?(t+=h,i=0):(i=Math.ceil((t+1)/h),t%=h),o=C(10,h-t),a=e[i]%o|0,r==null?t<3?(t==0?a=a/100|0:t==1&&(a=a/10|0),s=n<4&&a==99999||n>3&&a==49999||a==5e4||a==0):s=(n<4&&a+1==o||n>3&&a+1==o/2)&&(e[i+1]/o/100|0)==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 Pe(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]+=Ze.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 an(e,t){var n,r,i;if(t.isZero())return t;r=t.d.length,r<32?(n=Math.ceil(r/3),i=(1/Ce(4,n)).toString()):(n=16,i="2.3283064365386962890625e-10"),e.precision+=n,t=te(e,1,t.times(i),new e(1));for(var o=n;o--;){var s=t.times(t);t=s.times(s).minus(s).times(8).plus(1)}return e.precision-=n,t}var B=function(){function e(r,i,o){var s,a=0,c=r.length;for(r=r.slice();c--;)s=r[c]*i+a,r[c]=s%o|0,a=s/o|0;return a&&r.unshift(a),r}function t(r,i,o,s){var a,c;if(o!=s)c=o>s?1:-1;else for(a=c=0;a<o;a++)if(r[a]!=i[a]){c=r[a]>i[a]?1:-1;break}return c}function n(r,i,o,s){for(var a=0;o--;)r[o]-=a,a=r[o]<i[o]?1:0,r[o]=a*s+r[o]-i[o];for(;!r[0]&&r.length>1;)r.shift()}return function(r,i,o,s,a,c){var u,l,f,p,d,P,b,_,L,F,A,E,me,G,Re,de,ie,_e,K,ge,he=r.constructor,De=r.s==i.s?1:-1,M=r.d,k=i.d;if(!M||!M[0]||!k||!k[0])return new he(!r.s||!i.s||(M?k&&M[0]==k[0]:!k)?NaN:M&&M[0]==0||!k?De*0:De/0);for(c?(d=1,l=r.e-i.e):(c=U,d=h,l=R(r.e/d)-R(i.e/d)),K=k.length,ie=M.length,L=new he(De),F=L.d=[],f=0;k[f]==(M[f]||0);f++);if(k[f]>(M[f]||0)&&l--,o==null?(G=o=he.precision,s=he.rounding):a?G=o+(r.e-i.e)+1:G=o,G<0)F.push(1),P=!0;else{if(G=G/d+2|0,f=0,K==1){for(p=0,k=k[0],G++;(f<ie||p)&&G--;f++)Re=p*c+(M[f]||0),F[f]=Re/k|0,p=Re%k|0;P=p||f<ie}else{for(p=c/(k[0]+1)|0,p>1&&(k=e(k,p,c),M=e(M,p,c),K=k.length,ie=M.length),de=K,A=M.slice(0,K),E=A.length;E<K;)A[E++]=0;ge=k.slice(),ge.unshift(0),_e=k[0],k[1]>=c/2&&++_e;do p=0,u=t(k,A,K,E),u<0?(me=A[0],K!=E&&(me=me*c+(A[1]||0)),p=me/_e|0,p>1?(p>=c&&(p=c-1),b=e(k,p,c),_=b.length,E=A.length,u=t(b,A,_,E),u==1&&(p--,n(b,K<_?ge:k,_,c))):(p==0&&(u=p=1),b=k.slice()),_=b.length,_<E&&b.unshift(0),n(A,b,E,c),u==-1&&(E=A.length,u=t(k,A,K,E),u<1&&(p++,n(A,K<E?ge:k,E,c))),E=A.length):u===0&&(p++,A=[0]),F[f++]=p,u&&A[0]?A[E++]=M[de]||0:(A=[M[de]],E=1);while((de++<ie||A[0]!==void 0)&&G--);P=A[0]!==void 0}F[0]||F.shift()}if(d==1)L.e=l,wt=P;else{for(f=1,p=F[0];p>=10;p/=10)f++;L.e=f+l*d-1,g(L,a?o+L.e+1:o,s,P)}return L}}();function g(e,t,n,r){var i,o,s,a,c,u,l,f,p,d=e.constructor;e:if(t!=null){if(f=e.d,!f)return e;for(i=1,a=f[0];a>=10;a/=10)i++;if(o=t-i,o<0)o+=h,s=t,l=f[p=0],c=l/C(10,i-s-1)%10|0;else if(p=Math.ceil((o+1)/h),a=f.length,p>=a)if(r){for(;a++<=p;)f.push(0);l=c=0,i=1,o%=h,s=o-h+1}else break e;else{for(l=a=f[p],i=1;a>=10;a/=10)i++;o%=h,s=o-h+i,c=s<0?0:l/C(10,i-s-1)%10|0}if(r=r||t<0||f[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:f[p-1])%10&1||n==(e.s<0?8:7)),t<1||!f[0])return f.length=0,u?(t-=e.e+1,f[0]=C(10,(h-t%h)%h),e.e=-t||0):f[0]=e.e=0,e;if(o==0?(f.length=p,a=1,p--):(f.length=p+1,a=C(10,h-o),f[p]=s>0?(l/C(10,i-s)%C(10,s)|0)*a:0),u)for(;;)if(p==0){for(o=1,s=f[0];s>=10;s/=10)o++;for(s=f[0]+=a,a=1;s>=10;s/=10)a++;o!=a&&(e.e++,f[0]==U&&(f[0]=1));break}else{if(f[p]+=a,f[p]!=U)break;f[p--]=0,a=1}for(o=f.length;f[--o]===0;)f.pop()}return y&&(e.e>d.maxE?(e.d=null,e.e=NaN):e.e<d.minE&&(e.e=0,e.d=[0])),e}function q(e,t,n){if(!e.isFinite())return Lt(e);var r,i=e.e,o=N(e.d),s=o.length;return t?(n&&(r=n-s)>0?o=o.charAt(0)+"."+o.slice(1)+X(r):s>1&&(o=o.charAt(0)+"."+o.slice(1)),o=o+(e.e<0?"e":"e+")+e.e):i<0?(o="0."+X(-i-1)+o,n&&(r=n-s)>0&&(o+=X(r))):i>=s?(o+=X(i+1-s),n&&(r=n-i-1)>0&&(o=o+"."+X(r))):((r=i+1)<s&&(o=o.slice(0,r)+"."+o.slice(r)),n&&(r=n-s)>0&&(i+1===s&&(o+="."),o+=X(r))),o}function Le(e,t){var n=e[0];for(t*=h;n>=10;n/=10)t++;return t}function ke(e,t,n){if(t>sn)throw y=!0,n&&(e.precision=n),Error(xt);return g(new e(Ae),t,1,!0)}function V(e,t,n){if(t>Xe)throw Error(xt);return g(new e(Be),t,n,!0)}function Bt(e){var t=e.length-1,n=t*h+1;if(t=e[t],t){for(;t%10==0;t/=10)n--;for(t=e[0];t>=10;t/=10)n++}return n}function X(e){for(var t="";e--;)t+="0";return t}function kt(e,t,n,r){var i,o=new e(1),s=Math.ceil(r/h+4);for(y=!1;;){if(n%2&&(o=o.times(t),bt(o.d,s)&&(i=!0)),n=R(n/2),n===0){n=o.d.length-1,i&&o.d[n]===0&&++o.d[n];break}t=t.times(t),bt(t.d,s)}return y=!0,o}function ht(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 Qe(e,t){var n,r,i,o,s,a,c,u=0,l=0,f=0,p=e.constructor,d=p.rounding,P=p.precision;if(!e.d||!e.d[0]||e.e>17)return new p(e.d?e.d[0]?e.s<0?0:1/0:1:e.s?e.s<0?0:e:0/0);for(t==null?(y=!1,c=P):c=t,a=new p(.03125);e.e>-2;)e=e.times(a),f+=5;for(r=Math.log(C(2,f))/Math.LN10*2+5|0,c+=r,n=o=s=new p(1),p.precision=c;;){if(o=g(o.times(e),c,1),n=n.times(++l),a=s.plus(B(o,n,c,1)),N(a.d).slice(0,c)===N(s.d).slice(0,c)){for(i=f;i--;)s=g(s.times(s),c,1);if(t==null)if(u<3&&ae(s.d,c-r,d,u))p.precision=c+=10,n=o=a=new p(1),l=0,u++;else return g(s,p.precision=P,d,y=!0);else return p.precision=P,s}s=a}}function Q(e,t){var n,r,i,o,s,a,c,u,l,f,p,d=1,P=10,b=e,_=b.d,L=b.constructor,F=L.rounding,A=L.precision;if(b.s<0||!_||!_[0]||!b.e&&_[0]==1&&_.length==1)return new L(_&&!_[0]?-1/0:b.s!=1?NaN:_?0:b);if(t==null?(y=!1,l=A):l=t,L.precision=l+=P,n=N(_),r=n.charAt(0),Math.abs(o=b.e)<15e14){for(;r<7&&r!=1||r==1&&n.charAt(1)>3;)b=b.times(e),n=N(b.d),r=n.charAt(0),d++;o=b.e,r>1?(b=new L("0."+n),o++):b=new L(r+"."+n.slice(1))}else return u=ke(L,l+2,A).times(o+""),b=Q(new L(r+"."+n.slice(1)),l-P).plus(u),L.precision=A,t==null?g(b,A,F,y=!0):b;for(f=b,c=s=b=B(b.minus(1),b.plus(1),l,1),p=g(b.times(b),l,1),i=3;;){if(s=g(s.times(p),l,1),u=c.plus(B(s,new L(i),l,1)),N(u.d).slice(0,l)===N(c.d).slice(0,l))if(c=c.times(2),o!==0&&(c=c.plus(ke(L,l+2,A).times(o+""))),c=B(c,new L(d),l,1),t==null)if(ae(c.d,l-P,F,a))L.precision=l+=P,u=s=b=B(f.minus(1),f.plus(1),l,1),p=g(b.times(b),l,1),i=a=1;else return g(c,L.precision=A,F,y=!0);else return L.precision=A,c;c=u,i+=2}}function Lt(e){return String(e.s*e.s/0)}function Ye(e,t){var n,r,i;for((n=t.indexOf("."))>-1&&(t=t.replace(".","")),(r=t.search(/e/i))>0?(n<0&&(n=r),n+=+t.slice(r+1),t=t.substring(0,r)):n<0&&(n=t.length),r=0;t.charCodeAt(r)===48;r++);for(i=t.length;t.charCodeAt(i-1)===48;--i);if(t=t.slice(r,i),t){if(i-=r,e.e=n=n-r-1,e.d=[],r=(n+1)%h,n<0&&(r+=h),r<i){for(r&&e.d.push(+t.slice(0,r)),i-=h;r<i;)e.d.push(+t.slice(r,r+=h));t=t.slice(r),r=h-t.length}else r-=i;for(;r--;)t+="0";e.d.push(+t),y&&(e.e>e.constructor.maxE?(e.d=null,e.e=NaN):e.e<e.constructor.minE&&(e.e=0,e.d=[0]))}else e.e=0,e.d=[0];return e}function un(e,t){var n,r,i,o,s,a,c,u,l;if(t.indexOf("_")>-1){if(t=t.replace(/(\d)_(?=\d)/g,"$1"),At.test(t))return Ye(e,t)}else if(t==="Infinity"||t==="NaN")return+t||(e.s=NaN),e.e=NaN,e.d=null,e;if(nn.test(t))n=16,t=t.toLowerCase();else if(tn.test(t))n=2;else if(rn.test(t))n=8;else throw Error(Y+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=kt(r,new r(n),o,o*2)),u=Pe(t,n,U),l=u.length-1,o=l;u[o]===0;--o)u.pop();return o<0?new r(e.s*0):(e.e=Le(u,l),e.d=u,y=!1,s&&(e=B(e,i,a*4)),c&&(e=e.times(Math.abs(c)<54?C(2,c):Ne.pow(2,c))),y=!0,e)}function cn(e,t){var n,r=t.d.length;if(r<3)return t.isZero()?t:te(e,2,t,t);n=1.4*Math.sqrt(r),n=n>16?16:n|0,t=t.times(1/Ce(5,n)),t=te(e,2,t,t);for(var i,o=new e(5),s=new e(16),a=new e(20);n--;)i=t.times(t),t=t.times(o.plus(i.times(s.times(i).minus(a))));return t}function te(e,t,n,r,i){var o,s,a,c,u=1,l=e.precision,f=Math.ceil(l/h);for(y=!1,c=n.times(n),a=new e(r);;){if(s=B(a.times(c),new e(t++*t++),l,1),a=i?r.plus(s):r.minus(s),r=B(s.times(c),new e(t++*t++),l,1),s=a.plus(r),s.d[f]!==void 0){for(o=f;s.d[o]===a.d[o]&&o--;);if(o==-1)break}o=a,a=r,r=s,s=o,u++}return y=!0,s.d.length=f+1,s}function Ce(e,t){for(var n=e;--t;)n*=e;return n}function Ct(e,t){var n,r=t.s<0,i=V(e,e.precision,1),o=i.times(.5);if(t=t.abs(),t.lte(o))return H=r?4:1,t;if(n=t.divToInt(i),n.isZero())H=r?3:2;else{if(t=t.minus(n.times(i)),t.lte(o))return H=ht(n)?r?2:3:r?4:1,t;H=ht(n)?r?1:4:r?3:2}return t.minus(i).abs()}function $e(e,t,n,r){var i,o,s,a,c,u,l,f,p,d=e.constructor,P=n!==void 0;if(P?(O(n,1,$),r===void 0?r=d.rounding:O(r,0,8)):(n=d.precision,r=d.rounding),!e.isFinite())l=Lt(e);else{for(l=q(e),s=l.indexOf("."),P?(i=2,t==16?n=n*4-3:t==8&&(n=n*3-2)):i=t,s>=0&&(l=l.replace(".",""),p=new d(1),p.e=l.length-s,p.d=Pe(q(p),10,i),p.e=p.d.length),f=Pe(l,10,i),o=c=f.length;f[--c]==0;)f.pop();if(!f[0])l=P?"0p+0":"0";else{if(s<0?o--:(e=new d(e),e.d=f,e.e=o,e=B(e,p,n,r,0,i),f=e.d,o=e.e,u=wt),s=f[n],a=i/2,u=u||f[n+1]!==void 0,u=r<4?(s!==void 0||u)&&(r===0||r===(e.s<0?3:2)):s>a||s===a&&(r===4||u||r===6&&f[n-1]&1||r===(e.s<0?8:7)),f.length=n,u)for(;++f[--n]>i-1;)f[n]=0,n||(++o,f.unshift(1));for(c=f.length;!f[c-1];--c);for(s=0,l="";s<c;s++)l+=Ze.charAt(f[s]);if(P){if(c>1)if(t==16||t==8){for(s=t==16?4:3,--c;c%s;c++)l+="0";for(f=Pe(l,i,t),c=f.length;!f[c-1];--c);for(s=1,l="1.";s<c;s++)l+=Ze.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 bt(e,t){if(e.length>t)return e.length=t,!0}function ln(e){return new this(e).abs()}function fn(e){return new this(e).acos()}function pn(e){return new this(e).acosh()}function mn(e,t){return new this(e).plus(t)}function dn(e){return new this(e).asin()}function gn(e){return new this(e).asinh()}function hn(e){return new this(e).atan()}function bn(e){return new this(e).atanh()}function yn(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=V(this,o,1).times(t.s>0?.25:.75),n.s=e.s):!t.d||e.isZero()?(n=t.s<0?V(this,r,i):new this(0),n.s=e.s):!e.d||t.isZero()?(n=V(this,o,1).times(.5),n.s=e.s):t.s<0?(this.precision=o,this.rounding=1,n=this.atan(B(e,t,o,1)),t=V(this,o,1),this.precision=r,this.rounding=i,n=e.s<0?n.minus(t):n.plus(t)):n=this.atan(B(e,t,o,1)),n}function wn(e){return new this(e).cbrt()}function xn(e){return g(e=new this(e),e.e+1,2)}function Tn(e,t,n){return new this(e).clamp(t,n)}function Pn(e){if(!e||typeof e!="object")throw Error(Se+"Object expected");var t,n,r,i=e.defaults===!0,o=["precision",1,$,"rounding",0,8,"toExpNeg",-ee,0,"toExpPos",0,ee,"maxE",0,ee,"minE",-ee,0,"modulo",0,9];for(t=0;t<o.length;t+=3)if(n=o[t],i&&(this[n]=Je[n]),(r=e[n])!==void 0)if(R(r)===r&&r>=o[t+1]&&r<=o[t+2])this[n]=r;else throw Error(Y+n+": "+r);if(n="crypto",i&&(this[n]=Je[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(Y+n+": "+r);return this}function An(e){return new this(e).cos()}function Bn(e){return new this(e).cosh()}function Nt(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,yt(o)){u.s=o.s,y?!o.d||o.e>i.maxE?(u.e=NaN,u.d=null):o.e<i.minE?(u.e=0,u.d=[0]):(u.e=o.e,u.d=o.d.slice()):(u.e=o.e,u.d=o.d?o.d.slice():o.d);return}if(c=typeof o,c==="number"){if(o===0){u.s=1/o<0?-1:1,u.e=0,u.d=[0];return}if(o<0?(o=-o,u.s=-1):u.s=1,o===~~o&&o<1e7){for(s=0,a=o;a>=10;a/=10)s++;y?s>i.maxE?(u.e=NaN,u.d=null):s<i.minE?(u.e=0,u.d=[0]):(u.e=s,u.d=[o]):(u.e=s,u.d=[o]);return}else if(o*0!==0){o||(u.s=NaN),u.e=NaN,u.d=null;return}return Ye(u,o.toString())}else if(c!=="string")throw Error(Y+o);return(a=o.charCodeAt(0))===45?(o=o.slice(1),u.s=-1):(a===43&&(o=o.slice(1)),u.s=1),At.test(o)?Ye(u,o):un(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=Pn,i.clone=Nt,i.isDecimal=yt,i.abs=ln,i.acos=fn,i.acosh=pn,i.add=mn,i.asin=dn,i.asinh=gn,i.atan=hn,i.atanh=bn,i.atan2=yn,i.cbrt=wn,i.ceil=xn,i.clamp=Tn,i.cos=An,i.cosh=Bn,i.div=kn,i.exp=Sn,i.floor=Ln,i.hypot=Cn,i.ln=Nn,i.log=In,i.log10=Mn,i.log2=En,i.max=Rn,i.min=_n,i.mod=Dn,i.mul=On,i.pow=Fn,i.random=Kn,i.round=vn,i.sign=Vn,i.sin=Un,i.sinh=Wn,i.sqrt=qn,i.sub=Gn,i.sum=Hn,i.tan=jn,i.tanh=zn,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 Sn(e){return new this(e).exp()}function Ln(e){return g(e=new this(e),e.e+1,3)}function Cn(){var e,t,n=new this(0);for(y=!1,e=0;e<arguments.length;)if(t=new this(arguments[e++]),t.d)n.d&&(n=n.plus(t.times(t)));else{if(t.s)return y=!0,new this(1/0);n=t}return y=!0,n.sqrt()}function yt(e){return e instanceof Ne||e&&e.toStringTag===Pt||!1}function Nn(e){return new this(e).ln()}function In(e,t){return new this(e).log(t)}function En(e){return new this(e).log(2)}function Mn(e){return new this(e).log(10)}function Rn(){return St(this,arguments,"lt")}function _n(){return St(this,arguments,"gt")}function Dn(e,t){return new this(e).mod(t)}function On(e,t){return new this(e).mul(t)}function Fn(e,t){return new this(e).pow(t)}function Kn(e){var t,n,r,i,o=0,s=new this(1),a=[];if(e===void 0?e=this.precision:O(e,1,$),r=Math.ceil(e/h),this.crypto)if(crypto.getRandomValues)for(t=crypto.getRandomValues(new Uint32Array(r));o<r;)i=t[o],i>=429e7?t[o]=crypto.getRandomValues(new Uint32Array(1))[0]:a[o++]=i%1e7;else if(crypto.randomBytes){for(t=crypto.randomBytes(r*=4);o<r;)i=t[o]+(t[o+1]<<8)+(t[o+2]<<16)+((t[o+3]&127)<<24),i>=214e7?crypto.randomBytes(4).copy(t,o):(a.push(i%1e7),o+=4);o=r/4}else throw Error(Tt);else for(;o<r;)a[o++]=Math.random()*1e7|0;for(r=a[--o],e%=h,r&&e&&(i=C(10,h-e),a[o]=(r/i|0)*i);a[o]===0;o--)a.pop();if(o<0)n=0,a=[0];else{for(n=-1;a[0]===0;n-=h)a.shift();for(r=1,i=a[0];i>=10;i/=10)r++;r<h&&(n-=h-r)}return s.e=n,s.d=a,s}function vn(e){return g(e=new this(e),e.e+1,this.rounding)}function Vn(e){return e=new this(e),e.d?e.d[0]?e.s:0*e.s:e.s||NaN}function Un(e){return new this(e).sin()}function Wn(e){return new this(e).sinh()}function qn(e){return new this(e).sqrt()}function Gn(e,t){return new this(e).sub(t)}function Hn(){var e=0,t=arguments,n=new this(t[e]);for(y=!1;n.s&&++e<t.length;)n=n.plus(t[e]);return y=!0,g(n,this.precision,this.rounding)}function jn(e){return new this(e).tan()}function zn(e){return new this(e).tanh()}function Zn(e){return g(e=new this(e),e.e+1,1)}m[Symbol.for("nodejs.util.inspect.custom")]=m.toString;m[Symbol.toStringTag]="Decimal";var Ne=m.constructor=Nt(Je);Ae=new Ne(Ae);Be=new Ne(Be);import nr from"big.js";import Lo from"bn.js";import Jn from"toformat";var Xn=Jn,ue=Xn;import Ee from"big.js";import Yn from"bn.js";import $n from"decimal.js-light";import ce from"bn.js";var It=9007199254740991;function W(e){let t=D("CobaltX_parseBigNumberish");if(e instanceof ce)return e;if(typeof e=="string"){if(e.match(/^-?[0-9]+$/))return new ce(e);t.logWithError(`invalid BigNumberish string: ${e}`)}return typeof e=="number"?(e%1&&t.logWithError(`BigNumberish number underflow: ${e}`),(e>=It||e<=-It)&&t.logWithError(`BigNumberish number overflow: ${e}`),new ce(String(e))):typeof e=="bigint"?new ce(e.toString()):(t.error(`invalid BigNumberish value: ${e}`),new ce(0))}var Ie=D("module/fraction"),et=ue(Ee),le=ue($n),er={[0]:le.ROUND_DOWN,[1]:le.ROUND_HALF_UP,[2]:le.ROUND_UP},tr={[0]:Ee.roundDown,[1]:Ee.roundHalfUp,[2]:Ee.roundUp},S=class{constructor(t,n=new Yn(1)){this.numerator=W(t),this.denominator=W(n)}get quotient(){return this.numerator.div(this.denominator)}invert(){return new S(this.denominator,this.numerator)}add(t){let n=t instanceof S?t:new S(W(t));return this.denominator.eq(n.denominator)?new S(this.numerator.add(n.numerator),this.denominator):new S(this.numerator.mul(n.denominator).add(n.numerator.mul(this.denominator)),this.denominator.mul(n.denominator))}sub(t){let n=t instanceof S?t:new S(W(t));return this.denominator.eq(n.denominator)?new S(this.numerator.sub(n.numerator),this.denominator):new S(this.numerator.mul(n.denominator).sub(n.numerator.mul(this.denominator)),this.denominator.mul(n.denominator))}mul(t){let n=t instanceof S?t:new S(W(t));return new S(this.numerator.mul(n.numerator),this.denominator.mul(n.denominator))}div(t){let n=t instanceof S?t:new S(W(t));return new S(this.numerator.mul(n.denominator),this.denominator.mul(n.numerator))}toSignificant(t,n={groupSeparator:""},r=1){Number.isInteger(t)||Ie.logWithError(`${t} is not an integer.`),t<=0&&Ie.logWithError(`${t} is not positive.`),le.set({precision:t+1,rounding:er[r]});let i=new le(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)||Ie.logWithError(`${t} is not an integer.`),t<0&&Ie.logWithError(`${t} is negative.`),et.DP=t,et.RM=tr[r]||1,new et(this.numerator.toString()).div(this.denominator.toString()).toFormat(t,n)}isZero(){return this.numerator.isZero()}};var Oo=D("CobaltX_amount"),Fo=ue(nr);import{TOKEN_PROGRAM_ID as Et}from"@solana/spl-token";import{PublicKey as ir}from"@solana/web3.js";var Mt={chainId:101,address:ir.default.toBase58(),programId:Et.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"}},j={chainId:101,address:"So11111111111111111111111111111111111111112",programId:Et.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 nt}from"@solana/web3.js";import{PublicKey as I,SystemProgram as Rt,SYSVAR_RENT_PUBKEY as or}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as sr}from"@solana/spl-token";function tt({pubkey:e,isSigner:t=!1,isWritable:n=!0}){return{pubkey:e,isWritable:n,isSigner:t}}var Ho=[tt({pubkey:sr,isWritable:!1}),tt({pubkey:Rt.programId,isWritable:!1}),tt({pubkey:or,isWritable:!1})];function _t({publicKey:e,transformSol:t}){let n=Dt(e.toString());if(n instanceof I)return t&&n.equals(fe)?ze:n;if(t&&n.toString()===fe.toBase58())return ze;if(typeof n=="string"){if(n===I.default.toBase58())return I.default;try{return new I(n)}catch{throw new Error("invalid public key")}}throw new Error("invalid public key")}function Dt(e){try{return new I(e)}catch{return e}}var jo=new I("MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"),zo=new I("MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"),Zo=new I("SysvarRent111111111111111111111111111111111"),Jo=new I("SysvarC1ock11111111111111111111111111111111"),Xo=new I("metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),Qo=new I("Sysvar1nstructions1111111111111111111111111"),Yo=Rt.programId,$o=new I("a2Gt18uJC8puJT9JRYQLU6rPi6okxQb4WqCjwtYshZB"),es=new I("bXSKiFqYrALF9gJy1KqHm8tv4QXk8nCgbLN8WRsGEbh"),ze=new I("So11111111111111111111111111111111111111112"),fe=I.default,ts=new I("71kRXzJMvSeArtXYNEWa8KAjpRJosdMQ7Dpgy5Jt5zfd"),ns=new I("ERFzpDteGNo8LTDKW1WwVGrkRMmA2y9WZHXNHxMA6BSV");var rt=class{constructor({mint:t,decimals:n,symbol:r,name:i,skipMint:o=!1,isToken2022:s=!1}){if(t===fe.toBase58()||t instanceof nt&&fe.equals(t)){this.decimals=j.decimals,this.symbol=j.symbol,this.name=j.name,this.mint=new nt(j.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?nt.default:_t({publicKey:t}),this.isToken2022=s}equals(t){return this===t?!0:this.mint.equals(t.mint)}},ne=rt;ne.WSOL=new rt({...j,mint:j.address});var it=class{constructor({decimals:t,symbol:n="UNKNOWN",name:r="UNKNOWN"}){this.decimals=t,this.symbol=n,this.name=r}equals(t){return this===t}},Me=it;Me.SOL=new it(Mt);import ar from"bn.js";var ds=new S(new ar(100));var xs=D("CobaltX_price");import{PublicKey as Fs}from"@solana/web3.js";import vs from"bn.js";var ur=new z(0),ia=new z(1),oa=new z(2),sa=new z(3),aa=new z(5),rr=new z(10),ua=new z(100),ca=new z(1e3),la=new z(1e4);import{PublicKey as lr}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as fr}from"@solana/spl-token";import{ComputeBudgetProgram as ya,Keypair as Ta,PublicKey as cr,Transaction as Aa,TransactionMessage as ka,VersionedTransaction as Sa}from"@solana/web3.js";var pe={CreateAccount:"CreateAccount",InitAccount:"InitAccount",CreateATA:"CreateATA",CloseAccount:"CloseAccount",TransferAmount:"TransferAmount",InitMint:"InitMint",MintTo:"MintTo",InitMarket:"InitMarket",Util1216OwnerClaim:"Util1216OwnerClaim",SetComputeUnitPrice:"SetComputeUnitPrice",SetComputeUnitLimit:"SetComputeUnitLimit",ClmmCreatePool:"ClmmCreatePool",ClmmOpenPosition:"ClmmOpenPosition",ClmmIncreasePosition:"ClmmIncreasePosition",ClmmDecreasePosition:"ClmmDecreasePosition",ClmmClosePosition:"ClmmClosePosition",ClmmSwapBaseIn:"ClmmSwapBaseIn",ClmmSwapBaseOut:"ClmmSwapBaseOut",ClmmInitReward:"ClmmInitReward",ClmmSetReward:"ClmmSetReward",ClmmCollectReward:"ClmmCollectReward",ClmmLockPosition:"ClmmLockPosition",ClmmHarvestLockPosition:"ClmmHarvestLockPosition",AmmV4Swap:"AmmV4Swap",AmmV4AddLiquidity:"AmmV4AddLiquidity",AmmV4RemoveLiquidity:"AmmV4RemoveLiquidity",AmmV4SimulatePoolInfo:"AmmV4SimulatePoolInfo",AmmV4SwapBaseIn:"AmmV4SwapBaseIn",AmmV4SwapBaseOut:"AmmV4SwapBaseOut",AmmV4CreatePool:"AmmV4CreatePool",AmmV4InitPool:"AmmV4InitPool",AmmV5AddLiquidity:"AmmV5AddLiquidity",AmmV5RemoveLiquidity:"AmmV5RemoveLiquidity",AmmV5SimulatePoolInfo:"AmmV5SimulatePoolInfo",AmmV5SwapBaseIn:"AmmV5SwapBaseIn",AmmV5SwapBaseOut:"AmmV5SwapBaseOut",RouteSwap:"RouteSwap",RouteSwap1:"RouteSwap1",RouteSwap2:"RouteSwap2",FarmV3Deposit:"FarmV3Deposit",FarmV3Withdraw:"FarmV3Withdraw",FarmV3CreateLedger:"FarmV3CreateLedger",FarmV4Withdraw:"FarmV4Withdraw",FarmV5Deposit:"FarmV5Deposit",FarmV5Withdraw:"FarmV5Withdraw",FarmV5CreateLedger:"FarmV5CreateLedger",FarmV6Deposit:"FarmV6Deposit",FarmV6Withdraw:"FarmV6Withdraw",FarmV6Create:"FarmV6Create",FarmV6Restart:"FarmV6Restart",FarmV6CreatorAddReward:"FarmV6CreatorAddReward",FarmV6CreatorWithdraw:"FarmV6CreatorWithdraw",CpmmCreatePool:"CpmmCreatePool",CpmmAddLiquidity:"CpmmAddLiquidity",CpmmWithdrawLiquidity:"CpmmWithdrawLiquidity",CpmmSwapBaseIn:"CpmmSwapBaseIn",CpmmSwapBaseOut:"CpmmSwapBaseOut",CpmmLockLp:"CpmmLockLp",CpmmCollectLockFee:"CpmmCollectLockFee"};import{TOKEN_PROGRAM_ID as Ia}from"@solana/spl-token";var Ea=D("CobaltX_txUtil");function vt(e,t){let[n,r]=cr.findProgramAddressSync(e,t);return{publicKey:n,nonce:r}}function Vt(e,t,n){return vt([e.toBuffer(),(n!=null?n:fr).toBuffer(),t.toBuffer()],new lr("ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"))}import{PublicKey as w}from"@solana/web3.js";var Ka=new w("EhhTKczWMGQt46ynNeRX1WfeagwwJd7ufHvCDjRxjo5Q"),va=new w("CBuCnLe26faBpcBP2fktp4rp8abpcAnTWft6ZrP5Q4T"),Va=new w("9KEPoZmtHUrBbhWN1v1KWLMkkvwY6WLtAVUCPRtRjP4z"),Ua=new w("FarmqiPv5eAj3j1GMdMCMUGXqPUvmquZtMy86QH6rzhG"),Wa=new w("CLaimxFqjHzgTJtAGHU47NPhg6qrc5sCnpC4tBLyABQS"),qa=new w("srmqPvymJeFKQ4zGQed1GFppgkRHL9kaELCbyksJtPX"),Ga=new w("9xQeWvG816bUx9EPjHmaT23yvVM2ZWbrrpZb9PusVFin"),Ha=new w("675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8"),ja=new w("5quBtoiQqxF9Jv6KYKctB59NT3gtJD2Y65kdnB1Uev3h"),za=new w("CDSr3ssLcRB6XYPJwAfFt18MZvEZp4LjHcvzBVZ45duo"),Za=new w("2TnjBuwqyBB9to5jURagDT7jLmBPefGRiKL2yh1zPZ4V"),Ja=new w("LockrWmn6K5twhz3y9w1dQERbmgSaRkfnTeTKbpofwE"),Xa=new w("kN1kEznaF5Xbd8LYuqtEFcxzWSBk5Fv6ygX6SqEGJVy"),Qa=new w("routeUGWgWzqBWFcrCfv8tritsqukccJPu3q5GPP3xS"),Ya=new w("7YttLkHDoNj9wyDur5pM1ejNaAvT9X4eqaYcHQqtj2G5"),$a=new w("6FJon3QE27qgPVggARueB22hLvoh22VzJpXv4rBEoSLF"),eu=new w("CC12se5To1CdEuw7fDS27B7Geo5jJyL7t5UK2B44NgiH"),tu=new w("9HzJyW1qZsEiSfMUf6L2jo3CcTKAyBmSyKdwQeYisHrC"),nu=new w("DropEU8AvevN3UrXWXTMuz3rqnMczQVNjq3kcSdW2SQi"),ru=new w("CPMMoo8L3F4NbTegBCKVNunggL7H1ZpdTHKxQB5qKP1C"),iu=new w("GpMZbSM2GgvTKHJirzeGfMFoaZ8UR2X7F4v8vHTvxFbL"),ou=new w("DNXgeM9EiiaAbaWvwjHj9fQQLAX5ZsfHyvmYUNRAdNC8"),pr=new w("CPMDWBwJDtYax9qW7AyRuVC19Cc4L4Vcy4n2BHAbHkCW"),mr=new w("7rQ1QFNosMkUCuh7Z7fPbTHvh73b68sQYdirycEzJVuw"),dr=new w("G11FKBRaAkHAKuLCgLM6K6NUc9rTjPAznRCjZifrTQe2"),su=new w("LockrWmn6K5twhz3y9w1dQERbmgSaRkfnTeTKbpofwE"),gr=new w("DLockwT7X7sxtLmGH9g5kmfcjaBtncdbUmi738m5bvQC"),au=new w("3f7GcQFG397GAaEnv51zR6tsTVihYRydnydDD1cXekxH"),hr=new w("7AFUeLVRjBfzqK3tTGw8hN48KLQWSk6DTE8xprWdPqix");var uu={SERUM_MARKET:w.default,OPENBOOK_MARKET:new w("EoTcMgcDRTJVZDMZWBoU6rhYHZfkNTVEAfz3uUJRcYGj"),UTIL1216:w.default,FarmV3:new w("85BFyr98MbCUU9MVTEgzx1nbhWACbJqLzho6zd6DZcWL"),FarmV5:new w("EcLzTrNg9V7qhcdyXDe2qjtPkiGzDM2UbdRaeaadU5r2"),FarmV6:new w("Farm2hJLcqPtPg8M4rR6DMrsRNc5TPm5Cs4bVQrMe2T7"),AmmV4:new w("HWy1jotHpo6UqeQxx49dpYYdQB8wj9Qk9MdxwjLvDHB8"),AmmStable:new w("DDg4VmQaJV9ogWce7LpcjBA9bv22wRp5uaTPa5pGjijF"),CLMM:new w("devi51mZmdwUJGU9hjN27vEz64Gps7uUefqxg27EAtH"),CLMM_LOCK_PROGRAM_ID:new w("DLockwT7X7sxtLmGH9g5kmfcjaBtncdbUmi738m5bvQC"),CLMM_LOCK_AUTH_ID:new w("8qmHNvu2Kr2C7U8mJL4Vz1vTD