@cobaltx/sdk-v2
Version:
An SDK for building applications on top of CobaltX.
1 lines • 71.6 kB
JavaScript
import Ct from"bn.js";var yi=new Ct(25),wi=new Ct(1e4),yn={4:3,5:3};import{PublicKey as kn}from"@solana/web3.js";import Kt,{isBN as Rt}from"bn.js";import{bits as xi,BitStructure as Ai,blob as wn,Blob as ki,cstr as Si,f32 as Ii,f32be as Bi,f64 as Li,f64be as Ni,greedy as Ci,Layout as Pn,ns64 as Mi,ns64be as Ei,nu64 as _i,nu64be as Ki,offset as Ri,s16 as Di,s16be as Oi,s24 as vi,s24be as Vi,s32 as Fi,s32be as qi,s40 as Wi,s40be as Ui,s48 as Gi,s48be as Hi,s8 as zi,seq as Tn,struct as ji,Structure as xn,u16 as Qi,u16be as Zi,u24 as Yi,u24be as Xi,u32 as Ji,u32be as $i,u40 as eo,u40be as to,u48 as no,u48be as ro,u8 as io,UInt as An,union as oo,Union as so,unionLayoutDiscriminator as ao,utf8 as uo}from"@solana/buffer-layout";var Xe=Pn,Mt=xn;var Et=An;var _t=Tn;var Je=wn;var De=class extends Xe{constructor(n,r,i){super(n,i);this.blob=Je(n),this.signed=r}decode(n,r=0){let i=new Kt(this.blob.decode(n,r),10,"le");return this.signed?i.fromTwos(this.span*8).clone():i}encode(n,r,i=0){return typeof n=="number"&&(n=new Kt(n)),this.signed&&(n=n.toTwos(this.span*8)),this.blob.encode(n.toArrayLike(Buffer,"le",this.span),r,i)}};function q(e){return new Et(1,e)}function g(e){return new De(8,!1,e)}function X(e){return new De(16,!1,e)}var $e=class extends Xe{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 E(e){return new $e(Je(32),t=>new kn(t),t=>t.toBuffer(),e)}var et=class extends Mt{decode(t,n){return super.decode(t,n)}};function D(e,t,n){return new et(e,t,n)}function Se(e,t,n){let r,i=typeof t=="number"?t:Rt(t)?t.toNumber():new Proxy(t,{get(o,s){if(!r){let a=Reflect.get(o,"count");r=Rt(a)?a.toNumber():a,Reflect.set(o,"count",r)}return Reflect.get(o,s)},set(o,s,a){return s==="count"&&(r=a),Reflect.set(o,s,a)}});return _t(e,i,n)}var tt=D([q("instruction"),g("amountIn"),g("minAmountOut")]),nt=D([q("instruction"),g("maxAmountIn"),g("amountOut")]),So=D([q("instruction"),q("nonce")]),rt=D([q("instruction"),q("nonce"),g("startTime")]),Sn=D([g("status"),g("nonce"),g("maxOrder"),g("depth"),g("baseDecimal"),g("quoteDecimal"),g("state"),g("resetFlag"),g("minSize"),g("volMaxCutRatio"),g("amountWaveRatio"),g("baseLotSize"),g("quoteLotSize"),g("minPriceMultiplier"),g("maxPriceMultiplier"),g("systemDecimalValue"),g("minSeparateNumerator"),g("minSeparateDenominator"),g("tradeFeeNumerator"),g("tradeFeeDenominator"),g("pnlNumerator"),g("pnlDenominator"),g("swapFeeNumerator"),g("swapFeeDenominator"),g("baseNeedTakePnl"),g("quoteNeedTakePnl"),g("quoteTotalPnl"),g("baseTotalPnl"),g("poolOpenTime"),g("punishPcAmount"),g("punishCoinAmount"),g("orderbookToInitTime"),X("swapBaseInAmount"),X("swapQuoteOutAmount"),g("swapBase2QuoteFee"),X("swapQuoteInAmount"),X("swapBaseOutAmount"),g("swapQuote2BaseFee"),E("baseVault"),E("quoteVault"),E("baseMint"),E("quoteMint"),E("lpMint"),E("openOrders"),E("marketId"),E("marketProgramId"),E("targetOrders"),E("withdrawQueue"),E("lpVault"),E("owner"),g("lpReserve"),Se(g(),3,"padding")]),In=D([g("accountType"),g("status"),g("nonce"),g("maxOrder"),g("depth"),g("baseDecimal"),g("quoteDecimal"),g("state"),g("resetFlag"),g("minSize"),g("volMaxCutRatio"),g("amountWaveRatio"),g("baseLotSize"),g("quoteLotSize"),g("minPriceMultiplier"),g("maxPriceMultiplier"),g("systemDecimalsValue"),g("abortTradeFactor"),g("priceTickMultiplier"),g("priceTick"),g("minSeparateNumerator"),g("minSeparateDenominator"),g("tradeFeeNumerator"),g("tradeFeeDenominator"),g("pnlNumerator"),g("pnlDenominator"),g("swapFeeNumerator"),g("swapFeeDenominator"),g("baseNeedTakePnl"),g("quoteNeedTakePnl"),g("quoteTotalPnl"),g("baseTotalPnl"),g("poolOpenTime"),g("punishPcAmount"),g("punishCoinAmount"),g("orderbookToInitTime"),X("swapBaseInAmount"),X("swapQuoteOutAmount"),X("swapQuoteInAmount"),X("swapBaseOutAmount"),g("swapQuote2BaseFee"),g("swapBase2QuoteFee"),E("baseVault"),E("quoteVault"),E("baseMint"),E("quoteMint"),E("lpMint"),E("modelDataAccount"),E("openOrders"),E("marketId"),E("marketProgramId"),E("targetOrders"),E("owner"),Se(g(),64,"padding")]),it=D([q("instruction"),g("baseAmountIn"),g("quoteAmountIn"),g("fixedSide"),g("otherAmountMin")]),ot=D([q("instruction"),g("lpAmount"),g("baseAmountMin"),g("quoteAmountMin")]),Io={4:Sn,5:In},Bo=D([g("fee")]);import{ComputeBudgetProgram as Ko,Keypair as Oo,PublicKey as vt,Transaction as ut,TransactionMessage as Fo,VersionedTransaction as qo}from"@solana/web3.js";import{get as Dt,set as Bn}from"lodash";var st=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}},Ot={},Ln={};function O(e){let t=Dt(Ot,e);if(!t){let n=Dt(Ln,e);t=new st({name:e,logLevel:n}),Bn(Ot,e,t)}return t}var at={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 Ho}from"@solana/spl-token";var J=O("CobaltX_txUtil"),Nn=1644;function Cn(e,t){e.length<1&&J.logWithError(`no instructions provided: ${e.toString()}`),t.length<1&&J.logWithError(`no signers provided:, ${t.toString()}`);let n=new ut;n.recentBlockhash="11111111111111111111111111111111",n.feePayer=t[0],n.add(...e);try{return Buffer.from(n.serialize({verifySignatures:!1})).toString("base64").length<Nn}catch{return!1}}async function Vt(e,t,n,r=!0){let i=new vt("CobaltXSimuLateTransaction11111111111111111"),o=[],s=new ut;s.feePayer=i;for(let u of t)Cn([...s.instructions,u],[i])||(o.push(s),s=new ut,s.feePayer=i),s.add(u);s.instructions.length>0&&o.push(s);let a=[];try{if(a=await Mn(e,o,r),a.find(u=>u.err!==null))throw Error("rpc simulateTransaction error")}catch(u){u instanceof Error&&J.logWithError("failed to simulate for instructions","RPC_ERROR",{message:u.message})}let c=[];for(let u of a)if(J.debug("simulate result:",u),u.logs){let l=u.logs.filter(m=>m&&m.includes(n));J.debug("filteredLog:",c),l.length||J.logWithError("simulate log not match keyword","keyword",n),c.push(...l)}return c}function Ft(e,t){let n=e.match(/{["\w:,]+}/g);return!n||n.length!==1?J.logWithError(`simulate log fail to match json, keyword: ${t}`):n[0]}function $(e,t){let r=new RegExp(`"${t}":(\\d+)`,"g").exec(e);return!r||r.length!==2?J.logWithError(`simulate log fail to match key", key: ${t}`):r[1]}function ye(e,t){let[n,r]=vt.findProgramAddressSync(e,t);return{publicKey:n,nonce:r}}async function Mn(e,t,n){let r=[];if(n){let i=await e.getLatestBlockhash(),o=[];for(let u of t){u.recentBlockhash=i.blockhash,u.lastValidBlockHeight=i.lastValidBlockHeight;let m=u._compile().serialize(),b=u._serialize(m).toString("base64");o.push(b)}let s=o.map(u=>{let l=e._buildArgs([u],void 0,"base64");return{methodName:"simulateTransaction",args:l}}),a=[],c=20;for(let u=0;u<Math.ceil(s.length/c);u++)a.push(s.slice(u*c,(u+1)*c));r=await(await Promise.all(a.map(async u=>(await e._rpcBatchRequest(u)).map(l=>l.result.value)))).flat()}else try{r=await Promise.all(t.map(async i=>await(await e.simulateTransaction(i)).value))}catch(i){i instanceof Error&&J.logWithError("failed to get info for multiple accounts","RPC_ERROR",{message:i.message})}return r}import{TOKEN_PROGRAM_ID as fi}from"@solana/spl-token";import{PublicKey as di}from"@solana/web3.js";import _e from"bn.js";var we=9e15,ae=1e9,ct="0123456789abcdef",ve="2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058",Ve="3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789",lt={precision:20,rounding:4,modulo:1,toExpNeg:-7,toExpPos:21,minE:-we,maxE:we,crypto:!1},Gt,ee,T=!0,qe="[DecimalError] ",se=qe+"Invalid argument: ",Ht=qe+"Precision limit exceeded",zt=qe+"crypto unavailable",jt="[object Decimal]",W=Math.floor,K=Math.pow,En=/^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i,_n=/^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i,Kn=/^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i,Qt=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,Q=1e7,w=7,Rn=9007199254740991,Dn=ve.length-1,mt=Ve.length-1,d={toStringTag:jt};d.absoluteValue=d.abs=function(){var e=new this.constructor(this);return e.s<0&&(e.s=1),y(e)};d.ceil=function(){return y(new this.constructor(this),this.e+1,2)};d.clampedTo=d.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(se+t);return n=r.cmp(e),n<0?e:r.cmp(t)>0?t:new i(r)};d.comparedTo=d.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};d.cosine=d.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())+w,r.rounding=1,n=On(r,$t(r,n)),r.precision=e,r.rounding=t,y(ee==2||ee==3?n.neg():n,e,t,!0)):new r(1):new r(NaN)};d.cubeRoot=d.cbrt=function(){var e,t,n,r,i,o,s,a,c,u,l=this,m=l.constructor;if(!l.isFinite()||l.isZero())return new m(l);for(T=!1,o=l.s*K(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=K(n,1/3),e=W((e+1)/3)-(e%3==(e<0?-1:2)),o==1/0?n="5e"+e:(n=o.toExponential(),n=n.slice(0,n.indexOf("e")+1)+e),r=new m(n),r.s=l.s):r=new m(o.toString()),s=(e=m.precision)+3;;)if(a=r,c=a.times(a).times(a),u=c.plus(l),r=N(u.plus(l).times(a),u.plus(c),s+2,1),v(a.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&&(y(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")&&(y(r,e+1,1),t=!r.times(r).times(r).eq(l));break}return T=!0,y(r,e,m.rounding,t)};d.decimalPlaces=d.dp=function(){var e,t=this.d,n=NaN;if(t){if(e=t.length-1,n=(e-W(this.e/w))*w,e=t[e],e)for(;e%10==0;e/=10)n--;n<0&&(n=0)}return n};d.dividedBy=d.div=function(e){return N(this,new this.constructor(e))};d.dividedToIntegerBy=d.divToInt=function(e){var t=this,n=t.constructor;return y(N(t,new n(e),0,1,1),n.precision,n.rounding)};d.equals=d.eq=function(e){return this.cmp(e)===0};d.floor=function(){return y(new this.constructor(this),this.e+1,3)};d.greaterThan=d.gt=function(e){return this.cmp(e)>0};d.greaterThanOrEqualTo=d.gte=function(e){var t=this.cmp(e);return t==1||t===0};d.hyperbolicCosine=d.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/Ue(4,e)).toString()):(e=16,t="2.3283064365386962890625e-10"),o=Pe(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 y(o,s.precision=n,s.rounding=r,!0)};d.hyperbolicSine=d.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=Pe(o,2,i,i,!0);else{e=1.4*Math.sqrt(r),e=e>16?16:e|0,i=i.times(1/Ue(5,e)),i=Pe(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,y(i,t,n,!0)};d.hyperbolicTangent=d.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,N(n.sinh(),n.cosh(),r.precision=e,r.rounding=t)):new r(n.s)};d.inverseCosine=d.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))};d.inverseHyperbolicCosine=d.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,T=!1,n=n.times(n).minus(1).sqrt().plus(n),T=!0,r.precision=e,r.rounding=t,n.ln()):new r(n)};d.inverseHyperbolicSine=d.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,T=!1,n=n.times(n).plus(1).sqrt().plus(n),T=!0,r.precision=e,r.rounding=t,n.ln())};d.inverseHyperbolicTangent=d.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?y(new o(i),e,t,!0):(o.precision=n=r-i.e,i=N(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)};d.inverseSine=d.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)))};d.inverseTangent=d.atan=function(){var e,t,n,r,i,o,s,a,c,u=this,l=u.constructor,m=l.precision,p=l.rounding;if(u.isFinite()){if(u.isZero())return new l(u);if(u.abs().eq(1)&&m+4<=mt)return s=j(l,m+4,p).times(.25),s.s=u.s,s}else{if(!u.s)return new l(NaN);if(m+4<=mt)return s=j(l,m+4,p).times(.5),s.s=u.s,s}for(l.precision=a=m+10,l.rounding=1,n=Math.min(28,a/w+2|0),e=n;e;--e)u=u.div(u.times(u).plus(1).sqrt().plus(1));for(T=!1,t=Math.ceil(a/w),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)),T=!0,y(s,l.precision=m,l.rounding=p,!0)};d.isFinite=function(){return!!this.d};d.isInteger=d.isInt=function(){return!!this.d&&W(this.e/w)>this.d.length-2};d.isNaN=function(){return!this.s};d.isNegative=d.isNeg=function(){return this.s<0};d.isPositive=d.isPos=function(){return this.s>0};d.isZero=function(){return!!this.d&&this.d[0]===0};d.lessThan=d.lt=function(e){return this.cmp(e)<0};d.lessThanOrEqualTo=d.lte=function(e){return this.cmp(e)<1};d.logarithm=d.log=function(e){var t,n,r,i,o,s,a,c,u=this,l=u.constructor,m=l.precision,p=l.rounding,b=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(T=!1,a=m+b,s=oe(u,a),r=t?Fe(l,a+10):oe(e,a),c=N(s,r,a,1),Ie(c.d,i=m,p))do if(a+=10,s=oe(u,a),r=t?Fe(l,a+10):oe(e,a),c=N(s,r,a,1),!o){+v(c.d).slice(i+1,i+15)+1==1e14&&(c=y(c,m+1,0));break}while(Ie(c.d,i+=10,p));return T=!0,y(c,m,p)};d.minus=d.sub=function(e){var t,n,r,i,o,s,a,c,u,l,m,p,b=this,P=b.constructor;if(e=new P(e),!b.d||!e.d)return!b.s||!e.s?e=new P(NaN):b.d?e.s=-e.s:e=new P(e.d||b.s!==e.s?b:NaN),e;if(b.s!=e.s)return e.s=-e.s,b.plus(e);if(u=b.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(b);else return new P(c===3?-0:0);return T?y(e,a,c):e}if(n=W(e.e/w),l=W(b.e/w),u=u.slice(),o=l-n,o){for(m=o<0,m?(t=u,o=-o,s=p.length):(t=p,n=l,s=u.length),r=Math.max(Math.ceil(a/w),s)+2,o>r&&(o=r,t.length=1),t.reverse(),r=o;r--;)t.push(0);t.reverse()}else{for(r=u.length,s=p.length,m=r<s,m&&(s=r),r=0;r<s;r++)if(u[r]!=p[r]){m=u[r]<p[r];break}o=0}for(m&&(t=u,u=p,p=t,e.s=-e.s),s=u.length,r=p.length-s;r>0;--r)u[s++]=0;for(r=p.length;r>o;){if(u[--r]<p[r]){for(i=r;i&&u[--i]===0;)u[i]=Q-1;--u[i],u[r]+=Q}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=We(u,n),T?y(e,a,c):e):new P(c===3?-0:0)};d.modulo=d.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]?y(new r(n),r.precision,r.rounding):(T=!1,r.modulo==9?(t=N(n,e.abs(),0,3,1),t.s*=e.s):t=N(n,e,0,r.modulo,1),t=t.times(e),T=!0,n.minus(t))};d.naturalExponential=d.exp=function(){return pt(this)};d.naturalLogarithm=d.ln=function(){return oe(this)};d.negated=d.neg=function(){var e=new this.constructor(this);return e.s=-e.s,y(e)};d.plus=d.add=function(e){var t,n,r,i,o,s,a,c,u,l,m=this,p=m.constructor;if(e=new p(e),!m.d||!e.d)return!m.s||!e.s?e=new p(NaN):m.d||(e=new p(e.d||m.s===e.s?m:NaN)),e;if(m.s!=e.s)return e.s=-e.s,m.minus(e);if(u=m.d,l=e.d,a=p.precision,c=p.rounding,!u[0]||!l[0])return l[0]||(e=new p(m)),T?y(e,a,c):e;if(o=W(m.e/w),r=W(e.e/w),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/w),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)/Q|0,u[i]%=Q;for(t&&(u.unshift(t),++r),s=u.length;u[--s]==0;)u.pop();return e.d=u,e.e=We(u,r),T?y(e,a,c):e};d.precision=d.sd=function(e){var t,n=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(se+e);return n.d?(t=Zt(n.d),e&&n.e+1>t&&(t=n.e+1)):t=NaN,t};d.round=function(){var e=this,t=e.constructor;return y(new t(e),e.e+1,t.rounding)};d.sine=d.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())+w,r.rounding=1,n=Vn(r,$t(r,n)),r.precision=e,r.rounding=t,y(ee>2?n.neg():n,e,t,!0)):new r(NaN)};d.squareRoot=d.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(T=!1,u=Math.sqrt(+s),u==0||u==1/0?(t=v(a),(t.length+c)%2==0&&(t+="0"),u=Math.sqrt(t),c=W((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(N(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&&(y(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")&&(y(r,c+1,1),e=!r.times(r).eq(s));break}return T=!0,y(r,c,l.rounding,e)};d.tangent=d.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=N(n,new r(1).minus(n.times(n)).sqrt(),e+10,0),r.precision=e,r.rounding=t,y(ee==2||ee==4?n.neg():n,e,t,!0)):new r(NaN)};d.times=d.mul=function(e){var t,n,r,i,o,s,a,c,u,l=this,m=l.constructor,p=l.d,b=(e=new m(e)).d;if(e.s*=l.s,!p||!p[0]||!b||!b[0])return new m(!e.s||p&&!p[0]&&!b||b&&!b[0]&&!p?NaN:!p||!b?e.s/0:e.s*0);for(n=W(l.e/w)+W(e.e/w),c=p.length,u=b.length,c<u&&(o=p,p=b,b=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]+b[r]*p[i-r-1]+t,o[i--]=a%Q|0,t=a/Q|0;o[i]=(o[i]+t)%Q|0}for(;!o[--s];)o.pop();return t?++n:o.shift(),e.d=o,e.e=We(o,n),T?y(e,m.precision,m.rounding):e};d.toBinary=function(e,t){return dt(this,2,e,t)};d.toDecimalPlaces=d.toDP=function(e,t){var n=this,r=n.constructor;return n=new r(n),e===void 0?n:(G(e,0,ae),t===void 0?t=r.rounding:G(t,0,8),y(n,e+n.e+1,t))};d.toExponential=function(e,t){var n,r=this,i=r.constructor;return e===void 0?n=Z(r,!0):(G(e,0,ae),t===void 0?t=i.rounding:G(t,0,8),r=y(new i(r),e+1,t),n=Z(r,!0,e+1)),r.isNeg()&&!r.isZero()?"-"+n:n};d.toFixed=function(e,t){var n,r,i=this,o=i.constructor;return e===void 0?n=Z(i):(G(e,0,ae),t===void 0?t=o.rounding:G(t,0,8),r=y(new o(i),e+i.e+1,t),n=Z(r,!1,e+r.e+1)),i.isNeg()&&!i.isZero()?"-"+n:n};d.toFraction=function(e){var t,n,r,i,o,s,a,c,u,l,m,p,b=this,P=b.d,h=b.constructor;if(!P)return new h(b);if(u=n=new h(1),r=c=new h(0),t=new h(r),o=t.e=Zt(P)-b.e-1,s=o%w,t.d[0]=K(10,s<0?w+s:s),e==null)e=o>0?t:u;else{if(a=new h(e),!a.isInt()||a.lt(u))throw Error(se+a);e=a.gt(t)?o>0?t:u:a}for(T=!1,a=new h(v(P)),l=h.precision,h.precision=o=P.length*w*2;m=N(a,t,0,1,1),i=n.plus(m.times(r)),i.cmp(e)!=1;)n=r,r=i,i=u,u=c.plus(m.times(i)),c=i,i=t,t=a.minus(m.times(i)),a=i;return i=N(e.minus(n),r,0,1,1),c=c.plus(i.times(u)),n=n.plus(i.times(r)),c.s=u.s=b.s,p=N(u,r,o,1).minus(b).abs().cmp(N(c,n,o,1).minus(b).abs())<1?[u,r]:[c,n],h.precision=l,T=!0,p};d.toHexadecimal=d.toHex=function(e,t){return dt(this,16,e,t)};d.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:G(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]?(T=!1,n=N(n,e,0,t,1).times(e),T=!0,y(n)):(e.s=n.s,n=e),n};d.toNumber=function(){return+this};d.toOctal=function(e,t){return dt(this,8,e,t)};d.toPower=d.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(K(+a,u));if(a=new c(a),a.eq(1))return a;if(r=c.precision,o=c.rounding,e.eq(1))return y(a,r,o);if(t=W(e.e/w),t>=e.d.length-1&&(n=u<0?-u:u)<=Rn)return i=Yt(c,a,n,r),e.s<0?new c(1).div(i):y(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=K(+a,u),t=n==0||!isFinite(n)?W(u*(Math.log("0."+v(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):(T=!1,c.rounding=a.s=1,n=Math.min(12,(t+"").length),i=pt(e.times(oe(a,r+n)),r),i.d&&(i=y(i,r+5,1),Ie(i.d,r,o)&&(t=r+10,i=y(pt(e.times(oe(a,t+n)),t),t+5,1),+v(i.d).slice(r+1,r+15)+1==1e14&&(i=y(i,r+1,0)))),i.s=s,T=!0,c.rounding=o,y(i,r,o))};d.toPrecision=function(e,t){var n,r=this,i=r.constructor;return e===void 0?n=Z(r,r.e<=i.toExpNeg||r.e>=i.toExpPos):(G(e,1,ae),t===void 0?t=i.rounding:G(t,0,8),r=y(new i(r),e,t),n=Z(r,e<=r.e||r.e<=i.toExpNeg,e)),r.isNeg()&&!r.isZero()?"-"+n:n};d.toSignificantDigits=d.toSD=function(e,t){var n=this,r=n.constructor;return e===void 0?(e=r.precision,t=r.rounding):(G(e,1,ae),t===void 0?t=r.rounding:G(t,0,8)),y(new r(n),e,t)};d.toString=function(){var e=this,t=e.constructor,n=Z(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()&&!e.isZero()?"-"+n:n};d.truncated=d.trunc=function(){return y(new this.constructor(this),this.e+1,1)};d.valueOf=d.toJSON=function(){var e=this,t=e.constructor,n=Z(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()?"-"+n:n};function 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=w-r.length,n&&(o+=ie(n)),o+=r;s=e[t],r=s+"",n=w-r.length,n&&(o+=ie(n))}else if(s===0)return"0";for(;s%10===0;)s/=10;return o+s}function G(e,t,n){if(e!==~~e||e<t||e>n)throw Error(se+e)}function Ie(e,t,n,r){var i,o,s,a;for(o=e[0];o>=10;o/=10)--t;return--t<0?(t+=w,i=0):(i=Math.ceil((t+1)/w),t%=w),o=K(10,w-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)==K(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)==K(10,t-3)-1,s}function Oe(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]+=ct.indexOf(e.charAt(s++)),r=0;r<i.length;r++)i[r]>n-1&&(i[r+1]===void 0&&(i[r+1]=0),i[r+1]+=i[r]/n|0,i[r]%=n)}return i.reverse()}function On(e,t){var n,r,i;if(t.isZero())return t;r=t.d.length,r<32?(n=Math.ceil(r/3),i=(1/Ue(4,n)).toString()):(n=16,i="2.3283064365386962890625e-10"),e.precision+=n,t=Pe(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 N=function(){function e(r,i,o){var s,a=0,c=r.length;for(r=r.slice();c--;)s=r[c]*i+a,r[c]=s%o|0,a=s/o|0;return a&&r.unshift(a),r}function t(r,i,o,s){var a,c;if(o!=s)c=o>s?1:-1;else for(a=c=0;a<o;a++)if(r[a]!=i[a]){c=r[a]>i[a]?1:-1;break}return c}function n(r,i,o,s){for(var a=0;o--;)r[o]-=a,a=r[o]<i[o]?1:0,r[o]=a*s+r[o]-i[o];for(;!r[0]&&r.length>1;)r.shift()}return function(r,i,o,s,a,c){var u,l,m,p,b,P,h,_,L,U,S,R,be,H,ke,le,me,he,z,Ke,Re=r.constructor,Ye=r.s==i.s?1:-1,F=r.d,C=i.d;if(!F||!F[0]||!C||!C[0])return new Re(!r.s||!i.s||(F?C&&F[0]==C[0]:!C)?NaN:F&&F[0]==0||!C?Ye*0:Ye/0);for(c?(b=1,l=r.e-i.e):(c=Q,b=w,l=W(r.e/b)-W(i.e/b)),z=C.length,me=F.length,L=new Re(Ye),U=L.d=[],m=0;C[m]==(F[m]||0);m++);if(C[m]>(F[m]||0)&&l--,o==null?(H=o=Re.precision,s=Re.rounding):a?H=o+(r.e-i.e)+1:H=o,H<0)U.push(1),P=!0;else{if(H=H/b+2|0,m=0,z==1){for(p=0,C=C[0],H++;(m<me||p)&&H--;m++)ke=p*c+(F[m]||0),U[m]=ke/C|0,p=ke%C|0;P=p||m<me}else{for(p=c/(C[0]+1)|0,p>1&&(C=e(C,p,c),F=e(F,p,c),z=C.length,me=F.length),le=z,S=F.slice(0,z),R=S.length;R<z;)S[R++]=0;Ke=C.slice(),Ke.unshift(0),he=C[0],C[1]>=c/2&&++he;do p=0,u=t(C,S,z,R),u<0?(be=S[0],z!=R&&(be=be*c+(S[1]||0)),p=be/he|0,p>1?(p>=c&&(p=c-1),h=e(C,p,c),_=h.length,R=S.length,u=t(h,S,_,R),u==1&&(p--,n(h,z<_?Ke:C,_,c))):(p==0&&(u=p=1),h=C.slice()),_=h.length,_<R&&h.unshift(0),n(S,h,R,c),u==-1&&(R=S.length,u=t(C,S,z,R),u<1&&(p++,n(S,z<R?Ke:C,R,c))),R=S.length):u===0&&(p++,S=[0]),U[m++]=p,u&&S[0]?S[R++]=F[le]||0:(S=[F[le]],R=1);while((le++<me||S[0]!==void 0)&&H--);P=S[0]!==void 0}U[0]||U.shift()}if(b==1)L.e=l,Gt=P;else{for(m=1,p=U[0];p>=10;p/=10)m++;L.e=m+l*b-1,y(L,a?o+L.e+1:o,s,P)}return L}}();function y(e,t,n,r){var i,o,s,a,c,u,l,m,p,b=e.constructor;e:if(t!=null){if(m=e.d,!m)return e;for(i=1,a=m[0];a>=10;a/=10)i++;if(o=t-i,o<0)o+=w,s=t,l=m[p=0],c=l/K(10,i-s-1)%10|0;else if(p=Math.ceil((o+1)/w),a=m.length,p>=a)if(r){for(;a++<=p;)m.push(0);l=c=0,i=1,o%=w,s=o-w+1}else break e;else{for(l=a=m[p],i=1;a>=10;a/=10)i++;o%=w,s=o-w+i,c=s<0?0:l/K(10,i-s-1)%10|0}if(r=r||t<0||m[p+1]!==void 0||(s<0?l:l%K(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/K(10,i-s):0:m[p-1])%10&1||n==(e.s<0?8:7)),t<1||!m[0])return m.length=0,u?(t-=e.e+1,m[0]=K(10,(w-t%w)%w),e.e=-t||0):m[0]=e.e=0,e;if(o==0?(m.length=p,a=1,p--):(m.length=p+1,a=K(10,w-o),m[p]=s>0?(l/K(10,i-s)%K(10,s)|0)*a:0),u)for(;;)if(p==0){for(o=1,s=m[0];s>=10;s/=10)o++;for(s=m[0]+=a,a=1;s>=10;s/=10)a++;o!=a&&(e.e++,m[0]==Q&&(m[0]=1));break}else{if(m[p]+=a,m[p]!=Q)break;m[p--]=0,a=1}for(o=m.length;m[--o]===0;)m.pop()}return T&&(e.e>b.maxE?(e.d=null,e.e=NaN):e.e<b.minE&&(e.e=0,e.d=[0])),e}function Z(e,t,n){if(!e.isFinite())return Jt(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)+ie(r):s>1&&(o=o.charAt(0)+"."+o.slice(1)),o=o+(e.e<0?"e":"e+")+e.e):i<0?(o="0."+ie(-i-1)+o,n&&(r=n-s)>0&&(o+=ie(r))):i>=s?(o+=ie(i+1-s),n&&(r=n-i-1)>0&&(o=o+"."+ie(r))):((r=i+1)<s&&(o=o.slice(0,r)+"."+o.slice(r)),n&&(r=n-s)>0&&(i+1===s&&(o+="."),o+=ie(r))),o}function We(e,t){var n=e[0];for(t*=w;n>=10;n/=10)t++;return t}function Fe(e,t,n){if(t>Dn)throw T=!0,n&&(e.precision=n),Error(Ht);return y(new e(ve),t,1,!0)}function j(e,t,n){if(t>mt)throw Error(Ht);return y(new e(Ve),t,n,!0)}function Zt(e){var t=e.length-1,n=t*w+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 ie(e){for(var t="";e--;)t+="0";return t}function Yt(e,t,n,r){var i,o=new e(1),s=Math.ceil(r/w+4);for(T=!1;;){if(n%2&&(o=o.times(t),Wt(o.d,s)&&(i=!0)),n=W(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 T=!0,o}function qt(e){return e.d[e.d.length-1]&1}function Xt(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 pt(e,t){var n,r,i,o,s,a,c,u=0,l=0,m=0,p=e.constructor,b=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?(T=!1,c=P):c=t,a=new p(.03125);e.e>-2;)e=e.times(a),m+=5;for(r=Math.log(K(2,m))/Math.LN10*2+5|0,c+=r,n=o=s=new p(1),p.precision=c;;){if(o=y(o.times(e),c,1),n=n.times(++l),a=s.plus(N(o,n,c,1)),v(a.d).slice(0,c)===v(s.d).slice(0,c)){for(i=m;i--;)s=y(s.times(s),c,1);if(t==null)if(u<3&&Ie(s.d,c-r,b,u))p.precision=c+=10,n=o=a=new p(1),l=0,u++;else return y(s,p.precision=P,b,T=!0);else return p.precision=P,s}s=a}}function oe(e,t){var n,r,i,o,s,a,c,u,l,m,p,b=1,P=10,h=e,_=h.d,L=h.constructor,U=L.rounding,S=L.precision;if(h.s<0||!_||!_[0]||!h.e&&_[0]==1&&_.length==1)return new L(_&&!_[0]?-1/0:h.s!=1?NaN:_?0:h);if(t==null?(T=!1,l=S):l=t,L.precision=l+=P,n=v(_),r=n.charAt(0),Math.abs(o=h.e)<15e14){for(;r<7&&r!=1||r==1&&n.charAt(1)>3;)h=h.times(e),n=v(h.d),r=n.charAt(0),b++;o=h.e,r>1?(h=new L("0."+n),o++):h=new L(r+"."+n.slice(1))}else return u=Fe(L,l+2,S).times(o+""),h=oe(new L(r+"."+n.slice(1)),l-P).plus(u),L.precision=S,t==null?y(h,S,U,T=!0):h;for(m=h,c=s=h=N(h.minus(1),h.plus(1),l,1),p=y(h.times(h),l,1),i=3;;){if(s=y(s.times(p),l,1),u=c.plus(N(s,new L(i),l,1)),v(u.d).slice(0,l)===v(c.d).slice(0,l))if(c=c.times(2),o!==0&&(c=c.plus(Fe(L,l+2,S).times(o+""))),c=N(c,new L(b),l,1),t==null)if(Ie(c.d,l-P,U,a))L.precision=l+=P,u=s=h=N(m.minus(1),m.plus(1),l,1),p=y(h.times(h),l,1),i=a=1;else return y(c,L.precision=S,U,T=!0);else return L.precision=S,c;c=u,i+=2}}function Jt(e){return String(e.s*e.s/0)}function ft(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)%w,n<0&&(r+=w),r<i){for(r&&e.d.push(+t.slice(0,r)),i-=w;r<i;)e.d.push(+t.slice(r,r+=w));t=t.slice(r),r=w-t.length}else r-=i;for(;r--;)t+="0";e.d.push(+t),T&&(e.e>e.constructor.maxE?(e.d=null,e.e=NaN):e.e<e.constructor.minE&&(e.e=0,e.d=[0]))}else e.e=0,e.d=[0];return e}function vn(e,t){var n,r,i,o,s,a,c,u,l;if(t.indexOf("_")>-1){if(t=t.replace(/(\d)_(?=\d)/g,"$1"),Qt.test(t))return ft(e,t)}else if(t==="Infinity"||t==="NaN")return+t||(e.s=NaN),e.e=NaN,e.d=null,e;if(_n.test(t))n=16,t=t.toLowerCase();else if(En.test(t))n=2;else if(Kn.test(t))n=8;else throw Error(se+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=Yt(r,new r(n),o,o*2)),u=Oe(t,n,Q),l=u.length-1,o=l;u[o]===0;--o)u.pop();return o<0?new r(e.s*0):(e.e=We(u,l),e.d=u,T=!1,s&&(e=N(e,i,a*4)),c&&(e=e.times(Math.abs(c)<54?K(2,c):Be.pow(2,c))),T=!0,e)}function Vn(e,t){var n,r=t.d.length;if(r<3)return t.isZero()?t:Pe(e,2,t,t);n=1.4*Math.sqrt(r),n=n>16?16:n|0,t=t.times(1/Ue(5,n)),t=Pe(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 Pe(e,t,n,r,i){var o,s,a,c,u=1,l=e.precision,m=Math.ceil(l/w);for(T=!1,c=n.times(n),a=new e(r);;){if(s=N(a.times(c),new e(t++*t++),l,1),a=i?r.plus(s):r.minus(s),r=N(s.times(c),new e(t++*t++),l,1),s=a.plus(r),s.d[m]!==void 0){for(o=m;s.d[o]===a.d[o]&&o--;);if(o==-1)break}o=a,a=r,r=s,s=o,u++}return T=!0,s.d.length=m+1,s}function Ue(e,t){for(var n=e;--t;)n*=e;return n}function $t(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 ee=r?4:1,t;if(n=t.divToInt(i),n.isZero())ee=r?3:2;else{if(t=t.minus(n.times(i)),t.lte(o))return ee=qt(n)?r?2:3:r?4:1,t;ee=qt(n)?r?1:4:r?3:2}return t.minus(i).abs()}function dt(e,t,n,r){var i,o,s,a,c,u,l,m,p,b=e.constructor,P=n!==void 0;if(P?(G(n,1,ae),r===void 0?r=b.rounding:G(r,0,8)):(n=b.precision,r=b.rounding),!e.isFinite())l=Jt(e);else{for(l=Z(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 b(1),p.e=l.length-s,p.d=Oe(Z(p),10,i),p.e=p.d.length),m=Oe(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 b(e),e.d=m,e.e=o,e=N(e,p,n,r,0,i),m=e.d,o=e.e,u=Gt),s=m[n],a=i/2,u=u||m[n+1]!==void 0,u=r<4?(s!==void 0||u)&&(r===0||r===(e.s<0?3:2)):s>a||s===a&&(r===4||u||r===6&&m[n-1]&1||r===(e.s<0?8:7)),m.length=n,u)for(;++m[--n]>i-1;)m[n]=0,n||(++o,m.unshift(1));for(c=m.length;!m[c-1];--c);for(s=0,l="";s<c;s++)l+=ct.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=Oe(l,i,t),c=m.length;!m[c-1];--c);for(s=1,l="1.";s<c;s++)l+=ct.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 Fn(e){return new this(e).abs()}function qn(e){return new this(e).acos()}function Wn(e){return new this(e).acosh()}function Un(e,t){return new this(e).plus(t)}function Gn(e){return new this(e).asin()}function Hn(e){return new this(e).asinh()}function zn(e){return new this(e).atan()}function jn(e){return new this(e).atanh()}function Qn(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(N(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(N(e,t,o,1)),n}function Zn(e){return new this(e).cbrt()}function Yn(e){return y(e=new this(e),e.e+1,2)}function Xn(e,t,n){return new this(e).clamp(t,n)}function Jn(e){if(!e||typeof e!="object")throw Error(qe+"Object expected");var t,n,r,i=e.defaults===!0,o=["precision",1,ae,"rounding",0,8,"toExpNeg",-we,0,"toExpPos",0,we,"maxE",0,we,"minE",-we,0,"modulo",0,9];for(t=0;t<o.length;t+=3)if(n=o[t],i&&(this[n]=lt[n]),(r=e[n])!==void 0)if(W(r)===r&&r>=o[t+1]&&r<=o[t+2])this[n]=r;else throw Error(se+n+": "+r);if(n="crypto",i&&(this[n]=lt[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(zt);else this[n]=!1;else throw Error(se+n+": "+r);return this}function $n(e){return new this(e).cos()}function er(e){return new this(e).cosh()}function en(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,Ut(o)){u.s=o.s,T?!o.d||o.e>i.maxE?(u.e=NaN,u.d=null):o.e<i.minE?(u.e=0,u.d=[0]):(u.e=o.e,u.d=o.d.slice()):(u.e=o.e,u.d=o.d?o.d.slice():o.d);return}if(c=typeof o,c==="number"){if(o===0){u.s=1/o<0?-1:1,u.e=0,u.d=[0];return}if(o<0?(o=-o,u.s=-1):u.s=1,o===~~o&&o<1e7){for(s=0,a=o;a>=10;a/=10)s++;T?s>i.maxE?(u.e=NaN,u.d=null):s<i.minE?(u.e=0,u.d=[0]):(u.e=s,u.d=[o]):(u.e=s,u.d=[o]);return}else if(o*0!==0){o||(u.s=NaN),u.e=NaN,u.d=null;return}return ft(u,o.toString())}else if(c!=="string")throw Error(se+o);return(a=o.charCodeAt(0))===45?(o=o.slice(1),u.s=-1):(a===43&&(o=o.slice(1)),u.s=1),Qt.test(o)?ft(u,o):vn(u,o)}if(i.prototype=d,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=Jn,i.clone=en,i.isDecimal=Ut,i.abs=Fn,i.acos=qn,i.acosh=Wn,i.add=Un,i.asin=Gn,i.asinh=Hn,i.atan=zn,i.atanh=jn,i.atan2=Qn,i.cbrt=Zn,i.ceil=Yn,i.clamp=Xn,i.cos=$n,i.cosh=er,i.div=tr,i.exp=nr,i.floor=rr,i.hypot=ir,i.ln=or,i.log=sr,i.log10=ur,i.log2=ar,i.max=cr,i.min=lr,i.mod=mr,i.mul=pr,i.pow=fr,i.random=dr,i.round=gr,i.sign=br,i.sin=hr,i.sinh=yr,i.sqrt=wr,i.sub=Pr,i.sum=Tr,i.tan=xr,i.tanh=Ar,i.trunc=kr,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 tr(e,t){return new this(e).div(t)}function nr(e){return new this(e).exp()}function rr(e){return y(e=new this(e),e.e+1,3)}function ir(){var e,t,n=new this(0);for(T=!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 T=!0,new this(1/0);n=t}return T=!0,n.sqrt()}function Ut(e){return e instanceof Be||e&&e.toStringTag===jt||!1}function or(e){return new this(e).ln()}function sr(e,t){return new this(e).log(t)}function ar(e){return new this(e).log(2)}function ur(e){return new this(e).log(10)}function cr(){return Xt(this,arguments,"lt")}function lr(){return Xt(this,arguments,"gt")}function mr(e,t){return new this(e).mod(t)}function pr(e,t){return new this(e).mul(t)}function fr(e,t){return new this(e).pow(t)}function dr(e){var t,n,r,i,o=0,s=new this(1),a=[];if(e===void 0?e=this.precision:G(e,1,ae),r=Math.ceil(e/w),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(zt);else for(;o<r;)a[o++]=Math.random()*1e7|0;for(r=a[--o],e%=w,r&&e&&(i=K(10,w-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-=w)a.shift();for(r=1,i=a[0];i>=10;i/=10)r++;r<w&&(n-=w-r)}return s.e=n,s.d=a,s}function gr(e){return y(e=new this(e),e.e+1,this.rounding)}function br(e){return e=new this(e),e.d?e.d[0]?e.s:0*e.s:e.s||NaN}function hr(e){return new this(e).sin()}function yr(e){return new this(e).sinh()}function wr(e){return new this(e).sqrt()}function Pr(e,t){return new this(e).sub(t)}function Tr(){var e=0,t=arguments,n=new this(t[e]);for(T=!1;n.s&&++e<t.length;)n=n.plus(t[e]);return T=!0,y(n,this.precision,this.rounding)}function xr(e){return new this(e).tan()}function Ar(e){return new this(e).tanh()}function kr(e){return y(e=new this(e),e.e+1,1)}d[Symbol.for("nodejs.util.inspect.custom")]=d.toString;d[Symbol.toStringTag]="Decimal";var Be=d.constructor=en(lt);ve=new Be(ve);Ve=new Be(Ve);var Le=Be;import{PublicKey as Ec}from"@solana/web3.js";import{MintLayout as Kc,TOKEN_PROGRAM_ID as Dc}from"@solana/spl-token";import zr from"big.js";import je from"bn.js";import ne from"bn.js";import{TOKEN_PROGRAM_ID as tn}from"@solana/spl-token";import{PublicKey as Sr}from"@solana/web3.js";var gt={chainId:101,address:Sr.default.toBase58(),programId:tn.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"}},ue={chainId:101,address:"So11111111111111111111111111111111111111112",programId:tn.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 Pt}from"@solana/web3.js";import{PublicKey as V,SystemProgram as nn,SYSVAR_RENT_PUBKEY as Ir}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as Br}from"@solana/spl-token";function f({pubkey:e,isSigner:t=!1,isWritable:n=!0}){return{pubkey:e,isWritable:n,isSigner:t}}var es=[f({pubkey:Br,isWritable:!1}),f({pubkey:nn.programId,isWritable:!1}),f({pubkey:Ir,isWritable:!1})];function ht({publicKey:e,transformSol:t}){let n=yt(e.toString());if(n instanceof V)return t&&n.equals(Ne)?bt:n;if(t&&n.toString()===Ne.toBase58())return bt;if(typeof n=="string"){if(n===V.default.toBase58())return V.default;try{return new V(n)}catch{throw new Error("invalid public key")}}throw new Error("invalid public key")}function yt(e){try{return new V(e)}catch{return e}}var ts=new V("MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"),ns=new V("MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"),rn=new V("SysvarRent111111111111111111111111111111111"),rs=new V("SysvarC1ock11111111111111111111111111111111"),is=new V("metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),os=new V("Sysvar1nstructions1111111111111111111111111"),ss=nn.programId,as=new V("a2Gt18uJC8puJT9JRYQLU6rPi6okxQb4WqCjwtYshZB"),us=new V("bXSKiFqYrALF9gJy1KqHm8tv4QXk8nCgbLN8WRsGEbh"),bt=new V("So11111111111111111111111111111111111111112"),Ne=V.default,cs=new V("71kRXzJMvSeArtXYNEWa8KAjpRJosdMQ7Dpgy5Jt5zfd"),ls=new V("ERFzpDteGNo8LTDKW1WwVGrkRMmA2y9WZHXNHxMA6BSV");function wt(e){return ht({publicKey:e,transformSol:!0})}var Tt=class{constructor({mint:t,decimals:n,symbol:r,name:i,skipMint:o=!1,isToken2022:s=!1}){if(t===Ne.toBase58()||t instanceof Pt&&Ne.equals(t)){this.decimals=ue.decimals,this.symbol=ue.symbol,this.name=ue.name,this.mint=new Pt(ue.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?Pt.default:ht({publicKey:t}),this.isToken2022=s}equals(t){return this===t?!0:this.mint.equals(t.mint)}},ce=Tt;ce.WSOL=new Tt({...ue,mint:ue.address});var xt=class{constructor({decimals:t,symbol:n="UNKNOWN",name:r="UNKNOWN"}){this.decimals=t,this.symbol=n,this.name=r}equals(t){return this===t}},Ge=xt;Ge.SOL=new xt(gt);import ze from"big.js";import Mr from"bn.js";import Er from"decimal.js-light";import Ce from"bn.js";var on=9007199254740991;function M(e){let t=O("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>=on||e<=-on)&&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))}import Lr from"toformat";var Nr=Lr,Me=Nr;var He=O("module/fraction"),At=Me(ze),Ee=Me(Er),_r={[0]:Ee.ROUND_DOWN,[1]:Ee.ROUND_HALF_UP,[2]:Ee.ROUND_UP},Kr={[0]:ze.roundDown,[1]:ze.roundHalfUp,[2]:ze.roundUp},I=class{constructor(t,n=new Mr(1)){this.numerator=M(t),this.denominator=M(n)}get quotient(){return this.numerator.div(this.denominator)}invert(){return new I(this.denominator,this.numerator)}add(t){let n=t instanceof I?t:new I(M(t));return this.denominator.eq(n.denominator)?new I(this.numerator.add(n.numerator),this.denominator):new I(this.numerator.mul(n.denominator).add(n.numerator.mul(this.denominator)),this.denominator.mul(n.denominator))}sub(t){let n=t instanceof I?t:new I(M(t));return this.denominator.eq(n.denominator)?new I(this.numerator.sub(n.numerator),this.denominator):new I(this.numerator.mul(n.denominator).sub(n.numerator.mul(this.denominator)),this.denominator.mul(n.denominator))}mul(t){let n=t instanceof I?t:new I(M(t));return new I(this.numerator.mul(n.numerator),this.denominator.mul(n.denominator))}div(t){let n=t instanceof I?t:new I(M(t));return new I(this.numerator.mul(n.denominator),this.denominator.mul(n.numerator))}toSignificant(t,n={groupSeparator:""},r=1){Number.isInteger(t)||He.logWithError(`${t} is not an integer.`),t<=0&&He.logWithError(`${t} is not positive.`),Ee.set({precision:t+1,rounding:_r[r]});let i=new Ee(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)||He.logWithError(`${t} is not an integer.`),t<0&&He.logWithError(`${t} is negative.`),At.DP=t,At.RM=Kr[r]||1,new At(this.numerator.toString()).div(this.denominator.toString()).toFormat(t,n)}isZero(){return this.numerator.isZero()}};import Rr from"bn.js";var sn=new I(new Rr(100)),Te=class extends I{toSignificant(t=5,n,r){return this.mul(sn).toSignificant(t,n,r)}toFixed(t=2,n,r){return this.mul(sn).toFixed(t,n,r)}};var Dr=O("CobaltX_price"),te=class extends I{constructor(n){let{baseToken:r,quoteToken:i,numerator:o,denominator:s}=n;super(o,s);this.baseToken=r,this.quoteToken=i,this.scalar=new I(kt(r.decimals),kt(i.decimals))}get raw(){return new I(this.numerator,this.denominator)}get adjusted(){return super.mul(this.scalar)}invert(){return new te({baseToken:this.quoteToken,quoteToken:this.baseToken,denominator:this.numerator,numerator:this.denominator})}mul(n){this.quoteToken!==n.baseToken&&Dr.logWithError("mul token not equals");let r=super.mul(n);return new te({baseToken:this.baseToken,quoteToken:n.quoteToken,denominator:r.denominator,numerator:r.numerator})}toSignificant(n=this.quoteToken.decimals,r,i){return this.adjusted.toSignificant(n,r,i)}toFixed(n=this.quoteToken.decimals,r,i){return this.adjusted.toFixed(n,r,i)}};import{PublicKey as Or}from"@solana/web3.js";import vr from"bn.js";function an(e){return typeof e=="object"&&e!==null&&![ce,Y,Or,I,vr,te,Te].some(t=>typeof t=="object"&&e instanceof t)}function pe(e){return typeof e=="string"?yt(e):Array.isArray(e)?e.map(t=>pe(t)):an(e)?Object.fromEntries(Object.entries(e).map(([t,n])=>[t,pe(n)])):e}var St=new ne(0),un=new ne(1),ca=new ne(2),la=new ne(3),ma=new ne(5),It=new ne(10),pa=new ne(100),fa=new ne(1e3),da=new ne(1e4);function kt(e){return It.pow(M(e))}import{MINT_SIZE as ya,TOKEN_PROGRAM_ID as wa,getTransferFeeConfig as Pa,unpackMint as Ta}from"@solana/spl-token";import{PublicKey as Ia}from"@solana/web3.js";var Na=O("CobaltX_accountInfo_util");import{PublicKey as Da}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as va}from"@solana/spl-token";import{PublicKey as x}from"@solana/web3.js";var Wa=new x("EhhTKczWMGQt46ynNeRX1WfeagwwJd7ufHvCDjRxjo5Q"),Ua=new x("CBuCnLe26faBpcBP2fktp4rp8abpcAnTWft6ZrP5Q4T"),Ga=new x("9KEPoZmtHUrBbhWN1v1KWLMkkvwY6WLtAVUCPRtRjP4z"),Ha=new x("FarmqiPv5eAj3j1GMdMCMUGXqPUvmquZtMy86QH6rzhG"),za=new x("CLaimxFqjHzgTJtAGHU47NPhg6qrc5sCnpC4tBLyABQS"),ja=new x("srmqPvymJeFKQ4zGQed1GFppgkRHL9kaELCbyksJtPX"),Qa=new x("9xQeWvG816bUx9EPjHmaT23yvVM2ZWbrrpZb9PusVFin"),Za=new x("675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8"),Ya=new x("5quBtoiQqxF9Jv6KYKctB59NT3gtJD2Y65kdnB1Uev3h"),Xa=new x("CDSr3ssLcRB6XYPJwAfFt18MZvEZp4LjHcvzBVZ45duo"),Ja=new x("2TnjBuwqyBB9to5jURagDT7jLmBPefGRiKL2yh1zPZ4V"),$a=new x("LockrWmn6K5twhz3y9w1dQERbmgSaRkfnTeTKbpofwE"),eu=new x("kN1kEznaF5Xbd8LYuqtEFcxzWSBk5Fv6ygX6SqEGJVy"),tu=new x("routeUGWgWzqBWFcrCfv8tritsqukccJPu3q5GPP3xS"