@tsonic/emitter 0.0.1 → 0.0.2

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 (712) hide show
  1. package/dist/.tsbuildinfo +1 -0
  2. package/dist/adapter-generator.d.ts +28 -0
  3. package/dist/adapter-generator.d.ts.map +1 -0
  4. package/dist/adapter-generator.js +83 -0
  5. package/dist/adapter-generator.js.map +1 -0
  6. package/dist/array.test.d.ts +6 -0
  7. package/dist/array.test.d.ts.map +1 -0
  8. package/dist/array.test.js +274 -0
  9. package/dist/array.test.js.map +1 -0
  10. package/dist/async-investigation.test.d.ts +5 -0
  11. package/dist/async-investigation.test.d.ts.map +1 -0
  12. package/dist/async-investigation.test.js +239 -0
  13. package/dist/async-investigation.test.js.map +1 -0
  14. package/dist/constants.d.ts +15 -0
  15. package/dist/constants.d.ts.map +1 -0
  16. package/dist/constants.js +22 -0
  17. package/dist/constants.js.map +1 -0
  18. package/dist/core/exports.d.ts +10 -0
  19. package/dist/core/exports.d.ts.map +1 -0
  20. package/dist/core/exports.js +28 -0
  21. package/dist/core/exports.js.map +1 -0
  22. package/dist/core/imports.d.ts +26 -0
  23. package/dist/core/imports.d.ts.map +1 -0
  24. package/dist/core/imports.js +189 -0
  25. package/dist/core/imports.js.map +1 -0
  26. package/dist/core/imports.test.d.ts +6 -0
  27. package/dist/core/imports.test.d.ts.map +1 -0
  28. package/dist/core/imports.test.js +76 -0
  29. package/dist/core/imports.test.js.map +1 -0
  30. package/dist/core/index.d.ts +9 -0
  31. package/dist/core/index.d.ts.map +1 -0
  32. package/{src/core/index.ts → dist/core/index.js} +1 -1
  33. package/dist/core/index.js.map +1 -0
  34. package/dist/core/module-emitter/assembly.d.ts +21 -0
  35. package/dist/core/module-emitter/assembly.d.ts.map +1 -0
  36. package/dist/core/module-emitter/assembly.js +58 -0
  37. package/dist/core/module-emitter/assembly.js.map +1 -0
  38. package/dist/core/module-emitter/header.d.ts +10 -0
  39. package/dist/core/module-emitter/header.d.ts.map +1 -0
  40. package/dist/core/module-emitter/header.js +13 -0
  41. package/dist/core/module-emitter/header.js.map +1 -0
  42. package/{src/core/module-emitter/index.ts → dist/core/module-emitter/index.d.ts} +3 -10
  43. package/dist/core/module-emitter/index.d.ts.map +1 -0
  44. package/dist/core/module-emitter/index.js +10 -0
  45. package/dist/core/module-emitter/index.js.map +1 -0
  46. package/dist/core/module-emitter/namespace.d.ts +14 -0
  47. package/dist/core/module-emitter/namespace.d.ts.map +1 -0
  48. package/dist/core/module-emitter/namespace.js +26 -0
  49. package/dist/core/module-emitter/namespace.js.map +1 -0
  50. package/dist/core/module-emitter/orchestrator.d.ts +10 -0
  51. package/dist/core/module-emitter/orchestrator.d.ts.map +1 -0
  52. package/dist/core/module-emitter/orchestrator.js +58 -0
  53. package/dist/core/module-emitter/orchestrator.js.map +1 -0
  54. package/dist/core/module-emitter/separation.d.ts +14 -0
  55. package/dist/core/module-emitter/separation.d.ts.map +1 -0
  56. package/dist/core/module-emitter/separation.js +27 -0
  57. package/dist/core/module-emitter/separation.js.map +1 -0
  58. package/dist/core/module-emitter/static-container.d.ts +18 -0
  59. package/dist/core/module-emitter/static-container.d.ts.map +1 -0
  60. package/dist/core/module-emitter/static-container.js +49 -0
  61. package/dist/core/module-emitter/static-container.js.map +1 -0
  62. package/dist/core/module-emitter.d.ts +6 -0
  63. package/dist/core/module-emitter.d.ts.map +1 -0
  64. package/{src/core/module-emitter.ts → dist/core/module-emitter.js} +1 -1
  65. package/dist/core/module-emitter.js.map +1 -0
  66. package/dist/core/module-emitter.test.d.ts +6 -0
  67. package/dist/core/module-emitter.test.d.ts.map +1 -0
  68. package/dist/core/module-emitter.test.js +147 -0
  69. package/dist/core/module-emitter.test.js.map +1 -0
  70. package/dist/core/module-map.d.ts +35 -0
  71. package/dist/core/module-map.d.ts.map +1 -0
  72. package/dist/core/module-map.js +170 -0
  73. package/dist/core/module-map.js.map +1 -0
  74. package/dist/core/options.d.ts +9 -0
  75. package/dist/core/options.d.ts.map +1 -0
  76. package/dist/core/options.js +14 -0
  77. package/dist/core/options.js.map +1 -0
  78. package/dist/core/type-params.d.ts +9 -0
  79. package/dist/core/type-params.d.ts.map +1 -0
  80. package/dist/core/type-params.js +31 -0
  81. package/dist/core/type-params.js.map +1 -0
  82. package/dist/emitter-types/context.d.ts +29 -0
  83. package/dist/emitter-types/context.d.ts.map +1 -0
  84. package/dist/emitter-types/context.js +68 -0
  85. package/dist/emitter-types/context.js.map +1 -0
  86. package/dist/emitter-types/core.d.ts +129 -0
  87. package/dist/emitter-types/core.d.ts.map +1 -0
  88. package/dist/emitter-types/core.js +5 -0
  89. package/dist/emitter-types/core.js.map +1 -0
  90. package/dist/emitter-types/csharp-types.d.ts +27 -0
  91. package/dist/emitter-types/csharp-types.d.ts.map +1 -0
  92. package/dist/emitter-types/csharp-types.js +5 -0
  93. package/dist/emitter-types/csharp-types.js.map +1 -0
  94. package/dist/emitter-types/formatting.d.ts +9 -0
  95. package/dist/emitter-types/formatting.d.ts.map +1 -0
  96. package/dist/emitter-types/formatting.js +11 -0
  97. package/dist/emitter-types/formatting.js.map +1 -0
  98. package/dist/emitter-types/fqn.d.ts +53 -0
  99. package/dist/emitter-types/fqn.d.ts.map +1 -0
  100. package/dist/emitter-types/fqn.js +65 -0
  101. package/dist/emitter-types/fqn.js.map +1 -0
  102. package/dist/emitter-types/index.d.ts +9 -0
  103. package/dist/emitter-types/index.d.ts.map +1 -0
  104. package/dist/emitter-types/index.js +7 -0
  105. package/dist/emitter-types/index.js.map +1 -0
  106. package/dist/emitter.d.ts +27 -0
  107. package/dist/emitter.d.ts.map +1 -0
  108. package/dist/emitter.js +80 -0
  109. package/dist/emitter.js.map +1 -0
  110. package/dist/expression-emitter.d.ts +15 -0
  111. package/dist/expression-emitter.d.ts.map +1 -0
  112. package/dist/expression-emitter.js +67 -0
  113. package/dist/expression-emitter.js.map +1 -0
  114. package/dist/expressions/access.d.ts +12 -0
  115. package/dist/expressions/access.d.ts.map +1 -0
  116. package/dist/expressions/access.js +77 -0
  117. package/dist/expressions/access.js.map +1 -0
  118. package/dist/expressions/calls.d.ts +18 -0
  119. package/dist/expressions/calls.d.ts.map +1 -0
  120. package/dist/expressions/calls.js +207 -0
  121. package/dist/expressions/calls.js.map +1 -0
  122. package/dist/expressions/collections.d.ts +24 -0
  123. package/dist/expressions/collections.d.ts.map +1 -0
  124. package/dist/expressions/collections.js +254 -0
  125. package/dist/expressions/collections.js.map +1 -0
  126. package/dist/expressions/functions.d.ts +18 -0
  127. package/dist/expressions/functions.d.ts.map +1 -0
  128. package/dist/expressions/functions.js +60 -0
  129. package/dist/expressions/functions.js.map +1 -0
  130. package/dist/expressions/identifiers.d.ts +22 -0
  131. package/dist/expressions/identifiers.d.ts.map +1 -0
  132. package/dist/expressions/identifiers.js +99 -0
  133. package/dist/expressions/identifiers.js.map +1 -0
  134. package/dist/expressions/index.d.ts +12 -0
  135. package/dist/expressions/index.d.ts.map +1 -0
  136. package/{src/expressions/index.ts → dist/expressions/index.js} +3 -21
  137. package/dist/expressions/index.js.map +1 -0
  138. package/dist/expressions/index.test.d.ts +6 -0
  139. package/dist/expressions/index.test.d.ts.map +1 -0
  140. package/dist/expressions/index.test.js +480 -0
  141. package/dist/expressions/index.test.js.map +1 -0
  142. package/dist/expressions/literals.d.ts +31 -0
  143. package/dist/expressions/literals.d.ts.map +1 -0
  144. package/dist/expressions/literals.js +116 -0
  145. package/dist/expressions/literals.js.map +1 -0
  146. package/dist/expressions/operators.d.ts +52 -0
  147. package/dist/expressions/operators.d.ts.map +1 -0
  148. package/dist/expressions/operators.js +166 -0
  149. package/dist/expressions/operators.js.map +1 -0
  150. package/dist/expressions/other.d.ts +24 -0
  151. package/dist/expressions/other.d.ts.map +1 -0
  152. package/dist/expressions/other.js +43 -0
  153. package/dist/expressions/other.js.map +1 -0
  154. package/dist/generator-exchange.d.ts +11 -0
  155. package/dist/generator-exchange.d.ts.map +1 -0
  156. package/dist/generator-exchange.js +92 -0
  157. package/dist/generator-exchange.js.map +1 -0
  158. package/dist/generator.test.d.ts +6 -0
  159. package/dist/generator.test.d.ts.map +1 -0
  160. package/dist/generator.test.js +177 -0
  161. package/dist/generator.test.js.map +1 -0
  162. package/dist/golden-tests/config-parser.d.ts +9 -0
  163. package/dist/golden-tests/config-parser.d.ts.map +1 -0
  164. package/dist/golden-tests/config-parser.js +57 -0
  165. package/dist/golden-tests/config-parser.js.map +1 -0
  166. package/dist/golden-tests/discovery.d.ts +9 -0
  167. package/dist/golden-tests/discovery.d.ts.map +1 -0
  168. package/dist/golden-tests/discovery.js +51 -0
  169. package/dist/golden-tests/discovery.js.map +1 -0
  170. package/{src/golden-tests/index.ts → dist/golden-tests/index.d.ts} +1 -1
  171. package/dist/golden-tests/index.d.ts.map +1 -0
  172. package/dist/golden-tests/index.js +9 -0
  173. package/dist/golden-tests/index.js.map +1 -0
  174. package/dist/golden-tests/registration.d.ts +9 -0
  175. package/dist/golden-tests/registration.d.ts.map +1 -0
  176. package/dist/golden-tests/registration.js +23 -0
  177. package/dist/golden-tests/registration.js.map +1 -0
  178. package/dist/golden-tests/runner.d.ts +13 -0
  179. package/dist/golden-tests/runner.d.ts.map +1 -0
  180. package/dist/golden-tests/runner.js +99 -0
  181. package/dist/golden-tests/runner.js.map +1 -0
  182. package/dist/golden-tests/tree-builder.d.ts +9 -0
  183. package/dist/golden-tests/tree-builder.d.ts.map +1 -0
  184. package/dist/golden-tests/tree-builder.js +35 -0
  185. package/dist/golden-tests/tree-builder.js.map +1 -0
  186. package/dist/golden-tests/types.d.ts +19 -0
  187. package/dist/golden-tests/types.d.ts.map +1 -0
  188. package/dist/golden-tests/types.js +5 -0
  189. package/dist/golden-tests/types.js.map +1 -0
  190. package/dist/golden.test.d.ts +11 -0
  191. package/dist/golden.test.d.ts.map +1 -0
  192. package/{src/golden.test.ts → dist/golden.test.js} +15 -20
  193. package/dist/golden.test.js.map +1 -0
  194. package/dist/hierarchical-bindings.test.d.ts +6 -0
  195. package/dist/hierarchical-bindings.test.d.ts.map +1 -0
  196. package/dist/hierarchical-bindings.test.js +194 -0
  197. package/dist/hierarchical-bindings.test.js.map +1 -0
  198. package/dist/index.d.ts +9 -0
  199. package/dist/index.d.ts.map +1 -0
  200. package/{src/index.ts → dist/index.js} +2 -7
  201. package/dist/index.js.map +1 -0
  202. package/dist/integration.test.d.ts +6 -0
  203. package/dist/integration.test.d.ts.map +1 -0
  204. package/dist/integration.test.js +234 -0
  205. package/dist/integration.test.js.map +1 -0
  206. package/dist/specialization/call-site-rewriting.test.d.ts +6 -0
  207. package/dist/specialization/call-site-rewriting.test.d.ts.map +1 -0
  208. package/dist/specialization/call-site-rewriting.test.js +92 -0
  209. package/dist/specialization/call-site-rewriting.test.js.map +1 -0
  210. package/dist/specialization/collection/expressions.d.ts +10 -0
  211. package/dist/specialization/collection/expressions.d.ts.map +1 -0
  212. package/dist/specialization/collection/expressions.js +142 -0
  213. package/dist/specialization/collection/expressions.js.map +1 -0
  214. package/dist/specialization/collection/index.d.ts +7 -0
  215. package/dist/specialization/collection/index.d.ts.map +1 -0
  216. package/{src/specialization/collection/index.ts → dist/specialization/collection/index.js} +1 -1
  217. package/dist/specialization/collection/index.js.map +1 -0
  218. package/dist/specialization/collection/orchestrator.d.ts +11 -0
  219. package/dist/specialization/collection/orchestrator.d.ts.map +1 -0
  220. package/dist/specialization/collection/orchestrator.js +18 -0
  221. package/dist/specialization/collection/orchestrator.js.map +1 -0
  222. package/dist/specialization/collection/statements.d.ts +10 -0
  223. package/dist/specialization/collection/statements.d.ts.map +1 -0
  224. package/dist/specialization/collection/statements.js +75 -0
  225. package/dist/specialization/collection/statements.js.map +1 -0
  226. package/dist/specialization/collection.d.ts +6 -0
  227. package/dist/specialization/collection.d.ts.map +1 -0
  228. package/dist/specialization/collection.js +6 -0
  229. package/dist/specialization/collection.js.map +1 -0
  230. package/dist/specialization/generation.d.ts +11 -0
  231. package/dist/specialization/generation.d.ts.map +1 -0
  232. package/dist/specialization/generation.js +137 -0
  233. package/dist/specialization/generation.js.map +1 -0
  234. package/dist/specialization/generic-classes.test.d.ts +6 -0
  235. package/dist/specialization/generic-classes.test.d.ts.map +1 -0
  236. package/dist/specialization/generic-classes.test.js +55 -0
  237. package/dist/specialization/generic-classes.test.js.map +1 -0
  238. package/dist/specialization/generic-functions.test.d.ts +6 -0
  239. package/dist/specialization/generic-functions.test.d.ts.map +1 -0
  240. package/dist/specialization/generic-functions.test.js +275 -0
  241. package/dist/specialization/generic-functions.test.js.map +1 -0
  242. package/dist/specialization/helpers.d.ts +13 -0
  243. package/dist/specialization/helpers.d.ts.map +1 -0
  244. package/dist/specialization/helpers.js +33 -0
  245. package/dist/specialization/helpers.js.map +1 -0
  246. package/dist/specialization/index.d.ts +10 -0
  247. package/dist/specialization/index.d.ts.map +1 -0
  248. package/{src/specialization/index.ts → dist/specialization/index.js} +3 -17
  249. package/dist/specialization/index.js.map +1 -0
  250. package/dist/specialization/interfaces.test.d.ts +6 -0
  251. package/dist/specialization/interfaces.test.d.ts.map +1 -0
  252. package/dist/specialization/interfaces.test.js +139 -0
  253. package/dist/specialization/interfaces.test.js.map +1 -0
  254. package/dist/specialization/naming.d.ts +13 -0
  255. package/dist/specialization/naming.d.ts.map +1 -0
  256. package/dist/specialization/naming.js +25 -0
  257. package/dist/specialization/naming.js.map +1 -0
  258. package/dist/specialization/substitution.d.ts +17 -0
  259. package/dist/specialization/substitution.d.ts.map +1 -0
  260. package/dist/specialization/substitution.js +150 -0
  261. package/dist/specialization/substitution.js.map +1 -0
  262. package/dist/specialization/type-aliases.test.d.ts +6 -0
  263. package/dist/specialization/type-aliases.test.d.ts.map +1 -0
  264. package/dist/specialization/type-aliases.test.js +124 -0
  265. package/dist/specialization/type-aliases.test.js.map +1 -0
  266. package/dist/specialization/types.d.ts +14 -0
  267. package/dist/specialization/types.d.ts.map +1 -0
  268. package/dist/specialization/types.js +5 -0
  269. package/dist/specialization/types.js.map +1 -0
  270. package/{src/specialization-generator.ts → dist/specialization-generator.d.ts} +4 -15
  271. package/dist/specialization-generator.d.ts.map +1 -0
  272. package/dist/specialization-generator.js +11 -0
  273. package/dist/specialization-generator.js.map +1 -0
  274. package/dist/statement-emitter.d.ts +13 -0
  275. package/dist/statement-emitter.d.ts.map +1 -0
  276. package/dist/statement-emitter.js +67 -0
  277. package/dist/statement-emitter.js.map +1 -0
  278. package/dist/statements/blocks.d.ts +40 -0
  279. package/dist/statements/blocks.d.ts.map +1 -0
  280. package/dist/statements/blocks.js +86 -0
  281. package/dist/statements/blocks.js.map +1 -0
  282. package/{src/statements/classes/helpers.ts → dist/statements/classes/helpers.d.ts} +2 -3
  283. package/dist/statements/classes/helpers.d.ts.map +1 -0
  284. package/dist/statements/classes/helpers.js +8 -0
  285. package/dist/statements/classes/helpers.js.map +1 -0
  286. package/dist/statements/classes/index.d.ts +9 -0
  287. package/dist/statements/classes/index.d.ts.map +1 -0
  288. package/{src/statements/classes/index.ts → dist/statements/classes/index.js} +2 -6
  289. package/dist/statements/classes/index.js.map +1 -0
  290. package/dist/statements/classes/inline-types.d.ts +21 -0
  291. package/dist/statements/classes/inline-types.d.ts.map +1 -0
  292. package/dist/statements/classes/inline-types.js +50 -0
  293. package/dist/statements/classes/inline-types.js.map +1 -0
  294. package/dist/statements/classes/members/constructors.d.ts +12 -0
  295. package/dist/statements/classes/members/constructors.d.ts.map +1 -0
  296. package/dist/statements/classes/members/constructors.js +90 -0
  297. package/dist/statements/classes/members/constructors.js.map +1 -0
  298. package/dist/statements/classes/members/index.d.ts +8 -0
  299. package/dist/statements/classes/members/index.d.ts.map +1 -0
  300. package/{src/statements/classes/members/index.ts → dist/statements/classes/members/index.js} +1 -1
  301. package/dist/statements/classes/members/index.js.map +1 -0
  302. package/dist/statements/classes/members/methods.d.ts +12 -0
  303. package/dist/statements/classes/members/methods.d.ts.map +1 -0
  304. package/dist/statements/classes/members/methods.js +100 -0
  305. package/dist/statements/classes/members/methods.js.map +1 -0
  306. package/dist/statements/classes/members/orchestrator.d.ts +10 -0
  307. package/dist/statements/classes/members/orchestrator.d.ts.map +1 -0
  308. package/dist/statements/classes/members/orchestrator.js +24 -0
  309. package/dist/statements/classes/members/orchestrator.js.map +1 -0
  310. package/dist/statements/classes/members/properties.d.ts +12 -0
  311. package/dist/statements/classes/members/properties.d.ts.map +1 -0
  312. package/dist/statements/classes/members/properties.js +48 -0
  313. package/dist/statements/classes/members/properties.js.map +1 -0
  314. package/dist/statements/classes/members.d.ts +6 -0
  315. package/dist/statements/classes/members.d.ts.map +1 -0
  316. package/{src/statements/classes/members.ts → dist/statements/classes/members.js} +1 -1
  317. package/dist/statements/classes/members.js.map +1 -0
  318. package/dist/statements/classes/parameters.d.ts +10 -0
  319. package/dist/statements/classes/parameters.d.ts.map +1 -0
  320. package/dist/statements/classes/parameters.js +50 -0
  321. package/dist/statements/classes/parameters.js.map +1 -0
  322. package/dist/statements/classes/properties.d.ts +11 -0
  323. package/dist/statements/classes/properties.d.ts.map +1 -0
  324. package/dist/statements/classes/properties.js +74 -0
  325. package/dist/statements/classes/properties.js.map +1 -0
  326. package/dist/statements/classes.d.ts +6 -0
  327. package/dist/statements/classes.d.ts.map +1 -0
  328. package/dist/statements/classes.js +6 -0
  329. package/dist/statements/classes.js.map +1 -0
  330. package/dist/statements/control/conditionals.d.ts +18 -0
  331. package/dist/statements/control/conditionals.d.ts.map +1 -0
  332. package/dist/statements/control/conditionals.js +98 -0
  333. package/dist/statements/control/conditionals.js.map +1 -0
  334. package/dist/statements/control/exceptions.d.ts +18 -0
  335. package/dist/statements/control/exceptions.d.ts.map +1 -0
  336. package/dist/statements/control/exceptions.js +38 -0
  337. package/dist/statements/control/exceptions.js.map +1 -0
  338. package/dist/statements/control/index.d.ts +7 -0
  339. package/dist/statements/control/index.d.ts.map +1 -0
  340. package/{src/statements/control/index.ts → dist/statements/control/index.js} +2 -6
  341. package/dist/statements/control/index.js.map +1 -0
  342. package/dist/statements/control/loops.d.ts +29 -0
  343. package/dist/statements/control/loops.d.ts.map +1 -0
  344. package/dist/statements/control/loops.js +186 -0
  345. package/dist/statements/control/loops.js.map +1 -0
  346. package/dist/statements/control.d.ts +6 -0
  347. package/dist/statements/control.d.ts.map +1 -0
  348. package/dist/statements/control.js +6 -0
  349. package/dist/statements/control.js.map +1 -0
  350. package/dist/statements/declarations/classes.d.ts +12 -0
  351. package/dist/statements/declarations/classes.d.ts.map +1 -0
  352. package/dist/statements/declarations/classes.js +61 -0
  353. package/dist/statements/declarations/classes.js.map +1 -0
  354. package/dist/statements/declarations/enums.d.ts +12 -0
  355. package/dist/statements/declarations/enums.d.ts.map +1 -0
  356. package/dist/statements/declarations/enums.js +25 -0
  357. package/dist/statements/declarations/enums.js.map +1 -0
  358. package/dist/statements/declarations/functions.d.ts +12 -0
  359. package/dist/statements/declarations/functions.d.ts.map +1 -0
  360. package/dist/statements/declarations/functions.js +110 -0
  361. package/dist/statements/declarations/functions.js.map +1 -0
  362. package/dist/statements/declarations/index.d.ts +10 -0
  363. package/dist/statements/declarations/index.d.ts.map +1 -0
  364. package/{src/statements/declarations/index.ts → dist/statements/declarations/index.js} +1 -1
  365. package/dist/statements/declarations/index.js.map +1 -0
  366. package/dist/statements/declarations/interfaces.d.ts +12 -0
  367. package/dist/statements/declarations/interfaces.d.ts.map +1 -0
  368. package/dist/statements/declarations/interfaces.js +85 -0
  369. package/dist/statements/declarations/interfaces.js.map +1 -0
  370. package/dist/statements/declarations/structs.test.d.ts +5 -0
  371. package/dist/statements/declarations/structs.test.d.ts.map +1 -0
  372. package/dist/statements/declarations/structs.test.js +165 -0
  373. package/dist/statements/declarations/structs.test.js.map +1 -0
  374. package/dist/statements/declarations/type-aliases.d.ts +12 -0
  375. package/dist/statements/declarations/type-aliases.d.ts.map +1 -0
  376. package/dist/statements/declarations/type-aliases.js +80 -0
  377. package/dist/statements/declarations/type-aliases.js.map +1 -0
  378. package/dist/statements/declarations/variables.d.ts +12 -0
  379. package/dist/statements/declarations/variables.d.ts.map +1 -0
  380. package/dist/statements/declarations/variables.js +120 -0
  381. package/dist/statements/declarations/variables.js.map +1 -0
  382. package/dist/statements/declarations.d.ts +6 -0
  383. package/dist/statements/declarations.d.ts.map +1 -0
  384. package/dist/statements/declarations.js +6 -0
  385. package/dist/statements/declarations.js.map +1 -0
  386. package/dist/statements/index.d.ts +8 -0
  387. package/dist/statements/index.d.ts.map +1 -0
  388. package/dist/statements/index.js +12 -0
  389. package/dist/statements/index.js.map +1 -0
  390. package/dist/statements/index.test.d.ts +6 -0
  391. package/dist/statements/index.test.d.ts.map +1 -0
  392. package/dist/statements/index.test.js +248 -0
  393. package/dist/statements/index.test.js.map +1 -0
  394. package/dist/tests/emitter/expression-emission.test.d.ts +6 -0
  395. package/dist/tests/emitter/expression-emission.test.d.ts.map +1 -0
  396. package/dist/tests/emitter/expression-emission.test.js +322 -0
  397. package/dist/tests/emitter/expression-emission.test.js.map +1 -0
  398. package/dist/tests/emitter/import-handling.test.d.ts +6 -0
  399. package/dist/tests/emitter/import-handling.test.d.ts.map +1 -0
  400. package/dist/tests/emitter/import-handling.test.js +76 -0
  401. package/dist/tests/emitter/import-handling.test.js.map +1 -0
  402. package/dist/tests/emitter/module-generation.test.d.ts +6 -0
  403. package/dist/tests/emitter/module-generation.test.d.ts.map +1 -0
  404. package/dist/tests/emitter/module-generation.test.js +147 -0
  405. package/dist/tests/emitter/module-generation.test.js.map +1 -0
  406. package/dist/tests/emitter/statement-emission.test.d.ts +6 -0
  407. package/dist/tests/emitter/statement-emission.test.d.ts.map +1 -0
  408. package/dist/tests/emitter/statement-emission.test.js +138 -0
  409. package/dist/tests/emitter/statement-emission.test.js.map +1 -0
  410. package/dist/tests/emitter/type-emission.test.d.ts +6 -0
  411. package/dist/tests/emitter/type-emission.test.d.ts.map +1 -0
  412. package/dist/tests/emitter/type-emission.test.js +109 -0
  413. package/dist/tests/emitter/type-emission.test.js.map +1 -0
  414. package/dist/tests/generics/call-site-rewriting.test.d.ts +6 -0
  415. package/dist/tests/generics/call-site-rewriting.test.d.ts.map +1 -0
  416. package/dist/tests/generics/call-site-rewriting.test.js +92 -0
  417. package/dist/tests/generics/call-site-rewriting.test.js.map +1 -0
  418. package/dist/tests/generics/generic-classes.test.d.ts +6 -0
  419. package/dist/tests/generics/generic-classes.test.d.ts.map +1 -0
  420. package/dist/tests/generics/generic-classes.test.js +55 -0
  421. package/dist/tests/generics/generic-classes.test.js.map +1 -0
  422. package/dist/tests/generics/generic-functions.test.d.ts +6 -0
  423. package/dist/tests/generics/generic-functions.test.d.ts.map +1 -0
  424. package/dist/tests/generics/generic-functions.test.js +275 -0
  425. package/dist/tests/generics/generic-functions.test.js.map +1 -0
  426. package/dist/tests/generics/interfaces.test.d.ts +6 -0
  427. package/dist/tests/generics/interfaces.test.d.ts.map +1 -0
  428. package/dist/tests/generics/interfaces.test.js +139 -0
  429. package/dist/tests/generics/interfaces.test.js.map +1 -0
  430. package/dist/tests/generics/type-aliases.test.d.ts +6 -0
  431. package/dist/tests/generics/type-aliases.test.d.ts.map +1 -0
  432. package/dist/tests/generics/type-aliases.test.js +124 -0
  433. package/dist/tests/generics/type-aliases.test.js.map +1 -0
  434. package/dist/tests/hierarchical-bindings-full-pipeline.test.d.ts +6 -0
  435. package/dist/tests/hierarchical-bindings-full-pipeline.test.d.ts.map +1 -0
  436. package/dist/tests/hierarchical-bindings-full-pipeline.test.js +202 -0
  437. package/dist/tests/hierarchical-bindings-full-pipeline.test.js.map +1 -0
  438. package/dist/tests/ref-out-parameters.test.d.ts +5 -0
  439. package/dist/tests/ref-out-parameters.test.d.ts.map +1 -0
  440. package/dist/tests/ref-out-parameters.test.js +136 -0
  441. package/dist/tests/ref-out-parameters.test.js.map +1 -0
  442. package/dist/tests/structs/struct-emission.test.d.ts +5 -0
  443. package/dist/tests/structs/struct-emission.test.d.ts.map +1 -0
  444. package/dist/tests/structs/struct-emission.test.js +165 -0
  445. package/dist/tests/structs/struct-emission.test.js.map +1 -0
  446. package/dist/type-assertion.test.d.ts +6 -0
  447. package/dist/type-assertion.test.d.ts.map +1 -0
  448. package/dist/type-assertion.test.js +133 -0
  449. package/dist/type-assertion.test.js.map +1 -0
  450. package/dist/type-emitter.d.ts +6 -0
  451. package/dist/type-emitter.d.ts.map +1 -0
  452. package/dist/type-emitter.js +6 -0
  453. package/dist/type-emitter.js.map +1 -0
  454. package/dist/types/arrays.d.ts +12 -0
  455. package/dist/types/arrays.d.ts.map +1 -0
  456. package/dist/types/arrays.js +15 -0
  457. package/dist/types/arrays.js.map +1 -0
  458. package/dist/types/dictionaries.d.ts +17 -0
  459. package/dist/types/dictionaries.d.ts.map +1 -0
  460. package/dist/types/dictionaries.js +37 -0
  461. package/dist/types/dictionaries.js.map +1 -0
  462. package/dist/types/emitter.d.ts +10 -0
  463. package/dist/types/emitter.d.ts.map +1 -0
  464. package/dist/types/emitter.js +53 -0
  465. package/dist/types/emitter.js.map +1 -0
  466. package/dist/types/functions.d.ts +12 -0
  467. package/dist/types/functions.d.ts.map +1 -0
  468. package/dist/types/functions.js +34 -0
  469. package/dist/types/functions.js.map +1 -0
  470. package/dist/types/index.d.ts +14 -0
  471. package/dist/types/index.d.ts.map +1 -0
  472. package/{src/types/index.ts → dist/types/index.js} +1 -1
  473. package/dist/types/index.js.map +1 -0
  474. package/dist/types/index.test.d.ts +6 -0
  475. package/dist/types/index.test.d.ts.map +1 -0
  476. package/dist/types/index.test.js +109 -0
  477. package/dist/types/index.test.js.map +1 -0
  478. package/dist/types/intersections.d.ts +12 -0
  479. package/dist/types/intersections.d.ts.map +1 -0
  480. package/dist/types/intersections.js +13 -0
  481. package/dist/types/intersections.js.map +1 -0
  482. package/dist/types/literals.d.ts +12 -0
  483. package/dist/types/literals.d.ts.map +1 -0
  484. package/dist/types/literals.js +20 -0
  485. package/dist/types/literals.js.map +1 -0
  486. package/{src/types/objects.ts → dist/types/objects.d.ts} +4 -11
  487. package/dist/types/objects.d.ts.map +1 -0
  488. package/dist/types/objects.js +19 -0
  489. package/dist/types/objects.js.map +1 -0
  490. package/dist/types/parameters.d.ts +15 -0
  491. package/dist/types/parameters.d.ts.map +1 -0
  492. package/dist/types/parameters.js +69 -0
  493. package/dist/types/parameters.js.map +1 -0
  494. package/dist/types/parameters.test.d.ts +5 -0
  495. package/dist/types/parameters.test.d.ts.map +1 -0
  496. package/dist/types/parameters.test.js +135 -0
  497. package/dist/types/parameters.test.js.map +1 -0
  498. package/dist/types/primitives.d.ts +12 -0
  499. package/dist/types/primitives.d.ts.map +1 -0
  500. package/dist/types/primitives.js +17 -0
  501. package/dist/types/primitives.js.map +1 -0
  502. package/dist/types/references.d.ts +14 -0
  503. package/dist/types/references.d.ts.map +1 -0
  504. package/dist/types/references.js +154 -0
  505. package/dist/types/references.js.map +1 -0
  506. package/dist/types/unions.d.ts +12 -0
  507. package/dist/types/unions.d.ts.map +1 -0
  508. package/dist/types/unions.js +45 -0
  509. package/dist/types/unions.js.map +1 -0
  510. package/dist/types/unions.test.d.ts +6 -0
  511. package/dist/types/unions.test.d.ts.map +1 -0
  512. package/dist/types/unions.test.js +367 -0
  513. package/dist/types/unions.test.js.map +1 -0
  514. package/dist/types.d.ts +7 -0
  515. package/dist/types.d.ts.map +1 -0
  516. package/dist/types.js +6 -0
  517. package/dist/types.js.map +1 -0
  518. package/dist/union.test.d.ts +6 -0
  519. package/dist/union.test.d.ts.map +1 -0
  520. package/dist/union.test.js +367 -0
  521. package/dist/union.test.js.map +1 -0
  522. package/package.json +5 -2
  523. package/scripts/update-golden-tests.ts +0 -119
  524. package/src/adapter-generator.ts +0 -112
  525. package/src/array.test.ts +0 -301
  526. package/src/constants.ts +0 -32
  527. package/src/core/exports.ts +0 -36
  528. package/src/core/imports.test.ts +0 -83
  529. package/src/core/imports.ts +0 -243
  530. package/src/core/module-emitter/assembly.ts +0 -83
  531. package/src/core/module-emitter/header.ts +0 -19
  532. package/src/core/module-emitter/namespace.ts +0 -39
  533. package/src/core/module-emitter/orchestrator.ts +0 -98
  534. package/src/core/module-emitter/separation.ts +0 -41
  535. package/src/core/module-emitter/static-container.ts +0 -75
  536. package/src/core/module-emitter.test.ts +0 -154
  537. package/src/core/module-map.ts +0 -218
  538. package/src/core/options.ts +0 -16
  539. package/src/core/type-params.ts +0 -34
  540. package/src/emitter-types/context.ts +0 -91
  541. package/src/emitter-types/core.ts +0 -138
  542. package/src/emitter-types/csharp-types.ts +0 -42
  543. package/src/emitter-types/formatting.ts +0 -13
  544. package/src/emitter-types/fqn.ts +0 -81
  545. package/src/emitter-types/index.ts +0 -31
  546. package/src/emitter.ts +0 -107
  547. package/src/expression-emitter.ts +0 -112
  548. package/src/expressions/access.ts +0 -104
  549. package/src/expressions/calls.ts +0 -264
  550. package/src/expressions/collections.ts +0 -354
  551. package/src/expressions/functions.ts +0 -71
  552. package/src/expressions/identifiers.ts +0 -125
  553. package/src/expressions/index.test.ts +0 -515
  554. package/src/expressions/literals.ts +0 -138
  555. package/src/expressions/operators.ts +0 -211
  556. package/src/expressions/other.ts +0 -63
  557. package/src/generator-exchange.ts +0 -120
  558. package/src/generator.test.ts +0 -193
  559. package/src/golden-tests/config-parser.ts +0 -67
  560. package/src/golden-tests/discovery.ts +0 -61
  561. package/src/golden-tests/registration.ts +0 -26
  562. package/src/golden-tests/runner.ts +0 -131
  563. package/src/golden-tests/tree-builder.ts +0 -43
  564. package/src/golden-tests/types.ts +0 -21
  565. package/src/hierarchical-bindings.test.ts +0 -258
  566. package/src/integration.test.ts +0 -303
  567. package/src/specialization/call-site-rewriting.test.ts +0 -99
  568. package/src/specialization/collection/expressions.ts +0 -184
  569. package/src/specialization/collection/orchestrator.ts +0 -25
  570. package/src/specialization/collection/statements.ts +0 -91
  571. package/src/specialization/collection.ts +0 -10
  572. package/src/specialization/generation.ts +0 -189
  573. package/src/specialization/generic-classes.test.ts +0 -59
  574. package/src/specialization/generic-functions.test.ts +0 -292
  575. package/src/specialization/helpers.ts +0 -39
  576. package/src/specialization/interfaces.test.ts +0 -151
  577. package/src/specialization/naming.ts +0 -34
  578. package/src/specialization/substitution.ts +0 -186
  579. package/src/specialization/type-aliases.test.ts +0 -134
  580. package/src/specialization/types.ts +0 -19
  581. package/src/statement-emitter.ts +0 -117
  582. package/src/statements/blocks.ts +0 -115
  583. package/src/statements/classes/inline-types.ts +0 -79
  584. package/src/statements/classes/members/constructors.ts +0 -123
  585. package/src/statements/classes/members/methods.ts +0 -137
  586. package/src/statements/classes/members/orchestrator.ts +0 -33
  587. package/src/statements/classes/members/properties.ts +0 -62
  588. package/src/statements/classes/parameters.ts +0 -69
  589. package/src/statements/classes/properties.ts +0 -95
  590. package/src/statements/classes.ts +0 -14
  591. package/src/statements/control/conditionals.ts +0 -134
  592. package/src/statements/control/exceptions.ts +0 -59
  593. package/src/statements/control/loops.ts +0 -250
  594. package/src/statements/control.ts +0 -14
  595. package/src/statements/declarations/classes.ts +0 -89
  596. package/src/statements/declarations/enums.ts +0 -32
  597. package/src/statements/declarations/functions.ts +0 -147
  598. package/src/statements/declarations/interfaces.ts +0 -116
  599. package/src/statements/declarations/structs.test.ts +0 -182
  600. package/src/statements/declarations/type-aliases.ts +0 -104
  601. package/src/statements/declarations/variables.ts +0 -159
  602. package/src/statements/declarations.ts +0 -13
  603. package/src/statements/index.test.ts +0 -258
  604. package/src/statements/index.ts +0 -43
  605. package/src/type-assertion.test.ts +0 -143
  606. package/src/type-emitter.ts +0 -18
  607. package/src/types/arrays.ts +0 -21
  608. package/src/types/dictionaries.ts +0 -52
  609. package/src/types/emitter.ts +0 -76
  610. package/src/types/functions.ts +0 -45
  611. package/src/types/index.test.ts +0 -116
  612. package/src/types/intersections.ts +0 -19
  613. package/src/types/literals.ts +0 -26
  614. package/src/types/parameters.test.ts +0 -146
  615. package/src/types/parameters.ts +0 -95
  616. package/src/types/primitives.ts +0 -24
  617. package/src/types/references.ts +0 -187
  618. package/src/types/unions.test.ts +0 -397
  619. package/src/types/unions.ts +0 -62
  620. package/src/types.ts +0 -33
  621. package/testcases/README.md +0 -213
  622. package/testcases/arrays/basic/ArrayLiteral.ts +0 -4
  623. package/testcases/arrays/basic/config.yaml +0 -1
  624. package/testcases/arrays/destructuring/ArrayDestructure.ts +0 -4
  625. package/testcases/arrays/destructuring/config.yaml +0 -1
  626. package/testcases/arrays/methods/ArrayMethods.ts +0 -6
  627. package/testcases/arrays/methods/config.yaml +0 -1
  628. package/testcases/arrays/multidimensional/MultiDimensional.ts +0 -10
  629. package/testcases/arrays/multidimensional/config.yaml +0 -1
  630. package/testcases/arrays/spread/ArraySpread.ts +0 -3
  631. package/testcases/arrays/spread/config.yaml +0 -1
  632. package/testcases/async/basic/AsyncFunction.ts +0 -5
  633. package/testcases/async/basic/config.yaml +0 -1
  634. package/testcases/classes/abstract/AbstractClasses.ts +0 -53
  635. package/testcases/classes/abstract/config.yaml +0 -1
  636. package/testcases/classes/basic/Person.ts +0 -12
  637. package/testcases/classes/basic/config.yaml +0 -1
  638. package/testcases/classes/constructor/User.ts +0 -11
  639. package/testcases/classes/constructor/config.yaml +0 -1
  640. package/testcases/classes/field-inference/Counter.ts +0 -11
  641. package/testcases/classes/field-inference/config.yaml +0 -1
  642. package/testcases/classes/inheritance/Inheritance.ts +0 -24
  643. package/testcases/classes/inheritance/config.yaml +0 -1
  644. package/testcases/classes/static-members/MathHelper.ts +0 -12
  645. package/testcases/classes/static-members/config.yaml +0 -1
  646. package/testcases/control-flow/error-handling/ErrorHandling.ts +0 -13
  647. package/testcases/control-flow/error-handling/config.yaml +0 -1
  648. package/testcases/control-flow/loops/Loops.ts +0 -21
  649. package/testcases/control-flow/loops/config.yaml +0 -1
  650. package/testcases/control-flow/switch/SwitchStatement.ts +0 -15
  651. package/testcases/control-flow/switch/config.yaml +0 -1
  652. package/testcases/edge-cases/complex-expressions/ComplexExpressions.ts +0 -10
  653. package/testcases/edge-cases/complex-expressions/config.yaml +0 -1
  654. package/testcases/edge-cases/nested-scopes/NestedScopes.ts +0 -10
  655. package/testcases/edge-cases/nested-scopes/config.yaml +0 -1
  656. package/testcases/edge-cases/shadowing/Shadowing.ts +0 -16
  657. package/testcases/edge-cases/shadowing/config.yaml +0 -1
  658. package/testcases/functions/arrow/ArrowFunction.ts +0 -5
  659. package/testcases/functions/arrow/config.yaml +0 -1
  660. package/testcases/functions/basic/Greet.ts +0 -3
  661. package/testcases/functions/basic/config.yaml +0 -1
  662. package/testcases/functions/closures/Closures.ts +0 -11
  663. package/testcases/functions/closures/config.yaml +0 -1
  664. package/testcases/functions/default-params/DefaultParams.ts +0 -7
  665. package/testcases/functions/default-params/config.yaml +0 -1
  666. package/testcases/functions/rest-params/RestParams.ts +0 -7
  667. package/testcases/functions/rest-params/config.yaml +0 -1
  668. package/testcases/functions/type-guards/TypeGuards.ts +0 -52
  669. package/testcases/functions/type-guards/config.yaml +0 -1
  670. package/testcases/operators/logical/LogicalOperators.ts +0 -11
  671. package/testcases/operators/logical/config.yaml +0 -1
  672. package/testcases/operators/nullish-coalescing/NullishCoalescing.ts +0 -7
  673. package/testcases/operators/nullish-coalescing/config.yaml +0 -1
  674. package/testcases/operators/optional-chaining/OptionalChaining.ts +0 -15
  675. package/testcases/operators/optional-chaining/config.yaml +0 -1
  676. package/testcases/real-world/advanced-generics/advanced-generics.ts +0 -116
  677. package/testcases/real-world/advanced-generics/config.yaml +0 -1
  678. package/testcases/real-world/async-ops/async-ops.ts +0 -67
  679. package/testcases/real-world/async-ops/config.yaml +0 -1
  680. package/testcases/real-world/business-logic/business-logic.ts +0 -215
  681. package/testcases/real-world/business-logic/config.yaml +0 -1
  682. package/testcases/real-world/calculator/calculator.ts +0 -29
  683. package/testcases/real-world/calculator/config.yaml +0 -1
  684. package/testcases/real-world/data-structures/config.yaml +0 -1
  685. package/testcases/real-world/data-structures/data-structures.ts +0 -133
  686. package/testcases/real-world/functional/config.yaml +0 -1
  687. package/testcases/real-world/functional/functional.ts +0 -116
  688. package/testcases/real-world/shapes/config.yaml +0 -1
  689. package/testcases/real-world/shapes/shapes.ts +0 -87
  690. package/testcases/real-world/string-utils/config.yaml +0 -1
  691. package/testcases/real-world/string-utils/string-utils.ts +0 -47
  692. package/testcases/real-world/todo-list/config.yaml +0 -1
  693. package/testcases/real-world/todo-list/todo-list.ts +0 -52
  694. package/testcases/real-world/type-guards/config.yaml +0 -1
  695. package/testcases/real-world/type-guards/type-guards.ts +0 -71
  696. package/testcases/structs/basic/Point.ts +0 -9
  697. package/testcases/structs/basic/config.yaml +0 -1
  698. package/testcases/types/conditional/ConditionalTypes.ts +0 -35
  699. package/testcases/types/conditional/config.yaml +0 -1
  700. package/testcases/types/constants/ModuleConstants.ts +0 -6
  701. package/testcases/types/constants/config.yaml +0 -1
  702. package/testcases/types/generics/Generics.ts +0 -15
  703. package/testcases/types/generics/config.yaml +0 -1
  704. package/testcases/types/interfaces/Interfaces.ts +0 -14
  705. package/testcases/types/interfaces/config.yaml +0 -1
  706. package/testcases/types/mapped/MappedTypes.ts +0 -27
  707. package/testcases/types/mapped/config.yaml +0 -1
  708. package/testcases/types/tuples-intersections/TuplesAndIntersections.ts +0 -46
  709. package/testcases/types/tuples-intersections/config.yaml +0 -1
  710. package/testcases/types/unions/UnionTypes.ts +0 -11
  711. package/testcases/types/unions/config.yaml +0 -1
  712. package/tsconfig.json +0 -14
