solve-engine 2.23.0 → 2.24.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 (202) hide show
  1. package/README.md +82 -32
  2. package/dist/{Configuration-BGQn-cJ8.d.cts → Configuration-DnzYPmoK.d.cts} +33 -0
  3. package/dist/{Configuration-BGQn-cJ8.d.ts → Configuration-DnzYPmoK.d.ts} +33 -0
  4. package/dist/{EngineError-DTk7I7hZ.d.cts → EngineError-D1kXsjIj.d.cts} +4 -0
  5. package/dist/{EngineError-DTk7I7hZ.d.ts → EngineError-D1kXsjIj.d.ts} +4 -0
  6. package/dist/{PackageCompatibility-BGXSFuL9.d.ts → PackageCompatibility-Bq82y0ZN.d.ts} +1 -1
  7. package/dist/{PackageCompatibility-BZCqaTOO.d.cts → PackageCompatibility-CeAPVHZr.d.cts} +1 -1
  8. package/dist/{PackageRegistry-rMGnTh7W.d.cts → PackageRegistry-B9-7fJGH.d.cts} +16 -11
  9. package/dist/{PackageRegistry-BRoVOYzg.d.ts → PackageRegistry-CDEgfhT_.d.ts} +16 -11
  10. package/dist/{Parselet-Bkbp9CKD.d.cts → Parselet-4oH5OuRt.d.cts} +1 -1
  11. package/dist/{Parselet-B-WyUtX4.d.ts → Parselet-BwDqKFfK.d.ts} +1 -1
  12. package/dist/{ScopeManager-gB9UengK.d.ts → ScopeManager-BQBhlDAu.d.ts} +38 -7
  13. package/dist/{ScopeManager-bCYewWVt.d.cts → ScopeManager-DrXB3Nvm.d.cts} +38 -7
  14. package/dist/{VMCheckpoints-DGar9Yg8.d.cts → VMCheckpoints-BK32PTl2.d.cts} +2 -2
  15. package/dist/{VMCheckpoints-BDRY1Kx8.d.ts → VMCheckpoints-C5jC92o3.d.ts} +2 -2
  16. package/dist/{Value-DCTqTSeP.d.cts → Value-Ds3Gy07C.d.cts} +1 -1
  17. package/dist/{Value-DCTqTSeP.d.ts → Value-Ds3Gy07C.d.ts} +1 -1
  18. package/dist/{WorkerError-DpZgKRks.d.ts → WorkerError-CVQbs6_D.d.ts} +1 -1
  19. package/dist/{WorkerError-DGBNM3gA.d.cts → WorkerError-DaNWQFp1.d.cts} +1 -1
  20. package/dist/chunk-2BXNZM3G.js +2 -0
  21. package/dist/chunk-2BXNZM3G.js.map +1 -0
  22. package/dist/chunk-2JSNWYYA.cjs +3 -0
  23. package/dist/chunk-2JSNWYYA.cjs.map +1 -0
  24. package/dist/{chunk-J7ABVGZH.cjs → chunk-2VE4OW4A.cjs} +2 -2
  25. package/dist/{chunk-J7ABVGZH.cjs.map → chunk-2VE4OW4A.cjs.map} +1 -1
  26. package/dist/{chunk-HMC7FJO7.js → chunk-3SHWTGTP.js} +2 -2
  27. package/dist/{chunk-HMC7FJO7.js.map → chunk-3SHWTGTP.js.map} +1 -1
  28. package/dist/{chunk-EN3CDYOS.cjs → chunk-5GL4SAVH.cjs} +2 -2
  29. package/dist/{chunk-EN3CDYOS.cjs.map → chunk-5GL4SAVH.cjs.map} +1 -1
  30. package/dist/{chunk-SGIDBZ4T.cjs → chunk-72N3ZRVE.cjs} +2 -2
  31. package/dist/chunk-72N3ZRVE.cjs.map +1 -0
  32. package/dist/{chunk-CHSO3DCS.js → chunk-7EP36NXE.js} +3 -3
  33. package/dist/{chunk-CHSO3DCS.js.map → chunk-7EP36NXE.js.map} +1 -1
  34. package/dist/chunk-A4JV7HRB.js +3 -0
  35. package/dist/chunk-A4JV7HRB.js.map +1 -0
  36. package/dist/chunk-AUOE7MFI.cjs +2 -0
  37. package/dist/chunk-AUOE7MFI.cjs.map +1 -0
  38. package/dist/chunk-BDF4VCQX.js +3 -0
  39. package/dist/chunk-BDF4VCQX.js.map +1 -0
  40. package/dist/{chunk-3SSMOVWB.cjs → chunk-CDNJZBM3.cjs} +2 -2
  41. package/dist/{chunk-3SSMOVWB.cjs.map → chunk-CDNJZBM3.cjs.map} +1 -1
  42. package/dist/{chunk-YAONCEAW.cjs → chunk-CMZSK6FY.cjs} +3 -3
  43. package/dist/{chunk-YAONCEAW.cjs.map → chunk-CMZSK6FY.cjs.map} +1 -1
  44. package/dist/chunk-D2Q2VFJ6.js +2 -0
  45. package/dist/chunk-D2Q2VFJ6.js.map +1 -0
  46. package/dist/{chunk-75JLWK4L.cjs → chunk-DA7M6H63.cjs} +2 -2
  47. package/dist/{chunk-75JLWK4L.cjs.map → chunk-DA7M6H63.cjs.map} +1 -1
  48. package/dist/chunk-ELQQKZN3.cjs +3 -0
  49. package/dist/{chunk-PIZQIQVM.js.map → chunk-ELQQKZN3.cjs.map} +1 -1
  50. package/dist/chunk-F7QIBC4B.cjs +3 -0
  51. package/dist/chunk-F7QIBC4B.cjs.map +1 -0
  52. package/dist/chunk-GP4H5OIT.js +3 -0
  53. package/dist/chunk-GP4H5OIT.js.map +1 -0
  54. package/dist/chunk-HQ7BKXG7.js +2 -0
  55. package/dist/chunk-HQ7BKXG7.js.map +1 -0
  56. package/dist/{chunk-KRXO3MOW.cjs → chunk-IHAZL4EF.cjs} +2 -2
  57. package/dist/chunk-IHAZL4EF.cjs.map +1 -0
  58. package/dist/{chunk-7E7NXKQ5.js → chunk-IJHL3LMH.js} +2 -2
  59. package/dist/chunk-IJHL3LMH.js.map +1 -0
  60. package/dist/{chunk-3GR46UOX.js → chunk-IPSOWFCA.js} +2 -2
  61. package/dist/{chunk-3GR46UOX.js.map → chunk-IPSOWFCA.js.map} +1 -1
  62. package/dist/chunk-LM6ZQUEU.js +2 -0
  63. package/dist/chunk-LM6ZQUEU.js.map +1 -0
  64. package/dist/{chunk-N37PUZJR.cjs → chunk-LTJV3VJE.cjs} +2 -2
  65. package/dist/{chunk-N37PUZJR.cjs.map → chunk-LTJV3VJE.cjs.map} +1 -1
  66. package/dist/chunk-MWWAKZOD.cjs +3 -0
  67. package/dist/chunk-MWWAKZOD.cjs.map +1 -0
  68. package/dist/chunk-NUF66H57.js +5 -0
  69. package/dist/chunk-NUF66H57.js.map +1 -0
  70. package/dist/{chunk-MRRMIBHE.js → chunk-OMHRBKAT.js} +2 -2
  71. package/dist/{chunk-MRRMIBHE.js.map → chunk-OMHRBKAT.js.map} +1 -1
  72. package/dist/{chunk-4ETS224G.js → chunk-PTQCHMYA.js} +2 -2
  73. package/dist/{chunk-4ETS224G.js.map → chunk-PTQCHMYA.js.map} +1 -1
  74. package/dist/{chunk-4DJJIUQF.js → chunk-PWWQZFAE.js} +2 -2
  75. package/dist/chunk-PWWQZFAE.js.map +1 -0
  76. package/dist/chunk-RE6AIU6Y.js +3 -0
  77. package/dist/chunk-RE6AIU6Y.js.map +1 -0
  78. package/dist/chunk-RECRD45C.cjs +5 -0
  79. package/dist/chunk-RECRD45C.cjs.map +1 -0
  80. package/dist/{chunk-O3BDXOQJ.js → chunk-RENO2AWO.js} +2 -2
  81. package/dist/{chunk-O3BDXOQJ.js.map → chunk-RENO2AWO.js.map} +1 -1
  82. package/dist/chunk-RMCN5WFO.cjs +2 -0
  83. package/dist/chunk-RMCN5WFO.cjs.map +1 -0
  84. package/dist/{chunk-TL545PXW.cjs → chunk-RN3ISTM3.cjs} +2 -2
  85. package/dist/{chunk-TL545PXW.cjs.map → chunk-RN3ISTM3.cjs.map} +1 -1
  86. package/dist/{chunk-JYLNQOPU.cjs → chunk-S46R5QZP.cjs} +2 -2
  87. package/dist/{chunk-JYLNQOPU.cjs.map → chunk-S46R5QZP.cjs.map} +1 -1
  88. package/dist/{chunk-USQ4KL6S.cjs → chunk-UPH22K2T.cjs} +2 -2
  89. package/dist/chunk-UPH22K2T.cjs.map +1 -0
  90. package/dist/{chunk-KEA5HRL3.js → chunk-UXR7JIPX.js} +2 -2
  91. package/dist/{chunk-KEA5HRL3.js.map → chunk-UXR7JIPX.js.map} +1 -1
  92. package/dist/chunk-UY3ID6JF.cjs +2 -0
  93. package/dist/chunk-UY3ID6JF.cjs.map +1 -0
  94. package/dist/{chunk-JVMINMAB.js → chunk-WFOQRPA6.js} +2 -2
  95. package/dist/{chunk-JVMINMAB.js.map → chunk-WFOQRPA6.js.map} +1 -1
  96. package/dist/{chunk-AF7HQN6I.js → chunk-XFJABR3B.js} +2 -2
  97. package/dist/chunk-XFJABR3B.js.map +1 -0
  98. package/dist/{chunk-LNZNJSRW.cjs → chunk-ZVPZQ66D.cjs} +2 -2
  99. package/dist/chunk-ZVPZQ66D.cjs.map +1 -0
  100. package/dist/constants.cjs +1 -1
  101. package/dist/constants.d.cts +1 -1
  102. package/dist/constants.d.ts +1 -1
  103. package/dist/constants.js +1 -1
  104. package/dist/engine.cjs +1 -1
  105. package/dist/engine.d.cts +9 -9
  106. package/dist/engine.d.ts +9 -9
  107. package/dist/engine.js +1 -1
  108. package/dist/errors.cjs +1 -1
  109. package/dist/errors.d.cts +3 -3
  110. package/dist/errors.d.ts +3 -3
  111. package/dist/errors.js +1 -1
  112. package/dist/format.cjs +1 -1
  113. package/dist/format.d.cts +1 -1
  114. package/dist/format.d.ts +1 -1
  115. package/dist/format.js +1 -1
  116. package/dist/index.cjs +1 -1
  117. package/dist/index.cjs.map +1 -1
  118. package/dist/index.d.cts +11 -9
  119. package/dist/index.d.ts +11 -9
  120. package/dist/index.js +1 -1
  121. package/dist/index.js.map +1 -1
  122. package/dist/language.d.cts +8 -8
  123. package/dist/language.d.ts +8 -8
  124. package/dist/lexer.cjs +1 -1
  125. package/dist/lexer.js +1 -1
  126. package/dist/normalizer.cjs +1 -1
  127. package/dist/normalizer.d.cts +14 -8
  128. package/dist/normalizer.d.ts +14 -8
  129. package/dist/normalizer.js +1 -1
  130. package/dist/packages.cjs +1 -1
  131. package/dist/packages.d.cts +7 -7
  132. package/dist/packages.d.ts +7 -7
  133. package/dist/packages.js +1 -1
  134. package/dist/parser.cjs +1 -1
  135. package/dist/parser.d.cts +3 -3
  136. package/dist/parser.d.ts +3 -3
  137. package/dist/parser.js +1 -1
  138. package/dist/{pipeline-B4wf3M1h.d.cts → pipeline-69q2tsLE.d.cts} +1 -1
  139. package/dist/{pipeline-QIT4iD8f.d.ts → pipeline-DTqGLPsV.d.ts} +1 -1
  140. package/dist/resolvers.cjs +1 -1
  141. package/dist/resolvers.d.cts +18 -2
  142. package/dist/resolvers.d.ts +18 -2
  143. package/dist/resolvers.js +1 -1
  144. package/dist/testing.cjs +2 -2
  145. package/dist/testing.d.cts +8 -8
  146. package/dist/testing.d.ts +8 -8
  147. package/dist/testing.js +1 -1
  148. package/dist/uom.cjs +1 -1
  149. package/dist/uom.d.cts +1 -1
  150. package/dist/uom.d.ts +1 -1
  151. package/dist/uom.js +1 -1
  152. package/dist/vm.cjs +1 -1
  153. package/dist/vm.d.cts +7 -7
  154. package/dist/vm.d.ts +7 -7
  155. package/dist/vm.js +1 -1
  156. package/dist/worker.cjs +2 -2
  157. package/dist/worker.cjs.map +1 -1
  158. package/dist/worker.d.cts +31 -22
  159. package/dist/worker.d.ts +31 -22
  160. package/dist/worker.js +1 -1
  161. package/dist/worker.js.map +1 -1
  162. package/package.json +1 -1
  163. package/dist/chunk-42JXN3BH.js +0 -5
  164. package/dist/chunk-42JXN3BH.js.map +0 -1
  165. package/dist/chunk-4DJJIUQF.js.map +0 -1
  166. package/dist/chunk-6YM67DWH.cjs +0 -3
  167. package/dist/chunk-6YM67DWH.cjs.map +0 -1
  168. package/dist/chunk-7E7NXKQ5.js.map +0 -1
  169. package/dist/chunk-7SZBEE5R.cjs +0 -2
  170. package/dist/chunk-7SZBEE5R.cjs.map +0 -1
  171. package/dist/chunk-A5M4QZIK.js +0 -2
  172. package/dist/chunk-A5M4QZIK.js.map +0 -1
  173. package/dist/chunk-AF7HQN6I.js.map +0 -1
  174. package/dist/chunk-ALY4ZMYO.js +0 -2
  175. package/dist/chunk-ALY4ZMYO.js.map +0 -1
  176. package/dist/chunk-BRJ4RT5U.js +0 -2
  177. package/dist/chunk-BRJ4RT5U.js.map +0 -1
  178. package/dist/chunk-CO2BI6WL.cjs +0 -3
  179. package/dist/chunk-CO2BI6WL.cjs.map +0 -1
  180. package/dist/chunk-EQDT42JG.js +0 -3
  181. package/dist/chunk-EQDT42JG.js.map +0 -1
  182. package/dist/chunk-FMMT5C5H.cjs +0 -3
  183. package/dist/chunk-FMMT5C5H.cjs.map +0 -1
  184. package/dist/chunk-FP6Z6PYR.js +0 -2
  185. package/dist/chunk-FP6Z6PYR.js.map +0 -1
  186. package/dist/chunk-H3JXNH7X.cjs +0 -3
  187. package/dist/chunk-H3JXNH7X.cjs.map +0 -1
  188. package/dist/chunk-HZOLIL5T.js +0 -3
  189. package/dist/chunk-HZOLIL5T.js.map +0 -1
  190. package/dist/chunk-KRXO3MOW.cjs.map +0 -1
  191. package/dist/chunk-KVLJDOZ7.cjs +0 -5
  192. package/dist/chunk-KVLJDOZ7.cjs.map +0 -1
  193. package/dist/chunk-LNZNJSRW.cjs.map +0 -1
  194. package/dist/chunk-PIZQIQVM.js +0 -3
  195. package/dist/chunk-QTSDIDAS.js +0 -3
  196. package/dist/chunk-QTSDIDAS.js.map +0 -1
  197. package/dist/chunk-SGIDBZ4T.cjs.map +0 -1
  198. package/dist/chunk-UNKSCVIL.cjs +0 -2
  199. package/dist/chunk-UNKSCVIL.cjs.map +0 -1
  200. package/dist/chunk-USQ4KL6S.cjs.map +0 -1
  201. package/dist/chunk-XDXIPVZB.cjs +0 -2
  202. package/dist/chunk-XDXIPVZB.cjs.map +0 -1
