@across-protocol/sdk 4.1.44 → 4.1.45-beta.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 (100) hide show
  1. package/dist/cjs/clients/BundleDataClient/BundleDataClient.js +13 -6
  2. package/dist/cjs/clients/BundleDataClient/BundleDataClient.js.map +1 -1
  3. package/dist/cjs/clients/BundleDataClient/utils/DataworkerUtils.js +9 -0
  4. package/dist/cjs/clients/BundleDataClient/utils/DataworkerUtils.js.map +1 -1
  5. package/dist/cjs/clients/BundleDataClient/utils/FillUtils.d.ts +7 -6
  6. package/dist/cjs/clients/BundleDataClient/utils/FillUtils.js +46 -35
  7. package/dist/cjs/clients/BundleDataClient/utils/FillUtils.js.map +1 -1
  8. package/dist/cjs/clients/HubPoolClient.d.ts +2 -0
  9. package/dist/cjs/clients/HubPoolClient.js +27 -10
  10. package/dist/cjs/clients/HubPoolClient.js.map +1 -1
  11. package/dist/cjs/clients/SpokePoolClient/SpokePoolClient.d.ts +1 -0
  12. package/dist/cjs/clients/SpokePoolClient/SpokePoolClient.js +16 -3
  13. package/dist/cjs/clients/SpokePoolClient/SpokePoolClient.js.map +1 -1
  14. package/dist/cjs/clients/mocks/MockHubPoolClient.d.ts +2 -0
  15. package/dist/cjs/clients/mocks/MockHubPoolClient.js +18 -0
  16. package/dist/cjs/clients/mocks/MockHubPoolClient.js.map +1 -1
  17. package/dist/cjs/svm/eventsClient.js +5 -12
  18. package/dist/cjs/svm/eventsClient.js.map +1 -1
  19. package/dist/cjs/svm/index.d.ts +2 -0
  20. package/dist/cjs/svm/index.js +3 -0
  21. package/dist/cjs/svm/index.js.map +1 -1
  22. package/dist/cjs/svm/utils/events.d.ts +6 -1
  23. package/dist/cjs/svm/utils/events.js +13 -4
  24. package/dist/cjs/svm/utils/events.js.map +1 -1
  25. package/dist/cjs/svm/utils/index.d.ts +1 -0
  26. package/dist/cjs/svm/utils/index.js +5 -0
  27. package/dist/cjs/svm/utils/index.js.map +1 -0
  28. package/dist/cjs/utils/DepositUtils.d.ts +1 -0
  29. package/dist/cjs/utils/DepositUtils.js +5 -1
  30. package/dist/cjs/utils/DepositUtils.js.map +1 -1
  31. package/dist/cjs/utils/common.d.ts +2 -0
  32. package/dist/cjs/utils/common.js +3 -1
  33. package/dist/cjs/utils/common.js.map +1 -1
  34. package/dist/esm/clients/BundleDataClient/BundleDataClient.js +14 -7
  35. package/dist/esm/clients/BundleDataClient/BundleDataClient.js.map +1 -1
  36. package/dist/esm/clients/BundleDataClient/utils/DataworkerUtils.js +15 -0
  37. package/dist/esm/clients/BundleDataClient/utils/DataworkerUtils.js.map +1 -1
  38. package/dist/esm/clients/BundleDataClient/utils/FillUtils.d.ts +28 -6
  39. package/dist/esm/clients/BundleDataClient/utils/FillUtils.js +82 -49
  40. package/dist/esm/clients/BundleDataClient/utils/FillUtils.js.map +1 -1
  41. package/dist/esm/clients/HubPoolClient.d.ts +2 -0
  42. package/dist/esm/clients/HubPoolClient.js +31 -13
  43. package/dist/esm/clients/HubPoolClient.js.map +1 -1
  44. package/dist/esm/clients/SpokePoolClient/SpokePoolClient.d.ts +1 -0
  45. package/dist/esm/clients/SpokePoolClient/SpokePoolClient.js +24 -11
  46. package/dist/esm/clients/SpokePoolClient/SpokePoolClient.js.map +1 -1
  47. package/dist/esm/clients/mocks/MockHubPoolClient.d.ts +2 -0
  48. package/dist/esm/clients/mocks/MockHubPoolClient.js +18 -0
  49. package/dist/esm/clients/mocks/MockHubPoolClient.js.map +1 -1
  50. package/dist/esm/svm/eventsClient.js +6 -13
  51. package/dist/esm/svm/eventsClient.js.map +1 -1
  52. package/dist/esm/svm/index.d.ts +2 -0
  53. package/dist/esm/svm/index.js +3 -0
  54. package/dist/esm/svm/index.js.map +1 -1
  55. package/dist/esm/svm/utils/events.d.ts +9 -1
  56. package/dist/esm/svm/utils/events.js +15 -3
  57. package/dist/esm/svm/utils/events.js.map +1 -1
  58. package/dist/esm/svm/utils/index.d.ts +1 -0
  59. package/dist/esm/svm/utils/index.js +2 -0
  60. package/dist/esm/svm/utils/index.js.map +1 -0
  61. package/dist/esm/utils/DepositUtils.d.ts +1 -0
  62. package/dist/esm/utils/DepositUtils.js +5 -1
  63. package/dist/esm/utils/DepositUtils.js.map +1 -1
  64. package/dist/esm/utils/common.d.ts +2 -0
  65. package/dist/esm/utils/common.js +2 -0
  66. package/dist/esm/utils/common.js.map +1 -1
  67. package/dist/types/clients/BundleDataClient/BundleDataClient.d.ts.map +1 -1
  68. package/dist/types/clients/BundleDataClient/utils/DataworkerUtils.d.ts.map +1 -1
  69. package/dist/types/clients/BundleDataClient/utils/FillUtils.d.ts +28 -6
  70. package/dist/types/clients/BundleDataClient/utils/FillUtils.d.ts.map +1 -1
  71. package/dist/types/clients/HubPoolClient.d.ts +2 -0
  72. package/dist/types/clients/HubPoolClient.d.ts.map +1 -1
  73. package/dist/types/clients/SpokePoolClient/SpokePoolClient.d.ts +1 -0
  74. package/dist/types/clients/SpokePoolClient/SpokePoolClient.d.ts.map +1 -1
  75. package/dist/types/clients/mocks/MockHubPoolClient.d.ts +2 -0
  76. package/dist/types/clients/mocks/MockHubPoolClient.d.ts.map +1 -1
  77. package/dist/types/svm/eventsClient.d.ts.map +1 -1
  78. package/dist/types/svm/index.d.ts +2 -0
  79. package/dist/types/svm/index.d.ts.map +1 -1
  80. package/dist/types/svm/utils/events.d.ts +9 -1
  81. package/dist/types/svm/utils/events.d.ts.map +1 -1
  82. package/dist/types/svm/utils/index.d.ts +2 -0
  83. package/dist/types/svm/utils/index.d.ts.map +1 -0
  84. package/dist/types/utils/DepositUtils.d.ts +1 -0
  85. package/dist/types/utils/DepositUtils.d.ts.map +1 -1
  86. package/dist/types/utils/common.d.ts +2 -0
  87. package/dist/types/utils/common.d.ts.map +1 -1
  88. package/package.json +1 -1
  89. package/src/clients/BundleDataClient/BundleDataClient.ts +28 -18
  90. package/src/clients/BundleDataClient/utils/DataworkerUtils.ts +29 -0
  91. package/src/clients/BundleDataClient/utils/FillUtils.ts +128 -71
  92. package/src/clients/HubPoolClient.ts +38 -14
  93. package/src/clients/SpokePoolClient/SpokePoolClient.ts +40 -14
  94. package/src/clients/mocks/MockHubPoolClient.ts +16 -0
  95. package/src/svm/eventsClient.ts +6 -12
  96. package/src/svm/index.ts +2 -0
  97. package/src/svm/utils/events.ts +16 -4
  98. package/src/svm/utils/index.ts +1 -0
  99. package/src/utils/DepositUtils.ts +6 -1
  100. package/src/utils/common.ts +2 -0
