@lcap/nasl 3.5.0-beta.4 → 3.6.0-alpha.1

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 (238) hide show
  1. package/out/bak/translator.js +39 -119
  2. package/out/bak/translator.js.map +1 -1
  3. package/out/breakpoint/generator/BreakpointNode.d.ts +0 -3
  4. package/out/breakpoint/generator/BreakpointNode.js +0 -9
  5. package/out/breakpoint/generator/BreakpointNode.js.map +1 -1
  6. package/out/breakpoint/shared/constants.js +0 -1
  7. package/out/breakpoint/shared/constants.js.map +1 -1
  8. package/out/breakpoint/shared/utils.js +7 -31
  9. package/out/breakpoint/shared/utils.js.map +1 -1
  10. package/out/common/BaseNode.d.ts +13 -1
  11. package/out/common/BaseNode.js +52 -23
  12. package/out/common/BaseNode.js.map +1 -1
  13. package/out/common/Command.js +1 -0
  14. package/out/common/Command.js.map +1 -1
  15. package/out/common/EventEmitter.d.ts +1 -1
  16. package/out/common/EventEmitter.js +0 -4
  17. package/out/common/EventEmitter.js.map +1 -1
  18. package/out/concepts/App__.d.ts +76 -51
  19. package/out/concepts/App__.js +190 -87
  20. package/out/concepts/App__.js.map +1 -1
  21. package/out/concepts/BackendVariable__.js +2 -10
  22. package/out/concepts/BackendVariable__.js.map +1 -1
  23. package/out/concepts/BindAttribute__.js +6 -16
  24. package/out/concepts/BindAttribute__.js.map +1 -1
  25. package/out/concepts/BindDirective__.d.ts +0 -1
  26. package/out/concepts/BindDirective__.js +4 -19
  27. package/out/concepts/BindDirective__.js.map +1 -1
  28. package/out/concepts/BindEvent__.d.ts +1 -3
  29. package/out/concepts/BindEvent__.js +13 -38
  30. package/out/concepts/BindEvent__.js.map +1 -1
  31. package/out/concepts/CallFunction__.js +2 -10
  32. package/out/concepts/CallFunction__.js.map +1 -1
  33. package/out/concepts/CallLogic__.d.ts +0 -2
  34. package/out/concepts/CallLogic__.js +27 -38
  35. package/out/concepts/CallLogic__.js.map +1 -1
  36. package/out/concepts/Constant__.js +6 -7
  37. package/out/concepts/Constant__.js.map +1 -1
  38. package/out/concepts/Destination__.d.ts +1 -1
  39. package/out/concepts/Destination__.js +4 -6
  40. package/out/concepts/Destination__.js.map +1 -1
  41. package/out/concepts/End__.js +1 -2
  42. package/out/concepts/End__.js.map +1 -1
  43. package/out/concepts/Entity__.d.ts +1 -1
  44. package/out/concepts/Entity__.js +2 -0
  45. package/out/concepts/Entity__.js.map +1 -1
  46. package/out/concepts/Event__.d.ts +0 -14
  47. package/out/concepts/Event__.js +0 -61
  48. package/out/concepts/Event__.js.map +1 -1
  49. package/out/concepts/Frontend__.d.ts +88 -0
  50. package/out/concepts/Frontend__.js +143 -1
  51. package/out/concepts/Frontend__.js.map +1 -1
  52. package/out/concepts/Identifier__.d.ts +0 -5
  53. package/out/concepts/Identifier__.js +9 -19
  54. package/out/concepts/Identifier__.js.map +1 -1
  55. package/out/concepts/LogicItem__.d.ts +1 -1
  56. package/out/concepts/LogicItem__.js.map +1 -1
  57. package/out/concepts/Logic__.d.ts +1 -3
  58. package/out/concepts/Logic__.js +13 -16
  59. package/out/concepts/Logic__.js.map +1 -1
  60. package/out/concepts/MemberExpression__.d.ts +1 -1
  61. package/out/concepts/MemberExpression__.js +3 -3
  62. package/out/concepts/MemberExpression__.js.map +1 -1
  63. package/out/concepts/NewComposite__.js.map +1 -1
  64. package/out/concepts/Param__.js +3 -11
  65. package/out/concepts/Param__.js.map +1 -1
  66. package/out/concepts/ProcessElement__.js +1 -9
  67. package/out/concepts/ProcessElement__.js.map +1 -1
  68. package/out/concepts/Return__.js +9 -17
  69. package/out/concepts/Return__.js.map +1 -1
  70. package/out/concepts/Variable__.js +8 -17
  71. package/out/concepts/Variable__.js.map +1 -1
  72. package/out/concepts/ViewElement__.d.ts +2 -17
  73. package/out/concepts/ViewElement__.js +31 -143
  74. package/out/concepts/ViewElement__.js.map +1 -1
  75. package/out/concepts/View__.js +6 -6
  76. package/out/concepts/View__.js.map +1 -1
  77. package/out/concepts/index__.d.ts +0 -5
  78. package/out/concepts/index__.js +0 -5
  79. package/out/concepts/index__.js.map +1 -1
  80. package/out/concepts/utils/asserts.d.ts +3 -258
  81. package/out/concepts/utils/asserts.js +13 -351
  82. package/out/concepts/utils/asserts.js.map +1 -1
  83. package/out/concepts/utils/types.d.ts +3 -20
  84. package/out/generator/genBundleFiles.js +11 -25
  85. package/out/generator/genBundleFiles.js.map +1 -1
  86. package/out/generator/genReleaseBody.js +3 -12
  87. package/out/generator/genReleaseBody.js.map +1 -1
  88. package/out/generator/permission.js +3 -3
  89. package/out/generator/permission.js.map +1 -1
  90. package/out/natural/transformTSCode.js +1 -1
  91. package/out/natural/transformTSCode.js.map +1 -1
  92. package/out/server/extendBaseNode.js +22 -6
  93. package/out/server/extendBaseNode.js.map +1 -1
  94. package/out/server/getLogics.js +27 -62
  95. package/out/server/getLogics.js.map +1 -1
  96. package/out/server/getMemberIdentifier.js +1 -6
  97. package/out/server/getMemberIdentifier.js.map +1 -1
  98. package/out/server/naslServer.js +11 -28
  99. package/out/server/naslServer.js.map +1 -1
  100. package/out/server/translator.js +1 -6
  101. package/out/server/translator.js.map +1 -1
  102. package/out/service/storage/init.js +26 -2
  103. package/out/service/storage/init.js.map +1 -1
  104. package/out/templator/genCreateBlock.js +6 -6
  105. package/out/templator/genCreateBlock.js.map +1 -1
  106. package/out/templator/genCurdEditMultipleKeyBlock.js +16 -16
  107. package/out/templator/genCurdEditMultipleKeyBlock.js.map +1 -1
  108. package/out/templator/genCurdMultipleKeyBlock.d.ts +27 -0
  109. package/out/templator/genCurdMultipleKeyBlock.js +709 -37
  110. package/out/templator/genCurdMultipleKeyBlock.js.map +1 -1
  111. package/out/templator/genGetBlock.js +4 -4
  112. package/out/templator/genGetBlock.js.map +1 -1
  113. package/out/templator/genGridViewBlock.js +12 -12
  114. package/out/templator/genGridViewBlock.js.map +1 -1
  115. package/out/templator/genListViewBlock.js +4 -4
  116. package/out/templator/genListViewBlock.js.map +1 -1
  117. package/out/templator/genSelectBlock.js +3 -3
  118. package/out/templator/genSelectBlock.js.map +1 -1
  119. package/out/templator/genTableBlock.d.ts +2 -0
  120. package/out/templator/genTableBlock.js +124 -11
  121. package/out/templator/genTableBlock.js.map +1 -1
  122. package/out/templator/genUpdateBlock.js +8 -8
  123. package/out/templator/genUpdateBlock.js.map +1 -1
  124. package/out/templator/utils.d.ts +2 -2
  125. package/out/templator/utils.js.map +1 -1
  126. package/out/translator/utils.js +18 -0
  127. package/out/translator/utils.js.map +1 -1
  128. package/out/utils/i18nInfo.js +2 -7
  129. package/out/utils/i18nInfo.js.map +1 -1
  130. package/package.json +2 -2
  131. package/src/bak/translator.js +43 -121
  132. package/src/breakpoint/generator/BreakpointNode.ts +0 -12
  133. package/src/breakpoint/shared/constants.ts +0 -1
  134. package/src/breakpoint/shared/utils.ts +10 -37
  135. package/src/common/BaseNode.ts +60 -22
  136. package/src/common/Command.ts +1 -0
  137. package/src/common/EventEmitter.ts +1 -6
  138. package/src/concepts/App__.ts +251 -139
  139. package/src/concepts/BackendVariable__.ts +2 -10
  140. package/src/concepts/BindAttribute__.ts +6 -15
  141. package/src/concepts/BindDirective__.ts +4 -19
  142. package/src/concepts/BindEvent__.ts +12 -40
  143. package/src/concepts/CallFunction__.ts +2 -10
  144. package/src/concepts/CallLogic__.ts +32 -45
  145. package/src/concepts/Constant__.ts +7 -5
  146. package/src/concepts/Destination__.ts +4 -6
  147. package/src/concepts/End__.ts +0 -1
  148. package/src/concepts/Entity__.ts +3 -1
  149. package/src/concepts/Event__.ts +0 -70
  150. package/src/concepts/Frontend__.ts +251 -3
  151. package/src/concepts/Identifier__.ts +13 -29
  152. package/src/concepts/LogicItem__.ts +0 -1
  153. package/src/concepts/Logic__.ts +14 -21
  154. package/src/concepts/MemberExpression__.ts +3 -3
  155. package/src/concepts/NewComposite__.ts +6 -4
  156. package/src/concepts/Param__.ts +3 -11
  157. package/src/concepts/ProcessElement__.ts +1 -8
  158. package/src/concepts/Return__.ts +12 -15
  159. package/src/concepts/Variable__.ts +9 -17
  160. package/src/concepts/ViewElement__.ts +54 -166
  161. package/src/concepts/View__.ts +6 -8
  162. package/src/concepts/index__.ts +0 -5
  163. package/src/concepts/utils/asserts.ts +4 -367
  164. package/src/concepts/utils/types.ts +0 -28
  165. package/src/generator/genBundleFiles.ts +15 -33
  166. package/src/generator/genReleaseBody.ts +3 -14
  167. package/src/generator/permission.ts +6 -8
  168. package/src/natural/transformTSCode.ts +1 -1
  169. package/src/server/extendBaseNode.ts +41 -22
  170. package/src/server/getLogics.ts +41 -79
  171. package/src/server/getMemberIdentifier.ts +1 -7
  172. package/src/server/naslServer.ts +12 -30
  173. package/src/server/translator.ts +1 -7
  174. package/src/service/storage/init.ts +33 -2
  175. package/src/templator/genCreateBlock.ts +6 -6
  176. package/src/templator/genCurdEditMultipleKeyBlock.ts +16 -16
  177. package/src/templator/genCurdMultipleKeyBlock.ts +817 -93
  178. package/src/templator/genGetBlock.ts +4 -4
  179. package/src/templator/genGridViewBlock.ts +12 -12
  180. package/src/templator/genListViewBlock.ts +4 -4
  181. package/src/templator/genSelectBlock.ts +3 -3
  182. package/src/templator/genTableBlock.ts +137 -12
  183. package/src/templator/genUpdateBlock.ts +8 -8
  184. package/src/templator/utils.ts +2 -2
  185. package/src/translator/utils.ts +20 -0
  186. package/src/utils/i18nInfo.ts +2 -7
  187. package/test/concepts/call-function/fixtures/from-string.json +59 -68
  188. package/test/concepts/call-function/fixtures/to-string-global-tz.json +58 -67
  189. package/test/concepts/call-function/fixtures/to-string-no-tz.json +48 -57
  190. package/test/concepts/call-function/fixtures/to-string-user-tz.json +60 -69
  191. package/test/concepts/call-function/fixtures/to-string-utc-tz.json +60 -69
  192. package/test/concepts/call-interface/fixtures/only-interface.json +72 -81
  193. package/test/concepts/call-interface/fixtures/with-body-complex-argument.json +214 -223
  194. package/test/concepts/call-interface/fixtures/with-body-no-argument.json +76 -85
  195. package/test/concepts/call-interface/fixtures/with-body-simple-argument.json +91 -100
  196. package/test/concepts/call-interface/fixtures/with-headers-no-argument.json +79 -88
  197. package/test/concepts/call-interface/fixtures/with-headers.json +81 -90
  198. package/test/concepts/call-interface/fixtures/with-query-no-argument.json +79 -88
  199. package/test/concepts/call-interface/fixtures/with-query.json +81 -90
  200. package/test/concepts/call-logic/__snapshots__/getQuickInfoOffset.spec.ts.snap +2 -4
  201. package/test/concepts/call-logic/fixtures/entries-get-with-arguments.json +95 -104
  202. package/test/concepts/call-logic/fixtures/entries-update-with-arguments.json +200 -209
  203. package/test/concepts/call-logic/fixtures/global-logic-argument-no-expression.json +88 -97
  204. package/test/concepts/call-logic/fixtures/global-logic-argument-some-expression.json +115 -124
  205. package/test/concepts/call-logic/fixtures/json-deserialize.json +111 -120
  206. package/test/concepts/call-logic/fixtures/json-serialize-with-string.json +115 -124
  207. package/test/concepts/call-logic/fixtures/json-serialize.json +115 -124
  208. package/test/concepts/call-logic/fixtures/view-buildin-logic-with-argument.json +82 -91
  209. package/test/concepts/call-logic/fixtures/view-component-logic-no-argument.json +79 -88
  210. package/test/concepts/call-logic/fixtures/view-component-with-validation.json +135 -144
  211. package/test/concepts/identifier/fixtures/view-variable.json +136 -145
  212. package/test/concepts/view-element/__snapshots__/toVue.spec.ts.snap +1 -1
  213. package/test/concepts/view-element/fixtures/default-login.json +212 -221
  214. package/test/concepts/view-element/fixtures/default-not-found.json +174 -183
  215. package/test/concepts/view-element/fixtures/with-role-auth.json +82 -91
  216. package/test/concepts/view-element/fixtures/with-table.json +1834 -1843
  217. package/test/concepts/view-element/toVue.spec.ts +0 -1
  218. package/ts-worker/package.json +1 -1
  219. package/out/concepts/BusinessComponent__.d.ts +0 -641
  220. package/out/concepts/BusinessComponent__.js +0 -1901
  221. package/out/concepts/BusinessComponent__.js.map +0 -1
  222. package/out/concepts/BusinessLogic__.d.ts +0 -38
  223. package/out/concepts/BusinessLogic__.js +0 -358
  224. package/out/concepts/BusinessLogic__.js.map +0 -1
  225. package/out/concepts/CallEvent__.d.ts +0 -97
  226. package/out/concepts/CallEvent__.js +0 -263
  227. package/out/concepts/CallEvent__.js.map +0 -1
  228. package/out/concepts/FrontendType__.d.ts +0 -308
  229. package/out/concepts/FrontendType__.js +0 -605
  230. package/out/concepts/FrontendType__.js.map +0 -1
  231. package/out/concepts/ParamWithGroup__.d.ts +0 -39
  232. package/out/concepts/ParamWithGroup__.js +0 -85
  233. package/out/concepts/ParamWithGroup__.js.map +0 -1
  234. package/src/concepts/BusinessComponent__.ts +0 -2669
  235. package/src/concepts/BusinessLogic__.ts +0 -376
  236. package/src/concepts/CallEvent__.ts +0 -334
  237. package/src/concepts/FrontendType__.ts +0 -919
  238. package/src/concepts/ParamWithGroup__.ts +0 -101