@@ -1,2 +1,2 @@
1
- 'use strict';var chunk75JLWK4L_cjs=require('./chunk-75JLWK4L.cjs'),chunkCO2BI6WL_cjs=require('./chunk-CO2BI6WL.cjs');var p={n:0n,d:1n},y={n:1n,d:1n},Z={n:-1n,d:1n},ln=4096,Gn=1n<<BigInt(ln);function V(n,t){let e=1n,r=n,o=t;for(;o>0n;)o%2n===1n&&(e*=r),r*=r,o/=2n;return e}function Rt(n,t){let e=n<0n?-n:n,r=t<0n?-t:t;for(;r!==0n;){let o=e%r;e=r,r=o;}return e}function ht(n,t){if((n<0n?-n:n)>=Gn||t>=Gn)throw chunkCO2BI6WL_cjs.c.execution("SYMBOLIC_RATIONAL_OVERFLOW",`This calculation produced a fraction too large to represent exactly (over ${ln} bits).`,{limitBits:ln})}function $(n,t){if(t===0n)throw chunkCO2BI6WL_cjs.c.execution("SYMBOLIC_DIVISION_BY_ZERO","Division by zero in a symbolic expression.");if(n===0n)return p;let e=t<0n?-n:n,r=t<0n?-t:t,o=Rt(e,r);return e/=o,r/=o,ht(e,r),{n:e,d:r}}function Sn(n,t=1n){return $(n,t)}var St=/^(-?)(\d+)(?:\.(\d+))?(?:[eE]([+-]?\d+))?$/;function In(n){if(!Number.isFinite(n))throw chunkCO2BI6WL_cjs.c.execution("SYMBOLIC_NONFINITE_OPERAND",`"${String(n)}" has no exact value, so it cannot appear in a symbolic expression.`,{value:String(n)});if(Number.isInteger(n))return $(BigInt(n),1n);let t=St.exec(String(n));if(t===null)throw chunkCO2BI6WL_cjs.c.internal("INTERNAL_RATIONAL_PARSE",`Internal error: could not read "${String(n)}" as a decimal number.`,{value:String(n)});let[,e,r,o="",i]=t,l=BigInt(r+o),a=V(10n,BigInt(o.length)),c=i===void 0?0:Number(i);return c>0?l*=V(10n,BigInt(c)):c<0&&(a*=V(10n,BigInt(-c))),$(e==="-"?-l:l,a)}function J(n){if(n.d===1n)return Number(n.n);let t=Number(n.n)/Number(n.d);return Number.isNaN(t)?Number((n.n<<64n)/n.d)/2**64:t}function b(n,t){return $(n.n*t.d+t.n*n.d,n.d*t.d)}function C(n,t){return $(n.n*t.d-t.n*n.d,n.d*t.d)}function d(n,t){return $(n.n*t.n,n.d*t.d)}function S(n,t){if(t.n===0n)throw chunkCO2BI6WL_cjs.c.execution("SYMBOLIC_DIVISION_BY_ZERO","Division by zero in a symbolic expression.");return $(n.n*t.d,n.d*t.n)}function I(n){return n.n===0n?p:{n:-n.n,d:n.d}}function vn(n,t){if(t===0n)return y;if(t<0n){if(n.n===0n)throw chunkCO2BI6WL_cjs.c.execution("SYMBOLIC_DIVISION_BY_ZERO","Zero raised to a negative power is undefined.");let e=-t;return $(V(n.d,e),V(n.n,e))}return $(V(n.n,t),V(n.d,t))}function It(n,t){let e=n.n*t.d,r=t.n*n.d;return e<r?-1:e>r?1:0}function u(n){return n.n===0n}function N(n){return n.n===1n&&n.d===1n}function nn(n){return n.n===-1n&&n.d===1n}function P(n){return n.d===1n}var vt=10,Wn=1000000n;function D(n){if(n.d===1n)return String(n.n);let t=n.d,e=0,r=0;for(;t%2n===0n;)t/=2n,e++;for(;t%5n===0n;)t/=5n,r++;let o=t===1n,i=Math.max(e,r);if(!o||i>vt)return (n.n<0n?-n.n:n.n)<=Wn&&n.d<=Wn?`${n.n}/${n.d}`:String(Math.round(J(n)*1e10)/1e10);let l=(n.n<0n?-n.n:n.n)*V(10n,BigInt(i))/n.d,a=String(l).padStart(i+1,"0"),c=a.slice(0,a.length-i),f=a.slice(a.length-i).replace(/0+$/,""),m=n.n<0n?"-":"";return f.length===0?`${m}${c}`:`${m}${c}.${f}`}var zn={re:p,im:p},an={re:y,im:p},kn={re:p,im:y};function cn(n,t=p){return {re:n,im:t}}function K(n){return u(n.re)&&u(n.im)}function Dn(n,t){return {re:b(n.re,t.re),im:b(n.im,t.im)}}function En(n,t){return {re:C(n.re,t.re),im:C(n.im,t.im)}}function tn(n,t){return {re:C(d(n.re,t.re),d(n.im,t.im)),im:b(d(n.re,t.im),d(n.im,t.re))}}function sn(n,t){if(K(t))throw chunkCO2BI6WL_cjs.c.execution("SYMBOLIC_DIVISION_BY_ZERO","Division by zero in a complex expression.");let e=b(d(t.re,t.re),d(t.im,t.im));return {re:S(b(d(n.re,t.re),d(n.im,t.im)),e),im:S(C(d(n.im,t.re),d(n.re,t.im)),e)}}function Cn(n){return {re:I(n.re),im:I(n.im)}}function An(n){return {re:n.re,im:I(n.im)}}function un(n){return b(d(n.re,n.re),d(n.im,n.im))}function fn(n,t){if(t===0n)return an;if(t<0n){if(K(n))throw chunkCO2BI6WL_cjs.c.execution("SYMBOLIC_DIVISION_BY_ZERO","Zero raised to a negative power is undefined.");return sn(an,fn(n,-t))}let e=an,r=n,o=t;for(;o>0n;)o%2n===1n&&(e=tn(e,r)),r=tn(r,r),o/=2n;return e}function wn(n,t){return n.re.n===t.re.n&&n.re.d===t.re.d&&n.im.n===t.im.n&&n.im.d===t.im.d}function mn(n){if(u(n.im))return D(n.re);let t=n.im.n<0n?I(n.im):n.im,e=N(t)?"i":`${D(t)}i`;return u(n.re)?n.im.n<0n?`-${e}`:e:n.im.n<0n?`${D(n.re)}-${e}`:`${D(n.re)}+${e}`}function dn(n){if(K(n))return zn;let t=Mn(un(n));if(t===null)return null;let e={n:2n,d:1n},r=Mn(S(b(t,n.re),e));if(r===null)return null;if(u(r)){let i=Mn(S(C(t,n.re),e));return i===null?null:{re:p,im:i}}let o=S(n.im,d(e,r));return {re:r,im:o}}function Mn(n){if(n.n<0n)return null;let t=Qn(n.n),e=Qn(n.d);return t===null||e===null?null:{n:t,d:e}}function Qn(n){if(n<0n)return null;if(n<2n)return n;let t=n,e=(n+1n)/2n;for(;e<t;)t=e,e=(t+n/t)/2n;return t*t===n?t:null}var j=1e4;function s(n){return {kind:"const",value:typeof n=="number"?In(n):n}}function U(n){return {kind:"var",name:n}}function _n(n,t){return {kind:"pow",base:n,exponent:t}}function Mt(n,t){return {kind:"call",name:n,args:t}}function v(n){switch(n.kind){case "const":return `${n.value.n}/${n.value.d}`;case "complex":return `C(${n.value.re.n}/${n.value.re.d},${n.value.im.n}/${n.value.im.d})`;case "var":return `v:${n.name}`;case "neg":return `-(${v(n.operand)})`;case "pow":return `^(${v(n.base)},${v(n.exponent)})`;case "call":return `${n.name}(${n.args.map(v).join(",")})`;case "add":return `+(${v(n.left)},${v(n.right)})`;case "sub":return `-(${v(n.left)},${v(n.right)})`;case "mul":return `*(${v(n.left)},${v(n.right)})`;case "div":return `/(${v(n.left)},${v(n.right)})`}}function E(n,t){if(n.kind!==t.kind)return false;switch(n.kind){case "const":{let e=t;return n.value.n===e.value.n&&n.value.d===e.value.d}case "complex":return wn(n.value,t.value);case "var":return n.name===t.name;case "neg":return E(n.operand,t.operand);case "pow":{let e=t;return E(n.base,e.base)&&E(n.exponent,e.exponent)}case "call":{let e=t;return n.name!==e.name||n.args.length!==e.args.length?false:n.args.every((r,o)=>E(r,e.args[o]))}case "add":case "sub":case "mul":case "div":{let e=t;return E(n.left,e.left)&&E(n.right,e.right)}}}function On(n,t=Number.POSITIVE_INFINITY){let e=[n],r=0;for(;e.length>0;){let o=e.pop();if(r++,r>t)return r;switch(o.kind){case "const":case "complex":case "var":break;case "neg":e.push(o.operand);break;case "pow":e.push(o.base,o.exponent);break;case "call":for(let i of o.args)e.push(i);break;case "add":case "sub":case "mul":case "div":e.push(o.left,o.right);break}}return r}function kt(n){let t=new Set;return Y(n,t),t}function Y(n,t){switch(n.kind){case "const":case "complex":return;case "var":t.add(n.name);return;case "neg":Y(n.operand,t);return;case "pow":Y(n.base,t),Y(n.exponent,t);return;case "call":for(let e of n.args)Y(e,t);return;case "add":case "sub":case "mul":case "div":Y(n.left,t),Y(n.right,t);}}function q(n,t,e){switch(n.kind){case "const":case "complex":return n;case "var":return n.name===t?e:n;case "neg":return {kind:"neg",operand:q(n.operand,t,e)};case "pow":return {kind:"pow",base:q(n.base,t,e),exponent:q(n.exponent,t,e)};case "call":return {kind:"call",name:n.name,args:n.args.map(r=>q(r,t,e))};case "add":case "sub":case "mul":case "div":return {kind:n.kind,left:q(n.left,t,e),right:q(n.right,t,e)}}}function A(n){return n.im.n===0n?{kind:"const",value:n.re}:{kind:"complex",value:n}}var Dt=32,Jn=2e3,Et=64;function Ct(n){return [...n.keys()].sort().map(e=>n.get(e)===1?e:`${e}^${n.get(e)}`).join("*")}function T(n){let t=new Map;if(n==="")return t;for(let e of n.split("*")){let r=e.indexOf("^");r===-1?t.set(e,1):t.set(e.slice(0,r),Number(e.slice(r+1)));}return t}function pn(n){let t=0;for(let e of T(n).values())t+=e;return t}function nt(n){let t=new Map,e=new Set;for(let[r,o]of n)if(!u(o)){if(pn(r)>Et)return null;t.set(r,o);for(let i of T(r).keys())e.add(i);}return t.size>Jn?null:{terms:t,vars:[...e].sort()}}function tt(n){return u(n)?{terms:new Map,vars:[]}:{terms:new Map([["",n]]),vars:[]}}function et(n,t){let e=new Map(n.terms);for(let[r,o]of t.terms){let i=e.get(r);e.set(r,i===void 0?o:b(i,o));}return nt(e)}function At(n,t){return et(n,Pn(t,Z))}function rt(n,t){if(n.terms.size*t.terms.size>Jn)return null;let e=new Map;for(let[r,o]of n.terms){let i=T(r);for(let[l,a]of t.terms){let c=new Map(i);for(let[L,Rn]of T(l))c.set(L,(c.get(L)??0)+Rn);let f=Ct(c),m=d(o,a),x=e.get(f);e.set(f,x===void 0?m:b(x,m));}}return nt(e)}function wt(n,t){if(t<0||!Number.isInteger(t)||t>Dt)return null;let e=tt(y);for(let r=0;r<t;r++){let o=rt(e,n);if(o===null)return null;e=o;}return e}function Pn(n,t){if(u(t))return {terms:new Map,vars:[]};let e=new Map;for(let[r,o]of n.terms)e.set(r,d(o,t));return {terms:e,vars:n.vars}}function gn(n,t){let e=0;for(let r of n.terms.keys()){let o=t===void 0?pn(r):T(r).get(t)??0;o>e&&(e=o);}return e}function ot(n){return n.vars.length===1?n.vars[0]:null}function H(n,t){let e=gn(n,t),r=new Array(e+1).fill(p);for(let[o,i]of n.terms)r[T(o).get(t)??0]=i;return r}function h(n,t=true){switch(n.kind){case "const":return tt(n.value);case "var":return {terms:new Map([[n.name,y]]),vars:[n.name]};case "neg":{let e=h(n.operand,t);return e===null?null:Pn(e,Z)}case "add":{let e=h(n.left,t),r=e===null?null:h(n.right,t);return e===null||r===null?null:et(e,r)}case "sub":{let e=h(n.left,t),r=e===null?null:h(n.right,t);return e===null||r===null?null:At(e,r)}case "mul":{let e=h(n.left,t),r=e===null?null:h(n.right,t);return e===null||r===null||!t&&(e.terms.size>1||r.terms.size>1)?null:rt(e,r)}case "div":{let e=h(n.right,t);if(e===null||e.vars.length>0)return null;let r=e.terms.get("")??p;if(u(r))return null;let o=h(n.left,t);return o===null?null:Pn(o,S(y,r))}case "pow":{if(n.exponent.kind!=="const"||!P(n.exponent.value))return null;let e=Number(n.exponent.value.n),r=h(n.base,t);return r===null||!t&&r.terms.size>1?null:wt(r,e)}case "complex":return null;case "call":return null}}function _t(n,t,e){let r=pn(t)-pn(n);if(r!==0)return r;let o=T(n),i=T(t);for(let l of e){let a=(i.get(l)??0)-(o.get(l)??0);if(a!==0)return a}return 0}function Ot(n){let t=T(n),e=[...t.keys()].sort(),r=null;for(let o of e){let i=t.get(o),l=i===1?U(o):_n(U(o),s({n:BigInt(i),d:1n}));r=r===null?l:{kind:"mul",left:r,right:l};}return r??s(y)}function $n(n,t){if(n==="")return s(t);let e=t.n<0n?I(t):t,r=Ot(n),o=N(e)?r:{kind:"mul",left:s(e),right:r};return t.n<0n?{kind:"neg",operand:o}:o}function X(n){let t=[...n.terms.keys()].sort((r,o)=>_t(r,o,n.vars));if(t.length===0)return s(p);if(n.terms.get(t[0]).n<0n){let r=t.findIndex(o=>n.terms.get(o).n>0n);r>0&&t.unshift(...t.splice(r,1));}let e=$n(t[0],n.terms.get(t[0]));for(let r=1;r<t.length;r++){let o=n.terms.get(t[r]);o.n<0n?e={kind:"sub",left:e,right:$n(t[r],I(o))}:e={kind:"add",left:e,right:$n(t[r],o)};}return e}function ke(n){let t=h(n);return t===null?n:X(t)}function F(n){let t=n.length-1;for(;t>=0&&u(n[t]);)t--;return n.slice(0,t+1)}function Ae(n){return n.every(u)}function yn(n,t){let e=F([...n]),r=F([...t]);if(r.length===0)throw new Error("polynomialDivide: division by the zero polynomial");let o=r.length-1,i=r[o],l=[...e],a=new Array(Math.max(0,e.length-o)).fill(p);for(let c=l.length-1;c>=o;c--){if(u(l[c]))continue;let f=S(l[c],i),m=c-o;a[m]=f;for(let x=0;x<=o;x++)l[m+x]=C(l[m+x],d(f,r[x]));}return {quotient:F(a),remainder:F(l)}}function xn(n){let t=F(n);if(t.length===0)return t;let e=t[t.length-1];return N(e)?t:t.map(r=>S(r,e))}function it(n,t){let e=F([...n]),r=F([...t]);for(;r.length>0;){let{remainder:o}=yn(e,r);e=r,r=o;}return xn(e)}function $t(n,t){let e=Pt(n,t);if(e===void 0)return null;if(e===null)return h({kind:"const",value:y});let r=it(H(n,e),H(t,e));return Tn(r,e)}function Pt(n,t){let e=new Set([...n.vars,...t.vars]);if(e.size===0)return null;if(!(e.size>1))return [...e][0]}function Tn(n,t){let e=new Map;return n.forEach((r,o)=>{u(r)||e.set(o===0?"":o===1?t:`${t}^${o}`,r);}),{terms:e,vars:e.size>0&&n.length>1?[t]:[]}}function Tt(n,t){let e=$t(n,t);if(e===null||gn(e)===0)return null;let r=ot(e);if(r===null)return null;let o=H(e,r),i=yn(H(n,r),o),l=yn(H(t,r),o);return {numerator:Tn(i.quotient,r),denominator:Tn(l.quotient,r)}}function lt(n){if(n.kind!=="div")return n;let t=h(n.left),e=h(n.right);if(t===null||e===null)return n;let r=Tt(t,e);return r===null?n:Lt(r.numerator,r.denominator,n)}function Lt(n,t,e){if(gn(t)===0){let r=t.terms.get("")??y;if(u(r))return e;let o=new Map;for(let[i,l]of n.terms)o.set(i,S(l,r));return X({terms:o,vars:n.vars})}return {kind:"div",left:X(n),right:X(t)}}function we(n){let t=F([...n]);if(t.length<=1)return xn(t);let e=[];for(let o=1;o<t.length;o++)e.push(d(t[o],{n:BigInt(o),d:1n}));let r=it(t,e);return r.length<=1?xn(t):xn(yn(t,r).quotient)}function en(n){if(n<0n)return null;if(n<2n)return n;let t=n,e=(n+1n)/2n;for(;e<t;)t=e,e=(t+n/t)/2n;return t*t===n?t:null}function Ln(n){let t=n<0n,e=t?-n:n;if(e<2n)return t?-e:e;let r=1n,o=e;for(;r<=o;){let i=(r+o)/2n,l=i*i*i;if(l===e)return t?-i:i;l<e?r=i+1n:o=i-1n;}return null}function Pe(n){let t=en(n.n),e=en(n.d);return t===null||e===null?null:{n:t,d:e}}function Bt(n){let t=n.n*n.d,e=1n,r=t;for(let l=2n;l*l<=r;l++){let a=l*l;for(;r%a===0n;)r/=a,e*=l;}let o=Sn(e,n.d);if(r===1n)return s(o);let i={kind:"call",name:"sqrt",args:[s({n:r,d:1n})]};return o.n===1n&&o.d===1n?i:{kind:"mul",left:s(o),right:i}}function Te(n){return n.n>=0n?Bt(n):{kind:"call",name:"sqrt",args:[s(n)]}}function G(n,t,e,r=0){if(r>=ct)return false;switch(n.kind){case "add":return G(n.left,t,e,r+1)&&G(n.right,t,e,r+1);case "sub":return G(n.left,t,e,r+1)&&G(n.right,!t,e,r+1);case "neg":return G(n.operand,!t,e,r+1);case "const":return e.push({coeff:t?I(n.value):n.value,name:null}),true;case "var":return e.push({coeff:t?Z:y,name:n.name}),true;default:return false}}function Vt(n){let t=[];if(!G(n,false,t))return n;let e=[],r=new Map,o=p;for(let a of t){if(a.name===null){o=b(o,a.coeff);continue}let c=r.get(a.name);c===void 0?(e.push(a.name),r.set(a.name,a.coeff)):r.set(a.name,b(c,a.coeff));}let i=[];for(let a of e){let c=r.get(a);u(c)||(N(c)?i.push(U(a)):nn(c)?i.push({kind:"neg",operand:U(a)}):i.push({kind:"mul",left:s(c),right:U(a)}));}if(i.length===0)return s(o);let l=i[0];for(let a=1;a<i.length;a++)l={kind:"add",left:l,right:i[a]};return u(o)||(l={kind:"add",left:l,right:s(o)}),l}function at(n){let t=h(n,false);return t!==null?X(t):Vt(n)}function Bn(n){let t=n.n/n.d;return n.n<0n&&t*n.d!==n.n?t-1n:t}var Ut=500n;function Ft(n,t){let e=t[0];switch(n){case "abs":return t.length===1?e.n<0n?I(e):e:null;case "sign":return t.length!==1?null:e.n===0n?p:{n:e.n<0n?-1n:1n,d:1n};case "floor":return t.length===1?{n:Bn(e),d:1n}:null;case "ceil":return t.length===1?{n:-Bn(I(e)),d:1n}:null;case "trunc":return t.length===1?{n:e.n/e.d,d:1n}:null;case "round":return t.length===1?{n:Bn(b(e,{n:1n,d:2n})),d:1n}:null;case "sqrt":{if(t.length!==1||e.n<0n)return null;let r=en(e.n),o=en(e.d);return r===null||o===null?null:{n:r,d:o}}case "cbrt":{if(t.length!==1)return null;let r=Ln(e.n),o=Ln(e.d);return r===null||o===null?null:{n:r,d:o}}case "sin":case "tan":case "asin":case "atan":case "sinh":case "tanh":return t.length===1&&u(e)?p:null;case "cos":case "exp":case "cosh":return t.length===1&&u(e)?y:null;case "log":return t.length===1&&N(e)?p:null;case "acos":return t.length===1&&N(e)?p:null;case "fact":{if(t.length!==1||!P(e)||e.n<0n||e.n>Ut)return null;let r=1n;for(let o=2n;o<=e.n;o++)r*=o;return {n:r,d:1n}}default:return null}}function M(n){if(On(n,j)>j)throw chunkCO2BI6WL_cjs.c.execution("SYMBOLIC_NODE_LIMIT_EXCEEDED",`This symbolic expression is too large to simplify (over ${j} terms).`,{limit:j});let t=rn;try{return g(n)}finally{rn=t;}}var ct=900,rn=0;function g(n){if(rn>=ct)return n;rn++;let t=qt(n);return rn--,t}function Vn(n){return n.kind==="complex"?n.value:n.kind==="const"?cn(n.value):null}function bn(n,t,e){if(t.kind!=="complex"&&e.kind!=="complex")return null;let r=Vn(t),o=Vn(e);if(r===null||o===null)return null;switch(n){case "add":return A(Dn(r,o));case "sub":return A(En(r,o));case "mul":return A(tn(r,o));case "div":return K(o)?null:A(sn(r,o))}}function Yt(n,t){if(t.length!==1)return null;let e=Vn(t[0]);if(e===null)return null;switch(n){case "sqrt":{let r=dn(e);return r!==null?A(r):u(e.im)&&e.re.n<0n?{kind:"mul",left:{kind:"call",name:"sqrt",args:[s(I(e.re))]},right:A(kn)}:null}case "conj":return A(An(e));case "re":return s(e.re);case "im":return s(e.im);case "abs":{if(u(e.im))return null;let r=dn(cn(un(e)));return r===null||!u(r.im)?null:s(r.re)}default:return null}}function qt(n){switch(n.kind){case "const":case "complex":case "var":return n;case "neg":{let t=g(n.operand);return t.kind==="const"?s(I(t.value)):t.kind==="complex"?A(Cn(t.value)):t.kind==="neg"?t.operand:{kind:"neg",operand:t}}case "add":{let t=g(n.left),e=g(n.right);if(t.kind==="const"&&e.kind==="const")return s(b(t.value,e.value));let r=bn("add",t,e);return r!==null?r:t.kind==="const"&&u(t.value)?e:e.kind==="const"&&u(e.value)?t:at({kind:"add",left:t,right:e})}case "sub":{let t=g(n.left),e=g(n.right);if(t.kind==="const"&&e.kind==="const")return s(C(t.value,e.value));let r=bn("sub",t,e);return r!==null?r:e.kind==="const"&&u(e.value)?t:t.kind==="const"&&u(t.value)?g({kind:"neg",operand:e}):at({kind:"sub",left:t,right:e})}case "mul":{let t=g(n.left),e=g(n.right);if(t.kind==="const"&&e.kind==="const")return s(d(t.value,e.value));let r=bn("mul",t,e);return r!==null?r:t.kind==="const"&&u(t.value)||e.kind==="const"&&u(e.value)?s(p):t.kind==="const"&&N(t.value)?e:e.kind==="const"&&N(e.value)?t:t.kind==="const"&&nn(t.value)?g({kind:"neg",operand:e}):e.kind==="const"&&nn(e.value)?g({kind:"neg",operand:t}):t.kind==="const"&&e.kind==="mul"&&e.left.kind==="const"?g({kind:"mul",left:s(d(t.value,e.left.value)),right:e.right}):e.kind==="const"&&t.kind==="mul"&&t.left.kind==="const"?g({kind:"mul",left:s(d(e.value,t.left.value)),right:t.right}):t.kind==="div"&&t.left.kind==="const"&&N(t.left.value)?g({kind:"div",left:e,right:t.right}):e.kind==="div"&&e.left.kind==="const"&&N(e.left.value)?g({kind:"div",left:t,right:e.right}):{kind:"mul",left:t,right:e}}case "div":{let t=g(n.left),e=g(n.right);if(t.kind==="const"&&e.kind==="const"&&!u(e.value))return s(S(t.value,e.value));let r=bn("div",t,e);if(r!==null)return r;if(e.kind==="const"&&N(e.value))return t;if(t.kind==="const"&&u(t.value))return s(p);if(t.kind==="mul"){if(E(t.left,e))return t.right;if(E(t.right,e))return t.left}let o=lt({kind:"div",left:t,right:e});if(o.kind!=="div"||o.left!==t||o.right!==e)return g(o);if(t.kind==="neg"&&t.operand.kind==="mul"){let i=t.operand;if(E(i.left,e))return g({kind:"neg",operand:i.right});if(E(i.right,e))return g({kind:"neg",operand:i.left})}return {kind:"div",left:t,right:e}}case "pow":{let t=g(n.base),e=g(n.exponent);if(e.kind==="const"){if(u(e.value))return s(y);if(N(e.value))return t;if(t.kind==="const"&&P(e.value))return s(vn(t.value,e.value.n));if(t.kind==="complex"&&P(e.value))return A(fn(t.value,e.value.n))}return t.kind==="const"&&N(t.value)?s(y):t.kind==="const"&&u(t.value)&&e.kind==="const"&&e.value.n>0n?s(p):t.kind==="pow"&&t.exponent.kind==="const"&&e.kind==="const"&&P(t.exponent.value)&&P(e.value)?g({kind:"pow",base:t.base,exponent:s(d(t.exponent.value,e.value))}):{kind:"pow",base:t,exponent:e}}case "call":{let t=n.args.map(g);if(t.every(r=>r.kind==="const")){let r=Ft(n.name,t.map(o=>o.value));if(r!==null)return s(r)}let e=Yt(n.name,t);return e!==null?e:{kind:"call",name:n.name,args:t}}}}function Xt(n){return n.left.kind==="const"&&n.right.kind==="var"?{coeff:n.left.value,name:n.right.name}:n.right.kind==="const"&&n.left.kind==="var"?{coeff:n.right.value,name:n.left.name}:null}function Zt(n){return n.left.kind==="const"&&n.right.kind==="pow"?{coeff:n.left.value,power:n.right}:n.right.kind==="const"&&n.left.kind==="pow"?{coeff:n.right.value,power:n.left}:null}function st(n){return n.kind==="var"||n.kind==="call"?true:n.kind==="const"&&n.value.n>=0n}function Un(n,t){return n.n===1n&&n.d===1n?t:n.n===-1n&&n.d===1n?`-${t}`:`${D(n)}${t}`}var ut=600,Fn="...";function w(n,t){if(t>=ut)return Fn;switch(n.kind){case "const":return D(n.value);case "complex":return n.value.re.n!==0n&&n.value.im.n!==0n?`(${mn(n.value)})`:mn(n.value);case "var":return n.name;case "add":case "sub":return `(${on(n,t)})`;case "neg":return `-${w(n.operand,t+1)}`;case "call":return `${n.name}(${n.args.map(e=>on(e,t+1)).join(", ")})`;case "pow":{let e=st(n.base)?w(n.base,t+1):`(${on(n.base,t+1)})`,r=st(n.exponent)?w(n.exponent,t+1):`(${on(n.exponent,t+1)})`;return `${e}^${r}`}case "mul":{let e=Xt(n);if(e)return Un(e.coeff,e.name);let r=Zt(n);if(r)return Un(r.coeff,w(r.power,t+1));if(n.left.kind==="const"&&n.right.kind==="mul"){let o=w(n.right,t+1);if(!/^[\d.]/.test(o))return Un(n.left.value,o)}return `${w(n.left,t+1)}*${w(n.right,t+1)}`}case "div":{let e=w(n.right,t+1),r=n.right.kind==="mul"||n.right.kind==="div";return `${w(n.left,t+1)}/${r?`(${e})`:e}`}}}function W(n,t,e,r){if(r>=ut){e.push({negated:t,text:Fn});return}switch(n.kind){case "add":W(n.left,t,e,r+1),W(n.right,t,e,r+1);return;case "sub":W(n.left,t,e,r+1),W(n.right,!t,e,r+1);return;case "neg":W(n.operand,!t,e,r+1);return;case "const":{if(n.value.n===0n)return;let o=n.value.n<0n,i=o?{n:-n.value.n,d:n.value.d}:n.value;e.push({negated:o!==t,text:D(i)});return}case "complex":{let{re:o,im:i}=n.value;if(o.n!==0n){let l=o.n<0n;e.push({negated:l!==t,text:D(l?{n:-o.n,d:o.d}:o)});}if(i.n!==0n){let l=i.n<0n,a=l?{n:-i.n,d:i.d}:i,c=a.n===1n&&a.d===1n?"i":`${D(a)}i`;e.push({negated:l!==t,text:c});}return}default:{let o=w(n,r);(n.kind==="mul"||n.kind==="div")&&o.startsWith("-")?e.push({negated:!t,text:o.slice(1)}):e.push({negated:t,text:o});}}}function Kt(n){try{return on(n,0)}catch(t){if(t instanceof RangeError)return Fn;throw t}}function on(n,t){let e=[];if(W(n,false,e,t),e.length===0)return "0";let r="";return e.forEach((o,i)=>{i===0?r+=o.negated?`-${o.text}`:o.text:r+=o.negated?`-${o.text}`:`+${o.text}`;}),r}function ar(n,t){return n.data[t]}function _(n,t,e){return n.data[t+e*n.rows]}function cr(n,t,e){return t>=0&&t<n.rows&&e>=0&&e<n.cols}function jt(n,t){return n.rows===t.rows&&n.cols===t.cols}function Xn(n){return n.rows===n.cols}function Q(n){return typeof n=="object"&&n!==null?n:typeof n=="boolean"?s(n?1:0):s(n)}function qn(n){let t=M(n);return t.kind==="const"?J(t.value):t}function Ht(n){return typeof n=="boolean"?chunk75JLWK4L_cjs.L(n):typeof n=="object"&&n!==null?chunk75JLWK4L_cjs.K(n):chunk75JLWK4L_cjs.n(n)}function sr(n,t,e){let r=new Array(n*t);for(let o=0;o<n;o++)for(let i=0;i<t;i++)r[o+i*n]=e[o*t+i];return r}function ur(n){let t=new Array(n.rows*n.cols);for(let e=0;e<n.rows;e++)for(let r=0;r<n.cols;r++)t[e*n.cols+r]=_(n,e,r);return t}function ft(n,t){let e=n.rows===1&&n.cols===1,r=t.rows===1&&t.cols===1,o=n.hasSymbolic||t.hasSymbolic;if(e||r){let[c,f]=e?[n,t]:[t,n];if(o){let L=Q(c.data[0]),Rn=f.data.map(Nt=>qn(M({kind:"mul",left:Q(Nt),right:L})));return chunk75JLWK4L_cjs.C(f.rows,f.cols,Rn)}let m=c.data[0],x=f.data.map(L=>L*m);return chunk75JLWK4L_cjs.C(f.rows,f.cols,x)}if(n.cols!==t.rows)return chunk75JLWK4L_cjs.P("DIMENSION_MISMATCH",`Cannot multiply a ${n.rows}x${n.cols} matrix by a ${t.rows}x${t.cols} matrix \u2014 inner dimensions must match (${n.cols} !== ${t.rows}).`);let i=n.rows,l=t.cols,a=chunk75JLWK4L_cjs.e(i*l,"matrix cells");for(let c=0;c<i;c++)for(let f=0;f<l;f++)if(o){let m=s(0);for(let x=0;x<n.cols;x++){let L={kind:"mul",left:Q(_(n,c,x)),right:Q(_(t,x,f))};m=M({kind:"add",left:m,right:L});}a[c+f*i]=qn(m);}else {let m=0;for(let x=0;x<n.cols;x++)m+=_(n,c,x)*_(t,x,f);a[c+f*i]=m;}return chunk75JLWK4L_cjs.C(i,l,a)}function fr(n,t){if(!Xn(n))return chunk75JLWK4L_cjs.P("MATRIX_POWER_REQUIRES_SQUARE_MATRIX",`^: only a square matrix can be raised to a power (got ${n.rows}x${n.cols}).`);if(!Number.isInteger(t)||t<0)return chunk75JLWK4L_cjs.P("MATRIX_POWER_REQUIRES_WHOLE_EXPONENT",`^: a matrix can only be raised to a whole number of 0 or more (got ${t}); "^-1" means the inverse and "^T" the transpose.`);let e=n.rows,r=new Array(e*e).fill(0);for(let a=0;a<e;a++)r[a+a*e]=1;let o={rows:e,cols:e,data:r,hasSymbolic:false},i=n,l=t;for(;l>0;){if(l%2===1){let a=ft(o,i);if(a.type===13)return a;o=a.value;}if(l=Math.floor(l/2),l>0){let a=ft(i,i);if(a.type===13)return a;i=a.value;}}return chunk75JLWK4L_cjs.C(o.rows,o.cols,o.data)}function mr(n,t,e){if(!jt(n,t))return chunk75JLWK4L_cjs.P("DIMENSION_MISMATCH",`Cannot compare matrices of different shapes: ${n.rows}x${n.cols} and ${t.rows}x${t.cols}`);let r=new Array(n.data.length);for(let o=0;o<n.data.length;o++)r[o]=e(n.data[o],t.data[o]);return chunk75JLWK4L_cjs.C(n.rows,n.cols,r)}function dr(n){let t=new Array(n.rows*n.cols);for(let e=0;e<n.cols;e++)for(let r=0;r<n.rows;r++)t[e+r*n.cols]=_(n,r,e);return chunk75JLWK4L_cjs.C(n.cols,n.rows,t)}function dt(n){let t=[];for(let e=0;e<n.rows;e++){let r=[];for(let o=0;o<n.cols;o++)r.push(_(n,e,o));t.push(r);}return t}var Gt=12;function Wt(n){if(n.rows>Gt)return null;let t=[];for(let e=0;e<n.rows;e++){let r=[];for(let o=0;o<n.cols;o++){let i=_(n,e,o);if(typeof i!="number"||!Number.isSafeInteger(i))return null;r.push(BigInt(i));}t.push(r);}return t}function Qt(n){let t=n.length,e=1n,r=1n;for(let o=0;o<t-1;o++){if(n[o][o]===0n){let i=-1;for(let a=o+1;a<t;a++)if(n[a][o]!==0n){i=a;break}if(i===-1)return 0n;let l=n[o];n[o]=n[i],n[i]=l,r=-r;}for(let i=o+1;i<t;i++)for(let l=o+1;l<t;l++)n[i][l]=(n[i][l]*n[o][o]-n[i][o]*n[o][l])/e;e=n[o][o];}return r*n[t-1][t-1]}function zt(n){let t=Wt(n);if(t!==null)return chunk75JLWK4L_cjs.n(Number(Qt(t)));let e=n.rows,r=dt(n),o=1;for(let i=0;i<e;i++){let l=i,a=Math.abs(r[i][i]);for(let c=i+1;c<e;c++)Math.abs(r[c][i])>a&&(a=Math.abs(r[c][i]),l=c);if(a===0)return chunk75JLWK4L_cjs.n(0);if(l!==i){let c=r[i];r[i]=r[l],r[l]=c,o=-o;}o*=r[i][i];for(let c=i+1;c<e;c++){let f=r[c][i]/r[i][i];if(f!==0)for(let m=i;m<e;m++)r[c][m]-=f*r[i][m];}}return chunk75JLWK4L_cjs.n(o)}function Jt(n){let t=n.rows,e=[];for(let o=0;o<t;o++){let i=[];for(let l=0;l<t;l++)i.push(Q(_(n,o,l)));e.push(i);}let r=s(1);for(let o=0;o<t;o++){let i=M(e[o][o]);if(i.kind==="const"&&u(i.value))return chunk75JLWK4L_cjs.n(0);r=M({kind:"mul",left:r,right:i});for(let l=o+1;l<t;l++){let a=M({kind:"div",left:e[l][o],right:i});for(let c=o;c<t;c++)e[l][c]=M({kind:"sub",left:e[l][c],right:{kind:"mul",left:a,right:e[o][c]}});}}return r.kind==="const"?chunk75JLWK4L_cjs.n(J(r.value)):chunk75JLWK4L_cjs.K(r)}function pr(n){return Xn(n)?n.hasSymbolic?Jt(n):zt(n):chunk75JLWK4L_cjs.P("DETERMINANT_REQUIRES_SQUARE_MATRIX",`det: matrix must be square (got ${n.rows}x${n.cols}).`)}function ne(n){let t=n.rows,e=dt(n);for(let o=0;o<t;o++)for(let i=0;i<t;i++)e[o].push(i===o?1:0);for(let o=0;o<t;o++){let i=o,l=Math.abs(e[o][o]);for(let c=o+1;c<t;c++)Math.abs(e[c][o])>l&&(l=Math.abs(e[c][o]),i=c);if(l<1e-10)return chunk75JLWK4L_cjs.P("SINGULAR_MATRIX",`inv: a ${t}x${t} matrix with a zero (or near-zero) pivot column is not invertible.`);if(i!==o){let c=e[o];e[o]=e[i],e[i]=c;}let a=e[o][o];for(let c=0;c<2*t;c++)e[o][c]/=a;for(let c=0;c<t;c++){if(c===o)continue;let f=e[c][o];if(f!==0)for(let m=0;m<2*t;m++)e[c][m]-=f*e[o][m];}}let r=new Array(t*t);for(let o=0;o<t;o++)for(let i=0;i<t;i++)r[o+i*t]=e[o][t+i];return chunk75JLWK4L_cjs.C(t,t,r)}var Yn=9;function te(n){let t=n.rows;if(t>=Yn)return chunk75JLWK4L_cjs.P("SYMBOLIC_INVERSE_DIMENSION_LIMIT",`Symbolic matrix inversion is limited to matrices smaller than ${Yn}x${Yn} (got ${t}x${t}).`);let e=[];for(let o=0;o<t;o++){let i=[];for(let l=0;l<t;l++)i.push(Q(_(n,o,l)));for(let l=0;l<t;l++)i.push(s(l===o?1:0));e.push(i);}for(let o=0;o<t;o++){let i=M(e[o][o]);if(i.kind==="const"&&u(i.value))return chunk75JLWK4L_cjs.P("SYMBOLIC_SINGULAR_OR_UNSUPPORTED_PIVOT",`Symbolic inverse: the pivot at row/col ${o} is exactly zero \u2014 this matrix's structure isn't invertible via this engine's diagonal-first symbolic elimination (no row-swapping); try reordering rows manually.`);for(let l=0;l<t;l++){if(l===o)continue;let a=M({kind:"div",left:e[l][o],right:i});if(!(a.kind==="const"&&u(a.value)))for(let c=0;c<2*t;c++)e[l][c]=M({kind:"sub",left:e[l][c],right:{kind:"mul",left:a,right:e[o][c]}});}for(let l=0;l<2*t;l++)e[o][l]=M({kind:"div",left:e[o][l],right:i});}let r=new Array(t*t);for(let o=0;o<t;o++)for(let i=0;i<t;i++)r[o+i*t]=qn(e[o][t+i]);return chunk75JLWK4L_cjs.C(t,t,r)}function gr(n){return Xn(n)?n.hasSymbolic?te(n):ne(n):chunk75JLWK4L_cjs.P("INVERSE_REQUIRES_SQUARE_MATRIX",`inv: matrix must be square (got ${n.rows}x${n.cols}).`)}function mt(n,t){return chunk75JLWK4L_cjs.P("COLLECTION_TOO_LARGE",`This collection has ${n} elements, past the limit of ${t} (see the engine's vm.maxCollectionSize setting).`)}function xr(n,t=Number.POSITIVE_INFINITY){let e=chunk75JLWK4L_cjs.Q(n);if(e)return e;if(n.type===7){let r=n.value;return r.data.length>t?mt(r.data.length,t):r.data.map(Ht)}if(n.type===8){let r=n.value,o=r.max-r.min+1;if(o>t)return mt(o,t);let i=new Array(o);for(let l=0;l<o;l++)i[l]=chunk75JLWK4L_cjs.n(r.min+l);return i}return chunk75JLWK4L_cjs.P("MAP_REDUCE_REQUIRES_COLLECTION",'map/reduce requires a Matrix or Range collection (e.g. "[1,2,3]" or "0:3").')}var pt=20,Nn=[1n];function z(n){if(n<0)throw chunkCO2BI6WL_cjs.c.internal("DECIMAL_NEGATIVE_POWER",`pow10 needs a non-negative exponent, got ${n}`,{exponent:n});for(let t=Nn.length;t<=n;t++)Nn[t]=Nn[t-1]*10n;return Nn[n]}function ee(n,t){if(!Number.isInteger(t)||t<0)throw chunkCO2BI6WL_cjs.c.internal("DECIMAL_INVALID_SCALE",`A decimal scale must be a non-negative integer, got ${t}`,{scale:t});return {coef:n,scale:t}}function gt(n){return {coef:typeof n=="bigint"?n:BigInt(n),scale:0}}function re(n){return !Number.isFinite(n)||!Number.isInteger(n)?null:gt(BigInt(n))}function oe(n){let t=n,e=false;t.startsWith("-")?(e=true,t=t.slice(1)):t.startsWith("+")&&(t=t.slice(1));let r=t.indexOf("."),o=r<0?t:t.slice(0,r),i=r<0?"":t.slice(r+1),l=o+i||"0";if(!/^[0-9]+$/.test(l))throw chunkCO2BI6WL_cjs.c.parsing("INVALID_DECIMAL_LITERAL",`Not a decimal literal: "${n}"`,{raw:n});let a=BigInt(l);return e&&(a=-a),{coef:a,scale:i.length}}function Zn(n,t){return n.scale===t.scale?{ca:n.coef,cb:t.coef,scale:n.scale}:n.scale>t.scale?{ca:n.coef,cb:t.coef*z(n.scale-t.scale),scale:n.scale}:{ca:n.coef*z(t.scale-n.scale),cb:t.coef,scale:t.scale}}function ie(n,t){let{ca:e,cb:r,scale:o}=Zn(n,t);return {coef:e+r,scale:o}}function le(n,t){let{ca:e,cb:r,scale:o}=Zn(n,t);return {coef:e-r,scale:o}}function ae(n,t){return {coef:n.coef*t.coef,scale:n.scale+t.scale}}function ce(n){return {coef:-n.coef,scale:n.scale}}function xt(n){return n.coef===0n}function se(n,t,e){if(e>=t)return n*z(e-t);let r=z(t-e),o=n<0n,i=o?-n:n,l=i/r;return i%r*2n>=r&&(l+=1n),o?-l:l}function yt(n,t){return {coef:se(n.coef,n.scale,t),scale:t}}function ue(n,t,e=pt){if(xt(t))throw chunkCO2BI6WL_cjs.c.internal("DECIMAL_DIVISION_BY_ZERO","decimalDivide was called with a zero divisor",{});let r=e,o=n.coef*z(r+t.scale),i=t.coef*z(n.scale),l=o<0n!=i<0n,a=o<0n?-o:o,c=i<0n?-i:i,f=a/c;return a%c*2n>=c&&(f+=1n),{coef:l?-f:f,scale:r}}function fe(n,t){let{ca:e,cb:r}=Zn(n,t);return e<r?-1:e>r?1:0}function bt(n){let t=n.coef<0n,e=(t?-n.coef:n.coef).toString();if(n.scale===0)return t?`-${e}`:e;e.length<=n.scale&&(e=e.padStart(n.scale+1,"0"));let r=e.length-n.scale,o=e.slice(0,r),i=e.slice(r);return `${t?"-":""}${o}.${i}`}function me(n){return Number(bt(n))}function de(n,t){let e=yt(n,t),r=e.coef<0n&&e.coef!==0n,o=(e.coef<0n?-e.coef:e.coef).toString();if(t===0)return r?`-${o}`:o;o.length<=t&&(o=o.padStart(t+1,"0"));let i=o.length-t,l=o.slice(0,i),a=o.slice(i);return `${r?"-":""}${l}.${a}`}var pe={$:"USD","\xA3":"GBP","\u20AC":"EUR","\xA5":"JPY","\u20BD":"RUB","\u20A9":"KRW","\u20B9":"INR","\u20BA":"TRY","\u20B4":"UAH","\u20AA":"ILS","\u20AB":"VND","\u20A6":"NGN","\u20B1":"PHP"},ge={dollar:"USD",dollars:"USD",euro:"EUR",euros:"EUR",yen:"JPY",ruble:"RUB",rubles:"RUB",rouble:"RUB",roubles:"RUB",won:"KRW",rupee:"INR",rupees:"INR",yuan:"CNY",renminbi:"CNY",franc:"CHF",francs:"CHF",rand:"ZAR",krona:"SEK",kronor:"SEK",krone:"NOK",kroner:"NOK",real:"BRL",reais:"BRL",peso:"MXN",pesos:"MXN",shekel:"ILS",shekels:"ILS",lira:"TRY",hryvnia:"UAH",hryvnias:"UAH",zloty:"PLN",zlotys:"PLN",forint:"HUF",koruna:"CZK",dirham:"AED",dirhams:"AED",riyal:"SAR",riyals:"SAR",rial:"SAR",rials:"SAR",ringgit:"MYR",rupiah:"IDR",baht:"THB",dong:"VND",naira:"NGN"};function Sr(n){return pe[n]??ge[n.toLowerCase()]}var Ir={USD:{symbol:"$",position:"prefix",spaced:false},AUD:{symbol:"$",position:"prefix",spaced:false},CAD:{symbol:"$",position:"prefix",spaced:false},NZD:{symbol:"$",position:"prefix",spaced:false},HKD:{symbol:"$",position:"prefix",spaced:false},SGD:{symbol:"$",position:"prefix",spaced:false},MXN:{symbol:"$",position:"prefix",spaced:false},GBP:{symbol:"\xA3",position:"prefix",spaced:false},EUR:{symbol:"\u20AC",position:"prefix",spaced:false},JPY:{symbol:"\xA5",position:"prefix",spaced:false},CNY:{symbol:"\xA5",position:"prefix",spaced:false},KRW:{symbol:"\u20A9",position:"prefix",spaced:false},INR:{symbol:"\u20B9",position:"prefix",spaced:false},RUB:{symbol:"\u20BD",position:"suffix",spaced:true},TRY:{symbol:"\u20BA",position:"prefix",spaced:false},UAH:{symbol:"\u20B4",position:"suffix",spaced:true},ILS:{symbol:"\u20AA",position:"prefix",spaced:false},VND:{symbol:"\u20AB",position:"suffix",spaced:false},NGN:{symbol:"\u20A6",position:"prefix",spaced:false},PHP:{symbol:"\u20B1",position:"prefix",spaced:false},BRL:{symbol:"R$",position:"prefix",spaced:false},ZAR:{symbol:"R",position:"prefix",spaced:false},SEK:{symbol:"kr",position:"suffix",spaced:true},NOK:{symbol:"kr",position:"suffix",spaced:true},DKK:{symbol:"kr",position:"suffix",spaced:true},PLN:{symbol:"z\u0142",position:"suffix",spaced:true},CHF:{symbol:"Fr",position:"suffix",spaced:true},HUF:{symbol:"Ft",position:"suffix",spaced:true},CZK:{symbol:"K\u010D",position:"suffix",spaced:true}};exports.$=fr;exports.A=ot;exports.B=H;exports.C=h;exports.D=_t;exports.E=X;exports.F=ke;exports.G=Ae;exports.H=yn;exports.I=it;exports.J=lt;exports.K=we;exports.L=en;exports.M=Ln;exports.N=Pe;exports.O=Bt;exports.P=Te;exports.Q=M;exports.R=Kt;exports.S=ar;exports.T=_;exports.U=cr;exports.V=jt;exports.W=qn;exports.X=Ht;exports.Y=sr;exports.Z=ur;exports._=ft;exports.a=p;exports.aa=mr;exports.b=y;exports.ba=dr;exports.c=Sn;exports.ca=pr;exports.d=In;exports.da=gr;exports.e=J;exports.ea=xr;exports.f=b;exports.fa=ee;exports.g=C;exports.ga=gt;exports.h=d;exports.ha=re;exports.i=S;exports.ia=oe;exports.j=I;exports.ja=ie;exports.k=It;exports.ka=le;exports.l=u;exports.la=ae;exports.m=N;exports.ma=ce;exports.n=kn;exports.na=xt;exports.o=cn;exports.oa=yt;exports.p=s;exports.pa=ue;exports.q=U;exports.qa=fe;exports.r=_n;exports.ra=me;exports.s=Mt;exports.sa=de;exports.t=v;exports.ta=Sr;exports.u=kt;exports.ua=Ir;exports.v=q;exports.w=A;exports.x=Ct;exports.y=T;exports.z=gn;//# sourceMappingURL=chunk-J7ABVGZH.cjs.map
2
- //# sourceMappingURL=chunk-J7ABVGZH.cjs.map
1
+ 'use strict';var chunkDA7M6H63_cjs=require('./chunk-DA7M6H63.cjs'),chunkELQQKZN3_cjs=require('./chunk-ELQQKZN3.cjs');var p={n:0n,d:1n},y={n:1n,d:1n},Z={n:-1n,d:1n},ln=4096,Gn=1n<<BigInt(ln);function V(n,t){let e=1n,r=n,o=t;for(;o>0n;)o%2n===1n&&(e*=r),r*=r,o/=2n;return e}function Rt(n,t){let e=n<0n?-n:n,r=t<0n?-t:t;for(;r!==0n;){let o=e%r;e=r,r=o;}return e}function ht(n,t){if((n<0n?-n:n)>=Gn||t>=Gn)throw chunkELQQKZN3_cjs.c.execution("SYMBOLIC_RATIONAL_OVERFLOW",`This calculation produced a fraction too large to represent exactly (over ${ln} bits).`,{limitBits:ln})}function $(n,t){if(t===0n)throw chunkELQQKZN3_cjs.c.execution("SYMBOLIC_DIVISION_BY_ZERO","Division by zero in a symbolic expression.");if(n===0n)return p;let e=t<0n?-n:n,r=t<0n?-t:t,o=Rt(e,r);return e/=o,r/=o,ht(e,r),{n:e,d:r}}function Sn(n,t=1n){return $(n,t)}var St=/^(-?)(\d+)(?:\.(\d+))?(?:[eE]([+-]?\d+))?$/;function In(n){if(!Number.isFinite(n))throw chunkELQQKZN3_cjs.c.execution("SYMBOLIC_NONFINITE_OPERAND",`"${String(n)}" has no exact value, so it cannot appear in a symbolic expression.`,{value:String(n)});if(Number.isInteger(n))return $(BigInt(n),1n);let t=St.exec(String(n));if(t===null)throw chunkELQQKZN3_cjs.c.internal("INTERNAL_RATIONAL_PARSE",`Internal error: could not read "${String(n)}" as a decimal number.`,{value:String(n)});let[,e,r,o="",i]=t,l=BigInt(r+o),a=V(10n,BigInt(o.length)),c=i===void 0?0:Number(i);return c>0?l*=V(10n,BigInt(c)):c<0&&(a*=V(10n,BigInt(-c))),$(e==="-"?-l:l,a)}function J(n){if(n.d===1n)return Number(n.n);let t=Number(n.n)/Number(n.d);return Number.isNaN(t)?Number((n.n<<64n)/n.d)/2**64:t}function b(n,t){return $(n.n*t.d+t.n*n.d,n.d*t.d)}function C(n,t){return $(n.n*t.d-t.n*n.d,n.d*t.d)}function d(n,t){return $(n.n*t.n,n.d*t.d)}function S(n,t){if(t.n===0n)throw chunkELQQKZN3_cjs.c.execution("SYMBOLIC_DIVISION_BY_ZERO","Division by zero in a symbolic expression.");return $(n.n*t.d,n.d*t.n)}function I(n){return n.n===0n?p:{n:-n.n,d:n.d}}function vn(n,t){if(t===0n)return y;if(t<0n){if(n.n===0n)throw chunkELQQKZN3_cjs.c.execution("SYMBOLIC_DIVISION_BY_ZERO","Zero raised to a negative power is undefined.");let e=-t;return $(V(n.d,e),V(n.n,e))}return $(V(n.n,t),V(n.d,t))}function It(n,t){let e=n.n*t.d,r=t.n*n.d;return e<r?-1:e>r?1:0}function u(n){return n.n===0n}function N(n){return n.n===1n&&n.d===1n}function nn(n){return n.n===-1n&&n.d===1n}function P(n){return n.d===1n}var vt=10,Wn=1000000n;function D(n){if(n.d===1n)return String(n.n);let t=n.d,e=0,r=0;for(;t%2n===0n;)t/=2n,e++;for(;t%5n===0n;)t/=5n,r++;let o=t===1n,i=Math.max(e,r);if(!o||i>vt)return (n.n<0n?-n.n:n.n)<=Wn&&n.d<=Wn?`${n.n}/${n.d}`:String(Math.round(J(n)*1e10)/1e10);let l=(n.n<0n?-n.n:n.n)*V(10n,BigInt(i))/n.d,a=String(l).padStart(i+1,"0"),c=a.slice(0,a.length-i),f=a.slice(a.length-i).replace(/0+$/,""),m=n.n<0n?"-":"";return f.length===0?`${m}${c}`:`${m}${c}.${f}`}var zn={re:p,im:p},an={re:y,im:p},kn={re:p,im:y};function cn(n,t=p){return {re:n,im:t}}function K(n){return u(n.re)&&u(n.im)}function Dn(n,t){return {re:b(n.re,t.re),im:b(n.im,t.im)}}function En(n,t){return {re:C(n.re,t.re),im:C(n.im,t.im)}}function tn(n,t){return {re:C(d(n.re,t.re),d(n.im,t.im)),im:b(d(n.re,t.im),d(n.im,t.re))}}function sn(n,t){if(K(t))throw chunkELQQKZN3_cjs.c.execution("SYMBOLIC_DIVISION_BY_ZERO","Division by zero in a complex expression.");let e=b(d(t.re,t.re),d(t.im,t.im));return {re:S(b(d(n.re,t.re),d(n.im,t.im)),e),im:S(C(d(n.im,t.re),d(n.re,t.im)),e)}}function Cn(n){return {re:I(n.re),im:I(n.im)}}function An(n){return {re:n.re,im:I(n.im)}}function un(n){return b(d(n.re,n.re),d(n.im,n.im))}function fn(n,t){if(t===0n)return an;if(t<0n){if(K(n))throw chunkELQQKZN3_cjs.c.execution("SYMBOLIC_DIVISION_BY_ZERO","Zero raised to a negative power is undefined.");return sn(an,fn(n,-t))}let e=an,r=n,o=t;for(;o>0n;)o%2n===1n&&(e=tn(e,r)),r=tn(r,r),o/=2n;return e}function wn(n,t){return n.re.n===t.re.n&&n.re.d===t.re.d&&n.im.n===t.im.n&&n.im.d===t.im.d}function mn(n){if(u(n.im))return D(n.re);let t=n.im.n<0n?I(n.im):n.im,e=N(t)?"i":`${D(t)}i`;return u(n.re)?n.im.n<0n?`-${e}`:e:n.im.n<0n?`${D(n.re)}-${e}`:`${D(n.re)}+${e}`}function dn(n){if(K(n))return zn;let t=Mn(un(n));if(t===null)return null;let e={n:2n,d:1n},r=Mn(S(b(t,n.re),e));if(r===null)return null;if(u(r)){let i=Mn(S(C(t,n.re),e));return i===null?null:{re:p,im:i}}let o=S(n.im,d(e,r));return {re:r,im:o}}function Mn(n){if(n.n<0n)return null;let t=Qn(n.n),e=Qn(n.d);return t===null||e===null?null:{n:t,d:e}}function Qn(n){if(n<0n)return null;if(n<2n)return n;let t=n,e=(n+1n)/2n;for(;e<t;)t=e,e=(t+n/t)/2n;return t*t===n?t:null}var j=1e4;function s(n){return {kind:"const",value:typeof n=="number"?In(n):n}}function U(n){return {kind:"var",name:n}}function _n(n,t){return {kind:"pow",base:n,exponent:t}}function Mt(n,t){return {kind:"call",name:n,args:t}}function v(n){switch(n.kind){case "const":return `${n.value.n}/${n.value.d}`;case "complex":return `C(${n.value.re.n}/${n.value.re.d},${n.value.im.n}/${n.value.im.d})`;case "var":return `v:${n.name}`;case "neg":return `-(${v(n.operand)})`;case "pow":return `^(${v(n.base)},${v(n.exponent)})`;case "call":return `${n.name}(${n.args.map(v).join(",")})`;case "add":return `+(${v(n.left)},${v(n.right)})`;case "sub":return `-(${v(n.left)},${v(n.right)})`;case "mul":return `*(${v(n.left)},${v(n.right)})`;case "div":return `/(${v(n.left)},${v(n.right)})`}}function E(n,t){if(n.kind!==t.kind)return false;switch(n.kind){case "const":{let e=t;return n.value.n===e.value.n&&n.value.d===e.value.d}case "complex":return wn(n.value,t.value);case "var":return n.name===t.name;case "neg":return E(n.operand,t.operand);case "pow":{let e=t;return E(n.base,e.base)&&E(n.exponent,e.exponent)}case "call":{let e=t;return n.name!==e.name||n.args.length!==e.args.length?false:n.args.every((r,o)=>E(r,e.args[o]))}case "add":case "sub":case "mul":case "div":{let e=t;return E(n.left,e.left)&&E(n.right,e.right)}}}function On(n,t=Number.POSITIVE_INFINITY){let e=[n],r=0;for(;e.length>0;){let o=e.pop();if(r++,r>t)return r;switch(o.kind){case "const":case "complex":case "var":break;case "neg":e.push(o.operand);break;case "pow":e.push(o.base,o.exponent);break;case "call":for(let i of o.args)e.push(i);break;case "add":case "sub":case "mul":case "div":e.push(o.left,o.right);break}}return r}function kt(n){let t=new Set;return Y(n,t),t}function Y(n,t){switch(n.kind){case "const":case "complex":return;case "var":t.add(n.name);return;case "neg":Y(n.operand,t);return;case "pow":Y(n.base,t),Y(n.exponent,t);return;case "call":for(let e of n.args)Y(e,t);return;case "add":case "sub":case "mul":case "div":Y(n.left,t),Y(n.right,t);}}function q(n,t,e){switch(n.kind){case "const":case "complex":return n;case "var":return n.name===t?e:n;case "neg":return {kind:"neg",operand:q(n.operand,t,e)};case "pow":return {kind:"pow",base:q(n.base,t,e),exponent:q(n.exponent,t,e)};case "call":return {kind:"call",name:n.name,args:n.args.map(r=>q(r,t,e))};case "add":case "sub":case "mul":case "div":return {kind:n.kind,left:q(n.left,t,e),right:q(n.right,t,e)}}}function A(n){return n.im.n===0n?{kind:"const",value:n.re}:{kind:"complex",value:n}}var Dt=32,Jn=2e3,Et=64;function Ct(n){return [...n.keys()].sort().map(e=>n.get(e)===1?e:`${e}^${n.get(e)}`).join("*")}function T(n){let t=new Map;if(n==="")return t;for(let e of n.split("*")){let r=e.indexOf("^");r===-1?t.set(e,1):t.set(e.slice(0,r),Number(e.slice(r+1)));}return t}function pn(n){let t=0;for(let e of T(n).values())t+=e;return t}function nt(n){let t=new Map,e=new Set;for(let[r,o]of n)if(!u(o)){if(pn(r)>Et)return null;t.set(r,o);for(let i of T(r).keys())e.add(i);}return t.size>Jn?null:{terms:t,vars:[...e].sort()}}function tt(n){return u(n)?{terms:new Map,vars:[]}:{terms:new Map([["",n]]),vars:[]}}function et(n,t){let e=new Map(n.terms);for(let[r,o]of t.terms){let i=e.get(r);e.set(r,i===void 0?o:b(i,o));}return nt(e)}function At(n,t){return et(n,Pn(t,Z))}function rt(n,t){if(n.terms.size*t.terms.size>Jn)return null;let e=new Map;for(let[r,o]of n.terms){let i=T(r);for(let[l,a]of t.terms){let c=new Map(i);for(let[L,Rn]of T(l))c.set(L,(c.get(L)??0)+Rn);let f=Ct(c),m=d(o,a),x=e.get(f);e.set(f,x===void 0?m:b(x,m));}}return nt(e)}function wt(n,t){if(t<0||!Number.isInteger(t)||t>Dt)return null;let e=tt(y);for(let r=0;r<t;r++){let o=rt(e,n);if(o===null)return null;e=o;}return e}function Pn(n,t){if(u(t))return {terms:new Map,vars:[]};let e=new Map;for(let[r,o]of n.terms)e.set(r,d(o,t));return {terms:e,vars:n.vars}}function gn(n,t){let e=0;for(let r of n.terms.keys()){let o=t===void 0?pn(r):T(r).get(t)??0;o>e&&(e=o);}return e}function ot(n){return n.vars.length===1?n.vars[0]:null}function H(n,t){let e=gn(n,t),r=new Array(e+1).fill(p);for(let[o,i]of n.terms)r[T(o).get(t)??0]=i;return r}function h(n,t=true){switch(n.kind){case "const":return tt(n.value);case "var":return {terms:new Map([[n.name,y]]),vars:[n.name]};case "neg":{let e=h(n.operand,t);return e===null?null:Pn(e,Z)}case "add":{let e=h(n.left,t),r=e===null?null:h(n.right,t);return e===null||r===null?null:et(e,r)}case "sub":{let e=h(n.left,t),r=e===null?null:h(n.right,t);return e===null||r===null?null:At(e,r)}case "mul":{let e=h(n.left,t),r=e===null?null:h(n.right,t);return e===null||r===null||!t&&(e.terms.size>1||r.terms.size>1)?null:rt(e,r)}case "div":{let e=h(n.right,t);if(e===null||e.vars.length>0)return null;let r=e.terms.get("")??p;if(u(r))return null;let o=h(n.left,t);return o===null?null:Pn(o,S(y,r))}case "pow":{if(n.exponent.kind!=="const"||!P(n.exponent.value))return null;let e=Number(n.exponent.value.n),r=h(n.base,t);return r===null||!t&&r.terms.size>1?null:wt(r,e)}case "complex":return null;case "call":return null}}function _t(n,t,e){let r=pn(t)-pn(n);if(r!==0)return r;let o=T(n),i=T(t);for(let l of e){let a=(i.get(l)??0)-(o.get(l)??0);if(a!==0)return a}return 0}function Ot(n){let t=T(n),e=[...t.keys()].sort(),r=null;for(let o of e){let i=t.get(o),l=i===1?U(o):_n(U(o),s({n:BigInt(i),d:1n}));r=r===null?l:{kind:"mul",left:r,right:l};}return r??s(y)}function $n(n,t){if(n==="")return s(t);let e=t.n<0n?I(t):t,r=Ot(n),o=N(e)?r:{kind:"mul",left:s(e),right:r};return t.n<0n?{kind:"neg",operand:o}:o}function X(n){let t=[...n.terms.keys()].sort((r,o)=>_t(r,o,n.vars));if(t.length===0)return s(p);if(n.terms.get(t[0]).n<0n){let r=t.findIndex(o=>n.terms.get(o).n>0n);r>0&&t.unshift(...t.splice(r,1));}let e=$n(t[0],n.terms.get(t[0]));for(let r=1;r<t.length;r++){let o=n.terms.get(t[r]);o.n<0n?e={kind:"sub",left:e,right:$n(t[r],I(o))}:e={kind:"add",left:e,right:$n(t[r],o)};}return e}function ke(n){let t=h(n);return t===null?n:X(t)}function F(n){let t=n.length-1;for(;t>=0&&u(n[t]);)t--;return n.slice(0,t+1)}function Ae(n){return n.every(u)}function yn(n,t){let e=F([...n]),r=F([...t]);if(r.length===0)throw new Error("polynomialDivide: division by the zero polynomial");let o=r.length-1,i=r[o],l=[...e],a=new Array(Math.max(0,e.length-o)).fill(p);for(let c=l.length-1;c>=o;c--){if(u(l[c]))continue;let f=S(l[c],i),m=c-o;a[m]=f;for(let x=0;x<=o;x++)l[m+x]=C(l[m+x],d(f,r[x]));}return {quotient:F(a),remainder:F(l)}}function xn(n){let t=F(n);if(t.length===0)return t;let e=t[t.length-1];return N(e)?t:t.map(r=>S(r,e))}function it(n,t){let e=F([...n]),r=F([...t]);for(;r.length>0;){let{remainder:o}=yn(e,r);e=r,r=o;}return xn(e)}function $t(n,t){let e=Pt(n,t);if(e===void 0)return null;if(e===null)return h({kind:"const",value:y});let r=it(H(n,e),H(t,e));return Tn(r,e)}function Pt(n,t){let e=new Set([...n.vars,...t.vars]);if(e.size===0)return null;if(!(e.size>1))return [...e][0]}function Tn(n,t){let e=new Map;return n.forEach((r,o)=>{u(r)||e.set(o===0?"":o===1?t:`${t}^${o}`,r);}),{terms:e,vars:e.size>0&&n.length>1?[t]:[]}}function Tt(n,t){let e=$t(n,t);if(e===null||gn(e)===0)return null;let r=ot(e);if(r===null)return null;let o=H(e,r),i=yn(H(n,r),o),l=yn(H(t,r),o);return {numerator:Tn(i.quotient,r),denominator:Tn(l.quotient,r)}}function lt(n){if(n.kind!=="div")return n;let t=h(n.left),e=h(n.right);if(t===null||e===null)return n;let r=Tt(t,e);return r===null?n:Lt(r.numerator,r.denominator,n)}function Lt(n,t,e){if(gn(t)===0){let r=t.terms.get("")??y;if(u(r))return e;let o=new Map;for(let[i,l]of n.terms)o.set(i,S(l,r));return X({terms:o,vars:n.vars})}return {kind:"div",left:X(n),right:X(t)}}function we(n){let t=F([...n]);if(t.length<=1)return xn(t);let e=[];for(let o=1;o<t.length;o++)e.push(d(t[o],{n:BigInt(o),d:1n}));let r=it(t,e);return r.length<=1?xn(t):xn(yn(t,r).quotient)}function en(n){if(n<0n)return null;if(n<2n)return n;let t=n,e=(n+1n)/2n;for(;e<t;)t=e,e=(t+n/t)/2n;return t*t===n?t:null}function Ln(n){let t=n<0n,e=t?-n:n;if(e<2n)return t?-e:e;let r=1n,o=e;for(;r<=o;){let i=(r+o)/2n,l=i*i*i;if(l===e)return t?-i:i;l<e?r=i+1n:o=i-1n;}return null}function Pe(n){let t=en(n.n),e=en(n.d);return t===null||e===null?null:{n:t,d:e}}function Bt(n){let t=n.n*n.d,e=1n,r=t;for(let l=2n;l*l<=r;l++){let a=l*l;for(;r%a===0n;)r/=a,e*=l;}let o=Sn(e,n.d);if(r===1n)return s(o);let i={kind:"call",name:"sqrt",args:[s({n:r,d:1n})]};return o.n===1n&&o.d===1n?i:{kind:"mul",left:s(o),right:i}}function Te(n){return n.n>=0n?Bt(n):{kind:"call",name:"sqrt",args:[s(n)]}}function G(n,t,e,r=0){if(r>=ct)return false;switch(n.kind){case "add":return G(n.left,t,e,r+1)&&G(n.right,t,e,r+1);case "sub":return G(n.left,t,e,r+1)&&G(n.right,!t,e,r+1);case "neg":return G(n.operand,!t,e,r+1);case "const":return e.push({coeff:t?I(n.value):n.value,name:null}),true;case "var":return e.push({coeff:t?Z:y,name:n.name}),true;default:return false}}function Vt(n){let t=[];if(!G(n,false,t))return n;let e=[],r=new Map,o=p;for(let a of t){if(a.name===null){o=b(o,a.coeff);continue}let c=r.get(a.name);c===void 0?(e.push(a.name),r.set(a.name,a.coeff)):r.set(a.name,b(c,a.coeff));}let i=[];for(let a of e){let c=r.get(a);u(c)||(N(c)?i.push(U(a)):nn(c)?i.push({kind:"neg",operand:U(a)}):i.push({kind:"mul",left:s(c),right:U(a)}));}if(i.length===0)return s(o);let l=i[0];for(let a=1;a<i.length;a++)l={kind:"add",left:l,right:i[a]};return u(o)||(l={kind:"add",left:l,right:s(o)}),l}function at(n){let t=h(n,false);return t!==null?X(t):Vt(n)}function Bn(n){let t=n.n/n.d;return n.n<0n&&t*n.d!==n.n?t-1n:t}var Ut=500n;function Ft(n,t){let e=t[0];switch(n){case "abs":return t.length===1?e.n<0n?I(e):e:null;case "sign":return t.length!==1?null:e.n===0n?p:{n:e.n<0n?-1n:1n,d:1n};case "floor":return t.length===1?{n:Bn(e),d:1n}:null;case "ceil":return t.length===1?{n:-Bn(I(e)),d:1n}:null;case "trunc":return t.length===1?{n:e.n/e.d,d:1n}:null;case "round":return t.length===1?{n:Bn(b(e,{n:1n,d:2n})),d:1n}:null;case "sqrt":{if(t.length!==1||e.n<0n)return null;let r=en(e.n),o=en(e.d);return r===null||o===null?null:{n:r,d:o}}case "cbrt":{if(t.length!==1)return null;let r=Ln(e.n),o=Ln(e.d);return r===null||o===null?null:{n:r,d:o}}case "sin":case "tan":case "asin":case "atan":case "sinh":case "tanh":return t.length===1&&u(e)?p:null;case "cos":case "exp":case "cosh":return t.length===1&&u(e)?y:null;case "log":return t.length===1&&N(e)?p:null;case "acos":return t.length===1&&N(e)?p:null;case "fact":{if(t.length!==1||!P(e)||e.n<0n||e.n>Ut)return null;let r=1n;for(let o=2n;o<=e.n;o++)r*=o;return {n:r,d:1n}}default:return null}}function M(n){if(On(n,j)>j)throw chunkELQQKZN3_cjs.c.execution("SYMBOLIC_NODE_LIMIT_EXCEEDED",`This symbolic expression is too large to simplify (over ${j} terms).`,{limit:j});let t=rn;try{return g(n)}finally{rn=t;}}var ct=900,rn=0;function g(n){if(rn>=ct)return n;rn++;let t=qt(n);return rn--,t}function Vn(n){return n.kind==="complex"?n.value:n.kind==="const"?cn(n.value):null}function bn(n,t,e){if(t.kind!=="complex"&&e.kind!=="complex")return null;let r=Vn(t),o=Vn(e);if(r===null||o===null)return null;switch(n){case "add":return A(Dn(r,o));case "sub":return A(En(r,o));case "mul":return A(tn(r,o));case "div":return K(o)?null:A(sn(r,o))}}function Yt(n,t){if(t.length!==1)return null;let e=Vn(t[0]);if(e===null)return null;switch(n){case "sqrt":{let r=dn(e);return r!==null?A(r):u(e.im)&&e.re.n<0n?{kind:"mul",left:{kind:"call",name:"sqrt",args:[s(I(e.re))]},right:A(kn)}:null}case "conj":return A(An(e));case "re":return s(e.re);case "im":return s(e.im);case "abs":{if(u(e.im))return null;let r=dn(cn(un(e)));return r===null||!u(r.im)?null:s(r.re)}default:return null}}function qt(n){switch(n.kind){case "const":case "complex":case "var":return n;case "neg":{let t=g(n.operand);return t.kind==="const"?s(I(t.value)):t.kind==="complex"?A(Cn(t.value)):t.kind==="neg"?t.operand:{kind:"neg",operand:t}}case "add":{let t=g(n.left),e=g(n.right);if(t.kind==="const"&&e.kind==="const")return s(b(t.value,e.value));let r=bn("add",t,e);return r!==null?r:t.kind==="const"&&u(t.value)?e:e.kind==="const"&&u(e.value)?t:at({kind:"add",left:t,right:e})}case "sub":{let t=g(n.left),e=g(n.right);if(t.kind==="const"&&e.kind==="const")return s(C(t.value,e.value));let r=bn("sub",t,e);return r!==null?r:e.kind==="const"&&u(e.value)?t:t.kind==="const"&&u(t.value)?g({kind:"neg",operand:e}):at({kind:"sub",left:t,right:e})}case "mul":{let t=g(n.left),e=g(n.right);if(t.kind==="const"&&e.kind==="const")return s(d(t.value,e.value));let r=bn("mul",t,e);return r!==null?r:t.kind==="const"&&u(t.value)||e.kind==="const"&&u(e.value)?s(p):t.kind==="const"&&N(t.value)?e:e.kind==="const"&&N(e.value)?t:t.kind==="const"&&nn(t.value)?g({kind:"neg",operand:e}):e.kind==="const"&&nn(e.value)?g({kind:"neg",operand:t}):t.kind==="const"&&e.kind==="mul"&&e.left.kind==="const"?g({kind:"mul",left:s(d(t.value,e.left.value)),right:e.right}):e.kind==="const"&&t.kind==="mul"&&t.left.kind==="const"?g({kind:"mul",left:s(d(e.value,t.left.value)),right:t.right}):t.kind==="div"&&t.left.kind==="const"&&N(t.left.value)?g({kind:"div",left:e,right:t.right}):e.kind==="div"&&e.left.kind==="const"&&N(e.left.value)?g({kind:"div",left:t,right:e.right}):{kind:"mul",left:t,right:e}}case "div":{let t=g(n.left),e=g(n.right);if(t.kind==="const"&&e.kind==="const"&&!u(e.value))return s(S(t.value,e.value));let r=bn("div",t,e);if(r!==null)return r;if(e.kind==="const"&&N(e.value))return t;if(t.kind==="const"&&u(t.value))return s(p);if(t.kind==="mul"){if(E(t.left,e))return t.right;if(E(t.right,e))return t.left}let o=lt({kind:"div",left:t,right:e});if(o.kind!=="div"||o.left!==t||o.right!==e)return g(o);if(t.kind==="neg"&&t.operand.kind==="mul"){let i=t.operand;if(E(i.left,e))return g({kind:"neg",operand:i.right});if(E(i.right,e))return g({kind:"neg",operand:i.left})}return {kind:"div",left:t,right:e}}case "pow":{let t=g(n.base),e=g(n.exponent);if(e.kind==="const"){if(u(e.value))return s(y);if(N(e.value))return t;if(t.kind==="const"&&P(e.value))return s(vn(t.value,e.value.n));if(t.kind==="complex"&&P(e.value))return A(fn(t.value,e.value.n))}return t.kind==="const"&&N(t.value)?s(y):t.kind==="const"&&u(t.value)&&e.kind==="const"&&e.value.n>0n?s(p):t.kind==="pow"&&t.exponent.kind==="const"&&e.kind==="const"&&P(t.exponent.value)&&P(e.value)?g({kind:"pow",base:t.base,exponent:s(d(t.exponent.value,e.value))}):{kind:"pow",base:t,exponent:e}}case "call":{let t=n.args.map(g);if(t.every(r=>r.kind==="const")){let r=Ft(n.name,t.map(o=>o.value));if(r!==null)return s(r)}let e=Yt(n.name,t);return e!==null?e:{kind:"call",name:n.name,args:t}}}}function Xt(n){return n.left.kind==="const"&&n.right.kind==="var"?{coeff:n.left.value,name:n.right.name}:n.right.kind==="const"&&n.left.kind==="var"?{coeff:n.right.value,name:n.left.name}:null}function Zt(n){return n.left.kind==="const"&&n.right.kind==="pow"?{coeff:n.left.value,power:n.right}:n.right.kind==="const"&&n.left.kind==="pow"?{coeff:n.right.value,power:n.left}:null}function st(n){return n.kind==="var"||n.kind==="call"?true:n.kind==="const"&&n.value.n>=0n}function Un(n,t){return n.n===1n&&n.d===1n?t:n.n===-1n&&n.d===1n?`-${t}`:`${D(n)}${t}`}var ut=600,Fn="...";function w(n,t){if(t>=ut)return Fn;switch(n.kind){case "const":return D(n.value);case "complex":return n.value.re.n!==0n&&n.value.im.n!==0n?`(${mn(n.value)})`:mn(n.value);case "var":return n.name;case "add":case "sub":return `(${on(n,t)})`;case "neg":return `-${w(n.operand,t+1)}`;case "call":return `${n.name}(${n.args.map(e=>on(e,t+1)).join(", ")})`;case "pow":{let e=st(n.base)?w(n.base,t+1):`(${on(n.base,t+1)})`,r=st(n.exponent)?w(n.exponent,t+1):`(${on(n.exponent,t+1)})`;return `${e}^${r}`}case "mul":{let e=Xt(n);if(e)return Un(e.coeff,e.name);let r=Zt(n);if(r)return Un(r.coeff,w(r.power,t+1));if(n.left.kind==="const"&&n.right.kind==="mul"){let o=w(n.right,t+1);if(!/^[\d.]/.test(o))return Un(n.left.value,o)}return `${w(n.left,t+1)}*${w(n.right,t+1)}`}case "div":{let e=w(n.right,t+1),r=n.right.kind==="mul"||n.right.kind==="div";return `${w(n.left,t+1)}/${r?`(${e})`:e}`}}}function W(n,t,e,r){if(r>=ut){e.push({negated:t,text:Fn});return}switch(n.kind){case "add":W(n.left,t,e,r+1),W(n.right,t,e,r+1);return;case "sub":W(n.left,t,e,r+1),W(n.right,!t,e,r+1);return;case "neg":W(n.operand,!t,e,r+1);return;case "const":{if(n.value.n===0n)return;let o=n.value.n<0n,i=o?{n:-n.value.n,d:n.value.d}:n.value;e.push({negated:o!==t,text:D(i)});return}case "complex":{let{re:o,im:i}=n.value;if(o.n!==0n){let l=o.n<0n;e.push({negated:l!==t,text:D(l?{n:-o.n,d:o.d}:o)});}if(i.n!==0n){let l=i.n<0n,a=l?{n:-i.n,d:i.d}:i,c=a.n===1n&&a.d===1n?"i":`${D(a)}i`;e.push({negated:l!==t,text:c});}return}default:{let o=w(n,r);(n.kind==="mul"||n.kind==="div")&&o.startsWith("-")?e.push({negated:!t,text:o.slice(1)}):e.push({negated:t,text:o});}}}function Kt(n){try{return on(n,0)}catch(t){if(t instanceof RangeError)return Fn;throw t}}function on(n,t){let e=[];if(W(n,false,e,t),e.length===0)return "0";let r="";return e.forEach((o,i)=>{i===0?r+=o.negated?`-${o.text}`:o.text:r+=o.negated?`-${o.text}`:`+${o.text}`;}),r}function ar(n,t){return n.data[t]}function _(n,t,e){return n.data[t+e*n.rows]}function cr(n,t,e){return t>=0&&t<n.rows&&e>=0&&e<n.cols}function jt(n,t){return n.rows===t.rows&&n.cols===t.cols}function Xn(n){return n.rows===n.cols}function Q(n){return typeof n=="object"&&n!==null?n:typeof n=="boolean"?s(n?1:0):s(n)}function qn(n){let t=M(n);return t.kind==="const"?J(t.value):t}function Ht(n){return typeof n=="boolean"?chunkDA7M6H63_cjs.L(n):typeof n=="object"&&n!==null?chunkDA7M6H63_cjs.K(n):chunkDA7M6H63_cjs.n(n)}function sr(n,t,e){let r=new Array(n*t);for(let o=0;o<n;o++)for(let i=0;i<t;i++)r[o+i*n]=e[o*t+i];return r}function ur(n){let t=new Array(n.rows*n.cols);for(let e=0;e<n.rows;e++)for(let r=0;r<n.cols;r++)t[e*n.cols+r]=_(n,e,r);return t}function ft(n,t){let e=n.rows===1&&n.cols===1,r=t.rows===1&&t.cols===1,o=n.hasSymbolic||t.hasSymbolic;if(e||r){let[c,f]=e?[n,t]:[t,n];if(o){let L=Q(c.data[0]),Rn=f.data.map(Nt=>qn(M({kind:"mul",left:Q(Nt),right:L})));return chunkDA7M6H63_cjs.C(f.rows,f.cols,Rn)}let m=c.data[0],x=f.data.map(L=>L*m);return chunkDA7M6H63_cjs.C(f.rows,f.cols,x)}if(n.cols!==t.rows)return chunkDA7M6H63_cjs.P("DIMENSION_MISMATCH",`Cannot multiply a ${n.rows}x${n.cols} matrix by a ${t.rows}x${t.cols} matrix \u2014 inner dimensions must match (${n.cols} !== ${t.rows}).`);let i=n.rows,l=t.cols,a=chunkDA7M6H63_cjs.e(i*l,"matrix cells");for(let c=0;c<i;c++)for(let f=0;f<l;f++)if(o){let m=s(0);for(let x=0;x<n.cols;x++){let L={kind:"mul",left:Q(_(n,c,x)),right:Q(_(t,x,f))};m=M({kind:"add",left:m,right:L});}a[c+f*i]=qn(m);}else {let m=0;for(let x=0;x<n.cols;x++)m+=_(n,c,x)*_(t,x,f);a[c+f*i]=m;}return chunkDA7M6H63_cjs.C(i,l,a)}function fr(n,t){if(!Xn(n))return chunkDA7M6H63_cjs.P("MATRIX_POWER_REQUIRES_SQUARE_MATRIX",`^: only a square matrix can be raised to a power (got ${n.rows}x${n.cols}).`);if(!Number.isInteger(t)||t<0)return chunkDA7M6H63_cjs.P("MATRIX_POWER_REQUIRES_WHOLE_EXPONENT",`^: a matrix can only be raised to a whole number of 0 or more (got ${t}); "^-1" means the inverse and "^T" the transpose.`);let e=n.rows,r=new Array(e*e).fill(0);for(let a=0;a<e;a++)r[a+a*e]=1;let o={rows:e,cols:e,data:r,hasSymbolic:false},i=n,l=t;for(;l>0;){if(l%2===1){let a=ft(o,i);if(a.type===13)return a;o=a.value;}if(l=Math.floor(l/2),l>0){let a=ft(i,i);if(a.type===13)return a;i=a.value;}}return chunkDA7M6H63_cjs.C(o.rows,o.cols,o.data)}function mr(n,t,e){if(!jt(n,t))return chunkDA7M6H63_cjs.P("DIMENSION_MISMATCH",`Cannot compare matrices of different shapes: ${n.rows}x${n.cols} and ${t.rows}x${t.cols}`);let r=new Array(n.data.length);for(let o=0;o<n.data.length;o++)r[o]=e(n.data[o],t.data[o]);return chunkDA7M6H63_cjs.C(n.rows,n.cols,r)}function dr(n){let t=new Array(n.rows*n.cols);for(let e=0;e<n.cols;e++)for(let r=0;r<n.rows;r++)t[e+r*n.cols]=_(n,r,e);return chunkDA7M6H63_cjs.C(n.cols,n.rows,t)}function dt(n){let t=[];for(let e=0;e<n.rows;e++){let r=[];for(let o=0;o<n.cols;o++)r.push(_(n,e,o));t.push(r);}return t}var Gt=12;function Wt(n){if(n.rows>Gt)return null;let t=[];for(let e=0;e<n.rows;e++){let r=[];for(let o=0;o<n.cols;o++){let i=_(n,e,o);if(typeof i!="number"||!Number.isSafeInteger(i))return null;r.push(BigInt(i));}t.push(r);}return t}function Qt(n){let t=n.length,e=1n,r=1n;for(let o=0;o<t-1;o++){if(n[o][o]===0n){let i=-1;for(let a=o+1;a<t;a++)if(n[a][o]!==0n){i=a;break}if(i===-1)return 0n;let l=n[o];n[o]=n[i],n[i]=l,r=-r;}for(let i=o+1;i<t;i++)for(let l=o+1;l<t;l++)n[i][l]=(n[i][l]*n[o][o]-n[i][o]*n[o][l])/e;e=n[o][o];}return r*n[t-1][t-1]}function zt(n){let t=Wt(n);if(t!==null)return chunkDA7M6H63_cjs.n(Number(Qt(t)));let e=n.rows,r=dt(n),o=1;for(let i=0;i<e;i++){let l=i,a=Math.abs(r[i][i]);for(let c=i+1;c<e;c++)Math.abs(r[c][i])>a&&(a=Math.abs(r[c][i]),l=c);if(a===0)return chunkDA7M6H63_cjs.n(0);if(l!==i){let c=r[i];r[i]=r[l],r[l]=c,o=-o;}o*=r[i][i];for(let c=i+1;c<e;c++){let f=r[c][i]/r[i][i];if(f!==0)for(let m=i;m<e;m++)r[c][m]-=f*r[i][m];}}return chunkDA7M6H63_cjs.n(o)}function Jt(n){let t=n.rows,e=[];for(let o=0;o<t;o++){let i=[];for(let l=0;l<t;l++)i.push(Q(_(n,o,l)));e.push(i);}let r=s(1);for(let o=0;o<t;o++){let i=M(e[o][o]);if(i.kind==="const"&&u(i.value))return chunkDA7M6H63_cjs.n(0);r=M({kind:"mul",left:r,right:i});for(let l=o+1;l<t;l++){let a=M({kind:"div",left:e[l][o],right:i});for(let c=o;c<t;c++)e[l][c]=M({kind:"sub",left:e[l][c],right:{kind:"mul",left:a,right:e[o][c]}});}}return r.kind==="const"?chunkDA7M6H63_cjs.n(J(r.value)):chunkDA7M6H63_cjs.K(r)}function pr(n){return Xn(n)?n.hasSymbolic?Jt(n):zt(n):chunkDA7M6H63_cjs.P("DETERMINANT_REQUIRES_SQUARE_MATRIX",`det: matrix must be square (got ${n.rows}x${n.cols}).`)}function ne(n){let t=n.rows,e=dt(n);for(let o=0;o<t;o++)for(let i=0;i<t;i++)e[o].push(i===o?1:0);for(let o=0;o<t;o++){let i=o,l=Math.abs(e[o][o]);for(let c=o+1;c<t;c++)Math.abs(e[c][o])>l&&(l=Math.abs(e[c][o]),i=c);if(l<1e-10)return chunkDA7M6H63_cjs.P("SINGULAR_MATRIX",`inv: a ${t}x${t} matrix with a zero (or near-zero) pivot column is not invertible.`);if(i!==o){let c=e[o];e[o]=e[i],e[i]=c;}let a=e[o][o];for(let c=0;c<2*t;c++)e[o][c]/=a;for(let c=0;c<t;c++){if(c===o)continue;let f=e[c][o];if(f!==0)for(let m=0;m<2*t;m++)e[c][m]-=f*e[o][m];}}let r=new Array(t*t);for(let o=0;o<t;o++)for(let i=0;i<t;i++)r[o+i*t]=e[o][t+i];return chunkDA7M6H63_cjs.C(t,t,r)}var Yn=9;function te(n){let t=n.rows;if(t>=Yn)return chunkDA7M6H63_cjs.P("SYMBOLIC_INVERSE_DIMENSION_LIMIT",`Symbolic matrix inversion is limited to matrices smaller than ${Yn}x${Yn} (got ${t}x${t}).`);let e=[];for(let o=0;o<t;o++){let i=[];for(let l=0;l<t;l++)i.push(Q(_(n,o,l)));for(let l=0;l<t;l++)i.push(s(l===o?1:0));e.push(i);}for(let o=0;o<t;o++){let i=M(e[o][o]);if(i.kind==="const"&&u(i.value))return chunkDA7M6H63_cjs.P("SYMBOLIC_SINGULAR_OR_UNSUPPORTED_PIVOT",`Symbolic inverse: the pivot at row/col ${o} is exactly zero \u2014 this matrix's structure isn't invertible via this engine's diagonal-first symbolic elimination (no row-swapping); try reordering rows manually.`);for(let l=0;l<t;l++){if(l===o)continue;let a=M({kind:"div",left:e[l][o],right:i});if(!(a.kind==="const"&&u(a.value)))for(let c=0;c<2*t;c++)e[l][c]=M({kind:"sub",left:e[l][c],right:{kind:"mul",left:a,right:e[o][c]}});}for(let l=0;l<2*t;l++)e[o][l]=M({kind:"div",left:e[o][l],right:i});}let r=new Array(t*t);for(let o=0;o<t;o++)for(let i=0;i<t;i++)r[o+i*t]=qn(e[o][t+i]);return chunkDA7M6H63_cjs.C(t,t,r)}function gr(n){return Xn(n)?n.hasSymbolic?te(n):ne(n):chunkDA7M6H63_cjs.P("INVERSE_REQUIRES_SQUARE_MATRIX",`inv: matrix must be square (got ${n.rows}x${n.cols}).`)}function mt(n,t){return chunkDA7M6H63_cjs.P("COLLECTION_TOO_LARGE",`This collection has ${n} elements, past the limit of ${t} (see the engine's vm.maxCollectionSize setting).`)}function xr(n,t=Number.POSITIVE_INFINITY){let e=chunkDA7M6H63_cjs.Q(n);if(e)return e;if(n.type===7){let r=n.value;return r.data.length>t?mt(r.data.length,t):r.data.map(Ht)}if(n.type===8){let r=n.value,o=r.max-r.min+1;if(o>t)return mt(o,t);let i=new Array(o);for(let l=0;l<o;l++)i[l]=chunkDA7M6H63_cjs.n(r.min+l);return i}return chunkDA7M6H63_cjs.P("MAP_REDUCE_REQUIRES_COLLECTION",'map/reduce requires a Matrix or Range collection (e.g. "[1,2,3]" or "0:3").')}var pt=20,Nn=[1n];function z(n){if(n<0)throw chunkELQQKZN3_cjs.c.internal("DECIMAL_NEGATIVE_POWER",`pow10 needs a non-negative exponent, got ${n}`,{exponent:n});for(let t=Nn.length;t<=n;t++)Nn[t]=Nn[t-1]*10n;return Nn[n]}function ee(n,t){if(!Number.isInteger(t)||t<0)throw chunkELQQKZN3_cjs.c.internal("DECIMAL_INVALID_SCALE",`A decimal scale must be a non-negative integer, got ${t}`,{scale:t});return {coef:n,scale:t}}function gt(n){return {coef:typeof n=="bigint"?n:BigInt(n),scale:0}}function re(n){return !Number.isFinite(n)||!Number.isInteger(n)?null:gt(BigInt(n))}function oe(n){let t=n,e=false;t.startsWith("-")?(e=true,t=t.slice(1)):t.startsWith("+")&&(t=t.slice(1));let r=t.indexOf("."),o=r<0?t:t.slice(0,r),i=r<0?"":t.slice(r+1),l=o+i||"0";if(!/^[0-9]+$/.test(l))throw chunkELQQKZN3_cjs.c.parsing("INVALID_DECIMAL_LITERAL",`Not a decimal literal: "${n}"`,{raw:n});let a=BigInt(l);return e&&(a=-a),{coef:a,scale:i.length}}function Zn(n,t){return n.scale===t.scale?{ca:n.coef,cb:t.coef,scale:n.scale}:n.scale>t.scale?{ca:n.coef,cb:t.coef*z(n.scale-t.scale),scale:n.scale}:{ca:n.coef*z(t.scale-n.scale),cb:t.coef,scale:t.scale}}function ie(n,t){let{ca:e,cb:r,scale:o}=Zn(n,t);return {coef:e+r,scale:o}}function le(n,t){let{ca:e,cb:r,scale:o}=Zn(n,t);return {coef:e-r,scale:o}}function ae(n,t){return {coef:n.coef*t.coef,scale:n.scale+t.scale}}function ce(n){return {coef:-n.coef,scale:n.scale}}function xt(n){return n.coef===0n}function se(n,t,e){if(e>=t)return n*z(e-t);let r=z(t-e),o=n<0n,i=o?-n:n,l=i/r;return i%r*2n>=r&&(l+=1n),o?-l:l}function yt(n,t){return {coef:se(n.coef,n.scale,t),scale:t}}function ue(n,t,e=pt){if(xt(t))throw chunkELQQKZN3_cjs.c.internal("DECIMAL_DIVISION_BY_ZERO","decimalDivide was called with a zero divisor",{});let r=e,o=n.coef*z(r+t.scale),i=t.coef*z(n.scale),l=o<0n!=i<0n,a=o<0n?-o:o,c=i<0n?-i:i,f=a/c;return a%c*2n>=c&&(f+=1n),{coef:l?-f:f,scale:r}}function fe(n,t){let{ca:e,cb:r}=Zn(n,t);return e<r?-1:e>r?1:0}function bt(n){let t=n.coef<0n,e=(t?-n.coef:n.coef).toString();if(n.scale===0)return t?`-${e}`:e;e.length<=n.scale&&(e=e.padStart(n.scale+1,"0"));let r=e.length-n.scale,o=e.slice(0,r),i=e.slice(r);return `${t?"-":""}${o}.${i}`}function me(n){return Number(bt(n))}function de(n,t){let e=yt(n,t),r=e.coef<0n&&e.coef!==0n,o=(e.coef<0n?-e.coef:e.coef).toString();if(t===0)return r?`-${o}`:o;o.length<=t&&(o=o.padStart(t+1,"0"));let i=o.length-t,l=o.slice(0,i),a=o.slice(i);return `${r?"-":""}${l}.${a}`}var pe={$:"USD","\xA3":"GBP","\u20AC":"EUR","\xA5":"JPY","\u20BD":"RUB","\u20A9":"KRW","\u20B9":"INR","\u20BA":"TRY","\u20B4":"UAH","\u20AA":"ILS","\u20AB":"VND","\u20A6":"NGN","\u20B1":"PHP"},ge={dollar:"USD",dollars:"USD",euro:"EUR",euros:"EUR",yen:"JPY",ruble:"RUB",rubles:"RUB",rouble:"RUB",roubles:"RUB",won:"KRW",rupee:"INR",rupees:"INR",yuan:"CNY",renminbi:"CNY",franc:"CHF",francs:"CHF",rand:"ZAR",krona:"SEK",kronor:"SEK",krone:"NOK",kroner:"NOK",real:"BRL",reais:"BRL",peso:"MXN",pesos:"MXN",shekel:"ILS",shekels:"ILS",lira:"TRY",hryvnia:"UAH",hryvnias:"UAH",zloty:"PLN",zlotys:"PLN",forint:"HUF",koruna:"CZK",dirham:"AED",dirhams:"AED",riyal:"SAR",riyals:"SAR",rial:"SAR",rials:"SAR",ringgit:"MYR",rupiah:"IDR",baht:"THB",dong:"VND",naira:"NGN"};function Sr(n){return pe[n]??ge[n.toLowerCase()]}var Ir={USD:{symbol:"$",position:"prefix",spaced:false},AUD:{symbol:"$",position:"prefix",spaced:false},CAD:{symbol:"$",position:"prefix",spaced:false},NZD:{symbol:"$",position:"prefix",spaced:false},HKD:{symbol:"$",position:"prefix",spaced:false},SGD:{symbol:"$",position:"prefix",spaced:false},MXN:{symbol:"$",position:"prefix",spaced:false},GBP:{symbol:"\xA3",position:"prefix",spaced:false},EUR:{symbol:"\u20AC",position:"prefix",spaced:false},JPY:{symbol:"\xA5",position:"prefix",spaced:false},CNY:{symbol:"\xA5",position:"prefix",spaced:false},KRW:{symbol:"\u20A9",position:"prefix",spaced:false},INR:{symbol:"\u20B9",position:"prefix",spaced:false},RUB:{symbol:"\u20BD",position:"suffix",spaced:true},TRY:{symbol:"\u20BA",position:"prefix",spaced:false},UAH:{symbol:"\u20B4",position:"suffix",spaced:true},ILS:{symbol:"\u20AA",position:"prefix",spaced:false},VND:{symbol:"\u20AB",position:"suffix",spaced:false},NGN:{symbol:"\u20A6",position:"prefix",spaced:false},PHP:{symbol:"\u20B1",position:"prefix",spaced:false},BRL:{symbol:"R$",position:"prefix",spaced:false},ZAR:{symbol:"R",position:"prefix",spaced:false},SEK:{symbol:"kr",position:"suffix",spaced:true},NOK:{symbol:"kr",position:"suffix",spaced:true},DKK:{symbol:"kr",position:"suffix",spaced:true},PLN:{symbol:"z\u0142",position:"suffix",spaced:true},CHF:{symbol:"Fr",position:"suffix",spaced:true},HUF:{symbol:"Ft",position:"suffix",spaced:true},CZK:{symbol:"K\u010D",position:"suffix",spaced:true}};exports.$=fr;exports.A=ot;exports.B=H;exports.C=h;exports.D=_t;exports.E=X;exports.F=ke;exports.G=Ae;exports.H=yn;exports.I=it;exports.J=lt;exports.K=we;exports.L=en;exports.M=Ln;exports.N=Pe;exports.O=Bt;exports.P=Te;exports.Q=M;exports.R=Kt;exports.S=ar;exports.T=_;exports.U=cr;exports.V=jt;exports.W=qn;exports.X=Ht;exports.Y=sr;exports.Z=ur;exports._=ft;exports.a=p;exports.aa=mr;exports.b=y;exports.ba=dr;exports.c=Sn;exports.ca=pr;exports.d=In;exports.da=gr;exports.e=J;exports.ea=xr;exports.f=b;exports.fa=ee;exports.g=C;exports.ga=gt;exports.h=d;exports.ha=re;exports.i=S;exports.ia=oe;exports.j=I;exports.ja=ie;exports.k=It;exports.ka=le;exports.l=u;exports.la=ae;exports.m=N;exports.ma=ce;exports.n=kn;exports.na=xt;exports.o=cn;exports.oa=yt;exports.p=s;exports.pa=ue;exports.q=U;exports.qa=fe;exports.r=_n;exports.ra=me;exports.s=Mt;exports.sa=de;exports.t=v;exports.ta=Sr;exports.u=kt;exports.ua=Ir;exports.v=q;exports.w=A;exports.x=Ct;exports.y=T;exports.z=gn;//# sourceMappingURL=chunk-2VE4OW4A.cjs.map
2
+ //# sourceMappingURL=chunk-2VE4OW4A.cjs.map