@lpc-lang/core 1.1.2-5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (317) hide show
  1. package/README.md +255 -0
  2. package/bin/lpc +4 -0
  3. package/bin/lpcserver +4 -0
  4. package/cancellationToken/cancellationToken.d.ts +8 -0
  5. package/cancellationToken/cancellationToken.d.ts.map +1 -0
  6. package/cancellationToken/serverCancellationToken.d.ts +21 -0
  7. package/cancellationToken/serverCancellationToken.d.ts.map +1 -0
  8. package/cli/_namespaces/lpc.d.ts +2 -0
  9. package/cli/_namespaces/lpc.d.ts.map +1 -0
  10. package/cli/lpc.d.ts +2 -0
  11. package/cli/lpc.d.ts.map +1 -0
  12. package/compiler/LpcConfig.d.ts +17 -0
  13. package/compiler/LpcConfig.d.ts.map +1 -0
  14. package/compiler/_namespaces/lpc.d.ts +49 -0
  15. package/compiler/_namespaces/lpc.d.ts.map +1 -0
  16. package/compiler/_namespaces/lpc.moduleSpecifiers.d.ts +2 -0
  17. package/compiler/_namespaces/lpc.moduleSpecifiers.d.ts.map +1 -0
  18. package/compiler/_namespaces/lpc.performance.d.ts +2 -0
  19. package/compiler/_namespaces/lpc.performance.d.ts.map +1 -0
  20. package/compiler/binder.d.ts +2 -0
  21. package/compiler/binder.d.ts.map +1 -0
  22. package/compiler/builderPublic.d.ts +76 -0
  23. package/compiler/builderPublic.d.ts.map +1 -0
  24. package/compiler/checker.d.ts +2 -0
  25. package/compiler/checker.d.ts.map +1 -0
  26. package/compiler/commandLineParser.d.ts +47 -0
  27. package/compiler/commandLineParser.d.ts.map +1 -0
  28. package/compiler/core.d.ts +3 -0
  29. package/compiler/core.d.ts.map +1 -0
  30. package/compiler/corePublic.d.ts +19 -0
  31. package/compiler/corePublic.d.ts.map +1 -0
  32. package/compiler/debug.d.ts +71 -0
  33. package/compiler/debug.d.ts.map +1 -0
  34. package/compiler/diagnosticInformation.d.ts +518 -0
  35. package/compiler/diagnosticInformation.d.ts.map +1 -0
  36. package/compiler/emitter.d.ts +11 -0
  37. package/compiler/emitter.d.ts.map +1 -0
  38. package/compiler/executeCommandLine.d.ts +15 -0
  39. package/compiler/executeCommandLine.d.ts.map +1 -0
  40. package/compiler/expressionToTypeNode.d.ts +2 -0
  41. package/compiler/expressionToTypeNode.d.ts.map +1 -0
  42. package/compiler/factory/baseNodeFactory.d.ts +2 -0
  43. package/compiler/factory/baseNodeFactory.d.ts.map +1 -0
  44. package/compiler/factory/emitHelper.d.ts +2 -0
  45. package/compiler/factory/emitHelper.d.ts.map +1 -0
  46. package/compiler/factory/emitNode.d.ts +22 -0
  47. package/compiler/factory/emitNode.d.ts.map +1 -0
  48. package/compiler/factory/nodeChildren.d.ts +2 -0
  49. package/compiler/factory/nodeChildren.d.ts.map +1 -0
  50. package/compiler/factory/nodeConverters.d.ts +2 -0
  51. package/compiler/factory/nodeConverters.d.ts.map +1 -0
  52. package/compiler/factory/nodeFactory.d.ts +4 -0
  53. package/compiler/factory/nodeFactory.d.ts.map +1 -0
  54. package/compiler/factory/parenthesizerRules.d.ts +2 -0
  55. package/compiler/factory/parenthesizerRules.d.ts.map +1 -0
  56. package/compiler/factory/utilities.d.ts +2 -0
  57. package/compiler/factory/utilities.d.ts.map +1 -0
  58. package/compiler/factory/utilitiesPublic.d.ts +4 -0
  59. package/compiler/factory/utilitiesPublic.d.ts.map +1 -0
  60. package/compiler/lpcFileHandler.d.ts +10 -0
  61. package/compiler/lpcFileHandler.d.ts.map +1 -0
  62. package/compiler/lpcJsHelpers.d.ts +17 -0
  63. package/compiler/lpcJsHelpers.d.ts.map +1 -0
  64. package/compiler/lpcbuild.d.ts +2 -0
  65. package/compiler/lpcbuild.d.ts.map +1 -0
  66. package/compiler/lpcbuildPublic.d.ts +26 -0
  67. package/compiler/lpcbuildPublic.d.ts.map +1 -0
  68. package/compiler/moduleNameResolver.d.ts +55 -0
  69. package/compiler/moduleNameResolver.d.ts.map +1 -0
  70. package/compiler/moduleSpecifiers.d.ts +2 -0
  71. package/compiler/moduleSpecifiers.d.ts.map +1 -0
  72. package/compiler/nodeTests.d.ts +115 -0
  73. package/compiler/nodeTests.d.ts.map +1 -0
  74. package/compiler/parser.d.ts +65 -0
  75. package/compiler/parser.d.ts.map +1 -0
  76. package/compiler/path.d.ts +2 -0
  77. package/compiler/path.d.ts.map +1 -0
  78. package/compiler/perfLoger.d.ts +2 -0
  79. package/compiler/perfLoger.d.ts.map +1 -0
  80. package/compiler/performance.d.ts +2 -0
  81. package/compiler/performance.d.ts.map +1 -0
  82. package/compiler/performanceCore.d.ts +2 -0
  83. package/compiler/performanceCore.d.ts.map +1 -0
  84. package/compiler/program.d.ts +72 -0
  85. package/compiler/program.d.ts.map +1 -0
  86. package/compiler/resolutionCache.d.ts +6 -0
  87. package/compiler/resolutionCache.d.ts.map +1 -0
  88. package/compiler/resolver.d.ts +1 -0
  89. package/compiler/resolver.d.ts.map +1 -0
  90. package/compiler/scanner.d.ts +85 -0
  91. package/compiler/scanner.d.ts.map +1 -0
  92. package/compiler/sourcemap.d.ts +2 -0
  93. package/compiler/sourcemap.d.ts.map +1 -0
  94. package/compiler/sys.d.ts +56 -0
  95. package/compiler/sys.d.ts.map +1 -0
  96. package/compiler/tracing.d.ts +31 -0
  97. package/compiler/tracing.d.ts.map +1 -0
  98. package/compiler/transformers/declarations.d.ts +2 -0
  99. package/compiler/transformers/declarations.d.ts.map +1 -0
  100. package/compiler/transformers.d.ts +2 -0
  101. package/compiler/transformers.d.ts.map +1 -0
  102. package/compiler/types.d.ts +3284 -0
  103. package/compiler/types.d.ts.map +1 -0
  104. package/compiler/utilities.d.ts +57 -0
  105. package/compiler/utilities.d.ts.map +1 -0
  106. package/compiler/utilitiesPublic.d.ts +213 -0
  107. package/compiler/utilitiesPublic.d.ts.map +1 -0
  108. package/compiler/visitorPublic.d.ts +72 -0
  109. package/compiler/visitorPublic.d.ts.map +1 -0
  110. package/compiler/watch.d.ts +2 -0
  111. package/compiler/watch.d.ts.map +1 -0
  112. package/compiler/watchPublic.d.ts +44 -0
  113. package/compiler/watchPublic.d.ts.map +1 -0
  114. package/compiler/watchUtilities.d.ts +14 -0
  115. package/compiler/watchUtilities.d.ts.map +1 -0
  116. package/config-types.d.ts +33 -0
  117. package/config-types.d.ts.map +1 -0
  118. package/harness/harnessIO.d.ts +4 -0
  119. package/harness/harnessIO.d.ts.map +1 -0
  120. package/lpc/_namespaces/lpc.d.ts +6 -0
  121. package/lpc/_namespaces/lpc.d.ts.map +1 -0
  122. package/lpc/_namespaces/lpc.server.d.ts +2 -0
  123. package/lpc/_namespaces/lpc.server.d.ts.map +1 -0
  124. package/lpc/lpc.d.ts +2 -0
  125. package/lpc/lpc.d.ts.map +1 -0
  126. package/lpcserver/document.d.ts +1 -0
  127. package/lpcserver/document.d.ts.map +1 -0
  128. package/lpcserver/nodeServer.d.ts +25 -0
  129. package/lpcserver/nodeServer.d.ts.map +1 -0
  130. package/lpcserver/protocol.const.d.ts +46 -0
  131. package/lpcserver/protocol.const.d.ts.map +1 -0
  132. package/lpcserver/server.d.ts +3 -0
  133. package/lpcserver/server.d.ts.map +1 -0
  134. package/lpcserver/textRendering.d.ts +14 -0
  135. package/lpcserver/textRendering.d.ts.map +1 -0
  136. package/lpcserver/typeConverters.d.ts +44 -0
  137. package/lpcserver/typeConverters.d.ts.map +1 -0
  138. package/lpcserver/utils.d.ts +14 -0
  139. package/lpcserver/utils.d.ts.map +1 -0
  140. package/package.json +48 -0
  141. package/parse-fluff-docs.d.ts +2 -0
  142. package/parse-fluff-docs.d.ts.map +1 -0
  143. package/parse-ld-docs.d.ts +2 -0
  144. package/parse-ld-docs.d.ts.map +1 -0
  145. package/server/_namespaces/lpc.d.ts +5 -0
  146. package/server/_namespaces/lpc.d.ts.map +1 -0
  147. package/server/_namespaces/lpc.server.d.ts +11 -0
  148. package/server/_namespaces/lpc.server.d.ts.map +1 -0
  149. package/server/_namespaces/lpc.server.protocol.d.ts +2 -0
  150. package/server/_namespaces/lpc.server.protocol.d.ts.map +1 -0
  151. package/server/editorServices.d.ts +261 -0
  152. package/server/editorServices.d.ts.map +1 -0
  153. package/server/project.d.ts +143 -0
  154. package/server/project.d.ts.map +1 -0
  155. package/server/protocol.d.ts +962 -0
  156. package/server/protocol.d.ts.map +1 -0
  157. package/server/scriptInfo.d.ts +53 -0
  158. package/server/scriptInfo.d.ts.map +1 -0
  159. package/server/scriptVersionCache.d.ts +2 -0
  160. package/server/scriptVersionCache.d.ts.map +1 -0
  161. package/server/session.d.ts +150 -0
  162. package/server/session.d.ts.map +1 -0
  163. package/server/types.d.ts +24 -0
  164. package/server/types.d.ts.map +1 -0
  165. package/server/utilities.d.ts +2 -0
  166. package/server/utilities.d.ts.map +1 -0
  167. package/server/utilitiesPublic.d.ts +37 -0
  168. package/server/utilitiesPublic.d.ts.map +1 -0
  169. package/server.d.ts +2 -0
  170. package/server.d.ts.map +1 -0
  171. package/services/_namespaces/lpc.Completions.StringCompletions.d.ts +2 -0
  172. package/services/_namespaces/lpc.Completions.StringCompletions.d.ts.map +1 -0
  173. package/services/_namespaces/lpc.Completions.d.ts +4 -0
  174. package/services/_namespaces/lpc.Completions.d.ts.map +1 -0
  175. package/services/_namespaces/lpc.FindAllReferences.d.ts +3 -0
  176. package/services/_namespaces/lpc.FindAllReferences.d.ts.map +1 -0
  177. package/services/_namespaces/lpc.GoToDefinition.d.ts +2 -0
  178. package/services/_namespaces/lpc.GoToDefinition.d.ts.map +1 -0
  179. package/services/_namespaces/lpc.JsDoc.d.ts +2 -0
  180. package/services/_namespaces/lpc.JsDoc.d.ts.map +1 -0
  181. package/services/_namespaces/lpc.NavigationBar.d.ts +2 -0
  182. package/services/_namespaces/lpc.NavigationBar.d.ts.map +1 -0
  183. package/services/_namespaces/lpc.Rename.d.ts +2 -0
  184. package/services/_namespaces/lpc.Rename.d.ts.map +1 -0
  185. package/services/_namespaces/lpc.SignatureHelp.d.ts +2 -0
  186. package/services/_namespaces/lpc.SignatureHelp.d.ts.map +1 -0
  187. package/services/_namespaces/lpc.SymbolDisplay.d.ts +2 -0
  188. package/services/_namespaces/lpc.SymbolDisplay.d.ts.map +1 -0
  189. package/services/_namespaces/lpc.codefix.d.ts +3 -0
  190. package/services/_namespaces/lpc.codefix.d.ts.map +1 -0
  191. package/services/_namespaces/lpc.d.ts +30 -0
  192. package/services/_namespaces/lpc.d.ts.map +1 -0
  193. package/services/_namespaces/lpc.formatting.d.ts +7 -0
  194. package/services/_namespaces/lpc.formatting.d.ts.map +1 -0
  195. package/services/_namespaces/lpc.textChanges.d.ts +2 -0
  196. package/services/_namespaces/lpc.textChanges.d.ts.map +1 -0
  197. package/services/classifier2020.d.ts +2 -0
  198. package/services/classifier2020.d.ts.map +1 -0
  199. package/services/codefixes/helpers.d.ts +2 -0
  200. package/services/codefixes/helpers.d.ts.map +1 -0
  201. package/services/codefixes/importFixes.d.ts +2 -0
  202. package/services/codefixes/importFixes.d.ts.map +1 -0
  203. package/services/completions.d.ts +2 -0
  204. package/services/completions.d.ts.map +1 -0
  205. package/services/documentRegistry.d.ts +90 -0
  206. package/services/documentRegistry.d.ts.map +1 -0
  207. package/services/exportInfoMap.d.ts +5 -0
  208. package/services/exportInfoMap.d.ts.map +1 -0
  209. package/services/findAllReferences.d.ts +2 -0
  210. package/services/findAllReferences.d.ts.map +1 -0
  211. package/services/formatting/formatting.d.ts +2 -0
  212. package/services/formatting/formatting.d.ts.map +1 -0
  213. package/services/formatting/formattingContext.d.ts +2 -0
  214. package/services/formatting/formattingContext.d.ts.map +1 -0
  215. package/services/formatting/rule.d.ts +2 -0
  216. package/services/formatting/rule.d.ts.map +1 -0
  217. package/services/formatting/rules.d.ts +2 -0
  218. package/services/formatting/rules.d.ts.map +1 -0
  219. package/services/formatting/rulesMap.d.ts +2 -0
  220. package/services/formatting/rulesMap.d.ts.map +1 -0
  221. package/services/formatting/smartIndenter.d.ts +2 -0
  222. package/services/formatting/smartIndenter.d.ts.map +1 -0
  223. package/services/goToDefinition.d.ts +2 -0
  224. package/services/goToDefinition.d.ts.map +1 -0
  225. package/services/importTracker.d.ts +2 -0
  226. package/services/importTracker.d.ts.map +1 -0
  227. package/services/jsDoc.d.ts +2 -0
  228. package/services/jsDoc.d.ts.map +1 -0
  229. package/services/navigationBar.d.ts +2 -0
  230. package/services/navigationBar.d.ts.map +1 -0
  231. package/services/rename.d.ts +2 -0
  232. package/services/rename.d.ts.map +1 -0
  233. package/services/services.d.ts +54 -0
  234. package/services/services.d.ts.map +1 -0
  235. package/services/signatureHelp.d.ts +2 -0
  236. package/services/signatureHelp.d.ts.map +1 -0
  237. package/services/sourcemaps.d.ts +2 -0
  238. package/services/sourcemaps.d.ts.map +1 -0
  239. package/services/stringCompletions.d.ts +2 -0
  240. package/services/stringCompletions.d.ts.map +1 -0
  241. package/services/suggestionDiagnostics.d.ts +2 -0
  242. package/services/suggestionDiagnostics.d.ts.map +1 -0
  243. package/services/symbolDisplay.d.ts +2 -0
  244. package/services/symbolDisplay.d.ts.map +1 -0
  245. package/services/textChanges.d.ts +2 -0
  246. package/services/textChanges.d.ts.map +1 -0
  247. package/services/types.d.ts +901 -0
  248. package/services/types.d.ts.map +1 -0
  249. package/services/utilities.d.ts +3 -0
  250. package/services/utilities.d.ts.map +1 -0
  251. package/src/cli.js +58 -0
  252. package/src/cli.js.map +7 -0
  253. package/src/efuns/fluffos/arrays.h +205 -0
  254. package/src/efuns/fluffos/async.h +84 -0
  255. package/src/efuns/fluffos/buffers.h +80 -0
  256. package/src/efuns/fluffos/calls.h +275 -0
  257. package/src/efuns/fluffos/contrib.h +805 -0
  258. package/src/efuns/fluffos/db.h +125 -0
  259. package/src/efuns/fluffos/driver.h +107 -0
  260. package/src/efuns/fluffos/ed.h +48 -0
  261. package/src/efuns/fluffos/efuns.fluffos.h +75 -0
  262. package/src/efuns/fluffos/external.h +30 -0
  263. package/src/efuns/fluffos/filesystem.h +154 -0
  264. package/src/efuns/fluffos/floats.h +136 -0
  265. package/src/efuns/fluffos/functions.h +104 -0
  266. package/src/efuns/fluffos/general.h +548 -0
  267. package/src/efuns/fluffos/interactive.h +777 -0
  268. package/src/efuns/fluffos/internals.h +455 -0
  269. package/src/efuns/fluffos/lpc-config.json +10 -0
  270. package/src/efuns/fluffos/mappings.h +205 -0
  271. package/src/efuns/fluffos/misc.h +43 -0
  272. package/src/efuns/fluffos/mudlib.h +228 -0
  273. package/src/efuns/fluffos/numbers.h +41 -0
  274. package/src/efuns/fluffos/objects.h +365 -0
  275. package/src/efuns/fluffos/parsing.h +220 -0
  276. package/src/efuns/fluffos/pcre.h +75 -0
  277. package/src/efuns/fluffos/sockets.h +276 -0
  278. package/src/efuns/fluffos/strings.h +542 -0
  279. package/src/efuns/fluffos/system.h +408 -0
  280. package/src/efuns/fluffos/zh-cn/arrays.zh-cn.h +167 -0
  281. package/src/efuns/fluffos/zh-cn/async.zh-cn.h +81 -0
  282. package/src/efuns/fluffos/zh-cn/buffers.zh-cn.h +69 -0
  283. package/src/efuns/fluffos/zh-cn/calls.zh-cn.h +242 -0
  284. package/src/efuns/fluffos/zh-cn/contrib.zh-cn.h +767 -0
  285. package/src/efuns/fluffos/zh-cn/db.zh-cn.h +113 -0
  286. package/src/efuns/fluffos/zh-cn/ed.zh-cn.h +42 -0
  287. package/src/efuns/fluffos/zh-cn/efuns.fluffos.h +76 -0
  288. package/src/efuns/fluffos/zh-cn/external.zh-cn.h +25 -0
  289. package/src/efuns/fluffos/zh-cn/filesystem.zh-cn.h +140 -0
  290. package/src/efuns/fluffos/zh-cn/floats.zh-cn.h +129 -0
  291. package/src/efuns/fluffos/zh-cn/functions.zh-cn.h +87 -0
  292. package/src/efuns/fluffos/zh-cn/general.zh-cn.h +506 -0
  293. package/src/efuns/fluffos/zh-cn/interactive.zh-cn.h +659 -0
  294. package/src/efuns/fluffos/zh-cn/internals.zh-cn.h +356 -0
  295. package/src/efuns/fluffos/zh-cn/mappings.zh-cn.h +188 -0
  296. package/src/efuns/fluffos/zh-cn/misc.zh-cn.h +43 -0
  297. package/src/efuns/fluffos/zh-cn/mudlib.zh-cn.h +190 -0
  298. package/src/efuns/fluffos/zh-cn/numbers.zh-cn.h +36 -0
  299. package/src/efuns/fluffos/zh-cn/objects.zh-cn.h +280 -0
  300. package/src/efuns/fluffos/zh-cn/parsing.zh-cn.h +212 -0
  301. package/src/efuns/fluffos/zh-cn/pcre.zh-cn.h +67 -0
  302. package/src/efuns/fluffos/zh-cn/sockets.zh-cn.h +230 -0
  303. package/src/efuns/fluffos/zh-cn/strings.zh-cn.h +484 -0
  304. package/src/efuns/fluffos/zh-cn/system.zh-cn.h +366 -0
  305. package/src/efuns/ldmud/defines.h +69 -0
  306. package/src/efuns/ldmud/efun.h +10449 -0
  307. package/src/efuns/ldmud/efuns.ldmud.h +87 -0
  308. package/src/efuns/ldmud/lpc-config.json +9 -0
  309. package/src/efuns/ldmud/obsolete.h +2168 -0
  310. package/src/lpc.js +82486 -0
  311. package/src/lpc.js.map +6 -0
  312. package/src/server.js +129 -0
  313. package/src/server.js.map +7 -0
  314. package/types.d.ts +23 -0
  315. package/types.d.ts.map +1 -0
  316. package/utils.d.ts +21 -0
  317. package/utils.d.ts.map +1 -0
package/src/cli.js ADDED
@@ -0,0 +1,58 @@
1
+ // Copyright 2024 John L Chmura
2
+
3
+ var Zz=Object.create;var CF=Object.defineProperty;var eH=Object.getOwnPropertyDescriptor;var nH=Object.getOwnPropertyNames;var tH=Object.getPrototypeOf,rH=Object.prototype.hasOwnProperty;var Iu=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),pd=(e,t)=>{for(var i in t)CF(e,i,{get:t[i],enumerable:!0})},iH=(e,t,i,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let c of nH(t))!rH.call(e,c)&&c!==i&&CF(e,c,{get:()=>t[c],enumerable:!(o=eH(t,c))||o.enumerable});return e};var oH=(e,t,i)=>(i=e!=null?Zz(tH(e)):{},iH(t||!e||!e.__esModule?CF(i,"default",{value:e,enumerable:!0}):i,e));var bj=Iu(qL=>{var xj="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");qL.encode=function(e){if(0<=e&&e<xj.length)return xj[e];throw new TypeError("Must be between 0 and 63: "+e)};qL.decode=function(e){var t=65,i=90,o=97,c=122,u=48,p=57,m=43,g=47,S=26,T=52;return t<=e&&e<=i?e-t:o<=e&&e<=c?e-o+S:u<=e&&e<=p?e-u+T:e==m?62:e==g?63:-1}});var QL=Iu($L=>{var Cj=bj(),GL=5,Ej=1<<GL,Nj=Ej-1,Dj=Ej;function PQ(e){return e<0?(-e<<1)+1:(e<<1)+0}function kQ(e){var t=(e&1)===1,i=e>>1;return t?-i:i}$L.encode=function(t){var i="",o,c=PQ(t);do o=c&Nj,c>>>=GL,c>0&&(o|=Dj),i+=Cj.encode(o);while(c>0);return i};$L.decode=function(t,i,o){var c=t.length,u=0,p=0,m,g;do{if(i>=c)throw new Error("Expected more digits in base 64 VLQ value.");if(g=Cj.decode(t.charCodeAt(i++)),g===-1)throw new Error("Invalid base64 digit: "+t.charAt(i-1));m=!!(g&Dj),g&=Nj,u=u+(g<<p),p+=GL}while(m);o.value=kQ(u),o.rest=i}});var AS=Iu(sl=>{function vQ(e,t,i){if(t in e)return e[t];if(arguments.length===3)return i;throw new Error('"'+t+'" is a required argument.')}sl.getArg=vQ;var Pj=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/,FQ=/^data:.+\,.+$/;function Rb(e){var t=e.match(Pj);return t?{scheme:t[1],auth:t[2],host:t[3],port:t[4],path:t[5]}:null}sl.urlParse=Rb;function IS(e){var t="";return e.scheme&&(t+=e.scheme+":"),t+="//",e.auth&&(t+=e.auth+"@"),e.host&&(t+=e.host),e.port&&(t+=":"+e.port),e.path&&(t+=e.path),t}sl.urlGenerate=IS;function YL(e){var t=e,i=Rb(e);if(i){if(!i.path)return e;t=i.path}for(var o=sl.isAbsolute(t),c=t.split(/\/+/),u,p=0,m=c.length-1;m>=0;m--)u=c[m],u==="."?c.splice(m,1):u===".."?p++:p>0&&(u===""?(c.splice(m+1,p),p=0):(c.splice(m,2),p--));return t=c.join("/"),t===""&&(t=o?"/":"."),i?(i.path=t,IS(i)):t}sl.normalize=YL;function kj(e,t){e===""&&(e="."),t===""&&(t=".");var i=Rb(t),o=Rb(e);if(o&&(e=o.path||"/"),i&&!i.scheme)return o&&(i.scheme=o.scheme),IS(i);if(i||t.match(FQ))return t;if(o&&!o.host&&!o.path)return o.host=t,IS(o);var c=t.charAt(0)==="/"?t:YL(e.replace(/\/+$/,"")+"/"+t);return o?(o.path=c,IS(o)):c}sl.join=kj;sl.isAbsolute=function(e){return e.charAt(0)==="/"||Pj.test(e)};function IQ(e,t){e===""&&(e="."),e=e.replace(/\/$/,"");for(var i=0;t.indexOf(e+"/")!==0;){var o=e.lastIndexOf("/");if(o<0||(e=e.slice(0,o),e.match(/^([^\/]+:\/)?\/*$/)))return t;++i}return Array(i+1).join("../")+t.substr(e.length+1)}sl.relative=IQ;var vj=function(){var e=Object.create(null);return!("__proto__"in e)}();function Fj(e){return e}function LQ(e){return Ij(e)?"$"+e:e}sl.toSetString=vj?Fj:LQ;function AQ(e){return Ij(e)?e.slice(1):e}sl.fromSetString=vj?Fj:AQ;function Ij(e){if(!e)return!1;var t=e.length;if(t<9||e.charCodeAt(t-1)!==95||e.charCodeAt(t-2)!==95||e.charCodeAt(t-3)!==111||e.charCodeAt(t-4)!==116||e.charCodeAt(t-5)!==111||e.charCodeAt(t-6)!==114||e.charCodeAt(t-7)!==112||e.charCodeAt(t-8)!==95||e.charCodeAt(t-9)!==95)return!1;for(var i=t-10;i>=0;i--)if(e.charCodeAt(i)!==36)return!1;return!0}function wQ(e,t,i){var o=LS(e.source,t.source);return o!==0||(o=e.originalLine-t.originalLine,o!==0)||(o=e.originalColumn-t.originalColumn,o!==0||i)||(o=e.generatedColumn-t.generatedColumn,o!==0)||(o=e.generatedLine-t.generatedLine,o!==0)?o:LS(e.name,t.name)}sl.compareByOriginalPositions=wQ;function OQ(e,t,i){var o=e.generatedLine-t.generatedLine;return o!==0||(o=e.generatedColumn-t.generatedColumn,o!==0||i)||(o=LS(e.source,t.source),o!==0)||(o=e.originalLine-t.originalLine,o!==0)||(o=e.originalColumn-t.originalColumn,o!==0)?o:LS(e.name,t.name)}sl.compareByGeneratedPositionsDeflated=OQ;function LS(e,t){return e===t?0:e===null?1:t===null?-1:e>t?1:-1}function RQ(e,t){var i=e.generatedLine-t.generatedLine;return i!==0||(i=e.generatedColumn-t.generatedColumn,i!==0)||(i=LS(e.source,t.source),i!==0)||(i=e.originalLine-t.originalLine,i!==0)||(i=e.originalColumn-t.originalColumn,i!==0)?i:LS(e.name,t.name)}sl.compareByGeneratedPositionsInflated=RQ;function MQ(e){return JSON.parse(e.replace(/^\)]}'[^\n]*\n/,""))}sl.parseSourceMapInput=MQ;function BQ(e,t,i){if(t=t||"",e&&(e[e.length-1]!=="/"&&t[0]!=="/"&&(e+="/"),t=e+t),i){var o=Rb(i);if(!o)throw new Error("sourceMapURL could not be parsed");if(o.path){var c=o.path.lastIndexOf("/");c>=0&&(o.path=o.path.substring(0,c+1))}t=kj(IS(o),t)}return YL(t)}sl.computeSourceURL=BQ});var eA=Iu(Lj=>{var XL=AS(),ZL=Object.prototype.hasOwnProperty,_T=typeof Map<"u";function Tm(){this._array=[],this._set=_T?new Map:Object.create(null)}Tm.fromArray=function(t,i){for(var o=new Tm,c=0,u=t.length;c<u;c++)o.add(t[c],i);return o};Tm.prototype.size=function(){return _T?this._set.size:Object.getOwnPropertyNames(this._set).length};Tm.prototype.add=function(t,i){var o=_T?t:XL.toSetString(t),c=_T?this.has(t):ZL.call(this._set,o),u=this._array.length;(!c||i)&&this._array.push(t),c||(_T?this._set.set(t,u):this._set[o]=u)};Tm.prototype.has=function(t){if(_T)return this._set.has(t);var i=XL.toSetString(t);return ZL.call(this._set,i)};Tm.prototype.indexOf=function(t){if(_T){var i=this._set.get(t);if(i>=0)return i}else{var o=XL.toSetString(t);if(ZL.call(this._set,o))return this._set[o]}throw new Error('"'+t+'" is not in the set.')};Tm.prototype.at=function(t){if(t>=0&&t<this._array.length)return this._array[t];throw new Error("No element indexed by "+t)};Tm.prototype.toArray=function(){return this._array.slice()};Lj.ArraySet=Tm});var Oj=Iu(wj=>{var Aj=AS();function jQ(e,t){var i=e.generatedLine,o=t.generatedLine,c=e.generatedColumn,u=t.generatedColumn;return o>i||o==i&&u>=c||Aj.compareByGeneratedPositionsInflated(e,t)<=0}function QD(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}QD.prototype.unsortedForEach=function(t,i){this._array.forEach(t,i)};QD.prototype.add=function(t){jQ(this._last,t)?(this._last=t,this._array.push(t)):(this._sorted=!1,this._array.push(t))};QD.prototype.toArray=function(){return this._sorted||(this._array.sort(Aj.compareByGeneratedPositionsInflated),this._sorted=!0),this._array};wj.MappingList=QD});var nA=Iu(Rj=>{var Mb=QL(),Js=AS(),YD=eA().ArraySet,JQ=Oj().MappingList;function Dd(e){e||(e={}),this._file=Js.getArg(e,"file",null),this._sourceRoot=Js.getArg(e,"sourceRoot",null),this._skipValidation=Js.getArg(e,"skipValidation",!1),this._sources=new YD,this._names=new YD,this._mappings=new JQ,this._sourcesContents=null}Dd.prototype._version=3;Dd.fromSourceMap=function(t){var i=t.sourceRoot,o=new Dd({file:t.file,sourceRoot:i});return t.eachMapping(function(c){var u={generated:{line:c.generatedLine,column:c.generatedColumn}};c.source!=null&&(u.source=c.source,i!=null&&(u.source=Js.relative(i,u.source)),u.original={line:c.originalLine,column:c.originalColumn},c.name!=null&&(u.name=c.name)),o.addMapping(u)}),t.sources.forEach(function(c){var u=c;i!==null&&(u=Js.relative(i,c)),o._sources.has(u)||o._sources.add(u);var p=t.sourceContentFor(c);p!=null&&o.setSourceContent(c,p)}),o};Dd.prototype.addMapping=function(t){var i=Js.getArg(t,"generated"),o=Js.getArg(t,"original",null),c=Js.getArg(t,"source",null),u=Js.getArg(t,"name",null);this._skipValidation||this._validateMapping(i,o,c,u),c!=null&&(c=String(c),this._sources.has(c)||this._sources.add(c)),u!=null&&(u=String(u),this._names.has(u)||this._names.add(u)),this._mappings.add({generatedLine:i.line,generatedColumn:i.column,originalLine:o!=null&&o.line,originalColumn:o!=null&&o.column,source:c,name:u})};Dd.prototype.setSourceContent=function(t,i){var o=t;this._sourceRoot!=null&&(o=Js.relative(this._sourceRoot,o)),i!=null?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[Js.toSetString(o)]=i):this._sourcesContents&&(delete this._sourcesContents[Js.toSetString(o)],Object.keys(this._sourcesContents).length===0&&(this._sourcesContents=null))};Dd.prototype.applySourceMap=function(t,i,o){var c=i;if(i==null){if(t.file==null)throw new Error(`SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map's "file" property. Both were omitted.`);c=t.file}var u=this._sourceRoot;u!=null&&(c=Js.relative(u,c));var p=new YD,m=new YD;this._mappings.unsortedForEach(function(g){if(g.source===c&&g.originalLine!=null){var S=t.originalPositionFor({line:g.originalLine,column:g.originalColumn});S.source!=null&&(g.source=S.source,o!=null&&(g.source=Js.join(o,g.source)),u!=null&&(g.source=Js.relative(u,g.source)),g.originalLine=S.line,g.originalColumn=S.column,S.name!=null&&(g.name=S.name))}var T=g.source;T!=null&&!p.has(T)&&p.add(T);var _=g.name;_!=null&&!m.has(_)&&m.add(_)},this),this._sources=p,this._names=m,t.sources.forEach(function(g){var S=t.sourceContentFor(g);S!=null&&(o!=null&&(g=Js.join(o,g)),u!=null&&(g=Js.relative(u,g)),this.setSourceContent(g,S))},this)};Dd.prototype._validateMapping=function(t,i,o,c){if(i&&typeof i.line!="number"&&typeof i.column!="number")throw new Error("original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.");if(!(t&&"line"in t&&"column"in t&&t.line>0&&t.column>=0&&!i&&!o&&!c)){if(t&&"line"in t&&"column"in t&&i&&"line"in i&&"column"in i&&t.line>0&&t.column>=0&&i.line>0&&i.column>=0&&o)return;throw new Error("Invalid mapping: "+JSON.stringify({generated:t,source:o,original:i,name:c}))}};Dd.prototype._serializeMappings=function(){for(var t=0,i=1,o=0,c=0,u=0,p=0,m="",g,S,T,_,P=this._mappings.toArray(),v=0,B=P.length;v<B;v++){if(S=P[v],g="",S.generatedLine!==i)for(t=0;S.generatedLine!==i;)g+=";",i++;else if(v>0){if(!Js.compareByGeneratedPositionsInflated(S,P[v-1]))continue;g+=","}g+=Mb.encode(S.generatedColumn-t),t=S.generatedColumn,S.source!=null&&(_=this._sources.indexOf(S.source),g+=Mb.encode(_-p),p=_,g+=Mb.encode(S.originalLine-1-c),c=S.originalLine-1,g+=Mb.encode(S.originalColumn-o),o=S.originalColumn,S.name!=null&&(T=this._names.indexOf(S.name),g+=Mb.encode(T-u),u=T)),m+=g}return m};Dd.prototype._generateSourcesContent=function(t,i){return t.map(function(o){if(!this._sourcesContents)return null;i!=null&&(o=Js.relative(i,o));var c=Js.toSetString(o);return Object.prototype.hasOwnProperty.call(this._sourcesContents,c)?this._sourcesContents[c]:null},this)};Dd.prototype.toJSON=function(){var t={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return this._file!=null&&(t.file=this._file),this._sourceRoot!=null&&(t.sourceRoot=this._sourceRoot),this._sourcesContents&&(t.sourcesContent=this._generateSourcesContent(t.sources,t.sourceRoot)),t};Dd.prototype.toString=function(){return JSON.stringify(this.toJSON())};Rj.SourceMapGenerator=Dd});var Mj=Iu(xT=>{xT.GREATEST_LOWER_BOUND=1;xT.LEAST_UPPER_BOUND=2;function tA(e,t,i,o,c,u){var p=Math.floor((t-e)/2)+e,m=c(i,o[p],!0);return m===0?p:m>0?t-p>1?tA(p,t,i,o,c,u):u==xT.LEAST_UPPER_BOUND?t<o.length?t:-1:p:p-e>1?tA(e,p,i,o,c,u):u==xT.LEAST_UPPER_BOUND?p:e<0?-1:e}xT.search=function(t,i,o,c){if(i.length===0)return-1;var u=tA(-1,i.length,t,i,o,c||xT.GREATEST_LOWER_BOUND);if(u<0)return-1;for(;u-1>=0&&o(i[u],i[u-1],!0)===0;)--u;return u}});var jj=Iu(Bj=>{function rA(e,t,i){var o=e[t];e[t]=e[i],e[i]=o}function UQ(e,t){return Math.round(e+Math.random()*(t-e))}function iA(e,t,i,o){if(i<o){var c=UQ(i,o),u=i-1;rA(e,c,o);for(var p=e[o],m=i;m<o;m++)t(e[m],p)<=0&&(u+=1,rA(e,u,m));rA(e,u+1,m);var g=u+1;iA(e,t,i,g-1),iA(e,t,g+1,o)}}Bj.quickSort=function(e,t){iA(e,t,0,e.length-1)}});var Uj=Iu(XD=>{var br=AS(),oA=Mj(),wS=eA().ArraySet,WQ=QL(),Bb=jj().quickSort;function Aa(e,t){var i=e;return typeof e=="string"&&(i=br.parseSourceMapInput(e)),i.sections!=null?new cp(i,t):new Mc(i,t)}Aa.fromSourceMap=function(e,t){return Mc.fromSourceMap(e,t)};Aa.prototype._version=3;Aa.prototype.__generatedMappings=null;Object.defineProperty(Aa.prototype,"_generatedMappings",{configurable:!0,enumerable:!0,get:function(){return this.__generatedMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__generatedMappings}});Aa.prototype.__originalMappings=null;Object.defineProperty(Aa.prototype,"_originalMappings",{configurable:!0,enumerable:!0,get:function(){return this.__originalMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__originalMappings}});Aa.prototype._charIsMappingSeparator=function(t,i){var o=t.charAt(i);return o===";"||o===","};Aa.prototype._parseMappings=function(t,i){throw new Error("Subclasses must implement _parseMappings")};Aa.GENERATED_ORDER=1;Aa.ORIGINAL_ORDER=2;Aa.GREATEST_LOWER_BOUND=1;Aa.LEAST_UPPER_BOUND=2;Aa.prototype.eachMapping=function(t,i,o){var c=i||null,u=o||Aa.GENERATED_ORDER,p;switch(u){case Aa.GENERATED_ORDER:p=this._generatedMappings;break;case Aa.ORIGINAL_ORDER:p=this._originalMappings;break;default:throw new Error("Unknown order of iteration.")}var m=this.sourceRoot;p.map(function(g){var S=g.source===null?null:this._sources.at(g.source);return S=br.computeSourceURL(m,S,this._sourceMapURL),{source:S,generatedLine:g.generatedLine,generatedColumn:g.generatedColumn,originalLine:g.originalLine,originalColumn:g.originalColumn,name:g.name===null?null:this._names.at(g.name)}},this).forEach(t,c)};Aa.prototype.allGeneratedPositionsFor=function(t){var i=br.getArg(t,"line"),o={source:br.getArg(t,"source"),originalLine:i,originalColumn:br.getArg(t,"column",0)};if(o.source=this._findSourceIndex(o.source),o.source<0)return[];var c=[],u=this._findMapping(o,this._originalMappings,"originalLine","originalColumn",br.compareByOriginalPositions,oA.LEAST_UPPER_BOUND);if(u>=0){var p=this._originalMappings[u];if(t.column===void 0)for(var m=p.originalLine;p&&p.originalLine===m;)c.push({line:br.getArg(p,"generatedLine",null),column:br.getArg(p,"generatedColumn",null),lastColumn:br.getArg(p,"lastGeneratedColumn",null)}),p=this._originalMappings[++u];else for(var g=p.originalColumn;p&&p.originalLine===i&&p.originalColumn==g;)c.push({line:br.getArg(p,"generatedLine",null),column:br.getArg(p,"generatedColumn",null),lastColumn:br.getArg(p,"lastGeneratedColumn",null)}),p=this._originalMappings[++u]}return c};XD.SourceMapConsumer=Aa;function Mc(e,t){var i=e;typeof e=="string"&&(i=br.parseSourceMapInput(e));var o=br.getArg(i,"version"),c=br.getArg(i,"sources"),u=br.getArg(i,"names",[]),p=br.getArg(i,"sourceRoot",null),m=br.getArg(i,"sourcesContent",null),g=br.getArg(i,"mappings"),S=br.getArg(i,"file",null);if(o!=this._version)throw new Error("Unsupported version: "+o);p&&(p=br.normalize(p)),c=c.map(String).map(br.normalize).map(function(T){return p&&br.isAbsolute(p)&&br.isAbsolute(T)?br.relative(p,T):T}),this._names=wS.fromArray(u.map(String),!0),this._sources=wS.fromArray(c,!0),this._absoluteSources=this._sources.toArray().map(function(T){return br.computeSourceURL(p,T,t)}),this.sourceRoot=p,this.sourcesContent=m,this._mappings=g,this._sourceMapURL=t,this.file=S}Mc.prototype=Object.create(Aa.prototype);Mc.prototype.consumer=Aa;Mc.prototype._findSourceIndex=function(e){var t=e;if(this.sourceRoot!=null&&(t=br.relative(this.sourceRoot,t)),this._sources.has(t))return this._sources.indexOf(t);var i;for(i=0;i<this._absoluteSources.length;++i)if(this._absoluteSources[i]==e)return i;return-1};Mc.fromSourceMap=function(t,i){var o=Object.create(Mc.prototype),c=o._names=wS.fromArray(t._names.toArray(),!0),u=o._sources=wS.fromArray(t._sources.toArray(),!0);o.sourceRoot=t._sourceRoot,o.sourcesContent=t._generateSourcesContent(o._sources.toArray(),o.sourceRoot),o.file=t._file,o._sourceMapURL=i,o._absoluteSources=o._sources.toArray().map(function(v){return br.computeSourceURL(o.sourceRoot,v,i)});for(var p=t._mappings.toArray().slice(),m=o.__generatedMappings=[],g=o.__originalMappings=[],S=0,T=p.length;S<T;S++){var _=p[S],P=new Jj;P.generatedLine=_.generatedLine,P.generatedColumn=_.generatedColumn,_.source&&(P.source=u.indexOf(_.source),P.originalLine=_.originalLine,P.originalColumn=_.originalColumn,_.name&&(P.name=c.indexOf(_.name)),g.push(P)),m.push(P)}return Bb(o.__originalMappings,br.compareByOriginalPositions),o};Mc.prototype._version=3;Object.defineProperty(Mc.prototype,"sources",{get:function(){return this._absoluteSources.slice()}});function Jj(){this.generatedLine=0,this.generatedColumn=0,this.source=null,this.originalLine=null,this.originalColumn=null,this.name=null}Mc.prototype._parseMappings=function(t,i){for(var o=1,c=0,u=0,p=0,m=0,g=0,S=t.length,T=0,_={},P={},v=[],B=[],y,$,j,ce,me;T<S;)if(t.charAt(T)===";")o++,T++,c=0;else if(t.charAt(T)===",")T++;else{for(y=new Jj,y.generatedLine=o,ce=T;ce<S&&!this._charIsMappingSeparator(t,ce);ce++);if($=t.slice(T,ce),j=_[$],j)T+=$.length;else{for(j=[];T<ce;)WQ.decode(t,T,P),me=P.value,T=P.rest,j.push(me);if(j.length===2)throw new Error("Found a source, but no line and column");if(j.length===3)throw new Error("Found a source and line, but no column");_[$]=j}y.generatedColumn=c+j[0],c=y.generatedColumn,j.length>1&&(y.source=m+j[1],m+=j[1],y.originalLine=u+j[2],u=y.originalLine,y.originalLine+=1,y.originalColumn=p+j[3],p=y.originalColumn,j.length>4&&(y.name=g+j[4],g+=j[4])),B.push(y),typeof y.originalLine=="number"&&v.push(y)}Bb(B,br.compareByGeneratedPositionsDeflated),this.__generatedMappings=B,Bb(v,br.compareByOriginalPositions),this.__originalMappings=v};Mc.prototype._findMapping=function(t,i,o,c,u,p){if(t[o]<=0)throw new TypeError("Line must be greater than or equal to 1, got "+t[o]);if(t[c]<0)throw new TypeError("Column must be greater than or equal to 0, got "+t[c]);return oA.search(t,i,u,p)};Mc.prototype.computeColumnSpans=function(){for(var t=0;t<this._generatedMappings.length;++t){var i=this._generatedMappings[t];if(t+1<this._generatedMappings.length){var o=this._generatedMappings[t+1];if(i.generatedLine===o.generatedLine){i.lastGeneratedColumn=o.generatedColumn-1;continue}}i.lastGeneratedColumn=1/0}};Mc.prototype.originalPositionFor=function(t){var i={generatedLine:br.getArg(t,"line"),generatedColumn:br.getArg(t,"column")},o=this._findMapping(i,this._generatedMappings,"generatedLine","generatedColumn",br.compareByGeneratedPositionsDeflated,br.getArg(t,"bias",Aa.GREATEST_LOWER_BOUND));if(o>=0){var c=this._generatedMappings[o];if(c.generatedLine===i.generatedLine){var u=br.getArg(c,"source",null);u!==null&&(u=this._sources.at(u),u=br.computeSourceURL(this.sourceRoot,u,this._sourceMapURL));var p=br.getArg(c,"name",null);return p!==null&&(p=this._names.at(p)),{source:u,line:br.getArg(c,"originalLine",null),column:br.getArg(c,"originalColumn",null),name:p}}}return{source:null,line:null,column:null,name:null}};Mc.prototype.hasContentsOfAllSources=function(){return this.sourcesContent?this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(t){return t==null}):!1};Mc.prototype.sourceContentFor=function(t,i){if(!this.sourcesContent)return null;var o=this._findSourceIndex(t);if(o>=0)return this.sourcesContent[o];var c=t;this.sourceRoot!=null&&(c=br.relative(this.sourceRoot,c));var u;if(this.sourceRoot!=null&&(u=br.urlParse(this.sourceRoot))){var p=c.replace(/^file:\/\//,"");if(u.scheme=="file"&&this._sources.has(p))return this.sourcesContent[this._sources.indexOf(p)];if((!u.path||u.path=="/")&&this._sources.has("/"+c))return this.sourcesContent[this._sources.indexOf("/"+c)]}if(i)return null;throw new Error('"'+c+'" is not in the SourceMap.')};Mc.prototype.generatedPositionFor=function(t){var i=br.getArg(t,"source");if(i=this._findSourceIndex(i),i<0)return{line:null,column:null,lastColumn:null};var o={source:i,originalLine:br.getArg(t,"line"),originalColumn:br.getArg(t,"column")},c=this._findMapping(o,this._originalMappings,"originalLine","originalColumn",br.compareByOriginalPositions,br.getArg(t,"bias",Aa.GREATEST_LOWER_BOUND));if(c>=0){var u=this._originalMappings[c];if(u.source===o.source)return{line:br.getArg(u,"generatedLine",null),column:br.getArg(u,"generatedColumn",null),lastColumn:br.getArg(u,"lastGeneratedColumn",null)}}return{line:null,column:null,lastColumn:null}};XD.BasicSourceMapConsumer=Mc;function cp(e,t){var i=e;typeof e=="string"&&(i=br.parseSourceMapInput(e));var o=br.getArg(i,"version"),c=br.getArg(i,"sections");if(o!=this._version)throw new Error("Unsupported version: "+o);this._sources=new wS,this._names=new wS;var u={line:-1,column:0};this._sections=c.map(function(p){if(p.url)throw new Error("Support for url field in sections not implemented.");var m=br.getArg(p,"offset"),g=br.getArg(m,"line"),S=br.getArg(m,"column");if(g<u.line||g===u.line&&S<u.column)throw new Error("Section offsets must be ordered and non-overlapping.");return u=m,{generatedOffset:{generatedLine:g+1,generatedColumn:S+1},consumer:new Aa(br.getArg(p,"map"),t)}})}cp.prototype=Object.create(Aa.prototype);cp.prototype.constructor=Aa;cp.prototype._version=3;Object.defineProperty(cp.prototype,"sources",{get:function(){for(var e=[],t=0;t<this._sections.length;t++)for(var i=0;i<this._sections[t].consumer.sources.length;i++)e.push(this._sections[t].consumer.sources[i]);return e}});cp.prototype.originalPositionFor=function(t){var i={generatedLine:br.getArg(t,"line"),generatedColumn:br.getArg(t,"column")},o=oA.search(i,this._sections,function(u,p){var m=u.generatedLine-p.generatedOffset.generatedLine;return m||u.generatedColumn-p.generatedOffset.generatedColumn}),c=this._sections[o];return c?c.consumer.originalPositionFor({line:i.generatedLine-(c.generatedOffset.generatedLine-1),column:i.generatedColumn-(c.generatedOffset.generatedLine===i.generatedLine?c.generatedOffset.generatedColumn-1:0),bias:t.bias}):{source:null,line:null,column:null,name:null}};cp.prototype.hasContentsOfAllSources=function(){return this._sections.every(function(t){return t.consumer.hasContentsOfAllSources()})};cp.prototype.sourceContentFor=function(t,i){for(var o=0;o<this._sections.length;o++){var c=this._sections[o],u=c.consumer.sourceContentFor(t,!0);if(u)return u}if(i)return null;throw new Error('"'+t+'" is not in the SourceMap.')};cp.prototype.generatedPositionFor=function(t){for(var i=0;i<this._sections.length;i++){var o=this._sections[i];if(o.consumer._findSourceIndex(br.getArg(t,"source"))!==-1){var c=o.consumer.generatedPositionFor(t);if(c){var u={line:c.line+(o.generatedOffset.generatedLine-1),column:c.column+(o.generatedOffset.generatedLine===c.line?o.generatedOffset.generatedColumn-1:0)};return u}}}return{line:null,column:null}};cp.prototype._parseMappings=function(t,i){this.__generatedMappings=[],this.__originalMappings=[];for(var o=0;o<this._sections.length;o++)for(var c=this._sections[o],u=c.consumer._generatedMappings,p=0;p<u.length;p++){var m=u[p],g=c.consumer._sources.at(m.source);g=br.computeSourceURL(c.consumer.sourceRoot,g,this._sourceMapURL),this._sources.add(g),g=this._sources.indexOf(g);var S=null;m.name&&(S=c.consumer._names.at(m.name),this._names.add(S),S=this._names.indexOf(S));var T={source:g,generatedLine:m.generatedLine+(c.generatedOffset.generatedLine-1),generatedColumn:m.generatedColumn+(c.generatedOffset.generatedLine===m.generatedLine?c.generatedOffset.generatedColumn-1:0),originalLine:m.originalLine,originalColumn:m.originalColumn,name:S};this.__generatedMappings.push(T),typeof T.originalLine=="number"&&this.__originalMappings.push(T)}Bb(this.__generatedMappings,br.compareByGeneratedPositionsDeflated),Bb(this.__originalMappings,br.compareByOriginalPositions)};XD.IndexedSourceMapConsumer=cp});var Kj=Iu(Wj=>{var KQ=nA().SourceMapGenerator,ZD=AS(),VQ=/(\r?\n)/,zQ=10,OS="$$$isSourceNode$$$";function Gu(e,t,i,o,c){this.children=[],this.sourceContents={},this.line=e??null,this.column=t??null,this.source=i??null,this.name=c??null,this[OS]=!0,o!=null&&this.add(o)}Gu.fromStringWithSourceMap=function(t,i,o){var c=new Gu,u=t.split(VQ),p=0,m=function(){var P=B(),v=B()||"";return P+v;function B(){return p<u.length?u[p++]:void 0}},g=1,S=0,T=null;return i.eachMapping(function(P){if(T!==null)if(g<P.generatedLine)_(T,m()),g++,S=0;else{var v=u[p]||"",B=v.substr(0,P.generatedColumn-S);u[p]=v.substr(P.generatedColumn-S),S=P.generatedColumn,_(T,B),T=P;return}for(;g<P.generatedLine;)c.add(m()),g++;if(S<P.generatedColumn){var v=u[p]||"";c.add(v.substr(0,P.generatedColumn)),u[p]=v.substr(P.generatedColumn),S=P.generatedColumn}T=P},this),p<u.length&&(T&&_(T,m()),c.add(u.splice(p).join(""))),i.sources.forEach(function(P){var v=i.sourceContentFor(P);v!=null&&(o!=null&&(P=ZD.join(o,P)),c.setSourceContent(P,v))}),c;function _(P,v){if(P===null||P.source===void 0)c.add(v);else{var B=o?ZD.join(o,P.source):P.source;c.add(new Gu(P.originalLine,P.originalColumn,B,v,P.name))}}};Gu.prototype.add=function(t){if(Array.isArray(t))t.forEach(function(i){this.add(i)},this);else if(t[OS]||typeof t=="string")t&&this.children.push(t);else throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+t);return this};Gu.prototype.prepend=function(t){if(Array.isArray(t))for(var i=t.length-1;i>=0;i--)this.prepend(t[i]);else if(t[OS]||typeof t=="string")this.children.unshift(t);else throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+t);return this};Gu.prototype.walk=function(t){for(var i,o=0,c=this.children.length;o<c;o++)i=this.children[o],i[OS]?i.walk(t):i!==""&&t(i,{source:this.source,line:this.line,column:this.column,name:this.name})};Gu.prototype.join=function(t){var i,o,c=this.children.length;if(c>0){for(i=[],o=0;o<c-1;o++)i.push(this.children[o]),i.push(t);i.push(this.children[o]),this.children=i}return this};Gu.prototype.replaceRight=function(t,i){var o=this.children[this.children.length-1];return o[OS]?o.replaceRight(t,i):typeof o=="string"?this.children[this.children.length-1]=o.replace(t,i):this.children.push("".replace(t,i)),this};Gu.prototype.setSourceContent=function(t,i){this.sourceContents[ZD.toSetString(t)]=i};Gu.prototype.walkSourceContents=function(t){for(var i=0,o=this.children.length;i<o;i++)this.children[i][OS]&&this.children[i].walkSourceContents(t);for(var c=Object.keys(this.sourceContents),i=0,o=c.length;i<o;i++)t(ZD.fromSetString(c[i]),this.sourceContents[c[i]])};Gu.prototype.toString=function(){var t="";return this.walk(function(i){t+=i}),t};Gu.prototype.toStringWithSourceMap=function(t){var i={code:"",line:1,column:0},o=new KQ(t),c=!1,u=null,p=null,m=null,g=null;return this.walk(function(S,T){i.code+=S,T.source!==null&&T.line!==null&&T.column!==null?((u!==T.source||p!==T.line||m!==T.column||g!==T.name)&&o.addMapping({source:T.source,original:{line:T.line,column:T.column},generated:{line:i.line,column:i.column},name:T.name}),u=T.source,p=T.line,m=T.column,g=T.name,c=!0):c&&(o.addMapping({generated:{line:i.line,column:i.column}}),u=null,c=!1);for(var _=0,P=S.length;_<P;_++)S.charCodeAt(_)===zQ?(i.line++,i.column=0,_+1===P?(u=null,c=!1):c&&o.addMapping({source:T.source,original:{line:T.line,column:T.column},generated:{line:i.line,column:i.column},name:T.name})):i.column++}),this.walkSourceContents(function(S,T){o.setSourceContent(S,T)}),{code:i.code,map:o}};Wj.SourceNode=Gu});var Vj=Iu(eP=>{eP.SourceMapGenerator=nA().SourceMapGenerator;eP.SourceMapConsumer=Uj().SourceMapConsumer;eP.SourceNode=Kj().SourceNode});var Hj=Iu((bFe,zj)=>{var HQ=Object.prototype.toString,aA=typeof Buffer<"u"&&typeof Buffer.alloc=="function"&&typeof Buffer.allocUnsafe=="function"&&typeof Buffer.from=="function";function qQ(e){return HQ.call(e).slice(8,-1)==="ArrayBuffer"}function GQ(e,t,i){t>>>=0;var o=e.byteLength-t;if(o<0)throw new RangeError("'offset' is out of bounds");if(i===void 0)i=o;else if(i>>>=0,i>o)throw new RangeError("'length' is out of bounds");return aA?Buffer.from(e.slice(t,t+i)):new Buffer(new Uint8Array(e.slice(t,t+i)))}function $Q(e,t){if((typeof t!="string"||t==="")&&(t="utf8"),!Buffer.isEncoding(t))throw new TypeError('"encoding" must be a valid string encoding');return aA?Buffer.from(e,t):new Buffer(e,t)}function QQ(e,t,i){if(typeof e=="number")throw new TypeError('"value" argument must not be a number');return qQ(e)?GQ(e,t,i):typeof e=="string"?$Q(e,t):aA?Buffer.from(e):new Buffer(e)}zj.exports=QQ});var Zj=Iu(CT=>{var YQ=Vj().SourceMapConsumer,sA=require("path"),uf;try{uf=require("fs"),(!uf.existsSync||!uf.readFileSync)&&(uf=null)}catch{}var XQ=Hj(),qj=!1,Gj=!1,cA=!1,jb="auto",bT={},Jb={},ZQ=/^data:application\/json[^,]+base64,/,Wg=[],Kg=[];function uA(){return jb==="browser"?!0:jb==="node"?!1:typeof window<"u"&&typeof XMLHttpRequest=="function"&&!(window.require&&window.module&&window.process&&window.process.type==="renderer")}function eY(){return typeof process=="object"&&process!==null&&typeof process.on=="function"}function nP(e){return function(t){for(var i=0;i<e.length;i++){var o=e[i](t);if(o)return o}return null}}var dA=nP(Wg);Wg.push(function(e){if(e=e.trim(),/^file:/.test(e)&&(e=e.replace(/file:\/\/\/(\w:)?/,function(o,c){return c?"":"/"})),e in bT)return bT[e];var t="";try{if(uf)uf.existsSync(e)&&(t=uf.readFileSync(e,"utf8"));else{var i=new XMLHttpRequest;i.open("GET",e,!1),i.send(null),i.readyState===4&&i.status===200&&(t=i.responseText)}}catch{}return bT[e]=t});function lA(e,t){if(!e)return t;var i=sA.dirname(e),o=/^\w+:\/\/[^\/]*/.exec(i),c=o?o[0]:"",u=i.slice(c.length);return c&&/^\/\w\:/.test(u)?(c+="/",c+sA.resolve(i.slice(c.length),t).replace(/\\/g,"/")):c+sA.resolve(i.slice(c.length),t)}function nY(e){var t;if(uA())try{var i=new XMLHttpRequest;i.open("GET",e,!1),i.send(null),t=i.readyState===4?i.responseText:null;var o=i.getResponseHeader("SourceMap")||i.getResponseHeader("X-SourceMap");if(o)return o}catch{}t=dA(e);for(var c=/(?:\/\/[@#][\s]*sourceMappingURL=([^\s'"]+)[\s]*$)|(?:\/\*[@#][\s]*sourceMappingURL=([^\s*'"]+)[\s]*(?:\*\/)[\s]*$)/mg,u,p;p=c.exec(t);)u=p;return u?u[1]:null}var pA=nP(Kg);Kg.push(function(e){var t=nY(e);if(!t)return null;var i;if(ZQ.test(t)){var o=t.slice(t.indexOf(",")+1);i=XQ(o,"base64").toString(),t=e}else t=lA(e,t),i=dA(t);return i?{url:t,map:i}:null});function fA(e){var t=Jb[e.source];if(!t){var i=pA(e.source);i?(t=Jb[e.source]={url:i.url,map:new YQ(i.map)},t.map.sourcesContent&&t.map.sources.forEach(function(c,u){var p=t.map.sourcesContent[u];if(p){var m=lA(t.url,c);bT[m]=p}})):t=Jb[e.source]={url:null,map:null}}if(t&&t.map&&typeof t.map.originalPositionFor=="function"){var o=t.map.originalPositionFor(e);if(o.source!==null)return o.source=lA(t.url,o.source),o}return e}function Qj(e){var t=/^eval at ([^(]+) \((.+):(\d+):(\d+)\)$/.exec(e);if(t){var i=fA({source:t[2],line:+t[3],column:t[4]-1});return"eval at "+t[1]+" ("+i.source+":"+i.line+":"+(i.column+1)+")"}return t=/^eval at ([^(]+) \((.+)\)$/.exec(e),t?"eval at "+t[1]+" ("+Qj(t[2])+")":e}function tY(){var e,t="";if(this.isNative())t="native";else{e=this.getScriptNameOrSourceURL(),!e&&this.isEval()&&(t=this.getEvalOrigin(),t+=", "),e?t+=e:t+="<anonymous>";var i=this.getLineNumber();if(i!=null){t+=":"+i;var o=this.getColumnNumber();o&&(t+=":"+o)}}var c="",u=this.getFunctionName(),p=!0,m=this.isConstructor(),g=!(this.isToplevel()||m);if(g){var S=this.getTypeName();S==="[object Object]"&&(S="null");var T=this.getMethodName();u?(S&&u.indexOf(S)!=0&&(c+=S+"."),c+=u,T&&u.indexOf("."+T)!=u.length-T.length-1&&(c+=" [as "+T+"]")):c+=S+"."+(T||"<anonymous>")}else m?c+="new "+(u||"<anonymous>"):u?c+=u:(c+=t,p=!1);return p&&(c+=" ("+t+")"),c}function $j(e){var t={};return Object.getOwnPropertyNames(Object.getPrototypeOf(e)).forEach(function(i){t[i]=/^(?:is|get)/.test(i)?function(){return e[i].call(e)}:e[i]}),t.toString=tY,t}function Yj(e){if(e.isNative())return e;var t=e.getFileName()||e.getScriptNameOrSourceURL();if(t){var i=e.getLineNumber(),o=e.getColumnNumber()-1,c=62;i===1&&o>c&&!uA()&&!e.isEval()&&(o-=c);var u=fA({source:t,line:i,column:o});e=$j(e);var p=e.getFunctionName;return e.getFunctionName=function(){return u.name||p()},e.getFileName=function(){return u.source},e.getLineNumber=function(){return u.line},e.getColumnNumber=function(){return u.column+1},e.getScriptNameOrSourceURL=function(){return u.source},e}var m=e.isEval()&&e.getEvalOrigin();return m&&(m=Qj(m),e=$j(e),e.getEvalOrigin=function(){return m}),e}function rY(e,t){cA&&(bT={},Jb={});var i=e.name||"Error",o=e.message||"",c=i+": "+o;return c+t.map(function(u){return`
4
+ at `+Yj(u)}).join("")}function Xj(e){var t=/\n at [^(]+ \((.*):(\d+):(\d+)\)/.exec(e.stack);if(t){var i=t[1],o=+t[2],c=+t[3],u=bT[i];if(!u&&uf&&uf.existsSync(i))try{u=uf.readFileSync(i,"utf8")}catch{u=""}if(u){var p=u.split(/(?:\r\n|\r|\n)/)[o-1];if(p)return i+":"+o+`
5
+ `+p+`
6
+ `+new Array(c).join(" ")+"^"}}return null}function iY(e){var t=Xj(e);process.stderr._handle&&process.stderr._handle.setBlocking&&process.stderr._handle.setBlocking(!0),t&&(console.error(),console.error(t)),console.error(e.stack),process.exit(1)}function oY(){var e=process.emit;process.emit=function(t){if(t==="uncaughtException"){var i=arguments[1]&&arguments[1].stack,o=this.listeners(t).length>0;if(i&&!o)return iY(arguments[1])}return e.apply(this,arguments)}}var aY=Wg.slice(0),sY=Kg.slice(0);CT.wrapCallSite=Yj;CT.getErrorSource=Xj;CT.mapSourcePosition=fA;CT.retrieveSourceMap=pA;CT.install=function(e){if(e=e||{},e.environment&&(jb=e.environment,["node","browser","auto"].indexOf(jb)===-1))throw new Error("environment "+jb+" was unknown. Available options are {auto, browser, node}");if(e.retrieveFile&&(e.overrideRetrieveFile&&(Wg.length=0),Wg.unshift(e.retrieveFile)),e.retrieveSourceMap&&(e.overrideRetrieveSourceMap&&(Kg.length=0),Kg.unshift(e.retrieveSourceMap)),e.hookRequire&&!uA()){var t;try{t=require("module")}catch{}var i=t.prototype._compile;i.__sourceMapSupport||(t.prototype._compile=function(c,u){return bT[u]=c,Jb[u]=void 0,i.call(this,c,u)},t.prototype._compile.__sourceMapSupport=!0)}if(cA||(cA="emptyCacheBetweenOperations"in e?e.emptyCacheBetweenOperations:!1),qj||(qj=!0,Error.prepareStackTrace=rY),!Gj){var o="handleUncaughtExceptions"in e?e.handleUncaughtExceptions:!0;o&&eY()&&(Gj=!0,oY())}};CT.resetRetrieveHandlers=function(){Wg.length=0,Kg.length=0,Wg=aY.slice(0),Kg=sY.slice(0),pA=nP(Kg),dA=nP(Wg)}});var rM="1.1.18",iM="LPC";function Dc(e){let t;return()=>(e&&(t=e(),e=void 0),t)}function eg(e){let t=new Map;return i=>{let o=`${typeof i}:${i}`,c=t.get(o);return c===void 0&&!t.has(o)&&(c=e(i),t.set(o,c)),c}}function Di(e){return e}function Po(e,t,i,o){if(t===void 0||t.length===0)return e;if(e===void 0)return t.slice(i,o);i=i===void 0?0:oM(t,i),o=o===void 0?t.length:oM(t,o);for(let c=i;c<o&&c<t.length;c++)t[c]!==void 0&&e.push(t[c]);return e}function oM(e,t){return t<0?e.length+t:t}var xe=[],_h=new Map;function rr(e){return e!==void 0?e.length:0}var Zm=Object.prototype.hasOwnProperty;function Fa(e,t){return Zm.call(e,t)}function lM(e,t){return e===t?0:e===void 0?-1:t===void 0?1:e<t?-1:1}function ro(e,t){return lM(e,t)}function aH(e,t,i){t.sort((o,c)=>i(e[o],e[c])||ro(o,c))}function fd(e,t){let i=cH(e);return aH(e,i,t),i.map(o=>e[o])}function sH(e,t){return t}function cH(e){return e.map(sH)}function ko(e){return e===void 0||e.length===0?void 0:e[e.length-1]}function Tn(e,t){if(e!==void 0)if(t!==void 0){for(let i=0;i<e.length;i++)if(t(e[i]))return!0}else return e.length>0;return!1}function uM(e,t,i){for(let o=0;o<e.length;o++)t=Math.max(t,i(e[o]));return t}function EF(e,t,i){let o=[];I.assertEqual(e.length,t.length);for(let c=0;c<e.length;c++)o.push(i(e[c],t[c],c));return o}function qn(e,t){let i;if(e!==void 0){i=[];for(let o=0;o<e.length;o++)i.push(t(e[o],o))}return i}function UE(){return typeof process<"u"&&!!process.nextTick&&!process.browser&&typeof require<"u"}function $i(e){}function Pc(e,t,i){let o=e.length-t.length;return o>=0&&(i?Ud(e.slice(o),t):e.indexOf(t,o)===o)}function Ud(e,t){return e===t||e!==void 0&&t!==void 0&&e.toUpperCase()===t.toUpperCase()}function xh(e){return e?NF:Lu}function Lu(e,t){return lM(e,t)}function NF(e,t){return e===t?0:e===void 0?-1:t===void 0?1:(e=e.toUpperCase(),t=t.toUpperCase(),e<t?-1:e>t?1:0)}function ng(e,t){return jf(e,t)}function jf(e,t){return e===t}function Za(e){return e?Di:tg}function lH(e){return e.toLowerCase()}var aM=/[^\u0130\u0131\u00DFa-z0-9\\/:\-_. ]+/g,sM=new Map;function tg(e){let t=sM.get(e);return t===void 0&&(t=aM.test(e)?e.replace(aM,lH):e,sM.set(e,t)),t}function To(e,t,i){return i?Ud(e.slice(0,t.length),t):e.lastIndexOf(t,0)===0}function Ln(e,t){if(e!==void 0)for(let i=0;i<e.length;i++){let o=t(e[i],i);if(o)return o}}function Yr(e,t,i=jf){if(e!==void 0){for(let o=0;o<e.length;o++)if(i(e[o],t))return!0}return!1}function Jf(e,t,i){return e!==void 0?(bl(e,t,i),e):[t]}function bl(e,t,i){return Yr(e,t,i)?!1:(e.push(t),!0)}function Yc(e,t,i,o,c){if(e&&e.length>0){let u=e.length;if(u>0){let p=o===void 0||o<0?0:o,m=c===void 0||p+c>u-1?u-1:p+c,g;for(arguments.length<=2?(g=e[p],p++):g=i;p<=m;)g=t(g,e[p],p),p++;return g}}return i}function Wd(e,t,i,o,c){return px(e,i(t),i,o,c)}function px(e,t,i,o,c){if(!Tn(e))return-1;let u=c??0,p=e.length-1;for(;u<=p;){let m=u+(p-u>>1),g=i(e[m],m);switch(o(g,t)){case-1:u=m+1;break;case 0:return m;case 1:p=m-1;break}}return~u}function Uf(e,t,i,o,c){if(e.length===0)return e.push(t),!0;let u=Wd(e,t,Di,i);if(u<0){if(o&&!c){let p=~u;if(p>0&&o(t,e[p-1]))return!1;if(p<e.length&&o(t,e[p]))return e.splice(p,1,t),!0}return e.splice(~u,0,t),!0}return c?(e.splice(u,0,t),!0):!1}function mi(e){return Array.isArray(e)}function vy(e,t){let i=[];if(e!==void 0)for(let o=0;o<e.length;o++){let c=t(e[o],o);c&&(mi(c)?Po(i,c):i.push(c))}return i}function Kr(e,t){return t===void 0||t.length===0?e:e===void 0||e.length===0?t:[...e,...t]}function bh(e){e.length=0}function fr(e,t,i){if(e!==void 0)for(let o=i??0;o<e.length;o++){let c=e[o];if(t(c,o))return c}}function rg(){}function ig(){return!1}function ho(e){return typeof e=="string"}function dM(e,t,i){if(e!==void 0)for(let o=i??e.length-1;o>=0;o--){let c=e[o];if(t(c,o))return c}}function _i(e,t){let i=[];if(e!==void 0)for(let o=0;o<e.length;o++){let c=t(e[o],o);c!==void 0&&i.push(c)}return i}function Yo(e,t){let i=[];for(let o of e)i.push(t?t(o):o);return i}function Wf(e,t,i){let o=Math.max(2,Math.floor(e.length*.34)),c=Math.floor(e.length*.4)+1,u;for(let p of t){let m=i(p);if(m!==void 0&&Math.abs(m.length-e.length)<=o){if(m===e||m.length<3&&m.toLowerCase()!==e.toLowerCase())continue;let g=uH(e,m,c-.1);if(g===void 0)continue;I.assert(g<c),c=g,u=p}}return u}function uH(e,t,i){let o=new Array(t.length+1),c=new Array(t.length+1),u=i+.01;for(let m=0;m<=t.length;m++)o[m]=m;for(let m=1;m<=e.length;m++){let g=e.charCodeAt(m-1),S=Math.ceil(m>i?m-i:1),T=Math.floor(t.length>i+m?i+m:t.length);c[0]=m;let _=m;for(let v=1;v<S;v++)c[v]=u;for(let v=S;v<=T;v++){let B=e[m-1].toLowerCase()===t[v-1].toLowerCase()?o[v-1]+.1:o[v-1]+2,y=g===t.charCodeAt(v-1)?o[v-1]:Math.min(o[v]+1,c[v-1]+1,B);c[v]=y,_=Math.min(_,y)}for(let v=T+1;v<=t.length;v++)c[v]=u;if(_>i)return;let P=o;o=c,c=P}let p=o[t.length];return p>i?void 0:p}function di(e,t){if(e!==void 0){for(let i=0;i<e.length;i++)if(!t(e[i],i))return!1}return!0}function Co(e,t){let i;if(e!==void 0)for(let o=0;o<e.length;o++){let c=t(e[o],o);c&&(mi(c)?i=Po(i,c):i=Fr(i,c))}return i??xe}function Fr(e,t){return t===void 0?e:e===void 0?[t]:(e.push(t),e)}function So(e,t){return e!==void 0&&t(e)?e:void 0}function Eo(e){return I.assert(e.length!==0),e[0]}function Ua(e,t){return e!==void 0&&t(e)?e:I.fail(`Invalid cast. The supplied value ${e} did not pass the test '${I.getFunctionName(t)}'.`)}function Ia(e,t){if(e!==void 0)for(let i=0;i<e.length;i++){let o=e[i],c=t(o,i);if(o!==c){let u=e.slice(0,i);for(u.push(c),i++;i<e.length;i++)u.push(t(e[i],i));return u}}return e}function Ta(e){return e===void 0||e.length===0?void 0:e[0]}function md(e,t,i=jf){if(e===void 0||t===void 0)return e===t;if(e.length!==t.length)return!1;for(let o=0;o<e.length;o++)if(!i(e[o],t[o],o))return!1;return!0}function $s(){let e=new Map;return e.add=dH,e.remove=pH,e}function dH(e,t){let i=this.get(e);return i!==void 0?i.push(t):this.set(e,i=[t]),i}function pH(e,t){let i=this.get(e);i!==void 0&&(fx(i,t),i.length||this.delete(e))}function fx(e,t){return fH(e,i=>i===t)}function fH(e,t){for(let i=0;i<e.length;i++)if(t(e[i]))return mH(e,i),!0;return!1}function mH(e,t){e[t]=e[e.length-1],e.pop()}function Fy(e){return e===void 0?void 0:[e]}function gd(e,t){return t?.bind(e)}function WE(e,t){for(let i=0;i<e.length;i++)if(e[i]===t)return Kf(e,i),!0;return!1}function Kf(e,t){for(let i=t;i<e.length-1;i++)e[i]=e[i+1];e.pop()}function pM(e,t,i,o,c,u){u??(u=$i);let p=0,m=0,g=e.length,S=t.length,T=!1;for(;p<g&&m<S;){let _=e[p],P=t[m],v=i(_,P);v===-1?(o(_),p++,T=!0):v===1?(c(P),m++,T=!0):(u(P,_),p++,m++)}for(;p<g;)o(e[p++]),T=!0;for(;m<S;)c(t[m++]),T=!0;return T}function KE(e){let t=[];for(let i in e)Zm.call(e,i)&&t.push(i);return t}function og(e,t){return Pc(e,t)?e.slice(0,e.length-t.length):e}function DF(e,t){return To(e,t)?e.substr(t.length):e}function mx(e,t,i){if(e.has(t))return e.get(t);let o=i();return e.set(t,o),o}function Rr(e,t){if(e!==void 0){let i=e.length,o=0;for(;o<i&&t(e[o]);)o++;if(o<i){let c=e.slice(0,o);for(o++;o<i;){let u=e[o];t(u)&&c.push(u),o++}return c}}return e}function VE(...e){return(...t)=>{let i;for(let o of e)if(i=o(...t),i)return i;return i}}function Ro(e){return I.assert(e.length!==0),e[e.length-1]}function es(e,t){if(e!==void 0)for(let i=0;i<e.length;i++){let o=t(e[i],i);if(o!==void 0)return o}}function Iy(e){return e!==void 0&&e.length===1?e[0]:void 0}function yd(e,t){let i=0;if(e!==void 0)for(let o=0;o<e.length;o++){let c=e[o];t(c,o)&&i++}return i}function Kd(){throw new Error("Not implemented")}function uc(e,t,i){if(e===void 0)return-1;for(let o=i??0;o<e.length;o++)if(t(e[o],o))return o;return-1}function PF(e,t,i,o){for(;i<o;){if(e[i]!==t[i])return!1;i++}return!0}function Au(e){let t=[];for(let i=0;i<e.length;i++){let o=e[i];o&&(mi(o)?Po(t,o):t.push(o))}return t}function fM(e,t,i){for(let o=i??0;o<e.length;o++)if(Yr(t,e.charCodeAt(o)))return o;return-1}function zE(e,t){return e.length===0?e:e.slice().sort(t)}function gx(e,t){return e.has(t)?!1:(e.add(t),!0)}function gH(e,t){if(e.length===0)return xe;let i=e[0],o=[i];for(let c=1;c<e.length;c++){let u=e[c];switch(t(u,i)){case!0:case 0:continue;case-1:return I.fail("Array is unsorted.")}o.push(i=u)}return o}function HE(e,t,i){return gH(zE(e,t),i||t||Lu)}function mM(e,t,i=jf){if(e===t)return!0;if(!e||!t)return!1;for(let o in e)if(Zm.call(e,o)&&(!Zm.call(t,o)||!i(e[o],t[o])))return!1;for(let o in t)if(Zm.call(t,o)&&!Zm.call(e,o))return!1;return!0}var yH=(()=>{return t;function e(i,o,c){if(i===o)return 0;if(i===void 0)return-1;if(o===void 0)return 1;let u=c(i,o);return u<0?-1:u>0?1:0}function t(i){let o=new Intl.Collator(i,{usage:"sort",sensitivity:"variant",numeric:!0}).compare;return(c,u)=>e(c,u,o)}})(),cM,gM;function yM(){return gM}function qE(e,t){return(cM||(cM=yH(gM)))(e,t)}function GE(e,t,i=jf){return e.length===t.length&&e.every((o,c)=>i(o,t[c]))}function $E(e,t){if(e.length<=1)return e;let i=[];for(let o=0,c=e.length;o<c;o++)o&&i.push(t),i.push(e[o]);return i}function yx(e,t,i){if(e===void 0)return-1;for(let o=i??e.length-1;o>=0;o--)if(t(e[o],o))return o;return-1}function TH(e,t,i=Di){let o=$s();for(let c of e)o.add(t(c),i(c));return o}function TM(e,t,i=Di){return Yo(TH(e,t).values(),i)}function kF(e,t){return ro(e?.start,t?.start)||ro(e?.length,t?.length)}function Ch(){return[]}function hM(e,t,i=Di){let o=new Map;for(let c of e){let u=t(c);u!==void 0&&o.set(u,i(c))}return o}function Tx(e,...t){for(let i of t)if(i!==void 0)for(let o in i)Fa(i,o)&&(e[o]=i[o]);return e}function vF(e){return mi(e)?e:[e]}function SM(e,t){let i={};for(let o in t)Zm.call(t,o)&&(i[o]=t[o]);for(let o in e)Zm.call(e,o)&&(i[o]=e[o]);return i}function _M(e){if(e)for(let t of e)return t}function xM(e,t){let i=new Array(e);for(let o=0;o<e;o++)i[o]=t(o);return i}function bM(e){let t=[];return CM(e,t,void 0,0),t}function CM(e,t,i,o){for(let c of e[o]){let u;i?(u=i.slice(),u.push(c)):u=[c],o===e.length-1?t.push(u):CM(e,t,u,o+1)}}function EM(e,t,i){let o=e.slice(0);return o[t]=i,o}function NM(e,t,i){let o;for(let c=0;c<e.length;c++)t(e[c])?o=o===void 0?c:o:o!==void 0&&(i(o,c),o=void 0);o!==void 0&&i(o,e.length)}function DM(e,t,i){let o=i;if(e){let c=0;for(let u of e)o=t(o,u,c),c++}return o}function hH(){if(UE())try{let{performance:e}=require("perf_hooks");return{shouldWriteNativeEvents:!1,performance:e}}catch{}if(typeof performance=="object")return{shouldWriteNativeEvents:!0,performance}}function SH(){let e=hH();if(!e)return;let{shouldWriteNativeEvents:t,performance:i}=e,o={shouldWriteNativeEvents:t,performance:void 0,performanceTime:void 0};return typeof i.timeOrigin=="number"&&typeof i.now=="function"&&(o.performanceTime=i),o.performanceTime&&typeof i.mark=="function"&&typeof i.measure=="function"&&typeof i.clearMarks=="function"&&typeof i.clearMeasures=="function"&&(o.performance=i),o}var kM=SH(),PM=kM?.performanceTime;function vM(){return kM}var uo=PM?()=>PM.now()??Date.now():Date.now;var QE;try{let e=process.env.TS_ETW_MODULE_PATH??"./node_modules/@microsoft/typescript-etw";QE=require(e)}catch{QE=void 0}var hx=QE?.logEvent?QE:void 0;var I;(Ti=>{let e=!1,t=0;Ti.currentLogLevel=2,Ti.isDebugging=!1;let u;function p(qe){e&&(typeof Object.setPrototypeOf=="function"?(u||(u=Object.create(Array.prototype),g(u)),Object.setPrototypeOf(qe,u)):g(qe))}Ti.attachNodeArrayDebugInfo=p;function m(qe){let Yn=qe&7,zn=Yn===0?"in out":Yn===3?"[bivariant]":Yn===2?"in":Yn===1?"out":Yn===4?"[independent]":"";return qe&8?zn+=" (unmeasurable)":qe&16&&(zn+=" (unreliable)"),zn}Ti.formatVariance=m;function g(qe){"__lpcDebuggerDisplay"in qe||Object.defineProperties(qe,{__lpcDebuggerDisplay:{value(Yn){return Yn=String(Yn).replace(/(?:,[\s\w\d_]+:[^,]+)+\]$/,"]"),`NodeArray ${Yn}`}}})}function S(qe){return B(qe,XE,!0)}Ti.formatNodeCheckFlags=S;function T(qe,Yn){debugger;let zn=new Error(qe?`Debug Failure. ${qe}`:"Debug Failure.");throw Error.captureStackTrace&&Error.captureStackTrace(zn,Yn||T),zn}Ti.fail=T;function _(qe,Yn,zn,jt){qe>=Yn&&T(`Expected ${qe} < ${Yn}. ${zn||""}`,jt||_)}Ti.assertLessThan=_;function P(qe,Yn,zn){qe==null&&T(Yn,zn||P)}Ti.assertIsDefined=P;function v(qe,Yn,zn){return T(`${Yn||"Unexpected node."}\r
7
+ Node ${ye(qe.kind)} was unexpected.`,zn||v)}Ti.failBadSyntaxKind=v;function B(qe=0,Yn,zn){let jt=$(Yn);if(qe===0)return jt.length>0&&jt[0][0]===0?jt[0][1]:"0";if(zn){let nr=[],Vr=qe;for(let[qi,fe]of jt){if(qi>qe)break;qi!==0&&qi&qe&&(nr.push(fe),Vr&=~qi)}if(Vr===0)return nr.join("|")}else for(let[nr,Vr]of jt)if(nr===qe)return Vr;return qe.toString()}Ti.formatEnum=B;let y=new Map;function $(qe){let Yn=y.get(qe);if(Yn)return Yn;let zn=[];for(let nr in qe){let Vr=qe[nr];typeof Vr=="number"&&zn.push([Vr,nr])}let jt=fd(zn,(nr,Vr)=>ro(nr[0],Vr[0]));return y.set(qe,jt),jt}function j(qe){return B(qe,kc,!0)}Ti.formatSymbolFlags=j;function ce(qe){return B(qe,Ly,!0)}Ti.formatObjectFlags=ce;function me(qe){return B(qe,YE,!0)}Ti.formatSignatureFlags=me;function V(qe){return B(qe,Vp,!0)}Ti.formatTypeFlags=V;function ne(qe,Yn,zn){for(let jt of qe)P(jt,Yn,zn||ne)}Ti.assertEachIsDefined=ne;function ve(qe,Yn,zn){return ne(qe,Yn,zn||ve),qe}Ti.checkEachDefined=ve;function $e(){if(e)return;let qe=new WeakMap,Yn=new WeakMap;Object.defineProperties(qo.getSymbolConstructor().prototype,{__lpcDebuggerDisplay:{value(){let jt=this.flags&33554432?"TransientSymbol":"Symbol",nr=this.flags&-33554433;return`${jt} '${us(this)}'${nr?` (${j(nr)})`:""}`}},__debugFlags:{get(){return j(this.flags)}}}),Object.defineProperties(qo.getTypeConstructor().prototype,{__lpcDebuggerDisplay:{value(){let jt=this.flags&98304?"NullableType":this.flags&384?`LiteralType ${JSON.stringify(this.value)}`:this.flags&1048576?"UnionType":this.flags&4194304?"IndexType":this.flags&8388608?"IndexedAccessType":this.flags&16777216?"ConditionalType":this.flags&33554432?"SubstitutionType":this.flags&262144?"TypeParameter":this.flags&524288?this.objectFlags&3?"InterfaceType":this.objectFlags&4?"TypeReference":this.objectFlags&8?"TupleType":this.objectFlags&16?"AnonymousType":this.objectFlags&32?"MappedType":this.objectFlags&1024?"ReverseMappedType":this.objectFlags&256?"EvolvingArrayType":"ObjectType":"Type",nr=this.flags&524288?this.objectFlags&-1344:0;return`${jt}${this.symbol?` '${us(this.symbol)}'`:""}${nr?` (${ce(nr)})`:""}`}},__debugFlags:{get(){return V(this.flags)}},__debugObjectFlags:{get(){return this.flags&524288?ce(this.objectFlags):""}},__debugTypeToString:{value(){let jt=qe.get(this);return jt===void 0&&(jt=this.checker.typeToString(this),qe.set(this,jt)),jt}}}),Object.defineProperties(qo.getSignatureConstructor().prototype,{__debugFlags:{get(){return me(this.flags)}},__debugSignatureToString:{value(){return this.checker?.signatureToString(this)}}});let zn=[qo.getNodeConstructor(),qo.getIdentifierConstructor(),qo.getTokenConstructor(),qo.getSourceFileConstructor()];for(let jt of zn)Fa(jt.prototype,"__debugKind")||Object.defineProperties(jt.prototype,{__lpcDebuggerDisplay:{value(){return`${cn(this)?`Identifier '${Mo(this)}'`:Pi(this)?`StringLiteral ${JSON.stringify(this.text.length<10?this.text:this.text.slice(10)+"...")}`:eu(this)?`NumericLiteral ${this.text}`:ag(this)?`FloatLiteral ${this.text}`:Qi(this)?"ParameterDeclaration":nu(this)?"ArrayTypeNode":Dh(this)?"UnionTypeNode":kh(this)?"ParenthesizedTypeNode":Vf(this)?"IndexedAccessTypeNode":El(this)?"LiteralTypeNode":ye(this.kind)}${this.flags?` (${ae(this.flags)})`:""}`}},__debugKind:{get(){return ye(this.kind)}},__debugNodeFlags:{get(){return ae(this.flags)}},__debugModifierFlags:{get(){return Ee(FM(this))}},__debugIsParseTreeNode:{get(){return Nh(this)}},__debugGetText:{value(nr){if(wi(this))return"";let Vr=Yn.get(this);if(Vr===void 0){let qi=io(this),fe=qi&&Dt(qi);Vr=fe?Vd(fe,qi,nr):"",Yn.set(this,Vr)}return Vr}}});e=!0}Ti.enableDebugInfo=$e;function Ie(qe,Yn,zn,jt,nr){if(qe!==Yn){let Vr=zn?jt?`${zn} ${jt}`:zn:"";T(`Expected ${qe} === ${Yn}. ${Vr}`,nr||Ie)}}Ti.assertEqual=Ie;function ge(qe,Yn,zn){qe<Yn&&T(`Expected ${qe} >= ${Yn}`,zn||ge)}Ti.assertGreaterThanOrEqual=ge;function Ae(qe,Yn,zn){qe>Yn&&T(`Expected ${qe} <= ${Yn}`,zn||Ae)}Ti.assertLessThanOrEqual=Ae;function Qe(qe,Yn,zn){return P(qe,Yn,zn||Qe),qe}Ti.checkDefined=Qe;function ye(qe){return B(qe,Ki,!1)}Ti.formatSyntaxKind=ye;function ae(qe){return B(qe,dc,!0)}Ti.formatNodeFlags=ae;function Ee(qe){return B(qe,Cl,!0)}Ti.formatModifierFlags=Ee;function z(qe,Yn,zn,jt){qe||(Yn=Yn?`False expression: ${Yn}`:"False expression.",zn&&(Yn+=`\r
8
+ Verbose Debug Information: `+(typeof zn=="string"?zn:zn())),T(Yn,jt||z))}Ti.assert=z;function ze(qe){return B(qe,Eh,!0)}Ti.formatFlowFlags=ze;let te,le;function bn(qe){}function Ft(qe){e&&typeof Object.setPrototypeOf=="function"&&(le||(le=Object.create(Object.prototype),ue(le)),Object.setPrototypeOf(qe,le))}Ti.attachMacroDebugInfo=Ft;function ue(qe){"__debugMacroText"in qe||Object.defineProperties(qe,{__lpcDebuggerDisplay:{value(){return this.getText().substring(qe.range.pos,qe.range.end)}},__debugToString:{value(){return`${this.name}: ${gn(this)}`}}})}function gn(qe){return qe.getText().substring(qe.range.pos,qe.range.end)}function je(qe){return e&&(typeof Object.setPrototypeOf=="function"?(te||(te=Object.create(Object.prototype),void 0),Object.setPrototypeOf(qe,te)):void 0),qe}Ti.attachFlowNodeDebugInfo=je;function Pn(qe){let Yn=-1;function zn(nn){return nn.id||(nn.id=Yn,Yn--),nn.id}let jt;(ut=>(ut.lr="\u2500",ut.ud="\u2502",ut.dr="\u256D",ut.dl="\u256E",ut.ul="\u256F",ut.ur="\u2570",ut.udr="\u251C",ut.udl="\u2524",ut.dlr="\u252C",ut.ulr="\u2534",ut.udlr="\u256B"))(jt||(jt={}));let nr;(Gn=>(Gn[Gn.None=0]="None",Gn[Gn.Up=1]="Up",Gn[Gn.Down=2]="Down",Gn[Gn.Left=4]="Left",Gn[Gn.Right=8]="Right",Gn[Gn.UpDown=3]="UpDown",Gn[Gn.LeftRight=12]="LeftRight",Gn[Gn.UpLeft=5]="UpLeft",Gn[Gn.UpRight=9]="UpRight",Gn[Gn.DownLeft=6]="DownLeft",Gn[Gn.DownRight=10]="DownRight",Gn[Gn.UpDownLeft=7]="UpDownLeft",Gn[Gn.UpDownRight=11]="UpDownRight",Gn[Gn.UpLeftRight=13]="UpLeftRight",Gn[Gn.DownLeftRight=14]="DownLeftRight",Gn[Gn.UpDownLeftRight=15]="UpDownLeftRight",Gn[Gn.NoChildren=16]="NoChildren"))(nr||(nr={}));let Vr=2032,qi=882,fe=Object.create(null),_e=[],De=[],Ve=Cr(qe,new Set);for(let nn of _e)nn.text=Zo(nn.flowNode,nn.circular),Fo(nn);let tn=Gr(Ve),Ye=No(tn);return Oo(Ve,0),Fe();function ee(nn){return!!(nn.flags&128)}function pn(nn){return!!(nn.flags&12)&&!!nn.antecedent}function X(nn){return!!(nn.flags&Vr)}function Le(nn){return!!(nn.flags&qi)}function oi(nn){let Un=[];for(let ht of nn.edges)ht.source===nn&&Un.push(ht.target);return Un}function hi(nn){let Un=[];for(let ht of nn.edges)ht.target===nn&&Un.push(ht.source);return Un}function Cr(nn,Un){let ht=zn(nn),xt=fe[ht];if(xt&&Un.has(nn))return xt.circular=!0,xt={id:-1,flowNode:nn,edges:[],text:"",lane:-1,endLane:-1,level:-1,circular:"circularity"},_e.push(xt),xt;if(Un.add(nn),!xt)if(fe[ht]=xt={id:ht,flowNode:nn,edges:[],text:"",lane:-1,endLane:-1,level:-1,circular:!1},_e.push(xt),pn(nn))for(let Ur of nn.antecedent)Sn(xt,Ur,Un);else X(nn)&&Sn(xt,nn.antecedent,Un);return Un.delete(nn),xt}function Sn(nn,Un,ht){let xt=Cr(Un,ht),Ur={source:nn,target:xt};De.push(Ur),nn.edges.push(Ur),xt.edges.push(Ur)}function Fo(nn){if(nn.level!==-1)return nn.level;let Un=0;for(let ht of hi(nn))Un=Math.max(Un,Fo(ht)+1);return nn.level=Un}function Gr(nn){let Un=0;for(let ht of oi(nn))Un=Math.max(Un,Gr(ht));return Un+1}function No(nn){let Un=lt(Array(nn),0);for(let ht of _e)Un[ht.level]=Math.max(Un[ht.level],ht.text.length);return Un}function Oo(nn,Un){if(nn.lane===-1){nn.lane=Un,nn.endLane=Un;let ht=oi(nn);for(let xt=0;xt<ht.length;xt++){xt>0&&Un++;let Ur=ht[xt];Oo(Ur,Un),Ur.endLane>nn.endLane&&(Un=Ur.endLane)}nn.endLane=Un}}function Xo(nn){if(nn&2)return"Start";if(nn&4)return"Branch";if(nn&8)return"Loop";if(nn&16)return"Assignment";if(nn&32)return"True";if(nn&64)return"False";if(nn&128)return"SwitchClause";if(nn&256)return"ArrayMutation";if(nn&512)return"Call";if(nn&1024)return"ReduceLabel";if(nn&1)return"Unreachable";throw new Error}function qa(nn){let Un=Dt(nn);return Vd(Un,nn,!1)}function Zo(nn,Un){let ht=Xo(nn.flags);if(Un&&(ht=`${ht}#${zn(nn)}`),ee(nn)){let xt=[],{switchStatement:Ur,clauseStart:ai,clauseEnd:qt}=nn.node;for(let Pe=ai;Pe<qt;Pe++){let Be=Ur.caseBlock.clauses[Pe];Ph(Be)?xt.push("default"):xt.push(qa(Be.expression))}ht+=` (${xt.join(", ")})`}else Le(nn)&&nn.node&&(ht+=` (${qa(nn.node)})`);return Un==="circularity"?`Circular(${ht})`:ht}function Fe(){let nn=Ye.length,Un=uM(_e,0,qt=>qt.lane)+1,ht=lt(Array(Un),""),xt=Ye.map(()=>Array(Un)),Ur=Ye.map(()=>lt(Array(Un),0));for(let qt of _e){xt[qt.level][qt.lane]=qt;let Pe=oi(qt);for(let Ze=0;Ze<Pe.length;Ze++){let Wn=Pe[Ze],ut=8;Wn.lane===qt.lane&&(ut|=4),Ze>0&&(ut|=1),Ze<Pe.length-1&&(ut|=2),Ur[qt.level][Wn.lane]|=ut}Pe.length===0&&(Ur[qt.level][qt.lane]|=16);let Be=hi(qt);for(let Ze=0;Ze<Be.length;Ze++){let Wn=Be[Ze],ut=4;Ze>0&&(ut|=1),Ze<Be.length-1&&(ut|=2),Ur[qt.level-1][Wn.lane]|=ut}}for(let qt=0;qt<nn;qt++)for(let Pe=0;Pe<Un;Pe++){let Be=qt>0?Ur[qt-1][Pe]:0,Ze=Pe>0?Ur[qt][Pe-1]:0,Wn=Ur[qt][Pe];Wn||(Be&8&&(Wn|=12),Ze&2&&(Wn|=3),Ur[qt][Pe]=Wn)}for(let qt=0;qt<nn;qt++)for(let Pe=0;Pe<ht.length;Pe++){let Be=Ur[qt][Pe],Ze=Be&4?"\u2500":" ",Wn=xt[qt][Pe];Wn?(ai(Pe,Wn.text),qt<nn-1&&(ai(Pe," "),ai(Pe,ir(Ze,Ye[qt]-Wn.text.length)))):qt<nn-1&&ai(Pe,ir(Ze,Ye[qt]+1)),ai(Pe,Mn(Be)),ai(Pe,Be&8&&qt<nn-1&&!xt[qt+1][Pe]?"\u2500":" ")}return`
9
+ ${ht.join(`
10
+ `)}
11
+ `;function ai(qt,Pe){ht[qt]+=Pe}}function Mn(nn){switch(nn){case 3:return"\u2502";case 12:return"\u2500";case 5:return"\u256F";case 9:return"\u2570";case 6:return"\u256E";case 10:return"\u256D";case 7:return"\u2524";case 11:return"\u251C";case 13:return"\u2534";case 14:return"\u252C";case 15:return"\u256B"}return" "}function lt(nn,Un){if(nn.fill)nn.fill(Un);else for(let ht=0;ht<nn.length;ht++)nn[ht]=Un;return nn}function ir(nn,Un){if(nn.repeat)return Un>0?nn.repeat(Un):"";let ht="";for(;ht.length<Un;)ht+=nn;return ht}}Ti.formatControlFlowGraph=Pn;function Ut(qe){}Ti.type=Ut;class kr{__debugToString(){switch(this.kind){case 3:return this.debugInfo?.()||"(function mapper)";case 0:return`${this.source.__debugTypeToString()} -> ${this.target.__debugTypeToString()}`;case 1:return EF(this.sources,this.targets||qn(this.sources,()=>"any"),(Yn,zn)=>`${Yn.__debugTypeToString()} -> ${typeof zn=="string"?zn:zn.__debugTypeToString()}`).join(", ");case 2:return EF(this.sources,this.targets,(Yn,zn)=>`${Yn.__debugTypeToString()} -> ${zn().__debugTypeToString()}`).join(", ");case 5:case 4:return`m1: ${this.mapper1.__debugToString().split(`
12
+ `).join(`
13
+ `)}
14
+ m2: ${this.mapper2.__debugToString().split(`
15
+ `).join(`
16
+ `)}`;default:return fn(this)}}}Ti.DebugTypeMapper=kr;function fn(qe,Yn="Illegal value:",zn){let jt=typeof qe=="object"&&Fa(qe,"kind")&&Fa(qe,"pos")?"SyntaxKind: "+ye(qe.kind):JSON.stringify(qe);return T(`${Yn} ${jt}`,zn||fn)}Ti.assertNever=fn;function re(qe){return Ti.isDebugging?Object.setPrototypeOf(qe,kr.prototype):qe}Ti.attachDebugPrototypeIfDebug=re;let dt={};function ot(qe,Yn){return Nt(qe)?!0:(dt[Yn]={level:qe,assertion:Ti[Yn]},Ti[Yn]=$i,!1)}function Nt(qe){return t>=qe}Ti.shouldAssert=Nt;function Bt(qe){if(typeof qe!="function")return"";if(Fa(qe,"name"))return qe.name;{let Yn=Function.prototype.toString.call(qe),zn=/^function\s+([\w$]+)\s*\(/.exec(Yn);return zn?zn[1]:""}}Ti.getFunctionName=Bt;function Zt(qe,Yn,zn,jt){ot(1,"assertNode")&&z(qe!==void 0&&(Yn===void 0||Yn(qe)),zn||"Unexpected node.",()=>`Node ${ye(qe?.kind)} did not pass test '${Bt(Yn)}'.`,jt||Zt)}Ti.assertNode=Zt;function Kt(qe){let Yn=t;if(t=qe,qe>Yn)for(let zn of KE(dt)){let jt=dt[zn];jt!==void 0&&Ti[zn]!==jt.assertion&&qe>=jt.level&&(Ti[zn]=jt,dt[zn]=void 0)}}Ti.setAssertionLevel=Kt;function ar(qe){return`{ name: ${qe.name}; flags: ${j(qe.flags)}; declarations: ${qn(qe.declarations,Yn=>ye(Yn.kind))} }`}Ti.formatSymbol=ar;function hn(qe,Yn,zn,jt){ot(1,"assertEachNode")&&z(Yn===void 0||di(qe,Yn),zn||"Unexpected node.",()=>`Node array did not pass test '${Bt(Yn)}'.`,jt||hn)}Ti.assertEachNode=hn;function er(qe,Yn,zn,jt){ot(1,"assertOptionalNode")&&z(Yn===void 0||qe===void 0||Yn(qe),zn||"Unexpected node.",()=>`Node ${ye(qe?.kind)} did not pass test '${Bt(Yn)}'.`,jt||er)}Ti.assertOptionalNode=er})(I||(I={}));var Or={};pd(Or,{clearMarks:()=>kH,clearMeasures:()=>PH,createTimer:()=>IF,createTimerIf:()=>bH,disable:()=>IH,enable:()=>FH,forEachMark:()=>DH,forEachMeasure:()=>NH,getCount:()=>CH,getDuration:()=>EH,isEnabled:()=>vH,mark:()=>Fh,measure:()=>ZE,nullTimer:()=>LF});var Sx,Ih;function bH(e,t,i,o){return e?IF(t,i,o):LF}function IF(e,t,i){let o=0;return{enter:c,exit:u};function c(){++o===1&&Fh(t)}function u(){--o===0?(Fh(i),ZE(e,t,i)):o<0&&I.fail("enter/exit count does not match.")}}var LF={enter:$i,exit:$i},Ay=!1,LM=uo(),wy=new Map,vh=new Map,Oy=new Map;function Fh(e){if(Ay){let t=vh.get(e)??0;vh.set(e,t+1),wy.set(e,uo()),Ih?.mark(e),typeof onProfilerEvent=="function"&&onProfilerEvent(e)}}function ZE(e,t,i){if(Ay){let o=(i!==void 0?wy.get(i):void 0)??uo(),c=(t!==void 0?wy.get(t):void 0)??LM,u=Oy.get(e)||0;Oy.set(e,u+(o-c)),Ih?.measure(e,t,i)}}function CH(e){return vh.get(e)||0}function EH(e){return Oy.get(e)||0}function NH(e){Oy.forEach((t,i)=>e(i,t))}function DH(e){wy.forEach((t,i)=>e(i))}function PH(e){e!==void 0?Oy.delete(e):Oy.clear(),Ih?.clearMeasures(e)}function kH(e){e!==void 0?(vh.delete(e),wy.delete(e)):(vh.clear(),wy.clear()),Ih?.clearMarks(e)}function vH(){return Ay}function FH(e=Vi){return Ay||(Ay=!0,Sx||(Sx=vM()),Sx?.performance&&(LM=Sx.performance.timeOrigin,(Sx.shouldWriteNativeEvents||e?.cpuProfilingEnabled?.()||e?.debugMode)&&(Ih=Sx.performance))),!0}function IH(){Ay&&(wy.clear(),vh.clear(),Oy.clear(),Ih=void 0,Ay=!1)}var Pt,eN;(me=>{let e,t,i=0,o=0,c=[],u,p=[],m;(Qe=>(Qe.Parse="parse",Qe.Program="program",Qe.Bind="bind",Qe.Check="check",Qe.CheckTypes="checkTypes",Qe.Emit="emit",Qe.Session="session"))(m=me.Phase||(me.Phase={}));let g=[];function S(V,ne,ve,$e=!1){}me.push=S;function T(V){I.assert(g.length>0),v(g.length-1,1e3*uo(),V),g.length--}me.pop=T;function _(){let V=1e3*uo();for(let ne=g.length-1;ne>=0;ne--)v(ne,V);g.length=0}me.popAll=_;let P=1e3*10;function v(V,ne,ve){let{phase:$e,name:Ie,args:ge,time:Ae,separateBeginAndEnd:Qe}=g[V];Qe?(I.assert(!ve,"`results` are not supported for events with `separateBeginAndEnd`"),B("E",$e,Ie,ge,void 0,ne)):P-Ae%P<=ne-Ae&&B("X",$e,Ie,{...ge,results:ve},`"dur":${ne-Ae}`,Ae)}function B(V,ne,ve,$e,Ie,ge=1e3*uo()){e==="server"&&ne==="checkTypes"||(Fh("beginTracing"),t.writeSync(o,`,
17
+ {"pid":1,"tid":1,"ph":"${V}","cat":"${ne}","ts":${ge},"name":"${ve}"`),Ie&&t.writeSync(o,`,${Ie}`),$e&&t.writeSync(o,`,"args":${JSON.stringify($e)}`),t.writeSync(o,"}"),Fh("endTracing"),ZE("Tracing","beginTracing","endTracing"))}function y(V,ne,ve){if(I.assert(!Pt,"Tracing already started"),t===void 0)try{t=require("fs")}catch(Qe){throw new Error(`tracing requires having fs
18
+ (original error: ${Qe.message||Qe})`)}e=V,c.length=0,u===void 0&&(u=Zr(ne,"legend.json")),t.existsSync(ne)||t.mkdirSync(ne,{recursive:!0});let $e=e==="build"?`.${process.pid}-${++i}`:e==="server"?`.${process.pid}`:"",Ie=Zr(ne,`trace${$e}.json`),ge=Zr(ne,`types${$e}.json`);p.push({configFilePath:ve,tracePath:Ie,typesPath:ge}),o=t.openSync(Ie,"w"),Pt=me;let Ae={cat:"__metadata",ph:"M",ts:1e3*uo(),pid:1,tid:1};t.writeSync(o,`[
19
+ `+[{name:"process_name",args:{name:"tsc"},...Ae},{name:"thread_name",args:{name:"Main"},...Ae},{name:"TracingStartedInBrowser",...Ae,cat:"disabled-by-default-devtools.timeline"}].map(Qe=>JSON.stringify(Qe)).join(`,
20
+ `))}me.startTracing=y;function $(){u&&t.writeFileSync(u,JSON.stringify(p))}me.dumpLegend=$;function j(V){e!=="server"&&c.push(V)}me.recordType=j;function ce(V,ne,ve){B("I",V,ne,ve,'"s":"g"')}me.instant=ce})(eN||(eN={}));var gre=eN.startTracing,yre=eN.dumpLegend;var nN=(T=>(T[T.RootFile=0]="RootFile",T[T.MasterFile=1]="MasterFile",T[T.SourceFromProjectReference=2]="SourceFromProjectReference",T[T.OutputFromProjectReference=3]="OutputFromProjectReference",T[T.Import=4]="Import",T[T.ReferenceFile=5]="ReferenceFile",T[T.TypeReferenceDirective=6]="TypeReferenceDirective",T[T.LibFile=7]="LibFile",T[T.LibReferenceDirective=8]="LibReferenceDirective",T[T.AutomaticTypeDirectiveFile=9]="AutomaticTypeDirectiveFile",T))(nN||{});var Ki=(x=>(x[x.Unknown=0]="Unknown",x[x.EndOfFileToken=1]="EndOfFileToken",x[x.SingleLineCommentTrivia=2]="SingleLineCommentTrivia",x[x.MultiLineCommentTrivia=3]="MultiLineCommentTrivia",x[x.NewLineTrivia=4]="NewLineTrivia",x[x.WhitespaceTrivia=5]="WhitespaceTrivia",x[x.ConflictMarkerTrivia=6]="ConflictMarkerTrivia",x[x.MacroIdentifierTrivia=7]="MacroIdentifierTrivia",x[x.ShebangTrivia=8]="ShebangTrivia",x[x.NonTextFileMarkerTrivia=9]="NonTextFileMarkerTrivia",x[x.NumericLiteral=10]="NumericLiteral",x[x.IntLiteral=11]="IntLiteral",x[x.CharLiteral=12]="CharLiteral",x[x.FloatLiteral=13]="FloatLiteral",x[x.BytesLiteral=14]="BytesLiteral",x[x.StringArrayLiteral=15]="StringArrayLiteral",x[x.StringLiteral=16]="StringLiteral",x[x.OpenBraceToken=17]="OpenBraceToken",x[x.BacktickToken=18]="BacktickToken",x[x.CloseBraceToken=19]="CloseBraceToken",x[x.OpenParenToken=20]="OpenParenToken",x[x.CloseParenToken=21]="CloseParenToken",x[x.OpenBracketToken=22]="OpenBracketToken",x[x.CloseBracketToken=23]="CloseBracketToken",x[x.DotToken=24]="DotToken",x[x.DotDotDotToken=25]="DotDotDotToken",x[x.SemicolonToken=26]="SemicolonToken",x[x.CommaToken=27]="CommaToken",x[x.QuestionDotToken=28]="QuestionDotToken",x[x.LessThanToken=29]="LessThanToken",x[x.LessThanSlashToken=30]="LessThanSlashToken",x[x.LessThanDotDotToken=31]="LessThanDotDotToken",x[x.GreaterThanToken=32]="GreaterThanToken",x[x.LessThanEqualsToken=33]="LessThanEqualsToken",x[x.GreaterThanEqualsToken=34]="GreaterThanEqualsToken",x[x.EqualsEqualsToken=35]="EqualsEqualsToken",x[x.ExclamationEqualsToken=36]="ExclamationEqualsToken",x[x.EqualsEqualsEqualsToken=37]="EqualsEqualsEqualsToken",x[x.ExclamationEqualsEqualsToken=38]="ExclamationEqualsEqualsToken",x[x.EqualsGreaterThanToken=39]="EqualsGreaterThanToken",x[x.MinusGreaterThanToken=40]="MinusGreaterThanToken",x[x.PlusToken=41]="PlusToken",x[x.MinusToken=42]="MinusToken",x[x.AsteriskToken=43]="AsteriskToken",x[x.AsteriskAsteriskToken=44]="AsteriskAsteriskToken",x[x.SlashToken=45]="SlashToken",x[x.PercentToken=46]="PercentToken",x[x.PlusPlusToken=47]="PlusPlusToken",x[x.MinusMinusToken=48]="MinusMinusToken",x[x.LessThanLessThanToken=49]="LessThanLessThanToken",x[x.GreaterThanGreaterThanToken=50]="GreaterThanGreaterThanToken",x[x.GreaterThanGreaterThanGreaterThanToken=51]="GreaterThanGreaterThanGreaterThanToken",x[x.AmpersandToken=52]="AmpersandToken",x[x.BarToken=53]="BarToken",x[x.CaretToken=54]="CaretToken",x[x.ExclamationToken=55]="ExclamationToken",x[x.DoubleExclamationToken=56]="DoubleExclamationToken",x[x.TildeToken=57]="TildeToken",x[x.AmpersandAmpersandToken=58]="AmpersandAmpersandToken",x[x.BarBarToken=59]="BarBarToken",x[x.QuestionToken=60]="QuestionToken",x[x.ColonToken=61]="ColonToken",x[x.AtToken=62]="AtToken",x[x.AtAtToken=63]="AtAtToken",x[x.QuestionQuestionToken=64]="QuestionQuestionToken",x[x.HashToken=65]="HashToken",x[x.OpenParenColonToken=66]="OpenParenColonToken",x[x.ColonCloseParenToken=67]="ColonCloseParenToken",x[x.OpenParenBracketToken=68]="OpenParenBracketToken",x[x.OpenParenBraceToken=69]="OpenParenBraceToken",x[x.OpenParenAsteriskToken=70]="OpenParenAsteriskToken",x[x.ColonColonToken=71]="ColonColonToken",x[x.LambdaToken=72]="LambdaToken",x[x.DotDotToken=73]="DotDotToken",x[x.EqualsToken=74]="EqualsToken",x[x.PlusEqualsToken=75]="PlusEqualsToken",x[x.MinusEqualsToken=76]="MinusEqualsToken",x[x.AsteriskEqualsToken=77]="AsteriskEqualsToken",x[x.AsteriskAsteriskEqualsToken=78]="AsteriskAsteriskEqualsToken",x[x.SlashEqualsToken=79]="SlashEqualsToken",x[x.PercentEqualsToken=80]="PercentEqualsToken",x[x.LessThanLessThanEqualsToken=81]="LessThanLessThanEqualsToken",x[x.GreaterThanGreaterThanEqualsToken=82]="GreaterThanGreaterThanEqualsToken",x[x.GreaterThanGreaterThanGreaterThanEqualsToken=83]="GreaterThanGreaterThanGreaterThanEqualsToken",x[x.AmpersandEqualsToken=84]="AmpersandEqualsToken",x[x.BarEqualsToken=85]="BarEqualsToken",x[x.BarBarEqualsToken=86]="BarBarEqualsToken",x[x.QuestionQuestionEqualsToken=87]="QuestionQuestionEqualsToken",x[x.CaretEqualsToken=88]="CaretEqualsToken",x[x.Identifier=89]="Identifier",x[x.StringizedIdentifier=90]="StringizedIdentifier",x[x.JSDocCommentTextToken=91]="JSDocCommentTextToken",x[x.IntKeyword=92]="IntKeyword",x[x.FloatKeyword=93]="FloatKeyword",x[x.StringKeyword=94]="StringKeyword",x[x.LwObjectKeyword=95]="LwObjectKeyword",x[x.UndefinedKeyword=96]="UndefinedKeyword",x[x.AnyKeyword=97]="AnyKeyword",x[x.ClosureKeyword=98]="ClosureKeyword",x[x.StructKeyword=99]="StructKeyword",x[x.CatchKeyword=100]="CatchKeyword",x[x.MixedKeyword=101]="MixedKeyword",x[x.UnknownKeyword=102]="UnknownKeyword",x[x.InKeyword=103]="InKeyword",x[x.MappingKeyword=104]="MappingKeyword",x[x.VoidKeyword=105]="VoidKeyword",x[x.BreakKeyword=106]="BreakKeyword",x[x.BytesKeyword=107]="BytesKeyword",x[x.BufferKeyword=108]="BufferKeyword",x[x.DoKeyword=109]="DoKeyword",x[x.ElseKeyword=110]="ElseKeyword",x[x.ForKeyword=111]="ForKeyword",x[x.ForEachKeyword=112]="ForEachKeyword",x[x.CaseKeyword=113]="CaseKeyword",x[x.DefaultKeyword=114]="DefaultKeyword",x[x.IfKeyword=115]="IfKeyword",x[x.ReturnKeyword=116]="ReturnKeyword",x[x.SwitchKeyword=117]="SwitchKeyword",x[x.WhileKeyword=118]="WhileKeyword",x[x.AsyncKeyword=119]="AsyncKeyword",x[x.InheritKeyword=120]="InheritKeyword",x[x.ContinueKeyword=121]="ContinueKeyword",x[x.PrivateKeyword=122]="PrivateKeyword",x[x.ProtectedKeyword=123]="ProtectedKeyword",x[x.PublicKeyword=124]="PublicKeyword",x[x.StaticKeyword=125]="StaticKeyword",x[x.VisibleKeyword=126]="VisibleKeyword",x[x.NoSaveKeyword=127]="NoSaveKeyword",x[x.NoShadowKeyword=128]="NoShadowKeyword",x[x.IntrinsicKeyword=129]="IntrinsicKeyword",x[x.NoMaskKeyword=130]="NoMaskKeyword",x[x.VarArgsKeyword=131]="VarArgsKeyword",x[x.DeprecatedKeyword=132]="DeprecatedKeyword",x[x.ClassKeyword=133]="ClassKeyword",x[x.StatusKeyword=134]="StatusKeyword",x[x.FalseKeyword=135]="FalseKeyword",x[x.TrueKeyword=136]="TrueKeyword",x[x.NullKeyword=137]="NullKeyword",x[x.FunctionKeyword=138]="FunctionKeyword",x[x.SymbolKeyword=139]="SymbolKeyword",x[x.ObjectKeyword=140]="ObjectKeyword",x[x.RefKeyword=141]="RefKeyword",x[x.IsKeyword=142]="IsKeyword",x[x.FunctionsKeyword=143]="FunctionsKeyword",x[x.VirtualKeyword=144]="VirtualKeyword",x[x.NewKeyword=145]="NewKeyword",x[x.QualifiedName=146]="QualifiedName",x[x.ComputedPropertyName=147]="ComputedPropertyName",x[x.TypeParameter=148]="TypeParameter",x[x.Parameter=149]="Parameter",x[x.IndexSignature=150]="IndexSignature",x[x.CallSignature=151]="CallSignature",x[x.PropertyDeclaration=152]="PropertyDeclaration",x[x.PropertySignature=153]="PropertySignature",x[x.MethodDeclaration=154]="MethodDeclaration",x[x.InterfaceDeclaration=155]="InterfaceDeclaration",x[x.MethodSignature=156]="MethodSignature",x[x.UnionType=157]="UnionType",x[x.FunctionType=158]="FunctionType",x[x.IntersectionType=159]="IntersectionType",x[x.RestType=160]="RestType",x[x.ArrayType=161]="ArrayType",x[x.TupleType=162]="TupleType",x[x.TypeLiteral=163]="TypeLiteral",x[x.TypeQuery=164]="TypeQuery",x[x.ParenthesizedType=165]="ParenthesizedType",x[x.TypeReference=166]="TypeReference",x[x.TypePredicate=167]="TypePredicate",x[x.ConditionalType=168]="ConditionalType",x[x.FunctionDeclaration=169]="FunctionDeclaration",x[x.ClassDeclaration=170]="ClassDeclaration",x[x.ExportSpecifier=171]="ExportSpecifier",x[x.ExportDeclaration=172]="ExportDeclaration",x[x.MissingDeclaration=173]="MissingDeclaration",x[x.PropertyAssignment=174]="PropertyAssignment",x[x.ShorthandPropertyAssignment=175]="ShorthandPropertyAssignment",x[x.SourceFile=176]="SourceFile",x[x.Bundle=177]="Bundle",x[x.IncludeDirective=178]="IncludeDirective",x[x.DefineDirective=179]="DefineDirective",x[x.UndefDirective=180]="UndefDirective",x[x.IfDirective=181]="IfDirective",x[x.IfDefDirective=182]="IfDefDirective",x[x.IfNDefDirective=183]="IfNDefDirective",x[x.ElseDirective=184]="ElseDirective",x[x.ElseIfDirective=185]="ElseIfDirective",x[x.EndIfDirective=186]="EndIfDirective",x[x.PragmaDirective=187]="PragmaDirective",x[x.JSDocTypeExpression=188]="JSDocTypeExpression",x[x.JSDocNameReference=189]="JSDocNameReference",x[x.JSDocMemberName=190]="JSDocMemberName",x[x.JSDocAllType=191]="JSDocAllType",x[x.JSDocUnknownType=192]="JSDocUnknownType",x[x.JSDocNullableType=193]="JSDocNullableType",x[x.JSDocNonNullableType=194]="JSDocNonNullableType",x[x.JSDocOptionalType=195]="JSDocOptionalType",x[x.JSDocFunctionType=196]="JSDocFunctionType",x[x.JSDocVariadicType=197]="JSDocVariadicType",x[x.JSDocNamepathType=198]="JSDocNamepathType",x[x.JSDoc=199]="JSDoc",x[x.JSDocComment=199]="JSDocComment",x[x.JSDocText=200]="JSDocText",x[x.JSDocTypeLiteral=201]="JSDocTypeLiteral",x[x.JSDocSignature=202]="JSDocSignature",x[x.JSDocLink=203]="JSDocLink",x[x.JSDocLinkCode=204]="JSDocLinkCode",x[x.JSDocLinkPlain=205]="JSDocLinkPlain",x[x.JSDocTag=206]="JSDocTag",x[x.JSDocAugmentsTag=207]="JSDocAugmentsTag",x[x.JSDocImplementsTag=208]="JSDocImplementsTag",x[x.JSDocAuthorTag=209]="JSDocAuthorTag",x[x.JSDocDeprecatedTag=210]="JSDocDeprecatedTag",x[x.JSDocClassTag=211]="JSDocClassTag",x[x.JSDocPublicTag=212]="JSDocPublicTag",x[x.JSDocPrivateTag=213]="JSDocPrivateTag",x[x.JSDocProtectedTag=214]="JSDocProtectedTag",x[x.JSDocReadonlyTag=215]="JSDocReadonlyTag",x[x.JSDocOverrideTag=216]="JSDocOverrideTag",x[x.JSDocCallbackTag=217]="JSDocCallbackTag",x[x.JSDocOverloadTag=218]="JSDocOverloadTag",x[x.JSDocEnumTag=219]="JSDocEnumTag",x[x.JSDocParameterTag=220]="JSDocParameterTag",x[x.JSDocReturnTag=221]="JSDocReturnTag",x[x.JSDocThisTag=222]="JSDocThisTag",x[x.JSDocTypeTag=223]="JSDocTypeTag",x[x.JSDocTemplateTag=224]="JSDocTemplateTag",x[x.JSDocTypedefTag=225]="JSDocTypedefTag",x[x.JSDocSeeTag=226]="JSDocSeeTag",x[x.JSDocPropertyTag=227]="JSDocPropertyTag",x[x.JSDocVariableTag=228]="JSDocVariableTag",x[x.JSDocThrowsTag=229]="JSDocThrowsTag",x[x.JSDocSatisfiesTag=230]="JSDocSatisfiesTag",x[x.JSDocImportTag=231]="JSDocImportTag",x[x.SyntaxList=232]="SyntaxList",x[x.NotEmittedStatement=233]="NotEmittedStatement",x[x.PartiallyEmittedExpression=234]="PartiallyEmittedExpression",x[x.CommaListExpression=235]="CommaListExpression",x[x.Block=236]="Block",x[x.VariableDeclaration=237]="VariableDeclaration",x[x.VariableDeclarationList=238]="VariableDeclarationList",x[x.TypeAliasDeclaration=239]="TypeAliasDeclaration",x[x.CaseBlock=240]="CaseBlock",x[x.StructDeclaration=241]="StructDeclaration",x[x.VariableStatement=242]="VariableStatement",x[x.ForStatement=243]="ForStatement",x[x.ForEachStatement=244]="ForEachStatement",x[x.DoWhileStatement=245]="DoWhileStatement",x[x.WhileStatement=246]="WhileStatement",x[x.ExpressionStatement=247]="ExpressionStatement",x[x.ReturnStatement=248]="ReturnStatement",x[x.LabeledStatement=249]="LabeledStatement",x[x.BreakStatement=250]="BreakStatement",x[x.ContinueStatement=251]="ContinueStatement",x[x.InheritDeclaration=252]="InheritDeclaration",x[x.IfStatement=253]="IfStatement",x[x.EmptyStatement=254]="EmptyStatement",x[x.CatchStatement=255]="CatchStatement",x[x.SwitchStatement=256]="SwitchStatement",x[x.LiteralType=257]="LiteralType",x[x.StructType=258]="StructType",x[x.InferType=259]="InferType",x[x.ThisType=260]="ThisType",x[x.IndexedAccessType=261]="IndexedAccessType",x[x.NamedTupleMember=262]="NamedTupleMember",x[x.TypeOperator=263]="TypeOperator",x[x.MappedType=264]="MappedType",x[x.ArrayBindingPattern=265]="ArrayBindingPattern",x[x.BindingElement=266]="BindingElement",x[x.ConditionalExpression=267]="ConditionalExpression",x[x.CatchExpression=268]="CatchExpression",x[x.BinaryExpression=269]="BinaryExpression",x[x.FunctionExpression=270]="FunctionExpression",x[x.ArrowFunction=271]="ArrowFunction",x[x.CallExpression=272]="CallExpression",x[x.CloneObjectExpression=273]="CloneObjectExpression",x[x.ClassExpression=274]="ClassExpression",x[x.SyntheticExpression=275]="SyntheticExpression",x[x.NewExpression=276]="NewExpression",x[x.NewStructExpression=277]="NewStructExpression",x[x.EvaluateExpression=278]="EvaluateExpression",x[x.TypeAssertionExpression=279]="TypeAssertionExpression",x[x.ExpressionWithTypeArguments=280]="ExpressionWithTypeArguments",x[x.ElementAccessExpression=281]="ElementAccessExpression",x[x.RangeExpression=282]="RangeExpression",x[x.InlineClosureExpression=283]="InlineClosureExpression",x[x.LambdaIdentifierExpression=284]="LambdaIdentifierExpression",x[x.LambdaOperatorExpression=285]="LambdaOperatorExpression",x[x.PropertyAccessExpression=286]="PropertyAccessExpression",x[x.SuperAccessExpression=287]="SuperAccessExpression",x[x.PostfixUnaryExpression=288]="PostfixUnaryExpression",x[x.ParenthesizedExpression=289]="ParenthesizedExpression",x[x.ArrayLiteralExpression=290]="ArrayLiteralExpression",x[x.MappingLiteralExpression=291]="MappingLiteralExpression",x[x.MappingEntryExpression=292]="MappingEntryExpression",x[x.ObjectLiteralExpression=293]="ObjectLiteralExpression",x[x.SpreadElement=294]="SpreadElement",x[x.ByRefElement=295]="ByRefElement",x[x.CastExpression=296]="CastExpression",x[x.OmittedExpression=297]="OmittedExpression",x[x.PrefixUnaryExpression=298]="PrefixUnaryExpression",x[x.CaseClause=299]="CaseClause",x[x.HeritageClause=300]="HeritageClause",x[x.DefaultClause=301]="DefaultClause",x[x.Count=302]="Count",x[x.FirstReservedWord=92]="FirstReservedWord",x[x.LastReservedWord=132]="LastReservedWord",x[x.FirstKeyword=92]="FirstKeyword",x[x.LastKeyword=145]="LastKeyword",x[x.FirstToken=0]="FirstToken",x[x.LastToken=145]="LastToken",x[x.FirstStatement=242]="FirstStatement",x[x.LastStatement=256]="LastStatement",x[x.FirstAssignment=74]="FirstAssignment",x[x.LastAssignment=88]="LastAssignment",x[x.SuperKeyword=71]="SuperKeyword",x[x.FirstTypeNode=157]="FirstTypeNode",x[x.LastTypeNode=168]="LastTypeNode",x[x.FirstNode=146]="FirstNode",x[x.FirstFutureReservedWord=92]="FirstFutureReservedWord",x[x.LastFutureReservedWord=145]="LastFutureReservedWord",x[x.FirstJSDocNode=188]="FirstJSDocNode",x[x.LastJSDocNode=231]="LastJSDocNode",x[x.FirstLiteralToken=11]="FirstLiteralToken",x[x.LastLiteralToken=16]="LastLiteralToken",x[x.FirstJSDocTagNode=188]="FirstJSDocTagNode",x[x.LastJSDocTagNode=231]="LastJSDocTagNode",x[x.FirstTriviaToken=2]="FirstTriviaToken",x[x.LastTriviaToken=8]="LastTriviaToken",x[x.FirstBinaryOperator=29]="FirstBinaryOperator",x[x.LastBinaryOperator=88]="LastBinaryOperator",x[x.FirstPunctuation=17]="FirstPunctuation",x[x.LastPunctuation=73]="LastPunctuation",x[x.FirstContextualKeyword=92]="FirstContextualKeyword",x[x.LastContextualKeyword=121]="LastContextualKeyword",x))(Ki||{}),Vp=(Le=>(Le[Le.Any=1]="Any",Le[Le.Unknown=2]="Unknown",Le[Le.String=4]="String",Le[Le.Number=8]="Number",Le[Le.Boolean=16]="Boolean",Le[Le.Enum=32]="Enum",Le[Le.Float=64]="Float",Le[Le.StringLiteral=128]="StringLiteral",Le[Le.IntLiteral=256]="IntLiteral",Le[Le.BooleanLiteral=512]="BooleanLiteral",Le[Le.EnumLiteral=1024]="EnumLiteral",Le[Le.FloatLiteral=2048]="FloatLiteral",Le[Le.Bytes=4096]="Bytes",Le[Le.BytesLiteral=8192]="BytesLiteral",Le[Le.Void=16384]="Void",Le[Le.Undefined=32768]="Undefined",Le[Le.Null=65536]="Null",Le[Le.Never=131072]="Never",Le[Le.TypeParameter=262144]="TypeParameter",Le[Le.Object=524288]="Object",Le[Le.Union=1048576]="Union",Le[Le.Intersection=2097152]="Intersection",Le[Le.Index=4194304]="Index",Le[Le.IndexedAccess=8388608]="IndexedAccess",Le[Le.Conditional=16777216]="Conditional",Le[Le.Substitution=33554432]="Substitution",Le[Le.NonPrimitive=67108864]="NonPrimitive",Le[Le.TemplateLiteral=134217728]="TemplateLiteral",Le[Le.StringMapping=268435456]="StringMapping",Le[Le.Reserved1=536870912]="Reserved1",Le[Le.Reserved2=1073741824]="Reserved2",Le[Le.LpcDocVariable=-2147483648]="LpcDocVariable",Le[Le.AnyOrUnknown=3]="AnyOrUnknown",Le[Le.Nullable=98304]="Nullable",Le[Le.Literal=2944]="Literal",Le[Le.Unit=101280]="Unit",Le[Le.Freshable=2976]="Freshable",Le[Le.StringOrNumberLiteral=384]="StringOrNumberLiteral",Le[Le.StringOrNumberLiteralOrUnique=384]="StringOrNumberLiteralOrUnique",Le[Le.DefinitelyFalsy=117632]="DefinitelyFalsy",Le[Le.PossiblyFalsy=121820]="PossiblyFalsy",Le[Le.Intrinsic=67359327]="Intrinsic",Le[Le.StringLike=402653316]="StringLike",Le[Le.NumberLike=2344]="NumberLike",Le[Le.BooleanLike=528]="BooleanLike",Le[Le.EnumLike=1056]="EnumLike",Le[Le.VoidLike=49152]="VoidLike",Le[Le.BytesLike=12288]="BytesLike",Le[Le.Primitive=402784188]="Primitive",Le[Le.DefinitelyNonNullable=470302652]="DefinitelyNonNullable",Le[Le.DisjointDomains=469892028]="DisjointDomains",Le[Le.UnionOrIntersection=3145728]="UnionOrIntersection",Le[Le.StructuredType=3670016]="StructuredType",Le[Le.TypeVariable=8650752]="TypeVariable",Le[Le.InstantiableNonPrimitive=58982400]="InstantiableNonPrimitive",Le[Le.InstantiablePrimitive=406847488]="InstantiablePrimitive",Le[Le.Instantiable=465829888]="Instantiable",Le[Le.StructuredOrInstantiable=469499904]="StructuredOrInstantiable",Le[Le.ObjectFlagsType=3899393]="ObjectFlagsType",Le[Le.Simplifiable=25165824]="Simplifiable",Le[Le.Singleton=67358815]="Singleton",Le[Le.Narrowable=536624063]="Narrowable",Le[Le.IncludesMask=473694143]="IncludesMask",Le[Le.IncludesMissingType=262144]="IncludesMissingType",Le[Le.IncludesNonWideningType=4194304]="IncludesNonWideningType",Le[Le.IncludesWildcard=8388608]="IncludesWildcard",Le[Le.IncludesEmptyObject=16777216]="IncludesEmptyObject",Le[Le.IncludesInstantiable=33554432]="IncludesInstantiable",Le[Le.IncludesConstrainedTypeVariable=536870912]="IncludesConstrainedTypeVariable",Le[Le.IncludesError=1073741824]="IncludesError",Le[Le.NotPrimitiveUnion=36323331]="NotPrimitiveUnion",Le))(Vp||{});var dc=(z=>(z[z.None=0]="None",z[z.Variable=1]="Variable",z[z.ExternalFile=4]="ExternalFile",z[z.Synthesized=16]="Synthesized",z[z.IncludeContext=32]="IncludeContext",z[z.MacroContext=64]="MacroContext",z[z.ExportContext=128]="ExportContext",z[z.HasImplicitReturn=512]="HasImplicitReturn",z[z.HasExplicitReturn=1024]="HasExplicitReturn",z[z.HasAsyncFunctions=4096]="HasAsyncFunctions",z[z.DisallowInContext=8192]="DisallowInContext",z[z.YieldContext=16384]="YieldContext",z[z.DisallowTypes=32768]="DisallowTypes",z[z.AwaitContext=65536]="AwaitContext",z[z.DisallowCommaContext=131072]="DisallowCommaContext",z[z.ThisNodeHasError=262144]="ThisNodeHasError",z[z.DisallowConditionalTypesContext=524288]="DisallowConditionalTypesContext",z[z.ThisNodeOrAnySubNodesHasError=1048576]="ThisNodeOrAnySubNodesHasError",z[z.HasAggregatedChildData=2097152]="HasAggregatedChildData",z[z.OptionalChain=4194304]="OptionalChain",z[z.JSDoc=16777216]="JSDoc",z[z.Ambient=33554432]="Ambient",z[z.TypeCached=268435456]="TypeCached",z[z.Deprecated=536870912]="Deprecated",z[z.ReachabilityCheckFlags=1536]="ReachabilityCheckFlags",z[z.ReachabilityAndEmitFlags=1536]="ReachabilityAndEmitFlags",z[z.ContextFlags=34332768]="ContextFlags",z[z.BlockScoped=1]="BlockScoped",z[z.IdentifierHasExtendedUnicodeEscape=256]="IdentifierHasExtendedUnicodeEscape",z[z.IdentifierIsInJSDocNamespace=4096]="IdentifierIsInJSDocNamespace",z[z.IncludeOrMacro=96]="IncludeOrMacro",z))(dc||{});var Cl=(le=>(le[le.None=0]="None",le[le.Public=1]="Public",le[le.Private=2]="Private",le[le.Protected=4]="Protected",le[le.NoMask=32]="NoMask",le[le.NoShadow=64]="NoShadow",le[le.NoSave=128]="NoSave",le[le.Static=256]="Static",le[le.VarArgs=512]="VarArgs",le[le.Visible=1024]="Visible",le[le.Export=2048]="Export",le[le.Ambient=4096]="Ambient",le[le.Readonly=8192]="Readonly",le[le.In=16384]="In",le[le.Out=32768]="Out",le[le.Deprecated=65536]="Deprecated",le[le.JSDocPublic=8388608]="JSDocPublic",le[le.JSDocPrivate=16777216]="JSDocPrivate",le[le.JSDocProtected=33554432]="JSDocProtected",le[le.JSDocReadonly=67108864]="JSDocReadonly",le[le.JSDocOverride=134217728]="JSDocOverride",le[le.SyntacticOrJSDocModifiers=7]="SyntacticOrJSDocModifiers",le[le.SyntacticOnlyModifiers=2016]="SyntacticOnlyModifiers",le[le.SyntacticModifiers=2023]="SyntacticModifiers",le[le.JSDocCacheOnlyModifiers=260046848]="JSDocCacheOnlyModifiers",le[le.JSDocOnlyModifiers=65536]="JSDocOnlyModifiers",le[le.NonCacheOnlyModifiers=67559]="NonCacheOnlyModifiers",le[le.HasComputedJSDocModifiers=268435456]="HasComputedJSDocModifiers",le[le.HasComputedFlags=536870912]="HasComputedFlags",le[le.AccessibilityModifier=7]="AccessibilityModifier",le[le.ParameterPropertyModifier=167]="ParameterPropertyModifier",le[le.NonPublicAccessibilityModifier=6]="NonPublicAccessibilityModifier",le[le.All=67559]="All",le[le.Modifier=67559]="Modifier",le))(Cl||{});var Ry=(c=>(c[c.Warning=0]="Warning",c[c.Error=1]="Error",c[c.Suggestion=2]="Suggestion",c[c.Message=3]="Message",c))(Ry||{});function tN(e,t=!0){let i=Ry[e.category];return t?i.toLowerCase():i}var Eh=(y=>(y[y.Unreachable=1]="Unreachable",y[y.Start=2]="Start",y[y.BranchLabel=4]="BranchLabel",y[y.LoopLabel=8]="LoopLabel",y[y.Assignment=16]="Assignment",y[y.TrueCondition=32]="TrueCondition",y[y.FalseCondition=64]="FalseCondition",y[y.SwitchClause=128]="SwitchClause",y[y.ArrayMutation=256]="ArrayMutation",y[y.Call=512]="Call",y[y.ReduceLabel=1024]="ReduceLabel",y[y.Referenced=2048]="Referenced",y[y.Shared=4096]="Shared",y[y.Label=12]="Label",y[y.Condition=96]="Condition",y))(Eh||{});var kc=(ee=>(ee[ee.None=0]="None",ee[ee.FunctionScopedVariable=1]="FunctionScopedVariable",ee[ee.BlockScopedVariable=2]="BlockScopedVariable",ee[ee.Property=4]="Property",ee[ee.EnumMember=8]="EnumMember",ee[ee.Function=16]="Function",ee[ee.Class=32]="Class",ee[ee.Interface=64]="Interface",ee[ee.ConstEnum=128]="ConstEnum",ee[ee.RegularEnum=256]="RegularEnum",ee[ee.ValueModule=512]="ValueModule",ee[ee.NamespaceModule=1024]="NamespaceModule",ee[ee.TypeLiteral=2048]="TypeLiteral",ee[ee.ObjectLiteral=4096]="ObjectLiteral",ee[ee.Method=8192]="Method",ee[ee.Constructor=16384]="Constructor",ee[ee.GetAccessor=32768]="GetAccessor",ee[ee.SetAccessor=65536]="SetAccessor",ee[ee.Signature=131072]="Signature",ee[ee.TypeParameter=262144]="TypeParameter",ee[ee.TypeAlias=524288]="TypeAlias",ee[ee.ExportValue=1048576]="ExportValue",ee[ee.Alias=2097152]="Alias",ee[ee.Prototype=4194304]="Prototype",ee[ee.FakeGlobal=8388608]="FakeGlobal",ee[ee.Optional=16777216]="Optional",ee[ee.Transient=33554432]="Transient",ee[ee.Assignment=67108864]="Assignment",ee[ee.ModuleExports=134217728]="ModuleExports",ee[ee.Define=268435456]="Define",ee[ee.All=-1]="All",ee[ee.Enum=384]="Enum",ee[ee.Variable=3]="Variable",ee[ee.Value=111551]="Value",ee[ee.ValueOrDefine=268547007]="ValueOrDefine",ee[ee.Type=788968]="Type",ee[ee.Namespace=1920]="Namespace",ee[ee.Module=1536]="Module",ee[ee.Accessor=98304]="Accessor",ee[ee.FunctionScopedVariableExcludes=111550]="FunctionScopedVariableExcludes",ee[ee.BlockScopedVariableExcludes=268547007]="BlockScopedVariableExcludes",ee[ee.ParameterExcludes=111551]="ParameterExcludes",ee[ee.PropertyExcludes=0]="PropertyExcludes",ee[ee.EnumMemberExcludes=900095]="EnumMemberExcludes",ee[ee.FunctionExcludes=110991]="FunctionExcludes",ee[ee.DefineExcludes=111039]="DefineExcludes",ee[ee.ClassExcludes=899503]="ClassExcludes",ee[ee.InterfaceExcludes=788872]="InterfaceExcludes",ee[ee.RegularEnumExcludes=899327]="RegularEnumExcludes",ee[ee.ConstEnumExcludes=899967]="ConstEnumExcludes",ee[ee.ValueModuleExcludes=110735]="ValueModuleExcludes",ee[ee.NamespaceModuleExcludes=0]="NamespaceModuleExcludes",ee[ee.MethodExcludes=103359]="MethodExcludes",ee[ee.GetAccessorExcludes=46015]="GetAccessorExcludes",ee[ee.SetAccessorExcludes=78783]="SetAccessorExcludes",ee[ee.AccessorExcludes=13247]="AccessorExcludes",ee[ee.TypeParameterExcludes=526824]="TypeParameterExcludes",ee[ee.TypeAliasExcludes=788968]="TypeAliasExcludes",ee[ee.AliasExcludes=2097152]="AliasExcludes",ee[ee.ModuleMember=2623475]="ModuleMember",ee[ee.ExportHasLocal=944]="ExportHasLocal",ee[ee.BlockScoped=418]="BlockScoped",ee[ee.PropertyOrAccessor=98308]="PropertyOrAccessor",ee[ee.ClassMember=106500]="ClassMember",ee[ee.ExportSupportsDefaultModifier=112]="ExportSupportsDefaultModifier",ee[ee.ExportDoesNotSupportDefaultModifier=-113]="ExportDoesNotSupportDefaultModifier",ee[ee.Classifiable=2885600]="Classifiable",ee[ee.LateBindingContainer=6256]="LateBindingContainer",ee))(kc||{}),Ly=(re=>(re[re.None=0]="None",re[re.Class=1]="Class",re[re.Interface=2]="Interface",re[re.Reference=4]="Reference",re[re.Tuple=8]="Tuple",re[re.Anonymous=16]="Anonymous",re[re.Mapped=32]="Mapped",re[re.Instantiated=64]="Instantiated",re[re.ObjectLiteral=128]="ObjectLiteral",re[re.EvolvingArray=256]="EvolvingArray",re[re.ObjectLiteralPatternWithComputedProperties=512]="ObjectLiteralPatternWithComputedProperties",re[re.ReverseMapped=1024]="ReverseMapped",re[re.MappingLiteral=2048]="MappingLiteral",re[re.JSLiteral=4096]="JSLiteral",re[re.FreshLiteral=8192]="FreshLiteral",re[re.ArrayLiteral=16384]="ArrayLiteral",re[re.PrimitiveUnion=32768]="PrimitiveUnion",re[re.ContainsWideningType=65536]="ContainsWideningType",re[re.ContainsObjectOrArrayLiteral=131072]="ContainsObjectOrArrayLiteral",re[re.NonInferrableType=262144]="NonInferrableType",re[re.CouldContainTypeVariablesComputed=524288]="CouldContainTypeVariablesComputed",re[re.CouldContainTypeVariables=1048576]="CouldContainTypeVariables",re[re.ClassOrInterface=3]="ClassOrInterface",re[re.RequiresWidening=196608]="RequiresWidening",re[re.PropagatingFlags=458752]="PropagatingFlags",re[re.InstantiatedMapped=96]="InstantiatedMapped",re[re.ObjectTypeKindMask=1343]="ObjectTypeKindMask",re[re.ContainsSpread=2097152]="ContainsSpread",re[re.ObjectRestType=4194304]="ObjectRestType",re[re.InstantiationExpressionType=8388608]="InstantiationExpressionType",re[re.SingleSignatureType=134217728]="SingleSignatureType",re[re.IsClassInstanceClone=16777216]="IsClassInstanceClone",re[re.IdenticalBaseTypeCalculated=33554432]="IdenticalBaseTypeCalculated",re[re.IdenticalBaseTypeExists=67108864]="IdenticalBaseTypeExists",re[re.IsGenericTypeComputed=2097152]="IsGenericTypeComputed",re[re.IsGenericObjectType=4194304]="IsGenericObjectType",re[re.IsGenericIndexType=8388608]="IsGenericIndexType",re[re.IsGenericType=12582912]="IsGenericType",re[re.ContainsIntersections=16777216]="ContainsIntersections",re[re.IsUnknownLikeUnionComputed=33554432]="IsUnknownLikeUnionComputed",re[re.IsUnknownLikeUnion=67108864]="IsUnknownLikeUnion",re[re.IsNeverIntersectionComputed=16777216]="IsNeverIntersectionComputed",re[re.IsNeverIntersection=33554432]="IsNeverIntersection",re[re.IsConstrainedTypeVariable=67108864]="IsConstrainedTypeVariable",re))(Ly||{}),YE=(v=>(v[v.None=0]="None",v[v.HasRestParameter=1]="HasRestParameter",v[v.HasLiteralTypes=2]="HasLiteralTypes",v[v.Abstract=4]="Abstract",v[v.IsVarArgs=8]="IsVarArgs",v[v.HasJsDoc=16]="HasJsDoc",v[v.IsInnerCallChain=64]="IsInnerCallChain",v[v.IsOuterCallChain=128]="IsOuterCallChain",v[v.IsUntypedSignatureInJSFile=256]="IsUntypedSignatureInJSFile",v[v.IsNonInferrable=512]="IsNonInferrable",v[v.IsSignatureCandidateForOverloadFailure=1024]="IsSignatureCandidateForOverloadFailure",v[v.PropagatingFlags=1295]="PropagatingFlags",v[v.CallChainFlags=192]="CallChainFlags",v))(YE||{});var Lh=class{};var XE=(Ae=>(Ae[Ae.None=0]="None",Ae[Ae.TypeChecked=1]="TypeChecked",Ae[Ae.LexicalThis=2]="LexicalThis",Ae[Ae.CaptureThis=4]="CaptureThis",Ae[Ae.CaptureNewTarget=8]="CaptureNewTarget",Ae[Ae.SuperInstance=16]="SuperInstance",Ae[Ae.SuperStatic=32]="SuperStatic",Ae[Ae.ContextChecked=64]="ContextChecked",Ae[Ae.MethodWithSuperPropertyAccessInAsync=128]="MethodWithSuperPropertyAccessInAsync",Ae[Ae.MethodWithSuperPropertyAssignmentInAsync=256]="MethodWithSuperPropertyAssignmentInAsync",Ae[Ae.CaptureArguments=512]="CaptureArguments",Ae[Ae.EnumValuesComputed=1024]="EnumValuesComputed",Ae[Ae.LexicalModuleMergesWithClass=2048]="LexicalModuleMergesWithClass",Ae[Ae.LoopWithCapturedBlockScopedBinding=4096]="LoopWithCapturedBlockScopedBinding",Ae[Ae.ContainsCapturedBlockScopeBinding=8192]="ContainsCapturedBlockScopeBinding",Ae[Ae.CapturedBlockScopedBinding=16384]="CapturedBlockScopedBinding",Ae[Ae.BlockScopedBindingInLoop=32768]="BlockScopedBindingInLoop",Ae[Ae.NeedsLoopOutParameter=65536]="NeedsLoopOutParameter",Ae[Ae.AssignmentsMarked=131072]="AssignmentsMarked",Ae[Ae.ContainsConstructorReference=262144]="ContainsConstructorReference",Ae[Ae.ConstructorReference=536870912]="ConstructorReference",Ae[Ae.ContainsClassWithPrivateIdentifiers=1048576]="ContainsClassWithPrivateIdentifiers",Ae[Ae.ContainsSuperPropertyInStaticInitializer=2097152]="ContainsSuperPropertyInStaticInitializer",Ae[Ae.InCheckIdentifier=4194304]="InCheckIdentifier",Ae[Ae.PartiallyTypeChecked=8388608]="PartiallyTypeChecked",Ae[Ae.LazyFlags=539358128]="LazyFlags",Ae))(XE||{});var AM=["LDMud","FluffOS","Standard"];var rN=(t=>(t[t.Classic=1]="Classic",t))(rN||{});var My=(T=>(T[T.None=0]="None",T[T.Auto=1]="Auto",T[T.Loop=2]="Loop",T[T.Unique=3]="Unique",T[T.Node=4]="Node",T[T.KindMask=7]="KindMask",T[T.ReservedInNestedScopes=8]="ReservedInNestedScopes",T[T.Optimistic=16]="Optimistic",T[T.FileLevel=32]="FileLevel",T[T.AllowNameSubstitution=64]="AllowNameSubstitution",T))(My||{});var AF={reference:{args:[{name:"types",optional:!0,captureSpan:!0},{name:"lib",optional:!0,captureSpan:!0},{name:"path",optional:!0,captureSpan:!0},{name:"no-default-lib",optional:!0},{name:"resolution-mode",optional:!0},{name:"preserve",optional:!0}],kind:1},"amd-dependency":{args:[{name:"path"},{name:"name",optional:!0}],kind:1},"amd-module":{args:[{name:"name"}],kind:1},"this-object":{args:[{name:"name"}],kind:2},this_object:{args:[{name:"name"}],kind:2},"lpc-check":{kind:2},"lpc-nocheck":{kind:2}};function M(e,t,i,o,c,u,p){return{code:e,category:t,key:i,message:o,reportsUnnecessary:c,elidedInCompatabilityPyramid:u,reportsDeprecated:p}}var N={Structs_not_supported:M(9001,1,"Structs_not_supported_9001","Structs not supported."),Semicolon_expected:M(9002,1,"Semicolon_expected_9002","Semicolon expected."),Macro_already_defined_0:M(9003,1,"Macro_already_defined_0_9003","Macro already defined '{0}'."),Missing_argument_for_macro_0:M(9004,1,"Missing_argument_for_macro_0_9004","Missing argument for macro '{0}'."),Else_directive_without_if:M(9005,1,"Else_directive_without_if_9005","#else directive without #if."),Elseif_directive_without_if:M(9007,1,"Elseif_directive_without_if_9007","#elseif directive without #if."),Unterminated_directive:M(9006,1,"Unterminated_directive_9006","Unterminated directive."),Expected_newline_after_directive:M(9008,1,"Expected_newline_after_directive_9008","Expected newline after directive."),Pragma_directive_requires_at_least_one_argument:M(9009,1,"Pragma_directive_requires_at_least_one_argument_9009","#pragma directive requires at least one argument."),Unexpected_endIf_directive:M(9010,1,"Unexpected_endIf_directive_9010","Unexpected #endIf directive."),Catch_expression_modifier_expected:M(9011,1,"Catch_expression_modifier_expected_9011","Catch expression modifier expected."),Unterminated_macro_arguments_list:M(9012,1,"Unterminated_macro_arguments_list_9012","Unterminated macro arguments list."),Unmatched_conditional_directive:M(9013,1,"Unmatched_conditional_directive_9013","Unmatched conditional directive."),Identifier_or_string_expected:M(9014,1,"Identifier_or_string_expected_9014","Identifier or string expected."),Character_literal_must_be_one_character:M(9015,1,"Character_literal_must_be_one_character_9015","Character literal must be one character."),Stringized_literal_only_valid_in_macro:M(9016,1,"Stringized_literal_only_valid_in_macro_9016","Stringized literal only valid in macro."),Macro_parameter_0_not_found:M(9017,1,"Macro_parameter_0_not_found_9017","Macro parameter '{0}' not found."),Cannot_find_include_file_0:M(9018,1,"Cannot_find_include_file_0_9018","Cannot find include file '{0}'."),Pragma_option_expected:M(9019,1,"Pragma_option_expected_9019","Pragma option expected."),File_is_master_file_specified_here:M(9020,1,"File_is_master_file_specified_here_9020","File is master file specified here."),Cannot_find_0_Do_you_need_to_change_your_driver_type:M(9021,1,"Cannot_find_0_Do_you_need_to_change_your_driver_type_9021","Cannot find '{0}'. Do you need to change your driver type?"),When_comparing_types_check_that_the_objectStructure_is_compatible_with_the_target_type:M(9022,3,"When_comparing_types_check_that_the_objectStructure_is_compatible_with_the_target_type_6699","When comparing types, check that the object structure is compatible with the target type."),Super_access_can_only_be_used_in_a_file_that_inherits_from_another_file:M(9023,1,"Super_access_can_only_be_used_in_a_file_that_inherits_from_another_file_9023","Super access can only be used in a file that inherits from another file."),LPCDoc_var_tag_should_have_a_type_annotation:M(9024,1,"LPCDoc_var_tag_should_have_a_type_annotation_9024","LPCDoc @var tag should have a type annotation."),Include_file_0_contains_one_or_more_errors:M(9025,1,"Include_file_0_contains_one_or_more_errors_9025","Include file '{0}' contains one or more errors."),LPCDoc_var_tags_must_be_in_their_own_LPCDoc_comment:M(9026,1,"LPCDoc_var_tags_must_be_in_their_own_LPCDoc_comment_9026","LPCDoc @var tags must be in their own LPCDoc comment."),LPCDoc_var_tags_can_only_annotate_inherited_variables_0_is_a_local_variable:M(9027,1,"LPCDoc_var_tags_can_only_annotate_inherited_variables_0_is_a_local_variable_9027","LPCDoc @var tags can only annotate inherited variables. '{0}' is a local variable."),LPCDoc_var_tag_should_provide_a_variable_name:M(9028,1,"LPCDoc_var_tag_should_provide_a_variable_name_9028","LPCDoc @var tag should provide a variable name."),Circular_include_detected_0_to_1:M(9029,1,"Circular_include_detected_0_to_1_9029","Circular include detected '{0}' -> '{1}'."),Locale_0_is_not_supported:M(9030,1,"Locale_0_is_not_supported_9030","Locale '{0}' is not supported."),No_errors:M(9031,3,"No_errors_9031","No errors - That is some happy LPC."),Catch_expression_cannot_also_have_a_block:M(9032,1,"Catch_expression_cannot_also_have_a_block_9032","Catch expression cannot also have a block."),_0_expected:M(1005,1,"_0_expected_1005","'{0}' expected."),c_must_be_followed_by_an_ASCII_letter:M(1512,1,"c_must_be_followed_by_an_ASCII_letter_1512","'\\c' must be followed by an ASCII letter."),Undetermined_character_escape:M(1513,1,"Undetermined_character_escape_1513","Undetermined character escape."),Incomplete_quantifier_Digit_expected:M(1505,1,"Incomplete_quantifier_Digit_expected_1505","Incomplete quantifier. Digit expected."),q_is_only_available_inside_character_class:M(1511,1,"q_is_only_available_inside_character_class_1511","'\\q' is only available inside character class."),Unexpected_0_Did_you_mean_to_escape_it_with_backslash:M(1508,1,"Unexpected_0_Did_you_mean_to_escape_it_with_backslash_1508","Unexpected '{0}'. Did you mean to escape it with backslash?"),Numbers_out_of_order_in_quantifier:M(1506,1,"Numbers_out_of_order_in_quantifier_1506","Numbers out of order in quantifier."),Asterisk_Slash_expected:M(1010,1,"Asterisk_Slash_expected_1010","'*/' expected."),Hexadecimal_digit_expected:M(1125,1,"Hexadecimal_digit_expected_1125","Hexadecimal digit expected."),Invalid_character:M(1127,1,"Invalid_character_1127","Invalid character."),can_only_be_used_at_the_start_of_a_file:M(18026,1,"can_only_be_used_at_the_start_of_a_file_18026","'#!' can only be used at the start of a file."),File_appears_to_be_binary:M(1490,1,"File_appears_to_be_binary_1490","File appears to be binary."),Multiple_consecutive_numeric_separators_are_not_permitted:M(6189,1,"Multiple_consecutive_numeric_separators_are_not_permitted_6189","Multiple consecutive numeric separators are not permitted."),Numeric_separators_are_not_allowed_here:M(6188,1,"Numeric_separators_are_not_allowed_here_6188","Numeric separators are not allowed here."),Unterminated_string_literal:M(1002,1,"Unterminated_string_literal_1002","Unterminated string literal."),An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive:M(1198,1,"An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive_1198","An extended Unicode escape value must be between 0x0 and 0x10FFFF inclusive."),Unexpected_end_of_text:M(1126,1,"Unexpected_end_of_text_1126","Unexpected end of text."),Unterminated_Unicode_escape_sequence:M(1199,1,"Unterminated_Unicode_escape_sequence_1199","Unterminated Unicode escape sequence."),Octal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_If_this_was_intended_as_an_escape_sequence_use_the_syntax_0_instead:M(1536,1,"Octal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_If_this_was_intended__1536","Octal escape sequences and backreferences are not allowed in a character class. If this was intended as an escape sequence, use the syntax '{0}' instead."),Octal_escape_sequences_are_not_allowed_Use_the_syntax_0:M(1487,1,"Octal_escape_sequences_are_not_allowed_Use_the_syntax_0_1487","Octal escape sequences are not allowed. Use the syntax '{0}'."),Decimal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class:M(1537,1,"Decimal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_1537","Decimal escape sequences and backreferences are not allowed in a character class."),Escape_sequence_0_is_not_allowed:M(1488,1,"Escape_sequence_0_is_not_allowed_1488","Escape sequence '{0}' is not allowed."),This_character_cannot_be_escaped_in_a_regular_expression:M(1535,1,"This_character_cannot_be_escaped_in_a_regular_expression_1535","This character cannot be escaped in a regular expression."),Octal_literals_are_not_allowed_Use_the_syntax_0:M(1121,1,"Octal_literals_are_not_allowed_Use_the_syntax_0_1121","Octal literals are not allowed. Use the syntax '{0}'."),Binary_digit_expected:M(1177,1,"Binary_digit_expected_1177","Binary digit expected."),Octal_digit_expected:M(1178,1,"Octal_digit_expected_1178","Octal digit expected."),Digit_expected:M(1124,1,"Digit_expected_1124","Digit expected."),Decimals_with_leading_zeros_are_not_allowed:M(1489,1,"Decimals_with_leading_zeros_are_not_allowed_1489","Decimals with leading zeros are not allowed."),A_bigint_literal_cannot_use_exponential_notation:M(1352,1,"A_bigint_literal_cannot_use_exponential_notation_1352","A bigint literal cannot use exponential notation."),A_bigint_literal_must_be_an_integer:M(1353,1,"A_bigint_literal_must_be_an_integer_1353","A bigint literal must be an integer."),An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal:M(1351,1,"An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal_1351","An identifier or keyword cannot immediately follow a numeric literal."),Variable_declaration_not_allowed_at_this_location:M(1440,1,"Variable_declaration_not_allowed_at_this_location_1440","Variable declaration not allowed at this location."),Unknown_keyword_or_identifier_Did_you_mean_0:M(1435,1,"Unknown_keyword_or_identifier_Did_you_mean_0_1435","Unknown keyword or identifier. Did you mean '{0}'?"),Unexpected_keyword_or_identifier:M(1434,1,"Unexpected_keyword_or_identifier_1434","Unexpected keyword or identifier."),Variable_declaration_expected:M(1134,1,"Variable_declaration_expected_1134","Variable declaration expected."),Declaration_expected:M(1146,1,"Declaration_expected_1146","Declaration expected."),Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here:M(1359,1,"Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here_1359","Identifier expected. '{0}' is a reserved word that cannot be used here."),Identifier_expected:M(1003,1,"Identifier_expected_1003","Identifier expected."),An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses:M(17006,1,"An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_ex_17006","An unary expression with the '{0}' operator is not allowed in the left-hand side of an exponentiation expression. Consider enclosing the expression in parentheses."),Unicode_escape_sequence_cannot_appear_here:M(17021,1,"Unicode_escape_sequence_cannot_appear_here_17021","Unicode escape sequence cannot appear here."),The_parser_expected_to_find_a_1_to_match_the_0_token_here:M(1007,1,"The_parser_expected_to_find_a_1_to_match_the_0_token_here_1007","The parser expected to find a '{1}' to match the '{0}' token here."),Keywords_cannot_contain_escape_characters:M(1260,1,"Keywords_cannot_contain_escape_characters_1260","Keywords cannot contain escape characters."),Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_destructuring_assignment_you_might_need_to_wrap_the_whole_assignment_in_parentheses:M(2809,1,"Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_d_2809","Declaration or statement expected. This '=' follows a block of statements, so if you intended to write a destructuring assignment, you might need to wrap the whole assignment in parentheses."),Merge_conflict_marker_encountered:M(1e3,1,"Merge_conflict_marker_encountered_1000","Merge conflict marker encountered."),Expression_expected:M(1001,1,"Expression_expected_1001","Expression expected."),A_default_clause_cannot_appear_more_than_once_in_a_switch_statement:M(1100,1,"A_default_clause_cannot_appear_more_than_once_in_a_switch_statement_1113","A 'default' clause cannot appear more than once in a 'switch' statement."),Cannot_redeclare_block_scoped_variable_0:M(2451,1,"Cannot_redeclare_block_scoped_variable_0_2451","Cannot redeclare block-scoped variable '{0}'."),Duplicate_identifier_0:M(2300,1,"Duplicate_identifier_0_2300","Duplicate identifier '{0}'."),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here:M(2693,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_2693","'{0}' only refers to a type, but is being used as a value here."),Circular_definition_of_import_alias_0:M(2303,1,"Circular_definition_of_import_alias_0_2303","Circular definition of import alias '{0}'."),_0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0:M(2749,1,"_0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0_2749","'{0}' refers to a value, but is being used as a type here. Did you mean 'typeof {0}'?"),Cannot_find_name_0_Did_you_mean_1:M(2552,1,"Cannot_find_name_0_Did_you_mean_1_2552","Cannot find name '{0}'. Did you mean '{1}'?"),_0_is_declared_here:M(2728,3,"_0_is_declared_here_2728","'{0}' is declared here."),No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer:M(18004,1,"No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer_18004","No value exists in scope for the shorthand property '{0}'. Either declare one or provide an initializer."),Cannot_find_name_0:M(2304,1,"Cannot_find_name_0_2304","Cannot find name '{0}'."),_0_is_deprecated:M(6385,2,"_0_is_deprecated_6385","'{0}' is deprecated.",void 0,void 0,!0),The_signature_0_of_1_is_deprecated:M(6387,2,"The_signature_0_of_1_is_deprecated_6387","The signature '{0}' of '{1}' is deprecated.",void 0,void 0,!0),The_declaration_was_marked_as_deprecated_here:M(2798,1,"The_declaration_was_marked_as_deprecated_here_2798","The declaration was marked as deprecated here."),Cannot_assign_to_0_because_it_is_a_function:M(2630,1,"Cannot_assign_to_0_because_it_is_a_function_2630","Cannot assign to '{0}' because it is a function."),Cannot_assign_to_0_because_it_is_not_a_variable:M(2539,1,"Cannot_assign_to_0_because_it_is_not_a_variable_2539","Cannot assign to '{0}' because it is not a variable."),Variable_0_is_used_before_being_assigned:M(2454,1,"Variable_0_is_used_before_being_assigned_2454","Variable '{0}' is used before being assigned."),Unreachable_code_detected:M(7027,1,"Unreachable_code_detected_7027","Unreachable code detected.",!0),_0_is_declared_but_its_value_is_never_read:M(6133,1,"_0_is_declared_but_its_value_is_never_read_6133","'{0}' is declared but its value is never read.",!0),All_variables_are_unused:M(6199,1,"All_variables_are_unused_6199","All variables are unused.",!0),A_function_returning_never_cannot_have_a_reachable_end_point:M(2534,1,"A_function_returning_never_cannot_have_a_reachable_end_point_2534","A function returning 'never' cannot have a reachable end point."),A_function_whose_declared_type_is_not_void_must_return_a_value:M(2355,0,"A_function_whose_declared_type_is_not_void_must_return_a_value_2355","A function whose declared type is not 'void' must return a value."),Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined:M(2366,1,"Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined_2366","Function lacks ending return statement and return type does not include 'undefined'."),Not_all_code_paths_return_a_value:M(7030,1,"Not_all_code_paths_return_a_value_7030","Not all code paths return a value."),A_0_parameter_must_be_the_first_parameter:M(2680,1,"A_0_parameter_must_be_the_first_parameter_2680","A '{0}' parameter must be the first parameter."),A_rest_parameter_must_be_of_an_array_type:M(2370,1,"A_rest_parameter_must_be_of_an_array_type_2370","A rest parameter must be of an array type."),File_0_not_found:M(6053,1,"File_0_not_found_6053","File '{0}' not found."),A_file_cannot_have_a_reference_to_itself:M(1006,1,"A_file_cannot_have_a_reference_to_itself_1006","A file cannot have a reference to itself."),Cannot_read_file_0_Colon_1:M(5012,1,"Cannot_read_file_0_Colon_1_5012","Cannot read file '{0}': {1}."),Already_included_file_name_0_differs_from_file_name_1_only_in_casing:M(1261,1,"Already_included_file_name_0_differs_from_file_name_1_only_in_casing_1261","Already included file name '{0}' differs from file name '{1}' only in casing."),File_name_0_differs_from_already_included_file_name_1_only_in_casing:M(1149,1,"File_name_0_differs_from_already_included_file_name_1_only_in_casing_1149","File name '{0}' differs from already included file name '{1}' only in casing."),_0_is_of_type_unknown:M(18046,1,"_0_is_of_type_unknown_18046","'{0}' is of type 'unknown'."),Object_is_of_type_unknown:M(2571,1,"Object_is_of_type_unknown_2571","Object is of type 'unknown'."),Cannot_invoke_an_object_which_is_possibly_null_or_undefined:M(2723,1,"Cannot_invoke_an_object_which_is_possibly_null_or_undefined_2723","Cannot invoke an object which is possibly 'null' or 'undefined'."),Cannot_invoke_an_object_which_is_possibly_null:M(2721,1,"Cannot_invoke_an_object_which_is_possibly_null_2721","Cannot invoke an object which is possibly 'null'."),Cannot_invoke_an_object_which_is_possibly_undefined:M(2722,1,"Cannot_invoke_an_object_which_is_possibly_undefined_2722","Cannot invoke an object which is possibly 'undefined'."),Are_you_missing_a_semicolon:M(2734,1,"Are_you_missing_a_semicolon_2734","Are you missing a semicolon?"),Value_of_type_0_is_not_callable_Did_you_mean_to_include_new:M(2348,1,"Value_of_type_0_is_not_callable_Did_you_mean_to_include_new_2348","Value of type '{0}' is not callable. Did you mean to include 'new'?"),Type_0_has_no_call_signatures:M(2757,1,"Type_0_has_no_call_signatures_2757","Type '{0}' has no call signatures."),Type_0_has_no_construct_signatures:M(2761,1,"Type_0_has_no_construct_signatures_2761","Type '{0}' has no construct signatures."),Not_all_constituents_of_type_0_are_callable:M(2756,1,"Not_all_constituents_of_type_0_are_callable_2756","Not all constituents of type '{0}' are callable."),Not_all_constituents_of_type_0_are_constructable:M(2760,1,"Not_all_constituents_of_type_0_are_constructable_2760","Not all constituents of type '{0}' are constructable."),No_constituent_of_type_0_is_callable:M(2755,1,"No_constituent_of_type_0_is_callable_2755","No constituent of type '{0}' is callable."),No_constituent_of_type_0_is_constructable:M(2759,1,"No_constituent_of_type_0_is_constructable_2759","No constituent of type '{0}' is constructable."),Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_other:M(2758,1,"Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_2758","Each member of the union type '{0}' has signatures, but none of those signatures are compatible with each other."),Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_with_each_other:M(2762,1,"Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_2762","Each member of the union type '{0}' has construct signatures, but none of those signatures are compatible with each other."),This_expression_is_not_callable:M(2349,1,"This_expression_is_not_callable_2349","This expression is not callable."),This_expression_is_not_constructable:M(2351,1,"This_expression_is_not_constructable_2351","This expression is not constructable."),An_expression_of_type_void_cannot_be_tested_for_truthiness:M(1345,1,"An_expression_of_type_void_cannot_be_tested_for_truthiness_1345","An expression of type 'void' cannot be tested for truthiness."),This_condition_will_always_return_0:M(2845,1,"This_condition_will_always_return_0_2845","This condition will always return '{0}'."),This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_instead:M(2774,1,"This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_2774","This condition will always return true since this function is always defined. Did you mean to call it instead?"),The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead:M(2447,1,"The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead_2447","The '{0}' operator is not allowed for boolean types. Consider using '{1}' instead."),The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type:M(2362,1,"The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type_2362","The left-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type."),The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type:M(2363,1,"The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type_2363","The right-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type."),This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value:M(2839,1,"This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value_2839","This condition will always return '{0}' since JavaScript compares objects by reference, not value."),Left_side_of_comma_operator_is_unused_and_has_no_side_effects:M(2695,1,"Left_side_of_comma_operator_is_unused_and_has_no_side_effects_2695","Left side of comma operator is unused and has no side effects.",!0),The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access:M(2364,1,"The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access_2364","The left-hand side of an assignment expression must be a variable or a property access."),Did_you_mean_to_use_new_with_this_expression:M(6213,3,"Did_you_mean_to_use_new_with_this_expression_6213","Did you mean to use 'new' with this expression?"),Operator_0_cannot_be_applied_to_types_1_and_2:M(2365,1,"Operator_0_cannot_be_applied_to_types_1_and_2_2365","Operator '{0}' cannot be applied to types '{1}' and '{2}'."),This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap:M(2367,1,"This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap_2367","This comparison appears to be unintentional because the types '{0}' and '{1}' have no overlap."),Did_you_mean_to_call_this_expression:M(6212,3,"Did_you_mean_to_call_this_expression_6212","Did you mean to call this expression?"),_0_was_also_declared_here:M(6203,3,"_0_was_also_declared_here_6203","'{0}' was also declared here."),and_here:M(6204,3,"and_here_6204","and here."),The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access:M(2779,1,"The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access_2779","The left-hand side of an assignment expression may not be an optional property access."),Did_you_mean_0:M(1369,3,"Did_you_mean_0_1369","Did you mean '{0}'?"),An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type:M(2356,1,"An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type_2356","An arithmetic operand must be of type 'any', 'number', 'bigint' or an enum type."),The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access:M(2357,1,"The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access_2357","The operand of an increment or decrement operator must be a variable or a property access."),The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access:M(2777,1,"The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access_2777","The operand of an increment or decrement operator may not be an optional property access."),Operator_0_cannot_be_applied_to_type_1:M(2736,1,"Operator_0_cannot_be_applied_to_type_1_2736","Operator '{0}' cannot be applied to type '{1}'."),The_body_of_an_if_statement_cannot_be_the_empty_statement:M(1313,1,"The_body_of_an_if_statement_cannot_be_the_empty_statement_1313","The body of an 'if' statement cannot be the empty statement."),Index_signature_in_type_0_only_permits_reading:M(2542,1,"Index_signature_in_type_0_only_permits_reading_2542","Index signature in type '{0}' only permits reading."),Property_0_is_used_before_being_assigned:M(2565,1,"Property_0_is_used_before_being_assigned_2565","Property '{0}' is used before being assigned."),All_declarations_of_0_must_have_identical_modifiers:M(2687,1,"All_declarations_of_0_must_have_identical_modifiers_2687","All declarations of '{0}' must have identical modifiers."),Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1:M(2481,1,"Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1_2481","Cannot initialize outer scoped variable '{0}' in the same scope as block scoped declaration '{1}'."),Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_type_2:M(2717,1,"Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_t_2717","Subsequent property declarations must have the same type. Property '{0}' must be of type '{1}', but here has type '{2}'."),Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_type_2:M(2403,1,"Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_t_2403","Subsequent variable declarations must have the same type. Variable '{0}' must be of type '{1}', but here has type '{2}'."),Type_instantiation_is_excessively_deep_and_possibly_infinite:M(2589,1,"Type_instantiation_is_excessively_deep_and_possibly_infinite_2589","Type instantiation is excessively deep and possibly infinite."),Object_literal_s_property_0_implicitly_has_an_1_type:M(7018,1,"Object_literal_s_property_0_implicitly_has_an_1_type_7018","Object literal's property '{0}' implicitly has an '{1}' type."),Type_arguments_for_0_circularly_reference_themselves:M(4109,1,"Type_arguments_for_0_circularly_reference_themselves_4109","Type arguments for '{0}' circularly reference themselves."),Tuple_type_arguments_circularly_reference_themselves:M(4110,1,"Tuple_type_arguments_circularly_reference_themselves_4110","Tuple type arguments circularly reference themselves."),A_return_statement_can_only_be_used_within_a_function_body:M(1108,1,"A_return_statement_can_only_be_used_within_a_function_body_1108","A 'return' statement can only be used within a function body."),Return_type_annotation_circularly_references_itself:M(2577,1,"Return_type_annotation_circularly_references_itself_2577","Return type annotation circularly references itself."),_0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions:M(7023,1,"_0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_reference_7023","'{0}' implicitly has return type 'any' because it does not have a return type annotation and is referenced directly or indirectly in one of its return expressions."),Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions:M(7024,1,"Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_ref_7024","Function implicitly has return type 'any' because it does not have a return type annotation and is referenced directly or indirectly in one of its return expressions."),Types_of_property_0_are_incompatible:M(2326,1,"Types_of_property_0_are_incompatible_2326","Types of property '{0}' are incompatible."),Call_signature_return_types_0_and_1_are_incompatible:M(2202,1,"Call_signature_return_types_0_and_1_are_incompatible_2202","Call signature return types '{0}' and '{1}' are incompatible.",void 0,!0),Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1:M(2204,1,"Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1_2204","Call signatures with no arguments have incompatible return types '{0}' and '{1}'.",void 0,!0),Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target:M(2626,1,"Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target_2626","Type at position {0} in source is not compatible with type at position {1} in target."),Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target:M(2627,1,"Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target_2627","Type at positions {0} through {1} in source is not compatible with type at position {2} in target."),The_types_of_0_are_incompatible_between_these_types:M(2200,1,"The_types_of_0_are_incompatible_between_these_types_2200","The types of '{0}' are incompatible between these types."),The_types_returned_by_0_are_incompatible_between_these_types:M(2201,1,"The_types_returned_by_0_are_incompatible_between_these_types_2201","The types returned by '{0}' are incompatible between these types."),Type_0_is_not_comparable_to_type_1:M(2678,1,"Type_0_is_not_comparable_to_type_1_2678","Type '{0}' is not comparable to type '{1}'."),Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated:M(2719,1,"Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated_2719","Type '{0}' is not assignable to type '{1}'. Two different types with this name exist, but they are unrelated."),Type_0_is_not_assignable_to_type_1_Did_you_mean_2:M(2820,1,"Type_0_is_not_assignable_to_type_1_Did_you_mean_2_2820","Type '{0}' is not assignable to type '{1}'. Did you mean '{2}'?"),Type_0_is_not_assignable_to_type_1:M(2322,1,"Type_0_is_not_assignable_to_type_1_2322","Type '{0}' is not assignable to type '{1}'."),Argument_of_type_0_is_not_assignable_to_parameter_of_type_1:M(2345,1,"Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_2345","Argument of type '{0}' is not assignable to parameter of type '{1}'."),_0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible:M(2692,1,"_0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible_2692","'{0}' is a primitive, but '{1}' is a wrapper object. Prefer using '{0}' when possible."),The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead:M(2696,1,"The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead_2696","The 'Object' type is assignable to very few other types. Did you mean to use the 'any' type instead?"),Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it:M(2560,1,"Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it_2560","Value of type '{0}' has no properties in common with type '{1}'. Did you mean to call it?"),Type_0_has_no_properties_in_common_with_type_1:M(2559,1,"Type_0_has_no_properties_in_common_with_type_1_2559","Type '{0}' has no properties in common with type '{1}'."),Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_write_2:M(2561,1,"Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_writ_2561","Object literal may only specify known properties, but '{0}' does not exist in type '{1}'. Did you mean to write '{2}'?"),Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1:M(2353,1,"Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1_2353","Object literal may only specify known properties, and '{0}' does not exist in type '{1}'."),The_containing_function_or_module_body_is_too_large_for_control_flow_analysis:M(2563,1,"The_containing_function_or_module_body_is_too_large_for_control_flow_analysis_2563","The containing function or module body is too large for control flow analysis."),Expression_produces_a_union_type_that_is_too_complex_to_represent:M(2590,1,"Expression_produces_a_union_type_that_is_too_complex_to_represent_2590","Expression produces a union type that is too complex to represent."),Cannot_find_global_type_0:M(2318,1,"Cannot_find_global_type_0_2318","Cannot find global type '{0}'."),Global_type_0_must_be_a_class_or_interface_type:M(2316,1,"Global_type_0_must_be_a_class_or_interface_type_2316","Global type '{0}' must be a class or interface type."),Global_type_0_must_have_1_type_parameter_s:M(2317,1,"Global_type_0_must_have_1_type_parameter_s_2317","Global type '{0}' must have {1} type parameter(s)."),Excessive_complexity_comparing_types_0_and_1:M(2859,1,"Excessive_complexity_comparing_types_0_and_1_2859","Excessive complexity comparing types '{0}' and '{1}'."),Excessive_stack_depth_comparing_types_0_and_1:M(2321,1,"Excessive_stack_depth_comparing_types_0_and_1_2321","Excessive stack depth comparing types '{0}' and '{1}'."),The_last_overload_gave_the_following_error:M(2770,1,"The_last_overload_gave_the_following_error_2770","The last overload gave the following error."),No_overload_matches_this_call:M(2769,1,"No_overload_matches_this_call_2769","No overload matches this call."),The_last_overload_is_declared_here:M(2771,1,"The_last_overload_is_declared_here_2771","The last overload is declared here."),Overload_0_of_1_2_gave_the_following_error:M(2772,1,"Overload_0_of_1_2_gave_the_following_error_2772","Overload {0} of {1}, '{2}', gave the following error."),A_spread_argument_must_either_have_a_tuple_type_or_be_passed_to_a_rest_parameter:M(2556,1,"A_spread_argument_must_either_have_a_tuple_type_or_be_passed_to_a_rest_parameter_2556","A spread argument must either have a tuple type or be passed to a rest parameter."),Expected_0_arguments_but_got_1:M(2554,1,"Expected_0_arguments_but_got_1_2554","Expected {0} arguments, but got {1}."),Expected_at_least_0_arguments_but_got_1:M(2555,1,"Expected_at_least_0_arguments_but_got_1_2555","Expected at least {0} arguments, but got {1}."),No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments:M(2575,1,"No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments_2575","No overload expects {0} arguments, but overloads do exist that expect either {1} or {2} arguments."),An_argument_for_0_was_not_provided:M(6210,3,"An_argument_for_0_was_not_provided_6210","An argument for '{0}' was not provided."),An_argument_matching_this_binding_pattern_was_not_provided:M(6211,3,"An_argument_matching_this_binding_pattern_was_not_provided_6211","An argument matching this binding pattern was not provided."),Arguments_for_the_rest_parameter_0_were_not_provided:M(6236,1,"Arguments_for_the_rest_parameter_0_were_not_provided_6236","Arguments for the rest parameter '{0}' were not provided."),The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_are_not_externally_visible:M(2793,1,"The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_2793","The call would have succeeded against this implementation, but implementation signatures of overloads are not externally visible."),Cannot_read_file_0:M(5083,1,"Cannot_read_file_0_5083","Cannot read file '{0}'."),The_files_list_in_config_file_0_is_empty:M(18002,1,"The_files_list_in_config_file_0_is_empty_18002","The 'files' list in config file '{0}' is empty."),Compiler_option_0_requires_a_value_of_type_1:M(5024,1,"Compiler_option_0_requires_a_value_of_type_1_5024","Compiler option '{0}' requires a value of type {1}."),File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0:M(5010,1,"File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0_5010","File specification cannot end in a recursive directory wildcard ('**'): '{0}'."),File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0:M(5065,1,"File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildca_5065","File specification cannot contain a parent directory ('..') that appears after a recursive directory wildcard ('**'): '{0}'."),Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2:M(6183,3,"Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_6183","Reusing resolution of module '{0}' from '{1}' of old program, it was successfully resolved to '{2}'."),Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:M(6184,3,"Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package__6184","Reusing resolution of module '{0}' from '{1}' of old program, it was successfully resolved to '{2}' with Package ID '{3}'."),Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved:M(6389,3,"Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved_6389","Reusing resolution of module '{0}' from '{1}' of old program, it was not resolved."),Expected_0_type_arguments_but_got_1:M(2558,1,"Expected_0_type_arguments_but_got_1_2558","Expected {0} type arguments, but got {1}."),No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments:M(2743,1,"No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments_2743","No overload expects {0} type arguments, but overloads do exist that expect either {1} or {2} type arguments."),Cannot_find_object_0:M(2307,1,"Cannot_find_object_0_2307","Cannot find object '{0}'."),Module_0_was_resolved_to_1_but_allowArbitraryExtensions_is_not_set:M(6263,1,"Module_0_was_resolved_to_1_but_allowArbitraryExtensions_is_not_set_6263","Module '{0}' was resolved to '{1}', but '--allowArbitraryExtensions' is not set."),File_0_is_not_a_module:M(2306,1,"File_0_is_not_a_module_2306","File '{0}' is not a module."),Clone_object_can_only_accept_an_object_name_and_an_optional_set_of_attributes_as_arguments_1450:M(1450,3,"Clone_object_can_only_accept_an_object_name_and_an_optional_set_of_attributes_as_arguments_1450","Clone object can only accept an object name and an optional set of attributes as arguments"),Clone_object_s_specifier_must_be_of_type_string_but_here_has_type_0:M(7036,1,"Clone_object_s_specifier_must_be_of_type_string_but_here_has_type_0_7036","Clone object's specifier must be of type 'string', but here has type '{0}'."),Module_0_was_resolved_as_ambient_module_declared_in_1_since_this_file_was_not_modified:M(6145,3,"Module_0_was_resolved_as_ambient_module_declared_in_1_since_this_file_was_not_modified_6145","Module '{0}' was resolved as ambient module declared in '{1}' since this file was not modified."),Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1:M(6144,3,"Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1_6144","Module '{0}' was resolved as locally declared ambient module in file '{1}'."),Resolving_module_0_from_1:M(6086,3,"Resolving_module_0_from_1_6086","======== Resolving module '{0}' from '{1}'. ========"),Using_compiler_options_of_project_reference_redirect_0:M(6215,3,"Using_compiler_options_of_project_reference_redirect_0_6215","Using compiler options of project reference redirect '{0}'."),Resolution_for_module_0_was_found_in_cache_from_location_1:M(6147,3,"Resolution_for_module_0_was_found_in_cache_from_location_1_6147","Resolution for module '{0}' was found in cache from location '{1}'."),Module_resolution_kind_is_not_specified_using_0:M(6088,3,"Module_resolution_kind_is_not_specified_using_0_6088","Module resolution kind is not specified, using '{0}'."),Explicitly_specified_module_resolution_kind_Colon_0:M(6087,3,"Explicitly_specified_module_resolution_kind_Colon_0_6087","Explicitly specified module resolution kind: '{0}'."),Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2:M(6218,3,"Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2_6218","======== Module name '{0}' was successfully resolved to '{1}' with Package ID '{2}'. ========"),Module_name_0_was_successfully_resolved_to_1:M(6089,3,"Module_name_0_was_successfully_resolved_to_1_6089","======== Module name '{0}' was successfully resolved to '{1}'. ========"),Module_name_0_was_not_resolved:M(6090,3,"Module_name_0_was_not_resolved_6090","======== Module name '{0}' was not resolved. ========"),Resolving_real_path_for_0_result_1:M(6130,3,"Resolving_real_path_for_0_result_1_6130","Resolving real path for '{0}', result '{1}'."),rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0:M(6107,3,"rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0_6107","'rootDirs' option is set, using it to resolve relative module name '{0}'."),Checking_if_0_is_the_longest_matching_prefix_for_1_2:M(6104,3,"Checking_if_0_is_the_longest_matching_prefix_for_1_2_6104","Checking if '{0}' is the longest matching prefix for '{1}' - '{2}'."),Longest_matching_prefix_for_0_is_1:M(6108,3,"Longest_matching_prefix_for_0_is_1_6108","Longest matching prefix for '{0}' is '{1}'."),Loading_0_from_the_root_dir_1_candidate_location_2:M(6109,3,"Loading_0_from_the_root_dir_1_candidate_location_2_6109","Loading '{0}' from the root dir '{1}', candidate location '{2}'."),Trying_other_entries_in_rootDirs:M(6110,3,"Trying_other_entries_in_rootDirs_6110","Trying other entries in 'rootDirs'."),Module_resolution_using_rootDirs_has_failed:M(6111,3,"Module_resolution_using_rootDirs_has_failed_6111","Module resolution using 'rootDirs' has failed."),File_0_exists_use_it_as_a_name_resolution_result:M(6097,3,"File_0_exists_use_it_as_a_name_resolution_result_6097","File '{0}' exists - use it as a name resolution result."),File_0_does_not_exist:M(6096,3,"File_0_does_not_exist_6096","File '{0}' does not exist."),Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0:M(6417,3,"Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0_6417","Searching all ancestor node_modules directories for preferred extensions: {0}."),Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0:M(6418,3,"Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0_6418","Searching all ancestor node_modules directories for fallback extensions: {0}."),Directory_0_does_not_exist_skipping_all_lookups_in_it:M(6148,3,"Directory_0_does_not_exist_skipping_all_lookups_in_it_6148","Directory '{0}' does not exist, skipping all lookups in it."),File_name_0_has_a_1_extension_stripping_it:M(6132,3,"File_name_0_has_a_1_extension_stripping_it_6132","File name '{0}' has a '{1}' extension - stripping it."),Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambiguity:M(2308,1,"Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambig_2308","Module {0} has already exported a member named '{1}'. Consider explicitly re-exporting to resolve the ambiguity."),You_cannot_rename_this_element:M(8e3,1,"You_cannot_rename_this_element_8000","You cannot rename this element."),You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library:M(8001,1,"You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library_8001","You cannot rename elements that are defined in the standard TypeScript library."),You_cannot_rename_a_module_via_a_global_import:M(8031,1,"You_cannot_rename_a_module_via_a_global_import_8031","You cannot rename a module via a global import."),Add_missing_comma_for_object_member_completion_0:M(95187,3,"Add_missing_comma_for_object_member_completion_0_95187","Add missing comma for object member completion '{0}'."),Duplicate_index_signature_for_type_0:M(2374,1,"Duplicate_index_signature_for_type_0_2374","Duplicate index signature for type '{0}'."),Type_0_is_not_generic:M(2315,1,"Type_0_is_not_generic_2315","Type '{0}' is not generic."),Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the_other_If_this_was_intentional_convert_the_expression_to_unknown_first:M(2352,1,"Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the__2352","Conversion of type '{0}' to type '{1}' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first."),Type_alias_0_circularly_references_itself:M(2456,1,"Type_alias_0_circularly_references_itself_2456","Type alias '{0}' circularly references itself."),An_element_access_expression_should_take_an_argument:M(1011,1,"An_element_access_expression_should_take_an_argument_1011","An element access expression should take an argument."),Type_0_is_generic_and_can_only_be_indexed_for_reading:M(2862,1,"Type_0_is_generic_and_can_only_be_indexed_for_reading_2862","Type '{0}' is generic and can only be indexed for reading."),Type_0_cannot_be_used_to_index_type_1:M(2536,1,"Type_0_cannot_be_used_to_index_type_1_2536","Type '{0}' cannot be used to index type '{1}'."),Type_0_cannot_be_used_as_an_index_type:M(2538,1,"Type_0_cannot_be_used_as_an_index_type_2538","Type '{0}' cannot be used as an index type."),Property_0_does_not_exist_on_type_1:M(2339,1,"Property_0_does_not_exist_on_type_1_2339","Property '{0}' does not exist on type '{1}'."),Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number:M(7015,1,"Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number_7015","Element implicitly has an 'any' type because index expression is not of type 'number'."),Property_0_does_not_exist_on_type_1_Did_you_mean_2:M(2551,1,"Property_0_does_not_exist_on_type_1_Did_you_mean_2_2551","Property '{0}' does not exist on type '{1}'. Did you mean '{2}'?"),Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1:M(7052,1,"Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1_7052","Element implicitly has an 'any' type because type '{0}' has no index signature. Did you mean to call '{1}'?"),No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1:M(7054,1,"No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1_7054","No index signature with a parameter of type '{0}' was found on type '{1}'."),Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1:M(7053,1,"Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1_7053","Element implicitly has an 'any' type because expression of type '{0}' can't be used to index type '{1}'."),Type_0_has_no_matching_index_signature_for_type_1:M(2537,1,"Type_0_has_no_matching_index_signature_for_type_1_2537","Type '{0}' has no matching index signature for type '{1}'."),Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator:M(2549,1,"Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns__2549","Type '{0}' is not an array type or a string type or does not have a '[Symbol.iterator]()' method that returns an iterator."),Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator:M(2548,1,"Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator_2548","Type '{0}' is not an array type or does not have a '[Symbol.iterator]()' method that returns an iterator."),Type_0_is_not_an_array_type_or_a_string_type:M(2495,1,"Type_0_is_not_an_array_type_or_a_string_type_2495","Type '{0}' is not an array type or a string type."),Type_0_is_not_an_array_type:M(2461,1,"Type_0_is_not_an_array_type_2461","Type '{0}' is not an array type."),A_type_literal_property_cannot_have_an_initializer:M(1247,1,"A_type_literal_property_cannot_have_an_initializer_1247","A type literal property cannot have an initializer."),A_mapped_type_may_not_declare_properties_or_methods:M(7061,1,"A_mapped_type_may_not_declare_properties_or_methods_7061","A mapped type may not declare properties or methods."),Property_0_may_not_exist_on_type_1_Did_you_mean_2:M(2568,1,"Property_0_may_not_exist_on_type_1_Did_you_mean_2_2568","Property '{0}' may not exist on type '{1}'. Did you mean '{2}'?"),A_computed_property_name_must_be_of_type_string_number_symbol_or_any:M(2464,1,"A_computed_property_name_must_be_of_type_string_number_symbol_or_any_2464","A computed property name must be of type 'string', 'number', 'symbol', or 'any'."),Property_0_was_also_declared_here:M(2733,1,"Property_0_was_also_declared_here_2733","Property '{0}' was also declared here."),Duplicate_property_0:M(2718,1,"Duplicate_property_0_2718","Duplicate property '{0}'."),Type_0_may_represent_a_primitive_value_which_is_not_permitted_as_the_right_operand_of_the_in_operator:M(2638,1,"Type_0_may_represent_a_primitive_value_which_is_not_permitted_as_the_right_operand_of_the_in_operato_2638","Type '{0}' may represent a primitive value, which is not permitted as the right operand of the 'in' operator."),Declaration_name_conflicts_with_built_in_global_identifier_0:M(2397,1,"Declaration_name_conflicts_with_built_in_global_identifier_0_2397","Declaration name conflicts with built-in global identifier '{0}'."),The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer:M(1189,1,"The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer_1189","The variable declaration of a 'for...in' statement cannot have an initializer."),The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any:M(2405,1,"The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any_2405","The left-hand side of a 'for...in' statement must be of type 'string' or 'any'."),The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access:M(2406,1,"The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access_2406","The left-hand side of a 'for...in' statement must be a variable or a property access."),The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access:M(2780,1,"The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access_2780","The left-hand side of a 'for...in' statement may not be an optional property access."),The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_here_has_type_0:M(2407,1,"The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_2407","The right-hand side of a 'for...in' statement must be of type 'any', an object type or a type parameter, but here has type '{0}'."),A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation:M(2371,1,"A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation_2371","A parameter initializer is only allowed in a function or constructor implementation."),The_value_0_cannot_be_used_here:M(18050,1,"The_value_0_cannot_be_used_here_18050","The value '{0}' cannot be used here."),_0_is_possibly_undefined:M(18048,1,"_0_is_possibly_undefined_18048","'{0}' is possibly 'undefined'."),Object_is_possibly_undefined:M(2532,1,"Object_is_possibly_undefined_2532","Object is possibly 'undefined'."),The_expected_type_comes_from_the_return_type_of_this_signature:M(6502,3,"The_expected_type_comes_from_the_return_type_of_this_signature_6502","The expected type comes from the return type of this signature."),_0_needs_an_explicit_type_annotation:M(2782,3,"_0_needs_an_explicit_type_annotation_2782","'{0}' needs an explicit type annotation."),Overload_signatures_must_all_be_public_private_or_protected:M(2385,1,"Overload_signatures_must_all_be_public_private_or_protected_2385","Overload signatures must all be public, private or protected."),Function_overload_must_not_be_static:M(2388,1,"Function_overload_must_not_be_static_2388","Function overload must not be static."),Function_implementation_name_must_be_0:M(2389,1,"Function_implementation_name_must_be_0_2389","Function implementation name must be '{0}'."),Function_implementation_is_missing_or_not_immediately_following_the_declaration:M(2391,1,"Function_implementation_is_missing_or_not_immediately_following_the_declaration_2391","Function implementation is missing or not immediately following the declaration."),Duplicate_function_implementation:M(2393,1,"Duplicate_function_implementation_2393","Duplicate function implementation."),Class_declaration_cannot_implement_overload_list_for_0:M(2813,1,"Class_declaration_cannot_implement_overload_list_for_0_2813","Class declaration cannot implement overload list for '{0}'."),Function_with_bodies_can_only_merge_with_classes_that_are_ambient:M(2814,1,"Function_with_bodies_can_only_merge_with_classes_that_are_ambient_2814","Function with bodies can only merge with classes that are ambient."),This_overload_signature_is_not_compatible_with_its_implementation_signature:M(2394,1,"This_overload_signature_is_not_compatible_with_its_implementation_signature_2394","This overload signature is not compatible with its implementation signature."),The_implementation_signature_is_declared_here:M(2750,1,"The_implementation_signature_is_declared_here_2750","The implementation signature is declared here."),Target_signature_provides_too_few_arguments_Expected_0_or_more_but_got_1:M(2849,1,"Target_signature_provides_too_few_arguments_Expected_0_or_more_but_got_1_2849","Target signature provides too few arguments. Expected {0} or more, but got {1}."),Types_of_parameters_0_and_1_are_incompatible:M(2328,1,"Types_of_parameters_0_and_1_are_incompatible_2328","Types of parameters '{0}' and '{1}' are incompatible."),Signature_0_must_be_a_type_predicate:M(1224,1,"Signature_0_must_be_a_type_predicate_1224","Signature '{0}' must be a type predicate."),_0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or_indirectly_in_its_own_initializer:M(7022,1,"_0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or__7022","'{0}' implicitly has type 'any' because it does not have a type annotation and is referenced directly or indirectly in its own initializer."),_0_is_referenced_directly_or_indirectly_in_its_own_type_annotation:M(2502,1,"_0_is_referenced_directly_or_indirectly_in_its_own_type_annotation_2502","'{0}' is referenced directly or indirectly in its own type annotation."),Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_known_members:M(2509,1,"Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_2509","Base constructor return type '{0}' is not an object type or intersection of object types with statically known members."),Type_0_recursively_references_itself_as_a_base_type:M(2310,1,"Type_0_recursively_references_itself_as_a_base_type_2310","Type '{0}' recursively references itself as a base type."),_0_is_referenced_directly_or_indirectly_in_its_own_base_expression:M(2506,1,"_0_is_referenced_directly_or_indirectly_in_its_own_base_expression_2506","'{0}' is referenced directly or indirectly in its own base expression."),Type_0_is_not_a_constructor_function_type:M(2507,1,"Type_0_is_not_a_constructor_function_type_2507","Type '{0}' is not a constructor function type."),A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag:M(8039,1,"A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag_8039","A JSDoc '@template' tag may not follow a '@typedef', '@callback', or '@overload' tag"),_0_tag_already_specified:M(1223,1,"_0_tag_already_specified_1223","'{0}' tag already specified."),Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces:M(1069,1,"Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces_1069","Unexpected token. A type parameter name was expected without curly braces."),A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags:M(8033,1,"A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags_8033","A JSDoc '@typedef' comment may not contain multiple '@type' tags."),The_tag_was_first_specified_here:M(8034,1,"The_tag_was_first_specified_here_8034","The tag was first specified here."),Unexpected_token:M(1012,1,"Unexpected_token_1012","Unexpected token."),Circularity_detected_while_resolving_configuration_Colon_0:M(18e3,1,"Circularity_detected_while_resolving_configuration_Colon_0_18000","Circularity detected while resolving configuration: {0}"),String_literal_with_double_quotes_expected:M(1327,1,"String_literal_with_double_quotes_expected_1327","String literal with double quotes expected."),Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_literal:M(1328,1,"Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_li_1328","Property value can only be string literal, numeric literal, 'true', 'false', 'null', object literal or array literal."),Unknown_option_excludes_Did_you_mean_exclude:M(6114,1,"Unknown_option_excludes_Did_you_mean_exclude_6114","Unknown option 'excludes'. Did you mean 'exclude'?"),Command_line_Options:M(6171,3,"Command_line_Options_6171","Command-line Options"),Type_Checking:M(6248,3,"Type_Checking_6248","Type Checking"),Language_and_Environment:M(6254,3,"Language_and_Environment_6254","Language and Environment"),Disable_including_any_library_files_including_the_default_efun_h:M(6670,3,"Disable_including_any_library_files_including_the_default_efun_h_6670","Disable including any library files, including the default efun.h."),When_assigning_functions_check_to_ensure_parameters_and_the_return_values_are_subtype_compatible:M(6698,3,"When_assigning_functions_check_to_ensure_parameters_and_the_return_values_are_subtype_compatible_6698","When assigning functions, check to ensure parameters and the return values are subtype-compatible."),Enable_verbose_logging:M(6713,3,"Enable_verbose_logging_6713","Enable verbose logging."),Print_this_message:M(6017,3,"Print_this_message_6017","Print this message."),Watch_input_files:M(6005,3,"Watch_input_files_6005","Watch input files."),Output_Formatting:M(6256,3,"Output_Formatting_6256","Output Formatting"),Disable_wiping_the_console_in_watch_mode:M(6684,3,"Disable_wiping_the_console_in_watch_mode_6684","Disable wiping the console in watch mode."),Compiler_Diagnostics:M(6251,3,"Compiler_Diagnostics_6251","Compiler Diagnostics"),Print_all_of_the_files_read_during_the_compilation:M(6653,3,"Print_all_of_the_files_read_during_the_compilation_6653","Print all of the files read during the compilation."),Print_files_read_during_the_compilation_including_why_it_was_included:M(6631,3,"Print_files_read_during_the_compilation_including_why_it_was_included_6631","Print files read during the compilation including why it was included."),Print_the_names_of_emitted_files_after_a_compilation:M(6652,3,"Print_the_names_of_emitted_files_after_a_compilation_6652","Print the names of emitted files after a compilation."),Enable_color_and_formatting_in_TypeScript_s_output_to_make_compiler_errors_easier_to_read:M(6685,3,"Enable_color_and_formatting_in_TypeScript_s_output_to_make_compiler_errors_easier_to_read_6685","Enable color and formatting in TypeScript's output to make compiler errors easier to read."),Log_paths_used_during_the_moduleResolution_process:M(6706,3,"Log_paths_used_during_the_moduleResolution_process_6706","Log paths used during the 'moduleResolution' process."),Output_compiler_performance_information_after_building:M(6615,3,"Output_compiler_performance_information_after_building_6615","Output compiler performance information after building."),Output_more_detailed_compiler_performance_information_after_building:M(6632,3,"Output_more_detailed_compiler_performance_information_after_building_6632","Output more detailed compiler performance information after building."),FILE_OR_DIRECTORY:M(6040,3,"FILE_OR_DIRECTORY_6040","FILE OR DIRECTORY"),KIND:M(6034,3,"KIND_6034","KIND"),FILE:M(6035,3,"FILE_6035","FILE"),VERSION:M(6036,3,"VERSION_6036","VERSION"),LOCATION:M(6037,3,"LOCATION_6037","LOCATION"),DIRECTORY:M(6038,3,"DIRECTORY_6038","DIRECTORY"),STRATEGY:M(6039,3,"STRATEGY_6039","STRATEGY"),Emit_a_v8_CPU_profile_of_the_compiler_run_for_debugging:M(6638,3,"Emit_a_v8_CPU_profile_of_the_compiler_run_for_debugging_6638","Emit a v8 CPU profile of the compiler run for debugging."),Generates_an_event_trace_and_a_list_of_types:M(6237,3,"Generates_an_event_trace_and_a_list_of_types_6237","Generates an event trace and a list of types."),Projects:M(6255,3,"Projects_6255","Projects"),Save_tsbuildinfo_files_to_allow_for_incremental_compilation_of_projects:M(6642,3,"Save_tsbuildinfo_files_to_allow_for_incremental_compilation_of_projects_6642","Save .tsbuildinfo files to allow for incremental compilation of projects."),false_unless_composite_is_set:M(6906,3,"false_unless_composite_is_set_6906","`false`, unless `composite` is set"),Emit:M(6246,3,"Emit_6246","Emit"),Create_source_map_files_for_emitted_JavaScript_files:M(6694,3,"Create_source_map_files_for_emitted_JavaScript_files_6694","Create source map files for emitted JavaScript files."),Include_sourcemap_files_inside_the_emitted_JavaScript:M(6643,3,"Include_sourcemap_files_inside_the_emitted_JavaScript_6643","Include sourcemap files inside the emitted JavaScript."),Watch_and_Build_Modes:M(6250,3,"Watch_and_Build_Modes_6250","Watch and Build Modes"),Have_recompiles_in_projects_that_use_incremental_and_watch_mode_assume_that_changes_within_a_file_will_only_affect_files_directly_depending_on_it:M(6606,3,"Have_recompiles_in_projects_that_use_incremental_and_watch_mode_assume_that_changes_within_a_file_wi_6606","Have recompiles in projects that use 'incremental' and 'watch' mode assume that changes within a file will only affect files directly depending on it."),Set_the_language_of_the_messaging_from_TypeScript_This_does_not_affect_emit:M(6654,3,"Set_the_language_of_the_messaging_from_TypeScript_This_does_not_affect_emit_6654","Set the language of the messaging from TypeScript. This does not affect emit."),Platform_specific:M(6912,3,"Platform_specific_6912","Platform specific"),Property_assignment_expected:M(1136,1,"Property_assignment_expected_1136","Property assignment expected."),Compiler_option_0_may_only_be_used_with_build:M(5093,1,"Compiler_option_0_may_only_be_used_with_build_5093","Compiler option '--{0}' may only be used with '--build'."),Unknown_compiler_option_0:M(5023,1,"Unknown_compiler_option_0_5023","Unknown compiler option '{0}'."),Unknown_compiler_option_0_Did_you_mean_1:M(5025,1,"Unknown_compiler_option_0_Did_you_mean_1_5025","Unknown compiler option '{0}'. Did you mean '{1}'?"),Compiler_option_0_expects_an_argument:M(6044,1,"Compiler_option_0_expects_an_argument_6044","Compiler option '{0}' expects an argument."),Option_0_can_only_be_specified_on_command_line:M(6266,1,"Option_0_can_only_be_specified_on_command_line_6266","Option '{0}' can only be specified on command line."),Compiler_option_0_cannot_be_given_an_empty_string:M(18051,1,"Compiler_option_0_cannot_be_given_an_empty_string_18051","Compiler option '{0}' cannot be given an empty string."),File_Management:M(6245,3,"File_Management_6245","File Management"),if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk:M(6908,3,"if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk_6908",'`[]` if `files` is specified, otherwise `["**/*"]`'),node_modules_bower_components_jspm_packages_plus_the_value_of_outDir_if_one_is_specified:M(6907,3,"node_modules_bower_components_jspm_packages_plus_the_value_of_outDir_if_one_is_specified_6907",'`["node_modules", "bower_components", "jspm_packages"]`, plus the value of `outDir` if one is specified.'),The_root_value_of_a_0_file_must_be_an_object:M(5092,1,"The_root_value_of_a_0_file_must_be_an_object_5092","The root value of a '{0}' file must be an object."),Argument_for_0_option_must_be_Colon_1:M(6046,1,"Argument_for_0_option_must_be_Colon_1_6046","Argument for '{0}' option must be: {1}."),_0_should_be_set_inside_the_compilerOptions_object_of_the_config_json_file:M(6258,1,"_0_should_be_set_inside_the_compilerOptions_object_of_the_config_json_file_6258","'{0}' should be set inside the 'compilerOptions' object of the config json file"),No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2:M(18003,1,"No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2_18003","No inputs were found in config file '{0}'. Specified 'include' paths were '{1}' and 'exclude' paths were '{2}'."),Untyped_function_calls_may_not_accept_type_arguments:M(2347,1,"Untyped_function_calls_may_not_accept_type_arguments_2347","Untyped function calls may not accept type arguments."),Declaration_or_statement_expected:M(1128,1,"Declaration_or_statement_expected_1128","Declaration or statement expected."),case_or_default_expected:M(1130,1,"case_or_default_expected_1130","'case' or 'default' expected."),Statement_expected:M(1129,1,"Statement_expected_1129","Statement expected."),Property_or_signature_expected:M(1131,1,"Property_or_signature_expected_1131","Property or signature expected."),Unexpected_token_A_constructor_method_accessor_or_property_was_expected:M(1068,1,"Unexpected_token_A_constructor_method_accessor_or_property_was_expected_1068","Unexpected token. A constructor, method, accessor, or property was expected."),_0_is_not_allowed_as_a_variable_declaration_name:M(1389,1,"_0_is_not_allowed_as_a_variable_declaration_name_1389","'{0}' is not allowed as a variable declaration name."),Property_destructuring_pattern_expected:M(1180,1,"Property_destructuring_pattern_expected_1180","Property destructuring pattern expected."),Array_element_destructuring_pattern_expected:M(1181,1,"Array_element_destructuring_pattern_expected_1181","Array element destructuring pattern expected."),Argument_expression_expected:M(1135,1,"Argument_expression_expected_1135","Argument expression expected."),Expression_or_comma_expected:M(1137,1,"Expression_or_comma_expected_1137","Expression or comma expected."),Parameter_declaration_expected:M(1138,1,"Parameter_declaration_expected_1138","Parameter declaration expected."),_0_is_not_allowed_as_a_parameter_name:M(1390,1,"_0_is_not_allowed_as_a_parameter_name_1390","'{0}' is not allowed as a parameter name."),Type_parameter_declaration_expected:M(1139,1,"Type_parameter_declaration_expected_1139","Type parameter declaration expected."),Type_argument_expected:M(1140,1,"Type_argument_expected_1140","Type argument expected."),Type_expected:M(1110,1,"Type_expected_1110","Type expected."),Unexpected_token_expected:M(1179,1,"Unexpected_token_expected_1179","Unexpected token. '{' expected."),Found_1_error_in_0:M(6259,3,"Found_1_error_in_0_6259","Found 1 error in {0}"),Found_1_error:M(6216,3,"Found_1_error_6216","Found 1 error."),Found_0_errors:M(6217,3,"Found_0_errors_6217","Found {0} errors."),Found_0_errors_in_the_same_file_starting_at_Colon_1:M(6260,3,"Found_0_errors_in_the_same_file_starting_at_Colon_1_6260","Found {0} errors in the same file, starting at: {1}"),Found_0_errors_in_1_files:M(6261,3,"Found_0_errors_in_1_files_6261","Found {0} errors in {1} files."),Errors_Files:M(6041,3,"Errors_Files_6041","Errors Files"),File_is_output_of_project_reference_source_0:M(1428,3,"File_is_output_of_project_reference_source_0_1428","File is output of project reference source '{0}'"),The_file_is_in_the_program_because_Colon:M(1430,3,"The_file_is_in_the_program_because_Colon_1430","The file is in the program because:"),Root_file_specified_for_compilation:M(1427,3,"Root_file_specified_for_compilation_1427","Root file specified for compilation"),Part_of_files_list_in_lpcconfig_json:M(1409,3,"Part_of_files_list_in_lpcconfig_json_1409","Part of 'files' list in lpc-config.json"),Matched_by_include_pattern_0_in_1:M(1407,3,"Matched_by_include_pattern_0_in_1_1407","Matched by include pattern '{0}' in '{1}'"),Matched_by_default_include_pattern_Asterisk_Asterisk_Slash_Asterisk:M(1457,3,"Matched_by_default_include_pattern_Asterisk_Asterisk_Slash_Asterisk_1457","Matched by default include pattern '**/*'"),Output_from_referenced_project_0_included_because_1_specified:M(1411,3,"Output_from_referenced_project_0_included_because_1_specified_1411","Output from referenced project '{0}' included because '{1}' specified"),Source_from_referenced_project_0_included_because_1_specified:M(1414,3,"Source_from_referenced_project_0_included_because_1_specified_1414","Source from referenced project '{0}' included because '{1}' specified"),Output_from_referenced_project_0_included_because_module_is_specified_as_none:M(1412,3,"Output_from_referenced_project_0_included_because_module_is_specified_as_none_1412","Output from referenced project '{0}' included because '--module' is specified as 'none'"),Source_from_referenced_project_0_included_because_module_is_specified_as_none:M(1415,3,"Source_from_referenced_project_0_included_because_module_is_specified_as_none_1415","Source from referenced project '{0}' included because '--module' is specified as 'none'"),Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1:M(1418,3,"Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1_1418","Entry point of type library '{0}' specified in compilerOptions with packageId '{1}'"),Entry_point_of_type_library_0_specified_in_compilerOptions:M(1417,3,"Entry_point_of_type_library_0_specified_in_compilerOptions_1417","Entry point of type library '{0}' specified in compilerOptions"),Entry_point_for_implicit_type_library_0_with_packageId_1:M(1421,3,"Entry_point_for_implicit_type_library_0_with_packageId_1_1421","Entry point for implicit type library '{0}' with packageId '{1}'"),Library_0_specified_in_compilerOptions:M(1422,3,"Library_0_specified_in_compilerOptions_1422","Library '{0}' specified in compilerOptions"),Default_library_for_target_0:M(1425,3,"Default_library_for_target_0_1425","Default library for target '{0}'"),Default_library:M(1424,3,"Default_library_1424","Default library"),File_is_included_via_import_here:M(1399,3,"File_is_included_via_import_here_1399","File is included via import here."),File_is_included_via_reference_here:M(1401,3,"File_is_included_via_reference_here_1401","File is included via reference here."),File_is_included_via_type_library_reference_here:M(1404,3,"File_is_included_via_type_library_reference_here_1404","File is included via type library reference here."),File_is_included_via_library_reference_here:M(1406,3,"File_is_included_via_library_reference_here_1406","File is included via library reference here."),Cannot_find_lib_definition_for_0_Did_you_mean_1:M(2727,1,"Cannot_find_lib_definition_for_0_Did_you_mean_1_2727","Cannot find lib definition for '{0}'. Did you mean '{1}'?"),Cannot_find_lib_definition_for_0:M(2726,1,"Cannot_find_lib_definition_for_0_2726","Cannot find lib definition for '{0}'."),Modifiers_cannot_appear_here:M(1184,1,"Modifiers_cannot_appear_here_1184","Modifiers cannot appear here."),_0_modifier_cannot_appear_on_a_type_member:M(1070,1,"_0_modifier_cannot_appear_on_a_type_member_1070","'{0}' modifier cannot appear on a type member."),_0_modifier_cannot_appear_on_an_index_signature:M(1071,1,"_0_modifier_cannot_appear_on_an_index_signature_1071","'{0}' modifier cannot appear on an index signature."),Accessibility_modifier_already_seen:M(1028,1,"Accessibility_modifier_already_seen_1028","Accessibility modifier already seen."),_0_modifier_already_seen:M(1030,1,"_0_modifier_already_seen_1030","'{0}' modifier already seen."),_0_modifier_cannot_appear_on_a_parameter:M(1090,1,"_0_modifier_cannot_appear_on_a_parameter_1090","'{0}' modifier cannot appear on a parameter."),A_parameter_property_may_not_be_declared_using_a_binding_pattern:M(1187,1,"A_parameter_property_may_not_be_declared_using_a_binding_pattern_1187","A parameter property may not be declared using a binding pattern."),A_parameter_property_cannot_be_declared_using_a_rest_parameter:M(1317,1,"A_parameter_property_cannot_be_declared_using_a_rest_parameter_1317","A parameter property cannot be declared using a rest parameter."),_0_modifier_must_precede_1_modifier:M(1029,1,"_0_modifier_must_precede_1_modifier_1029","'{0}' modifier must precede '{1}' modifier."),JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_had_an_array_type:M(8029,1,"JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_h_8029","LPCDoc '@param' tag has name '{0}', but there is no parameter with that name. It would match 'arguments' if it had an array type."),Qualified_name_0_is_not_allowed_without_a_leading_param_object_1:M(8032,1,"Qualified_name_0_is_not_allowed_without_a_leading_param_object_1_8032","Qualified name '{0}' is not allowed without a leading '@param {object} {1}'."),JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name:M(8024,1,"JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_8024","LPCDoc '@param' tag has name '{0}', but there is no parameter with that name."),A_rest_parameter_must_be_last_in_a_parameter_list:M(1014,1,"A_rest_parameter_must_be_last_in_a_parameter_list_1014","A rest parameter must be last in a parameter list."),A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma:M(1013,1,"A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma_1013","A rest parameter or binding pattern may not have a trailing comma."),Assertions_require_every_name_in_the_call_target_to_be_declared_with_an_explicit_type_annotation:M(2775,1,"Assertions_require_every_name_in_the_call_target_to_be_declared_with_an_explicit_type_annotation_2775","Assertions require every name in the call target to be declared with an explicit type annotation."),Trailing_comma_not_allowed:M(1009,1,"Trailing_comma_not_allowed_1009","Trailing comma not allowed."),A_rest_parameter_cannot_have_an_initializer:M(1048,1,"A_rest_parameter_cannot_have_an_initializer_1048","A rest parameter cannot have an initializer."),Block_scoped_variable_0_used_before_its_declaration:M(2448,1,"Block_scoped_variable_0_used_before_its_declaration_2448","Block-scoped variable '{0}' used before its declaration."),Class_0_used_before_its_declaration:M(2449,1,"Class_0_used_before_its_declaration_2449","Class '{0}' used before its declaration."),Jump_target_cannot_cross_function_boundary:M(1107,1,"Jump_target_cannot_cross_function_boundary_1107","Jump target cannot cross function boundary."),A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement:M(1115,1,"A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement_1115","A 'continue' statement can only jump to a label of an enclosing iteration statement."),A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement:M(1116,1,"A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement_1116","A 'break' statement can only jump to a label of an enclosing statement."),A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement:M(1105,1,"A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement_1105","A 'break' statement can only be used within an enclosing iteration or switch statement."),A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement:M(1104,1,"A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement_1104","A 'continue' statement can only be used within an enclosing iteration statement."),Fallthrough_case_in_switch:M(7029,1,"Fallthrough_case_in_switch_7029","Fallthrough case in switch."),A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods:M(1228,1,"A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods_1228","A type predicate is only allowed in return type position for functions and methods."),A_type_predicate_cannot_reference_a_rest_parameter:M(1229,1,"A_type_predicate_cannot_reference_a_rest_parameter_1229","A type predicate cannot reference a rest parameter."),A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type:M(2677,1,"A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type_2677","A type predicate's type must be assignable to its parameter's type."),Cannot_find_parameter_0:M(1225,1,"Cannot_find_parameter_0_1225","Cannot find parameter '{0}'."),A_type_predicate_cannot_reference_element_0_in_a_binding_pattern:M(1230,1,"A_type_predicate_cannot_reference_element_0_in_a_binding_pattern_1230","A type predicate cannot reference element '{0}' in a binding pattern."),The_type_of_a_function_declaration_must_match_the_function_s_signature:M(8030,1,"The_type_of_a_function_declaration_must_match_the_function_s_signature_8030","The type of a function declaration must match the function's signature."),Assertions_require_the_call_target_to_be_an_identifier_or_qualified_name:M(2776,1,"Assertions_require_the_call_target_to_be_an_identifier_or_qualified_name_2776","Assertions require the call target to be an identifier or qualified name."),Specify_the_root_folder_within_your_source_files:M(6690,3,"Specify_the_root_folder_within_your_source_files_6690","Specify the root folder within your source files."),Computed_from_the_list_of_input_files:M(6911,3,"Computed_from_the_list_of_input_files_6911","Computed from the list of input files"),Imported_via_0_from_file_1:M(1393,3,"Imported_via_0_from_file_1_1393","Imported via {0} from file '{1}'"),Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions:M(1397,3,"Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions_1397","Imported via {0} from file '{1}' to import 'jsx' and 'jsxs' factory functions"),Referenced_via_0_from_file_1:M(1400,3,"Referenced_via_0_from_file_1_1400","Referenced via '{0}' from file '{1}'"),Library_referenced_via_0_from_file_1:M(1405,3,"Library_referenced_via_0_from_file_1_1405","Library referenced via '{0}' from file '{1}'"),File_is_matched_by_files_list_specified_here:M(1410,3,"File_is_matched_by_files_list_specified_here_1410","File is matched by 'files' list specified here."),File_is_matched_by_include_pattern_specified_here:M(1408,3,"File_is_matched_by_include_pattern_specified_here_1408","File is matched by include pattern specified here."),File_is_output_from_referenced_project_specified_here:M(1413,3,"File_is_output_from_referenced_project_specified_here_1413","File is output from referenced project specified here."),File_is_source_from_referenced_project_specified_here:M(1416,3,"File_is_source_from_referenced_project_specified_here_1416","File is source from referenced project specified here."),File_is_entry_point_of_type_library_specified_here:M(1419,3,"File_is_entry_point_of_type_library_specified_here_1419","File is entry point of type library specified here."),File_is_library_specified_here:M(1423,3,"File_is_library_specified_here_1423","File is library specified here."),File_is_default_library_for_target_specified_here:M(1426,3,"File_is_default_library_for_target_specified_here_1426","File is default library for target specified here."),Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:M(6391,3,"Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved__6391","Reusing resolution of type reference directive '{0}' from '{1}' of old program, it was successfully resolved to '{2}' with Package ID '{3}'."),Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2:M(6390,3,"Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved__6390","Reusing resolution of type reference directive '{0}' from '{1}' of old program, it was successfully resolved to '{2}'."),Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_not_resolved:M(6392,3,"Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_not_resolved_6392","Reusing resolution of type reference directive '{0}' from '{1}' of old program, it was not resolved."),Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using_cache_location_2:M(6140,1,"Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using__6140","Auto discovery for typings is enabled in project '{0}'. Running extra resolution pass for module '{1}' using cache location '{2}'."),Source_has_0_element_s_but_target_requires_1:M(2618,1,"Source_has_0_element_s_but_target_requires_1_2618","Source has {0} element(s) but target requires {1}."),Source_has_0_element_s_but_target_allows_only_1:M(2619,1,"Source_has_0_element_s_but_target_allows_only_1_2619","Source has {0} element(s) but target allows only {1}."),Target_requires_0_element_s_but_source_may_have_fewer:M(2620,1,"Target_requires_0_element_s_but_source_may_have_fewer_2620","Target requires {0} element(s) but source may have fewer."),Target_allows_only_0_element_s_but_source_may_have_more:M(2621,1,"Target_allows_only_0_element_s_but_source_may_have_more_2621","Target allows only {0} element(s) but source may have more."),Source_provides_no_match_for_variadic_element_at_position_0_in_target:M(2624,1,"Source_provides_no_match_for_variadic_element_at_position_0_in_target_2624","Source provides no match for variadic element at position {0} in target."),Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target:M(2625,1,"Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target_2625","Variadic element at position {0} in source does not match element at position {1} in target."),Source_provides_no_match_for_required_element_at_position_0_in_target:M(2623,1,"Source_provides_no_match_for_required_element_at_position_0_in_target_2623","Source provides no match for required element at position {0} in target."),Property_0_in_type_1_refers_to_a_different_member_that_cannot_be_accessed_from_within_type_2:M(18015,1,"Property_0_in_type_1_refers_to_a_different_member_that_cannot_be_accessed_from_within_type_2_18015","Property '{0}' in type '{1}' refers to a different member that cannot be accessed from within type '{2}'."),Class_0_incorrectly_implements_interface_1:M(2420,1,"Class_0_incorrectly_implements_interface_1_2420","Class '{0}' incorrectly implements interface '{1}'."),Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass:M(2720,1,"Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclas_2720","Class '{0}' incorrectly implements class '{1}'. Did you mean to extend '{1}' and inherit its members as a subclass?"),Property_0_is_missing_in_type_1_but_required_in_type_2:M(2741,1,"Property_0_is_missing_in_type_1_but_required_in_type_2_2741","Property '{0}' is missing in type '{1}' but required in type '{2}'."),Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more:M(2740,1,"Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more_2740","Type '{0}' is missing the following properties from type '{1}': {2}, and {3} more."),Type_0_is_missing_the_following_properties_from_type_1_Colon_2:M(2739,1,"Type_0_is_missing_the_following_properties_from_type_1_Colon_2_2739","Type '{0}' is missing the following properties from type '{1}': {2}"),Types_have_separate_declarations_of_a_private_property_0:M(2442,1,"Types_have_separate_declarations_of_a_private_property_0_2442","Types have separate declarations of a private property '{0}'."),Property_0_is_private_in_type_1_but_not_in_type_2:M(2325,1,"Property_0_is_private_in_type_1_but_not_in_type_2_2325","Property '{0}' is private in type '{1}' but not in type '{2}'."),Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2:M(2443,1,"Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2_2443","Property '{0}' is protected but type '{1}' is not a class derived from '{2}'."),Property_0_is_protected_in_type_1_but_public_in_type_2:M(2444,1,"Property_0_is_protected_in_type_1_but_public_in_type_2_2444","Property '{0}' is protected in type '{1}' but public in type '{2}'."),Property_0_is_optional_in_type_1_but_required_in_type_2:M(2327,1,"Property_0_is_optional_in_type_1_but_required_in_type_2_2327","Property '{0}' is optional in type '{1}' but required in type '{2}'."),Index_signature_for_type_0_is_missing_in_type_1:M(2329,1,"Index_signature_for_type_0_is_missing_in_type_1_2329","Index signature for type '{0}' is missing in type '{1}'."),_0_index_signatures_are_incompatible:M(2634,1,"_0_index_signatures_are_incompatible_2634","'{0}' index signatures are incompatible."),_0_and_1_index_signatures_are_incompatible:M(2330,1,"_0_and_1_index_signatures_are_incompatible_2330","'{0}' and '{1}' index signatures are incompatible."),Property_0_is_incompatible_with_index_signature:M(2530,1,"Property_0_is_incompatible_with_index_signature_2530","Property '{0}' is incompatible with index signature."),Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type:M(2517,1,"Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type_2517","Cannot assign an abstract constructor type to a non-abstract constructor type."),Type_0_provides_no_match_for_the_signature_1:M(2658,1,"Type_0_provides_no_match_for_the_signature_1_2658","Type '{0}' provides no match for the signature '{1}'."),Type_produces_a_tuple_type_that_is_too_large_to_represent:M(2799,1,"Type_produces_a_tuple_type_that_is_too_large_to_represent_2799","Type produces a tuple type that is too large to represent."),Expression_produces_a_tuple_type_that_is_too_large_to_represent:M(2800,1,"Expression_produces_a_tuple_type_that_is_too_large_to_represent_2800","Expression produces a tuple type that is too large to represent."),All_type_parameters_are_unused:M(6205,1,"All_type_parameters_are_unused_6205","All type parameters are unused."),JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags:M(8021,1,"JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags_8021","LPCDoc '@typedef' tag should either have a type annotation or be followed by '@property' or '@member' tags."),Type_alias_name_cannot_be_0:M(2457,1,"Type_alias_name_cannot_be_0_2457","Type alias name cannot be '{0}'."),Type_parameter_0_has_a_circular_default:M(2716,1,"Type_parameter_0_has_a_circular_default_2716","Type parameter '{0}' has a circular default."),Type_parameter_name_cannot_be_0:M(2368,1,"Type_parameter_name_cannot_be_0_2368","Type parameter name cannot be '{0}'."),Required_type_parameters_may_not_follow_optional_type_parameters:M(2706,1,"Required_type_parameters_may_not_follow_optional_type_parameters_2706","Required type parameters may not follow optional type parameters."),Type_parameter_defaults_can_only_reference_previously_declared_type_parameters:M(2744,1,"Type_parameter_defaults_can_only_reference_previously_declared_type_parameters_2744","Type parameter defaults can only reference previously declared type parameters."),Type_0_does_not_satisfy_the_constraint_1:M(2344,1,"Type_0_does_not_satisfy_the_constraint_1_2344","Type '{0}' does not satisfy the constraint '{1}'."),Property_0_of_type_1_is_not_assignable_to_2_index_type_3:M(2411,1,"Property_0_of_type_1_is_not_assignable_to_2_index_type_3_2411","Property '{0}' of type '{1}' is not assignable to '{2}' index type '{3}'."),_0_index_type_1_is_not_assignable_to_2_index_type_3:M(2413,1,"_0_index_type_1_is_not_assignable_to_2_index_type_3_2413","'{0}' index type '{1}' is not assignable to '{2}' index type '{3}'."),Type_parameter_0_has_a_circular_constraint:M(2313,1,"Type_parameter_0_has_a_circular_constraint_2313","Type parameter '{0}' has a circular constraint."),Circularity_originates_in_type_at_this_location:M(2751,1,"Circularity_originates_in_type_at_this_location_2751","Circularity originates in type at this location."),Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter:M(4105,1,"Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter_4105","Private or protected member '{0}' cannot be accessed on a type parameter."),Cannot_assign_to_0_because_it_is_a_read_only_property:M(2540,1,"Cannot_assign_to_0_because_it_is_a_read_only_property_2540","Cannot assign to '{0}' because it is a read-only property."),A_tuple_type_cannot_be_indexed_with_a_negative_value:M(2514,1,"A_tuple_type_cannot_be_indexed_with_a_negative_value_2514","A tuple type cannot be indexed with a negative value."),Tuple_type_0_of_length_1_has_no_element_at_index_2:M(2493,1,"Tuple_type_0_of_length_1_has_no_element_at_index_2_2493","Tuple type '{0}' of length '{1}' has no element at index '{2}'."),_0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_constraint_2:M(5075,1,"_0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_5075","'{0}' is assignable to the constraint of type '{1}', but '{1}' could be instantiated with a different subtype of constraint '{2}'."),_0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1:M(5082,1,"_0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1_5082","'{0}' could be instantiated with an arbitrary type which could be unrelated to '{1}'."),The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1:M(4104,1,"The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1_4104","The type '{0}' is 'readonly' and cannot be assigned to the mutable type '{1}'."),This_type_parameter_might_need_an_extends_0_constraint:M(2208,1,"This_type_parameter_might_need_an_extends_0_constraint_2208","This type parameter might need an `extends {0}` constraint."),Type_of_property_0_circularly_references_itself_in_mapped_type_1:M(2615,1,"Type_of_property_0_circularly_references_itself_in_mapped_type_1_2615","Type of property '{0}' circularly references itself in mapped type '{1}'."),false_unless_strict_is_set:M(6905,3,"false_unless_strict_is_set_6905","`false`, unless `strict` is set"),Generic_type_0_requires_1_type_argument_s:M(2314,1,"Generic_type_0_requires_1_type_argument_s_2314","Generic type '{0}' requires {1} type argument(s)."),Generic_type_0_requires_between_1_and_2_type_arguments:M(2707,1,"Generic_type_0_requires_between_1_and_2_type_arguments_2707","Generic type '{0}' requires between {1} and {2} type arguments."),Variance_annotations_are_only_supported_in_type_aliases_for_object_function_constructor_and_mapped_types:M(2637,1,"Variance_annotations_are_only_supported_in_type_aliases_for_object_function_constructor_and_mapped_t_2637","Variance annotations are only supported in type aliases for object, function, constructor, and mapped types."),Type_0_is_not_assignable_to_type_1_as_implied_by_variance_annotation:M(2636,1,"Type_0_is_not_assignable_to_type_1_as_implied_by_variance_annotation_2636","Type '{0}' is not assignable to type '{1}' as implied by variance annotation."),Type_parameter_list_cannot_be_empty:M(1098,1,"Type_parameter_list_cannot_be_empty_1098","Type parameter list cannot be empty."),Type_argument_list_cannot_be_empty:M(1099,1,"Type_argument_list_cannot_be_empty_1099","Type argument list cannot be empty."),JSDoc_types_can_only_be_used_inside_documentation_comments:M(8020,1,"JSDoc_types_can_only_be_used_inside_documentation_comments_8020","LPCDoc types can only be used inside documentation comments."),Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1:M(6048,1,"Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1_6048","Locale must be of the form <language> or <language>-<territory>. For example '{0}' or '{1}'."),Unable_to_open_file_0:M(6050,1,"Unable_to_open_file_0_6050","Unable to open file '{0}'."),Corrupted_locale_file_0:M(6051,1,"Corrupted_locale_file_0_6051","Corrupted locale file {0}."),Version_0:M(6029,3,"Version_0_6029","Version {0}"),Unused_lpc_expect_error_directive:M(2578,1,"Unused_lpc_expect_error_directive_2578","Unused '@lpc-expect-error' directive."),The_left_hand_side_of_a_for_each_statement_cannot_be_a_destructuring_pattern:M(2491,1,"The_left_hand_side_of_a_for_each_statement_cannot_be_a_destructuring_pattern_2491","The left-hand side of a 'foreach' statement cannot be a destructuring pattern."),The_left_hand_side_of_a_for_each_mapping_statement_must_be_a_variable_or_a_property_access:M(2487,1,"The_left_hand_side_of_a_for_each_mapping_statement_must_be_a_variable_or_a_property_access_2487","The left-hand side of a 'foreach...mapping' statement must be a variable or a property access."),Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_native_implementation_of_the_Web_Performance_API_could_not_be_found:M(6386,3,"Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_nativ_6386","Performance timings for '--diagnostics' or '--extendedDiagnostics' are not available in this session. A native implementation of the Web Performance API could not be found.")};function iu(e){return e>=89}function By(e,t,i=!1){return{fileName:t,end:e,isSpeculative:i}}var AH={"#include":178,"#define":179,"#undef":180,"#if":181,"#ifdef":182,"#ifndef":183,"#else":184,"#elif":185,"#endif":186,"#pragma":187},wH=new Map(Object.entries(AH)),oN={any:97,break:106,buffer:108,bytes:107,case:113,catch:100,class:133,closure:98,continue:121,default:114,do:109,else:110,false:135,float:93,foreach:112,for:111,functions:143,function:138,if:115,in:103,int:92,inherit:120,intrinsic:129,is:142,lwobject:95,mapping:104,mixed:101,new:145,nomask:130,null:137,nosave:127,object:140,private:122,protected:123,public:124,ref:141,return:116,static:125,string:94,status:134,struct:99,switch:117,symbol:139,true:136,undefined:96,unknown:102,varargs:131,virtual:144,void:105,while:118,async:119},OH=new Map(Object.entries(oN)),MM=new Map(Object.entries({...oN,"{":17,"}":19,"(":20,")":21,"[":22,"]":23,".":24,"..":73,"...":25,";":26,",":27,"<":29,">":32,"<..":31,"<=":33,">=":34,"==":35,"!=":36,"===":37,"!==":38,"=>":39,"->":40,"+":41,"-":42,"**":44,"*":43,"/":45,"%":46,"++":47,"--":48,"<<":49,"</":30,">>":50,">>>":51,"&":52,"|":53,"^":54,"!":55,"~":57,"&&":58,"||":59,"?":60,"??":64,"?.":28,":":61,"::":71,"=":74,"+=":75,"-=":76,"*=":77,"**=":78,"/=":79,"%=":80,"<<=":81,">>=":82,">>>=":83,"&=":84,"|=":85,"^=":88,"||=":86,"??=":87,"@":62,"@@":63,"#":65,"(:":66,"([":68,"({":69,"(*":70,"`":18}));var BM=[65,90,97,122,170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,880,884,886,887,890,893,895,895,902,902,904,906,908,908,910,929,931,1013,1015,1153,1162,1327,1329,1366,1369,1369,1376,1416,1488,1514,1519,1522,1568,1610,1646,1647,1649,1747,1749,1749,1765,1766,1774,1775,1786,1788,1791,1791,1808,1808,1810,1839,1869,1957,1969,1969,1994,2026,2036,2037,2042,2042,2048,2069,2074,2074,2084,2084,2088,2088,2112,2136,2144,2154,2160,2183,2185,2190,2208,2249,2308,2361,2365,2365,2384,2384,2392,2401,2417,2432,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2493,2493,2510,2510,2524,2525,2527,2529,2544,2545,2556,2556,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2785,2809,2809,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2877,2877,2908,2909,2911,2913,2929,2929,2947,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3024,3024,3077,3084,3086,3088,3090,3112,3114,3129,3133,3133,3160,3162,3165,3165,3168,3169,3200,3200,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3293,3294,3296,3297,3313,3314,3332,3340,3342,3344,3346,3386,3389,3389,3406,3406,3412,3414,3423,3425,3450,3455,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3718,3722,3724,3747,3749,3749,3751,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3807,3840,3840,3904,3911,3913,3948,3976,3980,4096,4138,4159,4159,4176,4181,4186,4189,4193,4193,4197,4198,4206,4208,4213,4225,4238,4238,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4992,5007,5024,5109,5112,5117,5121,5740,5743,5759,5761,5786,5792,5866,5870,5880,5888,5905,5919,5937,5952,5969,5984,5996,5998,6e3,6016,6067,6103,6103,6108,6108,6176,6264,6272,6312,6314,6314,6320,6389,6400,6430,6480,6509,6512,6516,6528,6571,6576,6601,6656,6678,6688,6740,6823,6823,6917,6963,6981,6988,7043,7072,7086,7087,7098,7141,7168,7203,7245,7247,7258,7293,7296,7304,7312,7354,7357,7359,7401,7404,7406,7411,7413,7414,7418,7418,7424,7615,7680,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8305,8305,8319,8319,8336,8348,8450,8450,8455,8455,8458,8467,8469,8469,8472,8477,8484,8484,8486,8486,8488,8488,8490,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11492,11499,11502,11506,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11648,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,12293,12295,12321,12329,12337,12341,12344,12348,12353,12438,12443,12447,12449,12538,12540,12543,12549,12591,12593,12686,12704,12735,12784,12799,13312,19903,19968,42124,42192,42237,42240,42508,42512,42527,42538,42539,42560,42606,42623,42653,42656,42735,42775,42783,42786,42888,42891,42954,42960,42961,42963,42963,42965,42969,42994,43009,43011,43013,43015,43018,43020,43042,43072,43123,43138,43187,43250,43255,43259,43259,43261,43262,43274,43301,43312,43334,43360,43388,43396,43442,43471,43471,43488,43492,43494,43503,43514,43518,43520,43560,43584,43586,43588,43595,43616,43638,43642,43642,43646,43695,43697,43697,43701,43702,43705,43709,43712,43712,43714,43714,43739,43741,43744,43754,43762,43764,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43824,43866,43868,43881,43888,44002,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500,65536,65547,65549,65574,65576,65594,65596,65597,65599,65613,65616,65629,65664,65786,65856,65908,66176,66204,66208,66256,66304,66335,66349,66378,66384,66421,66432,66461,66464,66499,66504,66511,66513,66517,66560,66717,66736,66771,66776,66811,66816,66855,66864,66915,66928,66938,66940,66954,66956,66962,66964,66965,66967,66977,66979,66993,66995,67001,67003,67004,67072,67382,67392,67413,67424,67431,67456,67461,67463,67504,67506,67514,67584,67589,67592,67592,67594,67637,67639,67640,67644,67644,67647,67669,67680,67702,67712,67742,67808,67826,67828,67829,67840,67861,67872,67897,67968,68023,68030,68031,68096,68096,68112,68115,68117,68119,68121,68149,68192,68220,68224,68252,68288,68295,68297,68324,68352,68405,68416,68437,68448,68466,68480,68497,68608,68680,68736,68786,68800,68850,68864,68899,69248,69289,69296,69297,69376,69404,69415,69415,69424,69445,69488,69505,69552,69572,69600,69622,69635,69687,69745,69746,69749,69749,69763,69807,69840,69864,69891,69926,69956,69956,69959,69959,69968,70002,70006,70006,70019,70066,70081,70084,70106,70106,70108,70108,70144,70161,70163,70187,70207,70208,70272,70278,70280,70280,70282,70285,70287,70301,70303,70312,70320,70366,70405,70412,70415,70416,70419,70440,70442,70448,70450,70451,70453,70457,70461,70461,70480,70480,70493,70497,70656,70708,70727,70730,70751,70753,70784,70831,70852,70853,70855,70855,71040,71086,71128,71131,71168,71215,71236,71236,71296,71338,71352,71352,71424,71450,71488,71494,71680,71723,71840,71903,71935,71942,71945,71945,71948,71955,71957,71958,71960,71983,71999,71999,72001,72001,72096,72103,72106,72144,72161,72161,72163,72163,72192,72192,72203,72242,72250,72250,72272,72272,72284,72329,72349,72349,72368,72440,72704,72712,72714,72750,72768,72768,72818,72847,72960,72966,72968,72969,72971,73008,73030,73030,73056,73061,73063,73064,73066,73097,73112,73112,73440,73458,73474,73474,73476,73488,73490,73523,73648,73648,73728,74649,74752,74862,74880,75075,77712,77808,77824,78895,78913,78918,82944,83526,92160,92728,92736,92766,92784,92862,92880,92909,92928,92975,92992,92995,93027,93047,93053,93071,93760,93823,93952,94026,94032,94032,94099,94111,94176,94177,94179,94179,94208,100343,100352,101589,101632,101640,110576,110579,110581,110587,110589,110590,110592,110882,110898,110898,110928,110930,110933,110933,110948,110951,110960,111355,113664,113770,113776,113788,113792,113800,113808,113817,119808,119892,119894,119964,119966,119967,119970,119970,119973,119974,119977,119980,119982,119993,119995,119995,119997,120003,120005,120069,120071,120074,120077,120084,120086,120092,120094,120121,120123,120126,120128,120132,120134,120134,120138,120144,120146,120485,120488,120512,120514,120538,120540,120570,120572,120596,120598,120628,120630,120654,120656,120686,120688,120712,120714,120744,120746,120770,120772,120779,122624,122654,122661,122666,122928,122989,123136,123180,123191,123197,123214,123214,123536,123565,123584,123627,124112,124139,124896,124902,124904,124907,124909,124910,124912,124926,124928,125124,125184,125251,125259,125259,126464,126467,126469,126495,126497,126498,126500,126500,126503,126503,126505,126514,126516,126519,126521,126521,126523,126523,126530,126530,126535,126535,126537,126537,126539,126539,126541,126543,126545,126546,126548,126548,126551,126551,126553,126553,126555,126555,126557,126557,126559,126559,126561,126562,126564,126564,126567,126570,126572,126578,126580,126583,126585,126588,126590,126590,126592,126601,126603,126619,126625,126627,126629,126633,126635,126651,131072,173791,173824,177977,177984,178205,178208,183969,183984,191456,191472,192093,194560,195101,196608,201546,201552,205743];var RH=/^\/\/\/?\s*@(lpc-expect-error|lpc-ignore)/,MH=/^(?:\/|\*)*\s*@(lpc-expect-error|lpc-ignore)/;function jM(e,t){if(e<t[0])return!1;let i=0,o=t.length,c;for(;i+1<o;){if(c=i+(o-i)/2,c-=c%2,t[c]<=e&&e<=t[c+1])return!0;e<t[c]?o=c:i=c+2}return!1}function BH(e,t){return jM(e,BM)}function jH(e,t){return jM(e,BM)}function JH(e){let t=[];return e.forEach((i,o)=>{t[i]=o}),t}var UH=JH(MM);function gi(e){return UH[e]}function zd(e){return MM.get(e)}function Jy(e){let t=[],i=0,o=0;for(;i<e.length;){let c=e.charCodeAt(i);switch(i++,c){case 13:e.charCodeAt(i)===10&&i++;case 10:t.push(o),o=i;break;default:c>127&&Wa(c)&&(t.push(o),o=i);break}}return t.push(o),t}function aN(e,t,i,o){return e.getPositionOfLineAndCharacter?e.getPositionOfLineAndCharacter(t,i,o):sN(Qs(e),t,i,e.text,o)}function sN(e,t,i,o,c){(t<0||t>=e.length)&&(c?t=t<0?0:t>=e.length?e.length-1:t:I.fail(`Bad line number. Line: ${t}, lineStarts.length: ${e.length} , line map is correct? ${o!==void 0?GE(e,Jy(o)):"unknown"}`));let u=e[t]+i;return c?u>e[t+1]?e[t+1]:typeof o=="string"&&u>o.length?o.length:u:(t<e.length-1?I.assert(u<e[t+1]):o!==void 0&&I.assert(u<=o.length),u)}function Qs(e){return e.lineMap||(e.lineMap=Jy(e.text))}function Uy(e,t){let i=wh(e,t);return{line:i,character:t-e[i]}}function wh(e,t,i){let o=Wd(e,t,Di,ro,i);return o<0&&(o=~o-1,I.assert(o!==-1,"position cannot precede the beginning of the file")),o}function xx(e,t,i){if(t===i)return 0;let o=Qs(e),c=Math.min(t,i),u=c===i,p=u?t:i,m=wh(o,c),g=wh(o,p,m);return u?m-g:g-m}function Go(e,t){return Uy(Qs(e),t)}function Nl(e){return Xc(e)||Wa(e)}function Xc(e){return e===32||e===9||e===11||e===12||e===160||e===133||e===5760||e>=8192&&e<=8203||e===8239||e===8287||e===12288||e===65279}function Wa(e){return e===10||e===13||e===8232||e===8233}function sg(e){return e>=48&&e<=57}function wF(e){return sg(e)||e>=65&&e<=70||e>=97&&e<=102}function JM(e){return e>=65&&e<=90||e>=97&&e<=122}function WH(e){return JM(e)||sg(e)||e===95}function OF(e){return e>=48&&e<=55}function Oi(e,t,i,o,c){if(_s(t))return t;let u=!1;for(;;){let p=e.charCodeAt(t);switch(p){case 13:e.charCodeAt(t+1)===10&&t++;case 10:if(t++,i)return t;u=!!c;continue;case 9:case 11:case 12:case 32:t++;continue;case 47:if(o)break;if(e.charCodeAt(t+1)===47){for(t+=2;t<e.length&&!Wa(e.charCodeAt(t));)t++;u=!1;continue}if(e.charCodeAt(t+1)===42){for(t+=2;t<e.length;){if(e.charCodeAt(t)===42&&e.charCodeAt(t+1)===47){t+=2;break}t++}u=!1;continue}break;case 60:case 124:case 61:case 62:if(Ah(e,t)){t=_x(e,t),u=!1;continue}break;case 35:if(t===0&&UM(e,t)){t=WM(e,t),u=!1;continue}break;case 42:if(u){t++,u=!1;continue}break;default:if(p>127&&Nl(p)){t++;continue}break}return t}}var iN=7;function Ah(e,t){if(I.assert(t>=0),t===0||Wa(e.charCodeAt(t-1))){let i=e.charCodeAt(t);if(t+iN<e.length){for(let o=0;o<iN;o++)if(e.charCodeAt(t+o)!==i)return!1;return i===61||e.charCodeAt(t+iN)===32}}return!1}function _x(e,t,i){i&&i(N.Merge_conflict_marker_encountered,t,iN);let o=e.charCodeAt(t),c=e.length;if(o===60||o===62)for(;t<c&&!Wa(e.charCodeAt(t));)t++;else for(I.assert(o===124||o===61);t<c;){let u=e.charCodeAt(t);if((u===61||u===62)&&u!==o&&Ah(e,t))break;t++}return t}var jF=/^#!.*/;function UM(e,t){return I.assert(t===0),jF.test(e)}function WM(e,t){let i=jF.exec(e)[0];return t=t+i.length,t}function JF(e,t,i,o,c,u,p){let m,g,S,T,_=!1,P=o,v=p;if(i===0){P=!0;let B=Oh(t);B&&(i=B.length)}e:for(;i>=0&&i<t.length;){let B=t.charCodeAt(i);switch(B){case 13:t.charCodeAt(i+1)===10&&i++;case 10:if(i++,o)break e;P=!0,_&&(T=!0);continue;case 9:case 11:case 12:case 32:i++;continue;case 47:let y=t.charCodeAt(i+1),$=!1;if(y===47||y===42){let j=y===47?2:3,ce=i;if(i+=2,y===47)for(;i<t.length;){if(Wa(t.charCodeAt(i))){$=!0;break}i++}else for(;i<t.length;){if(t.charCodeAt(i)===42&&t.charCodeAt(i+1)===47){i+=2;break}i++}if(P){if(_&&(v=c(m,g,S,T,u,v),!e&&v))return v;m=ce,g=i,S=j,T=$,_=!0}continue}break e;default:if(B>127&&Nl(B)){_&&Wa(B)&&(T=!0),i++;continue}break e}}return _&&(v=c(m,g,S,T,u,v)),v}function bx(e,t,i,o){return JF(!1,e,t,!1,i,o)}function KH(e,t,i,o,c){return JF(!0,e,t,!1,i,o,c)}function VH(e,t,i,o,c){return JF(!0,e,t,!0,i,o,c)}function KM(e,t,i,o,c,u=[]){return u.push({kind:i,pos:e,end:t,hasTrailingNewLine:o}),u}function Dl(e,t){return KH(e,t,KM,void 0,void 0)}function Hd(e,t){return VH(e,t,KM,void 0,void 0)}function Oh(e){let t=jF.exec(e);if(t)return t[0]}function vc(e,t){return JM(e)||e===36||e===95||e>127&&BH(e,t)}function ru(e,t,i){return WH(e)||e===36||e>127&&jH(e,t)}function zp(e,t,i){let o=RF(e,0);if(!vc(o,t))return!1;for(let c=tu(o);c<e.length;c+=tu(o))if(!ru(o=RF(e,c),t,i))return!1;return!0}function Wy(e,t,i,o=2,c,u,p,m){var g=c,S=!1,T=!0,_,P=1,v=2,B=[],y,$,j,ce,me,V,ne,ve,$e,Ie=0,ge=!1,Ae=!1,Qe=!1,ye=0,ae=0;Fe(g,p,m);var Ee={getTokenFullStart:()=>ce,getStartPos:()=>ce,getTokenEnd:()=>y,getFileName:()=>$,getTextPos:()=>y,getToken:()=>V,getTokenStart:()=>me,getTokenPos:()=>me,getTokenText:()=>g.substring(me,y),getTokenValue:()=>ne,getStateId:()=>P,getState:Fo,releaseState:()=>{I.assertIsDefined(_),_?.()},resetSavedStates:()=>{_=void 0,v=2,P=1,B=[]},hasUnicodeEscape:()=>(ve&1024)!==0,hasExtendedUnicodeEscape:()=>(ve&8)!==0,hasPrecedingLineBreak:()=>(ve&1)!==0,hasPrecedingJSDocComment:()=>(ve&2)!==0,isIdentifier:()=>V===89||V>132,isReservedWord:()=>V>=92&&V<=132,isUnterminated:()=>(ve&4)!==0,getCommentDirectives:()=>$e,getNumericLiteralFlags:()=>ve&58352,getTokenFlags:()=>ve,reScanGreaterToken:fe,reScanAsteriskEqualsToken:_e,reScanLessThanToken:Ye,reScanLessThanTokenAsStringLiteral:tn,reScanHashToken:ee,reScanQuestionToken:pn,reScanInvalidIdentifier:nr,reScanInclude:jt,scanJsDocToken:Le,scanJSDocCommentTextToken:X,scan:Yn,switchStream:Cr,getText:qa,clearCommentDirectives:Zo,setText:Fe,setReportLineBreak:ht,setScriptTarget:ir,setLanguageVariant:nn,setScriptKind:Un,setJSDocParsingMode:xt,setOnError:lt,setParseBracketAsStringLiteral:Mn,resetTokenState:Ur,setTextPos:Ur,setSkipJsDocLeadingAsterisks:ai,hasLeadingAsterisks:qt,tryScan:Oo,lookAhead:No,scanRange:Gr,getEnd:Xo,setFileName:Pe=>$=Pe,getStateEndings:()=>B};return I.isDebugging&&(Object.defineProperty(Ee,"__debugShowCurrentPositionInText",{get:()=>{let Pe=Ee.getText();return Pe.slice(0,Ee.getTokenFullStart())+"\u2551"+Pe.slice(Ee.getTokenFullStart())}}),Object.defineProperty(Ee,"__debugEndStates",{get:()=>JSON.stringify(Ee.getStateEndings(),void 0,2)})),Ee;function z(Pe){return RF(g,Pe)}function ze(Pe){return Pe>=0&&Pe<j?z(Pe):-1}function te(Pe){return g.charCodeAt(Pe)}function le(Pe){return Pe>=0&&Pe<j?te(Pe):-1}function bn(Pe,Be=y,Ze,Wn){if(u){let ut=y;y=Be,u(Pe,Ze||0,Wn),y=ut}}function Ft(){let Pe=y,Be=!1,Ze=!1,Wn="";for(;;){let ut=te(y);if(ut===95){ve|=512,Be?(Be=!1,Ze=!0,Wn+=g.substring(Pe,y)):(ve|=16384,bn(Ze?N.Multiple_consecutive_numeric_separators_are_not_permitted:N.Numeric_separators_are_not_allowed_here,y,1)),y++,Pe=y;continue}if(sg(ut)){Be=!0,Ze=!1,y++;continue}break}return te(y-1)===95&&(ve|=16384,bn(N.Numeric_separators_are_not_allowed_here,y-1,1)),Wn+g.substring(Pe,y)}function ue(){let Pe=y,Be;if(te(y)===48)if(y++,te(y)===95)ve|=16896,bn(N.Numeric_separators_are_not_allowed_here,y,1),y--,Be=Ft();else if(!Pn())ve|=8192,Be=""+ +ne;else if(!ne)Be="0";else{ne=""+parseInt(ne,8),ve|=32;let Ir=V===42,Lr=(Ir?"-":"")+"0o"+(+ne).toString(8);return Ir&&Pe--,11}else Be=Ft();let Ze,Wn;te(y)===46&&te(y+1)!==46&&(y++,Ze=Ft());let ut=y;if(te(y)===69||te(y)===101){y++,ve|=16,(te(y)===43||te(y)===45)&&y++;let Ir=y,Lr=Ft();Lr?(Wn=g.substring(ut,Ir)+Lr,ut=y):bn(N.Digit_expected)}let Ot;if(ve&512?(Ot=Be,Ze&&(Ot+="."+Ze),Wn&&(Ot+=Wn)):Ot=g.substring(Pe,ut),Ze!==void 0||ve&16)return je(Pe,Ze===void 0&&!!(ve&16)),ne=""+ +Ot,11;{ne=Ot;let Ir=gn();return je(Pe),Ir}}function gn(){return ne=""+(ve&128?parseInt(ne.slice(2),2):ve&256?parseInt(ne.slice(2),8):+ne),11}function je(Pe,Be){if(!vc(z(y),e))return;let Ze=y,{length:Wn}=hn();Wn===1&&g[Ze]==="n"?bn(Be?N.A_bigint_literal_cannot_use_exponential_notation:N.A_bigint_literal_must_be_an_integer,Pe,Ze-Pe+1):(bn(N.An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal,Ze,Wn),y=Ze)}function Pn(){let Pe=y,Be=!0;for(;sg(le(y));)OF(te(y))||(Be=!1),y++;return ne=g.substring(Pe,y),Be}function Ut(Pe,Be){let Ze=fn(Pe,!1,Be);return Ze?parseInt(Ze,16):-1}function kr(Pe,Be){return fn(Pe,!0,Be)}function fn(Pe,Be,Ze){let Wn=[],ut=!1,Ot=!1;for(;Wn.length<Pe||Be;){let Ir=te(y);if(Ze&&Ir===95){ve|=512,ut?(ut=!1,Ot=!0):bn(Ot?N.Multiple_consecutive_numeric_separators_are_not_permitted:N.Numeric_separators_are_not_allowed_here,y,1),y++;continue}if(ut=Ze,Ir>=65&&Ir<=70)Ir+=32;else if(!(Ir>=48&&Ir<=57||Ir>=97&&Ir<=102))break;Wn.push(Ir),y++,Ot=!1}return Wn.length<Pe&&(Wn=[]),te(y-1)===95&&bn(N.Numeric_separators_are_not_allowed_here,y-1,1),String.fromCharCode(...Wn)}function re(){let Pe=te(y);return y++,Nt()}function dt(){let Pe=te(y);if(Pe!==39)return!1;y++;let Be=y;for(;;){if(y>=j)return!1;let Ze=te(y);if(Ze===Pe)return!1;if(y>=1&&Ze===44||Ze===10||Ze===13||Ze===32||!ru(Ze,e,o))return!0;y++}}function ot(Pe){Vr(te(y),Pe);let Be=MF(MF(ne,"@"),"@"),Ze="",Wn=y,ut=y,Ot=y,Ir=y,Lr="";for(;;){if(y>=j){Ze+=g.substring(Wn,y),ve|=4,bn(N.Unterminated_string_literal,ut,1);break}let Cn=te(y);if(Nl(Cn)||UF(Cn)){if(g.substring(Ot+1,y).trim()==Be){Ze+=g.substring(Wn,y-Be.length);break}Wa(Cn)&&(Ot=y),Ir=y}else ut=y;y++}return Ze}function Nt(Pe=!1){let Be=te(y);y++;let Ze="",Wn=y;for(;;){if(y>=j){Ze+=g.substring(Wn,y),ve|=4,bn(N.Unterminated_string_literal);break}let ut=te(y);if(ut===Be||Be===60&&ut===62){Ze+=g.substring(Wn,y),y++;break}if(ut===92&&!Pe){Ze+=g.substring(Wn,y),Ze+=Bt(3),Wn=y;continue}if(o!==1&&(ut===10||ut===13)&&!Pe){Ze+=g.substring(Wn,y),ve|=4,bn(N.Unterminated_string_literal);break}y++}return Ze}function Bt(Pe){let Be=y;if(y++,y>=j)return bn(N.Unexpected_end_of_text),"";let Ze=te(y);switch(y++,Ze){case 48:if(y>=j||!sg(te(y)))return"\0";case 49:case 50:case 51:y<j&&OF(te(y))&&y++;case 52:case 53:case 54:case 55:if(y<j&&OF(te(y))&&y++,ve|=2048,Pe&6){let Ot=parseInt(g.substring(Be+1,y),8);return Pe&4&&!(Pe&32)&&Ze!==48?bn(N.Octal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_If_this_was_intended_as_an_escape_sequence_use_the_syntax_0_instead,Be,y-Be,"\\x"+Ot.toString(16).padStart(2,"0")):bn(N.Octal_escape_sequences_are_not_allowed_Use_the_syntax_0,Be,y-Be,"\\x"+Ot.toString(16).padStart(2,"0")),String.fromCharCode(Ot)}return g.substring(Be,y);case 56:case 57:return ve|=2048,Pe&6?(Pe&4&&!(Pe&32)?bn(N.Decimal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class,Be,y-Be):bn(N.Escape_sequence_0_is_not_allowed,Be,y-Be,g.substring(Be,y)),String.fromCharCode(Ze)):g.substring(Be,y);case 98:return"\b";case 116:return" ";case 110:return`
21
+ `;case 118:return"\v";case 102:return"\f";case 114:return"\r";case 39:return"'";case 34:return'"';case 117:if(Pe&17&&y<j&&te(y)===123)return y-=2,Zt(!!(Pe&6));for(;y<Be+6;y++)if(!(y<j&&wF(te(y))))return ve|=2048,Pe&6&&bn(N.Hexadecimal_digit_expected),g.substring(Be,y);ve|=1024;let Wn=parseInt(g.substring(Be+2,y),16),ut=String.fromCharCode(Wn);if(Pe&16&&Wn>=55296&&Wn<=56319&&y+6<j&&g.substring(y,y+2)==="\\u"&&te(y+2)!==123){let Ot=y,Ir=y+2;for(;Ir<Ot+6;Ir++)if(!wF(te(y)))return ut;let Lr=parseInt(g.substring(Ot+2,Ir),16);if(Lr>=56320&&Lr<=57343)return y=Ir,ut+String.fromCharCode(Lr)}return ut;case 120:for(;y<Be+4;y++)if(!(y<j&&wF(te(y))))return ve|=2048,Pe&6&&bn(N.Hexadecimal_digit_expected),g.substring(Be,y);return ve|=4096,String.fromCharCode(parseInt(g.substring(Be+2,y),16));case 13:y<j&&te(y)===10&&y++;case 10:case 8232:case 8233:return"";default:return(Pe&16||Pe&4&&!(Pe&8)&&ru(Ze,e))&&bn(N.This_character_cannot_be_escaped_in_a_regular_expression,y-2,2),String.fromCharCode(Ze)}}function Zt(Pe){let Be=y;y+=3;let Ze=y,Wn=kr(1,!1),ut=Wn?parseInt(Wn,16):-1,Ot=!1;return ut<0?(Pe&&bn(N.Hexadecimal_digit_expected),Ot=!0):ut>1114111&&(Pe&&bn(N.An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive,Ze,y-Ze),Ot=!0),y>=j?(Pe&&bn(N.Unexpected_end_of_text),Ot=!0):te(y)===125?y++:(Pe&&bn(N.Unterminated_Unicode_escape_sequence),Ot=!0),Ot?(ve|=2048,g.substring(Be,y)):(ve|=8,wM(ut))}function Kt(){if(y+5<j&&te(y+1)===117){let Pe=y;y+=2;let Be=Ut(4,!1);return y=Pe,Be}return-1}function ar(){if(z(y+1)===117&&z(y+2)===123){let Pe=y;y+=3;let Be=kr(1,!1),Ze=Be?parseInt(Be,16):-1;return y=Pe,Ze}return-1}function hn(){let Pe="",Be=y;for(;y<j;){let Ze=z(y);if(ru(Ze,e))y+=tu(Ze);else if(Ze===92){if(Ze=ar(),Ze>=0&&ru(Ze,e)){Pe+=Zt(!0),Be=y;continue}if(Ze=Kt(),!(Ze>=0&&ru(Ze,e)))break;ve|=1024,Pe+=g.substring(Be,y),Pe+=wM(Ze),y+=6,Be=y}else break}return Pe+=g.substring(Be,y),Pe}function er(){let Pe=ne.length;if(Pe>=2&&Pe<=12){let Be=ne.charCodeAt(0);if(Be>=97&&Be<=122){let Ze=OH.get(ne);if(Ze!==void 0)return V=Ze}}return V=89}function Ti(Pe){let Be="#"+ne.substring(Pe),Ze=Be.length;if(Ze>=3&&Ze<=12){let Wn=Be.charCodeAt(1);if(Wn>=97&&Wn<=122){let ut=wH.get(Be);if(ut!==void 0)return V=ut}}return V=89}function qe(Pe){let Be="",Ze=!1,Wn=!1;for(;;){let ut=te(y);if(ut===95){ve|=512,Ze?(Ze=!1,Wn=!0):bn(Wn?N.Multiple_consecutive_numeric_separators_are_not_permitted:N.Numeric_separators_are_not_allowed_here,y,1),y++;continue}if(Ze=!0,!sg(ut)||ut-48>=Pe)break;Be+=g[y],y++,Wn=!1}return te(y-1)===95&&bn(N.Numeric_separators_are_not_allowed_here,y-1,1),Be}function Yn(){for(ce=y,ve=0,ge=!1,B[P]=By(y,$);;){me=y;let Pe=!1,Be=!1;for(;T&&y>=j&&_;){let Wn=P;Be=_(),B[P]??(B[P]=By(y,$)),B[P].end=y,Pe=!0}if(Be)return V;if(Pe)continue;if(y>=j)return V=1;let Ze=z(y);if(y===0&&Ze===35&&UM(g,y)){if(y=WM(g,y),t)continue;return V=8}switch(Ze){case 10:case 13:if(ve|=1,t&&!Ae){y++;continue}else return Ze===13&&y+1<j&&te(y+1)===10?y+=2:y++,V=4;case 9:case 11:case 12:case 32:case 160:case 5760:case 8192:case 8193:case 8194:case 8195:case 8196:case 8197:case 8198:case 8199:case 8200:case 8201:case 8202:case 8203:case 8239:case 8287:case 12288:case 65279:if(t){y++;continue}else{for(;y<j&&Xc(te(y));)y++;return V=5}case 33:return te(y+1)===61?te(y+2)===61?(y+=3,V=38):(y+=2,V=36):(y++,V=55);case 39:return vc(te(y+1),e)&&No(dt)?(y++,V=72):(ne=Nt(!1),ne.length>1&&bn(N.Character_literal_must_be_one_character,me,ne.length+2),ne=""+ne.charCodeAt(0),ve|=32768,V=12);case 34:return ne=Nt(),V=16;case 37:return te(y+1)===61?(y+=2,V=80):(y++,V=46);case 38:return te(y+1)===38?(y+=2,V=58):te(y+1)===61?(y+=2,V=84):(y++,V=52);case 40:return te(y+1)===91?(y+=2,V=68):te(y+1)===123?(y+=2,V=69):te(y+1)===42?(y+=2,V=70):(y++,V=20);case 41:return y++,V=21;case 42:if(te(y+1)===61)return y+=2,V=77;if(te(y+1)===42)return te(y+2)===61?(y+=3,V=78):(y+=2,V=44);if(y++,Ie&&!ge&&ve&1){ge=!0;continue}return V=43;case 43:return te(y+1)===43?(y+=2,V=47):te(y+1)===61?(y+=2,V=75):(y++,V=41);case 44:return y++,V=27;case 45:return te(y+1)===62?(y+=2,V=40):te(y+1)===45?(y+=2,V=48):te(y+1)===61?(y+=2,V=76):(y++,V=42);case 46:return sg(te(y+1))?(ue(),V=13):te(y+1)===46?te(y+2)===46?(y+=3,V=25):(y+=2,V=73):(y++,V=24);case 47:if(te(y+1)===47){for(y+=2;y<j&&!Wa(te(y));)y++;if($e=De($e,g.slice(me,y),RH,me),t)continue;return V=2}if(te(y+1)===42){y+=2;let fi=te(y)===42&&te(y+1)!==47,Gn=!1,so=me;for(;y<j;){let xo=te(y);if(xo===42&&te(y+1)===47){y+=2,Gn=!0;break}y++,Wa(xo)&&(so=y,ve|=1)}if(fi&&zn()&&(ve|=2),$e=De($e,g.slice(so,y),MH,so),Gn||bn(N.Asterisk_Slash_expected),t)continue;return Gn||(ve|=4),V=3}return te(y+1)===61?(y+=2,V=79):(y++,V=45);case 48:if(y+2<j&&(te(y+1)===88||te(y+1)===120))return y+=2,ne=kr(1,!0),ne||(bn(N.Hexadecimal_digit_expected),ne="0"),ne="0x"+ne,ve|=64,V=gn();if(y+2<j&&(te(y+1)===66||te(y+1)===98))return y+=2,ne=qe(2),ne||(bn(N.Binary_digit_expected),ne="0"),ne="0b"+ne,ve|=128,V=gn();if(y+2<j&&(te(y+1)===79||te(y+1)===111))return y+=2,ne=qe(8),ne||(bn(N.Octal_digit_expected),ne="0"),ne="0o"+ne,ve|=256,V=gn();case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return V=ue();case 58:return te(y+1)===58?(y+=2,V=71):(y++,V=61);case 59:return y++,V=26;case 60:if(Ah(g,y)){if(y=_x(g,y,bn),t)continue;return V=6}return te(y+1)===60?te(y+2)===61?(y+=3,V=81):(y+=2,V=49):te(y+1)===61?(y+=2,V=33):te(y+1)===46&&te(y+2)===46?(y+=3,V=31):Qe?(ne=Nt(),V=16):(y++,V=29);case 61:if(Ah(g,y)){if(y=_x(g,y,bn),t)continue;return V=6}return te(y+1)===61?te(y+2)===61?(y+=3,V=37):(y+=2,V=35):te(y+1)===62?(y+=2,V=39):(y++,V=74);case 62:if(Ah(g,y)){if(y=_x(g,y,bn),t)continue;return V=6}return y++,V=32;case 63:return te(y+1)===46&&!sg(te(y+2))?(y+=2,V=28):te(y+1)===63?te(y+2)===61?(y+=3,V=87):(y+=2,V=64):(y++,V=60);case 91:return y++,V=22;case 93:return y++,V=23;case 94:return te(y+1)===61?(y+=2,V=88):(y++,V=54);case 123:return y++,V=17;case 124:if(Ah(g,y)){if(y=_x(g,y,bn),t)continue;return V=6}return te(y+1)===124?te(y+2)===61?(y+=3,V=86):(y+=2,V=59):te(y+1)===61?(y+=2,V=85):(y++,V=53);case 125:return y++,V=19;case 126:return y++,V=57;case 64:y++;let Wn=te(y)===64;return Wn&&y++,vc(te(y),e)?(ne=ot(e),V=Wn?15:16):V=Wn?63:62;case 92:let ut=ar();if(ut>=0&&vc(ut,e))return ne=Zt(!0)+hn(),V=er();let Ot=Kt();if(Ot>=0&&vc(Ot,e))return y+=6,ve|=1024,ne=String.fromCharCode(Ot)+hn(),V=er();switch(te(y+1)){case 13:y+2<j&&te(y+2)===10&&(y+=1);case 10:y+=2,ve|=1;continue}return bn(N.Invalid_character),y++,V=0;case 35:if(y!==0&&g[y+1]==="!")return bn(N.can_only_be_used_at_the_start_of_a_file,y,2),y++,V=0;if(te(y+1)===39)return y+=2,V=72;if(y===0||Wa(te(y-1))){if(y++,V=qi(te(y),e),i)switch(V){case 181:case 184:case 185:case 186:case 183:case 182:for(;y<j&&!Wa(te(y));)y++;continue;default:}return V}let Ir=z(y+1);if(Ir===92){y++;let fi=ar(),Gn=Kt();y--}return vc(Ir,e)?(y++,Vr(Ir,e),V=90):(ne="#",bn(N.Invalid_character,y++,tu(Ze)),V=0);case 65533:return bn(N.File_appears_to_be_binary,0,0),y=j,V=9;case 98:if(te(y+1)===34)return ne=re(),V=14;default:let Lr=Vr(Ze,e);if(Lr)return V=Lr;if(Xc(Ze)){y+=tu(Ze);continue}else if(Wa(Ze)){ve|=1,y+=tu(Ze);continue}let Cn=tu(Ze);return bn(N.Invalid_character,y,Cn),y+=Cn,V=0}}}function zn(){switch(ae){case 0:return!0;case 1:return!1}return!0}function jt(Pe){me=ce=Pe;let Be=Yn();return I.assert(Be===178,"Expected to rescan an include directive"),Be}function nr(){I.assert(V===0,"'reScanInvalidIdentifier' should only be called when the current token is 'SyntaxKind.Unknown'."),y=me=ce,ve=0;let Pe=z(y),Be=Vr(Pe,1);return Be?V=Be:(y+=tu(Pe),V)}function Vr(Pe,Be){let Ze=Pe;if(vc(Ze,Be)){for(y+=tu(Ze);y<j&&ru(Ze=z(y),Be);)y+=tu(Ze);return ne=g.substring(me,y),Ze===92&&(ne+=hn()),er()}}function qi(Pe,Be){let Ze=y,Wn=Pe;for(;y<j&&Xc(Wn);)Wn=z(++y);let ut=y-Ze+1;if(vc(Wn,Be)){for(y+=tu(Wn);y<j&&ru(Wn=z(y),Be);)y+=tu(Wn);return ne=g.substring(me,y),Wn===92&&(ne+=hn()),Ti(ut)}}function fe(){if(V===32){if(te(y)===62)return te(y+1)===62?te(y+2)===61?(y+=3,V=83):(y+=2,V=51):te(y+1)===61?(y+=2,V=82):(y++,V=50);if(te(y)===61)return y++,V=34}return V}function _e(){return I.assert(V===77,"'reScanAsteriskEqualsToken' should only be called on a '*='"),y=me+1,V=74}function De(Pe,Be,Ze,Wn){let ut=Ve(Be.trimStart(),Ze);return ut===void 0?Pe:Fr(Pe,{range:{pos:Wn,end:y},type:ut})}function Ve(Pe,Be){let Ze=Be.exec(Pe);if(Ze)switch(Ze[1]){case"lpc-expect-error":return 0;case"lpc-ignore":return 1}}function tn(){if(V===29)return y--,ne=Nt(),V=16}function Ye(){return V===49?(y=me+1,V=29):V}function ee(){return V}function pn(){return I.assert(V===64,"'reScanQuestionToken' should only be called on a '??'"),y=me+1,V=60}function X(Pe){if(ce=me=y,ve=0,I.assert(!B[P]||B[P].end<=y,"State ending cannot be after the current position"),B[P]=By(y,$),y>=j)return V=1;for(let Be=te(y);y<j&&!Wa(Be)&&Be!==96;Be=z(++y))if(!Pe){if(Be===123)break;if(Be===64&&y-1>=0&&Xc(te(y-1))&&!(y+1<j&&Nl(te(y+1))))break}return y===me?Le():(ne=g.substring(me,y),V=91)}function Le(){if(ce=me=y,ve=0,B[P]=By(y,$),y>=j)return V=1;let Pe=z(y);switch(y+=tu(Pe),Pe){case 9:case 11:case 12:case 32:for(;y<j&&Xc(te(y));)y++;return V=5;case 64:return V=62;case 13:te(y)===10&&y++;case 10:return ve|=1,V=4;case 42:return V=43;case 123:return V=17;case 125:return V=19;case 91:return V=22;case 93:return V=23;case 40:return V=20;case 41:return V=21;case 60:return V=29;case 62:return V=32;case 61:return V=74;case 44:return V=27;case 46:return V=24;case 96:return V=18;case 35:return V=65;case 92:y--;let Be=ar();if(Be>=0&&vc(Be,e))return ne=Zt(!0)+hn(),V=er();let Ze=Kt();return Ze>=0&&vc(Ze,e)?(y+=6,ve|=1024,ne=String.fromCharCode(Ze)+hn(),V=er()):(y++,V=0)}if(vc(Pe,e)){let Be=Pe;for(;y<j&&ru(Be=z(y),e)||Be===45;)y+=tu(Be);return ne=g.substring(me,y),Be===92&&(ne+=hn()),V=er()}else return V=0}function oi(Pe=!1){let Be=hi(Pe),Ze=P=v++;return()=>(P>=Ze&&Be(),B[Ze]&&(B[Ze].isSpeculative=Pe),!1)}function hi(Pe){let Be=Pe,Ze=y,Wn=j,ut=ce,Ot=me,Ir=V,Lr=ne,Cn=ve,fi=$,Gn=_,so=P,xo=g,xa=T,Wo=!1;return()=>{I.assert(!Wo,"State has already been released"),Wo=!0,Pe=Be,$=fi,y=Ze,j=Wn,ce=ut,me=Ot,V=Ir,ne=Lr,ve=Cn,P=so,g=xo,T=xa,_=Gn}}function Cr(Pe,Be,Ze,Wn,ut=!0,Ot){let Ir=oi();return S=!1,T=ut,_=function(){let Lr=P;return Ir(),Ot?.()},Fe(Be,Ze,Wn),$=Pe,B[P]=By(y,$),_}function Sn(Pe,Be){let Ze=[...B],Wn=P,ut=v,Ot=_,Ir=oi(!0);S=!Be;let Lr=!0,Cn=!1;I.assert(P!=Wn);let fi=_=function(xo){return xo?(Lr=!1,!1):Cn?!1:Lr?(Cn=!0,Ir()):(Cn=!0,!1)},Gn=P,so=Pe();if(!so||Be){for(;P>Gn;)_();fi(),B=Ze,v=ut,I.assert(P<=Wn,"State id mismatch")}else{fi(!0),I.assert(P>Wn);let xo=new Map,xa=P;for(;xa>=Wn;){let Wo=B[xa].fileName;xo.set(Wo,Math.max(B[xa].end,xo.get(Wo)||0)),B[xa].end=xo.get(Wo),xa--}P=Wn,_=Ot}return so}function Fo(Pe){return B[Pe]}function Gr(Pe,Be,Ze){let Wn=P,ut=v,Ot=[...B],Ir=oi(),Lr=P;S=!1,$="",B[P]=By(Pe,$),Fe(g,Pe,Be);let Cn=Ze();for(;P>Lr;)_();return Ir(),B=Ot,v=ut,I.assert(P<=Wn,"State id mismatch"),Cn}function No(Pe){return Sn(Pe,!0)}function Oo(Pe){return Sn(Pe,!1)}function Xo(){return j}function qa(){return g}function Zo(){$e=void 0}function Fe(Pe,Be,Ze){g=Pe||"",j=Ze===void 0?g.length:Be+Ze,Ur(Be||0)}function Mn(Pe){Qe=Pe}function lt(Pe){u=Pe}function ir(Pe){e=Pe}function nn(Pe){o=Pe}function Un(Pe){ye=Pe}function ht(Pe){Ae=Pe}function xt(Pe){ae=Pe}function Ur(Pe,Be){I.assert(Pe>=0),y=Pe,ce=Pe,me=Pe,V=0,ne=void 0,ve=0,Be&&(B[P]=By(Pe,$))}function ai(Pe){Ie+=Pe?1:-1}function qt(){return ge}}function RF(e,t){return e.codePointAt(t)}function tu(e){return e>=65536?2:e===-1?0:1}function zH(e){if(I.assert(0<=e&&e<=1114111),e<=65535)return String.fromCharCode(e);let t=Math.floor((e-65536)/1024)+55296,i=(e-65536)%1024+56320;return String.fromCharCode(t,i)}var HH=String.fromCodePoint?e=>String.fromCodePoint(e):zH;function wM(e){return HH(e)}var wre=new Map(Object.entries({General_Category:"General_Category",gc:"General_Category",Script:"Script",sc:"Script",Script_Extensions:"Script_Extensions",scx:"Script_Extensions"}));var OM={General_Category:new Set(["C","Other","Cc","Control","cntrl","Cf","Format","Cn","Unassigned","Co","Private_Use","Cs","Surrogate","L","Letter","LC","Cased_Letter","Ll","Lowercase_Letter","Lm","Modifier_Letter","Lo","Other_Letter","Lt","Titlecase_Letter","Lu","Uppercase_Letter","M","Mark","Combining_Mark","Mc","Spacing_Mark","Me","Enclosing_Mark","Mn","Nonspacing_Mark","N","Number","Nd","Decimal_Number","digit","Nl","Letter_Number","No","Other_Number","P","Punctuation","punct","Pc","Connector_Punctuation","Pd","Dash_Punctuation","Pe","Close_Punctuation","Pf","Final_Punctuation","Pi","Initial_Punctuation","Po","Other_Punctuation","Ps","Open_Punctuation","S","Symbol","Sc","Currency_Symbol","Sk","Modifier_Symbol","Sm","Math_Symbol","So","Other_Symbol","Z","Separator","Zl","Line_Separator","Zp","Paragraph_Separator","Zs","Space_Separator"]),Script:new Set(["Adlm","Adlam","Aghb","Caucasian_Albanian","Ahom","Arab","Arabic","Armi","Imperial_Aramaic","Armn","Armenian","Avst","Avestan","Bali","Balinese","Bamu","Bamum","Bass","Bassa_Vah","Batk","Batak","Beng","Bengali","Bhks","Bhaiksuki","Bopo","Bopomofo","Brah","Brahmi","Brai","Braille","Bugi","Buginese","Buhd","Buhid","Cakm","Chakma","Cans","Canadian_Aboriginal","Cari","Carian","Cham","Cher","Cherokee","Chrs","Chorasmian","Copt","Coptic","Qaac","Cpmn","Cypro_Minoan","Cprt","Cypriot","Cyrl","Cyrillic","Deva","Devanagari","Diak","Dives_Akuru","Dogr","Dogra","Dsrt","Deseret","Dupl","Duployan","Egyp","Egyptian_Hieroglyphs","Elba","Elbasan","Elym","Elymaic","Ethi","Ethiopic","Geor","Georgian","Glag","Glagolitic","Gong","Gunjala_Gondi","Gonm","Masaram_Gondi","Goth","Gothic","Gran","Grantha","Grek","Greek","Gujr","Gujarati","Guru","Gurmukhi","Hang","Hangul","Hani","Han","Hano","Hanunoo","Hatr","Hatran","Hebr","Hebrew","Hira","Hiragana","Hluw","Anatolian_Hieroglyphs","Hmng","Pahawh_Hmong","Hmnp","Nyiakeng_Puachue_Hmong","Hrkt","Katakana_Or_Hiragana","Hung","Old_Hungarian","Ital","Old_Italic","Java","Javanese","Kali","Kayah_Li","Kana","Katakana","Kawi","Khar","Kharoshthi","Khmr","Khmer","Khoj","Khojki","Kits","Khitan_Small_Script","Knda","Kannada","Kthi","Kaithi","Lana","Tai_Tham","Laoo","Lao","Latn","Latin","Lepc","Lepcha","Limb","Limbu","Lina","Linear_A","Linb","Linear_B","Lisu","Lyci","Lycian","Lydi","Lydian","Mahj","Mahajani","Maka","Makasar","Mand","Mandaic","Mani","Manichaean","Marc","Marchen","Medf","Medefaidrin","Mend","Mende_Kikakui","Merc","Meroitic_Cursive","Mero","Meroitic_Hieroglyphs","Mlym","Malayalam","Modi","Mong","Mongolian","Mroo","Mro","Mtei","Meetei_Mayek","Mult","Multani","Mymr","Myanmar","Nagm","Nag_Mundari","Nand","Nandinagari","Narb","Old_North_Arabian","Nbat","Nabataean","Newa","Nkoo","Nko","Nshu","Nushu","Ogam","Ogham","Olck","Ol_Chiki","Orkh","Old_Turkic","Orya","Oriya","Osge","Osage","Osma","Osmanya","Ougr","Old_Uyghur","Palm","Palmyrene","Pauc","Pau_Cin_Hau","Perm","Old_Permic","Phag","Phags_Pa","Phli","Inscriptional_Pahlavi","Phlp","Psalter_Pahlavi","Phnx","Phoenician","Plrd","Miao","Prti","Inscriptional_Parthian","Rjng","Rejang","Rohg","Hanifi_Rohingya","Runr","Runic","Samr","Samaritan","Sarb","Old_South_Arabian","Saur","Saurashtra","Sgnw","SignWriting","Shaw","Shavian","Shrd","Sharada","Sidd","Siddham","Sind","Khudawadi","Sinh","Sinhala","Sogd","Sogdian","Sogo","Old_Sogdian","Sora","Sora_Sompeng","Soyo","Soyombo","Sund","Sundanese","Sylo","Syloti_Nagri","Syrc","Syriac","Tagb","Tagbanwa","Takr","Takri","Tale","Tai_Le","Talu","New_Tai_Lue","Taml","Tamil","Tang","Tangut","Tavt","Tai_Viet","Telu","Telugu","Tfng","Tifinagh","Tglg","Tagalog","Thaa","Thaana","Thai","Tibt","Tibetan","Tirh","Tirhuta","Tnsa","Tangsa","Toto","Ugar","Ugaritic","Vaii","Vai","Vith","Vithkuqi","Wara","Warang_Citi","Wcho","Wancho","Xpeo","Old_Persian","Xsux","Cuneiform","Yezi","Yezidi","Yiii","Yi","Zanb","Zanabazar_Square","Zinh","Inherited","Qaai","Zyyy","Common","Zzzz","Unknown"]),Script_Extensions:void 0};OM.Script_Extensions=OM.Script;function VM(){return{explode:e,implode:t,__lpcBinaryArrayHelper:i,__lpcBinaryHelper:o,__lpcIndexAccessHelper:c};function e(u,p){return u&&u.split(p)}function t(u,p){return u&&u.join(p)}function i(u,p,m){switch(m){case"+":return u.concat(p);case"-":return u.filter(g=>!p.includes(g));default:throw"Unhandled array operator "+m}}function o(u,p,m){if(Array.isArray(u)&&Array.isArray(p))return i(u,p,m);switch(m){case"+":return u+p;case"-":return u-p;case"*":return u*p;case"/":return u/p;case"==":return u==p;case"=":return p;default:throw new Error("Unhandled operator "+m)}}function c(u,p){if(typeof p=="number")return u[p];if(typeof p=="string"){let m=p.startsWith("<")?u.length-parseInt(p.slice(1))+1:parseInt(p);return u[m]}else if(typeof p=="object"){let{start:m,end:g}=p;return typeof m=="string"&&m.startsWith("<")&&(m=u.length-parseInt(m.slice(1))+1),typeof g=="string"&&g.startsWith("<")&&(g=u.length-parseInt(g.slice(1))+1),g===void 0?u.slice(m):m===void 0?u.slice(0,g):u.slice(m,g)}}}function Ky(e){return Fa(e,"pos")&&Fa(e,"end")}function us(e){return e.name}function Mo(e){return e.text}function Nh(e){return(e.flags&16)===0}function io(e,t){if(e===void 0||Nh(e))return e;for(e=e.original;e;){if(Nh(e))return!t||t(e)?e:void 0;e=e.original}}function ki(e){return!!e&&lg(e.kind)}function qM(e){switch(e){case 169:case 154:case 270:case 271:case 283:return!0;default:return!1}}function lg(e){switch(e){case 156:case 151:case 202:case 283:case 150:case 158:case 196:return!0;default:return qM(e)}}function WF(e,t){fo(e)&&(e=mN(e));let i=t(e);return e.kind===237&&(e=e.parent),e&&e.kind===238&&(i|=t(e),e=e.parent),e&&e.kind===242&&(i|=t(e)),i}function zf(e){return WF(e,qH)}function qH(e){return e.flags}function Zc(e){switch(e.kind){case 236:case 283:case 151:case 240:case 255:case 168:case 243:case 244:case 169:case 270:case 158:case 150:case 217:case 219:case 196:case 202:case 225:case 264:case 176:case 239:return!0;default:return!1}}function Fc(e){return!!e.name}function Ex(e){switch(e.kind){case 89:return e;case 272:case 269:switch(ds(e)){default:return}case 176:let t=e;return e.name}return e.name}function GH(e){if(e.parent){if(gr(e.parent)&&e===e.parent.right){if(cn(e.parent.left))return e.parent.left}else if(po(e.parent)&&cn(e.parent.name))return e.parent.name}else return}function ti(e){if(e!==void 0)return Ex(e)||(xs(e)||Pl(e)?GH(e):void 0)}function Hf(e){return e.kind===244}function ou(e){return Yf(e,8)}function au(e){return GM(ou(e).kind)}function GM(e){switch(e){case 268:case 286:case 281:case 276:case 278:case 272:case 273:case 237:case 290:case 291:case 289:case 283:case 293:case 282:case 277:case 274:case 270:case 89:case 284:case 285:case 11:case 13:case 16:case 14:case 135:case 137:case 136:case 71:case 173:return!0;default:return!1}}function Ou(e){return e.kind===272||e.kind===276}function wo(e){return d2(e.kind)}function pc(e){return e&&qM(e.kind)}function Cx(e,t){if(!Qy(e))return xe;let i=e.jsDoc?.jsDocCache;if(i===void 0||t){let o=CN(e,t);I.assert(o.length<2||o[0]!==o[1]),i=Co(o,c=>ec(c)?c.tags:c),t||(e.jsDoc??(e.jsDoc=[]),e.jsDoc.jsDocCache=i)}return i}function ug(e,t,i){return fr(Cx(e,i),t)}function KF(e){return ug(e,g2)}function It(e,t){for(;e;){let i=t(e);if(i==="quit")return;if(i)return e;e=e.parent}}function qf(e){switch(e.kind){case 272:case 276:case 273:return!0;default:return!1}}function cN(e,t){switch(e.kind){case 243:case 244:case 245:case 246:return!0}return!1}function $H(e){return e===283||e===266||e===274||e===169||e===270||e===149||e===174||e===152||e===175||e===148||e===237||e===225||e===217||e===227}function Ru(e){return e.kind===148?e.parent&&e.parent.kind!==224:$H(e.kind)}function oo(e){return e?e.kind===265:!1}function qd(e){switch(e.kind){case 283:case 269:case 266:case 272:case 274:case 281:case 169:case 270:case 89:case 150:case 217:case 219:case 196:case 220:case 227:case 202:case 225:case 201:case 276:case 11:case 13:case 293:case 149:case 286:case 174:case 152:case 175:case 176:case 16:case 163:case 148:case 237:return!0;default:return!1}}function VF(e){return Mr(e)||Rs(e)&&ki(e.parent)}function QH(e){return e===169||e===173||e===170||e===239||e===241||e===172}function YH(e){return e.kind!==236||e.parent!==void 0&&e.parent.kind===255?!1:!Xf(e)}function $M(e){return e===250||e===251||e===245||e===247||e===254||e===244||e===243||e===253||e===249||e===248||e===256||e===242||e===246||e===233}function Hp(e){let t=e.kind;return $M(t)||QH(t)||YH(e)}function Vy(e){return WF(e,Sd)}function Xs(e){return XH(ou(e).kind)}function XH(e){switch(e){case 267:case 283:case 269:case 294:case 235:case 234:return!0;default:return QM(e)}}function Mh(e){return QM(ou(e).kind)}function QM(e){switch(e){case 298:case 288:case 296:case 279:return!0;default:return GM(e)}}function Nx(e){let t=zd(e.text);return t?So(t,fc):void 0}function Bh(e){return lN(e.kind)}function lN(e){return e>=0&&e<=145}function uN(e){return e.kind===203||e.kind===204||e.kind===205}function dN(e){return e.kind===199||e.kind===198||e.kind===200||uN(e)||fg(e)||Bu(e)||_d(e)}function jh(e){return e>=146}function Gf(e){return e.kind===89}function Rh(e){return e.start+e.length}function el(e,t){if(e<0)throw new Error("start < 0");if(t<0)throw I.fail("length < 0"),new Error("length < 0");return{start:e,length:t}}function Zs(e,t){return el(e,t-e)}function Gd(e){return!!e.initializer}function Jh(e){return e.kind===250||e.kind===251}function dg(e){let t=e.kind;return t===146||t===89}function pN(e){return!1}function $f(e){let t=e.kind;return t===89||t===16||t===11||t===147}function zF(e){switch(e.kind){case 293:case 290:case 270:case 274:return!0}return!1}function fN(e){let t=e.kind;return t===286||t===146}function YM(e,t){return t>=e.pos&&t<=e.end}function zy(e){return 11<=e&&e<=16}var zM=1073741823;function HF(e){let t=zM;for(let i of e){if(!i.length)continue;let o=0;for(;o<i.length&&o<t&&Nl(i.charCodeAt(o));o++);if(o<t&&(t=o),t===0)return 0}return t===zM?void 0:t}function ns(e,t){if(e)for(;e.original!==void 0;)e=e.original;return!e||!t||t(e)?e:void 0}function Hy(e){return zy(e.kind)}function Uh(e){switch(e.kind){case 237:case 149:case 266:case 152:case 174:return!0;default:return!1}}function XM(e){let t=ko(e.parameters);return!!t&&Dx(t)}function Dx(e){let t=Os(e)?e.typeExpression&&e.typeExpression.type:e.type;return e.dotDotDotToken!==void 0||!!t&&t.kind===197||!!(Sd(e)&512)}function mN(e){let t=e.parent;for(;fo(t.parent);)t=t.parent.parent;return t.parent}function ia(e){return!!e&&(e.kind===170||e.kind===274||e.kind===176)}function qp(e){return cn(e)&&e.emitNode?.autoGenerate!==void 0}function gN(e,t){if(t<0)throw new Error("newLength < 0");return{span:e,newLength:t}}var yN=gN(el(0,0),0);function ZM(e){if(e.length===0)return yN;if(e.length===1)return e[0];let t=e[0],i=t.span.start,o=Rh(t.span),c=i+t.newLength;for(let u=1;u<e.length;u++){let p=e[u],m=i,g=o,S=c,T=p.span.start,_=Rh(p.span),P=T+p.newLength;i=Math.min(m,T),o=Math.max(g,g+(_-S)),c=Math.max(P,P+(S-_))}return gN(Zs(i,o),c-i)}function qF(e){return WF(e,p2)}function pg(e){return HE(e,Hh,bN)}function TN(e){switch(e?.driverType){case 1:return"efuns/fluffos/";case 0:default:return"efuns/ldmud/"}}function hN(e){switch(e?.driverType){case 1:return"efuns.fluffos.h";case 0:default:return"efuns.ldmud.h"}}function $d(e){return hg(e)||nl(e)}function SN(e){return e.kind===16}function fg(e){return e.kind>=188&&e.kind<=231}function qy(e){return e.kind===150}function GF(e){return qf(e)||Fx(e)}function Wh(e){return!!e.type}function hd(e){return e.kind===16}function _N(e){return!!(yg(e)&167)}function e2(e){return _N(e)||e===125}function Gp(e){return mg(e.kind)}function mg(e){switch(e){case 119:case 114:case 124:case 122:case 123:case 125:case 131:case 130:case 128:case 127:case 143:case 144:return!0}return!1}function $p(e){return Cx(e,!1)}function Qf(e){return e.kind===227||e.kind===220}function Px(e){return $M(e.kind)}function Gy(e){let t=e.kind;return t===152||t===154||t===150}function $F(e){return qy(e)||Gy(e)}function n2(e,t){if(e.name)if(cn(e.name)){let i=e.name.text;return Cx(e.parent,t).filter(o=>Os(o)&&cn(o.name)&&o.name.text===i)}else{let i=e.parent.parameters.indexOf(e);I.assert(i>-1,"Parameters should always be in their parents' parameter list");let o=Cx(e.parent,t).filter(Os);if(i<o.length)return[o[i]]}return xe}function Kh(e){return n2(e,!1)}function t2(e){return n2(e,!0)}function r2(e,t){let i=e.name.text;return Cx(e.parent,t).filter(o=>Ys(o)&&o.typeParameters.some(c=>c.name.text===i))}function $y(e){let t=ug(e,Yy);return!t&&Qi(e)&&(t=fr(Kh(e),i=>!!i.typeExpression)),t&&t.typeExpression&&t.typeExpression.type}function kx(e){let t=e.kind;return t===279||t===296}function i2(e){return r2(e,!0)}function o2(e){return r2(e,!1)}function vx(e){return e.constraint?e.constraint:Ys(e.parent)&&e===e.parent.typeParameters[0]?e.parent.constraint:void 0}function a2(e){if(su(e,67559))return Rr(e.modifiers,Gp)}function gg(e){let t=ug(e,Yy);if(t&&t.typeExpression&&t.typeExpression.type)return t}function xN(e){return ug(e,NN)}function QF(e,t){return $p(e).filter(t)}function s2(e){return QF(e,y2)}function ZH(e){return ug(e,qh)}function c2(e){let t=ZH(e);if(t&&t.typeExpression)return t.typeExpression.type;let i=gg(e);if(i&&i.typeExpression){let o=i.typeExpression.type;if(Mu(o)){let c=fr(o.members,T2);return c&&c.type}if(Zf(o)||DN(o))return o.type}}function Vh(e){if(_d(e)){if(Tg(e.parent)){let t=zh(e.parent);if(t&&rr(t.tags))return Co(t.tags,i=>Ys(i)?i.typeParameters:void 0)}return xe}if(xd(e))return I.assert(e.parent.kind===199),Co(e.parent.tags,t=>Ys(t)?t.typeParameters:void 0);if(e.typeParameters||f2(e)&&e.typeParameters)return e.typeParameters;if(mr(e)){let t=m2(e);if(t.length)return t;let i=$y(e);if(i&&Zf(i)&&i.typeParameters)return i.typeParameters}return xe}function YF(e){return ug(e,h2)}function l2(e){return!!ug(e,Os)}function XF(e){return ug(e,EN)}function u2(e){return e.kind===166||e.kind===280}var AN=oH(require("vm"));var nI=[],Ox=160,I2=1e6,qo={getNodeConstructor:()=>ZF,getTokenConstructor:()=>O2,getIdentifierConstructor:()=>R2,getSourceFileConstructor:()=>ZF,getSymbolConstructor:()=>w2,getTypeConstructor:()=>A2,getSignatureConstructor:()=>L2},rq=[];function L2(e,t){this.flags=t,I.isDebugging&&(this.checker=e)}function A2(e,t){this.flags=t,(I.isDebugging||Pt)&&(this.checker=e)}function w2(e,t){this.flags=e,this.name=t,this.declarations=void 0,this.valueDeclaration=void 0,this.id=0,this.mergeId=0,this.parent=void 0,this.members=void 0,this.exports=void 0,this.exportSymbol=void 0,this.constEnumOnlyModule=void 0,this.isReferenced=void 0,this.lastAssignmentPos=void 0,this.links=void 0}function ZF(e,t,i){this.pos=t,this.end=i,this.kind=e,this.id=0,this.flags=0,this.modifierFlagsCache=0,this.transformFlags=0,this.parent=void 0,this.original=void 0,this.emitNode=void 0}function O2(e,t,i){this.pos=t,this.end=i,this.kind=e,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0,this.emitNode=void 0}function R2(e,t,i){this.pos=t,this.end=i,this.kind=e,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0,this.original=void 0,this.emitNode=void 0}function iq(e,t){return e.end=t,e}function La(e,t,i){return iq(tI(e,t),i)}function tI(e,t){return e.pos=t,e}function M2(e,t,i){return La(e,t,t+i)}function rI(e,t,i){I.assertGreaterThanOrEqual(t,0),I.assertGreaterThanOrEqual(i,0),I.assertLessThanOrEqual(t,e.length),I.assertLessThanOrEqual(t+i,e.length)}var S2;function nm(e){return S2&&S2[e.key]||e.message}function tT(e,t){return e.replace(/{(\d+)}/g,(i,o)=>""+I.checkDefined(t[+o]))}function Xh(e,t,i,o,c,...u){I.assertIsDefined(t),i+o>t.length&&(o=t.length-i),rI(t,i,o);let p=nm(c);return Tn(u)&&(p=tT(p,u)),{file:void 0,start:i,length:o,messageText:p,category:c.category,code:c.code,reportsUnnecessary:c.reportsUnnecessary,fileName:e}}function Zh(e,t){let i=[];for(let o of e)o.fileName===t.fileName&&i.push(B2(o,t));return i}function B2(e,t){let i=t.fileName||"",o=t.text.length;I.assertEqual(e.fileName,i),I.assertLessThanOrEqual(e.start,o),I.assertLessThanOrEqual(e.start+e.length,o);let c={file:t,start:e.start,length:e.length,messageText:e.messageText,category:e.category,code:e.code,reportsUnnecessary:e.reportsUnnecessary};if(e.relatedInformation){c.relatedInformation=[];for(let u of e.relatedInformation)oq(u)&&u.fileName===i?(I.assertLessThanOrEqual(u.start,o),I.assertLessThanOrEqual(u.start+u.length,o),c.relatedInformation.push(B2(u,t))):c.relatedInformation.push(u)}return c}function oq(e){return e.file===void 0&&e.start!==void 0&&e.length!==void 0&&typeof e.fileName=="string"}function FM(e){return j2(e)|aq(e)}function aq(e){return 0}function j2(e){return SS(e)?iI(e.modifiers):0}function iI(e){let t=0;if(e)for(let i of e)t|=yg(i.kind);return t}function yg(e){switch(e){case 125:return 256;case 124:return 1;case 123:return 4;case 122:return 2;case 130:return 32;case 128:return 64;case 127:return 128;case 126:return 1024;case 131:return 512}return 0}function _s(e){return!(e>=0)}function wi(e){return _s(e.pos)||_s(e.end)}function Dt(e){for(;e&&e.kind!==176;)e=e.parent;return e}function nc(e,t=!1){let i=e;for(;e&&e.kind!==176&&!(e.kind===178&&(!t||e.parent&&e.parent.kind===176)&&e.text&&e!=i);)e=e.parent;return e}function Vd(e,t,i=!1){return sq(e.text,t,i)}function sq(e,t,i=!1){if(oa(t))return"";let o=e.substring(i?t.pos:Oi(e,t.pos),t.end);return cq(t)&&(o=o.split(/\r\n|\n|\r/).map(c=>c.replace(/^\s*\*/,"").trimStart()).join(`
22
+ `)),o}function cq(e){return!!It(e,am)}function oa(e){return e===void 0?!0:e.pos===e.end&&e.pos>=0&&e.kind!==1}function Bs(e,t){return e&&t&&(e.parent=t),e}function Ei(e){let t=new Map;if(e)for(let i of e)t.set(i.name,i);return t}function Yp(e){if(e.kind===270||e.kind===283){let t=e,i=e.parent;for(;i.kind===289;)t=i,i=i.parent;if(i.kind===272&&i.expression===t)return i}}function Qp(e){return!oa(e)}function wN(e){return(zf(e)&1)!==0||lq(e)}function lq(e){let t=e;return t.kind===237&&t.parent.kind===255}function Ng(e){return e.kind===149}function su(e,t){return!!uq(e,t)}function uq(e,t){return oI(e)&t}function oI(e){return aI(e,!1)}function aI(e,t,i){return e.kind>=0&&e.kind<=145?0:(e.modifierFlagsCache&536870912||(e.modifierFlagsCache=j2(e)|536870912),dq(e.modifierFlagsCache))}function dq(e){return e&2023}function pq(e){return 0}function ds(e){let t=pq(e);return t===5?t:0}function _2(e){return gr(e)||cn(e)||ao(e)}function Rx(e,t){let{valueDeclaration:i}=e;(!i||!(t.flags&33554432&&!(i.flags&33554432))&&_2(i)&&!_2(t)||i.kind!==t.kind)&&(e.valueDeclaration=t)}function Bo(e,...t){return!t.length||!mi(t)||(e.relatedInformation||(e.relatedInformation=[]),I.assert(e.relatedInformation!==xe,"Diagnostic had empty array singleton for related info, but is still being constructed!"),e.relatedInformation.push(...t.slice(0,100))),e}function em(e){switch(e.kind){case 89:case 16:case 11:return!0;default:return!1}}function Mx(e){return e.end-e.pos}function bs(e){return!e||Mx(e)===0?"(Missing)":Ic(e)}function Ic(e,t=!1){return(cn(e)||Pi(e)?e.text:void 0)??Vd(nc(e),e,t)}function ON(e,t){for(;Fq(t)&&t.parent;)t=t.parent;let i=t;switch(t.kind){case 176:{let u=Oi(e.text,0,!1);return u===e.text.length?el(0,0):_g(e,u)}case 237:case 266:case 274:case 169:case 270:case 152:i=t.name;break;case 299:case 301:{let u=Oi(e.text,t.pos),p=Math.max(t.end,t.statements.length>0?t.statements[0].pos:t.end);return Zs(u,p)}case 248:{let u=Oi(e.text,t.pos);return _g(e,u)}}if(i===void 0)return _g(e,t.pos);let o=oa(i);I.assertIsDefined(e);let c=o?i.pos:Oi(e.text,i.pos);return o?(I.assert(c===i.pos,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809"),I.assert(c===i.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809")):(I.assert(c>=i.pos,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809"),I.assert(c<=i.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809")),Zs(c,i.end)}function _g(e,t){let i=Wy(e.languageVersion,!0,!1,e.languageVariant,e.text,void 0,t);i.scan();let o=i.getTokenStart();return Zs(o,i.getTokenEnd())}function Lc(e,t,i,...o){let c=ON(e,t);return lu(e,c.start,c.length,i,...o)}function lu(e,t,i,o,...c){t>e.text.length&&(t=0),rI(e.text,t,i);let u=nm(o);return Tn(c)&&(u=tT(u,c)),{file:e,start:t,length:i,messageText:u,category:o.category,code:o.code,reportsUnnecessary:o.reportsUnnecessary,reportsDeprecated:o.reportsDeprecated}}function Bx(e){switch(e.kind){case 16:case 11:case 13:return!0;default:return!1}}function J2(e){return Bx(e)&&e.text==="0"}function sI(e){return Bx(e)&&e.text.length>0&&e.text!="0"}function U2(e){return gr(e)&&jx(e.operatorToken.kind)}function jx(e){return e===86||e===87}function cI(e){return e===59||e===58}function lI(e){return cI(e)}function eS(e){return gr(e)&&lI(e.operatorToken.kind)}function Wu(e){return e>=74&&e<=88}function fq(e,t=15){switch(e.kind){case 289:return(t&1)!==0;case 234:return(t&8)!==0}return!1}function Yf(e,t=15){for(;fq(e,t);)e=e.expression;return e}function Ku(e){return!!uI(e)}function uI(e){let t=e.parent;for(;;){switch(t.kind){case 269:let i=t,o=i.operatorToken.kind;return Wu(o)&&i.left===e?i:void 0;case 298:case 288:let c=t,u=c.operator;return u===47||u===48?c:void 0;case 244:let p=t;return p.initializer===e?p:void 0;case 289:case 290:case 294:e=t;break;case 175:if(t.name!==e)return;e=t.parent;break;case 174:if(t.name===e)return;e=t.parent;break;default:return}t=e.parent}}function Qh(e){return e.kind===89||e.kind===71||e.kind===286&&Qh(e.expression)||e.kind===289&&Qh(e.expression)}function vo(e,t){let i=t?17:1;return Yf(e,i)}function Jx(){let e=[],t=[],i=new Map,o=!1;return{add:u,lookup:c,getGlobalDiagnostics:p,getDiagnostics:m};function c(g){let S;if(g.file?S=i.get(g.file.fileName):S=e,!S)return;let T=Wd(S,g,Di,eI);if(T>=0)return S[T];if(~T>0&&bN(g,S[~T-1]))return S[~T-1]}function u(g){let S;g.file?(S=i.get(g.file.fileName),S||(S=[],i.set(g.file.fileName,S),Uf(t,g.file.fileName,Lu))):(o&&(o=!1,e=e.slice()),S=e),Uf(S,g,eI,bN)}function p(){return o=!0,e}function m(g){if(g)return i.get(g)||[];let S=vy(t,T=>i.get(T));return e.length&&S.unshift(...e),S}}function PN(e){return e.canonicalHead?.code||e.code}function kN(e){return e.canonicalHead?.messageText||e.messageText}function vN(e){return e.file?e.file.path:void 0}function mq(e,t){let i=kN(e),o=kN(t);typeof i!="string"&&(i=i.messageText),typeof o!="string"&&(o=o.messageText);let c=typeof e.messageText!="string"?e.messageText.next:void 0,u=typeof t.messageText!="string"?t.messageText.next:void 0,p=Lu(i,o);return p||(p=gq(c,u),p)?p:e.canonicalHead&&!t.canonicalHead?-1:t.canonicalHead&&!e.canonicalHead?1:0}function eI(e,t){let i=PN(e),o=PN(t);return Lu(vN(e),vN(t))||ro(e.start,t.start)||ro(e.length,t.length)||ro(i,o)||mq(e,t)||0}function gq(e,t){return e===void 0&&t===void 0?0:e===void 0?1:t===void 0?-1:W2(e,t)||K2(e,t)}function W2(e,t){if(e===void 0&&t===void 0)return 0;if(e===void 0)return 1;if(t===void 0)return-1;let i=ro(t.length,e.length);if(i)return i;for(let o=0;o<t.length;o++)if(i=W2(e[o].next,t[o].next),i)return i;return 0}function K2(e,t){let i;for(let o=0;o<t.length;o++){if(i=Lu(e[o].messageText,t[o].messageText),i)return i;if(e[o].next!==void 0&&(i=K2(e[o].next,t[o].next),i))return i}return 0}function bN(e,t){let i=PN(e),o=PN(t),c=kN(e),u=kN(t);return Lu(vN(e),vN(t))===0&&ro(e.start,t.start)===0&&ro(e.length,t.length)===0&&ro(i,o)===0&&yq(c,u)}function yq(e,t){let i=typeof e=="string"?e:e.messageText,o=typeof t=="string"?t:t.messageText;return Lu(i,o)===0}function dI({compilerOptions:e,requireSymbol:t,argumentsSymbol:i,error:o,getSymbolOfDeclaration:c,globals:u,lookup:p,setRequiresScopeChangeCache:m=rg,getRequiresScopeChangeCache:g=rg,onPropertyWithInvalidInitializer:S=ig,onFailedToResolveSymbol:T=rg,onSuccessfullyResolvedSymbol:_=rg}){var P=Ei();return v;function v(ce,me,V,ne,ve,$e){let Ie=ce,ge,Ae,Qe,ye,ae,Ee=!1,z,ze=ho(me)?me:me?.text,te=!ho(me)&&TD(me.parent)?me.parent.namespace:void 0,le=te?Ic(te)??"*":void 0;if(le==="efun"){let bn=u.get("efun::");if(bn&&(ge=p(bn.members,ze,V)))return ge}(le||V&268435456)&&(ce=Dt(ce));e:for(;ce;){if(!le&&Zc(ce)&&ce.locals&&(ge=p(ce.locals,ze,V))){let bn=!0;if(ki(ce)&&Ae&&Ae!==ce.body&&(V&ge.flags&788968&&Ae.kind!==199&&(bn=ge.flags&262144?!!(Ae.flags&16)||Ae===ce.type||Ae.kind===149||Ae.kind===220||Ae.kind===221||Ae.kind===148:!1),V&ge.flags&3&&(B(ge,ce,Ae)?bn=!1:ge.flags&1&&(bn=Ae.kind===149||!!(Ae.flags&16)||Ae===ce.type&&!!It(ge.valueDeclaration,Qi)))),bn)break e;ge=void 0}switch(Ee=Ee||y(ce,Ae),ce.kind){case 176:let bn=c(ce);if(!le&&((ge=p(bn.members,ze,V))||(ge=p(bn.exports,ze,V))))break e;let Ft=bn.inherits,ue=Array.from(Ft?.entries()??xe),gn=new Set;for(;!ge&&ue.length;){let[Pn,Ut]=ue.shift();if(gn.has(Pn))continue;gn.add(Pn);let kr=Ut?.symbol?.exports??P;if(ge=p(kr,ze,V),ge||(ge=p(Ut?.symbol?.members??P,ze,V)),ge)break e;let fn=Ut?.symbol?.inherits;ue.push(...fn?.entries()??xe)}break;case 152:break;case 241:case 274:if(ge=p(c(ce).members||P,ze,V&788968)){if(!j(ge,ce)){ge=void 0;break}break e}break;case 283:case 169:if(V&3&&/^\$\d+$/.test(ze)){ge=i;break e}else if(V&16&&ze==="$"){ge=i;break e}break;case 270:if(V&3&&ze==="arguments"){ge=i;break e}if(V&16){let Pn=ce.name;if(Pn&&ze===Pn.text){ge=ce.symbol;break e}}break;case 225:case 217:case 219:case 231:let je=zh(ce);je&&(ce=je.parent);break;case 149:Ae&&(Ae===ce.initializer||Ae===ce.name)&&(ae||(ae=ce));break}$(ce,Ae)&&(Qe=ce),Ae=ce,ce=Ys(ce)?Wx(ce)||ce.parent:(Os(ce)||qh(ce))&&oT(ce)||ce.parent}if(ve&&ge&&(!Qe||ge!==Qe.symbol)&&(ge.isReferenced|=V),ge||(Ae&&I.assertNode(Ae,Mr),$e||(ge=p(u,ze,V))),ne){if(ye&&S(Ie,ze,ye,ge))return;if(ge)_(Ie,ge,V,Ae,ae,Ee);else{let bn=T(Ie,me,V,ne);bn&&(ge=bn)}}return ge}function B(ce,me,V){let ne=me;return Qi(V)&&ne.body&&ce.valueDeclaration&&ce.valueDeclaration.pos>=ne.body.pos&&ce.valueDeclaration.end<=ne.body.end,!1;function ve(Ie){return $e(Ie.name)||!!Ie.initializer&&$e(Ie.initializer)}function $e(Ie){switch(Ie.kind){case 283:case 270:case 169:return!1;case 174:return $e(Ie.name);case 152:return $e(Ie.name);default:return wo(Ie)?!1:_o(Ie,$e)||!1}}}function y(ce,me){return ce.kind!==283&&ce.kind!==270?(pc(ce)||ce.kind===152)&&(!me||me!==ce.name):me&&me===ce.name?!1:ce.asteriskToken?!0:!Yp(ce)}function $(ce,me){switch(ce.kind){case 149:return!!me&&me===ce.name;case 169:case 241:case 170:case 155:case 239:return!0;default:return!1}}function j(ce,me){if(ce.declarations){for(let V of ce.declarations)if(V.kind===148&&(Ys(V.parent)?Ux(V.parent):V.parent)===me)return!0}return!1}}function Ux(e){let t=zh(e);if(!t)return;let i=t.parent;if(i&&i.jsDoc&&t===ko(i.jsDoc))return i}function zh(e){return It(e.parent,ec)}function nS(e){if(e.declarations){for(let t of e.declarations)if(t.localSymbol)return t.localSymbol}}function Wx(e){if(ec(e.parent)&&e.parent.tags){let t=fr(e.parent.tags,xd);if(t)return t}return oT(e)}function d2(e){return e>=157&&e<=168||e===102||e===92||e===93||e===140||e===101||e===94||e===104||e===105||e===98||e===99||e===258||e===133||e===191||e===192||e===193||e===194||e===195||e===196||e===197}function yi(e,t,...i){let o=nc(e);return I.assertIsDefined(o.text),Lc(o,e,t,...i)}function cu(e,...t){let i=nm(e);return Tn(t)&&(i=tT(i,t)),{file:void 0,start:void 0,length:void 0,messageText:i,category:e.category,code:e.code,reportsUnnecessary:e.reportsUnnecessary,reportsDeprecated:e.reportsDeprecated}}function ps(e){return e.kind===286||e.kind===281}function Cs(e){return e.kind===89||pI(e)}function pI(e){return ii(e)&&cn(e.name)&&Cs(e.expression)}function V2(e){return Cs(e)||Pl(e)}function tS(e){return z2(e,!0)}function z2(e,t){return!1}function H2(e,...t){return{code:e.code,messageText:fI(e,...t)}}function fI(e,...t){let i=nm(e);return Tn(t)&&(i=tT(i,t)),i}function RN(e){return e.externalModuleIndicator!==void 0}function Xp(e){switch(e.kind){case 71:case 290:case 287:case 293:case 286:case 281:case 272:case 276:case 289:case 270:case 274:case 283:case 298:case 288:case 269:case 267:case 294:case 295:return!0;case 190:case 89:case 11:case 13:case 16:return Tq(e);default:return!1}}function Tq(e){let{parent:t}=e;switch(t.kind){case 237:case 149:case 152:case 174:return t.initializer===e;case 247:case 253:case 245:case 246:case 248:case 256:case 299:return t.expression===e;case 243:let i=t;return i.initializer===e&&i.initializer.kind!==238||i.condition===e||i.incrementor===e;case 244:let o=t;return o.initializer===e&&o.initializer.kind!==238||o.expression===e;case 175:return t.objectAssignmentInitializer===e;default:return Xp(t)}}function MN(e){return!!(e.flags&33554432)||!(Xp(e)||hq(e))}function hq(e){return cn(e)&&pu(e.parent)&&e.parent.name===e}function BN(e){return Xy(e)===1}function rS(e){return Xy(e)!==0}function Xy(e){let{parent:t}=e;switch(t?.kind){case 289:return Xy(t);case 288:case 298:let{operator:i}=t;return i===47||i===48?2:0;case 269:let{left:o,operatorToken:c}=t;return o===e&&Wu(c.kind)?(c.kind===74,2):0;case 286:return t.name!==e?0:Xy(t);case 174:{let u=Xy(t.parent);return e===t.name?Sq(u):u}case 175:return e===t.objectAssignmentInitializer?0:Xy(t.parent);case 290:return Xy(t);default:return 0}}function Sq(e){switch(e){case 0:return 1;case 1:return 0;case 2:return 2;default:return I.assertNever(e)}}function Qy(e){switch(e.kind){case 269:case 236:case 250:case 299:case 274:case 251:case 179:case 245:case 281:case 254:case 1:case 247:case 244:case 243:case 169:case 270:case 158:case 89:case 253:case 178:case 283:case 252:case 150:case 196:case 202:case 293:case 149:case 289:case 286:case 174:case 152:case 153:case 248:case 175:case 256:case 148:case 237:case 242:case 246:return!0;default:return!1}}function CN(e,t){let i;uS(e)&&Gd(e)&&Ms(e.initializer)&&(i=Po(i,x2(e,e.initializer.jsDoc)));let o=e;for(;o&&o.parent;){if(Ms(o)&&(i=Po(i,x2(e,o.jsDoc))),o.kind===149){i=Po(i,(t?t2:Kh)(o));break}if(o.kind===148){i=Po(i,(t?i2:o2)(o));break}o=LI(o)}return i||xe}function x2(e,t){let i=Ro(t);return Co(t,o=>{if(o===i){let c=Rr(o.tags,u=>_q(e,u));return o.tags===c?[o]:c}else return Rr(o.tags,Tg)})}function _q(e,t){return!(Yy(t)||EN(t))||!t.parent||!ec(t.parent)||!Vu(t.parent.parent)||t.parent.parent===e}function bd(e,t){return gr(e)&&(t?e.operatorToken.kind===74:Wu(e.operatorToken.kind))&&au(e.left)}function Dg(e){return It(e.parent,t=>xq(t,t.parent))}function q2(e){return It(e.parent,t=>Zc(t))}function jN(e){return!!e&&lg(e.kind)}function xq(e,t){switch(e.kind){case 176:case 240:case 255:case 243:case 244:case 169:case 270:case 283:case 152:return!0;case 236:return!jN(t)}return!1}function mI(e){let t=e.kind;return t===270||t===169||t===283||t===176}function Zp(e,t){for(;e;){if(e.kind===t)return e;e=e.parent}}function ef(e){let t=uI(e);if(!t)return 0;switch(t.kind){case 269:let i=t.operatorToken.kind;return i===74||jx(i)?1:2;case 298:case 288:return 2;case 244:return 1}}function bq(e){let t=vo(e.right);return t.kind===269&&vq(t.operatorToken.kind)}function Cq(e){return e===44}function Eq(e){return e===43||e===45||e===46}function Nq(e){return Cq(e)||Eq(e)}function Dq(e){return e===41||e===42}function Pq(e){return Dq(e)||Nq(e)}function kq(e){return e===49||e===50||e===51}function vq(e){return kq(e)||Pq(e)}function gI(e){let t=uI(e);return!!t&&bd(t,!0)&&bq(t)}function JN(e){if(e.kind>=242&&e.kind<=256)return!0;switch(e.kind){case 89:case 71:case 281:case 286:case 266:case 270:case 283:return!0;default:return!1}}function Jn(e){return e.flags&3899393?e.objectFlags:0}function rT(e,t){return e&&(e.flags=t),e}function G2(e,t){return e.checkLpcDirective&&e.checkLpcDirective.enabled===!1?!1:e.scriptKind===1||e.scriptKind===5?!0:e.scriptKind==7}function tl(e){return I.assertIsDefined(e.parent),!Mr(e)&&!oo(e)&&Ru(e.parent)&&e.parent.name===e}function yI(e,t,i){return{file:e,start:0,length:0,code:t.code,category:t.category,messageText:t.next?t:t.messageText,relatedInformation:i}}function Pg(e,t,i,o){let c=ON(e,t);return UN(e,c.start,c.length,i,o)}function UN(e,t,i,o,c){return rI(e.text,t,i),{file:e,start:t,length:i,code:o.code,category:o.category,messageText:o.next?o:o.messageText,relatedInformation:c,canonicalHead:o.canonicalHead}}function iS(e){return Iq(e),(e.flags&1048576)!==0}function Kx(e){return(e.flags&32)!==0}function Fq(e){return(e.flags&64)!==0}function oS(e){return(e.flags&96)!==0}function Iq(e){e.flags&2097152||((e.flags&262144||_o(e,iS))&&(e.flags|=1048576),e.flags|=2097152)}function Ac(e){if(!e)return 4;let t=0;switch(e.kind){case 169:case 270:case 283:break}return e.body||(t|=4),t}function rl(e){return _d(e)?e.type&&e.type.typeExpression&&e.type.typeExpression.type:(mr(e)?c2(e):void 0)??e.type}function Xf(e){return e&&e.kind===236&&ki(e.parent)}function aS(e){return It(e.parent,ki)}var Lq=[".c",".h",".lpc"];function nf(e){for(let t of Lq){let i=Aq(e,t);if(i!==void 0)return i}return e}function Aq(e,t){return mc(e,t)?TI(e,t):void 0}function TI(e,t){return e.substring(0,e.length-t.length)}function Qd(e,t){return!!WN(e,t)}function WN(e,t){return Sd(e)&t}function Sd(e){return aI(e,!0)}function $2(e){let t=e.parent;switch(t.kind){case 152:case 174:case 286:return t.name===e;case 266:return t.propertyName===e}return!1}function fc(e){return 92<=e&&e<=145}function sS(e){return e.kind>=188&&e.kind<=231}function bg(e,t,i){if(oa(e))return e.pos;if(sS(e))return Oi((t??Dt(e)).text,e.pos,!1,!0);if(i&&Ms(e))return bg(e.jsDoc[0],t);if(e.kind===232){t??(t=Dt(e));let o=Ta(gD(e,t));if(o)return bg(o,t,i)}return Oi((t??Dt(e)).text,e.pos,!1,!1,KN(e))}function KN(e){return!!e&&!!(e.flags&16777216)}function Ms(e){if(!Qy(e))return!1;let{jsDoc:t}=e;return!!t&&t.length>0}function Zy(e){return e.text}function Q2(e){Object.assign(qo,e),Ln(rq,t=>t(qo))}var wq=`\r
23
+ `,Oq=`
24
+ `;function Yd(e){switch(e.newLine){case 0:return wq;case 1:case void 0:return Oq}}var hI={files:xe,directories:xe};function iT(e){e.close()}function VN(e,t,i){return e!==t&&i.some(o=>!FI(FN(e,o),FN(t,o)))}function Rq({name:e,subModuleName:t}){return t?`${e}/${t}`:e}function kg(e){return`${Rq(e)}@${e.version}${e.peerDependencies??""}`}var Y2=[".c",".h",".lpc"];function kl(e,t){let i=e.entries();for(let[o,c]of i){let u=t(c,o);if(u)return u}}function Vx(e,t){return!t.directoryExists||t.directoryExists(e)}function tm(e){return e.exportSymbol?e.exportSymbol.flags|e.flags:e.flags}function Cd(e,t){let i=e.declarations;if(i){for(let o of i)if(o.kind===t)return o}}function jo(e){return e.flags&33554432?e.links.checkFlags:0}function vl(e,t=!1){if(e.valueDeclaration){let i=e.valueDeclaration,o=Vy(i);return e.parent&&e.parent.flags&32?o:o&-8}if(jo(e)&6){let i=e.links.checkFlags,o=i&1024?2:i&256?1:4,c=i&2048?256:0;return o|c}return e.flags&4194304?257:0}function rm(e){return(+e).toString()===e}function tf(e){return(e.flags&33554432)!==0}function X2(e){return e.parent.kind===286&&e.parent.expression===e}function SI(e){return e.parent.kind===286&&e.parent.name===e}function Z2(e){return!!e.parent&&(ii(e.parent)&&e.parent.name===e||js(e.parent)&&e.parent.argumentExpression===e)}function eB(e){return ol(e.parent)&&e.parent.right===e||ii(e.parent)&&e.parent.name===e}function zN(e){let t=Ux(e);if(t)return vB(t)||Mq(t)||kB(t)||IN(t)||t}function Mq(e){return yb(e)&&gr(e.expression)&&e.expression.operatorToken.kind===74?Bq(e.expression):void 0}function Bq(e){for(;bd(e,!0);)e=e.right;return e}function oT(e){let t=zN(e);if(t)return Nd(t)&&t.type&&ki(t.type)?t.type:ki(t)?t:void 0}function mr(e){return!0}function im(e){switch(e.kind){case 89:return e;case 146:do e=e.left;while(e.kind!==89);return e;case 286:do e=e.expression;while(e.kind!==89);return e}}function ju(e){switch(e.kind){case 89:return Mx(e)===0?Mo(e):Ic(e);case 146:return ju(e.left)+"."+ju(e.right);case 286:return cn(e.name)?ju(e.expression)+"."+ju(e.name):I.assertNever(e.name);default:return I.assertNever(e)}}function cS(e){switch(e.kind){case 283:return e.body;default:return!e.expression||wo(e.expression)?void 0:e.expression}}var Gh=[""," "];function HN(e){let t=Gh[1];for(let i=Gh.length;i<=e;i++)Gh.push(Gh[i-1]+t);return Gh[e]}function $h(){return Gh[1].length}function vg(e){var t,i,o,c,u,p=!1;function m(y){let $=Jy(y);$.length>1?(c=c+$.length-1,u=t.length-y.length+Ro($),o=u-t.length===0):o=!1}function g(y){y&&y.length&&(o&&(y=HN(i)+y,o=!1),t+=y,m(y))}function S(y){y&&(p=!1),g(y)}function T(y){y&&(p=!0),g(y)}function _(){t="",i=0,o=!0,c=0,u=0,p=!1}function P(y){y!==void 0&&(t+=y,m(y),p=!1)}function v(y){y&&y.length&&S(y)}function B(y){(!o||y)&&(t+=e,c++,u=t.length,o=!0,p=!1)}return _(),{write:S,rawWrite:P,writeLiteral:v,writeLine:B,increaseIndent:()=>{i++},decreaseIndent:()=>{i--},getIndent:()=>i,getTextPos:()=>t.length,getLine:()=>c,getColumn:()=>o?i*$h():t.length-u,getText:()=>t,isAtStartOfLine:()=>o,hasTrailingComment:()=>p,hasTrailingWhitespace:()=>!!t.length&&Nl(t.charCodeAt(t.length-1)),clear:_,writeKeyword:S,writeOperator:S,writeParameter:S,writeProperty:S,writePunctuation:S,writeSpace:S,writeStringLiteral:S,writeSymbol:(y,$)=>S(y),writeTrailingSemicolon:S,writeComment:T}}function ci(e,t,...i){let o=nm(t);return Tn(i)&&(o=tT(o,i)),{messageText:o,category:t.category,code:t.code,next:e===void 0||Array.isArray(e)?e:[e]}}function il(e){return 1}var jq=/[\\"\u0000-\u001f\t\v\f\b\r\n\u2028\u2029\u0085]/g,Jq=/[\\'\u0000-\u001f\t\v\f\b\r\n\u2028\u2029\u0085]/g,Uq=/\r\n|[\\`\u0000-\u001f\t\v\f\b\r\u2028\u2029\u0085]/g,Wq=new Map(Object.entries({" ":"\\t","\v":"\\v","\f":"\\f","\b":"\\b","\r":"\\r","\n":"\\n","\\":"\\\\",'"':'\\"',"'":"\\'","`":"\\`","\u2028":"\\u2028","\u2029":"\\u2029","\x85":"\\u0085","\r\n":"\\r\\n"}));function nB(e){return"\\u"+("0000"+e.toString(16).toUpperCase()).slice(-4)}function Kq(e,t,i){if(e.charCodeAt(0)===0){let o=i.charCodeAt(t+e.length);return o>=48&&o<=57?"\\x00":"\\0"}return Wq.get(e)||nB(e.charCodeAt(0))}function rf(e,t){let i=t===96?Uq:t===39?Jq:jq;return e.replace(i,Kq)}function qN(e){return e===39||e===34}function tB(e,t){if(e.length===0)return!1;let i=e.charCodeAt(0);return i===35?e.length>1&&vc(e.charCodeAt(1),t):vc(i,t)}function Fl(e){let t=e.length;return t>=2&&e.charCodeAt(0)===e.charCodeAt(t-1)&&Vq(e.charCodeAt(0))?e.substring(1,t-1):e}function Vq(e){return e===39||e===34||e===96}function Es(e,t){if(!mr(e)&&Ns(e)||xS(e))return;let i=e.type;!i&&po(e)&&du(e.parent.parent)&&(i=e.parent.parent.type);function o(){return Qf(e)?e.typeExpression&&e.typeExpression.type:$y(e)}if(i&&b2(i)){let c=o(),u=c&&(c.kind!==i.kind||nu(c))?c:i;if(po(e)&&cn(e.name)&&b2(u))if(t){let p=t.locals.get("__varDocTags")?.members,m;if(p&&(m=p.get(e.name.text))&&m.declarations){let S=Eo(m.declarations).typeExpression?.type;S&&(u=S)}}else console.warn("originatingFile should be provided for variable declarations");return u}else if(i||!mr(e))return i;return o()}function b2(e){return C2(e)||e.kind===138||e.kind===98||e&&nu(e)&&C2(e.elementType)}function C2(e){return e&&(e.kind===140||e.kind===101)}function GN(e){if(Tn(e.parameters,t=>!Es(t)))return!0;if(e.kind!==283){let t=Ta(e.parameters)}return!1}function Xd(e,t){return i(e);function i(o){switch(o.kind){case 248:return t(o);case 240:case 236:case 253:case 245:case 246:case 243:case 244:case 256:case 299:case 301:case 255:return _o(o,i)}}}function Hh(e,t){return eI(e,t)||zq(e,t)||0}function zq(e,t){return!e.relatedInformation&&!t.relatedInformation?0:e.relatedInformation&&t.relatedInformation?ro(t.relatedInformation.length,e.relatedInformation.length)||Ln(e.relatedInformation,(i,o)=>{let c=t.relatedInformation[o];return Hh(i,c)})||0:e.relatedInformation?-1:1}function rB(e){switch(e.kind){case 274:case 163:return e.members;case 293:return e.properties}}function iB(e){return!1}var Ix=Hq();function Hq(){var e="";let t=i=>e+=i;return{getText:()=>e,write:t,rawWrite:t,writeKeyword:t,writeOperator:t,writePunctuation:t,writeSpace:t,writeStringLiteral:t,writeLiteral:t,writeParameter:t,writeProperty:t,writeSymbol:(i,o)=>t(i),writeTrailingSemicolon:t,writeComment:t,getTextPos:()=>e.length,getLine:()=>0,getColumn:()=>0,getIndent:()=>0,isAtStartOfLine:()=>!1,hasTrailingComment:()=>!1,hasTrailingWhitespace:()=>!!e.length&&Nl(e.charCodeAt(e.length-1)),writeLine:()=>e+=" ",increaseIndent:$i,decreaseIndent:$i,clear:()=>e=""}}function _I(e){let t=Ix.getText();try{return e(Ix),Ix.getText()}finally{Ix.clear(),Ix.writeKeyword(t)}}function zx(e,t,i){switch(e){case 235:return 0;case 294:return 1;case 267:return 4;case 269:switch(t){case 27:return 0;case 74:case 75:case 76:case 78:case 77:case 79:case 80:case 81:case 82:case 83:case 84:case 88:case 85:case 86:case 87:return 3;default:return Hx(t)}case 298:return 16;case 288:return 17;case 272:return 18;case 276:return i?19:18;case 286:case 281:return 19;case 71:case 89:case 137:case 136:case 135:case 11:case 13:case 16:case 290:case 293:case 270:case 283:case 274:case 289:return 20;default:return-1}}function Hx(e){switch(e){case 59:return 5;case 58:return 6;case 53:return 7;case 54:return 8;case 52:return 9;case 35:case 36:case 37:case 38:return 10;case 29:case 32:case 33:case 34:case 103:return 11;case 49:case 50:case 51:return 12;case 41:case 42:return 13;case 43:case 45:case 46:return 14;case 44:return 15;case 74:return 11}return-1}function $N(e){let t=oB(e),i=e.kind===276&&e.arguments!==void 0;return zx(e.kind,t,i)}function oB(e){return e.kind===269?e.operatorToken.kind:e.kind===298||e.kind===288?e.operator:e.kind}function aB(e){let t=oB(e),i=e.kind===276&&e.arguments!==void 0;return xI(e.kind,t,i)}function xI(e,t,i){switch(e){case 276:return i?0:1;case 298:case 267:return 1;case 269:switch(t){case 44:case 74:case 75:case 76:case 78:case 77:case 79:case 80:case 81:case 82:case 83:case 84:case 88:case 85:case 86:case 87:return 1}}return 0}function qx(e){return e.kind===269&&e.operatorToken.kind===27}function qq(e){return e.kind===235}function Gx(e){return qx(e)||qq(e)}function $x(e,t){for(;;){switch(e.kind){case 288:e=e.operand;continue;case 269:e=e.left;continue;case 267:e=e.condition;continue;case 272:if(t)return e;case 281:case 286:case 234:e=e.expression;continue}return e}}function Qx(e){let t=e.emitNode;return t&&t.internalFlags||0}function Yi(e){let t=e.emitNode;return t&&t.flags||0}function Gq(e,t,i){return Il(Ax(e,i,!1),t.end,i)}function Zd(e,t){return Gq(e,e,t)}function aT(e,t,i){return Il(Ax(e,i,!1),Ax(t,i,!1),i)}function Il(e,t,i){return xx(i,e,t)===0}function Ax(e,t,i){return _s(e.pos)?-1:Oi(t.text,e.pos,!1,i)}function Yx(e,t,i,o){let c=Ax(t,i,o);return xx(i,e.end,c)}function lS(e,t,i){return Il(e.end,Ax(t,i,!1),i)}function bI(e){return 0}function sB(e){return _S(e)&&(e.operator===41||e.operator===42)&&eu(e.operand)}function Fg(e){switch(e.kind){case 89:return e.text;case 16:case 11:return e.text;case 147:let t=e.expression;return wc(t)?t.text:sB(t)?t.operator===42?gi(t.operator)+t.operand.text:t.operand.text:void 0;default:return I.assertNever(e)}}function E2(e){return ii(e)}function $q(e){if(ii(e))return e.name;let t=vo(e.argumentExpression);return eu(t)||Pi(t)?t:e}function Cg(e){let t=$q(e);if(t&&(cn(t)||Pi(t)||eu(t)))return t.text}function cB(e,t){return em(e)&&em(t)?Zy(e)===Zy(t):E2(e)&&E2(t)?Cg(e)===Cg(t)&&cB(e.expression,t.expression):!1}function QN(e){return mr(e)&&e.initializer&&gr(e.initializer)&&e.initializer.operatorToken.kind===59&&e.name&&Cs(e.name)&&cB(e.name,e.initializer.left)?e.initializer.right:e.initializer}function uS(e){if(e)switch(e.kind){case 266:case 149:case 174:case 152:case 175:case 237:return!0}return!1}function lB(e){return fo(e)&&tS(e.parent.parent)}function dS(e){return e.kind===270||e.kind===283}function Qq(e){return e.pos}function pS(e,t){return Wd(e,t,Qq,ro)}function fS(e,t){for(;e;){if(e===t)return!0;e=e.parent}return!1}function of(e){if(157<=e.kind&&e.kind<=168)return!0;switch(e.kind){case 102:case 92:case 93:case 94:case 140:case 137:case 104:case 101:return!0;case 148:return e.parent.kind===264;case 89:(e.parent.kind===146&&e.parent.right===e||e.parent.kind===286&&e.parent.name===e)&&(e=e.parent),I.assert(e.kind===89||e.kind===146||e.kind===286,"'node' was expected to be a qualified name, identifier or property access in 'isPartOfTypeNode'.");case 146:case 286:{let{parent:t}=e;if(157<=t.kind&&t.kind<=168)return!0;switch(t.kind){case 148:return e===t.constraint;case 224:return e===t.constraint;case 152:case 149:case 237:return e===t.type;case 169:case 270:case 283:return e===t.type;case 150:return e===t.type;case 272:case 276:return!1}}}return!1}function Xx(e){return xd(e)||xS(e)||b6(e)}function uB(e){return It(e.parent,jN)}function dB(e,t){e.forEach((i,o)=>{t.set(o,i)})}function pB(e,t=jf){if(e.length<2)return!0;let i=e[0];for(let o=1,c=e.length;o<c;o++){let u=e[o];if(!t(i,u))return!1}return!0}function fB(e){return Ed(e)&&cn(e.typeName)}function mB(e){switch(e.kind){case 242:case 169:return!0;default:return!1}}function gB(e,t){for(;e&&e.kind===t;)e=e.parent;return e}function YN(e){return gB(e,165)}function yB(e){return e.declaration?bs(e.declaration.parameters[0].name):void 0}function CI(e,t,i){return!(i&&i(t))&&!e.identifiers.has(t)}function wc(e){return Pi(e)||eu(e)}function af(e){return e.flags&384?""+e.value:I.fail()}function mS(e){return!1}function TB(e){let t=e.kind;return(t===286||t===281)&&!0}function hB(e,t){let i=e;for(;i.next;)i=i.next[0];i.next=[t]}function p2(e){return aI(e,!0,!0)}function SB(e,t){I.assert(e.length!==0);let i=t(e[0]),o=i;for(let c=1;c<e.length;c++){let u=t(e[c]);u<i?i=u:u>o&&(o=u)}return{min:i,max:o}}function _B(e){return typeof e.messageText=="string"?{code:e.code,category:e.category,messageText:e.messageText,next:e.next}:e.messageText}function Zx(e,t,i,o){let c=Oi(e.text,t.pos);return UN(e,c,t.end-c,i,o)}function eb(e,t,i,...o){let c=Oi(e.text,t.pos);return lu(e,c,t.end-c,i,...o)}var Yq=[[".lpc",".h",".lpc"]],EI=Au(Yq);function xB(e){return Tn(EI,t=>mc(e,t))}var Xq={driverType:{dependencies:[],computeValue:e=>e.driverType??0}},gle=Xq.driverType.computeValue,Zq=["node_modules","bower_components","jspm_packages"],NI=`(?!(${Zq.join("|")})(/|$))`,bB={singleAsteriskRegexFragment:"([^./]|(\\.(?!min\\.js$))?)*",doubleAsteriskRegexFragment:`(/${NI}[^/.][^/]*)*?`,replaceWildcardCharacter:e=>DI(e,bB.singleAsteriskRegexFragment)};function DI(e,t){return e==="*"?t:e==="?"?"[^/]":"\\"+e}var CB={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:`(/${NI}[^/.][^/]*)*?`,replaceWildcardCharacter:e=>DI(e,CB.singleAsteriskRegexFragment)},EB={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:"(/.+?)?",replaceWildcardCharacter:e=>DI(e,EB.singleAsteriskRegexFragment)},PI={files:bB,directories:CB,exclude:EB},N2=/[^\w\s/]/g;function kI(e){return!/[.*?]/.test(e)}function XN(e,t,i,{singleAsteriskRegexFragment:o,doubleAsteriskRegexFragment:c,replaceWildcardCharacter:u}=PI[i]){let p="",m=!1,g=bS(e,t),S=Ro(g);if(i!=="exclude"&&S==="**")return;g[0]=sm(g[0]),kI(S)&&g.push("**","*");let T=0;for(let _ of g){if(_==="**")p+=c;else if(i==="directories"&&(p+="(",T++),m&&(p+=Jo),i!=="exclude"){let P="";_.charCodeAt(0)===42?(P+="([^./]"+o+")?",_=_.substr(1)):_.charCodeAt(0)===63&&(P+="[^./]",_=_.substr(1)),P+=_.replace(N2,u),P!==_&&(p+=NI),p+=P}else p+=_.replace(N2,u);m=!0}for(;T>0;)p+=")?",T--;return p}function NB(e,t,i){if(!(e===void 0||e.length===0))return Co(e,o=>o&&XN(o,t,i,PI[i]))}function Lx(e,t,i){let o=NB(e,t,i);return!o||!o.length?void 0:`^(${o.map(p=>`(${p})`).join("|")})${i==="exclude"?"($|/)":"$"}`}function eG(e,t,i){let o=[e];if(t){let c=[];for(let u of t){let p=nl(u)?u:si(Zr(e,u));c.push(tG(p))}c.sort(xh(!i));for(let u of c)di(o,p=>!cm(p,u,e,!i))&&o.push(u)}return o}var nG=[42,63];function tG(e){let t=fM(e,nG);return t<0?wg(e)?sm(vi(e)):e:e.substring(0,e.lastIndexOf(Jo,t))}function rG(e,t,i,o,c){e=si(e),c=si(c);let u=Zr(c,e);return{includeFilePatterns:qn(NB(i,u,"files"),p=>`^${p}$`),includeFilePattern:Lx(i,u,"files"),includeDirectoryPattern:Lx(i,u,"directories"),excludePattern:Lx(t,u,"exclude"),basePaths:eG(e,i,o)}}function xg(e,t){return new RegExp(e,t?"":"i")}function vI(e,t,i,o,c,u,p,m,g){e=si(e),u=si(u);let S=rG(e,i,o,c,u),T=S.includeFilePatterns&&S.includeFilePatterns.map(j=>xg(j,c)),_=S.includeDirectoryPattern&&xg(S.includeDirectoryPattern,c),P=S.excludePattern&&xg(S.excludePattern,c),v=T?T.map(()=>[]):[[]],B=new Map,y=Za(c);for(let j of S.basePaths)$(j,Zr(u,j),p);return Au(v);function $(j,ce,me){let V=y(g(ce));if(B.has(V))return;B.set(V,!0);let{files:ne,directories:ve}=m(j);for(let $e of zE(ne,Lu)){let Ie=Zr(j,$e),ge=Zr(ce,$e);if(!(t&&!hD(Ie,t))&&!(P&&P.test(ge)))if(!T)v[0].push(Ie);else{let Ae=uc(T,Qe=>Qe.test(ge));Ae!==-1&&v[Ae].push(Ie)}}if(!(me!==void 0&&(me--,me===0)))for(let $e of zE(ve,Lu)){let Ie=Zr(j,$e),ge=Zr(ce,$e);(!_||_.test(ge))&&(!P||!P.test(ge))&&$(Ie,ge,me)}}}function FI(e,t){return e===t||typeof e=="object"&&e!==null&&typeof t=="object"&&t!==null&&mM(e,t,FI)}function DB(e,t,i){let o=e.getCompilerOptions(),c=t===void 0?e.getSourceFiles():[t];return Rr(c,u=>iG(u,e,i))}function Ig(e){return e.scriptKind===6}function iG(e,t,i){let o=t.getCompilerOptions();if(e.isDeclarationFile||t.isSourceFileFromExternalLibrary(e))return!1;if(i||!Ig(e)||o.outFile)return!0;if(!o.outDir)return!1;if(o.rootDir){let c=mo(C6(o,()=>[],t.getCurrentDirectory(),t.getCanonicalFileName),t.getCurrentDirectory()),u=oG(e.fileName,o.outDir,t.getCurrentDirectory(),c,t.getCanonicalFileName);if(CS(e.fileName,u,t.getCurrentDirectory(),!t.useCaseSensitiveFileNames())===0)return!1}return!0}function oG(e,t,i,o,c){let u=mo(e,i);return u=c(u).indexOf(c(o))===0?u.substring(o.length):u,Zr(t,u)}function PB(e){return!Ig(e)}function ep(e,t){if(!e)return e;return eT(e,sS(e)?i:c),e;function i(u,p){if(t&&u?.parent===p)return"skip";Bs(u,p)}function o(u){if(u&&Ms(u))for(let p of u.jsDoc)i(p,u),eT(p,i)}function c(u,p){return i(u,p)||o(u)}}function FN(e,t){return e[t.name]}function MF(e,t){return e?.startsWith(t)?e.slice(t.length):e}function II(e){return e.useCaseSensitiveFileNames?e.useCaseSensitiveFileNames():!1}function nb(e){let t=e.parent;switch(e.kind){case 16:case 10:if(ts(t))return t.parent;case 89:if(Ru(t))return t.name===e?t:void 0;if(ol(t)){let i=t.parent;return Os(i)&&i.name===t?i:void 0}else{let i=t.parent;return gr(i)&&ds(i)!==0&&(i.left.symbol||i.symbol)&&ti(i)===e?i:void 0}default:return}}function tb(e){return wc(e)&&e.parent.kind===147&&Ru(e.parent.parent)}function uu(e,t){return e.flags&2097152?t.getAliasedSymbol(e):e}function Lg(e){return gB(e,289)}function Fx(e){return e.kind===270}function IN(e){return du(e)?Ta(e.declarationList.declarations):void 0}function kB(e){switch(e.kind){case 242:let t=IN(e);return t&&t.initializer;case 152:return e.initializer;case 174:return e.initializer}}function vB(e){return yb(e)&&gr(e.expression)&&ds(e.expression)!==0&&gr(e.expression.right)&&e.expression.right.operatorToken.kind===59?e.expression.right.right:void 0}function LI(e){let t=e.parent;if(t.kind===174||t.kind===152||t.kind===247&&e.kind===286||t.kind===248||bd(e))return t;if(t.parent&&(IN(t.parent)===e||bd(t)))return t.parent;if(t.parent&&t.parent.parent&&(IN(t.parent.parent)||kB(t.parent.parent)===e||vB(t.parent.parent)))return t.parent.parent}function FB(e,t){return Dl(t.text,e.pos)}function rb(e){return Mr(e)?Kr(Fy(ab(e)),cG(e))||xe:xe}function AI(e,t){for(;;){if(e=e.parent,!e)return;switch(e.kind){case 147:e=e.parent;break;case 169:case 270:if(!t)continue;case 152:case 153:return e}}}function sT(e){return!1}function sf(e,t,i=!0){return e.has(t)?!1:(e.set(t,i),!0)}function ZN(e){return e.text}function IB(e){return e?.kind===176}function wI(e,t){return Vd(t,e).charCodeAt(0)===34}function eD(e){switch(e.parent.kind){case 172:case 231:return e.parent;case 252:return e.parent;case 273:return e.parent;default:return}}function LB(e){return eD(e)||I.failBadSyntaxKind(e.parent)}function AB(e){return z2(e,!1)}function wB(e){return e.kind===176}function OB(e){switch(e.kind){case 169:case 270:return!0}return!1}function RB(e,t){for(;;){let i=t(e);if(i==="quit")return;if(i!==void 0)return i;if(!e||Mr(e))return;e=e.parent}}function ib(e){switch(e.kind){case 89:return e.emitNode?.autoGenerate?void 0:e.text;case 16:case 11:return e.text;case 147:return wc(e.expression)?e.expression.text:void 0;default:return I.assertNever(e)}}function OI(e){return e.replace(/\$/gm,()=>"\\$")}function np(e,t=e){return I.assert(t>=e||t===-1),{pos:e,end:t}}function nD(e,t){let i=e.kind===149||e.kind===148||e.kind===270||e.kind===271||e.kind===289||e.kind===237||e.kind===179||e.kind===252||e.kind===171?Kr(Hd(t,e.pos),Dl(t,e.pos)):Dl(t,e.pos);return Rr(i,o=>o.end<=e.end&&t.charCodeAt(o.pos+1)===42&&t.charCodeAt(o.pos+2)===42&&t.charCodeAt(o.pos+3)!==47)}function gS(e,t){let i=Qs(e);return wh(i,t)}function MB(e){switch(e.substr(e.lastIndexOf(".")).toLowerCase()){case".c":case".h":case".lpc":return 1;case".json":return 6;default:return 0}}function tD(e,t){return I.assert(e>=0),Qs(t)[e]}function yS(e,t){return e.charCodeAt(t+1)===42&&e.charCodeAt(t+2)===33}function ob(e){return e.kind===247&&e.expression.kind===16}function rD(e){return{pos:bg(e),end:e.end}}function iD(e,t){let i=t.pos-1,o=Math.min(e.text.length,Oi(e.text,t.end)+1);return{pos:i,end:o}}function BB(e){for(;ps(e);)e=e.expression;return e}function jB(e){return!1}function JB(e){let t;return _o(e,i=>{Qp(i)&&(t=i)},i=>{for(let o=i.length-1;o>=0;o--)if(Qp(i[o])){t=i[o];break}}),t}function Ag(e){return To(e.name,"__@")}function UB(e){return e.kind===152&&e.initializer!==void 0}function RI(e){return 92<=e&&e<=121}function D2(e){let t=e.match(/\//g);return t?t.length:0}function WB(e,t){return ro(D2(e),D2(t))}function aG(e){return fc(e)&&!RI(e)}function KB(e){let t=zd(e);return t!==void 0&&aG(t)}function UF(e){return 17<=e&&e<=73}function oD(e){return fc(e)||UF(e)}function ab(e){let t=void 0;return t&&mr(e),t}function sb(e){switch(e.kind){case 148:case 170:case 241:case 225:case 217:case 219:return!0;default:return!1}}function ua(e,t=!1,i=!1,o=!1){return{value:e,isSyntacticallyString:t,resolvedOtherFiles:i,hasExternalReferences:o}}function VB({evaluateElementAccessExpression:e,evaluateEntityNameExpression:t}){function i(o,c){let u=!1,p=!1,m=!1;switch(o=vo(o),o.kind){case 298:let g=i(o.operand,c);if(p=g.resolvedOtherFiles,m=g.hasExternalReferences,typeof g.value=="number")switch(o.operator){case 41:return ua(g.value,u,p,m);case 42:return ua(-g.value,u,p,m);case 57:return ua(~g.value,u,p,m)}break;case 269:{let S=i(o.left,c),T=i(o.right,c);if(u=(S.isSyntacticallyString||T.isSyntacticallyString)&&o.operatorToken.kind===41,p=S.resolvedOtherFiles||T.resolvedOtherFiles,m=S.hasExternalReferences||T.hasExternalReferences,typeof S.value=="number"&&typeof T.value=="number")switch(o.operatorToken.kind){case 53:return ua(S.value|T.value,u,p,m);case 52:return ua(S.value&T.value,u,p,m);case 50:return ua(S.value>>T.value,u,p,m);case 51:return ua(S.value>>>T.value,u,p,m);case 49:return ua(S.value<<T.value,u,p,m);case 54:return ua(S.value^T.value,u,p,m);case 43:return ua(S.value*T.value,u,p,m);case 45:return ua(S.value/T.value,u,p,m);case 41:return ua(S.value+T.value,u,p,m);case 42:return ua(S.value-T.value,u,p,m);case 46:return ua(S.value%T.value,u,p,m);case 44:return ua(S.value**T.value,u,p,m)}else if((typeof S.value=="string"||typeof S.value=="number")&&(typeof T.value=="string"||typeof T.value=="number")&&o.operatorToken.kind===41)return ua(""+S.value+T.value,u,p,m);break}case 16:return ua(o.text,!0);case 11:return ua(+o.text);case 13:return ua(+o.text);case 89:return t(o,c);case 286:if(Cs(o))return t(o,c);break;case 281:return e(o,c)}return ua(void 0,u,p,m)}return i}function cf(e){return!!(e.flags&384)}function wx(e){if(ii(e)){let t=wx(e.expression);if(t!==void 0)return t+"."+ju(e.name)}else if(js(e)){let t=wx(e.expression);if(t!==void 0&&$f(e.argumentExpression))return t+"."+Fg(e.argumentExpression)}else if(cn(e))return e.text}function aD(e){return e.kind===147&&!wc(e.expression)}function zB(e){return!1}function cb(e){return It(e.parent,t=>!!(rL(t)&1))}function sD(e){return(e.kind===154||e.kind===169)&&(e.parent.kind===293||e.parent.kind===176)}function HB(e){return e&&e.kind===1}function MI(e){return xB(e)?e:e+".c"}function lb(e){return e.declarations?.find(ia)}function BI(e){return e.content.map(i=>i.text).join("")}function jI(e){return e==="Infinity"||e==="-Infinity"||e==="NaN"}function qB(e){switch(I.type(e),e.kind){case 149:case 153:case 152:case 266:case 286:case 281:case 269:case 237:case 174:return!0;default:return!1}}function GB(e){if(!Qf(e))return!1;let{isBracketed:t,typeExpression:i}=e;return t||!!i&&i.type.kind===195}function JI(e){return mr(e)&&(e.type&&e.type.kind===195||Kh(e).some(GB))}function $B(e){switch(e.kind){case 149:return JI(e);case 227:case 220:return GB(e);default:return!1}}function lf(e){return Vu(e)&&mr(e)&&!!gg(e)}function UI(e,t=!0){switch(I.type(e),e.kind){case 136:case 135:case 11:case 13:case 16:return!0;case 298:return e.operator===42?Ju(e.operand):e.operator===41?Ju(e.operand):!1;default:return!1}}function cD(e){return xs(e)||Hu(e)||Pl(e)||Ns(e)}function WI(e,t,i,o){let c=Oi(i.text,e,!1,o),u=sG(c,t,i);return xx(i,u??t,c)}function sG(e,t=0,i){for(;e-- >t;)if(!Nl(i.text.charCodeAt(e)))return e}function KI(e){if(!e.parent)return;switch(e.kind){case 148:let{parent:i}=e;return;case 149:return e.parent.parameters;case 252:return e.parent.statements}let{parent:t}=e;if(fg(e))return Bu(e.parent)?void 0:e.parent.tags;switch(t.kind){case 163:return qy(e)?t.members:void 0;case 157:return t.types;case 290:case 235:return t.elements;case 293:return t.properties;case 272:case 276:return t.expression===e?void 0:t.arguments;case 236:case 299:case 301:return t.statements;case 240:return t.clauses;case 170:case 274:return Gy(e)?t.members:void 0;case 176:return t.statements}}function VI(e,t,i){return Il(e.end,t.end,i)}function zI(e,t,i,o){let c=Oi(i.text,e,!1,o);return xx(i,e,Math.min(t,c))}function ub(e){let t=!1;function i(){t&&(e.writeTrailingSemicolon(";"),t=!1)}return{...e,writeTrailingSemicolon(){t=!0},writeLiteral(o){i(),e.writeLiteral(o)},writeStringLiteral(o){i(),e.writeStringLiteral(o)},writeSymbol(o,c){i(),e.writeSymbol(o,c)},writePunctuation(o){i(),e.writePunctuation(o)},writeKeyword(o){i(),e.writeKeyword(o)},writeOperator(o){i(),e.writeOperator(o)},writeParameter(o){i(),e.writeParameter(o)},writeSpace(o){i(),e.writeSpace(o)},writeProperty(o){i(),e.writeProperty(o)},writeComment(o){i(),e.writeComment(o)},writeLine(){i(),e.writeLine()},increaseIndent(){i(),e.increaseIndent()},decreaseIndent(){i(),e.decreaseIndent()}}}function HI(e){return I.checkDefined(ib(e))}function TS(e,t,i){for(I.assert(e.kind!==176);;){if(e=e.parent,!e)return I.fail();switch(e.kind){case 147:if(i&&ia(e.parent.parent))return e;e=e.parent.parent;break;case 271:case 283:if(!t)continue;case 169:case 270:case 152:case 153:case 154:case 156:case 151:case 150:case 176:return e}}}function QB(e){return _6(e)?.kind===0}function cG(e){let t;return t=s2(e).map(i=>i.class),t||(t=_i(e.heritageClauses,i=>i.inheritClause)),t}function lD(e){for(;kh(e);)e=e.type;return e}function lG(e){return e.text==="this_object"}function YB(e){return!!e&&e.kind===89&&lG(e)}function qI(e){return Ed(e)&&cn(e.typeName)&&e.typeName.text==="object"&&e.typeArguments&&e.typeArguments.length===2&&(e.typeArguments[0].kind===94||e.typeArguments[0].kind===92)}function db(e){let t=ti(e);return!!t&&uG(t)}function uG(e){if(!(e.kind===147||e.kind===281))return!1;let t=js(e)?vo(e.argumentExpression):e.expression;return!wc(t)&&!sB(t)}function GI(e,t,i,o,c,u,p){let m,g;if(p?c.pos===0&&(m=Rr(Dl(e,c.pos),S)):m=Dl(e,c.pos),m){let T=[],_;for(let P of m){if(_){let v=Sg(t,_.end);if(Sg(t,P.pos)>=v+2)break}T.push(P),_=P}if(T.length){let P=Sg(t,Ro(T).end);Sg(t,Oi(e,c.pos))>=P+2&&(dG(t,i,c,m),mG(e,t,i,T,!1,!0,u,o),g={nodePos:c.pos,detachedCommentEndPos:Ro(T).end})}}return g;function S(T){return yS(e,T.pos)}}function dG(e,t,i,o){pG(e,t,i.pos,o)}function pG(e,t,i,o){o&&o.length&&i!==o[0].pos&&Sg(e,i)!==Sg(e,o[0].pos)&&t.writeLine()}function pb(e,t,i,o,c,u){if(e.charCodeAt(o+1)===42){let p=Uy(t,o),m=t.length,g;for(let S=o,T=p.line;S<c;T++){let _=T+1===m?e.length+1:t[T+1];if(S!==o){g===void 0&&(g=P2(e,t[p.line],o));let v=i.getIndent()*$h()-g+P2(e,S,_);if(v>0){let B=v%$h(),y=HN((v-B)/$h());for(i.rawWrite(y);B;)i.rawWrite(" "),B--}else i.rawWrite("")}fG(e,c,i,u,S,_),S=_}}else i.writeComment(e.substring(o,c))}function $I(e,t,i,o){i!==o&&Sg(e,i)!==Sg(e,o)&&t.writeLine()}function fG(e,t,i,o,c,u){let p=Math.min(t,u-1),m=e.substring(c,p).trim();m?(i.writeComment(m),p!==t&&i.writeLine()):i.rawWrite(o)}function Sg(e,t){return wh(e,t)}function P2(e,t,i){let o=0;for(;t<i&&Xc(e.charCodeAt(t));t++)e.charCodeAt(t)===9?o+=$h()-o%$h():o++;return o}function mG(e,t,i,o,c,u,p,m){if(o&&o.length>0){c&&i.writeSpace(" ");let g=!1;for(let S of o)g&&(i.writeSpace(" "),g=!1),m(e,t,i,S.pos,S.end,p),S.hasTrailingNewLine?i.writeLine():g=!0;g&&u&&i.writeSpace(" ")}}var k2=/[^\u0000-\u007F]/g;function uD(e,t){return e=rf(e,t),k2.test(e)?e.replace(k2,i=>nB(i.charCodeAt(0))):e}function QI(e,t,i){if(t&&gG(e,i))return Vd(t,e);switch(e.kind){case 16:{let o=i&1||Yi(e)&16777216?rf:uD;return e.singleQuote?"'"+o(e.text,39)+"'":'"'+o(e.text,34)+'"'}case 10:case 11:case 13:return e.text}return I.fail(`Literal kind '${e.kind}' not accounted for.`)}function gG(e,t){if(wi(e)||!e.parent||t&4&&e.isUnterminated)return!1;if(Ju(e)){if(e.numericLiteralFlags&26656)return!1;if(e.numericLiteralFlags&512)return!!(t&8)}return!0}function XB(e){let t=fr(e?.statements,u=>Ns(u)&&u.name.text==="get_include_path");if(!t)return;let i=E6(t,e)+`
25
+ return get_include_path(ctxInput);`,c={parsingContext:AN.createContext(VM(),{name:"masterApply_GetIncludePath"}),filename:e.fileName+".js.vm"};return AN.compileFunction(i,["ctxInput"],c)}function ZB(e,t){return{file:void 0,start:void 0,length:void 0,code:e.code,category:e.category,messageText:e.next?e:e.messageText,relatedInformation:t}}function e6(e,t,i){let o=e&&XN(e,t,i,PI[i]);return o&&`^(${o})${i==="exclude"?"($|/)":"$"}`}function dD(e){return console.debug("todo - getNameOfScriptTarget"),"LPC"}function n6(e){switch(e){case"fluffos":return 1;case"ldmud":default:return 0}}function fb(e){return!1}function t6(e,t){return e.path===t.path&&!e.prepend==!t.prepend&&!e.circular==!t.circular}function mb(e,t,i){return gb(YI(e),t,i)}function YI(e){if(e&&e.statements.length){let t=e.statements[0].expression;return So(t,Ka)}}function gb(e,t,i,o){return Ln(e?.properties,c=>{if(!zu(c))return;let u=ib(c.name);return t===u||o&&o===u?i(c):void 0})}function hS(e,t,i){return t.skipLibCheck&&e.isDeclarationFile||t.skipDefaultLibCheck&&e.hasNoDefaultLib||t.noCheck||i.isSourceOfProjectReferenceRedirect(e.fileName)||!yG(e,t)}function yG(e,t){return e.checkLpcDirective&&e.checkLpcDirective.enabled===!1?!1:e.scriptKind===1||e.scriptKind===5?!0:e.scriptKind===7}function XI(e){if(e.symbol)return e.symbol;if(!cn(e.name))return;let t=e.name.text,i=oT(e);if(!i)return;let o=fr(i.parameters,c=>c.name.kind===89&&c.name.text===t);return o&&o.symbol}function om(e,t){if(!nl(e))return e;let i=t?.rootDir??vi(t?.configFilePath??"");if(i&&e.startsWith(i)){let o=e.substring(i.length);return o=o.replace(/\\/g,"/"),o.startsWith("/")||(o="/"+o),o}}function pD(e,t){let i=mi(t)?t[0]:t;return Bs(La(we.createStringLiteral(i.arguments.name),i.range.pos,i.range.pos),e)}function ZI(e,t,i){return mb(e,t,o=>cT(o.initializer)?fr(o.initializer.elements,c=>Pi(c)&&c.text===i):void 0)}function r6(e,t,i){return gb(e,t,o=>cT(o.initializer)?fr(o.initializer.elements,c=>Pi(c)&&c.text===i):void 0)}function i6(e,t){return e.configFilePath!==t.configFilePath||fD(e,t)||TG(e,t)}function fD(e,t){return e.masterFile!==t.masterFile||e.sefunFile!==t.sefunFile}function TG(e,t){return VN(e,t,yD)}function o6(e,t,i,o){I.assert(e.length===t.length);for(let c=0;c<e.length;c++){let u=t[c],p=e[c],m=i(p);if(m?!u||!o(m,u):u)return!0}return!1}function a6(e,t){return e===t||e.resolvedModule===t.resolvedModule||!!e.resolvedModule&&!!t.resolvedModule&&e.resolvedModule.isExternalLibraryImport===t.resolvedModule.isExternalLibraryImport&&e.resolvedModule.extension===t.resolvedModule.extension&&e.resolvedModule.resolvedFileName===t.resolvedModule.resolvedFileName&&e.resolvedModule.originalPath===t.resolvedModule.originalPath&&e.alternateResult===t.alternateResult}function s6(e,t){return VN(e,t,x6)}function c6(e){let t=e.name.text,{typeParameters:i}=e.parent.parent.parent;return i&&fr(i,o=>o.name.text===t)}function f2(e){let t=e.kind;return!1}function m2(e){return Co($p(e),t=>hG(t)?t.typeParameters:void 0)}function hG(e){return Ys(e)&&!(e.parent.kind===199&&(e.parent.tags.some(xd)||e.parent.tags.some(Tg)))}function l6(e){return e.kind===272&&e.expression.kind===287}function u6(e){return QF(e,Tg)}function mD(e,t){return e[t]===void 0?!!e.strict:!!e[t]}function d6(e){return mr(e)&&Vu(e)&&Ms(e)&&!!XF(e)}function p6(e){return I.checkDefined(eL(e))}function eL(e){let t=XF(e);return t&&t.typeExpression&&t.typeExpression.type}function f6(e){return e.allowUnreachableCode===!1}function m6(e,t){let i=e.indexOf(t);return I.assert(i!==-1),e.slice(i)}function g6(e){let t;for(;e&&e.kind===165;)t=e,e=e.parent;return[t,e]}function y6(e,t){let i=Wy(e.languageVersion,!0,!0,e.languageVariant,e.text,void 0,t);return i.scan(),i.getToken()}function nL(e){let t=vi(si(Vi.getExecutingFilePath())),i=TN(e),o=yM().toLowerCase(),u=/^([a-z]+)([_-]([a-z]+))?$/.exec(o)[1],p=hN(e),m=[Zr(t,i,o,p),Zr(t,i,u,p),Zr(t,i,p)];return fr(m,g=>Vi.fileExists(g))}function tL(e,t){let i=t.indexOf(e);return i>=0&&i<t.length-1?t[i+1]:void 0}function T6(e,t,i){return{file:e,start:t.pos,length:t.end-t.pos,code:i.code,category:i.category,messageText:i.message}}function h6(e,t){let i=new Map(t.map(p=>[`${Go(e,p.range.end).line}`,p])),o=new Map;return{getUnusedExpectations:c,markUsed:u};function c(){return Yo(i.entries()).filter(([p,m])=>m.type===0&&!o.get(p)).map(([p,m])=>m)}function u(p){return i.has(`${p}`)?(o.set(`${p}`,!0),!0):!1}}function S6(e){if(ao(e)){let t=ti(e.expression);if(t&&cn(t)&&t.text==="this_object")return!0}return!1}function N6(){let e,t,i,o;return{createBaseSourceFileNode:c,createBaseIdentifierNode:u,createBaseTokenNode:p,createBaseNode:m};function c(g){return new(o||(o=qo.getSourceFileConstructor()))(g,-1,-1)}function u(g){return new(i||(i=qo.getIdentifierConstructor()))(g,-1,-1)}function p(g){return new(t||(t=qo.getTokenConstructor()))(g,-1,-1)}function m(g){return new(e||(e=qo.getNodeConstructor()))(g,-1,-1)}}function D6(e){let t,i;return{getParenthesizeLeftSideOfBinaryForOperator:o,getParenthesizeRightSideOfBinaryForOperator:c,parenthesizeLeftSideOfBinary:S,parenthesizeRightSideOfBinary:T,parenthesizeExpressionOfComputedPropertyName:_,parenthesizeConditionOfConditionalExpression:P,parenthesizeBranchOfConditionalExpression:v,parenthesizeExpressionOfExportDefault:B,parenthesizeExpressionOfNew:y,parenthesizeLeftSideOfAccess:$,parenthesizeOperandOfPostfixUnary:j,parenthesizeOperandOfPrefixUnary:ce,parenthesizeExpressionsOfCommaDelimitedList:me,parenthesizeExpressionForDisallowedComma:V,parenthesizeExpressionOfExpressionStatement:ne,parenthesizeConciseBodyOfArrowFunction:ve,parenthesizeCheckTypeOfConditionalType:$e,parenthesizeExtendsTypeOfConditionalType:Ie,parenthesizeConstituentTypesOfUnionType:Ae,parenthesizeConstituentTypeOfUnionType:ge,parenthesizeConstituentTypesOfIntersectionType:ye,parenthesizeConstituentTypeOfIntersectionType:Qe,parenthesizeOperandOfTypeOperator:ae,parenthesizeOperandOfReadonlyTypeOperator:Ee,parenthesizeNonArrayTypeOfPostfixType:z,parenthesizeTypeOfOptionalType:te,parenthesizeTypeArguments:Ft,parenthesizeLeadingTypeArgument:le};function o(ue){t||(t=new Map);let gn=t.get(ue);return gn||(gn=je=>S(ue,je),t.set(ue,gn)),gn}function c(ue){i||(i=new Map);let gn=i.get(ue);return gn||(gn=je=>T(ue,void 0,je),i.set(ue,gn)),gn}function u(ue,gn,je,Pn){let Ut=zx(269,ue),kr=xI(269,ue),fn=ou(gn);if(!je&&gn.kind===283&&Ut>3)return!0;let re=$N(fn);switch(ro(re,Ut)){case-1:return!0;case 1:return!1;case 0:if(je)return kr===1;if(gr(fn)&&fn.operatorToken.kind===ue){if(p(ue))return!1;if(ue===41){let ot=Pn?m(Pn):0;if(zy(ot)&&ot===m(fn))return!1}}return aB(fn)===0}}function p(ue){return ue===43||ue===53||ue===52||ue===54||ue===27}function m(ue){if(ue=ou(ue),zy(ue.kind))return ue.kind;if(ue.kind===269&&ue.operatorToken.kind===41){if(ue.cachedLiteralKind!==void 0)return ue.cachedLiteralKind;let gn=m(ue.left),je=zy(gn)&&gn===m(ue.right)?gn:0;return ue.cachedLiteralKind=je,je}return 0}function g(ue,gn,je,Pn){return ou(gn).kind===289?gn:u(ue,gn,je,Pn)?e.createParenthesizedExpression(gn):gn}function S(ue,gn){return g(ue,gn,!0)}function T(ue,gn,je){return g(ue,je,!1,gn)}function _(ue){return Gx(ue)?e.createParenthesizedExpression(ue):ue}function P(ue){let gn=zx(267,60),je=ou(ue),Pn=$N(je);return ro(Pn,gn)!==1?e.createParenthesizedExpression(ue):ue}function v(ue){let gn=ou(ue);return Gx(gn)?e.createParenthesizedExpression(ue):ue}function B(ue){let gn=ou(ue),je=Gx(gn);if(!je)switch($x(gn,!1).kind){case 274:case 270:je=!0}return je?e.createParenthesizedExpression(ue):ue}function y(ue){let gn=$x(ue,!0);switch(gn.kind){case 272:return e.createParenthesizedExpression(ue);case 276:return gn.arguments?ue:e.createParenthesizedExpression(ue)}return $(ue)}function $(ue,gn){let je=ou(ue);return au(je)&&(je.kind!==276||je.arguments)?ue:da(e.createParenthesizedExpression(ue),ue)}function j(ue){return au(ue)?ue:da(e.createParenthesizedExpression(ue),ue)}function ce(ue){return Mh(ue)?ue:da(e.createParenthesizedExpression(ue),ue)}function me(ue){let gn=Ia(ue,V);return da(e.createNodeArray(gn,ue.hasTrailingComma),ue)}function V(ue){let gn=ou(ue),je=$N(gn),Pn=zx(269,27);return je>Pn?ue:da(e.createParenthesizedExpression(ue),ue)}function ne(ue){let gn=ou(ue);if(ao(gn)){let Pn=gn.expression,Ut=ou(Pn).kind;(Ut===270||Ut===283)&&console.warn("implement me - parenthesizeExpressionOfExpressionStatement")}let je=$x(gn,!1).kind;return je===293||je===270?da(e.createParenthesizedExpression(ue),ue):ue}function ve(ue){return!Rs(ue)&&(Gx(ue)||$x(ue,!1).kind===293)?da(e.createParenthesizedExpression(ue),ue):ue}function $e(ue){switch(ue.kind){}return ue}function Ie(ue){switch(ue.kind){}return ue}function ge(ue){switch(ue.kind){case 157:return e.createParenthesizedType(ue)}return $e(ue)}function Ae(ue){return e.createNodeArray(Ia(ue,ge))}function Qe(ue){switch(ue.kind){case 157:return e.createParenthesizedType(ue)}return ge(ue)}function ye(ue){return e.createNodeArray(Ia(ue,Qe))}function ae(ue){return Qe(ue)}function Ee(ue){return ae(ue)}function z(ue){return ae(ue)}function ze(ue){return console.warn("implement me - hasJSDocPostfixQuestion"),!1}function te(ue){return ze(ue)?e.createParenthesizedType(ue):z(ue)}function le(ue){return ue}function bn(ue,gn){return gn===0?ue:ue}function Ft(ue){if(Tn(ue))return e.createNodeArray(Ia(ue,bn))}}var P6={getParenthesizeLeftSideOfBinaryForOperator:e=>Di,getParenthesizeRightSideOfBinaryForOperator:e=>Di,parenthesizeLeftSideOfBinary:(e,t)=>t,parenthesizeRightSideOfBinary:(e,t,i)=>i,parenthesizeExpressionOfComputedPropertyName:Di,parenthesizeConditionOfConditionalExpression:Di,parenthesizeBranchOfConditionalExpression:Di,parenthesizeExpressionOfExportDefault:Di,parenthesizeExpressionOfNew:e=>Ua(e,au),parenthesizeLeftSideOfAccess:e=>Ua(e,au),parenthesizeOperandOfPostfixUnary:e=>Ua(e,au),parenthesizeOperandOfPrefixUnary:e=>Ua(e,Mh),parenthesizeExpressionsOfCommaDelimitedList:e=>Ua(e,Ky),parenthesizeExpressionForDisallowedComma:Di,parenthesizeExpressionOfExpressionStatement:Di,parenthesizeConciseBodyOfArrowFunction:Di,parenthesizeCheckTypeOfConditionalType:Di,parenthesizeExtendsTypeOfConditionalType:Di,parenthesizeConstituentTypesOfUnionType:e=>Ua(e,Ky),parenthesizeConstituentTypeOfUnionType:Di,parenthesizeConstituentTypesOfIntersectionType:e=>Ua(e,Ky),parenthesizeConstituentTypeOfIntersectionType:Di,parenthesizeOperandOfTypeOperator:Di,parenthesizeOperandOfReadonlyTypeOperator:Di,parenthesizeNonArrayTypeOfPostfixType:Di,parenthesizeTypeOfOptionalType:Di,parenthesizeTypeArguments:e=>e&&Ua(e,Ky),parenthesizeLeadingTypeArgument:Di};var k6={convertToFunctionBlock:Kd,convertToFunctionExpression:Kd};var v6=0;function ES(e,t){let i=e&8?Di:qu,o=Dc(()=>e&1?P6:D6(g)),c=Dc(()=>k6),u=eg(b=>(E,O,W)=>V(b,E,O,W)),p=eg(b=>(E,O)=>et(b,E,O)),m=eg(b=>E=>F(b,E)),g={get parenthesizer(){return o()},baseFactory:t,flags:e,get converters(){return c()},getDeclarationName:ce,createToken:P,createSourceFile:S,createNodeArray:T,createIdentifier:z,createIntLiteral:Nt,createFloatLiteral:Bt,createStringLiteral:Kt,createBytesLiteral:ar,createLiteralLikeNode:Oo,createTrue:$e,createFalse:Ie,createStringLiteralFromNode:hn,createIncludeDirective:ic,createPragmaDirective:pt,createDefineDirective:ht,createUndefDirective:xt,createIndexSignature:ye,createTypeParameterDeclaration:ba,updateTypeParameterDeclaration:Kn,createFunctionTypeNode:ue,createCallSignature:Qe,createModifier:Fi,createModifiersFromModifierFlags:Ca,createTypePredicateNode:er,updateTypePredicateNode:Ti,createArrayTypeNode:qe,createUnionTypeNode:zn,createIntersectionTypeNode:jt,createParenthesizedType:Bc,createKeywordTypeNode:Tu,createTypeReferenceNode:dt,updateTypeReferenceNode:ot,createLiteralTypeNode:re,createTypeLiteralNode:yr,createStructTypeNode:Ut,createPropertySignature:li,createMethodSignature:Cr,createQualifiedName:Ko,createComputedPropertyName:St,updateComputedPropertyName:kn,createBindingElement:Sn,updateBindingElement:Fo,createEmptyStatement:X,createBlock:Le,createVariableDeclarationList:Vr,createVariableStatement:qi,createVariableDeclaration:fe,createFunctionDeclaration:No,createExpressionStatement:Mn,createReturnStatement:lt,createBreakStatement:ir,createContinueStatement:nn,createInheritDeclaration:Ur,createIfStatement:qt,createCaseBlock:Pe,createSwitchStatement:Be,createCaseClause:Wn,createDefaultClause:Ze,createForStatement:Lr,createForEachStatement:Cn,createDoWhileStatement:fi,createWhileStatement:Gn,createParameterDeclaration:xo,createMissingDeclaration:Ee,createStructDeclarationNode:fn,createCatchStatement:te,createCatchExpression:ze,createEvaluateExpression:le,createNewExpression:bn,createSpreadElement:Ft,createByRefElement:Un,createFunctionExpression:gn,createOmittedExpression:Tr,createParenthesizedExpression:sr,createConditionalExpression:Ve,createBinaryExpression:tn,createCallExpression:Zo,createInlineClosure:Fe,createSuperAccessExpression:ut,createPropertyAccessExpression:Ir,createPrefixUnaryExpression:cr,createPostfixUnaryExpression:so,createElementAccessExpression:ul,createRangeExpression:Io,createArrayLiteralExpression:Xi,createObjectLiteralExpression:dl,createMappingLiteralExpression:vr,createMappingEntryExpression:ct,convertToAssignmentExpression:ee,createLambdaIdentifierExpression:oi,createLambdaOperatorExpression:hi,createCastExpression:Ye,createCloneObjectExpression:Xo,createTypeAssertion:Pn,createNewStructExpression:kr,createExpressionWithTypeArguments:Hr,cloneNode:ae,createPropertyAssignment:je,createJSDocText:$o,createJSDocComment:ms,createJSDocParameterTag:rn,createJSDocTypeExpression:gs,createJSDocNameReference:Ws,createJSDocLink:Br,createJSDocLinkCode:Wr,createJSDocLinkPlain:Qt,createJSDocUnknownTag:Et,createJSDocPropertyTag:zr,createJSDocVariableTag:Ji,createJSDocTypeLiteral:Vo,createJSDocSeeTag:wa,createJSDocImplementsTag:Ga,createJSDocTypedefTag:hc,createJSDocAugmentsTag:Ks,createJSDocSignature:jc,createJSDocCallbackTag:is,createJSDocOverloadTag:$a,createJSDocTemplateTag:ln,get createJSDocOptionalType(){return m(195)},get createJSDocTypeTag(){return u(223)},get createJSDocReturnTag(){return u(221)},get createJSDocClassTag(){return p(211)},get createJSDocPublicTag(){return p(212)},get createJSDocPrivateTag(){return p(213)},get createJSDocProtectedTag(){return p(214)},get createJSDocOverrideTag(){return p(216)},get createJSDocDeprecatedTag(){return p(210)},get createJSDocAuthorTag(){return p(209)},get createJSDocThrowsTag(){return u(229)},get createJSDocSatisfiesTag(){return u(230)},get createJSDocThisTag(){return u(222)},get createJSDocVariadicType(){return m(197)},createSyntheticExpression:Sc,createSyntaxList:Oa};return g;function S(b,E,O){let W=t.createBaseSourceFileNode(176);return W.statements=T(b),W.endOfFileToken=E,W.flags|=O,W.text="",W.fileName="",W.path="",W.resolvedPath="",W.originalFileName="",W.languageVersion=1,W.languageVariant=0,W.scriptKind=0,W.isDeclarationFile=!1,W.hasNoDefaultLib=!1,W.transformFlags|=Ds(W.statements)|Pr(W.endOfFileToken),W.heritageClauses=void 0,W.inactiveCodeRanges=void 0,W.importCandidates=void 0,W.jsDocParsingMode=void 0,W.parsedMacros=void 0,W.locals=void 0,W.nextContainer=void 0,W.endFlowNode=void 0,W.bindSuggestionDiagnostics=void 0,W.nodeCount=0,W.identifierCount=0,W.symbolCount=0,W.parseDiagnostics=void 0,W.bindDiagnostics=void 0,W.lineMap=void 0,W.externalModuleIndicator=void 0,W.setExternalModuleIndicator=void 0,W.pragmas=void 0,W.checkLpcDirective=void 0,W.referencedFiles=void 0,W.typeReferenceDirectives=void 0,W.libReferenceDirectives=void 0,W.commentDirectives=void 0,W.identifiers=void 0,W.imports=void 0,W.ambientModuleNames=void 0,W.classifiableNames=void 0,W.impliedNodeFormat=void 0,W.nodeMacroMap=void 0,W}function T(b,E){if(b===void 0||b===xe)b=[];else if(Ky(b)){if(E===void 0||b.hasTrailingComma===E)return I.attachNodeArrayDebugInfo(b),b;let he=b.slice();return he.pos=b.pos,he.end=b.end,he.hasTrailingComma=E,he.isComplete=void 0,I.attachNodeArrayDebugInfo(he),he}let O=b.length,W=O>=1&&O<=4?b.slice():b;return W.pos=Ta(W)?.pos??-1,W.end=ko(W)?.end??-1,W.hasTrailingComma=!!E,W.isComplete=void 0,CG(W),I.attachNodeArrayDebugInfo(W),W}function _(b){return t.createBaseTokenNode(b)}function P(b){return _(b)}function v(b){return t.createBaseNode(b)}function B(b){let E=v(b);return E.symbol=void 0,E.localSymbol=void 0,E}function y(b,E,O,W=0,he){let be=he?b&&Ex(b):ti(b);if(be&&cn(be)&&!qp(be)){let vn=Bs(da(ae(be),be),be.parent);return W|=Yi(be),O||(W|=96),E||(W|=3072),W&&Va(vn,W),vn}return $(b)}function $(b,E=0,O,W){I.assert(!(E&7),"Argument out of range: flags");let he=b?Gf(b)?fu(!1,O,b,W,Mo):`generated@${za(b)}`:"";(O||W)&&(E|=16);let be=j(he,4|E,O,W);return be.original=b,be}function j(b,E,O,W){let he=ne(b);return I6(he,{flags:E,id:v6,prefix:O,suffix:W}),v6++,he}function ce(b,E,O){return y(b,E,O)}function me(b,E,O){let W=v(b);return W.tagName=E,W.comment=O,W}function V(b,E,O,W){let he=me(b,E??z(F6(b)),W);return he.typeExpression=O,he}function ne(b){let E=t.createBaseIdentifierNode(89);return E.text=b,E.jsDoc=void 0,E.flowNode=void 0,E.symbol=void 0,E}function ve(b){let E=t.createBaseSourceFileNode(176);E.flags|=b.flags&-17;for(let O in b)if(!(Fa(E,O)||!Fa(b,O))){if(O==="emitNode"){E.emitNode=void 0;continue}E[O]=b[O]}return E}function $e(){return P(136)}function Ie(){return P(135)}function ge(b){let E=ve(b);return i(E,b),E}function Ae(b){let E=ne(b.text);E.flags|=b.flags&-17,E.jsDoc=b.jsDoc,E.flowNode=b.flowNode,E.symbol=b.symbol,E.transformFlags=b.transformFlags,i(E,b);let O=lm(b);return O&&uT(E,O),E}function Qe(b,E,O){let W=B(151);return W.parameters=nr(E),W.type=O,W.transformFlags=0,W.jsDoc=void 0,W.locals=void 0,W.nextContainer=void 0,W.typeArguments=void 0,W}function ye(b,E,O){let W=B(150);return W.modifiers=nr(b),W.parameters=nr(E),W.type=O,W.transformFlags=0,W.jsDoc=void 0,W.locals=void 0,W.nextContainer=void 0,W.typeArguments=void 0,W}function ae(b){if(b===void 0)return b;if(Mr(b))return ge(b);if(cn(b))return Ae(b);let E=jh(b.kind)?t.createBaseNode(b.kind):t.createBaseTokenNode(b.kind);E.flags|=b.flags&-17,E.transformFlags=b.transformFlags,i(E,b);for(let O in b)Fa(E,O)||!Fa(b,O)||(E[O]=b[O]);return E}function Ee(){let b=B(173);return b.jsDoc=void 0,b}function z(b,E,O){E===void 0&&b&&(E=zd(b)),E===89&&(E=void 0);let W=ne(b);return O&&(W.flags|=256),W.transformFlags=0,W}function ze(b,E,O,W){let he=v(268);return he.expression=b,he.modifier=E,he.modifierExpression=O,he.block=W,he}function te(b,E){let O=v(255);return O.expression=b,O.block=E,O.transformFlags|=Pr(O.expression)|Pr(O.block),O.locals=void 0,O.nextContainer=void 0,O}function le(b,E){let O=v(278);return O.expression=b,O.arguments=E?o().parenthesizeExpressionsOfCommaDelimitedList(E):void 0,O.transformFlags|=Pr(O.expression)|Ds(O.arguments)|2,O}function bn(b,E,O){let W=B(276);return W.expression=b&&(wo(b)?b:o().parenthesizeExpressionOfNew(b)),W.typeArguments=nr(E),W.arguments=O?o().parenthesizeExpressionsOfCommaDelimitedList(O):void 0,W.transformFlags|=Pr(W.expression)|Ds(W.arguments)|2,W}function Ft(b){let E=v(294);return E.expression=o().parenthesizeExpressionForDisallowedComma(b),E.transformFlags|=Pr(E.expression)|1,E}function ue(b,E,O){let W=B(158);return W.parameters=nr(E),W.type=O,W.transformFlags=0,W.modifiers=void 0,W.jsDoc=void 0,W.locals=void 0,W.nextContainer=void 0,W.typeArguments=void 0,W}function gn(b,E,O,W,he){let be=B(270);return be.modifiers=nr(b),be.name=De(E),be.parameters=T(O),be.type=W,be.body=he,be.transformFlags|=lT(be.name)|Pr(be.type)|Ds(be.parameters)|Pr(be.body),be.typeArguments=void 0,be.jsDoc=void 0,be.locals=void 0,be.nextContainer=void 0,be.flowNode=void 0,be.endFlowNode=void 0,be.returnFlowNode=void 0,be}function je(b,E){let O=B(174);return O.name=De(b),O.initializer=o().parenthesizeExpressionForDisallowedComma(E),O.transformFlags|=lT(O.name)|Pr(O.initializer),O.modifiers=void 0,O.jsDoc=void 0,O}function Pn(b,E){let O=v(279);return O.expression=o().parenthesizeOperandOfPrefixUnary(E),O.type=b,O.transformFlags|=Pr(O.expression)|Pr(O.type),O}function Ut(b){let E=v(258);return E.typeName=b,E}function kr(b,E){let O=B(277);return O.type=b,O.arguments=E?nr(E):void 0,O}function fn(b,E,O,W){let he=B(241);return he.name=E,he.modifiers=nr(b),he.heritageName=O,he.type=W,he.transformFlags=he.heritageName?3:0,he.jsDoc=void 0,he.locals=void 0,he.nextContainer=void 0,he}function re(b){let E=v(257);return E.literal=b,E.transformFlags=0,E}function dt(b,E){let O=v(166);return O.typeName=De(b),O.typeArguments=E&&o().parenthesizeTypeArguments(T(E)),O.transformFlags=0,O}function ot(b,E,O){return b.typeName!==E||b.typeArguments!==O?Gr(dt(E,O),b):b}function Nt(b,E=0){let O=typeof b=="number"?b+"":b,W=B(11);return W.text=O,W.numericLiteralFlags=E,W.transformFlags=0,W}function Bt(b,E=0){let O=typeof b=="number"?b+"":b,W=B(13);return W.text=O,W.numericLiteralFlags=E,W.transformFlags=0,W}function Zt(b){let E=B(16);return E.text=b,E}function Kt(b,E){let O=Zt(b);return O.hasExtendedUnicodeEscape=E,O}function ar(b,E){let O=B(14);return O.text=b,O.hasExtendedUnicodeEscape=E,O}function hn(b){let E=Zt(Zy(b));return E.textSourceNode=b,E}function er(b,E,O){let W=v(167);return W.parameterName=De(E),W.type=O,W.transformFlags=0,W}function Ti(b,E,O,W){return b.parameterName!==O||b.type!==W?Gr(er(E,O,W),b):b}function qe(b){let E=v(161);return E.elementType=b,E}function Yn(b,E,O){let W=v(b);return W.types=g.createNodeArray(O(E)),W.transformFlags=0,W}function zn(b){let E=v(157);return E.types=g.createNodeArray(b),E}function jt(b){return Yn(159,b,o().parenthesizeConstituentTypesOfIntersectionType)}function nr(b){return b?.length>0?T(b):void 0}function Vr(b,E=0){let O=v(238);return O.flags|=E&1,O.declarations=T(b),O}function qi(b,E,O){let W=v(242);return W.modifiers=nr(b),W.type=E,W.declarationList=Array.isArray(O)?Vr(O):O,W.transformFlags|=Ds(W.modifiers)|Pr(W.declarationList),W.jsDoc=void 0,W.flowNode=void 0,W}function fe(b,E,O,W){let he=B(237);return he.name=De(b),he.type=O,he.initializer=W,he.refToken=E,he.transformFlags|=lT(he.name)|Pr(he.initializer),he.jsDoc=void 0,he}function _e(b){return b}function De(b){return typeof b=="string"?z(b):b}function Ve(b,E,O,W,he){let be=v(267);return be.condition=b,be.questionToken=E??P(60),be.whenTrue=O,be.colonToken=W??P(61),be.whenFalse=he,be}function tn(b,E,O){let W=B(269),he=pn(E);return W.left=b,W.operatorToken=he,W.right=O,W.jsDoc=void 0,W}function Ye(b,E){let O=v(296);return O.expression=b,O.type=E,O}function ee(b){I.assertNode(b.name,cn),I.assertIsDefined(b.equalsToken),I.assertIsDefined(b.initializer);let E=b.name,O=b.initializer,W=b.equalsToken;b.name=void 0,b.initializer=void 0,b.equalsToken=void 0;let he=b;return he.kind=269,he.left=E,he.operatorToken=W,he.right=O,he}function pn(b){return typeof b=="number"?P(b):b}function X(){let b=v(254);return b.jsDoc=void 0,b}function Le(b,E){let O=v(236);return O.statements=T(b),O.multiLine=E,O.transformFlags|=Ds(O.statements),O.jsDoc=void 0,O.locals=void 0,O.nextContainer=void 0,O}function oi(b){let E=v(284);return E.name=b,E}function hi(b){let E=v(285);return E.operator=b,E}function Cr(b,E,O,W,he,be){let vn=B(156);return vn.modifiers=nr(b),vn.name=De(E),vn.parameters=nr(he),vn.type=be,vn.transformFlags=0,vn.jsDoc=void 0,vn.locals=void 0,vn.nextContainer=void 0,vn.typeArguments=void 0,vn}function Sn(b,E,O,W){let he=B(266);return he.dotDotDotToken=b,he.propertyName=De(E),he.name=De(O),he.initializer=W,he.transformFlags|=Pr(he.dotDotDotToken)|lT(he.propertyName)|lT(he.name)|Pr(he.initializer)|(he.dotDotDotToken?1:0),he.flowNode=void 0,he}function Fo(b,E,O,W,he){return b.propertyName!==O||b.dotDotDotToken!==E||b.name!==W||b.initializer!==he?Gr(Sn(E,O,W,he),b):b}function Gr(b,E){return b!==E&&(i(b,E),da(b,E)),b}function No(b,E,O,W,he){let be=B(169);return be.modifiers=nr(b),be.name=De(E),be.parameters=T(O),be.type=W,be.body=he,be.body?be.transformFlags=Ds(be.modifiers)|Pr(be.asteriskToken)|lT(be.name)|Ds(be.typeParameters)|Ds(be.parameters)|Pr(be.type)|Pr(be.body)|4:be.transformFlags=0,be.typeArguments=void 0,be.jsDoc=void 0,be.locals=void 0,be.nextContainer=void 0,be.endFlowNode=void 0,be.returnFlowNode=void 0,be}function Oo(b,E){switch(b){case 11:return Nt(E,0);case 13:return Bt(E);case 16:return Kt(E,void 0)}}function Xo(b,E){let O=B(273);return O.expression=b,O.arguments=nr(E),O}function qa(b,E){let O=B(272);return O.expression=b,O.arguments=E,O.transformFlags|=Pr(O.expression)|Ds(O.typeArguments)|Ds(O.arguments),O.typeArguments&&(O.transformFlags|=0),O}function Zo(b,E){return qa(b,E)}function Fe(b){let E=B(283);return E.body=b,E.transformFlags|=Pr(E.body),E.jsDoc=void 0,E.locals=void 0,E.nextContainer=void 0,E.flowNode=void 0,E.endFlowNode=void 0,E.returnFlowNode=void 0,E.typeArguments=void 0,E}function Mn(b){let E=v(247);return E.expression=b,E.transformFlags|=Pr(E.expression),E.jsDoc=void 0,E.flowNode=void 0,E}function lt(b){let E=v(248);return E.expression=b,E.transformFlags|=Pr(E.expression),E.jsDoc=void 0,E.flowNode=void 0,E}function ir(b){let E=v(250);return E.label=De(b),E.transformFlags|=Pr(E.label)|4,E.jsDoc=void 0,E.flowNode=void 0,E}function nn(b){let E=v(251);return E.label=De(b),E.transformFlags|=Pr(E.label)|4,E.jsDoc=void 0,E.flowNode=void 0,E}function Un(b,E){let O=v(295);return O.expression=E,O}function ht(b,E,O){let W=B(179);return W.name=De(b),W.arguments=nr(E),W.range=O,W.transformFlags|=Pr(W.name),W.jsDoc=void 0,W}function xt(b){let E=v(180);return E.name=De(b),E.transformFlags=0,E}function Ur(b,E){let O=v(252);return O.modifiers=nr(E),O.inheritClause=b,O.transformFlags|=Ds(O.modifiers)|Pr(O.inheritClause),O.jsDoc=void 0,O}function ai(b){return b}function qt(b,E,O){let W=v(253);return W.expression=b,W.thenStatement=E,W.elseStatement=O,W.transformFlags|=Pr(W.expression)|Pr(W.thenStatement)|Pr(W.elseStatement),W.jsDoc=void 0,W.flowNode=void 0,W}function Pe(b){let E=v(240);return E.clauses=T(b),E.transformFlags|=Ds(E.clauses),E.locals=void 0,E.nextContainer=void 0,E}function Be(b,E,O){let W=v(256);return W.expression=b,W.caseBlock=O,W.preBlock=E,W.transformFlags|=Pr(W.expression)|Pr(W.caseBlock),W.jsDoc=void 0,W.flowNode=void 0,W.possiblyExhaustive=!1,W}function Ze(b){let E=v(301);return E.statements=T(b),E.transformFlags=Ds(E.statements),E}function Wn(b,E){let O=v(299);return O.expression=b,O.statements=T(E),O.transformFlags|=Pr(O.expression)|Ds(O.statements),O.jsDoc=void 0,O}function ut(b,E){let O=v(287);return O.namespace=De(E),O.name=b,O}function Ot(b,E,O){let W=B(286);return W.expression=b,W.name=E,W.propertyAccessToken=O,W.transformFlags=Pr(W.expression)|(cn(W.name)?iL(W.name):Pr(W.name)),W.jsDoc=void 0,W.flowNode=void 0,W}function Ir(b,E,O){return Ot(o().parenthesizeLeftSideOfAccess(b,!1),De(E),O)}function Lr(b,E,O,W){let he=v(243);return he.initializer=b,he.statement=W,he.condition=E,he.incrementor=O,he.transformFlags|=Pr(he.initializer)|Pr(he.condition)|Pr(he.incrementor)|Pr(he.statement),he.jsDoc=void 0,he.locals=void 0,he.nextContainer=void 0,he.flowNode=void 0,he}function Cn(b,E,O){let W=v(244);return W.initializer=b,W.statement=O,W.expression=E,W.transformFlags|=Pr(W.initializer)|Pr(W.expression)|Pr(W.statement),W.jsDoc=void 0,W.locals=void 0,W.nextContainer=void 0,W.flowNode=void 0,W}function fi(b,E){let O=v(245);return O.statement=b,O.expression=E,O.transformFlags|=Pr(O.statement)|Pr(O.expression)|4,O.jsDoc=void 0,O.flowNode=void 0,O}function Gn(b,E){let O=v(246);return O.statement=b,O.expression=E,O.transformFlags|=Pr(O.statement)|Pr(O.expression)|4,O.jsDoc=void 0,O.flowNode=void 0,O}function so(b,E){let O=v(288);return O.operator=E,O.operand=b,O.transformFlags|=Pr(O.operand),O}function xo(b,E,O,W,he,be){let vn=B(149);return vn.modifiers=nr(b),vn.name=De(O),vn.dotDotDotToken=E,vn.ampToken=W,vn.type=he,vn.initializer=be,vn.transformFlags=Ds(vn.modifiers)|Pr(vn.dotDotDotToken)|lT(vn.name)|Pr(vn.initializer),vn.jsDoc=void 0,vn}function xa(b,E){let O=B(281);return O.expression=b,O.argumentExpression=E,O.transformFlags|=Pr(O.expression)|Pr(O.argumentExpression),O.jsDoc=void 0,O.flowNode=void 0,O}function Wo(b){return typeof b=="string"?Kt(b):typeof b=="number"?Nt(b):b}function pt(b){let E=v(187);return E.expression=nr(b),E.transformFlags=0,E.jsDoc=void 0,E}function ic(b,E){let O=v(178);return O.content=T(b),O.localFirst=E,O.transformFlags=0,O.jsDoc=void 0,O}function Io(b,E){let O=B(282);return O.left=b,O.right=E,O.transformFlags|=Pr(O.left)|Pr(O.right),O.jsDoc=void 0,O}function ul(b,E){return xa(o().parenthesizeLeftSideOfAccess(b,!1),Wo(E))}function Ko(b,E){let O=v(146);return O.left=b,O.right=De(E),O.transformFlags|=Pr(O.left)|iL(O.right),O.flowNode=void 0,O}function St(b){let E=v(147);return E.expression=b,E.transformFlags|=Pr(E.expression),E}function kn(b,E){return b.expression!==E?Gr(St(E),b):b}function Tr(){return v(297)}function sr(b){let E=v(289);return E.expression=b,E.transformFlags=Pr(E.expression),E.jsDoc=void 0,E}function Bc(b){let E=v(165);return E.type=b,E.transformFlags=0,E}function Tu(b){return P(b)}function cr(b,E){let O=v(298);return O.operator=b,Mh(E)||(E=da(g.createParenthesizedExpression(E),E)),O.operand=Ua(E,Mh),O.transformFlags|=Pr(O.operand),(b===47||b===48)&&cn(O.operand)&&!qp(O.operand)&&!L6(O.operand)&&(O.transformFlags|=5),O}function dl(b,E){let O=B(293);return O.properties=T(b),O.multiLine=E,O.transformFlags|=Ds(O.properties),O.jsDoc=void 0,O}function Xi(b,E,O){let W=v(290),he=b&&ko(b),be=b?T(b,O):void 0;return W.elements=o().parenthesizeExpressionsOfCommaDelimitedList(be),W.multiLine=E,W.transformFlags|=Ds(W.elements),W}function vr(b,E,O,W){let he=v(291),be=E&&ko(E),vn=E?T(E,W):void 0;return he.initializer=b,he.elements=vn,he.multiLine=O,he.transformFlags|=Ds(he.elements),he}function ct(b,E){let O=v(292);return O.name=b,O.elements=nr(E),O.transformFlags|=Pr(O.name)|Ds(O.elements),O}function li(b,E,O){let W=B(153);return W.modifiers=nr(b),W.name=De(E),W.type=O,W.transformFlags=0,W.initializer=void 0,W.jsDoc=void 0,W}function yr(b){let E=B(163);return E.members=T(b),E.transformFlags=0,E}function $o(b){let E=v(200);return E.text=b,E}function ms(b,E){let O=v(199);return O.comment=b,O.tags=nr(E),O}function gs(b){let E=v(188);return E.type=b,E}function Ws(b){let E=v(189);return E.name=b,E}function Gt(b,E,O=!1){let W=F(b,O?E&&o().parenthesizeNonArrayTypeOfPostfixType(E):E);return W.postfix=O,W}function F(b,E){let O=v(b);return O.type=E,O}function se(b,E,O){let W=B(b);return W.comment=O,W.tagName=E,W}function rn(b,E,O,W,he,be){let vn=se(220,b??z("param"),be);return vn.typeExpression=W,vn.name=E,vn.isNameFirst=!!he,vn.isBracketed=O,vn}function et(b,E,O){return me(b,E??z(F6(b)),O)}function Br(b,E){let O=v(203);return O.name=b,O.text=E,O}function Wr(b,E){let O=v(204);return O.name=b,O.text=E,O}function Qt(b,E){let O=v(205);return O.name=b,O.text=E,O}function Et(b,E){return me(206,b,E)}function zr(b,E,O,W,he,be){let vn=se(227,b??z("prop"),be);return vn.typeExpression=W,vn.name=E,vn.isNameFirst=!!he,vn.isBracketed=O,vn}function Ji(b,E,O,W,he,be){let vn=se(228,b??z("var"),be);return vn.typeExpression=W,vn.name=E,vn.isNameFirst=!!he,vn.isBracketed=O,vn}function Vo(b,E=!1){let O=B(201);return O.jsDocPropertyTags=nr(b),O.isArrayType=E,O}function wa(b,E,O){let W=me(226,b??z("see"),O);return W.name=E,W}function Ga(b,E,O){let W=me(208,b??z("implements"),O);return W.class=E,W}function hc(b,E,O,W){let he=se(225,b??z("typedef"),W);return he.typeExpression=E,he.fullName=O,he.name=O,he.locals=void 0,he.nextContainer=void 0,he}function Ks(b,E,O){let W=me(207,b??z("augments"),O);return W.class=E,W}function Hr(b,E){let O=v(280);return O.expression=o().parenthesizeLeftSideOfAccess(b,!1),O.typeArguments=E&&o().parenthesizeTypeArguments(E),O.transformFlags|=Pr(O.expression)|Ds(O.typeArguments),O}function Sc(b,E=!1,O){let W=v(275);return W.type=b,W.isSpread=E,W.tupleNameSource=O,W}function Oa(b){let E=v(232);return E._children=b,E}function jc(b,E,O){let W=B(202);return W.parameters=T(E),W.type=O,W.jsDoc=void 0,W.locals=void 0,W.nextContainer=void 0,W}function is(b,E,O,W){let he=se(217,b??z("callback"),W);return he.typeExpression=E,he.fullName=O,he.name=O,he.locals=void 0,he.nextContainer=void 0,he}function $a(b,E,O){let W=me(218,b??z("overload"),O);return W.typeExpression=E,W}function ln(b,E,O,W){let he=me(224,b??z("template"),W);return he.constraint=E,he.typeParameters=T(O),he}function ba(b,E,O,W){let he=B(148);return he.modifiers=nr(b),he.name=De(E),he.constraint=O,he.default=W,he.transformFlags=0,he.expression=void 0,he.jsDoc=void 0,he}function Kn(b,E,O,W,he){return b.modifiers!==E||b.name!==O||b.constraint!==W||b.default!==he?Gr(ba(E,O,W,he),b):b}function Fi(b){return P(b)}function Ca(b){let E=[];return b&1&&E.push(Fi(124)),b&2&&E.push(Fi(122)),b&4&&E.push(Fi(123)),b&256&&E.push(Fi(125)),b&32&&E.push(Fi(130)),b&128&&E.push(Fi(127)),b&64&&E.push(Fi(128)),b&512&&E.push(Fi(131)),E.length?E:void 0}}function qu(e,t){if(e.original!==t&&(e.original=t,t)){let i=t.emitNode;i&&(e.emitNode=_G(i,e.emitNode))}return e}function _G(e,t){let{flags:i}=e;return t||(t={}),t}var SD=N6();function _D(e){return e.flags|=16,e}var xG={createBaseSourceFileNode:e=>_D(SD.createBaseSourceFileNode(e)),createBaseIdentifierNode:e=>_D(SD.createBaseIdentifierNode(e)),createBaseTokenNode:e=>_D(SD.createBaseTokenNode(e)),createBaseNode:e=>_D(SD.createBaseNode(e))},we=ES(4,xG);function bG(e,t){return t}function Pr(e){if(!e)return 0;let t=e.transformFlags;return Fc(e)&&$f(e.name)?bG(e.name,t):t}function CG(e){let t=0;for(let i of e)t|=Pr(i);e.transformFlags=t}function F6(e){switch(e){case 223:return"type";case 221:return"returns";case 222:return"this";case 219:return"enum";case 209:return"author";case 211:return"class";case 212:return"public";case 213:return"private";case 214:return"protected";case 215:return"readonly";case 216:return"override";case 224:return"template";case 225:return"typedef";case 220:return"param";case 227:return"prop";case 217:return"callback";case 218:return"overload";case 207:return"augments";case 208:return"implements";case 231:return"import";default:return I.fail(`Unsupported kind: ${I.formatSyntaxKind(e)}`)}}function Ds(e){return e?e.transformFlags:0}function lT(e){return e&&cn(e)?iL(e):Pr(e)}function iL(e){return Pr(e)}var oL=new WeakMap;function gD(e,t){let i=e.kind;return jh(i)?i===232?e._children:oL.get(t)?.get(e):xe}function A6(e,t,i){if(e.kind===232)return I.fail("Should not need to re-set the children of a SyntaxList."),[];let o=oL.get(t);return o===void 0&&(o=new WeakMap,oL.set(t,o)),o.set(e,i),i}function aL(e,t){return e===t?0:e.priority===t.priority?0:e.priority===void 0?1:t.priority===void 0?-1:ro(e.priority,t.priority)}function Va(e,t){return dT(e).flags=t,e}function dT(e){if(e.emitNode)I.assert(!(e.emitNode.internalFlags&8),"Invalid attempt to mutate an immutable node.");else{if(Nh(e)){if(e.kind===176)return e.emitNode={annotatedNodes:[e]};let t=Dt(io(Dt(e)))??I.fail("Could not determine parsed source file.");dT(t).annotatedNodes.push(e)}e.emitNode={}}return e.emitNode}function pT(e){return e.emitNode?.startsOnNewLine}function uT(e,t){return dT(e).identifierTypeArguments=t,e}function lm(e){return e.emitNode?.identifierTypeArguments}function NG(e,t){return dT(e).leadingComments=t,e}function xD(e){return e.emitNode?.leadingComments}function bD(e,t,i,o){return NG(e,Fr(xD(e),{kind:t,pos:-1,end:-1,hasTrailingNewLine:o,text:i}))}function sL(e){let t=Dt(io(e))?.emitNode?.annotatedNodes;if(t)for(let i of t)i.emitNode=void 0}function cL(e,t){let i=dT(e);return i.snippetElement=t,e}function w6(e,t){let i=dT(e);return i.flags=i.flags|t,e}function Tb(e){return e.emitNode?.commentRange??e}function _6(e){return e.emitNode?.snippetElement}function lL(e){return e.emitNode?.helpers}function I6(e,t){return dT(e).autoGenerate=t,e}function da(e,t){return t?La(e,t.pos,t.end):e}function SS(e){let t=e.kind;return t===148||t===149||t===153||t===152||t===156||t===154||t===150||t===270||t===242||t===169||t===271||t===274||t===170||t===239}var CD;(S=>{function e(T,_,P,v,B,y,$){let j=_>0?B[_-1]:void 0;return I.assertEqual(P[_],e),B[_]=T.onEnter(v[_],j,$),P[_]=p(T,e),_}S.enter=e;function t(T,_,P,v,B,y,$){I.assertEqual(P[_],t),I.assertIsDefined(T.onLeft),P[_]=p(T,t);let j=T.onLeft(v[_].left,B[_],v[_]);return j?(g(_,v,j),m(_,P,v,B,j)):_}S.left=t;function i(T,_,P,v,B,y,$){return I.assertEqual(P[_],i),I.assertIsDefined(T.onOperator),P[_]=p(T,i),T.onOperator(v[_].operatorToken,B[_],v[_]),_}S.operator=i;function o(T,_,P,v,B,y,$){I.assertEqual(P[_],o),I.assertIsDefined(T.onRight),P[_]=p(T,o);let j=T.onRight(v[_].right,B[_],v[_]);return j?(g(_,v,j),m(_,P,v,B,j)):_}S.right=o;function c(T,_,P,v,B,y,$){I.assertEqual(P[_],c),P[_]=p(T,c);let j=T.onExit(v[_],B[_]);if(_>0){if(_--,T.foldState){let ce=P[_]===c?"right":"left";B[_]=T.foldState(B[_],j,ce)}}else y.value=j;return _}S.exit=c;function u(T,_,P,v,B,y,$){return I.assertEqual(P[_],u),_}S.done=u;function p(T,_){switch(_){case e:if(T.onLeft)return t;case t:if(T.onOperator)return i;case i:if(T.onRight)return o;case o:return c;case c:return u;case u:return u;default:I.fail("Invalid state")}}S.nextState=p;function m(T,_,P,v,B){return T++,_[T]=e,P[T]=B,v[T]=void 0,T}function g(T,_,P){if(I.shouldAssert(2))for(;T>=0;)I.assert(_[T]!==P,"Circular traversal detected."),T--}})(CD||(CD={}));var uL=class{constructor(t,i,o,c,u,p){this.onEnter=t;this.onLeft=i;this.onOperator=o;this.onRight=c;this.onExit=u;this.foldState=p}};function fT(e,t,i,o,c,u){let p=new uL(e,t,i,o,c,u);return m;function m(g,S){let T={value:void 0},_=[CD.enter],P=[g],v=[void 0],B=0;for(;_[B]!==CD.done;)B=_[B](p,B,_,P,v,T,S);return I.assertEqual(B,0),T.value}}function L6(e){return(Yi(e)&32768)!==0}function fu(e,t,i,o,c){return t=tp(t,c),o=tp(o,c),i=DG(i,c),`${e?"#":""}${t}${i}${o}`}function DG(e,t){return typeof e=="string"?e:PG(e,I.checkDefined(t))}function PG(e,t){return qp(e)?t(e):Mo(e)}function tp(e,t){return typeof e=="object"?fu(!1,e.prefix,e.node,e.suffix,t):typeof e=="string"?e.length>0&&e.charCodeAt(0)===35?e.slice(1):e:""}function dL(e){let t=e.emitNode.autoGenerate;if(t.flags&4){let i=t.id,o=e,c=o.original;for(;c;){o=c;let u=o.emitNode?.autoGenerate;if(Gf(o)&&(u===void 0||u.flags&4&&u.id!==i))break;c=o.original}return o}return e}function mT(e){let t=$y(e);return I.assertIsDefined(t),t}function pL(e){let t=ns(e,Mr),i=t&&t.emitNode;return!!i&&(!!i.externalHelpersModuleName||!!i.externalHelpers)}function hb(e){return{loadInclude:t,loadIncludeFile:i};function t(c,u){let p=i(c,u,!1);return{uri:p.filename,source:p.source,error:p.error}}function i(c,u,p,m){let g=si(c),S=vi(g),T=si(u),_=e.getCompilerOptions().rootDir||e.getCurrentDirectory(),P,v;if(hg(T))P=rp(S,T);else if(Sb(T))P=rp(_,"."+T);else{let y=[...o(c),...m||[],_];bl(y,S),p&&y.reverse(),v=y,P=Ln(y,$=>(P=rp($,T),e.fileExists(P)?P:void 0))}if(!P)return{filename:T,error:`Include file ${u} not found`};let B=e.readFile(P);return{filename:P,source:B}}function o(c){return e.getIncludeDirs(c)}}var FG=8,IG=()=>K6;function K6(e,t,i,o){this.directive=void 0,this.name=e,this.includeFilename=t,this.includeDirPos=void 0,this.includeDirEnd=void 0,this.disabled=!1,this.pos=void 0,this.end=void 0,this.argsIn=void 0,this.range=o,this.arguments=void 0,this.getText=i,this.originFilename=void 0,this.posInOrigin=void 0,this.endInOrigin=void 0}var ED;(yC=>{var e=Wy(1,!0,!1),t,i,o=8192,c,u,p,m,g,S,T,_,P,v,B,y,$=[],j,ce,me=!0,V,ne=1,ve=!0,$e,Ie=!1,ge,Ae,Qe,ye=!1,ae,Ee,z,ze,te,le,bn,Ft,ue,gn,je,Pn,Ut;function kr(L){return Ee++,L}var fn={createBaseSourceFileNode:L=>kr(new m(L,0,0)),createBaseIdentifierNode:L=>kr(new p(L,0,0)),createBaseTokenNode:L=>kr(new u(L,0,0)),createBaseNode:L=>kr(new c(L,0,0))},re=ES(11,fn),{createObjectLiteralExpression:dt,createElementAccessExpression:ot,createForStatement:Nt,createIfStatement:Bt,createCallExpression:Zt,createArrayLiteralExpression:Kt,createParenthesizedExpression:ar,createPropertyAccessExpression:hn,createVariableDeclaration:er,createVariableDeclarationList:Ti,createVariableStatement:qe,createBlock:Yn,createNodeArray:zn,createIntLiteral:jt,createFloatLiteral:nr,createStringLiteral:Vr,createBytesLiteral:qi,createLiteralLikeNode:fe,createIdentifier:_e,createToken:De,createExpressionStatement:Ve,createNewExpression:tn}=re;function Ye(L,U,G,de,Re,un,jn,tr,kt,Si){c=qo.getNodeConstructor(),u=qo.getTokenConstructor(),p=qo.getIdentifierConstructor(),m=qo.getSourceFileConstructor(),g=IG(),S=L,T=tr,P=U,P=U,v=Re,Qe=un,B=jn,y=Si;let x=vi(S);x.endsWith("/")||(x=x+"/"),je=new Map,j=new Map,j.set("__DIR__",et("__DIR__",`"${x}"`)),j.set("__FILE__",et("__FILE__",`"${S}"`)),kl(de||_h,(yt,Sr)=>{j.set(Sr,et(Sr,yt))}),$=[],Ln(G,yt=>{let Sr=re.createStringLiteral(yt);La(Sr,0,0);let Wi=re.createIncludeDirective([Sr],!1);rT(Wi,16);let zs=ln(Wi,0,0);$.push(zs)}),V=[],ce=void 0,te=new Map,te.set(S,P),le=new Map,t=void 0,i=void 0,ge=[],Ee=0,ve=!0,z=new Map,ze=0,bn=[],Ft=[],ue=[],gn=new Map,e.resetSavedStates(),e.setText(P),e.setFileName(S),e.setOnError(pn),e.setScriptTarget(v),e.setLanguageVariant(y),e.setScriptKind(B),e.setJSDocParsingMode(kt)}function ee(){e.clearCommentDirectives(),e.setText(""),e.setOnError(void 0),e.setScriptKind(0),e.setJSDocParsingMode(0),e.setFileName(void 0),e.resetSavedStates(),P=void 0,v=void 0,Qe=void 0,B=void 0,y=void 0,_=0,ge=void 0,Ae=void 0,Pn=0,z=void 0,bn=void 0,ve=!0,te=void 0,le.clear(),le=void 0,V=void 0,ne=1,Ft=void 0,ue=void 0,gn=void 0,t=void 0,i=void 0,je=void 0,j=void 0,ce=void 0,me=!0}function pn(L,U,G){Be(e.getTokenEnd(),U,e.getFileName(),L,G)}function X(){return ae}function Le(L,U,G=1,de,Re=!1){Ye(L,U,xe,_h,G,de,6,void 0,0,2),_=$e,Sn();let un=Cn(),jn,tr;if(X()===1)jn=Xi([],un.pos,un.pos),tr=Fi();else{let x;for(;X()!==1;){let Wi;switch(X()){case 22:Wi=td();break;case 136:case 135:case 137:Wi=Fi();break;case 42:co(()=>Sn()===10&&Sn()!==61)?Wi=i_():Wi=oi();break;case 10:case 16:if(co(()=>Sn()!==61)){Wi=xf();break}default:Wi=oi();break}x&&mi(x)?x.push(Wi):x?x=[x,Wi]:(x=Wi,X()!==1&&Gn(N.Unexpected_token))}let yt=mi(x)?ln(Kt(x),un):I.checkDefined(x),Sr=Ve(yt);ln(Sr,un),jn=Xi([Sr],un),tr=E(1,N.Unexpected_token)}let kt=Pe(L,jn,tr);Re&&Nm(kt),kt.nodeCount=Ee,kt.identifierCount=ze,kt.identifiers=z,kt.parseDiagnostics=Zh(ge,kt),Ae&&(kt.jsDocDiagnostics=Zh(Ae,kt));let Si=kt;return ee(),Si}yC.parseJsonText=Le;function oi(){let L=Cn(),U=e.getTokenStart(),G=Kn(17),de=e.hasPrecedingLineBreak(),Re=Ra(15,hi,!0);return Ca(17,19,G,U,L.fileName),ln(dt(Re,de),L)}function hi(){let L=Cn(),U=ct(),G=ed(!0),de=vn(43),Re=ba(),un=hr(),jn=vn(60),tr=vn(55),kt;Kn(61);let Si=Yt(()=>ac(!0));return kt=re.createPropertyAssignment(un,Si),kt.modifiers=G,Ui(ln(kt,L),U)}function Cr(L){switch(L){case 184:return ne===0&&No(),ne===1?Gn(N.Else_directive_without_if):ne=ne===0?-1:0,ne===0&&Gr(),e.scan();case 185:case 181:let U=L===185;ne===0&&No(),!U&&ne!==1?V.push(ne):U&&ne===1&&Gn(N.Elseif_directive_without_if);let G=0;for(L=e.scan();L!=4&&L!=1;)G++,L===11&&e.getTokenValue()==="0"?ne=0:ne=-1,L=e.scan();return ne===0&&Gr(),G==0&&Ze(e.getTokenStart(),e.getTokenEnd(),e.getFileName(),N.Expression_expected),L;case 182:case 183:let de=L===182;if(ne!==1&&V.push(ne),L=e.scan(),L===89||fc(L)){let Re=e.getTokenValue();ne=de?j.has(Re)?-1:0:j.has(Re)?0:-1,L=e.scan()}else Gn(N.Identifier_expected);return ne===0&&Gr(),L}}function Sn(){return fc(ae)&&(e.hasUnicodeEscape()||e.hasExtendedUnicodeEscape())&&Ze(e.getTokenStart(),e.getTokenEnd(),e.getFileName(),N.Keywords_cannot_contain_escape_characters),Oo()}function Fo(){let L=[],U=Kn(20,void 0,!1)?1:0,G="",de=e.getTokenFullStart();if(U===0)return Sn(),L;for(;U>0;)switch(Sn()){case 1:U>0&&Be(de,e.getTokenEnd()-de,e.getFileName(),N.Unterminated_macro_arguments_list),U=0;break;case 20:U++,G+=e.getTokenText();break;case 21:U--,U>0&&(G+=e.getTokenText());break;case 27:if(U===1){L.push({text:G,disabled:!1,posInOrigin:de,endInOrigin:e.getTokenFullStart(),originFilename:e.getFileName(),pos:0,end:G.length}),G="",de=e.getTokenEnd();break}default:G+=e.getTokenText();break}return G.length>0&&L.push({text:G,disabled:!1,posInOrigin:de,endInOrigin:e.getTokenFullStart(),originFilename:e.getFileName(),pos:0,end:G.length}),Kn(21),L}function Gr(){e.getFileName()===S&&Ft.push({pos:e.getTokenFullStart(),end:0})}function No(L){if(e.getFileName()===S){I.assert(Ft.length>0);let U=Ro(Ft);I.assert(U.end===0),U.end=L||e.getTokenFullStart()}}function Oo(){let L=e.scan();for(;ne===0&&L!==1;){let U=e.getTokenFullStart();switch(L){case 186:e.setReportLineBreak(!0),ne=V.pop()??1,L=e.scan(),L!==4&&L!==1&&Be(e.getTokenStart(),e.getTokenEnd()-e.getTokenStart(),e.getFileName(),N.Expected_newline_after_directive),e.setReportLineBreak(!1);break;case 185:case 184:e.setReportLineBreak(!0),V.length===0&&(ne=ne===0?-1:0),L=e.scan(),L!==4&&L!==1&&Be(e.getTokenStart(),e.getTokenEnd()-e.getTokenStart(),e.getFileName(),N.Expected_newline_after_directive),e.setReportLineBreak(!1);break;case 181:case 182:case 183:for(e.setReportLineBreak(!0);L!=4&&L!=1;)L=e.scan();L!==4&&Be(e.getTokenStart(),e.getTokenEnd()-e.getTokenStart(),e.getFileName(),N.Expected_newline_after_directive),e.setReportLineBreak(!1),V.push(ne);break}return ne!==0&&No(U),Oo()}switch(L){case 186:return e.setReportLineBreak(!0),ne=V.pop()??1,L=e.scan(),L!==4&&L!==1&&Be(e.getTokenStart(),e.getTokenEnd()-e.getTokenStart(),e.getFileName(),N.Expected_newline_after_directive),e.setReportLineBreak(!1),Oo();case 182:case 183:case 181:case 185:case 184:return e.setReportLineBreak(!0),L=Cr(L),L!==4&&Be(e.getTokenStart(),e.getTokenEnd()-e.getTokenStart(),e.getFileName(),N.Expected_newline_after_directive),e.setReportLineBreak(!1),Oo()}if(me&&L===89){let U=e.getTokenValue(),G=j.get(U);if(ce&&ce.argsIn?.[U]&&ce.argsIn?.[U].disabled!==!0)return Xo(L,U,ce);if(G&&G.disabled!==!0&&G.range)return qa(L,U,G)}return ae=L}function Xo(L,U,G){let de=G.argsIn[U];return de.disabled=!0,e.switchStream("",de.text,de.pos,de.end,!0,()=>(de.disabled=!1,!1)),Oo()}function qa(L,U,G){G.disabled=!0,G.originFilename=e.getFileName(),G.posInOrigin=e.getTokenFullStart(),G.endInOrigin=e.getTokenFullStart()+U.length+1,G.pos=Cn(),G.end=G.pos.tokenStart+U.length;let{range:de,arguments:Re}=G,un={};if(Re?.length>0){ae=Oo();let tr=Fo(),kt=e.getTokenFullStart(),Si=ko(tr);Ln(Re,(x,yt)=>{I.assertIsDefined(x.name);let Sr=x.name.text;if(tr.length>yt){let Wi=tr[yt];un[Sr]=Wi}else Ze(Si?.end??kt,kt,e.getFileName(),N.Missing_argument_for_macro_0,Sr),un[Sr]={posInOrigin:Si?.end??kt,endInOrigin:Si?.end??kt,pos:0,end:0,text:"",disabled:!1}}),G.argsIn=un}let jn=ce;return e.switchStream(G.includeFilename??G.originFilename,G.getText(),de.pos,de.end-de.pos,!0,()=>(I.assertIsDefined(G),G.disabled=!1,G.argsIn=void 0,G.originFilename=void 0,G.posInOrigin=void 0,G.endInOrigin=void 0,G.pos=void 0,ce=jn,Re?.length>0)),ce=G,Oo()}function Zo(L){return Sn(),L()}function Fe(){return Sn(),iu(X())}function Mn(){return Sn(),iu(X())&&!e.hasPrecedingLineBreak()}function lt(){return Sn(),iu(X())&&Sn()===20}function ir(){return Sn()===20}function nn(){return Sn()===17}function Un(){return Sn()===45}function ht(){return Sn(),X()===11||X()===13||X()===12}function xt(){return ae=e.reScanLessThanToken()}function Ur(){return ae=e.reScanGreaterToken()}function ai(L,U,G,de,Re,un,jn,tr=!1,kt,Si,x=0,yt=0,Sr=!1){Ye(L,U,G,de,un,jn,kt,Re,x,yt);try{let Wi=qt(un,tr,kt||1,x,Sr);return ee(),Wi}catch(Wi){throw console.error(Wi),ee(),Wi}}yC.parseSourceFile=ai;function qt(L,U,G,de,Re){let un=Cn(),jn=$.shift();jn&&gs(jn)||Sn();let tr=so(0,vr,un);jn&&tr.unshift(jn),I.assert(X()===1);let kt=ct(),Si=Ui(Fi(),kt),x=Pe(S,tr,Si);VG(x,P),zG(x,Sr);let yt=ko(Ft);if(yt&&yt.end===0&&(Be(yt.pos,1,S,N.Unmatched_conditional_directive),yt.end=e.getTokenEnd()),x.commentDirectives=e.getCommentDirectives(),x.nodeCount=Ee,x.identifierCount=ze,x.identifiers=z,x.heritageClauses=re.createNodeArray(bn),x.parseDiagnostics=Zh(ge,x),x.inactiveCodeRanges=Ft,x.importCandidates=ue,x.jsDocParsingMode=de,Ae&&(x.jsDocDiagnostics=Zh(Ae,x)),x.nodeMacroMap=je,Re){let Wi=new Map;j.forEach((zs,Ad)=>{if(zs.includeFilename!="macro"){let{name:wd,range:Jl}=zs;Wi.set(wd,Jl?zs.getText()?.substring(Jl.pos,Jl.end)??"":"")}zs.argsIn=void 0}),x.parsedMacros=Wi}return U&&Nm(x),x;function Sr(Wi,zs,Ad){ge.push(Xh(S,P,Wi,zs,Ad))}}function Pe(L,U,G){let de=re.createSourceFile(U,G,0);return M2(de,0,P.length),de.fileName=L,de.text=P,de.bindDiagnostics=[],de.bindSuggestionDiagnostics=void 0,de.languageVersion=v||1,de.fileName=L,de.languageVariant=y,de.isDeclarationFile=!1,de.scriptKind=B||1,de}function Be(L,U,G,de,...Re){let un=ko(ge),jn;return(!un||L!==un.start)&&(jn=Xh(G,te.get(G)??e.getText(),L,U,de,...Re),ge.push(jn)),Ie=!0,jn}function Ze(L,U,G,de,...Re){return Be(L,U-L,G,de,...Re)}function Wn(L,U,G,...de){Ze(L.pos,L.end,U,G,...de)}function ut(L){return typeof L=="object"&&typeof L.pos=="number"}function Ot(L,U,G,...de){let Re=Cn();U?Be(e.getTokenFullStart(),0,Re.fileName,G,...de):G&&Gn(G,...de);let un=L===89?_e("",void 0):L===11||L===12?jt("",void 0):L===13?nr("",void 0):L===16?Vr("",void 0):L===173?re.createMissingDeclaration():De(L);return ln(un,Re.pos,Re.pos)}function Ir(){let L=Xi([],Cn());return L.isMissingList=!0,L}function Lr(L){return!!L.isMissingList}function Cn(){return{pos:fi(),tokenStart:e.getTokenStart(),fileName:e.getFileName(),include:t,macro:ce?{...ce}:void 0,stateId:e.getStateId()}}function fi(){return e.getTokenFullStart()}function Gn(L,...U){return Ze(e.getTokenStart(),e.getTokenEnd(),e.getFileName(),L,...U)}function so(L,U,G){let de=Ut,Re=Pn;Pn|=1<<L,Ut=L;let un=[];for(G??(G=Cn());!kn(L);){if(pt(L,!1)){un.push(sr(L,U));continue}if(xo(L))break}return Pn=Re,Ut=de,Xi(un,G)}function xo(L){return Wo(L),xa()?!0:(Sn(),!1)}function xa(){I.assert(Pn,"Missing parsing context");for(let L=0;L<30;L++)if(Pn&1<<L&&(pt(L,!0)||kn(L)))return!0;return!1}function Wo(L){switch(L){case 0:return Gn(N.Declaration_or_statement_expected);case 1:return Gn(N.Declaration_or_statement_expected);case 3:return Gn(N.case_or_default_expected);case 4:return Gn(N.Statement_expected);case 22:case 5:return Gn(N.Property_or_signature_expected);case 6:return Gn(N.Unexpected_token_A_constructor_method_accessor_or_property_was_expected);case 10:return Gn(N.Expression_expected);case 11:return fc(X())?Gn(N._0_is_not_allowed_as_a_variable_declaration_name,gi(X())):Gn(N.Variable_declaration_expected);case 12:return Gn(N.Property_destructuring_pattern_expected);case 13:return Gn(N.Array_element_destructuring_pattern_expected);case 14:return Gn(N.Argument_expression_expected);case 15:return Gn(N.Property_assignment_expected);case 17:case 16:return Gn(N.Expression_or_comma_expected);case 18:case 19:return Gn(N.Expression_or_comma_expected);case 21:return Gn(N.Parameter_declaration_expected);case 20:return fc(X())?Gn(N._0_is_not_allowed_as_a_parameter_name,gi(X())):Gn(N.Parameter_declaration_expected);case 23:return Gn(N.Type_parameter_declaration_expected);case 24:return Gn(N.Type_argument_expected);case 25:return Gn(N.Type_expected);case 26:return Gn(N.Unexpected_token_expected);case 33:return Gn(N.Variable_declaration_expected);case 29:return Gn(N.Identifier_expected);case 30:return I.fail("ParsingContext.Count used as a context");case 34:return Gn(N.Pragma_option_expected);case 31:return Gn(N.Expression_or_comma_expected);case 8:return Gn(N.Property_or_signature_expected);default:I.fail("Unknown ParsingContext"),console.debug("todo - parsingContextErrors")}}function pt(L,U){if(Tu(L))return!0;switch(L){case 0:case 1:case 2:case 4:return!(X()===26&&U)&&Io();case 3:return X()===113||X()===114;case 5:return co(ke);case 8:return iu(X());case 15:switch(X()){case 22:case 43:case 25:case 24:return!0;default:return yp()}case 22:return yp();case 11:return Eu()||X()===43;case 33:return Eu()||ke();case 34:return Eu();case 13:return X()===27||X()===25||Eu();case 23:return X()===103||ba();case 18:case 17:case 16:switch(X()){case 27:case 24:return!0}case 14:case 31:return X()===25||ys();case 19:return X()===26||ys();case 20:return ic(!1);case 21:return ic(!0);case 24:case 25:return X()===27||fa();case 30:return I.fail("ParsingContext.Count used as a context")}}function ic(L){return X()===25||Eu()||mg(X())||X()===62||X()===52||fa(!L)}function Io(){switch(X()){case 70:case 26:case 17:case 120:case 99:case 98:case 133:case 115:case 109:case 118:case 111:case 112:case 121:case 106:case 116:case 117:return!0;case 119:return!0;case 124:case 122:case 123:case 125:case 130:case 127:case 128:case 131:case 138:case 92:case 93:case 94:case 101:case 105:case 140:case 104:case 107:case 134:case 95:case 139:case 108:return St()||!co(Mn);case 62:return $r(16777216);default:return ul()||ys()}}function ul(){switch(X()){case 178:case 179:case 180:case 181:case 184:case 185:case 186:case 187:return!0}}function Ko(){for(;;)switch(X()){case 138:case 133:case 99:case 98:return!0;case 119:case 122:case 123:case 124:case 125:case 130:case 127:case 131:case 128:case 107:case 95:case 108:case 92:case 93:case 94:case 101:case 105:case 104:case 29:return!0;case 140:return co(()=>Sn()!==71);case 134:case 139:return y===0;case 89:return Pn===1&&co(()=>Sn()===20);default:return!1}}function St(){return Ko()}function kn(L){if(X()===1)return!0;switch(L){case 1:case 3:case 5:case 6:case 7:case 12:case 27:case 28:return X()===19||X()===67||X()===4;case 31:return X()===61;case 15:return X()===19;case 34:return X()===4;case 2:case 4:return X()===19||X()===113||X()===114;case 33:case 11:return Tr();case 14:return X()===21||X()===26;case 17:return X()===23;case 16:return X()===19;case 25:case 13:return X()===23;case 18:return X()===23;case 19:return X()===23||X()===27;case 21:case 20:case 22:return X()===21||X()===23;case 24:return X()!==27;case 26:return X()===17||X()===19;case 8:return X()===26;default:return!1}}function Tr(){return!!(Qa()||Vs(X())||X()===39)}function sr(L,U){let G=Tu(L);return G?dl(G):U()}function Bc(L){switch(L){case 6:case 3:case 0:case 1:case 4:case 7:case 5:case 11:case 21:case 20:return!0}return!1}function Tu(L,U){if(!Qe||!Bc(L)||Ie)return;let G=Qe.currentNode(U??e.getTokenFullStart());if(!(oa(G)||BG(G)||iS(G)||(G.flags&34332768)!==$e)&&cr(G,L))return Qy(G)&&G.jsDoc?.jsDocCache&&(G.jsDoc.jsDocCache=void 0),G}function cr(L,U){switch(U){}return!1}function dl(L){return e.resetTokenState(L.end),Sn(),L}function Xi(L,U,G,de){let Re=zn(L,de),un;if(typeof U=="number")un=U,G??(G=e.getTokenFullStart());else if(U.macro?.pos){let jn=U.macro?$a(U.macro):void 0,tr=Cn(),kt=tr.fileName===S&&!tr.macro?tr.pos:jn.end;un=jn.pos.pos,G=kt}else un=U.pos,G??(G=e.getState(U.stateId)?.end);return La(Re,un,G),Re}function vr(){switch(X()){case 120:return ry();case 26:return li();case 17:return bm(!1);case 115:return Qt();case 109:return Oa();case 118:return jc();case 111:return zr();case 112:return Et();case 121:return Ji(251);case 106:return Ji(250);case 116:return ty();case 117:return Sc();case 100:return wa();case 133:case 99:if(St())return Ea();case 122:case 123:case 124:case 125:case 130:case 127:case 128:case 131:case 138:case 107:case 134:case 95:case 98:case 139:case 108:case 105:case 92:case 93:case 94:case 101:case 104:case 140:case 89:case 29:if(St())return Ea()}return ul()?$o():eo()}function ct(){return e.hasPrecedingJSDocComment()}function li(){let L=Cn(),U=ct();return Kn(26),Ui(ln(re.createEmptyStatement(),L),U)}function yr(){return X()==4||X()==1?!0:(Gn(N.Expected_newline_after_directive),!1)}function $o(){e.setReportLineBreak(!0);let L;switch(X()){case 178:L=F();break;case 179:L=Ri(se);break;case 180:L=Ri(Wr);break;case 187:L=Gt();break;case 186:L=Ot(186,!0,N.Unexpected_endIf_directive);default:Sn();let G=[];for(;X()!==4;)G.push(X()),Sn()}let U=yr();return e.setReportLineBreak(!1),L?.kind===178&&U&&(U=!gs(L)),L||(L=Ot(178,!0,N.Unexpected_keyword_or_identifier)),U&&Sn(),L}function ms(L){let U=L.content.map(de=>de.text).join("");return T.loadIncludeFile(e.getFileName(),U,L.localFirst)}function gs(L){let U=e.getFileName()??S,G=ms(L),de=bf(G.filename),Re=!1;if(de===S)return!1;if(L.fileName=de,G?.source?.length>0){if(le.has(U)||le.set(U,new Set),le.get(U).add(de),Ws(le,U))return console.error(`Circular include detected: ${U} -> ${de}`),Wn(t??L,S,N.Circular_include_detected_0_to_1,U,de),!1;let tr=Ft;L.text=G.source,Lt(32,()=>{nd(L);let kt=G.source;te.set(de,G.source);let Si=t,x=i,yt=e.switchStream(de,kt,0,kt.length,!1,()=>(t=Si,i=x,ae=e.getToken(),!1));t??(t=L),i=L,Sn();let Sr=Cn(),Wi=so(0,vr,Sr);I.assert(X()===1);let zs=ct(),Ad=Ui(Fi(),zs);L.statements=re.createNodeArray(Wi),L.endOfFileToken=Ad,yt(),Re=!0}),L.inactiveCodeRanges=Ft,Ft=tr}let un=$.shift();return un&&(Re||(Re=gs(un))),Re&&!$r(32)&&Sn(),Re}function Ws(L,U){let G=new Set,de=new Set;function Re(un){if(de.has(un))return!0;if(G.has(un))return!1;G.add(un),de.add(un);let jn=L.get(un)||new Set;for(let tr of jn)if(Re(tr))return!0;return de.delete(un),!1}return Re(U)}function Gt(){let L=Cn();Kn(187);let U=Ra(34,G=>sc());return U.length===0&&(U=Ir(),Gn(N.Pragma_directive_requires_at_least_one_argument)),ln(re.createPragmaDirective(U),L)}function F(){let L=Cn(),U=ct(),G=[];Kn(178);let de=!1;if(X()===29)ae=e.reScanLessThanTokenAsStringLiteral(),G.push(xf());else{for(;X()===16;)G.push(xf());de=!0}return G.length===0&&G.push(Ot(16,!0,N.Expression_expected)),Ui(ln(re.createIncludeDirective(G,de),L),U)}function se(){let L=Cn(),U=ct();Kn(179);let G=Cn(),de=e.getTokenStart(),Re=bf(e.getTokenValue()),un=X()===89?sc():Su();un.kind===4&&(Be(G.pos,G.pos,L.fileName,N.Identifier_expected),un=Ot(89,!1));let jn;de+Re.length===e.getTokenStart()&&X()===20&&(jn=go(Ce));let kt=0,Si=e.getTokenStart(),x=e.getFileName().length>0?e.getFileName():S,yt=Si;for(;X()!==4&&X()!==1;)kt++,yt=e.getTokenEnd(),Sn();let Sr;kt>0&&(Sr=La(re.createBlock([],!1),Si,yt));let Wi=Ui(ln(re.createDefineDirective(un,jn,Sr),L),U);return cn(un)&&Re?.length>0&&(j.has(Re)?Ze(de,de+Re.length,L.fileName,N.Macro_already_defined_0,Re):j.set(Re,Br(Wi,x))),Wi}function rn(L,U,G,de){let Re=new g(L,U,G,de);return I.attachMacroDebugInfo(Re),Re}function et(L,U){let G=La(re.createBlock([],!1),0,U?.length||0);return rn(L,"builtin",()=>U,G)}function Br(L,U){function G(){return I.assertIsDefined(L.range,"Cannot expand macro for a define without content"),te.get(U)??""}let de=rn(L.name.text,U,G,L.range);return de.directive=L,de.arguments=L.arguments,de}function Wr(){let L=Cn(),U=ct();Kn(180);let G=sc();return j.delete(G.text),Ui(ln(re.createUndefDirective(G),L),U)}function Qt(){let L=Cn(),U=ct();Kn(115);let G=e.getTokenStart(),de=e.getFileName(),Re=Kn(20),un=Yt(Do);Ca(20,21,Re,G,de);let jn=vr(),tr=be(110)?vr():void 0;return Ui(ln(Bt(un,jn,tr),L),U)}function Et(){let L=Cn(),U=ct();Kn(112),Kn(20);let G;Kc()?G=lo(!0,void 0,33):G=Nr(Do);let de=!1;be(103)||(de=!0,Kn(61));let Re=Ml(21);Kn(21);let un=vr(),jn=re.createForEachStatement(G,Re,un);return Ui(ln(jn,L),U)}function zr(){let L=Cn(),U=ct();Kn(111),Kn(20);let G;if(X()!==26)if(Kc()&&co(Fe)){let jn=ea();G=lo(!0,jn)}else G=Nr(Do);let de;Kn(26);let Re=X()!==26&&X()!==21?Yt(Do):void 0;Kn(26);let un=X()!==21?Yt(Do):void 0;return Kn(21),de=Nt(G,Re,un,vr()),Ui(ln(de,L),U)}function Ji(L){let U=Cn(),G=ct();Kn(L===250?106:121);let de=Qa()?void 0:sc();Ol();let Re=L===250?re.createBreakStatement(de):re.createContinueStatement(de);return Ui(ln(Re,U),G)}function Vo(){let L=Cn(),U,G,de,Re;return Kn(100),be(20)?(U=Do(),be(26)&&(G=sc(N.Catch_expression_modifier_expected),!oa(G)&&X()!==21&&(de=Do())),Kn(21)):Re=Wt(0),ln(re.createCatchExpression(U,G,de,Re),L)}function wa(){let L=Cn(),U=ct();Kn(100);let G;be(20)&&(G=Do(),Kn(21));let de=Wt(0);return Ui(ln(re.createCatchStatement(G,de),L),U)}function Ga(){let L=Cn(),U=ct();Kn(113);let G=Ml(61);Kn(61);let de=so(4,vr);return Ui(ln(re.createCaseClause(G,de),L),U)}function hc(){let L=Cn();Kn(114),Kn(61);let U=so(4,vr);return ln(re.createDefaultClause(U),L)}function Ks(){return X()===113?Ga():hc()}function Hr(){let L=Cn(),U=so(3,Ks);return ln(re.createCaseBlock(U),L)}function Sc(){let L=Cn(),U=ct();Kn(117),Kn(20);let G=Yt(Do);Kn(21),Kn(17);let de=so(2,vr),Re=Hr();return Kn(19),Ui(ln(re.createSwitchStatement(G,de,Re),L),U)}function Oa(){let L=Cn(),U=ct();Kn(109);let G=vr();Kn(118);let de=e.getTokenStart(),Re=e.getFileName(),un=Kn(20),jn=Yt(Do);return Ca(20,21,un,de,Re),be(26),Ui(ln(re.createDoWhileStatement(G,jn),L),U)}function jc(){let L=Cn(),U=ct();Kn(118);let G=e.getTokenStart(),de=e.getFileName(),Re=Kn(20),un=Yt(Do);Ca(20,21,Re,G,de);let jn=vr();return Ui(ln(re.createWhileStatement(jn,un),L),U)}function is(L){return S}function $a(L){let U=L;for(;U.pos?.macro;)U=U.pos?.macro;return U}function ln(L,U,G){if(typeof U!="number"){let de=e.getState(U.stateId);I.assertIsDefined(de,"Scanner state must be defined"),I.assert(de.fileName==U.fileName,"Scanner state filename does not match position state filename"),gn.set(L,de.fileName?.length>0?de.fileName:S);let Re=U.macro?$a(U.macro):void 0,un=Re?.pos;if(Re&&(rT(L,L.flags|80),je.set(L,Re.name)),un){let jn=Cn(),tr=Math.max(jn.fileName===S&&!jn.macro?jn.pos:0,Re.end);La(L,un.pos,tr)}else La(L,U.pos,G??de.end)}else La(L,U,G);return $e&&(L.flags|=$e),Ie&&(Ie=!1,L.flags|=262144),L}function ba(){return X()===89?!0:X()>132}function Kn(L,U,G=!0){return X()===L?(G&&Sn(),!0):(U?Gn(U):Gn(N._0_expected,gi(L)),!1)}function Fi(){let L=Cn(),U=X();return Sn(),ln(De(U),L)}function Ca(L,U,G,de,Re){if(X()===U){Sn();return}let un=Gn(N._0_expected,gi(U));if(G&&un){let jn=Re||e.getFileName()||S,tr=te.get(jn);Bo(un,Xh(jn,tr,de,1,N.The_parser_expected_to_find_a_1_to_match_the_0_token_here,gi(L),gi(U)))}}function b(L,U,G,de,Re){I.assert(U.length>0,"closeKind should have at least one element");let un=0,jn,tr,kt=U.map(gi).join("");for(;un<U.length;){if(X()===U[un++]){Sn();continue}tr=U[un-1],jn=Gn(N._0_expected,kt);break}G&&jn&&Bo(jn,Xh(Re,te.get(Re)??e.getText(),de,1,N.The_parser_expected_to_find_a_1_to_match_the_0_token_here,gi(L),kt))}function E(L,U,G){return vn(L)||Ot(L,!1,U||N._0_expected,G||gi(L))}function O(L){let U=W(L);return U||(I.assert(oD(L)),Ot(L,!1,N._0_expected,gi(L)))}function W(L){if(X()===L)return he()}function he(){let L=Cn(),U=X();return Ya(),ln(De(U),L)}function be(L){return X()===L?(Sn(),!0):!1}function vn(L){if(X()===L)return Fi()}function qr(L,U){let G=L&$e;if(G){pr(!1,G);let de=U();return pr(!0,G),de}return U()}function Lt(L,U){let G=L&~$e;if(G){pr(!0,G);let de=U();return pr(!1,G),de}return U()}function pr(L,U){L?$e|=U:$e&=~U}function gt(L){pr(L,8192)}function Yt(L){return qr(8192,L)}function ui(L){return qr(524288,L)}function xi(L){return qr(139264,L)}function Nr(L){return Lt(8192,L)}function jr(L){return Lt(131072,L)}function go(L){return Lt(32768,L)}function Ri(L){let U=me;me=!1;let G=L();return me=U,G}function $r(L){return($e&L)!==0}function oc(){return $r(8192)}function Qa(){return X()===26?!0:X()===19||X()===1||e.hasPrecedingLineBreak()}function hu(L,U){let G=ye,de=ae,Re=ge.length,un=Ie,jn=ce,tr=t,kt=i,Si=$e;ye=!0;let x=U!==0?e.lookAhead(L):e.tryScan(L);return I.assert(Si===$e),(!x||U!==0)&&(ae=de,U!==2&&(ge.length=Re),Ie=un,ce=jn,t=tr,i=kt),ye=G,x}function co(L){return hu(L,1)}function Yu(L){return hu(L,0)}function pp(){return Qa()?(X()===26&&Sn(),!0):!1}function Ol(){return pp()||Kn(26)}function eo(){let L=Cn(),U=ct(),G,de=X()===20,Re=Yt(Do);return pp()||Rl(Re),G=Ve(Re),de&&(U=!1),Ui(ln(G,L),U)}function mf(L){for(let U of gf)if(L.length>U.length+2&&To(L,U))return`${U} ${L.slice(U.length)}`}let gf=Object.keys(oN).filter(L=>L.length>2);function Rl(L){let U=cn(L)?Mo(L):void 0;if(!U||!zp(U,v)){Gn(N._0_expected,gi(26));return}let G=sy(L)??S,de=te.get(G),Re=Oi(de,L.pos);switch(U){case"const":case"let":case"var":Ze(Re,L.end,G,N.Variable_declaration_not_allowed_at_this_location);return;case"declare":return}let un=Wf(U,gf,Di)??mf(U);if(un){Ze(Re,L.end,sy(L),N.Unknown_keyword_or_identifier_Did_you_mean_0,un);return}X()!==0&&Ze(Re,Math.max(Re,L.end),G,N.Unexpected_keyword_or_identifier)}let _c=!1;function Ui(L,U){if(!U)return L;I.assert(!L.jsDoc);let G=P,de=sy(L);P=te.get(de)??P;let Re;e.getFileName()!=de&&(Re=e.switchStream(de,P,L.pos,L.end));let un=_i(nD(L,P),jn=>JT.parseJSDocComment(L,jn.pos,jn.end-jn.pos));return un.length&&(L.jsDoc=un),_c&&(_c=!1,L.flags|=536870912),P=G,Re&&Re(),L}function Jc(){switch(X()){case 71:case 136:case 135:case 10:case 11:case 12:case 13:case 16:case 15:case 20:case 22:case 66:case 17:case 69:case 68:case 70:case 138:case 133:case 145:case 100:case 45:case 79:case 89:case 72:return!0;case 137:if(B===6)return!0;default:return ba()}}function ys(){if(Jc())return!0;switch(X()){case 41:case 42:case 57:case 55:case 105:case 47:case 48:case 29:return!0;case 62:return $r(16777216);default:return na()?!0:ba()}}function ea(){let L=Cn();return vs()}function Xu(L,U,G){let de=Cn();if(be(29)){let jn=Xu(L,U,G);return Kn(32),be(43)?ln(re.createArrayTypeNode(jn),de):jn}let Re=be(L),un=U();if(X()===L||Re){let jn=[un];for(;be(L);)if(X()===29)jn.push(Xu(L,U,G));else{let tr=U()??Ot(101,!0,N.Type_expected);I.assertIsDefined(tr),jn.push(tr)}un=ln(G(Xi(jn,de)),de)}return un}function Uc(){return ui(pa)}function Ts(){return Xu(52,Uc,re.createIntersectionTypeNode)}function vs(){return Xu(53,$r(16777216)?Ts:Uc,re.createUnionTypeNode)}function pa(){let L=Cn(),U=Zu();for(;X()!=1;)if(be(43)&&(U=ln(re.createArrayTypeNode(U),L)),be(44))U=ln(re.createArrayTypeNode(re.createArrayTypeNode(U)),L);else return U}function fa(L){switch(X()){case 97:case 102:case 94:case 107:case 134:case 95:case 98:case 139:case 108:case 92:case 93:case 101:case 104:case 140:case 105:case 96:case 17:case 22:case 29:case 53:case 52:case 145:case 16:case 15:case 10:case 11:case 12:case 13:case 136:case 135:case 43:case 60:case 55:case 25:case 138:return!0;case 42:return!L&&co(ht);case 137:if(B===6)return!0;default:return ba()}}function Su(){let L=Fi();return X()===24?void 0:L}function Zu(){switch(X()){case 97:case 102:case 94:case 107:case 95:case 98:case 108:case 92:case 93:case 138:case 101:case 104:case 140:case 96:return Su();case 134:case 139:return y===0?Su():void 0;case 77:e.reScanAsteriskEqualsToken();case 16:case 15:case 11:case 12:case 13:return aa();case 105:return Fi();case 17:return hs();case 133:case 99:return Wc(X());case 136:case 135:case 137:if(B===6)return aa();default:return $r(16777216)?_u():void 0}}function _u(){let L=Cn();return ln(re.createTypeReferenceNode(xu(),fp()),L)}function xu(){return g_(!0,N.Type_expected)}function fp(){if(!e.hasPrecedingLineBreak()&&xt()===29)return ny(24,ea,29,32)}function ny(L,U,G,de){if(Kn(G)){let Re=Ra(L,U);return Kn(de),Re}return Ir()}function hs(){let L=Cn();return ln(re.createTypeLiteralNode(hm()),L)}function hm(){let L;return Kn(17)?(L=re.createNodeArray(Au(so(5,He))),Kn(19)):L=Ir(),L}function Wc(L,U=!0){let G=Cn();U&&!Kn(L)&&Ot(L,!0,N._0_expected,"struct");let de=sc();return ln(re.createStructTypeNode(de),G)}function aa(L){let U=Cn();L&&Sn();let G=mp(X());if(L)G=ln(re.createPrefixUnaryExpression(42,G),U);else if(Da(G)){let de;for(;X()===16;){let Re=ln(De(41),Cn());de=Cm(de??G,Re,Ld(),U)}de&&(G=ln(de,U))}return ln(re.createLiteralTypeNode(G),U)}function ty(){let L=Cn(),U=ct();Kn(116);let G=Qa()?void 0:Yt(Do);return Ol(),Ui(ln(re.createReturnStatement(G),L),U)}function ry(){let L=Cn(),U=ct(),G=ed(!1,!1,!1);return nd(Sm(L,U,G))}function Sm(L,U,G){I.assert(!ye,"Inherit statements should not be speculatively parsed."),Kn(120);let de=Yt(Do);Ol();let Re=Ui(ln(re.createInheritDeclaration(de,G),L),U);return bn.push(Re),Re}function mp(L){let U=Cn();if(L===15){let de=Vr(e.getTokenValue(),void 0,e.hasExtendedUnicodeEscape());e.isUnterminated()&&(de.isUnterminated=!0);let Re=re.createArrayLiteralExpression([de],e.hasPrecedingLineBreak(),!1);return Sn(),ln(Re,U)}let G=L===11||L===10?jt(e.getTokenValue(),e.getNumericLiteralFlags()):L===13?nr(e.getTokenValue(),e.getNumericLiteralFlags()):L===12?jt(e.getTokenValue(),e.getNumericLiteralFlags()):L===16?Vr($P(e.getTokenValue()),void 0,e.hasExtendedUnicodeEscape()):L===14?qi(e.getTokenValue(),e.hasExtendedUnicodeEscape()):zy(L)?fe(L,e.getTokenValue()):I.fail();return e.hasExtendedUnicodeEscape()&&(G.hasExtendedUnicodeEscape=!0),e.isUnterminated()&&(G.isUnterminated=!0),Sn(),ln(G,U)}function ed(L,U,G){let de=Cn(),Re,un,jn,tr=!1,kt=!1,Si=!1;for(;jn=bu(tr,U,G);)jn.kind===125&&(tr=!0),Re=Fr(Re,jn),kt=!0;if(Si)for(;jn=bu(tr,U,G);)jn.kind===125&&(tr=!0),Re=Fr(Re,jn);return Re&&Xi(Re,de)}function bu(L,U,G){let de=Cn(),Re=X();if(gp())return Sn(),ln(De(Re),de)}function gp(){return mg(X())&&co(Cu)}function Cu(){switch(X()){default:return iy()}}function iy(){return Sn(),_m()}function _m(){return X()===22||X()===17||X()===43||X()===25||X()===29||Kc()||yp()}function Kc(){switch(X()){case 107:case 95:case 98:case 108:case 136:case 135:case 92:case 93:case 94:case 101:case 104:case 140:case 99:case 133:case 138:case 105:return!0;case 134:case 139:return y===0;case 137:return v===3}return!1}function yp(){return iu(X())||X()===16||X()===11}function yf(){return X()===99||X()===133}function oy(){return yf()?co(()=>{if(Sn()==89)switch(Sn()){case 17:case 20:return!0}return!1}):!1}function Ea(){let L=Cn(),U=ct(),G=ed(!0);if(X()==120)return Sm(L,U,G);let de=ea();return k(L,U,G,de)}function k(L,U,G,de){if(ba()){let Re=co(()=>Sn());return Re===20?lr(L,U,G,de):Re===17?Q(L,U,G,de):H(L,U,G,de)}else if(de&&TL(de))return Q(L,U,G,de);switch(X()){default:if(G||de){let Re=Ot(173,!0,N.Declaration_expected);return tI(Re,L.pos),Re.modifiers=G,Re.type=de,Re}return Sn(),Ot(173,!0,N.Declaration_expected)}}function Q(L,U,G,de){let Re=de&&TL(de)?de.typeName:sc(),un;be(20)&&(un=sc(),Kn(21));let jn=ea();Ol();let tr=re.createStructDeclarationNode(G,Re,un,jn);return Ui(ln(tr,L),U)}function ke(){if(X()===29)return!0;let L=!1;for(;mg(X());)L=!0,Sn();return X()===22||Kc()?!0:(yp()&&(L=!0,Sn()),L?X()==26:!1)}function He(){let L=Cn(),U=ct(),G=ed(!1);return bt(L,U,G)}function bt(L,U,G){let de=ea(),Re,un=Ra(8,hr),jn=!1,tr=qn(un,(kt,Si)=>{let x=de,yt=G;return Si>0&&(x=re.cloneNode(de),rT(x,x.flags|16),yt=re.createNodeArray(qn(G,Sr=>{let Wi=re.cloneNode(Sr);return rT(Wi,Wi.flags|16),Wi}))),Re=re.createPropertySignature(yt,kt,x),X()===74&&(Re.initializer=ma()),X()==26&&(Ol(),jn=!0),Ui(ln(Re,L),U)});return re.createNodeArray(tr)}function hr(){return at(!0)}function at(L){if(X()===16||X()===10){let U=xf();return U.text=bf(U.text),U}return _p()}function lr(L,U,G,de){let Re=xm(),un=Ce(),jn=Wt(0),tr=re.createFunctionDeclaration(G,Re,un,de,jn);return Ui(ln(tr,L),U)}function Wt(L,U){if(X()!==17&&Qa()){Ol();return}return C(L,U)}function C(L,U){let G=ve;ve=!1;let de=bm(!!(L&16),U);return ve=G,de}function H(L,U,G,de){let Re=lo(!1,de);Ol();let un=qe(G,de,Re);return Ui(ln(un,L),U)}function Ce(){if(!Kn(20))return Ir();let L=dn(0,!0);return Kn(21),L}function dn(L,U){return L&32?Ra(21,on):Ra(20,()=>U?Zn():An())}function Zn(){return Jt()}function An(){return Jt(!1)}function Jt(L=!0){let U=Cn(),G=ct(),de=ed(!1,!1,!1),Re=ve;if(ve=!1,!L&&!Xr())return;let un=$r(32768)?void 0:ea(),jn=vn(52)||y===1&&vn(141);vn(43)&&(un=re.createArrayTypeNode(un));let kt=Eu()?On(de):void 0,Si=vn(25),x=ma(X()===74?74:61),yt=Ui(ln(re.createParameterDeclaration(de,Si,kt,jn,un,x),U),G);return ve=Re,yt}function On(L){let U=Tp();return Mx(U)===0&&!Tn(L)&&mg(X())&&Sn(),U}function Xr(){return Eu()||X()===22||X()===17}function on(){let L=Cn();return ln(re.createParameterDeclaration(void 0,void 0,void 0,void 0,m_(),void 0),L)}function lo(L,U,G=0){let de=Cn(),Re=1,un,jn=oc();return gt(L),un=Ra(G||11,tr=>pl(U,tr)),gt(jn),ln(Ti(un,Re),de)}function Vs(L){return L===103||L===61}function pl(L,U){let G=Cn(),de=ct(),Re=ea();if(Re&&nu(Re)&&!Re.elementType&&L){let x=ln(re.cloneNode(nu(L)?L.elementType:L),G);Re.elementType=x}else U&&(!Re||!nu(Re))&&L&&nu(L)&&(Re=ln(re.cloneNode(L.elementType),G));let un=Cn(),jn;be(141)&&(jn=ln(De(141),un));let tr=Tp(),kt=Vs(X())?void 0:ma(),Si=er(tr,jn,Re,kt);return Ui(ln(Si,G),de)}function ma(L=74){return be(L)?ac(!0):void 0}function Tp(){return xm()}function xm(){return hp(Eu(),void 0)}function Eu(){return X()===89?!0:X()>132}function hp(L,U,G){if(L){ze++;let tr=Cn();tr.pos=e.hasLeadingAsterisks()?e.getTokenStart():fi();let kt=X(),Si=bf(e.getTokenValue()),x=e.hasExtendedUnicodeEscape();return Oo(),ln(_e(Si,kt,x),tr)}if(X()===0&&e.tryScan(()=>e.reScanInvalidIdentifier()===89))return hp(!0);ze++;let de=X()===1,Re=e.isReservedWord(),un=e.getTokenText(),jn=Re?N.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here:N.Identifier_expected;return Ot(89,de,U||jn,un)}function e_(L){}function Ra(L,U,G){let de=Pn;Pn|=1<<L;let Re=[],un=Cn(),jn=-1;for(;;){if(pt(L,!1)){let tr=e.getTokenFullStart(),kt=sr(L,()=>U(Re.length));if(!kt){Pn=de;return}if(Re.push(kt),jn=e.getTokenStart(),be(27))continue;if(jn=-1,kn(L))break;Kn(27,void 0),G&&X()===26&&!e.hasPrecedingLineBreak()&&Sn(),tr===e.getTokenFullStart()&&Sn();continue}if(kn(L)||xo(L))break}return Pn=de,Xi(Re,un,void 0,jn>=0)}function bo(L,U,G){let de=Pn;Pn|=1<<L;let Re=[],un=Cn(),jn=-1;for(;;){if(pt(L,!1)){let tr=e.getTokenFullStart(),kt=sr(L,U);if(!kt){Pn=de;return}if(Re.push(kt),jn=e.getTokenStart(),be(G))continue;if(jn=-1,kn(L))break;Kn(G),tr===e.getTokenFullStart()&&Sn();continue}if(kn(L)||xo(L))break}return Pn=de,Xi(Re,un,void 0,jn>=0)}function Do(){let L=Cn(),U=ac(!0);X()==74&&(U=ln(ar(Na(10,U,L)),L));let G;for(;!$r(131072)&&(G=vn(27));)U=Cm(U,G,ac(!0),L);return U}function bm(L,U){let G=Cn(),de=ct(),Re=e.getTokenStart(),un=e.getFileName(),jn=!L&&Kn(17,U)||be(17);if(jn||L){let tr=e.hasPrecedingLineBreak(),kt=so(1,vr);jn&&Ca(17,19,jn,Re,un);let Si=Ui(ln(Yn(kt,tr),G),de);return X()===74&&(Gn(N.Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_destructuring_assignment_you_might_need_to_wrap_the_whole_assignment_in_parentheses),Sn()),Si}else{let tr=Ir();return Ui(ln(Yn(tr,void 0),G),de)}}function na(){return oc()&&X()===103?!1:Hx(X())>0}function ac(L){let U=Cn(),G=ct(),de=cC(0);return au(de)&&Wu(Ur())?Cm(de,Fi(),ac(L),U):lC(de,U,L)}function Cm(L,U,G,de){return ln(re.createBinaryExpression(L,U,G),de)}function cC(L){let U=Cn(),G=n_();return Na(L,G,U)}function lC(L,U,G){let de=vn(60);if(!de)return L;let Re;return ln(re.createConditionalExpression(L,de,qr(o,()=>ac(!1)),Re=E(61),Qp(Re)?ac(G):Ot(89,!1,N._0_expected,gi(61))),U)}function Na(L,U,G){for(;;){Ur();let de=Da(U)&&X()==16,Re=L==0&&X()==74?0:Hx(de?41:X());if(!(X()===44?Re>=L:Re>L)||X()===103&&oc())break;let jn=de?ln(De(41),Cn()):Fi();U=Cm(U,jn,cC(Re),G)}return U}function n_(){if(Id()){let G=Cn(),de=Tf();return X()===44?Na(Hx(X()),de,G):de}let L=X(),U=t_();if(X()===44){let G=Oi(P,U.pos),{end:de}=U;I.assert(oD(L)),Ze(G,de,sy(U),N.An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses,gi(L))}return U}function t_(){switch(X()){case 29:case 41:case 42:case 57:case 55:return i_();case 20:case 69:let L=Fd();if(L)return L;default:return Tf()}}function r_(){let L=Cn();Kn(20),Kn(29);let U=Wc(99,!1);I.assert(U.kind===258,"Expected a struct type node"),Kn(32);let G=co(()=>X()===89&&Sn()===61),de;return G?de=Ra(14,a_):de=Ra(14,Em),Kn(21),ln(re.createNewStructExpression(U,de),L)}function Fd(){let L=Cn();if(co(()=>{let U=be(69);U||Kn(20);let G=!1;if(X()===29&&co(()=>Sn())===89&&(G=be(29)),X()!==29&&!Kc())return!1;let de=ea();if(G&&Kn(32),U)Kn(19),Kn(21);else if(!be(21))return!1;return!0})){let U=be(69);U||Kn(20);let G=!1;if(X()===29&&co(()=>Sn())===89&&(G=be(29)),X()!==29&&!Kc())return;let de=ea();if(G&&Kn(32),U)Kn(19),Kn(21);else if(!be(21))return;let Re=t_();return ln(re.createTypeAssertion(de,Re),L)}}function i_(){let L=Cn(),U=X(),G=Zo(()=>jr(t_));return X()==74&&(G=ln(ar(Na(10,G,L)),L)),ln(re.createPrefixUnaryExpression(U,G),L)}function Id(){switch(X()){case 41:case 42:case 57:case 55:case 105:case 29:case 69:return!1;case 20:return co(()=>Sn()===29);default:return!0}}function Tf(){if(X()===47||X()===48){let G=Cn();return ln(re.createPrefixUnaryExpression(X(),Zo(o_)),G)}let L=Cn(),U=o_();if((X()===47||X()===48)&&!e.hasPrecedingLineBreak()){let G=X();return Sn(),ln(re.createPostfixUnaryExpression(U,G),L)}return U}function o_(){let L=Cn(),U;return U=X()==71?zo(L):uC(),HP(L,U)}function HP(L,U){for(;;){if(U=s_(L,U,!0),X()===20){let G=_t(),de=cn(U)?U.text:void 0;if(de==="clone_object"){let Re=re.createCloneObjectExpression(U,G);U=nd(ln(Re,L));continue}else{let Re=Zt(U,G);U=ln(Re,L),de==="base_name"&&nd(U);continue}}break}return U}function nd(L){return ue.push(L),L}function _t(){Kn(20);let L=Ra(14,Em),U=Kn(21);return OT(L,U)}function OT(L,U){return L.isComplete=U,L}function Em(){return qr(o,l_)}function a_(){return qr(o,qP)}function qP(){let L=Cn(),U=ct(),G=hr();Kn(61);let de=Yt(()=>ac(!0)),Re=re.createPropertyAssignment(G,de);return Ui(ln(Re,L),U)}function zo(L,U){let G=ct();E(71);let de=ba()?sc():Ot(89,!0,N.Identifier_expected);U&&!(cn(U)||Pi(U))&&Wn(U,sy(U),N.Identifier_or_string_expected);let Re=re.createSuperAccessExpression(de,U);return Ui(ln(Re,L),G)}function uC(){let L=Cn(),U=Ld();return s_(L,U,!0)}function dC(){return X()===40}function s_(L,U,G){for(;;){let de=!1,Re;if(X()==71&&(U=zo(L,U)),(X()==24||X()==40)&&(de=!0,Re=Fi()),de){U=Nu(L,U,Re);continue}let un;for(;Da(U)&&(X()==16||X()===90);){let jn=ln(De(41),Cn());un=Cm(un??U,jn,Ld(),L)}if(un&&(U=ln(ar(un),L)),be(22)){U=Bl(L,U);continue}return U}}function Da(L){return Pi(L)||gr(L)}function Ml(L){let U=Cn(),G,de;return be(73)?de=Yt(Do):(G=Yt(Do),be(73)&&X()!==L&&(de=Yt(Do))),de?ln(re.createRangeExpression(G,de),U):G}function Bl(L,U){let G;if(X()===23)G=Ot(89,!0,N.An_element_access_expression_should_take_an_argument);else{let Re,un;be(73)?un=xi(Do):(Re=xi(Do),be(73)&&X()!==23&&(un=xi(Do)));let jn=un?ln(re.createRangeExpression(Re,un),L):Re;wc(jn)&&(jn.text=bf(jn.text)),G=jn}Kn(23);let de=ot(U,G);return ln(de,L)}function Nu(L,U,G){let de=pC(!0,!0,!0),Re=!1,un=hn(U,de,G);return nd(ln(un,L))}function pC(L,U,G){return e.hasPrecedingLineBreak()&&iu(X())&&co(Mn)?Ot(89,!0,N.Identifier_expected):L?G?_p():RT():sc()}function Sp(){let L=Cn();Kn(72);let U;if(X()==89){let G=Cn(),de=sc();X()==71&&(de=zo(G,de)),U=re.createLambdaIdentifierExpression(de)}else{X()==32&&Ur();let G=Fi();if(U=re.createLambdaOperatorExpression(G),G.kind==22)for(;X()!=27;){let de=Sn()}}return ln(U,L)}function c_(){let L=Cn();if(!ce)return Sn(),Ot(16,!0,N.Stringized_literal_only_valid_in_macro);let U=e.getTokenValue().slice(1),G=ce.argsIn[U]?.text;if(Sn(),G){let de=Vr(bf(G),void 0,e.hasExtendedUnicodeEscape());return ln(de,L)}return Be(L.pos,U.length+1,L.fileName,N.Macro_parameter_0_not_found,U),Ot(16,!1)}function sc(L,U){return hp(ba(),L,U)}function _p(L){return hp(iu(X()),L)}function RT(){return(e.hasUnicodeEscape()||e.hasExtendedUnicodeEscape())&&Gn(N.Unicode_escape_sequence_cannot_appear_here),hp(iu(X()))}function xc(L=!0){let U=Cn(),G=ct();L&&Kn(20);let de=Yt(Do);return Kn(21),Ui(ln(ar(de),U),G)}function jl(){let L=Cn(),U=e.getTokenStart(),G=e.getFileName(),de=Kn(68),Re,un;be(61)?Re=ac(!1):un=Ra(18,GP),b(68,[23,21],de,U,G);let jn=e.hasPrecedingLineBreak();return ln(re.createMappingLiteralExpression(Re,un,jn),L)}function GP(){let L=Cn(),U=ac(!1),G;return be(61)&&(G=bo(19,xp,26),G?.length===0&&Ot(247,!0,N.Expression_expected)),ln(re.createMappingEntryExpression(U,G),L)}function xp(){return X()===26?ln(re.createOmittedExpression(),Cn()):ac(!0)}function fC(L){let U=Cn(),G=ct(),de=Pn;Pn|=31;let Re=Kn(20)&&Kn(61),un=mC(L);return b(66,[61,21],Re,U.pos,U.fileName),Pn=de,Ui(ln(re.createInlineClosure(un),U),G)}function sa(){return X()!==17&&X()!==133&&X()!==62&&ys()}function mC(L){if(X()===17)return C(0);if(X()!==26&&X()!==138&&X()!==133&&Io()&&!sa())return C(16);let U=ve;ve=!1;let G=Ra(31,Em);return ve=U,G.length==1?G[0]:G}function td(){let L=Cn(),U=e.getFileName(),G=e.getTokenStart(),de=Kn(22),Re=e.hasPrecedingLineBreak(),un=Ra(17,l_);return Ca(22,23,de,G,U),ln(Kt(un,Re),L)}function ay(){let L=Cn(),U=e.getTokenStart(),G=e.getFileName(),de=Kn(69),Re=e.hasPrecedingLineBreak(),un=Ra(16,l_);return b(69,[19,21],de,U,G),ln(Kt(un,Re),L)}function hf(){let L=Cn();Kn(25);let U=ac(!0);return ln(re.createSpreadElement(U),L)}function Sf(){let L=Cn(),U=y===0?E(52):E(141),G=ac(!0);return ln(re.createByRefElement(U,G),L)}function l_(){let L=Cn(),U=X()===25?hf():X()===52||X()===141?Sf():X()===27?ln(re.createOmittedExpression(),Cn()):ac(!0);return X()===25&&(Kn(25),U=ln(re.createSpreadElement(U),L)),U}function Ld(){switch(X()){case 10:case 11:case 12:case 13:case 16:case 15:case 14:return xf();case 90:return c_();case 71:case 136:case 135:return Fi();case 20:let L=co(()=>Sn());return L===61?fC(!0):L===29?r_():xc();case 69:return ay();case 66:return fC(!0);case 68:return jl();case 70:return u_();case 138:return MT();case 100:return Vo();case 72:return Sp();case 22:if(B===6)return td();break;case 17:if(B===6)return oi();break}if(X()===137&&B===6)return Fi();if(X()===145&&y===1)return _f();if(Kc()&&co(()=>Sn()!==71)){let L=ea();return pl(L)}return sc(N.Expression_expected)}function u_(){let L=Cn();Kn(70);let U=ac(!0);Kn(21);let G=_t();return ln(re.createEvaluateExpression(U,G),L)}function _f(){let L=Cn();Kn(145);let U,G;return Kn(20),X()==133?(U=ea(),be(27)&&(X()==89&&co(()=>Sn()==61)?G=Ra(14,a_):G=Ra(14,Em))):G=Ra(14,Em),Kn(21),nd(ln(tn(U,void 0,G),L))}function MT(){let L=Cn(),U=ct(),G=ed(!1);Kn(138);let de=ea(),Re=ba()?sc():void 0,un=Ce(),jn=C(0),tr=re.createFunctionExpression(G,Re,un,de,jn);return Ui(ln(tr,L),U)}function xf(){return mp(X())}let BT;(Vt=>(Vt[Vt.SourceElements=0]="SourceElements",Vt[Vt.BlockStatements=1]="BlockStatements",Vt[Vt.SwitchPreBlock=2]="SwitchPreBlock",Vt[Vt.SwitchClauses=3]="SwitchClauses",Vt[Vt.SwitchClauseStatements=4]="SwitchClauseStatements",Vt[Vt.TypeMembers=5]="TypeMembers",Vt[Vt.ClassMembers=6]="ClassMembers",Vt[Vt.EnumMembers=7]="EnumMembers",Vt[Vt.PropertySignatureNames=8]="PropertySignatureNames",Vt[Vt.ElementAccess=9]="ElementAccess",Vt[Vt.HeritageClauseElement=10]="HeritageClauseElement",Vt[Vt.VariableDeclarations=11]="VariableDeclarations",Vt[Vt.ObjectBindingElements=12]="ObjectBindingElements",Vt[Vt.ArrayBindingElements=13]="ArrayBindingElements",Vt[Vt.ArgumentExpressions=14]="ArgumentExpressions",Vt[Vt.ObjectLiteralMembers=15]="ObjectLiteralMembers",Vt[Vt.ArrayLiteralMembers=16]="ArrayLiteralMembers",Vt[Vt.JsonArrayLiteralMembers=17]="JsonArrayLiteralMembers",Vt[Vt.MappingLiteralMembers=18]="MappingLiteralMembers",Vt[Vt.MappingEntryMembers=19]="MappingEntryMembers",Vt[Vt.Parameters=20]="Parameters",Vt[Vt.JSDocParameters=21]="JSDocParameters",Vt[Vt.RestProperties=22]="RestProperties",Vt[Vt.TypeParameters=23]="TypeParameters",Vt[Vt.TypeArguments=24]="TypeArguments",Vt[Vt.TupleElementTypes=25]="TupleElementTypes",Vt[Vt.HeritageClauses=26]="HeritageClauses",Vt[Vt.ImportOrExportSpecifiers=27]="ImportOrExportSpecifiers",Vt[Vt.ImportAttributes=28]="ImportAttributes",Vt[Vt.JSDocComment=29]="JSDocComment",Vt[Vt.Count=30]="Count",Vt[Vt.InlineClosure=31]="InlineClosure",Vt[Vt.StructMembers=32]="StructMembers",Vt[Vt.ForEachInitializers=33]="ForEachInitializers",Vt[Vt.PragmaArguments=34]="PragmaArguments"))(BT||(BT={}));function bf(L){let U=z.get(L);return U===void 0&&z.set(L,U=L),U}function $P(L){if(L&&L.length<=FG){let U=z.get(L);return U===void 0&&z.set(L,U=L),U}return L}function d_(L){return X()===L?(Ya(),!0):(I.assert(oD(L)),Gn(N._0_expected,gi(L)),!1)}function Ya(){return ae=e.scanJsDocToken()}function p_(L){return ae=e.scanJSDocCommentTextToken(L)}function QP(){let L=sc();if(X()===142&&!e.hasPrecedingLineBreak())return Sn(),L}function f_(){let L=Cn(),U=ba()&&co(()=>Sn()===142)?QP():void 0,G=ea();return U?ln(re.createTypePredicateNode(void 0,U,G),L):G}function m_(){e.setSkipJsDocLeadingAsterisks(!0);let L=Cn(),U=be(25),G=f_();return be(22)&&d_(23)&&(G=ln(re.createArrayTypeNode(G),L)),e.setSkipJsDocLeadingAsterisks(!1),U&&(G=ln(re.createJSDocVariadicType(G),L)),X()===74?(Sn(),ln(re.createJSDocOptionalType(G),L)):G}function Nm(L){ep(L,!0)}yC.fixupParentReferences=Nm;function g_(L,U){let G=Cn(),de=L?_p(U):sc(U);for(;be(24)&&X()!==29;)de=ln(re.createQualifiedName(de,pC(L,!1,!0)),G);return de}function gC(L,U,G){return ln(re.createQualifiedName(L,U),G)}function sy(L){let U=gn.get(L);return I.assertIsDefined(U,"node should have a filename"),U}function jT(){return i?.fileName||S}let JT;(tr=>{function L(kt,Si,x){let yt=ae,Sr=ge.length,Wi=Ie,zs=Lt(16777216,()=>jn(Si,x));return Bs(zs,kt),Ae||(Ae=[]),Po(Ae,ge,Sr),ae=yt,ge.length=Sr,Ie=Wi,zs}tr.parseJSDocComment=L;let U;(Sr=>(Sr[Sr.BeginningOfLine=0]="BeginningOfLine",Sr[Sr.SawAsterisk=1]="SawAsterisk",Sr[Sr.SavingComments=2]="SavingComments",Sr[Sr.SavingBackticks=3]="SavingBackticks"))(U||(U={}));function G(kt){let Si=Cn(),x=(kt?be:Kn)(17),yt=Lt(16777216,m_);(!kt||x)&&d_(19);let Sr=re.createJSDocTypeExpression(yt);return Nm(Sr),ln(Sr,Si)}tr.parseJSDocTypeExpression=G;function de(){let kt=Cn(),Si=be(17),x=fi(),yt=g_(!1);Si&&d_(19);let Sr=re.createJSDocNameReference(yt);return Nm(Sr),ln(Sr,kt)}tr.parseJSDocNameReference=de;function Re(kt,Si,x){Ye("",kt,xe,_h,1,void 0,1,void 0,0,2);let yt=Lt(16777216,()=>jn(Si,x)),Sr={languageVariant:2,text:kt},Wi=Zh(ge,Sr);return ee(),yt?{jsDoc:yt,diagnostics:Wi}:void 0}tr.parseIsolatedJSDocComment=Re;let un;(Sr=>(Sr[Sr.Property=1]="Property",Sr[Sr.Parameter=2]="Parameter",Sr[Sr.CallbackParameter=4]="CallbackParameter",Sr[Sr.Variable=8]="Variable"))(un||(un={}));function jn(kt=0,Si){let x=P,yt=Si===void 0?x.length:kt+Si;if(Si=yt-kt,I.assert(kt>=0),I.assert(kt<=yt),I.assert(yt<=x.length),!ND(x,kt))return;let Sr,Wi,zs,Ad,wd,Jl=[],bp=[],YP=Pn;Pn|=1<<29;let XP=e.scanRange(kt+3,Si-5,TC);return Pn=YP,XP;function TC(){let Ke=1,Nn,xn=kt-(x.lastIndexOf(`
26
+ `,kt)+1)+4;function $n(ri){Nn||(Nn=xn),Jl.push(ri),xn+=ri.length}for(Ya();Cf(5););Cf(4)&&(Ke=0,xn=0);e:for(;;){switch(X()){case 62:ZP(Jl),wd||(wd=fi()),Vt(_C(xn)),Ke=0,Nn=void 0;break;case 4:Jl.push(e.getTokenText()),Ke=0,xn=0;break;case 43:let ri=e.getTokenText();Ke===1?(Ke=2,$n(ri)):(I.assert(Ke===0),Ke=1,xn+=ri.length);break;case 5:I.assert(Ke!==2,"whitespace shouldn't come from the scanner while saving top-level comment text");let Mi=e.getTokenText();Nn!==void 0&&xn+Mi.length>Nn&&Jl.push(Mi.slice(Nn-xn)),xn+=Mi.length;break;case 1:break e;case 91:Ke=2,$n(e.getTokenValue());break;case 17:Ke=2;let fl=e.getTokenFullStart(),ga=e.getTokenEnd()-1,Pa=xC(ga);if(Pa){Ad||hC(Jl),bp.push(ln(re.createJSDocText(Jl.join("")),Ad??kt,fl)),bp.push(Pa),Jl=[],Ad=e.getTokenEnd();break}default:Ke=2,$n(e.getTokenText());break}Ke===2?p_(!1):Ya()}let Qn=Jl.join("").trimEnd();bp.length&&Qn.length&&bp.push(ln(re.createJSDocText(Qn),Ad??kt,wd)),bp.length&&Sr&&I.assertIsDefined(wd,"having parsed tags implies that the end of the comment span should be set");let At=Sr&&Xi(Sr,Wi,zs);return ln(re.createJSDocComment(bp.length?Xi(bp,kt,wd):Qn.length?Qn:void 0,At),kt,yt)}function hC(Ke){for(;Ke.length&&(Ke[0]===`
27
+ `||Ke[0]==="\r");)Ke.shift()}function ZP(Ke){for(;Ke.length;){let Nn=Ke[Ke.length-1].trimEnd();if(Nn==="")Ke.pop();else if(Nn.length<Ke[Ke.length-1].length){Ke[Ke.length-1]=Nn;break}else break}}function SC(){for(;;){if(Ya(),X()===1)return!0;if(!(X()===5||X()===4))return!1}}function Ul(){if(!((X()===5||X()===4)&&co(SC)))for(;X()===5||X()===4;)Ya()}function Cp(){if((X()===5||X()===4)&&co(SC))return"";let Ke=e.hasPrecedingLineBreak(),Nn=!1,xn="";for(;Ke&&X()===43||X()===5||X()===4;)xn+=e.getTokenText(),X()===4?(Ke=!0,Nn=!0,xn=""):X()===43&&(Ke=!1),Ya();return Nn?xn:""}function _C(Ke){I.assert(X()===62);let Nn=e.getTokenStart(),xn=Cn();Ya();let $n=Od(void 0),Qn=Cp(),At;switch($n.text){case"author":At=ak(xn,$n,Ke,Qn);break;case"implements":At=ck(xn,$n,Ke,Qn);break;case"augments":case"extends":At=lk(xn,$n,Ke,Qn);break;case"class":case"constructor":At=Pm(xn,re.createJSDocClassTag,$n,Ke,Qn);break;case"public":At=Pm(xn,re.createJSDocPublicTag,$n,Ke,Qn);break;case"private":At=Pm(xn,re.createJSDocPrivateTag,$n,Ke,Qn);break;case"protected":At=Pm(xn,re.createJSDocProtectedTag,$n,Ke,Qn);break;case"override":At=Pm(xn,re.createJSDocOverrideTag,$n,Ke,Qn);break;case"deprecated":_c=!0,At=Pm(xn,re.createJSDocDeprecatedTag,$n,Ke,Qn);break;case"this":At=NC(xn,$n,Ke,Qn);break;case"arg":case"argument":case"param":return KT(xn,$n,2,Ke);case"var":return KT(xn,$n,8,Ke);case"return":case"returns":At=CC(xn,$n,Ke,Qn);break;case"template":At=qT(xn,$n,Ke,Qn);break;case"type":At=EC(xn,$n,Ke,Qn);break;case"typedef":At=dk(xn,$n,Ke,Qn);break;case"callback":At=pk(xn,$n,Ke,Qn);break;case"overload":At=T_(xn,$n,Ke,Qn);break;case"satisfies":At=uk(xn,$n,Ke,Qn);break;case"see":At=ik(xn,$n,Ke,Qn);break;case"exception":case"throws":At=ok(xn,$n,Ke,Qn);break;default:At=nk(xn,$n,Ke,Qn);break}return At}function Hs(Ke,Nn,xn,$n){return $n||(xn+=Nn-Ke.pos),UT(xn,$n.slice(xn))}function UT(Ke,Nn){let xn=fi(),$n=[],Qn=[],At,ri=0,Mi;function fl(Kl){Mi||(Mi=Ke),$n.push(Kl),Ke+=Kl.length}Nn!==void 0&&(Nn!==""&&fl(Nn),ri=1);let ga=X();e:for(;;){switch(ga){case 4:ri=0,$n.push(e.getTokenText()),Ke=0;break;case 62:e.resetTokenState(e.getTokenEnd()-1);break e;case 1:break e;case 5:I.assert(ri!==2&&ri!==3,"whitespace shouldn't come from the scanner while saving comment text");let Kl=e.getTokenText();Mi!==void 0&&Ke+Kl.length>Mi&&($n.push(Kl.slice(Mi-Ke)),ri=2),Ke+=Kl.length;break;case 17:ri=2;let rd=e.getTokenFullStart(),wt=e.getTokenEnd()-1,ta=xC(wt);ta?(Qn.push(ln(re.createJSDocText($n.join("")),At??xn,rd)),Qn.push(ta),$n=[],At=e.getTokenEnd()):fl(e.getTokenText());break;case 18:ri===3?ri=2:ri=3,fl(e.getTokenText());break;case 91:ri!==3&&(ri=2),fl(e.getTokenValue());break;case 43:if(ri===0){ri=1,Ke+=1;break}default:ri!==3&&(ri=2),fl(e.getTokenText());break}ri===2||ri===3?ga=p_(ri===3):ga=Ya()}hC($n);let Pa=$n.join("").trimEnd();if(Qn.length)return Pa.length&&Qn.push(ln(re.createJSDocText(Pa),At??xn)),Xi(Qn,xn,e.getTokenEnd());if(Pa.length)return Pa}function xC(Ke){let Nn=Yu(bC);if(!Nn)return;Ya(),Ul();let xn=ek(),$n=[];for(;X()!==19&&X()!==4&&X()!==1;)$n.push(e.getTokenText()),Ya();let Qn=Nn==="link"?re.createJSDocLink:Nn==="linkcode"?re.createJSDocLinkCode:re.createJSDocLinkPlain;return ln(Qn(xn,$n.join("")),Ke,e.getTokenEnd())}function ek(){if(iu(X())){let Ke=Cn(),Nn=_p();for(;be(24);)Nn=ln(re.createQualifiedName(Nn,_p()),Ke);return Nn}}function bC(){if(Cp(),X()===17&&Ya()===62&&iu(Ya())){let Ke=e.getTokenValue();if(y_(Ke))return Ke}}function y_(Ke){return Ke==="link"||Ke==="linkcode"||Ke==="linkplain"}function nk(Ke,Nn,xn,$n){return ln(re.createJSDocUnknownTag(Nn,Hs(Ke,fi(),xn,$n)),Ke)}function Vt(Ke){Ke&&(Sr?Sr.push(Ke):(Sr=[Ke],Wi=Ke.pos),zs=Ke.end)}function cy(){return Cp(),X()===17?G():void 0}function tk(){let Ke=Cf(22);Ke&&Ul();let Nn=Cf(18),xn=yk();return Nn&&O(18),Ke&&(Ul(),vn(74)&&Do(),Kn(23)),{name:xn,isBracketed:Ke}}function WT(Ke){switch(Ke.kind){case 140:return!0;case 161:return WT(Ke.elementType);default:return Ed(Ke)&&cn(Ke.typeName)&&Ke.typeName.text==="Object"&&!Ke.typeArguments}}function KT(Ke,Nn,xn,$n){let Qn=cy(),At=!Qn;Cp();let{name:ri,isBracketed:Mi}=tk(),fl=Cp();At&&!co(bC)&&(Qn=cy());let ga=Hs(Ke,fi(),$n,fl),Pa=rk(Qn,ri,xn,$n);Pa&&(Qn=Pa,At=!0);let Kl=xn===1?re.createJSDocPropertyTag(Nn,ri,Mi,Qn,At,ga):xn===8?re.createJSDocVariableTag(Nn,ri,Mi,Qn,At,ga):re.createJSDocParameterTag(Nn,ri,Mi,Qn,At,ga);return nd(ln(Kl,Ke))}function rk(Ke,Nn,xn,$n){if(Ke?.type&&WT(Ke.type)){let Qn=Cn(),At,ri;for(;At=Yu(()=>HT(xn,$n,Nn));)At.kind===220||At.kind===227?ri=Fr(ri,At):At.kind===224&&Wn(At.tagName,jT(),N.A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag);if(ri){let Mi=ln(re.createJSDocTypeLiteral(ri,Ke.type.kind===161),Qn);return ln(re.createJSDocTypeExpression(Mi),Qn)}}}function CC(Ke,Nn,xn,$n){Tn(Sr,qh)&&Ze(Nn.pos,e.getTokenStart(),e.getFileName(),N._0_tag_already_specified,Nn.text);let Qn=cy();return nd(ln(re.createJSDocReturnTag(Nn,Qn,Hs(Ke,fi(),xn,$n)),Ke))}function EC(Ke,Nn,xn,$n){Tn(Sr,Yy)&&Ze(Nn.pos,e.getTokenStart(),e.getFileName(),N._0_tag_already_specified,Nn.text);let Qn=G(!0),At=xn!==void 0&&$n!==void 0?Hs(Ke,fi(),xn,$n):void 0;return nd(ln(re.createJSDocTypeTag(Nn,Qn,At),Ke))}function ik(Ke,Nn,xn,$n){let At=X()===22||co(()=>Ya()===62&&iu(Ya())&&y_(e.getTokenValue()))?void 0:de(),ri=xn!==void 0&&$n!==void 0?Hs(Ke,fi(),xn,$n):void 0;return ln(re.createJSDocSeeTag(Nn,At,ri),Ke)}function ok(Ke,Nn,xn,$n){let Qn=cy(),At=Hs(Ke,fi(),xn,$n);return ln(re.createJSDocThrowsTag(Nn,Qn,At),Ke)}function ak(Ke,Nn,xn,$n){let Qn=Cn(),At=sk(),ri=e.getTokenFullStart(),Mi=Hs(Ke,ri,xn,$n);Mi||(ri=e.getTokenFullStart());let fl=typeof Mi!="string"?Xi(Kr([ln(At,Qn.pos,ri)],Mi),Qn):At.text+Mi;return ln(re.createJSDocAuthorTag(Nn,fl),Ke)}function sk(){let Ke=[],Nn=!1,xn=e.getToken();for(;xn!==1&&xn!==4;){if(xn===29)Nn=!0;else{if(xn===62&&!Nn)break;if(xn===32&&Nn){Ke.push(e.getTokenText()),e.resetTokenState(e.getTokenEnd());break}}Ke.push(e.getTokenText()),xn=Ya()}return re.createJSDocText(Ke.join(""))}function ck(Ke,Nn,xn,$n){let Qn=VT();return ln(re.createJSDocImplementsTag(Nn,Qn,Hs(Ke,fi(),xn,$n)),Ke)}function lk(Ke,Nn,xn,$n){let Qn=VT();return ln(re.createJSDocAugmentsTag(Nn,Qn,Hs(Ke,fi(),xn,$n)),Ke)}function uk(Ke,Nn,xn,$n){let Qn=G(!1),At=xn!==void 0&&$n!==void 0?Hs(Ke,fi(),xn,$n):void 0;return ln(re.createJSDocSatisfiesTag(Nn,Qn,At),Ke)}function VT(){let Ke=be(17),Nn=Cn(),xn=Dm();e.setSkipJsDocLeadingAsterisks(!0);let $n=void 0;e.setSkipJsDocLeadingAsterisks(!1);let Qn=re.createExpressionWithTypeArguments(xn,$n),At=ln(Qn,Nn);return Ke&&Kn(19),At}function Dm(){let Ke=Cn(),Nn=Od();for(;be(24);){let xn=Od();Nn=ln(hn(Nn,xn),Ke)}return Nn}function Pm(Ke,Nn,xn,$n,Qn){return ln(Nn(xn,Hs(Ke,fi(),$n,Qn)),Ke)}function NC(Ke,Nn,xn,$n){let Qn=G(!0);return Ul(),ln(re.createJSDocThisTag(Nn,Qn,Hs(Ke,fi(),xn,$n)),Ke)}function dk(Ke,Nn,xn,$n){let Qn=cy();Cp();let At=DC();Ul();let ri=UT(xn),Mi;if(!Qn||Qn.type&&WT(Qn.type)){let ga,Pa,Kl,rd=!1;for(;(ga=Yu(()=>fk(xn)))&&ga.kind!==224;)if(rd=!0,ga.kind===223)if(Pa){let wt=Gn(N.A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags);wt&&Bo(wt,Xh(S,P,0,0,N.The_tag_was_first_specified_here));break}else Pa=ga;else Kl=Fr(Kl,ga);if(rd){let wt=Qn&&Qn.type.kind===161,ta=re.createJSDocTypeLiteral(Kl,wt);Qn=Pa&&Pa.typeExpression&&!WT(Pa.typeExpression.type)?Pa.typeExpression:ln(ta,Ke),Mi=Qn.end}}Mi=Mi||ri!==void 0?fi():(At??Qn??Nn).end,ri||(ri=Hs(Ke,Mi,xn,$n));let fl=re.createJSDocTypedefTag(Nn,Qn,At,ri);return nd(ln(fl,Ke.pos,Mi))}function K0(Ke){let Nn=Cn(),xn,$n;for(;xn=Yu(()=>HT(4,Ke));){if(xn.kind===224){Wn(xn.tagName,jT(),N.A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag);break}$n=Fr($n,xn)}return Xi($n||[],Nn)}function zT(Ke,Nn){let xn=K0(Nn),$n=Yu(()=>{if(Cf(62)){let Qn=_C(Nn);if(Qn&&Qn.kind===221)return Qn}});return ln(re.createJSDocSignature(void 0,xn,$n),Ke)}function DC(Ke){let Nn=e.getTokenStart();if(!iu(X()))return;let xn=Od();return Ke&&(xn.flags|=4096),xn}function pk(Ke,Nn,xn,$n){let Qn=DC();Ul();let At=UT(xn),ri=zT(Ke,xn);return At||(At=Hs(Ke,fi(),xn,$n)),ln(re.createJSDocCallbackTag(Nn,ri,Qn,At),Ke)}function T_(Ke,Nn,xn,$n){Ul();let Qn=UT(xn),At=zT(Ke,xn);Qn||(Qn=Hs(Ke,fi(),xn,$n));let ri=Qn!==void 0?fi():At.end;return ln(re.createJSDocOverloadTag(Nn,At,Qn),Ke.pos,ri)}function h_(Ke,Nn){for(;!cn(Ke)||!cn(Nn);)if(!cn(Ke)&&!cn(Nn)&&Ke.right.text===Nn.right.text)Ke=Ke.left,Nn=Nn.left;else return!1;return Ke.text===Nn.text}function fk(Ke){return HT(1,Ke)}function HT(Ke,Nn,xn){let $n=!0,Qn=!1;for(;;)switch(Ya()){case 62:if($n){let At=mk(Ke,Nn);return At&&(At.kind===220||At.kind===227)&&xn&&(cn(At.name)||!h_(xn,At.name.left))?!1:At}Qn=!1;break;case 4:$n=!0,Qn=!1;break;case 43:Qn&&($n=!1),Qn=!0;break;case 89:$n=!1;break;case 1:return!1}}function mk(Ke,Nn){I.assert(X()===62);let xn=Cn();Ya();let $n=Od(),Qn=Cp(),At;switch($n.text){case"type":return Ke===1&&EC(xn,$n);case"prop":case"property":At=1;break;case"arg":case"argument":case"param":At=6;break;case"template":return qT(xn,$n,Nn,Qn);case"this":return NC(xn,$n,Nn,Qn);default:return!1}return Ke&At?KT(xn,$n,Ke,Nn):!1}function Wl(){let Ke=Cn(),Nn=Cf(22);Nn&&Ul();let xn=ed(!1,!0),$n=Od(N.Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces),Qn;if(Nn&&(Ul(),Kn(74),Qn=Lt(16777216,m_),Kn(23)),!oa($n))return ln(re.createTypeParameterDeclaration(xn,$n,void 0,Qn),Ke)}function gk(){let Ke=Cn(),Nn=[];do{Ul();let xn=Wl();xn!==void 0&&Nn.push(xn),Cp()}while(Cf(27));return Xi(Nn,Ke)}function qT(Ke,Nn,xn,$n){let Qn=X()===17?G():void 0,At=gk();return ln(re.createJSDocTemplateTag(Nn,Qn,At,Hs(Ke,fi(),xn,$n)),Ke)}function Cf(Ke){return X()===Ke?(Ya(),!0):!1}function yk(){let Ke=Cn(),Nn=Od();for(be(22)&&Kn(23);be(24);){let xn=Od();be(22)&&Kn(23),Nn=gC(Nn,xn,Ke)}return Nn}function Od(Ke){if(!iu(X()))return Ot(89,!Ke,Ke||N.Identifier_expected);ze++;let Nn=e.getTokenStart(),xn=e.getTokenEnd(),$n=X(),Qn=bf(e.getTokenValue()),At=ln(_e(Qn,$n),Nn,xn);return Ya(),At}}})(JT=yC.JSDocParser||(yC.JSDocParser={}))})(ED||(ED={}));var O6,R6,M6,B6,LG={createBaseSourceFileNode:e=>new(B6||(B6=qo.getSourceFileConstructor()))(e,-1,-1),createBaseIdentifierNode:e=>new(M6||(M6=qo.getIdentifierConstructor()))(e,-1,-1),createBaseTokenNode:e=>new(R6||(R6=qo.getTokenConstructor()))(e,-1,-1),createBaseNode:e=>new(O6||(O6=qo.getNodeConstructor()))(e,-1,-1)},_b=ES(1,LG);function _n(e,t){return t&&e(t)}function pi(e,t,i){if(i){if(t)return t(i);for(let o of i){let c=e(o);if(c)return c}}}var AG={176:function(t,i,o){return pi(i,o,t.statements)||_n(i,t.endOfFileToken)},255:function(t,i,o){return _n(i,t.expression)||_n(i,t.block)},149:function(t,i,o){return pi(i,o,t.modifiers)||_n(i,t.type)||_n(i,t.name)||_n(i,t.ampToken)||_n(i,t.dotDotDotToken)||_n(i,t.initializer)},152:function(t,i,o){return pi(i,o,t.modifiers)||_n(i,t.name)||_n(i,t.type)||_n(i,t.initializer)},174:function(t,i,o){return pi(i,o,t.modifiers)||_n(i,t.name)||_n(i,t.initializer)},153:function(t,i,o){return pi(i,o,t.modifiers)||_n(i,t.name)||_n(i,t.type)||_n(i,t.initializer)},173:function(t,i,o){return pi(i,o,t.modifiers)},235:function(t,i,o){return pi(i,o,t.elements)},278:function(t,i,o){return _n(i,t.expression)||pi(i,o,t.arguments)},276:fL,277:function(t,i,o){return _n(i,t.type)||pi(i,o,t.arguments)},241:function(t,i,o){return pi(i,o,t.modifiers)||_n(i,t.name)||_n(i,t.heritageName)||_n(i,t.type)},257:function(t,i,o){return _n(i,t.literal)},259:function(t,i,o){return _n(i,t.typeParameter)},163:function(t,i,o){return pi(i,o,t.members)},148:function(t,i,o){return pi(i,o,t.modifiers)||_n(i,t.name)||_n(i,t.constraint)||_n(i,t.default)||_n(i,t.expression)},166:function(t,i,o){return _n(i,t.typeName)||pi(i,o,t.typeArguments)},167:function(t,i,o){return _n(i,t.parameterName)||_n(i,t.type)},169:function(t,i,o){return pi(i,o,t.modifiers)||_n(i,t.type)||_n(i,t.asteriskToken)||_n(i,t.name)||pi(i,o,t.parameters)||_n(i,t.body)},270:function(t,i,o){return pi(i,o,t.modifiers)||_n(i,t.type)||_n(i,t.name)||pi(i,o,t.parameters)||_n(i,t.body)},178:function(t,i,o){return pi(i,o,t.content)||pi(i,o,t.statements)||_n(i,t.endOfFileToken)},179:function(t,i,o){return _n(i,t.name)||pi(i,o,t.arguments)},283:function(t,i,o){return pi(i,o,t.parameters)||mi(t.body)?pi(i,o,t.body):_n(i,t.body)},252:function(t,i,o){return _n(i,t.inheritClause)},157:function(t,i,o){return pi(i,o,t.types)},159:function(t,i,o){return pi(i,o,t.types)},258:function(t,i,o){return _n(i,t.typeName)},273:fL,281:function(t,i,o){return _n(i,t.expression)||_n(i,t.argumentExpression)},282:function(t,i,o){return _n(i,t.left)||_n(i,t.right)},272:fL,286:function(t,i,o){return _n(i,t.expression)||_n(i,t.name)},287:function(t,i,o){return _n(i,t.namespace)||_n(i,t.name)},288:function(t,i,o){return _n(i,t.operand)},279:function(t,i,o){return _n(i,t.type)||_n(i,t.expression)},289:function(t,i,o){return _n(i,t.expression)},298:function(t,i,o){return _n(i,t.operand)},295:function(t,i,o){return _n(i,t.refToken)||_n(i,t.expression)},269:function(t,i,o){return _n(i,t.left)||_n(i,t.operatorToken)||_n(i,t.right)},268:function(t,i,o){return _n(i,t.expression)||_n(i,t.modifier)||_n(i,t.modifierExpression)||_n(i,t.block)},294:function(t,i,o){return _n(i,t.expression)},267:function(t,i,o){return _n(i,t.condition)||_n(i,t.questionToken)||_n(i,t.whenTrue)||_n(i,t.colonToken)||_n(i,t.whenFalse)},236:wG,242:function(t,i,o){return pi(i,o,t.modifiers)||_n(i,t.type)||_n(i,t.declarationList)},238:function(t,i,o){return pi(i,o,t.declarations)},237:function(t,i,o){return _n(i,t.type)||_n(i,t.refToken)||_n(i,t.name)||_n(i,t.initializer)},247:function(t,i,o){return _n(i,t.expression)},253:function(t,i,o){return _n(i,t.expression)||_n(i,t.thenStatement)||_n(i,t.elseStatement)},245:function(t,i,o){return _n(i,t.statement)||_n(i,t.expression)},246:function(t,i,o){return _n(i,t.expression)||_n(i,t.statement)},243:function(t,i,o){return _n(i,t.initializer)||_n(i,t.condition)||_n(i,t.incrementor)||_n(i,t.statement)},244:function(t,i,o){return _n(i,t.initializer)||_n(i,t.expression)||_n(i,t.statement)},251:j6,250:j6,248:function(t,i,o){return _n(i,t.expression)},256:function(t,i,o){return _n(i,t.expression)||pi(i,o,t.preBlock)||_n(i,t.caseBlock)},240:function(t,i,o){return pi(i,o,t.clauses)},299:function(t,i,o){return _n(i,t.expression)||pi(i,o,t.statements)},301:function(t,i,o){return pi(i,o,t.statements)},296:function(t,i,o){return _n(i,t.type)||_n(i,t.expression)},290:function(t,i,o){return pi(i,o,t.elements)},284:function(t,i,o){return _n(i,t.name)},285:function(t,i,o){return _n(i,t.operator)},161:function(t,i,o){return _n(i,t.elementType)},291:function(t,i,o){return _n(i,t.initializer)||pi(i,o,t.elements)},292:function(t,i,o){return _n(i,t.name)||pi(i,o,t.elements)},188:U6,199:function(t,i,o){return(typeof t.comment=="string"?void 0:pi(i,o,t.comment))||pi(i,o,t.tags)},226:function(t,i,o){return _n(i,t.tagName)||_n(i,t.name)||(typeof t.comment=="string"?void 0:pi(i,o,t.comment))},189:function(t,i,o){return _n(i,t.name)},190:function(t,i,o){return _n(i,t.left)||_n(i,t.right)},220:mL,228:mL,227:mL,209:function(t,i,o){return _n(i,t.tagName)||(typeof t.comment=="string"?void 0:pi(i,o,t.comment))},208:function(t,i,o){return _n(i,t.tagName)||_n(i,t.class)||(typeof t.comment=="string"?void 0:pi(i,o,t.comment))},207:function(t,i,o){return _n(i,t.tagName)||_n(i,t.class)||(typeof t.comment=="string"?void 0:pi(i,o,t.comment))},224:function(t,i,o){return _n(i,t.tagName)||_n(i,t.constraint)||pi(i,o,t.typeParameters)||(typeof t.comment=="string"?void 0:pi(i,o,t.comment))},225:function(t,i,o){return _n(i,t.tagName)||(t.typeExpression&&t.typeExpression.kind===188?_n(i,t.typeExpression)||_n(i,t.fullName)||(typeof t.comment=="string"?void 0:pi(i,o,t.comment)):_n(i,t.fullName)||_n(i,t.typeExpression)||(typeof t.comment=="string"?void 0:pi(i,o,t.comment)))},217:function(t,i,o){return _n(i,t.tagName)||_n(i,t.fullName)||_n(i,t.typeExpression)||(typeof t.comment=="string"?void 0:pi(i,o,t.comment))},221:NS,223:NS,222:NS,230:NS,229:NS,218:NS,197:U6,202:function(t,i,o){return Ln(t.parameters,i)||_n(i,t.type)},203:gL,204:gL,205:gL,201:function(t,i,o){return Ln(t.jsDocPropertyTags,i)},206:gT,211:gT,212:gT,213:gT,214:gT,210:gT,216:gT};function j6(e,t,i){return _n(t,e.label)}function wG(e,t,i){return pi(t,i,e.statements)}function fL(e,t,i){return _n(t,e.expression)||pi(t,i,e.arguments)}function _o(e,t,i){if(e===void 0||e.kind<=145)return;let o=AG[e.kind];return o===void 0?void 0:o(e,t,i)}function eT(e,t,i){let o=J6(e),c=[];for(;c.length<o.length;)c.push(e);for(;o.length!==0;){let u=o.pop(),p=c.pop();if(mi(u)){if(i){let m=i(u,p);if(m){if(m==="skip")continue;return m}}for(let m=u.length-1;m>=0;--m)o.push(u[m]),c.push(p)}else{let m=t(u,p);if(m){if(m==="skip")continue;return m}if(u&&u.kind>=146)for(let g of J6(u))o.push(g),c.push(u)}}}function J6(e){let t=[];return _o(e,i,i),t;function i(o){t.unshift(o)}}function OG(e){e.externalModuleIndicator=!0}function xb(e,t,i,o=!1,c,u){Pt?.push(Pt.Phase.Parse,"createSourceFile",{path:e},!0),Or.mark("beforeParse");let p,{languageVersion:m,setExternalModuleIndicator:g,impliedNodeFormat:S,jsDocParsingMode:T,globalIncludes:_,configDefines:P,fileHandler:v,reportParsedDefines:B}=typeof i=="object"?i:{languageVersion:i},y=$=>{OG($)};return p=ED.parseSourceFile(e,t,_,P,v,1,void 0,o,void 0,y,T,u,B),Or.mark("afterParse"),Or.measure("Parse","beforeParse","afterParse"),Pt?.pop(),p}function bb(e){return RG(e)!==void 0}function RG(e){let t=PD(e,Y2,!1);if(t)return t;if(mc(e,".c")){let i=Ps(e).lastIndexOf(".d.");if(i>=0)return e.substring(i)}}function hL(e){return e.externalModuleIndicator!==void 0}function ND(e,t){return e.charCodeAt(t+1)===42&&e.charCodeAt(t+2)===42&&e.charCodeAt(t+3)!==47}var MG=new WeakSet;function BG(e){return MG.has(e)}function U6(e,t,i){return _n(t,e.type)}function mL(e,t,i){return _n(t,e.tagName)||(e.isNameFirst?_n(t,e.name)||_n(t,e.typeExpression):_n(t,e.typeExpression)||_n(t,e.name))||(typeof e.comment=="string"?void 0:pi(t,i,e.comment))}function NS(e,t,i){return _n(t,e.tagName)||_n(t,e.typeExpression)||(typeof e.comment=="string"?void 0:pi(t,i,e.comment))}function gL(e,t,i){return _n(t,e.name)}function gT(e,t,i){return _n(t,e.tagName)||(typeof e.comment=="string"?void 0:pi(t,i,e.comment))}function DD(e,t){return ED.parseJsonText(e,t)}var yL=new Map;function jG(e){if(yL.has(e))return yL.get(e);let t=new RegExp(`(\\s${e}\\s*=\\s*)(?:(?:'([^']*)')|(?:"([^"]*)"))`,"im");return yL.set(e,t),t}var JG=/^\/\/\/\s*<(\S+)\s.*?\/>/im,UG=/^\/\/\/?\s*@([^\s:]+)(.*)\s*$/im;function WG(e,t,i){let o=t.kind===2&&JG.exec(i);if(o){let u=o[1].toLowerCase(),p=AF[u];if(!p||!(p.kind&1))return;if(p.args){let m={};for(let g of p.args){let T=jG(g.name).exec(i);if(!T&&!g.optional)return;if(T){let _=T[2]||T[3];if(g.captureSpan){let P=t.pos+T.index+T[1].length+1;m[g.name]={value:_,pos:P,end:P+_.length}}else m[g.name]=_}}e.push({name:u,args:{arguments:m,range:t}})}else e.push({name:u,args:{arguments:{},range:t}});return}let c=t.kind===2&&UG.exec(i);if(c)return W6(e,t,2,c);if(t.kind===3){let u=/@(\S+)(\s+.*)?$/gim,p;for(;p=u.exec(i);)W6(e,t,4,p)}}function W6(e,t,i,o){if(!o)return;let c=o[1].toLowerCase(),u=AF[c];if(!u||!(u.kind&i))return;let p=o[2],m=KG(u,p);m!=="fail"&&e.push({name:c,args:{arguments:m,range:t}})}function KG(e,t){if(!t)return{};if(!e.args)return{};let i=t.trim().split(/\s+/),o={};for(let c=0;c<e.args.length;c++){let u=e.args[c];if(!i[c]&&!u.optional)return"fail";if(u.captureSpan)return I.fail("Capture spans not yet implemented for non-xml pragmas");o[u.name]=i[c]}return o}function VG(e,t){let i=[];for(let o of Dl(t,0)||xe){let c=t.substring(o.pos,o.end);WG(i,o,c)}e.pragmas=new Map;for(let o of i){if(e.pragmas.has(o.name)){let c=e.pragmas.get(o.name);c instanceof Array?c.push(o.args):e.pragmas.set(o.name,[c,o.args]);continue}e.pragmas.set(o.name,o.args)}}function zG(e,t){e.checkLpcDirective=void 0,e.referencedFiles=[],e.typeReferenceDirectives=[],e.libReferenceDirectives=[],e.hasNoDefaultLib=!1,e.pragmas.forEach((i,o)=>{switch(o){case"reference":{let c=e.referencedFiles,u=e.typeReferenceDirectives,p=e.libReferenceDirectives;Ln(vF(i),m=>{let{types:g,lib:S,path:T,["resolution-mode"]:_,preserve:P}=m.arguments,v=P==="true"?!0:void 0;m.arguments["no-default-lib"]==="true"?e.hasNoDefaultLib=!0:g||(S?p.push({pos:S.pos,end:S.end,fileName:S.value,...v?{preserve:v}:{}}):T&&c.push({pos:T.pos,end:T.end,fileName:T.value,...v?{preserve:v}:{}}))});break}case"lpc-nocheck":case"lpc-check":{Ln(vF(i),c=>{(!e.checkLpcDirective||c.range.pos>e.checkLpcDirective.pos)&&(e.checkLpcDirective={enabled:o==="lpc-check",end:c.range.end,pos:c.range.pos})});break}case"this-object":case"this_object":return;default:I.fail("Unhandled pragma kind")}})}var HG=require("vscode-uri");function Cb(e,t){return e?.startsWith(t)?e.slice(t.length):e}function kD(e,t){t&&e.push(t)}var GG=[["ldmud","ldmud.efun.c"]],vD=GG.map(e=>e[0]),_L={name:"compileOnSave",type:"boolean",defaultValueDescription:!1},Nb={name:"extends",type:"listOrElement",element:{name:"extends",type:"string"},category:N.File_Management,disallowNullOrUndefined:!0};function Q6(e,t,i,o,c=xe){t=si(t);let u=Za(o.useCaseSensitiveFileNames),p=new Map,m=new Map,g=new Map,{validatedFilesSpec:S,validatedIncludeSpecs:T,validatedExcludeSpecs:_}=e;if(S)for(let y of S){let $=mo(y,t);p.set(u($),$)}let P=[".c",".h",".lpc"];if(T&&T.length>0)for(let y of o.readDirectory(t,Au(P),_,T,void 0)){let $=u(y);!p.has($)&&!m.has($)&&m.set($,y)}let v=Yo(p.values()),B=Yo(m.values());return v.concat(B,Yo(g.values()))}function CL(e,t,i,o,c,u,p,m){Pt?.push(Pt.Phase.Parse,"parseJsonSourceFileConfigFileContent",{path:e.fileName});let g=$G(void 0,e,t,i,o,m,c,u,p);return Pt?.pop(),g}function Y6(e,t){return vi(mo(e,t))}function X6(e){return{enable:!!e&&Ps(e)==="jsconfig.json",include:[],exclude:[]}}function $G(e,t,i,o,c={},u,p,m=[],g=[],S){I.assert(e===void 0&&t!==void 0||e!==void 0&&t===void 0);let T=[],_=g$(e,t,i,o,p,m,T,S),{raw:P}=_,v=QG(SM(c,_.options||{}),v$,o),B=u;v.configFilePath=p&&gc(p);let y=si(p?Y6(p,o):o),$=$e();t&&(t.configFileSpecs=$),b$(v,t);let j=P?.include&&mi(P.include)?Ta(P.include):void 0,ce=si(Zr(y,j??"./"));v.rootDir=ce,v.rootDirs=[ce],v.driverType=n6(P?.driver?.type),P?.libInclude&&mi(P.libInclude)&&(v.libIncludeDirs=qn(P.libInclude,Ee=>si(Zr(ce,Cb(Ee,"/"))))),P?.libFiles?.global_include&&(v.globalIncludeFiles=[P?.libFiles?.global_include],v.resolvedGlobalIncludeFiles=v.globalIncludeFiles.map(Ee=>Ln(v.libIncludeDirs,ze=>{let te=si(Zr(ze,Ee));if(i.fileExists(te))return te}))),v.diagnostics=P?.diagnostics==="on"||P?.diagnostics===!0;let me=Cb(v.sefunFile??P?.libFiles?.simul_efun??"/obj/sefun.c","/");v.sefunFile=si(Zr(ce,me));let V=Cb(v.masterFile??P?.libFiles?.master??"/obj/master.c","/");v.masterFile=si(Zr(ce,V));let ne=Cb(v.playerFile??P?.libFiles?.player??"/obj/player.c","/");v.playerFile=si(Zr(ce,ne)),v.configDefines??(v.configDefines={});let ve=P?.defines??xe;return Ln(ve,Ee=>{let z=Ta(Object.keys(Ee||{}));if(z){let ze=Ee[z];v.configDefines[z]=Ee[z]}}),{options:v,watchOptions:B,fileNames:Ie(y),projectReferences:ge(y),typeAcquisition:X6(),raw:_,errors:T,wildcardDirectories:YG($,y,i.useCaseSensitiveFileNames),compileOnSave:!1};function $e(){let Ee=ye("references",kr=>typeof kr=="object","object"),z=Ae(Qe("files"));if(z){let kr=Ee==="no-prop"||mi(Ee)&&Ee.length===0,fn=Fa(P,"extends");if(z.length===0&&kr&&!fn)if(t){let re=p||"lpc-config.json",dt=N.The_files_list_in_config_file_0_is_empty,ot=mb(t,"files",Bt=>Bt.initializer),Nt=ip(t,ot,dt,re);T.push(Nt)}else ae(N.The_files_list_in_config_file_0_is_empty,p||"tsconfig.json")}let ze=Ae(Qe("include")),te=Qe("exclude"),le=!1,bn=Ae(te);if(te==="no-prop"){let kr=v.outDir,fn=v.declarationDir;(kr||fn)&&(bn=Rr([kr,fn],re=>!!re))}z===void 0&&ze===void 0&&(ze=[XG],le=!0);let Ft,ue,gn,je;ze&&(Ft=V6(ze,T,!0,t,"include"),gn=Eb(Ft,y)||Ft),bn&&(ue=V6(bn,T,!1,t,"exclude"),je=Eb(ue,y)||ue);let Pn=Rr(z,ho),Ut=Eb(Pn,y)||Pn;return{filesSpecs:z,includeSpecs:ze,excludeSpecs:bn,validatedFilesSpec:Ut,validatedIncludeSpecs:gn,validatedExcludeSpecs:je,validatedFilesSpecBeforeSubstitution:Pn,validatedIncludeSpecsBeforeSubstitution:Ft,validatedExcludeSpecsBeforeSubstitution:ue,pathPatterns:void 0,isDefaultIncludeSpec:le}}function Ie(Ee){let z=Q6($,Ee,v,i,g);return D$(z,P$(P),m)&&T.push(k$($,p)),z}function ge(Ee){let z,ze=ye("references",te=>typeof te=="object","object");return z}function Ae(Ee){return mi(Ee)?Ee:void 0}function Qe(Ee){return ye(Ee,ho,"string")}function ye(Ee,z,ze){if(Fa(P,Ee)&&!Db(P[Ee]))if(mi(P[Ee])){let te=P[Ee];return!t&&!di(te,z)&&T.push(cu(N.Compiler_option_0_requires_a_value_of_type_1,Ee,ze)),te}else return ae(N.Compiler_option_0_requires_a_value_of_type_1,Ee,"Array"),"not-array";return"no-prop"}function ae(Ee,...z){t||T.push(cu(Ee,...z))}}function QG(e,t,i){if(!e)return e;let o;for(let u of t)if(e[u.name]!==void 0){let p=e[u.name];switch(u.type){case"string":I.assert(u.isFilePath),EL(p)&&c(u,e4(p,i));break;case"list":I.assert(u.element.isFilePath);let m=Eb(p,i);m&&c(u,m);break;case"object":I.assert(u.name==="paths");let g=ZG(p,i);g&&c(u,g);break;default:I.fail("option type not supported")}}return o||e;function c(u,p){(o??(o=Tx({},e)))[u.name]=p}}function YG({validatedIncludeSpecs:e,validatedExcludeSpecs:t},i,o){let c=Lx(t,i,"exclude"),u=c&&new RegExp(c,o?"":"i"),p={},m=new Map;if(e!==void 0){let g=[];for(let S of e){let T=si(Zr(i,S));if(u&&u.test(T))continue;let _=e$(T,o);if(_){let{key:P,path:v,flags:B}=_,y=m.get(P),$=y!==void 0?p[y]:void 0;($===void 0||$<B)&&(p[y!==void 0?y:v]=B,y===void 0&&m.set(P,v),B===1&&g.push(P))}}for(let S in p)if(Fa(p,S))for(let T of g){let _=xL(S,o);_!==T&&cm(T,_,i,!o)&&delete p[S]}}return p}var XG="**/*";function V6(e,t,i,o,c){return e.filter(u=>{if(!ho(u))return!1;let p=n$(u,i);return p!==void 0&&console.warn("implement diagnostic - ",p),p===void 0})}function ZG(e,t){let i;return KE(e).forEach(c=>{if(!mi(e[c]))return;let u=Eb(e[c],t);u&&((i??(i=Tx({},e)))[c]=u)}),i}function Eb(e,t){if(!e)return e;let i;return e.forEach((o,c)=>{EL(o)&&((i??(i=e.slice()))[c]=e4(o,t))}),i}function Db(e){return e==null}function xL(e,t){return t?e:tg(e)}function e$(e,t){let i=t$.exec(e);if(i){let o=e.indexOf("?"),c=e.indexOf("*"),u=e.lastIndexOf(Jo);return{key:xL(i[0],t),path:i[0],flags:o!==-1&&o<u||c!==-1&&c<u?1:0}}if(kI(e.substring(e.lastIndexOf(Jo)+1))){let o=sm(e);return{key:xL(o,t),path:o,flags:1}}}function n$(e,t){if(I.assert(typeof e=="string"),t&&r$.test(e))return[N.File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0,e];if(i$(e))return[N.File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0,e]}var Z6="${configDir}";function EL(e){return ho(e)&&To(e,Z6,!0)}function e4(e,t){return mo(e.replace(Z6,"./"),t)}var t$=/^[^*?]*(?=\/[^/]*[*?])/,r$=/(^|\/)\*\*\/?$/;function i$(e){let t=To(e,"**/")?0:e.indexOf("/**/");return t===-1?!1:(Pc(e,"/..")?e.length:e.lastIndexOf("/../"))>t}function o$(e,t){return bL(e,e.statements[0]?.expression,t,!0,void 0)}function bL(e,t,i,o,c){if(!t)return o?{}:void 0;return m(t,c?.rootOptions);function u(S,T){let _=o?{}:void 0;for(let P of S.properties){if(P.kind!==174){i.push(Lc(e,P,N.Property_assignment_expected));continue}g(P.name)||i.push(Lc(e,P.name,N.String_literal_with_double_quotes_expected));let v=aD(P.name)?void 0:HI(P.name),B=v&&v,y=B?T?.elementOptions?.get(B):void 0,$=m(P.initializer,y);typeof B<"u"&&(o&&(_[B]=$),c?.onPropertySet(B,$,P,T,y))}return _}function p(S,T){if(!o){S.forEach(_=>m(_,T));return}return Rr(S.map(_=>m(_,T)),_=>_!==void 0)}function m(S,T){switch(S.kind){case 136:return!0;case 135:return!1;case 137:return null;case 16:return g(S)||i.push(Lc(e,S,N.String_literal_with_double_quotes_expected)),S.text;case 10:return Number(S.text);case 298:if(S.operator!==42||S.operand.kind!==10)break;return-Number(S.operand.text);case 293:return u(S,T);case 290:return p(S.elements,T&&T.element)}T?i.push(Lc(e,S,N.Compiler_option_0_requires_a_value_of_type_1,T.name,NL(T))):i.push(Lc(e,S,N.Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_literal))}function g(S){return Pi(S)&&wI(S,e)}}function NL(e){return e.type==="listOrElement"?`${NL(e.element)} or Array`:e.type==="list"?"Array":ho(e.type)?e.type:"string"}var z6;function a$(){return z6||(z6=n4(l$))}var s$={diagnostic:N.Compiler_option_0_may_only_be_used_with_build,getOptionsNameMap:a$};function n4(e){let t=new Map,i=new Map;return Ln(e,o=>{t.set(o.name.toLowerCase(),o),o.shortName&&i.set(o.shortName,o.name)}),{optionsNameMap:t,shortOptionNames:i}}function t4(e){return e&&Ps(e)==="jsconfig.json"?{maxNodeModuleJsDepth:2}:{}}function r4(e){return hM(e,i4)}function i4(e){return e.name}var o4=[{name:"help",shortName:"h",type:"boolean",showInSimplifiedHelpView:!0,isCommandLineOnly:!0,category:N.Command_line_Options,description:N.Print_this_message,defaultValueDescription:!1},{name:"help",shortName:"?",type:"boolean",isCommandLineOnly:!0,category:N.Command_line_Options,defaultValueDescription:!1},{name:"watch",shortName:"w",type:"boolean",showInSimplifiedHelpView:!0,isCommandLineOnly:!0,category:N.Command_line_Options,description:N.Watch_input_files,defaultValueDescription:!1},{name:"preserveWatchOutput",type:"boolean",showInSimplifiedHelpView:!1,category:N.Output_Formatting,description:N.Disable_wiping_the_console_in_watch_mode,defaultValueDescription:!1},{name:"listFiles",type:"boolean",category:N.Compiler_Diagnostics,description:N.Print_all_of_the_files_read_during_the_compilation,defaultValueDescription:!1},{name:"explainFiles",type:"boolean",category:N.Compiler_Diagnostics,description:N.Print_files_read_during_the_compilation_including_why_it_was_included,defaultValueDescription:!1},{name:"listEmittedFiles",type:"boolean",category:N.Compiler_Diagnostics,description:N.Print_the_names_of_emitted_files_after_a_compilation,defaultValueDescription:!1},{name:"pretty",type:"boolean",showInSimplifiedHelpView:!0,category:N.Output_Formatting,description:N.Enable_color_and_formatting_in_TypeScript_s_output_to_make_compiler_errors_easier_to_read,defaultValueDescription:!0},{name:"traceResolution",type:"boolean",category:N.Compiler_Diagnostics,description:N.Log_paths_used_during_the_moduleResolution_process,defaultValueDescription:!1},{name:"diagnostics",type:"boolean",category:N.Compiler_Diagnostics,description:N.Output_compiler_performance_information_after_building,defaultValueDescription:!1},{name:"extendedDiagnostics",type:"boolean",category:N.Compiler_Diagnostics,description:N.Output_more_detailed_compiler_performance_information_after_building,defaultValueDescription:!1},{name:"generateCpuProfile",type:"string",isFilePath:!0,paramType:N.FILE_OR_DIRECTORY,category:N.Compiler_Diagnostics,description:N.Emit_a_v8_CPU_profile_of_the_compiler_run_for_debugging,defaultValueDescription:"profile.cpuprofile"},{name:"generateTrace",type:"string",isFilePath:!0,isCommandLineOnly:!0,paramType:N.DIRECTORY,category:N.Compiler_Diagnostics,description:N.Generates_an_event_trace_and_a_list_of_types},{name:"incremental",shortName:"i",type:"boolean",category:N.Projects,description:N.Save_tsbuildinfo_files_to_allow_for_incremental_compilation_of_projects,transpileOptionValue:void 0,defaultValueDescription:N.false_unless_composite_is_set},{name:"sourceMap",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:N.Emit,defaultValueDescription:!1,description:N.Create_source_map_files_for_emitted_JavaScript_files},{name:"assumeChangesOnlyAffectDirectDependencies",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,category:N.Watch_and_Build_Modes,description:N.Have_recompiles_in_projects_that_use_incremental_and_watch_mode_assume_that_changes_within_a_file_will_only_affect_files_directly_depending_on_it,defaultValueDescription:!1},{name:"locale",type:"string",category:N.Command_line_Options,isCommandLineOnly:!0,description:N.Set_the_language_of_the_messaging_from_TypeScript_This_does_not_affect_emit,defaultValueDescription:N.Platform_specific}],a4=[{name:"rootDir",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!0,paramType:N.LOCATION,category:N.Command_line_Options,description:N.Specify_the_root_folder_within_your_source_files,defaultValueDescription:N.Computed_from_the_list_of_input_files},{name:"strictObjectTypes",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:N.Type_Checking,description:N.When_comparing_types_check_that_the_objectStructure_is_compatible_with_the_target_type,defaultValueDescription:N.false_unless_strict_is_set},{name:"noLib",type:"boolean",category:N.Language_and_Environment,affectsProgramStructure:!0,description:N.Disable_including_any_library_files_including_the_default_efun_h,transpileOptionValue:!0,defaultValueDescription:!1}],um=[...o4,...a4],s4=[],c$=[{name:"verbose",shortName:"v",category:N.Command_line_Options,description:N.Enable_verbose_logging,type:"boolean",defaultValueDescription:!1}],l$=[...o4,...c$],yD=um.filter(e=>!!e.affectsModuleResolution),H6;function c4(){return H6||(H6=r4(um))}var l4=um.filter(e=>!!e.affectsSourceFile||!!e.affectsBindDiagnostics);function u$(e,t,i,o,c,u){if(t){for(let p in t){let m=e.get(p);m?(o||(o={}))[m.name]=Og(m,t[p],i,u):u.push(m4(p,c))}return o}}function d$(e,t,i,o,c){Fa(e,"excludes")&&c.push(cu(N.Unknown_option_excludes_Did_you_mean_exclude));let u=h$(e.compilerOptions,i,c,o),p=f$(e.typeAcquisition,i,c,o),m=m$(e.watchOptions,i,c);e.compileOnSave=p$(e,i,c);let g=e.extends||e.extends===""?u4(e.extends,t,i,o,c):void 0;return{raw:e,options:u,watchOptions:m,typeAcquisition:p,extendedConfigPath:g}}function q6(e,t,i,o,c,u){if(e=gc(e),nl(e)||To(e,"./")||To(e,"../")){let p=mo(e,i);if(!t.fileExists(p)&&!Pc(p,".json")&&(p=`${p}.json`,!t.fileExists(p))){o.push(ip(u,c,N.File_0_not_found,e));return}return p}e===""?o.push(ip(u,c,N.Compiler_option_0_cannot_be_given_an_empty_string,"extends")):o.push(ip(u,c,N.File_0_not_found,e))}function u4(e,t,i,o,c,u,p,m){let g,S=o?Y6(o,i):i;if(ho(e))g=q6(e,t,S,c,p,m);else if(mi(e)){g=[];for(let T=0;T<e.length;T++){let _=e[T];ho(_)?g=Fr(g,q6(_,t,S,c,p?.elements[T],m)):Og(Nb.element,e,i,c,u,p?.elements[T],m)}}else Og(Nb,e,i,c,u,p,m);return g}function p$(e,t,i){if(!Fa(e,_L.name))return!1;let o=Og(_L,e.compileOnSave,t,i);return typeof o=="boolean"&&o}function f$(e,t,i,o){console.debug("todo - convertTypeAcquisitionFromJsonWorker")}function m$(e,t,i){console.debug("todo - convertWatchOptionsFromJsonWorker")}function g$(e,t,i,o,c,u,p,m){o=gc(o);let g=mo(c||"",o);if(u.includes(g))return p.push(cu(N.Circularity_detected_while_resolving_configuration_Colon_0,[...u,g].join(" -> "))),{raw:e||o$(t,p)};let S=e?d$(e,i,o,c,p):E$(t,i,o,c,p);if(S.options?.paths&&(S.options.pathsBasePath=o),S.extendedConfigPath){u=u.concat([g]);let _={options:{}};ho(S.extendedConfigPath)?T(_,S.extendedConfigPath):S.extendedConfigPath.forEach(P=>T(_,P)),_.include&&(S.raw.include=_.include),_.exclude&&(S.raw.exclude=_.exclude),_.files&&(S.raw.files=_.files),S.raw.compileOnSave===void 0&&_.compileOnSave&&(S.raw.compileOnSave=_.compileOnSave),t&&_.extendedSourceFiles&&(t.extendedSourceFiles=Yo(_.extendedSourceFiles.keys())),S.options=Tx(_.options,S.options),S.watchOptions=S.watchOptions&&_.watchOptions?Tx(_.watchOptions,S.watchOptions):S.watchOptions||_.watchOptions}return S;function T(_,P){console.debug("todo - applyExtendedConfig")}}var y$;function T$(){return y$||(y$=n4(um))}var d4={alternateMode:s$,getOptionsNameMap:T$,optionDeclarations:um,unknownOptionDiagnostic:N.Unknown_compiler_option_0,unknownDidYouMeanDiagnostic:N.Unknown_compiler_option_0_Did_you_mean_1,optionTypeMismatchDiagnostic:N.Compiler_option_0_expects_an_argument};function h$(e,t,i,o){let c=t4(o);return u$(c4(),e,t,c,d4,i),o&&(c.configFilePath=gc(o)),c}function ip(e,t,i,...o){return e&&t?Lc(e,t,i,...o):cu(i,...o)}function p4(e,t){if(e){if(Db(t))return!e.disallowNullOrUndefined;if(e.type==="list")return mi(t);if(e.type==="listOrElement")return mi(t)||p4(e.element,t);let i=ho(e.type)?e.type:"string";return typeof t===i}return!1}function G6(e,t,i,o,c,u,p){return Rr(qn(t,(m,g)=>Og(e.element,m,i,o,c,u?.elements[g],p)),m=>e.listPreserveFalsyValues?!0:!!m)}function S$(e,t,i,o,c){if(Db(t))return;let u=t.toLowerCase(),p=e.type.get(u);if(p!==void 0)return f4(e,p,i,o,c);i.push(_$(e,(m,...g)=>ip(c,o,m,...g)))}function _$(e,t){let i=Yo(e.type.keys()),o=(e.deprecatedKeys?i.filter(c=>!e.deprecatedKeys.has(c)):i).map(c=>`'${c}'`).join(", ");return t(N.Argument_for_0_option_must_be_Colon_1,`--${e.name}`,o)}function Og(e,t,i,o,c,u,p){if(e.isCommandLineOnly){o.push(ip(p,c?.name,N.Option_0_can_only_be_specified_on_command_line,e.name));return}if(p4(e,t)){let m=e.type;if(m==="list"&&mi(t))return G6(e,t,i,o,c,u,p);if(m==="listOrElement")return mi(t)?G6(e,t,i,o,c,u,p):Og(e.element,t,i,o,c,u,p);if(!ho(e.type))return S$(e,t,o,u,p);let g=f4(e,t,o,u,p);return Db(g)?g:x$(e,i,g)}else o.push(ip(p,u,N.Compiler_option_0_requires_a_value_of_type_1,e.name,NL(e)))}function x$(e,t,i){return e.isFilePath&&(i=gc(i),i=EL(i)?i:mo(i,t),i===""&&(i=".")),i}function f4(e,t,i,o,c){if(Db(t))return;let u=e.extraValidation?.(t);if(!u)return t;i.push(ip(c,o,...u))}function b$(e,t){t&&Object.defineProperty(e,"configFile",{enumerable:!1,writable:!1,value:t})}function m4(e,t,i,o,c){if(t.alternateMode?.getOptionsNameMap().optionsNameMap.has(e.toLowerCase()))return ip(c,o,t.alternateMode.diagnostic,e);let u=Wf(e,t.optionDeclarations,i4);return u?ip(c,o,t.unknownDidYouMeanDiagnostic,i||e,u.name):ip(c,o,t.unknownOptionDiagnostic,i||e)}var g4={name:"compilerOptions",type:"object",elementOptions:c4(),extraKeyDiagnostics:d4},SL;function C$(){return SL===void 0&&(SL={name:void 0,type:"object",elementOptions:r4([g4,Nb,{name:"references",type:"list",element:{name:"references",type:"object"},category:N.Projects},{name:"files",type:"list",element:{name:"files",type:"string"},category:N.File_Management},{name:"include",type:"list",element:{name:"include",type:"string"},category:N.File_Management,defaultValueDescription:N.if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk},{name:"exclude",type:"list",element:{name:"exclude",type:"string"},category:N.File_Management,defaultValueDescription:N.node_modules_bower_components_jspm_packages_plus_the_value_of_outDir_if_one_is_specified},_L])}),SL}function E$(e,t,i,o,c){let u=t4(o),p,m,g,S,T=C$(),_=N$(e,c,{rootOptions:T,onPropertySet:P});return p||(p=X6(o)),S&&_&&_.compilerOptions===void 0&&c.push(Lc(e,S[0],N._0_should_be_set_inside_the_compilerOptions_object_of_the_config_json_file,HI(S[0]))),{raw:_,options:u,watchOptions:m,typeAcquisition:p,extendedConfigPath:g};function P(v,B,y,$,j){if(j&&j!==Nb&&(B=Og(j,B,i,c,y,y.initializer,e)),$?.name)if(j){let ce;$===g4?ce=u:I.fail("Unknown option"),ce[j.name]=B}else v&&$?.extraKeyDiagnostics&&($.elementOptions?c.push(m4(v,$.extraKeyDiagnostics,void 0,y.name,e)):c.push(Lc(e,y.name,$.extraKeyDiagnostics.unknownOptionDiagnostic,v)));else $===T&&(j===Nb?g=u4(B,t,i,o,c,y,y.initializer,e):j||(v==="excludes"&&c.push(Lc(e,y.name,N.Unknown_option_excludes_Did_you_mean_exclude)),fr(a4,ce=>ce.name===v)&&(S=Fr(S,y.name))))}}function N$(e,t,i){let o=e.statements[0]?.expression;if(o&&o.kind!==293){if(t.push(Lc(e,o,N.The_root_value_of_a_0_file_must_be_an_object,Ps(e.fileName)==="jsconfig.json"?"jsconfig.json":"tsconfig.json")),cT(o)){let c=fr(o.elements,Ka);if(c)return bL(e,c,t,!0,i)}return{}}return bL(e,o,t,!0,i)}function D$(e,t,i){return e.length===0&&t&&(!i||i.length===0)}function P$(e){return!Fa(e,"files")&&!Fa(e,"references")}function k$({includeSpecs:e,excludeSpecs:t},i){return cu(N.No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2,i||"lpc-config.json",JSON.stringify(e||[]),JSON.stringify(t||[]))}var v$=um.filter(e=>e.allowConfigDirTemplateSubstitution||!e.isCommandLineOnly&&e.isFilePath),x6=um.filter(e=>!!e.affectsProgramStructure);function Rg(e,t){return!!e.traceResolution&&t.trace!==void 0}function ha(e,t,...i){e.trace(fI(t,...i))}function kb(e,t){return t===void 0?e:`${t}|${e}`}function wD(){let e=new Map,t=new Map,i={get(c,u){return e.get(o(c,u))},set(c,u,p){return e.set(o(c,u),p),i},delete(c,u){return e.delete(o(c,u)),i},has(c,u){return e.has(o(c,u))},forEach(c){return e.forEach((u,p)=>{let[m,g]=t.get(p);return c(u,m,g)})},size(){return e.size}};return i;function o(c,u){let p=kb(c,u);return t.set(p,[c,u]),p}}function F$(e){return e.resolvedModule&&(e.resolvedModule.originalPath||e.resolvedModule.resolvedFileName)}function kL(e,t,i,o,c){let u=I$(e,t,i,o,F$,c);return u.getOrCreateCacheForModuleName=(p,m,g)=>u.getOrCreateCacheForNonRelativeName(p,m,g),u}function I$(e,t,i,o,c,u){u??(u=new Map);let p=w$(e,t,i,u),m=A$(e,t,i,c,u);return{...o,...p,...m,clear:g,update:T,getPackageJsonInfoCache:()=>o,clearAllExceptPackageJsonInfoCache:S,optionsToRedirectsKey:u};function g(){S()}function S(){p.clear(),m.clear()}function T(_){p.update(_),m.update(_)}}function h4(e,t){let i=new Map,o=new Map,c=new Map;return e&&i.set(e,c),{getMapOfCacheRedirects:u,getOrCreateMapOfCacheRedirects:p,update:m,clear:S,getOwnMap:()=>c};function u(_){return _?g(_.commandLine.options,!1):c}function p(_){return _?g(_.commandLine.options,!0):c}function m(_){e!==_&&(e?c=g(_,!0):i.set(_,c),e=_)}function g(_,P){let v=i.get(_);if(v)return v;let B=T(_);if(v=o.get(B),!v){if(e){let y=T(e);y===B?v=c:o.has(y)||o.set(y,c)}P&&(v??(v=new Map)),v&&o.set(B,v)}return v&&i.set(_,v),v}function S(){let _=e&&t.get(e);c.clear(),i.clear(),t.clear(),o.clear(),e&&(_&&t.set(e,_),i.set(e,c))}function T(_){let P=t.get(_);return P||t.set(_,P=L$(_,yD)),P}}function PL(e){if(e===null||typeof e!="object")return""+e;if(mi(e))return`[${e.map(i=>PL(i))?.join(",")}]`;let t="{";for(let i in e)Fa(e,i)&&(t+=`${i}: ${PL(e[i])}`);return t+"}"}function L$(e,t){return t.map(i=>PL(FN(e,i))).join("|")+`|${e.configFilePath}`}function A$(e,t,i,o,c){let u=h4(i,c);return{getFromNonRelativeNameCache:g,getOrCreateCacheForNonRelativeName:S,clear:p,update:m};function p(){u.clear()}function m(_){u.update(_)}function g(_,P,v,B){return u.getMapOfCacheRedirects(B)?.get(kb(_,P))?.get(v)}function S(_,P,v){return S4(u,v,kb(_,P),T)}function T(){let _=new Map;return{get:P,set:v};function P(y){return _.get(al(y,e,t))}function v(y,$){let j=al(y,e,t);if(_.has(j))return;_.set(j,$);let ce=o($),me=ce&&B(j,ce),V=j;for(;V!==me;){let ne=vi(V);if(ne===V||_.has(ne))break;_.set(ne,$),V=ne}}function B(y,$){let j=al(vi($),e,t),ce=0,me=Math.min(y.length,j.length);for(;ce<me&&y.charCodeAt(ce)===j.charCodeAt(ce);)ce++;if(ce===y.length&&(j.length===ce||j[ce]===Jo))return y;let V=Ll(y);if(ce<V)return;let ne=y.lastIndexOf(Jo,ce-1);if(ne!==-1)return y.substr(0,Math.max(ne,V))}}}function w$(e,t,i,o){let c=h4(i,o);return{getFromDirectoryCache:g,getOrCreateCacheForDirectory:m,clear:u,update:p,directoryToModuleNameMap:c};function u(){c.clear()}function p(S){c.update(S)}function m(S,T){let _=al(S,e,t);return S4(c,T,_,()=>wD())}function g(S,T,_,P){let v=al(_,e,t);return c.getMapOfCacheRedirects(P)?.get(v)?.get(S,T)}}function vL(e,t,i,o,c,u,p){let m=Rg(i,o);u&&(i=u.commandLine.options),m&&(ha(o,N.Resolving_module_0_from_1,e,t),u&&ha(o,N.Using_compiler_options_of_project_reference_redirect_0,u.sourceFile.fileName));let g=vi(t),S=c?.getFromDirectoryCache(e,p,g,u);if(S)m&&ha(o,N.Resolution_for_module_0_was_found_in_cache_from_location_1,e,g);else{let T=1;switch(T===void 0||m&&ha(o,N.Explicitly_specified_module_resolution_kind_Colon_0,rN[T]),hx?.logStartResolveModule(e),T){case 1:S=M$(e,t,i,o,c,u);break;default:return I.fail(`Unexpected moduleResolution: ${T}`)}S&&S.resolvedModule&&hx?.logInfoEvent(`Module "${e}" resolved to "${S.resolvedModule.resolvedFileName}"`),hx?.logStopResolveModule(S&&S.resolvedModule?""+S.resolvedModule.resolvedFileName:"null"),c&&!c.isReadonly&&(c.getOrCreateCacheForDirectory(g,u).set(e,p,S),$d(e)||c.getOrCreateCacheForNonRelativeName(e,p,u).set(g,S))}return m&&(S.resolvedModule?S.resolvedModule.packageId?ha(o,N.Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2,e,S.resolvedModule.resolvedFileName,kg(S.resolvedModule.packageId)):ha(o,N.Module_name_0_was_successfully_resolved_to_1,e,S.resolvedModule.resolvedFileName):ha(o,N.Module_name_0_was_not_resolved,e)),S}var O$="/node_modules/";function R$(e){return e.includes(O$)}function M$(e,t,i,o,c,u){let p=Rg(i,o),m=[],g=[],S=vi(t),T=[],_={compilerOptions:i,host:o,traceEnabled:p,failedLookupLocations:m,affectingLocations:g,packageJsonInfoCache:c,features:0,conditions:[],requestContainingDirectory:S,reportDiagnostic:B=>void T.push(B),isConfigLookup:!1,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1},P=v(5);return B$(e,P&&P.value,P?.value&&R$(P.value.path),m,g,T,_,c);function v(B){let y=K$(B,e,S,FD,_);if(y)return{value:y};if(nl(e)){let $=_.compilerOptions.rootDir,j=si(Zr($,"."+e));return e.indexOf(".")===-1&&(j+=".c"),AD(FD(B,j,!1,_))}if($d(e)){let $=si(Zr(S,e));return AD(FD(B,$,!1,_))}else{let $=vb(S,j=>{let ce=_4(c,e,void 0,j,u,_);if(ce)return ce;let me=si(Zr(j,e));return AD(FD(B,me,!1,_))});if($)return $;if(B&5){let j=Y$(e,S,_);return B&4&&(j??(j=void 0)),j}}}}function S4(e,t,i,o){let c=e.getOrCreateMapOfCacheRedirects(t),u=c.get(i);return u||(u=o(),c.set(i,u)),u}function y4(e){let t=[];return e&1&&t.push("LPC"),e&2&&t.push("JavaScript"),e&4&&t.push("Declaration"),e&8&&t.push("JSON"),t.join(", ")}function B$(e,t,i,o,c,u,p,m,g){if(!p.resultFromCache&&!p.compilerOptions.preserveSymlinks&&t&&i&&!t.originalPath&&!$d(e)){let{resolvedFileName:S,originalPath:T}=W$(t.path,p.host,p.traceEnabled);T&&(t={...t,path:S,originalPath:T})}return j$(t,i,o,c,u,p.resultFromCache,m,g)}function j$(e,t,i,o,c,u,p,m){return u?p?.isReadonly?{...u,failedLookupLocations:DL(u.failedLookupLocations,i),affectingLocations:DL(u.affectingLocations,o),resolutionDiagnostics:DL(u.resolutionDiagnostics,c)}:(u.failedLookupLocations=LD(u.failedLookupLocations,i),u.affectingLocations=LD(u.affectingLocations,o),u.resolutionDiagnostics=LD(u.resolutionDiagnostics,c),u):{resolvedModule:e&&{resolvedFileName:e.path,originalPath:e.originalPath===!0?void 0:e.originalPath,extension:e.extension,isExternalLibraryImport:t,packageId:e.packageId,resolvedUsingTsExtension:!!e.resolvedUsingTsExtension},failedLookupLocations:ID(i),affectingLocations:ID(o),resolutionDiagnostics:ID(c),alternateResult:m}}function ID(e){return e.length?e:void 0}function LD(e,t){return t?.length?e?.length?(e.push(...t),e):t:e}function DL(e,t){return e?.length?t.length?[...e,...t]:e.slice():ID(t)}function J$(e,t,i){if(!t.realpath)return e;let o=si(t.realpath(e));return i&&ha(t,N.Resolving_real_path_for_0_result_1,e,o),o}function U$(e,t,i){let o=typeof i.useCaseSensitiveFileNames=="function"?i.useCaseSensitiveFileNames():i.useCaseSensitiveFileNames;return CS(e,t,!o)===0}function W$(e,t,i){let o=J$(e,t,i),c=U$(e,o,t);return{resolvedFileName:c?e:o,originalPath:c?void 0:e}}function AD(e){return e!==void 0?{value:e}:void 0}function K$(e,t,i,o,c){return V$(e,t,i,o,c)}function V$(e,t,i,o,c){if(!c.compilerOptions.rootDir)return;c.traceEnabled&&ha(c.host,N.rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0,t);let u=si(Zr(i,t)),p,m;for(let g of c.compilerOptions.rootDirs){let S=si(g);Pc(S,Jo)||(S+=Jo);let T=To(u,S)&&(m===void 0||m.length<S.length);c.traceEnabled&&ha(c.host,N.Checking_if_0_is_the_longest_matching_prefix_for_1_2,S,u,T),T&&(m=S,p=g)}if(m){c.traceEnabled&&ha(c.host,N.Longest_matching_prefix_for_0_is_1,u,m);let g=u.substr(m.length);c.traceEnabled&&ha(c.host,N.Loading_0_from_the_root_dir_1_candidate_location_2,g,m,u);let S=o(e,u,!Vx(i,c.host),c);if(S)return S;c.traceEnabled&&ha(c.host,N.Trying_other_entries_in_rootDirs);for(let T of c.compilerOptions.rootDir){if(T===p)continue;let _=Zr(si(T),g);c.traceEnabled&&ha(c.host,N.Loading_0_from_the_root_dir_1_candidate_location_2,g,T,_);let P=vi(_),v=o(e,_,!Vx(P,c.host),c);if(v)return v}c.traceEnabled&&ha(c.host,N.Module_resolution_using_rootDirs_has_failed)}}function _4(e,t,i,o,c,u){let p=e&&e.getFromNonRelativeNameCache(t,i,o,c);if(p)return u.traceEnabled&&ha(u.host,N.Resolution_for_module_0_was_found_in_cache_from_location_1,t,o),u.resultFromCache=p,{value:p.resolvedModule&&{path:p.resolvedModule.resolvedFileName,originalPath:p.resolvedModule.originalPath||!0,extension:p.resolvedModule.extension,packageId:p.resolvedModule.packageId,resolvedUsingTsExtension:p.resolvedModule.resolvedUsingTsExtension}}}function z$(e,t,i){let o;if(t&&e){let c=e.contents.packageJsonContent;typeof c.name=="string"&&typeof c.version=="string"&&(o={name:c.name,subModuleName:t.path.slice(e.packageDirectory.length+Jo.length),version:c.version,peerDependencies:void 0})}return t&&{path:t.path,extension:t.ext,packageId:o,resolvedUsingTsExtension:t.resolvedUsingTsExtension}}function H$(e){return z$(void 0,e,void 0)}function FD(e,t,i,o){return H$(q$(e,t,i,o))}function q$(e,t,i,o){let c=G$(e,t,i,o);if(c)return c;if(!(o.features&32)){let u=x4(t,e,"",i,o);if(u)return u}}function G$(e,t,i,o){if(!Ps(t).includes("."))return;let u=nf(t);u===t&&(u=t.substring(0,t.lastIndexOf(".")));let p=t.substring(u.length);return o.traceEnabled&&ha(o.host,N.File_name_0_has_a_1_extension_stripping_it,t,p),x4(u,e,p,i,o)}function x4(e,t,i,o,c){if(!o){let p=vi(e);p&&(o=!Vx(p,c.host))}switch(i){case".c":case".h":case".lpc":case"":return t&1&&u(".c",i===".c"||i===".h")||t&1&&u(".h",i===".c"||i===".h")||c.isConfigLookup&&u(".json")||void 0;default:return t&4&&!bb(e+i)&&u(`.d${i}.ts`)||void 0}function u(p,m){let g=$$(e+p,o,c);return g===void 0?void 0:{path:g,ext:p,resolvedUsingTsExtension:!c.candidateIsFromPackageJsonField&&m}}}function $$(e,t,i){return Q$(e,t,i)}function Q$(e,t,i){if(!t){if(i.host.fileExists(e))return i.traceEnabled&&ha(i.host,N.File_0_exists_use_it_as_a_name_resolution_result,e),e;i.traceEnabled&&ha(i.host,N.File_0_does_not_exist,e)}i.failedLookupLocations?.push(e)}function Y$(e,t,i){return X$(4,e,t,i,!0,void 0,void 0)}function X$(e,t,i,o,c,u,p){let g=e&5,S=e&-6;if(g){T4(o,N.Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0,y4(g));let _=T(g);if(_)return _}if(S&&!c)return T4(o,N.Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0,y4(S)),T(S);function T(_){return vb(gc(i),P=>{if(Ps(P)!=="node_modules"){let v=_4(u,t,void 0,P,p,o);return v||AD(void 0)}})}}function T4(e,t,...i){e.traceEnabled&&ha(e.host,t,...i)}function gr(e){return e.kind===269}function ii(e){return e.kind===286}function cn(e){return e.kind===89}function TL(e){return e.kind===258}function du(e){return e.kind===242}function Ns(e){return e.kind===169}function Rs(e){return e.kind===236}function ao(e){return e.kind===272}function OD(e){return e.kind===252}function b4(e){return e.kind===273}function Mg(e){return e.kind===178}function dm(e){return e.kind===179}function po(e){return e.kind===237}function RD(e){return e.kind===238}function am(e){return e.kind===188}function xs(e){return e.kind===270}function eu(e){return e.kind===11}function ag(e){return e.kind===13}function Pi(e){return e.kind===16}function Al(e){return e.kind===148}function Qi(e){return e.kind===149}function nu(e){return e.kind===161}function Dh(e){return e.kind===157}function C4(e){return e.kind===159}function Mr(e){return e.kind===176}function _d(e){return e.kind===202}function ec(e){return e.kind===199}function yb(e){return e.kind===247}function FL(e){return e.kind===253}function Ph(e){return e.kind===301}function Pl(e){return e.kind===283}function Vu(e){return e.kind===289}function _S(e){return e.kind===298}function Ys(e){return e.kind===224}function b6(e){return e.kind===241}function pu(e){return e.kind===175}function g2(e){return e.kind===210}function fo(e){return e.kind===266}function Oc(e){return e.kind===152}function IL(e){return e.kind===243}function DS(e){return console.debug("todo - isSpreadAssignment"),!1}function El(e){return e.kind===257}function js(e){return e.kind===281}function Vf(e){return e.kind===261}function yT(e){return e.kind===265}function E4(e){return e.kind===256}function ts(e){return e.kind===147}function ol(e){return e.kind===146}function pm(e){return e.kind===276}function N4(e){return e.kind===225}function yc(e){return!1}function Ka(e){return e.kind===293}function kh(e){return e.kind===165}function Os(e){return e.kind===220}function LL(e){return e.kind===228}function zu(e){return e.kind===174}function Ed(e){return e.kind===166}function Mu(e){return e.kind===163}function Bg(e){return!1}function MD(e){return e.kind===170}function Hu(e){return!1}function xd(e){return e.kind===225||e.kind===217||e.kind===219}function D4(e){return!1}function BD(e){return e.kind===249}function jD(e){return!1}function Nd(e){return e.kind===153}function Ju(e){return e.kind===92||e.kind===93}function P4(e){return!1}function PS(e){return e.kind===154}function k4(e){return e.kind===203}function v4(e){return e.kind===204}function Zf(e){return e.kind===158}function Tg(e){return e.kind===218}function Bu(e){return e.kind===201}function F4(e){return e.kind===200}function AL(e){return e.kind===299}function I4(e){return!1}function L4(e){return e.kind===240}function TT(e){return e.kind===232}function A4(e){return e.kind===113}function JD(e){return e.kind===294}function qh(e){return e.kind===221}function Yy(e){return e.kind===223}function xS(e){return e.kind===239}function jg(e){return e.kind===297}function Fb(e){return e.kind===274}function EN(e){return e.kind===230}function fm(e){return e.kind===167}function NN(e){return e.kind===222}function cT(e){return e.kind===290}function Ib(e){return e.kind===234}function y2(e){return e.kind===208}function Lb(e){return e.kind===168}function wL(e){return e.kind===260}function w4(e){return e.kind===191}function O4(e){return e.kind===192}function OL(e){return e.kind===197}function R4(e){return e.kind===280}function DN(e){return e.kind===196}function M4(e){return e.kind===227}function T2(e){return e.kind===151}function B4(e){return e.kind===254}function h2(e){return e.kind===211}function j4(e){return!1}function J4(e){return e.kind===189}function U4(e){return e.kind===190}function W4(e){return!1}function K4(e){return e.kind===155}function TD(e){return e.kind===287}function V4(e){return e.kind===255}var Z$=eQ();function H4(e,t){Or.mark("beforeBind"),Z$(e,t),Or.mark("afterBind"),Or.measure("Bind","beforeBind","afterBind")}function wl(e,t,i){return I.attachFlowNodeDebugInfo({flags:e,id:0,node:t,antecedent:i})}function eQ(){var e,t,i,o,c,u,p,m,g,S,T,_,P,v,B,y,$,j,ce,me,V,ne,ve,$e=!1,Ie=0,ge,Ae,Qe=wl(1,void 0,void 0),ye=wl(1,void 0,void 0),ae=cr();return Ee;function Ee(F,se){e=F,t=se,Ae=new Set,Ie=0,ge=qo.getSymbolConstructor(),I.attachFlowNodeDebugInfo(Qe),I.attachFlowNodeDebugInfo(ye),e.locals||(Pt?.push(Pt.Phase.Bind,"bindSourceFile",{path:e.path},!0),z(e),Pt?.pop(),e.symbolCount=Ie,e.classifiableNames=Ae,$o(),yr()),e=void 0,t=void 0,i=void 0,o=void 0,c=void 0,u=void 0,p=void 0,m=void 0,g=void 0,S=!1,T=void 0,_=void 0,P=void 0,v=void 0,B=void 0,y=void 0,$=void 0,ce=void 0,me=!1,V=!1,$e=!1,ne=0}function z(F){if(F)if(Bs(F,i),Pt&&(F.tracingPath=e.path),Nt(F),F.kind>145){let se=i;i=F;let rn=rL(F);rn===0?le(F):bn(F,rn),i=se}else{let se=i;F.kind===1&&(i=F),ze(F),i=se}}function ze(F){if(Ms(F))if(mr(F))for(let se of F.jsDoc)z(se);else for(let se of F.jsDoc)Bs(se,F),ep(se,!1)}function te(F){z(F.expression),dl(F.expression)}function le(F){let se=$e;if($e=!1,kr(F)){ue(F),ze(F),$e=se;return}switch(F.kind>=242&&F.kind<=256&&(!t.allowUnreachableCode||F.kind===248)&&(F.flowNode=T),F.kind){case 179:z(F.name),Ft(F.arguments,z);break;case 246:Ze(F);break;case 245:Wn(F);break;case 243:ut(F);break;case 244:Ot(F);break;case 253:oi(F);break;case 248:tn(F);break;case 250:case 251:Cn(F);break;case 256:fi(F);break;case 240:ul(F);break;case 299:Ko(F);break;case 247:te(F);break;case 298:St(F);break;case 288:kn(F);break;case 269:ae(F);break;case 267:ai(F);break;case 237:Un(F);break;case 286:case 281:ct(F);break;case 272:Gt(F);break;case 225:case 217:case 219:gs(F);break;case 228:Ws(F);case 176:{Ft(F.statements),z(F.endOfFileToken);break}case 252:Le(F);break;case 236:Ft(F.statements);break;case 266:lt(F);break;case 149:ir(F);break;case 293:case 290:case 174:case 294:case 291:case 277:case 283:case 295:$e=se;default:ue(F);break}ze(F),$e=se}function bn(F,se){let rn=o,et=c,Br=u;if(se&1?(F.kind!==283&&(c=o),o=u=F,se&32&&(o.locals=Ei(),dt(o))):se&2&&(u=F,se&32&&(u.locals=void 0)),se&4){let Wr=T,Qt=_,Et=P,zr=v,Ji=$,Vo=ce,wa=me,Ga=se&16&&!F.asteriskToken&&!!Yp(F);Ga||(T=wl(2,void 0,void 0),se&152&&(T.node=F)),v=Ga||F.kind===169||F.kind===270?ot():void 0,$=void 0,_=void 0,P=void 0,ce=void 0,me=!1,le(F),F.flags&=-1537,!(T.flags&1)&&se&8&&Qp(F.body)&&(F.flags|=512,me&&(F.flags|=1024),F.endFlowNode=T),F.kind===176&&(F.flags|=ne,F.endFlowNode=T),v&&(Pn(v,T),T=je(v),(F.kind===169||F.kind===270)&&(F.returnFlowNode=T)),Ga||(T=Wr),_=Qt,P=Et,v=zr,$=Ji,ce=Vo,me=wa}else le(F);o=rn,c=et,u=Br}function Ft(F,se=z){F!==void 0&&Ln(F,se)}function ue(F){_o(F,z,Ft)}function gn(F){F.flags|=F.flags&2048?4096:2048}function je(F){let se=F.antecedent;return se?se.length===1?se[0]:F:Qe}function Pn(F,se){!(se.flags&1)&&!Yr(F.antecedent,se)&&((F.antecedent||(F.antecedent=[])).push(se),gn(se))}function Ut(F,se,rn){return se.flags&1?se:rn?sI(rn)&&F&64||J2(rn)&&F&32?Qe:Wo(rn)?(gn(se),wl(F,rn,se)):se:F&32?se:Qe}function kr(F){if(!(T.flags&1))return!1;if(T===Qe&&(Px(F)&&F.kind!==254||F.kind===170)&&(T=ye,!t.allowUnreachableCode)){let rn=f6(t)&&!(F.flags&33554432)&&(!du(F)||!!(zf(F.declarationList)&1)||F.declarationList.declarations.some(et=>!!et.initializer));tQ(F,(et,Br)=>fn(rn,et,Br,N.Unreachable_code_detected))}return!0}function fn(F,se,rn,et){if(!F&&Kx(se))return;let Br=Kx(se)?nc(se):e;re(F,{pos:bg(se,Br),end:rn.end},et,Br)}function re(F,se,rn,et=e){let Br=lu(et,se.pos,se.end-se.pos,rn);F?e.bindDiagnostics.push(Br):e.bindSuggestionDiagnostics=Fr(e.bindSuggestionDiagnostics,{...Br,category:2})}function dt(F){p&&(p.nextContainer=F),p=F}function ot(){return wl(4,void 0,void 0)}function Nt(F){switch(F.kind){case 89:if(F.flags&4096){let Qt=F.parent;for(;Qt;)Qt=Qt.parent;hi(Qt,524288,788968);break}return T&&(Xs(F)||i.kind===175)&&(F.flowNode=T),zn(F);case 176:return Fo();case 179:return jt(F);case 241:return hi(F,524288,788968);case 237:return Xo(F);case 149:return Fe(F);case 169:return nr(F);case 270:case 283:return Bt(F);case 152:case 153:return qe(F);case 174:case 175:return Yn(F,4,0);case 150:return Cr(F,131072,0);case 211:return Zt(F);case 158:case 196:case 202:return Kt(F);case 167:break;case 148:return ms(F);case 272:switch(ds(F)){case 0:break;default:return I.fail("Unknown call expression assignment declaration kind")}return;case 266:if(F.flowNode=T,Xo(F),F.kind!==269)return;case 286:case 281:let rn=F;T&&so(rn)&&(rn.flowNode=T);break;case 163:case 201:case 264:return ar(F);case 239:return hi(F,524288,788968);case 220:if(F.parent.kind===202)return Fe(F);if(F.parent.kind!==201)break;case 227:let et=F,Br=et.isBracketed||et.typeExpression&&et.typeExpression.type.kind===195?16777220:4;return Cr(et,Br,0);case 225:case 217:case 219:return(m||(m=[])).push(F);case 228:return(g||(g=[])).push(F);case 218:return z(F.typeExpression);case 269:switch(ds(F)){case 5:let Qt=F.left.expression;I.fail("implement me - specialkind binary expression");break;case 0:break;default:I.fail("Unknown binary expression special property assignment kind")}return}}function Bt(F){T&&(F.flowNode=T);let se=F.name?F.name.text:"__function";return No(F,16,se)}function Zt(F){ue(F);let se=oT(F);se&&se.kind!==154&&De(se.symbol,se,32)}function Kt(F){let se=qi(131072,Vr(F));De(se,F,131072);let rn=qi(2048,"__type");De(rn,F,2048),rn.members=Ei(),rn.members.set(se.name,se)}function ar(F){return No(F,2048,"__type")}function hn(F,se=o){if(cn(F))return nQ(se,F.text);{let rn=hn(F.expression);return rn&&rn.exports&&rn.exports.get(Cg(F))}}function er(F,se,rn,et){Ti(se,void 0,rn)}function Ti(F,se,rn){return!1}function qe(F){let se=4,rn=0;return Yn(F,se|0,rn)}function Yn(F,se,rn){return T&&sD(F)&&(F.flowNode=T),db(F)?No(F,se,"__computed"):Cr(F,se,rn)}function zn(F){if(!e.parseDiagnostics.length&&!(F.flags&33554432)&&!(F.flags&16777216)&&!$2(F)){let se=Nx(F);if(se===void 0)return;ve&&se>=92&&se<=145&&console.warn("implement me - checkContextualIdentifier")}}function jt(F){let se=o;o=e,Cr(F,268435456,111039),o=se}function nr(F){!e.isDeclarationFile&&F.flags&33554432,T&&(F.flowNode=T);let se=F.body?0:110991;Cr(F,16,110991)}function Vr(F){let se=ti(F);if(se)return em(se)?se.text:void 0;switch(F.kind){case 158:case 151:case 202:return"__call";case 150:return"__index";case 176:return"export=";case 269:if(ds(F)===2)return"export=";I.fail("Unknown binary declaration kind");break;case 196:return"__call";case 149:if(Ns(F.parent)){F.parent.body&&Ve(F,N.Parameter_declaration_expected);break}I.assert(F.parent.kind===196,"Impossible parameter parent kind",()=>`parent is: ${I.formatSyntaxKind(F.parent.kind)}, expected JSDocFunctionType`)}}function qi(F,se){return Ie++,new ge(F,se)}function fe(F,se,rn,et,Br,Wr,Qt){I.assert(Qt||!db(rn));let Et=Qt?"__computed":Vr(rn),zr;if(Et===void 0)zr=qi(0,"__missing");else if(zr=F.get(Et),et&2885600&&Ae.add(Et),!zr)F.set(Et,zr=qi(0,Et)),Wr&&(zr.isReplaceableByMethod=!0);else{if(Wr&&!zr.isReplaceableByMethod)return zr;if(zr.flags&Br){if(zr.isReplaceableByMethod)F.set(Et,zr=qi(0,Et));else if(!(et&3&&zr.flags&67108864)){Fc(rn)&&Bs(rn.name,rn);let Ji=zr.flags&2?N.Cannot_redeclare_block_scoped_variable_0:N.Duplicate_identifier_0,Vo=!0,wa=!1;rr(zr.declarations);let Ga=[],hc=ti(rn)||rn;Ln(zr.declarations,(Hr,Sc)=>{let Oa=ti(Hr)||Hr,jc=Vo?Ve(Oa,Ji,_e(Hr)):Ve(Oa,Ji)});let Ks=Vo?Ve(hc,Ji,_e(rn)):Ve(hc,Ji);e.bindDiagnostics.push(Bo(Ks,...Ga)),zr=qi(0,Et)}}}return De(zr,rn,et),dm(rn)||(zr.parent?I.assert(zr.parent===se,"Existing symbol parent should match new one"):zr.parent=se),zr}function _e(F){return Fc(F)?bs(F.name):I.checkDefined(Vr(F))}function De(F,se,rn){F.flags|=rn,se.symbol=F,F.declarations=Jf(F.declarations,se),rn&1955&&!F.exports&&(F.exports=Ei()),rn&6240&&!F.members&&(F.members=Ei()),F.constEnumOnlyModule&&F.flags&304&&(F.constEnumOnlyModule=!1),rn&111551&&Rx(F,se)}function Ve(F,se,...rn){return Lc(nc(F)||e,F,se,...rn)}function tn(F){z(F.expression),F.kind===248&&(me=!0,v&&Pn(v,T)),T=Qe,V=!0}function Ye(F,se,rn,et){let Br=B,Wr=y;B=rn,y=et,F(se),B=Br,y=Wr}function ee(F,se,rn){Ye(z,F,se,rn),(!F||!pn(F)&&!X(F))&&(Pn(se,Ut(32,T,F)),Pn(rn,Ut(64,T,F)))}function pn(F){return U2(F)}function X(F){for(;;)if(F.kind===289)F=F.expression;else if(F.kind===298&&F.operator===55)F=F.operand;else return eS(F)}function Le(F){z(F.inheritClause)}function oi(F){let se=ot(),rn=ot(),et=ot();ee(F.expression,se,rn),T=je(se),z(F.thenStatement),Pn(et,T),T=je(rn),z(F.elseStatement),Pn(et,T),T=je(et)}function hi(F,se,rn){switch(u.kind){case 176:let et=fe(e.locals,void 0,F,se,rn);et.exportSymbol=fe(e.symbol.members,o.symbol,F,se,rn),F.localSymbol=et;break;default:I.assertNode(u,Zc),u.locals||(u.locals=Ei(),dt(u)),fe(u.locals,void 0,F,se,rn)}}function Cr(F,se,rn){switch(o.kind){case 176:return qa(F,se,rn);case 163:case 201:case 293:return fe(o.symbol.members,o.symbol,F,se,rn);case 158:case 151:case 202:case 150:case 154:case 156:case 169:case 270:case 283:case 241:case 196:case 239:case 264:return o.locals&&I.assertNode(o,Zc),fe(o.locals,void 0,F,se,rn)}}function Sn(F){F.flags&33554432?F.flags|=128:F.flags&=-129}function Fo(){Sn(e),Gr();let F=e.symbol;fe(e.symbol.exports,e.symbol,e,4,-1),e.symbol=F}function Gr(){let F=nf(om(e.fileName,t)??e.fileName);No(e,544,`"${F}"`)}function No(F,se,rn){let et=qi(se,rn);return se&106508&&(et.parent=o.symbol),De(et,F,se),et}function Oo(F){if(F.kind===170)hi(F,32,899503);else{let rn=F.name?F.name.text:"__class";No(F,32,rn),F.name&&Ae.add(F.name.text)}let{symbol:se}=F}function Xo(F){let se=F.kind===237?F:F.parent.parent;if(wN(F)){if(po(F)&&!F.type&&(!RD(F.parent)||F.parent.declarations.length==1&&(!du(F.parent.parent)||(F.parent.parent.modifiers?.length??0)==0))){let rn=Vr(F);if(I.assertIsDefined(rn,"Expected variable declaration to have a name"),(u&&Zc(u)?u.locals?.get(rn):void 0)&&bd(F)){let Br=we.convertToAssignmentExpression(F);return}}hi(F,2,268547007)}else Ng(F)?Cr(F,1,111551):Cr(F,1,111550)}function qa(F,se,rn){return e.isDefaultLib?fe(e.locals,void 0,F,se,rn):dm(F)||po(F)||Vy(F)&6?fe(e.symbol.members,void 0,F,se,rn):Zo(F,se,rn)}function Zo(F,se,rn){if(se&2097152)return I.assertNode(o,Zc),fe(o.locals,void 0,F,se,rn);{if(!Zc(o)||!o.locals)return fe(o.symbol.exports,o.symbol,F,se,rn);let Br=se&111551?1048576:0,Wr=fe(o.locals,void 0,F,Br,rn);return Wr.exportSymbol=fe(o.symbol.exports,o.symbol,F,se,rn),F.localSymbol=Wr,Wr}}function Fe(F){F.kind===220&&o.kind!==202||(oo(F.name)?No(F,1,"__"+F.parent.parameters.indexOf(F)):Cr(F,1,111551))}function Mn(F){Ft(F,se=>se.kind===169?z(se):void 0),Ft(F,se=>se.kind!==169?z(se):void 0)}function lt(F){z(F.dotDotDotToken),z(F.propertyName),nn(F.initializer),z(F.name)}function ir(F){Ft(F.modifiers),z(F.dotDotDotToken),z(F.type),nn(F.initializer),z(F.name)}function nn(F){if(!F)return;let se=T;if(z(F),se===Qe||se===T)return;let rn=ot();Pn(rn,se),Pn(rn,T),T=je(rn)}function Un(F){ue(F),(F.initializer||Hf(F.parent.parent))&&ht(F)}function ht(F){let se=jg(F)?void 0:F.name;if(oo(se))for(let rn of se.elements)ht(rn);else T=Ur(16,T,F)}function xt(F,se){return gn(F),V=!0,wl(512,se,F)}function Ur(F,se,rn){gn(se),V=!0;let et=wl(F,rn,se);return $&&Pn($,et),et}function ai(F){let se=ot(),rn=ot(),et=ot(),Br=T,Wr=V;V=!1,ee(F.condition,se,rn),T=je(se),z(F.questionToken),z(F.whenTrue),Pn(et,T),T=je(rn),z(F.colonToken),z(F.whenFalse),Pn(et,T),T=V?je(et):Br,V||(V=Wr)}function qt(F,se){let rn=ce;for(;rn&&F.parent.kind===249;)rn.continueTarget=se,rn=rn.next,F=F.parent;return se}function Pe(){return wl(8,void 0,void 0)}function Be(F,se,rn){let et=_,Br=P;_=se,P=rn,z(F),_=et,P=Br}function Ze(F){let se=qt(F,Pe()),rn=ot(),et=ot();Pn(se,T),T=se,ee(F.expression,rn,et),T=je(rn),Be(F.statement,et,se),Pn(se,T),T=je(et)}function Wn(F){let se=Pe(),rn=qt(F,ot()),et=ot();Pn(se,T),T=se,Be(F.statement,et,rn),Pn(rn,T),T=je(rn),ee(F.expression,se,et),T=je(et)}function ut(F){let se=qt(F,Pe()),rn=ot(),et=ot();z(F.initializer),Pn(se,T),T=se,ee(F.condition,rn,et),T=je(rn),Be(F.statement,et,se),z(F.incrementor),Pn(se,T),T=je(et)}function Ot(F){let se=qt(F,Pe()),rn=ot();z(F.expression),Pn(se,T),T=se,Pn(rn,T),z(F.initializer),F.initializer.kind!==238&&Tr(F.initializer),Be(F.statement,rn,se),Pn(se,T),T=je(rn)}function Ir(F){for(let se=ce;se;se=se.next)if(se.name===F)return se}function Lr(F,se,rn){let et=F.kind===250?se:rn;et&&(Pn(et,T),T=Qe,V=!0)}function Cn(F){if(z(F.label),F.label){let se=Ir(F.label.text);se&&(se.referenced=!0,Lr(F,se.breakTarget,se.continueTarget))}else Lr(F,_,P)}function fi(F){let se=ot();z(F.expression);let rn=_,et=j;_=se,j=T,Ft(F.preBlock),z(F.caseBlock),Pn(se,T);let Br=Ln(F.caseBlock.clauses,Wr=>Wr.kind===301);F.possiblyExhaustive=!Br&&!se.antecedent,Br||Pn(se,Gn(j,F,0,0)),_=rn,j=et,T=je(se)}function Gn(F,se,rn,et){return gn(F),wl(128,{switchStatement:se,clauseStart:rn,clauseEnd:et},F)}function so(F){switch(F.kind){case 89:case 284:case 71:return!0;case 286:case 289:return so(F.expression);case 281:return(wc(F.argumentExpression)||Cs(F.argumentExpression))&&so(F.expression);case 269:return F.operatorToken.kind===27&&so(F.right)||Wu(F.operatorToken.kind)&&au(F.left)}return!1}function xo(F){return so(F)}function xa(F){if(F.arguments){for(let se of F.arguments)if(xo(se))return!0}return!!(F.expression.kind===286&&xo(F.expression.expression))}function Wo(F){switch(F.kind){case 89:return!0;case 286:case 281:return xo(F);case 272:return xa(F);case 289:return lf(F)?!1:Wo(F.expression);case 269:return pt(F);case 298:return F.operator===55&&Wo(F.operand)}return!1}function pt(F){switch(F.operatorToken.kind){case 74:case 86:return xo(F.left);case 35:case 36:case 37:case 38:return Io(F.left)||Io(F.right)||ic(F.right,F.left)||ic(F.left,F.right);case 103:return Wo(F.right);case 27:return Wo(F.right)}return!1}function ic(F,se){return!1}function Io(F){switch(F.kind){case 289:return Io(F.expression);case 269:switch(F.operatorToken.kind){case 74:return Io(F.left);case 27:return Io(F.right)}}return xo(F)}function ul(F){let se=F.clauses,rn=sI(F.parent.expression)||Wo(F.parent.expression),et=Qe;for(let Br=0;Br<se.length;Br++){let Wr=Br;for(;!se[Br].statements.length&&Br+1<se.length;)et===Qe&&(T=j),z(se[Br]),Br++;let Qt=ot();Pn(Qt,rn?Gn(j,F.parent,Wr,Br+1):j),Pn(Qt,et),T=je(Qt);let Et=se[Br];z(Et),et=T,!(T.flags&1)&&Br!==se.length-1&&t.noFallthroughCasesInSwitch&&(Et.fallthroughFlowNode=T)}}function Ko(F){let se=T;T=j,z(F.expression),T=se,Ft(F.statements)}function St(F){if(F.operator===55){let se=B;B=y,y=se,ue(F),y=B,B=se}else ue(F),(F.operator===47||F.operator===48)&&Tr(F.operand)}function kn(F){ue(F),(F.operator===47||F.operator===48)&&Tr(F.operand)}function Tr(F){if(so(F))T=Ur(16,T,F);else if(F.kind===290)for(let se of F.elements)sr(se);else if(F.kind===291){for(let se of F.elements)if(!jg(se)&&se.elements)for(let rn of se.elements)sr(se)}else if(F.kind===293)for(let se of F.properties)se.kind===174?sr(se.initializer):se.kind===175&&Tr(se.name)}function sr(F){F.kind===269&&F.operatorToken.kind===74?Tr(F.left):Tr(F)}function Bc(F){let se=F.parent;switch(se.kind){case 253:case 246:case 245:return se.expression===F;case 243:case 267:return se.condition===F}return!1}function Tu(F){for(;Vu(F.parent)||_S(F.parent)&&F.parent.operator===55;)F=F.parent;return!Bc(F)&&!X(F.parent)}function cr(){return fT(F,se,rn,et,Br,void 0);function F(Qt,Et){if(Et){Et.stackIndex++,Bs(Qt,i);let Ji=ve;Nt(Qt);let Vo=i;i=Qt,Et.skip=!1,Et.inStrictModeStack[Et.stackIndex]=Ji,Et.parentStack[Et.stackIndex]=Vo}else Et={stackIndex:0,skip:!1,inStrictModeStack:[void 0],parentStack:[void 0]};let zr=Qt.operatorToken.kind;if(cI(zr)||jx(zr)){if(Tu(Qt)){let Ji=ot(),Vo=T,wa=V;V=!1,vr(Qt,Ji,Ji),T=V?je(Ji):Vo,V||(V=wa)}else vr(Qt,B,y);Et.skip=!0}return Et}function se(Qt,Et,zr){if(!Et.skip){let Ji=Wr(Qt);return zr.operatorToken.kind===27&&dl(Qt),Ji}}function rn(Qt,Et,zr){Et.skip||z(Qt)}function et(Qt,Et,zr){if(!Et.skip){let Ji=Wr(Qt);return zr.operatorToken.kind===27&&dl(Qt),Ji}}function Br(Qt,Et){if(!Et.skip){let Vo=Qt.operatorToken.kind;if(Wu(Vo)&&!Ku(Qt)&&(Tr(Qt.left),Vo===74&&Qt.left.kind===281)){let wa=Qt.left;Io(wa.expression)&&(T=Ur(256,T,Qt))}}let zr=Et.inStrictModeStack[Et.stackIndex],Ji=Et.parentStack[Et.stackIndex];zr!==void 0&&(ve=zr),Ji!==void 0&&(i=Ji),Et.skip=!1,Et.stackIndex--}function Wr(Qt){if(Qt&&gr(Qt))return Qt;z(Qt)}}function dl(F){if(F.kind===272){let se=F;se.expression.kind!==71&&Qh(se.expression)&&!Xi(se)&&(T=xt(T,se))}}function Xi(F){return cn(F.expression)&&F.expression.text===(e.languageVariant===1?"error":"raise_error")}function vr(F,se,rn){let et=ot();F.operatorToken.kind===58?ee(F.left,et,rn):ee(F.left,se,et),T=je(et),z(F.operatorToken),jx(F.operatorToken.kind)?(Ye(z,F.right,se,rn),Tr(F.left),Pn(se,Ut(32,T,F)),Pn(rn,Ut(64,T,F))):ee(F.right,se,rn)}function ct(F){ue(F)}function li(F){let se=It(F,rn=>rn.parent&&Lb(rn.parent)&&rn.parent.extendsType===rn);return se&&se.parent}function yr(){if(!g)return;let F=o,se=p,rn=u,et=i,Br=T;for(let Wr of g){let Qt=Wr.parent.parent;if(o=cb(Qt)||e,u=Dg(Qt)||e,T=wl(2,void 0,void 0),i=Wr,ti(Wr)){i=Wr.parent;let zr=e;I.assertNode(zr,Zc),zr.locals||(zr.locals=Ei(),dt(zr));let Ji=zr.locals.get("__varDocTags")??qi(3,"__varDocTags");Ji.members??(Ji.members=Ei()),zr.locals.has("__varDocTags")||zr.locals.set("__varDocTags",Ji),fe(Ji.members,e.symbol,Wr,2,268547007)}o=F,p=se,u=rn,i=et,T=Br}}function $o(){if(!m)return;let F=o,se=p,rn=u,et=i,Br=T;for(let Wr of m){let Qt=Wr.parent.parent;o=cb(Qt)||e,u=Dg(Qt)||e,T=wl(2,void 0,void 0),i=Wr,z(Wr.typeExpression);let Et=ti(Wr);!Wr.fullName&&Et&&pI(Et.parent)||(!Wr.fullName||Wr.fullName.kind===89?(i=Wr.parent,hi(Wr,524288,788968)):z(Wr.fullName))}o=F,p=se,u=rn,i=et,T=Br}function ms(F){if(Ys(F.parent)){let se=Wx(F.parent);se?(I.assertNode(se,Zc),se.locals??(se.locals=Ei()),fe(se.locals,void 0,F,262144,526824)):Cr(F,262144,526824)}else if(F.parent.kind===259){let se=li(F.parent);se?(I.assertNode(se,Zc),se.locals??(se.locals=Ei()),fe(se.locals,void 0,F,262144,526824)):No(F,262144,Vr(F))}else Cr(F,262144,526824)}function gs(F){z(F.tagName),F.fullName&&(Bs(F.fullName,F),ep(F.fullName,!1)),typeof F.comment!="string"&&Ft(F.comment)}function Ws(F){z(F.tagName),z(F.typeExpression),F.name&&(Bs(F.name,F),ep(F.name,!1)),typeof F.comment!="string"&&Ft(F.comment)}function Gt(F){let se=vo(F.expression);if(se.kind===270||se.kind===283?(Ft(F.arguments),z(F.expression)):(ue(F),F.expression.kind===71?T=xt(T,F):Xi(F)&&(T=Qe,V=!0)),F.expression.kind===286){let rn=F.expression}}}function rL(e){switch(e.kind){case 274:case 170:case 293:case 163:case 201:return 1;case 239:case 241:case 264:case 150:return 33;case 176:return 37;case 169:return 45;case 151:case 202:case 196:case 158:return 45;case 270:case 283:case 179:return 61;case 152:return e.initializer?4:0;case 243:case 244:case 240:return 34;case 276:return 33;case 236:return ki(e.parent)||V4(e.parent)?0:34}return 0}function nQ(e,t){let i=So(e,Zc)?.locals?.get(t);if(i)return i.exportSymbol??i;if(qd(e))return e.symbol?.exports?.get(t)}function tQ(e,t){if(Hp(e)&&z4(e)&&Rs(e.parent)){let{statements:i}=e.parent,o=m6(i,e);NM(o,z4,(c,u)=>t(o[c],o[u-1]))}else t(e,e)}function z4(e){return!Ns(e)&&!rQ(e)&&!j4(e)&&!(du(e)&&!(zf(e)&1)&&e.declarationList.declarations.some(t=>!t.initializer))}function rQ(e){switch(e.kind){case 155:case 239:return!0;default:return!1}}var q4=1,G4=1,$4=1,Q4=1,cQ="(anonymous)";var lQ=new Map(Object.entries({Uppercase:0,Lowercase:1,Capitalize:2,Uncapitalize:3,NoInfer:4}));function rj(e){var t=[],i=n=>{t.push(n)},o,c,u=qo.getSymbolConstructor(),p=qo.getTypeConstructor(),m=qo.getSignatureConstructor(),g=0,S=0,T=0,_=0,P=0,v=0,B,y,$=!1,j,ce=Za(e.useCaseSensitiveFileNames()),me,V=Ei(),ne=[1],ve=[],$e=[],Ie=[],ge=0,Ae=!1,Qe=e.getCompilerOptions(),ye=il(Qe),ae=e.getDriverType(),Ee=Qe.exactOptionalPropertyTypes,z=!1,ze=!1,te=mD(Qe,"strictFunctionTypes"),le=mD(Qe,"strictObjectTypes"),bn=MK(),Ft=g5(),ue=D5(),gn=cj(Qe,{isEntityNameVisible:S5,isExpandoFunctionDeclaration:h5,requiresAddingImplicitUndefined:$w,isUndefinedIdentifierExpression(n){return I.assert(Xp(n)),qc(n)===Bt},isDefinitelyReferenceToGlobalSymbolObject:_5}),je=!1,Pn=!1,Ut,kr=new Map,fn=new Map,re=0,dt,ot=VB({evaluateElementAccessExpression:A5,evaluateEntityNameExpression:eO}),Nt=Ei(),Bt=to(4,"undefined");Bt.declarations=[];var Zt=to(1536,"globalThis",8);Zt.exports=Nt,Zt.declarations=[],Nt.set(Zt.name,Zt);var Kt=to(4,"arguments"),ar=to(4,"require"),hn,er,Ti=0,qe,Yn=0,zn=Jx(),jt=Jx(),nr=new Map,Vr=0,qi=10,fe=[],_e=[],De=[],Ve=[],tn=[],Ye=[],ee=[],pn=[],X=[],Le=[],oi=[],hi=[],Cr=[],Sn=[],Fo=[],Gr=[],No=[],Oo=[],Xo=new Map,qa=[],Zo=new Map,Fe=0,Mn=0,lt=0,ir=!1,nn=0,Un,ht,xt,Ur=[],ai=[],qt=[],Pe=0,Be=[],Ze=[],Wn=[],ut=0,Ot=new Set,Ir=new Map,Lr=dI({compilerOptions:Qe,requireSymbol:ar,argumentsSymbol:Kt,globals:Nt,getSymbolOfDeclaration:An,error:on,getRequiresScopeChangeCache:Em,setRequiresScopeChangeCache:a_,lookup:OT,onPropertyWithInvalidInitializer:J8,onFailedToResolveSymbol:B5,onSuccessfullyResolvedSymbol:J5}),Cn=dI({compilerOptions:Qe,requireSymbol:ar,argumentsSymbol:Kt,globals:Nt,getSymbolOfDeclaration:An,error:on,getRequiresScopeChangeCache:Em,setRequiresScopeChangeCache:a_,lookup:R5});let fi={getTypeOfSymbol:vt,getNodeCount:()=>Yc(e.getSourceFiles(),(n,r)=>n+r.nodeCount,0),getIdentifierCount:()=>Yc(e.getSourceFiles(),(n,r)=>n+r.identifierCount,0),getSymbolCount:()=>Yc(e.getSourceFiles(),(n,r)=>n+r.symbolCount,S),getTypeCount:()=>g,getInstantiationCount:()=>T,getStringType:()=>sr,getRelationCacheSizes:()=>({assignable:vs.size,identity:fa.size,subtype:Uc.size,strictSubtype:Ts.size}),signatureToString:oh,getDiagnostics:o_,getAliasedSymbol:hl,runWithCurrentFile:hs,getSymbolAtLocation:n=>{let r=io(n);return hs(r,()=>r?qc(r,!0):void 0)},getSignatureFromDeclaration:n=>{let r=io(n,ki);return hs(r,()=>r?Mi(r):void 0)},evaluate:ot,typeToTypeNode:ue.typeToTypeNode,getAugmentedPropertiesOfType:bk,getPropertiesOfType:ya,getUnionType:st,getWidenedType:Nc,symbolToString:Li,getRootSymbols:lo,getEmitResolver:Vs,getTypeFromTypeNode:wt,getPropertyOfType:bo,getMergedSymbol:at,getAllPossiblePropertiesOfTypes:OW,isArrayLikeType:Mf,isNullableType:KR,getNullableType:VR,getNonNullableType:yC,getNonOptionalType:bf,getIndexTypeOfType:(n,r)=>Nu(n,r===0?sr:Et),isTypeInvalidDueToUnionDiscriminant:pC,typeHasCallOrConstructSignatures:Wv,getReturnTypeOfSignature:Ii,getTypeOfPropertyAccessExpr:Ce,getContextualType:(n,r)=>{let a=io(n,Xs);if(a)return hs(a,()=>r&4?ZR(a,()=>ml(a,r)):ml(a,r))},getSymbolsInScope:(n,r)=>{let a=io(n);return hs(a,()=>a?C(a,r):[])},getTypeOfSymbolAtLocation:(n,r)=>{let a=io(r);return hs(a,()=>a?de(n,a):kn)},isDeclarationVisible:G,getResolvedSignature:(n,r,a)=>FE(n,r,a,0),getShorthandAssignmentValueSymbol:n=>{let r=io(n);return hs(r,()=>r?Qz(r):void 0)},getContextualTypeForArgumentAtIndex:(n,r)=>{let a=io(n,qf);return hs(a,()=>a&&m1(a,r))},isUnknownSymbol:n=>n===eo,isUndefinedSymbol:n=>n===Bt,getTypeAtLocation:n=>{let r=io(n);return hs(r,()=>r?hs(r,()=>Zn(r)):kn)},getCandidateSignaturesForStringLiteralCompletions:ZV,runWithCancellationToken:(n,r)=>{try{return o=n,r(fi)}finally{o=void 0}},writeType:(n,r,a,s)=>Xn(n,io(r),a,s),writeSymbol:(n,r,a,s,l)=>Li(n,io(r),a,s,l),writeSignature:(n,r,a,s,l)=>oh(n,io(r),a,s,l),symbolToTypeParameterDeclarations:ue.symbolToTypeParameterDeclarations,tryGetThisTypeAt:(n,r,a)=>{let s=io(n);return hs(s,()=>s&&oy(s,r,a))},getBaseConstraintOfType:na,getDefaultFromTypeParameter:n=>n&&n.flags&262144?kf(n):void 0,getSignaturesOfType:Bi,getGlobalDiagnostics:iy,getFullyQualifiedName:aF,getAccessibleSymbolChain:U_,isValidPropertyAccessForCompletions:(n,r,a)=>{let s=io(n,ii);return hs(s,()=>!!s&&HO(s,r,a))},isArgumentsSymbol:n=>n===Kt,resolveExternalModuleSymbol:_v,resolveName(n,r,a,s){return Lr(r,n,a,void 0,!1,s)},resolveBaseTypesOfClass:r_,getExportsOfModule:H,resolveExternalModuleName:n=>{let r=io(n,Xs);return hs(r,()=>{let a=Ar(r,64);return r&&Jm(r,r,a,!0)})},getContextualTypeForObjectLiteralElement:n=>{console.debug("todo - getContextualTypeForObjectLiteralElement")},getExpandedParameters:Hw,getLocalTypeParametersOfClassOrInterfaceOrTypeAlias:_f,getResolvedSignatureForSignatureHelp:(n,r,a)=>bF(n,()=>FE(n,r,a,16)),getTypePredicateOfSignature:qs,hasEffectiveRestParameter:Du,isOptionalParameter:n=>{let r=io(n,Qi);return hs(r,()=>r?Tv(r):!1)},symbolToParameterDeclaration:ue.symbolToParameterDeclaration,typeParameterToDeclaration:ue.typeParameterToDeclaration,writeTypePredicate:(n,r,a,s)=>(console.log("todo - writeTypePredicate"),""),createSymbol:to,getSuggestionDiagnostics:(n,r)=>{let a=io(n,Mr)||I.fail("Could not determine parsed source file.");if(hS(a,Qe,e))return xe;let s;try{return o=r,uv(a),I.assert(!!(_t(a).flags&1)),s=Po(s,jt.getDiagnostics(a.fileName)),bR(yw(a),(l,d,f)=>{!Kx(l)&&!iS(l)&&!gw(d,!!(l.flags&33554432))&&(s||(s=[])).push({...f,category:2})}),s||xe}finally{o=void 0}}};var Gn=He(131072,"never",void 0,"unique literal"),so=A_(n=>n.flags&262144?Gn:n,()=>"(unique literal mapper)"),xo=new Map,xa=new Map,Wo=new Map,pt=He(1,"mixed",void 0,"mixed"),ic=pt,Io=He(1,"mixed",262144,"auto"),ul=He(524288,"object",262144,"object"),Ko=He(1,"any",void 0,"wildcard"),St=He(1,"any",void 0,"blocked string"),kn=He(1,"error"),Tr=He(131072,"never",262144,"silent"),sr=He(4,"string"),Bc=He(4096,"bytes"),Tu=He(524288,"closure",262144,"closure"),cr=He(524288,"lwobject",262144,"lwobject"),dl=z?se:He(65536,"null",65536,"widening"),Xi=He(8,"int"),vr=He(8,"float"),ct=He(131072,"never"),li=He(32768,"undefined",void 0,"missing"),yr=He(2,"unknown"),$o=He(131072,"never",void 0,"implicit"),ms=He(1,"unresolved"),gs=He(1,"any",65536,"non-inferrable"),Ws=He(1,"intrinsic"),Gt=He(32768,"undefined"),F=z?Gt:He(32768,"undefined",65536,"widening"),se=He(65536,"null"),rn=He(67108864,"object"),et=He(16384,"void"),Br=st([sr,Xi]),Wr,Qt=st([sr,Xi,vr]),Et=st([Xi,vr]),zr=new Map,Ji=new Map,Vo=new Map,wa=Gt,Ga=He(131072,"never",void 0,"unreachable"),hc=A_(n=>n.flags&262144?C7(n):n,()=>"(restrictive mapper)"),Ks=A_(n=>n.flags&262144?Ko:n,()=>"(permissive mapper)"),Hr=to(2048,"__type");Hr.members=Ei();var Sc=Gs(Hr,V,xe,xe,xe),Oa=Gs(void 0,V,xe,xe,xe),jc=z?st([Gt,se,Oa]):yr,is=Gs(void 0,V,xe,xe,xe);is.instantiations=new Map;var $a=He(256,"0",void 0,"fresh"),ln=xc(0),ba=He(256,"1",void 0,"fresh"),Kn=xc(1);ba.regularType=Kn,ba.freshType=ba,Kn.regularType=Kn,Kn.freshType=ba,$a.regularType=ln,$a.freshType=$a,ln.regularType=ln,ln.freshType=$a;var Fi=st([ln,Kn]),Ca=jl(""),b=xc(0),E,O,W,he,be,vn,qr,Lt,pr,gt,Yt,ui,xi,Nr,jr,go=Gs(void 0,V,xe,xe,xe),Ri=ZT(1,"<<unresolved>>",0,pt),$r=cd(void 0,void 0,void 0,xe,pt,void 0,0,0),oc=cd(void 0,void 0,void 0,xe,kn,void 0,0,0),Qa=cd(void 0,void 0,void 0,xe,pt,void 0,0,0),hu=cd(void 0,void 0,void 0,xe,Tr,void 0,0,0),co=Op(Et,sr,!0),Yu=new Map,pp=new Map,Ol=new Set,ys=Gs(void 0,V,xe,xe,xe),eo=to(4,"unknown"),mf=new Map,gf=new Map,_u=zc(),xu=zc();xu.constraint=_u;var fp=zc(),Rl=zc(),_c=zc();_c.constraint=Rl;var Ui=to(0,"__resolving__"),Jc=Gs(void 0,V,xe,xe,xe),ys=Gs(void 0,V,xe,xe,xe),ea=Gs(void 0,V,xe,xe,xe),Xu=Gs(void 0,V,xe,xe,xe),Uc=new Map,Ts=new Map,vs=new Map,pa=new Map,fa=new Map,Su=A_(n=>(j&&(n===_u||n===xu||n===fp)&&j(!0),n),()=>"(unmeasurable reporter)"),Zu=A_(n=>(j&&(n===_u||n===xu||n===fp)&&j(!1),n),()=>"(unreliable reporter)"),_u=zc(),xu=zc();xu.constraint=_u;var fp=zc();return ny(),fi;function ny(){for(let r of e.getSourceFiles())r.isDefaultLib,H4(r,Qe);for(let r of e.getSourceFiles())if(r.isDefaultLib){Cu(Nt,r.locals);let a=to(1920,"efun::",8);a.members=r.locals,Nt.set("efun::",a)}let n=e.getSourceFile(Qe.sefunFile);n&&hm(n,Nt),ry(),On(Bt).type=F,On(Kt).type=pt,On(eo).type=kn,On(Zt).type=$l(16,Zt),W=Wc("__LS__Array",0,!0),he=Wc("__LS__Mapping",0,!0),E=Wc("__LS__Object",0,!0),O=Wc("__LS__Function",0,!0),vn=Pn&&Wc("__LS__CallableFunction",0,!0)||O,qr=Pn&&Wc("__LS__NewableFunction",0,!0)||O,Lt=Wc("__LS__String",0,!0),pr=Wc("__LS__Int",0,!0),Yt=Wc("__LS__Closure",0,!0),xi=aa(pt),ui=aa(Io),ui===go&&(ui=Gs(void 0,V,xe,xe,xe)),be=Sm("__LS__ReadonlyArray",1),Nr=be?mp(be,[pt]):xi,Wr=st([Et,W])}function hs(n,r){let a=!0;me||(a=!1,me=Dt(n));let s=r();return a||(me=void 0),s}function hm(n,r){let a=new Set,s=qc(n,!0),d=[vt(s,64)];for(;d.length;){let f=d.shift();if(a.has(f.symbol.name))continue;a.add(f.symbol.name);let h=Fd(f);f.members.forEach((D,w)=>{r.set(w,D)}),d.push(...h)}}function Wc(n,r,a){let s=bu(n,3,a?N.Cannot_find_global_type_0:void 0);if(!s)return console.warn("Global symbol not found: "+n),kn;let l=to(8388640,n);l.valueDeclaration=s.valueDeclaration,l.members=Ei();let d=n,f=to(8388612,d,8);return f.valueDeclaration=s.valueDeclaration,l.members.set(d,f),gp(l,r)}function aa(n,r){return mp(r?be:W,[n])}function ty(n,r,a){return I.assert(a!==!0,"readonly not supported"),mp(he,[n,r])}function ry(){let n=Bt.name,r=Nt.get(n);r?Ln(r.declarations,a=>{sb(a)||zn.add(yi(a,N.Declaration_name_conflicts_with_built_in_global_identifier_0,n))}):Nt.set(n,Bt)}function Sm(n,r=0){let a=bu(n,788968,void 0);return a&&gp(a,r)}function mp(n,r){return n!==is?vm(n,r):go}function ed(n,r,a=3){return bu(n,a,r?N.Cannot_find_global_type_0:void 0)}function bu(n,r,a){return Lr(void 0,n,r,a,!1,!1)}function gp(n,r){function a(l){let d=l.declarations;if(d)for(let f of d)switch(f.kind){case 170:case 155:return f}}if(!n)return r?is:go;if(n.flags&19)return t9(n);let s=Ma(n);return s.flags&524288?rr(s.typeParameters)!==r?(on(a(n),N.Global_type_0_must_have_1_type_parameter_s,us(n),r),r?is:go):s:(on(a(n),N.Global_type_0_must_be_a_class_or_interface_type,us(n)),r?is:go)}function Cu(n,r,a=!1){r.forEach((s,l)=>{let d=n.get(l);n.set(l,d?ke(d,s,a):at(s))})}function iy(){return dv(),zn.getGlobalDiagnostics()}function _m(n){let r=!1;for(;n.parent&&!ki(n.parent);){if(Qi(n.parent)&&(r||n.parent.initializer===n))return!0;fo(n.parent)&&n.parent.initializer===n&&(r=!0),n=n.parent}return!1}function Kc(n){if(n.thisParameter)return vt(n.thisParameter)}function yp(n){return Kc(Mi(n))}function yf(n){let r=xN(n);if(r&&r.typeExpression)return wt(r.typeExpression);let a=rd(n);if(a)return Kc(a)}function oy(n,r=!0,a=TS(n,!1,!1)){let s=mr(n);if(ki(a)&&!_m(n)){let l=yp(a)||s&&yf(a);if(l)return Rf(n,l)}if(ia(a.parent)){let l=An(a.parent),d=Ma(l).thisType;return Rf(n,d)}Mr(a)&&console.debug("todo - tryGetThisTypeAt")}function Ea(n){let r=0;return n&2&&(r|=268547007),n&1&&(r|=111550),n&4&&(r|=0),n&8&&(r|=900095),n&16&&(r|=110991),n&32&&(r|=899503),n&64&&(r|=788872),n&256&&(r|=899327),n&128&&(r|=899967),n&512&&(r|=110735),n&8192&&(r|=103359),n&32768&&(r|=46015),n&65536&&(r|=78783),n&262144&&(r|=526824),n&524288&&(r|=788968),n&2097152&&(r|=2097152),r}function k(n,r){r.mergeId||(r.mergeId=$4,$4++),fe[r.mergeId]=n}function Q(n){let r=to(n.flags,n.name);return r.declarations=n.declarations?n.declarations.slice():[],r.parent=n.parent,n.valueDeclaration&&(r.valueDeclaration=n.valueDeclaration),n.constEnumOnlyModule&&(r.constEnumOnlyModule=!0),n.members&&(r.members=new Map(n.members)),n.exports&&(r.exports=new Map(n.exports)),k(r,n),r}function ke(n,r,a=!1){if(!(n.flags&Ea(r.flags))||(r.flags|n.flags)&67108864){if(r===n)return n;if(!(n.flags&33554432)){let d=Mm(n);if(d===eo)return r;if(!(d.flags&Ea(r.flags))||(r.flags|d.flags)&67108864)n=Q(d);else return s(n,r),r}r.flags&512&&n.flags&512&&n.constEnumOnlyModule&&!r.constEnumOnlyModule&&(n.constEnumOnlyModule=!1),n.flags|=r.flags,r.valueDeclaration&&Rx(n,r.valueDeclaration),Po(n.declarations,r.declarations),r.members&&(n.members||(n.members=Ei()),Cu(n.members,r.members,a)),r.exports&&(n.exports||(n.exports=Ei()),Cu(n.exports,r.exports,a)),a||k(n,r)}else s(n,r);return n;function s(d,f){let h=!!(d.flags&384||f.flags&384),D=!!(d.flags&2||f.flags&2),w=D?N.Cannot_redeclare_block_scoped_variable_0:N.Duplicate_identifier_0,J=f.declarations&&Dt(f.declarations[0]),q=d.declarations&&Dt(d.declarations[0]),Z=!1,ie=!1,Ue=Li(f);if(J&&q&&Ut&&!h&&J!==q){let Xe=CS(J.path,q.path)===-1?J:q,Dn=Xe===J?q:J,mn=mx(Ut,`${Xe.path}|${Dn.path}`,()=>({firstFile:Xe,secondFile:Dn,conflictingSymbols:new Map})),wn=mx(mn.conflictingSymbols,Ue,()=>({isBlockScoped:D,firstFileLocations:[],secondFileLocations:[]}));Z||l(wn.firstFileLocations,f),ie||l(wn.secondFileLocations,d)}else Z||tE(f,w,Ue,d),ie||tE(d,w,Ue,f)}function l(d,f){if(f.declarations)for(let h of f.declarations)bl(d,h)}}function He(n,r,a=0,s){hr(r,s);let l=bt(n);return l.intrinsicName=r,l.debugIntrinsicName=s,l.objectFlags=a|524288|2097152|33554432|16777216,l}function bt(n){let r=new p(fi,n);return g++,r.id=g,Pt?.recordType(r),r}function hr(n,r){let a=`${n},${r??""}`;Ot.has(a)&&I.fail(`Duplicate intrinsic type name ${n}${r?` (${r})`:""}; you may need to pass a name to createIntrinsicType.`),Ot.add(a)}function at(n){let r;return n&&n.mergeId&&(r=fe[n.mergeId])?r:n}function lr(n){return SI(n)&&(n=n.parent),ta(ja(n))}function Wt(n){let r=[];return n.forEach((a,s)=>{zw(s)||r.push(a)}),r}function C(n,r){let a=Ei(),s=!1;return l(),a.delete("this"),Wt(a);function l(){for(;n;){switch(Zc(n)&&n.locals&&!wB(n)&&f(n.locals,r),n.kind){case 176:f(An(n).exports,r&-1);break;case 274:f(ud(An(n)),r&788968);break;case 270:n.name&&d(n.symbol,r);break}OB(n)&&d(Kt,r),s=!1,n=n.parent}f(Nt,r)}function d(h,D){if(tm(h)&D){let w=h.name;a.has(w)||a.set(w,h)}}function f(h,D){D&&h.forEach(w=>{d(w,D)})}}function H(n){return Wt(jw(n))}function Ce(n){return gC(n.expression,n,64)||Ff(n.expression,192)||kn}function dn(n){return n.kind===89&&sb(n.parent)&&ti(n.parent)===n}function Zn(n){if(Mr(n))return kn;if(of(n))return wt(n);if(Xp(n))return lr(n);if(sb(n)){let r=An(n);return Ma(r)}if(dn(n)){let r=qc(n);return r?Ma(r):kn}if(fo(n))return N_(n,!0,0)||kn;if(Ru(n)){let r=An(n);return r?vt(r):kn}if(Y4(n)){let r=qc(n);return r?vt(r):kn}return oo(n)&&N_(n.parent,!0,0)||kn}function An(n){return at(n.symbol&&Jt(n.symbol))}function Jt(n){if(n.flags&32&&Mr(n.valueDeclaration)){let r=vt(n,64);r.resolvedBaseTypes||r_(r)}if(n.flags&106500&&n.name==="__computed"){let r=On(n);if(!r.lateSymbol&&Tn(n.declarations,Lv)){let a=at(n.parent);ud(a)}return r.lateSymbol||(r.lateSymbol=n)}return n}function On(n){if(n.flags&33554432)return n.links;let r=ji(n);return _e[r]??(_e[r]=new RL)}function Xr(n,r,...a){return n?yi(n,r,...a):cu(r,...a)}function on(n,r,...a){let s=Xr(n,r,...a);return zn.add(s),s}function lo(n){let r=e_(n);return r?Co(r,lo):[n]}function Vs(n,r,a){return a||o_(n,r),Ft}function pl(n,r){return Yl(n,r,vs)?-1:0}function ma(n,r,a=pl){return zO(n,r,a)||hp(n,r)||Tp(n,r)||xm(n,r)||Eu(n,r)}function Tp(n,r){if(Jn(n)&128&&vu(r,Mf))return fr(r.types,a=>!Mf(a))}function xm(n,r){let a=0;if(Bi(n,a).length>0||(a=1,Bi(n,a).length>0))return fr(r.types,l=>Bi(l,a).length>0)}function Eu(n,r){let a;if(!(n.flags&406978492)){let s=0;for(let l of r.types)if(!(l.flags&406978492)){let d=bi([zl(n),zl(l)]);if(d.flags&4194304)return l;if(un(d)||d.flags&1048576){let f=d.flags&1048576?yd(d.types,un):1;f>=s&&(a=l,s=f)}}}return a}function hp(n,r){let a=Jn(n);if(a&20&&r.flags&1048576)return fr(r.types,s=>{if(s.flags&524288){let l=a&Jn(s);if(l&4)return n.target===s.target;if(l&16)return!!n.aliasSymbol&&n.aliasSymbol===s.aliasSymbol}return!1})}function e_(n){if(jo(n)&6)return _i(On(n).containingType.types,r=>bo(r,n.name));if(n.flags&33554432){let{links:{leftSpread:r,rightSpread:a,syntheticOrigin:s}}=n;return r?[r,a]:s?[s]:Fy(Ra(n))}}function Ra(n){let r,a=n;for(;a=On(a).target;)r=a;return r}function bo(n,r,a,s){if(n=Tf(n),ca(n)){let l=Ta(n.resolvedTypeArguments);l.flags&524288&&(n=l)}if(n.flags&524288){let l=ql(n),d=l.members?.get(r);if(d&&pv(d,s))return d;if(a)return;let f=l===Jc?O:l.callSignatures?.length?vn:l.constructSignatures?.length?qr:void 0;if(f){let h=Id(f,r);if(h)return h}return Id(E,r)}if(n.flags&2097152){let l=Do(n,r,!0);return l||(a?void 0:Do(n,r,a))}if(n.flags&1048576)return Do(n,r,a)}function Do(n,r,a){let s=bm(n,r,a);return s&&!(jo(s)&16)?s:void 0}function bm(n,r,a){let s=a?n.propertyCacheWithoutObjectFunctionPropertyAugment?.get(r):n.propertyCache?.get(r);return s||(s=i_(n,r,a),s&&((a?n.propertyCacheWithoutObjectFunctionPropertyAugment||(n.propertyCacheWithoutObjectFunctionPropertyAugment=Ei()):n.propertyCache||(n.propertyCache=Ei())).set(r,s),a&&!(jo(s)&48)&&!n.propertyCache?.get(r)&&(n.propertyCache||(n.propertyCache=Ei())).set(r,s))),s}function na(n){if(n.flags&464781312){let r=jv(n);return r!==ys&&r!==ea?r:void 0}return n.flags&4194304?Qt:void 0}function ac(n,r){if(n===r)return n.resolvedApparentType||(n.resolvedApparentType=Lf(n,r,!0));let a=`I${ra(n)},${ra(r)}`;return gE(a)??yE(a,Lf(n,r,!0))}function Cm(n){return n.resolvedApparentType||(n.resolvedApparentType=cC(n))}function cC(n){let r=n.target??n,a=uE(r);if(a&&!r.declaration.nameType){let s=X_(n),l=as(s)?Cm(s):na(s);if(l&&lc(l,d=>od(d)||lC(d)))return Mt(r,Lm(a,l,n.mapper))}return n}function lC(n){return!!(n.flags&2097152)&&di(n.types,od)}function Na(n){let r=n.flags&465829888?na(n)||yr:n,a=Jn(r);return a&32?Cm(r):a&4&&r!==n?Lf(r,n):r.flags&2097152?ac(r,n):r.flags&402653316?Lt:r.flags&256?pr:r.flags&2048?gt:r.flags&524288&&r.intrinsicName==="closure"?Yt:r.flags&67108864?go:r.flags&4194304?Qt:r.flags&2&&!z?go:r}function n_(n){let r=lb(n.symbol);return r&&ab(r)}function t_(n,r){let a=n.symbol??Wp(r);I.assertIsDefined(a),Ln(r.heritageClauses,f=>HT(f));let s=Bm(a);ld(n,s,xe,xe,xe);let l=Na(n);if(!a?.inherits)return n.resolvedBaseTypes=xe;let d=[l];return kl(a?.inherits,(f,h)=>{Fd(f);let D=Na(f);d.push(D)}),n.resolvedBaseTypes=d}function r_(n){n.resolvedBaseTypes=nI;let r=lb(n.symbol);if(r&&Mr(r))return t_(n,r);let a=Na(Nv(n));if(!(a.flags&2621441))return n.resolvedBaseTypes=xe;let s;if(a.flags&1?s=a:I.fail("todo - resolveBaseTypesOfClass"),zo(s))return n.resolvedBaseTypes=xe;let l=Vc(s);return zT(l)?n===l||iF(l,n)?(on(n.symbol.valueDeclaration,N.Type_0_recursively_references_itself_as_a_base_type,Xn(n,void 0,2)),n.resolvedBaseTypes=xe):(n.resolvedBaseTypes===nI&&(n.members=void 0),n.resolvedBaseTypes=[l]):(console.debug("todo - isValidBaseType"),n.resolvedBaseTypes=xe)}function Fd(n){if(!n.baseTypesResolved){if(kp(n,6)&&(n.resolvedBaseTypes=[],n.symbol?.flags&96&&n.symbol.flags&32&&r_(n),!Pp()&&n.symbol?.declarations))for(let r of n.symbol.declarations);n.baseTypesResolved=!0}return n.resolvedBaseTypes}function i_(n,r,a){let s,l,d,f=n.flags&1048576,h,D=4,w=f?0:8,J=!1;for(let Fn of n.types){let nt=Na(Fn);if(!(zo(nt)||nt.flags&131072)){let ft=bo(nt,r,a),ur=ft?vl(ft):0;if(ft){if(ft.flags&106500&&(h??(h=f?0:16777216),f?h|=ft.flags&16777216:h&=ft.flags),!s)s=ft;else if(ft!==s)if((MT(ft)||ft)===(MT(s)||s)&&uC(s,ft,(yo,zi)=>yo===zi?-1:0)===-1)J=!!s.parent&&!!rr(_f(s.parent));else{l||(l=new Map,l.set(ji(s),s));let yo=ji(ft);l.has(yo)||l.set(yo,ft)}f&&Sf(ft)?w|=8:!f&&!Sf(ft)&&(w&=-9),w|=(ur&6?0:256)|(ur&4?512:0)|(ur&2?1024:0)|(ur&256?2048:0),D=2}else if(f){let _r=!u_(r)&&xp(nt,r);_r?(w|=32|(_r.isReadonly?8:0),d=Fr(d,_r.type)):Bl(nt)&&!(Jn(nt)&2097152)?(w|=32,d=Fr(d,Gt)):w|=16}}}if(!s||f&&(l||w&48)&&w&1536&&!(l&&fC(l.values())))return;if(!l&&!(w&16)&&!d)if(J){let Fn=So(s,tf)?.links,nt=hf(s,Fn?.type);return nt.parent=s.valueDeclaration?.symbol?.parent,nt.links.containingType=n,nt.links.mapper=Fn?.mapper,nt.links.writeType=ay(s),nt}else return s;let q=l?Yo(l.values()):[s],Z,ie,Ue,Xe=[],Dn,mn,wn=!1;for(let Fn of q){mn?Fn.valueDeclaration&&Fn.valueDeclaration!==mn&&(wn=!0):mn=Fn.valueDeclaration,Z=Po(Z,Fn.declarations);let nt=vt(Fn);ie||(ie=nt,Ue=On(Fn).nameType);let ft=ay(Fn);(Dn||ft!==nt)&&(Dn=Fr(Dn||Xe.slice(),ft)),nt!==ie&&(w|=64),Ld(nt)&&(w|=128),nt.flags&131072&&nt!==Gn&&(w|=131072),Xe.push(nt)}Po(Xe,d);let Bn=to(4|(h??0),r,D|w);return Bn.links.containingType=n,!wn&&mn&&(Bn.valueDeclaration=mn,mn.symbol.parent&&(Bn.parent=mn.symbol.parent)),Bn.declarations=Z,Bn.links.nameType=Ue,Xe.length>2?(Bn.links.checkFlags|=65536,Bn.links.deferralParent=n,Bn.links.deferralConstituents=Xe,Bn.links.deferralWriteConstituents=Dn):(Bn.links.type=f?st(Xe):bi(Xe),Dn&&(Bn.links.writeType=f?st(Dn):bi(Dn))),Bn}function Id(n,r){if(n.flags&524288){let s=ql(n).members.get(r);if(s&&pv(s))return s}}function Tf(n){return Vc(Na(Vc(n)))}function o_(n,r,a){try{return o=r,hs(n,()=>HP(n,a))}finally{o=void 0}}function HP(n,r){if(n){dv();let a=zn.getGlobalDiagnostics(),s=a.length;uv(n,r);let l=zn.getDiagnostics(n.fileName),d=Rr(n.statements,Mg);if(Ln(d,h=>{let D=zn.getDiagnostics(h.fileName);if(D.length){let w=yi(h,N.Include_file_0_contains_one_or_more_errors,BI(h));Bo(w,...D),l.push(w)}}),r)return l;let f=zn.getGlobalDiagnostics();if(f===a){if(s===0&&f.length>0)return Kr(f,l)}return l}return Ln(e.getSourceFiles(),a=>uv(a)),zn.getDiagnostics()}function nd(n,r){Pt?.push(Pt.Phase.Check,r?"checkSourceFileNodes":"checkSourceFile",{path:n.path},!0);let a=r?"beforeCheckNodes":"beforeCheck",s=r?"afterCheckNodes":"afterCheck";Or.mark(a),me=n,r?W8(n,r):U8(n),me=void 0,Or.mark(s),Or.measure("Check",a,s),Pt?.pop()}function _t(n){let r=za(n);return De[r]||(De[r]=new ij)}function OT(n,r,a){if(a){let s=at(n.get(r));if(s&&(s.flags&a||s.flags&2097152&&hy(s)&a))return s}}function Em(n){return _t(n).declarationRequiresScopeChange}function a_(n,r){_t(n).declarationRequiresScopeChange=r}function qP(n){return!!(n.flags&33554432)&&xf(n)}function zo(n){return n===kn||!!(n.flags&1&&n.aliasSymbol)}function uC(n,r,a){if(n===r)return-1;let s=vl(n)&6,l=vl(r)&6;if(s!==l)return 0;if(s){if(MT(n)!==MT(r))return 0}else if((n.flags&16777216)!==(r.flags&16777216))return 0;return Sf(n)!==Sf(r)?0:a(vt(n),vt(r))}function dC(n,r){return fr(n,a=>a.keyType===r)}function s_(n){return n.flags&3670016?ql(n).indexInfos??xe:xe}function Da(n){return s_(Tf(n))}function Ml(n,r){return dC(Da(n),r)}function Bl(n){return!!(Jn(n)&128)}function Nu(n,r){return Ml(n,r)?.type}function pC(n,r){return r.properties.some(s=>{let l=s.name&&$m(s.name),d=l&&cf(l)?af(l):void 0,f=d===void 0?void 0:Ec(n,d);return!!f&&Ld(f)&&!Ni(Zn(s),f)})}function Sp(n,r){return Ni(n,r)||r===sr&&Ni(n,Et)||r===Et&&!!(n.flags&128)&&rm(n.value)}function c_(n,r){return Da(n).filter(a=>Sp(r,a.keyType))}function sc(n,r){I.assertIsDefined(n);let a,s,l;for(let d of n)d.keyType===sr?a=d:Sp(r,d.keyType)&&(s?(l||(l=[s])).push(d):s=d);return s||(a&&Sp(r,sr)?a:void 0)}function _p(n,r){return sc(Da(n),r)}function RT(n,r,a,s){let l=J_(n,a);return l.value=r,l.regularType=s||l,l}function xc(n){let r;return zr.get(n)||(zr.set(n,r=RT(256,n)),r)}function jl(n){let r;return Ji.get(n)||(Ji.set(n,r=RT(128,n)),r)}function GP(n){let r;return Vo.get(n)||(Vo.set(n,r=RT(8192,n)),r)}function xp(n,r){return _p(n,jl(r))}function fC(n){let r;for(let a of n){if(!a.declarations)return;if(!r){r=new Set(a.declarations);continue}if(r.forEach(s=>{Yr(a.declarations,s)||r.delete(s)}),r.size===0)return}return r}function sa(n,r){if(n.flags&1048576){let a=n.types,s=Rr(a,r);if(s===a)return n;let l=n.origin,d;if(l&&l.flags&1048576){let f=l.types,h=Rr(f,D=>!!(D.flags&1048576)||r(D));if(f.length-h.length===a.length-s.length){if(h.length===1)return h[0];d=x(1048576,h)}}return BT(s,n.objectFlags&16809984,void 0,void 0,d)}return n.flags&131072||r(n)?n:ct}function mC(n,r){return sa(n,a=>a!==r)}function td(n,r){return n}function ay(n){let r=jo(n);return n.flags&4?td(vt(n),!!(n.flags&16777216)):vt(n)}function hf(n,r){let a=to(n.flags,n.name,jo(n)&8);a.declarations=n.declarations,a.parent=n.parent,a.links.type=r,a.links.target=n,n.valueDeclaration&&(a.valueDeclaration=n.valueDeclaration);let s=On(n).nameType;return s&&(a.links.nameType=s),a}function Sf(n){return!!(jo(n)&8||n.flags&98304&&!(n.flags&65536)||n.flags&8||Tn(n.declarations,jn))}function l_(n){return!!(n.flags&128)}function Ld(n){return n.flags&16?!0:n.flags&1048576?n.flags&1024?!0:di(n.types,un):un(n)}function u_(n){return n.charCodeAt(0)===95&&n.charCodeAt(1)===95&&n.charCodeAt(2)===64}function _f(n){if(!n.declarations)return;let r;for(let a of n.declarations)(a.kind===155||a.kind===170||a.kind===274||Xx(a))&&(r=kk(r,Vh(a)));return r}function MT(n){return jo(n)&1?n.links.target:n}function xf(n){for(let r of n.statements)console.warn("Implement me - grammar check");return!1}function BT(n,r,a,s,l){if(n.length===0)return ct;if(n.length===1)return n[0];let f=(l?l.flags&1048576?`|${Ls(l.types)}`:l.flags&2097152?`&${Ls(l.types)}`:`#${l.type.id}|${Ls(n)}`:Ls(n))+Wm(a,s),h=xa.get(f);return h||(h=bt(1048576),h.objectFlags=r|kt(n,98304),h.types=n,h.origin=l,h.aliasSymbol=a,h.aliasTypeArguments=s,n.length===2&&n[0].flags&512&&n[1].flags&512&&(h.flags|=16,h.intrinsicName="boolean"),xa.set(f,h)),h}function bf(n){return n}function $P(n,r,a){n.name&&Ar(n.name);let s=qn(n.elements||xe,Ar);return s.length===1?s[0]:xi}function d_(n,r,a){let s=n.elements,l=s?.length||0,d=[],f=[],h=[];jk(n);let D=!1;for(let q=0;q<l;q++){let Z=s[q];if(Ee&&Z.kind===297)D=!0,f.push([wa]),h.push(2);else if(!jg(Z)){let ie=ch(Z.name,r,a);d.push(ie),h.push(D?2:1),Ln(Z.elements,(Ue,Xe)=>{let Dn=ch(Ue,r,a);f[Xe]=f[Xe]||[],f[Xe].push(Tl(Dn,!0,D)),h.push(D?2:1)})}}XT();let w=Vc(st(d,2)),J=f.length>1?aa(st(f.map(q=>Vc(st(q,2))))):f.length===1?Vc(st(f[0],2)):z?$o:Io;return QP(ty(w,J,!1))}function Ya(n,r,a){let s=n.elements,l=s.length,d=[],f=[];jk(n);let h=Ku(n),D=!1,w=b_(n,void 0),J=!1,q=!1;for(let Z=0;Z<l;Z++){let ie=s[Z];if(ie.kind===294){let Ue=Ar(ie.expression,r,a);if(Mf(Ue))d.push(Ue),f.push(8);else if(h){let Xe=Nu(Ue,Et)||Nm(65,Ue,Gt,void 0,!1)||yr;d.push(Xe),f.push(4)}else d.push(Jp(33,Ue,Gt,ie.expression)),f.push(4)}else if(Ee&&ie.kind===297)q=!0,d.push(wa),f.push(2);else{let Ue=ch(ie,r,a);if(d.push(Tl(Ue,!0,q)),f.push(q?2:1),J&&r&&r&2&&!(r&4)&&Cc(ie)){let Xe=dy(n);I.assert(Xe),l1(Xe,ie,Ue)}}}return XT(),h?dd(d,f):p_(a||D||J?dd(d,f,D&&!(w&&vu(w,Nz))):aa(d.length?st(Ia(d,(Z,ie)=>f[ie]&8?km(Z,Et)||pt:Z),2):z?$o:F,D))}function p_(n){if(!(Jn(n)&4))return n;let r=n.literalType;return r||(r=n.literalType=f_(n),r.objectFlags|=147456),r}function QP(n){if(!(Jn(n)&4))return n;let r=n.literalType;return r||(r=n.literalType=f_(n),r.objectFlags|=133120),r}function f_(n){let r=J_(n.flags,n.symbol);return r.objectFlags=n.objectFlags,r.target=n.target,r.resolvedTypeArguments=n.resolvedTypeArguments,r}function m_(n,r,a){return M_(n,!1,void 0,Xn(r))}function Nm(n,r,a,s,l){let d=(n&2)!==0;if(r===ct){s&&m_(s,r,d);return}let h=!!0,D=Qe.noUncheckedIndexedAccess&&!!(n&128),w=r,J=!1;if(n&4){if(w.flags&1048576){let ie=r.types,Ue=Rr(ie,Xe=>!(Xe.flags&402653316));Ue!==ie&&(w=st(Ue,2))}else w.flags&402653316&&(w=ct);if(J=w!==r,J&&w.flags&131072)return D?tx(sr):sr}if(!Mf(w)&&!wm(w)){if(s){let ie=!!(n&4)&&!J,[Ue,Xe]=Z(ie,h);M_(s,!1,Ue,Xn(w))}return J?D?tx(sr):sr:void 0}let q=ca(w)&&w.resolvedTypeArguments?Eo(w.resolvedTypeArguments):Nu(w,Et);if(J&&q)return q.flags&402653316&&!Qe.noUncheckedIndexedAccess?sr:st(D?[q,sr,Gt]:[q,sr],2);if(wm(w))return w.resolvedTypeArguments?.length?st(w.resolvedTypeArguments):Io;return n&128?tx(q):q;function Z(ie,Ue){return Ue?ie?[N.Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator,!0]:[N.Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator,!0]:ie?[N.Type_0_is_not_an_array_type_or_a_string_type,!0]:[N.Type_0_is_not_an_array_type,!0]}}function g_(n,r,a){return n.flags&4194304?sy(n,r):Fv(n,n.expression,gC(n.expression,n,r)??Ff(n.expression,r),n.name,r,a)}function gC(n,r,a){if(n.kind===16)return iv(n);if(cn(n))return;{let s=Ar(n,a);if(s.flags&132){let l=n,f=Jm(r||n,l,s);if(f){let h=O_(f,l,!0);if(h&&Mr(h.valueDeclaration))return vt(h)}}}}function sy(n,r){let a=Ar(n.expression),s=jT(a,n.expression);return JT(Fv(n,n.expression,ku(s,n.expression),n.name,r),n,s!==a)}function jT(n,r){return console.debug("todo - getOptionalExpressionType"),n}function JT(n,r,a){return n}function yC(n){return n}function L(n){return It(n,r=>{switch(r.kind){case 237:case 238:return!1;default:return!0}}).parent}function U(n){return qe===n||(qe=n,Yn=Vy(n)),Yn}function G(n){if(n){let a=_t(n);return a.isVisible===void 0&&(a.isVisible=!!r()),a.isVisible}return!1;function r(){switch(n.kind){case 217:case 225:case 219:return!!(n.parent&&n.parent.parent&&n.parent.parent.parent&&Mr(n.parent.parent.parent));case 266:return G(n.parent.parent);case 237:if(oo(n.name)&&!n.name.elements.length)return!1;case 239:case 169:let a=L(n);return!(U(n)&2048)&&!(a.kind!==176&&a.flags&33554432)?!0:G(a);case 152:case 153:if(Qd(n,6))return!1;case 150:case 149:case 163:case 166:case 161:case 157:case 159:case 165:return G(n.parent);case 148:case 176:return!0;default:return!1}}}function de(n,r){if(n=Um(n),r.kind===89&&(SI(r)&&(r=r.parent),Xp(r)&&(!Ku(r)||rS(r)))){let a=ja(r);if(Um(_t(r).resolvedSymbol)===n)return a}return Z2(r)&&rS(r.parent)?ay(n):Re(n)}function Re(n){return td(vt(n),!!(n.flags&16777216))}function un(n){return!!(n.flags&101280)}function jn(n){return ao(n)&&console.warn("Implement me - isReadonlyAssignmentDeclaration"),!1}function tr(n){return n.valueDeclaration?K_(n.valueDeclaration):0}function kt(n,r){let a=0;for(let s of n)(r===void 0||!(s.flags&r))&&(a|=Jn(s));return a&458752}function Si(n){return new p(fi,n)}function x(n,r){let a=Si(n);return a.types=r,a}function yt(n){if(n){let r=B;B=n,_=0,Sr(n),B=r}}function Sr(n){if(lw(n)&8388608)return;Qy(n)&&Ln(n.jsDoc,({comment:a,tags:s})=>{j1(a),Ln(s,l=>{j1(l.comment),mr(n)&&yt(l)})});let r=n.kind;if(o)switch(r){case 169:o.throwIfCancellationRequested()}switch(r>=242&&r<=256&&JN(n)&&n.flowNode&&!v_(n.flowNode)&&nw(Qe.allowUnreachableCode===!1,n,N.Unreachable_code_detected),r){case 148:return U1(n);case 149:return o1(n);case 252:return HT(n);case 178:return fk(n);case 241:return Pm(n);case 258:case 166:return XP(n);case 152:return bp(n);case 153:return Jl(n);case 158:case 151:case 150:return FC(n);case 163:return Cp(n);case 161:return Vt(n);case 157:case 159:return nk(n);case 165:case 160:return yt(n.type);case 167:return s8(n);case 263:I.fail("type operator");case 207:I.fail("augments");case 208:I.fail("implements");case 225:case 217:return H7(n);case 228:return z7(n);case 224:return q7(n);case 223:return G7(n);case 203:case 204:case 205:console.debug("todo - checkJSDocLinkLikeTag");return;case 220:return $7(n);case 227:return Q7(n);case 221:return Y7(n);case 196:X7(n);case 194:case 193:case 191:case 192:case 201:_o(n,yt);return;case 197:console.debug("todo - checkJSDocVariadicType");return;case 188:return yt(n.type);case 212:case 214:case 213:console.debug("todo - checkJSDocAccessibilityModifiers");return;case 230:console.debug("todo - checkJSDocSatisfiesTag");return;case 261:return yk(n);case 264:return mk(n);case 169:return xn(n);case 236:return ew(n);case 242:return N8(n);case 247:return zs(n);case 253:return Ad(n);case 245:return ik(n);case 246:return ok(n);case 243:return ck(n);case 244:return lk(n);case 251:case 250:return O7(n);case 248:return tk(n);case 256:return cy(n);case 237:CC(n);return;case 266:EC(n);return;case 170:I.fail("class declaration");case 239:I.fail("type alias");case 173:return void 0;case 255:return yt(n.block);case 269:case 92:case 94:case 140:case 105:case 138:case 101:return;case 179:return;case 1:case 257:case 16:case 11:case 272:case 104:case 89:case 267:case 93:case 187:case 281:case 206:case 254:case 211:case 202:return}console.warn("Implement me - checkSourceElementWorker - "+I.formatSyntaxKind(n.kind))}function Wi(n){}function zs(n){Ar(n.expression)}function Ad(n){let r=Dm(n.expression);lv(n.expression,r,n.thenStatement),yt(n.thenStatement),yt(n.elseStatement)}function wd(n,r,...a){let s=nc(n),l=Dt(n);if(!Sk(l)){let d=_g(s,n.pos);return zn.add(lu(s,d.start,d.length,r,...a)),!0}return!1}function Jl(n){return bp(n)}function bp(n){!Rm(n)&&YP(n),IC(n)}function YP(n){if(!ia(n.parent)){if(Mu(n.parent)&&(I.assertNode(n,Nd),n.initializer))return Fs(n.initializer,N.A_type_literal_property_cannot_have_an_initializer)}}function XP(n){if(n1(n,n.typeArguments),n.kind===166&&!mr(n)&&!KN(n)&&n.typeArguments&&n.typeName.end!==n.typeArguments.pos){let r=Dt(n);y6(r,n.typeName.end)===24&&vC(n,Oi(r.text,n.typeName.end),1,N.JSDoc_types_can_only_be_used_inside_documentation_comments)}Ln(n.typeArguments,yt),SC(n)}function TC(n){let r=wt(n);if(!zo(r)){let a=_t(n).resolvedSymbol;if(a)return hC(r,a)}}function hC(n,r){if(!zo(n))return r.flags&524288&&On(r).typeParameters||(Jn(n)&4?n.target.localTypeParameters:void 0)}function ZP(n,r){let a,s,l=!0;for(let d=0;d<r.length;d++){let f=As(r[d]);f&&(a||(a=Uk(n,r),s=os(r,a)),l=l&&Ap(a[d],Mt(f,s),n.typeArguments[d],N.Type_0_does_not_satisfy_the_constraint_1))}return l}function SC(n){let r=wt(n);if(!zo(r)){n.typeArguments&&i(()=>{let s=TC(n);s&&ZP(n,s)});let a=_t(n).resolvedSymbol;a&&Tn(a.declarations,s=>sb(s)&&!!(s.flags&536870912))&&sh(Ul(n),a.declarations,a.name)}}function Ul(n){switch(n=vo(n),n.kind){case 272:case 276:return Ul(n.expression);case 281:return n.argumentExpression;case 286:return n.name;case 166:let r=n;return ol(r.typeName)?r.typeName.right:r;default:return n}}function Cp(n){Ln(n.members,yt),i(r);function r(){let a=y_(n);_C(a,a.symbol),ek(n),xC(n)}}function _C(n,r,a){let s=Da(n);if(s.length===0)return;for(let d of sd(n))a&&d.flags&4194304||Hs(n,d,x_(d,384,!0),Re(d));let l=r.valueDeclaration;if(l&&ia(l)){for(let d of l.members)if(!sT(d)&&!$n(d)){let f=An(d);Hs(n,f,ja(d.name.expression),Re(f))}}if(s.length>1)for(let d of s)UT(n,d)}function Hs(n,r,a,s){let l=r.valueDeclaration,d=ti(l);if(d&&yc(d))return;let f=c_(n,a),h=Jn(n)&2?Cd(n.symbol,155):void 0,D=l&&l.kind===269||d&&d.kind===147?l:void 0,w=jd(r)===n.symbol?l:void 0;for(let J of f){let q=J.declaration&&jd(An(J.declaration))===n.symbol?J.declaration:void 0,Z=w||q||(h&&!Tn(Fd(n),ie=>!!Id(ie,r.name)&&!!Nu(ie,J.keyType))?h:void 0);if(Z&&!Ni(s,J.type)){let ie=Xr(Z,N.Property_0_of_type_1_is_not_assignable_to_2_index_type_3,Li(r),Xn(s),Xn(J.keyType),Xn(J.type));D&&Z!==D&&Bo(ie,yi(D,N._0_is_declared_here,Li(r))),zn.add(ie)}}}function UT(n,r){let a=r.declaration,s=c_(n,r.keyType),l=Jn(n)&2?Cd(n.symbol,155):void 0,d=a&&jd(An(a))===n.symbol?a:void 0;for(let f of s){if(f===r)continue;let h=f.declaration&&jd(An(f.declaration))===n.symbol?f.declaration:void 0,D=d||h||(l&&!Tn(Fd(n),w=>!!Ml(w,r.keyType)&&!!Nu(w,f.keyType))?l:void 0);D&&!Ni(r.type,f.type)&&on(D,N._0_index_type_1_is_not_assignable_to_2_index_type_3,Xn(r.keyType),Xn(r.type),Xn(f.keyType),Xn(f.type))}}function xC(n){let r=new Map;for(let a of n.members)if(a.kind===153){let s,l=a.name;switch(l.kind){case 16:case 11:s=l.text;break;case 89:s=Mo(l);break;default:continue}r.get(s)?(on(ti(a.symbol.valueDeclaration),N.Duplicate_identifier_0,s),on(a.name,N.Duplicate_identifier_0,s)):r.set(s,!0)}}function ek(n){let r=Xk(An(n));if(r?.declarations){let a=new Map;for(let s of r.declarations)s.parameters.length===1&&s.parameters[0].type&&Ym(wt(s.parameters[0].type),l=>{let d=a.get(ra(l));d?d.declarations.push(s):a.set(ra(l),{type:l,declarations:[s]})});a.forEach(s=>{if(s.declarations.length>1)for(let l of s.declarations)on(l,N.Duplicate_index_signature_for_type_0,Xn(s.type))})}}function bC(n){let r=_t(n);return r.resolvedType||(r.resolvedType=Ep(An(n.typeParameter))),r.resolvedType}function y_(n){let r=_t(n);if(!r.resolvedType){let a=Ef(n);if(ud(n.symbol).size===0&&!a)r.resolvedType=Sc;else{let s=$l(16,n.symbol);s.aliasSymbol=a,s.aliasTypeArguments=Fm(a),Bu(n)&&n.isArrayType&&(s=aa(s)),r.resolvedType=s}}return r.resolvedType}function nk(n){Ln(n.types,yt),wt(n)}function Vt(n){yt(n.elementType)}function cy(n){let r,a=!1,s=Ar(n.expression);Ln(n.caseBlock.clauses,l=>{l.kind===301&&!a&&(r===void 0?r=l:(Fs(l,N.A_default_clause_cannot_appear_more_than_once_in_a_switch_statement),a=!0)),l.kind===299&&i(d(l)),Ln(l.statements,yt),Qe.noFallthroughCasesInSwitch&&l.fallthroughFlowNode&&v_(l.fallthroughFlowNode)&&on(l,N.Fallthrough_case_in_switch);function d(f){return()=>{let h=Ar(f.expression);av(s,h)||Tw(h,s,f.expression,void 0)}}}),n.caseBlock.locals&&th(n.caseBlock)}function tk(n){let r=uB(n);if(!r){wd(n,N.A_return_statement_can_only_be_used_within_a_function_body);return}let a=Mi(r);I.assertIsDefined(a,"Container should have a signature");let s=Ii(a),l=Ac(r);if(z||n.expression||s.flags&131072){let d=n.expression?Xa(n.expression):Gt;if(Pa(r)){let f=__(s,l)??s;f&&Lp(d,f,n,n.expression)}}else Qe.noImplicitReturns&&!e1(r,s)&&on(n,N.Not_all_code_paths_return_a_value)}function WT(n,r){if(mh(n),r&&r&4&&Cc(n)){if(!rl(n)&&!GN(n)){let s=QT(n);if(s&&Vl(Ii(s))){let l=_t(n);if(l.contextFreeType)return l.contextFreeType;let d=I_(n,r),f=cd(void 0,void 0,void 0,xe,d,void 0,0,512),h=Gs(n.symbol,V,[f],xe,xe);return h.objectFlags|=262144,l.contextFreeType=h}}return Jc}let a=_k(n);return KT(n,r),vt(An(n))}function KT(n,r){let a=_t(n);if(!(a.flags&64)){let s=QT(n);if(!(a.flags&64)){a.flags|=64;let l=Ta(Bi(vt(An(n)),0));if(!l)return;if((Cc(n)||s&&!n.typeParameters&&s.parameters?.length>n.parameters?.length)&&console.debug("todo - contextuallyCheckFunctionExpressionOrObjectLiteralMethod"),s&&!Pa(n)&&!l.resolvedReturnType){let d=I_(n,r);l.resolvedReturnType||(l.resolvedReturnType=d)}FC(n)}}}function rk(n,r){let a=Ar(n.expression,r);return Jp(33,a,Gt,n.expression)}function CC(n){Pt?.push(Pt.Phase.Check,"checkVariableDeclaration",{kind:n.kind,pos:n.pos,end:n.end,path:n.tracingPath}),ak(n);let r=IC(n);return Pt?.pop(),r}function EC(n){return IC(n)}function ik(n){yt(n.statement),Dm(n.expression)}function ok(n){Dm(n.expression),yt(n.statement)}function ak(n){let a=K_(n)&1;return n.parent.parent.kind!==244&&n.parent.parent.kind!==243&&n.initializer,!!a}function sk(n){if(n.initializer.kind===238){let r=n.initializer;if(!rw(r)){let a=r.declarations;if(!a.length)return!1;let s=Ln(a,l=>l.initializer);if(s){let l=N.The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer;return Fs(s.parent.name,l)}}}return!1}function ck(n){n.initializer&&(n.initializer.kind===238?h_(n.initializer):Ar(n.initializer)),n.condition&&Dm(n.condition),n.incrementor&&Ar(n.incrementor),yt(n.statement),n.locals&&th(n)}function lk(n){if(sk(n),n.initializer.kind===238){let r=n.initializer.declarations[0];r&&oo(r.name)&&on(r.name,N.The_left_hand_side_of_a_for_each_statement_cannot_be_a_destructuring_pattern),h_(n.initializer)}else{let r=n.initializer,a=nF(n),s=Ar(r),l,d=Ar(n.expression);if(r.kind===290||r.kind===293?on(r,N.The_left_hand_side_of_a_for_each_statement_cannot_be_a_destructuring_pattern):qx(r)?(Ty(r.left,N.The_left_hand_side_of_a_for_each_mapping_statement_must_be_a_variable_or_a_property_access,N.The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access),Ty(r.right,N.The_left_hand_side_of_a_for_each_mapping_statement_must_be_a_variable_or_a_property_access,N.The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access),s=Ar(r.left),l=Ar(r.right),Ni(uk(d),s)||on(r,N.The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any)):Ni(d,s)?Ty(r,N.The_left_hand_side_of_a_for_each_mapping_statement_must_be_a_variable_or_a_property_access,N.The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access):on(r,N.The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any),a){if(qx(r)&&a.flags&1048576){let f=a;Lp(f.types.at(0)??kn,s,r.left,n.expression),Lp(f.types.at(1)??kn,l,r.right,n.expression)}else Lp(a,s,r,n.expression);return}else!po(r)&&!qx(r)&&Ty(r,N.The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access,N.The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access);(d===ct||!ss(d,126091268))&&on(n.expression,N.The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_here_has_type_0,Xn(d))}yt(n.statement),n.locals&&th(n)}function uk(n){let r=L7(zl(n));return r.flags&131072?sr:r}function VT(n,r){return n.flags&16384&&on(r,N.An_expression_of_type_void_cannot_be_tested_for_truthiness),n}function Dm(n,r){return VT(Ar(n,r),n)}function Pm(n){Rm(n),yt(n.type)}function NC(n){let r=!1,a=!1;return console.info("todo - checkGrammarClassDeclarationHeritageClauses"),!0}function dk(n){let r=Dt(n);return NC(n)}function K0(n){dk(n),Mr(n)||(n.name,void 0);let r=An(n),a=Ma(r),s=vt(r);Qn(r),DC(n);let l=ab(n);console.debug("todo - checkClassLikeDeclaration")}function zT(n){if(n.flags&262144){let r=na(n);if(r)return zT(r)}return!!(n.flags&67633153&&!as(n)||n.flags&2097152&&di(n.types,zT))}function DC(n){let r=new Map,a=new Map,s=new Map;if(Mr(n))return;for(let d of n.members){let f=d.name;if(!f)continue;let h=r,D=f&&pk(f);if(D)switch(d.kind){case 152:l(h,f,D,3);break;case 154:l(h,f,D,8);break}}function l(d,f,h,D){let w=d.get(h);if(w){let J=!!(w&8),q=!!(D&8);J||q?J!==q&&on(f,N.Duplicate_identifier_0,Ic(f)):w&D&-17?on(f,N.Duplicate_identifier_0,Ic(f)):d.set(h,w|D)}else d.set(h,D)}}function pk(n){let r=Fg(n);return r||(ts(n)?T_(ja(n.expression)):void 0)}function T_(n){return n.flags&384?""+n.value:void 0}function h_(n){let r=zf(n)&1;Ln(n.declarations,yt)}function fk(n){n.flags&16||(n.text||on(n,N.Cannot_find_include_file_0,BI(n)),Ln(n.statements,yt),yt(n.endOfFileToken))}function HT(n){let r=Dt(n),a=Wp(r);a.inherits??(a.inherits=new Map);let s=n.inheritClause,l=Ar(s),d=Jm(n,s,l);if(d){let f=O_(d,s,!0);if(f){let h=vt(f);a.inherits.set(d.name,h)}}}function mk(n){Cf(n),yt(n.typeParameter),yt(n.nameType),yt(n.type),n.type||ga(n,pt);let r=qT(n),a=Wl(r);if(a)Ap(a,Qt,n.nameType);else{let s=_l(r);Ap(s,Qt,vx(n.typeParameter))}}function Wl(n){return n.declaration.nameType?n.nameType||(n.nameType=Mt(wt(n.declaration.nameType),n.mapper)):void 0}function gk(n){let r=_t(n);if(!r.resolvedType){let a=wt(n.checkType),s=Ef(n),l=Fm(s),d=$T(n,!0),f=l?d:Rr(d,D=>N1(D,n)),h={node:n,checkType:a,extendsType:wt(n.extendsType),isDistributive:!!(a.flags&262144),inferTypeParameters:hv(n),outerTypeParameters:f,instantiations:void 0,aliasSymbol:s,aliasTypeArguments:l};r.resolvedType=Fk(h,void 0,!1),f&&(h.instantiations=new Map,h.instantiations.set(Ls(f),r.resolvedType))}return r.resolvedType}function qT(n){let r=_t(n);if(!r.resolvedType){let a=$l(32,n.symbol);a.declaration=n,a.aliasSymbol=Ef(n),a.aliasTypeArguments=Fm(a.aliasSymbol),r.resolvedType=a,_l(a)}return r.resolvedType}function Cf(n){if(n.members?.length)return Fs(n.members[0],N.A_mapped_type_may_not_declare_properties_or_methods)}function yk(n){yt(n.objectType),yt(n.indexType),Ke(Od(n),n)}function Od(n){let r=_t(n);if(!r.resolvedType){let a=wt(n.objectType),s=wt(n.indexType),l=Ef(n);r.resolvedType=gl(a,s,0,n,l,Fm(l))}return r.resolvedType}function Ke(n,r){if(!(n.flags&8388608))return n;let a=n.objectType,s=n.indexType,l=as(a)&&Ik(a)===2?w1(a,0):zl(a,0),d=!!Ml(a,Et);if(lc(s,f=>Ni(f,l)||d&&Sp(f,Et)))return r.kind===281&&Ku(r)&&Jn(a)&32&&Nn(a)&1&&on(r,N.Index_signature_in_type_0_only_permits_reading,Xn(a)),n;if($k(a)){let f=y1(s,r);if(f){let h=Ym(Na(a),D=>bo(D,f));if(h&&vl(h)&6)return on(r,N.Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter,f),kn}}return on(r,N.Type_0_cannot_be_used_to_index_type_1,Xn(s),Xn(a)),kn}function Nn(n){let r=n.declaration;return(r.readonlyToken?r.readonlyToken.kind===42?2:1:0)|0}function xn(n){Rm(n),i(r);function r(){At(n),n.name}}function $n(n){return!0}function Qn(n){i(()=>e8(n))}function At(n){FC(n);let r=Ac(n);if($n(n)){let d=An(n),f=n.localSymbol||d,h=f.declarations?.find(D=>D.kind===n.kind);n===h&&Qn(f),d.parent&&Qn(d)}let a=n.body;yt(a),Z0(n,Pa(n)),i(l);let s=gg(n);s&&s.typeExpression&&!Ok(wt(s.typeExpression),n)&&on(s.typeExpression.type,N.The_type_of_a_function_declaration_must_match_the_function_s_signature);function l(){rl(n)||(oa(a)&&ga(n,pt),r&1&&Qp(a)&&Ii(Mi(n)))}}function ri(n){let r;for(let a of Vh(n))r=Jf(r,Ep(a.symbol));return r?.length?r:Ns(n)?rd(n)?.typeParameters:void 0}function Mi(n){let r=_t(n);if(!r.resolvedSignature){let a=[],s=0,l=0,d,f=mr(n)?xN(n):void 0,h=!1,D=Yp(n),w=!1;!D&&mr(n)&&cD(n)&&!l2(n)&&!$y(n)&&(s|=256),U(n)&512&&(s|=8),Ms(n)&&(s|=16);for(let Xe=w?1:0;Xe<n.parameters?.length;Xe++){let Dn=n.parameters[Xe];if(mr(Dn)&&NN(Dn)){f=Dn;continue}let mn=Dn.symbol,wn=Os(Dn)?Dn.typeExpression&&Dn.typeExpression.type:Dn.type;mn&&mn.flags&4&&!oo(Dn.name)&&(mn=Lr(Dn,mn.name,111551,void 0,!1)),Xe===0&&mn.name==="this"?(h=!0,d=Dn.symbol):a.push(mn),wn&&wn.kind===257&&(s|=2),l=a.length}f&&f.typeExpression&&(d=hf(to(1,"this"),wt(f.typeExpression)));let Z=_d(n)?zN(n):n,ie=Z&&Bg(Z)?vf(at(Z.parent.symbol)):void 0,Ue=ie?ie.localTypeParameters:ri(n);(XM(n)||mr(n)&&fl(n,a))&&(s|=1),r.resolvedSignature=cd(n,Ue,d,a,void 0,void 0,l,s)}return r.resolvedSignature}function fl(n,r){return!1}function ga(n,r,a){console.warn("Implement me - reportImplicitAny")}function Pa(n){let r=rl(n);if(_d(n)){let a=zh(n);if(a&&Bg(a.parent)&&!r)return vf(at(a.parent.parent.symbol))}return r?fm(r)&&n.type?st([$a,wt(n.type)]):wt(r):Kl(n)}function Kl(n){let r=rd(n);return r&&Ii(r)}function rd(n){if(!pc(n))return;let r=gg(n);return r?.typeExpression&&wp(wt(r.typeExpression))}function wt(n){return bW(Q0(n),n)}function ta(n){return n.flags&2976?n.regularType:n.flags&1048576?n.regularType||(n.regularType=la(n,ta)):n}function oW(n){let r=_t(n);if(!r.resolvedType){if(n.parent&&(a(n)||fm(n.parent))&&(Pi(n.literal)||gr(n.literal))){let s=n.literal,l=Jm(n,s,void 0),d=O_(l,s,!0);if(d&&Mr(d.valueDeclaration)){let f=vt(d);r.resolvedType=f}}r.resolvedType||(r.resolvedType=ta(Ar(n.literal)))}return r.resolvedType&&n.parent&&LL(n.parent.parent)&&(r.resolvedType.flags|=-2147483648),r.resolvedType;function a(s){return am(s)||s.parent&&am(s.parent)||s.parent.parent&&am(s.parent.parent)||s.parent.parent.parent&&am(s.parent.parent.parent)}}function aW(n){switch(n.kind){case 258:case 166:return n.typeName;case 280:let r=n.expression;if(Cs(r))return r}}function ly(n,r,a){let s=aW(n);if(!s)return eo;let l=Gc(s,r,a);return l&&l!==eo?l:a?eo:PC(s)}function PC(n){let a=(n.kind===146?n.right:n.kind===286?n.name:n).text;if(a){let s=n.kind===146?PC(n.left):n.kind===286?PC(n.expression):void 0,l=s?`${V0(s)}.${a}`:a,d=mf.get(l);return d||(mf.set(l,d=to(524288,a,1048576)),d.parent=s,d.links.declaredType=ms),d}return eo}function V0(n){return n.parent?`${V0(n.parent)}.${n.name}`:n.name}function sW(n,r){console.debug("getTypeFromClassOrInterfaceReference?");let a=Ma(at(r));return a}function cW(n,r){let a=_t(n);if(!a.resolvedJSDocType){let l=vt(r);r.valueDeclaration,a.resolvedJSDocType=l}return a.resolvedJSDocType}function z0(n,r){if(r===eo)return kn;if(r.flags&96)return sW(n,r);if(r.flags&524288)return lW(n,r);let a=X0(r);if(a)return Md(n,r)?ta(a):kn;if(r.flags&111551&&kC(n)){let s=cW(n,r);return s||(ly(n,788968),vt(r))}return kn}function H0(n){let r=n.declarations?.find(Xx);return!!(r&&aS(r))}function lW(n,r){if(jo(r)&1048576){let l=[],d=Wm(r,l),f=gf.get(d);return f||(f=He(1,"error",void 0,`alias ${d}`),f.aliasSymbol=r,f.aliasTypeArguments=l,gf.set(d,f)),f}let a=Ma(r),s=On(r).typeParameters;if(s){let l=rr(n.typeArguments),d=ad(s);if(l<d||l>s.length)return on(n,d===s.length?N.Generic_type_0_requires_1_type_argument_s:N.Generic_type_0_requires_between_1_and_2_type_arguments,Li(r),d,s.length),kn;let f=Ef(n),h=f&&(H0(r)||!H0(f))?f:void 0,D;if(h)D=Fm(h);else if(u2(n)){let w=ly(n,2097152,!0);if(w&&w!==eo){let J=hl(w);J&&J.flags&524288&&(h=J,D=ev(n)||(s?[]:void 0))}}return Hv(r,ev(n),h,D)}return Md(n,r)?a:kn}function uW(n){let r=_t(n);if(!r.resolvedType){let a=Ef(n),s=qn(n.types,wt),l=s.length===2?s.indexOf(Sc):-1,f=!!((l>=0?s[1-l]:yr).flags&76);r.resolvedType=bi(s,f?1:0,a,Fm(a))}return r.resolvedType}function dW(n){let r=_t(n);if(!r.resolvedType){let a=Ef(n);r.resolvedType=st(qn(n.types,wt),1,a,Fm(a))}return r.resolvedType}function pW(n){return!1}function q0(n){switch(n.kind){case 165:return q0(n.type);case 162:n.elements.length===1&&(n=n.elements[0],console.debug("todo - array element"));break;case 161:return n.elementType}}function fW(n){let r=pW(n.parent);if(q0(n))return r?be:W;let s=qn(n.elements,G0);return fF(s,r,qn(n.elements,mW))}function mW(n){console.debug("todo - memberIfLabeledElementDeclaration")}function G0(n){return console.debug("todo - getTupleElementFlags"),1}function gW(n){I.assert(n.kind===138||n.kind===98);let r=_t(n);return r.resolvedType||(r.resolvedType=Yt),r.resolvedType}function yW(n){let r=_t(n);if(!r.resolvedType){let a=fW(n);if(a===is)r.resolvedType=go;else if(!(n.kind===162&&Tn(n.elements,s=>!!(G0(s)&8)))&&TW(n))r.resolvedType=n.kind===162&&n.elements.length===0?a:b1(a,n,void 0);else{let s=n.kind===161?[wt(n.elementType)]:qn(n.elements,wt);r.resolvedType=Nk(a,s)}}return r.resolvedType}function TW(n,r){return!!Ef(n)||$0(n)&&(n.kind===161?Rd(n.elementType):n.kind===162?Tn(n.elements,Rd):r||Tn(n.typeArguments,Rd))}function Rd(n){switch(n.kind){case 166:return kC(n)||!!(ly(n,788968).flags&524288);case 164:return!0;case 263:return console.debug("todo - mayResolveTypeAlias"),!1;case 165:case 262:case 195:case 193:case 194:case 188:return Rd(n.type);case 160:return console.debug("todo - mayResolveTypeAlias"),!1;case 157:case 159:return Tn(n.types,Rd);case 261:return Rd(n.objectType)||Rd(n.indexType);case 168:return Rd(n.checkType)||Rd(n.extendsType)||Rd(n.trueType)||Rd(n.falseType)}return!1}function $0(n){let r=n.parent;switch(r.kind){case 165:case 262:case 166:case 157:case 159:case 261:case 168:case 263:case 161:case 162:return $0(r);case 239:return!0}return!1}function Q0(n){switch(I.assertIsDefined(n),n.kind){case 97:case 191:case 192:return pt;case 102:return yr;case 94:return sr;case 134:case 92:return Xi;case 93:return vr;case 104:return he;case 107:case 108:return Bc;case 105:return et;case 101:return ic;case 95:return cr;case 138:case 98:return gW(n);case 140:return ul;case 257:return oW(n);case 161:return yW(n);case 157:return dW(n);case 159:return uW(n);case 258:case 166:return S_(n);case 167:return Fi;case 195:return Tl(wt(n.type));case 165:case 194:case 188:return wt(n.type);case 163:case 201:case 196:case 202:return y_(n);case 261:return Od(n);case 264:return qT(n);case 168:return gk(n);case 259:return bC(n);case 89:case 286:let r=qc(n);return r?Ma(r):kn;default:return console.warn("Implement me - getTypeFromTypeNodeWorker "+I.formatSyntaxKind(n.kind)),kn}}function kC(n){return!!(n.flags&16777216)&&n.kind===166}function Md(n,r){return n.typeArguments?(on(n,N.Type_0_is_not_generic,r?Li(r):n.typeName?bs(n.typeName):cQ),!1):!0}function hW(n){let r=[];for(let a of n)if(a.flags&2097152&&Jn(a)&67108864){let s=a.types[0].flags&8650752?0:1;bl(r,a.types[s])}for(let a of r){let s=[];for(let d of n)if(d.flags&2097152&&Jn(d)&67108864){let f=d.types[0].flags&8650752?0:1;d.types[f]===a&&H_(s,d.types[1-f])}let l=na(a);if(lc(l,d=>Hc(s,d))){let d=n.length;for(;d>0;){d--;let f=n[d];if(f.flags&2097152&&Jn(f)&67108864){let h=f.types[0].flags&8650752?0:1;f.types[h]===a&&Hc(s,f.types[1-h])&&Kf(n,d)}}H_(n,a)}}}function Y0(n){if(cn(n.typeName)){let r=n.typeArguments;switch(n.typeName.text){case"string":return Md(n),sr;case"int":return Md(n),Xi;case"float":return Md(n),vr;case"mixed":return Md(n),pt;case"void":return Md(n),et;case"undefined":return Md(n),Gt;case"null":return Md(n),se;case"Function":case"function":return Md(n),O;case"array":return(!r||!r.length)&&!je?xi:void 0;case"object":if(r&&r.length===2){if(qI(n)){let a=wt(r[0]),s=wt(r[1]),l=a===sr||a===Et?[Op(a,s,!1)]:xe;return Gs(void 0,V,xe,xe,l)}return pt}return Md(n),je?void 0:pt;default:console.debug("todo - unhandled jsdoc type ref name "+n.typeName.text)}}}function S_(n){let r=_t(n);if(!r.resolvedType){let a,s,l=788968;kC(n)&&(s=Y0(n),s||(a=ly(n,l,!0),a===eo?a=ly(n,l|111551):ly(n,l),s=z0(n,a))),s||(a=ly(n,l),s=z0(n,a)),r.resolvedSymbol=a,r.resolvedType=s}return r.resolvedType}function Ma(n){return X0(n)||kn}function X0(n){if(n.flags&96)return vf(n);if(n.flags&524288)return SW(n);if(n.flags&262144)return Ep(n);if(n.flags&2097152)return _W(n)}function SW(n){let r=On(n);if(!r.declaredType){if(!kp(n,2))return kn;let a=I.checkDefined(n.declarations?.find(Xx),"Type alias symbol with no valid declaration found"),s=xd(a)?a.typeExpression:a.type,l=s?wt(s):kn;if(Pp()){let d=_f(n);d&&(r.typeParameters=d,r.instantiations=new Map,r.instantiations.set(Ls(d),l))}else l=kn,on(Fc(a)&&a.name||a,N.Type_alias_0_circularly_references_itself,Li(n));r.declaredType??(r.declaredType=l)}return r.declaredType}function _W(n){let r=On(n);return r.declaredType||(r.declaredType=Ma(hl(n)))}function id(n){return n.flags&33554432?id(n.baseType):n.flags&8388608&&(n.objectType.flags&33554432||n.indexType.flags&33554432)?gl(id(n.objectType),id(n.indexType)):n}function xW(n,r,a){return id(wt(r))===id(n)?wt(a):void 0}function bW(n,r){let a,s=!0;for(;r&&!Hp(r)&&r.kind!==199;){let l=r.parent;if(l.kind===149&&(s=!s),(s||n.flags&8650752)&&l.kind===168&&r===l.trueType){let d=xW(n,l.checkType,l.extendsType);d&&(a=Fr(a,d))}else if(n.flags&262144&&l.kind===264&&!l.nameType&&r===l.type){let d=wt(l);if(bc(d)===id(n)){let f=uE(d);if(f){let h=As(f);h&&lc(h,od)&&console.debug("todo - getConditionalFlowTypeOfType - homomorphic mapped type")}}}r=l}return n}function __(n,r){return!!(r&2)?Tk(n)||kn:n}function Tk(n,r,a,...s){return console.warn("Implement me - getAwaitedTypeNoAlias"),n}function no(n,r){if(n.flags&r)return!0;if(n.flags&3145728){let a=n.types;for(let s of a)if(no(s,r))return!0}return!1}function hk(n){return n.endFlowNode&&v_(n.endFlowNode)}function Z0(n,r){i(a);return;function a(){let s=Ac(n),l=r&&__(r,s);if(l&&(no(l,16384)||l.flags&32769)||oa(n.body)||n.body.kind!==236||!hk(n))return;let d=n.flags&1024,f=rl(n)||n;if(l&&l.flags&131072)on(f,N.A_function_returning_never_cannot_have_a_reachable_end_point);else if(l&&!d)on(f,N.A_function_whose_declared_type_is_not_void_must_return_a_value);else if(l&&z&&!Ni(Gt,l))on(f,N.Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined);else if(Qe.noImplicitReturns){if(!l){if(!d)return;let h=Ii(Mi(n));if(e1(n,h))return}on(f,N.Not_all_code_paths_return_a_value)}}}function e1(n,r){let a=__(r,Ac(n));return!!(a&&(no(a,16384)||a.flags&32769))}function Sk(n){return n.parseDiagnostics.length>0}function Fs(n,r,...a){let s=Dt(n);return Sk(s)?!1:(zn.add(yi(n,r,...a)),!0)}function CW(n){return console.warn("Implement me - checkGrammarIndexSignatureParameters"),!1}function EW(n){return Rm(n)||CW(n)}function _k(n){let r=Dt(n);return Rm(n)||NW(n.typeParameters,r)||PW(n.parameters)}function NW(n,r){if(n&&n.length===0){let a=n.pos-1,s=Oi(r.text,n.end)+1;return vC(r,a,s-a,N.Type_parameter_list_cannot_be_empty)}return!1}function lte(n){return n1(n,n.typeArguments)}function n1(n,r){return t1(r)||DW(n,r)}function DW(n,r){if(r&&r.length===0){let a=Dt(n),s=r.pos-1,l=Oi(a.text,r.end)+1;return vC(a,s,l-s,N.Type_argument_list_cannot_be_empty)}return!1}function vC(n,r,a,s,...l){let d=Dt(n);return Sk(d)?!1:(zn.add(lu(d,r,a,s,...l)),!0)}function t1(n,r=N.Trailing_comma_not_allowed){return n&&n.hasTrailingComma?vC(n[0],n.end-1,1,r):!1}function PW(n){let r=!1,a=n?.length??0;for(let s=0;s<a;s++){let l=n[s];if(l.dotDotDotToken){if(s!==a-1)return Fs(l.dotDotDotToken,N.A_rest_parameter_must_be_last_in_a_parameter_list);if(l.flags&33554432||t1(n,N.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma),l.initializer)return Fs(l.name,N.A_rest_parameter_cannot_have_an_initializer)}}}function FC(n){n.kind===150?EW(n):n.kind===169&&_k(n);let r=Ac(n);Z7(n),Ln(n.parameters,o1),n.type&&yt(n.type),i(a);function a(){let s=rl(n),l=s;if(mr(n)){let d=gg(n);if(d&&d.typeExpression&&Ed(d.typeExpression.type)){let f=wp(wt(d.typeExpression));f&&f.declaration&&(s=rl(f.declaration),l=d.typeExpression.type)}}if(s&&l){let d=Ac(n)}n.kind!==150&&n.kind!==196&&th(n)}}function IC(n){if(fo(n)||yt(n.type),!n.name)return kn;if(fo(n)){if(n.propertyName&&cn(n.name)&&Ng(n)&&oa(aS(n).body))return;let s=n.parent.parent,l=n.dotDotDotToken?32:0,d=uR(s,l),f=n.propertyName||n.name;if(d&&!oo(f)){let h=$m(f);if(cf(h)){let D=af(h),w=bo(d,D);w&&(Yk(w,void 0,!1),pw(n,!!s.initializer&&s.initializer.kind===71,!1,d,w))}}}if(oo(n.name)&&Ln(n.name.elements,yt),n.initializer&&Ng(n)&&oa(aS(n).body)){on(n,N.A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation);return}if(oo(n.name)){if(a1(n))return pt;let s=Uh(n)&&n.initializer&&n.parent.parent.kind!==244,l=!1;if(s||l){let d=qC(n);if(s){let f=Xa(n.initializer);z&&l?r1(f,n):Lp(f,qC(n),n,n.initializer)}l&&(yT(n.name)?Jp(65,d,Gt,n):z&&r1(d,n))}return Zn(n)}let r=An(n);if(r.flags&2097152&&(tS(n)||lB(n)))return kW(n),Zn(n);let a=TE(vt(r));if(n===r.valueDeclaration){let s=Uh(n)&&QN(n);if(s&&!(mr(n)&&Ka(s)&&s.properties.length===0&&!!r.exports?.size)&&n.parent.parent.kind!==244){let d;if(Pl(s)){Xa(s);let f=ax(s);d=Ii(f)}else d||(d=Xa(s));Lp(d,a,n,s,void 0)}r.declarations&&r.declarations.length>1&&Tn(r.declarations,l=>l!==n&&uS(l)&&!i1(l,n))&&on(n.name,N.All_declarations_of_0_must_have_identical_modifiers,bs(n.name))}else{let s=TE(qC(n));!zo(a)&&!zo(s)&&!uy(a,s)&&!(r.flags&67108864)&&s1(r.valueDeclaration,a,n,s),Uh(n)&&n.initializer&&Lp(Xa(n.initializer),s,n,n.initializer,void 0),r.valueDeclaration&&!i1(n,r.valueDeclaration)&&on(n.name,N.All_declarations_of_0_must_have_identical_modifiers,bs(n.name))}return n.kind!==152&&n.kind!==153&&((n.kind===237||n.kind===266)&&AW(n),n.name,void 0),Zn(n)}function r1(n,r){let a=ku(n,r);if(a.flags&16384){if(Cs(r)){let s=ju(r);if(cn(r)&&s==="undefined")return on(r,N.The_value_0_cannot_be_used_here,s),a;if(s.length<100)return on(r,N._0_is_possibly_undefined,s),a}on(r,N.Object_is_possibly_undefined)}return a}function i1(n,r){if(n.kind===149&&r.kind===237||n.kind===237&&r.kind===149)return!0;let a=262;return WN(n,a)===WN(r,a)}function kW(n){let r=An(n),a=hl(r);if(a!==eo){r=at(r.exportSymbol||r);let s=hy(a),l=(r.flags&1160127?111551:0)|(r.flags&788968?788968:0)|(r.flags&1920?1920:0);s&l&&I.fail("Shouldn't have a symbol conflict here.")}}function o1(n){Rm(n),IC(n);let r=aS(n);su(n,167),n.name&&cn(n.name)&&(n.name.text==="this"||n.name.text==="new")&&r.parameters.indexOf(n)!==0&&on(n,N.A_0_parameter_must_be_the_first_parameter,n.name.text),n.dotDotDotToken&&!oo(n.name)&&!Ni(Vc(vt(n.symbol)),Nr)&&on(n,N.A_rest_parameter_must_be_of_an_array_type)}function Vc(n){return n.flags&1048576&&n.objectFlags&16777216?n.resolvedReducedType||(n.resolvedReducedType=LW(n)):n.flags&2097152?(n.objectFlags&16777216||(n.objectFlags|=16777216|(Tn(Pv(n),vW)?33554432:0)),n.objectFlags&33554432?ct:n):n}function vW(n){return FW(n)||IW(n)}function FW(n){return!(n.flags&16777216)&&(jo(n)&131264)===192&&!!(vt(n).flags&131072)}function IW(n){return!n.valueDeclaration&&!!(jo(n)&1024)}function LW(n){let r=Ia(n.types,Vc);if(r===n.types)return n;let a=st(r);return a.flags&1048576&&(a.resolvedReducedType=a),a}function uy(n,r){return Yl(n,r,fa)}function a1(n){return!!(n.flags&33554432)}function ute(n){}function AW(n){if(K_(n)&1||Ng(n))return;let r=An(n);if(r.flags&1){if(!cn(n.name))return I.fail();let a=Lr(n,n.name.text,3,void 0,!1);if(a&&a!==r&&a.flags&2&&tr(a)&1){let s=Zp(a.valueDeclaration,238),l=s.parent.kind===242&&s.parent.parent?s.parent.parent:void 0;if(!(l&&(l.kind===236&&ki(l.parent)||l.kind===176))){let f=Li(a);on(n,N.Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1,f,f)}}}}function s1(n,r,a,s){let l=ti(a),d=a.kind===152?N.Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_type_2:N.Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_type_2,f=bs(l),h=on(l,d,f,Xn(r),Xn(s));n&&Bo(h,yi(n,N._0_was_also_declared_here,f))}function LC(n,r,a){i(()=>{je&&Jn(r)&65536&&(!a||!xk(n))&&(Rk(r)||ga(n,r,a))})}function xk(n){return dS(n)?QT(n):void 0}function wW(n,r){for(let a=Pe-1;a>=0;a--)if(n===Ur[a]&&(r||!qt[a]))return a;return-1}function bk(n){n=Na(n);let r=Ei(ya(n)),a=Bi(n,0).length?vn:Bi(n,1).length?qr:void 0;return a&&Ln(ya(a),s=>{r.has(s.name)||r.set(s.name,s)}),j_(r)}function OW(n){let r=st(n);if(!(r.flags&1048576))return bk(r);let a=Ei();for(let s of n)for(let{name:l}of bk(s))if(!a.has(l)){let d=i_(r,l);d&&a.set(l,d)}return Yo(a.values())}function RW(n,r){if(mh(n),xs(n)&&(n.name,void 0),r&&r&4&&Cc(n)){if(!rl(n)&&!GN(n)){let s=QT(n);if(s&&Vl(Ii(s))){let l=_t(n);if(l.contextFreeType)return l.contextFreeType;let d=I_(n,r),f=cd(void 0,void 0,void 0,xe,d,void 0,0,512),h=Gs(n.symbol,V,[f],xe,xe);return h.objectFlags|=262144,l.contextFreeType=h}}return Jc}let a=_k(n);return KT(n,r),vt(An(n))}function MW(n,r){return c1(n,r)}function c1(n,r){let{type:a,expression:s}=hw(n),l=Ar(s,r),d=_t(n);return d.assertionExpressionType=l,yt(a),mh(n),wt(a)}function l1(n,r,a){(n.intraExpressionInferenceSites??(n.intraExpressionInferenceSites=[])).push({node:r,type:a})}function BW(n,r){return Ms(n)&&lf(n)?c1(n,r):Ar(n.expression,r)}function jW(n,r){let{type:a,arguments:s}=n,l=S_(a),d=_t(n);return yt(a),mh(n),JW(n,r),wt(a)}function JW(n,r=0){if(!n.arguments)return;let a=Ku(n),s=z?Ei():void 0,l=Ei(),d=[],f=go;jk(n);let h=b_(n,void 0),D=0,w=8192,J=!1,q=!1,Z=!1,ie=!1,Ue=0;if(n.arguments&&zu(Eo(n.arguments)))for(let mn of n.arguments){let wn=An(mn);if(mn.kind===174||mn.kind===175||mS(mn)){let Bn=mn.kind===174?mO(mn,r):mn.kind===175?ch(!a&&mn.objectAssignmentInitializer?mn.objectAssignmentInitializer:mn.name,r):void 0;w|=Jn(Bn)&458752;let Fn=to(4|wn.flags,wn.name,D);if(Fn.declarations=wn.declarations,Fn.parent=wn.parent,wn.valueDeclaration&&(Fn.valueDeclaration=wn.valueDeclaration),Fn.links.type=Bn,Fn.links.target=wn,wn=Fn,s?.set(Fn.name,Fn),h&&r&2&&!(r&4)&&mn.kind===174&&Cc(mn)){let nt=dy(n);I.assert(nt);let ft=mn.kind===174?mn.initializer:mn;l1(nt,ft,Bn)}}l.set(wn.name,wn),d.push(wn)}if(XT(),zo(f))return kn;return Dn();function Dn(){let mn=[];q&&mn.push(u1(n,Ue,d,sr)),Z&&mn.push(u1(n,Ue,d,Et));let wn=Gs(n.symbol,l,xe,xe,mn);return wn.objectFlags|=w|128|131072,J&&(wn.objectFlags|=512),wn}}function u1(n,r,a,s){let l=[];for(let f=r;f<a.length;f++){let h=a[f];(s===sr&&!KW(h)||s===Et&&WW(h))&&l.push(vt(a[f]))}let d=l.length?st(l,2):Gt;return Op(s,d,!1)}function UW(n){switch(n.kind){case 89:return rm(n.text);case 10:case 16:return rm(n.text);default:return!1}}function WW(n){let r=n.declarations?.[0];return rm(n.name)||r&&Fc(r)&&UW(r.name)}function KW(n){let r=n.declarations?.[0];return Ag(n)}function ml(n,r){var l;let a=wW(n,!r);if(a>=0)return ai[a];let{parent:s}=n;switch(s.kind){case 237:case 149:case 152:case 153:case 266:return $W(n,r);case 283:case 248:return GW(n,r);case 272:case 276:return t7(s,n);case 279:case 296:return wt(s.type);case 269:return VW(n,r);case 284:case 285:return pt;case 174:case 175:console.warn("todo getContextualType - getContextualTypeForObjectLiteralElement");case 290:{let d=s,f=b_(d,r),h=pS(d.elements,n),D=(l=_t(d)).spreadIndices??(l.spreadIndices=n7(d.elements||xe));return f1(f,h,d.elements?.length||0,D.first,D.last)}case 267:return ZW(n,r);case 289:{if(mr(s)){if(d6(s))return wt(p6(s));let d=gg(s);if(d)return wt(d.typeExpression.type)}return ml(s,r)}}}function VW(n,r){let a=n.parent,{left:s,operatorToken:l,right:d}=a;switch(l.kind){case 74:case 86:return n===d?zW(a):void 0;case 59:return ml(a,r);case 58:case 27:return n===d?ml(a,r):void 0;default:return}}function dte(n){if(qd(n)&&n.symbol)return n.symbol;if(cn(n))return Is(n);if(ii(n)){let r=ja(n.expression);return bo(r,n.name.text)}if(js(n)){let r=Xa(n.argumentExpression);if(!cf(r))return;let a=ja(n.expression);return bo(a,af(r))}}function zW(n){let r=ds(n);switch(r){case 0:case 4:return yr;case 5:if(Iv(n,r))return HW(n);if(!qd(n.left)||!n.left.symbol)return ja(n.left);{let l=n.left.symbol.valueDeclaration;if(!l)return;let d=Ua(n.left,ps),f=Es(l);if(f)return wt(f);if(cn(d.expression)){let h=d.expression,D=Lr(h,h.text,111551,void 0,!0);if(D){let w=D.valueDeclaration&&Es(D.valueDeclaration);if(w){let J=Cg(d);if(J!==void 0)return AC(wt(w),J)}return}}return mr(l)||l===n.left?void 0:ja(n.left)}case 1:case 6:case 3:case 2:let a;r!==2&&(a=qd(n.left)?n.left.symbol?.valueDeclaration:void 0),a||(a=n.symbol?.valueDeclaration);let s=a&&Es(a);return s?wt(s):void 0;case 7:case 8:case 9:return I.fail("Does not apply");default:return I.assertNever(r)}}function HW(n){if(!n.symbol)return ja(n.left);if(n.symbol.valueDeclaration){let l=Es(n.symbol.valueDeclaration);if(l){let d=wt(l);if(d)return d}}let r=Ua(n.left,ps);if(!mS(TS(r.expression,!1,!1)))return;let a=qW(r.expression),s=Cg(r);return s!==void 0&&AC(a,s)||void 0}function qW(n){I.fail("todo - checkThisExpression")}function GW(n,r){let a=aS(n);if(a){let s=aw(a,r);if(s){let l=Ac(a);return s}}}function $W(n,r){let a=n.parent;if(Gd(a)&&n===a.initializer){let s=p1(a,r);if(s)return s;if(!(r&8)&&oo(a.name)&&a.name.elements.length>0)return Ck(a.name,!0,!1)}}function Ck(n,r=!1,a=!1){return I.assertEqual(n.kind,265),QW(n,r,a)}function d1(n){return n.kind===266&&!!n.initializer||n.kind===269&&n.operatorToken.kind===74}function QW(n,r,a){let s=n.elements,l=ko(s),d=l&&l.kind===266&&l.dotDotDotToken?l:void 0;if(s.length===0||s.length===1&&d)return xi;let f=qn(s,J=>jg(J)?pt:YW(J,r,a)),h=yx(s,J=>!(J===d||jg(J)||d1(J)),s.length-1)+1,D=qn(s,(J,q)=>J===d?4:q>=h?2:1),w=dd(f,D);return r&&(w=f_(w),w.pattern=n,w.objectFlags|=131072),w}function YW(n,r,a){if(n.initializer){let s=oo(n.name)?Ck(n.name,!0,!1):yr;return Tl(Bk(n,YT(n,a?0:1,s)))}return oo(n.name)?Ck(n.name,r,a):(a&&ga(n,pt),r?gs:pt)}function p1(n,r){let a=Es(n,me)||(mr(n)?eL(n):void 0);if(a)return wt(a);switch(n.kind){case 149:return W1(n);case 266:return XW(n,r);case 152:}}function XW(n,r){let a=n.parent.parent,s=n.propertyName||n.name,l=p1(a,r)||a.kind!==266&&a.initializer&&YT(a,n.dotDotDotToken?32:0);if(!l||oo(s)||aD(s))return;if(a.name.kind===265){let f=pS(n.parent.elements,n);return f<0?void 0:f1(l,f)}let d=$m(s);if(cf(d)){let f=af(d);return Ec(l,f)}}function ZW(n,r){let a=n.parent;return n===a.whenTrue||n===a.whenFalse?ml(a,r):void 0}function f1(n,r,a,s,l){return n&&la(n,d=>(!s||r<s)&&AC(d,""+r)||Nm(1,d,Gt,void 0,!1),!0)}function AC(n,r,a){return la(n,s=>{if(s.flags&3670016){let l=bo(s,r);return l?e7(l)?void 0:td(vt(l),!!(l.flags&16777216)):sc(s_(s),a||jl(r))?.type}},!0)}function e7(n){return!!(jo(n)&262144&&!n.links.type&&HC(n,0)>=0)}function n7(n){let r,a;for(let s=0;s<n.length;s++)JD(n[s])&&(r??(r=s),a=s);return{first:r,last:a}}function dy(n){for(let r=ut-1;r>=0;r--)if(fS(n,Ze[r]))return Wn[r]}function t7(n,r){let s=GC(n).indexOf(r);return s===-1?void 0:m1(n,s)}function m1(n,r){let a=_t(n).resolvedSignature===Qa?Qa:ax(n),s=a.parameters.length-1;return Rc(a)&&r>=s?gl(vt(a.parameters[s]),xc(r-s),256):Pu(a,r)}function gl(n,r,a=0,s,l,d){return km(n,r,a,s,l,d)||(s?kn:yr)}function g1(n){return n.flags&524288&&!as(n)&&ya(n).length===0&&Da(n).length===1&&!!Ml(n,sr)||n.flags&3145728&&di(n.types,g1)||!1}function km(n,r,a=0,s,l,d){if(n===Ko||r===Ko)return Ko;n=Vc(n),g1(n)&&!(r.flags&98304)&&ss(r,12)&&(r=sr),Qe.noUncheckedIndexedAccess&&a&32&&(a|=1);let f=Tf(n);if(r.flags&1048576&&!(r.flags&16)){let h=[],D=!1;for(let w of r.types){let J=T1(n,f,w,r,s,a|(D?128:0));if(J)h.push(J);else if(s)D=!0;else return}return D?void 0:a&4?bi(h,0,l,d):st(h,1,l,d)}return T1(n,f,r,r,s,a|8|64)}function y1(n,r){return cf(n)?af(n):r&&$f(r)?Fg(r):void 0}function Ek(n){return n.kind===281?n.argumentExpression:n.kind===261?n.indexType:n.kind===147?n.expression:n}function GT(n){if(je)return!1;if(Jn(n)&4096)return!0;if(n.flags&1048576)return di(n.types,GT);if(n.flags&2097152)return Tn(n.types,GT);if(n.flags&465829888){let r=jv(n);return r!==n&&GT(r)}return!1}function r7(n,r,a){return a===0?!1:Sf(r)?!0:(ps(n)&&vo(n.expression).kind===89&&I.fail("todo - isAssignmentToReadonlyEntity"),!1)}function T1(n,r,a,s,l,d){let f=l&&l.kind===281?l:void 0,h=l&&yc(l)?void 0:y1(a,l);if(h!==void 0){if(d&256)return AC(r,h)||pt;let w=bo(r,h);if(w){if(d&64&&l&&w.declarations&&V_(w)&&Cv(l,w)){let q=f?.argumentExpression??(Vf(l)?l.indexType:l);sh(q,w.declarations,h)}if(f){if(Yk(w,f,mw(f.expression,r.symbol)),r7(f,w,ef(f))){on(f.argumentExpression,N.Cannot_assign_to_0_because_it_is_a_read_only_property,Li(w));return}d&8&&(_t(l).resolvedSymbol=w)}let J=d&4?ay(w):vt(w);return f&&ef(f)!==1?Rf(f,J):l&&Vf(l)&&IE(J)?st([J,Gt]):J}if(lc(r,Ci)&&rm(h)){let J=+h;if(l&&lc(r,q=>!q.target.hasRestElement)&&!(d&16)){let q=Ek(l);if(Ci(r)){if(J<0)return on(q,N.A_tuple_type_cannot_be_indexed_with_a_negative_value),Gt;on(q,N.Tuple_type_0_of_length_1_has_no_element_at_index_2,Xn(r),jp(r),h)}else on(q,N.Property_0_does_not_exist_on_type_1,h,Xn(r))}if(J>=0)return D(Ml(r,Et)),$1(r,J,d&1?li:void 0)}}if(!(a.flags&98304)&&ss(a,402655660)){if(r.flags&131073)return r;let w=_p(r,a)||Ml(r,sr);if(w){if(d&2&&w.keyType!==Et){f&&(d&4?on(f,N.Type_0_is_generic_and_can_only_be_indexed_for_reading,Xn(n)):on(f,N.Type_0_cannot_be_used_to_index_type_1,Xn(a),Xn(n)));return}if(l&&w.keyType===sr&&!ss(a,12)){let J=Ek(l);return on(J,N.Type_0_cannot_be_used_as_an_index_type,Xn(a)),d&1?st([w.type,li]):w.type}return D(w),d&1&&!(r.symbol&&r.symbol.flags&384&&a.symbol&&a.flags&1024&&jd(a.symbol)===r.symbol)?st([w.type,li]):w.type}if(a.flags&131072)return ct;if(GT(r))return pt;if(f){if(Bl(r)){if(je&&a.flags&384)return zn.add(yi(f,N.Property_0_does_not_exist_on_type_1,a.value,Xn(r))),Gt;if(a.flags&12){let J=qn(r.properties,q=>vt(q));return st(Fr(J,Gt))}}if(r.symbol===Zt&&h!==void 0&&Zt.exports.has(h)&&Zt.exports.get(h).flags&418)on(f,N.Property_0_does_not_exist_on_type_1,h,Xn(r));else if(je&&!(d&128))if(Nu(r,Et))on(f.argumentExpression,N.Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number);else{let J;if(h!==void 0&&(J=GO(h,r)))J!==void 0&&on(f.argumentExpression,N.Property_0_does_not_exist_on_type_1_Did_you_mean_2,h,Xn(r),J);else{let q=i7(r,f,a);if(q!==void 0)on(f,N.Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1,Xn(r),q);else{let Z;a.flags&1024?Z=ci(void 0,N.Property_0_does_not_exist_on_type_1,"["+Xn(a)+"]",Xn(r)):a.flags&128?Z=ci(void 0,N.Property_0_does_not_exist_on_type_1,a.value,Xn(r)):a.flags&256?Z=ci(void 0,N.Property_0_does_not_exist_on_type_1,a.value,Xn(r)):a.flags&12&&(Z=ci(void 0,N.No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1,Xn(a),Xn(r))),Z=ci(Z,N.Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1,Xn(s),Xn(r)),zn.add(Pg(Dt(f),f,Z))}}}return}}if(GT(r))return pt;if(l){let w=Ek(l);a.flags&384?on(w,N.Property_0_does_not_exist_on_type_1,""+a.value,Xn(r)):a.flags&12?on(w,N.Type_0_has_no_matching_index_signature_for_type_1,Xn(r),Xn(a)):wm(n)||on(w,N.Type_0_cannot_be_used_as_an_index_type,Xn(a))}if(cs(a))return a;return;function D(w){w&&w.isReadonly&&f&&Ku(f)&&on(f,N.Index_signature_in_type_0_only_permits_reading,Xn(r))}}function i7(n,r,a){function s(f){let h=Id(n,f);if(h){let D=wp(vt(h));return!!D&&Hl(D)>=1&&Ni(a,Pu(D,0))}return!1}let l=Ku(r)?"set":"get";if(!s(l))return;let d=wx(r.expression);return d===void 0?d=l:d+="."+l,d}function Mt(n,r){return n&&r?S1(n,r,void 0,void 0):n}function h1(n){if(n.aliasSymbol&&!n.aliasTypeArguments){let r=Cd(n.aliasSymbol,239);return!!(r&&It(r.parent,a=>a.kind===176?!0:"quit"))}return!1}function Vl(n){let r=Jn(n);if(r&524288)return!!(r&1048576);let a=!!(n.flags&465829888||n.flags&524288&&!h1(n)&&(r&4&&(n.node||Tn(Lo(n),Vl))||r&134217728&&rr(n.outerTypeParameters)||r&16&&n.symbol&&n.symbol.flags&14384&&n.symbol.declarations||r&12583968)||n.flags&3145728&&!(n.flags&1024)&&!h1(n)&&Tn(n.types,Vl));return n.flags&3899393&&(n.objectFlags|=524288|(a?1048576:0)),a}function S1(n,r,a,s){if(!Vl(n))return n;if(P===100||_>=5e6)return Pt?.instant(Pt.Phase.CheckTypes,"instantiateType_DepthLimit",{typeId:n.id,instantiationDepth:P,instantiationCount:_}),on(B,N.Type_instantiation_is_excessively_deep_and_possibly_infinite),kn;T++,_++,P++;let l=g7(n,r,a,s);return P--,l}function yl(n,r){return wC(n,r,Mt)}function wC(n,r,a){if(n&&n.length)for(let s=0;s<n.length;s++){let l=n[s],d=a(l,r);if(l!==d){let f=s===0?[]:n.slice(0,s);for(f.push(d),s++;s<n.length;s++)f.push(a(n[s],r));return f}}return n}function Nk(n,r){return n.objectFlags&8?Yv(n,r):vm(n,r)}function vm(n,r){let a=Ls(r),s=n?.instantiations?.get(a);return n&&!s&&(s=$l(4,n.symbol),n.instantiations?.set(a,s),s.objectFlags|=r?kt(r):0,s.target=n,s.resolvedTypeArguments=r),s}function o7(n,r){let a=Mt(n.mappedType,r);if(!(Jn(a)&32))return n;let s=Mt(n.constraintType,r);if(!(s.flags&4194304))return n;let l=_1(Mt(n.source,r),a,s);return l||n}function Dk(n){return!(Jn(n)&262144)||Bl(n)&&Tn(ya(n),r=>Dk(vt(r)))||Ci(n)&&Tn(zm(n),Dk)}function py(n){return n.templateType||(n.templateType=n.declaration.type?Mt(Tl(wt(n.declaration.type),!0,!!(Nn(n)&4)),n.mapper):kn)}function a7(n,r,a){let s=gl(a.type,bc(r)),l=py(r),d=gF(s);return vp([d],n,l),$R(d)||yr}function Pk(n,r,a){let s=n.id+","+r.id+","+a.id;if(kr.has(s))return kr.get(s)||yr;No.push(n),Oo.push(r);let l=re;xy(n,No,No.length,2)&&(re|=1),xy(r,Oo,Oo.length,2)&&(re|=2);let d;return re!==3&&(d=a7(n,r,a)),No.pop(),Oo.pop(),re=l,kr.set(s,d),d}function s7(n,r,a){if(!(Ml(n,sr)||ya(n).length!==0&&Dk(n)))return;if(ca(n)){let l=Pk(Lo(n)[0],r,a);return l?aa(l,Ny(n)):void 0}if(Ci(n)){let l=qn(zm(n),f=>Pk(f,r,a));if(!di(l,f=>!!f))return;let d=Nn(r)&4?Ia(n.target.elementFlags,f=>f&2?1:f):n.target.elementFlags;return dd(l,d,n.target.readonly,n.target.labeledElementDeclarations)}let s=$l(1040,void 0);return s.source=n,s.mappedType=r,s.constraintType=a,s}function _1(n,r,a){let s=n.id+","+r.id+","+a.id;if(fn.has(s))return fn.get(s);let l=s7(n,r,a);return fn.set(s,l),l}function c7(n){if(!n||!mr(n))return!1;let r=Ns(n)||xs(n)?n:(po(n)||zu(n))&&n.initializer&&xs(n.initializer)?n.initializer:void 0;return r?YF(n)?!0:zu(Lg(r.parent))?!1:!!An(r)?.members?.size:!1}function $T(n,r){for(;;){if(n=n.parent,n&&gr(n)){let a=ds(n)}if(!n)return;switch(n.kind){case 274:case 170:case 155:case 151:case 156:case 158:case 196:case 169:case 154:case 270:case 283:case 239:case 224:case 225:case 219:case 217:case 264:case 168:{let s=$T(n,r);if(n.kind===264)return Fr(s,Ep(An(n.typeParameter)));if(n.kind===168)return Kr(s,hv(n));let l=kk(s,Vh(n)),d=r&&(n.kind===170||n.kind===274||n.kind===155||c7(n))&&vf(An(n)).thisType;return d?Fr(l,d):l}case 220:let a=XI(n);a&&(n=a.valueDeclaration);break;case 199:{let s=$T(n,r);return n.tags?kk(s,Co(n.tags,l=>Ys(l)?l.typeParameters:void 0)):s}}}}function x1(n){let r=Cd(n.symbol,148),a=Ys(r.parent)?Wx(r.parent):r.parent;return a&&Wp(a)}function kk(n,r){for(let a of r)n=Jf(n,Ep(An(a)));return n}function Ep(n){let r=On(n);return r.declaredType||(r.declaredType=zc(n))}function zc(n){return J_(262144,n)}function Np(n,r){switch(r.kind){case 0:return n===r.source?r.target:n;case 1:{let s=r.sources,l=r.targets;for(let d=0;d<s.length;d++)if(n===s[d])return l?l[d]:pt;return n}case 2:{let s=r.sources,l=r.targets;for(let d=0;d<s.length;d++)if(n===s[d])return l[d]();return n}case 3:return r.func(n);case 4:case 5:let a=Np(n,r.mapper1);return a!==n&&r.kind===4?Mt(a,r.mapper2):Np(a,r.mapper2)}}function vk(n){let r=zc(n.symbol);return r.target=n,r}function Bd(n,r){return I.attachDebugPrototypeIfDebug({kind:0,source:n,target:r})}function bc(n){return n.typeParameter||(n.typeParameter=Ep(An(n.declaration.typeParameter)))}function OC(n,r,a,s){I.assert(n.symbol,"anonymous type must have symbol to be instantiated");let l=$l(n.objectFlags&-1572865|64,n.symbol);if(n.objectFlags&32){l.declaration=n.declaration;let d=bc(n),f=vk(d);l.typeParameter=f,r=Dp(Bd(d,f),r),f.mapper=r}return n.objectFlags&8388608&&(l.node=n.node),n.objectFlags&134217728&&(l.outerTypeParameters=n.outerTypeParameters),l.target=n,l.mapper=r,l.aliasSymbol=a||n.aliasSymbol,l.aliasTypeArguments=a?s:yl(n.aliasTypeArguments,r),l.objectFlags|=l.aliasTypeArguments?kt(l.aliasTypeArguments):0,l}function l7(n,r){return I.attachDebugPrototypeIfDebug({kind:1,sources:n,targets:r})}function os(n,r){return n.length===1?Bd(n[0],r?r[0]:pt):l7(n,r)}function Ef(n){let r=n.parent;for(;kh(r)||am(r);)r=r.parent;return Xx(r)?An(r):void 0}function Fm(n){return n?_f(n):void 0}function b1(n,r,a,s,l){if(!s){s=Ef(r);let f=Fm(s);l=a?yl(f,a):f}let d=$l(4,n.symbol);return d.target=n,d.node=r,d.mapper=a,d.aliasSymbol=s,d.aliasTypeArguments=l,d}function u7(n,r,a,s){let l=uE(n);if(l){let f=Mt(l,r);if(l!==f)return F1(Vc(f),d,a,s)}return Mt(_l(n),r)===Ko?Ko:OC(n,r,a,s);function d(f){if(f.flags&61603843&&f!==Ko&&!zo(f)){if(!n.declaration.nameType){let h;if(ca(f)||f.flags&1&&HC(l,4)<0&&(h=As(l))&&lc(h,od))return d7(f,n,Lm(l,f,r));if(Ci(f))return p7(f,n,l,r);if(lC(f))return bi(qn(f.types,d))}return OC(n,Lm(l,f,r))}return f}}function C1(n,r,a,s){let l=BC(s,bc(n),r),d=Mt(py(n.target||n),l),f=Nn(n);return z&&f&4&&!no(d,49152)?Fp(d,!0):z&&f&8&&a?Xl(d,524288):d}function E1(n,r){return r&1?!0:r&2?!1:n}function d7(n,r,a){let s=C1(r,Et,!0,a);return zo(s)?kn:aa(s,E1(Ny(n),Nn(r)))}function p7(n,r,a,s){let l=n.target.elementFlags,d=n.target.fixedLength,f=d?Lm(a,n,s):s,h=qn(zm(n),(q,Z)=>{let ie=l[Z];return Z<d?C1(r,jl(""+Z),!!(ie&2),f):ie&8?Mt(r,Lm(a,q,s)):P_(Mt(r,Lm(a,aa(q),s)))??yr}),D=Nn(r),w=D&4?qn(l,q=>q&1?2:q):D&8?qn(l,q=>q&2?1:q):l,J=E1(n.target.readonly,Nn(r));return Yr(h,kn)?kn:dd(h,w,J,n.target.labeledElementDeclarations)}function f7(n,r,a,s){let l=n.objectFlags&4||n.objectFlags&8388608?n.node:n.symbol.declarations[0],d=_t(l),f=n.objectFlags&4?d.resolvedType:n.objectFlags&64?n.target:n,h=n.objectFlags&134217728?n.outerTypeParameters:d.outerTypeParameters;if(!h){h=$T(l,!0)||xe;let w=n.objectFlags&8388612?[l]:n.symbol.declarations;h=(f.objectFlags&8388612||f.symbol.flags&8192||f.symbol.flags&2048)&&!f.aliasTypeArguments?Rr(h,J=>Tn(w,q=>N1(J,q))):h,d.outerTypeParameters=h}if(h.length){let D=Dp(n.mapper,r),w=qn(h,Ue=>Np(Ue,D)),J=a||n.aliasSymbol,q=a?s:yl(n.aliasTypeArguments,r),Z=(n.objectFlags&134217728?"S":"")+Ls(w)+Wm(J,q);f.instantiations||(f.instantiations=new Map,f.instantiations.set(Ls(h)+Wm(f.aliasSymbol,f.aliasTypeArguments),f));let ie=f.instantiations.get(Z);if(!ie){if(n.objectFlags&134217728)return ie=OC(n,r),f.instantiations.set(Z,ie),ie;let Ue=os(h,w);ie=f.objectFlags&4?b1(n.target,n.node,Ue,J,q):f.objectFlags&32?u7(f,Ue,J,q):OC(f,Ue,J,q),f.instantiations.set(Z,ie);let Xe=Jn(ie);if(ie.flags&3899393&&!(Xe&524288)){let Dn=Tn(w,Vl);Jn(ie)&524288||(Xe&52?ie.objectFlags|=524288|(Dn?1048576:0):ie.objectFlags|=Dn?0:524288)}}return ie}return n}function Dp(n,r){return n?RC(4,n,r):r}function RC(n,r,a){return I.attachDebugPrototypeIfDebug({kind:n,mapper1:r,mapper2:a})}function m7(n){return!(n.parent.kind===166&&n.parent.typeArguments&&n===n.parent.typeName)}function N1(n,r){if(n.symbol&&n.symbol.declarations&&n.symbol.declarations.length===1){let s=n.symbol.declarations[0].parent;for(let l=r;l!==s;l=l.parent)if(!l||l.kind===236)return!0;return a(r)}return!0;function a(s){switch(s.kind){case 89:return!n.isThisType&&of(s)&&m7(s)&&Q0(s)===n;case 164:I.fail("todo - type query")}return!!_o(s,a)}}function g7(n,r,a,s){let l=n.flags;if(l&262144)return Np(n,r);if(l&524288){let d=n.objectFlags;if(d&52){if(d&4&&!n.node){let f=n.resolvedTypeArguments,h=yl(f,r);return h!==f?Nk(n.target,h):n}return d&1024?o7(n,r):f7(n,r,a,s)}return n}if(l&3145728){let d=n.flags&1048576?n.origin:void 0,f=d&&d.flags&3145728?d.types:n.types,h=yl(f,r);if(h===f&&a===n.aliasSymbol)return n;let D=a||n.aliasSymbol,w=a?s:yl(n.aliasTypeArguments,r);return l&2097152||d&&d.flags&2097152?bi(h,0,D,w):st(h,1,D,w)}if(l&4194304)return zl(Mt(n.type,r));if(l&8388608){let d=a||n.aliasSymbol,f=a?s:yl(n.aliasTypeArguments,r);return gl(Mt(n.objectType,r),Mt(n.indexType,r),n.accessFlags,void 0,d,f)}if(l&16777216)return P1(n,Dp(n.mapper,r),!1,a,s);if(l&33554432){let d=Mt(n.baseType,r);if(by(n))return Vv(d);let f=Mt(n.constraint,r);return d.flags&8650752&&my(f)?D1(d,f):f.flags&3||Ni(Im(d),Im(f))?d:d.flags&8650752?D1(d,f):bi([f,d])}return n}function MC(n){return n.flags&402915263?n:n.permissiveInstantiation||(n.permissiveInstantiation=Mt(n,Ks))}function Im(n){return n.flags&402915263?n:(n.restrictiveInstantiation||(n.restrictiveInstantiation=Mt(n,hc),n.restrictiveInstantiation.restrictiveInstantiation=n.restrictiveInstantiation),n.restrictiveInstantiation)}function D1(n,r){return r.flags&3||r===n||n.flags&1?n:YO(n,r)}function P1(n,r,a,s,l){let d=n.root;if(d.outerTypeParameters){let f=qn(d.outerTypeParameters,w=>Np(w,r)),h=(a?"C":"")+Ls(f)+Wm(s,l),D=d.instantiations.get(h);if(!D){let w=os(d.outerTypeParameters,f),J=d.checkType,q=d.isDistributive?Vc(Np(J,w)):void 0;D=q&&J!==q&&q.flags&1179648?F1(q,Z=>Fk(d,Lm(J,Z,w),a),s,l):Fk(d,w,a,s,l),d.instantiations.set(h,D)}return D}return n}function k1(n){return console.debug("todo - isSimpleTupleType"),!1}function v1(n,r){return my(n)||r&&Ci(n)&&Tn(zm(n),my)}function Fk(n,r,a,s,l){let d,f,h=0;for(;;){if(h===1e3)return on(B,N.Type_instantiation_is_excessively_deep_and_possibly_infinite),kn;let w=Mt(id(n.checkType),r),J=Mt(n.extendsType,r);if(w===kn||J===kn)return kn;if(w===Ko||J===Ko)return Ko;let q=lD(n.node.checkType),Z=lD(n.node.extendsType),ie=k1(q)&&k1(Z)&&rr(q.elements)===rr(Z.elements),Ue=v1(w,ie),Xe;if(n.inferTypeParameters){let mn=ux(n.inferTypeParameters,void 0,0);r&&(mn.nonFixingMapper=Dp(mn.nonFixingMapper,r)),Ue||vp(mn.inferences,w,J,1536),Xe=r?Dp(mn.mapper,r):mn.mapper}let Dn=Xe?Mt(n.extendsType,Xe):J;if(!Ue&&!v1(Dn,ie)){if(!(Dn.flags&3)&&(w.flags&1||!Ni(MC(w),MC(Dn)))){(w.flags&1||a&&!(Dn.flags&131072)&&vu(MC(Dn),wn=>Ni(wn,MC(w))))&&(f||(f=[])).push(Mt(wt(n.node.trueType),Xe||r));let mn=wt(n.node.falseType);if(mn.flags&16777216){let wn=mn.root;if(wn.node.parent===n.node&&(!wn.isDistributive||wn.checkType===n.checkType)){n=wn;continue}if(D(mn,r))continue}d=Mt(mn,r);break}if(Dn.flags&3||Ni(Im(w),Im(Dn))){let mn=wt(n.node.trueType),wn=Xe||r;if(D(mn,wn))continue;d=Mt(mn,wn);break}}d=bt(16777216),d.root=n,d.checkType=Mt(n.checkType,r),d.extendsType=Mt(n.extendsType,r),d.mapper=r,d.combinedMapper=Xe,d.aliasSymbol=s||n.aliasSymbol,d.aliasTypeArguments=s?l:yl(n.aliasTypeArguments,r);break}return f?st(Fr(f,d)):d;function D(w,J){if(w.flags&16777216&&J){let q=w.root;if(q.outerTypeParameters){let Z=Dp(w.mapper,J),ie=qn(q.outerTypeParameters,Dn=>Np(Dn,Z)),Ue=os(q.outerTypeParameters,ie),Xe=q.isDistributive?Np(q.checkType,Ue):void 0;if(!Xe||Xe===q.checkType||!(Xe.flags&1179648))return n=q,r=Ue,s=void 0,l=void 0,q.aliasSymbol&&h++,!0}}return!1}}function F1(n,r,a,s){return n.flags&1048576&&a?st(qn(n.types,r),1,a,s):la(n,r)}function y7(n){let r=bc(n);return a(Wl(n)||r);function a(s){return s.flags&470810559?!0:s.flags&16777216?s.root.isDistributive&&s.checkType===r:s.flags&137363456?di(s.types,a):s.flags&8388608?a(s.objectType)&&a(s.indexType):s.flags&33554432?a(s.baseType)&&a(s.constraint):s.flags&268435456?a(s.type):!1}}function Ik(n){let r=Wl(n);return r?Ni(r,bc(n))?1:2:0}function I1(n){return!!(n.flags&1048576&&n.objectFlags&16777216&&Tn(n.types,I1)||n.flags&2097152&&T7(n))}function T7(n){let r=n.uniqueLiteralFilledInstantiation||(n.uniqueLiteralFilledInstantiation=Mt(n,so));return Vc(r)!==r}function h7(n,r){return r&1?n.resolvedStringIndexType||(n.resolvedStringIndexType=L1(n,1)):n.resolvedIndexType||(n.resolvedIndexType=L1(n,0))}function L1(n,r){let a=bt(4194304);return a.type=n,a.indexFlags=r,a}function Lk(n,r=0){return!!(n.flags&58982400||Mp(n)||as(n)&&(!y7(n)||Ik(n)===2)||n.flags&1048576&&!(r&4)&&I1(n)||n.flags&2097152&&no(n,465829888)&&Tn(n.types,Sl))}function zl(n,r=0){return by(n)?Vv(zl(n.baseType,r)):Lk(n,r)?h7(n,r):n.flags&1048576?bi(qn(n.types,a=>zl(a,r))):n.flags&2097152?st(qn(n.types,a=>zl(a,r))):Jn(n)&32?w1(n,r):n===Ko?Ko:n.flags&2?ct:n.flags&131073?Qt:_7(n,(r&2?128:402653316)|(r&1?0:2344),r===0)}function S7(n){let r=Si(4194304);return r.type=n,r}function x_(n,r,a){if(a||!(vl(n)&6)){let s=On(Jt(n)).nameType;if(!s){let l=ti(n.valueDeclaration);s=n.name==="default"?jl("default"):l&&$m(l)||(Ag(n)?void 0:jl(us(n)))}if(s&&s.flags&r)return s}return ct}function _7(n,r,a){let s=a&&(Jn(n)&7||n.aliasSymbol)?S7(n):void 0,l=qn(ya(n),f=>x_(f,r)),d=qn(Da(n),f=>f!==co&&A1(f.keyType,r)?f.keyType===sr&&r&8?Br:f.keyType:ct);return st(Kr(l,d),1,void 0,void 0,s)}function A1(n,r){return!!(n.flags&r||n.flags&2097152&&Tn(n.types,a=>A1(a,r)))}function Ak(n){if(n.flags&4194304){let r=Na(n.type);return Mp(r)?tR(r):zl(r)}if(n.flags&16777216&&console.debug("todo - getLowerBoundOfKeyType"),n.flags&1048576)return la(n,Ak,!0);if(n.flags&2097152){let r=n.types;return r.length===2&&r[0].flags&76&&r[1]===Sc?n:bi(Ia(n.types,Ak))}return n}function x7(n,r){let a=n.inferences.slice(r);return os(qn(a,s=>s.typeParameter),qn(a,()=>yr))}function b7(n,r){return n?RC(5,n,r):r}function Lm(n,r,a){return a?RC(5,Bd(n,r),a):Bd(n,r)}function BC(n,r,a){return n?RC(5,n,Bd(r,a)):Bd(r,a)}function C7(n){return!n.constraint&&!wk(n)||n.constraint===ys?n:n.restrictiveInstantiation||(n.restrictiveInstantiation=zc(n.symbol),n.restrictiveInstantiation.constraint=ys,n.restrictiveInstantiation)}function wk(n){return _i(Rr(n.symbol&&n.symbol.declarations,Al),vx)[0]}function w1(n,r){let a=bc(n),s=_l(n),l=Wl(n.target||n);if(!l&&!(r&2))return s;let d=[];ph(s)?Ym(s,h):Ym(Ak(s),h);let f=r&2?sa(st(d),D=>!(D.flags&5)):st(d);if(f.flags&1048576&&s.flags&1048576&&Ls(f.types)===Ls(s.types))return s;return f;function h(D){let w=l?Mt(l,BC(n.mapper,a,D)):D;d.push(w===sr?Br:w)}}function jC(n,r){return n.flags&465829888?Mt(n,r):n.flags&1048576?st(qn(n.types,a=>jC(a,r)),0):n.flags&2097152?bi(qn(n.types,a=>jC(a,r))):n}function E7(n){return!!(n.candidates||n.contraCandidates)||O1(n.typeParameter)}function O1(n){return!!(n.symbol&&Ln(n.symbol.declarations,r=>Al(r)&&r.default))}function Hc(n,r){return Wd(n,r,ra,ro)>=0}function JC(n,r,a){if(n&&no(n,465829888)){let s=dy(r);if(s&&a&1&&Tn(s.inferences,E7))return jC(n,s.nonFixingMapper);if(s?.returnMapper){let l=jC(n,s.returnMapper);return l.flags&1048576&&Hc(l.types,ln)&&Hc(l.types,Kn)?sa(l,d=>d!==ln&&d!==Kn):l}}return n}function b_(n,r){let a=ml(n,r),s=JC(a,n,r);if(s&&!(r&&r&2&&s.flags&8650752))return la(s,d=>Jn(d)&32?d:Na(d),!0)}function Ok(n,r){let a=Bi(n,0),s=Rr(a,l=>!v7(l,r));return s.length===1?s[0]:N7(s)}function N7(n){mD(Qe,"noImplicitAny")&&console.debug("todo - getIntersectedSignatures")}function D7(n){return!!(U(n)&512)||!!n.dotDotDotToken}function P7(n){return!!(n.flags&8)}function k7(n){return Tn(n.parameters,D7)}function Du(n){if(k7(n.declaration))return!0;if(Rc(n)){let r=vt(n.parameters[n.parameters.length-1]);return!Ci(r)||r.target.hasRestElement}return!1}function cc(n){let r=n.parameters.length;if(Rc(n)){let a=vt(n.parameters[r-1]);if(Ci(a))return r+a.target.fixedLength-(a.target.hasRestElement?0:1)}return r}function v7(n,r){let a=0;for(;a<(r.parameters?.length??0);a++){let s=r.parameters[a];if(s.initializer||s.dotDotDotToken||JI(s))break}return!Du(n)&&cc(n)<a}function QT(n){let r=rd(n);if(r)return r;let a=b_(n,1);if(!a)return;if(!(a.flags&1048576))return Ok(a,n);let s,l=a.types;for(let d of l){let f=Ok(d,n);if(f)if(!s)s=[f];else if(WC(s[0],f,!1,!0,!0,UC))s.push(f);else return}if(s)return s.length===1?s[0]:R1(s[0],s)}function UC(n,r){return Yl(n,r,fa)?-1:0}function C_(n){let r=cd(n.declaration,n.typeParameters,n.thisParameter,n.parameters,void 0,void 0,n.minArgumentCount,n.flags&1295);return r.target=n.target,r.mapper=n.mapper,r.compositeSignatures=n.compositeSignatures,r.compositeKind=n.compositeKind,r}function R1(n,r){let a=C_(n);return a.compositeSignatures=r,a.compositeKind=1048576,a.target=void 0,a.mapper=void 0,a}function Hl(n,r){let a=r&1,s=r&2;if(s||n.resolvedMinArgumentCount===void 0){let l;if(su(n.declaration,512))l=0;else if(Rc(n)){let d=vt(n.parameters[n.parameters.length-1]);if(l=n.parameters.length-1,Ci(d)){let f=uc(d.target.elementFlags,D=>!(D&1)),h=f<0?d.target.fixedLength:f;h>0&&(l=n.parameters.length-1+h)}}if(l===void 0&&(l=n.minArgumentCount),s)return l;for(let d=l-1;d>=0;d--){let f=Pu(n,d);if(sa(f,M1).flags&131072)break;l=d}n.resolvedMinArgumentCount=l}return n.resolvedMinArgumentCount}function M1(n){return!!(n.flags&16384)}function Pu(n,r){return Am(n,r)||pt}function Am(n,r){let a=n.parameters.length-(Rc(n)?1:0);if(r<a)return E_(n.parameters[r]);if(Rc(n)){let s=vt(n.parameters[a]),l=r-a;if(!Ci(s)||s.target.combinedFlags&12||l<s.target.fixedLength)return gl(s,xc(l))}}function Tl(n,r=!1,a=!0){return z&&a?Fp(n,r):n}function E_(n){let r=n.valueDeclaration;return Tl(vt(n),!1,!!r&&Gd(r))}function F7(n,r,a){let s=cc(n),l=cc(r),d=Hl(n),f=Hl(r),h=Du(n),D=Du(r);return!!(s===l&&d===f&&h===D||a&&d<=f)}function WC(n,r,a,s,l,d){if(n===r)return-1;if(!F7(n,r,a))return 0;if(rr(n.typeParameters)!==rr(r.typeParameters))return 0;if(r.typeParameters){let D=os(n.typeParameters,r.typeParameters);for(let w=0;w<r.typeParameters.length;w++){let J=n.typeParameters[w],q=r.typeParameters[w];if(!(J===q||d(Mt(rh(J),D)||yr,rh(q)||yr)&&d(Mt(kf(J),D)||yr,kf(q)||yr)))return 0}n=yy(n,D,!0)}let f=-1,h=cc(r);for(let D=0;D<h;D++){let w=Pu(n,D),J=Pu(r,D),q=d(J,w);if(!q)return 0;f&=q}if(!l){let D=qs(n),w=qs(r);f&=D||w?I7(D,w,d):d(Ii(n),Ii(r))}return f}function I7(n,r,a){return n&&r&&Hk(n,r)?n.type===r.type?-1:n.type&&r.type?a(n.type,r.type):0:0}function od(n){return ca(n)}function ca(n){return!!(Jn(n)&4)&&(n.target===W||n.target===be)}function wm(n){return!!(Jn(n)&4)&&n.target===he}function Rk(n){let r=!1;if(Jn(n)&65536){if(n.flags&1048576)if(Tn(n.types,Kp))r=!0;else for(let a of n.types)r||(r=Rk(a));else if(!od(n)){if(Bl(n))for(let a of sd(n)){let s=vt(a);if(Jn(s)&65536&&(r=Rk(s),!r)){let l=a.declarations?.find(d=>d.symbol.valueDeclaration?.parent===n.symbol.valueDeclaration);l&&(on(l,N.Object_literal_s_property_0_implicitly_has_an_1_type,Li(a),Xn(Nc(s))),r=!0)}}}}return r}function L7(n){return console.debug("todo - getExtractStringType - is this needed?"),sr}function pte(n){return n}function fy(n){let r=Es(n,me);if(r)return wt(r)}function Mk(n){let r=vo(n,!0);return r.kind===290&&r.elements.length===0}function A7(n,r){let a=rd(n);if(!a)return;let s=n.parameters.indexOf(r);return Pu(a,s)}function N_(n,r,a){if(po(n)&&n.parent.parent.kind===244){let f=n.parent.parent,h=Ar(f.expression,a);if(ca(h)&&h.resolvedTypeArguments)return Eo(h.resolvedTypeArguments);if(wm(h)){let D=nF(f)||pt;if(D.flags&1048576){let w=n.parent.declarations.indexOf(n),J=D.types.at(w)||pt;if(n.type){let q=wt(n.type);if(!Lp(J,q,n,f.expression))return kn}return J}else if(D===F)return fy(n);return D}}oo(n.parent)&&I.fail("implement me - getTypeForVariableLikeDeclaration");let s=Oc(n)&&!zB(n)||Nd(n)||M4(n),l=!1,d=fy(n);if(d)return Tl(d,s,l);if((je||mr(n))&&po(n)&&!oo(n.name)&&!(U(n)&2048)&&!(n.flags&33554432)){if(!n.initializer||w7(n.initializer))return Io;if(n.initializer&&Mk(n.initializer))return ui}if(Qi(n)){if(!n.symbol)return;let f=n.parent,h=A7(f,n);if(h)return h;let D=W1(n);if(D)return Tl(D,!1,l)}if(Uh(n)&&n.initializer){let f=Bk(n,YT(n,a));return Tl(f,s,l)}}function w7(n){let r=vo(n,!0);return r.kind===137||r.kind===89&&Is(r)===Bt}function Bk(n,r){let a=Om(r);if(mr(n)){if(B1(a))return ga(n,pt),pt;if(zC(a))return ga(n,xi),xi}return a}function YT(n,r,a){let s=QN(n);return cR(s)||(a?D_(s,a,void 0,r||0):Xa(s,r))}function O7(n){R7(n)}function R7(n){let r=n;for(;r;){if(jN(r))return Fs(n,N.Jump_target_cannot_cross_function_boundary);switch(r.kind){case 249:if(n.label&&r.label.text===n.label.text)return n.kind===251&&!cN(r.statement,!0)?Fs(n,N.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement):!1;break;case 256:if(n.kind===250&&!n.label)return!1;break;default:if(cN(r,!1)&&!n.label)return!1;break}r=r.parent}if(n.label){let a=n.kind===250?N.A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement:N.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement;return Fs(n,a)}else{let a=n.kind===250?N.A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement:N.A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement;return Fs(n,a)}}function D_(n,r,a,s){let l=n;VC(l,r,!1),M7(l,a);let d=Ar(n,s|1|(a?2:0));a&&a.intraExpressionInferenceSites&&(a.intraExpressionInferenceSites=void 0);let f=no(d,2944)&&KC(d,JC(r,n,void 0))?ta(d):d;return B7(),XT(),f}function KC(n,r){if(r){if(r.flags&3145728){let a=r.types;return Tn(a,s=>KC(n,s))}if(r.flags&58982400){let a=na(r)||yr;return no(a,4)&&no(n,128)||no(a,8)&&no(n,256)||no(a,64)&&no(n,2048)||no(a,4096)&&no(n,8192)||KC(n,a)}return!!(r.flags&406847616&&no(n,128)||r.flags&256&&no(n,256)||r.flags&2048&&no(n,2048)||r.flags&512&&no(n,512)||r.flags&4096&&no(n,8192))}return!1}function M7(n,r){Ze[ut]=n,Wn[ut]=r,ut++}function B7(){ut--}function jk(n){VC(n,ml(n,void 0),!0)}function VC(n,r,a){Ur[Pe]=n,ai[Pe]=r,qt[Pe]=a,Pe++}function XT(){Pe--}function fte(n){return n}function B1(n){return z?n===$o:n===F}function zC(n){let r=P_(n);return!!r&&B1(r)}function P_(n){return ca(n)?Lo(n)[0]:void 0}function Pp(){return ve.pop(),Ie.pop(),$e.pop()}function Jk(n){return n?pt:yr}function Nf(n,r,a,s){let l=rr(r);if(!l)return[];let d=rr(n);if(s||d>=a&&d<=l){let f=n?n.slice():[];for(let D=d;D<l;D++)f[D]=kn;let h=Jk(s);for(let D=d;D<l;D++){let w=kf(r[D]);s&&w&&(uy(w,yr)||uy(w,go))&&(w=pt),f[D]=w?Mt(w,os(r,f)):h}return f.length=r.length,f}return n&&n.slice()}function ad(n){let r=0;if(n)for(let a=0;a<n.length;a++)O1(n[a])||(r=a+1);return r}function Uk(n,r){return Nf(qn(n.typeArguments,wt),r,ad(r),mr(n))}function Lo(n){if(!n.resolvedTypeArguments){if(!kp(n,5))return Kr(n.target.outerTypeParameters,n.target.localTypeParameters?.map(()=>kn))||xe;let r=n.node,a=r?r.kind===166?Kr(n.target.outerTypeParameters,Uk(r,n.target.localTypeParameters)):r.kind===161?[wt(r.elementType)]:qn(r.elements,wt):xe;Pp()?n.resolvedTypeArguments??(n.resolvedTypeArguments=n.mapper?yl(a,n.mapper):a):(n.resolvedTypeArguments??(n.resolvedTypeArguments=Kr(n.target.outerTypeParameters,n.target.localTypeParameters?.map(()=>kn)||xe)),on(n.node||B,n.target.symbol?N.Type_arguments_for_0_circularly_reference_themselves:N.Tuple_type_arguments_circularly_reference_themselves,n.target.symbol&&Li(n.target.symbol)))}return n.resolvedTypeArguments}function HC(n,r){for(let a=ve.length-1;a>=ge;a--){if(j7(ve[a],Ie[a]))return-1;if(ve[a]===n&&Ie[a]===r)return a}return-1}function j7(n,r){switch(r){case 0:return!!On(n).type;case 2:return!!On(n).declaredType;case 3:return!!n.resolvedReturnType;case 4:return!!n.immediateBaseConstraint;case 5:return!!n.resolvedTypeArguments;case 6:return!!n.baseTypesResolved;case 7:return!!On(n).writeType;case 8:return _t(n).parameterInitializerContainsUndefined!==void 0}return I.assertNever(r)}function kp(n,r){let a=HC(n,r);if(a>=0){let{length:s}=ve;for(let l=a;l<s;l++)$e[l]=!1;return!1}return ve.push(n),$e.push(!0),Ie.push(r),!0}function J7(n,r,a){return n?(a&&LC(r,n),Nc(n)):(n=Qi(r)&&r.dotDotDotToken?xi:pt,n)}function qC(n,r){return J7(N_(n,!0,0),n,r)}function U7(n){let r=_t(n);return r.containsArgumentsReference===void 0&&(r.flags&512?r.containsArgumentsReference=!0:r.containsArgumentsReference=a(n.body)),r.containsArgumentsReference;function a(s){if(!s)return!1;switch(s.kind){case 89:return s.text===Kt.name&&qw(s)===Kt;case 152:case 154:return s.name.kind===147&&a(s.name);case 286:case 281:return a(s.expression);case 174:return a(s.initializer);default:return!mI(s)&&!of(s)&&!!_o(s,a)}}}function j1(n){mi(n)&&Ln(n,r=>{uN(r)&&yt(r)})}function J1(n,r){switch(n.text){case"any":case"unknown":case"never":case"number":case"bigint":case"boolean":case"string":case"symbol":case"void":case"object":case"undefined":on(n,r,n.text)}}function W7(n){return yv(n)!==ea}function U1(n){Rm(n),n.expression&&wd(n.expression,N.Type_expected),yt(n.constraint),yt(n.default);let r=Ep(An(n));na(r),W7(r)||on(n.default,N.Type_parameter_0_has_a_circular_default,Xn(r));let a=As(r),s=kf(r);a&&s&&Ap(s,Lf(Mt(a,Bd(r,s)),s),n.default,N.Type_0_does_not_satisfy_the_constraint_1),mh(n),i(()=>J1(n.name,N.Type_parameter_name_cannot_be_0))}function K7(n){let r=!1;if(n)for(let s=0;s<n.length;s++){let l=n[s];U1(l),i(a(l,s))}function a(s,l){return()=>{s.default?(r=!0,V7(s.default,n,l)):r&&on(s,N.Required_type_parameters_may_not_follow_optional_type_parameters);for(let d=0;d<l;d++)n[d].symbol===s.symbol&&on(s.name,N.Duplicate_identifier_0,bs(s.name))}}}function V7(n,r,a){s(n);function s(l){if(l.kind===166){let d=S_(l);if(d.flags&262144)for(let f=a;f<r.length;f++)d.symbol===An(r[f])&&on(l,N.Type_parameter_defaults_can_only_reference_previously_declared_type_parameters)}_o(l,s)}}function z7(n){let r;n.typeExpression||(r=on(n.name,N.LPCDoc_var_tag_should_have_a_type_annotation));let a=n.parent;if(!r&&Tn(a.tags,s=>!LL(s))&&(r=on(n.name,N.LPCDoc_var_tags_must_be_in_their_own_LPCDoc_comment)),!r)if(oa(n.name))r=on(n.name,N.LPCDoc_var_tag_should_provide_a_variable_name);else{let s=cn(n.name)?n.name:n.name.right,l=Lr(n.name,s,3,N.Cannot_find_name_0,!1,!0);if(l){let d=Dt(l.valueDeclaration),f=Dt(n);d==f&&(r=on(n.name,N.LPCDoc_var_tags_can_only_annotate_inherited_variables_0_is_a_local_variable,s.text))}}yt(n.typeExpression)}function H7(n){n.typeExpression||on(n.name,N.JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags),n.name&&J1(n.name,N.Type_alias_name_cannot_be_0),yt(n.typeExpression),K7(Vh(n))}function q7(n){yt(n.constraint);for(let r of n.typeParameters)yt(r)}function G7(n){yt(n.typeExpression)}function $7(n){yt(n.typeExpression)}function Q7(n){yt(n.typeExpression)}function Y7(n){yt(n.typeExpression)}function X7(n){i(r),FC(n);function r(){n.type||ga(n,pt)}}function Z7(n){let r=Rr($p(n),Os);if(!rr(r))return;let a=mr(n),s=new Set,l=new Set;if(Ln(n.parameters,({name:f},h)=>{f&&cn(f)&&s.add(f.text),f&&oo(f)&&l.add(h)}),U7(n)){let f=r.length-1,h=r[f];a&&h&&cn(h.name)&&h.typeExpression&&h.typeExpression.type&&!s.has(h.name.text)&&!l.has(f)&&!ca(wt(h.typeExpression.type))&&on(h.name,N.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_had_an_array_type,Mo(h.name))}else Ln(r,({name:f,isNameFirst:h},D)=>{l.has(D)||cn(f)&&s.has(f.text)||(ol(f)?a&&on(f,N.Qualified_name_0_is_not_allowed_without_a_leading_param_object_1,ju(f),ju(f.left)):h||nw(a,f,N.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name,Mo(f)))})}function Wk(n){return dS(n)&&ww(n)}function GC(n){let r=n.arguments||xe,a=mF(r);if(a>=0){let s=r.slice(0,a);for(let l=a;l<r.length;l++){let d=r[l],f=d.kind===294&&(Mn?Ar(d.expression):Xa(d.expression));s.push(d)}return s}return r}function Om(n){return n.flags&128&&If(n)?sr:n.flags&256&&If(n)?Xi:n.flags&2048&&If(n)?vr:n.flags&512&&If(n)?Fi:n.flags&1048576?la(n,Om):n}function Kk(n,r,a){return console.warn("todo - getRestTypeAtPosition"),pt}function W1(n){let r=n.parent;if(!Wk(r))return;let a=Yp(r);if(a&&a.arguments){let l=GC(a),d=r.parameters.indexOf(n);if(n.dotDotDotToken)return pF(l,d,l.length,pt,void 0,0);let f=_t(a),h=f.resolvedSignature;f.resolvedSignature=$r;let D=d<l.length?Om(Ar(l[d])):n.initializer?void 0:F;return f.resolvedSignature=h,D}let s=QT(r);if(s){let l=r.parameters.indexOf(n);return n.dotDotDotToken&&ko(r.parameters)===n?Kk(s,l):Am(s,l)}}function Vk(n,r){let a=U(n);if(n.parent.kind!==170&&n.parent.kind!==274&&n.flags&33554432){let s=cb(n);s&&s.flags&128&&!(a&4096)&&(a|=2048),a|=4096}return a&r}function e8(n){function r(Bn,Fn){return Fn!==void 0&&Fn.parent===Bn[0].parent?Fn:Bn[0]}function a(Bn,Fn,nt,ft,ur){if((ft^ur)!==0){let yo=Vk(r(Bn,Fn),nt);Ln(Bn,zi=>{let Jr=Vk(zi,nt)^yo})}}function s(Bn,Fn,nt,ft){}let l=6150,d=0,f=l,h=!1,D=!0,w=!1,J,q,Z,ie=n.declarations,Ue=(n.flags&16384)!==0,Xe=!1,Dn=!1,mn=!1,wn=[];if(ie)for(let Bn of ie){let Fn=Bn,nt=Fn.flags&33554432,ft=Fn.parent&&Fn.parent.kind===163||nt;if(ft&&(Z=void 0),(Fn.kind===170||Fn.kind===274)&&!nt&&(mn=!0),Fn.kind===169||Fn.kind===154||Fn.kind===156){wn.push(Fn);let ur=Vk(Fn,l);d|=ur,f&=ur;let _r=Qp(Fn.body);_r&&J&&(Ue?Dn=!0:Xe=!0),_r?J||(J=Fn):w=!0,Z=Fn,ft||(q=Fn)}}if(Xe&&Ln(wn,Bn=>{on(ti(Bn)||Bn,N.Duplicate_function_implementation)}),mn&&!Ue&&n.flags&16&&ie&&Ln(ie,Bn=>{let Fn=Bn.kind===170?N.Class_declaration_cannot_implement_overload_list_for_0:Bn.kind===169?N.Function_with_bodies_can_only_merge_with_classes_that_are_ambient:void 0;Fn&&Bo(on(ti(Bn)||Bn,Fn,us(n)))}),w&&(ie&&(a(ie,J,l,d,f),void 0),J)){let Bn=gy(n),Fn=Mi(J);for(let nt of Bn)if(!t8(Fn,nt)){let ft=Fn.declaration&&_d(Fn.declaration)?Fn.declaration.parent.tagName:Fn.declaration;Bo(on(ft,N.This_overload_signature_is_not_compatible_with_its_implementation_signature),yi(nt.declaration,N.The_implementation_signature_is_declared_here));break}}}function K1(n){return os(n,void 0)}function n8(n){return yy(n,K1(n.typeParameters),!0)}function k_(n){return n.typeParameters?n.erasedSignatureCache||(n.erasedSignatureCache=n8(n)):n}function t8(n,r){let a=k_(n),s=k_(r),l=Ii(a),d=Ii(s);return d===et||Yl(d,l,vs)||Yl(l,d,vs)?r8(a,s,!0):!1}function r8(n,r,a){return Gk(n,r,a?4:0,!1,void 0,void 0,pl,void 0)!==0}function $C(n){if(!n.typeParameters&&(!n.thisParameter||cs(E_(n.thisParameter)))&&n.parameters.length===1&&Rc(n)){let r=E_(n.parameters[0]);return!!((ca(r)?Lo(r)[0]:r).flags&131073&&Ii(n).flags&3)}return!1}function i8(n){return ME(n,qn(n.typeParameters,r=>r.target&&!As(r.target)?r.target:r),mr(n.declaration))}function o8(n){return n.typeParameters?n.canonicalSignatureCache||(n.canonicalSignatureCache=i8(n)):n}function zk(n,r,a){let s=cc(n),l=cc(r),d=LE(n),f=LE(r),h=f?l-1:l,D=d?h:Math.min(s,h);for(let w=0;w<D;w++)a(Pu(n,w),Pu(r,w));f&&a(Kk(n,D,!1),f)}function V1(n,r,a,s){let l=ux(n.typeParameters,n,0,s),d=LE(r),f=a&&(d&&d.flags&262144?a.nonFixingMapper:a.mapper),h=f?yy(r,f):r;return zk(h,n,(D,w)=>{vp(l.inferences,D,w)}),a||qk(r,n,(D,w)=>{vp(l.inferences,D,w,128)}),ME(n,H1(l),mr(r.declaration))}function Hk(n,r){return n.kind===r.kind&&n.parameterIndex===r.parameterIndex}function qk(n,r,a){let s=qs(r);if(s){let d=qs(n);if(d&&Hk(d,s)&&d.type&&s.type){a(d.type,s.type);return}}let l=Ii(r);Vl(l)&&a(Ii(n),l)}function a8(n){switch(n.parent.kind){case 271:case 151:case 169:case 270:case 158:case 154:case 156:let r=n.parent;if(n===r.type)return r;case 188:return Ux(n)}}function s8(n){let r=a8(n);if(!r){on(n,N.A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods);return}let a=Mi(r),s=qs(a);if(!s)return;yt(n.type);let{parameterName:l}=n;if(s.parameterIndex>=0){if(Rc(a)&&s.parameterIndex===a.parameters.length-1)on(l,N.A_type_predicate_cannot_reference_a_rest_parameter);else if(s.type){let d=()=>ci(void 0,N.A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type);Ap(s.type,vt(a.parameters[s.parameterIndex]),n.type,void 0,d)}}else if(l){let d=!1;for(let{name:f}of r.parameters)if(oo(f)&&z1(f,l,s.parameterName)){d=!0;break}d||on(n.parameterName,N.Cannot_find_parameter_0,s.parameterName)}}function z1(n,r,a){for(let s of n.elements){if(jg(s))continue;let l=s.name;if(l.kind===89&&l.text===a)return on(r,N.A_type_predicate_cannot_reference_element_0_in_a_binding_pattern,a),!0;if(l.kind===265&&z1(l,r,a))return!0}}function c8(n,r){let a,s=[];for(let d of n){let f=qs(d);if(f){if(f.kind!==1||a&&!Hk(a,f))return;a=f,s.push(f.type)}else{let h=r!==2097152?Ii(d):void 0;if(h!==$a&&h!==ln)return}}if(!a)return;let l=ow(s,r);return ZT(a.kind,a.parameterName,a.parameterIndex,l)}function ZT(n,r,a,s){return{kind:n,parameterName:r,parameterIndex:a,type:s}}function l8(n,r){return ZT(n.kind,n.parameterName,n.parameterIndex,Mt(n.type,r))}function qs(n){if(!n.resolvedTypePredicate){if(n.target){let r=qs(n.target);n.resolvedTypePredicate=r?l8(r,n.mapper):Ri}else if(n.compositeSignatures)n.resolvedTypePredicate=c8(n.compositeSignatures,n.compositeKind)||Ri;else{let r=n.declaration&&rl(n.declaration),a;if(!r){let s=rd(n.declaration);s&&n!==s&&(a=qs(s))}if(r||a)n.resolvedTypePredicate=r&&fm(r)?u8(r,n):a||Ri;else if(n.declaration&&pc(n.declaration)&&(!n.resolvedReturnType||n.resolvedReturnType.flags&16)&&cc(n)>0){let{declaration:s}=n;n.resolvedTypePredicate=Ri,n.resolvedTypePredicate=d8(s)||Ri}else n.resolvedTypePredicate=Ri}I.assert(!!n.resolvedTypePredicate)}return n.resolvedTypePredicate===Ri?void 0:n.resolvedTypePredicate}function u8(n,r){let a=n.parameterName,s=n.type&&wt(n.type);return a.kind===260?ZT(0,void 0,void 0,s):ZT(1,a.text,uc(r.parameters,l=>l.name===a.text),s)}function d8(n){if(Ac(n)!==0)return;let a;if(n.body&&n.body.kind!==236)a=n.body;else if(Xd(n.body,l=>{if(a||!l.expression)return!0;a=l.expression})||!a||hk(n))return;return p8(n,a)}function p8(n,r){if(r=vo(r,!0),!!(Xa(r).flags&16))return Ln(n.parameters,(s,l)=>{let d=vt(s.symbol);if(!d||d.flags&16||!cn(s.name)||aO(s.symbol)||Dx(s))return;let f=f8(n,r,s,d);if(f)return ZT(1,s.name.text,l,f)})}function f8(n,r,a,s){let l=r.flowNode||r.parent.kind===248&&r.parent.flowNode||wl(2,void 0,void 0),d=wl(32,r,l),f=Rf(a.name,s,s,n,d);if(f===s)return;let h=wl(64,r,l);return Rf(a.name,s,f,n,h).flags&131072?f:void 0}function H1(n){let r=[];for(let a=0;a<n.inferences.length;a++)r.push(hF(n,a));return r}function m8(n,r){return r===li?n===r:uy(n,r)||!!(r.flags&4&&n.flags&128||r.flags&8&&n.flags&256)}function g8(n,r){return!!(n.flags&524288&&r.flags&524288&&n.symbol&&n.symbol===r.symbol||n.aliasSymbol&&n.aliasTypeArguments&&n.aliasSymbol===r.aliasSymbol)}function q1(n){return!!_t(n).skipDirectInference}function G1(n){return!!(n.symbol&&Tn(n.symbol.declarations,q1))}function y8(n,r){return Ci(r)&&T8(r,0)===gl(n,xc(0))&&!Ec(r,"1")}function T8(n,r){let a=Ec(n,""+r);if(a)return a;if(lc(n,Ci))return $1(n,r,Qe.noUncheckedIndexedAccess?Gt:void 0)}function h8(n){return n.fixedLength+Y_(n,3)}function $1(n,r,a){return la(n,s=>{let l=s,d=lR(l);return d?a&&r>=h8(l.target)?st([d,a]):d:Gt})}function eh(n,r,a=0){return!!(n===r||n.flags&3145728&&Tn(n.types,s=>eh(s,r,a))||a<3&&n.flags&16777216&&(eh(Km(n),r,a+1)||eh(Vm(n),r,a+1)))}function Q1(n,r,a){if(n.flags&1048576||n.flags&2097152&&!Lk(n)){let s=qn(n.types,l=>xl(gl(l,r),a));return n.flags&2097152||a?bi(s):st(s)}}function S8(n){let r=Ei();Ym(n,s=>{if(!(s.flags&128))return;let l=s.value,d=to(4,l);d.links.type=pt,s.symbol&&(d.declarations=s.symbol.declarations,d.valueDeclaration=s.symbol.valueDeclaration),r.set(l,d)});let a=n.flags&4?[Op(sr,go,!1)]:xe;return Gs(void 0,r,xe,xe,a)}function _8(n,r){return!(r.target.combinedFlags&8)&&r.target.minLength>n.target.minLength||!r.target.hasRestElement&&(n.target.hasRestElement||r.target.fixedLength<n.target.fixedLength)}function x8(n,r){return Ci(n)&&Ci(r)?_8(n,r):!!qv(n,r,!1,!0)&&!!qv(r,n,!1,!1)}function b8(n,r){return jp(n)===jp(r)&&di(n.target.elementFlags,(a,s)=>(a&12)===(r.target.elementFlags[s]&12))}function C8(n){let r=n.typeParameters;if(r){if(n.baseSignatureCache)return n.baseSignatureCache;let a=K1(r),s=os(r,qn(r,d=>As(d)||yr)),l=qn(r,d=>Mt(d,s)||yr);for(let d=0;d<r.length-1;d++)l=yl(l,s);return l=yl(l,a),n.baseSignatureCache=yy(n,os(r,l),!0)}return n}function Y1(n){return Ee?mC(n,li):Xl(n,524288)}function vp(n,r,a,s=0,l=!1){let d=!1,f,h=2048,D,w,J,q=0;Z(r,a);function Z(We,Se){if(!(!Vl(Se)||by(Se))){if(We===Ko||We===St){let tt=f;f=We,Z(Se,Se),f=tt;return}if(We.aliasSymbol&&We.aliasSymbol===Se.aliasSymbol){if(We.aliasTypeArguments){let tt=On(We.aliasSymbol).typeParameters,Rt=ad(tt),Tt=Nf(We.aliasTypeArguments,tt,Rt,mr(We.aliasSymbol.valueDeclaration)),ei=Nf(Se.aliasTypeArguments,tt,Rt,mr(We.aliasSymbol.valueDeclaration));wn(Tt,ei,qR(We.aliasSymbol))}return}if(We===Se&&We.flags&3145728){for(let tt of We.types)Z(tt,tt);return}if(Se.flags&1048576){let[tt,Rt]=mn(We.flags&1048576?We.types:[We],Se.types,m8),[Tt,ei]=mn(tt,Rt,g8);if(ei.length===0)return;if(Se=st(ei),Tt.length===0){ie(We,Se,1);return}We=st(Tt)}else if(Se.flags&2097152&&!di(Se.types,eR)&&!(We.flags&1048576)){let[tt,Rt]=mn(We.flags&2097152?We.types:[We],Se.types,uy);if(tt.length===0||Rt.length===0)return;We=bi(tt),Se=bi(Rt)}if(Se.flags&41943040){if(by(Se))return;Se=id(Se)}if(Se.flags&8650752){if(G1(We))return;let tt=nt(Se);if(tt){if(Jn(We)&262144||We===gs)return;if(!tt.isFixed){let Tt=f||We;if(Tt===St)return;if((tt.priority===void 0||s<tt.priority)&&(tt.candidates=void 0,tt.contraCandidates=void 0,tt.topLevel=!0,tt.priority=s),s===tt.priority){if(y8(tt.typeParameter,Tt))return;l&&!d?Yr(tt.contraCandidates,Tt)||(tt.contraCandidates=Fr(tt.contraCandidates,Tt),RE(n)):Yr(tt.candidates,Tt)||(tt.candidates=Fr(tt.candidates,Tt),RE(n))}!(s&128)&&Se.flags&262144&&tt.topLevel&&!eh(a,Se)&&(tt.topLevel=!1,RE(n))}h=Math.min(h,s);return}let Rt=xl(Se,!1);if(Rt!==Se)Z(We,Rt);else if(Se.flags&8388608){let Tt=xl(Se.indexType,!1);if(Tt.flags&465829888){let ei=Q1(xl(Se.objectType,!1),Tt,!1);ei&&ei!==Se&&Z(We,ei)}}}if(Jn(We)&4&&Jn(Se)&4&&(We.target===Se.target||ca(We)&&ca(Se))&&!(We.node&&Se.node))wn(Lo(We),Lo(Se),Qv(We.target));else if(We.flags&4194304&&Se.flags&4194304)Bn(We.type,Se.type);else if((Ld(We)||We.flags&4)&&Se.flags&4194304){let tt=S8(We);Ue(tt,Se.type,256)}else if(We.flags&8388608&&Se.flags&8388608)Z(We.objectType,Se.objectType),Z(We.indexType,Se.indexType);else if(We.flags&268435456&&Se.flags&268435456)We.symbol===Se.symbol&&Z(We.type,Se.type);else if(We.flags&33554432)Z(We.baseType,Se),ie(Xv(We),Se,4);else if(Se.flags&16777216)Dn(We,Se,yo);else if(Se.flags&3145728)ur(We,Se.types,Se.flags);else if(We.flags&1048576){let tt=We.types;for(let Rt of tt)Z(Rt,Se)}else{if(We=Vc(We),as(We)&&as(Se)&&Dn(We,Se,zi),!(s&512&&We.flags&467927040)){let tt=Na(We);if(tt!==We&&!(tt.flags&2621440))return Z(tt,Se);We=tt}We.flags&2621440&&Dn(We,Se,Jr)}}}function ie(We,Se,tt){let Rt=s;s|=tt,Z(We,Se),s=Rt}function Ue(We,Se,tt){let Rt=s;s|=tt,Bn(We,Se),s=Rt}function Xe(We,Se,tt,Rt){let Tt=s;s|=Rt,ur(We,Se,tt),s=Tt}function Dn(We,Se,tt){let Rt=We.id+","+Se.id,Tt=D&&D.get(Rt);if(Tt!==void 0){h=Math.min(h,Tt);return}(D||(D=new Map)).set(Rt,-1);let ei=h;h=2048;let Dr=q;(w??(w=[])).push(We),(J??(J=[])).push(Se),xy(We,w,w.length,2)&&(q|=1),xy(Se,J,J.length,2)&&(q|=2),q!==3?tt(We,Se):h=-1,J.pop(),w.pop(),q=Dr,D.set(Rt,h),h=Math.min(h,ei)}function mn(We,Se,tt){let Rt,Tt;for(let ei of Se)for(let Dr of We)tt(Dr,ei)&&(Z(Dr,ei),Rt=Jf(Rt,Dr),Tt=Jf(Tt,ei));return[Rt?Rr(We,ei=>!Yr(Rt,ei)):We,Tt?Rr(Se,ei=>!Yr(Tt,ei)):Se]}function wn(We,Se,tt){let Rt=We.length<Se.length?We.length:Se.length;for(let Tt=0;Tt<Rt;Tt++)Tt<tt.length&&(tt[Tt]&7)===2?Bn(We[Tt],Se[Tt]):Z(We[Tt],Se[Tt])}function Bn(We,Se){l=!l,Z(We,Se),l=!l}function Fn(We,Se){te||s&1024?Bn(We,Se):Z(We,Se)}function nt(We){if(We.flags&8650752){for(let Se of n)if(We===Se.typeParameter)return Se}}function ft(We){let Se;for(let tt of We){let Rt=tt.flags&2097152&&fr(tt.types,Tt=>!!nt(Tt));if(!Rt||Se&&Rt!==Se)return;Se=Rt}return Se}function ur(We,Se,tt){let Rt=0;if(tt&1048576){let Tt,ei=We.flags&1048576?We.types:[We],Dr=new Array(ei.length),Ho=!1;for(let Hi of Se)if(nt(Hi))Tt=Hi,Rt++;else for(let Ai=0;Ai<ei.length;Ai++){let Ss=h;h=2048,Z(ei[Ai],Hi),h===s&&(Dr[Ai]=!0),Ho=Ho||h===-1,h=Math.min(h,Ss)}if(Rt===0){let Hi=ft(Se);Hi&&ie(We,Hi,1);return}if(Rt===1&&!Ho){let Hi=Co(ei,(Ai,Ss)=>Dr[Ss]?void 0:Ai);if(Hi.length){Z(st(Hi),Tt);return}}}else for(let Tt of Se)nt(Tt)?Rt++:Z(We,Tt);if(tt&2097152?Rt===1:Rt>0)for(let Tt of Se)nt(Tt)&&ie(We,Tt,1)}function _r(We,Se,tt){if(tt.flags&1048576||tt.flags&2097152){let Rt=!1;for(let Tt of tt.types)Rt=_r(We,Se,Tt)||Rt;return Rt}if(tt.flags&4194304){let Rt=nt(tt.type);if(Rt&&!Rt.isFixed&&!G1(We)){let Tt=_1(We,Se,tt);Tt&&ie(Tt,Rt.typeParameter,Jn(We)&262144?16:8)}return!0}if(tt.flags&262144){ie(zl(We,We.pattern?2:0),tt,32);let Rt=Rp(tt);if(Rt&&_r(We,Se,Rt))return!0;let Tt=qn(ya(We),vt),ei=qn(Da(We),Dr=>Dr!==co?Dr.type:ct);return Z(st(Kr(Tt,ei)),py(Se)),!0}return!1}function yo(We,Se){if(We.flags&16777216)Z(We.checkType,Se.checkType),Z(We.extendsType,Se.extendsType),Z(Km(We),Km(Se)),Z(Vm(We),Vm(Se));else{let tt=[Km(Se),Vm(Se)];Xe(We,tt,Se.flags,l?64:0)}}function zi(We,Se){Z(_l(We),_l(Se)),Z(py(We),py(Se));let tt=Wl(We),Rt=Wl(Se);tt&&Rt&&Z(tt,Rt)}function Jr(We,Se){if(Jn(We)&4&&Jn(Se)&4&&(We.target===Se.target||ca(We)&&ca(Se))){wn(Lo(We),Lo(Se),Qv(We.target));return}if(as(We)&&as(Se)&&zi(We,Se),Jn(Se)&32&&!Se.declaration.nameType){let tt=_l(Se);if(_r(We,Se,tt))return}if(!x8(We,Se)){if(od(We)){if(Ci(Se)){let tt=jp(We),Rt=jp(Se),Tt=Lo(Se),ei=Se.target.elementFlags;if(Ci(We)&&b8(We,Se)){for(let Hi=0;Hi<Rt;Hi++)Z(Lo(We)[Hi],Tt[Hi]);return}let Dr=Ci(We)?Math.min(We.target.fixedLength,Se.target.fixedLength):0,Ho=Math.min(Ci(We)?Y_(We.target,3):0,Se.target.hasRestElement?Y_(Se.target,3):0);for(let Hi=0;Hi<Dr;Hi++)Z(Lo(We)[Hi],Tt[Hi]);if(!Ci(We)||tt-Dr-Ho===1&&We.target.elementFlags[Dr]&4){let Hi=Lo(We)[Dr];for(let Ai=Dr;Ai<Rt-Ho;Ai++)Z(ei[Ai]&8?aa(Hi):Hi,Tt[Ai])}else{let Hi=Rt-Dr-Ho;if(Hi===2){if(ei[Dr]&ei[Dr+1]&8){let Ai=nt(Tt[Dr]);Ai&&Ai.impliedArity!==void 0&&(Z(fh(We,Dr,Ho+tt-Ai.impliedArity),Tt[Dr]),Z(fh(We,Dr+Ai.impliedArity,Ho),Tt[Dr+1]))}else if(ei[Dr]&8&&ei[Dr+1]&4){let Ai=nt(Tt[Dr])?.typeParameter,Ss=Ai&&na(Ai);if(Ss&&Ci(Ss)&&!Ss.target.hasRestElement){let $c=Ss.target.fixedLength;Z(fh(We,Dr,tt-(Dr+$c)),Tt[Dr]),Z(nx(We,Dr+$c,Ho),Tt[Dr+1])}}else if(ei[Dr]&4&&ei[Dr+1]&8){let Ai=nt(Tt[Dr+1])?.typeParameter,Ss=Ai&&na(Ai);if(Ss&&Ci(Ss)&&!Ss.target.hasRestElement){let $c=Ss.target.fixedLength,Zl=tt-Y_(Se.target,3),Jd=Zl-$c,Qc=dd(Lo(We).slice(Jd,Zl),We.target.elementFlags.slice(Jd,Zl),!1,We.target.labeledElementDeclarations&&We.target.labeledElementDeclarations.slice(Jd,Zl));Z(nx(We,Dr,Ho+$c),Tt[Dr]),Z(Qc,Tt[Dr+1])}}}else if(Hi===1&&ei[Dr]&8){let Ai=Se.target.elementFlags[Rt-1]&2,Ss=fh(We,Dr,Ho);ie(Ss,Tt[Dr],Ai?2:0)}else if(Hi===1&&ei[Dr]&4){let Ai=nx(We,Dr,Ho);Ai&&Z(Ai,Tt[Dr])}}for(let Hi=0;Hi<Ho;Hi++)Z(Lo(We)[tt-Hi-1],Tt[Rt-Hi-1]);return}if(ca(Se)){ka(We,Se);return}}Gi(We,Se),dr(We,Se,0),dr(We,Se,1),ka(We,Se)}}function Gi(We,Se){let tt=sd(Se);for(let Rt of tt){let Tt=bo(We,Rt.name);Tt&&!Tn(Tt.declarations,q1)&&Z(td(vt(Tt),!!(Tt.flags&16777216)),td(vt(Rt),!!(Rt.flags&16777216)))}}function dr(We,Se,tt){let Rt=Bi(We,tt),Tt=Rt.length;if(Tt>0){let ei=Bi(Se,tt),Dr=ei.length;for(let Ho=0;Ho<Dr;Ho++){let Hi=Math.max(Tt-Dr+Ho,0);Ja(C8(Rt[Hi]),k_(ei[Ho]))}}}function Ja(We,Se){if(!(We.flags&512)){let tt=d,Rt=Se.declaration?Se.declaration.kind:0;d=d||Rt===154||Rt===156,zk(We,Se,Fn),d=tt}qk(We,Se,Z)}function ka(We,Se){let tt=Jn(We)&Jn(Se)&32?8:0,Rt=Da(Se);if(xE(We))for(let Tt of Rt){let ei=[];for(let Dr of ya(We))if(Sp(x_(Dr,384),Tt.keyType)){let Ho=vt(Dr);ei.push(Dr.flags&16777216?Y1(Ho):Ho)}for(let Dr of Da(We))Sp(Dr.keyType,Tt.keyType)&&ei.push(Dr.type);ei.length&&ie(st(ei),Tt.type,tt)}for(let Tt of Rt){let ei=_p(We,Tt.keyType);ei&&ie(ei.type,Tt.type,tt)}}}function Gk(n,r,a,s,l,d,f,h){if(n===r)return-1;if(!(a&16&&$C(n))&&$C(r))return-1;if(a&16&&$C(n)&&!$C(r))return 0;let D=cc(r);if(!Du(r)&&(a&8?Du(n)||cc(n)>D:Hl(n)>D))return s&&!(a&8)&&l(N.Target_signature_provides_too_few_arguments_Expected_0_or_more_but_got_1,Hl(n),D),0;n.typeParameters&&n.typeParameters!==r.typeParameters&&(r=o8(r),n=V1(n,r,void 0,f));let J=cc(n),q=gh(n),Z=gh(r);(q||Z)&&Mt(q||Z,h);let ie=r.declaration?r.declaration.kind:0,Ue=!(a&3)&&te&&ie!==154&&ie!==156,Xe=-1,Dn=q||Z?Math.min(J,D):Math.max(J,D),mn=q||Z?Dn-1:-1;for(let wn=0;wn<Dn;wn++){let Bn=wn===mn?Z1(n,wn):Am(n,wn),Fn=wn===mn?Z1(r,wn):Am(r,wn);if(Bn&&Fn&&(Bn!==Fn||a&8)){let nt=a&3||X1(n,wn)?void 0:wp(Bn),ft=a&3||X1(r,wn)?void 0:wp(Fn),_r=nt&&ft&&!qs(nt)&&!qs(ft)&&sx(Bn,50331648)===sx(Fn,50331648)?Gk(ft,nt,a&8|(Ue?2:1),s,l,d,f,h):!(a&3)&&!Ue&&f(Bn,Fn,!1)||f(Fn,Bn,s);if(_r&&a&8&&wn>=Hl(n)&&wn<Hl(r)&&f(Bn,Fn,!1)&&(_r=0),!_r)return s&&l(N.Types_of_parameters_0_and_1_are_incompatible,w_(n,wn),w_(r,wn)),0;Xe&=_r}}if(!(a&4)){let wn=YC(r)?pt:Ii(r);if(wn===et||wn===pt)return Xe;let Bn=YC(n)?pt:Ii(n),Fn=qs(r);if(Fn){let nt=qs(n);if(nt)Xe&=E8(nt,Fn,s,l,f);else if(HB(Fn))return s&&l(N.Signature_0_must_be_a_type_predicate,oh(n)),0}else Xe&=a&1&&f(wn,Bn,!1)||f(Bn,wn,s),!Xe&&s&&d&&d(Bn,wn)}return Xe}function E8(n,r,a,s,l){return console.info("todo - compareTypePredicateRelatedTo"),-1}function my(n){return!!nh(n)}function $k(n){return!!(nh(n)&4194304)}function nh(n){return n.flags&3145728?(n.objectFlags&2097152||(n.objectFlags|=2097152|Yc(n.types,(r,a)=>r|nh(a),0)),n.objectFlags&12582912):n.flags&33554432?(n.objectFlags&2097152||(n.objectFlags|=2097152|nh(n.baseType)|nh(n.constraint)),n.objectFlags&12582912):(n.flags&58982400||as(n)||Mp(n)?4194304:0)|(n.flags&63176704||RR(n)?8388608:0)}function X1(n,r){let a;return!!(n.target&&(a=Am(n.target,r))&&my(a))}function Z1(n,r){let a=Kk(n,r),s=a&&P_(a);return s&&cs(s)?pt:a}function mte(n,r){}function N8(n){!Rm(n)&&!rw(n.declarationList)&&v8(n),h_(n.declarationList)}function ew(n){if(n.kind,236,VF(n)){let r=ir;Ln(n.statements,yt),ir=r}else Ln(n.statements,yt);n.locals&&th(n)}function th(n){i(r);function r(){let a=Dt(n),s=nr.get(a.path);s||(s=[],nr.set(a.path,s)),s.push(n)}}function nw(n,r,a,...s){if(r.pos<0||r.end<0){if(!n)return;let l=nc(r);fE(n,"message"in a?lu(l,0,0,a,...s):yI(l,a));return}fE(n,"message"in a?yi(r,a,...s):Pg(Dt(r),r,a))}function v_(n){let r=XC(n,!1);return Un=n,ht=r,r}function tw(n){return n.id<=0&&(n.id=Q4,Q4++),n.id}function D8(n){return n===2?"private":n===4?"protected":"public"}function Rm(n){let r=P8(n);if(r!==void 0)return r;let a=du(n)?n.declarationList.flags&1:0,s,l,d,f,h=0,D=!1,w=!1;for(let J of n.modifiers){if(n.kind===153||n.kind===156)return Fs(J,N._0_modifier_cannot_appear_on_a_type_member,gi(J.kind));if(n.kind===150&&(J.kind!==125||!ia(n.parent)))return Fs(J,N._0_modifier_cannot_appear_on_an_index_signature,gi(J.kind));switch(J.kind){case 124:case 123:case 122:let q=D8(yg(J.kind));if(h&7)return Fs(J,N.Accessibility_modifier_already_seen);if(h&256)return Fs(J,N._0_modifier_must_precede_1_modifier,q,"static");if(h&8192)return Fs(J,N._0_modifier_must_precede_1_modifier,q,"readonly");h|=yg(J.kind);break;case 125:if(h&256)return Fs(J,N._0_modifier_already_seen,"static");if(n.kind===149)return Fs(J,N._0_modifier_cannot_appear_on_a_parameter,"static");h|=256,s=J;break}}return n.kind===149&&h&167&&oo(n.name)?Fs(n,N.A_parameter_property_may_not_be_declared_using_a_binding_pattern):n.kind===149&&h&167&&n.dotDotDotToken?Fs(n,N.A_parameter_property_cannot_be_declared_using_a_rest_parameter):!1}function P8(n){if(!n.modifiers)return!1;let r=k8(n);return r&&wd(r,N.Modifiers_cannot_appear_here)}function k8(n){switch(n.kind){case 152:case 153:case 154:case 156:case 150:case 270:case 271:case 149:case 148:case 169:case 242:return;case 174:case 175:case 173:return fr(n.modifiers,Gp);default:switch(n.kind){case 170:case 274:case 239:case 241:case 283:return fr(n.modifiers,Gp);default:I.assertNever(n)}}}function gte(n,r){let a=fr(n.modifiers,Gp);return a&&a.kind!==r?a:void 0}function v8(n){return!1}function rw(n){let r=n.declarations;return!1}function F8(n){return(po(n)||Oc(n)||Nd(n)||Qi(n))&&!!(Es(n,me)||mr(n)&&Gd(n)&&n.initializer&&Fx(n.initializer)&&rl(n.initializer))}function Qk(n,r){if(n=Mm(n),n.flags&8752)return vt(n);if(n.flags&7){if(jo(n)&262144){let s=n.links.syntheticOrigin;if(s&&Qk(s))return vt(n)}let a=n.valueDeclaration;if(a){if(F8(a))return vt(n);if(po(a)&&a.parent.parent.kind===244){let s=a.parent.parent,l=F_(s.expression,void 0);if(l)return Jp(13,l,Gt,void 0)}r&&Bo(r,yi(a,N._0_needs_an_explicit_type_annotation,Li(n)))}}}function F_(n,r){switch(n.kind){case 89:let a=ao(n.parent)?16:void 0,s=Um(Is(n,a));return Qk(s,r);case 71:return tv(n);case 286:{let l=F_(n.expression,r);if(l){let d=n.name,f;return f=bo(l,d.text),f&&Qk(f,r)}return}case 289:return F_(n.expression,r)}}function QC(n){let r=_t(n),a=r.effectsSignature;if(a===void 0){let s;n.parent.kind===247?s=F_(n.expression,void 0):n.expression.kind!==71&&(s=Ff(n.expression));let l=Bi(s&&Na(s)||yr,0),d=l.length===1&&!l[0].typeParameters?l[0]:Tn(l,iw)?ax(n):void 0;a=r.effectsSignature=d&&iw(d)?d:oc}return a===oc?void 0:a}function iw(n){return!!(qs(n)||n.declaration&&(Pa(n.declaration)||yr).flags&131072)}function ow(n,r,a){return r!==2097152?st(n,a):bi(n)}function I8(n,r){let a=Ac(n),s=[],l=hk(n),d=!1;if(Xd(n.body,f=>{let h=f.expression;if(h){if(h=vo(h,!0),h.kind===272&&h.expression.kind===89&&Xa(h.expression).symbol===at(n.symbol)&&!dS(n.symbol.valueDeclaration)){d=!0;return}let D=Xa(h,r&&r&-9);D.flags&131072&&(d=!0),bl(s,D)}else l=!0}),!(s.length===0&&!l&&(d||L8(n))))return z&&s.length&&l&&bl(s,Gt),s}function L8(n){switch(n.kind){case 270:case 283:return!0;default:return!1}}function YC(n){return n.compositeSignatures&&Tn(n.compositeSignatures,YC)||!n.resolvedReturnType&&HC(n,3)>=0}function aw(n,r){let a=Pa(n);if(a)return a;let s=xk(n);if(s&&!YC(s)){let d=Ii(s),f=Ac(n);return f&1?sa(d,h=>!!(h.flags&58998787)):f&2?sa(d,h=>!!(h.flags&58998787)):d}let l=Yp(n);if(l)return ml(l,r)}function I_(n,r){if(!n.body)return kn;let a=Ac(n),s=(a&2)!==0,l=(a&1)!==0,d,f,h,D=et;if(n.body.kind!==236){if(Pl(n)&&mi(n.body))return console.debug("todo - remove this hack"),pt;d=Xa(n.body,r&&r&-9),Pl(n)&&cn(n.body)&&Jn(d)&16&&(d=Ta(d.callSignatures)?.resolvedReturnType??d)}else{let w=I8(n,r);if(!w)return ct;if(w.length===0){let J=aw(n,void 0);return J&&(__(J,a)||et).flags&32768?Gt:et}d=st(w,2)}if(d||f||h){if(f&&LC(n,f,3),d&&LC(n,d,1),h&&LC(n,h,2),d&&un(d)||f&&un(f)||h&&un(h)){let w=xk(n),J=w?w===Mi(n)?l?void 0:d:JC(Ii(w),n,void 0):void 0;d=A8(d,J,s)}f&&(f=Nc(f)),d&&(d=Nc(d)),h&&(h=Nc(h))}return d||D}function sw(n,r){return KC(n,r)||(n=Om(n)),ta(n)}function A8(n,r,a){return n&&un(n)&&(n=sw(n,r)),n}function Ii(n){if(!n.resolvedReturnType){if(!kp(n,3))return kn;let r=n.target?Mt(Ii(n.target),n.mapper):n.compositeSignatures?Mt(ow(qn(n.compositeSignatures,Ii),n.compositeKind,2),n.mapper):Pa(n.declaration)||(oa(n.declaration.body)?pt:I_(n.declaration));if(n.flags&128&&(r=Fp(r)),!Pp()){if(n.declaration){let a=rl(n.declaration);if(a)on(a,N.Return_type_annotation_circularly_references_itself);else if(je){let s=n.declaration,l=ti(s);l?on(l,N._0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions,bs(l)):on(s,N.Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions)}}r=pt}n.resolvedReturnType??(n.resolvedReturnType=r)}return n.resolvedReturnType}function cw(n){let r=_t(n);if(r.isExhaustive===void 0){r.isExhaustive=0;let a=R8(n);r.isExhaustive===0&&(r.isExhaustive=a)}else r.isExhaustive===0&&(r.isExhaustive=!1);return r.isExhaustive}function w8(n){return!(n.flags&232352)}function O8(n,r){return n.flags&1048576?!Ln(n.types,a=>!Yr(r,a)):Yr(r,n)}function R8(n){let r=Xa(n.expression);if(!Ld(r))return!1;let a=EE(n);return!a.length||Tn(a,w8)?!1:O8(la(r,ta),a)}function XC(n,r){let a=0;for(;;){if(a++>100)return console.warn("Bailing out of reachable flow worker"),ht;if(n===Un)return ht;let s=n.flags;if(s&4096){if(!r){let l=tw(n),d=Le[l];return d!==void 0?d:Le[l]=XC(n,!0)}r=!1}if(s&1)return!1;if(s&368)n=n.antecedent;else if(s&512){let l=QC(n.node);if(l&&Ii(l).flags&131072)return!1;n=n.antecedent}else{if(s&4)return Tn(n.antecedent,l=>XC(l,!1));if(s&8){let l=n.antecedent;if(l===void 0||l.length===0)return!1;n=l[0]}else if(s&128){let l=n.node;if(l.clauseStart===l.clauseEnd&&cw(l.switchStatement))return!1;n=n.antecedent}else if(s&1024){Un=void 0;let l=n.node.target,d=l.antecedent;l.antecedent=n.node.antecedents;let f=XC(n.antecedent,!1);return l.antecedent=d,f}else return!(s&1)}}}function lw(n){let r=n.id||0;return r<0||r>=De.length?0:De[r]?.flags||0}function yte(n,r){return M8(n,r),!!(lw(n)&r)}function M8(n,r){if(!Qe.noCheck&&G2(Dt(n),Qe)||_t(n).calculatedFlags&r)return;switch(r){case 16:case 32:return f(n);case 128:case 256:case 2097152:return d(n);case 512:case 8192:case 65536:case 262144:return D(n);case 536870912:return w(n);case 4096:case 32768:case 16384:return q(n);default:return I.assertNever(r,`Unhandled node check flag calculation: ${I.formatNodeCheckFlags(r)}`)}function s(ie,Ue){let Xe=Ue(ie,ie.parent);if(Xe!=="skip")return Xe||eT(ie,Ue)}function l(ie){let Ue=_t(ie);if(Ue.calculatedFlags&r)return"skip";Ue.calculatedFlags|=2097536,f(ie)}function d(ie){s(ie,l)}function f(ie){let Ue=_t(ie);Ue.calculatedFlags|=48,ie.kind===71&&tv(ie)}function h(ie){let Ue=_t(ie);if(Ue.calculatedFlags&r)return"skip";Ue.calculatedFlags|=336384,w(ie)}function D(ie){s(ie,h)}function w(ie){let Ue=_t(ie);if(Ue.calculatedFlags|=536920064,cn(ie)&&Xp(ie)&&!(ii(ie.parent)&&ie.parent.name===ie)){let Xe=qc(ie,!0);Xe&&Xe!==eo&&uO(ie,Xe)}}function J(ie){let Ue=_t(ie);if(Ue.calculatedFlags&r)return"skip";Ue.calculatedFlags|=53248,Z(ie)}function q(ie){let Ue=Dg(tl(ie)?ie.parent:ie);s(Ue,J)}function Z(ie){w(ie)}}function B8(n){let r=n.valueDeclaration;return r&&Oc(r)&&!Es(r)&&!r.initializer&&(je||mr(r))}function j8(n,r){let a=r?.valueDeclaration&&(!B8(r)||Sd(r.valueDeclaration)&4096)&&uw(r)||Gt;return Rf(n,Io,a)}function uw(n){let r=L_(n),a=r&&Fd(r)[0];return a&&Ec(a,n.name)}function L_(n){return n.parent&&n.parent.flags&32?Ma(jd(n)):void 0}function dw(n,r,a,s,l){let d=ef(n);if(d===1)return td(a,!!(r&&r.flags&16777216));if(r&&!(r.flags&98311)&&!(r.flags&8192&&a.flags&1048576))return a;if(a===Io)return j8(n,r);a=vv(a,n,l);let f=!1;z&&r&&r.valueDeclaration&&ii(r.valueDeclaration)&&bI(r.valueDeclaration)&&q_(n)===q_(r.valueDeclaration)&&(f=!0);let h=Rf(n,a,f?Fp(a):a);return f&&!G_(a)&&G_(h)?(on(s,N.Property_0_is_used_before_being_assigned,Li(r)),a):d?Ql(h):h}function Fp(n,r=!1){I.assert(z);let a=r?wa:Gt;return n===a||n.flags&1048576&&n.types[0]===a?n:st([n,a])}function pw(n,r,a,s,l,d=!0){let f=d?n.kind===146?n.right:n.kind===266&&n.propertyName?n.propertyName:n.name:void 0;return fw(n,r,a,s,l,f)}function fw(n,r,a,s,l,d){return!(vl(l,a)&6)||r||s.flags&262144&&(s=s.isThisType?As(s):na(s)),!0}function Yk(n,r,a){let s=n&&n.flags&106500&&n.valueDeclaration;if(!s)return;let l=Qd(s,2),d=n.valueDeclaration&&Fc(n.valueDeclaration)&&yc(n.valueDeclaration.name);if(!(!l&&!d)&&!(r&&BN(r)&&!(n.flags&65536))){if(a){let f=It(r,pc);if(f&&f.symbol===n)return}(jo(n)&1?On(n).target:n).isReferenced=-1}}function mw(n,r){return!!r&&Cs(n)&&r===Is(im(n))}function J8(n,r,a,s){return!1}function U8(n){let r=_t(n);if(!(r.flags&1)){if(hS(n,Qe,e))return;qP(n),bh(hi),bh(Cr),bh(Sn),bh(Fo),r.flags&8388608&&(hi=r.potentialThisCollisions,Cr=r.potentialNewTargetCollisions,Sn=r.potentialWeakMapSetCollisions,Fo=r.potentialReflectCollisions),Ln(n.statements,yt),yt(n.endOfFileToken);let a=Wp(n),s=vf(a);K8(n),th(n),i(()=>{!n.isDeclarationFile&&(Qe.noUnusedLocals||Qe.noUnusedParameters)&&bR(yw(n),(l,d,f)=>{!iS(l)&&gw(d,!!(l.flags&33554432))&&zn.add(f)})}),o5(n),r.flags|=1}}function gw(n,r){if(r)return!1;switch(n){case 0:return!!Qe.noUnusedLocals;case 1:return!!Qe.noUnusedParameters;default:return I.assertNever(n)}}function yw(n){return nr.get(n.path)||xe}function W8(n,r){console.warn("Implement me - checkSourceFileNodesWorker")}function K8(n){let r=_t(n);r.deferredNodes&&r.deferredNodes.forEach(V8),r.deferredNodes=void 0}function A_(n,r){return I.attachDebugPrototypeIfDebug({kind:3,func:n,debugInfo:I.isDebugging?r:void 0})}function qc(n,r){if(Mr(n))return at(n.symbol);let{parent:a}=n,s=a?.parent;if(Y4(n))return An(a);switch(n.kind,89,n.kind){case 89:case 286:case 146:return KV(n);case 71:return Ar(n).symbol;case 179:return Gc(n.name,268435456);case 16:if(n.parent.kind===252&&n.parent.inheritClause===n)return Jm(n,n,void 0,r);case 11:let d=js(a)?a.argumentExpression===n?ja(a.expression):void 0:El(a)&&Vf(s)?wt(s.objectType):void 0;return d&&bo(d,n.text);case 39:return Wp(n.parent);default:return}}function V8(n){Pt?.push(Pt.Phase.Check,"checkDeferredNode",{kind:n.kind,pos:n.pos,end:n.end,path:n.tracingPath});let r=B;switch(B=n,_=0,n.kind){case 272:case 276:ZC(n);break;case 270:case 283:q8(n);break;case 274:break;case 148:H8(n);break;case 279:case 296:case 289:z8(n);break;case 269:break;default:console.log("Unhandled deferred node kind: ",I.formatSyntaxKind(n.kind))}B=r,Pt?.pop()}function z8(n){let{type:r}=hw(n),a=Vu(n)?r:n,s=_t(n);I.assertIsDefined(s.assertionExpressionType);let l=$_(Ql(s.assertionExpressionType)),d=wt(r);zo(d)||i(()=>{let f=Nc(l);oE(d,f)||Tw(l,d,a,N.Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the_other_If_this_was_intentional_convert_the_expression_to_unknown_first)})}function Tw(n,r,a,s,l){return Af(n,r,pa,a,s,l)}function hw(n){let r,a;switch(n.kind){case 296:case 279:r=n.type,a=n.expression;break;case 289:r=mT(n),a=n.expression;break}return{type:r,expression:a}}function H8(n){if(K4(n.parent)||ia(n.parent)||xS(n.parent)){let r=Ep(An(n)),a=HR(r)&49152;if(a){let s=An(n.parent);if(xS(n.parent)&&!(Jn(Ma(s))&52))on(n,N.Variance_annotations_are_only_supported_in_type_aliases_for_object_function_constructor_and_mapped_types);else if(a===16384||a===32768){Pt?.push(Pt.Phase.CheckTypes,"checkTypeParameterDeferred",{parent:ra(Ma(s)),id:ra(r)});let l=Q_(s,r,a===32768?_c:Rl),d=Q_(s,r,a===32768?Rl:_c),f=r;y=r,Ap(l,d,n,N.Type_0_is_not_assignable_to_type_1_as_implied_by_variance_annotation),y=f,Pt?.pop()}}}}function q8(n){let r=Ac(n),a=Pa(n);if(Z0(n,a),n.body){if(Pl(n)&&mi(n.body)){console.warn("todo - getReturnTypeFromBody - possible FluffOS function shortcut"),n.body.forEach(s=>Ar(s));return}if(rl(n)||Ii(Mi(n)),n.body.kind===236)yt(n.body);else{let s=Ar(n.body),l=a&&__(a,r);if(l){let d=uF(n.body);Lp(s,l,d,d)}}}}function ZC(n){return Sw(n)&&Ln(n.typeArguments,yt),gr(n)?Ar(n.left):Ou(n)&&Ln(n.arguments,r=>{Ar(r)}),$r}function Sw(n){return Ou(n)}function gy(n){if(!n||!n.declarations)return xe;let r=[];for(let a=0;a<n.declarations.length;a++){let s=n.declarations[a];if(ki(s)){if(a>0&&s.body){let l=n.declarations[a-1];if(s.parent===l.parent&&s.kind===l.kind&&s.pos===l.end)continue}if(mr(s)&&s.jsDoc){let l=u6(s);if(rr(l)){for(let d of l){let f=d.typeExpression;f.type===void 0&&!Bg(s)&&ga(f,pt),r.push(Mi(f))}continue}}r.push(!dS(s)&&!mS(s)&&rd(s)||Mi(s))}}return r}function Xk(n){return n?.members?vE(n.members):void 0}function _w(n){let r=Xk(n);return r?xw(r):xe}function xw(n){if(n.declarations){let r=[];for(let a of n.declarations)if(a.parameters.length===1){let s=a.parameters[0];s.type&&Ym(wt(s.type),l=>{G8(l)&&!dC(r,l)&&r.push(Op(l,a.type?wt(a.type):pt,Qd(a,8192),a))})}return r}return xe}function G8(n){return!!(n.flags&12)}function bw(n){if(!n.declaredProperties){Pw(n);let r=n.symbol,a=ud(r);n.declaredProperties=j_(a),n.declaredCallSignatures=xe,n.declaredConstructSignatures=xe,n.declaredIndexInfos=xe,n.declaredCallSignatures=gy(a.get("__call")),n.declaredConstructSignatures=gy(a.get("__new")),n.declaredIndexInfos=_w(r)}return n}function Ar(n,r,a,s){Pt?.push(Pt.Phase.Check,"checkExpression",{kind:n.kind,pos:n.pos,end:n.end,path:n.tracingPath});let l=B;B=n,_=0;let d=EK(n,r,a,s),f=xK(n,d,r);return B=l,Pt?.pop(),f}function $8(n){let r=bw(n.target),a=Kr(r.typeParameters,[r.thisType]),s=Lo(n),l=s.length===a.length?s:Kr(s,[n]);Nw(n,r,a,l)}function yy(n,r,a){let s;if(n.typeParameters&&!a){s=qn(n.typeParameters,vk),r=Dp(os(n.typeParameters,s),r);for(let d of s)d.mapper=r}let l=cd(n.declaration,s,n.thisParameter&&Zk(n.thisParameter,r),wC(n.parameters,r,Zk),void 0,void 0,n.minArgumentCount,n.flags&1295);return l.target=n,l.mapper=r,l}function eE(n,r){return wC(n,r,yy)}function Q8(n,r){return Op(n.keyType,Mt(n.type,r),n.isReadonly,n.declaration)}function Cw(n,r){return wC(n,r,Q8)}function Ew(n,r){for(let a of r){let s=n.get(a.name);(!s||s.valueDeclaration&&gr(s.valueDeclaration))&&n.set(a.name,a)}}function Nw(n,r,a,s){let l,d,f,h,D;PF(a,s,0,a.length)?(d=r.symbol?ud(r.symbol):Ei(r.declaredProperties),f=r.declaredCallSignatures,h=r.declaredConstructSignatures,D=r.declaredIndexInfos):(l=os(a,s),d=Dw(r.declaredProperties,l,a.length===1),f=eE(r.declaredCallSignatures,l),h=eE(r.declaredConstructSignatures,l),D=Cw(r.declaredIndexInfos,l));let w=Fd(r);if(w.length){if(r.symbol&&d===ud(r.symbol)){let q=Ei(r.declaredProperties),Z=Xk(r.symbol);Z&&q.set("__index",Z),d=q}ld(n,d,f,h,D);let J=ko(s);for(let q of w){let Z=q;Ew(d,ya(Z)),f=Kr(f,Bi(Z,0)),h=Kr(h,Bi(Z,1));let ie=Z!==pt?Da(Z):[Op(sr,pt,!1)];D=Kr(D,Rr(ie,Ue=>!dC(D,Ue.keyType)))}}ld(n,d,f,h,D)}function Y8(n){return!0}function Zk(n,r){let a=On(n);if(a.type&&!Vl(a.type)&&(!(n.flags&65536)||a.writeType&&!Vl(a.writeType)))return n;jo(n)&1&&(n=a.target,r=Dp(a.mapper,r));let s=to(n.flags,n.name,1|jo(n)&53256);return s.declarations=n.declarations,s.parent=n.parent,s.links.target=n,s.links.mapper=r,n.valueDeclaration&&(s.valueDeclaration=n.valueDeclaration),a.nameType&&(s.links.nameType=a.nameType),s}function Dw(n,r,a){let s=Ei();for(let l of n)s.set(l.name,a&&Y8(l)?l:Zk(l,r));return s}function X8(n){let r=j_(n),a=vE(n);return a?Kr(r,[a]):r}function Pw(n){if(n.target){ld(n,V,xe,xe,xe);let f=Dw(sd(n.target),n.mapper,!1),h=eE(Bi(n.target,0),n.mapper),D=eE(Bi(n.target,1),n.mapper),w=Cw(Da(n.target),n.mapper);ld(n,f,h,D,w);return}let r=at(n.symbol);if(!r){console.debug("no symbol found");return}if(r.flags&2048){ld(n,V,xe,xe,xe);let f=ud(r),h=gy(f.get("__call")),D=gy(f.get("__new")),w=_w(r);ld(n,f,h,D,w);return}let a=Bm(r),s,l;if(ld(n,a,xe,xe,xe),r?.flags&32){let f=vf(r);f.flags&11272192&&(a=Ei(X8(a)),Ew(a,ya(f)))}let d=vE(a);if(d?s=xw(d):l&&(s=Fr(s,l)),ld(n,a,xe,xe,s||xe),r.flags&8208&&(n.callSignatures=gy(r)),r.flags&32){let f=vf(r),h=r.members?gy(r.members.get("__constructor")):xe;r.flags&16&&(console.debug("todo - resolveAnonymousTypeMembers - function"),h=Po(h.slice(),_i(n.callSignatures,D=>{}))),h.length||(h=Z8(f)),n.constructSignatures=h}}function ev(n){return qn(n.typeArguments,wt)}function Z8(n){let r=Nv(n),a=Bi(r,1),s=lb(n.symbol),l=!1;if(a.length===0)return[cd(void 0,n.localTypeParameters,void 0,xe,n,void 0,0,l?4:0)];let d=n_(n),f=mr(d),h=ev(d),D=rr(h),w=[];for(let J of a){let q=ad(J.typeParameters),Z=rr(J.typeParameters);if(f||D>=q&&D<=Z){let ie=Z?BE(J,Nf(h,J.typeParameters,q,f)):C_(J);ie.typeParameters=n.localTypeParameters,ie.resolvedReturnType=n,ie.flags=l?ie.flags|4:ie.flags&-5,w.push(ie)}}return w}function nv(n){Nw(n,bw(n),xe,xe)}function eK(n){console.debug("todo - resolveReverseMappedTypeMembers")}function nK(n){console.debug("todo - resolveMappedTypeMembers")}function ql(n){return n.members||(n.flags&524288?n.objectFlags&4?$8(n):n.objectFlags&3||n.objectFlags&3?nv(n):n.objectFlags&1024?eK(n):n.objectFlags&16?Pw(n):n.objectFlags&32&&nK(n):n.flags&1048576?sK(n):n.flags&2097152?tK(n):I.fail("Unhandled type "+I.formatTypeFlags(n.flags))),n}function tK(n){let r,a,s,l=n.types,d=oK(l),f=yd(d,h=>h);for(let h=0;h<l.length;h++){let D=n.types[h];if(!d[h]){let w=Bi(D,1);w.length&&f>0&&(w=qn(w,J=>{let q=C_(J);return q.resolvedReturnType=aK(Ii(J),l,d,h),q})),a=kw(a,w)}r=kw(r,Bi(D,0)),s=Yc(Da(D),(w,J)=>rK(w,J,!1),s)}ld(n,V,r||xe,a||xe,s||xe)}function kw(n,r){for(let a of r)(!n||di(n,s=>!WC(s,a,!1,!1,!1,UC)))&&(n=Fr(n,a));return n}function rK(n,r,a){if(n)for(let s=0;s<n.length;s++){let l=n[s];if(l.keyType===r.keyType)return n[s]=Op(l.keyType,a?st([l.type,r.type]):bi([l.type,r.type]),a?l.isReadonly||r.isReadonly:l.isReadonly&&r.isReadonly),n}return Fr(n,r)}function iK(n){let r=Bi(n,1);if(r.length===1){let a=r[0];if(!a.typeParameters&&a.parameters.length===1&&Rc(a)){let s=E_(a.parameters[0]);return cs(s)||P_(s)===pt}}return!1}function oK(n){let r=yd(n,s=>Bi(s,1).length>0),a=qn(n,iK);if(r>0&&r===yd(a,s=>s)){let s=a.indexOf(!0);a[s]=!1}return a}function aK(n,r,a,s){let l=[];for(let d=0;d<r.length;d++)d===s?l.push(n):a[d]&&l.push(Ii(Bi(r[d],1)[0]));return bi(l)}function sK(n){let r=vw(qn(n.types,l=>l===O?[oc]:Bi(l,0))),a=vw(qn(n.types,l=>Bi(l,1))),s=cK(n.types);ld(n,V,r,a,s)}function cK(n){let r=Da(n[0]);if(r){let a=[];for(let s of r){let l=s.keyType;di(n,d=>!!Ml(d,l))&&a.push(Op(l,st(qn(n,d=>Nu(d,l))),Tn(n,d=>Ml(d,l).isReadonly)))}return a}return xe}function vw(n){let r,a;for(let s=0;s<n.length;s++){if(n[s].length===0)return xe;n[s].length>1&&(a=a===void 0?s:-1);for(let l of n[s])if(!r||!nE(r,l,!1,!1,!0)){let d=gK(n,l,s);if(d){let f=l;if(d.length>1){let h=l.thisParameter,D=Ln(d,w=>w.thisParameter);if(D){let w=bi(_i(d,J=>J.thisParameter&&vt(J.thisParameter)));h=hf(D,w)}f=R1(l,d),f.thisParameter=h}(r||(r=[])).push(f)}}}if(!rr(r)&&a!==-1){let s=n[a!==void 0?a:0],l=s.slice();for(let d of n)if(d!==s){let f=d[0];if(I.assert(!!f,"getUnionSignatures bails early on empty signature lists and should not have empty lists on second pass"),l=f.typeParameters&&Tn(l,h=>!!h.typeParameters&&!dK(f.typeParameters,h.typeParameters))?void 0:qn(l,h=>lK(h,f)),!l)break}r=l}return r||xe}function lK(n,r){let a=n.typeParameters||r.typeParameters,s;n.typeParameters&&r.typeParameters&&(s=os(r.typeParameters,n.typeParameters));let l=n.declaration,d=uK(n,r,s),f=Math.max(n.minArgumentCount,r.minArgumentCount),h=cd(l,a,void 0,d,void 0,void 0,f,(n.flags|r.flags)&1295);return h.compositeKind=1048576,h.compositeSignatures=Kr(n.compositeKind!==2097152&&n.compositeSignatures||[n],[r]),s?h.mapper=n.compositeKind!==2097152&&n.mapper&&n.compositeSignatures?Dp(n.mapper,s):s:n.compositeKind!==2097152&&n.mapper&&n.compositeSignatures&&(h.mapper=n.mapper),h}function uK(n,r,a){let s=cc(n),l=cc(r),d=s>=l?n:r,f=d===n?r:n,h=d===n?s:l,D=Du(n)||Du(r),w=D&&!Du(d),J=new Array(h+(w?1:0));for(let q=0;q<h;q++){let Z=Am(d,q);d===r&&(Z=Mt(Z,a));let ie=Am(f,q)||yr;f===r&&(ie=Mt(ie,a));let Ue=bi([Z,ie]),Xe=D&&!w&&q===h-1,Dn=q>=Hl(d)&&q>=Hl(f),mn=q>=s?void 0:w_(n,q),wn=q>=l?void 0:w_(r,q),Bn=mn===wn?mn:mn?wn?void 0:mn:wn,Fn=to(1|(Dn&&!Xe?16777216:0),Bn||`arg${q}`,Xe?32768:Dn?16384:0);Fn.links.type=Xe?aa(Ue):Ue,J[q]=Fn}if(w){let q=to(1,"args",32768);q.links.type=aa(Pu(f,h)),f===r&&(q.links.type=Mt(q.links.type,a)),J[h]=q}return J}function w_(n,r,a){let s=n.parameters.length-(Rc(n)?1:0);if(r<s)return n.parameters[r].name;let l=n.parameters[s]||eo,d=a||vt(l);return l.name}function dK(n,r){if(rr(n)!==rr(r))return!1;if(!n||!r)return!0;let a=os(r,n);for(let s=0;s<n.length;s++){let l=n[s],d=r[s];if(l!==d&&!uy(rh(l)||yr,Mt(rh(d)||yr,a)))return!1}return!0}function rh(n){if(!n.constraint)if(n.target){let r=As(n.target);n.constraint=r?Mt(r,n.mapper):ys}else{let r=wk(n);if(!r)n.constraint=fK(n)||ys;else{let a=wt(r);a.flags&1&&!zo(a)&&(a=r.parent.parent.kind===264?Qt:yr),n.constraint=a}}return n.constraint===ys?void 0:n.constraint}function pK(n,r,a){return n.typeArguments&&a<n.typeArguments.length?wt(n.typeArguments[a]):Uk(n,r)[a]}function fK(n,r){let a;if(n.symbol?.declarations){for(let s of n.symbol.declarations)if(s.parent.kind===259){let[l=s.parent,d]=g6(s.parent.parent);if(d.kind===166&&!r){let f=d,h=TC(f);if(h){let D=f.typeArguments.indexOf(l);if(D<h.length){let w=As(h[D]);if(w){let J=SF(h,h.map((Z,ie)=>()=>pK(f,h,ie))),q=Mt(w,J);q!==n&&(a=Fr(a,q))}}}}else if(d.kind===149&&d.dotDotDotToken||d.kind===160||d.kind===262&&d.dotDotDotToken)a=Fr(a,aa(yr));else if(d.kind===148&&d.parent.kind===264)a=Fr(a,Qt);else if(d.kind===264&&d.type&&vo(d.type)===s.parent&&d.parent.kind===168&&d.parent.extendsType===d&&d.parent.checkType.kind===264&&d.parent.checkType.type){let f=d.parent.checkType,h=wt(f.type);a=Fr(a,Mt(h,Bd(Ep(An(f.typeParameter)),f.typeParameter.constraint?wt(f.typeParameter.constraint):Qt)))}}}return a&&bi(a)}function nE(n,r,a,s,l){for(let d of n)if(WC(d,r,a,s,l,a?mK:UC))return d}function mK(n,r){return Yl(n,r,Uc)?-1:0}function gK(n,r,a){if(r.typeParameters){if(a>0)return;for(let l=1;l<n.length;l++)if(!nE(n[l],r,!1,!1,!1))return;return[r]}let s;for(let l=0;l<n.length;l++){let d=l===a?r:nE(n[l],r,!1,!1,!0)||nE(n[l],r,!0,!1,!0);if(!d)return;s=Jf(s,d)}return s}function ih(n,r,a){if(n.flags&524288){let s=ql(n);if(a||s.properties&&s.properties?.length===0&&s.indexInfos?.length===0){if(r===0&&s.callSignatures?.length===1&&s.constructSignatures?.length===0)return s.callSignatures[0];if(r===1&&s.constructSignatures?.length===1&&s.callSignatures?.length===0)return s.constructSignatures[0]}}}function yK(n,r){return n.block&&n.expression&&on(n,N.Catch_expression_cannot_also_have_a_block),n.block?ew(n.block):Ar(n.expression,r),st([$a,sr])}function tv(n,r){_t(n).flags|=16;let a=Dt(n),s=Wp(a);!s.inherits?.size&&(!n.namespace||Ic(n.namespace)!=="efun")&&on(n,N.Super_access_can_only_be_used_in_a_file_that_inherits_from_another_file);let l=Ma(s);return l&&Fd(l)[0]?FO(n.name,r):kn}function rv(n,r){return Tn(n,a=>a.symbol.name===r)}function TK(n,r){let a=r.length;for(;a>1&&r.charCodeAt(a-1)>=48&&r.charCodeAt(a-1)<=57;)a--;let s=r.slice(0,a);for(let l=1;;l++){let d=s+l;if(!rv(n,d))return d}}function hK(n,r){let a=[],s,l;for(let d of r){let f=d.symbol.name;if(rv(n.inferredTypeParameters,f)||rv(a,f)){let h=TK(Kr(n.inferredTypeParameters,a),f),D=to(262144,h),w=zc(D);w.target=d,s=Fr(s,d),l=Fr(l,w),a.push(w)}else a.push(d)}if(l){let d=os(s,l);for(let f of l)f.mapper=d}return a}function SK(n,r){for(let a=0;a<n.length;a++)if(Qm(n[a])&&Qm(r[a]))return!0;return!1}function _K(n,r){for(let a=0;a<n.length;a++)!Qm(n[a])&&Qm(r[a])&&(n[a]=r[a])}function xK(n,r,a){if(a&&a&10){let s=ih(r,0,!0),l=ih(r,1,!0),d=s||l;if(d&&d.typeParameters){let f=b_(n,2);if(f){let h=ih(f,s?0:1,!1);if(h&&!h.typeParameters){if(a&8)return PR(n,a),Jc;let D=dy(n),w=D.signature&&Ii(D.signature),J=w&&QR(w);if(J&&!J.typeParameters&&!di(D.inferences,Qm)){let q=hK(D,d.typeParameters),Z=_F(d,q),ie=qn(D.inferences,Ue=>gF(Ue.typeParameter));if(zk(Z,h,(Ue,Xe)=>{vp(ie,Ue,Xe,0,!0)}),Tn(ie,Qm)&&(qk(Z,h,(Ue,Xe)=>{vp(ie,Ue,Xe)}),!SK(D.inferences,ie)))return _K(D.inferences,ie),D.inferredTypeParameters=Kr(D.inferredTypeParameters,q),W_(Z)}return W_(V1(d,h,D),Co(Wn,q=>q&&qn(q.inferences,Z=>Z.typeParameter)).slice())}}}}return r}function bK(n,r){return n.flags&4194304?CK(n,r):Fw(n,Ff(n.expression),r)}function CK(n,r){let a=Ar(n.expression),s=jT(a,n.expression);return JT(Fw(n,ku(s,n.expression),r),n,s!==a)}function Fw(n,r,a){let s=ef(n)!==0||DO(n)?Nc(r):r,l=n.argumentExpression,d=Ar(l);if(zo(s)||s===Tr)return s;let f=d,h=ef(n),D;h===0?D=32:(D=4,h===2&&(D|=32));let w=km(s,f,D,n)||kn;return Ke(dw(n,_t(n).resolvedSymbol,w,l,a),n)}function EK(n,r,a,s){let l=n.kind;if(o)switch(l){case 274:case 270:case 283:o.throwIfCancellationRequested()}switch(l){case 89:return FO(n,r,s);case 16:if(r&128){let d=iv(n);if(d)return d}return Df(jl(n.text));case 14:return Df(GP(n.text));case 11:return Df(xc(+n.text));case 13:return Df(xc(parseFloat(n.text)));case 290:return Ya(n,r,a);case 291:return d_(n,r,!1);case 292:return $P(n,r,!1);case 286:return g_(n,r);case 146:return PO(n,r);case 281:return bK(n,r);case 272:case 276:return FK(n,r);case 273:return Iw(n,r);case 277:return jW(n,r);case 289:return BW(n,r);case 270:return RW(n,r);case 283:return WT(n,r);case 279:case 296:return MW(n,r);case 280:return console.debug("todo - implement check expression w/ type args"),pt;case 298:return AK(n);case 288:return IK(n);case 269:return bn(n,r);case 267:return DK(n,r);case 282:return NK(n,r);case 294:return rk(n,r);case 275:return I.fail("TODO - implement me - checkExpressionWorker - SyntheticExpression"),pt;case 237:return CC(n);case 287:return tv(n);case 268:return yK(n)}return console.warn("Implement me - checkExpressionWorker - "+I.formatSyntaxKind(n.kind)),kn}function NK(n,r){let a=[];return n.left&&a.push(Ar(n.left,r)),n.right&&a.push(Ar(n.right,r)),a.length>1?st(a,2):a[0]}function DK(n,r){let a=Dm(n.condition,r);lv(n.condition,a,n.whenTrue);let s=Ar(n.whenTrue,r),l=Ar(n.whenFalse,r);return st([s,l],2)}function PK(n,r){if(!(n.flags&1024)&&n.declaration&&n.declaration.flags&536870912){let a=Ul(r),s=wx(cS(r));kK(a,n.declaration,s,oh(n))}}function kK(n,r,a,s){let l=a?yi(n,N.The_signature_0_of_1_is_deprecated,s,a):yi(n,N._0_is_deprecated,s);return iO(r,l)}function iv(n,r){let a=n,l=Jm(r||n,a,void 0);if(l){let d=O_(l,a,!0);if(d&&Mr(d.valueDeclaration))return vt(d)}}function Iw(n,r){if(vK(n),!n.arguments?.length)return pt;let a=n.arguments[0],s=Xa(a);for(let d=1;d<n.arguments.length;++d)Xa(n.arguments[d]);(s.flags&32768||s.flags&65536||!Ni(s,sr))&&on(a,N.Clone_object_s_specifier_must_be_of_type_string_but_here_has_type_0,Xn(s));let l=Jm(n,a,s);if(l){let d=O_(l,a,!0);if(d&&Mr(d.valueDeclaration))return vt(d)}return pt}function O_(n,r,a){let s=_v(n);return!a&&s&&I.fail("TODO - implement me - resolveExternalObjectSymbol"),s}function vK(n){if(n.arguments?.length===0)return Fs(n,N.Clone_object_can_only_accept_an_object_name_and_an_optional_set_of_attributes_as_arguments_1450)}function FK(n,r){let a=ax(n,void 0,r);if(a===Qa)return Tr;if(PK(a,n),pm(n)&&!n.expression&&n.arguments?.length)return Iw(n);if(ao(n)){if(n.expression.kind===71)return et;let l=ti(n.expression),d=l&&cn(l)?l.text:void 0;if(d==="this_object"){let f=Dt(n),h=f.pragmas.get("this-object")??f.pragmas.get("this_object"),D;if(h){let w=pD(f,h);D=w.text?.length?iv(w):void 0}if(!D){let w=qc(f);D=vt(w)}return D}else if(d==="base_name"&&!n.arguments?.length){let f=Dt(n),h=om(f.fileName,Qe);return jl(h)}if(d==="$"&&ae===1&&It(n,Pl)){let f=n.arguments||xe,h=Ta(f);if(h&&cn(h)){let D=Xa(h,r&&r&-9);for(let w=1;w<f.length;++w)Ar(f[w]);return D}return f.forEach(D=>Ar(D)),pt}}let s=Ii(a);if(n.kind===272&&n.parent.kind===247&&s.flags&16384&&qs(a)){if(!Qh(n.expression))on(n.expression,N.Assertions_require_the_call_target_to_be_an_identifier_or_qualified_name);else if(!QC(n)){let l=on(n.expression,N.Assertions_require_every_name_in_the_call_target_to_be_declared_with_an_explicit_type_annotation);F_(n.expression,l)}}return s}function IK(n){let r=Ar(n.operand);return r===Tr?Tr:(aE(n.operand,ku(r,n.operand),N.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type)&&Ty(n.operand,N.The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access,N.The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access),ov(r))}function Df(n){if(n.flags&2976){if(!n.freshType){let r=RT(n.flags,n.value,n.symbol,n);r.freshType=r,n.freshType=r}return n.freshType}return n}function LK(n,r){if(no(n,r))return!0;let a=Ip(n);return!!a&&no(a,r)}function Ip(n){return na(n)||n}function AK(n){let r=Ar(n.operand);if(r===Tr)return Tr;switch(n.operand.kind){case 11:switch(n.operator){case 42:return Df(xc(-n.operand.text));case 41:return Df(xc(+n.operand.text))}break;case 13:switch(n.operator){case 42:return Df(xc(-n.operand.text));case 41:return Df(xc(+n.operand.text))}}switch(n.operator){case 41:case 42:case 57:return ku(r,n.operand),n.operator===41?(LK(r,2048)&&on(n.operand,N.Operator_0_cannot_be_applied_to_type_1,gi(n.operator),Xn(Ql(r))),Et):ov(r);case 55:VT(r,n.operand);let a=sx(r,12582912);return a===4194304?$a:a===8388608?ba:Fi;case 47:case 48:return aE(n.operand,ku(r,n.operand),N.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type)&&Ty(n.operand,N.The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access,N.The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access),ov(r)}return kn}function ov(n){return no(n,2048)?ss(n,3)||no(n,2344)?Xi:vr:Et}function wK(n,r,a,s){return console.debug("TODO - Implement me - checkDestructuringAssignment"),pt}function av(n,r){return(r.flags&98304)!==0||oE(n,r)}function OK(n){return la(n,RK)}function RK(n){return n.flags&4?Ca:n.flags&8?b:n===ln||n===$a||n.flags&114691||n.flags&128&&n.value===""||n.flags&256&&n.value===0||n.flags&2048&&n.value===0?n:ct}function MK(){let n=fT(r,a,s,l,d,f);return(Z,ie)=>{let Ue=n(Z,ie);return I.assertIsDefined(Ue),Ue};function r(Z,ie,Ue){return ie?(ie.stackIndex++,ie.skip=!1,w(ie,void 0),q(ie,void 0)):ie={checkMode:Ue,skip:!1,stackIndex:0,typeStack:[void 0,void 0]},Z.operatorToken.kind===74&&(Z.left.kind===293||Z.left.kind===290)&&(ie.skip=!0,q(ie,wK(Z.left,Ar(Z.right,Ue),Ue,!1))),ie}function a(Z,ie,Ue){if(!ie.skip)return h(ie,Z)}function s(Z,ie,Ue){if(!ie.skip){let Xe=J(ie);I.assertIsDefined(Xe),w(ie,Xe),q(ie,void 0);let Dn=Z.kind;if(lI(Dn)){let mn=Ue.parent;for(;mn.kind===289||eS(mn);)mn=mn.parent;(Dn===58||FL(mn))&&lv(Ue.left,Xe,FL(mn)?mn.thenStatement:void 0),VT(Xe,Ue.left)}}}function l(Z,ie,Ue){if(!ie.skip)return h(ie,Z)}function d(Z,ie){let Ue;if(ie.skip)Ue=J(ie);else{let Xe=D(ie);I.assertIsDefined(Xe);let Dn=J(ie);I.assertIsDefined(Dn),Ue=GK(Z.left,Z.operatorToken,Z.right,Xe,Dn,ie.checkMode,Z)}return ie.skip=!1,w(ie,void 0),q(ie,void 0),ie.stackIndex--,Ue}function f(Z,ie,Ue){return q(Z,ie),Z}function h(Z,ie){if(gr(ie))return ie;q(Z,Ar(ie,Z.checkMode))}function D(Z){return Z.typeStack[Z.stackIndex]}function w(Z,ie){Z.typeStack[Z.stackIndex]=ie}function J(Z){return Z.typeStack[Z.stackIndex+1]}function q(Z,ie){Z.typeStack[Z.stackIndex+1]=ie}}function BK(n){return n.flags&402653312?sr:n.flags&256?Xi:n.flags&2048?vr:n.flags&1048576?la(n,BK):n}function jK(n){return sa(n,r=>Gl(r,4194304))}function R_(n){switch(n=vo(n),n.kind){case 89:case 16:case 11:case 13:case 137:case 270:case 274:case 283:case 290:case 293:return!0;case 267:return R_(n.whenTrue)&&R_(n.whenFalse);case 269:return Wu(n.operatorToken.kind)?!1:R_(n.left)&&R_(n.right);case 298:case 288:switch(n.operator){case 55:case 41:case 42:case 57:return!0}return!1;default:return!1}}function tE(n,r,a,s){Ln(n.declarations,l=>{HK(l,r,a,s.declarations)})}function JK(n,r,...a){let s=n?yi(n,r,...a):cu(r,...a),l=zn.lookup(s);return l||(zn.add(s),s)}function Lp(n,r,a,s,l,d){return Lw(n,r,vs,a,s,l,d,void 0)}function Lw(n,r,a,s,l,d,f,h){return Yl(n,r,a)?!0:!s||!iE(l,n,r,a,d,f,h)?Af(n,r,a,s,d,f,h):!1}function Aw(n){return!!(n.flags&16777216||n.flags&2097152&&Tn(n.types,Aw))}function Ap(n,r,a,s,l,d){return Af(n,r,vs,a,s,l,d)}function UK(n,r,a,s,l,d,f){let h=Bi(r,0),D=Bi(r,1);for(let w of[D,h])if(Tn(w,J=>{let q=Ii(J);return!(q.flags&131073)&&Af(q,a,s,void 0)})){let J=f||{};Ap(r,a,n,l,d,J);let q=J.errors[J.errors.length-1];return Bo(q,yi(n,w===D?N.Did_you_mean_to_use_new_with_this_expression:N.Did_you_mean_to_call_this_expression)),!0}return!1}function WK(n){return n.typeParameters||rl(n)||!n.body?!1:n.body.kind!==236?Cc(n.body):!!Xd(n.body,r=>!!r.expression&&Cc(r.expression))}function ww(n){return GN(n)||WK(n)}function Cc(n){switch(n.kind){case 270:case 283:case 169:return ww(n);case 293:return Tn(n.properties,Cc);case 290:return Tn(n.elements,Cc);case 267:return Cc(n.whenTrue)||Cc(n.whenFalse);case 269:return n.operatorToken.kind===59&&(Cc(n.left)||Cc(n.right));case 174:return Cc(n.initializer);case 289:return Cc(n.expression)}return!1}function rE(n){return n&&!!n.valueDeclaration&&Xs(n.valueDeclaration)&&!Cc(n.valueDeclaration)}function sv(n){return Xn(n,void 0,64)}function cv(n,r){let a=rE(n.symbol)?Xn(n,n.symbol.valueDeclaration):Xn(n),s=rE(r.symbol)?Xn(r,r.symbol.valueDeclaration):Xn(r);return a===s&&(a=sv(n),s=sv(r)),[a,s]}function KK(n,r,a){let s=n,l=r,d=Ql(n),f=Ql(r);return a(d,f)||(s=d,l=f),[s,l]}function iE(n,r,a,s,l,d,f){if(!n||Aw(a))return!1;if(!Af(r,a,s,void 0)&&UK(n,r,a,s,l,d,f))return!0;switch(n.kind){case 289:return iE(n.expression,r,a,s,l,d,f);case 269:switch(n.operatorToken.kind){case 74:case 27:return iE(n.right,r,a,s,l,d,f)}break;case 293:console.warn("todo - elaborateError - ObjectLiteralExpression");case 290:return VK(n,r,a,s,d,f);case 283:return zK(n,r,a,s,d,f)}return!1}function VK(n,r,a,s,l,d){if(a.flags&402915260)return!1;VC(n,a,!1);let f=Ya(n,1,!0);return XT(),!1}function zK(n,r,a,s,l,d){if(Rs(n.body)||Tn(n.parameters,Wh))return!1;let f=wp(r);if(!f)return!1;let h=Bi(a,0);if(!rr(h))return!1;let D=n.body,w=Ii(f),J=st(qn(h,Ii));if(!Af(w,J,s,void 0)){let q=D&&iE(D,w,J,s,void 0,l,d);if(q)return q;let Z=d||{};Af(w,J,s,D,void 0,l,Z),Z.errors&&a.symbol&&rr(a.symbol.declarations)&&Bo(Z.errors[Z.errors.length-1],yi(a.symbol.declarations[0],N.The_expected_type_comes_from_the_return_type_of_this_signature))}return!1}function Ty(n,r,a){let s=Yf(n,7);return s.kind!==89&&!ps(s)?(on(n,r),!1):s.flags&4194304?(on(n,a),!1):!0}function HK(n,r,a,s){let l=ti(n)||n,d=JK(l,r,a);for(let f of s||xe){let h=ti(f)||f;if(h===l)continue;d.relatedInformation=d.relatedInformation||[];let D=yi(h,N._0_was_also_declared_here,a),w=yi(h,N.and_here);rr(d.relatedInformation)>=5||Tn(d.relatedInformation,J=>Hh(J,w)===0||Hh(J,D)===0)||Bo(d,rr(d.relatedInformation)?w:D)}}function sd(n){return n.flags&524288?ql(n).properties:xe}function qK(n,r){let a=Cs(n)?ju(n):void 0;console.debug("TODO - Implement me - reportObjectPossiblyNullOrUndefinedError")}function ku(n,r){return DR(n,r,qK)}function M_(n,r,a,...s){return on(n,a,...s)}function oE(n,r){return Yl(n,r,pa)}function B_(n,r){return oE(n,r)||oE(r,n)}function aE(n,r,a,s=!1){return Ni(r,Wr)?!0:(M_(n,!1,a),!1)}function Tte(n){if(ca(n)&&n.resolvedTypeArguments?.length===1){let r=Eo(n.resolvedTypeArguments);return r.flags&256&&r.value===0}return!1}function GK(n,r,a,s,l,d,f){let h=r.kind;switch(h){case 43:case 44:case 77:case 78:case 45:case 79:case 46:case 80:case 42:case 76:case 49:case 81:case 50:case 82:case 51:case 83:case 53:case 85:case 54:case 88:case 52:case 84:if(s===Tr||l===Tr)return Tr;s=ku(s,n),l=ku(l,a);let Bn;if(s.flags&528&&l.flags&528&&(Bn=q(r.kind))!==void 0)return on(f||r,N.The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead,gi(r.kind),gi(Bn)),Et;{let ft=aE(n,s,N.The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type,!0),ur=aE(a,l,N.The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type,!0),_r;return ca(s)&&ca(l)?_r=s:ss(s,3)&&ss(l,3)||!(no(s,2048)||no(l,2048))?_r=Et:(Xe(D),_r=kn),ft&&ur&&Z(_r),_r}case 41:case 75:if(s===Tr||l===Tr)return Tr;!ss(s,402653316)&&!ss(l,402653316)&&(s=ku(s,n),l=ku(l,a));let Fn;if(ss(s,2344,!0)&&ss(l,2344,!0))Fn=Et;else if(ss(s,402653316,!0)||ss(l,402653316,!0))Fn=sr;else if(ss(s,12288,!0)&&ss(l,12288,!0))Fn=Bc;else if(cs(s)||cs(l))Fn=zo(s)||zo(l)?kn:pt;else if(ca(s)&&ca(l)){let ft=Eo(s.resolvedTypeArguments),ur=Eo(l.resolvedTypeArguments);B_(ft,ur)&&(Fn=s)}else wm(s)&&wm(l)&&(Fn=s);if(!Fn){let ft=402655663;return Xe((ur,_r)=>ss(ur,ft)&&ss(_r,ft)),pt}return h===75&&Z(Fn),Fn;case 29:case 32:case 33:case 34:return Fi;case 35:case 36:case 37:case 38:if(!(d&&d&64)){if((zF(n)||zF(a))&&(!mr(n)||h===37||h===38)){let ft=h===35||h===37;on(f,N.This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value,ft?"false":"true")}mn(f,h,n,a),Ue((ft,ur)=>av(ft,ur)||av(ur,ft))}return Fi;case 103:return $K(n,a,s,l);case 58:return Gl(s,4194304)?st([OK(z?s:Ql(l)),l]):s;case 59:case 86:{let ft=Gl(s,8388608)?st([jK(s),l],2):s;return h===86&&Z(l),ft}case 74:let nt=gr(n.parent)?ds(n.parent):0;return w(nt,l),ie(nt)?((!(l.flags&524288)||nt!==2&&nt!==6&&!Kp(l)&&!(Jn(l)&1))&&Z(l),s):(Z(l),l);case 27:if(!Qe.allowUnreachableCode&&R_(n)&&!J(n.parent)&&!Hf(n.parent.parent)&&!It(n.parent,js)){let ur=Dt(n).text,_r=Oi(ur,n.pos);on(n,N.Left_side_of_comma_operator_is_unused_and_has_no_side_effects)}return l;default:return I.fail()}function D(Bn,Fn){return ss(Bn,2048)&&ss(Fn,2048)}function w(Bn,Fn){if(Bn===2)for(let nt of sd(Fn)){let ft=vt(nt);if(ft.symbol&&ft.symbol.flags&32){let ur=nt.name,_r=Lr(nt.valueDeclaration,ur,788968,void 0,!1);_r?.declarations&&_r.declarations.some(N4)&&(tE(_r,N.Duplicate_identifier_0,ur,nt),tE(nt,N.Duplicate_identifier_0,ur,_r))}}}function J(Bn){return Bn.parent.kind===289&&eu(Bn.left)&&Bn.left.text==="0"&&ao(Bn.parent.parent)&&Bn.parent.parent.expression===Bn.parent&&(ps(Bn.right)||cn(Bn.right)&&Bn.right.text==="eval")}function q(Bn){switch(Bn){case 53:case 85:return 59;case 54:case 88:return 38;case 52:case 84:return 58;default:return}}function Z(Bn){Wu(h)&&i(Fn);function Fn(){let nt=s;Ty(n,N.The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access,N.The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access)&&Lp(Bn,nt,n,a,void 0)}}function ie(Bn){switch(Bn){case 2:return!0;case 1:case 5:case 6:case 3:case 4:let Fn=Wp(n);return!1;default:return!1}}function Ue(Bn){return Bn(s,l)?!1:(Xe(Bn),!0)}function Xe(Bn){let Fn=!1,nt=f||r;if(Bn){let zi=Tk(s),Jr=Tk(l);Fn=!(zi===s&&Jr===l)&&!!(zi&&Jr)&&Bn(zi,Jr)}let ft=s,ur=l;!Fn&&Bn&&([ft,ur]=KK(s,l,Bn));let[_r,yo]=cv(ft,ur);Dn(nt,Fn,_r,yo)||M_(nt,Fn,N.Operator_0_cannot_be_applied_to_types_1_and_2,gi(r.kind),_r,yo)}function Dn(Bn,Fn,nt,ft){switch(r.kind){case 37:case 35:case 38:case 36:return M_(Bn,Fn,N.This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap,nt,ft);default:return}}function mn(Bn,Fn,nt,ft){let ur=wn(vo(nt)),_r=wn(vo(ft));if(ur||_r){let yo=on(Bn,N.This_condition_will_always_return_0,gi(Fn===37||Fn===35?135:136));if(ur&&_r)return;let zi=Fn===38||Fn===36?gi(55):"",Jr=ur?ft:nt,Gi=vo(Jr);Bo(yo,yi(Jr,N.Did_you_mean_0,`${zi}Number.isNaN(${Cs(Gi)?ju(Gi):"..."})`))}}function wn(Bn){return!1}}function Ow(n){return n=vo(n,!0),n.kind===279||n.kind===296||lf(n)}function $K(n,r,a,s){return a===Tr||s===Tr?Tr:(Ap(ku(a,n),Qt,n),Ap(ku(s,r),rn,r)&&QK(s)&&on(r,N.Type_0_may_represent_a_primitive_value_which_is_not_permitted_as_the_right_operand_of_the_in_operator,Xn(s)),Fi)}function QK(n){return vu(n,r=>r===Oa||!!(r.flags&2097152)&&Sl(Ip(r)))}function lv(n,r,a){if(!z)return;s(n,a);function s(d,f){for(d=vo(d),l(d,f);gr(d)&&d.operatorToken.kind===59;)d=vo(d.left),l(d,f)}function l(d,f){let h=eS(d)?vo(d.right):d;if(eS(h)){s(h,f);return}let D=h===d?r:Dm(h);if(D.flags&1024&&ii(h)&&(_t(h.expression).resolvedSymbol??eo).flags&384){on(h,N.This_condition_will_always_return_0,D.value?"true":"false");return}let w=ii(h)&&Ow(h.expression);if(!Gl(D,4194304)||w||Bi(D,0).length===0)return;let q=cn(h)?h:ii(h)?h.name:void 0,Z=q&&qc(q);if(!Z)return;Z&&gr(d.parent)&&XK(d.parent,Z)||Z&&f&&YK(d,f,q,Z)||on(h,N.This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_instead)}}function YK(n,r,a,s){return!!_o(r,function l(d){if(cn(d)){let f=qc(d);if(f&&f===s){if(cn(n)||cn(a)&&gr(a.parent))return!0;let h=a.parent,D=d.parent;for(;h&&D;){if(cn(h)&&cn(D))return qc(h)===qc(D);if(ii(h)&&ii(D)){if(qc(h.name)!==qc(D.name))return!1;D=D.expression,h=h.expression}else if(ao(h)&&ao(D))D=D.expression,h=h.expression;else return!1}}}return _o(d,l)})}function XK(n,r){for(;gr(n)&&n.operatorToken.kind===58;){if(_o(n.right,function s(l){if(cn(l)){let d=qc(l);if(d&&d===r)return!0}return _o(l,s)}))return!0;n=n.parent}return!1}function Gl(n,r){return sx(n,r)!==0}function uv(n,r){dv();let a=i;i=s=>s(),nd(n,r),i=a}function dv(){for(let n of t)n();t=[]}function to(n,r,a){S++;let s=new u(n|33554432,r);return s.links=new RL,s.links.checkFlags=a||0,s}function oh(n,r,a=0,s,l){return l?d(l).getText():_I(d);function d(f){let h;a&262144?h=158:h=151;let D=ue.signatureToSignatureDeclaration(n,h,r,kR(a)|70221824|512),w=sj(),J=r&&nc(r);return w.writeNode(4,D,J,ub(f)),f}}function cd(n,r,a,s,l,d,f,h){let D=new m(fi,h);return D.declaration=n,D.typeParameters=r,D.parameters=s,D.thisParameter=a,D.resolvedReturnType=l,D.resolvedTypePredicate=d,D.minArgumentCount=f,D.resolvedMinArgumentCount=void 0,D.target=void 0,D.mapper=void 0,D.compositeSignatures=void 0,D.compositeKind=void 0,D}function Gs(n,r,a,s,l){return ld($l(16,n),r,a,s,l)}function ld(n,r,a,s,l){let d=n;return d.members=r,d.properties=xe,d.callSignatures=a,d.constructSignatures=s,d.indexInfos=l,r!==V&&(d.properties=j_(r)),d}function hte(n,r){let a=to(788968,r),s=J_(524288,a);return s.objectFlags=n,s.instantiations=new Map,s.resolvedBaseTypes=[],s.members=Ei(),s}function $l(n,r){let a=J_(524288,r);return a.objectFlags=n,a.members=void 0,a.properties=void 0,a.callSignatures=void 0,a.constructSignatures=void 0,a.indexInfos=void 0,a}function j_(n){let r;return n.forEach((a,s)=>{ZK(a,s)&&(r||(r=[])).push(a)}),r||xe}function J_(n,r){let a=bt(n);return a.symbol=r,a}function ZK(n,r){return pv(n)}function pv(n,r){return!!(n.flags&111551||n.flags&2097152&&hy(n,!r)&111551)}function hy(n,r,a){return n.flags}function e5(n,r,a){return!cn(n)||n.text!==r||xR(n)||fb(n),!1}function n5(n){return n==="string"||n==="int"||n==="object"||n==="float"||n==="mixed"||n==="mapping"||n==="unknown"||n==="bytes"||n==="buffer"}function Rw(n,r=901119){return n?(n.flags&(2097152|r))===2097152||!!(n.flags&2097152&&n.flags&67108864):!1}function Mm(n,r){return!r&&Rw(n)?hl(n):n}function hl(n){I.assert((n.flags&2097152)!==0,"Should only get Alias here.");let r=On(n);if(r.aliasTarget)r.aliasTarget===Ui&&(r.aliasTarget=eo);else{r.aliasTarget=Ui;let a=Sy(n);if(!a)return I.fail();let s=xv(a);r.aliasTarget===Ui?r.aliasTarget=s||eo:on(a,N.Circular_definition_of_import_alias_0,Li(n))}return r.aliasTarget}function t5(n){if(On(n).aliasTarget!==Ui)return hl(n)}function Li(n,r,a,s=4,l){let d=70221824;s&2&&(d|=128),s&1&&(d|=512),s&8&&(d|=16384),s&32&&(d|=134217728),s&16&&(d|=1073741824);let f=s&4?ue.symbolToNode:ue.symbolToEntityName;return l?h(l).getText():_I(h);function h(D){let w=f(n,a,r,d),J=r?.kind===176?aj():ym(),q=r&&Dt(r);return J.writeNode(4,w,q,D),D}}function fv(n,r,a,s){return r.tracker.trackSymbol(n,r.enclosingDeclaration,a),r5(n,r,a,s)}function r5(n,r,a,s){let l;return!(n.flags&262144)&&(r.enclosingDeclaration||r.flags&64)&&!(r.flags&134217728)?(l=I.checkDefined(f(n,a,!0)),I.assert(l&&l.length>0)):l=[n],l;function f(h,D,w){let J=U_(h,r.enclosingDeclaration,D,!!(r.flags&128)),q;if(!J||Uw(J[0],r.enclosingDeclaration,J.length===1?D:jm(D))){let ie=Vw(J?J[0]:h,r.enclosingDeclaration,D);if(rr(ie)){q=ie.map(Dn=>{});let Ue=ie.map((Dn,mn)=>mn);Ue.sort(Z);let Xe=Ue.map(Dn=>ie[Dn]);for(let Dn of Xe){let mn=f(Dn,jm(D),!1);if(mn){if(Dn.exports&&Dn.exports.get("export=")&&Pf(Dn.exports.get("export="),h)){J=mn;break}J=mn.concat(J||[mv(Dn,h)||h]);break}}}}if(J)return J;if(w||!(h.flags&6144))return!w&&!s&&Ln(h.declarations,cE)?void 0:[h];function Z(ie,Ue){let Xe=q[ie],Dn=q[Ue];if(Xe&&Dn){let mn=hg(Dn);return hg(Xe)===mn?Ab.countPathComponents(Xe)-Ab.countPathComponents(Dn):mn?-1:1}return 0}}}function Mw(n,r){let a=On(n).nameType;if(a&&a.flags&384){let s=""+a.value;return!zp(s,il(Qe))&&!rm(s)?`"${rf(s,34)}"`:rm(s)&&To(s,"-")?`[${s}]`:s}}function sE(n,r){if(r?.remappedSymbolReferences?.has(ji(n))&&(n=r.remappedSymbolReferences.get(ji(n))),r&&n.name==="default"&&!(r.flags&16384)&&(!(r.flags&16777216)||!n.declarations))return"default";if(n.declarations&&n.declarations.length){let s=es(n.declarations,d=>ti(d)?d:void 0),l=s&&ti(s);if(s&&l){if(ts(l)&&!(jo(n)&4096)){let d=On(n).nameType;if(d&&d.flags&384){let f=Mw(n,r);if(f!==void 0)return f}}return bs(l)}if(s||(s=n.declarations[0]),s.parent&&s.parent.kind===237)return bs(s.parent.name);switch(s.kind){case 274:case 270:case 283:return r&&!r.encounteredError&&!(r.flags&131072)&&(r.encounteredError=!0),s.kind===274?"(Anonymous class)":"(Anonymous function)"}}let a=Mw(n,r);return a!==void 0?a:us(n)}function cE(n){return!1}function i5(n){return Kr(Bw(n),_f(n))}function Bw(n){let r=n.flags&32||n.flags&16?n.valueDeclaration:n.declarations?.find(a=>{if(a.kind===155)return!0;if(a.kind!==237)return!1;let s=a.initializer;return!!s&&(s.kind===270||s.kind===283)});return I.assert(!!r,"Class was missing valueDeclaration -OR- non-class had no interface declarations"),$T(r)}function Bm(n){return n?.flags&6256?wO(n,"resolvedExports"):n?.exports??V}function jw(n){let r=On(n);if(!r.resolvedExports){let{exports:a}=N9(n);r.resolvedExports=a}return r.resolvedExports}function o5(n){let r=An(n),a=On(r);if(!a.exportsChecked){let s=jw(r);a.exportsChecked=!0}}function Pf(n,r){if(at(Mm(at(n)))===at(Mm(at(r))))return n}function Jw(n,r){return gv(n,r,111551,!1,!0).accessibility===0}function lE(n,r){let a;for(let s=n;s;s=s.parent){if(Zc(s)&&s.locals&&(a=r(s.locals,void 0,!0,s)))return a;switch(s.kind){case 176:let l=An(s);if(a=r(l?.exports||V,void 0,!0,s))return a;break;case 274:let d;if((An(s).members||V).forEach((f,h)=>{f.flags&788968&&(d||(d=Ei())).set(h,f)}),d&&(a=r(d,void 0,!1,s)))return a;break}}return r(Nt,void 0,!0)}function Uw(n,r,a){let s=!1;return lE(r,l=>{let d=at(l.get(n.name));if(!d)return!1;if(d===n)return!0;let f=d.flags&2097152&&!Cd(d,171);return d=f?hl(d):d,(f?hy(d):d.flags)&a?(s=!0,!0):!1}),s}function a5(n){if(n.declarations&&n.declarations.length){for(let r of n.declarations)switch(r.kind){case 152:continue;default:return!1}return!0}return!1}function jm(n){return n===111551?111551:1920}function U_(n,r,a,s,l=new Map){if(!(n&&!a5(n)))return;let d=On(n),f=d.accessibleChainCache||(d.accessibleChainCache=new Map),h=lE(r,(mn,wn,Bn,Fn)=>Fn),D=`${s?0:1}|${h&&za(h)}|${a}`;if(f.has(D))return f.get(D);let w=ji(n),J=l.get(w);J||l.set(w,J=[]);let q=lE(r,Z);return f.set(D,q),q;function Z(mn,wn,Bn){if(!bl(J,mn))return;let Fn=Xe(mn,wn,Bn);return J.pop(),Fn}function ie(mn,wn){return!Uw(mn,r,wn)||!!U_(mn.parent,r,jm(wn),s,l)}function Ue(mn,wn,Bn){return(n===(wn||mn)||at(n)===at(wn||mn))&&!Tn(mn.declarations,cE)&&(Bn||ie(at(mn),a))}function Xe(mn,wn,Bn){return Ue(mn.get(n.name),void 0,wn)?[n]:kl(mn,nt=>{if(nt.flags&2097152&&nt.name!=="export="&&nt.name!=="default"&&(wn||!Cd(nt,171))){let ft=hl(nt),ur=Dn(nt,ft,wn);if(ur)return ur}if(nt.name===n.name&&nt.exportSymbol&&Ue(at(nt.exportSymbol),void 0,wn))return[n]})||(mn===Nt?Dn(Zt,Zt,wn):void 0)}function Dn(mn,wn,Bn){if(Ue(mn,wn,Bn))return[mn];let Fn=Bm(wn),nt=Fn&&Z(Fn,!0);if(nt&&ie(mn,jm(a)))return[mn].concat(nt)}}function Ww(n,r){let a;if(!di(Rr(n.declarations,d=>d.kind!==89),s))return;return{accessibility:0,aliasesToMakeVisible:a};function s(d){if(!G(d)){if(po(d)&&du(d.parent.parent)&&!su(d.parent.parent,2048)&&G(d.parent.parent.parent))return l(d,d.parent.parent);if(mB(d)&&!su(d,2048)&&G(d.parent))return l(d,d);if(fo(d)){if(n.flags&2097152&&mr(d)&&d.parent?.parent&&po(d.parent.parent)&&d.parent.parent.parent?.parent&&du(d.parent.parent.parent.parent)&&!su(d.parent.parent.parent.parent,2048)&&d.parent.parent.parent.parent.parent&&G(d.parent.parent.parent.parent.parent))return l(d,d.parent.parent.parent.parent);if(n.flags&2){let f=It(d,du);return su(f,2048)?!0:G(f.parent)?l(d,f):!1}}return!1}return!0}function l(d,f){return r&&(_t(d).isVisible=!0,a=Jf(a,f)),!0}}function Kw(n,r,a,s,l,d){if(!rr(n))return;let f,h=!1;for(let D of n){let w=U_(D,r,s,!1);if(w){f=D;let Z=Ww(w[0],l);if(Z)return Z}if(d&&Tn(D.declarations,cE)){if(l){h=!0;continue}return{accessibility:0}}let J=Vw(D,r,s),q=Kw(J,r,a,a===D?jm(s):s,l,d);if(q)return q}if(h)return{accessibility:0};if(f)return{accessibility:1,errorSymbolName:Li(a,r,s),errorModuleName:f!==a?Li(f,r,1920):void 0}}function mv(n,r){if(n===jd(r))return r;let a=n.exports&&n.exports.get("export=");if(a&&Pf(a,r))return n;let s=Bm(n),l=s.get(r.name);return l&&Pf(l,r)?l:kl(s,d=>{if(Pf(d,r))return d})}function s5(n,r){let a=!!rr(n.declarations)&&Eo(n.declarations);if(r&111551&&a&&a.parent&&po(a.parent)&&(Ka(a)&&a===a.parent.initializer||Mu(a)&&a===a.parent.type))return An(a.parent)}function Vw(n,r,a){let s=jd(n);if(s&&!(n.flags&262144))return D(s);let l=_i(n.declarations,J=>{if(J.parent&&cE(J.parent))return An(J.parent)});if(!rr(l))return;let d=_i(l,J=>mv(J,n)?J:void 0),f=[],h=[];for(let J of d){let[q,...Z]=D(J);f=Fr(f,q),h=Po(h,Z)}return Kr(f,h);function D(J){let q=_i(J.declarations,w),Z=r&&c5(n,r),ie=s5(J,a);if(r&&J.flags&jm(a)&&U_(J,r,1920,!1))return Fr(Kr(Kr([J],q),Z),ie);let Ue=!(J.flags&jm(a))&&J.flags&788968&&Ma(J).flags&524288&&a===111551?lE(r,Dn=>kl(Dn,mn=>{if(mn.flags&jm(a)&&vt(mn)===Ma(J))return mn})):void 0,Xe=Ue?[Ue,...q,J]:[...q,J];return Xe=Fr(Xe,ie),Xe=Po(Xe,Z),Xe}function w(J){return s&&void 0}}function Ste(n,r){}function c5(n,r){let a=Dt(r),s=za(a),l=On(n),d;if(l.extendedContainersByFile&&(d=l.extendedContainersByFile.get(s)))return d;if(l.extendedContainers)return l.extendedContainers;let f=e.getSourceFiles();for(let h of f){let D=An(h);mv(D,n)&&(d=Fr(d,D))}return l.extendedContainers=d||xe}function gv(n,r,a,s,l){if(n&&r){let d=Kw([n],r,n,a,s,l);return d||{accessibility:1,errorSymbolName:Li(n,r,a)}}return{accessibility:0}}function l5(n,r){return gv(n,r,788968,!1,!0).accessibility===0}function zw(n){return n.charCodeAt(0)===95&&n.charCodeAt(1)===95&&n.charCodeAt(2)!==95&&n.charCodeAt(2)!==64&&n.charCodeAt(2)!==35}function u5(n){let r=[],a=0;for(let s=0;s<n.length;s++){let l=n[s];a|=l.flags,l.flags&98304||r.push(l)}return a&32768&&r.push(Gt),r||n}function uE(n){console.debug("TODO - getHomomorphicTypeVariable")}function d5(n){if(n.symbol&&n.symbol.flags&2048&&n.symbol.declarations){let r=YN(n.symbol.declarations[0].parent)}}function W_(n,r){if(!n.isolatedSignatureType){let a=n.declaration?.kind,s=!1,l=$l(134217744,to(16,"__function"));n.declaration&&!wi(n.declaration)&&(l.symbol.declarations=[n.declaration],l.symbol.valueDeclaration=n.declaration),r||(r=n.declaration&&$T(n.declaration,!0)),l.outerTypeParameters=r,l.members=V,l.properties=xe,l.callSignatures=s?xe:[n],l.constructSignatures=s?[n]:xe,l.indexInfos=xe,n.isolatedSignatureType=l}return n.isolatedSignatureType}function p5(n,r,a="arg"){return n?(I.assert(cn(n.name)),n.name.text):`${a}_${r}`}function Hw(n,r){if(Rc(n)){let l=n.parameters.length-1,d=n.parameters[l].name,f=vt(n.parameters[l]);if(Ci(f))return[a(f,l,d)];if(!r&&f.flags&1048576&&di(f.types,Ci))return qn(f.types,h=>a(h,l,d))}return[n.parameters];function a(l,d,f){let h=Lo(l),D=s(l,f),w=qn(h,(J,q)=>{let Z=D&&D[q]?D[q]:w_(n,d+q,l),ie=l.target.elementFlags[q],Ue=ie&12?32768:ie&2?16384:0,Xe=to(1,Z,Ue);return Xe.links.type=ie&4?aa(J):J,Xe});return Kr(n.parameters.slice(0,d),w)}function s(l,d){let f=new Map;return qn(l.target.labeledElementDeclarations,(h,D)=>{let w=p5(h,D,d),J=f.get(w);return J===void 0?(f.set(w,1),w):(f.set(w,J+1),`${w}_${J}`)})}}function qw(n,r){let a=_t(n).resolvedSymbol;if(a)return a;let s=n;if(r){let l=n.parent;Ru(l)&&n===l.name&&(s=L(l))}return Lr(s,n.text,3257279,void 0,!0)}function f5(n,r){let a=io(n,cn);if(a){let s=qw(a,!1);if(s){if(s.flags&1048576){let d=at(s.exportSymbol);if(!r&&d.flags&944&&!(d.flags&3))return;s=d}let l=jd(s);if(l){if(l.flags&512&&l.valueDeclaration?.kind===176){let d=l.valueDeclaration,f=Dt(a);return d!==f?void 0:d}I.fail("not implemented")}}}}function m5(n){return Nt.has(n)}function g5(){return{getReferencedExportContainer:f5,hasGlobalName:m5}}function y5(n){return wt(n)}function kf(n){let r=yv(n);return r!==ys&&r!==ea?r:void 0}function yv(n){if(n.default)n.default===Xu&&(n.default=ea);else if(n.target){let r=yv(n.target);n.default=r?Mt(r,n.mapper):ys}else{n.default=Xu;let r=n.symbol&&Ln(n.symbol.declarations,s=>Al(s)&&s.default),a=r?wt(r):ys;n.default===Xu&&(n.default=a)}return n.default}function dE(n){let r=Es(n);if(r)return r}function T5(n){let r=dE(n);if(!r)return!1;let a=wt(r);return G_(a)}function Gw(n){let r;return n.parent.kind===280&&!of(n.parent)||n.parent.kind===147||n.parent.kind===167&&n.parent.parameterName===n?r=1160127:n.kind===146||n.kind===286||n.parent.kind===146&&n.parent.left===n||n.parent.kind===286&&n.parent.expression===n||n.parent.kind===281&&n.parent.expression===n?r=1920:r=788968,r}function h5(n){return!1}function S5(n,r,a=!0){let s=Gw(n),l=im(n),d=Lr(r,l.text,s,void 0,!1);return d&&d.flags&262144&&s&788968?{accessibility:0}:d?Ww(d,a)||{accessibility:1,errorSymbolName:Ic(l),errorNode:l}:{accessibility:3,errorSymbolName:Ic(l),errorNode:l}}function _5(n){return!ii(n)||!cn(n.name)||!ii(n.expression)&&!cn(n.expression)?!1:cn(n.expression)?Mo(n.expression)==="Symbol"&&Is(n.expression)===(bu("Symbol",1160127,void 0)||eo):cn(n.expression.expression)?Mo(n.expression.name)==="Symbol"&&Mo(n.expression.expression)==="globalThis"&&Is(n.expression.expression)===Zt:!1}function $w(n){return(x5(n)||b5(n))&&!T5(n)}function Tv(n){if(!Qi(n))return!1;if(n.initializer){let a=Mi(n.parent),s=n.parent.parameters.indexOf(n);return I.assert(s>=0),s>=Hl(a,3)}let r=Yp(n.parent);return r?!n.type&&!n.dotDotDotToken&&n.parent.parameters.indexOf(n)>=GC(r).length:!1}function x5(n){return!!z&&!Tv(n)&&!Os(n)&&!!n.initializer&&!su(n,167)}function b5(n){return z&&Tv(n)&&(Os(n)||!n.initializer)&&su(n,167)}function C5(n){return ki(n)||uS(n)}function Qw(n){return ki(n)?E5(n):n.initializer?n.initializer:void 0}function E5(n){let r;if(n&&!oa(n.body)){if(Ac(n)&3)return;let a=n.body;a&&Rs(a)?Xd(a,s=>{if(!r)r=s.expression;else return r=void 0,!0}):r=a}return r}function Yw(n){let r=n.flags&1048576?n.types[0]:n;return!!(r.flags&32768)&&r!==li}function N5(n){let r=rl(n);if(r)return r}function hv(n){let r;return n.locals&&n.locals.forEach(a=>{a.flags&262144&&(r=Fr(r,Ma(a)))}),r}function Sv(n,r,a,s){return gv(n,r,a,s,!0)}function D5(){return{symbolToExpression:(A,R,oe,Ne,en)=>Je(oe,Ne,en,Ge=>va(A,Ge,R)),symbolToEntityName:(A,R,oe,Ne,en)=>Je(oe,Ne,en,Ge=>pe(A,Ge,R,!1)),symbolToNode:(A,R,oe,Ne,en)=>Je(oe,Ne,en,Ge=>JE(A,Ge,R)),typeToTypeNode:(A,R,oe,Ne)=>Je(R,oe,Ne,en=>n(A,en)),symbolToTypeParameterDeclarations:(A,R,oe,Ne)=>Je(R,oe,Ne,en=>void 0),signatureToSignatureDeclaration:(A,R,oe,Ne,en)=>Je(oe,Ne,en,Ge=>Ho(A,R,Ge)),symbolToParameterDeclaration:(A,R,oe,Ne)=>Je(R,oe,Ne,en=>tt(A,en)),typeParameterToDeclaration:(A,R,oe,Ne)=>Je(R,oe,Ne,en=>w(A,en))};function n(A,R){let oe=R.flags,Ne=Hi(A,R);return R.flags=oe,Ne}function r(A){let R=we.createIdentifier(A.name);return A.parent?we.createQualifiedName(r(A.parent),R):R}function a(A,R,oe){return(!wi(R)||!(R.flags&16)||!A.enclosingFile||A.enclosingFile!==Dt(ns(R)))&&(R=we.cloneNode(R)),R===oe||!oe?R:!A.enclosingFile||A.enclosingFile!==Dt(ns(oe))?qu(R,oe):da(qu(R,oe),oe)}function s(A,R,oe){if(Tn(A)){if(l(R))if(oe){if(A.length>2)return[n(A[0],R),we.createTypeReferenceNode(`... ${A.length-2} more ...`,void 0),n(A[A.length-1],R)]}else return[we.createTypeReferenceNode("...",void 0)];let en=!(R.flags&64)?$s():void 0,Ge=[],En=0;for(let rt of A){if(En++,l(R)&&En+2<A.length-1){Ge.push(we.createTypeReferenceNode(`... ${A.length-En} more ...`,void 0));let Xt=n(A[A.length-1],R);Xt&&Ge.push(Xt);break}R.approximateLength+=2;let zt=n(rt,R);zt&&(Ge.push(zt),en&&fB(zt)&&en.add(zt.typeName.text,[rt,Ge.length-1]))}if(en){let rt=R.flags;R.flags|=64,en.forEach(zt=>{if(!pB(zt,([Xt],[wr])=>d(Xt,wr)))for(let[Xt,wr]of zt)Ge[wr]=n(Xt,R)}),R.flags=rt}return Ge}}function l(A){return A.truncating?A.truncating:A.truncating=A.approximateLength>(A.flags&1?I2:Ox)}function d(A,R){return A===R||!!A.symbol&&A.symbol===R.symbol||!!A.aliasSymbol&&A.aliasSymbol===R.aliasSymbol}function f(A,R,oe){I.assert(A&&0<=R&&R<A.length);let Ne=A[R],en=ji(Ne);if(oe.typeParameterSymbolList?.has(en))return;oe.mustCreateTypeParameterSymbolList&&(oe.mustCreateTypeParameterSymbolList=!1,oe.typeParameterSymbolList=new Set(oe.typeParameterSymbolList)),oe.typeParameterSymbolList.add(en);let Ge;if(oe.flags&512&&R<A.length-1){let En=Ne,rt=A[R+1];if(jo(rt)&1){let zt=i5(En.flags&2097152?hl(En):En);Ge=s(qn(zt,Xt=>Np(Xt,rt.links.mapper)),oe)}else Ge=void 0}return Ge}function h(A,R){}function D(A,R,oe,Ne){let en=fv(A,R,oe,!(R.flags&16384)),Ge=oe===111551,En=Xt(en,en.length-1,0);if(Vf(En))return En;let rt=cn(En)?En:En.right,zt=lm(rt);return uT(rt,void 0),we.createTypeReferenceNode(En,zt);function Xt(wr,Zi,Qo){let an=Zi===wr.length-1?Ne:f(wr,Zi,R),ni=wr[Zi],In=wr[Zi-1],Ct;if(Zi===0)R.flags|=16777216,Ct=sE(ni,R),R.approximateLength+=(Ct?Ct.length:0)+1,R.flags^=16777216;else if(In&&Bm(In)){let Rn=Bm(In);kl(Rn,($t,K)=>{if(Pf($t,ni)&&!u_(K)&&K!=="export=")return Ct=K,!0})}if(Ct===void 0){let Rn=es(ni.declarations,ti);if(Rn&&ts(Rn)&&dg(Rn.expression)){let $t=Xt(wr,Zi-1,Qo);return dg($t)&&I.fail("implement me"),$t}Ct=sE(ni,R)}if(R.approximateLength+=Ct.length+1,!(R.flags&16)&&In&&ud(In)&&ud(In).get(ni.name)&&Pf(ud(In).get(ni.name),ni)){let Rn=Xt(wr,Zi-1,Qo);Vf(Rn)?I.fail("implement me"):I.fail("implement me")}let xr=Va(we.createIdentifier(Ct),16777216);if(an&&uT(xr,we.createNodeArray(an)),xr.symbol=ni,Zi>Qo){let Rn=Xt(wr,Zi-1,Qo);return dg(Rn)?we.createQualifiedName(Rn,xr):I.fail("Impossible construct - an export of an indexed access cannot be reachable")}return xr}}function w(A,R,oe=As(A)){let Ne=oe&&ie(oe,Z(A),R);return J(A,R,Ne)}function J(A,R,oe){let Ne=R.flags;R.flags&=-513;let en=we.createModifiersFromModifierFlags(q(A)),Ge=Qc(A,R),En=kf(A),rt=En&&n(En,R);return R.flags=Ne,we.createTypeParameterDeclaration(en,Ge,oe,rt)}function q(A){return 0}function Z(A){return _i(Rr(A.symbol&&A.symbol.declarations,Al),vx)[0]}function ie(A,R,oe){return R&&wn(oe,R,A)||n(A,oe)}function Ue(A,R,oe){return oe===R}function Xe(A,R){if(!(Jn(R)&4)||!Ed(A))return!0;S_(A);let oe=_t(A).resolvedSymbol,Ne=oe&&Ma(oe);return!Ne||Ne!==R.target?!0:rr(A.typeArguments)>=ad(R.target.typeParameters)}function Dn(A,R,oe){let Ne=y5(R);if(!A.mapper)return Ne;let en=Mt(Ne,A.mapper);return oe&&en!==Ne?void 0:en}function mn(A){let R=Cd(A,149);if(R)return R;if(!tf(A))return Cd(A,220)}function wn(A,R,oe,Ne=A.enclosingDeclaration,en=Dn(A,R,!0)){if(en&&Ue(Ne,oe,en)&&Xe(R,oe)){let Ge=zi(A,R);if(Ge)return Ge}}function Bn(A){return ki(A)||_d(A)}function Fn(A,R){let oe=Dn(A,R);return n(oe,A)}function nt(A){return ki(A)||_d(A)?Mi(A).parameters:void 0}function ft(A){return ki(A)||_d(A)?Mi(A).typeParameters:Lb(A)?hv(A):[Ep(An(A.typeParameter))]}function ur(A,R){if(wL(R))return A.mapper===void 0?!0:!!Dn(A,R,!0);if(Ed(R)){let oe=S_(R),Ne=_t(R).resolvedSymbol;if(!Ne)return!1;if(Ne.flags&262144){let en=Ma(Ne);if(A.mapper&&Np(en,A.mapper)!==en)return!1}if(KN(R))return Xe(R,oe)&&!Y0(R)&&Ne.flags&788968}return!0}function _r(A,R){let oe=!1,Ne=im(A),en=Gw(A),Ge;if(YB(Ne))return Ge=An(TS(Ne,!1,!1)),Sv(Ge,Ne,en,!1).accessibility!==0&&(oe=!0,R.tracker.reportInaccessibleThisError()),{introducesError:oe,node:En(A)};if(Ge=Gc(Ne,en,!0,!0),R.enclosingDeclaration&&!(Ge&&Ge.flags&262144)){Ge=Um(Ge);let rt=Gc(Ne,en,!0,!0,R.enclosingDeclaration);if(rt===eo||rt===void 0&&Ge!==void 0||rt&&Ge&&!Pf(Um(rt),Ge))return rt!==eo&&R.tracker.reportInferenceFallback(A),oe=!0,{introducesError:oe,node:A,sym:Ge};Ge=rt}if(Ge)return Ge.flags&1&&Ge.valueDeclaration&&(Ng(Ge.valueDeclaration)||Os(Ge.valueDeclaration))?{introducesError:oe,node:En(A)}:(!(Ge.flags&262144)&&!tl(A)&&Sv(Ge,R.enclosingDeclaration,en,!1).accessibility!==0?(R.tracker.reportInferenceFallback(A),oe=!0):R.tracker.trackSymbol(Ge,R.enclosingDeclaration,en),{introducesError:oe,node:En(A)});return{introducesError:oe,node:A};function En(rt){if(rt===Ne){let Xt=Ma(Ge),wr=Ge.flags&262144?Qc(Xt,R):we.cloneNode(rt);return wr.symbol=Ge,a(R,Va(wr,16777216),rt)}let zt=gm(rt,Xt=>En(Xt),void 0);return zt!==rt&&a(R,zt,rt),zt}}function yo(A,R,oe,Ne){let en=oe?111551:788968,Ge=Gc(R,en,!0);if(!Ge)return;let En=Ge.flags&2097152?hl(Ge):Ge;if(Sv(Ge,A.enclosingDeclaration,en,!1).accessibility===0)return D(En,A,en,Ne)}function zi(A,R){o&&o.throwIfCancellationRequested&&o.throwIfCancellationRequested();let oe=!1,{finalizeBoundary:Ne,startRecoveryScope:en}=rt(),Ge=tc(R,En,wo);if(!Ne())return;if(El(Ge)&&gr(Ge.literal)){let an=ot(Ge.literal).value;Ge.literal=we.createStringLiteral(an)}return A.approximateLength+=R.end-R.pos,Ge;function En(an){if(oe)return an;let ni=en(),In=Bn(an)?zt(an):void 0,Ct=Qo(an);return In?.(),oe?wo(an)&&!fm(an)?(ni(),Fn(A,an)):an:Ct?a(A,Ct,an):void 0}function rt(){let an,ni,In=A.tracker,Ct=A.trackedSymbols;A.trackedSymbols=void 0;let xr=A.encounteredError;return A.tracker=new UD(A,{...In.inner,reportCyclicStructureError(){Rn(()=>In.reportCyclicStructureError())},reportInaccessibleThisError(){Rn(()=>In.reportInaccessibleThisError())},reportInaccessibleUniqueSymbolError(){Rn(()=>In.reportInaccessibleUniqueSymbolError())},reportLikelyUnsafeImportRequiredError(Y){Rn(()=>In.reportLikelyUnsafeImportRequiredError(Y))},reportNonSerializableProperty(Y){Rn(()=>In.reportNonSerializableProperty(Y))},trackSymbol(Y,Te,Oe){return(an??(an=[])).push([Y,Te,Oe]),!1},moduleResolverHost:A.tracker.moduleResolverHost},A.tracker.moduleResolverHost),{startRecoveryScope:$t,finalizeBoundary:K};function Rn(Y){oe=!0,(ni??(ni=[])).push(Y)}function $t(){let Y=an?.length??0,Te=ni?.length??0;return()=>{oe=!1,an&&(an.length=Y),ni&&(ni.length=Te)}}function K(){return A.tracker=In,A.trackedSymbols=Ct,A.encounteredError=xr,ni?.forEach(Y=>Y()),oe?!1:(an?.forEach(([Y,Te,Oe])=>A.tracker.trackSymbol(Y,Te,Oe)),!0)}}function zt(an){return yh(A,an,nt(an),ft(an))}function Xt(an){let ni=lD(an);switch(ni.kind){case 166:return Zi(ni);case 261:return wr(ni)}return tc(an,En,wo)}function wr(an){Xt(an.objectType)!==void 0&&I.fail("todo - update indexed access type node")}function Zi(an){if(ur(A,an)){let{introducesError:ni,node:In}=_r(an.typeName,A),Ct=mm(an.typeArguments,En,wo);if(ni){let xr=yo(A,an.typeName,!1,Ct);if(xr)return a(A,xr,an.typeName)}else{let xr=we.updateTypeReferenceNode(an,In,Ct);return a(A,xr,an)}}}function Qo(an){if(am(an))return tc(an.type,En,wo);if(w4(an)||an.kind===198)return we.createKeywordTypeNode(97);if(O4(an))return we.createKeywordTypeNode(102);if(OL(an))return we.createArrayTypeNode(tc(an.type,En,wo));if(Bu(an))return we.createTypeLiteralNode(qn(an.jsDocPropertyTags,Rn=>{let $t=tc(cn(Rn.name)?Rn.name:Rn.name.right,En,cn),K=Ec(Dn(A,an),$t.text),Y=K&&Rn.typeExpression&&Dn(A,Rn.typeExpression.type)!==K?n(K,A):void 0;return we.createPropertySignature(void 0,$t,Y||Rn.typeExpression&&tc(Rn.typeExpression.type,En,wo)||we.createKeywordTypeNode(97))}));if(Ed(an)&&cn(an.typeName)&&an.typeName.text==="")return qu(we.createKeywordTypeNode(97),an);if((R4(an)||Ed(an))&&qI(an))return we.createTypeLiteralNode([we.createIndexSignature(void 0,[we.createParameterDeclaration(void 0,void 0,"x",void 0,tc(an.typeArguments[0],En,wo))],tc(an.typeArguments[1],En,wo))]);if(DN(an))return we.createFunctionTypeNode(mm(an.typeParameters,En,Al),qn(an.parameters,(Rn,$t)=>we.createParameterDeclaration(void 0,Ct(Rn),a(A,we.createIdentifier(xr(Rn,$t)),Rn),we.cloneNode(Rn.ampToken),tc(Rn.type,En,wo),void 0)),tc(an.type,En,wo)||we.createKeywordTypeNode(97));if(wL(an))return ur(A,an)||(oe=!0),an;if(Al(an))return we.updateTypeParameterDeclaration(an,mm(an.modifiers,En,Gp),a(A,Qc(Ma(An(an)),A),an),tc(an.constraint,En,wo),tc(an.default,En,wo));if(Vf(an)){let Rn=wr(an);return Rn||(oe=!0,an)}if(Ed(an)){let Rn=Zi(an);return Rn||(oe=!0,an)}if(Fc(an)&&an.name.kind===147&&!Av(an.name)){if(!db(an))return ni(an,En);if(!(A.flags&1&&Cs(an.name.expression)&&hE(an.name).flags&1))return}if(ki(an)&&!an.type||Oc(an)&&!an.type&&!an.initializer||Nd(an)&&!an.type&&!an.initializer||Qi(an)&&!an.type&&!an.initializer){let Rn=ni(an,En);return Rn===an&&(Rn=a(A,we.cloneNode(an),an)),Rn.type=we.createKeywordTypeNode(97),Qi(an)&&(Rn.modifiers=void 0),Rn}if(ts(an)&&Cs(an.expression)){let{node:Rn,introducesError:$t}=_r(an.expression,A);if($t){let K=Nc(lr(an.expression)),Y=n(K,A),Te;if(El(Y))Te=Y.literal;else{let Oe=eO(an.expression),yn=typeof Oe.value=="string"?we.createStringLiteral(Oe.value,void 0):typeof Oe.value=="number"?we.createIntLiteral(Oe.value,0):void 0;if(!yn)return an;Te=yn}return Te.kind===16&&zp(Te.text,il(Qe))?we.createIdentifier(Te.text):Te.kind===10&&!Te.text.startsWith("-")?Te:we.updateComputedPropertyName(an,Te)}else return we.updateComputedPropertyName(an,Rn)}if(fm(an)){let Rn;if(cn(an.parameterName)){let{node:$t,introducesError:K}=_r(an.parameterName,A);oe=oe||K,Rn=$t}else Rn=we.cloneNode(an.parameterName);return we.updateTypePredicateNode(an,void 0,Rn,tc(an.type,En,wo))}if(Mu(an)){let Rn=ni(an,En),$t=a(A,Rn===an?we.cloneNode(an):Rn,an),K=Yi($t);return Va($t,K|(A.flags&1024&&Mu(an)?0:1)),$t}if(Pi(an)&&A.flags&268435456&&!an.singleQuote){let Rn=we.cloneNode(an);return Rn.singleQuote=!0,Rn}if(Lb(an)){let Rn=tc(an.checkType,En,wo),$t=zt(an),K=tc(an.extendsType,En,wo),Y=tc(an.trueType,En,wo);$t();let Te=tc(an.falseType,En,wo);I.fail("todo - update conditional type node")}return ni(an,En);function ni(Rn,$t){let K=!A.enclosingFile||A.enclosingFile!==Dt(Rn);return gm(Rn,$t,void 0,K?In:void 0)}function In(Rn,$t,K,Y,Te){let Oe=mm(Rn,$t,K,Y,Te);return Oe&&(Oe.pos!==-1||Oe.end!==-1)&&(Oe===Rn&&(Oe=we.createNodeArray(Rn.slice(),Rn.hasTrailingComma)),La(Oe,-1,-1)),Oe}function Ct(Rn){return Rn.dotDotDotToken||(Rn.type&&OL(Rn.type)?we.createToken(25):void 0)}function xr(Rn,$t){return Rn.name&&cn(Rn.name)&&Rn.name.text==="this"?"this":Ct(Rn)?"args":`arg${$t}`}}}function Jr(A,R){return A.declarations&&fr(A.declarations,oe=>!!dE(oe)&&(!R||!!It(oe,Ne=>Ne===R)))}function Gi(A,R,oe,Ne,en){let Ge=oe;en&&(oe=Fp(oe,!Qi(Ne)));let En=wn(A,R,oe,Ne);if(En)return en&&Yw(oe)&&!vu(Dn(A,R),rt=>!!(rt.flags&32768))?we.createUnionTypeNode([En,we.createKeywordTypeNode(96)]):En;if(en&&Ge!==oe){let rt=wn(A,R,Ge,Ne);if(rt)return we.createUnionTypeNode([rt,we.createKeywordTypeNode(96)])}}function dr(A,R,oe,Ne){let en=R&&(Qi(R)||Os(R))&&$w(R),Ge=A.enclosingDeclaration,En=A.flags;if(R&&qB(R)&&!(A.flags&-2147483648)&&gn.serializeTypeOfDeclaration(R,A),A.flags|=-2147483648,Ge&&(!zo(oe)||A.flags&1)){let wr=R&&dE(R)?R:Jr(Ne);if(wr&&!pc(wr)){let Zi=dE(wr),Qo=en||!!(Ne.flags&4&&Ne.flags&16777216&&$B(wr)&&Ne.links?.mappedType&&Yw(oe)),an=!fm(Zi)&&Gi(A,Zi,oe,wr,Qo);if(an)return A.flags=En,an}}let rt=R??Ne.valueDeclaration??Ne.declarations?.[0],zt=rt&&C5(rt)?Qw(rt):void 0,Xt=Ja(A,zt,oe,en);return A.flags=En,Xt}function Ja(A,R,oe,Ne){let en=A.flags;R&&!(A.flags&-2147483648)&&gn.serializeTypeOfExpression(R,A,Ne),A.flags|=-2147483648;let Ge=ka(A,R,oe,Ne);return A.flags=en,Ge}function ka(A,R,oe,Ne){if(R){let en=kx(R)?R.type:lf(R)?mT(R):void 0;if(en){let Ge=Gi(A,en,oe,R.parent,Ne);if(Ge)return Ge}}return Ne&&(oe=Fp(oe)),n(oe,A)}function We(A,R,oe){return R?R.name?R.name.kind===89?Va(we.cloneNode(R.name),16777216):R.name.kind===146?Va(we.cloneNode(R.name.right),16777216):Ne(R.name):us(A):us(A);function Ne(en){return Ge(en);function Ge(En){oe.tracker.canTrackSymbol&&ts(En)&&Av(En)&&Se(En.expression,oe.enclosingDeclaration,oe);let rt=gm(En,Ge,void 0,void 0,Ge);return fo(rt)&&(rt=we.updateBindingElement(rt,rt.dotDotDotToken,rt.propertyName,rt.name,void 0)),wi(rt)||(rt=we.cloneNode(rt)),Va(rt,16777217)}}}function Se(A,R,oe){if(!oe.tracker.canTrackSymbol)return;let Ne=im(A),en=Lr(Ne,Ne.text,1160127,void 0,!0);en&&oe.tracker.trackSymbol(en,R,111551)}function tt(A,R,oe){let Ne=mn(A),en=vt(A),Ge=dr(R,Ne,en,A),En=!(R.flags&8192)&&oe&&Ne&&SS(Ne)?qn(a2(Ne),we.cloneNode):void 0,zt=Ne&&Dx(Ne)||jo(A)&32768?we.createToken(25):void 0,Xt=We(A,Ne,R),Zi=we.createParameterDeclaration(En,zt,Xt,void 0,Ge,void 0);return R.approximateLength+=us(A).length+3,Zi}function Rt(A,R){if(A.thisParameter)return tt(A.thisParameter,R);if(A.declaration&&mr(A.declaration)){let oe=xN(A.declaration);if(oe&&oe.typeExpression)return we.createParameterDeclaration(void 0,void 0,"this",void 0,n(Dn(R,oe.typeExpression),R))}}function Tt(A,R){let oe=A.flags&256,Ne=A.flags;oe&&(A.flags&=-257);let en,Ge=Ii(R);return Ge&&!(oe&&cs(Ge))?(R.declaration&&!(A.flags&-2147483648)&&gn.serializeReturnTypeForSignature(R.declaration,A),A.flags|=-2147483648,en=Dr(A,R)):oe||(en=we.createKeywordTypeNode(97)),A.flags=Ne,en}function ei(A,R){let oe=A.kind===1||A.kind===3?Va(we.createIdentifier(A.parameterName),16777216):void 0,Ne=A.type&&n(A.type,R);return we.createTypePredicateNode(void 0,oe,Ne)}function Dr(A,R){let oe=qs(R),Ne=Ii(R);if(A.enclosingDeclaration&&(!zo(Ne)||A.flags&1)&&R.declaration&&!wi(R.declaration)){let Ge=N5(R.declaration);if(Ge){let En=Gi(A,Ge,Ne,A.enclosingDeclaration);if(En)return En}}if(oe)return ei(oe,A);let en=R.declaration&&Qw(R.declaration);return Ja(A,en,Ne)}function Ho(A,R,oe,Ne){let en,Ge,En=Hw(A,!0)[0],rt=yh(oe,A.declaration,En,A.typeParameters,A.parameters,A.mapper);oe.approximateLength+=3,oe.flags&32&&A.target&&A.mapper&&A.target.typeParameters?Ge=A.target.typeParameters.map(an=>n(Mt(an,A.mapper),oe)):en=A.typeParameters&&A.typeParameters.map(an=>w(an,oe));let zt=oe.flags;oe.flags&=-257;let Xt=(Tn(En,an=>an!==En[En.length-1]&&!!(jo(an)&32768))?A.parameters:En).map(an=>tt(an,oe,!1));oe.flags=zt;let wr=Tt(oe,A),Zi=Ne?.modifiers,Qo=R===151?we.createCallSignature(en,Xt,wr):R===156?we.createMethodSignature(Zi,Ne?.name??we.createIdentifier(""),void 0,en,Xt,wr):R===154?I.fail("todo-method decl"):R===150?we.createIndexSignature(Zi,Xt,wr):R===169?we.createFunctionDeclaration(Zi,Ne?.name?Ua(Ne.name,cn):we.createIdentifier(""),Xt,wr,void 0):R===270?we.createFunctionExpression(Zi,Ne?.name?Ua(Ne.name,cn):we.createIdentifier(""),Xt,wr,we.createBlock([])):R===271?I.fail("todo-arrow"):R===196?I.fail("todo-jsdoc function"):R===283?we.createInlineClosure(we.createBlock([])):R===158?we.createFunctionTypeNode(en,Xt,wr):I.assertNever(R);if(Ge&&(Qo.typeArguments=we.createNodeArray(Ge)),A.declaration?.kind===202&&A.declaration.parent.kind===218){let an=Ic(A.declaration.parent.parent,!0).slice(2,-2).split(/\r\n|\n|\r/).map(ni=>ni.replace(/^\s+/," ")).join(`
28
+ `);bD(Qo,3,an,!0)}return rt?.(),Qo}function Hi(A,R){o&&o.throwIfCancellationRequested&&o.throwIfCancellationRequested();let oe=R.flags&8388608;if(R.flags&=-8388609,!A){if(!(R.flags&262144)){R.encounteredError=!0;return}return R.approximateLength+=3,we.createKeywordTypeNode(97)}if(R.flags&536870912||(A=Vc(A)),A.flags&1)return A.aliasSymbol?we.createTypeReferenceNode(r(A.aliasSymbol),s(A.aliasTypeArguments,R)):A===ms?bD(we.createKeywordTypeNode(97),3,"unresolved"):(R.approximateLength+=3,we.createKeywordTypeNode(A===Ws?129:97));if(A.flags&524288){if(A.aliasSymbol)return we.createTypeReferenceNode(r(A.aliasSymbol),s(A.aliasTypeArguments,R));if(A===ms)return bD(we.createKeywordTypeNode(140),3,"unresolved");if(ca(A)){let In=Hi(Eo(A.resolvedTypeArguments),R);return we.createArrayTypeNode(In)}return wm(A)?(R.approximateLength+=3,we.createKeywordTypeNode(104)):(R.approximateLength+=3,we.createKeywordTypeNode(140))}if(A.flags&2)return we.createKeywordTypeNode(102);if(A.flags&4096)return R.approximateLength+=5,we.createKeywordTypeNode(107);if(A.flags&4)return R.approximateLength+=6,we.createKeywordTypeNode(94);if(A.flags&8)return R.approximateLength+=6,we.createKeywordTypeNode(92);if(A.flags&64)return R.approximateLength+=5,we.createKeywordTypeNode(93);if(A.flags&1056){if(A.symbol.flags&8){let In=jd(A.symbol),Ct=D(In,R,788968);if(Ma(In)===A)return Ct;let xr=us(A.symbol);return zp(xr,1)?Qo(Ct,we.createTypeReferenceNode(xr,void 0)):I.fail("Unhandled type node kind returned from `symbolToTypeNode`.")}return D(A.symbol,R,788968)}if(A.flags&8192)return R.approximateLength+=A.value.length+3,we.createLiteralTypeNode(Va(we.createBytesLiteral(A.value),16777216));if(A.flags&128)return R.approximateLength+=A.value.length+2,we.createLiteralTypeNode(Va(we.createStringLiteral(A.value),16777216));if(A.flags&256){let In=A.value;return R.approximateLength+=(""+In).length,we.createLiteralTypeNode(In<0?we.createPrefixUnaryExpression(42,we.createIntLiteral(-In)):we.createIntLiteral(In))}if(A.flags&2048){let In=A.value;return R.approximateLength+=(""+In.toFixed()).length,we.createLiteralTypeNode(In<0?we.createPrefixUnaryExpression(42,we.createFloatLiteral(-In)):we.createFloatLiteral(In))}if(A.flags&512)return R.approximateLength+=A.intrinsicName.length,we.createLiteralTypeNode(A.intrinsicName==="true"?we.createIntLiteral(1):we.createIntLiteral(0));if(A.flags&16384)return R.approximateLength+=4,we.createKeywordTypeNode(105);if(A.flags&32768)return R.approximateLength+=9,we.createKeywordTypeNode(96);if(A.flags&67108864)return R.approximateLength+=6,we.createKeywordTypeNode(140);if(!oe&&A.aliasSymbol&&(R.flags&16384||l5(A.aliasSymbol,R.enclosingDeclaration))){let In=s(A.aliasTypeArguments,R);return zw(A.aliasSymbol.name)&&!(A.aliasSymbol.flags&32)?we.createTypeReferenceNode(we.createIdentifier(""),In):rr(In)===1&&A.aliasSymbol===W.symbol?we.createArrayTypeNode(In[0]):D(A.aliasSymbol,R,788968,In)}let Ne=Jn(A);if(Ne&4)return I.assert(!!(A.flags&524288)),A.node?Xt(A,Zi):Zi(A);if(A.flags&262144||Ne&3){if(A.flags&262144&&Yr(R.inferTypeParameters,A))return I.fail("implement");if(R.flags&4&&A.flags&262144){let Ct=Qc(A,R);return R.approximateLength+=Mo(Ct).length,we.createTypeReferenceNode(we.createIdentifier(Mo(Ct)),void 0)}if(A.symbol)return D(A.symbol,R,788968);let In=(A===Rl||A===_c)&&y&&y.symbol?(A===_c?"sub-":"super-")+us(y.symbol):"?";return we.createTypeReferenceNode(we.createIdentifier(In),void 0)}if(A.flags&1048576&&A.origin&&(A=A.origin),A.flags&3145728){let In=u5(A.types);if(rr(In)===1)return n(In[0],R);let Ct=s(In,R,!0);if(Ct&&Ct.length>0)return we.createUnionTypeNode(Ct);!R.encounteredError&&!(R.flags&262144)&&(R.encounteredError=!0);return}if(Ne&48)return I.assert(!!(A.flags&524288)),zt(A);if(A.flags&4194304&&I.fail("implement"),A.flags&134217728)return I.fail("Should be unreachable.");if(A.flags&268435456)return I.fail("Should be unreachable.");if(A.flags&8388608)return I.fail("Should be unreachable.");if(A.flags&16777216)return I.fail("Should be unreachable.");if(A.flags&33554432)return I.fail("Should be unreachable.");return;function en(In){return In.flags&1048576?R.visitedTypes?.has(ra(In))?(R.flags&131072||(R.encounteredError=!0,R.tracker?.reportCyclicStructureError?.()),$c(R)):Xt(In,Ct=>n(Ct,R)):n(In,R)}function Ge(In){return!!uE(In)}function En(In){return!!In.target&&Ge(In.target)&&!Ge(In)}function rt(In){I.fail("implement me")}function zt(In){let Ct=In.id,xr=In.symbol;if(xr){if(!!(Jn(In)&8388608)){let Y=In.node;return R.visitedTypes?.has(Ct)?$c(R):Xt(In,wr)}if(R.visitedTypes?.has(Ct)){let K=d5(In);return K?D(K,R,788968):$c(R)}else return Xt(In,wr)}else return wr(In);function Rn(){if(!!(xr.flags&16)&&(xr.parent||Ln(xr.declarations,K=>K.parent.kind===176)))return(!!(R.flags&4096)||R.visitedTypes?.has(Ct))&&(!(R.flags&8)||Jw(xr,R.enclosingDeclaration))}}function Xt(In,Ct){let xr=In.id,Rn=Jn(In)&16&&In.symbol&&In.symbol.flags&32,$t=Jn(In)&4&&In.node?"N"+za(In.node):In.flags&16777216?"N"+za(In.root.node):In.symbol?(Rn?"+":"")+ji(In.symbol):void 0;R.visitedTypes||(R.visitedTypes=new Set),$t&&!R.symbolDepth&&(R.symbolDepth=new Map);let K=R.enclosingDeclaration&&_t(R.enclosingDeclaration),Y=`${ra(In)}|${R.flags}`;K&&(K.serializedTypes||(K.serializedTypes=new Map));let Te=K?.serializedTypes?.get(Y);if(Te)return Te.trackedSymbols?.forEach(([or,Qr,it])=>R.tracker.trackSymbol(or,Qr,it)),Te.truncating&&(R.truncating=!0),R.approximateLength+=Te.addedLength,Hn(Te.node);let Oe;if($t){if(Oe=R.symbolDepth.get($t)||0,Oe>10)return $c(R);R.symbolDepth.set($t,Oe+1)}R.visitedTypes.add(xr);let yn=R.trackedSymbols;R.trackedSymbols=void 0;let Me=R.approximateLength,sn=Ct(In),Vn=R.approximateLength-Me;return!R.reportedDiagnostic&&!R.encounteredError&&K?.serializedTypes?.set(Y,{node:sn,truncating:R.truncating,addedLength:Vn,trackedSymbols:R.trackedSymbols}),R.visitedTypes.delete(xr),$t&&R.symbolDepth.set($t,Oe),R.trackedSymbols=yn,sn;function Hn(or){return!wi(or)&&io(or)===or?or:a(R,we.cloneNode(gm(or,Hn,void 0,Ht,Hn)),or)}function Ht(or,Qr,it,mt,Er){return or&&or.length===0?da(we.createNodeArray(void 0,or.hasTrailingComma),or):mm(or,Qr,it,mt,Er)}}function wr(In){let Ct=ql(In);if(!Ct.properties.length&&!Ct.indexInfos.length){if(!Ct.callSignatures.length&&!Ct.constructSignatures.length)return R.approximateLength+=2,Va(we.createTypeLiteralNode(void 0),1);if(Ct.callSignatures.length===1&&!Ct.constructSignatures.length){let Y=Ct.callSignatures[0];return Ho(Y,158,R)}}let xr=Rr(Ct.constructSignatures,Y=>!!(Y.flags&4));if(Tn(xr)){let Y=qn(xr,Oe=>W_(Oe)),Te=Ct.callSignatures.length+(Ct.constructSignatures.length-xr.length)+Ct.indexInfos.length+(R.flags&2048?yd(Ct.properties,Oe=>!(Oe.flags&4194304)):rr(Ct.properties));I.fail("not supported")}let Rn=R.flags;R.flags|=4194304;let $t=ni(Ct);R.flags=Rn;let K=we.createTypeLiteralNode($t);return R.approximateLength+=2,Va(K,R.flags&1024?0:1),K}function Zi(In){let Ct=Lo(In);if(In.target===W||In.target===be){if(R.flags&2){let $t=n(Ct[0],R);return we.createTypeReferenceNode(In.target===W?"Array":"ReadonlyArray",[$t])}let xr=n(Ct[0],R);return we.createArrayTypeNode(xr)}else if(In.target.objectFlags&8){Ct=Ia(Ct,(xr,Rn)=>td(xr,!!(In.target.elementFlags[Rn]&2))),console.debug("todo - tuple type"),R.encounteredError=!0;return}else{if(R.flags&2048&&In.symbol.valueDeclaration&&ia(In.symbol.valueDeclaration)&&!Jw(In.symbol,R.enclosingDeclaration))return zt(In);{let xr=In.target.outerTypeParameters,Rn=0,$t;if(xr){let Oe=xr.length;for(;Rn<Oe;){let yn=Rn,Me=x1(xr[Rn]);do Rn++;while(Rn<Oe&&x1(xr[Rn])===Me);if(!PF(xr,Ct,yn,Rn)){let sn=s(Ct.slice(yn,Rn),R),Vn=R.flags;R.flags|=16;let Hn=D(Me,R,788968,sn);R.flags=Vn,$t=$t?Qo($t,Hn):Hn}}}let K;if(Ct.length>0){let Oe=(In.target.typeParameters||xe).length;K=s(Ct.slice(Rn,Oe),R)}let Y=R.flags;R.flags|=16;let Te=D(In.symbol,R,788968,K);return R.flags=Y,$t?Qo($t,Te):Te}}}function Qo(In,Ct){{let xr=In.typeArguments,Rn=In.typeName;cn(Rn)?xr!==lm(Rn)&&(Rn=uT(we.cloneNode(Rn),xr)):I.fail("implement me"),xr=Ct.typeArguments;let $t=an(Ct);for(let K of $t)Rn=we.createQualifiedName(Rn,K);I.fail("implement me")}}function an(In){let Ct=In.typeName,xr=[];for(;!cn(Ct);)xr.unshift(Ct.right),Ct=Ct.left;return xr.unshift(Ct),xr}function ni(In){if(l(R))return[we.createPropertySignature(void 0,"...",void 0)];let Ct=[];for(let $t of In.callSignatures)console.debug("todo - callsig");for(let $t of In.indexInfos)Ct.push(Ss($t,R,In.objectFlags&1024?$c(R):void 0));let xr=In.properties;if(!xr)return Ct;let Rn=0;for(let $t of xr){if(Rn++,R.flags&2048){if($t.flags&4194304)continue;vl($t)&6&&R.tracker.reportPrivateInBaseOfClassExpression&&R.tracker.reportPrivateInBaseOfClassExpression($t.name)}if(l(R)&&Rn+2<xr.length-1){Ct.push(we.createPropertySignature(void 0,`... ${xr.length-Rn} more ...`,void 0)),Ai(xr[xr.length-1],R,Ct);break}Ai($t,R,Ct)}return Ct.length?Ct:void 0}}function Ai(A,R,oe){console.warn("implement me");let Ne=!!(jo(A)&8192)}function Ss(A,R,oe){let Ne=yB(A)||"x",en=n(A.keyType,R),Ge=we.createParameterDeclaration(void 0,void 0,Ne,void 0,en,void 0);return oe||(oe=n(A.type||pt,R)),!A.type&&!(R.flags&2097152)&&(R.encounteredError=!0),R.approximateLength+=Ne.length+4,we.createIndexSignature(void 0,[Ge],oe)}function $c(A){return A.approximateLength+=3,A.flags&1?we.createKeywordTypeNode(97):we.createTypeReferenceNode(we.createIdentifier("..."),void 0)}function Zl(A){let R=A.mustCreateTypeParameterSymbolList,oe=A.mustCreateTypeParametersNamesLookups;A.mustCreateTypeParameterSymbolList=!0,A.mustCreateTypeParametersNamesLookups=!0;let Ne=A.typeParameterNames,en=A.typeParameterNamesByText,Ge=A.typeParameterNamesByTextNextNameCount,En=A.typeParameterSymbolList;return()=>{A.typeParameterNames=Ne,A.typeParameterNamesByText=en,A.typeParameterNamesByTextNextNameCount=Ge,A.typeParameterSymbolList=En,A.mustCreateTypeParameterSymbolList=R,A.mustCreateTypeParametersNamesLookups=oe}}function Jd(A,R,oe){let Ne=Lr(R.enclosingDeclaration,A,788968,void 0,!1);return Ne&&Ne.flags&262144?Ne!==oe.symbol:!1}function Qc(A,R){if(R.flags&4&&R.typeParameterNames){let en=R.typeParameterNames.get(ra(A));if(en)return en}let oe=pe(A.symbol,R,788968,!0);if(!(oe.kind&89))return we.createIdentifier("(Missing type parameter)");let Ne=A.symbol?.declarations?.[0];if(Ne&&Al(Ne)&&(oe=a(R,oe,Ne.name)),R.flags&4){let en=oe.text,Ge=R.typeParameterNamesByTextNextNameCount?.get(en)||0,En=en;for(;R.typeParameterNamesByText?.has(En)||Jd(En,R,A);)Ge++,En=`${en}_${Ge}`;if(En!==en){let rt=lm(oe);oe=we.createIdentifier(En),uT(oe,rt)}R.mustCreateTypeParametersNamesLookups&&(R.mustCreateTypeParametersNamesLookups=!1,R.typeParameterNames=new Map(R.typeParameterNames),R.typeParameterNamesByTextNextNameCount=new Map(R.typeParameterNamesByTextNextNameCount),R.typeParameterNamesByText=new Set(R.typeParameterNamesByText)),R.typeParameterNamesByTextNextNameCount.set(en,Ge),R.typeParameterNames.set(ra(A),oe),R.typeParameterNamesByText.add(En)}return oe}function yh(A,R,oe,Ne,en,Ge){let En=Zl(A),rt,zt,Xt=A.enclosingDeclaration,wr=A.mapper;if(Ge&&(A.mapper=Ge),A.enclosingDeclaration&&R){let Zi=function(Qo,an){I.assert(A.enclosingDeclaration);let ni;_t(A.enclosingDeclaration).fakeScopeForSignatureDeclaration===Qo?ni=A.enclosingDeclaration:A.enclosingDeclaration.parent&&_t(A.enclosingDeclaration.parent).fakeScopeForSignatureDeclaration===Qo&&(ni=A.enclosingDeclaration.parent),I.assertOptionalNode(ni,Rs);let In=ni?.locals??Ei(),Ct,xr;if(an((Rn,$t)=>{if(ni){let K=In.get(Rn);K?xr=Fr(xr,{name:Rn,oldSymbol:K}):Ct=Fr(Ct,Rn)}In.set(Rn,$t)}),ni)return function(){Ln(Ct,$t=>In.delete($t)),Ln(xr,$t=>In.set($t.name,$t.oldSymbol))};{let Rn=we.createBlock(xe);_t(Rn).fakeScopeForSignatureDeclaration=Qo,Rn.locals=In,Bs(Rn,A.enclosingDeclaration),A.enclosingDeclaration=Rn}};rt=Tn(oe)?Zi("params",Qo=>{if(oe)for(let an=0;an<oe.length;an++){let ni=oe[an],In=en?.[an];en&&In!==ni?(Qo(ni.name,eo),In&&Qo(In.name,eo)):Ln(ni.declarations,Ct=>{if(Qi(Ct)&&oo(Ct.name))return xr(Ct.name),!0;return;function xr($t){Ln($t.elements,K=>{switch(K.kind){case 266:return Rn(K);default:return I.assertNever(K)}})}function Rn($t){if(oo($t.name))return xr($t.name);let K=An($t);Qo(K.name,K)}})||Qo(ni.name,ni)}}):void 0,A.flags&4&&Tn(Ne)&&(zt=Zi("typeParams",Qo=>{for(let an of Ne??xe){let ni=Qc(an,A).text;Qo(ni,an.symbol)}}))}return()=>{rt?.(),zt?.(),En(),A.enclosingDeclaration=Xt,A.mapper=wr}}function va(A,R,oe){let Ne=fv(A,R,oe);return en(Ne,Ne.length-1);function en(Ge,En){let rt=Ge[En];En===0&&(R.flags|=16777216);let zt=sE(rt,R);En===0&&(R.flags^=16777216);let Xt=zt.charCodeAt(0);if(En===0||tB(zt,ye)){let wr=Va(we.createIdentifier(zt),16777216);return wr.symbol=rt,En>0?we.createPropertyAccessExpression(en(Ge,En-1),wr):wr}else{Xt===91&&(zt=zt.substring(1,zt.length-1),Xt=zt.charCodeAt(0));let wr;if(qN(Xt)&&!(rt.flags&8)?wr=we.createStringLiteral(Fl(zt).replace(/\\./g,Zi=>Zi.substring(1)),Xt===39):""+ +zt===zt&&(wr=we.createIntLiteral(+zt)),!wr){let Zi=Va(we.createIdentifier(zt),16777216);Zi.symbol=rt,wr=Zi}return we.createElementAccessExpression(en(Ge,En-1),wr)}}}function JE(A,R,oe){if(R.flags&1073741824){if(A.valueDeclaration){let en=ti(A.valueDeclaration);if(en&&ts(en))return en}let Ne=On(A).nameType}return va(A,R,oe)}function pe(A,R,oe,Ne){let en=fv(A,R,oe);return Ne&&en.length!==1&&!R.encounteredError&&!(R.flags&65536)&&(R.encounteredError=!0),Ge(en,en.length-1);function Ge(En,rt){let zt=En[rt];rt===0&&(R.flags|=16777216);let Xt=sE(zt,R);rt===0&&(R.flags^=16777216);let wr=Va(we.createIdentifier(Xt),16777216);return wr.symbol=zt,rt>0?we.createQualifiedName(Ge(En,rt-1),wr):wr}}function Je(A,R,oe,Ne){let en=oe?.trackSymbol?oe.moduleResolverHost:R&134217728?uQ(e):void 0,Ge={enclosingDeclaration:A,enclosingFile:A&&Dt(A),flags:R||0,tracker:void 0,encounteredError:!1,reportedDiagnostic:!1,visitedTypes:void 0,symbolDepth:void 0,inferTypeParameters:void 0,approximateLength:0,trackedSymbols:void 0,bundled:!1,truncating:!1,usedSymbolNames:void 0,remappedSymbolNames:void 0,remappedSymbolReferences:void 0,reverseMappedStack:void 0,mustCreateTypeParameterSymbolList:!0,typeParameterSymbolList:void 0,mustCreateTypeParametersNamesLookups:!0,typeParameterNames:void 0,typeParameterNamesByText:void 0,typeParameterNamesByTextNextNameCount:void 0,mapper:void 0};Ge.tracker=new UD(Ge,oe,en);let En=Ne(Ge);return Ge.truncating&&Ge.flags&1&&Ge.tracker.reportTruncationError(),Ge.encounteredError?void 0:En}}function Jm(n,r,a,s){let l=N.Cannot_find_object_0;return P5(n,r,a,s?void 0:l)}function P5(n,r,a,s,l=!1){let d=Pi(r)?r.text:ao(r)&&a&&l_(a)?a.value:ot(r)?.value??"";return d===""?pt.getSymbol():k5(n,d,s,r,l)}function k5(n,r,a,s,l=!1){let d=Dt(n),f=1,h=1,D=e.getResolvedModule(d,r,f)?.resolvedModule,w=D&&BL(Qe,D,d),J=D&&!w&&e.getSourceFile(D.resolvedFileName);if(J){if(w&&on(s,w,r,D.resolvedFileName),J.symbol){let Z=vt(J.symbol);return nv(Z),at(J.symbol)}a&&on(s,N.File_0_is_not_a_module,J.fileName);return}if(a)if(w)on(s,w,r,D.resolvedFileName);else{let Z=hg(r)&&!wg(r);on(s,a,r)}return;function q(Z){return TI(r,Z)}}function _v(n,r){return n}function xv(n,r=!1){switch(n.kind){case 273:case 276:I.fail("not implemented yet");case 175:return Gc(n.name,901119,!0,r);case 174:return Xw(n.initializer,r);case 281:case 286:return v5(n,r);default:return I.fail()}}function Xw(n,r){if(!dg(n)&&!Cs(n))return;let a=Gc(n,901119,!0,r);return a||(Xa(n),_t(n).resolvedSymbol)}function v5(n,r){if(gr(n.parent)&&n.parent.left===n&&n.parent.operatorToken.kind===74)return Xw(n.parent.right,r)}function Sy(n){return n.declarations&&dM(n.declarations,F5)}function F5(n){return ps(n)&&gr(n.parent)&&n.parent.left===n&&n.parent.operatorToken.kind===74&&Zw(n.parent.right)||n.kind===175||n.kind===174&&Zw(n.initializer)||n.kind===237&&tS(n)}function Zw(n){return V2(n)}function I5(n,r,a){if(a&111551){if(n5(r)){let d=n.parent.parent;return on(n,N._0_only_refers_to_a_type_but_is_being_used_as_a_value_here,r),!0}let s=Mm(Lr(n,r,788544,void 0,!1)),l=s&&hy(s);if(s&&l!==void 0&&!(l&111551)){let d=r;return on(n,N._0_only_refers_to_a_type_but_is_being_used_as_a_value_here,d),!0}}return!1}function eO(n,r){let a=Gc(n,111551,!0);if(!a)return ua(void 0);if(n.kind===89){let s=n;if(jI(s.text)&&a===bu(s.text,111551,void 0))return ua(+s.text,!1)}if(L5(a)){let s=a.valueDeclaration;if(s&&po(s)&&!s.type&&s.initializer&&(!r||s!==r&&pE(s,r))){let l=ot(s.initializer,s);return r&&Dt(r)!==Dt(s)?ua(l.value,!1,!0,!0):ua(l.value,l.isSyntacticallyString,l.resolvedOtherFiles,!0)}}return ua(void 0)}function L5(n){return(n.flags&3)!==0}function A5(n,r){let a=n.expression;if(Cs(a)&&hd(n.argumentExpression)){let s=Gc(a,111551,!0);if(s&&s.flags&384){let l=n.argumentExpression.text;s.exports.get(l)&&I.fail("no enum members")}}return ua(void 0)}function w5(n,r,a){if(a&788584){let s=Mm(Lr(n,r,111127,void 0,!1));if(s&&!(s.flags&1920))return on(n,N._0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0,r),!0}return!1}function nO(n,r,a){return!!r&&!!It(n,s=>s===r||(s===a||ki(s)&&(!Yp(s)||Ac(s)&3)?"quit":!1))}function pE(n,r){let a=Dt(n),s=Dt(r),l=Dg(n);if(a!==s){if(n.flags&33554432||f(r,n))return!0;let D=e.getSourceFiles();return D.indexOf(a)<=D.indexOf(s)}if(r.flags&16777216||fb(r)||a1(r))return!0;if(n.pos<=r.pos){if(n.kind===266){let D=Zp(r,266);return D?It(D,fo)!==It(n,fo)||n.pos<D.pos:pE(Zp(n,237),r)}else{if(n.kind===237)return!d(n,r);if(ia(n))return!It(r,w=>w===n?"quit":ts(w)?w.parent.parent===n:"quit");if(Oc(n))return!h(n,r,!1)}return!0}if(f(r,n))return!0;return!1;function d(D,w){switch(D.parent.parent.kind){case 242:case 243:case 244:if(nO(w,D,l))return!0;break}let J=D.parent.parent;return Hf(J)&&nO(w,J.expression,l)}function f(D,w){return!!It(D,J=>{if(J===l)return"quit";if(ki(J))return!0;let q=So(J.parent,Oc);return!!(q&&q.initializer===J&&!(w.kind===152&&!sT(w)))})}function h(D,w,J){return w.end>D.end?!1:It(w,Z=>{if(Z===D)return"quit";switch(Z.kind){case 271:return!0;case 152:return J&&Oc(D)&&Z.parent===D.parent?"quit":!0;case 236:switch(Z.parent.kind){case 154:return!0;default:return!1}default:return!1}})===void 0}}function O5(n,r,a){return I.assert(r!==void 0,"outername should always be defined"),Cn(n,r,a,void 0,!1,!1)}function R5(n,r,a){let s=OT(n,r,a);if(s)return s;let l;return n===Nt?l=_i(["string","number","boolean","object","bigint","symbol"],f=>n.has(f.charAt(0).toUpperCase()+f.slice(1))?to(524288,f):void 0).concat(Yo(n.values())):l=Yo(n.values()),tO(r,l,a)}function tO(n,r,a){return Wf(n,r,s);function s(l){let d=us(l);if(!To(d,'"')){if(l.flags&a)return d;if(l.flags&2097152){let f=t5(l);if(f&&f.flags&a)return d}}}}function M5(n,r,a,s,l,d){I.assertIsDefined(n);let f=cn(a.left)?a.left.text:void 0,h;if(f===void 0)h=to(0,"__missing");else if(h=n.get(f),!h)n.set(f,h=to(2,f,4096)),d&&(h.isReplaceableByMethod=!0);else{if(d&&!h.isReplaceableByMethod)return h;if(h.flags&l){if(h.isReplaceableByMethod)n.set(f,h=to(0,f));else if(!(s&3&&h.flags&67108864)){Fc(a)&&Bs(a.name,a);let D=h.flags&2?N.Cannot_redeclare_block_scoped_variable_0:N.Duplicate_identifier_0,w=!0,J=!1;rr(h.declarations);let q=[],Z=ti(a)||a;Ln(h.declarations,(Ue,Xe)=>{let Dn=ti(Ue)||Ue,mn=w?yi(Dn,D,bs(Z)):yi(Dn,D)});let ie=w?yi(Z,D,bs(a)):yi(Z,D);zn.add(Bo(ie,...q)),h=to(0,f)}}}return a.symbol=h,h.name!=="__missing"&&RO(h,a,2),Rx(h,a),h.parent?I.assert(h.parent===r,"Existing symbol parent should match new one"):h.parent=r,h}function B5(n,r,a,s){I.assert(!n||n.parent);let l=ho(r)?r:r.text;if(n?.parent&&bd(n.parent)&&n.parent.left===r){let d=n.parent,f=q2(n.parent);f.locals||(f.locals=Ei());let h=Wp(f);return M5(f.locals,h,d,3,0)}i(()=>{if(!n||n.parent.kind!==203&&!e5(n,l,r)&&!I5(n,l,a)&&!w5(n,l,a)){let d,f;if(!f&&Vr<qi&&(d=O5(n,l,a),d)){let h=Li(d),D=N.Cannot_find_name_0_Did_you_mean_1,w=Xr(n,D,bv(r),h);w.canonicalHead=H2(s,bv(r)),fE(!0,w),d.valueDeclaration&&Bo(w,yi(d.valueDeclaration,N._0_is_declared_here,h))}!d&&!f&&r&&on(n,s,bv(r)),Vr++}})}function fE(n,r){n?zn.add(r):jt.add({...r,category:2})}function bv(n){return ho(n)?n:bs(n)}function Um(n){return at(n&&(n.flags&1048576)!==0&&n.exportSymbol||n)}function j5(n,r){if(I.assert(!!(n.flags&3||n.flags&32||n.flags&384)),n.flags&67108881&&n.flags&32)return;let a=n.declarations?.find(s=>wN(s)||bd(s));if(a===void 0)return I.fail("checkResolvedBlockScopedVariable could not find block-scoped declaration");if(!(a.flags&33554432)&&!pE(a,r)){let s,l=bs(ti(a));n.flags&3?s=on(r,N.Block_scoped_variable_0_used_before_its_declaration,l):n.flags&32&&(s=on(r,N.Class_0_used_before_its_declaration,l)),s&&Bo(s,yi(a,N._0_is_declared_here,l))}}function J5(n,r,a,s,l,d){i(()=>{let f=r.name,h=s&&Mr(s)&&RN(s);if(n&&(a&2||(a&32||a&384)&&(a&111551)===111551)){let D=Um(r);(D.flags&2||D.flags&32||D.flags&384)&&j5(D,n)}})}function rO(n){switch(n.text){case"bytes":case"buffer":return N.Cannot_find_0_Do_you_need_to_change_your_driver_type;default:return n.parent?.kind===175?N.No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer:N.Cannot_find_name_0}}function Is(n,r=1160127){let a=_t(n);return a.resolvedSymbol||(a.resolvedSymbol=!oa(n)&&Lr(n,n,r,rO(n),!BN(n),!1)||eo),a.resolvedSymbol}function jd(n){return at(n.parent&&Jt(n.parent))}function K_(n){return er===n||(er=n,Ti=zf(n)),Ti}function ah(n){return!!(K_(n)&536870912)}function V_(n){let r=jd(n);return r&&rr(n.declarations)>1?r.flags&64?Tn(n.declarations,ah):di(n.declarations,ah):!!n.valueDeclaration&&ah(n.valueDeclaration)||rr(n.declarations)&&di(n.declarations,ah)}function U5(n){I.assert((n.flags&2097152)!==0,"Should only get Alias here.");let r=On(n);if(!r.immediateTarget){let a=Sy(n);if(!a)return I.fail();r.immediateTarget=xv(a,!0)}return r.immediateTarget}function sh(n,r,a){let s=yi(n,N._0_is_deprecated,a);return iO(r,s)}function iO(n,r){let a=Array.isArray(n)?Ln(n,KF):KF(n);return a&&Bo(r,yi(a,N.The_declaration_was_marked_as_deprecated_here)),jt.add(r),r}function oO(n,r){if(!(n.flags&2097152)||V_(n)||!Sy(n))return n;let a=hl(n);if(a===eo)return a;for(;n.flags&2097152;){let s=U5(n);if(s){if(s===a)break;if(s.declarations&&rr(s.declarations))if(V_(s)){sh(r,s.declarations,s.name);break}else{if(n===a)break;n=s}}else break}return a}function Ba(n,r){switch(r.kind){case 289:return Ba(n,r.expression);case 269:return bd(r)&&Ba(n,r.left)||gr(r)&&r.operatorToken.kind===27&&Ba(n,r.right)}switch(n.kind){case 89:return r.kind===89&&Is(n)===Is(r)||(po(r)||fo(r))&&An(Is(n).declarations[0])===An(r);case 71:return r.kind===71;case 289:return Ba(n.expression,r);case 286:case 281:let a=wf(n);if(a!==void 0){let s=ps(r)?wf(r):void 0;if(s!==void 0)return s===a&&Ba(n.expression,r.expression)}if(js(n)&&js(r)&&cn(n.argumentExpression)&&cn(r.argumentExpression)){let s=Is(n.argumentExpression);if(s===Is(r.argumentExpression)&&oF(s)&&!aO(s))return Ba(n.expression,r.expression)}break;case 269:return gr(n)&&n.operatorToken.kind===27&&Ba(n.right,r)}return!1}function aO(n){return!_R(n,void 0)}function sO(n,r){for(;ps(n);)if(n=n.expression,Ba(n,r))return!0;return!1}function cO(n,r){return Ba(n,r)||sO(n,r)}function lO(n,r){if(n.arguments){for(let a of n.arguments)if(cO(r,a))return!0}return!!(n.expression.kind===286&&cO(r,n.expression.expression))}function Cv(n,r){if(r.flags&8208){let a=It(n.parent,s=>!ps(s))||n.parent;return qf(a)?Ou(a)&&cn(n)&&lO(a,n):di(r.declarations,s=>!ki(s)||ah(s))}return!0}function uO(n,r){let a=Um(r),s=oO(a,n);V_(s)&&Cv(n,s)&&s.declarations&&sh(n,s.declarations,n.text);let l=a.valueDeclaration;if(l&&a.flags&32&&ia(l)&&l.name!==n){let d=TS(n,!1,!1);for(;d.kind!==176&&d.parent!==l;)d=TS(d,!1,!1);d.kind!==176&&(_t(l).flags|=262144,_t(d).flags|=262144,_t(n).flags|=536870912)}V5(n,r)}function W5(n,r){return!!It(n,a=>a===r?"quit":ki(a)||a.parent&&Oc(a.parent)&&a.parent.initializer===a)}function dO(n){return It(n,r=>!r||mI(r)?"quit":cN(r,!1))}function K5(n,r){return It(n,a=>a===r?"quit":a===r.initializer||a===r.condition||a===r.incrementor||a===r.statement)}function V5(n,r){if(!(r.flags&34)||!r.valueDeclaration||Mr(r.valueDeclaration)||r.valueDeclaration.parent.kind===255)return;let a=Dg(r.valueDeclaration),s=W5(n,a),l=dO(a);if(l){if(s){let d=!0;if(IL(a)){let f=Zp(r.valueDeclaration,238);if(f&&f.parent===a){let h=K5(n.parent,a);if(h){let D=_t(h);D.flags|=8192;let w=D.capturedBlockScopeBindings||(D.capturedBlockScopeBindings=[]);bl(w,r),h===a.initializer&&(d=!1)}}}d&&(_t(l).flags|=4096)}if(IL(a)){let d=Zp(r.valueDeclaration,238);d&&d.parent===a&&z5(n,a)&&(_t(r.valueDeclaration).flags|=65536)}_t(r.valueDeclaration).flags|=32768}s&&(_t(r.valueDeclaration).flags|=16384)}function z5(n,r){let a=n;for(;a.parent.kind===289;)a=a.parent;let s=!1;if(Ku(a))s=!0;else if(a.parent.kind===298||a.parent.kind===288){let l=a.parent;s=l.operator===47||l.operator===48}return s?!!It(a,l=>l===r?"quit":l===r.statement):!1}function H5(n){return!!It(n,r=>{switch(r.kind){case 152:return!0;case 174:case 252:return!1;case 283:case 247:return"quit";default:return Xp(r)?!1:"quit"}})}function q5(n){let r=n.valueDeclaration;return r?(fo(r)&&(r=mN(r)),Qi(r)?Wk(r.parent):!1):!1}function G5(n){let r=On(n);return r.type||(r.type=Mt(vt(r.target),r.mapper))}function $5(n){let r=On(n);return r.type||(r.type=Pk(n.links.propertyType,n.links.mappedType,n.links.constraintType)||yr),r.type}function Q5(n){var r;if(!n.links.type){let a=n.links.mappedType;if(!kp(n,0))return a.containsError=!0,kn;let s=py(a.target||a),l=BC(a.mapper,bc(a),n.links.keyType),d=Mt(s,l),f=z&&n.flags&16777216&&!no(d,49152)?Fp(d,!0):n.links.checkFlags&524288?Y1(d):d;Pp()||(on(B,N.Type_of_property_0_circularly_references_itself_in_mapped_type_1,Li(n),Xn(a)),f=kn),(r=n.links).type??(r.type=f)}return n.links.type}function Y5(n){let r=On(n);if(r.localVarType&&me){let a=r.localVarType.get(me?.fileName);return a||(a=fO(n),r.localVarType.set(me?.fileName,a)),a}if(!r.type){let a=fO(n);return a?.flags&-2147483648&&me?((r.localVarType||(r.localVarType=new Map)).set(me.fileName,a),a):(!r.type&&!q5(n)&&(r.type=a),a)}return r.type}function Ev(n,r){let a,s=!1,l=!1;if(!a){let f;if(n.declarations){let h;for(let D of n.declarations){let w=gr(D)||ao(D)?D:ps(D)?gr(D.parent)?D.parent:D:void 0;if(!w)continue;let J=ps(w)?bI(w):ds(w);(J===4||gr(w)&&Iv(w,J))&&(l=!0),ao(w)||(h=r9(h,w,n,D)),h||(f||(f=[])).push(gr(w)||ao(w)?n9(n,r,w,J):ct)}a=h}if(!a){if(!rr(f))return kn;let h;if(l){let w=uw(n);w&&((h||(h=[])).push(w),s=!0)}let D=Tn(h,w=>!!(w.flags&-98305))?h:f;a=st(D)}}let d=Nc(Tl(a,!1,l&&!s));return n.valueDeclaration&&mr(n.valueDeclaration)&&sa(d,f=>!!(f.flags&-98305))===ct?(ga(n.valueDeclaration,pt),pt):d}function Ec(n,r){let a=bo(n,r);return a?vt(a):void 0}function wp(n){return ih(n,0,!1)}function X5(n){return Z5(n,ct)}function Z5(n,r){return n.parameters.length>0?Pu(n,0):r}function e9(n,r){return!1}function n9(n,r,a,s){if(ao(a)){if(r)return vt(r);let d=Xa(a.arguments[2]),f=Ec(d,"value");if(f)return f;let h=Ec(d,"get");if(h){let w=wp(h);if(w)return Ii(w)}let D=Ec(d,"set");if(D){let w=wp(D);if(w)return X5(w)}return pt}if(e9(a.left,a.right))return pt;let l=r?vt(r):Om(Xa(a.right));if(l.flags&524288&&s===2&&n.name==="export="){let d=ql(l),f=Ei();dB(d.members,f);let h=f.size;r&&!r.exports&&(r.exports=Ei()),(r||n).exports.forEach((w,J)=>{let q=f.get(J);if(q&&q!==w&&!(w.flags&2097152))if(w.flags&111551&&q.flags&111551){if(w.valueDeclaration&&q.valueDeclaration&&Dt(w.valueDeclaration)!==Dt(q.valueDeclaration)){let ie=w.name,Ue=So(q.valueDeclaration,Fc)?.name||q.valueDeclaration;Bo(on(w.valueDeclaration,N.Duplicate_identifier_0,ie),yi(Ue,N._0_was_also_declared_here,ie)),Bo(on(Ue,N.Duplicate_identifier_0,ie),yi(w.valueDeclaration,N._0_was_also_declared_here,ie))}let Z=to(w.flags|q.flags,J);Z.links.type=st([vt(w),vt(q)]),Z.valueDeclaration=q.valueDeclaration,Z.declarations=Kr(q.declarations,w.declarations),f.set(J,Z)}else f.set(J,ke(w,q));else f.set(J,w)});let D=Gs(h!==f.size?void 0:d.symbol,f,d.callSignatures,d.constructSignatures,d.indexInfos);if(h===f.size&&(l.aliasSymbol&&(D.aliasSymbol=l.aliasSymbol,D.aliasTypeArguments=l.aliasTypeArguments),Jn(l)&4)){D.aliasSymbol=l.symbol;let w=Lo(l);D.aliasTypeArguments=rr(w)?w:void 0}return D.objectFlags|=kt([l])|Jn(l)&20608,D.symbol&&D.symbol.flags&32&&l===vf(D.symbol)&&(D.objectFlags|=16777216),D}return zC(l)?(ga(a,xi),xi):l}function pO(n,r){if(r){let a=On(r);if(!a.inferredClassSymbol||!a.inferredClassSymbol.has(ji(n))){let s=tf(n)?n:Q(n);return s.exports=s.exports||Ei(),s.members=s.members||Ei(),s.flags|=r.flags&32,r.exports?.size&&Cu(s.exports,r.exports),r.members?.size&&Cu(s.members,r.members),(a.inferredClassSymbol||(a.inferredClassSymbol=new Map)).set(ji(s),s),s}return a.inferredClassSymbol.get(ji(n))}}function _te(n){}function t9(n){let r=On(n),a=r;if(!r.declaredType){let s=n.flags&32?1:2,l=pO(n,n.valueDeclaration&&(n.valueDeclaration,void 0));l&&(n=l,r=l.links);let d=a.declaredType=r.declaredType=$l(s,n),f=_f(n);d.objectFlags|=4,d.typeParameters=f,d.localTypeParameters=f,d.instantiations=new Map,d.instantiations.set(Ls(d.typeParameters),d),d.target=d,d.resolvedTypeArguments=d.typeParameters,d.thisType=zc(n),d.thisType.isThisType=!0,d.thisType.constraint=d}return r.declaredType}function vf(n){let r=On(n),a=r;if(!r.declaredType){let s=n.flags&32?1:2,l=pO(n,n.valueDeclaration&&(n.valueDeclaration,void 0));l&&(n=l,r=l.links);let d=a.declaredType=r.declaredType=$l(s,n),f=Bw(n),h=_f(n);(f||h||s===1)&&(d.objectFlags|=4,d.typeParameters=Kr(f,h),d.outerTypeParameters=f,d.localTypeParameters=h,d.instantiations=new Map,d.instantiations.set(Ls(d.typeParameters),d),d.target=d,d.resolvedTypeArguments=d.typeParameters,d.thisType=zc(n),d.thisType.isThisType=!0,d.thisType.constraint=d)}return r.declaredType}function r9(n,r,a,s){let l=Es(r.parent);if(l){let d=Nc(wt(l));if(n)!zo(n)&&!zo(d)&&!uy(n,d)&&s1(void 0,n,s,d);else return d}if(a.parent?.valueDeclaration){let d=AO(a.parent);if(d.valueDeclaration){let f=Es(d.valueDeclaration);if(f){let h=bo(wt(f),a.name);if(h)return Re(h)}}}return n}function fO(n){if(n===ar)return pt;if(n.flags&134217728&&n.valueDeclaration){let s=An(Dt(n.valueDeclaration)),l=to(s.flags,"exports");l.declarations=s.declarations?s.declarations.slice():[],l.parent=n,l.links.target=s,s.valueDeclaration&&(l.valueDeclaration=s.valueDeclaration),s.members&&(l.members=new Map(s.members)),s.exports&&(l.exports=new Map(s.exports));let d=Ei();return d.set("exports",l),Gs(n,d,xe,xe,xe)}I.assertIsDefined(n.valueDeclaration);let r=n.valueDeclaration;if(!kp(n,0))return n.flags&512&&!(n.flags&67108864)?mE(n):z_(n);let a;if(gr(r)||mr(r)&&(ao(r)||ii(r)&&gr(r.parent)))a=Ev(n);else if(ii(r)||js(r)||cn(r)||Pi(r)||eu(r)||ag(r)||Ns(r)||Mr(r)){if(n.flags&9136)return mE(n);a=r.parent&&gr(r.parent)?Ev(n):fy(r)||pt}else if(zu(r))a=fy(r)||mO(r);else if(pu(r))a=fy(r)||ch(r.name,0);else if(Qi(r)||Oc(r)||Nd(r)||po(r)||fo(r)||Qf(r))a=qC(r,!0);else if(dm(r))a=pt;else return I.fail("Unhandled declaration kind! "+I.formatSyntaxKind(r.kind)+" for "+I.formatSymbol(n));return Pp()?a:n.flags&512&&!(n.flags&67108864)?mE(n):z_(n)}function z_(n){let r=n.valueDeclaration;if(r){if(Es(r))return on(n.valueDeclaration,N._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,Li(n)),kn;je&&(r.kind!==149||r.initializer)&&on(n.valueDeclaration,N._0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or_indirectly_in_its_own_initializer,Li(n))}else if(n.flags&2097152){let a=Sy(n);a&&on(a,N.Circular_definition_of_import_alias_0,Li(n))}return pt}function mO(n,r){return ch(n.initializer,r)}function ch(n,r,a){let s=Ar(n,r,a);if(Ld(s)){let l=ta(s);if(l.isIntLiteral()&&l.value===0)return l}return Ow(n)?s:sw(s,JC(ml(n,void 0),n,void 0))}function vt(n,r){let a=jo(n);return a&65536&&I.fail("TODO - getTypeOfSymbol"),a&1?G5(n):a&262144?Q5(n):a&8192?$5(n):n.flags&7?Y5(n):n.flags&9136?mE(n):n.flags&2097152?i9(n):kn}function i9(n){let r=On(n);if(!r.type){if(!kp(n,0))return kn;let a=hl(n),s=n.declarations&&xv(Sy(n),!0),l=es(s?.declarations,d=>W4(d)?fy(d):void 0);if(r.type??(r.type=l||(hy(a)&111551?vt(a):kn)),!Pp())return z_(s??n),r.type??(r.type=kn)}return r.type}function mE(n){let r=On(n),a=r;return r.type||(a.type=r.type=o9(n)),r.type}function o9(n){let r=n.valueDeclaration;if(r&&(r.kind===269||ps(r)&&r.parent.kind===269))return Ev(n);let a=$l(16,n);if(n.flags&32){let s=a9(n);return s?bi([a,s]):a}else return z&&n.flags&16777216?Fp(a,!0):a}function a9(n){let r=Nv(vf(n));return r?.flags&8650752?r:r?.flags&2097152?fr(r.types,a=>!!(a.flags&8650752)):void 0}function xte(n){return n.heritageClauses.length>0}function Nv(n){if(!n.resolvedBaseConstructorType){let r=lb(n.symbol),a=r&&ab(r),s=n_(n);if(!s)return n.resolvedBaseConstructorType=Gt;if(!kp(n,1))return kn;let l=Ar(s.expression);if(a&&s!==a&&(I.assert(!a.typeArguments),Ar(a.expression)),l.flags&2621440&&ql(l),!Pp())return on(n.symbol.valueDeclaration,N._0_is_referenced_directly_or_indirectly_in_its_own_base_expression,Li(n.symbol)),n.resolvedBaseConstructorType??(n.resolvedBaseConstructorType=kn);!(l.flags&1)&&l!==dl&&console.debug("todo - implement this"),n.resolvedBaseConstructorType??(n.resolvedBaseConstructorType=l)}return n.resolvedBaseConstructorType}function gO(n){let r=n.parent;if(r){if(ii(r)&&r.expression===n)return!1;let a=r.parent?.parent}return!0}function yO(n,r){if(Rw(n,111551)){let a=hl(n);hy(n,!0)&1160127&&s9(n)}}function s9(n){let r=On(n);if(!r.referenced&&(r.referenced=!0,!Sy(n)))return I.fail()}function TO(n){let r=Is(n);r&&r!==Kt&&r!==eo&&yO(r,n)}function Dv(n,r,a,s){if(!(n.flags&33554432))switch(r){case 1:return TO(n);case 2:return hO(n,a,s);case 0:{if(cn(n)&&(Xp(n)||pu(n.parent))&&gO(n)){if(fN(n.parent)&&(ii(n.parent)?n.parent.expression:n.parent.left)!==n)return;TO(n);return}if(fN(n)){let l=n;for(;fN(l);)l=l.parent;return hO(n)}pc(n);return}default:I.assertNever(r,`Unhandled reference hint: ${r}`)}}function hO(n,r,a){let s=ii(n)?n.expression:n.left;if(!cn(s))return;let l=Is(s);if(!l||l===eo)return;let d=a||Xa(s);if(cs(d)||d===Tr){yO(l,n);return}let f=r;if(!f&&!a){let h=ii(n)?n.name:n.right,D=!1,w=ef(n),J=Na(w!==0?Nc(d):d);f=bo(J,h.text)}}function Nc(n){return kv(n,void 0)}function SO(n,r,a){return{parent:n,propertyName:r,siblings:a,resolvedProperties:void 0}}function _O(n){if(!n.siblings){let r=[];for(let a of _O(n.parent))if(Bl(a)){let s=Id(a,n.propertyName);s&&Ym(vt(s),l=>{r.push(l)})}n.siblings=r}return n.siblings}function Pv(n){if(!n.resolvedProperties){let r=Ei();for(let a of n.types){for(let s of ya(a))if(!r.has(s.name)){let l=Do(n,s.name,!!(n.flags&2097152));l&&r.set(s.name,l)}if(n.flags&1048576&&Da(a).length===0)break}n.resolvedProperties=j_(r)}return n.resolvedProperties}function ya(n){return n=Tf(n),n.flags&3145728?Pv(n):sd(n)??xe}function c9(n){if(!n.resolvedProperties){let r=new Map;for(let a of _O(n))if(Bl(a)&&!(Jn(a)&2097152))for(let s of ya(a))r.set(s.name,s);n.resolvedProperties=Yo(r.values())}return n.resolvedProperties}function l9(n,r){if(!(n.flags&4))return n;let a=vt(n),s=r&&SO(r,n.name,void 0),l=kv(a,s);return l===a?n:hf(n,l)}function u9(n){let r=Zo.get(n.name);if(r)return r;let a=hf(n,wa);return a.flags|=16777216,Zo.set(n.name,a),a}function d9(n,r){let a=Ei();for(let l of sd(n))a.set(l.name,l9(l,r));if(r)for(let l of c9(r))a.has(l.name)||a.set(l.name,u9(l));let s=Gs(n.symbol,a,xe,xe,Ia(Da(n),l=>Op(l.keyType,Nc(l.type),l.isReadonly)));return s.objectFlags|=Jn(n)&266240,s}function Op(n,r,a,s){return{keyType:n,type:r,isReadonly:a,declaration:s}}function kv(n,r){if(Jn(n)&196608){if(r===void 0&&n.widened)return n.widened;let a;if(n.flags&98305)a=pt;else if(Bl(n))a=d9(n,r);else if(n.flags&1048576){let s=r||SO(void 0,void 0,n.types),l=Ia(n.types,d=>d.flags&98304?d:kv(d,s));a=st(l,Tn(l,Kp)?2:1)}else n.flags&2097152?a=bi(Ia(n.types,Nc)):od(n)&&(a=vm(n.target,Ia(Lo(n),Nc)));return a&&r===void 0&&(n.widened=a),a||n}return n}function Xa(n,r){if(r)return Ar(n,r);let a=_t(n);if(!a.resolvedType){let s=Fe,l=xt;Fe=Mn,xt=void 0,a.resolvedType=Ar(n,r),xt=l,Fe=s}return I.assertIsDefined(a.resolvedType),a.resolvedType}function p9(n,r,a){let s=vt(n,a),l=n.valueDeclaration;if(l){if(fo(l)&&!l.initializer&&!l.dotDotDotToken&&l.parent.elements.length>=2){let d=l.parent.parent;d.kind===149&&console.log("TODO - getNarrowedTypeOfSymbol")}if(Qi(l)&&!l.type&&!l.initializer&&!l.dotDotDotToken){let d=l.parent;if(d.parameters?.length>=2&&Wk(d)){let f=QT(d);if(f&&f.parameters.length===1&&Rc(f)){let h=Tf(Mt(vt(f.parameters[0]),dy(d)?.nonFixingMapper));console.debug("todo - getNarrowedTypeOfSymbol")}}}}return s}function Ql(n){return n.flags&128?sr:n.flags&256?Xi:n.flags&2048?vr:n.flags&1048576?T9(n):n}function ra(n){return n.id}function gE(n){return n?Xo.get(n):void 0}function yE(n,r){return n&&Xo.set(n,r),r}function Ls(n){let r="";if(n){let a=n.length,s=0;for(;s<a;){I.assertIsDefined(n[s]);let l=n[s].id,d=1;for(;s+d<a&&n[s+d].id===l+d;)d++;r.length&&(r+=","),r+=l,d>1&&(r+=":"+d),s+=d}}return r}function Wm(n,r){return n?`@${ji(n)}`+(r?`:${Ls(r)}`:""):""}function st(n,r=1,a,s,l){if(n.length===0)return ct;if(n.length===1)return n[0];if(n.length===2&&!l&&(n[0].flags&1048576||n[1].flags&1048576)){let d=r===0?"N":r===2?"S":"L",f=n[0].id<n[1].id?0:1,h=n[f].id+d+n[1-f].id+Wm(a,s),D=Ir.get(h);return D||(D=CO(n,r,a,s,void 0),Ir.set(h,D)),D}return CO(n,r,a,s,l)}function xO(n,r,a){let s;for(let l of a)l!==s&&(r=l.flags&1048576?xO(n,r|(f9(l)?1048576:0),l.types):m9(n,r,l),s=l);return r}function f9(n){return!!(n.flags&1048576&&(n.aliasSymbol||n.origin))}function m9(n,r,a){let s=a.flags;if(!(s&131072))if(r|=s&473694143,s&465829888&&(r|=33554432),s&2097152&&Jn(a)&67108864&&(r|=536870912),a===Ko&&(r|=8388608),zo(a)&&(r|=1073741824),!z&&s&98304)Jn(a)&65536||(r|=4194304);else{let l=n.length,d=l&&a.id>n[l-1].id?~l:Wd(n,a,ra,ro);d<0&&n.splice(~d,0,a)}return r}function g9(n,r,a){let s=n.length;for(;s>0;){s--;let l=n[s],d=l.flags;(d&402653312&&r&4||d&256&&r&8||d&2048&&r&64||d&8192&&r&4096||a&&d&32768&&r&16384||If(l)&&Hc(n,l.regularType))&&Kf(n,s)}}function as(n){if(Jn(n)&32){let r=_l(n);if(ph(r))return!0;let a=Wl(n);if(a&&ph(Mt(a,Bd(bc(n),r))))return!0}return!1}function y9(n,r){if(n.length<2)return n;let a=Ls(n),s=pp.get(a);if(s)return s;let l=r&&Tn(n,D=>!!(D.flags&524288)&&!as(D)&&wv(ql(D))),d=n.length,f=d,h=0;for(;f>0;){f--;let D=n[f];if(l||D.flags&469499904){if(D.flags&262144&&Ip(D).flags&1048576){Yl(D,st(qn(n,q=>q===D?ct:q)),Ts)&&Kf(n,f);continue}let w=D.flags&61603840?fr(ya(D),q=>un(vt(q))):void 0,J=w&&ta(vt(w));for(let q of n)if(D!==q){if(h===1e5&&h/(d-f)*d>1e6){Pt?.instant(Pt.Phase.CheckTypes,"removeSubtypes_DepthLimit",{typeIds:n.map(ie=>ie.id)}),on(B,N.Expression_produces_a_union_type_that_is_too_complex_to_represent);return}if(h++,w&&q.flags&61603840){let Z=Ec(q,w.name);if(Z&&un(Z)&&ta(Z)!==J)continue}if(Yl(D,q,Ts)&&(!(Jn(NE(D))&1)||!(Jn(NE(q))&1)||Up(D,q))){Kf(n,f);break}}}}return pp.set(a,n),n}function bO(n,r){for(let a of r)if(a.flags&1048576){let s=a.origin;a.aliasSymbol||s&&!(s.flags&1048576)?bl(n,a):s&&s.flags&1048576&&bO(n,s.types)}}function CO(n,r,a,s,l){let d=[],f=xO(d,0,n);if(r!==0){if(f&3)return f&1?f&8388608?Ko:f&1073741824?kn:pt:yr;if(f&32768&&d.length>=2&&d[0]===Gt&&d[1]===li&&Kf(d,1),(f&402656160||f&16384&&f&32768)&&g9(d,f,!!(r&2)),f&536870912&&hW(d),r===2&&(d=y9(d,!!(f&524288)),!d))return kn;if(d.length===0)return f&65536?f&4194304?se:dl:f&32768?f&4194304?Gt:F:ct}if(!l&&f&1048576){let D=[];bO(D,n);let w=[];for(let q of d)Tn(D,Z=>Hc(Z.types,q))||w.push(q);if(!a&&D.length===1&&w.length===0)return D[0];if(Yc(D,(q,Z)=>q+Z.types.length,0)+w.length===d.length){for(let q of D)H_(w,q);l=x(1048576,w)}}let h=(f&36323331?0:32768)|(f&2097152?16777216:0);return BT(d,h,a,s,l)}function H_(n,r){let a=Wd(n,r,ra,ro);return a<0?(n.splice(~a,0,r),!0):!1}function la(n,r,a){if(n.flags&131072)return n;if(!(n.flags&1048576))return r(n);let s=n.origin,l=s&&s.flags&1048576?s.types:n.types,d,f=!1;for(let h of l){let D=h.flags&1048576?la(h,r,a):r(h);f||(f=h!==D),D&&(d?d.push(D):d=[D])}return f?d&&st(d,a?0:1):n}function T9(n){let r=`B${ra(n)}`;return gE(r)??yE(r,la(n,Ql))}function vv(n,r,a){return by(n)&&(n=n.baseType),!(a&&a&2)&&vu(n,EO)&&(S9(n,r)||h9(r,a))?la(n,Ip):n}function EO(n){return n.flags&2097152?Tn(n.types,EO):!!(n.flags&465829888&&Ip(n).flags&1146880)}function h9(n,r){let a=(cn(n)||ii(n)||js(n))&&(r&&r&32?ml(n,8):ml(n,void 0));return a&&!my(a)}function S9(n,r){let a=r.parent;return a.kind===286||a.kind===146||a.kind===272&&a.expression===r||a.kind===276&&a.expression===r||a.kind===281&&a.expression===r&&!(vu(n,NO)&&ph(ja(a.argumentExpression)))}function NO(n){return n.flags&2097152?Tn(n.types,NO):!!(n.flags&465829888&&!no(Ip(n),98304))}function q_(n){return It(n.parent,r=>ki(r)&&!Yp(r)||r.kind===176||r.kind===152)}function Ff(n,r){return ku(Ar(n,r),n)}function DO(n){for(;n.parent.kind===289;)n=n.parent;return Ou(n.parent)&&n.parent.expression===n}function PO(n,r){let a=Ff(n.left);return Fv(n,n.left,a,n.right,r)}function Fv(n,r,a,s,l,d){let f=_t(r).resolvedSymbol,h=ef(n),D=a;a=ae===1&&ca(a)?P_(a):a;let w=Na(h!==0||DO(n)?Nc(a):a),J=cs(w)||w===Tr,q;if(J)return cn(r)&&f&&Dv(n,2,void 0,a),zo(w)?kn:w;if(q=bo(w,s.text,!1,n.kind===146),!q&&S6(r)){let ie=a.symbol;q=Lr(Eo(ie.declarations),s.text,16,void 0,!1,!0),q&&(q.declarations.some(Ue=>(U(Ue)&2)===0)||(q=void 0))}Dv(n,2,q,a);let Z;if(q){let ie=oO(q,s);V_(ie)&&Cv(n,ie)&&ie.declarations&&sh(s,ie.declarations,s.text),Yk(q,n,mw(r,f)),_t(n).resolvedSymbol=q,pw(n,r.kind===71,rS(n),w,q),Z=d||BN(n)?ay(q):vt(q)}else{let ie=!yc(s)&&h===0?xp(w,s.text):void 0;if(!(ie&&ie.type))return GT(a)?pt:(s.text&&!x9(n)&&_9(s,a,!1),kn);ie.isReadonly&&Ku(n)&&on(n,N.Index_signature_in_type_0_only_permits_reading,Xn(w)),Z=ie.type,ie.declaration&&ah(ie.declaration)&&sh(s,[ie.declaration],s.text)}return dw(n,q,Z,s,l)}function _9(n,r,a){let s,l;if(!yc(n)&&r.flags&1048576&&!(r.flags&402784188)){for(let w of r.types)if(!bo(w,n.text)&&!xp(w,n.text)){s=ci(s,N.Property_0_does_not_exist_on_type_1,bs(n),Xn(w));break}}let d=bs(n),f=Xn(r),h=qO(n,r);if(h!==void 0){let w=us(h),J=a?N.Property_0_may_not_exist_on_type_1_Did_you_mean_2:N.Property_0_does_not_exist_on_type_1_Did_you_mean_2;s=ci(s,J,d,f,w),l=h.valueDeclaration&&yi(h.valueDeclaration,N._0_is_declared_here,w)}else{let w=N.Property_0_does_not_exist_on_type_1;s=ci(kO(s,r),w,d,f)}let D=Pg(nc(n,!1),n,s);l&&Bo(D,l),fE(!a||s.code!==N.Property_0_may_not_exist_on_type_1_Did_you_mean_2.code,D)}function kO(n,r){return r.flags&2097152&&Jn(r)&33554432&&I.fail("never intersection"),n}function x9(n){let r=vO(n);return!1}function vO(n){switch(n.kind){case 89:case 286:return n.parent?vO(n.parent):void 0;default:return}}function b9(n,r){return z&&r.kind===149&&r.initializer&&Gl(n,16777216)&&!C9(r)?Xl(n,524288):n}function C9(n){let r=_t(n);if(r.parameterInitializerContainsUndefined===void 0){if(!kp(n,8))return z_(n.symbol),!0;let a=!!Gl(YT(n,0),16777216);if(!Pp())return z_(n.symbol),!0;r.parameterInitializerContainsUndefined??(r.parameterInitializerContainsUndefined=a)}return r.parameterInitializerContainsUndefined}function FO(n,r,a){let s=Is(n,a);if(s===eo)return kn;if(uO(n,s),s===Kt)return H5(n)?kn:vt(s);gO(n)&&Dv(n,1);let l=Um(s),d=l.valueDeclaration,f=p9(l,n,r),h=ef(n);if(h&&!(l.flags&3)){let wn=l.flags&16?N.Cannot_assign_to_0_because_it_is_a_function:N.Cannot_assign_to_0_because_it_is_not_a_variable;return on(n,wn,Li(s)),kn}let D=l.flags&2097152;if(l.flags&3){if(h===1)return gI(n)?Ql(f):f}else if(D)d=Sy(s);else return f;if(!d)return f;f=vv(f,n,r);let w=d.kind===149,J=q_(d),q=q_(n),Z=q!==J,ie=s.flags&134217728,Ue=f===Io||f===ui;for(;q!==J&&(q.kind===270||q.kind===283||sD(q))&&(f!==ui||oF(l)&&_R(l,n));)q=q_(q);let Xe=w||D||Z||ie||E9(n,d)||f!==Io&&f!==ui&&(!z||(f.flags&16387)!==0)||d.flags&33554432,Dn=Xe?w?b9(f,d):f:Ue?Gt:Fp(f),mn=Rf(n,f,Dn,q);if(!aR(n)&&(f===Io||f===ui)){if(mn===Io||mn===ui)return TE(mn)}else if(!Xe&&!G_(f)&&G_(mn))return on(n,N.Variable_0_is_used_before_being_assigned,Li(s)),f;return h?Ql(mn):mn}function G_(n){return!!((n.flags&1048576?n.types[0]:n).flags&32768)}function TE(n){return n===Io?pt:n===ui?xi:n}function E9(n,r){if(fo(r)){let a=It(n,fo);return a&&a===r}}function IO(n){let{parent:r}=n;return r.kind===289||r.kind===269&&r.operatorToken.kind===74&&r.left===n||r.kind===269&&r.operatorToken.kind===27&&r.right===n?IO(r):n}function If(n){return!!(n.flags&2976)&&n.freshType===n}function lh(n,r,a,s){let l=n.flags,d=r.flags;return d&1||l&131072||d&2&&!(a===Ts&&l&1)?!0:d&131072?!1:!!(l&256&&n.value===0||l&402653316&&d&4||l&2344&&d&8||l&528&&d&16||l&528&&d&8||l&4096&&d&4096||l&8192&&d&4096||l&32768&&(!z&&!(d&3145728)||d&49152)||l&65536&&(!z&&!(d&3145728)||d&65536)||l&524288&&d&67108864&&!(a===Ts&&Sl(n)&&!(Jn(n)&8192))||l&524288&&n.symbol?.flags&16&&n.symbol?.name==="__function"&&d&524288&&r===Yt||(a===vs||a===pa)&&(l&1||P9(r)))}function ud(n){return n?.flags&6256?wO(n,"resolvedMembers"):n?.members||V}function LO(n,r,a,s){r&&r.forEach((l,d)=>{if(d==="default")return;let f=n.get(d);if(!f)n.set(d,l),a&&s&&a.set(d,{specifierText:Ic(s.moduleSpecifier)});else if(a&&s&&f&&Mm(f)!==Mm(l)){let h=a.get(d);h.exportsWithDuplicate?h.exportsWithDuplicate.push(s):h.exportsWithDuplicate=[s]}})}function N9(n){let r=[],a=new Set;return n=_v(n),{exports:l(n)||V,undefined:void 0};function l(d,f){if(!f&&d?.exports&&d.exports.forEach((w,J)=>a.add(J)),!(d&&d.exports&&bl(r,d)))return;let h=new Map(d.exports),D=d.exports.get("__export");if(D){let w=Ei(),J=new Map;if(D.declarations)for(let q of D.declarations){let Z=Jm(q,q.moduleSpecifier,void 0),ie=l(Z,f||q.isTypeOnly);LO(w,ie,J,q)}J.forEach(({exportsWithDuplicate:q},Z)=>{if(!(Z==="export="||!(q&&q.length)||h.has(Z)))for(let ie of q)zn.add(yi(ie,N.Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambiguity,J.get(Z).specifierText,Z))}),LO(h,w)}return h}}function AO(n){return(n.valueDeclaration?.kind===283||n.valueDeclaration?.kind===270)&&Wp(n.valueDeclaration.parent)||n}function Iv(n,r=ds(n)){if(r===4)return!0;if(!mr(n)||r!==5||!cn(n.left.expression))return!1;let a=n.left.expression.text,s=Lr(n.left,a,111551,void 0,!0,!0);return iB(s?.valueDeclaration)}function Lv(n){let r=ti(n);return!!r&&Av(r)}function wO(n,r){let a=On(n);if(!a[r]){let s=n.flags&1536?n.exports:n.members;a[r]=s||V;let l=Ei();for(let h of n.declarations||xe){let D=rB(h);if(D)for(let w of D)Lv(w)&&OO(n,s,l,w)}let d=AO(n).assignmentDeclarationMembers;if(d){let h=Yo(d.values());for(let D of h){let w=ds(D);w===3||gr(D)&&Iv(D,w)||w===9||w===6||Lv(D)&&OO(n,s,l,D)}}let f=D9(s,l);if(n.flags&33554432&&a.cjsExportMerged&&n.declarations)for(let h of n.declarations){let D=On(h.symbol)[r];if(!f){f=D;continue}D&&D.forEach((w,J)=>{let q=f.get(J);if(!q)f.set(J,w);else{if(q===w)return;f.set(J,ke(q,w))}})}a[r]=f||V}return a[r]}function OO(n,r,a,s){I.assert(!!s.symbol,"The member is expected to have a symbol.");let l=_t(s);if(!l.resolvedSymbol){l.resolvedSymbol=s.symbol;let d=gr(s)?s.left:s.name,f=js(d)?Xa(d.argumentExpression):hE(d);if(cf(f)){let h=af(f),D=s.symbol.flags,w=a.get(h);w||a.set(h,w=to(0,h,4096));let J=r&&r.get(h);if(!(n.flags&32)&&w.flags&Ea(D)){let q=J?Kr(J.declarations,w.declarations):w.declarations,Z=h||bs(d);Ln(q,ie=>on(ti(ie)||ie,N.Property_0_was_also_declared_here,Z)),on(d||s,N.Duplicate_property_0,Z),w=to(0,h,4096)}return w.links.nameType=f,RO(w,s,D),w.parent?I.assert(w.parent===n,"Existing symbol parent should match new one"):w.parent=n,l.resolvedSymbol=w}}return l.resolvedSymbol}function RO(n,r,a){I.assert(!!(jo(n)&4096),"Expected a late-bound symbol."),n.flags|=a,On(r.symbol).lateSymbol=n,n.declarations?r.symbol.isReplaceableByMethod||n.declarations.push(r):n.declarations=[r],a&111551&&(!n.valueDeclaration||n.valueDeclaration.kind!==r.kind)&&(n.valueDeclaration=r)}function Av(n){if(!ts(n)&&!js(n))return!1;let r=ts(n)?n.expression:n.argumentExpression;return Cs(r)&&cf(ts(n)?hE(n):Xa(r))}function hE(n){let r=_t(n.expression);if(!r.resolvedType){if((Mu(n.parent.parent)||ia(n.parent.parent))&&gr(n.expression)&&n.expression.operatorToken.kind===103)return r.resolvedType=kn;if(r.resolvedType=Ar(n.expression),Oc(n.parent)&&Fb(n.parent.parent)){let a=Dg(n.parent.parent),s=dO(a);s&&(_t(s).flags|=4096,_t(n).flags|=32768,_t(n.parent.parent).flags|=32768)}(r.resolvedType.flags&98304||!ss(r.resolvedType,402655660)&&!Ni(r.resolvedType,Qt))&&on(n,N.A_computed_property_name_must_be_of_type_string_number_symbol_or_any)}return r.resolvedType}function D9(n,r){if(!n?.size)return r;if(!r?.size)return n;let a=Ei();return Cu(a,n),Cu(a,r),a}function Sl(n){return!!(Jn(n)&16&&(n.members&&wv(n)||n.symbol&&n.symbol.flags&2048&&ud(n.symbol).size===0))}function wv(n){return n!==Jc&&(n.properties?.length||0)===0&&(n.callSignatures?.length||0)===0&&(n.constructSignatures?.length||0)===0&&(n.indexInfos?.length||0)===0}function P9(n){if(z&&n.flags&1048576){if(!(n.objectFlags&33554432)){let r=n.types;n.objectFlags|=33554432|(r.length>=3&&r[0].flags&32768&&r[1].flags&65536&&Tn(r,Sl)?67108864:0)}return!!(n.objectFlags&67108864)}return!1}function Yl(n,r,a){if(If(n)&&(n=n.regularType),If(r)&&(r=r.regularType),n===r||n.flags&256&&n.value===0)return!0;if(a!==fa){if(a===pa&&!(r.flags&131072)&&lh(r,n,a)||lh(n,r,a))return!0}else if(!((n.flags|r.flags)&61865984)){if(n.flags!==r.flags)return!1;if(n.flags&67358815)return!0}if(n.flags&524288&&r.flags&524288){let s=a.get(bE(n,r,0,a,!1));if(s!==void 0)return!!(s&1)}if(n.flags&469499904||r.flags&469499904){let s=Af(n,r,a,void 0);return MO(n,r)&&!s&&n.flags&524288&&r.flags&524288?!0:s}return!1}function MO(n,r){return!le&&!(BO(n)&&BO(r))}function BO(n){return n?.symbol?.flags&8388608}function Ov(n){if(n.flags&16)return!1;if(n.flags&3145728)return!!Ln(n.types,Ov);if(n.flags&465829888){let r=Rp(n);if(r&&r!==n)return Ov(r)}return un(n)||!!(n.flags&134217728)||!!(n.flags&268435456)}function Rp(n){return n.flags&262144?As(n):n.flags&8388608?v9(n):n.flags&16777216?k9(n):na(n)}function k9(n){return SE(n)?JO(n):void 0}function v9(n){return SE(n)?F9(n):void 0}function SE(n){return jv(n)!==ea}function F9(n){if($v(n))return Bv(n.objectType,n.indexType);let r=Rv(n.indexType);if(r&&r!==n.indexType){let s=km(n.objectType,r,n.accessFlags);if(s)return s}let a=Rv(n.objectType);if(a&&a!==n.objectType)return km(a,n.indexType,n.accessFlags)}function Rv(n){let r=xl(n,!1);return r!==n?r:Rp(n)}function Mv(n){if(n.flags&524288&&!yF(n)){if(Jn(n)&4&&n.node)return n.node;if(n.symbol&&!(Jn(n)&16&&n.symbol.flags&32))return n.symbol;if(Ci(n))return n.target}if(n.flags&262144)return n.symbol;if(n.flags&8388608){do n=n.objectType;while(n.flags&8388608);return n}return n.flags&16777216?n.root:n}function Bv(n,r){let a=os([bc(n)],[r]),s=Dp(n.mapper,a),l=Mt(py(n.target||n),s),d=iR(n)>0||(my(n)?Cy(X_(n))>0:I9(n,r));return Tl(l,!0,d)}function I9(n,r){let a=na(r);return!!a&&Tn(ya(n),s=>!!(s.flags&16777216)&&Ni(x_(s,384),a))}function jv(n){if(n.resolvedBaseConstraint)return n.resolvedBaseConstraint;let r=[];return n.resolvedBaseConstraint=a(n);function a(d){if(!d.immediateBaseConstraint){if(!kp(d,4))return ea;let f,h=Mv(d);if((r.length<10||r.length<50&&!Yr(r,h))&&(r.push(h),f=l(xl(d,!1)),r.pop()),!Pp()){if(d.flags&262144){let D=wk(d);if(D){let w=on(D,N.Type_parameter_0_has_a_circular_constraint,Xn(d));B&&!fS(D,B)&&!fS(B,D)&&Bo(w,yi(B,N.Circularity_originates_in_type_at_this_location))}}f=ea}d.immediateBaseConstraint??(d.immediateBaseConstraint=f||ys)}return d.immediateBaseConstraint}function s(d){let f=a(d);return f!==ys&&f!==ea?f:void 0}function l(d){if(d.flags&262144){let f=rh(d);return d.isThisType||!f?f:s(f)}if(d.flags&3145728){let f=d.types,h=[],D=!1;for(let w of f){let J=s(w);J?(J!==w&&(D=!0),h.push(J)):D=!0}return D?d.flags&1048576&&h.length===f.length?st(h):d.flags&2097152&&h.length?bi(h):void 0:d}if(d.flags&4194304)return Qt;if(d.flags&268435456){let f=s(d.type);return f&&f!==d.type?XO(d.symbol,f):sr}if(d.flags&8388608){if($v(d))return s(Bv(d.objectType,d.indexType));let f=s(d.objectType),h=s(d.indexType),D=f&&h&&km(f,h,d.accessFlags);return D&&s(D)}if(d.flags&16777216){let f=JO(d);return f&&s(f)}if(d.flags&33554432)return s(Xv(d));if(Mp(d)){let f=qn(zm(d),(h,D)=>{let w=h.flags&262144&&d.target.elementFlags[D]&8&&s(h)||h;return w!==h&&lc(w,J=>od(J)&&!Mp(J))?w:h});return dd(f,d.target.elementFlags,d.target.readonly,d.target.labeledElementDeclarations)}return d}}function L9(n){if(n.resolvedConstraintOfDistributive!==void 0)return n.resolvedConstraintOfDistributive||void 0;if(n.root.isDistributive&&n.restrictiveInstantiation!==n){let r=xl(n.checkType,!1),a=r===n.checkType?Rp(r):r;if(a&&a!==n.checkType){let s=P1(n,Lm(n.root.checkType,a,n.mapper),!0);if(!(s.flags&131072))return n.resolvedConstraintOfDistributive=s,s}}n.resolvedConstraintOfDistributive=!1}function Km(n){return n.resolvedTrueType||(n.resolvedTrueType=Mt(wt(n.root.node.trueType),n.mapper))}function A9(n){return n.resolvedInferredTrueType||(n.resolvedInferredTrueType=n.combinedMapper?Mt(wt(n.root.node.trueType),n.combinedMapper):Km(n))}function Vm(n){return n.resolvedFalseType||(n.resolvedFalseType=Mt(wt(n.root.node.falseType),n.mapper))}function jO(n){if(!n.resolvedDefaultConstraint){let r=A9(n),a=Vm(n);n.resolvedDefaultConstraint=cs(r)?a:cs(a)?r:st([r,a])}return n.resolvedDefaultConstraint}function JO(n){return L9(n)||jO(n)}function w9(n,r){let a=r.types.filter(s=>!!(s.flags&128));return Wf(n.value,a,s=>s.value)}function Jv(n){if(!(Jn(n)&4)||!(Jn(n.target)&3))return;if(Jn(n)&33554432)return Jn(n)&67108864?n.cachedEquivalentBaseType:void 0;n.objectFlags|=33554432;let r=n.target;if(Jn(r)&1){let l=n_(r);if(l&&l.expression.kind!==89&&l.expression.kind!==286)return}let a=Fd(r);if(a.length!==1||ud(n.symbol).size)return;let s=rr(r.typeParameters)?Mt(a[0],os(r.typeParameters,Lo(n).slice(0,r.typeParameters.length))):a[0];return rr(Lo(n))>rr(r.typeParameters)&&console.debug("todo - implement this - typeref"),n.objectFlags|=67108864,n.cachedEquivalentBaseType=s}function Uv(n){if(n.flags&524288){let r=ql(n);return r.callSignatures?.length===0&&r.constructSignatures.length===0&&r.indexInfos.length===0&&r.properties.length>0&&di(r.properties,a=>!!(a.flags&16777216))}return n.flags&33554432?Uv(n.baseType):n.flags&2097152?di(n.types,Uv):!1}function Wv(n){return Bi(n,0).length!==0||Bi(n,1).length!==0}function O9(n,r,a){for(let s of ya(n))if(Kv(r,s.name,a))return!0;return!1}function Kv(n,r,a){if(n.flags&524288&&(Id(n,r)||xp(n,r)||u_(r)&&Ml(n,sr)))return!0;if(n.flags&3145728&&uh(n)){for(let s of n.types)if(Kv(s,r,a))return!0}return!1}function uh(n){return!!(n.flags&524288&&!(Jn(n)&512)||n.flags&67108864||n.flags&33554432&&uh(n.baseType)||n.flags&1048576&&Tn(n.types,uh)||n.flags&2097152&&di(n.types,uh))}function dh(n,r){return sa(n,a=>(a.flags&r)!==0)}function UO(n,r){let a=DE(n),s=a&&Ec(r,a);return s&&PE(n,s)}function R9(n,r){let a=Ei();for(let s of sd(n)){let l=vt(s),d=r(l);a.set(s.name,d===l?s:hf(s,d))}return a}function $_(n){if(!(Bl(n)&&Jn(n)&8192))return n;let r=n.regularType;if(r)return r;let a=n,s=R9(n,$_),l=Gs(a.symbol,s,a.callSignatures,a.constructSignatures,a.indexInfos);return l.flags=a.flags,l.objectFlags|=a.objectFlags&-8193,n.regularType=l,l}function M9(n,r){if(n.flags&1048576){for(let a of n.types)if(!Hc(r.types,a))return!1;return!0}return Hc(r.types,n)}function _y(n,r){return!!(n===r||n.flags&131072||r.flags&1048576&&M9(n,r))}function WO(n,r){if(n&&n.flags&1048576){let a=bm(n,r);if(a&&jo(a)&2)return a.links.isDiscriminantProperty===void 0&&(a.links.isDiscriminantProperty=(a.links.checkFlags&192)===192&&!my(vt(a))),!!a.links.isDiscriminantProperty}return!1}function KO(n,r){let a;for(let s of n)if(WO(r,s.name)){if(a){a.push(s);continue}a=[s]}return a}function VO(n,r){let a;return Ec(n,r)||(a=xp(n,r)?.type)&&Tl(a,!0,!0)}function B9(n,r,a){let s=n.types,l=s.map(f=>f.flags&402784188?0:-1);for(let[f,h]of r){let D=!1;for(let w=0;w<s.length;w++)if(l[w]){let J=VO(s[w],h);J&&vu(f(),q=>!!a(q,J))?D=!0:l[w]=3}for(let w=0;w<s.length;w++)l[w]===3&&(l[w]=D?0:-1)}let d=Yr(l,0)?st(s.filter((f,h)=>l[h]),0):n;return d.flags&131072?n:d}function zO(n,r,a){if(r.flags&1048576&&n.flags&2621440){let s=UO(r,n);if(s)return s;let l=ya(n);if(l){let d=KO(l,r);if(d){let f=B9(r,qn(d,h=>[()=>vt(h),h.name]),a);if(f!==r)return f}}}}function j9(n){if(no(n,67108864)){let r=sa(n,a=>!(a.flags&402784188));if(!(r.flags&131072))return r}return n}function J9(n,r,a,s,l){return cs(s)?!0:fw(n,r,a,s,l)}function HO(n,r,a){return J9(n,n.kind===286&&n.expression.kind===71,!1,r,a)}function qO(n,r){let a=ya(r)??xe;if(typeof n!="string"){let s=n.parent;ii(s)&&(a=Rr(a,l=>HO(s,r,l))),n=Mo(n)}return tO(n,a,111551)}function GO(n,r){let a=qO(n,r);return a&&us(a)}function $O(n){let r;for(;(Jn(n)&96)===96&&(r=X_(n))&&(r.symbol||r.flags&2097152&&Tn(r.types,a=>!!a.symbol));)n=r;return n}function QO(n,r){return(Jn(n)&96)===96&&(n=$O(n)),n.flags&2097152?Tn(n.types,a=>QO(a,r)):Mv(n)===r}function xy(n,r,a,s=3){if(a>=s){if((Jn(n)&96)===96&&(n=$O(n)),n.flags&2097152)return Tn(n.types,h=>xy(h,r,a,s));let l=Mv(n),d=0,f=0;for(let h=0;h<a;h++){let D=r[h];if(QO(D,l)){if(D.id>=f&&(d++,d>=s))return!0;f=D.id}}}return!1}function U9(n,r){let a=Vc(n);if(a!==n)return a;if(n.flags&2097152&&W9(n)){let s=Ia(n.types,l=>Z_(l,r));if(s!==n.types)return bi(s)}return n}function W9(n){let r=!1,a=!1;for(let s of n.types)if(r||(r=!!(s.flags&465829888)),a||(a=!!(s.flags&98304)||Sl(s)),r&&a)return!0;return!1}function YO(n,r){let a=`${ra(n)}>${ra(r)}`,s=Yu.get(a);if(s)return s;let l=bt(33554432);return l.baseType=n,l.constraint=r,Yu.set(a,l),l}function Vv(n){return zv(n)?YO(n,yr):n}function zv(n){return!!(n.flags&3145728&&Tn(n.types,zv)||n.flags&33554432&&!by(n)&&zv(n.baseType)||n.flags&524288&&!Sl(n)||n.flags&432275456)}function by(n){return!!(n.flags&33554432&&n.constraint.flags&2)}function XO(n,r){I.fail("not implemented - getStringMappingType")}function Hv(n,r,a,s){let l=Ma(n);if(l===Ws){let w=lQ.get(n.name);if(w!==void 0&&r&&r.length===1)return w===4?Vv(r[0]):XO(n,r[0])}let d=On(n),f=d.typeParameters,h=Ls(r)+Wm(a,s),D=d.instantiations.get(h);return D||d.instantiations.set(h,D=S1(l,os(f,Nf(r,f,ad(f),mr(n.valueDeclaration))),a,s)),D}function Q_(n,r,a){let s=Bd(r,a),l=Ma(n);if(zo(l))return l;let d=n.flags&524288?Hv(n,yl(On(n).typeParameters,s)):vm(l,yl(l.typeParameters,s));return Ol.add(ra(d)),d}function _E(n){return Ol.has(ra(n))}function K9(n,r){let a,s=!1;for(let l of n)if(l.flags&465829888){let d=Rp(l);for(;d&&d.flags&21233664;)d=Rp(d);d&&(a=Fr(a,d),r&&(a=Fr(a,l)))}else(l.flags&469892028||Sl(l))&&(s=!0);if(a&&(r||s)){if(s)for(let l of n)(l.flags&469892028||Sl(l))&&(a=Fr(a,l));return Z_(bi(a,2),!1)}}function V9(n,r){let a=uc(n.elementFlags,s=>!(s&r));return a>=0?a:n.elementFlags.length}function Y_(n,r){return n.elementFlags.length-yx(n.elementFlags,a=>!(a&r))-1}function Mp(n){return Ci(n)&&!!(n.target.combinedFlags&8)}function*ZO(n,r,a,s){let l=ya(r);for(let d of l)if(a||!(d.flags&16777216||jo(d)&48)){let f=bo(n,d.name);if(!f)yield d;else if(s){let h=vt(d);if(h.flags&101280){let D=vt(f);D.flags&1||ta(D)===ta(h)||(yield d)}}}}function qv(n,r,a,s){return _M(ZO(n,r,a,s))}function Gv(n,r){if(jo(n)&6){for(let a of n.links.containingType.types){let s=bo(a,n.name),l=s&&Gv(s,r);if(l)return l}return}return r(n)}function z9(n,r){return Gv(n,a=>{let s=L_(a);return s?iF(s,r):!1})}function H9(n,r){return!Gv(r,a=>vl(a)&4?!z9(n,L_(a)):!1)}function xE(n){let r=Jn(n);return n.flags&2097152?di(n.types,xE):!!(n.symbol&&n.symbol.flags&7040&&!(n.symbol.flags&32)&&!Wv(n))||!!(r&4194304)||!!(r&1024&&xE(n.source))}function eR(n){return!!(n.flags&524288)&&!as(n)}function nR(n){return Mp(n)&&n.target.elementFlags.length===1}function _l(n){return n.constraintType||(n.constraintType=As(bc(n))||kn)}function tR(n){return st(Fr(xM(n.target.fixedLength,r=>jl(""+r)),zl(n.target.readonly?be:W)))}function ph(n){return!!(nh(n)&8388608)}function rR(n,r){return n?r?bi([n,r]):n:r}function Lf(n,r,a){if(Jn(n)&4){let s=n.target,l=Lo(n);return rr(s.typeParameters)===rr(l)?vm(s,Kr(l,[r||s.thisType])):n}else if(n.flags&2097152){let s=Ia(n.types,l=>Lf(l,r,a));return s!==n.types?bi(s):n}return a?Na(n):n}function $v(n){let r;return!!(n.flags&8388608&&Jn(r=n.objectType)&32&&!as(r)&&ph(n.indexType)&&!(Nn(r)&8)&&!r.declaration.nameType)}function q9(n){return!!(Jn(n)&32&&Nn(n)&4)}function iR(n){let r=Nn(n);return r&8?-1:r&4?1:0}function X_(n){if(!n.modifiersType){let r=qT(n.declaration),a=_l(r),s=a&&a.flags&262144?As(a):a;n.modifiersType=s&&s.flags&4194304?Mt(s.type,n.mapper):yr}return n.modifiersType}function Cy(n){if(Jn(n)&32)return iR(n)||Cy(X_(n));if(n.flags&2097152){let r=Cy(n.types[0]);return di(n.types,(a,s)=>s===0||Cy(a)===r)?r:0}return 0}function Qv(n){return n===W||n===be||n.objectFlags&8?ne:GR(n.symbol,n.typeParameters)}function G9(n){return n.flags&1048576?n.types.length:1}function $9(n,r){for(let a=0;a<r.length;a++)if((r[a]&7)===1&&n[a].flags&16384)return!0;return!1}function Q9(n){return vx(n.declaration.typeParameter)}function Y9(n){let r=Q9(n);return console.debug("todo - isMappedTypeWithKeyofConstraintDeclaration"),!1}function X9(n,r,a,s){for(let l of ya(n))s(x_(l,r));if(n.flags&1)s(sr);else for(let l of Da(n))(!a||l.keyType.flags&134217732)&&s(l.keyType)}function Af(n,r,a,s,l,d,f){let h,D,w,J,q,Z,ie=0,Ue=0,Xe=0,Dn=0,mn=!1,wn=0,Bn=0,Fn,nt,ft=16e6-a.size>>3;I.assert(a!==fa||!s,"no error reporting in identity checking");let ur=Se(n,r,3,!!s,l);if(nt&&Jr(),mn){let K=bE(n,r,0,a,!1);a.set(K,2|(ft<=0?32:64)),Pt?.instant(Pt.Phase.CheckTypes,"checkTypeRelatedTo_DepthLimit",{sourceId:n.id,targetId:r.id,depth:Ue,targetDepth:Xe});let Y=ft<=0?N.Excessive_complexity_comparing_types_0_and_1:N.Excessive_stack_depth_comparing_types_0_and_1,Te=on(s||B,Y,Xn(n),Xn(r));f&&(f.errors||(f.errors=[])).push(Te)}else if(h){if(d){let Te=d();Te&&(hB(Te,h),h=Te)}let Y=Pg(nc(s),s,h,void 0);D&&Bo(Y,...D),f&&(f.errors||(f.errors=[])).push(Y),(!f||!f.skipLogging)&&zn.add(Y)}return s&&f&&f.skipLogging&&ur===0&&I.assert(!!f.errors,"missed opportunity to interact with error."),ur!==0;function _r(K){h=K.errorInfo,Fn=K.lastSkippedInfo,nt=K.incompatibleStack,wn=K.overrideNextErrorInfo,Bn=K.skipParentCounter,D=K.relatedInfo}function yo(){return{errorInfo:h,lastSkippedInfo:Fn,incompatibleStack:nt?.slice(),overrideNextErrorInfo:wn,skipParentCounter:Bn,relatedInfo:D?.slice()}}function zi(K,Y){if(Pt&&K.flags&3145728&&Y.flags&3145728){let Te=K,Oe=Y;if(Te.objectFlags&Oe.objectFlags&32768)return;let yn=Te.types.length,Me=Oe.types.length;yn*Me>1e6&&Pt.instant(Pt.Phase.CheckTypes,"traceUnionsOrIntersectionsTooLarge_DepthLimit",{sourceId:K.id,sourceSize:yn,targetId:Y.id,targetSize:Me,pos:s?.pos,end:s?.end})}}function Jr(){let K=nt||[];nt=void 0;let Y=Fn;if(Fn=void 0,K.length===1){dr(...K[0]),Y&&Gi(void 0,...Y);return}let Te="",Oe=[];for(;K.length;){let[yn,...Me]=K.pop();switch(yn.code){case N.Types_of_property_0_are_incompatible.code:{Te.indexOf("new ")===0&&(Te=`(${Te})`);let sn=""+Me[0];Te.length===0?Te=`${sn}`:zp(sn,il(Qe))?Te=`${Te}.${sn}`:sn[0]==="["&&sn[sn.length-1]==="]"?Te=`${Te}${sn}`:Te=`${Te}[${sn}]`;break}case N.Call_signature_return_types_0_and_1_are_incompatible.code:case N.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code:{if(Te.length===0){let sn=yn;yn.code===N.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code&&(sn=N.Call_signature_return_types_0_and_1_are_incompatible),Oe.unshift([sn,Me[0],Me[1]])}else Te=`${Te}()`;break}case N.Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target.code:{Oe.unshift([N.Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target,Me[0],Me[1]]);break}case N.Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target.code:{Oe.unshift([N.Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target,Me[0],Me[1],Me[2]]);break}default:return I.fail(`Unhandled Diagnostic: ${yn.code}`)}}Te?dr(Te[Te.length-1]===")"?N.The_types_returned_by_0_are_incompatible_between_these_types:N.The_types_of_0_are_incompatible_between_these_types,Te):Oe.shift();for(let[yn,...Me]of Oe){let sn=yn.elidedInCompatabilityPyramid;yn.elidedInCompatabilityPyramid=!1,dr(yn,...Me),yn.elidedInCompatabilityPyramid=sn}Y&&Gi(void 0,...Y)}function Gi(K,Y,Te){nt&&Jr();let[Oe,yn]=cv(Y,Te),Me=Y,sn=Oe;if(Ld(Y)&&!Ov(Te)&&(Me=Ql(Y),sn=sv(Me)),(Te.flags&8388608&&!(Y.flags&8388608)?Te.objectType.flags:Te.flags)&262144&&Te!==Rl&&Te!==_c){let Hn=na(Te),Ht;Hn&&(Ni(Me,Hn)||(Ht=Ni(Y,Hn)))?dr(N._0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_constraint_2,Ht?Oe:sn,yn,Xn(Hn)):(h=void 0,dr(N._0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1,yn,sn))}if(!K)if(a===pa)K=N.Type_0_is_not_comparable_to_type_1;else if(Oe===yn)K=N.Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated;else{if(Y.flags&128&&Te.flags&1048576){let Hn=w9(Y,Te);if(Hn){dr(N.Type_0_is_not_assignable_to_type_1_Did_you_mean_2,sn,yn,Xn(Hn));return}}K=N.Type_0_is_not_assignable_to_type_1}dr(K,sn,yn)}function dr(K,...Y){I.assert(!!s),nt&&Jr(),!K.elidedInCompatabilityPyramid&&(Bn===0?h=ci(h,K,...Y):Bn--)}function Ja(K,Y,Te){return Ci(K)?K.target.readonly&&cx(Y)?(Te&&dr(N.The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1,Xn(K),Xn(Y)),!1):od(Y):Ny(K)&&cx(Y)?(Te&&dr(N.The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1,Xn(K),Xn(Y)),!1):Ci(Y)?ca(K):!0}function ka(K,Y){let Te=rE(K.symbol)?Xn(K,K.symbol.valueDeclaration):Xn(K),Oe=rE(Y.symbol)?Xn(Y,Y.symbol.valueDeclaration):Xn(Y);(Lt===K&&sr===Y||pr===K&&Xi===Y||gt===K&&vr===Y)&&dr(N._0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible,Oe,Te)}function We(K,Y,Te,Oe,yn){let Me=!!Jv(K),sn=!!Jv(Y);Te=K.aliasSymbol||Me?K:Te,Oe=Y.aliasSymbol||sn?Y:Oe;let Vn=wn>0;if(Vn&&wn--,Te.flags&524288&&Oe.flags&524288){let Hn=h;Ja(Te,Oe,!0),h!==Hn&&(Vn=!!h)}if(Te.flags&524288&&Oe.flags&402784188?ka(Te,Oe):Te.symbol&&Te.flags&524288&&E===Te?dr(N.The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead):h=kO(h,Y),!yn&&Vn){let Hn=yo();Gi(yn,Te,Oe);let Ht;h&&h!==Hn.errorInfo&&(Ht={code:h.code,messageText:h.messageText}),_r(Hn),Ht&&h&&(h.canonicalHead=Ht),Fn=[Te,Oe];return}if(Gi(yn,Te,Oe),Te.flags&262144&&Te.symbol?.declarations?.[0]&&!Rp(Te)){let Hn=vk(Te);if(Hn.constraint=Mt(Oe,Bd(Te,Hn)),SE(Hn)){let Ht=Xn(Oe,Te.symbol.declarations[0]);va(yi(Te.symbol.declarations[0],N.This_type_parameter_might_need_an_extends_0_constraint,Ht))}}}function Se(K,Y,Te=3,Oe=!1,yn,Me=0){if(K===Y)return-1;if(K.flags&524288&&Y.flags&402784188)return a===pa&&!(Y.flags&131072)&&lh(Y,K,a)||lh(K,Y,a,Oe?dr:void 0)?-1:(Oe&&We(K,Y,K,Y,yn),0);let sn=Z_(K,!1),Vn=Z_(Y,!0);if(sn===Vn)return-1;if(a===fa)return sn.flags!==Vn.flags?0:sn.flags&67358815?-1:(zi(sn,Vn),$t(sn,Vn,!1,0,Te));if(sn.flags&262144&&Rp(sn)===Vn)return-1;if(sn.flags&470302652&&Vn.flags&1048576){let Hn=Vn.types,Ht=Hn.length===2&&Hn[0].flags&98304?Hn[1]:Hn.length===3&&Hn[0].flags&98304&&Hn[1].flags&98304?Hn[2]:void 0;if(Ht&&!(Ht.flags&98304)&&(Vn=Z_(Ht,!0),sn===Vn))return-1}if(a===pa&&!(Vn.flags&131072)&&lh(Vn,sn,a)||lh(sn,Vn,a,Oe?dr:void 0))return-1;if(sn.flags&469499904||Vn.flags&469499904){if(!(Me&2)&&Bl(sn)&&Jn(sn)&8192&&Ss(sn,Vn,Oe))return Oe&&Gi(yn,sn,Y.aliasSymbol?Y:Vn),0;if((a!==pa||un(sn))&&!(Me&2)&&sn.flags&405405628&&sn!==E&&Vn.flags&2621440&&Uv(Vn)&&(ya(sn).length>0||Wv(sn))&&!O9(sn,Vn,!1)){if(Oe){let it=Xn(K.aliasSymbol?K:sn),mt=Xn(Y.aliasSymbol?Y:Vn),Er=Bi(sn,0),Ao=Bi(sn,1);Er.length>0&&Se(Ii(Er[0]),Vn,1,!1)||Ao.length>0&&Se(Ii(Ao[0]),Vn,1,!1)?dr(N.Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it,it,mt):dr(N.Type_0_has_no_properties_in_common_with_type_1,it,mt)}return 0}zi(sn,Vn);let Qr=sn.flags&1048576&&sn.types.length<4&&!(Vn.flags&1048576)||Vn.flags&1048576&&Vn.types.length<4&&!(sn.flags&469499904)?Dr(sn,Vn,Oe,Me):$t(sn,Vn,Oe,Me,Te);if(Qr)return Qr}return Oe&&We(K,Y,sn,Vn,yn),0}function tt(K,Y,Te,Oe){let yn=K.types;if(K.flags&1048576&&Hc(yn,Y))return-1;let Me=yn.length;for(let sn=0;sn<Me;sn++){let Vn=Se(yn[sn],Y,1,Te&&sn===Me-1,void 0,Oe);if(Vn)return Vn}return 0}function Rt(K,Y){return K.flags&1048576&&Y.flags&1048576&&!(K.types[0].flags&32768)&&Y.types[0].flags&32768?dh(Y,-32769):Y}function Tt(K,Y,Te,Oe){let yn=-1,Me=K.types,sn=Rt(K,Y);for(let Vn=0;Vn<Me.length;Vn++){let Hn=Me[Vn];if(sn.flags&1048576&&Me.length>=sn.types.length&&Me.length%sn.types.length===0){let or=Se(Hn,sn.types[Vn%sn.types.length],3,!1,void 0,Oe);if(or){yn&=or;continue}}let Ht=Se(Hn,Y,1,Te,void 0,Oe);if(!Ht)return 0;yn&=Ht}return yn}function ei(K,Y,Te,Oe){let yn=Y.types;if(Y.flags&1048576){if(Hc(yn,K))return-1;if(a!==pa&&Jn(Y)&32768&&!(K.flags&1024)&&(K.flags&2432||(a===Uc||a===Ts)&&K.flags&256)){let sn=K===K.regularType?K.freshType:K.regularType,Vn=K.flags&128?sr:K.flags&256?Xi:K.flags&2048?vr:K.flags&4096?Bc:void 0;return Vn&&Hc(yn,Vn)||sn&&Hc(yn,sn)?-1:0}let Me=UO(Y,K);if(Me){let sn=Se(K,Me,2,!1,void 0,Oe);if(sn)return sn}}for(let Me of yn){let sn=Se(K,Me,2,!1,void 0,Oe);if(sn)return sn}if(Te){let Me=ma(K,Y,Se);Me&&Se(K,Me,2,!0,void 0,Oe)}return 0}function Dr(K,Y,Te,Oe){if(K.flags&1048576){if(Y.flags&1048576){let yn=K.origin;if(yn&&yn.flags&2097152&&Y.aliasSymbol&&Yr(yn.types,Y))return-1;let Me=Y.origin;if(Me&&Me.flags&1048576&&K.aliasSymbol&&Yr(Me.types,K))return-1}return a===pa?tt(K,Y,Te&&!(K.flags&402784188),Oe):Tt(K,Y,Te&&!(K.flags&402784188),Oe)}if(Y.flags&1048576)return ei($_(K),Y,Te&&!(K.flags&402784188)&&!(Y.flags&402784188),Oe);if(Y.flags&2097152)return Ho(K,Y,Te,2);if(a===pa&&Y.flags&402784188){let yn=Ia(K.types,Me=>Me.flags&465829888?na(Me)||yr:Me);if(yn!==K.types){if(K=bi(yn),K.flags&131072)return 0;if(!(K.flags&2097152))return Se(K,Y,1,!1)||Se(Y,K,1,!1)}}return tt(K,Y,!1,1)}function Ho(K,Y,Te,Oe){let yn=-1,Me=Y.types;for(let sn of Me){let Vn=Se(K,sn,2,Te,void 0,Oe);if(!Vn)return 0;yn&=Vn}return yn}function Hi(K,Y){return K.valueDeclaration&&Y.valueDeclaration&&K.valueDeclaration.parent===Y.valueDeclaration}function Ai(K,...Y){dr(K,...Y),Bn++}function Ss(K,Y,Te){if(!uh(Y)||!je&&Jn(Y)&4096||(a===vs||a===pa)&&(_y(E,Y)||Kp(Y)))return!1;let Oe=Y,yn;Y.flags&1048576&&(Oe=zO(K,Y,Se)||j9(Y),yn=Oe.flags&1048576?Oe.types:[Oe]);for(let Me of ya(K))if(Hi(Me,K.symbol)){if(!Kv(Oe,Me.name,!1)){if(Te){let sn=sa(Oe,uh);if(!s)return I.fail();let Vn=K.symbol?.declarations&&Ta(K.symbol.declarations),Hn;if(Me.valueDeclaration&&It(Me.valueDeclaration,Ht=>Ht===Vn)&&Dt(Vn)===Dt(s)){let or=Me.valueDeclaration.name;s=or,cn(or)&&(Hn=GO(or,sn))}Hn!==void 0?Ai(N.Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_write_2,Li(Me),Xn(sn),Hn):Ai(N.Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1,Li(Me),Xn(sn))}return!0}if(yn&&!Se(vt(Me),$c(yn,Me.name),3,Te))return Te&&Qc(N.Types_of_property_0_are_incompatible,Li(Me)),!0}return!1}function $c(K,Y){return st(Yc(K,(Oe,yn)=>{yn=Na(yn);let Me=yn.flags&3145728?Do(yn,Y):Id(yn,Y),sn=Me&&vt(Me)||xp(yn,Y)?.type||Gt;return Fr(Oe,sn)},void 0)||xe)}function Zl(K,Y){if(!Y||K.length===0)return K;let Te;for(let Oe=0;Oe<K.length;Oe++)Y.has(K[Oe].name)?Te||(Te=K.slice(0,Oe)):Te&&Te.push(K[Oe]);return Te||K}function Jd(K,Y,Te){if(!(K.flags&524288&&Y.flags&524288))return 0;let Oe=Zl(sd(K),Te),yn=Zl(sd(Y),Te);if(Oe.length!==yn.length)return 0;let Me=-1;for(let sn of Oe){let Vn=Id(Y,sn.name);if(!Vn)return 0;let Hn=uC(sn,Vn,Se);if(!Hn)return 0;Me&=Hn}return Me}function Qc(K,...Y){wn++,Fn=void 0,(nt||(nt=[])).push([K,...Y])}function yh(K,Y){let Te=xF(K,0),Oe=xF(K,1),yn=sd(K);return yn&&(Te?.length||Oe?.length)&&!yn.length?!!(Bi(Y,0).length&&Te.length||Bi(Y,1).length&&Oe.length):!0}function va(K){I.assert(!!h),D?D.push(K):D=[K]}function JE(K,Y,Te,Oe){let yn=!1,Me=Yo(ZO(K,Y,Oe,!1));if((!l||l.code!==N.Class_0_incorrectly_implements_interface_1.code&&l.code!==N.Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass.code)&&(yn=!0),Me.length===1){let sn=Li(Te,void 0,0,20);dr(N.Property_0_is_missing_in_type_1_but_required_in_type_2,sn,...cv(K,Y)),rr(Te.declarations)&&va(yi(Te.declarations[0],N._0_is_declared_here,sn)),yn&&h&&wn++}else Ja(K,Y,!1)&&(Me.length>5?dr(N.Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more,Xn(K),Xn(Y),qn(Me.slice(0,4),sn=>Li(sn)).join(", "),Me.length-4):dr(N.Type_0_is_missing_the_following_properties_from_type_1_Colon_2,Xn(K),Xn(Y),qn(Me,sn=>Li(sn)).join(", ")),yn&&h&&wn++)}function pe(K,Y,Te,Oe,yn){let Me=z&&!!(jo(Y)&48),sn=Tl(Re(Y),!1,Me),Vn=Te(K);return Se(Vn,sn,3,Oe,void 0,yn)}function Je(K,Y,Te,Oe,yn,Me,sn,Vn){let Hn=vl(Te),Ht=vl(Oe);if(Hn&2||Ht&2){if(Te.valueDeclaration!==Oe.valueDeclaration)return Me&&(Hn&2&&Ht&2?dr(N.Types_have_separate_declarations_of_a_private_property_0,Li(Oe)):dr(N.Property_0_is_private_in_type_1_but_not_in_type_2,Li(Oe),Xn(Hn&2?K:Y),Xn(Hn&2?Y:K))),0}else if(Ht&4){if(!H9(Te,Oe))return Me&&dr(N.Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2,Li(Oe),Xn(L_(Te)||K),Xn(L_(Oe)||Y)),0}else if(Hn&4)return Me&&dr(N.Property_0_is_protected_in_type_1_but_public_in_type_2,Li(Oe),Xn(K),Xn(Y)),0;if(a===Ts&&Sf(Te)&&!Sf(Oe))return 0;let or=pe(Te,Oe,yn,Me,sn);return or?!Vn&&Te.flags&16777216&&Oe.flags&106500&&!(Oe.flags&16777216)?(Me&&dr(N.Property_0_is_optional_in_type_1_but_required_in_type_2,Li(Oe),Xn(K),Xn(Y)),0):or:(Me&&Qc(N.Types_of_property_0_are_incompatible,Li(Oe)),0)}function A(K,Y,Te,Oe,yn,Me){if(a===fa)return Jd(K,Y,Oe);let sn=-1;if(Ci(Y)){if(od(K)){if(!Y.target.readonly&&(Ny(K)||Ci(K)&&K.target.readonly))return 0;let Qr=jp(K),it=jp(Y),mt=Ci(K)?K.target.combinedFlags&4:4,Er=Y.target.combinedFlags&4,Ao=Ci(K)?K.target.minLength:0,ls=Y.target.minLength;if(!mt&&Qr<ls)return Te&&dr(N.Source_has_0_element_s_but_target_requires_1,Qr,ls),0;if(!Er&&it<Ao)return Te&&dr(N.Source_has_0_element_s_but_target_allows_only_1,Ao,it),0;if(!Er&&(mt||it<Qr))return Te&&(Ao<ls?dr(N.Target_requires_0_element_s_but_source_may_have_fewer,ls):dr(N.Target_allows_only_0_element_s_but_source_may_have_more,it)),0;let ws=Lo(K),Th=Lo(Y),Dy=V9(Y.target,11),Xm=Y_(Y.target,11),hh=Y.target.hasRestElement,dx=!!Oe;for(let Fu=0;Fu<Qr;Fu++){let Sh=Ci(K)?K.target.elementFlags[Fu]:4,eM=Qr-1-Fu,Py=hh&&Fu>=Dy?it-1-Math.min(eM,Xm):Fu,ky=Y.target.elementFlags[Py];if(ky&8&&!(Sh&8))return Te&&dr(N.Source_provides_no_match_for_variadic_element_at_position_0_in_target,Py),0;if(Sh&8&&!(ky&12))return Te&&dr(N.Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target,Fu,Py),0;if(ky&1&&!(Sh&1))return Te&&dr(N.Source_provides_no_match_for_required_element_at_position_0_in_target,Py),0;if(dx&&((Sh&12||ky&12)&&(dx=!1),dx&&Oe?.has(""+Fu)))continue;let Yz=td(ws[Fu],!!(Sh&ky&2)),nM=Th[Py],Xz=Sh&8&&ky&4?aa(nM):td(nM,!!(ky&2)),tM=Se(Yz,Xz,3,Te,void 0,Me);if(!tM)return Te&&(it>1||Qr>1)&&(hh&&Fu>=Dy&&eM>=Xm&&Dy!==Qr-Xm-1?Qc(N.Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target,Dy,Qr-Xm-1,Py):Qc(N.Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target,Fu,Py)),0;sn&=tM}return sn}if(Y.target.combinedFlags&12)return 0}let Vn=(a===Uc||a===Ts)&&!Bl(K)&&!zC(K)&&!Ci(K),Hn=qv(K,Y,Vn,!1);if(Hn)return Te&&yh(K,Y)&&JE(K,Y,Hn,Vn),0;if(Bl(Y)){for(let Qr of Zl(ya(K),Oe))if(!Id(Y,Qr.name)&&!(vt(Qr).flags&32768))return Te&&dr(N.Property_0_does_not_exist_on_type_1,Li(Qr),Xn(Y)),0}let Ht=ya(Y),or=Ci(K)&&Ci(Y);for(let Qr of Zl(Ht,Oe)){let it=Qr.name;if(!(Qr.flags&4194304)&&(!or||rm(it)||it==="length")&&(!yn||Qr.flags&16777216)){let mt=bo(K,it);if(mt&&mt!==Qr){let Er=Je(K,Y,mt,Qr,Re,Te,Me,a===pa);if(!Er)return 0;sn&=Er}}}return sn}function R(K,Y){let Te=Da(K),Oe=Da(Y);if(Te.length!==Oe.length)return 0;for(let yn of Oe){let Me=Ml(K,yn.keyType);if(!(Me&&Se(Me.type,yn.type,3)&&Me.isReadonly===yn.isReadonly))return 0}return-1}function oe(K,Y,Te,Oe,yn){if(a===fa)return R(K,Y);let Me=Da(Y),sn=Tn(Me,Hn=>Hn.keyType===sr),Vn=-1;for(let Hn of Me){let Ht=a!==Ts&&!Te&&sn&&Hn.type.flags&1?-1:as(K)&&sn?Se(Ne(K),Hn.type,3,Oe):en(K,Hn,Oe,yn);if(!Ht)return 0;Vn&=Ht}return Vn}function Ne(K){return K.templateType||(K.templateType=K.declaration.type?Mt(Tl(wt(K.declaration.type),!0,!!(Nn(K)&4)),K.mapper):kn)}function en(K,Y,Te,Oe){let yn=_p(K,Y.keyType);return yn?Ge(yn,Y,Te,Oe):!(Oe&1)&&(a!==Ts||Jn(K)&8192)&&xE(K)?rt(K,Y,Te,Oe):(Te&&dr(N.Index_signature_for_type_0_is_missing_in_type_1,Xn(Y.keyType),Xn(K)),0)}function Ge(K,Y,Te,Oe){let yn=Se(K.type,Y.type,3,Te,void 0,Oe);return!yn&&Te&&(K.keyType===Y.keyType?dr(N._0_index_signatures_are_incompatible,Xn(K.keyType)):dr(N._0_and_1_index_signatures_are_incompatible,Xn(K.keyType),Xn(Y.keyType))),yn}function En(K,Y,Te){if(Te||!(vl(K)&6)){let Oe=On(Jt(K)).nameType;if(!Oe){let yn=ti(K.valueDeclaration);Oe=K.name==="default"?jl("default"):yn&&$m(yn)||(Ag(K)?void 0:jl(us(K)))}if(Oe&&Oe.flags&Y)return Oe}return ct}function rt(K,Y,Te,Oe){let yn=-1,Me=Y.keyType,sn=K.flags&2097152?Pv(K):sd(K);for(let Vn of sn)if(Sp(En(Vn,384),Me)){let Hn=Re(Vn),Ht=Ee||Hn.flags&32768||Me===Et||!(Vn.flags&16777216)?Hn:Xl(Hn,524288),or=Se(Ht,Y.type,3,Te,void 0,Oe);if(!or)return Te&&dr(N.Property_0_is_incompatible_with_index_signature,Li(Vn)),0;yn&=or}for(let Vn of Da(K))if(Sp(Vn.keyType,Me)){let Hn=Ge(Vn,Y,Te,Oe);if(!Hn)return 0;yn&=Hn}return yn}function zt(K,Y,Te,Oe){let yn=yo(),Me=Rn(K,Y,Te,Oe,yn);if(a!==fa){if(!Me&&(K.flags&2097152||K.flags&262144&&Y.flags&1048576)){let sn=K9(K.flags&2097152?K.types:[K],!!(Y.flags&1048576));sn&&lc(sn,Vn=>Vn!==K)&&(Me=Se(sn,Y,1,!1,void 0,Oe))}Me&&!(Oe&2)&&Y.flags&2097152&&!$k(Y)&&K.flags&2621440?(Me&=A(K,Y,Te,void 0,!1,0),Me&&Bl(K)&&Jn(K)&8192&&(Me&=oe(K,Y,!1,Te,0))):Me&&eR(Y)&&!od(Y)&&K.flags&2097152&&Na(K).flags&3670016&&!Tn(K.types,sn=>sn===Y||!!(Jn(sn)&262144))&&(Me&=A(K,Y,Te,void 0,!0,Oe))}return Me&&_r(yn),Me}function Xt(K,Y){let Te=-1,Oe=K.types;for(let yn of Oe){let Me=ei(yn,Y,!1,0);if(!Me)return 0;Te&=Me}return Te}function wr(K,Y,Te){if(a===pa||(a===fa?Nn(K)===Nn(Y):Cy(K)<=Cy(Y))){let yn,Me=_l(Y),sn=Mt(_l(K),Cy(K)<0?Zu:Su);if(yn=Se(Me,sn,3,Te)){let Vn=os([bc(K)],[bc(Y)]);if(Mt(Wl(K),Vn)===Mt(Wl(Y),Vn))return yn&Se(Mt(Ne(K),Vn),Ne(Y),3,Te)}}return 0}function Zi(K,Y,Te){let Oe=Bi(K,Te),yn=Bi(Y,Te);if(Oe.length!==yn.length)return 0;let Me=-1;for(let sn=0;sn<Oe.length;sn++){let Vn=WC(Oe[sn],yn[sn],!1,!1,!1,Se);if(!Vn)return 0;Me&=Vn}return Me}function Qo(K,Y){return K.parameters.length===0&&Y.parameters.length===0?(Te,Oe)=>Qc(N.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1,Xn(Te),Xn(Oe)):(Te,Oe)=>Qc(N.Call_signature_return_types_0_and_1_are_incompatible,Xn(Te),Xn(Oe))}function an(K,Y,Te,Oe,yn,Me){let sn=a===Uc?16:a===Ts?24:0;return Gk(Te?k_(K):K,Te?k_(Y):Y,sn,Oe,dr,Me,Vn,Su);function Vn(Hn,Ht,or){return Se(Hn,Ht,3,or,void 0,yn)}}function ni(K,Y,Te,Oe,yn){if(a===fa)return Zi(K,Y,Te);if(Y===Jc||K===Jc)return-1;let Me=!1,sn=!1,Vn=Bi(K,Me&&Te===1?0:Te),Hn=Bi(Y,sn&&Te===1?0:Te);Te===1&&Vn.length&&Hn.length&&console.debug("todo - constructor");let Ht=-1,or=Qo,Qr=Jn(K),it=Jn(Y);if(Qr&64&&it&64&&K.symbol===Y.symbol||Qr&4&&it&4&&K.target===Y.target){I.assertEqual(Vn.length,Hn.length);for(let mt=0;mt<Hn.length;mt++){let Er=an(Vn[mt],Hn[mt],!0,Oe,yn,or(Vn[mt],Hn[mt]));if(!Er)return 0;Ht&=Er}}else if(Vn.length===1&&Hn.length===1){let mt=a===pa,Er=Eo(Vn),Ao=Eo(Hn);Ht=an(Er,Ao,mt,Oe,yn,or(Er,Ao))}else e:for(let mt of Hn){let Er=yo(),Ao=Oe;for(let ls of Vn){let ws=an(ls,mt,!0,Ao,yn,or(ls,mt));if(ws){Ht&=ws,_r(Er);continue e}Ao=!1}return Ao&&dr(N.Type_0_provides_no_match_for_the_signature_1,Xn(K),oh(mt,void 0,void 0,Te)),0}return Ht}function In(K,Y){let Te=ya(K),Oe=KO(Te,Y);if(!Oe)return 0;let yn=1;for(let or of Oe)if(yn*=G9(Re(or)),yn>25)return Pt?.instant(Pt.Phase.CheckTypes,"typeRelatedToDiscriminatedType_DepthLimit",{sourceId:K.id,targetId:Y.id,numCombinations:yn}),0;let Me=new Array(Oe.length),sn=new Set;for(let or=0;or<Oe.length;or++){let Qr=Oe[or],it=Re(Qr);Me[or]=it.flags&1048576?it.types:[it],sn.add(Qr.name)}let Vn=bM(Me),Hn=[];for(let or of Vn){let Qr=!1;e:for(let it of Y.types){for(let mt=0;mt<Oe.length;mt++){let Er=Oe[mt],Ao=bo(it,Er.name);if(!Ao)continue e;if(Er===Ao)continue;if(!Je(K,Y,Er,Ao,ws=>or[mt],!1,0,z||a===pa))continue e}bl(Hn,it,jf),Qr=!0}if(!Qr)return 0}let Ht=-1;for(let or of Hn)if(Ht&=A(K,or,!1,sn,!1,0),Ht&&(Ht&=ni(K,or,0,!1,0),Ht&&(Ht&=ni(K,or,1,!1,0),Ht&&!(Ci(K)&&Ci(or))&&(Ht&=oe(K,or,!1,!1,0)))),!Ht)return Ht;return Ht}function Ct(K=xe,Y=xe,Te=xe,Oe,yn){if(K.length!==Y.length&&a===fa)return 0;let Me=K.length<=Y.length?K.length:Y.length,sn=-1;for(let Vn=0;Vn<Me;Vn++){let Hn=Vn<Te.length?Te[Vn]:1,Ht=Hn&7;if(Ht!==4){let or=K[Vn],Qr=Y[Vn],it=-1;if(Hn&8?it=a===fa?Se(or,Qr,3,!1):UC(or,Qr):Ht===1?it=Se(or,Qr,3,Oe,void 0,yn):Ht===2?it=Se(Qr,or,3,Oe,void 0,yn):Ht===3?(it=Se(Qr,or,3,!1),it||(it=Se(or,Qr,3,Oe,void 0,yn))):(it=Se(or,Qr,3,Oe,void 0,yn),it&&(it&=Se(Qr,or,3,Oe,void 0,yn))),!it)return 0;sn&=it}}return sn}function xr(K,Y){let Te=Na(X_(Y)),Oe=[];return X9(Te,384,!1,yn=>void Oe.push(Mt(K,BC(Y.mapper,bc(Y),yn)))),st(Oe)}function Rn(K,Y,Te,Oe,yn){let Me,sn,Vn=!1,Hn=K.flags,Ht=Y.flags;if(a===fa){if(Hn&3145728){let it=Xt(K,Y);return it&&(it&=Xt(Y,K)),it}if(Hn&4194304)return Se(K.type,Y.type,3,!1);if(Hn&8388608&&(Me=Se(K.objectType,Y.objectType,3,!1))&&(Me&=Se(K.indexType,Y.indexType,3,!1))||Hn&16777216&&K.root.isDistributive===Y.root.isDistributive&&(Me=Se(K.checkType,Y.checkType,3,!1))&&(Me&=Se(K.extendsType,Y.extendsType,3,!1))&&(Me&=Se(Km(K),Km(Y),3,!1))&&(Me&=Se(Vm(K),Vm(Y),3,!1))||Hn&33554432&&(Me=Se(K.baseType,Y.baseType,3,!1))&&(Me&=Se(K.constraint,Y.constraint,3,!1)))return Me;if(!(Hn&524288))return 0}else if(Hn&3145728||Ht&3145728){if(Me=Dr(K,Y,Te,Oe))return Me;if(!(Hn&465829888||Hn&524288&&Ht&1048576||Hn&2097152&&Ht&467402752))return 0}if(Hn&17301504&&K.aliasSymbol&&K.aliasTypeArguments&&K.aliasSymbol===Y.aliasSymbol&&!(_E(K)||_E(Y))){let it=qR(K.aliasSymbol);if(it===xe)return 1;let mt=On(K.aliasSymbol).typeParameters,Er=ad(mt),Ao=Nf(K.aliasTypeArguments,mt,Er,mr(K.aliasSymbol.valueDeclaration)),ls=Nf(Y.aliasTypeArguments,mt,Er,mr(K.aliasSymbol.valueDeclaration)),ws=Qr(Ao,ls,it,Oe);if(ws!==void 0)return ws}if(nR(K)&&!K.target.readonly&&(Me=Se(Lo(K)[0],Y,1))||nR(Y)&&(Y.target.readonly||cx(na(K)||K))&&(Me=Se(K,Lo(Y)[0],2)))return Me;if(Ht&262144){if(Jn(K)&32&&!K.declaration.nameType&&Se(zl(Y),_l(K),3)&&!(Nn(K)&4)){let it=Ne(K),mt=gl(Y,bc(K));if(Me=Se(it,mt,3,Te))return Me}if(a===pa&&Hn&262144){let it=As(K);if(it)for(;it&&vu(it,mt=>!!(mt.flags&262144));){if(Me=Se(it,Y,1,!1))return Me;it=As(it)}return 0}}else if(Ht&4194304){let it=Y.type;if(Hn&4194304&&(Me=Se(it,K.type,3,!1)))return Me;if(Ci(it)){if(Me=Se(K,tR(it),2,Te))return Me}else{let mt=Rv(it);if(mt){if(Se(K,zl(mt,Y.indexFlags|4),2,Te)===-1)return-1}else if(as(it)){let Er=Wl(it),Ao=_l(it),ls;if(Er&&Y9(it)){let ws=xr(Er,it);ls=st([ws,Er])}else ls=Er||Ao;if(Se(K,ls,2,Te)===-1)return-1}}}else if(Ht&8388608){if(Hn&8388608){if((Me=Se(K.objectType,Y.objectType,3,Te))&&(Me&=Se(K.indexType,Y.indexType,3,Te)),Me)return Me;Te&&(sn=h)}if(a===vs||a===pa){let it=Y.objectType,mt=Y.indexType,Er=na(it)||it,Ao=na(mt)||mt;if(!$k(Er)&&!ph(Ao)){let ls=4|(Er!==it?2:0),ws=km(Er,Ao,ls);if(ws){if(Te&&sn&&_r(yn),Me=Se(K,ws,2,Te,void 0,Oe))return Me;Te&&sn&&h&&(h=or([sn])<=or([h])?sn:h)}}}Te&&(sn=void 0)}else if(as(Y)&&a!==fa){let it=!!Y.declaration.nameType,mt=Ne(Y),Er=Nn(Y);if(!(Er&8)){if(!it&&mt.flags&8388608&&mt.objectType===K&&mt.indexType===bc(Y))return-1;if(!as(K)){let Ao=it?Wl(Y):_l(Y),ls=zl(K,2),ws=Er&4,Th=ws?rR(Ao,ls):void 0;if(ws?!(Th.flags&131072):Se(Ao,ls,3)){let Dy=Ne(Y),Xm=bc(Y),hh=dh(Dy,-98305);if(!it&&hh.flags&8388608&&hh.indexType===Xm){if(Me=Se(K,hh.objectType,2,Te))return Me}else{let dx=it?Th||Ao:Th?bi([Th,Xm]):Xm,Fu=gl(K,dx);if(Me=Se(Fu,Dy,3,Te))return Me}}sn=h,_r(yn)}}}else Ht&16777216?console.debug("todo - targetFlags Conditional"):Y.flags&268435456&&(K.flags&268435456||console.debug("todo - targetFlags StringMapping"));if(Hn&8650752){if(!(Hn&8388608&&Ht&8388608)){let it=Rp(K)||yr;if(Me=Se(it,Y,1,!1,void 0,Oe))return Me;if(Me=Se(Lf(it,K),Y,1,Te&&it!==yr&&!(Ht&Hn&262144),void 0,Oe))return Me;if($v(K)){let mt=Rp(K.indexType);if(mt&&(Me=Se(gl(K.objectType,mt),Y,1,Te)))return Me}}}else if(Hn&4194304){let it=Lk(K.type,K.indexFlags)&&Jn(K.type)&32;if(Me=Se(Qt,Y,1,Te&&!it))return Me;if(it){let mt=K.type,Ao=Wl(mt)||_l(mt);if(Me=Se(Ao,Y,1,Te))return Me}}else if(Hn&134217728&&!(Ht&524288)){if(!(Ht&134217728)){let it=na(K);if(it&&it!==K&&(Me=Se(it,Y,1,Te)))return Me}}else if(Hn&268435456)if(Ht&268435456){if(K.symbol!==Y.symbol)return 0;if(Me=Se(K.type,Y.type,3,Te))return Me}else{let it=na(K);if(it&&(Me=Se(it,Y,1,Te)))return Me}else if(Hn&16777216)console.debug("todo - sourceFlags Conditional");else{if(a!==Uc&&a!==Ts&&q9(Y)&&Kp(K))return-1;if(as(Y))return as(K)&&(Me=wr(K,Y,Te))?Me:0;let it=!!(Hn&402784188);if(a!==fa)K=Na(K),Hn=K.flags;else if(as(K))return 0;if(Jn(K)&4&&Jn(Y)&4&&K.target===Y.target&&!Ci(K)&&!(_E(K)||_E(Y))){if(zC(K))return-1;let mt=Qv(K.target);if(mt===xe)return 1;let Er=Qr(Lo(K),Lo(Y),mt,Oe);if(Er!==void 0)return Er}else{if(Ny(Y)?lc(K,od):ca(Y)&&lc(K,mt=>Ci(mt)&&!mt.target.readonly))return a!==fa?Se(Nu(K,Et)||pt,Nu(Y,Et)||pt,3,Te):0;if(Mp(K)&&Ci(Y)&&!Mp(Y)){let mt=Ip(K);if(mt!==K)return Se(mt,Y,1,Te)}else if((a===Uc||a===Ts)&&Kp(Y)&&Jn(Y)&8192&&!Kp(K))return 0}if(Hn&2621440&&Ht&524288){let mt=MO(K,Y),Er=!mt&&Te&&h===yn.errorInfo&&!it;if(Me=A(K,Y,Er,void 0,!1,Oe),Me&&(Me&=ni(K,Y,0,Er,Oe),Me&&(Me&=ni(K,Y,1,Er,Oe),Me&&(Me&=oe(K,Y,it,Er,Oe)))),Vn&&Me)h=sn||h||yn.errorInfo;else if(Me)return Me;if(mt)return-1}if(Hn&2621440&&Ht&1048576){let mt=dh(Y,36175872);if(mt.flags&1048576){let Er=In(K,mt);if(Er)return Er}}}return 0;function or(it){return it?Yc(it,(mt,Er)=>mt+1+or(Er.next),0):0}function Qr(it,mt,Er,Ao){if(Me=Ct(it,mt,Er,Te,Ao))return Me;if(Tn(Er,ws=>!!(ws&24))){sn=void 0,_r(yn);return}let ls=mt&&$9(mt,Er);if(Vn=!ls,Er!==xe&&!ls){if(Vn&&!(Te&&Tn(Er,ws=>(ws&7)===0)))return 0;sn=h,_r(yn)}}}function $t(K,Y,Te,Oe,yn){if(mn)return 0;let Me=bE(K,Y,Oe,a,!1),sn=a.get(Me);if(sn!==void 0&&!(Te&&sn&2&&!(sn&96))){if(j){let mt=sn&24;mt&8&&Mt(K,Zu),mt&16&&Mt(K,Su)}if(Te&&sn&96){let mt=sn&32?N.Excessive_complexity_comparing_types_0_and_1:N.Excessive_stack_depth_comparing_types_0_and_1;dr(mt,Xn(K),Xn(Y)),wn++}return sn&1?-1:0}if(ft<=0)return mn=!0,0;if(!w)w=[],J=new Set,q=[],Z=[];else{if(J.has(Me))return 3;let mt=Me.startsWith("*")?bE(K,Y,Oe,a,!0):void 0;if(mt&&J.has(mt))return 3;if(Ue===100||Xe===100)return mn=!0,0}let Vn=ie;w[ie]=Me,J.add(Me),ie++;let Hn=Dn;yn&1&&(q[Ue]=K,Ue++,!(Dn&1)&&xy(K,q,Ue)&&(Dn|=1)),yn&2&&(Z[Xe]=Y,Xe++,!(Dn&2)&&xy(Y,Z,Xe)&&(Dn|=2));let Ht,or=0;j&&(Ht=j,j=mt=>(or|=mt?16:8,Ht(mt)));let Qr;return Dn===3?(Pt?.instant(Pt.Phase.CheckTypes,"recursiveTypeRelatedTo_DepthLimit",{sourceId:K.id,sourceIdStack:q.map(mt=>mt.id),targetId:Y.id,targetIdStack:Z.map(mt=>mt.id),depth:Ue,targetDepth:Xe}),Qr=3):(Pt?.push(Pt.Phase.CheckTypes,"structuredTypeRelatedTo",{sourceId:K.id,targetId:Y.id}),Qr=zt(K,Y,Te,Oe),Pt?.pop()),j&&(j=Ht),yn&1&&Ue--,yn&2&&Xe--,Dn=Hn,Qr?(Qr===-1||Ue===0&&Xe===0)&&(Qr===-1||Qr===3?it(!0):it(!1)):(a.set(Me,2|or),ft--,it(!1)),Qr;function it(mt){for(let Er=Vn;Er<ie;Er++)J.delete(w[Er]),mt&&(a.set(w[Er],1|or),ft--);ie=Vn}}}function Z_(n,r){for(;;){let a=If(n)?n.regularType:Mp(n)?Z9(n,r):Jn(n)&4?n.node?vm(n.target,Lo(n)):Jv(n)||n:n.flags&3145728?U9(n,r):n.flags&33554432?r?n.baseType:Xv(n):n.flags&25165824?xl(n,r):n;if(a===n)return a;n=a}}function Z9(n,r){let a=zm(n),s=Ia(a,l=>l.flags&25165824?xl(l,r):l);return a!==s?Yv(n.target,s):n}function zm(n){let r=Lo(n),a=jp(n);return r.length===a?r:r.slice(0,a)}function Yv(n,r){if(!(n.combinedFlags&14))return vm(n,r);if(n.combinedFlags&8){let J=uc(r,(q,Z)=>!!(n.elementFlags[Z]&8&&q.flags&1179648));if(J>=0)return wR(qn(r,(q,Z)=>n.elementFlags[Z]&8?q:yr))?la(r[J],q=>Yv(n,EM(r,J,q))):kn}let a=[],s=[],l=[],d=-1,f=-1,h=-1;for(let J=0;J<r.length;J++){let q=r[J],Z=n.elementFlags[J];if(Z&8)if(q.flags&1)w(q,4,n.labeledElementDeclarations?.[J]);else if(q.flags&58982400||as(q))w(q,8,n.labeledElementDeclarations?.[J]);else if(Ci(q)){let ie=zm(q);if(ie.length+a.length>=1e4)return on(B,of(B)?N.Type_produces_a_tuple_type_that_is_too_large_to_represent:N.Expression_produces_a_tuple_type_that_is_too_large_to_represent),kn;Ln(ie,(Ue,Xe)=>w(Ue,q.target.elementFlags[Xe],q.target.labeledElementDeclarations?.[Xe]))}else w(Mf(q)&&Nu(q,Et)||kn,4,n.labeledElementDeclarations?.[J]);else w(q,Z,n.labeledElementDeclarations?.[J])}for(let J=0;J<d;J++)s[J]&2&&(s[J]=1);f>=0&&f<h&&(a[f]=st(Ia(a.slice(f,h+1),(J,q)=>s[f+q]&8?gl(J,Et):J)),a.splice(f+1,h-f),s.splice(f+1,h-f),l.splice(f+1,h-f));let D=fF(s,n.readonly,l);return D===is?go:s.length?vm(D,a):D;function w(J,q,Z){q&1&&(d=s.length),q&4&&f<0&&(f=s.length),q&6&&(h=s.length),a.push(q&2?Tl(J,!0):J),s.push(q),l.push(Z)}}function eV(n,r,a){if(r.flags&1048576){let s=qn(r.types,l=>xl(gl(n,l),a));return a?bi(s):st(s)}}function nV(n,r){let a=r?"simplifiedForWriting":"simplifiedForReading";if(n[a])return n[a]===ea?n:n[a];n[a]=ea;let s=xl(n.objectType,r),l=xl(n.indexType,r),d=eV(s,l,r);if(d)return n[a]=d;if(!(l.flags&465829888)){let f=Q1(s,l,r);if(f)return n[a]=f}if(Mp(s)&&l.flags&2344){let f=nx(s,l.flags&8?0:s.target.fixedLength,0,r);if(f)return n[a]=f}return as(s)&&Ik(s)!==2?n[a]=la(Bv(s,n.indexType),f=>xl(f,r)):n[a]=n}function oR(n,r){return!!(st([rR(n,r),ct]).flags&131072)}function tV(n,r){let a=n.checkType,s=n.extendsType,l=Km(n),d=Vm(n);if(d.flags&131072&&id(l)===id(a)){if(a.flags&1||Ni(Im(a),Im(s)))return xl(l,r);if(oR(a,s))return ct}else if(l.flags&131072&&id(d)===id(a)){if(!(a.flags&1)&&Ni(Im(a),Im(s)))return ct;if(a.flags&1||oR(a,s))return xl(d,r)}return n}function xl(n,r){return n.flags&8388608?nV(n,r):n.flags&16777216?tV(n,r):n}function Xv(n){return by(n)?n.baseType:bi([n.constraint,n.baseType])}function bE(n,r,a,s,l){if(s===fa&&n.id>r.id){let f=n;n=r,r=f}let d=a?":"+a:"";return`${n.id},${r.id}${d}`}function Ni(n,r){return Yl(n,r,vs)}function ss(n,r,a){return n.flags&r?!0:a&&n.flags&114691?!1:!!(r&2344)&&Ni(n,Xi)||!!(r&2344)&&Ni(n,vr)||!!(r&402653316)&&Ni(n,sr)||!!(r&12288)&&Ni(n,Bc)||!!(r&131072)&&Ni(n,ct)||!!(r&32768)&&Ni(n,Gt)||!!(r&67108864)&&Ni(n,rn)}function aR(n){let r=IO(n),a=r.parent;return a.kind===281&&a.expression===r&&a.parent.kind===269&&a.parent.operatorToken.kind===74&&a.parent.left===a&&!Ku(a.parent)&&ss(ja(a.argumentExpression),2344)}function ja(n){let r=cR(n);if(r)return r;if(n.flags&268435456&&xt){let l=xt[za(n)];if(l)return l}let a=nn,s=Ar(n,64);if(nn!==a){let l=xt||(xt=[]);l[za(n)]=s,rT(n,n.flags|268435456)}return s}function rV(n){return!1}function iV(n){let r=Ar(n.expression),a=jT(r,n.expression),s=sR(r);return s&&JT(s,n,a!==r)}function sR(n){let r=wp(n);if(r&&!r.typeParameters)return Ii(r)}function cR(n){if(lf(n)){let a=mT(n);return wt(a)}let r=vo(n,!0);if(lf(r)){let a=mT(r);return wt(a)}if(r=vo(n),ao(r)&&r.expression.kind!==71&&!rV(r))return pN(r)?iV(r):sR(Ff(r.expression));if(kx(r))return wt(r.type);if(Hy(n))return Ar(n)}function Bp(n){return n.flags===0?n.type:n}function oV(n){return n.flags&131072?ui:aa(n.flags&1048576?st(n.types,2):n)}function aV(n){return n.finalArrayType||(n.finalArrayType=oV(n.elementType))}function ex(n){return Jn(n)&256?aV(n):n}function Xl(n,r){return sa(n,a=>Gl(a,r))}function sV(n){return wc(n.argumentExpression)?n.argumentExpression.text:Cs(n.argumentExpression)?cV(n.argumentExpression):void 0}function cV(n){let r=Gc(n,111551,!0);if(!r||!(r.flags&8))return;let a=r.valueDeclaration;if(a===void 0)return;let s=fy(a);if(s){let l=T_(s);if(l!==void 0)return l}if(Uh(a)&&pE(a,n)){let l=QN(a);if(l){let d=oo(a.parent)?lV(a):ja(l);return d&&T_(d)}}}function lV(n){let r=n.dotDotDotToken?32:0,a=uR(n.parent.parent,r);return a&&uV(n,a,!1)}function uV(n,r,a){if(cs(r))return r;let s=n.parent;z&&n.flags&33554432&&Ng(n)?r=r:z&&s.parent.initializer&&!Gl(dR(s.parent.initializer),65536)&&(r=Xl(r,524288));let l,d=Jp(65|(n.dotDotDotToken?0:128),r,Gt,s),f=s.elements.indexOf(n);if(n.dotDotDotToken){let h=la(r,D=>D.flags&58982400?Ip(D):D);l=lc(h,Ci)?la(h,D=>fh(D,f)):aa(d)}else if(Mf(r)){let h=xc(f),D=32|(a||d1(n)?16:0),w=km(r,h,D,n.name)||kn;l=dV(n,w)}else l=d;return n.initializer?Es(mN(n))?z&&!Gl(YT(n,0),16777216)?eF(l):l:Bk(n,st([eF(l),YT(n,0)],2)):l}function dV(n,r){let a=Zv(n);return a?Rf(a,r):r}function pV(n){let r=n.parent.parent;switch(r.kind){case 266:case 174:return Zv(r);case 290:return Zv(n.parent);case 237:return r.initializer;case 269:return r.right}}function fV(n){let r=n.parent;return n.kind===174||n.kind===175?mV(n.name):""+r.elements.indexOf(n)}function mV(n){let r=$m(n);return r.flags&384?""+r.value:void 0}function Zv(n){let r=pV(n);if(r&&JN(r)&&r.flowNode){let a=fV(n);if(a){let s=da(_b.createStringLiteral(a),n),l=au(r)?r:_b.createParenthesizedExpression(r),d=da(_b.createElementAccessExpression(l,s),n);return Bs(s,d),Bs(d,n),l!==r&&Bs(l,d),d.flowNode=r.flowNode,d}}}function jp(n){return rr(n.target.typeParameters)}function gV(n){let r=lR(n);return r&&aa(r)}function lR(n){return nx(n,n.target.fixedLength)}function nx(n,r,a=0,s=!1,l=!1){let d=jp(n)-a;if(r<d){let f=Lo(n),h=[];for(let D=r;D<d;D++){let w=f[D];h.push(n.target.elementFlags[D]&8?gl(w,Et):w)}return s?bi(h):st(h,l?0:1)}}function fh(n,r,a=0){let s=n.target,l=jp(n)-a;return r>s.fixedLength?gV(n)||dd(xe):dd(Lo(n).slice(r,l),s.elementFlags.slice(r,l),!1,s.labeledElementDeclarations&&s.labeledElementDeclarations.slice(r,l))}function uR(n,r){if(r!==0)return N_(n,!1,r);let a=An(n);return a&&On(a).type||N_(n,!1,r)}function wf(n){if(ii(n))return n.name.text;if(js(n))return sV(n);if(!fo(n)&&Qi(n))return""+n.parent.parameters.indexOf(n)}function CE(n,r,a,s){switch(n.kind){case 89:let l=Is(n);return l!==eo?`${s?za(s):"-1"}|${ra(r)}|${ra(a)}|${ji(l)}`:void 0;case 289:return CE(n.expression,r,a,s);case 146:let d=CE(n.left,r,a,s);return d&&`${d}.${n.right.text}`;case 286:case 281:let f=wf(n);if(f!==void 0){let h=CE(n.expression,r,a,s);return h&&`${h}.${f}`}if(js(n)&&cn(n.argumentExpression)){let h=Is(n.argumentExpression)}break;case 265:case 169:case 270:case 283:return`${za(n)}#${ra(r)}`}}function yV(n){let r=It(n,VF),a=Dt(n),s=_g(a,r.statements.pos);zn.add(lu(a,s.start,s.length,N.The_containing_function_or_module_body_is_too_large_for_control_flow_analysis))}function dR(n){return _t(n).resolvedType||ja(n)}function TV(n){return n.initializer?dR(n.initializer):n.parent.parent.kind===244&&hV(n.parent.parent)||kn}function hV(n){return Jp(13,Ff(n.expression),Gt,n.expression)}function tx(n){return n&&(Qe.noUncheckedIndexedAccess?st([n,li]):n)}function Jp(n,r,a,s){return cs(r)?r:Nm(n,r,a,s,!0)||pt}function pR(n,r){return tx(Jp(65,n,Gt,void 0))||kn}function SV(n){let r=n.parent,a=fR(r.parent),s=pR(a,r.elements.indexOf(n));return _V(s,n.initializer)}function _V(n,r){return r?st([eF(n),ja(r)]):n}function xV(n){return!!(n.flags&465829888)&&no(na(n)||yr,32768)}function eF(n){let r=vu(n,xV)?la(n,a=>a.flags&465829888?Ip(a):a):n;return Xl(r,524288)}function fR(n){return n.kind===237?TV(n):SV(n)}function nF(n){return Jp(13,Ff(n.expression),Gt,n.expression)}function tF(n){let{parent:r}=n;switch(r.kind){case 244:return nF(r)||kn;case 269:return NV(r);case 290:return EV(r,n);case 174:return CV(r);case 175:I.fail("implement")}return kn}function bV(n,r){let a=$m(r),s=af(a);return Ec(n,s)||tx(xp(n,s)?.type)||kn}function CV(n){return bV(tF(n.parent),n.name)}function EV(n,r){return pR(tF(n),n.elements.indexOf(r))}function NV(n){return ja(n.right)}function Hm(n,r){return r?{flags:0,type:n.flags&131072?Tr:n}:n}function qm(n){return n.flags===0}function DV(n){return n.kind===237&&n.initializer&&Mk(n.initializer)||n.kind!==266&&n.parent.kind===269&&Mk(n.parent.right)}function PV(n){let r=$l(256);return r.elementType=n,r}function rF(n){return qa[n.id]||(qa[n.id]=PV(n))}function kV(n,r){if(n===r)return n;if(r.flags&131072)return r;let a=`A${ra(n)},${ra(r)}`;return gE(a)??yE(a,vV(n,r))}function vV(n,r){let a=sa(n,l=>FV(r,l)),s=r.flags&512&&If(r)?la(a,Df):a;return Ni(r,s)?s:n}function FV(n,r){if(!(n.flags&1048576))return Ni(n,r);for(let a of n.types)if(Ni(a,r))return!0;return!1}function Gm(n){switch(n.kind){case 289:return Gm(n.expression);case 269:switch(n.operatorToken.kind){case 74:case 86:return Gm(n.left);case 27:return Gm(n.right)}}return n}function IV(n){let r=!1;for(let a of n)if(!(a.flags&131072)){if(!(Jn(a)&256))return!1;r=!0}return r}function LV(n){return Jn(n)&256?n.elementType:ct}function mR(n){return n===jc?yr:n}function AV(n){return jr||(jr=bu("NonNullable",524288,void 0)||eo),jr!==eo?Hv(jr,[n]):bi([n,go])}function Ey(n,r){let a=mR(Xl(z&&n.flags&2?jc:n,r));if(z)switch(r){case 2097152:case 4194304:return la(a,s=>Gl(s,262144)?AV(s):s);default:console.debug("todo - getAdjustedTypeWithFacts")}return a}function rx(n,r){return!1}function gR(n,r){return no(n,134217804)&&no(r,402655616)?la(n,a=>a.flags&4?dh(r,402653316):a.flags&8?dh(r,264):a.flags&64?dh(r,2112):a):n}function yR(n){let r=Ip(n);return r.flags&2097152?Tn(r.types,un):un(r)}function wV(n){return n.kind===299?ta(ja(n.expression)):ct}function EE(n){let r=_t(n);if(!r.switchTypes){r.switchTypes=[];for(let a of n.caseBlock.clauses)r.switchTypes.push(wV(a))}return r.switchTypes}function OV(n){return n.flags&2097152&&fr(n.types,un)||n}function Of(n,r){return Yl(n,r,Uc)}function TR(n){return!!(n.flags&524288)&&Bi(n,0).length>0}function Up(n,r){return n.flags&1048576?di(n.types,a=>Up(a,r)):r.flags&1048576?Tn(r.types,a=>Up(n,a)):n.flags&2097152?Tn(n.types,a=>Up(a,r)):n.flags&58982400?Up(na(n)||yr,r):Sl(r)?!!(n.flags&67633152):r===E?!!(n.flags&67633152)&&!Sl(n):r===O?!!(n.flags&524288)&&RV(n):iF(n,NE(r))||ca(r)&&!Ny(r)&&Up(n,be)}function Ny(n){return!!(Jn(n)&4)&&n.target===be}function NE(n){return Jn(n)&4?n.target:n}function RV(n){let r=ql(n);return!!(r.callSignatures.length||r.constructSignatures.length||r.members.get("bind")&&Of(n,O))}function iF(n,r){return a(n);function a(s){if(Jn(s)&7){let l=NE(s);return l===r||Tn(Fd(l),a)}else if(s.flags&2097152)return Tn(s.types,a);return!1}}function DE(n){let r=n.types;if(!(r.length<10||Jn(n)&32768||yd(r,a=>!!(a.flags&59506688))<10)){if(n.keyPropertyName===void 0){let a=Ln(r,l=>l.flags&59506688?Ln(ya(l),d=>un(vt(d))?d.name:void 0):void 0),s=a&&MV(r,a);n.keyPropertyName=s?a:"",n.constituentMap=s}return n.keyPropertyName.length?n.keyPropertyName:void 0}}function MV(n,r){let a=new Map,s=0;for(let l of n)if(l.flags&61603840){let d=Ec(l,r);if(d){if(!Ld(d))return;let f=!1;Ym(d,h=>{let D=ra(ta(h)),w=a.get(D);w?w!==yr&&(a.set(D,yr),f=!0):a.set(D,l)}),f||s++}}return s>=10&&s*2>=n.length?a:void 0}function PE(n,r){let a=n.constituentMap?.get(ra(ta(r)));return a!==yr?a:void 0}function ix(n,r){return Yl(n,r,Ts)}function BV(n,r){if(n.kind===1||n.kind===3)return r.arguments[n.parameterIndex];let a=vo(r.expression);return ps(a)?vo(a.expression):void 0}function hR(n){let r=_t(n);if(r.contextFreeType)return r.contextFreeType;VC(n,pt,!1);let a=r.contextFreeType=Ar(n,4);return XT(),a}function Rf(n,r,a=r,s,l=So(n,JN)?.flowNode){let d,f=!1,h=0;if(ir)return kn;if(!l)return r;nn++;let D=lt,w=Bp(Z(l));lt=D;let J=Jn(w)&256&&aR(n)?ui:ex(w);if(J===Ga&&!(J.flags&131072)&&Xl(J,2097152).flags&131072)return r;return J;function q(){return f?d:(f=!0,d=CE(n,r,a,s))}function Z(pe){if(h===2e3)return Pt?.instant(Pt.Phase.CheckTypes,"getTypeAtFlowNode_DepthLimit",{flowId:pe.id}),ir=!0,yV(n),kn;h++;let Je;for(;;){let A=pe.flags;if(A&4096){for(let oe=D;oe<lt;oe++)if(pn[oe]===pe)return h--,X[oe];Je=pe}let R;if(A&16){if(R=Ue(pe),!R){pe=pe.antecedent;continue}}else if(A&512){if(R=Dn(pe),!R){pe=pe.antecedent;continue}}else if(A&96)R=Fn(pe);else if(A&128)R=nt(pe);else if(A&12){if(pe.antecedent.length===1){pe=pe.antecedent[0];continue}R=A&4?ft(pe):ur(pe)}else if(A&256){if(R=Bn(pe),!R){pe=pe.antecedent;continue}}else if(A&1024){let oe=pe.node.target,Ne=oe.antecedent;oe.antecedent=pe.node.antecedents,R=Z(pe.antecedent),oe.antecedent=Ne}else if(A&2){let oe=pe.node;if(oe&&oe!==s&&n.kind!==286&&n.kind!==281){pe=oe.flowNode;continue}R=a}else R=TE(r);return Je&&(pn[lt]=Je,X[lt]=R,lt++),h--,R}}function ie(pe){let Je=pe.node;return vv(Je.kind===237||Je.kind===266?fR(Je):tF(Je),n)}function Ue(pe){let Je=pe.node;if(Ba(n,Je)){if(!v_(pe))return Ga;if(ef(Je)===2){let R=Z(pe.antecedent);return Hm(Ql(Bp(R)),qm(R))}if(r===Io||r===ui||r===ul||r===ic||wm(r)){if(DV(Je))return rF(ct);let R=Om(ie(pe));return Ni(R,r)?R:xi}let A=gI(Je)?Ql(r):r;return A.flags&1048576?kV(A,ie(pe)):A}if(sO(n,Je))return v_(pe)?r:Ga;if(po(Je)&&Je.parent.parent.kind===244&&(Ba(n,Je.parent.parent.expression)||rx(Je.parent.parent.expression,n)))return ex(Bp(Z(pe.antecedent)))}function Xe(pe,Je){let A=vo(Je,!0);if(A.kind===135)return Ga;if(A.kind===269){if(A.operatorToken.kind===58)return Xe(Xe(pe,A.left),A.right);if(A.operatorToken.kind===59)return st([Xe(pe,A.left),Xe(pe,A.right)])}return va(pe,A,!0)}function Dn(pe){let Je=QC(pe.node);if(Je){let A=qs(Je);if(A&&A.kind===3){let R=Z(pe.antecedent),oe=ex(Bp(R)),Ne=A.type?mn(oe,A,pe.node,!0):A.kind===3&&A.parameterIndex>=0&&A.parameterIndex<pe.node.arguments.length?Xe(oe,pe.node.arguments[A.parameterIndex]):oe;return Ne===oe?R:Hm(Ne,qm(R))}if(Ii(Je).flags&131072)return Ga}}function mn(pe,Je,A,R){if(Je.type&&!(cs(pe)&&(Je.type===E||Je.type===O))){let oe=BV(Je,A);if(oe){if(Ba(n,oe))return Jd(pe,Je.type,R,!1);z&&rx(oe,n)&&(R&&!Gl(Je.type,65536)||!R&&lc(Je.type,KR))&&(pe=Ey(pe,2097152));let Ne=zi(oe,pe);if(Ne)return Jr(pe,Ne,en=>Jd(en,Je.type,R,!1))}}return pe}function wn(pe,Je){let A=$_(Ql(hR(Je)));return _y(A,pe.elementType)?pe:rF(st([pe.elementType,A]))}function Bn(pe){if(r===Io||r===ui){let Je=pe.node,A=Je.kind===272?Je.expression.expression:Je.left.expression;if(Ba(n,Gm(A))){let R=Z(pe.antecedent),oe=Bp(R);if(Jn(oe)&256){let Ne=oe;if(console.warn("TODO - getTypeAtFlowArrayMutation"),Je.kind===272)for(let en of Je.arguments)Ne=wn(Ne,en);else{let en=hR(Je.left.argumentExpression);ss(en,2344)&&(Ne=wn(Ne,Je.right))}return Ne===oe?R:Hm(Ne,qm(R))}return R}}}function Fn(pe){let Je=Z(pe.antecedent),A=Bp(Je);if(A.flags&131072)return Je;let R=(pe.flags&32)!==0,oe=ex(A),Ne=va(oe,pe.node,R);return Ne===oe?Je:Hm(Ne,qm(Je))}function nt(pe){let Je=vo(pe.node.switchStatement.expression),A=Z(pe.antecedent),R=Bp(A);if(Ba(n,Je))R=Ho(R,pe.node);else if(Je.kind===136)R=Ss(R,pe.node);else{let oe=zi(Je,R);oe&&(R=dr(R,oe,pe.node))}return Hm(R,qm(A))}function ft(pe){let Je=[],A=!1,R=!1,oe;for(let Ne of pe.antecedent){if(!oe&&Ne.flags&128&&Ne.node.clauseStart===Ne.node.clauseEnd){oe=Ne;continue}let en=Z(Ne),Ge=Bp(en);if(Ge===r&&r===a)return Ge;bl(Je,Ge),_y(Ge,a)||(A=!0),qm(en)&&(R=!0)}if(oe){let Ne=Z(oe),en=Bp(Ne);if(!(en.flags&131072)&&!Yr(Je,en)&&!cw(oe.node.switchStatement)){if(en===r&&r===a)return en;Je.push(en),_y(en,a)||(A=!0),qm(Ne)&&(R=!0)}}return Hm(_r(Je,A?2:1),R)}function ur(pe){let Je=tw(pe),A=Ve[Je]||(Ve[Je]=new Map),R=q();if(!R)return r;let oe=A.get(R);if(oe)return oe;for(let rt=Fe;rt<Mn;rt++)if(tn[rt]===pe&&Ye[rt]===R&&ee[rt].length)return Hm(_r(ee[rt],1),!0);let Ne=[],en=!1,Ge;for(let rt of pe.antecedent){let zt;if(!Ge)zt=Ge=Z(rt);else{tn[Mn]=pe,Ye[Mn]=R,ee[Mn]=Ne,Mn++;let wr=xt;xt=void 0,zt=Z(rt),xt=wr,Mn--;let Zi=A.get(R);if(Zi)return Zi}let Xt=Bp(zt);if(bl(Ne,Xt),_y(Xt,a)||(en=!0),Xt===r)break}let En=_r(Ne,en?2:1);return qm(Ge)?Hm(En,!0):(A.set(R,En),En)}function _r(pe,Je){if(IV(pe))return rF(st(qn(pe,LV)));let A=mR(st(Ia(pe,ex),Je));return A!==r&&A.flags&r.flags&1048576&&md(A.types,r.types)?r:A}function yo(pe){if(oo(n)||dS(n)||mS(n)){if(cn(pe)){let A=Is(pe).valueDeclaration;if(A&&(fo(A)||Qi(A))&&n===A.parent&&!A.initializer&&!A.dotDotDotToken)return A}}else if(ps(pe)){if(Ba(n,pe.expression))return pe}else if(cn(pe)){let Je=Is(pe)}}function zi(pe,Je){if(r.flags&1048576||Je.flags&1048576){let A=yo(pe);if(A){let R=wf(A);if(R){let oe=r.flags&1048576&&_y(Je,r)?r:Je;if(WO(oe,R))return A}}}}function Jr(pe,Je,A){let R=wf(Je);if(R===void 0)return pe;let oe=!1,Ne=z&&(oe||TB(Je))&&no(pe,98304),en=Ec(Ne?Xl(pe,2097152):pe,R);if(!en)return pe;en=Ne&&oe?Fp(en):en;let Ge=A(en);return sa(pe,En=>{let rt=VO(En,R)||yr;return!(rt.flags&131072)&&!(Ge.flags&131072)&&B_(Ge,rt)})}function Gi(pe,Je,A,R,oe){if((A===37||A===38)&&pe.flags&1048576){let Ne=DE(pe);if(Ne&&Ne===wf(Je)){let en=PE(pe,ja(R));if(en)return A===(oe?37:38)?en:un(Ec(en,Ne)||yr)?mC(pe,en):pe}}return Jr(pe,Je,Ne=>Tt(Ne,A,R,oe))}function dr(pe,Je,A){if(A.clauseStart<A.clauseEnd&&pe.flags&1048576&&DE(pe)===wf(Je)){let R=EE(A.switchStatement).slice(A.clauseStart,A.clauseEnd),oe=st(qn(R,Ne=>PE(pe,Ne)||yr));if(oe!==yr)return oe}return Jr(pe,Je,R=>Ho(R,A))}function Ja(pe,Je,A){if(Ba(n,Je))return Ey(pe,A?4194304:8388608);z&&A&&rx(Je,n)&&(pe=Ey(pe,2097152));let R=zi(Je,pe);return R?Jr(pe,R,oe=>Xl(oe,A?4194304:8388608)):pe}function ka(pe,Je,A){let R=bo(pe,Je);return R?!!(R.flags&16777216||jo(R)&48)||A:!!xp(pe,Je)||!A}function We(pe,Je,A){console.debug("todo - narrowTypeByInKeyword");let R=af(Je);return vu(pe,Ne=>ka(Ne,R,!0))?sa(pe,Ne=>ka(Ne,R,A)):pe}function Se(pe,Je,A,R,oe){let Ne=A.text!="0"&&A.text!=="";return oe=oe!==(Ne===!0)!=(R!==38&&R!==36),va(pe,Je,oe)}function tt(pe,Je,A){switch(Je.operatorToken.kind){case 74:case 86:return Ja(va(pe,Je.right,A),Je.left,A);case 35:case 36:case 37:case 38:let R=Je.operatorToken.kind,oe=Gm(Je.left),Ne=Gm(Je.right);if(Ba(n,oe))return Tt(pe,R,Ne,A);if(Ba(n,Ne))return Tt(pe,R,oe,A);z&&(rx(oe,n)?pe=Rt(pe,R,Ne,A):rx(Ne,n)&&(pe=Rt(pe,R,oe,A)));let en=zi(oe,pe);if(en)return Gi(pe,en,R,Ne,A);let Ge=zi(Ne,pe);if(Ge)return Gi(pe,Ge,R,oe,A);if($c(oe))return Zl(pe,R,Ne,A);if($c(Ne))return Zl(pe,R,oe,A);if(Bx(Ne)&&!ps(oe))return Se(pe,oe,Ne,R,A);if(Bx(oe)&&!ps(Ne))return Se(pe,Ne,oe,R,A);break;case 103:let En=Gm(Je.right);if(IE(pe)&&ps(n)&&Ba(n.expression,En)){let rt=ja(Je.left);if(cf(rt)&&wf(n)===af(rt))return Xl(pe,A?524288:65536)}if(Ba(n,En)){let rt=ja(Je.left);if(cf(rt))return We(pe,rt,A)}break;case 27:return va(pe,Je.right,A);case 58:return A?va(va(pe,Je.left,!0),Je.right,!0):st([va(pe,Je.left,!1),va(pe,Je.right,!1)]);case 59:return A?st([va(pe,Je.left,!0),va(pe,Je.right,!0)]):va(va(pe,Je.left,!1),Je.right,!1)}return pe}function Rt(pe,Je,A,R){let oe=Je===35||Je===37,Ne=Je===35||Je===36?98304:32768,en=ja(A);return oe!==R&&lc(en,En=>!!(En.flags&Ne))||oe===R&&lc(en,En=>!(En.flags&(3|Ne)))?Ey(pe,2097152):pe}function Tt(pe,Je,A,R){if(pe.flags&1)return pe;(Je===36||Je===38)&&(R=!R);let oe=ja(A),Ne=Je===35||Je===36;if(oe.flags&98304){if(!z)return pe;let en=Ne?R?262144:2097152:oe.flags&65536?R?131072:1048576:R?65536:524288;return Ey(pe,en)}if(R){if(!Ne&&(pe.flags&2||vu(pe,Sl))){if(oe.flags&469893052||Sl(oe))return oe;if(oe.flags&524288)return rn}let en=sa(pe,Ge=>B_(Ge,oe));return gR(en,oe)}return un(oe)?sa(pe,en=>!(yR(en)&&B_(en,oe))):pe}function ei(pe,Je,A){return A?Hi(pe,Je.text):Ey(pe,dQ.get(Je.text)||32768)}function Dr(pe,{switchStatement:Je,clauseStart:A,clauseEnd:R},oe){return A!==R&&di(EE(Je).slice(A,R),oe)?Xl(pe,2097152):pe}function Ho(pe,{switchStatement:Je,clauseStart:A,clauseEnd:R}){let oe=EE(Je);if(!oe.length)return pe;let Ne=oe.slice(A,R),en=A===R||Yr(Ne,ct);if(pe.flags&2&&!en){let zt;for(let Xt=0;Xt<Ne.length;Xt+=1){let wr=Ne[Xt];if(wr.flags&469893052)zt!==void 0&&zt.push(wr);else if(wr.flags&524288)zt===void 0&&(zt=Ne.slice(0,Xt)),zt.push(rn);else return pe}return st(zt===void 0?Ne:zt)}let Ge=st(Ne),En=Ge.flags&131072?ct:gR(sa(pe,zt=>B_(Ge,zt)),Ge);if(!en)return En;let rt=sa(pe,zt=>!(yR(zt)&&Yr(oe,zt.flags&32768?Gt:ta(OV(zt)))));return En.flags&131072?rt:st([En,rt])}function Hi(pe,Je){switch(Je){case"string":return Ai(pe,sr,1);case"number":return Ai(pe,Et,2);case"bigint":return Ai(pe,vr,4);case"boolean":return Ai(pe,Fi,8);case"object":return pe.flags&1?pe:st([Ai(pe,rn,32),Ai(pe,se,131072)]);case"function":return pe.flags&1?pe:Ai(pe,O,64);case"undefined":return Ai(pe,Gt,65536)}return Ai(pe,rn,128)}function Ai(pe,Je,A){return la(pe,R=>Yl(R,Je,Ts)?Gl(R,A)?R:ct:Of(Je,R)?Je:Gl(R,A)?bi([R,Je]):ct)}function Ss(pe,{switchStatement:Je,clauseStart:A,clauseEnd:R}){let oe=uc(Je.caseBlock.clauses,Ge=>Ge.kind===301),Ne=A===R||oe>=A&&oe<R;for(let Ge=0;Ge<A;Ge++){let En=Je.caseBlock.clauses[Ge];En.kind===299&&(pe=va(pe,En.expression,!1))}if(Ne){for(let Ge=R;Ge<Je.caseBlock.clauses.length;Ge++){let En=Je.caseBlock.clauses[Ge];En.kind===299&&(pe=va(pe,En.expression,!1))}return pe}let en=Je.caseBlock.clauses.slice(A,R);return st(qn(en,Ge=>Ge.kind===299?va(pe,Ge.expression,!0):ct))}function $c(pe){return(ii(pe)&&Mo(pe.name)==="constructor"||js(pe)&&Pi(pe.argumentExpression)&&pe.argumentExpression.text==="constructor")&&Ba(n,pe.expression)}function Zl(pe,Je,A,R){if(R?Je!==35&&Je!==37:Je!==36&&Je!==38)return pe;let oe=ja(A);if(!TR(oe))return pe;let Ne=bo(oe,"prototype");if(!Ne)return pe;let en=vt(Ne),Ge=cs(en)?void 0:en;if(!Ge||Ge===E||Ge===O)return pe;if(cs(pe))return Ge;return sa(pe,rt=>En(rt,Ge));function En(rt,zt){return rt.flags&524288&&Jn(rt)&1||zt.flags&524288&&Jn(zt)&1?rt.symbol===zt.symbol:Of(rt,zt)}}function Jd(pe,Je,A,R){let oe=pe.flags&1048576?`N${ra(pe)},${ra(Je)},${(A?1:0)|(R?2:0)}`:void 0;return gE(oe)??yE(oe,Qc(pe,Je,A,R))}function Qc(pe,Je,A,R){if(!A){if(pe===Je)return ct;if(R)return sa(pe,En=>!Up(En,Je));let Ge=Jd(pe,Je,!0,!1);return sa(pe,En=>!_y(En,Ge))}if(pe.flags&3||pe===Je)return Je;let oe=R?Up:Of,Ne=pe.flags&1048576?DE(pe):void 0,en=la(Je,Ge=>{let En=Ne&&Ec(Ge,Ne),rt=En&&PE(pe,En),zt=la(rt||pe,R?Xt=>Up(Xt,Ge)?Xt:Up(Ge,Xt)?Ge:ct:Xt=>ix(Xt,Ge)?Xt:ix(Ge,Xt)?Ge:Of(Xt,Ge)?Xt:Of(Ge,Xt)?Ge:ct);return zt.flags&131072?la(pe,Xt=>no(Xt,465829888)&&oe(Ge,na(Xt)||yr)?bi([Xt,Ge]):ct):zt});return en.flags&131072?Of(Je,pe)?Je:Ni(pe,Je)?pe:Ni(Je,pe)?Je:bi([pe,Je]):en}function yh(pe,Je,A){if(lO(Je,n)){let R=A||!pN(Je)?QC(Je):void 0,oe=R&&qs(R);if(oe&&oe.kind===1)return mn(pe,oe,Je,A)}if(IE(pe)&&ps(n)&&ii(Je.expression)){let R=Je.expression;if(Ba(n.expression,Gm(R.expression))&&cn(R.name)&&R.name.text==="hasOwnProperty"&&Je.arguments.length===1){let oe=Je.arguments[0];if(hd(oe)&&wf(n)===oe.text)return Xl(pe,A?524288:65536)}}return pe}function va(pe,Je,A){switch(Je.kind){case 89:if(!Ba(n,Je)&&v<5){let oe=Is(Je).valueDeclaration;if(oe&&po(oe)&&!oe.type&&oe.initializer){v++;let Ne=va(pe,oe.initializer,A);return v--,Ne}}case 71:case 286:case 281:return Ja(pe,Je,A);case 272:return yh(pe,Je,A);case 289:return va(pe,Je.expression,A);case 269:return tt(pe,Je,A);case 298:if(Je.operator===55)return va(pe,Je.operand,!A);break}return pe}function JE(pe,Je,A){if(Ba(n,Je))return Ey(pe,A?2097152:262144);let R=zi(Je,pe);return R?Jr(pe,R,oe=>Xl(oe,A?2097152:262144)):pe}}function kE(n){return pc(n)||Mr(n)}function jV(n){return!!It(n.parent,r=>kE(r)&&!!(_t(r).flags&131072))}function SR(n){switch(n.kind){case 89:if(Ku(n)){let r=Is(n);if(oF(r)&&r.lastAssignmentPos!==Number.MAX_VALUE){let a=It(n,kE),s=It(r.valueDeclaration,kE);r.lastAssignmentPos=a===s?JV(n,r.valueDeclaration):Number.MAX_VALUE}}return}wo(n)||_o(n,SR)}function JV(n,r){let a=n.pos;for(;n&&n.pos>r.pos;){switch(n.kind){case 242:case 247:case 253:case 245:case 246:case 243:case 244:case 256:a=n.end}n=n.parent}return a}function _R(n,r){let a=It(n.valueDeclaration,kE);if(!a)return!1;let s=_t(a);return s.flags&131072||(s.flags|=131072,jV(a)||SR(a)),!n.lastAssignmentPos||r&&n.lastAssignmentPos<r.pos}function UV(n){return!0}function oF(n){let r=n.valueDeclaration&&n.valueDeclaration;return!!r&&(Qi(r)||po(r)&&UV(r))}function Wp(n){return qd(n)?An(n):void 0}function WV(n){for(;n.parent.kind===286;)n=n.parent;return n.parent.kind===280}function KV(n){if(tl(n))return Wp(n.parent);for(;eB(n);)n=n.parent;if(WV(n)){let r=0;n.parent.kind===280?r=of(n)?788968:111551:r=1920,r|=2097152;let a=Cs(n)?Gc(n,r,!0):void 0;if(a)return a}if(n.parent.kind===220)return XI(n.parent);if(n.parent.kind===148&&n.parent.parent.kind===224){let r=c6(n.parent);return r&&r.symbol}if(Xp(n)){if(oa(n))return;let r=It(n,VE(uN,J4,U4)),a=r?901119:ao(n.parent)&&n.parent.expression===n?16:TD(n.parent)?16:111551;if(n.kind===89){let s=Gc(n,a,!0,!0,oT(n));if(!s&&r)debugger;return s}else if(n.kind===286||n.kind===146){let s=_t(n);return s.resolvedSymbol||(n.kind===286?(g_(n,0),s.resolvedSymbol||(s.resolvedSymbol=VV(Xa(n.expression,128),$m(n.name)))):PO(n,0),!s.resolvedSymbol&&r&&ol(n)&&I.fail("TODO - Implement me - getSymbolOfNameOrPropertyAccessExpression")),s.resolvedSymbol}debugger}else if(xR(n)){let r=n.parent.kind===166?788968:1920,a=Gc(n,r,!1,!0);return a&&a!==eo?a:PC(n)}if(n.parent.kind===167)return Gc(n,1)}function xR(n){for(;n.parent.kind===146;)n=n.parent;return n.parent.kind===166}function $m(n){if(yc(n))return ct;if(eu(n)||ag(n))return ta(Ar(n));if(ts(n))return ta(hE(n));let r=Fg(n);return r!==void 0?jl(r):Xs(n)?ta(Ar(n)):ct}function VV(n,r){let a=c_(n,r);if(a.length&&n.members){let s=vE(ql(n).members);if(a===Da(n))return s;if(s){let l=On(s),d=_i(a,h=>h.declaration),f=qn(d,za).join(",");if(l.filteredIndexSymbolCache||(l.filteredIndexSymbolCache=new Map),l.filteredIndexSymbolCache.has(f))return l.filteredIndexSymbolCache.get(f);{let h=to(131072,"__index");return h.declarations=_i(a,D=>D.declaration),h.parent=n.aliasSymbol?n.aliasSymbol:n.symbol?n.symbol:qc(h.declarations[0].parent),l.filteredIndexSymbolCache.set(f,h),h}}}}function vE(n){return n.get("__index")}function zV(n,r){if(kC(n.parent)){let a=HV(n.parent);if(a)return Lr(a,n,r,void 0,!0)}}function HV(n){if(It(n,l=>sS(l)||l.flags&16777216?xd(l):"quit"))return;let a=Ux(n);a&&(mS(a)||zu(a))&&gr(a.parent.parent)&&ds(a.parent.parent)===6&&An(a.parent.parent.left)&&console.debug("todo - getAssignmentDeclarationLocation");let s=zN(n);if(s&&ki(s)){let l=An(s);return l&&l.valueDeclaration}}function Gc(n,r,a,s,l){if(oa(n))return;let d=1920|(mr(n)?r&111551:0),f;if(n.kind===89){let h=rO(im(n)),D=mr(n)&&!wi(n)?zV(n,r):void 0;if(f=at(Lr(l||n,n,r,a||D?void 0:h,!0,!1)),!f)return at(D)}else if(n.kind===146||n.kind===286){let h=n.kind===146?n.left:n.expression,D=n.kind===146?n.right:n.name,w=Gc(h,d,a,!1,l);if(!w||oa(D))return;if(w===eo)return w;if(w.valueDeclaration&&mr(w.valueDeclaration)&&po(w.valueDeclaration)&&w.valueDeclaration.initializer,f=at(OT(Bm(w),D.text,r)),!f&&w.flags&2097152&&(f=at(OT(Bm(hl(w)),D.text,r))),!f){if(!a){let J=aF(w),q=bs(D),Z=ol(n)&&qV(n);if(E&&r&788968&&Z&&GV(Z)){on(Z,N._0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0,ju(Z));return}debugger}return}}else I.assertNever(n,"Unknown entity name kind.");return f.flags&r||s?f:hl(f)}function aF(n,r){return n.parent?aF(n.parent,r)+"."+Li(n):Li(n,r,void 0,36)}function qV(n){for(;ol(n.parent);)n=n.parent;return n}function GV(n){let r=im(n),a=Lr(r,r,111551,void 0,!0);if(a){for(;ol(r.parent);){let s=vt(a);if(a=bo(s,r.parent.right.text),!a)return;r=r.parent}return a}}function bR(n,r){for(let a of n)switch(a.kind){case 176:case 236:case 240:case 243:case 244:NR(a,r);break;case 270:case 169:case 283:case 154:a.body&&NR(a,r);break;case 271:case 156:case 241:case 151:case 158:$V(a,r);break;default:I.assertNever(a,"Node should not have been registered for unused identifiers check")}}function $V(n,r){let a=An(n).declarations;if(!a||Ro(a)!==n)return;let s=Vh(n),l=new Set;for(let d of s){if(!CR(d))continue;let f=Mo(d.name),{parent:h}=d;if(h.kind!==259&&h.typeParameters.every(CR)){if(gx(l,h)){let D=nc(h),w=Ys(h)?rD(h):iD(D,h.typeParameters),q=h.typeParameters.length===1?[N._0_is_declared_but_its_value_is_never_read,f]:[N.All_type_parameters_are_unused];r(d,1,lu(D,w.pos,w.end-w.pos,...q))}}else r(d,1,yi(d,N._0_is_declared_but_its_value_is_never_read,f))}}function CR(n){return!(at(n.symbol).isReferenced&262144)&&!ox(n.name)}function bte(n,r){for(let a of n.members)switch(a.kind){case 154:case 152:let s=An(a);!s.isReferenced&&(Qd(a,2)||Fc(a)&&yc(a.name))&&!(a.flags&33554432)&&r(a,0,yi(a.name,N._0_is_declared_but_its_value_is_never_read,Li(s)));break;case 150:break;default:I.fail("Unexpected class member")}}function ox(n){return cn(n)&&Mo(n).charCodeAt(0)===95}function QV(n){return(fo(n)||po(n)&&Hf(n.parent.parent))&&ox(n.name)}function ER(n,r,a,s){let l=String(s(r)),d=n.get(l);d?d[1].push(a):n.set(l,[r,[a]])}function YV(n){return So(n,Qi)}function XV(n,r,a){let s=ti(n)||n,l=N._0_is_declared_but_its_value_is_never_read;a(n,0,yi(s,l,r))}function NR(n,r){let a=new Map,s=new Map;n.locals.forEach(l=>{if(!(l.flags&262144?!(l.flags&3&&!(l.isReferenced&3)):l.isReferenced||l.exportSymbol)&&l.declarations){for(let d of l.declarations)if(!QV(d))if(po(d)){let f=K_(d)&1,h=ti(d);(!h||!ox(h))&&ER(s,d.parent,d,za)}else{let f=l.valueDeclaration&&YV(l.valueDeclaration),h=l.valueDeclaration&&ti(l.valueDeclaration);f&&h?ox(h)||(fo(d)&&yT(d.parent)?ER(a,d.parent,d,za):r(f,1,yi(h,N._0_is_declared_but_its_value_is_never_read,us(l)))):XV(d,us(l),r)}}}),s.forEach(([l,d])=>{if(l.declarations?.length===d?.length)r(l,0,d.length===1?yi(Eo(d).name,N._0_is_declared_but_its_value_is_never_read,sF(Eo(d).name)):yi(l.parent.kind===242?l.parent:l,N.All_variables_are_unused));else for(let f of d)r(f,0,yi(f,N._0_is_declared_but_its_value_is_never_read,sF(f.name)))})}function sF(n){switch(n.kind){case 89:return Mo(n);case 265:return sF(Ua(Eo(n.elements),fo).name);default:return I.assertNever(n)}}function ax(n,r,a){let s=_t(n),l=s.resolvedSignature;if(l&&l!==Qa&&!r)return l;let d=ge;l||(ge=ve.length),s.resolvedSignature=Qa;let f=Gz(n,r,a||0);return ge=d,f!==Qa&&(s.resolvedSignature!==Qa&&(f=s.resolvedSignature),s.resolvedSignature=Fe===Mn?f:l),f}function ZV(n,r){let a=new Set,s=[];ZR(r,()=>FE(n,s,void 0,0));for(let l of s)a.add(l);s.length=0,bF(r,()=>FE(n,s,void 0,0));for(let l of s)a.add(l);return Yo(a)}function FE(n,r,a,s){let l=io(n,qf);hn=a;let d=l?ax(l,r,s):void 0;return hn=void 0,d}function cs(n){return n&&(n.flags&1)!==0}function sx(n,r){return cF(n,r)&r}function Kp(n){return n.flags&524288?wv(ql(n)):n.flags&67108864?!0:n.flags&1048576?Tn(n.types,Kp):n.flags&2097152?di(n.types,Kp):!1}function cF(n,r){n.flags&467927040&&(n=na(n)||yr);let a=n.flags;if(a&268435460)return z?16317953:16776705;if(a&134217856){let s=a&128&&n.value==="";return z?s?12123649:7929345:s?12582401:16776705}if(a&4096)return z?16317953:16776705;if(a&40)return z?16317698:16776450;if(a&256){let s=n.value===0;return z?s?12123394:7929090:s?12582146:16776450}if(a&2048){let s=n.value===0;return z?s?12122884:7928580:s?12581636:16775940}return a&16?z?16316168:16774920:a&524288?r&(z?83427327:83886079)?Jn(n)&16&&Kp(n)?z?83427327:83886079:z?7888800:16736160:0:a&16384?9830144:a&32768?26607360:a&65536?42917664:a&67108864?z?7888800:16736160:a&131072?0:a&1048576?Yc(n.types,(s,l)=>s|cF(l,r),0):a&2097152?ez(n,r):83886079}function ez(n,r){let a=no(n,402784188),s=0,l=134217727;for(let d of n.types)if(!(a&&d.flags&524288)){let f=cF(d,r);s|=f,l&=f}return s&8256|l&134209471}function DR(n,r,a){if(z&&n.flags&2){if(Cs(r)){let l=ju(r);if(l.length<100)return on(r,N._0_is_of_type_unknown,l),kn}return on(r,N.Object_is_of_type_unknown),kn}let s=sx(n,50331648);if(s&50331648){a(r,s);let l=n;return l.flags&229376?kn:l}return n}function nz(n,r){on(n,r&16777216?r&33554432?N.Cannot_invoke_an_object_which_is_possibly_null_or_undefined:N.Cannot_invoke_an_object_which_is_possibly_undefined:N.Cannot_invoke_an_object_which_is_possibly_null)}function tz(n){return n.expression.kind===89&&n.expression.text==="$"}function PR(n,r){if(r&2){let a=dy(n);a.flags|=4}}function rz(n){return!!(n.typeParameters&&TR(Ii(n)))}function iz(n,r,a,s){return cs(n)||cs(r)&&!!(n.flags&262144)||!a&&!s&&!(r.flags&1048576)&&!(Vc(r).flags&131072)&&Ni(n,O)}function oz(n,r,a){if(tz(n)&&ae===1&&It(n,Pl))return $r;let s,l=Ar(n.expression,void 0,void 0,16);if(pN(n)?console.debug("todo - call chain"):s=0,l=DR(l,n.expression,nz),l===Tr)return hu;let d=Na(l);if(zo(d))return jE(n);let f=Bi(d,0),h=Bi(d,1).length;if(iz(l,d,f.length,h))return!zo(l)&&n.typeArguments&&on(n,N.Untyped_function_calls_may_not_accept_type_arguments),ZC(n);if(!f.length){if(h)on(n,N.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new,Xn(l));else{let D;if(n.arguments.length===1){let w=Dt(n).text;Wa(w.charCodeAt(Oi(w,n.expression.end,!0)-1))&&(D=yi(n.expression,N.Are_you_missing_a_semicolon))}Hz(n.expression,d,0,D)}return jE(n)}return a&8&&!n.typeArguments&&f.some(rz)?(PR(n,a),Qa):f.some(D=>mr(D.declaration)&&!!YF(D.declaration))?(on(n,N.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new,Xn(l)),jE(n)):YR(n,f,r,a,s)}function az(n,r,a){let s=I_(n),l=Bi(s,0);return YR(n,l,r,a,0)}function kR(n=0){return n&848330095}function Xn(n,r,a=1064960,s=vg("")){let d=ue.typeToTypeNode(n,r,kR(a)|70221824|0);if(d===void 0)return console.warn("expected a type node but didn't get one"),"<never>";let f=n!==ms?ym():oj(),h=r&&Dt(r);f.writeNode(4,d,h,s);let D=s.getText(),w=Ox*2;return w&&D&&D.length>=w?D.substr(0,w-3)+"...":D}function sz(n,r,a){let s,l,d=0,f,h=-1,D;I.assert(!r.length);for(let w of n){let J=w.declaration&&An(w.declaration),q=w.declaration&&w.declaration.parent;!l||J===l?s&&q===s?f=f+1:(s=q,f=d):(f=d=r.length,s=q),l=J,X4(w)||pQ(w)?(h++,D=h,d++):D=f,r.splice(D,0,w)}}function mh(n){let r=Dt(n),a=_t(r);a.flags&1?I.assert(!a.deferredNodes,"A type-checked file should have no deferred nodes."):(a.deferredNodes||(a.deferredNodes=new Set),a.deferredNodes.add(n))}function cz(n,r,a,s,l){return I.assert(r.length>0),mh(n),s||r.length===1||r.some(d=>!!d.typeParameters)?uz(n,r,a,l):gz(r)}function lz(n,r){let a=-1,s=-1;for(let l=0;l<n.length;l++){let d=n[l],f=cc(d);if(Du(d)||f>=r)return l;f>s&&(s=f,a=l)}return a}function uz(n,r,a,s){let l=lz(r,hn===void 0?a.length:hn),d=r[l],{typeParameters:f}=d;if(!f)return d;let h=Sw(n)?n.typeArguments:void 0,D=h?BE(d,dz(h,f,mr(n))):pz(n,f,d,a,s);return r[l]=D,D}function dz(n,r,a){let s=n.map(Zn);for(;s.length>r.length;)s.pop();for(;s.length<r.length;)s.push(kf(r[s.length])||As(r[s.length])||Jk(a));return s}function pz(n,r,a,s,l){let d=ux(r,a,mr(n)?2:0),f=dF(n,a,s,l|4|8,d);return BE(a,f)}function vR(n,r){return FR(n,st(r,2))}function FR(n,r){return hf(Eo(n),r)}function fz(n){let r=n.parameters.length;return Rc(n)?r-1:r}function mz(n){if(Rc(n)){let a=vt(n.parameters[n.parameters.length-1]);return a&&Nu(a,Et)}}function gz(n){let r=_i(n,D=>D.thisParameter),a;r.length&&(a=vR(r,r.map(E_)));let{min:s,max:l}=SB(n,fz),d=[];for(let D=0;D<l;D++){let w=_i(n,J=>Rc(J)?D<J.parameters.length-1?J.parameters[D]:Ro(J.parameters):D<J.parameters.length?J.parameters[D]:void 0);I.assert(w.length!==0),d.push(vR(w,_i(n,J=>Am(J,D))))}let f=_i(n,D=>Rc(D)?Ro(D.parameters):void 0),h=1024;if(f.length!==0){let D=aa(st(_i(n,mz),2));d.push(FR(f,D)),h|=1}return n.some(X4)&&(h|=2),cd(n[0].declaration,void 0,a,d,bi(n.map(Ii)),void 0,s,h)}function yz(n,r,a){let s=a.flags;return s&2097152?IR(n,r,a.types):(Sl(a)?r&16777216||(r|=16777216,n.set(a.id.toString(),a)):(s&3?(a===Ko&&(r|=8388608),zo(a)&&(r|=1073741824)):(z||!(s&98304))&&(a===li&&(r|=262144,a=Gt),n.has(a.id.toString())||(a.flags&101280&&r&101280&&(r|=67108864),n.set(a.id.toString(),a))),r|=s&473694143),r)}function IR(n,r,a){for(let s of a)r=yz(n,r,ta(s));return r}function Tz(n,r){let a=n.length;for(;a>0;){a--;let s=n[a];(s.flags&4&&r&402653312||s.flags&8&&r&256||s.flags&64&&r&2048||s.flags&4096&&r&8192||s.flags&16384&&r&32768||Sl(s)&&r&470302652)&&Kf(n,a)}}function hz(n,r){for(let a of n)if(!Hc(a.types,r)){if(r===li)return Hc(a.types,Gt);if(r===Gt)return Hc(a.types,li);let s=r.flags&128?sr:r.flags&288?Et:r.flags&2048?vr:void 0;if(!s||!Hc(a.types,s))return!1}return!0}function Sz(n){let r,a=uc(n,f=>!!(Jn(f)&32768));if(a<0)return!1;let s=a+1;for(;s<n.length;){let f=n[s];Jn(f)&32768?((r||(r=[n[a]])).push(f),Kf(n,s)):s++}if(!r)return!1;let l=[],d=[];for(let f of r)for(let h of f.types)if(H_(l,h)&&hz(r,h)){if(h===Gt&&d.length&&d[0]===li)continue;if(h===li&&d.length&&d[0]===Gt){d[0]=li;continue}H_(d,h)}return n[a]=BT(d,32768),!0}function IE(n){return n===li||!!(n.flags&1048576)&&n.types[0]===li}function LR(n,r){for(let a=0;a<n.length;a++)n[a]=sa(n[a],s=>!(s.flags&r))}function AR(n){return Yc(n,(r,a)=>a.flags&1048576?r*a.types.length:a.flags&131072?0:r,1)}function wR(n){let r=AR(n);return r>=1e5?(Pt?.instant(Pt.Phase.CheckTypes,"checkCrossProductUnion_DepthLimit",{typeIds:n.map(a=>a.id),size:r}),on(B,N.Expression_produces_a_union_type_that_is_too_complex_to_represent),!1):!0}function _z(n,r){let a=AR(n),s=[];for(let l=0;l<a;l++){let d=n.slice(),f=l;for(let D=n.length-1;D>=0;D--)if(n[D].flags&1048576){let w=n[D].types,J=w.length;d[D]=w[f%J],f=Math.floor(f/J)}let h=bi(d,r);h.flags&131072||s.push(h)}return s}function OR(n){return!(n.flags&3145728)||n.aliasSymbol?1:n.flags&1048576&&n.origin?OR(n.origin):lF(n.types)}function lF(n){return Yc(n,(r,a)=>r+OR(a),0)}function xz(n,r,a,s){let l=bt(2097152);return l.objectFlags=r|kt(n,98304),l.types=n,l.aliasSymbol=a,l.aliasTypeArguments=s,l}function RR(n){return!!(n.flags&402653184)}function bi(n,r=0,a,s){let l=new Map,d=IR(l,0,n),f=Yo(l.values()),h=0;if(d&131072)return Yr(f,Tr)?Tr:ct;if(z&&d&98304&&d&84410368||d&67108864&&d&402783164||d&402653316&&d&67238712||d&2344&&d&469889684||d&64&&d&469889684||d&49152&&d&469842876)return ct;if(d&1)return d&8388608?Ko:d&1073741824?kn:pt;if(!z&&d&98304)return d&16777216?ct:d&32768?Gt:se;if((d&4&&d&402653312||d&8&&d&256||d&64&&d&2048||d&4096&&d&8192||d&16384&&d&32768||d&16777216&&d&470302652)&&(r&1||Tz(f,d)),d&262144&&(f[f.indexOf(Gt)]=li),f.length===0)return yr;if(f.length===1)return f[0];if(f.length===2&&!(r&2)){let J=f[0].flags&8650752?0:1,q=f[J],Z=f[1-J];if(q.flags&8650752&&(Z.flags&469893052&&!RR(Z)||d&16777216)){let ie=na(q);if(ie&&lc(ie,Ue=>!!(Ue.flags&469893052)||Sl(Ue))){if(ix(ie,Z))return q;if(!(ie.flags&1048576&&vu(ie,Ue=>ix(Ue,Z)))&&!ix(Z,ie))return ct;h=67108864}}}let D=Ls(f)+(r&2?"*":Wm(a,s)),w=Wo.get(D);if(!w){if(d&1048576)if(Sz(f))w=bi(f,r,a,s);else if(di(f,J=>!!(J.flags&1048576&&J.types[0].flags&32768))){let J=Tn(f,IE)?li:Gt;LR(f,32768),w=st([bi(f,r),J],1,a,s)}else if(di(f,J=>!!(J.flags&1048576&&(J.types[0].flags&65536||J.types[1].flags&65536))))LR(f,65536),w=st([bi(f,r),se],1,a,s);else if(f.length>=4){let J=Math.floor(f.length/2);w=bi([bi(f.slice(0,J),r),bi(f.slice(J),r)],r,a,s)}else{if(!wR(f))return kn;let J=_z(f,r),q=Tn(J,Z=>!!(Z.flags&2097152))&&lF(J)>lF(f)?x(2097152,f):void 0;w=st(J,1,a,s,q)}else w=xz(f,h,a,s);Wo.set(D,w)}return w}function LE(n){if(Rc(n)){let r=vt(n.parameters[n.parameters.length-1]);if(!Ci(r))return cs(r)?xi:r;if(r.target.combinedFlags&12)return fh(r,r.target.fixedLength)}}function gh(n){let r=LE(n);return r&&!ca(r)&&!cs(r)?r:void 0}function uF(n){return n=vo(n),n}function Mf(n){return ca(n)||!(n.flags&98304)&&Ni(n,Nr)}function MR(n){return n.flags&1048576?la(n,MR):n.flags&1||cx(na(n)||n)?n:Ci(n)?dd(zm(n),n.target.elementFlags,!1,n.target.labeledElementDeclarations):dd([n],[8])}function BR(n){return n&&n.mapper}function jR(n){return{typeParameter:n.typeParameter,candidates:n.candidates&&n.candidates.slice(),contraCandidates:n.contraCandidates&&n.contraCandidates.slice(),inferredType:n.inferredType,priority:n.priority,topLevel:n.topLevel,isFixed:n.isFixed,impliedArity:n.impliedArity}}function bz(n,r=0){return n&&TF(qn(n.inferences,jR),n.signature,n.flags|r,n.compareTypes)}function Qm(n){return!!(n.candidates||n.contraCandidates)}function Cz(n){let r=Rr(n.inferences,Qm);return r.length?TF(qn(r,jR),n.signature,n.flags,n.compareTypes):void 0}function dF(n,r,a,s,l){let d=di(r.typeParameters,J=>!!kf(J)),f=ml(n,d?8:0);if(f){let J=Ii(r);if(Vl(J)){let q=dy(n);if(!(!d&&ml(n,8)!==f)){let Xe=BR(bz(q,1)),Dn=Mt(f,Xe),mn=wp(Dn),wn=mn&&mn.typeParameters?W_(_F(mn,mn.typeParameters)):Dn;vp(l.inferences,wn,J,128)}let ie=ux(r.typeParameters,r,l.flags),Ue=Mt(f,q&&q.returnMapper);vp(ie.inferences,Ue,J),l.returnMapper=Tn(ie.inferences,Qm)?BR(Cz(ie)):void 0}}let h=gh(r),D=h?Math.min(cc(r)-1,a.length):a.length;if(h&&h.flags&262144){let J=fr(l.inferences,q=>q.typeParameter===h);J&&(J.impliedArity=uc(a,AE,D)<0?a.length-D:void 0)}let w=Kc(r);w&&Vl(w)&&console.debug("todo - inferTypeArguments thisType");for(let J=0;J<D;J++){let q=a[J];if(q.kind!==297){let Z=Pu(r,J);if(Vl(Z)){let ie=D_(q,Z,l,s);vp(l.inferences,ie,Z)}}}if(h&&Vl(h)){let J=pF(a,D,a.length,h,l,s);vp(l.inferences,J,h)}return H1(l)}function pF(n,r,a,s,l,d){if(r>=a-1){let J=n[a-1];if(AE(J)){let q=D_(J.expression,s,l,d);return Mf(q)?MR(q):aa(Jp(33,q,Gt,J.kind===294?J.expression:J),!1)}else return ja(J)}let h=[],D=[],w=[];for(let J=r;J<a;J++){let q=n[J];if(AE(q)){let Z=Ar(q.expression);Mf(Z)?(h.push(Z),D.push(8)):(h.push(Jp(33,Z,Gt,q.kind===294?q.expression:q)),D.push(4))}else{let Z=gl(s,xc(J-r),256),ie=D_(q,Z,l,d),Ue=no(Z,406978492);h.push(Ue?ta(ie):Om(ie)),D.push(1)}q.kind===275&&q.tupleNameSource?w.push(q.tupleNameSource):w.push(void 0)}return dd(h,D,!1,w)}function dd(n,r,a=!1,s=[]){let l=fF(r||qn(n,d=>1),a,s);return l===is?go:n.length?Nk(l,n):l}function fF(n,r,a){if(n.length===1&&n[0]&4)return r?be:W;let s=qn(n,d=>d&1?"#":d&2?"?":d&4?".":"*").join()+(r?"R":"")+(Tn(a,d=>!!d)?","+qn(a,d=>d?za(d):"_").join(","):""),l=xo.get(s);return l||xo.set(s,l=Ez(n,r,a)),l}function Ez(n,r,a){let s=n.length,l=yd(n,q=>!!(q&9)),d,f=[],h=0;if(s){d=new Array(s);for(let q=0;q<s;q++){let Z=d[q]=zc(),ie=n[q];if(h|=ie,!(h&12)){let Ue=to(4|(ie&2?16777216:0),""+q,r?8:0);Ue.links.tupleLabelDeclaration=a?.[q],Ue.links.type=Z,f.push(Ue)}}}let D=f.length,w=to(4,"length",r?8:0);if(h&12)w.links.type=Et;else{let q=[];for(let Z=l;Z<=s;Z++)q.push(xc(Z));w.links.type=st(q)}f.push(w);let J=$l(12);return J.typeParameters=d,J.outerTypeParameters=void 0,J.localTypeParameters=d,J.instantiations=new Map,J.instantiations.set(Ls(J.typeParameters),J),J.target=J,J.resolvedTypeArguments=J.typeParameters,J.thisType=zc(),J.thisType.isThisType=!0,J.thisType.constraint=J,J.declaredProperties=f,J.declaredCallSignatures=xe,J.declaredConstructSignatures=xe,J.declaredIndexInfos=xe,J.elementFlags=n,J.minLength=l,J.fixedLength=D,J.hasRestElement=!!(h&12),J.combinedFlags=h,J.readonly=r,J.labeledElementDeclarations=a,J}function Nz(n){return cx(n)||!(n.flags&98305)&&Ni(n,xi)}function cx(n){return ca(n)&&!Ny(n)||Ci(n)&&!n.target.readonly}function Ci(n){return!!(Jn(n)&4&&n.target.objectFlags&8)}function Dz(n,r,a,s){let l=_b.createSyntheticExpression(r,a,s);return da(l,n),Bs(l,n),l}function lx(n,r,a,s,l,d,f,h){let D={errors:void 0,skipLogging:!0},w=P7(a),J=N.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1,q=gh(a),Z=q?Math.min(cc(a)-1,r.length):r.length;for(let Ue=0;Ue<Z;Ue++){let Xe=r[Ue],Dn=Pu(a,Ue),mn=D_(Xe,Dn,void 0,l),wn=l&4?$_(mn):mn,Bn=h?Mt(wn,h.nonFixingMapper):wn,Fn=uF(Xe);if(!Lw(Bn,Dn,s,d?Fn:void 0,Fn,J,f,D))return I.assert(!d||!!D.errors,"parameter should have errors when reporting errors"),ie(Xe,Bn,Dn),D.errors||xe}if(q){let Ue=pF(r,Z,r.length,q,void 0,l),Xe=r.length-Z,Dn=d?Xe===0?n:Xe===1?uF(r[Z]):La(Dz(n,Ue),r[Z].pos,r[r.length-1].end):void 0;if(!Af(Ue,q,s,Dn,J,void 0,D))return I.assert(!d||!!D.errors,"rest parameter should have errors when reporting errors"),ie(Dn,Ue,q),D.errors||xe}return;function ie(Ue,Xe,Dn){Ue&&d&&D.errors&&D.errors.length}}function Pz(n){return Ou(n)?ii(n.expression)?n.expression.name:n.expression:n}function AE(n){return!!n&&n.kind===294}function mF(n){return uc(n,AE)}function wE(n,r,...a){if(ao(n)){let{sourceFile:s,start:l,length:d}=XR(n);return"message"in r?lu(s,l,d,r,...a):yI(s,r)}else return"message"in r?yi(n,r,...a):Pg(Dt(n),n,r)}function JR(n,r,a,s){let l=mF(a);if(l>-1)return yi(a[l],N.A_spread_argument_must_either_have_a_tuple_type_or_be_passed_to_a_rest_parameter);let d=Number.POSITIVE_INFINITY,f=Number.NEGATIVE_INFINITY,h=Number.NEGATIVE_INFINITY,D=Number.POSITIVE_INFINITY,w;for(let ie of r){let Ue=Hl(ie),Xe=cc(ie);Ue<d&&(d=Ue,w=ie),f=Math.max(f,Xe),Ue<a.length&&Ue>h&&(h=Ue),a.length<Xe&&Xe<D&&(D=Xe)}let J=Tn(r,Du),q=J?d:d<f?d+"-"+f:d,Z=J?N.Expected_at_least_0_arguments_but_got_1:N.Expected_0_arguments_but_got_1;if(d<a.length&&a.length<f){if(s){let ie=ci(void 0,N.No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments,a.length,h,D);return ie=ci(ie,s),wE(n,ie)}return wE(n,N.No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments,a.length,h,D)}else if(a.length<d){let ie;if(s){let Xe=ci(void 0,Z,q,a.length);Xe=ci(Xe,s),ie=wE(n,Xe)}else ie=wE(n,Z,q,a.length);let Ue=w?.declaration?.parameters[w.thisParameter?a.length+1:a.length];if(Ue&&!(Ue.flags&4)){let Xe=oo(Ue.name)?[N.An_argument_matching_this_binding_pattern_was_not_provided]:Dx(Ue)?[N.Arguments_for_the_rest_parameter_0_were_not_provided,Mo(im(Ue.name))]:[N.An_argument_for_0_was_not_provided,Ue.name?Mo(im(Ue.name)):a.length],Dn=yi(Ue,...Xe);return Bo(ie,Dn)}return ie}else if(a.length){let ie=we.createNodeArray(a.slice(f)),Ue=nc(Eo(ie)),Xe=Eo(ie).pos,Dn=Ro(ie).end;if(Dn===Xe&&Dn++,La(ie,Xe,Dn),s){let mn=ci(void 0,Z,q,a.length);return mn=ci(mn,s),Zx(Ue,ie,mn)}return eb(Ue,ie,Z,q,a.length)}}function UR(n,r,a,s){let l=mr(n.declaration),d=n.typeParameters,f=Nf(qn(r,wt),d,ad(d),l),h;for(let D=0;D<r.length;D++){I.assert(d[D]!==void 0,"Should not call checkTypeArguments with too many type arguments");let w=As(d[D]);if(w){let J=a&&s?()=>ci(void 0,N.Type_0_does_not_satisfy_the_constraint_1):void 0,q=s||N.Type_0_does_not_satisfy_the_constraint_1;h||(h=os(d,f));let Z=f[D];if(!Ap(Z,Lf(Mt(w,h),Z),a?r[D]:void 0,q,J))return}}return f}function WR(n,r){let a=rr(n.typeParameters),s=ad(n.typeParameters);return!Tn(r)||r.length>=s&&r.length<=a}function kz(n){return!!(n.flags&49155)}function OE(n,r,a,s=!1){let l,d=!1,f=cc(a),h=Hl(a);if(n.arguments){l=s?r.length+1:r.length,d=!n.arguments.isComplete;let D=mF(r);if(D>=0)return D>=Hl(a)&&(Du(a)||D<cc(a))}else return I.assert(n.kind===276),Hl(a)===0;if(!Du(a)&&l>f)return!1;if(d||l>=h)return!0;for(let D=l;D<h;D++){let w=Pu(a,D);if(sa(w,mr(n)&&!z?kz:M1).flags&131072)return!1}return!0}function vz(n){return n.typeParameters?n.implementationSignatureCache||(n.implementationSignatureCache=Fz(n)):n}function Fz(n){return n.typeParameters?yy(n,os([],[])):n}function gF(n){return{typeParameter:n,candidates:void 0,contraCandidates:void 0,inferredType:void 0,priority:void 0,topLevel:!0,isFixed:!1,impliedArity:void 0}}function ux(n,r,a,s){return TF(n.map(gF),r,a,s||pl)}function yF(n){return!!(Jn(n)&16512)}function Iz(n){if(n.length>1){let r=Rr(n,yF);if(r.length){let a=st(r,2);return Kr(Rr(n,s=>!yF(s)),[a])}}return n}function TF(n,r,a,s){let l={inferences:n,signature:r,flags:a,compareTypes:s,mapper:Zu,nonFixingMapper:Zu};return l.mapper=Uz(l),l.nonFixingMapper=jz(l),l}function Lz(n){let r;for(let a of n)if(!(a.flags&131072)){let s=Ql(a);if(r??(r=s),s===a||s!==r)return!1}return!0}function KR(n){return Gl(n,50331648)}function VR(n,r){let a=r&~n.flags&98304;return a===0?n:a===32768?st([n,Gt]):a===65536?st([n,se]):st([n,Gt,se])}function zR(n){return Yc(n,(r,a)=>r|(a.flags&1048576?zR(a.types):a.flags),0)}function HR(n){return Yc(n.symbol?.declarations,(r,a)=>r|Sd(a),0)&49152}function Az(n){if(n.length===1)return n[0];let r=z?Ia(n,s=>sa(s,l=>!(l.flags&98304))):n,a=Lz(r)?st(r):Yc(r,(s,l)=>Of(s,l)?l:s);return r===n?a:VR(a,zR(n)&98304)}function qR(n){return GR(n,On(n).typeParameters)}function GR(n,r=xe){let a=On(n);if(!a.variances){Pt?.push(Pt.Phase.CheckTypes,"getVariancesWorker",{arity:r.length,id:ra(Ma(n))});let s=Ae,l=ge;Ae||(Ae=!0,ge=ve.length),a.variances=xe;let d=[];for(let f of r){let h=HR(f),D=h&32768?h&16384?0:1:h&16384?2:void 0;if(D===void 0){let w=!1,J=!1,q=j;j=Ue=>Ue?J=!0:w=!0;let Z=Q_(n,f,_u),ie=Q_(n,f,xu);D=(Ni(ie,Z)?1:0)|(Ni(Z,ie)?2:0),D===3&&Ni(Q_(n,f,fp),Z)&&(D=4),j=q,(w||J)&&(w&&(D|=8),J&&(D|=16))}d.push(D)}s||(Ae=!1,ge=l),a.variances=d,Pt?.pop({variances:d.map(I.formatVariance)})}return a.variances}function wz(n){let r=As(n);return!!r&&no(r.flags&16777216?jO(r):r,406978492)}function Oz(n,r){let a=qs(n);return a?!!a.type&&eh(a.type,r):eh(Ii(n),r)}function Rz(n,r){let a=Iz(n.candidates),s=wz(n.typeParameter),l=!s&&n.topLevel&&(n.isFixed||!Oz(r,n.typeParameter)),d=s?Ia(a,ta):l?Ia(a,Om):a,f=n.priority&416?st(d,2):Az(d);return Nc(f)}function Mz(n){return n.priority&416?bi(n.contraCandidates):Bz(n.contraCandidates)}function Bz(n){return Yc(n,(r,a)=>Of(a,r)?a:r)}function As(n){return SE(n)?rh(n):void 0}function hF(n,r){let a=n.inferences[r];if(!a.inferredType){let s,l;if(n.signature){let f=a.candidates?Rz(a,n.signature):void 0,h=a.contraCandidates?Mz(a):void 0;if(f||h){let D=f&&(!h||!(f.flags&131073)&&Tn(a.contraCandidates,w=>Ni(f,w))&&di(n.inferences,w=>w!==a&&As(w.typeParameter)!==a.typeParameter||di(w.candidates,J=>Ni(J,f))));s=D?f:h,l=D?h:f}else if(n.flags&1)s=Tr;else{let D=kf(a.typeParameter);D&&(s=Mt(D,b7(x7(n,r),n.nonFixingMapper)))}}else s=$R(a);a.inferredType=s||Jk(!!(n.flags&2));let d=As(a.typeParameter);if(d){let f=Mt(d,n.nonFixingMapper);(!s||!n.compareTypes(s,Lf(f,s)))&&(a.inferredType=l&&n.compareTypes(l,Lf(f,l))?l:f)}}return a.inferredType}function $R(n){return n.candidates?st(n.candidates,2):n.contraCandidates?bi(n.contraCandidates):void 0}function SF(n,r){return I.attachDebugPrototypeIfDebug({kind:2,sources:n,targets:r})}function jz(n){return SF(qn(n.inferences,r=>r.typeParameter),qn(n.inferences,(r,a)=>()=>hF(n,a)))}function Jz(n){if(n.intraExpressionInferenceSites){for(let{node:r,type:a}of n.intraExpressionInferenceSites)ml(r,2)&&I.fail("implement me");n.intraExpressionInferenceSites=void 0}}function RE(n){for(let r of n)r.isFixed||(r.inferredType=void 0)}function Uz(n){return SF(qn(n.inferences,r=>r.typeParameter),qn(n.inferences,(r,a)=>()=>(r.isFixed||(Jz(n),RE(n.inferences),r.isFixed=!0),hF(n,a))))}function ME(n,r,a,s){let l=_F(n,Nf(r,n.typeParameters,ad(n.typeParameters),a));if(s){let d=QR(Ii(l));if(d){let f=C_(d);f.typeParameters=s;let h=C_(l);return h.resolvedReturnType=W_(f),h}}return l}function _F(n,r){let a=n.instantiations||(n.instantiations=new Map),s=Ls(r),l=a.get(s);return l||a.set(s,l=BE(n,r)),l}function BE(n,r){return yy(n,Wz(n,r),!0)}function Wz(n,r){return os(Ia(n.typeParameters,a=>a.mapper?Mt(a,a.mapper):a),r)}function QR(n){return ih(n,0,!1)||ih(n,1,!1)}function YR(n,r,a,s,l,d){let w=!$&&!a,J;l6(n)||(J=n.typeArguments,n.expression.kind!==71&&Ln(J,yt));let q=a||[];sz(r,q,l),I.assert(q.length,"Revert #54442 and add a testcase with whatever triggered this");let Z=GC(n),ie=q.length===1&&!q[0].typeParameters,Ue=!ie&&Tn(Z,Cc)?4:0,Xe,Dn,mn,wn,Bn=!!(s&16)&&n.kind===272&&n.arguments.hasTrailingComma;if(q.length>1&&(wn=nt(q,Uc,ie,Bn)),wn||(wn=nt(q,vs,ie,Bn)),wn)return wn;if(wn=cz(n,q,Z,!!a,s),_t(n).resolvedSignature=wn,w)if(Xe)if(Xe.length===1||Xe.length>3){let ft=Xe[Xe.length-1],ur;Xe.length>3&&(ur=ci(ur,N.The_last_overload_gave_the_following_error),ur=ci(ur,N.No_overload_matches_this_call)),d&&(ur=ci(ur,d));let _r=lx(n,Z,ft,vs,0,!0,()=>ur,void 0);if(_r)for(let yo of _r)ft.declaration&&Xe.length>3&&Bo(yo,yi(ft.declaration,N.The_last_overload_is_declared_here)),Fn(ft,yo),zn.add(yo);else I.fail("No error for last overload signature")}else{let ft=[],ur=0,_r=Number.MAX_VALUE,yo=0,zi=0;for(let ka of Xe){let Se=lx(n,Z,ka,vs,0,!0,()=>ci(void 0,N.Overload_0_of_1_2_gave_the_following_error,zi+1,q.length,oh(ka)),void 0);Se?(Se.length<=_r&&(_r=Se.length,yo=zi),ur=Math.max(ur,Se.length),ft.push(Se)):I.fail("No error for 3 or fewer overload signatures"),zi++}let Jr=ur>1?ft[yo]:Au(ft);I.assert(Jr.length>0,"No errors reported for 3 or fewer overload signatures");let Gi=ci(qn(Jr,_B),N.No_overload_matches_this_call);d&&(Gi=ci(Gi,d));let dr=[...Co(Jr,ka=>ka.relatedInformation)],Ja;if(di(Jr,ka=>ka.start===Jr[0].start&&ka.length===Jr[0].length&&ka.file===Jr[0].file)){let{file:ka,start:We,length:Se}=Jr[0];Ja={file:ka,start:We,length:Se,code:Gi.code,category:Gi.category,messageText:Gi,relatedInformation:dr}}else Ja=Pg(Dt(n),Pz(n),Gi,dr);Fn(Xe[0],Ja),zn.add(Ja)}else if(Dn)zn.add(JR(n,[Dn],Z,d));else if(mn)UR(mn,n.typeArguments,!0,d);else{let ft=Rr(r,ur=>WR(ur,J));ft.length===0?zn.add(Kz(n,r,J,d)):zn.add(JR(n,ft,Z,d))}return wn;function Fn(ft,ur){let _r=Xe,yo=Dn,zi=mn,Jr=ft.declaration?.symbol?.declarations||xe,dr=Jr.length>1?fr(Jr,Ja=>pc(Ja)&&Qp(Ja.body)):void 0;if(dr){let Ja=Mi(dr),ka=!Ja.typeParameters;nt([Ja],vs,ka)&&Bo(ur,yi(dr,N.The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_are_not_externally_visible))}Xe=_r,Dn=yo,mn=zi}function nt(ft,ur,_r,yo=!1){if(Xe=void 0,Dn=void 0,mn=void 0,_r){let zi=ft[0];if(Tn(J)||!OE(n,Z,zi,yo))return;if(lx(n,Z,zi,ur,0,!1,void 0,void 0)){Xe=[zi];return}return zi}for(let zi=0;zi<ft.length;zi++){let Jr=ft[zi];if(!WR(Jr,J)||!OE(n,Z,Jr,yo))continue;let Gi,dr;if(Jr.typeParameters){let ka=Jr.typeParameters[0].symbol.declarations?.[0]?.parent||(Jr.declaration&&Bg(Jr.declaration)?Jr.declaration.parent:Jr.declaration);ka&&It(n,Se=>Se===ka)&&(Jr=vz(Jr));let We;if(Tn(J)){if(We=UR(Jr,J,!1),!We){mn=Jr;continue}}else dr=ux(Jr.typeParameters,Jr,mr(n)?2:0),We=yl(dF(n,Jr,Z,Ue|8,dr),dr.nonFixingMapper),Ue|=dr.flags&4?8:0;if(Gi=ME(Jr,We,mr(Jr.declaration),dr&&dr.inferredTypeParameters),gh(Jr)&&!OE(n,Z,Gi,yo)){Dn=Gi;continue}}else Gi=Jr;if(lx(n,Z,Gi,ur,Ue,!1,void 0,dr)){(Xe||(Xe=[])).push(Gi);continue}if(Ue){if(Ue=0,dr){let Ja=yl(dF(n,Jr,Z,Ue,dr),dr.mapper);if(Gi=ME(Jr,Ja,mr(Jr.declaration),dr.inferredTypeParameters),gh(Jr)&&!OE(n,Z,Gi,yo)){Dn=Gi;continue}}if(lx(n,Z,Gi,ur,Ue,!1,void 0,dr)){(Xe||(Xe=[])).push(Gi);continue}}return ft[zi]=Gi,Gi}}}function Kz(n,r,a,s){let l=a.length;if(r.length===1){let h=r[0],D=ad(h.typeParameters),w=rr(h.typeParameters);if(s){let J=ci(void 0,N.Expected_0_type_arguments_but_got_1,D<w?D+"-"+w:D,l);return J=ci(J,s),Zx(Dt(n),a,J)}return eb(Dt(n),a,N.Expected_0_type_arguments_but_got_1,D<w?D+"-"+w:D,l)}let d=-1/0,f=1/0;for(let h of r){let D=ad(h.typeParameters),w=rr(h.typeParameters);D>l?f=Math.min(f,D):w<l&&(d=Math.max(d,w))}if(d!==-1/0&&f!==1/0){if(s){let h=ci(void 0,N.No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments,l,d,f);return h=ci(h,s),Zx(Dt(n),a,h)}return eb(Dt(n),a,N.No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments,l,d,f)}if(s){let h=ci(void 0,N.Expected_0_type_arguments_but_got_1,d===-1/0?f:d,l);return h=ci(h,s),Zx(Dt(n),a,h)}return eb(Dt(n),a,N.Expected_0_type_arguments_but_got_1,d===-1/0?f:d,l)}function Vz(n,r,a){let s,l=a===0;if(r.flags&1048576){let f=r.types,h=!1;for(let D of f)if(Bi(D,a).length!==0){if(h=!0,s)break}else if(s||(s=ci(s,l?N.Type_0_has_no_call_signatures:N.Type_0_has_no_construct_signatures,Xn(D)),s=ci(s,l?N.Not_all_constituents_of_type_0_are_callable:N.Not_all_constituents_of_type_0_are_constructable,Xn(r))),h)break;h||(s=ci(void 0,l?N.No_constituent_of_type_0_is_callable:N.No_constituent_of_type_0_is_constructable,Xn(r))),s||(s=ci(s,l?N.Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_other:N.Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_with_each_other,Xn(r)))}else s=ci(s,l?N.Type_0_has_no_call_signatures:N.Type_0_has_no_construct_signatures,Xn(r));let d=l?N.This_expression_is_not_callable:N.This_expression_is_not_constructable;return{messageChain:ci(s,d),relatedMessage:void 0}}function XR(n){let r=nc(n),{start:a,length:s}=ON(r,ii(n.expression)?n.expression.name:n.expression);return{start:a,length:s,sourceFile:r}}function zz(n,r,a){n.symbol}function Hz(n,r,a,s){let{messageChain:l,relatedMessage:d}=Vz(n,r,a),f=Pg(nc(n),n,l);if(d&&Bo(f,yi(n,d)),ao(n.parent)){let{start:h,length:D}=XR(n.parent);f.start=h,f.length=D}zn.add(f),zz(r,a,s?Bo(f,s):f)}function xF(n,r){if(n.flags&3670016){let a=ql(n);return r===0?a.callSignatures:a.constructSignatures}return xe}function Ym(n,r){return n.flags&1048576?Ln(n.types,r):r(n)}function vu(n,r){return n.flags&1048576?Tn(n.types,r):r(n)}function lc(n,r){return n.flags&1048576?di(n.types,r):r(n)}function Cte(n,r){return n.flags&3145728?di(n.types,r):r(n)}function qz(n){return!n||!W.symbol||!be.symbol?!1:!!Pf(n,W.symbol)||!!Pf(n,be.symbol)}function Bi(n,r){let a=xF(Tf(n),r);if(r===0&&!rr(a)&&n.flags&1048576){if(n.arrayFallbackSignatures)return n.arrayFallbackSignatures;let s;lc(n,l=>!!l.symbol?.parent&&qz(l.symbol.parent)&&(s?s===l.symbol.name:(s=l.symbol.name,!0)))&&I.fail("TODO - implement me - getSignaturesOfType"),n.arrayFallbackSignatures=a}return a||xe}function jE(n){return ZC(n),oc}function Gz(n,r,a){switch(n.kind){case 272:return oz(n,r,a);case 276:return $z(n,r,a);case 283:return az(n,r,a);case 269:I.fail("implement me")}I.assertNever(n,"Branch in 'resolveSignature' should be unreachable.")}function $z(n,r,a){let s=n.expression&&Xs(n.expression)?Ff(n.expression):pt;if(s===Tr)return hu;if(s=Na(s),zo(s))return jE(n);if(cs(s))return n.typeArguments&&on(n,N.Untyped_function_calls_may_not_accept_type_arguments),ZC(n);console.debug("TODO - implement me - resolveNewExpression")}function Qz(n){if(n&&n.kind===175)return Gc(n.name,2208703)}function ZR(n,r){let a=It(n,qf);if(a){let l=n;do _t(l).skipDirectInference=!0,l=l.parent;while(l&&l!==a)}$=!0;let s=bF(n,r);if($=!1,a){let l=n;do _t(l).skipDirectInference=void 0,l=l.parent;while(l&&l!==a)}return s}function bF(n,r){if(n=It(n,GF),n){let a=[],s=[];for(;n;){let d=_t(n);if(a.push([d,d.resolvedSignature]),d.resolvedSignature=void 0,Fx(n)){let f=On(An(n)),h=f.type;s.push([f,h]),f.type=void 0}n=It(n.parent,GF)}let l=r();for(let[d,f]of a)d.resolvedSignature=f;for(let[d,f]of s)d.type=f;return l}return r()}}var RL=class{};function za(e){return e.id||(e.id=G4,G4++),e.id}function ij(){this.flags=0}function ji(e){return e.id||(e.id=q4,q4++),e.id}function Y4(e){if(e.parent)switch(e.parent.kind){default:return tl(e)}}var UD=class e{constructor(t,i,o){this.moduleResolverHost=void 0;this.inner=void 0;this.disableTrackSymbol=!1;for(;i instanceof e;)i=i.inner;this.inner=i,this.moduleResolverHost=o,this.context=t,this.canTrackSymbol=!!this.inner?.trackSymbol}trackSymbol(t,i,o){var c;if(this.inner?.trackSymbol&&!this.disableTrackSymbol){if(this.inner.trackSymbol(t,i,o))return this.onDiagnosticReported(),!0;t.flags&262144||((c=this.context).trackedSymbols??(c.trackedSymbols=[])).push([t,i,o])}return!1}reportInaccessibleThisError(){this.inner?.reportInaccessibleThisError&&(this.onDiagnosticReported(),this.inner.reportInaccessibleThisError())}reportPrivateInBaseOfClassExpression(t){this.inner?.reportPrivateInBaseOfClassExpression&&(this.onDiagnosticReported(),this.inner.reportPrivateInBaseOfClassExpression(t))}reportInaccessibleUniqueSymbolError(){this.inner?.reportInaccessibleUniqueSymbolError&&(this.onDiagnosticReported(),this.inner.reportInaccessibleUniqueSymbolError())}reportCyclicStructureError(){this.inner?.reportCyclicStructureError&&(this.onDiagnosticReported(),this.inner.reportCyclicStructureError())}reportLikelyUnsafeImportRequiredError(t){this.inner?.reportLikelyUnsafeImportRequiredError&&(this.onDiagnosticReported(),this.inner.reportLikelyUnsafeImportRequiredError(t))}reportTruncationError(){this.inner?.reportTruncationError&&(this.onDiagnosticReported(),this.inner.reportTruncationError())}reportNonlocalAugmentation(t,i,o){this.inner?.reportNonlocalAugmentation&&(this.onDiagnosticReported(),this.inner.reportNonlocalAugmentation(t,i,o))}reportNonSerializableProperty(t){this.inner?.reportNonSerializableProperty&&(this.onDiagnosticReported(),this.inner.reportNonSerializableProperty(t))}onDiagnosticReported(){this.context.reportedDiagnostic=!0}reportInferenceFallback(t){this.inner?.reportInferenceFallback&&this.inner.reportInferenceFallback(t)}};function uQ(e){return{getCommonSourceDirectory:e.getCommonSourceDirectory?()=>e.getCommonSourceDirectory():()=>"",getCurrentDirectory:()=>e.getCurrentDirectory(),useCaseSensitiveFileNames:gd(e,e.useCaseSensitiveFileNames),fileExists:t=>e.fileExists(t),getFileIncludeReasons:()=>e.getFileIncludeReasons(),readFile:e.readFile?t=>e.readFile(t):void 0}}function Rc(e){return!!(e.flags&1)}var dQ=new Map(Object.entries({string:256,number:512,bigint:1024,boolean:2048,symbol:4096,undefined:524288,object:8192,function:16384}));function X4(e){return!!(e.flags&2)}function pQ(e){return!!(e.flags&16)}var Jo="/",fQ="\\",lj="://",mQ=/\\/g;function gQ(e){return e===47||e===92}function nl(e){return zD(e)>0}function jL(e){let t=zD(e);return t>0&&t===e.length}function Sb(e){return zD(e)!==0}function hg(e){return/^\.\.?($|[\\/])/.test(e)}function wg(e){return Ps(e).includes(".")}function mc(e,t){return I.assertIsDefined(e),e.length>t.length&&Pc(e,t)}function hD(e,t){for(let i of t)if(mc(e,i))return!0;return!1}function JL(e){return e.length>0&&gQ(e.charCodeAt(e.length-1))}function uj(e){return e>=97&&e<=122||e>=65&&e<=90}function yQ(e,t){let i=e.charCodeAt(t);if(i===58)return t+1;if(i===37&&e.charCodeAt(t+1)===51){let o=e.charCodeAt(t+2);if(o===97||o===65)return t+3}return-1}function zD(e){if(!e)return 0;let t=e.charCodeAt(0);if(t===47||t===92){if(e.charCodeAt(1)!==t)return 1;let o=e.indexOf(t===47?Jo:fQ,2);return o<0?e.length:o+1}if(uj(t)&&e.charCodeAt(1)===58){let o=e.charCodeAt(2);if(o===47||o===92)return 3;if(e.length===2)return 2}let i=e.indexOf(lj);if(i!==-1){let o=i+lj.length,c=e.indexOf(Jo,o);if(c!==-1){let u=e.slice(0,i),p=e.slice(o,c);if(u==="file"&&(p===""||p==="localhost")&&uj(e.charCodeAt(c+1))){let m=yQ(e,c+2);if(m!==-1){if(e.charCodeAt(m)===47)return~(m+1);if(m===e.length)return~m}}return~(c+1)}return~e.length}return 0}function Ll(e){let t=zD(e);return t<0?~t:t}function vi(e){e=gc(e);let t=Ll(e);return t===e.length?e:(e=sm(e),e.slice(0,Math.max(t,e.lastIndexOf(Jo))))}function Ps(e,t,i){if(e=gc(e),Ll(e)===e.length)return"";e=sm(e);let c=e.slice(Math.max(Ll(e),e.lastIndexOf(Jo)+1)),u=t!==void 0&&i!==void 0?PD(c,t,i):void 0;return u?c.slice(0,c.length-u.length):c}function dj(e,t,i){if(To(t,".")||(t="."+t),e.length>=t.length&&e.charCodeAt(e.length-t.length)===46){let o=e.slice(e.length-t.length);if(i(o,t))return o}}function TQ(e,t,i){if(typeof t=="string")return dj(e,t,i)||"";for(let o of t){let c=dj(e,o,i);if(c)return c}return""}function PD(e,t,i){if(t)return TQ(sm(e),t,i?Ud:ng);let o=Ps(e),c=o.lastIndexOf(".");return c>=0?o.substring(c):""}function hQ(e,t){let i=e.substring(0,t),o=e.substring(t).split(Jo);return o.length&&!ko(o)&&o.pop(),[i,...o]}function op(e,t=""){return e=Zr(t,e),hQ(e,Ll(e))}function kS(e,t){return e.length===0?"":(e[0]&&Pb(e[0]))+e.slice(1,t).join(Jo)}function gc(e){return e.includes("\\")?e.replace(mQ,Jo):e}function Jg(e){if(!Tn(e))return[];let t=[e[0]];for(let i=1;i<e.length;i++){let o=e[i];if(o&&o!=="."){if(o===".."){if(t.length>1){if(t[t.length-1]!==".."){t.pop();continue}}else if(t[0])continue}t.push(o)}}return t}function Zr(e,...t){e&&(e=gc(e));for(let i of t)i&&(i=gc(i),!e||Ll(i)!==0?e=i:e=Pb(e)+i);return e}function rp(e,...t){return si(Tn(t)?Zr(e,...t):gc(e))}function bS(e,t){return Jg(op(e,t))}function mo(e,t){return kS(bS(e,t))}function si(e){if(e=gc(e),!VD.test(e))return e;let t=e.replace(/\/\.\//g,"/").replace(/^\.\//,"");if(t!==e&&(e=t,!VD.test(e)))return e;let i=kS(Jg(op(e)));return i&&JL(e)?Pb(i):i}function SQ(e){return e.length===0?"":e.slice(1).join(Jo)}function UL(e,t){return SQ(bS(e,t))}function al(e,t,i){let o=nl(e)?si(e):mo(e,t);return i(o)}function sm(e){return JL(e)?e.substr(0,e.length-1):e}function Pb(e){return JL(e)?e:e+Jo}var VD=/(?:\/\/)|(?:^|\/)\.\.?(?:$|\/)/;function _Q(e,t,i){if(e===t)return 0;if(e===void 0)return-1;if(t===void 0)return 1;let o=e.substring(0,Ll(e)),c=t.substring(0,Ll(t)),u=NF(o,c);if(u!==0)return u;let p=e.substring(o.length),m=t.substring(c.length);if(!VD.test(p)&&!VD.test(m))return i(p,m);let g=Jg(op(e)),S=Jg(op(t)),T=Math.min(g.length,S.length);for(let _=1;_<T;_++){let P=i(g[_],S[_]);if(P!==0)return P}return ro(g.length,S.length)}function CS(e,t,i,o){return typeof i=="string"?(e=Zr(i,e),t=Zr(i,t)):typeof i=="boolean"&&(o=i),_Q(e,t,xh(o))}function cm(e,t,i,o){if(typeof i=="string"?(e=Zr(i,e),t=Zr(i,t)):typeof i=="boolean"&&(o=i),e===void 0||t===void 0)return!1;if(e===t)return!0;let c=Jg(op(e)),u=Jg(op(t));if(u.length<c.length)return!1;let p=o?Ud:ng;for(let m=0;m<c.length;m++)if(!(m===0?Ud:p)(c[m],u[m]))return!1;return!0}function pj(e,t,i,o){let c=Jg(op(e)),u=Jg(op(t)),p;for(p=0;p<c.length&&p<u.length;p++){let S=o(c[p]),T=o(u[p]);if(!(p===0?Ud:i)(S,T))break}if(p===0)return u;let m=u.slice(p),g=[];for(;p<c.length;p++)g.push("..");return["",...g,...m]}function vS(e,t,i){I.assert(Ll(e)>0==Ll(t)>0,"Paths must either both be absolute or both be relative");let u=pj(e,t,(typeof i=="boolean"?i:!1)?Ud:ng,typeof i=="function"?i:Di);return kS(u)}function HD(e,t,i){return nl(e)?qD(t,e,t,i,!1):e}function qD(e,t,i,o,c){let u=pj(rp(i,e),rp(i,t),ng,o),p=u[0];if(c&&nl(p)){let m=p.charAt(0)===Jo?"file://":"file:///";u[0]=m+p}return kS(u)}function vb(e,t){for(;;){let i=t(e);if(i!==void 0)return i;let o=vi(e);if(o===e)return;e=o}}function tc(e,t,i,o){if(e===void 0)return e;let c=t(e),u;if(c!==void 0)return mi(c)?u=(o||bQ)(c):u=c,I.assertNode(u,i),u}function mm(e,t,i,o,c){if(e===void 0)return e;let u=e.length;(o===void 0||o<0)&&(o=0),(c===void 0||c>u-o)&&(c=u-o);let p,m=-1,g=-1;o>0||c<u?p=e.hasTrailingComma&&o+c===u:(m=e.pos,g=e.end,p=e.hasTrailingComma);let S=xQ(e,t,i,o,c);if(S!==e){let T=we.createNodeArray(S,p);return La(T,m,g),T}return e}function xQ(e,t,i,o,c){let u,p=e.length;(o>0||c<p)&&(u=[]);for(let m=0;m<c;m++){let g=e[m+o],S=g!==void 0?t?t(g):g:void 0;if((u!==void 0||S===void 0||S!==g)&&(u===void 0&&(u=e.slice(0,m),I.assertEachNode(u,i)),S))if(mi(S))for(let T of S)I.assertNode(T,i),u.push(T);else I.assertNode(S,i),u.push(S)}return u||(I.assertEachNode(e,i),e)}function bQ(e){return I.assert(e.length<=1,"Too many nodes written to output."),Iy(e)}function gm(e,t,i=FS,o=mm,c,u=tc){if(e===void 0)return;let p=void 0;return p===void 0?e:p(e,t,i,o,u,c)}function GD(e,t){let i=ho(e)?e:e.fileName;return t?t(i):i}var $D={close:$i};function mj(e,t){let i=sp(":"+e.line,"\x1B[90m");return Sb(e.fileName)&&Sb(t)?vS(t,e.fileName,!1)+i:e.fileName+i}function gj(e){return Rr(e,i=>i.category===1).map(i=>{if(i.file!==void 0)return`${i.file.fileName}`}).map(i=>{if(i===void 0)return;let o=fr(e,c=>c.file!==void 0&&c.file.fileName===i);if(o!==void 0){let{line:c}=Go(o.file,o.start);return{fileName:i,line:c+1}}})}function yj(e,t,i,o){if(e===0)return"";let c=t.filter(T=>T!==void 0),u=c.map(T=>`${T.fileName}:${T.line}`).filter((T,_,P)=>P.indexOf(T)===_),p=c[0]&&mj(c[0],o.getCurrentDirectory()),m;e===1?m=t[0]!==void 0?[N.Found_1_error_in_0,p]:[N.Found_1_error]:m=u.length===0?[N.Found_0_errors,e]:u.length===1?[N.Found_0_errors_in_the_same_file_starting_at_Colon_1,e,p]:[N.Found_0_errors_in_1_files,e,u.length];let g=cu(...m),S=u.length>1?CQ(c,o):"";return`${i}${hT(g.messageText,i)}${i}${i}${S}`}function CQ(e,t){let i=e.filter((_,P,v)=>P===v.findIndex(B=>B?.fileName===_?.fileName));if(i.length===0)return"";let o=_=>Math.log(_)*Math.LOG10E+1,c=i.map(_=>[_,yd(e,P=>P.fileName===_.fileName)]),u=c.reduce((_,P)=>Math.max(_,P[1]||0),0),p=N.Errors_Files.message,m=p.split(" ")[0].length,g=Math.max(m,o(u)),S=Math.max(o(u)-m,0),T="";return T+=" ".repeat(S)+p+`
29
+ `,c.forEach(_=>{let[P,v]=_,B=Math.log(v)*Math.LOG10E+1|0,y=B<g?" ".repeat(g-B):"",$=mj(P,t.getCurrentDirectory());T+=`${y}${v} ${$}
30
+ `}),T}function Tj(e,t){let i;if(e.path!==e.resolvedPath&&(i??(i=[])).push(ci(void 0,N.File_is_output_of_project_reference_source_0,GD(e.originalFileName,t))),RN(e))switch(e.impliedNodeFormat){}return i}function WL(e,t){let i=e.getCompilerOptions().configFile;if(!i?.configFileSpecs?.validatedFilesSpec)return;let o=e.getCanonicalFileName(t),c=vi(mo(i.fileName,e.getCurrentDirectory())),u=uc(i.configFileSpecs.validatedFilesSpec,p=>e.getCanonicalFileName(mo(p,c))===o);return u!==-1?i.configFileSpecs.validatedFilesSpecBeforeSubstitution[u]:void 0}function KL(e,t){let i=e.getCompilerOptions().configFile;if(!i?.configFileSpecs?.validatedIncludeSpecs)return;if(i.configFileSpecs.isDefaultIncludeSpec)return!0;let o=mc(t,".json"),c=vi(mo(i.fileName,e.getCurrentDirectory())),u=e.useCaseSensitiveFileNames(),p=uc(i?.configFileSpecs?.validatedIncludeSpecs,m=>{if(o&&!Pc(m,".json"))return!1;let g=e6(m,c,"files");return!!g&&xg(`(${g})$`,u).test(t)});return p!==-1?i.configFileSpecs.validatedIncludeSpecsBeforeSubstitution[p]:void 0}function hj(e,t,i){let o=e.getCompilerOptions();if(ap(t)){let c=ST(e,t),u=Ug(c)?c.file.text.substring(c.pos,c.end):`"${c.text}"`,p;switch(I.assert(Ug(c)||t.kind===4,"Only synthetic references are imports"),t.kind){case 4:Ug(c)?p=N.Imported_via_0_from_file_1:p=N.Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions;break;case 5:I.assert(!c.packageId),p=N.Referenced_via_0_from_file_1;break;case 6:case 8:I.assert(!c.packageId),p=N.Library_referenced_via_0_from_file_1;break;default:I.assertNever(t)}return ci(void 0,p,u,GD(c.file,i),c.packageId&&kg(c.packageId))}switch(t.kind){case 0:if(!o.configFile?.configFileSpecs)return ci(void 0,N.Root_file_specified_for_compilation);let c=mo(e.getRootFileNames()[t.index],e.getCurrentDirectory());if(WL(e,c))return ci(void 0,N.Part_of_files_list_in_lpcconfig_json);let p=KL(e,c);return ho(p)?ci(void 0,N.Matched_by_include_pattern_0_in_1,p,GD(o.configFile,i)):ci(void 0,p?N.Matched_by_default_include_pattern_Asterisk_Asterisk_Slash_Asterisk:N.Root_file_specified_for_compilation);case 2:case 3:let m=t.kind===3,g=I.checkDefined(e.getResolvedProjectReferences()?.[t.index]);return ci(void 0,o.outFile?m?N.Output_from_referenced_project_0_included_because_1_specified:N.Source_from_referenced_project_0_included_because_1_specified:m?N.Output_from_referenced_project_0_included_because_module_is_specified_as_none:N.Source_from_referenced_project_0_included_because_module_is_specified_as_none,GD(g.sourceFile.fileName,i),o.outFile?"--outFile":"--out");case 7:{if(t.index!==void 0)return ci(void 0,N.Library_0_specified_in_compilerOptions,o.lib[t.index]);let S=dD(il(o)),T=S?[N.Default_library_for_target_0,S]:[N.Default_library];return ci(void 0,...T)}default:I.fail("Unknown include kind")}}var fj=Vi?{getCurrentDirectory:()=>Vi.getCurrentDirectory(),getNewLine:()=>Vi.newLine,getCanonicalFileName:Za(Vi.useCaseSensitiveFileNames)}:void 0;function VL(e,t){let i=e===Vi&&fj?fj:{getCurrentDirectory:()=>e.getCurrentDirectory(),getNewLine:()=>e.newLine,getCanonicalFileName:Za(e.useCaseSensitiveFileNames)};if(!t)return c=>e.write(Sj(c,i));let o=new Array(1);return c=>{o[0]=c,e.write(_j(o,i)+i.getNewLine()),o[0]=void 0}}function wb(e){let t=e?.fallbackPolling;return{watchFile:t!==void 0?t:1}}function Ob(e){e.watcher.close()}function cY(e){let t=5381;for(let i=0;i<e.length;i++)t=(t<<5)+t+e.charCodeAt(i);return t.toString()}var oP=(o=>(o[o.High=2e3]="High",o[o.Medium=500]="Medium",o[o.Low=250]="Low",o))(oP||{}),Tc=new Date(0);function gA(e,t){return e.getModifiedTime(t)||Tc}function yA(e){return{250:e.Low,500:e.Medium,2e3:e.High}}var rP={Low:32,Medium:64,High:256},iP=yA(rP),mA=yA(rP);function lY(e){if(!e.getEnvironmentVariable)return;let t=c("TSC_WATCH_POLLINGINTERVAL",oP);iP=u("TSC_WATCH_POLLINGCHUNKSIZE",rP)||iP,mA=u("TSC_WATCH_UNCHANGEDPOLLTHRESHOLDS",rP)||mA;function i(p,m){return e.getEnvironmentVariable(`${p}_${m.toUpperCase()}`)}function o(p){let m;return g("Low"),g("Medium"),g("High"),m;function g(S){let T=i(p,S);T&&((m||(m={}))[S]=Number(T))}}function c(p,m){let g=o(p);if(g)return S("Low"),S("Medium"),S("High"),!0;return!1;function S(T){m[T]=g[T]||m[T]}}function u(p,m){let g=o(p);return(t||g)&&yA(g?{...m,...g}:m)}}function tJ(e,t,i,o,c){let u=i;for(let m=t.length;o&&m;p(),m--){let g=t[i];if(g){if(g.isClosed){t[i]=void 0;continue}}else continue;o--;let S=fY(g,gA(e,g.fileName));if(g.isClosed){t[i]=void 0;continue}c?.(g,i,S),t[i]&&(u<i&&(t[u]=g,t[i]=void 0),u++)}return i;function p(){i++,i===t.length&&(u<i&&(t.length=u),i=0,u=0)}}function uY(e){let t=[],i=[],o=m(250),c=m(500),u=m(2e3);return p;function p($,j,ce){let me={fileName:$,callback:j,unchangedPolls:0,mtime:gA(e,$)};return t.push(me),P(me,ce),{close:()=>{me.isClosed=!0,fx(t,me)}}}function m($){let j=[];return j.pollingInterval=$,j.pollIndex=0,j.pollScheduled=!1,j}function g($,j){j.pollIndex=T(j,j.pollingInterval,j.pollIndex,iP[j.pollingInterval]),j.length?y(j.pollingInterval):(I.assert(j.pollIndex===0),j.pollScheduled=!1)}function S($,j){T(i,250,0,i.length),g($,j),!j.pollScheduled&&i.length&&y(250)}function T($,j,ce,me){return tJ(e,$,ce,me,V);function V(ne,ve,$e){$e?(ne.unchangedPolls=0,$!==i&&($[ve]=void 0,v(ne))):ne.unchangedPolls!==mA[j]?ne.unchangedPolls++:$===i?(ne.unchangedPolls=1,$[ve]=void 0,P(ne,250)):j!==2e3&&(ne.unchangedPolls++,$[ve]=void 0,P(ne,j===250?500:2e3))}}function _($){switch($){case 250:return o;case 500:return c;case 2e3:return u}}function P($,j){_(j).push($),B(j)}function v($){i.push($),B(250)}function B($){_($).pollScheduled||y($)}function y($){_($).pollScheduled=e.setTimeout($===250?S:g,$,$===250?"pollLowPollingIntervalQueue":"pollPollingIntervalQueue",_($))}}function dY(e,t,i,o){let c=$s(),u=o?new Map:void 0,p=new Map,m=Za(t);return g;function g(T,_,P,v){let B=m(T);c.add(B,_).length===1&&u&&u.set(B,i(T)||Tc);let y=vi(B)||".",$=p.get(y)||S(vi(T)||".",y,v);return $.referenceCount++,{close:()=>{$.referenceCount===1?($.close(),p.delete(y)):$.referenceCount--,c.remove(B,_)}}}function S(T,_,P){let v=e(T,1,(B,y)=>{if(!ho(y))return;let $=mo(y,T),j=m($),ce=$&&c.get(j);if(ce){let me,V=1;if(u){let ne=u.get(j);if(B==="change"&&(me=i($)||Tc,me.getTime()===ne.getTime()))return;me||(me=i($)||Tc),u.set(j,me),ne===Tc?V=0:me===Tc&&(V=2)}for(let ne of ce)ne($,V,me)}},!1,500,P);return v.referenceCount=0,p.set(_,v),v}}function pY(e){let t=[],i=0,o;return c;function c(m,g){let S={fileName:m,callback:g,mtime:gA(e,m)};return t.push(S),p(),{close:()=>{S.isClosed=!0,fx(t,S)}}}function u(){o=void 0,i=tJ(e,t,i,iP[250]),p()}function p(){!t.length||o||(o=e.setTimeout(u,2e3,"pollQueue"))}}function eJ(e,t,i,o,c){let p=Za(t)(i),m=e.get(p);return m?m.callbacks.push(o):e.set(p,{watcher:c((g,S,T)=>e.get(p)?.callbacks.slice().forEach(_=>_(g,S,T))),callbacks:[o]}),{close:()=>{let g=e.get(p);g&&(!WE(g.callbacks,o)||g.callbacks.length||(e.delete(p),Ob(g)))}}}function fY(e,t){let i=e.mtime.getTime(),o=t.getTime();return i!==o?(e.mtime=t,e.callback(e.fileName,mY(i,o),t),!0):!1}function mY(e,t){return e===0?0:t===0?2:1}var rJ=["/node_modules/.","/.git","/.#"],gY=$i;function tP(e){return gY(e)}function yY({watchDirectory:e,useCaseSensitiveFileNames:t,getCurrentDirectory:i,getAccessibleSortedChildDirectories:o,fileSystemEntryExists:c,realpath:u,setTimeout:p,clearTimeout:m}){let g=new Map,S=$s(),T=new Map,_,P=xh(!t),v=Za(t);return(Ie,ge,Ae,Qe)=>Ae?B(Ie,Qe,ge):e(Ie,ge,Ae,Qe);function B(Ie,ge,Ae,Qe){let ye=v(Ie),ae=g.get(ye);ae?ae.refCount++:(ae={watcher:e(Ie,z=>{ve(z,ge)||(ge?.synchronousWatchDirectory?(g.get(ye)?.targetWatcher||y(Ie,ye,z),ne(Ie,ye,ge)):$(Ie,ye,z,ge))},!1,ge),refCount:1,childWatches:xe,targetWatcher:void 0,links:void 0},g.set(ye,ae),ne(Ie,ye,ge)),Qe&&(ae.links??(ae.links=new Set)).add(Qe);let Ee=Ae&&{dirName:Ie,callback:Ae};return Ee&&S.add(ye,Ee),{dirName:Ie,close:()=>{let z=I.checkDefined(g.get(ye));Ee&&S.remove(ye,Ee),Qe&&z.links?.delete(Qe),z.refCount--,!z.refCount&&(g.delete(ye),z.links=void 0,Ob(z),V(z),z.childWatches.forEach(iT))}}}function y(Ie,ge,Ae,Qe){let ye,ae;ho(Ae)?ye=Ae:ae=Ae,S.forEach((Ee,z)=>{if(!(ae&&ae.get(z)===!0)&&(z===ge||To(ge,z)&&ge[z.length]===Jo))if(ae)if(Qe){let ze=ae.get(z);ze?ze.push(...Qe):ae.set(z,Qe.slice())}else ae.set(z,!0);else Ee.forEach(({callback:ze})=>ze(ye))}),g.get(ge)?.links?.forEach(Ee=>{let z=ze=>Zr(Ee,vS(Ie,ze,v));ae?y(Ee,v(Ee),ae,Qe?.map(z)):y(Ee,v(Ee),z(ye))})}function $(Ie,ge,Ae,Qe){let ye=g.get(ge);if(ye&&c(Ie,1)){j(Ie,ge,Ae,Qe);return}y(Ie,ge,Ae),V(ye),me(ye)}function j(Ie,ge,Ae,Qe){let ye=T.get(ge);ye?ye.fileNames.push(Ae):T.set(ge,{dirName:Ie,options:Qe,fileNames:[Ae]}),_&&(m(_),_=void 0),_=p(ce,1e3,"timerToUpdateChildWatches")}function ce(){_=void 0,tP(`sysLog:: onTimerToUpdateChildWatches:: ${T.size}`);let Ie=uo(),ge=new Map;for(;!_&&T.size;){let Qe=T.entries().next();I.assert(!Qe.done);let{value:[ye,{dirName:ae,options:Ee,fileNames:z}]}=Qe;T.delete(ye);let ze=ne(ae,ye,Ee);g.get(ye)?.targetWatcher||y(ae,ye,ge,ze?void 0:z)}tP(`sysLog:: invokingWatchers:: Elapsed:: ${uo()-Ie}ms:: ${T.size}`),S.forEach((Qe,ye)=>{let ae=ge.get(ye);ae&&Qe.forEach(({callback:Ee,dirName:z})=>{mi(ae)?ae.forEach(Ee):Ee(z)})});let Ae=uo()-Ie;tP(`sysLog:: Elapsed:: ${Ae}ms:: onTimerToUpdateChildWatches:: ${T.size} ${_}`)}function me(Ie){if(!Ie)return;let ge=Ie.childWatches;Ie.childWatches=xe;for(let Ae of ge)Ae.close(),me(g.get(v(Ae.dirName)))}function V(Ie){Ie?.targetWatcher&&(Ie.targetWatcher.close(),Ie.targetWatcher=void 0)}function ne(Ie,ge,Ae){let Qe=g.get(ge);if(!Qe)return!1;let ye=si(u(Ie)),ae,Ee;return P(ye,Ie)===0?ae=pM(c(Ie,1)?_i(o(Ie),te=>{let le=mo(te,Ie);return!ve(le,Ae)&&P(le,si(u(le)))===0?le:void 0}):xe,Qe.childWatches,(te,le)=>P(te,le.dirName),z,iT,ze):Qe.targetWatcher&&P(ye,Qe.targetWatcher.dirName)===0?(ae=!1,I.assert(Qe.childWatches===xe)):(V(Qe),Qe.targetWatcher=B(ye,Ae,void 0,Ie),Qe.childWatches.forEach(iT),ae=!0),Qe.childWatches=Ee||xe,ae;function z(te){let le=B(te,Ae);ze(le)}function ze(te){(Ee||(Ee=[])).push(te)}}function ve(Ie,ge){return Tn(rJ,Ae=>$e(Ie,Ae))||iJ(Ie,ge,t,i)}function $e(Ie,ge){return Ie.includes(ge)?!0:t?!1:v(Ie).includes(ge)}}function TY(e){return(t,i,o)=>e(i===1?"change":"rename","",o)}function hY(e,t,i){return(o,c,u)=>{o==="rename"?(u||(u=i(e)||Tc),t(e,u!==Tc?0:2,u)):t(e,1,u)}}function iJ(e,t,i,o){return!1}function nJ(e,t,i,o,c){return(u,p)=>{if(u==="rename"){let m=p?si(Zr(e,p)):e;(!p||!iJ(m,i,o,c))&&t(m)}}}function SY({pollingWatchFileWorker:e,getModifiedTime:t,setTimeout:i,clearTimeout:o,fsWatchWorker:c,fileSystemEntryExists:u,useCaseSensitiveFileNames:p,getCurrentDirectory:m,fsSupportsRecursiveFsWatch:g,getAccessibleSortedChildDirectories:S,realpath:T,tscWatchFile:_,useNonPollingWatchers:P,tscWatchDirectory:v,inodeWatching:B,fsWatchWithTimestamp:y,sysLog:$}){let j=new Map,ce=new Map,me=new Map,V,ne,ve,$e,Ie=!1;return{watchFile:ge,watchDirectory:Ee};function ge(ue,gn,je,Pn){Pn=ye(Pn,P);let Ut=I.checkDefined(Pn.watchFile);switch(Ut){case 0:return te(ue,gn,250,void 0);case 1:return te(ue,gn,je,void 0);case 2:return Ae()(ue,gn,je,void 0);case 3:return Qe()(ue,gn,void 0,void 0);case 4:return le(ue,0,hY(ue,gn,t),!1,je,wb(Pn));case 5:return ve||(ve=dY(le,p,t,y)),ve(ue,gn,je,wb(Pn));default:I.assertNever(Ut)}}function Ae(){return V||(V=uY({getModifiedTime:t,setTimeout:i}))}function Qe(){return ne||(ne=pY({getModifiedTime:t,setTimeout:i}))}function ye(ue,gn){if(ue&&ue.watchFile!==void 0)return ue;switch(_){case"PriorityPollingInterval":return{watchFile:1};case"DynamicPriorityPolling":return{watchFile:2};case"UseFsEvents":return ae(4,1,ue);case"UseFsEventsWithFallbackDynamicPolling":return ae(4,2,ue);case"UseFsEventsOnParentDirectory":gn=!0;default:return gn?ae(5,1,ue):{watchFile:4}}}function ae(ue,gn,je){let Pn=je?.fallbackPolling;return{watchFile:ue,fallbackPolling:Pn===void 0?gn:Pn}}function Ee(ue,gn,je,Pn){return g?le(ue,1,nJ(ue,gn,Pn,p,m),je,500,wb(Pn)):($e||($e=yY({useCaseSensitiveFileNames:p,getCurrentDirectory:m,fileSystemEntryExists:u,getAccessibleSortedChildDirectories:S,watchDirectory:z,realpath:T,setTimeout:i,clearTimeout:o})),$e(ue,gn,je,Pn))}function z(ue,gn,je,Pn){I.assert(!je);let Ut=ze(Pn),kr=I.checkDefined(Ut.watchDirectory);switch(kr){case 1:return te(ue,()=>gn(ue),500,void 0);case 2:return Ae()(ue,()=>gn(ue),500,void 0);case 3:return Qe()(ue,()=>gn(ue),void 0,void 0);case 0:return le(ue,1,nJ(ue,gn,Pn,p,m),je,500,wb(Ut));default:I.assertNever(kr)}}function ze(ue){if(ue&&ue.watchDirectory!==void 0)return ue;switch(v){case"RecursiveDirectoryUsingFsWatchFile":return{watchDirectory:1};case"RecursiveDirectoryUsingDynamicPriorityPolling":return{watchDirectory:2};default:let gn=ue?.fallbackPolling;return{watchDirectory:0,fallbackPolling:gn!==void 0?gn:void 0}}}function te(ue,gn,je,Pn){return eJ(j,p,ue,gn,Ut=>e(ue,Ut,je,Pn))}function le(ue,gn,je,Pn,Ut,kr){return eJ(Pn?me:ce,p,ue,je,fn=>bn(ue,gn,fn,Pn,Ut,kr))}function bn(ue,gn,je,Pn,Ut,kr){let fn,re;B&&(fn=ue.substring(ue.lastIndexOf(Jo)),re=fn.slice(Jo.length));let dt=u(ue,gn)?Nt():Kt();return{close:()=>{dt&&(dt.close(),dt=void 0)}};function ot(ar){dt&&($(`sysLog:: ${ue}:: Changing watcher to ${ar===Nt?"Present":"Missing"}FileSystemEntryWatcher`),dt.close(),dt=ar())}function Nt(){if(Ie)return $(`sysLog:: ${ue}:: Defaulting to watchFile`),Zt();try{let ar=(gn===1||!y?c:Ft)(ue,Pn,B?Bt:je);return ar.on("error",()=>{je("rename",""),ot(Kt)}),ar}catch(ar){return Ie||(Ie=ar.code==="ENOSPC"),$(`sysLog:: ${ue}:: Changing to watchFile`),Zt()}}function Bt(ar,hn){let er;if(hn&&Pc(hn,"~")&&(er=hn,hn=hn.slice(0,hn.length-1)),ar==="rename"&&(!hn||hn===re||Pc(hn,fn))){let Ti=t(ue)||Tc;er&&je(ar,er,Ti),je(ar,hn,Ti),B?ot(Ti===Tc?Kt:Nt):Ti===Tc&&ot(Kt)}else er&&je(ar,er),je(ar,hn)}function Zt(){return ge(ue,TY(je),Ut,kr)}function Kt(){return ge(ue,(ar,hn,er)=>{hn===0&&(er||(er=t(ue)||Tc),er!==Tc&&(je("rename","",er),ot(Nt)))},Ut,kr)}}function Ft(ue,gn,je){let Pn=t(ue)||Tc;return c(ue,gn,(Ut,kr,fn)=>{Ut==="change"&&(fn||(fn=t(ue)||Tc),fn.getTime()===Pn.getTime())||(Pn=fn||t(ue)||Tc,je(Ut,kr,Pn))})}}function _Y(e){let t=e.writeFile;e.writeFile=(i,o,c)=>TA(i,o,!!c,(u,p,m)=>t.call(e,u,p,m),u=>e.createDirectory(u),u=>e.directoryExists(u))}var Vi=(()=>{let e="\uFEFF";function t(){let o=/^native |^\([^)]+\)$|^(internal[\\/]|[a-zA-Z0-9_\s]+(\.js)?$)/,c=require("fs"),u=require("path"),p=require("os"),m;try{m=require("crypto")}catch{m=void 0}let g,S="./profile.cpuprofile",T=process.platform==="darwin",_=process.platform==="linux"||T,P=p.platform(),v=ge(),B=c.realpathSync.native?process.platform==="win32"?ue:c.realpathSync.native:c.realpathSync,y=__filename.endsWith("sys.js")?u.join(u.dirname(__dirname),"__fake__.js"):__filename,$=process.platform==="win32"||T,j=Dc(()=>process.cwd()),{watchFile:ce,watchDirectory:me}=SY({pollingWatchFileWorker:Qe,getModifiedTime:je,setTimeout,clearTimeout,fsWatchWorker:ye,useCaseSensitiveFileNames:v,getCurrentDirectory:j,fileSystemEntryExists:te,fsSupportsRecursiveFsWatch:$,getAccessibleSortedChildDirectories:fn=>z(fn).directories,realpath:gn,tscWatchFile:process.env.TSC_WATCHFILE,useNonPollingWatchers:!!process.env.TSC_NONPOLLING_WATCHER,tscWatchDirectory:process.env.TSC_WATCHDIRECTORY,inodeWatching:_,fsWatchWithTimestamp:T,sysLog:tP}),V={args:process.argv.slice(2),newLine:p.EOL,useCaseSensitiveFileNames:v,write(fn){process.stdout.write(fn)},getWidthOfTerminal(){return process.stdout.columns},writeOutputIsTTY(){return process.stdout.isTTY},readFile:ae,writeFile:Ee,watchFile:()=>$D,watchDirectory:()=>$D,preferNonRecursiveWatch:!$,resolvePath:fn=>u.resolve(fn),fileExists:le,directoryExists:bn,getAccessibleFileSystemEntries:z,createDirectory(fn){if(!V.directoryExists(fn))try{c.mkdirSync(fn)}catch(re){if(re.code!=="EEXIST")throw re}},getExecutingFilePath(){return y},getCurrentDirectory:j,getDirectories:Ft,getEnvironmentVariable(fn){return process.env[fn]||""},readDirectory:ze,getModifiedTime:je,setModifiedTime:Pn,deleteFile:Ut,createHash:m?kr:cY,createSHA256Hash:m?kr:void 0,getMemoryUsage(){return global.gc&&global.gc(),process.memoryUsage().heapUsed},getFileSize(fn){try{let re=ne(fn);if(re?.isFile())return re.size}catch{}return 0},exit(fn){Ie(()=>process.exit(fn))},enableCPUProfiler:ve,disableCPUProfiler:Ie,cpuProfilingEnabled:()=>!!g||Yr(process.execArgv,"--cpu-prof")||Yr(process.execArgv,"--prof"),realpath:gn,debugMode:!!process.env.NODE_INSPECTOR_IPC||!!process.env.VSCODE_INSPECTOR_OPTIONS||Tn(process.execArgv,fn=>/^--(inspect|debug)(-brk)?(=\d+)?$/i.test(fn))||!!process.recordreplay,tryEnableSourceMapsForHost(){try{Zj().install()}catch{}},setTimeout,clearTimeout,clearScreen:()=>{process.stdout.write("\x1Bc")},setBlocking:()=>{let fn=process.stdout?._handle;fn&&fn.setBlocking&&fn.setBlocking(!0)},base64decode:fn=>Buffer.from(fn,"base64").toString("utf8"),base64encode:fn=>Buffer.from(fn).toString("base64"),require:(fn,re)=>{try{I.fail("implement me")}catch(dt){return{module:void 0,modulePath:void 0,error:dt}}}};return V;function ne(fn){return c.statSync(fn,{throwIfNoEntry:!1})}function ve(fn,re){if(g)return re(),!1;let dt=require("inspector");if(!dt||!dt.Session)return re(),!1;let ot=new dt.Session;return ot.connect(),ot.post("Profiler.enable",()=>{ot.post("Profiler.start",()=>{g=ot,S=fn,re()})}),!0}function $e(fn){let re=0,dt=new Map,ot=gc(u.dirname(y)),Nt=`file://${Ll(ot)===1?"":"/"}${ot}`;for(let Bt of fn.nodes)if(Bt.callFrame.url){let Zt=gc(Bt.callFrame.url);cm(Nt,Zt,v)?Bt.callFrame.url=qD(Nt,Zt,Nt,Za(v),!0):o.test(Zt)||(Bt.callFrame.url=(dt.has(Zt)?dt:dt.set(Zt,`external${re}.js`)).get(Zt),re++)}return fn}function Ie(fn){if(g&&g!=="stopping"){let re=g;return g.post("Profiler.stop",(dt,{profile:ot})=>{if(!dt){try{ne(S)?.isDirectory()&&(S=u.join(S,`${new Date().toISOString().replace(/:/g,"-")}+P${process.pid}.cpuprofile`))}catch{}try{c.mkdirSync(u.dirname(S),{recursive:!0})}catch{}c.writeFileSync(S,JSON.stringify($e(ot)))}g=void 0,re.disconnect(),fn()}),g="stopping",!0}else return fn(),!1}function ge(){return P==="win32"||P==="win64"?!1:!le(Ae(__filename))}function Ae(fn){return fn.replace(/\w/g,re=>{let dt=re.toUpperCase();return re===dt?re.toLowerCase():dt})}function Qe(fn,re,dt){c.watchFile(fn,{persistent:!0,interval:dt},Nt);let ot;return{close:()=>c.unwatchFile(fn,Nt)};function Nt(Bt,Zt){let Kt=+Zt.mtime==0||ot===2;if(+Bt.mtime==0){if(Kt)return;ot=2}else if(Kt)ot=0;else{if(+Bt.mtime==+Zt.mtime)return;ot=1}re(fn,ot,Bt.mtime)}}function ye(fn,re,dt){return c.watch(fn,$?{persistent:!0,recursive:!!re}:{persistent:!0},dt)}function ae(fn,re){let dt;try{dt=c.readFileSync(fn)}catch{return}let ot=dt.length;if(ot>=2&&dt[0]===254&&dt[1]===255){ot&=-2;for(let Nt=0;Nt<ot;Nt+=2){let Bt=dt[Nt];dt[Nt]=dt[Nt+1],dt[Nt+1]=Bt}return dt.toString("utf16le",2)}return ot>=2&&dt[0]===255&&dt[1]===254?dt.toString("utf16le",2):ot>=3&&dt[0]===239&&dt[1]===187&&dt[2]===191?dt.toString("utf8",3):dt.toString("utf8")}function Ee(fn,re,dt){dt&&(re=e+re);let ot;try{ot=c.openSync(fn,"w"),c.writeSync(ot,re,void 0,"utf8")}finally{ot!==void 0&&c.closeSync(ot)}}function z(fn){try{let re=c.readdirSync(fn||".",{withFileTypes:!0}),dt=[],ot=[];for(let Nt of re){let Bt=typeof Nt=="string"?Nt:Nt.name;if(Bt==="."||Bt==="..")continue;let Zt;if(typeof Nt=="string"||Nt.isSymbolicLink()){let Kt=Zr(fn,Bt);try{if(Zt=ne(Kt),!Zt)continue}catch{continue}}else Zt=Nt;Zt.isFile()?dt.push(Bt):Zt.isDirectory()&&ot.push(Bt)}return dt.sort(),ot.sort(),{files:dt,directories:ot}}catch{return hI}}function ze(fn,re,dt,ot,Nt){return vI(fn,re,dt,ot,v,process.cwd(),Nt,z,gn)}function te(fn,re){let dt=Error.stackTraceLimit;Error.stackTraceLimit=0;try{let ot=ne(fn);if(!ot)return!1;switch(re){case 0:return ot.isFile();case 1:return ot.isDirectory();default:return!1}}catch{return!1}finally{Error.stackTraceLimit=dt}}function le(fn){return te(fn,0)}function bn(fn){return te(fn,1)}function Ft(fn){return z(fn).directories.slice()}function ue(fn){return fn.length<260?c.realpathSync.native(fn):c.realpathSync(fn)}function gn(fn){try{return B(fn)}catch{return fn}}function je(fn){let re=Error.stackTraceLimit;Error.stackTraceLimit=0;try{return ne(fn)?.mtime}catch{return}finally{Error.stackTraceLimit=re}}function Pn(fn,re){try{c.utimesSync(fn,re,re)}catch{return}}function Ut(fn){try{return c.unlinkSync(fn)}catch{return}}function kr(fn){let re=m.createHash("sha256");return re.update(fn),re.digest("hex")}}let i;return UE()&&(i=t()),i&&_Y(i),i})();Vi&&Vi.getEnvironmentVariable&&(lY(Vi),I.setAssertionLevel(/^development$/i.test(Vi.getEnvironmentVariable("NODE_ENV"))?1:0));Vi&&Vi.debugMode&&(I.isDebugging=!0);function _A(e,t,i,o,c){let u=mi(e)?xY(e,t,i,o,c):e,{rootNames:p,options:m,configFileParsingDiagnostics:g,projectReferences:S,typeScriptVersion:T}=u,{oldProgram:_}=u,P,v,B,y,$,j,ce=new Map,me=$s(),V,ne,ve,$e={},Ie={};var ge=_?.masterIncludeApply;let Ae,Qe,ye,ae,Ee,z,ze,te,le,bn=typeof m.maxNodeModuleJsDepth=="number"?m.maxNodeModuleJsDepth:0,Ft=0,ue=new Map,gn=new Map;Or.mark("beforeProgram");let je=u.host||xA(m),Pn="TODO",Ut=Jx(),kr=[],fn=je.getCurrentDirectory(),re=new Map,dt,ot,Nt=m.noLib,Bt=Dc(()=>je.getDefaultLibFileName(m)),Zt,Kt=new Map,ar=new Map,hn=je.useCaseSensitiveFileNames()?new Map:void 0,er=$s(),Ti,qe,Yn=je.hasInvalidatedResolutions||ig;je.resolveModuleNameLiterals?(qe=je.resolveModuleNameLiterals.bind(je),Ti=je.getModuleResolutionCache?.()):(Ti=kL(fn,yr,m),qe=(b,E,O,W,he)=>kY(b,E,O,W,he,je,Ti,IY));let zn=hb({fileExists:b=>Vi.fileExists(b),readFile:b=>Le(b),getCurrentDirectory:()=>Vi.getCurrentDirectory(),getIncludeDirs:X,getCompilerOptions:()=>m}),jt,nr,Vr,{fileExists:qi,directoryExists:fe}=je,_e=je.readFile.bind(je),De=NY(_,m);if(_&&je.onAllFilesNeedReparse&&fD(_.getCompilerOptions(),m)){let b=_.getSourceFiles().filter(E=>!E.isDefaultLib).map(E=>E.fileName);je.onAllFilesNeedReparse(b)}let Ve=je.hasInvalidatedLibResolutions||ig,tn,Ye=!!je.useSourceOfProjectReferenceRedirect?.()&&!m.disableSourceOfProjectReferenceRedirect,ee;if(Pt?.push(Pt.Phase.Program,"tryReuseStructureFromOldProgram",{}),ee=Fi(),Pt?.pop(),ee!==2){if(P=[],v=[],S&&(jt||(jt=S.map(Ca)),p.length),Zt=F(m),p.length&&!Nt){let E=Bt();if(!m.lib&&E){let O=lt(E,!0,{kind:7});if(O&&O.parsedMacros){m.configDefines=m.configDefines||{};let W=O.parsedMacros;for(let[he,be]of W)m.configDefines[he]||(m.configDefines[he]=be)}}}Zt=F(m);let b=-1;if(qi(m.masterFile)&&m.driverType===1){b=p.indexOf(m.masterFile),Pt?.push(Pt.Phase.Program,"processMasterFile");let E=lt(m.masterFile,!1,{kind:1,index:b}),O=XB(E);ge=O?eg(O):void 0,Pt?.pop()}if(Pt?.push(Pt.Phase.Program,"processRootFiles",{count:p.length}),Ln(p,(E,O)=>Xi(E,!1,!1,{kind:0,index:O})),Pt?.pop(),p.length&&!Nt){let E=Bt();!m.lib&&E?Xi(E,!0,!1,{kind:7}):Ln(m.lib,(O,W)=>{Xi(Pe(O),!0,!1,{kind:7,index:W})})}B=fd(P,dl).concat(v),P=void 0,v=void 0,V=void 0}if(_&&je.onReleaseOldSourceFile){let b=_.getSourceFiles();for(let E of b){let O=Gt(E.resolvedPath);(De||!O||E.resolvedPath===E.path&&O.resolvedPath!==E.path)&&je.onReleaseOldSourceFile(E,_.getCompilerOptions(),!!Gt(E.path),O)}je.getParsedCommandLine||_.forEachResolvedProjectReference(E=>{Gn(E.sourceFile.path)||je.onReleaseOldSourceFile(E.sourceFile,_.getCompilerOptions(),!1,void 0)})}_&&je.onReleaseParsedCommandLine&&aP(_.getProjectReferences(),_.getResolvedProjectReferences(),(b,E,O)=>{let W=E?.commandLine.projectReferences[O]||_.getProjectReferences()[O],he=hJ(W);nr?.has($o(he))||je.onReleaseParsedCommandLine(he,b,_.getCompilerOptions())}),_=void 0,z=void 0;let pn={getRootFileNames:()=>p,getDriverType:()=>m.driverType,getSourceFile:oi,getSourceFileByPath:Gt,getSourceFiles:()=>B,getMissingFilePaths:()=>ar,getModuleResolutionCache:()=>{},getFilesByNameMap:()=>Kt,getCompilerOptions:()=>m,getSyntacticDiagnostics:Fo,getOptionsDiagnostics:sr,getGlobalDiagnostics:Bc,getSemanticDiagnostics:Gr,getSuggestionDiagnostics:Cn,getDeclarationDiagnostics:rn,getTypeChecker:Sn,getCommonSourceDirectory:()=>fn,getCurrentDirectory:()=>fn,getNodeCount:()=>Sn().getNodeCount(),getIdentifierCount:()=>Sn().getIdentifierCount(),getSymbolCount:()=>Sn().getSymbolCount(),getTypeCount:()=>Sn().getTypeCount(),getInstantiationCount:()=>Sn().getInstantiationCount(),getRelationCacheSizes:()=>Sn().getRelationCacheSizes(),getFileProcessingDiagnostics:()=>Ae,isSourceFileFromExternalLibrary:hi,isSourceFileDefaultLibrary:Cr,getSourceFileFromReference:Tu,resolvedModules:Ee,resolvedLibReferences:ye,getResolvedModule:ai,getResolvedModuleFromModuleSpecifier:ir,getResolvedTypeReferenceDirectiveFromTypeReferenceDirective:Un,forEachResolvedModule:Xo,getCurrentPackagesMap:()=>le,getConfigFileParsingDiagnostics:xt,getProjectReferences:Ur,getResolvedProjectReferences:ht,getResolvedProjectReferenceToRedirect:Zo,getResolvedProjectReferenceByPath:Gn,forEachResolvedProjectReference:so,isSourceOfProjectReferenceRedirect:Fe,fileExists:qi,readFile:_e,directoryExists:fe,realpath:je.realpath?.bind(je),useCaseSensitiveFileNames:()=>je.useCaseSensitiveFileNames(),getCanonicalFileName:yr,getFileIncludeReasons:()=>me,structureIsReused:ee,getIncludeDirs:X,masterIncludeApply:ge,getConfigDefines:()=>Zt};return Or.mark("afterProgram"),Or.measure("Program","beforeProgram","afterProgram"),Pt?.pop(),pn;function X(b){let E=m?.libIncludeDirs??xe;if(ge){let O=m.rootDir??vi(m.configFilePath),W=vS(O,b,je.getCanonicalFileName),he=si(W),be=qn(ge(he),vn=>vn!=":DEFAULT:"?rp(O,"."+vn):vn);if(be&&be.length){let vn=be.indexOf(":DEFAULT:");vn>=0?E=be.slice(0,vn).concat(E,be.slice(vn+1)):E=be}}return E}function Le(b){return je.getSourceTextFromSnapshot(b)??Vi.readFile(b)}function oi(b){return Gt($o(b))}function hi(b){return!!gn.get(b.path)}function Cr(b){if(!b.isDeclarationFile)return!1;if(b.hasNoDefaultLib)return!0;if(!m.noLib)return!1;let E=je.useCaseSensitiveFileNames()?ng:Ud;return m.lib?Tn(m.lib,O=>E(b.fileName,ye.get(O).actual)):E(b.fileName,Bt())}function Sn(){return $||($=rj(pn))}function Fo(b,E){return fi(b,Oo,E)}function Gr(b,E){return fi(b,No,E)}function No(b,E){return Kr(DY(Mn(b,E),m),qt(b))}function Oo(b){return b.parseDiagnostics?.slice()}function Xo(b,E){qa(Ee,b,E)}function qa(b,E,O){O?b?.get(O.path)?.forEach((W,he,be)=>E(W,he,be,O.path)):b?.forEach((W,he)=>W.forEach((be,vn,qr)=>E(be,vn,qr,he)))}function Zo(b){Vr===void 0&&(Vr=new Map,so(O=>{$o(m.configFilePath)!==O.sourceFile.path&&O.commandLine.fileNames.forEach(W=>Vr.set($o(W),O.sourceFile.path))}));let E=Vr.get($o(b));return E&&Gn(E)}function Fe(b){return Ye&&!!Zo(b)}function Mn(b,E){return Ir(b,E,$e,Ze)}function lt(b,E,O){let W=se(b,E,void 0,je,m,Zt);return W.reportParsedDefines=!0,je.getSourceFile(b,W,be=>li(void 0,O,N.Cannot_read_file_0_Colon_1,[b,be]),De)}function ir(b,E){return E??(E=Dt(b)),I.assertIsDefined(E,"`moduleSpecifier` must have a `SourceFile` ancestor. Use `program.getResolvedModule` instead to provide the containing file and resolution mode."),ai(E,b.text,Sc(E,b))}function nn(b,E,O){return ze?.get(b.path)?.get(E,O)}function Un(b,E){return nn(E,b.fileName,E.impliedNodeFormat)}function ht(){return jt}function xt(){return g||xe}function Ur(){return S}function ai(b,E,O){return I.assertIsDefined(b),E?Ee?.get(b.path)?.get(MI(E),O):void 0}function qt(b){if(hS(b,m,pn))return xe;let E=kn().getDiagnostics(b.fileName);return b.commentDirectives?.length?ut(b,b.commentDirectives,E).diagnostics:E}function Pe(b){let E=ye?.get(b);if(E)return E.actual;let O=Be(b);return(ye??(ye=new Map)).set(b,O),O.actual}function Be(b){let E=ae?.get(b);if(E)return E;if(ee!==0&&_&&!Ve(b)){let vn=_.resolvedLibReferences?.get(b);if(vn){if(vn.resolution&&Rg(m,je)){let qr=aJ(b),Lt=sJ(m,fn,b);ha(je,vn.resolution.resolvedModule?vn.resolution.resolvedModule.packageId?N.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:N.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2:N.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved,qr,mo(Lt,fn),vn.resolution.resolvedModule?.resolvedFileName,vn.resolution.resolvedModule?.packageId&&kg(vn.resolution.resolvedModule.packageId))}return(ae??(ae=new Map)).set(b,vn),vn}}let O=aJ(b),W=sJ(m,fn,b);Pt?.push(Pt.Phase.Program,"resolveLibrary",{resolveFrom:W}),Or.mark("beforeResolveLibrary");let he=tn(O,W,m,b);Or.mark("afterResolveLibrary"),Or.measure("ResolveLibrary","beforeResolveLibrary","afterResolveLibrary"),Pt?.pop();let be={resolution:he,actual:he.resolvedModule?he.resolvedModule.resolvedFileName:Zr(Pn,b)};return(ae??(ae=new Map)).set(b,be),be}function Ze(b,E){return Lr(()=>{if(hS(b,m,pn))return xe;let O=Sn();I.assert(!!b.bindDiagnostics);let W=b.scriptKind!==1,he=b.bindDiagnostics,be=O.getDiagnostics(b,E);return Wn(b,!W,he,be,b.jsDocDiagnostics)})}function Wn(b,E,...O){let W=Au(O);if(!E||!b.commentDirectives?.length)return W;let{diagnostics:he,directives:be}=ut(b,b.commentDirectives,W);for(let vn of be.getUnusedExpectations())he.push(T6(b,vn.range,N.Unused_lpc_expect_error_directive));return he}function ut(b,E,O){let W=h6(b,E);return{diagnostics:O.filter(be=>Ot(be,W)===-1),directives:W}}function Ot(b,E){let{file:O,start:W}=b;if(!O)return-1;let he=Qs(O),be=Uy(he,W).line-1;for(;be>=0;){if(E.markUsed(be))return be;let vn=O.text.slice(he[be],he[be+1]).trim();if(vn!==""&&!/^(\s*)\/\/(.*)$/.test(vn))return-1;be--}return-1}function Ir(b,E,O,W){let he=b?O.perFile?.get(b.path):O.allDiagnostics;if(he)return he;let be=W(b,E);return b?(O.perFile||(O.perFile=new Map)).set(b.path,be):O.allDiagnostics=be,be}function Lr(b){try{return b()}catch(E){throw E instanceof Lh&&($=void 0),E}}function Cn(b,E){return Lr(()=>Sn().getSuggestionDiagnostics(b,E))}function fi(b,E,O){return b?pg(E(b,O)):pg(Co(pn.getSourceFiles(),W=>(O&&O.throwIfCancellationRequested(),E(W,O))))}function Gn(b){if(nr)return nr.get(b)||void 0}function so(b){return bA(jt,b)}function xo(b){let E=ve?.get(b);return E===void 0&&(ve??(ve=new Map)).set(b,E=ul(b)??!1),E||void 0}function xa(){if(dt===void 0){let b=Wo();dt=b&&So(b.initializer,Ka)||!1}return dt||void 0}function Wo(){return ot===void 0&&(ot=gb(YI(m.configFile),"compilerOptions",Di)||!1),ot||void 0}function pt(b,E){let O=xa();return O&&r6(O,b,E)}function ic(b,E){return gb(xa(),b,E)}function Io(b,E){return ic(b,O=>Pi(O.initializer)&&O.initializer.text===E?O.initializer:void 0)}function ul(b){if(ap(b)){let W=ST(pn,b),he;switch(b.kind){case 4:he=N.File_is_included_via_import_here;break;case 5:he=N.File_is_included_via_reference_here;break;case 6:he=N.File_is_included_via_type_library_reference_here;break;case 8:he=N.File_is_included_via_library_reference_here;break;default:I.assertNever(b)}return Ug(W)?lu(W.file,W.pos,W.end-W.pos,he):void 0}if(!m.configFile)return;let E,O;switch(b.kind){case 0:if(!m.configFile.configFileSpecs)return;let W=mo(p[b.index],fn),he=WL(pn,W);if(he){E=ZI(m.configFile,"files",he),O=N.File_is_matched_by_files_list_specified_here;break}let be=KL(pn,W);if(!be||!ho(be))return;E=ZI(m.configFile,"include",be),O=N.File_is_matched_by_include_pattern_specified_here;break;case 2:case 3:let vn=I.checkDefined(jt?.[b.index]),qr=aP(S,jt,(ui,xi,Nr)=>ui===vn?{sourceFile:xi?.sourceFile||m.configFile,index:Nr}:void 0);if(!qr)return;let{sourceFile:Lt,index:pr}=qr,gt=mb(Lt,"references",ui=>cT(ui.initializer)?ui.initializer:void 0);return gt&&gt.elements.length>pr?Lc(Lt,gt.elements[pr],b.kind===3?N.File_is_output_from_referenced_project_specified_here:N.File_is_source_from_referenced_project_specified_here):void 0;case 9:if(!m.types)return;E=pt("types",b.typeReference),O=N.File_is_entry_point_of_type_library_specified_here;break;case 7:if(b.index!==void 0){E=pt("lib",m.lib[b.index]),O=N.File_is_library_specified_here;break}let Yt=dD(il(m));E=Yt?Io("target",Yt):void 0,O=N.File_is_default_library_for_target_specified_here;break;case 1:E=Io("masterFile",m.masterFile),O=N.File_is_master_file_specified_here;break;default:I.assertNever(b)}return E&&Lc(m.configFile,E,O)}function Ko(b,E,O,W){let he,be=b&&me.get(b.path),vn,qr,Lt=ap(E)?E:void 0,pr,gt,Yt=b&&ne?.get(b.path),ui;Yt?(Yt.fileIncludeReasonDetails?(he=new Set(be),be?.forEach(go)):be?.forEach(jr),gt=Yt.redirectInfo):(be?.forEach(jr),gt=b&&Tj(b)),E&&jr(E);let xi=he?.size!==be?.length;Lt&&he?.size===1&&(he=void 0),he&&Yt&&(Yt.details&&!xi?ui=ci(Yt.details,O,...W||xe):Yt.fileIncludeReasonDetails&&(xi?Ri()?vn=Fr(Yt.fileIncludeReasonDetails.next.slice(0,be.length),vn[0]):vn=[...Yt.fileIncludeReasonDetails.next,vn[0]]:Ri()?vn=Yt.fileIncludeReasonDetails.next.slice(0,be.length):pr=Yt.fileIncludeReasonDetails)),ui||(pr||(pr=he&&ci(vn,N.The_file_is_in_the_program_because_Colon)),ui=ci(gt?pr?[pr,...gt]:gt:pr,O,...W||xe)),b&&(Yt?(!Yt.fileIncludeReasonDetails||!xi&&pr)&&(Yt.fileIncludeReasonDetails=pr):(ne??(ne=new Map)).set(b.path,Yt={fileIncludeReasonDetails:pr,redirectInfo:gt}),!Yt.details&&!xi&&(Yt.details=ui.next));let Nr=Lt&&ST(pn,Lt);return Nr&&Ug(Nr)?UN(Nr.file,Nr.pos,Nr.end-Nr.pos,ui,qr):ZB(ui,qr);function jr($r){he?.has($r)||((he??(he=new Set)).add($r),(vn??(vn=[])).push(hj(pn,$r)),go($r))}function go($r){!Lt&&ap($r)?Lt=$r:Lt!==$r&&(qr=Fr(qr,xo($r)))}function Ri(){return Yt.fileIncludeReasonDetails.next?.length!==be?.length}}function St({reason:b}){let{file:E,pos:O,end:W}=ST(pn,b),he=E.libReferenceDirectives[b.index],be=wY(he),vn=og(DF(be,"lib."),".d.ts"),qr=Wf(vn,vD,Di);return lu(E,I.checkDefined(O),I.checkDefined(W)-O,qr?N.Cannot_find_lib_definition_for_0_Did_you_mean_1:N.Cannot_find_lib_definition_for_0,be,qr)}function kn(){return kr&&(Ae?.forEach(b=>{switch(b.kind){case 1:return Ut.add(Ko(b.file&&Gt(b.file),b.fileProcessingReason,b.diagnostic,b.args||xe));case 0:return Ut.add(St(b));case 2:return b.diagnostics.forEach(E=>Ut.add(E));default:I.assertNever(b)}}),kr.forEach(({file:b,diagnostic:E,args:O})=>Ut.add(Ko(b,void 0,E,O))),kr=void 0,ne=void 0,ve=void 0),Ut}function Tr(){if(!m.configFile)return xe;let b=kn().getDiagnostics(m.configFile.fileName);return so(E=>{b=Kr(b,kn().getDiagnostics(E.sourceFile.fileName))}),b}function sr(){return pg(Kr(kn().getGlobalDiagnostics(),Tr()))}function Bc(){return p.length?pg(Sn().getGlobalDiagnostics().slice()):xe}function Tu(b,E){return $a(oJ(E.fileName,b.fileName),oi)}function cr(b){if(cm(Pn,b.fileName,!1)){let E=Ps(b.fileName);if(E==="lib.d.ts"||E==="lib.es6.d.ts")return 0;let O=og(DF(E,"lib."),".d.ts"),W=vD.indexOf(O);if(W!==-1)return W+1}return vD.length+2}function dl(b,E){return ro(cr(b),cr(E))}function Xi(b,E,O,W){ct(si(b),E,O,void 0,W)}function vr(b,E,O,W,he){Pt?.push(Pt.Phase.Program,"findSourceFile",{fileName:b,isDefaultLib:E||void 0,fileIncludeKind:nN[W.kind]});let be=gs(b,E,O,W,he);return Pt?.pop(),be}function ct(b,E,O,W,he){$a(b,be=>vr(be,E,O,he,W),(be,...vn)=>li(void 0,he,be,vn),he)}function li(b,E,O,W){(Ae||(Ae=[])).push({kind:1,file:b&&b.path,fileProcessingReason:E,diagnostic:O,args:W})}function yr(b){return je.getCanonicalFileName(b)}function $o(b){return al(b,fn,yr)}function ms(b,E,O){return b&&(!O||!ap(E)||!V?.has(E.file))?(me.add(b.path,E),!0):!1}function gs(b,E,O,W,he){let be=$o(b),vn=b;if(Kt.has(be)){let gt=Kt.get(be),Yt=ms(gt||void 0,W,!0);if(gt&&Yt&&m.forceConsistentCasingInFileNames!==!1){let ui=gt.fileName,xi=je.useCaseSensitiveFileNames()?b:tg(b);$o(ui)!==$o(xi)&&I.fail("implement me");let jr=UL(ui,fn),go=UL(b,fn);jr!==go&&Ws(b,gt,W)}return gt&&gn.get(gt.path)&&Ft===0?(gn.set(gt.path,!1),m.noResolve||is(gt,E),m.noLib||void 0,ue.set(gt.path,!1),hc(gt)):gt&&ue.get(gt.path)&&Ft<bn&&(ue.set(gt.path,!1),hc(gt)),gt||void 0}let qr,Lt=se(b,E,void 0,je,m,Zt),pr=je.getSourceFile(b,Lt,gt=>li(void 0,W,N.Cannot_read_file_0_Colon_1,[b,gt]),De);if(Ji(pr,be,b,qr),pr){if(gn.set(be,Ft>0),pr.fileName=b,pr.path=be,pr.resolvedPath=$o(b),pr.originalFileName=vn,ms(pr,W,!1),je.useCaseSensitiveFileNames()){let gt=tg(be),Yt=hn.get(gt);Yt?Ws(b,Yt,W):hn.set(gt,pr)}Nt=Nt||pr.hasNoDefaultLib&&!O,m.noResolve||is(pr,E),m.noLib||void 0,hc(pr),E?(pr.isDefaultLib=!0,P.push(pr)):v.push(pr),(V??(V=new Set)).add(pr.path)}return pr}function Ws(b,E,O){!ap(O)&&Tn(me.get(E.path),ap)?li(E,O,N.Already_included_file_name_0_differs_from_file_name_1_only_in_casing,[E.fileName,b]):li(E,O,N.File_name_0_differs_from_already_included_file_name_1_only_in_casing,[b,E.fileName])}function Gt(b){return Kt.get(b)||void 0}function F(b){let E=new Map;b.playerFile&&E.set("__LPC_CONFIG_LIBFILES_PLAYER",`"${om(b.playerFile,b)}"`),b.masterFile&&E.set("__LPC_CONFIG_LIBFILES_MASTER",`"${om(b.masterFile,b)}"`),b.sefunFile&&E.set("__LPC_CONFIG_LIBFILES_SEFUN",`"${om(b.sefunFile,b)}"`);for(let O in b.configDefines||_h)E.set(O,b.configDefines[O]);return E.set("__LANG_SVC__","1"),E}function se(b,E,O,W,he,be){return{languageVersion:1,globalIncludes:(E||he.resolvedGlobalIncludeFiles?.some(vn=>vn==b)?void 0:he.globalIncludeFiles)||xe,fileHandler:zn,configDefines:be}}function rn(b,E){let O=pn.getCompilerOptions();return fi(b,et,E)}function et(b,E){return b.isDeclarationFile?[]:Br(b,E)}function Br(b,E){return Ir(b,E,Ie,Wr)}function Wr(b,E){return Lr(()=>{let O=Sn().getEmitResolver(b,E);return bJ(zr($i),O,b)||xe})}function Qt(b,E,O,W,he,be){je.writeFile(b,E,O,W,he,be)}function Et(b){return re.has($o(b))}function zr(b){return{getCanonicalFileName:yr,getCommonSourceDirectory:pn.getCommonSourceDirectory,getCompilerOptions:pn.getCompilerOptions,getCurrentDirectory:()=>fn,getSourceFile:pn.getSourceFile,getSourceFileByPath:pn.getSourceFileByPath,getSourceFiles:pn.getSourceFiles,isSourceFileFromExternalLibrary:()=>!1,writeFile:b||Qt,isEmitBlocked:Et,readFile:E=>je.readFile(E),fileExists:E=>{let O=$o(E);return Gt(O)?!0:ar.has(O)?!1:je.fileExists(E)},realpath:gd(je,je.realpath),useCaseSensitiveFileNames:()=>je.useCaseSensitiveFileNames(),getBuildInfo:()=>pn.getBuildInfo?.(),getSourceFileFromReference:(E,O)=>pn.getSourceFileFromReference(E,O),redirectTargetsMap:er,getFileIncludeReasons:pn.getFileIncludeReasons,createHash:gd(je,je.createHash),getModuleResolutionCache:()=>pn.getModuleResolutionCache(),trace:gd(je,je.trace)}}function Ji(b,E,O,W){W?(Vo(O,W,b),Vo(O,E,b||!1)):Vo(O,E,b)}function Vo(b,E,O){Kt.set(E,O),O!==void 0?ar.delete(E):ar.set(E,b)}function wa(b){b.resolutionDiagnostics?.length&&(Ae??(Ae=[])).push({kind:2,diagnostics:b.resolutionDiagnostics})}function Ga(b,E,O,W){if(je.resolveModuleNameLiterals||!je.resolveModuleNames)return wa(O);if(!Ti)return;let he=mo(b.originalFileName,fn),be=vi(he),qr=Ti.getFromNonRelativeNameCache(E,W,be,void 0);qr&&wa(qr)}function hc(b){if(Oa(b),b.imports.length>0){let E=cJ(b),O=z?.get(b.path)||Ks(E,b);O.length!==E.length&&console.warn("Not all modules resolved",O.length,E.length);let W=m,he=wD();(Ee??(Ee=new Map)).set(b.path,he);for(let be=0;be<E.length;be++){if(!O[be]||!E[be]?.text)continue;let vn=O[be].resolvedModule,qr=MI(E[be].text),Lt=1;if(he.set(qr,Lt,O[be]),Ga(b,qr,O[be],Lt),!vn)continue;let pr=vn.isExternalLibraryImport,gt=!1,Yt=!1,ui=vn.resolvedFileName;pr&&Ft++;let xi=Yt&&Ft>bn,Nr=ui&&!BL(W,vn,b)&&!W.noResolve&&be<b.imports.length&&!xi;xi?ue.set(b.path,!0):Nr&&vr(ui,!1,!1,{kind:4,file:b.path,index:be},vn.packageId),pr&&Ft--}}}function Ks(b,E){if(ee===0&&!E.ambientModuleNames?.length)return Hr(b,E,void 0);let O,W,he,be=PY,vn=_&&_.getSourceFile(E.fileName);for(let gt=0;gt<b.length;gt++){let Yt=b[gt];if(E===vn&&!Yn(E.path)){let xi=_?.getResolvedModule(E,Yt.text,Sc(E,Yt));if(xi?.resolvedModule){Rg(m,je)&&ha(je,xi.resolvedModule.packageId?N.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:N.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2,Yt.text,mo(E.originalFileName,fn),xi.resolvedModule.resolvedFileName,xi.resolvedModule.packageId&&kg(xi.resolvedModule.packageId)),(W??(W=new Array(b.length)))[gt]=xi,(he??(he=[])).push(Yt);continue}}let ui=!1;Yr(E.ambientModuleNames,Yt.text)?(ui=!0,Rg(m,je)&&ha(je,N.Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1,Yt.text,mo(E.originalFileName,fn))):ui=pr(Yt),ui?(W||(W=new Array(b.length)))[gt]=be:(O??(O=[])).push(Yt)}let qr=O&&O.length?Hr(O,E,he):xe;if(!W)return I.assert(qr.length===b.length),qr;let Lt=0;for(let gt=0;gt<W.length;gt++)W[gt]||(W[gt]=qr[Lt],Lt++);return I.assert(Lt===qr.length),W;function pr(gt){let Yt=_?.getResolvedModule(E,gt.text,Sc(E,gt))?.resolvedModule,ui=Yt&&_.getSourceFile(Yt.resolvedFileName);if(Yt&&ui)return!1;let xi=ce.get(gt.text);return xi?(Rg(m,je)&&ha(je,N.Module_0_was_resolved_as_ambient_module_declared_in_1_since_this_file_was_not_modified,gt.text,xi),!0):!1}}function Hr(b,E,O){if(!b.length)return xe;let W=mo(E.originalFileName,fn),he=void 0;Pt?.push(Pt.Phase.Program,"resolveModuleNamesWorker",{containingFileName:W}),Or.mark("beforeResolveModule");let be=qe(b,W,he,m,E,O);return Or.mark("afterResolveModule"),Or.measure("ResolveModule","beforeResolveModule","afterResolveModule"),Pt?.pop(),be}function Sc(b,E){return 1}function Oa(b){if(b.imports)return;let E=hL(b),O=new Set,W,he,be,vn=b.pragmas?.get("this-object")??b.pragmas?.get("this_object");if(vn){let Nr=pD(b,vn);Nr&&Nr.text?.length&&(W=Fr(W,Nr))}for(let Nr of b.importCandidates)Lt(b,Nr,!1);b.imports=W||xe,b.ambientModuleNames=be||xe;return;function qr(Nr){O.has(Nr.text)||(O.add(Nr.text),W=Fr(W,Nr))}function Lt(Nr,jr,go){if(b4(jr)&&jr.arguments?.length>=1&&Pi(jr.arguments[0]))ep(jr,!1),qr(jr.arguments[0]);else if(OD(jr))if(Pi(jr.inheritClause))ep(jr,!1),qr(jr.inheritClause);else{let Ri=gt(jr.inheritClause),$r=we.createStringLiteral(Ri.join(""));$r.flags&=-17,da($r,jr.inheritClause),qr($r)}else if(Mg(jr)){if(jr.fileName){let Ri=we.createStringLiteral(jr.fileName);La(Ri,jr.content.pos,jr.content.end),Ri.flags&=-17,Ri.parent=jr,qr(Ri)}}else if(OY(jr)){let Ri=jr.typeExpression,$r=Ri?Bu(Ri)?Ri:Ri.type&&fm(Ri.type)?Ri.type.type:Ri.type:void 0;if($r){let oc=pr($r)||xe;Ln(oc,Qa=>{if(Pi(Qa))qr(Qa);else if(gr(Qa)){let hu=gt(Qa);if(hu.length){let co=we.createStringLiteral(hu.join(""));co.flags&=-17,co.parent=jr,qr(co)}}})}}else if(ii(jr)){let Ri=gt(jr.expression);if(Ri.length){let $r=we.createStringLiteral(Ri.join(""));$r.flags&=-17,$r.parent=jr,qr($r)}}else if(pm(jr)&&!jr.expression&&jr.arguments?.length){let Ri=Eo(jr.arguments),$r=gt(Ri);if($r.length){let oc=we.createStringLiteral($r.join(""));oc.flags&=-17,oc.parent=jr,qr(oc)}}else if(ao(jr)&&cn(jr.expression)&&jr.expression.text==="base_name"){let Ri=om(Nr.fileName,m),$r=we.createStringLiteral(Ri);$r.flags&=-17,$r.parent=jr,qr($r)}}function pr(Nr){if(El(Nr)&&Pi(Nr.literal))return[Nr.literal];if(El(Nr)&&gr(Nr.literal))return[Nr.literal];if((Dh(Nr)||C4(Nr))&&Nr.types.length)return Co(Nr.types,pr);if(nu(Nr)&&Nr.elementType)return pr(Nr.elementType)}function gt(Nr){let jr=[];return Pi(Nr)&&jr.push(Nr.text),eT(Nr,go=>{Pi(go)&&jr.push(go.text)}),jr}function Yt(Nr){}function ui(Nr){return!oS(Nr)||sS(Nr)}function xi(Nr,jr){let go=Nr,Ri=$r=>{if(ui($r)&&$r.pos<=jr&&(jr<$r.end||jr===$r.end&&$r.kind===1))return $r};for(;;){let $r=Ms(go)&&Ln(go.jsDoc,Ri)||_o(go,Ri);if(!$r)return go;go=$r}}}function jc(b){}function is(b,E){Ln(b.referencedFiles,(O,W)=>{ct(oJ(O.fileName,b.fileName),E,!1,void 0,{kind:5,file:b.path,index:W})})}function $a(b,E,O,W){if(wg(b)){let he=je.getCanonicalFileName(b),be=E(b);return O&&(be?ap(W)&&he===je.getCanonicalFileName(Gt(W.file).fileName)&&O(N.A_file_cannot_have_a_reference_to_itself):O(N.File_0_not_found,b)),be}else throw"implement this"}function ln(b,E){return b.fileName===E.fileName}function ba(b,E){return b.kind===89?E.kind===89&&b.text===E.text:E.kind===16&&b.text===E.text}function Kn(){return!aP(_.getProjectReferences(),_.getResolvedProjectReferences(),(b,E,O)=>{let W=(E?E.commandLine.projectReferences:S)[O],he=Ca(W);return b?!he||he.sourceFile!==b.sourceFile||!md(b.commandLine.fileNames,he.commandLine.fileNames):he!==void 0},(b,E)=>{let O=E?Gn(E.sourceFile.path).commandLine.projectReferences:S;return!md(b,O,t6)})}function Fi(){if(!_)return 0;let b=_.getCompilerOptions();if(i6(b,m))return 0;let E=_.getRootFileNames();if(!md(E,p))return 0;if(!Kn())return 0;S&&(jt=S.map(Ca));let O=[],W=[];if(ee=2,kl(_.getMissingFilePaths(),Lt=>je.fileExists(Lt)))return 0;let he=_.getSourceFiles(),be;(gt=>(gt[gt.Exists=0]="Exists",gt[gt.Modified=1]="Modified"))(be||(be={}));let vn=new Map;for(let Lt of he){let pr=se(Lt.fileName,!1,Ti,je,m,_.getConfigDefines()),gt=je.getSourceFileByPath?je.getSourceFileByPath(Lt.fileName,Lt.resolvedPath,pr,void 0,De):je.getSourceFile(Lt.fileName,pr,void 0,De);if(!gt)return 0;let Yt;if(Yt=gt!==Lt,gt.path=Lt.path,gt.originalFileName=Lt.originalFileName,gt.resolvedPath=Lt.resolvedPath,gt.fileName=Lt.fileName,Yt)Lt.impliedNodeFormat!==gt.impliedNodeFormat?ee=1:md(Lt.libReferenceDirectives,gt.libReferenceDirectives,ln)?Lt.hasNoDefaultLib!==gt.hasNoDefaultLib?ee=1:md(Lt.referencedFiles,gt.referencedFiles,ln)?(Oa(gt),md(Lt.imports,gt.imports,ba)?md(Lt.typeReferenceDirectives,gt.typeReferenceDirectives,ln)||(ee=1):ee=1):ee=1:ee=1,W.push(gt);else if(Yn(Lt.path))ee=1,W.push(gt);else for(let ui of Lt.ambientModuleNames)ce.set(ui,Lt.fileName);O.push(gt)}if(ee!==2)return ee;for(let Lt of W){let pr=cJ(Lt),gt=Ks(pr,Lt);(z??(z=new Map)).set(Lt.path,gt),o6(pr,gt,Nr=>_.getResolvedModule(Lt,Nr.text,Sc(Lt,Nr)),a6)&&(ee=1);let ui=Lt.typeReferenceDirectives;(te??(te=new Map)).set(Lt.path,void 0)}if(ee!==2)return ee;if(s6(b,m))return 1;if(_.resolvedLibReferences&&kl(_.resolvedLibReferences,(Lt,pr)=>Be(pr).actual!==Lt.actual))return 1;ar=_.getMissingFilePaths(),I.assert(O.length===_.getSourceFiles().length);for(let Lt of O)Kt.set(Lt.path,Lt);return _.getFilesByNameMap().forEach((Lt,pr)=>{if(!Lt){Kt.set(pr,Lt);return}if(Lt.path===pr){_.isSourceFileFromExternalLibrary(Lt)&&gn.set(Lt.path,!0);return}Kt.set(pr,Kt.get(Lt.path))}),B=O,me=_.getFileIncludeReasons(),Ae=_.getFileProcessingDiagnostics(),Ee=_.resolvedModules,ye=_.resolvedLibReferences,le=_.getCurrentPackagesMap(),Zt=_.getConfigDefines(),2}function Ca(b){I.fail("implement me")}}function xY(e,t,i,o,c,u){return{rootNames:e,options:t,host:i,oldProgram:o,configFileParsingDiagnostics:c,typeScriptVersion:u}}function xA(e,t){return bY(e,t)}function bY(e,t,i=Vi){let o=Za(i.useCaseSensitiveFileNames);function c(){return vi(si(i.getExecutingFilePath()))}let u=Yd(e),p=i.realpath&&(g=>i.realpath(g)),m={getSourceFile:CY(g=>m.readFile(g),t,e.driverType),getDefaultLibLocation:c,getDefaultLibFileName:g=>nL(g),getSourceTextFromSnapshot:g=>i.readFile(g),writeFile:EY((g,S,T)=>i.writeFile(g,S,T),g=>(m.createDirectory||i.createDirectory)(g),g=>!0),getCurrentDirectory:Dc(()=>i.getCurrentDirectory()),useCaseSensitiveFileNames:()=>i.useCaseSensitiveFileNames,getCanonicalFileName:o,getNewLine:()=>u,fileExists:g=>i.fileExists(g),readFile:g=>i.readFile(g),trace:g=>i.write(g+u),directoryExists:g=>i.directoryExists(g),getEnvironmentVariable:g=>i.getEnvironmentVariable?i.getEnvironmentVariable(g):"",getDirectories:g=>i.getDirectories(g),realpath:p,readDirectory:(g,S,T,_,P)=>i.readDirectory(g,S,T,_,P),createDirectory:g=>i.createDirectory(g),createHash:gd(i,i.createHash),onAllFilesNeedReparse:g=>$i};return m}function CY(e,t,i){return(o,c,u)=>{let p;try{Or.mark("beforeIORead"),p=e(o),Or.mark("afterIORead"),Or.measure("I/O Read","beforeIORead","afterIORead")}catch(m){u&&u(m.message),p=""}return p!==void 0?xb(o,p,c,t,1,i):void 0}}function EY(e,t,i){return(o,c,u,p)=>{try{Or.mark("beforeIOWrite"),TA(o,c,u,e,t,i),Or.mark("afterIOWrite"),Or.measure("I/O Write","beforeIOWrite","afterIOWrite")}catch(m){p&&p(m.message)}}}function TA(e,t,i,o,c,u){try{o(e,t,i)}catch{gJ(vi(si(e)),c,u),o(e,t,i)}}function gJ(e,t,i){if(e.length>Ll(e)&&!i(e)){let o=vi(e);gJ(o,t,i),t(e)}}function ap(e){switch(e?.kind){case 4:case 5:case 6:case 8:return!0;default:return!1}}function oJ(e,t){let i=vi(t),o=nl(e)?e:Zr(i,e);return si(o)}function NY(e,t){if(!e)return!1;let i=e.getCompilerOptions();return VN(i,t,l4)||fD(i,t)}function bA(e,t){return aP(void 0,e,(i,o)=>i&&t(i,o))}function aP(e,t,i,o){let c;return u(e,t,void 0);function u(p,m,g){if(o){let S=o(p,g);if(S)return S}return Ln(m,(S,T)=>{if(S&&c?.has(S.sourceFile.path))return;let _=i(S,g,T);return _||!S?_:((c||(c=new Set)).add(S.sourceFile.path),u(S.commandLine.projectReferences,S.references,S))})}}function hT(e,t,i=0){if(ho(e))return e;if(e===void 0)return"";let o="";if(i){o+=t;for(let c=0;c<i;c++)o+=" "}if(o+=e.messageText,i++,e.next)for(let c of e.next)o+=hT(c,t,i);return o}function DY(e,t){return Rr(e,i=>!i.skippedOn||!t[i.skippedOn])}function yJ(e,t,i){let o;return Ln(e,u=>{let p=bS(u,t);if(p.pop(),!o){o=p;return}let m=Math.min(o.length,p.length);for(let g=0;g<m;g++)if(i(o[g])!==i(p[g])){if(g===0)return!0;o.length=g;break}p.length<o.length&&(o.length=p.length)})?"":o?kS(o):t}function aJ(e){return"efuns/"+(e.endsWith("ldmud.h")?"ldmud/":"fluffos/")+e}function sJ(e,t,i){let o=e.configFilePath?vi(e.configFilePath):t;return Zr(o,`__lib_node_modules_lookup_${i}__.ts`)}function BL(e,{extension:t},{isDeclarationFile:i}){switch(t){case".lpc":case".c":case".h":return;default:return o()}function o(){return i||e.allowArbitraryExtensions?void 0:N.Module_0_was_resolved_to_1_but_allowArbitraryExtensions_is_not_set}}function cJ({imports:e}){return e.map(i=>i)}var PY={resolvedModule:void 0,resolvedTypeReferenceDirective:void 0};function kY(e,t,i,o,c,u,p,m){if(e.length===0)return xe;let g=[],S=new Map,T=m(t,i,o,u,p);for(let _ of e){let P=T.nameAndMode.getName(_),v=T.nameAndMode.getMode(_,c,i?.commandLine.options||o),B=kb(P,v),y=S.get(B);y||S.set(B,y=T.resolve(P,v)),g.push(y)}return g}function vY(e,t,i){return 1}function FY(e){return e.text}var TJ={getName:FY,getMode:(e,t,i)=>vY(t,e,i)};function IY(e,t,i,o,c){return{nameAndMode:TJ,resolve:(u,p)=>vL(u,e,i,o,c,t,p)}}function ST(e,t){let i=I.checkDefined(e.getSourceFileByPath(t.file)),{kind:o,index:c}=t,u,p,m;switch(o){case 4:let g=LY(i,c);if(m=e.getResolvedModuleFromModuleSpecifier(g,i)?.resolvedModule?.packageId,g.pos===-1)return{file:i,packageId:m,text:g.text};u=Oi(i.text,g.pos),p=g.end;break;case 5:({pos:u,end:p}=i.referencedFiles[c]);break;case 6:({pos:u,end:p}=i.typeReferenceDirectives[c]),m=e.getResolvedTypeReferenceDirectiveFromTypeReferenceDirective(i.typeReferenceDirectives[c],i)?.resolvedTypeReferenceDirective?.packageId;break;case 8:({pos:u,end:p}=i.libReferenceDirectives[c]);break;default:return I.assertNever(o)}return{file:i,pos:u,end:p,packageId:m}}function LY({imports:e},t){if(t<e.length)return e[t];let i=e.length;I.fail("should never ask for module name at index higher than possible module name")}function Ug(e){return e.pos!==void 0}function hJ(e){return CA(e.path)}function Sj(e,t){let i=`${tN(e)} LPC${e.code}: ${hT(e.messageText,t.getNewLine())}${t.getNewLine()}`;if(e.file){let{line:o,character:c}=Go(e.file,e.start),u=e.file.fileName;return`${HD(u,t.getCurrentDirectory(),m=>t.getCanonicalFileName(m))}(${o+1},${c+1}): `+i}return i}var hA="\x1B[7m",SA=" ",SJ="\x1B[0m",lJ="...",AY=" ",uJ=" ";function dJ(e){switch(e){case 1:return"\x1B[91m";case 0:return"\x1B[93m";case 2:return I.fail("Should never get an Info diagnostic on the command line.");case 3:return"\x1B[94m"}}function sp(e,t){return t+e+SJ}function _J(e,t,i){let o;return o=Po(o,e.getConfigFileParsingDiagnostics()),o=Po(o,e.getOptionsDiagnostics(i)),o=Po(o,e.getSyntacticDiagnostics(t,i)),o=Po(o,e.getGlobalDiagnostics(i)),o=Po(o,e.getSemanticDiagnostics(t,i)),pg(o||xe)}function wY(e){return tg(e.fileName)}function xJ(e,t,i="lpc-config.json"){return vb(e,o=>{let c=Zr(o,i);return console.log(`Checking for ${c}`),t(c)?c:void 0})}function pJ(e,t,i,o=sp){let{line:c,character:u}=Go(e,t),p=i?HD(e.fileName,i.getCurrentDirectory(),g=>i.getCanonicalFileName(g)):e.fileName,m="";return m+=o(p,"\x1B[96m"),m+=":",m+=o(`${c+1}`,"\x1B[93m"),m+=":",m+=o(`${u+1}`,"\x1B[93m"),m}function _j(e,t){let i="";for(let o of e){if(o.file){let{file:c,start:u}=o;i+=pJ(c,u,t),i+=" - "}if(i+=sp(tN(o),dJ(o.category)),i+=sp(` ${iM}${o.code}: `,"\x1B[90m"),i+=hT(o.messageText,t.getNewLine()),o.file&&o.code!==N.File_appears_to_be_binary.code&&(i+=t.getNewLine(),i+=fJ(o.file,o.start,o.length,"",dJ(o.category),t)),o.relatedInformation){i+=t.getNewLine();for(let{file:c,start:u,length:p,messageText:m}of o.relatedInformation)c&&(i+=t.getNewLine(),i+=AY+pJ(c,u,t),i+=fJ(c,u,p,uJ,"\x1B[96m",t)),i+=t.getNewLine(),i+=uJ+hT(m,t.getNewLine())}i+=t.getNewLine()}return i}function fJ(e,t,i,o,c,u){let{line:p,character:m}=Go(e,t),{line:g,character:S}=Go(e,t+i),T=Go(e,e.text.length).line,_=g-p>=4,P=(g+1+"").length;_&&(P=Math.max(lJ.length,P));let v="";for(let B=p;B<=g;B++){v+=u.getNewLine(),_&&p+1<B&&B<g-1&&(v+=o+sp(lJ.padStart(P),hA)+SA+u.getNewLine(),B=g-1);let y=aN(e,B,0),$=B<T?aN(e,B+1,0):e.text.length,j=e.text.slice(y,$);if(j=j.trimEnd(),j=j.replace(/\t/g," "),v+=o+sp((B+1+"").padStart(P),hA)+SA,v+=j+u.getNewLine(),v+=o+sp("".padStart(P),hA)+SA,v+=c,B===p){let ce=B===g?S:void 0;v+=j.slice(0,m).replace(/\S/g," "),v+=j.slice(m,ce).replace(/./g,"~")}else B===g?v+=j.slice(0,S).replace(/./g,"~"):v+=j.replace(/./g,"~");v+=SJ}return v}function OY(e){switch(e.kind){case 220:case 227:case 225:case 223:case 228:case 221:return!0;default:return!1}}function Vg(e,t){return t}function ET(e,t,i){i(e,t)}function CJ(e,t,i,o,c,u,p){let m=new Array(302),g,S,T,_=0,P=[],v=[],B=[],y=[],$=0,j=!1,ce=[],me=0,V,ne,ve=Vg,$e=ET,Ie=0,ge=[],Ae={factory:i,getCompilerOptions:()=>o,getEmitResolver:()=>e,getEmitHost:()=>t,startLexicalEnvironment:Pn,suspendLexicalEnvironment:Ut,resumeLexicalEnvironment:kr,endLexicalEnvironment:fn,setLexicalEnvironmentFlags:re,getLexicalEnvironmentFlags:dt,hoistVariableDeclaration:ue,hoistFunctionDeclaration:gn,addInitializationStatement:je,startBlockScope:ot,endBlockScope:Nt,addBlockScopedVariable:Bt,requestEmitHelper:Zt,readEmitHelpers:Kt,enableSubstitution:z,enableEmitNotification:le,isSubstitutionEnabled:ze,isEmitNotificationEnabled:bn,get onSubstituteNode(){return ve},set onSubstituteNode(hn){I.assert(Ie<1,"Cannot modify transformation hooks after initialization has completed."),I.assert(hn!==void 0,"Value must not be 'undefined'"),ve=hn},get onEmitNode(){return $e},set onEmitNode(hn){I.assert(Ie<1,"Cannot modify transformation hooks after initialization has completed."),I.assert(hn!==void 0,"Value must not be 'undefined'"),$e=hn},addDiagnostic(hn){ge.push(hn)}};for(let hn of c)sL(Dt(io(hn)));Or.mark("beforeTransform");let Qe=u.map(hn=>hn(Ae)),ye=hn=>{for(let er of Qe)hn=er(hn);return hn};Ie=1;let ae=[];for(let hn of c)Pt?.push(Pt.Phase.Emit,"transformNodes",hn.kind===176?{path:hn.path}:{kind:hn.kind,pos:hn.pos,end:hn.end}),ae.push((p?ye:Ee)(hn)),Pt?.pop();return Ie=2,Or.mark("afterTransform"),Or.measure("transformTime","beforeTransform","afterTransform"),{transformed:ae,substituteNode:te,emitNodeWithNotification:Ft,isEmitNotificationEnabled:bn,dispose:ar,diagnostics:ge};function Ee(hn){return hn&&(!Mr(hn)||!hn.isDeclarationFile)?ye(hn):hn}function z(hn){I.assert(Ie<2,"Cannot modify the transformation context after transformation has completed."),m[hn]|=1}function ze(hn){return(m[hn.kind]&1)!==0&&(Yi(hn)&8)===0}function te(hn,er){return I.assert(Ie<3,"Cannot substitute a node after the result is disposed."),er&&ze(er)&&ve(hn,er)||er}function le(hn){I.assert(Ie<2,"Cannot modify the transformation context after transformation has completed."),m[hn]|=2}function bn(hn){return(m[hn.kind]&2)!==0||(Yi(hn)&4)!==0}function Ft(hn,er,Ti){I.assert(Ie<3,"Cannot invoke TransformationResult callbacks after the result is disposed."),er&&(bn(er)?$e(hn,er,Ti):Ti(hn,er))}function ue(hn){I.assert(Ie>0,"Cannot modify the lexical environment during initialization."),I.assert(Ie<2,"Cannot modify the lexical environment after transformation has completed.");let er=Va(i.createVariableDeclaration(hn),128);g?g.push(er):g=[er],_&1&&(_|=2)}function gn(hn){I.assert(Ie>0,"Cannot modify the lexical environment during initialization."),I.assert(Ie<2,"Cannot modify the lexical environment after transformation has completed."),Va(hn,2097152),S?S.push(hn):S=[hn]}function je(hn){I.assert(Ie>0,"Cannot modify the lexical environment during initialization."),I.assert(Ie<2,"Cannot modify the lexical environment after transformation has completed."),Va(hn,2097152),T?T.push(hn):T=[hn]}function Pn(){I.assert(Ie>0,"Cannot modify the lexical environment during initialization."),I.assert(Ie<2,"Cannot modify the lexical environment after transformation has completed."),I.assert(!j,"Lexical environment is suspended."),P[$]=g,v[$]=S,B[$]=T,y[$]=_,$++,g=void 0,S=void 0,T=void 0,_=0}function Ut(){I.assert(Ie>0,"Cannot modify the lexical environment during initialization."),I.assert(Ie<2,"Cannot modify the lexical environment after transformation has completed."),I.assert(!j,"Lexical environment is already suspended."),j=!0}function kr(){I.assert(Ie>0,"Cannot modify the lexical environment during initialization."),I.assert(Ie<2,"Cannot modify the lexical environment after transformation has completed."),I.assert(j,"Lexical environment is not suspended."),j=!1}function fn(){I.assert(Ie>0,"Cannot modify the lexical environment during initialization."),I.assert(Ie<2,"Cannot modify the lexical environment after transformation has completed."),I.assert(!j,"Lexical environment is suspended.");let hn;if(g||S||T){if(S&&(hn=[...S]),g){let er=i.createVariableStatement(void 0,void 0,i.createVariableDeclarationList(g));Va(er,2097152),hn?hn.push(er):hn=[er]}T&&(hn?hn=[...hn,...T]:hn=[...T])}return $--,g=P[$],S=v[$],T=B[$],_=y[$],$===0&&(P=[],v=[],B=[],y=[]),hn}function re(hn,er){_=er?_|hn:_&~hn}function dt(){return _}function ot(){I.assert(Ie>0,"Cannot start a block scope during initialization."),I.assert(Ie<2,"Cannot start a block scope after transformation has completed."),ce[me]=V,me++,V=void 0}function Nt(){I.assert(Ie>0,"Cannot end a block scope during initialization."),I.assert(Ie<2,"Cannot end a block scope after transformation has completed.");let hn=Tn(V)?[i.createVariableStatement(void 0,void 0,i.createVariableDeclarationList(V.map(er=>i.createVariableDeclaration(er)),1))]:void 0;return me--,V=ce[me],me===0&&(ce=[]),hn}function Bt(hn){I.assert(me>0,"Cannot add a block scoped variable outside of an iteration body."),(V||(V=[])).push(hn)}function Zt(hn){if(I.assert(Ie>0,"Cannot modify the transformation context during initialization."),I.assert(Ie<2,"Cannot modify the transformation context after transformation has completed."),I.assert(!hn.scoped,"Cannot request a scoped emit helper."),hn.dependencies)for(let er of hn.dependencies)Zt(er);ne=Fr(ne,hn)}function Kt(){I.assert(Ie>0,"Cannot modify the transformation context during initialization."),I.assert(Ie<2,"Cannot modify the transformation context after transformation has completed.");let hn=ne;return ne=void 0,hn}function ar(){if(Ie<3){for(let hn of c)sL(Dt(io(hn)));g=void 0,P=void 0,S=void 0,v=void 0,ve=void 0,$e=void 0,ne=void 0,Ie=3}}}var FS={factory:we,getCompilerOptions:()=>({}),getEmitResolver:Kd,getEmitHost:Kd,startLexicalEnvironment:$i,resumeLexicalEnvironment:$i,suspendLexicalEnvironment:$i,endLexicalEnvironment:rg,setLexicalEnvironmentFlags:$i,getLexicalEnvironmentFlags:()=>0,hoistVariableDeclaration:$i,hoistFunctionDeclaration:$i,addInitializationStatement:$i,startBlockScope:$i,endBlockScope:rg,addBlockScopedVariable:$i,requestEmitHelper:$i,readEmitHelpers:Kd,enableSubstitution:$i,enableEmitNotification:$i,isSubstitutionEnabled:Kd,isEmitNotificationEnabled:Kd,onSubstituteNode:Vg,onEmitNode:ET,addDiagnostic:$i};function bJ(e,t,i){let o=e.getCompilerOptions(),c=Rr(DB(e,i),PB);return CJ(t,e,we,o,i?Yr(c,i)?[i]:xe:c,[],!1).diagnostics}var EJ=RY();var oj=Dc(()=>df({})),ym=Dc(()=>df({removeComments:!0})),aj=Dc(()=>df({removeComments:!0,neverAsciiEscape:!0})),sj=Dc(()=>df({removeComments:!0,omitTrailingSemicolon:!0}));function df(e={},t={}){var{hasGlobalName:i,onEmitNode:o=ET,isEmitNotificationEnabled:c,substituteNode:u=Vg,onBeforeEmitNode:p,onAfterEmitNode:m,onBeforeEmitNodeArray:g,onAfterEmitNodeArray:S,onBeforeEmitToken:T,onAfterEmitToken:_}=t,P=!!e.extendedDiagnostics,v=!!e.omitBraceSourceMapPositions,B=Yd(e),y=1,$=new Map,j,ce,me,V,ne,ve,$e,Ie,ge,Ae,Qe,ye,ae,Ee,z,ze=e.preserveSourceNewlines,te,le,bn,Ft=ul,ue,gn=!0,je,Pn,Ut=-1,kr,fn=-1,re=-1,dt=-1,ot=-1,Nt,Bt,Zt=!1,Kt=!!e.removeComments,ar,hn,{enter:er,exit:Ti}=Or.createTimerIf(P,"commentTime","beforeComment","afterComment"),qe=we.parenthesizer,Yn={select:k=>k===0?qe.parenthesizeLeadingTypeArgument:void 0},zn=nn();return hi(),{printNode:jt,printList:nr,printFile:qi,printBundle:Vr,writeNode:fe,writeList:_e,writeFile:Ve,writeBundle:De};function jt(k,Q,ke){switch(k){case 0:I.assert(Mr(Q),"Expected a SourceFile node.");break;case 2:I.assert(cn(Q),"Expected an Identifier node.");break;case 1:I.assert(Xs(Q),"Expected an Expression node.");break}switch(Q.kind){case 176:return qi(Q);case 177:return Vr(Q)}return fe(k,Q,ke,tn()),Ye()}function nr(k,Q,ke){return _e(k,Q,ke,tn()),Ye()}function Vr(k){return De(k,tn(),void 0),Ye()}function qi(k){return Ve(k,tn(),void 0),Ye()}function fe(k,Q,ke,He){let bt=le;oi(He,void 0),ee(k,Q,ke),hi(),le=bt}function _e(k,Q,ke,He){let bt=le;oi(He,void 0),ke&&pn(ke),Be(void 0,Q,k),hi(),le=bt}function De(k,Q,ke){ue=!1;let He=le;oi(Q,ke),console.warn("todo - implment me - writeBundle"),Wo(k);for(let bt of k.sourceFiles)ee(0,bt,bt);hi(),le=He}function Ve(k,Q,ke){console.warn("todo - implment me - writeFile"),ue=!0;let He=le;oi(Q,ke),Wo(k),ee(0,k,k),hi(),le=He}function tn(){return bn||(bn=vg(B))}function Ye(){let k=bn.getText();return bn.clear(),k}function ee(k,Q,ke){ke&&pn(ke),Xo(k,Q,void 0)}function pn(k){j=k,Nt=void 0,Bt=void 0,k&&X(k)}function X(k){if(!gn){if(Pn=k,k===kr){Ut=fn;return}Le(k)||(Ut=je.addSource(k.fileName),e.inlineSources&&je.setSourceContent(Ut,k.text),kr=k,fn=Ut)}}function Le(k){return mc(k.fileName,".json")}function oi(k,Q){k&&e.omitTrailingSemicolon&&(k=ub(k)),le=k,je=Q,gn=!le||!je}function hi(){ce=[],me=[],V=[],ne=new Set,ve=[],$e=new Map,Ie=[],ge=0,Ae=[],Qe=0,ye=[],ae=void 0,Ee=[],z=void 0,j=void 0,Nt=void 0,Bt=void 0,oi(void 0,void 0)}function Cr(){return Nt||(Nt=Qs(I.checkDefined(j)))}function Sn(k,Q){k!==void 0&&Xo(4,k,Q)}function Fo(k){k!==void 0&&Xo(2,k,void 0)}function Gr(k,Q){k!==void 0&&Xo(1,k,Q)}function No(k){ze&&Qx(k)&4&&(ze=!1)}function Oo(k){ze=k}function Xo(k,Q,ke){hn=ke,Un(0,k,Q)(k,Q),hn=void 0}function qa(k){return!Kt&&!Mr(k)}function Zo(k){return!gn&&!Mr(k);}function Fe(k,Q){let ke=ai(1,k,Q);I.assertIsDefined(ar),Q=ar,ar=void 0,ke(k,Q)}function Mn(k,Q){let ke=ai(2,k,Q),He=re,bt=dt,hr=ot;lt(Q),ke(k,Q),ir(Q,He,bt,hr)}function lt(k){console.warn("todo - implment me - emitCommentsBeforeNode")}function ir(k,Q,ke,He){console.warn("todo - implment me - emitCommentsAfterNode")}function nn(){return fT(k,Q,ke,He,bt,void 0);function k(at,lr){if(lr){lr.stackIndex++,lr.preserveSourceNewlinesStack[lr.stackIndex]=ze,lr.containerPosStack[lr.stackIndex]=re,lr.containerEndStack[lr.stackIndex]=dt,lr.declarationListContainerEndStack[lr.stackIndex]=ot;let Wt=lr.shouldEmitCommentsStack[lr.stackIndex]=qa(at),C=lr.shouldEmitSourceMapsStack[lr.stackIndex]=Zo(at);p?.(at),Wt&&lt(at),C&&xt(at),No(at)}else lr={stackIndex:0,preserveSourceNewlinesStack:[void 0],containerPosStack:[-1],containerEndStack:[-1],declarationListContainerEndStack:[-1],shouldEmitCommentsStack:[!1],shouldEmitSourceMapsStack:[!1]};return lr}function Q(at,lr,Wt){return hr(at,Wt,"left")}function ke(at,lr,Wt){let C=at.kind!==27,H=F(Wt,Wt.left,at),Ce=F(Wt,at,Wt.right);et(H,C),Ot(at.pos),ms(at,at.kind===103?Tr:sr),Wn(at.end,!0),et(Ce,!0)}function He(at,lr,Wt){return hr(at,Wt,"right")}function bt(at,lr){let Wt=F(at,at.left,at.operatorToken),C=F(at,at.operatorToken,at.right);if(Br(Wt,C),lr.stackIndex>0){let H=lr.preserveSourceNewlinesStack[lr.stackIndex],Ce=lr.containerPosStack[lr.stackIndex],dn=lr.containerEndStack[lr.stackIndex],Zn=lr.declarationListContainerEndStack[lr.stackIndex],An=lr.shouldEmitCommentsStack[lr.stackIndex],Jt=lr.shouldEmitSourceMapsStack[lr.stackIndex];Oo(H),Jt&&void 0,An&&ir(at,Ce,dn,Zn),m?.(at),lr.stackIndex--}}function hr(at,lr,Wt){let C=Wt==="left"?qe.getParenthesizeLeftSideOfBinaryForOperator(lr.operatorToken.kind):qe.getParenthesizeRightSideOfBinaryForOperator(lr.operatorToken.kind),H=Un(0,1,at);if(H===Fe&&(I.assertIsDefined(ar),at=C(Ua(ar,Xs)),H=ai(1,1,at),ar=void 0),(H===Mn||H===ht||H===Pe)&&gr(at))return at;hn=C,H(1,at)}}function Un(k,Q,ke){switch(k){case 0:if(o!==ET&&(!c||c(ke)))return qt;case 1:if(u!==Vg&&(ar=u(Q,ke)||ke)!==ke)return hn&&(ar=hn(ar)),Fe;case 2:if(qa(ke))return Mn;case 3:if(Zo(ke))return ht;case 4:return Pe;default:return I.assertNever(k)}}function ht(k,Q){let ke=ai(3,k,Q);xt(Q),ke(k,Q)}function xt(k){console.warn("todo - implment me - emitSourceMapsBeforeNode")}function Ur(k){}function ai(k,Q,ke){return Un(k+1,Q,ke)}function qt(k,Q){let ke=ai(0,k,Q);o(k,Q,ke)}function Pe(k,Q){if(p?.(Q),ze){let ke=ze;No(Q),pt(k,Q),Oo(ke)}else pt(k,Q);m?.(Q),hn=void 0}function Be(k,Q,ke,He,bt,hr){ut(Sn,k,Q,ke|(k&&Yi(k)&2?65536:0),He,bt,hr)}function Ze(k,Q,ke,He,bt,hr){ut(Gr,k,Q,ke,He,bt,hr)}function Wn(k,Q,ke){Kt||(er(),console.warn("todo - implment me - emitTrailingCommentsOfPosition"),Ti())}function ut(k,Q,ke,He,bt,hr=0,at=ke?ke.length-hr:0){if(ke===void 0&&He&16384)return;let Wt=ke===void 0||hr>=ke.length||at===0;if(Wt&&He&32768){g?.(ke),S?.(ke);return}He&4209664&&(St(NJ(He)),Wt&&ke&&Wn(ke.pos,!0)),g?.(ke),Wt?He&1&&!(ze&&(!Q||j&&Zd(Q,j)))?vr():He&256&&!(He&524288)&&cr():Cn(k,Q,ke,He,bt,hr,at,ke.hasTrailingComma,ke),S?.(ke),He&4209664&&(Wt&&ke&&Ot(ke.end),St(DJ(He)))}function Ot(k){Kt||k===-1||console.warn("todo - implment me - emitLeadingCommentsOfPosition")}function Ir(k,Q,ke){if(ke&2||ze){if(ke&65536)return 1;if(Q===void 0)return!k||j&&Zd(k,j)?0:1;if(Q.pos===te)return 0;if(j&&k&&!_s(k.pos)&&!wi(Q)&&(!Q.parent||ns(Q.parent)===ns(k)))return ze?Gt(He=>WI(Q.pos,k.pos,j,He)):aT(k,Q,j)?0:1;if(Lr(Q,ke))return 1}return ke&1?1:0}function Lr(k,Q){if(wi(k)){let ke=pT(k);return ke===void 0?(Q&65536)!==0:ke}return(Q&65536)!==0}function Cn(k,Q,ke,He,bt,hr,at,lr,Wt){let C=(He&262144)===0,H=C,Ce=Ir(Q,ke[hr],He);Ce?(vr(Ce),H=!1):He&256&&cr(),He&128&&ct();let dn=PJ(k,bt),Zn,An=!1;for(let lo=0;lo<at;lo++){let Vs=ke[hr+lo];if(He&32)vr(),xa(He);else if(Zn){He&60&&Zn.end!==(Q?Q.end:-1)&&(Yi(Zn)&2048||Ot(Zn.end)),xa(He);let pl=Gn(Zn,Vs,He);if(pl>0){if((He&131)===0&&(ct(),An=!0),H&&He&60&&!_s(Vs.pos)){let ma=Tb(Vs);Wn(ma.pos,!!(He&512),!0)}vr(pl),H=!1}else Zn&&He&512&&cr()}if(H){let pl=Tb(Vs);Wn(pl.pos)}else H=C;te=Vs.pos,dn(Vs,k,bt,lo),An&&(li(),An=!1),Zn=Vs}let Jt=Zn?Yi(Zn):0,On=Kt||!!(Jt&2048),Xr=lr&&He&64&&He&16;Xr&&(Zn&&!On?Ea(27,Zn.end,St,Zn):St(",")),Zn&&(Q?Q.end:-1)!==Zn.end&&He&60&&!On&&Ot(Xr&&Wt?.end?Wt.end:Zn.end),He&128&&li();let on=xo(Q,ke[hr+at-1],He,Wt);on?vr(on):He&2097408&&cr()}function fi(k,Q){if(Q.pos<k.end)return!1;k=ns(k),Q=ns(Q);let ke=k.parent;if(!ke||ke!==Q.parent)return!1;let He=KI(k),bt=He?.indexOf(k);return bt!==void 0&&bt>-1&&He.indexOf(Q)===bt+1}function Gn(k,Q,ke){if(ke&2||ze){if(k===void 0||Q===void 0)return 0;if(j&&!wi(k)&&!wi(Q))return ze&&fi(k,Q)?Gt(He=>Yx(k,Q,j,He)):!ze&&so(k,Q)?lS(k,Q,j)?0:1:ke&65536?1:0;if(Lr(k,ke)||Lr(Q,ke))return 1}else if(pT(Q))return 1;return ke&1?1:0}function so(k,Q){return k=ns(k),k.parent&&k.parent===ns(Q).parent}function xo(k,Q,ke,He){if(ke&2||ze){if(ke&65536)return 1;if(Q===void 0)return!k||j&&Zd(k,j)?0:1;if(j&&k&&!_s(k.pos)&&!wi(Q)&&(!Q.parent||Q.parent===k)){if(ze){let bt=He&&!_s(He.end)?He.end:Q.end;return Gt(hr=>zI(bt,k.end,j,hr))}return VI(k,Q,j)?0:1}if(Lr(Q,ke))return 1}return ke&1&&!(ke&131072)?1:0}function xa(k){switch(k&60){case 0:break;case 16:St(",");break;case 4:cr(),St("|");break;case 32:cr(),St("*"),cr();break;case 8:cr(),St("&");break}}function Wo(k){if(Mr(k)){let Q=Oh(k.text);if(Q)return Tu(Q),vr(),!0}else for(let Q of k.sourceFiles)if(Wo(Q))return!0}function pt(k,Q,ke=!0){if(k===2)return Vo(Ua(Q,cn));if(k===4){switch(Q.kind){case 89:return Vo(Q);case 163:return O(Q);case 242:return Nr(Q);case 149:return ui(Q);case 158:return xi(Q);case 169:return go(Q);case 237:return Ts(Q);case 238:return yp(Q);case 151:return vs(Q);case 248:return ny(Q);case 240:return Sm(Q);case 161:return jr(Q);case 257:return ty(Q);case 157:return ry(Q);case 166:return aa(Q);case 256:return hs(Q);case 251:return mp(Q);case 250:return ed(Q);case 247:return bu(Q);case 299:return Cu(Q);case 301:return iy(Q)}if(Xs(Q)&&(k=1,u!==Vg)){let He=u(k,Q)||Q;He!==Q&&(Q=He,hn&&(Q=hn(Q)))}}if(k===1)switch(Q.kind){case 16:return Et(Q);case 11:case 13:return Qt(Q);case 89:return Vo(Q);case 290:return zr(Q);case 269:return zn(Q);case 272:return fp(Q);case 281:return _u(Q);case 286:return xu(Q)}if(fc(Q.kind))return ms(Q,Tr);if(lN(Q.kind))return ms(Q,St);console.warn("todo - implment me - pipelineEmitWithHintWorker "+I.formatSyntaxKind(Q.kind))}function ic(k){le.writeLiteral(k)}function Io(k){le.writeStringLiteral(k)}function ul(k){le.write(k)}function Ko(k,Q){le.writeSymbol(k,Q)}function St(k){le.writePunctuation(k)}function kn(){le.writeTrailingSemicolon(";")}function Tr(k){le.writeKeyword(k)}function sr(k){le.writeOperator(k)}function Bc(k){le.writeParameter(k)}function Tu(k){le.writeComment(k)}function cr(){le.writeSpace(" ")}function dl(k){le.writeProperty(k)}function Xi(k){le.nonEscapingWrite?le.nonEscapingWrite(k):le.write(k)}function vr(k=1){for(let Q=0;Q<k;Q++)le.writeLine(Q>0)}function ct(){le.increaseIndent()}function li(){le.decreaseIndent()}function yr(k,Q,ke,He,bt){return bt(Q,ke,He)}function $o(k,Q,ke,He){return gn?gs(k,ke,Q):yr(He,k,ke,Q,gs)}function ms(k,Q){T&&T(k),Q(gi(k.kind)),_&&_(k)}function gs(k,Q,ke){let He=gi(k);return Q(He),ke<0?ke:ke+He.length}function Ws(k){for(;k.kind===289&&wi(k);)k=k.expression;return k}function Gt(k){I.assert(!!ze);let Q=k(!0);return Q===0?k(!1):Q}function F(k,Q,ke){return Yi(k)&262144?0:(k=Ws(k),Q=Ws(Q),ke=Ws(ke),pT(ke)?1:j&&!wi(k)&&!wi(Q)&&!wi(ke)?ze?Gt(He=>Yx(Q,ke,j,He)):lS(Q,ke,j)?0:1:0)}function se(k,Q,ke){if(Yi(k)&1)cr();else if(ze){let He=F(k,Q,ke);He?vr(He):cr()}else vr()}function rn(k){let Q=k.split(/\r\n?|\n/g),ke=HF(Q);for(let He of Q){let bt=ke?He.slice(ke):He;bt.length&&(vr(),Ft(bt))}}function et(k,Q){k?(ct(),vr(k)):Q&&cr()}function Br(k,Q){k&&li(),Q&&li()}function Wr(k,Q){if(Pi(k)&&k.textSourceNode)return Wr(k.textSourceNode,Q);let ke=j,He=!!ke&&!!k.parent&&!wi(k);if(Gf(k)){if(!He||Dt(k)!==ns(ke))return Mo(k)}else if(I.assertNode(k,Hy),!He)return k.text;return Vd(ke,k,Q)}function Qt(k){Et(k)}function Et(k){let Q=Ji(k,e.neverAsciiEscape);(e.sourceMap||e.inlineSourceMap)&&k.kind===16?ic(Q):Io(Q)}function zr(k){let Q=k.elements,ke=k.multiLine?65536:0;Ze(k,Q,4195026|ke,qe.parenthesizeExpressionForDisallowedComma)}function Ji(k,Q){if(k.kind===16&&k.textSourceNode){let He=k.textSourceNode;if(cn(He)||yc(He)||Ju(He)){let bt=Ju(He)?He.text:Wr(He);return Q||Yi(k)&16777216?`"${rf(bt)}"`:`"${uD(bt)}"`}else return Ji(He,Q)}let ke=(Q?1:0)|(e.terminateUnterminatedLiterals?4:0)|(e.target&&e.target>=1?8:0);return QI(k,j,ke)}function Vo(k){(k.symbol?Ko:Ft)(Wr(k,!1),k.symbol),Be(k,lm(k),53776)}function wa(k){Ie.push(ge),ge=0,Ee.push(z),!(k&&Yi(k)&1048576)&&(Ae.push(Qe),Qe=0,ve.push($e),$e=void 0,ye.push(ae))}function Ga(k){ge=Ie.pop(),z=Ee.pop(),!(k&&Yi(k)&1048576)&&(Qe=Ae.pop(),$e=ve.pop(),ae=ye.pop())}function hc(k){if(k)switch(k.kind){case 174:case 175:case 152:Ks(k.name);break}}function Ks(k){k&&(qp(k)?E(k):oo(k)&&Hr(k))}function Hr(k){if(k)switch(k.kind){case 236:Ln(k.statements,Hr);break;case 245:case 246:Hr(k.statement);break;case 253:Hr(k.thenStatement),Hr(k.elseStatement);break;case 243:Hr(k.initializer),Hr(k.statement);case 244:Hr(k.expression),Hr(k.statement);break;case 256:Hr(k.caseBlock);break;case 240:Ln(k.clauses,Hr);break;case 299:case 301:Ln(k.statements,Hr);break;case 255:Hr(k.block);break;case 242:Hr(k.declarationList);break;case 238:Ln(k.declarations,Hr);break;case 237:case 149:case 266:Ks(k.name);break;case 169:Ks(k.name),Yi(k)&1048576&&(Ln(k.parameters,Hr),Hr(k.body));break;case 265:Ln(k.elements,Hr);break}}function Sc(k,Q){let ke,He;if(Q?(ke=z,He=Ee):(ke=ae,He=ye),ke?.has(k))return!0;for(let bt=He.length-1;bt>=0;bt--)if(ke!==He[bt]&&(ke=He[bt],ke?.has(k)))return!0;return!1}function Oa(k,Q){return jc(k,Q)&&!Sc(k,Q)&&!ne.has(k)}function jc(k,Q){return j?CI(j,k,i):!0}function is(k,Q=Oa,ke,He,bt,hr,at){if(k.length>0&&k.charCodeAt(0)===35&&(k=k.slice(1)),hr.length>0&&hr.charCodeAt(0)===35&&(hr=hr.slice(1)),ke){let Wt=fu(bt,hr,k,at);if(Q(Wt,bt))return He?Fi(Wt):ne.add(Wt),Wt}k.charCodeAt(k.length-1)!==95&&(k+="_");let lr=1;for(;;){let Wt=fu(bt,hr,k+lr,at);if(Q(Wt,bt))return He?Fi(Wt):ne.add(Wt),Wt;lr++}}function $a(k,Q,ke,He,bt){switch(k.kind){case 89:return is(Wr(k),Oa,!!(ke&16),!!(ke&8),Q,He,bt);case 169:{I.assert(!He&&!bt&&!Q);let hr=k.name;if(hr&&!qp(hr))return $a(hr,!1,ke,He,bt);I.fail("shouldn't be here")}case 274:I.fail("implement me");case 147:return Ca(0,!0,Q,He,bt);default:return Ca(0,!1,Q,He,bt)}}function ln(k,Q,ke,He,bt){let hr=za(k),at=Q?me:ce;return at[hr]||(at[hr]=$a(k,Q,ke??0,tp(He,E),tp(bt)))}function ba(k){switch(k){case"":return Qe;case"#":return ge;default:return $e?.get(k)??0}}function Kn(k,Q){switch(k){case"":Qe=Q;break;case"#":ge=Q;break;default:$e??($e=new Map),$e.set(k,Q);break}}function Fi(k){(!ae||ae===ko(ye))&&(ae=new Set),ae.add(k)}function Ca(k,Q,ke,He,bt){He.length>0&&He.charCodeAt(0)===35&&(He=He.slice(1));let hr=fu(ke,He,"",bt),at=ba(hr);if(k&&!(at&k)){let Wt=fu(ke,He,k===268435456?"_i":"_n",bt);if(Oa(Wt,ke))return at|=k,Q&&Fi(Wt),Kn(hr,at),Wt}for(;;){let lr=at&268435455;if(at++,lr!==8&&lr!==13){let Wt=lr<26?"_"+String.fromCharCode(97+lr):"_"+(lr-26),C=fu(ke,He,Wt,bt);if(Oa(C,ke))return Q&&Fi(C),Kn(hr,at),C}}}function b(k){let Q=k.emitNode.autoGenerate,ke=tp(Q.prefix,E),He=tp(Q.suffix);switch(Q.flags&7){case 1:return Ca(0,!!(Q.flags&8),yc(k),ke,He);case 2:return I.assertNode(k,cn),Ca(268435456,!!(Q.flags&8),!1,ke,He);case 3:return is(Mo(k),Q.flags&32?jc:Oa,!!(Q.flags&16),!!(Q.flags&8),yc(k),ke,He)}return I.fail(`Unsupported GeneratedIdentifierKind: ${I.formatEnum(Q.flags&7,My,!0)}.`)}function E(k){let Q=k.emitNode.autoGenerate;if((Q.flags&7)===4)return ln(dL(k),yc(k),Q.flags,Q.prefix,Q.suffix);{let ke=Q.id;return V[ke]||(V[ke]=b(k))}}function O(k){wa(k),Ln(k.members,hc),St("{");let Q=Yi(k)&1?768:32897;Be(k,k.members,Q|524288),St("}"),Ga(k)}function W(k,Q){Be(k,Q,2359808);let ke=ko(Q);return ke&&!_s(ke.end)?ke.end:k.pos}function he(k,Q,ke){return Q?.length?W(k,Q):k.pos}function be(k,Q,ke){let He=Yi(k)&131072;He&&ct(),wa(k),Ln(k.parameters,Hr),Q(k),ke(k),Ga(k),He&&li()}function vn(k,Q){let ke=Iy(Q);return ke&&ke.pos===k.pos&&Hu(k)&&!k.type&&!Tn(k.modifiers)&&!Tn(ke.modifiers)&&!ke.dotDotDotToken&&!ke.type&&!ke.initializer&&cn(ke.name)}function qr(k,Q){Be(k,Q,2576)}function Lt(k,Q){vn(k,Q)?Be(k,Q,528):qr(k,Q)}function pr(k){Lt(k,k.parameters),cr(),St("=>")}function gt(k){cr(),Sn(k.type)}function Yt(k,Q){if(!k)return;let ke=Ft;Ft=Q,Sn(k),Ft=ke}function ui(k){he(k,k.modifiers,!0),yf(k.type),Yt(k.name,Bc),Sn(k.dotDotDotToken),oy(k.initializer,k.type?k.type.end:k.name?k.name.end:k.modifiers?k.modifiers.end:k.pos,k,qe.parenthesizeExpressionForDisallowedComma)}function xi(k){be(k,pr,gt)}function Nr(k){he(k,k.modifiers,!1),yf(k.type),Sn(k.declarationList),kn()}function jr(k){Sn(k.elementType,qe.parenthesizeNonArrayTypeOfPostfixType),St("*")}function go(k){Ri(k)}function Ri(k){he(k,k.modifiers,!1),yf(k.type),Sn(k.asteriskToken),cr(),Fo(k.name),be(k,gp,$r)}function $r(k){let Q=k.body;Q?oc(Q):kn()}function oc(k){Hr(k),p?.(k),cr(),St("{"),ct();let Q=Uc(k)?Qa:hu;_c(k,k.statements,Q),li(),$o(19,k.statements.end,St,k),m?.(k)}function Qa(k){hu(k,!0)}function hu(k,Q){let ke=Ol(k.statements),He=le.getTextPos();Yu(k),ke===0&&He===le.getTextPos()&&Q?(li(),Be(k,k.statements,768),ct()):Be(k,k.statements,1,void 0,ke)}function co(k){let Q=lL(k);return Q&&fd(Q,aL)}function Yu(k){let Q=!1,ke=k.kind===177?k:void 0;if(ke&&y===0)return;let He=ke?ke.sourceFiles.length:1;for(let bt=0;bt<He;bt++){let hr=ke?ke.sourceFiles[bt]:k,at=Mr(hr)?hr:j,lr=e.noEmitHelpers||!!at&&pL(at),Wt=Mr(hr)&&!ue,C=co(hr);if(C)for(let H of C){if(H.scoped){if(ke)continue}else{if(lr)continue;if(Wt){if($.get(H.name))continue;$.set(H.name,!0)}}typeof H.text=="string"?rn(H.text):rn(H.text(pp)),Q=!0}}return Q}function pp(k){return is(k,jc,!0,!1,!1,"","")}function Ol(k,Q,ke){let He=!!Q;for(let bt=0;bt<k.length;bt++){let hr=k[bt];if(ob(hr))(ke?!ke.has(hr.expression.text):!0)&&(He&&(He=!1,pn(Q)),vr(),Sn(hr),ke&&ke.add(hr.expression.text));else return bt}return k.length}function eo(k){let Q=j&&GI(j.text,Cr(),le,gf,k,B,Kt);Q&&(Bt?Bt.push(Q):Bt=[Q])}function mf(k,Q){return e.onlyPrintJsDocStyle?ND(k,Q)||yS(k,Q):!0}function gf(k,Q,ke,He,bt,hr){!j||!mf(j.text,He)||(Rl(He),pb(k,Q,ke,He,bt,hr),Rl(bt))}function Rl(k){if(gn||_s(k)||Le(Pn))return;let{line:Q,character:ke}=Go(Pn,k);je.addMapping(le.getLine(),le.getColumn(),Ut,Q,ke,void 0)}function _c(k,Q,ke){er();let{pos:He,end:bt}=Q,hr=Yi(k),at=He<0||(hr&1024)!==0,lr=Kt||bt<0||(hr&2048)!==0;at||eo(Q),Ti(),hr&4096&&!Kt?(Kt=!0,ke(k),Kt=!1):ke(k),er(),lr||(Ui(Q.end,!0),Zt&&!le.isAtStartOfLine()&&le.writeLine()),Ti()}function Ui(k,Q){Zt=!1,Q?ea(k,Jc):k===0&&console.debug("todo - emitLeadingComments")}function Jc(k,Q,ke,He,bt){!j||!mf(j.text,k)||(Zt||($I(Cr(),le,bt,k),Zt=!0),Rl(k),pb(j.text,Cr(),le,k,Q,B),Rl(Q),He?le.writeLine():ke===3&&le.writeSpace(" "))}function ys(k){if(!j)return;let Q=Ro(Bt).detachedCommentEndPos;Bt.length-1?Bt.pop():Bt=void 0,bx(j.text,Q,k,Q)}function ea(k,Q){j&&(re===-1||k!==re)&&(Xu(k)?ys(Q):bx(j.text,k,Q,k))}function Xu(k){return Bt!==void 0&&Ro(Bt).nodePos===k}function Uc(k){if(Yi(k)&1)return!0;if(k.multiLine||!wi(k)&&j&&!Zd(k,j)||Ir(k,Ta(k.statements),2)||xo(k,ko(k.statements),2,k.statements))return!1;let Q;for(let ke of k.statements){if(Gn(Q,ke,2)>0)return!1;Q=ke}return!0}function Ts(k){k.type&&nu(k.type)&&St("*"),Sn(k.name),oy(k.initializer,k.type?.end??k.name.emitNode?.typeNode?.end??k.name.end,k,qe.parenthesizeExpressionForDisallowedComma)}function vs(k){be(k,gp,Kc)}function pa(k){return k.kind===2||!!k.hasTrailingNewLine}function fa(k){if(!j)return!1;let Q=Dl(j.text,k.pos);if(Q){let ke=io(k);if(ke&&Vu(ke.parent))return!0}return Tn(Q,pa)||Tn(xD(k),pa)?!0:Ib(k)?k.pos!==k.expression.pos&&Tn(Hd(j.text,k.expression.pos),pa)?!0:fa(k.expression):!1}function Su(k){if(!Kt&&Ib(k)&&fa(k)){let Q=io(k);if(Q&&Vu(Q)){let ke=we.createParenthesizedExpression(k.expression);return qu(ke,k),da(ke,Q),ke}return we.createParenthesizedExpression(k)}return k}function Zu(k,Q){k&&(cr(),Gr(k,Q))}function _u(k){Gr(k.expression,qe.parenthesizeLeftSideOfAccess),Ea(22,k.expression.end,St,k),Gr(k.argumentExpression),Ea(23,k.argumentExpression.end,St,k)}function xu(k){Gr(k.expression,qe.parenthesizeLeftSideOfAccess);let Q=La(we.createToken(40),k.expression.end,k.name.pos),ke=F(k,k.expression,Q),He=F(k,Q,k.name);et(ke,!1),Ea(Q.kind,k.expression.end,St,k),et(He,!1),Sn(k.name),Br(ke,He)}function fp(k){let Q=Qx(k)&16;Q&&(St("("),ic("0"),St(","),cr()),Gr(k.expression,qe.parenthesizeLeftSideOfAccess),Q&&St(")"),Ze(k,k.arguments,2576,qe.parenthesizeExpressionForDisallowedComma)}function ny(k){Ea(116,k.pos,Tr,k),Zu(k.expression&&Su(k.expression),Su),kn()}function hs(k){let Q=Ea(117,k.pos,Tr,k);cr(),Ea(20,Q,St,k),Gr(k.expression),Ea(21,k.expression.end,St,k),cr(),Sn(k.caseBlock)}function hm(k){k&&(cr(),Sn(k))}function Wc(k,Q){Be(k,Q,53776,Yn)}function aa(k){Sn(k.typeName),Wc(k,k.typeArguments)}function ty(k){Gr(k.literal)}function ry(k){Be(k,k.types,516,qe.parenthesizeConstituentTypeOfUnionType)}function Sm(k){Ea(17,k.pos,St,k),Be(k,k.clauses,129),Ea(19,k.clauses.end,St,k,!0)}function mp(k){Ea(121,k.pos,Tr,k),hm(k.label),kn()}function ed(k){Ea(106,k.pos,Tr,k),hm(k.label),kn()}function bu(k){Gr(k.expression,qe.parenthesizeExpressionOfExpressionStatement),(!j||!Ig(j)||wi(k.expression))&&kn()}function gp(k){qr(k,k.parameters)}function Cu(k){Ea(113,k.pos,Tr,k),cr(),Gr(k.expression,qe.parenthesizeExpressionForDisallowedComma),_m(k,k.statements,k.expression.end)}function iy(k){let Q=Ea(114,k.pos,Tr,k);_m(k,k.statements,Q)}function _m(k,Q,ke){let He=Q.length===1&&(!j||wi(k)||wi(Q[0])||aT(k,Q[0],j)),bt=163969;He?($o(61,ke,St,k),cr(),bt&=-130):Ea(61,ke,St,k),Be(k,Q,bt)}function Kc(k){kn()}function yp(k){Be(k,k.declarations,528)}function yf(k){k&&(Sn(k),cr())}function oy(k,Q,ke,He){k&&(cr(),Ea(74,Q,sr,ke),cr(),Gr(k,He))}function Ea(k,Q,ke,He,bt){let hr=io(He),at=hr&&hr.kind===He.kind,lr=Q;if(at&&j&&(Q=Oi(j.text,Q)),at&&He.pos!==lr){let Wt=bt&&j&&!Il(lr,Q,j);Wt&&ct(),Ot(lr),Wt&&li()}return!v&&(k===17||k===19)?Q=$o(k,Q,ke,He):Q=gs(k,ke,Q),at&&He.end!==Q&&Wn(Q,!1,!1),Q}}function RY(){let e=[];return e[1024]=["{","}"],e[2048]=["(",")"],e[4096]=["<",">"],e[8192]=["[","]"],e[4194304]=["({","})"],e}function NJ(e){return EJ[e&4209664][0]}function DJ(e){return EJ[e&4209664][1]}function C6(e,t,i,o,c){let u;return e.rootDir?(u=mo(e.rootDir,i),c?.(e.rootDir)):u=yJ(t(),i,o),u&&u[u.length-1]!==Jo&&(u+=Jo),u}function MY(e,t,i,o){t(e)}function BY(e,t,i,o){t(e,i.select(o))}function jY(e,t,i,o){t(e,i)}function PJ(e,t){return e.length===1?MY:typeof t=="object"?BY:jY}function E6(e,t){let i={removeComments:!0,newLine:1,target:2},o=JY(i,{hasGlobalName:()=>!1});var c=Yd(i),u=vg(c);return o.writeNode(4,e,t,u),u.getText()}function JY(e={},t={}){var{hasGlobalName:i,onEmitNode:o=ET,isEmitNotificationEnabled:c,substituteNode:u=Vg,onBeforeEmitNode:p,onAfterEmitNode:m,onBeforeEmitNodeArray:g,onAfterEmitNodeArray:S,onBeforeEmitToken:T,onAfterEmitToken:_}=t,P=!!e.extendedDiagnostics,v=!!e.omitBraceSourceMapPositions,B=Yd(e),y=1,$=new Map,j,ce,me,V,ne,ve,$e,Ie,ge,Ae,Qe,ye,ae,Ee,z,ze=e.preserveSourceNewlines,te,le,bn,Ft=ul,ue,gn=!0,je,Pn,Ut=-1,kr,fn=-1,re=-1,dt=-1,ot=-1,Nt,Bt,Zt=!1,Kt=!!e.removeComments,ar,hn,{enter:er,exit:Ti}=Or.createTimerIf(P,"commentTime","beforeComment","afterComment"),qe=we.parenthesizer,Yn={select:C=>C===0?qe.parenthesizeLeadingTypeArgument:void 0},zn=nn();return hi(),{printNode:jt,printList:nr,printFile:qi,printBundle:Vr,writeNode:fe,writeList:_e,writeFile:Ve,writeBundle:De};function jt(C,H,Ce){switch(C){case 0:I.assert(Mr(H),"Expected a SourceFile node.");break;case 2:I.assert(cn(H),"Expected an Identifier node.");break;case 1:I.assert(Xs(H),"Expected an Expression node.");break}switch(H.kind){case 176:return qi(H);case 177:return Vr(H)}return fe(C,H,Ce,tn()),Ye()}function nr(C,H,Ce){return _e(C,H,Ce,tn()),Ye()}function Vr(C){return De(C,tn(),void 0),Ye()}function qi(C){return Ve(C,tn(),void 0),Ye()}function fe(C,H,Ce,dn){let Zn=le;oi(dn,void 0),ee(C,H,Ce),hi(),le=Zn}function _e(C,H,Ce,dn){let Zn=le;oi(dn,void 0),Ce&&pn(Ce),Be(void 0,H,C),hi(),le=Zn}function De(C,H,Ce){ue=!1;let dn=le;oi(H,Ce),console.warn("todo - implment me - writeBundle"),Wo(C);for(let Zn of C.sourceFiles)ee(0,Zn,Zn);hi(),le=dn}function Ve(C,H,Ce){console.warn("todo - implment me - writeFile"),ue=!0;let dn=le;oi(H,Ce),Wo(C),ee(0,C,C),hi(),le=dn}function tn(){return bn||(bn=vg(B))}function Ye(){let C=bn.getText();return bn.clear(),C}function ee(C,H,Ce){Ce&&pn(Ce),Xo(C,H,void 0)}function pn(C){j=C,Nt=void 0,Bt=void 0,C&&X(C)}function X(C){if(!gn){if(Pn=C,C===kr){Ut=fn;return}Le(C)||(Ut=je.addSource(C.fileName),e.inlineSources&&je.setSourceContent(Ut,C.text),kr=C,fn=Ut)}}function Le(C){return mc(C.fileName,".json")}function oi(C,H){C&&e.omitTrailingSemicolon&&(C=ub(C)),le=C,je=H,gn=!le||!je}function hi(){ce=[],me=[],V=[],ne=new Set,ve=[],$e=new Map,Ie=[],ge=0,Ae=[],Qe=0,ye=[],ae=void 0,Ee=[],z=void 0,j=void 0,Nt=void 0,Bt=void 0,oi(void 0,void 0)}function Cr(){return Nt||(Nt=Qs(I.checkDefined(j)))}function Sn(C,H){C!==void 0&&Xo(4,C,H)}function Fo(C){C!==void 0&&Xo(2,C,void 0)}function Gr(C,H){C!==void 0&&Xo(1,C,H)}function No(C){ze&&Qx(C)&4&&(ze=!1)}function Oo(C){ze=C}function Xo(C,H,Ce){hn=Ce,Un(0,C,H)(C,H),hn=void 0}function qa(C){return!Kt&&!Mr(C)}function Zo(C){return!gn&&!Mr(C);}function Fe(C,H){let Ce=ai(1,C,H);I.assertIsDefined(ar),H=ar,ar=void 0,Ce(C,H)}function Mn(C,H){let Ce=ai(2,C,H),dn=re,Zn=dt,An=ot;lt(H),Ce(C,H),ir(H,dn,Zn,An)}function lt(C){console.warn("todo - implment me - emitCommentsBeforeNode")}function ir(C,H,Ce,dn){console.warn("todo - implment me - emitCommentsAfterNode")}function nn(){return fT(C,H,Ce,dn,Zn,void 0);function C(Jt,On){if(On){On.stackIndex++,On.preserveSourceNewlinesStack[On.stackIndex]=ze,On.containerPosStack[On.stackIndex]=re,On.containerEndStack[On.stackIndex]=dt,On.declarationListContainerEndStack[On.stackIndex]=ot;let Xr=On.shouldEmitCommentsStack[On.stackIndex]=qa(Jt),on=On.shouldEmitSourceMapsStack[On.stackIndex]=Zo(Jt);p?.(Jt),Xr&&lt(Jt),on&&xt(Jt),No(Jt)}else On={stackIndex:0,preserveSourceNewlinesStack:[void 0],containerPosStack:[-1],containerEndStack:[-1],declarationListContainerEndStack:[-1],shouldEmitCommentsStack:[!1],shouldEmitSourceMapsStack:[!1]};return On}function H(Jt,On,Xr){return An(Jt,Xr,"left")}function Ce(Jt,On,Xr){let on=Jt.kind!==27,lo=F(Xr,Xr.left,Jt),Vs=F(Xr,Jt,Xr.right);et(lo,on),Ot(Jt.pos),ms(Jt,Jt.kind===103?Tr:sr),Wn(Jt.end,!0),et(Vs,!0)}function dn(Jt,On,Xr){return An(Jt,Xr,"right")}function Zn(Jt,On){let Xr=F(Jt,Jt.left,Jt.operatorToken),on=F(Jt,Jt.operatorToken,Jt.right);if(Br(Xr,on),On.stackIndex>0){let lo=On.preserveSourceNewlinesStack[On.stackIndex],Vs=On.containerPosStack[On.stackIndex],pl=On.containerEndStack[On.stackIndex],ma=On.declarationListContainerEndStack[On.stackIndex],Tp=On.shouldEmitCommentsStack[On.stackIndex],xm=On.shouldEmitSourceMapsStack[On.stackIndex];Oo(lo),xm&&void 0,Tp&&ir(Jt,Vs,pl,ma),m?.(Jt),On.stackIndex--}}function An(Jt,On,Xr){let on=Xr==="left"?qe.getParenthesizeLeftSideOfBinaryForOperator(On.operatorToken.kind):qe.getParenthesizeRightSideOfBinaryForOperator(On.operatorToken.kind),lo=Un(0,1,Jt);if(lo===Fe&&(I.assertIsDefined(ar),Jt=on(Ua(ar,Xs)),lo=ai(1,1,Jt),ar=void 0),(lo===Mn||lo===ht||lo===Pe)&&gr(Jt))return Jt;hn=on,lo(1,Jt)}}function Un(C,H,Ce){switch(C){case 0:if(o!==ET&&(!c||c(Ce)))return qt;case 1:if(u!==Vg&&(ar=u(H,Ce)||Ce)!==Ce)return hn&&(ar=hn(ar)),Fe;case 2:if(qa(Ce))return Mn;case 3:if(Zo(Ce))return ht;case 4:return Pe;default:return I.assertNever(C)}}function ht(C,H){let Ce=ai(3,C,H);xt(H),Ce(C,H)}function xt(C){console.warn("todo - implment me - emitSourceMapsBeforeNode")}function Ur(C){}function ai(C,H,Ce){return Un(C+1,H,Ce)}function qt(C,H){let Ce=ai(0,C,H);o(C,H,Ce)}function Pe(C,H){if(p?.(H),ze){let Ce=ze;No(H),pt(C,H),Oo(Ce)}else pt(C,H);m?.(H),hn=void 0}function Be(C,H,Ce,dn,Zn,An){ut(Sn,C,H,Ce|(C&&Yi(C)&2?65536:0),dn,Zn,An)}function Ze(C,H,Ce,dn,Zn,An){ut(Gr,C,H,Ce,dn,Zn,An)}function Wn(C,H,Ce){Kt||(er(),console.warn("todo - implment me - emitTrailingCommentsOfPosition"),Ti())}function ut(C,H,Ce,dn,Zn,An=0,Jt=Ce?Ce.length-An:0){if(Ce===void 0&&dn&16384)return;let Xr=Ce===void 0||An>=Ce.length||Jt===0;if(Xr&&dn&32768){g?.(Ce),S?.(Ce);return}dn&4209664&&(St(NJ(dn)),Xr&&Ce&&Wn(Ce.pos,!0)),g?.(Ce),Xr?dn&1&&!(ze&&(!H||j&&Zd(H,j)))?vr():dn&256&&!(dn&524288)&&cr():Cn(C,H,Ce,dn,Zn,An,Jt,Ce.hasTrailingComma,Ce),S?.(Ce),dn&4209664&&(Xr&&Ce&&Ot(Ce.end),St(DJ(dn)))}function Ot(C){Kt||C===-1||console.warn("todo - implment me - emitLeadingCommentsOfPosition")}function Ir(C,H,Ce){if(Ce&2||ze){if(Ce&65536)return 1;if(H===void 0)return!C||j&&Zd(C,j)?0:1;if(H.pos===te)return 0;if(j&&C&&!_s(C.pos)&&!wi(H)&&(!H.parent||ns(H.parent)===ns(C)))return ze?Gt(dn=>WI(H.pos,C.pos,j,dn)):aT(C,H,j)?0:1;if(Lr(H,Ce))return 1}return Ce&1?1:0}function Lr(C,H){if(wi(C)){let Ce=pT(C);return Ce===void 0?(H&65536)!==0:Ce}return(H&65536)!==0}function Cn(C,H,Ce,dn,Zn,An,Jt,On,Xr){let on=(dn&262144)===0,lo=on,Vs=Ir(H,Ce[An],dn);Vs?(vr(Vs),lo=!1):dn&256&&cr(),dn&128&&ct();let pl=PJ(C,Zn),ma,Tp=!1;for(let Ra=0;Ra<Jt;Ra++){let bo=Ce[An+Ra];if(dn&32)vr(),xa(dn);else if(ma){dn&60&&ma.end!==(H?H.end:-1)&&(Yi(ma)&2048||Ot(ma.end)),xa(dn);let Do=Gn(ma,bo,dn);if(Do>0){if((dn&131)===0&&(ct(),Tp=!0),lo&&dn&60&&!_s(bo.pos)){let bm=Tb(bo);Wn(bm.pos,!!(dn&512),!0)}vr(Do),lo=!1}else ma&&dn&512&&cr()}if(lo){let Do=Tb(bo);Wn(Do.pos)}else lo=on;te=bo.pos,pl(bo,C,Zn,Ra),Tp&&(li(),Tp=!1),ma=bo}let xm=ma?Yi(ma):0,Eu=Kt||!!(xm&2048),hp=On&&dn&64&&dn&16;hp&&(ma&&!Eu?Wt(27,ma.end,St,ma):St(",")),ma&&(H?H.end:-1)!==ma.end&&dn&60&&!Eu&&Ot(hp&&Xr?.end?Xr.end:ma.end),dn&128&&li();let e_=xo(H,Ce[An+Jt-1],dn,Xr);e_?vr(e_):dn&2097408&&cr()}function fi(C,H){if(H.pos<C.end)return!1;C=ns(C),H=ns(H);let Ce=C.parent;if(!Ce||Ce!==H.parent)return!1;let dn=KI(C),Zn=dn?.indexOf(C);return Zn!==void 0&&Zn>-1&&dn.indexOf(H)===Zn+1}function Gn(C,H,Ce){if(Ce&2||ze){if(C===void 0||H===void 0)return 0;if(j&&!wi(C)&&!wi(H))return ze&&fi(C,H)?Gt(dn=>Yx(C,H,j,dn)):!ze&&so(C,H)?lS(C,H,j)?0:1:Ce&65536?1:0;if(Lr(C,Ce)||Lr(H,Ce))return 1}else if(pT(H))return 1;return Ce&1?1:0}function so(C,H){return C=ns(C),C.parent&&C.parent===ns(H).parent}function xo(C,H,Ce,dn){if(Ce&2||ze){if(Ce&65536)return 1;if(H===void 0)return!C||j&&Zd(C,j)?0:1;if(j&&C&&!_s(C.pos)&&!wi(H)&&(!H.parent||H.parent===C)){if(ze){let Zn=dn&&!_s(dn.end)?dn.end:H.end;return Gt(An=>zI(Zn,C.end,j,An))}return VI(C,H,j)?0:1}if(Lr(H,Ce))return 1}return Ce&1&&!(Ce&131072)?1:0}function xa(C){switch(C&60){case 0:break;case 16:St(",");break;case 4:cr(),St("|");break;case 32:cr(),St("*"),cr();break;case 8:cr(),St("&");break}}function Wo(C){if(Mr(C)){let H=Oh(C.text);if(H)return Tu(H),vr(),!0}else for(let H of C.sourceFiles)if(Wo(H))return!0}function pt(C,H,Ce=!0){if(C===2)return Vo(Ua(H,cn));if(C===4)switch(H.kind){case 89:return Vo(H);case 163:return O(H);case 161:return $r(H);case 242:return Ri(H);case 149:return ui(H);case 158:return xi(H);case 169:return oc(H);case 237:return fa(H);case 238:return hr(H);case 151:return Su(H);case 248:return bu(H);case 240:return yp(H);case 236:return jr(H);case 256:return _m(H);case 251:return yf(H);case 250:return oy(H);case 247:return Ea(H);case 253:return iy(H);case 299:return Q(H);case 301:return ke(H);case 261:return Cu(H)}if(C===1)switch(H.kind){case 16:return Et(H);case 11:case 13:return Qt(H);case 89:return Vo(H);case 290:return zr(H);case 269:return mp(H);case 272:return ed(H);case 281:return Sm(H);case 289:return ry(H);case 282:return ty(H);case 298:return hm(H)}if(fc(H.kind))return ms(H,Tr);if(lN(H.kind))return ms(H,St);console.warn("todo - implment me - pipelineEmitWithHintWorker "+I.formatSyntaxKind(H.kind))}function ic(C){le.writeLiteral(C)}function Io(C){le.writeStringLiteral(C)}function ul(C){le.write(C)}function Ko(C,H){le.writeSymbol(C,H)}function St(C){le.writePunctuation(C)}function kn(){le.writeTrailingSemicolon(";")}function Tr(C){le.writeKeyword(C)}function sr(C){le.writeOperator(C)}function Bc(C){le.writeParameter(C)}function Tu(C){le.writeComment(C)}function cr(){le.writeSpace(" ")}function dl(C){le.writeProperty(C)}function Xi(C){le.nonEscapingWrite?le.nonEscapingWrite(C):le.write(C)}function vr(C=1){for(let H=0;H<C;H++)le.writeLine(H>0)}function ct(){le.increaseIndent()}function li(){le.decreaseIndent()}function yr(C,H,Ce,dn,Zn){return Zn(H,Ce,dn)}function $o(C,H,Ce,dn){return gn?gs(C,Ce,H):yr(dn,C,Ce,H,gs)}function ms(C,H){T&&T(C),H(gi(C.kind)),_&&_(C)}function gs(C,H,Ce){let dn=gi(C);return H(dn),Ce<0?Ce:Ce+dn.length}function Ws(C){for(;C.kind===289&&wi(C);)C=C.expression;return C}function Gt(C){I.assert(!!ze);let H=C(!0);return H===0?C(!1):H}function F(C,H,Ce){return Yi(C)&262144?0:(C=Ws(C),H=Ws(H),Ce=Ws(Ce),pT(Ce)?1:j&&!wi(C)&&!wi(H)&&!wi(Ce)?ze?Gt(dn=>Yx(H,Ce,j,dn)):lS(H,Ce,j)?0:1:0)}function se(C,H,Ce){if(Yi(C)&1)cr();else if(ze){let dn=F(C,H,Ce);dn?vr(dn):cr()}else vr()}function rn(C){let H=C.split(/\r\n?|\n/g),Ce=HF(H);for(let dn of H){let Zn=Ce?dn.slice(Ce):dn;Zn.length&&(vr(),Ft(Zn))}}function et(C,H){C?(ct(),vr(C)):H&&cr()}function Br(C,H){C&&li(),H&&li()}function Wr(C,H){if(Pi(C)&&C.textSourceNode)return Wr(C.textSourceNode,H);let Ce=j,dn=!!Ce&&!!C.parent&&!wi(C);if(Gf(C)){if(!dn||Dt(C)!==ns(Ce))return Mo(C)}else if(I.assertNode(C,Hy),!dn)return C.text;return Vd(Ce,C,H)}function Qt(C){Et(C)}function Et(C){let H=Ji(C,e.neverAsciiEscape);(e.sourceMap||e.inlineSourceMap)&&C.kind===16?ic(H):Io(H)}function zr(C){let H=C.elements,Ce=C.multiLine?65536:0;Ze(C,H,8914|Ce,qe.parenthesizeExpressionForDisallowedComma)}function Ji(C,H){if(C.kind===16&&C.textSourceNode){let dn=C.textSourceNode;if(cn(dn)||yc(dn)||Ju(dn)){let Zn=Ju(dn)?dn.text:Wr(dn);return H||Yi(C)&16777216?`"${rf(Zn)}"`:`"${uD(Zn)}"`}else return Ji(dn,H)}let Ce=(H?1:0)|(e.terminateUnterminatedLiterals?4:0)|(e.target&&e.target>=1?8:0);return QI(C,j,Ce)}function Vo(C){(C.symbol?Ko:Ft)(Wr(C,!1),C.symbol),Be(C,lm(C),53776)}function wa(C){Ie.push(ge),ge=0,Ee.push(z),!(C&&Yi(C)&1048576)&&(Ae.push(Qe),Qe=0,ve.push($e),$e=void 0,ye.push(ae))}function Ga(C){ge=Ie.pop(),z=Ee.pop(),!(C&&Yi(C)&1048576)&&(Qe=Ae.pop(),$e=ve.pop(),ae=ye.pop())}function hc(C){if(C)switch(C.kind){case 174:case 175:case 152:Ks(C.name);break}}function Ks(C){C&&(qp(C)?E(C):oo(C)&&Hr(C))}function Hr(C){if(C)switch(C.kind){case 236:Ln(C.statements,Hr);break;case 245:case 246:Hr(C.statement);break;case 253:Hr(C.thenStatement),Hr(C.elseStatement);break;case 243:Hr(C.initializer),Hr(C.statement);case 244:Hr(C.expression),Hr(C.statement);break;case 256:Hr(C.caseBlock);break;case 240:Ln(C.clauses,Hr);break;case 299:case 301:Ln(C.statements,Hr);break;case 255:Hr(C.block);break;case 242:Hr(C.declarationList);break;case 238:Ln(C.declarations,Hr);break;case 237:case 149:case 266:Ks(C.name);break;case 169:Ks(C.name),Yi(C)&1048576&&(Ln(C.parameters,Hr),Hr(C.body));break;case 265:Ln(C.elements,Hr);break}}function Sc(C,H){let Ce,dn;if(H?(Ce=z,dn=Ee):(Ce=ae,dn=ye),Ce?.has(C))return!0;for(let Zn=dn.length-1;Zn>=0;Zn--)if(Ce!==dn[Zn]&&(Ce=dn[Zn],Ce?.has(C)))return!0;return!1}function Oa(C,H){return jc(C,H)&&!Sc(C,H)&&!ne.has(C)}function jc(C,H){return j?CI(j,C,i):!0}function is(C,H=Oa,Ce,dn,Zn,An,Jt){if(C.length>0&&C.charCodeAt(0)===35&&(C=C.slice(1)),An.length>0&&An.charCodeAt(0)===35&&(An=An.slice(1)),Ce){let Xr=fu(Zn,An,C,Jt);if(H(Xr,Zn))return dn?Fi(Xr):ne.add(Xr),Xr}C.charCodeAt(C.length-1)!==95&&(C+="_");let On=1;for(;;){let Xr=fu(Zn,An,C+On,Jt);if(H(Xr,Zn))return dn?Fi(Xr):ne.add(Xr),Xr;On++}}function $a(C,H,Ce,dn,Zn){switch(C.kind){case 89:return is(Wr(C),Oa,!!(Ce&16),!!(Ce&8),H,dn,Zn);case 169:{I.assert(!dn&&!Zn&&!H);let An=C.name;if(An&&!qp(An))return $a(An,!1,Ce,dn,Zn);I.fail("shouldn't be here")}case 274:I.fail("implement me");case 147:return Ca(0,!0,H,dn,Zn);default:return Ca(0,!1,H,dn,Zn)}}function ln(C,H,Ce,dn,Zn){let An=za(C),Jt=H?me:ce;return Jt[An]||(Jt[An]=$a(C,H,Ce??0,tp(dn,E),tp(Zn)))}function ba(C){switch(C){case"":return Qe;case"#":return ge;default:return $e?.get(C)??0}}function Kn(C,H){switch(C){case"":Qe=H;break;case"#":ge=H;break;default:$e??($e=new Map),$e.set(C,H);break}}function Fi(C){(!ae||ae===ko(ye))&&(ae=new Set),ae.add(C)}function Ca(C,H,Ce,dn,Zn){dn.length>0&&dn.charCodeAt(0)===35&&(dn=dn.slice(1));let An=fu(Ce,dn,"",Zn),Jt=ba(An);if(C&&!(Jt&C)){let Xr=fu(Ce,dn,C===268435456?"_i":"_n",Zn);if(Oa(Xr,Ce))return Jt|=C,H&&Fi(Xr),Kn(An,Jt),Xr}for(;;){let On=Jt&268435455;if(Jt++,On!==8&&On!==13){let Xr=On<26?"_"+String.fromCharCode(97+On):"_"+(On-26),on=fu(Ce,dn,Xr,Zn);if(Oa(on,Ce))return H&&Fi(on),Kn(An,Jt),on}}}function b(C){let H=C.emitNode.autoGenerate,Ce=tp(H.prefix,E),dn=tp(H.suffix);switch(H.flags&7){case 1:return Ca(0,!!(H.flags&8),yc(C),Ce,dn);case 2:return I.assertNode(C,cn),Ca(268435456,!!(H.flags&8),!1,Ce,dn);case 3:return is(Mo(C),H.flags&32?jc:Oa,!!(H.flags&16),!!(H.flags&8),yc(C),Ce,dn)}return I.fail(`Unsupported GeneratedIdentifierKind: ${I.formatEnum(H.flags&7,My,!0)}.`)}function E(C){let H=C.emitNode.autoGenerate;if((H.flags&7)===4)return ln(dL(C),yc(C),H.flags,H.prefix,H.suffix);{let Ce=H.id;return V[Ce]||(V[Ce]=b(C))}}function O(C){wa(C),Ln(C.members,hc),St("{");let H=Yi(C)&1?768:32897;Be(C,C.members,H|524288),St("}"),Ga(C)}function W(C,H){Be(C,H,2359808);let Ce=ko(H);return Ce&&!_s(Ce.end)?Ce.end:C.pos}function he(C,H,Ce){return H?.length?W(C,H):C.pos}function be(C,H,Ce){let dn=Yi(C)&131072;dn&&ct(),wa(C),Ln(C.parameters,Hr),H(C),Ce(C),Ga(C),dn&&li()}function vn(C,H){let Ce=Iy(H);return Ce&&Ce.pos===C.pos&&Hu(C)&&!C.type&&!Tn(C.modifiers)&&!Tn(Ce.modifiers)&&!Ce.dotDotDotToken&&!Ce.type&&!Ce.initializer&&cn(Ce.name)}function qr(C,H){Be(C,H,2576)}function Lt(C,H){vn(C,H)?Be(C,H,528):qr(C,H)}function pr(C){Lt(C,C.parameters),cr(),St("=>")}function gt(C){cr(),Sn(C.type)}function Yt(C,H){if(!C)return;let Ce=Ft;Ft=H,Sn(C),Ft=Ce}function ui(C){he(C,C.modifiers,!0),Yt(C.name,Bc),Sn(C.dotDotDotToken),lr(C.initializer,C.type?C.type.end:C.name?C.name.end:C.modifiers?C.modifiers.end:C.pos,C,qe.parenthesizeExpressionForDisallowedComma)}function xi(C){be(C,pr,gt)}function Nr(C){return C.statements.length===0&&(!j||lS(C,C,j))}function jr(C){go(C,!C.multiLine&&Nr(C))}function go(C,H){Wt(17,C.pos,St,C);let Ce=H||Yi(C)&1?768:129;Be(C,C.statements,Ce),Wt(19,C.statements.end,St,C,!!(Ce&1))}function Ri(C){he(C,C.modifiers,!1),Sn(C.declarationList),kn()}function $r(C){Sn(C.elementType,qe.parenthesizeNonArrayTypeOfPostfixType),St("*")}function oc(C){Qa(C)}function Qa(C){he(C,C.modifiers,!1),Tr("function"),Sn(C.asteriskToken),cr(),Fo(C.name),be(C,k,hu)}function hu(C){let H=C.body;H?co(H):kn()}function co(C){Hr(C),p?.(C),cr(),St("{"),ct();let H=pa(C)?Yu:pp;ys(C,C.statements,H),li(),$o(19,C.statements.end,St,C),m?.(C)}function Yu(C){pp(C,!0)}function pp(C,H){let Ce=gf(C.statements),dn=le.getTextPos();eo(C),Ce===0&&dn===le.getTextPos()&&H?(li(),Be(C,C.statements,768),ct()):Be(C,C.statements,1,void 0,Ce)}function Ol(C){let H=lL(C);return H&&fd(H,aL)}function eo(C){let H=!1,Ce=C.kind===177?C:void 0;if(Ce&&y===0)return;let dn=Ce?Ce.sourceFiles.length:1;for(let Zn=0;Zn<dn;Zn++){let An=Ce?Ce.sourceFiles[Zn]:C,Jt=Mr(An)?An:j,On=e.noEmitHelpers||!!Jt&&pL(Jt),Xr=Mr(An)&&!ue,on=Ol(An);if(on)for(let lo of on){if(lo.scoped){if(Ce)continue}else{if(On)continue;if(Xr){if($.get(lo.name))continue;$.set(lo.name,!0)}}typeof lo.text=="string"?rn(lo.text):rn(lo.text(mf)),H=!0}}return H}function mf(C){return is(C,jc,!0,!1,!1,"","")}function gf(C,H,Ce){let dn=!!H;for(let Zn=0;Zn<C.length;Zn++){let An=C[Zn];if(ob(An))(Ce?!Ce.has(An.expression.text):!0)&&(dn&&(dn=!1,pn(H)),vr(),Sn(An),Ce&&Ce.add(An.expression.text));else return Zn}return C.length}function Rl(C){let H=j&&GI(j.text,Cr(),le,Ui,C,B,Kt);H&&(Bt?Bt.push(H):Bt=[H])}function _c(C,H){return e.onlyPrintJsDocStyle?ND(C,H)||yS(C,H):!0}function Ui(C,H,Ce,dn,Zn,An){!j||!_c(j.text,dn)||(Jc(dn),pb(C,H,Ce,dn,Zn,An),Jc(Zn))}function Jc(C){if(gn||_s(C)||Le(Pn))return;let{line:H,character:Ce}=Go(Pn,C);je.addMapping(le.getLine(),le.getColumn(),Ut,H,Ce,void 0)}function ys(C,H,Ce){er();let{pos:dn,end:Zn}=H,An=Yi(C),Jt=dn<0||(An&1024)!==0,On=Kt||Zn<0||(An&2048)!==0;Jt||Rl(H),Ti(),An&4096&&!Kt?(Kt=!0,Ce(C),Kt=!1):Ce(C),er(),On||(ea(H.end,!0),Zt&&!le.isAtStartOfLine()&&le.writeLine()),Ti()}function ea(C,H){Zt=!1,H?Ts(C,Xu):C===0&&console.debug("todo - emitLeadingComments")}function Xu(C,H,Ce,dn,Zn){!j||!_c(j.text,C)||(Zt||($I(Cr(),le,Zn,C),Zt=!0),Jc(C),pb(j.text,Cr(),le,C,H,B),Jc(H),dn?le.writeLine():Ce===3&&le.writeSpace(" "))}function Uc(C){if(!j)return;let H=Ro(Bt).detachedCommentEndPos;Bt.length-1?Bt.pop():Bt=void 0,bx(j.text,H,C,H)}function Ts(C,H){j&&(re===-1||C!==re)&&(vs(C)?Uc(H):bx(j.text,C,H,C))}function vs(C){return Bt!==void 0&&Ro(Bt).nodePos===C}function pa(C){if(Yi(C)&1)return!0;if(C.multiLine||!wi(C)&&j&&!Zd(C,j)||Ir(C,Ta(C.statements),2)||xo(C,ko(C.statements),2,C.statements))return!1;let H;for(let Ce of C.statements){if(Gn(H,Ce,2)>0)return!1;H=Ce}return!0}function fa(C){Sn(C.name),lr(C.initializer,C.type?.end??C.name.emitNode?.typeNode?.end??C.name.end,C,qe.parenthesizeExpressionForDisallowedComma)}function Su(C){be(C,k,bt)}function Zu(C){return C.kind===2||!!C.hasTrailingNewLine}function _u(C){if(!j)return!1;let H=Dl(j.text,C.pos);if(H){let Ce=io(C);if(Ce&&Vu(Ce.parent))return!0}return Tn(H,Zu)||Tn(xD(C),Zu)?!0:Ib(C)?C.pos!==C.expression.pos&&Tn(Hd(j.text,C.expression.pos),Zu)?!0:_u(C.expression):!1}function xu(C){if(!Kt&&Ib(C)&&_u(C)){let H=io(C);if(H&&Vu(H)){let Ce=we.createParenthesizedExpression(C.expression);return qu(Ce,C),da(Ce,H),Ce}return we.createParenthesizedExpression(C)}return C}function fp(C,H){C&&(cr(),Gr(C,H))}function ny(C,H){let Ce=ze&&Ir(H,C,0);return Ce&&et(Ce,!1),!!Ce}function hs(C,H){let Ce=ze&&xo(H,C,0,void 0);Ce&&vr(Ce)}function hm(C){gs(C.operator,sr),Wc(C)&&cr(),Gr(C.operand,qe.parenthesizeOperandOfPrefixUnary)}function Wc(C){let H=C.operand;return H.kind===298&&(C.operator===41&&(H.operator===41||H.operator===47)||C.operator===42&&(H.operator===42||H.operator===48))}function aa(C){_S(C)&&C.operator===29?(St("'<"),Gr(C.operand),St("'")):Gr(C)}function ty(C){St("{ start: "),aa(C.left),St(", end: "),aa(C.right),St("}")}function ry(C){let H=Wt(20,C.pos,St,C),Ce=ny(C.expression,C);Gr(C.expression,void 0),hs(C.expression,C),Br(Ce),Wt(21,C.expression?C.expression.end:H,St,C)}function Sm(C){Tr("__lpcIndexAccessHelper"),St("("),Gr(C.expression,qe.parenthesizeLeftSideOfAccess),St(","),Gr(C.argumentExpression),St(")")}function mp(C){let H=C.operatorToken.kind;if(Wu(H))switch(Gr(C.left),sr(gi(74)),H){case 75:H=41;break;case 76:H=42;break;case 77:H=43;break;case 79:H=45;break;case 74:H=74;break;default:I.fail("Unknown compound assignment operator "+I.formatSyntaxKind(H))}Tr("__lpcBinaryHelper"),St("("),Gr(C.left),St(","),Gr(C.right),St(","),St('"'),sr(gi(H)),St('"'),St(")")}function ed(C){let H=Qx(C)&16;H&&(St("("),ic("0"),St(","),cr()),Gr(C.expression,qe.parenthesizeLeftSideOfAccess),H&&St(")"),Ze(C,C.arguments,2576,qe.parenthesizeExpressionForDisallowedComma)}function bu(C){Wt(116,C.pos,Tr,C),fp(C.expression&&xu(C.expression),xu),kn()}function gp(C,H){Rs(H)||Yi(C)&1||ze&&!Ir(C,H,0)?(cr(),Sn(H)):(vr(),ct(),B4(H)?Xo(5,H):Sn(H),li())}function Cu(C){Sn(C.objectType,qe.parenthesizeNonArrayTypeOfPostfixType),St("["),Sn(C.indexType),St("]")}function iy(C){let H=Wt(115,C.pos,Tr,C);cr(),Wt(20,H,St,C),Gr(C.expression),Wt(21,C.expression.end,St,C),gp(C,C.thenStatement),C.elseStatement&&(se(C,C.thenStatement,C.elseStatement),Wt(110,C.thenStatement.end,Tr,C),C.elseStatement.kind===253?(cr(),Sn(C.elseStatement)):gp(C,C.elseStatement))}function _m(C){let H=Wt(117,C.pos,Tr,C);cr(),Wt(20,H,St,C),Gr(C.expression),Wt(21,C.expression.end,St,C),cr(),Sn(C.caseBlock)}function Kc(C){C&&(cr(),Sn(C))}function yp(C){Wt(17,C.pos,St,C),Be(C,C.clauses,129),Wt(19,C.clauses.end,St,C,!0)}function yf(C){Wt(121,C.pos,Tr,C),Kc(C.label),kn()}function oy(C){Wt(106,C.pos,Tr,C),Kc(C.label),kn()}function Ea(C){Gr(C.expression,qe.parenthesizeExpressionOfExpressionStatement),(!j||!Ig(j)||wi(C.expression))&&kn()}function k(C){qr(C,C.parameters)}function Q(C){Wt(113,C.pos,Tr,C),cr(),Gr(C.expression,qe.parenthesizeExpressionForDisallowedComma),He(C,C.statements,C.expression.end)}function ke(C){let H=Wt(114,C.pos,Tr,C);He(C,C.statements,H)}function He(C,H,Ce){let dn=H.length===1&&(!j||wi(C)||wi(H[0])||aT(C,H[0],j)),Zn=163969;dn?($o(61,Ce,St,C),cr(),Zn&=-130):Wt(61,Ce,St,C),Be(C,H,Zn)}function bt(C){kn()}function hr(C){Tr("let"),cr(),Be(C,C.declarations,528)}function at(C){C&&(Sn(C),cr())}function lr(C,H,Ce,dn){C&&(cr(),Wt(74,H,sr,Ce),cr(),Gr(C,dn))}function Wt(C,H,Ce,dn,Zn){let An=io(dn),Jt=An&&An.kind===dn.kind,On=H;if(Jt&&j&&(H=Oi(j.text,H)),Jt&&dn.pos!==On){let Xr=Zn&&j&&!Il(On,H,j);Xr&&ct(),Ot(On),Xr&&li()}return!v&&(C===17||C===19)?H=$o(C,H,Ce,dn):H=gs(C,Ce,H),Jt&&dn.end!==H&&Wn(H,!1,!1),H}}function CA(e){return mc(e,".json")?e:Zr(e,"lpc-config.json")}function vJ(e,t,i){e.write(`Version ${rM}
31
+ `),e.write(`Searching for config file... ${e.getCurrentDirectory()}
32
+ `);let o=Za(e.useCaseSensitiveFileNames),c=tL("--project",t),u=jL(c)?Ps(c):si(Zr(e.getCurrentDirectory(),c)),p=xJ(u||e.getCurrentDirectory(),e.fileExists),m=o(p),g=tL("--perf",t)!==void 0;p||(e.write(`No config file found.
33
+ `),process.exit(1));let S;g&&(S=zY(e,{})),e.write(`Using config file: ${m}
34
+ `);let T=DD(p,e.readFile(p)),_=CL(T,e,vi(p),void 0,p),P=_.options,v=xA(P),B=vi(process.argv[1]);v.getDefaultLibFileName=()=>Zr(B,"../",TN(P),hN(P)),e.write(`Driver type: ${AM[P.driverType]}
35
+ `),e.write(`Found ${_.fileNames.length} files.
36
+ `),e.write(`Efun Definitions: ${si(v.getDefaultLibFileName(P))}
37
+ `);let y={host:v,rootNames:_.fileNames,options:P,oldProgram:void 0};function $($e){return!!$e.writeOutputIsTTY&&$e.writeOutputIsTTY()&&!$e.getEnvironmentVariable("NO_COLOR")}function j($e,Ie){return!Ie||typeof Ie.pretty>"u"?$($e):Ie.pretty}function ce($e,Ie,ge){return j($e,ge)?VL($e,!0):Ie}let me=ce(e,VL(e),P),V=_A(y),ne=[],ve=V.getRootFileNames();if(ve.forEach($e=>{try{let Ie=V.getSourceFile($e),ge=V.getSyntacticDiagnostics(Ie);if(ne.push(...ge),P.diagnostics){let Ae=V.getSemanticDiagnostics(Ie);ne.push(...Ae)}}catch(Ie){throw e.write(`Error processing file: ${$e}
38
+ `),Ie}}),pg(ne).forEach($e=>{me($e)}),ne.length){if(e.write(`
39
+ `),i){let $e=yj(ne.length,gj(ne),`
40
+ `,v);i($e,2)}}else if(ve.length){let $e=["Your code is so fresh and so clean, clean.","May the source be with you.","Time to grab a coffee.","It's a feature, not a bug!","You are a coding wizard.","Your code is all that and a bag of chips.","You must be the Fresh Prince of Code-Air.","Party on, dudes."],Ie=$e[Math.floor(Math.random()*$e.length)];i&&i(sp(`
41
+ \u2713 `,"\x1B[92m")+sp(`No errors found. ${Ie}
42
+
43
+ `,"\x1B[90m"),1)}g&&(XY(Vi,V,S),qY(S))}function zY(e,t){if(e===Vi)return Or.enable(),HY()}function HY(){let e;return{addAggregateStatistic:t,forEachAggregateStatistics:i,clear:o};function t(c){let u=e?.get(c.name);u?u.type===2?u.value=Math.max(u.value,c.value):u.value+=c.value:(e??(e=new Map)).set(c.name,c)}function i(c){e?.forEach(c)}function o(){e=void 0}}function sP(e){return To(e,"SolutionBuilder::")}function qY(e){if(!e)return;let t=[];i("SolutionBuilder::Projects built"),i("SolutionBuilder::Timestamps only updates"),i("SolutionBuilder::Bundles updated"),e.forEachAggregateStatistics(c=>{c.name=`Aggregate ${c.name}`,t.push(c)}),Or.forEachMeasure((c,u)=>{sP(c)&&t.push({name:`${o(c)} time`,value:u,type:0})}),Or.disable(),Or.enable(),e.clear(),FJ(Vi,t);function i(c){let u=Or.getCount(c);u&&t.push({name:o(c),value:u,type:1})}function o(c){return c.replace("SolutionBuilder::","")}}function FJ(e,t){let i=0,o=0;for(let c of t){c.name.length>i&&(i=c.name.length);let u=kJ(c);u.length>o&&(o=u.length)}for(let c of t)e.write(`${c.name}:`.padEnd(i+2)+kJ(c).toString().padStart(o)+e.newLine)}function kJ(e){switch(e.type){case 1:return""+e.value;case 0:return(e.value/1e3).toFixed(2)+"s";case 2:return Math.round(e.value/1e3)+"K";default:I.assertNever(e.type)}}function GY(e,t){return e===Vi&&!0}function $Y(){let e=new Map;return e.set("Library",0),e.set("Definitions",0),e.set("LPC",0),e.set("JSON",0),e.set("Other",0),e}function QY(e,t){if(e.isSourceFileDefaultLibrary(t))return"Library";if(t.isDeclarationFile)return"Definitions";let i=t.path;return hD(i,EI)?"LPC":mc(i,".json")?"JSON":"Other"}function YY(e){let t=$Y();return Ln(e.getSourceFiles(),i=>{let o=QY(e,i),c=Qs(i).length;t.set(o,t.get(o)+c)}),t}function XY(e,t,i){let o=t.getCompilerOptions(),c;if(GY(e,o)){c=[];let g=e.getMemoryUsage?e.getMemoryUsage():-1;p("Files",t.getSourceFiles().length);let S=YY(t);if(o.extendedDiagnostics)for(let[y,$]of S.entries())p("Lines of "+y,$);else p("Lines",DM(S.values(),(y,$)=>y+$,0));p("Identifiers",t.getIdentifierCount()),p("Symbols",t.getSymbolCount()),p("Types",t.getTypeCount()),p("Instantiations",t.getInstantiationCount()),g>=0&&u({name:"Memory used",value:g,type:2},!0);let T=Or.isEnabled(),_=T?Or.getDuration("Program"):0,P=T?Or.getDuration("Bind"):0,v=T?Or.getDuration("Check"):0,B=T?Or.getDuration("Emit"):0;if(o.extendedDiagnostics){let y=t.getRelationCacheSizes();p("Assignability cache size",y.assignable),p("Identity cache size",y.identity),p("Subtype cache size",y.subtype),p("Strict subtype cache size",y.strictSubtype),T&&Or.forEachMeasure(($,j)=>{sP($)||m(`${$} time`,j,!0)})}else T&&(m("I/O read",Or.getDuration("I/O Read"),!0),m("I/O write",Or.getDuration("I/O Write"),!0),m("Parse time",_,!0),m("Bind time",P,!0),m("Check time",v,!0),m("Emit time",B,!0));T&&m("Total time",_+P+v+B,!1),FJ(e,c),T?i?(Or.forEachMeasure(y=>{sP(y)||Or.clearMeasures(y)}),Or.forEachMark(y=>{sP(y)||Or.clearMarks(y)})):Or.disable():e.write(N.Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_native_implementation_of_the_Web_Performance_API_could_not_be_found.message+`
44
+ `)}function u(g,S){c.push(g),S&&i?.addAggregateStatistic(g)}function p(g,S){u({name:g,value:S,type:1},!0)}function m(g,S,T){u({name:g,value:S,type:0},T)}}function cj(e,t){return{typeFromExpression:B,serializeTypeOfDeclaration:u,serializeReturnTypeForSignature:p,serializeTypeOfExpression:c};function o(ye,ae){return ye!==void 0&&(!ae||ye&&ge(ye))?!0:void 0}function c(ye,ae,Ee,z){return B(ye,ae,!1,Ee,z)??_(ye,ae)}function u(ye,ae){switch(ye.kind){case 153:return o(Es(ye));case 149:return g(ye,ae);case 237:return m(ye,ae);case 152:return S(ye,ae);case 266:return T(ye,ae);case 286:case 281:case 269:return o(Es(ye))||T(ye,ae);case 174:return B(ye.initializer,ae)||T(ye,ae);default:I.assertNever(ye,`Node needs to be an inferrable node, found ${I.formatSyntaxKind(ye.kind)}`)}}function p(ye,ae){switch(ye.kind){case 154:case 169:case 156:case 150:case 158:case 270:case 271:case 202:return Ae(ye,ae);default:I.assertNever(ye,`Node needs to be an inferrable node, found ${I.formatSyntaxKind(ye.kind)}`)}}function m(ye,ae){let Ee=Es(ye);if(Ee)return o(Ee);let z;return ye.initializer&&(t.isExpandoFunctionDeclaration(ye)||(z=B(ye.initializer,ae,void 0,void 0,!1))),z??T(ye,ae)}function g(ye,ae){let Ee=ye.parent,z=Es(ye),ze=t.requiresAddingImplicitUndefined(ye),te;return z?te=o(z,ze):ye.initializer&&cn(ye.name)&&(te=B(ye.initializer,ae,void 0,ze)),te??T(ye,ae)}function S(ye,ae){let Ee=Es(ye);if(Ee)return o(Ee);let z;return ye.initializer&&(z=B(ye.initializer,ae,void 0,void 0,!1)),z??T(ye,ae)}function T(ye,ae){return ae.tracker.reportInferenceFallback(ye),!1}function _(ye,ae){return ae.tracker.reportInferenceFallback(ye),!1}function P(ye,ae){return ae.tracker.reportInferenceFallback(ye),!1}function v(ye,ae,Ee,z){return z&&!ge(ae)&&Ee.tracker.reportInferenceFallback(ae),o(ae)}function B(ye,ae,Ee=!1,z=!1,ze=!1){switch(ye.kind){case 289:return lf(ye)?v(ye.expression,mT(ye),ae,z):B(ye.expression,ae,Ee,z);case 89:if(t.isUndefinedIdentifierExpression(ye))return!0;break;case 137:return!0;case 271:case 270:return y(ye,ae);case 279:let te=ye;return v(te.expression,te.type,ae,z);case 298:let le=ye;if(UI(le)&&(le.operand.kind===13||le.operand.kind===11))return Ie();break;case 11:return Ie();case 16:return Ie();case 13:return Ie();case 136:case 135:return Ie();case 290:return j(ye,ae,Ee);case 291:I.fail("todo - mapping literal");case 293:return me(ye,ae,Ee);case 274:return _(ye,ae)}}function y(ye,ae){let Ee=o(ye.type)??Ae(ye,ae),z=void 0,ze=ye.parameters.every(te=>ne(te,ae));return Ee&&z&&ze}function $(ye,ae,Ee){if(!Ee)return ae.tracker.reportInferenceFallback(ye),!1;for(let z of ye.elements)if(z.kind===294)return ae.tracker.reportInferenceFallback(z),!1;return!0}function j(ye,ae,Ee){if(!$(ye,ae,Ee))return!1;let z=!0;for(let ze of ye.elements)I.assert(ze.kind!==294),ze.kind!==297&&(z=(B(ze,ae,Ee)??_(ze,ae))&&z);return!0}function ce(ye,ae){let Ee=!0;for(let z of ye.properties)if(z.flags&262144){Ee=!1;break}else if(z.name.flags&262144){Ee=!1;break}else if(z.name.kind===147){let ze=z.name.expression;!UI(ze,!1)&&!t.isDefinitelyReferenceToGlobalSymbolObject(ze)&&(ae.tracker.reportInferenceFallback(z.name),Ee=!1)}return Ee}function me(ye,ae,Ee){if(!ce(ye,ae))return!1;let z=!0;for(let ze of ye.properties){I.assert(!pu(ze)&&!DS(ze));let te=ze.name;switch(ze.kind){case 174:z=!!V(ze,te,ae,Ee)&&z;break}}return z}function V(ye,ae,Ee,z){return B(ye.initializer,Ee,z)??T(ye,Ee)}function ne(ye,ae){return g(ye,ae)}function ve(ye){return ye?.every(ae=>o(ae.constraint)&&o(ae.default))??!0}function $e(ye,ae,Ee){let z=Ae(ye,Ee),ze=!0,te=ye.parameters.every(le=>ne(le,Ee));return z&&ze&&te}function Ie(){return!0}function ge(ye){return!0}function Ae(ye,ae){let Ee,z=rl(ye);return z&&(Ee=o(z)),!Ee&&cD(ye)&&(Ee=Qe(ye,ae)),Ee??P(ye,ae)}function Qe(ye,ae){let Ee;if(ye&&!oa(ye.body)){if(Ac(ye)&3)return;let z=ye.body;z&&Rs(z)?Xd(z,ze=>{if(!Ee)Ee=ze.expression;else return Ee=void 0,!0}):Ee=z}if(Ee)return B(Ee,ae)}}var Ab={};pd(Ab,{countPathComponents:()=>ZY});function ZY(e){let t=0;for(let i=To(e,"./")?2:0;i<e.length;i++)e.charCodeAt(i)===47&&t++;return t}var cP={};var NA;(i=>{class e{constructor(c){this.text=c}getText(c,u){return c===0&&u===this.text.length?this.text:this.text.substring(c,u)}getLength(){return this.text.length}getChangeRange(){}}function t(o){return new e(o)}i.fromString=t})(NA||(NA={}));var NT=(ge=>(ge[ge.aliasName=0]="aliasName",ge[ge.className=1]="className",ge[ge.enumName=2]="enumName",ge[ge.fieldName=3]="fieldName",ge[ge.interfaceName=4]="interfaceName",ge[ge.keyword=5]="keyword",ge[ge.lineBreak=6]="lineBreak",ge[ge.numericLiteral=7]="numericLiteral",ge[ge.stringLiteral=8]="stringLiteral",ge[ge.localName=9]="localName",ge[ge.methodName=10]="methodName",ge[ge.moduleName=11]="moduleName",ge[ge.operator=12]="operator",ge[ge.parameterName=13]="parameterName",ge[ge.propertyName=14]="propertyName",ge[ge.punctuation=15]="punctuation",ge[ge.space=16]="space",ge[ge.text=17]="text",ge[ge.typeParameterName=18]="typeParameterName",ge[ge.enumMemberName=19]="enumMemberName",ge[ge.functionName=20]="functionName",ge[ge.regularExpressionLiteral=21]="regularExpressionLiteral",ge[ge.link=22]="link",ge[ge.linkName=23]="linkName",ge[ge.linkText=24]="linkText",ge))(NT||{});var nX=/^\/\/\/\s*</;function wJ(e){return e.kind===147?wc(e.expression)?e.expression.text:void 0:Zy(e)}function IA(e){let t=e.declarations?Ta(e.declarations):void 0;return!!It(t,i=>Qi(i)?!0:fo(i)||yT(i)?!1:"quit")}function lp(e,t,i){return Zs(e.getStart(t),(i||e).getEnd())}function dP(e){return!!((e.kind===290||e.kind===293)&&(e.parent.kind===269&&e.parent.left===e&&e.parent.operatorToken.kind===74||e.parent.kind===244&&e.parent.initializer===e||dP(e.parent.kind===174?e.parent.parent:e.parent)))}function LA(e,t,i,o,c){let u=o?rX(e):AA(e);return c&&(u=Yf(u)),!!u&&!!u.parent&&t(u.parent)&&i(u.parent)===u}function MS(e){return So(e.parent,ii)?.name===e}function AA(e){return MS(e)?e.parent:e}function tX(e){return So(e.parent,js)?.argumentExpression===e}function rX(e){return MS(e)||tX(e)?e.parent:e}function wA(e){return e.expression&&wo(e.expression)?void 0:e.expression}function OJ(e,t=!1,i=!1){return LA(e,Ou,wA,t,i)}function pP(e){return cn(e)&&So(e.parent,ki)?.name===e}function fP(e,t=!1,i=!1){return LA(e,pm,wA,t,i)}var DA=iX();function iX(){let e=Ox*10,t,i,o,c;T();let u=_=>m(_,17);return{displayParts:()=>{let _=t.length&&t[t.length-1].text;return c>e&&_&&_!=="..."&&(Nl(_.charCodeAt(_.length-1))||t.push(Ha(" ",16)),t.push(Ha("...",15))),t},writeKeyword:_=>m(_,5),writeOperator:_=>m(_,12),writePunctuation:_=>m(_,15),writeTrailingSemicolon:_=>m(_,15),writeSpace:_=>m(_,16),writeStringLiteral:_=>m(_,8),writeParameter:_=>m(_,13),writeProperty:_=>m(_,14),writeLiteral:_=>m(_,8),writeSymbol:g,writeLine:S,write:u,writeComment:u,getText:()=>"",getTextPos:()=>0,getColumn:()=>0,getLine:()=>0,isAtStartOfLine:()=>!1,hasTrailingWhitespace:()=>!1,hasTrailingComment:()=>!1,rawWrite:Kd,getIndent:()=>o,increaseIndent:()=>{o++},decreaseIndent:()=>{o--},clear:T};function p(){if(!(c>e)&&i){let _=HN(o);_&&(c+=_.length,t.push(Ha(_,16))),i=!1}}function m(_,P){c>e||(p(),c+=_.length,t.push(Ha(_,P)))}function g(_,P){c>e||(p(),c+=_.length,t.push(oX(_,P)))}function S(){c>e||(c+=1,t.push(Hg()),i=!0)}function T(){t=[],i=!0,o=0,c=0}}function Hg(){return Ha(`
45
+ `,6)}function Ha(e,t){return{text:e,kind:NT[t]}}function DT(e,t,i,o,c=0){return Pd(u=>{e.writeSymbol(t,i,o,c|8,u)})}function oX(e,t){return Ha(e,i(t));function i(o){let c=o.flags;return c&3?IA(o)?13:9:c&4?14:c&32768?14:c&65536?14:c&8?19:c&16?20:c&32?1:c&64?4:c&384?2:c&1536?11:c&8192?10:c&262144?18:c&524288?0:c&2097152?0:17}}function Pd(e){try{return e(DA),DA.displayParts()}finally{DA.clear()}}function mP(e,t,i,o=0){return Pd(c=>{e.writeType(t,i,o|1024|16384,c)})}function Wb(e){for(xd(e)&&(e=e.parent.parent);;){if(e=e.parent,!e)return;switch(e.kind){case 176:case 169:case 270:return e}}}function Sa(){return Ha(" ",16)}function Kb(e){return Ha(gi(e),5)}function Us(e){return Ha(gi(e),15)}function RJ(e){return Ha(gi(e),12)}function MJ(e){return Ha(e,13)}function BJ(e){return Ha(e,14)}function OA(e){let t=zd(e);return t===void 0?ks(e):Kb(t)}function ks(e){return Ha(e,17)}function Vb(e){return!!(qF(e)&65536)}function RA(e,t=0){let i=[],o=Ru(e)?qF(e)&~t:0;return o&2&&i.push("private"),o&4&&i.push("protected"),o&1&&i.push("public"),o&2048&&i.push("export"),o&65536&&i.push("deprecated"),e.flags&33554432&&i.push("declare"),i.length>0?i.join(","):""}function jJ(e,t,i,o=0){return o|=25632,Pd(c=>{e.writeSignature(t,i,o,void 0,c)})}function JJ(e,t,i,o=0){o|=25632;let c=e.getReturnTypeOfSignature(t);return Pd(u=>{e.writeType(c,i,o,u)})}function MA(e){return UJ(e,!1)}function UJ(e,t){let{parent:i}=e;if(Gp(e)&&t?SS(i)&&Yr(i.modifiers,e):e.kind===133?MD(i)||Fb(e):e.kind===138&&(Ns(i)||xs(e))){let o=NX(i,t);if(o)return o}if(!t){if(e.kind===145&&pm(i)&&i.expression)return Yf(i.expression);if(e.kind===103&&gr(i)&&i.operatorToken===e)return Yf(i.right)}return e}function gP(e){switch(e.kind){case 237:return 1;case 149:case 266:case 152:case 174:case 175:case 169:case 270:case 283:case 255:return 1;case 148:case 163:return 2;case 225:return e.name===void 0?3:2;case 176:return 5}return 7}function BS(e){e=MA(e);let t=e.parent;return e.kind===176?1:tl(e)?gP(t):Al(t)?(I.assert(Ys(t.parent)),2):El(t)?3:1}function jS(e){return Zs(e.pos,e.end)}var BA=[97,135,137,92,93,104,99,101,140,94,136,105,96,102];function zb(e){return Yr(BA,e)}function jA(e){return cn(e)&&So(e.parent,Jh)?.label===e}function JA(e,t){for(;e;){if(console.log("TODO - getTargetLabel"),e.kind===249&&e.label.text===t)return e.label;e=e.parent}}function WJ(e){return cn(e)&&So(e.parent,BD)?.label===e}function JS(){let e=[];return t=>{let i=za(t);return!e[i]&&(e[i]=!0)}}function KJ(e,t,i=fs(t,e)){return!!i&&i.kind===21&&ao(i.parent)}function up(e,t,i=fs(t,e)){if(i&&SN(i)){let o=i.getStart(e),c=i.getEnd();if(o<t&&t<c)return!0;if(t===c)return!!i.isUnterminated}return!1}function VJ(e){return So(e.parent,fg)?.tagName===e}function yP(e,t){if(e.flags&16777216)return;let i=Hb(e,t);if(i)return i;let o=aX(e);return o&&t.getTypeAtLocation(o)}function aX(e){let t;return It(e,i=>(wo(i)&&(t=i),!ol(i.parent)&&!wo(i.parent)&&!qy(i.parent))),t}function Hb(e,t,i){let o=Lg(e.parent);switch(o.kind){case 276:return t.getContextualType(o,i);case 269:{let{left:c,operatorToken:u,right:p}=o;return TP(u.kind)?t.getTypeAtLocation(e===p?c:p):t.getContextualType(e,i)}case 299:return UA(o,t);default:return t.getContextualType(e,i)}}function TP(e){switch(e){case 37:case 35:case 38:case 36:return!0;default:return!1}}function UA(e,t){return t.getTypeAtLocation(e.parent.parent.expression)}function zJ(e,t){return sX(e,t,!1)}function sX(e,t,i){let o=qg(e,t,void 0);return!!o&&i===nX.test(e.text.substring(o.pos,o.end))}function qg(e,t,i){return rc.getRangeOfEnclosingComment(e,t,void 0,i)}function RS(e,t){return e.pos<t&&t<e.end}function $u(e,t){return HJ(e,t,!0,void 0,!1)}function HJ(e,t,i,o,c){let u=e,p,m=0;e:for(;;){m++>100&&console.warn("Bailed out of getTokenAtPositionWorker loop");let S=u.getChildren(e),T=px(S,t,(_,P)=>P,(_,P)=>{let v=S[_].getEnd();if(v<t)return-1;let B=i?S[_].getFullStart():S[_].getStart(e,!0);return B>t?1:g(S[_],B,v)?S[_-1]&&g(S[_-1])?1:0:o&&B===t&&S[_-1]&&S[_-1].getEnd()===t&&g(S[_-1])?1:-1});if(p)return p;if(T>=0&&S[T]){u=S[T];continue e}return u}function g(S,T,_){if(_??(_=S.getEnd()),_<t||(T??(T=i?S.getFullStart():S.getStart(e,!0)),T>t))return!1;if(t<_||t===_&&(S.kind===1||c))return!0;if(o&&_===t){let P=fs(t,e,S);if(P&&o(P))return p=P,!0}return!1}}function hP(e){return UJ(e,!0)}function kd(e,t){return qb(e,t,i=>em(i)||fc(i.kind))}function qb(e,t,i){return HJ(e,t,!1,i,!1)}function qJ(e){return Bh(e)}function GJ(e,t){return TT(e)&&!e._children?!1:e.kind===1?!!e.jsDoc:e.getWidth(t)!==0}function vA(e,t,i,o){for(let c=t-1;c>=0;c--){let u=e[c];if(GJ(e[c],i))return e[c]}}function fs(e,t,i,o){return u(i||t);function u(p){if(qJ(p)&&p.kind!==1)return p;let m=p.getChildren(t),g=px(m,e,(T,_)=>_,(T,_)=>e<m[T].end?!m[T-1]||e>=m[T-1].end?0:1:-1);if(g>=0&&m[g]){let T=m[g];if(e<T.end)if(T.getStart(t,!o)>=e||!GJ(T,t)){let v=vA(m,g,t,p.kind);return v?!o&&dN(v)&&v.getChildren(t).length?u(v):FA(v,t):void 0}else return u(T)}let S=vA(m,m.length,t,p.kind);return S&&FA(S,t)}}function FA(e,t){if(qJ(e))return e;let i=e.getChildren(t);if(i.length===0)return e;let o=vA(i,i.length,t,e.kind);return o&&FA(o,t)}function US(e,t){return 1}function $J(e){switch(e){case 0:return"'";case 1:return'"';default:return I.assertNever(e)}}function QJ(e){return mi(e)?tT(nm(e[0]),e.slice(1)):nm(e)}function WS(e,t){return e.pos<=t&&t<=e.end}function IJ(e){return Ha(e,22)}function PA(e){return Ha(e,24)}function cX(e,t){return{text:e,kind:NT[23],target:{fileName:Dt(t).fileName,textSpan:lp(t)}}}function lX(e,t){let i=e;for(;uX(i)||tf(i)&&i.links.target;)tf(i)&&i.links.target?i=i.links.target:i=uu(i,t);return i}function uX(e){return(e.flags&2097152)!==0}function YJ(e,t){let i=k4(e)?"link":v4(e)?"linkcode":"linkplain",o=[IJ(`{@${i} `)];if(!e.name)e.text&&o.push(PA(e.text));else{let c=t?.getSymbolAtLocation(e.name),u=c&&t?lX(c,t):void 0,p=pX(e.text),m=Ic(e.name)+e.text.slice(0,p),g=dX(e.text.slice(p)),S=u?.valueDeclaration||u?.declarations?.[0];if(S)o.push(cX(m,S)),g&&o.push(PA(g));else{let T=p===0||e.text.charCodeAt(p)===124&&m.charCodeAt(m.length-1)!==32?" ":"";o.push(PA(m+T+g))}}return o.push(IJ("}")),o}function dX(e){let t=0;if(e.charCodeAt(t++)===124){for(;t<e.length&&e.charCodeAt(t)===32;)t++;return e.slice(t)}return e}function pX(e){let t=e.indexOf("://");if(t===0){for(;t<e.length&&e.charCodeAt(t)!==124;)t++;return t}if(e.indexOf("()")===0)return 2;if(e.charAt(0)==="<"){let i=0,o=0;for(;o<e.length;)if(e[o]==="<"&&i++,e[o]===">"&&i--,o++,!i)return o}return 0}function WA(e,t){if(e){for(let i=0;i<e.length;i++)if(e.indexOf(e[i])===i){let o=t(e[i],i);if(o)return o}}}function cl(e,t){let i=Qs(t),o=t.getLineAndCharacterOfPosition(e).line;return i[o]}function XJ(e){return Ha(e,0)}function ZJ(e){return Ha(e,18)}function KA(e,t){return{span:e,newText:t}}function e3(e){return np(e.start,e.start+e.length)}function n3(e,t){for(;Nl(e.charCodeAt(t));)t+=1;return t}function Gb({options:e},t){let i=!e.semicolons||e.semicolons==="ignore",o=e.semicolons==="remove"||i&&!mX(t);return{...e,semicolons:o?"remove":"ignore"}}function KS(e){return e===`
46
+ `?1:0}var fX=`
47
+ `;function PT(e,t){return t?.newLineCharacter||e.getNewLine?.()||fX}function mX(e){let t=0,i=0,o=5;return _o(e,function c(u){if(HA(u.kind))u.getLastToken(e)?.kind===26?t++:i++;else if(zA(u.kind)){let p=u.getLastToken(e);if(p?.kind===26)t++;else if(p&&p.kind!==27){let m=Go(e,p.getStart(e)).line,g=Go(e,_g(e,p.end).start).line;m!==g&&i++}}return t+i>=o?!0:_o(u,c)}),t===0&&i<=1?!0:t/i>1/o}function VA(e,t,i){let o=It(t,c=>c.end!==e?"quit":gX(c.kind));return!!o&&yX(o,i)}function zA(e){return e===150||e===153}function t3(e){return e===169}function r3(e){return!1}function HA(e){return e===242||e===247||e===251||e===250||e===248||e===152||e===172}var gX=VE(zA,t3,r3,HA);function yX(e,t){let i=e.getLastToken(t);if(i&&i.kind===26)return!1;if(zA(e.kind)){if(i&&i.kind===27)return!1}else if(r3(e.kind)){let m=Ro(e.getChildren(t));if(m&&P4(m))return!1}else if(t3(e.kind)){let m=Ro(e.getChildren(t));if(m&&Xf(m))return!1}else if(!HA(e.kind))return!1;if(e.kind===245)return!0;let o=It(e,m=>!m.parent),c=Qb(e,o,t);if(!c||c.kind===19)return!0;let u=t.getLineAndCharacterOfPosition(e.getEnd()).line,p=t.getLineAndCharacterOfPosition(c.getStart(t)).line;return u!==p}function i3(e,t){for(;t>-1&&Xc(e.charCodeAt(t));)t-=1;return t+1}function o3(e,t){return RS(e,t.pos)&&RS(e,t.end)}function a3(e,t,i){let o=t.length;if(o+i>e.length)return!1;for(let c=0;c<o;c++)if(t.charCodeAt(c)!==e.charCodeAt(c+i))return!1;return!0}function s3(e,t,i){return e.pos<=t&&e.end>=i}function c3(e,t){let i=$u(e,t);return!1}function qA(e,t,i){let o=US(e,t),c=JSON.stringify(i);return o===0?`'${Fl(c).replace(/'/g,()=>"\\'").replace(/\\"/g,'"')}'`:c}function l3(e,t){let i=$u(e,t);return!!It(i,ec)}function GA(e,t){return{fileExists:i=>e.fileExists(i),getCurrentDirectory:()=>t.getCurrentDirectory(),readFile:gd(t,t.readFile),useCaseSensitiveFileNames:gd(t,t.useCaseSensitiveFileNames),getFileIncludeReasons:()=>e.getFileIncludeReasons(),getCommonSourceDirectory:()=>e.getCommonSourceDirectory()}}function $b(e,t){let i=new Set,o=new Set,c=new Set;for(let m of t)if(!Ph(m)){let g=vo(m.expression);if(Hy(g))switch(g.kind){case 16:i.add(g.text);break;case 10:o.add(parseInt(g.text));break}else{let S=e.getSymbolAtLocation(m.expression)}}return{addValue:u,hasValue:p};function u(m){switch(typeof m){case"string":i.add(m);break;case"number":o.add(m)}}function p(m){switch(typeof m){case"string":return i.has(m);case"number":return o.has(m)}}}function u3(e){TX(e),hX(e)}function TX(e){$A(e,1024,SX)}function hX(e){$A(e,2048,JB)}function $A(e,t,i){w6(e,t);let o=i(e);o&&$A(o,t,i)}function SX(e){return e.forEachChild(t=>t)}function SP(e,t=!0){let i=e&&d3(e);return i&&!t&&u3(i),ep(i,!1)}function d3(e,t){let i=t?u=>p3(u,!0,t):SP,c=gm(e,i,void 0,t?u=>u&&_X(u,!0,t):u=>u&&xX(u),i);if(c===e){let u=Pi(e)?qu(we.createStringLiteralFromNode(e),e):eu(e)?qu(we.createIntLiteral(e.text,e.numericLiteralFlags),e):ag(e)?qu(we.createFloatLiteral(e.text,e.numericLiteralFlags),e):we.cloneNode(e);return da(u,e)}return c.parent=void 0,c}function p3(e,t,i){let o=i(e);return o?qu(o,e):o=d3(e,i),o&&!t&&u3(o),o}function _X(e,t,i){return we.createNodeArray(e.map(o=>p3(o,t,i)),e.hasTrailingComma)}function xX(e,t=!0){if(e){let i=we.createNodeArray(e.map(o=>SP(o,t)),e.hasTrailingComma);return da(i,e),i}return e}function f3(e,t){return{...GA(e,t),getCommonSourceDirectory:()=>e.getCommonSourceDirectory()}}function m3(e){switch(e.kind){case 16:return!0;default:return!1}}function g3(e,t,i){return t<e.end||!mu(e,i)}function lP(e,t,i){let o=e.getChildren(i);if(o.length){let c=Ro(o);if(c.kind===t)return!0;if(c.kind===26&&o.length!==1)return o[o.length-2].kind===t}return!1}function mu(e,t){if(e===void 0||oa(e))return!1;switch(e.kind){case 170:case 293:case 163:case 236:case 240:return lP(e,19,t);case 255:return mu(e.block,t);case 276:if(!e.arguments)return!0;case 272:case 289:case 165:return lP(e,21,t);case 169:case 270:case 154:case 156:case 271:return e.body?mu(e.body,t):e.type?mu(e.type,t):uP(e,21,t);case 253:return e.elseStatement?mu(e.elseStatement,t):mu(e.thenStatement,t);case 247:return mu(e.expression,t)||uP(e,26,t);case 290:case 265:case 281:case 147:return lP(e,23,t);case 150:return e.type?mu(e.type,t):uP(e,23,t);case 299:case 301:return!1;case 243:case 244:case 246:return mu(e.statement,t);case 245:return uP(e,118,t)?lP(e,21,t):mu(e.statement,t);case 294:return mu(e.expression,t);case 298:return mu(e.operand,t);case 269:return mu(e.right,t);case 267:return mu(e.whenFalse,t);default:return!0}}function uP(e,t,i){return!!ll(e,t,i)}function _P(e,t){if(e)switch(e.kind){case 16:return QA(e,t);default:return lp(e)}}function QA(e,t){let i=e.getEnd()-1;if(e.isUnterminated){if(e.getStart()===i)return;i=Math.min(t,e.getEnd())}return Zs(e.getStart()+1,i)}function y3(e,t){if(bX(e)){let i=CX(e);if(i)return i;let o=AJ(LJ(e),t,!1),c=AJ(LJ(e),t,!0);return o===c?o:[o,c]}return e.name}function bX(e){return!(e.flags&33554432)&&(e.name==="export="||e.name==="default")}function CX(e){return es(e.declarations,t=>So(ti(t),cn)?.text)}function LJ(e){return I.checkDefined(e.parent,`Symbol parent was undefined. Flags: ${I.formatSymbolFlags(e.flags)}. Declarations: ${e.declarations?.map(t=>{let i=I.formatSyntaxKind(t.kind),o=!1,{expression:c}=t;return(o?"[JS]":"")+i+(c?` (expression: ${I.formatSyntaxKind(c.kind)})`:"")}).join(", ")}.`)}function AJ(e,t,i){return EX(nf(Fl(e.name)),t,i)}function EX(e,t,i){let o=Ps(og(e,"/index")),c="",u=!0,p=o.charCodeAt(0);vc(p,t)?(c+=String.fromCharCode(p),i&&(c=c.toUpperCase())):u=!1;for(let m=1;m<o.length;m++){let g=o.charCodeAt(m),S=ru(g,t);if(S){let T=String.fromCharCode(g);u||(T=T.toUpperCase()),c+=T}u=S}return KB(c)?`_${c}`:c||"_"}function T3(e,t){if(t.text.lastIndexOf("<",e?e.pos:t.text.length)===-1)return;let i=e,o=0,c=0,u=0;for(;i;){if(u++>100){console.warn("Bailed out of matching token serach");break}switch(i.kind){case 29:if(i=fs(i.getFullStart(),t),i&&i.kind===28&&(i=fs(i.getFullStart(),t)),!i||!cn(i))return;if(!o)return tl(i)?void 0:{called:i,nTypeArguments:c};o--;break;case 51:o=3;break;case 50:o=2;break;case 32:o++;break;case 19:if(i=kA(i,17,t),!i)return;break;case 21:if(i=kA(i,20,t),!i)return;break;case 23:if(i=kA(i,22,t),!i)return;break;case 27:c++;break;case 39:case 89:case 16:case 10:case 11:case 13:case 136:case 135:case 24:case 53:case 60:case 61:break;default:if(wo(i))break;return}i=fs(i.getFullStart(),t)}}function kA(e,t,i){let o=gi(e.kind),c=gi(t),u=e.getFullStart(),p=i.text.lastIndexOf(c,u);if(p===-1)return;if(i.text.lastIndexOf(o,u-1)<p){let T=fs(p+1,i);if(T&&T.kind===t)return T}let m=e.kind,g=0,S=0;for(;;){let T=fs(e.getFullStart(),i);if(!T)return;if(e=T,e.kind===t){if(g===0)return e;g--}else e.kind===m&&g++;if(S++>100){console.warn("bailed out of matching token search");break}}}function h3(e){return!!e.getStringIndexType()||!!e.getNumberIndexType()}function S3(e){return e.isTypeParameter()&&e.getConstraint()||e}function _3(e,t=!1,i=!1){return LA(e,ao,wA,t,i)}function NX(e,t){if(!t)switch(e.kind){case 170:case 274:return DX(e);case 169:case 270:return PX(e)}if(Fc(e))return e.name}function DX(e){if(Fc(e))return e.name;if(MD(e),Fb(e)){let t=fr(e.getChildren(),vX);if(t)return t}}function PX(e){if(Fc(e))return e.name;if(Ns(e),xs(e)){let t=fr(e.getChildren(),kX);if(t)return t}}function kX(e){return e.kind===138}function vX(e){return e.kind===133}function x3(e,t){let i=$u(e,t);return Bh(i)&&t>i.getStart(e)&&t<i.getEnd()?i:fs(t,e)}function b3(e,t,i){let o=i.getTypeAtLocation(e);return(pm(e.parent)?o.getConstructSignatures():o.getCallSignatures()).filter(u=>!!u.typeParameters&&u.typeParameters.length>=t)}var Yb=(o=>(o[o.Named=0]="Named",o[o.Default=1]="Default",o[o.ExportEquals=2]="ExportEquals",o))(Yb||{}),YA=(i=>(i[i.Import=0]="Import",i[i.Export=1]="Export",i))(YA||{});function XA(e,t,i){let o=[],c=e.getTypeChecker();for(let u of t){let p=i.valueDeclaration;if(p?.kind===176){for(let m of u.referencedFiles)e.getSourceFileFromReference(u,m)===p&&o.push({kind:"reference",referencingFile:u,ref:m});for(let m of u.typeReferenceDirectives){let g=e.getResolvedTypeReferenceDirectiveFromTypeReferenceDirective(m,u)?.resolvedTypeReferenceDirective;g!==void 0&&g.resolvedFileName===p.fileName&&o.push({kind:"reference",referencingFile:u,ref:m})}}C3(u,(m,g)=>{c.getSymbolAtLocation(g)===i&&o.push(wi(m)?{kind:"implicit",literal:g,referencingFile:u}:{kind:"import",literal:g})})}return o}function C3(e,t){FX(e,i=>{switch(i.kind){case 252:let o=i;o.inheritClause&&Pi(o.inheritClause)&&t(o,o.inheritClause);break}})}function FX(e,t){return Ln(e.kind===176?e.statements:[],i=>t(i))}function xP(e,t,i,o){let c=IX(e,i,o);return(u,p,m)=>{let{directImports:g,indirectUsers:S}=LX(e,t,c,p,i,o);return{indirectUsers:S,...AX(g,u,p.exportKind,i,m)}}}function IX(e,t,i){let o=new Map;for(let c of e)i&&i.throwIfCancellationRequested(),C3(c,(u,p)=>{let m=t.getSymbolAtLocation(p);if(m){let g=ji(m).toString(),S=o.get(g);S||o.set(g,S=[]),S.push(u)}});return o}function LX(e,t,i,{exportingModuleSymbol:o,exportKind:c},u,p){let m=JS(),g=JS(),S=[],T=!!o.globalExports,_=T?void 0:[];return B(o),{directImports:S,indirectUsers:P()};function P(){if(T)return e;if(o.declarations)for(let me of o.declarations);return _.map(Dt)}function v(me){let V=me.getSourceFile();j(V,!!$(me,!0))}function B(me){let V=ce(me);if(V){for(let ne of V)if(m(ne))switch(p&&p.throwIfCancellationRequested(),ne.kind){case 273:v(ne);break;case 272:if(!T){let ve=ne.parent;if(c===2&&ve.kind===237){let{name:$e}=ve;if($e.kind===89){S.push($e);break}}}break;case 89:break;case 252:y(ne);break;default:I.failBadSyntaxKind(ne,"Unexpected import kind.")}}}function y(me){let V=me.getSourceFile();j(V,!!$(me,!0))}function $(me,V=!1){return!1}function j(me,V=!1){if(I.assert(!T),!g(me)||(_.push(me),!V))return;let ve=u.getMergedSymbol(me.symbol);if(!ve)return;I.assert(!!(ve.flags&1536));let $e=ce(ve);if($e)for(let Ie of $e)j(wX(Ie),!0)}function ce(me){return i.get(ji(me).toString())}}function AX(e,t,i,o,c){let u=[],p=[];function m(_,P){u.push([_,P])}if(e)for(let _ of e)g(_);return{importSearches:u,singleReferences:p};function g(_){if(_.kind,252,_.kind===89){S(_);return}let{name:P,namedBindings:v}={name:void 0,namedBindings:void 0};if(P&&(i===1||i===2)&&(!c||P.escapedText===t)){let B=o.getSymbolAtLocation(P);m(P,B)}}function S(_){i===2&&(!c||T(_.text))&&m(_,o.getSymbolAtLocation(_))}function T(_){return _===t.name||i!==0&&_==="default"}}function wX(e){if(e.kind===272)return e.getSourceFile();let{parent:t}=e;if(t.kind===176)return t;I.fail("Expected SourceFile parent for import declaration.")}function OX(e,t,i,o){console.log("todo - getImportOrExportSymbol")}function N3(e,t,i,o,c){let u=uo();t.getPackageJsonAutoImportProvider?.();let p=t.getCachedExportInfoMap?.()||D3({getCurrentProgram:()=>i,getPackageJsonAutoImportProvider:()=>t.getPackageJsonAutoImportProvider?.(),getGlobalTypingsCacheLocation:()=>t.getGlobalTypingsCacheLocation?.()});if(p.isUsableByFile(e.path))return t.log?.("getExportInfoMap: cache hit"),p;t.log?.("getExportInfoMap: cache miss or empty; calculating new results");let m=0;try{RX(i,t,o,!0,(g,S,T,_)=>{++m%100===0&&c?.throwIfCancellationRequested();let P=new Map,v=T.getTypeChecker(),B=MX(g,v);B&&BX(B.symbol,v)&&p.add(e.path,B.symbol,B.exportKind===1?"default":"export=",g,S,B.exportKind,_,v)})}catch(g){throw p.clear(),g}return t.log?.(`getExportInfoMap: done in ${uo()-u} ms`),p}function RX(e,t,i,o,c){let u=II(t),p=i.autoImportFileExcludePatterns&&_i(i.autoImportFileExcludePatterns,g=>{let S=XN(g,"","exclude");return S?xg(S,u):void 0});E3(e.getTypeChecker(),e.getSourceFiles(),p,t,(g,S)=>c(g,S,e,!1));let m=o&&t.getPackageJsonAutoImportProvider?.();if(m){let g=uo(),S=e.getTypeChecker();E3(m.getTypeChecker(),m.getSourceFiles(),p,t,(T,_)=>{(_&&!e.getSourceFile(_.fileName)||!_&&!S.resolveName(T.name,void 0,1536,!1))&&c(T,_,m,!0)}),t.log?.(`forEachExternalModuleToImportFrom autoImportProvider: ${uo()-g}`)}}function E3(e,t,i,o,c){for(let u of t);}function D3(e){let t=1,i=$s(),o=new Map,c=new Map,u,p={isUsableByFile:v=>v===u,isEmpty:()=>!i.size,clear:()=>{i.clear(),o.clear(),u=void 0},add:(v,B,y,$,j,ce,me,V)=>{v!==u&&(p.clear(),u=v);let ne,$e=ce===1&&nS(B)||B,Ie=y3($e,void 0),ge=typeof Ie=="string"?Ie:Ie[0],Ae=typeof Ie=="string"?void 0:Ie[1],Qe=Fl($.name),ye=t++,ae=uu(B,V),Ee=B.flags&33554432?void 0:B,z=$.flags&33554432?void 0:$;(!Ee||!z)&&o.set(ye,[B,$]),i.add(g(ge,B,$d(Qe)?void 0:Qe,V),{id:ye,symbolTableKey:y,symbolName:ge,capitalizedSymbolName:Ae,moduleName:Qe,moduleFile:j,moduleFileName:j?.fileName,packageName:ne,exportKind:ce,targetFlags:ae.flags,isFromPackageJson:me,symbol:Ee,moduleSymbol:z})},get:(v,B)=>v!==u?void 0:i.get(B)?.map(m),search:(v,B,y,$)=>{if(v===u)return kl(i,(j,ce)=>{let{symbolName:me,ambientModuleName:V}=S(ce),ne=B&&j[0].capitalizedSymbolName||me;if(y(ne,j[0].targetFlags)){let $e=j.map(m).filter((Ie,ge)=>P(Ie,j[ge].packageName));if($e.length){let Ie=$($e,ne,!!V,ce);if(Ie!==void 0)return Ie}}})},releaseSymbols:()=>{o.clear()},onFileChanged:(v,B,y)=>T(v)&&T(B)?!1:u&&u!==B.path||!_(v,B)?(p.clear(),!0):(u=B.path,!1)};return I.isDebugging&&Object.defineProperty(p,"__cache",{value:i}),p;function m(v){if(v.symbol&&v.moduleSymbol)return v;let{id:B,exportKind:y,targetFlags:$,isFromPackageJson:j,moduleFileName:ce}=v,[me,V]=o.get(B)||xe;if(me&&V)return{symbol:me,moduleSymbol:V,moduleFileName:ce,exportKind:y,targetFlags:$,isFromPackageJson:j};let ne=(j?e.getPackageJsonAutoImportProvider():e.getCurrentProgram()).getTypeChecker(),ve=v.moduleSymbol||V||I.checkDefined(v.moduleFile?ne.getMergedSymbol(v.moduleFile.symbol):void 0),$e=v.symbol||me||I.checkDefined(y===2?ne.resolveExternalModuleSymbol(ve):(void 0)`Could not find symbol '${v.symbolName}' by key '${v.symbolTableKey}' in module ${ve.name}`);return o.set(B,[$e,ve]),{symbol:$e,moduleSymbol:ve,moduleFileName:ce,exportKind:y,targetFlags:$,isFromPackageJson:j}}function g(v,B,y,$){let j=y||"";return`${v.length} ${ji(uu(B,$))} ${v} ${j}`}function S(v){let B=v.indexOf(" "),y=v.indexOf(" ",B+1),$=parseInt(v.substring(0,B),10),j=v.substring(y+1),ce=j.substring(0,$),me=j.substring($+1);return{symbolName:ce,ambientModuleName:me===""?void 0:me}}function T(v){return!1}function _(v,B){if(!md(v.ambientModuleNames,B.ambientModuleNames))return!1;let y=-1,$=-1;return!0}function P(v,B){if(!B||!v.moduleFileName)return!0;let y=e.getGlobalTypingsCacheLocation();if(y&&To(v.moduleFileName,y))return!0;let $=c.get(B);return!$||To(v.moduleFileName,$)}}function MX(e,t){let i=t.resolveExternalModuleSymbol(e);if(i!==e)return{symbol:i,exportKind:2}}function BX(e,t){return!t.isUndefinedSymbol(e)&&!t.isUnknownSymbol(e)&&!Ag(e)}var I2e=new Map([[237,7],[149,6],[152,9],[170,0],[154,11],[169,10],[270,10],[156,11],[153,9],[239,5],[148,4],[174,9],[175,9]]);var Qu=Wy(1,!0,!0);function WX(){return{getNodeConstructor:()=>Zb,getTokenConstructor:()=>EP,getIdentifierConstructor:()=>CP,getSourceFileConstructor:()=>n0,getSymbolConstructor:()=>t0,getTypeConstructor:()=>r0,getSignatureConstructor:()=>i0}}var bP=class{constructor(t,i,o){this.pos=i,this.end=o,this.kind=t,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0,this.emitNode=void 0}getSourceFile(){return Dt(this)}getStart(t,i){return bg(this,t,i)}getFullStart(){return this.pos}getEnd(){return this.end}getWidth(t){return this.getEnd()-this.getStart(t)}getFullWidth(){return this.end-this.pos}getLeadingTriviaWidth(t){return this.getStart(t)-this.pos}getFullText(t){return(t||this.getSourceFile()).text.substring(this.pos,this.end)}getText(t){return t||(t=this.getSourceFile(),I.assertIsDefined(t)),t.text.substring(this.getStart(t),this.getEnd())}getChildCount(){return this.getChildren().length}getChildAt(t){return this.getChildren()[t]}getChildren(){return this.kind===1?this.jsDoc||xe:xe}getFirstToken(){}getLastToken(){}forEachChild(){}},CP=class extends bP{constructor(t,i,o){super(t,i,o)}},EP=class extends bP{constructor(t,i,o){super(t,i,o)}};function P3(e,t,i,o){let c=jh(e)?new Zb(e,t,i):e===89?new CP(89,t,i):new EP(e,t,i);return c.parent=o,c.flags=o.flags&34332768,c}var Zb=class{constructor(t,i,o){this.pos=i,this.end=o,this.kind=t,this.id=0,this.flags=0,this.modifierFlagsCache=0,this.transformFlags=0,this.parent=void 0,this.original=void 0,this.emitNode=void 0}assertHasRealPosition(t){I.assert(!_s(this.pos)&&!_s(this.end),t||"Node must have a real position for this operation")}getSourceFile(){return Dt(this)}getStart(t,i){return this.assertHasRealPosition(),bg(this,t,i)}getFullStart(){return this.assertHasRealPosition(),this.pos}getEnd(){return this.assertHasRealPosition(),this.end}getWidth(t){return this.assertHasRealPosition(),this.getEnd()-this.getStart(t)}getFullWidth(){return this.assertHasRealPosition(),this.end-this.pos}getLeadingTriviaWidth(t){return this.assertHasRealPosition(),this.getStart(t)-this.pos}getFullText(t){return this.assertHasRealPosition(),(t||this.getSourceFile()).text.substring(this.pos,this.end)}getText(t){return this.assertHasRealPosition(),t||(t=this.getSourceFile()),t.text.substring(this.getStart(t),this.getEnd())}getChildCount(t){return this.getChildren(t).length}getChildAt(t,i){return this.getChildren(i)[t]}getChildren(t=Dt(this)){return this.assertHasRealPosition("Node without a real position cannot be scanned and thus has no token nodes - use forEachChild and collect the result if that's fine"),gD(this,t)??A6(this,t,KX(this,t))}getFirstToken(t){this.assertHasRealPosition();let i=this.getChildren(t);if(!i.length)return;let o=fr(i,c=>c.kind<188||c.kind>231);return o.kind<146?o:o.getFirstToken(t)}getLastToken(t){this.assertHasRealPosition();let i=this.getChildren(t),o=ko(i);if(o)return o.kind<146?o:o.getLastToken(t)}forEachChild(t,i){return _o(this,t,i)}};function KX(e,t){let i=[];if(dN(e))return e.forEachChild(p=>{i.push(p)}),i;Qu.setText((t||e.getSourceFile()).text);let o=e.pos;I.assertIsDefined(o);let c=p=>{Xb(i,o,p.pos,e,t.inactiveCodeRanges),i.push(p),o=p.end,I.assertIsDefined(o)},u=p=>{Xb(i,o,p.pos,e,t.inactiveCodeRanges),kD(i,VX(p,e,t.inactiveCodeRanges)),o=p.end??0,I.assertIsDefined(o)};return Ln(e.jsDoc,c),o=e.pos,e.forEachChild(c,u),o>=0&&Xb(i,o,e.end,e,t.inactiveCodeRanges),Qu.setText(void 0),i}var n0=class extends Zb{constructor(t,i,o){super(t,i,o)}update(t,i){I.fail("not implemented")}getLineAndCharacterOfPosition(t){return Go(this,t)}getLineStarts(){return Qs(this)}getPositionOfLineAndCharacter(t,i,o){return sN(Qs(this),t,i,this.text,o)}getLineEndOfPosition(t){let{line:i}=this.getLineAndCharacterOfPosition(t),o=this.getLineStarts(),c;i+1>=o.length&&(c=this.getEnd()),c||(c=o[i+1]-1);let u=this.getFullText();return u[c]===`
48
+ `&&u[c-1]==="\r"?c-1:c}getNamedDeclarations(){return this.namedDeclarations||(this.namedDeclarations=this.computeNamedDeclarations()),this.namedDeclarations}computeNamedDeclarations(){let t=$s();return this.forEachChild(u),t;function i(p){let m=c(p);m&&t.add(m,p)}function o(p){let m=t.get(p);return m||t.set(p,m=[]),m}function c(p){let m=Ex(p);return m&&(ts(m)&&ii(m.expression)?m.expression.name.text:$f(m)?wJ(m):void 0)}function u(p){switch(p.kind){case 169:case 270:let m=p,g=c(m);if(g){let S=o(g),T=ko(S);T&&m.parent===T.parent&&m.symbol===T.symbol?m.body&&!T.body&&(S[S.length-1]=m):S.push(m)}_o(p,u);break;case 274:case 163:i(p),_o(p,u);break;case 149:if(!su(p,167))break;case 237:case 266:{let S=p;if(oo(S.name)){_o(S.name,u);break}S.initializer&&u(S.initializer)}case 152:i(p);break;case 269:ds(p)!==0&&i(p);default:_o(p,u)}}}};function Xb(e,t,i,o,c){let u=0;for(;u<c.length-1&&c[u].end<t;)u++;for(c.length==0&&(u=-1),Qu.resetTokenState(t,!0);t<i;){let p=Qu.scan(),m=Qu.getTokenEnd();if(p===179){for(p=Qu.scan();p!==1&&p!==4;)p=Qu.scan();t=Qu.getTokenEnd();continue}if(dm(o)&&t>=o.range?.pos){t=o.range.end;continue}if(p===178?(p=Qu.scan(),p===29&&(p=Qu.reScanLessThanTokenAsStringLiteral()),m=Qu.getTokenEnd()):p===29&&Mg(o)&&(p=Qu.reScanLessThanTokenAsStringLiteral(),m=Qu.getTokenEnd()),m<=i){for(;u>=0&&c[u].end<m&&u<c.length-1;)u++;if(u>=0&&m>=c[u].pos&&m<=c[u].end){if(p===1)break;continue}if(p===89){if(QB(o))continue;console.warn(`Did not expect ${I.formatSyntaxKind(o.kind)} to have an Identifier in its trivia`);break}e.push(P3(p,t,m,o))}if(t=m,p===1)break}}function VX(e,t,i){let o=P3(232,e.pos,e.end,t),c=[],u=e.pos;for(let p of e)Xb(c,u,p.pos,t,i),c.push(p),u=p.end;return Xb(c,u,e.end,t,i),o._children=c,o}var t0=class{constructor(t,i){this.flags=t,this.name=i,this.declarations=void 0,this.valueDeclaration=void 0,this.id=0,this.mergeId=0,this.parent=void 0,this.members=void 0,this.exports=void 0,this.exportSymbol=void 0,this.constEnumOnlyModule=void 0,this.isReferenced=void 0,this.lastAssignmentPos=void 0,this.links=void 0}getFlags(){return this.flags}getEscapedName(){return this.name}getName(){return this.name}getDeclarations(){return this.declarations}getDocumentationComment(t){return this.documentationComment||(this.documentationComment=xe,this.documentationComment=I3(this.declarations,t)),this.documentationComment}getContextualDocumentationComment(t,i){return this.getDocumentationComment(i)}getJsDocTags(t){return this.tags===void 0&&(this.tags=xe,this.tags=F3(this.declarations,t)),this.tags}getContextualJsDocTags(t,i){return this.getJsDocTags(i)}};function k3(e,t,i){let o=t.parent;if(!o)return;let c=!1;return es(rb(o),u=>{let p=e.getTypeAtLocation(u),m=c&&p.symbol?e.getTypeOfSymbol(p.symbol):p,g=e.getPropertyOfType(m,t.symbol.name);return g?i(g):void 0})}function v3(e){return $p(e).some(t=>t.tagName.text==="inheritDoc"||t.tagName.text==="inheritdoc")}function F3(e,t){if(!e)return xe;let i=vd.getJsDocTagsFromDeclarations(e,t);if(t&&(i.length===0||e.some(v3))){let o=new Set;for(let c of e){let u=k3(t,c,p=>{if(!o.has(p))return o.add(p),p.declarations?.length===1?p.getJsDocTags(t):void 0});u&&(i=[...u,...i])}}return i}var r0=class{constructor(t,i){this.flags=i,this.checker=t}isClassOrInterface(){return!!(Jn(this)&3)}isClass(){return!!(Jn(this)&1)}getFlags(){return this.flags}getSymbol(){return this.symbol}getProperties(){return this.checker.getPropertiesOfType(this)}getProperty(t){return this.checker.getPropertyOfType(this,t)}getApparentProperties(){return this.checker.getAugmentedPropertiesOfType(this)}getCallSignatures(){return this.checker.getSignaturesOfType(this,0)}getConstructSignatures(){return this.checker.getSignaturesOfType(this,1)}getStringIndexType(){return this.checker.getIndexTypeOfType(this,0)}getNumberIndexType(){return this.checker.getIndexTypeOfType(this,1)}getBaseTypes(){return this.isClassOrInterface()?this.checker.getBaseTypes(this):void 0}isNullableType(){return this.checker.isNullableType(this)}getNonNullableType(){return this.checker.getNonNullableType(this)}getNonOptionalType(){return this.checker.getNonOptionalType(this)}getConstraint(){return this.checker.getBaseConstraintOfType(this)}getDefault(){return this.checker.getDefaultFromTypeParameter(this)}isUnion(){return!!(this.flags&1048576)}isUnionOrIntersection(){return!!(this.flags&3145728)}isLiteral(){return!!(this.flags&2432)}isStringLiteral(){return!!(this.flags&128)}isIntLiteral(){return!!(this.flags&256)}isFloatLiteral(){return!!(this.flags&2048)}isTypeParameter(){return!!(this.flags&262144)}isIndexType(){return!!(this.flags&4194304)}},i0=class{constructor(t,i){this.flags=i,this.checker=t}getDeclaration(){return this.declaration}getTypeParameters(){return this.typeParameters}getParameters(){return this.parameters}getReturnType(){return this.checker.getReturnTypeOfSignature(this)}getDocumentationComment(){return this.documentationComment||(this.documentationComment=I3(Fy(this.declaration),this.checker))}getJsDocTags(){return this.jsDocTags||(this.jsDocTags=F3(Fy(this.declaration),this.checker))}};Q2(WX());function NP(e){return e.nameTable||zX(e),e.nameTable}function zX(e){let t=e.nameTable=new Map;e.forEachChild(function i(o){if(cn(o)&&!VJ(o)&&o.text||wc(o)&&HX(o)){let c=ZN(o);t.set(c,t.get(c)===void 0?o.pos:-1)}if(_o(o,i),Ms(o))for(let c of o.jsDoc)_o(c,i)})}function HX(e){return tl(e)||tb(e)}function ll(e,t,i){return fr(e.getChildren(i),o=>o.kind===t)}function qX(e,t){return e.kind===1?!!e.jsDoc:e.getWidth(t)!==0}function Qb(e,t,i){return o(t);function o(c){return Bh(c)&&c.pos===e.end?c:es(c.getChildren(i),u=>(u.pos<=e.pos&&u.end>e.end||u.pos===e.end)&&qX(u,i)?o(u):void 0)}}function I3(e,t){if(!e)return xe;let i=vd.getJsDocCommentsFromDeclarations(e,t);if(t&&(i.length===0||e.some(v3))){let o=new Set;for(let c of e){let u=k3(t,c,p=>{if(!o.has(p))return o.add(p),p.getDocumentationComment(t)});u&&(i=i.length===0?u.slice():u.concat(Hg(),i))}}return i}var kT={};pd(kT,{CompletionKind:()=>f0,CompletionSource:()=>U3,SortText:()=>_a,StringCompletions:()=>zS,SymbolOriginInfoKind:()=>W3,createCompletionDetails:()=>VS,createCompletionDetailsForSymbol:()=>AP,getCompletionEntriesFromSymbols:()=>LP,getCompletionEntryDetails:()=>_Z,getCompletionEntrySymbol:()=>bZ,getCompletionsAtPosition:()=>tZ,getPropertiesForObjectExpression:()=>eU,moduleSpecifierResolutionCacheAttemptLimit:()=>J3,moduleSpecifierResolutionLimit:()=>l0});var l0=100,J3=1e3,_a={LocalDeclarationPriority:"10",LocationPriority:"11",OptionalMember:"12",MemberDeclaredBySpreadAssignment:"13",SuggestedClassMembers:"14",GlobalsOrKeywords:"15",AutoImportSuggestions:"16",ClassMemberSnippets:"17",JavascriptIdentifiers:"18",Deprecated(e){return"z"+e},ObjectLiteralProperty(e,t){return`${e}\0${t}\0`},SortBelow(e){return e+"1"}},U3=(p=>(p.ThisProperty="ThisProperty/",p.ClassMemberSnippet="ClassMemberSnippet/",p.TypeOnlyAlias="TypeOnlyAlias/",p.ObjectLiteralMethodSnippet="ObjectLiteralMethodSnippet/",p.SwitchCases="SwitchCases/",p.ObjectLiteralMemberWithComma="ObjectLiteralMemberWithComma/",p))(U3||{}),W3=(P=>(P[P.ThisType=1]="ThisType",P[P.SymbolMember=2]="SymbolMember",P[P.Export=4]="Export",P[P.Promise=8]="Promise",P[P.Nullable=16]="Nullable",P[P.ResolvedExport=32]="ResolvedExport",P[P.TypeOnlyAlias=64]="TypeOnlyAlias",P[P.ObjectLiteralMethod=128]="ObjectLiteralMethod",P[P.Ignore=256]="Ignore",P[P.ComputedPropertyName=512]="ComputedPropertyName",P[P.SymbolMemberNoExport=2]="SymbolMemberNoExport",P[P.SymbolMemberExport=6]="SymbolMemberExport",P))(W3||{});function GX(e){return!!(e.kind&1)}function $X(e){return!!(e.kind&2)}function tC(e){return!!(e&&e.kind&4)}function FT(e){return!!(e&&e.kind===32)}function QX(e){return tC(e)||FT(e)||u0(e)}function YX(e){return(tC(e)||FT(e))&&!!e.isFromPackageJson}function XX(e){return!!(e.kind&8)}function ZX(e){return!!(e.kind&16)}function K3(e){return!!(e&&e.kind&128)}function eZ(e){return!!(e&&e.kind&256)}function u0(e){return!!(e&&e.kind&512)}function nZ(e,t,i,o,c,u,p,m,g){let S=uo(),T=p,_=!1,P=0,v=0,B=0,y=0,$=g({tryResolve:ce,skippedAny:()=>_,resolvedAny:()=>v>0,resolvedBeyondLimit:()=>v>l0}),j=y?` (${(B/y*100).toFixed(1)}% hit rate)`:"";return t.log?.(`${e}: resolved ${v} module specifiers, plus ${P} ambient and ${B} from cache${j}`),t.log?.(`${e}: response is ${_?"incomplete":"complete"}`),t.log?.(`${e}: ${uo()-S}`),$;function ce(me,V){if(V){let Ie=i.getModuleSpecifierForBestExportInfo(me,c,m);return Ie&&P++,Ie||"failed"}let ne=T||u.allowIncompleteCompletions&&v<l0,ve=!ne&&u.allowIncompleteCompletions&&y<J3,$e=ne||ve?i.getModuleSpecifierForBestExportInfo(me,c,m,ve):void 0;return(!ne&&!ve||ve&&!$e)&&(_=!0),v+=$e?.computedWithoutCacheCount||0,B+=me.length-($e?.computedWithoutCacheCount||0),ve&&y++,$e||(T?"failed":"skipped")}}function tZ(e,t,i,o,c,u,p,m,g,S,T=!1){let{previousToken:_}=wP(c,o);if(p&&!KJ(o,c,_)&&!up(o,c,_)&&!RZ(o,p,_,c))return;if(p===" ")return u.includeCompletionsForImportStatements&&u.includeCompletionsWithInsertText?{isGlobalCompletion:!0,isMemberCompletion:!1,isNewIdentifierLocation:!0,isIncomplete:!0,entries:[]}:void 0;let P=t.getCompilerOptions(),v=t.getTypeChecker(),B=u.allowIncompleteCompletions?e.getIncompleteCompletionsCache?.():void 0;if(B&&m===3&&_&&cn(_)){let j=rZ(B,o,_,t,e,u,g,c);if(j)return j}else B?.clear();let y=zS.getStringLiteralCompletions(o,c,_,P,e,t,i,u,T);if(y)return y;if(_&&_.parent&&Jh(_.parent)&&(_.kind===106||_.kind===121||_.kind===89))return hZ(_.parent);let $=Y3(t,i,o,P,c,u,void 0,e,S,g);if($)switch($.kind){case 0:let j=sZ(o,e,t,P,i,$,u,S,c,T);return j?.isIncomplete&&B?.set(j),j;case 1:return a0([...vd.getJSDocTagNameCompletions(),...w3(o,c,v,P,u,!0)]);case 2:return a0([...vd.getJSDocTagCompletions(),...w3(o,c,v,P,u,!1)]);case 3:return a0(vd.getJSDocParameterNameCompletions($.tag));case 4:return oZ($.keywordCompletions,$.isNewIdentifierLocation);default:return I.assertNever($)}}function PP(e,t){let i=qE(e.sortText,t.sortText);return i===0&&(i=qE(e.name,t.name)),i===0&&e.data?.moduleSpecifier&&t.data?.moduleSpecifier&&(i=WB(e.data.moduleSpecifier,t.data.moduleSpecifier)),i===0?-1:i}function V3(e){return!!e?.moduleSpecifier}function rZ(e,t,i,o,c,u,p,m){let g=e.get();if(!g)return;let S=kd(t,m),T=i.text.toLowerCase(),_=N3(t,c,o,u,p),P=nZ("continuePreviousIncompleteResponse",c,HS.createImportSpecifierResolver(t,o,c,u),o,i.getStart(),u,!1,MN(i),v=>{let B=_i(g.entries,y=>{if(!y.hasAction||!y.source||!y.data||V3(y.data))return y;if(!WZ(y.name,T))return;let{origin:$}=I.checkDefined(X3(y.name,y.data,o,c)),j=_.get(t.path,y.data.exportMapKey),ce=j&&v.tryResolve(j,!$d(Fl($.moduleSymbol.name)));if(ce==="skipped")return y;if(!ce||ce==="failed"){c.log?.(`Unexpected failure resolving auto import for '${y.name}' from '${y.source}'`);return}let me={...$,kind:32,moduleSpecifier:ce.moduleSpecifier};return y.data=$3(me),y.source=p0(me),y.sourceDisplay=[ks(me.moduleSpecifier)],y});return v.skippedAny()||(g.isIncomplete=void 0),B});return g.entries=P,g.flags=(g.flags||0)|4,g.optionalReplacementSpan=z3(S),g}function a0(e){return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:!1,entries:e}}function w3(e,t,i,o,c,u){let p=$u(e,t);if(!fg(p)&&!ec(p))return[];let m=ec(p)?p:p.parent;if(!ec(m))return[];let g=m.parent;if(!ki(g))return[];let S=!1,T=c.includeCompletionsWithSnippetText||void 0,_=yd(m.tags,P=>Os(P)&&P.getEnd()<=t);return _i(g.parameters,P=>{if(!Kh(P).length){if(cn(P.name)){let v={tabstop:1},B=P.name.text,y=nC(B,P.initializer,P.dotDotDotToken,S,!1,!1,i,o,c),$=T?nC(B,P.initializer,P.dotDotDotToken,S,!1,!0,i,o,c,v):void 0;return u&&(y=y.slice(1),$&&($=$.slice(1))),{name:y,kind:"parameter",sortText:_a.LocationPriority,insertText:T?$:void 0,isSnippet:T}}else if(P.parent.parameters.indexOf(P)===_){let v=`param${_}`,B=O3(v,P.name,P.initializer,P.dotDotDotToken,S,!1,i,o,c),y=T?O3(v,P.name,P.initializer,P.dotDotDotToken,S,!0,i,o,c):void 0,$=B.join(Yd(o)+"* "),j=y?.join(Yd(o)+"* ");return u&&($=$.slice(1),j&&(j=j.slice(1))),{name:$,kind:"parameter",sortText:_a.LocationPriority,insertText:T?j:void 0,isSnippet:T}}}})}function O3(e,t,i,o,c,u,p,m,g){if(!c)return[nC(e,i,o,c,!1,u,p,m,g,{tabstop:1})];return S(e,t,i,o,{tabstop:1});function S(_,P,v,B,y){return[nC(_,v,B,c,!1,u,p,m,g,y)]}function T(_,P,v){if(!P.propertyName&&cn(P.name)||cn(P.name)){let B=P.propertyName?ib(P.propertyName):P.name.text;if(!B)return;let y=`${_}.${B}`;return[nC(y,P.initializer,P.dotDotDotToken,c,!1,u,p,m,g,v)]}else if(P.propertyName){let B=ib(P.propertyName);return B&&S(`${_}.${B}`,P.name,P.initializer,P.dotDotDotToken,v)}}}function nC(e,t,i,o,c,u,p,m,g,S){if(u&&I.assertIsDefined(S),t&&(e=iZ(e,t)),u&&(e=OI(e)),o){let T="*";if(c)I.assert(!i,"Cannot annotate a rest parameter with type 'Object'."),T="Object";else{if(t){let v=p.getTypeAtLocation(t.parent);if(!(v.flags&16385)){let B=t.getSourceFile(),$=US(B,g)===0?268435456:0,j=p.typeToTypeNode(v,It(t,ki),$);if(j){let ce=u?IP({removeComments:!0,module:m.module,target:m.target}):df({removeComments:!0,module:m.module,target:m.target});Va(j,1),T=ce.printNode(4,j,B)}}}u&&T==="*"&&(T=`\${${S.tabstop++}:${T}}`)}let _=!c&&i?"...":"",P=u?`\${${S.tabstop++}}`:"";return`@param {${_}${T}} ${e} ${P}`}else{let T=u?`\${${S.tabstop++}}`:"";return`@param ${e} ${T}`}}function iZ(e,t){let i=t.getText().trim();return i.includes(`
49
+ `)||i.length>80?`[${e}]`:`[${e}=${i}]`}function oZ(e,t){return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:t,entries:e.slice()}}function aZ(e,t,i){return{kind:4,keywordCompletions:PZ(e,t),isNewIdentifierLocation:i}}function z3(e){return e?.kind===89?lp(e):void 0}function sZ(e,t,i,o,c,u,p,m,g,S){let{symbols:T,contextToken:_,completionKind:P,isInSnippetScope:v,isNewIdentifierLocation:B,location:y,propertyAccessToConvert:$,keywordFilters:j,symbolToOriginInfoMap:ce,recommendedCompletion:me,isTypeOnlyLocation:V,isRightOfDotOrQuestionDot:ne,importStatementCompletion:ve,insideJsDocTagTypeExpression:$e,symbolToSortTextMap:Ie,hasUnresolvedAutoImports:ge}=u,Ae=u.literals,Qe=i.getTypeChecker(),ye=It(_,AL);if(ye&&(A4(_)||fS(_,ye.expression))){let te=$b(Qe,ye.parent.clauses);Ae=Ae.filter(le=>!te.hasValue(le))}let ae=Ch(),Ee=H3(e,o);if(Ee&&!B&&(!T||T.length===0)&&j===0)return;let z=LP(T,ae,void 0,_,y,g,e,t,i,il(o),c,P,p,o,m,V,$,ve,me,ce,Ie,S);for(let te of FZ(_,g))z.has(te.name)||(z.add(te.name),Uf(ae,te,PP,void 0,!0));for(let te of Ae){let le=uZ(e,p,te);z.add(le.name),Uf(ae,le,PP,void 0,!0)}Ee||lZ(e,y.pos,z,il(o),ae);let ze;if(p.includeCompletionsWithInsertText&&_&&!ne&&(ze=It(_,L4))){let te=q3(ze,e,p,o,t,i,m);te&&ae.push(te.entry)}return{flags:u.flags,isGlobalCompletion:v,isIncomplete:p.allowIncompleteCompletions&&ge?!0:void 0,isMemberCompletion:cZ(P),isNewIdentifierLocation:B,optionalReplacementSpan:z3(y),entries:ae}}function H3(e,t){return!0}function q3(e,t,i,o,c,u,p){let m=e.clauses,g=u.getTypeChecker(),S=g.getTypeAtLocation(e.parent.expression);if(S&&S.isUnion()&&di(S.types,T=>T.isLiteral())){let T=$b(g,m),_=il(o),P=US(t,i),v=[];for(let V of S.types)if(!T.hasValue(V.value))switch(typeof V.value){case"number":v.push(V.value<0?we.createPrefixUnaryExpression(42,we.createIntLiteral(-V.value)):we.createIntLiteral(V.value));break;case"string":v.push(we.createStringLiteral(V.value,P===0));break}if(v.length===0)return;let B=qn(v,V=>we.createCaseClause(V,[])),y=PT(c,p?.options),$=IP({removeComments:!0,module:o.module,newLine:KS(y)}),j=p?V=>$.printAndFormatNode(4,V,t,p):V=>$.printNode(4,V,t),ce=qn(B,(V,ne)=>i.includeCompletionsWithSnippetText?`${j(V)}$${ne+1}`:`${j(V)}`).join(y);return{entry:{name:`${$.printNode(4,B[0],t)} ...`,kind:"",sortText:_a.GlobalsOrKeywords,insertText:ce,hasAction:void 0,source:"SwitchCases/",isSnippet:i.includeCompletionsWithSnippetText?!0:void 0}}}}function cZ(e){switch(e){case 0:case 3:case 2:return!0;default:return!1}}function lZ(e,t,i,o,c){NP(e).forEach((u,p)=>{if(u===t)return;let m=p;!i.has(m)&&zp(m,o)&&(i.add(m),Uf(c,{name:m,kind:"warning",kindModifiers:"",sortText:_a.JavascriptIdentifiers,isFromUncheckedFile:!0},PP))})}function d0(e,t,i){return ho(i)?qA(e,t,i):JSON.stringify(i)}function uZ(e,t,i){return{name:d0(e,t,i),kind:"string",kindModifiers:"",sortText:_a.LocationPriority}}function dZ(e,t,i,o,c,u,p,m,g,S,T,_,P,v,B,y,$,j,ce,me,V){let ne,ve,$e=_P(i,u),Ie,ge,Ae=p0(_),Qe,ye,ae;I.assertIsDefined(S);let Ee=g.getTypeChecker(),z=_&&ZX(_),ze=_&&$X(_)||T;if(_&&GX(_))ne=T?`this${z?"?.":""}[${R3(p,j,S)}]`:`this${z?"?.":"."}${S}`;else if((ze||z)&&v){ne=ze?T?`[${R3(p,j,S)}]`:`[${S}]`:S;let le=ll(v,24,p)||ll(v,28,p);if(!le)return;let bn=To(S,v.name.text)?v.name.end:le.end;$e=Zs(le.getStart(p),bn)}if(_&&XX(_)&&v){ne===void 0&&(ne=S);let le=fs(v.pos,p),bn="";le&&VA(le.end,le.parent,p)&&(bn=";"),bn+=`(await ${v.expression.getText()})`,ne=T?`${bn}${ne}`:`${bn}${z?"?.":"."}${ne}`;let Ft=v.expression;$e=Zs(Ft.getStart(p),v.end)}if(FT(_)&&(Qe=[ks(_.moduleSpecifier)]),_?.kind===64&&(ye=!0),ce===0&&o&&fs(o.pos,p,o)?.kind!==27&&(PS(o.parent.parent)||DS(o.parent)||It(o.parent,zu)?.getLastToken(p)===o||pu(o.parent)&&Go(p,o.getEnd()).line!==Go(p,u).line)&&(Ae="ObjectLiteralMemberWithComma/",ye=!0),j.includeCompletionsWithClassMemberSnippets&&j.includeCompletionsWithInsertText&&ce===3&&pZ(e,c,p)){let le,bn=G3(m,g,$,j,S,e,c,u,o,me);if(bn)({insertText:ne,filterText:ve,isSnippet:ge}=bn),(le?.hasFixes()||bn.eraseRange)&&(ye=!0,Ae="ClassMemberSnippet/");else return}if(_&&K3(_)&&({insertText:ne,isSnippet:ge,labelDetails:ae}=_,j.useLabelDetailsInCompletionEntries||(S=S+ae.detail,ae=void 0),Ae="ObjectLiteralMethodSnippet/",t=_a.SortBelow(t)),ne!==void 0&&!j.includeCompletionsWithInsertText)return;(tC(_)||FT(_))&&(Ie=$3(_),ye=!B);let te=It(c,jB);return{name:S,kind:gu.getSymbolKind(Ee,e,c),kindModifiers:gu.getSymbolModifiers(Ee,e),sortText:t,source:Ae,hasAction:ye?!0:void 0,isRecommended:TZ(e,P,Ee)||void 0,insertText:ne,filterText:ve,replacementSpan:$e,sourceDisplay:Qe,labelDetails:ae,isSnippet:ge,isPackageJsonImport:YX(_)||void 0,isImportStatementCompletion:!!B||void 0,data:Ie,...V?{symbol:e}:void 0}}function pZ(e,t,i){if(mr(t))return!1;let o=106500;return!!(e.flags&o)&&(ia(t)||t.parent&&t.parent.parent&&Gy(t.parent)&&t===t.parent.name&&t.parent.getLastToken(i)===t.parent.name&&ia(t.parent.parent)||t.parent&&TT(t)&&ia(t.parent))}function G3(e,t,i,o,c,u,p,m,g,S){if(!It(p,ia))return;let _,P=c,v=c,B=t.getTypeChecker(),y=p.getSourceFile(),$=IP({removeComments:!0,module:i.module,omitTrailingSemicolon:!1,newLine:KS(PT(e,S?.options))}),j;if(o.includeCompletionsWithSnippetText){_=!0;let ve=we.createEmptyStatement();j=we.createBlock([ve],!0),cL(ve,{kind:0,order:0})}else j=we.createBlock([],!0);let ce=0,{modifiers:me,range:V}=fZ(g,y,m),ne=!1;return{insertText:P,filterText:v,isSnippet:_,eraseRange:V}}function fZ(e,t,i){if(!e||Go(t,i).line>Go(t,e.getEnd()).line)return{modifiers:0};let o=0,c,u={pos:i,end:i};if(Oc(e.parent)&&(c=mZ(e))){e.parent.modifiers&&(o|=iI(e.parent.modifiers)&67559,u.pos=Math.min(...e.parent.modifiers.map(m=>m.getStart(t))));let p=yg(c);o&p||(o|=p,u.pos=Math.min(u.pos,e.getStart(t))),e.parent.name!==e&&(u.end=e.parent.name.getStart(t))}return{modifiers:o,range:u.pos<u.end?u:void 0}}function mZ(e){if(Gp(e))return e.kind;if(cn(e)){let t=Nx(e);if(t&&mg(t))return t}}function gZ(e,t,i,o,c,u){let p=e.getDeclarations();if(!(p&&p.length))return;let m=o.getTypeChecker(),g=p[0],S=SP(ti(g),!1),T=m.getWidenedType(m.getTypeOfSymbolAtLocation(e,t)),_=US(i,u),P=33554432|(_===0?268435456:0);switch(g.kind){case 153:case 152:case 156:case 154:{let v=T.flags&1048576&&T.types.length<10?m.getUnionType(T.types,2):T;if(v.flags&1048576){let j=Rr(v.types,ce=>m.getSignaturesOfType(ce,0).length>0);if(j.length===1)v=j[0];else return}if(m.getSignaturesOfType(v,0).length!==1)return;let y=m.typeToTypeNode(v,t,P,HS.getNoopSymbolTrackerWithResolver({program:o,host:c}));if(!y||!Zf(y))return;let $;if(u.includeCompletionsWithSnippetText){let j=we.createEmptyStatement();$=we.createBlock([j],!0),cL(j,{kind:0,order:0})}else $=we.createBlock([],!0);return}default:return}}function IP(e){let t,i=dp.createWriter(Yd(e)),o=df(e,i),c={...i,write:P=>u(P,()=>i.write(P)),nonEscapingWrite:i.write,writeLiteral:P=>u(P,()=>i.writeLiteral(P)),writeStringLiteral:P=>u(P,()=>i.writeStringLiteral(P)),writeSymbol:(P,v)=>u(P,()=>i.writeSymbol(P,v)),writeParameter:P=>u(P,()=>i.writeParameter(P)),writeComment:P=>u(P,()=>i.writeComment(P)),writeProperty:P=>u(P,()=>i.writeProperty(P))};return{printSnippetList:p,printAndFormatSnippetList:g,printNode:S,printAndFormatNode:_};function u(P,v){let B=OI(P);if(B!==P){let y=i.getTextPos();v();let $=i.getTextPos();t=Fr(t||(t=[]),{newText:B,span:{start:y,length:$-y}})}else v()}function p(P,v,B){let y=m(P,v,B);return t?dp.applyChanges(y,t):y}function m(P,v,B){return t=void 0,c.clear(),o.writeList(P,v,B,c),c.getText()}function g(P,v,B,y){let $={text:m(P,v,B),fileName:B.fileName,getLineAndCharacterOfPosition(V){return Go(this,V)}},j=Gb(y,B),ce=Co(v,V=>{let ne=dp.assignPositionsToNode(V);return rc.formatNodeGivenIndentation(ne,$,B.languageVariant,0,0,{...y,options:j})}),me=t?fd(Kr(ce,t),(V,ne)=>kF(V.span,ne.span)):ce;return dp.applyChanges($.text,me)}function S(P,v,B){let y=T(P,v,B);return t?dp.applyChanges(y,t):y}function T(P,v,B){return t=void 0,c.clear(),o.writeNode(P,v,B,c),c.getText()}function _(P,v,B,y){let $={text:T(P,v,B),fileName:B.fileName,getLineAndCharacterOfPosition(ne){return Go(this,ne)}},j=Gb(y,B),ce=dp.assignPositionsToNode(v),me=rc.formatNodeGivenIndentation(ce,$,B.languageVariant,0,0,{...y,options:j}),V=t?fd(Kr(me,t),(ne,ve)=>kF(ne.span,ve.span)):me;return dp.applyChanges($.text,V)}}function $3(e){let t=e.fileName?void 0:Fl(e.moduleSymbol.name),i=e.isFromPackageJson?!0:void 0;return FT(e)?{exportName:e.exportName,exportMapKey:e.exportMapKey,moduleSpecifier:e.moduleSpecifier,ambientModuleName:t,fileName:e.fileName,isPackageJsonImport:i}:{exportName:e.exportName,exportMapKey:e.exportMapKey,fileName:e.fileName,ambientModuleName:e.fileName?void 0:Fl(e.moduleSymbol.name),isPackageJsonImport:e.isFromPackageJson?!0:void 0}}function yZ(e,t,i){let o=e.exportName==="default",c=!!e.isPackageJsonImport;return V3(e)?{kind:32,exportName:e.exportName,exportMapKey:e.exportMapKey,moduleSpecifier:e.moduleSpecifier,symbolName:t,fileName:e.fileName,moduleSymbol:i,isDefaultExport:o,isFromPackageJson:c}:{kind:4,exportName:e.exportName,exportMapKey:e.exportMapKey,symbolName:t,fileName:e.fileName,moduleSymbol:i,isDefaultExport:o,isFromPackageJson:c}}function R3(e,t,i){return/^\d+$/.test(i)?i:qA(e,t,i)}function TZ(e,t,i){return e===t}function p0(e){if(tC(e))return Fl(e.moduleSymbol.name);if(FT(e))return e.moduleSpecifier;if(e?.kind===1)return"ThisProperty/";if(e?.kind===64)return"TypeOnlyAlias/"}function LP(e,t,i,o,c,u,p,m,g,S,T,_,P,v,B,y,$,j,ce,me,V,ne=!1){let ve=uo(),$e=JZ(o,c),Ie=!0,ge=g.getTypeChecker(),Ae=new Map;for(let ae=0;ae<e.length;ae++){let Ee=e[ae],z=me?.[ae],ze=kP(Ee,S,z,_);if(!ze||Ae.get(ze.name)&&(!z||!K3(z))||_===1&&V&&!Qe(Ee,V)||!y&&mr(p)&&ye(Ee))continue;let{name:te,needsConvertPropertyAccess:le}=ze,bn=V?.[ji(Ee)]??_a.LocationPriority,Ft=UZ(Ee,ge)?_a.Deprecated(bn):bn,ue=dZ(Ee,Ft,i,o,c,u,p,m,g,te,le,z,ce,$,j,Ie,v,P,_,B,ne);if(!ue)continue;let gn=(!z||tU(z))&&!(Ee.parent===void 0&&!Tn(Ee.declarations,je=>je.getSourceFile()===c.getSourceFile()));Ae.set(te,gn),Uf(t,ue,PP,void 0,!0)}return T("getCompletionsAtPosition: getCompletionEntriesFromSymbols: "+(uo()-ve)),{has:ae=>Ae.has(ae),add:ae=>Ae.set(ae,!0)};function Qe(ae,Ee){let z=ae.flags;if(!Mr(c)){if(So($e,po)&&ae.valueDeclaration===$e)return!1;let ze=ae.valueDeclaration??ae.declarations?.[0];if($e&&ze&&(Al($e)&&Al(ze)||Qi($e)&&Qi(ze))){let le=ze.pos,bn=Qi($e)?$e.parent.parameters:void 0;if(le>=$e.pos&&bn&&le<bn.end)return!1}let te=uu(ae,ge);if(p.externalModuleIndicator&&Ee[ji(ae)]===_a.GlobalsOrKeywords&&(Ee[ji(te)]===_a.AutoImportSuggestions||Ee[ji(te)]===_a.LocationPriority))return!1;if(z|=tm(te),y)return nU(ae,ge)}return!!(z&268547007)}function ye(ae){let Ee=tm(uu(ae,ge));return!(Ee&268547007)&&(!mr(ae.declarations?.[0])||!!(Ee&788968))}}function hZ(e){let t=SZ(e);if(t.length)return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:!1,entries:t}}function SZ(e){let t=[],i=new Map,o=e;for(;o&&!ki(o);){if(BD(o)){let c=o.label.text;i.has(c)||(i.set(c,!0),t.push({name:c,kindModifiers:"",kind:"label",sortText:_a.LocationPriority}))}o=o.parent}return t}function Q3(e,t,i,o,c,u,p){if(c.source==="SwitchCases/")return{type:"cases"};if(c.data){let ce=X3(c.name,c.data,e,u);if(ce){let{contextToken:me,previousToken:V}=wP(o,i);return{type:"symbol",symbol:ce.symbol,location:kd(i,o),previousToken:V,contextToken:me,isTypeOnlyLocation:!1,origin:ce.origin}}}let m=e.getCompilerOptions(),g=Y3(e,t,i,m,o,{includeCompletionsForModuleExports:!0,includeCompletionsWithInsertText:!0},c,u,void 0);if(!g)return{type:"none"};if(g.kind!==0)return{type:"request",request:g};let{symbols:S,literals:T,location:_,completionKind:P,symbolToOriginInfoMap:v,contextToken:B,previousToken:y,isTypeOnlyLocation:$}=g,j=fr(T,ce=>d0(i,p,ce)===c.name);return j!==void 0?{type:"literal",literal:j}:es(S,(ce,me)=>{let V=v[me],ne=kP(ce,il(m),V,P);return ne&&ne.name===c.name&&(c.source==="ClassMemberSnippet/"&&ce.flags&106500||c.source==="ObjectLiteralMethodSnippet/"&&ce.flags&8196||p0(V)===c.source||c.source==="ObjectLiteralMemberWithComma/")?{type:"symbol",symbol:ce,location:_,origin:V,contextToken:B,previousToken:y,isTypeOnlyLocation:$}:void 0})||{type:"none"}}function _Z(e,t,i,o,c,u,p,m,g){let S=e.getTypeChecker(),T=e.getCompilerOptions(),{name:_,source:P,data:v}=c,{previousToken:B,contextToken:y}=wP(o,i);if(up(i,o,B))return zS.getStringLiteralCompletionDetails(_,i,o,B,e,u,g,m);let $=Q3(e,t,i,o,c,u,m);switch($.type){case"request":{let{request:j}=$;switch(j.kind){case 1:return vd.getJSDocTagNameCompletionDetails(_);case 2:return vd.getJSDocTagCompletionDetails(_);case 3:return vd.getJSDocParameterNameCompletionDetails(_);case 4:return Tn(j.keywordCompletions,ce=>ce.name===_)?s0(_,"keyword",5):void 0;default:return I.assertNever(j)}}case"symbol":{let{symbol:j,location:ce,contextToken:me,origin:V,previousToken:ne}=$,{codeActions:ve,sourceDisplay:$e}=xZ(_,ce,me,V,j,e,u,T,i,o,ne,p,m,v,P,g),Ie=u0(V)?V.symbolName:j.name;return AP(j,Ie,S,i,ce,g,ve,$e)}case"literal":{let{literal:j}=$;return s0(d0(i,m,j),"string",typeof j=="string"?8:7)}case"cases":{let j=q3(y.parent,i,m,e.getCompilerOptions(),u,e,void 0);return{name:_,kind:"",kindModifiers:"",displayParts:[],sourceDisplay:void 0}}case"none":return Z3().some(j=>j.name===_)?s0(_,"keyword",5):void 0;default:I.assertNever($)}}function s0(e,t,i){return VS(e,"",t,[Ha(e,i)])}function AP(e,t,i,o,c,u,p,m){let{displayParts:g,documentation:S,symbolKind:T,tags:_}=i.runWithCancellationToken(u,P=>gu.getSymbolDisplayPartsDocumentationAndSymbolKind(P,e,o,c,c,7));return VS(t,gu.getSymbolModifiers(i,e),T,g,S,_,p,m)}function VS(e,t,i,o,c,u,p,m){return{name:e,kindModifiers:t,kind:i,displayParts:o,documentation:c,tags:u,codeActions:p,source:m,sourceDisplay:m}}function xZ(e,t,i,o,c,u,p,m,g,S,T,_,P,v,B,y){if(B==="ClassMemberSnippet/"){let{eraseRange:$}=G3(p,u,m,P,e,c,t,S,i,_)}if(tU(o),B==="ObjectLiteralMemberWithComma/"&&i){let $=dp.ChangeTracker.with({host:p,formatContext:_,preferences:P},j=>j.insertText(g,i.end,","));if($)return{sourceDisplay:void 0,codeActions:[{changes:$,description:QJ([N.Add_missing_comma_for_object_member_completion_0,e])}]}}if(!o||!(tC(o)||FT(o)))return{codeActions:void 0,sourceDisplay:void 0}}function bZ(e,t,i,o,c,u,p){let m=Q3(e,t,i,o,c,u,p);return m.type==="symbol"?m.symbol:void 0}var f0=(p=>(p[p.ObjectPropertyDeclaration=0]="ObjectPropertyDeclaration",p[p.Global=1]="Global",p[p.PropertyAccess=2]="PropertyAccess",p[p.MemberLike=3]="MemberLike",p[p.String=4]="String",p[p.None=5]="None",p))(f0||{});function CZ(e,t,i){return es(t&&(t.isUnion()?t.types:[t]),o=>{let c=o&&o.symbol;return c&&c.flags&424?m0(c,e,i):void 0})}function EZ(e,t,i,o){let{parent:c}=e;switch(e.kind){case 89:return Hb(e,o);case 74:switch(c.kind){case 237:return o.getContextualType(c.initializer);case 269:return o.getTypeAtLocation(c.left);default:return}case 145:return o.getContextualType(c);case 113:let u=So(c,AL);return u?UA(u,o):void 0;default:let p=vT.getArgumentInfoForCompletions(e,t,i,o);return p?o.getContextualTypeForArgumentAtIndex(p.invocation,p.argumentIndex):TP(e.kind)&&gr(c)&&TP(c.operatorToken.kind)?o.getTypeAtLocation(c.left):o.getContextualType(e,4)||o.getContextualType(e)}}function m0(e,t,i){let o=i.getAccessibleSymbolChain(e,t,-1,!1);return o?Eo(o):e.parent&&(NZ(e.parent)?e:m0(e.parent,t,i))}function NZ(e){return!1}function Y3(e,t,i,o,c,u,p,m,g,S){let T=e.getTypeChecker(),_=H3(i,o),P=uo(),v=$u(i,c);t("getCompletionData: Get current token: "+(uo()-P)),P=uo();let B=qg(i,c,v);t("getCompletionData: Is inside comment: "+(uo()-P));let y=!1,$=!1,j=!1;if(B){if(l3(i,c)){if(i.text.charCodeAt(c-1)===64)return{kind:1};{let Mn=cl(c,i);if(!/[^*|\s(/)]/.test(i.text.substring(Mn,c)))return{kind:2}}}let Fe=IZ(v,c);if(Fe){if(Fe.tagName&&Fe.tagName.pos<=c&&c<=Fe.tagName.end)return{kind:1};if(I4(Fe))$=!0;else{let Mn=ot(Fe);if(Mn&&(v=$u(i,c),(!v||!tl(v)&&(v.parent.kind!==227||v.parent.name!==v))&&(y=Zo(Mn))),!y&&Os(Fe)&&(oa(Fe.name)||Fe.name.pos<=c&&c<=Fe.name.end))return{kind:3,tag:Fe}}}if(!y&&!$){t("Returning an empty list because completion was inside a regular comment or plain text part of a JsDoc comment.");return}}P=uo();let ce=!y&&!$&&!1,me=wP(c,i),V=me.previousToken,ne=me.contextToken;t("getCompletionData: Get previous token: "+(uo()-P));let ve=v,$e,Ie=!1,ge=!1,Ae,Qe=kd(i,c),ye=0,ae=!1,Ee=0;if(ne){let Fe=ne.parent;if(ne.kind===24||ne.kind===28||ne.kind===40)switch(Ie=ne.kind===24||ne.kind===40,ge=ne.kind===28,Fe.kind){case 286:$e=Fe,ve=$e.expression;let Mn=BB($e);if(oa(Mn)||(ao(ve)||ki(ve))&&ve.end===ne.pos&&ve.getChildCount(i)&&Ro(ve.getChildren(i)).kind!==21)return;break;case 146:ve=Fe.left;break;default:return}else Ae||Fe&&Fe.kind===286&&(ne=Fe,Fe=Fe.parent)}let z=uo(),ze=5,te=!1,le=[],bn,Ft=[],ue=[],gn=new Map,je=zn(),Pn=eg(Fe=>GA(Fe?m.getPackageJsonAutoImportProvider():e,m));if(Ie||ge)Bt();else{Nt();let Fe=!Rs(Qe)&&Qe?.parent?.parent&&Mr(Qe.parent.parent);if(Fe||!hn())return ye=Fe?1:5,ye?aZ(ye,ce,ae):void 0}t("getCompletionData: Semantic work: "+(uo()-z));let Ut=V&&EZ(V,c,i,T),fn=!So(V,hd)?_i(Ut&&(Ut.isUnion()?Ut.types:[Ut]),Fe=>Fe.isLiteral()&&!(Fe.flags&1024)?Fe.value:void 0):[],re=V&&Ut&&CZ(V,Ut,T);return{kind:0,symbols:le,completionKind:ze,isInSnippetScope:j,propertyAccessToConvert:$e,isNewIdentifierLocation:ae,location:Qe,keywordFilters:ye,literals:fn,symbolToOriginInfoMap:Ft,recommendedCompletion:re,previousToken:V,contextToken:ne,insideJsDocTagTypeExpression:y,symbolToSortTextMap:ue,isTypeOnlyLocation:je,isRightOfDotOrQuestionDot:Ie||ge,importStatementCompletion:Ae,hasUnresolvedAutoImports:te,flags:Ee};function dt(Fe){switch(Fe.kind){case 220:case 227:case 221:case 223:case 225:case 229:case 230:return!0;case 224:return!!Fe.constraint;default:return!1}}function ot(Fe){if(dt(Fe)){let Mn=Ys(Fe)?Fe.constraint:Fe.typeExpression;return Mn&&Mn.kind===188?Mn:void 0}}function Nt(){let Fe=Dt(ve);Mr(Fe)&&Fe.statements&&Ln(Fe.statements,Mn=>{dm(Mn)&&kD(le,T.getSymbolAtLocation(Mn))})}function Bt(){ze=2;let Fe=!1,Mn=of(ve.parent);if(dg(ve)||Fe||ii(ve)){let ir=T.getSymbolAtLocation(ve);ir&&(ir=uu(ir,T))}if(!Mn||fb(ve)){let lt;if(!dg(ve)&&X2(ve)?lt=T.getTypeOfPropertyAccessExpr(ve.parent):(T.tryGetThisTypeAt(ve,!1),lt=T.getTypeAtLocation(ve).getNonOptionalType()),Mn)Zt(lt.getNonNullableType(),!1,!1);else{let ir=!1;if(lt.isNullableType()){let nn=Ie&&!ge&&u.includeAutomaticOptionalChainCompletions!==!1;(nn||ge)&&(lt=lt.getNonNullableType(),nn&&(ir=!0))}Zt(lt,!!(ve.flags&65536),ir)}}}function Zt(Fe,Mn,lt){ae=!!Fe.getStringIndexType(),ge&&Tn(Fe.getCallSignatures())&&(ae=!0);let ir=ve.parent;if(_)for(let nn of Fe.getApparentProperties())!(nn.flags&8388608)&&T.isValidPropertyAccessForCompletions(ir,Fe,nn)&&ar(nn,!1,lt);else le.push(...Rr(c0(Fe,T),nn=>T.isValidPropertyAccessForCompletions(ir,Fe,nn)))}function Kt(Fe){return cn(Fe)?Fe:ii(Fe)?Kt(Fe.expression):void 0}function ar(Fe,Mn,lt){let ir=es(Fe.declarations,xt=>So(ti(xt),ts));if(ir){let xt=Kt(ir.expression),Ur=xt&&T.getSymbolAtLocation(xt),ai=Ur&&m0(Ur,ne,T),qt=ai&&ji(ai);if(qt&&sf(gn,qt)){let Pe=le.length;le.push(ai);let Be=ai.parent;console.debug("todo - completions - property from module");let Ze=void 0,{moduleSpecifier:Wn}=(bn||(bn=HS.createImportSpecifierResolver(i,e,m,u))).getModuleSpecifierForBestExportInfo([{exportKind:0,moduleFileName:Ze,isFromPackageJson:!1,moduleSymbol:Be,symbol:ai,targetFlags:uu(ai,T).flags}],c,MN(Qe))||{};if(Wn){let ut={kind:ht(6),moduleSymbol:Be,isDefaultExport:!1,symbolName:ai.name,exportName:ai.name,fileName:Ze,moduleSpecifier:Wn};Ft[Pe]=ut}}else if(u.includeCompletionsWithInsertText){if(qt&&gn.has(qt))return;Un(Fe),nn(Fe),le.push(Fe)}}else Un(Fe),nn(Fe),le.push(Fe);function nn(xt){BZ(xt)&&(ue[ji(xt)]=_a.LocalDeclarationPriority)}function Un(xt){u.includeCompletionsWithInsertText&&(Mn&&sf(gn,ji(xt))?Ft[le.length]={kind:ht(8)}:lt&&(Ft[le.length]={kind:16}))}function ht(xt){return lt?xt|16:xt}}function hn(){return(Ye()||ee()||er()||pn()||(Ti(),1))===1}function er(){return Ae?(ae=!0,1):0}function Ti(){ye=Le(ne)?5:1,ze=1,ae=Ve(),V!==ne&&I.assert(!!V,"Expected 'contextToken' to be defined when different from 'previousToken'.");let Fe=V!==ne?V.getStart():c,Mn=_e(ne,Fe,i)||i;j=Yn(Mn);let lt=(je?0:111551)|788968|1920|2097152,ir=V&&!MN(V);le=Kr(le,T.getSymbolsInScope(Mn,lt)),I.assertEachIsDefined(le,"getSymbolsInScope() should all be defined");for(let nn=0;nn<le.length;nn++){let Un=le[nn];!T.isArgumentsSymbol(Un)&&!Tn(Un.declarations,ht=>ht.getSourceFile()===i)&&(ue[ji(Un)]=_a.GlobalsOrKeywords)}u.includeCompletionsWithInsertText&&(Mn.kind,176),je&&(ye=ne&&kx(ne.parent)?6:7)}function qe(){return!1}function Yn(Fe){switch(Fe.kind){case 176:case 236:return!0;default:return Hp(Fe)}}function zn(){return y||$||!jt(ne)&&(Qe.parent&&of(Qe)||nr(ne))}function jt(Fe){return!1}function nr(Fe){if(Fe){let Mn=Fe.parent.kind;switch(Fe.kind){case 61:return Mn===152||Mn===153||Mn===149||Mn===237||lg(Mn);case 74:return Mn===148;case 29:return Mn===166}}return!1}function Vr(Fe,Mn){let lt=ji(Fe);ue[lt]!==_a.GlobalsOrKeywords&&(Ft[le.length]=Mn,ue[lt]=Ae?_a.LocationPriority:_a.AutoImportSuggestions,le.push(Fe))}function qi(Fe,Mn){mr(Qe)||Fe.forEach(lt=>{if(!fe(lt))return;let ir=kP(lt,il(o),void 0,0);if(!ir)return;let{name:nn}=ir,Un=VZ(lt,nn,Mn,e,m,o,u,g);if(!Un)return;let ht={kind:128,...Un};Ee|=32,Ft[le.length]=ht,le.push(lt)})}function fe(Fe){return!!(Fe.flags&8196)}function _e(Fe,Mn,lt){let ir=Fe;for(;ir&&!g3(ir,Mn,lt);)ir=ir.parent;return ir}function De(Fe){let Mn=uo(),lt=tn(Fe)||hi(Fe)||Sn(Fe);return t("getCompletionsAtPosition: isCompletionListBlocker: "+(uo()-Mn)),lt}function Ve(){if(ne){let Fe=ne.parent.kind,Mn=DP(ne);switch(Mn){case 27:return Fe===272||Fe===276||Fe===290||Fe===269||Fe===293;case 20:return Fe===272||Fe===276||Fe===289||Fe===165;case 22:return Fe===290||Fe===150||Fe===147;case 24:return!1;case 17:return!1;case 74:return Fe===237||Fe===269;case 40:return Fe===286||Fe===272;case 43:return Fe===169}if(FP(Mn))return!0}return!1}function tn(Fe){return SN(Fe)&&(RS(Fe,c)||c===Fe.end&&!!Fe.isUnterminated)}function Ye(){let Fe=wZ(ne);if(!Fe)return 0;let lt=!1||Fe,ir=void 0;if(!ir)return 0;let nn=T.getTypeFromTypeNode(lt),Un=c0(ir,T),ht=c0(nn,T),xt=new Set;return ht.forEach(Ur=>xt.add(Ur.name)),le=Kr(le,Rr(Un,Ur=>!xt.has(Ur.name))),ze=0,ae=!0,1}function ee(){if(ne?.kind===25)return 0;let Fe=le.length,Mn=DZ(ne,c,i);if(!Mn)return 0;ze=0;let lt,ir;if(Mn.kind===293){let nn=jZ(Mn,T);if(nn===void 0)return 0;let Un=T.getContextualType(Mn,4),ht=(Un||nn).getStringIndexType(),xt=(Un||nn).getNumberIndexType();if(ae=!!ht||!!xt,lt=eU(nn,Un,Mn,T),ir=Mn.properties,lt.length===0&&!xt)return 0}if(lt&&lt.length>0){let nn=Gr(lt,I.checkDefined(ir));le=Kr(le,nn),No(),Mn.kind===293&&u.includeCompletionsWithObjectLiteralMethodSnippets&&u.includeCompletionsWithInsertText&&(Xo(Fe),qi(nn,Mn))}return 1}function pn(){let Fe=i;if(!Fe||!ne)return 0;if(ze=3,ae=!0,ye=ne.kind===43?0:ia(Fe)?2:3,!Mr(Fe))return 1;let Mn=ne.kind===26?ne.parent.parent:ne.parent;if(!Mn)return 0;let lt=Gy(Mn)?Sd(Mn):0;if(ne.kind===89&&!Zo(ne))switch(ne.getText()){case"private":lt=lt|2;break;case"static":lt=lt|256;break}if(!(lt&2)&&Fe.symbol){let ir=T.getSymbolAtLocation(Fe),nn=T.getTypeOfSymbol(ir),Un=T.resolveBaseTypesOfClass(nn),ht=[...Un],xt=new Set(Un);for(;ht.length>0;){let qt=ht.pop();qt&&T.resolveBaseTypesOfClass(qt).forEach(Be=>{xt.has(Be)||(ht.push(Be),xt.add(Be))})}let Ur=nn.members?Object.values(nn.members):void 0,ai=Co(Yo(xt.values()),qt=>{let Pe=qt.declaredProperties,Be=(qt.symbol?.members&&Yo(qt.symbol?.members.values()))??xe;return Kr(Pe??xe,Be)});le=Kr(le,qa(ai,Ur??xe,lt)),Ln(le,(qt,Pe)=>{let Be=qt?.valueDeclaration;if(Be&&Gy(Be)&&Be.name&&ts(Be.name)){let Ze={kind:512,symbolName:T.symbolToString(qt)};Ft[Pe]=Ze}})}return 0}function X(Fe){return!!Fe.parent&&Qi(Fe.parent)&&Bg(Fe.parent.parent)&&(_N(Fe.kind)||tl(Fe))}function Le(Fe){if(Fe){let Mn,lt=It(Fe.parent,ir=>ia(ir)?"quit":pc(ir)&&Mn===ir.body?!0:(Mn=ir,!1));return lt&&lt}}function oi(Fe,Mn){return i.getLineEndOfPosition(Fe.getEnd())<Mn}function hi(Fe){let Mn=Fe.parent,lt=Mn.kind;switch(Fe.kind){case 27:return lt===237||Fo(Fe)||lt===242||lt===265;case 24:return lt===265;case 61:return lt===266;case 22:return lt===265;case 20:return lt===255;case 17:return!1;case 29:return lg(lt);case 125:return lt===152&&!ia(Mn.parent);case 25:return lt===149||!!Mn.parent&&Mn.parent.kind===265;case 124:case 122:case 123:return lt===149&&!Bg(Mn.parent);case 89:{if(It(Fe.parent,po)&&oi(Fe,c))return!1;break}case 138:return!0;case 43:return ki(Fe.parent)&&!Ns(Fe.parent)}if(FP(DP(Fe))&&OZ(Fe)||X(Fe)&&(!cn(Fe)||_N(DP(Fe))||Zo(Fe)))return!1;switch(DP(Fe)){case 138:case 122:case 123:case 124:case 125:return!0;case 119:return Oc(Fe.parent)}if(It(Fe.parent,ia)&&Fe===V&&Cr(Fe,c))return!1;let nn=Zp(Fe.parent,152);if(nn&&Fe!==V&&ia(V.parent.parent)&&c<=V.end){if(Cr(Fe,V.end))return!1;if(Fe.kind!==74&&(UB(nn)||Wh(nn)))return!0}return tl(Fe)&&!pu(Fe.parent)&&!((ia(Fe.parent)||Al(Fe.parent))&&(Fe!==V||c>V.end))}function Cr(Fe,Mn){return Fe.kind!==74&&(Fe.kind===26||!Il(Fe.end,Mn,i))}function Sn(Fe){if(Fe.kind===10){let Mn=Fe.getFullText();return Mn.charAt(Mn.length-1)==="."}return!1}function Fo(Fe){return Fe.parent.kind===238}function Gr(Fe,Mn){if(Mn.length===0)return Fe;let lt=new Set,ir=new Set;for(let Un of Mn){if(Un.kind!==174&&Un.kind!==175&&Un.kind!==266||Zo(Un))continue;let ht;if(fo(Un)&&Un.propertyName)Un.propertyName.kind===89&&(ht=Un.propertyName.text);else{let xt=ti(Un);ht=xt&&em(xt)?ZN(xt):void 0}ht!==void 0&&ir.add(ht)}let nn=Fe.filter(Un=>!ir.has(Un.name));return Oo(lt,nn),nn}function No(){le.forEach(Fe=>{if(Fe.flags&16777216){let Mn=ji(Fe);ue[Mn]=ue[Mn]??_a.OptionalMember}})}function Oo(Fe,Mn){if(Fe.size!==0)for(let lt of Mn)Fe.has(lt.name)&&(ue[ji(lt)]=_a.MemberDeclaredBySpreadAssignment)}function Xo(Fe){for(let Mn=Fe;Mn<le.length;Mn++){let lt=le[Mn],ir=ji(lt),nn=Ft?.[Mn],Un=il(o),ht=kP(lt,Un,nn,0);if(ht){let xt=ue[ir]??_a.LocationPriority,{name:Ur}=ht;ue[ir]=_a.ObjectLiteralProperty(xt,Ur)}}}function qa(Fe,Mn,lt){let ir=new Set;for(let nn of Mn){if(nn.kind!==152||Zo(nn)||Qd(nn,2)||sT(nn)!==!!(lt&256))continue;let Un=Fg(nn.name);Un&&ir.add(Un)}return Fe.filter(nn=>!ir.has(nn.name)&&!!nn.declarations&&!(vl(nn)&2))}function Zo(Fe){return Fe.getStart(i)<=c&&c<=Fe.getEnd()}}function DZ(e,t,i){if(e){let{parent:o}=e;switch(e.kind){case 17:case 27:if(Ka(o))return o;break;case 43:return PS(o)?So(o.parent,Ka):void 0;case 119:return So(o.parent,Ka);case 89:if(e.text==="async"&&pu(e.parent))return e.parent.parent;{if(Ka(e.parent.parent)&&(DS(e.parent)||pu(e.parent)&&Go(i,e.getEnd()).line!==Go(i,t).line))return e.parent.parent;let u=It(o,zu);if(u?.getLastToken(i)===e&&Ka(u.parent))return u.parent}break;default:if(o.parent?.parent&&PS(o.parent)&&Ka(o.parent.parent))return o.parent.parent;if(DS(o)&&Ka(o.parent))return o.parent;let c=It(o,zu);if(e.kind!==61&&c?.getLastToken(i)===e&&Ka(c.parent))return c.parent}}}function wP(e,t){let i=fs(e,t);return i&&e<=i.end&&(Gf(i)||fc(i.kind))?{contextToken:fs(i.getFullStart(),t,void 0),previousToken:i}:{contextToken:i,previousToken:i}}function X3(e,t,i,o){let c=t.isPackageJsonImport?o.getPackageJsonAutoImportProvider():i,u=c.getTypeChecker(),p=t.fileName?u.getMergedSymbol(I.checkDefined(c.getSourceFile(t.fileName)).symbol):void 0;if(!p)return;let m=u.resolveExternalModuleSymbol(p);return m?(m=t.exportName==="default"&&nS(m)||m,{symbol:m,origin:yZ(t,e,p)}):void 0}function kP(e,t,i,o){if(eZ(i))return;let c=QX(i)?i.symbolName:e.name;if(c===void 0||e.flags&1536&&qN(c.charCodeAt(0))||Ag(e))return;let u={name:c,needsConvertPropertyAccess:!1};if(zp(c,t,2))return u;switch(o){case 3:return u0(i)?{name:i.symbolName,needsConvertPropertyAccess:!1}:void 0;case 0:return{name:JSON.stringify(c),needsConvertPropertyAccess:!1};case 2:case 1:return c.charCodeAt(0)===32?void 0:{name:c,needsConvertPropertyAccess:!0};case 5:case 4:return u;default:I.assertNever(o)}}var vP=[],Z3=Dc(()=>{let e=[];for(let t=92;t<=145;t++){let i=gi(t);120,i&&e.push({name:gi(t),kind:"keyword",kindModifiers:"",sortText:_a.GlobalsOrKeywords})}return e});function PZ(e,t){if(!t)return M3(e);let i=e+8+1;return vP[i]||(vP[i]=M3(e).filter(o=>!kZ(zd(o.name))))}function M3(e){return vP[e]||(vP[e]=Z3().filter(t=>{let i=zd(t.name);switch(e){case 0:return!1;case 1:return B3(i)||zb(i)&&i!==96;case 5:return B3(i);case 2:return FP(i);case 3:return vZ(i);case 7:return zb(i);default:return I.fail("Unknown keyword filter")}}))}function kZ(e){switch(e){case 97:case 92:case 93:case 140:case 101:case 99:case 104:case 122:case 123:case 124:case 94:case 102:return!0;default:return!1}}function vZ(e){return!1}function FP(e){switch(e){case 119:return!0;default:return e2(e)}}function B3(e){return e===119||e===120||e===179||e===178||!RI(e)&&!FP(e)}function DP(e){return cn(e)?Nx(e)??0:e.kind}function FZ(e,t){let i=[];if(e){let o=e.getSourceFile(),c=e.parent,u=o.getLineAndCharacterOfPosition(e.end).line,p=o.getLineAndCharacterOfPosition(t).line}return i}function IZ(e,t){return It(e,i=>fg(i)&&WS(i,t)?!0:ec(i)?"quit":!1)}function eU(e,t,i,o){let c=t&&t!==e,u=c&&!(t.flags&3)?o.getUnionType([e,t]):e,p=LZ(u,i,o);return c?Rr(p,m):p;function m(g){return rr(g.declarations)?Tn(g.declarations,S=>S.parent!==i):!0}}function LZ(e,t,i){return e.isUnion()?i.getAllPossiblePropertiesOfTypes(Rr(e.types,o=>!(o.flags&402784188||i.isArrayLikeType(o)||i.isTypeInvalidDueToUnionDiscriminant(o,t)||i.typeHasCallOrConstructSignatures(o)||o.isClass()&&AZ(o.getApparentProperties())))):e.getApparentProperties()}function AZ(e){return Tn(e,t=>!!(vl(t)&6))}function c0(e,t){return e.isUnion()?I.checkEachDefined(t.getAllPossiblePropertiesOfTypes(e.types),"getAllPossiblePropertiesOfTypes() should all be defined"):I.checkEachDefined(e.getApparentProperties(),"getApparentProperties() should all be defined")}function wZ(e){if(!e)return;let t=e.parent;switch(e.kind){case 17:if(Mu(t))return t;break;case 26:case 27:case 89:if(t.kind===153&&Mu(t.parent))return t.parent;break}}function OZ(e){return!1}function RZ(e,t,i,o){switch(t){case".":case"@":return!0;case'"':case"'":case"`":return!!i&&m3(i)&&o===i.getStart(e)+1;case"<":return!!i&&i.kind===29&&(!gr(i.parent)||MZ(i.parent));case"/":return!!i&&(hd(i)?!!eD(i):!1);case" ":return!!i&&OD(i)&&i.parent.kind===176;case">":return!!i&&ii(i);default:return I.assertNever(t)}}function MZ({left:e}){return oa(e)}function BZ(e){return!!(e.valueDeclaration&&Sd(e.valueDeclaration)&256&&ia(e.valueDeclaration.parent))}function jZ(e,t){let i=t.getContextualType(e);if(i)return i;let o=Lg(e.parent);if(gr(o)&&o.operatorToken.kind===74&&e===o.left)return t.getTypeAtLocation(o);if(Xs(o))return t.getContextualType(o)}function JZ(e,t){if(!e)return;let i=It(e,c=>Xf(c)||j3(c)||oo(c)?"quit":Qi(c)||Al(c)),o=It(t,c=>Xf(c)||j3(c)||oo(c)?"quit":po(c));return i||o}function j3(e){return e.parent&&Hu(e.parent)&&(e.parent.body===e||e.kind===39)}function nU(e,t,i=new Map){return o(e)||o(uu(e.exportSymbol||e,t));function o(c){return!!(c.flags&788968)||t.isUnknownSymbol(c)||!!(c.flags&1536)&&sf(i,ji(c))&&t.getExportsOfModule(c).some(u=>nU(u,t,i))}}function UZ(e,t){let i=uu(e,t).declarations;return!!rr(i)&&di(i,Vb)}function WZ(e,t){if(t.length===0)return!0;let i=!1,o,c=0,u=e.length;for(let p=0;p<u;p++){let m=e.charCodeAt(p),g=t.charCodeAt(c);if((m===g||m===KZ(g))&&(i||(i=o===void 0||97<=o&&o<=122&&65<=m&&m<=90||o===95&&m!==95),i&&c++,c===t.length))return!0;o=m}return!1}function KZ(e){return 97<=e&&e<=122?e-32:e}function tU(e){return!!(e&&e.kind&64)}function VZ(e,t,i,o,c,u,p,m){let g=p.includeCompletionsWithSnippetText||void 0,S=t,T=i.getSourceFile(),_=gZ(e,i,T,o,c,p);if(!_)return;let P=IP({removeComments:!0,module:u.module,target:u.target,omitTrailingSemicolon:!1,newLine:KS(PT(c,m?.options))});m?S=P.printAndFormatSnippetList(80,we.createNodeArray([_],!0),T,m):S=P.printSnippetList(80,we.createNodeArray([_],!0),T);let v=df({removeComments:!0,module:u.module,target:u.target,omitTrailingSemicolon:!0}),B=we.createMethodSignature(void 0,"",_.questionToken,void 0,_.parameters,_.type),y={detail:v.printNode(4,B,T)};return{isSnippet:g,insertText:S,labelDetails:y}}var zS={};pd(zS,{getStringLiteralCompletionDetails:()=>QZ,getStringLiteralCompletions:()=>zZ});function zZ(e,t,i,o,c,u,p,m,g){if(up(e,t,i)){if(!i||!hd(i))return;let S=oU(e,i,t,u,c,m);return qZ(S,i,e,c,u,p,o,m,t,g)}}function HZ(e){return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:!0,entries:e.map(({name:c,kind:u,span:p,extension:m})=>({name:c,kind:u,kindModifiers:iU(m),sortText:_a.LocationPriority,replacementSpan:p}))}}function iU(e){switch(e){case".c":return".c";case".h":return".h";case".lpc":return".lpc";case".json":return".json";case void 0:return"";default:return I.assertNever(e)}}function qZ(e,t,i,o,c,u,p,m,g,S){if(e===void 0)return;let T=QA(t,g);switch(e.kind){case 0:return HZ(e.paths);case 1:{let _=Ch();return LP(e.symbols,_,t,t,i,g,i,o,c,1,u,4,m,p,void 0,void 0,void 0,void 0,void 0,void 0,void 0,S),{isGlobalCompletion:!1,isMemberCompletion:!0,isNewIdentifierLocation:e.hasIndexSignature,optionalReplacementSpan:T,entries:_}}case 2:{let _=To(Ic(t),"'")?39:34,P=e.types.map(v=>({name:rf(v.value,_),kindModifiers:"",kind:"string",sortText:_a.LocationPriority,replacementSpan:_P(t,g)}));return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:e.isNewIdentifier,optionalReplacementSpan:T,entries:P}}default:return I.assertNever(e)}}function g0(e){switch(e.kind){case 165:return YN(e);case 289:return Lg(e);default:return e}}function oU(e,t,i,o,c,u){let p=o.getTypeChecker(),m=g0(t.parent);switch(m.kind){case 257:{let B=g0(m.parent);return g(B)}case 174:return Ka(m.parent)&&m.name===t?void 0:S()||S(0);case 281:{let{expression:B,argumentExpression:y}=m;return t===vo(y)?rU(p.getTypeAtLocation(B)):void 0}case 272:case 276:let T=vT.getArgumentInfoForCompletions(t,i,e,p);return T&&GZ(T.invocation,t,T,p)||S(0);case 299:let _=$b(p,m.parent.clauses),P=S();return P?{kind:2,types:P.types.filter(B=>!_.hasValue(B.value)),isNewIdentifier:!1}:void 0;default:return S()||S(0)}function g(T){switch(T.kind){case 261:let{indexType:_,objectType:P}=T;return WS(_,i)?rU(p.getTypeFromTypeNode(P)):void 0;case 157:{let v=g(g0(T.parent));if(!v)return;let B=$Z(T,m);return v.kind===1?{kind:1,symbols:v.symbols.filter(y=>!Yr(B,y.name)),hasIndexSignature:v.hasIndexSignature}:{kind:2,types:v.types.filter(y=>!Yr(B,y.value)),isNewIdentifier:!1}}default:return}}function S(T=4){let _=aU(Hb(t,p,T));if(_.length)return{kind:2,types:_,isNewIdentifier:!1}}}function aU(e,t=new Map){return e?(e=S3(e),e.isUnion()?Co(e.types,i=>aU(i,t)):e.isStringLiteral()&&!(e.flags&1024)&&sf(t,e.value)?[e]:xe):xe}function rU(e){return e&&{kind:1,symbols:Rr(e.getApparentProperties(),t=>!0),hasIndexSignature:h3(e)}}function GZ(e,t,i,o){let c=!1,u=new Map,p=t,m=o.getCandidateSignaturesForStringLiteralCompletions(e,p),g=[];return rr(g)?{kind:2,types:g,isNewIdentifier:c}:void 0}function $Z(e,t){return _i(e.types,i=>i!==t&&El(i)&&Pi(i.literal)?i.literal.text:void 0)}function QZ(e,t,i,o,c,u,p,m){if(!o||!hd(o))return;let g=oU(t,o,i,c,u,m);return g&&YZ(e,o,g,t,c.getTypeChecker(),p)}function YZ(e,t,i,o,c,u){switch(i.kind){case 0:{let p=fr(i.paths,m=>m.name===e);return p&&VS(e,iU(p.extension),p.kind,[ks(e)])}case 1:{let p=fr(i.symbols,m=>m.name===e);return p&&AP(p,p.name,c,o,t,u)}case 2:return fr(i.types,p=>p.value===e)?VS(e,"","string",[ks(e)]):void 0;default:return I.assertNever(i)}}var Gg={};pd(Gg,{Core:()=>IT,DefinitionKind:()=>sU,EntryKind:()=>cU,ExportKind:()=>Yb,FindReferencesUse:()=>fU,ImportExport:()=>YA,createImportTracker:()=>xP,findModuleReferences:()=>XA,findReferenceOrRenameEntries:()=>aee,findReferencedSymbols:()=>iee,getContextNode:()=>Qg,getImportOrExportSymbol:()=>OX,getTextSpanOfEntry:()=>y0,isContextWithStartAndEndNode:()=>OP,isDeclarationOfSymbol:()=>pU,isWriteAccessForReference:()=>dU,toContextSpan:()=>T0,toReferenceEntry:()=>lU,toRenameLocation:()=>see});var sU=(p=>(p[p.Symbol=0]="Symbol",p[p.Label=1]="Label",p[p.Keyword=2]="Keyword",p[p.This=3]="This",p[p.String=4]="String",p[p.TripleSlashReference=5]="TripleSlashReference",p))(sU||{}),cU=(u=>(u[u.Span=0]="Span",u[u.Node=1]="Node",u[u.StringLiteral=2]="StringLiteral",u[u.SearchedLocalFoundProperty=3]="SearchedLocalFoundProperty",u[u.SearchedPropertyFoundLocal=4]="SearchedPropertyFoundLocal",u))(cU||{});function $g(e,t=1){return{kind:t,node:e.name||e,context:XZ(e)}}function OP(e){return e&&e.kind===void 0}function y0(e){return e.kind===0?e.textSpan:iC(e.node,e.node.getSourceFile())}function Qg(e){if(e)switch(e.kind){case 237:return!RD(e.parent)||e.parent.declarations.length!==1?e:du(e.parent.parent)?e.parent.parent:Hf(e.parent.parent)?Qg(e.parent.parent):e.parent;case 266:return Qg(e.parent.parent);case 269:return yb(e.parent)?e.parent:e;case 244:return{start:e.initializer,end:e.expression};case 174:case 175:return dP(e.parent)?Qg(It(e.parent,t=>gr(t)||Hf(t))):e;case 256:return{start:fr(e.getChildren(e.getSourceFile()),t=>t.kind===117),end:e.caseBlock};default:return e}}function XZ(e){if(Ru(e))return Qg(e);if(e.parent){if(!Ru(e.parent)){if(Jh(e.parent))return e.parent;if(Pi(e))return console.warn("TODO implement me - isStringLiteral import lookup"),e;let t=It(e,ts);return t?Qg(t.parent):void 0}if(e.parent.name===e)return Qg(e.parent)}}function iC(e,t,i){let o=e.getStart(t),c=(i||e).getEnd();return Pi(e)&&c-o>2&&(I.assert(i===void 0),o+=1,c-=1),i?.kind===240&&(c=i.getFullStart()),Zs(o,c)}function T0(e,t,i){if(!i)return;let o=OP(i)?iC(i.start,t,i.end):iC(i,t);return o.start!==e.start||o.length!==e.length?{contextSpan:o}:void 0}function ZZ(e){return e.kind===114||!!nb(e)||tb(e)}function eee(e,t){let i=lU(e);return t?{...i,isDefinition:e.kind!==0&&pU(e.node,t)}:i}function lU(e){let t=uU(e);if(e.kind===0)return{...t,isWriteAccess:!1};let{kind:i,node:o}=e;return{...t,isWriteAccess:dU(o),isInString:i===2?!0:void 0}}function uU(e){if(e.kind===0)return{textSpan:e.textSpan,fileName:e.fileName};{let t=e.node.getSourceFile(),i=iC(e.node,t);return{textSpan:i,fileName:t.fileName,...T0(i,t,e.context)}}}function dU(e){let t=nb(e);return!!t&&nee(t)||e.kind===114||rS(e)}function nee(e){if(e.flags&33554432)return!0;switch(e.kind){case 269:case 266:case 274:case 114:case 171:case 217:case 225:case 149:case 175:case 148:return!0;case 174:return!dP(e.parent);case 169:case 270:return!!e.body;case 237:case 152:return!!e.initializer;case 227:case 220:return!1;default:return I.failBadSyntaxKind(e)}}function pU(e,t){if(!t)return!1;let i=nb(e)||(e.kind===114?e.parent:tb(e)?e.parent.parent:void 0),o=i&&gr(i)?i.left:void 0;return!!(i&&t.declarations?.some(c=>c===i||c===o))}function rC(e){let t=e.getSourceFile();return{sourceFile:t,textSpan:iC(ts(e)?e.expression:e,t)}}function tee(e,t,i){let o=IT.getIntersectingMeaningFromDeclarations(i,e),c=e.declarations&&Ta(e.declarations)||i,{displayParts:u,symbolKind:p}=gu.getSymbolDisplayPartsDocumentationAndSymbolKind(t,e,c.getSourceFile(),c,c,o);return{displayParts:u,kind:p}}function ree(e,t,i){let o=(()=>{switch(e.type){case 0:{let{symbol:T}=e,{displayParts:_,kind:P}=tee(T,t,i),v=_.map($=>$.text).join(""),B=T.declarations&&Ta(T.declarations),y=B?ti(B)||B:i;return{...rC(y),name:v,kind:P,displayParts:_,context:Qg(B)}}case 1:{let{node:T}=e;return{...rC(T),name:T.text,kind:"label",displayParts:[Ha(T.text,17)]}}case 2:{let{node:T}=e,_=gi(T.kind);return{...rC(T),name:_,kind:"keyword",displayParts:[{text:_,kind:"keyword"}]}}case 3:{let{node:T}=e,_=t.getSymbolAtLocation(T),P=_&&gu.getSymbolDisplayPartsDocumentationAndSymbolKind(t,_,T.getSourceFile(),Wb(T),T).displayParts||[ks("this")];return{...rC(T),name:"this",kind:"var",displayParts:P}}case 4:{let{node:T}=e;return{...rC(T),name:T.text,kind:"var",displayParts:[Ha(Ic(T),8)]}}default:return I.assertNever(e)}})(),{sourceFile:c,textSpan:u,name:p,kind:m,displayParts:g,context:S}=o;return{containerKind:"",containerName:"",fileName:c.fileName,kind:m,name:p,textSpan:u,displayParts:g,...T0(u,c,S)}}function iee(e,t,i,o,c){let u=kd(o,c),p={use:1},m=IT.getReferencedSymbolsForNode(c,u,e,i,t,p),g=e.getTypeChecker(),S=IT.getAdjustedNode(u,p),T=ZZ(S)?g.getSymbolAtLocation(S):void 0;return!m||!m.length?void 0:_i(m,({definition:_,references:P})=>_&&{definition:g.runWithCancellationToken(t,v=>ree(_,v,u)),references:P.map(v=>eee(v,T))})}var fU=(o=>(o[o.Other=0]="Other",o[o.References=1]="References",o[o.Rename=2]="Rename",o))(fU||{}),IT;(qi=>{function e(fe,_e,De,Ve,tn,Ye={},ee=new Set(Ve.map(pn=>pn.fileName))){if(_e=t(_e,Ye),Mr(_e)){let Sn=eC.getReferenceAtPosition(_e,fe,De);if(!Sn?.file)return;let Fo=De.getTypeChecker().getMergedSymbol(Sn.file.symbol);return Fo?g(De,Fo,!1,Ve,ee):(De.getFileIncludeReasons(),void 0)}if(!Ye.implementations){let Sn=T(_e,Ve,tn);if(Sn)return Sn}let pn=De.getTypeChecker(),X=pn.getSymbolAtLocation(_e);if(!X)return!Ye.implementations&&Pi(_e)?Bt(_e,Ve,pn,tn):void 0;if(X.name==="export=")return g(De,X.parent,!1,Ve,ee);let Le=u(X,De,Ve,tn,Ye,ee);if(Le&&!(X.flags&33554432))return Le;let oi=void 0,hi=oi&&u(oi,De,Ve,tn,Ye,ee),Cr=_(X,_e,Ve,ee,pn,tn,Ye);return p(De,Le,Cr,hi)}qi.getReferencedSymbolsForNode=e;function t(fe,_e){return _e.use===1?fe=MA(fe):_e.use===2&&(fe=hP(fe)),fe}qi.getAdjustedNode=t;function i(fe,_e,De,Ve=new Set(De.map(tn=>tn.fileName))){let tn=_e.getSourceFile(fe)?.symbol;if(tn)return g(_e,tn,!1,De,Ve)[0]?.references||xe;let Ye=_e.getFileIncludeReasons(),ee=_e.getSourceFile(fe);return ee&&Ye&&o(ee,Ye,_e)||xe}qi.getReferencesForFileName=i;function o(fe,_e,De){let Ve,tn=_e.get(fe.path)||xe;for(let Ye of tn)if(ap(Ye)){let ee=De.getSourceFileByPath(Ye.file),pn=ST(De,Ye);Ug(pn)&&(Ve=Fr(Ve,{kind:0,fileName:ee.fileName,textSpan:jS(pn)}))}return Ve}function c(fe,_e,De){}function u(fe,_e,De,Ve,tn,Ye){let ee=fe.flags&1536&&fe.declarations&&fr(fe.declarations,Mr);if(!ee)return;let pn=fe.exports.get("export="),X=g(_e,fe,!!pn,De,Ye);if(!pn||!Ye.has(ee.fileName))return X;let Le=_e.getTypeChecker();return fe=uu(pn,Le),p(_e,X,_(fe,void 0,De,Ye,Le,Ve,tn))}function p(fe,..._e){let De;for(let Ve of _e)if(!(!Ve||!Ve.length)){if(!De){De=Ve;continue}for(let tn of Ve){if(!tn.definition||tn.definition.type!==0){De.push(tn);continue}let Ye=tn.definition.symbol,ee=uc(De,X=>!!X.definition&&X.definition.type===0&&X.definition.symbol===Ye);if(ee===-1){De.push(tn);continue}let pn=De[ee];De[ee]={definition:pn.definition,references:pn.references.concat(tn.references).sort((X,Le)=>{let oi=m(fe,X),hi=m(fe,Le);if(oi!==hi)return ro(oi,hi);let Cr=y0(X),Sn=y0(Le);return Cr.start!==Sn.start?ro(Cr.start,Sn.start):ro(Cr.length,Sn.length)})}}}return De}function m(fe,_e){let De=_e.kind===0?fe.getSourceFile(_e.fileName):_e.node.getSourceFile();return fe.getSourceFiles().indexOf(De)}function g(fe,_e,De,Ve,tn){I.assert(!!_e.valueDeclaration);let Ye=_i(XA(fe,Ve,_e),pn=>{if(pn.kind==="import"){let X=pn.literal.parent;return El(X)&&I.fail("TODO implement me - isLiteralTypeNode"),$g(pn.literal)}else if(pn.kind==="implicit")I.fail("TODO implement me - implicit");else return{kind:0,fileName:pn.referencingFile.fileName,textSpan:jS(pn.ref)}});if(_e.declarations)for(let pn of _e.declarations)switch(pn.kind){case 176:break;default:I.assert(!!(_e.flags&33554432),"Expected a module symbol to be declared by a SourceFile or ModuleDeclaration.")}let ee=_e.exports.get("export=");if(ee?.declarations)for(let pn of ee.declarations){let X=pn.getSourceFile();if(tn.has(X.fileName)){let Le=gr(pn)&&ii(pn.left)?pn.left.expression:ti(pn)||pn;Ye.push($g(Le))}}return Ye.length?[{definition:{type:0,symbol:_e},references:Ye}]:xe}function S(fe){return!1}function T(fe,_e,De){if(zb(fe.kind))return fe.kind===105&&D4(fe.parent)?void 0:ze(_e,fe.kind,De,void 0);if(jA(fe)){let Ve=JA(fe.parent,fe.text);return Ve&&Ee(Ve.parent,Ve)}else if(WJ(fe))return Ee(fe.parent,fe);if(fe.kind===71)return ot(fe)}function _(fe,_e,De,Ve,tn,Ye,ee){let pn=_e&&B(fe,_e,tn,!Vr(ee))||fe,X=_e?qe(_e,pn):7,Le=[],oi=new j(De,Ve,_e?v(_e):0,tn,Ye,X,ee,Le),hi=oi.createSearch(_e,pn,void 0,{allSearchSymbols:_e?Kt(pn,_e,tn,ee.use===2,!!ee.providePrefixAndSuffixTextForRename,!!ee.implementations):[pn]});return P(pn,oi,hi),Le}function P(fe,_e,De){let Ve=$e(fe);if(Ve)le(Ve,Ve.getSourceFile(),De,_e,!(Mr(Ve)&&!Yr(_e.sourceFiles,Ve)));else for(let tn of _e.sourceFiles)_e.cancellationToken.throwIfCancellationRequested(),ve(tn,De,_e)}function v(fe){switch(fe.kind){case 89:default:return 0}}function B(fe,_e,De,Ve){let{parent:tn}=_e;return es(fe.declarations,Ye=>{if(!Ye.parent){if(fe.flags&33554432)return;I.fail(`Unexpected symbol at ${I.formatSyntaxKind(_e.kind)}: ${I.formatSymbol(fe)}`)}return Mu(Ye.parent)&&Dh(Ye.parent.parent)?De.getPropertyOfType(De.getTypeFromTypeNode(Ye.parent.parent),fe.name):void 0})}let y;(Ve=>(Ve[Ve.None=0]="None",Ve[Ve.Constructor=1]="Constructor",Ve[Ve.Class=2]="Class"))(y||(y={}));function $(fe){if(!(fe.flags&33555968))return;let _e=fe.declarations&&fr(fe.declarations,De=>!Mr(De));return _e&&_e.symbol}class j{constructor(_e,De,Ve,tn,Ye,ee,pn,X){this.sourceFiles=_e;this.sourceFilesSet=De;this.specialSearchKind=Ve;this.checker=tn;this.cancellationToken=Ye;this.searchMeaning=ee;this.options=pn;this.result=X;this.inheritsFromCache=new Map;this.markSeenContainingTypeReference=JS();this.markSeenReExportRHS=JS();this.symbolIdToReferences=[];this.sourceFileToSeenSymbols=[]}includesSourceFile(_e){return this.sourceFilesSet.has(_e.fileName)}getImportSearches(_e,De){return this.importTracker||(this.importTracker=xP(this.sourceFiles,this.sourceFilesSet,this.checker,this.cancellationToken)),this.importTracker(_e,De,this.options.use===2)}createSearch(_e,De,Ve,tn={}){let{text:Ye=Fl(us(nS(De)||$(De)||De)),allSearchSymbols:ee=[De]}=tn,pn=Ye,X=this.options.implementations&&_e?nr(_e,De,this.checker):void 0;return{symbol:De,comingFrom:Ve,text:Ye,escapedText:pn,parents:X,allSearchSymbols:ee,includes:Le=>Yr(ee,Le)}}referenceAdder(_e){let De=ji(_e),Ve=this.symbolIdToReferences[De];return Ve||(Ve=this.symbolIdToReferences[De]=[],this.result.push({definition:{type:0,symbol:_e},references:Ve})),(tn,Ye)=>Ve.push($g(tn,Ye))}addStringOrCommentReference(_e,De){this.result.push({definition:void 0,references:[{kind:0,fileName:_e,textSpan:De}]})}markSearchedSymbols(_e,De){let Ve=za(_e),tn=this.sourceFileToSeenSymbols[Ve]||(this.sourceFileToSeenSymbols[Ve]=new Set),Ye=!1;for(let ee of De)Ye=gx(tn,ji(ee))||Ye;return Ye}}function ce(fe,_e,De,Ve){let{importSearches:tn,singleReferences:Ye,indirectUsers:ee}=Ve.getImportSearches(_e,De);if(Ye.length){let pn=Ve.referenceAdder(_e);for(let X of Ye)V(X,Ve)&&pn(X)}for(let[pn,X]of tn)te(pn.getSourceFile(),Ve.createSearch(pn,X,1),Ve);if(ee.length){let pn;switch(De.exportKind){case 0:pn=Ve.createSearch(fe,_e,1);break;case 1:pn=Ve.options.use===2?void 0:Ve.createSearch(fe,_e,1,{text:_e.name});break;case 2:break}if(pn)for(let X of ee)ve(X,pn,Ve)}}function me(fe,_e,De,Ve,tn,Ye,ee,pn){let X=xP(fe,new Set(fe.map(Cr=>Cr.fileName)),_e,De),{importSearches:Le,indirectUsers:oi,singleReferences:hi}=X(Ve,{exportKind:ee?1:0,exportingModuleSymbol:tn},!1);for(let[Cr]of Le)pn(Cr);for(let Cr of hi);for(let Cr of oi)for(let Sn of ye(Cr,ee?"default":Ye));}qi.eachExportReference=me;function V(fe,_e){return bn(fe,_e)?_e.options.use!==2?!0:(cn(fe),!1):!1}function ne(fe,_e){if(fe.declarations)for(let De of fe.declarations){let Ve=De.getSourceFile();te(Ve,_e.createSearch(De,fe,0),_e,_e.includesSourceFile(Ve))}}function ve(fe,_e,De){NP(fe).get(_e.text)!==void 0&&te(fe,_e,De)}function $e(fe){let{declarations:_e,flags:De,parent:Ve,valueDeclaration:tn}=fe;if(tn&&(tn.kind===270||tn.kind===274))return tn;if(!_e)return;if(De&8196){let pn=fr(_e,X=>Qd(X,2));return pn?Zp(pn,176):void 0}let Ye=Ve&&!(fe.flags&262144),ee;for(let pn of _e){let X=Wb(pn);if(ee&&ee!==X||!X||X.kind===176)return;if(ee=X,xs(ee)){let Le;for(;Le=LI(ee);)ee=Le}}return Ye?ee.getSourceFile():ee}function Ie(fe,_e,De,Ve=De){return ge(fe,_e,De,()=>!0,Ve)||!1}qi.isSymbolReferencedInFile=Ie;function ge(fe,_e,De,Ve,tn=De){let Ye=_e.getSymbolAtLocation(fe);if(Ye)for(let ee of ye(De,Ye.name,tn)){if(!cn(ee)||ee===fe||ee.text!==fe.text)continue;if(_e.getSymbolAtLocation(ee)===Ye||_e.getShorthandAssignmentValueSymbol(ee.parent)===Ye){let X=Ve(ee);if(X)return X}}}qi.eachSymbolReferenceInFile=ge;function Ae(fe,_e){return Rr(ye(_e,fe),tn=>!!nb(tn)).reduce((tn,Ye)=>{let ee=Ve(Ye);return!Tn(tn.declarationNames)||ee===tn.depth?(tn.declarationNames.push(Ye),tn.depth=ee):ee<tn.depth&&(tn.declarationNames=[Ye],tn.depth=ee),tn},{depth:1/0,declarationNames:[]}).declarationNames;function Ve(tn){let Ye=0;for(;tn;)tn=Wb(tn),Ye++;return Ye}}qi.getTopMostDeclarationNamesInFile=Ae;function Qe(fe,_e,De,Ve){if(!fe.name||!cn(fe.name))return!1;let tn=I.checkDefined(De.getSymbolAtLocation(fe.name));for(let Ye of _e)for(let ee of ye(Ye,tn.name)){if(!cn(ee)||ee===fe.name||ee.text!==fe.name.text)continue;let pn=AA(ee),X=ao(pn.parent)&&pn.parent.expression===pn?pn.parent:void 0,Le=De.getSymbolAtLocation(ee);if(Le&&De.getRootSymbols(Le).some(oi=>oi===tn)&&Ve(ee,X))return!0}return!1}qi.someSignatureUsage=Qe;function ye(fe,_e,De=fe){return _i(ae(fe,_e,De),Ve=>{let tn=kd(fe,Ve);return tn===fe?void 0:tn})}function ae(fe,_e,De=fe){let Ve=[];if(!_e||!_e.length)return Ve;let tn=fe.text,Ye=tn.length,ee=_e.length,pn=tn.indexOf(_e,De.pos);for(;pn>=0&&!(pn>De.end);){let X=pn+ee;(pn===0||!ru(tn.charCodeAt(pn-1),1))&&(X===Ye||!ru(tn.charCodeAt(X),1))&&Ve.push(pn),pn=tn.indexOf(_e,pn+ee+1)}return Ve}function Ee(fe,_e){let De=fe.getSourceFile(),Ve=_e.text,tn=_i(ye(De,Ve,fe),Ye=>Ye===_e||jA(Ye)&&JA(Ye,Ve)===_e?$g(Ye):void 0);return[{definition:{type:1,node:_e},references:tn}]}function z(fe,_e){switch(fe.kind){case 89:return fe.text?.length===_e.length;case 16:return!1;case 10:return!1;case 114:return _e.length===7;default:return!1}}function ze(fe,_e,De,Ve){let tn=Co(fe,Ye=>(De.throwIfCancellationRequested(),_i(ye(Ye,gi(_e),Ye),ee=>{if(ee.kind===_e&&(!Ve||Ve(ee)))return $g(ee)})));return tn.length?[{definition:{type:2,node:tn[0].node},references:tn}]:void 0}function te(fe,_e,De,Ve=!0){return De.cancellationToken.throwIfCancellationRequested(),le(fe,fe,_e,De,Ve)}function le(fe,_e,De,Ve,tn){if(Ve.markSearchedSymbols(_e,De.allSearchSymbols))for(let Ye of ae(_e,De.text,fe))Ft(_e,Ye,De,Ve,tn)}function bn(fe,_e){return!!(BS(fe)&_e.searchMeaning)}function Ft(fe,_e,De,Ve,tn){let Ye=kd(fe,_e);if(!z(Ye,De.text)){!Ve.options.implementations&&(Ve.options.findInStrings&&up(fe,_e)||Ve.options.findInComments&&zJ(fe,_e))&&Ve.addStringOrCommentReference(fe.fileName,el(_e,De.text.length));return}if(!bn(Ye,Ve))return;let ee=Ye.getSourceFile();Ve.checker.getDiagnostics(ee);let pn=Ve.checker.getSymbolAtLocation(Ye);if(!pn)return;let X=Ye.parent;if(Qf(X)&&X.isNameFirst&&X.typeExpression&&Bu(X.typeExpression.type)&&X.typeExpression.type.jsDocPropertyTags&&rr(X.typeExpression.type.jsDocPropertyTags)){ue(X.typeExpression.type.jsDocPropertyTags,Ye,De,Ve);return}let Le=Ti(De,pn,Ye,Ve);if(!Le){je(pn,De,Ve);return}switch(Ve.specialSearchKind){case 0:tn&&Pn(Ye,Le,Ve);break;default:I.fail("special serach kind")}mr(Ye)&&fo(Ye.parent)&&tS(Ye.parent.parent.parent)&&(pn=Ye.parent.symbol,!pn)||gn(Ye,pn,De,Ve)}function ue(fe,_e,De,Ve){let tn=Ve.referenceAdder(De.symbol);Pn(_e,De.symbol,Ve),Ln(fe,Ye=>{ol(Ye.name)&&tn(Ye.name.left)})}function gn(fe,_e,De,Ve){let tn=_e.parent?.exports&&_e.parent.exports.has(_e.name),Ye=!1,ee=_e;Ye&&!Vr(Ve.options)?ne(ee,Ve):tn&&ce(fe,ee,{exportKind:1,exportingModuleSymbol:ee.parent},Ve)}function je({flags:fe,valueDeclaration:_e},De,Ve){let tn=Ve.checker.getShorthandAssignmentValueSymbol(_e),Ye=_e&&ti(_e);!(fe&33554432)&&Ye&&De.includes(tn)&&Pn(Ye,tn,Ve)}function Pn(fe,_e,De){let{kind:Ve,symbol:tn}="kind"in _e?_e:{kind:void 0,symbol:_e};if(De.options.use===2&&fe.kind===114)return;let Ye=De.referenceAdder(tn);De.options.implementations?fn(fe,Ye,De):Ye(fe,Ve)}function Ut(fe,_e,De){}function kr(fe){return fe.members&&fe.members.get("__constructor")}function fn(fe,_e,De){if(tl(fe)&&Yn(fe.parent)){_e(fe);return}if(fe.kind!==89)return;fe.parent.kind===175&&zn(fe,De.checker,_e);let Ve=It(fe,ee=>!ol(ee.parent)&&!wo(ee.parent)&&!qy(ee.parent)),tn=Ve.parent;if(Wh(tn)&&tn.type===Ve&&De.markSeenContainingTypeReference(tn)){if(Gd(tn))Ye(tn.initializer);else if(ki(tn)&&tn.body){let ee=tn.body;ee.kind===236?Xd(ee,pn=>{pn.expression&&Ye(pn.expression)}):Ye(ee)}}function Ye(ee){re(ee)&&_e(ee)}}function re(fe){switch(fe.kind){case 289:return re(fe.expression);case 270:case 293:case 274:case 290:return!0;default:return!1}}function dt(fe,_e,De,Ve){if(fe===_e)return!0;let tn=ji(fe)+","+ji(_e),Ye=De.get(tn);if(Ye!==void 0)return Ye;De.set(tn,!1);let ee=!!fe.declarations&&fe.declarations.some(pn=>rb(pn).some(X=>{let Le=Ve.getTypeAtLocation(X);return!!Le&&!!Le.symbol&&dt(Le.symbol,_e,De,Ve)}));return De.set(tn,ee),ee}function ot(fe){let _e=AI(fe,!1);if(!_e)return;let De=256;switch(_e.kind){case 152:De&=oI(_e),_e=_e.parent;break;default:return}let Ve=_e.getSourceFile(),tn=_i(ye(Ve,"super",_e),Ye=>{if(Ye.kind!==71)return;let ee=AI(Ye,!1);return ee&&sT(ee)===!!De&&ee.parent.symbol===_e.symbol?$g(Ye):void 0});return[{definition:{type:0,symbol:_e.symbol},references:tn}]}function Nt(fe){return fe.kind===89&&fe.parent.kind===149&&fe.parent.name===fe}function Bt(fe,_e,De,Ve){let tn=yP(fe,De),Ye=Co(_e,ee=>(Ve.throwIfCancellationRequested(),_i(ye(ee,fe.text),pn=>{if(Pi(pn)&&pn.text===fe.text)if(tn){let X=yP(pn,De);if(tn!==De.getStringType()&&(tn===X||Zt(pn,De)))return $g(pn,2)}else return jD(pn)&&!Zd(pn,ee)?void 0:$g(pn,2)})));return[{definition:{type:4,node:fe},references:Ye}]}function Zt(fe,_e){if(Nd(fe.parent))return _e.getPropertyOfType(_e.getTypeAtLocation(fe.parent.parent),fe.text)}function Kt(fe,_e,De,Ve,tn,Ye){let ee=[];return ar(fe,_e,De,Ve,!(Ve&&tn),(pn,X,Le)=>{Le&&er(fe)!==er(Le)&&(Le=void 0),ee.push(Le||X||pn)},()=>!Ye),ee}function ar(fe,_e,De,Ve,tn,Ye,ee){let pn=void 0,X=void 0;if(X){let Cr=Ye(X,void 0,void 0,1);if(Cr)return Cr}let Le=hi(fe);if(Le)return Le;if(!Ve){let Cr;return Cr=void 0,Cr&&hi(Cr,4)}if(I.assert(Ve),tn)return;function hi(Cr,Sn){return es(De.getRootSymbols(Cr),Fo=>Ye(Cr,Fo,void 0,Sn)||(Fo.parent&&Fo.parent.flags&96&&ee(Fo)?hn(Fo.parent,Fo.name,De,Gr=>Ye(Cr,Fo,Gr,Sn)):void 0))}}function hn(fe,_e,De,Ve){let tn=new Map;return Ye(fe);function Ye(ee){if(!(!(ee.flags&96)||!sf(tn,ji(ee))))return es(ee.declarations,pn=>es(rb(pn),X=>{let Le=De.getTypeAtLocation(X),oi=Le&&Le.symbol&&De.getPropertyOfType(Le,_e);return Le&&oi&&(es(De.getRootSymbols(oi),Ve)||Ye(Le.symbol))}))}}function er(fe){return fe.valueDeclaration?!!(Sd(fe.valueDeclaration)&256):!1}function Ti(fe,_e,De,Ve){let{checker:tn}=Ve;return ar(_e,De,tn,!1,Ve.options.use!==2||!!Ve.options.providePrefixAndSuffixTextForRename,(Ye,ee,pn,X)=>(pn&&er(_e)!==er(pn)&&(pn=void 0),fe.includes(pn||ee||Ye)?{symbol:ee&&!(jo(Ye)&6)?ee:Ye,kind:X}:void 0),Ye=>!(fe.parents&&!fe.parents.some(ee=>dt(Ye.parent,ee,Ve.inheritsFromCache,tn))))}function qe(fe,_e){let De=BS(fe),{declarations:Ve}=_e;if(Ve){let tn;do{tn=De;for(let Ye of Ve){let ee=gP(Ye);ee&De&&(De|=ee)}}while(De!==tn)}return De}qi.getIntersectingMeaningFromDeclarations=qe;function Yn(fe){return fe.flags&33554432?uS(fe)?Gd(fe):pc(fe)?!!fe.body:ia(fe):void 0}function zn(fe,_e,De){let Ve=_e.getSymbolAtLocation(fe),tn=_e.getShorthandAssignmentValueSymbol(Ve.valueDeclaration);if(tn)for(let Ye of tn.getDeclarations())gP(Ye)&1&&De(Ye)}qi.getReferenceEntriesForShorthandPropertyAssignment=zn;function jt(fe,_e,De){_o(fe,Ve=>{Ve.kind===_e&&De(Ve),jt(Ve,_e,De)})}function nr(fe,_e,De){let Ve=MS(fe)?fe.parent:void 0,tn=Ve&&De.getTypeAtLocation(Ve.expression),Ye=_i(tn&&(tn.isUnionOrIntersection()?tn.types:tn.symbol===_e.parent?void 0:[tn]),ee=>ee.symbol&&ee.symbol.flags&96?ee.symbol:void 0);return Ye.length===0?void 0:Ye}function Vr(fe){return fe.use===2&&fe.providePrefixAndSuffixTextForRename}})(IT||(IT={}));function oee(e){return e&&Co(e,t=>t.references)}function aee(e,t,i,o,c,u,p){return qn(oee(IT.getReferencedSymbolsForNode(c,o,e,i,t,u)),m=>p(m,o,e.getTypeChecker()))}function see(e,t,i,o,c){return{...uU(e),...o&&cee(e,t,i,c)}}function cee(e,t,i,o){if(e.kind!==0&&(cn(t)||hd(t))){let{node:c,kind:u}=e,p=c.parent,m=t.text,g=pu(p);if(g){let S={prefixText:m+": "},T={suffixText:": "+m};if(u===3)return S;if(u===4)return T;if(g){let _=p.parent;return T}else return S}}if(e.kind!==0&&Ju(e.node)&&ps(e.node.parent)){let c=$J(o);return{prefixText:c,suffixText:c}}return cP}var eC={};pd(eC,{createDefinitionInfo:()=>qS,getDefinitionAtPosition:()=>lee,getReferenceAtPosition:()=>yU});function lee(e,t,i,o,c){let u=yU(t,i,e),p=u&&[S0(u.reference.fileName,u.fileName,u.unverified)]||xe;if(u?.file)return p;let m=kd(t,i);if(m===t)return;let{parent:g}=m,S=e.getTypeChecker();switch(_J(e,t),m.kind){case 116:let y=It(m.parent,V=>pc(V));return y?[gU(S,y)]:void 0;case 114:if(!Ph(m.parent))break;case 113:let $=It(m.parent,E4);if($)return[mee($,t)];break;case 16:let j=It(m,Mg);if(j){let V=j.fileName;return[S0(V,V,!1)]}case 178:let me=m.fileName;return[S0(me,me,!1)]}let{symbol:T,failedAliasResolution:_}=yee(m,S,c),P=m;if(o&&_&&I.fail("implement me"),!T)return Kr(p,void 0);if(o&&di(T.declarations,y=>y.getSourceFile().fileName===t.fileName))return;let v=uee(S,m);if(v){let y=gU(S,v,_);if(S.getRootSymbols(T).some($=>pee($,v)))return[y];{let $=mU(S,T,m,_,v)||xe;return m.kind===71?[y,...$]:[...$,y]}}if(m.parent.kind===175){let y=S.getShorthandAssignmentValueSymbol(T.valueDeclaration),$=y?.declarations?y.declarations.map(j=>qS(j,S,y,m,!1,_)):xe;return Kr($,[])}let B=[];return Kr(p,B.length?B:mU(S,T,m,_))}function uee(e,t){let i=dee(t),o=i&&e.getResolvedSignature(i);return So(o&&o.declaration,c=>ki(c))}function dee(e){let t=It(e,o=>!MS(o)),i=t?.parent;return i&&qf(i)&&cS(i)===t?i:void 0}function pee(e,t){return e===t.symbol||e===t.symbol.parent||bd(t.parent)||!qf(t.parent)&&e===So(t.parent,qd)?.symbol}function mU(e,t,i,o,c){let u=Rr(t.declarations,P=>P!==c),p=S()||T();if(p)return p;let m=Rr(u,P=>!0);let g=Tn(m)?m:u;return qn(g,P=>qS(P,e,t,i,!1,o));function S(){t.flags&32&&!(t.flags&19)&&fP(i)}function T(){return OJ(i)||pP(i)?_(u,!1):void 0}function _(P,v){if(!P)return;let B=P.filter(ki),y=B.filter($=>!!$.body);return B.length?y.length!==0?y.map($=>qS($,e,t,i)):[qS(Ro(B),e,t,i,!1,o)]:void 0}}function h0(e,t){return fr(e,i=>YM(i,t))}function yU(e,t,i){let o=h0(e.referencedFiles,t);if(o){let p=i.getSourceFileFromReference(e,o);return p&&{reference:o,fileName:p.fileName,file:p,unverified:!1}}let c=h0(e.typeReferenceDirectives,t);if(c){let p=i.getResolvedTypeReferenceDirectiveFromTypeReferenceDirective(c,e)?.resolvedTypeReferenceDirective,m=p&&i.getSourceFile(p.resolvedFileName);return m&&{reference:c,fileName:m.fileName,file:m,unverified:!1}}if(h0(e.libReferenceDirectives,t)&&console.warn("TODO - implement me - getReferenceAtPosition - lib"),e.imports.length){let p=qb(e,t),m;if(Pi(p)&&(m=i.getResolvedModuleFromModuleSpecifier(p,e))){let g=m.resolvedModule?.resolvedFileName,S=g||rp(vi(e.fileName),p.text);return{file:i.getSourceFile(S),fileName:S,reference:{pos:p.getStart(),end:p.getEnd(),fileName:p.text},unverified:!g}}}}function S0(e,t,i){return{fileName:t,textSpan:Zs(0,0),kind:"script",name:e,containerName:void 0,containerKind:void 0,unverified:i}}function qS(e,t,i,o,c,u){let p=t.symbolToString(i),m=gu.getSymbolKind(t,i,o),g=i.parent?t.symbolToString(i.parent,o):"";return fee(t,e,m,p,g,c,u)}function gU(e,t,i){return qS(t,e,t.symbol,t,!1,i)}function fee(e,t,i,o,c,u,p,m){let g=t.getSourceFile(),S=(oS(t)?nc(t).fileName:void 0)||g.fileName;if(!m){let T=ti(t)||t;m=lp(T,g)}return{fileName:S,textSpan:m,kind:i,name:o,containerKind:void 0,containerName:c,...Gg.toContextSpan(m,g,Gg.getContextNode(t)),isLocal:!_0(e,t),isAmbient:!!(t.flags&33554432),unverified:u,failedAliasResolution:p}}function _0(e,t){if(e.isDeclarationVisible(t))return!0;if(!t.parent)return!1;if(Gd(t.parent)&&t.parent.initializer===t)return _0(e,t.parent);switch(t.kind){case 152:if(Qd(t,2))return!1;case 174:case 175:case 293:case 274:case 283:case 270:return _0(e,t.parent);default:return!1}}function mee(e,t){let i=Gg.getContextNode(e),o=lp(OP(i)?i.start:i,t);return{fileName:t.fileName,textSpan:o,kind:"keyword",name:"switch",containerKind:void 0,containerName:"",...Gg.toContextSpan(o,t,i),isLocal:!0,isAmbient:!1,unverified:!1,failedAliasResolution:void 0}}function gee(e,t){return e.kind!==89&&e.kind!==16?!1:(e.parent===t,!0)}function yee(e,t,i){let o=t.getSymbolAtLocation(e),c=!1;if(o?.declarations&&o.flags&2097152&&!i&&gee(e,o.declarations[0])){let u=t.getAliasedSymbol(o);if(u.declarations)return{symbol:u};c=!0}return{symbol:o,failedAliasResolution:c}}var gu={};pd(gu,{getSymbolDisplayPartsDocumentationAndSymbolKind:()=>hee,getSymbolKind:()=>SU,getSymbolModifiers:()=>See});var Tee=70246400;function SU(e,t,i){let o=_U(e,t,i);if(o!=="")return o;let c=tm(t);return c&32?Cd(t,274)?"local class":"class":c&268435456?"define":c&384?"enum":c&524288?"type":c&64?"interface":c&262144?"type parameter":c&8?"enum member":c&2097152?"alias":c&1536?"module":o}function _U(e,t,i){let o=e.getRootSymbols(t);if(o.length===1&&Eo(o).flags&8192&&e.getTypeOfSymbolAtLocation(t,i).getCallSignatures().length!==0)return"method";let c=tm(t);if(c&3)return IA(t)?"parameter":TU(t)?"local var":"var";if(c&16)return TU(t)?"local function":"function";if(c&32768)return"getter";if(c&65536)return"setter";if(c&8192)return"method";if(c&16384)return"constructor";if(c&131072)return"index";if(c&4){if(c&33554432&&t.links.checkFlags&6){let u=Ln(e.getRootSymbols(t),p=>{if(p.getFlags()&98311)return"property"});return u||(e.getTypeOfSymbolAtLocation(t,i).getCallSignatures().length?"method":"property")}return"property"}return""}function TU(e){return e.parent?!1:Ln(e.declarations,t=>{if(t.kind===270)return!0;if(t.kind!==237&&t.kind!==169)return!1;for(let i=t.parent;!Xf(i);i=i.parent)if(i.kind===176)return!1;return!0})}function hee(e,t,i,o,c,u=BS(c),p){return xU(e,t,i,o,c,void 0,u,p)}function xU(e,t,i,o,c,u,p,m){let g=[],S=[],T=[],_=tm(t),P=p&1?_U(e,t,c):"",v=!1,B=!1,y,$,j=!1;if(_&268435456){let ae=t.declarations?.[0];if(ae){let Ee=nc(ae),z=Vd(Ee,ae,!1);g.push(ks(z)),T=t.getContextualJsDocTags(ae,e)}}if(P!==""||_&32||_&2097152){if(P==="getter"||P==="setter"){let z=fr(t.declarations,ze=>ze.name===c);if(z)switch(z.kind){case 152:P="accessor";break;default:I.assertNever(z)}else P="property"}let ae;if(u??(u=B?e.getTypeAtLocation(c):e.getTypeOfSymbolAtLocation(t,c)),c.parent&&c.parent.kind===286){let z=c.parent.name;(z===c||z&&z.getFullWidth()===0)&&(c=c.parent)}let Ee;if(Ou(c)?Ee=c:(_3(c)||fP(c))&&(Ee=c.parent),Ee){ae=e.getResolvedSignature(Ee);let z=Ee.kind===276||ao(Ee)&&Ee.expression.kind===71,ze=z?u.getConstructSignatures():u.getCallSignatures();if(ae&&!Yr(ze,ae.target)&&!Yr(ze,ae)&&(ae=ze.length?ze[0]:void 0),ae){switch(z&&_&32?(P="constructor",$e(u.symbol,P)):_&2097152?(P="alias",Ie(P),g.push(Sa()),z&&(g.push(Kb(145)),g.push(Sa())),ve(t)):$e(t,P,ae),P){case"JSX attribute":case"property":case"var":case"const":case"let":case"parameter":case"local var":g.push(Us(61)),g.push(Sa()),!(Jn(u)&16)&&u.symbol&&(Po(g,DT(e,u.symbol,o,void 0,5)),g.push(Hg())),z&&(g.push(Kb(145)),g.push(Sa())),Ae(ae,ze,262144);break;default:Ae(ae,ze)}v=!0,j=ze.length>1}}else if(pP(c)&&!(_&98304)){let z=c.parent;if(t.declarations&&fr(t.declarations,te=>te===z)){let te=u.getNonNullableType().getCallSignatures();ae=e.getSignatureFromDeclaration(z),$e(t,P),ae&&Ae(ae,te),v=!0,j=te.length>1}}}if(_&32&&!v&&!B&&(V(),Cd(t,274)&&Ie("local class"),g.push(Sa()),ve(t),ye(t,i)),t.flags&2097152){if(me(),!v||S.length===0&&T.length===0){let ae=e.getAliasedSymbol(t);if(ae!==t&&ae.declarations&&ae.declarations.length>0){let Ee=ae.declarations[0],z=ti(Ee);if(z&&!v){let te=t.name!=="default"&&!0,le=xU(e,ae,Dt(Ee),o,z,u,p,te?t:ae);g.push(...le.displayParts),g.push(Hg()),y=le.documentation,$=le.tags}else y=ae.getContextualDocumentationComment(Ee,e),$=ae.getJsDocTags(e)}}g.push(Sa()),ve(t)}if(!v)if(P!==""){if(u&&($e(t,P,void 0,!0),g.push(Sa()),(P==="property"||P==="accessor"||P==="JSX attribute"||_&3||P==="local var"||P==="index"||P==="using"||P==="await using"||B)&&(g.push(Sa()),Po(g,mP(e,u,o)),g.push(Sa())),ve(t),_&16||_&8192||_&16384||_&131072||_&98304||P==="method")){let ae=u.getNonNullableType().getCallSignatures();ae.length&&(Ae(ae[0],ae),j=ae.length>1)}}else P=SU(e,t,c);if(S.length===0&&!j&&(S=t.getContextualDocumentationComment(o,e)),S.length===0&&_&4&&t.parent&&t.declarations&&Ln(t.parent.declarations,ae=>ae.kind===176))for(let ae of t.declarations){if(!ae.parent||ae.parent.kind!==269)continue;let Ee=e.getSymbolAtLocation(ae.parent.right);if(Ee&&(S=Ee.getDocumentationComment(e),T=Ee.getJsDocTags(e),S.length>0))break}if(S.length===0&&cn(c)&&t.valueDeclaration&&fo(t.valueDeclaration)){let ae=t.valueDeclaration,Ee=ae.parent,z=ae.propertyName||ae.name}return T.length===0&&!j&&(T=t.getContextualJsDocTags(o,e)),S.length===0&&y&&(S=y),T.length===0&&$&&(T=$),{displayParts:g,documentation:S,symbolKind:P,tags:T.length===0?void 0:T};function ce(){return ym()}function me(){V()}function V(){m&&(Ie("alias"),g.push(Sa()))}function ne(){g.push(Sa()),g.push(Kb(103)),g.push(Sa())}function ve(ae,Ee){let z;m&&ae===t&&(ae=m);let ze=[];ae.flags&131072&&z?(ae.parent&&(ze=DT(e,ae.parent)),ze.push(Us(22)),z.forEach((te,le)=>{ze.push(...mP(e,te.keyType)),le!==z.length-1&&(ze.push(Sa()),ze.push(Us(53)),ze.push(Sa()))}),ze.push(Us(23))):ze=DT(e,ae,Ee||i,void 0,7),Po(g,ze),t.flags&16777216&&g.push(Us(60))}function $e(ae,Ee,z,ze){me(),Ee&&(Ie(Ee),z&&(g.push(Sa()),ge(z)),ae&&!ze&&!Tn(ae.declarations,te=>Pl(te)||xs(te)&&!te.name)&&(g.push(Sa()),ve(ae)))}function Ie(ae){switch(ae){case"var":case"function":case"let":case"const":case"constructor":case"using":case"await using":g.push(OA(ae));return;default:g.push(Us(20)),g.push(OA(ae)),g.push(Us(21));return}}function ge(ae,Ee=0){Po(g,JJ(e,ae,o,Ee|32))}function Ae(ae,Ee,z=0){Po(g,jJ(e,ae,o,z|32)),Qe(ae,Ee,z)}function Qe(ae,Ee,z=0){Ee.length>1&&(g.push(Sa()),g.push(Us(20)),g.push(RJ(41)),g.push(Ha((Ee.length-1).toString(),7)),g.push(Sa()),g.push(ks(Ee.length===2?"overload":"overloads")),g.push(Us(21))),S=ae.getDocumentationComment(e),T=ae.getJsDocTags(),Ee.length>1&&S.length===0&&T.length===0&&(S=Ee[0].getDocumentationComment(e),T=Ee[0].getJsDocTags().filter(ze=>ze.name!=="deprecated"))}function ye(ae,Ee){let z=Pd(ze=>{let te=e.symbolToTypeParameterDeclarations(ae,Ee,Tee);ce().writeList(53776,te,Dt(io(Ee)),ze)});Po(g,z)}}function hU(e){if(e.declarations&&e.declarations.length){let[t,...i]=e.declarations,o=rr(i)&&Vb(t)&&Tn(i,u=>!Vb(u))?65536:0,c=RA(t,o);if(c)return c.split(",")}return[]}function See(e,t){if(!t)return"";let i=new Set(hU(t));if(t.flags&2097152){let o=e.getAliasedSymbol(t);o!==t&&Ln(hU(o),c=>{i.add(c)})}return t.flags&16777216&&i.add("optional"),i.size>0?Yo(i.values()).join(","):""}var rc={};pd(rc,{FormattingContext:()=>x0,FormattingRequestKind:()=>b0,RuleAction:()=>RP,RuleFlags:()=>C0,SmartIndenter:()=>P0,anyContext:()=>GS,formatDocument:()=>Kee,formatNodeGivenIndentation:()=>Vee,getAllRules:()=>E0,getFormatContext:()=>wee,getRangeOfEnclosingComment:()=>Wee});var b0=(p=>(p[p.FormatDocument=0]="FormatDocument",p[p.FormatSelection=1]="FormatSelection",p[p.FormatOnEnter=2]="FormatOnEnter",p[p.FormatOnSemicolon=3]="FormatOnSemicolon",p[p.FormatOnOpeningCurlyBrace=4]="FormatOnOpeningCurlyBrace",p[p.FormatOnClosingCurlyBrace=5]="FormatOnClosingCurlyBrace",p))(b0||{}),x0=class{constructor(t,i,o){this.sourceFile=t;this.formattingRequestKind=i;this.options=o}updateContext(t,i,o,c,u){this.currentTokenSpan=I.checkDefined(t),this.currentTokenParent=I.checkDefined(i),this.nextTokenSpan=I.checkDefined(o),this.nextTokenParent=I.checkDefined(c),this.contextNode=I.checkDefined(u),this.contextNodeAllOnSameLine=void 0,this.nextNodeAllOnSameLine=void 0,this.tokensAreOnSameLine=void 0,this.contextNodeBlockIsOnOneLine=void 0,this.nextNodeBlockIsOnOneLine=void 0}ContextNodeAllOnSameLine(){return this.contextNodeAllOnSameLine===void 0&&(this.contextNodeAllOnSameLine=this.NodeIsOnOneLine(this.contextNode)),this.contextNodeAllOnSameLine}NextNodeAllOnSameLine(){return this.nextNodeAllOnSameLine===void 0&&(this.nextNodeAllOnSameLine=this.NodeIsOnOneLine(this.nextTokenParent)),this.nextNodeAllOnSameLine}TokensAreOnSameLine(){if(this.tokensAreOnSameLine===void 0){let t=this.sourceFile.getLineAndCharacterOfPosition(this.currentTokenSpan.pos).line,i=this.sourceFile.getLineAndCharacterOfPosition(this.nextTokenSpan.pos).line;this.tokensAreOnSameLine=t===i}return this.tokensAreOnSameLine}ContextNodeBlockIsOnOneLine(){return this.contextNodeBlockIsOnOneLine===void 0&&(this.contextNodeBlockIsOnOneLine=this.BlockIsOnOneLine(this.contextNode)),this.contextNodeBlockIsOnOneLine}NextNodeBlockIsOnOneLine(){return this.nextNodeBlockIsOnOneLine===void 0&&(this.nextNodeBlockIsOnOneLine=this.BlockIsOnOneLine(this.nextTokenParent)),this.nextNodeBlockIsOnOneLine}NodeIsOnOneLine(t){let i=this.sourceFile.getLineAndCharacterOfPosition(t.getStart(this.sourceFile)).line,o=this.sourceFile.getLineAndCharacterOfPosition(t.getEnd()).line;return i===o}BlockIsOnOneLine(t){let i=ll(t,17,this.sourceFile),o=ll(t,19,this.sourceFile);if(i&&o){let c=this.sourceFile.getLineAndCharacterOfPosition(i.getEnd()).line,u=this.sourceFile.getLineAndCharacterOfPosition(o.getStart(this.sourceFile)).line;return c===u}return!1}};var GS=xe,RP=(_=>(_[_.None=0]="None",_[_.StopProcessingSpaceActions=1]="StopProcessingSpaceActions",_[_.StopProcessingTokenActions=2]="StopProcessingTokenActions",_[_.InsertSpace=4]="InsertSpace",_[_.InsertNewLine=8]="InsertNewLine",_[_.DeleteSpace=16]="DeleteSpace",_[_.DeleteToken=32]="DeleteToken",_[_.InsertTrailingSemicolon=64]="InsertTrailingSemicolon",_[_.StopAction=3]="StopAction",_[_.ModifySpaceAction=28]="ModifySpaceAction",_[_.ModifyTokenAction=96]="ModifyTokenAction",_))(RP||{}),C0=(i=>(i[i.None=0]="None",i[i.CanDeleteNewLines=1]="CanDeleteNewLines",i))(C0||{});function E0(){let e=[];for(let ne=0;ne<=145;ne++)ne!==1&&e.push(ne);function t(...ne){return{tokens:e.filter(ve=>!ne.some($e=>$e===ve)),isSpecific:!1}}let i={tokens:e,isSpecific:!1},o=AT([...e,3]),c=AT([...e,1]),u=CU(92,145),p=CU(29,88),m=[103],g=[47,48,57,55],S=[10,11,13,89,20,22,17,145],T=[89,20,145],_=[89,21,23,145],P=[89,20,145],v=[89,21,23,145],B=[2,3],y=[89,...BA],$=o,j=AT([89,32,3]),ce=AT([21,3,109,110]),me=[Uo("IgnoreBeforeComment",i,B,GS,1),Uo("IgnoreAfterLineComment",2,i,GS,1),Uo("NotSpaceBeforeColon",i,61,[rs,MP,EU],16),Uo("SpaceAfterColon",61,i,[rs,MP,Iee],4),Uo("NoSpaceBeforeQuestionMark",i,60,[rs,MP,EU],16),Uo("SpaceAfterQuestionMarkInConditionalOperator",60,i,[rs,Cee],4),Uo("NoSpaceAfterQuestionMark",60,i,[rs,bee],16),Uo("NoSpaceBeforeDot",i,[24,28],[rs,Aee],16),Uo("NoSpaceAfterDot",[24,28],i,[rs],16),Uo("NoSpaceAfterUnaryPrefixOperator",g,S,[rs,MP],16),Uo("NoSpaceAfterUnaryPreincrementOperator",47,T,[rs],16),Uo("NoSpaceAfterUnaryPredecrementOperator",48,P,[rs],16),Uo("NoSpaceBeforeUnaryPostincrementOperator",_,47,[rs,PU],16),Uo("NoSpaceBeforeUnaryPostdecrementOperator",v,48,[rs,PU],16),Uo("SpaceAfterPostincrementWhenFollowedByAdd",47,41,[rs,LT],4),Uo("SpaceAfterAddWhenFollowedByUnaryPlus",41,41,[rs,LT],4),Uo("SpaceAfterAddWhenFollowedByPreincrement",41,47,[rs,LT],4),Uo("SpaceAfterPostdecrementWhenFollowedBySubtract",48,42,[rs,LT],4),Uo("SpaceAfterSubtractWhenFollowedByUnaryMinus",42,42,[rs,LT],4),Uo("SpaceAfterSubtractWhenFollowedByPredecrement",42,48,[rs,LT],4),Uo("NoSpaceAfterCloseBrace",19,[27,26],[rs],16),Uo("NewLineBeforeCloseBraceInBlockContext",o,19,[NU],8),Uo("SpaceAfterCloseBrace",19,t(21),[rs,kee],4),Uo("SpaceBetweenCloseBraceAndElse",19,110,[rs],4),Uo("SpaceBetweenCloseBraceAndWhile",19,118,[rs],4),Uo("NoSpaceBetweenEmptyBraceBrackets",17,19,[rs,Fee],16),Uo("SpaceAfterConditionalClosingParen",21,22,[vee],4),Uo("NoSpaceBetweenFunctionKeywordAndStar",138,43,[DU],16),Uo("SpaceAfterStarInGeneratorDeclaration",43,89,[DU],4),Uo("SpaceAfterFunctionInFuncDecl",138,i,[Dee],4),Uo("NewLineAfterOpenBraceInBlockContext",17,i,[NU],8)],V=[];return[...me,...V]}function Uo(e,t,i,o,c,u=0){return{leftTokenRange:bU(t),rightTokenRange:bU(i),rule:{debugName:e,context:o,action:c,flags:u}}}function AT(e){return{tokens:e,isSpecific:!0}}function bU(e){return typeof e=="number"?AT([e]):mi(e)?AT(e):e}function CU(e,t,i=[]){let o=[];for(let c=e;c<=t;c++)Yr(i,c)||o.push(c);return AT(o)}function LT(e){switch(e.contextNode.kind){case 269:return e.contextNode.operatorToken.kind!==27;case 267:case 168:case 171:case 157:return!0;case 266:case 237:case 149:case 152:case 153:return e.currentTokenSpan.kind===74||e.nextTokenSpan.kind===74;case 148:return e.currentTokenSpan.kind===103||e.nextTokenSpan.kind===103||e.currentTokenSpan.kind===74||e.nextTokenSpan.kind===74;case 244:return e.currentTokenSpan.kind===103||e.nextTokenSpan.kind===61}return!1}function MP(e){return!LT(e)}function EU(e){return!_ee(e)}function _ee(e){let t=e.contextNode.kind;return t===152||t===153||t===149||t===237||lg(t)}function xee(e){return!1}function bee(e){return!xee(e)}function Cee(e){return e.contextNode.kind===267||e.contextNode.kind===168}function NU(e){return Eee(e)&&!(e.ContextNodeAllOnSameLine()||e.ContextNodeBlockIsOnOneLine())}function Eee(e){return Nee(e.contextNode)}function Nee(e){if(Pee(e))return!0;switch(e.kind){case 236:case 240:case 293:return!0}return!1}function Dee(e){switch(e.contextNode.kind){case 169:case 270:return!0}return!1}function DU(e){return e.contextNode.kind===169||e.contextNode.kind===270}function Pee(e){switch(e.kind){case 274:case 163:case 172:return!0}return!1}function kee(e){switch(e.currentTokenParent.kind){case 255:case 256:return!0;case 236:{let t=e.currentTokenParent.parent;if(!t||t.kind!==270)return!0}}return!1}function vee(e){switch(e.contextNode.kind){case 253:case 256:case 243:case 244:case 246:case 245:case 255:return!0;default:return!1}}function Fee(e){return e.contextNode.kind===293}function rs(e){return e.TokensAreOnSameLine()}function Iee(e){return!0}function PU(e){return!Lee(e)}function Lee(e){switch(e.contextNode.kind){case 253:case 243:case 244:case 245:case 246:return!0;default:return!1}}function Aee(e){return!ii(e.contextNode)||!Ju(e.contextNode.expression)||e.contextNode.expression.getText().includes(".")}function wee(e,t){return{options:e,getRules:Oee(),host:t}}var N0;function Oee(){return N0===void 0&&(N0=Mee(E0())),N0}function Ree(e){let t=0;return e&1&&(t|=28),e&2&&(t|=96),e&28&&(t|=28),e&96&&(t|=96),t}function Mee(e){let t=Bee(e);return i=>{let o=t[kU(i.currentTokenSpan.kind,i.nextTokenSpan.kind)];if(o){let c=[],u=0;for(let p of o){let m=~Ree(u);p.action&m&&di(p.context,g=>g(i))&&(c.push(p),u|=p.action)}if(c.length)return c}}}function Bee(e){let t=new Array(D0*D0),i=new Array(t.length);for(let o of e){let c=o.leftTokenRange.isSpecific&&o.rightTokenRange.isSpecific;for(let u of o.leftTokenRange.tokens)for(let p of o.rightTokenRange.tokens){let m=kU(u,p),g=t[m];g===void 0&&(g=t[m]=[]),jee(g,o.rule,c,i,m)}}return t}function kU(e,t){return I.assert(e<=145&&t<=145,"Must compute formatting context from tokens"),e*D0+t}var wT=5,BP=31,D0=146,$S=(p=>(p[p.StopRulesSpecific=0]="StopRulesSpecific",p[p.StopRulesAny=wT*1]="StopRulesAny",p[p.ContextRulesSpecific=wT*2]="ContextRulesSpecific",p[p.ContextRulesAny=wT*3]="ContextRulesAny",p[p.NoContextRulesSpecific=wT*4]="NoContextRulesSpecific",p[p.NoContextRulesAny=wT*5]="NoContextRulesAny",p))($S||{});function jee(e,t,i,o,c){let u=t.action&3?i?0:$S.StopRulesAny:t.context!==GS?i?$S.ContextRulesSpecific:$S.ContextRulesAny:i?$S.NoContextRulesSpecific:$S.NoContextRulesAny,p=o[c]||0;e.splice(Jee(p,u),0,t),o[c]=Uee(p,u)}function Jee(e,t){let i=0;for(let o=0;o<=t;o+=wT)i+=e&BP,e>>=wT;return i}function Uee(e,t){let i=(e>>t&BP)+1;return I.assert((i&BP)===i,"Adding more rules into the sub-bucket than allowed. Maximum allowed is 32 rules."),e&~(BP<<t)|i<<t}function Wee(e,t,i,o=$u(e,t)){let c=It(o,ec);if(c&&(o=c.parent),o.getStart(e)<=t&&t<o.getEnd())return;i=i===null?void 0:i===void 0?fs(t,e):i;let p=i&&Hd(e.text,i.end),m=FB(o,e),g=Kr(p,m);return g&&fr(g,S=>RS(S,t)||t===S.end&&(S.kind===2||t===e.getFullWidth()))}function Kee(e,t){let i={pos:0,end:e.text.length};return[{span:{start:0,length:e.text.length},newText:e.text}]}function Vee(e,t,i,o,c,u){let p={pos:e.pos,end:e.end};return[{span:{start:p.pos,length:p.end-p.pos},newText:t.text.slice(p.pos,p.end)}]}var P0;(P=>{let e;(B=>B[B.Unknown=-1]="Unknown")(e||(e={}));function t(v,B,y,$=!1){return i(y)}P.getIndentation=t;function i(v){return v.baseIndentSize||0}P.getBaseIndentation=i;function o(v,B){return v.parent&&c(v.getStart(B),v.getEnd(),v.parent,B)}P.getContainingList=o;function c(v,B,y,$){switch(y.kind){case 166:return j(y.typeArguments);case 293:return j(y.properties);case 290:return j(y.elements);case 163:return j(y.members);case 169:case 270:case 271:case 154:case 156:return j(y.parameters);case 276:case 272:return j(y.arguments);case 238:return j(y.declarations);case 265:return j(y.elements)}function j(ce){return ce&&s3(u(y,ce,$),v,B)?ce:void 0}}function u(v,B,y){let $=v.getChildren(y);for(let j=1;j<$.length-1;j++)if($[j].pos===B.pos&&$[j].end===B.end)return{pos:$[j-1].end,end:$[j+1].getStart(y)};return B}function p(v,B,y,$){let j=0,ce=0;for(let me=v;me<B;me++){let V=y.text.charCodeAt(me);if(!Xc(V))break;V===9?ce+=$.tabSize+ce%$.tabSize:ce++,j++}return{column:ce,character:j}}P.findFirstNonWhitespaceCharacterAndColumn=p;function m(v,B,y,$){return p(v,B,y,$).column}P.findFirstNonWhitespaceColumn=m;function g(v,B,y,$,j){let ce=y?y.kind:0;switch(B.kind){case 247:case 170:case 274:case 290:case 236:case 293:case 163:case 264:case 289:case 286:case 272:case 276:case 242:case 248:case 267:case 265:case 156:case 149:case 165:case 171:case 152:case 299:case 301:return!0;case 240:return v.indentSwitchCase??!0;case 237:case 174:case 269:if(!v.indentMultiLineObjectLiteralBeginningOnBlankLine&&$&&ce===293)return _($,y);if(B.kind!==269)return!0;break;case 245:case 246:case 244:case 243:case 253:case 169:case 270:case 154:return ce!==236;case 271:return $&&ce===289?_($,y):ce!==236;case 157:if(ce===163||ce===264)return!1;break}return j}P.nodeWillIndentChild=g;function S(v,B){switch(v){case 248:case 251:case 250:return B.kind!==236;default:return!1}}function T(v,B,y,$,j=!1){return g(v,B,y,$,!1)&&!(j&&y&&S(y.kind,B))}P.shouldIndentChildNode=T;function _(v,B){let y=Oi(v.text,B.pos),$=v.getLineAndCharacterOfPosition(y).line,j=v.getLineAndCharacterOfPosition(B.end).line;return $===j}})(P0||(P0={}));var vd={};pd(vd,{getDocCommentTemplateAtPosition:()=>nne,getJSDocParameterNameCompletionDetails:()=>ene,getJSDocParameterNameCompletions:()=>Zee,getJSDocTagCompletionDetails:()=>OU,getJSDocTagCompletions:()=>Xee,getJSDocTagNameCompletionDetails:()=>Yee,getJSDocTagNameCompletions:()=>Qee,getJsDocCommentsFromDeclarations:()=>zee,getJsDocTagsFromDeclarations:()=>Gee});var IU=["abstract","access","alias","argument","async","augments","author","borrows","callback","class","classdesc","constant","constructor","constructs","copyright","default","deprecated","description","emits","enum","event","example","exports","extends","external","field","file","fileoverview","fires","function","generator","global","hideconstructor","host","ignore","implements","import","inheritdoc","inner","instance","interface","kind","lends","license","link","linkcode","linkplain","listens","member","memberof","method","mixes","module","name","namespace","overload","override","package","param","private","prop","property","protected","public","readonly","requires","returns","satisfies","see","since","static","summary","template","this","throws","todo","tutorial","type","typedef","var","variation","version","virtual","yields"],vU,FU;function zee(e,t){let i=[];return WA(e,o=>{for(let c of qee(o)){let u=ec(c)&&c.tags&&fr(c.tags,m=>m.kind===206&&(m.tagName.text==="inheritDoc"||m.tagName.text==="inheritdoc"));if(c.comment===void 0&&!u||ec(c)&&o.kind!==225&&o.kind!==217&&c.tags&&c.tags.some(m=>m.kind===225||m.kind===217)&&!c.tags.some(m=>m.kind===220||m.kind===221))continue;let p=c.comment?Yg(c.comment,t):[];u&&u.comment&&(p=p.concat(Yg(u.comment,t))),Yr(i,p,Hee)||i.push(p)}}),Au($E(i,[Hg()]))}function Hee(e,t){return GE(e,t,(i,o)=>i.kind===o.kind&&i.text===o.text)}function qee(e){switch(e.kind){case 220:case 227:return[e];case 217:case 225:return[e,e.parent];case 202:if(Tg(e.parent))return[e.parent.parent];default:return CN(e)}}function Gee(e,t){let i=[];return WA(e,o=>{let c=$p(o);if(!(c.some(u=>u.kind===225||u.kind===217)&&!c.some(u=>u.kind===220||u.kind===221)))for(let u of c)i.push({name:u.tagName.text,text:wU(u,t)}),i.push(...LU(AU(u),t))}),i}function LU(e,t){return Co(e,i=>Kr([{name:i.tagName.text,text:wU(i,t)}],LU(AU(i),t)))}function AU(e){return Qf(e)&&e.isNameFirst&&e.typeExpression&&e.typeExpression.type&&Bu(e.typeExpression.type)?e.typeExpression.type.jsDocPropertyTags:void 0}function Yg(e,t){return typeof e=="string"?[ks(e)]:Co(e,i=>F4(i)?[ks(i.text)]:YJ(i,t))}function wU(e,t){let{comment:i,kind:o}=e,c=$ee(o),u=[];switch(o){case 229:let g=e.typeExpression;return g?p(g):i===void 0?void 0:Yg(i,t);case 208:return p(e.class);case 207:return p(e.class);case 224:let S=e;if(S.constraint&&u.push(ks(S.constraint.getText())),rr(S.typeParameters)){rr(u)&&u.push(Sa());let _=S.typeParameters[S.typeParameters.length-1];Ln(S.typeParameters,P=>{u.push(c(P.getText())),_!==P&&u.push(Us(27),Sa())})}return i&&u.push(Sa(),...Yg(i,t)),u;case 223:case 230:return p(e.typeExpression);case 225:case 217:case 227:case 220:case 226:let{name:T}=e;return T?u.push(...p(T)):i&&u.push(...Yg(i,t)),u;default:return i===void 0?void 0:Yg(i,t)}function p(g){return m(g.getText())}function m(g){return i?g.match(/^https?$/)?[ks(g),...Yg(i,t)]:[c(g),Sa(),...Yg(i,t)]:[ks(g)]}}function $ee(e){switch(e){case 220:return MJ;case 227:return BJ;case 224:return ZJ;case 225:case 217:return XJ;default:return ks}}function Qee(){return vU||(vU=qn(IU,e=>({name:e,kind:"keyword",kindModifiers:"",sortText:kT.SortText.LocationPriority})))}var Yee=OU;function Xee(){return FU||(FU=qn(IU,e=>({name:`@${e}`,kind:"keyword",kindModifiers:"",sortText:kT.SortText.LocationPriority})))}function OU(e){return{name:e,kind:"",kindModifiers:"",displayParts:[ks(e)],documentation:xe,tags:void 0,codeActions:void 0}}function Zee(e){if(!cn(e.name))return xe;let t=e.name.text,i=e.parent,o=i.parent;return ki(o)?_i(o.parameters,c=>{if(!cn(c.name))return;let u=c.name.text;if(!(i.tags.some(p=>p!==e&&Os(p)&&cn(p.name)&&p.name.text===u)||t!==void 0&&!To(u,t)))return{name:u,kind:"parameter",kindModifiers:"",sortText:kT.SortText.LocationPriority}}):[]}function ene(e){return{name:e,kind:"parameter",kindModifiers:"",displayParts:[ks(e)],documentation:xe,tags:void 0,codeActions:void 0}}function nne(e,t,i,o){let c=$u(t,i),u=It(c,ec);if(u&&(u.comment!==void 0||rr(u.tags)))return;let p=c.getStart(t);if(!u&&p<i)return;let m=one(c,o);if(!m)return;let{commentOwner:g,parameters:S,hasReturn:T}=m,_=Ms(g)&&g.jsDoc?g.jsDoc:void 0,P=ko(_);if(g.getStart(t)<i||P&&u&&P!==u)return;let v=tne(t,i),y=(S?rne(S||[],!1,v,e):"")+(T?ine(v,e):""),$="/**",j=" */",ce=rr($p(g))>0;if(y&&!ce){let me=$+e+v+" * ",V=p===i?e+v:"";return{newText:me+e+y+v+j+V,caretOffset:me.length}}return{newText:$+j,caretOffset:3}}function tne(e,t){let{text:i}=e,o=cl(t,e),c=o;for(;c<=t&&Xc(i.charCodeAt(c));c++);return i.slice(o,c)}function rne(e,t,i,o){return e.map(({name:c,dotDotDotToken:u},p)=>{let m=c.kind===89?c.text:"param"+p;return`${i} * @param ${t?u?"{...any} ":"{any} ":""}${m}${o}`}).join("")}function ine(e,t){return`${e} * @returns${t}`}function one(e,t){return RB(e,i=>k0(i,t))}function k0(e,t){if(e)switch(e.kind){case 169:case 270:case 154:case 156:let i=e;return{commentOwner:e,parameters:i.parameters,hasReturn:jP(i,t)};case 174:return k0(e.initializer,t);case 153:return{commentOwner:e};case 242:{let u=e.declarationList.declarations,p=u.length===1&&u[0].initializer?ane(u[0].initializer):void 0;return p?{commentOwner:e,parameters:p.parameters,hasReturn:jP(p,t)}:{commentOwner:e}}case 176:return"quit";case 247:return k0(e.expression,t);case 269:{let c=e;return ds(c)===0?"quit":ki(c.right)?{commentOwner:e,parameters:c.right.parameters,hasReturn:jP(c.right,t)}:{commentOwner:e}}case 152:let o=e.initializer;if(o&&(xs(o)||Hu(o)))return{commentOwner:e,parameters:o.parameters,hasReturn:jP(o,t)}}}function jP(e,t){return!!t?.generateReturnInDocTemplate&&(Zf(e)||Hu(e)&&Xs(e.body)||pc(e)&&e.body&&Rs(e.body)&&!!Xd(e.body,i=>i))}function ane(e){for(;e.kind===289;)e=e.expression;switch(e.kind){case 270:case 271:return e;case 274:I.fail("todo - class expression")}}var dp={};pd(dp,{ChangeTracker:()=>L0,LeadingTriviaOption:()=>BU,TrailingTriviaOption:()=>jU,applyChanges:()=>A0,assignPositionsToNode:()=>KP,createWriter:()=>UU,deleteNode:()=>pf,isThisTypeAnnotatable:()=>cne,isValidLocationToAddComment:()=>WU});function RU(e){let t=e.__pos;return I.assert(typeof t=="number"),t}function v0(e,t){I.assert(typeof t=="number"),e.__pos=t}function MU(e){let t=e.__end;return I.assert(typeof t=="number"),t}function F0(e,t){I.assert(typeof t=="number"),e.__end=t}var BU=(c=>(c[c.Exclude=0]="Exclude",c[c.IncludeAll=1]="IncludeAll",c[c.JSDoc=2]="JSDoc",c[c.StartLine=3]="StartLine",c))(BU||{}),jU=(o=>(o[o.Exclude=0]="Exclude",o[o.ExcludeWhitespace=1]="ExcludeWhitespace",o[o.Include=2]="Include",o))(jU||{});function JU(e,t){return Oi(e,t,!1,!0)}function sne(e,t){let i=t;for(;i<e.length;){let o=e.charCodeAt(i);if(Xc(o)){i++;continue}return o===47}return!1}var QS={leadingTriviaOption:0,trailingTriviaOption:0};function YS(e,t,i,o){return{pos:ff(e,t,o),end:Xg(e,i,o)}}function ff(e,t,i,o=!1){let{leadingTriviaOption:c}=i;if(c===0)return t.getStart(e);if(c===3){let _=t.getStart(e),P=cl(_,e);return WS(t,P)?P:_}if(c===2){let _=nD(t,e.text);if(_?.length)return cl(_[0].pos,e)}let u=t.getFullStart(),p=t.getStart(e);if(u===p)return p;let m=cl(u,e);if(cl(p,e)===m)return c===1?u:p;if(o){let _=Dl(e.text,u)?.[0]||Hd(e.text,u)?.[0];if(_)return Oi(e.text,_.end,!0,!0)}let S=u>0?1:0,T=tD(gS(e,m)+S,e);return T=JU(e.text,T),tD(gS(e,T),e)}function I0(e,t,i){let{end:o}=t,{trailingTriviaOption:c}=i;if(c===2){let u=Hd(e.text,o);if(u){let p=gS(e,t.end);for(let m of u){if(m.kind===2||gS(e,m.pos)>p)break;if(gS(e,m.end)>p)return Oi(e.text,m.end,!0,!0)}}}}function Xg(e,t,i){let{end:o}=t,{trailingTriviaOption:c}=i;if(c===0)return o;if(c===1){let m=Kr(Hd(e.text,o),Dl(e.text,o)),g=m?.[m.length-1]?.end;return g||o}let u=I0(e,t,i);if(u)return u;let p=Oi(e.text,o,!0);return p!==o&&(c===2||Wa(e.text.charCodeAt(p-1)))?p:o}function UP(e,t){return!!t&&!!e.parent&&(t.kind===27||t.kind===26&&e.parent.kind===293)}function cne(e){return xs(e)||Ns(e)}var L0=class e{constructor(t,i){this.newLineCharacter=t;this.formatContext=i;this.changes=[];this.classesWithNodesInsertedAtStart=new Map;this.deletedNodes=[]}static fromContext(t){return new e(PT(t.host,t.formatContext.options),t.formatContext)}static with(t,i){let o=e.fromContext(t);return i(o),o.getChanges(t)}pushRaw(t,i){I.assertEqual(t.fileName,i.fileName);for(let o of i.textChanges)this.changes.push({kind:3,sourceFile:t,text:o.newText,range:e3(o.span)})}deleteRange(t,i){this.changes.push({kind:0,sourceFile:t,range:i})}delete(t,i){this.deletedNodes.push({sourceFile:t,node:i})}deleteNode(t,i,o={leadingTriviaOption:1}){this.deleteRange(t,YS(t,i,i,o))}deleteNodes(t,i,o={leadingTriviaOption:1},c){for(let u of i){let p=ff(t,u,o,c),m=Xg(t,u,o);this.deleteRange(t,{pos:p,end:m}),c=!!I0(t,u,o)}}deleteModifier(t,i){this.deleteRange(t,{pos:i.getStart(t),end:Oi(t.text,i.end,!0)})}deleteNodeRange(t,i,o,c={leadingTriviaOption:1}){let u=ff(t,i,c),p=Xg(t,o,c);this.deleteRange(t,{pos:u,end:p})}deleteNodeRangeExcludingEnd(t,i,o,c={leadingTriviaOption:1}){let u=ff(t,i,c),p=o===void 0?t.text.length:ff(t,o,c);this.deleteRange(t,{pos:u,end:p})}replaceRange(t,i,o,c={}){this.changes.push({kind:1,sourceFile:t,range:i,options:c,node:o})}replaceNode(t,i,o,c=QS){this.replaceRange(t,YS(t,i,i,c),o,c)}replaceNodeRange(t,i,o,c,u=QS){this.replaceRange(t,YS(t,i,o,u),c,u)}replaceRangeWithNodes(t,i,o,c={}){this.changes.push({kind:2,sourceFile:t,range:i,options:c,nodes:o})}replaceNodeWithNodes(t,i,o,c=QS){this.replaceRangeWithNodes(t,YS(t,i,i,c),o,c)}replaceNodeWithText(t,i,o){this.replaceRangeWithText(t,YS(t,i,i,QS),o)}replaceNodeRangeWithNodes(t,i,o,c,u=QS){this.replaceRangeWithNodes(t,YS(t,i,o,u),c,u)}nodeHasTrailingComment(t,i,o=QS){return!!I0(t,i,o)}nextCommaToken(t,i){let o=Qb(i,i.parent,t);return o&&o.kind===27?o:void 0}replacePropertyAssignment(t,i,o){let c=this.nextCommaToken(t,i)?"":","+this.newLineCharacter;this.replaceNode(t,i,o,{suffix:c})}insertNodeAt(t,i,o,c={}){this.replaceRange(t,np(i),o,c)}insertNodesAt(t,i,o,c={}){this.replaceRangeWithNodes(t,np(i),o,c)}insertNodeAtTopOfFile(t,i,o){this.insertAtTopOfFile(t,i,o)}insertNodesAtTopOfFile(t,i,o){this.insertAtTopOfFile(t,i,o)}insertAtTopOfFile(t,i,o){let c=yne(t),u={prefix:c===0?void 0:this.newLineCharacter,suffix:(Wa(t.text.charCodeAt(c))?"":this.newLineCharacter)+(o?this.newLineCharacter:"")};mi(i)?this.insertNodesAt(t,c,i,u):this.insertNodeAt(t,c,i,u)}insertNodesAtEndOfFile(t,i,o){this.insertAtEndOfFile(t,i,o)}insertAtEndOfFile(t,i,o){let c=t.end+1,u={prefix:this.newLineCharacter,suffix:this.newLineCharacter+(o?this.newLineCharacter:"")};this.insertNodesAt(t,c,i,u)}insertStatementsInNewFile(t,i,o){this.newFileChanges||(this.newFileChanges=$s()),this.newFileChanges.add(t,{oldFile:o,statements:i})}insertFirstParameter(t,i,o){let c=Ta(i);c?this.insertNodeBefore(t,c,o):this.insertNodeAt(t,i.pos,o)}insertNodeBefore(t,i,o,c=!1,u={}){this.insertNodeAt(t,ff(t,i,u),o,this.getOptionsForInsertNodeBefore(i,o,c))}insertNodesBefore(t,i,o,c=!1,u={}){this.insertNodesAt(t,ff(t,i,u),o,this.getOptionsForInsertNodeBefore(i,Eo(o),c))}insertModifierAt(t,i,o,c={}){this.insertNodeAt(t,i,we.createToken(o),c)}insertModifierBefore(t,i,o){return this.insertModifierAt(t,o.getStart(t),i,{suffix:" "})}insertCommentBeforeLine(t,i,o,c){let u=tD(i,t),p=n3(t.text,u),m=WU(t,p),g=qb(t,m?p:o),S=t.text.slice(u,p),T=`${m?"":this.newLineCharacter}//${c}${this.newLineCharacter}${S}`;this.insertText(t,g.getStart(t),T)}insertJsdocCommentBefore(t,i,o){let c=i.getStart(t);if(i.jsDoc)for(let m of i.jsDoc)this.deleteRange(t,{pos:cl(m.getStart(t),t),end:Xg(t,m,{})});let u=i3(t.text,c-1),p=t.text.slice(u,c);this.insertNodeAt(t,c,o,{suffix:this.newLineCharacter+p})}createJSDocText(t,i){let o=Co(i.jsDoc,u=>ho(u.comment)?we.createJSDocText(u.comment):u.comment),c=Iy(i.jsDoc);return c&&Il(c.pos,c.end,t)&&rr(o)===0?void 0:we.createNodeArray($E(o,we.createJSDocText(`
50
+ `)))}replaceJSDocComment(t,i,o){this.insertJsdocCommentBefore(t,lne(i),we.createJSDocComment(this.createJSDocText(t,i),we.createNodeArray(o)))}addJSDocTags(t,i,o){let c=vy(i.jsDoc,p=>p.tags),u=o.filter(p=>!c.some((m,g)=>{let S=une(m,p);return S&&(c[g]=S),!!S}));this.replaceJSDocComment(t,i,[...c,...u])}filterJSDocTags(t,i,o){this.replaceJSDocComment(t,i,Rr(vy(i.jsDoc,c=>c.tags),o))}replaceRangeWithText(t,i,o){this.changes.push({kind:3,sourceFile:t,range:i,text:o})}insertText(t,i,o){this.replaceRangeWithText(t,np(i),o)}tryInsertTypeAnnotation(t,i,o){let c;if(ki(i)){if(c=ll(i,21,t),!c){if(!Hu(i))return!1;c=Eo(i.parameters)}}else c=i.name;return this.insertNodeAt(t,c.end,o,{prefix:": "}),!0}tryInsertThisTypeAnnotation(t,i,o){let c=ll(i,20,t).getStart(t)+1,u=i.parameters.length?", ":"";this.insertNodeAt(t,c,o,{prefix:"this: ",suffix:u})}insertTypeParameters(t,i,o){let c=(ll(i,20,t)||Eo(i.parameters)).getStart(t);this.insertNodesAt(t,c,o,{prefix:"<",suffix:">",joiner:", "})}getOptionsForInsertNodeBefore(t,i,o){return Hp(t)?{suffix:o?this.newLineCharacter+this.newLineCharacter:this.newLineCharacter}:po(t)?{suffix:", "}:Qi(t)?Qi(i)?{suffix:", "}:{}:I.failBadSyntaxKind(t)}insertNodeAtEndOfScope(t,i,o){let c=ff(t,i.getLastToken(),{});this.insertNodeAt(t,c,o,{prefix:Wa(t.text.charCodeAt(i.getLastToken().pos))?this.newLineCharacter:this.newLineCharacter+this.newLineCharacter,suffix:this.newLineCharacter})}insertMemberAtStart(t,i,o){this.insertNodeAtStartWorker(t,i,o)}insertNodeAtObjectStart(t,i,o){this.insertNodeAtStartWorker(t,i,o)}insertNodeAtStartWorker(t,i,o){let c=this.guessIndentationFromExistingMembers(t,i)??this.computeIndentationForNewMember(t,i);this.insertNodeAt(t,JP(i).pos,o,this.getInsertNodeAtStartInsertOptions(t,i,c))}guessIndentationFromExistingMembers(t,i){let o,c=i;for(let u of JP(i)){if(aT(c,u,t))return;let p=u.getStart(t),m=rc.SmartIndenter.findFirstNonWhitespaceColumn(cl(p,t),p,t,this.formatContext.options);if(o===void 0)o=m;else if(m!==o)return;c=u}return o}computeIndentationForNewMember(t,i){let o=i.getStart(t);return rc.SmartIndenter.findFirstNonWhitespaceColumn(cl(o,t),o,t,this.formatContext.options)+(this.formatContext.options.indentSize??4)}getInsertNodeAtStartInsertOptions(t,i,o){let u=JP(i).length===0,p=sf(this.classesWithNodesInsertedAtStart,za(i),{node:i,sourceFile:t}),m=Ka(i)&&(!Ig(t)||!u),g=Ka(i)&&Ig(t)&&u&&!p;return{indentation:o,prefix:(g?",":"")+this.newLineCharacter,suffix:m?",":""}}insertNodeAfterComma(t,i,o){let c=this.insertNodeAfterWorker(t,this.nextCommaToken(t,i)||i,o);this.insertNodeAt(t,c,o,this.getInsertNodeAfterOptions(t,i))}insertNodeAfter(t,i,o){let c=this.insertNodeAfterWorker(t,i,o);this.insertNodeAt(t,c,o,this.getInsertNodeAfterOptions(t,i))}insertNodeAtEndOfList(t,i,o){this.insertNodeAt(t,i.end,o,{prefix:", "})}insertNodesAfter(t,i,o){let c=this.insertNodeAfterWorker(t,i,Eo(o));this.insertNodesAt(t,c,o,this.getInsertNodeAfterOptions(t,i))}insertNodeAfterWorker(t,i,o){return Tne(i,o)&&t.text.charCodeAt(i.end-1)!==59&&this.replaceRange(t,np(i.end),we.createToken(26)),Xg(t,i,{})}getInsertNodeAfterOptions(t,i){let o=this.getInsertNodeAfterOptionsWorker(i);return{...o,prefix:i.end===t.end&&Hp(i)?o.prefix?`
51
+ ${o.prefix}`:`
52
+ `:o.prefix}}getInsertNodeAfterOptionsWorker(t){switch(t.kind){case 170:return{prefix:this.newLineCharacter,suffix:this.newLineCharacter};case 237:case 16:case 89:return{prefix:", "};case 174:return{suffix:","+this.newLineCharacter};case 149:return{};default:return I.assert(Hp(t)||$F(t)),{suffix:this.newLineCharacter}}}insertName(t,i,o){I.assert(!i.name);let c=ll(i,i.kind===270?138:133,t).end;this.insertNodeAt(t,c,we.createIdentifier(o),{prefix:" "})}insertExportModifier(t,i){this.insertText(t,i.getStart(t),"export ")}insertNodeInListAfter(t,i,o,c=rc.SmartIndenter.getContainingList(i,t)){if(!c){I.fail("node is not a list element");return}let u=pS(c,i);if(u<0)return;let p=i.getEnd();if(u!==c.length-1){let m=$u(t,i.end);if(m&&UP(i,m)){let g=c[u+1],S=JU(t.text,g.getFullStart()),T=`${gi(m.kind)}${t.text.substring(m.end,S)}`;this.insertNodesAt(t,S,[o],{suffix:T})}}else{let m=i.getStart(t),g=cl(m,t),S,T=!1;if(c.length===1)S=27;else{let _=fs(i.pos,t);S=UP(i,_)?_.kind:27,T=cl(c[u-1].getStart(t),t)!==g}if((sne(t.text,i.end)||!Il(c.pos,c.end,t))&&(T=!0),T){this.replaceRange(t,np(p),we.createToken(S));let _=rc.SmartIndenter.findFirstNonWhitespaceColumn(g,m,t,this.formatContext.options),P=Oi(t.text,p,!0,!1);for(;P!==p&&Wa(t.text.charCodeAt(P-1));)P--;this.replaceRange(t,np(P),o,{indentation:_,prefix:this.newLineCharacter})}else this.replaceRange(t,np(p),o,{prefix:`${gi(S)} `})}}parenthesizeExpression(t,i){this.replaceRange(t,rD(i),we.createParenthesizedExpression(i))}finishClassesWithNodesInsertedAtStart(){this.classesWithNodesInsertedAtStart.forEach(({node:t,sourceFile:i})=>{let[o,c]=pne(t,i);if(o!==void 0&&c!==void 0){let u=JP(t).length===0,p=Il(o,c,i);u&&p&&o!==c-1&&this.deleteRange(i,np(o,c-1)),p&&this.insertText(i,c-1,this.newLineCharacter)}})}finishDeleteDeclarations(){let t=new Set;for(let{sourceFile:i,node:o}of this.deletedNodes)this.deletedNodes.some(c=>c.sourceFile===i&&o3(c.node,o))||(mi(o)?this.deleteRange(i,iD(i,o)):w0.deleteDeclaration(this,t,i,o));t.forEach(i=>{let o=i.getSourceFile(),c=rc.SmartIndenter.getContainingList(i,o);if(i!==Ro(c))return;let u=yx(c,p=>!t.has(p),c.length-2);u!==-1&&this.deleteRange(o,{pos:c[u].end,end:O0(o,c[u+1])})})}getChanges(t,i){let u=t.host.getCompilationSettings()?.driverType;this.finishDeleteDeclarations(),this.finishClassesWithNodesInsertedAtStart();let p=WP.getTextChangesFromChanges(this.changes,this.newLineCharacter,this.formatContext,i);return this.newFileChanges&&this.newFileChanges.forEach((m,g)=>{p.push(WP.newFileChanges(g,m,this.newLineCharacter,this.formatContext,u))}),p}createNewFile(t,i,o){this.insertStatementsInNewFile(i,o,t)}};function lne(e){if(e.kind!==271)return e;let t=e.parent.kind===152?e.parent:e.parent.parent;return t.jsDoc=e.jsDoc,t}function une(e,t){if(e.kind===t.kind)switch(e.kind){case 220:{let i=e,o=t;return cn(i.name)&&cn(o.name)&&i.name.text===o.name.text?we.createJSDocParameterTag(void 0,o.name,!1,o.typeExpression,o.isNameFirst,i.comment):void 0}case 221:return we.createJSDocReturnTag(void 0,t.typeExpression,e.comment);case 223:return we.createJSDocTypeTag(void 0,t.typeExpression,e.comment)}}function O0(e,t){return Oi(e.text,ff(e,t,{leadingTriviaOption:1}),!1,!0)}function dne(e,t,i,o){let c=O0(e,o);if(i===void 0||Il(Xg(e,t,{}),c,e))return c;let u=fs(o.getStart(e),e);if(UP(t,u)){let p=fs(t.getStart(e),e);if(UP(i,p)){let m=Oi(e.text,u.getEnd(),!0,!0);if(Il(p.getStart(e),u.getStart(e),e))return Wa(e.text.charCodeAt(m-1))?m-1:m;if(Wa(e.text.charCodeAt(m)))return m}}return c}function pne(e,t){let i=ll(e,17,t),o=ll(e,19,t);return[i?.end,o?.end]}function JP(e){return Ka(e)?e.properties:e.members}var WP;(p=>{function e(m,g,S,T){return _i(TM(m,_=>_.sourceFile.path),_=>{let P=_[0].sourceFile,v=fd(_,(y,$)=>y.range.pos-$.range.pos||y.range.end-$.range.end);for(let y=0;y<v.length-1;y++)I.assert(v[y].range.end<=v[y+1].range.pos,"Changes overlap",()=>`${JSON.stringify(v[y].range)} and ${JSON.stringify(v[y+1].range)}`);let B=_i(v,y=>{let $=jS(y.range),j=y.kind===1?Dt(ns(y.node))??y.sourceFile:y.kind===2?Dt(ns(y.nodes[0]))??y.sourceFile:y.sourceFile,ce=o(y,j,P,g,S,T);if(!($.length===ce.length&&a3(j.text,ce,$.start)))return KA($,ce)});return B.length>0?{fileName:P.fileName,textChanges:B}:void 0})}p.getTextChangesFromChanges=e;function t(m,g,S,T,_){let P=i(MB(m),_,g,S,T);return{fileName:m,textChanges:[KA(el(0,0),P)],isNewFile:!0}}p.newFileChanges=t;function i(m,g,S,T,_){let P=Co(S,y=>y.statements.map($=>$===4?"":u($,y.oldFile,T).text)).join(T),v=xb("any file name",P,{languageVersion:1,jsDocParsingMode:1,fileHandler:void 0},!0,m,g),B=rc.formatDocument(v,_);return A0(P,B)+T}p.newFileChangesWorker=i;function o(m,g,S,T,_,P){if(m.kind===0)return"";if(m.kind===3)return m.text;let{options:v={},range:{pos:B}}=m,y=ce=>c(ce,g,S,B,v,T,_,P),$=m.kind===2?m.nodes.map(ce=>og(y(ce),T)).join(m.options?.joiner||T):y(m.node),j=v.indentation!==void 0||cl(B,g)===B?$:$.replace(/^\s+/,"");return(v.prefix||"")+j+(!v.suffix||Pc(j,v.suffix)?"":v.suffix)}function c(m,g,S,T,{indentation:_,prefix:P,delta:v},B,y,$){let{node:j,text:ce}=u(m,g,B);$&&$(j,ce);let me=Gb(y,g),V=_!==void 0?_:rc.SmartIndenter.getIndentation(T,S,me,P===B||cl(T,g)===T);v===void 0&&(v=rc.SmartIndenter.shouldIndentChildNode(me,m)&&me.indentSize||0);let ne={text:ce,fileName:void 0,getLineAndCharacterOfPosition($e){return Go(this,$e)}},ve=rc.formatNodeGivenIndentation(j,ne,g.languageVariant,V,v,{...y,options:me});return A0(ce,ve)}function u(m,g,S){let T=UU(S),_=KS(S);return df({newLine:_,neverAsciiEscape:!0,preserveSourceNewlines:!0,terminateUnterminatedLiterals:!0},T).writeNode(4,m,g,T),{text:T.getText(),node:KP(m)}}p.getNonformattedText=u})(WP||(WP={}));function A0(e,t){for(let i=t.length-1;i>=0;i--){let{span:o,newText:c}=t[i];e=`${e.substring(0,o.start)}${c}${e.substring(Rh(o))}`}return e}function fne(e){return Oi(e,0)===e.length}var mne={...FS,factory:ES(FS.factory.flags|1,FS.factory.baseFactory)};function KP(e){let t=gm(e,KP,mne,gne,KP),i=wi(t)?t:Object.create(t);return La(i,RU(e),MU(e)),i}function gne(e,t,i,o,c){let u=mm(e,t,i,o,c);if(!u)return u;I.assert(e);let p=u===e?we.createNodeArray(u.slice(0)):u;return La(p,RU(e),MU(e)),p}function UU(e){let t=0,i=vg(e),o=te=>{te&&v0(te,t)},c=te=>{te&&F0(te,t)},u=te=>{te&&v0(te,t)},p=te=>{te&&F0(te,t)},m=te=>{te&&v0(te,t)},g=te=>{te&&F0(te,t)};function S(te,le){if(le||!fne(te)){t=i.getTextPos();let bn=0;for(;Nl(te.charCodeAt(te.length-bn-1));)bn++;t-=bn}}function T(te){i.write(te),S(te,!1)}function _(te){i.writeComment(te)}function P(te){i.writeKeyword(te),S(te,!1)}function v(te){i.writeOperator(te),S(te,!1)}function B(te){i.writePunctuation(te),S(te,!1)}function y(te){i.writeTrailingSemicolon(te),S(te,!1)}function $(te){i.writeParameter(te),S(te,!1)}function j(te){i.writeProperty(te),S(te,!1)}function ce(te){i.writeSpace(te),S(te,!1)}function me(te){i.writeStringLiteral(te),S(te,!1)}function V(te,le){i.writeSymbol(te,le),S(te,!1)}function ne(te){i.writeLine(te)}function ve(){i.increaseIndent()}function $e(){i.decreaseIndent()}function Ie(){return i.getText()}function ge(te){i.rawWrite(te),S(te,!1)}function Ae(te){i.writeLiteral(te),S(te,!0)}function Qe(){return i.getTextPos()}function ye(){return i.getLine()}function ae(){return i.getColumn()}function Ee(){return i.getIndent()}function z(){return i.isAtStartOfLine()}function ze(){i.clear(),t=0}return{onBeforeEmitNode:o,onAfterEmitNode:c,onBeforeEmitNodeArray:u,onAfterEmitNodeArray:p,onBeforeEmitToken:m,onAfterEmitToken:g,write:T,writeComment:_,writeKeyword:P,writeOperator:v,writePunctuation:B,writeTrailingSemicolon:y,writeParameter:$,writeProperty:j,writeSpace:ce,writeStringLiteral:me,writeSymbol:V,writeLine:ne,increaseIndent:ve,decreaseIndent:$e,getText:Ie,rawWrite:ge,writeLiteral:Ae,getTextPos:Qe,getLine:ye,getColumn:ae,getIndent:Ee,isAtStartOfLine:z,hasTrailingComment:()=>i.hasTrailingComment(),hasTrailingWhitespace:()=>i.hasTrailingWhitespace(),clear:ze}}function yne(e){let t;for(let S of e.statements)if(ob(S))t=S;else break;let i=0,o=e.text;if(t)return i=t.end,g(),i;let c=Oh(o);c!==void 0&&(i=c.length,g());let u=Dl(o,i);if(!u)return i;let p,m;for(let S of u){if(S.kind===3&&yS(o,S.pos)){p={range:S,pinnedOrTripleSlash:!0};continue}if(p){if(p.pinnedOrTripleSlash)break;let T=e.getLineAndCharacterOfPosition(S.pos).line,_=e.getLineAndCharacterOfPosition(p.range.end).line;if(T>=_+2)break}if(e.statements.length){m===void 0&&(m=e.getLineAndCharacterOfPosition(e.statements[0].getStart()).line);let T=e.getLineAndCharacterOfPosition(S.end).line;if(m<T+2)break}p={range:S,pinnedOrTripleSlash:!1}}return p&&(i=p.range.end,g()),i;function g(){if(i<o.length){let S=o.charCodeAt(i);Wa(S)&&(i++,i<o.length&&S===13&&o.charCodeAt(i)===10&&i++)}}}function WU(e,t){return!qg(e,t)&&!up(e,t)&&!c3(e,t)}function Tne(e,t){return(Nd(e)||Oc(e))&&$F(t)||Px(e)&&Px(t)}var w0;(i=>{function e(o,c,u,p){switch(p.kind){case 149:{let S=p.parent;Hu(S)&&S.parameters.length===1&&!ll(S,20,u)?o.replaceNodeWithText(u,p,"()"):oC(o,c,u,p);break}case 266:let m=p.parent;m.kind===265&&p!==Ro(m.elements)?pf(o,u,p):oC(o,c,u,p);break;case 237:t(o,c,u,p);break;case 148:oC(o,c,u,p);break;case 26:pf(o,u,p,{trailingTriviaOption:0});break;case 138:pf(o,u,p,{leadingTriviaOption:0});break;case 170:case 169:pf(o,u,p,{leadingTriviaOption:Ms(p)?2:3});break;default:p.parent&&ao(p.parent)&&Yr(p.parent.arguments,p)?oC(o,c,u,p):pf(o,u,p)}}i.deleteDeclaration=e;function t(o,c,u,p){let{parent:m}=p;if(m.declarations.length!==1){oC(o,c,u,p);return}let g=m.parent;switch(g.kind){case 244:break;case 243:pf(o,u,m);break;case 242:pf(o,u,g,{leadingTriviaOption:Ms(g)?2:3});break;default:I.assertNever(g)}}})(w0||(w0={}));function pf(e,t,i,o={leadingTriviaOption:1}){let c=ff(t,i,o),u=Xg(t,i,o);e.deleteRange(t,{pos:c,end:u})}function oC(e,t,i,o){let c=I.checkDefined(rc.SmartIndenter.getContainingList(o,i)),u=pS(c,o);if(I.assert(u!==-1),c.length===1){pf(e,i,o);return}I.assert(!t.has(o),"Deleting a node twice"),t.add(o),e.deleteRange(i,{pos:O0(i,o),end:u===c.length-1?Xg(i,o,{}):dne(i,o,c[u-1],c[u+1])})}var HS={};pd(HS,{createImportSpecifierResolver:()=>hne,getNoopSymbolTrackerWithResolver:()=>_ne});function hne(e,t,i,o){let c=KU(t.getTypeChecker(),e,t.getCompilerOptions());return{getModuleSpecifierForBestExportInfo:u};function u(p,m,g,S){let{fixes:T,computedWithoutCacheCount:_}=Sne(p,m,g,!1,t,e,i,o,c,S),P=void 0;return P&&{...P,computedWithoutCacheCount:_}}}function KU(e,t,i){let o;for(let c of t.imports){let u=LB(c);if(AB(u.parent)){let p=e.resolveExternalModuleName(c);p&&(o||(o=$s())).add(ji(p),u.parent)}}return{getImportsForExportInfo:({moduleSymbol:c,exportKind:u,targetFlags:p,symbol:m})=>{let g=o?.get(ji(c));if(!g)return xe;let S=1;return g.map(T=>({declaration:T,importKind:S,symbol:m,targetFlags:p}))}}}function Sne(e,t,i,o,c,u,p,m,g=IB(u)?KU(c.getTypeChecker(),u,c.getCompilerOptions()):void 0,S){return{computedWithoutCacheCount:0,fixes:xe}}function _ne(e){return{trackSymbol:()=>!1,moduleResolverHost:f3(e.program,e.host)}}var vT={};pd(vT,{findContainingList:()=>M0,getArgumentInfoForCompletions:()=>xne,getSignatureHelpItems:()=>kne,rangeContainsRange:()=>VP,startEndContainsRange:()=>qU});function xne(e,t,i,o){let c=VU(e,t,i,o);return!c||c.isTypeParameterList||c.invocation.kind!==0?void 0:{invocation:c.invocation.node,argumentCount:c.argumentCount,argumentIndex:c.argumentIndex}}function VU(e,t,i,o){let{parent:c}=e;if(Ou(c)){let u=c,p=zU(e,t,i,o);if(!p)return;let{list:m,argumentIndex:g,argumentCount:S,argumentsSpan:T}=p,_=!1;return{isTypeParameterList:_,invocation:{kind:0,node:u},argumentsSpan:T,argumentIndex:g,argumentCount:S}}else{if(jD(e))return;{let u=T3(e,i);if(u){let{called:p,nTypeArguments:m}=u,g={kind:1,called:p},S=Zs(p.getStart(i),e.end);return{isTypeParameterList:!0,invocation:g,argumentsSpan:S,argumentIndex:m,argumentCount:m+1}}return}}}function zU(e,t,i,o){let c=bne(e,i,o);if(!c)return;let{list:u,argumentIndex:p}=c,m=Ene(o,u),g=Nne(u,i);return{list:u,argumentIndex:p,argumentCount:m,argumentsSpan:g}}function bne(e,t,i){if(e.kind===29||e.kind===20)return{list:Dne(e.parent,e,t),argumentIndex:0};{let o=M0(e);return o&&{list:o,argumentIndex:Cne(i,o,e)}}}function Cne(e,t,i){return HU(e,t,i)}function Ene(e,t){return HU(e,t,void 0)}function HU(e,t,i){let o=t.getChildren(),c=0,u=!1;for(let p of o){if(i&&p===i)return!u&&p.kind===27&&c++,c;if(JD(p)){c+=Pne(p,e),u=!0;continue}if(p.kind!==27){c++,u=!0;continue}if(u){u=!1;continue}c++}return i?c:o.length&&Ro(o).kind===27?c+1:c}function Nne(e,t){let i=e.getFullStart(),o=Oi(t.text,e.getEnd(),!1);return el(i,o-i)}function Dne(e,t,i){let o=e.getChildren(i),c=o.indexOf(t);return I.assert(c>=0&&o.length>c+1),o[c+1]}function M0(e){return TT(e)?e:fr(e.parent.getChildren(),i=>TT(i)&&VP(i,e))}function VP(e,t){return qU(e.pos,e.end,t)}function qU(e,t,i){return e<=i.pos&&t>=i.end}function Pne(e,t){let i=t.getTypeAtLocation(e.expression);return 0}function kne(e,t,i,o,c){let u=e.getTypeChecker(),p=x3(t,i);if(!p)return;let m=!!o&&o.kind==="characterTyped";if(m&&(up(t,i,p)||qg(t,i)))return;let g=!!o&&o.kind==="invoked",S=wne(p,i,t,u,g);if(!S)return;c.throwIfCancellationRequested();let T=Rne(S,u,t,p,m);return c.throwIfCancellationRequested(),T?u.runWithCancellationToken(c,_=>T.kind===0?XU(T.candidates,T.resolvedSignature,S,t,_):Bne(T.symbol,S,t,_)):Mne(S,e,c)}function vne(e,t,i,o){let c=Ine(e);if(c===void 0)return;let u=Lne(c,i,t,o);if(u===void 0)return;let{contextualType:p,argumentIndex:m,argumentCount:g,argumentsSpan:S}=u,T=p.getNonNullableType(),_=T.symbol;if(_===void 0)return;let P=ko(T.getCallSignatures());return P===void 0?void 0:{isTypeParameterList:!1,invocation:{kind:2,signature:P,node:e,symbol:Fne(_)},argumentsSpan:S,argumentIndex:m,argumentCount:g}}function Fne(e){return e.name==="__type"&&es(e.declarations,t=>Zf(t)?So(t.parent,qd)?.symbol:void 0)||e}function Ine(e){switch(e.kind){case 20:case 27:return e;default:return It(e.parent,t=>Qi(t)?!0:fo(t)||yT(t)?!1:"quit")}}function Lne(e,t,i,o){let{parent:c}=e;switch(c.kind){case 289:case 154:case 270:case 271:let u=zU(e,i,t,o);if(!u)return;let{argumentIndex:p,argumentCount:m,argumentsSpan:g}=u,S=PS(c)?o.getContextualTypeForObjectLiteralElement(c):o.getContextualType(c);return S&&{contextualType:S,argumentIndex:p,argumentCount:m,argumentsSpan:g};case 269:{let T=GU(c),_=o.getContextualType(T),P=e.kind===20?0:R0(c)-1,v=R0(T);return _&&{contextualType:_,argumentIndex:P,argumentCount:v,argumentsSpan:lp(c)}}default:return}}function Ane(e,t,i,o){return vne(e,t,i,o)||VU(e,t,i,o)}function GU(e){return gr(e.parent)?GU(e.parent):e}function R0(e){return gr(e.left)?R0(e.left)+1:2}function wne(e,t,i,o,c){for(let u=e;!Mr(u)&&(c||!Rs(u));u=u.parent){I.assert(VP(u.parent,u),"Not a subspan",()=>`Child: ${I.formatSyntaxKind(u.kind)}, parent: ${I.formatSyntaxKind(u.parent.kind)}`);let p=Ane(u,t,i,o);if(p)return p}}function $U(e,t,i){let o=e.getFullStart(),c=e.parent;for(;c;){let u=fs(o,t,c,!0);if(u)return VP(i,u);c=c.parent}return I.fail("Could not find preceding token")}function One(e,t,i){if(!Ou(t))return!1;let o=t.getChildren(i);switch(e.kind){case 20:return Yr(o,e);case 27:{let c=M0(e);return!!c&&Yr(o,c)}case 29:return $U(e,i,t.expression);default:return!1}}function Rne({invocation:e,argumentCount:t},i,o,c,u){switch(e.kind){case 0:{if(u&&!One(c,e.node,o))return;let p=[],m=i.getResolvedSignatureForSignatureHelp(e.node,p,t);return p.length===0?void 0:{kind:0,candidates:p,resolvedSignature:m}}case 1:{let{called:p}=e;if(u&&!$U(c,o,cn(p)?p.parent:p))return;let m=b3(p,t,i);if(m.length!==0)return{kind:0,candidates:m,resolvedSignature:Eo(m)};let g=i.getSymbolAtLocation(p);return g&&{kind:1,symbol:g}}case 2:return{kind:0,candidates:[e.signature],resolvedSignature:e.signature};default:return I.assertNever(e)}}function QU(e){return e.kind===0?cS(e.node):e.called}function YU(e){return e.kind===0?e.node:e.kind===1?e.called:e.node}function Mne(e,t,i){if(e.invocation.kind===2)return;let o=QU(e.invocation),c=o&&ii(o)?o.name.text:void 0,u=t.getTypeChecker();return c===void 0?void 0:es(t.getSourceFiles(),p=>es(p.getNamedDeclarations().get(c),m=>{let g=m.symbol&&u.getTypeOfSymbolAtLocation(m.symbol,m),S=g&&g.getCallSignatures();if(S&&S.length)return u.runWithCancellationToken(i,T=>XU(S,S[0],e,p,T,!0))}))}var aC=70246400;function XU(e,t,{isTypeParameterList:i,argumentCount:o,argumentsSpan:c,invocation:u,argumentIndex:p},m,g,S){let T=YU(u),_=u.kind===2?u.symbol:g.getSymbolAtLocation(QU(u))||S&&t.declaration?.symbol,P=_?DT(g,_,S?m:void 0,void 0):xe,v=qn(e,ce=>Jne(ce,P,i,g,T,m)),B=0,y=0;for(let ce=0;ce<v.length;ce++){let me=v[ce];if(e[ce]===t&&(B=y,me.length>1)){let V=0;for(let ne of me){if(ne.isVariadic||ne.parameters.length>=o){B=y+V;break}V++}}y+=me.length}I.assert(B!==-1);let $={items:vy(v,Di),applicableSpan:c,selectedItemIndex:B,argumentIndex:p,argumentCount:o},j=$.items[B];if(j.isVariadic){let ce=uc(j.parameters,me=>!!me.isRest);-1<ce&&ce<j.parameters.length-1?$.argumentIndex=j.parameters.length:$.argumentIndex=Math.min($.argumentIndex,j.parameters.length-1)}return $}function Bne(e,{argumentCount:t,argumentsSpan:i,invocation:o,argumentIndex:c},u,p){let m=p.getLocalTypeParametersOfClassOrInterfaceOrTypeAlias(e);return m?{items:[jne(e,m,p,YU(o),u)],applicableSpan:i,selectedItemIndex:0,argumentIndex:c,argumentCount:t}:void 0}function jne(e,t,i,o,c){let u=DT(i,e),p=ym(),m=t.map(_=>eW(_,i,o,c,p)),g=e.getDocumentationComment(i),S=e.getJsDocTags(i);return{isVariadic:!1,prefixDisplayParts:[...u,Us(29)],suffixDisplayParts:[Us(32)],separatorDisplayParts:ZU,parameters:m,documentation:g,tags:S}}var ZU=[Us(27),Sa()];function Jne(e,t,i,o,c,u){let p=(i?Vne:Une)(e,o,c,u);return qn(p,({isVariadic:m,parameters:g,prefix:S,suffix:T})=>{let _=[...t,...S],P=[...T,...Kne(e,c,o)],v=e.getDocumentationComment(o),B=e.getJsDocTags();return{isVariadic:m,prefixDisplayParts:_,suffixDisplayParts:P,separatorDisplayParts:ZU,parameters:g,documentation:v,tags:B}})}function Une(e,t,i,o){let c=ym(),u=Pd(g=>{if(e.typeParameters&&e.typeParameters.length){let S=we.createNodeArray(e.typeParameters.map(T=>t.typeParameterToDeclaration(T,i,aC)));c.writeList(53776,S,o,g)}}),p=t.getExpandedParameters(e),m=t.hasEffectiveRestParameter(e)?p.length===1?g=>!0:g=>!!(g.length&&So(g[g.length-1],tf)?.links.checkFlags&32768):g=>!1;return p.map(g=>({isVariadic:m(g),parameters:g.map(S=>Wne(S,t,i,o,c)),prefix:[...u,Us(20)],suffix:[Us(21)]}))}function Wne(e,t,i,o,c){let u=Pd(g=>{let S=t.symbolToParameterDeclaration(e,i,aC);c.writeNode(4,S,o,g)}),p=t.isOptionalParameter(e.valueDeclaration),m=tf(e)&&!!(e.links.checkFlags&32768);return{name:e.name,documentation:e.getDocumentationComment(t),displayParts:u,isOptional:p,isRest:m}}function Kne(e,t,i){return Pd(o=>{o.writePunctuation(":"),o.writeSpace(" ");let c=i.getTypePredicateOfSignature(e);c?i.writeTypePredicate(c,t,void 0,o):i.writeType(i.getReturnTypeOfSignature(e),t,void 0,o)})}function eW(e,t,i,o,c){let u=Pd(p=>{let m=t.typeParameterToDeclaration(e,i,aC);c.writeNode(4,m,o,p)});return{name:e.symbol.name,documentation:e.symbol.getDocumentationComment(t),displayParts:u,isOptional:!1,isRest:!1}}function Vne(e,t,i,o){let c=(e.target||e).typeParameters,u=ym(),p=(c||xe).map(g=>eW(g,t,i,o,u)),m=e.thisParameter?[t.symbolToParameterDeclaration(e.thisParameter,i,aC)]:[];return t.getExpandedParameters(e).map(g=>{let S=we.createNodeArray([...m,...qn(g,_=>t.symbolToParameterDeclaration(_,i,aC))]),T=Pd(_=>{u.writeList(2576,S,o,_)});return{isVariadic:!1,parameters:p,prefix:[Us(29)],suffix:[Us(32),...T]}})}var H9e={5:!0,3:!0,7:!0,9:!0,0:!1,1:!1,2:!1,8:!1,6:!0,4:!1};var B0=Ch();var XS;(o=>{function e(){throw new Error("No Project.")}o.ThrowNoProject=e;function t(){throw new Error("The project's language service is disabled.")}o.ThrowProjectLanguageServiceDisabled=t;function i(c,u){throw new Error(`Project '${u.getProjectName()}' does not contain document '${c}'`)}o.ThrowProjectDoesNotContainDocument=i})(XS||(XS={}));var GHe=20*1024*1024,$ne=4*1024*1024;function iW(e){let t=new Map;for(let i of e)if(typeof i.type=="object"){let o=i.type;o.forEach(c=>{I.assert(typeof c=="number")}),t.set(i.name,o)}return t}var $He=iW(um),QHe=iW(s4),YHe=new Map(Object.entries({none:0,block:1,smart:2}));var ite=["openExternalProject","openExternalProjects","closeExternalProject","synchronizeProjectList","emit-output","compileOnSaveAffectedFileList","compileOnSaveEmitFile","compilerOptionsDiagnostics-full","encodedSemanticClassifications-full","semanticDiagnosticsSync","suggestionDiagnosticsSync","geterrForProject","reload","reloadProjects","getCodeFixes","getCodeFixes-full","getCombinedCodeFix","getCombinedCodeFix-full","applyCodeActionCommand","getSupportedCodeFixes","getApplicableRefactors","getMoveToRefactoringFileSuggestions","getEditsForRefactor","getEditsForRefactor-full","organizeImports","organizeImports-full","getEditsForFileRename","getEditsForFileRename-full","prepareCallHierarchy","provideCallHierarchyIncomingCalls","provideCallHierarchyOutgoingCalls","getPasteEdits"],uGe=[...ite,"definition","definition-full","definitionAndBoundSpan","definitionAndBoundSpan-full","typeDefinition","implementation","implementation-full","references","references-full","rename","renameLocations-full","rename-full","quickinfo","quickinfo-full","completionInfo","completions","completions-full","completionEntryDetails","completionEntryDetails-full","signatureHelp","signatureHelp-full","navto","navto-full","documentHighlights","documentHighlights-full"];var Zg=4;var U0=class{constructor(){this.goSubtree=!0;this.lineIndex=new ZS;this.endBranch=[];this.state=2;this.initialText="";this.trailingText="";this.lineIndex.root=new ey,this.startPath=[this.lineIndex.root],this.stack=[this.lineIndex.root]}get done(){return!1}insertLines(t,i){i&&(this.trailingText=""),t?t=this.initialText+t+this.trailingText:t=this.initialText+this.trailingText;let c=ZS.linesFromText(t).lines;c.length>1&&c[c.length-1]===""&&c.pop();let u,p;for(let g=this.endBranch.length-1;g>=0;g--)this.endBranch[g].updateCounts(),this.endBranch[g].charCount()===0&&(p=this.endBranch[g],g>0?u=this.endBranch[g-1]:u=this.branchNode);p&&u.remove(p);let m=this.startPath[this.startPath.length-1];if(c.length>0)if(m.text=c[0],c.length>1){let g=new Array(c.length-1),S=m;for(let P=1;P<c.length;P++)g[P-1]=new sC(c[P]);let T=this.startPath.length-2;for(;T>=0;){let P=this.startPath[T];g=P.insertAt(S,g),T--,S=P}let _=g.length;for(;_>0;){let P=new ey;P.add(this.lineIndex.root),g=P.insertAt(this.lineIndex.root,g),_=g.length,this.lineIndex.root=P}this.lineIndex.root.updateCounts()}else for(let g=this.startPath.length-2;g>=0;g--)this.startPath[g].updateCounts();else{this.startPath[this.startPath.length-2].remove(m);for(let S=this.startPath.length-2;S>=0;S--)this.startPath[S].updateCounts()}return this.lineIndex}post(t,i,o){o===this.lineCollectionAtBranch&&(this.state=4),this.stack.pop()}pre(t,i,o,c,u){let p=this.stack[this.stack.length-1];this.state===2&&u===1&&(this.state=1,this.branchNode=p,this.lineCollectionAtBranch=o);let m;function g(S){return S.isLeaf()?new sC(""):new ey}switch(u){case 0:this.goSubtree=!1,this.state!==4&&p.add(o);break;case 1:this.state===4?this.goSubtree=!1:(m=g(o),p.add(m),this.startPath.push(m));break;case 2:this.state!==4?(m=g(o),p.add(m),this.startPath.push(m)):o.isLeaf()||(m=g(o),p.add(m),this.endBranch.push(m));break;case 3:this.goSubtree=!1;break;case 4:this.state!==4?this.goSubtree=!1:o.isLeaf()||(m=g(o),p.add(m),this.endBranch.push(m));break;case 5:this.goSubtree=!1,this.state!==1&&p.add(o);break}this.goSubtree&&this.stack.push(m)}leaf(t,i,o){this.state===1?this.initialText=o.text.substring(0,t):this.state===2?(this.initialText=o.text.substring(0,t),this.trailingText=o.text.substring(t+i)):this.trailingText=o.text.substring(t+i)}},W0=class{constructor(t,i,o){this.pos=t;this.deleteLen=i;this.insertedText=o}getTextChangeRange(){return gN(el(this.pos,this.deleteLen),this.insertedText?this.insertedText.length:0)}},yu=class yu{constructor(){this.changes=[];this.versions=new Array(yu.maxVersions);this.minVersion=0;this.currentVersion=0}versionToIndex(t){if(!(t<this.minVersion||t>this.currentVersion))return t%yu.maxVersions}currentVersionToIndex(){return this.currentVersion%yu.maxVersions}edit(t,i,o){this.changes.push(new W0(t,i,o)),(this.changes.length>yu.changeNumberThreshold||i>yu.changeLengthThreshold||o&&o.length>yu.changeLengthThreshold)&&this.getSnapshot()}getSnapshot(){return this._getSnapshot()}_getSnapshot(){let t=this.versions[this.currentVersionToIndex()];if(this.changes.length>0){let i=t.index;for(let o of this.changes)i=i.edit(o.pos,o.deleteLen,o.insertedText);t=new zP(this.currentVersion+1,this,i,this.changes),this.currentVersion=t.version,this.versions[this.currentVersionToIndex()]=t,this.changes=[],this.currentVersion-this.minVersion>=yu.maxVersions&&(this.minVersion=this.currentVersion-yu.maxVersions+1)}return t}getSnapshotVersion(){return this._getSnapshot().version}getAbsolutePositionAndLineText(t){return this._getSnapshot().index.lineNumberToInfo(t)}lineOffsetToPosition(t,i){return this._getSnapshot().index.absolutePositionOfStartOfLine(t)+(i-1)}positionToLineOffset(t){return this._getSnapshot().index.positionToLineOffset(t)}lineToTextSpan(t){let i=this._getSnapshot().index,{lineText:o,absolutePosition:c}=i.lineNumberToInfo(t+1),u=o!==void 0?o.length:i.absolutePositionOfStartOfLine(t+2)-c;return el(c,u)}getTextChangesBetweenVersions(t,i){if(t<i)if(t>=this.minVersion){let o=[];for(let c=t+1;c<=i;c++){let u=this.versions[this.versionToIndex(c)];for(let p of u.changesSincePreviousVersion)o.push(p.getTextChangeRange())}return ZM(o)}else return;else return yN}getLineCount(){return this._getSnapshot().index.getLineCount()}static fromString(t){let i=new yu,o=new zP(0,i,new ZS);i.versions[i.currentVersion]=o;let c=ZS.linesFromText(t);return o.index.load(c.lines),i}};yu.changeNumberThreshold=8,yu.changeLengthThreshold=256,yu.maxVersions=8;var J0=yu,zP=class e{constructor(t,i,o,c=B0){this.version=t;this.cache=i;this.index=o;this.changesSincePreviousVersion=c}getText(t,i){return this.index.getText(t,i-t)}getLength(){return this.index.getLength()}getChangeRange(t){if(t instanceof e&&this.cache===t.cache)return this.version<=t.version?yN:this.cache.getTextChangesBetweenVersions(t.version,this.version)}},ZS=class e{constructor(){this.checkEdits=!1}absolutePositionOfStartOfLine(t){return this.lineNumberToInfo(t).absolutePosition}positionToLineOffset(t){let{oneBasedLine:i,zeroBasedColumn:o}=this.root.charOffsetToLineInfo(1,t);return{line:i,offset:o+1}}positionToColumnAndLineText(t){return this.root.charOffsetToLineInfo(1,t)}getLineCount(){return this.root.lineCount()}lineNumberToInfo(t){let i=this.getLineCount();if(t<=i){let{position:o,leaf:c}=this.root.lineNumberToInfo(t,0);return{absolutePosition:o,lineText:c&&c.text}}else return{absolutePosition:this.root.charCount(),lineText:void 0}}load(t){if(t.length>0){let i=[];for(let o=0;o<t.length;o++)i[o]=new sC(t[o]);this.root=e.buildTreeFromBottom(i)}else this.root=new ey}walk(t,i,o){this.root.walk(t,i,o)}getText(t,i){let o="";return i>0&&t<this.root.charCount()&&this.walk(t,i,{goSubtree:!0,done:!1,leaf:(c,u,p)=>{o=o.concat(p.text.substring(c,c+u))}}),o}getLength(){return this.root.charCount()}every(t,i,o){o||(o=this.root.charCount());let c={goSubtree:!0,done:!1,leaf(u,p,m){t(m,u,p)||(this.done=!0)}};return this.walk(i,o-i,c),!c.done}edit(t,i,o){if(this.root.charCount()===0)return I.assert(i===0),o!==void 0?(this.load(e.linesFromText(o).lines),this):void 0;{let c;if(this.checkEdits){let m=this.getText(0,this.root.charCount());c=m.slice(0,t)+o+m.slice(t+i)}let u=new U0,p=!1;if(t>=this.root.charCount()){t=this.root.charCount()-1;let m=this.getText(t,1);o?o=m+o:o=m,i=0,p=!0}else if(i>0){let m=t+i,{zeroBasedColumn:g,lineText:S}=this.positionToColumnAndLineText(m);g===0&&(i+=S.length,o=o?o+S:S)}if(this.root.walk(t,i,u),u.insertLines(o,p),this.checkEdits){let m=u.lineIndex.getText(0,u.lineIndex.getLength());I.assert(c===m,"buffer edit mismatch")}return u.lineIndex}}static buildTreeFromBottom(t){if(t.length<Zg)return new ey(t);let i=new Array(Math.ceil(t.length/Zg)),o=0;for(let c=0;c<i.length;c++){let u=Math.min(o+Zg,t.length);i[c]=new ey(t.slice(o,u)),o=u}return this.buildTreeFromBottom(i)}static linesFromText(t){let i=Jy(t);if(i.length===0)return{lines:[],lineMap:i};let o=new Array(i.length),c=i.length-1;for(let p=0;p<c;p++)o[p]=t.substring(i[p],i[p+1]);let u=t.substring(i[c]);return u.length>0?o[c]=u:o.pop(),{lines:o,lineMap:i}}},ey=class e{constructor(t=[]){this.children=t;this.totalChars=0;this.totalLines=0;t.length&&this.updateCounts()}isLeaf(){return!1}updateCounts(){this.totalChars=0,this.totalLines=0;for(let t of this.children)this.totalChars+=t.charCount(),this.totalLines+=t.lineCount()}execWalk(t,i,o,c,u){return o.pre&&o.pre(t,i,this.children[c],this,u),o.goSubtree?(this.children[c].walk(t,i,o),o.post&&o.post(t,i,this.children[c],this,u)):o.goSubtree=!0,o.done}skipChild(t,i,o,c,u){c.pre&&!c.done&&(c.pre(t,i,this.children[o],this,u),c.goSubtree=!0)}walk(t,i,o){let c=0,u=this.children[c].charCount(),p=t;for(;p>=u;)this.skipChild(p,i,c,o,0),p-=u,c++,u=this.children[c].charCount();if(p+i<=u){if(this.execWalk(p,i,o,c,2))return}else{if(this.execWalk(p,u-p,o,c,1))return;let m=i-(u-p);c++;let g=this.children[c];for(I.assertIsDefined(g),u=g.charCount();m>u;){if(this.execWalk(0,u,o,c,3))return;m-=u,c++,u=this.children[c].charCount()}if(m>0&&this.execWalk(0,m,o,c,4))return}if(o.pre){let m=this.children.length;if(c<m-1)for(let g=c+1;g<m;g++)this.skipChild(0,0,g,o,5)}}charOffsetToLineInfo(t,i){if(this.children.length===0)return{oneBasedLine:t,zeroBasedColumn:i,lineText:void 0};for(let u of this.children){if(u.charCount()>i)return u.isLeaf()?{oneBasedLine:t,zeroBasedColumn:i,lineText:u.text}:u.charOffsetToLineInfo(t,i);i-=u.charCount(),t+=u.lineCount()}let o=this.lineCount();if(o===0)return{oneBasedLine:1,zeroBasedColumn:0,lineText:void 0};let c=I.checkDefined(this.lineNumberToInfo(o,0).leaf);return{oneBasedLine:o,zeroBasedColumn:c.charCount(),lineText:void 0}}lineNumberToInfo(t,i){for(let o of this.children){let c=o.lineCount();if(c>=t)return o.isLeaf()?{position:i,leaf:o}:o.lineNumberToInfo(t,i);t-=c,i+=o.charCount()}return{position:i,leaf:void 0}}splitAfter(t){let i,o=this.children.length;t++;let c=t;if(t<o){for(i=new e;t<o;)i.add(this.children[t]),t++;i.updateCounts()}return this.children.length=c,i}remove(t){let i=this.findChildIndex(t),o=this.children.length;if(i<o-1)for(let c=i;c<o-1;c++)this.children[c]=this.children[c+1];this.children.pop()}findChildIndex(t){let i=this.children.indexOf(t);return I.assert(i!==-1),i}insertAt(t,i){let o=this.findChildIndex(t),c=this.children.length,u=i.length;if(c<Zg&&o===c-1&&u===1)return this.add(i[0]),this.updateCounts(),[];{let p=this.splitAfter(o),m=0;for(o++;o<Zg&&m<u;)this.children[o]=i[m],o++,m++;let g=[],S=0;if(m<u){S=Math.ceil((u-m)/Zg),g=new Array(S);let T=0;for(let P=0;P<S;P++)g[P]=new e;let _=g[0];for(;m<u;)_.add(i[m]),m++,_.children.length===Zg&&(T++,_=g[T]);for(let P=g.length-1;P>=0;P--)g[P].children.length===0&&g.pop()}p&&g.push(p),this.updateCounts();for(let T=0;T<S;T++)g[T].updateCounts();return g}}add(t){this.children.push(t),I.assert(this.children.length<=Zg)}charCount(){return this.totalChars}lineCount(){return this.totalLines}},sC=class{constructor(t){this.text=t}isLeaf(){return!0}walk(t,i,o){o.leaf(t,i,this)}charCount(){return this.text.length}lineCount(){return 1}};typeof console<"u"&&(I.loggingHost={log(e,t){switch(e){case 1:return console.error(t);case 2:return console.warn(t);case 3:return console.log(t);case 4:return console.log(t)}}});I.loggingHost={log(e,t){Vi.write(`${t||""}${Vi.newLine}`)}};I.isDebugging&&I.enableDebugInfo();Vi.tryEnableSourceMapsForHost&&/^development$/i.test(Vi.getEnvironmentVariable("NODE_ENV"))&&Vi.tryEnableSourceMapsForHost();Vi.setBlocking&&Vi.setBlocking();console.log=$i;console.debug=$i;console.info=$i;console.warn=$i;vJ(Vi,Vi.args,cte);function cte(e,t){Vi.write(e)}
53
+ //!some(node.name.elements, not(isOmittedExpression));
54
+ //!!declaration && hasSyntacticModifier(declaration, ModifierFlags.Abstract);
55
+ //!isInJsonFile(node);
56
+ //!isExpandoDeclaration(d));
57
+ //!!parent.typeArguments && parent.typeArguments.pos === list.pos;
58
+ //# sourceMappingURL=cli.js.map