@@ -1 +0,0 @@
1
- {"version":3,"file":"BusinessComponent__.js","sourceRoot":"","sources":["../../src/concepts/BusinessComponent__.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wDAI+B;AAE/B,8CAAqH;AAQrH,mEAA2C;AAO3C,MAAM,8BAA8B,GAA+C;IACjF,aAAa,EAAE;QACb,WAAW,EAAE;YACX,KAAK,EAAE,MAAM;YACb,KAAK,EAAE,MAAM;SACd;QACD,aAAa,EAAE;YACb,KAAK,EAAE,MAAM;YACb,KAAK,EAAE,MAAM;SACd;QACD,aAAa,EAAE;YACb,KAAK,EAAE,MAAM;YACb,KAAK,EAAE,IAAI;SACZ;KACF;IACD,aAAa,EAAE;QACb,WAAW,EAAE;YACX,KAAK,EAAE,MAAM;YACb,KAAK,EAAE,MAAM;SACd;QACD,aAAa,EAAE;YACb,KAAK,EAAE,MAAM;YACb,KAAK,EAAE,MAAM;SACd;QACD,aAAa,EAAE;YACb,KAAK,EAAE,MAAM;YACb,KAAK,EAAE,IAAI;SACZ;KACF;IACD,mBAAmB,EAAE;QACnB,aAAa,EAAE;YACb,KAAK,EAAE,MAAM;YACb,KAAK,EAAE,IAAI;SACZ;KACF;IACD,cAAc,EAAE;QACd,WAAW,EAAE;YACX,KAAK,EAAE,MAAM;YACb,KAAK,EAAE,MAAM;SACd;QACD,aAAa,EAAE;YACb,KAAK,EAAE,MAAM;YACb,KAAK,EAAE,MAAM;SACd;QACD,OAAO,EAAE;YACP,KAAK,EAAE,MAAM;YACb,KAAK,EAAE,MAAM;SACd;QACD,KAAK,EAAE;YACL,KAAK,EAAE,OAAO;YACd,KAAK,EAAE,OAAO;SACf;QACD,MAAM,EAAE;YACN,KAAK,EAAE,QAAQ;YACf,KAAK,EAAE,OAAO;SACf;QACD,aAAa,EAAE;YACb,KAAK,EAAE,MAAM;YACb,KAAK,EAAE,IAAI;SACZ;KACF;IACD,UAAU,EAAE;QACV,KAAK,EAAE;YACL,KAAK,EAAE,OAAO;YACd,KAAK,EAAE,KAAK;SACb;QACD,aAAa,EAAE;YACb,KAAK,EAAE,MAAM;YACb,KAAK,EAAE,IAAI;SACZ;KACF;IACD,cAAc,EAAE;QACd,KAAK,EAAE;YACL,KAAK,EAAE,OAAO;YACd,KAAK,EAAE,KAAK;SACb;QACD,aAAa,EAAE;YACb,KAAK,EAAE,MAAM;YACb,KAAK,EAAE,IAAI;SACZ;KACF;IACD,UAAU,EAAE;QACV,KAAK,EAAE;YACL,KAAK,EAAE,OAAO;YACd,KAAK,EAAE,KAAK;SACb;QACD,aAAa,EAAE;YACb,KAAK,EAAE,MAAM;YACb,KAAK,EAAE,IAAI;SACZ;QACD,MAAM,EAAE;YACN,KAAK,EAAE,QAAQ;YACf,KAAK,EAAE,MAAM;SACd;QACD,WAAW,EAAE;YACX,KAAK,EAAE,MAAM;YACb,KAAK,EAAE,MAAM;SACd;QACD,aAAa,EAAE;YACb,KAAK,EAAE,MAAM;YACb,KAAK,EAAE,MAAM;SACd;KACF;IACD,YAAY,EAAE;QACZ,KAAK,EAAE;YACL,KAAK,EAAE,OAAO;YACd,KAAK,EAAE,KAAK;SACb;QACD,aAAa,EAAE;YACb,KAAK,EAAE,MAAM;YACb,KAAK,EAAE,IAAI;SACZ;KACF;IACD,mBAAmB,EAAE;QACnB,KAAK,EAAE;YACL,KAAK,EAAE,OAAO;YACd,KAAK,EAAE,KAAK;SACb;QACD,aAAa,EAAE;YACb,KAAK,EAAE,MAAM;YACb,KAAK,EAAE,IAAI;SACZ;KACF;IACD,iBAAiB,EAAE;QACjB,KAAK,EAAE;YACL,KAAK,EAAE,OAAO;YACd,KAAK,EAAE,KAAK;SACb;QACD,aAAa,EAAE;YACb,KAAK,EAAE,MAAM;YACb,KAAK,EAAE,IAAI;SACZ;KACF;IACD,oBAAoB,EAAE;QACpB,KAAK,EAAE;YACL,KAAK,EAAE,OAAO;YACd,KAAK,EAAE,KAAK;SACb;QACD,aAAa,EAAE;YACb,KAAK,EAAE,MAAM;YACb,KAAK,EAAE,IAAI;SACZ;KACF;IACD,eAAe,EAAE;QACf,MAAM,EAAE;YACN,KAAK,EAAE,OAAO;YACd,KAAK,EAAE,KAAK;SACb;QACD,aAAa,EAAE;YACb,KAAK,EAAE,MAAM;YACb,KAAK,EAAE,IAAI;SACZ;QACD,WAAW,EAAE;YACX,KAAK,EAAE,MAAM;YACb,KAAK,EAAE,MAAM;SACd;QACD,aAAa,EAAE;YACb,KAAK,EAAE,MAAM;YACb,KAAK,EAAE,MAAM;SACd;KACF;IACD,cAAc,EAAE;QACd,KAAK,EAAE;YACL,KAAK,EAAE,OAAO;YACd,KAAK,EAAE,KAAK;SACb;QACD,aAAa,EAAE;YACb,KAAK,EAAE,MAAM;YACb,KAAK,EAAE,IAAI;SACZ;KACF;IACD,eAAe,EAAE;QACf,WAAW,EAAE;YACX,KAAK,EAAE,MAAM;YACb,KAAK,EAAE,MAAM;SACd;QACD,aAAa,EAAE;YACb,KAAK,EAAE,MAAM;YACb,KAAK,EAAE,MAAM;SACd;QACD,aAAa,EAAE;YACb,KAAK,EAAE,MAAM;YACb,KAAK,EAAE,IAAI;SACZ;KACF;IACD,eAAe,EAAE;QACf,WAAW,EAAE;YACX,KAAK,EAAE,MAAM;YACb,KAAK,EAAE,MAAM;SACd;QACD,aAAa,EAAE;YACb,KAAK,EAAE,MAAM;YACb,KAAK,EAAE,MAAM;SACd;QACD,aAAa,EAAE;YACb,KAAK,EAAE,MAAM;YACb,KAAK,EAAE,IAAI;SACZ;KACF;IACD,oBAAoB,EAAE;QACpB,aAAa,EAAE;YACb,KAAK,EAAE,MAAM;YACb,KAAK,EAAE,IAAI;SACZ;KACF;CACF,CAAC;AAEF,MAAM,oBAAoB,GAAG,GAAG,EAAE,CAAE,MAAc,EAAE,iBAAiB,CAAC;AACtE,MAAM,uBAAuB,GAEzB,EAAE,CAAC,CAAC,oBAAoB;AAO5B,8CAAsG;AAEtG,gDAAkC;AAElC,yDAA2C;AAE3C,kEAA0C;AAU1C;;GAEG;AAEH,IAAa,iBAAiB,yBAA9B,MAAa,iBAAkB,SAAQ,kBAAQ;IAkG7C;;OAEG;IACH,YAAY,MAAmC;QAC7C,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,mBAAiB,CAAC,iBAAiB,EAAE,EAAE,MAAM,CAAC,CAAC;QAC1E,KAAK,CAAC,MAAM,CAAC,CAAC;QAvEhB;;WAEG;QAMH,WAAM,GAAiB,EAAE,CAAC;QAE1B;;WAEG;QAMH,WAAM,GAA0B,EAAE,CAAC;QAEnC;;WAEG;QAMH,cAAS,GAAoB,EAAE,CAAC;QAEhC;;WAEG;QAMH,eAAU,GAAqB,EAAE,CAAC;QAElC;;WAEG;QAMH,WAAM,GAAyB,EAAE,CAAC;QAElC;;WAEG;QAMH,aAAQ,GAAuB,EAAE,CAAC;QA20ClC;;WAEG;QACH,qBAAgB,GAAU,EAAE,CAAC;QA0F7B,wBAAmB,GAAgB,IAAI,GAAG,EAAU,CAAC;QA15CnD,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IAC/B,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,MAAW,EAAE,UAAgB,EAAE,SAAkB;QAC3D,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,SAAS,CAAsB,CAAC;IACxE,CAAC;IAED;;;OAGG;IACH,OAAO;QACL,IAAI,MAAM,GAAW,IAAI,CAAC;QAC1B,IAAI,IAAI,CAAC,UAAU,EAAE;YACnB,MAAM,GAAI,IAAI,CAAC,UAAkB,EAAE,yBAAyB,EAAE,CAAC,IAAI,CAAC,CAAC;SACtE;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IACD;;OAEG;IACH,OAAO,CAAC,IAAY;QAClB,MAAM,MAAM,GAAG;YACb,IAAI;SACL,CAAC;QACF,IAAI,CAAC,MAAM,CAAC;YACV,GAAG,MAAM;YACT,KAAK,EAAE,MAAM;SACd,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,KAAa;QACpB,MAAM,MAAM,GAAG;YACb,KAAK;SACN,CAAC;QACF,IAAI,CAAC,MAAM,CAAC;YACV,GAAG,MAAM;SACV,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,cAAc,CAAC,WAAmB;QAChC,MAAM,MAAM,GAAG;YACb,WAAW;SACZ,CAAC;QACF,IAAI,CAAC,MAAM,CAAC;YACV,GAAG,MAAM;SACV,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,OAAO,CAAC,IAAY;QAClB,MAAM,MAAM,GAAG;YACb,IAAI;SACL,CAAC;QACF,IAAI,CAAC,MAAM,CAAC;YACV,GAAG,MAAM;SACV,CAAC,CAAC;IACL,CAAC;IAED,qBAAqB,CAAC,eAA6B,EAAE;QACnD,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;QAC1C,OAAO,CAAE,IAAI,CAAC,MAAkB,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC7G,CAAC;IACD,kBAAkB,CAAC,IAAI,GAAG,QAAQ;QAChC,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,qBAAqB,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IAC5E,CAAC;IAuBD,cAAc,CAAC,OAAwC,EAAE,KAAa;QACpE,MAAM,YAAY,GAAQ,EAAE,CAAC;QAC7B,MAAM,eAAe,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;QAClE,MAAM,KAAK,GAAG,IAAA,kCAAqB,EAAC,OAAO,CAAC,CAAC;QAC7C,IAAI,KAAY,CAAC;QACjB,IAAI,CAAC,OAAO,EAAE;YACZ,KAAK,GAAG,KAAK,CAAC,IAAI,CAChB;gBACE,GAAG,YAAY;gBACf,IAAI,EAAE,IAAI,CAAC,kBAAkB,EAAE;aAChC,EACD,IAAI,EACJ,QAAQ,CACT,CAAC;SACH;aAAM,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YACtC,KAAK,GAAG,KAAK,CAAC,IAAI,CAChB;gBACE,GAAG,YAAY;gBACf,IAAI,EAAE,OAAO;aACd,EACD,IAAI,EACJ,QAAQ,CACT,CAAC;SACH;aAAM,IAAI,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;YACnC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,cAAc;YACtC,KAAK,GAAG,OAAO,CAAC;YAChB,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;SACvC;aAAM;YACL,KAAK,GAAG,KAAK,CAAC,IAAI,CAChB;gBACE,GAAG,YAAY;gBACf,GAAG,OAAO;aACX,EACD,IAAI,EACJ,QAAQ,CACT,CAAC;SACH;QACD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;QACpC,OAAO,KAAK,CAAC;IACf,CAAC;IAoBD,aAAa,CAAC,OAAwC,EAAE,KAAa;QACnE,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;QACxD,IAAI,CAAC,MAAM,CAAC;YACV,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,QAAQ;SACpB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAuBD,SAAS,CAAC,OAAyC;QACjD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;QACjC,OAAO,IAAI,CAAC,cAAc,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;IACpD,CAAC;IAqBD,QAAQ,CAAC,OAAyC;QAChD,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,OAAc,CAAC,CAAC;QAC5C,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,CAAC,MAAM,CAAC;YACV,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,QAAQ;SACpB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,kBAAkB,CAAC,IAAI,GAAG,QAAQ;QAChC,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,mBAAmB,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IAC1E,CAAC;IAuBD,cAAc,CAAC,OAA0D,EAAE,KAAa;QACtF,MAAM,YAAY,GAAQ,EAAE,CAAC;QAC7B,MAAM,eAAe,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;QAClE,MAAM,cAAc,GAAG,IAAA,kCAAqB,EAAC,gBAAgB,CAAC,CAAC;QAC/D,IAAI,KAAqB,CAAC;QAC1B,IAAI,CAAC,OAAO,EAAE;YACZ,KAAK,GAAG,cAAc,CAAC,IAAI,CACzB;gBACE,GAAG,YAAY;gBACf,IAAI,EAAE,IAAI,CAAC,kBAAkB,EAAE;aAChC,EACD,IAAI,EACJ,QAAQ,CACT,CAAC;SACH;aAAM,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YACtC,KAAK,GAAG,cAAc,CAAC,IAAI,CACzB;gBACE,GAAG,YAAY;gBACf,IAAI,EAAE,OAAO;aACd,EACD,IAAI,EACJ,QAAQ,CACT,CAAC;SACH;aAAM,IAAI,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAAE;YAC5C,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,cAAc;YACtC,KAAK,GAAG,OAAO,CAAC;YAChB,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;SACvC;aAAM;YACL,KAAK,GAAG,cAAc,CAAC,IAAI,CACzB;gBACE,GAAG,YAAY;gBACf,GAAG,OAAO;aACX,EACD,IAAI,EACJ,QAAQ,CACT,CAAC;SACH;QACD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;QACpC,OAAO,KAAK,CAAC;IACf,CAAC;IAoBD,aAAa,CAAC,OAA0D,EAAE,KAAa;QACrF,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;QACxD,IAAI,CAAC,MAAM,CAAC;YACV,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,QAAQ;SACpB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAuBD,SAAS,CAAC,OAA2D;QACnE,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;QACjC,OAAO,IAAI,CAAC,cAAc,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;IACpD,CAAC;IAqBD,QAAQ,CAAC,OAA2D;QAClE,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,OAAc,CAAC,CAAC;QAC5C,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,CAAC,MAAM,CAAC;YACV,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,QAAQ;SACpB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,qBAAqB,CAAC,IAAI,GAAG,WAAW;QACtC,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,mBAAmB,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IAC1E,CAAC;IAuBD,iBAAiB,CAAC,OAA8C,EAAE,KAAa;QAC7E,MAAM,eAAe,GAAQ,EAAE,CAAC;QAChC,MAAM,eAAe,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC;QACrE,MAAM,QAAQ,GAAG,IAAA,kCAAqB,EAAC,UAAU,CAAC,CAAC;QACnD,IAAI,QAAkB,CAAC;QACvB,IAAI,CAAC,OAAO,EAAE;YACZ,QAAQ,GAAG,QAAQ,CAAC,IAAI,CACtB;gBACE,GAAG,eAAe;gBAClB,IAAI,EAAE,IAAI,CAAC,qBAAqB,EAAE;aACnC,EACD,IAAI,EACJ,WAAW,CACZ,CAAC;SACH;aAAM,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YACtC,QAAQ,GAAG,QAAQ,CAAC,IAAI,CACtB;gBACE,GAAG,eAAe;gBAClB,IAAI,EAAE,OAAO;aACd,EACD,IAAI,EACJ,WAAW,CACZ,CAAC;SACH;aAAM,IAAI,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;YACtC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,cAAc;YACtC,QAAQ,GAAG,OAAO,CAAC;YACnB,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;SAC1C;aAAM;YACL,QAAQ,GAAG,QAAQ,CAAC,IAAI,CACtB;gBACE,GAAG,eAAe;gBAClB,GAAG,OAAO;aACX,EACD,IAAI,EACJ,WAAW,CACZ,CAAC;SACH;QACD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;QAC1C,OAAO,QAAQ,CAAC;IAClB,CAAC;IAoBD,gBAAgB,CAAC,OAA8C,EAAE,KAAa;QAC5E,MAAM,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;QAC3D,IAAI,CAAC,MAAM,CAAC;YACV,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,WAAW;SACvB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAuBD,YAAY,CAAC,OAA+C;QAC1D,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;QACpC,OAAO,IAAI,CAAC,iBAAiB,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;IACvD,CAAC;IAqBD,WAAW,CAAC,OAA+C;QACzD,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,OAAc,CAAC,CAAC;QAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,CAAC,MAAM,CAAC;YACV,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,WAAW;SACvB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,yBAAyB,CAAC,eAAiC,EAAE;QAC3D,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;QAC1C,OAAO,CAAE,IAAI,CAAC,UAA0B,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACrH,CAAC;IACD,sBAAsB,CAAC,IAAI,GAAG,YAAY;QACxC,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,yBAAyB,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IAChF,CAAC;IAuBD,kBAAkB,CAAC,OAAgD,EAAE,KAAa;QAChF,MAAM,gBAAgB,GAAQ,EAAE,CAAC;QACjC,MAAM,eAAe,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC;QACtE,MAAM,SAAS,GAAG,IAAA,kCAAqB,EAAC,WAAW,CAAC,CAAC;QACrD,IAAI,SAAoB,CAAC;QACzB,IAAI,CAAC,OAAO,EAAE;YACZ,SAAS,GAAG,SAAS,CAAC,IAAI,CACxB;gBACE,GAAG,gBAAgB;gBACnB,IAAI,EAAE,IAAI,CAAC,sBAAsB,EAAE;aACpC,EACD,IAAI,EACJ,YAAY,CACb,CAAC;SACH;aAAM,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YACtC,SAAS,GAAG,SAAS,CAAC,IAAI,CACxB;gBACE,GAAG,gBAAgB;gBACnB,IAAI,EAAE,OAAO;aACd,EACD,IAAI,EACJ,YAAY,CACb,CAAC;SACH;aAAM,IAAI,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE;YACvC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,cAAc;YACtC,SAAS,GAAG,OAAO,CAAC;YACpB,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;SAC3C;aAAM;YACL,SAAS,GAAG,SAAS,CAAC,IAAI,CACxB;gBACE,GAAG,gBAAgB;gBACnB,GAAG,OAAO;aACX,EACD,IAAI,EACJ,YAAY,CACb,CAAC;SACH;QACD,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,SAAS,CAAC,CAAC;QAC5C,OAAO,SAAS,CAAC;IACnB,CAAC;IAoBD,iBAAiB,CAAC,OAAgD,EAAE,KAAa;QAC/E,MAAM,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;QAC5D,IAAI,CAAC,MAAM,CAAC;YACV,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,YAAY;SACxB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAuBD,aAAa,CAAC,OAAiD;QAC7D,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QACrC,OAAO,IAAI,CAAC,kBAAkB,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;IACxD,CAAC;IAqBD,YAAY,CAAC,OAAiD;QAC5D,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,OAAc,CAAC,CAAC;QAChD,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC5C,IAAI,CAAC,MAAM,CAAC;YACV,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,YAAY;SACxB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,qBAAqB,CAAC,eAAqC,EAAE;QAC3D,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;QAC1C,OAAO,CAAE,IAAI,CAAC,MAA0B,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACrH,CAAC;IACD,kBAAkB,CAAC,IAAI,GAAG,QAAQ;QAChC,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,qBAAqB,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IAC5E,CAAC;IAuBD,cAAc,CAAC,OAAwD,EAAE,KAAa;QACpF,MAAM,YAAY,GAAQ,EAAE,CAAC;QAC7B,MAAM,eAAe,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;QAClE,MAAM,aAAa,GAAG,IAAA,kCAAqB,EAAC,eAAe,CAAC,CAAC;QAC7D,IAAI,KAAoB,CAAC;QACzB,IAAI,CAAC,OAAO,EAAE;YACZ,KAAK,GAAG,aAAa,CAAC,IAAI,CACxB;gBACE,GAAG,YAAY;gBACf,IAAI,EAAE,IAAI,CAAC,kBAAkB,EAAE;aAChC,EACD,IAAI,EACJ,QAAQ,CACT,CAAC;SACH;aAAM,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YACtC,KAAK,GAAG,aAAa,CAAC,IAAI,CACxB;gBACE,GAAG,YAAY;gBACf,IAAI,EAAE,OAAO;aACd,EACD,IAAI,EACJ,QAAQ,CACT,CAAC;SACH;aAAM,IAAI,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE;YAC3C,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,cAAc;YACtC,KAAK,GAAG,OAAO,CAAC;YAChB,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;SACvC;aAAM;YACL,KAAK,GAAG,aAAa,CAAC,IAAI,CACxB;gBACE,GAAG,YAAY;gBACf,GAAG,OAAO;aACX,EACD,IAAI,EACJ,QAAQ,CACT,CAAC;SACH;QACD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;QACpC,OAAO,KAAK,CAAC;IACf,CAAC;IAoBD,aAAa,CAAC,OAAwD,EAAE,KAAa;QACnF,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;QACxD,IAAI,CAAC,MAAM,CAAC;YACV,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,QAAQ;SACpB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAuBD,SAAS,CAAC,OAAyD;QACjE,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;QACjC,OAAO,IAAI,CAAC,cAAc,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;IACpD,CAAC;IAqBD,QAAQ,CAAC,OAAyD;QAChE,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,OAAc,CAAC,CAAC;QAC5C,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,CAAC,MAAM,CAAC;YACV,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,QAAQ;SACpB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAuBD,oBAAoB,CAAC,OAAoD,EAAE,KAAa;QACtF,MAAM,kBAAkB,GAAQ,EAAE,CAAC;QACnC,MAAM,eAAe,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC;QACpE,MAAM,WAAW,GAAG,IAAA,kCAAqB,EAAC,aAAa,CAAC,CAAC;QACzD,IAAI,WAAwB,CAAC;QAC7B,IAAI,CAAC,OAAO,EAAE;YACZ,WAAW,GAAG,WAAW,CAAC,IAAI,CAC5B;gBACE,GAAG,kBAAkB;gBACrB,IAAI,EAAE,IAAI,CAAC,wBAAwB,EAAE;aACtC,EACD,IAAI,EACJ,UAAU,CACX,CAAC;SACH;aAAM,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YACtC,WAAW,GAAG,WAAW,CAAC,IAAI,CAC5B;gBACE,GAAG,kBAAkB;gBACrB,IAAI,EAAE,OAAO;aACd,EACD,IAAI,EACJ,UAAU,CACX,CAAC;SACH;aAAM,IAAI,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE;YACzC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,cAAc;YACtC,WAAW,GAAG,OAAO,CAAC;YACtB,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;SAC7C;aAAM;YACL,WAAW,GAAG,WAAW,CAAC,IAAI,CAC5B;gBACE,GAAG,kBAAkB;gBACrB,GAAG,OAAO;aACX,EACD,IAAI,EACJ,UAAU,CACX,CAAC;SACH;QACD,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,WAAW,CAAC,CAAC;QAC5C,OAAO,WAAW,CAAC;IACrB,CAAC;IAoBD,mBAAmB,CAAC,OAAoD,EAAE,KAAa;QACrF,MAAM,IAAI,GAAG,IAAI,CAAC,oBAAoB,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;QAC9D,IAAI,CAAC,MAAM,CAAC;YACV,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,UAAU;SACtB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAuBD,eAAe,CAAC,OAAqD;QACnE,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;QACnC,OAAO,IAAI,CAAC,oBAAoB,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;IAC1D,CAAC;IAqBD,cAAc,CAAC,OAAqD;QAClE,MAAM,IAAI,GAAG,IAAI,CAAC,eAAe,CAAC,OAAc,CAAC,CAAC;QAClD,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC,MAAM,CAAC;YACV,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,UAAU;SACtB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAcD,WAAW,CAAC,OAAuB;QACjC,IAAI,KAAY,CAAC;QACjB,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC/B,KAAK,GAAI,IAAI,CAAC,MAAkB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;YACvE,IAAI,CAAC,KAAK,EAAE;gBACV,MAAM,IAAI,KAAK,CAAC,UAAU,GAAG,OAAO,CAAC,CAAC;aACvC;SACF;aAAM;YACL,KAAK,GAAG,OAAO,CAAC;SACjB;QACD,OAAO,KAAK,CAAC,MAAM,EAAE,CAAC;IACxB,CAAC;IAED,aAAa,CAAC,KAAY;QACxB,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;QAClC,MAAM,MAAM,GAAW;YACrB,UAAU,EAAE,IAAI;YAChB,SAAS;YACT,KAAK,EAAE,CAAC,CAAC;YACT,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,KAAK;SACjB,CAAC;QACF,IAAI,SAAS,EAAE;YACb,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;YAC7B,aAAa;YACb,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC;YAC/B,aAAa;YACb,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC;YACjC,IAAI,KAAK,CAAC,OAAO,CAAE,CAAS,CAAC,SAAS,CAAC,CAAC,EAAE;gBACxC,aAAa;gBACb,MAAM,KAAK,GAAI,CAAS,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;gBAChF,CAAC,KAAK,IAAK,IAAY,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBACpD,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;aACtB;iBAAM;gBACL,MAAM,CAAC,GAAI,CAAS,CAAC,SAAS,CAAC,CAAC;gBAChC,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE;oBAC1B,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;oBAChB,IAAY,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;iBACtC;aACF;SACF;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAcD,WAAW,CAAC,OAAgC;QAC1C,IAAI,KAAqB,CAAC;QAC1B,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC/B,KAAK,GAAI,IAAI,CAAC,MAA2B,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;YAChF,IAAI,CAAC,KAAK,EAAE;gBACV,MAAM,IAAI,KAAK,CAAC,UAAU,GAAG,OAAO,CAAC,CAAC;aACvC;SACF;aAAM;YACL,KAAK,GAAG,OAAO,CAAC;SACjB;QACD,OAAO,KAAK,CAAC,MAAM,EAAE,CAAC;IACxB,CAAC;IAED,aAAa,CAAC,KAAY;QACxB,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;QAClC,MAAM,MAAM,GAAW;YACrB,UAAU,EAAE,IAAI;YAChB,SAAS;YACT,KAAK,EAAE,CAAC,CAAC;YACT,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,KAAK;SACjB,CAAC;QACF,IAAI,SAAS,EAAE;YACb,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;YAC7B,aAAa;YACb,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC;YAC/B,aAAa;YACb,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC;YACjC,IAAI,KAAK,CAAC,OAAO,CAAE,CAAS,CAAC,SAAS,CAAC,CAAC,EAAE;gBACxC,aAAa;gBACb,MAAM,KAAK,GAAI,CAAS,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;gBAChF,CAAC,KAAK,IAAK,IAAY,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBACpD,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;aACtB;iBAAM;gBACL,MAAM,CAAC,GAAI,CAAS,CAAC,SAAS,CAAC,CAAC;gBAChC,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE;oBAC1B,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;oBAChB,IAAY,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;iBACtC;aACF;SACF;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAcD,cAAc,CAAC,OAA0B;QACvC,IAAI,QAAkB,CAAC;QACvB,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC/B,QAAQ,GAAI,IAAI,CAAC,SAAwB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;YAChF,IAAI,CAAC,QAAQ,EAAE;gBACb,MAAM,IAAI,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC,CAAC;aACrC;SACF;aAAM;YACL,QAAQ,GAAG,OAAO,CAAC;SACpB;QACD,OAAO,QAAQ,CAAC,MAAM,EAAE,CAAC;IAC3B,CAAC;IAED,gBAAgB,CAAC,QAAkB;QACjC,MAAM,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC;QACrC,MAAM,MAAM,GAAW;YACrB,UAAU,EAAE,IAAI;YAChB,SAAS;YACT,KAAK,EAAE,CAAC,CAAC;YACT,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,QAAQ;SACpB,CAAC;QACF,IAAI,SAAS,EAAE;YACb,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;YAC7B,aAAa;YACb,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC;YAC/B,aAAa;YACb,MAAM,CAAC,GAAG,QAAQ,CAAC,OAAO,IAAI,QAAQ,CAAC;YACvC,IAAI,KAAK,CAAC,OAAO,CAAE,CAAS,CAAC,SAAS,CAAC,CAAC,EAAE;gBACxC,aAAa;gBACb,MAAM,KAAK,GAAI,CAAS,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;gBAChF,CAAC,KAAK,IAAK,IAAY,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBACpD,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;aACtB;iBAAM;gBACL,MAAM,CAAC,GAAI,CAAS,CAAC,SAAS,CAAC,CAAC;gBAChC,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE;oBAC1B,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;oBAChB,IAAY,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;iBACtC;aACF;SACF;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAcD,eAAe,CAAC,OAA2B;QACzC,IAAI,SAAoB,CAAC;QACzB,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC/B,SAAS,GAAI,IAAI,CAAC,UAA0B,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;YACnF,IAAI,CAAC,SAAS,EAAE;gBACd,MAAM,IAAI,KAAK,CAAC,YAAY,GAAG,OAAO,CAAC,CAAC;aACzC;SACF;aAAM;YACL,SAAS,GAAG,OAAO,CAAC;SACrB;QACD,OAAO,SAAS,CAAC,MAAM,EAAE,CAAC;IAC5B,CAAC;IAED,iBAAiB,CAAC,SAAoB;QACpC,MAAM,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC;QACtC,MAAM,MAAM,GAAW;YACrB,UAAU,EAAE,IAAI;YAChB,SAAS;YACT,KAAK,EAAE,CAAC,CAAC;YACT,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,SAAS;SACrB,CAAC;QACF,IAAI,SAAS,EAAE;YACb,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;YAC7B,aAAa;YACb,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC;YAC/B,aAAa;YACb,MAAM,CAAC,GAAG,SAAS,CAAC,OAAO,IAAI,SAAS,CAAC;YACzC,IAAI,KAAK,CAAC,OAAO,CAAE,CAAS,CAAC,SAAS,CAAC,CAAC,EAAE;gBACxC,aAAa;gBACb,MAAM,KAAK,GAAI,CAAS,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;gBAChF,CAAC,KAAK,IAAK,IAAY,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBACpD,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;aACtB;iBAAM;gBACL,MAAM,CAAC,GAAI,CAAS,CAAC,SAAS,CAAC,CAAC;gBAChC,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE;oBAC1B,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;oBAChB,IAAY,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;iBACtC;aACF;SACF;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAcD,WAAW,CAAC,OAA+B;QACzC,IAAI,KAAoB,CAAC;QACzB,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC/B,KAAK,GAAI,IAAI,CAAC,MAA0B,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;YAC/E,IAAI,CAAC,KAAK,EAAE;gBACV,MAAM,IAAI,KAAK,CAAC,YAAY,GAAG,OAAO,CAAC,CAAC;aACzC;SACF;aAAM;YACL,KAAK,GAAG,OAAO,CAAC;SACjB;QACD,OAAO,KAAK,CAAC,MAAM,EAAE,CAAC;IACxB,CAAC;IAED,aAAa,CAAC,KAAY;QACxB,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;QAClC,MAAM,MAAM,GAAW;YACrB,UAAU,EAAE,IAAI;YAChB,SAAS;YACT,KAAK,EAAE,CAAC,CAAC;YACT,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,KAAK;SACjB,CAAC;QACF,IAAI,SAAS,EAAE;YACb,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;YAC7B,aAAa;YACb,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC;YAC/B,aAAa;YACb,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC;YACjC,IAAI,KAAK,CAAC,OAAO,CAAE,CAAS,CAAC,SAAS,CAAC,CAAC,EAAE;gBACxC,aAAa;gBACb,MAAM,KAAK,GAAI,CAAS,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;gBAChF,CAAC,KAAK,IAAK,IAAY,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBACpD,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;aACtB;iBAAM;gBACL,MAAM,CAAC,GAAI,CAAS,CAAC,SAAS,CAAC,CAAC;gBAChC,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE;oBAC1B,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;oBAChB,IAAY,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;iBACtC;aACF;SACF;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAcD,iBAAiB,CAAC,OAA6B;QAC7C,IAAI,WAAwB,CAAC;QAC7B,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC/B,WAAW,GAAI,IAAI,CAAC,QAA0B,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;YACrF,IAAI,CAAC,WAAW,EAAE;gBAChB,MAAM,IAAI,KAAK,CAAC,UAAU,GAAG,OAAO,CAAC,CAAC;aACvC;SACF;aAAM;YACL,WAAW,GAAG,OAAO,CAAC;SACvB;QACD,OAAO,WAAW,CAAC,MAAM,EAAE,CAAC;IAC9B,CAAC;IAED,mBAAmB,CAAC,WAAwB;QAC1C,MAAM,SAAS,GAAG,WAAW,CAAC,SAAS,CAAC;QACxC,MAAM,MAAM,GAAW;YACrB,UAAU,EAAE,IAAI;YAChB,SAAS;YACT,KAAK,EAAE,CAAC,CAAC;YACT,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,WAAW;SACvB,CAAC;QACF,IAAI,SAAS,EAAE;YACb,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;YAC7B,aAAa;YACb,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC;YAC/B,aAAa;YACb,MAAM,CAAC,GAAG,WAAW,CAAC,OAAO,IAAI,WAAW,CAAC;YAC7C,IAAI,KAAK,CAAC,OAAO,CAAE,CAAS,CAAC,SAAS,CAAC,CAAC,EAAE;gBACxC,aAAa;gBACb,MAAM,KAAK,GAAI,CAAS,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;gBAChF,CAAC,KAAK,IAAK,IAAY,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBACpD,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;aACtB;iBAAM;gBACL,MAAM,CAAC,GAAI,CAAS,CAAC,SAAS,CAAC,CAAC;gBAChC,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE;oBAC1B,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;oBAChB,IAAY,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;iBACtC;aACF;SACF;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,kFAAkF;IAClF,gEAAgE;IAChE,uBAAuB;IACvB,kFAAkF;IAClF,MAAM,CAAC,iBAAiB;QACtB,OAAO;YACL,KAAK,EAAE,MAAM;SACd,CAAC;IACJ,CAAC;IAED,YAAY;QACV,IAAI,IAAI,CAAC,UAAU,IAAK,IAAI,CAAC,UAA2B,CAAC,YAAY,EAAE;YACrE,MAAM,eAAe,GAAI,IAAI,CAAC,UAA2B,CAAC,YAAY,EAAE,CAAC;YACzE,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YACxC,MAAM,GAAG,GAAG,CAAC,eAAe,CAAC,CAAC;YAC9B,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,KAAK,KAAK,IAAI,UAAU,EAAE;gBACnD,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;aACtB;YACD,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,qBAAqB,CAAC;SAC9C;QACD,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAC9C,CAAC;IAED,cAAc;QACZ,MAAM,mBAAmB,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAChD,IAAI,iBAAiB,GAAG,mBAAmB,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;QAC7F,iBAAiB,GAAG,iBAAiB,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QACzD,OAAO,iBAAiB,CAAC;IAC3B,CAAC;IAOD,mBAAmB;QACjB,MAAM,KAAK,GAAG,IAAA,kCAAqB,EAAC,OAAO,CAAC,CAAC;QAC7C,MAAM,MAAM,GAAiB,EAAE,CAAC;QAChC,YAAY;QACZ,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;YACpC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;gBACjC,OAAO;gBACP,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;oBACjD,KAAK,CAAC,aAAa,GAAG;wBACpB,KAAK,CAAC,IAAI,CACR;4BACE,IAAI,EAAE,OAAO;4BACb,cAAc,EAAE,IAAI;yBACrB,EACD,KAAK,EACL,eAAe,CAChB;qBACF,CAAC;iBACH;gBACD,cAAc;gBACd,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACrB,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YAC7B,KAAK,CAAC,QAAQ,CACZ,CAAC,OAAO,EAAE,EAAE;gBACV,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;oBAC5C,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;wBACjC,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;4BAC/B,OAAO;yBACR;wBACD,yBAAyB;wBACzB,KAAK,CAAC,aAAa,GAAG,SAAS,CAAC,2BAA2B,CAAC,KAAK,CAAC,CAAC;wBACnE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBACrB,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;YACL,CAAC,EACD,EAAE,IAAI,EAAE,IAAI,EAAE,CACf,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,IAAI,MAAM,CAAC,MAAM,EAAE;YACjB,MAAM,QAAQ,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,IAAI,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC;YAC9F,IAAI,CAAC,gBAAgB,GAAG;gBACtB;oBACE,OAAO,EAAE,kBAAkB;oBAC3B,QAAQ;oBACR,QAAQ,EAAE,MAAM;iBACjB;aACF,CAAC;SACH;aAAM;YACL,IAAI,CAAC,gBAAgB,GAAG,EAAE,CAAC;SAC5B;IACH,CAAC;IAED,mBAAmB,CAAC,eAAwC,EAAE;QAC5D,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;QAC1C,MAAM,OAAO,GAAU,EAAE,CAAC;QAC1B,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;YAC9B,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;SAC9B;QACD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;YACjC,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;SACjC;QACD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;YAC9B,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;gBAC5B,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACpB,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;oBAC/B,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;iBAC/B;gBACD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE;oBAChC,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;iBAChC;gBACD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE;oBAClC,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC;iBAClC;YACH,CAAC,CAAC,CAAC;SACJ;QACD,sBAAsB;QACtB,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE;YACxE,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAY,EAAE,EAAE;gBAC1D,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE;oBAClC,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC;iBAClC;YACH,CAAC,CAAC,CAAC;SACJ;QACD,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnF,CAAC;IAID,qBAAqB;IACrB,8BAA8B,CAAC,eAAmC,EAAE;QAClE,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;QAC1C,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAChC,KAAK,CAAC,QAAQ,CACZ,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE;gBACX,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;oBAC1B,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;iBACzC;YACH,CAAC,EACD;gBACE,IAAI,EAAE,OAAO;aACd,CACF,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAED,mBAAmB;IACnB,2BAA2B,CAAC,eAAmC,EAAE;QAC/D,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE;YAClC,IAAI,CAAC,8BAA8B,EAAE,CAAC;SACvC;QACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAC9C,CAAC;IAED,2BAA2B,CAAC,IAAI,GAAG,cAAc;QAC/C,IAAI,CAAC,8BAA8B,EAAE,CAAC;QACtC,MAAM,qBAAqB,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAC3E,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;QACpD,OAAO,qBAAqB,CAAC;IAC/B,CAAC;IAED,wBAAwB,CAAC,IAAI,GAAG,eAAe;QAC7C,IAAI,CAAC,8BAA8B,EAAE,CAAC;QACtC,MAAM,iBAAiB,GAAG,oBAAoB,EAAE,CAAC;QACjD,IAAI,OAAO,GAAG,IAAI,CAAC;QACnB,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACxC,IAAI,iBAAiB,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,iBAAiB,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE;YACxE,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,iBAAiB,IAAI,CAAC,EAAE,CAAC,CAAC;SACrE;QACD,yBAAyB;QACzB,IAAI,CAAC,iBAAiB,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;YAC/C,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SAChD;QACD,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAC9C,MAAM,YAAY,GAAG,uBAAuB,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACnG,MAAM,QAAQ,GACZ,YAAY,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAE,YAAuB,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QAC3G,MAAM,qBAAqB,GAAG,KAAK,CAAC,SAAS,CAC3C,OAAO,EACP,IAAI,CAAC,mBAAmB,EACxB,uBAAuB,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,YAAY,CAC/D,CAAC;QACF,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;QACpD,OAAO,qBAAqB,CAAC;IAC/B,CAAC;IAED,iBAAiB;IACjB,eAAe,CAAC,QAA4B,EAAE,UAA8B,EAAE,eAA8B;QAC1G,IAAI,QAAQ,EAAE;YACZ,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAiB,EAAE,EAAE;gBACrC,MAAM,EAAE,SAAS,GAAG,EAAE,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;gBACtC,MAAM,YAAY,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC;gBAC3E,MAAM,SAAS,GAAG,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAEjD,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACtB,IAAI,IAAI,CAAC,QAAQ,EAAE;oBACjB,IAAI,YAAY,EAAE;wBAChB,IAAI,SAAS,EAAE;4BACb,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,EAAE,eAAe,CAAC,CAAC;yBAClE;qBACF;yBAAM;wBACL,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,EAAE,eAAe,CAAC,CAAC;qBAClE;iBACF;YACH,CAAC,CAAC,CAAC;SACJ;IACH,CAAC;IAED,UAAU,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAuE;QAC9G,MAAM,WAAW,GAAG,IAAA,kCAAqB,EAAC,aAAa,CAAC,CAAC;QACzD,MAAM,KAAK,GAAG,IAAA,kCAAqB,EAAC,OAAO,CAAC,CAAC;QAC7C,MAAM,cAAc,GAAG,IAAA,kCAAqB,EAAC,gBAAgB,CAAC,CAAC;QAC/D,MAAM,QAAQ,GAAG,IAAA,kCAAqB,EAAC,UAAU,CAAC,CAAC;QACnD,MAAM,SAAS,GAAG,IAAA,kCAAqB,EAAC,WAAW,CAAC,CAAC;QACrD,MAAM,SAAS,GAAG,IAAA,kCAAqB,EAAC,WAAW,CAAC,CAAC;QACrD,MAAM,QAAQ,GAAG,KAAK,CAAC,eAAe,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QACzD,IAAI,UAAU,GAAI,IAAI,CAAC,WAAW,CAAC,KAAK,CAAS,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;QAC5E,IAAI,UAAU,GAAG,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC;QAC5E,MAAM,aAAa,GAAG,KAAK,CAAC,eAAe,CAAC,IAAI,EAAE,YAAY,CAAC,IAAI,IAAI,CAAC;QACxE,MAAM,UAAU,GAAQ,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAClD,IAAI,IAAI,GAAG,IAAI,CAAC;QAChB,IAAI,QAAQ,EAAE;YACZ,IAAI,GAAG,WAAW,CAAC,QAAQ,CAAC,QAAQ,EAAE;gBACpC,IAAI,EAAE,IAAI;gBACV,UAAU;aACX,CAAC,CAAC;YACH,IAAI,CAAC,UAAU,EAAE;gBACf,OAAO;aACR;YACD,IAAI,QAAQ,KAAK,QAAQ,EAAE;gBACzB,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;gBAChC,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;aAC5B;iBAAM;gBACL,MAAM,KAAK,GAAG,UAAU,CAAC,gBAAgB,EAAE,CAAC;gBAC5C,IAAI,QAAQ,KAAK,cAAc,EAAE;oBAC/B,UAAU,CAAC,mBAAmB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;iBAC7C;qBAAM,IAAI,QAAQ,KAAK,aAAa,EAAE;oBACrC,UAAU,CAAC,mBAAmB,CAAC,IAAI,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;iBACjD;aACF;SACF;QAED,QAAQ;QACR,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;YACpC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,WAAgB,EAAE,EAAE;gBAC7C,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CACtB;oBACE,GAAG,WAAW;iBACf,EACD,IAAI,CAAC,QAAQ,EACb,QAAQ,CACT,CAAC;gBACD,IAAI,CAAC,QAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YACzC,CAAC,CAAC,CAAC;SACJ;QAED,QAAQ;QACR,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE;YACxC,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,eAAoB,EAAE,EAAE;gBACrD,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAC9B;oBACE,GAAG,eAAe;iBACnB,EACD,IAAI,CAAC,QAAQ,EACb,YAAY,CACb,CAAC;gBACD,IAAI,CAAC,QAAgB,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;YACjD,CAAC,CAAC,CAAC;SACJ;QAED,OAAO;QACP,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE;YACxC,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,YAAiB,EAAE,EAAE;gBAClD,MAAM,KAAK,GAAG,cAAc,CAAC,IAAI,CAC/B;oBACE,GAAG,YAAY;iBAChB,EACD,IAAI,EACJ,QAAQ,CACT,CAAC;gBACF,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;gBACtB,KAAK,CAAC,gBAAgB,EAAE,CAAC;YAC3B,CAAC,CAAC,CAAC;SACJ;QACD,OAAO;QACP,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE;YAC3C,UAAU,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,cAAmB,EAAE,EAAE;gBACvD,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAC5B;oBACE,GAAG,cAAc;iBAClB,EACD,IAAI,EACJ,WAAW,CACZ,CAAC;gBACF,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;YAC7B,CAAC,CAAC,CAAC;SACJ;QAED,OAAO;QACP,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE;YAC5C,UAAU,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,WAAgB,EAAE,EAAE;gBACrD,MAAM,QAAQ,GAAG,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,KAAY,EAAE,EAAE,CAAC,WAAW,CAAC,UAAU,KAAK,KAAK,CAAC,IAAI,CAAC,CAAC;gBACrG,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,gBAAgB,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI,CAAC,CAAC;gBAEzG,sCAAsC;gBACtC,IAAI,CAAC,SAAS,EAAE;oBACd,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAC1B;wBACE,GAAG,WAAW;wBACd,UAAU,EAAE,EAAE;wBACd,MAAM,EAAE,CAAC,QAAQ,CAAC;qBACnB,EACD,IAAI,EACJ,QAAQ,CACT,CAAC;oBACF,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;iBAC1B;qBAAM;oBACL,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;iBAC9B;YACH,CAAC,CAAC,CAAC;SACJ;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,QAAQ,CAAC,MAAqB;QAC5B,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC9B,CAAC;IAED;;;OAGG;IACH,sBAAsB,CAAC,OAAoC;QACzD,OAAO,IAAI,CAAC,QAAQ;aACjB,GAAG,CACF,CAAC,OAAO,EAAE,EAAE,CACV,GAAG,OAAO,CAAC,aAAa,CAAC;YACvB,MAAM,EAAE,IAAI;YACZ,YAAY,EAAE,OAAO,EAAE,YAAY;SACpC,CAAC,IAAI,CACT;aACA,IAAI,CAAC,EAAE,CAAC,CAAC;IACd,CAAC;IAED,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,WAAW,CAAC,cAAc,CAAiB,CAAC;IAC1D,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,IAAI,CAAC,YAAY,EAAE,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;IACpD,CAAC;IAED,IAAI,SAAS;QACX,MAAM,SAAS,GAAkB,EAAE,CAAC;QACpC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAChC,KAAK,CAAC,QAAQ,CACZ,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE;gBACX,IAAI,IAAI,CAAC,GAAG,KAAK,MAAM,EAAE;oBACvB,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;iBACtB;YACH,CAAC,EACD;gBACE,IAAI,EAAE,OAAO;aACd,CACF,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAA6B;QACjC,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,MAAM,IAAI,eAAe,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,iBAAiB,CAAC;QACvE,MAAM,IAAI,aAAa,IAAI,CAAC,SAAS,EAAE,eAAe,CAAC;QACvD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;OAGG;IACH,mBAAmB,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI;QAClC,OAAO,aAAa,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,kBAAkB,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,EAAE,IACjH,IAAI,IAAI,KAAK,CAAC;IAClB,CAAC;IAED,CAAC,gBAAgB;QACf,IAAI,IAAI,GAAG,aAAa,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC;QACpD,MAAM,KAAK,GAAG,IAAA,gCAAmB,EAAC,IAAI,EAAE;YACtC,OAAO,EAAE,CAAC;SACX,CAAC,CAAC;QAEH,IAAI;YACF,IAAI,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;SACzC;QAAC,OAAO,GAAG,EAAE;YACZ,IAAI,IAAI,EAAE,CAAC;YACX,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;SAClB;QAED,IAAI,IAAI,KAAK,CAAC;QAEd,OAAO;YACL,IAAI;YACJ,QAAQ,EAAE,IAAI,CAAC,mBAAmB,EAAE;YACpC,SAAS,EAAE,KAAK,CAAC,SAAS;SAC3B,CAAC;IACJ,CAAC;IAED,qCAAqC,CAAC,KAAY;QAChD,IAAI,OAAO,GAAqB,KAAK,CAAC;QACtC,MAAM,YAAY,GAAkB,EAAE,CAAC;QACvC,OAAO,OAAO,EAAE;YACd,IACE,OAAO,CAAC,OAAO;gBACf,OAAO,CAAC,OAAO,KAAK,aAAa;gBAChC,OAAuB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,aAAa,CAAC,EAChF;gBACA,YAAY,CAAC,IAAI,CAAC,OAAsB,CAAC,CAAC;aAC3C;YACD,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC;SAC9B;QACD,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,CAAC,qBAAqB,CAAC,IAAY,EAAE,KAAY;QAC/C,MAAM,0BAA0B,GAAkB,IAAI,CAAC,qCAAqC,CAAC,KAAK,CAAC,CAAC;QACpG,KAAK,CAAC,CAAC,IAAA,qCAAW,EAAC,0BAA0B,EAAE,QAAQ,CAAC,CAAC,WAAW,CAAC,WAAW,EAAE,KAAK;YACrF,MAAM,YAAY,GAAG,0BAA0B,CAAC,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC;YACnE,MAAM,eAAe,GAAG,UAAU,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,OAAO,CAAC;YAChF,IAAI,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE;gBAClC,MAAM,UAAU,GAAG,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC;gBACvF,IAAI,UAAU,EAAE;oBACd,MAAM,iBAAiB,GAAG,WAAW,CAAC,WAAW,CAAC,mBAAmB,CAAsB,CAAC;oBAC5F,MAAM,YAAY,GAAG,KAAK,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC;oBACjE,MAAM,KAAK,GAAG,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,YAAY,CAAC,CAAC;oBACpF,IAAI,KAAK,EAAE;wBACT,IAAI,GAAG,IAAI,CAAC,UAAU,CACpB,eAAe,EACf,8BAA8B,YAAY,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAC3F,CAAC;qBACH;yBAAM;wBACL,MAAM,QAAQ,GAAG,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,YAAY,CAAC,CAAC;wBAChG,IAAI,GAAG,IAAI,CAAC,UAAU,CACpB,eAAe,EACf,8BAA8B,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,GAAG,CACzE,CAAC;qBACH;iBACF;aACF;QACH,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,yBAAyB,CAAC,WAAwB;QAChD,IAAI,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE;YAClD,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;SACnD;QAED,MAAM,MAAM,GAAG,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACrD,IAAI,SAAS,GAAG,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACrD,IAAI,SAAS,KAAK,SAAS;YAAE,OAAO;QAEpC,YAAY;QACZ,SAAS,GAAG,SAAS,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAE1F,IAAI,uBAAuB,EAAE,CAAC,MAAM,CAAC,EAAE;YACrC,YAAY;YACZ,IAAI,SAAS,GAAG,uBAAuB,CAAC,MAAM,CAAC;gBAC7C,YAAY;gBACZ,uBAAuB,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;SAC/C;aAAM;YACL,YAAY;YACZ,uBAAuB,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;SAC7C;IACH,CAAC;IAED,CAAC,YAAY,CAAC,IAAY,EAAE,UAAwC,EAAE,SAAc;QAClF,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAClC,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;QAC/B,MAAM,QAAQ,GAAG,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;QACnC,kBAAkB;QAClB,IAAI,OAAO,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE;YACtC,MAAM,EAAE,UAAU,EAAE,GAAG,SAAS,CAAC,kBAAkB,EAAE,CAAC;YACtD,OAAO,UAAU;gBACf,CAAC,CAAC,GAAG,SAAS,CAAC,WAAW,IAAK,UAAwB,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG;gBAC7F,CAAC,CAAC,IAAI,CAAC;SACV;QAED,qBAAqB;QACrB,IAAI,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,eAAe,KAAK,YAAY,EAAE;YAChF,MAAM,UAAU,GAAG,SAAS,EAAE,UAAU,CAAC;YACzC,MAAM,WAAW,GAAI,IAAI,CAAC,WAAW,CAAC,KAAK,CAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC;YAC/F,OAAO,WAAW,CAAC,CAAC,CAAC,cAAc,UAAU,IAAI,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;SAC3G;QAED,0EAA0E;QAC1E,IAAI,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;YAC5C,IAAI,IAAI,KAAK,QAAQ,CAAC,IAAI;gBAAE,OAAO,GAAG,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;YAEhG,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACjH,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;gBAC7B,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC;oBAAE,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YACzF,CAAC,CAAC,CAAC;YACH,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;gBACnC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAAE,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAC/F,CAAC,CAAC,CAAC;YACH,OAAO,IAAI,CAAC;SACb;QAED,oCAAoC;QACpC,IAAI,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACnC,IAAI,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YACtD,OAAO,IAAI,CAAC;SACb;QAED,oCAAoC;QACpC,MAAM,WAAW,GACf,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACvD,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;QACnE,OAAO,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;IACrC,CAAC;IAED,iBAAiB,CAAC,IAAY,EAAE,QAAgB,EAAE,WAAmB;QACnE,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE;YACjC,IAAI,EAAE,KAAK,GAAG,QAAQ,GAAG;gBAAE,OAAO,GAAG,WAAW,GAAG,CAAC;YACpD,IAAI,EAAE,KAAK,QAAQ;gBAAE,OAAO,WAAW,CAAC;YAExC,IAAI,MAAM,GAAG,EAAE,CAAC;YAChB,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,QAAQ,GAAG,CAAC;gBAAE,MAAM,GAAG,EAAE,CAAC,UAAU,CAAC,GAAG,QAAQ,GAAG,EAAE,GAAG,WAAW,GAAG,CAAC,CAAC;YAC7F,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,QAAQ,GAAG,CAAC;gBAAE,MAAM,GAAG,EAAE,CAAC,UAAU,CAAC,GAAG,QAAQ,GAAG,EAAE,GAAG,WAAW,GAAG,CAAC,CAAC;YAC7F,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,QAAQ,GAAG,CAAC;gBAAE,MAAM,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,QAAQ,GAAG,EAAE,IAAI,WAAW,GAAG,CAAC,CAAC;YAC9F,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,QAAQ,GAAG,CAAC;gBAAE,MAAM,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,QAAQ,GAAG,EAAE,IAAI,WAAW,GAAG,CAAC,CAAC;YAC9F,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,QAAQ,GAAG,CAAC;gBAAE,MAAM,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,QAAQ,GAAG,EAAE,IAAI,WAAW,GAAG,CAAC,CAAC;YAC9F,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,QAAQ,GAAG,CAAC;gBAAE,MAAM,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,QAAQ,GAAG,EAAE,IAAI,WAAW,GAAG,CAAC,CAAC;YAC9F,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,QAAQ,GAAG,CAAC;gBAAE,MAAM,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,QAAQ,GAAG,EAAE,IAAI,WAAW,GAAG,CAAC,CAAC;YAC9F,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,QAAQ,GAAG,CAAC;gBAAE,MAAM,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,QAAQ,GAAG,EAAE,IAAI,WAAW,GAAG,CAAC,CAAC;YAC9F,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,iBAAiB;IACjB,aAAa,CAAC,QAA4B,EAAE,aAAiC;QAC3E,IAAI,QAAQ,EAAE;YACZ,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAiB,EAAE,EAAE;gBACrC,IAAI,8BAA8B,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;oBAC9C,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;iBAC1B;gBACD,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;oBAC5B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;iBAClD;YACH,CAAC,CAAC,CAAC;SACJ;IACH,CAAC;IAED,gBAAgB,CAAC,QAA4B,EAAE,kBAAsC;QACnF,IAAI,QAAQ,EAAE;YACZ,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAiB,EAAE,EAAE;gBACrC,IAAI,CAAC,8BAA8B,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;oBAC/C,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;iBAC/B;gBACD,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;oBAC5B,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;iBAC1D;YACH,CAAC,CAAC,CAAC;SACJ;IACH,CAAC;IAGD,CAAC,YAAY,CAAC,KAAK,GAAG,IAAA,gCAAmB,GAAE;QACzC,MAAM,IAAI,GAAG,IAAI,CAAC;QAClB,kBAAkB;QAClB,gBAAgB;QAChB,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC3B,IAAI,IAAI,GAAG,gBAAgB,IAAI,CAAC,MAAM,mCAAmC,CAAC;QAC1E,0BAA0B;QAC1B,IAAI,IAAI;;;;;KAKP,CAAC;QACF,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;YAC9B,KAAK,CAAC,CAAC,IAAA,qCAAW,EAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,oBAAoB,CAAC,KAAK,EAAE,KAAK;gBACzE,IAAI,IAAI,GAAG,KAAK,CAAC,IAAI,KAAK,CAAC;gBAC3B,IAAI,IAAI,KAAK,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC,YAAY,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;gBAC1E,IAAI,IAAI,KAAK,CAAC;YAChB,CAAC,CAAC,CAAC;SACJ;QACD,IAAI,IAAI;;;;mBAIO,CAAC;QAEhB,OAAO;QACP,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;YAClC,KAAK,CAAC,CAAC,IAAA,qCAAW,EAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,oBAAoB,CAAC,KAAK;gBACtE,IAAI,IAAI,KAAK,CAAC,CAAC,KAAK,CAAC,YAAY,CAC/B,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE;oBACtB,OAAO,EAAE,KAAK,EAAE,OAAO,IAAI,CAAC;iBAC7B,CAAC,EACF,IAAI,CACL,CAAC;gBACF,IAAI,IAAI,IAAI,CAAC;YACf,CAAC,CAAC,CAAC;SACJ;QACD,IAAI,IAAI,KAAK,CAAC;QACd,WAAW;QACX,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;YACpD,IAAI,IAAI,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC1C,KAAK,CAAC,CAAC,IAAA,qCAAW,EAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,oBAAoB,CAAC,KAAK;gBAClE,IAAI,IAAI,KAAK,CAAC,CAAC,KAAK,CAAC,YAAY,CAC/B,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE;oBACtB,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC;iBACnC,CAAC,CACH,CAAC;gBACF,IAAI,IAAI,IAAI,CAAC;YACf,CAAC,CAAC,CAAC;YACH,IAAI,IAAI,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;SAC3C;QACD,KAAK;QACL,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;YACpD,IAAI,IAAI,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC1C,KAAK,CAAC,CAAC,IAAA,qCAAW,EAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,oBAAoB,CAAC,KAAK;gBAClE,IAAI,IAAI,KAAK,CAAC,CAAC,KAAK,CAAC,YAAY,CAC/B,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE;oBACtB,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC;iBACnC,CAAC,EACF,UAAU,CACX,CAAC;gBACF,IAAI,IAAI,IAAI,CAAC;YACf,CAAC,CAAC,CAAC;YACH,IAAI,IAAI,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;SAC3C;QACD,WAAW;QACX,IAAI,IAAI,KAAK,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QACjD,IAAI,IAAI,WAAW,CAAC;QACpB,IAAI,IAAI,MAAM,CAAC;QACf,IAAI,IAAI,IAAA,mBAAM,EAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,CAAC;QACpC,cAAc;QACd,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;YAChC,WAAW;YACX,KAAK,CAAC,CAAC,IAAA,qCAAW,EAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,oBAAoB,CAAC,OAAO;gBACtE,IAAI,IAAI,KAAK,CAAC,CAAC,OAAO,CAAC,YAAY,CACjC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE;oBACtB,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC;iBACnC,CAAC,CACH,CAAC;gBACF,IAAI,IAAI,IAAI,CAAC;YACf,CAAC,CAAC,CAAC;SACJ;QACD,IAAI,IAAI,KAAK,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC;QACpD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;YAC9B,IAAI,IAAI,GAAG,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,yBAAyB,CAAC;YACtE,KAAK,CAAC,CAAC,IAAA,qCAAW,EAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,oBAAoB,CAAC,KAAK,EAAE,KAAK;gBACzE,IAAI,IAAI,GAAG,KAAK,CAAC,IAAI,KAAK,CAAC;gBAC3B,IAAI,IAAI,KAAK,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC,YAAY,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;gBAC1E,IAAI,IAAI,IAAI,CAAC;YACf,CAAC,CAAC,CAAC;YACH,KAAK;YACL,IAAI,IAAI,4BAA4B,CAAC;YACrC,IAAI,IAAI,QAAQ,CAAC;SAClB;QACD,IAAI,IAAI,GAAG,IAAA,mBAAM,EAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,KAAK,CAAC;QAE5C,iBAAiB;QACjB,IAAI,IAAI,0BAA0B,CAAC;QACnC,iBAAiB;QACjB,KAAK,CAAC,CAAC,IAAA,qCAAW,EAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,oBAAoB,CAAC,OAAO;YACtE,IAAI,IAAI,KAAK,CAAC,CAAC,OAAO,CAAC,sBAAsB,CAC3C,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE;gBACtB,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC;aACnC,CAAC,CACH,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,IAAI,IAAI,GAAG,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC;QAClD,IAAI,IAAI,+BAA+B,CAAC;QAExC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;YAChC,IAAI,IAAI,GAAG,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,YAAY,CAAC;YACzD,IAAI,IAAI,mCAAmC,CAAC;YAC5C,MAAM,aAAa,GAAuB,EAAE,CAAC;YAC7C,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;YACjD,MAAM,YAAY,GAAa,EAAE,CAAC;YAClC,KAAK,CAAC,CAAC,IAAA,qCAAW,EAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,oBAAoB,CAAC,IAAI;gBACnE,IAAI,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,8BAA8B,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC;YAC9G,CAAC,CAAC,CAAC;YACH,IAAI,IAAI,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;YAClD,IAAI,IAAI,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC1C,IAAI,IAAI,qEAAqE,CAAC;YAC9E,IAAI,IAAI,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC1C,IAAI,IAAI,wCAAwC,CAAC;YACjD,KAAK,CAAC,CAAC,IAAA,qCAAW,EAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,oBAAoB,CAAC,IAAI;gBACnE,IAAI,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,sCAAsC,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YACxG,CAAC,CAAC,CAAC;YACH,IAAI,IAAI,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;YAClD,IAAI,IAAI,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC1C,IAAI,IAAI,4CAA4C,CAAC;YACrD,KAAK,CAAC,CAAC,IAAA,qCAAW,EAAC,YAAY,EAAE,QAAQ,CAAC,CAAC,oBAAoB,CAAC,IAAI;gBAClE,IAAI,IAAI,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC1C,IAAI,IAAI,GAAG,IAAI,EAAE,CAAC;YACpB,CAAC,CAAC,CAAC;YACH,IAAI,IAAI,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;SACnD;QAED,MAAM,UAAU,GAAgD,IAAI,GAAG,EAAE,CAAC;QAC1E,KAAK,CAAC,CAAC,IAAI,CAAC,yBAAyB,CAAC,QAAQ,CAAC,CAAC,yBAAyB,CAAC,EAAE;YAC1E,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,EAAE;gBACxF,IAAI,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC,EAAE;oBAC5B,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,CACrC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,cAAc,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,QAAQ,CAAC,IAAI,CAC1E,CAAC;oBACF,IAAI,UAAU,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE;wBAC7C,UAAU,CAAC,GAAG,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;qBAChC;iBACF;qBAAM,IAAI,OAAO,CAAC,iBAAiB,CAAC,EAAE,CAAC,EAAE;oBACxC,KAAK,CAAC,CAAC,IAAA,qCAAW,EAAC,EAAE,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC,oBAAoB,CAAC,EAAE,SAAS,EAAE;wBACjF,MAAM,QAAQ,GACZ,SAAS,CAAC,MAAM,KAAK,CAAC;4BACpB,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE,UAAU,EAAE,YAAY,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;gCACrF,IAAA,2BAAY,EAAC,EAAE,CAAC;4BAChB,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;gCAChG,IAAA,2BAAY,EAAC,EAAE,CAAC,CAAC;wBACrB,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,CACrC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,cAAc,IAAI,QAAQ,KAAK,QAAQ,CAAC,IAAI,CACrE,CAAC;wBACF,IAAI,UAAU,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE;4BAC7C,UAAU,CAAC,GAAG,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;yBAChC;oBACH,CAAC,CAAC,CAAC;iBACJ;aACF;QACH,CAAC,CAAC,CAAC;QAEH,kDAAkD;QAClD,MAAM,aAAa,GAAG,IAAI,GAAG,EAAY,CAAC;QAC1C,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;YAC9B,KAAK,CAAC,CAAC,IAAA,qCAAW,EAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,oBAAoB,CAAC,KAAK;gBAClE,IAAI,IAAI,OAAO,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;gBACnD,IAAI,IAAI,KAAK,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;gBAC7E,IAAI,IAAI,KAAK,CAAC;YAChB,CAAC,CAAC,CAAC;SACJ;QACD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;YACjC,KAAK,CAAC,CAAC,IAAA,qCAAW,EAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,oBAAoB,CAAC,QAAQ;gBACxE,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,QAAQ,CAAC,YAAY,EAAE,YAAY,EAAE,EAAE,IAAI,IAAA,2BAAY,EAAC,EAAE,CAAC,CAAC;gBAC9E,IAAI,CAAC,gBAAgB,EAAE,kBAAkB,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE;oBACvD,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;iBAC7B;gBACD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;oBAC7B,IAAI,IAAI,OAAO,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;oBACnD,IAAI,IAAI,KAAK,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;oBAChF,IAAI,IAAI,KAAK,CAAC;iBACf;YACH,CAAC,CAAC,CAAC;SACJ;QACD,KAAK,CAAC,CAAC,IAAA,sCAAY,EAAC,UAAU,CAAC,OAAO,EAAE,EAAE,QAAQ,CAAC,CAAC,oBAAoB,CAAC,CAAC,QAAQ,EAAE,UAAU,CAAC;YAC7F,oEAAoE;YACpE,IAAI,QAAQ,CAAC,YAAY,EAAE,UAAU,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;gBACrE,IAAI,IAAI,OAAO,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;gBACnD,IAAI,IAAI,KAAK,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;gBAChF,OAAO;aACR;YACD,IAAI,IAAI,GAAG,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,iBAAiB,CAAC;YAC9D,IAAI,IAAI,OAAO,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACnD,IAAI,IAAI,KAAK,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YAChF,IAAI,IAAI,KAAK,CAAC;YACd,IAAI,OAAO,CAAC,iBAAiB,CAAC,UAAU,CAAC,EAAE;gBACzC,KAAK,CAAC,CAAC,IAAA,qCAAW,EAAC,UAAU,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC,oBAAoB,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE;oBACrG,MAAM,QAAQ,GACZ,SAAS,CAAC,MAAM,KAAK,CAAC;wBACpB,CAAC,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;wBAC3F,CAAC,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;4BACvG,IAAA,2BAAY,EAAC,EAAE,CAAC,CAAC;oBACrB,IAAI,QAAQ,KAAK,QAAQ,CAAC,IAAI,EAAE;wBAC9B,MAAM,SAAS,GACb,UAAU,CAAC,MAAM,KAAK,CAAC;4BACrB,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,UAAU;4BAC9C,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;wBAC/D,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,SAAS,EAAE,YAAY,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;4BACzF,IAAA,2BAAY,EAAC,EAAE,CAAC,CAAC;wBACnB,IAAI,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;qBACpE;gBACH,CAAC,CAAC,CAAC;aACJ;iBAAM;gBACL,IAAI,SAAS,GAAG,EAAE,CAAC;gBACnB,qBAAqB;gBACrB,IACE,UAAU,CAAC,KAAK;oBAChB,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,KAAK,CAAC;oBACtC,UAAU,CAAC,KAAK,CAAC,SAAS;oBAC1B,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,EAC5C;oBACA,SAAS,IAAI,MAAM,CAAC;iBACrB;gBACD,SAAS;oBACP,UAAU,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC,YAAY;wBAC/C,CAAC,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,YAAY,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;wBACjF,CAAC,CAAC,WAAW,CAAC;gBAClB,IAAI,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC;aAC3E;YACD,IAAI,IAAI,KAAK,CAAC;QAChB,CAAC,CAAC,CAAC;QAEH,uCAAuC;QACvC,IAAI,IAAI,GAAG,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,4BAA4B,CAAC;QAEzE,oEAAoE;QACpE,KAAK,MAAM,IAAI,IAAI,aAAa,CAAC,MAAM,EAAE,EAAE;YACzC,IAAI,IAAI,GAAG,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAC/C,IAAI,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YACzF,IAAI,IAAI,IAAI,CAAC;SACd;QAED,IAAI,IAAI,IAAI,CAAC;QACb,IAAI,IAAI,GAAG,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC;QAEvD,QAAQ,CAAC,CAAC,iBAAiB,CAAC,GAAkC,EAAE,IAAY;YAC1E,IAAI,GAAG,CAAC,MAAM,EAAE;gBACd,IAAI,IAAI,GAAG,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,eAAe,IAAI,oBAAoB,CAAC;aACrF;YAED,KAAK,MAAM,KAAK,IAAI,GAAG,EAAE;gBACvB,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,YAAY,EAAE,UAAU,IAAI,EAAE,EAAE;oBACvD,IAAI,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;oBAClG,IAAI,IAAI,KAAK,CAAC;iBACf;aACF;QACH,CAAC;QACD,KAAK,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;QACtD,KAAK,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAEhD,IAAI,IAAI,GAAG,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC;QAClD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;OAGG;IACH,YAAY,CAAC,OAA6B;QACxC,OAAO;YACL,QAAQ,EAAE,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;YACtC,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE;SACzB,CAAC;IACJ,CAAC;IAED,cAAc,CAAC,OAA6B;QAC1C,OAAO,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,GAAG,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAClF,CAAC;IAED,iBAAiB;QACf,MAAM,UAAU,GAAqB,EAAE,CAAC;QACxC,YAAY;QACZ,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;YACpC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YAC7B,KAAK,CAAC,QAAQ,CACZ,CAAC,OAAO,EAAE,EAAE;gBACV,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;oBAC5C,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAC7B,CAAC,CAAC,CAAC;YACL,CAAC,EACD,EAAE,IAAI,EAAE,IAAI,EAAE,CACf,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,gBAAgB;IAChB,kBAAkB;QAChB,MAAM,eAAe,GAAU,EAAE,CAAC;QAClC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YAC7B,KAAK,CAAC,QAAQ,CACZ,CAAC,OAAO,EAAE,EAAE;gBACV,MAAM,EAAE,IAAI,EAAE,GAAG,OAAc,CAAC;gBAChC,MAAM,kBAAkB,GAAG,CAAC,IAAI,EAAE,QAAQ,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,YAAoB,EAAE,EAAE;oBACzF,OAAO,YAAY,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,YAAY,CAAC;gBAChE,CAAC,CAAC,CAAC;gBACH,IAAI,CAAC,kBAAkB,EAAE;oBACvB,WAAW;oBACX,MAAM;oBACN,4EAA4E;oBAC5E,uCAAuC;oBACvC,KAAK;oBACL,iCAAiC;oBACjC,GAAG;oBACH,IAAI,IAAI,EAAE,OAAO,KAAK,OAAO,EAAE;wBAC7B,eAAe,CAAC,IAAI,CAAC,IAAa,CAAC,CAAC;qBACrC;iBACF;YACH,CAAC,EACD;gBACE,IAAI,EAAE,IAAI;aACX,EACD;gBACE,IAAI,EAAE,WAAW;gBACjB,UAAU,EAAE,IAAI;gBAChB,cAAc,EAAE,IAAI,GAAG,CAAC;oBACtB,YAAY;oBACZ,YAAY;oBACZ,WAAW;oBACX,aAAa;oBACb,eAAe;oBACf,mBAAmB;oBACnB,YAAY;oBACZ,SAAS;oBACT,iBAAiB;oBACjB,cAAc;iBACf,CAAC;aACH,CACF,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,OAAO,eAAe,CAAC;IACzB,CAAC;IAED;;;OAGG;IACH,SAAS;QACP,MAAM,aAAa,GAAuB,EAAE,CAAC;QAC7C,MAAM,kBAAkB,GAAuB,EAAE,CAAC;QAClD,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;QACjD,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;QACzD,MAAM,UAAU,GAAG;YACjB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,MAAM,EAAE,IAAI,CAAC,UAAU;YACvB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,cAAc,EAAE,IAAI,CAAC,iBAAiB,EAAE;YACxC,eAAe,EAAE,IAAI,CAAC,kBAAkB,EAAE;YAC1C,QAAQ,EAAE,aAAa;YACvB,WAAW,EAAE,kBAAkB;SAChC,CAAC;QACF,IAAI,IAAI,GAAG,EAAE,CAAC;QACd,MAAM,sBAAsB,GAAG;;;;;;;;;;;sBAWb,IAAI,CAAC,UAAU;aAC5B,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;aACnD,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,cAAc,KAAK,CAAC,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,MAAM,CAAC;aACjE,IAAI,CAAC,IAAI,CAAC;;;sBAGG,IAAI,CAAC,UAAU;aAC5B,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;aACjD,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,cAAc,KAAK,CAAC,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,MAAM,CAAC;aACjE,IAAI,CAAC,IAAI,CAAC;;;aAGN,CAAC;QACV,IAAI,IAAI,sBAAsB,CAAC;QAC/B,IAAI,IAAI,oBAAoB,CAAC;QAC7B,IAAI,IAAI,WAAW,CAAC;QACpB,MAAM,MAAM,GAAG,EAAE,CAAC;QAClB,YAAY;QACZ,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAClC,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACzB,IAAI,IAAI,IAAI,CAAC;QACb,IAAI,IAAI,IAAA,oBAAU,EAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QACrC,IAAI,IAAI,MAAM,CAAC;QACf,OAAO,IAAI,CAAC;IACd,CAAC;IAED,UAAU;IACV,kBAAkB;QAChB,OAAO;oBACS,IAAI,CAAC,IAAI;kBACX,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;YAC5C,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC;YAC/B,OAAO,cAAc,QAAQ,cAAc,CAAC;QAC9C,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;qBACM,IAAI,CAAC,IAAI;wBACN,CAAC;IACvB,CAAC;CAMF,CAAA;AAn2EC,SAAS;AACO,6BAAW,GAAW,mBAAoB,CAAA;AAE1D,UAAU;AACM,kCAAgB,GAAa,CAAC,UAAU,CAAE,CAAA;AAO1D;IAFC,IAAA,qBAAQ,EAAC,SAAS,CAAC;kDAEmB;AAMvC;IADC,IAAA,qBAAQ,GAAE;+CACG;AAMd;IADC,IAAA,qBAAQ,GAAE;gDACI;AAMf;IADC,IAAA,qBAAQ,GAAE;sDACU;AAUrB;IALC,IAAA,qBAAQ,EAAC;QACR,SAAS,EAAE,OAAO;QAClB,OAAO,EAAE,IAAI;QACb,YAAY,EAAE,EAAE;KACjB,CAAC;iDACwB;AAU1B;IALC,IAAA,qBAAQ,EAAC;QACR,SAAS,EAAE,gBAAgB;QAC3B,OAAO,EAAE,IAAI;QACb,YAAY,EAAE,EAAE;KACjB,CAAC;iDACiC;AAUnC;IALC,IAAA,qBAAQ,EAAC;QACR,SAAS,EAAE,UAAU;QACrB,OAAO,EAAE,IAAI;QACb,YAAY,EAAE,EAAE;KACjB,CAAC;oDAC8B;AAUhC;IALC,IAAA,qBAAQ,EAAC;QACR,SAAS,EAAE,WAAW;QACtB,OAAO,EAAE,IAAI;QACb,YAAY,EAAE,EAAE;KACjB,CAAC;qDACgC;AAUlC;IALC,IAAA,qBAAQ,EAAC;QACR,SAAS,EAAE,eAAe;QAC1B,OAAO,EAAE,IAAI;QACb,YAAY,EAAE,EAAE;KACjB,CAAC;iDACgC;AAUlC;IALC,IAAA,qBAAQ,EAAC;QACR,SAAS,EAAE,aAAa;QACxB,OAAO,EAAE,IAAI;QACb,YAAY,EAAE,EAAE;KACjB,CAAC;mDACgC;AAMlC;IADC,IAAA,qBAAQ,GAAE;+CACG;AA61Dd;IADC,mCAAsB;qDA2QtB;AAvsEU,iBAAiB;IAD7B,IAAA,oBAAO,EAAC,MAAM,CAAC;GACH,iBAAiB,CAo2E7B;AAp2EY,8CAAiB;AAs2E9B,kBAAe,iBAAiB,CAAC;AACjC,kFAAkF;AAClF,gEAAgE;AAChE,uBAAuB;AACvB,kFAAkF"}
@@ -1,38 +0,0 @@
1
- import { TranslatorGenerator } from '../translator';
2
- import { BusinessComponent } from './BusinessComponent__';
3
- import Logic from './Logic__';
4
- /**
5
- * 业务组件逻辑
6
- */
7
- export declare class BusinessLogic extends Logic {
8
- /** 类名 */
9
- static readonly ConceptName: string;
10
- /** 继承链 */
11
- static readonly inheritanceChain: string[];
12
- /**
13
- * 产品概念
14
- */
15
- readonly concept: 'BusinessLogic';
16
- /**
17
- * 是否开放外部调用
18
- */
19
- isPublic: boolean;
20
- /**
21
- * @param source 需要合并的部分参数
22
- */
23
- constructor(source?: Partial<BusinessLogic>);
24
- static from(source: any, parentNode?: any, parentKey?: string): BusinessLogic;
25
- /**
26
- * 设置是否开放外部调用
27
- */
28
- setIsPublic(isPublic: boolean): void;
29
- static getDefaultOptions(): Partial<{
30
- body: Array<any>;
31
- params: Array<any>;
32
- returns: Array<any>;
33
- description: string;
34
- }>;
35
- get businessComponent(): BusinessComponent;
36
- toEmbeddedTS(state?: import("../translator").TranslatorState, prefix?: string, hideDefaultValue?: boolean): TranslatorGenerator;
37
- }
38
- export default BusinessLogic;
@@ -1,358 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
19
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
20
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
21
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
22
- return c > 3 && r && Object.defineProperty(target, key, r), r;
23
- };
24
- var __importStar = (this && this.__importStar) || function (mod) {
25
- if (mod && mod.__esModule) return mod;
26
- var result = {};
27
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
28
- __setModuleDefault(result, mod);
29
- return result;
30
- };
31
- var __importDefault = (this && this.__importDefault) || function (mod) {
32
- return (mod && mod.__esModule) ? mod : { "default": mod };
33
- };
34
- var BusinessLogic_1;
35
- Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.BusinessLogic = void 0;
37
- const time_slicing_1 = require("../utils/time-slicing");
38
- const common_1 = require("../common");
39
- const translator_1 = require("../translator");
40
- const decorators_1 = require("../decorators");
41
- const utils = __importStar(require("../utils"));
42
- const asserts = __importStar(require("./utils/asserts"));
43
- const Logic__1 = __importDefault(require("./Logic__"));
44
- /**
45
- * 业务组件逻辑
46
- */
47
- let BusinessLogic = BusinessLogic_1 = class BusinessLogic extends Logic__1.default {
48
- /**
49
- * @param source 需要合并的部分参数
50
- */
51
- constructor(source) {
52
- source = Object.assign({}, BusinessLogic_1.getDefaultOptions(), source);
53
- super(source);
54
- super.subConstructor(source);
55
- }
56
- static from(source, parentNode, parentKey) {
57
- return super.from(source, parentNode, parentKey);
58
- }
59
- /**
60
- * 设置是否开放外部调用
61
- */
62
- setIsPublic(isPublic) {
63
- const object = {
64
- isPublic,
65
- };
66
- this.update({
67
- ...object,
68
- });
69
- }
70
- //================================================================================
71
- // ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
72
- // 自动生成的代码已结束。下面可以手动编写。
73
- //================================================================================
74
- static getDefaultOptions() {
75
- return {
76
- description: '内部实现逻辑',
77
- };
78
- }
79
- get businessComponent() {
80
- return this.getAncestor('BusinessComponent');
81
- }
82
- *toEmbeddedTS(state = (0, translator_1.createCompilerState)(), prefix, hideDefaultValue) {
83
- const self = this;
84
- // 等待 oql 查询返回内容
85
- yield (0, common_1.waitOqlQueryComponentChildrenFinish)(self);
86
- // 如果传了不要前缀那就为空, 要不用传进来的,要是都没有就默认导出
87
- let code = '';
88
- // 用来储存默认值翻译结构是__IDENTIFIER__或者__IDENTIFIER__()的节点
89
- const IDENTIFIERMAP = new Set();
90
- if (this.businessComponent) {
91
- if (!self.isPublic) {
92
- code += 'private ';
93
- }
94
- code += self.name;
95
- }
96
- if (self.typeParams?.length) {
97
- code += '<';
98
- yield* (0, time_slicing_1.wrapForEachToGenerator)(self.typeParams, function* warpForEachGenerator(typeParam, typeParamIndex) {
99
- code += yield* typeParam.toEmbeddedTS((0, translator_1.shiftState)(state, code, { inline: true }));
100
- if (typeParamIndex !== self.typeParams.length - 1)
101
- code += ', ';
102
- });
103
- code += '>';
104
- }
105
- // 有参数长度
106
- if (self.params.length) {
107
- code += '(';
108
- yield* (0, time_slicing_1.wrapForEachToGenerator)(self.params, function* warpForEachGenerator(param, index) {
109
- code += yield* param.toEmbeddedTS((0, translator_1.shiftState)(state, code));
110
- if (index !== self.params.length - 1)
111
- code += ', ';
112
- });
113
- code += ')';
114
- }
115
- else {
116
- // 没有参数的
117
- code += '()';
118
- }
119
- // 需要类型推导的局部变量/返回值需要调整申明顺序
120
- const advanceMap = new Map();
121
- // const needGetSourceMapOqlList: Promise<any>[] = [];
122
- yield* self.traverseChildrenGenerator(function* traverseChildrenGenerator(el) {
123
- if (el && (asserts.isBatchAssignment(el) || (asserts.isAssignment(el) && el.left?.name))) {
124
- if (asserts.isAssignment(el)) {
125
- const advanceVar = self.variables?.find((variable) => !variable.typeAnnotation && el.left?.name === variable.name);
126
- if (advanceVar && !advanceMap.get(advanceVar)) {
127
- advanceMap.set(advanceVar, el);
128
- }
129
- const advanceRn = self.returns?.find((ret) => !ret.typeAnnotation && el.left?.name === ret.name);
130
- if (advanceRn && !advanceMap.get(advanceRn)) {
131
- advanceMap.set(advanceRn, el);
132
- }
133
- }
134
- else if (asserts.isBatchAssignment(el)) {
135
- yield* (0, time_slicing_1.wrapForEachToGenerator)(el.assignmentLines, function* warpForEachGenerator({ leftIndex }) {
136
- const leftCode = leftIndex.length === 1
137
- ? yield* el.left.expression.toEmbeddedTS((0, translator_1.shiftState)(state, code, { inline: true }))
138
- : yield* el.left.members[leftIndex[1]]?.toEmbeddedTS((0, translator_1.shiftState)(state, code, { inline: true })) ??
139
- (0, time_slicing_1.returnOrigin)('');
140
- const advanceVar = self.variables?.find((variable) => !variable.typeAnnotation && leftCode === variable.name);
141
- if (advanceVar && !advanceMap.get(advanceVar)) {
142
- advanceMap.set(advanceVar, el);
143
- }
144
- const advanceRn = self.returns?.find((ret) => !ret.typeAnnotation && leftCode === ret.name);
145
- if (advanceRn && !advanceMap.get(advanceRn)) {
146
- advanceMap.set(advanceRn, el);
147
- }
148
- });
149
- }
150
- }
151
- });
152
- // 兼容 return 没有类型情况
153
- if (self.returns.length && self.returns[0].typeAnnotation) {
154
- code += ': ';
155
- code += yield* self.returns[0].typeAnnotation?.toEmbeddedTS((0, translator_1.shiftState)(state, code, { inline: true })) ??
156
- (0, time_slicing_1.returnOrigin)('');
157
- }
158
- code += '{\n';
159
- // 用于虚拟节点的查找引用
160
- if (Array.isArray(self.virtualParams)) {
161
- for (const param of self.virtualParams) {
162
- code += (0, translator_1.indent)((state?.tabSize || 0) + 1);
163
- code += yield* param.toEmbeddedNameTS((0, translator_1.shiftState)(state, code, { inline: true }));
164
- code += '\n';
165
- }
166
- }
167
- for (const variable of self.variables) {
168
- const ts = yield* variable.defaultValue?.toEmbeddedTS?.() ?? utils.returnOrigin('');
169
- if (['__IDENTIFIER__', '__IDENTIFIER__()'].includes(ts)) {
170
- IDENTIFIERMAP.add(variable);
171
- }
172
- if (!advanceMap.get(variable)) {
173
- code += `${(0, translator_1.indent)((state?.tabSize || 0) + 1)}let `;
174
- code += yield* variable.toEmbeddedTS((0, translator_1.shiftState)(state, code, { inline: true }));
175
- code += ';\n';
176
- }
177
- }
178
- for (const ret of self.returns) {
179
- const ts = yield* ret.defaultValue?.toEmbeddedTS?.() ?? (0, time_slicing_1.returnOrigin)('');
180
- if (['__IDENTIFIER__', '__IDENTIFIER__()'].includes(ts)) {
181
- IDENTIFIERMAP.add(ret);
182
- }
183
- if (!advanceMap.get(ret)) {
184
- code += `${(0, translator_1.indent)((state?.tabSize || 0) + 1)}let `;
185
- code += yield* ret.toEmbeddedTS((0, translator_1.shiftState)(state, code, { inline: true }));
186
- code += ';\n';
187
- }
188
- }
189
- yield* (0, time_slicing_1.wrapIteratorToGenerator)(advanceMap.entries(), function* warpForEachGenerator([node, assignment]) {
190
- // 有默认值的用默认值来推导类型, 但是如果是__IDENTIFIER__或者__IDENTIFIER__(),就不需要默认值来推导了
191
- if (node.defaultValue?.expression && !IDENTIFIERMAP.has(node)) {
192
- code += `${(0, translator_1.indent)((state?.tabSize || 0) + 1)}let `;
193
- code += yield* node.toEmbeddedTS((0, translator_1.shiftState)(state, code, { inline: true }));
194
- return;
195
- }
196
- code += `${(0, translator_1.indent)((state?.tabSize || 0) + 1)}// @ts-ignore\n`;
197
- code += `${(0, translator_1.indent)((state?.tabSize || 0) + 1)}let `;
198
- code += yield* node.toEmbeddedTS((0, translator_1.shiftState)(state, code, { inline: true }));
199
- if (asserts.isBatchAssignment(assignment)) {
200
- yield* (0, time_slicing_1.wrapForEachToGenerator)(assignment.assignmentLines, function* warpForEachGenerator({ leftIndex, rightIndex }) {
201
- const leftCode = leftIndex.length === 1
202
- ? yield* assignment.left.expression.toEmbeddedTS((0, translator_1.shiftState)(state, code, { inline: true }))
203
- : yield* assignment.left.members[leftIndex[1]]?.toEmbeddedTS((0, translator_1.shiftState)(state, code, { inline: true })) ??
204
- (0, time_slicing_1.returnOrigin)('');
205
- if (leftCode === node.name) {
206
- const rightNode = rightIndex.length === 1
207
- ? assignment.rights[rightIndex[0]]?.expression
208
- : assignment.rights[rightIndex[0]]?.members[rightIndex[1]];
209
- // 当右边有明确类型时,直接使用其类型。旧版本数据查询不能直接使用其 typeAnnotation
210
- if (rightNode?.typeAnnotation && !(asserts.isCallQueryComponent(rightNode) && !rightNode.isAutoInfer())) {
211
- if (rightNode.concept === 'NewComposite' && rightNode.typeAnnotation?.typeKind === 'anonymousStructure') {
212
- code += '= ';
213
- code += (yield* rightNode.getInitCode((0, translator_1.shiftState)(state, code, { inline: true }))) || 'null';
214
- }
215
- else if (rightNode.concept === 'NewComposite' && rightNode.typeAnnotation?.typeKind === 'generic') {
216
- code += '= ';
217
- code += (yield* rightNode.getNewCompositeCode((0, translator_1.shiftState)(state, code, { inline: true }))) || 'null';
218
- }
219
- else {
220
- code += ': ';
221
- code += yield* rightNode.typeAnnotation?.toEmbeddedTS((0, translator_1.shiftState)(state, code, { inline: true })) ??
222
- (0, time_slicing_1.returnOrigin)('null');
223
- }
224
- }
225
- else {
226
- code += ' = ';
227
- const rightCode = yield* rightNode?.toEmbeddedTS((0, translator_1.shiftState)(state, code, { inline: true })) ??
228
- (0, time_slicing_1.returnOrigin)('');
229
- code += yield* self.getRightCode(rightCode, assignment, rightNode);
230
- }
231
- }
232
- });
233
- }
234
- else if (['NewList', 'NewMap'].includes(assignment.right?.concept) &&
235
- !assignment.right?.typeAnnotation) {
236
- const rightNode = assignment.right;
237
- code += ' = ';
238
- code += yield* rightNode.getInitCode((0, translator_1.shiftState)(state, code, { inline: true }));
239
- }
240
- else if (assignment.right?.concept === 'NewComposite' &&
241
- assignment.right?.typeAnnotation?.typeKind === 'anonymousStructure') {
242
- const rightNode = assignment.right;
243
- code += ' = ';
244
- code += yield* rightNode.getInitCode((0, translator_1.shiftState)(state, code, { inline: true }));
245
- }
246
- else if (assignment.right?.concept === 'NewComposite' &&
247
- assignment.right?.typeAnnotation?.typeKind === 'generic') {
248
- const rightNode = assignment.right;
249
- code += ' = ';
250
- code += yield* rightNode.getNewCompositeCode((0, translator_1.shiftState)(state, code, { inline: true }));
251
- }
252
- else {
253
- const rightNode = assignment.right;
254
- // 当右边有明确类型时,直接使用其类型。旧版本数据查询不能直接使用其 typeAnnotation
255
- if (rightNode?.typeAnnotation && !(asserts.isCallQueryComponent(rightNode) && !rightNode.isAutoInfer())) {
256
- code += ': ';
257
- code += yield* rightNode.typeAnnotation?.toEmbeddedTS((0, translator_1.shiftState)(state, code, { inline: true })) ??
258
- (0, time_slicing_1.returnOrigin)('null');
259
- }
260
- else {
261
- code += ' = ';
262
- let rightCode = '';
263
- // 因为右侧枚举要赋值就得new 一下;
264
- if (rightNode &&
265
- asserts.isIdentifier(rightNode) &&
266
- rightNode.namespace &&
267
- rightNode.namespace.endsWith('enums')) {
268
- rightCode += 'new ';
269
- }
270
- rightCode +=
271
- rightNode && rightNode.toEmbeddedTS
272
- ? yield* rightNode.toEmbeddedTS((0, translator_1.shiftState)(state, code, { inline: true }))
273
- : '__RIGHT__';
274
- code += yield* self.getRightCode(rightCode, assignment, rightNode);
275
- }
276
- }
277
- code += ';\n';
278
- });
279
- // 参数的默认值是__IDENTIFIER__或者__IDENTIFIER__()时不赋默认值,但是需要ts翻译出来进行报错校验
280
- if (!hideDefaultValue) {
281
- for (const node of IDENTIFIERMAP.values()) {
282
- code += yield* node.defaultValue.toEmbeddedTS((0, translator_1.shiftState)(state, code, { inline: true }));
283
- code += '; ';
284
- }
285
- code += '\n';
286
- }
287
- if (!this.body.length && this.returns.length) {
288
- code += `${(0, translator_1.indent)((state?.tabSize || 0) + 1)}return ${this.returns[0].name};\n`;
289
- }
290
- else {
291
- // 如果长度小于2 并且不是虚拟节点就 加 报错,
292
- if (self.body.length <= 2 && !asserts.isNamespace(self.parentNode)) {
293
- if (self.body.length && self.body[0].concept === 'JavaLogic') {
294
- code += '';
295
- }
296
- else {
297
- code += (0, translator_1.indent)((state?.tabSize || 0) + 1);
298
- code += 'const __LogicEmpty: any = null;';
299
- }
300
- }
301
- yield* (0, time_slicing_1.wrapForEachToGenerator)(self.body, function* warpForEachGenerator(item) {
302
- code += yield* item.toEmbeddedTS?.((0, translator_1.shiftState)(state, code, { tabSize: (state?.tabSize || 0) + 1 })) ??
303
- (0, time_slicing_1.returnOrigin)('');
304
- code += ';\n';
305
- });
306
- }
307
- // 在body渲染完成之后把其余的节点放到下面
308
- yield* (0, time_slicing_1.wrapForEachToGenerator)(self.playground, function* warpForEachGenerator(item) {
309
- code += yield* item.toEmbeddedTS((0, translator_1.shiftState)(state, code, { tabSize: (state?.tabSize || 0) + 1 }));
310
- code += ';\n';
311
- });
312
- if (!hideDefaultValue) {
313
- function* setPlaygroundCode(arr, name) {
314
- if (arr.length) {
315
- code += `${(0, translator_1.indent)((state?.tabSize || 0) + 1)}/* -----以下是 ${name} 的默认值草稿------ */\n`;
316
- }
317
- for (const item1 of arr) {
318
- for (const item of item1.defaultValue?.playground ?? []) {
319
- code += yield* item.toEmbeddedTS((0, translator_1.shiftState)(state, code, { tabSize: (state?.tabSize || 0) + 1 }));
320
- code += ';\n';
321
- }
322
- }
323
- }
324
- yield* setPlaygroundCode(self.variables, 'variables');
325
- yield* setPlaygroundCode(self.returns, 'returns');
326
- yield* setPlaygroundCode(self.params, 'params');
327
- }
328
- code += `${(0, translator_1.indent)(state?.tabSize || 0)}}`;
329
- if (prefix === 'inObject') {
330
- code += `,`;
331
- }
332
- code += '\n';
333
- return code;
334
- }
335
- };
336
- /** 类名 */
337
- BusinessLogic.ConceptName = 'BusinessLogic';
338
- /** 继承链 */
339
- BusinessLogic.inheritanceChain = ['Logic', 'BaseNode'];
340
- __decorate([
341
- (0, decorators_1.property)('concept')
342
- ], BusinessLogic.prototype, "concept", void 0);
343
- __decorate([
344
- (0, decorators_1.property)()
345
- ], BusinessLogic.prototype, "isPublic", void 0);
346
- __decorate([
347
- translator_1.withSourceMapGenerator
348
- ], BusinessLogic.prototype, "toEmbeddedTS", null);
349
- BusinessLogic = BusinessLogic_1 = __decorate([
350
- (0, decorators_1.concept)('业务组件逻辑')
351
- ], BusinessLogic);
352
- exports.BusinessLogic = BusinessLogic;
353
- exports.default = BusinessLogic;
354
- //================================================================================
355
- // ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
356
- // 自动生成的代码已结束。下面可以手动编写。
357
- //================================================================================
358
- //# sourceMappingURL=BusinessLogic__.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BusinessLogic__.js","sourceRoot":"","sources":["../../src/concepts/BusinessLogic__.ts"],"names":[],"mappings":"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"}