solve-engine 2.6.0 → 2.8.0

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 (177) hide show
  1. package/dist/{PackageCompatibility-CCdud__Q.d.cts → PackageCompatibility-BG0iur4I.d.cts} +1 -1
  2. package/dist/{PackageCompatibility-4QtIErfx.d.ts → PackageCompatibility-BlIcQg5v.d.ts} +1 -1
  3. package/dist/{PackageRegistry-B7wkfSrY.d.ts → PackageRegistry-BJ0QQd3k.d.ts} +4 -4
  4. package/dist/{PackageRegistry-Hx85XD01.d.cts → PackageRegistry-DeGDZkNt.d.cts} +4 -4
  5. package/dist/{Parselet-CTNpfuEB.d.cts → Parselet-BSndkWEY.d.cts} +1 -1
  6. package/dist/{Parselet-DONNUpur.d.ts → Parselet-Blq8B0Gj.d.ts} +1 -1
  7. package/dist/{ScopeManager-BkbDXK_R.d.ts → ScopeManager-CF3cZUqW.d.ts} +2 -2
  8. package/dist/{ScopeManager-Cvgypcu4.d.cts → ScopeManager-D8nLv--u.d.cts} +2 -2
  9. package/dist/{VMCheckpoints-9zBQnTsN.d.ts → VMCheckpoints-BsR5_auF.d.ts} +2 -2
  10. package/dist/{VMCheckpoints-CBMGiSqw.d.cts → VMCheckpoints-Dy39SVHa.d.cts} +2 -2
  11. package/dist/{Value-D1XlMwe2.d.cts → Value-DCTqTSeP.d.cts} +22 -5
  12. package/dist/{Value-D1XlMwe2.d.ts → Value-DCTqTSeP.d.ts} +22 -5
  13. package/dist/{chunk-T52Y5G24.js → chunk-2V44X7GH.js} +4 -4
  14. package/dist/{chunk-T52Y5G24.js.map → chunk-2V44X7GH.js.map} +1 -1
  15. package/dist/{chunk-5FO4PDIG.js → chunk-3GAWAMT4.js} +2 -2
  16. package/dist/{chunk-5FO4PDIG.js.map → chunk-3GAWAMT4.js.map} +1 -1
  17. package/dist/{chunk-32GC2FHC.cjs → chunk-3HYO3QYW.cjs} +2 -2
  18. package/dist/{chunk-32GC2FHC.cjs.map → chunk-3HYO3QYW.cjs.map} +1 -1
  19. package/dist/{chunk-2JMFUQZH.js → chunk-44EOEWGP.js} +2 -2
  20. package/dist/chunk-44EOEWGP.js.map +1 -0
  21. package/dist/chunk-5TCSFTZD.js +2 -0
  22. package/dist/chunk-5TCSFTZD.js.map +1 -0
  23. package/dist/chunk-5TVI2UPZ.cjs +2 -0
  24. package/dist/chunk-5TVI2UPZ.cjs.map +1 -0
  25. package/dist/{chunk-CIQOK7Q4.cjs → chunk-6QRHN3I6.cjs} +2 -2
  26. package/dist/chunk-6QRHN3I6.cjs.map +1 -0
  27. package/dist/chunk-6TPXH6Y5.cjs +3 -0
  28. package/dist/chunk-6TPXH6Y5.cjs.map +1 -0
  29. package/dist/{chunk-ZOOVGXMK.cjs → chunk-75XDS65A.cjs} +2 -2
  30. package/dist/{chunk-ZOOVGXMK.cjs.map → chunk-75XDS65A.cjs.map} +1 -1
  31. package/dist/chunk-A33K7NY4.js +2 -0
  32. package/dist/chunk-A33K7NY4.js.map +1 -0
  33. package/dist/chunk-BKSKZA4W.cjs +2 -0
  34. package/dist/chunk-BKSKZA4W.cjs.map +1 -0
  35. package/dist/{chunk-VAGS5JS7.cjs → chunk-C65UDMWH.cjs} +2 -2
  36. package/dist/{chunk-VAGS5JS7.cjs.map → chunk-C65UDMWH.cjs.map} +1 -1
  37. package/dist/{chunk-OVQ3V4CG.cjs → chunk-CIENDLKV.cjs} +2 -2
  38. package/dist/{chunk-OVQ3V4CG.cjs.map → chunk-CIENDLKV.cjs.map} +1 -1
  39. package/dist/chunk-DLAKPF5T.js +2 -0
  40. package/dist/chunk-DLAKPF5T.js.map +1 -0
  41. package/dist/chunk-EOMHELRL.js +2 -0
  42. package/dist/chunk-EOMHELRL.js.map +1 -0
  43. package/dist/chunk-EURCQMZK.cjs +2 -0
  44. package/dist/{chunk-Z5KBBQOJ.cjs.map → chunk-EURCQMZK.cjs.map} +1 -1
  45. package/dist/{chunk-HOQU47MF.cjs → chunk-FNNIAJNY.cjs} +2 -2
  46. package/dist/{chunk-HOQU47MF.cjs.map → chunk-FNNIAJNY.cjs.map} +1 -1
  47. package/dist/{chunk-3AVWA5IZ.cjs → chunk-FUDVKPB7.cjs} +2 -2
  48. package/dist/{chunk-3AVWA5IZ.cjs.map → chunk-FUDVKPB7.cjs.map} +1 -1
  49. package/dist/{chunk-4XTD4B77.js → chunk-GAAXTO4K.js} +3 -3
  50. package/dist/{chunk-4XTD4B77.js.map → chunk-GAAXTO4K.js.map} +1 -1
  51. package/dist/{chunk-G7TBEQRQ.js → chunk-GMSBBLUQ.js} +2 -2
  52. package/dist/{chunk-G7TBEQRQ.js.map → chunk-GMSBBLUQ.js.map} +1 -1
  53. package/dist/chunk-HDVZZ7JN.js +3 -0
  54. package/dist/chunk-HDVZZ7JN.js.map +1 -0
  55. package/dist/{chunk-SWKYVSMP.js → chunk-JEFMG6CV.js} +2 -2
  56. package/dist/{chunk-SWKYVSMP.js.map → chunk-JEFMG6CV.js.map} +1 -1
  57. package/dist/{chunk-P6BLASAA.js → chunk-JQBG3LX4.js} +2 -2
  58. package/dist/{chunk-P6BLASAA.js.map → chunk-JQBG3LX4.js.map} +1 -1
  59. package/dist/{chunk-GHW2X7PS.js → chunk-KHCNMNZZ.js} +2 -2
  60. package/dist/{chunk-GHW2X7PS.js.map → chunk-KHCNMNZZ.js.map} +1 -1
  61. package/dist/chunk-LH7URJZT.js +3 -0
  62. package/dist/chunk-LH7URJZT.js.map +1 -0
  63. package/dist/{chunk-R7T3NGUE.cjs → chunk-MVP2YD4X.cjs} +2 -2
  64. package/dist/{chunk-R7T3NGUE.cjs.map → chunk-MVP2YD4X.cjs.map} +1 -1
  65. package/dist/{chunk-KSDTVFXA.cjs → chunk-OZ6SKIPD.cjs} +4 -4
  66. package/dist/{chunk-KSDTVFXA.cjs.map → chunk-OZ6SKIPD.cjs.map} +1 -1
  67. package/dist/chunk-PNDQRCRQ.cjs +2 -0
  68. package/dist/chunk-PNDQRCRQ.cjs.map +1 -0
  69. package/dist/{chunk-YAHGSBMC.js → chunk-QYO7IEPR.js} +2 -2
  70. package/dist/{chunk-YAHGSBMC.js.map → chunk-QYO7IEPR.js.map} +1 -1
  71. package/dist/{chunk-2LFLR3VZ.cjs → chunk-SNVPM27Q.cjs} +2 -2
  72. package/dist/{chunk-2LFLR3VZ.cjs.map → chunk-SNVPM27Q.cjs.map} +1 -1
  73. package/dist/{chunk-AR7L5OJ2.js → chunk-T3FBAFRR.js} +2 -2
  74. package/dist/{chunk-AR7L5OJ2.js.map → chunk-T3FBAFRR.js.map} +1 -1
  75. package/dist/chunk-TUBLMUTZ.cjs +2 -0
  76. package/dist/chunk-TUBLMUTZ.cjs.map +1 -0
  77. package/dist/chunk-U47GA63S.cjs +3 -0
  78. package/dist/chunk-U47GA63S.cjs.map +1 -0
  79. package/dist/{chunk-HMEZJXLX.js → chunk-UKDUFMT5.js} +2 -2
  80. package/dist/{chunk-HMEZJXLX.js.map → chunk-UKDUFMT5.js.map} +1 -1
  81. package/dist/chunk-UWAXJX5G.js +2 -0
  82. package/dist/chunk-UWAXJX5G.js.map +1 -0
  83. package/dist/chunk-WEAKI5V5.cjs +2 -0
  84. package/dist/chunk-WEAKI5V5.cjs.map +1 -0
  85. package/dist/{chunk-VYWGUMFW.js → chunk-WTEXBPBR.js} +2 -2
  86. package/dist/{chunk-VYWGUMFW.js.map → chunk-WTEXBPBR.js.map} +1 -1
  87. package/dist/{chunk-NXIMGB4S.cjs → chunk-WYIOXAFW.cjs} +2 -2
  88. package/dist/{chunk-NXIMGB4S.cjs.map → chunk-WYIOXAFW.cjs.map} +1 -1
  89. package/dist/{chunk-B4P4M4ZW.cjs → chunk-YORX7723.cjs} +3 -3
  90. package/dist/{chunk-B4P4M4ZW.cjs.map → chunk-YORX7723.cjs.map} +1 -1
  91. package/dist/chunk-YTCTUBR2.js +2 -0
  92. package/dist/{chunk-XTM4HTRB.js.map → chunk-YTCTUBR2.js.map} +1 -1
  93. package/dist/constants.cjs +1 -1
  94. package/dist/constants.js +1 -1
  95. package/dist/engine.cjs +1 -1
  96. package/dist/engine.d.cts +7 -7
  97. package/dist/engine.d.ts +7 -7
  98. package/dist/engine.js +1 -1
  99. package/dist/format.cjs +1 -1
  100. package/dist/format.d.cts +1 -1
  101. package/dist/format.d.ts +1 -1
  102. package/dist/format.js +1 -1
  103. package/dist/index.cjs +1 -1
  104. package/dist/index.d.cts +7 -7
  105. package/dist/index.d.ts +7 -7
  106. package/dist/index.js +1 -1
  107. package/dist/language.cjs +1 -1
  108. package/dist/language.d.cts +6 -6
  109. package/dist/language.d.ts +6 -6
  110. package/dist/language.js +1 -1
  111. package/dist/lexer.cjs +1 -1
  112. package/dist/lexer.js +1 -1
  113. package/dist/normalizer.cjs +1 -1
  114. package/dist/normalizer.js +1 -1
  115. package/dist/packages.cjs +1 -1
  116. package/dist/packages.d.cts +6 -6
  117. package/dist/packages.d.ts +6 -6
  118. package/dist/packages.js +1 -1
  119. package/dist/parser.cjs +1 -1
  120. package/dist/parser.d.cts +3 -3
  121. package/dist/parser.d.ts +3 -3
  122. package/dist/parser.js +1 -1
  123. package/dist/{pipeline-DY0rhgQG.d.cts → pipeline-BM8xc0CZ.d.cts} +3 -3
  124. package/dist/{pipeline-BH7BFOTJ.d.ts → pipeline-J2ehIm7t.d.ts} +3 -3
  125. package/dist/resolvers.d.cts +1 -1
  126. package/dist/resolvers.d.ts +1 -1
  127. package/dist/testing.cjs +2 -2
  128. package/dist/testing.d.cts +6 -6
  129. package/dist/testing.d.ts +6 -6
  130. package/dist/testing.js +1 -1
  131. package/dist/uom.cjs +1 -1
  132. package/dist/uom.d.cts +1 -1
  133. package/dist/uom.d.ts +1 -1
  134. package/dist/uom.js +1 -1
  135. package/dist/vm.cjs +1 -1
  136. package/dist/vm.d.cts +6 -6
  137. package/dist/vm.d.ts +6 -6
  138. package/dist/vm.js +1 -1
  139. package/dist/worker.cjs +2 -2
  140. package/dist/worker.cjs.map +1 -1
  141. package/dist/worker.d.cts +15 -5
  142. package/dist/worker.d.ts +15 -5
  143. package/dist/worker.js +2 -2
  144. package/dist/worker.js.map +1 -1
  145. package/package.json +1 -1
  146. package/dist/chunk-2JMFUQZH.js.map +0 -1
  147. package/dist/chunk-3DD2RVBI.cjs +0 -3
  148. package/dist/chunk-3DD2RVBI.cjs.map +0 -1
  149. package/dist/chunk-5FGOIDLS.cjs +0 -2
  150. package/dist/chunk-5FGOIDLS.cjs.map +0 -1
  151. package/dist/chunk-5OIXCVB2.js +0 -3
  152. package/dist/chunk-5OIXCVB2.js.map +0 -1
  153. package/dist/chunk-CIQOK7Q4.cjs.map +0 -1
  154. package/dist/chunk-ESUN2THE.cjs +0 -2
  155. package/dist/chunk-ESUN2THE.cjs.map +0 -1
  156. package/dist/chunk-FWW3M36J.cjs +0 -2
  157. package/dist/chunk-FWW3M36J.cjs.map +0 -1
  158. package/dist/chunk-GKDZ7TSX.cjs +0 -2
  159. package/dist/chunk-GKDZ7TSX.cjs.map +0 -1
  160. package/dist/chunk-IANAMBJQ.cjs +0 -2
  161. package/dist/chunk-IANAMBJQ.cjs.map +0 -1
  162. package/dist/chunk-IO374J6Z.js +0 -2
  163. package/dist/chunk-IO374J6Z.js.map +0 -1
  164. package/dist/chunk-R2ENWQ76.js +0 -2
  165. package/dist/chunk-R2ENWQ76.js.map +0 -1
  166. package/dist/chunk-SOSUS2SK.cjs +0 -3
  167. package/dist/chunk-SOSUS2SK.cjs.map +0 -1
  168. package/dist/chunk-T4Y5XOT2.js +0 -3
  169. package/dist/chunk-T4Y5XOT2.js.map +0 -1
  170. package/dist/chunk-TRBXW6HW.js +0 -2
  171. package/dist/chunk-TRBXW6HW.js.map +0 -1
  172. package/dist/chunk-WGZ3FNHI.js +0 -2
  173. package/dist/chunk-WGZ3FNHI.js.map +0 -1
  174. package/dist/chunk-XTM4HTRB.js +0 -2
  175. package/dist/chunk-Z5KBBQOJ.cjs +0 -2
  176. package/dist/chunk-ZJPAPBP3.js +0 -2
  177. package/dist/chunk-ZJPAPBP3.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/lexer/units.ts"],"names":["EXCLUDED_UNIT_SPELLINGS","isTokenizableSpelling","spelling","GRANDFATHERED_SINGLE_CHARACTER_UNITS","isAdmissible","CURRENCY_CODES","CURRENCY_WORD_FORMS","WORKDAY_UNITS","knownUnits","UNIT_TABLE","EXTENDED_UNITS","isKnownUnit","text"],"mappings":"mEAmCA,IAAMA,EAAuD,IAAI,GAAA,CAAI,CACnE,CAAC,IAAA,CAAM,yLAAyL,CAAA,CAChM,CAAC,KAAA,CAAO,8CAA8C,EACtD,CAAC,GAAA,CAAK,8FAA8F,CAAA,CAOpG,CAAC,KAAM,gFAAgF,CAAA,CACvF,CAAC,KAAA,CAAO,wEAAwE,CAAA,CAChF,CAAC,OAAQ,2DAA2D,CAAA,CACpE,CAAC,MAAA,CAAQ,+EAA+E,EACxF,CAAC,OAAA,CAAS,4DAA4D,CAAA,CACtE,CAAC,QAAS,mEAAmE,CAAA,CAC7E,CAAC,QAAA,CAAU,6DAA6D,CAAA,CACxE,CAAC,QAAS,qEAAqE,CAAA,CAC/E,CAAC,QAAA,CAAU,6DAA6D,EACxE,CAAC,QAAA,CAAU,uEAAuE,CAAA,CAClF,CAAC,SAAA,CAAW,8DAA8D,EAC1E,CAAC,OAAA,CAAS,sEAAsE,CAAA,CAChF,CAAC,QAAA,CAAU,6DAA6D,CAC1E,CAAC,CAAA,CAYD,SAASC,CAAAA,CAAsBC,CAAAA,CAA2B,CACxD,OAAO,iBAAA,CAAkB,KAAKA,CAAQ,CACxC,CAaA,IAAMC,CAAAA,CAAuC,IAAI,GAAA,CAAI,CACnD,IAAK,GAAA,CAAK,GAAA,CAAK,GAAA,CAAK,GAAA,CAAK,IAAK,GAAA,CAAK,GAAA,CAAK,IAAK,GAAA,CAAK,GAAA,CAAK,IAAK,GAC9D,CAAC,CAAA,CAGD,SAASC,EAAaF,CAAAA,CAA2B,CAE/C,OADI,CAACD,CAAAA,CAAsBC,CAAQ,CAAA,EAC/BF,CAAAA,CAAwB,GAAA,CAAIE,CAAQ,EAAU,KAAA,CAC9CA,CAAAA,CAAS,SAAW,CAAA,CAAUC,CAAAA,CAAqC,IAAID,CAAQ,CAAA,CAC5E,IACT,CAaA,IAAMG,EAAiB,CACrB,KAAA,CAAO,MAAO,KAAA,CAAO,KAAA,CACrB,MAAO,KAAA,CAAO,KAAA,CAAO,KAAA,CAAO,KAAA,CAAO,MAAO,KAAA,CAAO,KAAA,CACjD,MAAO,KAAA,CAAO,KAAA,CAAO,MAAO,KAAA,CAAO,KAAA,CAAO,KAAA,CAAO,KAAA,CACjD,MAAO,KAAA,CAAO,KAAA,CAAO,MAAO,KAAA,CAAO,KAAA,CAAO,MAAO,KAAA,CACjD,KAAA,CAAO,KAAA,CAAO,KAAA,CAAO,MAAO,KAAA,CAAO,KAAA,CAAO,MAAO,KAAA,CACjD,KAAA,CAAO,MAAO,KAAA,CAAO,KAAA,CAAO,MAAO,KAAA,CAAO,KAAA,CAAO,MACjD,KAAA,CAAO,KAAA,CAAO,MAAO,KAAA,CAAO,KAAA,CAAO,MAAO,KAAA,CAAO,KAAA,CACjD,KAAA,CAAO,KAAA,CAAO,MAAO,KAAA,CAAO,KAAA,CAAO,MAAO,KAAA,CAAO,KAAA,CACjD,MAAO,KAAA,CAAO,KAAA,CAAO,KAAA,CAAO,KAAA,CAAO,MAAO,KAAA,CAAO,KAAA,CACjD,MAAO,KAAA,CAAO,KAAA,CAAO,MAAO,KAAA,CAAO,KAAA,CAAO,KAAA,CAAO,KAAA,CACjD,MAAO,KAAA,CAAO,KAAA,CAAO,MAAO,KAAA,CAAO,KAAA,CAAO,MAAO,KAAA,CACjD,KAAA,CAAO,MAAO,KAAA,CAAO,KAAA,CAAO,MAAO,KAAA,CAAO,KAAA,CAAO,MACjD,KAAA,CAAO,KAAA,CAAO,MAAO,KAAA,CAAO,KAAA,CAAO,KAAA,CAAO,KAAA,CAAO,MACjD,KAAA,CAAO,KAAA,CAAO,MAAO,KAAA,CAAO,KAAA,CAAO,MAAO,KAAA,CAAO,KAAA,CACjD,KAAA,CAAO,KAAA,CAAO,MAAO,KAAA,CAAO,KAAA,CAAO,MAAO,KAAA,CAAO,KAAA,CACjD,MAAO,KAAA,CAAO,KAAA,CAAO,KAAA,CAAO,KAAA,CAAO,MAAO,KAAA,CAAO,KAAA,CACjD,MAAO,KAAA,CAAO,KAAA,CAAO,MAAO,KAAA,CAAO,KAAA,CAAO,MAAO,KAAA,CACjD,KAAA,CAAO,MAAO,KAAA,CAAO,KAAA,CACrB,MAAO,KAAA,CAAO,KAAA,CAAO,MAAO,KAAA,CAAO,MAAA,CAAQ,KAC7C,CAAA,CAWMC,EAAsB,CAC1B,QAAA,CAAU,UAAW,MAAA,CAAQ,OAAA,CAAS,MACtC,OAAA,CAAS,QAAA,CAAU,QAAA,CAAU,SAAA,CAAW,MACxC,OAAA,CAAS,QAAA,CAAU,OAAQ,UAAA,CAAY,OAAA,CAAS,SAAU,MAAA,CAC1D,OAAA,CAAS,QAAA,CAAU,OAAA,CAAS,SAAU,MAAA,CAAQ,OAAA,CAAS,OAAQ,OAAA,CAC/D,QAAA,CAAU,UAAW,MAAA,CAAQ,SAAA,CAAW,WAAY,OAAA,CAAS,QAAA,CAC7D,SAAU,QAAA,CAAU,QAAA,CAAU,UAAW,OAAA,CAAS,QAAA,CAAU,OAAQ,OAAA,CACpE,SAAA,CAAW,QAAA,CAAU,MAAA,CAAQ,OAAQ,OACvC,CAAA,CAeMC,EAAgB,CAAC,SAAA,CAAW,UAAU,CAAA,CAe/BC,CAAAA,CAAkC,IAAI,GAAA,CAAI,CACrD,GAAG,MAAA,CAAO,KAAKC,mBAAU,CAAA,CAAE,OAAOL,CAAY,CAAA,CAC9C,GAAG,MAAA,CAAO,KAAKM,mBAAc,CAAA,CAC7B,GAAGH,CAAAA,CACH,GAAGF,EACH,GAAGC,CACL,CAAC,EAMM,SAASK,EAAYC,CAAAA,CAAuB,CACjD,OAAOJ,CAAAA,CAAW,GAAA,CAAII,CAAI,CAC5B","file":"chunk-FWW3M36J.cjs","sourcesContent":["/**\n * The set of unit identifiers the lexer will turn into a UNIT token.\n *\n * DERIVED, not hand-listed. This used to be a hand-maintained list of about a\n * hundred spellings, which existed only because the conversion tables lived\n * inside a third-party package and could not be enumerated. Every spelling had\n * to be transcribed by hand and kept in sync, and this file's own history\n * records the consequences: the IEC binary prefixes (`GiB`, `TiB`) were absent\n * for a long time, and the note explaining the fix said it was \"purely a lexer\n * allowlist gap, not a conversion-logic one\".\n *\n * The tables are now in-repo (see `uom/generated/UnitTable.generated.ts`), so\n * the allowlist is computed from them. Roughly 975 base spellings are\n * recognized instead of about 101, which is why `1 kilojoule to Wh`,\n * `5 arcminutes to deg` and `2 fortnights in days` work at all.\n *\n * Units are case-sensitive to eliminate ambiguity (`C` is Celsius and `c` is a\n * cup, `B` is bytes and `b` is bits). Nothing here normalizes or aliases.\n */\n\nimport { UNIT_TABLE } from \"@solve-js/uom/generated/UnitTable.generated\";\nimport { EXTENDED_UNITS } from \"@solve-js/uom/ExtendedUnits\";\n\n/**\n * Spellings the conversion tables accept but the lexer must not claim, each\n * with its reason. `UnitVocabulary.spec.ts` asserts every one of these still\n * fails to lex, so nobody can quietly delete an entry.\n *\n * Only three spellings in the whole table collide with an existing language\n * keyword (`in`, `min`, `dec`), and `min` is left alone because it has always\n * been a time unit here and works. The rest of this list is about ordinary\n * English: a unit spelling that is also a common word turns prose into\n * arithmetic. `shouldEvaluateLine`'s prose gate is a backstop, not a licence\n * to claim every word in the dictionary.\n */\nconst EXCLUDED_UNIT_SPELLINGS: ReadonlyMap<string, string> = new Map([\n [\"in\", \"the IN keyword owns this word (the conversion operator). ConvertParselet and friends special-case the IN token type directly and trust its text as a unit name, so inches still convert\"],\n [\"dec\", \"already a converter name, as in `255 as dec`\"],\n [\"M\", \"the millions magnitude suffix, as in `2.5M`. Nautical miles are still spelled `nmi` and `NM`\"],\n // Claimed by a normalizer rule rather than by the keyword table, which is why\n // scanning the locale keywords alone does not find it. Admitting `pm`\n // (picometre) broke every clock time in the suite: `4pm` lexed as 4\n // picometres. There is deliberately no entry for `am`: the table's SI\n // prefixes stop at femto, so attometres do not exist and an exclusion would\n // be dead weight. `UnitVocabularyCollisions.spec.ts` asserts that.\n [\"pm\", \"the meridiem marker, as in `4pm`. Picometres lose, and `picometre` still works\"],\n [\"are\", \"the English verb, against a 100-square-metre unit almost nobody writes\"],\n [\"ares\", \"the English verb in plural, same reasoning as `are` above\"],\n [\"turn\", \"ordinary English, against a full-rotation angle unit also spelled in gradians\"],\n [\"turns\", \"ordinary English in plural, same reasoning as `turn` above\"],\n [\"grade\", \"ordinary English. The angle unit is also spelled `gon` and `grad`\"],\n [\"grades\", \"ordinary English in plural, same reasoning as `grade` above\"],\n [\"point\", \"ordinary English. The typographic point is also reachable as `pica`\"],\n [\"points\", \"ordinary English in plural, same reasoning as `point` above\"],\n [\"moment\", \"ordinary English, against an obscure medieval time unit of 90 seconds\"],\n [\"moments\", \"ordinary English in plural, same reasoning as `moment` above\"],\n [\"shake\", \"ordinary English, against an obscure physics unit of ten nanoseconds\"],\n [\"shakes\", \"ordinary English in plural, same reasoning as `shake` above\"],\n]);\n\n/**\n * Whether a spelling can be a single UNIT token at all.\n *\n * The lexer reads a unit as one run of `[A-Za-z0-9_]`, so the 465 spellings\n * containing a space, a slash, a prime or a non-ASCII character cannot be\n * tokenized however well the converter understands them. `square metres`,\n * `cd/m2` and `µm²` all remain reachable through the conversion API (notably\n * the cooking package's free-text target unit), just not by typing them in an\n * expression.\n */\nfunction isTokenizableSpelling(spelling: string): boolean {\n return /^[A-Za-z0-9_]+$/.test(spelling);\n}\n\n/**\n * The single-character units that were already claimed before the vocabulary\n * was derived from the tables, and are therefore grandfathered in.\n *\n * No OTHER single character is admitted. A one-letter unit is indistinguishable\n * from the placeholder names people actually write (`x`, `y`, `n`), and the\n * table has ten more of them: `r a y c p S L N J R`. Admitting those turned\n * `x.y` into a unit expression and broke comparison-operator tests that had\n * deliberately picked letters which were not units. The upside was a handful of\n * spellings that all have an unambiguous longer form (`rad`, `year`, `cup`).\n */\nconst GRANDFATHERED_SINGLE_CHARACTER_UNITS = new Set([\n \"m\", \"g\", \"t\", \"s\", \"h\", \"d\", \"l\", \"b\", \"B\", \"C\", \"F\", \"K\", \"W\",\n]);\n\n/** Whether a base-table spelling should become a lexer token. */\nfunction isAdmissible(spelling: string): boolean {\n if (!isTokenizableSpelling(spelling)) return false;\n if (EXCLUDED_UNIT_SPELLINGS.has(spelling)) return false;\n if (spelling.length === 1) return GRANDFATHERED_SINGLE_CHARACTER_UNITS.has(spelling);\n return true;\n}\n\n/**\n * ISO 4217 codes and the crypto tickers handled alongside them.\n *\n * Hand-maintained on purpose: these are NOT units. They route through\n * CurrencyExchangeService, and `getMeasure()` deliberately returns undefined\n * for every one of them, which is how `VM.ts` tells a currency from a unit.\n * Must stay in sync with CurrencyExchangeService's `isCurrency()`: without a\n * lexer entry a code never becomes a UNIT token, so `1 BTC to USD` used to\n * fail at tokenization with \"Undefined variable: BTC\" before ever reaching\n * the currency service that could have handled it.\n */\nconst CURRENCY_CODES = [\n \"USD\", \"EUR\", \"GBP\", \"JPY\",\n \"AUD\", \"CAD\", \"CHF\", \"CNY\", \"SEK\", \"NOK\", \"DKK\", \"NZD\",\n \"KRW\", \"SGD\", \"HKD\", \"TWD\", \"INR\", \"BRL\", \"ZAR\", \"MXN\",\n \"RUB\", \"TRY\", \"SAR\", \"AED\", \"ILS\", \"PLN\", \"CZK\", \"HUF\",\n \"THB\", \"IDR\", \"MYR\", \"PHP\", \"CLP\", \"COP\", \"ARS\", \"NGN\",\n \"EGP\", \"PKR\", \"BDT\", \"VND\", \"KES\", \"XOF\", \"XAF\", \"MAD\",\n \"QAR\", \"KWD\", \"OMR\", \"BHD\", \"JOD\", \"LKR\", \"MMK\", \"UZS\",\n \"KZT\", \"RON\", \"BGN\", \"HRK\", \"ISK\", \"UAH\", \"GEL\", \"AZN\",\n \"BTN\", \"BND\", \"BOB\", \"BWP\", \"BYN\", \"BZD\", \"CDF\", \"CRC\",\n \"CUP\", \"DOP\", \"DZD\", \"ERN\", \"ETB\", \"FJD\", \"FKP\", \"GMD\",\n \"GNF\", \"GYD\", \"HNL\", \"HTG\", \"JMD\", \"KGZ\", \"KHR\", \"KMF\",\n \"KYD\", \"LAK\", \"LBP\", \"LRD\", \"LSL\", \"LYD\", \"MDL\", \"MGA\",\n \"MKD\", \"MNT\", \"MOP\", \"MRU\", \"MUR\", \"MVR\", \"MWK\", \"MZN\",\n \"NAD\", \"NIO\", \"NPR\", \"PGK\", \"PYG\", \"RSD\", \"RWF\", \"SBD\",\n \"SCR\", \"SDG\", \"SHP\", \"SLE\", \"SOS\", \"SRD\", \"SSP\", \"STN\",\n \"SVC\", \"SYP\", \"SZL\", \"TJS\", \"TMT\", \"TND\", \"TOP\", \"TTD\",\n \"TZS\", \"UGX\", \"UYU\", \"VEB\", \"VUV\", \"WST\", \"XCD\", \"XDR\",\n \"XPF\", \"YER\", \"ZMW\", \"ZWL\",\n \"BTC\", \"ETH\", \"SOL\", \"XRP\", \"ADA\", \"DOGE\", \"DOT\",\n];\n\n/**\n * Currency WORD forms, resolved to their canonical ISO code by\n * `UomLiteralParselet.ts` via `uom/CurrencyAliases.ts`.\n *\n * That table doc-comments every ambiguous choice (peso to MXN, franc to CHF,\n * krona to SEK) and explains why \"pound\"/\"pounds\" is deliberately absent: the\n * mass unit already claims it, and remapping would be exactly the kind of\n * guessing the case-sensitive, no-alias policy exists to prevent.\n */\nconst CURRENCY_WORD_FORMS = [\n \"dollar\", \"dollars\", \"euro\", \"euros\", \"yen\",\n \"ruble\", \"rubles\", \"rouble\", \"roubles\", \"won\",\n \"rupee\", \"rupees\", \"yuan\", \"renminbi\", \"franc\", \"francs\", \"rand\",\n \"krona\", \"kronor\", \"krone\", \"kroner\", \"real\", \"reais\", \"peso\", \"pesos\",\n \"shekel\", \"shekels\", \"lira\", \"hryvnia\", \"hryvnias\", \"zloty\", \"zlotys\",\n \"forint\", \"koruna\", \"dirham\", \"dirhams\", \"riyal\", \"riyals\", \"rial\", \"rials\",\n \"ringgit\", \"rupiah\", \"baht\", \"dong\", \"naira\",\n];\n\n/**\n * \"workday\" and \"workdays\", a business day (Mon-Fri).\n *\n * Backs the datetime package's `<date> + N workdays` arithmetic and\n * `$X/workday` Rate literals. Not a real unit (a business day has no fixed\n * physical duration, it depends on which dates are weekends), so it has no\n * entry in the conversion tables and is shimmed at a fixed 7/5 ratio for rate\n * math only. See `uom/UomConverter.ts`.\n *\n * Safe with respect to variable names: VariableParselet accepts UNIT-typed\n * tokens as names, so `:workday = 5` keeps working, exactly as `:b = 5`\n * already did for the bits unit.\n */\nconst WORKDAY_UNITS = [\"workday\", \"workdays\"];\n\n/**\n * Set of all known unit identifiers (case-sensitive).\n *\n * Base units come from the conversion table; the extended units (speed,\n * voltage, parts-per and the other categories the base table has no measure\n * for) come from ExtendedUnits.ts; currencies and workdays are listed above.\n *\n * Note ExtendedUnits deliberately omits bare `V` (collides with the stocks\n * package's Visa ticker), bare `var` (reads as a variable name) and `fps`\n * (the Time package needs it for frames per second, so speed uses `ft_s`).\n * Those exclusions live there rather than here because they are properties of\n * that table.\n */\nexport const knownUnits: ReadonlySet<string> = new Set([\n ...Object.keys(UNIT_TABLE).filter(isAdmissible),\n ...Object.keys(EXTENDED_UNITS),\n ...WORKDAY_UNITS,\n ...CURRENCY_CODES,\n ...CURRENCY_WORD_FORMS,\n]);\n\n/** The exclusion list, exported so the vocabulary spec can assert each entry. */\nexport const excludedUnitSpellings: ReadonlyMap<string, string> = EXCLUDED_UNIT_SPELLINGS;\n\n/** Units are case-sensitive to eliminate ambiguity (e.g. C=Celsius, c=cup). */\nexport function isKnownUnit(text: string): boolean {\n return knownUnits.has(text);\n}\n"]}
