@medusajs/promotion 3.0.0-snapshot-20250410112222 → 3.0.0-snapshot-20251104004624

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 (133) hide show
  1. package/dist/migrations/Migration20240227120221.d.ts +1 -1
  2. package/dist/migrations/Migration20240227120221.d.ts.map +1 -1
  3. package/dist/migrations/Migration20240227120221.js +1 -1
  4. package/dist/migrations/Migration20240227120221.js.map +1 -1
  5. package/dist/migrations/Migration20240617102917.d.ts +1 -1
  6. package/dist/migrations/Migration20240617102917.d.ts.map +1 -1
  7. package/dist/migrations/Migration20240617102917.js +1 -1
  8. package/dist/migrations/Migration20240617102917.js.map +1 -1
  9. package/dist/migrations/Migration20240624153824.d.ts +1 -1
  10. package/dist/migrations/Migration20240624153824.d.ts.map +1 -1
  11. package/dist/migrations/Migration20240624153824.js +1 -1
  12. package/dist/migrations/Migration20240624153824.js.map +1 -1
  13. package/dist/migrations/Migration20241211061114.d.ts +1 -1
  14. package/dist/migrations/Migration20241211061114.d.ts.map +1 -1
  15. package/dist/migrations/Migration20241211061114.js +1 -1
  16. package/dist/migrations/Migration20241211061114.js.map +1 -1
  17. package/dist/migrations/Migration20250113094144.d.ts +1 -1
  18. package/dist/migrations/Migration20250113094144.d.ts.map +1 -1
  19. package/dist/migrations/Migration20250113094144.js +1 -1
  20. package/dist/migrations/Migration20250113094144.js.map +1 -1
  21. package/dist/migrations/Migration20250120110700.d.ts +1 -1
  22. package/dist/migrations/Migration20250120110700.d.ts.map +1 -1
  23. package/dist/migrations/Migration20250120110700.js +1 -1
  24. package/dist/migrations/Migration20250120110700.js.map +1 -1
  25. package/dist/migrations/Migration20250226130616.d.ts +1 -1
  26. package/dist/migrations/Migration20250226130616.d.ts.map +1 -1
  27. package/dist/migrations/Migration20250226130616.js +1 -1
  28. package/dist/migrations/Migration20250226130616.js.map +1 -1
  29. package/dist/migrations/Migration20250508081510.d.ts +6 -0
  30. package/dist/migrations/Migration20250508081510.d.ts.map +1 -0
  31. package/dist/migrations/Migration20250508081510.js +14 -0
  32. package/dist/migrations/Migration20250508081510.js.map +1 -0
  33. package/dist/migrations/Migration20250828075407.d.ts +6 -0
  34. package/dist/migrations/Migration20250828075407.d.ts.map +1 -0
  35. package/dist/migrations/Migration20250828075407.js +34 -0
  36. package/dist/migrations/Migration20250828075407.js.map +1 -0
  37. package/dist/migrations/Migration20250909083125.d.ts +6 -0
  38. package/dist/migrations/Migration20250909083125.d.ts.map +1 -0
  39. package/dist/migrations/Migration20250909083125.js +25 -0
  40. package/dist/migrations/Migration20250909083125.js.map +1 -0
  41. package/dist/migrations/Migration20250916120552.d.ts +6 -0
  42. package/dist/migrations/Migration20250916120552.d.ts.map +1 -0
  43. package/dist/migrations/Migration20250916120552.js +14 -0
  44. package/dist/migrations/Migration20250916120552.js.map +1 -0
  45. package/dist/migrations/Migration20250917143818.d.ts +6 -0
  46. package/dist/migrations/Migration20250917143818.d.ts.map +1 -0
  47. package/dist/migrations/Migration20250917143818.js +18 -0
  48. package/dist/migrations/Migration20250917143818.js.map +1 -0
  49. package/dist/migrations/Migration20250919122137.d.ts +6 -0
  50. package/dist/migrations/Migration20250919122137.d.ts.map +1 -0
  51. package/dist/migrations/Migration20250919122137.js +14 -0
  52. package/dist/migrations/Migration20250919122137.js.map +1 -0
  53. package/dist/migrations/Migration20251006000000.d.ts +6 -0
  54. package/dist/migrations/Migration20251006000000.d.ts.map +1 -0
  55. package/dist/migrations/Migration20251006000000.js +16 -0
  56. package/dist/migrations/Migration20251006000000.js.map +1 -0
  57. package/dist/models/application-method.d.ts +183 -24
  58. package/dist/models/application-method.d.ts.map +1 -1
  59. package/dist/models/campaign-budget-usage.d.ts +268 -0
  60. package/dist/models/campaign-budget-usage.d.ts.map +1 -0
  61. package/dist/models/campaign-budget-usage.js +31 -0
  62. package/dist/models/campaign-budget-usage.js.map +1 -0
  63. package/dist/models/campaign-budget.d.ts +82 -24
  64. package/dist/models/campaign-budget.d.ts.map +1 -1
  65. package/dist/models/campaign-budget.js +17 -1
  66. package/dist/models/campaign-budget.js.map +1 -1
  67. package/dist/models/campaign.d.ts +63 -24
  68. package/dist/models/campaign.d.ts.map +1 -1
  69. package/dist/models/index.d.ts +1 -0
  70. package/dist/models/index.d.ts.map +1 -1
  71. package/dist/models/index.js +3 -1
  72. package/dist/models/index.js.map +1 -1
  73. package/dist/models/promotion-rule-value.d.ts +360 -19
  74. package/dist/models/promotion-rule-value.d.ts.map +1 -1
  75. package/dist/models/promotion-rule-value.js +17 -2
  76. package/dist/models/promotion-rule-value.js.map +1 -1
  77. package/dist/models/promotion-rule.d.ts +182 -23
  78. package/dist/models/promotion-rule.d.ts.map +1 -1
  79. package/dist/models/promotion-rule.js +13 -0
  80. package/dist/models/promotion-rule.js.map +1 -1
  81. package/dist/models/promotion.d.ts +59 -6
  82. package/dist/models/promotion.d.ts.map +1 -1
  83. package/dist/models/promotion.js +7 -0
  84. package/dist/models/promotion.js.map +1 -1
  85. package/dist/schema/index.d.ts +1 -1
  86. package/dist/schema/index.d.ts.map +1 -1
  87. package/dist/schema/index.js +1 -0
  88. package/dist/schema/index.js.map +1 -1
  89. package/dist/services/promotion-module.d.ts +420 -77
  90. package/dist/services/promotion-module.d.ts.map +1 -1
  91. package/dist/services/promotion-module.js +345 -116
  92. package/dist/services/promotion-module.js.map +1 -1
  93. package/dist/tsconfig.tsbuildinfo +1 -1
  94. package/dist/types/campaign-budget.d.ts +10 -0
  95. package/dist/types/campaign-budget.d.ts.map +1 -1
  96. package/dist/utils/compute-actions/build-promotion-rule-query-filter-from-context.d.ts +12 -0
  97. package/dist/utils/compute-actions/build-promotion-rule-query-filter-from-context.d.ts.map +1 -0
  98. package/dist/utils/compute-actions/build-promotion-rule-query-filter-from-context.js +188 -0
  99. package/dist/utils/compute-actions/build-promotion-rule-query-filter-from-context.js.map +1 -0
  100. package/dist/utils/compute-actions/buy-get.d.ts +3 -2
  101. package/dist/utils/compute-actions/buy-get.d.ts.map +1 -1
  102. package/dist/utils/compute-actions/buy-get.js +251 -84
  103. package/dist/utils/compute-actions/buy-get.js.map +1 -1
  104. package/dist/utils/compute-actions/index.d.ts +1 -0
  105. package/dist/utils/compute-actions/index.d.ts.map +1 -1
  106. package/dist/utils/compute-actions/index.js +1 -0
  107. package/dist/utils/compute-actions/index.js.map +1 -1
  108. package/dist/utils/compute-actions/line-items.d.ts +3 -4
  109. package/dist/utils/compute-actions/line-items.d.ts.map +1 -1
  110. package/dist/utils/compute-actions/line-items.js +74 -40
  111. package/dist/utils/compute-actions/line-items.js.map +1 -1
  112. package/dist/utils/compute-actions/shipping-methods.d.ts +4 -3
  113. package/dist/utils/compute-actions/shipping-methods.d.ts.map +1 -1
  114. package/dist/utils/compute-actions/shipping-methods.js +20 -6
  115. package/dist/utils/compute-actions/shipping-methods.js.map +1 -1
  116. package/dist/utils/compute-actions/sort-by-price.d.ts +4 -0
  117. package/dist/utils/compute-actions/sort-by-price.d.ts.map +1 -0
  118. package/dist/utils/compute-actions/sort-by-price.js +16 -0
  119. package/dist/utils/compute-actions/sort-by-price.js.map +1 -0
  120. package/dist/utils/compute-actions/usage.d.ts +14 -2
  121. package/dist/utils/compute-actions/usage.d.ts.map +1 -1
  122. package/dist/utils/compute-actions/usage.js +27 -2
  123. package/dist/utils/compute-actions/usage.js.map +1 -1
  124. package/dist/utils/index.js +17 -7
  125. package/dist/utils/index.js.map +1 -1
  126. package/dist/utils/validations/application-method.d.ts.map +1 -1
  127. package/dist/utils/validations/application-method.js +15 -0
  128. package/dist/utils/validations/application-method.js.map +1 -1
  129. package/dist/utils/validations/promotion-rule.d.ts +3 -2
  130. package/dist/utils/validations/promotion-rule.d.ts.map +1 -1
  131. package/dist/utils/validations/promotion-rule.js +52 -45
  132. package/dist/utils/validations/promotion-rule.js.map +1 -1
  133. package/package.json +15 -28
