@scallop-io/scallop-swap-sdk 4.0.0 → 4.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,21 +1,29 @@
1
1
  ### Scallop Swap Meta Aggregator SDK
2
2
 
3
- A unified SDK that aggregates existing swap aggregators on Sui, including Aftermath, Cetus, 7K, and FlowX and provides a generic `SwapSdkBase` class for seamless integration and extension with future swap aggregators.
3
+ A unified SDK that aggregates existing swap aggregators on Sui, including Aftermath, Cetus, and FlowX and provides a generic `SwapSdkBase` class for seamless integration and extension with future swap aggregators.
4
4
 
5
5
  #### Adding a Custom SDK Integration
6
6
 
7
7
  Extend `SwapSdkBase` with your own SDK-specific generic types:
8
8
 
9
9
  ```typescript
10
- import { SwapSdkBase, SwapSdkConstructorParams } from '@scallop-io/scallop-swap-sdk';
11
-
12
- class MyDexSwap extends SwapSdkBase<MyPoolType, MyRawRoute, MyFetchSettings, MyClient> {
10
+ import {
11
+ SwapSdkBase,
12
+ SwapSdkConstructorParams,
13
+ } from '@scallop-io/scallop-swap-sdk';
14
+
15
+ class MyDexSwap extends SwapSdkBase<
16
+ MyPoolType,
17
+ MyRawRoute,
18
+ MyFetchSettings,
19
+ MyClient
20
+ > {
13
21
  constructor(params: SwapSdkConstructorParams<MyFetchSettings>) {
14
22
  super('mydex', params);
15
23
  this.client = new MyClient(/* ... */);
16
24
  }
17
25
 
18
- // Implement abstract methods: fetchRoute, buildSwapTransaction, setFetchRouteSettings, calcSlippage
26
+ // Implement abstract methods: fetchRoute, buildSwapTransaction, setFetchRouteSettings, calcSlippage, ensureClient
19
27
  }
20
28
  ```
21
29
 
@@ -214,4 +214,4 @@ declare abstract class SwapSdkBase<PoolType = string, RawRouteResultType = any,
214
214
  }>;
215
215
  }
216
216
 