@@ -1,2 +0,0 @@
1
- 'use strict';var chunkR7T3NGUE_cjs=require('./chunk-R7T3NGUE.cjs'),chunkZ5KBBQOJ_cjs=require('./chunk-Z5KBBQOJ.cjs'),chunk4BZIYU7S_cjs=require('./chunk-4BZIYU7S.cjs'),chunkVBSMA7WJ_cjs=require('./chunk-VBSMA7WJ.cjs'),chunkZOOVGXMK_cjs=require('./chunk-ZOOVGXMK.cjs'),chunk5FGOIDLS_cjs=require('./chunk-5FGOIDLS.cjs'),chunkIANAMBJQ_cjs=require('./chunk-IANAMBJQ.cjs'),chunkCIQOK7Q4_cjs=require('./chunk-CIQOK7Q4.cjs'),chunkSOMGSIO4_cjs=require('./chunk-SOMGSIO4.cjs');var Ct=class{constructor(){this.consumers=new Map;this.dependencies=new Map;this.writes=new Map;this.lineReads=new Map;this.dataSourceDependencies=new Map;this.dataSourceConsumers=new Map;}registerLine(a,o,u){let m=this.lineReads.get(a);if(m)for(let b of m){let h=this.consumers.get(b);h&&h.delete(a);}this.lineReads.set(a,new Set(o));for(let b of o)this.consumers.has(b)||this.consumers.set(b,new Set),this.consumers.get(b).add(a);if(u.length>0){this.dependencies.set(a,new Set(o)),this.writes.set(a,new Set(u));for(let b of u){let h=this.consumers.get(b);h&&h.delete(a);}}}registerLineDataSourceDependency(a,o,u){let m=JSON.stringify(u),b=`${o}:${m}`;this.dataSourceDependencies.has(a)||this.dataSourceDependencies.set(a,new Set),this.dataSourceDependencies.get(a).add(b),this.dataSourceConsumers.has(b)||this.dataSourceConsumers.set(b,new Set),this.dataSourceConsumers.get(b).add(a);}getAffectedLines(a){let o=new Set,u=[a];for(;u.length>0;){let m=u.pop(),b=this.consumers.get(m);if(b)for(let h of b){if(o.has(h))continue;o.add(h);let d=this.writes.get(h);if(d)for(let y of d)u.push(y);}}return o}getAffectedLinesInOrder(a){let o=this.getAffectedLines(a);if(o.size===0)return [];let u=new Map,m=new Map;for(let y of o)u.has(y)||u.set(y,0),m.has(y)||m.set(y,[]);let b=new Map;for(let y of o){let x=this.writes.get(y);if(x)for(let A of x)b.set(A,y);}for(let y of o){let x=this.lineReads.get(y);if(x)for(let A of x){let w=b.get(A);w!==void 0&&w!==y&&(m.get(w).push(y),u.set(y,(u.get(y)??0)+1));}}let h=[];for(let[y,x]of u)x===0&&h.push(y);if(h.length===0&&o.size>0){let y=Array.from(o).sort((x,A)=>x-A);h.push(y[0]);}let d=[];for(;h.length>0;){let y=h.shift();d.push(y);for(let x of m.get(y)??[]){let A=(u.get(x)??1)-1;u.set(x,A),A===0&&h.push(x);}}if(d.length<o.size){let y=new Set(d),x=Array.from(o).filter(A=>!y.has(A)).sort((A,w)=>A-w);d.push(...x);}return d}getAffectedLinesByDataSource(a,o){let u=JSON.stringify(o),m=`${a}:${u}`;return this.dataSourceConsumers.get(m)??new Set}removeLine(a){let o=this.lineReads.get(a);if(o){for(let m of o){let b=this.consumers.get(m);b&&b.delete(a);}this.lineReads.delete(a);}this.dependencies.delete(a),this.writes.delete(a);let u=this.dataSourceDependencies.get(a);if(u){for(let m of u)this.dataSourceConsumers.get(m)?.delete(a);this.dataSourceDependencies.delete(a);}}getConsumers(a){return this.consumers.get(a)??new Set}getDependencies(a){return this.dependencies.get(a)??new Set}getWrites(a){return this.writes.get(a)??new Set}getSnapshot(){let a={};for(let[h,d]of this.consumers)a[h]=Array.from(d);let o={};for(let[h,d]of this.writes)o[h]=Array.from(d);let u={};for(let[h,d]of this.lineReads)u[h]=Array.from(d);let m={};for(let[h,d]of this.dataSourceDependencies)m[h]=Array.from(d);let b={};for(let[h,d]of this.dataSourceConsumers)b[h]=Array.from(d);return {consumers:a,writes:o,reads:u,dataSourceDeps:m,dataSourceConsumers:b}}clear(){this.consumers.clear(),this.dependencies.clear(),this.writes.clear(),this.lineReads.clear(),this.dataSourceDependencies.clear(),this.dataSourceConsumers.clear();}};var Ot=class{constructor(){this.definitions=new Map;}write(a,o,u){this.definitions.has(a)||this.definitions.set(a,[]);let m=this.definitions.get(a);m.push({line:o,expr:u}),m.sort((b,h)=>b.line-h.line);}read(a,o){let u=this.definitions.get(a);if(u){for(let m=u.length-1;m>=0;m--)if(u[m].line<=o)return u[m].expr.lastResult}}invalidateDownstream(a,o){let u=this.definitions.get(a);if(!u)return;let m=u.findIndex(b=>b.line===o);m!==-1&&u.splice(m+1);}clear(){this.definitions.clear();}};function Jt(r){let a=new Date(r).getDay();return a===0||a===6}function vt(r,a){return Jt(r)?false:a?!a(r):true}function Ut(r){let a=new Date(r);return new Date(a.getFullYear(),a.getMonth(),a.getDate()).getTime()}function Rt(r,a,o,u){let m=Math.trunc(Math.abs(a)),b=a>=0?1:-1,h=new Date(r),d=0;for(;m>0;){if(h.setDate(h.getDate()+b),d++,d>u)return null;vt(h.getTime(),o)&&m--;}return h.getTime()}function Vt(r,a,o,u){let m=Ut(Math.min(r,a)),b=Ut(Math.max(r,a)),h=Math.round((b-m)/864e5);if(h>u)return null;let d=0,y=new Date(m);for(let x=0;x<=h;x++)vt(y.getTime(),o)&&d++,y.setDate(y.getDate()+1);return d}var Zt={0:{name:"sqrt",min:1,max:1},1:{name:"abs",min:1,max:1},2:{name:"sin",min:1,max:1},3:{name:"cos",min:1,max:1},4:{name:"tan",min:1,max:1},5:{name:"log",min:1,max:1},6:{name:"ceil",min:1,max:1},7:{name:"floor",min:1,max:1},8:{name:"round",min:1,max:2},9:{name:"min",min:1,max:1/0},10:{name:"max",min:1,max:1/0},11:{name:"asin",min:1,max:1},12:{name:"acos",min:1,max:1},13:{name:"atan",min:1,max:1},14:{name:"atan2",min:2,max:2},15:{name:"sinh",min:1,max:1},16:{name:"cosh",min:1,max:1},17:{name:"tanh",min:1,max:1},18:{name:"asinh",min:1,max:1},19:{name:"acosh",min:1,max:1},20:{name:"atanh",min:1,max:1},21:{name:"cbrt",min:1,max:1},22:{name:"clz32",min:1,max:1},23:{name:"expm1",min:1,max:1},24:{name:"exp",min:1,max:1},25:{name:"fround",min:1,max:1},26:{name:"hypot",min:1,max:1/0},27:{name:"imul",min:2,max:2},28:{name:"log10",min:1,max:1},29:{name:"log1p",min:1,max:1},30:{name:"log2",min:1,max:1},31:{name:"pow",min:2,max:2},32:{name:"random",min:0,max:0},33:{name:"sign",min:1,max:1},34:{name:"trunc",min:1,max:1},35:{name:"degtorad",min:1,max:1},36:{name:"radtodeg",min:1,max:1},37:{name:"roll",min:2,max:2},38:{name:"gcd",min:2,max:2},39:{name:"lcm",min:2,max:2},40:{name:"permutation",min:2,max:2},41:{name:"combination",min:2,max:2},42:{name:"average",min:0,max:1/0},43:{name:"median",min:0,max:1/0},44:{name:"total",min:0,max:1/0},45:{name:"count",min:0,max:1/0},46:{name:"proportion",min:3,max:3},47:{name:"clamp",min:3,max:3},48:{name:"hex",min:1,max:1},49:{name:"bin",min:1,max:1},50:{name:"int",min:1,max:1},51:{name:"compoundInterest",min:3,max:3},52:{name:"interestEarned",min:3,max:3},53:{name:"compoundInterestRate",min:3,max:3},54:{name:"compoundInterestYears",min:3,max:3},55:{name:"loanRepayment",min:4,max:4},56:{name:"loanInterest",min:4,max:4},57:{name:"monthlyPayment",min:3,max:3},58:{name:"taxAdd",min:2,max:2},59:{name:"taxRemove",min:2,max:2},60:{name:"inflationAdjust",min:3,max:3},61:{name:"root",min:2,max:2},62:{name:"fact",min:1,max:1},63:{name:"transpose",min:1,max:1},64:{name:"det",min:1,max:1},65:{name:"inv",min:1,max:1},66:{name:"dot",min:2,max:2},67:{name:"expand",min:1,max:1},68:{name:"factor",min:1,max:1},69:{name:"solve",min:3,max:3},70:{name:"der",min:2,max:3},71:{name:"integral",min:2,max:2},72:{name:"taylor",min:4,max:4},73:{name:"jacobian",min:1,max:1/0},74:{name:"imaginary",min:1,max:1},75:{name:"conj",min:1,max:1},76:{name:"re",min:1,max:1},77:{name:"im",min:1,max:1},78:{name:"cancel",min:1,max:1},79:{name:"apart",min:1,max:1},80:{name:"compoundInterestEvery",min:4,max:4},81:{name:"compoundInterestEarnedEvery",min:4,max:4},82:{name:"presentValue",min:3,max:3},83:{name:"roi",min:2,max:2},84:{name:"annualisedReturn",min:3,max:3},85:{name:"taxIn",min:2,max:2},86:{name:"taxOn",min:2,max:2},87:{name:"sind",min:1,max:1},88:{name:"cosd",min:1,max:1},89:{name:"tand",min:1,max:1},90:{name:"asind",min:1,max:1},91:{name:"acosd",min:1,max:1},92:{name:"atand",min:1,max:1},93:{name:"daysCount",min:1,max:1},94:{name:"asTwoUnits",min:3,max:3},95:{name:"makeRate",min:2,max:2},96:{name:"atRate",min:2,max:2},97:{name:"roundToPlaces",min:2,max:2},98:{name:"splitEach",min:2,max:2},99:{name:"savingsGoalPayment",min:3,max:3},100:{name:"savingsGoalPeriods",min:5,max:5},101:{name:"standardDeviation",min:0,max:1/0},102:{name:"sampleStandardDeviation",min:0,max:1/0},103:{name:"variance",min:0,max:1/0},104:{name:"sampleVariance",min:0,max:1/0},105:{name:"spread",min:0,max:1/0},106:{name:"mode",min:0,max:1/0},107:{name:"weightedAverage",min:2,max:1/0}};function ke(r){return r===1?"1 argument":`${r} arguments`}function en(r){return r.max===1/0?`at least ${ke(r.min)}`:r.min===r.max?ke(r.min):`${r.min} to ${ke(r.max)}`}function Bt(r,a){let o=Zt[r];if(o!==void 0&&!(a>=o.min&&a<=o.max))return chunkSOMGSIO4_cjs.c.execution("BUILTIN_ARITY_MISMATCH",`${o.name}() takes ${en(o)}, but was given ${a===0?"none":ke(a)}`,{functionName:o.name,expectedMin:o.min,expectedMax:o.max,actual:a})}function jn(r,a=200,o=5e4,u=50,m=1e5,b=2e6,h=1e4,d=100,y=-100,x=chunkZ5KBBQOJ_cjs.y,A){let w=[],I=new Map,L=0,j,$,n=[],Q=new Map,W=new Map,K=new Map;return {push(f){w.length<a&&w.push(f);},getMaxStackDepth(){return a},getMaxCollectionSize(){return m},getMaxAllocatedElements(){return b},getMaxFunctionCalls(){return h},getMaxDateOffsetYears(){return d},getMinDateOffsetYears(){return y},isHoliday(f){return A?A(f):false},pop(){return w.length===0?chunk5FGOIDLS_cjs.n(0):w.pop()},popNumber(){return c(w).toNumber()},popString(){return q(c(w),"VM.popString()")},peek(){return w[w.length-1]},getStack(){return w},registry:r,getVar(f){if(n.length>0){let e=n[n.length-1].get(f);if(e!==void 0)return e}return I.get(f)},setVar(f,e){I.set(f,e);},deleteVar(f){I.delete(f);},pushCallFrame(f){if(n.length>=u)throw chunkSOMGSIO4_cjs.c.execution("FUNCTION_RECURSION_LIMIT_EXCEEDED",`Function call nesting exceeded maximum depth of ${u} (possible infinite recursion, e.g. f(x) = f(x))`,{maxFunctionRecursionDepth:u});n.push(f);},popCallFrame(){n.pop();},getCallFrame(){return n.length>0?n[n.length-1]:void 0},defineUserFunction(f,e,t){Q.set(f,{name:f,params:e,program:t});},getUserFunction(f){return Q.get(f)},hasUserFunction(f){return Q.has(f)},getVariableEntries(){return Array.from(I.entries())},getUserFunctionDefs(){return Array.from(Q.values())},defineEquation(f,e,t){W.set(f,{variable:f,factorNames:e,rhsProgram:t});},getEquation(f){return W.get(f)},hasEquation(f){return W.has(f)},defineScalarEquation(f,e,t){K.set(f,{variable:f,lhsProgram:e,rhsProgram:t});},getScalarEquation(f){return K.get(f)},hasScalarEquation(f){return K.has(f)},reset(){w.length=0,I.clear(),n.length=0,Q.clear(),W.clear(),K.clear(),L=0,$&&($(),$=void 0),j=void 0;},get activeSignal(){return j},set activeSignal(f){j=f;},get abortCurrent(){return $},set abortCurrent(f){$=f;},context:x,getMaxInstructions(){return o},getInstructionCount(){return L},incrementInstructions(f){if(L+=f,L>o)throw chunkSOMGSIO4_cjs.c.execution("INSTRUCTION_LIMIT_EXCEEDED",`Execution exceeded maximum of ${o} instructions`)}}}function tn(r,a){return r.rows===1&&r.cols===1?a.data.length:a.rows===1&&a.cols===1?r.data.length:r.cols!==a.rows?0:r.rows*a.cols}function nn(r,a){return !Number.isInteger(a)||a<0?0:r.rows*r.cols*(1+(a<2?1:2*Math.floor(Math.log2(a))))}function c(r){if(r.length===0)throw chunkSOMGSIO4_cjs.c.internal({code:"STACK_UNDERFLOW",message:"Stack underflow: an opcode expected a value on the stack but it was empty",expected:"at least one value on the VM stack",found:"an empty stack",suggestion:"this indicates corrupted bytecode or a bug in a package's parselet (mismatched push/pop counts), not a user-input error"});return r.pop()}var jt="bytecode is caller input on this entry point: rebuild the program with the engine's compiler, or fix the hand-assembled stream";function an(r){return typeof r=="number"?chunkVBSMA7WJ_cjs.b(r):r}function se(r,a,o,u,m,b={}){let h=an(a);return chunkSOMGSIO4_cjs.c.validation({code:r,message:`Malformed bytecode: ${h} ${o}`,expected:u,found:m,suggestion:jt,context:typeof a=="number"?{opcode:a,opcodeName:h,...b}:{site:h,...b}})}function U(r,a,o,u){if(a>=r.length)throw se("MALFORMED_BYTECODE_TRUNCATED",o,`is missing its ${u}: the program ends mid-instruction`,`an operand byte at offset ${a}`,`a program only ${r.length} byte(s) long`,{offset:a,length:r.length,role:u});return r[a]}function je(r,a,o,u,m,b){let h=U(r,a,o,u);if(h>=m)throw se("MALFORMED_BYTECODE_CONSTANT_INDEX",o,`reads ${b} entry ${h}, which does not exist`,`an index below ${m}`,`${h}`,{index:h,poolSize:m,pool:b});return h}function z(r,a,o,u,m){return Se(o,U(r,a,u,m),u)}function Se(r,a,o){let u=r[a];if(typeof u!="string")throw se("MALFORMED_BYTECODE_CONSTANT_INDEX",o,`reads string-pool entry ${a}, which is ${a>=r.length?"past the end of the pool":"not a string"}`,`an index below ${r.length}, holding a string`,a>=r.length?`${a}`:typeof u,{index:a,poolSize:r.length,pool:"string-pool"});return u}function q(r,a,o){if(typeof r.value!="string")throw se("MALFORMED_BYTECODE_OPERAND_TYPE",a,`expected a ${o??"string"} on the stack`,o?`a string value holding the ${o}`:"a string value",`a ${chunk5FGOIDLS_cjs.g[r.type]??"unknown"} value`,o?{role:o,valueType:r.type}:{valueType:r.type});return r.value}function Ft(r,a,o){if(r!==0&&r!==1&&r!==2)throw se("MALFORMED_BYTECODE_BODY_KIND",o,`has body kind ${r}, which is not one this VM knows`,"0 (inline body), 1 (builtin function) or 2 (user-defined function)",`${r}`,{kind:r,ref:a})}function rn(r,a){try{return BigInt(r)}catch{throw se("MALFORMED_BYTECODE_BIGINT_LITERAL",a,`cannot read "${r}" as a whole number`,"a string holding an integer, with no decimal point or separators",`"${r}"`,{literal:r})}}function on(r){if(r===null||typeof r!="object")return `expected a bytecode program, got ${r===null?"null":typeof r}`;let a=r;return typeof a.opcodes?.length!="number"?"the program has no `opcodes` array":typeof a.numbers?.length!="number"?"the program has no `numbers` pool":typeof a.strings?.length!="number"?"the program has no `strings` pool":null}var Lt=64;function ze(r,a,o,u,m,b,h,d){let y=new Map;for(let A=0;A<r.length;A++)y.set(r[A],o[A]);u.pushCallFrame(y);let x;try{x=Ze(a,u,m,b,h,d);}finally{u.popCallFrame();}if(x.type==="pending")throw chunkSOMGSIO4_cjs.c.execution("MAP_REDUCE_ASYNC_UNSUPPORTED","map/reduce transform bodies calling an async operation (weather, stocks, currency, ...) aren't supported");if(x.type==="error")throw x.error;return x.value}function sn(r,a,o,u,m,b,h){let d=new Map(o.getCallFrame());d.set(r,chunk5FGOIDLS_cjs.J(chunkZOOVGXMK_cjs.q(r))),o.pushCallFrame(d);let y;try{y=Ze(a,o,u,m,b,h);}finally{o.popCallFrame();}if(y.type==="pending")throw chunkSOMGSIO4_cjs.c.execution("SYMBOLIC_ASYNC_UNSUPPORTED","an algebra verb's expression cannot call an async operation (weather, stocks, currency, ...)");if(y.type==="error")throw y.error;return y.value}function $t(r,a){if(r.type!==6||a.type!==6)return null;let o=r.unit,u=a.unit;if(o===void 0||u===void 0)return null;let m=o.indexOf("/"),b=u.indexOf("/");if(m<0||b<0||o.slice(0,m)!==u.slice(0,b))return null;let h=chunkCIQOK7Q4_cjs.a[o.slice(m+1).toLowerCase()],d=chunkCIQOK7Q4_cjs.a[u.slice(b+1).toLowerCase()];return h===void 0||d===void 0||h[0]!==d[0]?null:r.toNumber()*(d[1]/h[1])}function Pt(r,a){if(r.type!==6||a.type!==6)return null;let o=r.unit,u=a.unit;if(o===void 0||u===void 0||o.includes("/")||u.includes("/"))return null;let m=chunkZOOVGXMK_cjs.ua[o.toUpperCase()]!==void 0,b=chunkZOOVGXMK_cjs.ua[u.toUpperCase()]!==void 0;return m===b?null:chunk5FGOIDLS_cjs.u(r.toNumber()*a.toNumber(),m?o:u)}function Yt(r,a,o){if(r.type===5)return a.type===6&&a.unit!==void 0?chunkZ5KBBQOJ_cjs.c(a,a.unit,r.toNumber(),o):a.type!==5&&a.type!==0?null:chunk5FGOIDLS_cjs.M(r.toNumber()+o*a.toNumber());if(a.type!==5)return null;let u=1+o*a.toNumber();if(r.type===0){let m=r.toNumber()*u;return r.uncertainty!==void 0?chunk5FGOIDLS_cjs.q(m,Math.abs(r.uncertainty*u)):chunk5FGOIDLS_cjs.n(m)}return r.type===6&&r.unit!==void 0?chunkZ5KBBQOJ_cjs.c(r,r.unit,a.toNumber(),o):null}function un(r,a){let o=r.type===5?r:a.type===5?a:null;if(o===null)return null;let u=o===r?a:r;if(u.type!==0||u.uncertainty===void 0)return null;let m=o.toNumber();return chunk5FGOIDLS_cjs.q(u.toNumber()*m,Math.abs(u.uncertainty*m))}function ln(r,a){let o=r.type===6?r:a,u=r.type===6?a:r;return o.type!==6||o.unit===void 0||!chunk4BZIYU7S_cjs.c.isCurrency(o.unit)||u.type!==0&&u.type!==5||u.rational!==void 0?null:chunkZ5KBBQOJ_cjs.b(o,u.toNumber(),o.unit)}function cn(r,a){if(a.type===5&&r.type===0&&r.uncertainty!==void 0){let o=a.toNumber();return o===0?null:chunk5FGOIDLS_cjs.q(r.toNumber()/o,Math.abs(r.uncertainty/o))}if(r.type===5&&a.type===0&&a.uncertainty!==void 0){let o=a.toNumber();return o===0?null:chunk5FGOIDLS_cjs.q(r.toNumber()/o,Math.abs(r.toNumber()*a.uncertainty/(o*o)))}return null}function mn(r){if(r.type===6){let a=r.unit;if(a&&chunkIANAMBJQ_cjs.c(a)==="time")try{return chunkIANAMBJQ_cjs.e(r.toNumber(),a,"ms")}catch{}return 0}return r.toNumber()}var Xt=260;function zt(r,a,o){let u=Math.trunc(Math.abs(a)),b=(a>=0?1:-1)>0?o.getMaxDateOffsetYears():-o.getMinDateOffsetYears(),h=Math.floor(b*Xt);if(u>h)throw chunkSOMGSIO4_cjs.c.execution("DATE_OFFSET_LIMIT_EXCEEDED",`A date offset of ${u.toLocaleString("en-US")} workdays is about ${Math.round(u/Xt).toLocaleString("en-US")} years, past the limit of ${b} years for a workday offset`,{requestedWorkdays:u,limitYears:b,limitWorkdays:h});let d=h*7+7,y=Rt(r,a,x=>o.isHoliday(x),d);if(y===null)throw chunkSOMGSIO4_cjs.c.execution("DATE_OFFSET_LIMIT_EXCEEDED",`A working-day offset of ${u.toLocaleString("en-US")} could not be reached within the ${b}-year limit; the configured holiday calendar leaves too few working days`,{requestedWorkdays:u,limitYears:b,maxCalendarSteps:d});return y}var Gt=864e5,pn={month:1,months:1,mo:1,year:12,years:12,yr:12,y:12,a:12,decade:120,decades:120,dec:120,century:1200,centuries:1200,millennium:12e3,millennia:12e3};function fn(r,a){return new Date(r,a+1,0).getDate()}function Qt(r,a){let o=Math.trunc(a),u=new Date(r);u.setDate(u.getDate()+o);let m=u.getTime();return Number.isNaN(m)?r+a*Gt:m+(a-o)*Gt}function dn(r,a){let o=Math.trunc(a),u=new Date(r),m=u.getDate();u.setDate(1),u.setMonth(u.getMonth()+o),u.setDate(Math.min(m,fn(u.getFullYear(),u.getMonth())));let b=u.getTime(),h=chunkIANAMBJQ_cjs.e(1,"month","ms");return Number.isNaN(b)?r+a*h:b+(a-o)*h}function he(r,a,o,u){if(a.type===6&&a.unit!==void 0){let m=a.unit,b=o*a.toNumber();if(chunkIANAMBJQ_cjs.a(m))return zt(r,b,u);let h=pn[m];if(h!==void 0)return dn(r,b*h);if(chunkIANAMBJQ_cjs.c(m)==="time"){let d=0;try{d=chunkIANAMBJQ_cjs.e(1,m,"day");}catch{}if(Number.isInteger(d)&&d>=1)return Qt(r,b*d)}}return r+o*mn(a)}function Wt(r,a,o){let u=chunk5FGOIDLS_cjs.B(r.unit);if(a.type===6&&chunk5FGOIDLS_cjs.A(a.unit)){let m=chunk5FGOIDLS_cjs.B(a.unit);return m!==u?chunk5FGOIDLS_cjs.O("TIMECODE_FPS_MISMATCH",`Cannot combine timecodes at different frame rates (${u} fps vs ${m} fps)`):o===1?chunk5FGOIDLS_cjs.u(r.toNumber()+a.toNumber(),r.unit):chunk5FGOIDLS_cjs.u(r.toNumber()-a.toNumber(),"frames")}if(a.type===6&&a.unit==="frames")return chunk5FGOIDLS_cjs.u(r.toNumber()+o*a.toNumber(),r.unit);if(a.type===6&&a.unit&&chunkIANAMBJQ_cjs.c(a.unit)==="time"){let m=chunkIANAMBJQ_cjs.e(a.toNumber(),a.unit,"s");return chunk5FGOIDLS_cjs.u(r.toNumber()+o*m*u,r.unit)}return chunk5FGOIDLS_cjs.u(r.toNumber()+o*a.toNumber(),r.unit)}function ge(r){return r.type===10?r.value:r.toNumber()!==0}function Kt(r,a){let o=chunkZ5KBBQOJ_cjs.l(r,a);return chunk5FGOIDLS_cjs.O("INCOMPATIBLE_UNITS",o??`Cannot convert ${r} to ${a}: they do not measure the same thing`)}var Te=65536;function bn(r,a){if(!Number.isInteger(a)||a<0)return null;if(a===0)return 1;let o=Math.abs(r.toNumber());return o<=1?1:(o<=2?1:Math.log2(o))*a}function hn(r,a){let o=1n,u=r,m=a;for(;m>0n;)m%2n===1n&&(o*=u),m/=2n,m>0n&&(u*=u);return o}var Qe=Te;function Ht(r){let a=r<0n?-r:r;if(a===0n)return 0;let o=Number(a);return Number.isFinite(o)?Math.floor(Math.log2(o))+1:a.toString(16).length*4}function qt(r,a,o){let u=chunkZ5KBBQOJ_cjs.n(r),m=chunkZ5KBBQOJ_cjs.n(a);if(u===0n)return chunk5FGOIDLS_cjs.s(0n);let b=o*Number(m);if(b<=0||Ht(u)+b<=Qe)return chunk5FGOIDLS_cjs.s(o===1?u<<m:u>>m);throw chunkSOMGSIO4_cjs.c.execution("BIGINT_SHIFT_LIMIT_EXCEEDED",`Shifting by ${m} would build an exact integer of about ${(Ht(u)+b).toLocaleString("en-US")} bits, past the limit of ${Qe.toLocaleString("en-US")} bits`,{shift:String(m),limitBits:Qe})}function Je(r,a){let{numerator:o,denominator:u}=chunk5FGOIDLS_cjs.y(r.unit),m=chunkIANAMBJQ_cjs.c(u),b=chunkIANAMBJQ_cjs.c(a.unit);if(!m||m!==b)return chunk5FGOIDLS_cjs.O("RATE_MUL_MEASURE_MISMATCH",`Cannot multiply a "${u}"-denominated rate by "${a.unit}" \u2014 different measures`);let h=chunkIANAMBJQ_cjs.e(a.toNumber(),a.unit,u),d=r.toNumber()*h;return o?chunk5FGOIDLS_cjs.u(d,o):chunk5FGOIDLS_cjs.n(d)}function gn(r){if(Number.isNaN(r))return "NaN";if(!isFinite(r))return r>0?"Infinity":"-Infinity";let a=r<0,o=Math.abs(r),u=Math.floor(o),m=o-u;if(m<1e-9)return `${a?"-":""}${u}`;let b=0,h=1,d=1,y=0,x=m,A=1e6;for(let I=0;I<30;I++){let L=Math.floor(x+1e-9),j=L*h+b,$=L*y+d;if($>A||(b=h,h=j,d=y,y=$,Math.abs(m-h/y)<1e-9))break;let n=x-L;if(n<1e-9)break;x=1/n;}let w=u*y+h;return `${a?"-":""}${w}/${y}`}function yn(r){return r.d===1n?String(r.n):`${r.n}/${r.d}`}function Nn(r){let a=r.toNumber(),o=r.type===5?1+a:a;return `${Math.round(o*1e6)/1e6}x`}function xn(r){if(!Number.isFinite(r))return String(r);if(r===0)return "0e+0";let[a,o]=r.toExponential().split("e");return `${a.includes(".")?a.replace(/0+$/,"").replace(/\.$/,""):a}e${o}`}function Ze(r,a,o,u,m,b){let h=on(r);if(h)return {type:"error",error:chunkSOMGSIO4_cjs.c.validation({code:"MALFORMED_BYTECODE_PROGRAM",message:`Malformed bytecode: ${h}`,expected:"a BytecodeProgram with opcodes, numbers and strings",found:h,suggestion:jt})};let{opcodes:d,numbers:y,strings:x,userFunctionBodies:A,anonymousBodies:w}=r,I=0,L=0,j=a.getMaxInstructions(),$=a.getMaxStackDepth(),n=a.getStack(),Q=o?.hasCollectors??false,W=chunk5FGOIDLS_cjs.j();if(d.length===0)return {type:"value",value:chunk5FGOIDLS_cjs.n(0)};chunk5FGOIDLS_cjs.a(a);try{for(;I<d.length;){if(++L>j)throw chunkSOMGSIO4_cjs.c.execution("INSTRUCTION_LIMIT_EXCEEDED",`Execution exceeded maximum of ${j} instructions`);if(n.length>$)throw chunkSOMGSIO4_cjs.c.execution("STACK_LIMIT_EXCEEDED",`Execution exceeded maximum stack depth of ${$}`);let f=d[I++];if(Q){let e=n.map(t=>({type:t.type,value:t.value,unit:t.unit}));o.fireVmStep({type:chunkR7T3NGUE_cjs.c.VmStep,elapsedNs:0,expression:u??"",opcode:f,opcodeName:chunkVBSMA7WJ_cjs.b(f),ip:I-1,stackDepth:n.length,instructionNumber:L,stack:e});}switch(f){case 0:break;case 1:{let e=c(n);return {type:"value",value:W?chunk5FGOIDLS_cjs.k(e):e}}case 3:{let e=c(n);n.push(e),n.push(e);break}case 2:{let e=c(n),t=c(n);n.push(e),n.push(t);break}case 10:n.push(chunk5FGOIDLS_cjs.n(y[je(d,I++,f,"constant-pool index",y.length,"number-pool")]));break;case 11:n.push(chunk5FGOIDLS_cjs.s(rn(z(d,I++,x,f,"constant-pool index"),f)));break;case 16:{let e=chunkZOOVGXMK_cjs.ia(z(d,I++,x,f,"constant-pool index"));n.push(chunk5FGOIDLS_cjs.o(chunkZOOVGXMK_cjs.ra(e),e));break}case 12:n.push(chunk5FGOIDLS_cjs.r(y[je(d,I++,f,"constant-pool index",y.length,"number-pool")]));break;case 13:n.push(chunk5FGOIDLS_cjs.t(z(d,I++,x,f,"constant-pool index")));break;case 14:n.push(chunk5FGOIDLS_cjs.K(U(d,I++,f,"boolean operand")===1));break;case 20:{let e=c(n),t=c(n),s=chunk5FGOIDLS_cjs.P(t,e);if(s){n.push(s);break}if(t.uncertainty!==void 0||e.uncertainty!==void 0){let p=chunkZ5KBBQOJ_cjs.s(t,e,"add");if(p){n.push(p);break}}if(t.rational!==void 0||e.rational!==void 0){let p=chunkZ5KBBQOJ_cjs.r(t,e,"add");if(p){n.push(p);break}}let i=Yt(t,e,1),l=i===null?$t(t,e):null;i!==null?n.push(i):l!==null?n.push(chunk5FGOIDLS_cjs.u(l+e.toNumber(),e.unit)):t.type===0&&e.type===0?n.push(chunk5FGOIDLS_cjs.n(t.value+e.value)):t.type===10&&e.type===10?n.push(chunk5FGOIDLS_cjs.K(t.value&&e.value)):t.type===4?e.type===4?n.push(chunk5FGOIDLS_cjs.O("INVALID_DATETIME_OP","Cannot add two datetimes together")):n.push(chunk5FGOIDLS_cjs.L(he(t.toNumber(),e,1,a))):t.type===6&&chunk5FGOIDLS_cjs.A(t.unit)?n.push(Wt(t,e,1)):e.type===4?n.push(chunk5FGOIDLS_cjs.L(he(e.toNumber(),t,1,a))):n.push(chunkZ5KBBQOJ_cjs.u(t,e,(p,g)=>p+g,(p,g)=>p+g,"add"));break}case 21:{let e=c(n),t=c(n),s=chunk5FGOIDLS_cjs.P(t,e);if(s){n.push(s);break}if(t.uncertainty!==void 0||e.uncertainty!==void 0){let p=chunkZ5KBBQOJ_cjs.s(t,e,"sub");if(p){n.push(p);break}}if(t.rational!==void 0||e.rational!==void 0){let p=chunkZ5KBBQOJ_cjs.r(t,e,"sub");if(p){n.push(p);break}}let i=Yt(t,e,-1),l=i===null?$t(t,e):null;i!==null?n.push(i):l!==null?n.push(chunk5FGOIDLS_cjs.u(l-e.toNumber(),e.unit)):t.type===0&&e.type===0?n.push(chunk5FGOIDLS_cjs.n(t.value-e.value)):t.type===4?e.type===4?n.push(chunk5FGOIDLS_cjs.u(t.toNumber()-e.toNumber(),"ms")):n.push(chunk5FGOIDLS_cjs.L(he(t.toNumber(),e,-1,a))):t.type===6&&chunk5FGOIDLS_cjs.A(t.unit)?n.push(Wt(t,e,-1)):e.type===4?n.push(chunk5FGOIDLS_cjs.O("INVALID_DATETIME_OP","Cannot subtract a datetime from a value that is not a datetime")):n.push(chunkZ5KBBQOJ_cjs.u(t,e,(p,g)=>p-g,(p,g)=>p-g,"sub"));break}case 22:{let e=c(n),t=c(n),s=un(t,e);if(s){n.push(s);break}if(t.uncertainty!==void 0||e.uncertainty!==void 0){let l=chunkZ5KBBQOJ_cjs.s(t,e,"mul");if(l){n.push(l);break}}if(t.rational!==void 0||e.rational!==void 0){let l=chunkZ5KBBQOJ_cjs.r(t,e,"mul");if(l){n.push(l);break}}let i=ln(t,e);if(i){n.push(i);break}t.type===0&&e.type===0?n.push(chunk5FGOIDLS_cjs.n(t.value*e.value)):t.type===7&&e.type===7?(chunk5FGOIDLS_cjs.d(tn(t.value,e.value),"matrix cells"),n.push(chunkZOOVGXMK_cjs._(t.value,e.value))):t.type===6&&chunk5FGOIDLS_cjs.x(t.unit)&&e.type===6&&e.unit?n.push(Je(t,e)):e.type===6&&chunk5FGOIDLS_cjs.x(e.unit)&&t.type===6&&t.unit?n.push(Je(e,t)):Pt(t,e)!==null?n.push(Pt(t,e)):n.push(chunkZ5KBBQOJ_cjs.u(t,e,(l,p)=>l*p,(l,p)=>l*p,"mul"));break}case 23:{let e=c(n),t=c(n),s=cn(t,e);if(s){n.push(s);break}if(t.uncertainty!==void 0||e.uncertainty!==void 0){let i=chunkZ5KBBQOJ_cjs.s(t,e,"div");if(i){n.push(i);break}}if(t.type===6&&e.type===6){let{lv:i,rv:l,sameMeasure:p}=chunkZ5KBBQOJ_cjs.j(t,e);p?n.push(chunk5FGOIDLS_cjs.n(i/l)):chunk4BZIYU7S_cjs.c.isCurrency(t.unit)&&chunk4BZIYU7S_cjs.c.isCurrency(e.unit)?n.push(chunk5FGOIDLS_cjs.O("INCOMPATIBLE_UNITS",`Cannot combine incompatible units: ${t.unit} and ${e.unit}`)):n.push(chunk5FGOIDLS_cjs.w(i/l,t.unit,e.unit));}else {let i=chunkZ5KBBQOJ_cjs.r(t,e,"div");if(i){n.push(i);break}n.push(chunkZ5KBBQOJ_cjs.u(t,e,(l,p)=>l/p,(l,p)=>{if(p===0n)throw chunkZ5KBBQOJ_cjs.o();return l/p},"div"));}break}case 24:{let e=c(n),t=c(n);n.push(chunkZ5KBBQOJ_cjs.u(t,e,(s,i)=>s%i,(s,i)=>{if(i===0n)throw chunkZ5KBBQOJ_cjs.o();return s%i}));break}case 25:{let e=c(n),t=c(n);if(t.type===13){n.push(t);break}if(e.type===13){n.push(e);break}if(t.type===12){n.push(t);break}if(e.type===12){n.push(e);break}if(t.type===0&&e.type===0){n.push(chunk5FGOIDLS_cjs.n(chunkZ5KBBQOJ_cjs.q(t.value,e.value)));break}if(t.type===7||e.type===7){if(t.type!==7||e.type!==0){n.push(chunk5FGOIDLS_cjs.O("MATRIX_POWER_UNSUPPORTED",`^: a matrix may only be the base, raised to a whole number (as in "[1,2;3,4]^2"); "${chunk5FGOIDLS_cjs.g[t.type]} ^ ${chunk5FGOIDLS_cjs.g[e.type]}" has no matrix reading.`));break}chunk5FGOIDLS_cjs.d(nn(t.value,e.value),"matrix cells"),n.push(chunkZOOVGXMK_cjs.$(t.value,e.value));break}if(t.type===9||e.type===9){n.push(chunkZ5KBBQOJ_cjs.f(t,e));break}if(t.type===2||e.type===2){let s=bn(t,e.toNumber());if(s!==null){if(s>Te)throw chunkSOMGSIO4_cjs.c.execution("BIGINT_POW_LIMIT_EXCEEDED",`That power would build an exact integer of about ${Math.round(s).toLocaleString("en-US")} bits, past the limit of ${Te.toLocaleString("en-US")} bits`,{limitBits:Te});n.push(chunk5FGOIDLS_cjs.s(hn(chunkZ5KBBQOJ_cjs.n(t),chunkZ5KBBQOJ_cjs.n(e))));break}}n.push(chunk5FGOIDLS_cjs.n(chunkZ5KBBQOJ_cjs.q(t.toNumber(),e.toNumber())));break}case 26:{let e=c(n),t=chunk5FGOIDLS_cjs.P(e);if(t){n.push(t);break}e.type===2?n.push(chunk5FGOIDLS_cjs.s(-e.value)):e.type===6&&e.exact!==void 0?n.push(chunk5FGOIDLS_cjs.v(-e.toNumber(),e.unit,chunkZOOVGXMK_cjs.ma(e.exact))):e.type===6?n.push(chunk5FGOIDLS_cjs.u(-e.toNumber(),e.unit)):e.type===5?n.push(chunk5FGOIDLS_cjs.M(-e.toNumber())):e.type===9?n.push(chunkZ5KBBQOJ_cjs.g(e)):e.type===0&&e.rational!==void 0?n.push(chunk5FGOIDLS_cjs.p(-e.toNumber(),chunkZOOVGXMK_cjs.j(e.rational))):e.type===0&&e.exact!==void 0?n.push(chunk5FGOIDLS_cjs.o(-e.toNumber(),chunkZOOVGXMK_cjs.ma(e.exact))):n.push(chunk5FGOIDLS_cjs.n(-e.toNumber()));break}case 27:{let e=c(n),t=chunk5FGOIDLS_cjs.P(e);if(t){n.push(t);break}e.type===6&&e.exact!==void 0?n.push(chunk5FGOIDLS_cjs.v(e.toNumber(),e.unit,e.exact)):e.type===6?n.push(chunk5FGOIDLS_cjs.u(e.toNumber(),e.unit)):e.type===5?n.push(chunk5FGOIDLS_cjs.M(e.toNumber())):e.type===0&&e.rational!==void 0?n.push(chunk5FGOIDLS_cjs.p(e.toNumber(),e.rational)):e.type===0&&e.exact!==void 0?n.push(chunk5FGOIDLS_cjs.o(e.toNumber(),e.exact)):n.push(chunk5FGOIDLS_cjs.n(e.toNumber()));break}case 28:{let e=c(n),t=c(n),s=chunk5FGOIDLS_cjs.P(t,e);if(s){n.push(s);break}n.push(chunk5FGOIDLS_cjs.q(t.toNumber(),Math.abs(e.toNumber())));break}case 30:{let e=c(n),t=c(n),s=chunk5FGOIDLS_cjs.P(t,e);if(s){n.push(s);break}t.type===2||e.type===2?n.push(qt(t,e,1)):n.push(chunk5FGOIDLS_cjs.n(t.toNumber()<<e.toNumber()));break}case 31:{let e=c(n),t=c(n),s=chunk5FGOIDLS_cjs.P(t,e);if(s){n.push(s);break}t.type===2||e.type===2?n.push(qt(t,e,-1)):n.push(chunk5FGOIDLS_cjs.n(t.toNumber()>>e.toNumber()));break}case 32:{let e=c(n),t=c(n),s=chunk5FGOIDLS_cjs.P(t,e);if(s){n.push(s);break}n.push(chunk5FGOIDLS_cjs.n(t.toNumber()>>>e.toNumber()));break}case 33:{let e=c(n),t=c(n),s=chunk5FGOIDLS_cjs.P(t,e);if(s){n.push(s);break}t.type===2||e.type===2?n.push(chunk5FGOIDLS_cjs.s(chunkZ5KBBQOJ_cjs.n(t)&chunkZ5KBBQOJ_cjs.n(e))):n.push(chunk5FGOIDLS_cjs.n(t.toNumber()&e.toNumber()));break}case 34:{let e=c(n),t=c(n),s=chunk5FGOIDLS_cjs.P(t,e);if(s){n.push(s);break}t.type===2||e.type===2?n.push(chunk5FGOIDLS_cjs.s(chunkZ5KBBQOJ_cjs.n(t)|chunkZ5KBBQOJ_cjs.n(e))):n.push(chunk5FGOIDLS_cjs.n(t.toNumber()|e.toNumber()));break}case 35:{let e=c(n),t=c(n),s=chunk5FGOIDLS_cjs.P(t,e);if(s){n.push(s);break}t.type===2||e.type===2?n.push(chunk5FGOIDLS_cjs.s(chunkZ5KBBQOJ_cjs.n(t)^chunkZ5KBBQOJ_cjs.n(e))):n.push(chunk5FGOIDLS_cjs.n(t.toNumber()^e.toNumber()));break}case 36:{let e=c(n),t=chunk5FGOIDLS_cjs.P(e);if(t){n.push(t);break}e.type===2?n.push(chunk5FGOIDLS_cjs.s(~e.value)):n.push(chunk5FGOIDLS_cjs.n(~e.toNumber()));break}case 40:{let e=c(n),t=c(n),s=chunk5FGOIDLS_cjs.P(t,e);if(s){n.push(s);break}if(t.rational!==void 0||e.rational!==void 0){let i=chunkZ5KBBQOJ_cjs.t(t,e);if(i!==null){n.push(chunk5FGOIDLS_cjs.K(i===0));break}}if(t.type===0&&e.type===0)n.push(chunk5FGOIDLS_cjs.K(t.value===e.value));else if(t.type===2||e.type===2){let i=chunkZ5KBBQOJ_cjs.p(t,e);n.push(chunk5FGOIDLS_cjs.K(i===null?t.toNumber()===e.toNumber():i===0));}else if(t.type===3&&e.type===3)n.push(chunk5FGOIDLS_cjs.K(t.value===e.value));else if(t.type===6&&e.type===6){let{equal:i,sameMeasure:l}=chunkZ5KBBQOJ_cjs.k(t,e);n.push(chunk5FGOIDLS_cjs.K(l&&i));}else if(t.type===7&&e.type===7)n.push(chunkZOOVGXMK_cjs.aa(t.value,e.value,(i,l)=>i===l));else if(t.type===14||e.type===14)if(t.type===14&&e.type===14){let i=t.value,l=e.value;n.push(chunk5FGOIDLS_cjs.K(i.r===l.r&&i.g===l.g&&i.b===l.b&&i.a===l.a));}else n.push(chunk5FGOIDLS_cjs.K(!1));else n.push(chunk5FGOIDLS_cjs.K(t.toNumber()===e.toNumber()));break}case 41:{let e=c(n),t=c(n),s=chunk5FGOIDLS_cjs.P(t,e);if(s){n.push(s);break}if(t.rational!==void 0||e.rational!==void 0){let i=chunkZ5KBBQOJ_cjs.t(t,e);if(i!==null){n.push(chunk5FGOIDLS_cjs.K(i!==0));break}}if(t.type===0&&e.type===0)n.push(chunk5FGOIDLS_cjs.K(t.value!==e.value));else if(t.type===2||e.type===2){let i=chunkZ5KBBQOJ_cjs.p(t,e);n.push(chunk5FGOIDLS_cjs.K(i===null?t.toNumber()!==e.toNumber():i!==0));}else if(t.type===3&&e.type===3)n.push(chunk5FGOIDLS_cjs.K(t.value!==e.value));else if(t.type===6&&e.type===6){let{equal:i,sameMeasure:l}=chunkZ5KBBQOJ_cjs.k(t,e);n.push(chunk5FGOIDLS_cjs.K(!l||!i));}else if(t.type===7&&e.type===7)n.push(chunkZOOVGXMK_cjs.aa(t.value,e.value,(i,l)=>i!==l));else if(t.type===14||e.type===14)if(t.type===14&&e.type===14){let i=t.value,l=e.value;n.push(chunk5FGOIDLS_cjs.K(!(i.r===l.r&&i.g===l.g&&i.b===l.b&&i.a===l.a)));}else n.push(chunk5FGOIDLS_cjs.K(!0));else n.push(chunk5FGOIDLS_cjs.K(t.toNumber()!==e.toNumber()));break}case 42:{let e=c(n),t=c(n),s=chunk5FGOIDLS_cjs.P(t,e);if(s){n.push(s);break}if(t.rational!==void 0||e.rational!==void 0){let i=chunkZ5KBBQOJ_cjs.t(t,e);if(i!==null){n.push(chunk5FGOIDLS_cjs.K(i<0));break}}if(t.type===0&&e.type===0)n.push(chunk5FGOIDLS_cjs.K(t.value<e.value));else if(t.type===2||e.type===2){let i=chunkZ5KBBQOJ_cjs.p(t,e);n.push(chunk5FGOIDLS_cjs.K(i===null?t.toNumber()<e.toNumber():i<0));}else if(t.type===6&&e.type===6){let{lv:i,rv:l,equal:p,sameMeasure:g}=chunkZ5KBBQOJ_cjs.k(t,e);n.push(g?chunk5FGOIDLS_cjs.K(!p&&i<l):chunkZ5KBBQOJ_cjs.m(t,e));}else t.type===7&&e.type===7?n.push(chunkZOOVGXMK_cjs.aa(t.value,e.value,(i,l)=>i<l)):n.push(chunk5FGOIDLS_cjs.K(t.toNumber()<e.toNumber()));break}case 43:{let e=c(n),t=c(n),s=chunk5FGOIDLS_cjs.P(t,e);if(s){n.push(s);break}if(t.rational!==void 0||e.rational!==void 0){let i=chunkZ5KBBQOJ_cjs.t(t,e);if(i!==null){n.push(chunk5FGOIDLS_cjs.K(i<=0));break}}if(t.type===0&&e.type===0)n.push(chunk5FGOIDLS_cjs.K(t.value<=e.value));else if(t.type===2||e.type===2){let i=chunkZ5KBBQOJ_cjs.p(t,e);n.push(chunk5FGOIDLS_cjs.K(i===null?t.toNumber()<=e.toNumber():i<=0));}else if(t.type===6&&e.type===6){let{lv:i,rv:l,equal:p,sameMeasure:g}=chunkZ5KBBQOJ_cjs.k(t,e);n.push(g?chunk5FGOIDLS_cjs.K(p||i<=l):chunkZ5KBBQOJ_cjs.m(t,e));}else t.type===7&&e.type===7?n.push(chunkZOOVGXMK_cjs.aa(t.value,e.value,(i,l)=>i<=l)):n.push(chunk5FGOIDLS_cjs.K(t.toNumber()<=e.toNumber()));break}case 44:{let e=c(n),t=c(n),s=chunk5FGOIDLS_cjs.P(t,e);if(s){n.push(s);break}if(t.rational!==void 0||e.rational!==void 0){let i=chunkZ5KBBQOJ_cjs.t(t,e);if(i!==null){n.push(chunk5FGOIDLS_cjs.K(i>0));break}}if(t.type===0&&e.type===0)n.push(chunk5FGOIDLS_cjs.K(t.value>e.value));else if(t.type===2||e.type===2){let i=chunkZ5KBBQOJ_cjs.p(t,e);n.push(chunk5FGOIDLS_cjs.K(i===null?t.toNumber()>e.toNumber():i>0));}else if(t.type===6&&e.type===6){let{lv:i,rv:l,equal:p,sameMeasure:g}=chunkZ5KBBQOJ_cjs.k(t,e);n.push(g?chunk5FGOIDLS_cjs.K(!p&&i>l):chunkZ5KBBQOJ_cjs.m(t,e));}else t.type===7&&e.type===7?n.push(chunkZOOVGXMK_cjs.aa(t.value,e.value,(i,l)=>i>l)):n.push(chunk5FGOIDLS_cjs.K(t.toNumber()>e.toNumber()));break}case 45:{let e=c(n),t=c(n),s=chunk5FGOIDLS_cjs.P(t,e);if(s){n.push(s);break}if(t.rational!==void 0||e.rational!==void 0){let i=chunkZ5KBBQOJ_cjs.t(t,e);if(i!==null){n.push(chunk5FGOIDLS_cjs.K(i>=0));break}}if(t.type===0&&e.type===0)n.push(chunk5FGOIDLS_cjs.K(t.value>=e.value));else if(t.type===2||e.type===2){let i=chunkZ5KBBQOJ_cjs.p(t,e);n.push(chunk5FGOIDLS_cjs.K(i===null?t.toNumber()>=e.toNumber():i>=0));}else if(t.type===6&&e.type===6){let{lv:i,rv:l,equal:p,sameMeasure:g}=chunkZ5KBBQOJ_cjs.k(t,e);n.push(g?chunk5FGOIDLS_cjs.K(p||i>=l):chunkZ5KBBQOJ_cjs.m(t,e));}else t.type===7&&e.type===7?n.push(chunkZOOVGXMK_cjs.aa(t.value,e.value,(i,l)=>i>=l)):n.push(chunk5FGOIDLS_cjs.K(t.toNumber()>=e.toNumber()));break}case 130:{let e=c(n),t=c(n),s=chunk5FGOIDLS_cjs.P(t,e);if(s){n.push(s);break}n.push(chunk5FGOIDLS_cjs.K(ge(t)&&ge(e)));break}case 131:{let e=c(n),t=c(n),s=chunk5FGOIDLS_cjs.P(t,e);if(s){n.push(s);break}n.push(chunk5FGOIDLS_cjs.K(ge(t)||ge(e)));break}case 132:{let e=c(n),t=c(n),s=c(n),i=chunk5FGOIDLS_cjs.P(s);if(i){n.push(i);break}n.push(ge(s)?t:e);break}case 50:{let e=U(d,I++,f,"plugin-function index"),t=U(d,I++,f,"argument count"),s=[];for(let p=0;p<t;p++)s.push(c(n));s.reverse();let i=a.context.pluginFunctions[e],l=chunk5FGOIDLS_cjs.Q(s);if(l)n.push(l);else if(!i)n.push(chunk5FGOIDLS_cjs.n(0));else {let p=i(s,m);if(p instanceof Promise){let g=`plugin:${e}:${s.map(B=>String(B.value??"")).join("|")}`,E=a.activeSignal,C=a.context.pluginFunctionOwners[e]??"";return {type:"pending",queryKey:g,resolver:p,packageId:C,signal:E}}n.push(p);}break}case 51:{let e=U(d,I++,f,"builtin-function index"),t=U(d,I++,f,"argument count"),s=Bt(e,t);if(s)throw s;let i=[],l=!1;for(let E=0;E<t;E++){let C=c(n);C.type===9&&(l=!0),i.push(C);}let p=chunk5FGOIDLS_cjs.Q(i);if(p){n.push(p);break}let g=chunkZ5KBBQOJ_cjs.C[e];if(g){let E=i.reverse(),C=l&&!chunkZ5KBBQOJ_cjs.e.has(e);n.push(C?chunkZ5KBBQOJ_cjs.h(e,E):g(E));}break}case 150:{let e=U(d,I++,f,"function-body index"),t=A?.[e];if(!t)throw chunkSOMGSIO4_cjs.c.internal("INTERNAL_MISSING_FUNCTION_BODY",`Internal error: DEFINE_USER_FUNCTION referenced missing body index ${e}`,{bodyIdx:e});a.defineUserFunction(t.name,t.params,t.program);break}case 151:{let e=z(d,I++,x,f,"function-name index"),t=U(d,I++,f,"argument count"),s=[];for(let g=0;g<t;g++)s.push(c(n));s.reverse();let i=a.getUserFunction(e);if(!i)throw chunkSOMGSIO4_cjs.c.execution("UNDEFINED_FUNCTION",`Undefined function: ${e}`,{name:e});if(t!==i.params.length)throw chunkSOMGSIO4_cjs.c.execution("FUNCTION_ARITY_MISMATCH",`${e} expects ${i.params.length} argument(s) but got ${t}`,{name:e,expected:i.params.length,actual:t});let l=new Map;for(let g=0;g<i.params.length;g++)l.set(i.params[g],s[g]);chunk5FGOIDLS_cjs.f(),a.pushCallFrame(l);let p;try{p=Ze(i.program,a,o,u,m);}finally{a.popCallFrame();}if(p.type==="pending")throw chunkSOMGSIO4_cjs.c.execution("USER_FUNCTION_ASYNC_UNSUPPORTED",`${e}: user-defined functions with async bodies (weather, stocks, currency, ...) aren't supported`,{name:e});if(p.type==="error")throw p.error;n.push(p.value);break}case 60:{let e=z(d,I++,x,f,"variable-name index"),t=a.getVar(e);if(t!==void 0)n.push(t);else if(b)n.push(chunk5FGOIDLS_cjs.J(chunkZOOVGXMK_cjs.q(e)));else throw chunkSOMGSIO4_cjs.c.execution("UNDEFINED_VARIABLE",`Undefined variable: ${e}`,{varName:e});break}case 61:{let e=c(n),t=z(d,I++,x,f,"variable-name index");a.setVar(t,W?chunk5FGOIDLS_cjs.k(e):e),n.push(e);break}case 62:{let e=z(d,I++,x,f,"variable-name index"),t=chunkZ5KBBQOJ_cjs.J.get(e);if(t===void 0)throw chunkSOMGSIO4_cjs.c.internal({code:"GLOBAL_VARIABLE_NOT_RESOLVED",message:`Global variable "${e}" was read before it resolved`,expected:`global variable "${e}" to already be resolved (async preflight should guarantee this)`,found:"no value in the global variable store",context:{varName:e}});n.push(t);break}case 63:{let e=c(n),t=z(d,I++,x,f,"variable-name index");chunkZ5KBBQOJ_cjs.J.set(t,W?chunk5FGOIDLS_cjs.k(e):e),n.push(e);break}case 70:{let e=c(n),t=chunk5FGOIDLS_cjs.P(e);if(t){n.push(t);break}n.push(chunk5FGOIDLS_cjs.n(e.toNumber()));break}case 71:{let e=c(n),t=chunk5FGOIDLS_cjs.P(e);if(t){n.push(t);break}if(e.type===14){let s=e.value;n.push(chunk5FGOIDLS_cjs.G({r:s.r,g:s.g,b:s.b,a:s.a,format:"hex"}));break}n.push(chunk5FGOIDLS_cjs.r(e.type===2?e.value:e.toNumber()));break}case 74:{let e=c(n),t=chunk5FGOIDLS_cjs.P(e);if(t){n.push(t);break}n.push(chunk5FGOIDLS_cjs.M(e.toNumber()));break}case 140:{let e=c(n),t=chunk5FGOIDLS_cjs.P(e);if(t){n.push(t);break}n.push(chunk5FGOIDLS_cjs.t(e.rational!==void 0?yn(e.rational):gn(e.toNumber())));break}case 141:{let e=c(n),t=chunk5FGOIDLS_cjs.P(e);if(t){n.push(t);break}n.push(chunk5FGOIDLS_cjs.t(Nn(e)));break}case 142:{let e=c(n),t=chunk5FGOIDLS_cjs.P(e);if(t){n.push(t);break}n.push(chunk5FGOIDLS_cjs.t(xn(e.toNumber())));break}case 143:{let e=c(n),t=chunk5FGOIDLS_cjs.P(e);if(t){n.push(t);break}n.push(chunk5FGOIDLS_cjs.r(e.type===2?e.value:e.toNumber(),"bin"));break}case 144:{let e=c(n),t=chunk5FGOIDLS_cjs.P(e);if(t){n.push(t);break}n.push(chunk5FGOIDLS_cjs.r(e.type===2?e.value:e.toNumber(),"oct"));break}case 145:{let e=q(c(n),f,"converter name").toLowerCase(),t=c(n),s=chunk5FGOIDLS_cjs.P(t);if(s){n.push(s);break}let i=chunkZ5KBBQOJ_cjs.G.get(e);i?n.push(i(t)):n.push(chunk5FGOIDLS_cjs.O("UNKNOWN_AS_CONVERTER",`Unknown converter "as ${e}"`));break}case 80:{let e=q(c(n),f,"unit name"),t=c(n),s=chunk5FGOIDLS_cjs.P(t);if(s){n.push(s);break}let i=chunkZ5KBBQOJ_cjs.a(t,e);i?n.push(chunk5FGOIDLS_cjs.v(t.toNumber(),e,i)):n.push(chunk5FGOIDLS_cjs.u(t.toNumber(),e));break}case 81:{let e=q(c(n),f,"target unit name"),t=q(c(n),f,"source unit name"),s=c(n),i=chunk5FGOIDLS_cjs.P(s);if(i){n.push(i);break}let l=s.toNumber(),p=chunkIANAMBJQ_cjs.c(t),g=chunk4BZIYU7S_cjs.c.isCurrency(t)&&chunk4BZIYU7S_cjs.c.isCurrency(e);if(p&&chunkIANAMBJQ_cjs.c(e)===p)n.push(chunk5FGOIDLS_cjs.u(chunkIANAMBJQ_cjs.e(l,t,e),e));else if(g){let E=chunk4BZIYU7S_cjs.c.convertSync(l,t,e);E!==null?n.push(chunk5FGOIDLS_cjs.u(E,e)):n.push(chunk5FGOIDLS_cjs.O("CURRENCY_RATE_UNAVAILABLE",`No exchange rate available for ${t} to ${e}`));}else {let E=chunkIANAMBJQ_cjs.i(l,t,e);E!==null?n.push(chunk5FGOIDLS_cjs.u(E,e)):n.push(Kt(t,e));}break}case 85:{let e=q(c(n),f,"unit name"),t=chunkIANAMBJQ_cjs.f(e);n.push(chunk5FGOIDLS_cjs.t(t.length>0?t.join(", "):`No known units for "${e}"`));break}case 83:{let e=q(c(n),f,"unit name"),t=c(n),s=chunk5FGOIDLS_cjs.P(t);if(s){n.push(s);break}let{value:i,unit:l}=chunkIANAMBJQ_cjs.h(t.toNumber(),e);n.push(chunk5FGOIDLS_cjs.u(i,l));break}case 84:{let e=q(c(n),f,"target unit name"),t=c(n),s=chunk5FGOIDLS_cjs.P(t);if(s){n.push(s);break}if(t.type===6){let i=t.unit,l=t.toNumber(),p=chunkIANAMBJQ_cjs.c(i),g=chunk4BZIYU7S_cjs.c.isCurrency(i)&&chunk4BZIYU7S_cjs.c.isCurrency(e);if(p&&chunkIANAMBJQ_cjs.c(e)===p)n.push(chunk5FGOIDLS_cjs.u(chunkIANAMBJQ_cjs.e(l,i,e),e));else if(g){let E=chunk4BZIYU7S_cjs.c.convertSync(l,i,e);E!==null?n.push(chunk5FGOIDLS_cjs.u(E,e)):n.push(chunk5FGOIDLS_cjs.O("CURRENCY_RATE_UNAVAILABLE",`No exchange rate available for ${i} to ${e}`));}else {let E=chunkIANAMBJQ_cjs.i(l,i,e);E!==null?n.push(chunk5FGOIDLS_cjs.u(E,e)):n.push(Kt(i,e));}}else n.push(chunk5FGOIDLS_cjs.u(t.toNumber(),e));break}case 82:{let e=c(n),t=chunk5FGOIDLS_cjs.P(e);if(t){n.push(t);break}n.push(chunk5FGOIDLS_cjs.n(e.toNumber()));break}case 110:{let e=c(n),t=c(n),s=chunk5FGOIDLS_cjs.P(t,e);if(s){n.push(s);break}if(e.type!==6||!e.unit){n.push(chunk5FGOIDLS_cjs.O("RATE_MISSING_DENOMINATOR_UNIT",'Cannot build a rate: the right-hand side of "/" has no unit'));break}let i=t.type===6?t.unit??"":"";n.push(chunk5FGOIDLS_cjs.w(t.toNumber()/e.toNumber(),i,e.unit));break}case 111:{let e=c(n),t=c(n),s=chunk5FGOIDLS_cjs.P(t,e);if(s){n.push(s);break}if(t.type!==6||!chunk5FGOIDLS_cjs.x(t.unit)){n.push(chunk5FGOIDLS_cjs.O("RATE_MUL_LEFT_NOT_A_RATE",'Left-hand side of a rate multiplication must be a rate (e.g. "$50/week")'));break}if(e.type!==6||!e.unit){n.push(chunk5FGOIDLS_cjs.O("RATE_MUL_RIGHT_MISSING_UNIT","Right-hand side of a rate multiplication must have a unit matching the rate's denominator"));break}n.push(Je(t,e));break}case 112:{let e=q(c(n),f,"denominator unit name"),t=c(n),s=chunk5FGOIDLS_cjs.P(t);if(s){n.push(s);break}if(t.type!==6||!chunk5FGOIDLS_cjs.x(t.unit)){n.push(chunk5FGOIDLS_cjs.O("RATE_CONVERT_NOT_A_RATE","Cannot convert a non-rate value's denominator"));break}let{numerator:i,denominator:l}=chunk5FGOIDLS_cjs.y(t.unit),p=chunkIANAMBJQ_cjs.c(l),g=chunkIANAMBJQ_cjs.c(e);if(!p||p!==g){n.push(chunk5FGOIDLS_cjs.O("RATE_CONVERT_MEASURE_MISMATCH",`Cannot convert a "${l}"-denominated rate to "${e}" \u2014 different measures`));break}let E=chunkIANAMBJQ_cjs.e(1,e,l);n.push(chunk5FGOIDLS_cjs.w(t.toNumber()*E,i,e));break}case 120:{let e=c(n),t=chunk5FGOIDLS_cjs.P(e);if(t){n.push(t);break}let s=e.toNumber(),i=new Date,l=new Date(i.getFullYear(),i.getMonth(),i.getDate(),0,0,0,0);l.setMinutes(s),n.push(chunk5FGOIDLS_cjs.L(l.getTime()));break}case 90:n.push(chunk5FGOIDLS_cjs.L(Date.now()));break;case 95:n.push(chunk5FGOIDLS_cjs.L(y[je(d,I++,f,"constant-pool index",y.length,"number-pool")]));break;case 91:{let e=c(n),t=c(n),s=chunk5FGOIDLS_cjs.P(t,e);if(s){n.push(s);break}n.push(chunk5FGOIDLS_cjs.L(he(t.toNumber(),e,1,a)));break}case 92:{let e=c(n),t=c(n),s=chunk5FGOIDLS_cjs.P(t,e);if(s){n.push(s);break}n.push(chunk5FGOIDLS_cjs.L(he(t.toNumber(),e,-1,a)));break}case 96:{let e=U(d,I++,f,"workday offset direction")===1?-1:1,t=c(n),s=c(n),i=chunk5FGOIDLS_cjs.P(s,t);if(i){n.push(i);break}if(t.type!==4){n.push(chunk5FGOIDLS_cjs.O(chunkSOMGSIO4_cjs.r.WORKDAY_OFFSET_EXPECTED_DATE,`"working days after/before/from" expects a date to count from, got ${chunk5FGOIDLS_cjs.g[t.type]??"an unsupported value"}`));break}n.push(chunk5FGOIDLS_cjs.L(zt(t.toNumber(),e*s.toNumber(),a)));break}case 97:{let e=c(n),t=c(n),s=chunk5FGOIDLS_cjs.P(t,e);if(s){n.push(s);break}if(t.type!==4||e.type!==4){n.push(chunk5FGOIDLS_cjs.O(chunkSOMGSIO4_cjs.r.WORKDAYS_BETWEEN_EXPECTED_DATES,`"working days between" expects two dates, got ${chunk5FGOIDLS_cjs.g[t.type]??"an unsupported value"} and ${chunk5FGOIDLS_cjs.g[e.type]??"an unsupported value"}`));break}let i=Math.ceil((a.getMaxDateOffsetYears()-a.getMinDateOffsetYears())*366),l=Vt(t.toNumber(),e.toNumber(),p=>a.isHoliday(p),i);if(l===null){n.push(chunk5FGOIDLS_cjs.O(chunkSOMGSIO4_cjs.r.WORKDAYS_BETWEEN_RANGE_TOO_LARGE,`The two dates are more than ${a.getMaxDateOffsetYears()-a.getMinDateOffsetYears()} years apart, past the working-day count's limit`));break}n.push(chunk5FGOIDLS_cjs.n(l));break}case 93:case 94:{let e=c(n),t=c(n),s=chunk5FGOIDLS_cjs.P(t,e);if(s){n.push(s);break}let i=e.toNumber(),l=t.toNumber(),p=new Date(l).getDay(),g=f===93?(i-p+7)%7:(p-i+7)%7;g===0&&(g=7),n.push(chunk5FGOIDLS_cjs.L(Qt(l,f===93?g:-g)));break}case 152:{let e=U(d,I++,f,"row count"),t=U(d,I++,f,"column count"),s=e*t,i=chunk5FGOIDLS_cjs.e(s,"matrix cells"),l=null;for(let p=s-1;p>=0;p--){let g=c(n);l===null&&(l=chunk5FGOIDLS_cjs.P(g)),i[p]=g.type===10||g.type===9?g.value:g.toNumber();}if(l){n.push(l);break}n.push(chunk5FGOIDLS_cjs.C(e,t,chunkZOOVGXMK_cjs.Y(e,t,i)));break}case 153:{let e=c(n),t=c(n),s=chunk5FGOIDLS_cjs.P(t,e);if(s){n.push(s);break}if(t.type!==7){n.push(chunk5FGOIDLS_cjs.O("MATRIX_INDEX_NOT_A_MATRIX",'Cannot index a non-matrix value with "[...]".'));break}let i=t.value,l=Math.trunc(e.toNumber());if(l<0||l>=i.data.length){n.push(chunk5FGOIDLS_cjs.O("MATRIX_INDEX_OUT_OF_BOUNDS",`Index ${l} is out of bounds for a ${i.rows}x${i.cols} matrix (valid range: 0-${i.data.length-1}).`));break}let p=chunkZOOVGXMK_cjs.S(i,l);n.push(chunkZOOVGXMK_cjs.X(p));break}case 154:{let e=c(n),t=c(n),s=c(n),i=chunk5FGOIDLS_cjs.P(s,t,e);if(i){n.push(i);break}if(s.type!==7){n.push(chunk5FGOIDLS_cjs.O("MATRIX_INDEX_NOT_A_MATRIX",'Cannot index a non-matrix value with "[...]".'));break}let l=s.value,p=Math.trunc(t.toNumber()),g=Math.trunc(e.toNumber());if(!chunkZOOVGXMK_cjs.U(l,p,g)){n.push(chunk5FGOIDLS_cjs.O("MATRIX_INDEX_OUT_OF_BOUNDS",`[${p}, ${g}] is out of bounds for a ${l.rows}x${l.cols} matrix.`));break}let E=chunkZOOVGXMK_cjs.T(l,p,g);n.push(chunkZOOVGXMK_cjs.X(E));break}case 156:{let e=c(n),t=c(n),s=chunk5FGOIDLS_cjs.P(t,e);if(s){n.push(s);break}if(t.type!==0||e.type!==0){n.push(chunk5FGOIDLS_cjs.O("INVALID_RANGE_BOUND",`A range's bounds must be plain numbers (e.g. "0:3").`));break}let i=t.value,l=e.value;if(!Number.isInteger(i)||!Number.isInteger(l)){n.push(chunk5FGOIDLS_cjs.O("NON_INTEGER_RANGE_BOUND",`A range's bounds must be whole numbers, got "${i}:${l}".`));break}if(i>l){n.push(chunk5FGOIDLS_cjs.O("DESCENDING_RANGE",`A range's min (${i}) cannot be greater than its max (${l}) \u2014 did you mean "${l}:${i}"?`));break}n.push(chunk5FGOIDLS_cjs.F(i,l));break}case 155:{let e=c(n),t=c(n),s=c(n),i=chunk5FGOIDLS_cjs.P(s,t,e);if(i){n.push(i);break}if(s.type!==7){n.push(chunk5FGOIDLS_cjs.O("MATRIX_INDEX_NOT_A_MATRIX",'Cannot slice a non-matrix value with "[...]".'));break}if(t.type!==8||e.type!==8){n.push(chunk5FGOIDLS_cjs.O("INVALID_MATRIX_SLICE_BOUND",'Matrix slicing needs range bounds (e.g. "a[0:1, 1:2]").'));break}let l=s.value,p=t.value,g=e.value;if(p.min<0||p.max>=l.rows||g.min<0||g.max>=l.cols){n.push(chunk5FGOIDLS_cjs.O("MATRIX_INDEX_OUT_OF_BOUNDS",`Slice [${p.min}:${p.max}, ${g.min}:${g.max}] is out of bounds for a ${l.rows}x${l.cols} matrix.`));break}let E=p.max-p.min+1,C=g.max-g.min+1,B=chunk5FGOIDLS_cjs.e(E*C,"matrix cells");for(let V=0;V<E;V++)for(let D=0;D<C;D++)B[V+D*E]=chunkZOOVGXMK_cjs.T(l,p.min+V,g.min+D);n.push(chunk5FGOIDLS_cjs.C(E,C,B));break}case 157:{let e=U(d,I++,f,"body kind"),t=U(d,I++,f,"body reference"),s=U(d,I++,f,"collection count");Ft(e,t,f);let i=new Array(s);for(let k=s-1;k>=0;k--)i[k]=c(n);let l=[],p;if(e===0){let k=w?.[t];if(!k)throw chunkSOMGSIO4_cjs.c.internal("INTERNAL_MISSING_ANONYMOUS_BODY",`Internal error: MAP_INVOKE referenced missing anonymous body index ${t}`,{ref:t});l=k.params,p=k.program;}else if(e===2){let k=Se(x,t,f),v=a.getUserFunction(k);if(!v){n.push(chunk5FGOIDLS_cjs.O("UNDEFINED_FUNCTION",`map: undefined function "${k}"`));break}if(v.params.length!==s){n.push(chunk5FGOIDLS_cjs.O("FUNCTION_ARITY_MISMATCH",`map: "${k}" expects ${v.params.length} argument(s) but ${s} collection(s) were given`));break}l=v.params,p=v.program;}let g=-1,E=new Array(s),C;for(let k=0;k<s;k++){let v=chunkZOOVGXMK_cjs.ea(i[k],a.getMaxCollectionSize());if(!Array.isArray(v)){C=v;break}if(chunk5FGOIDLS_cjs.c(v.length,"collection elements"),g===-1)g=v.length;else if(v.length!==g){C=chunk5FGOIDLS_cjs.O("MAP_COLLECTION_LENGTH_MISMATCH",`map: all collections must have the same length (got ${g} and ${v.length}).`);break}E[k]=v;}if(C){n.push(C);break}let B=chunk5FGOIDLS_cjs.e(g,"matrix cells"),V;for(let k=0;k<g;k++){let v=new Array(s);for(let ye=0;ye<s;ye++)v[ye]=E[ye][k];let ae=e===1?chunkZ5KBBQOJ_cjs.C[t]?.(v)??chunk5FGOIDLS_cjs.O("UNKNOWN_BUILTIN_FUNCTION",`map: unknown builtin function index ${t}`):ze(l,p,v,a,o,u,m,!!b),et=chunk5FGOIDLS_cjs.P(ae);if(et){V=et;break}B[k]=ae.type===10||ae.type===9?ae.value:ae.toNumber();}if(V){n.push(V);break}let D=i[0],R=D?.type===7?D.value:void 0;R&&R.rows*R.cols===g?n.push(chunk5FGOIDLS_cjs.C(R.rows,R.cols,B)):n.push(chunk5FGOIDLS_cjs.C(1,g,B));break}case 160:{let e=U(d,I++,f,"plot body reference"),t=U(d,I++,f,"plot expression"),s=Se(x,t,f),i=c(n).toNumber(),l=c(n).toNumber(),p=w?.[e];if(!p)throw chunkSOMGSIO4_cjs.c.internal("INTERNAL_MISSING_ANONYMOUS_BODY",`Internal error: PLOT_INVOKE referenced missing anonymous body index ${e}`,{ref:e});if(!Number.isFinite(l)||!Number.isFinite(i)){n.push(chunk5FGOIDLS_cjs.O("PLOT_INVALID_RANGE",`plot: the range bounds must be finite numbers (got ${l} to ${i})`));break}let g=[];for(let D=0;D<Lt;D++){let R=l+D/(Lt-1)*(i-l),k;try{k=ze(p.params,p.program,[chunk5FGOIDLS_cjs.n(R)],a,o,u,m,!!b).toNumber();}catch{continue}Number.isFinite(k)&&g.push([R,k]);}let E=g.map(D=>D[1]),C=E.length?Math.min(...E):0,B=E.length?Math.max(...E):0,V=D=>Number.isInteger(D)?String(D):String(Number(D.toFixed(2)));n.push(chunk5FGOIDLS_cjs.I({kind:"plot",points:g,label:`${s} over [${V(l)}, ${V(i)}]`,domain:[l,i],range:[C,B],expr:s}));break}case 158:{let e=U(d,I++,f,"body kind"),t=U(d,I++,f,"body reference"),s=U(d,I++,f,"initial-value flag");Ft(e,t,f);let i=s?c(n):void 0,l=c(n),p=[],g;if(e===0){let D=w?.[t];if(!D)throw chunkSOMGSIO4_cjs.c.internal("INTERNAL_MISSING_ANONYMOUS_BODY",`Internal error: REDUCE_INVOKE referenced missing anonymous body index ${t}`,{ref:t});p=D.params,g=D.program;}else if(e===2){let D=Se(x,t,f),R=a.getUserFunction(D);if(!R){n.push(chunk5FGOIDLS_cjs.O("UNDEFINED_FUNCTION",`reduce: undefined function "${D}"`));break}if(R.params.length!==2){n.push(chunk5FGOIDLS_cjs.O("FUNCTION_ARITY_MISMATCH",`reduce: "${D}" must take exactly 2 arguments (accumulator, element), got ${R.params.length}`));break}p=R.params,g=R.program;}let E=chunkZOOVGXMK_cjs.ea(l,a.getMaxCollectionSize());if(!Array.isArray(E)){n.push(E);break}chunk5FGOIDLS_cjs.c(E.length,"collection elements");let C,B;if(i!==void 0){let D=chunk5FGOIDLS_cjs.P(i);if(D){n.push(D);break}C=i,B=0;}else {if(E.length===0){n.push(chunk5FGOIDLS_cjs.O("REDUCE_EMPTY_COLLECTION","reduce: cannot reduce an empty collection without an initial value."));break}C=E[0],B=1;}let V;for(let D=B;D<E.length;D++){let R=[C,E[D]],k=e===1?chunkZ5KBBQOJ_cjs.C[t]?.(R)??chunk5FGOIDLS_cjs.O("UNKNOWN_BUILTIN_FUNCTION",`reduce: unknown builtin function index ${t}`):ze(p,g,R,a,o,u,m,!!b),v=chunk5FGOIDLS_cjs.P(k);if(v){V=v;break}C=k;}if(V){n.push(V);break}n.push(C);break}case 159:{let e=U(d,I++,f,"body reference"),t=w?.[e];if(!t)throw chunkSOMGSIO4_cjs.c.internal("INTERNAL_MISSING_ANONYMOUS_BODY",`Internal error: BIND_UNKNOWN referenced missing anonymous body index ${e}`,{ref:e});n.push(sn(t.params[0],t.program,a,o,u,m,!!b));break}}}let K=c(n);return {type:"value",value:W?chunk5FGOIDLS_cjs.k(K):K}}catch(K){return {type:"error",error:chunkSOMGSIO4_cjs.d(K)}}finally{chunk5FGOIDLS_cjs.b();}}exports.a=Ct;exports.b=Ot;exports.c=jn;exports.d=Ze;//# sourceMappingURL=chunk-GKDZ7TSX.cjs.map
2
- //# sourceMappingURL=chunk-GKDZ7TSX.cjs.map