curvance 4.0.2 → 4.0.4

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.
Files changed (61) hide show
  1. package/dist/abis/ProtocolReader.json +64 -0
  2. package/dist/chains/monad-mainnet.json +1 -26
  3. package/dist/classes/CToken.d.ts +33 -6
  4. package/dist/classes/CToken.d.ts.map +1 -1
  5. package/dist/classes/CToken.js +325 -51
  6. package/dist/classes/CToken.js.map +1 -1
  7. package/dist/classes/DexAggregators/IDexAgg.d.ts +3 -1
  8. package/dist/classes/DexAggregators/IDexAgg.d.ts.map +1 -1
  9. package/dist/classes/DexAggregators/Kuru.d.ts +3 -3
  10. package/dist/classes/DexAggregators/Kuru.d.ts.map +1 -1
  11. package/dist/classes/DexAggregators/Kuru.js +19 -9
  12. package/dist/classes/DexAggregators/Kuru.js.map +1 -1
  13. package/dist/classes/DexAggregators/KyberSwap.d.ts +3 -3
  14. package/dist/classes/DexAggregators/KyberSwap.d.ts.map +1 -1
  15. package/dist/classes/DexAggregators/KyberSwap.js +97 -14
  16. package/dist/classes/DexAggregators/KyberSwap.js.map +1 -1
  17. package/dist/classes/DexAggregators/MultiDexAgg.d.ts +3 -3
  18. package/dist/classes/DexAggregators/MultiDexAgg.d.ts.map +1 -1
  19. package/dist/classes/DexAggregators/MultiDexAgg.js +13 -13
  20. package/dist/classes/DexAggregators/MultiDexAgg.js.map +1 -1
  21. package/dist/classes/OracleManager.js.map +1 -1
  22. package/dist/classes/ProtocolReader.d.ts +10 -0
  23. package/dist/classes/ProtocolReader.d.ts.map +1 -1
  24. package/dist/classes/ProtocolReader.js +4 -0
  25. package/dist/classes/ProtocolReader.js.map +1 -1
  26. package/dist/classes/Zapper.d.ts.map +1 -1
  27. package/dist/classes/Zapper.js +39 -2
  28. package/dist/classes/Zapper.js.map +1 -1
  29. package/dist/contracts/monad-mainnet.json +1 -1
  30. package/dist/feePolicy.d.ts +182 -0
  31. package/dist/feePolicy.d.ts.map +1 -0
  32. package/dist/feePolicy.js +110 -0
  33. package/dist/feePolicy.js.map +1 -0
  34. package/dist/index.d.ts +1 -0
  35. package/dist/index.d.ts.map +1 -1
  36. package/dist/index.js +1 -0
  37. package/dist/index.js.map +1 -1
  38. package/dist/retry-provider.js +3 -3
  39. package/dist/retry-provider.js.map +1 -1
  40. package/dist/setup.d.ts +8 -1
  41. package/dist/setup.d.ts.map +1 -1
  42. package/dist/setup.js +3 -1
  43. package/dist/setup.js.map +1 -1
  44. package/package.json +1 -1
  45. package/dist/chains/arb-sepolia.json +0 -44
  46. package/dist/classes/DexAggregators/KuruMainnet.d.ts +0 -1
  47. package/dist/classes/DexAggregators/KuruMainnet.d.ts.map +0 -1
  48. package/dist/classes/DexAggregators/KuruMainnet.js +0 -228
  49. package/dist/classes/DexAggregators/KuruMainnet.js.map +0 -1
  50. package/dist/classes/Kuru.d.ts +0 -59
  51. package/dist/classes/Kuru.d.ts.map +0 -1
  52. package/dist/classes/Kuru.js +0 -167
  53. package/dist/classes/Kuru.js.map +0 -1
  54. package/dist/classes/KuruMainnet.d.ts +0 -59
  55. package/dist/classes/KuruMainnet.d.ts.map +0 -1
  56. package/dist/classes/KuruMainnet.js +0 -167
  57. package/dist/classes/KuruMainnet.js.map +0 -1
  58. package/dist/snapshot.d.ts +0 -53
  59. package/dist/snapshot.d.ts.map +0 -1
  60. package/dist/snapshot.js +0 -103
  61. package/dist/snapshot.js.map +0 -1