@@ -0,0 +1 @@
1
+ {"fileNames":["../../../node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/typescript/lib/lib.es2020.d.ts","../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/typescript/lib/lib.es2016.intl.d.ts","../../../node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../../../node_modules/typescript/lib/lib.es2017.date.d.ts","../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../node_modules/typescript/lib/lib.decorators.d.ts","../../../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../frontend/dist/types/diagnostic.d.ts","../../frontend/dist/types/module.d.ts","../../frontend/dist/types/result.d.ts","../../../node_modules/typescript/lib/typescript.d.ts","../../frontend/dist/dotnet-metadata.d.ts","../../frontend/dist/program/bindings.d.ts","../../frontend/dist/resolver/dotnet-import-resolver.d.ts","../../frontend/dist/program/types.d.ts","../../frontend/dist/program/config.d.ts","../../frontend/dist/program/metadata.d.ts","../../frontend/dist/program/diagnostics.d.ts","../../frontend/dist/program/creation.d.ts","../../frontend/dist/program/queries.d.ts","../../frontend/dist/ir/types/expressions.d.ts","../../frontend/dist/ir/types/helpers.d.ts","../../frontend/dist/ir/types/ir-types.d.ts","../../frontend/dist/ir/types/statements.d.ts","../../frontend/dist/ir/types/module.d.ts","../../frontend/dist/ir/types/guards.d.ts","../../frontend/dist/ir/types/index.d.ts","../../frontend/dist/ir/types.d.ts","../../frontend/dist/program/dependency-graph.d.ts","../../frontend/dist/program/index.d.ts","../../frontend/dist/program.d.ts","../../frontend/dist/resolver/types.d.ts","../../frontend/dist/resolver/import-resolution.d.ts","../../frontend/dist/resolver/path-resolution.d.ts","../../frontend/dist/resolver/namespace.d.ts","../../frontend/dist/resolver/naming.d.ts","../../frontend/dist/resolver/index.d.ts","../../frontend/dist/resolver.d.ts","../../frontend/dist/validation/orchestrator.d.ts","../../frontend/dist/validation/imports.d.ts","../../frontend/dist/validation/exports.d.ts","../../frontend/dist/validation/features.d.ts","../../frontend/dist/validation/generics.d.ts","../../frontend/dist/validation/static-safety.d.ts","../../frontend/dist/graph/helpers.d.ts","../../frontend/dist/validation/helpers.d.ts","../../frontend/dist/validation/index.d.ts","../../frontend/dist/validator.d.ts","../../frontend/dist/symbol-table/types.d.ts","../../frontend/dist/symbol-table/creation.d.ts","../../frontend/dist/symbol-table/builder.d.ts","../../frontend/dist/symbol-table/queries.d.ts","../../frontend/dist/symbol-table/helpers.d.ts","../../frontend/dist/symbol-table/index.d.ts","../../frontend/dist/symbol-table.d.ts","../../frontend/dist/graph/types.d.ts","../../frontend/dist/graph/builder.d.ts","../../frontend/dist/graph/extraction/orchestrator.d.ts","../../frontend/dist/graph/extraction/imports.d.ts","../../frontend/dist/graph/extraction/exports.d.ts","../../frontend/dist/graph/extraction/index.d.ts","../../frontend/dist/graph/extraction.d.ts","../../frontend/dist/graph/circular.d.ts","../../frontend/dist/dependency-graph.d.ts","../../frontend/dist/ir/builder/types.d.ts","../../frontend/dist/ir/builder/orchestrator.d.ts","../../frontend/dist/ir/builder/imports.d.ts","../../frontend/dist/ir/builder/exports.d.ts","../../frontend/dist/ir/builder/statements.d.ts","../../frontend/dist/ir/builder/helpers.d.ts","../../frontend/dist/ir/builder.d.ts","../../frontend/dist/ir/index.d.ts","../../frontend/dist/index.d.ts","../../frontend/dist/types/metadata.d.ts","../../frontend/dist/types/bindings.d.ts","../src/emitter-types/core.ts","../src/emitter-types/csharp-types.ts","../../frontend/dist/metadata/loader.d.ts","../../frontend/dist/metadata/bindings-loader.d.ts","../../frontend/dist/metadata/library-loader.d.ts","../../frontend/dist/metadata/index.d.ts","../src/emitter-types/context.ts","../src/emitter-types/formatting.ts","../src/emitter-types/fqn.ts","../src/emitter-types/index.ts","../src/types.ts","../src/types/primitives.ts","../../frontend/dist/types/nested-types.d.ts","../src/types/references.ts","../src/types/arrays.ts","../src/types/functions.ts","../src/types/objects.ts","../src/types/dictionaries.ts","../src/types/unions.ts","../src/types/intersections.ts","../src/types/literals.ts","../src/types/emitter.ts","../src/types/parameters.ts","../src/types/index.ts","../src/type-emitter.ts","../src/adapter-generator.ts","../../../node_modules/@types/mocha/index.d.ts","../../../node_modules/@types/deep-eql/index.d.ts","../../../node_modules/@types/chai/index.d.ts","../src/specialization/types.ts","../src/specialization/helpers.ts","../src/specialization/collection/expressions.ts","../src/specialization/collection/statements.ts","../src/specialization/collection/orchestrator.ts","../src/specialization/collection/index.ts","../src/specialization/collection.ts","../src/expressions/literals.ts","../src/expressions/identifiers.ts","../src/expressions/collections.ts","../../frontend/dist/types/explicit-views.d.ts","../src/expressions/access.ts","../src/expressions/calls.ts","../src/expressions/operators.ts","../src/expressions/functions.ts","../src/expressions/other.ts","../src/expression-emitter.ts","../src/statements/declarations/variables.ts","../src/statements/blocks.ts","../src/statements/classes/helpers.ts","../src/statements/classes/parameters.ts","../src/statements/classes/members/properties.ts","../src/statements/classes/members/methods.ts","../src/statements/classes/members/constructors.ts","../src/statements/classes/members/orchestrator.ts","../src/statements/classes/members/index.ts","../src/statements/classes/members.ts","../src/statements/classes/properties.ts","../src/statements/classes/inline-types.ts","../src/statements/classes/index.ts","../src/statements/classes.ts","../src/statements/declarations/functions.ts","../src/statements/declarations/classes.ts","../src/statements/declarations/interfaces.ts","../src/statements/declarations/enums.ts","../src/statements/declarations/type-aliases.ts","../src/statements/declarations/index.ts","../src/statements/declarations.ts","../src/statements/control/loops.ts","../src/statements/control/conditionals.ts","../src/statements/control/exceptions.ts","../src/statements/control/index.ts","../src/statements/control.ts","../src/statement-emitter.ts","../src/specialization/naming.ts","../src/specialization/substitution.ts","../src/specialization/generation.ts","../src/specialization-generator.ts","../src/generator-exchange.ts","../src/core/options.ts","../src/core/type-params.ts","../src/core/module-map.ts","../src/core/imports.ts","../src/constants.ts","../src/core/module-emitter/header.ts","../src/core/module-emitter/separation.ts","../src/core/module-emitter/namespace.ts","../src/core/exports.ts","../src/core/module-emitter/static-container.ts","../src/core/module-emitter/assembly.ts","../src/core/module-emitter/orchestrator.ts","../src/core/module-emitter/index.ts","../src/core/module-emitter.ts","../src/emitter.ts","../src/array.test.ts","../src/generator.test.ts","../src/golden-tests/types.ts","../../../node_modules/yaml/dist/parse/line-counter.d.ts","../../../node_modules/yaml/dist/errors.d.ts","../../../node_modules/yaml/dist/doc/applyReviver.d.ts","../../../node_modules/yaml/dist/log.d.ts","../../../node_modules/yaml/dist/nodes/toJS.d.ts","../../../node_modules/yaml/dist/nodes/Scalar.d.ts","../../../node_modules/yaml/dist/stringify/stringify.d.ts","../../../node_modules/yaml/dist/nodes/Collection.d.ts","../../../node_modules/yaml/dist/nodes/YAMLSeq.d.ts","../../../node_modules/yaml/dist/schema/types.d.ts","../../../node_modules/yaml/dist/schema/common/map.d.ts","../../../node_modules/yaml/dist/schema/common/seq.d.ts","../../../node_modules/yaml/dist/schema/common/string.d.ts","../../../node_modules/yaml/dist/stringify/foldFlowLines.d.ts","../../../node_modules/yaml/dist/stringify/stringifyNumber.d.ts","../../../node_modules/yaml/dist/stringify/stringifyString.d.ts","../../../node_modules/yaml/dist/util.d.ts","../../../node_modules/yaml/dist/nodes/YAMLMap.d.ts","../../../node_modules/yaml/dist/nodes/identity.d.ts","../../../node_modules/yaml/dist/schema/Schema.d.ts","../../../node_modules/yaml/dist/doc/createNode.d.ts","../../../node_modules/yaml/dist/nodes/addPairToJSMap.d.ts","../../../node_modules/yaml/dist/nodes/Pair.d.ts","../../../node_modules/yaml/dist/schema/tags.d.ts","../../../node_modules/yaml/dist/options.d.ts","../../../node_modules/yaml/dist/nodes/Node.d.ts","../../../node_modules/yaml/dist/parse/cst-scalar.d.ts","../../../node_modules/yaml/dist/parse/cst-stringify.d.ts","../../../node_modules/yaml/dist/parse/cst-visit.d.ts","../../../node_modules/yaml/dist/parse/cst.d.ts","../../../node_modules/yaml/dist/nodes/Alias.d.ts","../../../node_modules/yaml/dist/doc/Document.d.ts","../../../node_modules/yaml/dist/doc/directives.d.ts","../../../node_modules/yaml/dist/compose/composer.d.ts","../../../node_modules/yaml/dist/parse/lexer.d.ts","../../../node_modules/yaml/dist/parse/parser.d.ts","../../../node_modules/yaml/dist/public-api.d.ts","../../../node_modules/yaml/dist/schema/yaml-1.1/omap.d.ts","../../../node_modules/yaml/dist/schema/yaml-1.1/set.d.ts","../../../node_modules/yaml/dist/visit.d.ts","../../../node_modules/yaml/dist/index.d.ts","../src/golden-tests/config-parser.ts","../src/golden-tests/discovery.ts","../src/golden-tests/tree-builder.ts","../src/golden-tests/runner.ts","../src/golden-tests/registration.ts","../src/golden-tests/index.ts","../src/golden.test.ts","../src/hierarchical-bindings.test.ts","../src/index.ts","../src/integration.test.ts","../src/type-assertion.test.ts","../src/core/imports.test.ts","../src/core/index.ts","../src/core/module-emitter.test.ts","../src/expressions/index.test.ts","../src/expressions/index.ts","../src/specialization/call-site-rewriting.test.ts","../src/specialization/generic-classes.test.ts","../src/specialization/generic-functions.test.ts","../src/specialization/index.ts","../src/specialization/interfaces.test.ts","../src/specialization/type-aliases.test.ts","../src/statements/index.test.ts","../src/statements/index.ts","../src/statements/declarations/structs.test.ts","../src/types/index.test.ts","../src/types/parameters.test.ts","../src/types/unions.test.ts","../../../node_modules/@types/estree/index.d.ts","../../../node_modules/@types/json-schema/index.d.ts","../../../node_modules/@types/node/assert.d.ts","../../../node_modules/@types/node/assert/strict.d.ts","../../../node_modules/undici-types/header.d.ts","../../../node_modules/undici-types/readable.d.ts","../../../node_modules/undici-types/file.d.ts","../../../node_modules/undici-types/fetch.d.ts","../../../node_modules/undici-types/formdata.d.ts","../../../node_modules/undici-types/connector.d.ts","../../../node_modules/undici-types/client.d.ts","../../../node_modules/undici-types/errors.d.ts","../../../node_modules/undici-types/dispatcher.d.ts","../../../node_modules/undici-types/global-dispatcher.d.ts","../../../node_modules/undici-types/global-origin.d.ts","../../../node_modules/undici-types/pool-stats.d.ts","../../../node_modules/undici-types/pool.d.ts","../../../node_modules/undici-types/handlers.d.ts","../../../node_modules/undici-types/balanced-pool.d.ts","../../../node_modules/undici-types/agent.d.ts","../../../node_modules/undici-types/mock-interceptor.d.ts","../../../node_modules/undici-types/mock-agent.d.ts","../../../node_modules/undici-types/mock-client.d.ts","../../../node_modules/undici-types/mock-pool.d.ts","../../../node_modules/undici-types/mock-errors.d.ts","../../../node_modules/undici-types/proxy-agent.d.ts","../../../node_modules/undici-types/api.d.ts","../../../node_modules/undici-types/cookies.d.ts","../../../node_modules/undici-types/patch.d.ts","../../../node_modules/undici-types/filereader.d.ts","../../../node_modules/undici-types/diagnostics-channel.d.ts","../../../node_modules/undici-types/websocket.d.ts","../../../node_modules/undici-types/content-type.d.ts","../../../node_modules/undici-types/cache.d.ts","../../../node_modules/undici-types/interceptors.d.ts","../../../node_modules/undici-types/index.d.ts","../../../node_modules/@types/node/globals.d.ts","../../../node_modules/@types/node/async_hooks.d.ts","../../../node_modules/@types/node/buffer.d.ts","../../../node_modules/@types/node/child_process.d.ts","../../../node_modules/@types/node/cluster.d.ts","../../../node_modules/@types/node/console.d.ts","../../../node_modules/@types/node/constants.d.ts","../../../node_modules/@types/node/crypto.d.ts","../../../node_modules/@types/node/dgram.d.ts","../../../node_modules/@types/node/diagnostics_channel.d.ts","../../../node_modules/@types/node/dns.d.ts","../../../node_modules/@types/node/dns/promises.d.ts","../../../node_modules/@types/node/domain.d.ts","../../../node_modules/@types/node/dom-events.d.ts","../../../node_modules/@types/node/events.d.ts","../../../node_modules/@types/node/fs.d.ts","../../../node_modules/@types/node/fs/promises.d.ts","../../../node_modules/@types/node/http.d.ts","../../../node_modules/@types/node/http2.d.ts","../../../node_modules/@types/node/https.d.ts","../../../node_modules/@types/node/inspector.d.ts","../../../node_modules/@types/node/module.d.ts","../../../node_modules/@types/node/net.d.ts","../../../node_modules/@types/node/os.d.ts","../../../node_modules/@types/node/path.d.ts","../../../node_modules/@types/node/perf_hooks.d.ts","../../../node_modules/@types/node/process.d.ts","../../../node_modules/@types/node/punycode.d.ts","../../../node_modules/@types/node/querystring.d.ts","../../../node_modules/@types/node/readline.d.ts","../../../node_modules/@types/node/readline/promises.d.ts","../../../node_modules/@types/node/repl.d.ts","../../../node_modules/@types/node/sea.d.ts","../../../node_modules/@types/node/stream.d.ts","../../../node_modules/@types/node/stream/promises.d.ts","../../../node_modules/@types/node/stream/consumers.d.ts","../../../node_modules/@types/node/stream/web.d.ts","../../../node_modules/@types/node/string_decoder.d.ts","../../../node_modules/@types/node/test.d.ts","../../../node_modules/@types/node/timers.d.ts","../../../node_modules/@types/node/timers/promises.d.ts","../../../node_modules/@types/node/tls.d.ts","../../../node_modules/@types/node/trace_events.d.ts","../../../node_modules/@types/node/tty.d.ts","../../../node_modules/@types/node/url.d.ts","../../../node_modules/@types/node/util.d.ts","../../../node_modules/@types/node/v8.d.ts","../../../node_modules/@types/node/vm.d.ts","../../../node_modules/@types/node/wasi.d.ts","../../../node_modules/@types/node/worker_threads.d.ts","../../../node_modules/@types/node/zlib.d.ts","../../../node_modules/@types/node/globals.global.d.ts","../../../node_modules/@types/node/index.d.ts"],"fileIdsList":[[142],[282],[317],[318,323,352],[319,324,330,331,338,349,360],[319,320,330,338],[321,361],[322,323,331,339],[323,349,357],[324,326,330,338],[317,325],[326,327],[330],[328,330],[317,330],[330,331,332,349,360],[330,331,332,345,349,352],[315,318,365],[326,330,333,338,349,360],[330,331,333,334,338,349,357,360],[333,335,349,357,360],[282,283,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367],[330,336],[337,360,365],[326,330,338,349],[339],[340],[317,341],[338,339,342,359,365],[343],[344],[330,345,346],[345,347,361,363],[318,330,349,350,351,352],[318,349,351],[349,350],[352],[353],[317,349],[330,355,356],[355,356],[323,338,349,357],[358],[338,359],[318,333,344,360],[323,361],[349,362],[337,363],[364],[318,323,330,332,341,349,360,363,365],[349,366],[292,296,360],[292,349,360],[287],[289,292,357,360],[338,357],[368],[287,368],[289,292,338,360],[284,285,288,291,318,330,349,360],[284,290],[288,292,318,352,360,368],[318,368],[308,318,368],[286,287,368],[292],[286,287,288,289,290,291,292,293,294,296,297,298,299,300,301,302,303,304,305,306,307,309,310,311,312,313,314],[292,299,300],[290,292,300,301],[291],[284,287,292],[292,296,300,301],[296],[290,292,295,360],[284,289,290,292,296,299],[318,349],[287,292,308,318,365,368],[212,235,236,240,242,243],[212,216,219,228,229,230,233,235,236,241,243],[220,230,236,242],[242],[211],[211,212,216,219,220,228,229,230,233,234,235,236,240,241,242,244,245,246,247,248,249,250],[215,216,217,219,228,236,240,242],[229,230,236],[215,216,217,219,228,229,235,240,241,242],[215,217,229,230,231,232,236,240],[215,236,240],[215,216,217,218,227,230,233,236,240],[215,216,217,218,230,231,233,236,240],[215,228,233],[216,219,228,233,236,241,242],[236,242],[211,213,214,216,220,230,233,234,236,243],[212,216,236,240],[240],[237,238,239],[213,235,236,242,244],[220,229,233,235],[220],[220,235],[216,217,219,228,230,231,235,236],[215,219,220,227,228,230],[215,216,217,220,227,228,230,233],[235,241,242],[216],[216,217],[214,215,217,221,222,223,224,225,226,228,231,233],[112,125,139],[112,141,143,207],[112,125,160],[112,125,195],[193,194,196,201,206],[205],[112,125],[112,125,197],[198,199,200,202,203,204],[112,125,187],[112,125,140,191,192,193,194,196,198,199,200,202,203],[112],[112,125,187,201],[112,115],[125],[115,120],[113,114],[115],[115,116,121,122,123],[112,125,195,206],[112,125,151,152,153,155,156,157,158,159],[112,125,154,160],[112,125,152,160],[112,125,139,160],[112,125,160,187],[151,152,153,155,156,157,158,159],[210,251],[210,252,331,340],[210,252,253,254,255,256],[141,210,255],[112,143,197,207,210,331,340],[210],[257,340,360],[50,112,141,143,207],[125,139,160,187,207],[144,145,150,188,189,190],[149],[112,144,145,147],[146,147,148],[112,144,147],[112,144,146],[112,125,144,187,188,189],[112,145],[112,125,162,174,181,186],[173],[163,164,170,171,172],[112,125,163,171],[169],[112,125,160,162,164],[165,166,167,168],[112,125,139,162,164],[112,125,165,166,167],[112,125,139,163,164],[185],[112,125,160,162],[182,183,184],[180],[112,125,139,160,174],[112,125,139,162,174],[161,175,176,177,178,179],[112,125,139,174],[112,141,143,260],[162,174,181,186],[138],[124],[112,125,136],[112,125,126,128,129,130,131,132,133,134,135],[126,128,129,130,131,133,134,135,136,137],[112,125,141,143,164],[112,125,127,136],[84,95,96,101,102],[70,95],[47,49],[100],[48,50],[48,50,70],[97,98,99],[50],[47,48,94],[47,48,49,51,70,77,87,94,103,111],[104,105,106,107,108,109],[50,67],[50,53,67],[47,49,50,67,70,104],[67,110],[65,66],[61,62,63],[60,63],[60,62],[60,61,62,63,64,65],[61],[60,61,62],[47,49,114],[117,118,119],[47,49,113,114],[47,49,113],[68,69],[47,49,50,54],[47,49,54,67],[47,50],[52,54,55,56,57,58,59,68],[51],[50,54],[50,51,52,53],[76],[47,49,53,71],[53,71,72,73,74,75],[93],[50,88],[88],[88,89,90,91,92],[113],[47,50,70],[50,84],[78,79,80,81,82,83,85],[86]],"fileInfos":[{"version":"c430d44666289dae81f30fa7b2edebf186ecc91a2d4c71266ea6ae76388792e1","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"0559b1f683ac7505ae451f9a96ce4c3c92bdc71411651ca6ddb0e88baaaad6a3","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"fb0f136d372979348d59b3f5020b4cdb81b5504192b1cacff5d1fbba29378aa1","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"a680117f487a4d2f30ea46f1b4b7f58bef1480456e18ba53ee85c2746eeca012","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"d6d7ae4d1f1f3772e2a3cde568ed08991a8ae34a080ff1151af28b7f798e22ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"811c71eee4aa0ac5f7adf713323a5c41b0cf6c4e17367a34fbce379e12bbf0a4","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"bca1445bb01ea4f119e423b1a65eaeef1c71b6e29a0082c8f584c19b4b2a2c76","impliedFormat":99},{"version":"3853fb2cbadbc14e7db32ae7174db7e6251effbc4ffa385ecafee770ef491851","impliedFormat":99},{"version":"7abda23062a49ec453dcc2ab7b6418336c4dff5a274c50a9323b854bf657509b","impliedFormat":99},{"version":"bddc8143c3b0fe2a6462f9811d3b28ea422ffee80d75d3d97d65d6b69f583fad","impliedFormat":1},{"version":"69d53a59cdabaad5a4bef6db9193146b86cc246b03c92534c8ed34a9c02a5d94","impliedFormat":99},{"version":"c4041886dd69af371d9f184fdd78a2dbe9bc337913807da854b69dca0ffb70d4","impliedFormat":99},{"version":"a24bee2475daf8ff819671c4b656813e4afc4f96bf275362e5d4403400d02614","impliedFormat":99},{"version":"f47e318381efbc809c3c0753873b98dc08f51bfe85235dce242daabd5be56e26","impliedFormat":99},{"version":"707a1910d42b320b224b6491940b87ba102650fdb053e38158980baf530cbf68","impliedFormat":99},{"version":"fe8f75b5ea37c11b702fbb74e2ea0529ad8107e829d54bed1fe9acf4ef316920","impliedFormat":99},{"version":"1b62e746d1ed10a8d03bfd0007493e5e690f7a91eb323340a4ddba79d64810a2","impliedFormat":99},{"version":"b571369ee83337f9a976a304d05c9a30db0f4ff0becb4f4a20744251d4e59a7f","impliedFormat":99},{"version":"3276edbcafba638a534ce4e2ef5f410a38922e86706a11b8ec024bbac5b0f77e","impliedFormat":99},{"version":"e7e563ff6158e587e6e4b2af22c94a18f198bdf0f78d3bf99e514d87d22a0f28","impliedFormat":99},{"version":"9d65361f1d611ce3deed97509011a70461c737b62e26ea817c2cb39423e445f7","impliedFormat":99},{"version":"3e658ad649a65ed44bed13a6d3daf319bb4f2f4979d91a6f99c493b6abddbad0","impliedFormat":99},{"version":"6e3dd382ebca582b558b828462508b18fce6e22e22ab3889fd44f4f3b246f2b1","impliedFormat":99},{"version":"640321b667f152fbea5a6f81ef699487670f15e4f1e775c237776d3b985c4354","impliedFormat":99},{"version":"9a30d54e0efc615aab08f64bf9f03b9080f507a9a5aa03821886884b8a845b05","impliedFormat":99},{"version":"c352f003859fb89646824d5a0ef75e2bbb53d9fc7b0f02b3209c66179ea6009e","impliedFormat":99},{"version":"7267c77b0ac40bd37c8898ee5120cc6595b292fda5d80cb8dcceb961a437fba6","impliedFormat":99},{"version":"81a5b42e11ee87e6998d1e075a112328ee98f327a1b05b8902c2e31fd6a34f23","impliedFormat":99},{"version":"48eea4520f31e1864c2842959ecbb7779bafa6c58212ce3d2d57da7de13223f3","impliedFormat":99},{"version":"4fa1349888c44304f45b5f59e999a89cc5889075d2a86961d3ded7359be4e57f","impliedFormat":99},{"version":"2577be4e1edf5754620fbcd8cc094069ea907364ca061a2fdb83292da4f9fd53","impliedFormat":99},{"version":"f442937fda317dd8554e31033e69b7e1bbf377e234a8826beb88ef1bdc1f6957","impliedFormat":99},{"version":"e8651ad3e4b5ed099bb86f04a03a54abb3f9cb71dec6764bb0d7425c4c36478f","impliedFormat":99},{"version":"59120274e075a0e5ed73d644aa947b4de0e32a7828adacc5929ca4726459b82f","impliedFormat":99},{"version":"ce9f5baf7014af720d9321b07b0a756d6b7f89061437bf6687e8d9b126d7eeb9","impliedFormat":99},{"version":"ba780ce45e3e2d6707fe5988faadc9969eef8457aa20069219e2f813eda5c523","impliedFormat":99},{"version":"00bbcc2bc0dd93700cb868ca2d2d44e8e1c8cd42f6bc6ebeb7b08e00167c299d","impliedFormat":99},{"version":"314f4ac16c7a8bd4e255a7f4ccfdd8d3ceab87c7c480ec458db5a1ec60fd5dc4","impliedFormat":99},{"version":"ae4deddc5d374d8a9d35e2b666846f49220191c66bf0006d5350606e8e6ddc79","impliedFormat":99},{"version":"b4c4459dd2e6d9d927376f58a352c51a94cab6d4905872254aab75108dbe269d","impliedFormat":99},{"version":"7cb48508bc21dd788ee90f4dcf396b94159814d9a7b462b5806551eba4469d5c","impliedFormat":99},{"version":"e5b53a84a23f33302f26e4e6fda1885117560528f40cb9c5792edbeaed6f2829","impliedFormat":99},{"version":"1efa3c8b2a2bcfcec818c9508b9ac5a6061b4139b112c67f9ac4afc3c6eea3cd","impliedFormat":99},{"version":"56708dbc312b79d4f1ef00529ebc7c01eec0ab4db0389b9eb55baa741fc3fdec","impliedFormat":99},{"version":"76d64700f77698422aae740d26acf5663a6366c5b5ca18a34bfaf9b17a1baa7d","impliedFormat":99},{"version":"0d756c86aeecb4084bab3670e3e347a883d83217caeca49b7014535c2664efbe","impliedFormat":99},{"version":"d169bbf703fc139f3d33e4cb8c08f784917f07ec0550d99046833adbc4c67fbe","impliedFormat":99},{"version":"924cd49646336c5cfa1dba9b6ed808e4b852911013114cf322906287dc84c742","impliedFormat":99},{"version":"f1d479fadaa12c99ae16117c759939bbcd9a99bc115f02c0806509aa80b5483c","impliedFormat":99},{"version":"587e68f59379027768ae511b22ed7f5ffdd6889461c0838c1fe033a147b823d8","impliedFormat":99},{"version":"919f3a8fa73d447aeaabc4ce0805682d5bdd3f20ec5383c3127c88df6230bd3b","impliedFormat":99},{"version":"544d48222eea4847fc4f759fad7bb0bafe27d39cb09cef8b339b823d44fd930a","impliedFormat":99},{"version":"4d2937f853a22fcf45f9c8610ae35215b71e85b59e8ac320ba2cb11cf96e0f73","impliedFormat":99},{"version":"191fe0762a0289c23cfc02c6705faa9f1521feb851df0d63efaeccdbb287de80","impliedFormat":99},{"version":"6d93a968d28722d4c919ae3829736a4927ee415f6a3665fa6a921a3c6e117718","impliedFormat":99},{"version":"1f8c40e84cb1ad4a222172fc0db8db2367193d2abab11abdc4520c86c1f1953e","impliedFormat":99},{"version":"e1bb95c6790068e6e13d762e1c0a8a8195b60c577b9c8589f2acc35c80e33387","impliedFormat":99},{"version":"f3a459b3c303facef03cd35be9e992103dd5c49aef6a789fead412a6640dbcc8","impliedFormat":99},{"version":"b5870b4d4a95ac733054645eb8e007fc6aae1159415d145eaca2a3df63d1fd0f","impliedFormat":99},{"version":"c9f780434b2e903848ed832496383a01b1a9042551fdd82e5398039c05ac4ef7","impliedFormat":99},{"version":"431fc421614b8fb22ac56f529d651b5ff300849c4317eaa0942f85a5bbf8729e","impliedFormat":99},{"version":"0edbcc3db51a325e5cf3f8e34d10f1fd76f181ff3a2c3229d806575a840a631d","impliedFormat":99},{"version":"0c7ec606950ac70b2570f709bfdc4440fba10a632838bb861474ecf37ed8870f","impliedFormat":99},{"version":"2200807709c3f0b52faa62a248baf8506b474094cfb0cff940609620e0488e0f","impliedFormat":99},{"version":"48f74afaf0a0559ed02e5dcae4f8068f88397cdec1df221ef61201418aa334fa","impliedFormat":99},{"version":"e8a64e9359e5adf083e526228dbdecf419e8ad7cbf54acee8a6f2479ce23e4db","impliedFormat":99},{"version":"f61e6fb81a5852e19a7be147f1b8f67c84e1279310c1314437a36f459f16dab5","impliedFormat":99},{"version":"6f70ebec5286e196ab0fbcde3fb6fb9f5b2d0cbdd2a709b6af7a03a636153d37","impliedFormat":99},{"version":"106b77c2a15d2a50806b8ab8cbec4f041a4997f566eb99f70c3644b3770a3b94","impliedFormat":99},{"version":"7b473587d0601fdb1af3f3d14116338ebc1716f60a4fbc7517f6e5ad3d3c064a","impliedFormat":99},{"version":"ee23f046023d8d3a979f9848b488b8703442252326a109ed9fda67dc96927e45","impliedFormat":99},{"version":"ce50f7f5da6baece2587b8cd97f67e5826e3468f7a7e64eeed29bad806967bfc","impliedFormat":99},{"version":"f973600a0b93e679a9306d016bce676191a4b21d86227bd5e93d538a448b27fc","impliedFormat":99},{"version":"bc78cea1b2a7c6b44210c936c83eaabacf86f4fc63b2dddf023e25fd80f4b1d6","impliedFormat":99},{"version":"d9c7612e144cc96d6a693b135d0502e6ee39e1ccf89ece883bce04c4c0beb2ac","signature":"93c7b57d024bca1fb1203f1f5f1de97d02a4ad7cf92b67005d07ca73dafaa69f","impliedFormat":99},{"version":"809a81745e2c0c37d7575dbd3014891b5ba016f2759b78cba338abbfab336ce0","signature":"0976b2c7b4ee574a361afc10ccb2a6812292737373e443c400bdfff2ca22bffc","impliedFormat":99},{"version":"25c06bfe57b3f991af4977f0b9a32e76e7dc5ffcc85d10e6860f3da98e603de7","impliedFormat":99},{"version":"36bf93a647894a07d70c56065a1d2eeb4a8a2cbc0d1016a33a1aa63efd0d473d","impliedFormat":99},{"version":"6f39764b45fbb8ade80b889191516eb5548204db4498e6feede7245ef607fb26","impliedFormat":99},{"version":"4f8b543e9dcc9aeee6a89e7c18a6ece1b15a4dd2fe1baca6d96ca443994a6db0","impliedFormat":99},{"version":"9b17bee22b62b30a187f1b5fa4fa9e5ea191b8474e7130472b6ae61991502395","signature":"b0c5191e812a68bd1290a508b8ab5683f41b97208699826801cc64356085ebb5","impliedFormat":99},{"version":"e5099675e75363f41da633843e09f442558f87f3211e6811cf30077aaf6c1173","signature":"7783af6938438999eef01c3e02f47ea089c33b2ebe4f3f118fdaff220fd97d96","impliedFormat":99},{"version":"e1c49c1498f0f58434ed1fbc2fccfc9414d01b8a33d4b43666561c47d282d281","signature":"d24bfc1fa53f2a3fffdb173fc163adc8742b8fc1a7d3aac519c03ead79f1cbc1","impliedFormat":99},{"version":"3a116a13d34884c01859141001c6c4b93aa6ccb9f4026be0338cf6f856684791","signature":"754c5c48620ca30c6995b10760ad1da2086d4576483d5361b6ea820500989415","impliedFormat":99},{"version":"c6966c18365771e81067c3b66718bc936b13e9655afb9f5d5c404b93e790924f","signature":"3761d739f6279dbabe0460bfaf1e7b587374d42e6c57fe0838a7553928305e34","impliedFormat":99},{"version":"917b58a2f8fb4bb5d0a9153ac5d4d8ce5b965f8801bd6cb589579af982ed8065","signature":"98038f31a4fa862f8b5b5039d8efc97a67780d151f359dd99b8c10be132cf719","impliedFormat":99},{"version":"d62105333230b142478f613e384504b3736236e0129f97897bcb02622f6ac3d1","impliedFormat":99},{"version":"a0ca8695f982daaa5d234a96d689eb5ff0cb172c4a51bb3f44f5eaef373dbedc","signature":"6db34cf4a2c21dcdf5813d0de7a9cf3973f26aa981baf780e2b47a2aed6866ac","impliedFormat":99},{"version":"df79a19ed5e49fdf75ffb7ac1da5ca0eef8455611683e9d6d334604a807c0899","signature":"e62f412df13f3bf22369429ed26b2d978bdb2c79953bdd74db24a25f5d966c5d","impliedFormat":99},{"version":"7d9864c3852ad97b419613d2fbc889a40e2ad929bae7b0db7eee016aec719222","signature":"98d786e903e761561eaa8f6853f262935d6ec94eb56ff5244f3d081005a5d1ea","impliedFormat":99},{"version":"34fc5229ff4d0b3d1e1ac40650e21c9a5aa550b28f2b1b5de473a4884aa07183","signature":"063bca10a9893ab3781e20b6ee97459471553f19009fbf3dec84145f913e34b1","impliedFormat":99},{"version":"153eddbf93ba93ce4852fcf8422328c8a497301a931e78e42a5d3c829c61e4da","signature":"c98f616bc28b2024369e0c8ab310d1de3061b8505ab0ec1c1aae7b4cd4813d2b","impliedFormat":99},{"version":"62ad68db7c882792ef97d3761ebdefbbbf9b109c67bee60bfc069af82a61bd76","signature":"df12cd9c0d48cd258e21b6c86090b4e1da8c7e20efc69c8ac89144f0477b7e76","impliedFormat":99},{"version":"389607fbc80f40772ec039f04af247360286f419a52ac1260b557179bb1c87e7","signature":"8afcd1eb943d0a17cd03cd81debebc9b8a9b4016bdffdf769494bf1b37eaf8b9","impliedFormat":99},{"version":"2f6c09b90f6f49b2c3222677e3c358f9c369a1d2b397d75d3b6e6c1ba7127288","signature":"68f839dc0cbed9a2047a1158808ca94e7a64ff74f3b811c0e500f95860e2e367","impliedFormat":99},{"version":"ae6436868c4e6576289502d856200169c1fe1cbea529a80e9cfacc970e00df21","signature":"d7a1a6b9baa124f521bfe44284f73abb1fd4bb18cc4b11033bf8d5959a90590c","impliedFormat":99},{"version":"03fa966fc57c582a069e1bc1d422d34e4f3050f67ca7b515f5dbe20207b31538","signature":"302ba45c19612b08b9016c0f24a4bc7af6332c7844937aa3b4cab885e1f0d8fd","impliedFormat":99},{"version":"3c03b2cb121bc810083567b344b306d5aa302ff44408c747f6a2a084382c48cb","signature":"ee776c6e7db00faf00cf820c267e535c68c05844babe03d888e0fa9d5f857a02","impliedFormat":99},{"version":"93d27f72426061b67caf488b6cc61d0900809656e6b123782df3b05cf698972e","signature":"841d7f10c068e313ff074ca517c398ec076645569c37ca023d5e85e5d628e6f0","impliedFormat":99},{"version":"107ad54672d34aa667f6164ff6daf8126b356c8becd25cdcbe4be3667eadbefd","signature":"3cfb65a44a58e04ae2fd70cb5a4169fc9929a09b2fab14c607013e1ddf380451","impliedFormat":99},{"version":"29f72ec1289ae3aeda78bf14b38086d3d803262ac13904b400422941a26a3636","affectsGlobalScope":true,"impliedFormat":1},{"version":"427fe2004642504828c1476d0af4270e6ad4db6de78c0b5da3e4c5ca95052a99","impliedFormat":1},{"version":"c8905dbea83f3220676a669366cd8c1acef56af4d9d72a8b2241b1d044bb4302","affectsGlobalScope":true,"impliedFormat":99},{"version":"53e8c396b0a6263c7c382d7ceff40e8137f859bf312ac501cef253482e0d95bf","signature":"8f80836adef8bec472a060d84b371c1d7b7c5dd96599034895ebde6595c62716","impliedFormat":99},{"version":"c9921c96a2540c75352af4a76406431a430c679f8f169a663be94f74f75bab56","signature":"1c957098fdf7d31bde08c235b9b48e574c8504de247647183103fb3ce9cc334e","impliedFormat":99},{"version":"ccb036d7d32479b9865ad832da70de9c0694a63fa3832ebc95dc9112c8f9dece","signature":"7bc412be5407bc53389732c1610934012f3d7fec44a414c2908fba923986753f","impliedFormat":99},{"version":"f77f2bd5739ab6bb3f8375d99bd64773be1b68f05f4dfa41a5fcaf95380df19c","signature":"98024bb2455e82668e8884c35ef2c4445bd5a212a834d05efe2ae8f7af7e5627","impliedFormat":99},{"version":"8613de029f9bd354633d86411da9e6c814852e538e41480300ea4f4381854dc2","signature":"bf37a6bced110b8d6e343b49f74157c31277a6a88d4be8037b360030e7a533d7","impliedFormat":99},{"version":"5bb41b0773686d1b09033e8652faabe952a10ff2ff7c0a9a9f4f9c7e9b953a96","signature":"270a988ab183c998cea11b56392d334d1718e6a6c0f442fe204f698623dbf927","impliedFormat":99},{"version":"ef16f2ad7d4e6e0ce0aaab7c45c703947926d3f4ab90f5fbd138cc8c07a544bc","signature":"f3f2c55aef91a487dc70666e8b62b14fc256d2668e0d912f7b6b4eba7e8eeb52","impliedFormat":99},{"version":"2565a7053c4dd87f2c9fd8df48153e3a15820d62e80158f133c92c1fa137f377","signature":"4bd0bcca6c68222ac94efc62e84de92f01de3c9ee4cedfd4845c2f592c1ee890","impliedFormat":99},{"version":"0754f73c25b9fd912ab1b8cb55709edfa5d975420bc620e59c9274817685f58d","signature":"653720ce5a718a6bbe63894f8e72f3ab7c6bbd8002f5878f4c8d5ba8d93eca8f","impliedFormat":99},{"version":"ac5d595479cbebb2e33c6a3c37d36a1982486b4c58064ea7aac2963bbf30c693","signature":"c637139bd9bbec042280252b2bb47b24715daa944b2465bff71511f9f578478c","impliedFormat":99},{"version":"4af6ea0d728c66e055502ad04e0c319bbb6f6eedb39c3deee23d7b24786e85c5","impliedFormat":99},{"version":"89f161a7cb9b8ff45dd2df8758eef688467e0bf54c16e067f44dad1af145a89f","signature":"42a8159b190e421e7d88d7070cab6f0985b2474e42ecad68ee42a7e951c6cbc7","impliedFormat":99},{"version":"dc9db60adb553a279e6abfd66d97dc36ded3526a829b551fc451855ed970bb2f","signature":"607792328082d461cd40c879cc708c3d587d802291a6609418aa6d5d1f678999","impliedFormat":99},{"version":"2e893905f3590b3ac7c0ea898943d9c4f4c831c65976a315dfa586e1a2654499","signature":"614759f9ec69e837baf5b00c2fcfe5e11fd37fbf6f3a66540060ec034cd3d8b5","impliedFormat":99},{"version":"b1b91c38f66f14c72cf891356bebd3bd6a4c4676166b173ed72e7c49eaa16ea8","signature":"10df8206ed5de53e519871bc0efc3c270ac9c6a86760b3a0707c5d49045f16eb","impliedFormat":99},{"version":"9318600b765482c6fb7b7799e24c22c381dd5283e57990c840bd1fdf95e2689b","signature":"50160c852697ccee053973af9013d99319c8f66c5a80fd8723b99858f20d69de","impliedFormat":99},{"version":"5d4627a3025e1f3efe5eee090a46cd9230d7cac47d0359bb85ee1c6ced72ffd8","signature":"9759d9ecb337c0d54e4e4714c727634bc589f22b2805e6926169947ca5591752","impliedFormat":99},{"version":"2596dd70474f3fe0e6c4687bf228636bb8e745d8411acd3c7f9b6a18a385eab4","signature":"d4e8235dc7552b33f496c3f22a8114f8d87aa395ad67d90b8fdfcff3b47fb285","impliedFormat":99},{"version":"9f0ef6736d707aa6a1b6b52492eef9efd9384e53667a76ca7f29b433d81475a3","signature":"98916cccb1a62a839e89527356982ba33e0a686377101fb0d207dcad16a04897","impliedFormat":99},{"version":"f040c89c1140c3ca15a83110bbfbc3448f89ea97ee19cb8ee9c36f78a322056e","signature":"94f560613d7f7da0bb7b39f47e2247d12ec5bad1f1d281ae2ac2e64293902adf","impliedFormat":99},{"version":"1bdb99facd354c56ac698b0f76bdc26eac00aff5874f86f4a8f66b71ccae49e3","signature":"263ac2f85830992bfbd69775220784c5d83b41da6fb2619108c941294a709d4f","impliedFormat":99},{"version":"542374bd40e68b2c632cd59f085bb702670ef5466fd9aba06190ec583c8d0cc2","signature":"4432415f7e1b55a02428fa978d2f150faad0c95a010b6ad7a482ad1c59e93785","impliedFormat":99},{"version":"7469ad3130b31ee036bbca33db47e9e6aa5d357551c22a81f14795ae26cf93c8","signature":"9e86f8ae0c7db2a4006eb86664a7ff05b1a11fad52b1ba106d29ae626cf2552f","impliedFormat":99},{"version":"65467b6c7e1c9efcb8f607269f5337e9c1458e4bbdf77f7e8d8850b73b9ab11c","signature":"858a3dcf2cfbea67b68403ce8d6c2b3dac2ad2d2311143b87f8d7d040e607eac","impliedFormat":99},{"version":"1a037e0fb7bba38bf5bcdbe014baeaa86d598afb7c28eb9e55f94a491bd11d71","signature":"4106d1784e3529b8128f74495516078687e91194ee2570e02975bb71d3499f69","impliedFormat":99},{"version":"1a6208a258aefe099ebf8f1e6a40d801349ddec6f0b4834990e28d8cfdf80a8d","signature":"4de9dc034d4e8bde7d53350d730f14499290480c8c0a45950c2c5fa41fbffbcf","impliedFormat":99},{"version":"110f1d9f57d82041241212ef9f076af450a50b326c365ebe27d41e95275a1844","signature":"fa7f4b0d2482987cafb7d8c4d204d24b6315ba7974037c6e74e1e80f56999d6b","impliedFormat":99},{"version":"8774324d301d94f4b0cbd2345bdc7c8ef203a41e8df343cdb2a6f7a6fcf35e80","signature":"f0ff2fd7d8b76dd6ad62e7d1a0218f6f8c4c540f92a393dab8bd91ab26d4fb40","impliedFormat":99},{"version":"73350f88b80e76b5abf8ecc9a22acc38c1b9aa20262d749589ed6c48eb0c8ab9","signature":"664a1c439cac598da8311a80b25cc792875f29a3fb5a86a405da52b3b40c6e04","impliedFormat":99},{"version":"ff3820b81be9021ec12eed08b26b8edd4e34d1e13903669b23edd879c04ecf83","signature":"451b5a9426f7f3f530bfb97355727531fae5db9e092b6761c678addbf9cd7f65","impliedFormat":99},{"version":"29b9015469c24741ffa75e53980d6a8368dc934d55a2645ceb2e3ebc0e3c8237","signature":"79284899519f4a38e7e2baa7b3ce98c100b64f4ee216ac29e0d3e126c377cb6b","impliedFormat":99},{"version":"f41408d31595a9e2074697816008073687e7ea87ef13a49c320a1b800b2168f8","signature":"6b564ca6db39f0691ce110fc75fe1e3209cd9b44ef99621e5a1c098adea56057","impliedFormat":99},{"version":"5414875b1030da2bfb2f8772ef771a318b95da01349be543bd71030dac84e3ce","signature":"fe041229468da1ef65c340d82ccbf7863ee788ab8de60c08b5a99588c83c3411","impliedFormat":99},{"version":"c0f9fe93cd18c09e2f46b805a50bd4522c52c67e50b71465001b3b569dcbe1c8","signature":"cb0828b1883c042c00d38dc2af43b48d13239999765639dd41c6f778b591cd69","impliedFormat":99},{"version":"273ed2918cf544558cdf3cba4afd70e9dd0e8cc15ed44cd92666423a81d2c2a4","signature":"fedae4f8c860c75a444810ca69df99b4ed449789f1c549f1c46971c63436fcfb","impliedFormat":99},{"version":"4936bb08204c91073d46f682feeba5c52ac60b792b14e58126091da3cb639a7b","signature":"e8247c59f86a449382b57ce57fee7e5578b532299c88a9b1c0ad12d9196861f7","impliedFormat":99},{"version":"ddd280b10c157c013a4423f0788540c66cb985a5df0e18ffce8452d4e20bd154","signature":"8701c3a7a42e2c593604d60a85c18c913d9ea8164b699490562fa8d6772714a4","impliedFormat":99},{"version":"bc4632f0b36aa1e18d96d2d43be73c75f178ab44072a52624aa2b09625410531","signature":"ca10b992f9c36cb46dafd41f42b6fca6f873db1d35d1e6171ea9f31047e76c4b","impliedFormat":99},{"version":"30083758397895c01a9a2ccd7635ff3258c2cdd1a93dc381b1a677d677134476","signature":"7148b8ee6c77d9e43a3986967a183bda989e02ce07f809e28e5b93efeaaff5a9","impliedFormat":99},{"version":"1991a620fdd9b440035075e85c05ee414e3e1125ec74c3a590a73f167e968c72","signature":"30e279b74b246e4a327876b9bc017cd48cc6e02aa3ed2210c910059df55291d9","impliedFormat":99},{"version":"22f77cde61272989b8f5a6b24057f3ffc6e4b55f5c0aee005c1f72b08ab6d546","signature":"206b0785898bf4a35e067949df5cf26321c955b06ca51493908c8e72c801765a","impliedFormat":99},{"version":"0a2b1c41fd9a1d947d7c97f15ca82a440e3bbd20ff600bc38c1180caf9dc6c0a","signature":"37fc66a35fb46def76f63aff27aab5a5769a07e0c7c493b834706eef93f63524","impliedFormat":99},{"version":"4db3e7f6491e1d7cf21f53a726ede442e436967b7aad7b649a8d8b7bdd6481ce","signature":"ad4b3dbdaa6480c2b5090b1c0c516f712b4af88a99501b21f5a956d198b7ea41","impliedFormat":99},{"version":"8fdee9b0bbe2c869729fc5d710dbf580f35aed9da0c43099bfa38ac4728ab91e","signature":"741937d425ce2b5b5434e0d9143141031068b56d71987fd4b3a32cace3e28cdc","impliedFormat":99},{"version":"f39a480d809ee31a401a9f3564fc9f38045b3c6d9f3b3f3e6684eafbf7e45103","signature":"040990accd1068160c7eab660875ae5b384d32784a175de224b2d0a162acdba1","impliedFormat":99},{"version":"74013427d0f65fc0dc106a1737c47dcf5288ba2be5b31b70e1aa5727d15b3463","signature":"98eeb0bf79b0f065c59387c98bbbfe5fca5d0fd9fb26ad9e7b7d1f78a3d71064","impliedFormat":99},{"version":"e550a2b785cf745b7ac1705fcb78627cc7a0d9ddb64b5406b7b1f05f14824779","signature":"eedba69bc9dedff71fdf2c1229a6b7e99a40560efb72ea557f25aed4aea64d3e","impliedFormat":99},{"version":"7c86af7d7a9dec59bc3a52c7339823341bb24237905add7532dc57b11f7a0d64","signature":"f68b807c49ac16480ee61aef7a1bd733821c5e9d76516488380489a53125d4fc","impliedFormat":99},{"version":"9baf0884a8381ff17a5cf6ad19bbb4ba6ed77374c38fd5ad45bbd73336cb49ce","signature":"ee4d0d47c2ac586b3e289a5ad1967783e36e9e4be82f02f97b5ea97d54ea0fbd","impliedFormat":99},{"version":"2f6f72d656a37ede4e41fe55059d06a0db32a33d33899844bec103a9190d2e62","signature":"2696846e9b8c165689089dd7cdf19c8094434c3ccef7ddb915620c22b9b9aa1b","impliedFormat":99},{"version":"040b3c241dfd307d4be6c78da0f1df20281c4eb661e564739902283061f77048","signature":"6bb0d1464f8bf0f3ecde0d11d314528a477543cfbdb84c8b291ca7a1d1a800c1","impliedFormat":99},{"version":"b3d86bc4532568ab97966c545f979fa0d1f4219587f993eb744d4b5ec0cda26b","signature":"08df7d896820e7ae70e98bec90d9ebac2f5f93a95b176bfdae6f69ede9fb8761","impliedFormat":99},{"version":"1df5dd8fef0b69a02d15a33537b4c8b7059da463a3f2de887d5d3d4e0b2730b4","signature":"1e2cb94c2a8ced18759f03f459f908616af462feda99735bd1fe922708e264c4","impliedFormat":99},{"version":"aec4277d9eea277401c0be82f6261a407d55aeb19604ef990953d273872241c6","signature":"bdc7ae706ab0bca2efc5220a3f7f6f0c063de65c3435d3f870038c14328c5391","impliedFormat":99},{"version":"efa41167f4fee0296474246b074023bc6735977e82e58577ce5d8917cf628f88","signature":"3aa947003b9ad5eb2f8c0b0df75affecd9b451e4e41c43fa263f0e4ee0430b7b","impliedFormat":99},{"version":"2121a3a4db67485f791c542789512a550121d44f38bc209ed0a283ef2d7dbfb6","signature":"7c5eb05e4c3c41d71ac46d4b79a251fb2f09d1a8361ade338db2dfc2c1977dea","impliedFormat":99},{"version":"4cb33eb63dbdc38f3523c46e03513e3227ac4bcb8d8d361e6ca4d8cccb67cba5","signature":"5d9b59e6b25b3358e36a41637ab3c5118ad02d426596772b59519b0799b77ac6","impliedFormat":99},{"version":"fbd28111b9ff9c7b617b0725ce02acdca81eed8cf67ba8da287f071b2444e39c","signature":"34467874a7fe7ce45010a30d64b1cb12068f4f7f5229e5ba27b740278b1bad04","impliedFormat":99},{"version":"1162981396fcdb7681883c916d721f0964553373ac364493189d08830317bcc6","signature":"2355806c08892e450f4ea2852314557de00f9a35717a7ab1aa2bde9f527eca33","impliedFormat":99},{"version":"af454fc5ae1531cb65b582ff36c4a1fb505f1d0407ae3606e78019103fe8a077","signature":"2c6949d8545509dbcedb156d5a5b2fd7c6b59984e29b17936ffadd57997d24d4","impliedFormat":99},{"version":"86293e6724c628b34151bf60a282e67a10c3901505324f64c384d607b6eac66a","signature":"ad519991f20a6dc472e72f37867e4aa6d1a08fbffcf2ff8c478632ae0b1bf913","impliedFormat":99},{"version":"5a265f7f2c580c1eb8f6ea2861ca853b69be44399a80b512224d5d2c53185a65","signature":"bf0d32766d277a9234ba2f874b09a4c926120c117bc1cbac9ec55730a7a588fb","impliedFormat":99},{"version":"73b46758c0340f952e52746a0eb4761c4ebe711cedce7b23112e554eeb08f2f9","signature":"b7fe20fe2bec65e8b339c689823c04d2eeffc529ad2e6b6c0fe767cbc22cb2c9","impliedFormat":99},{"version":"695ec387f09d5bee597fbcc889158455abed09a0959ce3485f5d806aa7855444","signature":"19acc881b1935bf4e8e9193f6fd50ca61fcaa5a1231eb21cf6002c222b867891","impliedFormat":99},{"version":"9a5cd82eb274aa204142a3c4067e72f51168c4d69bb0ab59b3056806cdd63e76","signature":"ea8d5be49c119d7b52df0068f9a167218823ec7a28a7cad05afe7a55b338227f","impliedFormat":99},{"version":"4f870061ed2ff2a16854706e2d56b38b5ff16a5c4aec015d95f16f70e0c1f152","signature":"88e35201b48184e785eb440059721e90040ee03f025e6b0686d69590dac7c577","impliedFormat":99},{"version":"b31dc92e8e77af667aba037cee2428d2e9782c6415791a93f554e58bf00a5064","signature":"331351206d21b5d8f18581437f4cb2873d4620d6c89d988ac532ab658a53d4a6","impliedFormat":99},{"version":"3dfcd0a3bfa70b53135db3cf2e4ddcb7eccc3e4418ce833ae24eecd06928328f","impliedFormat":1},{"version":"33e12c9940a7f23d50742e5925a193bb4af9b23ee159251e6bc50bb9070618a1","impliedFormat":1},{"version":"bc41a8e33caf4d193b0c49ec70d1e8db5ce3312eafe5447c6c1d5a2084fece12","impliedFormat":1},{"version":"7c33f11a56ba4e79efc4ddae85f8a4a888e216d2bf66c863f344d403437ffc74","impliedFormat":1},{"version":"cbef1abd1f8987dee5c9ed8c768a880fbfbff7f7053e063403090f48335c8e4e","impliedFormat":1},{"version":"9249603c91a859973e8f481b67f50d8d0b3fa43e37878f9dfc4c70313ad63065","impliedFormat":1},{"version":"0132f67b7f128d4a47324f48d0918ec73cf4220a5e9ea8bd92b115397911254f","impliedFormat":1},{"version":"06b37153d512000a91cad6fcbae75ca795ecec00469effaa8916101a00d5b9e2","impliedFormat":1},{"version":"8a641e3402f2988bf993007bd814faba348b813fc4058fce5b06de3e81ed511a","impliedFormat":1},{"version":"281744305ba2dcb2d80e2021fae211b1b07e5d85cfc8e36f4520325fcf698dbb","impliedFormat":1},{"version":"e1b042779d17b69719d34f31822ddba8aa6f5eb15f221b02105785f4447e7f5b","impliedFormat":1},{"version":"6858337936b90bd31f1674c43bedda2edbab2a488d04adc02512aef47c792fd0","impliedFormat":1},{"version":"15cb3deecc635efb26133990f521f7f1cc95665d5db8d87e5056beaea564b0ce","impliedFormat":1},{"version":"e27605c8932e75b14e742558a4c3101d9f4fdd32e7e9a056b2ca83f37f973945","impliedFormat":1},{"version":"f0443725119ecde74b0d75c82555b1f95ee1c3cd371558e5528a83d1de8109de","impliedFormat":1},{"version":"7794810c4b3f03d2faa81189504b953a73eb80e5662a90e9030ea9a9a359a66f","impliedFormat":1},{"version":"b074516a691a30279f0fe6dff33cd76359c1daacf4ae024659e44a68756de602","impliedFormat":1},{"version":"57cbeb55ec95326d068a2ce33403e1b795f2113487f07c1f53b1eaf9c21ff2ce","impliedFormat":1},{"version":"a00362ee43d422bcd8239110b8b5da39f1122651a1809be83a518b1298fa6af8","impliedFormat":1},{"version":"a820499a28a5fcdbf4baec05cc069362041d735520ab5a94c38cc44db7df614c","impliedFormat":1},{"version":"33a6d7b07c85ac0cef9a021b78b52e2d901d2ebfd5458db68f229ca482c1910c","impliedFormat":1},{"version":"8f648847b52020c1c0cdfcc40d7bcab72ea470201a631004fde4d85ccbc0c4c7","impliedFormat":1},{"version":"7821d3b702e0c672329c4d036c7037ecf2e5e758eceb5e740dde1355606dc9f2","impliedFormat":1},{"version":"213e4f26ee5853e8ba314ecad3a73cd06ab244a0809749bb777cbc1619aa07d8","impliedFormat":1},{"version":"cafd6ef91d96228a618436c03d60fe5078f43d32df4c39ebd9f3f7d013dbe337","impliedFormat":1},{"version":"961fa18e1658f3f8e38c23e1a9bc3f4d7be75b056a94700291d5f82f57524ff0","impliedFormat":1},{"version":"079c02dc397960da2786db71d7c9e716475377bcedd81dede034f8a9f94c71b8","impliedFormat":1},{"version":"a7595cbb1b354b54dff14a6bb87d471e6d53b63de101a1b4d9d82d3d3f6eddec","impliedFormat":1},{"version":"1f49a85a97e01a26245fd74232b3b301ebe408fb4e969e72e537aa6ffbd3fe14","impliedFormat":1},{"version":"9c38563e4eabfffa597c4d6b9aa16e11e7f9a636f0dd80dd0a8bce1f6f0b2108","impliedFormat":1},{"version":"a971cba9f67e1c87014a2a544c24bc58bad1983970dfa66051b42ae441da1f46","impliedFormat":1},{"version":"df9b266bceb94167c2e8ae25db37d31a28de02ae89ff58e8174708afdec26738","impliedFormat":1},{"version":"9e5b8137b7ee679d31b35221503282561e764116d8b007c5419b6f9d60765683","impliedFormat":1},{"version":"3e7ae921a43416e155d7bbe5b4229b7686cfa6a20af0a3ae5a79dfe127355c21","impliedFormat":1},{"version":"c7200ae85e414d5ed1d3c9507ae38c097050161f57eb1a70bef021d796af87a7","impliedFormat":1},{"version":"4edb4ff36b17b2cf19014b2c901a6bdcdd0d8f732bcf3a11aa6fd0a111198e27","impliedFormat":1},{"version":"810f0d14ce416a343dcdd0d3074c38c094505e664c90636b113d048471c292e2","impliedFormat":1},{"version":"9c37dc73c97cd17686edc94cc534486509e479a1b8809ef783067b7dde5c6713","impliedFormat":1},{"version":"5fe2ef29b33889d3279d5bc92f8e554ffd32145a02f48d272d30fc1eea8b4c89","impliedFormat":1},{"version":"e39090ffe9c45c59082c3746e2aa2546dc53e3c5eeb4ad83f8210be7e2e58022","impliedFormat":1},{"version":"9f85a1810d42f75e1abb4fc94be585aae1fdac8ae752c76b912d95aef61bf5de","impliedFormat":1},{"version":"4d172a47385299084e6b984e7b246d9b75f3cb5113be9ed2990b9100f8e063e4","signature":"09651679f93a77e6485b2705382e57ce367ef487bc7c8c2a64b8d6836024eeeb","impliedFormat":99},{"version":"c338d08a541d28654ad87c68f011a0920d63b4d2dec0e7305ebc61606c54a025","signature":"d54d67cef6758625f6ffa1169c8df293dbc65a63f1c19a49cc77a6ae5500f2cb","impliedFormat":99},{"version":"748aa7233219576c98574992399621c5f0cf4cb7e7cadf0026e3c73433ad9079","signature":"60a0376a442754c917ba5523952b67c892fbb4807f60de28bd868f46312d8f11","impliedFormat":99},{"version":"ce84c55db0355aa7aea18cedd9a15352a3ca723b6c21d5ea93b1e565a66117dc","signature":"0bbcf9ad24b6ff15ccf752fef20c2da9e35b1707f5ad1070225f11af762fff89","impliedFormat":99},{"version":"dbacdcddd64daabc9c58d68c5f78f38b897ee033c83538a93c44b3fbe853508e","signature":"2e88ed046958de3258c177dd988f353cd0d16698c6fce0651e0935463ea750e9","impliedFormat":99},{"version":"7809a78e9842f1e48f2f2ce8ab7d7a5642295a3f4c610e84764b30f50b21187c","signature":"07a151ce282e70e585a7d089969887e0dbb4848f39117e078e7af574ae4165b4","impliedFormat":99},{"version":"94f815a0ae63b2877e06734ccda894430afcc452d1c1a0a5aafc17641da3ede6","signature":"f7f3ab5a97e7d68fe39e7f3c741d57095db0cfbe0c21f45a4af4c98a318095b0","impliedFormat":99},{"version":"39bb3a63bbf8c64174f27a2a212ffbbffb71e47bc2b16efc22196cda272f0493","signature":"200526738f3d10946fdc2cad34c0a81d94f45c8adddfa92bd54981debdbb8054","impliedFormat":99},{"version":"2fb5dac4989b8cfb69dcd666c07c6143ac776f61ef6ffc9f67a0d56f4ec5ecee","signature":"f9c5ce2e7e5ce7643412a87f7d9f9a4fd953eab1f9e43a49b62de0b08b5ae97d","impliedFormat":99},{"version":"39c1c0a15615b64c311d952d31df12fc354ebf725ab1b2f3ae63646051200032","signature":"4d5446370a70e792aca533477e487b01d376ee6bead451952138d048fe3ed645","impliedFormat":99},{"version":"de09b333746df2dd396b810c18f40bfe1168ee690805e23bd3bb930b30397ca6","signature":"7f8fc8437f92ae5650b2b7087cfc7edb2f4c4265326ab09698dcb2b7aad2a3aa","impliedFormat":99},{"version":"72a1aef59cf461aceef73b9309e97b9994860c5820a7b6c73184574b79338aec","signature":"db18d54a2220d899b3ad40433ec75a87d049e6335545c936c0262312a3fbc328","impliedFormat":99},{"version":"e6e2567138895b484e05c775a7b97d4b9ad863e83559b99205303bb2bdbad56b","signature":"ccb2dde6d18a669578a31a7ad5a0b48f104963fe9c3b73c052b8a59e8881e963","impliedFormat":99},{"version":"a1ce9ff3135ee0cf79a0746894ea3da49a38f07fa8fd411055d3391d95732619","signature":"d05bdbd04d778df23d038648c48e7c3228831dcb7e7c0aecee847c3e822ec7fa","impliedFormat":99},{"version":"5197adae3435149343b34314874425e27aba65fde93cbfa624155799288e4c10","signature":"10720be1527720e9e126d75b7c79caf5a4fdd0320faf35090f0d6db4a5f249d3","impliedFormat":99},{"version":"03bab0540958ca2b5b97b9efd076c4daf1588048347d7a5490f10af05c340b65","signature":"3c98356bdce90fbde4d434755fc7f7544958a70e7a24ef1260c22052fda39eea","impliedFormat":99},{"version":"2ff4ab310c85a19e5fb62ee13b71c29d0404f37ef65ca8dd56f7110d02ccd72b","signature":"d51d2f93f4d54b21dacd059a194641115589b47d72cb56b099d040a22403325a","impliedFormat":99},{"version":"469fe49184b2c6cd16baaddd204ced34464d0f210c57bd621ec1178e3761bb01","signature":"0ab21054fb23e4236d2b3af7d2a18f171f4f6233382d2114c457e7aebbf6c222","impliedFormat":99},{"version":"91b9afb67e6a219234b0ef345eb05428a84691b275d3e97f7d9c0fa0e55ea738","signature":"b7e9635ce1c62eb9815829bdb12779bfc57121ee8fb4175dd34ebbf32ce66942","impliedFormat":99},{"version":"2357bc46f35eab465bed4eed1f07d58a09ac1b3f683aebafa4727387951ab1e1","signature":"5712daa8366561ebe9a64b3cfb0004f9610b6dcd9c4c63fc89a5f29f045f703c","impliedFormat":99},{"version":"435b5593e9229a7249d3a64f40df4e544992dce83a1528c4a2f6737e77f39a1d","signature":"18237332fa040992a3e50f44f23b504551c71c97021a59bc3c2898be3080c2f7","impliedFormat":99},{"version":"129a4fe8a3ed08cca7d9ee734a24eb53ca3bbf8b3a54be805833753f4352131b","signature":"101f068e39997e0fbd1fa31b06a8046264012761a7b0fd762c6c24c4cdb88065","impliedFormat":99},{"version":"05763b0e489b59ea35b7d91a8ddace8c7c6667aa4eef94763a30b208aca91b8e","signature":"74d2a217b4730d33e1ca6fd54c00b377d58e842213cbd9a22add6491447217d9","impliedFormat":99},{"version":"f67d35a74c8f11795c38895ecbb75471bc185010fb93aacdad714e8a723bbc8c","signature":"79f0344b06c62f3c7cabdcd5d033344bd993ea1fe1be6f221ee6644b13f6c6be","impliedFormat":99},{"version":"eed3dcb57e80fc96ee79639d9a660f7a9e904018e309f7955bcc81458d228895","signature":"60f89560b31d0da95c5462607ceb474f57e979ae937325558951f64a426064e7","impliedFormat":99},{"version":"be6233dbb0dd64f1f8eae2090f87d605b2b84a9b8f2a9e6094dbaf847095ac55","signature":"300e25bec9fa749e9375ffcb33c0d9850b1177ac67fa41d429bf23346eaeb60a","impliedFormat":99},{"version":"7b08244ba795944d71545232265173234a77322ed7cfe40f926d35abeacbcf73","signature":"72737758c1759d6ad1042f16e8809916fd0c30a787900e1e7511f6c01d043253","impliedFormat":99},{"version":"af00e9dd5c438b856c3716a44fc96b352372ceb283d359123778ca48be38c2d9","signature":"33524bddca1787664117117fb78a7ccd123eb0a4190f8bc2b728af255e02c648","impliedFormat":99},{"version":"151ff381ef9ff8da2da9b9663ebf657eac35c4c9a19183420c05728f31a6761d","impliedFormat":1},{"version":"f3d8c757e148ad968f0d98697987db363070abada5f503da3c06aefd9d4248c1","impliedFormat":1},{"version":"2db0dd3aaa2ed285950273ce96ae8a450b45423aa9da2d10e194570f1233fa6b","impliedFormat":1},{"version":"7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","impliedFormat":1},{"version":"5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","impliedFormat":1},{"version":"7180c03fd3cb6e22f911ce9ba0f8a7008b1a6ddbe88ccf16a9c8140ef9ac1686","impliedFormat":1},{"version":"25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","impliedFormat":1},{"version":"54cb85a47d760da1c13c00add10d26b5118280d44d58e6908d8e89abbd9d7725","impliedFormat":1},{"version":"3e4825171442666d31c845aeb47fcd34b62e14041bb353ae2b874285d78482aa","impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","impliedFormat":1},{"version":"a967bfe3ad4e62243eb604bf956101e4c740f5921277c60debaf325c1320bf88","impliedFormat":1},{"version":"e9775e97ac4877aebf963a0289c81abe76d1ec9a2a7778dbe637e5151f25c5f3","impliedFormat":1},{"version":"471e1da5a78350bc55ef8cef24eb3aca6174143c281b8b214ca2beda51f5e04a","impliedFormat":1},{"version":"cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","impliedFormat":1},{"version":"385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","impliedFormat":1},{"version":"9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","impliedFormat":1},{"version":"db3435f3525cd785bf21ec6769bf8da7e8a776be1a99e2e7efb5f244a2ef5fee","impliedFormat":1},{"version":"c3b170c45fc031db31f782e612adf7314b167e60439d304b49e704010e7bafe5","impliedFormat":1},{"version":"40383ebef22b943d503c6ce2cb2e060282936b952a01bea5f9f493d5fb487cc7","impliedFormat":1},{"version":"4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","impliedFormat":1},{"version":"3a84b7cb891141824bd00ef8a50b6a44596aded4075da937f180c90e362fe5f6","impliedFormat":1},{"version":"13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","impliedFormat":1},{"version":"9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","impliedFormat":1},{"version":"4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","impliedFormat":1},{"version":"24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","impliedFormat":1},{"version":"33203609eba548914dc83ddf6cadbc0bcb6e8ef89f6d648ca0908ae887f9fcc5","impliedFormat":1},{"version":"0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","impliedFormat":1},{"version":"89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","impliedFormat":1},{"version":"e53a3c2a9f624d90f24bf4588aacd223e7bec1b9d0d479b68d2f4a9e6011147f","impliedFormat":1},{"version":"339dc5265ee5ed92e536a93a04c4ebbc2128f45eeec6ed29f379e0085283542c","impliedFormat":1},{"version":"9f0a92164925aa37d4a5d9dd3e0134cff8177208dba55fd2310cd74beea40ee2","impliedFormat":1},{"version":"8bfdb79bf1a9d435ec48d9372dc93291161f152c0865b81fc0b2694aedb4578d","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"d32275be3546f252e3ad33976caf8c5e842c09cb87d468cb40d5f4cf092d1acc","impliedFormat":1},{"version":"4a0c3504813a3289f7fb1115db13967c8e004aa8e4f8a9021b95285502221bd1","impliedFormat":1},{"version":"a14ed46fa3f5ffc7a8336b497cd07b45c2084213aaca933a22443fcb2eef0d07","affectsGlobalScope":true,"impliedFormat":1},{"version":"3d77c73be94570813f8cadd1f05ebc3dc5e2e4fdefe4d340ca20cd018724ee36","impliedFormat":1},{"version":"392eadc2af403dd10b4debfbc655c089a7fa6a9750caeb770cfb30051e55e848","affectsGlobalScope":true,"impliedFormat":1},{"version":"b67f9c5d42e7770ddf8b6d1747b531275c44617e8071d2602a2cffd2932ad95e","impliedFormat":1},{"version":"53f0960fdcc53d097918adfd8861ffbe0db989c56ffc16c052197bf115da5ed6","impliedFormat":1},{"version":"662163e5327f260b23ca0a1a1ad8a74078aabb587c904fcb5ef518986987eaff","affectsGlobalScope":true,"impliedFormat":1},{"version":"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb","impliedFormat":1},{"version":"af465afccec3baa186c95c8060cd536b32298f3f1eff6d07d87e7200396ffd0b","affectsGlobalScope":true,"impliedFormat":1},{"version":"b0c0d1d13be149f790a75b381b413490f98558649428bb916fd2d71a3f47a134","impliedFormat":1},{"version":"3c884d9d9ec454bdf0d5a0b8465bf8297d2caa4d853851d92cc417ac6f30b969","impliedFormat":1},{"version":"3bb6e21a9f30417c0a059e240b3f8f70c8af9c4cb6f2fd1bc2db594c647e285f","impliedFormat":1},{"version":"7483ef24249f6a3e24eb3d8136ec7fe0633cd6f8ffe752e2a8d99412aff35bb7","impliedFormat":1},{"version":"d0ca5d7df114035258a9d01165be309371fcccf0cccd9d57b1453204686d1ed0","impliedFormat":1},{"version":"ee1ee365d88c4c6c0c0a5a5701d66ebc27ccd0bcfcfaa482c6e2e7fe7b98edf7","affectsGlobalScope":true,"impliedFormat":1},{"version":"3e7dd0014ec3594783dc83ba8c06c13f191931a93e4d1b743371b2e7150cb9d4","affectsGlobalScope":true,"impliedFormat":1},{"version":"9478c5627112634ffbfe9ed73c210e60d0fcd06f5cdb4e70dded92187a01b3e5","impliedFormat":1},{"version":"304f66274aa8119e8d65a49b1cff84cbf803def6afe1b2cc987386e9a9890e22","impliedFormat":1},{"version":"1b9adafe8a7fefaeaf9099a0e06f602903f6268438147b843a33a5233ac71745","impliedFormat":1},{"version":"98273274f2dbb79b0b2009b20f74eca4a7146a3447c912d580cd5d2d94a7ae30","impliedFormat":1},{"version":"c933f7ba4b201c98b14275fd11a14abb950178afd2074703250fe3654fc10cd2","impliedFormat":1},{"version":"2eaa31492906bc8525aff3c3ec2236e22d90b0dfeee77089f196cd0adf0b3e3b","impliedFormat":1},{"version":"ea455cc68871b049bcecd9f56d4cf27b852d6dafd5e3b54468ca87cc11604e4d","affectsGlobalScope":true,"impliedFormat":1},{"version":"692b68dd0e5089760a2c54435e10d35d720abf806f8b166d85cd0ff4cdf90afb","impliedFormat":1},{"version":"a63d03de72adfb91777784015bd3b4125abd2f5ef867fc5a13920b5649e8f52b","impliedFormat":1},{"version":"d20e003f3d518a7c1f749dbe27c6ab5e3be7b3c905a48361b04a9557de4a6900","impliedFormat":1},{"version":"1d4d78c8b23c9ddaaaa49485e6adc2ec01086dfe5d8d4d36ca4cdc98d2f7e74a","affectsGlobalScope":true,"impliedFormat":1},{"version":"44fc16356b81c0463cc7d7b2b35dcf324d8144136f5bc5ce73ced86f2b3475b5","affectsGlobalScope":true,"impliedFormat":1},{"version":"575fb200043b11b464db8e42cc64379c5fd322b6d787638e005b5ee98a64486d","impliedFormat":1},{"version":"6de2f225d942562733e231a695534b30039bdf1875b377bb7255881f0df8ede8","impliedFormat":1},{"version":"56249fd3ef1f6b90888e606f4ea648c43978ef43a7263aafad64f8d83cd3b8aa","impliedFormat":1},{"version":"139ad1dc93a503da85b7a0d5f615bddbae61ad796bc68fedd049150db67a1e26","impliedFormat":1},{"version":"7b166975fdbd3b37afb64707b98bca88e46577bbc6c59871f9383a7df2daacd1","impliedFormat":1},{"version":"9eece5e586312581ccd106d4853e861aaaa1a39f8e3ea672b8c3847eedd12f6e","impliedFormat":1},{"version":"81505c54d7cad0009352eaa21bd923ab7cdee7ec3405357a54d9a5da033a2084","impliedFormat":1},{"version":"269929a24b2816343a178008ac9ae9248304d92a8ba8e233055e0ed6dbe6ef71","impliedFormat":1},{"version":"93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","impliedFormat":1},{"version":"3c1f19c7abcda6b3a4cf9438a15c7307a080bd3b51dfd56b198d9f86baf19447","impliedFormat":1},{"version":"2ee1645e0df9d84467cfe1d67b0ad3003c2f387de55874d565094464ee6f2927","impliedFormat":1},{"version":"abe61b580e030f1ca3ee548c8fd7b40fc686a97a056d5d1481f34c39c637345f","affectsGlobalScope":true,"impliedFormat":1},{"version":"9cf780e96b687e4bdfd1907ed26a688c18b89797490a00598fa8b8ab683335dd","affectsGlobalScope":true,"impliedFormat":1},{"version":"98e00f3613402504bc2a2c9a621800ab48e0a463d1eed062208a4ae98ad8f84c","impliedFormat":1},{"version":"9ae88ce9f73446c24b2d2452e993b676da1b31fca5ceb7276e7f36279f693ed1","impliedFormat":1},{"version":"e49d7625faff2a7842e4e7b9b197f972633fca685afcf6b4403400c97d087c36","impliedFormat":1},{"version":"b82c38abc53922b1b3670c3af6f333c21b735722a8f156e7d357a2da7c53a0a0","impliedFormat":1},{"version":"b423f53647708043299ded4daa68d95c967a2ac30aa1437adc4442129d7d0a6c","affectsGlobalScope":true,"impliedFormat":1},{"version":"7245af181218216bacb01fbdf51095617a51661f20d77178c69a377e16fb69ed","affectsGlobalScope":true,"impliedFormat":1},{"version":"4f0fc7b7f54422bd97cfaf558ddb4bca86893839367b746a8f86b60ac7619673","impliedFormat":1},{"version":"4cdd8b6b51599180a387cc7c1c50f49eca5ce06595d781638fd0216520d98246","impliedFormat":1},{"version":"d91a7d8b5655c42986f1bdfe2105c4408f472831c8f20cf11a8c3345b6b56c8c","impliedFormat":1},{"version":"ac14eb65c59722f0333e776a73e6a02cea23b5aa857a749ea176daf4e960e872","affectsGlobalScope":true,"impliedFormat":1},{"version":"7c6929fd7cbf38499b6a600b91c3b603d1d78395046dc3499b2b92d01418b94b","impliedFormat":1},{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true,"impliedFormat":1},{"version":"a42be67ed1ddaec743582f41fc219db96a1b69719fccac6d1464321178d610fc","impliedFormat":1}],"root":[115,116,[121,126],[128,140],[144,153],[155,210],[252,279]],"options":{"allowJs":false,"alwaysStrict":true,"composite":true,"declaration":true,"declarationMap":true,"esModuleInterop":true,"module":199,"noFallthroughCasesInSwitch":true,"noImplicitAny":true,"noImplicitReturns":true,"noImplicitThis":true,"noUncheckedIndexedAccess":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"./","rootDir":"../src","skipLibCheck":true,"sourceMap":true,"strict":true,"strictBindCallApply":true,"strictFunctionTypes":true,"strictNullChecks":true,"strictPropertyInitialization":true,"target":7,"tsBuildInfoFile":"./.tsbuildinfo"},"referencedMap":[[143,1],[282,2],[283,2],[317,3],[318,4],[319,5],[320,6],[321,7],[322,8],[323,9],[324,10],[325,11],[326,12],[327,12],[329,13],[328,14],[330,15],[331,16],[332,17],[316,18],[333,19],[334,20],[335,21],[368,22],[336,23],[337,24],[338,25],[339,26],[340,27],[341,28],[342,29],[343,30],[344,31],[345,32],[346,32],[347,33],[349,34],[351,35],[350,36],[352,37],[353,38],[354,39],[355,40],[356,41],[357,42],[358,43],[359,44],[360,45],[361,46],[362,47],[363,48],[364,49],[365,50],[366,51],[299,52],[306,53],[298,52],[313,54],[290,55],[289,56],[312,57],[307,58],[310,59],[292,60],[291,61],[287,62],[286,63],[309,64],[288,65],[293,66],[297,66],[315,67],[314,66],[301,68],[302,69],[304,70],[300,71],[303,72],[308,57],[295,73],[296,74],[305,75],[285,76],[311,77],[244,78],[242,79],[231,80],[243,81],[212,82],[251,83],[241,84],[218,85],[236,86],[233,87],[216,88],[228,89],[219,90],[232,91],[229,92],[215,93],[235,94],[237,95],[238,96],[239,96],[240,97],[246,96],[247,98],[230,99],[221,100],[222,100],[223,100],[234,101],[220,102],[248,103],[249,104],[217,105],[225,106],[226,107],[227,108],[250,92],[140,109],[208,110],[201,111],[263,110],[196,112],[264,113],[265,110],[206,114],[203,115],[198,116],[205,117],[200,118],[204,119],[199,120],[202,121],[195,122],[193,123],[194,120],[121,124],[115,125],[122,126],[124,127],[207,128],[160,129],[155,130],[156,131],[153,132],[158,133],[152,109],[266,110],[267,134],[151,115],[157,111],[159,111],[192,109],[209,110],[252,135],[253,136],[257,137],[256,138],[255,139],[254,140],[258,141],[259,142],[260,143],[261,142],[191,144],[268,110],[150,145],[146,146],[149,147],[148,148],[147,149],[190,150],[269,110],[270,110],[145,120],[271,144],[272,110],[188,151],[189,120],[273,110],[144,120],[187,152],[162,133],[174,153],[173,154],[172,155],[170,156],[167,157],[169,158],[166,159],[168,160],[165,132],[164,132],[171,161],[186,162],[183,133],[184,163],[185,164],[182,133],[181,165],[176,166],[178,111],[175,167],[180,168],[177,169],[276,170],[179,109],[161,132],[274,110],[275,171],[262,110],[139,172],[125,173],[129,174],[132,174],[136,175],[130,174],[277,110],[138,176],[134,115],[135,115],[131,115],[278,177],[137,174],[126,115],[128,178],[279,110],[133,174],[103,179],[96,180],[102,181],[101,182],[99,183],[98,184],[100,185],[97,184],[84,186],[95,187],[112,188],[110,189],[107,190],[109,186],[106,191],[105,192],[108,190],[111,193],[67,194],[60,195],[65,196],[61,197],[66,198],[62,199],[64,196],[63,200],[118,201],[120,202],[119,203],[117,204],[70,205],[55,186],[58,206],[68,207],[57,208],[69,209],[56,210],[59,211],[54,212],[77,213],[72,214],[76,215],[94,216],[90,217],[89,218],[92,186],[93,219],[91,218],[88,186],[154,220],[80,221],[81,221],[82,221],[85,222],[79,221],[86,223],[78,221],[83,221],[87,224]],"latestChangedDtsFile":"./types/references.d.ts","version":"5.9.2"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Adapter Generator - Generate C# adapters for structural constraints
3
+ * Per spec/15-generics.md §4 - Structural Constraints & Adapters
4
+ */
5
+ import { IrTypeParameter } from "@tsonic/frontend";
6
+ import { EmitterContext } from "./types.js";
7
+ /**
8
+ * Generate adapter interface and wrapper class for a structural constraint
9
+ *
10
+ * Example:
11
+ * Input: T extends { id: number; name: string }
12
+ * Output:
13
+ * interface __Constraint_T {
14
+ * double id { get; }
15
+ * string name { get; }
16
+ * }
17
+ *
18
+ * sealed class __Wrapper_T : __Constraint_T {
19
+ * public double id { get; set; }
20
+ * public string name { get; set; }
21
+ * }
22
+ */
23
+ export declare const generateStructuralAdapter: (typeParam: IrTypeParameter, context: EmitterContext) => [string, EmitterContext];
24
+ /**
25
+ * Generate all structural adapters for a set of type parameters
26
+ */
27
+ export declare const generateStructuralAdapters: (typeParams: readonly IrTypeParameter[] | undefined, context: EmitterContext) => [string, EmitterContext];
28
+ //# sourceMappingURL=adapter-generator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapter-generator.d.ts","sourceRoot":"","sources":["../src/adapter-generator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAqB,MAAM,YAAY,CAAC;AAG/D;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,yBAAyB,GACpC,WAAW,eAAe,EAC1B,SAAS,cAAc,KACtB,CAAC,MAAM,EAAE,cAAc,CAiDzB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,0BAA0B,GACrC,YAAY,SAAS,eAAe,EAAE,GAAG,SAAS,EAClD,SAAS,cAAc,KACtB,CAAC,MAAM,EAAE,cAAc,CA0BzB,CAAC"}
@@ -0,0 +1,83 @@
1
+ /**
2
+ * Adapter Generator - Generate C# adapters for structural constraints
3
+ * Per spec/15-generics.md §4 - Structural Constraints & Adapters
4
+ */
5
+ import { getIndent, indent } from "./types.js";
6
+ import { emitType } from "./type-emitter.js";
7
+ /**
8
+ * Generate adapter interface and wrapper class for a structural constraint
9
+ *
10
+ * Example:
11
+ * Input: T extends { id: number; name: string }
12
+ * Output:
13
+ * interface __Constraint_T {
14
+ * double id { get; }
15
+ * string name { get; }
16
+ * }
17
+ *
18
+ * sealed class __Wrapper_T : __Constraint_T {
19
+ * public double id { get; set; }
20
+ * public string name { get; set; }
21
+ * }
22
+ */
23
+ export const generateStructuralAdapter = (typeParam, context) => {
24
+ if (!typeParam.isStructuralConstraint || !typeParam.structuralMembers) {
25
+ return ["", context];
26
+ }
27
+ const ind = getIndent(context);
28
+ const bodyInd = getIndent(indent(context));
29
+ const parts = [];
30
+ let currentContext = context;
31
+ const interfaceName = `__Constraint_${typeParam.name}`;
32
+ const wrapperName = `__Wrapper_${typeParam.name}`;
33
+ // Generate interface
34
+ parts.push(`${ind}public interface ${interfaceName}`);
35
+ parts.push(`${ind}{`);
36
+ for (const member of typeParam.structuralMembers) {
37
+ if (member.kind === "propertySignature") {
38
+ const [memberType, newContext] = emitType(member.type, currentContext);
39
+ currentContext = newContext;
40
+ const optional = member.isOptional ? "?" : "";
41
+ parts.push(`${bodyInd}${memberType}${optional} ${member.name} { get; }`);
42
+ }
43
+ }
44
+ parts.push(`${ind}}`);
45
+ parts.push(""); // Blank line
46
+ // Generate wrapper class
47
+ parts.push(`${ind}public sealed class ${wrapperName} : ${interfaceName}`);
48
+ parts.push(`${ind}{`);
49
+ for (const member of typeParam.structuralMembers) {
50
+ if (member.kind === "propertySignature") {
51
+ const [memberType, newContext] = emitType(member.type, currentContext);
52
+ currentContext = newContext;
53
+ const optional = member.isOptional ? "?" : "";
54
+ parts.push(`${bodyInd}public ${memberType}${optional} ${member.name} { get; set; }`);
55
+ }
56
+ }
57
+ parts.push(`${ind}}`);
58
+ return [parts.join("\n"), currentContext];
59
+ };
60
+ /**
61
+ * Generate all structural adapters for a set of type parameters
62
+ */
63
+ export const generateStructuralAdapters = (typeParams, context) => {
64
+ if (!typeParams || typeParams.length === 0) {
65
+ return ["", context];
66
+ }
67
+ const adapters = [];
68
+ let currentContext = context;
69
+ for (const tp of typeParams) {
70
+ if (tp.isStructuralConstraint && tp.structuralMembers) {
71
+ const [adapterCode, newContext] = generateStructuralAdapter(tp, currentContext);
72
+ if (adapterCode) {
73
+ adapters.push(adapterCode);
74
+ currentContext = newContext;
75
+ }
76
+ }
77
+ }
78
+ if (adapters.length === 0) {
79
+ return ["", context];
80
+ }
81
+ return [adapters.join("\n\n"), currentContext];
82
+ };
83
+ //# sourceMappingURL=adapter-generator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapter-generator.js","sourceRoot":"","sources":["../src/adapter-generator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAkB,SAAS,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CACvC,SAA0B,EAC1B,OAAuB,EACG,EAAE;IAC5B,IAAI,CAAC,SAAS,CAAC,sBAAsB,IAAI,CAAC,SAAS,CAAC,iBAAiB,EAAE,CAAC;QACtE,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IACvB,CAAC;IAED,MAAM,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;IAC/B,MAAM,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IAC3C,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,cAAc,GAAG,OAAO,CAAC;IAE7B,MAAM,aAAa,GAAG,gBAAgB,SAAS,CAAC,IAAI,EAAE,CAAC;IACvD,MAAM,WAAW,GAAG,aAAa,SAAS,CAAC,IAAI,EAAE,CAAC;IAElD,qBAAqB;IACrB,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,oBAAoB,aAAa,EAAE,CAAC,CAAC;IACtD,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC;IAEtB,KAAK,MAAM,MAAM,IAAI,SAAS,CAAC,iBAAiB,EAAE,CAAC;QACjD,IAAI,MAAM,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;YACxC,MAAM,CAAC,UAAU,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;YACvE,cAAc,GAAG,UAAU,CAAC;YAE5B,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9C,KAAK,CAAC,IAAI,CAAC,GAAG,OAAO,GAAG,UAAU,GAAG,QAAQ,IAAI,MAAM,CAAC,IAAI,WAAW,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC;IACtB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa;IAE7B,yBAAyB;IACzB,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,uBAAuB,WAAW,MAAM,aAAa,EAAE,CAAC,CAAC;IAC1E,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC;IAEtB,KAAK,MAAM,MAAM,IAAI,SAAS,CAAC,iBAAiB,EAAE,CAAC;QACjD,IAAI,MAAM,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;YACxC,MAAM,CAAC,UAAU,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;YACvE,cAAc,GAAG,UAAU,CAAC;YAE5B,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9C,KAAK,CAAC,IAAI,CACR,GAAG,OAAO,UAAU,UAAU,GAAG,QAAQ,IAAI,MAAM,CAAC,IAAI,gBAAgB,CACzE,CAAC;QACJ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC;IAEtB,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,cAAc,CAAC,CAAC;AAC5C,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,CACxC,UAAkD,EAClD,OAAuB,EACG,EAAE;IAC5B,IAAI,CAAC,UAAU,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3C,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IACvB,CAAC;IAED,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,IAAI,cAAc,GAAG,OAAO,CAAC;IAE7B,KAAK,MAAM,EAAE,IAAI,UAAU,EAAE,CAAC;QAC5B,IAAI,EAAE,CAAC,sBAAsB,IAAI,EAAE,CAAC,iBAAiB,EAAE,CAAC;YACtD,MAAM,CAAC,WAAW,EAAE,UAAU,CAAC,GAAG,yBAAyB,CACzD,EAAE,EACF,cAAc,CACf,CAAC;YACF,IAAI,WAAW,EAAE,CAAC;gBAChB,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBAC3B,cAAc,GAAG,UAAU,CAAC;YAC9B,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IACvB,CAAC;IAED,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,cAAc,CAAC,CAAC;AACjD,CAAC,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Tests for array emission
3
+ * Verifies Tsonic.JSRuntime extension methods usage and JavaScript semantics
4
+ */
5
+ export {};
6
+ //# sourceMappingURL=array.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"array.test.d.ts","sourceRoot":"","sources":["../src/array.test.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
@@ -0,0 +1,274 @@
1
+ /**
2
+ * Tests for array emission
3
+ * Verifies Tsonic.JSRuntime extension methods usage and JavaScript semantics
4
+ */
5
+ import { describe, it } from "mocha";
6
+ import { expect } from "chai";
7
+ import { emitModule } from "./emitter.js";
8
+ describe("Array Emission", () => {
9
+ it("should emit basic array literal with correct type", () => {
10
+ const module = {
11
+ kind: "module",
12
+ filePath: "/test/arrays.ts",
13
+ namespace: "Test",
14
+ className: "arrays",
15
+ isStaticContainer: true,
16
+ imports: [],
17
+ exports: [],
18
+ body: [
19
+ {
20
+ kind: "variableDeclaration",
21
+ declarationKind: "const",
22
+ isExported: false,
23
+ declarations: [
24
+ {
25
+ kind: "variableDeclarator",
26
+ name: { kind: "identifierPattern", name: "numbers" },
27
+ type: {
28
+ kind: "referenceType",
29
+ name: "Array",
30
+ typeArguments: [{ kind: "primitiveType", name: "number" }],
31
+ },
32
+ initializer: {
33
+ kind: "array",
34
+ elements: [
35
+ { kind: "literal", value: 1 },
36
+ { kind: "literal", value: 2 },
37
+ { kind: "literal", value: 3 },
38
+ ],
39
+ },
40
+ },
41
+ ],
42
+ },
43
+ ],
44
+ };
45
+ const code = emitModule(module);
46
+ // Integer literals create List<int> - C# infers type from literal values
47
+ // Uses global:: FQN for unambiguous resolution
48
+ expect(code).to.include("new global::System.Collections.Generic.List<int> { 1, 2, 3 }");
49
+ // No using statements - all types use global:: FQN
50
+ expect(code).not.to.include("using System.Collections.Generic");
51
+ });
52
+ it("should emit sparse array with holes", () => {
53
+ const module = {
54
+ kind: "module",
55
+ filePath: "/test/sparse.ts",
56
+ namespace: "Test",
57
+ className: "sparse",
58
+ isStaticContainer: true,
59
+ imports: [],
60
+ exports: [],
61
+ body: [
62
+ {
63
+ kind: "variableDeclaration",
64
+ declarationKind: "const",
65
+ isExported: false,
66
+ declarations: [
67
+ {
68
+ kind: "variableDeclarator",
69
+ name: { kind: "identifierPattern", name: "sparse" },
70
+ type: {
71
+ kind: "referenceType",
72
+ name: "Array",
73
+ typeArguments: [{ kind: "primitiveType", name: "number" }],
74
+ },
75
+ initializer: {
76
+ kind: "array",
77
+ elements: [
78
+ { kind: "literal", value: 1 },
79
+ undefined, // hole
80
+ { kind: "literal", value: 3 },
81
+ ],
82
+ },
83
+ },
84
+ ],
85
+ },
86
+ ],
87
+ };
88
+ const code = emitModule(module);
89
+ // Should handle sparse array with default - integer literals create List<int>
90
+ expect(code).to.include("new global::System.Collections.Generic.List<int> { 1, default, 3 }");
91
+ });
92
+ it("should emit array with string elements", () => {
93
+ const module = {
94
+ kind: "module",
95
+ filePath: "/test/strings.ts",
96
+ namespace: "Test",
97
+ className: "strings",
98
+ isStaticContainer: true,
99
+ imports: [],
100
+ exports: [],
101
+ body: [
102
+ {
103
+ kind: "variableDeclaration",
104
+ declarationKind: "const",
105
+ isExported: false,
106
+ declarations: [
107
+ {
108
+ kind: "variableDeclarator",
109
+ name: { kind: "identifierPattern", name: "words" },
110
+ type: {
111
+ kind: "referenceType",
112
+ name: "Array",
113
+ typeArguments: [{ kind: "primitiveType", name: "string" }],
114
+ },
115
+ initializer: {
116
+ kind: "array",
117
+ elements: [
118
+ { kind: "literal", value: "hello" },
119
+ { kind: "literal", value: "world" },
120
+ ],
121
+ },
122
+ },
123
+ ],
124
+ },
125
+ ],
126
+ };
127
+ const code = emitModule(module);
128
+ // Should use string type parameter
129
+ expect(code).to.include("new global::System.Collections.Generic.List<string>");
130
+ expect(code).to.include('"hello", "world"');
131
+ });
132
+ it("should emit empty array", () => {
133
+ const module = {
134
+ kind: "module",
135
+ filePath: "/test/empty.ts",
136
+ namespace: "Test",
137
+ className: "empty",
138
+ isStaticContainer: true,
139
+ imports: [],
140
+ exports: [],
141
+ body: [
142
+ {
143
+ kind: "variableDeclaration",
144
+ declarationKind: "const",
145
+ isExported: false,
146
+ declarations: [
147
+ {
148
+ kind: "variableDeclarator",
149
+ name: { kind: "identifierPattern", name: "empty" },
150
+ type: {
151
+ kind: "referenceType",
152
+ name: "Array",
153
+ typeArguments: [{ kind: "primitiveType", name: "number" }],
154
+ },
155
+ initializer: {
156
+ kind: "array",
157
+ elements: [],
158
+ },
159
+ },
160
+ ],
161
+ },
162
+ ],
163
+ };
164
+ const code = emitModule(module);
165
+ // Should create empty array
166
+ expect(code).to.include("new global::System.Collections.Generic.List<double>()");
167
+ });
168
+ it("should emit array method calls correctly", () => {
169
+ const module = {
170
+ kind: "module",
171
+ filePath: "/test/methods.ts",
172
+ namespace: "Test",
173
+ className: "methods",
174
+ isStaticContainer: true,
175
+ imports: [],
176
+ exports: [],
177
+ body: [
178
+ {
179
+ kind: "variableDeclaration",
180
+ declarationKind: "const",
181
+ isExported: false,
182
+ declarations: [
183
+ {
184
+ kind: "variableDeclarator",
185
+ name: { kind: "identifierPattern", name: "arr" },
186
+ initializer: {
187
+ kind: "array",
188
+ elements: [
189
+ { kind: "literal", value: 1 },
190
+ { kind: "literal", value: 2 },
191
+ ],
192
+ },
193
+ },
194
+ ],
195
+ },
196
+ {
197
+ kind: "expressionStatement",
198
+ expression: {
199
+ kind: "call",
200
+ callee: {
201
+ kind: "memberAccess",
202
+ object: { kind: "identifier", name: "arr" },
203
+ property: "push",
204
+ isComputed: false,
205
+ isOptional: false,
206
+ },
207
+ arguments: [{ kind: "literal", value: 3 }],
208
+ isOptional: false,
209
+ },
210
+ },
211
+ ],
212
+ };
213
+ const code = emitModule(module);
214
+ // Should call push method on array instance - C# implicitly converts int to double
215
+ expect(code).to.include("arr.push(3)");
216
+ });
217
+ it("should handle array element access", () => {
218
+ const module = {
219
+ kind: "module",
220
+ filePath: "/test/access.ts",
221
+ namespace: "Test",
222
+ className: "access",
223
+ isStaticContainer: true,
224
+ imports: [],
225
+ exports: [],
226
+ body: [
227
+ {
228
+ kind: "variableDeclaration",
229
+ declarationKind: "const",
230
+ isExported: false,
231
+ declarations: [
232
+ {
233
+ kind: "variableDeclarator",
234
+ name: { kind: "identifierPattern", name: "arr" },
235
+ initializer: {
236
+ kind: "array",
237
+ elements: [{ kind: "literal", value: 10 }],
238
+ },
239
+ },
240
+ ],
241
+ },
242
+ {
243
+ kind: "variableDeclaration",
244
+ declarationKind: "const",
245
+ isExported: false,
246
+ declarations: [
247
+ {
248
+ kind: "variableDeclarator",
249
+ name: { kind: "identifierPattern", name: "first" },
250
+ initializer: {
251
+ kind: "memberAccess",
252
+ object: {
253
+ kind: "identifier",
254
+ name: "arr",
255
+ inferredType: {
256
+ kind: "arrayType",
257
+ elementType: { kind: "primitiveType", name: "number" },
258
+ },
259
+ },
260
+ property: { kind: "literal", value: 0 },
261
+ isComputed: true,
262
+ isOptional: false,
263
+ },
264
+ },
265
+ ],
266
+ },
267
+ ],
268
+ };
269
+ const code = emitModule(module);
270
+ // Should use static helper for array access with global:: prefix
271
+ expect(code).to.include("global::Tsonic.Runtime.Array.get(arr, 0)");
272
+ });
273
+ });
274
+ //# sourceMappingURL=array.test.js.map