@scriptc/compiler 0.0.0 → 0.0.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 (206) hide show
  1. package/LICENSE +202 -0
  2. package/ambient/package.json +3 -0
  3. package/ambient/scriptc-node-fallback.d.ts +3001 -0
  4. package/ambient/scriptc-overrides.d.ts +95 -0
  5. package/ambient/scriptc.d.ts +74 -0
  6. package/dist/backend/cc.d.ts +169 -0
  7. package/dist/backend/cc.js +897 -0
  8. package/dist/backend/cc.js.map +1 -0
  9. package/dist/backend/emission/emit-async.d.ts +145 -0
  10. package/dist/backend/emission/emit-async.js +996 -0
  11. package/dist/backend/emission/emit-async.js.map +1 -0
  12. package/dist/backend/emission/emit-exprs.d.ts +3 -0
  13. package/dist/backend/emission/emit-exprs.js +5947 -0
  14. package/dist/backend/emission/emit-exprs.js.map +1 -0
  15. package/dist/backend/emission/emit-island.d.ts +45 -0
  16. package/dist/backend/emission/emit-island.js +271 -0
  17. package/dist/backend/emission/emit-island.js.map +1 -0
  18. package/dist/backend/emission/emit-shapes.d.ts +142 -0
  19. package/dist/backend/emission/emit-shapes.js +575 -0
  20. package/dist/backend/emission/emit-shapes.js.map +1 -0
  21. package/dist/backend/emission/emit-stmts.d.ts +78 -0
  22. package/dist/backend/emission/emit-stmts.js +960 -0
  23. package/dist/backend/emission/emit-stmts.js.map +1 -0
  24. package/dist/backend/emission/emit-types.d.ts +65 -0
  25. package/dist/backend/emission/emit-types.js +652 -0
  26. package/dist/backend/emission/emit-types.js.map +1 -0
  27. package/dist/backend/emission/emit-walkers.d.ts +154 -0
  28. package/dist/backend/emission/emit-walkers.js +1587 -0
  29. package/dist/backend/emission/emit-walkers.js.map +1 -0
  30. package/dist/backend/emission/emitter.d.ts +452 -0
  31. package/dist/backend/emission/emitter.js +1249 -0
  32. package/dist/backend/emission/emitter.js.map +1 -0
  33. package/dist/backend/emission/may-throw.d.ts +15 -0
  34. package/dist/backend/emission/may-throw.js +250 -0
  35. package/dist/backend/emission/may-throw.js.map +1 -0
  36. package/dist/backend/llvm/blocks.d.ts +21 -0
  37. package/dist/backend/llvm/blocks.js +68 -0
  38. package/dist/backend/llvm/blocks.js.map +1 -0
  39. package/dist/backend/llvm/classes.d.ts +84 -0
  40. package/dist/backend/llvm/classes.js +438 -0
  41. package/dist/backend/llvm/classes.js.map +1 -0
  42. package/dist/backend/llvm/dyn.d.ts +123 -0
  43. package/dist/backend/llvm/dyn.js +2624 -0
  44. package/dist/backend/llvm/dyn.js.map +1 -0
  45. package/dist/backend/llvm/emitter.d.ts +3 -0
  46. package/dist/backend/llvm/emitter.js +10087 -0
  47. package/dist/backend/llvm/emitter.js.map +1 -0
  48. package/dist/backend/llvm/shapes.d.ts +78 -0
  49. package/dist/backend/llvm/shapes.js +754 -0
  50. package/dist/backend/llvm/shapes.js.map +1 -0
  51. package/dist/backend/llvm/unsupported.d.ts +6 -0
  52. package/dist/backend/llvm/unsupported.js +12 -0
  53. package/dist/backend/llvm/unsupported.js.map +1 -0
  54. package/dist/backend/llvm/walkers.d.ts +58 -0
  55. package/dist/backend/llvm/walkers.js +793 -0
  56. package/dist/backend/llvm/walkers.js.map +1 -0
  57. package/dist/backend/mangle.d.ts +124 -0
  58. package/dist/backend/mangle.js +232 -0
  59. package/dist/backend/mangle.js.map +1 -0
  60. package/dist/coverage/report.d.ts +64 -0
  61. package/dist/coverage/report.js +226 -0
  62. package/dist/coverage/report.js.map +1 -0
  63. package/dist/diagnostics/diagnostic.d.ts +140 -0
  64. package/dist/diagnostics/diagnostic.js +458 -0
  65. package/dist/diagnostics/diagnostic.js.map +1 -0
  66. package/dist/diagnostics/render.d.ts +11 -0
  67. package/dist/diagnostics/render.js +58 -0
  68. package/dist/diagnostics/render.js.map +1 -0
  69. package/dist/frontend/cjs-lexer.d.ts +20 -0
  70. package/dist/frontend/cjs-lexer.js +813 -0
  71. package/dist/frontend/cjs-lexer.js.map +1 -0
  72. package/dist/frontend/lowering/http2-constants.d.ts +1 -0
  73. package/dist/frontend/lowering/http2-constants.js +251 -0
  74. package/dist/frontend/lowering/http2-constants.js.map +1 -0
  75. package/dist/frontend/lowering/lib-boundary.d.ts +6 -0
  76. package/dist/frontend/lowering/lib-boundary.js +143 -0
  77. package/dist/frontend/lowering/lib-boundary.js.map +1 -0
  78. package/dist/frontend/lowering/lower-assert.d.ts +18 -0
  79. package/dist/frontend/lowering/lower-assert.js +1269 -0
  80. package/dist/frontend/lowering/lower-assert.js.map +1 -0
  81. package/dist/frontend/lowering/lower-builtins.d.ts +511 -0
  82. package/dist/frontend/lowering/lower-builtins.js +5249 -0
  83. package/dist/frontend/lowering/lower-builtins.js.map +1 -0
  84. package/dist/frontend/lowering/lower-calls.d.ts +581 -0
  85. package/dist/frontend/lowering/lower-calls.js +6281 -0
  86. package/dist/frontend/lowering/lower-calls.js.map +1 -0
  87. package/dist/frontend/lowering/lower-classes.d.ts +727 -0
  88. package/dist/frontend/lowering/lower-classes.js +4701 -0
  89. package/dist/frontend/lowering/lower-classes.js.map +1 -0
  90. package/dist/frontend/lowering/lower-comptime.d.ts +53 -0
  91. package/dist/frontend/lowering/lower-comptime.js +244 -0
  92. package/dist/frontend/lowering/lower-comptime.js.map +1 -0
  93. package/dist/frontend/lowering/lower-containers.d.ts +483 -0
  94. package/dist/frontend/lowering/lower-containers.js +6281 -0
  95. package/dist/frontend/lowering/lower-containers.js.map +1 -0
  96. package/dist/frontend/lowering/lower-dgram.d.ts +20 -0
  97. package/dist/frontend/lowering/lower-dgram.js +319 -0
  98. package/dist/frontend/lowering/lower-dgram.js.map +1 -0
  99. package/dist/frontend/lowering/lower-emitter.d.ts +10 -0
  100. package/dist/frontend/lowering/lower-emitter.js +688 -0
  101. package/dist/frontend/lowering/lower-emitter.js.map +1 -0
  102. package/dist/frontend/lowering/lower-enums.d.ts +22 -0
  103. package/dist/frontend/lowering/lower-enums.js +235 -0
  104. package/dist/frontend/lowering/lower-enums.js.map +1 -0
  105. package/dist/frontend/lowering/lower-expando.d.ts +35 -0
  106. package/dist/frontend/lowering/lower-expando.js +276 -0
  107. package/dist/frontend/lowering/lower-expando.js.map +1 -0
  108. package/dist/frontend/lowering/lower-exprs.d.ts +524 -0
  109. package/dist/frontend/lowering/lower-exprs.js +8099 -0
  110. package/dist/frontend/lowering/lower-exprs.js.map +1 -0
  111. package/dist/frontend/lowering/lower-generators.d.ts +50 -0
  112. package/dist/frontend/lowering/lower-generators.js +421 -0
  113. package/dist/frontend/lowering/lower-generators.js.map +1 -0
  114. package/dist/frontend/lowering/lower-inspect.d.ts +20 -0
  115. package/dist/frontend/lowering/lower-inspect.js +1069 -0
  116. package/dist/frontend/lowering/lower-inspect.js.map +1 -0
  117. package/dist/frontend/lowering/lower-island.d.ts +108 -0
  118. package/dist/frontend/lowering/lower-island.js +650 -0
  119. package/dist/frontend/lowering/lower-island.js.map +1 -0
  120. package/dist/frontend/lowering/lower-mixins.d.ts +96 -0
  121. package/dist/frontend/lowering/lower-mixins.js +534 -0
  122. package/dist/frontend/lowering/lower-mixins.js.map +1 -0
  123. package/dist/frontend/lowering/lower-modules.d.ts +135 -0
  124. package/dist/frontend/lowering/lower-modules.js +1613 -0
  125. package/dist/frontend/lowering/lower-modules.js.map +1 -0
  126. package/dist/frontend/lowering/lower-namespaces.d.ts +168 -0
  127. package/dist/frontend/lowering/lower-namespaces.js +706 -0
  128. package/dist/frontend/lowering/lower-namespaces.js.map +1 -0
  129. package/dist/frontend/lowering/lower-server.d.ts +90 -0
  130. package/dist/frontend/lowering/lower-server.js +3471 -0
  131. package/dist/frontend/lowering/lower-server.js.map +1 -0
  132. package/dist/frontend/lowering/lower-stmts.d.ts +361 -0
  133. package/dist/frontend/lowering/lower-stmts.js +5341 -0
  134. package/dist/frontend/lowering/lower-stmts.js.map +1 -0
  135. package/dist/frontend/lowering/lower-stream.d.ts +88 -0
  136. package/dist/frontend/lowering/lower-stream.js +1533 -0
  137. package/dist/frontend/lowering/lower-stream.js.map +1 -0
  138. package/dist/frontend/lowering/lower-test.d.ts +27 -0
  139. package/dist/frontend/lowering/lower-test.js +353 -0
  140. package/dist/frontend/lowering/lower-test.js.map +1 -0
  141. package/dist/frontend/lowering/lowerer.d.ts +1748 -0
  142. package/dist/frontend/lowering/lowerer.js +6256 -0
  143. package/dist/frontend/lowering/lowerer.js.map +1 -0
  144. package/dist/frontend/lowering/surfaces.d.ts +272 -0
  145. package/dist/frontend/lowering/surfaces.js +1096 -0
  146. package/dist/frontend/lowering/surfaces.js.map +1 -0
  147. package/dist/frontend/npm-static.d.ts +55 -0
  148. package/dist/frontend/npm-static.js +300 -0
  149. package/dist/frontend/npm-static.js.map +1 -0
  150. package/dist/frontend/npm.d.ts +330 -0
  151. package/dist/frontend/npm.js +1259 -0
  152. package/dist/frontend/npm.js.map +1 -0
  153. package/dist/frontend/program.d.ts +186 -0
  154. package/dist/frontend/program.js +2172 -0
  155. package/dist/frontend/program.js.map +1 -0
  156. package/dist/frontend/provenance-registry.d.ts +48 -0
  157. package/dist/frontend/provenance-registry.js +87 -0
  158. package/dist/frontend/provenance-registry.js.map +1 -0
  159. package/dist/frontend/provenance.d.ts +6 -0
  160. package/dist/frontend/provenance.js +459 -0
  161. package/dist/frontend/provenance.js.map +1 -0
  162. package/dist/frontend/resolve.d.ts +56 -0
  163. package/dist/frontend/resolve.js +682 -0
  164. package/dist/frontend/resolve.js.map +1 -0
  165. package/dist/frontend/shared.d.ts +60 -0
  166. package/dist/frontend/shared.js +232 -0
  167. package/dist/frontend/shared.js.map +1 -0
  168. package/dist/frontend/ts7/adapter.d.ts +7 -0
  169. package/dist/frontend/ts7/adapter.js +54 -0
  170. package/dist/frontend/ts7/adapter.js.map +1 -0
  171. package/dist/frontend/ts7/ast.d.ts +50 -0
  172. package/dist/frontend/ts7/ast.js +211 -0
  173. package/dist/frontend/ts7/ast.js.map +1 -0
  174. package/dist/frontend/ts7/census-check.d.ts +1 -0
  175. package/dist/frontend/ts7/census-check.js +12 -0
  176. package/dist/frontend/ts7/census-check.js.map +1 -0
  177. package/dist/frontend/ts7/checker.d.ts +140 -0
  178. package/dist/frontend/ts7/checker.js +544 -0
  179. package/dist/frontend/ts7/checker.js.map +1 -0
  180. package/dist/frontend/ts7/enums.d.ts +18 -0
  181. package/dist/frontend/ts7/enums.js +43 -0
  182. package/dist/frontend/ts7/enums.js.map +1 -0
  183. package/dist/frontend/ts7/program.d.ts +99 -0
  184. package/dist/frontend/ts7/program.js +278 -0
  185. package/dist/frontend/ts7/program.js.map +1 -0
  186. package/dist/frontend/ts7/world-check.d.ts +3 -0
  187. package/dist/frontend/ts7/world-check.js +34 -0
  188. package/dist/frontend/ts7/world-check.js.map +1 -0
  189. package/dist/frontend/types.d.ts +205 -0
  190. package/dist/frontend/types.js +2485 -0
  191. package/dist/frontend/types.js.map +1 -0
  192. package/dist/index.d.ts +85 -0
  193. package/dist/index.js +424 -0
  194. package/dist/index.js.map +1 -0
  195. package/dist/ir/nodes.d.ts +4334 -0
  196. package/dist/ir/nodes.js +1906 -0
  197. package/dist/ir/nodes.js.map +1 -0
  198. package/dist/ir/serialize.d.ts +4 -0
  199. package/dist/ir/serialize.js +34 -0
  200. package/dist/ir/serialize.js.map +1 -0
  201. package/dist/ir/validate.d.ts +36 -0
  202. package/dist/ir/validate.js +4884 -0
  203. package/dist/ir/validate.js.map +1 -0
  204. package/package.json +30 -6
  205. package/README.md +0 -3
  206. package/index.js +0 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"surfaces.js","sourceRoot":"","sources":["../../../src/frontend/lowering/surfaces.ts"],"names":[],"mappings":"AAAA;;;;;qEAKqE;AACrE,OAAO,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAGxC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,EAAiD,qBAAqB,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC/L,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE/D,2EAA2E;AAC3E,MAAM,CAAC,MAAM,gBAAgB,GAAyF;IACpH,sEAAsE;IACtE,kDAAkD;IAClD,CAAC,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,qCAAqC,EAAE;IACpG,qEAAqE;IACrE,8DAA8D;IAC9D,uEAAuE;IACvE,yEAAyE;IACzE,sEAAsE;IACtE,kEAAkE;IAClE,wEAAwE;IACxE,6BAA6B;IAC7B,sEAAsE;IACtE,wEAAwE;IACxE,yEAAyE;IACzE,8DAA8D;IAC9D,wEAAwE;IACxE,oDAAoD;IACpD,CAAC,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE;IAC5E,CAAC,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,qBAAqB,EAAE;IACrF,sEAAsE;IACtE,kEAAkE;IAClE,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE;QAC7B,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,kIAAkI;KAC5I;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAyF;IACpH,0EAA0E;IAC1E,+BAA+B;IAC/B,CAAC,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;IACnD,wEAAwE;IACxE,2EAA2E;IAC3E,wBAAwB;IACxB,qEAAqE;IACrE,uEAAuE;IACvE,kEAAkE;IAClE,6EAA6E;IAC7E,sEAAsE;IACtE,oEAAoE;IACpE,8BAA8B;IAC9B,sEAAsE;IACtE,4EAA4E;IAC5E,CAAC,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,oBAAoB,EAAE;IACnF,CAAC,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,oBAAoB,EAAE;IACnF,uEAAuE;IACvE,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,kBAAkB,EAAE;IAC9E,sEAAsE;IACtE,0EAA0E;CAC3E,CAAC;AAEF;;0EAE0E;AAC1E,MAAM,CAAC,MAAM,YAAY,GACvB,oGAAoG,CAAC;AAEvG;;;;;;;;;;;;;;;;;;;0CAmB0C;AAE1C;;;;;2DAK2D;AAC3D,MAAM,UAAU,yBAAyB,CAAC,IAAmB;IAC3D,IAAI,CAAC,GAAG,IAAI,CAAC;IACb,OAAO,EAAE,CAAC,yBAAyB,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC;QAAE,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC;IAC1G,IAAI,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC,CAAC,uBAAuB;IAC5D,IAAI,EAAE,CAAC,mBAAmB,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9F,IAAI,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW,IAAI,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,YAAY;QAC7E,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC;IACtD,IAAI,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,oBAAoB,CAAC,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IACrE,IAAI,EAAE,CAAC,uBAAuB,CAAC,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC,QAAQ,KAAK,EAAE,CAAC,UAAU,CAAC,UAAU,IAAI,CAAC,CAAC,QAAQ,KAAK,EAAE,CAAC,UAAU,CAAC,SAAS;YACjF,CAAC,CAAC,QAAQ,KAAK,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACpD,OAAO,yBAAyB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IAC9C,CAAC;IACD,IAAI,EAAE,CAAC,yBAAyB,CAAC,CAAC,CAAC,EAAE,CAAC;QACpC,OAAO,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAC9B,EAAE,CAAC,6BAA6B,CAAC,CAAC,CAAC;YACnC,CAAC,EAAE,CAAC,oBAAoB,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,sBAAsB,CAAC,CAAC,CAAC,IAAI,CAAC;gBAC/D,yBAAyB,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IACjD,CAAC;IACD,IAAI,EAAE,CAAC,wBAAwB,CAAC,CAAC,CAAC,EAAE,CAAC;QACnC,OAAO,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,eAAe,CAAC,EAAE,CAAC,IAAI,yBAAyB,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5F,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;4EAI4E;AAC5E,MAAM,UAAU,oBAAoB,CAClC,CAAU,EACV,IAAiC,EACjC,GAAW,EACX,GAAW,EACX,UAA+B,EAC/B,aAAqB,EACrB,YAAiD;IAEjD,IAAI,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;QACxB,CAAC,CAAC,UAAU,CAAC,GAAG,GAAG,YAAY,GAAG,GAAG,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,GAAG,CAAC,IAAI,aAAa,CAAC,CAAC;IACrF,CAAC;IACD,MAAM,KAAK,GAAG,EAAE,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC;IACtE,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,yBAAyB,CAAC,KAAK,CAAC,EAAE,CAAC;QACxD,CAAC,CAAC,UAAU,CACV,oBAAoB,GAAG,YAAY,GAAG,2BAA2B,EACjE,IAAI,EACJ,kJAAkJ,CACnJ,CAAC;IACJ,CAAC;IACD,0CAA0C;AAC5C,CAAC;AAED;;iEAEiE;AACjE,MAAM,CAAC,MAAM,8BAA8B,GAAwB,IAAI,GAAG,CAAC;IACzE,OAAO,EAAE,MAAM,EAAE,kBAAkB,EAAE,aAAa,EAAE,QAAQ,EAAE,SAAS;IACvE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,oBAAoB,EAAE,sBAAsB;IACzE,cAAc,EAAE,WAAW,EAAE,QAAQ,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM;IACxE,MAAM,EAAE,UAAU,EAAE,mBAAmB,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY;IAC1E,SAAS,EAAE,eAAe;CAC3B,CAAC,CAAC;AAEH;;;+DAG+D;AAC/D,MAAM,CAAC,MAAM,8BAA8B,GAAwB,IAAI,GAAG,CAAC;IACzE,iBAAiB,EAAE,gBAAgB,EAAE,eAAe,EAAE,6BAA6B;IACnF,gBAAgB,EAAE,eAAe,EAAE,oBAAoB,EAAE,sBAAsB;IAC/E,WAAW,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,eAAe;IACzE,SAAS,EAAE,gBAAgB,EAAE,6BAA6B,EAAE,gBAAgB;IAC5E,mBAAmB,EAAE,eAAe;CACrC,CAAC,CAAC;AAEH,8DAA8D;AAC9D,MAAM,CAAC,MAAM,+BAA+B,GAAwB,IAAI,GAAG,CAAC;IAC1E,GAAG,8BAA8B;IACjC,IAAI,EAAE,MAAM,EAAE,qBAAqB,EAAE,SAAS,EAAE,kBAAkB,EAAE,KAAK;IACzE,SAAS,EAAE,WAAW,EAAE,eAAe,EAAE,kBAAkB,EAAE,KAAK;IAClE,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,KAAK,EAAE,kBAAkB;IACnE,sBAAsB,EAAE,oBAAoB,EAAE,eAAe;IAC7D,gBAAgB,EAAE,YAAY,EAAE,SAAS,EAAE,kBAAkB;IAC7D,gBAAgB,EAAE,SAAS,EAAE,YAAY;CAC1C,CAAC,CAAC;AAEH;;qEAEqE;AACrE,MAAM,CAAC,MAAM,6BAA6B,GAAwB,IAAI,GAAG,CAAC;IACxE,eAAe,EAAE,cAAc,EAAE,aAAa,EAAE,eAAe,EAAE,IAAI;IACrE,MAAM,EAAE,SAAS,EAAE,kBAAkB,EAAE,KAAK,EAAE,SAAS,EAAE,WAAW;IACpE,aAAa,EAAE,kBAAkB,EAAE,eAAe,EAAE,kBAAkB;IACtE,WAAW,EAAE,uBAAuB,EAAE,KAAK,EAAE,YAAY,EAAE,YAAY;IACvE,SAAS,EAAE,YAAY,EAAE,gBAAgB,EAAE,KAAK,EAAE,kBAAkB;IACpE,sBAAsB,EAAE,aAAa,EAAE,iBAAiB;IACxD,oBAAoB,EAAE,aAAa,EAAE,aAAa,EAAE,eAAe;IACnE,eAAe,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,gBAAgB;IACvE,SAAS,EAAE,YAAY;CACxB,CAAC,CAAC;AAEH;qBACqB;AACrB,MAAM,CAAC,MAAM,sCAAsC,GAAwB,IAAI,GAAG,CAAC;IACjF,GAAG,6BAA6B;IAChC,YAAY,EAAE,4BAA4B,EAAE,aAAa;IACzD,kBAAkB,EAAE,oBAAoB,EAAE,qBAAqB;IAC/D,0BAA0B,EAAE,SAAS,EAAE,iBAAiB;IACxD,0BAA0B,EAAE,sBAAsB,EAAE,eAAe;IACnE,UAAU,EAAE,kBAAkB,EAAE,iBAAiB;IACjD,wBAAwB;CACzB,CAAC,CAAC;AAEH,yCAAyC;AACzC,MAAM,CAAC,MAAM,2BAA2B,GAAwB,IAAI,GAAG,CAAC;IACtE,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ;CAChD,CAAC,CAAC;AAEH,+CAA+C;AAC/C,MAAM,CAAC,MAAM,6BAA6B,GAAwB,IAAI,GAAG,CAAC;IACxE,UAAU,EAAE,eAAe,EAAE,WAAW;CACzC,CAAC,CAAC;AAEH,iDAAiD;AACjD,MAAM,CAAC,MAAM,gCAAgC,GAAwB,IAAI,GAAG,CAAC;IAC3E,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ;CAC9C,CAAC,CAAC;AAEH,2CAA2C;AAC3C,MAAM,CAAC,MAAM,6BAA6B,GAAwB,IAAI,GAAG,CAAC;IACxE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU;CAC9C,CAAC,CAAC;AAEH,yDAAyD;AACzD,MAAM,CAAC,MAAM,2BAA2B,GAAwB,IAAI,GAAG,CAAC;IACtE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa;IACpE,yBAAyB,EAAE,QAAQ,EAAE,WAAW,EAAE,mBAAmB;IACrE,SAAS,EAAE,QAAQ;CACpB,CAAC,CAAC;AAEH;;;oCAGoC;AACpC,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC;IACnC,MAAM;IACN,KAAK;IACL,QAAQ;IACR,KAAK;IACL,QAAQ;IACR,SAAS;IACT,MAAM;IACN,WAAW;IACX,UAAU;IACV,eAAe;IACf,MAAM;IACN,OAAO;IACP,IAAI;IACJ,SAAS;IACT,QAAQ;IACR,aAAa;IACb,SAAS;IACT,UAAU;IACV,MAAM;IACN,OAAO;CACR,CAAC,CAAC;AAEH;;;+BAG+B;AAC/B,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC;AAExF;gEACgE;AAChE,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC;AAEjF;;;;;wBAKwB;AACxB,MAAM,CAAC,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC;IACzC,OAAO;IACP,cAAc;IACd,YAAY;IACZ,qBAAqB;IACrB,YAAY;IACZ,cAAc;IACd,gBAAgB;CACjB,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,mBAAmB,GAA+C;IAC7E,CAAC,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,GAAG;IACpC,CAAC,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,GAAG;IACrC,CAAC,EAAE,CAAC,UAAU,CAAC,mBAAmB,CAAC,EAAE,GAAG;IACxC,CAAC,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,GAAG;IACrC,CAAC,EAAE,CAAC,UAAU,CAAC,oBAAoB,CAAC,EAAE,GAAG;IACzC,CAAC,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,GAAG;IACnC,CAAC,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,GAAG;IACrC,CAAC,EAAE,CAAC,UAAU,CAAC,2BAA2B,CAAC,EAAE,IAAI;IACjD,CAAC,EAAE,CAAC,UAAU,CAAC,iCAAiC,CAAC,EAAE,IAAI;IACvD,CAAC,EAAE,CAAC,UAAU,CAAC,4CAA4C,CAAC,EAAE,KAAK;IACnE,CAAC,EAAE,CAAC,UAAU,CAAC,kBAAkB,CAAC,EAAE,GAAG;IACvC,CAAC,EAAE,CAAC,UAAU,CAAC,2BAA2B,CAAC,EAAE,IAAI;CAClD,CAAC;AAEF;;;;;;;sDAOsD;AACtD,MAAM,CAAC,MAAM,WAAW,GAGpB;IACF,UAAU,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;IACzE,MAAM,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;IACpE,OAAO,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;IACnE,oEAAoE;IACpE,iEAAiE;IACjE,yDAAyD;IACzD,QAAQ,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;IACtE,UAAU,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;IAC1E,QAAQ,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;IACtE,KAAK,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;IAClE,kEAAkE;IAClE,wDAAwD;IACxD,SAAS,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;IAC1E,MAAM,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;IACpE,IAAI,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;IAChE,SAAS,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;IAC1E,OAAO,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;IACtE,uEAAuE;IACvE,+CAA+C;IAC/C,QAAQ,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;IACzE,SAAS,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;IACxE,kEAAkE;IAClE,4DAA4D;IAC5D,iEAAiE;IACjE,mEAAmE;IACnE,uDAAuD;IACvD,KAAK,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;IAC3E,kEAAkE;IAClE,0DAA0D;IAC1D,QAAQ,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;IACxE,MAAM,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;IACpE,iEAAiE;IACjE,wEAAwE;IACxE,iDAAiD;IACjD,WAAW,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;IAC9E,WAAW,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;IAC9E,8DAA8D;IAC9D,iEAAiE;IACjE,uEAAuE;IACvE,sDAAsD;IACtD,YAAY,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;IAC9E,YAAY,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;CACjF,CAAC;AAWF,MAAM,CAAC,MAAM,MAAM,GAAkB,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;AAE/D,MAAM,CAAC,MAAM,MAAM,GAAkB,EAAE,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;AAEpE,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,QAAgB,EAAU,EAAE,CAChE,4BAA4B,QAAQ,iDAAiD;IACrF,qFAAqF;IACrF,6DAA6D,CAAC;AAEhE,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,QAAgB,EAAU,EAAE,CACjE,+BAA+B,QAAQ,gBAAgB;IACvD,gGAAgG;IAChG,iCAAiC,CAAC;AAEpC;;;;;;;;;;;;;WAaW;AACX,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B;;;0DAGsD;IACtD,IAAI,EAAE;QACJ,sDAAsD;QACtD,2BAA2B;QAC3B,GAAG,EAAE;YACH,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;YACpE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM;YACpD,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM;YACpE,KAAK,EAAE,MAAM;YACb,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;SACvB;QAC9C,KAAK,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAwC;KACjE;IACD;;;0DAGsD;IACtD,MAAM,EAAE;QACN,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE;QACrC,WAAW,EAAE,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE;QACzC,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE;KACM;IAC9C;;;;;gDAK4C;IAC5C,MAAM,EAAE;QACN,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE;QAChD,UAAU,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE;QACnD,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE;KACY;IAC9C;;;;;0CAKsC;IACtC,OAAO,EAAE;QACP,UAAU,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE;QACxC,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE;KACQ;CAC/C,CAAC;AAEF;;;;;;gEAMgE;AAChE,MAAM,CAAC,MAAM,eAAe,GAA+D;IACzF,KAAK,EAAE,EAAE,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,EAAE;IACrC,GAAG,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,EAAE;IACjC,KAAK,EAAE,EAAE,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,EAAE;IACrC,GAAG,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,EAAE;IACjC,GAAG,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,EAAE;IACjC,MAAM,EAAE,EAAE,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC,EAAE;CACxC,CAAC;AAgBF;;;;;;yEAMyE;AACzE;;;;wCAIwC;AACxC,MAAM,eAAe,GAAgD;IACnE,IAAI,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE;IAC/E,OAAO,EAAE,EAAE,EAAE,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE;IACrF,SAAS,EAAE,EAAE,EAAE,EAAE,gBAAgB,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE;IACrE,OAAO,EAAE,EAAE,EAAE,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE;IACjE,QAAQ,EAAE,EAAE,EAAE,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,EAAE;IAC3F,OAAO,EAAE,EAAE,EAAE,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE;IACjE,UAAU,EAAE,EAAE,EAAE,EAAE,iBAAiB,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE;IACrE,QAAQ,EAAE,EAAE,EAAE,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE;IAC3E,gBAAgB,EAAE,EAAE,EAAE,EAAE,uBAAuB,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE;CACpF,CAAC;AAEF;;oDAEoD;AACpD,MAAM,qBAAqB,GAAgD;IACzE,IAAI,EAAE,EAAE,EAAE,EAAE,gBAAgB,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE;IACpF,OAAO,EAAE,EAAE,EAAE,EAAE,mBAAmB,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE;IAC1F,SAAS,EAAE,EAAE,EAAE,EAAE,qBAAqB,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE;IAC1E,OAAO,EAAE,EAAE,EAAE,EAAE,mBAAmB,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE;IACtE,QAAQ,EAAE,EAAE,EAAE,EAAE,oBAAoB,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,EAAE;IAChG,OAAO,EAAE,EAAE,EAAE,EAAE,mBAAmB,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE;IACtE,UAAU,EAAE,EAAE,EAAE,EAAE,sBAAsB,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE;IAC1E,QAAQ,EAAE,EAAE,EAAE,EAAE,oBAAoB,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE;IAChF,gBAAgB,EAAE,EAAE,EAAE,EAAE,4BAA4B,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE;CACzF,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAA4E;IACzG,EAAE,EAAE;QACF,YAAY,EAAE,EAAE,EAAE,EAAE,iBAAiB,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE;QACjF,aAAa,EAAE,EAAE,EAAE,EAAE,kBAAkB,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE;QACjF,cAAc,EAAE,EAAE,EAAE,EAAE,mBAAmB,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE;QACnF,UAAU,EAAE,EAAE,EAAE,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE;QACnE,SAAS,EAAE,EAAE,EAAE,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE;QACjE,MAAM,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE;QAC3D,SAAS,EAAE,EAAE,EAAE,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE;QACjE,WAAW,EAAE,EAAE,EAAE,EAAE,gBAAgB,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE;QAChF,QAAQ,EAAE,EAAE,EAAE,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE;QAClE,WAAW,EAAE,EAAE,EAAE,EAAE,gBAAgB,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE;QACvE,sEAAsE;QACtE,sEAAsE;QACtE,UAAU,EAAE,EAAE,EAAE,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE;QACxE,UAAU,EAAE,EAAE,EAAE,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE;QACnE,SAAS,EAAE,EAAE,EAAE,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE;QACtE,SAAS,EAAE,EAAE,EAAE,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE;QAC3E,mEAAmE;QACnE,2BAA2B;QAC3B,YAAY,EAAE,EAAE,EAAE,EAAE,iBAAiB,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE;QAC/E,sEAAsE;QACtE,4BAA4B;QAC5B,SAAS,EAAE,EAAE,EAAE,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE;QACpE,qEAAqE;QACrE,6BAA6B;QAC7B,YAAY,EAAE,EAAE,EAAE,EAAE,iBAAiB,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE;QACzE,kEAAkE;QAClE,4DAA4D;QAC5D,qEAAqE;QACrE,iEAAiE;QACjE,+CAA+C;QAC/C,QAAQ,EAAE,EAAE,EAAE,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE;QACtE,qEAAqE;QACrE,qEAAqE;QACrE,iDAAiD;QACjD,QAAQ,EAAE,EAAE,EAAE,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE;QAC/E,SAAS,EAAE,EAAE,EAAE,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE;QAC9D,mEAAmE;QACnE,oEAAoE;QACpE,KAAK,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;KACpD;IACD,aAAa,EAAE;QACb,gEAAgE;QAChE,mEAAmE;QACnE,mEAAmE;QACnE,QAAQ,EAAE,EAAE,EAAE,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;QACtG,SAAS,EAAE,EAAE,EAAE,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtG,KAAK,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtF,OAAO,EAAE,EAAE,EAAE,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE;QACrG,EAAE,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QAChF,IAAI,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QACvF,MAAM,EAAE,EAAE,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACxF,KAAK,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;KAC5F;IACD,uEAAuE;IACvE,wEAAwE;IACxE,IAAI,EAAE,eAAe;IACrB,uEAAuE;IACvE,sEAAsE;IACtE,sEAAsE;IACtE,mEAAmE;IACnE,uEAAuE;IACvE,YAAY,EAAE,eAAe;IAC7B,YAAY,EAAE,qBAAqB;IACnC,EAAE,EAAE;QACF,mEAAmE;QACnE,QAAQ,EAAE,EAAE,EAAE,EAAE,kBAAkB,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE;QAChE,OAAO,EAAE,EAAE,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE;QACzD,MAAM,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE;QACvD,wDAAwD;QACxD,OAAO,EAAE,EAAE,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE;QACzD,mEAAmE;QACnE,oEAAoE;QACpE,kEAAkE;QAClE,mDAAmD;QACnD,IAAI,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE;QACnD,8DAA8D;QAC9D,QAAQ,EAAE,EAAE,EAAE,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE;QACxD,uEAAuE;QACvE,sEAAsE;QACtE,4DAA4D;QAC5D,iBAAiB,EAAE,EAAE,EAAE,EAAE,sBAAsB,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;QAC3E,kEAAkE;QAClE,iEAAiE;QACjE,QAAQ,EAAE,EAAE,EAAE,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;KAC1D;IACD,MAAM,EAAE;QACN,UAAU,EAAE,EAAE,EAAE,EAAE,mBAAmB,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE;QACnE,kEAAkE;QAClE,oEAAoE;QACpE,oEAAoE;QACpE,wCAAwC;QACxC,WAAW,EAAE,EAAE,EAAE,EAAE,oBAAoB,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE;KAC3E;IACD,IAAI,EAAE;QACJ,qEAAqE;QACrE,kEAAkE;QAClE,qDAAqD;QACrD,WAAW,EAAE,EAAE,EAAE,EAAE,kBAAkB,EAAE,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE;QAC7E,WAAW,EAAE,EAAE,EAAE,EAAE,kBAAkB,EAAE,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE;KAC9E;IACD,GAAG,EAAE;QACH,oEAAoE;QACpE,sEAAsE;QACtE,uEAAuE;QACvE,aAAa,EAAE,EAAE,EAAE,EAAE,sBAAsB,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE;QAC/E,aAAa,EAAE,EAAE,EAAE,EAAE,mBAAmB,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE;KAC5E;IACD,aAAa,EAAE;QACb,sEAAsE;QACtE,kEAAkE;QAClE,kEAAkE;QAClE,iEAAiE;QACjE,sCAAsC;QACtC,SAAS,EAAE,EAAE,EAAE,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE;QACxF,KAAK,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE;QAC7E,sEAAsE;QACtE,sEAAsE;QACtE,qEAAqE;QACrE,uEAAuE;QACvE,YAAY,EAAE,EAAE,EAAE,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE;QACtF,QAAQ,EAAE,EAAE,EAAE,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE;KAClE;IACD,qEAAqE;IACrE,gEAAgE;IAChE,oEAAoE;IACpE,0DAA0D;IAC1D,6DAA6D;IAC7D,qEAAqE;IACrE,0BAA0B;IAC1B,IAAI,EAAE,EAAE;IACR,wEAAwE;IACxE,sEAAsE;IACtE,mCAAmC;IACnC,cAAc,EAAE,EAAE;IAClB,sEAAsE;IACtE,mEAAmE;IACnE,sEAAsE;IACtE,8CAA8C;IAC9C,2BAA2B;IAC3B,QAAQ,EAAE;QACR,eAAe,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE;KAC9D;IACD,iEAAiE;IACjE,sEAAsE;IACtE,uEAAuE;IACvE,sEAAsE;IACtE,sEAAsE;IACtE,iCAAiC;IACjC,GAAG,EAAE;QACH,qEAAqE;QACrE,oEAAoE;QACpE,eAAe;QACf,wCAAwC,EAAE,EAAE,EAAE,EAAE,uBAAuB,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE;QAClG,wCAAwC,EAAE,EAAE,EAAE,EAAE,uBAAuB,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE;KACvG;IACD,IAAI,EAAE,EAAE;IACR,kEAAkE;IAClE,kEAAkE;IAClE,qEAAqE;IACrE,uBAAuB;IACvB,GAAG,EAAE,EAAE;IACP,KAAK,EAAE,EAAE;IACT,iEAAiE;IACjE,gEAAgE;IAChE,4DAA4D;IAC5D,oEAAoE;IACpE,KAAK,EAAE,EAAE;IACT,GAAG,EAAE,EAAE;IACP,wEAAwE;IACxE,uEAAuE;IACvE,gEAAgE;IAChE,uEAAuE;IACvE,wBAAwB;IACxB,MAAM,EAAE,EAAE;IACV,eAAe,EAAE,EAAE;IACnB,oEAAoE;IACpE,kEAAkE;IAClE,sDAAsD;IACtD,IAAI,EAAE,EAAE;IACR,yEAAyE;IACzE,sEAAsE;IACtE,gEAAgE;IAChE,mEAAmE;IACnE,2CAA2C;IAC3C,iBAAiB,EAAE;QACjB,UAAU,EAAE,EAAE,EAAE,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QAC5F,YAAY,EAAE,EAAE,EAAE,EAAE,iBAAiB,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;KAC9F;IACD,wEAAwE;IACxE,sEAAsE;IACtE,sEAAsE;IACtE,qEAAqE;IACrE,0EAA0E;IAC1E,mBAAmB,EAAE;QACnB,OAAO,EAAE,EAAE,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE;QAC5D,SAAS,EAAE,EAAE,EAAE,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE;QACtE,WAAW,EAAE,EAAE,EAAE,EAAE,gBAAgB,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE;QAC1E,cAAc,EAAE,EAAE,EAAE,EAAE,mBAAmB,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE;QAC3E,oEAAoE;QACpE,wEAAwE;QACxE,cAAc,EAAE,EAAE,EAAE,EAAE,mBAAmB,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE;KAC3E;CACF,CAAC;AAEF;;;;;;;yEAOyE;AACzE,MAAM,CAAC,MAAM,qBAAqB,GAAsF;IACtH,IAAI,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE;IAClC,YAAY,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE;IAC1C,YAAY,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE;IAC3C,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE;IACjB,cAAc,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE;IACnD,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE;CAC9D,CAAC;AAEF;;mCAEmC;AACnC,MAAM,mBAAmB,GAAsF;IAC7G,IAAI,EAAE,qBAAqB,CAAC,YAAY,CAAC;IACzC,EAAE,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE;CACpB,CAAC;AAEF;;;mDAGmD;AACnD,MAAM,oBAAoB,GAAgD;IACxE,aAAa,EAAE,EAAE,EAAE,EAAE,sBAAsB,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE;IAC/E,aAAa,EAAE,EAAE,EAAE,EAAE,wBAAwB,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE;CACjF,CAAC;AAEF;;;qEAGqE;AACrE,MAAM,UAAU,kBAAkB,CAAC,CAAU,EAAE,MAAc;IAC3D,IAAI,CAAC,CAAC,cAAc,KAAK,OAAO,EAAE,CAAC;QACjC,IAAI,MAAM,KAAK,MAAM;YAAE,OAAO,kBAAkB,CAAC,YAAY,CAAC,CAAC;QAC/D,IAAI,MAAM,KAAK,KAAK;YAAE,OAAO,oBAAoB,CAAC;IACpD,CAAC;IACD,OAAO,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC;AAC9C,CAAC;AAED;;;;uDAIuD;AACvD,SAAS,QAAQ,CAAI,KAAoC,EAAE,GAAW;IACpE,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC5D,CAAC;AAED;6DAC6D;AAC7D,MAAM,UAAU,iBAAiB,CAAC,CAAU,EAAE,MAAc,EAAE,MAAc;IAC1E,MAAM,GAAG,GAAG,kBAAkB,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IAC1C,OAAO,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACjD,CAAC;AAED;mDACmD;AACnD,MAAM,UAAU,kBAAkB,CAAC,MAAc,EAAE,MAAc;IAC/D,MAAM,GAAG,GAAG,QAAQ,CAAC,0BAA0B,EAAE,MAAM,CAAC,CAAC;IACzD,OAAO,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACjD,CAAC;AAED;2CAC2C;AAC3C,MAAM,UAAU,oBAAoB,CAAC,CAAU,EAAE,MAAc,EAAE,MAAc;IAC7E,IAAI,CAAC,CAAC,cAAc,KAAK,OAAO,EAAE,CAAC;QACjC,MAAM,GAAG,GAAG,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC;QAClD,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAClD,IAAI,CAAC,KAAK,SAAS;YAAE,OAAO,CAAC,CAAC;IAChC,CAAC;IACD,MAAM,GAAG,GAAG,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;IACpD,OAAO,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACjD,CAAC;AAED;;YAEY;AACZ,MAAM,UAAU,eAAe,CAAC,KAAgC,EAAE,GAAiD;IACjH,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;IACnF,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;IAChF,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC;AACrD,CAAC;AAED;;8DAE8D;AAC9D,MAAM,CAAC,MAAM,SAAS,GACpB,0DAA0D,CAAC;AAE7D;4EAC4E;AAC5E,MAAM,iBAAiB,GACrB,oEAAoE;IACpE,wEAAwE;IACxE,sBAAsB,CAAC;AAEzB,MAAM,mBAAmB,GAAuC;IAC9D,KAAK,EAAE,iBAAiB;IACxB,QAAQ,EAAE,iBAAiB;IAC3B,SAAS,EAAE,iBAAiB;IAC5B,YAAY,EAAE,iBAAiB;IAC/B,OAAO,EACL,2DAA2D;QAC3D,oCAAoC;IACtC,OAAO,EACL,mEAAmE;QACnE,oEAAoE;IACtE,aAAa,EAAE,6EAA6E;IAC5F,YAAY,EAAE,yEAAyE;IACvF,cAAc,EACZ,iEAAiE;QACjE,kDAAkD;CACrD,CAAC;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAmE;IACxG,MAAM,EAAE,mBAAmB;IAC3B,oEAAoE;IACpE,uEAAuE;IACvE,wCAAwC;IACxC,eAAe,EAAE;QACf,OAAO,EAAE,mBAAmB,CAAC,SAAS,CAAC;QACvC,OAAO,EAAE,mBAAmB,CAAC,SAAS,CAAC;QACvC,aAAa,EAAE,mBAAmB,CAAC,eAAe,CAAC;QACnD,YAAY,EAAE,mBAAmB,CAAC,cAAc,CAAC;QACjD,cAAc,EAAE,mBAAmB,CAAC,gBAAgB,CAAC;KACtD;IACD,IAAI,EAAE;QACJ,SAAS,EACP,wEAAwE;YACxE,6EAA6E;QAC/E,oEAAoE;QACpE,4BAA4B;KAC7B;IACD,aAAa,EAAE;QACb,QAAQ,EACN,oDAAoD;YACpD,iFAAiF;KACpF;IACD,MAAM,EAAE;QACN,UAAU,EACR,8CAA8C;YAC9C,0FAA0F;KAC7F;IACD,IAAI,EAAE;QACJ,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,SAAS;QACrB,SAAS,EAAE,SAAS;QACpB,kBAAkB,EAAE,SAAS;QAC7B,oBAAoB,EAAE,SAAS;KAChC;IACD,KAAK,EAAE;QACL,OAAO,EACL,0FAA0F;YAC1F,kFAAkF;YAClF,iGAAiG;QACnG,YAAY,EACV,0EAA0E;YAC1E,sFAAsF;YACtF,uCAAuC;KAC1C;IACD,GAAG,EAAE;QACH,mBAAmB,EACjB,0FAA0F;YAC1F,+FAA+F;QACjG,OAAO,EACL,uGAAuG;YACvG,8CAA8C;KACjD;CACF,CAAC;AAEF;;;;;;0DAM0D;AACxD,MAAM,UAAU,iBAAiB,CAAC,CAAU,EAAE,MAAmC;IAC/E,MAAM,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,mBAAmB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACvD,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC;QAAE,OAAO;IAC3C,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;IAChC,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,CAAC;IAC/B,sEAAsE;IACtE,uEAAuE;IACvE,uEAAuE;IACvE,gEAAgE;IAChE,aAAa;IACb,MAAM,YAAY,GAAG,CAAC,CAAgB,EAAiB,EAAE;QACvD,IAAI,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7E,OAAO,CAAC,CAAC,IAAI,CAAC;QAChB,CAAC;QACD,IAAI,EAAE,CAAC,0BAA0B,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC;YACtE,MAAM,IAAI,GAAG,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;YACxC,IAAI,IAAI,KAAK,IAAI;gBAAE,OAAO,GAAG,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QACrD,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IACF,MAAM,SAAS,GACb,YAAY,CAAC,IAAI,CAAC;QAClB,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC7E,IAAI,IAAwB,CAAC;IAC7B,MAAM,MAAM,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3C,IAAI,MAAM,EAAE,IAAI,KAAK,SAAS,IAAI,CAAC,MAAM,KAAK,MAAM,IAAI,MAAM,KAAK,OAAO,IAAI,MAAM,KAAK,SAAS,CAAC,EAAE,CAAC;QACpG,IAAI;YACF,yFAAyF;gBACzF,oGAAoG,CAAC;IACzG,CAAC;SAAM,IAAI,MAAM,EAAE,IAAI,KAAK,KAAK,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;QAC3D,IAAI,GAAG,gGAAgG,CAAC;IAC1G,CAAC;SAAM,IAAI,SAAS,KAAK,MAAM,IAAI,CAAC,MAAM,KAAK,KAAK,IAAI,MAAM,KAAK,KAAK,CAAC,EAAE,CAAC;QAC1E,IAAI;YACF,QAAQ,MAAM,8DAA8D;gBAC5E,oBAAoB,MAAM,YAAY,MAAM,qCAAqC,MAAM,UAAU,CAAC;IACtG,CAAC;SAAM,IACL,MAAM,EAAE,IAAI,KAAK,OAAO;QACxB,MAAM,KAAK,OAAO;QAClB,CAAC,SAAS,KAAK,iBAAiB,IAAI,SAAS,KAAK,kBAAkB,CAAC,EACrE,CAAC;QACD,IAAI;YACF,qFAAqF;gBACrF,gFAAgF;gBAChF,4BAA4B,CAAC;IACjC,CAAC;SAAM,IAAI,MAAM,EAAE,IAAI,KAAK,OAAO,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;QACzD,IAAI;YACF,6EAA6E;gBAC7E,oDAAoD,CAAC;IACzD,CAAC;SAAM,IACL,MAAM,EAAE,IAAI,KAAK,QAAQ;QACzB,qBAAqB,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC;QAC3C,MAAM,KAAK,OAAO,EAClB,CAAC;QACD,IAAI;YACF,yEAAyE;gBACzE,6CAA6C,CAAC;IAClD,CAAC;SAAM,IAAI,SAAS,KAAK,eAAe,IAAI,CAAC,SAAS,KAAK,SAAS,IAAI,MAAM,KAAK,OAAO,CAAC,EAAE,CAAC;QAC5F,IAAI;YACF,8DAA8D;gBAC9D,6EAA6E;gBAC7E,oEAAoE,CAAC;IACzE,CAAC;SAAM,IACL,CAAC,SAAS,KAAK,SAAS,IAAI,CAAC,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,QAAQ,CAAC,CAAC;QACzE,SAAS,KAAK,gBAAgB;QAC9B,SAAS,KAAK,gBAAgB,EAC9B,CAAC;QACD,oEAAoE;QACpE,mEAAmE;QACnE,qCAAqC;QACrC,IAAI;YACF,8DAA8D;gBAC9D,mDAAmD,CAAC;IACxD,CAAC;SAAM,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QACnC,IAAI,GAAG,6EAA6E,CAAC;IACvF,CAAC;SAAM,IAAI,MAAM,KAAK,WAAW,EAAE,CAAC;QAClC,IAAI;YACF,0GAA0G,CAAC;IAC/G,CAAC;SAAM,IACL,MAAM,EAAE,IAAI,KAAK,MAAM;QACvB,CAAC,MAAM,KAAK,MAAM,IAAI,MAAM,KAAK,OAAO,IAAI,MAAM,KAAK,MAAM,CAAC,EAC9D,CAAC;QACD,IAAI;YACF,oFAAoF;gBACpF,gHAAgH,CAAC;IACrH,CAAC;SAAM,IACL,MAAM,EAAE,IAAI,KAAK,QAAQ;QACzB,CAAC,MAAM,KAAK,OAAO,IAAI,MAAM,KAAK,UAAU,IAAI,MAAM,KAAK,QAAQ,CAAC,EACpE,CAAC;QACD,IAAI;YACF,sFAAsF;gBACtF,4CAA4C,CAAC;IACjD,CAAC;SAAM,IACL,SAAS,KAAK,MAAM,IAAI,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC;QACrD,CAAC,cAAc,EAAE,gBAAgB,EAAE,aAAa,EAAE,UAAU,EAAE,QAAQ;YACpE,oBAAoB,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC;QACtF,MAAM,KAAK,gBAAgB,IAAI,MAAM,KAAK,oBAAoB;QAC9D,MAAM,KAAK,oBAAoB,IAAI,MAAM,KAAK,mBAAmB;QACjE,MAAM,KAAK,mBAAmB,EAC9B,CAAC;QACD,IAAI;YACF,sFAAsF;gBACtF,sFAAsF;gBACtF,+BAA+B,CAAC;IACpC,CAAC;SAAM,IAAI,SAAS,KAAK,QAAQ,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;QACzD,IAAI;YACF,yFAAyF;gBACzF,0FAA0F;gBAC1F,yEAAyE;gBACzE,+FAA+F;gBAC/F,8FAA8F,CAAC;IACnG,CAAC;IACD,CAAC,CAAC,UAAU,CAAC,GAAG,SAAS,IAAI,MAAM,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;AAC5D,CAAC;AAEH;0EAC0E;AACxE,MAAM,UAAU,cAAc,CAAC,CAAU,EAAE,MAAmC;IAC5E,MAAM,MAAM,GAAG,CAAC,CAAC,OAAO,CAAC,mBAAmB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC1D,IAAI,MAAM;QAAE,OAAO,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IAC5C,sEAAsE;IACtE,sEAAsE;IACtE,oEAAoE;IACpE,qEAAqE;IACrE,mEAAmE;IACnE,qEAAqE;IACrE,mCAAmC;IACnC,IAAI,CAAC,CAAC,kBAAkB,KAAK,IAAI,IAAI,CAAC,CAAC,gBAAgB,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;QACjE,MAAM,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3F,OAAO,CAAC,CAAC,cAAc,CAAC,OAAO,IAAI,SAAS,CAAC,CAAC;IAChD,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAEH;;;;;sEAKsE;AACpE,MAAM,UAAU,oBAAoB,CAAC,CAAU,EAAE,MAAmC;IAClF,IAAI,cAAc,CAAC,CAAC,EAAE,MAAM,CAAC;QAAE,OAAO,IAAI,CAAC;IAC3C,MAAM,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,mBAAmB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACvD,MAAM,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAChE,MAAM,KAAK,GAAG,IAAI,EAAE,MAAM,CAAC;IAC3B,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,EAAE,CAAC,sBAAsB,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACvE,IAAI,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;QAAE,OAAO,KAAK,CAAC;IACvD,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,KAAK,OAAO,CAAC;AAChF,CAAC;AAEH;;;;yEAIyE;AACvE,MAAM,UAAU,cAAc,CAAC,CAAU,EAAE,MAA6B;IACtE,OAAO,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;AACrG,CAAC;AAEH;;;;;;;;;qEASqE;AACnE,MAAM,UAAU,kBAAkB,CAAC,CAAU,EAAE,IAAmB;IAChE,IAAI,EAAE,CAAC,yBAAyB,CAAC,IAAI,CAAC;QAAE,OAAO,kBAAkB,CAAC,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IACtF,IAAI,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1B,+DAA+D;QAC/D,mEAAmE;QACnE,gDAAgD;QAChD,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY;YAAE,OAAO,YAAY,CAAC;QACpD,MAAM,MAAM,GAAG,CAAC,CAAC,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;QACnD,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC;QACzB,MAAM,KAAK,GAAG,CAAC,CAAC,mBAAmB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAChD,IAAI,KAAK,KAAK,SAAS;YAAE,OAAO,KAAK,CAAC;QACtC,+DAA+D;QAC/D,mEAAmE;QACnE,iEAAiE;QACjE,mEAAmE;QACnE,+DAA+D;QAC/D,iEAAiE;QACjE,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACnG,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC;YAAE,OAAO,IAAI,CAAC;QAC7C,OAAO,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;IACnE,CAAC;IACD,IAAI,EAAE,CAAC,0BAA0B,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAClE,IAAI,kBAAkB,CAAC,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,KAAK,YAAY;YAAE,OAAO,IAAI,CAAC;QACzE,MAAM,MAAM,GAAG,CAAC,CAAC,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxD,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC;YAAE,OAAO,IAAI,CAAC;QACtD,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;IAC/D,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAEH;;;;;uEAKuE;AACrE,MAAM,UAAU,cAAc,CAAC,CAAU,EAAE,IAAmB,EAAE,IAAY;IAC1E,OAAO,kBAAkB,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,IAAI,CAAC;AAC9C,CAAC;AAEH;;;kBAGkB;AAChB,MAAM,UAAU,kBAAkB,CAAC,CAAU,EAAE,MAAmC,EAAE,IAAY;IAC9F,IAAI,MAAM,CAAC,gBAAgB;QAAE,OAAO,IAAI,CAAC;IACzC,OAAO,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;AAC7E,CAAC;AAEH;;;;;;;;uDAQuD;AACrD,MAAM,UAAU,qBAAqB,CAAC,CAAU,EAAE,QAAiB,EAAE,IAA+B;IAClG,IAAI,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC;QAAE,OAAO,KAAK,CAAC;IACtD,sEAAsE;IACtE,qEAAqE;IACrE,kEAAkE;IAClE,2DAA2D;IAC3D,sEAAsE;IACtE,MAAM;IACN,MAAM,WAAW,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IACxC,MAAM,IAAI,GACR,WAAW,KAAK,SAAS,IAAI,WAAW,KAAK,cAAc;QACzD,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,kBAAkB,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAClC,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAChC,mEAAmE;IACnE,kEAAkE;IAClE,mEAAmE;IACnE,iDAAiD;IACjD,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,YAAY;QAAE,OAAO,KAAK,CAAC;IACpF,MAAM,MAAM,GAAG,CAAC,CAAC,OAAO,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IACvD,IAAI,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IAC1B,CAAC,CAAC,mBAAmB,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACxC,OAAO,IAAI,CAAC;AACd,CAAC;AAEH;;;iBAGiB;AACf,MAAM,UAAU,mBAAmB,CAAC,CAAU,EAAE,GAAiC;IAC/E,MAAM,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC9D,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC/C,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,MAAM,EAAE,GAAG,CAAC,CAAC,aAAa,EAAE,CAAC;QAC7B,IAAI,EAAE,CAAC,iBAAiB,IAAI,eAAe,CAAC,EAAE,CAAC,QAAQ,CAAC;YAAE,OAAO,GAAG,IAAI,CAAC;aACpE,IAAI,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC;YAAE,OAAO,KAAK,CAAC;IAC5C,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -0,0 +1,55 @@