@@ -0,0 +1,110 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NO_FEE_POLICY = exports.CURVANCE_DAO_FEE_RECEIVER = exports.CURVANCE_FEE_BPS = void 0;
4
+ exports.flatFeePolicy = flatFeePolicy;
5
+ const chains_1 = require("./chains");
6
+ /** Fee BPS charged on all DEX swaps via KyberSwap's `feeAmount` parameter.
7
+ * Must match the on-chain KyberSwapChecker.FEE_BPS constant — if they
8
+ * diverge, every swap reverts (checker enforces exact match).
9
+ * To change the fee: update this constant AND redeploy the checker. */
10
+ exports.CURVANCE_FEE_BPS = 4n;
11
+ /** Curvance DAO fee receiver — same wallet used for protocol interest fees
12
+ * and existing Kuru aggregator referrer fees. Must match
13
+ * centralRegistry.daoAddress() — the on-chain checker validates
14
+ * dynamically per-swap. If DAO permissions transfer on-chain without
15
+ * updating this constant, every swap reverts. */
16
+ exports.CURVANCE_DAO_FEE_RECEIVER = '0x0Acb7eF4D8733C719d60e0992B489b629bc55C02';
17
+ const NATIVE_ADDRESS = '0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee';
18
+ /**
19
+ * Default fee policy: flat BPS for all operations, with no-op exemptions for
20
+ * same-token and native↔wrapped routes. Optionally supports a stable→stable
21
+ * tier when a classifier is provided.
22
+ *
23
+ * @example
24
+ * // Simple flat 4 bps everywhere except no-ops:
25
+ * flatFeePolicy({
26
+ * bps: 4n,
27
+ * feeReceiver: CURVANCE_DAO_FEE_RECEIVER,
28
+ * chain: 'monad-mainnet',
29
+ * })
30
+ *
31
+ * @example
32
+ * // 4 bps default, 1 bps on stable→stable pairs:
33
+ * const STABLES = new Set(['0xUSDC...', '0xAUSD...', '0xUSDT...']);
34
+ * flatFeePolicy({
35
+ * bps: 4n,
36
+ * stableToStableBps: 1n,
37
+ * feeReceiver: CURVANCE_DAO_FEE_RECEIVER,
38
+ * chain: 'monad-mainnet',
39
+ * classify: (addr) => STABLES.has(addr.toLowerCase()) ? 'stable' : 'volatile',
40
+ * })
41
+ */
42
+ function flatFeePolicy(config) {
43
+ const { bps, feeReceiver, chain, stableToStableBps, classify } = config;
44
+ if (bps < 0n) {
45
+ throw new Error(`flatFeePolicy: bps must be non-negative, got ${bps}`);
46
+ }
47
+ if (bps >= 10000n) {
48
+ throw new Error(`flatFeePolicy: bps must be < 10000 (100%), got ${bps}`);
49
+ }
50
+ if (stableToStableBps !== undefined) {
51
+ if (stableToStableBps < 0n || stableToStableBps >= 10000n) {
52
+ throw new Error(`flatFeePolicy: stableToStableBps must be in [0, 10000), got ${stableToStableBps}`);
53
+ }
54
+ }
55
+ // Resolve wrapped-native for the chain at construction time. This is
56
+ // required so the policy can identify native↔wrapped no-ops without the
57
+ // call site having to pre-filter them.
58
+ const chainCfg = chains_1.chain_config[chain];
59
+ if (!chainCfg) {
60
+ throw new Error(`flatFeePolicy: unknown chain '${chain}'`);
61
+ }
62
+ const wrappedNativeLower = chainCfg.wrapped_native.toLowerCase();
63
+ return {
64
+ feeReceiver,
65
+ getFeeBps(ctx) {
66
+ const inLower = ctx.inputToken.toLowerCase();
67
+ const outLower = ctx.outputToken.toLowerCase();
68
+ // No-op: same input and output token (zapping a token into its
69
+ // own market). SimpleZapper.swapAndDeposit handles this on-chain
70
+ // via _isMatchingToken — no real swap occurs, no fee should apply.
71
+ if (inLower === outLower)
72
+ return 0n;
73
+ // No-op: native↔wrapped. Curvance native zappers handle wrap/unwrap
74
+ // without a DEX call, so no fee applies. This exemption is
75
+ // unconditional — native↔wrapped is always a no-op regardless of
76
+ // which call site invokes the policy.
77
+ if ((inLower === NATIVE_ADDRESS && outLower === wrappedNativeLower) ||
78
+ (inLower === wrappedNativeLower && outLower === NATIVE_ADDRESS)) {
79
+ return 0n;
80
+ }
81
+ // Stable→stable tier (only when both classify and stableToStableBps
82
+ // are provided).
83
+ if (classify && stableToStableBps !== undefined) {
84
+ const inClass = classify(ctx.inputToken);
85
+ const outClass = classify(ctx.outputToken);
86
+ if (inClass === 'stable' && outClass === 'stable') {
87
+ return stableToStableBps;
88
+ }
89
+ }
90
+ return bps;
91
+ },
92
+ };
93
+ }
94
+ /**
95
+ * Convenience: a no-op fee policy that returns 0 bps for all operations.
96
+ * This is the default when no policy is configured in setupChain — it
97
+ * preserves backward compatibility with pre-fee-policy SDK behavior.
98
+ *
99
+ * The receiver is set to the Curvance DAO address for consistency, but it's
100
+ * never used since getFeeBps always returns 0n.
101
+ *
102
+ * Frozen to prevent accidental mutation. Anyone needing a customized no-op
103
+ * variant should construct a fresh `flatFeePolicy({ bps: 0n, ... })` instead
104
+ * of mutating this singleton.
105
+ */
106
+ exports.NO_FEE_POLICY = Object.freeze({
107
+ feeReceiver: exports.CURVANCE_DAO_FEE_RECEIVER,
108
+ getFeeBps: () => 0n,
109
+ });
110
+ //# sourceMappingURL=feePolicy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"feePolicy.js","sourceRoot":"","sources":["../src/feePolicy.ts"],"names":[],"mappings":";;;AAwLA,sCA2DC;AAhPD,qCAAwC;AAqHxC;;;wEAGwE;AAC3D,QAAA,gBAAgB,GAAG,EAAE,CAAC;AAEnC;;;;kDAIkD;AACrC,QAAA,yBAAyB,GAClC,4CAA4C,CAAC;AA0BjD,MAAM,cAAc,GAAG,4CAA4C,CAAC;AAEpE;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,SAAgB,aAAa,CAAC,MAA2B;IACrD,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,iBAAiB,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;IAExE,IAAI,GAAG,GAAG,EAAE,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,gDAAgD,GAAG,EAAE,CAAC,CAAC;IAC3E,CAAC;IACD,IAAI,GAAG,IAAI,MAAM,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,kDAAkD,GAAG,EAAE,CAAC,CAAC;IAC7E,CAAC;IACD,IAAI,iBAAiB,KAAK,SAAS,EAAE,CAAC;QAClC,IAAI,iBAAiB,GAAG,EAAE,IAAI,iBAAiB,IAAI,MAAM,EAAE,CAAC;YACxD,MAAM,IAAI,KAAK,CAAC,+DAA+D,iBAAiB,EAAE,CAAC,CAAC;QACxG,CAAC;IACL,CAAC;IAED,qEAAqE;IACrE,wEAAwE;IACxE,uCAAuC;IACvC,MAAM,QAAQ,GAAG,qBAAY,CAAC,KAAK,CAAC,CAAC;IACrC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,iCAAiC,KAAK,GAAG,CAAC,CAAC;IAC/D,CAAC;IACD,MAAM,kBAAkB,GAAG,QAAQ,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;IAEjE,OAAO;QACH,WAAW;QACX,SAAS,CAAC,GAAqB;YAC3B,MAAM,OAAO,GAAG,GAAG,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;YAC7C,MAAM,QAAQ,GAAG,GAAG,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC;YAE/C,+DAA+D;YAC/D,iEAAiE;YACjE,mEAAmE;YACnE,IAAI,OAAO,KAAK,QAAQ;gBAAE,OAAO,EAAE,CAAC;YAEpC,oEAAoE;YACpE,2DAA2D;YAC3D,iEAAiE;YACjE,sCAAsC;YACtC,IACI,CAAC,OAAO,KAAK,cAAc,IAAI,QAAQ,KAAK,kBAAkB,CAAC;gBAC/D,CAAC,OAAO,KAAK,kBAAkB,IAAI,QAAQ,KAAK,cAAc,CAAC,EACjE,CAAC;gBACC,OAAO,EAAE,CAAC;YACd,CAAC;YAED,oEAAoE;YACpE,iBAAiB;YACjB,IAAI,QAAQ,IAAI,iBAAiB,KAAK,SAAS,EAAE,CAAC;gBAC9C,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;gBACzC,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;gBAC3C,IAAI,OAAO,KAAK,QAAQ,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;oBAChD,OAAO,iBAAiB,CAAC;gBAC7B,CAAC;YACL,CAAC;YAED,OAAO,GAAG,CAAC;QACf,CAAC;KACJ,CAAC;AACN,CAAC;AAED;;;;;;;;;;;GAWG;AACU,QAAA,aAAa,GAAc,MAAM,CAAC,MAAM,CAAC;IAClD,WAAW,EAAE,iCAAyB;IACtC,SAAS,EAAE,GAAG,EAAE,CAAC,EAAE;CACtB,CAAC,CAAC"}
package/dist/index.d.ts CHANGED
@@ -8,4 +8,5 @@ export * from './retry-provider';
8
8
  export * from './contracts';
