@alephium/powfi-sdk 0.0.1-rc.2 → 0.0.1-rc.21

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 (60) hide show
  1. package/README.md +97 -1
  2. package/clmm/artifacts/BitmapWord.ral.json +1 -1
  3. package/clmm/artifacts/BitmapWordDeployer.ral.json +1 -1
  4. package/clmm/artifacts/CreateConfig.ral.json +1 -1
  5. package/clmm/artifacts/CreateLiquidPool.ral.json +1 -1
  6. package/clmm/artifacts/DexAccount.ral.json +1 -1
  7. package/clmm/artifacts/LiquidityAmountsTest.ral.json +1 -1
  8. package/clmm/artifacts/LiquidityManagmentTest.ral.json +1 -1
  9. package/clmm/artifacts/Pool.ral.json +14 -5
  10. package/clmm/artifacts/PoolConfig.ral.json +1 -1
  11. package/clmm/artifacts/PoolFactory.ral.json +1 -1
  12. package/clmm/artifacts/PoolRouterDemo.ral.json +2 -2
  13. package/clmm/artifacts/PoolUser.ral.json +1 -1
  14. package/clmm/artifacts/Position.ral.json +18 -4
  15. package/clmm/artifacts/PositionManager.ral.json +1 -1
  16. package/clmm/artifacts/SwapWithoutAccount.ral.json +2 -2
  17. package/clmm/artifacts/TestToken.ral.json +1 -1
  18. package/clmm/artifacts/Tick.ral.json +1 -1
  19. package/clmm/artifacts/TickBitmapTest.ral.json +1 -1
  20. package/clmm/artifacts/ts/Pool.ts +14 -2
  21. package/clmm/artifacts/ts/Position.ts +37 -3
  22. package/cpmm/artifacts/scripts/CreatePairAndAddLiquidity.ral.json +6 -3
  23. package/cpmm/artifacts/ts/scripts.ts +1 -0
  24. package/lib/index.d.mts +242 -119
  25. package/lib/index.d.ts +242 -119
  26. package/lib/index.js +627 -329
  27. package/lib/index.js.map +1 -1
  28. package/lib/index.mjs +628 -329
  29. package/lib/index.mjs.map +1 -1
  30. package/package.json +9 -8
  31. package/src/clmm/clmm.ts +70 -47
  32. package/src/clmm/liquidity.ts +1 -1
  33. package/src/clmm/pool.ts +15 -17
  34. package/src/clmm/tick.ts +21 -33
  35. package/src/clmm/types.ts +12 -12
  36. package/src/common/error.ts +7 -7
  37. package/src/common/types.ts +1 -1
  38. package/src/cpmm/cpmm.ts +135 -103
  39. package/src/cpmm/types.ts +48 -42
  40. package/src/index.ts +1 -1
  41. package/src/moduleBase.ts +3 -3
  42. package/src/{zeta.ts → powfi.ts} +5 -5
  43. package/src/staking/staking.ts +31 -24
  44. package/src/token/token.ts +2 -2
  45. package/staking/artifacts/AlphUnstakeVault.ral.json +13 -3
  46. package/staking/artifacts/XAlphStakeVault.ral.json +1 -1
  47. package/staking/artifacts/XAlphToken.ral.json +139 -6
  48. package/staking/artifacts/XAlphUnlockAndStartUnstake.ral.json +2 -2
  49. package/staking/artifacts/examples/GovernanceDemo.ral.json +1 -1
  50. package/staking/artifacts/examples/RewardSharingVault.ral.json +1 -1
  51. package/staking/artifacts/ts/AlphUnstakeVault.ts +40 -1
  52. package/staking/artifacts/ts/XAlphToken.ts +209 -8
  53. package/staking/artifacts/ts/scripts.ts +0 -10
  54. package/staking/artifacts/utils/FullMathTest.ral.json +1 -1
  55. package/staking/artifacts/utils/TestDynamicArrayByteVec32.ral.json +1 -1
  56. package/staking/artifacts/utils/TestDynamicSortedArrayForU256.ral.json +1 -1
  57. package/staking/artifacts/utils/TestMerkleProof.ral.json +1 -1
  58. package/staking/deployments/.deployments.devnet.json +45 -44
  59. package/staking/deployments/.deployments.testnet.json +23 -23
  60. package/staking/artifacts/AlphStakeAndLock.ral.json +0 -31
