@across-protocol/sdk 3.3.31 → 3.4.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 (163) hide show
  1. package/dist/cjs/clients/BundleDataClient/BundleDataClient.js +8 -2
  2. package/dist/cjs/clients/BundleDataClient/BundleDataClient.js.map +1 -1
  3. package/dist/cjs/clients/BundleDataClient/utils/SuperstructUtils.d.ts +10 -10
  4. package/dist/cjs/gasPriceOracle/adapters/arbitrum.d.ts +2 -1
  5. package/dist/cjs/gasPriceOracle/adapters/arbitrum.js +2 -2
  6. package/dist/cjs/gasPriceOracle/adapters/arbitrum.js.map +1 -1
  7. package/dist/cjs/gasPriceOracle/adapters/ethereum.d.ts +6 -4
  8. package/dist/cjs/gasPriceOracle/adapters/ethereum.js +21 -13
  9. package/dist/cjs/gasPriceOracle/adapters/ethereum.js.map +1 -1
  10. package/dist/cjs/gasPriceOracle/adapters/linea-viem.d.ts +2 -1
  11. package/dist/cjs/gasPriceOracle/adapters/linea-viem.js +16 -10
  12. package/dist/cjs/gasPriceOracle/adapters/linea-viem.js.map +1 -1
  13. package/dist/cjs/gasPriceOracle/adapters/linea.d.ts +2 -1
  14. package/dist/cjs/gasPriceOracle/adapters/linea.js +2 -2
  15. package/dist/cjs/gasPriceOracle/adapters/linea.js.map +1 -1
  16. package/dist/cjs/gasPriceOracle/adapters/polygon.d.ts +21 -1
  17. package/dist/cjs/gasPriceOracle/adapters/polygon.js +45 -5
  18. package/dist/cjs/gasPriceOracle/adapters/polygon.js.map +1 -1
  19. package/dist/cjs/gasPriceOracle/oracle.d.ts +11 -3
  20. package/dist/cjs/gasPriceOracle/oracle.js +29 -27
  21. package/dist/cjs/gasPriceOracle/oracle.js.map +1 -1
  22. package/dist/cjs/providers/types.d.ts +3 -3
  23. package/dist/cjs/relayFeeCalculator/chain-queries/alephZero.d.ts +0 -229
  24. package/dist/cjs/relayFeeCalculator/chain-queries/alephZero.js +2 -12
  25. package/dist/cjs/relayFeeCalculator/chain-queries/alephZero.js.map +1 -1
  26. package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.d.ts +10 -5
  27. package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.js +55 -11
  28. package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.js.map +1 -1
  29. package/dist/cjs/relayFeeCalculator/chain-queries/factory.d.ts +1 -1
  30. package/dist/cjs/relayFeeCalculator/chain-queries/factory.js +4 -5
  31. package/dist/cjs/relayFeeCalculator/chain-queries/factory.js.map +1 -1
  32. package/dist/cjs/relayFeeCalculator/chain-queries/polygon.d.ts +0 -229
  33. package/dist/cjs/relayFeeCalculator/chain-queries/polygon.js +2 -12
  34. package/dist/cjs/relayFeeCalculator/chain-queries/polygon.js.map +1 -1
  35. package/dist/cjs/relayFeeCalculator/relayFeeCalculator.d.ts +1 -1
  36. package/dist/cjs/relayFeeCalculator/relayFeeCalculator.js.map +1 -1
  37. package/dist/cjs/utils/DepositUtils.d.ts +1 -0
  38. package/dist/cjs/utils/DepositUtils.js +5 -1
  39. package/dist/cjs/utils/DepositUtils.js.map +1 -1
  40. package/dist/cjs/utils/Multicall.js +0 -5
  41. package/dist/cjs/utils/Multicall.js.map +1 -1
  42. package/dist/cjs/utils/common.d.ts +1 -8
  43. package/dist/cjs/utils/common.js +1 -83
  44. package/dist/cjs/utils/common.js.map +1 -1
  45. package/dist/esm/clients/BundleDataClient/BundleDataClient.js +16 -3
  46. package/dist/esm/clients/BundleDataClient/BundleDataClient.js.map +1 -1
  47. package/dist/esm/clients/BundleDataClient/utils/SuperstructUtils.d.ts +10 -10
  48. package/dist/esm/gasPriceOracle/adapters/arbitrum.d.ts +10 -1
  49. package/dist/esm/gasPriceOracle/adapters/arbitrum.js +10 -4
  50. package/dist/esm/gasPriceOracle/adapters/arbitrum.js.map +1 -1
  51. package/dist/esm/gasPriceOracle/adapters/ethereum.d.ts +19 -6
  52. package/dist/esm/gasPriceOracle/adapters/ethereum.js +38 -16
  53. package/dist/esm/gasPriceOracle/adapters/ethereum.js.map +1 -1
  54. package/dist/esm/gasPriceOracle/adapters/linea-viem.d.ts +19 -1
  55. package/dist/esm/gasPriceOracle/adapters/linea-viem.js +33 -10
  56. package/dist/esm/gasPriceOracle/adapters/linea-viem.js.map +1 -1
  57. package/dist/esm/gasPriceOracle/adapters/linea.d.ts +2 -1
  58. package/dist/esm/gasPriceOracle/adapters/linea.js +6 -2
  59. package/dist/esm/gasPriceOracle/adapters/linea.js.map +1 -1
  60. package/dist/esm/gasPriceOracle/adapters/polygon.d.ts +27 -1
  61. package/dist/esm/gasPriceOracle/adapters/polygon.js +49 -5
  62. package/dist/esm/gasPriceOracle/adapters/polygon.js.map +1 -1
  63. package/dist/esm/gasPriceOracle/oracle.d.ts +16 -8
  64. package/dist/esm/gasPriceOracle/oracle.js +35 -33
  65. package/dist/esm/gasPriceOracle/oracle.js.map +1 -1
  66. package/dist/esm/providers/types.d.ts +3 -3
  67. package/dist/esm/relayFeeCalculator/chain-queries/alephZero.d.ts +0 -229
  68. package/dist/esm/relayFeeCalculator/chain-queries/alephZero.js +3 -13
  69. package/dist/esm/relayFeeCalculator/chain-queries/alephZero.js.map +1 -1
  70. package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.d.ts +21 -7
  71. package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.js +68 -15
  72. package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.js.map +1 -1
  73. package/dist/esm/relayFeeCalculator/chain-queries/factory.d.ts +1 -1
  74. package/dist/esm/relayFeeCalculator/chain-queries/factory.js +4 -5
  75. package/dist/esm/relayFeeCalculator/chain-queries/factory.js.map +1 -1
  76. package/dist/esm/relayFeeCalculator/chain-queries/polygon.d.ts +0 -229
  77. package/dist/esm/relayFeeCalculator/chain-queries/polygon.js +3 -13
  78. package/dist/esm/relayFeeCalculator/chain-queries/polygon.js.map +1 -1
  79. package/dist/esm/relayFeeCalculator/relayFeeCalculator.d.ts +1 -1
  80. package/dist/esm/relayFeeCalculator/relayFeeCalculator.js.map +1 -1
  81. package/dist/esm/utils/DepositUtils.d.ts +9 -0
  82. package/dist/esm/utils/DepositUtils.js +11 -0
  83. package/dist/esm/utils/DepositUtils.js.map +1 -1
  84. package/dist/esm/utils/Multicall.js +1 -6
  85. package/dist/esm/utils/Multicall.js.map +1 -1
  86. package/dist/esm/utils/common.d.ts +1 -19
  87. package/dist/esm/utils/common.js +3 -95
  88. package/dist/esm/utils/common.js.map +1 -1
  89. package/dist/types/clients/BundleDataClient/BundleDataClient.d.ts.map +1 -1
  90. package/dist/types/clients/BundleDataClient/utils/SuperstructUtils.d.ts +10 -10
  91. package/dist/types/gasPriceOracle/adapters/arbitrum.d.ts +10 -1
  92. package/dist/types/gasPriceOracle/adapters/arbitrum.d.ts.map +1 -1
  93. package/dist/types/gasPriceOracle/adapters/ethereum.d.ts +19 -6
  94. package/dist/types/gasPriceOracle/adapters/ethereum.d.ts.map +1 -1
  95. package/dist/types/gasPriceOracle/adapters/linea-viem.d.ts +19 -1
  96. package/dist/types/gasPriceOracle/adapters/linea-viem.d.ts.map +1 -1
  97. package/dist/types/gasPriceOracle/adapters/linea.d.ts +2 -1
  98. package/dist/types/gasPriceOracle/adapters/linea.d.ts.map +1 -1
  99. package/dist/types/gasPriceOracle/adapters/polygon.d.ts +27 -1
  100. package/dist/types/gasPriceOracle/adapters/polygon.d.ts.map +1 -1
  101. package/dist/types/gasPriceOracle/oracle.d.ts +16 -8
  102. package/dist/types/gasPriceOracle/oracle.d.ts.map +1 -1
  103. package/dist/types/providers/types.d.ts +3 -3
  104. package/dist/types/relayFeeCalculator/chain-queries/alephZero.d.ts +0 -229
  105. package/dist/types/relayFeeCalculator/chain-queries/alephZero.d.ts.map +1 -1
  106. package/dist/types/relayFeeCalculator/chain-queries/baseQuery.d.ts +21 -7
  107. package/dist/types/relayFeeCalculator/chain-queries/baseQuery.d.ts.map +1 -1
  108. package/dist/types/relayFeeCalculator/chain-queries/factory.d.ts +1 -1
  109. package/dist/types/relayFeeCalculator/chain-queries/factory.d.ts.map +1 -1
  110. package/dist/types/relayFeeCalculator/chain-queries/polygon.d.ts +0 -229
  111. package/dist/types/relayFeeCalculator/chain-queries/polygon.d.ts.map +1 -1
  112. package/dist/types/relayFeeCalculator/relayFeeCalculator.d.ts +1 -1
  113. package/dist/types/relayFeeCalculator/relayFeeCalculator.d.ts.map +1 -1
  114. package/dist/types/utils/DepositUtils.d.ts +9 -0
  115. package/dist/types/utils/DepositUtils.d.ts.map +1 -1
  116. package/dist/types/utils/Multicall.d.ts.map +1 -1
  117. package/dist/types/utils/common.d.ts +1 -19
  118. package/dist/types/utils/common.d.ts.map +1 -1
  119. package/package.json +1 -1
  120. package/src/clients/BundleDataClient/BundleDataClient.ts +17 -2
  121. package/src/gasPriceOracle/adapters/arbitrum.ts +13 -6
  122. package/src/gasPriceOracle/adapters/ethereum.ts +43 -12
  123. package/src/gasPriceOracle/adapters/linea-viem.ts +32 -6
  124. package/src/gasPriceOracle/adapters/linea.ts +7 -2
  125. package/src/gasPriceOracle/adapters/polygon.ts +46 -5
  126. package/src/gasPriceOracle/oracle.ts +53 -28
  127. package/src/relayFeeCalculator/chain-queries/alephZero.ts +1 -29
  128. package/src/relayFeeCalculator/chain-queries/baseQuery.ts +73 -20
  129. package/src/relayFeeCalculator/chain-queries/factory.ts +6 -6
  130. package/src/relayFeeCalculator/chain-queries/polygon.ts +1 -29
  131. package/src/relayFeeCalculator/relayFeeCalculator.ts +6 -1
  132. package/src/utils/DepositUtils.ts +12 -0
  133. package/src/utils/Multicall.ts +1 -6
  134. package/src/utils/common.ts +2 -92
  135. package/dist/cjs/gasPriceOracle/adapters/arbitrum-viem.d.ts +0 -3
  136. package/dist/cjs/gasPriceOracle/adapters/arbitrum-viem.js +0 -21
  137. package/dist/cjs/gasPriceOracle/adapters/arbitrum-viem.js.map +0 -1
  138. package/dist/cjs/gasPriceOracle/adapters/ethereum-viem.d.ts +0 -4
  139. package/dist/cjs/gasPriceOracle/adapters/ethereum-viem.js +0 -26
  140. package/dist/cjs/gasPriceOracle/adapters/ethereum-viem.js.map +0 -1
  141. package/dist/cjs/gasPriceOracle/adapters/polygon-viem.d.ts +0 -3
  142. package/dist/cjs/gasPriceOracle/adapters/polygon-viem.js +0 -84
  143. package/dist/cjs/gasPriceOracle/adapters/polygon-viem.js.map +0 -1
  144. package/dist/cjs/package.json +0 -1
  145. package/dist/esm/gasPriceOracle/adapters/arbitrum-viem.d.ts +0 -3
  146. package/dist/esm/gasPriceOracle/adapters/arbitrum-viem.js +0 -20
  147. package/dist/esm/gasPriceOracle/adapters/arbitrum-viem.js.map +0 -1
  148. package/dist/esm/gasPriceOracle/adapters/ethereum-viem.d.ts +0 -4
  149. package/dist/esm/gasPriceOracle/adapters/ethereum-viem.js +0 -21
  150. package/dist/esm/gasPriceOracle/adapters/ethereum-viem.js.map +0 -1
  151. package/dist/esm/gasPriceOracle/adapters/polygon-viem.d.ts +0 -3
  152. package/dist/esm/gasPriceOracle/adapters/polygon-viem.js +0 -82
  153. package/dist/esm/gasPriceOracle/adapters/polygon-viem.js.map +0 -1
  154. package/dist/esm/package.json +0 -1
  155. package/dist/types/gasPriceOracle/adapters/arbitrum-viem.d.ts +0 -4
  156. package/dist/types/gasPriceOracle/adapters/arbitrum-viem.d.ts.map +0 -1
  157. package/dist/types/gasPriceOracle/adapters/ethereum-viem.d.ts +0 -5
  158. package/dist/types/gasPriceOracle/adapters/ethereum-viem.d.ts.map +0 -1
  159. package/dist/types/gasPriceOracle/adapters/polygon-viem.d.ts +0 -4
  160. package/dist/types/gasPriceOracle/adapters/polygon-viem.d.ts.map +0 -1
  161. package/src/gasPriceOracle/adapters/arbitrum-viem.ts +0 -13
  162. package/src/gasPriceOracle/adapters/ethereum-viem.ts +0 -19
  163. package/src/gasPriceOracle/adapters/polygon-viem.ts +0 -86