9
9
  export * from './chains';
10
10
  export * from './validation';
11
+ export * from './feePolicy';
11
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC"}
package/dist/index.js CHANGED
@@ -24,4 +24,5 @@ __exportStar(require("./retry-provider"), exports);
24
24
  __exportStar(require("./contracts"), exports);
25
25
  __exportStar(require("./chains"), exports);
26
26
  __exportStar(require("./validation"), exports);
27
+ __exportStar(require("./feePolicy"), exports);
27
28
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,4CAA0B;AAC1B,2CAAyB;AACzB,iDAA+B;AAC/B,0CAAwB;AACxB,0CAAwB;AACxB,mDAAiC;AACjC,8CAA4B;AAC5B,2CAAyB;AACzB,+CAA6B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,4CAA0B;AAC1B,2CAAyB;AACzB,iDAA+B;AAC/B,0CAAwB;AACxB,0CAAwB;AACxB,mDAAiC;AACjC,8CAA4B;AAC5B,2CAAyB;AACzB,+CAA6B;AAC7B,8CAA4B"}
@@ -122,7 +122,7 @@ class RetryableProvider {
122
122
  if (attempt === this.config.maxRetries || !isRetryable) {
123
123
  if (!isRetryable && attempt === 0) {
124
124
  // Log that this error is not retryable for debugging
125
- console.debug(`${context} failed with non-retryable error: ${error.message}`);
125
+ console.debug(`[rpc] ${context}: non-retryable`, error.message);
126
126
  }
127
127
  throw error;
128
128
  }
@@ -131,7 +131,7 @@ class RetryableProvider {
131
131
  if (this.config.onRetry) {
132
132
  this.config.onRetry(attempt + 1, error, delay);
133
133
  }
134
- console.warn(`${context} failed (attempt ${attempt + 1}/${this.config.maxRetries + 1}): ${error.message}. Retrying in ${delay}ms...`);
134
+ console.debug(`[rpc] ${context}: attempt ${attempt + 1}/${this.config.maxRetries + 1} failed, retry in ${delay}ms`, error.message);
135
135
  await this.sleep(delay);
136
136
  }
137
137
  }