package/lib/index.js CHANGED
@@ -52,6 +52,8 @@ __export(index_exports, {
52
52
  NumericUtils: () => NumericUtils,
53
53
  PoolNotFoundError: () => PoolNotFoundError,
54
54
  PoolUtils: () => PoolUtils,
55
+ Powfi: () => Powfi,
56
+ PowfiSDKError: () => PowfiSDKError,
55
57
  PriceImpactTooHighError: () => PriceImpactTooHighError,
56
58
  StakingContracts: () => ts_exports3,
57
59
  StakingModule: () => StakingModule,
@@ -60,8 +62,6 @@ __export(index_exports, {
60
62
  TokenModule: () => TokenModule,
61
63
  U256_MAX: () => U256_MAX,
62
64
  UNLIMITED_AMOUNT: () => UNLIMITED_AMOUNT,
63
- Zeta: () => Zeta,
64
- ZetaSDKError: () => ZetaSDKError,
65
65
  createLogger: () => createLogger,
66
66
  decodeContractIdList: () => decodeContractIdList,
67
67
  decodeU256List: () => decodeU256List,
@@ -77,7 +77,7 @@ __export(index_exports, {
77
77
  });
78
78
  module.exports = __toCommonJS(index_exports);
79
79
 
80
- // src/zeta.ts
80
+ // src/powfi.ts
81
81
  var import_web348 = require("@alephium/web3");
82
82
 
83
83
  // src/cpmm/cpmm.ts
@@ -4133,7 +4133,7 @@ var CreatePair_ral_default = {
4133
4133
  var CreatePairAndAddLiquidity_ral_default = {
4134
4134
  version: "v4.2.5",
4135
4135
  name: "CreatePairAndAddLiquidity",
4136
- bytecodeTemplate: "0101030001004029{0}7a7a{2}a2{3}0da3{4}0da3{0}{2}{3}{4}100c{1}0106{1}{3}{4}44cc1700{0}7a{3}{5}a3{4}{6}a3{0}{5}{6}0f0d1600010e18",
4136
+ bytecodeTemplate: "010103001d004145{1}{3}{4}44cc1700160017011600c54c4117{7}{0}47cc17021602c5194c05{0}0d0c{7}d465b302f9131e17031367101704160416032b1705160416052a17060c0e1601010817081707{5}16082c{6}16072c334c406b{6}16082a1709160516092c170a160616072c16092c170b160416072c{5}16082c{6}16072c2b2c170c160b160b2c10160a2c160c2c2a170d160d0d0d16010105160b2b0e160a2c2d170e1605160e2c16082c160416072c1605160e2c2a2d170f1607160e2a17101608160f2b1711{6}16102c1611911712{0}{3}160ea3{0}{0}160e0c0c160f13060c16010110{0}7a{3}1612a3{4}{6}a3{0}1612{6}0f0d1601010e184a4083{6}16072c{5}16082c334c406b{5}16072a1713160516132c1714160616082c16132c1715160416082c{6}16072c{5}16082c2b2c1716161516152c1016142c16162c2a171716170d0d1601010516152b0e16142c2d1718160516182c16072c160416082c160516182c2a2d1719160716192b171a160816182a171b{5}161b2c161a91171c{0}{4}1618a3{0}{0}0c161816190c13060c16010110{0}7a{3}{5}a3{4}161ca3{0}{5}161c0f0d1601010e184a10{0}7a{3}{5}a3{4}{6}a3{0}{5}{6}0f0d1601010e184a4023{0}7a7a{2}a2{3}0da3{4}0da3{0}{2}{3}{4}100c{1}0106{0}7a{3}{5}a3{4}{6}a3{0}{5}{6}0f0d1601010e18",
4137
4137
  fieldsSig: {
4138
4138
  names: [
4139
4139
  "payer",
@@ -4142,7 +4142,8 @@ var CreatePairAndAddLiquidity_ral_default = {
4142
4142
  "token0Id",
4143
4143
  "token1Id",
4144
4144
  "amount0",
4145
- "amount1"
4145
+ "amount1",
4146
+ "dexAccount"
4146
4147
  ],
4147
4148
  types: [
4148
4149
  "Address",
@@ -4151,7 +4152,8 @@ var CreatePairAndAddLiquidity_ral_default = {
4151
4152
  "ByteVec",
4152
4153
  "ByteVec",
4153
4154
  "U256",
4154
- "U256"
4155
+ "U256",
4156
+ "IDexAccount"
4155
4157
  ],
4156
4158
  isMutable: [
4157
4159
  false,
@@ -4160,6 +4162,7 @@ var CreatePairAndAddLiquidity_ral_default = {
4160
4162
  false,
4161
4163
  false,
4162
4164
  false,
4165
+ false,
4163
4166
  false
4164
4167
  ]
4165
4168
  },
@@ -4754,37 +4757,37 @@ var MAX_PRICE_IMPACT = 5;
4754
4757
  var MINIMUM_LIQUIDITY = 1000n;
4755
4758
 
4756
4759
  // src/common/error.ts
4757
- var ZetaSDKError = class extends Error {
4760
+ var PowfiSDKError = class extends Error {
4758
4761
  constructor(message, options) {
4759
4762
  super(message, options);
4760
- this.name = "ZetaSDKError";
4763
+ this.name = "PowfiSDKError";
4761
4764
  }
4762
4765
  };
4763
- var InsufficientLiquidityError = class extends ZetaSDKError {
4766
+ var InsufficientLiquidityError = class extends PowfiSDKError {
4764
4767
  constructor(message = "Insufficient liquidity") {
4765
4768
  super(message);
4766
4769
  this.name = "InsufficientLiquidityError";
4767
4770
  }
4768
4771
  };
4769
- var PriceImpactTooHighError = class extends ZetaSDKError {
4772
+ var PriceImpactTooHighError = class extends PowfiSDKError {
4770
4773
  constructor(priceImpact, maxPriceImpact) {
4771
4774
  super(`Price impact too high: ${priceImpact.toFixed(2)}% > ${maxPriceImpact}%`);
4772
4775
  this.name = "PriceImpactTooHighError";
4773
4776
  }
4774
4777
  };
4775
- var PoolNotFoundError = class extends ZetaSDKError {
4778
+ var PoolNotFoundError = class extends PowfiSDKError {
4776
4779
  constructor(poolId) {
4777
4780
  super(`Pool does not exist for ${poolId}`);
4778
4781
  this.name = "PoolNotFoundError";
4779
4782
  }
4780
4783
  };
4781
- var InsufficientBalanceError = class extends ZetaSDKError {
4784
+ var InsufficientBalanceError = class extends PowfiSDKError {
4782
4785
  constructor(token, required, available) {
4783
4786
  super(`Not enough ${token} balance. Required: ${required}, Available: ${available}`);
4784
4787
  this.name = "InsufficientBalanceError";
4785
4788
  }
4786
4789
  };
4787
- var TokenListFetchError = class extends ZetaSDKError {
4790
+ var TokenListFetchError = class extends PowfiSDKError {
4788
4791
  status;
4789
4792
  constructor(url, options) {
4790
4793
  const statusPart = options?.status !== void 0 ? ` (status ${options.status})` : "";
@@ -6384,14 +6387,14 @@ var CpmmModule = class _CpmmModule extends ModuleBase {
6384
6387
  if (!this.scope.signer) {
6385
6388
  throw new Error("Signer is required for swap operation");
6386
6389
  }
6387
- const poolState = await this.getPoolState(params.tokenIn.id, params.tokenOut.id);
6390
+ const poolState = await this.getPoolState(params.tokenInId, params.tokenOutId);
6388
6391
  const swapDetails = _CpmmModule.computeSwapAmount({
6389
6392
  state: poolState,
6390
- tokenIn: params.tokenIn,
6391
- tokenOut: params.tokenOut,
6393
+ tokenInId: params.tokenInId,
6394
+ tokenOutId: params.tokenOutId,
6392
6395
  amountIn: params.amountIn,
6393
6396
  amountOut: params.amountOut,
6394
- slippage: params.slippage
6397
+ slippageBps: params.slippageBps
6395
6398
  });
6396
6399
  if (swapDetails.priceImpact >= MAX_PRICE_IMPACT) {
6397
6400
  throw new PriceImpactTooHighError(swapDetails.priceImpact, MAX_PRICE_IMPACT);
@@ -6406,7 +6409,7 @@ var CpmmModule = class _CpmmModule extends ModuleBase {
6406
6409
  );
6407
6410
  }
6408
6411
  }
6409
- const ttl = params.ttl ?? 60;
6412
+ const ttlMinutes = params.ttlMinutes ?? 60;
6410
6413
  if (swapDetails.swapType === "ExactIn") {
6411
6414
  let attoAlphAmount = this.getExtraAlphAmount(
6412
6415
  swapDetails.state.token0Info.id,
@@ -6428,7 +6431,7 @@ var CpmmModule = class _CpmmModule extends ModuleBase {
6428
6431
  tokenInId: swapDetails.tokenInInfo.id,
6429
6432
  amountIn: swapDetails.tokenInAmount,
6430
6433
  amountOutMin: swapDetails.minimalTokenOutAmount,
6431
- deadline: deadline(ttl)
6434
+ deadline: deadline(ttlMinutes)
6432
6435
  },
6433
6436
  attoAlphAmount,
6434
6437
  tokens
@@ -6455,7 +6458,7 @@ var CpmmModule = class _CpmmModule extends ModuleBase {
6455
6458
  tokenInId: swapDetails.tokenInInfo.id,
6456
6459
  amountInMax: swapDetails.maximalTokenInAmount,
6457
6460
  amountOut: swapDetails.tokenOutAmount,
6458
- deadline: deadline(ttl)
6461
+ deadline: deadline(ttlMinutes)
6459
6462
  },
6460
6463
  attoAlphAmount,
6461
6464
  tokens
@@ -6467,55 +6470,66 @@ var CpmmModule = class _CpmmModule extends ModuleBase {
6467
6470
  if (!this.scope.signer) {
6468
6471
  throw new Error("Signer is required for addLiquidity operation");
6469
6472
  }
6470
- const { cpmmPoolState, tokenA, tokenB, amountA, amountB, slippage, sender, ttl = 60 } = params;
6473
+ const {
6474
+ poolState,
6475
+ tokenAId,
6476
+ tokenBId,
6477
+ amountA,
6478
+ amountB,
6479
+ slippageBps,
6480
+ sender,
6481
+ ttlMinutes = 60
6482
+ } = params;
6483
+ const tokenAInfo = _CpmmModule.getTokenInfoFromPoolState(poolState, tokenAId, "tokenAId");
6484
+ const tokenBInfo = _CpmmModule.getTokenInfoFromPoolState(poolState, tokenBId, "tokenBId");
6471
6485
  if (amountA === 0n || amountB === 0n) {
6472
6486
  throw new Error("The input amount must be greater than 0");
6473
6487
  }
6474
6488
  if (balances) {
6475
- const tokenAAvailable = balances.get(tokenA.id) ?? 0n;
6489
+ const tokenAAvailable = balances.get(tokenAInfo.id) ?? 0n;
6476
6490
  if (tokenAAvailable < amountA) {
6477
6491
  throw new InsufficientBalanceError(
6478
- tokenA.symbol,
6479
- (0, import_web313.prettifyTokenAmount)(amountA, tokenA.decimals) ?? `${amountA}`,
6480
- (0, import_web313.prettifyTokenAmount)(tokenAAvailable, tokenA.decimals) ?? `${tokenAAvailable}`
6492
+ tokenAInfo.symbol,
6493
+ (0, import_web313.prettifyTokenAmount)(amountA, tokenAInfo.decimals) ?? `${amountA}`,
6494
+ (0, import_web313.prettifyTokenAmount)(tokenAAvailable, tokenAInfo.decimals) ?? `${tokenAAvailable}`
6481
6495
  );
6482
6496
  }
6483
- const tokenBAvailable = balances.get(tokenB.id) ?? 0n;
6497
+ const tokenBAvailable = balances.get(tokenBInfo.id) ?? 0n;
6484
6498
  if (tokenBAvailable < amountB) {
6485
6499
  throw new InsufficientBalanceError(
6486
- tokenB.symbol,
6487
- (0, import_web313.prettifyTokenAmount)(amountB, tokenB.decimals) ?? `${amountB}`,
6488
- (0, import_web313.prettifyTokenAmount)(tokenBAvailable, tokenB.decimals) ?? `${tokenBAvailable}`
6500
+ tokenBInfo.symbol,
6501
+ (0, import_web313.prettifyTokenAmount)(amountB, tokenBInfo.decimals) ?? `${amountB}`,
6502
+ (0, import_web313.prettifyTokenAmount)(tokenBAvailable, tokenBInfo.decimals) ?? `${tokenBAvailable}`
6489
6503
  );
6490
6504
  }
6491
6505
  }
6492
- const isInitial = cpmmPoolState.reserve0 === 0n && cpmmPoolState.reserve1 === 0n;
6493
- const amountAMin = isInitial ? amountA : _CpmmModule.minimalAmount(amountA, slippage);
6494
- const amountBMin = isInitial ? amountB : _CpmmModule.minimalAmount(amountB, slippage);
6495
- const [amount0Desired, amount1Desired, amount0Min, amount1Min] = tokenA.id === cpmmPoolState.token0Info.id ? [amountA, amountB, amountAMin, amountBMin] : [amountB, amountA, amountBMin, amountAMin];
6496
- const extraAlph = this.getExtraAlphAmount(tokenA.id, tokenB.id);
6506
+ const isInitial = poolState.reserve0 === 0n && poolState.reserve1 === 0n;
6507
+ const amountAMin = isInitial ? amountA : _CpmmModule.minimalAmount(amountA, slippageBps);
6508
+ const amountBMin = isInitial ? amountB : _CpmmModule.minimalAmount(amountB, slippageBps);
6509
+ const [amount0Desired, amount1Desired, amount0Min, amount1Min] = tokenAId === poolState.token0Info.id ? [amountA, amountB, amountAMin, amountBMin] : [amountB, amountA, amountBMin, amountAMin];
6510
+ const extraAlph = this.getExtraAlphAmount(tokenAId, tokenBId);
6497
6511
  let attoAlphAmount = extraAlph + import_web313.DUST_AMOUNT;
6498
6512
  const tokens = [];
6499
- if (tokenA.id === import_web313.ALPH_TOKEN_ID) {
6513
+ if (tokenAId === import_web313.ALPH_TOKEN_ID) {
6500
6514
  attoAlphAmount += amountA;
6501
- tokens.push({ id: tokenB.id, amount: amountB });
6502
- } else if (tokenB.id === import_web313.ALPH_TOKEN_ID) {
6515
+ tokens.push({ id: tokenBId, amount: amountB });
6516
+ } else if (tokenBId === import_web313.ALPH_TOKEN_ID) {
6503
6517
  attoAlphAmount += amountB;
6504
- tokens.push({ id: tokenA.id, amount: amountA });
6518
+ tokens.push({ id: tokenAId, amount: amountA });
6505
6519
  } else {
6506
- tokens.push({ id: tokenA.id, amount: amountA }, { id: tokenB.id, amount: amountB });
6520
+ tokens.push({ id: tokenAId, amount: amountA }, { id: tokenBId, amount: amountB });
6507
6521
  }
6508
6522
  const result = await AddLiquidity.execute({
6509
6523
  signer: this.scope.signer,
6510
6524
  initialFields: {
6511
6525
  sender,
6512
6526
  router: this.config.routerId,
6513
- pair: cpmmPoolState.poolId,
6527
+ pair: poolState.poolId,
6514
6528
  amount0Desired,
6515
6529
  amount1Desired,
6516
6530
  amount0Min,
6517
6531
  amount1Min,
6518
- deadline: deadline(ttl)
6532
+ deadline: deadline(ttlMinutes)
6519
6533
  },
6520
6534
  attoAlphAmount,
6521
6535
  tokens
@@ -6526,24 +6540,31 @@ var CpmmModule = class _CpmmModule extends ModuleBase {
6526
6540
  if (!this.scope.signer) {
6527
6541
  throw new Error("Signer is required for removeLiquidity operation");
6528
6542
  }
6529
- const { state, liquidity, totalLiquidityAmount, slippage, sender, ttl = 60 } = params;
6530
- const ownedLiquidity = totalLiquidityAmount ?? state.totalSupply;
6531
- const details = _CpmmModule.computeRemoveLiquidityAmounts(state, ownedLiquidity, liquidity);
6532
- const amount0Min = _CpmmModule.minimalAmount(details.amount0, slippage);
6533
- const amount1Min = _CpmmModule.minimalAmount(details.amount1, slippage);
6543
+ const {
6544
+ poolState,
6545
+ liquidity,
6546
+ totalLiquidityAmount,
6547
+ slippageBps,
6548
+ sender,
6549
+ ttlMinutes = 60
6550
+ } = params;
6551
+ const ownedLiquidity = totalLiquidityAmount ?? poolState.totalSupply;
6552
+ const details = _CpmmModule.computeRemoveLiquidityAmounts(poolState, ownedLiquidity, liquidity);
6553
+ const amount0Min = _CpmmModule.minimalAmount(details.amount0, slippageBps);
6554
+ const amount1Min = _CpmmModule.minimalAmount(details.amount1, slippageBps);
6534
6555
  const result = await RemoveLiquidity.execute({
6535
6556
  signer: this.scope.signer,
6536
6557
  initialFields: {
6537
6558
  sender,
6538
6559
  router: this.config.routerId,
6539
- pairId: state.poolId,
6560
+ pairId: poolState.poolId,
6540
6561
  liquidity,
6541
6562
  amount0Min,
6542
6563
  amount1Min,
6543
- deadline: deadline(ttl)
6564
+ deadline: deadline(ttlMinutes)
6544
6565
  },
6545
- attoAlphAmount: this.getExtraAlphAmount(state.token0Info.id, state.token1Info.id) + import_web313.DUST_AMOUNT,
6546
- tokens: [{ id: state.poolId, amount: liquidity }]
6566
+ attoAlphAmount: this.getExtraAlphAmount(poolState.token0Info.id, poolState.token1Info.id) + import_web313.DUST_AMOUNT,
6567
+ tokens: [{ id: poolState.poolId, amount: liquidity }]
6547
6568
  });
6548
6569
  return result;
6549
6570
  }
@@ -6561,11 +6582,13 @@ var CpmmModule = class _CpmmModule extends ModuleBase {
6561
6582
  if (!this.scope.signer) {
6562
6583
  throw new Error("Signer is required for createPool operation");
6563
6584
  }
6564
- const { tokenA, tokenB, sender, tokenAAmount, tokenBAmount } = params;
6565
- const poolId = this.getPoolId(tokenA.id, tokenB.id);
6566
- if (tokenAAmount !== void 0 && tokenBAmount !== void 0) {
6567
- const [token0Id, token1Id] = sortTokens(tokenA.id, tokenB.id);
6568
- const [amount0, amount1] = token0Id === tokenA.id ? [tokenAAmount, tokenBAmount] : [tokenBAmount, tokenAAmount];
6585
+ const { tokenAId, tokenBId, sender, initialLiquidity } = params;
6586
+ const poolId = this.getPoolId(tokenAId, tokenBId);
6587
+ if (initialLiquidity) {
6588
+ const { tokenAAmount, tokenBAmount } = initialLiquidity;
6589
+ const [token0Id, token1Id] = sortTokens(tokenAId, tokenBId);
6590
+ const [amount0, amount1] = token0Id === tokenAId ? [tokenAAmount, tokenBAmount] : [tokenBAmount, tokenAAmount];
6591
+ const state = await TokenPairFactory.at((0, import_web313.addressFromContractId)(this.config.factoryId)).fetchState();
6569
6592
  const result2 = await CreatePairAndAddLiquidity.execute({
6570
6593
  signer: this.scope.signer,
6571
6594
  initialFields: {
@@ -6575,9 +6598,10 @@ var CpmmModule = class _CpmmModule extends ModuleBase {
6575
6598
  token0Id,
6576
6599
  token1Id,
6577
6600
  amount0,
6578
- amount1
6601
+ amount1,
6602
+ dexAccount: state.fields.dexAccount0
6579
6603
  },
6580
- attoAlphAmount: import_web313.ONE_ALPH + this.getExtraAlphAmount(tokenA.id, tokenB.id),
6604
+ attoAlphAmount: import_web313.ONE_ALPH + this.getExtraAlphAmount(tokenAId, tokenBId),
6581
6605
  tokens: [
6582
6606
  { id: token0Id, amount: amount0 },
6583
6607
  { id: token1Id, amount: amount1 }
@@ -6591,13 +6615,13 @@ var CpmmModule = class _CpmmModule extends ModuleBase {
6591
6615
  payer: sender,
6592
6616
  factory: this.config.factoryId,
6593
6617
  alphAmount: import_web313.ONE_ALPH,
6594
- tokenAId: tokenA.id,
6595
- tokenBId: tokenB.id
6618
+ tokenAId,
6619
+ tokenBId
6596
6620
  },
6597
- attoAlphAmount: import_web313.ONE_ALPH + this.getExtraAlphAmount(tokenA.id, tokenB.id),
6621
+ attoAlphAmount: import_web313.ONE_ALPH + this.getExtraAlphAmount(tokenAId, tokenBId),
6598
6622
  tokens: [
6599
- { id: tokenA.id, amount: 1n },
6600
- { id: tokenB.id, amount: 1n }
6623
+ { id: tokenAId, amount: 1n },
6624
+ { id: tokenBId, amount: 1n }
6601
6625
  ]
6602
6626
  });
6603
6627
  return { ...result, poolId };
@@ -6616,17 +6640,19 @@ var CpmmModule = class _CpmmModule extends ModuleBase {
6616
6640
  }
6617
6641
  }
6618
6642
  static computeSwapAmount(params) {
6619
- const { state, tokenIn, tokenOut, amountIn, amountOut, slippage } = params;
6643
+ const { state, tokenInId, tokenOutId, amountIn, amountOut, slippageBps } = params;
6644
+ const tokenInInfo = this.getTokenInfoFromPoolState(state, tokenInId, "tokenInId");
6645
+ const tokenOutInfo = this.getTokenInfoFromPoolState(state, tokenOutId, "tokenOutId");
6620
6646
  let swapType;
6621
6647
  let tokenInAmount;
6622
6648
  let tokenOutAmount;
6623
6649
  if (amountIn !== void 0) {
6624
6650
  swapType = "ExactIn";
6625
6651
  tokenInAmount = amountIn;
6626
- tokenOutAmount = _CpmmModule.getAmountOut(state, tokenIn.id, amountIn);
6652
+ tokenOutAmount = _CpmmModule.getAmountOut(state, tokenInInfo.id, amountIn);
6627
6653
  } else if (amountOut !== void 0) {
6628
6654
  swapType = "ExactOut";
6629
- tokenInAmount = _CpmmModule.getAmountIn(state, tokenOut.id, amountOut);
6655
+ tokenInAmount = _CpmmModule.getAmountIn(state, tokenOutInfo.id, amountOut);
6630
6656
  tokenOutAmount = amountOut;
6631
6657
  } else {
6632
6658
  throw new Error("Either amountIn or amountOut must be specified");
@@ -6634,7 +6660,7 @@ var CpmmModule = class _CpmmModule extends ModuleBase {
6634
6660
  const priceImpact = this.calcPriceImpact(
6635
6661
  state.reserve0,
6636
6662
  state.reserve1,
6637
- tokenIn.id,
6663
+ tokenInInfo.id,
6638
6664
  state.token0Info.id,
6639
6665
  tokenInAmount,
6640
6666
  tokenOutAmount
@@ -6642,29 +6668,29 @@ var CpmmModule = class _CpmmModule extends ModuleBase {
6642
6668
  return {
6643
6669
  swapType,
6644
6670
  state,
6645
- tokenInInfo: tokenIn,
6646
- tokenOutInfo: tokenOut,
6671
+ tokenInInfo,
6672
+ tokenOutInfo,
6647
6673
  tokenInAmount,
6648
6674
  tokenOutAmount,
6649
6675
  priceImpact,
6650
- minimalTokenOutAmount: swapType === "ExactIn" ? this.minimalAmount(tokenOutAmount, slippage) : void 0,
6651
- maximalTokenInAmount: swapType === "ExactOut" ? this.maximalAmount(tokenInAmount, slippage) : void 0
6676
+ minimalTokenOutAmount: swapType === "ExactIn" ? this.minimalAmount(tokenOutAmount, slippageBps) : void 0,
6677
+ maximalTokenInAmount: swapType === "ExactOut" ? this.maximalAmount(tokenInAmount, slippageBps) : void 0
6652
6678
  };
6653
6679
  }
6654
6680
  static computeLiquidityAmounts(params) {
6655
- const { state, tokenA, tokenB, amountA, amountB, inputType = "TokenA" } = params;
6656
- if (!state) {
6657
- if (!amountA || !amountB) {
6681
+ const { poolState, tokenAId, tokenBId, amountA, amountB, inputType = "TokenA" } = params;
6682
+ if (!poolState) {
6683
+ if (amountA === void 0 || amountB === void 0) {
6658
6684
  throw new Error("Both amountA and amountB are required for initial liquidity");
6659
6685
  }
6660
- return this.getInitLiquidityDetails(tokenA.id, tokenB.id, amountA, amountB);
6686
+ return this.getInitLiquidityDetails(tokenAId, tokenBId, amountA, amountB);
6661
6687
  }
6662
- const inputTokenId = inputType === "TokenA" ? tokenA.id : tokenB.id;
6688
+ const inputTokenId = inputType === "TokenA" ? tokenAId : tokenBId;
6663
6689
  const inputAmount = inputType === "TokenA" ? amountA : amountB;
6664
- if (!inputAmount) {
6690
+ if (inputAmount === void 0) {
6665
6691
  throw new Error(`Amount for ${inputType} is required`);
6666
6692
  }
6667
- return this.getLiquidityDetails(state, inputTokenId, inputAmount, inputType);
6693
+ return this.getLiquidityDetails(poolState, inputTokenId, inputAmount, inputType);
6668
6694
  }
6669
6695
  static computeRemoveLiquidityAmounts(state, totalLiquidity, liquidityToRemove) {
6670
6696
  if (liquidityToRemove > totalLiquidity) {
@@ -6755,6 +6781,15 @@ var CpmmModule = class _CpmmModule extends ModuleBase {
6755
6781
  sharePercentage: 100
6756
6782
  };
6757
6783
  }
6784
+ static getTokenInfoFromPoolState(state, tokenId, tokenLabel) {
6785
+ if (state.token0Info.id === tokenId) {
6786
+ return state.token0Info;
6787
+ }
6788
+ if (state.token1Info.id === tokenId) {
6789
+ return state.token1Info;
6790
+ }
6791
+ throw new Error(`Unknown ${tokenLabel} ${tokenId} for pool ${state.poolId}`);
6792
+ }
6758
6793
  static _getAmountOut(amountIn, reserveIn, reserveOut) {
6759
6794
  const amountInExcludeFee = 997n * amountIn;
6760
6795
  const numerator = amountInExcludeFee * reserveOut;
@@ -6851,7 +6886,7 @@ var import_web315 = require("@alephium/web3");
6851
6886
 
6852
6887
  // ../clmm/artifacts/BitmapWord.ral.json
6853
6888
  var BitmapWord_ral_default = {
6854
- version: "v4.3.0",
6889
+ version: "v4.4.1",
6855
6890
  name: "BitmapWord",
6856
6891
  bytecode: "020540d641c941e7429442aa0000010201406516000c301340967b0c1701160013cd0100000000000000000000000000000000344c0816001340803c170016011340802a1701160013c5010000000000000000344c0816001340403c170016011340402a1701160013c10100000000344c08160013203c1700160113202a170116001380010000344c08160013103c1700160113102a17011600134100344c08160013083c1700160113082a170116001310344c081600103c17001601102a1701160010344c0816000e3c170016010e2a170116000e344c0416010d2a17011601020000010201407c16000c301340977b1340ff1701160013ccffffffffffffffffffffffffffffffff380c334c0516011340802b17014a0416001340803c1700160013c4ffffffffffffffff380c334c0516011340402b17014a0416001340403c1700160013c0ffffffff380c334c05160113202b17014a04160013203c17001600138000ffff380c334c05160113102b17014a04160013103c170016001340ff380c334c05160113082b17014a04160013083c17001600130f380c334c051601102b17014a041600103c170016000f380c334c0516010e2b17014a0416000e3c170016000d380c334c0416010d2b170116010201000101000dd3ff38d2a3ce00b4451341937ba0000d160000043b3aa1000100030f024064d327ef6f9f16014c40301600000417030d16033b0d2b0d16033b2a1704a000160438170516050c30170616064c0e16001603160500002b3f20160221170716071606024a0a160016033f20160221170816081606024a40311600000417090d16093b0d2b0c0d363a170aa000160a38170b160b0c30170c160c4c0e1600160b000116092b3f1f160221170d160d160c024a0c16001240ff16093f201f160221170e160e160c020000010101091600124100231241001f124100233d02",
6857
6892
  codeHash: "69fd344eb51899a9bdc30ae94beeb2dcfeb2fc312d39116ebe9d208a55293edd",
@@ -7483,7 +7518,7 @@ var import_web316 = require("@alephium/web3");
7483
7518
 
7484
7519
  // ../clmm/artifacts/BitmapWordDeployer.ral.json
7485
7520
  var BitmapWordDeployer_ral_default = {
7486
- version: "v4.3.0",
7521
+ version: "v4.4.1",
7487
7522
  name: "BitmapWordDeployer",
7488
7523
  bytecode: "00014026010301040113d3c7309617b41301640c130164170217011600d1a2b316011602af1703160302",
7489
7524
  codeHash: "082de32f22857e094db5658611a1d2ba23e792a7f23a548525e6de2784f2a70b",
@@ -7578,7 +7613,7 @@ var import_web317 = require("@alephium/web3");
7578
7613
 
7579
7614
  // ../clmm/artifacts/DexAccount.ral.json
7580
7615
  var DexAccount_ral_default2 = {
7581
- version: "v4.3.0",
7616
+ version: "v4.4.1",
7582
7617
  name: "DexAccount",
7583
7618
  bytecode: "0505404b409940b240ca40e60103050800402cd3bd481528b417051600ce0116011602aa16047a0e314dc3170616064313202f4c1816047a0e314dc31603cc17071605160777467a4c0418a0020c304c04a0020d2ba10201000106004029d365b302f9b41701160149191341f47b160047cb17021602c54c06ce000d0d160201024a01ce00170316011603130264a000a001a00213036417051704160147b116041605c11801000101010ad358cbdacfa0020c2f4c03ce00024a0216000201030101000ad3511324a7b4b1a50d2f1341937b1600a10201030202000cd375472acbb4b1a50d2f1341937b16001601a101a100",
7584
7619
  codeHash: "66c27c91033d54a2d3edc97dbc36b35022274ddd8a7b84b724631ac37586ed48",
@@ -7816,7 +7851,7 @@ var import_web318 = require("@alephium/web3");
7816
7851
 
7817
7852
  // ../clmm/artifacts/LiquidityAmountsTest.ral.json
7818
7853
  var LiquidityAmountsTest_ral_default = {
7819
- version: "v4.3.0",
7854
+ version: "v4.4.1",
7820
7855
  name: "LiquidityAmountsTest",
7821
7856
  bytecode: "0006402e405240a440d241b441d701000304010dd3b8a5f4fb1600160113c9010000000000000000000000000004170316021603160116002b000402010003030108d364be47fc160213c901000000000000000000000000160116002b00040201000507014027d345f12d7a16001601324c061601160216030000024a1c16001602314c13160016021603000017051601160016040001170616051606314c0216054a011606024a0516011602160400010201000304010ed374e08b3b160213c9010000000000000000000000002c160116002b160100041703160316002d020000030901408d160016010c0d3687170316001601371704160316043616031604314c020d4a010c36170516050c2f4c04160416022d02160216053313415f7b160016011602871706160516061604334c020d4a010c361705160416063617040c1602361602381707160216072d1702160416072d17040c16073616072d0d351707160416051607373917040f1602370e3a170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816041608370200000304011216001601160200041703160016011602870c334c0416030d2a02160302",
7822
7857
  codeHash: "6a4ba04c81892909e02efe02e9f3ebf139cf27afd40f5fca01f4a9b98a9003da",
@@ -8167,7 +8202,7 @@ var import_web319 = require("@alephium/web3");
8167
8202
 
8168
8203
  // ../clmm/artifacts/LiquidityManagmentTest.ral.json
8169
8204
  var LiquidityManagmentTest_ral_default = {
8170
- version: "v4.3.0",
8205
+ version: "v4.4.1",
8171
8206
  name: "LiquidityManagmentTest",
8172
8207
  bytecode: "010e409a40c840ec413e416c424e4271427b429042a642bc42d746564a5201030b16044051d39b20ce13ce00160116024416030009170b160516060e0f160b012e170e170d170c160c160d160e160716080003170f160b160416051606000b171016001610a5171116001601a5171216001602a5171316007a7a16011612a316021613a316101611a31600160416051606160f110e160b01251715171416141609347a4c04181615160a341343527b160f16141615160b0201000304010dd3b8a5f4fb1600160113c9010000000000000000000000000005170316021603160116002b000502010003030108d364be47fc160213c901000000000000000000000000160116002b00050201000507014027d345f12d7a16001601324c061601160216030001024a1c16001602314c13160016021603000117051601160016040002170616051606314c0216054a011606024a0516011602160400020201000304010ed374e08b3b160213c9010000000000000000000000002c160116002b160100051703160316002d020000030901408d160016010c0d3687170316001601371704160316043616031604314c020d4a010c36170516050c2f4c04160416022d02160216053313415f7b160016011602871706160516061604334c020d4a010c361705160416063617040c1602361602381707160216072d1702160416072d17040c16073616072d0d351707160416051607373917040f1602370e3a170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816041608370200000304011216001601160200051703160016011602870c334c0416030d2a0216030200000101010316004002000003040109160016020007cc17031601160344020000030401091600160116020008170316001603cc02010003030108d37afb14100d1600160116021304640201000405010ad35b19984c160116021603000a170416001604cc020000010301413816000c3f264c061600057c203d4a0216003d1701160112800d89e83d321340ca7b16010d380c304c0213ccfffcb933bd6fad37aa2d162d1a5940014a0113cd0100000000000000000000000000000000170216010e380c304c06160213ccfff97272373d413259a46990580e213a2c1340803c4a0116021702160110380c304c06160213ccfff2e50f5f656932ef12357cf3c7fdcc2c1340803c4a011602170216011308380c304c06160213ccffe5caca7e10e4e61c3624eaa0941cd02c1340803c4a011602170216011310380c304c06160213ccffcb9843d60f6159c9db58835c9266442c1340803c4a011602170216011320380c304c06160213ccff973b41fa98c081472e6896dfb254c02c1340803c4a01160217021601134040380c304c06160213ccff2ea16466c96a3843ec78b326b528612c1340803c4a01160217021601134080380c304c06160213ccfe5dee046a99a2a811c461f1969c30532c1340803c4a01160217021601134100380c304c06160213ccfcbe86c7900a88aedcffc83b479aa3a42c1340803c4a01160217021601134200380c304c06160213ccf987a7253ac413176f2b074cf7815e542c1340803c4a01160217021601134400380c304c06160213ccf3392b0822b70005940c7a398e4b70f32c1340803c4a01160217021601134800380c304c06160213cce7159475a2c29b7443b29c7fa6e889d92c1340803c4a01160217021601135000380c304c06160213ccd097f3bdfd2022b8845ad8f792aa58252c1340803c4a01160217021601136000380c304c06160213cca9f746462d870fdf8a65dc1f90e061e52c1340803c4a011602170216011380004000380c304c06160213cc70d869a156d2a1b890bb3df62baf32f72c1340803c4a011602170216011380008000380c304c06160213cc31be135f97d08fd981231505542fcfa62c1340803c4a011602170216011380010000380c304c06160213cc09aa508b5b7a84e1c677de54f3e99bc92c1340803c4a011602170216011380020000380c304c06160213cb5d6af8dedb81196699c329225ee6042c1340803c4a011602170216011380040000380c304c06160213ca2216e584f5fa1ea926041bedfe982c1340803c4a011602170216011380080000380c304c06160213c8048a170391f7dc42444e8fa22c1340803c4a0116021702160005284c060c0d3616022d4a0116021702160213c1010000000091020100010b0141f2d3c6eb44f3160013c101000276a3347a4c0418160013d0fffd8963efd1fc6a506488495d951d5263988d26311340c97b160013203b1701160117020c1703160213cd01000000000000000000000000000000000d2b334c08160313408039170316021340803c1702160213c50100000000000000000d2b334c08160313404039170316021340403c1702160213c101000000000d2b334c0816031320391703160213203c17021602138000ffff334c0816031310391703160213103c170216021340ff334c0816031308391703160213083c17021602130f334c081603103917031602103c170216020f334c0816030e39170316020e3c170216020d334c0416030d3917031603134080344c071601160313407f2b3c17024a06160113407f16032b3b17021603134080314c0e0c0d3613407f2b16032a0c0d361340403c384a0316031340802b1340403b17040c1705160216022c13407f3c170216021340803c170516041605133f3b391704160216053c1702160216022c13407f3c170216021340803c170516041605133e3b391704160216053c1702160216022c13407f3c170216021340803c170516041605133d3b391704160216053c1702160216022c13407f3c170216021340803c170516041605133c3b391704160216053c1702160216022c13407f3c170216021340803c170516041605133b3b391704160216053c1702160216022c13407f3c170216021340803c170516041605133a3b391704160216053c1702160216022c13407f3c170216021340803c17051604160513393b391704160216053c1702160216022c13407f3c170216021340803c17051604160513383b391704160216053c1702160216022c13407f3c170216021340803c17051604160513373b391704160216053c1702160216022c13407f3c170216021340803c17051604160513363b391704160216053c1702160216022c13407f3c170216021340803c17051604160513353b391704160216053c1702160216022c13407f3c170216021340803c17051604160513343b391704160216053c1702160216022c13407f3c170216021340803c17051604160513333b391704160216053c1702160216022c13407f3c170216021340803c17051604160513323b391704160413c63627a301d71055774c85371706160613dcfffffffffffffffffffffffffffffffffd709b7e5480fba5a50fed5e62ffc556351340803c1707160613ccdb2df09e81959a81455e260799a0632f351340803c170816071380800000314c0316073f4a0616071380ffffff383f128100000020170916081380800000314c0316083f4a0616081380ffffff383f128100000020170a1609160a244c031609024a0a160a000c1600324c03160a024a02160902",
8173
8208
  codeHash: "8824caa1efe83247812dfa7f32a80ae3d4603937df2b062437581ac421fa817d",
@@ -8935,10 +8970,10 @@ var import_web320 = require("@alephium/web3");
8935
8970
 
8936
8971
  // ../clmm/artifacts/Pool.ral.json
8937
8972
  var Pool_ral_default = {
8938
- version: "v4.3.0",
8973
+ version: "v4.4.1",
8939
8974
  name: "Pool",
8940
- bytecode: "4020403609124023403843b747b34916493049ca4a3c4a6c4a9c4ad04afc4b3b4b674c494c6c4c8a4cbc4cd84d0b4d6c4d824d9d4da74dbc4dd24df94e064e1b4e714e854eef4f5f4feb508b512f51b45206524e535c562056ae572f57af57c5589258af597a5a125a4b5bfe5c55010000000102140002010000000102a0000201000101010716000c3413406e7bce0102010002030008160100021702160016024113406d7b0000010301413816000c3f264c061600057c203d4a0216003d1701160112800d89e83d321340ca7b16010d380c304c0213ccfffcb933bd6fad37aa2d162d1a5940014a0113cd0100000000000000000000000000000000170216010e380c304c06160213ccfff97272373d413259a46990580e213a2c1340803c4a0116021702160110380c304c06160213ccfff2e50f5f656932ef12357cf3c7fdcc2c1340803c4a011602170216011308380c304c06160213ccffe5caca7e10e4e61c3624eaa0941cd02c1340803c4a011602170216011310380c304c06160213ccffcb9843d60f6159c9db58835c9266442c1340803c4a011602170216011320380c304c06160213ccff973b41fa98c081472e6896dfb254c02c1340803c4a01160217021601134040380c304c06160213ccff2ea16466c96a3843ec78b326b528612c1340803c4a01160217021601134080380c304c06160213ccfe5dee046a99a2a811c461f1969c30532c1340803c4a01160217021601134100380c304c06160213ccfcbe86c7900a88aedcffc83b479aa3a42c1340803c4a01160217021601134200380c304c06160213ccf987a7253ac413176f2b074cf7815e542c1340803c4a01160217021601134400380c304c06160213ccf3392b0822b70005940c7a398e4b70f32c1340803c4a01160217021601134800380c304c06160213cce7159475a2c29b7443b29c7fa6e889d92c1340803c4a01160217021601135000380c304c06160213ccd097f3bdfd2022b8845ad8f792aa58252c1340803c4a01160217021601136000380c304c06160213cca9f746462d870fdf8a65dc1f90e061e52c1340803c4a011602170216011380004000380c304c06160213cc70d869a156d2a1b890bb3df62baf32f72c1340803c4a011602170216011380008000380c304c06160213cc31be135f97d08fd981231505542fcfa62c1340803c4a011602170216011380010000380c304c06160213cc09aa508b5b7a84e1c677de54f3e99bc92c1340803c4a011602170216011380020000380c304c06160213cb5d6af8dedb81196699c329225ee6042c1340803c4a011602170216011380040000380c304c06160213ca2216e584f5fa1ea926041bedfe982c1340803c4a011602170216011380080000380c304c06160213c8048a170391f7dc42444e8fa22c1340803c4a0116021702160005284c060c0d3616022d4a0116021702160213c1010000000091020100010b0141f2d3c6eb44f3160013c101000276a3347a4c0418160013d0fffd8963efd1fc6a506488495d951d5263988d26311340c97b160013203b1701160117020c1703160213cd01000000000000000000000000000000000d2b334c08160313408039170316021340803c1702160213c50100000000000000000d2b334c08160313404039170316021340403c1702160213c101000000000d2b334c0816031320391703160213203c17021602138000ffff334c0816031310391703160213103c170216021340ff334c0816031308391703160213083c17021602130f334c081603103917031602103c170216020f334c0816030e39170316020e3c170216020d334c0416030d3917031603134080344c071601160313407f2b3c17024a06160113407f16032b3b17021603134080314c0e0c0d3613407f2b16032a0c0d361340403c384a0316031340802b1340403b17040c1705160216022c13407f3c170216021340803c170516041605133f3b391704160216053c1702160216022c13407f3c170216021340803c170516041605133e3b391704160216053c1702160216022c13407f3c170216021340803c170516041605133d3b391704160216053c1702160216022c13407f3c170216021340803c170516041605133c3b391704160216053c1702160216022c13407f3c170216021340803c170516041605133b3b391704160216053c1702160216022c13407f3c170216021340803c170516041605133a3b391704160216053c1702160216022c13407f3c170216021340803c17051604160513393b391704160216053c1702160216022c13407f3c170216021340803c17051604160513383b391704160216053c1702160216022c13407f3c170216021340803c17051604160513373b391704160216053c1702160216022c13407f3c170216021340803c17051604160513363b391704160216053c1702160216022c13407f3c170216021340803c17051604160513353b391704160216053c1702160216022c13407f3c170216021340803c17051604160513343b391704160216053c1702160216022c13407f3c170216021340803c17051604160513333b391704160216053c1702160216022c13407f3c170216021340803c17051604160513323b391704160413c63627a301d71055774c85371706160613dcfffffffffffffffffffffffffffffffffd709b7e5480fba5a50fed5e62ffc556351340803c1707160613ccdb2df09e81959a81455e260799a0632f351340803c170816071380800000314c0316073f4a0616071380ffffff383f128100000020170916081380800000314c0316083f4a0616081380ffffff383f128100000020170a1609160a244c031609024a0a160a00041600324c03160a024a021609020000050d0440c5160016013417051603052917060c17070c17080c17090c170a16064c402316033d13800f424016042b13800f42400010170b16054c0616011600160203000c4a0516001601160203000e1707160b1607344c0216014a0516001602160b1605000a17094a402216054c0616011600160204000e4a0516001601160204000c17081603057c203d1608344c0216014a09160016021603057c203d1605000b1709160116092f170c16054c1e160c7a4c021816064c0216074a0516091600160203000c1707160c7a4c03181606194c0216084a0516091600160204000e17084a1d160c7a4c021816064c0216074a0516001609160203000e1707160c7a4c03181606194c0216084a0516001609160204000c17081606197a4c0818160316083f057c20284c061603057c203d170816067a4c041816091601304c0616033d16072b170a4a071607160413800f424016042b0011170a160916071608160a0200000202010e160016012d160016012e0c2f4c020c4a010d2a020000040901404916020c2f4c0216000216011340603b17041602160037170516034c1c160516022d16002f4c0d1604160535170616061604344c051604160016060011021604160416002d16022a0007024a1d160516022d16002f7a4c041816041605331340dd7b160416052b170716041600160700111708160813d1010000000000000000000000000000000000000000311340e17b1608020000040701402116034c11160213c901000000000000000000000000160100101704160016042a1705160513d1010000000000000000000000000000000000000000311340e17b1605024a0e160213c90100000000000000000000000016010011170616001606331340de7b160016062b0200000404011916000c331340df7b16010c331340e07b16034c07160016011602030008024a061600160116020300090200000404011916000c331340df7b16010c331340e07b16034c07160016011602040009024a061600160116020400080200000406011916021340603b1704160116002b170516034c08160416051601001116000007024a07160416051601001016002d0200000303011b16020b274c0f160016011602057c203d04000c3f057c20024a081600160116023d03000c3f02000004050111160116002b170416034c061602160413c9010000000000000000000000000011024a051602160413c90100000000000000000000000000100200000303011b160205264c0f160016011602057c203d04000e3f057c20024a081600160116023d03000e3f020000030901408d160016010c0d3687170316001601371704160316043616031604314c020d4a010c36170516050c2f4c04160416022d02160216053313415f7b160016011602871706160516061604334c020d4a010c361705160416063617040c1602361602381707160216072d1702160416072d17040c16073616072d0d351707160416051607373917040f1602370e3a170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816041608370200000304011216001601160200101703160016011602870c334c0416030d2a021603020000010101120e16007a7a1241003a7a05294b033a904a023a221302640200000105011b1600001217011601cb17021602c54c02160202b21301640c130164170417031601ce0416031604c11816020200000103010d1600001217011601cb17021602c54c02160202ce040200000103001e1600ce0a23052413412d7b16007a7ace0a3a7a05294b033a904a023a22170116010013170216010d0c160201020000020602403016007a7ace0a3a7a05294b033a904a023a2216014c02054a01061f170216020014170316021601ce0a0f0e1603010317051704160412bff27618264c0212bff276181704160412800d89e8284c0212800d89e817041604160502010003030108d37afb14100d1600160116021304640201000405010ad35b19984c1601160216030017170416001604cc0200000101010316004002000003040109160016020019cc1703160116034402000003040109160016011602001a170316001603cc0200000202000f16001601261340667b160012bff27618291340677b160112800d89e8271340687b0000010101050c160013026402010001020107d30949c5981600001d17011601cb02000001080240301600001d17011601cb17021602c54c03160204021600a002274c04a00ea00fa0104a030c0c0c170517041703b216001302640c05160316041605130564170717061601ce0316061607c11816020302000003040108160016011602001717031603cb020000030d024039160016011602001717031603cb17041604c54c03160404020c0c0c1709170817070c0c0c170c170b170ab2a0001406414c504800031303640c160716081609160a160b160c13076417061705a0000d2aa1001603ce01160516060d1600c9181604030200000209034047a002a00ea00fa010100f16000101170417031702a002a00ea00fa010100f160101021707170617050c170816080f314c402716087a0f314d130e2ac316087a0f314d0e2a782b16087a0f314d112a783616087a0f314d0e2a7916080d2a17084a7fd5160216031604020000051103404b1602001f170617051603001f17081707ce0b1604040f0d160501001709ce0b1604030f0d16070100170a16097a4b021816064c0216020015160a7a4b021816084c0216030015160516070022170d170c170b1604160b160c160d100f160001041710170f170e16094c0516010d0c16050103160a4c0516010d0c16070103160e160f1610020003050f05405416021603001c560030160016011602160316040023170717061705160405254c403ca004170816020004170916030004170aa0021602264c0b1609160a1604000d170b160b0516051606160702a0021603264c16a001160a1604000d170c1609a0011604000f170d16083f16041f3da104160c160d160516061607021609160a1604000f170e05160e1605160616070205051605160616070201070513024056d3e58379f416011602160300211706170516064c0d16040c2f170716071913406b7b160016014513406c7b16011602160316043f170b170a170917081600160516064c020c4a010da3160516081609160a160b00241710170f170e170d170c160c3d1711160d3d17121600ce061611ac1600ce071612ac1207160116021603160e160f161056750916001601160216031604161116125676161116120201030511024048d39d5023b316011602160316043f057c20170817071706170516011602160300201709160016090da3160916051606160716080024170e170d170c170b170a160a057c203d170f160b057c203d1710160f16100e0c160901051207160116021603160c160d160e56750a16001601160216031604160f161075160f1610020103080c034027d3417830ee160216031604002017081605160616070f0f16080106170b170a1709160016080da316011609160a160b00281206160016011602160316041609160a160b761609160a160b020001040800402ece06ce07ce081706170517040c170716070f314c402216077a0f314d0d2a780c334c12160016077a0f314d102a7816077a0f314d0d2a78ab16070d2a17074a7fda01000418004097d34c88990ba0011704a0021705a00417061601052817070517081605160019001618170906160900045e16030c334c407c16030d2b1703160516000016170b170a160a0004170c1604160c16061601ce0900061710170f170e170d16074c0d1601160e16102a3f2017011608160f3f2017084a0c1601160f3f1f17011608160e16102a3f1f1708160b4c17160a001e17110c0d16110105171216004c051612057c204a011612171316063f16131f3d170616004c04160a06204a01160a1705160d170407160416065f160105244c1f1602430c2f4c0102160016071c4c02ce074a01ce061714160216141607002b171717161817151615160816171603100c16160129024a7f80010307403402416dd3d6407a21160405251340697b560030160405281707a001a002a003170a1709170816034c0c16051608317a4c0418160513c101000276a33313406a7b4a0b16051608337a4c0418160513d0fffd8963efd1fc6a506488495d951d5263988d263113406a7ba00416034c04160a13102e4a03160a103c170c170b1604051608160916034c02a00e4a01a00f160b0c1713171217111710170f170e170d160d05257a4c0418160f1605304c409b1610160300161715171416140004171616034c0416161605314a031616160533171716174c0216054a0116161718160f16181612160dce090006171c171b171a1719160f161416151616161a161b161c1723172217211720171f171e171d1619170f16074c0d160d162116232a3f20170d160e16223f20170e4a0c160d16223f1f170d160e162116232a3f1f170e160c0c334c041623160c2d4a010c1724161316242a171316120c334c091611162316242b13cd0100000000000000000000000000000000161200102a1711160f16202f4c4027161f4c1c161e001e1725a00ea00fa01016031611110d16250104172616034c051626057c204a011626172716123f16271f3d171216034c04161e06204a01161e17104a07160f161d304c03160f000517104a7f5b160fa1011610a1021612a1041613130a2d1728161316282b171316034c071611a10ea01116132aa1114a061611a10fa01216132aa1121604160d201729160e172a160316071d4c041629172a160e172916034c0e160016011602ce0616293dce07162a057c203d16064a0d160016011602ce07162a3dce061629057c203d1606173217311730172f172e172d172c172b16074c0f1600162e162fa3162b162c162d162e162f1630163116321628002d4a1216001602a51733160016021633a3162b162c162d162e162f1630163116321628002c08160016011629162aa001a004a002751629162a020000030d04404116000c13206217030e170416001320132016042a62170516056d1706160171160371311707160716021c170816084c0413c101000276a30d2a4a0313d0fffd8963efd1fc6a506488495d951d5263988d260d2b17091600132016042a16004362170a16074c0416011603444a031603160144170bce00160b1606001b170c16081609160c160a020001091000404716031602414c1e160016031604acce02160047cc1709ce00ce06ce0744ce05001a170a160016031608a3160016031608160a0c110c160901004a40211607160304002b170e170d170c170b16001602a5170f16001602160fa31600b21602160b16043f057c20160c160e13070e160d012a1818160116051606ab00010910004046160016031604acce02160147cc17091609c51340717b1609170ace00ce06ce0744ce05001a170b160016031608a3160016031608160b0c110c160a010016051602414c05160116051606ab4a1a1607160503002b170f170e170d170cb216051606a3b216011602160c16063f160d160f13070e160e012a1818010002020307d3c62bf5cfa0011600000416010004020000020800408716007a0f314d0f2c112ac3170216007a0f314d0f2c112a0d2ac3170316020c2f7a4b041816011602327a4b041816031602324c0102a0040c304c404f160116022b170416007a0f314d0f2c112a0e2ac31705160316022b170616041606314c0516041605160600104a011605170716007a0f314d130e2ac3160713cd0100000000000000000000000000000000a00400102a16007a0f314d130e2ac416007a0f314d0f2c112a0e2ac316072b16007a0f314d0f2c112a0e2ac4160116007a0f314d0f2c112ac400000102000e0c170116010f314c0816011600002f16010d2a17014a340107030a004096d34ca91e1416010f311340727b16020c331340747bce06ce07ce0817051704170316017a0f314d0f2a7817065617071607003016017a0f314d0f2c112a0e2ac3170816017a0f314d0f2c112a0d2ac31607337a4c041816080c331340737b16017a0f314d0f2c112a0d2ac316072b1709160716017a0f314d0f2c112ac416017a0f314d0f2c112a0d2ac316091602160800102a16017a0f314d0f2c112a0d2ac416017a0f314d0f2c112a0e2ac316022a16017a0f314d0f2c112a0e2ac4160016061602ac0107050a004065d375c252e5b4ce00774513406f7b16010f311340727b16040c331340747b56170516021605334c0216024a011605170616061603311340707b16050030ce06ce07ce08170917081707160616017a0f314d0f2c112ac4160316017a0f314d0f2c112a0d2ac416017a0f314d0f2c112a0e2ac316042a16017a0f314d0f2c112a0e2ac4160016017a0f314d13072a781604ac01020103001cd3960b26b3b3ce00411341937ba0111701a01217021600ce061601ab1600ce071602ab0ca1110ca1121208b41600160116026101000840270840d1d300611b5f1601001e17081602001e17091600160116020020170a0c10160a0107170e170d170c170b16081609002217111710170f160100041712160200041713051714051715160b3f1716a0021601264c06161216131616000d17144a14a0021602264c0ba00116131616000d17141612a0011616000f17154a05161216131616000f17150c0c0c171917181717160b0c334c40290c171a161a0f314c4023161a7a0f314d130f2a78161a7a0f314d130c2a782b171b161b160b13cd01000000000000000000000000000000000010161a7a0f314d13172a79161a0d2a171a4a7fd905171c05171d56171e161e16062b171f1607161f2a17201603160b161f2c2a3f1721a0021601264c06161216131621000d171c4a14a0021602264c0ba00116131621000d171c1612a0011621000f171d4a05161216131621000f171da001a00113c901000000000000000000000000001017221622161c3d13c9010000000000000000000000000010161d3d2a1723160416172a1724160516182a17251622162413c901000000000000000000000000001016252a17261614161516171618161916231626162002010000000103d3ee6a5cd514404868747470733a2f2f7261772e67697468756275736572636f6e74656e742e636f6d2f616c65706869756d2f746f6b656e2d6c6973742f6d61737465722f636f72652f6d2e6a736f6e02",
8941
- codeHash: "cdb37fb2772ba9c976a4dc34db15994ecaeef82d8690b9a94c600a81c67f98c4",
8975
+ bytecode: "4020403609124023403843b747b34916493049ca4a3c4a6c4a9c4ad04afc4b3b4b674c494c6c4c8a4cbc4cd84d0b4d6c4d824d9d4da74dbc4dd24df94e064e1b4e714e854eef4f5f4feb508b512f51b4520e52695377563b56c9574a57ca57e058ad58ca59955a2d5a665c195c70010000000102140002010000000102a0000201000101010716000c3413406e7bce0102010002030008160100021702160016024113406d7b0000010301413816000c3f264c061600057c203d4a0216003d1701160112800d89e83d321340ca7b16010d380c304c0213ccfffcb933bd6fad37aa2d162d1a5940014a0113cd0100000000000000000000000000000000170216010e380c304c06160213ccfff97272373d413259a46990580e213a2c1340803c4a0116021702160110380c304c06160213ccfff2e50f5f656932ef12357cf3c7fdcc2c1340803c4a011602170216011308380c304c06160213ccffe5caca7e10e4e61c3624eaa0941cd02c1340803c4a011602170216011310380c304c06160213ccffcb9843d60f6159c9db58835c9266442c1340803c4a011602170216011320380c304c06160213ccff973b41fa98c081472e6896dfb254c02c1340803c4a01160217021601134040380c304c06160213ccff2ea16466c96a3843ec78b326b528612c1340803c4a01160217021601134080380c304c06160213ccfe5dee046a99a2a811c461f1969c30532c1340803c4a01160217021601134100380c304c06160213ccfcbe86c7900a88aedcffc83b479aa3a42c1340803c4a01160217021601134200380c304c06160213ccf987a7253ac413176f2b074cf7815e542c1340803c4a01160217021601134400380c304c06160213ccf3392b0822b70005940c7a398e4b70f32c1340803c4a01160217021601134800380c304c06160213cce7159475a2c29b7443b29c7fa6e889d92c1340803c4a01160217021601135000380c304c06160213ccd097f3bdfd2022b8845ad8f792aa58252c1340803c4a01160217021601136000380c304c06160213cca9f746462d870fdf8a65dc1f90e061e52c1340803c4a011602170216011380004000380c304c06160213cc70d869a156d2a1b890bb3df62baf32f72c1340803c4a011602170216011380008000380c304c06160213cc31be135f97d08fd981231505542fcfa62c1340803c4a011602170216011380010000380c304c06160213cc09aa508b5b7a84e1c677de54f3e99bc92c1340803c4a011602170216011380020000380c304c06160213cb5d6af8dedb81196699c329225ee6042c1340803c4a011602170216011380040000380c304c06160213ca2216e584f5fa1ea926041bedfe982c1340803c4a011602170216011380080000380c304c06160213c8048a170391f7dc42444e8fa22c1340803c4a0116021702160005284c060c0d3616022d4a0116021702160213c1010000000091020100010b0141f2d3c6eb44f3160013c101000276a3347a4c0418160013d0fffd8963efd1fc6a506488495d951d5263988d26311340c97b160013203b1701160117020c1703160213cd01000000000000000000000000000000000d2b334c08160313408039170316021340803c1702160213c50100000000000000000d2b334c08160313404039170316021340403c1702160213c101000000000d2b334c0816031320391703160213203c17021602138000ffff334c0816031310391703160213103c170216021340ff334c0816031308391703160213083c17021602130f334c081603103917031602103c170216020f334c0816030e39170316020e3c170216020d334c0416030d3917031603134080344c071601160313407f2b3c17024a06160113407f16032b3b17021603134080314c0e0c0d3613407f2b16032a0c0d361340403c384a0316031340802b1340403b17040c1705160216022c13407f3c170216021340803c170516041605133f3b391704160216053c1702160216022c13407f3c170216021340803c170516041605133e3b391704160216053c1702160216022c13407f3c170216021340803c170516041605133d3b391704160216053c1702160216022c13407f3c170216021340803c170516041605133c3b391704160216053c1702160216022c13407f3c170216021340803c170516041605133b3b391704160216053c1702160216022c13407f3c170216021340803c170516041605133a3b391704160216053c1702160216022c13407f3c170216021340803c17051604160513393b391704160216053c1702160216022c13407f3c170216021340803c17051604160513383b391704160216053c1702160216022c13407f3c170216021340803c17051604160513373b391704160216053c1702160216022c13407f3c170216021340803c17051604160513363b391704160216053c1702160216022c13407f3c170216021340803c17051604160513353b391704160216053c1702160216022c13407f3c170216021340803c17051604160513343b391704160216053c1702160216022c13407f3c170216021340803c17051604160513333b391704160216053c1702160216022c13407f3c170216021340803c17051604160513323b391704160413c63627a301d71055774c85371706160613dcfffffffffffffffffffffffffffffffffd709b7e5480fba5a50fed5e62ffc556351340803c1707160613ccdb2df09e81959a81455e260799a0632f351340803c170816071380800000314c0316073f4a0616071380ffffff383f128100000020170916081380800000314c0316083f4a0616081380ffffff383f128100000020170a1609160a244c031609024a0a160a00041600324c03160a024a021609020000050d0440c5160016013417051603052917060c17070c17080c17090c170a16064c402316033d13800f424016042b13800f42400010170b16054c0616011600160203000c4a0516001601160203000e1707160b1607344c0216014a0516001602160b1605000a17094a402216054c0616011600160204000e4a0516001601160204000c17081603057c203d1608344c0216014a09160016021603057c203d1605000b1709160116092f170c16054c1e160c7a4c021816064c0216074a0516091600160203000c1707160c7a4c03181606194c0216084a0516091600160204000e17084a1d160c7a4c021816064c0216074a0516001609160203000e1707160c7a4c03181606194c0216084a0516001609160204000c17081606197a4c0818160316083f057c20284c061603057c203d170816067a4c041816091601304c0616033d16072b170a4a071607160413800f424016042b0011170a160916071608160a0200000202010e160016012d160016012e0c2f4c020c4a010d2a020000040901404916020c2f4c0216000216011340603b17041602160037170516034c1c160516022d16002f4c0d1604160535170616061604344c051604160016060011021604160416002d16022a0007024a1d160516022d16002f7a4c041816041605331340dd7b160416052b170716041600160700111708160813d1010000000000000000000000000000000000000000311340e17b1608020000040701402116034c11160213c901000000000000000000000000160100101704160016042a1705160513d1010000000000000000000000000000000000000000311340e17b1605024a0e160213c90100000000000000000000000016010011170616001606331340de7b160016062b0200000404011916000c331340df7b16010c331340e07b16034c07160016011602030008024a061600160116020300090200000404011916000c331340df7b16010c331340e07b16034c07160016011602040009024a061600160116020400080200000406011916021340603b1704160116002b170516034c08160416051601001116000007024a07160416051601001016002d0200000303011b16020b274c0f160016011602057c203d04000c3f057c20024a081600160116023d03000c3f02000004050111160116002b170416034c061602160413c9010000000000000000000000000011024a051602160413c90100000000000000000000000000100200000303011b160205264c0f160016011602057c203d04000e3f057c20024a081600160116023d03000e3f020000030901408d160016010c0d3687170316001601371704160316043616031604314c020d4a010c36170516050c2f4c04160416022d02160216053313415f7b160016011602871706160516061604334c020d4a010c361705160416063617040c1602361602381707160216072d1702160416072d17040c16073616072d0d351707160416051607373917040f1602370e3a170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816041608370200000304011216001601160200101703160016011602870c334c0416030d2a021603020000010101120e16007a7a1241003a7a05294b033a904a023a221302640200000105011b1600001217011601cb17021602c54c02160202b21301640c130164170417031601ce0416031604c11816020200000103010d1600001217011601cb17021602c54c02160202ce040200000103001e1600ce0a23052413412d7b16007a7ace0a3a7a05294b033a904a023a22170116010013170216010d0c160201020000020602403016007a7ace0a3a7a05294b033a904a023a2216014c02054a01061f170216020014170316021601ce0a0f0e1603010317051704160412bff27618264c0212bff276181704160412800d89e8284c0212800d89e817041604160502010003030108d37afb14100d1600160116021304640201000405010ad35b19984c1601160216030017170416001604cc0200000101010316004002000003040109160016020019cc1703160116034402000003040109160016011602001a170316001603cc0200000202000f16001601261340667b160012bff27618291340677b160112800d89e8271340687b0000010101050c160013026402010001020107d30949c5981600001d17011601cb02000001080240301600001d17011601cb17021602c54c03160204021600a002274c04a00ea00fa0104a030c0c0c170517041703b216001302640c05160316041605130564170717061601ce0316061607c11816020302000003040108160016011602001717031603cb020000030d024039160016011602001717031603cb17041604c54c03160404020c0c0c1709170817070c0c0c170c170b170ab2a0001406414c504800031303640c160716081609160a160b160c13076417061705a0000d2aa1001603ce01160516060d1600c9181604030200000209034047a002a00ea00fa010100f16000101170417031702a002a00ea00fa010100f160101021707170617050c170816080f314c402716087a0f314d130e2ac316087a0f314d0e2a782b16087a0f314d112a783616087a0f314d0e2a7916080d2a17084a7fd5160216031604020000051103404b1602001f170617051603001f17081707ce0b1604040f0d160501001709ce0b1604030f0d16070100170a16097a4b021816064c0216020015160a7a4b021816084c0216030015160516070022170d170c170b1604160b160c160d100f160001041710170f170e16094c0516010d0c16050103160a4c0516010d0c16070103160e160f1610020003050f05405416021603001c560030160016011602160316040023170717061705160405254c403ca004170816020004170916030004170aa0021602264c0b1609160a1604000d170b160b0516051606160702a0021603264c16a001160a1604000d170c1609a0011604000f170d16083f16041f3da104160c160d160516061607021609160a1604000f170e05160e1605160616070205051605160616070201070513024056d3e58379f416011602160300211706170516064c0d16040c2f170716071913406b7b160016014513406c7b16011602160316043f170b170a170917081600160516064c020c4a010da3160516081609160a160b00241710170f170e170d170c160c3d1711160d3d17121600ce061611ac1600ce071612ac1207160116021603160e160f161056750916001601160216031604161116125676161116120201030511024048d39d5023b316011602160316043f057c20170817071706170516011602160300201709160016090da3160916051606160716080024170e170d170c170b170a160a057c203d170f160b057c203d1710160f16100e0c160901051207160116021603160c160d160e56750a16001601160216031604160f161075160f1610020103080d03402bd3417830ee160216031604002017081605160616070f1016080106170c170b170a1709160016080da31608160016011609160a160b160c00281206160016011602160316041609160a160b761609160a160b020001070b004039ce06ce07ce081709170817070c170a160a0f314c4022160a7a0f314d0f2a780c334c121602160a7a0f314d13072a78160a7a0f314d0f2a78ab160a0d2a170a4a7fda16064c09160116000dbd16020d0c1600010701000418004097d34c88990ba0011704a0021705a00417061601052817070517081605160019001618170906160900045e16030c334c407c16030d2b1703160516000016170b170a160a0004170c1604160c16061601ce0900061710170f170e170d16074c0d1601160e16102a3f2017011608160f3f2017084a0c1601160f3f1f17011608160e16102a3f1f1708160b4c17160a001e17110c0d16110105171216004c051612057c204a011612171316063f16131f3d170616004c04160a06204a01160a1705160d170407160416065f160105244c1f1602430c2f4c0102160016071c4c02ce074a01ce061714160216141607002b171717161817151615160816171603100c16160129024a7f80010307403402416dd3d6407a21160405251340697b560030160405281707a001a002a003170a1709170816034c0c16051608317a4c0418160513c101000276a33313406a7b4a0b16051608337a4c0418160513d0fffd8963efd1fc6a506488495d951d5263988d263113406a7ba00416034c04160a13102e4a03160a103c170c170b1604051608160916034c02a00e4a01a00f160b0c1713171217111710170f170e170d160d05257a4c0418160f1605304c409b1610160300161715171416140004171616034c0416161605314a031616160533171716174c0216054a0116161718160f16181612160dce090006171c171b171a1719160f161416151616161a161b161c1723172217211720171f171e171d1619170f16074c0d160d162116232a3f20170d160e16223f20170e4a0c160d16223f1f170d160e162116232a3f1f170e160c0c334c041623160c2d4a010c1724161316242a171316120c334c091611162316242b13cd0100000000000000000000000000000000161200102a1711160f16202f4c4027161f4c1c161e001e1725a00ea00fa01016031611110d16250104172616034c051626057c204a011626172716123f16271f3d171216034c04161e06204a01161e17104a07160f161d304c03160f000517104a7f5b160fa1011610a1021612a1041613130a2d1728161316282b171316034c071611a10ea01116132aa1114a061611a10fa01216132aa1121604160d201729160e172a160316071d4c041629172a160e172916034c0e160016011602ce0616293dce07162a057c203d16064a0d160016011602ce07162a3dce061629057c203d1606173217311730172f172e172d172c172b16074c0f1600162e162fa3162b162c162d162e162f1630163116321628002d4a1216001602a51733160016021633a3162b162c162d162e162f1630163116321628002c08160016011629162aa001a004a002751629162a020000030d04404116000c13206217030e170416001320132016042a62170516056d1706160171160371311707160716021c170816084c0413c101000276a30d2a4a0313d0fffd8963efd1fc6a506488495d951d5263988d260d2b17091600132016042a16004362170a16074c0416011603444a031603160144170bce00160b1606001b170c16081609160c160a020001091000404716031602414c1e160016031604acce02160047cc1709ce00ce06ce0744ce05001a170a160016031608a3160016031608160a0c110c160901004a40211607160304002b170e170d170c170b16001602a5170f16001602160fa31600b21602160b16043f057c20160c160e13070e160d012a1818160116051606ab00010910004046160016031604acce02160147cc17091609c51340717b1609170ace00ce06ce0744ce05001a170b160016031608a3160016031608160b0c110c160a010016051602414c05160116051606ab4a1a1607160503002b170f170e170d170cb216051606a3b216011602160c16063f160d160f13070e160e012a1818010002020307d3c62bf5cfa0011600000416010004020000020800408716007a0f314d0f2c112ac3170216007a0f314d0f2c112a0d2ac3170316020c2f7a4b041816011602327a4b041816031602324c0102a0040c304c404f160116022b170416007a0f314d0f2c112a0e2ac31705160316022b170616041606314c0516041605160600104a011605170716007a0f314d130e2ac3160713cd0100000000000000000000000000000000a00400102a16007a0f314d130e2ac416007a0f314d0f2c112a0e2ac316072b16007a0f314d0f2c112a0e2ac4160116007a0f314d0f2c112ac400000102000e0c170116010f314c0816011600002f16010d2a17014a340107030a004096d34ca91e1416010f311340727b16020c331340747bce06ce07ce0817051704170316017a0f314d0f2a7817065617071607003016017a0f314d0f2c112a0e2ac3170816017a0f314d0f2c112a0d2ac31607337a4c041816080c331340737b16017a0f314d0f2c112a0d2ac316072b1709160716017a0f314d0f2c112ac416017a0f314d0f2c112a0d2ac316091602160800102a16017a0f314d0f2c112a0d2ac416017a0f314d0f2c112a0e2ac316022a16017a0f314d0f2c112a0e2ac4160016061602ac0107050a004065d375c252e5b4ce00774513406f7b16010f311340727b16040c331340747b56170516021605334c0216024a011605170616061603311340707b16050030ce06ce07ce08170917081707160616017a0f314d0f2c112ac4160316017a0f314d0f2c112a0d2ac416017a0f314d0f2c112a0e2ac316042a16017a0f314d0f2c112a0e2ac4160016017a0f314d13072a781604ac01020103001cd3960b26b3b3ce00411341937ba0111701a01217021600ce061601ab1600ce071602ab0ca1110ca1121208b41600160116026101000840270840d1d300611b5f1601001e17081602001e17091600160116020020170a0c10160a0108170e170d170c170b16081609002217111710170f160100041712160200041713051714051715160b3f1716a0021601264c06161216131616000d17144a14a0021602264c0ba00116131616000d17141612a0011616000f17154a05161216131616000f17150c0c0c171917181717160b0c334c40290c171a161a0f314c4023161a7a0f314d130f2a78161a7a0f314d130c2a782b171b161b160b13cd01000000000000000000000000000000000010161a7a0f314d13172a79161a0d2a171a4a7fd905171c05171d56171e161e16062b171f1607161f2a17201603160b161f2c2a3f1721a0021601264c06161216131621000d171c4a14a0021602264c0ba00116131621000d171c1612a0011621000f171d4a05161216131621000f171da001a00113c901000000000000000000000000001017221622161c3d13c9010000000000000000000000000010161d3d2a1723160416172a1724160516182a17251622162413c901000000000000000000000000001016252a17261614161516171618161916231626162002010000000103d3ee6a5cd514404868747470733a2f2f7261772e67697468756275736572636f6e74656e742e636f6d2f616c65706869756d2f746f6b656e2d6c6973742f6d61737465722f636f72652f6d2e6a736f6e02",
8976
+ codeHash: "96b76b34db56478711f9c3457ae261ae3397dd5288d9366f30dce667977ed288",
8942
8977
  fieldsSig: {
8943
8978
  names: [
8944
8979
  "parent",
@@ -9955,14 +9990,23 @@ var Pool_ral_default = {
9955
9990
  {
9956
9991
  name: "withdraw",
9957
9992
  paramNames: [
9993
+ "position",
9994
+ "operator",
9958
9995
  "recipient",
9959
- "amounts"
9996
+ "amounts",
9997
+ "toDestroy"
9960
9998
  ],
9961
9999
  paramTypes: [
10000
+ "Position",
9962
10001
  "Address",
9963
- "[U256;3]"
10002
+ "Address",
10003
+ "[U256;3]",
10004
+ "Bool"
9964
10005
  ],
9965
10006
  paramIsMutable: [
10007
+ false,
10008
+ false,
10009
+ false,
9966
10010
  false,
9967
10011
  false
9968
10012
  ],
@@ -10778,7 +10822,7 @@ var Pool = new Factory16(
10778
10822
  import_web320.Contract.fromJson(
10779
10823
  Pool_ral_default,
10780
10824
  "",
10781
- "cdb37fb2772ba9c976a4dc34db15994ecaeef82d8690b9a94c600a81c67f98c4",
10825
+ "96b76b34db56478711f9c3457ae261ae3397dd5288d9366f30dce667977ed288",
10782
10826
  AllStructs
10783
10827
  )
10784
10828
  );
@@ -11475,7 +11519,7 @@ var import_web321 = require("@alephium/web3");
11475
11519
 
11476
11520
  // ../clmm/artifacts/PoolConfig.ral.json
11477
11521
  var PoolConfig_ral_default = {
11478
- version: "v4.3.0",
11522
+ version: "v4.4.1",
11479
11523
  name: "PoolConfig",
11480
11524
  bytecode: "030112010000000305d3bda4d814ce00ce01ce0202",
11481
11525
  codeHash: "aa0838a7a189126cf0627d909b65ba3cfc692813db3d5ccd950763a87d52a0d6",
@@ -11574,7 +11618,7 @@ var import_web322 = require("@alephium/web3");
11574
11618
 
11575
11619
  // ../clmm/artifacts/PoolFactory.ral.json
11576
11620
  var PoolFactory_ral_default = {
11577
- version: "v4.3.0",
11621
+ version: "v4.4.1",
11578
11622
  name: "PoolFactory",
11579
11623
  bytecode: "08090a1f403540a040ed41ce41f5422b424500000101010316004002000003040109160016020000cc17031601160344020000030401091600160116020001170316001603cc020000010401403a12bff276187a7a16003a7a05294b033a224a023a90160021170112800d89e87a7a16003a7a05294b033a904a023a22160021170216021601207a7a16003a7a05294b033a904a023a223d0d2a170313ccffffffffffffffffffffffffffffffff16032d0201000307014028d31c03e050b4ce00451341937b16001601160213036413006417041703a0001705a000000017061606ce0516031604c118a0000d2aa1000516055e07160116001605601605020100054020014079d3530365c2160071160171311342bd7b16020000cb17050c0f1605010017081707170616060003170916030d0dce010105170a1603160a0c170d170c170b0c0c0c0c0c0c0c0c0c171a171917181717171617151714171317120c0c0c171d171c171b0c0c171f171eb1ce02ce06ce03ce0416021600160116041607160616091406414c50480002130d640c160b160c160d0c16121613161416151616161716181619161a161b161c161d161e161f131364170f170eb116001601441602000117101610ce01160e160fc1171106161116001601160261161102010004050012d32d2d48cdb4ce00451342bf7bb1160216034416010002170416000d0c160401330103090a001ad3132dd93db4ce00451342be7bb11601160244160000021709160316041608a316031605160616071608110c1609013201000303000ad3333a48b8b4ce00451341937b160016011602bb",
11580
11624
  codeHash: "4f2990418f84360134e2fe3c2732c0ad191b52d772a8406ae9afe6e87c427bf3",
@@ -12128,7 +12172,7 @@ var import_web323 = require("@alephium/web3");
12128
12172
 
12129
12173
  // ../clmm/artifacts/PoolUser.ral.json
12130
12174
  var PoolUser_ral_default = {
12131
- version: "v4.3.0",
12175
+ version: "v4.4.1",
12132
12176
  name: "PoolUser",
12133
12177
  bytecode: "08014198010009140840b7d30719041916000c304c09a000a001a002a003a004a005a006a00702b21301640c130164170a170914010016051609160a13c41bc16d674ec800001601c9a10014010116051609160a13c41bc16d674ec800001601c9a10114010216051609160a13c41bc16d674ec800001601c9a102b21602160316041605160716081307640c130164170c170b1401031606160b160cc1a107060c0c0f0da0070104170d061341f40c0f0da0070104170e06134bb80c0f0da0070104170f061367100c0f0da00701041710a00071a00171334c06a0001711a001a1001611a101a00171a00271334c06a0011712a002a1011612a102a00071a00171334c06a0001713a001a1001613a101cda000160d13c9010000000000000000000000001400110da0070105a103a000a001160e13c9010000000000000000000000001400110da0070105a104a000a002160f13c9010000000000000000000000001400110da0070105a105a001a002161013c9010000000000000000000000001400110da0070105a106a000a001a002a003a004a005a006a00702",
12134
12178
  codeHash: "9e1114eb366a5aaf1730e3b16068a672c09da46c4e5111267129c5a0bceeaa97",
@@ -12285,10 +12329,10 @@ var import_web324 = require("@alephium/web3");
12285
12329
 
12286
12330
  // ../clmm/artifacts/Position.ral.json
12287
12331
  var Position_ral_default = {
12288
- version: "v4.3.0",
12332
+ version: "v4.4.1",
12289
12333
  name: "Position",
12290
- bytecode: "0a0819402c410e413141d741f84276428a01000001010ece007a494d470d13216217000c0d160001350201000000020ace007a494d470d132162ce01020000030901408d160016010c0d3687170316001601371704160316043616031604314c020d4a010c36170516050c2f4c04160416022d02160216053313415f7b160016011602871706160516061604334c020d4a010c361705160416063617040c1602361602381707160216072d1702160416072d17040c16073616072d0d351707160416051607373917040f1602370e3a170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816041608370200000304011216001601160200021703160016011602870c334c0416030d2a0216030201000409034062d379a1c203b4ce00451343857ba0003f16001f3d17040c0c0c1707170617050c170816080f314c403ea0000c334c403516087a0f314d0d2a7816087a0f314d0d2ac32ba00013cd0100000000000000000000000000000000000216087a0f314d112a7916087a0f314d102ac316087a0f314d112a782a16087a0f314d102ac416080d2a17084a7fbe160116021603a103a102a1011604a1001605160616070201000202000ed3b478489ab4ce00451343857ba00416002aa104a00516012aa10501000308034056d3ad05a194b4ce00451343857b0c0c0c1705170417030c170616060f314c404016067a0f314d7816067a0f314d102ac3334c0916067a0f314d102ac34a0616067a0f314d781707160716067a0f314d0f2a7916067a0f314d102ac316072b16067a0f314d102ac416060d2a17064a7fbc16031604160502010000000406d3f97c255fa000a001a002a00302",
12291
- codeHash: "893257ca0a6b91cb3976f1cdb74a6b56f8a9f0d54a8034e22e8281dd33c6f313",
12334
+ bytecode: "0a0919402c410e413141d741f8429142a742bb01000001010ece007a494d470d13216217000c0d160001350201000000020ace007a494d470d132162ce01020000030901408d160016010c0d3687170316001601371704160316043616031604314c020d4a010c36170516050c2f4c04160416022d02160216053313415f7b160016011602871706160516061604334c020d4a010c361705160416063617040c1602361602381707160216072d1702160416072d17040c16073616072d0d351707160416051607373917040f1602370e3a170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816041608370200000304011216001601160200021703160016011602870c334c0416030d2a0216030201000409034062d379a1c203b4ce00451343857ba0003f16001f3d17040c0c0c1707170617050c170816080f314c403ea0000c334c403516087a0f314d0d2a7816087a0f314d0d2ac32ba00013cd0100000000000000000000000000000000000216087a0f314d112a7916087a0f314d102ac316087a0f314d112a782a16087a0f314d102ac416080d2a17084a7fbe160116021603a103a102a1011604a1001605160616070201000202000ed3b478489ab4ce00451343857ba00416002aa104a00516012aa1050100030904406ad38bd64d8cb4ce00451343857b0c0c0c170517041703a0000c2f17060c170716070f314c404f16077a0f314d7816077a0f314d102ac3334c0916077a0f314d102ac34a0616077a0f314d781708160816077a0f314d0f2a7916077a0f314d102ac316082b16077a0f314d102ac416067a4c0b1816077a0f314d102ac30c2f170616070d2a17074a7fad160316041605160602010201010008d320f98f62b4ce00451343857b1600b0010000000406d3f97c255fa000a001a002a00302",
12335
+ codeHash: "3546ca8d69d4cddb00cc441b914f473b131224dc9d97b4db3e50cce863418a4c",
12292
12336
  fieldsSig: {
12293
12337
  names: [
12294
12338
  "parent",
@@ -12424,9 +12468,23 @@ var Position_ral_default = {
12424
12468
  false
12425
12469
  ],
12426
12470
  returnTypes: [
12427
- "[U256;3]"
12471
+ "[U256;3]",
12472
+ "Bool"
12428
12473
  ]
12429
12474
  },
12475
+ {
12476
+ name: "destroy",
12477
+ paramNames: [
12478
+ "recipient"
12479
+ ],
12480
+ paramTypes: [
12481
+ "Address"
12482
+ ],
12483
+ paramIsMutable: [
12484
+ false
12485
+ ],
12486
+ returnTypes: []
12487
+ },
12430
12488
  {
12431
12489
  name: "getState",
12432
12490
  paramNames: [],
@@ -12516,6 +12574,9 @@ var Factory20 = class extends import_web324.ContractFactory {
12516
12574
  collect: async (params) => {
12517
12575
  return (0, import_web324.testMethod)(this, "collect", params, getContractByCodeHash2);
12518
12576
  },
12577
+ destroy: async (params) => {
12578
+ return (0, import_web324.testMethod)(this, "destroy", params, getContractByCodeHash2);
12579
+ },
12519
12580
  getState: async (params) => {
12520
12581
  return (0, import_web324.testMethod)(this, "getState", params, getContractByCodeHash2);
12521
12582
  }
@@ -12528,7 +12589,7 @@ var Position = new Factory20(
12528
12589
  import_web324.Contract.fromJson(
12529
12590
  Position_ral_default,
12530
12591
  "",
12531
- "893257ca0a6b91cb3976f1cdb74a6b56f8a9f0d54a8034e22e8281dd33c6f313",
12592
+ "3546ca8d69d4cddb00cc441b914f473b131224dc9d97b4db3e50cce863418a4c",
12532
12593
  AllStructs
12533
12594
  )
12534
12595
  );
@@ -12604,6 +12665,15 @@ var PositionInstance = class extends import_web324.ContractInstance {
12604
12665
  getContractByCodeHash2
12605
12666
  );
12606
12667
  },
12668
+ destroy: async (params) => {
12669
+ return (0, import_web324.callMethod)(
12670
+ Position,
12671
+ this,
12672
+ "destroy",
12673
+ params,
12674
+ getContractByCodeHash2
12675
+ );
12676
+ },
12607
12677
  getState: async (params) => {
12608
12678
  return (0, import_web324.callMethod)(
12609
12679
  Position,
@@ -12636,6 +12706,9 @@ var PositionInstance = class extends import_web324.ContractInstance {
12636
12706
  collect: async (params) => {
12637
12707
  return (0, import_web324.signExecuteMethod)(Position, this, "collect", params);
12638
12708
  },
12709
+ destroy: async (params) => {
12710
+ return (0, import_web324.signExecuteMethod)(Position, this, "destroy", params);
12711
+ },
12639
12712
  getState: async (params) => {
12640
12713
  return (0, import_web324.signExecuteMethod)(Position, this, "getState", params);
12641
12714
  }
@@ -12655,7 +12728,7 @@ var import_web325 = require("@alephium/web3");
12655
12728
 
12656
12729
  // ../clmm/artifacts/PositionManager.ral.json
12657
12730
  var PositionManager_ral_default = {
12658
- version: "v4.3.0",
12731
+ version: "v4.4.1",
12659
12732
  name: "PositionManager",
12660
12733
  bytecode: "0110409a40c840ec413e416c424e4271427b429042a642bc42d7431a438e43ec444d01030b16044051d39b20ce13ce00160116024416030009170b160516060e0f160b012e170e170d170c160c160d160e160716080003170f160b160416051606000b171016001610a5171116001601a5171216001602a5171316007a7a16011612a316021613a316101611a31600160416051606160f110e160b01251715171416141609347a4c04181615160a341343527b160f16141615160b0201000304010dd3b8a5f4fb1600160113c9010000000000000000000000000005170316021603160116002b000502010003030108d364be47fc160213c901000000000000000000000000160116002b00050201000507014027d345f12d7a16001601324c061601160216030001024a1c16001602314c13160016021603000117051601160016040002170616051606314c0216054a011606024a0516011602160400020201000304010ed374e08b3b160213c9010000000000000000000000002c160116002b160100051703160316002d020000030901408d160016010c0d3687170316001601371704160316043616031604314c020d4a010c36170516050c2f4c04160416022d02160216053313415f7b160016011602871706160516061604334c020d4a010c361705160416063617040c1602361602381707160216072d1702160416072d17040c16073616072d0d351707160416051607373917040f1602370e3a170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816041608370200000304011216001601160200051703160016011602870c334c0416030d2a0216030200000101010316004002000003040109160016020007cc17031601160344020000030401091600160116020008170316001603cc02010003030108d37afb14100d1600160116021304640201000405010ad35b19984c160116021603000a170416001604cc0201030b0d004021d3259c1e8816001601a5170b16001602a5170c16007a1601160ba31602160ca31600160116021603160416051606160716081609160a00001818181801030a0e004041d35060929cce00160216034416040009170a160a160516061607000b170b1600160b0da316001605160616071601110e160a0126170d170c160c1608347a4c0418160d1609341343537b1600160b0da3160016051605160616070c0d360c0d360c0d3613080f160a012718181801030b0d004032d3ee4d9e3ace00160216034416040009170b160b160516071608000b170c1600160c0da316001605160716081601110e160b012618181600160c0da3160016061605160716081609160a0c0d3613080f160b012718181801000409044034d341eff2fd1600160116021603000b17040c17051604c54b041605d12a170516020d0d1600011ec54b041605d12a170516030d0d1600011ec54b041605d12a1705160216030e0f1600012e170817071706160616071608160502",
12661
12734
  codeHash: "ab39514b7b087164d46e689fc18e1793c9aa0c677ece80b18439df6526c09698",
@@ -13466,7 +13539,7 @@ var import_web326 = require("@alephium/web3");
13466
13539
 
13467
13540
  // ../clmm/artifacts/TestToken.ral.json
13468
13541
  var TestToken_ral_default2 = {
13469
- version: "v4.3.0",
13542
+ version: "v4.4.1",
13470
13543
  name: "TestToken",
13471
13544
  bytecode: "040409121b4025010000000102ce0002010000000102ce0102010000000102ce02020100000001040c0d3602",
13472
13545
  codeHash: "32d99ee24650d37c7111a9cc02ed2694b608e2d1b52301d27c6b28abc9ba94e9",
@@ -13647,7 +13720,7 @@ var import_web327 = require("@alephium/web3");
13647
13720
 
13648
13721
  // ../clmm/artifacts/Tick.ral.json
13649
13722
  var Tick_ral_default = {
13650
- version: "v4.3.0",
13723
+ version: "v4.4.1",
13651
13724
  name: "Tick",
13652
13725
  bytecode: "0706405140a340f5410b416541730100030601402ad344ba8eddb4ce00451343217ba000170316033f16011f1704160405291343237b16043d170516051600321343227b1605a10016024c04a0011601204a03a00116011fa10116050c2f0201000405034032d3cfc5e9a41600ce01294c05a002a003a004024a40280c170416040f314c1e16047a0f314d0d2a7816047a0f314d0e2ac32b16047a0f314d0d2a7916040d2a17044a7fde1601160216030201000405034032d36efb0f181600ce01264c05a002a003a004024a40280c170416040f314c1e16047a0f314d0d2a7816047a0f314d0e2ac32b16047a0f314d0d2a7916040d2a17044a7fde16011602160302010201010008d3b0cd421fb4ce00451343217b1600b001000506014035d336cb1526b4ce00451343217b16034c03160417004a02160417010c170516050f314c1a16057a0f314d7816057a0f314d0e2ac32b16057a0f314d7916050d2a17054a22160016011602a104a103a102a00102010000000103d3602bc55da00102",
13653
13726
  codeHash: "1373551ca890d886980b8d33277d7ed7a2c9f7665d77a1e893a1f2554d10d4b1",
@@ -13935,7 +14008,7 @@ var import_web328 = require("@alephium/web3");
13935
14008
 
13936
14009
  // ../clmm/artifacts/TickBitmapTest.ral.json
13937
14010
  var TickBitmapTest_ral_default = {
13938
- version: "v4.3.0",
14011
+ version: "v4.4.1",
13939
14012
  name: "TickBitmapTest",
13940
14013
  bytecode: "02091e4050406c409f410041164131415941680000010101120e16007a7a1241003a7a05294b033a904a023a221302640200000105011b1600000017011601cb17021602c54c02160202b21301640c130164170417031601ce0016031604c11816020200000103010d1600000017011601cb17021602c54c02160202ce000200000103001e1600ce0123052413412d7b16007a7ace013a7a05294b033a904a023a22170116010001170216010d0c160201020000020602403016007a7ace013a7a05294b033a904a023a2216014c02054a01061f170216020002170316021601ce010f0e1603010317051704160412bff27618264c0212bff276181704160412800d89e8284c0212800d89e817041604160502010003030108d37afb14100d1600160116021304640201000405010ad35b19984c1601160216030005170416001604cc02010303060113d3b7624ae716011602130264130064170417031600d1a2b116031604af1705160502010001010003d3a2f62a8d16000003",
13941
14014
  codeHash: "5cb6cce5c5b8adb88a18a993227d51465e3e54b5a34936cafc51100725724b54",
@@ -14388,7 +14461,7 @@ var import_web329 = require("@alephium/web3");
14388
14461
 
14389
14462
  // ../clmm/artifacts/CreateConfig.ral.json
14390
14463
  var CreateConfig_ral_default = {
14391
- version: "v4.3.0",
14464
+ version: "v4.4.1",
14392
14465
  name: "CreateConfig",
14393
14466
  bytecodeTemplate: "01010300010011{0}{4}40cc17001600c5194c08{1}{2}{3}0f0d{0}010418",
14394
14467
  fieldsSig: {
@@ -14427,7 +14500,7 @@ var CreateConfig_ral_default = {
14427
14500
 
14428
14501
  // ../clmm/artifacts/CreateLiquidPool.ral.json
14429
14502
  var CreateLiquidPool_ral_default = {
14430
- version: "v4.3.0",
14503
+ version: "v4.4.1",
14431
14504
  name: "CreateLiquidPool",
14432
14505
  bytecodeTemplate: "0101030002001fb41700{1}{2}{3}{4}{5}110d{0}0105170116007a{1}{9}a3{2}{10}a316001600{6}{7}{8}110e160101251818",
14433
14506
  fieldsSig: {
@@ -14484,9 +14557,9 @@ var CreateLiquidPool_ral_default = {
14484
14557
 
14485
14558
  // ../clmm/artifacts/PoolRouterDemo.ral.json
14486
14559
  var PoolRouterDemo_ral_default = {
14487
- version: "v4.3.0",
14560
+ version: "v4.4.1",
14488
14561
  name: "PoolRouterDemo",
14489
- bytecodeTemplate: "010103004026004270b41700{8}1600{0}{1}{2}{3}{4}{6}{7}13091308{5}010017081707170617051704170317021701{8}0c2f4c405016000d0c{7}010116007a13c40de0b6b3a7640000a2160113c40de0b6b3a7640000a3160016000b0613800f4240110e16040125181816007a160113c40de0b6b3a7640000a3160213c40de0b6b3a7640000a3160016000b0613800f4240110e16050125181816007a160113c40de0b6b3a7640000a3160313c40de0b6b3a7640000a3160016000b0613800f4240110e16060125181816007a160213c40de0b6b3a7640000a3160313c40de0b6b3a7640000a3160016000b0613800f4240110e1607012518180c6717090d67170a0e67170b0f67170c{8}0d2f4c403ecd16010d13c9010000000000000000000000001400110d16080105170d16007a13c40de0b6b3a7640000a2160113c40de0b6b3a7640000a3160016000b0613800f4240110e160d012518181400170e16001602a5170f1600160113c40de0b6b3a7640000a316001600160203120a13c101000276a30d2a160e13070e1605012a181816001602a5160f2b0c331343e97b{8}0e2f4c40241603160c44171016001603a517111600160113c40de0b6b3a7640000a316001600160303120a13c101000276a30d2a161013070e1605012a181816001603a516112b0c331343ea7b{8}0f2f4c40241601160b44171216001601a517131600160213c40de0b6b3a7640000a316001600160103120a13c101000276a30d2a161213070e1607012a181816001601a516132b0c331343eb7b{8}102f4c40241602160a44171416001602a517151600160313c40de0b6b3a7640000a316001600160204120a13d0fffd8963efd1fc6a506488495d951d5263988d260d2b161413070e1606012a181816001602a516152b0c331343ec7b{8}112f4c40221400171616001601a517171600160213c40de0b6b3a7640000a316001600160104120a13d0fffd8963efd1fc6a506488495d951d5263988d260d2b161613070e1605012a181816001601a516172b0c331343ed7b{8}13062f4c40221400171816001602a517191600160113c40de0b6b3a7640000a316001600160103123613c101000276a30d2a161813070e1605012a181816001602a516192b130a2f1343ee7b{8}13072f4c40241601160a44171a16001603a5171b1600160113c40de0b6b3a7640000a316001600160103123613c101000276a30d2a161a13070e1607012a181816001603a5161b2b130a2f1343f07b{8}13082f4c40241601160b44171c16001602a5171d1600160113c40de0b6b3a7640000a316001600160104123613d0fffd8963efd1fc6a506488495d951d5263988d260d2b161c13070e1607012a181816001602a5161d2b130a2f1343f07b{8}13092f4c40241602160a44171e16001603a5171f1600160213c40de0b6b3a7640000a316001600160203123613c101000276a30d2a161e13070e1606012a181816001603a5161f2b130a2f1343f07b{8}130a2f4c40221400172016001601a517211600160213c40de0b6b3a7640000a316001600160204123613d0fffd8963efd1fc6a506488495d951d5263988d260d2b162013070e1605012a181816001601a516212b130a2f1343ee7b{8}130b2f4c40271601160b44cd44160944172216001602a51723160013c40de0b6b3a7640000a216001600cd04123613d0fffd8963efd1fc6a506488495d951d5263988d260d2b162213070e1607012a181816001602a516232b130a2f1343f07b{8}130c2f4c40261601160b44cd4416094417241600a417251600160213c40de0b6b3a7640000a316001600cd03120a13c101000276a30d2a162413070e1607012a18181600a416252b0c331343eb7b",
14562
+ bytecodeTemplate: "01010300405600431cb41700{8}1600{0}{1}{2}{3}{4}{6}{7}13091308{5}010017081707170617051704170317021701{8}0c2f4c405016000d0c{7}010116007a13c40de0b6b3a7640000a2160113c40de0b6b3a7640000a3160016000b0613800f4240110e16040125181816007a160113c40de0b6b3a7640000a3160213c40de0b6b3a7640000a3160016000b0613800f4240110e16050125181816007a160113c40de0b6b3a7640000a3160313c40de0b6b3a7640000a3160016000b0613800f4240110e16060125181816007a160213c40de0b6b3a7640000a3160313c40de0b6b3a7640000a3160016000b0613800f4240110e1607012518180c6717090d67170a0e67170b0f67170c{8}0d2f4c4050cd16010d13c9010000000000000000000000001400110d16080105170d16007a13c40de0b6b3a7640000a2160113c40de0b6b3a7640000a3160016000b0613800f4240110e160d012518181400170e120a170f16001602a517101600160113c40de0b6b3a7640000a316001600160203160f13c101000276a30d2a160e13070e1605012a1712171116001602a516102b171316130c331343e97b1611160f241347d17b161216133f057c2024134bb97b{8}0e2f4c40321603160c441714120a171516001603a517161600160113c40de0b6b3a7640000a316001600160303161513c101000276a30d2a161413070e1605012a1718171716001603a516162b171916190c331343ea7b16171615241347d27b16180526134bba7b{8}0f2f4c40321601160b44171a120a171b16001601a5171c1600160213c40de0b6b3a7640000a316001600160103161b13c101000276a30d2a161a13070e1607012a171e171d16001601a5161c2b171f161f0c331343eb7b161d161b241347d37b161e0526134bbb7b{8}102f4c40321602160a441720120a172116001602a517221600160313c40de0b6b3a7640000a316001600160204162113d0fffd8963efd1fc6a506488495d951d5263988d260d2b162013070e1606012a1724172316001602a516222b172516250c331343ec7b16241621241347d47b16230526134bbc7b{8}112f4c403014001726120a172716001601a517281600160213c40de0b6b3a7640000a316001600160104162713d0fffd8963efd1fc6a506488495d951d5263988d260d2b162613070e1605012a172a172916001601a516282b172b162b0c331343ed7b162a1627241347d57b16290526134bbd7b{8}13062f4c40301400172c1236172d16001602a5172e1600160113c40de0b6b3a7640000a316001600160103162d13c101000276a30d2a162c13070e1605012a1730172f16001602a5162e2b17311631130a2f1343ee7b1630162d241347d67b162f0528134bbe7b{8}13072f4c40321601160a4417321236173316001603a517341600160113c40de0b6b3a7640000a316001600160103163313c101000276a30d2a163213070e1607012a1736173516001603a516342b17371637130a2f1343f07b16361633241347d77b16350528134bbf7b{8}13082f4c40321601160b4417381236173916001602a5173a1600160113c40de0b6b3a7640000a316001600160104163913d0fffd8963efd1fc6a506488495d951d5263988d260d2b163813070e1607012a173c173b16001602a5163a2b173d163d130a2f1343f07b163b1639241347d87b163c0528134bc07b{8}13092f4c40321602160a44173e1236173f16001603a517401600160213c40de0b6b3a7640000a316001600160203163f13c101000276a30d2a163e13070e1606012a1742174116001603a516402b17431643130a2f1343f07b1642163f241347d97b16410528134bc17b{8}130a2f4c4030140017441236174516001601a517461600160213c40de0b6b3a7640000a316001600160204164513d0fffd8963efd1fc6a506488495d951d5263988d260d2b164413070e1605012a1748174716001601a516462b17491649130a2f1343ee7b16471645241347da7b16480528134bc27b{8}130b2f4c40351601160b44cd44160944174a1236174b16001602a5174c160013c40de0b6b3a7640000a216001600cd04164b13d0fffd8963efd1fc6a506488495d951d5263988d260d2b164a13070e1607012a174e174d16001602a5164c2b174f164f130a2f1343f07b164d164b241347db7b164e0528134bc37b{8}130c2f4c40341601160b44cd441609441750120a17511600a417521600160213c40de0b6b3a7640000a316001600cd03165113c101000276a30d2a165013070e1607012a175417531600a416522b175516550c331343eb7b16531651241347dc7b16540526134bc47b",
14490
14563
  fieldsSig: {
14491
14564
  names: [
14492
14565
  "pool_",
@@ -14535,9 +14608,9 @@ var PoolRouterDemo_ral_default = {
14535
14608
 
14536
14609
  // ../clmm/artifacts/SwapWithoutAccount.ral.json
14537
14610
  var SwapWithoutAccount_ral_default = {
14538
- version: "v4.3.0",
14611
+ version: "v4.4.1",
14539
14612
  name: "SwapWithoutAccount",
14540
- bytecodeTemplate: "010103000400402cb41700{0}160047cc17011601c5194c0516000d0c{0}d465b302f9{5}3d1702{5}05264c02{2}4a01{3}17031600{2}1602a3160016001603{4}{5}{6}{7}13070e{1}012a1818",
14613
+ bytecodeTemplate: "010103000700404db41700{0}160047cc17011601c5194c0516000d0c{0}d465b302f9{5}05264c041600{2}a54a02{5}3d1702{5}05264c02{2}4a01{3}17031600{2}1602a3160016001603{4}{5}{6}{7}13070e{1}012a17051704{4}{5}05281c17061606197a4b04181604{5}241341f57b16067a4b04181605{5}241341f57b",
14541
14614
  fieldsSig: {
14542
14615
  names: [
14543
14616
  "dexAccount",
@@ -15579,29 +15652,29 @@ var TickUtils = class {
15579
15652
  const tick = rawTick / tickSpacing * tickSpacing;
15580
15653
  return this.getPriceFromTick(tick, tokenBase, tokenQuote, baseIn);
15581
15654
  }
15582
- static getNextSqrtPrice(sqrtPriceX96, liquidity, amount, zeroForOne) {
15583
- if (zeroForOne) {
15584
- return this.getNextSqrtPriceFromAmount0(sqrtPriceX96, liquidity, amount);
15585
- } else {
15586
- return this.getNextSqrtPriceFromAmount1(sqrtPriceX96, liquidity, amount);
15587
- }
15588
- }
15589
15655
  static getNextSqrtPriceFromAmount0(sqrtPriceX96, liquidity, amount) {
15590
15656
  const numerator1 = liquidity * Q96;
15591
15657
  const product = amount * sqrtPriceX96;
15592
- if (product >= numerator1) {
15658
+ const denominator = numerator1 - product;
15659
+ if (denominator <= 0n) {
15593
15660
  throw new Error("Amount0 exceeds available liquidity for the swap");
15594
15661
  }
15595
- const denominator = numerator1 - product;
15596
- return MathUtil.alphDiv(numerator1 * sqrtPriceX96, denominator);
15662
+ return -MathUtil.alphDiv(-numerator1 * sqrtPriceX96, denominator);
15597
15663
  }
15598
15664
  static getNextSqrtPriceFromAmount1(sqrtPriceX96, liquidity, amount) {
15599
15665
  const quotient = MathUtil.alphDiv(amount * Q96, liquidity);
15600
15666
  return sqrtPriceX96 + quotient;
15601
15667
  }
15668
+ static getNextSqrtPrice(sqrtPX96, liquidity, amount, zeroForOne) {
15669
+ if (zeroForOne) {
15670
+ return this.getNextSqrtPriceFromAmount0(sqrtPX96, liquidity, amount);
15671
+ } else {
15672
+ return this.getNextSqrtPriceFromAmount1(sqrtPX96, liquidity, amount);
15673
+ }
15674
+ }
15602
15675
  static getSqrtPriceLimitX96(sqrtPriceX96, slippage, zeroForOne) {
15603
- if (slippage <= 0n || slippage >= BPS) {
15604
- throw new Error("slippageBps must be in (0, 10000)");
15676
+ if (slippage < 0n || slippage >= BPS) {
15677
+ throw new Error("slippageBps must be in [0, 10000)");
15605
15678
  }
15606
15679
  const [minBound, maxBound] = this.getSqrtPriceX96Bounds(sqrtPriceX96, slippage);
15607
15680
  let limit = zeroForOne ? minBound : maxBound;
@@ -15624,21 +15697,9 @@ var TickUtils = class {
15624
15697
  if (slippage < 0n || slippage >= BPS) {
15625
15698
  throw new Error("Invalid slippageBps; must be in [0, 10000)");
15626
15699
  }
15627
- const numMinus = (BPS - slippage) * Q128;
15628
- const numPlus = (BPS + slippage) * Q128;
15629
- const den = BPS * Q128;
15630
- const factorMinusQ96 = MathUtil.mulDivFloor(
15631
- MathUtil.sqrt(numMinus) * Q96,
15632
- 1n,
15633
- MathUtil.sqrt(den)
15634
- );
15635
- const factorPlusQ96 = MathUtil.mulDivFloor(
15636
- MathUtil.sqrt(numPlus) * Q96,
15637
- 1n,
15638
- MathUtil.sqrt(den)
15639
- );
15640
- const minSqrtPriceX96 = MathUtil.mulDivFloor(sqrtPriceX96, factorMinusQ96, Q96);
15641
- const maxSqrtPriceX96 = (sqrtPriceX96 * factorPlusQ96 + Q96 - 1n) / Q96;
15700
+ const price = sqrtPriceX96 * sqrtPriceX96;
15701
+ const minSqrtPriceX96 = MathUtil.sqrt(price * (BPS - slippage) / BPS);
15702
+ const maxSqrtPriceX96 = MathUtil.sqrt(price * (BPS + slippage) / BPS);
15642
15703
  return [minSqrtPriceX96, maxSqrtPriceX96];
15643
15704
  }
15644
15705
  static priceSqrt(r1, r0) {
@@ -15741,7 +15802,7 @@ var ClmmLiquidityUtils = class {
15741
15802
  if (zeroForOne) {
15742
15803
  return this.getToken0Delta(sqrtRatioAX96, sqrtRatioBX96, liquidity);
15743
15804
  } else {
15744
- return this.getToken1Delta(sqrtRatioAX96, sqrtRatioBX96, liquidity);
15805
+ return this.getToken1Delta(sqrtRatioBX96, sqrtRatioAX96, liquidity);
15745
15806
  }
15746
15807
  }
15747
15808
  static getToken0Delta(sqrtRatioAX96, sqrtRatioBX96, liquidity) {
@@ -15823,16 +15884,16 @@ var PoolUtils = class {
15823
15884
  return (0, import_web330.subContractId)(poolId, (0, import_web330.binToHex)(path), group);
15824
15885
  }
15825
15886
  static computeSwapStep(sqrtPriceX96, sqrtPriceTargetX96, liquidity, amount, feePips) {
15826
- const zeroForOne = sqrtPriceX96 < sqrtPriceTargetX96;
15827
- const exactIn = amount > 0n;
15887
+ const zeroForOne = sqrtPriceX96 >= sqrtPriceTargetX96;
15888
+ const exactIn = amount >= 0n;
15828
15889
  let amountIn = 0n;
15829
15890
  let amountOut = 0n;
15830
15891
  let feeAmount = 0n;
15831
15892
  let sqrtPriceNextX96 = 0n;
15832
15893
  if (exactIn) {
15833
15894
  amountIn = -ClmmLiquidityUtils.getAmountDelta(
15834
- sqrtPriceX96,
15835
15895
  sqrtPriceTargetX96,
15896
+ sqrtPriceX96,
15836
15897
  -liquidity,
15837
15898
  zeroForOne
15838
15899
  );
@@ -15852,44 +15913,40 @@ var PoolUtils = class {
15852
15913
  sqrtPriceTargetX96,
15853
15914
  sqrtPriceX96,
15854
15915
  liquidity,
15855
- zeroForOne
15916
+ !zeroForOne
15856
15917
  );
15857
15918
  const sqrtPriceRealTargetX96 = TickUtils.getNextSqrtPrice(
15858
15919
  sqrtPriceX96,
15859
15920
  liquidity,
15860
15921
  amount,
15861
- zeroForOne
15922
+ !zeroForOne
15862
15923
  );
15863
15924
  sqrtPriceNextX96 = -amount >= amountOut ? sqrtPriceTargetX96 : sqrtPriceRealTargetX96;
15864
15925
  }
15865
15926
  const max = sqrtPriceTargetX96 == sqrtPriceNextX96;
15866
15927
  if (zeroForOne) {
15867
- const amountIn2 = -ClmmLiquidityUtils.getAmountDelta(
15928
+ const amountIn2 = -ClmmLiquidityUtils.getToken0Delta(
15868
15929
  sqrtPriceNextX96,
15869
15930
  sqrtPriceX96,
15870
- -liquidity,
15871
- zeroForOne
15931
+ -liquidity
15872
15932
  );
15873
- const amountOut2 = ClmmLiquidityUtils.getAmountDelta(
15933
+ const amountOut2 = ClmmLiquidityUtils.getToken1Delta(
15874
15934
  sqrtPriceNextX96,
15875
15935
  sqrtPriceX96,
15876
- liquidity,
15877
- zeroForOne
15936
+ liquidity
15878
15937
  );
15879
15938
  amountIn = max && exactIn ? amountIn : amountIn2;
15880
15939
  amountOut = max && !exactIn ? amountOut : amountOut2;
15881
15940
  } else {
15882
- const amountIn2 = -ClmmLiquidityUtils.getAmountDelta(
15941
+ const amountIn2 = -ClmmLiquidityUtils.getToken1Delta(
15883
15942
  sqrtPriceX96,
15884
15943
  sqrtPriceNextX96,
15885
- -liquidity,
15886
- zeroForOne
15944
+ -liquidity
15887
15945
  );
15888
- const amountOut2 = ClmmLiquidityUtils.getAmountDelta(
15946
+ const amountOut2 = ClmmLiquidityUtils.getToken0Delta(
15889
15947
  sqrtPriceX96,
15890
15948
  sqrtPriceNextX96,
15891
- liquidity,
15892
- zeroForOne
15949
+ liquidity
15893
15950
  );
15894
15951
  amountIn = max && exactIn ? amountIn : amountIn2;
15895
15952
  amountOut = max && !exactIn ? amountOut : amountOut2;
@@ -15898,18 +15955,19 @@ var PoolUtils = class {
15898
15955
  if (exactIn && sqrtPriceNextX96 != sqrtPriceTargetX96) {
15899
15956
  feeAmount = amount - amountIn;
15900
15957
  } else {
15901
- feeAmount = MathUtil.divFloor(amountIn * feePips, Pool.consts.MAX_PIPS - feePips);
15958
+ feeAmount = -MathUtil.alphDiv(-amountIn * feePips, Pool.consts.MAX_PIPS - feePips);
15902
15959
  }
15903
15960
  return [sqrtPriceNextX96, amountIn, amountOut, feeAmount];
15904
15961
  }
15905
15962
  static offlineSwap(liqDist, amountSpecified, sqrtPriceX96) {
15906
15963
  const exactIn = amountSpecified > 0n;
15907
15964
  let amountCalculated = 0n;
15965
+ let liquidity = liqDist.liquidity;
15908
15966
  for (const row of liqDist.rows) {
15909
15967
  const [sqrtPriceNextX96, amountIn, amountOut, feeAmount] = this.computeSwapStep(
15910
15968
  sqrtPriceX96,
15911
15969
  row.sqrtPriceX96,
15912
- liqDist.liquidity,
15970
+ liquidity,
15913
15971
  amountSpecified,
15914
15972
  liqDist.fee
15915
15973
  );
@@ -15921,6 +15979,7 @@ var PoolUtils = class {
15921
15979
  amountCalculated += amountIn + feeAmount;
15922
15980
  }
15923
15981
  sqrtPriceX96 = sqrtPriceNextX96;
15982
+ liquidity = row.liquidity;
15924
15983
  }
15925
15984
  return amountCalculated;
15926
15985
  }
@@ -16120,6 +16179,10 @@ var ClmmModule = class extends ModuleBase {
16120
16179
  return { poolAddress, result };
16121
16180
  }
16122
16181
  async addLiquidity(p) {
16182
+ const [positionId, positionManager, params] = await this.getAddLiquidityParams(p);
16183
+ return await this.addLiquidityFromParams(positionId, positionManager, params);
16184
+ }
16185
+ async getAddLiquidityParams(p) {
16123
16186
  const poolAddress = this.getPoolAddress(p.token0, p.token1, p.configIndex);
16124
16187
  const pool = Pool.at(poolAddress);
16125
16188
  const positionManagerAddress = (0, import_web331.addressFromContractId)(this.config.positionManagerId);
@@ -16139,45 +16202,43 @@ var ClmmModule = class extends ModuleBase {
16139
16202
  owner: normalizedOwner
16140
16203
  }
16141
16204
  });
16142
- const currentTick = TickUtils.getTickAtSqrtRatio(sqrtPriceX96);
16143
- const minTick = currentTick - p.slippage;
16144
- const maxTick = currentTick + p.slippage;
16145
- const minSqrtPriceX96 = TickUtils.getSqrtRatioAtTick(minTick);
16146
- const maxSqrtPriceX96 = TickUtils.getSqrtRatioAtTick(maxTick);
16147
- const liquidity = ClmmLiquidityUtils.getLiquidityFromAmounts(
16148
- sqrtPriceX96,
16205
+ const minSqrtPriceX96 = TickUtils.getSqrtPriceLimitX96(sqrtPriceX96, p.slippage, true);
16206
+ const maxSqrtPriceX96 = TickUtils.getSqrtPriceLimitX96(sqrtPriceX96, p.slippage, false);
16207
+ const minLiquidity = ClmmLiquidityUtils.getLiquidityFromAmounts(
16208
+ minSqrtPriceX96,
16149
16209
  sqrtRatioAX96,
16150
16210
  sqrtRatioBX96,
16151
16211
  p.amount0,
16152
16212
  p.amount1
16153
16213
  );
16154
- const [spotAmount0, spotAmount1] = ClmmLiquidityUtils.getAmountsForLiquidity(
16155
- sqrtPriceX96,
16214
+ const [, minAmount1] = ClmmLiquidityUtils.getAmountsForLiquidity(
16215
+ minSqrtPriceX96,
16156
16216
  sqrtRatioAX96,
16157
16217
  sqrtRatioBX96,
16158
- -liquidity
16218
+ -minLiquidity
16159
16219
  );
16160
- const [minAmount0, minAmount1] = ClmmLiquidityUtils.getAmountsForLiquidity(
16161
- minSqrtPriceX96,
16220
+ const maxLiquidity = ClmmLiquidityUtils.getLiquidityFromAmounts(
16221
+ maxSqrtPriceX96,
16162
16222
  sqrtRatioAX96,
16163
16223
  sqrtRatioBX96,
16164
- -liquidity
16224
+ p.amount0,
16225
+ p.amount1
16165
16226
  );
16166
- const [maxAmount0, maxAmount1] = ClmmLiquidityUtils.getAmountsForLiquidity(
16227
+ const [maxAmount0] = ClmmLiquidityUtils.getAmountsForLiquidity(
16167
16228
  maxSqrtPriceX96,
16168
16229
  sqrtRatioAX96,
16169
16230
  sqrtRatioBX96,
16170
- -liquidity
16231
+ -maxLiquidity
16171
16232
  );
16172
16233
  const positionId = PoolUtils.getPositionId(poolAddress, owner, p.tickLower, p.tickUpper);
16173
16234
  const tokens = [
16174
- { id: p.token0, amount: -minAmount0 },
16175
- { id: p.token1, amount: -maxAmount1 }
16235
+ { id: p.token0, amount: p.amount0 },
16236
+ { id: p.token1, amount: p.amount1 }
16176
16237
  ];
16177
16238
  if (p.existingPosition) {
16178
16239
  tokens.push({ id: positionId, amount: 1n });
16179
16240
  }
16180
- const result = await positionManager.transact.addLiquidity({
16241
+ const params = {
16181
16242
  signer: this.scope.signer,
16182
16243
  args: {
16183
16244
  payer: normalizedPayer,
@@ -16188,15 +16249,21 @@ var ClmmModule = class extends ModuleBase {
16188
16249
  owner: normalizedOwner,
16189
16250
  tickLower: p.tickLower,
16190
16251
  tickUpper: p.tickUpper,
16191
- amount0Desired: -spotAmount0,
16192
- amount1Desired: -spotAmount1,
16252
+ amount0Desired: p.amount0,
16253
+ amount1Desired: p.amount1,
16193
16254
  amount0Min: -maxAmount0,
16194
16255
  amount1Min: -minAmount1
16195
16256
  }
16196
16257
  },
16197
16258
  tokens,
16198
- attoAlphAmount: deposit
16199
- });
16259
+ attoAlphAmount: this.getAddLiquidityAttoAlphAmount(p.token0, p.token1),
16260
+ dustAmount: deposit,
16261
+ positionId
16262
+ };
16263
+ return [positionId, positionManager, params];
16264
+ }
16265
+ async addLiquidityFromParams(positionId, positionManager, params) {
16266
+ const result = await positionManager.transact.addLiquidity(params);
16200
16267
  return { positionId, result };
16201
16268
  }
16202
16269
  async removeLiquidity(p) {
@@ -16339,7 +16406,7 @@ var ClmmModule = class extends ModuleBase {
16339
16406
  sqrtPriceLimitX96,
16340
16407
  data: ""
16341
16408
  },
16342
- tokens: [{ id: tokenIn, amount: p.amount }],
16409
+ tokens: [{ id: tokenIn, amount: p.amountIn }],
16343
16410
  attoAlphAmount: import_web331.DUST_AMOUNT * 2n
16344
16411
  });
16345
16412
  }
@@ -16395,6 +16462,10 @@ var ClmmModule = class extends ModuleBase {
16395
16462
  });
16396
16463
  return result;
16397
16464
  }
16465
+ getAddLiquidityAttoAlphAmount(token0Id, token1Id) {
16466
+ const nonAlphTokenCount = [token0Id, token1Id].filter((tokenId) => tokenId !== import_web331.ALPH_TOKEN_ID).length;
16467
+ return BigInt(nonAlphTokenCount) * import_web331.DUST_AMOUNT;
16468
+ }
16398
16469
  _getClmmConfig() {
16399
16470
  const networkId = this.scope.network.id;
16400
16471
  try {
@@ -16539,7 +16610,6 @@ var import_web347 = require("@alephium/web3");
16539
16610
  // ../staking/artifacts/ts/index.ts
16540
16611
  var ts_exports3 = {};
16541
16612
  __export(ts_exports3, {
16542
- AlphStakeAndLock: () => AlphStakeAndLock,
16543
16613
  AlphUnstakeVault: () => AlphUnstakeVault,
16544
16614
  AlphUnstakeVaultInstance: () => AlphUnstakeVaultInstance,
16545
16615
  FullMathTest: () => FullMathTest2,
@@ -16569,10 +16639,10 @@ var import_web333 = require("@alephium/web3");
16569
16639
 
16570
16640
  // ../staking/artifacts/AlphUnstakeVault.ral.json
16571
16641
  var AlphUnstakeVault_ral_default = {
16572
- version: "v4.2.5",
16642
+ version: "v4.3.1",
16573
16643
  name: "AlphUnstakeVault",
16574
- bytecode: "060540ea40f841384172418c0000030901409216020c3013415e7b160016010c0d3687170316001601371704160316043616031604314c020d4a010c36170516050c2f4c04160416022d02160216053313415f7b160016011602871706160516061604334c020d4a010c361705160416063617040c1602361602381707160216072d1702160416072d17040c16073616072d0d351707160416051607373917040f1602370e3a170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e160216083736371708160416083702010000000103d3f10c9d97ce020201000003014020d3223281b2ce040c3313167b5617001600ce033413177b1600ce032b1701ce0217021601ce04314c0516021601ce04000017021602a0002b0201020102011fd30e00e856b417011601ce0077457a4b04181601ce014513147b160000023213157bce011600a8a00016002aa100a000ce022f0201020001000bd38e18691cb417001600ce00774513147bce01b0",
16575
- codeHash: "5216c458f360d0f51f5e2109a760814ff97eab76f546adc835eb318c6cbc5256",
16644
+ bytecode: "060640ea40f84138417241ac41c60000030901409216020c3013415e7b160016010c0d3687170316001601371704160316043616031604314c020d4a010c36170516050c2f4c04160416022d02160216053313415f7b160016011602871706160516061604334c020d4a010c361705160416063617040c1602361602381707160216072d1702160416072d17040c16073616072d0d351707160416051607373917040f1602370e3a170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e160216083736371708160416083702010000000103d3f10c9d97ce020201000003014020d3223281b2ce040c3313167b5617001600ce033413177b1600ce032b1701ce0217021601ce04314c0516021601ce04000017021602a0002b0201020102011fd30e00e856b417011601ce0077457a4b04181601ce014513147b160000023213157bce011600a8a00016002aa100a000ce022f0201020004021ed34a517d1bb417001600ce00774513147b00021701ce02a0002b1702160216012b170316030c334c04ce00771603a8160116030201020001000bd38e18691cb417001600ce00774513147bce01b0",
16645
+ codeHash: "a065f4a88edfe06c09d65e3c11154fe9d5a5b1cdc42b36adf1a3485ff8a51394",
16576
16646
  fieldsSig: {
16577
16647
  names: [
16578
16648
  "xalphToken",
@@ -16655,6 +16725,16 @@ var AlphUnstakeVault_ral_default = {
16655
16725
  "Bool"
16656
16726
  ]
16657
16727
  },
16728
+ {
16729
+ name: "cancelAndReturn",
16730
+ paramNames: [],
16731
+ paramTypes: [],
16732
+ paramIsMutable: [],
16733
+ returnTypes: [
16734
+ "U256",
16735
+ "U256"
16736
+ ]
16737
+ },
16658
16738
  {
16659
16739
  name: "destroy",
16660
16740
  paramNames: [],
@@ -16839,6 +16919,9 @@ var Factory25 = class extends import_web333.ContractFactory {
16839
16919
  claim: async (params) => {
16840
16920
  return (0, import_web333.testMethod)(this, "claim", params, getContractByCodeHash3);
16841
16921
  },
16922
+ cancelAndReturn: async (params) => {
16923
+ return (0, import_web333.testMethod)(this, "cancelAndReturn", params, getContractByCodeHash3);
16924
+ },
16842
16925
  destroy: async (params) => {
16843
16926
  return (0, import_web333.testMethod)(this, "destroy", params, getContractByCodeHash3);
16844
16927
  }
@@ -16851,7 +16934,7 @@ var AlphUnstakeVault = new Factory25(
16851
16934
  import_web333.Contract.fromJson(
16852
16935
  AlphUnstakeVault_ral_default,
16853
16936
  "",
16854
- "5216c458f360d0f51f5e2109a760814ff97eab76f546adc835eb318c6cbc5256",
16937
+ "a065f4a88edfe06c09d65e3c11154fe9d5a5b1cdc42b36adf1a3485ff8a51394",
16855
16938
  AllStructs2
16856
16939
  )
16857
16940
  );
@@ -16900,6 +16983,15 @@ var AlphUnstakeVaultInstance = class extends import_web333.ContractInstance {
16900
16983
  getContractByCodeHash3
16901
16984
  );
16902
16985
  },
16986
+ cancelAndReturn: async (params) => {
16987
+ return (0, import_web333.callMethod)(
16988
+ AlphUnstakeVault,
16989
+ this,
16990
+ "cancelAndReturn",
16991
+ params === void 0 ? {} : params,
16992
+ getContractByCodeHash3
16993
+ );
16994
+ },
16903
16995
  destroy: async (params) => {
16904
16996
  return (0, import_web333.callMethod)(
16905
16997
  AlphUnstakeVault,
@@ -16933,6 +17025,14 @@ var AlphUnstakeVaultInstance = class extends import_web333.ContractInstance {
16933
17025
  claim: async (params) => {
16934
17026
  return (0, import_web333.signExecuteMethod)(AlphUnstakeVault, this, "claim", params);
16935
17027
  },
17028
+ cancelAndReturn: async (params) => {
17029
+ return (0, import_web333.signExecuteMethod)(
17030
+ AlphUnstakeVault,
17031
+ this,
17032
+ "cancelAndReturn",
17033
+ params
17034
+ );
17035
+ },
16936
17036
  destroy: async (params) => {
16937
17037
  return (0, import_web333.signExecuteMethod)(AlphUnstakeVault, this, "destroy", params);
16938
17038
  }
@@ -16952,7 +17052,7 @@ var import_web334 = require("@alephium/web3");
16952
17052
 
16953
17053
  // ../staking/artifacts/utils/FullMathTest.ral.json
16954
17054
  var FullMathTest_ral_default2 = {
16955
- version: "v4.2.5",
17055
+ version: "v4.3.1",
16956
17056
  name: "FullMathTest",
16957
17057
  bytecode: "000140ea0000030901409216020c3013415e7b160016010c0d3687170316001601371704160316043616031604314c020d4a010c36170516050c2f4c04160416022d02160216053313415f7b160016011602871706160516061604334c020d4a010c361705160416063617040c1602361602381707160216072d1702160416072d17040c16073616072d0d351707160416051607373917040f1602370e3a170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e160216083736371708160416083702",
16958
17058
  codeHash: "fd74df789eb5974e11dfa74960ba1323e0530fe5e1fe0aa43a6c3c9bf9ee1d98",
@@ -17076,7 +17176,7 @@ var import_web335 = require("@alephium/web3");
17076
17176
 
17077
17177
  // ../staking/artifacts/examples/GovernanceDemo.ral.json
17078
17178
  var GovernanceDemo_ral_default = {
17079
- version: "v4.2.5",
17179
+ version: "v4.3.1",
17080
17180
  name: "GovernanceDemo",
17081
17181
  bytecode: "090c40c9419741f54217422b426c42a642b44382438d439843a801000206004058d3926b380bb417021602ce00774513087b140a5f5f6d61705f5f305f5f16004744cbc54c403f0c0d0d140a5f5f6d61705f5f305f5f16004744cb1705160501010d0d0d1605010117041703000b7a4c041816030c304c180c0d0d140a5f5f6d61705f5f315f5f16034044cb010116012a0c0e0c140a5f5f6d61705f5f315f5f16034044cb0102a00016012aa100160416012a0d0e0c140a5f5f6d61705f5f305f5f16004744cb01024a09ca140a5f5f6d61705f5f305f5f16004744b10c1601d201020100020700405ed365b06caeb417021602ce00774513087b140a5f5f6d61705f5f305f5f16004744cbc50d7b0c0d0d140a5f5f6d61705f5f305f5f16004744cb1706160601010d0d0d1606010117041703160416012b170516050d0e0c140a5f5f6d61705f5f305f5f16004744cb0102000b7a4c041816030c304c180c0d0d140a5f5f6d61705f5f315f5f16034044cb010116012b0c0e0c140a5f5f6d61705f5f315f5f16034044cb0102a00016012ba10016050c2f4c09ca0d0c140a5f5f6d61705f5f305f5f16004744cb010301000002004033d3ecf99ab7b4ce054513077b000919107b000a19117b56a101ce01ce02ce03ce041017000c170116011600314c14ca140a5f5f6d61705f5f315f5f16017a10314d0d2acf4044b10cd2010116010d2a17014a2805a0015e010000000012d33919f580b4ce054513077b00090f7b000a19117b56a10207a0025e010000000406d3068539face01ce02ce03ce040201000102021ad344a25325140a5f5f6d61705f5f305f5f16004744cbc50d7b0c0d0d140a5f5f6d61705f5f305f5f16004744cb1701160101010d0d0d1601010102010001010116d32e30a67700090f7b140a5f5f6d61705f5f315f5f16004044cbc50e7b0c0d0d140a5f5f6d61705f5f315f5f16004044cb010102010000000103d33cfd4f9ea000020100010300405cd376a80ea2b417011601480c7b00090f7b000a19117b140a5f5f6d61705f5f315f5f16004044cbc50e7b140a5f5f6d61705f5f305f5f16014744cbc50d7b0c0d0d140a5f5f6d61705f5f305f5f16014744cb01010c2f13067b0d0d0d140a5f5f6d61705f5f305f5f16014744cb01011702a00016022aa1000c0d0d140a5f5f6d61705f5f315f5f16004044cb010116022a0c0e0c140a5f5f6d61705f5f315f5f16004044cb010216000c0e0c140a5f5f6d61705f5f305f5f16014744cb01020616011600160260000000000104a0010c3002000000000104a0020c300200000000010700097a4c0318000a1902",
17082
17182
  codeHash: "1d77f89642f8b3bd6364388e7b9b8ad9d58815365d4e7a02a932fe65ab913078",
@@ -17686,7 +17786,7 @@ var import_web337 = require("@alephium/web3");
17686
17786
 
17687
17787
  // ../staking/artifacts/examples/RewardSharingVault.ral.json
17688
17788
  var RewardSharingVault_ral_default = {
17689
- version: "v4.2.5",
17789
+ version: "v4.3.1",
17690
17790
  name: "RewardSharingVault",
17691
17791
  bytecode: "040740b74152423c4277428942c0431e01000208004054d3926b380bb417021602ce00774513287b140a5f5f6d61705f5f305f5f16004744cbc54c40270c0d0d140a5f5f6d61705f5f305f5f16004744cb01011703160116032a16000d0ece00010d1707170616062f132b7b16000005160316012a0c0e0c140a5f5f6d61705f5f305f5f16004744cb01024a15160116000d0ece00010d1705170416042f132b7bca140a5f5f6d61705f5f305f5f16004744b11601a001d20102a00016012aa10005160016015f01000205004046d365b06caeb417021602ce00774513287b140a5f5f6d61705f5f305f5f16004744cbc513297b0c0d0d140a5f5f6d61705f5f305f5f16004744cb010117031601160332132c7b160316012b17041600000516040c2f4c0aca0d0c140a5f5f6d61705f5f305f5f16004744cb01034a0a16040c0e0c140a5f5f6d61705f5f305f5f16004744cb0102a00016012ba10006160016015f0000030901409216020c3013415e7b160016010c0d3687170316001601371704160316043616031604314c020d4a010c36170516050c2f4c04160416022d02160216053313415f7b160016011602871706160516061604334c020d4a010c361705160416063617040c1602361602381707160216072d1702160416072d17040c16073616072d0d351707160416051607373917040f1602370e3a170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e160216083736371708160416083702010101030019d3fe1110a1a0000c33132a7bb417011601ce011600ac160013c40de0b6b3a7640000a00000021702a00116022aa10107160116005f010300010005d3a28b71d5b417001600000500020102001916000006170116010c334c081600ce011601ab08160016015fa0010d0e0c140a5f5f6d61705f5f305f5f16004744cb010201000105014024d31191a066140a5f5f6d61705f5f305f5f16004744cbc513297b0c0d0d140a5f5f6d61705f5f305f5f16004744cb1704160401010d0d0d1604010117021701a00116022b17031601160313c40de0b6b3a7640000000202",
17692
17792
  codeHash: "8beaa8b570543344d4352cf8534bbc7df4591b4ecda97cfc3c30bc28dca5adb9",
@@ -18199,7 +18299,7 @@ var import_web339 = require("@alephium/web3");
18199
18299
 
18200
18300
  // ../staking/artifacts/utils/TestDynamicArrayByteVec32.ral.json
18201
18301
  var TestDynamicArrayByteVec32_ral_default = {
18202
- version: "v4.2.5",
18302
+ version: "v4.3.1",
18203
18303
  name: "TestDynamicArrayByteVec32",
18204
18304
  bytecode: "00074028407340af40cc40fc411a4128010002030112d3545eacd4160116000005311342277b160113202c170216001602160213202a620201000204014028d3083a358916004313202e0c2f1342267b16014313202f1342287b1600000517020c170316031602314c0e1600160300001601414c0316033f0216030d2a17034a2e0b0201000203011fd3694941c216004313202e0c2f1342267b16014313202f1342287b160016010001170216020b244c031600024a05160016023d00040201000202010dd354ad273416004313202e0c2f1342267b160016014402010002030118d34b2e25b7160116000005311342277b160113202c170216000c1602621600160213202a16004362440201000101010ed30041471116004313202e0c2f1342267b16004313202d02010000000103d3676c3c33140002",
18205
18305
  codeHash: "594861ab1850f3d1872ee687c87ddfeca8746bfe5b9ade07fabc4ca27c56661c",
@@ -18546,7 +18646,7 @@ var import_web340 = require("@alephium/web3");
18546
18646
 
18547
18647
  // ../staking/artifacts/utils/TestDynamicSortedArrayForU256.ral.json
18548
18648
  var TestDynamicSortedArrayForU256_ral_default = {
18549
- version: "v4.2.5",
18649
+ version: "v4.3.1",
18550
18650
  name: "TestDynamicSortedArrayForU256",
18551
18651
  bytecode: "0008402d4056408840a640f341234141414f010002040115d3cee93194160116000006311342277b160113202c170216001602160213202a62170316037102010002030114d33cd5e72916004313202e0c2f1342267b16004313202d1702160016010c1602000402010002030119d32cabd28216004313202e0c2f1342267b160016010001170216020b244c031600024a05160016023d00050201000202010ed31bc25d3416004313202e0c2f1342267b160016016b44020000040601402a16021603344c020b02160216032a0e2d17041600160400001705160516012f4c0316043f0216051601314c091600160116040d2a16030004024a061600160116021604000402010002030118d34b2e25b7160116000006311342277b160113202c170216000c1602621600160213202a16004362440201000101010ed30041471116004313202e0c2f1342267b16004313202d02010000000103d3676c3c33140002",
18552
18652
  codeHash: "86f2584a16af632c63b6c1ead625d4d53f11b9a3f2d465010085bd740be281d3",
@@ -18957,7 +19057,7 @@ var import_web341 = require("@alephium/web3");
18957
19057
 
18958
19058
  // ../staking/artifacts/utils/TestMerkleProof.ral.json
18959
19059
  var TestMerkleProof_ral_default = {
18960
- version: "v4.2.5",
19060
+ version: "v4.3.1",
18961
19061
  name: "TestMerkleProof",
18962
19062
  bytecode: "01050e4027407b409b40a5010000000103d393f264e8a0000200000101000c16004313202f136afb7b1600a10005a000b45f0000020601402e16014313202f136afa7b160117021600431703160313202e0c2f136af97b0c170416041603314c1016001604160413202a6217051605160200031702160413202a17044a2c160271a000712f02000002020110160071160171314c05160016014400044a04160116004400040200000101010316004f02",
18963
19063
  codeHash: "a6d0eadb4c4fbe25c0155c0a2e31ba6cc7a993cd27b3f708c6af418af44a7c57",
@@ -19239,7 +19339,7 @@ var import_web342 = require("@alephium/web3");
19239
19339
 
19240
19340
  // ../staking/artifacts/XAlphStakeVault.ral.json
19241
19341
  var XAlphStakeVault_ral_default = {
19242
- version: "v4.2.5",
19342
+ version: "v4.3.1",
19243
19343
  name: "XAlphStakeVault",
19244
19344
  bytecode: "05174028407340af40cc40fc411a41284136414f41a341c341cd41db42234241431043f0448b451145604577458e45a7010002030112d3545eacd4160116000005311342277b160113202c170216001602160213202a620201000204014028d3083a358916004313202e0c2f1342267b16014313202f1342287b1600000517020c170316031602314c0e1600160300001601414c0316033f0216030d2a17034a2e0b0201000203011fd3694941c216004313202e0c2f1342267b16014313202f1342287b160016010001170216020b244c031600024a05160016023d00040201000202010dd354ad273416004313202e0c2f1342267b160016014402010002030118d34b2e25b7160116000005311342277b160113202c170216000c1602621600160213202a16004362440201000101010ed30041471116004313202e0c2f1342267b16004313202d02010000000103d3676c3c33140002010000000103d393f264e8a0000200000101000c16004313202f136afb7b1600a10005a000b45f0000020601402e16014313202f136afa7b160117021600431703160313202e0c2f136af97b0c170416041603314c1016001604160413202a62170516051602000a1702160413202a17044a2c160271a000712f02000002020110160071160171314c051600160144000b4a041601160044000b0200000101010316004f02010000000103d3b299f80ace000201000102021ed3f87904e4140a5f5f6d61705f5f305f5f16004744cbc5194c040c0006024a110c0d0d140a5f5f6d61705f5f305f5f16004744cb1701160101010d0d0d1601010102010001010108d32b875d11140a5f5f6d61705f5f305f5f16004744cbc5020101010800405fd3d63c543cb4170116014813412d7b16000c331341307b1601ce001600ac140a5f5f6d61705f5f305f5f16014744cbc54c40370c0d0d140a5f5f6d61705f5f305f5f16014744cb1707160701010d0d0d1607010117031702160216002a0c0e0c140a5f5f6d61705f5f305f5f16014744cb01021603000517040c170516051604314c0f1603160500001706160116000e0c1606d4926b380b16050d2a17054a2d4a09ca140a5f5f6d61705f5f305f5f16014744b116000006d20102a00116002aa10106160116005f0102010900406bd310bd129fb4170116014813412d7b140a5f5f6d61705f5f305f5f16014744cbc513412e7b16000c331341317b0c0d0d140a5f5f6d61705f5f305f5f16014744cb1708160801010d0d0d1608010117031702160216003413412f7b160216002b17041603000517050c170616061605314c0f1603160600001707160116000e0c1607d465b06cae16060d2a17064a2d16040c2f4c0aca0d0c140a5f5f6d61705f5f305f5f16014744cb01034a0a16040c0e0c140a5f5f6d61705f5f305f5f16014744cb01021601ce001600aba00116002ba10107160116005f01000206004045d3c5f91cb4b4170216024813412d7b1601160000161341357b140a5f5f6d61705f5f305f5f16024744cbc513412e7b0c0d0d140a5f5f6d61705f5f305f5f16024744cb1705160501010d0d0d160501011704170316040005ce01311341327b1604160000010b241341337b160216030e0c1600d4926b380b1604160000030d0e0c140a5f5f6d61705f5f305f5f16024744cb01020100010500403ad3b6398887b4170116014813412d7b140a5f5f6d61705f5f305f5f16014744cbc513412e7b0c0d0d140a5f5f6d61705f5f305f5f16014744cb1704160401010d0d0d16040101170317021603160000010b251341347b160116020e0c1600d465b06cae1603160000020d0e0c140a5f5f6d61705f5f305f5f16014744cb010201000101011fd3e5725392140a5f5f6d61705f5f305f5f16004744cbc5197a4b0418a0010c2f4c020c020c0d0d140a5f5f6d61705f5f305f5f16004744cb010113c40de0b6b3a76400002ca0012d02010001010008d3e5bf78dcb4a0024513412c7b16000008010001010008d34f58efe6b4a0024513412c7b1600a102010002030109d3af1ed9dd1601b9170216001602000b000902",
19245
19345
  codeHash: "06a6db7355978ed027d5a0d36573bf54cef4a67d503b270b8ede5870b3117c7b",
@@ -20314,10 +20414,10 @@ var import_web344 = require("@alephium/web3");
20314
20414
 
20315
20415
  // ../staking/artifacts/XAlphToken.ral.json
20316
20416
  var XAlphToken_ral_default = {
20317
- version: "v4.2.5",
20417
+ version: "v4.3.1",
20318
20418
  name: "XAlphToken",
20319
- bytecode: "091109121b40244051407a40ac40ca411741474165417341a6427842b242d4435d010000000102ce0002010000000102ce0102010000000102ce0202010000000102a00002010002040115d3cee9319416011600000a311342277b160113202c170216001602160213202a62170316037102010002030114d33cd5e72916004313202e0c2f1342267b16004313202d1702160016010c1602000802010002030119d32cabd28216004313202e0c2f1342267b160016010005170216020b244c031600024a05160016023d00090201000202010ed31bc25d3416004313202e0c2f1342267b160016016b44020000040601402a16021603344c020b02160216032a0e2d17041600160400041705160516012f4c0316043f0216051601314c091600160116040d2a16030008024a061600160116021604000802010002030118d34b2e25b716011600000a311342277b160113202c170216000c1602621600160213202a16004362440201000101010ed30041471116004313202e0c2f1342267b16004313202d02010000000103d3676c3c3314000201010102001bd3d63c543cb41701160148130a7b16000c33130e7b1601b11600ab16011600a9a00016002aa10005160116005f01010106014069d33538a49fb41701160148130a7bce050c33130c7b16000c33130e7ba0010d2aa101140a5f5f6d61705f5f305f5f16014744cbc54c1d0c0d0d140a5f5f6d61705f5f305f5f16014744cb010117021602000ace0431130b7b1602a00100070c0e0c140a5f5f6d61705f5f305f5f16014744cb01024a09ca140a5f5f6d61705f5f305f5f16014744b1a0016bd201011601b11600acb11601160056ce051305640c13016417041703b21600a2160147a0014044ce0316031604c11705a00016002ba10006160116005f160502010001010115d38072397d140a5f5f6d61705f5f305f5f16004744cbc5194c021400020c0d0d140a5f5f6d61705f5f305f5f16004744cb010102010002030111d3fd3d3af616004716014044cb17021602c5130d7b0c0d160201020201000206004040d38bb32147b4170216024716004044cb170316010c33130e7b16010d0d16030103170416044c40290c0d0d140a5f5f6d61705f5f305f5f16024744cb01011600000617051605430c2f4c0a16020d0c140a5f5f6d61705f5f305f5f16024744cb01034a0a16050c0e0c140a5f5f6d61705f5f305f5f16024744cb01020c0c16030104",
20320
- codeHash: "5f95704fd2f96ed987b89fdb6e0659cc32d2accc50194a6bd2aedcffdce2f3e5",
20419
+ bytecode: "0a1509121b40244051407a40ac40ca4117414741654173425d426b42c643b243e0441a443c44c54593010000000102ce0002010000000102ce0102010000000102ce0202010000000102a00102010002040115d3cee9319416011600000a311342277b160113202c170216001602160213202a62170316037102010002030114d33cd5e72916004313202e0c2f1342267b16004313202d1702160016010c1602000802010002030119d32cabd28216004313202e0c2f1342267b160016010005170216020b244c031600024a05160016023d00090201000202010ed31bc25d3416004313202e0c2f1342267b160016016b44020000040601402a16021603344c020b02160216032a0e2d17041600160400041705160516012f4c0316043f0216051601314c091600160116040d2a16030008024a061600160116021604000802010002030118d34b2e25b716011600000a311342277b160113202c170216000c1602621600160213202a16004362440201000101010ed30041471116004313202e0c2f1342267b16004313202d02010000000103d3676c3c331400020000030901409216020c3013415e7b160016010c0d3687170316001601371704160316043616031604314c020d4a010c36170516050c2f4c04160416022d02160216053313415f7b160016011602871706160516061604334c020d4a010c361705160416063617040c1602361602381707160216072d1702160416072d17040c16073616072d0d351707160416051607373917040f1602370e3a170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e160216083736371708160416083702010000000103d38719c92ea0000201010103014032d38bbc9beeb41701160148130a7b16000c33130e7ba0010c2f4c0216004a041600a001a000000c170216020c33130f7b1601b11602ab16011600a9a00016002aa100a00116022aa101051601160016026016020201010107014078d33538a49fb41701160148130a7bce050c33130c7b16000c33130e7b1600a000a001000c170216020c3313107ba0020d2aa102140a5f5f6d61705f5f305f5f16014744cbc54c1d0c0d0d140a5f5f6d61705f5f305f5f16014744cb010117031603000ace0431130b7b1603a00200070c0e0c140a5f5f6d61705f5f305f5f16014744cb01024a09ca140a5f5f6d61705f5f305f5f16014744b1a0026bd201011601b11600acb11601160256ce051305640c13016417051704b21602a2160147a0024044ce0316041605c11706a00016022ba100a00116002ba1010616011600160260160602010701020018d3fe1110a1b4170116000c33130e7ba0010c3313117b16011600a9a00016002aa10008160116005f010001010115d38072397d140a5f5f6d61705f5f305f5f16004744cbc5194c021400020c0d0d140a5f5f6d61705f5f305f5f16004744cb010102010002030111d3fd3d3af616004716014044cb17021602c5130d7b0c0d160201020201000206004040d38bb32147b4170216024716004044cb170316010c33130e7b16010d0d16030103170416044c40290c0d0d140a5f5f6d61705f5f305f5f16024744cb01011600000617051605430c2f4c0a16020d0c140a5f5f6d61705f5f305f5f16024744cb01034a0a16050c0e0c140a5f5f6d61705f5f305f5f16024744cb01020c0c160301050102010701406bd30bdc6a97b41701160148130a7b16014716004044cb17021602c5130d7b0c0e16020104170417030c0c160201050c170516040c334c1ca0010c2f4c0216044a041604a001a000000c170516050c33130f7b1601b11605aba00016042aa100a00116052aa1010c0d0d140a5f5f6d61705f5f305f5f16014744cb01011600000617061606430c2f4c0a16010d0c140a5f5f6d61705f5f305f5f16014744cb01034a0a16060c0e0c140a5f5f6d61705f5f305f5f16014744cb010207160116051603160461160502",
20420
+ codeHash: "3329d0319da90857686a9e618c3fa8197226ed9be58b7371314b3247d9fd8e1c",
20321
20421
  fieldsSig: {
20322
20422
  names: [
20323
20423
  "symbol",
@@ -20326,7 +20426,8 @@ var XAlphToken_ral_default = {
20326
20426
  "unstakeVaultTemplateId",
20327
20427
  "maxActiveUnstakeRequestsPerUser",
20328
20428
  "unstakeDuration",
20329
- "totalStaked",
20429
+ "totalDepositedAlph",
20430
+ "totalXAlphSupply",
20330
20431
  "lastUnstakeVaultIndex",
20331
20432
  "__stdInterfaceId"
20332
20433
  ],
@@ -20339,6 +20440,7 @@ var XAlphToken_ral_default = {
20339
20440
  "U256",
20340
20441
  "U256",
20341
20442
  "U256",
20443
+ "U256",
20342
20444
  "ByteVec"
20343
20445
  ],
20344
20446
  isMutable: [
@@ -20350,6 +20452,7 @@ var XAlphToken_ral_default = {
20350
20452
  false,
20351
20453
  true,
20352
20454
  true,
20455
+ true,
20353
20456
  false
20354
20457
  ]
20355
20458
  },
@@ -20358,10 +20461,12 @@ var XAlphToken_ral_default = {
20358
20461
  name: "Staked",
20359
20462
  fieldNames: [
20360
20463
  "to",
20361
- "amount"
20464
+ "alphAmount",
20465
+ "xAlphAmount"
20362
20466
  ],
20363
20467
  fieldTypes: [
20364
20468
  "Address",
20469
+ "U256",
20365
20470
  "U256"
20366
20471
  ]
20367
20472
  },
@@ -20369,6 +20474,34 @@ var XAlphToken_ral_default = {
20369
20474
  name: "UnstakeScheduled",
20370
20475
  fieldNames: [
20371
20476
  "to",
20477
+ "xAlphAmount",
20478
+ "alphAmount"
20479
+ ],
20480
+ fieldTypes: [
20481
+ "Address",
20482
+ "U256",
20483
+ "U256"
20484
+ ]
20485
+ },
20486
+ {
20487
+ name: "UnstakeCancelled",
20488
+ fieldNames: [
20489
+ "to",
20490
+ "xAlphAmount",
20491
+ "claimedAlphAmount",
20492
+ "restakedAlphAmount"
20493
+ ],
20494
+ fieldTypes: [
20495
+ "Address",
20496
+ "U256",
20497
+ "U256",
20498
+ "U256"
20499
+ ]
20500
+ },
20501
+ {
20502
+ name: "RewardDeposited",
20503
+ fieldNames: [
20504
+ "from",
20372
20505
  "amount"
20373
20506
  ],
20374
20507
  fieldTypes: [
@@ -20552,6 +20685,36 @@ var XAlphToken_ral_default = {
20552
20685
  "ByteVec"
20553
20686
  ]
20554
20687
  },
20688
+ {
20689
+ name: "mulDiv",
20690
+ paramNames: [
20691
+ "a",
20692
+ "b",
20693
+ "denominator"
20694
+ ],
20695
+ paramTypes: [
20696
+ "U256",
20697
+ "U256",
20698
+ "U256"
20699
+ ],
20700
+ paramIsMutable: [
20701
+ false,
20702
+ false,
20703
+ true
20704
+ ],
20705
+ returnTypes: [
20706
+ "U256"
20707
+ ]
20708
+ },
20709
+ {
20710
+ name: "getTotalDepositedAlph",
20711
+ paramNames: [],
20712
+ paramTypes: [],
20713
+ paramIsMutable: [],
20714
+ returnTypes: [
20715
+ "U256"
20716
+ ]
20717
+ },
20555
20718
  {
20556
20719
  name: "stake",
20557
20720
  paramNames: [
@@ -20563,7 +20726,9 @@ var XAlphToken_ral_default = {
20563
20726
  paramIsMutable: [
20564
20727
  false
20565
20728
  ],
20566
- returnTypes: []
20729
+ returnTypes: [
20730
+ "U256"
20731
+ ]
20567
20732
  },
20568
20733
  {
20569
20734
  name: "startUnstake",
@@ -20580,6 +20745,19 @@ var XAlphToken_ral_default = {
20580
20745
  "ByteVec"
20581
20746
  ]
20582
20747
  },
20748
+ {
20749
+ name: "depositReward",
20750
+ paramNames: [
20751
+ "amount"
20752
+ ],
20753
+ paramTypes: [
20754
+ "U256"
20755
+ ],
20756
+ paramIsMutable: [
20757
+ false
20758
+ ],
20759
+ returnTypes: []
20760
+ },
20583
20761
  {
20584
20762
  name: "getActiveUnstakeVaultIndexes",
20585
20763
  paramNames: [
@@ -20628,6 +20806,21 @@ var XAlphToken_ral_default = {
20628
20806
  false
20629
20807
  ],
20630
20808
  returnTypes: []
20809
+ },
20810
+ {
20811
+ name: "cancelUnstake",
20812
+ paramNames: [
20813
+ "vaultIndex"
20814
+ ],
20815
+ paramTypes: [
20816
+ "U256"
20817
+ ],
20818
+ paramIsMutable: [
20819
+ false
20820
+ ],
20821
+ returnTypes: [
20822
+ "U256"
20823
+ ]
20631
20824
  }
20632
20825
  ],
20633
20826
  constants: [
@@ -20666,6 +20859,25 @@ var XAlphToken_ral_default = {
20666
20859
  }
20667
20860
  ]
20668
20861
  },
20862
+ {
20863
+ name: "FullMathError",
20864
+ fields: [
20865
+ {
20866
+ name: "DivByZero",
20867
+ value: {
20868
+ type: "U256",
20869
+ value: "350"
20870
+ }
20871
+ },
20872
+ {
20873
+ name: "MulDivOverflow",
20874
+ value: {
20875
+ type: "U256",
20876
+ value: "351"
20877
+ }
20878
+ }
20879
+ ]
20880
+ },
20669
20881
  {
20670
20882
  name: "ErrorCodes",
20671
20883
  fields: [
@@ -20703,6 +20915,27 @@ var XAlphToken_ral_default = {
20703
20915
  type: "U256",
20704
20916
  value: "14"
20705
20917
  }
20918
+ },
20919
+ {
20920
+ name: "ZeroXAlphOutput",
20921
+ value: {
20922
+ type: "U256",
20923
+ value: "15"
20924
+ }
20925
+ },
20926
+ {
20927
+ name: "ZeroAlphOutput",
20928
+ value: {
20929
+ type: "U256",
20930
+ value: "16"
20931
+ }
20932
+ },
20933
+ {
20934
+ name: "NoStakers",
20935
+ value: {
20936
+ type: "U256",
20937
+ value: "17"
20938
+ }
20706
20939
  }
20707
20940
  ]
20708
20941
  }
@@ -20728,7 +20961,12 @@ var Factory33 = class extends import_web344.ContractFactory {
20728
20961
  AllStructs2
20729
20962
  );
20730
20963
  }
20731
- eventIndex = { Staked: 0, UnstakeScheduled: 1 };
20964
+ eventIndex = {
20965
+ Staked: 0,
20966
+ UnstakeScheduled: 1,
20967
+ UnstakeCancelled: 2,
20968
+ RewardDeposited: 3
20969
+ };
20732
20970
  consts = {
20733
20971
  IntByteLength: BigInt("32"),
20734
20972
  ErrorCode: {
@@ -20736,12 +20974,16 @@ var Factory33 = class extends import_web344.ContractFactory {
20736
20974
  IndexOutOfBound: BigInt("551"),
20737
20975
  InvalidByteVecLength: BigInt("552")
20738
20976
  },
20977
+ FullMathError: { DivByZero: BigInt("350"), MulDivOverflow: BigInt("351") },
20739
20978
  ErrorCodes: {
20740
20979
  AssetAddressCallerOnly: BigInt("10"),
20741
20980
  TooManyActiveUnstakeVaults: BigInt("11"),
20742
20981
  InvalidUnstakeDuration: BigInt("12"),
20743
20982
  NonExistantUnstakeVault: BigInt("13"),
20744
- AmountMustBeGreaterThanZero: BigInt("14")
20983
+ AmountMustBeGreaterThanZero: BigInt("14"),
20984
+ ZeroXAlphOutput: BigInt("15"),
20985
+ ZeroAlphOutput: BigInt("16"),
20986
+ NoStakers: BigInt("17")
20745
20987
  }
20746
20988
  };
20747
20989
  at(address) {
@@ -20784,12 +21026,26 @@ var Factory33 = class extends import_web344.ContractFactory {
20784
21026
  empty: async (params) => {
20785
21027
  return (0, import_web344.testMethod)(this, "empty", params, getContractByCodeHash3);
20786
21028
  },
21029
+ mulDiv: async (params) => {
21030
+ return (0, import_web344.testMethod)(this, "mulDiv", params, getContractByCodeHash3);
21031
+ },
21032
+ getTotalDepositedAlph: async (params) => {
21033
+ return (0, import_web344.testMethod)(
21034
+ this,
21035
+ "getTotalDepositedAlph",
21036
+ params,
21037
+ getContractByCodeHash3
21038
+ );
21039
+ },
20787
21040
  stake: async (params) => {
20788
21041
  return (0, import_web344.testMethod)(this, "stake", params, getContractByCodeHash3);
20789
21042
  },
20790
21043
  startUnstake: async (params) => {
20791
21044
  return (0, import_web344.testMethod)(this, "startUnstake", params, getContractByCodeHash3);
20792
21045
  },
21046
+ depositReward: async (params) => {
21047
+ return (0, import_web344.testMethod)(this, "depositReward", params, getContractByCodeHash3);
21048
+ },
20793
21049
  getActiveUnstakeVaultIndexes: async (params) => {
20794
21050
  return (0, import_web344.testMethod)(
20795
21051
  this,
@@ -20808,6 +21064,9 @@ var Factory33 = class extends import_web344.ContractFactory {
20808
21064
  },
20809
21065
  claimUnstaked: async (params) => {
20810
21066
  return (0, import_web344.testMethod)(this, "claimUnstaked", params, getContractByCodeHash3);
21067
+ },
21068
+ cancelUnstake: async (params) => {
21069
+ return (0, import_web344.testMethod)(this, "cancelUnstake", params, getContractByCodeHash3);
20811
21070
  }
20812
21071
  };
20813
21072
  stateForTest(initFields, asset, address, maps) {
@@ -20817,8 +21076,8 @@ var Factory33 = class extends import_web344.ContractFactory {
20817
21076
  var XAlphToken = new Factory33(
20818
21077
  import_web344.Contract.fromJson(
20819
21078
  XAlphToken_ral_default,
20820
- "=52-2+91=2+c=1-1=2+e=1-1=2-2+8f=857-1+b=235-1+b=34+7a7e0214696e73657274206174206d617020706174683a2000=333-1+2=79-1+b=69-1+c=40+7a7e021472656d6f7665206174206d617020706174683a2000=70",
20821
- "8ded2201203cffd39adc32f6278f37f0ef1a543cf34872a159a1f36de68620d4",
21079
+ "=60+c=1-1=2-6+f9=3-1+3=2-1+5=2+4f74=1-2+de=1433-1+a=269-1+b=34+7a7e0214696e73657274206174206d617020706174683a2000=443-1+2=79-1+b=69-1+c=40+7a7e021472656d6f7665206174206d617020706174683a2000=83-1+d=273-1+c=40+7a7e021472656d6f7665206174206d617020706174683a2000=84",
21080
+ "1a0bd323d964c45cd5451b7d7d049316f533d194800f0fe76892bddee137f8ce",
20822
21081
  AllStructs2
20823
21082
  )
20824
21083
  );
@@ -20858,6 +21117,24 @@ var XAlphTokenInstance = class extends import_web344.ContractInstance {
20858
21117
  fromCount
20859
21118
  );
20860
21119
  }
21120
+ subscribeUnstakeCancelledEvent(options, fromCount) {
21121
+ return (0, import_web344.subscribeContractEvent)(
21122
+ XAlphToken.contract,
21123
+ this,
21124
+ options,
21125
+ "UnstakeCancelled",
21126
+ fromCount
21127
+ );
21128
+ }
21129
+ subscribeRewardDepositedEvent(options, fromCount) {
21130
+ return (0, import_web344.subscribeContractEvent)(
21131
+ XAlphToken.contract,
21132
+ this,
21133
+ options,
21134
+ "RewardDeposited",
21135
+ fromCount
21136
+ );
21137
+ }
20861
21138
  subscribeAllEvents(options, fromCount) {
20862
21139
  return (0, import_web344.subscribeContractEvents)(
20863
21140
  XAlphToken.contract,
@@ -20969,6 +21246,24 @@ var XAlphTokenInstance = class extends import_web344.ContractInstance {
20969
21246
  getContractByCodeHash3
20970
21247
  );
20971
21248
  },
21249
+ mulDiv: async (params) => {
21250
+ return (0, import_web344.callMethod)(
21251
+ XAlphToken,
21252
+ this,
21253
+ "mulDiv",
21254
+ params,
21255
+ getContractByCodeHash3
21256
+ );
21257
+ },
21258
+ getTotalDepositedAlph: async (params) => {
21259
+ return (0, import_web344.callMethod)(
21260
+ XAlphToken,
21261
+ this,
21262
+ "getTotalDepositedAlph",
21263
+ params === void 0 ? {} : params,
21264
+ getContractByCodeHash3
21265
+ );
21266
+ },
20972
21267
  stake: async (params) => {
20973
21268
  return (0, import_web344.callMethod)(
20974
21269
  XAlphToken,
@@ -20987,6 +21282,15 @@ var XAlphTokenInstance = class extends import_web344.ContractInstance {
20987
21282
  getContractByCodeHash3
20988
21283
  );
20989
21284
  },
21285
+ depositReward: async (params) => {
21286
+ return (0, import_web344.callMethod)(
21287
+ XAlphToken,
21288
+ this,
21289
+ "depositReward",
21290
+ params,
21291
+ getContractByCodeHash3
21292
+ );
21293
+ },
20990
21294
  getActiveUnstakeVaultIndexes: async (params) => {
20991
21295
  return (0, import_web344.callMethod)(
20992
21296
  XAlphToken,
@@ -21013,6 +21317,15 @@ var XAlphTokenInstance = class extends import_web344.ContractInstance {
21013
21317
  params,
21014
21318
  getContractByCodeHash3
21015
21319
  );
21320
+ },
21321
+ cancelUnstake: async (params) => {
21322
+ return (0, import_web344.callMethod)(
21323
+ XAlphToken,
21324
+ this,
21325
+ "cancelUnstake",
21326
+ params,
21327
+ getContractByCodeHash3
21328
+ );
21016
21329
  }
21017
21330
  };
21018
21331
  transact = {
@@ -21052,12 +21365,26 @@ var XAlphTokenInstance = class extends import_web344.ContractInstance {
21052
21365
  empty: async (params) => {
21053
21366
  return (0, import_web344.signExecuteMethod)(XAlphToken, this, "empty", params);
21054
21367
  },
21368
+ mulDiv: async (params) => {
21369
+ return (0, import_web344.signExecuteMethod)(XAlphToken, this, "mulDiv", params);
21370
+ },
21371
+ getTotalDepositedAlph: async (params) => {
21372
+ return (0, import_web344.signExecuteMethod)(
21373
+ XAlphToken,
21374
+ this,
21375
+ "getTotalDepositedAlph",
21376
+ params
21377
+ );
21378
+ },
21055
21379
  stake: async (params) => {
21056
21380
  return (0, import_web344.signExecuteMethod)(XAlphToken, this, "stake", params);
21057
21381
  },
21058
21382
  startUnstake: async (params) => {
21059
21383
  return (0, import_web344.signExecuteMethod)(XAlphToken, this, "startUnstake", params);
21060
21384
  },
21385
+ depositReward: async (params) => {
21386
+ return (0, import_web344.signExecuteMethod)(XAlphToken, this, "depositReward", params);
21387
+ },
21061
21388
  getActiveUnstakeVaultIndexes: async (params) => {
21062
21389
  return (0, import_web344.signExecuteMethod)(
21063
21390
  XAlphToken,
@@ -21071,6 +21398,9 @@ var XAlphTokenInstance = class extends import_web344.ContractInstance {
21071
21398
  },
21072
21399
  claimUnstaked: async (params) => {
21073
21400
  return (0, import_web344.signExecuteMethod)(XAlphToken, this, "claimUnstaked", params);
21401
+ },
21402
+ cancelUnstake: async (params) => {
21403
+ return (0, import_web344.signExecuteMethod)(XAlphToken, this, "cancelUnstake", params);
21074
21404
  }
21075
21405
  };
21076
21406
  async multicall(callss) {
@@ -21086,44 +21416,11 @@ var XAlphTokenInstance = class extends import_web344.ContractInstance {
21086
21416
  // ../staking/artifacts/ts/scripts.ts
21087
21417
  var import_web346 = require("@alephium/web3");
21088
21418
 
21089
- // ../staking/artifacts/AlphStakeAndLock.ral.json
21090
- var AlphStakeAndLock_ral_default = {
21091
- version: "v4.2.5",
21092
- name: "AlphStakeAndLock",
21093
- bytecodeTemplate: "01010300020018b417001600{2}a2{2}0d0c{0}010c0c0d{1}010c170116001601{2}a3{2}0d0c{1}010f",
21094
- fieldsSig: {
21095
- names: [
21096
- "xAlphToken",
21097
- "xAlphStakeVault",
21098
- "amount"
21099
- ],
21100
- types: [
21101
- "XAlphToken",
21102
- "XAlphStakeVault",
21103
- "U256"
21104
- ],
21105
- isMutable: [
21106
- false,
21107
- false,
21108
- false
21109
- ]
21110
- },
21111
- functions: [
21112
- {
21113
- name: "main",
21114
- paramNames: [],
21115
- paramTypes: [],
21116
- paramIsMutable: [],
21117
- returnTypes: []
21118
- }
21119
- ]
21120
- };
21121
-
21122
21419
  // ../staking/artifacts/XAlphUnlockAndStartUnstake.ral.json
21123
21420
  var XAlphUnlockAndStartUnstake_ral_default = {
21124
- version: "v4.2.5",
21421
+ version: "v4.3.1",
21125
21422
  name: "XAlphUnlockAndStartUnstake",
21126
- bytecodeTemplate: "01010300020016b41700{2}0d0c{1}01100c0d{1}010c170116001601{2}a3{2}0d0d{0}010d18",
21423
+ bytecodeTemplate: "01010300020016b41700{2}0d0c{1}01100c0d{1}010c170116001601{2}a3{2}0d0d{0}010f18",
21127
21424
  fieldsSig: {
21128
21425
  names: [
21129
21426
  "xAlphToken",
@@ -21153,10 +21450,6 @@ var XAlphUnlockAndStartUnstake_ral_default = {
21153
21450
  };
21154
21451
 
21155
21452
  // ../staking/artifacts/ts/scripts.ts
21156
- var AlphStakeAndLock = new import_web346.ExecutableScript(
21157
- import_web346.Script.fromJson(AlphStakeAndLock_ral_default, "", AllStructs2),
21158
- getContractByCodeHash3
21159
- );
21160
21453
  var XAlphUnlockAndStartUnstake = new import_web346.ExecutableScript(
21161
21454
  import_web346.Script.fromJson(XAlphUnlockAndStartUnstake_ral_default, "", AllStructs2),
21162
21455
  getContractByCodeHash3
@@ -21167,30 +21460,30 @@ var deployments_testnet_default3 = {
21167
21460
  deployerAddress: "16j6oMwCc768CSjXst5ftHwyu7gUn6PvCX7YVvAQWWbZ2",
21168
21461
  contracts: {
21169
21462
  AlphUnstakeVault: {
21170
- txId: "36ad2eb4a64bcc3b89441a0f0775dd57fbefe02ad6e647680f830217c8d80f9f",
21171
- unsignedTx: "000101010103000000081500551362cc76354454f639b640f9c898aa72cf097706ad51d8fbcb2fcb4b65e78113c4016345785d8a0000a2144198060540ea40f841384172418c0000030901409216020c3013415e7b160016010c0d3687170316001601371704160316043616031604314c020d4a010c36170516050c2f4c04160416022d02160216053313415f7b160016011602871706160516061604334c020d4a010c361705160416063617040c1602361602381707160216072d1702160416072d17040c16073616072d0d351707160416051607373917040f1602370e3a170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e160216083736371708160416083702010000000103d3f10c9d97ce020201000003014020d3223281b2ce040c3313167b5617001600ce033413177b1600ce032b1701ce0217021601ce04314c0516021601ce04000017021602a0002b0201020102011fd30e00e856b417011601ce0077457a4b04181601ce014513147b160000023213157bce011600a8a00016002aa100a000ce022f0201020001000bd38e18691cb417001600ce00774513147bce01b014402b050300040300000000000000000000000000000000000000000000000000000000000000000200020002001403010200ad188000e2aac1174876e80001aaa31a3b5062a1147e3559b7fcb53ab81ac66522b83e13ac0ec1738cf7ad0a43e97914770002aa2b00c7436014a228d1aac67b64daf32f482052c2186c0efc78d9784ef0a19401c463d9bafbc3883a7600551362cc76354454f639b640f9c898aa72cf097706ad51d8fbcb2fcb4b65e78100000000000000000000",
21172
- signature: "ba1361ee2f4aebad5dbe1d4d374c28e503575318a1d0d13e4b48c0a6877e4b8031749843b7c639d9b853594d181f48c0189510e9c247f33d3d90abde01a7fb03",
21463
+ txId: "6092ef0766df50555de8d5a45d4aa4ae04dcec7f70d07f28b94de70226ad3940",
21464
+ unsignedTx: "000101010103000000081500551362cc76354454f639b640f9c898aa72cf097706ad51d8fbcb2fcb4b65e78113c4016345785d8a0000a21441d4060640ea40f84138417241ac41c60000030901409216020c3013415e7b160016010c0d3687170316001601371704160316043616031604314c020d4a010c36170516050c2f4c04160416022d02160216053313415f7b160016011602871706160516061604334c020d4a010c361705160416063617040c1602361602381707160216072d1702160416072d17040c16073616072d0d351707160416051607373917040f1602370e3a170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e160216083736371708160416083702010000000103d3f10c9d97ce020201000003014020d3223281b2ce040c3313167b5617001600ce033413177b1600ce032b1701ce0217021601ce04314c0516021601ce04000017021602a0002b0201020102011fd30e00e856b417011601ce0077457a4b04181601ce014513147b160000023213157bce011600a8a00016002aa100a000ce022f0201020004021ed34a517d1bb417001600ce00774513147b00021701ce02a0002b1702160216012b170316030c334c04ce00771603a8160116030201020001000bd38e18691cb417001600ce00774513147bce01b014402b050300040300000000000000000000000000000000000000000000000000000000000000000200020002001403010200ad188000e322c1174876e80002aaa31a3b2e509dbe5452737e606a53b6de3e3523d31c6ee1097208b05716b032775942b50002aa2b00c7436014a228d1aac67b64daf32f482052c2186c0efc78d9784ef0a194aaa31a3b439fdabf9a91b3c44dfa4a775ff16f4d5bc1a2b0df5e8a7ad4e44e9ec754d8530301c4d9e54c44a8bb0ec200551362cc76354454f639b640f9c898aa72cf097706ad51d8fbcb2fcb4b65e78100000000000000000000",
21465
+ signature: "a10bac9690aa875a4ff59b5266d2b49a520cb4726824937dcc335207203ca93774849a8a25118704453c39ca9faddca248275cc2a2a200dfaac7e5a92be0a62d",
21173
21466
  gasPrice: "100000000000",
21174
- gasAmount: 58026,
21175
- blockHash: "0000005cfe48f0844e82228b25567d14e12b8889eae8152045758c3e8acaea30",
21176
- codeHash: "cdc7cec3c418bb3e4f7f43d28a151fbe950e6429ff56c060c04d0f207cd4e5a4",
21467
+ gasAmount: 58146,
21468
+ blockHash: "000000c4a4967f816913128d3a3636d856c782fdb39fd413deda8c84fb371bc0",
21469
+ codeHash: "bf0deb5e0257226e4e274b21854a298663f2bad7a3b2d38b134f5e1642103a46",
21177
21470
  contractInstance: {
21178
- address: "211Z8st6gChA7GMXboHH2jepvGhyksnDUQ7nkzgZrcTeo",
21179
- contractId: "5dea2d84f611879bf5d9486bd6b0f7e590f0b6cdbf50fb8062ea94a70fef8d00",
21471
+ address: "21USNdUoQk4cRgR6ohyyA1LWdV1Tu3WpMQgmbXfxWZddR",
21472
+ contractId: "64cd367b37ac800192270f9b8456e9a4678e71a0991719d366cdd282e643bd00",
21180
21473
  groupIndex: 0
21181
21474
  }
21182
21475
  },
21183
21476
  XAlphToken: {
21184
- txId: "d0efd4c2375b501ac8d69612d633f6ab87e2d06be74942be768d7f425f6c0390",
21185
- unsignedTx: "000101010103000000091500551362cc76354454f639b640f9c898aa72cf097706ad51d8fbcb2fcb4b65e78113c4016345785d8a0000a214437e091109121b40244051407a40ac40ca411741474165417341a6427842b242d4435d010000000102ce0002010000000102ce0102010000000102ce0202010000000102a00002010002040115d3cee9319416011600000a311342277b160113202c170216001602160213202a62170316037102010002030114d33cd5e72916004313202e0c2f1342267b16004313202d1702160016010c1602000802010002030119d32cabd28216004313202e0c2f1342267b160016010005170216020b244c031600024a05160016023d00090201000202010ed31bc25d3416004313202e0c2f1342267b160016016b44020000040601402a16021603344c020b02160216032a0e2d17041600160400041705160516012f4c0316043f0216051601314c091600160116040d2a16030008024a061600160116021604000802010002030118d34b2e25b716011600000a311342277b160113202c170216000c1602621600160213202a16004362440201000101010ed30041471116004313202e0c2f1342267b16004313202d02010000000103d3676c3c3314000201010102001bd3d63c543cb41701160148130a7b16000c33130e7b1601b11600ab16011600a9a00016002aa10005160116005f01010106014069d33538a49fb41701160148130a7bce050c33130c7b16000c33130e7ba0010d2aa101140a5f5f6d61705f5f305f5f16014744cbc54c1d0c0d0d140a5f5f6d61705f5f305f5f16014744cb010117021602000ace0431130b7b1602a00100070c0e0c140a5f5f6d61705f5f305f5f16014744cb01024a09ca140a5f5f6d61705f5f305f5f16014744b1a0016bd201011601b11600acb11601160056ce051305640c13016417041703b21600a2160147a0014044ce0316031604c11705a00016002ba10006160116005f160502010001010115d38072397d140a5f5f6d61705f5f305f5f16004744cbc5194c021400020c0d0d140a5f5f6d61705f5f305f5f16004744cb010102010002030111d3fd3d3af616004716014044cb17021602c5130d7b0c0d160201020201000206004040d38bb32147b4170216024716004044cb170316010c33130e7b16010d0d16030103170416044c40290c0d0d140a5f5f6d61705f5f305f5f16024744cb01011600000617051605430c2f4c0a16020d0c140a5f5f6d61705f5f305f5f16024744cb01034a0a16050c0e0c140a5f5f6d61705f5f305f5f16024744cb01020c0c1603010414404a07030558414c5048030b5374616b656420414c504802120340205dea2d84f611879bf5d9486bd6b0f7e590f0b6cdbf50fb8062ea94a70fef8d00021002c09a7ec8000306414c504800011405020200020013c8033b2e3c9fd0803ce8000000ae188000e6ddc1174876e80001aaa31a3b25ad7129900a12a0855ce79fec7338a1c60ae9d9bce40de14794cae54f8bca3d0002aa2b00c7436014a228d1aac67b64daf32f482052c2186c0efc78d9784ef0a19401c45c8013d8c10e0a7600551362cc76354454f639b640f9c898aa72cf097706ad51d8fbcb2fcb4b65e78100000000000000000000",
21186
- signature: "3407dc308b6427d361e73fbbc7313060afdf88f8c1a4571986176bbf3831e2b60cd78d2e3384e40cfa54ff86d32bdcbf9a8929515bcb40f9af20d1efb1faa210",
21477
+ txId: "bb061c722e67999888f9da215ee5d11ac296254c1931c9a2f10d88a996fef877",
21478
+ unsignedTx: "000101010103000000091500551362cc76354454f639b640f9c898aa72cf097706ad51d8fbcb2fcb4b65e78113c4016345785d8a0000a21445bc0a1509121b40244051407a40ac40ca4117414741654173425d426b42c643b243e0441a443c44c54593010000000102ce0002010000000102ce0102010000000102ce0202010000000102a00102010002040115d3cee9319416011600000a311342277b160113202c170216001602160213202a62170316037102010002030114d33cd5e72916004313202e0c2f1342267b16004313202d1702160016010c1602000802010002030119d32cabd28216004313202e0c2f1342267b160016010005170216020b244c031600024a05160016023d00090201000202010ed31bc25d3416004313202e0c2f1342267b160016016b44020000040601402a16021603344c020b02160216032a0e2d17041600160400041705160516012f4c0316043f0216051601314c091600160116040d2a16030008024a061600160116021604000802010002030118d34b2e25b716011600000a311342277b160113202c170216000c1602621600160213202a16004362440201000101010ed30041471116004313202e0c2f1342267b16004313202d02010000000103d3676c3c331400020000030901409216020c3013415e7b160016010c0d3687170316001601371704160316043616031604314c020d4a010c36170516050c2f4c04160416022d02160216053313415f7b160016011602871706160516061604334c020d4a010c361705160416063617040c1602361602381707160216072d1702160416072d17040c16073616072d0d351707160416051607373917040f1602370e3a170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e160216083736371708160416083702010000000103d38719c92ea0000201010103014032d38bbc9beeb41701160148130a7b16000c33130e7ba0010c2f4c0216004a041600a001a000000c170216020c33130f7b1601b11602ab16011600a9a00016002aa100a00116022aa101051601160016026016020201010107014078d33538a49fb41701160148130a7bce050c33130c7b16000c33130e7b1600a000a001000c170216020c3313107ba0020d2aa102140a5f5f6d61705f5f305f5f16014744cbc54c1d0c0d0d140a5f5f6d61705f5f305f5f16014744cb010117031603000ace0431130b7b1603a00200070c0e0c140a5f5f6d61705f5f305f5f16014744cb01024a09ca140a5f5f6d61705f5f305f5f16014744b1a0026bd201011601b11600acb11601160256ce051305640c13016417051704b21602a2160147a0024044ce0316041605c11706a00016022ba100a00116002ba1010616011600160260160602010701020018d3fe1110a1b4170116000c33130e7ba0010c3313117b16011600a9a00016002aa10008160116005f010001010115d38072397d140a5f5f6d61705f5f305f5f16004744cbc5194c021400020c0d0d140a5f5f6d61705f5f305f5f16004744cb010102010002030111d3fd3d3af616004716014044cb17021602c5130d7b0c0d160201020201000206004040d38bb32147b4170216024716004044cb170316010c33130e7b16010d0d16030103170416044c40290c0d0d140a5f5f6d61705f5f305f5f16024744cb01011600000617051605430c2f4c0a16020d0c140a5f5f6d61705f5f305f5f16024744cb01034a0a16050c0e0c140a5f5f6d61705f5f305f5f16024744cb01020c0c160301050102010701406bd30bdc6a97b41701160148130a7b16014716004044cb17021602c5130d7b0c0e16020104170417030c0c160201050c170516040c334c1ca0010c2f4c0216044a041604a001a000000c170516050c33130f7b1601b11605aba00016042aa100a00116052aa1010c0d0d140a5f5f6d61705f5f305f5f16014744cb01011600000617061606430c2f4c0a16010d0c140a5f5f6d61705f5f305f5f16014744cb01034a0a16060c0e0c140a5f5f6d61705f5f305f5f16014744cb01020716011605160316046116050214404a07030558414c5048030b5374616b656420414c5048021203402064cd367b37ac800192270f9b8456e9a4678e71a0991719d366cdd282e643bd00021002c09a7ec8000306414c5048000114070302000200020013c8033b2e3c9fd0803ce8000000ae188000eb7bc1174876e80001aaa31a3b4201332436427317efe44f863da85164ba97602993ee22dc809e2cbe2d2b89c30002aa2b00c7436014a228d1aac67b64daf32f482052c2186c0efc78d9784ef0a19401c4d86c9c17531796c200551362cc76354454f639b640f9c898aa72cf097706ad51d8fbcb2fcb4b65e78100000000000000000000",
21479
+ signature: "831475506c2ba54d79fa311500147382f0ac1d9f0c8ca442236570a5cd587f5e73667766699f59ca2c6614ceb3b1b44c26373c2d0a8277b9ce93b311cd123b2f",
21187
21480
  gasPrice: "100000000000",
21188
- gasAmount: 59101,
21189
- blockHash: "000000aff89ba10a3749c17a394741b90c7d076db81300a3b5db4d589c9deed0",
21190
- codeHash: "19e6ebe6ce7c8a3e338d3fd9696fb8dbe965893904c9ff5cd99116109ce56273",
21481
+ gasAmount: 60283,
21482
+ blockHash: "0000003e3a3e4e8274cb90a34935486537776251d8b8d93104d713b743dc5f60",
21483
+ codeHash: "f4039c38cfc0b31b9c3fe50b345838ae08bf551bebb7c99f3f1acc78066f21dd",
21191
21484
  contractInstance: {
21192
- address: "2BnHxjxAaPgkpHQrU7DzrwHnpR7f8FNrk18HqkMKjB5xB",
21193
- contractId: "fdf5067af438da490b166c913768a646fd34c3891957b350cbf87820ae77ad00",
21485
+ address: "24xXXkWiAiV1oX7jAauDTYmoPzcWuDjPiA7QU9MPo4QWT",
21486
+ contractId: "98925e1a2a1693d0641670148a6f174dbc766ed9387d90b291882db92edc2a00",
21194
21487
  groupIndex: 0
21195
21488
  },
21196
21489
  issueTokenAmount: "1000000000000000000000000000"
@@ -21224,16 +21517,16 @@ var deployments_testnet_default3 = {
21224
21517
  }
21225
21518
  },
21226
21519
  XAlphStakeVault: {
21227
- txId: "4d65707e5baf56d589f3c3941677cdba98b4fa4745d7f1f025b71a89fbcc4817",
21228
- unsignedTx: "000101010103000000081500551362cc76354454f639b640f9c898aa72cf097706ad51d8fbcb2fcb4b65e78113c4016345785d8a0000a21445d705174028407340af40cc40fc411a41284136414f41a341c341cd41db42234241431043f0448b451145604577458e45a7010002030112d3545eacd4160116000005311342277b160113202c170216001602160213202a620201000204014028d3083a358916004313202e0c2f1342267b16014313202f1342287b1600000517020c170316031602314c0e1600160300001601414c0316033f0216030d2a17034a2e0b0201000203011fd3694941c216004313202e0c2f1342267b16014313202f1342287b160016010001170216020b244c031600024a05160016023d00040201000202010dd354ad273416004313202e0c2f1342267b160016014402010002030118d34b2e25b7160116000005311342277b160113202c170216000c1602621600160213202a16004362440201000101010ed30041471116004313202e0c2f1342267b16004313202d02010000000103d3676c3c33140002010000000103d393f264e8a0000200000101000c16004313202f136afb7b1600a10005a000b45f0000020601402e16014313202f136afa7b160117021600431703160313202e0c2f136af97b0c170416041603314c1016001604160413202a62170516051602000a1702160413202a17044a2c160271a000712f02000002020110160071160171314c051600160144000b4a041601160044000b0200000101010316004f02010000000103d3b299f80ace000201000102021ed3f87904e4140a5f5f6d61705f5f305f5f16004744cbc5194c040c0006024a110c0d0d140a5f5f6d61705f5f305f5f16004744cb1701160101010d0d0d1601010102010001010108d32b875d11140a5f5f6d61705f5f305f5f16004744cbc5020101010800405fd3d63c543cb4170116014813412d7b16000c331341307b1601ce001600ac140a5f5f6d61705f5f305f5f16014744cbc54c40370c0d0d140a5f5f6d61705f5f305f5f16014744cb1707160701010d0d0d1607010117031702160216002a0c0e0c140a5f5f6d61705f5f305f5f16014744cb01021603000517040c170516051604314c0f1603160500001706160116000e0c1606d4926b380b16050d2a17054a2d4a09ca140a5f5f6d61705f5f305f5f16014744b116000006d20102a00116002aa10106160116005f0102010900406bd310bd129fb4170116014813412d7b140a5f5f6d61705f5f305f5f16014744cbc513412e7b16000c331341317b0c0d0d140a5f5f6d61705f5f305f5f16014744cb1708160801010d0d0d1608010117031702160216003413412f7b160216002b17041603000517050c170616061605314c0f1603160600001707160116000e0c1607d465b06cae16060d2a17064a2d16040c2f4c0aca0d0c140a5f5f6d61705f5f305f5f16014744cb01034a0a16040c0e0c140a5f5f6d61705f5f305f5f16014744cb01021601ce001600aba00116002ba10107160116005f01000206004045d3c5f91cb4b4170216024813412d7b1601160000161341357b140a5f5f6d61705f5f305f5f16024744cbc513412e7b0c0d0d140a5f5f6d61705f5f305f5f16024744cb1705160501010d0d0d160501011704170316040005ce01311341327b1604160000010b241341337b160216030e0c1600d4926b380b1604160000030d0e0c140a5f5f6d61705f5f305f5f16024744cb01020100010500403ad3b6398887b4170116014813412d7b140a5f5f6d61705f5f305f5f16014744cbc513412e7b0c0d0d140a5f5f6d61705f5f305f5f16014744cb1704160401010d0d0d16040101170317021603160000010b251341347b160116020e0c1600d465b06cae1603160000020d0e0c140a5f5f6d61705f5f305f5f16014744cb010201000101011fd3e5725392140a5f5f6d61705f5f305f5f16004744cbc5197a4b0418a0010c2f4c020c020c0d0d140a5f5f6d61705f5f305f5f16004744cb010113c40de0b6b3a76400002ca0012d02010001010008d3e5bf78dcb4a0024513412c7b16000008010001010008d34f58efe6b4a0024513412c7b1600a102010002030109d3af1ed9dd1601b9170216001602000b00090214402602034020fdf5067af438da490b166c913768a646fd34c3891957b350cbf87820ae77ad00020a144048030340209d203f022693e95c512474ee9d788706c567247b6862b802b90355fcc46784a202000400551362cc76354454f639b640f9c898aa72cf097706ad51d8fbcb2fcb4b65e781ad188000eb69c1174876e80002aaa31a3b2cd52d7ce3a8ce5d59e5ae88e7d11cef7b8c31d3f74d55051412367f6bc1e92a0002aa2b00c7436014a228d1aac67b64daf32f482052c2186c0efc78d9784ef0a194aaa31a3b9cf7d98fff4154d2fdf629284fa96e8275b040537070a04446ee303b8d6c50ba0301c4891ecbb280614adc00551362cc76354454f639b640f9c898aa72cf097706ad51d8fbcb2fcb4b65e78100000000000000000000",
21229
- signature: "f02c9f5d77b79b5c2af9558180381295d3d8a0598cf8e909d1f582606a6b9469243af28fb1570c72550fce5733c28f58b11f022fbbeff64a12f628669fc4afcc",
21520
+ txId: "69d5cdd9527fe3a6a0e5e9f803ad7d57d4e8b2c7b5be64c6b5a7abfb72b719d4",
21521
+ unsignedTx: "000101010103000000081500551362cc76354454f639b640f9c898aa72cf097706ad51d8fbcb2fcb4b65e78113c4016345785d8a0000a21445d705174028407340af40cc40fc411a41284136414f41a341c341cd41db42234241431043f0448b451145604577458e45a7010002030112d3545eacd4160116000005311342277b160113202c170216001602160213202a620201000204014028d3083a358916004313202e0c2f1342267b16014313202f1342287b1600000517020c170316031602314c0e1600160300001601414c0316033f0216030d2a17034a2e0b0201000203011fd3694941c216004313202e0c2f1342267b16014313202f1342287b160016010001170216020b244c031600024a05160016023d00040201000202010dd354ad273416004313202e0c2f1342267b160016014402010002030118d34b2e25b7160116000005311342277b160113202c170216000c1602621600160213202a16004362440201000101010ed30041471116004313202e0c2f1342267b16004313202d02010000000103d3676c3c33140002010000000103d393f264e8a0000200000101000c16004313202f136afb7b1600a10005a000b45f0000020601402e16014313202f136afa7b160117021600431703160313202e0c2f136af97b0c170416041603314c1016001604160413202a62170516051602000a1702160413202a17044a2c160271a000712f02000002020110160071160171314c051600160144000b4a041601160044000b0200000101010316004f02010000000103d3b299f80ace000201000102021ed3f87904e4140a5f5f6d61705f5f305f5f16004744cbc5194c040c0006024a110c0d0d140a5f5f6d61705f5f305f5f16004744cb1701160101010d0d0d1601010102010001010108d32b875d11140a5f5f6d61705f5f305f5f16004744cbc5020101010800405fd3d63c543cb4170116014813412d7b16000c331341307b1601ce001600ac140a5f5f6d61705f5f305f5f16014744cbc54c40370c0d0d140a5f5f6d61705f5f305f5f16014744cb1707160701010d0d0d1607010117031702160216002a0c0e0c140a5f5f6d61705f5f305f5f16014744cb01021603000517040c170516051604314c0f1603160500001706160116000e0c1606d4926b380b16050d2a17054a2d4a09ca140a5f5f6d61705f5f305f5f16014744b116000006d20102a00116002aa10106160116005f0102010900406bd310bd129fb4170116014813412d7b140a5f5f6d61705f5f305f5f16014744cbc513412e7b16000c331341317b0c0d0d140a5f5f6d61705f5f305f5f16014744cb1708160801010d0d0d1608010117031702160216003413412f7b160216002b17041603000517050c170616061605314c0f1603160600001707160116000e0c1607d465b06cae16060d2a17064a2d16040c2f4c0aca0d0c140a5f5f6d61705f5f305f5f16014744cb01034a0a16040c0e0c140a5f5f6d61705f5f305f5f16014744cb01021601ce001600aba00116002ba10107160116005f01000206004045d3c5f91cb4b4170216024813412d7b1601160000161341357b140a5f5f6d61705f5f305f5f16024744cbc513412e7b0c0d0d140a5f5f6d61705f5f305f5f16024744cb1705160501010d0d0d160501011704170316040005ce01311341327b1604160000010b241341337b160216030e0c1600d4926b380b1604160000030d0e0c140a5f5f6d61705f5f305f5f16024744cb01020100010500403ad3b6398887b4170116014813412d7b140a5f5f6d61705f5f305f5f16014744cbc513412e7b0c0d0d140a5f5f6d61705f5f305f5f16014744cb1704160401010d0d0d16040101170317021603160000010b251341347b160116020e0c1600d465b06cae1603160000020d0e0c140a5f5f6d61705f5f305f5f16014744cb010201000101011fd3e5725392140a5f5f6d61705f5f305f5f16004744cbc5197a4b0418a0010c2f4c020c020c0d0d140a5f5f6d61705f5f305f5f16004744cb010113c40de0b6b3a76400002ca0012d02010001010008d3e5bf78dcb4a0024513412c7b16000008010001010008d34f58efe6b4a0024513412c7b1600a102010002030109d3af1ed9dd1601b9170216001602000b0009021440260203402098925e1a2a1693d0641670148a6f174dbc766ed9387d90b291882db92edc2a00020a144048030340209d203f022693e95c512474ee9d788706c567247b6862b802b90355fcc46784a202000400551362cc76354454f639b640f9c898aa72cf097706ad51d8fbcb2fcb4b65e781ad188000eb69c1174876e80001aaa31a3bfd4455fce1dbd299d3ab30e6eb6b2e0e922374fb64ef989412d416efba15e76b0002aa2b00c7436014a228d1aac67b64daf32f482052c2186c0efc78d9784ef0a19401c5011415977ed688d80000551362cc76354454f639b640f9c898aa72cf097706ad51d8fbcb2fcb4b65e78100000000000000000000",
21522
+ signature: "cb73ee8805c844e056151417c2eabd0d5a0f0742131fd0da8b96d71041dc8f006255765cf93f088e75f0c58e80c310d5210522fc7d549bf9a32fd19aab2e1982",
21230
21523
  gasPrice: "100000000000",
21231
21524
  gasAmount: 60265,
21232
- blockHash: "000000064709ddf4dcb27cd606ae682caa4e05b25e0da635e8b3440bd5dcbfb0",
21233
- codeHash: "16a37508b26e9522baf304b39ed18846da97112687dd13aa560c6c18cae39e6e",
21525
+ blockHash: "000000cdeb7bcef5505bbc372de05bbfd724e97b576b4a63be867b6d511a9d30",
21526
+ codeHash: "2e4bbab6b2a7948e9a926b50550a3ddffb0ae44a414082d4d5f7f161ff4b92d0",
21234
21527
  contractInstance: {
21235
- address: "2AAtQ91a2kFv2xLEdaU9DSR7QJJSFuHX7SRKVy3wuGWTq",
21236
- contractId: "e6075e494aa5a1fd2a59aec971d165b2913eac6c20dbb852c2a39cf9842dd300",
21528
+ address: "uEsgEN1ByDoFLSkxERDuQ3juaB2Lq6nHRHQHEhUuycpF",
21529
+ contractId: "082d9216ce6cd58e29f34150121f4a3931dddb16109c2301e69a08cecb4a6700",
21237
21530
  groupIndex: 0
21238
21531
  }
21239
21532
  }
@@ -21247,72 +21540,73 @@ var deployments_devnet_default3 = {
21247
21540
  deployerAddress: "1DrDyTr9RpRsQnDnXo2YRiPzPW4ooHX5LLoqXrqfMrpQH",
21248
21541
  contracts: {
21249
21542
  AlphUnstakeVault: {
21250
- txId: "5d1b4e3d691a02df4b53a9992c2e9a96b4e392a5c0889de02688a293bd99c785",
21251
- unsignedTx: "000401010103000000081500bee85f379545a2ed9f6cceb331288842f378cf0f04012ad4ac8824aae7d6f80a13c4016345785d8a0000a2144198060540ea40f841384172418c0000030901409216020c3013415e7b160016010c0d3687170316001601371704160316043616031604314c020d4a010c36170516050c2f4c04160416022d02160216053313415f7b160016011602871706160516061604334c020d4a010c361705160416063617040c1602361602381707160216072d1702160416072d17040c16073616072d0d351707160416051607373917040f1602370e3a170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e160216083736371708160416083702010000000103d3f10c9d97ce020201000003014020d3223281b2ce040c3313167b5617001600ce033413177b1600ce032b1701ce0217021601ce04314c0516021601ce04000017021602a0002b0201020102011fd30e00e856b417011601ce0077457a4b04181601ce014513147b160000023213157bce011600a8a00016002aa100a000ce022f0201020001000bd38e18691cb417001600ce00774513147bce01b014402b050300040300000000000000000000000000000000000000000000000000000000000000000200020002001403010200ad188000e2aac1174876e8000137a4444713f113d86f559e1e84171b1a3b40f6218d5ab90700dd8c5e85f2e7123833e11e000381818e63bd9e35a5489b52a430accefc608fd60aa2c7c0d1b393b5239aedf6b001c6b85ed9214f8f1f1e900000bee85f379545a2ed9f6cceb331288842f378cf0f04012ad4ac8824aae7d6f80a00000000000000000000",
21252
- signature: "ca5285b7a549134e7968b69fb733d376b923a5eca2fd41bf0e4eb75cb0244dd3345016ddd9b8397c585b875307959909caf109849924679976dbde317fc7be9c",
21543
+ txId: "16a8a22c51be10366482156b0636d60e4c25f65aa9a106ed1ba60e66a6314cd4",
21544
+ unsignedTx: "000401010103000000081500bee85f379545a2ed9f6cceb331288842f378cf0f04012ad4ac8824aae7d6f80a13c4016345785d8a0000a21441c1060640ea40f841384172419941b30000030901409216020c3013415e7b160016010c0d3687170316001601371704160316043616031604314c020d4a010c36170516050c2f4c04160416022d02160216053313415f7b160016011602871706160516061604334c020d4a010c361705160416063617040c1602361602381707160216072d1702160416072d17040c16073616072d0d351707160416051607373917040f1602370e3a170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e160216083736371708160416083702010000000103d3f10c9d97ce020201000003014020d3223281b2ce040c3313167b5617001600ce033413177b1600ce032b1701ce0217021601ce04314c0516021601ce04000017021602a0002b0201020102011fd30e00e856b417011601ce0077457a4b04181601ce014513147b160000023213157bce011600a8a00016002aa100a000ce022f02010200020113d32bc3cebdb417001600ce00774513147bce02a0002b1701ce00771601a816010201020001000bd38e18691cb417001600ce00774513147bce01b014402b050300040300000000000000000000000000000000000000000000000000000000000000000200020002001403010200ad188000e2fcc1174876e8000137a44447b2131bc1d38995e2b3de8e50d1b8604ecfaaba267d3c183741c7febafbae43f6000381818e63bd9e35a5489b52a430accefc608fd60aa2c7c0d1b393b5239aedf6b001c751b028106515834bac980000bee85f379545a2ed9f6cceb331288842f378cf0f04012ad4ac8824aae7d6f80a00000000000000000000",
21545
+ signature: "4c69d8455a2fac528ee94beff73f2490dd2d9f1fc04a505d3e4f00c1777c093c518daebf52fbe6cc0012b36daafda466d8c46735457e038a80cac4f23aa01c12",
21253
21546
  gasPrice: "100000000000",
21254
- gasAmount: 58026,
21255
- blockHash: "0474d8bb002ba67ad14daeb77399431db2038a5a40640055ca47ebecfde690e0",
21256
- codeHash: "cdc7cec3c418bb3e4f7f43d28a151fbe950e6429ff56c060c04d0f207cd4e5a4",
21547
+ gasAmount: 58108,
21548
+ blockHash: "013189d6fc7f7fc93a7005a6226aff299792d750b318fb03bd5acf8a6ce83990",
21549
+ codeHash: "1a32644728103165e4acccf7237073aaf50bd355dd1475663e518795352177cd",
21257
21550
  contractInstance: {
21258
- address: "vVaqDXgWSb21kJjJRbdvB9VtaVR1QzhmEbE9vYjpijdR",
21259
- contractId: "1acdec45831016d1cbc02a86046186189874216703d81af9d17d80a6a08e4b00",
21551
+ address: "2Bu1aZPaD7wbEjuABPH9SmoUU76rFGZgRwpBBVeoN8FtK",
21552
+ contractId: "ffad913961ec8994fbdf4b6eeba50f9413cfb99db652dd50ed40ebd8fc149700",
21260
21553
  groupIndex: 0
21261
21554
  }
21262
21555
  },
21263
21556
  XAlphToken: {
21264
- txId: "419f046f3dde9f00d62a885727c0ea6c33c3637556f97172900ecf3b5ca043a2",
21265
- unsignedTx: "000401010103000000081500bee85f379545a2ed9f6cceb331288842f378cf0f04012ad4ac8824aae7d6f80a13c4016345785d8a0000a21443b0091109121b40244051407a40ac40ca411741474165417341a6429142cb42ed438f010000000102ce0002010000000102ce0102010000000102ce0202010000000102a00002010002040115d3cee9319416011600000a311342277b160113202c170216001602160213202a62170316037102010002030114d33cd5e72916004313202e0c2f1342267b16004313202d1702160016010c1602000802010002030119d32cabd28216004313202e0c2f1342267b160016010005170216020b244c031600024a05160016023d00090201000202010ed31bc25d3416004313202e0c2f1342267b160016016b44020000040601402a16021603344c020b02160216032a0e2d17041600160400041705160516012f4c0316043f0216051601314c091600160116040d2a16030008024a061600160116021604000802010002030118d34b2e25b716011600000a311342277b160113202c170216000c1602621600160213202a16004362440201000101010ed30041471116004313202e0c2f1342267b16004313202d02010000000103d3676c3c3314000201010102001bd3d63c543cb41701160148130a7b16000c33130e7b1601b11600ab16011600a9a00016002aa10005160116005f0101010601406bd33538a49fb41701160148130a7bce050c33130c7b16000c33130e7ba0010d2aa101140a5f5f6d61705f5f305f5f16014744cbc54c1d0c0d0d140a5f5f6d61705f5f305f5f16014744cb010117021602000ace0431130b7b1602a00100070c0e0c140a5f5f6d61705f5f305f5f16014744cb01024a0bca140a5f5f6d61705f5f305f5f160147447a7e0214696e73657274206174206d617020706174683a2000b1a0016bd201011601b11600acb11601160056ce051305640c13016417041703b21600a2160147a0014044ce0316031604c11705a00016002ba10006160116005f160502010001010115d38072397d140a5f5f6d61705f5f305f5f16004744cbc5194c021400020c0d0d140a5f5f6d61705f5f305f5f16004744cb010102010002030111d3fd3d3af616004716014044cb17021602c5130d7b0c0d160201020201000206004042d38bb32147b4170216024716004044cb170316010c33130e7b16010d0d16030103170416044c402b0c0d0d140a5f5f6d61705f5f305f5f16024744cb01011600000617051605430c2f4c0c16020d0c140a5f5f6d61705f5f305f5f160247447a7e021472656d6f7665206174206d617020706174683a2000cb01034a0a16050c0e0c140a5f5f6d61705f5f305f5f16024744cb01020c0c1603010414404907030558414c5048030b5374616b656420414c504802120340201acdec45831016d1cbc02a86046186189874216703d81af9d17d80a6a08e4b000210028000ea600306414c5048000114050202000200ad188000e730c1174876e8000137a444477f7b4b7130c2284dcf645bc7c3a02145dad57a952c8c6403f3e039829a626c6d000381818e63bd9e35a5489b52a430accefc608fd60aa2c7c0d1b393b5239aedf6b001c6b85ed7a90355dff1100000bee85f379545a2ed9f6cceb331288842f378cf0f04012ad4ac8824aae7d6f80a00000000000000000000",
21266
- signature: "8de92f39d121f6572f78a302127d8853d03932a154b65fef58a1e45e6ae595c7297f7e2f50c940de534b12f149f79e32d74c0636190cab6f9b8cee6aa6407498",
21557
+ txId: "f1d8fcbb9d468ee06533d083554d49f5c99f0b41a68134ff2e36cc881d66436f",
21558
+ unsignedTx: "000401010103000000091500bee85f379545a2ed9f6cceb331288842f378cf0f04012ad4ac8824aae7d6f80a13c4016345785d8a0000a21445fa0a1509121b40244051407a40ac40ca4117414741654173425d426b42c643cb43f94433445544f745d1010000000102ce0002010000000102ce0102010000000102ce0202010000000102a00102010002040115d3cee9319416011600000a311342277b160113202c170216001602160213202a62170316037102010002030114d33cd5e72916004313202e0c2f1342267b16004313202d1702160016010c1602000802010002030119d32cabd28216004313202e0c2f1342267b160016010005170216020b244c031600024a05160016023d00090201000202010ed31bc25d3416004313202e0c2f1342267b160016016b44020000040601402a16021603344c020b02160216032a0e2d17041600160400041705160516012f4c0316043f0216051601314c091600160116040d2a16030008024a061600160116021604000802010002030118d34b2e25b716011600000a311342277b160113202c170216000c1602621600160213202a16004362440201000101010ed30041471116004313202e0c2f1342267b16004313202d02010000000103d3676c3c331400020000030901409216020c3013415e7b160016010c0d3687170316001601371704160316043616031604314c020d4a010c36170516050c2f4c04160416022d02160216053313415f7b160016011602871706160516061604334c020d4a010c361705160416063617040c1602361602381707160216072d1702160416072d17040c16073616072d0d351707160416051607373917040f1602370e3a170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e160216083736371708160416083702010000000103d38719c92ea0000201010103014032d38bbc9beeb41701160148130a7b16000c33130e7ba0010c2f4c0216004a041600a001a000000c170216020c33130f7b1601b11602ab16011600a9a00016002aa100a00116022aa10105160116001602601602020101010701407ad33538a49fb41701160148130a7bce050c33130c7b16000c33130e7b1600a000a001000c170216020c3313107ba0020d2aa102140a5f5f6d61705f5f305f5f16014744cbc54c1d0c0d0d140a5f5f6d61705f5f305f5f16014744cb010117031603000ace0431130b7b1603a00200070c0e0c140a5f5f6d61705f5f305f5f16014744cb01024a0bca140a5f5f6d61705f5f305f5f160147447a7e0214696e73657274206174206d617020706174683a2000b1a0026bd201011601b11600acb11601160256ce051305640c13016417051704b21602a2160147a0024044ce0316041605c11706a00016022ba100a00116002ba1010616011600160260160602010701020018d3fe1110a1b4170116000c33130e7ba0010c3313117b16011600a9a00016002aa10008160116005f010001010115d38072397d140a5f5f6d61705f5f305f5f16004744cbc5194c021400020c0d0d140a5f5f6d61705f5f305f5f16004744cb010102010002030111d3fd3d3af616004716014044cb17021602c5130d7b0c0d160201020201000206004042d38bb32147b4170216024716004044cb170316010c33130e7b16010d0d16030103170416044c402b0c0d0d140a5f5f6d61705f5f305f5f16024744cb01011600000617051605430c2f4c0c16020d0c140a5f5f6d61705f5f305f5f160247447a7e021472656d6f7665206174206d617020706174683a2000cb01034a0a16050c0e0c140a5f5f6d61705f5f305f5f16024744cb01020c0c1603010501020106014065d30bdc6a97b41701160148130a7b16014716004044cb17021602c5130d7b0c0d1602010417030c0c16020105a0010c2f4c0216034a041603a001a000000c170416040c33130f7b1601b11604aba00016032aa100a00116042aa1010c0d0d140a5f5f6d61705f5f305f5f16014744cb01011600000617051605430c2f4c0c16010d0c140a5f5f6d61705f5f305f5f160147447a7e021472656d6f7665206174206d617020706174683a2000cb01034a0a16050c0e0c140a5f5f6d61705f5f305f5f16014744cb0102071601160416036016040214404907030558414c5048030b5374616b656420414c50480212034020ffad913961ec8994fbdf4b6eeba50f9413cfb99db652dd50ed40ebd8fc1497000210028000ea600306414c5048000114070302000200020013c8033b2e3c9fd0803ce8000000ae188000ebf6c1174876e8000137a44447137e9bd694f4f19c1398b57ff0f1a8838452fffa4b1629ea24f3c6e83b38b5dc000381818e63bd9e35a5489b52a430accefc608fd60aa2c7c0d1b393b5239aedf6b001c751b0280eec5a2624e7a80000bee85f379545a2ed9f6cceb331288842f378cf0f04012ad4ac8824aae7d6f80a00000000000000000000",
21559
+ signature: "c462d4ca9f4ab6c1c0d37bb4f34b6f02deae0f7f81f93ac1f76a0f083dd8dabc309f1a077d34323a00a60f1ce679ec6af1ac01fcec313c71715477da7ca7f4a5",
21267
21560
  gasPrice: "100000000000",
21268
- gasAmount: 59184,
21269
- blockHash: "0a45f073ea3b7a3e43dda2bcc30dc82db263469bae16d49433850e7b618dfc00",
21270
- codeHash: "ff82445fd49b9aa5904a68c1aad286b3fedb9b314d840ff35f687c78fb52201d",
21561
+ gasAmount: 60406,
21562
+ blockHash: "00fb06e284202d908de8943e86d3c98bb2673ee501d54974ddf4581266ccf0f0",
21563
+ codeHash: "c97645db943c8c70c4e5fd49e6060446d9f66183f077204d107c52bc471342c4",
21271
21564
  contractInstance: {
21272
- address: "u8vQcnnKuncdvooyN4EDU7fXFRNkdMKNFVF8QU1qBQzB",
21273
- contractId: "06a72c6ce8eb96c1d40fd6c2bfbc51e522cae9ec355d9c63ff6c8a8fcd119100",
21565
+ address: "uVBXGxD2rSb8dms1rf4dcGV2YxvK3B55nGw2DKH9uw6f",
21566
+ contractId: "0bd7e14c31b8979dcdc10da8eb346d9578b2decb983d2cd0d74c888215d84900",
21274
21567
  groupIndex: 0
21275
- }
21568
+ },
21569
+ issueTokenAmount: "1000000000000000000000000000"
21276
21570
  },
21277
- RewardSharingVault: {
21278
- txId: "bda7709b86eb33e62548d1f29361d5f96dd4887d840e46b62386312788d2206a",
21279
- unsignedTx: "000401010103000000081500bee85f379545a2ed9f6cceb331288842f378cf0f04012ad4ac8824aae7d6f80a13c4016345785d8a0000a2144360040740d04184426e42a942bb42f2435001000208004056d3926b380bb417021602ce00774513287b140a5f5f6d61705f5f305f5f16004744cbc54c40270c0d0d140a5f5f6d61705f5f305f5f16004744cb01011703160116032a16000d0ece00010d1707170616062f132b7b16000005160316012a0c0e0c140a5f5f6d61705f5f305f5f16004744cb01024a17160116000d0ece00010d1705170416042f132b7bca140a5f5f6d61705f5f305f5f160047447a7e0214696e73657274206174206d617020706174683a2000b11601a001d20102a00016012aa10005160016015f01000205004048d365b06caeb417021602ce00774513287b140a5f5f6d61705f5f305f5f16004744cbc513297b0c0d0d140a5f5f6d61705f5f305f5f16004744cb010117031601160332132c7b160316012b17041600000516040c2f4c0cca0d0c140a5f5f6d61705f5f305f5f160047447a7e021472656d6f7665206174206d617020706174683a2000cb01034a0a16040c0e0c140a5f5f6d61705f5f305f5f16004744cb0102a00016012ba10006160016015f0000030901409216020c3013415e7b160016010c0d3687170316001601371704160316043616031604314c020d4a010c36170516050c2f4c04160416022d02160216053313415f7b160016011602871706160516061604334c020d4a010c361705160416063617040c1602361602381707160216072d1702160416072d17040c16073616072d0d351707160416051607373917040f1602370e3a170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e160216083736371708160416083702010101030019d3fe1110a1a0000c33132a7bb417011601ce011600ac160013c40de0b6b3a7640000a00000021702a00116022aa10107160116005f010300010005d3a28b71d5b417001600000500020102001916000006170116010c334c081600ce011601ab08160016015fa0010d0e0c140a5f5f6d61705f5f305f5f16004744cb010201000105014024d31191a066140a5f5f6d61705f5f305f5f16004744cbc513297b0c0d0d140a5f5f6d61705f5f305f5f16004744cb1704160401010d0d0d1604010117021701a00116022b17031601160313c40de0b6b3a76400000002021405020300030014050202000200ad188000e5b5c1174876e8000137a44447d79d999377ba4b33e0b3ca20c672a9a2112f17d90d90ee6147824c53ae4fd760000381818e63bd9e35a5489b52a430accefc608fd60aa2c7c0d1b393b5239aedf6b001c6b85ed630d994e8cd080000bee85f379545a2ed9f6cceb331288842f378cf0f04012ad4ac8824aae7d6f80a00000000000000000000",
21280
- signature: "89222a8c53905b172735af31d1bb4020b4e33e3ebadf84e641c2feba28f512876a6ea700f10c986d7563da365227f1a97b91a2f003c0af0e8f57a3d1ded32dd3",
21571
+ GovernanceDemo: {
21572
+ txId: "9b023577c8c29ea26325571e701a805d622a8122a57ddb37b5e5f30acc6e650b",
21573
+ unsignedTx: "000401010103000000081500bee85f379545a2ed9f6cceb331288842f378cf0f04012ad4ac8824aae7d6f80a13c4016345785d8a0000a214440d090c40e241c942404262427642b742f142ff43cd43d843e343f30100020600405ad3926b380bb417021602ce00774513087b140a5f5f6d61705f5f305f5f16004744cbc54c403f0c0d0d140a5f5f6d61705f5f305f5f16004744cb1705160501010d0d0d1605010117041703000b7a4c041816030c304c180c0d0d140a5f5f6d61705f5f315f5f16034044cb010116012a0c0e0c140a5f5f6d61705f5f315f5f16034044cb0102a00016012aa100160416012a0d0e0c140a5f5f6d61705f5f305f5f16004744cb01024a0bca140a5f5f6d61705f5f305f5f160047447a7e0214696e73657274206174206d617020706174683a2000b10c1601d2010201000207004060d365b06caeb417021602ce00774513087b140a5f5f6d61705f5f305f5f16004744cbc50d7b0c0d0d140a5f5f6d61705f5f305f5f16004744cb1706160601010d0d0d1606010117041703160416012b170516050d0e0c140a5f5f6d61705f5f305f5f16004744cb0102000b7a4c041816030c304c180c0d0d140a5f5f6d61705f5f315f5f16034044cb010116012b0c0e0c140a5f5f6d61705f5f315f5f16034044cb0102a00016012ba10016050c2f4c0bca0d0c140a5f5f6d61705f5f305f5f160047447a7e021472656d6f7665206174206d617020706174683a2000cb010301000002004035d3ecf99ab7b4ce054513077b000919107b000a19117b56a101ce01ce02ce03ce041017000c170116011600314c16ca140a5f5f6d61705f5f315f5f16017a10314d0d2acf40447a7e0214696e73657274206174206d617020706174683a2000b10cd2010116010d2a17014a2605a0015e010000000012d33919f580b4ce054513077b00090f7b000a19117b56a10207a0025e010000000406d3068539face01ce02ce03ce040201000102021ad344a25325140a5f5f6d61705f5f305f5f16004744cbc50d7b0c0d0d140a5f5f6d61705f5f305f5f16004744cb1701160101010d0d0d1601010102010001010116d32e30a67700090f7b140a5f5f6d61705f5f315f5f16004044cbc50e7b0c0d0d140a5f5f6d61705f5f315f5f16004044cb010102010000000103d33cfd4f9ea000020100010300405cd376a80ea2b417011601480c7b00090f7b000a19117b140a5f5f6d61705f5f315f5f16004044cbc50e7b140a5f5f6d61705f5f305f5f16014744cbc50d7b0c0d0d140a5f5f6d61705f5f305f5f16014744cb01010c2f13067b0d0d0d140a5f5f6d61705f5f305f5f16014744cb01011702a00016022aa1000c0d0d140a5f5f6d61705f5f315f5f16004044cb010116022a0c0e0c140a5f5f6d61705f5f315f5f16004044cb010216000c0e0c140a5f5f6d61705f5f305f5f16014744cb01020616011600160260000000000104a0010c3002000000000104a0020c300200000000010700097a4c0318000a190214402d060300020002000200020004030000000000000000000000000000000000000000000000000000000000000000140703020002000200ad188000e7fac1174876e8000237a44447ce2506bf3088c799c1e62e582d40a760f9af1b9fb1b1317c894fa6bd7b2c340c000381818e63bd9e35a5489b52a430accefc608fd60aa2c7c0d1b393b5239aedf6b037a444473b29379622b00533436c8e3be1c87a39ef7133ce88ea9d733cb0d46cc77fa8ef0301c751b025c6835a98652ca00000bee85f379545a2ed9f6cceb331288842f378cf0f04012ad4ac8824aae7d6f80a00000000000000000000",
21574
+ signature: "debc116709ef0c7d93de77f7490059b9636055b376783951247edd8d7b608f63764fa6fefdf4e40a4ae82501009db71837ad27f5eb54a6012cc068b8d44893f1",
21281
21575
  gasPrice: "100000000000",
21282
- gasAmount: 58805,
21283
- blockHash: "0301c8976c0ecb0a4022b1d64ec581f5bcc3f43323c6708fd0e4fe715d146be0",
21284
- codeHash: "947e9fadaac74c9e777046a286e060c51e228762d1a484593aebcbd4409c8509",
21576
+ gasAmount: 59386,
21577
+ blockHash: "015391cf9ee9ebf0222f0b2646163a218ae97ab44589f7d26107b56509580470",
21578
+ codeHash: "214804d168d252924a8a1a8e14570e4e26f8a09a93f8ce3848daee36038f2804",
21285
21579
  contractInstance: {
21286
- address: "26iWN6j81TzsXWp8fUFs2t9EoQvCcjtCFq9K4PMAEAAbq",
21287
- contractId: "b2b24a8fa27013a41afedcfc5d8603ef3c3778e385708113ddd76ad2a1cd3100",
21580
+ address: "24HcY5Ln4Q9reT3xyhW4octmXyJzs3XTRMFAaw2dJmYE3",
21581
+ contractId: "8e9a6039a40a48b8885da361128f6c935b934b53b4ae2b112c47c42c9d8b2200",
21288
21582
  groupIndex: 0
21289
21583
  }
21290
21584
  },
21291
- XAlphStakeVault: {
21292
- txId: "a0ec98e20ae70a1b70f805cdb9307695c69601eb175a44bcf56e88eac4ad1331",
21293
- unsignedTx: "000401010103000000081500bee85f379545a2ed9f6cceb331288842f378cf0f04012ad4ac8824aae7d6f80a13c4016345785d8a0000a214460405174028407340af40cc40fc411a41284136414f41a341c341cd41db421e423c4324441d44b8453e458d45a445bb45d4010002030112d3545eacd4160116000005311342277b160113202c170216001602160213202a620201000204014028d3083a358916004313202e0c2f1342267b16014313202f1342287b1600000517020c170316031602314c0e1600160300001601414c0316033f0216030d2a17034a2e0b0201000203011fd3694941c216004313202e0c2f1342267b16014313202f1342287b160016010001170216020b244c031600024a05160016023d00040201000202010dd354ad273416004313202e0c2f1342267b160016014402010002030118d34b2e25b7160116000005311342277b160113202c170216000c1602621600160213202a16004362440201000101010ed30041471116004313202e0c2f1342267b16004313202d02010000000103d3676c3c33140002010000000103d393f264e8a0000200000101000c16004313202f136afb7b1600a10005a000b45f0000020601402e16014313202f136afa7b160117021600431703160313202e0c2f136af97b0c170416041603314c1016001604160413202a62170516051602000a1702160413202a17044a2c160271a000712f02000002020110160071160171314c051600160144000b4a041601160044000b0200000101010316004f02010000000103d3b299f80ace000201000102021ad3f87904e4140a5f5f6d61705f5f305f5f16004744cbc513412e7b0c0d0d140a5f5f6d61705f5f305f5f16004744cb1701160101010d0d0d1601010102010001010108d32b875d11140a5f5f6d61705f5f305f5f16004744cbc50201010108004061d3d63c543cb4170116014813412d7b16000c331341307b1601ce001600ac140a5f5f6d61705f5f305f5f16014744cbc54c40370c0d0d140a5f5f6d61705f5f305f5f16014744cb1707160701010d0d0d1607010117031702160216002a0c0e0c140a5f5f6d61705f5f305f5f16014744cb01021603000517040c170516051604314c0f1603160500001706160116000e0c1606d4926b380b16050d2a17054a2d4a0bca140a5f5f6d61705f5f305f5f160147447a7e0214696e73657274206174206d617020706174683a2000b116000006d20102a00116002aa10106160116005f0101010900406dd310bd129fb4170116014813412d7b140a5f5f6d61705f5f305f5f16014744cbc513412e7b16000c331341317b0c0d0d140a5f5f6d61705f5f305f5f16014744cb1708160801010d0d0d1608010117031702160216003413412f7b160216002b17041603000517050c170616061605314c0f1603160600001707160116000e0c1607d465b06cae16060d2a17064a2d16040c2f4c0cca0d0c140a5f5f6d61705f5f305f5f160147447a7e021472656d6f7665206174206d617020706174683a2000cb01034a0a16040c0e0c140a5f5f6d61705f5f305f5f16014744cb01021601ce001600aba00116002ba10107160116005f01000206004045d3c5f91cb4b4170216024813412d7b1601160000161341357b140a5f5f6d61705f5f305f5f16024744cbc513412e7b0c0d0d140a5f5f6d61705f5f305f5f16024744cb1705160501010d0d0d160501011704170316040005ce01311341327b1604160000010b241341337b160216030e0c1600d4926b380b1604160000030d0e0c140a5f5f6d61705f5f305f5f16024744cb01020100010500403ad3b6398887b4170116014813412d7b140a5f5f6d61705f5f305f5f16014744cbc513412e7b0c0d0d140a5f5f6d61705f5f305f5f16014744cb1704160401010d0d0d16040101170317021603160000010b251341347b160116020e0c1600d465b06cae1603160000020d0e0c140a5f5f6d61705f5f305f5f16014744cb010201000101011fd3e5725392140a5f5f6d61705f5f305f5f16004744cbc5197a4b0418a0010c2f4c020c020c0d0d140a5f5f6d61705f5f305f5f16004744cb010113c40de0b6b3a76400002ca0012d02010001010008d3e5bf78dcb4a0024513412c7b16000008010001010008d34f58efe6b4a0024513412c7b1600a102010002030109d3af1ed9dd1601b9170216001602000b0009021440260203402006a72c6ce8eb96c1d40fd6c2bfbc51e522cae9ec355d9c63ff6c8a8fcd119100020214404803034020fea099302300b2e1cd13efcf93a4a421f15ba3978dd53a0e391cd2134035eadb02000400bee85f379545a2ed9f6cceb331288842f378cf0f04012ad4ac8824aae7d6f80aad188000ebc3c1174876e8000137a44447a67cbe36b901780ebb884d3eb0acb3cd77813f67fbc4d88a761e5ec0583d7e5e000381818e63bd9e35a5489b52a430accefc608fd60aa2c7c0d1b393b5239aedf6b001c6b328e8c2658537f0100000bee85f379545a2ed9f6cceb331288842f378cf0f04012ad4ac8824aae7d6f80a00000000000000000000",
21294
- signature: "bf5e34710abec3d507483a925287205449787da0678071c7b3eddb14e7b161a40e98fccaf83602e338d21957e8e96c156d07771391ed455021c00f5f8f99414b",
21585
+ RewardSharingVault: {
21586
+ txId: "43742c26442904519df1eb4dd2edb516eb858d71e38ba0958519405cf586ed82",
21587
+ unsignedTx: "000401010103000000081500bee85f379545a2ed9f6cceb331288842f378cf0f04012ad4ac8824aae7d6f80a13c4016345785d8a0000a2144360040740d04184426e42a942bb42f2435001000208004056d3926b380bb417021602ce00774513287b140a5f5f6d61705f5f305f5f16004744cbc54c40270c0d0d140a5f5f6d61705f5f305f5f16004744cb01011703160116032a16000d0ece00010d1707170616062f132b7b16000005160316012a0c0e0c140a5f5f6d61705f5f305f5f16004744cb01024a17160116000d0ece00010d1705170416042f132b7bca140a5f5f6d61705f5f305f5f160047447a7e0214696e73657274206174206d617020706174683a2000b11601a001d20102a00016012aa10005160016015f01000205004048d365b06caeb417021602ce00774513287b140a5f5f6d61705f5f305f5f16004744cbc513297b0c0d0d140a5f5f6d61705f5f305f5f16004744cb010117031601160332132c7b160316012b17041600000516040c2f4c0cca0d0c140a5f5f6d61705f5f305f5f160047447a7e021472656d6f7665206174206d617020706174683a2000cb01034a0a16040c0e0c140a5f5f6d61705f5f305f5f16004744cb0102a00016012ba10006160016015f0000030901409216020c3013415e7b160016010c0d3687170316001601371704160316043616031604314c020d4a010c36170516050c2f4c04160416022d02160216053313415f7b160016011602871706160516061604334c020d4a010c361705160416063617040c1602361602381707160216072d1702160416072d17040c16073616072d0d351707160416051607373917040f1602370e3a170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e16021608373637170816080e160216083736371708160416083702010101030019d3fe1110a1a0000c33132a7bb417011601ce011600ac160013c40de0b6b3a7640000a00000021702a00116022aa10107160116005f010300010005d3a28b71d5b417001600000500020102001916000006170116010c334c081600ce011601ab08160016015fa0010d0e0c140a5f5f6d61705f5f305f5f16004744cb010201000105014024d31191a066140a5f5f6d61705f5f305f5f16004744cbc513297b0c0d0d140a5f5f6d61705f5f305f5f16004744cb1704160401010d0d0d1604010117021701a00116022b17031601160313c40de0b6b3a76400000002021405020300030014050202000200ad188000e5b5c1174876e8000137a444473d0d23bf7e46f60442da706b836a9b3147b4cdc35a45169745afe8df7215c078000381818e63bd9e35a5489b52a430accefc608fd60aa2c7c0d1b393b5239aedf6b001c751b025c50b30d76e08980000bee85f379545a2ed9f6cceb331288842f378cf0f04012ad4ac8824aae7d6f80a00000000000000000000",
21588
+ signature: "ac4dbeb528b9874e70b7d5984e446ee7e710949403588eaeb4041028facebc8a774e7e56f2a50ac58f3cb5dc9420f9ee4a8586cc9e9b54aa4818bec60b304498",
21295
21589
  gasPrice: "100000000000",
21296
- gasAmount: 60355,
21297
- blockHash: "02c04dac6bb586ea6428ac21cf82d502013e4017081fc4ec6ef779493039fcc0",
21298
- codeHash: "363b235338a6ed130bea561739876c8d5122a344aa131085b5d8ee6a8b8fd73e",
21590
+ gasAmount: 58805,
21591
+ blockHash: "009261b9e75ad4b046b4b238051b8598456d6d280bf3c4993abf3360d82c3b80",
21592
+ codeHash: "947e9fadaac74c9e777046a286e060c51e228762d1a484593aebcbd4409c8509",
21299
21593
  contractInstance: {
21300
- address: "26Mp4LUrqM4uJW1zbvJwvBrGFvcjH8Sns8CbfLmM8Y23Z",
21301
- contractId: "ad6519c3c5b3d820f7a5104032990a78e85379d0e987d3b4880484d243cebd00",
21594
+ address: "2ACrBx7ShFoqtT9xgw9E1s1P4hAvBzGzyBPKcLaSCkLj9",
21595
+ contractId: "e68807ea08e12fb5e0e60252ea1c8b0f8273462a47f07694420f07d0fbe4e900",
21302
21596
  groupIndex: 0
21303
21597
  }
21304
21598
  },
21305
- GovernanceDemo: {
21306
- txId: "55bbbfdd126faa90658a8ea502462b763c90731621b624c5aa68ee14b3631317",
21307
- unsignedTx: "000401010103000000081500bee85f379545a2ed9f6cceb331288842f378cf0f04012ad4ac8824aae7d6f80a13c4016345785d8a0000a214440d090c40e241c942404262427642b742f142ff43cd43d843e343f30100020600405ad3926b380bb417021602ce00774513087b140a5f5f6d61705f5f305f5f16004744cbc54c403f0c0d0d140a5f5f6d61705f5f305f5f16004744cb1705160501010d0d0d1605010117041703000b7a4c041816030c304c180c0d0d140a5f5f6d61705f5f315f5f16034044cb010116012a0c0e0c140a5f5f6d61705f5f315f5f16034044cb0102a00016012aa100160416012a0d0e0c140a5f5f6d61705f5f305f5f16004744cb01024a0bca140a5f5f6d61705f5f305f5f160047447a7e0214696e73657274206174206d617020706174683a2000b10c1601d2010201000207004060d365b06caeb417021602ce00774513087b140a5f5f6d61705f5f305f5f16004744cbc50d7b0c0d0d140a5f5f6d61705f5f305f5f16004744cb1706160601010d0d0d1606010117041703160416012b170516050d0e0c140a5f5f6d61705f5f305f5f16004744cb0102000b7a4c041816030c304c180c0d0d140a5f5f6d61705f5f315f5f16034044cb010116012b0c0e0c140a5f5f6d61705f5f315f5f16034044cb0102a00016012ba10016050c2f4c0bca0d0c140a5f5f6d61705f5f305f5f160047447a7e021472656d6f7665206174206d617020706174683a2000cb010301000002004035d3ecf99ab7b4ce054513077b000919107b000a19117b56a101ce01ce02ce03ce041017000c170116011600314c16ca140a5f5f6d61705f5f315f5f16017a10314d0d2acf40447a7e0214696e73657274206174206d617020706174683a2000b10cd2010116010d2a17014a2605a0015e010000000012d33919f580b4ce054513077b00090f7b000a19117b56a10207a0025e010000000406d3068539face01ce02ce03ce040201000102021ad344a25325140a5f5f6d61705f5f305f5f16004744cbc50d7b0c0d0d140a5f5f6d61705f5f305f5f16004744cb1701160101010d0d0d1601010102010001010116d32e30a67700090f7b140a5f5f6d61705f5f315f5f16004044cbc50e7b0c0d0d140a5f5f6d61705f5f315f5f16004044cb010102010000000103d33cfd4f9ea000020100010300405cd376a80ea2b417011601480c7b00090f7b000a19117b140a5f5f6d61705f5f315f5f16004044cbc50e7b140a5f5f6d61705f5f305f5f16014744cbc50d7b0c0d0d140a5f5f6d61705f5f305f5f16014744cb01010c2f13067b0d0d0d140a5f5f6d61705f5f305f5f16014744cb01011702a00016022aa1000c0d0d140a5f5f6d61705f5f315f5f16004044cb010116022a0c0e0c140a5f5f6d61705f5f315f5f16004044cb010216000c0e0c140a5f5f6d61705f5f305f5f16014744cb01020616011600160260000000000104a0010c3002000000000104a0020c300200000000010700097a4c0318000a190214402d060300020002000200020004030000000000000000000000000000000000000000000000000000000000000000140703020002000200ad188000e7fac1174876e8000137a44447629d8865f0377d63a95c83b089d78f8f36cef8794c0c63d9c8bfa4737b43163b000381818e63bd9e35a5489b52a430accefc608fd60aa2c7c0d1b393b5239aedf6b001c6b328ea3b1c3eef04c80000bee85f379545a2ed9f6cceb331288842f378cf0f04012ad4ac8824aae7d6f80a00000000000000000000",
21308
- signature: "71402f7759070a743093ac7927029c09fb28c751d86015778776502fb740cf81299c12b9629a05a39f9ef52c1de3a5372969f92adc84271062c3a2a5db9cab6a",
21599
+ XAlphStakeVault: {
21600
+ txId: "f30de7021a11ec3004e8ebbc34a526b18d99d514257ec5a496d65f077183ce71",
21601
+ unsignedTx: "000401010103000000081500bee85f379545a2ed9f6cceb331288842f378cf0f04012ad4ac8824aae7d6f80a13c4016345785d8a0000a214460905174028407340af40cc40fc411a41284136414f41a341c341cd41db422342414329442244bd4543459245a945c045d9010002030112d3545eacd4160116000005311342277b160113202c170216001602160213202a620201000204014028d3083a358916004313202e0c2f1342267b16014313202f1342287b1600000517020c170316031602314c0e1600160300001601414c0316033f0216030d2a17034a2e0b0201000203011fd3694941c216004313202e0c2f1342267b16014313202f1342287b160016010001170216020b244c031600024a05160016023d00040201000202010dd354ad273416004313202e0c2f1342267b160016014402010002030118d34b2e25b7160116000005311342277b160113202c170216000c1602621600160213202a16004362440201000101010ed30041471116004313202e0c2f1342267b16004313202d02010000000103d3676c3c33140002010000000103d393f264e8a0000200000101000c16004313202f136afb7b1600a10005a000b45f0000020601402e16014313202f136afa7b160117021600431703160313202e0c2f136af97b0c170416041603314c1016001604160413202a62170516051602000a1702160413202a17044a2c160271a000712f02000002020110160071160171314c051600160144000b4a041601160044000b0200000101010316004f02010000000103d3b299f80ace000201000102021ed3f87904e4140a5f5f6d61705f5f305f5f16004744cbc5194c040c0006024a110c0d0d140a5f5f6d61705f5f305f5f16004744cb1701160101010d0d0d1601010102010001010108d32b875d11140a5f5f6d61705f5f305f5f16004744cbc50201010108004061d3d63c543cb4170116014813412d7b16000c331341307b1601ce001600ac140a5f5f6d61705f5f305f5f16014744cbc54c40370c0d0d140a5f5f6d61705f5f305f5f16014744cb1707160701010d0d0d1607010117031702160216002a0c0e0c140a5f5f6d61705f5f305f5f16014744cb01021603000517040c170516051604314c0f1603160500001706160116000e0c1606d4926b380b16050d2a17054a2d4a0bca140a5f5f6d61705f5f305f5f160147447a7e0214696e73657274206174206d617020706174683a2000b116000006d20102a00116002aa10106160116005f0102010900406dd310bd129fb4170116014813412d7b140a5f5f6d61705f5f305f5f16014744cbc513412e7b16000c331341317b0c0d0d140a5f5f6d61705f5f305f5f16014744cb1708160801010d0d0d1608010117031702160216003413412f7b160216002b17041603000517050c170616061605314c0f1603160600001707160116000e0c1607d465b06cae16060d2a17064a2d16040c2f4c0cca0d0c140a5f5f6d61705f5f305f5f160147447a7e021472656d6f7665206174206d617020706174683a2000cb01034a0a16040c0e0c140a5f5f6d61705f5f305f5f16014744cb01021601ce001600aba00116002ba10107160116005f01000206004045d3c5f91cb4b4170216024813412d7b1601160000161341357b140a5f5f6d61705f5f305f5f16024744cbc513412e7b0c0d0d140a5f5f6d61705f5f305f5f16024744cb1705160501010d0d0d160501011704170316040005ce01311341327b1604160000010b241341337b160216030e0c1600d4926b380b1604160000030d0e0c140a5f5f6d61705f5f305f5f16024744cb01020100010500403ad3b6398887b4170116014813412d7b140a5f5f6d61705f5f305f5f16014744cbc513412e7b0c0d0d140a5f5f6d61705f5f305f5f16014744cb1704160401010d0d0d16040101170317021603160000010b251341347b160116020e0c1600d465b06cae1603160000020d0e0c140a5f5f6d61705f5f305f5f16014744cb010201000101011fd3e5725392140a5f5f6d61705f5f305f5f16004744cbc5197a4b0418a0010c2f4c020c020c0d0d140a5f5f6d61705f5f305f5f16004744cb010113c40de0b6b3a76400002ca0012d02010001010008d3e5bf78dcb4a0024513412c7b16000008010001010008d34f58efe6b4a0024513412c7b1600a102010002030109d3af1ed9dd1601b9170216001602000b000902144026020340200bd7e14c31b8979dcdc10da8eb346d9578b2decb983d2cd0d74c888215d84900020214404803034020fea099302300b2e1cd13efcf93a4a421f15ba3978dd53a0e391cd2134035eadb02000400bee85f379545a2ed9f6cceb331288842f378cf0f04012ad4ac8824aae7d6f80aad188000ebcdc1174876e8000137a44447c558a45262d7b18950c98626782f2b9021e6113a13813319cf519ad495a692e5000381818e63bd9e35a5489b52a430accefc608fd60aa2c7c0d1b393b5239aedf6b001c751b025c3927934e24ed00000bee85f379545a2ed9f6cceb331288842f378cf0f04012ad4ac8824aae7d6f80a00000000000000000000",
21602
+ signature: "d9687adafb4ef6c97ac50ec2f0d169b3c231da678ab12ed4457fb31df3c2df301a4ea882934e8ee0c5231ba25929503044e73572656e2c2d226f540991188685",
21309
21603
  gasPrice: "100000000000",
21310
- gasAmount: 59386,
21311
- blockHash: "0890c618cdc93a4eafa277b94a060dd5f7f0fd27fdde6515e64b6a2615b61280",
21312
- codeHash: "214804d168d252924a8a1a8e14570e4e26f8a09a93f8ce3848daee36038f2804",
21604
+ gasAmount: 60365,
21605
+ blockHash: "001a8c38a6b473430f4adff7cd713affe7f27f3d051f7273362d476a8824dea0",
21606
+ codeHash: "9553f5647cda93c5af12f53b8bb621424e975279a4821c9583f3fb570e691ecc",
21313
21607
  contractInstance: {
21314
- address: "2463zao2CfMyco56hnwe2JGQz9feg7aDjkyfRR9CLaTPd",
21315
- contractId: "8ba430c66789eb7096b50e180d6c6bbb598e2ebd9d3b958fe8a85918a9741a00",
21608
+ address: "z3ZrfZPh2h8fBaz3EFP6QzGwkSYdLZQ9swDsHXT25Zh1",
21609
+ contractId: "4f927796d773b746f41509e74235350b30c0f4bb81f3e29e3258d13116afcb00",
21316
21610
  groupIndex: 0
21317
21611
  }
21318
21612
  }
@@ -21503,6 +21797,13 @@ var StakingModule = class extends ModuleBase {
21503
21797
  }
21504
21798
  });
21505
21799
  }
21800
+ async cancelUnstake(vaultIndex) {
21801
+ return this.xAlphTokenContract.transact.cancelUnstake({
21802
+ signer: this.scope.signer,
21803
+ args: { vaultIndex },
21804
+ attoAlphAmount: import_web347.DUST_AMOUNT
21805
+ });
21806
+ }
21506
21807
  async stakeXAlph(amount) {
21507
21808
  this.ensurePositiveAmount(amount, "Stake amount");
21508
21809
  return this.stakeVaultContract.transact.stake({
@@ -21520,17 +21821,6 @@ var StakingModule = class extends ModuleBase {
21520
21821
  attoAlphAmount: import_web347.MINIMAL_CONTRACT_DEPOSIT
21521
21822
  });
21522
21823
  }
21523
- async stakeAndLockAlph(amount) {
21524
- return AlphStakeAndLock.execute({
21525
- signer: this.scope.signer,
21526
- initialFields: {
21527
- xAlphToken: this.xAlphTokenContract.contractId,
21528
- xAlphStakeVault: this.stakeVaultContract.contractId,
21529
- amount
21530
- },
21531
- attoAlphAmount: amount + import_web347.MINIMAL_CONTRACT_DEPOSIT
21532
- });
21533
- }
21534
21824
  async unlockAndStartUnstake(amount) {
21535
21825
  return XAlphUnlockAndStartUnstake.execute({
21536
21826
  signer: this.scope.signer,
@@ -21553,7 +21843,8 @@ var StakingModule = class extends ModuleBase {
21553
21843
  return AlphUnstakeVault.at((0, import_web347.addressFromContractId)(contractId));
21554
21844
  }
21555
21845
  async getAlphUnstakeVaultState(userAddress, vaultIndex) {
21556
- return this.getAlphUnstakeVault(userAddress, vaultIndex).fetchState();
21846
+ const stakerAddress = this.getStakerAddress(userAddress);
21847
+ return this.getAlphUnstakeVault(stakerAddress, vaultIndex).fetchState();
21557
21848
  }
21558
21849
  async connectToDapp(contractId, merkleProof) {
21559
21850
  return this.stakeVaultContract.transact.connectToDapp({
@@ -21570,10 +21861,7 @@ var StakingModule = class extends ModuleBase {
21570
21861
  });
21571
21862
  }
21572
21863
  async getUserStakeVaultInfo(address) {
21573
- let stakerAddress = address;
21574
- if ((0, import_web347.isGrouplessAddressWithoutGroupIndex)(address)) {
21575
- stakerAddress = `${address}:${this.stakeVaultContract.groupIndex}`;
21576
- }
21864
+ const stakerAddress = this.getStakerAddress(address);
21577
21865
  const result = await this.stakeVaultContract.view.getUserStakingInfo({
21578
21866
  args: { user: stakerAddress }
21579
21867
  });
@@ -21583,22 +21871,26 @@ var StakingModule = class extends ModuleBase {
21583
21871
  };
21584
21872
  }
21585
21873
  async isUserStaking(address) {
21586
- const result = await this.stakeVaultContract.view.isStaking({ args: { user: address } });
21874
+ const stakerAddress = this.getStakerAddress(address);
21875
+ const result = await this.stakeVaultContract.view.isStaking({ args: { user: stakerAddress } });
21587
21876
  return result.returns;
21588
21877
  }
21589
21878
  async getUserWeight(address) {
21590
- const result = await this.stakeVaultContract.view.getWeight({ args: { user: address } });
21879
+ const stakerAddress = this.getStakerAddress(address);
21880
+ const result = await this.stakeVaultContract.view.getWeight({ args: { user: stakerAddress } });
21591
21881
  return result.returns;
21592
21882
  }
21593
21883
  async getActiveUnstakeVaultIndexes(address) {
21884
+ const stakerAddress = this.getStakerAddress(address);
21594
21885
  const result = await this.xAlphTokenContract.view.getActiveUnstakeVaultIndexes({
21595
- args: { caller: address }
21886
+ args: { caller: stakerAddress }
21596
21887
  });
21597
21888
  return decodeU256List(result.returns);
21598
21889
  }
21599
21890
  async getClaimableAmount(address, vaultIndex) {
21891
+ const stakerAddress = this.getStakerAddress(address);
21600
21892
  const result = await this.xAlphTokenContract.view.getClaimableAmount({
21601
- args: { user: address, vaultIndex }
21893
+ args: { user: stakerAddress, vaultIndex }
21602
21894
  });
21603
21895
  return result.returns;
21604
21896
  }
@@ -21633,10 +21925,16 @@ var StakingModule = class extends ModuleBase {
21633
21925
  throw new Error(`${label} must be greater than zero`);
21634
21926
  }
21635
21927
  }
21928
+ getStakerAddress(address) {
21929
+ if ((0, import_web347.isGrouplessAddressWithoutGroupIndex)(address)) {
21930
+ return `${address}:${this.stakeVaultContract.groupIndex}`;
21931
+ }
21932
+ return address;
21933
+ }
21636
21934
  };
21637
21935
 
21638
- // src/zeta.ts
21639
- var Zeta = class _Zeta {
21936
+ // src/powfi.ts
21937
+ var Powfi = class _Powfi {
21640
21938
  cpmm;
21641
21939
  clmm;
21642
21940
  token;
@@ -21665,7 +21963,7 @@ var Zeta = class _Zeta {
21665
21963
  this.staking = new StakingModule(this);
21666
21964
  }
21667
21965
  static load(config) {
21668
- return new _Zeta(config);
21966
+ return new _Powfi(config);
21669
21967
  }
21670
21968
  set signer(signer) {
21671
21969
  this._signer = signer;
@@ -21741,6 +22039,8 @@ var MAX_PIPS = Pool.consts.MAX_PIPS;
21741
22039
  NumericUtils,
21742
22040
  PoolNotFoundError,
21743
22041
  PoolUtils,
22042
+ Powfi,
22043
+ PowfiSDKError,
21744
22044
  PriceImpactTooHighError,
21745
22045
  StakingContracts,
21746
22046
  StakingModule,
@@ -21749,8 +22049,6 @@ var MAX_PIPS = Pool.consts.MAX_PIPS;
21749
22049
  TokenModule,
21750
22050
  U256_MAX,
21751
22051
  UNLIMITED_AMOUNT,
21752
- Zeta,
21753
- ZetaSDKError,
21754
22052
  createLogger,
21755
22053
  decodeContractIdList,
21756
22054
  decodeU256List,