@hyperlane-xyz/sdk 22.0.0 → 23.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (157) hide show
  1. package/dist/consts/igp.d.ts +1 -0
  2. package/dist/consts/igp.d.ts.map +1 -1
  3. package/dist/consts/igp.js +8 -3
  4. package/dist/consts/igp.js.map +1 -1
  5. package/dist/consts/multisigIsm.d.ts.map +1 -1
  6. package/dist/consts/multisigIsm.js +23 -148
  7. package/dist/consts/multisigIsm.js.map +1 -1
  8. package/dist/contracts/contracts.d.ts.map +1 -1
  9. package/dist/contracts/contracts.js +2 -0
  10. package/dist/contracts/contracts.js.map +1 -1
  11. package/dist/core/HyperlaneCore.d.ts +24 -0
  12. package/dist/core/HyperlaneCore.d.ts.map +1 -1
  13. package/dist/core/HyperlaneCore.js +38 -3
  14. package/dist/core/HyperlaneCore.js.map +1 -1
  15. package/dist/core/MultiProtocolCore.d.ts.map +1 -1
  16. package/dist/core/MultiProtocolCore.js +3 -0
  17. package/dist/core/MultiProtocolCore.js.map +1 -1
  18. package/dist/core/adapters/AleoCoreAdapter.d.ts +22 -0
  19. package/dist/core/adapters/AleoCoreAdapter.d.ts.map +1 -0
  20. package/dist/core/adapters/AleoCoreAdapter.js +33 -0
  21. package/dist/core/adapters/AleoCoreAdapter.js.map +1 -0
  22. package/dist/deploy/proxy.d.ts +2 -0
  23. package/dist/deploy/proxy.d.ts.map +1 -1
  24. package/dist/deploy/proxy.js +10 -4
  25. package/dist/deploy/proxy.js.map +1 -1
  26. package/dist/deploy/proxy.test.js +44 -1
  27. package/dist/deploy/proxy.test.js.map +1 -1
  28. package/dist/gas/utils.d.ts.map +1 -1
  29. package/dist/gas/utils.js +11 -8
  30. package/dist/gas/utils.js.map +1 -1
  31. package/dist/index.d.ts +7 -9
  32. package/dist/index.d.ts.map +1 -1
  33. package/dist/index.js +5 -7
  34. package/dist/index.js.map +1 -1
  35. package/dist/ism/HyperlaneIsmFactory.hardhat-test.d.ts +1 -3
  36. package/dist/ism/HyperlaneIsmFactory.hardhat-test.d.ts.map +1 -1
  37. package/dist/ism/HyperlaneIsmFactory.hardhat-test.js +6 -96
  38. package/dist/ism/HyperlaneIsmFactory.hardhat-test.js.map +1 -1
  39. package/dist/ism/multisig.js +2 -2
  40. package/dist/ism/multisig.js.map +1 -1
  41. package/dist/ism/utils.d.ts +1 -0
  42. package/dist/ism/utils.d.ts.map +1 -1
  43. package/dist/ism/utils.js +4 -1
  44. package/dist/ism/utils.js.map +1 -1
  45. package/dist/metadata/agentConfig.d.ts +16 -16
  46. package/dist/metadata/blockExplorer.d.ts.map +1 -1
  47. package/dist/metadata/blockExplorer.js +2 -0
  48. package/dist/metadata/blockExplorer.js.map +1 -1
  49. package/dist/middleware/account/InterchainAccount.d.ts +21 -1
  50. package/dist/middleware/account/InterchainAccount.d.ts.map +1 -1
  51. package/dist/middleware/account/InterchainAccount.js +120 -8
  52. package/dist/middleware/account/InterchainAccount.js.map +1 -1
  53. package/dist/middleware/account/InterchainAccount.test.d.ts +2 -0
  54. package/dist/middleware/account/InterchainAccount.test.d.ts.map +1 -0
  55. package/dist/middleware/account/InterchainAccount.test.js +279 -0
  56. package/dist/middleware/account/InterchainAccount.test.js.map +1 -0
  57. package/dist/middleware/account/types.d.ts +37 -3
  58. package/dist/middleware/account/types.d.ts.map +1 -1
  59. package/dist/middleware/account/types.js +8 -3
  60. package/dist/middleware/account/types.js.map +1 -1
  61. package/dist/providers/MultiProvider.d.ts +26 -4
  62. package/dist/providers/MultiProvider.d.ts.map +1 -1
  63. package/dist/providers/MultiProvider.js +59 -5
  64. package/dist/providers/MultiProvider.js.map +1 -1
  65. package/dist/providers/transactions/submitter/IcaTxSubmitter.d.ts.map +1 -1
  66. package/dist/providers/transactions/submitter/IcaTxSubmitter.js +4 -1
  67. package/dist/providers/transactions/submitter/IcaTxSubmitter.js.map +1 -1
  68. package/dist/test/testUtils.d.ts +9 -2
  69. package/dist/test/testUtils.d.ts.map +1 -1
  70. package/dist/test/testUtils.js +99 -3
  71. package/dist/test/testUtils.js.map +1 -1
  72. package/dist/token/Token.d.ts.map +1 -1
  73. package/dist/token/Token.js +21 -0
  74. package/dist/token/Token.js.map +1 -1
  75. package/dist/token/adapters/AleoTokenAdapter.d.ts +60 -0
  76. package/dist/token/adapters/AleoTokenAdapter.d.ts.map +1 -0
  77. package/dist/token/adapters/AleoTokenAdapter.js +190 -0
  78. package/dist/token/adapters/AleoTokenAdapter.js.map +1 -0
  79. package/dist/token/adapters/EvmTokenAdapter.d.ts +26 -9
  80. package/dist/token/adapters/EvmTokenAdapter.d.ts.map +1 -1
  81. package/dist/token/adapters/EvmTokenAdapter.js +36 -31
  82. package/dist/token/adapters/EvmTokenAdapter.js.map +1 -1
  83. package/dist/token/adapters/ITokenAdapter.d.ts +5 -2
  84. package/dist/token/adapters/ITokenAdapter.d.ts.map +1 -1
  85. package/dist/token/adapters/utils.d.ts +7 -0
  86. package/dist/token/adapters/utils.d.ts.map +1 -0
  87. package/dist/token/adapters/utils.js +4 -0
  88. package/dist/token/adapters/utils.js.map +1 -0
  89. package/dist/utils/gas.d.ts +29 -0
  90. package/dist/utils/gas.d.ts.map +1 -0
  91. package/dist/utils/gas.js +34 -0
  92. package/dist/utils/gas.js.map +1 -0
  93. package/package.json +11 -11
  94. package/dist/core/HyperlaneRelayer.d.ts +0 -600
  95. package/dist/core/HyperlaneRelayer.d.ts.map +0 -1
  96. package/dist/core/HyperlaneRelayer.js +0 -257
  97. package/dist/core/HyperlaneRelayer.js.map +0 -1
  98. package/dist/ism/metadata/aggregation.d.ts +0 -23
  99. package/dist/ism/metadata/aggregation.d.ts.map +0 -1
  100. package/dist/ism/metadata/aggregation.js +0 -92
  101. package/dist/ism/metadata/aggregation.js.map +0 -1
  102. package/dist/ism/metadata/aggregation.test.d.ts +0 -2
  103. package/dist/ism/metadata/aggregation.test.d.ts.map +0 -1
  104. package/dist/ism/metadata/aggregation.test.js +0 -37
  105. package/dist/ism/metadata/aggregation.test.js.map +0 -1
  106. package/dist/ism/metadata/arbL2ToL1.d.ts +0 -25
  107. package/dist/ism/metadata/arbL2ToL1.d.ts.map +0 -1
  108. package/dist/ism/metadata/arbL2ToL1.hardhat-test.d.ts +0 -2
  109. package/dist/ism/metadata/arbL2ToL1.hardhat-test.d.ts.map +0 -1
  110. package/dist/ism/metadata/arbL2ToL1.hardhat-test.js +0 -167
  111. package/dist/ism/metadata/arbL2ToL1.hardhat-test.js.map +0 -1
  112. package/dist/ism/metadata/arbL2ToL1.js +0 -133
  113. package/dist/ism/metadata/arbL2ToL1.js.map +0 -1
  114. package/dist/ism/metadata/builder.d.ts +0 -23
  115. package/dist/ism/metadata/builder.d.ts.map +0 -1
  116. package/dist/ism/metadata/builder.hardhat-test.d.ts +0 -2
  117. package/dist/ism/metadata/builder.hardhat-test.d.ts.map +0 -1
  118. package/dist/ism/metadata/builder.hardhat-test.js +0 -137
  119. package/dist/ism/metadata/builder.hardhat-test.js.map +0 -1
  120. package/dist/ism/metadata/builder.js +0 -87
  121. package/dist/ism/metadata/builder.js.map +0 -1
  122. package/dist/ism/metadata/ccipread.d.ts +0 -12
  123. package/dist/ism/metadata/ccipread.d.ts.map +0 -1
  124. package/dist/ism/metadata/ccipread.hardhat-test.d.ts +0 -2
  125. package/dist/ism/metadata/ccipread.hardhat-test.d.ts.map +0 -1
  126. package/dist/ism/metadata/ccipread.hardhat-test.js +0 -98
  127. package/dist/ism/metadata/ccipread.hardhat-test.js.map +0 -1
  128. package/dist/ism/metadata/ccipread.js +0 -73
  129. package/dist/ism/metadata/ccipread.js.map +0 -1
  130. package/dist/ism/metadata/decode.d.ts +0 -3
  131. package/dist/ism/metadata/decode.d.ts.map +0 -1
  132. package/dist/ism/metadata/decode.js +0 -34
  133. package/dist/ism/metadata/decode.js.map +0 -1
  134. package/dist/ism/metadata/multisig.d.ts +0 -57
  135. package/dist/ism/metadata/multisig.d.ts.map +0 -1
  136. package/dist/ism/metadata/multisig.js +0 -186
  137. package/dist/ism/metadata/multisig.js.map +0 -1
  138. package/dist/ism/metadata/multisig.test.d.ts +0 -2
  139. package/dist/ism/metadata/multisig.test.d.ts.map +0 -1
  140. package/dist/ism/metadata/multisig.test.js +0 -56
  141. package/dist/ism/metadata/multisig.test.js.map +0 -1
  142. package/dist/ism/metadata/null.d.ts +0 -15
  143. package/dist/ism/metadata/null.d.ts.map +0 -1
  144. package/dist/ism/metadata/null.js +0 -20
  145. package/dist/ism/metadata/null.js.map +0 -1
  146. package/dist/ism/metadata/routing.d.ts +0 -22
  147. package/dist/ism/metadata/routing.d.ts.map +0 -1
  148. package/dist/ism/metadata/routing.js +0 -72
  149. package/dist/ism/metadata/routing.js.map +0 -1
  150. package/dist/ism/metadata/types.d.ts +0 -20
  151. package/dist/ism/metadata/types.d.ts.map +0 -1
  152. package/dist/ism/metadata/types.js +0 -2
  153. package/dist/ism/metadata/types.js.map +0 -1
  154. package/dist/ism/metadata/types.test.d.ts +0 -5
  155. package/dist/ism/metadata/types.test.d.ts.map +0 -1
  156. package/dist/ism/metadata/types.test.js +0 -2
  157. package/dist/ism/metadata/types.test.js.map +0 -1