@@ -158,7 +158,7 @@ class RetryableProvider {
158
158
  // For JsonRpcProvider, also wrap _send if it exists
159
159
  if (prop === '_send' && typeof original === 'function') {
160
160
  return async (payload, callback) => {
161
- return this.executeWithRetry(() => original.apply(target, arguments), `RPC ${payload.method || 'unknown'}`);
161
+ return this.executeWithRetry(() => original.apply(target, [payload, callback]), `RPC ${payload.method || 'unknown'}`);
162
162
  };
163
163
  }
164
164
  // Wrap other async methods that might make RPC calls
@@ -1 +1 @@
1
- {"version":3,"file":"retry-provider.js","sourceRoot":"","sources":["../src/retry-provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"retry-provider.js","sourceRoot":"","sources":["../src/retry-provider.ts"],"names":[],"mappings":"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"}
package/dist/setup.d.ts CHANGED
@@ -2,15 +2,22 @@ import { ChainRpcPrefix, getContractAddresses } from "./helpers";
2
2
  import { Market } from "./classes/Market";
3
3
  import { curvance_provider } from './types';
4
4
  import { ProtocolReader } from "./classes/ProtocolReader";
5
+ import { FeePolicy } from "./feePolicy";
5
6
  export declare let setup_config: {
6
7
  chain: ChainRpcPrefix;
7
8
  contracts: ReturnType<typeof getContractAddresses>;
8
9
  provider: curvance_provider;
9
10
  approval_protection: boolean;
10
11
  api_url: string;
12
+ feePolicy: FeePolicy;
11
13
  };
12
14
  export declare let all_markets: Market[];
13
- export declare function setupChain(chain: ChainRpcPrefix, provider?: curvance_provider | null, approval_protection?: boolean, api_url?: string): Promise<{
15
+ export interface SetupChainOptions {
16
+ /** Optional fee policy for SDK-initiated DEX swaps (zaps + leverage).
17
+ * Defaults to NO_FEE_POLICY (zero fees) for backward compatibility. */
18
+ feePolicy?: FeePolicy;
19
+ }
20
+ export declare function setupChain(chain: ChainRpcPrefix, provider?: curvance_provider | null, approval_protection?: boolean, api_url?: string, options?: SetupChainOptions): Promise<{
14
21
  markets: Market[];
15
22
  reader: ProtocolReader;
16
23
  dexAgg: import("./classes/DexAggregators/IDexAgg").default;
@@ -1 +1 @@
1
- {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../src/setup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACjE,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAW,iBAAiB,EAAE,MAAM,SAAS,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAO1D,eAAO,IAAI,YAAY,EAAE;IACrB,KAAK,EAAE,cAAc,CAAC;IACtB,SAAS,EAAE,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAC;IACnD,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,mBAAmB,EAAE,OAAO,CAAC;IAC7B,OAAO,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,eAAO,IAAI,WAAW,EAAE,MAAM,EAAO,CAAC;AAEtC,wBAAsB,UAAU,CAAC,KAAK,EAAE,cAAc,EAAE,QAAQ,GAAE,iBAAiB,GAAG,IAAW,EAAE,mBAAmB,GAAE,OAAe,EAAE,OAAO,GAAE,MAAmC;;;;;GAwCpL"}
1
+ {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../src/setup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACjE,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAW,iBAAiB,EAAE,MAAM,SAAS,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAM1D,OAAO,EAAE,SAAS,EAAiB,MAAM,aAAa,CAAC;AAEvD,eAAO,IAAI,YAAY,EAAE;IACrB,KAAK,EAAE,cAAc,CAAC;IACtB,SAAS,EAAE,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAC;IACnD,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,mBAAmB,EAAE,OAAO,CAAC;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,SAAS,CAAC;CACxB,CAAC;AAEF,eAAO,IAAI,WAAW,EAAE,MAAM,EAAO,CAAC;AAEtC,MAAM,WAAW,iBAAiB;IAC9B;4EACwE;IACxE,SAAS,CAAC,EAAE,SAAS,CAAC;CACzB;AAED,wBAAsB,UAAU,CAC5B,KAAK,EAAE,cAAc,EACrB,QAAQ,GAAE,iBAAiB,GAAG,IAAW,EACzC,mBAAmB,GAAE,OAAe,EACpC,OAAO,GAAE,MAAmC,EAC5C,OAAO,GAAE,iBAAsB;;;;;GA0ClC"}
package/dist/setup.js CHANGED
@@ -10,8 +10,9 @@ const retry_provider_1 = require("./retry-provider");
10
10
  const chains_1 = require("./chains");
11
11
  const Api_1 = require("./classes/Api");
12
12
  const validation_1 = require("./validation");
13
+ const feePolicy_1 = require("./feePolicy");
13
14
  exports.all_markets = [];
14
- async function setupChain(chain, provider = null, approval_protection = false, api_url = "https://api.curvance.com") {
15
+ async function setupChain(chain, provider = null, approval_protection = false, api_url = "https://api.curvance.com", options = {}) {
15
16
  if (!(chain in chains_1.chain_config)) {
16
17
  throw new Error("Chain does not have a corresponding config");
17
18
  }
@@ -27,6 +28,7 @@ async function setupChain(chain, provider = null, approval_protection = false, a
27
28
  approval_protection,
28
29
  contracts: (0, helpers_1.getContractAddresses)(chain),
29
30
  api_url,
31
+ feePolicy: options.feePolicy ?? feePolicy_1.NO_FEE_POLICY,
30
32
  };
31
33
  if (!("ProtocolReader" in exports.setup_config.contracts)) {
32
34
  throw new Error(`Chain configuration for ${chain} is missing ProtocolReader address.`);
package/dist/setup.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"setup.js","sourceRoot":"","sources":["../src/setup.ts"],"names":[],"mappings":";;;AAoBA,gCAwCC;AA5DD,uCAAiE;AACjE,6CAA0C;AAE1C,6DAA0D;AAC1D,2DAAwD;AACxD,qDAA2D;AAC3D,qCAAwC;AACxC,uCAAoC;AACpC,6CAA8C;AAUnC,QAAA,WAAW,GAAa,EAAE,CAAC;AAE/B,KAAK,UAAU,UAAU,CAAC,KAAqB,EAAE,WAAqC,IAAI,EAAE,sBAA+B,KAAK,EAAE,UAAkB,0BAA0B;IACjL,IAAG,CAAC,CAAC,KAAK,IAAI,qBAAY,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAClE,CAAC;IAED,mDAAmD;IACnD,IAAA,2BAAc,EAAC,OAAO,CAAC,CAAC;IAExB,IAAG,QAAQ,IAAI,IAAI,EAAE,CAAC;QAClB,QAAQ,GAAG,qBAAY,CAAC,KAAK,CAAC,CAAC,QAAS,CAAC;IAC7C,CAAC;IAED,QAAQ,GAAG,IAAA,wCAAuB,EAAC,QAAQ,CAAC,CAAC;IAE7C,oBAAY,GAAG;QACX,KAAK;QACL,QAAQ;QACR,mBAAmB;QACnB,SAAS,EAAE,IAAA,8BAAoB,EAAC,KAAK,CAAC;QACtC,OAAO;KACV,CAAA;IAED,IAAG,CAAC,CAAC,gBAAgB,IAAI,oBAAY,CAAC,SAAS,CAAC,EAAE,CAAC;QAC/C,MAAM,IAAI,KAAK,CAAC,2BAA2B,KAAK,qCAAqC,CAAC,CAAC;IAC3F,CAAC;SAAM,IAAI,CAAC,CAAC,eAAe,IAAI,oBAAY,CAAC,SAAS,CAAC,EAAE,CAAC;QACtD,MAAM,IAAI,KAAK,CAAC,2BAA2B,KAAK,oCAAoC,CAAC,CAAC;IAC1F,CAAC;IAED,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,MAAM,SAAG,CAAC,UAAU,EAAE,CAAC;IAC1D,MAAM,MAAM,GAAG,IAAI,+BAAc,CAAC,oBAAY,CAAC,SAAS,CAAC,cAAyB,CAAC,CAAA;IACnF,MAAM,cAAc,GAAG,IAAI,6BAAa,CAAC,oBAAY,CAAC,SAAS,CAAC,aAAwB,CAAC,CAAC;IAE1F,mBAAW,GAAG,MAAM,eAAM,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,EAAE,oBAAY,CAAC,QAAQ,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;IAEzG,OAAO;QACH,OAAO,EAAE,mBAAW;QACpB,MAAM;QACN,MAAM,EAAE,qBAAY,CAAC,KAAK,CAAC,CAAC,MAAM;QAClC,gBAAgB,EAAE,UAAU,CAAC,QAAQ,CAAC,IAAI,IAAI;KACjD,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"setup.js","sourceRoot":"","sources":["../src/setup.ts"],"names":[],"mappings":";;;AA4BA,gCA+CC;AA3ED,uCAAiE;AACjE,6CAA0C;AAE1C,6DAA0D;AAC1D,2DAAwD;AACxD,qDAA2D;AAC3D,qCAAwC;AACxC,uCAAoC;AACpC,6CAA8C;AAC9C,2CAAuD;AAW5C,QAAA,WAAW,GAAa,EAAE,CAAC;AAQ/B,KAAK,UAAU,UAAU,CAC5B,KAAqB,EACrB,WAAqC,IAAI,EACzC,sBAA+B,KAAK,EACpC,UAAkB,0BAA0B,EAC5C,UAA6B,EAAE;IAE/B,IAAG,CAAC,CAAC,KAAK,IAAI,qBAAY,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAClE,CAAC;IAED,mDAAmD;IACnD,IAAA,2BAAc,EAAC,OAAO,CAAC,CAAC;IAExB,IAAG,QAAQ,IAAI,IAAI,EAAE,CAAC;QAClB,QAAQ,GAAG,qBAAY,CAAC,KAAK,CAAC,CAAC,QAAS,CAAC;IAC7C,CAAC;IAED,QAAQ,GAAG,IAAA,wCAAuB,EAAC,QAAQ,CAAC,CAAC;IAE7C,oBAAY,GAAG;QACX,KAAK;QACL,QAAQ;QACR,mBAAmB;QACnB,SAAS,EAAE,IAAA,8BAAoB,EAAC,KAAK,CAAC;QACtC,OAAO;QACP,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,yBAAa;KAChD,CAAA;IAED,IAAG,CAAC,CAAC,gBAAgB,IAAI,oBAAY,CAAC,SAAS,CAAC,EAAE,CAAC;QAC/C,MAAM,IAAI,KAAK,CAAC,2BAA2B,KAAK,qCAAqC,CAAC,CAAC;IAC3F,CAAC;SAAM,IAAI,CAAC,CAAC,eAAe,IAAI,oBAAY,CAAC,SAAS,CAAC,EAAE,CAAC;QACtD,MAAM,IAAI,KAAK,CAAC,2BAA2B,KAAK,oCAAoC,CAAC,CAAC;IAC1F,CAAC;IAED,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,MAAM,SAAG,CAAC,UAAU,EAAE,CAAC;IAC1D,MAAM,MAAM,GAAG,IAAI,+BAAc,CAAC,oBAAY,CAAC,SAAS,CAAC,cAAyB,CAAC,CAAA;IACnF,MAAM,cAAc,GAAG,IAAI,6BAAa,CAAC,oBAAY,CAAC,SAAS,CAAC,aAAwB,CAAC,CAAC;IAE1F,mBAAW,GAAG,MAAM,eAAM,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,EAAE,oBAAY,CAAC,QAAQ,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;IAEzG,OAAO;QACH,OAAO,EAAE,mBAAW;QACpB,MAAM;QACN,MAAM,EAAE,qBAAY,CAAC,KAAK,CAAC,CAAC,MAAM;QAClC,gBAAgB,EAAE,UAAU,CAAC,QAAQ,CAAC,IAAI,IAAI;KACjD,CAAC;AACN,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "curvance",
3
- "version": "4.0.2",
3
+ "version": "4.0.4",
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "files": [
@@ -1,44 +0,0 @@
1
- {
2
- "CentralRegistry": "0xC7B36473cb7F4BC0b2F47376623615Da4e6fE57D",
3
- "OracleManager": "0x440d0CC7ACC38DDA1E0E2E1DDa226EB44A72d4eE",
4
- "adaptors": {
5
- "ChainlinkAdaptor": "0x38c37f57a3b5c26B344671FdF3C3162BaCDA7bBa",
6
- "RedstoneClassicAdaptor": "0x6a0bf34856F6B9cb42867aC0a6b9Dc9e49a0b2Ba",
7
- "RedstoneCoreAdaptor": "0xD44861cF7ff4eCEe3d227a0e67E2e60244456E27"
8
- },
9
- "calldataCheckers": {
10
- "RedstoneAdaptorMulticallChecker": "0x81607179829EFA9735E7413090Db247cFb6231E1"
11
- },
12
- "zappers": {
13
- "nativeVaultZapper": "0xbDa98B38aFc8433a07bf291787A10c7470E3fA06",
14
- "vaultZapper": "0x24cE639C53a1A0eCB0d5209fc8F548ceBbfF534A",
15
- "simpleZapper": "0xCD602E77913114fd29CA5da0898c49996d504B13"
16
- },
17
- "MockOracle": "0x7f2b026da1e31109b7049DeeCb5aa852a1f2a728",
18
- "USDC": "0xFAf10acC86Dd587B1a75B832FCeB01B2fe3379Db",
19
- "AUSD": "0x2220a895C3B943838F606C67B488fec9FE9ADa4b",
20
- "BTC": "0x955Cd836061481131b35Ac114ef96e17f9D1D402",
21
- "ETH": "0xa0EF95Df879E7958281404B44f2065A72cF4A8FA",
22
- "Faucet": "0xa47b3c31aeB952E60332869F7ED6F44D14890375",
23
- "markets": {
24
- "Stable Market": {
25
- "address": "0x8fe35902B67D81c94CF81fd9a96558e8349215F5",
26
- "USDC-DynamicIRM": "0x2a5d40ccbD99cf6aC202A32725e2E1680bd3B2A0",
27
- "tokens": {
28
- "USDC": "0x4Fd99EFd43d66F0eF854Ca58Ec0c9b9950514aF3",
29
- "AUSD": "0xC9cfa1ABf23F672a0a75eC567cE13619d0062CAD"
30
- },
31
- "AUSD-DynamicIRM": "0xa8CAc481f9f8D690609f4A1EF1C32d58cFC687F0"
32
- },
33
- "Volatile Market": {
34
- "address": "0x405793BfAC1A82F056fdE8A71580FCeDa68Ef8d6",
35
- "BTC-DynamicIRM": "0xA6D76582F0cBaaBB512edCeB138c106185C8f0c6",
36
- "tokens": {
37
- "BTC": "0xe98D2e7EB66e504e26Dbc208601cb04F31652AA5",
38
- "ETH": "0x79049726F807407eEa9eFc49DEa4010332Aa6d7f"
39
- },
40
- "ETH-DynamicIRM": "0xFae2a261D376acDCcf5fe6D63944650209f22C2C"
41
- }
42
- },
43
- "ProtocolReader": "0xC57e4e42278CA815C5717eFA84a536f30Ee49637"
44
- }
@@ -1 +0,0 @@
1
- //# sourceMappingURL=KuruMainnet.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"KuruMainnet.d.ts","sourceRoot":"","sources":["../../../src/classes/DexAggregators/KuruMainnet.ts"],"names":[],"mappings":""}
@@ -1,228 +0,0 @@
1
- "use strict";
2
- // import Decimal from "decimal.js";
3
- // import { address, curvance_provider, TokenInput } from "../../types";
4
- // import { ERC20 } from "../ERC20";
5
- // import { toBigInt, toDecimal, validateProviderAsSigner, WAD } from "../../helpers";
6
- // import { ZapToken } from "../CToken";
7
- // import { Swap } from "../Zapper";
8
- // interface KuruJWTResponse {
9
- // token: string;
10
- // expires_at: number;
11
- // rate_limit: {
12
- // rps: number;
13
- // burst: number;
14
- // }
15
- // }
16
- // interface KuruQuoteResponse {
17
- // type: string;
18
- // status: string;
19
- // output: string;
20
- // minOut: string;
21
- // transaction: {
22
- // calldata: string;
23
- // value: string;
24
- // to: string;
25
- // };
26
- // gasPrices: {
27
- // slow: string;
28
- // standard: string;
29
- // fast: string;
30
- // rapid: string;
31
- // extreme: string;
32
- // };
33
- // }
34
- // const cached_jwt = new Map<string, KuruJWTResponse>();
35
- // const cached_requests = new Map<string, number[]>();
36
- // export default class KuruMainnet {
37
- // static api = "https://ws.kuru.io/api"
38
- // static router = "0xb3e6778480b2E488385E8205eA05E20060B813cb" as address; // KuruFlowEntrypoint
39
- // jwt: string | null = null;
40
- // rps = 1;
41
- // dao = "0x0Acb7eF4D8733C719d60e0992B489b629bc55C02" as address;
42
- // async loadJWT(wallet: string) {
43
- // if(cached_jwt.has(wallet)) {
44
- // const cached = cached_jwt.get(wallet)!;
45
- // const currentTime = KuruMainnet.getCurrentTime();
46
- // if(cached.expires_at > currentTime) {
47
- // this.jwt = cached.token;
48
- // this.rps = cached.rate_limit.rps;
49
- // return;
50
- // } else {
51
- // cached_jwt.delete(wallet);
52
- // }
53
- // }
54
- // const resp = await fetch(`${KuruMainnet.api}/generate-token`, {
55
- // method: "POST",
56
- // headers: {
57
- // "Content-Type": "application/json",
58
- // },
59
- // body: JSON.stringify({
60
- // user_address: wallet,
61
- // }),
62
- // keepalive: true
63
- // });
64
- // if(!resp.ok) {
65
- // throw new Error(`Failed to fetch JWT: ${resp.status} ${resp.statusText}`);
66
- // }
67
- // const data = await resp.json() as KuruJWTResponse;
68
- // this.jwt = data.token;
69
- // this.rps = data.rate_limit.rps;
70
- // cached_jwt.set(wallet, data);
71
- // }
72
- // async rateLimitSleep(wallet: string) {
73
- // const now = KuruMainnet.getCurrentTime();
74
- // const requests = cached_requests.get(wallet) || [];
75
- // const windowStart = now - 2;
76
- // const recentRequests = requests.filter(timestamp => timestamp > windowStart);
77
- // if(recentRequests.length >= this.rps) {
78
- // const earliestRequest = Math.min(...recentRequests);
79
- // const sleepTime = (earliestRequest + 2) - now;
80
- // await new Promise(resolve => setTimeout(resolve, sleepTime * 2000));
81
- // }
82
- // }
83
- // static async getAvailableTokens(provider: curvance_provider, query: string | null = null) {
84
- // const signer = validateProviderAsSigner(provider);
85
- // const userAddress = signer.address;
86
- // let endpoint = `https://api.kuru.io/api/v2/tokens/search?limit=20&userAddress=${userAddress}`;
87
- // if(query) {
88
- // endpoint += `&q=${encodeURIComponent(query)}`;
89
- // }
90
- // const resp = await fetch(endpoint, {
91
- // method: "GET",
92
- // headers: {
93
- // "Content-Type": "application/json",
94
- // }
95
- // });
96
- // if(!resp.ok) {
97
- // throw new Error(`Failed to fetch available tokens: ${resp.status} ${resp.statusText}`);
98
- // }
99
- // const list = await resp.json() as {
100
- // success: boolean;
101
- // code: number;
102
- // timestamp: number;
103
- // data: {
104
- // data: Array<{
105
- // address: string;
106
- // decimals: number;
107
- // name: string;
108
- // ticker: string;
109
- // imageurl: string,
110
- // twitter: string,
111
- // website: string,
112
- // is_verified: boolean,
113
- // contract_renounced: boolean,
114
- // is_erc20: boolean,
115
- // is_mintable: boolean,
116
- // is_strict: boolean,
117
- // balance: string,
118
- // last_price: string,
119
- // quote_asset: string,
120
- // market_address: string,
121
- // total_supply: string,
122
- // burned_supply: string
123
- // }>
124
- // }
125
- // };
126
- // let tokens: ZapToken[] = [];
127
- // for(const token of list.data.data) {
128
- // const erc20 = new ERC20(
129
- // provider,
130
- // token.address as address,
131
- // {
132
- // address: token.address as address,
133
- // name: token.name,
134
- // symbol: token.ticker,
135
- // decimals: BigInt(token.decimals ?? 18),
136
- // totalSupply: BigInt(token.total_supply ?? 0),
137
- // balance: BigInt(token.balance ?? 0),
138
- // image: token.imageurl,
139
- // price: Decimal(token.last_price).div(WAD)
140
- // },
141
- // );
142
- // tokens.push({
143
- // interface: erc20,
144
- // type: 'simple',
145
- // quote: async(tokenIn: string, tokenOut: string, amount: TokenInput, slippageTolerance: bigint | null = null) => {
146
- // const raw_amount = toBigInt(amount, 18n);
147
- // const data = await KuruMainnet.quote(signer.address, tokenIn, tokenOut, raw_amount.toString(), slippageTolerance);
148
- // return {
149
- // output: toDecimal(BigInt(data.output ?? 0), BigInt(token.decimals ?? 18)),
150
- // minOut: toDecimal(BigInt(data.minOut ?? 0), BigInt(token.decimals ?? 18)),
151
- // max_slippage: data.max_slippage
152
- // };
153
- // }
154
- // });
155
- // }
156
- // return tokens;
157
- // }
158
- // // Get current time in seconds
159
- // static getCurrentTime() {
160
- // return Math.floor(Date.now() / 1000);
161
- // }
162
- // static async quoteAction(wallet: string, tokenIn: string, tokenOut: string, amount: string, slippageTolerance: bigint | null = null) {
163
- // const quote = await KuruMainnet.quote(wallet, tokenIn, tokenOut, amount, slippageTolerance);
164
- // const action = {
165
- // inputToken: tokenIn,
166
- // inputAmount: BigInt(amount),
167
- // outputToken: tokenOut,
168
- // target: quote.transaction.to,
169
- // slippage: slippageTolerance ?? 0n,
170
- // call: `0x${quote.transaction.calldata}`
171
- // } as Swap;
172
- // return { action, quote };
173
- // }
174
- // static async quoteMin(wallet: string, tokenIn: string, tokenOut: string, amount: string, slippageTolerance: bigint | null = null) {
175
- // const quote = await KuruMainnet.quote(wallet, tokenIn, tokenOut, amount, slippageTolerance);
176
- // return quote.minOut;
177
- // }
178
- // static async quote(wallet: string, tokenIn: string, tokenOut: string, amount: string, slippageTolerance: bigint | null = null) {
179
- // const kuru = new this();
180
- // await kuru.loadJWT(wallet);
181
- // await kuru.rateLimitSleep(wallet);
182
- // const payload: {
183
- // userAddress: string;
184
- // tokenIn: string;
185
- // tokenOut: string;
186
- // amount: string;
187
- // referrerAddress?: string;
188
- // referrerFeeBps?: number;
189
- // slippage_tolerance?: number;
190
- // autoSlippage?: boolean;
191
- // } = {
192
- // userAddress: wallet,
193
- // tokenIn: tokenIn,
194
- // tokenOut: tokenOut,
195
- // amount: amount,
196
- // referrerAddress: kuru.dao,
197
- // referrerFeeBps: 10,
198
- // };
199
- // if(!slippageTolerance) {
200
- // payload.autoSlippage = true;
201
- // } else {
202
- // payload.slippage_tolerance = Number(slippageTolerance);
203
- // }
204
- // cached_requests.set(wallet, (cached_requests.get(wallet) || []).concat(KuruMainnet.getCurrentTime()));
205
- // const resp = await fetch(`${KuruMainnet.api}/quote`, {
206
- // method: "POST",
207
- // headers: {
208
- // "Content-Type": "application/json",
209
- // "Authorization": `Bearer ${kuru.jwt}`
210
- // },
211
- // body: JSON.stringify(payload),
212
- // });
213
- // if(!resp.ok) {
214
- // throw new Error(`Failed to fetch quote: ${resp.status} ${resp.statusText}`);
215
- // }
216
- // const data = await resp.json() as KuruQuoteResponse;
217
- // return {
218
- // ...data,
219
- // max_slippage: KuruMainnet.getSlippage(BigInt(data.output ?? 0), BigInt(data.minOut ?? 0))
220
- // };
221
- // }
222
- // static getSlippage(output: bigint, min_output: bigint) {
223
- // const diff = output - min_output;
224
- // const decimal = Decimal(diff).div(output).mul(100);
225
- // return decimal ?? Decimal(100);
226
- // }
227
- // }
228
- //# sourceMappingURL=KuruMainnet.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"KuruMainnet.js","sourceRoot":"","sources":["../../../src/classes/DexAggregators/KuruMainnet.ts"],"names":[],"mappings":"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"}
@@ -1,59 +0,0 @@
1
- import Decimal from "decimal.js";
2
- import { address, curvance_provider } from "../types";
3
- import { ZapToken } from "./CToken";
4
- import { Swap } from "./Zapper";
5
- export default class Kuru {
6
- api: string;
7
- static router: address;
8
- jwt: string | null;
9
- rps: number;
10
- dao: address;
11
- loadJWT(wallet: string): Promise<void>;
12
- rateLimitSleep(wallet: string): Promise<void>;
13
- static getAvailableTokens(provider: curvance_provider, query?: string | null): Promise<ZapToken[]>;
14
- static getCurrentTime(): number;
15
- static quoteAction(wallet: string, tokenIn: string, tokenOut: string, amount: string, slippageTolerance?: bigint | null): Promise<{
16
- action: Swap;
17
- quote: {
18
- max_slippage: Decimal;
19
- type: string;
20
- status: string;
21
- output: string;
22
- minOut: string;
23
- transaction: {
24
- calldata: string;
25
- value: string;
26
- to: string;
27
- };
28
- gasPrices: {
29
- slow: string;
30
- standard: string;
31
- fast: string;
32
- rapid: string;
33
- extreme: string;
34
- };
35
- };
36
- }>;
37
- static quoteMin(wallet: string, tokenIn: string, tokenOut: string, amount: string, slippageTolerance?: bigint | null): Promise<string>;
38
- static quote(wallet: string, tokenIn: string, tokenOut: string, amount: string, slippageTolerance?: bigint | null): Promise<{
39
- max_slippage: Decimal;
40
- type: string;
41
- status: string;
42
- output: string;
43
- minOut: string;
44
- transaction: {
45
- calldata: string;
46
- value: string;
47
- to: string;
48
- };
49
- gasPrices: {
50
- slow: string;
51
- standard: string;
52
- fast: string;
53
- rapid: string;
54
- extreme: string;
55
- };
56
- }>;
57
- static getSlippage(output: bigint, min_output: bigint): Decimal;
58
- }
59
- //# sourceMappingURL=Kuru.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Kuru.d.ts","sourceRoot":"","sources":["../../src/classes/Kuru.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAc,MAAM,UAAU,CAAC;AAGlE,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAiChC,MAAM,CAAC,OAAO,OAAO,IAAI;IACrB,GAAG,SAAmC;IACtC,MAAM,CAAC,MAAM,EAAmD,OAAO,CAAC;IACxE,GAAG,EAAE,MAAM,GAAG,IAAI,CAAQ;IAC1B,GAAG,SAAK;IACR,GAAG,EAAmD,OAAO,CAAC;IAExD,OAAO,CAAC,MAAM,EAAE,MAAM;IAoCtB,cAAc,CAAC,MAAM,EAAE,MAAM;WAatB,kBAAkB,CAAC,QAAQ,EAAE,iBAAiB,EAAE,KAAK,GAAE,MAAM,GAAG,IAAW;IAoFxF,MAAM,CAAC,cAAc;WAIR,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB,GAAE,MAAM,GAAG,IAAW;;;;kBArK7H,MAAM;oBACJ,MAAM;oBACN,MAAM;oBACN,MAAM;yBACD;gBACT,QAAQ,EAAE,MAAM,CAAC;gBACjB,KAAK,EAAE,MAAM,CAAC;gBACd,EAAE,EAAE,MAAM,CAAC;aACd;uBACU;gBACP,IAAI,EAAE,MAAM,CAAC;gBACb,QAAQ,EAAE,MAAM,CAAC;gBACjB,IAAI,EAAE,MAAM,CAAC;gBACb,KAAK,EAAE,MAAM,CAAC;gBACd,OAAO,EAAE,MAAM,CAAC;aACnB;;;WAoKY,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB,GAAE,MAAM,GAAG,IAAW;WAKnH,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB,GAAE,MAAM,GAAG,IAAW;;cAxLvH,MAAM;gBACJ,MAAM;gBACN,MAAM;gBACN,MAAM;qBACD;YACT,QAAQ,EAAE,MAAM,CAAC;YACjB,KAAK,EAAE,MAAM,CAAC;YACd,EAAE,EAAE,MAAM,CAAC;SACd;mBACU;YACP,IAAI,EAAE,MAAM,CAAC;YACb,QAAQ,EAAE,MAAM,CAAC;YACjB,IAAI,EAAE,MAAM,CAAC;YACb,KAAK,EAAE,MAAM,CAAC;YACd,OAAO,EAAE,MAAM,CAAC;SACnB;;IA4ND,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;CAKxD"}