@@ -1 +1 @@
1
- {"version":3,"file":"promotion-module.js","sourceRoot":"","sources":["../../src/services/promotion-module.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"promotion-module.js","sourceRoot":"","sources":["../../src/services/promotion-module.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,qDAakC;AAClC,qDAqBkC;AAClC,qCAQgB;AAChB,mCAWe;AACf,mCAMe;AACf,oDAA+C;AAE/C,4IAAkI;AAalI,MAAqB,sBACnB,SAAQ,IAAA,qBAAa,EAQlB;IACD,SAAS,EAAT,mBAAS;IACT,iBAAiB,EAAjB,2BAAiB;IACjB,QAAQ,EAAR,kBAAQ;IACR,cAAc,EAAd,wBAAc;IACd,mBAAmB,EAAnB,6BAAmB;IACnB,aAAa,EAAb,uBAAa;IACb,kBAAkB,EAAlB,4BAAkB;CACnB,CAAC;IA2BF,YACE,EACE,cAAc,EACd,gBAAgB,EAChB,wBAAwB,EACxB,oBAAoB,EACpB,yBAAyB,EACzB,eAAe,EACf,qBAAqB,EACrB,0BAA0B,GACL,EACJ,iBAA4C;QAE/D,aAAa;QACb,KAAK,CAAC,GAAG,SAAS,CAAC,CAAA;QAHA,sBAAiB,GAAjB,iBAAiB,CAA2B;QAK/D,IAAI,CAAC,eAAe,GAAG,cAAc,CAAA;QACrC,IAAI,CAAC,iBAAiB,GAAG,gBAAgB,CAAA;QACzC,IAAI,CAAC,yBAAyB,GAAG,wBAAwB,CAAA;QACzD,IAAI,CAAC,qBAAqB,GAAG,oBAAoB,CAAA;QACjD,IAAI,CAAC,0BAA0B,GAAG,yBAAyB,CAAA;QAC3D,IAAI,CAAC,gBAAgB,GAAG,eAAe,CAAA;QACvC,IAAI,CAAC,sBAAsB,GAAG,qBAAqB,CAAA;QACnD,IAAI,CAAC,2BAA2B,GAAG,0BAA0B,CAAA;IAC/D,CAAC;IAED,cAAc;QACZ,OAAO,4BAAY,CAAA;IACrB,CAAC;IAGK,AAAN,KAAK,CAAC,oBAAoB,CACxB,OAAkC,EAClC,MAAiC,EACjC,aAAuB;QAEvB,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,qBAAqB,CACvD,OAAO,EACP,MAAM,EACN,aAAa,CACd,CAAA;QAED,OAAO,IAAI,CAAC,eAAe,CAAC,SAAS,CAAiB,gBAAgB,CAAC,CAAA;IACzE,CAAC;IAGe,AAAN,KAAK,CAAC,qBAAqB,CACnC,OAAkC,EAClC,MAAiC,EAChB,aAAuB;QAExC,uDAAuD;QACvD,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAA;QACtB,MAAM,aAAa,GAAG;YACpB,MAAM,EAAE,uBAAe,CAAC,MAAM;YAC9B,GAAG,EAAE;gBACH;oBACE,WAAW,EAAE,IAAI;oBACjB,GAAG,OAAO;iBACX;gBACD;oBACE,GAAG,OAAO;oBACV,QAAQ,EAAE;wBACR,GAAG,OAAO,EAAE,QAAQ;wBACpB,IAAI,EAAE;4BACJ;gCACE,GAAG,EAAE,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC;6BACzD;4BACD;gCACE,GAAG,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC;6BACpD;yBACF;qBACF;iBACF;aACF;SACF,CAAA;QAED,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,CACtC,aAAa,EACb,MAAM,EACN,aAAa,CACd,CAAA;IACH,CAAC;IAGe,AAAN,KAAK,CAAC,uCAAuC,CACrD,QAAgB,EAChB,cAAsB,EACL,gBAAyB,EAAE;QAE5C,MAAM,CAAC,oCAAoC,CAAC,GAC1C,MAAM,IAAI,CAAC,2BAA2B,CAAC,IAAI,CACzC;YACE,SAAS,EAAE,QAAQ;YACnB,eAAe,EAAE,cAAc;SAChC,EACD,EAAE,SAAS,EAAE,CAAC,QAAQ,CAAC,EAAE,EACzB,aAAa,CACd,CAAA;QAEH,IAAI,CAAC,oCAAoC,EAAE,CAAC;YAC1C,MAAM,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAC3C;gBACE,SAAS,EAAE,QAAQ;gBACnB,eAAe,EAAE,cAAc;gBAC/B,IAAI,EAAE,cAAM,CAAC,OAAO,CAAC,CAAC,CAAC;aACxB,EACD,aAAa,CACd,CAAA;QACH,CAAC;aAAM,CAAC;YACN,MAAM,KAAK,GAAG,oCAAoC,CAAC,MAAM,CAAC,KAAK,CAAA;YAC/D,MAAM,YAAY,GAAG,cAAM,CAAC,GAAG,CAC7B,oCAAoC,CAAC,IAAI,IAAI,CAAC,EAC9C,CAAC,CACF,CAAA;YAED,IAAI,KAAK,IAAI,cAAM,CAAC,EAAE,CAAC,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC;gBAC5C,MAAM,IAAI,mBAAW,CACnB,mBAAW,CAAC,KAAK,CAAC,WAAW,EAC7B,2CAA2C,CAC5C,CAAA;YACH,CAAC;YAED,MAAM,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAC3C;gBACE,EAAE,EAAE,oCAAoC,CAAC,EAAE;gBAC3C,IAAI,EAAE,YAAY;aACnB,EACD,aAAa,CACd,CAAA;QACH,CAAC;IACH,CAAC;IAGe,AAAN,KAAK,CAAC,qCAAqC,CACnD,QAAgB,EAChB,cAAsB,EACL,gBAAyB,EAAE;QAE5C,MAAM,CAAC,oCAAoC,CAAC,GAC1C,MAAM,IAAI,CAAC,2BAA2B,CAAC,IAAI,CACzC;YACE,SAAS,EAAE,QAAQ;YACnB,eAAe,EAAE,cAAc;SAChC,EACD,EAAE,EACF,aAAa,CACd,CAAA;QAEH,IAAI,CAAC,oCAAoC,EAAE,CAAC;YAC1C,OAAM;QACR,CAAC;QAED,IAAI,cAAM,CAAC,GAAG,CAAC,oCAAoC,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;YAClE,MAAM,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAC3C,oCAAoC,CAAC,EAAE,EACvC,aAAa,CACd,CAAA;QACH,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAC3C;gBACE,EAAE,EAAE,oCAAoC,CAAC,EAAE;gBAC3C,IAAI,EAAE,cAAM,CAAC,GAAG,CAAC,oCAAoC,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC;aACpE,EACD,aAAa,CACd,CAAA;QACH,CAAC;IACH,CAAC;IAcK,AAVN;;;;;;;;;OASG;IACH,KAAK,CAAC,aAAa,CACjB,eAAsD,EACtD,mBAA8D,EAC7C,gBAAyB,EAAE;QAE5C,MAAM,cAAc,GAAG,eAAe;aACnC,GAAG,CAAC,CAAC,cAAc,EAAE,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC;aAC5C,MAAM,CAAC,OAAO,CAAC,CAAA;QAElB,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAmC,CAAA;QACpE,MAAM,qBAAqB,GAAG,IAAI,GAAG,EAAmB,CAAA;QAExD,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,qBAAqB,CACzD,EAAE,IAAI,EAAE,cAAc,EAAE,EACxB,EAAE,SAAS,EAAE,CAAC,UAAU,EAAE,iBAAiB,EAAE,wBAAwB,CAAC,EAAE,EACxE,aAAa,CACd,CAAA;QAED,KAAK,MAAM,SAAS,IAAI,kBAAkB,EAAE,CAAC;YAC3C,IAAI,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;gBAC/B,iBAAiB,CAAC,GAAG,CACnB,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,EAC7B,SAAS,CAAC,QAAQ,EAAE,MAAM,CAC3B,CAAA;YACH,CAAC;QACH,CAAC;QAED,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAGnC,kBAAkB,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,IAAK,EAAE,SAAS,CAAC,CAAC,CAAC,CAAA;QAEtE,KAAK,IAAI,cAAc,IAAI,eAAe,EAAE,CAAC;YAC3C,MAAM,SAAS,GAAG,qBAAqB,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,CAAA;YAEhE,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,SAAQ;YACV,CAAC;YAED,MAAM,cAAc,GAAG,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAA;YAEjD,IAAI,CAAC,cAAc,EAAE,CAAC;gBACpB,SAAQ;YACV,CAAC;YAED,IAAI,cAAc,CAAC,IAAI,KAAK,0BAAkB,CAAC,KAAK,EAAE,CAAC;gBACrD,MAAM,kBAAkB,GAAG,iBAAiB,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC,CAAA;gBAEnE,IAAI,CAAC,kBAAkB,EAAE,CAAC;oBACxB,SAAQ;gBACV,CAAC;gBAED,iCAAiC;gBACjC,MAAM,YAAY,GAAG,cAAM,CAAC,GAAG,CAC7B,kBAAkB,CAAC,IAAI,IAAI,CAAC,EAC5B,cAAc,CAAC,MAAM,CACtB,CAAA;gBAED,IACE,cAAc,CAAC,KAAK;oBACpB,cAAM,CAAC,EAAE,CAAC,YAAY,EAAE,cAAc,CAAC,KAAK,CAAC,EAC7C,CAAC;oBACD,MAAM,IAAI,mBAAW,CACnB,mBAAW,CAAC,KAAK,CAAC,WAAW,EAC7B,2CAA2C,CAC5C,CAAA;gBACH,CAAC;gBAED,kBAAkB,CAAC,IAAI,GAAG,YAAY,CAAA;gBAEtC,iBAAiB,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,EAAE,kBAAkB,CAAC,CAAA;YAC9D,CAAC;YAED,IAAI,cAAc,CAAC,IAAI,KAAK,0BAAkB,CAAC,KAAK,EAAE,CAAC;gBACrD,MAAM,oBAAoB,GACxB,qBAAqB,CAAC,GAAG,CAAC,SAAS,CAAC,IAAK,CAAC,IAAI,KAAK,CAAA;gBAErD,IAAI,oBAAoB,EAAE,CAAC;oBACzB,SAAQ;gBACV,CAAC;gBAED,MAAM,YAAY,GAAG,cAAM,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC,CAAA;gBAE5D,IACE,cAAc,CAAC,KAAK;oBACpB,cAAM,CAAC,EAAE,CAAC,YAAY,EAAE,cAAc,CAAC,KAAK,CAAC,EAC7C,CAAC;oBACD,MAAM,IAAI,mBAAW,CACnB,mBAAW,CAAC,KAAK,CAAC,WAAW,EAC7B,2CAA2C,CAC5C,CAAA;gBACH,CAAC;gBAED,iBAAiB,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,EAAE;oBACvC,EAAE,EAAE,cAAc,CAAC,EAAE;oBACrB,IAAI,EAAE,YAAY;iBACnB,CAAC,CAAA;gBAEF,qBAAqB,CAAC,GAAG,CAAC,SAAS,CAAC,IAAK,EAAE,IAAI,CAAC,CAAA;YAClD,CAAC;YAED,IAAI,cAAc,CAAC,IAAI,KAAK,0BAAkB,CAAC,gBAAgB,EAAE,CAAC;gBAChE,MAAM,oBAAoB,GACxB,qBAAqB,CAAC,GAAG,CAAC,SAAS,CAAC,IAAK,CAAC,IAAI,KAAK,CAAA;gBAErD,IAAI,oBAAoB,EAAE,CAAC;oBACzB,SAAQ;gBACV,CAAC;gBAED,MAAM,SAAS,GAAG,cAAc,CAAC,SAAU,CAAA;gBAC3C,MAAM,cAAc,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAA;gBAErD,IAAI,CAAC,cAAc,EAAE,CAAC;oBACpB,SAAQ;gBACV,CAAC;gBAED,MAAM,IAAI,CAAC,uCAAuC,CAChD,cAAc,CAAC,EAAE,EACjB,cAAc,EACd,aAAa,CACd,CAAA;gBAED,MAAM,YAAY,GAAG,cAAM,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC,CAAA;gBAE5D,+EAA+E;gBAC/E,iBAAiB,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,EAAE;oBACvC,EAAE,EAAE,cAAc,CAAC,EAAE;oBACrB,IAAI,EAAE,YAAY;iBACnB,CAAC,CAAA;gBAEF,qBAAqB,CAAC,GAAG,CAAC,SAAS,CAAC,IAAK,EAAE,IAAI,CAAC,CAAA;YAClD,CAAC;QACH,CAAC;QAED,IAAI,iBAAiB,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YAC/B,MAAM,mBAAmB,GAA8B,EAAE,CAAA;YACzD,KAAK,MAAM,CAAC,CAAC,EAAE,kBAAkB,CAAC,IAAI,iBAAiB,EAAE,CAAC;gBACxD,6CAA6C;gBAC7C,IAAI,kBAAkB,CAAC,MAAM,EAAE,CAAC;oBAC9B,MAAM,EAAE,MAAM,EAAE,GAAG,+BAA+B,EAAE,GAClD,kBAAkB,CAAA;oBACpB,mBAAmB,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAA;oBACzD,SAAQ;gBACV,CAAC;gBACD,mBAAmB,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;YAC9C,CAAC;YAED,MAAM,IAAI,CAAC,sBAAsB,CAAC,MAAM,CACtC,mBAAmB,EACnB,aAAa,CACd,CAAA;QACH,CAAC;IACH,CAAC;IAIK,AAAN,KAAK,CAAC,WAAW,CACf,eAAsD,EACtD,mBAA8D,EAC7C,gBAAyB,EAAE;QAE5C,MAAM,qBAAqB,GAAG,IAAI,GAAG,EAAmB,CAAA;QACxD,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAmC,CAAA;QAEpE,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,qBAAqB,CACzD;YACE,IAAI,EAAE,eAAe;iBAClB,GAAG,CAAC,CAAC,cAAc,EAAE,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC;iBAC5C,MAAM,CAAC,OAAO,CAAC;SACnB,EACD,EAAE,SAAS,EAAE,CAAC,UAAU,EAAE,iBAAiB,CAAC,EAAE,EAC9C,aAAa,CACd,CAAA;QAED,KAAK,MAAM,SAAS,IAAI,kBAAkB,EAAE,CAAC;YAC3C,IAAI,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;gBAC/B,iBAAiB,CAAC,GAAG,CACnB,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,EAC7B,SAAS,CAAC,QAAQ,EAAE,MAAM,CAC3B,CAAA;YACH,CAAC;QACH,CAAC;QAED,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAGnC,kBAAkB,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,IAAK,EAAE,SAAS,CAAC,CAAC,CAAC,CAAA;QAEtE,KAAK,IAAI,cAAc,IAAI,eAAe,EAAE,CAAC;YAC3C,MAAM,SAAS,GAAG,qBAAqB,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,CAAA;YAEhE,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,SAAQ;YACV,CAAC;YAED,MAAM,cAAc,GAAG,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAA;YAEjD,IAAI,CAAC,cAAc,EAAE,CAAC;gBACpB,SAAQ;YACV,CAAC;YAED,IAAI,cAAc,CAAC,IAAI,KAAK,0BAAkB,CAAC,KAAK,EAAE,CAAC;gBACrD,MAAM,kBAAkB,GAAG,iBAAiB,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC,CAAA;gBAEnE,IAAI,CAAC,kBAAkB,EAAE,CAAC;oBACxB,SAAQ;gBACV,CAAC;gBAED,4DAA4D;gBAC5D,MAAM,YAAY,GAAG,cAAM,CAAC,GAAG,CAC7B,kBAAkB,CAAC,IAAI,IAAI,CAAC,EAC5B,cAAc,CAAC,MAAM,CACtB,CAAA;gBAED,kBAAkB,CAAC,IAAI,GAAG,cAAM,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAA;gBACvE,iBAAiB,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,EAAE,kBAAkB,CAAC,CAAA;YAC9D,CAAC;YAED,IAAI,cAAc,CAAC,IAAI,KAAK,0BAAkB,CAAC,KAAK,EAAE,CAAC;gBACrD,MAAM,oBAAoB,GACxB,qBAAqB,CAAC,GAAG,CAAC,SAAS,CAAC,IAAK,CAAC,IAAI,KAAK,CAAA;gBAErD,IAAI,oBAAoB,EAAE,CAAC;oBACzB,SAAQ;gBACV,CAAC;gBAED,4DAA4D;gBAC5D,MAAM,YAAY,GAAG,cAAM,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC,CAAA;gBAC5D,MAAM,SAAS,GAAG,cAAM,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAA;gBAE/D,iBAAiB,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,EAAE;oBACvC,EAAE,EAAE,cAAc,CAAC,EAAE;oBACrB,IAAI,EAAE,SAAS;iBAChB,CAAC,CAAA;gBAEF,qBAAqB,CAAC,GAAG,CAAC,SAAS,CAAC,IAAK,EAAE,IAAI,CAAC,CAAA;YAClD,CAAC;YAED,IAAI,cAAc,CAAC,IAAI,KAAK,0BAAkB,CAAC,gBAAgB,EAAE,CAAC;gBAChE,MAAM,oBAAoB,GACxB,qBAAqB,CAAC,GAAG,CAAC,SAAS,CAAC,IAAK,CAAC,IAAI,KAAK,CAAA;gBAErD,IAAI,oBAAoB,EAAE,CAAC;oBACzB,SAAQ;gBACV,CAAC;gBAED,MAAM,SAAS,GAAG,cAAc,CAAC,SAAU,CAAA;gBAC3C,MAAM,cAAc,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAA;gBAErD,IAAI,CAAC,cAAc,EAAE,CAAC;oBACpB,SAAQ;gBACV,CAAC;gBAED,MAAM,IAAI,CAAC,qCAAqC,CAC9C,cAAc,CAAC,EAAE,EACjB,cAAc,EACd,aAAa,CACd,CAAA;gBACD,MAAM,YAAY,GAAG,cAAM,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC,CAAA;gBAC5D,MAAM,SAAS,GAAG,cAAM,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAA;gBAE/D,+EAA+E;gBAC/E,iBAAiB,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,EAAE;oBACvC,EAAE,EAAE,cAAc,CAAC,EAAE;oBACrB,IAAI,EAAE,SAAS;iBAChB,CAAC,CAAA;gBAEF,qBAAqB,CAAC,GAAG,CAAC,SAAS,CAAC,IAAK,EAAE,IAAI,CAAC,CAAA;YAClD,CAAC;QACH,CAAC;QAED,IAAI,iBAAiB,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YAC/B,MAAM,mBAAmB,GAA8B,EAAE,CAAA;YACzD,KAAK,MAAM,CAAC,CAAC,EAAE,kBAAkB,CAAC,IAAI,iBAAiB,EAAE,CAAC;gBACxD,IAAI,kBAAkB,CAAC,MAAM,EAAE,CAAC;oBAC9B,MAAM,EAAE,MAAM,EAAE,GAAG,+BAA+B,EAAE,GAClD,kBAAkB,CAAA;oBACpB,mBAAmB,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAA;oBACzD,SAAQ;gBACV,CAAC;gBACD,mBAAmB,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;YAC9C,CAAC;YAED,MAAM,IAAI,CAAC,sBAAsB,CAAC,MAAM,CACtC,mBAAmB,EACnB,aAAa,CACd,CAAA;QACH,CAAC;IACH,CAAC;IAGK,AAAN,KAAK,CAAC,cAAc,CAClB,cAAwB,EACxB,kBAAuD,EACvD,UAA+C,EAAE,EAChC,gBAAyB,EAAE;QAE5C,MAAM,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,GAAG,OAAO,CAAA;QAClE,MAAM,eAAe,GAAoC,EAAE,CAAA;QAC3D,MAAM,EAAE,KAAK,GAAG,EAAE,EAAE,gBAAgB,EAAE,eAAe,GAAG,EAAE,EAAE,GAC1D,kBAAkB,CAAA;QAEpB,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAM9B,CAAA;QAEH,6EAA6E;QAC7E,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM;gBAAE,SAAQ;YAEvC,KAAK,MAAM,UAAU,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBAC1C,IAAI,CAAC,IAAA,gBAAQ,EAAC,UAAU,CAAC,IAAI,CAAC;oBAAE,SAAQ;gBAExC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC5C,iBAAiB,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAA;gBACrE,CAAC;gBAED,iBAAiB,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAE,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;YAChE,CAAC;QACH,CAAC;QAED,KAAK,MAAM,cAAc,IAAI,eAAe,EAAE,CAAC;YAC7C,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,MAAM;gBAAE,SAAQ;YAEjD,KAAK,MAAM,UAAU,IAAI,cAAc,CAAC,WAAW,EAAE,CAAC;gBACpD,IAAI,CAAC,IAAA,gBAAQ,EAAC,UAAU,CAAC,IAAI,CAAC;oBAAE,SAAQ;gBAExC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC5C,iBAAiB,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAA;gBACrE,CAAC;gBAED,iBAAiB,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;YACnE,CAAC;QACH,CAAC;QAED,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAA;QAEzD,MAAM,qBAAqB,GAAG,IAAI,GAAG,EAAkB,CAAA;QAEvD,MAAM,qBAAqB,GAAG,CAAC,GAAG,cAAc,EAAE,GAAG,YAAY,CAAC,CAAA;QAElE,MAAM,oBAAoB,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAA;QAEvE,IAAI,WAAW,GAAyB,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAA;QAEtE,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC3B,MAAM,uBAAuB,GAC3B,MAAM,IAAA,yFAAwC,EAC5C,kBAAkB,EAClB,aAAa,CACd,CAAA;YAEH,IAAI,gCAAgC,GAAa,EAAE,CAAA;YAEnD,IAAI,uBAAuB,EAAE,CAAC;gBAC5B,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAClD;oBACE,IAAI,EAAE,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,uBAAuB,CAAC;iBACxD,EACD,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,EAClB,aAAa,CACd,CAAA;gBAED,gCAAgC,GAAG,UAAU,CAAC,GAAG,CAC/C,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,EAAG,CAC7B,CAAA;YACH,CAAC;YAED,MAAM,wBAAwB,GAAG,uBAAuB;gBACtD,CAAC,CAAC;oBACE,EAAE,EAAE,EAAE,GAAG,EAAE,gCAAgC,EAAE;iBAC9C;gBACH,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAA;YAE1B,WAAW,GAAG,wBAAwB;gBACpC,CAAC,CAAC;oBACE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,oBAAoB,EAAE,EAAE,wBAAwB,CAAC;iBAChE;gBACH,CAAC,CAAC,WAAW,CAAA;QACjB,CAAC;QAED,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,qBAAqB,CACjD,WAAW,EACX;YACE,KAAK,EAAE,EAAE,kBAAkB,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;YAChD,SAAS,EAAE;gBACT,oBAAoB;gBACpB,iCAAiC;gBACjC,wCAAwC;gBACxC,8BAA8B;gBAC9B,qCAAqC;gBACrC,OAAO;gBACP,cAAc;gBACd,UAAU;gBACV,iBAAiB;aAClB;SACF,EACD,aAAa,CACd,CAAA;QAED,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAGnC,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,IAAK,EAAE,SAAS,CAAC,CAAC,CAAC,CAAA;QAE9D,MAAM,uBAAuB,GAAa,EAAE,CAAA;QAE5C,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACnC,IAAI,SAAS,CAAC,YAAY,EAAE,CAAC;gBAC3B,uBAAuB,CAAC,IAAI,CAAC,SAAS,CAAC,IAAK,CAAC,CAAA;YAC/C,CAAC;QACH,CAAC;QAED,KAAK,MAAM,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,iBAAiB,CAAC,OAAO,EAAE,EAAE,CAAC;YAC9D,KAAK,MAAM,UAAU,IAAI,WAAW,CAAC,KAAK,EAAE,CAAC;gBAC3C,eAAe,CAAC,IAAI,CAAC;oBACnB,MAAM,EAAE,uBAAe,CAAC,sBAAsB;oBAC9C,aAAa,EAAE,UAAU,CAAC,EAAE;oBAC5B,IAAI;iBACL,CAAC,CAAA;YACJ,CAAC;YAED,KAAK,MAAM,UAAU,IAAI,WAAW,CAAC,QAAQ,EAAE,CAAC;gBAC9C,eAAe,CAAC,IAAI,CAAC;oBACnB,MAAM,EAAE,uBAAe,CAAC,iCAAiC;oBACzD,aAAa,EAAE,UAAU,CAAC,EAAE;oBAC5B,IAAI;iBACL,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;QAED,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAS,cAAc,CAAC,CAAA;QACxD,MAAM,yBAAyB,GAAG,IAAI,GAAG,CAAS,uBAAuB,CAAC,CAAA;QAE1E,MAAM,uBAAuB,GAAG,UAAU;aACvC,MAAM,CACL,CAAC,CAAC,EAAE,EAAE,CACJ,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,IAAK,CAAC;YAC7B,yBAAyB,CAAC,GAAG,CAAC,CAAC,CAAC,IAAK,CAAC,CACzC;aACA,IAAI,CAAC,2BAAkB,CAAC,gBAAgB,CAAC,CAAA;QAE5C,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAG/B,CAAA;QACH,MAAM,qBAAqB,GAAG,IAAI,GAAG,EAGlC,CAAA;QAEH,KAAK,MAAM,gBAAgB,IAAI,uBAAuB,EAAE,CAAC;YACvD,MAAM,SAAS,GAAG,qBAAqB,CAAC,GAAG,CAAC,gBAAgB,CAAC,IAAK,CAAE,CAAA;YACpE,IAAI,CAAC,SAAS,CAAC,kBAAkB,EAAE,CAAC;gBAClC,SAAQ;YACV,CAAC;YAED,MAAM,EACJ,kBAAkB,EAAE,iBAAiB,EACrC,KAAK,EAAE,cAAc,GAAG,EAAE,GAC3B,GAAG,SAAS,CAAA;YAEb,IACE,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,KAAK,0BAAkB,CAAC,gBAAgB,EACxE,CAAC;gBACD,MAAM,SAAS,GAAG,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAU,CAAA;gBACxD,MAAM,kBAAkB,GACtB,2BAAkB,CAAC,6CAA6C,CAC9D,kBAAkB,CACnB,CAAA;gBACH,MAAM,cAAc,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAA;gBAEpD,IAAI,CAAC,cAAc,EAAE,CAAC;oBACpB,MAAM,IAAI,mBAAW,CACnB,mBAAW,CAAC,KAAK,CAAC,YAAY,EAC9B,wBAAwB,SAAS,4CAA4C,CAC9E,CAAA;gBACH,CAAC;gBAED,MAAM,CAAC,+BAA+B,CAAC,GACrC,CAAC,MAAM,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAC1C;oBACE,SAAS,EAAE,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE;oBACzC,eAAe,EAAE,cAAc;iBAChC,EACD,EAAE,EACF,aAAa,CACd,CAAwC,CAAA;gBAE3C,IAAI,+BAA+B,EAAE,CAAC;oBACpC,MAAM,MAAM,GAAG,2BAAkB,CAAC,8BAA8B,CAC9D,SAAS,EACT,CAAC,EACD,+BAA+B,CAChC,CAAA;oBAED,IAAI,MAAM,EAAE,CAAC;wBACX,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;wBAC5B,SAAQ;oBACV,CAAC;gBACH,CAAC;YACH,CAAC;YAED,MAAM,mBAAmB,GACvB,CAAC,IAAA,iBAAS,EAAC,iBAAiB,CAAC,aAAa,CAAC;gBAC3C,kBAAkB,CAAC,aAAa,KAAK,iBAAiB,CAAC,aAAa,CAAA;YAEtE,MAAM,qBAAqB,GAAG,IAAA,gCAAuB,EACnD,cAAc,EACd,kBAAkB,EAClB,mCAA2B,CAAC,KAAK,CAClC,CAAA;YAED,IAAI,CAAC,qBAAqB,IAAI,CAAC,mBAAmB,EAAE,CAAC;gBACnD,SAAQ;YACV,CAAC;YAED,IAAI,SAAS,CAAC,IAAI,KAAK,qBAAa,CAAC,MAAM,EAAE,CAAC;gBAC5C,MAAM,uBAAuB,GAC3B,2BAAkB,CAAC,2BAA2B,CAC5C,SAAS,EACT,kBAAkB,CAAC,mCAA2B,CAAC,KAAK,CAAE,EACtD,qBAAqB,EACrB,kBAAkB,EAClB,qBAAqB,CACtB,CAAA;gBAEH,eAAe,CAAC,IAAI,CAAC,GAAG,uBAAuB,CAAC,CAAA;YAClD,CAAC;iBAAM,IAAI,SAAS,CAAC,IAAI,KAAK,qBAAa,CAAC,QAAQ,EAAE,CAAC;gBACrD,MAAM,aAAa,GACjB,iBAAiB,CAAC,WAAW,KAAK,mCAA2B,CAAC,KAAK,CAAA;gBACrE,MAAM,aAAa,GACjB,iBAAiB,CAAC,WAAW,KAAK,mCAA2B,CAAC,KAAK,CAAA;gBACrE,MAAM,gBAAgB,GACpB,iBAAiB,CAAC,WAAW;oBAC7B,mCAA2B,CAAC,gBAAgB,CAAA;gBAC9C,MAAM,kBAAkB,GAAG,aAAa;oBACtC,CAAC,CAAC,mCAA2B,CAAC,MAAM;oBACpC,CAAC,CAAC,SAAS,CAAA;gBAEb,IAAI,aAAa,IAAI,aAAa,EAAE,CAAC;oBACnC,MAAM,uBAAuB,GAC3B,2BAAkB,CAAC,0BAA0B,CAC3C,SAAS,EACT,kBAAkB,CAAC,mCAA2B,CAAC,KAAK,CAAC,EACrD,qBAAqB,EACrB,kBAAkB,CACnB,CAAA;oBAEH,eAAe,CAAC,IAAI,CAAC,GAAG,uBAAuB,CAAC,CAAA;gBAClD,CAAC;gBAED,IAAI,gBAAgB,EAAE,CAAC;oBACrB,MAAM,iCAAiC,GACrC,2BAAkB,CAAC,oCAAoC,CACrD,SAAS,EACT,kBAAkB,CAAC,mCAA2B,CAAC,gBAAgB,CAAC,EAChE,qBAAqB,CACtB,CAAA;oBAEH,eAAe,CAAC,IAAI,CAAC,GAAG,iCAAiC,CAAC,CAAA;gBAC5D,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAA,sCAA8B,EAAC,eAAe,EAAE,EAAE,OAAO,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;QAExE,OAAO,eAAe,CAAA;IACxB,CAAC;IAiBK,AADN,mBAAmB;IACnB,KAAK,CAAC,gBAAgB,CACpB,IAEuC,EACtB,gBAAyB,EAAE;QAE5C,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QACjD,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAA;QAE5E,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,cAAc,CAC1C,EAAE,EAAE,EAAE,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAE,CAAC,EAAE,CAAC,EAAE,EAC3C;YACE,SAAS,EAAE;gBACT,oBAAoB;gBACpB,iCAAiC;gBACjC,wCAAwC;gBACxC,8BAA8B;gBAC9B,qCAAqC;gBACrC,OAAO;gBACP,cAAc;gBACd,UAAU;gBACV,iBAAiB;aAClB;SACF,EACD,aAAa,CACd,CAAA;QAED,OAAO,MAAM,IAAI,CAAC,eAAe,CAAC,SAAS,CAEzC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAA;IACrD,CAAC;IAGe,AAAN,KAAK,CAAC,iBAAiB,CAC/B,IAAyC,EACxB,gBAAyB,EAAE;QAE5C,MAAM,cAAc,GAAyB,EAAE,CAAA;QAC/C,MAAM,sBAAsB,GAAiC,EAAE,CAAA;QAC/D,MAAM,aAAa,GAAwB,EAAE,CAAA;QAE7C,MAAM,WAAW,GAAG,IAAI;aACrB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC;aAC5B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC;aACzB,MAAM,CAAC,CAAC,EAAE,EAAgB,EAAE,CAAC,IAAA,gBAAQ,EAAC,EAAE,CAAC,CAAC,CAAA;QAE7C,MAAM,iBAAiB,GACrB,WAAW,CAAC,MAAM,GAAG,CAAC;YACpB,CAAC,CAAC,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAC9B,EAAE,EAAE,EAAE,WAAW,EAAE,EACnB,EAAE,SAAS,EAAE,CAAC,QAAQ,CAAC,EAAE,EACzB,aAAa,CACd;YACH,CAAC,CAAC,EAAE,CAAA;QAER,MAAM,qCAAqC,GAAG,IAAI,GAAG,EAGlD,CAAA;QACH,MAAM,yBAAyB,GAAG,IAAI,GAAG,EAGtC,CAAA;QACH,MAAM,oBAAoB,GAAG,IAAI,GAAG,EAGjC,CAAA;QACH,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAG9B,CAAA;QACH,MAAM,wBAAwB,GAAG,IAAI,GAAG,EAGrC,CAAA;QAEH,KAAK,MAAM,EACT,kBAAkB,EAAE,qBAAqB,EACzC,KAAK,EAAE,SAAS,EAChB,QAAQ,EAAE,YAAY,EACtB,WAAW,EAAE,UAAU,EACvB,GAAG,aAAa,EACjB,IAAI,IAAI,EAAE,CAAC;YACV,qCAAqC,CAAC,GAAG,CACvC,aAAa,CAAC,IAAI,EAClB,qBAAqB,CACtB,CAAA;YAED,IAAI,SAAS,EAAE,CAAC;gBACd,yBAAyB,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;YAC9D,CAAC;YAED,IAAI,YAAY,IAAI,UAAU,EAAE,CAAC;gBAC/B,MAAM,IAAI,mBAAW,CACnB,mBAAW,CAAC,KAAK,CAAC,YAAY,EAC9B,+FAA+F,CAChG,CAAA;YACH,CAAC;YAED,IAAI,CAAC,YAAY,IAAI,CAAC,UAAU,EAAE,CAAC;gBACjC,cAAc,CAAC,IAAI,CAAC,EAAE,GAAG,aAAa,EAAE,CAAC,CAAA;gBACzC,SAAQ;YACV,CAAC;YAED,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,IAAI,CAC7C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,UAAU,CAC3B,CAAA;YAED,IAAI,UAAU,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACpC,MAAM,IAAI,mBAAW,CACnB,mBAAW,CAAC,KAAK,CAAC,SAAS,EAC3B,qCAAqC,UAAU,EAAE,CAClD,CAAA;YACH,CAAC;YAED,MAAM,gBAAgB,GACpB,YAAY,EAAE,MAAM,EAAE,aAAa;gBACnC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,UAAU,CAAC,EAAE,MAAM;oBACxD,EAAE,aAAa,CAAA;YAEnB,IACE,YAAY,EAAE,MAAM,EAAE,IAAI,KAAK,0BAAkB,CAAC,KAAK;gBACvD,gBAAgB,KAAK,qBAAqB,EAAE,aAAa,EACzD,CAAC;gBACD,MAAM,IAAI,mBAAW,CACnB,mBAAW,CAAC,KAAK,CAAC,YAAY,EAC9B,uDAAuD,CACxD,CAAA;YACH,CAAC;YAED,IAAI,YAAY,EAAE,CAAC;gBACjB,wBAAwB,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,EAAE,YAAY,CAAC,CAAA;YAChE,CAAC;YAED,cAAc,CAAC,IAAI,CAAC;gBAClB,GAAG,aAAa;gBAChB,WAAW,EAAE,UAAU;aACxB,CAAC,CAAA;QACJ,CAAC;QAED,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAC3D,cAAc,EACd,aAAa,CACd,CAAA;QAED,KAAK,MAAM,SAAS,IAAI,iBAAiB,EAAE,CAAC;YAC1C,MAAM,cAAc,GAAG,qCAAqC,CAAC,GAAG,CAC9D,SAAS,CAAC,IAAI,CACf,CAAA;YAED,MAAM,YAAY,GAAG,wBAAwB,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;YAEjE,IAAI,YAAY,EAAE,CAAC;gBACjB,aAAa,CAAC,IAAI,CAAC;oBACjB,GAAG,YAAY;oBACf,UAAU,EAAE,CAAC,SAAS,CAAC;iBACxB,CAAC,CAAA;YACJ,CAAC;YAED,IAAI,cAAc,EAAE,CAAC;gBACnB,MAAM,EACJ,YAAY,EAAE,eAAe,GAAG,EAAE,EAClC,SAAS,EAAE,YAAY,GAAG,EAAE,EAC5B,GAAG,6BAA6B,EACjC,GAAG,cAAc,CAAA;gBAClB,MAAM,qBAAqB,GAAG;oBAC5B,GAAG,6BAA6B;oBAChC,SAAS;iBACV,CAAA;gBAED,IACE,qBAAqB,CAAC,WAAW;oBAC/B,mCAA2B,CAAC,KAAK;oBACnC,eAAe,CAAC,MAAM,EACtB,CAAC;oBACD,MAAM,IAAI,mBAAW,CACnB,mBAAW,CAAC,KAAK,CAAC,YAAY,EAC9B,yDAAyD,mCAA2B,CAAC,KAAK,kBAAkB,CAC7G,CAAA;gBACH,CAAC;gBAED,IAAI,SAAS,CAAC,IAAI,KAAK,qBAAa,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;oBACpE,MAAM,IAAI,mBAAW,CACnB,mBAAW,CAAC,KAAK,CAAC,YAAY,EAC9B,8BAA8B,qBAAa,CAAC,MAAM,iBAAiB,CACpE,CAAA;gBACH,CAAC;gBAED,IACE,SAAS,CAAC,IAAI,KAAK,qBAAa,CAAC,MAAM;oBACvC,CAAC,eAAe,CAAC,MAAM,EACvB,CAAC;oBACD,MAAM,IAAI,mBAAW,CACnB,mBAAW,CAAC,KAAK,CAAC,YAAY,EAC9B,iCAAiC,qBAAa,CAAC,MAAM,iBAAiB,CACvE,CAAA;gBACH,CAAC;gBAED,IAAA,4CAAmC,EAAC,qBAAqB,EAAE,SAAS,CAAC,CAAA;gBAErE,sBAAsB,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAA;gBAElD,IAAI,eAAe,CAAC,MAAM,EAAE,CAAC;oBAC3B,oBAAoB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,EAAE,eAAe,CAAC,CAAA;gBACzD,CAAC;gBAED,IAAI,YAAY,CAAC,MAAM,EAAE,CAAC;oBACxB,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,EAAE,YAAY,CAAC,CAAA;gBACnD,CAAC;YACH,CAAC;YAED,IAAI,yBAAyB,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;gBAClD,MAAM,IAAI,CAAC,8BAA8B,CACvC,yBAAyB,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,EACnD,YAAY,EACZ,SAAS,EACT,aAAa,CACd,CAAA;YACH,CAAC;QACH,CAAC;QAED,MAAM,yBAAyB,GAC7B,sBAAsB,CAAC,MAAM,GAAG,CAAC;YAC/B,CAAC,CAAC,MAAM,IAAI,CAAC,yBAAyB,CAAC,MAAM,CACzC,sBAAsB,EACtB,aAAa,CACd;YACH,CAAC,CAAC,EAAE,CAAA;QAER,MAAM,gBAAgB,GACpB,aAAa,CAAC,MAAM,GAAG,CAAC;YACtB,CAAC,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,aAAa,EAAE,aAAa,CAAC;YAC1D,CAAC,CAAC,EAAE,CAAA;QAER,KAAK,MAAM,YAAY,IAAI,aAAa,EAAE,CAAC;YACzC,MAAM,UAAU,GAAG,YAAY,CAAC,UAAU,CAAA;YAC1C,MAAM,QAAQ,GAAG,gBAAgB,CAAC,IAAI,CACpC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,mBAAmB,KAAK,YAAY,CAAC,mBAAmB,CAClE,CAAA;YAED,IAAI,QAAQ,IAAI,UAAU,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;gBAChD,MAAM,IAAI,CAAC,uBAAuB,CAChC,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAE,EAAE,aAAa,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAC/D,aAAa,CACd,CAAA;YACH,CAAC;QACH,CAAC;QAED,KAAK,MAAM,iBAAiB,IAAI,yBAAyB,EAAE,CAAC;YAC1D,MAAM,WAAW,GAAG,oBAAoB,CAAC,GAAG,CAC1C,iBAAiB,CAAC,SAAS,CAAC,EAAE,CAC/B,CAAA;YACD,IAAI,WAAW,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1C,MAAM,IAAI,CAAC,8BAA8B,CACvC,WAAW,EACX,qBAAqB,EACrB,iBAAiB,EACjB,aAAa,CACd,CAAA;YACH,CAAC;YAED,MAAM,QAAQ,GAAG,iBAAiB,CAAC,GAAG,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;YACtE,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACpC,MAAM,IAAI,CAAC,8BAA8B,CACvC,QAAQ,EACR,kBAAkB,EAClB,iBAAiB,EACjB,aAAa,CACd,CAAA;YACH,CAAC;QACH,CAAC;QAED,OAAO,iBAAiB,CAAA;IAC1B,CAAC;IAiBK,AADN,mBAAmB;IACnB,KAAK,CAAC,gBAAgB,CACpB,IAEuC,EACtB,gBAAyB,EAAE;QAE5C,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QACjD,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAA;QAE5E,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,cAAc,CAC1C,EAAE,EAAE,EAAE,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAE,CAAC,EAAE,CAAC,EAAE,EAC3C;YACE,SAAS,EAAE;gBACT,oBAAoB;gBACpB,iCAAiC;gBACjC,wCAAwC;gBACxC,OAAO;gBACP,cAAc;gBACd,UAAU;gBACV,iBAAiB;aAClB;SACF,EACD,aAAa,CACd,CAAA;QAED,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;IACzD,CAAC;IAGe,AAAN,KAAK,CAAC,iBAAiB,CAC/B,IAAyC,EACxB,gBAAyB,EAAE;QAE5C,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;QAC1C,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAC1D,EAAE,EAAE,EAAE,YAAY,EAAE,EACpB,EAAE,SAAS,EAAE,CAAC,oBAAoB,CAAC,EAAE,CACtC,CAAA;QACD,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CACxD,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,iBAAS,EAAC,CAAC,CAAC,CAAC,EAAE,EAClE,EAAE,SAAS,EAAE,CAAC,QAAQ,CAAC,EAAE,CAC1B,CAAA;QAED,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAGnC,kBAAkB,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC,CAAA;QAEnE,MAAM,cAAc,GAAyB,EAAE,CAAA;QAC/C,MAAM,sBAAsB,GAAiC,EAAE,CAAA;QAE/D,KAAK,MAAM,EACT,kBAAkB,EAAE,qBAAqB,EACzC,WAAW,EAAE,UAAU,EACvB,GAAG,aAAa,EACjB,IAAI,IAAI,EAAE,CAAC;YACV,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,IAAI,CAC7C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,UAAU,CAC3B,CAAA;YACD,MAAM,iBAAiB,GAAG,qBAAqB,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAE,CAAA;YACtE,MAAM,yBAAyB,GAAG,iBAAiB,EAAE,kBAAkB,CAAA;YACvE,MAAM,qBAAqB,GACzB,yBAAyB,EAAE,aAAa;gBACxC,qBAAqB,EAAE,aAAa,CAAA;YAEtC,IAAI,UAAU,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACpC,MAAM,IAAI,mBAAW,CACnB,mBAAW,CAAC,KAAK,CAAC,YAAY,EAC9B,mCAAmC,UAAU,EAAE,CAChD,CAAA;YACH,CAAC;YAED,IACE,UAAU;gBACV,gBAAgB,EAAE,MAAM,EAAE,IAAI,KAAK,0BAAkB,CAAC,KAAK;gBAC3D,gBAAgB,CAAC,MAAM,CAAC,aAAa,KAAK,qBAAqB,EAC/D,CAAC;gBACD,MAAM,IAAI,mBAAW,CACnB,mBAAW,CAAC,KAAK,CAAC,YAAY,EAC9B,6CAA6C,UAAU,oBAAoB,iBAAiB,CAAC,EAAE,GAAG,CACnG,CAAA;YACH,CAAC;YAED,IAAI,IAAA,iBAAS,EAAC,UAAU,CAAC,EAAE,CAAC;gBAC1B,cAAc,CAAC,IAAI,CAAC,EAAE,GAAG,aAAa,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,CAAA;YACpE,CAAC;iBAAM,CAAC;gBACN,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;YACpC,CAAC;YAED,IAAI,CAAC,qBAAqB,IAAI,CAAC,yBAAyB,EAAE,CAAC;gBACzD,SAAQ;YACV,CAAC;YAED,IACE,qBAAqB,CAAC,UAAU;gBAChC,CAAC,qCAA4B,CAAC,QAAQ,CAAC,qBAAqB,CAAC,UAAU,CAAC,EACxE,CAAC;gBACD,qBAAqB,CAAC,YAAY,GAAG,IAAI,CAAA;gBACzC,yBAAyB,CAAC,YAAY,GAAG,IAAI,CAAA;YAC/C,CAAC;YAED,IAAA,4CAAmC,EACjC,qBAAqB,EACrB,iBAAiB,CAClB,CAAA;YAED,sBAAsB,CAAC,IAAI,CAAC;gBAC1B,GAAG,qBAAqB;gBACxB,EAAE,EAAE,yBAAyB,CAAC,EAAE;aACjC,CAAC,CAAA;QACJ,CAAC;QAED,MAAM,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CACrD,cAAc,EACd,aAAa,CACd,CAAA;QAED,IAAI,sBAAsB,CAAC,MAAM,EAAE,CAAC;YAClC,MAAM,IAAI,CAAC,yBAAyB,CAAC,MAAM,CACzC,sBAAsB,EACtB,aAAa,CACd,CAAA;QACH,CAAC;QAED,OAAO,iBAAiB,CAAA;IAC1B,CAAC;IAKK,AADN,aAAa;IACb,KAAK,CAAC,oBAAoB,CACxB,IAA6C,EAC5B,gBAAyB,EAAE;QAE5C,MAAM,qBAAqB,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAC5D,IAAI,EACJ,aAAa,CACd,CAAA;QAED,OAAO,MAAM,IAAI,CAAC,kBAAkB,CAClC,EAAE,EAAE,EAAE,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAC9C,EAAE,SAAS,EAAE,CAAC,QAAQ,CAAC,EAAE,EACzB,aAAa,CACd,CAAA;IACH,CAAC;IAGe,AAAN,KAAK,CAAC,qBAAqB,CACnC,IAA6C,EAC5B,gBAAyB,EAAE;QAE5C,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;QAE9C,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAC1D,EAAE,EAAE,EAAE,gBAAgB,EAAE,EACxB,EAAE,SAAS,EAAE,CAAC,QAAQ,CAAC,EAAE,EACzB,aAAa,CACd,CAAA;QAED,MAAM,wBAAwB,GAAa,EAAE,CAAA;QAC7C,MAAM,iBAAiB,GACrB,IAAI,GAAG,EAAE,CAAA;QAEX,KAAK,MAAM,aAAa,IAAI,cAAc,EAAE,CAAC;YAC3C,wBAAwB,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAA;YAC/C,iBAAiB,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,EAAE,aAAa,CAAC,CAAA;QACxD,CAAC;QAED,MAAM,aAAa,GAAG,IAAA,uBAAe,EACnC,IAAA,mBAAW,EAAC,gBAAgB,CAAC,EAC7B,wBAAwB,CACzB,CAAA;QAED,IAAI,aAAa,CAAC,MAAM,EAAE,CAAC;YACzB,MAAM,IAAI,mBAAW,CACnB,mBAAW,CAAC,KAAK,CAAC,YAAY,EAC9B,6BAA6B,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAClE,CAAA;QACH,CAAC;QAED,MAAM,aAAa,GAA4C,EAAE,CAAA;QACjE,MAAM,oBAAoB,GAAa,EAAE,CAAA;QACzC,MAAM,kBAAkB,GAAkC,EAAE,CAAA;QAE5D,KAAK,MAAM,iBAAiB,IAAI,IAAI,EAAE,CAAC;YACrC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,iBAAiB,CAAA;YAC7C,MAAM,gBAAgB,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;YAClE,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAExB,IAAI,IAAA,iBAAS,EAAC,MAAM,CAAC,EAAE,CAAC;gBACtB,MAAM,aAAa,GAAG,iBAAiB,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE,CAAE,CAAA;gBAElE,oBAAoB,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;gBACnE,kBAAkB,CAAC,IAAI,CACrB,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;oBAClC,KAAK;oBACL,cAAc,EAAE,aAAa;iBAC9B,CAAC,CAAC,CACJ,CAAA;YACH,CAAC;QACH,CAAC;QAED,MAAM,CAAC,YAAY,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACvC,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,aAAa,EAAE,aAAa,CAAC;YAC/D,IAAI,CAAC,0BAA0B,CAAC,MAAM,CACpC,oBAAoB,EACpB,aAAa,CACd;YACD,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,kBAAkB,EAAE,aAAa,CAAC;SAC1E,CAAC,CAAA;QAEF,OAAO,YAAY,CAAA;IACrB,CAAC;IAIK,AAAN,KAAK,CAAC,iBAAiB,CACrB,WAAmB,EACnB,SAAkD,EACjC,gBAAyB,EAAE;QAE5C,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAA;QAEpE,MAAM,qBAAqB,GAAG,MAAM,IAAI,CAAC,8BAA8B,CACrE,SAAS,EACT,YAAY,EACZ,SAAS,EACT,aAAa,CACd,CAAA;QAED,OAAO,IAAI,CAAC,kBAAkB,CAC5B,EAAE,EAAE,EAAE,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAC9C,EAAE,SAAS,EAAE,CAAC,QAAQ,CAAC,EAAE,EACzB,aAAa,CACd,CAAA;IACH,CAAC;IAIK,AAAN,KAAK,CAAC,uBAAuB,CAC3B,WAAmB,EACnB,SAAkD,EACjC,gBAAyB,EAAE;QAE5C,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,WAAW,EAAE;YACnE,SAAS,EAAE,CAAC,oBAAoB,CAAC;SAClC,CAAC,CAAA;QAEF,MAAM,iBAAiB,GAAG,SAAS,CAAC,kBAAkB,CAAA;QAEtD,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACvB,MAAM,IAAI,mBAAW,CACnB,mBAAW,CAAC,KAAK,CAAC,YAAY,EAC9B,4CAA4C,CAC7C,CAAA;QACH,CAAC;QAED,MAAM,qBAAqB,GAAG,MAAM,IAAI,CAAC,8BAA8B,CACrE,SAAS,EACT,qBAAqB,EACrB,iBAAiB,EACjB,aAAa,CACd,CAAA;QAED,OAAO,MAAM,IAAI,CAAC,kBAAkB,CAClC,EAAE,EAAE,EAAE,qBAAqB,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAChD,EAAE,SAAS,EAAE,CAAC,QAAQ,CAAC,EAAE,EACzB,aAAa,CACd,CAAA;IACH,CAAC;IAIK,AAAN,KAAK,CAAC,oBAAoB,CACxB,WAAmB,EACnB,SAAkD,EACjC,gBAAyB,EAAE;QAE5C,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CACrD,WAAW,EACX,EAAE,SAAS,EAAE,CAAC,oBAAoB,CAAC,EAAE,EACrC,aAAa,CACd,CAAA;QAED,MAAM,iBAAiB,GAAG,SAAS,CAAC,kBAAkB,CAAA;QAEtD,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACvB,MAAM,IAAI,mBAAW,CACnB,mBAAW,CAAC,KAAK,CAAC,YAAY,EAC9B,4CAA4C,CAC7C,CAAA;QACH,CAAC;QAED,MAAM,qBAAqB,GAAG,MAAM,IAAI,CAAC,8BAA8B,CACrE,SAAS,EACT,kBAAkB,EAClB,iBAAiB,EACjB,aAAa,CACd,CAAA;QAED,OAAO,MAAM,IAAI,CAAC,kBAAkB,CAClC,EAAE,EAAE,EAAE,qBAAqB,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAChD,EAAE,SAAS,EAAE,CAAC,QAAQ,CAAC,EAAE,EACzB,aAAa,CACd,CAAA;IACH,CAAC;IAGe,AAAN,KAAK,CAAC,8BAA8B,CAC5C,SAAkD,EAClD,YAAuE,EACvE,QAE6C,EAC5B,gBAAyB,EAAE;QAE5C,MAAM,yBAAyB,GAAG,IAAA,wBAAgB,EAAC,2BAAiB,CAAC,CAAA;QACrE,MAAM,qBAAqB,GAA4C,EAAE,CAAA;QACzE,MAAM,SAAS,GACb,QAAQ,YAAY,yBAAyB;YAC3C,CAAC,CAAC,QAAQ,CAAC,SAAS;YACpB,CAAC,CAAC,QAAQ,CAAA;QAEd,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;YACtB,OAAO,EAAE,CAAA;QACX,CAAC;QAED,IACE,YAAY,KAAK,kBAAkB;YACnC,SAAS,CAAC,IAAI,KAAK,qBAAa,CAAC,QAAQ,EACzC,CAAC;YACD,MAAM,IAAI,mBAAW,CACnB,mBAAW,CAAC,KAAK,CAAC,YAAY,EAC9B,4BAA4B,qBAAa,CAAC,QAAQ,YAAY,CAC/D,CAAA;QACH,CAAC;QAED,IAAA,wCAA+B,EAAC,SAAS,CAAC,CAAA;QAE1C,MAAM,+BAA+B,GAAkC,EAAE,CAAA;QAEzE,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,QAAQ,CAAA;YACpC,MAAM,iBAAiB,GAA2B;gBAChD,GAAG,IAAI;gBACP,CAAC,YAAY,CAAC,EAAE,CAAC,QAAQ,CAAC;aAC3B,CAAA;YAED,MAAM,CAAC,oBAAoB,CAAC,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,MAAM,CACpE,CAAC,iBAAiB,CAAC,EACnB,aAAa,CACd,CAAA;YAED,qBAAqB,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAA;YAEhD,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;YAC5D,MAAM,uBAAuB,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;gBAC7D,KAAK,EAAE,SAAS;gBAChB,cAAc,EAAE,oBAAoB;aACrC,CAAC,CAAC,CAAA;YAEH,+BAA+B,CAAC,IAAI,CAAC,GAAG,uBAAuB,CAAC,CAAA;QAClE,CAAC;QAED,MAAM,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAC1C,+BAA+B,EAC/B,aAAa,CACd,CAAA;QAED,OAAO,qBAAqB,CAAA;IAC9B,CAAC;IAIK,AAAN,KAAK,CAAC,oBAAoB,CACxB,WAAmB,EACnB,OAAiB,EACA,gBAAyB,EAAE;QAE5C,MAAM,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,OAAO,EAAE,aAAa,CAAC,CAAA;IACvE,CAAC;IAGe,AAAN,KAAK,CAAC,qBAAqB,CACnC,WAAmB,EACnB,OAAiB,EACA,gBAAyB,EAAE;QAE5C,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CACrD,WAAW,EACX,EAAE,SAAS,EAAE,CAAC,OAAO,CAAC,EAAE,EACxB,aAAa,CACd,CAAA;QAED,MAAM,eAAe,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAC9D,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAA;QAExE,MAAM,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,WAAW,EAAE,aAAa,CAAC,CAAA;IACrE,CAAC;IAIK,AAAN,KAAK,CAAC,0BAA0B,CAC9B,WAAmB,EACnB,OAAiB,EACA,gBAAyB,EAAE;QAE5C,MAAM,IAAI,CAAC,6BAA6B,CACtC,WAAW,EACX,OAAO,EACP,mCAA0B,CAAC,YAAY,EACvC,aAAa,CACd,CAAA;IACH,CAAC;IAGK,AAAN,KAAK,CAAC,uBAAuB,CAC3B,WAAmB,EACnB,OAAiB,EACA,gBAAyB,EAAE;QAE5C,MAAM,IAAI,CAAC,6BAA6B,CACtC,WAAW,EACX,OAAO,EACP,mCAA0B,CAAC,SAAS,EACpC,aAAa,CACd,CAAA;IACH,CAAC;IAGe,AAAN,KAAK,CAAC,6BAA6B,CAC3C,WAAmB,EACnB,OAAiB,EACjB,QAEwC,EACvB,gBAAyB,EAAE;QAE5C,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CACrD,WAAW,EACX,EAAE,SAAS,EAAE,CAAC,sBAAsB,QAAQ,EAAE,CAAC,EAAE,EACjD,aAAa,CACd,CAAA;QAED,MAAM,iBAAiB,GAAG,SAAS,CAAC,kBAAkB,CAAA;QAEtD,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACvB,MAAM,IAAI,mBAAW,CACnB,mBAAW,CAAC,KAAK,CAAC,YAAY,EAC9B,4CAA4C,CAC7C,CAAA;QACH,CAAC;QAED,MAAM,qBAAqB,GAAG,iBAAiB,CAAC,QAAQ,CAAC;aACtD,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;aAC3C,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAEzB,MAAM,IAAI,CAAC,qBAAqB,CAAC,MAAM,CACrC,qBAAqB,EACrB,aAAa,CACd,CAAA;IACH,CAAC;IAiBK,AADN,mBAAmB;IACnB,KAAK,CAAC,eAAe,CACnB,IAA2E,EAC1D,gBAAyB,EAAE;QAE5C,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QACjD,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAA;QAE1E,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,aAAa,CACxC,EAAE,EAAE,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAE,CAAC,EAAE,CAAC,EAAE,EAC1C;YACE,SAAS,EAAE,CAAC,QAAQ,EAAE,YAAY,CAAC;SACpC,EACD,aAAa,CACd,CAAA;QAED,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;IACvD,CAAC;IAGe,AAAN,KAAK,CAAC,gBAAgB,CAC9B,IAAwC,EACvB,gBAAyB,EAAE;QAE5C,MAAM,aAAa,GAAwB,EAAE,CAAA;QAC7C,MAAM,mBAAmB,GAA8B,EAAE,CAAA;QACzD,MAAM,2BAA2B,GAAG,IAAI,GAAG,EAGxC,CAAA;QAEH,KAAK,MAAM,kBAAkB,IAAI,IAAI,EAAE,CAAC;YACtC,MAAM,EAAE,MAAM,EAAE,kBAAkB,EAAE,GAAG,YAAY,EAAE,GAAG,kBAAkB,CAAA;YAE1E,IAAI,kBAAkB,EAAE,CAAC;gBACvB,2BAA2B,CAAC,GAAG,CAC7B,YAAY,CAAC,mBAAmB,EAChC,kBAAkB,CACnB,CAAA;YACH,CAAC;YAED,aAAa,CAAC,IAAI,CAAC;gBACjB,GAAG,YAAY;aAChB,CAAC,CAAA;QACJ,CAAC;QAED,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,MAAM,CACzD,aAAa,EACb,aAAa,CACd,CAAA;QAED,KAAK,MAAM,eAAe,IAAI,gBAAgB,EAAE,CAAC;YAC/C,MAAM,kBAAkB,GAAG,2BAA2B,CAAC,GAAG,CACxD,eAAe,CAAC,mBAAmB,CACpC,CAAA;YAED,IAAI,kBAAkB,EAAE,CAAC;gBACvB,IAAI,CAAC,0BAA0B,CAAC,kBAAkB,CAAC,CAAA;gBAEnD,mBAAmB,CAAC,IAAI,CAAC;oBACvB,GAAG,kBAAkB;oBACrB,QAAQ,EAAE,eAAe,CAAC,EAAE;iBAC7B,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;QAED,IAAI,mBAAmB,CAAC,MAAM,EAAE,CAAC;YAC/B,MAAM,IAAI,CAAC,sBAAsB,CAAC,MAAM,CACtC,mBAAmB,EACnB,aAAa,CACd,CAAA;QACH,CAAC;QAED,OAAO,gBAAgB,CAAA;IACzB,CAAC;IAES,0BAA0B,CAAC,IAGpC;QACC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACf,MAAM,IAAI,mBAAW,CACnB,mBAAW,CAAC,KAAK,CAAC,YAAY,EAC9B,0CAA0C,CAC3C,CAAA;QACH,CAAC;QAED,IACE,IAAI,CAAC,IAAI,KAAK,0BAAkB,CAAC,KAAK;YACtC,CAAC,IAAA,iBAAS,EAAC,IAAI,CAAC,aAAa,CAAC,EAC9B,CAAC;YACD,MAAM,IAAI,mBAAW,CACnB,mBAAW,CAAC,KAAK,CAAC,YAAY,EAC9B,0CAA0C,CAC3C,CAAA;QACH,CAAC;IACH,CAAC;IAiBK,AADN,mBAAmB;IACnB,KAAK,CAAC,eAAe,CACnB,IAA2E,EAC1D,gBAAyB,EAAE;QAE5C,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QACjD,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAA;QAE1E,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,aAAa,CACxC,EAAE,EAAE,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAE,CAAC,EAAE,CAAC,EAAE,EAC1C;YACE,SAAS,EAAE,CAAC,QAAQ,EAAE,YAAY,CAAC;SACpC,EACD,aAAa,CACd,CAAA;QAED,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;IACvD,CAAC;IAGe,AAAN,KAAK,CAAC,gBAAgB,CAC9B,IAAwC,EACvB,gBAAyB,EAAE;QAE5C,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;QACzC,MAAM,aAAa,GAAwB,EAAE,CAAA;QAC7C,MAAM,gBAAgB,GAA8B,EAAE,CAAA;QACtD,MAAM,gBAAgB,GAA8B,EAAE,CAAA;QAEtD,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CACxD,EAAE,EAAE,EAAE,WAAW,EAAE,EACnB,EAAE,SAAS,EAAE,CAAC,QAAQ,CAAC,EAAE,EACzB,aAAa,CACd,CAAA;QAED,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAGlC,iBAAiB,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAA;QAE/D,KAAK,MAAM,kBAAkB,IAAI,IAAI,EAAE,CAAC;YACtC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,YAAY,EAAE,GAAG,kBAAkB,CAAA;YAClE,MAAM,gBAAgB,GAAG,oBAAoB,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAE,CAAA;YAEnE,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;YAEhC,wFAAwF;YACxF,uFAAuF;YACvF,IACE,CAAC,gBAAgB,EAAE,MAAM,IAAI,UAAU,EAAE,IAAI,CAAC;gBAC9C,UAAU,EAAE,aAAa,EACzB,CAAC;gBACD,OAAO,UAAU,EAAE,IAAI,CAAA;gBACvB,OAAO,UAAU,EAAE,aAAa,CAAA;gBAEhC,MAAM,IAAI,mBAAW,CACnB,mBAAW,CAAC,KAAK,CAAC,YAAY,EAC9B,gEAAgE,CACjE,CAAA;YACH,CAAC;YAED,IAAI,UAAU,EAAE,CAAC;gBACf,IAAI,gBAAgB,EAAE,MAAM,EAAE,CAAC;oBAC7B,gBAAgB,CAAC,IAAI,CAAC;wBACpB,EAAE,EAAE,gBAAgB,CAAC,MAAM,CAAC,EAAE;wBAC9B,GAAG,UAAU;qBACd,CAAC,CAAA;gBACJ,CAAC;qBAAM,CAAC;oBACN,gBAAgB,CAAC,IAAI,CAAC;wBACpB,GAAG,UAAU;wBACb,QAAQ,EAAE,gBAAgB,CAAC,EAAE;qBAC9B,CAAC,CAAA;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,MAAM,CACzD,aAAa,EACb,aAAa,CACd,CAAA;QAED,IAAI,gBAAgB,CAAC,MAAM,EAAE,CAAC;YAC5B,MAAM,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,gBAAgB,EAAE,aAAa,CAAC,CAAA;QAC3E,CAAC;QAED,IAAI,gBAAgB,CAAC,MAAM,EAAE,CAAC;YAC5B,MAAM,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,gBAAgB,EAAE,aAAa,CAAC,CAAA;QAC3E,CAAC;QAED,OAAO,gBAAgB,CAAA;IACzB,CAAC;IAIK,AAAN,KAAK,CAAC,uBAAuB,CAC3B,IAA+C,EAC9B,gBAAyB,EAAE;QAE5C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,IAAI,EAAE,aAAa,CAAC,CAAA;QAEpE,OAAO,EAAE,GAAG,EAAE,CAAA;IAChB,CAAC;IAED,QAAQ;IACR,yCAAyC;IACzC,oDAAoD;IACpD,4FAA4F;IAE5E,AAAN,KAAK,CAAC,wBAAwB,CACtC,IAA+C,EAC9B,gBAAyB,EAAE;QAE5C,MAAM,EAAE,EAAE,EAAE,aAAa,EAAE,YAAY,GAAG,EAAE,EAAE,GAAG,IAAI,CAAA;QAErD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,EAAE,aAAa,CAAC,CAAA;QAC5E,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,CACvD,EAAE,EAAE,EAAE,YAAY,EAAE,WAAW,EAAE,IAAI,EAAE,EACvC,EAAE,SAAS,EAAE,CAAC,oBAAoB,CAAC,EAAE,EACrC,aAAa,CACd,CAAA;QAED,MAAM,IAAI,GAAG,IAAA,uBAAe,EAC1B,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAChC,YAAY,CACb,CAAA;QAED,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpB,MAAM,IAAI,mBAAW,CACnB,mBAAW,CAAC,KAAK,CAAC,SAAS,EAC3B,0BAA0B,IAAI,CAAC,IAAI,CACjC,GAAG,CACJ,qFAAqF,CACvF,CAAA;QACH,CAAC;QAED,MAAM,6BAA6B,GAAG,eAAe,CAAC,MAAM,CAC1D,CAAC,SAAS,EAAE,EAAE,CACZ,QAAQ,CAAC,MAAM,EAAE,IAAI,KAAK,0BAAkB,CAAC,KAAK;YAClD,SAAS,CAAC,kBAAkB,EAAE,aAAa;gBACzC,QAAQ,EAAE,MAAM,EAAE,aAAa,CACpC,CAAA;QAED,IAAI,6BAA6B,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7C,MAAM,IAAI,mBAAW,CACnB,mBAAW,CAAC,KAAK,CAAC,YAAY,EAC9B,oEAAoE,CACrE,CAAA;QACH,CAAC;QAED,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,CACjC,eAAe,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YAClC,EAAE,EAAE,SAAS,CAAC,EAAE;YAChB,WAAW,EAAE,QAAQ,CAAC,EAAE;SACzB,CAAC,CAAC,EACH,aAAa,CACd,CAAA;QAED,OAAO,eAAe,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IACjD,CAAC;IAIK,AAAN,KAAK,CAAC,4BAA4B,CAChC,IAA+C,EAC9B,gBAAyB,EAAE;QAE5C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,6BAA6B,CAAC,IAAI,EAAE,aAAa,CAAC,CAAA;QAEzE,OAAO,EAAE,GAAG,EAAE,CAAA;IAChB,CAAC;IAGe,AAAN,KAAK,CAAC,6BAA6B,CAC3C,IAA+C,EAC9B,gBAAyB,EAAE;QAE5C,MAAM,EAAE,EAAE,EAAE,aAAa,EAAE,YAAY,GAAG,EAAE,EAAE,GAAG,IAAI,CAAA;QAErD,MAAM,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,EAAE,aAAa,CAAC,CAAA;QAC3D,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAC1D,EAAE,EAAE,EAAE,YAAY,EAAE,EACpB,EAAE,EACF,aAAa,CACd,CAAA;QAED,MAAM,IAAI,GAAG,IAAA,uBAAe,EAC1B,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EACnC,YAAY,CACb,CAAA;QAED,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpB,MAAM,IAAI,mBAAW,CACnB,mBAAW,CAAC,KAAK,CAAC,SAAS,EAC3B,wBAAwB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CACrD,CAAA;QACH,CAAC;QAED,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,CACjC,kBAAkB,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YACrC,EAAE,EAAE,SAAS,CAAC,EAAE;YAChB,WAAW,EAAE,IAAI;SAClB,CAAC,CAAC,EACH,aAAa,CACd,CAAA;QAED,OAAO,kBAAkB,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IACpD,CAAC;CACF;AA52DD,yCA42DC;AAjyDO;IADL,IAAA,qBAAa,GAAE;;;;kEAaf;AAGe;IADf,IAAA,qBAAa,GAAE;IAIb,WAAA,IAAA,qBAAa,GAAE,CAAA;;;;mEAiCjB;AAGe;IADf,IAAA,gCAAwB,GAAE;IAIxB,WAAA,IAAA,qBAAa,GAAE,CAAA;;;;qFA2CjB;AAGe;IADf,IAAA,gCAAwB,GAAE;IAIxB,WAAA,IAAA,qBAAa,GAAE,CAAA;;;;mFA8BjB;AAcK;IAZL,IAAA,gCAAwB,GAAE;IAC1B,IAAA,kBAAU,GAAE;IACb;;;;;;;;;OASG;;IAIA,WAAA,IAAA,qBAAa,GAAE,CAAA;;;;2DAqJjB;AAIK;IAFL,IAAA,gCAAwB,GAAE;IAC1B,IAAA,kBAAU,GAAE;IAIV,WAAA,IAAA,qBAAa,GAAE,CAAA;;;;yDAiIjB;AAGK;IADL,IAAA,qBAAa,GAAE;IAKb,WAAA,IAAA,qBAAa,GAAE,CAAA;;;;4DAqRjB;AAiBK;IAHL,IAAA,qBAAa,GAAE;IACf,IAAA,kBAAU,GAAE;IACb,mBAAmB;;IAKhB,WAAA,IAAA,qBAAa,GAAE,CAAA;;;;8DA0BjB;AAGe;IADf,IAAA,gCAAwB,GAAE;IAGxB,WAAA,IAAA,qBAAa,GAAE,CAAA;;;;+DA8OjB;AAiBK;IAHL,IAAA,qBAAa,GAAE;IACf,IAAA,kBAAU,GAAE;IACb,mBAAmB;;IAKhB,WAAA,IAAA,qBAAa,GAAE,CAAA;;;;8DAsBjB;AAGe;IADf,IAAA,gCAAwB,GAAE;IAGxB,WAAA,IAAA,qBAAa,GAAE,CAAA;;;;+DA8FjB;AAKK;IAHL,IAAA,qBAAa,GAAE;IACf,IAAA,kBAAU,GAAE;IACb,aAAa;;IAGV,WAAA,IAAA,qBAAa,GAAE,CAAA;;;;kEAYjB;AAGe;IADf,IAAA,gCAAwB,GAAE;IAGxB,WAAA,IAAA,qBAAa,GAAE,CAAA;;;;mEA+DjB;AAIK;IAFL,IAAA,qBAAa,GAAE;IACf,IAAA,kBAAU,GAAE;IAIV,WAAA,IAAA,qBAAa,GAAE,CAAA;;;;+DAgBjB;AAIK;IAFL,IAAA,qBAAa,GAAE;IACf,IAAA,kBAAU,GAAE;IAIV,WAAA,IAAA,qBAAa,GAAE,CAAA;;;;qEA2BjB;AAIK;IAFL,IAAA,qBAAa,GAAE;IACf,IAAA,kBAAU,GAAE;IAIV,WAAA,IAAA,qBAAa,GAAE,CAAA;;;;kEA6BjB;AAGe;IADf,IAAA,gCAAwB,GAAE;IAOxB,WAAA,IAAA,qBAAa,GAAE,CAAA;;;;4EAwDjB;AAIK;IAFL,IAAA,qBAAa,GAAE;IACf,IAAA,kBAAU,GAAE;IAIV,WAAA,IAAA,qBAAa,GAAE,CAAA;;;;kEAGjB;AAGe;IADf,IAAA,gCAAwB,GAAE;IAIxB,WAAA,IAAA,qBAAa,GAAE,CAAA;;;;mEAYjB;AAIK;IAFL,IAAA,qBAAa,GAAE;IACf,IAAA,kBAAU,GAAE;IAIV,WAAA,IAAA,qBAAa,GAAE,CAAA;;;;wEAQjB;AAGK;IADL,IAAA,qBAAa,GAAE;IAIb,WAAA,IAAA,qBAAa,GAAE,CAAA;;;;qEAQjB;AAGe;IADf,IAAA,gCAAwB,GAAE;IAOxB,WAAA,IAAA,qBAAa,GAAE,CAAA;;;;2EAyBjB;AAiBK;IAHL,IAAA,qBAAa,GAAE;IACf,IAAA,kBAAU,GAAE;IACb,mBAAmB;;IAGhB,WAAA,IAAA,qBAAa,GAAE,CAAA;;;;6DAcjB;AAGe;IADf,IAAA,gCAAwB,GAAE;IAGxB,WAAA,IAAA,qBAAa,GAAE,CAAA;;;;8DAoDjB;AAuCK;IAHL,IAAA,qBAAa,GAAE;IACf,IAAA,kBAAU,GAAE;IACb,mBAAmB;;IAGhB,WAAA,IAAA,qBAAa,GAAE,CAAA;;;;6DAcjB;AAGe;IADf,IAAA,gCAAwB,GAAE;IAGxB,WAAA,IAAA,qBAAa,GAAE,CAAA;;;;8DAoEjB;AAIK;IAFL,IAAA,qBAAa,GAAE;IACf,IAAA,kBAAU,GAAE;IAGV,WAAA,IAAA,qBAAa,GAAE,CAAA;;;;qEAKjB;AAOe;IADf,IAAA,gCAAwB,GAAE;IAGxB,WAAA,IAAA,qBAAa,GAAE,CAAA;;;;sEAgDjB;AAIK;IAFL,IAAA,qBAAa,GAAE;IACf,IAAA,kBAAU,GAAE;IAGV,WAAA,IAAA,qBAAa,GAAE,CAAA;;;;0EAKjB;AAGe;IADf,IAAA,gCAAwB,GAAE;IAGxB,WAAA,IAAA,qBAAa,GAAE,CAAA;;;;2EAgCjB"}
@@ -1 +1 @@
1
- {"root":["../src/index.ts","../src/joiner-config.ts","../src/migrations/Migration20240227120221.ts","../src/migrations/Migration20240617102917.ts","../src/migrations/Migration20240624153824.ts","../src/migrations/Migration20241211061114.ts","../src/migrations/Migration20250113094144.ts","../src/migrations/Migration20250120110700.ts","../src/migrations/Migration20250226130616.ts","../src/models/application-method.ts","../src/models/campaign-budget.ts","../src/models/campaign.ts","../src/models/index.ts","../src/models/promotion-rule-value.ts","../src/models/promotion-rule.ts","../src/models/promotion.ts","../src/schema/index.ts","../src/services/index.ts","../src/services/promotion-module.ts","../src/types/application-method.ts","../src/types/campaign-budget.ts","../src/types/campaign.ts","../src/types/index.ts","../src/types/promotion-rule-value.ts","../src/types/promotion-rule.ts","../src/types/promotion.ts","../src/utils/index.ts","../src/utils/compute-actions/buy-get.ts","../src/utils/compute-actions/index.ts","../src/utils/compute-actions/line-items.ts","../src/utils/compute-actions/shipping-methods.ts","../src/utils/compute-actions/usage.ts","../src/utils/validations/application-method.ts","../src/utils/validations/index.ts","../src/utils/validations/promotion-rule.ts"],"version":"5.6.2"}
1
+ {"root":["../src/index.ts","../src/joiner-config.ts","../src/migrations/Migration20240227120221.ts","../src/migrations/Migration20240617102917.ts","../src/migrations/Migration20240624153824.ts","../src/migrations/Migration20241211061114.ts","../src/migrations/Migration20250113094144.ts","../src/migrations/Migration20250120110700.ts","../src/migrations/Migration20250226130616.ts","../src/migrations/Migration20250508081510.ts","../src/migrations/Migration20250828075407.ts","../src/migrations/Migration20250909083125.ts","../src/migrations/Migration20250916120552.ts","../src/migrations/Migration20250917143818.ts","../src/migrations/Migration20250919122137.ts","../src/migrations/Migration20251006000000.ts","../src/models/application-method.ts","../src/models/campaign-budget-usage.ts","../src/models/campaign-budget.ts","../src/models/campaign.ts","../src/models/index.ts","../src/models/promotion-rule-value.ts","../src/models/promotion-rule.ts","../src/models/promotion.ts","../src/schema/index.ts","../src/services/index.ts","../src/services/promotion-module.ts","../src/types/application-method.ts","../src/types/campaign-budget.ts","../src/types/campaign.ts","../src/types/index.ts","../src/types/promotion-rule-value.ts","../src/types/promotion-rule.ts","../src/types/promotion.ts","../src/utils/index.ts","../src/utils/compute-actions/build-promotion-rule-query-filter-from-context.ts","../src/utils/compute-actions/buy-get.ts","../src/utils/compute-actions/index.ts","../src/utils/compute-actions/line-items.ts","../src/utils/compute-actions/shipping-methods.ts","../src/utils/compute-actions/sort-by-price.ts","../src/utils/compute-actions/usage.ts","../src/utils/validations/application-method.ts","../src/utils/validations/index.ts","../src/utils/validations/promotion-rule.ts"],"version":"5.9.3"}
@@ -13,5 +13,15 @@ export interface UpdateCampaignBudgetDTO {
13
13
  limit?: BigNumberInput | null;
14
14
  currency_code?: string | null;
15
15
  used?: BigNumberInput;
16
+ usages?: CreateCampaignBudgetUsageDTO[];
17
+ }
18
+ export interface CreateCampaignBudgetUsageDTO {
19
+ budget_id: string;
20
+ attribute_value: string;
21
+ used: BigNumberInput;
22
+ }
23
+ export interface UpdateCampaignBudgetUsageDTO {
24
+ id: string;
25
+ used: BigNumberInput;
16
26
  }
17
27
  //# sourceMappingURL=campaign-budget.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"campaign-budget.d.ts","sourceRoot":"","sources":["../../src/types/campaign-budget.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,wBAAwB,EACxB,eAAe,EAChB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAElC,MAAM,WAAW,uBAAuB;IACtC,IAAI,CAAC,EAAE,wBAAwB,CAAA;IAC/B,KAAK,CAAC,EAAE,cAAc,GAAG,IAAI,CAAA;IAC7B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,IAAI,CAAC,EAAE,cAAc,CAAA;IACrB,QAAQ,CAAC,EAAE,eAAe,CAAC,OAAO,QAAQ,CAAC,GAAG,MAAM,CAAA;CACrD;AAED,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,CAAC,EAAE,wBAAwB,CAAA;IAC/B,KAAK,CAAC,EAAE,cAAc,GAAG,IAAI,CAAA;IAC7B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,IAAI,CAAC,EAAE,cAAc,CAAA;CACtB"}
1
+ {"version":3,"file":"campaign-budget.d.ts","sourceRoot":"","sources":["../../src/types/campaign-budget.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,wBAAwB,EACxB,eAAe,EAChB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAElC,MAAM,WAAW,uBAAuB;IACtC,IAAI,CAAC,EAAE,wBAAwB,CAAA;IAC/B,KAAK,CAAC,EAAE,cAAc,GAAG,IAAI,CAAA;IAC7B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,IAAI,CAAC,EAAE,cAAc,CAAA;IACrB,QAAQ,CAAC,EAAE,eAAe,CAAC,OAAO,QAAQ,CAAC,GAAG,MAAM,CAAA;CACrD;AAED,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,CAAC,EAAE,wBAAwB,CAAA;IAC/B,KAAK,CAAC,EAAE,cAAc,GAAG,IAAI,CAAA;IAC7B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,IAAI,CAAC,EAAE,cAAc,CAAA;IACrB,MAAM,CAAC,EAAE,4BAA4B,EAAE,CAAA;CACxC;AAED,MAAM,WAAW,4BAA4B;IAC3C,SAAS,EAAE,MAAM,CAAA;IACjB,eAAe,EAAE,MAAM,CAAA;IACvB,IAAI,EAAE,cAAc,CAAA;CACrB;AAED,MAAM,WAAW,4BAA4B;IAC3C,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,cAAc,CAAA;CACrB"}
@@ -0,0 +1,12 @@
1
+ import { Context, DAL, PromotionTypes } from "@medusajs/framework/types";
2
+ /**
3
+ * Builds a query filter for promotion rules based on the context.
4
+ * This is used to prefilter promotions before computing actions.
5
+ * The idea is that we first retrieve from the database the promotions where all rules can be
6
+ * satisfied by the given context. We exclude promotions that have any rule that cannot be satisfied.
7
+ *
8
+ * @param context
9
+ * @returns
10
+ */
11
+ export declare function buildPromotionRuleQueryFilterFromContext(context: PromotionTypes.ComputeActionContext, sharedContext: Context): Promise<DAL.FilterQuery<any> | null>;
12
+ //# sourceMappingURL=build-promotion-rule-query-filter-from-context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-promotion-rule-query-filter-from-context.d.ts","sourceRoot":"","sources":["../../../src/utils/compute-actions/build-promotion-rule-query-filter-from-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,OAAO,EACP,GAAG,EACH,cAAc,EACf,MAAM,2BAA2B,CAAA;AAIlC;;;;;;;;GAQG;AACH,wBAAsB,wCAAwC,CAC5D,OAAO,EAAE,cAAc,CAAC,oBAAoB,EAC5C,aAAa,EAAE,OAAO,GACrB,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAqOtC"}
@@ -0,0 +1,188 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildPromotionRuleQueryFilterFromContext = buildPromotionRuleQueryFilterFromContext;
4
+ const utils_1 = require("@medusajs/framework/utils");
5
+ const postgresql_1 = require("@mikro-orm/postgresql");
6
+ /**
7
+ * Builds a query filter for promotion rules based on the context.
8
+ * This is used to prefilter promotions before computing actions.
9
+ * The idea is that we first retrieve from the database the promotions where all rules can be
10
+ * satisfied by the given context. We exclude promotions that have any rule that cannot be satisfied.
11
+ *
12
+ * @param context
13
+ * @returns
14
+ */
15
+ async function buildPromotionRuleQueryFilterFromContext(context, sharedContext) {
16
+ const { items = [], shipping_methods: shippingMethods = [], ...restContext } = context;
17
+ let flattenItemsPropsValuesArray = (0, utils_1.flattenObjectToKeyValuePairs)(items);
18
+ flattenItemsPropsValuesArray = Object.fromEntries(Object.entries(flattenItemsPropsValuesArray).map(([k, v]) => [
19
+ `items.${k}`,
20
+ v,
21
+ ]));
22
+ let flattenShippingMethodsPropsValuesArray = (0, utils_1.flattenObjectToKeyValuePairs)(shippingMethods);
23
+ flattenShippingMethodsPropsValuesArray = Object.fromEntries(Object.entries(flattenShippingMethodsPropsValuesArray).map(([k, v]) => [
24
+ `shipping_methods.${k}`,
25
+ v,
26
+ ]));
27
+ const flattenRestContextPropsValuesArray = (0, utils_1.flattenObjectToKeyValuePairs)(restContext);
28
+ const attributeValueMap = new Map();
29
+ [
30
+ flattenItemsPropsValuesArray,
31
+ flattenShippingMethodsPropsValuesArray,
32
+ flattenRestContextPropsValuesArray,
33
+ ].forEach((flattenedArray) => {
34
+ Object.entries(flattenedArray).forEach(([prop, value]) => {
35
+ if (!attributeValueMap.has(prop)) {
36
+ attributeValueMap.set(prop, new Set());
37
+ }
38
+ const values = Array.isArray(value) ? value : [value];
39
+ values.forEach((v) => attributeValueMap.get(prop).add(v));
40
+ });
41
+ });
42
+ const numberOfAttributes = attributeValueMap.size;
43
+ if (numberOfAttributes > 10) {
44
+ const manager = (sharedContext.transactionManager ??
45
+ sharedContext.manager);
46
+ const knex = manager.getKnex();
47
+ const { rows } = await knex.raw(`
48
+ SELECT DISTINCT attribute
49
+ FROM promotion_rule
50
+ WHERE deleted_at IS NULL
51
+ `);
52
+ const dbAvailableAttributes = new Set(rows.map(({ attribute }) => attribute));
53
+ // update the attribute in the map to remove the one that are not in the db
54
+ attributeValueMap.forEach((valueSet, attribute) => {
55
+ if (!dbAvailableAttributes.has(attribute)) {
56
+ attributeValueMap.delete(attribute);
57
+ }
58
+ });
59
+ }
60
+ const sqlConditions = [];
61
+ // For each attribute, check if the values don't satisfy the rules
62
+ attributeValueMap.forEach((valueSet, attribute) => {
63
+ const values = Array.from(valueSet);
64
+ const stringValues = values
65
+ .map((v) => `'${v.toString().replace(/'/g, "''")}'`)
66
+ .join(",");
67
+ const numericValues = values
68
+ .map((v) => {
69
+ const num = Number(v);
70
+ return !isNaN(num) ? num : null;
71
+ })
72
+ .filter((v) => v !== null);
73
+ const escapedAttribute = `'${attribute.replace(/'/g, "''")}'`;
74
+ // For 'in' and 'eq' operators - rule is unsatisfiable if NO rule values overlap with context
75
+ // This requires checking that ALL rule values for a given rule are not in context
76
+ if (stringValues.length) {
77
+ sqlConditions.push(`(pr.attribute = ${escapedAttribute} AND pr.operator IN ('in', 'eq') AND pr.id NOT IN (
78
+ SELECT DISTINCT prv_inner.promotion_rule_id
79
+ FROM promotion_rule_value prv_inner
80
+ WHERE prv_inner.value IN (${stringValues})
81
+ ))`);
82
+ }
83
+ if (numericValues.length) {
84
+ const minValue = Math.min(...numericValues);
85
+ const maxValue = Math.max(...numericValues);
86
+ // For gt - rule is unsatisfiable if rule_value >= context_max_value
87
+ sqlConditions.push(`(pr.attribute = ${escapedAttribute} AND pr.operator = 'gt' AND CAST(prv.value AS DECIMAL) >= ${maxValue})`);
88
+ // For gte - rule is unsatisfiable if rule_value > context_max_value
89
+ sqlConditions.push(`(pr.attribute = ${escapedAttribute} AND pr.operator = 'gte' AND prv.value NOT IN (${stringValues}) AND CAST(prv.value AS DECIMAL) > ${maxValue})`);
90
+ // For lt - rule is unsatisfiable if rule_value <= context_min_value
91
+ sqlConditions.push(`(pr.attribute = ${escapedAttribute} AND pr.operator = 'lt' AND CAST(prv.value AS DECIMAL) <= ${minValue})`);
92
+ // For lte - rule is unsatisfiable if rule_value < context_min_value
93
+ sqlConditions.push(`(pr.attribute = ${escapedAttribute} AND pr.operator = 'lte' AND prv.value NOT IN (${stringValues}) AND CAST(prv.value AS DECIMAL) < ${minValue})`);
94
+ }
95
+ });
96
+ // Handle the case where context has no attributes at all, it means
97
+ // that any promotion that have a rule cant be satisfied by the context
98
+ if (attributeValueMap.size === 0) {
99
+ // If context has no attributes, exclude all promotions that have any rules (promotion rules, target rules, or buy rules)
100
+ const noRulesSubquery = (alias) => `
101
+ ${alias}.id NOT IN (
102
+ SELECT DISTINCT ppr.promotion_id
103
+ FROM promotion_promotion_rule ppr
104
+ UNION
105
+ SELECT DISTINCT am.promotion_id
106
+ FROM promotion_application_method am
107
+ JOIN application_method_target_rules amtr ON am.id = amtr.application_method_id
108
+ UNION
109
+ SELECT DISTINCT am2.promotion_id
110
+ FROM promotion_application_method am2
111
+ JOIN application_method_buy_rules ambr ON am2.id = ambr.application_method_id
112
+ )
113
+ `.trim();
114
+ return {
115
+ [(0, postgresql_1.raw)((alias) => noRulesSubquery(alias))]: true,
116
+ };
117
+ }
118
+ const joinedConditions = sqlConditions.join(" OR ");
119
+ const queryEstimatedSize = joinedConditions.length;
120
+ const maxQuerySize = 2147483648 * 0.9;
121
+ if (queryEstimatedSize > maxQuerySize) {
122
+ // generated query could be too long
123
+ return null;
124
+ }
125
+ const attributeKeys = Array.from(attributeValueMap.keys())
126
+ .map((attr) => `'${attr.replace(/'/g, "''")}'`)
127
+ .join(",");
128
+ // Use anti-join approach for better performance than NOT IN
129
+ const antiJoinSubquery = (alias) => `
130
+ NOT EXISTS (
131
+ SELECT 1 FROM (
132
+ -- Promotions with rules for attributes not in context
133
+ SELECT ppr.promotion_id
134
+ FROM promotion_promotion_rule ppr
135
+ JOIN promotion_rule pr ON ppr.promotion_rule_id = pr.id
136
+ WHERE pr.attribute NOT IN (${attributeKeys})
137
+
138
+ UNION
139
+
140
+ SELECT am.promotion_id
141
+ FROM promotion_application_method am
142
+ JOIN application_method_target_rules amtr ON am.id = amtr.application_method_id
143
+ JOIN promotion_rule pr ON amtr.promotion_rule_id = pr.id
144
+ WHERE pr.attribute NOT IN (${attributeKeys})
145
+
146
+ UNION
147
+
148
+ SELECT am2.promotion_id
149
+ FROM promotion_application_method am2
150
+ JOIN application_method_buy_rules ambr ON am2.id = ambr.application_method_id
151
+ JOIN promotion_rule pr ON ambr.promotion_rule_id = pr.id
152
+ WHERE pr.attribute NOT IN (${attributeKeys})
153
+
154
+ UNION
155
+
156
+ -- Promotions with unsatisfiable rules for context attributes
157
+ SELECT ppr.promotion_id
158
+ FROM promotion_promotion_rule ppr
159
+ JOIN promotion_rule pr ON ppr.promotion_rule_id = pr.id
160
+ LEFT JOIN promotion_rule_value prv ON prv.promotion_rule_id = pr.id
161
+ WHERE pr.attribute IN (${attributeKeys}) AND (${joinedConditions})
162
+
163
+ UNION
164
+
165
+ SELECT am.promotion_id
166
+ FROM promotion_application_method am
167
+ JOIN application_method_target_rules amtr ON am.id = amtr.application_method_id
168
+ JOIN promotion_rule pr ON amtr.promotion_rule_id = pr.id
169
+ LEFT JOIN promotion_rule_value prv ON prv.promotion_rule_id = pr.id
170
+ WHERE pr.attribute IN (${attributeKeys}) AND (${joinedConditions})
171
+
172
+ UNION
173
+
174
+ SELECT am2.promotion_id
175
+ FROM promotion_application_method am2
176
+ JOIN application_method_buy_rules ambr ON am2.id = ambr.application_method_id
177
+ JOIN promotion_rule pr ON ambr.promotion_rule_id = pr.id
178
+ LEFT JOIN promotion_rule_value prv ON prv.promotion_rule_id = pr.id
179
+ WHERE pr.attribute IN (${attributeKeys}) AND (${joinedConditions})
180
+ ) excluded_promotions
181
+ WHERE excluded_promotions.promotion_id = ${alias}.id
182
+ )
183
+ `.trim();
184
+ return {
185
+ [(0, postgresql_1.raw)((alias) => antiJoinSubquery(alias))]: true,
186
+ };
187
+ }
188
+ //# sourceMappingURL=build-promotion-rule-query-filter-from-context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-promotion-rule-query-filter-from-context.js","sourceRoot":"","sources":["../../../src/utils/compute-actions/build-promotion-rule-query-filter-from-context.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,9 @@
1
- import { BigNumberInput, ComputeActionItemLine, PromotionTypes } from "@medusajs/framework/types";
1
+ import { BigNumberInput, ComputeActionItemLine, InferEntityType, PromotionTypes } from "@medusajs/framework/types";
2
+ import { Promotion } from "../../models";
2
3
  export type EligibleItem = {
3
4
  item_id: string;
4
5
  quantity: BigNumberInput;
5
6
  };
6
- export declare function getComputedActionsForBuyGet(promotion: PromotionTypes.PromotionDTO, itemsContext: ComputeActionItemLine[], methodIdPromoValueMap: Map<string, BigNumberInput>, eligibleBuyItemMap: Map<string, EligibleItem[]>, eligibleTargetItemMap: Map<string, EligibleItem[]>): PromotionTypes.ComputeActions[];
7
+ export declare function getComputedActionsForBuyGet(promotion: PromotionTypes.PromotionDTO | InferEntityType<typeof Promotion>, itemsContext: ComputeActionItemLine[], methodIdPromoValueMap: Map<string, BigNumberInput>, eligibleBuyItemMap: Map<string, EligibleItem[]>, eligibleTargetItemMap: Map<string, EligibleItem[]>): PromotionTypes.ComputeActions[];
7
8
  export declare function sortByBuyGetType(a: any, b: any): 0 | 1 | -1;
8
9
  //# sourceMappingURL=buy-get.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"buy-get.d.ts","sourceRoot":"","sources":["../../../src/utils/compute-actions/buy-get.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,cAAc,EACf,MAAM,2BAA2B,CAAA;AAWlC,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,cAAc,CAAA;CACzB,CAAA;AAyBD,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,cAAc,CAAC,YAAY,EACtC,YAAY,EAAE,qBAAqB,EAAE,EACrC,qBAAqB,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,EAClD,kBAAkB,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,EAAE,CAAC,EAC/C,qBAAqB,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,EAAE,CAAC,GACjD,cAAc,CAAC,cAAc,EAAE,CAiMjC;AAED,wBAAgB,gBAAgB,CAAC,CAAC,KAAA,EAAE,CAAC,KAAA,cAmDpC"}
1
+ {"version":3,"file":"buy-get.d.ts","sourceRoot":"","sources":["../../../src/utils/compute-actions/buy-get.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,eAAe,EACf,cAAc,EACf,MAAM,2BAA2B,CAAA;AAUlC,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAEnC,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,cAAc,CAAA;CACzB,CAAA;AAubD,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,cAAc,CAAC,YAAY,GAAG,eAAe,CAAC,OAAO,SAAS,CAAC,EAC1E,YAAY,EAAE,qBAAqB,EAAE,EACrC,qBAAqB,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,EAClD,kBAAkB,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,EAAE,CAAC,EAC/C,qBAAqB,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,EAAE,CAAC,GACjD,cAAc,CAAC,cAAc,EAAE,CAuIjC;AAED,wBAAgB,gBAAgB,CAAC,CAAC,KAAA,EAAE,CAAC,KAAA,cAmDpC"}