1
+ export declare function setNpmStaticPackages(packages: Iterable<string>): void;
2
+ export declare function npmStaticActive(): boolean;
3
+ export declare function npmStaticPackages(): ReadonlySet<string>;
4
+ export declare function isNpmStaticPackage(name: string | null): boolean;
5
+ /** The opted-in package a path belongs to, or null. Attribution uses the
6
+ * INNERMOST node_modules segment (a nested install is its own package). */
7
+ export declare function npmStaticPackageOfPath(path: string): string | null;
8
+ /** Records why a package cannot compile statically this attempt (first
9
+ * reason wins — one line per package in the coverage note). */
10
+ export declare function reportNpmStaticOffender(pkg: string, reason: string): void;
11
+ export declare function npmStaticOffenders(): ReadonlyMap<string, string>;
12
+ /** The opted-in package.json transform, applied identically in BOTH
13
+ * resolution worlds (the tsgo host's fs shadow and resolve.ts):
14
+ * 1. every types claim goes — the top-level "types"/"typings" fields
15
+ * and every "types"/"typings" condition key inside "exports"
16
+ * (recursively; condition objects nest) — so resolution lands on
17
+ * runtime JS;
18
+ * 2. CJS-first: a condition object carrying BOTH "import" and "require"
19
+ * has its "import" value REWRITTEN to the "require" target. The
20
+ * import-side of a wrapper-style dual (commander's esm.mjs) is pure
21
+ * name plumbing over the CJS implementation — `export const {…} =
22
+ * cjsDefault`, a re-export shape with no static lowering — while the
23
+ * CJS side engages the compiler's richest machinery (the CJS lexer
24
+ * link check, export-identity analysis, require discipline).
25
+ * Behavior is identical for wrapper duals (both sides evaluate the
26
+ * same CJS module); genuinely dual-BEHAVIOR packages are outside the
27
+ * pilot's supported surface — the differential contract gates every
28
+ * opted-in package. Import-only (pure ESM) packages are untouched
29
+ * and compile as native ES modules. */
30
+ export declare function npmStaticTransformPkgJson(pkg: Record<string, unknown>): void;
31
+ /** npmStaticTransformPkgJson over a package.json TEXT (the fs shadow's
32
+ * form). Malformed documents pass through untouched — resolution reports
33
+ * them exactly as it always did. */
34
+ export declare function npmStaticTransformPkgJsonText(text: string): string;
35
+ export interface NpmStaticFsShadow {
36
+ /** Shadowed CONTENT for a real path (the types-stripped package.json),
37
+ * or undefined (no shadow — fall through). */
38
+ readFile: (path: string) => string | undefined;
39
+ /** True when the path must not exist for the type-checker's resolution
40
+ * (an opted-in package's shipped .d.ts, or its @types twin whole). */
41
+ hideFile: (path: string) => boolean;
42
+ }
43
+ /** The virtual-FS shadow loadProgram hands the tsgo host — null when the
44
+ * flag is off, so flagless compiles keep the exact host behavior. */
45
+ export declare function npmStaticFsShadow(): NpmStaticFsShadow | null;
46
+ /** Unminified-JS heuristic over an entry source: at least two lines and
47
+ * an average line length under 200 characters (minified dists are one
48
+ * enormous line; readable code averages well under 100). */
49
+ export declare function looksUnminified(source: string): boolean;
50
+ export declare function hasTransformMarkers(source: string): boolean;
51
+ /** Auto-mode eligibility for one candidate package: `typesFile` is what
52
+ * the ordinary (types-first) resolution answered for the import,
53
+ * `jsEntry` what the js-only resolution answers. Returns null when
54
+ * eligible, else the human-readable reason it is not. */
55
+ export declare function npmStaticIneligibleReason(pkgName: string, typesFile: string, jsEntry: string | null): string | null;
@@ -0,0 +1,300 @@
1
+ /* The --npm-static opt-in: compile a named npm package's shipped JS
2
+ * STATICALLY, as ordinary program modules, instead of island-running it
3
+ * under --dynamic.
4
+ *
5
+ * The doctrine (slice 2 of the npm story): a package that ships readable,
6
+ * unminified JS alongside its .d.ts can compile through the same
7
+ * JS/CommonJS frontend the program's own JS files use — inference (JSDoc
8
+ * included) types the bodies, and every statement the lowering cannot
9
+ * honor becomes the standard JS runtime fence (the trap throws AT the
10
+ * statement if the program ever drives it — trust-but-verify, never
11
+ * silent trust). The .d.ts is deliberately DROPPED from the opted-in
12
+ * package's resolution: a declaration is a CLAIM about the body, and the
13
+ * compiled artifact must be built from what the body provably is, not
14
+ * from what the declaration says it should be. Program-side use sites
15
+ * therefore typecheck against the INFERRED export surface; where the
16
+ * package's own JSDoc (usually written against that same .d.ts) types a
17
+ * boundary, the declared types flow in through inference and the runtime
18
+ * fences guard the sites the checker could not prove.
19
+ *
20
+ * MECHANISM. Resolution is the single lever:
21
+ * - tsgo's server-side resolution reads package.json and probes sibling
22
+ * .d.ts files through the host's virtual-FS hooks, so an opted-in
23
+ * package's package.json is SHADOWED (its "types"/"typings" fields and
24
+ * every "types" condition inside "exports" removed), its shipped
25
+ * declaration files are HIDDEN (fileExists answers false), and its
26
+ * @types twin is hidden whole — the bundler resolution then lands on
27
+ * the shipped JS, which allowJs + maxNodeModuleJsDepth admit into the
28
+ * program as checkable source.
29
+ * - scriptc's own resolver (resolve.ts) mirrors the same answer: for an
30
+ * opted-in package the types pass is skipped, the "types" export
31
+ * condition is dropped, and the @types mangling never runs.
32
+ * Both worlds agreeing, the package's entry (and its internal relative
33
+ * graph) joins userFiles/moduleOrder exactly like program JS, and the
34
+ * whole existing CJS/ESM module machinery — require discipline, the CJS
35
+ * lexer link check, export-identity analysis, %init ordering — applies
36
+ * unchanged.
37
+ *
38
+ * FAILURE MODE: all-or-nothing per package, island fallback. A preflight
39
+ * diagnostic anchored in an opted-in package's files (an unsupported
40
+ * require form, an unshimmed builtin, a resolution miss) marks the
41
+ * package as an OFFENDER; the frontend rebuilds without it and the
42
+ * import takes today's island path (--dynamic) or the requires-dynamic
43
+ * diagnostic (static builds). The fallback is reported in the coverage
44
+ * report, never as a build failure. Checker errors inside opted-in
45
+ * package files do NOT fail preflight and do NOT trigger fallback: the
46
+ * package's author checked it under a different tsconfig, the program's
47
+ * author cannot fix it, and the JS design already says where inference
48
+ * gaps land — the per-statement runtime fences.
49
+ *
50
+ * STATE. One compile at a time: the active set is module state, written
51
+ * by loadProgram (empty when the flag is off) and read by resolve.ts,
52
+ * program.ts, and the lowering. The CLI and the test harness both drive
53
+ * whole compiles sequentially per process, and every loadProgram resets
54
+ * the state, so a flagless compile after a flagged one sees a clean
55
+ * slate. */
56
+ import { readFileSync } from "node:fs";
57
+ import { npmPackageNameOf, workspacePackageOfPath } from "./shared.js";
58
+ let activePackages = new Set();
59
+ /** Offender records of the CURRENT load attempt: packages whose static
60
+ * compilation the preflight had to refuse, with the first reason. The
61
+ * frontend's fallback loop consumes these and rebuilds without them. */
62
+ const offenders = new Map();
63
+ export function setNpmStaticPackages(packages) {
64
+ activePackages = new Set(packages);
65
+ offenders.clear();
66
+ }
67
+ export function npmStaticActive() {
68
+ return activePackages.size > 0;
69
+ }
70
+ export function npmStaticPackages() {
71
+ return activePackages;
72
+ }
73
+ export function isNpmStaticPackage(name) {
74
+ return name !== null && activePackages.has(name);
75
+ }
76
+ /** The opted-in package a path belongs to, or null. Attribution uses the
77
+ * INNERMOST node_modules segment (a nested install is its own package). */
78
+ export function npmStaticPackageOfPath(path) {
79
+ const pkg = npmPackageNameOf(path);
80
+ return pkg !== null && activePackages.has(pkg) ? pkg : null;
81
+ }
82
+ /** Records why a package cannot compile statically this attempt (first
83
+ * reason wins — one line per package in the coverage note). */
84
+ export function reportNpmStaticOffender(pkg, reason) {
85
+ if (activePackages.has(pkg) && !offenders.has(pkg))
86
+ offenders.set(pkg, reason);
87
+ }
88
+ export function npmStaticOffenders() {
89
+ return offenders;
90
+ }
91
+ /** The DefinitelyTyped name mangling ("@scope/pkg" → "scope__pkg") — the
92
+ * @types twin that must hide alongside the package's own declarations. */
93
+ function mangledTypesName(name) {
94
+ return name.startsWith("@") ? name.slice(1).replace("/", "__") : name;
95
+ }
96
+ /** node_modules path classification for the fs shadow: which opted-in
97
+ * package (if any) the path is inside, and whether it is inside that
98
+ * package's @types twin instead. A path with no node_modules segment can
99
+ * still be an opted-in WORKSPACE package's real home (the symlinked
100
+ * install's realpath — loadProgram registers those before the host is
101
+ * created, so probes along the package's internal relative edges hide the
102
+ * declaration twins too). */
103
+ function shadowTargetOf(path) {
104
+ const norm = path.split("\\").join("/");
105
+ const idx = norm.lastIndexOf("/node_modules/");
106
+ if (idx === -1) {
107
+ const ws = workspacePackageOfPath(norm);
108
+ return ws !== null && activePackages.has(ws) ? { pkg: ws, viaTypes: false } : null;
109
+ }
110
+ const rest = norm.slice(idx + "/node_modules/".length);
111
+ const parts = rest.split("/");
112
+ const first = parts[0] ?? "";
113
+ const dirName = first.startsWith("@") ? `${first}/${parts[1] ?? ""}` : first;
114
+ if (activePackages.has(dirName))
115
+ return { pkg: dirName, viaTypes: false };
116
+ if (first === "@types") {
117
+ const mangled = parts[1] ?? "";
118
+ for (const pkg of activePackages) {
119
+ if (mangledTypesName(pkg) === mangled)
120
+ return { pkg, viaTypes: true };
121
+ }
122
+ }
123
+ return null;
124
+ }
125
+ /** The opted-in package.json transform, applied identically in BOTH
126
+ * resolution worlds (the tsgo host's fs shadow and resolve.ts):
127
+ * 1. every types claim goes — the top-level "types"/"typings" fields
128
+ * and every "types"/"typings" condition key inside "exports"
129
+ * (recursively; condition objects nest) — so resolution lands on
130
+ * runtime JS;
131
+ * 2. CJS-first: a condition object carrying BOTH "import" and "require"
132
+ * has its "import" value REWRITTEN to the "require" target. The
133
+ * import-side of a wrapper-style dual (commander's esm.mjs) is pure
134
+ * name plumbing over the CJS implementation — `export const {…} =
135
+ * cjsDefault`, a re-export shape with no static lowering — while the
136
+ * CJS side engages the compiler's richest machinery (the CJS lexer
137
+ * link check, export-identity analysis, require discipline).
138
+ * Behavior is identical for wrapper duals (both sides evaluate the
139
+ * same CJS module); genuinely dual-BEHAVIOR packages are outside the
140
+ * pilot's supported surface — the differential contract gates every
141
+ * opted-in package. Import-only (pure ESM) packages are untouched
142
+ * and compile as native ES modules. */
143
+ export function npmStaticTransformPkgJson(pkg) {
144
+ delete pkg["types"];
145
+ delete pkg["typings"];
146
+ const transform = (v) => {
147
+ if (v === null || typeof v !== "object")
148
+ return;
149
+ if (Array.isArray(v)) {
150
+ for (const item of v)
151
+ transform(item);
152
+ return;
153
+ }
154
+ const obj = v;
155
+ delete obj["types"];
156
+ delete obj["typings"];
157
+ // 0. The "node" condition HOISTS: Node's runtime resolution matches it
158
+ // (yaml's `{ types, node: "./dist/index.js", default: "./browser/
159
+ // index.js" }` runs the node dist; the browser dist is a DIFFERENT
160
+ // artifact), while the bundler condition set both resolution worlds
161
+ // use ({types, import, default}) would fall through to "default".
162
+ // The node target splices in AT ITS KEY POSITION — a string emits
163
+ // under import+require (either matcher finds it there), an object's
164
+ // entries splice inline — earlier real keys keep winning, exactly
165
+ // Node's first-match-in-key-order rule.
166
+ if (obj["node"] !== undefined) {
167
+ const entries = Object.entries(obj);
168
+ for (const k of Object.keys(obj))
169
+ delete obj[k];
170
+ for (const [k, val] of entries) {
171
+ if (k !== "node") {
172
+ if (!(k in obj))
173
+ obj[k] = val;
174
+ continue;
175
+ }
176
+ const inner = typeof val === "string"
177
+ ? { import: val, require: val }
178
+ : val !== null && typeof val === "object" && !Array.isArray(val)
179
+ ? val
180
+ : {};
181
+ for (const [ik, iv] of Object.entries(inner)) {
182
+ if (!(ik in obj))
183
+ obj[ik] = iv;
184
+ }
185
+ }
186
+ }
187
+ if (obj["import"] !== undefined && obj["require"] !== undefined) {
188
+ obj["import"] = obj["require"];
189
+ }
190
+ for (const value of Object.values(obj))
191
+ transform(value);
192
+ };
193
+ if (pkg["exports"] !== undefined)
194
+ transform(pkg["exports"]);
195
+ }
196
+ /** npmStaticTransformPkgJson over a package.json TEXT (the fs shadow's
197
+ * form). Malformed documents pass through untouched — resolution reports
198
+ * them exactly as it always did. */
199
+ export function npmStaticTransformPkgJsonText(text) {
200
+ let doc;
201
+ try {
202
+ doc = JSON.parse(text);
203
+ }
204
+ catch {
205
+ return text;
206
+ }
207
+ if (doc === null || typeof doc !== "object" || Array.isArray(doc))
208
+ return text;
209
+ npmStaticTransformPkgJson(doc);
210
+ return JSON.stringify(doc);
211
+ }
212
+ /** True for declaration-file names (the claims the opted-in resolution
213
+ * must not see). */
214
+ function isDeclarationFileName(path) {
215
+ return /\.d\.(ts|mts|cts)$/.test(path) || path.endsWith(".d.json.ts");
216
+ }
217
+ /** The virtual-FS shadow loadProgram hands the tsgo host — null when the
218
+ * flag is off, so flagless compiles keep the exact host behavior. */
219
+ export function npmStaticFsShadow() {
220
+ if (!npmStaticActive())
221
+ return null;
222
+ return {
223
+ readFile: (path) => {
224
+ const target = shadowTargetOf(path);
225
+ if (!target || target.viaTypes)
226
+ return undefined;
227
+ if (!path.endsWith("/package.json") && !path.endsWith("\\package.json"))
228
+ return undefined;
229
+ try {
230
+ return npmStaticTransformPkgJsonText(readFileSync(path, "utf8"));
231
+ }
232
+ catch {
233
+ return undefined;
234
+ }
235
+ },
236
+ hideFile: (path) => {
237
+ const target = shadowTargetOf(path);
238
+ if (!target)
239
+ return false;
240
+ if (target.viaTypes)
241
+ return true; // the @types twin hides whole
242
+ return isDeclarationFileName(path);
243
+ },
244
+ };
245
+ }
246
+ /* ── auto-detection (--npm-static=auto) ─────────────────────────────────
247
+ * The criteria the design doc names: the package ships its OWN .d.ts (a
248
+ * declaration surface its author maintains against the JS — @types twins
249
+ * are third-party claims and do not qualify), the runtime JS is readable
250
+ * (unminified: real lines, ordinary line lengths), and the source shows
251
+ * no build-transform markers (a bundled/transpiled dist is not the code
252
+ * the author checked). Best-effort: a package that slips through and
253
+ * fails preflight falls back to the island like any offender. */
254
+ const TRANSFORM_MARKERS = [
255
+ "__webpack_require__",
256
+ '"__esModule"', // tsc/babel CJS transform stamp
257
+ "'__esModule'",
258
+ "var __require", // esbuild's external-require helper
259
+ "function __require",
260
+ ];
261
+ /** Unminified-JS heuristic over an entry source: at least two lines and
262
+ * an average line length under 200 characters (minified dists are one
263
+ * enormous line; readable code averages well under 100). */
264
+ export function looksUnminified(source) {
265
+ const lines = source.split("\n");
266
+ if (lines.length < 2)
267
+ return false;
268
+ return source.length / lines.length <= 200;
269
+ }
270
+ export function hasTransformMarkers(source) {
271
+ return TRANSFORM_MARKERS.some((m) => source.includes(m));
272
+ }
273
+ /** Auto-mode eligibility for one candidate package: `typesFile` is what
274
+ * the ordinary (types-first) resolution answered for the import,
275
+ * `jsEntry` what the js-only resolution answers. Returns null when
276
+ * eligible, else the human-readable reason it is not. */
277
+ export function npmStaticIneligibleReason(pkgName, typesFile, jsEntry) {
278
+ if (npmPackageNameOf(typesFile) !== pkgName) {
279
+ return "its declared types come from a third-party @types package, not the package itself";
280
+ }
281
+ if (!/\.d\.(ts|mts|cts)$/.test(typesFile)) {
282
+ return "it ships no own .d.ts declaration surface";
283
+ }
284
+ if (jsEntry === null)
285
+ return "no runtime JS entry resolves";
286
+ let source;
287
+ try {
288
+ source = readFileSync(jsEntry, "utf8");
289
+ }
290
+ catch {
291
+ return `its runtime entry ${jsEntry} cannot be read`;
292
+ }
293
+ if (!looksUnminified(source))
294
+ return "its shipped JS looks minified";
295
+ if (hasTransformMarkers(source)) {
296
+ return "its shipped JS carries build-transform markers (bundled/transpiled dist)";
297
+ }
298
+ return null;
299
+ }
300
+ //# sourceMappingURL=npm-static.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"npm-static.js","sourceRoot":"","sources":["../../src/frontend/npm-static.ts"],"names":[],"mappings":"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"}