@@ -264,7 +264,8 @@ var BundleDataClient = (function () {
264
264
  fillsToCount = this_1.spokePoolClients[chainId].getFills().filter(function (fill) {
265
265
  if (fill.blockNumber < blockRanges[chainIndex][0] ||
266
266
  fill.blockNumber > blockRanges[chainIndex][1] ||
267
- (0, utils_1.isZeroValueFillOrSlowFillRequest)(fill)) {
267
+ (0, utils_1.isZeroValueFillOrSlowFillRequest)(fill) ||
268
+ (0, utils_1.invalidOutputToken)(fill)) {
268
269
  return false;
269
270
  }
270
271
  if (_this.spokePoolClients[fill.originChainId] === undefined) {
@@ -293,7 +294,7 @@ var BundleDataClient = (function () {
293
294
  if (!(0, utils_1.isDefined)(fill)) {
294
295
  return [2];
295
296
  }
296
- _a = (0, utils_2.getRefundInformationFromFill)(fill, this.clients.hubPoolClient, blockRanges, this.chainIdListForBundleEvaluationBlockNumbers, matchingDeposit.fromLiteChain), chainToSendRefundTo = _a.chainToSendRefundTo, repaymentToken = _a.repaymentToken;
297
+ _a = (0, utils_2.getRefundInformationFromFill)(tslib_1.__assign(tslib_1.__assign({}, fill), { fromLiteChain: matchingDeposit.fromLiteChain, quoteBlockNumber: matchingDeposit.quoteBlockNumber }), this.clients.hubPoolClient), chainToSendRefundTo = _a.chainToSendRefundTo, repaymentToken = _a.repaymentToken;
297
298
  relayer = fill.relayer, refundAmount = fill.inputAmount;
298
299
  (_b = refundsForChain[chainToSendRefundTo]) !== null && _b !== void 0 ? _b : (refundsForChain[chainToSendRefundTo] = {});
299
300
  (_c = (_e = refundsForChain[chainToSendRefundTo])[repaymentToken]) !== null && _c !== void 0 ? _c : (_e[repaymentToken] = {});
@@ -673,7 +674,11 @@ var BundleDataClient = (function () {
673
674
  fastFillsReplacingSlowFills = [];
674
675
  return [4, (0, utils_1.forEachAsync)(destinationClient
675
676
  .getFillsForOriginChain(originChainId)
676
- .filter(function (fill) { return fill.blockNumber <= destinationChainBlockRange[1] && !(0, utils_1.isZeroValueFillOrSlowFillRequest)(fill); }), function (fill) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
677
+ .filter(function (fill) {
678
+ return fill.blockNumber <= destinationChainBlockRange[1] &&
679
+ !(0, utils_1.isZeroValueFillOrSlowFillRequest)(fill) &&
680
+ !(0, utils_1.invalidOutputToken)(fill);
681
+ }), function (fill) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
677
682
  var relayDataHash, deposits, fillToRefund_1, duplicateDeposits, historicalDeposit, matchedDeposit, fillToRefund;
678
683
  return tslib_1.__generator(this, function (_a) {
679
684
  switch (_a.label) {
@@ -774,7 +779,9 @@ var BundleDataClient = (function () {
774
779
  return [4, (0, utils_1.forEachAsync)(destinationClient
775
780
  .getSlowFillRequestsForOriginChain(originChainId)
776
781
  .filter(function (request) {
777
- return request.blockNumber <= destinationChainBlockRange[1] && !(0, utils_1.isZeroValueFillOrSlowFillRequest)(request);
782
+ return request.blockNumber <= destinationChainBlockRange[1] &&
783
+ !(0, utils_1.isZeroValueFillOrSlowFillRequest)(request) &&
784
+ !(0, utils_1.invalidOutputToken)(request);
778
785
  }), function (slowFillRequest) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
779
786
  var relayDataHash, _a, deposits, fill, matchedDeposit, historicalDeposit, matchedDeposit;
780
787
  return tslib_1.__generator(this, function (_b) {
@@ -1029,7 +1036,7 @@ var BundleDataClient = (function () {
1029
1036
  (0, assert_1.default)((0, utils_1.isDefined)(deposits) && deposits.length > 0, "Deposit should exist in relay hash dictionary.");
1030
1037
  var matchedDeposit = deposits[0];
1031
1038
  (0, assert_1.default)((0, utils_1.isDefined)(matchedDeposit), "Deposit should exist in relay hash dictionary.");
1032
- var paymentChainId = (0, utils_2.getRefundInformationFromFill)(fill, _this.clients.hubPoolClient, blockRangesForChains, chainIds, matchedDeposit.fromLiteChain).chainToSendRefundTo;
1039
+ var paymentChainId = (0, utils_2.getRefundInformationFromFill)(tslib_1.__assign(tslib_1.__assign({}, fill), { fromLiteChain: matchedDeposit.fromLiteChain, quoteBlockNumber: matchedDeposit.quoteBlockNumber }), _this.clients.hubPoolClient).chainToSendRefundTo;
1033
1040
  return tslib_1.__assign(tslib_1.__assign({}, fill), { paymentChainId: paymentChainId });
1034
1041
  }))
1035
1042
  : [],
@@ -1058,7 +1065,7 @@ var BundleDataClient = (function () {
1058
1065
  (0, assert_1.default)((0, utils_1.isDefined)(deposits) && deposits.length > 0, "Deposit should exist in relay hash dictionary.");
1059
1066
  var associatedDeposit = deposits[0];
1060
1067
  (0, assert_1.default)((0, utils_1.isDefined)(associatedDeposit), "Deposit should exist in relay hash dictionary.");
1061
- var _b = (0, utils_2.getRefundInformationFromFill)(fill, _this.clients.hubPoolClient, blockRangesForChains, chainIds, associatedDeposit.fromLiteChain), chainToSendRefundTo = _b.chainToSendRefundTo, repaymentToken = _b.repaymentToken;
1068
+ var _b = (0, utils_2.getRefundInformationFromFill)(tslib_1.__assign(tslib_1.__assign({}, fill), { fromLiteChain: associatedDeposit.fromLiteChain, quoteBlockNumber: associatedDeposit.quoteBlockNumber }), _this.clients.hubPoolClient), chainToSendRefundTo = _b.chainToSendRefundTo, repaymentToken = _b.repaymentToken;
1062
1069
  updateBundleFillsV3(bundleFillsV3, fill, realizedLpFeePct, chainToSendRefundTo, repaymentToken, fill.relayer);
1063
1070
  });
1064
1071
  v3SlowFillLpFees.forEach(function (_a, idx) {
@@ -1 +1 @@
1
- {"version":3,"file":"BundleDataClient.js","sourceRoot":"","sources":["../../../../src/clients/BundleDataClient/BundleDataClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BundleDataClient.js","sourceRoot":"","sources":["../../../../src/clients/BundleDataClient/BundleDataClient.ts"],"names":[],"mappings":";;;;AAAA,0DAA4B;AAC5B,0DAAuB;AACvB,+CAkB0B;AAE1B,sCAA+C;AAC/C,qCAsBqB;AAErB,iCAYiB;AACjB,6CAAyD;AACzD,sDAA0D;AAG7C,QAAA,sBAAsB,GAAG,mBAAW,CAAC;AAKlD,SAAS,uBAAuB,CAAC,IAA+B,EAAE,OAA2B;;IAE3F,IAAI,IAAA,kBAAU,EAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,IAAA,yBAAiB,EAAC,OAAO,CAAC,SAAS,CAAC,EAAE;QAC9E,OAAO;KACR;IACO,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,EACtB,gBAAwB;;IAGxB,IAAA,gBAAM,EACJ,IAAA,kBAAU,EAAC,gBAAgB,CAAC,IAAI,IAAA,yBAAiB,EAAC,IAAI,CAAC,OAAO,CAAC,EAC/D,8FAA8F,CAC/F,CAAC;IACF,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,EAAE,OAAO,EAAE,gBAAgB,GAAE,CAAC;IAGlF,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,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,4BAAoB,CAAC,CAAC;IAChG,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,UAAU,CAAC,EAAE;QAC3B,IAAM,YAAY,GAAG,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,4BAAoB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,4BAAoB,CAAC,CAAC;QAC9G,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,UAAU,CAAC,OAAO,CAAC,EAAE;YACzC,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;SACjG;aAAM;YACL,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,YAAY,CAAC;SACtD;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;;IACzG,IAAI,IAAA,kBAAU,EAAC,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAA,yBAAiB,EAAC,OAAO,CAAC,SAAS,CAAC,EAAE;QACnF,OAAO;KACR;IACO,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;IAID,gDAAqB,GAArB,UAAsB,IAA4D;QAChF,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,OAAO,CAAC,UAAC,CAAC;YAC7C,OAAA,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAC,QAAQ;gBAChC,OAAA,QAAQ,CAAC,OAAO,CAAC,UAAC,OAAO;oBACvB,IAAI,OAAO,CAAC,WAAW,KAAK,kCAAsB,EAAE;wBAClD,OAAO,CAAC,WAAW,GAAG,IAAA,sBAAc,EAAC,OAAO,CAAC,OAAO,CAAC,CAAC;qBACvD;gBACH,CAAC,CAAC;YAJF,CAIE,CACH;QAND,CAMC,CACF,CAAC;QAEF,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,UAAC,CAAC;YAC1C,OAAA,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAC,EAAS;oBAAP,KAAK,WAAA;gBAC/B,OAAA,KAAK,CAAC,OAAO,CAAC,UAAC,IAAI;oBACjB,IAAI,IAAI,CAAC,WAAW,KAAK,kCAAsB,IAAI,IAAA,iBAAS,EAAC,IAAI,CAAC,OAAO,CAAC,EAAE;wBAE1E,IAAI,CAAC,WAAW,GAAG,IAAA,sBAAc,EAAC,IAAI,CAAC,OAAO,CAAC,CAAC;qBACjD;oBACD,IACE,IAAI,CAAC,kBAAkB,CAAC,kBAAkB,KAAK,kCAAsB;wBACrE,IAAA,iBAAS,EAAC,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,EACjD;wBACA,IAAI,CAAC,kBAAkB,CAAC,kBAAkB,GAAG,IAAA,sBAAc,EAAC,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAC;qBACrG;gBACH,CAAC,CAAC;YAXF,CAWE,CACH;QAbD,CAaC,CACF,CAAC;IACJ,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;wBAEnC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;wBAE3B,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,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;6BACvE,CAAA,WAAW,KAAK,SAAS,CAAA,EAAzB,cAAyB;wBACT,WAAM,IAAI,CAAC,kCAAkC,CAAC,QAAQ,EAAE,2BAA2B,CAAC,EAAA;;wBAAtG,eAAe,GAAG,SAAoF,CAAC;;;wBAE/F,aAAa,GAAgC,WAAW,cAA3C,EAAE,yBAAyB,GAAK,WAAW,0BAAhB,CAAiB;wBACjE,eAAe,GAAG,IAAA,4BAAoB,EAAC,aAAa,EAAE,yBAAyB,CAAC,CAAC;wBAKjF,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,UAAC,OAAO;4BAC3C,IAAI,KAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,SAAS,EAAE;gCACxD,OAAO,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;6BACzC;wBACH,CAAC,CAAC,CAAC;;4BAKL,WAAO,IAAI,CAAC,qBAAqB,CAAC,eAAe,EAAE,MAAM,CAAC,EAAC;;;;KAC5D;IAGK,6DAAkC,GAAxC,UAAyC,QAAkB,EAAE,WAAuB;;;;;;;wBAC5E,eAAe,GAAoB,EAAE,CAAC;4CACjC,OAAO;;;;;wCAChB,IAAI,OAAK,gBAAgB,CAAC,OAAO,CAAC,KAAK,SAAS,EAAE;;yCAEjD;wCACK,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;wCAMvC,YAAY,GAAG,OAAK,gBAAgB,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,UAAC,IAAI;4CACzE,IACE,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;gDAC7C,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;gDAC7C,IAAA,wCAAgC,EAAC,IAAI,CAAC;gDACtC,IAAA,0BAAkB,EAAC,IAAI,CAAC,EACxB;gDACA,OAAO,KAAK,CAAC;6CACd;4CAGD,IAAI,KAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,SAAS,EAAE;gDAC3D,OAAO,KAAK,CAAC;6CACd;4CACD,IAAM,eAAe,GAAG,KAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;4CAC7F,IAAM,kBAAkB,GACtB,eAAe,KAAK,SAAS,IAAI,IAAA,wBAAgB,EAAC,IAAI,CAAC,KAAK,IAAA,wBAAgB,EAAC,eAAe,CAAC,CAAC;4CAChG,OAAO,kBAAkB,CAAC;wCAC5B,CAAC,CAAC,CAAC;wCACH,WAAM,IAAA,oBAAY,EAAC,YAAY,EAAE,UAAO,KAAK;;;;;;;4DACrC,eAAe,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;4DAC/F,IAAA,gBAAM,EAAC,IAAA,iBAAS,EAAC,eAAe,CAAC,EAAE,6BAA6B,CAAC,CAAC;4DAE5D,WAAW,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;4DACpE,IAAI,CAAC,IAAA,sCAAoB,EAAC,WAAW,CAAC,EAAE;gEAEtC,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;6DAC3D;4DACY,WAAM,IAAA,2BAAmB,EACpC,KAAK,EACL,WAAW,CAAC,SAAS,CAAC,QAAQ,EAC9B,eAAe,EACf,IAAI,CAAC,OAAO,CAAC,aAAa,CAC3B,EAAA;;4DALK,IAAI,GAAG,SAKZ;4DACD,IAAI,CAAC,IAAA,iBAAS,EAAC,IAAI,CAAC,EAAE;gEACpB,WAAO;6DACR;4DACK,KAA0C,IAAA,oCAA4B,wCAErE,IAAI,KACP,aAAa,EAAE,eAAe,CAAC,aAAa,EAC5C,gBAAgB,EAAE,eAAe,CAAC,gBAAgB,KAEpD,IAAI,CAAC,OAAO,CAAC,aAAa,CAC3B,EAPO,mBAAmB,yBAAA,EAAE,cAAc,oBAAA,CAOzC;4DAKM,OAAO,GAAgC,IAAI,QAApC,EAAe,YAAY,GAAK,IAAI,YAAT,CAAU;4DACpD,MAAA,eAAe,CAAC,mBAAmB,qCAAnC,eAAe,CAAC,mBAAmB,IAAM,EAAE,EAAC;4DAC5C,YAAA,eAAe,CAAC,mBAAmB,CAAC,EAAC,cAAc,wCAAd,cAAc,IAAM,EAAE,EAAC;4DACtD,oBAAoB,GAAG,MAAA,eAAe,CAAC,mBAAmB,CAAC,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,mCAAI,cAAM,CAAC;4DACrG,eAAe,CAAC,mBAAmB,CAAC,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,GAAG,oBAAoB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;;;;iDACxG,CAAC,EAAA;;wCAnCF,SAmCE,CAAC;;;;;;8BAhEyB,EAAR,qBAAQ;;;6BAAR,CAAA,sBAAQ,CAAA;wBAAnB,OAAO;2CAAP,OAAO;;;;;wBAAI,IAAQ,CAAA;;4BAkE9B,WAAO,eAAe,EAAC;;;;KACxB;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;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;6BACpE,CAAA,WAAW,KAAK,SAAS,CAAA,EAAzB,cAAyB;wBAC3B,KAAA,CAAA,KAAA,eAAe,CAAA,CAAC,IAAI,CAAA;wBAAC,WAAM,IAAI,CAAC,kCAAkC,CAAC,QAAQ,EAAE,wBAAwB,CAAC,EAAA;;wBAAtG,cAAqB,SAAiF,EAAC,CAAC;;;wBAEhG,aAAa,GAAgC,WAAW,cAA3C,EAAE,yBAAyB,GAAK,WAAW,0BAAhB,CAAiB;wBACjE,eAAe,CAAC,IAAI,CAAC,IAAA,4BAAoB,EAAC,aAAa,EAAE,yBAAyB,CAAC,CAAC,CAAC;;;wBAIvF,uBAAuB,GAAG,kBAAkB,CAAC,wBAAwB,CAAC,CAAC;;;wBAOnE,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;wBAChC,KAAA,CAAA,KAAA,eAAe,CAAA,CAAC,IAAI,CAAA;wBAAC,WAAM,IAAI,CAAC,kCAAkC,CAAC,QAAQ,EAAE,uBAAuB,CAAC,EAAA;;wBAArG,cAAqB,SAAgF,EAAC,CAAC;wBACvG,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,wBAAwB,GAAsB,EAAE,CAAC;wBACjD,6BAA6B,GAA+B,EAAE,CAAC;wBAC/D,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;wBAEI,sBAAsB,GAAG,UAAC,OAAyB;4BACvD,OAAO,CAEL,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;gCAED,CAAC,OAAO,CAAC,aAAa;gCACtB,CAAC,OAAO,CAAC,WAAW,CACrB,CAAC;wBACJ,CAAC,CAAC;wBAEI,iBAAiB,GAAG,UAAC,OAAyB;4BAClD,OAAO,OAAO,CAAC,YAAY,GAAG,qBAAqB,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC;wBACrF,CAAC,CAAC;wBAEI,wBAAwB,GAAG,UAAC,OAAgB,EAAE,UAAkB;4BACpE,OAAO,gBAAgB,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,eAAe,CACjE,OAAO,EAMP,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,gBAAgB,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,mBAAmB,CAAC,CACvF,CAAC;wBACJ,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;;;wBAM5C,aAAa,GASf,EAAE,CAAC;wBAID,mBAAmB,GAAa,EAAE,CAAC;wBACnC,kBAAkB,GAAa,EAAE,CAAC;wBAElC,uBAAuB,GAAG,UAAC,WAAmB;4BAC5C,IAAA,KAAqB,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,EAA1C,aAAa,QAAA,EAAE,CAAC,QAA0B,CAAC;4BAClD,OAAO,EAAE,aAAa,eAAA,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC7C,CAAC,CAAC;4CAIS,aAAa;4BACtB,IAAM,YAAY,GAAG,gBAAgB,CAAC,aAAa,CAAC,CAAC;4BACrD,IAAM,qBAAqB,GAAG,IAAA,6BAAqB,EAAC,oBAAoB,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC;4BAEnG,KAAiC,UAAW,EAAX,2BAAW,EAAX,yBAAW,EAAX,IAAW,EAAE;gCAAzC,IAAM,kBAAkB,oBAAA;gCAC3B,IAAI,aAAa,KAAK,kBAAkB,EAAE;oCACxC,SAAS;iCACV;gCACD,YAAY,CAAC,4CAA4C,CAAC,kBAAkB,CAAC,CAAC,OAAO,CAAC,UAAC,OAAO;;oCAC5F,IAAI,OAAO,CAAC,WAAW,GAAG,qBAAqB,CAAC,CAAC,CAAC,IAAI,IAAA,0BAAkB,EAAC,OAAO,CAAC,EAAE;wCACjF,OAAO;qCACR;oCACD,IAAM,aAAa,GAAG,IAAA,wBAAgB,EAAC,OAAO,CAAC,CAAC;oCAEhD,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,EAAE;wCACjC,aAAa,CAAC,aAAa,CAAC,GAAG;4CAC7B,QAAQ,EAAE,CAAC,OAAO,CAAC;4CACnB,IAAI,EAAE,SAAS;4CACf,eAAe,EAAE,SAAS;yCAC3B,CAAC;qCACH;yCAAM;wCACG,IAAA,UAAQ,GAAK,aAAa,CAAC,aAAa,CAAC,SAAjC,CAAkC;wCAClD,IAAA,gBAAM,EAAC,IAAA,iBAAS,EAAC,UAAQ,CAAC,IAAI,UAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,gDAAgD,CAAC,CAAC;wCACrG,UAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;qCACxB;oCAIO,IAAA,QAAQ,GAAK,aAAa,CAAC,aAAa,CAAC,SAAjC,CAAkC;oCAClD,IAAA,gBAAM,EAAC,IAAA,iBAAS,EAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,gDAAgD,CAAC,CAAC;oCACrG,IAAM,oBAAoB,GAAG,UAAG,aAAa,cAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC;oCACvE,IAAM,wBAAwB,GAAG,uBAAuB,CAAC,oBAAoB,CAAC,CAAC;oCAC/E,IAAA,gBAAM,EACJ,wBAAwB,CAAC,aAAa,KAAK,aAAa;wCACtD,wBAAwB,CAAC,KAAK,KAAK,QAAQ,CAAC,MAAM,GAAG,CAAC,EACxD,2CAA2C,CAC5C,CAAC;oCACF,IAAI,OAAO,CAAC,WAAW,IAAI,qBAAqB,CAAC,CAAC,CAAC,EAAE;wCACnD,IAAI,MAAA,MAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAG,aAAa,CAAC,0CAAG,OAAO,CAAC,UAAU,CAAC,0CAAE,IAAI,CAAC,UAAC,CAAC,IAAK,OAAA,IAAA,sBAAc,EAAC,OAAO,EAAE,CAAC,CAAC,EAA1B,CAA0B,CAAC,EAAE;4CACpG,KAAI,CAAC,MAAM,CAAC,KAAK,CAAC;gDAChB,EAAE,EAAE,2BAA2B;gDAC/B,OAAO,EAAE,4BAA4B;gDACrC,OAAO,SAAA;6CACR,CAAC,CAAC;4CACH,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;yCAC/C;wCACD,mBAAmB,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;wCAC/C,sBAAsB,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;qCACnD;yCAAM,IAAI,OAAO,CAAC,WAAW,GAAG,qBAAqB,CAAC,CAAC,CAAC,EAAE;wCACzD,kBAAkB,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;qCAC/C;gCACH,CAAC,CAAC,CAAC;6BACJ;;wBApDH,WAAuC,EAAX,2BAAW,EAAX,yBAAW,EAAX,IAAW;4BAA5B,aAAa;oCAAb,aAAa;yBAqDvB;wBACD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;4BAChB,EAAE,EAAE,2BAA2B;4BAC/B,OAAO,EAAE,oBAAa,mBAAmB,CAAC,MAAM,GAAG,kBAAkB,CAAC,MAAM,0BAC1E,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,QACtB;yBACN,CAAC,CAAC;wBACH,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;wBAcpB,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;wDACvG,qBAAqB,GAAG,IAAA,6BAAqB,EAAC,oBAAoB,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC;wDAE7F,2BAA2B,GAAa,EAAE,CAAC;wDACjD,WAAM,IAAA,oBAAY,EAChB,iBAAiB;iEACd,sBAAsB,CAAC,aAAa,CAAC;iEAIrC,MAAM,CACL,UAAC,IAAI;gEACH,OAAA,IAAI,CAAC,WAAW,IAAI,0BAA0B,CAAC,CAAC,CAAC;oEACjD,CAAC,IAAA,wCAAgC,EAAC,IAAI,CAAC;oEACvC,CAAC,IAAA,0BAAkB,EAAC,IAAI,CAAC;4DAFzB,CAEyB,CAC5B,EACH,UAAO,IAAI;;;;;4EACT,WAAW,EAAE,CAAC;4EACR,aAAa,GAAG,IAAA,wBAAgB,EAAC,IAAI,CAAC,CAAC;iFACzC,aAAa,CAAC,aAAa,CAAC,EAA5B,cAA4B;iFAC1B,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,IAAI,EAAlC,cAAkC;4EAC5B,QAAQ,GAAK,aAAa,CAAC,aAAa,CAAC,SAAjC,CAAkC;4EAClD,IAAA,gBAAM,EAAC,IAAA,iBAAS,EAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,gDAAgD,CAAC,CAAC;4EACrG,aAAa,CAAC,aAAa,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC;iFACrC,CAAA,IAAI,CAAC,WAAW,IAAI,0BAA0B,CAAC,CAAC,CAAC,CAAA,EAAjD,cAAiD;4EACnD,IAAI,CAAC,IAAA,sCAAoB,EAAC,iBAAiB,CAAC,EAAE;gFAE5C,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;6EAC3D;4EACoB,WAAM,IAAA,2BAAmB,EAC5C,IAAI,EACJ,iBAAiB,CAAC,SAAS,CAAC,QAAQ,EACpC,QAAQ,CAAC,CAAC,CAAC,EACX,IAAI,CAAC,OAAO,CAAC,aAAa,CAC3B,EAAA;;4EALK,iBAAe,SAKpB;4EACD,IAAI,CAAC,IAAA,iBAAS,EAAC,cAAY,CAAC,EAAE;gFAC5B,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;6EAGrC;iFAAM;gFACL,aAAa,CAAC,aAAa,CAAC,CAAC,IAAI,GAAG,cAAY,CAAC;gFACjD,sBAAsB,CAAC,IAAI,uCACtB,cAAY,KACf,cAAc,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,cAAc,IAC1C,CAAC;gFAUG,iBAAiB,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gFAC5C,iBAAiB,CAAC,OAAO,CAAC,UAAC,gBAAgB;oFACzC,IAAI,IAAA,kBAAU,EAAC,IAAI,CAAC,EAAE;wFACpB,uBAAuB,CAAC,yBAAyB,EAAE,gBAAgB,CAAC,CAAC;qFACtE;yFAAM;wFACL,sBAAsB,CAAC,IAAI,uCACtB,cAAY,KACf,cAAc,EAAE,gBAAgB,CAAC,cAAc,IAC/C,CAAC;qFACJ;gFACH,CAAC,CAAC,CAAC;6EACJ;4EAKD,IACE,IAAI,CAAC,kBAAkB,CAAC,QAAQ,KAAK,qBAAQ,CAAC,gBAAgB;gFAC9D,sBAAsB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EACnC;gFACA,2BAA2B,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;6EACjD;;;;4EAGH,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;gFAChB,EAAE,EAAE,2BAA2B;gFAC/B,OAAO,EAAE,yBAAyB;gFAClC,IAAI,MAAA;6EACL,CAAC,CAAC;4EACH,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;gFAE7C,WAAO;;4EAKT,aAAa,CAAC,aAAa,CAAC,GAAG;gFAC7B,QAAQ,EAAE,SAAS;gFACnB,IAAI,MAAA;gFACJ,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;iFAC7E,CAAC,iBAAiB,CAAC,KAAK,EAAxB,cAAwB;4EAC1B,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;;;4EAE1B,cAAc,GAAG,iBAAiB,CAAC,OAAO,CAAC;4EAGjD,IAAI,cAAc,CAAC,WAAW,GAAG,qBAAqB,CAAC,CAAC,CAAC,EAAE;gFACzD,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gFAChC,WAAO;6EACR;4EACD,aAAa,CAAC,aAAa,CAAC,CAAC,QAAQ,GAAG,CAAC,cAAc,CAAC,CAAC;4EAEzD,IAAI,CAAC,IAAA,sCAAoB,EAAC,iBAAiB,CAAC,EAAE;gFAE5C,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;6EAC3D;4EAEoB,WAAM,IAAA,2BAAmB,EAC5C,IAAI,EACJ,iBAAiB,CAAC,SAAS,CAAC,QAAQ,EACpC,cAAc,EACd,IAAI,CAAC,OAAO,CAAC,aAAa,CAC3B,EAAA;;4EALK,YAAY,GAAG,SAKpB;4EACD,IAAI,CAAC,IAAA,iBAAS,EAAC,YAAY,CAAC,EAAE;gFAC5B,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;6EAGrC;iFAAM;gFAKL,IAAA,gBAAM,EAAC,IAAA,wBAAgB,EAAC,cAAc,CAAC,KAAK,aAAa,EAAE,4BAA4B,CAAC,CAAC;gFACzF,sBAAsB,CAAC,IAAI,uCACtB,YAAY,KACf,cAAc,EAAE,cAAc,CAAC,cAAc,IAC7C,CAAC;gFACH,aAAa,CAAC,aAAa,CAAC,CAAC,IAAI,GAAG,YAAY,CAAC;6EAIlD;4EAED,IACE,IAAI,CAAC,kBAAkB,CAAC,QAAQ,KAAK,qBAAQ,CAAC,gBAAgB;gFAC9D,sBAAsB,CAAC,cAAc,CAAC,EACtC;gFACA,2BAA2B,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;6EACjD;;;;;iEAGN,CACF,EAAA;;wDApKD,SAoKC,CAAC;wDAUF,WAAM,IAAA,oBAAY,EAChB,iBAAiB;iEACd,iCAAiC,CAAC,aAAa,CAAC;iEAChD,MAAM,CACL,UAAC,OAAO;gEACN,OAAA,OAAO,CAAC,WAAW,IAAI,0BAA0B,CAAC,CAAC,CAAC;oEACpD,CAAC,IAAA,wCAAgC,EAAC,OAAO,CAAC;oEAC1C,CAAC,IAAA,0BAAkB,EAAC,OAAO,CAAC;4DAF5B,CAE4B,CAC/B,EACH,UAAO,eAAyC;;;;;4EACxC,aAAa,GAAG,IAAA,wBAAgB,EAAC,eAAe,CAAC,CAAC;4EAExD,IAAI,aAAa,CAAC,aAAa,CAAC,EAAE;gFAChC,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,eAAe,EAAE;oFACjD,aAAa,CAAC,aAAa,CAAC,CAAC,eAAe,GAAG,eAAe,CAAC;oFACzD,KAAqB,aAAa,CAAC,aAAa,CAAC,EAA/C,QAAQ,cAAA,EAAE,IAAI,UAAA,CAAkC;oFACxD,IAAI,IAAI,EAAE;wFAIR,WAAO;qFACR;oFACD,IAAA,gBAAM,EAAC,IAAA,iBAAS,EAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,gDAAgD,CAAC,CAAC;oFAC/F,cAAc,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;oFAEnC,IACE,eAAe,CAAC,WAAW,IAAI,0BAA0B,CAAC,CAAC,CAAC;wFAC5D,sBAAsB,CAAC,cAAc,CAAC;wFACtC,CAAC,iBAAiB,CAAC,cAAc,CAAC,EAClC;wFACA,wBAAwB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;qFAC/C;iFACF;qFAAM;oFACL,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;wFAChB,EAAE,EAAE,2BAA2B;wFAC/B,OAAO,EAAE,sCAAsC;wFAC/C,eAAe,iBAAA;qFAChB,CAAC,CAAC;oFACH,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;iFAC1D;gFACD,WAAO;6EACR;4EAGD,aAAa,CAAC,aAAa,CAAC,GAAG;gFAC7B,QAAQ,EAAE,SAAS;gFACnB,IAAI,EAAE,SAAS;gFACf,eAAe,EAAE,eAAe;6EACjC,CAAC;iFAcE,CAAA,eAAe,CAAC,WAAW,IAAI,0BAA0B,CAAC,CAAC,CAAC,CAAA,EAA5D,cAA4D;4EAC9D,IAAI,CAAC,8BAAsB,CAAC,EAAE,CAAC,eAAe,CAAC,YAAY,CAAC,EAAE;gFAC5D,6BAA6B,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;gFACpD,WAAO;6EACR;4EACyB,WAAM,IAAA,qCAA6B,EAAC,YAAY,EAAE,eAAe,CAAC,EAAA;;4EAAtF,iBAAiB,GAAG,SAAkE;4EAC5F,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE;gFAC5B,6BAA6B,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;gFACpD,WAAO;6EACR;4EACK,cAAc,GAAuB,iBAAiB,CAAC,OAAO,CAAC;4EAGrE,IAAI,cAAc,CAAC,WAAW,GAAG,qBAAqB,CAAC,CAAC,CAAC,EAAE;gFACzD,6BAA6B,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;gFACpD,WAAO;6EACR;4EAKD,IAAA,gBAAM,EAAC,IAAA,wBAAgB,EAAC,cAAc,CAAC,KAAK,aAAa,EAAE,oCAAoC,CAAC,CAAC;4EACjG,aAAa,CAAC,aAAa,CAAC,CAAC,QAAQ,GAAG,CAAC,cAAc,CAAC,CAAC;4EAEzD,IAAI,CAAC,sBAAsB,CAAC,cAAc,CAAC,IAAI,iBAAiB,CAAC,cAAc,CAAC,EAAE;gFAChF,WAAO;6EACR;4EACD,wBAAwB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;;;;;iEAEjD,CACF,EAAA;;wDA5FD,SA4FC,CAAC;wDAuBF,WAAM,IAAA,gBAAQ,EAAC,mBAAmB,EAAE,UAAO,WAAW;;;;;4EAC9C,KAA2B,uBAAuB,CAAC,WAAW,CAAC,EAA7D,aAAa,mBAAA,EAAE,KAAK,WAAA,CAA0C;4EAChE,KAAsC,aAAa,CAAC,aAAa,CAAC,EAAhE,QAAQ,cAAA,EAAE,IAAI,UAAA,EAAE,eAAe,qBAAA,CAAkC;4EACzE,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;gFACtC,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;6EACpE;4EACK,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;4EAChC,IAAI,CAAC,OAAO;gFAAE,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;4EAChF,IAAI,OAAO,CAAC,aAAa,KAAK,aAAa,IAAI,OAAO,CAAC,kBAAkB,KAAK,kBAAkB,EAAE;gFAChG,WAAO;6EACR;iFAIG,IAAI,EAAJ,cAAI;iFACF,CAAA,IAAI,CAAC,WAAW,GAAG,0BAA0B,CAAC,CAAC,CAAC,CAAA,EAAhD,cAAgD;4EAClD,IAAI,CAAC,IAAA,sCAAoB,EAAC,iBAAiB,CAAC,EAAE;gFAE5C,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;6EAC3D;4EACoB,WAAM,IAAA,2BAAmB,EAC5C,IAAI,EACJ,iBAAiB,CAAC,SAAS,CAAC,QAAQ,EACpC,QAAQ,CAAC,CAAC,CAAC,EACX,IAAI,CAAC,OAAO,CAAC,aAAa,CAC3B,EAAA;;4EALK,YAAY,GAAG,SAKpB;4EACD,IAAI,CAAC,IAAA,iBAAS,EAAC,YAAY,CAAC,EAAE;gFAC5B,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;6EACrC;iFAAM,IAAI,CAAC,IAAA,kBAAU,EAAC,IAAI,CAAC,EAAE;gFAC5B,aAAa,CAAC,aAAa,CAAC,CAAC,IAAI,GAAG,YAAY,CAAC;gFACjD,sBAAsB,CAAC,IAAI,uCACtB,YAAY,KACf,cAAc,EAAE,OAAO,CAAC,cAAc,IACtC,CAAC;6EACJ;iFAAM;gFACL,uBAAuB,CAAC,yBAAyB,EAAE,OAAO,CAAC,CAAC;6EAC7D;;gFAEH,WAAO;;4EAQT,IAAI,eAAe,EAAE;gFACnB,IAAI,iBAAiB,CAAC,OAAO,CAAC,EAAE;oFAC9B,uBAAuB,CAAC,yBAAyB,EAAE,OAAO,CAAC,CAAC;iFAC7D;qFAAM,IACL,eAAe,CAAC,WAAW,GAAG,0BAA0B,CAAC,CAAC,CAAC;oFAC3D,sBAAsB,CAAC,OAAO,CAAC;oFAC/B,wBAAwB,CAAC,KAAK,CAAC,UAAC,CAAC,IAAK,OAAA,IAAA,wBAAgB,EAAC,CAAC,CAAC,KAAK,aAAa,EAArC,CAAqC,CAAC,EAC5E;oFACA,wBAAwB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;iFACxC;gFACD,WAAO;6EACR;4EAOkB,WAAM,wBAAwB,CAAC,OAAO,EAAE,0BAA0B,CAAC,CAAC,CAAC,CAAC,EAAA;;4EAAnF,UAAU,GAAG,SAAsE;iFACrF,CAAA,UAAU,KAAK,uBAAU,CAAC,MAAM,CAAA,EAAhC,cAAgC;4EAIlB,WAAM,IAAI,CAAC,qBAAqB,CAAC,OAAO,EAAE,iBAAiB,CAAC,EAAA;;4EAAtE,OAAO,GAAG,SAA4D;4EAC5E,IAAA,gBAAM,EAAC,IAAA,iBAAS,EAAC,OAAO,CAAC,EAAE,8CAAuC,aAAa,CAAE,CAAC,CAAC;4EACnF,IAAA,gBAAM,EAAC,IAAA,wBAAgB,EAAC,OAAO,CAAC,KAAK,aAAa,EAAE,4BAA4B,CAAC,CAAC;4EAClF,IAAI,CAAC,IAAA,sCAAoB,EAAC,iBAAiB,CAAC,EAAE;gFAE5C,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;6EAC3D;4EACoB,WAAM,IAAA,2BAAmB,EAC5C,OAAO,EACP,iBAAiB,CAAC,SAAS,CAAC,QAAQ,EACpC,OAAO,EACP,IAAI,CAAC,OAAO,CAAC,aAAa,CAC3B,EAAA;;4EALK,YAAY,GAAG,SAKpB;4EACD,IAAI,CAAC,IAAA,iBAAS,EAAC,YAAY,CAAC,EAAE;gFAC5B,wBAAwB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;6EACxC;iFAAM,IAAI,CAAC,IAAA,kBAAU,EAAC,YAAY,CAAC,EAAE;gFACpC,sBAAsB,CAAC,IAAI,uCACtB,YAAY,KACf,cAAc,EAAE,OAAO,CAAC,cAAc,IACtC,CAAC;6EACJ;iFAAM;gFACL,uBAAuB,CAAC,yBAAyB,EAAE,OAAO,CAAC,CAAC;6EAC7D;;;4EACI,IAAI,iBAAiB,CAAC,OAAO,CAAC,EAAE;gFACrC,uBAAuB,CAAC,yBAAyB,EAAE,OAAO,CAAC,CAAC;6EAC7D;iFAAM,IACL,UAAU,KAAK,uBAAU,CAAC,iBAAiB;gFAE3C,wBAAwB,CAAC,KAAK,CAAC,UAAC,CAAC,IAAK,OAAA,IAAA,wBAAgB,EAAC,CAAC,CAAC,KAAK,aAAa,EAArC,CAAqC,CAAC,EAC5E;gFACA,IAAI,sBAAsB,CAAC,OAAO,CAAC,EAAE;oFACnC,wBAAwB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;iFACxC;6EACF;;;;;iEACF,CAAC,EAAA;;wDAvGF,SAuGE,CAAC;wDAKH,2BAA2B,CAAC,OAAO,CAAC,UAAC,aAAa;4DAC1C,IAAA,KAAsC,aAAa,CAAC,aAAa,CAAC,EAAhE,QAAQ,cAAA,EAAE,eAAe,qBAAA,EAAE,IAAI,UAAiC,CAAC;4DACzE,IAAA,gBAAM,EACJ,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,kBAAkB,CAAC,QAAQ,MAAK,qBAAQ,CAAC,gBAAgB,EAC/D,uCAAuC,CACxC,CAAC;4DAEF,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;gEACpC,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;6DACnE;4DAED,IAAA,gBAAM,EACJ,sBAAsB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EACnC,kFAAkF,CACnF,CAAC;4DACF,IAAM,qBAAqB,GAAG,IAAA,6BAAqB,EAAC,oBAAoB,EAAE,kBAAkB,EAAE,QAAQ,CAAC,CAAC;4DACxG,IAAM,gBAAgB,GAAG,IAAA,6BAAqB,EAAC,oBAAoB,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC;4DAC9F,IAAM,cAAc,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;4DAOnC,IACE,cAAc,CAAC,WAAW,GAAG,gBAAgB,CAAC,CAAC,CAAC;gEAGhD,CAAC,CAAC,eAAe,IAAI,eAAe,CAAC,WAAW,GAAG,qBAAqB,CAAC,CAAC,CAAC,CAAC,EAC5E;gEACA,oCAAoC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;6DACxD;wDACH,CAAC,CAAC,CAAC;;;;;8CAvbuC,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;;;wBA4bvC,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;wBAK1B,WAAM,IAAA,oBAAY,EAAC,kBAAkB,EAAE,UAAO,WAAW;;;;;4CACjD,KAA2B,uBAAuB,CAAC,WAAW,CAAC,EAA7D,aAAa,mBAAA,EAAE,KAAK,WAAA,CAA0C;4CAChE,KAAsC,aAAa,CAAC,aAAa,CAAC,EAAhE,QAAQ,cAAA,EAAE,eAAe,qBAAA,EAAE,IAAI,UAAA,CAAkC;4CACzE,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;gDACpC,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;6CACnE;4CACK,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;4CACxB,kBAAkB,GAAK,OAAO,mBAAZ,CAAa;4CACjC,qBAAqB,GAAG,IAAA,6BAAqB,EAAC,oBAAoB,EAAE,kBAAkB,EAAE,QAAQ,CAAC,CAAC;iDAOtG,CAAA,CAAC,IAAI;gDACL,IAAA,iBAAS,EAAC,OAAO,CAAC;gDAClB,iBAAiB,CAAC,OAAO,CAAC;gDAC1B,OAAO,CAAC,YAAY,IAAI,qBAAqB,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;gDACpE,gBAAgB,CAAC,kBAAkB,CAAC,KAAK,SAAS,CAAA,EAJlD,cAIkD;4CAI/B,WAAM,wBAAwB,CAAC,OAAO,EAAE,qBAAqB,CAAC,CAAC,CAAC,CAAC,EAAA;;4CAA9E,UAAU,GAAG,SAAiE;4CAIpF,IAAI,UAAU,KAAK,uBAAU,CAAC,MAAM,EAAE;gDACpC,uBAAuB,CAAC,yBAAyB,EAAE,OAAO,CAAC,CAAC;6CAC7D;4CAID,IAAI,UAAU,KAAK,uBAAU,CAAC,iBAAiB,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,EAAE;gDACnF,WAAO;6CACR;4CAUD,IAAI,CAAC,eAAe,IAAI,eAAe,CAAC,WAAW,GAAG,qBAAqB,CAAC,CAAC,CAAC,EAAE;gDAC9E,oCAAoC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;6CACpD;;;;;iCAEJ,CAAC,EAAA;;wBAjDF,SAiDE,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;oCACtB,IAAA,QAAQ,GAAK,aAAa,CAAC,IAAA,wBAAgB,EAAC,IAAI,CAAC,CAAC,SAA1C,CAA2C;oCAC3D,IAAA,gBAAM,EAAC,IAAA,iBAAS,EAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,gDAAgD,CAAC,CAAC;oCACrG,IAAM,cAAc,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;oCACnC,IAAA,gBAAM,EAAC,IAAA,iBAAS,EAAC,cAAc,CAAC,EAAE,gDAAgD,CAAC,CAAC;oCAC5E,IAAqB,cAAc,GAAK,IAAA,oCAA4B,wCAErE,IAAI,KACP,aAAa,EAAE,cAAc,CAAC,aAAa,EAC3C,gBAAgB,EAAE,cAAc,CAAC,gBAAgB,KAEnD,KAAI,CAAC,OAAO,CAAC,aAAa,CAC3B,oBAP0C,CAOzC;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;4BACjC,IAAA,QAAQ,GAAK,aAAa,CAAC,IAAA,wBAAgB,EAAC,IAAI,CAAC,CAAC,SAA1C,CAA2C;4BAC3D,IAAA,gBAAM,EAAC,IAAA,iBAAS,EAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,gDAAgD,CAAC,CAAC;4BACrG,IAAM,iBAAiB,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;4BACtC,IAAA,gBAAM,EAAC,IAAA,iBAAS,EAAC,iBAAiB,CAAC,EAAE,gDAAgD,CAAC,CAAC;4BACjF,IAAA,KAA0C,IAAA,oCAA4B,wCAErE,IAAI,KACP,aAAa,EAAE,iBAAiB,CAAC,aAAa,EAC9C,gBAAgB,EAAE,iBAAiB,CAAC,gBAAgB,KAEtD,KAAI,CAAC,OAAO,CAAC,aAAa,CAC3B,EAPO,mBAAmB,yBAAA,EAAE,cAAc,oBAO1C,CAAC;4BACF,mBAAmB,CAAC,aAAa,EAAE,IAAI,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;wBAChH,CAAC,CAAC,CAAC;wBACH,gBAAgB,CAAC,OAAO,CAAC,UAAC,EAA8B,EAAE,GAAG;gCAAf,QAAQ,sBAAA;4BACpD,IAAM,OAAO,GAAG,wBAAwB,CAAC,GAAG,CAAC,CAAC;4BAK9C,IAAM,aAAa,GAAG,IAAA,wBAAgB,EAAC,OAAO,CAAC,CAAC;4BAChD,IAAI,wBAAwB,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,UAAC,CAAC,IAAK,OAAA,IAAA,wBAAgB,EAAC,CAAC,CAAC,KAAK,aAAa,EAArC,CAAqC,CAAC,EAAE;gCAC7F,OAAO;6BACR;4BACD,IAAA,gBAAM,EAAC,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAAE,mDAAmD,CAAC,CAAC;4BACzF,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,iBAAiB,EACjB,yBAAyB,EACzB,qBAAqB,CACtB,CAAC;wBAEF,IAAI,oBAAoB,CAAC,MAAM,GAAG,CAAC,EAAE;4BAG7B,2CAA0D,EAAE,CAAC;4BAI7D,0BAAyC,EAAE,CAAC;4BAG5C,8BAA6C,EAAE,CAAC;4BAEtD,oBAAoB,CAAC,OAAO,CAAC,UAAC,IAAI;gCAChC,IAAM,YAAY,GAAG,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;gCAC1D,IAAM,mBAAmB,GAAG,YAAY,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;gCACjE,IAAI,CAAC,IAAA,iBAAS,EAAC,mBAAmB,CAAC,EAAE;oCACnC,IAAM,uBAAuB,GAAG,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oCACxE,IAAI,IAAA,iBAAS,EAAC,uBAAuB,CAAC,EAAE;wCACtC,wCAAsC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;qCACnD;yCAAM;wCACL,2BAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;qCACtC;iCACF;qCAAM;oCACL,IAAM,sBAAsB,GAAG,IAAA,6BAAqB,EAAC,oBAAoB,EAAE,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;oCACzG,IAAI,mBAAmB,CAAC,WAAW,IAAI,sBAAsB,CAAC,CAAC,CAAC,EAAE;wCAChE,MAAM,IAAI,KAAK,CAAC,oFAAoF,CAAC,CAAC;qCACvG;oCACD,uBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;iCAClC;4BACH,CAAC,CAAC,CAAC;4BAEH,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;gCAChB,EAAE,EAAE,2BAA2B;gCAC/B,OAAO,EAAE,2EAA2E;gCACpF,oBAAoB,sBAAA;gCACpB,sCAAsC,0CAAA;gCACtC,qBAAqB,yBAAA;gCACrB,yBAAyB,6BAAA;6BAC1B,CAAC,CAAC;yBACJ;wBAED,IAAI,wBAAwB,CAAC,MAAM,GAAG,CAAC,EAAE;4BACvC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;gCAChB,EAAE,EAAE,2BAA2B;gCAC/B,OAAO,EAAE,+EAA+E;gCACxF,oBAAoB,sBAAA;gCACpB,wBAAwB,0BAAA;6BACzB,CAAC,CAAC;yBACJ;wBAED,IAAI,6BAA6B,CAAC,MAAM,GAAG,CAAC,EAAE;4BAC5C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;gCAChB,EAAE,EAAE,2BAA2B;gCAC/B,OAAO,EAAE,wFAAwF;gCACjG,oBAAoB,sBAAA;gCACpB,6BAA6B,+BAAA;6BAC9B,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;IAEe,gDAAqB,GAArC,UACE,OAAyB,EACzB,eAAgC;;;;;wBAEhC,IAAI,CAAC,IAAA,sCAAoB,EAAC,eAAe,CAAC,EAAE;4BAE1C,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;yBAC3D;wBACM,WAAM,IAAA,mBAAa,EACxB,eAAe,CAAC,SAAS,EACzB,OAAO,EACP,eAAe,CAAC,eAAe,EAC/B,eAAe,CAAC,mBAAmB,CACpC,EAAA;4BALD,WAAO,SAKN,EAAC;;;;KACH;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;4CAMxF,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,iBAAiB,GAAG,CAAC,EAAE,eAAe,CAAC,mBAAmB,CAAC,CAAC;4CAE5F,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,QAAQ,QAAA;4CAMpB,aAAa,GAAG,gBAAgB,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;4CAC9D,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,GAAG,aAAa,CAAC,CAAC;4CAGtD,IAAA,gBAAM,EACJ,OAAO,IAAI,SAAS,EACpB,6BAAsB,gBAAgB,0DAAgD,kBAAkB,eAAK,OAAO,iBAAO,SAAS,MAAG,CACxI,CAAC;4CACF,IAAA,gBAAM,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;4BA7CN,WAAO,cACL,CACE,SA2CE,CACH,CAAC,MAAM,CAAC,iBAAS,CAAC,EACpB,EAAC;;;;KACH;IACH,uBAAC;AAAD,CAAC,AA16CD,IA06CC;AA16CY,4CAAgB"}
@@ -68,6 +68,9 @@ function _buildPoolRebalanceRoot(latestMainnetBlock, mainnetBundleEndBlock, bund
68
68
  var repaymentChainId = Number(_repaymentChainId);
69
69
  Object.entries(fillsForChain).forEach(function (_a) {
70
70
  var l2TokenAddress = _a[0], _b = _a[1], totalRealizedLpFee = _b.realizedLpFees, totalRefundAmount = _b.totalRefundAmount;
71
+ if (!clients.hubPoolClient.l2TokenHasPoolRebalanceRoute(l2TokenAddress, repaymentChainId, mainnetBundleEndBlock)) {
72
+ return;
73
+ }
71
74
  var l1TokenCounterpart = clients.hubPoolClient.getL1TokenForL2TokenAtBlock(l2TokenAddress, repaymentChainId, mainnetBundleEndBlock);
72
75
  (0, PoolRebalanceUtils_1.updateRunningBalance)(runningBalances, repaymentChainId, l1TokenCounterpart, totalRefundAmount);
73
76
  (0, PoolRebalanceUtils_1.updateRunningBalance)(realizedLpFees, repaymentChainId, l1TokenCounterpart, totalRealizedLpFee);
@@ -102,6 +105,9 @@ function _buildPoolRebalanceRoot(latestMainnetBlock, mainnetBundleEndBlock, bund
102
105
  Object.entries(depositsForChain).forEach(function (_a) {
103
106
  var deposits = _a[1];
104
107
  deposits.forEach(function (deposit) {
108
+ if (!clients.hubPoolClient.l2TokenHasPoolRebalanceRoute(deposit.inputToken, deposit.originChainId, mainnetBundleEndBlock)) {
109
+ return;
110
+ }
105
111
  (0, PoolRebalanceUtils_1.updateRunningBalanceForDeposit)(runningBalances, clients.hubPoolClient, deposit, deposit.inputAmount.mul(-1));
106
112
  });
107
113
  });
@@ -112,6 +118,9 @@ function _buildPoolRebalanceRoot(latestMainnetBlock, mainnetBundleEndBlock, bund
112
118
  Object.entries(depositsForChain).forEach(function (_a) {
113
119
  var inputToken = _a[0], deposits = _a[1];
114
120
  deposits.forEach(function (deposit) {
121
+ if (!clients.hubPoolClient.l2TokenHasPoolRebalanceRoute(deposit.inputToken, deposit.originChainId, mainnetBundleEndBlock)) {
122
+ return;
123
+ }
115
124
  var l1TokenCounterpart = clients.hubPoolClient.getL1TokenForL2TokenAtBlock(inputToken, originChainId, mainnetBundleEndBlock);
116
125
  (0, PoolRebalanceUtils_1.updateRunningBalance)(runningBalances, originChainId, l1TokenCounterpart, deposit.inputAmount);
117
126
  });
@@ -1 +1 @@
1
- {"version":3,"file":"DataworkerUtils.js","sourceRoot":"","sources":["../../../../../src/clients/BundleDataClient/utils/DataworkerUtils.ts"],"names":[],"mappings":";;;;AAaA,wCAMwB;AACxB,2DAM8B;AAG9B,qDAA+D;AAG/D,SAAgB,oBAAoB,CAClC,aAA4B,EAC5B,yBAAoD;IAEpD,IAAM,eAAe,GAIjB,EAAE,CAAC;IACP,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,UAAC,EAAiC;;YAAhC,gBAAgB,QAAA,EAAE,aAAa,QAAA;QACrE,MAAA,eAAe,CAAC,gBAAgB,qCAAhC,eAAe,CAAC,gBAAgB,IAAM,EAAE,EAAC;QACzC,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,UAAC,EAA6B;gBAA5B,cAAc,QAAA,EAAI,OAAO,gBAAA;YAE/D,IAAI,OAAO,KAAK,SAAS,EAAE;gBACzB,OAAO;aACR;YAED,IAAM,kBAAkB,wBAAQ,OAAO,CAAE,CAAC;YAC1C,IAAI,eAAe,CAAC,gBAAgB,CAAC,CAAC,cAAc,CAAC,KAAK,SAAS,EAAE;gBACnE,eAAe,CAAC,gBAAgB,CAAC,CAAC,cAAc,CAAC,GAAG,kBAAkB,CAAC;aACxE;iBAAM;gBAGL,eAAe,CAAC,gBAAgB,CAAC,CAAC,cAAc,CAAC,yCAC5C,eAAe,CAAC,gBAAgB,CAAC,CAAC,cAAc,CAAC,GACjD,kBAAkB,CACtB,CAAC;aACH;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IACH,MAAM,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC,OAAO,CAAC,UAAC,EAAiC;;YAAhC,aAAa,QAAA,EAAE,gBAAgB,QAAA;QACjF,MAAA,eAAe,CAAC,aAAa,qCAA7B,eAAe,CAAC,aAAa,IAAM,EAAE,EAAC;QACtC,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,OAAO,CAAC,UAAC,EAA0B;gBAAzB,cAAc,QAAA,EAAE,QAAQ,QAAA;YACjE,QAAQ,CAAC,OAAO,CAAC,UAAC,OAAO;;gBACvB,IAAI,eAAe,CAAC,aAAa,CAAC,CAAC,cAAc,CAAC,KAAK,SAAS,EAAE;oBAChE,eAAe,CAAC,aAAa,CAAC,CAAC,cAAc,CAAC,aAAK,GAAC,OAAO,CAAC,SAAS,IAAG,OAAO,CAAC,WAAW,KAAE,CAAC;iBAC/F;qBAAM;oBACL,IAAM,oBAAoB,GAAG,eAAe,CAAC,aAAa,CAAC,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;oBAC/F,eAAe,CAAC,aAAa,CAAC,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,CACzF,oBAAoB,aAApB,oBAAoB,cAApB,oBAAoB,GAAI,cAAM,CAC/B,CAAC;iBACH;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IACH,OAAO,eAAe,CAAC;AACzB,CAAC;AA9CD,oDA8CC;AAED,SAAgB,4BAA4B,CAC1C,gBAAkC,EAClC,aAA4B,EAC5B,iBAAkC,EAClC,yBAAoD,EACpD,qBAA4C;IAE5C,OAAO;QACL,gBAAgB,EAAE,IAAA,+BAAuB,EAAC,gBAAgB,CAAC;QAC3D,aAAa,EAAE,IAAA,+BAAuB,EAAC,aAAa,EAAE,OAAO,CAAC;QAC9D,iBAAiB,EAAE,IAAA,+BAAuB,EAAC,iBAAiB,CAAC;QAC7D,yBAAyB,EAAE,IAAA,+BAAuB,EAAC,yBAAyB,CAAC;QAC7E,qBAAqB,EAAE,IAAA,+BAAuB,EAAC,qBAAqB,CAAC;KACtE,CAAC;AACJ,CAAC;AAdD,oEAcC;AAED,SAAgB,kBAAkB,CAChC,0CAAoD,EACpD,wBAAuD;IAcvD,OAAO,0CAA0C,CAAC,GAAG,CAAC,UAAC,OAAe,YAAK,OAAA,MAAA,wBAAwB,CAAC,OAAO,CAAC,mCAAI,CAAC,CAAA,EAAA,CAAC,CAAC;AACrH,CAAC;AAjBD,gDAiBC;AAED,SAAgB,uBAAuB,CACrC,kBAA0B,EAC1B,qBAA6B,EAC7B,gBAAkC,EAClC,aAA4B,EAC5B,iBAAkC,EAClC,qBAA4C,EAC5C,yBAAoD,EACpD,OAAqF,EACrF,uBAAgC;IAUhC,IAAM,eAAe,GAAoB,EAAE,CAAC;IAC5C,IAAM,cAAc,GAAoB,EAAE,CAAC;IAS3C,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,UAAC,EAAkC;YAAjC,iBAAiB,QAAA,EAAE,aAAa,QAAA;QACtE,IAAM,gBAAgB,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC;QACnD,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,OAAO,CACnC,UAAC,EAA2E;gBAA1E,cAAc,QAAA,EAAE,UAAyD,EAAvC,kBAAkB,oBAAA,EAAE,iBAAiB,uBAAA;YACvE,IAAM,kBAAkB,GAAG,OAAO,CAAC,aAAa,CAAC,2BAA2B,CAC1E,cAAc,EACd,gBAAgB,EAChB,qBAAqB,CACtB,CAAC;YAEF,IAAA,yCAAoB,EAAC,eAAe,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,iBAAiB,CAAC,CAAC;YAC/F,IAAA,yCAAoB,EAAC,cAAc,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,kBAAkB,CAAC,CAAC;QACjG,CAAC,CACF,CAAC;IACJ,CAAC,CAAC,CAAC;IASH,MAAM,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,OAAO,CAAC,UAAC,EAAuC;YAAtC,mBAAmB,QAAA,EAAE,gBAAgB,QAAA;QAC/E,IAAM,kBAAkB,GAAG,MAAM,CAAC,mBAAmB,CAAC,CAAC;QACvD,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,OAAO,CAAC,UAAC,EAAuB;gBAAtB,WAAW,QAAA,EAAE,QAAQ,QAAA;YAC9D,QAAQ,CAAC,OAAO,CAAC,UAAC,OAAO;gBACvB,IAAM,kBAAkB,GAAG,OAAO,CAAC,aAAa,CAAC,2BAA2B,CAC1E,WAAW,EACX,kBAAkB,EAClB,qBAAqB,CACtB,CAAC;gBACF,IAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,4BAAoB,CAAC,CAAC;gBAClF,IAAA,yCAAoB,EAAC,eAAe,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;YAGhH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IASH,MAAM,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC,OAAO,CAAC,UAAC,EAAiD;YAAhD,mBAAmB,QAAA,EAAE,0BAA0B,QAAA;QAC7F,IAAM,kBAAkB,GAAG,MAAM,CAAC,mBAAmB,CAAC,CAAC;QACvD,MAAM,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC,OAAO,CAAC,UAAC,EAAiC;gBAAhC,WAAW,QAAA,EAAE,kBAAkB,QAAA;YAClF,kBAAkB,CAAC,OAAO,CAAC,UAAC,OAAO;gBACjC,IAAM,kBAAkB,GAAG,OAAO,CAAC,aAAa,CAAC,2BAA2B,CAC1E,WAAW,EACX,kBAAkB,EAClB,qBAAqB,CACtB,CAAC;gBACF,IAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,4BAAoB,CAAC,CAAC;gBAClF,IAAA,yCAAoB,EAAC,eAAe,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;YAGhH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAQH,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,OAAO,CAAC,UAAC,EAAoB;YAAjB,gBAAgB,QAAA;QAC3D,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,OAAO,CAAC,UAAC,EAAY;gBAAT,QAAQ,QAAA;YACnD,QAAQ,CAAC,OAAO,CAAC,UAAC,OAAO;gBACvB,IAAA,mDAA8B,EAAC,eAAe,EAAE,OAAO,CAAC,aAAa,EAAE,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC/G,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAOH,MAAM,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC,OAAO,CAAC,UAAC,EAAkC;YAAjC,cAAc,QAAA,EAAE,gBAAgB,QAAA;QAClF,IAAM,aAAa,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;QAC7C,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,OAAO,CAAC,UAAC,EAAsB;gBAArB,UAAU,QAAA,EAAE,QAAQ,QAAA;YAC7D,QAAQ,CAAC,OAAO,CAAC,UAAC,OAAO;gBACvB,IAAM,kBAAkB,GAAG,OAAO,CAAC,aAAa,CAAC,2BAA2B,CAC1E,UAAU,EACV,aAAa,EACb,qBAAqB,CACtB,CAAC;gBACF,IAAA,yCAAoB,EAAC,eAAe,EAAE,aAAa,EAAE,kBAAkB,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;YAChG,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAIH,IAAA,0CAAqB,EAAC,kBAAkB,EAAE,eAAe,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IAElF,IAAM,MAAM,GAAwB,IAAA,iDAA4B,EAC9D,qBAAqB,EACrB,eAAe,EACf,cAAc,EACd,OAAO,CAAC,iBAAiB,EACzB,uBAAuB,CACxB,CAAC;IAEF,OAAO;QACL,eAAe,iBAAA;QACf,cAAc,gBAAA;QACd,MAAM,QAAA;QACN,IAAI,EAAE,IAAA,4CAA0B,EAAC,MAAM,CAAC;KACzC,CAAC;AACJ,CAAC;AAhJD,0DAgJC"}
1
+ {"version":3,"file":"DataworkerUtils.js","sourceRoot":"","sources":["../../../../../src/clients/BundleDataClient/utils/DataworkerUtils.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,13 @@
1
1
  import { providers } from "ethers";
2
- import { Deposit, DepositWithBlock, Fill, FillWithBlock } from "../../../interfaces";
2
+ import { DepositWithBlock, Fill, FillWithBlock } from "../../../interfaces";
3
3
  import { HubPoolClient } from "../../HubPoolClient";
4
- export declare function getRefundInformationFromFill(fill: Fill, hubPoolClient: HubPoolClient, blockRangesForChains: number[][], chainIdListForBundleEvaluationBlockNumbers: number[], fromLiteChain: boolean): {
4
+ type FillRepaymentInformation = Fill & {
5
+ quoteBlockNumber: number;
6
+ fromLiteChain: boolean;
7
+ };
8
+ export declare function getRefundInformationFromFill(relayData: FillRepaymentInformation, hubPoolClient: HubPoolClient): {
5
9
  chainToSendRefundTo: number;
6
10
  repaymentToken: string;
7
11
  };
8
- export declare function getRepaymentChainId(fill: Fill, matchedDeposit: Deposit): number;
9
- export declare function forceDestinationRepayment(repaymentChainId: number, matchedDeposit: Deposit & {
10
- quoteBlockNumber: number;
11
- }, hubPoolClient: HubPoolClient): boolean;
12
12
  export declare function verifyFillRepayment(_fill: FillWithBlock, destinationChainProvider: providers.Provider, matchedDeposit: DepositWithBlock, hubPoolClient: HubPoolClient): Promise<FillWithBlock | undefined>;
13
+ export {};
@@ -1,58 +1,38 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.verifyFillRepayment = exports.forceDestinationRepayment = exports.getRepaymentChainId = exports.getRefundInformationFromFill = void 0;
3
+ exports.verifyFillRepayment = exports.getRefundInformationFromFill = void 0;
4
4
  var tslib_1 = require("tslib");
5
5
  var lodash_1 = tslib_1.__importDefault(require("lodash"));
6
+ var assert_1 = tslib_1.__importDefault(require("assert"));
6
7
  var utils_1 = require("../../../utils");
7
- function getRefundInformationFromFill(fill, hubPoolClient, blockRangesForChains, chainIdListForBundleEvaluationBlockNumbers, fromLiteChain) {
8
- var chainToSendRefundTo = (0, utils_1.isSlowFill)(fill) ? fill.destinationChainId : fill.repaymentChainId;
9
- if (fromLiteChain) {
10
- chainToSendRefundTo = fill.originChainId;
8
+ function getRefundInformationFromFill(relayData, hubPoolClient) {
9
+ var chainToSendRefundTo = _getRepaymentChainId(relayData, hubPoolClient);
10
+ if (chainToSendRefundTo === relayData.originChainId) {
11
+ return {
12
+ chainToSendRefundTo: chainToSendRefundTo,
13
+ repaymentToken: relayData.inputToken,
14
+ };
11
15
  }
12
- var endBlockForMainnet = (0, utils_1.getBlockRangeForChain)(blockRangesForChains, hubPoolClient.chainId, chainIdListForBundleEvaluationBlockNumbers)[1];
13
- var l1TokenCounterpart = hubPoolClient.getL1TokenForL2TokenAtBlock(fill.inputToken, fill.originChainId, endBlockForMainnet);
14
- var repaymentToken = hubPoolClient.getL2TokenForL1TokenAtBlock(l1TokenCounterpart, chainToSendRefundTo, endBlockForMainnet);
16
+ var l1TokenCounterpart = hubPoolClient.getL1TokenForL2TokenAtBlock(relayData.inputToken, relayData.originChainId, relayData.quoteBlockNumber);
17
+ var repaymentToken = hubPoolClient.getL2TokenForL1TokenAtBlock(l1TokenCounterpart, chainToSendRefundTo, relayData.quoteBlockNumber);
15
18
  return {
16
19
  chainToSendRefundTo: chainToSendRefundTo,
17
20
  repaymentToken: repaymentToken,
18
21
  };
19
22
  }
20
23
  exports.getRefundInformationFromFill = getRefundInformationFromFill;
21
- function getRepaymentChainId(fill, matchedDeposit) {
22
- return matchedDeposit.fromLiteChain ? matchedDeposit.originChainId : fill.repaymentChainId;
23
- }
24
- exports.getRepaymentChainId = getRepaymentChainId;
25
- function forceDestinationRepayment(repaymentChainId, matchedDeposit, hubPoolClient) {
26
- if (!matchedDeposit.fromLiteChain) {
27
- try {
28
- var l1TokenCounterpart = hubPoolClient.getL1TokenForL2TokenAtBlock(matchedDeposit.inputToken, matchedDeposit.originChainId, matchedDeposit.quoteBlockNumber);
29
- hubPoolClient.getL2TokenForL1TokenAtBlock(l1TokenCounterpart, repaymentChainId, matchedDeposit.quoteBlockNumber);
30
- return false;
31
- }
32
- catch (_a) {
33
- return true;
34
- }
35
- }
36
- else {
37
- return false;
38
- }
39
- }
40
- exports.forceDestinationRepayment = forceDestinationRepayment;
41
24
  function verifyFillRepayment(_fill, destinationChainProvider, matchedDeposit, hubPoolClient) {
42
25
  return tslib_1.__awaiter(this, void 0, void 0, function () {
43
26
  var fill, repaymentChainId, fillTransaction, destinationRelayer;
44
27
  return tslib_1.__generator(this, function (_a) {
45
28
  switch (_a.label) {
46
29
  case 0:
47
- fill = lodash_1.default.cloneDeep(_fill);
30
+ fill = tslib_1.__assign(tslib_1.__assign({}, lodash_1.default.cloneDeep(_fill)), { fromLiteChain: matchedDeposit.fromLiteChain, quoteBlockNumber: matchedDeposit.quoteBlockNumber });
48
31
  if ((0, utils_1.isSlowFill)(fill)) {
49
32
  return [2, fill];
50
33
  }
51
- repaymentChainId = getRepaymentChainId(fill, matchedDeposit);
52
- if (forceDestinationRepayment(repaymentChainId, matchedDeposit, hubPoolClient)) {
53
- repaymentChainId = fill.destinationChainId;
54
- }
55
- if (!!(0, utils_1.isValidEvmAddress)(fill.relayer)) return [3, 2];
34
+ repaymentChainId = _getRepaymentChainId(fill, hubPoolClient);
35
+ if (!_repaymentAddressNeedsToBeOverwritten(fill)) return [3, 2];
56
36
  return [4, destinationChainProvider.getTransaction(fill.transactionHash)];
57
37
  case 1:
58
38
  fillTransaction = _a.sent();
@@ -60,7 +40,8 @@ function verifyFillRepayment(_fill, destinationChainProvider, matchedDeposit, hu
60
40
  if (!(0, utils_1.isDefined)(destinationRelayer) || !(0, utils_1.isValidEvmAddress)(destinationRelayer)) {
61
41
  return [2, undefined];
62
42
  }
63
- if (!matchedDeposit.fromLiteChain) {
43
+ if (!matchedDeposit.fromLiteChain &&
44
+ hubPoolClient.areTokensEquivalent(fill.inputToken, fill.originChainId, fill.outputToken, fill.destinationChainId)) {
64
45
  repaymentChainId = fill.destinationChainId;
65
46
  }
66
47
  else {
@@ -78,4 +59,34 @@ function verifyFillRepayment(_fill, destinationChainProvider, matchedDeposit, hu
78
59
  });
79
60
  }
80
61
  exports.verifyFillRepayment = verifyFillRepayment;
62
+ function _getRepaymentChainId(relayData, hubPoolClient) {
63
+ if (relayData.fromLiteChain) {
64
+ (0, assert_1.default)(!(0, utils_1.isSlowFill)(relayData), "getRepaymentChainId: fromLiteChain and slow fill are mutually exclusive");
65
+ return relayData.originChainId;
66
+ }
67
+ if ((0, utils_1.isSlowFill)(relayData)) {
68
+ return relayData.destinationChainId;
69
+ }
70
+ var repaymentTokenIsValid = _repaymentChainTokenIsValid(relayData, hubPoolClient);
71
+ if (repaymentTokenIsValid) {
72
+ return relayData.repaymentChainId;
73
+ }
74
+ return relayData.originChainId;
75
+ }
76
+ function _repaymentChainTokenIsValid(relayData, hubPoolClient) {
77
+ if (!hubPoolClient.l2TokenHasPoolRebalanceRoute(relayData.inputToken, relayData.originChainId, relayData.quoteBlockNumber)) {
78
+ return false;
79
+ }
80
+ var l1TokenCounterpart = hubPoolClient.getL1TokenForL2TokenAtBlock(relayData.inputToken, relayData.originChainId, relayData.quoteBlockNumber);
81
+ if (!hubPoolClient.l2TokenEnabledForL1TokenAtBlock(l1TokenCounterpart, relayData.repaymentChainId, relayData.quoteBlockNumber)) {
82
+ return false;
83
+ }
84
+ return true;
85
+ }
86
+ function _repaymentAddressNeedsToBeOverwritten(fill) {
87
+ if ((0, utils_1.isSlowFill)(fill)) {
88
+ return false;
89
+ }
90
+ return !(0, utils_1.isValidEvmAddress)(fill.relayer);
91
+ }
81
92
  //# sourceMappingURL=FillUtils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FillUtils.js","sourceRoot":"","sources":["../../../../../src/clients/BundleDataClient/utils/FillUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FillUtils.js","sourceRoot":"","sources":["../../../../../src/clients/BundleDataClient/utils/FillUtils.ts"],"names":[],"mappings":"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"}
@@ -75,6 +75,8 @@ export declare class HubPoolClient extends BaseAbstractClient {
75
75
  getL1TokenForDeposit(deposit: Pick<DepositWithBlock, "originChainId" | "inputToken" | "quoteBlockNumber">): string;
76
76
  getL2TokenForDeposit(deposit: Pick<DepositWithBlock, "originChainId" | "destinationChainId" | "inputToken" | "quoteBlockNumber">, l2ChainId?: number): string;
77
77
  l2TokenEnabledForL1Token(l1Token: string, destinationChainId: number): boolean;
78
+ l2TokenEnabledForL1TokenAtBlock(l1Token: string, destinationChainId: number, hubBlockNumber: number): boolean;
79
+ l2TokenHasPoolRebalanceRoute(l2Token: string, l2ChainId: number, hubPoolBlock?: number): boolean;
78
80
  getTokenInfoForAddress(tokenAddress: string, chain: number): L1Token;
79
81
  getL1TokenInfoForAddress(tokenAddress: string, chain: number): L1Token;
80
82
  getBlockNumber(timestamp: number): Promise<number>;
@@ -135,6 +135,24 @@ var HubPoolClient = (function (_super) {
135
135
  var _a, _b;
136
136
  return ((_b = (_a = this.l1TokensToDestinationTokens) === null || _a === void 0 ? void 0 : _a[l1Token]) === null || _b === void 0 ? void 0 : _b[destinationChainId]) != undefined;
137
137
  };
138
+ HubPoolClient.prototype.l2TokenEnabledForL1TokenAtBlock = function (l1Token, destinationChainId, hubBlockNumber) {
139
+ var _a, _b, _c;
140
+ var l2Token = (0, utils_1.sortEventsDescending)((_c = (_b = (_a = this.l1TokensToDestinationTokensWithBlock) === null || _a === void 0 ? void 0 : _a[l1Token]) === null || _b === void 0 ? void 0 : _b[destinationChainId]) !== null && _c !== void 0 ? _c : []).find(function (mapping) { return mapping.blockNumber <= hubBlockNumber; });
141
+ return l2Token !== undefined;
142
+ };
143
+ HubPoolClient.prototype.l2TokenHasPoolRebalanceRoute = function (l2Token, l2ChainId, hubPoolBlock) {
144
+ if (hubPoolBlock === void 0) { hubPoolBlock = this.latestBlockSearched; }
145
+ return Object.values(this.l1TokensToDestinationTokensWithBlock).some(function (destinationTokenMapping) {
146
+ return Object.entries(destinationTokenMapping).some(function (_a) {
147
+ var _l2ChainId = _a[0], setPoolRebalanceRouteEvents = _a[1];
148
+ return setPoolRebalanceRouteEvents.some(function (e) {
149
+ return (e.blockNumber <= hubPoolBlock &&
150
+ (0, utils_1.compareAddressesSimple)(e.l2Token, l2Token) &&
151
+ Number(_l2ChainId) === l2ChainId);
152
+ });
153
+ });
154
+ });
155
+ };
138
156
  HubPoolClient.prototype.getTokenInfoForAddress = function (tokenAddress, chain) {
139
157
  var _a;
140
158
  var tokenInfo = (0, utils_1.getTokenInfo)(tokenAddress, chain);
@@ -384,19 +402,18 @@ var HubPoolClient = (function (_super) {
384
402
  };
385
403
  HubPoolClient.prototype.areTokensEquivalent = function (tokenA, chainIdA, tokenB, chainIdB, hubPoolBlock) {
386
404
  if (hubPoolBlock === void 0) { hubPoolBlock = this.latestBlockSearched; }
387
- try {
388
- var l1TokenA = this.getL1TokenForL2TokenAtBlock(tokenA, chainIdA, hubPoolBlock);
389
- var l1TokenB = this.getL1TokenForL2TokenAtBlock(tokenB, chainIdB, hubPoolBlock);
390
- if (l1TokenA !== l1TokenB) {
391
- return false;
392
- }
393
- var _tokenA = this.getL2TokenForL1TokenAtBlock(l1TokenA, chainIdA, hubPoolBlock);
394
- var _tokenB = this.getL2TokenForL1TokenAtBlock(l1TokenB, chainIdB, hubPoolBlock);
395
- return tokenA === _tokenA && tokenB === _tokenB;
405
+ if (!this.l2TokenHasPoolRebalanceRoute(tokenA, chainIdA, hubPoolBlock) ||
406
+ !this.l2TokenHasPoolRebalanceRoute(tokenB, chainIdB, hubPoolBlock)) {
407
+ return false;
396
408
  }
397
- catch (_a) {
409
+ var l1TokenA = this.getL1TokenForL2TokenAtBlock(tokenA, chainIdA, hubPoolBlock);
410
+ var l1TokenB = this.getL1TokenForL2TokenAtBlock(tokenB, chainIdB, hubPoolBlock);
411
+ if (l1TokenA !== l1TokenB) {
398
412
  return false;
399
413
  }
414
+ var _tokenA = this.getL2TokenForL1TokenAtBlock(l1TokenA, chainIdA, hubPoolBlock);
415
+ var _tokenB = this.getL2TokenForL1TokenAtBlock(l1TokenB, chainIdB, hubPoolBlock);
416
+ return tokenA === _tokenA && tokenB === _tokenB;
400
417
  };
401
418
  HubPoolClient.prototype.getSpokeActivationBlockForChain = function (chainId) {
402
419
  var _a;