@@ -539,6 +539,9 @@ var BundleDataClient = (function () {
539
539
  return "continue";
540
540
  }
541
541
  originClient.getDepositsForDestinationChain(destinationChainId).forEach(function (deposit) {
542
+ if ((0, utils_1.isZeroValueDeposit)(deposit)) {
543
+ return;
544
+ }
542
545
  depositCounter++;
543
546
  var relayDataHash = _this.getRelayHashFromEvent(deposit);
544
547
  if (v3RelayHashes[relayDataHash]) {
@@ -549,6 +552,9 @@ var BundleDataClient = (function () {
549
552
  fill: undefined,
550
553
  slowFillRequest: undefined,
551
554
  };
555
+ if (deposit.inputAmount.eq(0)) {
556
+ return;
557
+ }
552
558
  if (deposit.blockNumber >= originChainBlockRange[0] && deposit.blockNumber <= originChainBlockRange[1]) {
553
559
  updateBundleDepositsV3(bundleDepositsV3, deposit);
554
560
  if (deposit.fillDeadline < bundleBlockTimestamps[destinationChainId][1]) {
@@ -597,7 +603,7 @@ var BundleDataClient = (function () {
597
603
  fastFillsReplacingSlowFills = [];
598
604
  return [4, (0, utils_1.forEachAsync)(destinationClient
599
605
  .getFillsForOriginChain(originChainId)
600
- .filter(function (fill) { return fill.blockNumber <= destinationChainBlockRange[1]; }), function (fill) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
606
+ .filter(function (fill) { return fill.blockNumber <= destinationChainBlockRange[1] && !(0, utils_1.isZeroValueDeposit)(fill); }), function (fill) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
601
607
  var relayDataHash, historicalDeposit, matchedDeposit;
602
608
  return tslib_1.__generator(this, function (_a) {
603
609
  switch (_a.label) {
@@ -655,7 +661,7 @@ var BundleDataClient = (function () {
655
661
  _g.sent();
656
662
  return [4, (0, utils_1.forEachAsync)(destinationClient
657
663
  .getSlowFillRequestsForOriginChain(originChainId)
658
- .filter(function (request) { return request.blockNumber <= destinationChainBlockRange[1]; }), function (slowFillRequest) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
664
+ .filter(function (request) { return request.blockNumber <= destinationChainBlockRange[1] && !(0, utils_1.isZeroValueDeposit)(request); }), function (slowFillRequest) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
659
665
  var relayDataHash, matchedDeposit, historicalDeposit, matchedDeposit;
660
666
  var _a, _b;
661
667
  return tslib_1.__generator(this, function (_c) {
@@ -1 +1 @@
1
- {"version":3,"file":"BundleDataClient.js","sourceRoot":"","sources":["../../../../src/clients/BundleDataClient/BundleDataClient.ts"],"names":[],"mappings":";;;;AAAA,0DAAuB;AACvB,+CAe0B;AAE1B,qCAeqB;AAErB,iCAYiB;AAGJ,QAAA,sBAAsB,GAAG,mBAAW,CAAC;AAKlD,SAAS,uBAAuB,CAAC,IAA+B,EAAE,OAA2B;;IACnF,IAAA,aAAa,GAAiB,OAAO,cAAxB,EAAE,UAAU,GAAK,OAAO,WAAZ,CAAa;IAC9C,IAAI,CAAC,CAAA,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAG,aAAa,CAAC,0CAAG,UAAU,CAAC,CAAA,EAAE;QACxC,IAAA,cAAM,EAAC,IAAI,EAAE,CAAC,aAAa,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC;KAC/C;IACD,IAAI,CAAC,aAAa,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAChD,CAAC;AAED,SAAS,sBAAsB,CAAC,IAAsB,EAAE,OAA2B;;IACzE,IAAA,aAAa,GAAiB,OAAO,cAAxB,EAAE,UAAU,GAAK,OAAO,WAAZ,CAAa;IAC9C,IAAI,CAAC,CAAA,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAG,aAAa,CAAC,0CAAG,UAAU,CAAC,CAAA,EAAE;QACxC,IAAA,cAAM,EAAC,IAAI,EAAE,CAAC,aAAa,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC;KAC/C;IACD,IAAI,CAAC,aAAa,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAChD,CAAC;AAED,SAAS,mBAAmB,CAC1B,IAAmB,EACnB,IAAqB,EACrB,QAAmB,EACnB,gBAAwB,EACxB,cAAsB;;IAEtB,IAAI,CAAC,CAAA,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAG,gBAAgB,CAAC,0CAAG,cAAc,CAAC,CAAA,EAAE;QAC/C,IAAA,cAAM,EAAC,IAAI,EAAE,CAAC,gBAAgB,EAAE,cAAc,CAAC,EAAE;YAC/C,KAAK,EAAE,EAAE;YACT,iBAAiB,EAAE,cAAM;YACzB,cAAc,EAAE,cAAM;YACtB,OAAO,EAAE,EAAE;SACZ,CAAC,CAAC;KACJ;IAED,IAAM,UAAU,yCAAsB,IAAI,KAAE,QAAQ,UAAA,GAAE,CAAC;IAGvD,IAAA,cAAM,EAAC,IAAI,EAAE,CAAC,gBAAgB,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IAGxE,IAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC,cAAc,CAAC,CAAC;IACzD,IAAM,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,4BAAoB,CAAC,CAAC;IAC1F,SAAS,CAAC,cAAc,GAAG,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,cAAc,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC;IAGlH,IAAI,CAAC,IAAA,kBAAU,EAAC,IAAI,CAAC,EAAE;QACrB,IAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,4BAAoB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,4BAAoB,CAAC,CAAC;QACxG,SAAS,CAAC,iBAAiB,GAAG,SAAS,CAAC,iBAAiB;YACvD,CAAC,CAAC,SAAS,CAAC,iBAAiB,CAAC,GAAG,CAAC,YAAY,CAAC;YAC/C,CAAC,CAAC,YAAY,CAAC;QAGjB,MAAA,SAAS,CAAC,OAAO,oCAAjB,SAAS,CAAC,OAAO,GAAK,EAAE,EAAC;QAEzB,IAAI,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;YACnC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;SACrF;aAAM;YACL,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,YAAY,CAAC;SAChD;KACF;AACH,CAAC;AAED,SAAS,2BAA2B,CAClC,IAA2B,EAC3B,OAAqD;;IAE7C,IAAA,kBAAkB,GAAkB,OAAO,mBAAzB,EAAE,WAAW,GAAK,OAAO,YAAZ,CAAa;IACpD,IAAI,CAAC,CAAA,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAG,kBAAkB,CAAC,0CAAG,WAAW,CAAC,CAAA,EAAE;QAC9C,IAAA,cAAM,EAAC,IAAI,EAAE,CAAC,kBAAkB,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,CAAC;KACrD;IACD,IAAI,CAAC,kBAAkB,CAAC,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AACtD,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAqB,EAAE,OAAqD;;IACjG,IAAA,kBAAkB,GAAkB,OAAO,mBAAzB,EAAE,WAAW,GAAK,OAAO,YAAZ,CAAa;IACpD,IAAI,CAAC,CAAA,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAG,kBAAkB,CAAC,0CAAG,WAAW,CAAC,CAAA,EAAE;QAC9C,IAAA,cAAM,EAAC,IAAI,EAAE,CAAC,kBAAkB,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,CAAC;KACrD;IACD,IAAI,CAAC,kBAAkB,CAAC,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AACtD,CAAC;AAGD;IAOE,0BACW,MAAsB,EACtB,OAAgB,EAChB,gBAAwD,EACxD,0CAAoD,EACpD,wBAA4D;QAA5D,yCAAA,EAAA,6BAA4D;QAJ5D,WAAM,GAAN,MAAM,CAAgB;QACtB,YAAO,GAAP,OAAO,CAAS;QAChB,qBAAgB,GAAhB,gBAAgB,CAAwC;QACxD,+CAA0C,GAA1C,0CAA0C,CAAU;QACpD,6BAAwB,GAAxB,wBAAwB,CAAoC;QAX/D,kBAAa,GAAc,EAAE,CAAC;QAC9B,qBAAgB,GAA6D,EAAE,CAAC;QAEhF,yBAAoB,GAAoD,EAAE,CAAC;IAShF,CAAC;IAIJ,qCAAU,GAAV;QACE,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;IAC1B,CAAC;IAEa,4CAAiB,GAA/B,UAAgC,GAAW;;;;;;wBAGlC,KAAA,CAAA,KAAA,gBAAC,CAAA,CAAC,SAAS,CAAA;wBAAC,WAAM,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAA;4BAAhD,WAAO,cAAY,SAA6B,EAAC,EAAC;;;;KACnD;IAED,uDAA4B,GAA5B,UAA6B,GAAW;QACtC,IAAI,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,EAAE;YAClC,OAAO,gBAAC,CAAC,SAAS,CAAC,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC;SACpD;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,qDAA0B,GAA1B,UAA2B,GAAW,EAAE,UAA2C;QACjF,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC;IAC9C,CAAC;IAEM,oCAAmB,GAA1B,UAA2B,oBAAgC;QAKzD,OAAO,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC/C,CAAC;IAEO,wDAA6B,GAArC,UAAsC,oBAAgC;QACpE,OAAO,kBAAW,gBAAgB,CAAC,mBAAmB,CAAC,oBAAoB,CAAC,CAAE,CAAC;IACjF,CAAC;IAEa,uDAA4B,GAA1C,UACE,oBAAgC;;;;;;;wBAEhC,IAAI,CAAC,IAAA,iBAAS,EAAC,MAAA,IAAI,CAAC,OAAO,0CAAE,aAAa,CAAC,EAAE;4BAC3C,WAAO,SAAS,EAAC;yBAClB;wBACK,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;wBACV,WAAM,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,UAAU,CAC/D,IAAI,CAAC,6BAA6B,CAAC,oBAAoB,CAAC,EACxD,oBAAY,CACb,EAAA;;wBAHK,aAAa,GAAG,SAGrB;wBAGD,IAAI,CAAC,IAAA,iBAAS,EAAC,aAAa,CAAC,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE;4BACzD,WAAO,SAAS,EAAC;yBAClB;wBAIK,yCAAyC,GAAG,UAChD,IAAoD;4BAEpD,OAAA,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CACtB,UAAC,GAAG,EAAE,OAAO;gCACX,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;gCACrC,OAAO,GAAG,CAAC;4BACb,CAAC,EACD,EAAoD,CACrD;wBAND,CAMC,CAAC;wBAEE,IAAI,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;wBAC7B,UAAU,GAAG;4BACjB,aAAa,EAAE,yCAAyC,CAAC,IAAI,CAAC,aAAa,CAAC;4BAC5E,yBAAyB,EAAE,yCAAyC,CAAC,IAAI,CAAC,yBAAyB,CAAC;4BACpG,gBAAgB,EAAE,yCAAyC,CAAC,IAAI,CAAC,gBAAgB,CAAC;4BAClF,qBAAqB,EAAE,yCAAyC,CAAC,IAAI,CAAC,qBAAqB,CAAC;4BAC5F,iBAAiB,EAAE,yCAAyC,CAAC,IAAI,CAAC,iBAAiB,CAAC;yBACrF,CAAC;wBACF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;4BAChB,EAAE,EAAE,+CAA+C;4BACnD,OAAO,EAAE,gDAAyC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,GAAG,IAAI,OAAI;4BAClG,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC;4BACjD,UAAU,EAAE,IAAA,oCAA4B,EACtC,UAAU,CAAC,gBAAgB,EAC3B,UAAU,CAAC,aAAa,EACxB,EAAE,EACF,UAAU,CAAC,iBAAiB,EAC5B,UAAU,CAAC,yBAAyB,EACpC,UAAU,CAAC,qBAAqB,CACjC;yBACF,CAAC,CAAC;wBACH,WAAO,UAAU,EAAC;;;;KACnB;IAGK,4DAAiC,GAAvC;;;;;;wBACQ,OAAO,GAAG,EAAE,CAAC;wBACnB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,SAAS,EAAE;4BACzC,MAAM,IAAI,KAAK,CAAC,gFAAgF,CAAC,CAAC;yBACnG;wBAEK,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,gCAAgC,CACxE,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,mBAAmB,CAC/C,CAAC;6BACE,CAAA,MAAM,KAAK,SAAS,CAAA,EAApB,cAAoB;wBACtB,KAAA,CAAA,KAAA,OAAO,CAAA,CAAC,IAAI,CAAA;wBAAC,WAAM,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAAC,EAAA;;wBAA3D,cAAa,SAA8C,EAAC,CAAC;;4BAE/D,WAAO,OAAO,EAAC;;;;KAChB;IAIK,sDAA2B,GAAjC,UAAkC,MAA0B;;;;;;;wBACpD,2BAA2B,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,6BAA6B,CAC1F,IAAI,CAAC,0CAA0C,EAC/C,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,mBAAmB,EAC9C,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,CACnC,CAAC;wBACI,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,yBAAyB,CAAC,2BAA2B,CAAC,CAAC;wBAGjG,2BAA2B,GAAG,IAAA,mCAA2B,EAC7D,IAAI,CAAC,OAAO,CAAC,aAAa,EAC1B,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAC9B,MAAM,CACP,CAAC;wBAMkB,WAAM,IAAI,CAAC,eAAe,CAAC,2BAA2B,CAAC,EAAA;;wBAArE,WAAW,GAAG,SAAuD;wBAC3E,IAAI,WAAW,KAAK,SAAS,EAAE;4BAC7B,eAAe,GAAG,IAAI,CAAC,kCAAkC,CAAC,QAAQ,EAAE,2BAA2B,CAAC,CAAC;yBAClG;6BAAM;4BACG,aAAa,GAAgC,WAAW,cAA3C,EAAE,yBAAyB,GAAK,WAAW,0BAAhB,CAAiB;4BACjE,eAAe,GAAG,IAAA,4BAAoB,EAAC,aAAa,EAAE,yBAAyB,CAAC,CAAC;4BAKjF,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,UAAC,OAAO;gCAC3C,IAAI,KAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,SAAS,EAAE;oCACxD,OAAO,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;iCACzC;4BACH,CAAC,CAAC,CAAC;yBACJ;wBAID,WAAO,IAAI,CAAC,qBAAqB,CAAC,eAAe,EAAE,MAAM,CAAC,EAAC;;;;KAC5D;IAGD,6DAAkC,GAAlC,UAAmC,QAAkB,EAAE,WAAuB;QAA9E,iBA8CC;QA7CC,IAAM,eAAe,GAAoB,EAAE,CAAC;gCACjC,OAAO;YAChB,IAAI,OAAK,gBAAgB,CAAC,OAAO,CAAC,KAAK,SAAS,EAAE;;aAEjD;YACD,IAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAC7C,OAAK,gBAAgB,CAAC,OAAO,CAAC;iBAC3B,QAAQ,EAAE;iBACV,MAAM,CAAC,UAAC,IAAI;gBACX,IAAI,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE;oBAClG,OAAO,KAAK,CAAC;iBACd;gBAGD,IAAI,KAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,SAAS,EAAE;oBAC3D,OAAO,KAAK,CAAC;iBACd;gBACD,IAAM,eAAe,GAAG,KAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAC7F,IAAM,kBAAkB,GACtB,eAAe,KAAK,SAAS;oBAC7B,KAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,KAAK,KAAI,CAAC,qBAAqB,CAAC,eAAe,CAAC,CAAC;gBACnF,OAAO,kBAAkB,CAAC;YAC5B,CAAC,CAAC;iBACD,OAAO,CAAC,UAAC,IAAI;;;gBACZ,IAAM,eAAe,GAAG,KAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAC7F,IAAA,cAAM,EAAC,IAAA,iBAAS,EAAC,eAAe,CAAC,EAAE,6BAA6B,CAAC,CAAC;gBAC5D,IAAA,KAA0C,IAAA,oCAA4B,EAC1E,IAAI,EACJ,KAAI,CAAC,OAAO,CAAC,aAAa,EAC1B,WAAW,EACX,KAAI,CAAC,0CAA0C,EAC/C,eAAgB,CAAC,aAAa,CAC/B,EANO,mBAAmB,yBAAA,EAAE,cAAc,oBAM1C,CAAC;gBAKM,IAAA,OAAO,GAAgC,IAAI,QAApC,EAAe,YAAY,GAAK,IAAI,YAAT,CAAU;gBACpD,MAAA,eAAe,CAAC,mBAAmB,qCAAnC,eAAe,CAAC,mBAAmB,IAAM,EAAE,EAAC;gBAC5C,YAAA,eAAe,CAAC,mBAAmB,CAAC,EAAC,cAAc,wCAAd,cAAc,IAAM,EAAE,EAAC;gBAC5D,IAAM,oBAAoB,GAAG,MAAA,eAAe,CAAC,mBAAmB,CAAC,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,mCAAI,cAAM,CAAC;gBACrG,eAAe,CAAC,mBAAmB,CAAC,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,GAAG,oBAAoB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YACzG,CAAC,CAAC,CAAC;;;QAzCP,KAAsB,UAAQ,EAAR,qBAAQ,EAAR,sBAAQ,EAAR,IAAQ;YAAzB,IAAM,OAAO,iBAAA;oBAAP,OAAO;SA0CjB;QACD,OAAO,eAAe,CAAC;IACzB,CAAC;IAED,mDAAwB,GAAxB,UAAyB,OAAe,EAAE,OAAe,EAAE,mBAA2B;QACpF,IAAI,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,KAAK,SAAS,EAAE;YAChD,OAAO,IAAA,YAAI,EAAC,CAAC,CAAC,CAAC;SAChB;QACD,OAAO,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC;aAClC,WAAW,EAAE;aACb,MAAM,CAAC,UAAC,OAAO,IAAK,OAAA,OAAO,CAAC,WAAW,GAAG,mBAAmB,IAAI,OAAO,CAAC,UAAU,KAAK,OAAO,EAA3E,CAA2E,CAAC;aAChG,MAAM,CAAC,UAAC,GAAG,EAAE,OAAO;YACnB,OAAO,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QACtC,CAAC,EAAE,IAAA,YAAI,EAAC,CAAC,CAAC,CAAC,CAAC;IAChB,CAAC;IAEa,sDAA2B,GAAzC;;;;;;;wBACQ,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;wBAM3C,iBAAiB,GAAG,IAAA,mCAA2B,EACnD,aAAa,EACb,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAC9B,aAAa,CAAC,kBAAkB,EAAE;4BAChC,CAAC,CAAC,aAAa,CAAC,2BAA2B,EAAE;4BAC7C,CAAC,CAAC,aAAa,CAAC,gCAAgC,CAAC,aAAa,CAAC,mBAAmB,CAAE,CACvF,CAAC;;4BAEA,WAAW,EAAE,iBAAiB;;wBAClB,WAAM,IAAI,CAAC,QAAQ,CAC7B,iBAAiB,EACjB,IAAI,CAAC,gBAAgB,EACrB,IAAI,CACL,EAAA;4BANH,YAEE,aAAU,GAAE,SAIX;iCACD;;;;KACH;IAEK,qDAA0B,GAAhC;;;;;4BACsC,WAAM,IAAI,CAAC,2BAA2B,EAAE,EAAA;;wBAAtE,KAA8B,SAAwC,EAApE,UAAU,gBAAA,EAAE,WAAW,iBAAA;wBACzB,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;wBACpC,WAAM,IAAA,+BAAuB,EACxC,aAAa,CAAC,mBAAmB,EACjC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACjB,UAAU,CAAC,gBAAgB,EAC3B,UAAU,CAAC,aAAa,EACxB,UAAU,CAAC,iBAAiB,EAC5B,UAAU,CAAC,qBAAqB,EAChC,UAAU,CAAC,yBAAyB,EACpC;gCACE,aAAa,eAAA;gCACb,iBAAiB,EAAE,aAAa,CAAC,iBAA4C;6BAC9E,CACF,EAAA;;wBAZK,IAAI,GAAG,SAYZ;wBACD,WAAO;gCACL,IAAI,MAAA;gCACJ,WAAW,aAAA;6BACZ,EAAC;;;;KACH;IAQK,+CAAoB,GAA1B;;YAsBE,SAAS,kBAAkB,CAAC,mBAA+B;gBACzD,OAAO,uBAAuB,CAAC,GAAG,CAAC,UAAC,UAAU,EAAE,KAAK;;oBAInD,IAAM,iBAAiB,GAAG,MAAA,mBAAmB,CAAC,KAAK,CAAC,mCAAI,UAAU,CAAC;oBAEnE,IAAI,iBAAiB,CAAC,CAAC,CAAC,KAAK,iBAAiB,CAAC,CAAC,CAAC,EAAE;wBACjD,OAAO,iBAAiB,CAAC;qBAC1B;oBAID,IAAI,CAAC,IAAA,iBAAS,EAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,iBAAiB,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE;wBACtE,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;qBACrD;oBAID,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;gBACnD,CAAC,CAAC,CAAC;YACL,CAAC;;;;;wBA1CK,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;wBAC3C,2BAA2B,GAAG,aAAa,CAAC,6BAA6B,CAC7E,IAAI,CAAC,0CAA0C,EAC/C,aAAa,CAAC,mBAAmB,EACjC,aAAa,CAAC,OAAO,CACtB,CAAC;wBACI,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,yBAAyB,CAAC,2BAA2B,CAAC,CAAC;wBACjG,eAAe,GAAsB,EAAE,CAAC;wBAI1C,uBAAuB,GAAG,IAAA,2CAAmC,EAC/D,QAAQ,EACR,IAAI,CAAC,gBAAgB,EACrB,IAAA,0BAAkB,EAAC,QAAQ,EAAE,IAAI,CAAC,wBAAwB,CAAC,EAC3D,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,mBAAmB,EAC9C,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAChG,CAAC;6BA4BE,aAAa,CAAC,kBAAkB,EAAE,EAAlC,cAAkC;wBAC9B,wBAAwB,GAAG,IAAA,mCAA2B,EAC1D,aAAa,EACb,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAC9B,aAAa,CAAC,2BAA2B,EAAE,CAC5C,CAAC;wBAIkB,WAAM,IAAI,CAAC,eAAe,CAAC,wBAAwB,CAAC,EAAA;;wBAAlE,WAAW,GAAG,SAAoD;wBACxE,IAAI,WAAW,KAAK,SAAS,EAAE;4BAC7B,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,kCAAkC,CAAC,QAAQ,EAAE,wBAAwB,CAAC,CAAC,CAAC;yBACnG;6BAAM;4BACG,aAAa,GAAgC,WAAW,cAA3C,EAAE,yBAAyB,GAAK,WAAW,0BAAhB,CAAiB;4BACjE,eAAe,CAAC,IAAI,CAAC,IAAA,4BAAoB,EAAC,aAAa,EAAE,yBAAyB,CAAC,CAAC,CAAC;yBACtF;wBAGD,uBAAuB,GAAG,kBAAkB,CAAC,wBAAwB,CAAC,CAAC;;;wBAOnE,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;wBAChC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,kCAAkC,CAAC,QAAQ,EAAE,uBAAuB,CAAC,CAAC,CAAC;wBACjG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;4BAChB,EAAE,EAAE,uCAAuC;4BAC3C,OAAO,EAAE,yDAAkD,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,GAAG,IAAI,OAAI;4BAC3G,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,uBAAuB,CAAC;yBACrD,CAAC,CAAC;wBACH,WAAO,eAAe,EAAC;;;;KACxB;IAGD,6CAAkB,GAAlB,UACE,eAAgC,EAChC,iBAAyB;QAMzB,IAAI,CAAC,IAAA,iBAAS,EAAC,eAAe,CAAC,EAAE;YAC/B,OAAO,EAAE,CAAC;SACX;QAID,IAAM,MAAM,GAAG,gBAAC,CAAC,QAAQ,CACvB,eAAe,CAAC,mBAAmB,EAAE,EACrC,UAAC,MAAM,IAAK,OAAA,MAAM,CAAC,iBAAiB,KAAK,iBAAiB,EAA9C,CAA8C,CAC3D,CAAC;QACF,IAAI,MAAM,KAAK,SAAS,EAAE;YACxB,OAAO,EAAE,CAAC;SACX;QAED,IAAM,oBAAoB,GAAG,eAAe;aACzC,0BAA0B,EAAE;aAC5B,MAAM,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,YAAY,KAAK,MAAM,CAAC,YAAY,EAAzC,CAAyC,CAAC,CAAC;QAC/D,IAAM,eAAe,GAAiE,EAAE,CAAC;QACzF,KAAyB,UAAoB,EAApB,6CAAoB,EAApB,kCAAoB,EAApB,IAAoB,EAAE;YAA1C,IAAM,UAAU,6BAAA;YACnB,IAAM,YAAY,GAAG,UAAU,CAAC,cAAc,CAAC;YAC/C,IAAI,eAAe,CAAC,YAAY,CAAC,KAAK,SAAS,EAAE;gBAC/C,eAAe,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC;aACpC;YACD,IAAM,oBAAoB,GAAG,eAAe,CAAC,YAAY,CAAC,CAAC;YAE3D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC1D,IAAM,OAAO,GAAG,UAAU,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;gBAC9C,IAAM,YAAY,GAAG,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;gBACjD,IAAI,oBAAoB,CAAC,OAAO,CAAC,KAAK,SAAS,EAAE;oBAC/C,oBAAoB,CAAC,OAAO,CAAC,GAAG,cAAM,CAAC;iBACxC;gBACD,oBAAoB,CAAC,OAAO,CAAC,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;aACjF;SACF;QACD,OAAO,eAAe,CAAC;IACzB,CAAC;IAGO,gDAAqB,GAA7B,UACE,UAA2B,EAC3B,uBAA2C;QAE3C,KAAyB,UAAuB,EAAvB,KAAA,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAAvB,cAAuB,EAAvB,IAAuB,EAAE;YAA7C,IAAM,UAAU,SAAA;YACnB,IAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;YACnC,IAAI,CAAC,IAAA,iBAAS,EAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,EAAE;gBAC9C,SAAS;aACV;YACD,IAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAC7C,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAC9B,uBAAuB,CAAC,iBAAiB,CAC1C,CAAC;YAEF,KAA2B,UAAgC,EAAhC,KAAA,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,EAAhC,cAAgC,EAAhC,IAAgC,EAAE;gBAAxD,IAAM,YAAY,SAAA;gBACrB,IAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC;gBAClD,IAAI,eAAe,CAAC,YAAY,CAAC,KAAK,SAAS,IAAI,OAAO,KAAK,SAAS,EAAE;oBACxE,SAAS;iBACV;gBAED,KAAsB,UAAoB,EAApB,KAAA,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAApB,cAAoB,EAApB,IAAoB,EAAE;oBAAvC,IAAM,OAAO,SAAA;oBAChB,IAAM,cAAc,GAAG,eAAe,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,CAAC;oBAC9D,IAAI,cAAc,KAAK,SAAS,EAAE;wBAChC,SAAS;qBACV;oBAGD,OAAO,CAAC,OAAO,CAAC,GAAG,cAAM,CAAC;iBAC3B;aACF;SACF;QACD,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,wCAAa,GAAb,UAAc,aAA8B,EAAE,OAAe,EAAE,OAAe,EAAE,KAAa;QAC3F,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,EAAE;YAC7D,OAAO,iBAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;SAC1B;QACD,IAAM,UAAU,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC;QACjD,OAAO,UAAU,IAAI,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,iBAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACrF,CAAC;IAED,yCAAc,GAAd,UAAe,OAA0B,EAAE,OAAe,EAAE,OAAe,EAAE,WAAmB;QAAhG,iBAIC;QAHC,OAAO,OAAO,CAAC,MAAM,CAAC,UAAC,WAAW,EAAE,OAAO;YACzC,OAAO,WAAW,CAAC,GAAG,CAAC,KAAI,CAAC,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC;QACrF,CAAC,EAAE,cAAM,CAAC,CAAC;IACb,CAAC;IAEa,0CAAe,GAA7B,UAA8B,oBAAgC;;;;;;wBACtD,UAAU,GAAG,IAAI,CAAC,6BAA6B,CAAC,oBAAoB,CAAC,CAAC;wBAE5E,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,EAAE;4BACtC,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,4BAA4B,CAAC,oBAAoB,CAAC,CAAC;yBAC7F;wBACmB,KAAA,CAAA,KAAA,gBAAC,CAAA,CAAC,SAAS,CAAA;wBAAC,WAAM,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,EAAA;;wBAAjE,WAAW,GAAG,cAAY,SAAuC,EAAC;wBACxE,WAAO,WAAY,EAAC;;;;KACrB;IAKK,mCAAQ,GAAd,UACE,oBAAgC,EAChC,gBAAyC,EACzC,kBAA0B;QAA1B,mCAAA,EAAA,0BAA0B;;;;;;wBAEpB,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;6BAE7C,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAxB,cAAwB;wBACtB,WAAW,SAAA,CAAC;6BACZ,kBAAkB,EAAlB,cAAkB;wBACN,WAAM,IAAI,CAAC,eAAe,CAAC,oBAAoB,CAAC,EAAA;;wBAA9D,WAAW,GAAG,SAAgD,CAAC;;;wBAE/D,WAAW,GAAG,SAAS,CAAC;;;wBAEpB,IAAI,GAAG,IAAA,iBAAS,EAAC,WAAW,CAAC;4BACjC,CAAC;gCAEC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC;4BAC9B,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,oBAAoB,EAAE,gBAAgB,CAAC,CAAC;wBACrE,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;;4BAGjC,WAAO,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAC;;;;KACpC;IAEa,8CAAmB,GAAjC,UACE,oBAAgC,EAChC,gBAAyC;;;;;;;wBAErC,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;wBACxB,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;wBAEjD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,SAAS,EAAE;4BAC7C,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;yBAClD;6BAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,SAAS,EAAE;4BAChD,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;yBAC9C;wBAEK,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,yBAAyB,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;wBAEtG,IAAI,oBAAoB,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,EAAE;4BACjD,MAAM,IAAI,KAAK,CACb,gDAAyC,oBAAoB,CAAC,MAAM,4BAAkB,QAAQ,CAAC,MAAM,CAAE,CACxG,CAAC;yBACH;wBAGK,gBAAgB,GAAqB,EAAE,CAAC;wBACxC,aAAa,GAAkB,EAAE,CAAC;wBAClC,oBAAoB,GAAsB,EAAE,CAAC;wBAC7C,iBAAiB,GAAoB,EAAE,CAAC;wBAExC,yBAAyB,GAA8B,EAAE,CAAC;wBAE1D,qBAAqB,GAA0B,EAAE,CAAC;wBAMlD,gBAAgB,GAAG,UAAC,OAAe;4BACvC,IAAM,kBAAkB,GAAG,IAAA,6BAAqB,EAAC,oBAAoB,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;4BAC1F,OAAO,IAAA,uBAAe,EAAC,kBAAkB,CAAC,CAAC;wBAC7C,CAAC,CAAC;wBAGI,WAAW,GAAG,oBAAoB;6BACrC,GAAG,CAAC,UAAC,WAAW,EAAE,KAAK,IAAK,OAAA,QAAQ,CAAC,KAAK,CAAC,EAAf,CAAe,CAAC;6BAC5C,MAAM,CAAC,UAAC,OAAO,IAAK,OAAA,CAAC,gBAAgB,CAAC,OAAO,CAAC,IAAI,gBAAgB,CAAC,OAAO,CAAC,KAAK,SAAS,EAArE,CAAqE,CAAC,CAAC;wBAC9F,WAAW,CAAC,OAAO,CAAC,UAAC,OAAO;4BAC1B,IAAM,eAAe,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;4BAClD,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE;gCAC9B,MAAM,IAAI,KAAK,CAAC,oCAA6B,OAAO,kBAAe,CAAC,CAAC;6BACtE;wBACH,CAAC,CAAC,CAAC;wBAMG,uBAAuB,GAAG,IAAI,CAAC,4BAA4B,CAAC,GAAG,CAAC,CAAC;wBACnE,qBAAqB,GAAoC,EAAE,CAAC;6BAC5D,CAAC,uBAAuB,EAAxB,cAAwB;wBACF,WAAM,IAAI,CAAC,wBAAwB,CAAC,QAAQ,EAAE,oBAAoB,EAAE,gBAAgB,CAAC,EAAA;;wBAA7G,qBAAqB,GAAG,SAAqF,CAAC;wBAC9G,IAAI,CAAC,0BAA0B,CAAC,GAAG,EAAE,qBAAqB,CAAC,CAAC;wBAC5D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;4BAChB,EAAE,EAAE,2BAA2B;4BAC/B,OAAO,EAAE,yBAAyB;4BAClC,qBAAqB,uBAAA;4BACrB,oBAAoB,EAAE,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC;yBAC3D,CAAC,CAAC;;;wBAEH,qBAAqB,GAAG,uBAAuB,CAAC;;;wBA2D5C,aAAa,GAUf,EAAE,CAAC;wBAID,0BAA0B,GAAgB,IAAI,GAAG,EAAU,CAAC;wBAE5D,kBAAkB,GAAgB,IAAI,GAAG,EAAU,CAAC;wBAEtD,cAAc,GAAG,CAAC,CAAC;4CACZ,aAAa;4BACtB,IAAM,YAAY,GAAG,gBAAgB,CAAC,aAAa,CAAC,CAAC;4BACrD,IAAM,qBAAqB,GAAG,IAAA,6BAAqB,EAAC,oBAAoB,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC;oDAExF,kBAAkB;gCAC3B,IAAI,aAAa,KAAK,kBAAkB,EAAE;;iCAEzC;gCACD,YAAY,CAAC,8BAA8B,CAAC,kBAAkB,CAAC,CAAC,OAAO,CAAC,UAAC,OAAO;oCAC9E,cAAc,EAAE,CAAC;oCACjB,IAAM,aAAa,GAAG,KAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;oCAC1D,IAAI,aAAa,CAAC,aAAa,CAAC,EAAE;wCAGhC,OAAO;qCACR;oCAGD,aAAa,CAAC,aAAa,CAAC,GAAG;wCAC7B,OAAO,EAAE,OAAO;wCAChB,IAAI,EAAE,SAAS;wCACf,eAAe,EAAE,SAAS;qCAC3B,CAAC;oCAMF,IAAI,OAAO,CAAC,WAAW,IAAI,qBAAqB,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,WAAW,IAAI,qBAAqB,CAAC,CAAC,CAAC,EAAE;wCAEtG,sBAAsB,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;wCAKlD,IAAI,OAAO,CAAC,YAAY,GAAG,qBAAqB,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,EAAE;4CACvE,0BAA0B,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;yCAC/C;qCACF;yCAAM,IAAI,OAAO,CAAC,WAAW,GAAG,qBAAqB,CAAC,CAAC,CAAC,EAAE;wCACzD,kBAAkB,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;qCACvC;gCACH,CAAC,CAAC,CAAC;;4BArCL,KAAiC,UAAW,EAAX,2BAAW,EAAX,yBAAW,EAAX,IAAW;gCAAvC,IAAM,kBAAkB,oBAAA;wCAAlB,kBAAkB;6BAsC5B;;wBA1CH,WAAuC,EAAX,2BAAW,EAAX,yBAAW,EAAX,IAAW;4BAA5B,aAAa;oCAAb,aAAa;yBA2CvB;wBACD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;4BAChB,EAAE,EAAE,2BAA2B;4BAC/B,OAAO,EAAE,oBAAa,cAAc,0BAAgB,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,QAAK;yBACnF,CAAC,CAAC;wBACH,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;wBAGpB,sBAAsB,GAAqD,EAAE,CAAC;wBAC9E,wBAAwB,GAAyB,EAAE,CAAC;wBACpD,oCAAoC,GAAyB,EAAE,CAAC;wBAClE,WAAW,GAAG,CAAC,CAAC;4CACT,aAAa;;;;;wCAChB,YAAY,GAAG,gBAAgB,CAAC,aAAa,CAAC,CAAC;4DAC1C,kBAAkB;;;;;wDAC3B,IAAI,aAAa,KAAK,kBAAkB,EAAE;;yDAEzC;wDAEK,iBAAiB,GAAG,gBAAgB,CAAC,kBAAkB,CAAC,CAAC;wDACzD,0BAA0B,GAAG,IAAA,6BAAqB,EAAC,oBAAoB,EAAE,kBAAkB,EAAE,QAAQ,CAAC,CAAC;wDAIvG,2BAA2B,GAAa,EAAE,CAAC;wDACjD,WAAM,IAAA,oBAAY,EAChB,iBAAiB;iEACd,sBAAsB,CAAC,aAAa,CAAC;iEACrC,MAAM,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,WAAW,IAAI,0BAA0B,CAAC,CAAC,CAAC,EAAjD,CAAiD,CAAC,EACtE,UAAO,IAAI;;;;;4EACH,aAAa,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;4EACvD,WAAW,EAAE,CAAC;4EAEd,IAAI,aAAa,CAAC,aAAa,CAAC,EAAE;gFAChC,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,IAAI,EAAE;oFACtC,IAAA,cAAM,EACJ,IAAA,iBAAS,EAAC,aAAa,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,EAC/C,gDAAgD,CACjD,CAAC;oFAGF,aAAa,CAAC,aAAa,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC;oFACzC,IAAI,IAAI,CAAC,WAAW,IAAI,0BAA0B,CAAC,CAAC,CAAC,EAAE;wFACrD,sBAAsB,CAAC,IAAI,uCACtB,IAAI,KACP,cAAc,EAAE,aAAa,CAAC,aAAa,CAAC,CAAC,OAAQ,CAAC,cAAc,IACpE,CAAC;wFAKH,IACE,IAAI,CAAC,kBAAkB,CAAC,QAAQ,KAAK,qBAAQ,CAAC,gBAAgB;4FAC9D,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,OAAQ,CAAC,aAAa;4FACpD,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,OAAQ,CAAC,WAAW,EAClD;4FACA,2BAA2B,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;yFACjD;qFACF;iFACF;gFACD,WAAO;6EACR;4EAID,aAAa,CAAC,aAAa,CAAC,GAAG;gFAC7B,OAAO,EAAE,SAAS;gFAClB,IAAI,EAAE,IAAI;gFACV,eAAe,EAAE,SAAS;6EAC3B,CAAC;iFAUE,CAAA,IAAI,CAAC,WAAW,IAAI,0BAA0B,CAAC,CAAC,CAAC,CAAA,EAAjD,cAAiD;4EAInD,IAAI,CAAC,8BAAsB,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;gFACjD,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gFAChC,WAAO;6EACR;4EAIyB,WAAM,IAAA,qCAA6B,EAAC,YAAY,EAAE,IAAI,CAAC,EAAA;;4EAA3E,iBAAiB,GAAG,SAAuD;4EACjF,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE;gFAC5B,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;6EACjC;iFAAM;gFACC,cAAc,GAAG,iBAAiB,CAAC,OAAO,CAAC;gFAKjD,IAAA,cAAM,EAAC,IAAI,CAAC,qBAAqB,CAAC,cAAc,CAAC,KAAK,aAAa,EAAE,4BAA4B,CAAC,CAAC;gFACnG,sBAAsB,CAAC,IAAI,uCACtB,IAAI,KACP,cAAc,EAAE,cAAc,CAAC,cAAc,IAC7C,CAAC;gFACH,aAAa,CAAC,aAAa,CAAC,CAAC,OAAO,GAAG,cAAc,CAAC;gFAEtD,IACE,IAAI,CAAC,kBAAkB,CAAC,QAAQ,KAAK,qBAAQ,CAAC,gBAAgB;oFAC9D,CAAC,cAAc,CAAC,aAAa;oFAC7B,CAAC,cAAc,CAAC,WAAW,EAC3B;oFACA,2BAA2B,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;iFACjD;6EACF;;;;;iEAEJ,CACF,EAAA;;wDA3FD,SA2FC,CAAC;wDAEF,WAAM,IAAA,oBAAY,EAChB,iBAAiB;iEACd,iCAAiC,CAAC,aAAa,CAAC;iEAChD,MAAM,CAAC,UAAC,OAAO,IAAK,OAAA,OAAO,CAAC,WAAW,IAAI,0BAA0B,CAAC,CAAC,CAAC,EAApD,CAAoD,CAAC,EAC5E,UAAO,eAAyC;;;;;;4EACxC,aAAa,GAAG,IAAI,CAAC,qBAAqB,CAAC,eAAe,CAAC,CAAC;4EAElE,IAAI,aAAa,CAAC,aAAa,CAAC,EAAE;gFAChC,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,eAAe,EAAE;oFAGjD,aAAa,CAAC,aAAa,CAAC,CAAC,eAAe,GAAG,eAAe,CAAC;oFAC/D,IAAI,aAAa,CAAC,aAAa,CAAC,CAAC,IAAI,EAAE;wFAGrC,WAAO;qFACR;oFACD,IAAA,cAAM,EACJ,IAAA,iBAAS,EAAC,aAAa,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,EAC/C,gDAAgD,CACjD,CAAC;oFAEI,cAAc,GAAG,aAAa,CAAC,aAAa,CAAC,CAAC,OAAQ,CAAC;oFAG7D,IACE,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,mBAAmB,CAC7C,cAAc,CAAC,UAAU,EACzB,cAAc,CAAC,aAAa,EAC5B,cAAc,CAAC,WAAW,EAC1B,cAAc,CAAC,kBAAkB,EACjC,cAAc,CAAC,gBAAgB,CAChC,EACD;wFACA,WAAO;qFACR;oFAGD,IACE,CAAA,MAAA,aAAa,CAAC,aAAa,CAAC,CAAC,OAAO,0CAAE,aAAa;yFACnD,MAAA,aAAa,CAAC,aAAa,CAAC,CAAC,OAAO,0CAAE,WAAW,CAAA,EACjD;wFACA,WAAO;qFACR;oFAKD,IACE,eAAe,CAAC,WAAW,IAAI,0BAA0B,CAAC,CAAC,CAAC;wFAE5D,eAAe,CAAC,YAAY,IAAI,qBAAqB,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,EAC5E;wFAGA,wBAAwB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;qFAC/C;iFACF;gFACD,WAAO;6EACR;4EAGD,aAAa,CAAC,aAAa,CAAC,GAAG;gFAC7B,OAAO,EAAE,SAAS;gFAClB,IAAI,EAAE,SAAS;gFACf,eAAe,EAAE,eAAe;6EACjC,CAAC;iFAeA,CAAA,8BAAsB,CAAC,EAAE,CAAC,eAAe,CAAC,YAAY,CAAC;gFACvD,eAAe,CAAC,WAAW,IAAI,0BAA0B,CAAC,CAAC,CAAC,CAAA,EAD5D,cAC4D;4EAElC,WAAM,IAAA,qCAA6B,EAAC,YAAY,EAAE,eAAe,CAAC,EAAA;;4EAAtF,iBAAiB,GAAG,SAAkE;4EAC5F,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE;gFAE5B,WAAO;6EACR;4EACK,cAAc,GAAuB,iBAAiB,CAAC,OAAO,CAAC;4EAKrE,IAAA,cAAM,EACJ,IAAI,CAAC,qBAAqB,CAAC,cAAc,CAAC,KAAK,aAAa,EAC5D,oCAAoC,CACrC,CAAC;4EAGF,IAAI,cAAc,CAAC,aAAa,IAAI,cAAc,CAAC,WAAW,EAAE;gFAC9D,WAAO;6EACR;4EAED,aAAa,CAAC,aAAa,CAAC,CAAC,OAAO,GAAG,cAAc,CAAC;4EAKtD,IAEE,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,mBAAmB,CAC7C,cAAc,CAAC,UAAU,EACzB,cAAc,CAAC,aAAa,EAC5B,cAAc,CAAC,WAAW,EAC1B,cAAc,CAAC,kBAAkB,EACjC,cAAc,CAAC,gBAAgB,CAChC;gFAED,eAAe,CAAC,YAAY,GAAG,qBAAqB,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,EAC3E;gFAEA,WAAO;6EACR;4EACD,wBAAwB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;;;;;iEAEjD,CACF,EAAA;;wDA/HD,SA+HC,CAAC;wDAKF,2BAA2B,CAAC,OAAO,CAAC,UAAC,aAAa;4DAC1C,IAAA,KAAqC,aAAa,CAAC,aAAa,CAAC,EAA/D,OAAO,aAAA,EAAE,eAAe,qBAAA,EAAE,IAAI,UAAiC,CAAC;4DACxE,IAAA,cAAM,EACJ,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,kBAAkB,CAAC,QAAQ,MAAK,qBAAQ,CAAC,gBAAgB,EAC/D,uCAAuC,CACxC,CAAC;4DAEF,IAAI,CAAC,OAAO,EAAE;gEACZ,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;6DACnE;4DAED,IAAA,cAAM,EACJ,CAAC,OAAO,CAAC,aAAa,IAAI,CAAC,OAAO,CAAC,WAAW,EAC9C,oEAAoE,CACrE,CAAC;4DACF,IAAM,qBAAqB,GAAG,IAAA,6BAAqB,EAAC,oBAAoB,EAAE,kBAAkB,EAAE,QAAQ,CAAC,CAAC;4DACxG,IAIE,KAAI,CAAC,OAAO,CAAC,aAAa,CAAC,mBAAmB,CAC5C,OAAO,CAAC,UAAU,EAClB,OAAO,CAAC,aAAa,EACrB,OAAO,CAAC,WAAW,EACnB,OAAO,CAAC,kBAAkB,EAC1B,OAAO,CAAC,gBAAgB,CACzB;gEAGD,CAAC,CAAC,eAAe,IAAI,eAAe,CAAC,WAAW,GAAG,qBAAqB,CAAC,CAAC,CAAC,CAAC,EAC5E;gEACA,oCAAoC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;6DACpD;wDACH,CAAC,CAAC,CAAC;;;;;8CA7QuC,EAAX,2BAAW;;;6CAAX,CAAA,yBAAW,CAAA;wCAAjC,kBAAkB;2DAAlB,kBAAkB;;;;;wCAAI,IAAW,CAAA;;;;;;8BAFP,EAAX,2BAAW;;;6BAAX,CAAA,yBAAW,CAAA;wBAA5B,aAAa;2CAAb,aAAa;;;;;wBAAI,IAAW,CAAA;;;wBAkRvC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;4BAChB,EAAE,EAAE,2BAA2B;4BAC/B,OAAO,EAAE,oBAAa,WAAW,uBAAa,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,QAAK;yBAC7E,CAAC,CAAC;wBACH,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;wBAI1B,0BAA0B,CAAC,OAAO,CAAC,UAAC,aAAa;4BACzC,IAAA,KAAoB,aAAa,CAAC,aAAa,CAAC,EAA9C,OAAO,aAAA,EAAE,IAAI,UAAiC,CAAC;4BACvD,IAAA,cAAM,EAAC,IAAA,iBAAS,EAAC,OAAO,CAAC,EAAE,gDAAgD,CAAC,CAAC;4BAC7E,IACE,CAAC,IAAI;gCACL,IAAA,iBAAS,EAAC,OAAO,CAAC,EAClB;gCACA,uBAAuB,CAAC,yBAAyB,EAAE,OAAO,CAAC,CAAC;6BAC7D;wBACH,CAAC,CAAC,CAAC;wBAKH,WAAM,IAAA,oBAAY,EAAC,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE,UAAO,aAAa;;;;;4CAC/D,KAAqC,aAAa,CAAC,aAAa,CAAC,EAA/D,OAAO,aAAA,EAAE,eAAe,qBAAA,EAAE,IAAI,UAAA,CAAkC;4CACxE,IAAA,cAAM,EAAC,IAAA,iBAAS,EAAC,OAAO,CAAC,EAAE,gDAAgD,CAAC,CAAC;4CACrE,kBAAkB,GAAK,OAAQ,mBAAb,CAAc;4CAClC,qBAAqB,GAAG,IAAA,6BAAqB,EAAC,oBAAoB,EAAE,kBAAkB,EAAE,QAAQ,CAAC,CAAC;iDAOtG,CAAA,CAAC,IAAI;gDACL,IAAA,iBAAS,EAAC,OAAO,CAAC;gDAClB,OAAO,CAAC,YAAY,GAAG,qBAAqB,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;gDACnE,OAAO,CAAC,YAAY,IAAI,qBAAqB,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;gDACpE,gBAAgB,CAAC,kBAAkB,CAAC,KAAK,SAAS,CAAA,EAJlD,cAIkD;4CAI/B,WAAM,gBAAgB,CAAC,kBAAkB,CAAC,CAAC,eAAe,CAC3E,OAAO,EAMP,IAAI,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,gBAAgB,CAAC,kBAAkB,CAAC,CAAC,mBAAmB,CAAC,EAC5F,kBAAkB,CACnB,EAAA;;4CATK,UAAU,GAAG,SASlB;4CAID,IAAI,UAAU,KAAK,uBAAU,CAAC,MAAM,EAAE;gDACpC,uBAAuB,CAAC,yBAAyB,EAAE,OAAO,CAAC,CAAC;6CAC7D;4CAKD,IAAI,UAAU,KAAK,uBAAU,CAAC,iBAAiB,IAAI,OAAO,CAAC,aAAa,IAAI,OAAO,CAAC,WAAW,EAAE;gDAC/F,WAAO;6CACR;4CASD,IAIE,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,mBAAmB,CAC5C,OAAO,CAAC,UAAU,EAClB,OAAO,CAAC,aAAa,EACrB,OAAO,CAAC,WAAW,EACnB,OAAO,CAAC,kBAAkB,EAC1B,OAAO,CAAC,gBAAgB,CACzB;gDACD,CAAC,CAAC,eAAe,IAAI,eAAe,CAAC,WAAW,GAAG,qBAAqB,CAAC,CAAC,CAAC,CAAC,EAC5E;gDACA,oCAAoC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;6CACpD;;;;;iCAEJ,CAAC,EAAA;;wBAlEF,SAkEE,CAAC;wBAGH,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;wBACpB,QAAQ,GAAG;4BACf,sBAAsB,CAAC,MAAM,GAAG,CAAC;gCAC/B,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,4BAA4B,CACrD,sBAAsB,CAAC,GAAG,CAAC,UAAC,IAAI;oCAC9B,IAAM,cAAc,GAAG,aAAa,CAAC,KAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;oCAC/E,IAAA,cAAM,EAAC,IAAA,iBAAS,EAAC,cAAc,CAAC,EAAE,gDAAgD,CAAC,CAAC;oCAC5E,IAAqB,cAAc,GAAK,IAAA,oCAA4B,EAC1E,IAAI,EACJ,KAAI,CAAC,OAAO,CAAC,aAAa,EAC1B,oBAAoB,EACpB,QAAQ,EACR,cAAe,CAAC,aAAa,CAC9B,oBAN0C,CAMzC;oCACF,6CACK,IAAI,KACP,cAAc,gBAAA,IACd;gCACJ,CAAC,CAAC,CACH;gCACH,CAAC,CAAC,EAAE;4BACN,wBAAwB,CAAC,MAAM,GAAG,CAAC;gCACjC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,4BAA4B,CACrD,wBAAwB,CAAC,GAAG,CAAC,UAAC,OAAO;oCACnC,6CACK,OAAO,KACV,cAAc,EAAE,OAAO,CAAC,kBAAkB,IAC1C;gCACJ,CAAC,CAAC,CACH;gCACH,CAAC,CAAC,EAAE;4BACN,oCAAoC,CAAC,MAAM,GAAG,CAAC;gCAC7C,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,4BAA4B,CACrD,oCAAoC,CAAC,GAAG,CAAC,UAAC,OAAO;oCAC/C,6CACK,OAAO,KACV,cAAc,EAAE,OAAO,CAAC,kBAAkB,IAC1C;gCACJ,CAAC,CAAC,CACH;gCACH,CAAC,CAAC,EAAE;yBACP,CAAC;wBACqE,WAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAA;;wBAA5F,KAAiE,SAA2B,EAA3F,YAAY,QAAA,EAAE,gBAAgB,QAAA,EAAE,4BAA4B,QAAA;wBACnE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;4BAChB,EAAE,EAAE,2BAA2B;4BAC/B,OAAO,EAAE,0CAAmC,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,QAAK;yBAC3E,CAAC,CAAC;wBACH,YAAY,CAAC,OAAO,CAAC,UAAC,EAAoB,EAAE,GAAG;gCAAvB,gBAAgB,sBAAA;4BACtC,IAAM,IAAI,GAAG,sBAAsB,CAAC,GAAG,CAAC,CAAC;4BACzC,IAAM,iBAAiB,GAAG,aAAa,CAAC,KAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;4BAClF,IAAA,cAAM,EAAC,IAAA,iBAAS,EAAC,iBAAiB,CAAC,EAAE,gDAAgD,CAAC,CAAC;4BACjF,IAAA,KAA0C,IAAA,oCAA4B,EAC1E,IAAI,EACJ,KAAI,CAAC,OAAO,CAAC,aAAa,EAC1B,oBAAoB,EACpB,QAAQ,EACR,iBAAkB,CAAC,aAAa,CACjC,EANO,mBAAmB,yBAAA,EAAE,cAAc,oBAM1C,CAAC;4BACF,mBAAmB,CAAC,aAAa,EAAE,IAAI,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,cAAc,CAAC,CAAC;wBAClG,CAAC,CAAC,CAAC;wBACH,gBAAgB,CAAC,OAAO,CAAC,UAAC,EAA8B,EAAE,GAAG;gCAAf,QAAQ,sBAAA;4BACpD,IAAM,OAAO,GAAG,wBAAwB,CAAC,GAAG,CAAC,CAAC;4BAC9C,qBAAqB,CAAC,iBAAiB,wCAAO,OAAO,KAAE,QAAQ,UAAA,IAAG,CAAC;wBACrE,CAAC,CAAC,CAAC;wBACH,4BAA4B,CAAC,OAAO,CAAC,UAAC,EAA8B,EAAE,GAAG;gCAAf,QAAQ,sBAAA;4BAChE,IAAM,OAAO,GAAG,oCAAoC,CAAC,GAAG,CAAC,CAAC;4BAC1D,2BAA2B,CAAC,qBAAqB,wCAAO,OAAO,KAAE,QAAQ,UAAA,IAAG,CAAC;wBAC/E,CAAC,CAAC,CAAC;wBAEG,qBAAqB,GAAG,IAAA,oCAA4B,EACxD,gBAAgB,EAChB,aAAa,EACb,oBAAoB,EACpB,iBAAiB,EACjB,yBAAyB,EACzB,qBAAqB,CACtB,CAAC;wBAEF,IAAI,oBAAoB,CAAC,MAAM,GAAG,CAAC,EAAE;4BACnC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;gCAChB,EAAE,EAAE,2BAA2B;gCAC/B,OAAO,EAAE,8EAA8E;gCACvF,oBAAoB,sBAAA;gCACpB,oBAAoB,sBAAA;6BACrB,CAAC,CAAC;yBACJ;wBAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;4BAChB,EAAE,EAAE,sCAAsC;4BAC1C,OAAO,EAAE,kCAA2B,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,GAAG,IAAI,OAAI;4BACpF,oBAAoB,EAAE,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC;4BAC1D,qBAAqB,uBAAA;yBACtB,CAAC,CAAC;wBACH,WAAO;gCACL,gBAAgB,kBAAA;gCAChB,yBAAyB,2BAAA;gCACzB,aAAa,eAAA;gCACb,qBAAqB,uBAAA;gCACrB,iBAAiB,mBAAA;6BAClB,EAAC;;;;KACH;IAMO,gDAAqB,GAA7B,UAA8B,KAAsE;QAClG,OAAO,UAAG,KAAK,CAAC,SAAS,cAAI,KAAK,CAAC,SAAS,cAAI,KAAK,CAAC,gBAAgB,cAAI,KAAK,CAAC,UAAU,cAAI,KAAK,CAAC,WAAW,cAAI,KAAK,CAAC,WAAW,cAAI,KAAK,CAAC,YAAY,cAAI,KAAK,CAAC,aAAa,cAAI,KAAK,CAAC,SAAS,cAAI,KAAK,CAAC,YAAY,cAAI,KAAK,CAAC,mBAAmB,cAAI,KAAK,CAAC,OAAO,cAAI,KAAK,CAAC,kBAAkB,CAAE,CAAC;IACzS,CAAC;IAEK,mDAAwB,GAA9B,UACE,QAAkB,EAClB,oBAAgC,EAChC,gBAAyC;;;;;;;wBAElC,KAAA,CAAA,KAAA,MAAM,CAAA,CAAC,WAAW,CAAA;wBAErB,WAAM,IAAA,gBAAQ,EAAC,QAAQ,EAAE,UAAO,OAAO,EAAE,KAAK;;;;;4CACtC,kBAAkB,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;4CACvD,IAAI,CAAC,IAAA,iBAAS,EAAC,kBAAkB,CAAC,IAAI,IAAA,uBAAe,EAAC,kBAAkB,CAAC,EAAE;gDACzE,WAAO;6CACR;4CACM,mBAAmB,GAAuB,kBAAkB,GAAzC,EAAE,iBAAiB,GAAI,kBAAkB,GAAtB,CAAuB;4CAC9D,eAAe,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;4CAGlD,IAAI,CAAC,IAAA,iBAAS,EAAC,eAAe,CAAC,EAAE;gDAC/B,WAAO;6CACR;4CAMK,kBAAkB,GAAG,IAAI,CAAC,GAAG,CAAC,mBAAmB,EAAE,eAAe,CAAC,mBAAmB,CAAC,CAAC;4CACxF,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,eAAe,CAAC,mBAAmB,CAAC,CAAC;4CAExF,WAAM,eAAe,CAAC,oBAAoB,CAAC,kBAAkB,CAAC,EAAA;;;gDAA9D,SAA8D;;4CAC9D,WAAM,eAAe,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,EAAA;;4CAFxD;gDAEJ,SAA4D;8CAC7D,EAHM,SAAS,QAAA,EAAE,OAAO,QAAA;4CAKzB,IAAA,cAAM,EAAC,OAAO,IAAI,SAAS,EAAE,6CAA6C,CAAC,CAAC;4CAC5E,IAAA,cAAM,EACJ,kBAAkB,KAAK,CAAC,IAAI,SAAS,GAAG,CAAC,EACzC,8EAA8E,CAC/E,CAAC;4CACF,WAAO,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,EAAC;;;iCACxC,CAAC,EAAA;4BAhCN,WAAO,cACL,CACE,SA8BE,CACH,CAAC,MAAM,CAAC,iBAAS,CAAC,EACpB,EAAC;;;;KACH;IACH,uBAAC;AAAD,CAAC,AAvrCD,IAurCC;AAvrCY,4CAAgB"}
1
+ {"version":3,"file":"BundleDataClient.js","sourceRoot":"","sources":["../../../../src/clients/BundleDataClient/BundleDataClient.ts"],"names":[],"mappings":"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"}
@@ -3,8 +3,8 @@ export declare const BundleDataSS: import("superstruct").Struct<{
3
3
  bundleDepositsV3: Record<string, Record<string, {
4
4
  blockNumber: number;
5
5
  transactionIndex: number;
6
- transactionHash: string;
7
6
  logIndex: number;
7
+ transactionHash: string;
8
8
  message: string;
9
9
  originChainId: number;
10
10
  inputToken: string;
@@ -32,8 +32,8 @@ export declare const BundleDataSS: import("superstruct").Struct<{
32
32
  fills: {
33
33
  blockNumber: number;
34
34
  transactionIndex: number;
35
- transactionHash: string;
36
35
  logIndex: number;
36
+ transactionHash: string;
37
37
  message: string;
38
38
  originChainId: number;
39
39
  inputToken: string;
@@ -65,8 +65,8 @@ export declare const BundleDataSS: import("superstruct").Struct<{
65
65
  bundleSlowFillsV3: Record<string, Record<string, {
66
66
  blockNumber: number;
67
67
  transactionIndex: number;
68
- transactionHash: string;
69
68
  logIndex: number;
69
+ transactionHash: string;
70
70
  message: string;
71
71
  originChainId: number;
72
72
  inputToken: string;
@@ -94,8 +94,8 @@ export declare const BundleDataSS: import("superstruct").Struct<{
94
94
  expiredDepositsToRefundV3: Record<string, Record<string, {
95
95
  blockNumber: number;
96
96
  transactionIndex: number;
97
- transactionHash: string;
98
97
  logIndex: number;
98
+ transactionHash: string;
99
99
  message: string;
100
100
  originChainId: number;
101
101
  inputToken: string;
@@ -122,8 +122,8 @@ export declare const BundleDataSS: import("superstruct").Struct<{
122
122
  unexecutableSlowFills: Record<string, Record<string, {
123
123
  blockNumber: number;
124
124
  transactionIndex: number;
125
- transactionHash: string;
126
125
  logIndex: number;
126
+ transactionHash: string;
127
127
  message: string;
128
128
  originChainId: number;
129
129
  inputToken: string;
@@ -152,8 +152,8 @@ export declare const BundleDataSS: import("superstruct").Struct<{
152
152
  bundleDepositsV3: import("superstruct").Struct<Record<string, Record<string, {
153
153
  blockNumber: number;
154
154
  transactionIndex: number;
155
- transactionHash: string;
156
155
  logIndex: number;
156
+ transactionHash: string;
157
157
  message: string;
158
158
  originChainId: number;
159
159
  inputToken: string;
@@ -180,8 +180,8 @@ export declare const BundleDataSS: import("superstruct").Struct<{
180
180
  expiredDepositsToRefundV3: import("superstruct").Struct<Record<string, Record<string, {
181
181
  blockNumber: number;
182
182
  transactionIndex: number;
183
- transactionHash: string;
184
183
  logIndex: number;
184
+ transactionHash: string;
185
185
  message: string;
186
186
  originChainId: number;
187
187
  inputToken: string;
@@ -208,8 +208,8 @@ export declare const BundleDataSS: import("superstruct").Struct<{
208
208
  unexecutableSlowFills: import("superstruct").Struct<Record<string, Record<string, {
209
209
  blockNumber: number;
210
210
  transactionIndex: number;
211
- transactionHash: string;
212
211
  logIndex: number;
212
+ transactionHash: string;
213
213
  message: string;
214
214
  originChainId: number;
215
215
  inputToken: string;
@@ -237,8 +237,8 @@ export declare const BundleDataSS: import("superstruct").Struct<{
237
237
  bundleSlowFillsV3: import("superstruct").Struct<Record<string, Record<string, {
238
238
  blockNumber: number;
239
239
  transactionIndex: number;
240
- transactionHash: string;
241
240
  logIndex: number;
241
+ transactionHash: string;
242
242
  message: string;
243
243
  originChainId: number;
244
244
  inputToken: string;
@@ -267,8 +267,8 @@ export declare const BundleDataSS: import("superstruct").Struct<{
267
267
  fills: {
268
268
  blockNumber: number;
269
269
  transactionIndex: number;
270
- transactionHash: string;
271
270
  logIndex: number;
271
+ transactionHash: string;
272
272
  message: string;
273
273
  originChainId: number;
274
274
  inputToken: string;
@@ -1,3 +1,4 @@
1
1
  import { providers } from "ethers";
2
2
  import { GasPriceEstimate } from "../types";
3
- export declare function eip1559(provider: providers.Provider, chainId: number): Promise<GasPriceEstimate>;
3
+ import { GasPriceEstimateOptions } from "../oracle";
4
+ export declare function eip1559(provider: providers.Provider, opts: GasPriceEstimateOptions): Promise<GasPriceEstimate>;
@@ -4,12 +4,12 @@ exports.eip1559 = void 0;
4
4
  var tslib_1 = require("tslib");
5
5
  var utils_1 = require("../../utils");
6
6
  var ethereum = tslib_1.__importStar(require("./ethereum"));
7
- function eip1559(provider, chainId) {
7
+ function eip1559(provider, opts) {
8
8
  return tslib_1.__awaiter(this, void 0, void 0, function () {
9
9
  var _a, _maxFeePerGas, maxPriorityFeePerGas, maxFeePerGas;
10
10
  return tslib_1.__generator(this, function (_b) {
11
11
  switch (_b.label) {
12
- case 0: return [4, ethereum.eip1559(provider, chainId)];
12
+ case 0: return [4, ethereum.eip1559(provider, opts)];
13
13
  case 1:
14
14
  _a = _b.sent(), _maxFeePerGas = _a.maxFeePerGas, maxPriorityFeePerGas = _a.maxPriorityFeePerGas;
15
15
  maxFeePerGas = _maxFeePerGas.sub(maxPriorityFeePerGas).add(utils_1.bnOne);
@@ -1 +1 @@
1
- {"version":3,"file":"arbitrum.js","sourceRoot":"","sources":["../../../../src/gasPriceOracle/adapters/arbitrum.ts"],"names":[],"mappings":";;;;AACA,qCAAoC;AAEpC,2DAAuC;AAIvC,SAAsB,OAAO,CAAC,QAA4B,EAAE,OAAe;;;;;wBACX,WAAM,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAA;;oBAAjG,KAAwD,SAAyC,EAAjF,aAAa,kBAAA,EAAE,oBAAoB,0BAAA;oBAInD,YAAY,GAAG,aAAa,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,GAAG,CAAC,aAAK,CAAC,CAAC;oBAExE,WAAO,EAAE,oBAAoB,EAAE,aAAK,EAAE,YAAY,cAAA,EAAE,EAAC;;;;CACtD;AARD,0BAQC"}
1
+ {"version":3,"file":"arbitrum.js","sourceRoot":"","sources":["../../../../src/gasPriceOracle/adapters/arbitrum.ts"],"names":[],"mappings":";;;;AACA,qCAAoC;AAEpC,2DAAuC;AAWvC,SAAsB,OAAO,CAAC,QAA4B,EAAE,IAA6B;;;;;wBACzB,WAAM,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAA;;oBAA9F,KAAwD,SAAsC,EAA9E,aAAa,kBAAA,EAAE,oBAAoB,0BAAA;oBAInD,YAAY,GAAG,aAAa,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,GAAG,CAAC,aAAK,CAAC,CAAC;oBAExE,WAAO,EAAE,oBAAoB,EAAE,aAAK,EAAE,YAAY,cAAA,EAAE,EAAC;;;;CACtD;AARD,0BAQC"}
@@ -1,6 +1,8 @@
1
1
  import { providers } from "ethers";
2
+ import { BigNumber } from "../../utils";
2
3
  import { GasPriceEstimate } from "../types";
3
- export declare function eip1559(provider: providers.Provider, chainId: number): Promise<GasPriceEstimate>;
4
- export declare function eip1559Raw(provider: providers.Provider, chainId: number): Promise<GasPriceEstimate>;
5
- export declare function eip1559Bad(provider: providers.Provider, chainId: number): Promise<GasPriceEstimate>;
6
- export declare function legacy(provider: providers.Provider, chainId: number): Promise<GasPriceEstimate>;
4
+ import { GasPriceEstimateOptions } from "../oracle";
5
+ export declare function eip1559(provider: providers.Provider, opts: GasPriceEstimateOptions): Promise<GasPriceEstimate>;
6
+ export declare function eip1559Raw(provider: providers.Provider, chainId: number, baseFeeMultiplier: BigNumber): Promise<GasPriceEstimate>;
7
+ export declare function eip1559Bad(provider: providers.Provider, chainId: number, baseFeeMultiplier: BigNumber): Promise<GasPriceEstimate>;
8
+ export declare function legacy(provider: providers.Provider, opts: GasPriceEstimateOptions): Promise<GasPriceEstimate>;
@@ -5,14 +5,16 @@ var tslib_1 = require("tslib");
5
5
  var assert_1 = tslib_1.__importDefault(require("assert"));
6
6
  var utils_1 = require("../../utils");
7
7
  var util_1 = require("../util");
8
- function eip1559(provider, chainId) {
9
- var useRaw = process.env["GAS_PRICE_EIP1559_RAW_".concat(chainId)] === "true";
10
- return useRaw ? eip1559Raw(provider, chainId) : eip1559Bad(provider, chainId);
8
+ function eip1559(provider, opts) {
9
+ var useRaw = process.env["GAS_PRICE_EIP1559_RAW_".concat(opts.chainId)] === "true";
10
+ return useRaw
11
+ ? eip1559Raw(provider, opts.chainId, opts.baseFeeMultiplier)
12
+ : eip1559Bad(provider, opts.chainId, opts.baseFeeMultiplier);
11
13
  }
12
14
  exports.eip1559 = eip1559;
13
- function eip1559Raw(provider, chainId) {
15
+ function eip1559Raw(provider, chainId, baseFeeMultiplier) {
14
16
  return tslib_1.__awaiter(this, void 0, void 0, function () {
15
- var _a, baseFeePerGas, _maxPriorityFeePerGas, maxPriorityFeePerGas;
17
+ var _a, baseFeePerGas, _maxPriorityFeePerGas, maxPriorityFeePerGas, scaledBaseFee;
16
18
  return tslib_1.__generator(this, function (_b) {
17
19
  switch (_b.label) {
18
20
  case 0: return [4, Promise.all([
@@ -23,8 +25,9 @@ function eip1559Raw(provider, chainId) {
23
25
  _a = _b.sent(), baseFeePerGas = _a[0].baseFeePerGas, _maxPriorityFeePerGas = _a[1];
24
26
  maxPriorityFeePerGas = utils_1.BigNumber.from(_maxPriorityFeePerGas);
25
27
  (0, assert_1.default)(utils_1.BigNumber.isBigNumber(baseFeePerGas), "No baseFeePerGas received on ".concat((0, utils_1.getNetworkName)(chainId)));
28
+ scaledBaseFee = baseFeePerGas.mul(baseFeeMultiplier).div(utils_1.fixedPointAdjustment);
26
29
  return [2, {
27
- maxFeePerGas: maxPriorityFeePerGas.add(baseFeePerGas),
30
+ maxFeePerGas: maxPriorityFeePerGas.add(scaledBaseFee),
28
31
  maxPriorityFeePerGas: maxPriorityFeePerGas,
29
32
  }];
30
33
  }
@@ -32,9 +35,9 @@ function eip1559Raw(provider, chainId) {
32
35
  });
33
36
  }
34
37
  exports.eip1559Raw = eip1559Raw;
35
- function eip1559Bad(provider, chainId) {
38
+ function eip1559Bad(provider, chainId, baseFeeMultiplier) {
36
39
  return tslib_1.__awaiter(this, void 0, void 0, function () {
37
- var feeData, maxPriorityFeePerGas, maxFeePerGas;
40
+ var feeData, maxPriorityFeePerGas, scaledLastBaseFeePerGas, maxFeePerGas;
38
41
  return tslib_1.__generator(this, function (_a) {
39
42
  switch (_a.label) {
40
43
  case 0: return [4, provider.getFeeData()];
@@ -45,25 +48,30 @@ function eip1559Bad(provider, chainId) {
45
48
  (0, util_1.gasPriceError)("getFeeData()", chainId, feeData);
46
49
  });
47
50
  maxPriorityFeePerGas = feeData.maxPriorityFeePerGas;
48
- maxFeePerGas = maxPriorityFeePerGas.add(feeData.lastBaseFeePerGas);
51
+ scaledLastBaseFeePerGas = feeData.lastBaseFeePerGas
52
+ .mul(baseFeeMultiplier)
53
+ .div(utils_1.fixedPointAdjustment);
54
+ maxFeePerGas = maxPriorityFeePerGas.add(scaledLastBaseFeePerGas);
49
55
  return [2, { maxPriorityFeePerGas: maxPriorityFeePerGas, maxFeePerGas: maxFeePerGas }];
50
56
  }
51
57
  });
52
58
  });
53
59
  }
54
60
  exports.eip1559Bad = eip1559Bad;
55
- function legacy(provider, chainId) {
61
+ function legacy(provider, opts) {
56
62
  return tslib_1.__awaiter(this, void 0, void 0, function () {
57
- var gasPrice;
63
+ var chainId, baseFeeMultiplier, gasPrice;
58
64
  return tslib_1.__generator(this, function (_a) {
59
65
  switch (_a.label) {
60
- case 0: return [4, provider.getGasPrice()];
66
+ case 0:
67
+ chainId = opts.chainId, baseFeeMultiplier = opts.baseFeeMultiplier;
68
+ return [4, provider.getGasPrice()];
61
69
  case 1:
62
70
  gasPrice = _a.sent();
63
71
  if (!utils_1.BigNumber.isBigNumber(gasPrice) || gasPrice.lt(utils_1.bnZero))
64
72
  (0, util_1.gasPriceError)("getGasPrice()", chainId, gasPrice);
65
73
  return [2, {
66
- maxFeePerGas: gasPrice,
74
+ maxFeePerGas: gasPrice.mul(baseFeeMultiplier).div(utils_1.fixedPointAdjustment),
67
75
  maxPriorityFeePerGas: utils_1.bnZero,
68
76
  }];
69
77
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ethereum.js","sourceRoot":"","sources":["../../../../src/gasPriceOracle/adapters/ethereum.ts"],"names":[],"mappings":";;;;AAAA,0DAA4B;AAE5B,qCAAgE;AAEhE,gCAAwC;AAOxC,SAAgB,OAAO,CAAC,QAA4B,EAAE,OAAe;IACnE,IAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,gCAAyB,OAAO,CAAE,CAAC,KAAK,MAAM,CAAC;IAC1E,OAAO,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AAChF,CAAC;AAHD,0BAGC;AAQD,SAAsB,UAAU,CAAC,QAA4B,EAAE,OAAe;;;;;wBACzB,WAAM,OAAO,CAAC,GAAG,CAAC;wBACnE,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC;wBAC3B,QAAsC,CAAC,IAAI,CAAC,0BAA0B,EAAE,EAAE,CAAC;qBAC7E,CAAC,EAAA;;oBAHI,KAA6C,SAGjD,EAHO,aAAa,sBAAA,EAAI,qBAAqB,QAAA;oBAIzC,oBAAoB,GAAG,iBAAS,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;oBACnE,IAAA,gBAAM,EAAC,iBAAS,CAAC,WAAW,CAAC,aAAa,CAAC,EAAE,uCAAgC,IAAA,sBAAc,EAAC,OAAO,CAAC,CAAE,CAAC,CAAC;oBAExG,WAAO;4BACL,YAAY,EAAE,oBAAoB,CAAC,GAAG,CAAC,aAAa,CAAC;4BACrD,oBAAoB,sBAAA;yBACrB,EAAC;;;;CACH;AAZD,gCAYC;AAQD,SAAsB,UAAU,CAAC,QAA4B,EAAE,OAAe;;;;;wBAC5D,WAAM,QAAQ,CAAC,UAAU,EAAE,EAAA;;oBAArC,OAAO,GAAG,SAA2B;oBAE3C,CAAC,OAAO,CAAC,iBAAiB,EAAE,OAAO,CAAC,oBAAoB,CAAC,CAAC,OAAO,CAAC,UAAC,KAAuB;wBACxF,IAAI,CAAC,iBAAS,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC,cAAM,CAAC;4BAAE,IAAA,oBAAa,EAAC,cAAc,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;oBACzG,CAAC,CAAC,CAAC;oBAEG,oBAAoB,GAAG,OAAO,CAAC,oBAAiC,CAAC;oBACjE,YAAY,GAAG,oBAAoB,CAAC,GAAG,CAAC,OAAO,CAAC,iBAA8B,CAAC,CAAC;oBAEtF,WAAO,EAAE,oBAAoB,sBAAA,EAAE,YAAY,cAAA,EAAE,EAAC;;;;CAC/C;AAXD,gCAWC;AAED,SAAsB,MAAM,CAAC,QAA4B,EAAE,OAAe;;;;;wBACvD,WAAM,QAAQ,CAAC,WAAW,EAAE,EAAA;;oBAAvC,QAAQ,GAAG,SAA4B;oBAE7C,IAAI,CAAC,iBAAS,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,EAAE,CAAC,cAAM,CAAC;wBAAE,IAAA,oBAAa,EAAC,eAAe,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;oBAE/G,WAAO;4BACL,YAAY,EAAE,QAAQ;4BACtB,oBAAoB,EAAE,cAAM;yBAC7B,EAAC;;;;CACH;AATD,wBASC"}
1
+ {"version":3,"file":"ethereum.js","sourceRoot":"","sources":["../../../../src/gasPriceOracle/adapters/ethereum.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
1
  import { PublicClient } from "viem";
2
2
  import { InternalGasPriceEstimate } from "../types";
3
- export declare function eip1559(provider: PublicClient, _chainId?: number): Promise<InternalGasPriceEstimate>;
3
+ import { GasPriceEstimateOptions } from "../oracle";
4
+ export declare function eip1559(provider: PublicClient, opts: GasPriceEstimateOptions): Promise<InternalGasPriceEstimate>;
@@ -4,18 +4,24 @@ exports.eip1559 = void 0;
4
4
  var tslib_1 = require("tslib");
5
5
  var linea_1 = require("viem/linea");
6
6
  var constants_1 = require("../../constants");
7
- function eip1559(provider, _chainId) {
7
+ var utils_1 = require("../../utils");
8
+ function eip1559(provider, opts) {
9
+ var _a, _b, _c, _d, _e;
8
10
  return tslib_1.__awaiter(this, void 0, void 0, function () {
9
- var _a, baseFeePerGas, priorityFeePerGas;
10
- return tslib_1.__generator(this, function (_b) {
11
- switch (_b.label) {
12
- case 0: return [4, (0, linea_1.estimateGas)(provider, {
13
- account: constants_1.DEFAULT_SIMULATED_RELAYER_ADDRESS,
14
- to: constants_1.DEFAULT_SIMULATED_RELAYER_ADDRESS,
15
- value: BigInt(1),
16
- })];
11
+ var unsignedTx, baseFeeMultiplier, _f, baseFeePerGas, _priorityFeePerGas, priorityFeePerGas;
12
+ return tslib_1.__generator(this, function (_g) {
13
+ switch (_g.label) {
14
+ case 0:
15
+ unsignedTx = opts.unsignedTx, baseFeeMultiplier = opts.baseFeeMultiplier;
16
+ return [4, (0, linea_1.estimateGas)(provider, {
17
+ account: (_a = unsignedTx === null || unsignedTx === void 0 ? void 0 : unsignedTx.from) !== null && _a !== void 0 ? _a : constants_1.DEFAULT_SIMULATED_RELAYER_ADDRESS,
18
+ to: (_b = unsignedTx === null || unsignedTx === void 0 ? void 0 : unsignedTx.to) !== null && _b !== void 0 ? _b : constants_1.DEFAULT_SIMULATED_RELAYER_ADDRESS,
19
+ value: BigInt((_d = (_c = unsignedTx === null || unsignedTx === void 0 ? void 0 : unsignedTx.value) === null || _c === void 0 ? void 0 : _c.toString()) !== null && _d !== void 0 ? _d : "1"),
20
+ data: (_e = unsignedTx === null || unsignedTx === void 0 ? void 0 : unsignedTx.data) !== null && _e !== void 0 ? _e : "0x",
21
+ })];
17
22
  case 1:
18
- _a = _b.sent(), baseFeePerGas = _a.baseFeePerGas, priorityFeePerGas = _a.priorityFeePerGas;
23
+ _f = _g.sent(), baseFeePerGas = _f.baseFeePerGas, _priorityFeePerGas = _f.priorityFeePerGas;
24
+ priorityFeePerGas = (_priorityFeePerGas * BigInt(baseFeeMultiplier.toString())) / BigInt(utils_1.fixedPointAdjustment.toString());
19
25
  return [2, {
20
26
  maxFeePerGas: baseFeePerGas + priorityFeePerGas,
21
27
  maxPriorityFeePerGas: priorityFeePerGas,
@@ -1 +1 @@
1
- {"version":3,"file":"linea-viem.js","sourceRoot":"","sources":["../../../../src/gasPriceOracle/adapters/linea-viem.ts"],"names":[],"mappings":";;;;AACA,oCAAyC;AACzC,6CAA+E;AAG/E,SAAsB,OAAO,CAAC,QAAsB,EAAE,QAAiB;;;;;wBACxB,WAAM,IAAA,mBAAW,EAAC,QAAQ,EAAE;wBACvE,OAAO,+CAAA;wBACP,EAAE,EAAE,6CAAO;wBACX,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;qBACjB,CAAC,EAAA;;oBAJI,KAAuC,SAI3C,EAJM,aAAa,mBAAA,EAAE,iBAAiB,uBAAA;oBAMxC,WAAO;4BACL,YAAY,EAAE,aAAa,GAAG,iBAAiB;4BAC/C,oBAAoB,EAAE,iBAAiB;yBACxC,EAAC;;;;CACH;AAXD,0BAWC"}
1
+ {"version":3,"file":"linea-viem.js","sourceRoot":"","sources":["../../../../src/gasPriceOracle/adapters/linea-viem.ts"],"names":[],"mappings":";;;;AACA,oCAAyC;AACzC,6CAA+E;AAG/E,qCAAmD;AAmBnD,SAAsB,OAAO,CAC3B,QAAsB,EACtB,IAA6B;;;;;;;oBAErB,UAAU,GAAwB,IAAI,WAA5B,EAAE,iBAAiB,GAAK,IAAI,kBAAT,CAAU;oBACkB,WAAM,IAAA,mBAAW,EAAC,QAAQ,EAAE;4BAC3F,OAAO,EAAE,MAAC,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,IAAgB,mCAAI,6CAAO;4BACjD,EAAE,EAAE,MAAC,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,EAAc,mCAAI,6CAAO;4BAC1C,KAAK,EAAE,MAAM,CAAC,MAAA,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,KAAK,0CAAE,QAAQ,EAAE,mCAAI,GAAG,CAAC;4BACnD,IAAI,EAAE,MAAC,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,IAAY,mCAAI,IAAI;yBACxC,CAAC,EAAA;;oBALI,KAA2D,SAK/D,EALM,aAAa,mBAAA,EAAqB,kBAAkB,uBAAA;oBAMtD,iBAAiB,GACrB,CAAC,kBAAkB,GAAG,MAAM,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,4BAAoB,CAAC,QAAQ,EAAE,CAAC,CAAC;oBAExG,WAAO;4BACL,YAAY,EAAE,aAAa,GAAG,iBAAiB;4BAC/C,oBAAoB,EAAE,iBAAiB;yBACxC,EAAC;;;;CACH;AAlBD,0BAkBC"}
@@ -1,3 +1,4 @@
1
1
  import { providers } from "ethers";
2
2
  import { GasPriceEstimate } from "../types";
3
- export declare function eip1559(provider: providers.Provider, chainId: number): Promise<GasPriceEstimate>;
3
+ import { GasPriceEstimateOptions } from "../oracle";
4
+ export declare function eip1559(provider: providers.Provider, opts: GasPriceEstimateOptions): Promise<GasPriceEstimate>;
@@ -3,8 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.eip1559 = void 0;
4
4
  var tslib_1 = require("tslib");
5
5
  var ethereum = tslib_1.__importStar(require("./ethereum"));
6
- function eip1559(provider, chainId) {
7
- return ethereum.legacy(provider, chainId);
6
+ function eip1559(provider, opts) {
7
+ return ethereum.legacy(provider, opts);
8
8
  }
9
9
  exports.eip1559 = eip1559;
10
10
  //# sourceMappingURL=linea.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"linea.js","sourceRoot":"","sources":["../../../../src/gasPriceOracle/adapters/linea.ts"],"names":[],"mappings":";;;;AAMA,2DAAuC;AAEvC,SAAgB,OAAO,CAAC,QAA4B,EAAE,OAAe;IACnE,OAAO,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AAC5C,CAAC;AAFD,0BAEC"}
1
+ {"version":3,"file":"linea.js","sourceRoot":"","sources":["../../../../src/gasPriceOracle/adapters/linea.ts"],"names":[],"mappings":";;;;AAMA,2DAAuC;AAGvC,SAAgB,OAAO,CAAC,QAA4B,EAAE,IAA6B;IAKjF,OAAO,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;AACzC,CAAC;AAND,0BAMC"}
@@ -1,3 +1,23 @@
1
1
  import { providers } from "ethers";
2
+ import { BaseHTTPAdapter, BaseHTTPAdapterArgs } from "../../priceClient/adapters/baseAdapter";
3
+ import { BigNumber } from "../../utils";
2
4
  import { GasPriceEstimate } from "../types";
3
- export declare function gasStation(provider: providers.Provider, chainId: number): Promise<GasPriceEstimate>;
5
+ import { GasPriceEstimateOptions } from "../oracle";
6
+ type Polygon1559GasPrice = {
7
+ maxPriorityFee: number | string;
8
+ maxFee: number | string;
9
+ };
10
+ type GasStationArgs = BaseHTTPAdapterArgs & {
11
+ chainId?: number;
12
+ host?: string;
13
+ };
14
+ export declare class PolygonGasStation extends BaseHTTPAdapter {
15
+ readonly chainId: number;
16
+ constructor({ chainId, host, timeout, retries }?: GasStationArgs);
17
+ getFeeData(strategy?: "safeLow" | "standard" | "fast"): Promise<GasPriceEstimate>;
18
+ protected isPolygon1559GasPrice(gasPrice: unknown): gasPrice is Polygon1559GasPrice;
19
+ }
20
+ export declare const MockPolygonGasStationBaseFee: () => BigNumber;
21
+ export declare const MockPolygonGasStationPriorityFee: () => BigNumber;
22
+ export declare function gasStation(provider: providers.Provider, opts: GasPriceEstimateOptions): Promise<GasPriceEstimate>;
23
+ export {};
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.gasStation = void 0;
3
+ exports.gasStation = exports.MockPolygonGasStationPriorityFee = exports.MockPolygonGasStationBaseFee = exports.PolygonGasStation = void 0;
4
4
  var tslib_1 = require("tslib");
5
5
  var baseAdapter_1 = require("../../priceClient/adapters/baseAdapter");
6
6
  var utils_1 = require("../../utils");
@@ -53,24 +53,64 @@ var PolygonGasStation = (function (_super) {
53
53
  };
54
54
  return PolygonGasStation;
55
55
  }(baseAdapter_1.BaseHTTPAdapter));
56
- function gasStation(provider, chainId) {
56
+ exports.PolygonGasStation = PolygonGasStation;
57
+ var MockRevertingPolygonGasStation = (function (_super) {
58
+ tslib_1.__extends(MockRevertingPolygonGasStation, _super);
59
+ function MockRevertingPolygonGasStation() {
60
+ return _super !== null && _super.apply(this, arguments) || this;
61
+ }
62
+ MockRevertingPolygonGasStation.prototype.getFeeData = function () {
63
+ throw new Error();
64
+ };
65
+ return MockRevertingPolygonGasStation;
66
+ }(PolygonGasStation));
67
+ var MockPolygonGasStationBaseFee = function () { return (0, utils_1.parseUnits)("12", 9); };
68
+ exports.MockPolygonGasStationBaseFee = MockPolygonGasStationBaseFee;
69
+ var MockPolygonGasStationPriorityFee = function () { return (0, utils_1.parseUnits)("1", 9); };
70
+ exports.MockPolygonGasStationPriorityFee = MockPolygonGasStationPriorityFee;
71
+ var MockPolygonGasStation = (function (_super) {
72
+ tslib_1.__extends(MockPolygonGasStation, _super);
73
+ function MockPolygonGasStation() {
74
+ return _super !== null && _super.apply(this, arguments) || this;
75
+ }
76
+ MockPolygonGasStation.prototype.getFeeData = function () {
77
+ return Promise.resolve({
78
+ maxPriorityFeePerGas: (0, exports.MockPolygonGasStationPriorityFee)(),
79
+ maxFeePerGas: (0, exports.MockPolygonGasStationBaseFee)().add((0, exports.MockPolygonGasStationPriorityFee)()),
80
+ });
81
+ };
82
+ return MockPolygonGasStation;
83
+ }(PolygonGasStation));
84
+ function gasStation(provider, opts) {
57
85
  return tslib_1.__awaiter(this, void 0, void 0, function () {
58
- var gasStation, maxPriorityFeePerGas, maxFeePerGas, err_1, minPriorityFee, priorityDelta;
86
+ var chainId, baseFeeMultiplier, gasStation, maxPriorityFeePerGas, maxFeePerGas, baseFeeMinusPriorityFee, scaledBaseFee, err_1, minPriorityFee, priorityDelta;
59
87
  var _a, _b;
60
88
  return tslib_1.__generator(this, function (_c) {
61
89
  switch (_c.label) {
62
90
  case 0:
63
- gasStation = new PolygonGasStation({ chainId: chainId, timeout: 2000, retries: 0 });
91
+ chainId = opts.chainId, baseFeeMultiplier = opts.baseFeeMultiplier;
92
+ if (process.env.TEST_POLYGON_GAS_STATION === "true") {
93
+ gasStation = new MockPolygonGasStation();
94
+ }
95
+ else if (process.env.TEST_REVERTING_POLYGON_GAS_STATION === "true") {
96
+ gasStation = new MockRevertingPolygonGasStation();
97
+ }
98
+ else {
99
+ gasStation = new PolygonGasStation({ chainId: chainId, timeout: 2000, retries: 0 });
100
+ }
64
101
  _c.label = 1;
65
102
  case 1:
66
103
  _c.trys.push([1, 3, , 5]);
67
104
  return [4, gasStation.getFeeData()];
68
105
  case 2:
69
106
  (_a = _c.sent(), maxPriorityFeePerGas = _a.maxPriorityFeePerGas, maxFeePerGas = _a.maxFeePerGas);
107
+ baseFeeMinusPriorityFee = maxFeePerGas.sub(maxPriorityFeePerGas);
108
+ scaledBaseFee = baseFeeMinusPriorityFee.mul(baseFeeMultiplier).div(utils_1.fixedPointAdjustment);
109
+ maxFeePerGas = scaledBaseFee.add(maxPriorityFeePerGas);
70
110
  return [3, 5];
71
111
  case 3:
72
112
  err_1 = _c.sent();
73
- return [4, (0, ethereum_1.eip1559)(provider, chainId)];
113
+ return [4, (0, ethereum_1.eip1559)(provider, opts)];
74
114
  case 4:
75
115
  (_b = _c.sent(), maxPriorityFeePerGas = _b.maxPriorityFeePerGas, maxFeePerGas = _b.maxFeePerGas);
76
116
  minPriorityFee = (0, utils_1.parseUnits)("30", 9);