217
- export { type AggregatorEvents as A, type Coin as C, type FormattedRouteResult as F, SwapSdkBase as S, TypedEventEmitter as T, type SwapSdkConstructorParams as a, type FetchRouteParams as b, type SwapRoute as c, type SwapParams as d, type FetchRouteResult as e, type FetchRoutesOptions as f, type SwapBuildResult as g, type AggregatorEvent as h, type AggregatorStatusEvent as i, type AllSwapSdkPoolStatusEvent as j, type SlippageChangedEvent as k, type SwapCoinInfo as l, type SwapPath as m, type SwapSdkBaseInterface as n, type SwapSdkEvents as o, type SwapSdkPoolStatusEvent as p };
217
+ export { type AggregatorEvents as A, type Coin as C, type FetchRouteParams as F, SwapSdkBase as S, TypedEventEmitter as T, type SwapSdkConstructorParams as a, type FetchRouteResult as b, type SwapParams as c, type FormattedRouteResult as d, type SwapRoute as e, type FetchRoutesOptions as f, type SwapBuildResult as g, type AggregatorEvent as h, type AggregatorStatusEvent as i, type AllSwapSdkPoolStatusEvent as j, type SlippageChangedEvent as k, type SwapCoinInfo as l, type SwapPath as m, type SwapSdkBaseInterface as n, type SwapSdkEvents as o, type SwapSdkPoolStatusEvent as p };
@@ -0,0 +1,217 @@
1
+ import * as _mysten_sui_client from '@mysten/sui/client';
2
+ import { ClientWithCoreApi } from '@mysten/sui/client';
3
+ import { Transaction, TransactionObjectArgument } from '@mysten/sui/transactions';
4
+ import { SuiGrpcClient } from '@mysten/sui/grpc';
5
+ import { EventEmitter } from 'events';
6
+
7
+ interface Coin {
8
+ type: string;
9
+ amount: bigint;
10
+ }
11
+ interface SwapCoinInfo {
12
+ coinIn: Coin;
13
+ coinOut: Coin;
14
+ }
15
+ interface SwapPath extends SwapCoinInfo {
16
+ protocolName: string;
17
+ }
18
+ interface SwapRoute extends SwapCoinInfo {
19
+ paths: SwapPath[];
20
+ splitPercentage?: number;
21
+ }
22
+ /**
23
+ * Common interface for route result (for frontend display purposes)
24
+ */
25
+ interface FormattedRouteResult {
26
+ routes: SwapRoute[];
27
+ coinIn: Coin;
28
+ coinOut: Coin;
29
+ name: string;
30
+ }
31
+ type FetchRouteResult<T> = {
32
+ rawRouteResult: T;
33
+ formattedResult: FormattedRouteResult;
34
+ };
35
+ type FetchRoutesOptions = {
36
+ onRouteFound?: (route: FetchRouteResult<any>) => void;
37
+ onError?: (error: {
38
+ name: string;
39
+ reason: unknown;
40
+ }) => void;
41
+ abortSignal?: AbortSignal;
42
+ };
43
+
44
+ type FetchRouteParams = {
45
+ coinInType: string;
46
+ coinOutType: string;
47
+ swapAmount: bigint;
48
+ };
49
+ type SwapParams<T> = {
50
+ route?: FetchRouteResult<T>;
51
+ /**
52
+ * In decimal, e.g. 0.01 for 1% slippage
53
+ */
54
+ slippage: number;
55
+ minAmountOut?: bigint;
56
+ txExtensionParams?: {
57
+ initTx: Transaction;
58
+ coinIn: TransactionObjectArgument;
59
+ };
60
+ };
61
+ type SwapBuildResult<MergeResult extends boolean> = MergeResult extends true ? {
62
+ tx: Transaction;
63
+ coinOutType: string;
64
+ } : {
65
+ tx: Transaction;
66
+ coinOutType: string;
67
+ coinOut: TransactionObjectArgument;
68
+ };
69
+ interface SwapSdkConstructorParams<T> {
70
+ suiClient?: ClientWithCoreApi;
71
+ fetchTimeoutInMs?: number;
72
+ walletAddress: string;
73
+ fetchSettings?: T;
74
+ }
75
+ /**
76
+ * Base interface for Swap SDK
77
+ */
78
+ interface SwapSdkBaseInterface<PoolType = string, RawRouteResultType = any, FetchRouteSettings = any, SdkClient = ClientWithCoreApi> {
79
+ /**
80
+ * SDK specific client
81
+ */
82
+ client?: SdkClient;
83
+ /**
84
+ * How long the route fetch request should wait before timing out (in milliseconds)
85
+ */
86
+ fetchTimeoutInMs?: number;
87
+ /**
88
+ * Pools or DEXes available in the SDK
89
+ */
90
+ pools?: PoolType[];
91
+ /**
92
+ * Map of pools or DEXes available in the SDK for quick lookup
93
+ */
94
+ poolsMap?: Map<PoolType, boolean>;
95
+ /**
96
+ * Fetch route settings based on SDK-specific settings
97
+ */
98
+ fetchSettings?: FetchRouteSettings;
99
+ /**
100
+ * Set fetch route settings based on SDK-specific settings
101
+ * @param settings
102
+ * @returns
103
+ */
104
+ setFetchRouteSettings: (settings: FetchRouteSettings) => void;
105
+ togglePoolStatus: (pool: PoolType, enabled?: boolean) => void;
106
+ toggleAllPoolStatus: (enabled: boolean) => void;
107
+ setSuiClient: (client: SuiGrpcClient) => void;
108
+ setWalletAddress: (address: string) => void;
109
+ /**
110
+ * Calculate slippage for the specific protocol.
111
+ * Each protocol may have different way to represent slippage, e.g. in decimal, in bps, etc.
112
+ * This function will convert a unified slippage input (in decimal) to the protocol specific slippage value.
113
+ * @param slippageInDecimal
114
+ * @returns SDK specific slippage value
115
+ */
116
+ calcSlippage: (slippageInDecimal: number) => number;
117
+ fetchRoute: (params: FetchRouteParams) => Promise<FetchRouteResult<RawRouteResultType>>;
118
+ /**
119
+ * Select coinIn for swap transaction
120
+ * @param tx
121
+ * @param amount
122
+ * @param coinType
123
+ * @returns Promise<TransactionObjectArgument>
124
+ */
125
+ selectCoinInForSwap: (tx: Transaction, amount: bigint, coinType: string) => Promise<TransactionObjectArgument>;
126
+ buildSwapTransaction: (params: SwapParams<RawRouteResultType>) => Promise<{
127
+ tx: Transaction;
128
+ coinOut: TransactionObjectArgument;
129
+ }>;
130
+ }
131
+
132
+ type SwapSdkPoolStatusEvent<PoolType> = {
133
+ name: string;
134
+ pool: PoolType;
135
+ enabled: boolean;
136
+ };
137
+ type AllSwapSdkPoolStatusEvent = {
138
+ name: string;
139
+ enabled: boolean;
140
+ };
141
+ type SwapSdkEvents<PoolType> = {
142
+ poolStatusChanged: SwapSdkPoolStatusEvent<PoolType>;
143
+ allPoolStatusChanged: AllSwapSdkPoolStatusEvent;
144
+ };
145
+ type SlippageChangedEvent = {
146
+ slippageInDecimal: number;
147
+ };
148
+ type AggregatorStatusEvent = {
149
+ name: string;
150
+ enabled: boolean;
151
+ };
152
+ type AggregatorEvent = {
153
+ name: string;
154
+ };
155
+ type AggregatorEvents<PoolType> = {
156
+ poolStatusChanged: SwapSdkPoolStatusEvent<PoolType>;
157
+ allPoolStatusChanged: AllSwapSdkPoolStatusEvent;
158
+ aggregatorStatusChanged: AggregatorStatusEvent;
159
+ aggregatorRemoved: AggregatorEvent;
160
+ aggregatorAdded: AggregatorEvent;
161
+ aggregatorSlippageChanged: SlippageChangedEvent;
162
+ aggregatorFetchStart: AggregatorEvent;
163
+ aggregatorFetchEnd: AggregatorEvent;
164
+ };
165
+
166
+ declare class TypedEventEmitter<Events extends Record<string, any>> extends EventEmitter {
167
+ on<K extends keyof Events & (string | symbol)>(event: K, listener: (payload: Events[K]) => void): this;
168
+ once<K extends keyof Events & (string | symbol)>(event: K, listener: (payload: Events[K]) => void): this;
169
+ off<K extends keyof Events & (string | symbol)>(event: K, listener: (payload: Events[K]) => void): this;
170
+ emit<K extends keyof Events & (string | symbol)>(event: K, payload: Events[K]): boolean;
171
+ }
172
+
173
+ declare abstract class SwapSdkBase<PoolType = string, RawRouteResultType = any, FetchRouteSettings = any, SdkClient = any> implements SwapSdkBaseInterface<PoolType, RawRouteResultType, FetchRouteSettings, SdkClient> {
174
+ protected rawRouteResult?: RawRouteResultType;
175
+ readonly name: string;
176
+ readonly events: TypedEventEmitter<SwapSdkEvents<PoolType>>;
177
+ client?: SdkClient;
178
+ suiClient: ClientWithCoreApi;
179
+ fetchTimeoutInMs?: number;
180
+ walletAddress: string;
181
+ fetchSettings?: FetchRouteSettings;
182
+ poolsMap: Map<PoolType, boolean>;
183
+ constructor(name: string, params: SwapSdkConstructorParams<FetchRouteSettings>);
184
+ abstract ensureClient(): Promise<SdkClient>;
185
+ get pools(): PoolType[];
186
+ protected validateWalletAddress(): asserts this is typeof SwapSdkBase & {
187
+ walletAddress: string;
188
+ };
189
+ protected validateClient(): asserts this is typeof SwapSdkBase & {
190
+ client: SdkClient;
191
+ };
192
+ setWalletAddress(address: string): void;
193
+ setSuiClient(client: ClientWithCoreApi): void;
194
+ abstract calcSlippage(slippageInDecimal: number): number;
195
+ togglePoolStatus(pool: PoolType, enabled?: boolean): void;
196
+ toggleAllPoolStatus(enabled: boolean): void;
197
+ getEnabledPools(): PoolType[];
198
+ protected normalizeFetchRouteParams(params: FetchRouteParams): FetchRouteParams;
199
+ protected withTimeout<T>(fn: Promise<T>, abortSignal?: AbortSignal): Promise<T>;
200
+ selectCoinInForSwap(tx: Transaction, amount: bigint, coinType: string): Promise<{
201
+ NestedResult: [number, number];
202
+ $kind: "NestedResult";
203
+ } | {
204
+ $kind: "Input";
205
+ Input: number;
206
+ type?: "object";
207
+ }>;
208
+ protected selectCoins(coinType: string, amount: string): Promise<_mysten_sui_client.SuiClientTypes.Coin[]>;
209
+ abstract setFetchRouteSettings(settings: FetchRouteSettings): void;
210
+ abstract fetchRoute(params: FetchRouteParams, abortSignal?: AbortSignal): Promise<FetchRouteResult<RawRouteResultType>>;
211
+ abstract buildSwapTransaction(params: SwapParams<RawRouteResultType>): Promise<{
212
+ tx: Transaction;
213
+ coinOut: TransactionObjectArgument;
214
+ }>;
215
+ }
216
+
217
+ export { type AggregatorEvents as A, type Coin as C, type FetchRouteParams as F, SwapSdkBase as S, TypedEventEmitter as T, type SwapSdkConstructorParams as a, type FetchRouteResult as b, type SwapParams as c, type FormattedRouteResult as d, type SwapRoute as e, type FetchRoutesOptions as f, type SwapBuildResult as g, type AggregatorEvent as h, type AggregatorStatusEvent as i, type AllSwapSdkPoolStatusEvent as j, type SlippageChangedEvent as k, type SwapCoinInfo as l, type SwapPath as m, type SwapSdkBaseInterface as n, type SwapSdkEvents as o, type SwapSdkPoolStatusEvent as p };
@@ -0,0 +1,2 @@
1
+ 'use strict';var utils=require('@mysten/sui/utils'),bignumber_js=require('bignumber.js'),events=require('events'),grpc=require('@mysten/sui/grpc'),suiKit=require('@scallop-io/sui-kit');var A=utils.normalizeStructTag(utils.SUI_TYPE_ARG),p=n=>utils.normalizeStructTag(n)===A,f=async(n,t,e,r)=>{let i=[],s=bignumber_js.BigNumber(e),l=null;try{do{let{objects:o,hasNextPage:a,cursor:c}=await n.core.listCoins({coinType:t,owner:r,limit:50,cursor:l});if(i.push(...o),s=s.minus(o.reduce((v,R)=>v.plus(bignumber_js.BigNumber(R.balance)),bignumber_js.BigNumber(0))),s.lte(0)||(l=c??null,!a))break}while(l)}catch(o){throw new Error(o?.message??"Failed to fetch coins")}if(i.length===0)throw new Error(`No available coin for type ${t} found in wallet ${r}`);if(s.gt(0))throw new Error(`Insufficient balance for coin type ${t} in wallet ${r}`);return i},S=async(n,t,e,r,i)=>{try{if(p(r))n.mergeCoins(n.gas,[t]);else {let{objects:s}=await e.core.listCoins({coinType:r,owner:i,limit:1});if(!s.length)throw new Error(`No existing ${r} coin found to merge with`);let l=n.objectRef({objectId:s[0].objectId,version:s[0].version,digest:s[0].digest});s.length===1?n.mergeCoins(l,[t]):n.mergeCoins(l,[t,...s.slice(1).map(o=>n.objectRef({objectId:o.objectId,version:o.version,digest:o.digest}))]);}}catch{n.transferObjects([t],n.pure.address(i));}},b=n=>n[0].toUpperCase()+n.slice(1),O=n=>n.split("_").map(b).join(" ");var u=class extends events.EventEmitter{on(t,e){return super.on(t,e)}once(t,e){return super.once(t,e)}off(t,e){return super.off(t,e)}emit(t,e){return super.emit(t,e)}};var y=class{rawRouteResult;name="";events=new u;client;suiClient;fetchTimeoutInMs;walletAddress;fetchSettings;poolsMap=new Map;constructor(t,e){this.suiClient=e.suiClient??new grpc.SuiGrpcClient({baseUrl:"https://fullnode.mainnet.sui.io:443",network:"mainnet"}).core,this.fetchTimeoutInMs=e.fetchTimeoutInMs??4e3,this.walletAddress=e.walletAddress,this.name=t.toLowerCase(),e.fetchSettings&&this.setFetchRouteSettings(e.fetchSettings);}get pools(){return Array.from(this.poolsMap.keys())}validateWalletAddress(){if(!this.walletAddress||this.walletAddress.length===0)throw new Error("Wallet address is not set")}validateClient(){if(!this.client)throw new Error("SDK client is not set")}setWalletAddress(t){this.walletAddress=t;}setSuiClient(t){this.suiClient=t;}togglePoolStatus(t,e){let r=e??!(this.poolsMap.get(t)??true);this.poolsMap.set(t,r),this.events.emit("poolStatusChanged",{name:this.name,pool:t,enabled:r});}toggleAllPoolStatus(t){this.pools.forEach(e=>{this.poolsMap.set(e,t);}),this.events.emit("allPoolStatusChanged",{name:this.name,enabled:t});}getEnabledPools(){return Array.from(this.poolsMap.entries()).filter(([t,e])=>e).map(([t,e])=>t)}normalizeFetchRouteParams(t){return {...t,coinInType:utils.normalizeStructTag(t.coinInType),coinOutType:utils.normalizeStructTag(t.coinOutType)}}async withTimeout(t,e){let r,i,s=[t,new Promise((l,o)=>{r=setTimeout(()=>{o(new Error(`${this.name} fetch route timeout`));},this.fetchTimeoutInMs);})];e&&s.push(new Promise((l,o)=>{if(e.aborted){o(e.reason??new Error(`${this.name} fetch route aborted`));return}i=()=>o(e.reason??new Error(`${this.name} fetch route aborted`)),e.addEventListener("abort",i,{once:true});}));try{return await Promise.race(s)}finally{r&&clearTimeout(r),e&&i&&e.removeEventListener("abort",i);}}async selectCoinInForSwap(t,e,r){let i=bignumber_js.BigNumber(e.toString());if(p(r)){let[s]=t.splitCoins(t.gas,[i.toString()]);return s}else {let s=await this.selectCoins(r,i.toString()),l=s.reduce((a,c)=>a.plus(bignumber_js.BigNumber(c.balance)),bignumber_js.BigNumber(0)),o=t.objectRef({objectId:s[0].objectId,version:s[0].version,digest:s[0].digest});if(s.length>1&&t.mergeCoins(o,s.slice(1).map(a=>t.objectRef({objectId:a.objectId,version:a.version,digest:a.digest}))),l.gt(i)){let[a]=t.splitCoins(o,[i.toString()]);return a}else return o}}async selectCoins(t,e){return this.validateWalletAddress(),await f(this.suiClient,t,e,this.walletAddress)}};var g=class{constructor(t,e){this.client=t;e&&e.forEach(r=>this.cache.set(r.coinType,r));}client;cache=new Map;setClient(t){this.client=t;}async getCoinMetadata(t){let e=utils.normalizeStructTag(t);if(this.cache.has(e))return this.cache.get(e);let{coinMetadata:r}=await this.client.core.getCoinMetadata({coinType:e}),i=r;if(!i)throw new Error(`Coin metadata not found for coin type: ${e}`);return this.cache.set(e,i),i}};var C=class{coinMetadata;suiKit;events=new u;_slippage=.003;signerMode=false;aggregatorMap=new Map;activeAggregator=new Map;_fetchingStatus=new Map;poolStatusForwarders=new Map;allPoolStatusForwarders=new Map;walletAddress;client;constructor(t){if(this.client=t.client??new grpc.SuiGrpcClient({baseUrl:t.fullnodeUrl||"https://fullnode.mainnet.sui.io:443",network:"mainnet"}),this.coinMetadata=new g(this.client),this.signerMode=!!(t.secretKey||t.mnemonics),t.secretKey||t.mnemonics)this.suiKit=new suiKit.SuiKit({...t,suiClients:[this.client]}),this.walletAddress=this.suiKit.currentAddress;else if(t.walletAddress!==void 0)this.walletAddress=t.walletAddress;else throw new Error("One of secretKey, mnemonics or walletAddress must be provided")}async init(){await Promise.all(this.aggregators.map(t=>t.ensureClient()));}forwardPoolStatusChangeEvent(t){this.events.emit("poolStatusChanged",t);}addAggregator(t){for(let e of t)if(!this.aggregatorMap.has(e.name)){this.aggregatorMap.set(e.name,e),this.activeAggregator.set(e.name,true),this._fetchingStatus.set(e.name,false);let r=s=>this.forwardPoolStatusChangeEvent(s);this.poolStatusForwarders.set(e.name,r),e.events.on("poolStatusChanged",r);let i=s=>this.events.emit("allPoolStatusChanged",s);this.allPoolStatusForwarders.set(e.name,i),e.events.on("allPoolStatusChanged",i),this.events.emit("aggregatorAdded",{name:e.name});}}getActiveAggregators(){return Array.from(this.activeAggregator.entries()).filter(([t,e])=>e).map(([t,e])=>t)}getAggregator(t){return this.aggregatorMap.get(t)}toggleAggregator(t,e){if(!this.activeAggregator.has(t))throw new Error(`Aggregator ${t} not found`);this.activeAggregator.set(t,e),this.events.emit("aggregatorStatusChanged",{name:t,enabled:e});}removeAggregator(t){let e=this.aggregatorMap.get(t);if(!e)throw new Error(`Aggregator ${t} not found`);let r=this.poolStatusForwarders.get(t);r&&e.events.off("poolStatusChanged",r),this.poolStatusForwarders.delete(t);let i=this.allPoolStatusForwarders.get(t);i&&e.events.off("allPoolStatusChanged",i),this.allPoolStatusForwarders.delete(t),this.aggregatorMap.delete(t),this.activeAggregator.delete(t),this._fetchingStatus.delete(t),this.events.emit("aggregatorRemoved",{name:t});}get aggregators(){return Array.from(this.aggregatorMap.values())}get fetchingStatus(){return Object.fromEntries(this._fetchingStatus)}get slippage(){return this._slippage}setSlippage(t){this._slippage=t,this.events.emit("aggregatorSlippageChanged",{slippageInDecimal:t});}setFetchTimeoutInMs(t){this.aggregators.forEach(e=>{e.fetchTimeoutInMs=t;});}#t(){if(!this.suiKit)throw new Error("SuiKit is not initialized.")}setSuiClient(t){this.aggregators.forEach(e=>{e.setSuiClient(t);}),this.coinMetadata.setClient(t),this.client=t;}setWalletAddress(t){if(this.signerMode)throw new Error("Cannot change wallet address when SuiKit is initialized with secretKey or mnemonics.");this.walletAddress=t,this.aggregators.forEach(e=>{e.setWalletAddress(t);});}async getCoinMetadata(t){return this.coinMetadata.getCoinMetadata(t)}async fetchRoutes(t,e){let r=this.aggregators.filter(({name:o})=>this.activeAggregator.get(o)===true),i=[],s=[],l=r.map(async o=>{this._fetchingStatus.set(o.name,true),this.events.emit("aggregatorFetchStart",{name:o.name});try{let a=await o.fetchRoute(t,e?.abortSignal);i.push(a),e?.onRouteFound?.(a);}catch(a){let c={name:o.name,reason:a};s.push(c),e?.onError?.(c);}finally{this._fetchingStatus.set(o.name,false),this.events.emit("aggregatorFetchEnd",{name:o.name});}});return await Promise.all(l),{routes:i.sort((o,a)=>bignumber_js.BigNumber(a.formattedResult.coinOut.amount).comparedTo(o.formattedResult.coinOut.amount)??0),errors:s}}async buildRouteTransaction(t,e={}){let{mergeResult:r=true,txExtensionParams:i}=e,s=this.aggregatorMap.get(t.formattedResult.name);if(!s)throw new Error(`Aggregator ${t.formattedResult.name} not found in the aggregator list`);let{tx:l,coinOut:o}=await s.buildSwapTransaction({route:t,slippage:e.slippage??this.slippage,txExtensionParams:i}),a=t.formattedResult.coinOut.type;return r?(await S(l,o,this.client,a,this.walletAddress),{tx:l,coinOutType:a}):{tx:l,coinOut:o,coinOutType:a}}async executeSwapTransaction(t,e=false){return this.#t(),e?(t.setSender(this.walletAddress),this.suiKit.dryRunTxn(t)):this.suiKit.signAndSendTxn(t)}};
2
+ exports.a=p;exports.b=f;exports.c=S;exports.d=O;exports.e=u;exports.f=y;exports.g=g;exports.h=C;
@@ -0,0 +1 @@
1
+ function i(n,r){let e;return async()=>{if(e)return e;try{return e=await r(),e}catch(t){throw t?.code==="ERR_MODULE_NOT_FOUND"||t?.code==="MODULE_NOT_FOUND"?new Error(`${n} is required but not installed. Install it with: pnpm add ${n}`):t}}}export{i as a};
@@ -0,0 +1,2 @@
1
+ import {normalizeStructTag,SUI_TYPE_ARG}from'@mysten/sui/utils';import {BigNumber}from'bignumber.js';import {EventEmitter}from'events';import {SuiGrpcClient}from'@mysten/sui/grpc';import {SuiKit}from'@scallop-io/sui-kit';var A=normalizeStructTag(SUI_TYPE_ARG),p=n=>normalizeStructTag(n)===A,f=async(n,t,e,r)=>{let i=[],s=BigNumber(e),l=null;try{do{let{objects:o,hasNextPage:a,cursor:c}=await n.core.listCoins({coinType:t,owner:r,limit:50,cursor:l});if(i.push(...o),s=s.minus(o.reduce((v,R)=>v.plus(BigNumber(R.balance)),BigNumber(0))),s.lte(0)||(l=c??null,!a))break}while(l)}catch(o){throw new Error(o?.message??"Failed to fetch coins")}if(i.length===0)throw new Error(`No available coin for type ${t} found in wallet ${r}`);if(s.gt(0))throw new Error(`Insufficient balance for coin type ${t} in wallet ${r}`);return i},S=async(n,t,e,r,i)=>{try{if(p(r))n.mergeCoins(n.gas,[t]);else {let{objects:s}=await e.core.listCoins({coinType:r,owner:i,limit:1});if(!s.length)throw new Error(`No existing ${r} coin found to merge with`);let l=n.objectRef({objectId:s[0].objectId,version:s[0].version,digest:s[0].digest});s.length===1?n.mergeCoins(l,[t]):n.mergeCoins(l,[t,...s.slice(1).map(o=>n.objectRef({objectId:o.objectId,version:o.version,digest:o.digest}))]);}}catch{n.transferObjects([t],n.pure.address(i));}},b=n=>n[0].toUpperCase()+n.slice(1),O=n=>n.split("_").map(b).join(" ");var u=class extends EventEmitter{on(t,e){return super.on(t,e)}once(t,e){return super.once(t,e)}off(t,e){return super.off(t,e)}emit(t,e){return super.emit(t,e)}};var y=class{rawRouteResult;name="";events=new u;client;suiClient;fetchTimeoutInMs;walletAddress;fetchSettings;poolsMap=new Map;constructor(t,e){this.suiClient=e.suiClient??new SuiGrpcClient({baseUrl:"https://fullnode.mainnet.sui.io:443",network:"mainnet"}).core,this.fetchTimeoutInMs=e.fetchTimeoutInMs??4e3,this.walletAddress=e.walletAddress,this.name=t.toLowerCase(),e.fetchSettings&&this.setFetchRouteSettings(e.fetchSettings);}get pools(){return Array.from(this.poolsMap.keys())}validateWalletAddress(){if(!this.walletAddress||this.walletAddress.length===0)throw new Error("Wallet address is not set")}validateClient(){if(!this.client)throw new Error("SDK client is not set")}setWalletAddress(t){this.walletAddress=t;}setSuiClient(t){this.suiClient=t;}togglePoolStatus(t,e){let r=e??!(this.poolsMap.get(t)??true);this.poolsMap.set(t,r),this.events.emit("poolStatusChanged",{name:this.name,pool:t,enabled:r});}toggleAllPoolStatus(t){this.pools.forEach(e=>{this.poolsMap.set(e,t);}),this.events.emit("allPoolStatusChanged",{name:this.name,enabled:t});}getEnabledPools(){return Array.from(this.poolsMap.entries()).filter(([t,e])=>e).map(([t,e])=>t)}normalizeFetchRouteParams(t){return {...t,coinInType:normalizeStructTag(t.coinInType),coinOutType:normalizeStructTag(t.coinOutType)}}async withTimeout(t,e){let r,i,s=[t,new Promise((l,o)=>{r=setTimeout(()=>{o(new Error(`${this.name} fetch route timeout`));},this.fetchTimeoutInMs);})];e&&s.push(new Promise((l,o)=>{if(e.aborted){o(e.reason??new Error(`${this.name} fetch route aborted`));return}i=()=>o(e.reason??new Error(`${this.name} fetch route aborted`)),e.addEventListener("abort",i,{once:true});}));try{return await Promise.race(s)}finally{r&&clearTimeout(r),e&&i&&e.removeEventListener("abort",i);}}async selectCoinInForSwap(t,e,r){let i=BigNumber(e.toString());if(p(r)){let[s]=t.splitCoins(t.gas,[i.toString()]);return s}else {let s=await this.selectCoins(r,i.toString()),l=s.reduce((a,c)=>a.plus(BigNumber(c.balance)),BigNumber(0)),o=t.objectRef({objectId:s[0].objectId,version:s[0].version,digest:s[0].digest});if(s.length>1&&t.mergeCoins(o,s.slice(1).map(a=>t.objectRef({objectId:a.objectId,version:a.version,digest:a.digest}))),l.gt(i)){let[a]=t.splitCoins(o,[i.toString()]);return a}else return o}}async selectCoins(t,e){return this.validateWalletAddress(),await f(this.suiClient,t,e,this.walletAddress)}};var g=class{constructor(t,e){this.client=t;e&&e.forEach(r=>this.cache.set(r.coinType,r));}client;cache=new Map;setClient(t){this.client=t;}async getCoinMetadata(t){let e=normalizeStructTag(t);if(this.cache.has(e))return this.cache.get(e);let{coinMetadata:r}=await this.client.core.getCoinMetadata({coinType:e}),i=r;if(!i)throw new Error(`Coin metadata not found for coin type: ${e}`);return this.cache.set(e,i),i}};var C=class{coinMetadata;suiKit;events=new u;_slippage=.003;signerMode=false;aggregatorMap=new Map;activeAggregator=new Map;_fetchingStatus=new Map;poolStatusForwarders=new Map;allPoolStatusForwarders=new Map;walletAddress;client;constructor(t){if(this.client=t.client??new SuiGrpcClient({baseUrl:t.fullnodeUrl||"https://fullnode.mainnet.sui.io:443",network:"mainnet"}),this.coinMetadata=new g(this.client),this.signerMode=!!(t.secretKey||t.mnemonics),t.secretKey||t.mnemonics)this.suiKit=new SuiKit({...t,suiClients:[this.client]}),this.walletAddress=this.suiKit.currentAddress;else if(t.walletAddress!==void 0)this.walletAddress=t.walletAddress;else throw new Error("One of secretKey, mnemonics or walletAddress must be provided")}async init(){await Promise.all(this.aggregators.map(t=>t.ensureClient()));}forwardPoolStatusChangeEvent(t){this.events.emit("poolStatusChanged",t);}addAggregator(t){for(let e of t)if(!this.aggregatorMap.has(e.name)){this.aggregatorMap.set(e.name,e),this.activeAggregator.set(e.name,true),this._fetchingStatus.set(e.name,false);let r=s=>this.forwardPoolStatusChangeEvent(s);this.poolStatusForwarders.set(e.name,r),e.events.on("poolStatusChanged",r);let i=s=>this.events.emit("allPoolStatusChanged",s);this.allPoolStatusForwarders.set(e.name,i),e.events.on("allPoolStatusChanged",i),this.events.emit("aggregatorAdded",{name:e.name});}}getActiveAggregators(){return Array.from(this.activeAggregator.entries()).filter(([t,e])=>e).map(([t,e])=>t)}getAggregator(t){return this.aggregatorMap.get(t)}toggleAggregator(t,e){if(!this.activeAggregator.has(t))throw new Error(`Aggregator ${t} not found`);this.activeAggregator.set(t,e),this.events.emit("aggregatorStatusChanged",{name:t,enabled:e});}removeAggregator(t){let e=this.aggregatorMap.get(t);if(!e)throw new Error(`Aggregator ${t} not found`);let r=this.poolStatusForwarders.get(t);r&&e.events.off("poolStatusChanged",r),this.poolStatusForwarders.delete(t);let i=this.allPoolStatusForwarders.get(t);i&&e.events.off("allPoolStatusChanged",i),this.allPoolStatusForwarders.delete(t),this.aggregatorMap.delete(t),this.activeAggregator.delete(t),this._fetchingStatus.delete(t),this.events.emit("aggregatorRemoved",{name:t});}get aggregators(){return Array.from(this.aggregatorMap.values())}get fetchingStatus(){return Object.fromEntries(this._fetchingStatus)}get slippage(){return this._slippage}setSlippage(t){this._slippage=t,this.events.emit("aggregatorSlippageChanged",{slippageInDecimal:t});}setFetchTimeoutInMs(t){this.aggregators.forEach(e=>{e.fetchTimeoutInMs=t;});}#t(){if(!this.suiKit)throw new Error("SuiKit is not initialized.")}setSuiClient(t){this.aggregators.forEach(e=>{e.setSuiClient(t);}),this.coinMetadata.setClient(t),this.client=t;}setWalletAddress(t){if(this.signerMode)throw new Error("Cannot change wallet address when SuiKit is initialized with secretKey or mnemonics.");this.walletAddress=t,this.aggregators.forEach(e=>{e.setWalletAddress(t);});}async getCoinMetadata(t){return this.coinMetadata.getCoinMetadata(t)}async fetchRoutes(t,e){let r=this.aggregators.filter(({name:o})=>this.activeAggregator.get(o)===true),i=[],s=[],l=r.map(async o=>{this._fetchingStatus.set(o.name,true),this.events.emit("aggregatorFetchStart",{name:o.name});try{let a=await o.fetchRoute(t,e?.abortSignal);i.push(a),e?.onRouteFound?.(a);}catch(a){let c={name:o.name,reason:a};s.push(c),e?.onError?.(c);}finally{this._fetchingStatus.set(o.name,false),this.events.emit("aggregatorFetchEnd",{name:o.name});}});return await Promise.all(l),{routes:i.sort((o,a)=>BigNumber(a.formattedResult.coinOut.amount).comparedTo(o.formattedResult.coinOut.amount)??0),errors:s}}async buildRouteTransaction(t,e={}){let{mergeResult:r=true,txExtensionParams:i}=e,s=this.aggregatorMap.get(t.formattedResult.name);if(!s)throw new Error(`Aggregator ${t.formattedResult.name} not found in the aggregator list`);let{tx:l,coinOut:o}=await s.buildSwapTransaction({route:t,slippage:e.slippage??this.slippage,txExtensionParams:i}),a=t.formattedResult.coinOut.type;return r?(await S(l,o,this.client,a,this.walletAddress),{tx:l,coinOutType:a}):{tx:l,coinOut:o,coinOutType:a}}async executeSwapTransaction(t,e=false){return this.#t(),e?(t.setSender(this.walletAddress),this.suiKit.dryRunTxn(t)):this.suiKit.signAndSendTxn(t)}};
2
+ export{p as a,f as b,S as c,O as d,u as e,y as f,g,C as h};
@@ -0,0 +1 @@
1
+ 'use strict';function i(n,r){let e;return async()=>{if(e)return e;try{return e=await r(),e}catch(t){throw t?.code==="ERR_MODULE_NOT_FOUND"||t?.code==="MODULE_NOT_FOUND"?new Error(`${n} is required but not installed. Install it with: pnpm add ${n}`):t}}}exports.a=i;
package/dist/index.cjs CHANGED
@@ -1,38 +1 @@
1
- 'use strict';
2
-
3
- var chunkQ2MQ6ISF_cjs = require('./chunk-Q2MQ6ISF.cjs');
4
-
5
-
6
-
7
- Object.defineProperty(exports, "Aggregator", {
8
- enumerable: true,
9
- get: function () { return chunkQ2MQ6ISF_cjs.h; }
10
- });
11
- Object.defineProperty(exports, "CoinMetadataRegistry", {
12
- enumerable: true,
13
- get: function () { return chunkQ2MQ6ISF_cjs.g; }
14
- });
15
- Object.defineProperty(exports, "SwapSdkBase", {
16
- enumerable: true,
17
- get: function () { return chunkQ2MQ6ISF_cjs.f; }
18
- });
19
- Object.defineProperty(exports, "TypedEventEmitter", {
20
- enumerable: true,
21
- get: function () { return chunkQ2MQ6ISF_cjs.e; }
22
- });
23
- Object.defineProperty(exports, "isSuiType", {
24
- enumerable: true,
25
- get: function () { return chunkQ2MQ6ISF_cjs.a; }
26
- });
27
- Object.defineProperty(exports, "mergeWithExistingOrTransfer", {
28
- enumerable: true,
29
- get: function () { return chunkQ2MQ6ISF_cjs.c; }
30
- });
31
- Object.defineProperty(exports, "selectCoins", {
32
- enumerable: true,
33
- get: function () { return chunkQ2MQ6ISF_cjs.b; }
34
- });
35
- Object.defineProperty(exports, "transformProperCase", {
36
- enumerable: true,
37
- get: function () { return chunkQ2MQ6ISF_cjs.d; }
38
- });
1
+ 'use strict';var chunk3CBW5I4K_cjs=require('./chunk-3CBW5I4K.cjs');Object.defineProperty(exports,"Aggregator",{enumerable:true,get:function(){return chunk3CBW5I4K_cjs.h}});Object.defineProperty(exports,"CoinMetadataRegistry",{enumerable:true,get:function(){return chunk3CBW5I4K_cjs.g}});Object.defineProperty(exports,"SwapSdkBase",{enumerable:true,get:function(){return chunk3CBW5I4K_cjs.f}});Object.defineProperty(exports,"TypedEventEmitter",{enumerable:true,get:function(){return chunk3CBW5I4K_cjs.e}});Object.defineProperty(exports,"isSuiType",{enumerable:true,get:function(){return chunk3CBW5I4K_cjs.a}});Object.defineProperty(exports,"mergeWithExistingOrTransfer",{enumerable:true,get:function(){return chunk3CBW5I4K_cjs.c}});Object.defineProperty(exports,"selectCoins",{enumerable:true,get:function(){return chunk3CBW5I4K_cjs.b}});Object.defineProperty(exports,"transformProperCase",{enumerable:true,get:function(){return chunk3CBW5I4K_cjs.d}});
package/dist/index.d.cts CHANGED
@@ -1,5 +1,5 @@
1
- import { T as TypedEventEmitter, A as AggregatorEvents, S as SwapSdkBase, b as FetchRouteParams, f as FetchRoutesOptions, e as FetchRouteResult, g as SwapBuildResult } from './base-tXJdbzpP.js';
2
- export { h as AggregatorEvent, i as AggregatorStatusEvent, j as AllSwapSdkPoolStatusEvent, C as Coin, F as FormattedRouteResult, k as SlippageChangedEvent, l as SwapCoinInfo, d as SwapParams, m as SwapPath, c as SwapRoute, n as SwapSdkBaseInterface, a as SwapSdkConstructorParams, o as SwapSdkEvents, p as SwapSdkPoolStatusEvent } from './base-tXJdbzpP.js';
1
+ import { T as TypedEventEmitter, A as AggregatorEvents, S as SwapSdkBase, F as FetchRouteParams, f as FetchRoutesOptions, b as FetchRouteResult, g as SwapBuildResult } from './base-D9ApraXl.cjs';
2
+ export { h as AggregatorEvent, i as AggregatorStatusEvent, j as AllSwapSdkPoolStatusEvent, C as Coin, d as FormattedRouteResult, k as SlippageChangedEvent, l as SwapCoinInfo, c as SwapParams, m as SwapPath, e as SwapRoute, n as SwapSdkBaseInterface, a as SwapSdkConstructorParams, o as SwapSdkEvents, p as SwapSdkPoolStatusEvent } from './base-D9ApraXl.cjs';
3
3
  import * as _mysten_sui_client from '@mysten/sui/client';
4
4
  import { ClientWithCoreApi, SuiClientTypes } from '@mysten/sui/client';
5
5
  import { Transaction, TransactionObjectArgument } from '@mysten/sui/transactions';
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { T as TypedEventEmitter, A as AggregatorEvents, S as SwapSdkBase, b as FetchRouteParams, f as FetchRoutesOptions, e as FetchRouteResult, g as SwapBuildResult } from './base-tXJdbzpP.js';
2
- export { h as AggregatorEvent, i as AggregatorStatusEvent, j as AllSwapSdkPoolStatusEvent, C as Coin, F as FormattedRouteResult, k as SlippageChangedEvent, l as SwapCoinInfo, d as SwapParams, m as SwapPath, c as SwapRoute, n as SwapSdkBaseInterface, a as SwapSdkConstructorParams, o as SwapSdkEvents, p as SwapSdkPoolStatusEvent } from './base-tXJdbzpP.js';
1
+ import { T as TypedEventEmitter, A as AggregatorEvents, S as SwapSdkBase, F as FetchRouteParams, f as FetchRoutesOptions, b as FetchRouteResult, g as SwapBuildResult } from './base-D9ApraXl.js';
2
+ export { h as AggregatorEvent, i as AggregatorStatusEvent, j as AllSwapSdkPoolStatusEvent, C as Coin, d as FormattedRouteResult, k as SlippageChangedEvent, l as SwapCoinInfo, c as SwapParams, m as SwapPath, e as SwapRoute, n as SwapSdkBaseInterface, a as SwapSdkConstructorParams, o as SwapSdkEvents, p as SwapSdkPoolStatusEvent } from './base-D9ApraXl.js';
3
3
  import * as _mysten_sui_client from '@mysten/sui/client';
4
4
  import { ClientWithCoreApi, SuiClientTypes } from '@mysten/sui/client';
5
5
  import { Transaction, TransactionObjectArgument } from '@mysten/sui/transactions';
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- export { h as Aggregator, g as CoinMetadataRegistry, f as SwapSdkBase, e as TypedEventEmitter, a as isSuiType, c as mergeWithExistingOrTransfer, b as selectCoins, d as transformProperCase } from './chunk-WDS4CSDY.js';
1
+ export{h as Aggregator,g as CoinMetadataRegistry,f as SwapSdkBase,e as TypedEventEmitter,a as isSuiType,c as mergeWithExistingOrTransfer,b as selectCoins,d as transformProperCase}from'./chunk-PUC4ABCH.js';
package/dist/sdk/7k.cjs CHANGED
@@ -1,2 +1 @@
1
- 'use strict';
2
-
1
+ 'use strict';
package/dist/sdk/7k.js CHANGED
@@ -1 +0,0 @@
1
-
@@ -1,12 +1 @@
1
- 'use strict';
2
-
3
- var chunkRJTK6ARK_cjs = require('../chunk-RJTK6ARK.cjs');
4
- var chunkQ2MQ6ISF_cjs = require('../chunk-Q2MQ6ISF.cjs');
5
- var jsonRpc = require('@mysten/sui/jsonRpc');
6
- var bignumber_js = require('bignumber.js');
7
- var transactions = require('@mysten/sui/transactions');
8
- var utils = require('@mysten/sui/utils');
9
-
10
- var l={faucet:{packages:{faucet:"",suiFrensGenesisWrapper:""},objects:{faucet:"",suiFrensMint:""}},staking:{packages:{events:"0x7f6ce7ade63857c4fd16ef7783fed2dfc4d7fb7e40615abdb653030b76aef0c6",lsd:"0x1575034d2729907aefca1ac757d6ccfcd3fc7e9e77927523c06007d8353ad836",afsui:"0xf325ce1300e8dac124071d3152c5c5ee6174914f8bc2161e88329cf579246efc"},objects:{stakedSuiVault:"0x2f8f6d5da7f13ea37daa397724280483ed062769813b6f31e9788e59cc88994d",stakedSuiVaultState:"0x55486449e41d89cfbdb20e005c1c5c1007858ad5b4d5d7c047d2b3b592fe8791",safe:"0xeb685899830dd5837b47007809c76d91a098d52aabbf61e8ac467c59e5cc4610",treasury:"0xd2b95022244757b0ab9f74e2ee2fb2c3bf29dce5590fa6993a85d64bd219d7e8",referralVault:"0x4ce9a19b594599536c53edb25d22532f82f18038dc8ef618afd00fbbfb9845ef",validatorConfigsTable:"0x8536350cfb8a8efdd133a1e087b55416d431f7e8b894f77b55b20c4b799ebad9",aftermathValidator:"0xd30018ec3f5ff1a3c75656abf927a87d7f0529e6dc89c7ddd1bd27ecb05e3db2"}},pools:{packages:{amm:"0xc4049b2d1cc0f6e017fda8260e4377cecd236bd7f56a54fee120816e72e2e0dd",ammInterface:"0x8d8bba50c626753589aa5abbc006c9fa07736f55f4e6fb57481682997c0b0d52",events:"0xefe170ec0be4d762196bedecd7a065816576198a6527c99282a2551aaa7da38c",eventsV2:"0xc4049b2d1cc0f6e017fda8260e4377cecd236bd7f56a54fee120816e72e2e0dd"},objects:{poolRegistry:"0xfcc774493db2c45c79f688f88d28023a3e7d98e4ee9f48bbf5c7990f651577ae",protocolFeeVault:"0xf194d9b1bcad972e45a7dd67dd49b3ee1e3357a00a50850c52cd51bb450e13b4",treasury:"0x28e499dff5e864a2eafe476269a4f5035f1c16f338da7be18b103499abf271ce",insuranceFund:"0xf0c40d67b078000e18032334c3325c47b9ec9f3d9ae4128be820d54663d14e3b",lpCoinsTable:"0x7f3bb65251feccacc7f48461239be1008233b85594114f7bf304e5e5b340bf59"},other:{createLpCoinPackageCompilations:{0:'{"modules":["oRzrCwYAAAAKAQAGAgYIAw4LBBkCBRsRByxPCHtgBtsBAwreAQUM4wEPAAICAwEHAAACAAIBAgAABgABAAEEAwEBAgECAggABwgBAAEIAAMJAAIHCAEFQUZfTFAJVHhDb250ZXh0BWFmX2xwDWFtbV9pbnRlcmZhY2UOY3JlYXRlX2xwX2NvaW4LZHVtbXlfZmllbGQEaW5pdAp0eF9jb250ZXh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgYl3CzUCu45mKHWYg3oiSlkwVBm4KKF2LVzkQ7Ux11QAgEAAAIBBQEAAAAAAQULAAcACwE4AAIA"],"dependencies":["0xefe170ec0be4d762196bedecd7a065816576198a6527c99282a2551aaa7da38c","0x0625dc2cd40aee3998a1d6620de8892964c15066e0a285d8b573910ed4c75d50","0x712579292f80c11a0c9de4ff553d6e5c4757105e83a8a3129823d2b39e65d062","0xa6baab1e668c7868991c1c3c11e144100f5734c407d020f72a01b9d1a8bcb97f","0x0000000000000000000000000000000000000000000000000000000000000001","0x2d9316f1f1a95f6d7c85a4e690ef7c359e6649773ef2c37ad7d9857adb6bef06","0xc66fabf1a9253e43c70f1cc02d40a1d18db183140ecaae2a3f58fa6b66c55acf","0x0000000000000000000000000000000000000000000000000000000000000002","0x64213b0e4a52bac468d4ac3f140242f70714381653a1919a6d57cd49c628207a","0x73baa782c55003b3a359dec04b189312565d18e7309d4a51f5f112f891e3b2ab"],"digest":[167,102,246,194,32,223,3,45,134,147,18,9,59,94,154,58,126,34,119,96,13,193,175,198,63,222,118,4,234,110,46,214]}',1:'{"modules":["oRzrCwYAAAAKAQAGAgYIAw4LBBkCBRsRByxPCHtgBtsBAwreAQUM4wEPAAICAwEHAAACAAIBAgAABgABAAEEAwEBAgECAggABwgBAAEIAAMJAAIHCAEFQUZfTFAJVHhDb250ZXh0BWFmX2xwDWFtbV9pbnRlcmZhY2UOY3JlYXRlX2xwX2NvaW4LZHVtbXlfZmllbGQEaW5pdAp0eF9jb250ZXh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgYl3CzUCu45mKHWYg3oiSlkwVBm4KKF2LVzkQ7Ux11QAgEBAAIBBQEAAAAAAQULAAcACwE4AAIA"],"dependencies":["0xefe170ec0be4d762196bedecd7a065816576198a6527c99282a2551aaa7da38c","0x0625dc2cd40aee3998a1d6620de8892964c15066e0a285d8b573910ed4c75d50","0x712579292f80c11a0c9de4ff553d6e5c4757105e83a8a3129823d2b39e65d062","0xa6baab1e668c7868991c1c3c11e144100f5734c407d020f72a01b9d1a8bcb97f","0x0000000000000000000000000000000000000000000000000000000000000001","0x2d9316f1f1a95f6d7c85a4e690ef7c359e6649773ef2c37ad7d9857adb6bef06","0xc66fabf1a9253e43c70f1cc02d40a1d18db183140ecaae2a3f58fa6b66c55acf","0x0000000000000000000000000000000000000000000000000000000000000002","0x64213b0e4a52bac468d4ac3f140242f70714381653a1919a6d57cd49c628207a","0x73baa782c55003b3a359dec04b189312565d18e7309d4a51f5f112f891e3b2ab"],"digest":[68,93,25,253,95,37,116,117,115,245,79,81,250,68,193,193,125,175,148,139,217,235,215,33,240,45,78,14,3,86,156,253]}',2:'{"modules":["oRzrCwYAAAAKAQAGAgYIAw4LBBkCBRsRByxPCHtgBtsBAwreAQUM4wEPAAICAwEHAAACAAIBAgAABgABAAEEAwEBAgECAggABwgBAAEIAAMJAAIHCAEFQUZfTFAJVHhDb250ZXh0BWFmX2xwDWFtbV9pbnRlcmZhY2UOY3JlYXRlX2xwX2NvaW4LZHVtbXlfZmllbGQEaW5pdAp0eF9jb250ZXh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgYl3CzUCu45mKHWYg3oiSlkwVBm4KKF2LVzkQ7Ux11QAgECAAIBBQEAAAAAAQULAAcACwE4AAIA"],"dependencies":["0xefe170ec0be4d762196bedecd7a065816576198a6527c99282a2551aaa7da38c","0x0625dc2cd40aee3998a1d6620de8892964c15066e0a285d8b573910ed4c75d50","0x712579292f80c11a0c9de4ff553d6e5c4757105e83a8a3129823d2b39e65d062","0xa6baab1e668c7868991c1c3c11e144100f5734c407d020f72a01b9d1a8bcb97f","0x0000000000000000000000000000000000000000000000000000000000000001","0x2d9316f1f1a95f6d7c85a4e690ef7c359e6649773ef2c37ad7d9857adb6bef06","0xc66fabf1a9253e43c70f1cc02d40a1d18db183140ecaae2a3f58fa6b66c55acf","0x0000000000000000000000000000000000000000000000000000000000000002","0x64213b0e4a52bac468d4ac3f140242f70714381653a1919a6d57cd49c628207a","0x73baa782c55003b3a359dec04b189312565d18e7309d4a51f5f112f891e3b2ab"],"digest":[226,124,21,102,7,55,200,164,249,68,13,253,43,195,52,31,88,207,26,30,152,251,208,57,135,126,235,45,23,164,119,82]}',3:'{"modules":["oRzrCwYAAAAKAQAGAgYIAw4LBBkCBRsRByxPCHtgBtsBAwreAQUM4wEPAAICAwEHAAACAAIBAgAABgABAAEEAwEBAgECAggABwgBAAEIAAMJAAIHCAEFQUZfTFAJVHhDb250ZXh0BWFmX2xwDWFtbV9pbnRlcmZhY2UOY3JlYXRlX2xwX2NvaW4LZHVtbXlfZmllbGQEaW5pdAp0eF9jb250ZXh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgYl3CzUCu45mKHWYg3oiSlkwVBm4KKF2LVzkQ7Ux11QAgEDAAIBBQEAAAAAAQULAAcACwE4AAIA"],"dependencies":["0xefe170ec0be4d762196bedecd7a065816576198a6527c99282a2551aaa7da38c","0x0625dc2cd40aee3998a1d6620de8892964c15066e0a285d8b573910ed4c75d50","0x712579292f80c11a0c9de4ff553d6e5c4757105e83a8a3129823d2b39e65d062","0xa6baab1e668c7868991c1c3c11e144100f5734c407d020f72a01b9d1a8bcb97f","0x0000000000000000000000000000000000000000000000000000000000000001","0x2d9316f1f1a95f6d7c85a4e690ef7c359e6649773ef2c37ad7d9857adb6bef06","0xc66fabf1a9253e43c70f1cc02d40a1d18db183140ecaae2a3f58fa6b66c55acf","0x0000000000000000000000000000000000000000000000000000000000000002","0x64213b0e4a52bac468d4ac3f140242f70714381653a1919a6d57cd49c628207a","0x73baa782c55003b3a359dec04b189312565d18e7309d4a51f5f112f891e3b2ab"],"digest":[1,144,16,189,84,90,47,167,188,222,48,174,25,190,46,185,6,221,67,91,132,40,116,30,179,102,100,127,83,12,109,13]}',4:'{"modules":["oRzrCwYAAAAKAQAGAgYIAw4LBBkCBRsRByxPCHtgBtsBAwreAQUM4wEPAAICAwEHAAACAAIBAgAABgABAAEEAwEBAgECAggABwgBAAEIAAMJAAIHCAEFQUZfTFAJVHhDb250ZXh0BWFmX2xwDWFtbV9pbnRlcmZhY2UOY3JlYXRlX2xwX2NvaW4LZHVtbXlfZmllbGQEaW5pdAp0eF9jb250ZXh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgYl3CzUCu45mKHWYg3oiSlkwVBm4KKF2LVzkQ7Ux11QAgEEAAIBBQEAAAAAAQULAAcACwE4AAIA"],"dependencies":["0xefe170ec0be4d762196bedecd7a065816576198a6527c99282a2551aaa7da38c","0x0625dc2cd40aee3998a1d6620de8892964c15066e0a285d8b573910ed4c75d50","0x712579292f80c11a0c9de4ff553d6e5c4757105e83a8a3129823d2b39e65d062","0xa6baab1e668c7868991c1c3c11e144100f5734c407d020f72a01b9d1a8bcb97f","0x0000000000000000000000000000000000000000000000000000000000000001","0x2d9316f1f1a95f6d7c85a4e690ef7c359e6649773ef2c37ad7d9857adb6bef06","0xc66fabf1a9253e43c70f1cc02d40a1d18db183140ecaae2a3f58fa6b66c55acf","0x0000000000000000000000000000000000000000000000000000000000000002","0x64213b0e4a52bac468d4ac3f140242f70714381653a1919a6d57cd49c628207a","0x73baa782c55003b3a359dec04b189312565d18e7309d4a51f5f112f891e3b2ab"],"digest":[188,181,24,0,200,201,56,67,47,157,254,230,47,200,183,173,203,125,184,180,21,175,170,42,167,82,194,112,35,226,84,160]}',5:'{"modules":["oRzrCwYAAAAKAQAGAgYIAw4LBBkCBRsRByxPCHtgBtsBAwreAQUM4wEPAAICAwEHAAACAAIBAgAABgABAAEEAwEBAgECAggABwgBAAEIAAMJAAIHCAEFQUZfTFAJVHhDb250ZXh0BWFmX2xwDWFtbV9pbnRlcmZhY2UOY3JlYXRlX2xwX2NvaW4LZHVtbXlfZmllbGQEaW5pdAp0eF9jb250ZXh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgYl3CzUCu45mKHWYg3oiSlkwVBm4KKF2LVzkQ7Ux11QAgEFAAIBBQEAAAAAAQULAAcACwE4AAIA"],"dependencies":["0xefe170ec0be4d762196bedecd7a065816576198a6527c99282a2551aaa7da38c","0x0625dc2cd40aee3998a1d6620de8892964c15066e0a285d8b573910ed4c75d50","0x712579292f80c11a0c9de4ff553d6e5c4757105e83a8a3129823d2b39e65d062","0xa6baab1e668c7868991c1c3c11e144100f5734c407d020f72a01b9d1a8bcb97f","0x0000000000000000000000000000000000000000000000000000000000000001","0x2d9316f1f1a95f6d7c85a4e690ef7c359e6649773ef2c37ad7d9857adb6bef06","0xc66fabf1a9253e43c70f1cc02d40a1d18db183140ecaae2a3f58fa6b66c55acf","0x0000000000000000000000000000000000000000000000000000000000000002","0x64213b0e4a52bac468d4ac3f140242f70714381653a1919a6d57cd49c628207a","0x73baa782c55003b3a359dec04b189312565d18e7309d4a51f5f112f891e3b2ab"],"digest":[139,229,11,229,58,97,20,164,146,173,45,172,225,131,71,62,84,106,77,218,122,249,243,255,146,34,28,60,77,35,55,138]}',6:'{"modules":["oRzrCwYAAAAKAQAGAgYIAw4LBBkCBRsRByxPCHtgBtsBAwreAQUM4wEPAAICAwEHAAACAAIBAgAABgABAAEEAwEBAgECAggABwgBAAEIAAMJAAIHCAEFQUZfTFAJVHhDb250ZXh0BWFmX2xwDWFtbV9pbnRlcmZhY2UOY3JlYXRlX2xwX2NvaW4LZHVtbXlfZmllbGQEaW5pdAp0eF9jb250ZXh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgYl3CzUCu45mKHWYg3oiSlkwVBm4KKF2LVzkQ7Ux11QAgEGAAIBBQEAAAAAAQULAAcACwE4AAIA"],"dependencies":["0xefe170ec0be4d762196bedecd7a065816576198a6527c99282a2551aaa7da38c","0x0625dc2cd40aee3998a1d6620de8892964c15066e0a285d8b573910ed4c75d50","0x712579292f80c11a0c9de4ff553d6e5c4757105e83a8a3129823d2b39e65d062","0xa6baab1e668c7868991c1c3c11e144100f5734c407d020f72a01b9d1a8bcb97f","0x0000000000000000000000000000000000000000000000000000000000000001","0x2d9316f1f1a95f6d7c85a4e690ef7c359e6649773ef2c37ad7d9857adb6bef06","0xc66fabf1a9253e43c70f1cc02d40a1d18db183140ecaae2a3f58fa6b66c55acf","0x0000000000000000000000000000000000000000000000000000000000000002","0x64213b0e4a52bac468d4ac3f140242f70714381653a1919a6d57cd49c628207a","0x73baa782c55003b3a359dec04b189312565d18e7309d4a51f5f112f891e3b2ab"],"digest":[57,76,77,44,68,157,60,123,68,75,189,64,53,35,82,187,207,42,126,62,112,57,251,96,190,255,39,160,152,130,157,52]}',7:'{"modules":["oRzrCwYAAAAKAQAGAgYIAw4LBBkCBRsRByxPCHtgBtsBAwreAQUM4wEPAAICAwEHAAACAAIBAgAABgABAAEEAwEBAgECAggABwgBAAEIAAMJAAIHCAEFQUZfTFAJVHhDb250ZXh0BWFmX2xwDWFtbV9pbnRlcmZhY2UOY3JlYXRlX2xwX2NvaW4LZHVtbXlfZmllbGQEaW5pdAp0eF9jb250ZXh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgYl3CzUCu45mKHWYg3oiSlkwVBm4KKF2LVzkQ7Ux11QAgEHAAIBBQEAAAAAAQULAAcACwE4AAIA"],"dependencies":["0xefe170ec0be4d762196bedecd7a065816576198a6527c99282a2551aaa7da38c","0x0625dc2cd40aee3998a1d6620de8892964c15066e0a285d8b573910ed4c75d50","0x712579292f80c11a0c9de4ff553d6e5c4757105e83a8a3129823d2b39e65d062","0xa6baab1e668c7868991c1c3c11e144100f5734c407d020f72a01b9d1a8bcb97f","0x0000000000000000000000000000000000000000000000000000000000000001","0x2d9316f1f1a95f6d7c85a4e690ef7c359e6649773ef2c37ad7d9857adb6bef06","0xc66fabf1a9253e43c70f1cc02d40a1d18db183140ecaae2a3f58fa6b66c55acf","0x0000000000000000000000000000000000000000000000000000000000000002","0x64213b0e4a52bac468d4ac3f140242f70714381653a1919a6d57cd49c628207a","0x73baa782c55003b3a359dec04b189312565d18e7309d4a51f5f112f891e3b2ab"],"digest":[123,60,245,235,196,138,131,187,192,81,41,5,55,144,176,99,178,245,228,90,186,155,175,11,175,182,127,251,112,69,207,36]}',8:'{"modules":["oRzrCwYAAAAKAQAGAgYIAw4LBBkCBRsRByxPCHtgBtsBAwreAQUM4wEPAAICAwEHAAACAAIBAgAABgABAAEEAwEBAgECAggABwgBAAEIAAMJAAIHCAEFQUZfTFAJVHhDb250ZXh0BWFmX2xwDWFtbV9pbnRlcmZhY2UOY3JlYXRlX2xwX2NvaW4LZHVtbXlfZmllbGQEaW5pdAp0eF9jb250ZXh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgYl3CzUCu45mKHWYg3oiSlkwVBm4KKF2LVzkQ7Ux11QAgEIAAIBBQEAAAAAAQULAAcACwE4AAIA"],"dependencies":["0xefe170ec0be4d762196bedecd7a065816576198a6527c99282a2551aaa7da38c","0x0625dc2cd40aee3998a1d6620de8892964c15066e0a285d8b573910ed4c75d50","0x712579292f80c11a0c9de4ff553d6e5c4757105e83a8a3129823d2b39e65d062","0xa6baab1e668c7868991c1c3c11e144100f5734c407d020f72a01b9d1a8bcb97f","0x0000000000000000000000000000000000000000000000000000000000000001","0x2d9316f1f1a95f6d7c85a4e690ef7c359e6649773ef2c37ad7d9857adb6bef06","0xc66fabf1a9253e43c70f1cc02d40a1d18db183140ecaae2a3f58fa6b66c55acf","0x0000000000000000000000000000000000000000000000000000000000000002","0x64213b0e4a52bac468d4ac3f140242f70714381653a1919a6d57cd49c628207a","0x73baa782c55003b3a359dec04b189312565d18e7309d4a51f5f112f891e3b2ab"],"digest":[62,140,187,2,13,226,252,216,57,79,25,215,73,0,30,117,240,181,17,67,90,160,116,93,0,185,100,177,98,158,120,249]}',9:'{"modules":["oRzrCwYAAAAKAQAGAgYIAw4LBBkCBRsRByxPCHtgBtsBAwreAQUM4wEPAAICAwEHAAACAAIBAgAABgABAAEEAwEBAgECAggABwgBAAEIAAMJAAIHCAEFQUZfTFAJVHhDb250ZXh0BWFmX2xwDWFtbV9pbnRlcmZhY2UOY3JlYXRlX2xwX2NvaW4LZHVtbXlfZmllbGQEaW5pdAp0eF9jb250ZXh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgYl3CzUCu45mKHWYg3oiSlkwVBm4KKF2LVzkQ7Ux11QAgEJAAIBBQEAAAAAAQULAAcACwE4AAIA"],"dependencies":["0xefe170ec0be4d762196bedecd7a065816576198a6527c99282a2551aaa7da38c","0x0625dc2cd40aee3998a1d6620de8892964c15066e0a285d8b573910ed4c75d50","0x712579292f80c11a0c9de4ff553d6e5c4757105e83a8a3129823d2b39e65d062","0xa6baab1e668c7868991c1c3c11e144100f5734c407d020f72a01b9d1a8bcb97f","0x0000000000000000000000000000000000000000000000000000000000000001","0x2d9316f1f1a95f6d7c85a4e690ef7c359e6649773ef2c37ad7d9857adb6bef06","0xc66fabf1a9253e43c70f1cc02d40a1d18db183140ecaae2a3f58fa6b66c55acf","0x0000000000000000000000000000000000000000000000000000000000000002","0x64213b0e4a52bac468d4ac3f140242f70714381653a1919a6d57cd49c628207a","0x73baa782c55003b3a359dec04b189312565d18e7309d4a51f5f112f891e3b2ab"],"digest":[224,168,250,132,113,73,22,162,90,31,20,5,146,218,102,211,9,26,235,144,153,60,68,242,99,43,182,103,163,123,70,243]}',10:'{"modules":["oRzrCwYAAAAKAQAGAgYIAw4LBBkCBRsRByxPCHtgBtsBAwreAQUM4wEPAAICAwEHAAACAAIBAgAABgABAAEEAwEBAgECAggABwgBAAEIAAMJAAIHCAEFQUZfTFAJVHhDb250ZXh0BWFmX2xwDWFtbV9pbnRlcmZhY2UOY3JlYXRlX2xwX2NvaW4LZHVtbXlfZmllbGQEaW5pdAp0eF9jb250ZXh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgYl3CzUCu45mKHWYg3oiSlkwVBm4KKF2LVzkQ7Ux11QAgEKAAIBBQEAAAAAAQULAAcACwE4AAIA"],"dependencies":["0xefe170ec0be4d762196bedecd7a065816576198a6527c99282a2551aaa7da38c","0x0625dc2cd40aee3998a1d6620de8892964c15066e0a285d8b573910ed4c75d50","0x712579292f80c11a0c9de4ff553d6e5c4757105e83a8a3129823d2b39e65d062","0xa6baab1e668c7868991c1c3c11e144100f5734c407d020f72a01b9d1a8bcb97f","0x0000000000000000000000000000000000000000000000000000000000000001","0x2d9316f1f1a95f6d7c85a4e690ef7c359e6649773ef2c37ad7d9857adb6bef06","0xc66fabf1a9253e43c70f1cc02d40a1d18db183140ecaae2a3f58fa6b66c55acf","0x0000000000000000000000000000000000000000000000000000000000000002","0x64213b0e4a52bac468d4ac3f140242f70714381653a1919a6d57cd49c628207a","0x73baa782c55003b3a359dec04b189312565d18e7309d4a51f5f112f891e3b2ab"],"digest":[230,2,103,229,53,229,25,139,165,170,103,184,37,95,22,138,144,54,70,94,84,1,166,69,226,228,2,111,190,177,88,67]}',11:'{"modules":["oRzrCwYAAAAKAQAGAgYIAw4LBBkCBRsRByxPCHtgBtsBAwreAQUM4wEPAAICAwEHAAACAAIBAgAABgABAAEEAwEBAgECAggABwgBAAEIAAMJAAIHCAEFQUZfTFAJVHhDb250ZXh0BWFmX2xwDWFtbV9pbnRlcmZhY2UOY3JlYXRlX2xwX2NvaW4LZHVtbXlfZmllbGQEaW5pdAp0eF9jb250ZXh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgYl3CzUCu45mKHWYg3oiSlkwVBm4KKF2LVzkQ7Ux11QAgELAAIBBQEAAAAAAQULAAcACwE4AAIA"],"dependencies":["0xefe170ec0be4d762196bedecd7a065816576198a6527c99282a2551aaa7da38c","0x0625dc2cd40aee3998a1d6620de8892964c15066e0a285d8b573910ed4c75d50","0x712579292f80c11a0c9de4ff553d6e5c4757105e83a8a3129823d2b39e65d062","0xa6baab1e668c7868991c1c3c11e144100f5734c407d020f72a01b9d1a8bcb97f","0x0000000000000000000000000000000000000000000000000000000000000001","0x2d9316f1f1a95f6d7c85a4e690ef7c359e6649773ef2c37ad7d9857adb6bef06","0xc66fabf1a9253e43c70f1cc02d40a1d18db183140ecaae2a3f58fa6b66c55acf","0x0000000000000000000000000000000000000000000000000000000000000002","0x64213b0e4a52bac468d4ac3f140242f70714381653a1919a6d57cd49c628207a","0x73baa782c55003b3a359dec04b189312565d18e7309d4a51f5f112f891e3b2ab"],"digest":[47,22,229,32,128,229,189,95,254,208,76,7,63,57,67,181,242,47,139,87,115,116,187,69,186,231,157,193,217,175,119,251]}',12:'{"modules":["oRzrCwYAAAAKAQAGAgYIAw4LBBkCBRsRByxPCHtgBtsBAwreAQUM4wEPAAICAwEHAAACAAIBAgAABgABAAEEAwEBAgECAggABwgBAAEIAAMJAAIHCAEFQUZfTFAJVHhDb250ZXh0BWFmX2xwDWFtbV9pbnRlcmZhY2UOY3JlYXRlX2xwX2NvaW4LZHVtbXlfZmllbGQEaW5pdAp0eF9jb250ZXh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgYl3CzUCu45mKHWYg3oiSlkwVBm4KKF2LVzkQ7Ux11QAgEMAAIBBQEAAAAAAQULAAcACwE4AAIA"],"dependencies":["0xefe170ec0be4d762196bedecd7a065816576198a6527c99282a2551aaa7da38c","0x0625dc2cd40aee3998a1d6620de8892964c15066e0a285d8b573910ed4c75d50","0x712579292f80c11a0c9de4ff553d6e5c4757105e83a8a3129823d2b39e65d062","0xa6baab1e668c7868991c1c3c11e144100f5734c407d020f72a01b9d1a8bcb97f","0x0000000000000000000000000000000000000000000000000000000000000001","0x2d9316f1f1a95f6d7c85a4e690ef7c359e6649773ef2c37ad7d9857adb6bef06","0xc66fabf1a9253e43c70f1cc02d40a1d18db183140ecaae2a3f58fa6b66c55acf","0x0000000000000000000000000000000000000000000000000000000000000002","0x64213b0e4a52bac468d4ac3f140242f70714381653a1919a6d57cd49c628207a","0x73baa782c55003b3a359dec04b189312565d18e7309d4a51f5f112f891e3b2ab"],"digest":[84,220,49,85,231,231,205,206,223,231,112,68,34,157,61,115,234,156,6,203,2,158,212,203,215,170,136,228,68,193,188,13]}',13:'{"modules":["oRzrCwYAAAAKAQAGAgYIAw4LBBkCBRsRByxPCHtgBtsBAwreAQUM4wEPAAICAwEHAAACAAIBAgAABgABAAEEAwEBAgECAggABwgBAAEIAAMJAAIHCAEFQUZfTFAJVHhDb250ZXh0BWFmX2xwDWFtbV9pbnRlcmZhY2UOY3JlYXRlX2xwX2NvaW4LZHVtbXlfZmllbGQEaW5pdAp0eF9jb250ZXh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgYl3CzUCu45mKHWYg3oiSlkwVBm4KKF2LVzkQ7Ux11QAgENAAIBBQEAAAAAAQULAAcACwE4AAIA"],"dependencies":["0xefe170ec0be4d762196bedecd7a065816576198a6527c99282a2551aaa7da38c","0x0625dc2cd40aee3998a1d6620de8892964c15066e0a285d8b573910ed4c75d50","0x712579292f80c11a0c9de4ff553d6e5c4757105e83a8a3129823d2b39e65d062","0xa6baab1e668c7868991c1c3c11e144100f5734c407d020f72a01b9d1a8bcb97f","0x0000000000000000000000000000000000000000000000000000000000000001","0x2d9316f1f1a95f6d7c85a4e690ef7c359e6649773ef2c37ad7d9857adb6bef06","0xc66fabf1a9253e43c70f1cc02d40a1d18db183140ecaae2a3f58fa6b66c55acf","0x0000000000000000000000000000000000000000000000000000000000000002","0x64213b0e4a52bac468d4ac3f140242f70714381653a1919a6d57cd49c628207a","0x73baa782c55003b3a359dec04b189312565d18e7309d4a51f5f112f891e3b2ab"],"digest":[237,140,135,226,69,221,118,110,149,250,210,127,140,11,253,163,73,64,189,152,115,51,234,40,195,87,188,107,171,233,96,99]}',14:'{"modules":["oRzrCwYAAAAKAQAGAgYIAw4LBBkCBRsRByxPCHtgBtsBAwreAQUM4wEPAAICAwEHAAACAAIBAgAABgABAAEEAwEBAgECAggABwgBAAEIAAMJAAIHCAEFQUZfTFAJVHhDb250ZXh0BWFmX2xwDWFtbV9pbnRlcmZhY2UOY3JlYXRlX2xwX2NvaW4LZHVtbXlfZmllbGQEaW5pdAp0eF9jb250ZXh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgYl3CzUCu45mKHWYg3oiSlkwVBm4KKF2LVzkQ7Ux11QAgEOAAIBBQEAAAAAAQULAAcACwE4AAIA"],"dependencies":["0xefe170ec0be4d762196bedecd7a065816576198a6527c99282a2551aaa7da38c","0x0625dc2cd40aee3998a1d6620de8892964c15066e0a285d8b573910ed4c75d50","0x712579292f80c11a0c9de4ff553d6e5c4757105e83a8a3129823d2b39e65d062","0xa6baab1e668c7868991c1c3c11e144100f5734c407d020f72a01b9d1a8bcb97f","0x0000000000000000000000000000000000000000000000000000000000000001","0x2d9316f1f1a95f6d7c85a4e690ef7c359e6649773ef2c37ad7d9857adb6bef06","0xc66fabf1a9253e43c70f1cc02d40a1d18db183140ecaae2a3f58fa6b66c55acf","0x0000000000000000000000000000000000000000000000000000000000000002","0x64213b0e4a52bac468d4ac3f140242f70714381653a1919a6d57cd49c628207a","0x73baa782c55003b3a359dec04b189312565d18e7309d4a51f5f112f891e3b2ab"],"digest":[178,202,9,164,149,122,241,165,109,17,64,83,161,86,55,194,230,149,60,174,236,221,205,150,98,176,28,228,122,182,83,85]}',15:'{"modules":["oRzrCwYAAAAKAQAGAgYIAw4LBBkCBRsRByxPCHtgBtsBAwreAQUM4wEPAAICAwEHAAACAAIBAgAABgABAAEEAwEBAgECAggABwgBAAEIAAMJAAIHCAEFQUZfTFAJVHhDb250ZXh0BWFmX2xwDWFtbV9pbnRlcmZhY2UOY3JlYXRlX2xwX2NvaW4LZHVtbXlfZmllbGQEaW5pdAp0eF9jb250ZXh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgYl3CzUCu45mKHWYg3oiSlkwVBm4KKF2LVzkQ7Ux11QAgEPAAIBBQEAAAAAAQULAAcACwE4AAIA"],"dependencies":["0xefe170ec0be4d762196bedecd7a065816576198a6527c99282a2551aaa7da38c","0x0625dc2cd40aee3998a1d6620de8892964c15066e0a285d8b573910ed4c75d50","0x712579292f80c11a0c9de4ff553d6e5c4757105e83a8a3129823d2b39e65d062","0xa6baab1e668c7868991c1c3c11e144100f5734c407d020f72a01b9d1a8bcb97f","0x0000000000000000000000000000000000000000000000000000000000000001","0x2d9316f1f1a95f6d7c85a4e690ef7c359e6649773ef2c37ad7d9857adb6bef06","0xc66fabf1a9253e43c70f1cc02d40a1d18db183140ecaae2a3f58fa6b66c55acf","0x0000000000000000000000000000000000000000000000000000000000000002","0x64213b0e4a52bac468d4ac3f140242f70714381653a1919a6d57cd49c628207a","0x73baa782c55003b3a359dec04b189312565d18e7309d4a51f5f112f891e3b2ab"],"digest":[162,91,42,1,93,167,63,154,173,142,135,15,249,131,197,24,69,164,212,169,231,169,19,38,42,86,25,84,219,229,233,20]}',16:'{"modules":["oRzrCwYAAAAKAQAGAgYIAw4LBBkCBRsRByxPCHtgBtsBAwreAQUM4wEPAAICAwEHAAACAAIBAgAABgABAAEEAwEBAgECAggABwgBAAEIAAMJAAIHCAEFQUZfTFAJVHhDb250ZXh0BWFmX2xwDWFtbV9pbnRlcmZhY2UOY3JlYXRlX2xwX2NvaW4LZHVtbXlfZmllbGQEaW5pdAp0eF9jb250ZXh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgYl3CzUCu45mKHWYg3oiSlkwVBm4KKF2LVzkQ7Ux11QAgEQAAIBBQEAAAAAAQULAAcACwE4AAIA"],"dependencies":["0xefe170ec0be4d762196bedecd7a065816576198a6527c99282a2551aaa7da38c","0x0625dc2cd40aee3998a1d6620de8892964c15066e0a285d8b573910ed4c75d50","0x712579292f80c11a0c9de4ff553d6e5c4757105e83a8a3129823d2b39e65d062","0xa6baab1e668c7868991c1c3c11e144100f5734c407d020f72a01b9d1a8bcb97f","0x0000000000000000000000000000000000000000000000000000000000000001","0x2d9316f1f1a95f6d7c85a4e690ef7c359e6649773ef2c37ad7d9857adb6bef06","0xc66fabf1a9253e43c70f1cc02d40a1d18db183140ecaae2a3f58fa6b66c55acf","0x0000000000000000000000000000000000000000000000000000000000000002","0x64213b0e4a52bac468d4ac3f140242f70714381653a1919a6d57cd49c628207a","0x73baa782c55003b3a359dec04b189312565d18e7309d4a51f5f112f891e3b2ab"],"digest":[79,121,127,12,72,247,127,165,243,18,184,175,76,20,119,251,245,47,31,190,247,87,15,198,47,204,130,99,18,94,161,74]}',17:'{"modules":["oRzrCwYAAAAKAQAGAgYIAw4LBBkCBRsRByxPCHtgBtsBAwreAQUM4wEPAAICAwEHAAACAAIBAgAABgABAAEEAwEBAgECAggABwgBAAEIAAMJAAIHCAEFQUZfTFAJVHhDb250ZXh0BWFmX2xwDWFtbV9pbnRlcmZhY2UOY3JlYXRlX2xwX2NvaW4LZHVtbXlfZmllbGQEaW5pdAp0eF9jb250ZXh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgYl3CzUCu45mKHWYg3oiSlkwVBm4KKF2LVzkQ7Ux11QAgERAAIBBQEAAAAAAQULAAcACwE4AAIA"],"dependencies":["0xefe170ec0be4d762196bedecd7a065816576198a6527c99282a2551aaa7da38c","0x0625dc2cd40aee3998a1d6620de8892964c15066e0a285d8b573910ed4c75d50","0x712579292f80c11a0c9de4ff553d6e5c4757105e83a8a3129823d2b39e65d062","0xa6baab1e668c7868991c1c3c11e144100f5734c407d020f72a01b9d1a8bcb97f","0x0000000000000000000000000000000000000000000000000000000000000001","0x2d9316f1f1a95f6d7c85a4e690ef7c359e6649773ef2c37ad7d9857adb6bef06","0xc66fabf1a9253e43c70f1cc02d40a1d18db183140ecaae2a3f58fa6b66c55acf","0x0000000000000000000000000000000000000000000000000000000000000002","0x64213b0e4a52bac468d4ac3f140242f70714381653a1919a6d57cd49c628207a","0x73baa782c55003b3a359dec04b189312565d18e7309d4a51f5f112f891e3b2ab"],"digest":[40,28,55,168,44,135,53,11,9,113,97,54,212,21,163,15,203,241,151,5,117,250,3,22,135,69,113,175,166,166,111,19]}',18:'{"modules":["oRzrCwYAAAAKAQAGAgYIAw4LBBkCBRsRByxPCHtgBtsBAwreAQUM4wEPAAICAwEHAAACAAIBAgAABgABAAEEAwEBAgECAggABwgBAAEIAAMJAAIHCAEFQUZfTFAJVHhDb250ZXh0BWFmX2xwDWFtbV9pbnRlcmZhY2UOY3JlYXRlX2xwX2NvaW4LZHVtbXlfZmllbGQEaW5pdAp0eF9jb250ZXh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgYl3CzUCu45mKHWYg3oiSlkwVBm4KKF2LVzkQ7Ux11QAgESAAIBBQEAAAAAAQULAAcACwE4AAIA"],"dependencies":["0xefe170ec0be4d762196bedecd7a065816576198a6527c99282a2551aaa7da38c","0x0625dc2cd40aee3998a1d6620de8892964c15066e0a285d8b573910ed4c75d50","0x712579292f80c11a0c9de4ff553d6e5c4757105e83a8a3129823d2b39e65d062","0xa6baab1e668c7868991c1c3c11e144100f5734c407d020f72a01b9d1a8bcb97f","0x0000000000000000000000000000000000000000000000000000000000000001","0x2d9316f1f1a95f6d7c85a4e690ef7c359e6649773ef2c37ad7d9857adb6bef06","0xc66fabf1a9253e43c70f1cc02d40a1d18db183140ecaae2a3f58fa6b66c55acf","0x0000000000000000000000000000000000000000000000000000000000000002","0x64213b0e4a52bac468d4ac3f140242f70714381653a1919a6d57cd49c628207a","0x73baa782c55003b3a359dec04b189312565d18e7309d4a51f5f112f891e3b2ab"],"digest":[173,252,173,67,1,192,123,156,242,232,253,247,12,147,190,24,152,41,3,166,219,90,110,43,48,139,30,235,10,219,209,58]}'}}},daoFeePools:{packages:{amm:"0x5ad6890968efcf3d20899e0cec735214f1067b96e77e77d86408989998468bb2",events:"0x6f60a091637054e23915b8745c0c0d47b1d49618ee3435b5f68eccf6a44fb53d"},objects:{version:"0xb4bfb0f917f12ad2a772bea9b4f22431f6f5f9653162c3ae6fae5b99b21392b7"}},farms:{packages:{vaults:"0x7ce31301b506b4ed327523061fe95d9c347082fa60da39733f74ffad9a53f8f5",vaultsInitial:"0x4f0a1a923dd063757fd37e04a9c2cee8980008e94433c9075c390065f98e9e4b",vaultsV2:"0x2d6755e10132fc1eab5e8a4a3e7ddfdacc31884621592d95fce48ecf1e157db9",eventsV2:"0x79ee374b9e3c60c00a19fdbeaea25731bbea8f2cab9bb61bb712543e0ba55b7a"},objects:{version:"0xdc372fa9b6a538382efc560478a786fcf04e6e34850100020056c98c5c387193"}},dca:{packages:{dca:"0x409e2ace51cc5821be41a667e4cb9afa64cde49a7f940c68109db24b39ca93b8",events:"0x002134246a32eec18e68f1f5aadb8edd34856298ae6d32c145d28f3ca46c7fd1",eventsV2:"0x409e2ace51cc5821be41a667e4cb9afa64cde49a7f940c68109db24b39ca93b8"},objects:{config:"0x1b26465e9c688e3a3d2301f26e25091bc0f91708d953dc220f5697faa8ba9bd6"}},limitOrders:{packages:{limitOrders:"0xe57ee3613b7dece546f8a2d8a53145cbab41d32b86037b94f9ebfcbcfa66885a",events:"0xe57ee3613b7dece546f8a2d8a53145cbab41d32b86037b94f9ebfcbcfa66885a"}},sharedCustody:{address:"0xafe2fafac0b048c9c70a61cc1798400a85173df96b30118c40af6f3382b5a777",publicKey:"AMylYwVSuJQmTmDm6KuPlNwLnTtkk63HqOByubxxsVeC"},referralVault:{packages:{referralVault:"0xc66fabf1a9253e43c70f1cc02d40a1d18db183140ecaae2a3f58fa6b66c55acf"},objects:{referralVault:"0x35d35b0e5b177593d8c3a801462485572fc30861e6ce96a55af6dc4730709278"}},suiFrens:{packages:{suiFrens:"",suiFrensBullshark:"",accessories:"",suiFrensVault:"",suiFrensVaultCapyLabsExtension:""},objects:{capyLabsApp:"",suiFrensVault:"",suiFrensVaultStateV1:"",suiFrensVaultStateV1MetadataTable:"",suiFrensVaultCapyLabsExtension:""}},router:{packages:{utils:"0xdc15721baa82ba64822d585a7349a1508f76d94ae80e899b06e48369c257750e"}},dynamicGas:{sponsorAddress:"0xae4ba5f592e695a46d58a0579aa5d4f6ebead46be0f2d5bd229d5c292290548c"},perpetuals:{packages:{events:"0x21d001e8b07da2e3facb3e2d636bbaef43ba3c978bd84810368840b7d57c5068"},objects:{registry:"0xd0b3ea6b7a2f5887543a5a493aa70bcd0ec1a2d9c03d830504234df3e8c6a609"}},perpetualsVaults:{other:{createLpCoinPackageCompilation:'{"modules":["oRzrCwYAAAAKAQAOAg4eAywsBFgIBWBZB7kB4gEImwOAAQabBGcKggUFDIcFLAASAwcBDQIGAhMCFAIVAAICAAIBBwEAAAMADAEAAQMDDAEAAQUEAgAGBQcAAAoAAQABCwEDAAIRBgcBAAMICQoBAgQOBgEBDAQPDwEBDAUQDA0ABgwEBQACBQMIBAsFDgIIAAcIBAACCwIBCAALAwEIAAECAQoCAQgFAQkAAQsBAQkAAQgABwkAAgoCCgIKAgsBAQgFBwgEAgsDAQkACwIBCQABCwIBCAABBggEAQUBCwMBCAACCQAFDENvaW5NZXRhZGF0YQZPcHRpb24IVEVNUExBVEULVHJlYXN1cnlDYXAJVHhDb250ZXh0A1VybARjb2luCWNvbnN0YW50cw9jcmVhdGVfY3VycmVuY3kLZHVtbXlfZmllbGQEaW5pdAtscF9kZWNpbWFscxVuZXdfdW5zYWZlX2Zyb21fYnl0ZXMGb3B0aW9uFHB1YmxpY19mcmVlemVfb2JqZWN0D3B1YmxpY190cmFuc2ZlcgZzZW5kZXIEc29tZQh0ZW1wbGF0ZQh0cmFuc2Zlcgp0eF9jb250ZXh0A3VybAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAp4geY2XwRD2s2t7PYVDqpJGMi7y/Y2DrXnvMyXUc7wvCgIJCFRFTVBMQVRFCgIKCUNPSU4gTkFNRQoCERBDT0lOIERFU0NSSVBUSU9OCgI3Nmh0dHBzOi8vYWZ0ZXJtYXRoLmZpbmFuY2UvY29pbnMvcGVycGV0dWFscy9kZWZhdWx0LnN2ZwACAQkBAAAAAAIUCwARAQcABwEHAgcDEQc4AAoBOAEMAgwDCwI4AgsDCwEuEQY4AwIA"],"dependencies":["0x46234ba81f3a5ba6571383233df0f9ea5fe60a3a327537be1f5fec447bced693","0x9e20798d97c110f6b36b7b3d8543aa9246322ef2fd8d83ad79ef3325d473bc2f","0xa8172ed2a6f14cd0ee55124326685713d6f765039e7c5339f7a0b57be06fddb5","0x21d001e8b07da2e3facb3e2d636bbaef43ba3c978bd84810368840b7d57c5068","0x0000000000000000000000000000000000000000000000000000000000000001","0x0000000000000000000000000000000000000000000000000000000000000002"],"digest":[197,20,191,110,212,210,250,216,46,69,171,178,75,240,176,17,254,237,222,251,192,94,195,175,10,216,89,18,238,154,114,144]}'}},scallop:{objects:{version:"",afSuiMarket:"",coinDecimalsRegistry:"",xOracle:""}},nftAmm:{packages:{nftAmm:""},objects:{protocolFeeVault:"",treasury:"",insuranceFund:"",referralVault:""}},nfts:{packages:{mystenTransferPolicy:"0x0cb4bcc0560340eb1a1b929cabe56b33fc6449820ec8c1980d69bb98b649b802"}}};var u=chunkRJTK6ARK_cjs.a("aftermath-ts-sdk",()=>import('aftermath-ts-sdk')),p=["Aftermath","Bolt","Bluefin","BlueMove","Cetus","DeepBook","DeepBookV3","DoubleUpPump","FlowX","FlowXClmm","FullSail","HopFun","Kriya","KriyaClmm","Magma","Metastable","Momentum","MovePump","Obric","SpringSui","Steamm","SuiAi","SuiSwap","Turbos","TurbosFun","BlastFun"],x=class extends chunkQ2MQ6ISF_cjs.f{afApi;_afParams;constructor(A){super("aftermath",A),this._afParams=A,this.poolsMap=new Map(p.map(a=>[a,true]));}async ensureClient(){if(!this.client){let{AftermathApi:A,Aftermath:a}=await u(),e=this.suiClient.network;this.afApi=new A(new jsonRpc.SuiJsonRpcClient({url:jsonRpc.getJsonRpcFullnodeUrl(e),network:e}),this._afParams.addresses??l),this.client=new a("MAINNET",this.afApi);}return this.client}async getRouter(){return (await this.ensureClient()).Router()}setFetchRouteSettings(A){this.fetchSettings=A;}calcSlippage(A){return A}parseRawRouteToFormattedResult(A){let a=A.coinIn.amount,e={...A,name:this.name};return e.routes.forEach(b=>{let t=b.paths[0].coinIn.amount;b.splitPercentage=bignumber_js.BigNumber(t.toString()).div(a.toString()).times(100).toNumber();}),e}async fetchRoute(A,a){let e=await this.getRouter(),b=this.normalizeFetchRouteParams(A),{coinInType:t,coinOutType:f,swapAmount:d}=b;this.rawRouteResult=void 0;let c=await this.withTimeout(e.getCompleteTradeRouteGivenAmountIn({...this.fetchSettings,protocolWhitelist:this.getEnabledPools(),coinInType:t,coinOutType:f,coinInAmount:d},a));if(!c)throw new Error(`${this.name} fetch route returned empty response`);return this.rawRouteResult=c,{formattedResult:this.parseRawRouteToFormattedResult(c),rawRouteResult:c}}async buildSwapTransaction(A){this.validateWalletAddress();let a=await this.getRouter(),{txExtensionParams:e,slippage:b,route:t}=A,f=t?.rawRouteResult??this.rawRouteResult;if(!f)throw new Error(`${this.name} build swap transaction failed: no route available`);let d=null,c=null;if(e){let{initTx:r,coinIn:n}=e;d=r,c=n;}else d=new transactions.Transaction,d.setSender(this.walletAddress),c=await this.selectCoinInForSwap(d,BigInt(f.coinIn.amount.toString()),utils.normalizeStructTag(f.coinIn.type));let{tx:g,coinOutId:s}=await a.addTransactionForCompleteTradeRoute({walletAddress:this.walletAddress,completeRoute:f,slippage:this.calcSlippage(b),tx:d,coinInId:c});if(!s)throw new Error(`${this.name} build swap transaction failed`);return {tx:g,coinOut:s}}};
11
-
12
- exports.AftermathSwap = x;
1
+ 'use strict';var chunkYKJ7DP7U_cjs=require('../chunk-YKJ7DP7U.cjs'),chunk3CBW5I4K_cjs=require('../chunk-3CBW5I4K.cjs'),jsonRpc=require('@mysten/sui/jsonRpc'),bignumber_js=require('bignumber.js'),transactions=require('@mysten/sui/transactions'),utils=require('@mysten/sui/utils');var s={faucet:{packages:{faucet:"",suiFrensGenesisWrapper:""},objects:{faucet:"",suiFrensMint:""}},staking:{packages:{events:"0x7f6ce7ade63857c4fd16ef7783fed2dfc4d7fb7e40615abdb653030b76aef0c6",lsd:"0x1575034d2729907aefca1ac757d6ccfcd3fc7e9e77927523c06007d8353ad836",afsui:"0xf325ce1300e8dac124071d3152c5c5ee6174914f8bc2161e88329cf579246efc"},objects:{stakedSuiVault:"0x2f8f6d5da7f13ea37daa397724280483ed062769813b6f31e9788e59cc88994d",stakedSuiVaultState:"0x55486449e41d89cfbdb20e005c1c5c1007858ad5b4d5d7c047d2b3b592fe8791",safe:"0xeb685899830dd5837b47007809c76d91a098d52aabbf61e8ac467c59e5cc4610",treasury:"0xd2b95022244757b0ab9f74e2ee2fb2c3bf29dce5590fa6993a85d64bd219d7e8",referralVault:"0x4ce9a19b594599536c53edb25d22532f82f18038dc8ef618afd00fbbfb9845ef",validatorConfigsTable:"0x8536350cfb8a8efdd133a1e087b55416d431f7e8b894f77b55b20c4b799ebad9",aftermathValidator:"0xd30018ec3f5ff1a3c75656abf927a87d7f0529e6dc89c7ddd1bd27ecb05e3db2"}},pools:{packages:{amm:"0xc4049b2d1cc0f6e017fda8260e4377cecd236bd7f56a54fee120816e72e2e0dd",ammInterface:"0x8d8bba50c626753589aa5abbc006c9fa07736f55f4e6fb57481682997c0b0d52",events:"0xefe170ec0be4d762196bedecd7a065816576198a6527c99282a2551aaa7da38c",eventsV2:"0xc4049b2d1cc0f6e017fda8260e4377cecd236bd7f56a54fee120816e72e2e0dd"},objects:{poolRegistry:"0xfcc774493db2c45c79f688f88d28023a3e7d98e4ee9f48bbf5c7990f651577ae",protocolFeeVault:"0xf194d9b1bcad972e45a7dd67dd49b3ee1e3357a00a50850c52cd51bb450e13b4",treasury:"0x28e499dff5e864a2eafe476269a4f5035f1c16f338da7be18b103499abf271ce",insuranceFund:"0xf0c40d67b078000e18032334c3325c47b9ec9f3d9ae4128be820d54663d14e3b",lpCoinsTable:"0x7f3bb65251feccacc7f48461239be1008233b85594114f7bf304e5e5b340bf59"},other:{createLpCoinPackageCompilations:{0:'{"modules":["oRzrCwYAAAAKAQAGAgYIAw4LBBkCBRsRByxPCHtgBtsBAwreAQUM4wEPAAICAwEHAAACAAIBAgAABgABAAEEAwEBAgECAggABwgBAAEIAAMJAAIHCAEFQUZfTFAJVHhDb250ZXh0BWFmX2xwDWFtbV9pbnRlcmZhY2UOY3JlYXRlX2xwX2NvaW4LZHVtbXlfZmllbGQEaW5pdAp0eF9jb250ZXh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgYl3CzUCu45mKHWYg3oiSlkwVBm4KKF2LVzkQ7Ux11QAgEAAAIBBQEAAAAAAQULAAcACwE4AAIA"],"dependencies":["0xefe170ec0be4d762196bedecd7a065816576198a6527c99282a2551aaa7da38c","0x0625dc2cd40aee3998a1d6620de8892964c15066e0a285d8b573910ed4c75d50","0x712579292f80c11a0c9de4ff553d6e5c4757105e83a8a3129823d2b39e65d062","0xa6baab1e668c7868991c1c3c11e144100f5734c407d020f72a01b9d1a8bcb97f","0x0000000000000000000000000000000000000000000000000000000000000001","0x2d9316f1f1a95f6d7c85a4e690ef7c359e6649773ef2c37ad7d9857adb6bef06","0xc66fabf1a9253e43c70f1cc02d40a1d18db183140ecaae2a3f58fa6b66c55acf","0x0000000000000000000000000000000000000000000000000000000000000002","0x64213b0e4a52bac468d4ac3f140242f70714381653a1919a6d57cd49c628207a","0x73baa782c55003b3a359dec04b189312565d18e7309d4a51f5f112f891e3b2ab"],"digest":[167,102,246,194,32,223,3,45,134,147,18,9,59,94,154,58,126,34,119,96,13,193,175,198,63,222,118,4,234,110,46,214]}',1:'{"modules":["oRzrCwYAAAAKAQAGAgYIAw4LBBkCBRsRByxPCHtgBtsBAwreAQUM4wEPAAICAwEHAAACAAIBAgAABgABAAEEAwEBAgECAggABwgBAAEIAAMJAAIHCAEFQUZfTFAJVHhDb250ZXh0BWFmX2xwDWFtbV9pbnRlcmZhY2UOY3JlYXRlX2xwX2NvaW4LZHVtbXlfZmllbGQEaW5pdAp0eF9jb250ZXh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgYl3CzUCu45mKHWYg3oiSlkwVBm4KKF2LVzkQ7Ux11QAgEBAAIBBQEAAAAAAQULAAcACwE4AAIA"],"dependencies":["0xefe170ec0be4d762196bedecd7a065816576198a6527c99282a2551aaa7da38c","0x0625dc2cd40aee3998a1d6620de8892964c15066e0a285d8b573910ed4c75d50","0x712579292f80c11a0c9de4ff553d6e5c4757105e83a8a3129823d2b39e65d062","0xa6baab1e668c7868991c1c3c11e144100f5734c407d020f72a01b9d1a8bcb97f","0x0000000000000000000000000000000000000000000000000000000000000001","0x2d9316f1f1a95f6d7c85a4e690ef7c359e6649773ef2c37ad7d9857adb6bef06","0xc66fabf1a9253e43c70f1cc02d40a1d18db183140ecaae2a3f58fa6b66c55acf","0x0000000000000000000000000000000000000000000000000000000000000002","0x64213b0e4a52bac468d4ac3f140242f70714381653a1919a6d57cd49c628207a","0x73baa782c55003b3a359dec04b189312565d18e7309d4a51f5f112f891e3b2ab"],"digest":[68,93,25,253,95,37,116,117,115,245,79,81,250,68,193,193,125,175,148,139,217,235,215,33,240,45,78,14,3,86,156,253]}',2:'{"modules":["oRzrCwYAAAAKAQAGAgYIAw4LBBkCBRsRByxPCHtgBtsBAwreAQUM4wEPAAICAwEHAAACAAIBAgAABgABAAEEAwEBAgECAggABwgBAAEIAAMJAAIHCAEFQUZfTFAJVHhDb250ZXh0BWFmX2xwDWFtbV9pbnRlcmZhY2UOY3JlYXRlX2xwX2NvaW4LZHVtbXlfZmllbGQEaW5pdAp0eF9jb250ZXh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgYl3CzUCu45mKHWYg3oiSlkwVBm4KKF2LVzkQ7Ux11QAgECAAIBBQEAAAAAAQULAAcACwE4AAIA"],"dependencies":["0xefe170ec0be4d762196bedecd7a065816576198a6527c99282a2551aaa7da38c","0x0625dc2cd40aee3998a1d6620de8892964c15066e0a285d8b573910ed4c75d50","0x712579292f80c11a0c9de4ff553d6e5c4757105e83a8a3129823d2b39e65d062","0xa6baab1e668c7868991c1c3c11e144100f5734c407d020f72a01b9d1a8bcb97f","0x0000000000000000000000000000000000000000000000000000000000000001","0x2d9316f1f1a95f6d7c85a4e690ef7c359e6649773ef2c37ad7d9857adb6bef06","0xc66fabf1a9253e43c70f1cc02d40a1d18db183140ecaae2a3f58fa6b66c55acf","0x0000000000000000000000000000000000000000000000000000000000000002","0x64213b0e4a52bac468d4ac3f140242f70714381653a1919a6d57cd49c628207a","0x73baa782c55003b3a359dec04b189312565d18e7309d4a51f5f112f891e3b2ab"],"digest":[226,124,21,102,7,55,200,164,249,68,13,253,43,195,52,31,88,207,26,30,152,251,208,57,135,126,235,45,23,164,119,82]}',3:'{"modules":["oRzrCwYAAAAKAQAGAgYIAw4LBBkCBRsRByxPCHtgBtsBAwreAQUM4wEPAAICAwEHAAACAAIBAgAABgABAAEEAwEBAgECAggABwgBAAEIAAMJAAIHCAEFQUZfTFAJVHhDb250ZXh0BWFmX2xwDWFtbV9pbnRlcmZhY2UOY3JlYXRlX2xwX2NvaW4LZHVtbXlfZmllbGQEaW5pdAp0eF9jb250ZXh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgYl3CzUCu45mKHWYg3oiSlkwVBm4KKF2LVzkQ7Ux11QAgEDAAIBBQEAAAAAAQULAAcACwE4AAIA"],"dependencies":["0xefe170ec0be4d762196bedecd7a065816576198a6527c99282a2551aaa7da38c","0x0625dc2cd40aee3998a1d6620de8892964c15066e0a285d8b573910ed4c75d50","0x712579292f80c11a0c9de4ff553d6e5c4757105e83a8a3129823d2b39e65d062","0xa6baab1e668c7868991c1c3c11e144100f5734c407d020f72a01b9d1a8bcb97f","0x0000000000000000000000000000000000000000000000000000000000000001","0x2d9316f1f1a95f6d7c85a4e690ef7c359e6649773ef2c37ad7d9857adb6bef06","0xc66fabf1a9253e43c70f1cc02d40a1d18db183140ecaae2a3f58fa6b66c55acf","0x0000000000000000000000000000000000000000000000000000000000000002","0x64213b0e4a52bac468d4ac3f140242f70714381653a1919a6d57cd49c628207a","0x73baa782c55003b3a359dec04b189312565d18e7309d4a51f5f112f891e3b2ab"],"digest":[1,144,16,189,84,90,47,167,188,222,48,174,25,190,46,185,6,221,67,91,132,40,116,30,179,102,100,127,83,12,109,13]}',4:'{"modules":["oRzrCwYAAAAKAQAGAgYIAw4LBBkCBRsRByxPCHtgBtsBAwreAQUM4wEPAAICAwEHAAACAAIBAgAABgABAAEEAwEBAgECAggABwgBAAEIAAMJAAIHCAEFQUZfTFAJVHhDb250ZXh0BWFmX2xwDWFtbV9pbnRlcmZhY2UOY3JlYXRlX2xwX2NvaW4LZHVtbXlfZmllbGQEaW5pdAp0eF9jb250ZXh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgYl3CzUCu45mKHWYg3oiSlkwVBm4KKF2LVzkQ7Ux11QAgEEAAIBBQEAAAAAAQULAAcACwE4AAIA"],"dependencies":["0xefe170ec0be4d762196bedecd7a065816576198a6527c99282a2551aaa7da38c","0x0625dc2cd40aee3998a1d6620de8892964c15066e0a285d8b573910ed4c75d50","0x712579292f80c11a0c9de4ff553d6e5c4757105e83a8a3129823d2b39e65d062","0xa6baab1e668c7868991c1c3c11e144100f5734c407d020f72a01b9d1a8bcb97f","0x0000000000000000000000000000000000000000000000000000000000000001","0x2d9316f1f1a95f6d7c85a4e690ef7c359e6649773ef2c37ad7d9857adb6bef06","0xc66fabf1a9253e43c70f1cc02d40a1d18db183140ecaae2a3f58fa6b66c55acf","0x0000000000000000000000000000000000000000000000000000000000000002","0x64213b0e4a52bac468d4ac3f140242f70714381653a1919a6d57cd49c628207a","0x73baa782c55003b3a359dec04b189312565d18e7309d4a51f5f112f891e3b2ab"],"digest":[188,181,24,0,200,201,56,67,47,157,254,230,47,200,183,173,203,125,184,180,21,175,170,42,167,82,194,112,35,226,84,160]}',5:'{"modules":["oRzrCwYAAAAKAQAGAgYIAw4LBBkCBRsRByxPCHtgBtsBAwreAQUM4wEPAAICAwEHAAACAAIBAgAABgABAAEEAwEBAgECAggABwgBAAEIAAMJAAIHCAEFQUZfTFAJVHhDb250ZXh0BWFmX2xwDWFtbV9pbnRlcmZhY2UOY3JlYXRlX2xwX2NvaW4LZHVtbXlfZmllbGQEaW5pdAp0eF9jb250ZXh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgYl3CzUCu45mKHWYg3oiSlkwVBm4KKF2LVzkQ7Ux11QAgEFAAIBBQEAAAAAAQULAAcACwE4AAIA"],"dependencies":["0xefe170ec0be4d762196bedecd7a065816576198a6527c99282a2551aaa7da38c","0x0625dc2cd40aee3998a1d6620de8892964c15066e0a285d8b573910ed4c75d50","0x712579292f80c11a0c9de4ff553d6e5c4757105e83a8a3129823d2b39e65d062","0xa6baab1e668c7868991c1c3c11e144100f5734c407d020f72a01b9d1a8bcb97f","0x0000000000000000000000000000000000000000000000000000000000000001","0x2d9316f1f1a95f6d7c85a4e690ef7c359e6649773ef2c37ad7d9857adb6bef06","0xc66fabf1a9253e43c70f1cc02d40a1d18db183140ecaae2a3f58fa6b66c55acf","0x0000000000000000000000000000000000000000000000000000000000000002","0x64213b0e4a52bac468d4ac3f140242f70714381653a1919a6d57cd49c628207a","0x73baa782c55003b3a359dec04b189312565d18e7309d4a51f5f112f891e3b2ab"],"digest":[139,229,11,229,58,97,20,164,146,173,45,172,225,131,71,62,84,106,77,218,122,249,243,255,146,34,28,60,77,35,55,138]}',6:'{"modules":["oRzrCwYAAAAKAQAGAgYIAw4LBBkCBRsRByxPCHtgBtsBAwreAQUM4wEPAAICAwEHAAACAAIBAgAABgABAAEEAwEBAgECAggABwgBAAEIAAMJAAIHCAEFQUZfTFAJVHhDb250ZXh0BWFmX2xwDWFtbV9pbnRlcmZhY2UOY3JlYXRlX2xwX2NvaW4LZHVtbXlfZmllbGQEaW5pdAp0eF9jb250ZXh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgYl3CzUCu45mKHWYg3oiSlkwVBm4KKF2LVzkQ7Ux11QAgEGAAIBBQEAAAAAAQULAAcACwE4AAIA"],"dependencies":["0xefe170ec0be4d762196bedecd7a065816576198a6527c99282a2551aaa7da38c","0x0625dc2cd40aee3998a1d6620de8892964c15066e0a285d8b573910ed4c75d50","0x712579292f80c11a0c9de4ff553d6e5c4757105e83a8a3129823d2b39e65d062","0xa6baab1e668c7868991c1c3c11e144100f5734c407d020f72a01b9d1a8bcb97f","0x0000000000000000000000000000000000000000000000000000000000000001","0x2d9316f1f1a95f6d7c85a4e690ef7c359e6649773ef2c37ad7d9857adb6bef06","0xc66fabf1a9253e43c70f1cc02d40a1d18db183140ecaae2a3f58fa6b66c55acf","0x0000000000000000000000000000000000000000000000000000000000000002","0x64213b0e4a52bac468d4ac3f140242f70714381653a1919a6d57cd49c628207a","0x73baa782c55003b3a359dec04b189312565d18e7309d4a51f5f112f891e3b2ab"],"digest":[57,76,77,44,68,157,60,123,68,75,189,64,53,35,82,187,207,42,126,62,112,57,251,96,190,255,39,160,152,130,157,52]}',7:'{"modules":["oRzrCwYAAAAKAQAGAgYIAw4LBBkCBRsRByxPCHtgBtsBAwreAQUM4wEPAAICAwEHAAACAAIBAgAABgABAAEEAwEBAgECAggABwgBAAEIAAMJAAIHCAEFQUZfTFAJVHhDb250ZXh0BWFmX2xwDWFtbV9pbnRlcmZhY2UOY3JlYXRlX2xwX2NvaW4LZHVtbXlfZmllbGQEaW5pdAp0eF9jb250ZXh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgYl3CzUCu45mKHWYg3oiSlkwVBm4KKF2LVzkQ7Ux11QAgEHAAIBBQEAAAAAAQULAAcACwE4AAIA"],"dependencies":["0xefe170ec0be4d762196bedecd7a065816576198a6527c99282a2551aaa7da38c","0x0625dc2cd40aee3998a1d6620de8892964c15066e0a285d8b573910ed4c75d50","0x712579292f80c11a0c9de4ff553d6e5c4757105e83a8a3129823d2b39e65d062","0xa6baab1e668c7868991c1c3c11e144100f5734c407d020f72a01b9d1a8bcb97f","0x0000000000000000000000000000000000000000000000000000000000000001","0x2d9316f1f1a95f6d7c85a4e690ef7c359e6649773ef2c37ad7d9857adb6bef06","0xc66fabf1a9253e43c70f1cc02d40a1d18db183140ecaae2a3f58fa6b66c55acf","0x0000000000000000000000000000000000000000000000000000000000000002","0x64213b0e4a52bac468d4ac3f140242f70714381653a1919a6d57cd49c628207a","0x73baa782c55003b3a359dec04b189312565d18e7309d4a51f5f112f891e3b2ab"],"digest":[123,60,245,235,196,138,131,187,192,81,41,5,55,144,176,99,178,245,228,90,186,155,175,11,175,182,127,251,112,69,207,36]}',8:'{"modules":["oRzrCwYAAAAKAQAGAgYIAw4LBBkCBRsRByxPCHtgBtsBAwreAQUM4wEPAAICAwEHAAACAAIBAgAABgABAAEEAwEBAgECAggABwgBAAEIAAMJAAIHCAEFQUZfTFAJVHhDb250ZXh0BWFmX2xwDWFtbV9pbnRlcmZhY2UOY3JlYXRlX2xwX2NvaW4LZHVtbXlfZmllbGQEaW5pdAp0eF9jb250ZXh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgYl3CzUCu45mKHWYg3oiSlkwVBm4KKF2LVzkQ7Ux11QAgEIAAIBBQEAAAAAAQULAAcACwE4AAIA"],"dependencies":["0xefe170ec0be4d762196bedecd7a065816576198a6527c99282a2551aaa7da38c","0x0625dc2cd40aee3998a1d6620de8892964c15066e0a285d8b573910ed4c75d50","0x712579292f80c11a0c9de4ff553d6e5c4757105e83a8a3129823d2b39e65d062","0xa6baab1e668c7868991c1c3c11e144100f5734c407d020f72a01b9d1a8bcb97f","0x0000000000000000000000000000000000000000000000000000000000000001","0x2d9316f1f1a95f6d7c85a4e690ef7c359e6649773ef2c37ad7d9857adb6bef06","0xc66fabf1a9253e43c70f1cc02d40a1d18db183140ecaae2a3f58fa6b66c55acf","0x0000000000000000000000000000000000000000000000000000000000000002","0x64213b0e4a52bac468d4ac3f140242f70714381653a1919a6d57cd49c628207a","0x73baa782c55003b3a359dec04b189312565d18e7309d4a51f5f112f891e3b2ab"],"digest":[62,140,187,2,13,226,252,216,57,79,25,215,73,0,30,117,240,181,17,67,90,160,116,93,0,185,100,177,98,158,120,249]}',9:'{"modules":["oRzrCwYAAAAKAQAGAgYIAw4LBBkCBRsRByxPCHtgBtsBAwreAQUM4wEPAAICAwEHAAACAAIBAgAABgABAAEEAwEBAgECAggABwgBAAEIAAMJAAIHCAEFQUZfTFAJVHhDb250ZXh0BWFmX2xwDWFtbV9pbnRlcmZhY2UOY3JlYXRlX2xwX2NvaW4LZHVtbXlfZmllbGQEaW5pdAp0eF9jb250ZXh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgYl3CzUCu45mKHWYg3oiSlkwVBm4KKF2LVzkQ7Ux11QAgEJAAIBBQEAAAAAAQULAAcACwE4AAIA"],"dependencies":["0xefe170ec0be4d762196bedecd7a065816576198a6527c99282a2551aaa7da38c","0x0625dc2cd40aee3998a1d6620de8892964c15066e0a285d8b573910ed4c75d50","0x712579292f80c11a0c9de4ff553d6e5c4757105e83a8a3129823d2b39e65d062","0xa6baab1e668c7868991c1c3c11e144100f5734c407d020f72a01b9d1a8bcb97f","0x0000000000000000000000000000000000000000000000000000000000000001","0x2d9316f1f1a95f6d7c85a4e690ef7c359e6649773ef2c37ad7d9857adb6bef06","0xc66fabf1a9253e43c70f1cc02d40a1d18db183140ecaae2a3f58fa6b66c55acf","0x0000000000000000000000000000000000000000000000000000000000000002","0x64213b0e4a52bac468d4ac3f140242f70714381653a1919a6d57cd49c628207a","0x73baa782c55003b3a359dec04b189312565d18e7309d4a51f5f112f891e3b2ab"],"digest":[224,168,250,132,113,73,22,162,90,31,20,5,146,218,102,211,9,26,235,144,153,60,68,242,99,43,182,103,163,123,70,243]}',10:'{"modules":["oRzrCwYAAAAKAQAGAgYIAw4LBBkCBRsRByxPCHtgBtsBAwreAQUM4wEPAAICAwEHAAACAAIBAgAABgABAAEEAwEBAgECAggABwgBAAEIAAMJAAIHCAEFQUZfTFAJVHhDb250ZXh0BWFmX2xwDWFtbV9pbnRlcmZhY2UOY3JlYXRlX2xwX2NvaW4LZHVtbXlfZmllbGQEaW5pdAp0eF9jb250ZXh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgYl3CzUCu45mKHWYg3oiSlkwVBm4KKF2LVzkQ7Ux11QAgEKAAIBBQEAAAAAAQULAAcACwE4AAIA"],"dependencies":["0xefe170ec0be4d762196bedecd7a065816576198a6527c99282a2551aaa7da38c","0x0625dc2cd40aee3998a1d6620de8892964c15066e0a285d8b573910ed4c75d50","0x712579292f80c11a0c9de4ff553d6e5c4757105e83a8a3129823d2b39e65d062","0xa6baab1e668c7868991c1c3c11e144100f5734c407d020f72a01b9d1a8bcb97f","0x0000000000000000000000000000000000000000000000000000000000000001","0x2d9316f1f1a95f6d7c85a4e690ef7c359e6649773ef2c37ad7d9857adb6bef06","0xc66fabf1a9253e43c70f1cc02d40a1d18db183140ecaae2a3f58fa6b66c55acf","0x0000000000000000000000000000000000000000000000000000000000000002","0x64213b0e4a52bac468d4ac3f140242f70714381653a1919a6d57cd49c628207a","0x73baa782c55003b3a359dec04b189312565d18e7309d4a51f5f112f891e3b2ab"],"digest":[230,2,103,229,53,229,25,139,165,170,103,184,37,95,22,138,144,54,70,94,84,1,166,69,226,228,2,111,190,177,88,67]}',11:'{"modules":["oRzrCwYAAAAKAQAGAgYIAw4LBBkCBRsRByxPCHtgBtsBAwreAQUM4wEPAAICAwEHAAACAAIBAgAABgABAAEEAwEBAgECAggABwgBAAEIAAMJAAIHCAEFQUZfTFAJVHhDb250ZXh0BWFmX2xwDWFtbV9pbnRlcmZhY2UOY3JlYXRlX2xwX2NvaW4LZHVtbXlfZmllbGQEaW5pdAp0eF9jb250ZXh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgYl3CzUCu45mKHWYg3oiSlkwVBm4KKF2LVzkQ7Ux11QAgELAAIBBQEAAAAAAQULAAcACwE4AAIA"],"dependencies":["0xefe170ec0be4d762196bedecd7a065816576198a6527c99282a2551aaa7da38c","0x0625dc2cd40aee3998a1d6620de8892964c15066e0a285d8b573910ed4c75d50","0x712579292f80c11a0c9de4ff553d6e5c4757105e83a8a3129823d2b39e65d062","0xa6baab1e668c7868991c1c3c11e144100f5734c407d020f72a01b9d1a8bcb97f","0x0000000000000000000000000000000000000000000000000000000000000001","0x2d9316f1f1a95f6d7c85a4e690ef7c359e6649773ef2c37ad7d9857adb6bef06","0xc66fabf1a9253e43c70f1cc02d40a1d18db183140ecaae2a3f58fa6b66c55acf","0x0000000000000000000000000000000000000000000000000000000000000002","0x64213b0e4a52bac468d4ac3f140242f70714381653a1919a6d57cd49c628207a","0x73baa782c55003b3a359dec04b189312565d18e7309d4a51f5f112f891e3b2ab"],"digest":[47,22,229,32,128,229,189,95,254,208,76,7,63,57,67,181,242,47,139,87,115,116,187,69,186,231,157,193,217,175,119,251]}',12:'{"modules":["oRzrCwYAAAAKAQAGAgYIAw4LBBkCBRsRByxPCHtgBtsBAwreAQUM4wEPAAICAwEHAAACAAIBAgAABgABAAEEAwEBAgECAggABwgBAAEIAAMJAAIHCAEFQUZfTFAJVHhDb250ZXh0BWFmX2xwDWFtbV9pbnRlcmZhY2UOY3JlYXRlX2xwX2NvaW4LZHVtbXlfZmllbGQEaW5pdAp0eF9jb250ZXh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgYl3CzUCu45mKHWYg3oiSlkwVBm4KKF2LVzkQ7Ux11QAgEMAAIBBQEAAAAAAQULAAcACwE4AAIA"],"dependencies":["0xefe170ec0be4d762196bedecd7a065816576198a6527c99282a2551aaa7da38c","0x0625dc2cd40aee3998a1d6620de8892964c15066e0a285d8b573910ed4c75d50","0x712579292f80c11a0c9de4ff553d6e5c4757105e83a8a3129823d2b39e65d062","0xa6baab1e668c7868991c1c3c11e144100f5734c407d020f72a01b9d1a8bcb97f","0x0000000000000000000000000000000000000000000000000000000000000001","0x2d9316f1f1a95f6d7c85a4e690ef7c359e6649773ef2c37ad7d9857adb6bef06","0xc66fabf1a9253e43c70f1cc02d40a1d18db183140ecaae2a3f58fa6b66c55acf","0x0000000000000000000000000000000000000000000000000000000000000002","0x64213b0e4a52bac468d4ac3f140242f70714381653a1919a6d57cd49c628207a","0x73baa782c55003b3a359dec04b189312565d18e7309d4a51f5f112f891e3b2ab"],"digest":[84,220,49,85,231,231,205,206,223,231,112,68,34,157,61,115,234,156,6,203,2,158,212,203,215,170,136,228,68,193,188,13]}',13:'{"modules":["oRzrCwYAAAAKAQAGAgYIAw4LBBkCBRsRByxPCHtgBtsBAwreAQUM4wEPAAICAwEHAAACAAIBAgAABgABAAEEAwEBAgECAggABwgBAAEIAAMJAAIHCAEFQUZfTFAJVHhDb250ZXh0BWFmX2xwDWFtbV9pbnRlcmZhY2UOY3JlYXRlX2xwX2NvaW4LZHVtbXlfZmllbGQEaW5pdAp0eF9jb250ZXh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgYl3CzUCu45mKHWYg3oiSlkwVBm4KKF2LVzkQ7Ux11QAgENAAIBBQEAAAAAAQULAAcACwE4AAIA"],"dependencies":["0xefe170ec0be4d762196bedecd7a065816576198a6527c99282a2551aaa7da38c","0x0625dc2cd40aee3998a1d6620de8892964c15066e0a285d8b573910ed4c75d50","0x712579292f80c11a0c9de4ff553d6e5c4757105e83a8a3129823d2b39e65d062","0xa6baab1e668c7868991c1c3c11e144100f5734c407d020f72a01b9d1a8bcb97f","0x0000000000000000000000000000000000000000000000000000000000000001","0x2d9316f1f1a95f6d7c85a4e690ef7c359e6649773ef2c37ad7d9857adb6bef06","0xc66fabf1a9253e43c70f1cc02d40a1d18db183140ecaae2a3f58fa6b66c55acf","0x0000000000000000000000000000000000000000000000000000000000000002","0x64213b0e4a52bac468d4ac3f140242f70714381653a1919a6d57cd49c628207a","0x73baa782c55003b3a359dec04b189312565d18e7309d4a51f5f112f891e3b2ab"],"digest":[237,140,135,226,69,221,118,110,149,250,210,127,140,11,253,163,73,64,189,152,115,51,234,40,195,87,188,107,171,233,96,99]}',14:'{"modules":["oRzrCwYAAAAKAQAGAgYIAw4LBBkCBRsRByxPCHtgBtsBAwreAQUM4wEPAAICAwEHAAACAAIBAgAABgABAAEEAwEBAgECAggABwgBAAEIAAMJAAIHCAEFQUZfTFAJVHhDb250ZXh0BWFmX2xwDWFtbV9pbnRlcmZhY2UOY3JlYXRlX2xwX2NvaW4LZHVtbXlfZmllbGQEaW5pdAp0eF9jb250ZXh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgYl3CzUCu45mKHWYg3oiSlkwVBm4KKF2LVzkQ7Ux11QAgEOAAIBBQEAAAAAAQULAAcACwE4AAIA"],"dependencies":["0xefe170ec0be4d762196bedecd7a065816576198a6527c99282a2551aaa7da38c","0x0625dc2cd40aee3998a1d6620de8892964c15066e0a285d8b573910ed4c75d50","0x712579292f80c11a0c9de4ff553d6e5c4757105e83a8a3129823d2b39e65d062","0xa6baab1e668c7868991c1c3c11e144100f5734c407d020f72a01b9d1a8bcb97f","0x0000000000000000000000000000000000000000000000000000000000000001","0x2d9316f1f1a95f6d7c85a4e690ef7c359e6649773ef2c37ad7d9857adb6bef06","0xc66fabf1a9253e43c70f1cc02d40a1d18db183140ecaae2a3f58fa6b66c55acf","0x0000000000000000000000000000000000000000000000000000000000000002","0x64213b0e4a52bac468d4ac3f140242f70714381653a1919a6d57cd49c628207a","0x73baa782c55003b3a359dec04b189312565d18e7309d4a51f5f112f891e3b2ab"],"digest":[178,202,9,164,149,122,241,165,109,17,64,83,161,86,55,194,230,149,60,174,236,221,205,150,98,176,28,228,122,182,83,85]}',15:'{"modules":["oRzrCwYAAAAKAQAGAgYIAw4LBBkCBRsRByxPCHtgBtsBAwreAQUM4wEPAAICAwEHAAACAAIBAgAABgABAAEEAwEBAgECAggABwgBAAEIAAMJAAIHCAEFQUZfTFAJVHhDb250ZXh0BWFmX2xwDWFtbV9pbnRlcmZhY2UOY3JlYXRlX2xwX2NvaW4LZHVtbXlfZmllbGQEaW5pdAp0eF9jb250ZXh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgYl3CzUCu45mKHWYg3oiSlkwVBm4KKF2LVzkQ7Ux11QAgEPAAIBBQEAAAAAAQULAAcACwE4AAIA"],"dependencies":["0xefe170ec0be4d762196bedecd7a065816576198a6527c99282a2551aaa7da38c","0x0625dc2cd40aee3998a1d6620de8892964c15066e0a285d8b573910ed4c75d50","0x712579292f80c11a0c9de4ff553d6e5c4757105e83a8a3129823d2b39e65d062","0xa6baab1e668c7868991c1c3c11e144100f5734c407d020f72a01b9d1a8bcb97f","0x0000000000000000000000000000000000000000000000000000000000000001","0x2d9316f1f1a95f6d7c85a4e690ef7c359e6649773ef2c37ad7d9857adb6bef06","0xc66fabf1a9253e43c70f1cc02d40a1d18db183140ecaae2a3f58fa6b66c55acf","0x0000000000000000000000000000000000000000000000000000000000000002","0x64213b0e4a52bac468d4ac3f140242f70714381653a1919a6d57cd49c628207a","0x73baa782c55003b3a359dec04b189312565d18e7309d4a51f5f112f891e3b2ab"],"digest":[162,91,42,1,93,167,63,154,173,142,135,15,249,131,197,24,69,164,212,169,231,169,19,38,42,86,25,84,219,229,233,20]}',16:'{"modules":["oRzrCwYAAAAKAQAGAgYIAw4LBBkCBRsRByxPCHtgBtsBAwreAQUM4wEPAAICAwEHAAACAAIBAgAABgABAAEEAwEBAgECAggABwgBAAEIAAMJAAIHCAEFQUZfTFAJVHhDb250ZXh0BWFmX2xwDWFtbV9pbnRlcmZhY2UOY3JlYXRlX2xwX2NvaW4LZHVtbXlfZmllbGQEaW5pdAp0eF9jb250ZXh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgYl3CzUCu45mKHWYg3oiSlkwVBm4KKF2LVzkQ7Ux11QAgEQAAIBBQEAAAAAAQULAAcACwE4AAIA"],"dependencies":["0xefe170ec0be4d762196bedecd7a065816576198a6527c99282a2551aaa7da38c","0x0625dc2cd40aee3998a1d6620de8892964c15066e0a285d8b573910ed4c75d50","0x712579292f80c11a0c9de4ff553d6e5c4757105e83a8a3129823d2b39e65d062","0xa6baab1e668c7868991c1c3c11e144100f5734c407d020f72a01b9d1a8bcb97f","0x0000000000000000000000000000000000000000000000000000000000000001","0x2d9316f1f1a95f6d7c85a4e690ef7c359e6649773ef2c37ad7d9857adb6bef06","0xc66fabf1a9253e43c70f1cc02d40a1d18db183140ecaae2a3f58fa6b66c55acf","0x0000000000000000000000000000000000000000000000000000000000000002","0x64213b0e4a52bac468d4ac3f140242f70714381653a1919a6d57cd49c628207a","0x73baa782c55003b3a359dec04b189312565d18e7309d4a51f5f112f891e3b2ab"],"digest":[79,121,127,12,72,247,127,165,243,18,184,175,76,20,119,251,245,47,31,190,247,87,15,198,47,204,130,99,18,94,161,74]}',17:'{"modules":["oRzrCwYAAAAKAQAGAgYIAw4LBBkCBRsRByxPCHtgBtsBAwreAQUM4wEPAAICAwEHAAACAAIBAgAABgABAAEEAwEBAgECAggABwgBAAEIAAMJAAIHCAEFQUZfTFAJVHhDb250ZXh0BWFmX2xwDWFtbV9pbnRlcmZhY2UOY3JlYXRlX2xwX2NvaW4LZHVtbXlfZmllbGQEaW5pdAp0eF9jb250ZXh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgYl3CzUCu45mKHWYg3oiSlkwVBm4KKF2LVzkQ7Ux11QAgERAAIBBQEAAAAAAQULAAcACwE4AAIA"],"dependencies":["0xefe170ec0be4d762196bedecd7a065816576198a6527c99282a2551aaa7da38c","0x0625dc2cd40aee3998a1d6620de8892964c15066e0a285d8b573910ed4c75d50","0x712579292f80c11a0c9de4ff553d6e5c4757105e83a8a3129823d2b39e65d062","0xa6baab1e668c7868991c1c3c11e144100f5734c407d020f72a01b9d1a8bcb97f","0x0000000000000000000000000000000000000000000000000000000000000001","0x2d9316f1f1a95f6d7c85a4e690ef7c359e6649773ef2c37ad7d9857adb6bef06","0xc66fabf1a9253e43c70f1cc02d40a1d18db183140ecaae2a3f58fa6b66c55acf","0x0000000000000000000000000000000000000000000000000000000000000002","0x64213b0e4a52bac468d4ac3f140242f70714381653a1919a6d57cd49c628207a","0x73baa782c55003b3a359dec04b189312565d18e7309d4a51f5f112f891e3b2ab"],"digest":[40,28,55,168,44,135,53,11,9,113,97,54,212,21,163,15,203,241,151,5,117,250,3,22,135,69,113,175,166,166,111,19]}',18:'{"modules":["oRzrCwYAAAAKAQAGAgYIAw4LBBkCBRsRByxPCHtgBtsBAwreAQUM4wEPAAICAwEHAAACAAIBAgAABgABAAEEAwEBAgECAggABwgBAAEIAAMJAAIHCAEFQUZfTFAJVHhDb250ZXh0BWFmX2xwDWFtbV9pbnRlcmZhY2UOY3JlYXRlX2xwX2NvaW4LZHVtbXlfZmllbGQEaW5pdAp0eF9jb250ZXh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgYl3CzUCu45mKHWYg3oiSlkwVBm4KKF2LVzkQ7Ux11QAgESAAIBBQEAAAAAAQULAAcACwE4AAIA"],"dependencies":["0xefe170ec0be4d762196bedecd7a065816576198a6527c99282a2551aaa7da38c","0x0625dc2cd40aee3998a1d6620de8892964c15066e0a285d8b573910ed4c75d50","0x712579292f80c11a0c9de4ff553d6e5c4757105e83a8a3129823d2b39e65d062","0xa6baab1e668c7868991c1c3c11e144100f5734c407d020f72a01b9d1a8bcb97f","0x0000000000000000000000000000000000000000000000000000000000000001","0x2d9316f1f1a95f6d7c85a4e690ef7c359e6649773ef2c37ad7d9857adb6bef06","0xc66fabf1a9253e43c70f1cc02d40a1d18db183140ecaae2a3f58fa6b66c55acf","0x0000000000000000000000000000000000000000000000000000000000000002","0x64213b0e4a52bac468d4ac3f140242f70714381653a1919a6d57cd49c628207a","0x73baa782c55003b3a359dec04b189312565d18e7309d4a51f5f112f891e3b2ab"],"digest":[173,252,173,67,1,192,123,156,242,232,253,247,12,147,190,24,152,41,3,166,219,90,110,43,48,139,30,235,10,219,209,58]}'}}},daoFeePools:{packages:{amm:"0x5ad6890968efcf3d20899e0cec735214f1067b96e77e77d86408989998468bb2",events:"0x6f60a091637054e23915b8745c0c0d47b1d49618ee3435b5f68eccf6a44fb53d"},objects:{version:"0xb4bfb0f917f12ad2a772bea9b4f22431f6f5f9653162c3ae6fae5b99b21392b7"}},farms:{packages:{vaults:"0x7ce31301b506b4ed327523061fe95d9c347082fa60da39733f74ffad9a53f8f5",vaultsInitial:"0x4f0a1a923dd063757fd37e04a9c2cee8980008e94433c9075c390065f98e9e4b",vaultsV2:"0x2d6755e10132fc1eab5e8a4a3e7ddfdacc31884621592d95fce48ecf1e157db9",eventsV2:"0x79ee374b9e3c60c00a19fdbeaea25731bbea8f2cab9bb61bb712543e0ba55b7a"},objects:{version:"0xdc372fa9b6a538382efc560478a786fcf04e6e34850100020056c98c5c387193"}},dca:{packages:{dca:"0x409e2ace51cc5821be41a667e4cb9afa64cde49a7f940c68109db24b39ca93b8",events:"0x002134246a32eec18e68f1f5aadb8edd34856298ae6d32c145d28f3ca46c7fd1",eventsV2:"0x409e2ace51cc5821be41a667e4cb9afa64cde49a7f940c68109db24b39ca93b8"},objects:{config:"0x1b26465e9c688e3a3d2301f26e25091bc0f91708d953dc220f5697faa8ba9bd6"}},limitOrders:{packages:{limitOrders:"0xe57ee3613b7dece546f8a2d8a53145cbab41d32b86037b94f9ebfcbcfa66885a",events:"0xe57ee3613b7dece546f8a2d8a53145cbab41d32b86037b94f9ebfcbcfa66885a"}},sharedCustody:{address:"0xafe2fafac0b048c9c70a61cc1798400a85173df96b30118c40af6f3382b5a777",publicKey:"AMylYwVSuJQmTmDm6KuPlNwLnTtkk63HqOByubxxsVeC"},referralVault:{packages:{referralVault:"0xc66fabf1a9253e43c70f1cc02d40a1d18db183140ecaae2a3f58fa6b66c55acf"},objects:{referralVault:"0x35d35b0e5b177593d8c3a801462485572fc30861e6ce96a55af6dc4730709278"}},suiFrens:{packages:{suiFrens:"",suiFrensBullshark:"",accessories:"",suiFrensVault:"",suiFrensVaultCapyLabsExtension:""},objects:{capyLabsApp:"",suiFrensVault:"",suiFrensVaultStateV1:"",suiFrensVaultStateV1MetadataTable:"",suiFrensVaultCapyLabsExtension:""}},router:{packages:{utils:"0xdc15721baa82ba64822d585a7349a1508f76d94ae80e899b06e48369c257750e"}},dynamicGas:{sponsorAddress:"0xae4ba5f592e695a46d58a0579aa5d4f6ebead46be0f2d5bd229d5c292290548c"},perpetuals:{packages:{events:"0x21d001e8b07da2e3facb3e2d636bbaef43ba3c978bd84810368840b7d57c5068"},objects:{registry:"0xd0b3ea6b7a2f5887543a5a493aa70bcd0ec1a2d9c03d830504234df3e8c6a609"}},perpetualsVaults:{other:{createLpCoinPackageCompilation:'{"modules":["oRzrCwYAAAAKAQAOAg4eAywsBFgIBWBZB7kB4gEImwOAAQabBGcKggUFDIcFLAASAwcBDQIGAhMCFAIVAAICAAIBBwEAAAMADAEAAQMDDAEAAQUEAgAGBQcAAAoAAQABCwEDAAIRBgcBAAMICQoBAgQOBgEBDAQPDwEBDAUQDA0ABgwEBQACBQMIBAsFDgIIAAcIBAACCwIBCAALAwEIAAECAQoCAQgFAQkAAQsBAQkAAQgABwkAAgoCCgIKAgsBAQgFBwgEAgsDAQkACwIBCQABCwIBCAABBggEAQUBCwMBCAACCQAFDENvaW5NZXRhZGF0YQZPcHRpb24IVEVNUExBVEULVHJlYXN1cnlDYXAJVHhDb250ZXh0A1VybARjb2luCWNvbnN0YW50cw9jcmVhdGVfY3VycmVuY3kLZHVtbXlfZmllbGQEaW5pdAtscF9kZWNpbWFscxVuZXdfdW5zYWZlX2Zyb21fYnl0ZXMGb3B0aW9uFHB1YmxpY19mcmVlemVfb2JqZWN0D3B1YmxpY190cmFuc2ZlcgZzZW5kZXIEc29tZQh0ZW1wbGF0ZQh0cmFuc2Zlcgp0eF9jb250ZXh0A3VybAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAp4geY2XwRD2s2t7PYVDqpJGMi7y/Y2DrXnvMyXUc7wvCgIJCFRFTVBMQVRFCgIKCUNPSU4gTkFNRQoCERBDT0lOIERFU0NSSVBUSU9OCgI3Nmh0dHBzOi8vYWZ0ZXJtYXRoLmZpbmFuY2UvY29pbnMvcGVycGV0dWFscy9kZWZhdWx0LnN2ZwACAQkBAAAAAAIUCwARAQcABwEHAgcDEQc4AAoBOAEMAgwDCwI4AgsDCwEuEQY4AwIA"],"dependencies":["0x46234ba81f3a5ba6571383233df0f9ea5fe60a3a327537be1f5fec447bced693","0x9e20798d97c110f6b36b7b3d8543aa9246322ef2fd8d83ad79ef3325d473bc2f","0xa8172ed2a6f14cd0ee55124326685713d6f765039e7c5339f7a0b57be06fddb5","0x21d001e8b07da2e3facb3e2d636bbaef43ba3c978bd84810368840b7d57c5068","0x0000000000000000000000000000000000000000000000000000000000000001","0x0000000000000000000000000000000000000000000000000000000000000002"],"digest":[197,20,191,110,212,210,250,216,46,69,171,178,75,240,176,17,254,237,222,251,192,94,195,175,10,216,89,18,238,154,114,144]}'}},scallop:{objects:{version:"",afSuiMarket:"",coinDecimalsRegistry:"",xOracle:""}},nftAmm:{packages:{nftAmm:""},objects:{protocolFeeVault:"",treasury:"",insuranceFund:"",referralVault:""}},nfts:{packages:{mystenTransferPolicy:"0x0cb4bcc0560340eb1a1b929cabe56b33fc6449820ec8c1980d69bb98b649b802"}}};var u=chunkYKJ7DP7U_cjs.a("aftermath-ts-sdk",()=>import('aftermath-ts-sdk')),p=["Aftermath","Bolt","Bluefin","BlueMove","Cetus","DeepBook","DeepBookV3","DoubleUpPump","FlowX","FlowXClmm","FullSail","HopFun","Kriya","KriyaClmm","Magma","Metastable","Momentum","MovePump","Obric","SpringSui","Steamm","SuiAi","SuiSwap","Turbos","TurbosFun","BlastFun"],r=class extends chunk3CBW5I4K_cjs.f{constructor(A){super("aftermath",A);this.params=A;this.poolsMap=new Map(p.map(e=>[e,true])),this.params.addresses||(console.warn("[AftermathSwap] No custom addresses provided, using default config addresses. If you are using a different deployment of Aftermath, please provide the corresponding addresses in the constructor params."),this.params.addresses=s);}params;afApi;async ensureClient(A){if(!this.client||A){let{AftermathApi:e,Aftermath:a}=await u(),c=this.suiClient.network;this.afApi=new e(new jsonRpc.SuiJsonRpcClient({url:jsonRpc.getJsonRpcFullnodeUrl(c),network:c}),this.params.addresses??s),this.client=await a.create({network:"MAINNET",addresses:this.params.addresses??s,api:this.afApi});}return this.client}async setSuiClient(A){super.setSuiClient(A),await this.ensureClient(true).catch(e=>{console.error("Failed to initialize Aftermath client with new Sui client",e);});}async getRouter(){return (await this.ensureClient()).Router()}setFetchRouteSettings(A){this.fetchSettings=A;}calcSlippage(A){return A}parseRawRouteToFormattedResult(A){let e=A.coinIn.amount,a={...A,name:this.name};return a.routes.forEach(c=>{let t=c.paths[0].coinIn.amount;c.splitPercentage=bignumber_js.BigNumber(t.toString()).div(e.toString()).times(100).toNumber();}),a}async fetchRoute(A,e){let a=await this.getRouter(),c=this.normalizeFetchRouteParams(A),{coinInType:t,coinOutType:b,swapAmount:f}=c;this.rawRouteResult=void 0;let d=await this.withTimeout(a.getCompleteTradeRouteGivenAmountIn({...this.fetchSettings,protocolWhitelist:this.getEnabledPools(),coinInType:t,coinOutType:b,coinInAmount:f},e));if(!d)throw new Error(`${this.name} fetch route returned empty response`);return this.rawRouteResult=d,{formattedResult:this.parseRawRouteToFormattedResult(d),rawRouteResult:d}}async buildSwapTransaction(A){this.validateWalletAddress();let e=await this.getRouter(),{txExtensionParams:a,slippage:c,route:t}=A,b=t?.rawRouteResult??this.rawRouteResult;if(!b)throw new Error(`${this.name} build swap transaction failed: no route available`);let f=null,d=null;if(a){let{initTx:g,coinIn:i}=a;f=g,d=i;}else f=new transactions.Transaction,f.setSender(this.walletAddress),d=await this.selectCoinInForSwap(f,BigInt(b.coinIn.amount.toString()),utils.normalizeStructTag(b.coinIn.type));let{tx:x,coinOutId:o}=await e.addTransactionForCompleteTradeRoute({walletAddress:this.walletAddress,completeRoute:b,slippage:this.calcSlippage(c),tx:f,coinInId:d});if(!o)throw new Error(`${this.name} build swap transaction failed`);return {tx:x,coinOut:o}}};exports.AftermathSwap=r;
@@ -1,21 +1,22 @@
1
1
  import * as _mysten_sui_transactions from '@mysten/sui/transactions';
2
2
  import { Transaction } from '@mysten/sui/transactions';
3
- import { RouterProtocolName, RouterCompleteTradeRoute, ApiRouterPartialCompleteTradeRouteBody, Aftermath, AftermathApi, ConfigAddresses } from 'aftermath-ts-sdk';
3
+ import { RouterProtocolName, RouterCompleteTradeRoute, ApiRouterPartialCompleteTradeRouteBody, Aftermath, ConfigAddresses } from 'aftermath-ts-sdk';
4
4
  export { Aftermath, RouterCompleteTradeRoute } from 'aftermath-ts-sdk';
5
- import { S as SwapSdkBase, a as SwapSdkConstructorParams, b as FetchRouteParams, e as FetchRouteResult, d as SwapParams } from '../base-tXJdbzpP.js';
6
- import '@mysten/sui/client';
5
+ import { S as SwapSdkBase, a as SwapSdkConstructorParams, F as FetchRouteParams, b as FetchRouteResult, c as SwapParams } from '../base-D9ApraXl.cjs';
6
+ import { ClientWithCoreApi } from '@mysten/sui/client';
7
7
  import '@mysten/sui/grpc';
8
8
  import 'events';
9
9
 
10
10
  type FetchRouteSettings = Omit<ApiRouterPartialCompleteTradeRouteBody, 'coinInType' | 'coinOutType' | 'coinInAmount' | 'protocolWhitelist' | 'protocolBlacklist'>;
11
11
 
12
12
  declare class AftermathSwap extends SwapSdkBase<RouterProtocolName, RouterCompleteTradeRoute, FetchRouteSettings, Aftermath> {
13
- afApi?: AftermathApi;
14
- private _afParams;
13
+ private readonly params;
14
+ private afApi?;
15
15
  constructor(params: SwapSdkConstructorParams<FetchRouteSettings> & {
16
16
  addresses?: ConfigAddresses;
17
17
  });
18
- ensureClient(): Promise<Aftermath>;
18
+ ensureClient(force?: boolean): Promise<Aftermath>;
19
+ setSuiClient(client: ClientWithCoreApi): Promise<void>;
19
20
  private getRouter;
20
21
  setFetchRouteSettings(settings: FetchRouteSettings): void;
21
22
  calcSlippage(slippageInDecimal: number): number;
@@ -1,21 +1,22 @@
1
1
  import * as _mysten_sui_transactions from '@mysten/sui/transactions';
2
2
  import { Transaction } from '@mysten/sui/transactions';
3
- import { RouterProtocolName, RouterCompleteTradeRoute, ApiRouterPartialCompleteTradeRouteBody, Aftermath, AftermathApi, ConfigAddresses } from 'aftermath-ts-sdk';
3
+ import { RouterProtocolName, RouterCompleteTradeRoute, ApiRouterPartialCompleteTradeRouteBody, Aftermath, ConfigAddresses } from 'aftermath-ts-sdk';
4
4
  export { Aftermath, RouterCompleteTradeRoute } from 'aftermath-ts-sdk';
5
- import { S as SwapSdkBase, a as SwapSdkConstructorParams, b as FetchRouteParams, e as FetchRouteResult, d as SwapParams } from '../base-tXJdbzpP.js';
6
- import '@mysten/sui/client';
5
+ import { S as SwapSdkBase, a as SwapSdkConstructorParams, F as FetchRouteParams, b as FetchRouteResult, c as SwapParams } from '../base-D9ApraXl.js';
6
+ import { ClientWithCoreApi } from '@mysten/sui/client';
7
7
  import '@mysten/sui/grpc';
8
8
  import 'events';
9
9
 
10
10
  type FetchRouteSettings = Omit<ApiRouterPartialCompleteTradeRouteBody, 'coinInType' | 'coinOutType' | 'coinInAmount' | 'protocolWhitelist' | 'protocolBlacklist'>;
11
11
 
12
12
  declare class AftermathSwap extends SwapSdkBase<RouterProtocolName, RouterCompleteTradeRoute, FetchRouteSettings, Aftermath> {
13
- afApi?: AftermathApi;
14
- private _afParams;
13
+ private readonly params;
14
+ private afApi?;
15
15
  constructor(params: SwapSdkConstructorParams<FetchRouteSettings> & {
16
16
  addresses?: ConfigAddresses;
17
17
  });
18
- ensureClient(): Promise<Aftermath>;
18
+ ensureClient(force?: boolean): Promise<Aftermath>;
19
+ setSuiClient(client: ClientWithCoreApi): Promise<void>;
19
20
  private getRouter;
20
21
  setFetchRouteSettings(settings: FetchRouteSettings): void;
21
22
  calcSlippage(slippageInDecimal: number): number;