UNPKG

@raydium-io/raydium-sdk-v2

Version:

An SDK for building applications on top of Raydium.

1 lines 67 kB
var mr=Object.defineProperty,gr=Object.defineProperties;var yr=Object.getOwnPropertyDescriptors;var It=Object.getOwnPropertySymbols;var hr=Object.prototype.hasOwnProperty,br=Object.prototype.propertyIsEnumerable;var Rt=(e,t,r)=>t in e?mr(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,J=(e,t)=>{for(var r in t||(t={}))hr.call(t,r)&&Rt(e,r,t[r]);if(It)for(var r of It(t))br.call(t,r)&&Rt(e,r,t[r]);return e},$=(e,t)=>gr(e,yr(t));import{PublicKey as x,SystemProgram as ye,SYSVAR_RENT_PUBKEY as si,SYSVAR_CLOCK_PUBKEY as Ve,TransactionInstruction as U}from"@solana/web3.js";import{createAssociatedTokenAccountInstruction as ai,TOKEN_PROGRAM_ID as Q,ASSOCIATED_TOKEN_PROGRAM_ID as ui}from"@solana/spl-token";import Je from"bn.js";import{PublicKey as Ar}from"@solana/web3.js";import Vt,{isBN as vt}from"bn.js";import{bits as bi,BitStructure as wi,blob as wr,Blob as Pi,cstr as Ti,f32 as xi,f32be as ki,f64 as Si,f64be as Ai,greedy as Li,Layout as Pr,ns64 as Bi,ns64be as Ii,nu64 as Ri,nu64be as Ni,offset as Ci,s16 as Ki,s16be as Vi,s24 as vi,s24be as Ei,s32 as Fi,s32be as _i,s40 as Mi,s40be as Di,s48 as Wi,s48be as Oi,s8 as Ui,seq as Tr,struct as qi,Structure as xr,u16 as Gi,u16be as Hi,u24 as ji,u24be as zi,u32 as Yi,u32be as Zi,u40 as Xi,u40be as Ji,u48 as Qi,u48be as $i,u8 as kr,UInt as Sr,union as eo,Union as to,unionLayoutDiscriminator as ro,utf8 as no}from"@solana/buffer-layout";var $e=Pr,Nt=xr;var et=Sr;var Ct=kr;var Kt=Tr;var pe=wr;var Pe=class extends $e{constructor(r,n,i){super(r,i);this.blob=pe(r),this.signed=n}decode(r,n=0){let i=new Vt(this.blob.decode(r,n),10,"le");return this.signed?i.fromTwos(this.span*8).clone():i}encode(r,n,i=0){return typeof r=="number"&&(r=new Vt(r)),this.signed&&(r=r.toTwos(this.span*8)),this.blob.encode(r.toArrayLike(Buffer,"le",this.span),n,i)}};function N(e){return new et(1,e)}function Te(e){return new et(4,e)}function y(e){return new Pe(8,!1,e)}function oe(e){return new Pe(16,!1,e)}function Et(e){return new Pe(1,!0,e)}function _e(e){return new Pe(8,!0,e)}var Fe=class extends $e{constructor(r,n,i,o){super(r.span,o);this.layout=r,this.decoder=n,this.encoder=i}decode(r,n){return this.decoder(this.layout.decode(r,n))}encode(r,n,i){return this.layout.encode(this.encoder(r),n,i)}getSpan(r,n){return this.layout.getSpan(r,n)}};function k(e){return new Fe(pe(32),t=>new Ar(t),t=>t.toBuffer(),e)}function Le(e){return new Fe(Ct(),Lr,Br,e)}function Lr(e){if(e===0)return!1;if(e===1)return!0;throw new Error("Invalid bool: "+e)}function Br(e){return e?1:0}var tt=class extends Nt{decode(t,r){return super.decode(t,r)}};function I(e,t,r){return new tt(e,t,r)}function E(e,t,r){let n,i=typeof t=="number"?t:vt(t)?t.toNumber():new Proxy(t,{get(o,s){if(!n){let a=Reflect.get(o,"count");n=vt(a)?a.toNumber():a,Reflect.set(o,"count",n)}return Reflect.get(o,s)},set(o,s,a){return s==="count"&&(n=a),Reflect.set(o,s,a)}});return Kt(e,i,r)}import{PublicKey as Cr}from"@solana/web3.js";import{PublicKey as Nr,ComputeBudgetProgram as xo,Transaction as So,TransactionMessage as Lo,Keypair as Bo,VersionedTransaction as Ro}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as Ko}from"@solana/spl-token";import{get as Ft,set as Ir}from"lodash";var rt=class{constructor(t){this.logLevel=t.logLevel!==void 0?t.logLevel:0,this.name=t.name}set level(t){this.logLevel=t}get time(){return Date.now().toString()}get moduleName(){return this.name}isLogLevel(t){return t<=this.logLevel}error(...t){return this.isLogLevel(0)?(console.error(this.time,this.name,"sdk logger error",...t),this):this}logWithError(...t){let r=t.map(n=>typeof n=="object"?JSON.stringify(n):n).join(", ");throw new Error(r)}warning(...t){return this.isLogLevel(1)?(console.warn(this.time,this.name,"sdk logger warning",...t),this):this}info(...t){return this.isLogLevel(2)?(console.info(this.time,this.name,"sdk logger info",...t),this):this}debug(...t){return this.isLogLevel(3)?(console.debug(this.time,this.name,"sdk logger debug",...t),this):this}},_t={},Rr={};function O(e){let t=Ft(_t,e);if(!t){let r=Ft(Rr,e);t=new rt({name:e,logLevel:r}),Ir(_t,e,t)}return t}var Be={CreateAccount:"CreateAccount",InitAccount:"InitAccount",CreateATA:"CreateATA",CloseAccount:"CloseAccount",TransferAmount:"TransferAmount",InitMint:"InitMint",MintTo:"MintTo",InitMarket:"InitMarket",Util1216OwnerClaim:"Util1216OwnerClaim",SetComputeUnitPrice:"SetComputeUnitPrice",SetComputeUnitLimit:"SetComputeUnitLimit",ClmmCreatePool:"ClmmCreatePool",ClmmOpenPosition:"ClmmOpenPosition",ClmmIncreasePosition:"ClmmIncreasePosition",ClmmDecreasePosition:"ClmmDecreasePosition",ClmmClosePosition:"ClmmClosePosition",ClmmSwapBaseIn:"ClmmSwapBaseIn",ClmmSwapBaseOut:"ClmmSwapBaseOut",ClmmInitReward:"ClmmInitReward",ClmmSetReward:"ClmmSetReward",ClmmCollectReward:"ClmmCollectReward",AmmV4Swap:"AmmV4Swap",AmmV4AddLiquidity:"AmmV4AddLiquidity",AmmV4RemoveLiquidity:"AmmV4RemoveLiquidity",AmmV4SimulatePoolInfo:"AmmV4SimulatePoolInfo",AmmV4SwapBaseIn:"AmmV4SwapBaseIn",AmmV4SwapBaseOut:"AmmV4SwapBaseOut",AmmV4CreatePool:"AmmV4CreatePool",AmmV4InitPool:"AmmV4InitPool",AmmV5AddLiquidity:"AmmV5AddLiquidity",AmmV5RemoveLiquidity:"AmmV5RemoveLiquidity",AmmV5SimulatePoolInfo:"AmmV5SimulatePoolInfo",AmmV5SwapBaseIn:"AmmV5SwapBaseIn",AmmV5SwapBaseOut:"AmmV5SwapBaseOut",RouteSwap:"RouteSwap",RouteSwap1:"RouteSwap1",RouteSwap2:"RouteSwap2",FarmV3Deposit:"FarmV3Deposit",FarmV3Withdraw:"FarmV3Withdraw",FarmV3CreateLedger:"FarmV3CreateLedger",FarmV5Deposit:"FarmV5Deposit",FarmV5Withdraw:"FarmV5Withdraw",FarmV5CreateLedger:"FarmV5CreateLedger",FarmV6Deposit:"FarmV6Deposit",FarmV6Withdraw:"FarmV6Withdraw",FarmV6Create:"FarmV6Create",FarmV6Restart:"FarmV6Restart",FarmV6CreatorAddReward:"FarmV6CreatorAddReward",FarmV6CreatorWithdraw:"FarmV6CreatorWithdraw",CpmmCreatePool:"CpmmCreatePool",CpmmAddLiquidity:"CpmmAddLiquidity",CpmmWithdrawLiquidity:"CpmmWithdrawLiquidity",CpmmSwapBaseIn:"CpmmSwapBaseIn",CpmmSwapBaseOut:"CpmmSwapBaseOut"};var Eo=O("Raydium_txUtil");function ee(e,t){let[r,n]=Nr.findProgramAddressSync(e,t);return{publicKey:r,nonce:n}}import{TOKEN_PROGRAM_ID as Kr}from"@solana/spl-token";function Ie(e,t,r){return ee([e.toBuffer(),(r!=null?r:Kr).toBuffer(),t.toBuffer()],new Cr("ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"))}import Z from"bn.js";var xe=9e15,de=1e9,nt="0123456789abcdef",De="2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058",We="3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789",it={precision:20,rounding:4,modulo:1,toExpNeg:-7,toExpPos:21,minE:-xe,maxE:xe,crypto:!1},Ot,se,T=!0,Ue="[DecimalError] ",le=Ue+"Invalid argument: ",Ut=Ue+"Precision limit exceeded",qt=Ue+"crypto unavailable",Gt="[object Decimal]",H=Math.floor,D=Math.pow,Vr=/^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i,vr=/^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i,Er=/^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i,Ht=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,re=1e7,P=7,Fr=9007199254740991,_r=De.length-1,ot=We.length-1,m={toStringTag:Gt};m.absoluteValue=m.abs=function(){var e=new this.constructor(this);return e.s<0&&(e.s=1),b(e)};m.ceil=function(){return b(new this.constructor(this),this.e+1,2)};m.clampedTo=m.clamp=function(e,t){var r,n=this,i=n.constructor;if(e=new i(e),t=new i(t),!e.s||!t.s)return new i(NaN);if(e.gt(t))throw Error(le+t);return r=n.cmp(e),r<0?e:n.cmp(t)>0?t:new i(n)};m.comparedTo=m.cmp=function(e){var t,r,n,i,o=this,s=o.d,a=(e=new o.constructor(e)).d,c=o.s,u=e.s;if(!s||!a)return!c||!u?NaN:c!==u?c:s===a?0:!s^c<0?1:-1;if(!s[0]||!a[0])return s[0]?c:a[0]?-u:0;if(c!==u)return c;if(o.e!==e.e)return o.e>e.e^c<0?1:-1;for(n=s.length,i=a.length,t=0,r=n<i?n:i;t<r;++t)if(s[t]!==a[t])return s[t]>a[t]^c<0?1:-1;return n===i?0:n>i^c<0?1:-1};m.cosine=m.cos=function(){var e,t,r=this,n=r.constructor;return r.d?r.d[0]?(e=n.precision,t=n.rounding,n.precision=e+Math.max(r.e,r.sd())+P,n.rounding=1,r=Mr(n,Xt(n,r)),n.precision=e,n.rounding=t,b(se==2||se==3?r.neg():r,e,t,!0)):new n(1):new n(NaN)};m.cubeRoot=m.cbrt=function(){var e,t,r,n,i,o,s,a,c,u,l=this,d=l.constructor;if(!l.isFinite()||l.isZero())return new d(l);for(T=!1,o=l.s*D(l.s*l,1/3),!o||Math.abs(o)==1/0?(r=q(l.d),e=l.e,(o=(e-r.length+1)%3)&&(r+=o==1||o==-2?"0":"00"),o=D(r,1/3),e=H((e+1)/3)-(e%3==(e<0?-1:2)),o==1/0?r="5e"+e:(r=o.toExponential(),r=r.slice(0,r.indexOf("e")+1)+e),n=new d(r),n.s=l.s):n=new d(o.toString()),s=(e=d.precision)+3;;)if(a=n,c=a.times(a).times(a),u=c.plus(l),n=K(u.plus(l).times(a),u.plus(c),s+2,1),q(a.d).slice(0,s)===(r=q(n.d)).slice(0,s))if(r=r.slice(s-3,s+1),r=="9999"||!i&&r=="4999"){if(!i&&(b(a,e+1,0),a.times(a).times(a).eq(l))){n=a;break}s+=4,i=1}else{(!+r||!+r.slice(1)&&r.charAt(0)=="5")&&(b(n,e+1,1),t=!n.times(n).times(n).eq(l));break}return T=!0,b(n,e,d.rounding,t)};m.decimalPlaces=m.dp=function(){var e,t=this.d,r=NaN;if(t){if(e=t.length-1,r=(e-H(this.e/P))*P,e=t[e],e)for(;e%10==0;e/=10)r--;r<0&&(r=0)}return r};m.dividedBy=m.div=function(e){return K(this,new this.constructor(e))};m.dividedToIntegerBy=m.divToInt=function(e){var t=this,r=t.constructor;return b(K(t,new r(e),0,1,1),r.precision,r.rounding)};m.equals=m.eq=function(e){return this.cmp(e)===0};m.floor=function(){return b(new this.constructor(this),this.e+1,3)};m.greaterThan=m.gt=function(e){return this.cmp(e)>0};m.greaterThanOrEqualTo=m.gte=function(e){var t=this.cmp(e);return t==1||t===0};m.hyperbolicCosine=m.cosh=function(){var e,t,r,n,i,o=this,s=o.constructor,a=new s(1);if(!o.isFinite())return new s(o.s?1/0:NaN);if(o.isZero())return a;r=s.precision,n=s.rounding,s.precision=r+Math.max(o.e,o.sd())+4,s.rounding=1,i=o.d.length,i<32?(e=Math.ceil(i/3),t=(1/Ge(4,e)).toString()):(e=16,t="2.3283064365386962890625e-10"),o=ke(s,1,o.times(t),new s(1),!0);for(var c,u=e,l=new s(8);u--;)c=o.times(o),o=a.minus(c.times(l.minus(c.times(l))));return b(o,s.precision=r,s.rounding=n,!0)};m.hyperbolicSine=m.sinh=function(){var e,t,r,n,i=this,o=i.constructor;if(!i.isFinite()||i.isZero())return new o(i);if(t=o.precision,r=o.rounding,o.precision=t+Math.max(i.e,i.sd())+4,o.rounding=1,n=i.d.length,n<3)i=ke(o,2,i,i,!0);else{e=1.4*Math.sqrt(n),e=e>16?16:e|0,i=i.times(1/Ge(5,e)),i=ke(o,2,i,i,!0);for(var s,a=new o(5),c=new o(16),u=new o(20);e--;)s=i.times(i),i=i.times(a.plus(s.times(c.times(s).plus(u))))}return o.precision=t,o.rounding=r,b(i,t,r,!0)};m.hyperbolicTangent=m.tanh=function(){var e,t,r=this,n=r.constructor;return r.isFinite()?r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+7,n.rounding=1,K(r.sinh(),r.cosh(),n.precision=e,n.rounding=t)):new n(r.s)};m.inverseCosine=m.acos=function(){var e,t=this,r=t.constructor,n=t.abs().cmp(1),i=r.precision,o=r.rounding;return n!==-1?n===0?t.isNeg()?te(r,i,o):new r(0):new r(NaN):t.isZero()?te(r,i+4,o).times(.5):(r.precision=i+6,r.rounding=1,t=t.asin(),e=te(r,i+4,o).times(.5),r.precision=i,r.rounding=o,e.minus(t))};m.inverseHyperbolicCosine=m.acosh=function(){var e,t,r=this,n=r.constructor;return r.lte(1)?new n(r.eq(1)?0:NaN):r.isFinite()?(e=n.precision,t=n.rounding,n.precision=e+Math.max(Math.abs(r.e),r.sd())+4,n.rounding=1,T=!1,r=r.times(r).minus(1).sqrt().plus(r),T=!0,n.precision=e,n.rounding=t,r.ln()):new n(r)};m.inverseHyperbolicSine=m.asinh=function(){var e,t,r=this,n=r.constructor;return!r.isFinite()||r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+2*Math.max(Math.abs(r.e),r.sd())+6,n.rounding=1,T=!1,r=r.times(r).plus(1).sqrt().plus(r),T=!0,n.precision=e,n.rounding=t,r.ln())};m.inverseHyperbolicTangent=m.atanh=function(){var e,t,r,n,i=this,o=i.constructor;return i.isFinite()?i.e>=0?new o(i.abs().eq(1)?i.s/0:i.isZero()?i:NaN):(e=o.precision,t=o.rounding,n=i.sd(),Math.max(n,e)<2*-i.e-1?b(new o(i),e,t,!0):(o.precision=r=n-i.e,i=K(i.plus(1),new o(1).minus(i),r+e,1),o.precision=e+4,o.rounding=1,i=i.ln(),o.precision=e,o.rounding=t,i.times(.5))):new o(NaN)};m.inverseSine=m.asin=function(){var e,t,r,n,i=this,o=i.constructor;return i.isZero()?new o(i):(t=i.abs().cmp(1),r=o.precision,n=o.rounding,t!==-1?t===0?(e=te(o,r+4,n).times(.5),e.s=i.s,e):new o(NaN):(o.precision=r+6,o.rounding=1,i=i.div(new o(1).minus(i.times(i)).sqrt().plus(1)).atan(),o.precision=r,o.rounding=n,i.times(2)))};m.inverseTangent=m.atan=function(){var e,t,r,n,i,o,s,a,c,u=this,l=u.constructor,d=l.precision,f=l.rounding;if(u.isFinite()){if(u.isZero())return new l(u);if(u.abs().eq(1)&&d+4<=ot)return s=te(l,d+4,f).times(.25),s.s=u.s,s}else{if(!u.s)return new l(NaN);if(d+4<=ot)return s=te(l,d+4,f).times(.5),s.s=u.s,s}for(l.precision=a=d+10,l.rounding=1,r=Math.min(28,a/P+2|0),e=r;e;--e)u=u.div(u.times(u).plus(1).sqrt().plus(1));for(T=!1,t=Math.ceil(a/P),n=1,c=u.times(u),s=new l(u),i=u;e!==-1;)if(i=i.times(c),o=s.minus(i.div(n+=2)),i=i.times(c),s=o.plus(i.div(n+=2)),s.d[t]!==void 0)for(e=t;s.d[e]===o.d[e]&&e--;);return r&&(s=s.times(2<<r-1)),T=!0,b(s,l.precision=d,l.rounding=f,!0)};m.isFinite=function(){return!!this.d};m.isInteger=m.isInt=function(){return!!this.d&&H(this.e/P)>this.d.length-2};m.isNaN=function(){return!this.s};m.isNegative=m.isNeg=function(){return this.s<0};m.isPositive=m.isPos=function(){return this.s>0};m.isZero=function(){return!!this.d&&this.d[0]===0};m.lessThan=m.lt=function(e){return this.cmp(e)<0};m.lessThanOrEqualTo=m.lte=function(e){return this.cmp(e)<1};m.logarithm=m.log=function(e){var t,r,n,i,o,s,a,c,u=this,l=u.constructor,d=l.precision,f=l.rounding,g=5;if(e==null)e=new l(10),t=!0;else{if(e=new l(e),r=e.d,e.s<0||!r||!r[0]||e.eq(1))return new l(NaN);t=e.eq(10)}if(r=u.d,u.s<0||!r||!r[0]||u.eq(1))return new l(r&&!r[0]?-1/0:u.s!=1?NaN:r?0:1/0);if(t)if(r.length>1)o=!0;else{for(i=r[0];i%10===0;)i/=10;o=i!==1}if(T=!1,a=d+g,s=ce(u,a),n=t?Oe(l,a+10):ce(e,a),c=K(s,n,a,1),Re(c.d,i=d,f))do if(a+=10,s=ce(u,a),n=t?Oe(l,a+10):ce(e,a),c=K(s,n,a,1),!o){+q(c.d).slice(i+1,i+15)+1==1e14&&(c=b(c,d+1,0));break}while(Re(c.d,i+=10,f));return T=!0,b(c,d,f)};m.minus=m.sub=function(e){var t,r,n,i,o,s,a,c,u,l,d,f,g=this,w=g.constructor;if(e=new w(e),!g.d||!e.d)return!g.s||!e.s?e=new w(NaN):g.d?e.s=-e.s:e=new w(e.d||g.s!==e.s?g:NaN),e;if(g.s!=e.s)return e.s=-e.s,g.plus(e);if(u=g.d,f=e.d,a=w.precision,c=w.rounding,!u[0]||!f[0]){if(f[0])e.s=-e.s;else if(u[0])e=new w(g);else return new w(c===3?-0:0);return T?b(e,a,c):e}if(r=H(e.e/P),l=H(g.e/P),u=u.slice(),o=l-r,o){for(d=o<0,d?(t=u,o=-o,s=f.length):(t=f,r=l,s=u.length),n=Math.max(Math.ceil(a/P),s)+2,o>n&&(o=n,t.length=1),t.reverse(),n=o;n--;)t.push(0);t.reverse()}else{for(n=u.length,s=f.length,d=n<s,d&&(s=n),n=0;n<s;n++)if(u[n]!=f[n]){d=u[n]<f[n];break}o=0}for(d&&(t=u,u=f,f=t,e.s=-e.s),s=u.length,n=f.length-s;n>0;--n)u[s++]=0;for(n=f.length;n>o;){if(u[--n]<f[n]){for(i=n;i&&u[--i]===0;)u[i]=re-1;--u[i],u[n]+=re}u[n]-=f[n]}for(;u[--s]===0;)u.pop();for(;u[0]===0;u.shift())--r;return u[0]?(e.d=u,e.e=qe(u,r),T?b(e,a,c):e):new w(c===3?-0:0)};m.modulo=m.mod=function(e){var t,r=this,n=r.constructor;return e=new n(e),!r.d||!e.s||e.d&&!e.d[0]?new n(NaN):!e.d||r.d&&!r.d[0]?b(new n(r),n.precision,n.rounding):(T=!1,n.modulo==9?(t=K(r,e.abs(),0,3,1),t.s*=e.s):t=K(r,e,0,n.modulo,1),t=t.times(e),T=!0,r.minus(t))};m.naturalExponential=m.exp=function(){return st(this)};m.naturalLogarithm=m.ln=function(){return ce(this)};m.negated=m.neg=function(){var e=new this.constructor(this);return e.s=-e.s,b(e)};m.plus=m.add=function(e){var t,r,n,i,o,s,a,c,u,l,d=this,f=d.constructor;if(e=new f(e),!d.d||!e.d)return!d.s||!e.s?e=new f(NaN):d.d||(e=new f(e.d||d.s===e.s?d:NaN)),e;if(d.s!=e.s)return e.s=-e.s,d.minus(e);if(u=d.d,l=e.d,a=f.precision,c=f.rounding,!u[0]||!l[0])return l[0]||(e=new f(d)),T?b(e,a,c):e;if(o=H(d.e/P),n=H(e.e/P),u=u.slice(),i=o-n,i){for(i<0?(r=u,i=-i,s=l.length):(r=l,n=o,s=u.length),o=Math.ceil(a/P),s=o>s?o+1:s+1,i>s&&(i=s,r.length=1),r.reverse();i--;)r.push(0);r.reverse()}for(s=u.length,i=l.length,s-i<0&&(i=s,r=l,l=u,u=r),t=0;i;)t=(u[--i]=u[i]+l[i]+t)/re|0,u[i]%=re;for(t&&(u.unshift(t),++n),s=u.length;u[--s]==0;)u.pop();return e.d=u,e.e=qe(u,n),T?b(e,a,c):e};m.precision=m.sd=function(e){var t,r=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(le+e);return r.d?(t=jt(r.d),e&&r.e+1>t&&(t=r.e+1)):t=NaN,t};m.round=function(){var e=this,t=e.constructor;return b(new t(e),e.e+1,t.rounding)};m.sine=m.sin=function(){var e,t,r=this,n=r.constructor;return r.isFinite()?r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+Math.max(r.e,r.sd())+P,n.rounding=1,r=Wr(n,Xt(n,r)),n.precision=e,n.rounding=t,b(se>2?r.neg():r,e,t,!0)):new n(NaN)};m.squareRoot=m.sqrt=function(){var e,t,r,n,i,o,s=this,a=s.d,c=s.e,u=s.s,l=s.constructor;if(u!==1||!a||!a[0])return new l(!u||u<0&&(!a||a[0])?NaN:a?s:1/0);for(T=!1,u=Math.sqrt(+s),u==0||u==1/0?(t=q(a),(t.length+c)%2==0&&(t+="0"),u=Math.sqrt(t),c=H((c+1)/2)-(c<0||c%2),u==1/0?t="5e"+c:(t=u.toExponential(),t=t.slice(0,t.indexOf("e")+1)+c),n=new l(t)):n=new l(u.toString()),r=(c=l.precision)+3;;)if(o=n,n=o.plus(K(s,o,r+2,1)).times(.5),q(o.d).slice(0,r)===(t=q(n.d)).slice(0,r))if(t=t.slice(r-3,r+1),t=="9999"||!i&&t=="4999"){if(!i&&(b(o,c+1,0),o.times(o).eq(s))){n=o;break}r+=4,i=1}else{(!+t||!+t.slice(1)&&t.charAt(0)=="5")&&(b(n,c+1,1),e=!n.times(n).eq(s));break}return T=!0,b(n,c,l.rounding,e)};m.tangent=m.tan=function(){var e,t,r=this,n=r.constructor;return r.isFinite()?r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+10,n.rounding=1,r=r.sin(),r.s=1,r=K(r,new n(1).minus(r.times(r)).sqrt(),e+10,0),n.precision=e,n.rounding=t,b(se==2||se==4?r.neg():r,e,t,!0)):new n(NaN)};m.times=m.mul=function(e){var t,r,n,i,o,s,a,c,u,l=this,d=l.constructor,f=l.d,g=(e=new d(e)).d;if(e.s*=l.s,!f||!f[0]||!g||!g[0])return new d(!e.s||f&&!f[0]&&!g||g&&!g[0]&&!f?NaN:!f||!g?e.s/0:e.s*0);for(r=H(l.e/P)+H(e.e/P),c=f.length,u=g.length,c<u&&(o=f,f=g,g=o,s=c,c=u,u=s),o=[],s=c+u,n=s;n--;)o.push(0);for(n=u;--n>=0;){for(t=0,i=c+n;i>n;)a=o[i]+g[n]*f[i-n-1]+t,o[i--]=a%re|0,t=a/re|0;o[i]=(o[i]+t)%re|0}for(;!o[--s];)o.pop();return t?++r:o.shift(),e.d=o,e.e=qe(o,r),T?b(e,d.precision,d.rounding):e};m.toBinary=function(e,t){return ut(this,2,e,t)};m.toDecimalPlaces=m.toDP=function(e,t){var r=this,n=r.constructor;return r=new n(r),e===void 0?r:(Y(e,0,de),t===void 0?t=n.rounding:Y(t,0,8),b(r,e+r.e+1,t))};m.toExponential=function(e,t){var r,n=this,i=n.constructor;return e===void 0?r=ne(n,!0):(Y(e,0,de),t===void 0?t=i.rounding:Y(t,0,8),n=b(new i(n),e+1,t),r=ne(n,!0,e+1)),n.isNeg()&&!n.isZero()?"-"+r:r};m.toFixed=function(e,t){var r,n,i=this,o=i.constructor;return e===void 0?r=ne(i):(Y(e,0,de),t===void 0?t=o.rounding:Y(t,0,8),n=b(new o(i),e+i.e+1,t),r=ne(n,!1,e+n.e+1)),i.isNeg()&&!i.isZero()?"-"+r:r};m.toFraction=function(e){var t,r,n,i,o,s,a,c,u,l,d,f,g=this,w=g.d,h=g.constructor;if(!w)return new h(g);if(u=r=new h(1),n=c=new h(0),t=new h(n),o=t.e=jt(w)-g.e-1,s=o%P,t.d[0]=D(10,s<0?P+s:s),e==null)e=o>0?t:u;else{if(a=new h(e),!a.isInt()||a.lt(u))throw Error(le+a);e=a.gt(t)?o>0?t:u:a}for(T=!1,a=new h(q(w)),l=h.precision,h.precision=o=w.length*P*2;d=K(a,t,0,1,1),i=r.plus(d.times(n)),i.cmp(e)!=1;)r=n,n=i,i=u,u=c.plus(d.times(i)),c=i,i=t,t=a.minus(d.times(i)),a=i;return i=K(e.minus(r),n,0,1,1),c=c.plus(i.times(u)),r=r.plus(i.times(n)),c.s=u.s=g.s,f=K(u,n,o,1).minus(g).abs().cmp(K(c,r,o,1).minus(g).abs())<1?[u,n]:[c,r],h.precision=l,T=!0,f};m.toHexadecimal=m.toHex=function(e,t){return ut(this,16,e,t)};m.toNearest=function(e,t){var r=this,n=r.constructor;if(r=new n(r),e==null){if(!r.d)return r;e=new n(1),t=n.rounding}else{if(e=new n(e),t===void 0?t=n.rounding:Y(t,0,8),!r.d)return e.s?r:e;if(!e.d)return e.s&&(e.s=r.s),e}return e.d[0]?(T=!1,r=K(r,e,0,t,1).times(e),T=!0,b(r)):(e.s=r.s,r=e),r};m.toNumber=function(){return+this};m.toOctal=function(e,t){return ut(this,8,e,t)};m.toPower=m.pow=function(e){var t,r,n,i,o,s,a=this,c=a.constructor,u=+(e=new c(e));if(!a.d||!e.d||!a.d[0]||!e.d[0])return new c(D(+a,u));if(a=new c(a),a.eq(1))return a;if(n=c.precision,o=c.rounding,e.eq(1))return b(a,n,o);if(t=H(e.e/P),t>=e.d.length-1&&(r=u<0?-u:u)<=Fr)return i=zt(c,a,r,n),e.s<0?new c(1).div(i):b(i,n,o);if(s=a.s,s<0){if(t<e.d.length-1)return new c(NaN);if((e.d[t]&1)==0&&(s=1),a.e==0&&a.d[0]==1&&a.d.length==1)return a.s=s,a}return r=D(+a,u),t=r==0||!isFinite(r)?H(u*(Math.log("0."+q(a.d))/Math.LN10+a.e+1)):new c(r+"").e,t>c.maxE+1||t<c.minE-1?new c(t>0?s/0:0):(T=!1,c.rounding=a.s=1,r=Math.min(12,(t+"").length),i=st(e.times(ce(a,n+r)),n),i.d&&(i=b(i,n+5,1),Re(i.d,n,o)&&(t=n+10,i=b(st(e.times(ce(a,t+r)),t),t+5,1),+q(i.d).slice(n+1,n+15)+1==1e14&&(i=b(i,n+1,0)))),i.s=s,T=!0,c.rounding=o,b(i,n,o))};m.toPrecision=function(e,t){var r,n=this,i=n.constructor;return e===void 0?r=ne(n,n.e<=i.toExpNeg||n.e>=i.toExpPos):(Y(e,1,de),t===void 0?t=i.rounding:Y(t,0,8),n=b(new i(n),e,t),r=ne(n,e<=n.e||n.e<=i.toExpNeg,e)),n.isNeg()&&!n.isZero()?"-"+r:r};m.toSignificantDigits=m.toSD=function(e,t){var r=this,n=r.constructor;return e===void 0?(e=n.precision,t=n.rounding):(Y(e,1,de),t===void 0?t=n.rounding:Y(t,0,8)),b(new n(r),e,t)};m.toString=function(){var e=this,t=e.constructor,r=ne(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()&&!e.isZero()?"-"+r:r};m.truncated=m.trunc=function(){return b(new this.constructor(this),this.e+1,1)};m.valueOf=m.toJSON=function(){var e=this,t=e.constructor,r=ne(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()?"-"+r:r};function q(e){var t,r,n,i=e.length-1,o="",s=e[0];if(i>0){for(o+=s,t=1;t<i;t++)n=e[t]+"",r=P-n.length,r&&(o+=ue(r)),o+=n;s=e[t],n=s+"",r=P-n.length,r&&(o+=ue(r))}else if(s===0)return"0";for(;s%10===0;)s/=10;return o+s}function Y(e,t,r){if(e!==~~e||e<t||e>r)throw Error(le+e)}function Re(e,t,r,n){var i,o,s,a;for(o=e[0];o>=10;o/=10)--t;return--t<0?(t+=P,i=0):(i=Math.ceil((t+1)/P),t%=P),o=D(10,P-t),a=e[i]%o|0,n==null?t<3?(t==0?a=a/100|0:t==1&&(a=a/10|0),s=r<4&&a==99999||r>3&&a==49999||a==5e4||a==0):s=(r<4&&a+1==o||r>3&&a+1==o/2)&&(e[i+1]/o/100|0)==D(10,t-2)-1||(a==o/2||a==0)&&(e[i+1]/o/100|0)==0:t<4?(t==0?a=a/1e3|0:t==1?a=a/100|0:t==2&&(a=a/10|0),s=(n||r<4)&&a==9999||!n&&r>3&&a==4999):s=((n||r<4)&&a+1==o||!n&&r>3&&a+1==o/2)&&(e[i+1]/o/1e3|0)==D(10,t-3)-1,s}function Me(e,t,r){for(var n,i=[0],o,s=0,a=e.length;s<a;){for(o=i.length;o--;)i[o]*=t;for(i[0]+=nt.indexOf(e.charAt(s++)),n=0;n<i.length;n++)i[n]>r-1&&(i[n+1]===void 0&&(i[n+1]=0),i[n+1]+=i[n]/r|0,i[n]%=r)}return i.reverse()}function Mr(e,t){var r,n,i;if(t.isZero())return t;n=t.d.length,n<32?(r=Math.ceil(n/3),i=(1/Ge(4,r)).toString()):(r=16,i="2.3283064365386962890625e-10"),e.precision+=r,t=ke(e,1,t.times(i),new e(1));for(var o=r;o--;){var s=t.times(t);t=s.times(s).minus(s).times(8).plus(1)}return e.precision-=r,t}var K=function(){function e(n,i,o){var s,a=0,c=n.length;for(n=n.slice();c--;)s=n[c]*i+a,n[c]=s%o|0,a=s/o|0;return a&&n.unshift(a),n}function t(n,i,o,s){var a,c;if(o!=s)c=o>s?1:-1;else for(a=c=0;a<o;a++)if(n[a]!=i[a]){c=n[a]>i[a]?1:-1;break}return c}function r(n,i,o,s){for(var a=0;o--;)n[o]-=a,a=n[o]<i[o]?1:0,n[o]=a*s+n[o]-i[o];for(;!n[0]&&n.length>1;)n.shift()}return function(n,i,o,s,a,c){var u,l,d,f,g,w,h,C,R,W,L,M,ae,j,fe,Ae,he,be,X,we,Ee=n.constructor,Qe=n.s==i.s?1:-1,G=n.d,V=i.d;if(!G||!G[0]||!V||!V[0])return new Ee(!n.s||!i.s||(G?V&&G[0]==V[0]:!V)?NaN:G&&G[0]==0||!V?Qe*0:Qe/0);for(c?(g=1,l=n.e-i.e):(c=re,g=P,l=H(n.e/g)-H(i.e/g)),X=V.length,he=G.length,R=new Ee(Qe),W=R.d=[],d=0;V[d]==(G[d]||0);d++);if(V[d]>(G[d]||0)&&l--,o==null?(j=o=Ee.precision,s=Ee.rounding):a?j=o+(n.e-i.e)+1:j=o,j<0)W.push(1),w=!0;else{if(j=j/g+2|0,d=0,X==1){for(f=0,V=V[0],j++;(d<he||f)&&j--;d++)fe=f*c+(G[d]||0),W[d]=fe/V|0,f=fe%V|0;w=f||d<he}else{for(f=c/(V[0]+1)|0,f>1&&(V=e(V,f,c),G=e(G,f,c),X=V.length,he=G.length),Ae=X,L=G.slice(0,X),M=L.length;M<X;)L[M++]=0;we=V.slice(),we.unshift(0),be=V[0],V[1]>=c/2&&++be;do f=0,u=t(V,L,X,M),u<0?(ae=L[0],X!=M&&(ae=ae*c+(L[1]||0)),f=ae/be|0,f>1?(f>=c&&(f=c-1),h=e(V,f,c),C=h.length,M=L.length,u=t(h,L,C,M),u==1&&(f--,r(h,X<C?we:V,C,c))):(f==0&&(u=f=1),h=V.slice()),C=h.length,C<M&&h.unshift(0),r(L,h,M,c),u==-1&&(M=L.length,u=t(V,L,X,M),u<1&&(f++,r(L,X<M?we:V,M,c))),M=L.length):u===0&&(f++,L=[0]),W[d++]=f,u&&L[0]?L[M++]=G[Ae]||0:(L=[G[Ae]],M=1);while((Ae++<he||L[0]!==void 0)&&j--);w=L[0]!==void 0}W[0]||W.shift()}if(g==1)R.e=l,Ot=w;else{for(d=1,f=W[0];f>=10;f/=10)d++;R.e=d+l*g-1,b(R,a?o+R.e+1:o,s,w)}return R}}();function b(e,t,r,n){var i,o,s,a,c,u,l,d,f,g=e.constructor;e:if(t!=null){if(d=e.d,!d)return e;for(i=1,a=d[0];a>=10;a/=10)i++;if(o=t-i,o<0)o+=P,s=t,l=d[f=0],c=l/D(10,i-s-1)%10|0;else if(f=Math.ceil((o+1)/P),a=d.length,f>=a)if(n){for(;a++<=f;)d.push(0);l=c=0,i=1,o%=P,s=o-P+1}else break e;else{for(l=a=d[f],i=1;a>=10;a/=10)i++;o%=P,s=o-P+i,c=s<0?0:l/D(10,i-s-1)%10|0}if(n=n||t<0||d[f+1]!==void 0||(s<0?l:l%D(10,i-s-1)),u=r<4?(c||n)&&(r==0||r==(e.s<0?3:2)):c>5||c==5&&(r==4||n||r==6&&(o>0?s>0?l/D(10,i-s):0:d[f-1])%10&1||r==(e.s<0?8:7)),t<1||!d[0])return d.length=0,u?(t-=e.e+1,d[0]=D(10,(P-t%P)%P),e.e=-t||0):d[0]=e.e=0,e;if(o==0?(d.length=f,a=1,f--):(d.length=f+1,a=D(10,P-o),d[f]=s>0?(l/D(10,i-s)%D(10,s)|0)*a:0),u)for(;;)if(f==0){for(o=1,s=d[0];s>=10;s/=10)o++;for(s=d[0]+=a,a=1;s>=10;s/=10)a++;o!=a&&(e.e++,d[0]==re&&(d[0]=1));break}else{if(d[f]+=a,d[f]!=re)break;d[f--]=0,a=1}for(o=d.length;d[--o]===0;)d.pop()}return T&&(e.e>g.maxE?(e.d=null,e.e=NaN):e.e<g.minE&&(e.e=0,e.d=[0])),e}function ne(e,t,r){if(!e.isFinite())return Zt(e);var n,i=e.e,o=q(e.d),s=o.length;return t?(r&&(n=r-s)>0?o=o.charAt(0)+"."+o.slice(1)+ue(n):s>1&&(o=o.charAt(0)+"."+o.slice(1)),o=o+(e.e<0?"e":"e+")+e.e):i<0?(o="0."+ue(-i-1)+o,r&&(n=r-s)>0&&(o+=ue(n))):i>=s?(o+=ue(i+1-s),r&&(n=r-i-1)>0&&(o=o+"."+ue(n))):((n=i+1)<s&&(o=o.slice(0,n)+"."+o.slice(n)),r&&(n=r-s)>0&&(i+1===s&&(o+="."),o+=ue(n))),o}function qe(e,t){var r=e[0];for(t*=P;r>=10;r/=10)t++;return t}function Oe(e,t,r){if(t>_r)throw T=!0,r&&(e.precision=r),Error(Ut);return b(new e(De),t,1,!0)}function te(e,t,r){if(t>ot)throw Error(Ut);return b(new e(We),t,r,!0)}function jt(e){var t=e.length-1,r=t*P+1;if(t=e[t],t){for(;t%10==0;t/=10)r--;for(t=e[0];t>=10;t/=10)r++}return r}function ue(e){for(var t="";e--;)t+="0";return t}function zt(e,t,r,n){var i,o=new e(1),s=Math.ceil(n/P+4);for(T=!1;;){if(r%2&&(o=o.times(t),Dt(o.d,s)&&(i=!0)),r=H(r/2),r===0){r=o.d.length-1,i&&o.d[r]===0&&++o.d[r];break}t=t.times(t),Dt(t.d,s)}return T=!0,o}function Mt(e){return e.d[e.d.length-1]&1}function Yt(e,t,r){for(var n,i=new e(t[0]),o=0;++o<t.length;)if(n=new e(t[o]),n.s)i[r](n)&&(i=n);else{i=n;break}return i}function st(e,t){var r,n,i,o,s,a,c,u=0,l=0,d=0,f=e.constructor,g=f.rounding,w=f.precision;if(!e.d||!e.d[0]||e.e>17)return new f(e.d?e.d[0]?e.s<0?0:1/0:1:e.s?e.s<0?0:e:0/0);for(t==null?(T=!1,c=w):c=t,a=new f(.03125);e.e>-2;)e=e.times(a),d+=5;for(n=Math.log(D(2,d))/Math.LN10*2+5|0,c+=n,r=o=s=new f(1),f.precision=c;;){if(o=b(o.times(e),c,1),r=r.times(++l),a=s.plus(K(o,r,c,1)),q(a.d).slice(0,c)===q(s.d).slice(0,c)){for(i=d;i--;)s=b(s.times(s),c,1);if(t==null)if(u<3&&Re(s.d,c-n,g,u))f.precision=c+=10,r=o=a=new f(1),l=0,u++;else return b(s,f.precision=w,g,T=!0);else return f.precision=w,s}s=a}}function ce(e,t){var r,n,i,o,s,a,c,u,l,d,f,g=1,w=10,h=e,C=h.d,R=h.constructor,W=R.rounding,L=R.precision;if(h.s<0||!C||!C[0]||!h.e&&C[0]==1&&C.length==1)return new R(C&&!C[0]?-1/0:h.s!=1?NaN:C?0:h);if(t==null?(T=!1,l=L):l=t,R.precision=l+=w,r=q(C),n=r.charAt(0),Math.abs(o=h.e)<15e14){for(;n<7&&n!=1||n==1&&r.charAt(1)>3;)h=h.times(e),r=q(h.d),n=r.charAt(0),g++;o=h.e,n>1?(h=new R("0."+r),o++):h=new R(n+"."+r.slice(1))}else return u=Oe(R,l+2,L).times(o+""),h=ce(new R(n+"."+r.slice(1)),l-w).plus(u),R.precision=L,t==null?b(h,L,W,T=!0):h;for(d=h,c=s=h=K(h.minus(1),h.plus(1),l,1),f=b(h.times(h),l,1),i=3;;){if(s=b(s.times(f),l,1),u=c.plus(K(s,new R(i),l,1)),q(u.d).slice(0,l)===q(c.d).slice(0,l))if(c=c.times(2),o!==0&&(c=c.plus(Oe(R,l+2,L).times(o+""))),c=K(c,new R(g),l,1),t==null)if(Re(c.d,l-w,W,a))R.precision=l+=w,u=s=h=K(d.minus(1),d.plus(1),l,1),f=b(h.times(h),l,1),i=a=1;else return b(c,R.precision=L,W,T=!0);else return R.precision=L,c;c=u,i+=2}}function Zt(e){return String(e.s*e.s/0)}function at(e,t){var r,n,i;for((r=t.indexOf("."))>-1&&(t=t.replace(".","")),(n=t.search(/e/i))>0?(r<0&&(r=n),r+=+t.slice(n+1),t=t.substring(0,n)):r<0&&(r=t.length),n=0;t.charCodeAt(n)===48;n++);for(i=t.length;t.charCodeAt(i-1)===48;--i);if(t=t.slice(n,i),t){if(i-=n,e.e=r=r-n-1,e.d=[],n=(r+1)%P,r<0&&(n+=P),n<i){for(n&&e.d.push(+t.slice(0,n)),i-=P;n<i;)e.d.push(+t.slice(n,n+=P));t=t.slice(n),n=P-t.length}else n-=i;for(;n--;)t+="0";e.d.push(+t),T&&(e.e>e.constructor.maxE?(e.d=null,e.e=NaN):e.e<e.constructor.minE&&(e.e=0,e.d=[0]))}else e.e=0,e.d=[0];return e}function Dr(e,t){var r,n,i,o,s,a,c,u,l;if(t.indexOf("_")>-1){if(t=t.replace(/(\d)_(?=\d)/g,"$1"),Ht.test(t))return at(e,t)}else if(t==="Infinity"||t==="NaN")return+t||(e.s=NaN),e.e=NaN,e.d=null,e;if(vr.test(t))r=16,t=t.toLowerCase();else if(Vr.test(t))r=2;else if(Er.test(t))r=8;else throw Error(le+t);for(o=t.search(/p/i),o>0?(c=+t.slice(o+1),t=t.substring(2,o)):t=t.slice(2),o=t.indexOf("."),s=o>=0,n=e.constructor,s&&(t=t.replace(".",""),a=t.length,o=a-o,i=zt(n,new n(r),o,o*2)),u=Me(t,r,re),l=u.length-1,o=l;u[o]===0;--o)u.pop();return o<0?new n(e.s*0):(e.e=qe(u,l),e.d=u,T=!1,s&&(e=K(e,i,a*4)),c&&(e=e.times(Math.abs(c)<54?D(2,c):He.pow(2,c))),T=!0,e)}function Wr(e,t){var r,n=t.d.length;if(n<3)return t.isZero()?t:ke(e,2,t,t);r=1.4*Math.sqrt(n),r=r>16?16:r|0,t=t.times(1/Ge(5,r)),t=ke(e,2,t,t);for(var i,o=new e(5),s=new e(16),a=new e(20);r--;)i=t.times(t),t=t.times(o.plus(i.times(s.times(i).minus(a))));return t}function ke(e,t,r,n,i){var o,s,a,c,u=1,l=e.precision,d=Math.ceil(l/P);for(T=!1,c=r.times(r),a=new e(n);;){if(s=K(a.times(c),new e(t++*t++),l,1),a=i?n.plus(s):n.minus(s),n=K(s.times(c),new e(t++*t++),l,1),s=a.plus(n),s.d[d]!==void 0){for(o=d;s.d[o]===a.d[o]&&o--;);if(o==-1)break}o=a,a=n,n=s,s=o,u++}return T=!0,s.d.length=d+1,s}function Ge(e,t){for(var r=e;--t;)r*=e;return r}function Xt(e,t){var r,n=t.s<0,i=te(e,e.precision,1),o=i.times(.5);if(t=t.abs(),t.lte(o))return se=n?4:1,t;if(r=t.divToInt(i),r.isZero())se=n?3:2;else{if(t=t.minus(r.times(i)),t.lte(o))return se=Mt(r)?n?2:3:n?4:1,t;se=Mt(r)?n?1:4:n?3:2}return t.minus(i).abs()}function ut(e,t,r,n){var i,o,s,a,c,u,l,d,f,g=e.constructor,w=r!==void 0;if(w?(Y(r,1,de),n===void 0?n=g.rounding:Y(n,0,8)):(r=g.precision,n=g.rounding),!e.isFinite())l=Zt(e);else{for(l=ne(e),s=l.indexOf("."),w?(i=2,t==16?r=r*4-3:t==8&&(r=r*3-2)):i=t,s>=0&&(l=l.replace(".",""),f=new g(1),f.e=l.length-s,f.d=Me(ne(f),10,i),f.e=f.d.length),d=Me(l,10,i),o=c=d.length;d[--c]==0;)d.pop();if(!d[0])l=w?"0p+0":"0";else{if(s<0?o--:(e=new g(e),e.d=d,e.e=o,e=K(e,f,r,n,0,i),d=e.d,o=e.e,u=Ot),s=d[r],a=i/2,u=u||d[r+1]!==void 0,u=n<4?(s!==void 0||u)&&(n===0||n===(e.s<0?3:2)):s>a||s===a&&(n===4||u||n===6&&d[r-1]&1||n===(e.s<0?8:7)),d.length=r,u)for(;++d[--r]>i-1;)d[r]=0,r||(++o,d.unshift(1));for(c=d.length;!d[c-1];--c);for(s=0,l="";s<c;s++)l+=nt.charAt(d[s]);if(w){if(c>1)if(t==16||t==8){for(s=t==16?4:3,--c;c%s;c++)l+="0";for(d=Me(l,i,t),c=d.length;!d[c-1];--c);for(s=1,l="1.";s<c;s++)l+=nt.charAt(d[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 Dt(e,t){if(e.length>t)return e.length=t,!0}function Or(e){return new this(e).abs()}function Ur(e){return new this(e).acos()}function qr(e){return new this(e).acosh()}function Gr(e,t){return new this(e).plus(t)}function Hr(e){return new this(e).asin()}function jr(e){return new this(e).asinh()}function zr(e){return new this(e).atan()}function Yr(e){return new this(e).atanh()}function Zr(e,t){e=new this(e),t=new this(t);var r,n=this.precision,i=this.rounding,o=n+4;return!e.s||!t.s?r=new this(NaN):!e.d&&!t.d?(r=te(this,o,1).times(t.s>0?.25:.75),r.s=e.s):!t.d||e.isZero()?(r=t.s<0?te(this,n,i):new this(0),r.s=e.s):!e.d||t.isZero()?(r=te(this,o,1).times(.5),r.s=e.s):t.s<0?(this.precision=o,this.rounding=1,r=this.atan(K(e,t,o,1)),t=te(this,o,1),this.precision=n,this.rounding=i,r=e.s<0?r.minus(t):r.plus(t)):r=this.atan(K(e,t,o,1)),r}function Xr(e){return new this(e).cbrt()}function Jr(e){return b(e=new this(e),e.e+1,2)}function Qr(e,t,r){return new this(e).clamp(t,r)}function $r(e){if(!e||typeof e!="object")throw Error(Ue+"Object expected");var t,r,n,i=e.defaults===!0,o=["precision",1,de,"rounding",0,8,"toExpNeg",-xe,0,"toExpPos",0,xe,"maxE",0,xe,"minE",-xe,0,"modulo",0,9];for(t=0;t<o.length;t+=3)if(r=o[t],i&&(this[r]=it[r]),(n=e[r])!==void 0)if(H(n)===n&&n>=o[t+1]&&n<=o[t+2])this[r]=n;else throw Error(le+r+": "+n);if(r="crypto",i&&(this[r]=it[r]),(n=e[r])!==void 0)if(n===!0||n===!1||n===0||n===1)if(n)if(typeof crypto<"u"&&crypto&&(crypto.getRandomValues||crypto.randomBytes))this[r]=!0;else throw Error(qt);else this[r]=!1;else throw Error(le+r+": "+n);return this}function en(e){return new this(e).cos()}function tn(e){return new this(e).cosh()}function Jt(e){var t,r,n;function i(o){var s,a,c,u=this;if(!(u instanceof i))return new i(o);if(u.constructor=i,Wt(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 at(u,o.toString())}else if(c!=="string")throw Error(le+o);return(a=o.charCodeAt(0))===45?(o=o.slice(1),u.s=-1):(a===43&&(o=o.slice(1)),u.s=1),Ht.test(o)?at(u,o):Dr(u,o)}if(i.prototype=m,i.ROUND_UP=0,i.ROUND_DOWN=1,i.ROUND_CEIL=2,i.ROUND_FLOOR=3,i.ROUND_HALF_UP=4,i.ROUND_HALF_DOWN=5,i.ROUND_HALF_EVEN=6,i.ROUND_HALF_CEIL=7,i.ROUND_HALF_FLOOR=8,i.EUCLID=9,i.config=i.set=$r,i.clone=Jt,i.isDecimal=Wt,i.abs=Or,i.acos=Ur,i.acosh=qr,i.add=Gr,i.asin=Hr,i.asinh=jr,i.atan=zr,i.atanh=Yr,i.atan2=Zr,i.cbrt=Xr,i.ceil=Jr,i.clamp=Qr,i.cos=en,i.cosh=tn,i.div=rn,i.exp=nn,i.floor=on,i.hypot=sn,i.ln=an,i.log=un,i.log10=ln,i.log2=cn,i.max=dn,i.min=fn,i.mod=pn,i.mul=mn,i.pow=gn,i.random=yn,i.round=hn,i.sign=bn,i.sin=wn,i.sinh=Pn,i.sqrt=Tn,i.sub=xn,i.sum=kn,i.tan=Sn,i.tanh=An,i.trunc=Ln,e===void 0&&(e={}),e&&e.defaults!==!0)for(n=["precision","rounding","toExpNeg","toExpPos","maxE","minE","modulo","crypto"],t=0;t<n.length;)e.hasOwnProperty(r=n[t++])||(e[r]=this[r]);return i.config(e),i}function rn(e,t){return new this(e).div(t)}function nn(e){return new this(e).exp()}function on(e){return b(e=new this(e),e.e+1,3)}function sn(){var e,t,r=new this(0);for(T=!1,e=0;e<arguments.length;)if(t=new this(arguments[e++]),t.d)r.d&&(r=r.plus(t.times(t)));else{if(t.s)return T=!0,new this(1/0);r=t}return T=!0,r.sqrt()}function Wt(e){return e instanceof He||e&&e.toStringTag===Gt||!1}function an(e){return new this(e).ln()}function un(e,t){return new this(e).log(t)}function cn(e){return new this(e).log(2)}function ln(e){return new this(e).log(10)}function dn(){return Yt(this,arguments,"lt")}function fn(){return Yt(this,arguments,"gt")}function pn(e,t){return new this(e).mod(t)}function mn(e,t){return new this(e).mul(t)}function gn(e,t){return new this(e).pow(t)}function yn(e){var t,r,n,i,o=0,s=new this(1),a=[];if(e===void 0?e=this.precision:Y(e,1,de),n=Math.ceil(e/P),this.crypto)if(crypto.getRandomValues)for(t=crypto.getRandomValues(new Uint32Array(n));o<n;)i=t[o],i>=429e7?t[o]=crypto.getRandomValues(new Uint32Array(1))[0]:a[o++]=i%1e7;else if(crypto.randomBytes){for(t=crypto.randomBytes(n*=4);o<n;)i=t[o]+(t[o+1]<<8)+(t[o+2]<<16)+((t[o+3]&127)<<24),i>=214e7?crypto.randomBytes(4).copy(t,o):(a.push(i%1e7),o+=4);o=n/4}else throw Error(qt);else for(;o<n;)a[o++]=Math.random()*1e7|0;for(n=a[--o],e%=P,n&&e&&(i=D(10,P-e),a[o]=(n/i|0)*i);a[o]===0;o--)a.pop();if(o<0)r=0,a=[0];else{for(r=-1;a[0]===0;r-=P)a.shift();for(n=1,i=a[0];i>=10;i/=10)n++;n<P&&(r-=P-n)}return s.e=r,s.d=a,s}function hn(e){return b(e=new this(e),e.e+1,this.rounding)}function bn(e){return e=new this(e),e.d?e.d[0]?e.s:0*e.s:e.s||NaN}function wn(e){return new this(e).sin()}function Pn(e){return new this(e).sinh()}function Tn(e){return new this(e).sqrt()}function xn(e,t){return new this(e).sub(t)}function kn(){var e=0,t=arguments,r=new this(t[e]);for(T=!1;r.s&&++e<t.length;)r=r.plus(t[e]);return T=!0,b(r,this.precision,this.rounding)}function Sn(e){return new this(e).tan()}function An(e){return new this(e).tanh()}function Ln(e){return b(e=new this(e),e.e+1,1)}m[Symbol.for("nodejs.util.inspect.custom")]=m.toString;m[Symbol.toStringTag]="Decimal";var He=m.constructor=Jt(it);De=new He(De);We=new He(We);import{PublicKey as ft}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as Bn}from"@solana/spl-token";import{PublicKey as F,SystemProgram as Qt,SYSVAR_RENT_PUBKEY as In}from"@solana/web3.js";function p({pubkey:e,isSigner:t=!1,isWritable:r=!0}){return{pubkey:e,isWritable:r,isSigner:t}}var lt=[p({pubkey:Bn,isWritable:!1}),p({pubkey:Qt.programId,isWritable:!1}),p({pubkey:In,isWritable:!1})];function $t({publicKey:e,transformSol:t}){let r=er(e.toString());if(r instanceof F)return t&&r.equals(me)?ct:r;if(t&&r.toString()===me.toBase58())return ct;if(typeof r=="string"){if(r===F.default.toBase58())return F.default;try{return new F(r)}catch{throw new Error("invalid public key")}}throw new Error("invalid public key")}function er(e){try{return new F(e)}catch{return e}}var Ho=new F("MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"),jo=new F("MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"),dt=new F("SysvarRent111111111111111111111111111111111"),zo=new F("SysvarC1ock11111111111111111111111111111111"),Yo=new F("metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),je=new F("Sysvar1nstructions1111111111111111111111111"),Zo=Qt.programId,Xo=new F("4k3Dyjzvzp8eMZWUXbBCjEvwSkkk59S5iCNLY3QrkX6R"),Jo=new F("Ea5SjE2Y6yvCeW5dYTn7PYMuW5ikXkvbGdcmSnXeaLjS"),Qo=new F("SRMuApVNdxXokk5GT7XD5cUUgXMBCoAz2LHeuAoKWRt"),$o=new F("EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"),es=new F("Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB"),ts=new F("mSoLzYCxHdYgdzU16g5QSh3i5K3z3KZK7ytfqcJm7So"),rs=new F("7dHbWXmci3dT8UFYWYZweBLXgycu7Y3iL6trKn1Y7ARj"),ns=new F("USDH1SM1ojwWUga67PGrgFWUHibbjqMvuMaDkRJTgkX"),is=new F("NRVwhjBQiUPYtfDT5zRBVJajzFQHaBUNtC7SNVvqRFa"),os=new F("ANAxByE6G2WjFp7A4NqtWYXb3mgruyzZYg3spfxe6Lbo"),ss=new F("7vfCXTUXx5WJV5JADk17DUJ4ksgau7utNKj4b963voxs"),ct=new F("So11111111111111111111111111111111111111112"),me=F.default;import{PublicKey as Rn}from"@solana/web3.js";import{TOKEN_PROGRAM_ID as tr}from"@solana/spl-token";var rr={chainId:101,address:Rn.default.toBase58(),programId:tr.toBase58(),decimals:9,symbol:"SOL",name:"solana",logoURI:"https://img.raydium.io/icon/So11111111111111111111111111111111111111112.png",tags:[],priority:2,type:"raydium",extensions:{coingeckoId:"solana"}},ge={chainId:101,address:"So11111111111111111111111111111111111111112",programId:tr.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 pt=class{constructor({mint:t,decimals:r,symbol:n,name:i,skipMint:o=!1,isToken2022:s=!1}){if(t===me.toBase58()||t instanceof ft&&me.equals(t)){this.decimals=ge.decimals,this.symbol=ge.symbol,this.name=ge.name,this.mint=new ft(ge.address),this.isToken2022=!1;return}this.decimals=r,this.symbol=n||t.toString().substring(0,6),this.name=i||t.toString().substring(0,6),this.mint=o?ft.default:$t({publicKey:t}),this.isToken2022=s}equals(t){return this===t?!0:this.mint.equals(t.mint)}},Se=pt;Se.WSOL=new pt($(J({},ge),{mint:ge.address}));import Ye from"big.js";import Kn from"bn.js";import Vn from"decimal.js-light";import Nn from"toformat";var Cn=Nn,Ne=Cn;var ze=O("module/fraction"),mt=Ne(Ye),Ce=Ne(Vn),vn={[0]:Ce.ROUND_DOWN,[1]:Ce.ROUND_HALF_UP,[2]:Ce.ROUND_UP},En={[0]:Ye.roundDown,[1]:Ye.roundHalfUp,[2]:Ye.roundUp},v=class{constructor(t,r=new Kn(1)){this.numerator=_(t),this.denominator=_(r)}get quotient(){return this.numerator.div(this.denominator)}invert(){return new v(this.denominator,this.numerator)}add(t){let r=t instanceof v?t:new v(_(t));return this.denominator.eq(r.denominator)?new v(this.numerator.add(r.numerator),this.denominator):new v(this.numerator.mul(r.denominator).add(r.numerator.mul(this.denominator)),this.denominator.mul(r.denominator))}sub(t){let r=t instanceof v?t:new v(_(t));return this.denominator.eq(r.denominator)?new v(this.numerator.sub(r.numerator),this.denominator):new v(this.numerator.mul(r.denominator).sub(r.numerator.mul(this.denominator)),this.denominator.mul(r.denominator))}mul(t){let r=t instanceof v?t:new v(_(t));return new v(this.numerator.mul(r.numerator),this.denominator.mul(r.denominator))}div(t){let r=t instanceof v?t:new v(_(t));return new v(this.numerator.mul(r.denominator),this.denominator.mul(r.numerator))}toSignificant(t,r={groupSeparator:""},n=1){Number.isInteger(t)||ze.logWithError(`${t} is not an integer.`),t<=0&&ze.logWithError(`${t} is not positive.`),Ce.set({precision:t+1,rounding:vn[n]});let i=new Ce(this.numerator.toString()).div(this.denominator.toString()).toSignificantDigits(t);return i.toFormat(i.decimalPlaces(),r)}toFixed(t,r={groupSeparator:""},n=1){return Number.isInteger(t)||ze.logWithError(`${t} is not an integer.`),t<0&&ze.logWithError(`${t} is negative.`),mt.DP=t,mt.RM=En[n]||1,new mt(this.numerator.toString()).div(this.denominator.toString()).toFormat(t,r)}isZero(){return this.numerator.isZero()}};var Ks=O("Raydium_price");var gt=class{constructor({decimals:t,symbol:r="UNKNOWN",name:n="UNKNOWN"}){this.decimals=t,this.symbol=r,this.name=n}equals(t){return this===t}},Ze=gt;Ze.SOL=new gt(rr);import _n from"big.js";import Ws from"bn.js";var Ys=O("Raydium_amount"),Zs=Ne(_n);import Dn from"bn.js";var $s=new v(new Dn(100));import{PublicKey as ga}from"@solana/web3.js";import ha from"bn.js";var Wn=new Z(0),Fa=new Z(1),_a=new Z(2),Ma=new Z(3),Da=new Z(5),Mn=new Z(10),Wa=new Z(100),Oa=new Z(1e3),Ua=new Z(1e4),sr=9007199254740991;function _(e){let t=O("Raydium_parseBigNumberish");if(e instanceof Z)return e;if(typeof e=="string"){if(e.match(/^-?[0-9]+$/))return new Z(e);t.logWithError(`invalid BigNumberish string: ${e}`)}return typeof e=="number"?(e%1&&t.logWithError(`BigNumberish number underflow: ${e}`),(e>=sr||e<=-sr)&&t.logWithError(`BigNumberish number overflow: ${e}`),new Z(String(e))):typeof e=="bigint"?new Z(e.toString()):(t.error(`invalid BigNumberish value: ${e}`),new Z(0))}import{PublicKey as lr}from"@solana/web3.js";import{PublicKey as B}from"@solana/web3.js";var ar=new B("EhhTKczWMGQt46ynNeRX1WfeagwwJd7ufHvCDjRxjo5Q"),ur=new B("9KEPoZmtHUrBbhWN1v1KWLMkkvwY6WLtAVUCPRtRjP4z"),cr=new B("FarmqiPv5eAj3j1GMdMCMUGXqPUvmquZtMy86QH6rzhG"),Ha=new B("CLaimxFqjHzgTJtAGHU47NPhg6qrc5sCnpC4tBLyABQS"),ja=new B("srmqPvymJeFKQ4zGQed1GFppgkRHL9kaELCbyksJtPX"),za=new B("9xQeWvG816bUx9EPjHmaT23yvVM2ZWbrrpZb9PusVFin"),Ya=new B("675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8"),Za=new B("5quBtoiQqxF9Jv6KYKctB59NT3gtJD2Y65kdnB1Uev3h"),Xa=new B("CDSr3ssLcRB6XYPJwAfFt18MZvEZp4LjHcvzBVZ45duo"),Ja=new B("CAMMCzo5YL8w4VFF8KVHrK22GGUsp5VTaW7grrKgrWqK"),Qa=new B("routeUGWgWzqBWFcrCfv8tritsqukccJPu3q5GPP3xS"),$a=new B("7YttLkHDoNj9wyDur5pM1ejNaAvT9X4eqaYcHQqtj2G5"),eu=new B("6FJon3QE27qgPVggARueB22hLvoh22VzJpXv4rBEoSLF"),tu=new B("CC12se5To1CdEuw7fDS27B7Geo5jJyL7t5UK2B44NgiH"),ru=new B("9HzJyW1qZsEiSfMUf6L2jo3CcTKAyBmSyKdwQeYisHrC"),nu=new B("DropEU8AvevN3UrXWXTMuz3rqnMczQVNjq3kcSdW2SQi"),iu=new B("CPMMoo8L3F4NbTegBCKVNunggL7H1ZpdTHKxQB5qKP1C"),ou=new B("GpMZbSM2GgvTKHJirzeGfMFoaZ8UR2X7F4v8vHTvxFbL"),su=new B("DNXgeM9EiiaAbaWvwjHj9fQQLAX5ZsfHyvmYUNRAdNC8"),On=new B("CPMDWBwJDtYax9qW7AyRuVC19Cc4L4Vcy4n2BHAbHkCW"),Un=new B("7rQ1QFNosMkUCuh7Z7fPbTHvh73b68sQYdirycEzJVuw"),qn=new B("G11FKBRaAkHAKuLCgLM6K6NUc9rTjPAznRCjZifrTQe2");var au={SERUM_MARKET:B.default,OPENBOOK_MARKET:new B("EoTcMgcDRTJVZDMZWBoU6rhYHZfkNTVEAfz3uUJRcYGj"),UTIL1216:B.default,FarmV3:new B("85BFyr98MbCUU9MVTEgzx1nbhWACbJqLzho6zd6DZcWL"),FarmV5:new B("EcLzTrNg9V7qhcdyXDe2qjtPkiGzDM2UbdRaeaadU5r2"),FarmV6:new B("Farm2hJLcqPtPg8M4rR6DMrsRNc5TPm5Cs4bVQrMe2T7"),AmmV4:new B("HWy1jotHpo6UqeQxx49dpYYdQB8wj9Qk9MdxwjLvDHB8"),AmmStable:new B("DDg4VmQaJV9ogWce7LpcjBA9bv22wRp5uaTPa5pGjijF"),CLMM:new B("devi51mZmdwUJGU9hjN27vEz64Gps7uUefqxg27EAtH"),Router:new B("BVChZ3XFEwTMUk1o9i3HAf91H6mFxSwa5X2wFAWhYPhU"),CREATE_CPMM_POOL_PROGRAM:On,CREATE_CPMM_POOL_AUTH:Un,CREATE_CPMM_POOL_FEE_ACC:qn,FEE_DESTINATION_ID:new B("3XMrhbv989VxAMi3DErLV9eJht1pHppW5LbKxe9fkEFR")};var gu=O("Raydium_farm_config"),yu=new lr("4k3Dyjzvzp8eMZWUXbBCjEvwSkkk59S5iCNLY3QrkX6R"),hu=new lr("FrspKwj8i3pNmKwXreTveC4fu7KL5ZbGeXdZBe2XViu1");var Ke={"Standard SPL":0,"Option tokens":1},bu={[ar.toString()]:3,[ur.toString()]:5,[cr.toString()]:6};var yt=I([N("instruction")]),ht=I([N("instruction")]),Zn=I([y("rewardState"),y("rewardOpenTime"),y("rewardEndTime"),y("rewardLastUpdateTime"),y("totalReward"),y("totalRewardEmissioned"),y("rewardClaimed"),y("rewardPerSecond"),oe("accRewardPerShare"),k("rewardVault"),k("rewardMint"),k("rewardSender"),y("rewardType"),E(y(),15,"padding")]),Xn=I([y("state"),y("nonce"),k("lpVault"),k("rewardVault"),k(),k(),y(),y(),y("totalReward"),oe("perShareReward"),y("lastSlot"),y("perSlotReward")]),Jn=I([y("state"),y("nonce"),k("lpVault"),k("rewardVaultA"),y("totalRewardA"),oe("perShareRewardA"),y("perSlotRewardA"),N("option"),k("rewardVaultB"),pe(7),y("totalRewardB"),oe("perShareRewardB"),y("perSlotRewardB"),y("lastSlot"),k()]),Qn=I([y(),y("state"),y("nonce"),y("validRewardTokenNum"),oe("rewardMultiplier"),y("rewardPeriodMax"),y("rewardPeriodMin"),y("rewardPeriodExtend"),k("lpMint"),k("lpVault"),E(Zn,5,"rewardInfos"),k("creator"),k(),E(y(),32,"padding")]),Gn=new Proxy(Xn,{get(e,t,r){return t==="decode"?(...n)=>{let i=e.decode(...n);return $(J({},i),{version:3,rewardInfos:[{rewardVault:i.rewardVault,totalReward:i.totalReward,perSlotReward:i.perSlotReward,perShareReward:i.perShareReward}]})}:Reflect.get(e,t,r)}}),Hn=new Proxy(Jn,{get(e,t,r){return t==="decode"?(...n)=>{let i=e.decode(...n);return $(J({},i),{version:5,rewardInfos:[{rewardVault:i.rewardVaultA,totalReward:i.totalRewardA,perSlotReward:i.perSlotRewardA,perShareReward:i.perShareRewardA},{rewardVault:i.rewardVaultB,totalReward:i.totalRewardB,perSlotReward:i.perSlotRewardB,perShareReward:i.perShareRewardB}]})}:Reflect.get(e,t,r)}}),jn=new Proxy(Qn,{get(e,t,r){return t==="decode"?(...n)=>{let i=e.decode(...n);return $(J({},i),{version:6,rewardInfos:i.rewardInfos.map(o=>{var s;return $(J({},o),{rewardType:((s=Object.entries(Ke).find(a=>String(a[1])===o.rewardType.toString()))!=null?s:["Standard SPL"])[0]})})})}:Reflect.get(e,t,r)}}),$n=I([y("isSet"),y("rewardPerSecond"),y("rewardOpenTime"),y("rewardEndTime"),y("rewardType")]),bt=I([N("instruction"),y("nonce"),E($n,5,"rewardTimeInfo")]),wt=I([N("instruction"),y("rewardReopenTime"),y("rewardEndTime"),y("rewardPerSecond")]),Pt=I([N("instruction"),y("isSet"),y("rewardPerSecond"),y("rewardOpenTime"),y("rewardEndTime"),y("rewardType")]),Au=I([y("state"),k("id"),k("owner"),y("deposited"),E(y(),1,"rewardDebts")]),Xe=I([y("state"),k("id"),k("owner"),y("deposited"),E(oe(),1,"rewardDebts"),y(""),y("voteLockedBalance"),E(y(),15)]),Lu=I([y("state"),k("id"),k("owner"),y("deposited"),E(y(),2,"rewardDebts")]),zn=I([y("state"),k("id"),k("owner"),y("deposited"),E(oe(),2,"rewardDebts"),E(y(),17)]),Yn=I([y(),y("state"),k("id"),k("owner"),y("deposited"),E(oe(),5,"rewardDebts"),E(y(),16)]),z=I([N("instruction"),y("amount")]),ei=I([k("mint"),k("grantAuthority"),y("baselineVoteWeightScaledFactor"),y("maxExtraLockupVoteWeightScaledFactor"),y("lockupSaturationSecs"),Et("digitShift"),E(N(),7,"reserved1"),E(y(),7,"reserved2")]),dr=I([pe(8),k("governanceProgramId"),k("realm"),k("realmGoverningTokenMint"),k("realmAuthority"),E(N(),32,"reserved1"),E(ei,4,"votingMints"),_e("timeOffset"),N("bump"),E(N(),7,"reserved2"),E(y(),11,"reserved3")]),ti=I([_e("startTime"),_e("endTime"),N("kind"),E(N(),15,"reserved")]),ri=I([E(ti,1,"lockup"),y("amountDeposited_native"),y("amountInitiallyLockedNative"),Le("isUsed"),Le("allowClawback"),N("votingMintConfigIdx"),E(N(),29,"reserved")]),fr=I([pe(8),k("voterAuthority"),k("registrar"),E(ri,32,"deposits"),N("voterBump"),N("voterWweightRecordBump"),E(N(),94,"reserved")]);function Tt(e,t,r)