@@ -1,9 +1,10 @@
1
1
  import { BigNumber, constants as ethersConstants, } from 'ethers';
2
- import { ERC20__factory, ERC4626__factory, GasRouter__factory, HypERC20Collateral__factory, HypERC20__factory, HypERC4626Collateral__factory, HypERC4626__factory, HypXERC20Lockbox__factory, HypXERC20__factory, IFiatToken__factory, ITokenBridge__factory, IXERC20VS__factory, IXERC20__factory, MovableCollateralRouter__factory, TokenRouter__factory, } from '@hyperlane-xyz/core';
2
+ import { ERC20__factory, ERC4626__factory, HypERC20Collateral__factory, HypERC20__factory, HypERC4626Collateral__factory, HypERC4626__factory, HypXERC20Lockbox__factory, HypXERC20__factory, IFiatToken__factory, ITokenBridge__factory, IXERC20VS__factory, IXERC20__factory, MovableCollateralRouter__factory, TokenRouter__factory, } from '@hyperlane-xyz/core';
3
3
  import { ZERO_ADDRESS_HEX_32, addressToByteHexString, addressToBytes32, assert, bytes32ToAddress, isNullish, isZeroishAddress, normalizeAddress, strip0x, } from '@hyperlane-xyz/utils';
4
4
  import { BaseEvmAdapter } from '../../app/MultiProtocolApp.js';
5
5
  import { UIN256_MAX_VALUE } from '../../consts/numbers.js';
6
6
  import { isValidContractVersion } from '../../utils/contract.js';
7
+ import { buildBlockTagOverrides } from './utils.js';
7
8
  // An estimate of the gas amount for a typical EVM token router transferRemote transaction
8
9
  // Computed by estimating on a few different chains, taking the max, and then adding ~50% padding
9
10
  export const EVM_TRANSFER_REMOTE_GAS_ESTIMATE = 450000n;
@@ -128,8 +129,10 @@ export class EvmHypSyntheticAdapter extends EvmTokenAdapter {
128
129
  const routers = await Promise.all(domains.map((d) => this.getRouterAddress(d)));
129
130
  return domains.map((d, i) => ({ domain: d, address: routers[i] }));
130
131
  }
