test-raydium-sdk-v2
Version:
An SDK for building applications on top of Raydium.
1 lines • 50.3 kB
JavaScript
var Kt=Object.defineProperty,jt=Object.defineProperties;var Zt=Object.getOwnPropertyDescriptors;var nt=Object.getOwnPropertySymbols;var Yt=Object.prototype.hasOwnProperty,Ht=Object.prototype.propertyIsEnumerable;var rt=(e,t,n)=>t in e?Kt(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,le=(e,t)=>{for(var n in t||(t={}))Yt.call(t,n)&&rt(e,n,t[n]);if(nt)for(var n of nt(t))Ht.call(t,n)&&rt(e,n,t[n]);return e},xe=(e,t)=>jt(e,Zt(t));import{PublicKey as Ir}from"@solana/web3.js";import{PublicKey as ut,ComputeBudgetProgram as Fr,Transaction as qe,TransactionMessage as Kr,Keypair as jr,VersionedTransaction as Yr}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as Gr}from"@solana/spl-token";import{get as it,set as Gt}from"lodash";import st from"dayjs";import Qt from"dayjs/plugin/utc";st.extend(Qt);var Me=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 st().utc().format("YYYY/MM/DD HH:mm:ss UTC")}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}},ot={},zt={};function R(e){let t=it(ot,e);if(!t){let n=it(zt,e);t=new Me({name:e,logLevel:n}),Gt(ot,e,t)}return t}var G=R("Raydium_txUtil"),$t=1644;function Jt(e,t){e.length<1&&G.logWithError(`no instructions provided: ${e.toString()}`),t.length<1&&G.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<$t}catch{return!1}}async function at(e,t,n,r=!0){let i=new ut("RaydiumSimuLateTransaction11111111111111111"),o=[],s=new qe;s.feePayer=i;for(let a of t)Jt([...s.instructions,a],[i])||(o.push(s),s=new qe,s.feePayer=i),s.add(a);s.instructions.length>0&&o.push(s);let u=[];try{if(u=await en(e,o,r),u.find(a=>a.err!==null))throw Error("rpc simulateTransaction error")}catch(a){a instanceof Error&&G.logWithError("failed to simulate for instructions","RPC_ERROR",{message:a.message})}let c=[];for(let a of u)if(G.debug("simulate result:",a),a.logs){let l=a.logs.filter(m=>m&&m.includes(n));G.debug("filteredLog:",c),l.length||G.logWithError("simulate log not match keyword","keyword",n),c.push(...l)}return c}function ct(e,t){let n=e.match(/{["\w:,]+}/g);return!n||n.length!==1?G.logWithError(`simulate log fail to match json, keyword: ${t}`):n[0]}function Q(e,t){let r=new RegExp(`"${t}":(\\d+)`,"g").exec(e);return!r||r.length!==2?G.logWithError(`simulate log fail to match key", key: ${t}`):r[1]}function Fe(e,t){let[n,r]=ut.findProgramAddressSync(e,t);return{publicKey:n,nonce:r}}async function en(e,t,n){let r=[];if(n){let i=await e.getLatestBlockhash(),o=[];for(let a of t){a.recentBlockhash=i.blockhash,a.lastValidBlockHeight=i.lastValidBlockHeight;let m=a._compile().serialize(),g=a._serialize(m).toString("base64");o.push(g)}let s=o.map(a=>{let l=e._buildArgs([a],void 0,"base64");return{methodName:"simulateTransaction",args:l}}),u=[],c=20;for(let a=0;a<Math.ceil(s.length/c);a++)u.push(s.slice(a*c,(a+1)*c));r=await(await Promise.all(u.map(async a=>(await e._rpcBatchRequest(a)).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&&G.logWithError("failed to get info for multiple accounts","RPC_ERROR",{message:i.message})}return r}import{PublicKey as tn}from"@solana/web3.js";import lt from"bn.js";var Jr=new lt(25),ei=new lt(1e4);var nn=R("Raydium_liquidity_serum");function mt({programId:e,marketId:t}){let n=[t.toBuffer()],r=0,i;for(;r<100;){try{let o=n.concat(Buffer.from([r]),Buffer.alloc(7));i=tn.createProgramAddressSync(o,e)}catch(o){if(o instanceof TypeError)throw o;r++;continue}return{publicKey:i,nonce:r}}throw nn.logWithError("unable to find a viable program address nonce","params",{programId:e,marketId:t}),new Error("unable to find a viable program address nonce")}import{PublicKey as ln}from"@solana/web3.js";import{PublicKey as cn}from"@solana/web3.js";import gt,{isBN as bt}from"bn.js";import{bits as ai,BitStructure as ci,blob as rn,Blob as li,cstr as mi,f32 as pi,f32be as fi,f64 as di,f64be as gi,greedy as bi,Layout as on,ns64 as hi,ns64be as yi,nu64 as wi,nu64be as Pi,offset as xi,s16 as ki,s16be as Si,s24 as Ni,s24be as Li,s32 as Ti,s32be as Bi,s40 as Ai,s40be as Ei,s48 as Ii,s48be as _i,s8 as vi,seq as sn,struct as Wi,Structure as un,u16 as Di,u16be as Ci,u24 as Ri,u24be as Oi,u32 as Mi,u32be as qi,u40 as Fi,u40be as Vi,u48 as Ui,u48be as Ki,u8 as ji,UInt as an,union as Zi,Union as Yi,unionLayoutDiscriminator as Hi,utf8 as Gi}from"@solana/buffer-layout";var Ve=on,pt=un;var ft=an;var dt=sn;var Ue=rn;var ke=class extends Ve{constructor(n,r,i){super(n,i);this.blob=Ue(n),this.signed=r}decode(n,r=0){let i=new gt(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 gt(n)),this.signed&&(n=n.toTwos(this.span*8)),this.blob.encode(n.toArrayLike(Buffer,"le",this.span),r,i)}};function V(e){return new ft(1,e)}function d(e){return new ke(8,!1,e)}function z(e){return new ke(16,!1,e)}var Ke=class extends Ve{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 A(e){return new Ke(Ue(32),t=>new cn(t),t=>t.toBuffer(),e)}var je=class extends pt{decode(t,n){return super.decode(t,n)}};function O(e,t,n){return new je(e,t,n)}function me(e,t,n){let r,i=typeof t=="number"?t:bt(t)?t.toNumber():new Proxy(t,{get(o,s){if(!r){let u=Reflect.get(o,"count");r=bt(u)?u.toNumber():u,Reflect.set(o,"count",r)}return Reflect.get(o,s)},set(o,s,u){return s==="count"&&(r=u),Reflect.set(o,s,u)}});return dt(e,i,n)}var ht=new ln("CDSr3ssLcRB6XYPJwAfFt18MZvEZp4LjHcvzBVZ45duo"),mn=5e4,pn=O([d("x"),d("y"),d("price")]),fn=O([d("accountType"),d("status"),d("multiplier"),d("validDataCount"),me(pn,mn,"DataElement")]);function dn(e){let t=fn.decode(e);return{accountType:t.accountType.toNumber(),status:t.status.toNumber(),multiplier:t.multiplier.toNumber(),validDataCount:t.validDataCount.toNumber(),DataElement:t.DataElement.map(n=>({x:n.x.toNumber(),y:n.y.toNumber(),price:n.price.toNumber()}))}}var Se=class{constructor({connection:t}){this._layoutData={accountType:0,status:0,multiplier:0,validDataCount:0,DataElement:[]};this.connection=t}get stableModelData(){return this._layoutData}async initStableModelLayout(){if(this._layoutData.validDataCount===0&&this.connection){let t=await this.connection.getAccountInfo(ht);t&&(this._layoutData=dn(t==null?void 0:t.data))}}};import{TOKEN_PROGRAM_ID as Su,ASSOCIATED_TOKEN_PROGRAM_ID as Nu}from"@solana/spl-token";import{PublicKey as J,TransactionInstruction as Er,SystemProgram as Tu,SYSVAR_RENT_PUBKEY as Bu}from"@solana/web3.js";import q from"bn.js";var se=9e15,re=1e9,Ze="0123456789abcdef",Le="2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058",Te="3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789",Ye={precision:20,rounding:4,modulo:1,toExpNeg:-7,toExpPos:21,minE:-se,maxE:se,crypto:!1},xt,X,w=!0,Ae="[DecimalError] ",ne=Ae+"Invalid argument: ",kt=Ae+"Precision limit exceeded",St=Ae+"crypto unavailable",Nt="[object Decimal]",C=Math.floor,I=Math.pow,gn=/^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i,bn=/^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i,hn=/^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i,Lt=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,Z=1e7,h=7,yn=9007199254740991,wn=Le.length-1,He=Te.length-1,f={toStringTag:Nt};f.absoluteValue=f.abs=function(){var e=new this.constructor(this);return e.s<0&&(e.s=1),b(e)};f.ceil=function(){return b(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(ne+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,u=(e=new o.constructor(e)).d,c=o.s,a=e.s;if(!s||!u)return!c||!a?NaN:c!==a?c:s===u?0:!s^c<0?1:-1;if(!s[0]||!u[0])return s[0]?c:u[0]?-a:0;if(c!==a)return c;if(o.e!==e.e)return o.e>e.e^c<0?1:-1;for(r=s.length,i=u.length,t=0,n=r<i?r:i;t<n;++t)if(s[t]!==u[t])return s[t]>u[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())+h,r.rounding=1,n=Pn(r,It(r,n)),r.precision=e,r.rounding=t,b(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,u,c,a,l=this,m=l.constructor;if(!l.isFinite()||l.isZero())return new m(l);for(w=!1,o=l.s*I(l.s*l,1/3),!o||Math.abs(o)==1/0?(n=v(l.d),e=l.e,(o=(e-n.length+1)%3)&&(n+=o==1||o==-2?"0":"00"),o=I(n,1/3),e=C((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(u=r,c=u.times(u).times(u),a=c.plus(l),r=k(a.plus(l).times(u),a.plus(c),s+2,1),v(u.d).slice(0,s)===(n=v(r.d)).slice(0,s))if(n=n.slice(s-3,s+1),n=="9999"||!i&&n=="4999"){if(!i&&(b(u,e+1,0),u.times(u).times(u).eq(l))){r=u;break}s+=4,i=1}else{(!+n||!+n.slice(1)&&n.charAt(0)=="5")&&(b(r,e+1,1),t=!r.times(r).times(r).eq(l));break}return w=!0,b(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-C(this.e/h))*h,e=t[e],e)for(;e%10==0;e/=10)n--;n<0&&(n=0)}return n};f.dividedBy=f.div=function(e){return k(this,new this.constructor(e))};f.dividedToIntegerBy=f.divToInt=function(e){var t=this,n=t.constructor;return b(k(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 b(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,u=new s(1);if(!o.isFinite())return new s(o.s?1/0:NaN);if(o.isZero())return u;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/Ie(4,e)).toString()):(e=16,t="2.3283064365386962890625e-10"),o=ue(s,1,o.times(t),new s(1),!0);for(var c,a=e,l=new s(8);a--;)c=o.times(o),o=u.minus(c.times(l.minus(c.times(l))));return b(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=ue(o,2,i,i,!0);else{e=1.4*Math.sqrt(r),e=e>16?16:e|0,i=i.times(1/Ie(5,e)),i=ue(o,2,i,i,!0);for(var s,u=new o(5),c=new o(16),a=new o(20);e--;)s=i.times(i),i=i.times(u.plus(s.times(c.times(s).plus(a))))}return o.precision=t,o.rounding=n,b(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,k(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()?j(n,i,o):new n(0):new n(NaN):t.isZero()?j(n,i+4,o).times(.5):(n.precision=i+6,n.rounding=1,t=t.asin(),e=j(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?b(new o(i),e,t,!0):(o.precision=n=r-i.e,i=k(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=j(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,u,c,a=this,l=a.constructor,m=l.precision,p=l.rounding;if(a.isFinite()){if(a.isZero())return new l(a);if(a.abs().eq(1)&&m+4<=He)return s=j(l,m+4,p).times(.25),s.s=a.s,s}else{if(!a.s)return new l(NaN);if(m+4<=He)return s=j(l,m+4,p).times(.5),s.s=a.s,s}for(l.precision=u=m+10,l.rounding=1,n=Math.min(28,u/h+2|0),e=n;e;--e)a=a.div(a.times(a).plus(1).sqrt().plus(1));for(w=!1,t=Math.ceil(u/h),r=1,c=a.times(a),s=new l(a),i=a;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,b(s,l.precision=m,l.rounding=p,!0)};f.isFinite=function(){return!!this.d};f.isInteger=f.isInt=function(){return!!this.d&&C(this.e/h)>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,u,c,a=this,l=a.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=a.d,a.s<0||!n||!n[0]||a.eq(1))return new l(n&&!n[0]?-1/0:a.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,u=m+g,s=te(a,u),r=t?Be(l,u+10):te(e,u),c=k(s,r,u,1),pe(c.d,i=m,p))do if(u+=10,s=te(a,u),r=t?Be(l,u+10):te(e,u),c=k(s,r,u,1),!o){+v(c.d).slice(i+1,i+15)+1==1e14&&(c=b(c,m+1,0));break}while(pe(c.d,i+=10,p));return w=!0,b(c,m,p)};f.minus=f.sub=function(e){var t,n,r,i,o,s,u,c,a,l,m,p,g=this,P=g.constructor;if(e=new P(e),!g.d||!e.d)return!g.s||!e.s?e=new P(NaN):g.d?e.s=-e.s:e=new P(e.d||g.s!==e.s?g:NaN),e;if(g.s!=e.s)return e.s=-e.s,g.plus(e);if(a=g.d,p=e.d,u=P.precision,c=P.rounding,!a[0]||!p[0]){if(p[0])e.s=-e.s;else if(a[0])e=new P(g);else return new P(c===3?-0:0);return w?b(e,u,c):e}if(n=C(e.e/h),l=C(g.e/h),a=a.slice(),o=l-n,o){for(m=o<0,m?(t=a,o=-o,s=p.length):(t=p,n=l,s=a.length),r=Math.max(Math.ceil(u/h),s)+2,o>r&&(o=r,t.length=1),t.reverse(),r=o;r--;)t.push(0);t.reverse()}else{for(r=a.length,s=p.length,m=r<s,m&&(s=r),r=0;r<s;r++)if(a[r]!=p[r]){m=a[r]<p[r];break}o=0}for(m&&(t=a,a=p,p=t,e.s=-e.s),s=a.length,r=p.length-s;r>0;--r)a[s++]=0;for(r=p.length;r>o;){if(a[--r]<p[r]){for(i=r;i&&a[--i]===0;)a[i]=Z-1;--a[i],a[r]+=Z}a[r]-=p[r]}for(;a[--s]===0;)a.pop();for(;a[0]===0;a.shift())--n;return a[0]?(e.d=a,e.e=Ee(a,n),w?b(e,u,c):e):new P(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]?b(new r(n),r.precision,r.rounding):(w=!1,r.modulo==9?(t=k(n,e.abs(),0,3,1),t.s*=e.s):t=k(n,e,0,r.modulo,1),t=t.times(e),w=!0,n.minus(t))};f.naturalExponential=f.exp=function(){return Ge(this)};f.naturalLogarithm=f.ln=function(){return te(this)};f.negated=f.neg=function(){var e=new this.constructor(this);return e.s=-e.s,b(e)};f.plus=f.add=function(e){var t,n,r,i,o,s,u,c,a,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(a=m.d,l=e.d,u=p.precision,c=p.rounding,!a[0]||!l[0])return l[0]||(e=new p(m)),w?b(e,u,c):e;if(o=C(m.e/h),r=C(e.e/h),a=a.slice(),i=o-r,i){for(i<0?(n=a,i=-i,s=l.length):(n=l,r=o,s=a.length),o=Math.ceil(u/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=a.length,i=l.length,s-i<0&&(i=s,n=l,l=a,a=n),t=0;i;)t=(a[--i]=a[i]+l[i]+t)/Z|0,a[i]%=Z;for(t&&(a.unshift(t),++r),s=a.length;a[--s]==0;)a.pop();return e.d=a,e.e=Ee(a,r),w?b(e,u,c):e};f.precision=f.sd=function(e){var t,n=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(ne+e);return n.d?(t=Tt(n.d),e&&n.e+1>t&&(t=n.e+1)):t=NaN,t};f.round=function(){var e=this,t=e.constructor;return b(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())+h,r.rounding=1,n=kn(r,It(r,n)),r.precision=e,r.rounding=t,b(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,u=s.d,c=s.e,a=s.s,l=s.constructor;if(a!==1||!u||!u[0])return new l(!a||a<0&&(!u||u[0])?NaN:u?s:1/0);for(w=!1,a=Math.sqrt(+s),a==0||a==1/0?(t=v(u),(t.length+c)%2==0&&(t+="0"),a=Math.sqrt(t),c=C((c+1)/2)-(c<0||c%2),a==1/0?t="5e"+c:(t=a.toExponential(),t=t.slice(0,t.indexOf("e")+1)+c),r=new l(t)):r=new l(a.toString()),n=(c=l.precision)+3;;)if(o=r,r=o.plus(k(s,o,n+2,1)).times(.5),v(o.d).slice(0,n)===(t=v(r.d)).slice(0,n))if(t=t.slice(n-3,n+1),t=="9999"||!i&&t=="4999"){if(!i&&(b(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")&&(b(r,c+1,1),e=!r.times(r).eq(s));break}return w=!0,b(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=k(n,new r(1).minus(n.times(n)).sqrt(),e+10,0),r.precision=e,r.rounding=t,b(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,u,c,a,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=C(l.e/h)+C(e.e/h),c=p.length,a=g.length,c<a&&(o=p,p=g,g=o,s=c,c=a,a=s),o=[],s=c+a,r=s;r--;)o.push(0);for(r=a;--r>=0;){for(t=0,i=c+r;i>r;)u=o[i]+g[r]*p[i-r-1]+t,o[i--]=u%Z|0,t=u/Z|0;o[i]=(o[i]+t)%Z|0}for(;!o[--s];)o.pop();return t?++n:o.shift(),e.d=o,e.e=Ee(o,n),w?b(e,m.precision,m.rounding):e};f.toBinary=function(e,t){return ze(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:(M(e,0,re),t===void 0?t=r.rounding:M(t,0,8),b(n,e+n.e+1,t))};f.toExponential=function(e,t){var n,r=this,i=r.constructor;return e===void 0?n=Y(r,!0):(M(e,0,re),t===void 0?t=i.rounding:M(t,0,8),r=b(new i(r),e+1,t),n=Y(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=Y(i):(M(e,0,re),t===void 0?t=o.rounding:M(t,0,8),r=b(new o(i),e+i.e+1,t),n=Y(r,!1,e+r.e+1)),i.isNeg()&&!i.isZero()?"-"+n:n};f.toFraction=function(e){var t,n,r,i,o,s,u,c,a,l,m,p,g=this,P=g.d,y=g.constructor;if(!P)return new y(g);if(a=n=new y(1),r=c=new y(0),t=new y(r),o=t.e=Tt(P)-g.e-1,s=o%h,t.d[0]=I(10,s<0?h+s:s),e==null)e=o>0?t:a;else{if(u=new y(e),!u.isInt()||u.lt(a))throw Error(ne+u);e=u.gt(t)?o>0?t:a:u}for(w=!1,u=new y(v(P)),l=y.precision,y.precision=o=P.length*h*2;m=k(u,t,0,1,1),i=n.plus(m.times(r)),i.cmp(e)!=1;)n=r,r=i,i=a,a=c.plus(m.times(i)),c=i,i=t,t=u.minus(m.times(i)),u=i;return i=k(e.minus(n),r,0,1,1),c=c.plus(i.times(a)),n=n.plus(i.times(r)),c.s=a.s=g.s,p=k(a,r,o,1).minus(g).abs().cmp(k(c,n,o,1).minus(g).abs())<1?[a,r]:[c,n],y.precision=l,w=!0,p};f.toHexadecimal=f.toHex=function(e,t){return ze(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:M(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=k(n,e,0,t,1).times(e),w=!0,b(n)):(e.s=n.s,n=e),n};f.toNumber=function(){return+this};f.toOctal=function(e,t){return ze(this,8,e,t)};f.toPower=f.pow=function(e){var t,n,r,i,o,s,u=this,c=u.constructor,a=+(e=new c(e));if(!u.d||!e.d||!u.d[0]||!e.d[0])return new c(I(+u,a));if(u=new c(u),u.eq(1))return u;if(r=c.precision,o=c.rounding,e.eq(1))return b(u,r,o);if(t=C(e.e/h),t>=e.d.length-1&&(n=a<0?-a:a)<=yn)return i=Bt(c,u,n,r),e.s<0?new c(1).div(i):b(i,r,o);if(s=u.s,s<0){if(t<e.d.length-1)return new c(NaN);if((e.d[t]&1)==0&&(s=1),u.e==0&&u.d[0]==1&&u.d.length==1)return u.s=s,u}return n=I(+u,a),t=n==0||!isFinite(n)?C(a*(Math.log("0."+v(u.d))/Math.LN10+u.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=u.s=1,n=Math.min(12,(t+"").length),i=Ge(e.times(te(u,r+n)),r),i.d&&(i=b(i,r+5,1),pe(i.d,r,o)&&(t=r+10,i=b(Ge(e.times(te(u,t+n)),t),t+5,1),+v(i.d).slice(r+1,r+15)+1==1e14&&(i=b(i,r+1,0)))),i.s=s,w=!0,c.rounding=o,b(i,r,o))};f.toPrecision=function(e,t){var n,r=this,i=r.constructor;return e===void 0?n=Y(r,r.e<=i.toExpNeg||r.e>=i.toExpPos):(M(e,1,re),t===void 0?t=i.rounding:M(t,0,8),r=b(new i(r),e,t),n=Y(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):(M(e,1,re),t===void 0?t=r.rounding:M(t,0,8)),b(new r(n),e,t)};f.toString=function(){var e=this,t=e.constructor,n=Y(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()&&!e.isZero()?"-"+n:n};f.truncated=f.trunc=function(){return b(new this.constructor(this),this.e+1,1)};f.valueOf=f.toJSON=function(){var e=this,t=e.constructor,n=Y(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()?"-"+n:n};function v(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+=ee(n)),o+=r;s=e[t],r=s+"",n=h-r.length,n&&(o+=ee(n))}else if(s===0)return"0";for(;s%10===0;)s/=10;return o+s}function M(e,t,n){if(e!==~~e||e<t||e>n)throw Error(ne+e)}function pe(e,t,n,r){var i,o,s,u;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=I(10,h-t),u=e[i]%o|0,r==null?t<3?(t==0?u=u/100|0:t==1&&(u=u/10|0),s=n<4&&u==99999||n>3&&u==49999||u==5e4||u==0):s=(n<4&&u+1==o||n>3&&u+1==o/2)&&(e[i+1]/o/100|0)==I(10,t-2)-1||(u==o/2||u==0)&&(e[i+1]/o/100|0)==0:t<4?(t==0?u=u/1e3|0:t==1?u=u/100|0:t==2&&(u=u/10|0),s=(r||n<4)&&u==9999||!r&&n>3&&u==4999):s=((r||n<4)&&u+1==o||!r&&n>3&&u+1==o/2)&&(e[i+1]/o/1e3|0)==I(10,t-3)-1,s}function Ne(e,t,n){for(var r,i=[0],o,s=0,u=e.length;s<u;){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 Pn(e,t){var n,r,i;if(t.isZero())return t;r=t.d.length,r<32?(n=Math.ceil(r/3),i=(1/Ie(4,n)).toString()):(n=16,i="2.3283064365386962890625e-10"),e.precision+=n,t=ue(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 k=function(){function e(r,i,o){var s,u=0,c=r.length;for(r=r.slice();c--;)s=r[c]*i+u,r[c]=s%o|0,u=s/o|0;return u&&r.unshift(u),r}function t(r,i,o,s){var u,c;if(o!=s)c=o>s?1:-1;else for(u=c=0;u<o;u++)if(r[u]!=i[u]){c=r[u]>i[u]?1:-1;break}return c}function n(r,i,o,s){for(var u=0;o--;)r[o]-=u,u=r[o]<i[o]?1:0,r[o]=u*s+r[o]-i[o];for(;!r[0]&&r.length>1;)r.shift()}return function(r,i,o,s,u,c){var a,l,m,p,g,P,y,_,N,F,x,W,he,H,Ce,ye,ce,Re,K,we,Pe=r.constructor,Oe=r.s==i.s?1:-1,D=r.d,S=i.d;if(!D||!D[0]||!S||!S[0])return new Pe(!r.s||!i.s||(D?S&&D[0]==S[0]:!S)?NaN:D&&D[0]==0||!S?Oe*0:Oe/0);for(c?(g=1,l=r.e-i.e):(c=Z,g=h,l=C(r.e/g)-C(i.e/g)),K=S.length,ce=D.length,N=new Pe(Oe),F=N.d=[],m=0;S[m]==(D[m]||0);m++);if(S[m]>(D[m]||0)&&l--,o==null?(H=o=Pe.precision,s=Pe.rounding):u?H=o+(r.e-i.e)+1:H=o,H<0)F.push(1),P=!0;else{if(H=H/g+2|0,m=0,K==1){for(p=0,S=S[0],H++;(m<ce||p)&&H--;m++)Ce=p*c+(D[m]||0),F[m]=Ce/S|0,p=Ce%S|0;P=p||m<ce}else{for(p=c/(S[0]+1)|0,p>1&&(S=e(S,p,c),D=e(D,p,c),K=S.length,ce=D.length),ye=K,x=D.slice(0,K),W=x.length;W<K;)x[W++]=0;we=S.slice(),we.unshift(0),Re=S[0],S[1]>=c/2&&++Re;do p=0,a=t(S,x,K,W),a<0?(he=x[0],K!=W&&(he=he*c+(x[1]||0)),p=he/Re|0,p>1?(p>=c&&(p=c-1),y=e(S,p,c),_=y.length,W=x.length,a=t(y,x,_,W),a==1&&(p--,n(y,K<_?we:S,_,c))):(p==0&&(a=p=1),y=S.slice()),_=y.length,_<W&&y.unshift(0),n(x,y,W,c),a==-1&&(W=x.length,a=t(S,x,K,W),a<1&&(p++,n(x,K<W?we:S,W,c))),W=x.length):a===0&&(p++,x=[0]),F[m++]=p,a&&x[0]?x[W++]=D[ye]||0:(x=[D[ye]],W=1);while((ye++<ce||x[0]!==void 0)&&H--);P=x[0]!==void 0}F[0]||F.shift()}if(g==1)N.e=l,xt=P;else{for(m=1,p=F[0];p>=10;p/=10)m++;N.e=m+l*g-1,b(N,u?o+N.e+1:o,s,P)}return N}}();function b(e,t,n,r){var i,o,s,u,c,a,l,m,p,g=e.constructor;e:if(t!=null){if(m=e.d,!m)return e;for(i=1,u=m[0];u>=10;u/=10)i++;if(o=t-i,o<0)o+=h,s=t,l=m[p=0],c=l/I(10,i-s-1)%10|0;else if(p=Math.ceil((o+1)/h),u=m.length,p>=u)if(r){for(;u++<=p;)m.push(0);l=c=0,i=1,o%=h,s=o-h+1}else break e;else{for(l=u=m[p],i=1;u>=10;u/=10)i++;o%=h,s=o-h+i,c=s<0?0:l/I(10,i-s-1)%10|0}if(r=r||t<0||m[p+1]!==void 0||(s<0?l:l%I(10,i-s-1)),a=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/I(10,i-s):0:m[p-1])%10&1||n==(e.s<0?8:7)),t<1||!m[0])return m.length=0,a?(t-=e.e+1,m[0]=I(10,(h-t%h)%h),e.e=-t||0):m[0]=e.e=0,e;if(o==0?(m.length=p,u=1,p--):(m.length=p+1,u=I(10,h-o),m[p]=s>0?(l/I(10,i-s)%I(10,s)|0)*u:0),a)for(;;)if(p==0){for(o=1,s=m[0];s>=10;s/=10)o++;for(s=m[0]+=u,u=1;s>=10;s/=10)u++;o!=u&&(e.e++,m[0]==Z&&(m[0]=1));break}else{if(m[p]+=u,m[p]!=Z)break;m[p--]=0,u=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 Y(e,t,n){if(!e.isFinite())return Et(e);var r,i=e.e,o=v(e.d),s=o.length;return t?(n&&(r=n-s)>0?o=o.charAt(0)+"."+o.slice(1)+ee(r):s>1&&(o=o.charAt(0)+"."+o.slice(1)),o=o+(e.e<0?"e":"e+")+e.e):i<0?(o="0."+ee(-i-1)+o,n&&(r=n-s)>0&&(o+=ee(r))):i>=s?(o+=ee(i+1-s),n&&(r=n-i-1)>0&&(o=o+"."+ee(r))):((r=i+1)<s&&(o=o.slice(0,r)+"."+o.slice(r)),n&&(r=n-s)>0&&(i+1===s&&(o+="."),o+=ee(r))),o}function Ee(e,t){var n=e[0];for(t*=h;n>=10;n/=10)t++;return t}function Be(e,t,n){if(t>wn)throw w=!0,n&&(e.precision=n),Error(kt);return b(new e(Le),t,1,!0)}function j(e,t,n){if(t>He)throw Error(kt);return b(new e(Te),t,n,!0)}function Tt(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 ee(e){for(var t="";e--;)t+="0";return t}function Bt(e,t,n,r){var i,o=new e(1),s=Math.ceil(r/h+4);for(w=!1;;){if(n%2&&(o=o.times(t),wt(o.d,s)&&(i=!0)),n=C(n/2),n===0){n=o.d.length-1,i&&o.d[n]===0&&++o.d[n];break}t=t.times(t),wt(t.d,s)}return w=!0,o}function yt(e){return e.d[e.d.length-1]&1}function At(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 Ge(e,t){var n,r,i,o,s,u,c,a=0,l=0,m=0,p=e.constructor,g=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?(w=!1,c=P):c=t,u=new p(.03125);e.e>-2;)e=e.times(u),m+=5;for(r=Math.log(I(2,m))/Math.LN10*2+5|0,c+=r,n=o=s=new p(1),p.precision=c;;){if(o=b(o.times(e),c,1),n=n.times(++l),u=s.plus(k(o,n,c,1)),v(u.d).slice(0,c)===v(s.d).slice(0,c)){for(i=m;i--;)s=b(s.times(s),c,1);if(t==null)if(a<3&&pe(s.d,c-r,g,a))p.precision=c+=10,n=o=u=new p(1),l=0,a++;else return b(s,p.precision=P,g,w=!0);else return p.precision=P,s}s=u}}function te(e,t){var n,r,i,o,s,u,c,a,l,m,p,g=1,P=10,y=e,_=y.d,N=y.constructor,F=N.rounding,x=N.precision;if(y.s<0||!_||!_[0]||!y.e&&_[0]==1&&_.length==1)return new N(_&&!_[0]?-1/0:y.s!=1?NaN:_?0:y);if(t==null?(w=!1,l=x):l=t,N.precision=l+=P,n=v(_),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=v(y.d),r=n.charAt(0),g++;o=y.e,r>1?(y=new N("0."+n),o++):y=new N(r+"."+n.slice(1))}else return a=Be(N,l+2,x).times(o+""),y=te(new N(r+"."+n.slice(1)),l-P).plus(a),N.precision=x,t==null?b(y,x,F,w=!0):y;for(m=y,c=s=y=k(y.minus(1),y.plus(1),l,1),p=b(y.times(y),l,1),i=3;;){if(s=b(s.times(p),l,1),a=c.plus(k(s,new N(i),l,1)),v(a.d).slice(0,l)===v(c.d).slice(0,l))if(c=c.times(2),o!==0&&(c=c.plus(Be(N,l+2,x).times(o+""))),c=k(c,new N(g),l,1),t==null)if(pe(c.d,l-P,F,u))N.precision=l+=P,a=s=y=k(m.minus(1),m.plus(1),l,1),p=b(y.times(y),l,1),i=u=1;else return b(c,N.precision=x,F,w=!0);else return N.precision=x,c;c=a,i+=2}}function Et(e){return String(e.s*e.s/0)}function Qe(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),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 xn(e,t){var n,r,i,o,s,u,c,a,l;if(t.indexOf("_")>-1){if(t=t.replace(/(\d)_(?=\d)/g,"$1"),Lt.test(t))return Qe(e,t)}else if(t==="Infinity"||t==="NaN")return+t||(e.s=NaN),e.e=NaN,e.d=null,e;if(bn.test(t))n=16,t=t.toLowerCase();else if(gn.test(t))n=2;else if(hn.test(t))n=8;else throw Error(ne+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(".",""),u=t.length,o=u-o,i=Bt(r,new r(n),o,o*2)),a=Ne(t,n,Z),l=a.length-1,o=l;a[o]===0;--o)a.pop();return o<0?new r(e.s*0):(e.e=Ee(a,l),e.d=a,w=!1,s&&(e=k(e,i,u*4)),c&&(e=e.times(Math.abs(c)<54?I(2,c):_e.pow(2,c))),w=!0,e)}function kn(e,t){var n,r=t.d.length;if(r<3)return t.isZero()?t:ue(e,2,t,t);n=1.4*Math.sqrt(r),n=n>16?16:n|0,t=t.times(1/Ie(5,n)),t=ue(e,2,t,t);for(var i,o=new e(5),s=new e(16),u=new e(20);n--;)i=t.times(t),t=t.times(o.plus(i.times(s.times(i).minus(u))));return t}function ue(e,t,n,r,i){var o,s,u,c,a=1,l=e.precision,m=Math.ceil(l/h);for(w=!1,c=n.times(n),u=new e(r);;){if(s=k(u.times(c),new e(t++*t++),l,1),u=i?r.plus(s):r.minus(s),r=k(s.times(c),new e(t++*t++),l,1),s=u.plus(r),s.d[m]!==void 0){for(o=m;s.d[o]===u.d[o]&&o--;);if(o==-1)break}o=u,u=r,r=s,s=o,a++}return w=!0,s.d.length=m+1,s}function Ie(e,t){for(var n=e;--t;)n*=e;return n}function It(e,t){var n,r=t.s<0,i=j(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=yt(n)?r?2:3:r?4:1,t;X=yt(n)?r?1:4:r?3:2}return t.minus(i).abs()}function ze(e,t,n,r){var i,o,s,u,c,a,l,m,p,g=e.constructor,P=n!==void 0;if(P?(M(n,1,re),r===void 0?r=g.rounding:M(r,0,8)):(n=g.precision,r=g.rounding),!e.isFinite())l=Et(e);else{for(l=Y(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 g(1),p.e=l.length-s,p.d=Ne(Y(p),10,i),p.e=p.d.length),m=Ne(l,10,i),o=c=m.length;m[--c]==0;)m.pop();if(!m[0])l=P?"0p+0":"0";else{if(s<0?o--:(e=new g(e),e.d=m,e.e=o,e=k(e,p,n,r,0,i),m=e.d,o=e.e,a=xt),s=m[n],u=i/2,a=a||m[n+1]!==void 0,a=r<4?(s!==void 0||a)&&(r===0||r===(e.s<0?3:2)):s>u||s===u&&(r===4||a||r===6&&m[n-1]&1||r===(e.s<0?8:7)),m.length=n,a)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+=Ze.charAt(m[s]);if(P){if(c>1)if(t==16||t==8){for(s=t==16?4:3,--c;c%s;c++)l+="0";for(m=Ne(l,i,t),c=m.length;!m[c-1];--c);for(s=1,l="1.";s<c;s++)l+=Ze.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 wt(e,t){if(e.length>t)return e.length=t,!0}function Sn(e){return new this(e).abs()}function Nn(e){return new this(e).acos()}function Ln(e){return new this(e).acosh()}function Tn(e,t){return new this(e).plus(t)}function Bn(e){return new this(e).asin()}function An(e){return new this(e).asinh()}function En(e){return new this(e).atan()}function In(e){return new this(e).atanh()}function _n(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=j(this,o,1).times(t.s>0?.25:.75),n.s=e.s):!t.d||e.isZero()?(n=t.s<0?j(this,r,i):new this(0),n.s=e.s):!e.d||t.isZero()?(n=j(this,o,1).times(.5),n.s=e.s):t.s<0?(this.precision=o,this.rounding=1,n=this.atan(k(e,t,o,1)),t=j(this,o,1),this.precision=r,this.rounding=i,n=e.s<0?n.minus(t):n.plus(t)):n=this.atan(k(e,t,o,1)),n}function vn(e){return new this(e).cbrt()}function Wn(e){return b(e=new this(e),e.e+1,2)}function Dn(e,t,n){return new this(e).clamp(t,n)}function Cn(e){if(!e||typeof e!="object")throw Error(Ae+"Object expected");var t,n,r,i=e.defaults===!0,o=["precision",1,re,"rounding",0,8,"toExpNeg",-se,0,"toExpPos",0,se,"maxE",0,se,"minE",-se,0,"modulo",0,9];for(t=0;t<o.length;t+=3)if(n=o[t],i&&(this[n]=Ye[n]),(r=e[n])!==void 0)if(C(r)===r&&r>=o[t+1]&&r<=o[t+2])this[n]=r;else throw Error(ne+n+": "+r);if(n="crypto",i&&(this[n]=Ye[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(St);else this[n]=!1;else throw Error(ne+n+": "+r);return this}function Rn(e){return new this(e).cos()}function On(e){return new this(e).cosh()}function _t(e){var t,n,r;function i(o){var s,u,c,a=this;if(!(a instanceof i))return new i(o);if(a.constructor=i,Pt(o)){a.s=o.s,w?!o.d||o.e>i.maxE?(a.e=NaN,a.d=null):o.e<i.minE?(a.e=0,a.d=[0]):(a.e=o.e,a.d=o.d.slice()):(a.e=o.e,a.d=o.d?o.d.slice():o.d);return}if(c=typeof o,c==="number"){if(o===0){a.s=1/o<0?-1:1,a.e=0,a.d=[0];return}if(o<0?(o=-o,a.s=-1):a.s=1,o===~~o&&o<1e7){for(s=0,u=o;u>=10;u/=10)s++;w?s>i.maxE?(a.e=NaN,a.d=null):s<i.minE?(a.e=0,a.d=[0]):(a.e=s,a.d=[o]):(a.e=s,a.d=[o]);return}else if(o*0!==0){o||(a.s=NaN),a.e=NaN,a.d=null;return}return Qe(a,o.toString())}else if(c!=="string")throw Error(ne+o);return(u=o.charCodeAt(0))===45?(o=o.slice(1),a.s=-1):(u===43&&(o=o.slice(1)),a.s=1),Lt.test(o)?Qe(a,o):xn(a,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=Cn,i.clone=_t,i.isDecimal=Pt,i.abs=Sn,i.acos=Nn,i.acosh=Ln,i.add=Tn,i.asin=Bn,i.asinh=An,i.atan=En,i.atanh=In,i.atan2=_n,i.cbrt=vn,i.ceil=Wn,i.clamp=Dn,i.cos=Rn,i.cosh=On,i.div=Mn,i.exp=qn,i.floor=Fn,i.hypot=Vn,i.ln=Un,i.log=Kn,i.log10=Zn,i.log2=jn,i.max=Yn,i.min=Hn,i.mod=Gn,i.mul=Qn,i.pow=zn,i.random=Xn,i.round=$n,i.sign=Jn,i.sin=er,i.sinh=tr,i.sqrt=nr,i.sub=rr,i.sum=ir,i.tan=or,i.tanh=sr,i.trunc=ur,e===void 0&&(e={}),e&&e.defaults!==!0)for(r=["precision","rounding","toExpNeg","toExpPos","maxE","minE","modulo","crypto"],t=0;t<r.length;)e.hasOwnProperty(n=r[t++])||(e[n]=this[n]);return i.config(e),i}function Mn(e,t){return new this(e).div(t)}function qn(e){return new this(e).exp()}function Fn(e){return b(e=new this(e),e.e+1,3)}function Vn(){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 Pt(e){return e instanceof _e||e&&e.toStringTag===Nt||!1}function Un(e){return new this(e).ln()}function Kn(e,t){return new this(e).log(t)}function jn(e){return new this(e).log(2)}function Zn(e){return new this(e).log(10)}function Yn(){return At(this,arguments,"lt")}function Hn(){return At(this,arguments,"gt")}function Gn(e,t){return new this(e).mod(t)}function Qn(e,t){return new this(e).mul(t)}function zn(e,t){return new this(e).pow(t)}function Xn(e){var t,n,r,i,o=0,s=new this(1),u=[];if(e===void 0?e=this.precision:M(e,1,re),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]:u[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):(u.push(i%1e7),o+=4);o=r/4}else throw Error(St);else for(;o<r;)u[o++]=Math.random()*1e7|0;for(r=u[--o],e%=h,r&&e&&(i=I(10,h-e),u[o]=(r/i|0)*i);u[o]===0;o--)u.pop();if(o<0)n=0,u=[0];else{for(n=-1;u[0]===0;n-=h)u.shift();for(r=1,i=u[0];i>=10;i/=10)r++;r<h&&(n-=h-r)}return s.e=n,s.d=u,s}function $n(e){return b(e=new this(e),e.e+1,this.rounding)}function Jn(e){return e=new this(e),e.d?e.d[0]?e.s:0*e.s:e.s||NaN}function er(e){return new this(e).sin()}function tr(e){return new this(e).sinh()}function nr(e){return new this(e).sqrt()}function rr(e,t){return new this(e).sub(t)}function ir(){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,b(n,this.precision,this.rounding)}function or(e){return new this(e).tan()}function sr(e){return new this(e).tanh()}function ur(e){return b(e=new this(e),e.e+1,1)}f[Symbol.for("nodejs.util.inspect.custom")]=f.toString;f[Symbol.toStringTag]="Decimal";var _e=f.constructor=_t(Ye);Le=new _e(Le);Te=new _e(Te);import{PublicKey as Xe}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as ar}from"@solana/spl-token";import{PublicKey as E,SystemProgram as cr,SYSVAR_RENT_PUBKEY as lr}from"@solana/web3.js";function U({pubkey:e,isSigner:t=!1,isWritable:n=!0}){return{pubkey:e,isWritable:n,isSigner:t}}var ho=[U({pubkey:ar,isWritable:!1}),U({pubkey:cr.programId,isWritable:!1}),U({pubkey:lr,isWritable:!1})];function Wt({publicKey:e,transformSol:t}){let n=Dt(e.toString());if(n instanceof E)return t&&n.equals(fe)?vt:n;if(t&&n.toString()===fe.toBase58())return vt;if(typeof n=="string"){if(n===E.default.toBase58())return E.default;try{return new E(n)}catch{throw new Error("invalid public key")}}throw new Error("invalid public key")}function Dt(e){try{return new E(e)}catch{return e}}var yo=new E("MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"),mr=new E("SysvarRent111111111111111111111111111111111"),wo=new E("SysvarC1ock11111111111111111111111111111111"),Po=new E("metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),xo=new E("Sysvar1nstructions1111111111111111111111111"),ko=new E("4k3Dyjzvzp8eMZWUXbBCjEvwSkkk59S5iCNLY3QrkX6R"),So=new E("Ea5SjE2Y6yvCeW5dYTn7PYMuW5ikXkvbGdcmSnXeaLjS"),No=new E("SRMuApVNdxXokk5GT7XD5cUUgXMBCoAz2LHeuAoKWRt"),Lo=new E("EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"),To=new E("Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB"),Bo=new E("mSoLzYCxHdYgdzU16g5QSh3i5K3z3KZK7ytfqcJm7So"),Ao=new E("7dHbWXmci3dT8UFYWYZweBLXgycu7Y3iL6trKn1Y7ARj"),Eo=new E("USDH1SM1ojwWUga67PGrgFWUHibbjqMvuMaDkRJTgkX"),Io=new E("NRVwhjBQiUPYtfDT5zRBVJajzFQHaBUNtC7SNVvqRFa"),_o=new E("ANAxByE6G2WjFp7A4NqtWYXb3mgruyzZYg3spfxe6Lbo"),vo=new E("7vfCXTUXx5WJV5JADk17DUJ4ksgau7utNKj4b963voxs"),vt=new E("So11111111111111111111111111111111111111112"),fe=E.default;import{PublicKey as pr}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as Ct}from"@solana/spl-token";var Rt={chainId:101,address:pr.default.toBase58(),programId:Ct.toBase58(),decimals:9,symbol:"SOL",name:"solana",logoURI:"https://img.raydium.io/icon/So11111111111111111111111111111111111111112.png",tags:[],priority:2,type:"raydium",extensions:{coingeckoId:"solana"}},oe={chainId:101,address:"So11111111111111111111111111111111111111112",programId:Ct.toBase58(),decimals:9,symbol:"WSOL",name:"Wrapped SOL",logoURI:"https://img.raydium.io/icon/So11111111111111111111111111111111111111112.png",tags:[],priority:2,type:"raydium",extensions:{coingeckoId:"solana"}};var $e=class{constructor({mint:t,decimals:n,symbol:r,name:i,skipMint:o=!1,isToken2022:s=!1}){if(t===fe.toBase58()||t instanceof Xe&&fe.equals(t)){this.decimals=oe.decimals,this.symbol=oe.symbol,this.name=oe.name,this.mint=new Xe(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?Xe.default:Wt({publicKey:t}),this.isToken2022=s}equals(t){return this===t?!0:this.mint.equals(t.mint)}},ae=$e;ae.WSOL=new $e(xe(le({},oe),{mint:oe.address}));import We from"big.js";import gr from"bn.js";import br from"decimal.js-light";import fr from"toformat";var dr=fr,de=dr;var ve=R("module/fraction"),Je=de(We),ge=de(br),hr={[0]:ge.ROUND_DOWN,[1]:ge.ROUND_HALF_UP,[2]:ge.ROUND_UP},yr={[0]:We.roundDown,[1]:We.roundHalfUp,[2]:We.roundUp},L=class{constructor(t,n=new gr(1)){this.numerator=$(t),this.denominator=$(n)}get quotient(){return this.numerator.div(this.denominator)}invert(){return new L(this.denominator,this.numerator)}add(t){let n=t instanceof L?t:new L($(t));return this.denominator.eq(n.denominator)?new L(this.numerator.add(n.numerator),this.denominator):new L(this.numerator.mul(n.denominator).add(n.numerator.mul(this.denominator)),this.denominator.mul(n.denominator))}sub(t){let n=t instanceof L?t:new L($(t));return this.denominator.eq(n.denominator)?new L(this.numerator.sub(n.numerator),this.denominator):new L(this.numerator.mul(n.denominator).sub(n.numerator.mul(this.denominator)),this.denominator.mul(n.denominator))}mul(t){let n=t instanceof L?t:new L($(t));return new L(this.numerator.mul(n.numerator),this.denominator.mul(n.denominator))}div(t){let n=t instanceof L?t:new L($(t));return new L(this.numerator.mul(n.denominator),this.denominator.mul(n.numerator))}toSignificant(t,n={groupSeparator:""},r=1){Number.isInteger(t)||ve.logWithError(`${t} is not an integer.`),t<=0&&ve.logWithError(`${t} is not positive.`),ge.set({precision:t+1,rounding:hr[r]});let i=new ge(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)||ve.logWithError(`${t} is not an integer.`),t<0&&ve.logWithError(`${t} is negative.`),Je.DP=t,Je.RM=yr[r]||1,new Je(this.numerator.toString()).div(this.denominator.toString()).toFormat(t,n)}isZero(){return this.numerator.isZero()}};var is=R("Raydium_price");var et=class{constructor({decimals:t,symbol:n="UNKNOWN",name:r="UNKNOWN"}){this.decimals=t,this.symbol=n,this.name=r}equals(t){return this===t}},De=et;De.SOL=new et(Rt);import Pr from"big.js";import ps from"bn.js";var Ps=R("Raydium_amount"),xs=de(Pr);import kr from"bn.js";var Ls=new L(new kr(100));import{PublicKey as Vs}from"@solana/web3.js";import Ks from"bn.js";var Ft=new q(0),Sr=new q(1),au=new q(2),cu=new q(3),lu=new q(5),xr=new q(10),mu=new q(100),pu=new q(1e3),fu=new q(1e4),Vt=9007199254740991;function $(e){let t=R("Raydium_parseBigNumberish");if(e instanceof q)return e;if(typeof e=="string"){if(e.match(/^-?[0-9]+$/))return new q(e);t.logWithError(`invalid BigNumberish string: ${e}`)}return typeof e=="number"?(e%1&&t.logWithError(`BigNumberish number underflow: ${e}`),(e>=Vt||e<=-Vt)&&t.logWithError(`BigNumberish number overflow: ${e}`),new q(String(e))):typeof e=="bigint"?new q(e.toString()):(t.error(`invalid BigNumberish value: ${e}`),new q(0))}var Nr=O([V("instruction"),d("amountIn"),d("minAmountOut")]),Lr=O([V("instruction"),d("maxAmountIn"),d("amountOut")]),hu=O([V("instruction"),V("nonce")]),Tr=O([V("instruction"),V("nonce"),d("startTime")]),yu=O([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"),z("swapBaseInAmount"),z("swapQuoteOutAmount"),d("swapBase2QuoteFee"),z("swapQuoteInAmount"),z("swapBaseOutAmount"),d("swapQuote2BaseFee"),A("baseVault"),A("quoteVault"),A("baseMint"),A("quoteMint"),A("lpMint"),A("openOrders"),A("marketId"),A("marketProgramId"),A("targetOrders"),A("withdrawQueue"),A("lpVault"),A("owner"),d("lpReserve"),me(d(),3,"padding")]),wu=O([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"),z("swapBaseInAmount"),z("swapQuoteOutAmount"),z("swapQuoteInAmount"),z("swapBaseOutAmount"),d("swapQuote2BaseFee"),d("swapBase2QuoteFee"),A("baseVault"),A("quoteVault"),A("baseMint"),A("quoteMint"),A("lpMint"),A("modelDataAccount"),A("openOrders"),A("marketId"),A("marketProgramId"),A("targetOrders"),A("owner"),me(d(),64,"padding")]),Br=O([V("instruction"),d("baseAmountIn"),d("quoteAmountIn"),d("fixedSide")]),Ar=O([V("instruction"),d("amountIn")]);var Ru=R("Raydium_liquidity_instruction");function Ut({poolKeys:e}){let t=O([V("instruction"),V("simulateType")]),n=Buffer.alloc(t.span);t.encode({instruction:12,simulateType:0},n);let r=[U({pubkey:new J(e.id),isWritable:!1}),U({pubkey:new J(e.authority),isWritable:!1}),U({pubkey:new J(e.openOrders),isWritable:!1}),U({pubkey:new J(e.vault.A),isWritable:!1}),U({pubkey:new J(e.vault.B),isWritable:!1}),U({pubkey:new J(e.mintLp.address),isWritable:!1}),U({pubkey:new J(e.marketId),isWritable:!1}),U({pubkey:new J(e.marketEventQueue),isWritable:!1})];return{instruction:new Er({programId:new J(e.programId),keys:r,data:n})}}import be from"bn.js";function ie({name:e,programId:t,marketId:n}){let{publicKey:r}=Fe([t.toBuffer(),n.toBuffer(),Buffer.from(e,"utf-8")],t);return r}function _r({programId:e}){return Fe([Buffer.from([97,109,109,32,97,117,116,104,111,114,105,116,121])],e)}function Zu({version:e,marketVersion:t,marketId:n,baseMint:r,quoteMint:i,baseDecimals:o,quoteDecimals:s,programId:u,marketProgramId:c}){let a=ie({name:"amm_associated_seed",programId:u,marketId:n}),l=ie({name:"lp_mint_associated_seed",programId:u,marketId:n}),{publicKey:m,nonce:p}=_r({programId:u}),g=ie({name:"coin_vault_associated_seed",programId:u,marketId:n}),P=ie({name:"pc_vault_associated_seed",programId:u,marketId:n}),y=ie({name:"temp_lp_token_associated_seed",programId:u,marketId:n}),_=ie({name:"open_order_associated_seed",programId:u,marketId:n}),N=ie({name:"target_associated_seed",programId:u,marketId:n}),F=ie({name:"withdraw_associated_seed",programId:u,marketId:n}),{publicKey:x}=mt({programId:c,marketId:n});return{id:a,baseMint:r,quoteMint:i,lpMint:l,baseDecimals:o,quoteDecimals:s,lpDecimals:o,version:e,programId:u,authority:m,nonce:p,baseVault:g,quoteVault:P,lpVault:y,openOrders:_,targetOrders:N,withdrawQueue:F,marketVersion:t,marketProgramId:c,marketId:n,marketAuthority:x,lookupTableAccount:Ir.default}}var tt;async function Yu({connection:e,poolKeysList:t,config:n}){tt||(tt=new Se({connection:e}),await tt.initStableModelLayout());let r=t.map(s=>Ut({poolKeys:s}));return(await at(e,r.map(s=>s.instruction),"GetPoolData")).map(s=>{let u=ct(s,"GetPoolData"),c=new be(Q(u,"status")),a=Number(Q(u,"coin_decimals")),l=Number(Q(u,"pc_decimals")),m=Number(Q(u,"lp_decimals")),p=new be(Q(u,"pool_coin_amount")),g=new be(Q(u,"pool_pc_amount")),P=new be(Q(u,"pool_lp