131
- getBridgedSupply() {
132
- return this.getTotalSupply();
132
+ async getBridgedSupply(options) {
133
+ const overrides = buildBlockTagOverrides(options?.blockTag);
134
+ const totalSupply = await this.contract.totalSupply(overrides);
135
+ return totalSupply.toBigInt();
133
136
  }
134
137
  async getContractPackageVersion() {
135
138
  try {
@@ -220,8 +223,12 @@ class BaseEvmHypCollateralAdapter extends EvmHypSyntheticAdapter {
220
223
  const wrappedTokenAdapter = await this.getWrappedTokenAdapter();
221
224
  return wrappedTokenAdapter.getBalance(address);
222
225
  }
223
- getBridgedSupply() {
224
- return this.getBalance(this.addresses.token);
226
+ async getBridgedSupply(options) {
227
+ const wrappedTokenAddress = await this.getWrappedTokenAddress();
228
+ const wrappedContract = ERC20__factory.connect(wrappedTokenAddress, this.getProvider());
229
+ const overrides = buildBlockTagOverrides(options?.blockTag);
230
+ const balance = await wrappedContract.balanceOf(this.addresses.token, overrides);
231
+ return BigInt(balance.toString());
225
232
  }
226
233
  getMetadata(isNft) {
227
234
  return this.getWrappedTokenAdapter().then((t) => t.getMetadata(isNft));
@@ -285,19 +292,7 @@ export class EvmMovableCollateralAdapter extends EvmHypCollateralAdapter {
285
292
  .map((bridgeAddress) => normalizeAddress(bridgeAddress))
286
293
  .includes(normalizeAddress(bridge));
287
294
  }
288
- async getRebalanceQuotes(bridge, domain, recipient, amount, isWarp) {
289
- // TODO: In the future, all bridges should get quotes from the quoteTransferRemote function.
290
- // Given that currently warp routes used as bridges do not, quotes need to be obtained differently.
291
- // This can probably be removed in the future.
292
- if (isWarp) {
293
- const gasRouter = GasRouter__factory.connect(bridge, this.getProvider());
294
- const gasPayment = await gasRouter.quoteGasPayment(domain);
295
- return [
296
- {
297
- igpQuote: { amount: BigInt(gasPayment.toString()) },
298
- },
299
- ];
300
- }
295
+ async getRebalanceQuotes(bridge, domain, recipient, amount) {
301
296
  const bridgeContract = ITokenBridge__factory.connect(bridge, this.getProvider());
302
297
  const quotes = await bridgeContract.quoteTransferRemote(domain, addressToBytes32(recipient), amount);
303
298
  return quotes.map((quote) => ({
@@ -324,9 +319,12 @@ export class EvmHypCollateralFiatAdapter extends EvmHypCollateralAdapter {
324
319
  * of the fiat token, which may be used by other bridges.
325
320
  * However this is the best we can do with a simple view call.
326
321
  */
327
- async getBridgedSupply() {
328
- const wrapped = await this.getWrappedTokenAdapter();
329
- return wrapped.getTotalSupply();
322
+ async getBridgedSupply(options) {
323
+ const wrappedTokenAddress = await this.getWrappedTokenAddress();
324
+ const wrappedContract = ERC20__factory.connect(wrappedTokenAddress, this.getProvider());
325
+ const overrides = buildBlockTagOverrides(options?.blockTag);
326
+ const totalSupply = await wrappedContract.totalSupply(overrides);
327
+ return BigInt(totalSupply.toString());
330
328
  }
331
329
  async getMintLimit() {
332
330
  const wrappedToken = await this.getWrappedTokenAddress();
@@ -366,9 +364,10 @@ export class EvmHypRebaseCollateralAdapter extends BaseEvmHypCollateralAdapter {
366
364
  }
367
365
  return this.wrappedTokenAddress;
368
366
  }
369
- async getBridgedSupply() {
367
+ async getBridgedSupply(options) {
370
368
  const vault = ERC4626__factory.connect(await this.collateralContract.vault(), this.getProvider());
371
- const balance = await vault.balanceOf(this.addresses.token);
369
+ const overrides = buildBlockTagOverrides(options?.blockTag);
370
+ const balance = await vault.balanceOf(this.addresses.token, overrides);
372
371
  return balance.toBigInt();
373
372
  }
374
373
  }
@@ -382,8 +381,9 @@ export class EvmHypSyntheticRebaseAdapter extends EvmHypSyntheticAdapter {
382
381
  this.multiProvider = multiProvider;
383
382
  this.addresses = addresses;
384
383
  }
385
- async getBridgedSupply() {
386
- const totalShares = await this.contract.totalShares();
384
+ async getBridgedSupply(options) {
385
+ const overrides = buildBlockTagOverrides(options?.blockTag);
386
+ const totalShares = await this.contract.totalShares(overrides);
387
387
  return totalShares.toBigInt();
388
388
  }
389
389
  }
@@ -403,10 +403,11 @@ class BaseEvmHypXERC20Adapter extends EvmHypCollateralAdapter {
403
403
  const xerc20Addr = await this.hypXERC20.wrappedToken();
404
404
  return this.connectXERC20(xerc20Addr);
405
405
  }
406
- async getBridgedSupply() {
406
+ async getBridgedSupply(options) {
407
407
  const xerc20 = await this.getXERC20();
408
408
  // Both IXERC20 and IXERC20VS have totalSupply, name, etc. if they extend ERC20
409
- const totalSupply = await xerc20.totalSupply();
409
+ const overrides = buildBlockTagOverrides(options?.blockTag);
410
+ const totalSupply = await xerc20.totalSupply(overrides);
410
411
  return totalSupply.toBigInt();
411
412
  }
412
413
  async getMintLimit() {
@@ -447,9 +448,13 @@ class BaseEvmHypXERC20LockboxAdapter extends EvmHypCollateralAdapter {
447
448
  * of the lockbox contract, which may be used by other bridges.
448
449
  * However this is the best we can do with a simple view call.
449
450
  */
450
- async getBridgedSupply() {
451
+ async getBridgedSupply(options) {
451
452
  const lockboxAddress = await this.hypXERC20Lockbox.lockbox();
452
- return this.getBalance(lockboxAddress);
453
+ const wrappedTokenAddress = await this.getWrappedTokenAddress();
454
+ const wrappedContract = ERC20__factory.connect(wrappedTokenAddress, this.getProvider());
455
+ const overrides = buildBlockTagOverrides(options?.blockTag);
456
+ const balance = await wrappedContract.balanceOf(lockboxAddress, overrides);
457
+ return BigInt(balance.toString());
453
458
  }
454
459
  async getXERC20() {
455
460
  const xERC20Addr = await this.hypXERC20Lockbox.xERC20();
@@ -588,8 +593,8 @@ export class EvmHypNativeAdapter extends EvmMovableCollateralAdapter {
588
593
  // Pass the amount as initial native value to the parent class
589
594
  BigInt(weiAmountOrId));
590
595
  }
591
- async getBridgedSupply() {
592
- const balance = await this.getProvider().getBalance(this.addresses.token);
596
+ async getBridgedSupply(options) {
597
+ const balance = await this.getProvider().getBalance(this.addresses.token, options?.blockTag);
593
598
  return BigInt(balance.toString());
594
599
  }
595
600
  }
@@ -1 +1 @@
1
- {"version":3,"file":"EvmTokenAdapter.js","sourceRoot":"","sources":["../../../src/token/adapters/EvmTokenAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EAET,SAAS,IAAI,eAAe,GAC7B,MAAM,QAAQ,CAAC;AAEhB,OAAO,EAEL,cAAc,EACd,gBAAgB,EAChB,kBAAkB,EAGlB,2BAA2B,EAC3B,iBAAiB,EAGjB,6BAA6B,EAC7B,mBAAmB,EAGnB,yBAAyB,EACzB,kBAAkB,EAClB,mBAAmB,EACnB,qBAAqB,EAGrB,kBAAkB,EAClB,gBAAgB,EAEhB,gCAAgC,EAEhC,oBAAoB,GACrB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAIL,mBAAmB,EACnB,sBAAsB,EACtB,gBAAgB,EAChB,MAAM,EACN,gBAAgB,EAChB,SAAS,EACT,gBAAgB,EAChB,gBAAgB,EAChB,OAAO,GACR,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAG3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAqBjE,0FAA0F;AAC1F,iGAAiG;AACjG,MAAM,CAAC,MAAM,gCAAgC,GAAG,OAAQ,CAAC;AACzD,MAAM,0BAA0B,GAAG,QAAQ,CAAC;AAE5C,mCAAmC;AACnC,MAAM,OAAO,qBACX,SAAQ,cAAc;IAGtB,KAAK,CAAC,UAAU,CAAC,OAAgB;QAC/B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAC7D,OAAO,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,WAAW;QACf,MAAM,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC5E,MAAM,CACJ,WAAW,EACX,qCAAqC,qBAAqB,CAAC,IAAI,EAAE,CAClE,CAAC;QAEF,OAAO;YACL,IAAI,EAAE,WAAW,CAAC,IAAI;YACtB,MAAM,EAAE,WAAW,CAAC,MAAM;YAC1B,QAAQ,EAAE,WAAW,CAAC,QAAQ;SAC/B,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,wBAAwB,CAAC,UAAmB;QAChD,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,KAAK,CAAC,iBAAiB,CACrB,MAAe,EACf,QAAiB,EACjB,cAAyB;QAEzB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,KAAK,CAAC,wBAAwB,CAC5B,MAAe,EACf,QAAiB;QAEjB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,KAAK,CAAC,iBAAiB,CACrB,OAAuB;QAEvB,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;IAC5D,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,EACvB,aAAa,EACb,SAAS,GACM;QACf,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,CAAC;QACvD,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,cAAc;QAClB,uEAAuE;QACvE,OAAO,SAAS,CAAC;IACnB,CAAC;CACF;AAED,qCAAqC;AACrC,MAAM,OAAO,eACX,SAAQ,qBAAqB;IAMX;IACA;IACA;IACA;IANF,QAAQ,CAAI;IAE5B,YACkB,SAAoB,EACpB,aAAoC,EACpC,SAA6B,EAC7B,kBAAuB,cAAc;QAErD,KAAK,CAAC,SAAS,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC;QAL3B,cAAS,GAAT,SAAS,CAAW;QACpB,kBAAa,GAAb,aAAa,CAAuB;QACpC,cAAS,GAAT,SAAS,CAAoB;QAC7B,oBAAe,GAAf,eAAe,CAAsB;QAGrD,IAAI,CAAC,QAAQ,GAAG,eAAe,CAAC,OAAO,CACrC,SAAS,CAAC,KAAK,EACf,IAAI,CAAC,WAAW,EAAE,CACnB,CAAC;IACJ,CAAC;IAEQ,KAAK,CAAC,UAAU,CAAC,OAAgB;QACxC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACvD,OAAO,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IACpC,CAAC;IAEQ,KAAK,CAAC,WAAW,CAAC,KAAe;QACxC,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACjD,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE;YACpC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;YACtB,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;SACrB,CAAC,CAAC;QACH,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACpC,CAAC;IAEQ,KAAK,CAAC,iBAAiB,CAC9B,KAAc,EACd,OAAgB,EAChB,aAAwB;QAExB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAChE,OAAO,SAAS,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,wBAAwB,CAC5B,KAAc,EACd,OAAgB;QAEhB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAEhE,OAAO,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;IAC7B,CAAC;IAEQ,iBAAiB,CAAC,EACzB,aAAa,EACb,SAAS,GACM;QACf,OAAO,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,OAAO,CAC9C,SAAS,EACT,aAAa,CAAC,QAAQ,EAAE,CACzB,CAAC;IACJ,CAAC;IAEQ,kBAAkB,CAAC,EAC1B,aAAa,EACb,SAAS,GACM;QACf,OAAO,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,QAAQ,CAC/C,SAAS,EACT,aAAa,CAAC,QAAQ,EAAE,CACzB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,cAAc;QAClB,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;QACtD,OAAO,WAAW,CAAC,QAAQ,EAAE,CAAC;IAChC,CAAC;CACF;AAED,iEAAiE;AACjE,MAAM,OAAO,sBACX,SAAQ,eAAyB;IAIf;IACA;IACA;IACA;IAJlB,YACkB,SAAoB,EACpB,aAAoC,EACpC,SAA6B,EAC7B,kBAAuB,iBAAiB;QAExD,KAAK,CAAC,SAAS,EAAE,aAAa,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;QAL5C,cAAS,GAAT,SAAS,CAAW;QACpB,kBAAa,GAAb,aAAa,CAAuB;QACpC,cAAS,GAAT,SAAS,CAAoB;QAC7B,oBAAe,GAAf,eAAe,CAAyB;IAG1D,CAAC;IAEQ,KAAK,CAAC,iBAAiB,CAC9B,MAAe,EACf,QAAiB,EACjB,cAAyB;QAEzB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,KAAK,CAAC,wBAAwB,CAC5B,MAAe,EACf,QAAiB;QAEjB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,MAAc;QACnC,MAAM,wBAAwB,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACrE,6CAA6C;QAC7C,IAAI,wBAAwB,CAAC,UAAU,CAAC,4BAA4B,CAAC,EAAE,CAAC;YACtE,OAAO,MAAM,CAAC,IAAI,CAChB,OAAO,CAAC,gBAAgB,CAAC,wBAAwB,CAAC,CAAC,EACnD,KAAK,CACN,CAAC;YACF,wCAAwC;QAC1C,CAAC;aAAM,CAAC;YACN,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,wBAAwB,CAAC,EAAE,KAAK,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IAED,KAAK,CAAC,aAAa;QACjB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACxC,MAAM,OAAO,GAAa,MAAM,OAAO,CAAC,GAAG,CACzC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAC7C,CAAC;QACF,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACrE,CAAC;IAED,gBAAgB;QACd,OAAO,IAAI,CAAC,cAAc,EAAE,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,yBAAyB;QAC7B,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC;QAC/C,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,2CAA2C;YAC3C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,uCAAuC,GAAG,EAAE,CAAC,CAAC;YAChE,OAAO,OAAO,CAAC;QACjB,CAAC;IACH,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,EAC3B,WAAW,EACX,SAAS,EACT,MAAM,GACoB;QAC1B,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,yBAAyB,EAAE,CAAC;QAC/D,MAAM,sBAAsB,GAAG,sBAAsB,CACnD,eAAe,EACf,0BAA0B,CAC3B,CAAC;QACF,6EAA6E;QAC7E,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAC5B,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;YACpE,OAAO,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC;QACjE,CAAC;QAED,MAAM,CACJ,CAAC,SAAS,CAAC,MAAM,CAAC,EAClB,mDAAmD,CACpD,CAAC;QACF,MAAM,CAAC,SAAS,EAAE,sDAAsD,CAAC,CAAC;QAE1E,MAAM,YAAY,GAAG,gBAAgB,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC,CAAC;QACzE,MAAM,CAAC,QAAQ,EAAE,GAAG,SAAS,CAAC,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CACtE,WAAW,EACX,YAAY,EACZ,MAAM,CAAC,QAAQ,EAAE,CAClB,CAAC;QACF,MAAM,CAAC,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC;QAE/B,MAAM,cAAc,GAAY,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACxD,cAAc,EAAE,KAAK,CAAC,CAAC,CAAC;YACxB,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;SACpC,CAAC,CAAC,CAAC;QAEJ,wFAAwF;QACxF,MAAM,aAAa,GACjB,cAAc,CAAC,MAAM,GAAG,CAAC;YACvB,CAAC,CAAC;gBACE,cAAc,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,sEAAsE;gBACxH,MAAM,EACJ,cAAc,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,MAAM;aACjE;YACH,CAAC,CAAC,SAAS,CAAC;QAEhB,OAAO;YACL,QAAQ,EAAE;gBACR,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;aACrC;YACD,aAAa;SACd,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,wBAAwB,CAC5B,EACE,aAAa,EACb,WAAW,EACX,SAAS,EACT,aAAa,GACQ,EACvB,WAAW,GAAG,EAAE;QAEhB,IAAI,CAAC,aAAa;YAChB,aAAa,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC;gBAChD,WAAW;gBACX,SAAS;gBACT,MAAM,EAAE,MAAM,CAAC,aAAa,CAAC;aAC9B,CAAC,CAAC;QAEL,0BAA0B;QAC1B,WAAW,IAAI,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC;QAE7C,yFAAyF;QACzF,IACE,CAAC,aAAa,CAAC,aAAa,EAAE,cAAc;YAC5C,gBAAgB,CAAC,aAAa,CAAC,aAAa,EAAE,cAAc,CAAC,EAC7D,CAAC;YACD,WAAW,IAAI,aAAa,CAAC,aAAa,EAAE,MAAM,IAAI,EAAE,CAAC;QAC3D,CAAC;QAED,MAAM,YAAY,GAAG,gBAAgB,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC,CAAC;QACzE,OAAO,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CACtC,wCAAwC,CACzC,CAAC,WAAW,EAAE,YAAY,EAAE,aAAa,EAAE;YAC1C,KAAK,EAAE,WAAW,CAAC,QAAQ,EAAE;SAC9B,CAAC,CAAC;IACL,CAAC;CACF;AAED,MAAM,2BACJ,SAAQ,sBAAsB;IAOZ;IACA;IACA;IANF,kBAAkB,CAAc;IACtC,mBAAmB,CAAW;IAExC,YACkB,SAAoB,EACpB,aAAoC,EACpC,SAA6B;QAE7C,KAAK,CAAC,SAAS,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC;QAJ3B,cAAS,GAAT,SAAS,CAAW;QACpB,kBAAa,GAAb,aAAa,CAAuB;QACpC,cAAS,GAAT,SAAS,CAAoB;QAG7C,IAAI,CAAC,kBAAkB,GAAG,oBAAoB,CAAC,OAAO,CACpD,SAAS,CAAC,KAAK,EACf,IAAI,CAAC,WAAW,EAAE,CACnB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,sBAAsB;QAC1B,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC9B,IAAI,CAAC,mBAAmB,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,CAAC;QACnE,CAAC;QACD,OAAO,IAAI,CAAC,mBAAoB,CAAC;IACnC,CAAC;IAES,KAAK,CAAC,sBAAsB;QACpC,OAAO,IAAI,eAAe,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,EAAE;YAC7D,KAAK,EAAE,MAAM,IAAI,CAAC,sBAAsB,EAAE;SAC3C,CAAC,CAAC;IACL,CAAC;IAEQ,KAAK,CAAC,UAAU,CAAC,OAAgB;QACxC,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAChE,OAAO,mBAAmB,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IACjD,CAAC;IAEQ,gBAAgB;QACvB,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC/C,CAAC;IAEQ,WAAW,CAAC,KAAe;QAClC,OAAO,IAAI,CAAC,sBAAsB,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IACzE,CAAC;IAEQ,iBAAiB,CACxB,KAAc,EACd,OAAgB,EAChB,aAAwB;QAExB,OAAO,IAAI,CAAC,sBAAsB,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAC9C,CAAC,CAAC,iBAAiB,CAAC,KAAK,EAAE,OAAO,EAAE,aAAa,CAAC,CACnD,CAAC;IACJ,CAAC;IAEQ,KAAK,CAAC,wBAAwB,CACrC,KAAc,EACd,OAAgB;QAEhB,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAEvD,OAAO,UAAU,CAAC,wBAAwB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC7D,CAAC;IAEQ,iBAAiB,CACxB,MAAsB;QAEtB,OAAO,IAAI,CAAC,sBAAsB,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAC9C,CAAC,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAC5B,CAAC;IACJ,CAAC;IAEQ,kBAAkB,CACzB,MAAsB;QAEtB,OAAO,IAAI,CAAC,sBAAsB,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAC9C,CAAC,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAC7B,CAAC;IACJ,CAAC;CACF;AAED,yCAAyC;AACzC,MAAM,OAAO,uBACX,SAAQ,2BAA2B;IAMjB;IACA;IACA;IALF,kBAAkB,CAAqB;IAEvD,YACkB,SAAoB,EACpB,aAAoC,EACpC,SAA6B;QAE7C,KAAK,CAAC,SAAS,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC;QAJ3B,cAAS,GAAT,SAAS,CAAW;QACpB,kBAAa,GAAb,aAAa,CAAuB;QACpC,cAAS,GAAT,SAAS,CAAoB;QAG7C,IAAI,CAAC,kBAAkB,GAAG,2BAA2B,CAAC,OAAO,CAC3D,SAAS,CAAC,KAAK,EACf,IAAI,CAAC,WAAW,EAAE,CACnB,CAAC;IACJ,CAAC;IAEQ,KAAK,CAAC,sBAAsB;QACnC,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC9B,IAAI,CAAC,mBAAmB,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE,CAAC;QAC1E,CAAC;QACD,OAAO,IAAI,CAAC,mBAAoB,CAAC;IACnC,CAAC;CACF;AAED,MAAM,OAAO,2BACX,SAAQ,uBAAuB;IAG/B,iBAAiB;QACf,OAAO,gCAAgC,CAAC,OAAO,CAC7C,IAAI,CAAC,SAAS,CAAC,KAAK,EACpB,IAAI,CAAC,WAAW,EAAE,CACnB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,OAAgB;QACjC,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC,kBAAkB,EAAE,CAAC;QAExE,OAAO,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACvC,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,MAAc;QACxC,MAAM,yBAAyB,GAC7B,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;QAE1D,uDAAuD;QACvD,2DAA2D;QAC3D,wEAAwE;QACxE,IAAI,yBAAyB,KAAK,mBAAmB,EAAE,CAAC;YACtD,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YACrE,OAAO,gBAAgB,CAAC,aAAa,CAAC,CAAC;QACzC,CAAC;QAED,OAAO,gBAAgB,CAAC,yBAAyB,CAAC,CAAC;IACrD,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,MAAc,EAAE,MAAe;QACnD,MAAM,cAAc,GAClB,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QAExD,OAAO,cAAc;aAClB,GAAG,CAAC,CAAC,aAAa,EAAE,EAAE,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;aACvD,QAAQ,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,kBAAkB,CACtB,MAAe,EACf,MAAc,EACd,SAAkB,EAClB,MAAiB,EACjB,MAAe;QAEf,4FAA4F;QAC5F,mGAAmG;QACnG,8CAA8C;QAC9C,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,SAAS,GAAG,kBAAkB,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;YACzE,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;YAE3D,OAAO;gBACL;oBACE,QAAQ,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,EAAE;iBACpD;aACF,CAAC;QACJ,CAAC;QAED,MAAM,cAAc,GAAG,qBAAqB,CAAC,OAAO,CAClD,MAAM,EACN,IAAI,CAAC,WAAW,EAAE,CACnB,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,mBAAmB,CACrD,MAAM,EACN,gBAAgB,CAAC,SAAS,CAAC,EAC3B,MAAM,CACP,CAAC;QAEF,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YAC5B,QAAQ,EAAE;gBACR,cAAc,EACZ,KAAK,CAAC,KAAK,KAAK,eAAe,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK;gBACvE,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;aACxC;SACF,CAAC,CAAC,CAAC;IACN,CAAC;IAED;;OAEG;IACH,mBAAmB,CACjB,MAAc,EACd,MAAiB,EACjB,MAAe,EACf,MAA4B;QAE5B,kGAAkG;QAClG,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CACzB,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CACf,CAAC,KAAK,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,EACxE,EAAE,CACH,CAAC;QAEF,OAAO,IAAI,CAAC,iBAAiB,EAAE,CAAC,mBAAmB,CAAC,SAAS,CAC3D,MAAM,EACN,MAAM,EACN,MAAM,EACN;YACE,KAAK;SACN,CACF,CAAC;IACJ,CAAC;CACF;AAED,MAAM,OAAO,2BACX,SAAQ,uBAAuB;IAG/B;;;;OAIG;IACM,KAAK,CAAC,gBAAgB;QAC7B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,sBAAsB,EAAE,CAAC;QACpD,OAAO,OAAO,CAAC,cAAc,EAAE,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,sBAAsB,EAAE,CAAC;QACzD,MAAM,SAAS,GAAG,mBAAmB,CAAC,OAAO,CAC3C,YAAY,EACZ,IAAI,CAAC,WAAW,EAAE,CACnB,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAChE,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,0EAA0E;QAC1E,6EAA6E;QAC7E,gCAAgC;QAChC,8FAA8F;QAC9F,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YAEpE,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;QAC1B,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,gBAAgB,CAAC;QAC1B,CAAC;IACH,CAAC;CACF;AAED,MAAM,OAAO,6BACX,SAAQ,2BAA2B;IAMjB;IACA;IACA;IALF,kBAAkB,CAAuB;IAEzD,YACkB,SAAoB,EACpB,aAAoC,EACpC,SAA6B;QAE7C,KAAK,CAAC,SAAS,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC;QAJ3B,cAAS,GAAT,SAAS,CAAW;QACpB,kBAAa,GAAb,aAAa,CAAuB;QACpC,cAAS,GAAT,SAAS,CAAoB;QAG7C,IAAI,CAAC,kBAAkB,GAAG,6BAA6B,CAAC,OAAO,CAC7D,SAAS,CAAC,KAAK,EACf,IAAI,CAAC,WAAW,EAAE,CACnB,CAAC;IACJ,CAAC;IAEQ,KAAK,CAAC,sBAAsB;QACnC,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC9B,IAAI,CAAC,mBAAmB,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE,CAAC;QAC1E,CAAC;QACD,OAAO,IAAI,CAAC,mBAAoB,CAAC;IACnC,CAAC;IAEQ,KAAK,CAAC,gBAAgB;QAC7B,MAAM,KAAK,GAAG,gBAAgB,CAAC,OAAO,CACpC,MAAM,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,EACrC,IAAI,CAAC,WAAW,EAAE,CACnB,CAAC;QACF,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAC5D,OAAO,OAAO,CAAC,QAAQ,EAAE,CAAC;IAC5B,CAAC;CACF;AAED,MAAM,OAAO,4BACX,SAAQ,sBAAsB;IAMZ;IACA;IACA;IAHlB,YACkB,SAAoB,EACpB,aAAoC,EACpC,SAA6B;QAE7C,KAAK,CAAC,SAAS,EAAE,aAAa,EAAE,SAAS,EAAE,mBAAmB,CAAC,CAAC;QAJhD,cAAS,GAAT,SAAS,CAAW;QACpB,kBAAa,GAAb,aAAa,CAAuB;QACpC,cAAS,GAAT,SAAS,CAAoB;IAG/C,CAAC;IAEQ,KAAK,CAAC,gBAAgB;QAC7B,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;QACtD,OAAO,WAAW,CAAC,QAAQ,EAAE,CAAC;IAChC,CAAC;CACF;AAED,MAAe,uBACb,SAAQ,uBAAuB;IAMb;IACA;IACA;IALF,SAAS,CAAY;IAErC,YACkB,SAAoB,EACpB,aAAoC,EACpC,SAA6B;QAE7C,KAAK,CAAC,SAAS,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC;QAJ3B,cAAS,GAAT,SAAS,CAAW;QACpB,kBAAa,GAAb,aAAa,CAAuB;QACpC,cAAS,GAAT,SAAS,CAAoB;QAG7C,IAAI,CAAC,SAAS,GAAG,kBAAkB,CAAC,OAAO,CACzC,SAAS,CAAC,KAAK,EACf,IAAI,CAAC,WAAW,EAAE,CACnB,CAAC;IACJ,CAAC;IAID,KAAK,CAAC,SAAS;QACb,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC;QACvD,OAAO,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;IACxC,CAAC;IAEQ,KAAK,CAAC,gBAAgB;QAC7B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,+EAA+E;QAC/E,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,WAAW,EAAE,CAAC;QAC/C,OAAO,WAAW,CAAC,QAAQ,EAAE,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACxE,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,eAAe;QACnB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACpE,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACxE,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,eAAe;QACnB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACpE,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC1B,CAAC;CACF;AAED,MAAe,8BACb,SAAQ,uBAAuB;IAMb;IACA;IACA;IALC,gBAAgB,CAAmB;IAEtD,YACkB,SAAoB,EACpB,aAAoC,EACpC,SAA6B;QAE7C,KAAK,CAAC,SAAS,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC;QAJ3B,cAAS,GAAT,SAAS,CAAW;QACpB,kBAAa,GAAb,aAAa,CAAuB;QACpC,cAAS,GAAT,SAAS,CAAoB;QAI7C,IAAI,CAAC,gBAAgB,GAAG,yBAAyB,CAAC,OAAO,CACvD,SAAS,CAAC,KAAK,EACf,IAAI,CAAC,WAAW,EAAE,CACnB,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACM,KAAK,CAAC,gBAAgB;QAC7B,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC;QAC7D,OAAO,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;IACzC,CAAC;IAED,KAAK,CAAC,SAAS;QACb,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC;QACxD,OAAO,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;IACxC,CAAC;IAID,KAAK,CAAC,YAAY;QAChB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACxE,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,eAAe;QACnB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACpE,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACxE,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,eAAe;QACnB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACpE,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC1B,CAAC;CACF;AAED,4CAA4C;AAC5C,MAAM,OAAO,0BAA2B,SAAQ,8BAAuC;IAC3E,aAAa,CAAC,UAAmB;QACzC,OAAO,gBAAgB,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;IAClE,CAAC;CACF;AAED,MAAM,OAAO,4BACX,SAAQ,8BAAyC;IAGvC,aAAa,CAAC,UAAmB;QACzC,OAAO,kBAAkB,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;IACpE,CAAC;IAED,wEAAwE;IACxE,KAAK,CAAC,aAAa;QACjB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAElE,OAAO;YACL,kBAAkB,EAAE,MAAM,CAAC,UAAU,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CAAC;YACpE,SAAS,EAAE,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;YAClD,kBAAkB,EAAE,MAAM,CAAC,UAAU,CAAC,kBAAkB,CAAC;YACzD,YAAY,EAAE,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;YACxD,QAAQ,EAAE,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;SACjD,CAAC;IACJ,CAAC;IACD,KAAK,CAAC,sBAAsB,CAC1B,YAAoB;QAEpB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,OAAO,MAAM,CAAC,mBAAmB,CAAC,YAAY,CAC5C,IAAI,CAAC,SAAS,CAAC,KAAK,EACpB,YAAY,CACb,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,+BAA+B,CACnC,qBAA6B;QAE7B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,OAAO,MAAM,CAAC,mBAAmB,CAAC,qBAAqB,CACrD,IAAI,CAAC,SAAS,CAAC,KAAK,EACpB,qBAAqB,CACtB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,mBAAmB,CACvB,SAAiB,EACjB,kBAA0B;QAE1B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,OAAO,MAAM,CAAC,mBAAmB,CAAC,SAAS,CAAC;YAC1C,SAAS;YACT,kBAAkB;YAClB,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK;SAC7B,CAAC,CAAC;IACL,CAAC;CACF;AAED,qCAAqC;AACrC,MAAM,OAAO,mBAAoB,SAAQ,uBAAgC;IAC7D,aAAa,CAAC,UAAkB;QACxC,OAAO,gBAAgB,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;IAClE,CAAC;CACF;AAED,MAAM,OAAO,qBACX,SAAQ,uBAAkC;IAGhC,aAAa,CAAC,UAAkB;QACxC,OAAO,kBAAkB,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;IACpE,CAAC;IAED,KAAK,CAAC,aAAa;QACjB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAElE,OAAO;YACL,kBAAkB,EAAE,MAAM,CAAC,UAAU,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CAAC;YACpE,SAAS,EAAE,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;YAClD,kBAAkB,EAAE,MAAM,CAAC,UAAU,CAAC,kBAAkB,CAAC;YACzD,YAAY,EAAE,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;YACxD,QAAQ,EAAE,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;SACjD,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,sBAAsB,CAC1B,YAAoB;QAEpB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,OAAO,MAAM,CAAC,mBAAmB,CAAC,YAAY,CAC5C,IAAI,CAAC,SAAS,CAAC,KAAK,EACpB,YAAY,CACb,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,+BAA+B,CACnC,qBAA6B;QAE7B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,OAAO,MAAM,CAAC,mBAAmB,CAAC,qBAAqB,CACrD,IAAI,CAAC,SAAS,CAAC,KAAK,EACpB,qBAAqB,CACtB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,mBAAmB,CACvB,SAAiB,EACjB,kBAA0B;QAE1B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,OAAO,MAAM,CAAC,mBAAmB,CAAC,SAAS,CAAC;YAC1C,SAAS;YACT,kBAAkB;YAClB,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK;SAC7B,CAAC,CAAC;IACL,CAAC;CACF;AAED,gCAAgC;AAChC,MAAM,OAAO,mBACX,SAAQ,2BAA2B;IAG1B,KAAK,CAAC,UAAU,CAAC,OAAgB;QACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QACpC,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAEnD,OAAO,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IACpC,CAAC;IAEQ,KAAK,CAAC,iBAAiB;QAC9B,OAAO,KAAK,CAAC;IACf,CAAC;IAEQ,KAAK,CAAC,wBAAwB,CACrC,MAAe,EACf,QAAiB;QAEjB,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACM,mBAAmB,CAC1B,MAAc,EACd,MAAiB,EACjB,MAAe,EACf,MAA4B;QAE5B,kGAAkG;QAClG,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CACzB,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CACf,CAAC,KAAK,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK;QACxE,+GAA+G;QAC/G,MAAM,CAAC,MAAM,CAAC,CACf,CAAC;QAEF,OAAO,IAAI,CAAC,iBAAiB,EAAE,CAAC,mBAAmB,CAAC,SAAS,CAC3D,MAAM,EACN,MAAM,EACN,MAAM,EACN;YACE,KAAK;SACN,CACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,wBAAwB,CAAC,EAC7B,aAAa,EACb,WAAW,EACX,SAAS,EACT,aAAa,GACQ;QACrB,OAAO,KAAK,CAAC,wBAAwB,CACnC;YACE,aAAa;YACb,WAAW;YACX,SAAS;YACT,aAAa;SACd;QACD,8DAA8D;QAC9D,MAAM,CAAC,aAAa,CAAC,CACtB,CAAC;IACJ,CAAC;IAEQ,KAAK,CAAC,gBAAgB;QAC7B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAC1E,OAAO,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IACpC,CAAC;CACF;AAED,MAAM,OAAO,gBACX,SAAQ,eAAe;IAML;IACA;IACA;IALlB,MAAM,CAAU;IAEhB,YACkB,SAAoB,EACpB,aAAoC,EACpC,SAA6B;QAE7C,KAAK,CAAC,SAAS,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC;QAJ3B,cAAS,GAAT,SAAS,CAAW;QACpB,kBAAa,GAAb,aAAa,CAAuB;QACpC,cAAS,GAAT,SAAS,CAAoB;QAI7C,IAAI,CAAC,MAAM,GAAG,gBAAgB,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;IAC9E,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,MAAe;QAC7B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;QACzD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAEzD,OAAO;YACL,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC7B,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;SAC9B,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,mBAAmB,CACvB,MAAe,EACf,IAAY,EACZ,IAAY;QAEZ,OAAO,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,SAAS,CAC9C,MAAM,EACN,IAAI,CAAC,QAAQ,EAAE,EACf,IAAI,CAAC,QAAQ,EAAE,CAChB,CAAC;IACJ,CAAC;CACF;AAED,MAAM,OAAO,kBACX,SAAQ,eAAe;IAML;IACA;IACA;IALlB,QAAQ,CAAY;IAEpB,YACkB,SAAoB,EACpB,aAAoC,EACpC,SAA6B;QAE7C,KAAK,CAAC,SAAS,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC;QAJ3B,cAAS,GAAT,SAAS,CAAW;QACpB,kBAAa,GAAb,aAAa,CAAuB;QACpC,cAAS,GAAT,SAAS,CAAoB;QAI7C,IAAI,CAAC,QAAQ,GAAG,kBAAkB,CAAC,OAAO,CACxC,SAAS,CAAC,KAAK,EACf,IAAI,CAAC,WAAW,EAAE,CACnB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,MAAe;QACjC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAEtD,MAAM,UAAU,GAAsB;YACpC,kBAAkB,EAAE,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CAAC;YAChE,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;YAC9C,kBAAkB,EAAE,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC;YACrD,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;YACpD,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;SAC7C,CAAC;QAEF,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,gBAAgB;IAChB,KAAK,CAAC,sBAAsB,CAAC,MAAe;QAC1C,OAAO,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;IAChE,CAAC;IAED,KAAK,CAAC,sBAAsB,CAC1B,MAAe,EACf,YAAoB;QAEpB,OAAO,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,YAAY,CACnD,MAAM,EACN,YAAY,CAAC,QAAQ,EAAE,CACxB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,+BAA+B,CACnC,MAAe,EACf,qBAA6B;QAE7B,OAAO,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,qBAAqB,CAC5D,MAAM,EACN,qBAAqB,CAAC,QAAQ,EAAE,CACjC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,mBAAmB,CACvB,SAAiB,EACjB,kBAA0B,EAC1B,MAAe;QAEf,OAAO,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,SAAS,CAAC;YACjD,SAAS,EAAE,SAAS,CAAC,QAAQ,EAAE;YAC/B,kBAAkB,EAAE,kBAAkB,CAAC,QAAQ,EAAE;YACjD,MAAM;SACP,CAAC,CAAC;IACL,CAAC;CACF"}
1
+ {"version":3,"file":"EvmTokenAdapter.js","sourceRoot":"","sources":["../../../src/token/adapters/EvmTokenAdapter.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { Address, Domain, Numberish } from '@hyperlane-xyz/utils';
2
+ import { EthJsonRpcBlockParameterTag } from '../../metadata/chainMetadataTypes.js';
2
3
  import { TokenMetadata } from '../types.js';
3
4
  export interface TransferParams {
4
5
  weiAmountOrId: Numberish;
@@ -51,7 +52,7 @@ export interface IMovableCollateralRouterAdapter<Tx> extends ITokenAdapter<Tx> {
51
52
  isRebalancer(address: Address): Promise<boolean>;
52
53
  isBridgeAllowed(domain: Domain, bridge: Address): Promise<boolean>;
53
54
  getAllowedDestination(domain: Domain): Promise<Address>;
54
- getRebalanceQuotes(bridge: Address, domain: Domain, recipient: Address, amount: Numberish, isWarp: boolean): Promise<InterchainGasQuote[]>;
55
+ getRebalanceQuotes(bridge: Address, domain: Domain, recipient: Address, amount: Numberish): Promise<InterchainGasQuote[]>;
55
56
  getWrappedTokenAddress(): Promise<Address>;
56
57
  populateRebalanceTx(domain: Domain, amount: Numberish, bridge: Address, quotes: InterchainGasQuote[]): Promise<Tx>;
57
58
  }
@@ -62,7 +63,9 @@ export interface IHypTokenAdapter<Tx> extends ITokenAdapter<Tx> {
62
63
  domain: Domain;
63
64
  address: Buffer;
64
65
  }>>;
65
- getBridgedSupply(): Promise<bigint | undefined>;
66
+ getBridgedSupply(options?: {
67
+ blockTag?: number | EthJsonRpcBlockParameterTag;
68
+ }): Promise<bigint | undefined>;
66
69
  quoteTransferRemoteGas(params: QuoteTransferRemoteParams): Promise<InterchainGasQuote>;
67
70
  populateTransferRemoteTx(p: TransferRemoteParams): Promise<Tx>;
68
71
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ITokenAdapter.d.ts","sourceRoot":"","sources":["../../../src/token/adapters/ITokenAdapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ITokenAdapter.d.ts","sourceRoot":"","sources":["../../../src/token/adapters/ITokenAdapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { EthJsonRpcBlockParameterTag } from '../../metadata/chainMetadataTypes.js';
2
+ export declare function buildBlockTagOverrides(blockTag?: number | EthJsonRpcBlockParameterTag): {
3
+ blockTag: number | EthJsonRpcBlockParameterTag;
4
+ } | {
5
+ blockTag?: undefined;
6
+ };
7
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/token/adapters/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,sCAAsC,CAAC;AAEnF,wBAAgB,sBAAsB,CACpC,QAAQ,CAAC,EAAE,MAAM,GAAG,2BAA2B;;;;EAGhD"}
@@ -0,0 +1,4 @@
1
+ export function buildBlockTagOverrides(blockTag) {
2
+ return blockTag !== undefined ? { blockTag } : {};
3
+ }
4
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/token/adapters/utils.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,sBAAsB,CACpC,QAA+C;IAE/C,OAAO,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACpD,CAAC"}
@@ -0,0 +1,29 @@
1
+ import { BigNumber, providers } from 'ethers';
2
+ import { IMessageRecipient } from '@hyperlane-xyz/core';
3
+ import { Address } from '@hyperlane-xyz/utils';
4
+ export declare const DEFAULT_CALL_GAS_FALLBACK: BigNumber;
5
+ export interface EstimateHandleGasParams {
6
+ origin: number;
7
+ sender: string;
8
+ body: string;
9
+ mailbox: Address;
10
+ recipient: IMessageRecipient;
11
+ }
12
+ export interface EstimateCallGasParams {
13
+ provider: providers.Provider;
14
+ to: Address;
15
+ data: string;
16
+ value?: BigNumber;
17
+ fallback?: BigNumber;
18
+ }
19
+ /**
20
+ * Estimates gas for calling handle() on a recipient contract.
21
+ * Returns null if estimation fails (e.g., call would revert).
22
+ */
23
+ export declare function estimateHandleGasForRecipient(params: EstimateHandleGasParams): Promise<BigNumber | null>;
24
+ /**
25
+ * Estimates gas for a single contract call.
26
+ * Returns fallback value (default 50k) if estimation fails.
27
+ */
28
+ export declare function estimateCallGas(params: EstimateCallGasParams): Promise<BigNumber>;
29
+ //# sourceMappingURL=gas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gas.d.ts","sourceRoot":"","sources":["../../src/utils/gas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAE9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C,eAAO,MAAM,yBAAyB,WAAyB,CAAC;AAEhE,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,iBAAiB,CAAC;CAC9B;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,SAAS,CAAC,QAAQ,CAAC;IAC7B,EAAE,EAAE,OAAO,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED;;;GAGG;AACH,wBAAsB,6BAA6B,CACjD,MAAM,EAAE,uBAAuB,GAC9B,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CAY3B;AAED;;;GAGG;AACH,wBAAsB,eAAe,CACnC,MAAM,EAAE,qBAAqB,GAC5B,OAAO,CAAC,SAAS,CAAC,CAYpB"}
@@ -0,0 +1,34 @@
1
+ import { BigNumber } from 'ethers';
2
+ export const DEFAULT_CALL_GAS_FALLBACK = BigNumber.from(50_000);
3
+ /**
4
+ * Estimates gas for calling handle() on a recipient contract.
5
+ * Returns null if estimation fails (e.g., call would revert).
6
+ */
7
+ export async function estimateHandleGasForRecipient(params) {
8
+ try {
9
+ // await required for catch to handle promise rejection
10
+ return await params.recipient.estimateGas.handle(params.origin, params.sender, params.body, { from: params.mailbox });
11
+ }
12
+ catch {
13
+ return null;
14
+ }
15
+ }
16
+ /**
17
+ * Estimates gas for a single contract call.
18
+ * Returns fallback value (default 50k) if estimation fails.
19
+ */
20
+ export async function estimateCallGas(params) {
21
+ const fallback = params.fallback ?? DEFAULT_CALL_GAS_FALLBACK;
22
+ try {
23
+ // await required for catch to handle promise rejection
24
+ return await params.provider.estimateGas({
25
+ to: params.to,
26
+ data: params.data,
27
+ value: params.value,
28
+ });
29
+ }
30
+ catch {
31
+ return fallback;
32
+ }
33
+ }
34
+ //# sourceMappingURL=gas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gas.js","sourceRoot":"","sources":["../../src/utils/gas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAa,MAAM,QAAQ,CAAC;AAK9C,MAAM,CAAC,MAAM,yBAAyB,GAAG,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAkBhE;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,6BAA6B,CACjD,MAA+B;IAE/B,IAAI,CAAC;QACH,uDAAuD;QACvD,OAAO,MAAM,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,MAAM,CAC9C,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,IAAI,EACX,EAAE,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE,CACzB,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,MAA6B;IAE7B,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,yBAAyB,CAAC;IAC9D,IAAI,CAAC;QACH,uDAAuD;QACvD,OAAO,MAAM,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC;YACvC,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,KAAK,EAAE,MAAM,CAAC,KAAK;SACpB,CAAC,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,QAAQ,CAAC;IAClB,CAAC;AACH,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@hyperlane-xyz/sdk",
3
3
  "description": "The official SDK for the Hyperlane Network",
4
- "version": "22.0.0",
4
+ "version": "23.0.0",
5
5
  "dependencies": {
6
6
  "@arbitrum/sdk": "^4.0.0",
7
7
  "@aws-sdk/client-s3": "^3.577.0",
@@ -36,13 +36,13 @@
36
36
  "zksync-ethers": "^5.10.0",
37
37
  "zod": "^3.21.2",
38
38
  "@hyperlane-xyz/core": "10.1.5",
39
- "@hyperlane-xyz/aleo-sdk": "22.0.0",
40
- "@hyperlane-xyz/deploy-sdk": "1.2.0",
41
- "@hyperlane-xyz/provider-sdk": "1.2.0",
42
- "@hyperlane-xyz/radix-sdk": "22.0.0",
43
- "@hyperlane-xyz/cosmos-sdk": "22.0.0",
44
- "@hyperlane-xyz/starknet-core": "22.0.0",
45
- "@hyperlane-xyz/utils": "22.0.0"
39
+ "@hyperlane-xyz/aleo-sdk": "23.0.0",
40
+ "@hyperlane-xyz/cosmos-sdk": "23.0.0",
41
+ "@hyperlane-xyz/deploy-sdk": "1.2.1",
42
+ "@hyperlane-xyz/radix-sdk": "23.0.0",
43
+ "@hyperlane-xyz/provider-sdk": "1.2.1",
44
+ "@hyperlane-xyz/utils": "23.0.0",
45
+ "@hyperlane-xyz/starknet-core": "23.0.0"
46
46
  },
47
47
  "devDependencies": {
48
48
  "@ethersproject/providers": "*",
@@ -50,7 +50,7 @@
50
50
  "@nomiclabs/hardhat-waffle": "^2.0.6",
51
51
  "@types/chai-as-promised": "^8",
52
52
  "@types/mocha": "^10.0.1",
53
- "@types/node": "^20.17.0",
53
+ "@types/node": "^24.10.9",
54
54
  "@types/sinon": "^17.0.1",
55
55
  "@types/sinon-chai": "^3.2.12",
56
56
  "@types/ws": "^8.5.5",
@@ -69,8 +69,8 @@
69
69
  "tsx": "^4.19.1",
70
70
  "typescript": "5.8.3",
71
71
  "yaml": "2.4.5",
72
- "@hyperlane-xyz/eslint-config": "^22.0.0",
73
- "@hyperlane-xyz/tsconfig": "^22.0.0"
72
+ "@hyperlane-xyz/eslint-config": "^23.0.0",
73
+ "@hyperlane-xyz/tsconfig": "^23.0.0"
74
74
  },
75
75
  "type": "module",
76
76
  "exports": {