mathjs 11.2.1 → 11.3.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 (1322) hide show
  1. package/HISTORY.md +9 -1
  2. package/README.md +26 -0
  3. package/lib/browser/math.js +1 -1
  4. package/lib/browser/math.js.LICENSE.txt +2 -2
  5. package/lib/browser/math.js.map +1 -1
  6. package/lib/cjs/constants.js +21 -23
  7. package/lib/cjs/core/create.js +23 -41
  8. package/lib/cjs/core/function/config.js +12 -16
  9. package/lib/cjs/core/function/import.js +21 -66
  10. package/lib/cjs/core/function/typed.js +24 -50
  11. package/lib/cjs/defaultInstance.js +0 -7
  12. package/lib/cjs/entry/allFactoriesAny.js +1 -5
  13. package/lib/cjs/entry/allFactoriesNumber.js +1 -5
  14. package/lib/cjs/entry/configReadonly.js +0 -7
  15. package/lib/cjs/entry/dependenciesAny/dependenciesAbs.generated.js +1 -3
  16. package/lib/cjs/entry/dependenciesAny/dependenciesAccessorNode.generated.js +1 -4
  17. package/lib/cjs/entry/dependenciesAny/dependenciesAcos.generated.js +1 -4
  18. package/lib/cjs/entry/dependenciesAny/dependenciesAcosh.generated.js +1 -4
  19. package/lib/cjs/entry/dependenciesAny/dependenciesAcot.generated.js +1 -4
  20. package/lib/cjs/entry/dependenciesAny/dependenciesAcoth.generated.js +1 -5
  21. package/lib/cjs/entry/dependenciesAny/dependenciesAcsc.generated.js +1 -5
  22. package/lib/cjs/entry/dependenciesAny/dependenciesAcsch.generated.js +1 -4
  23. package/lib/cjs/entry/dependenciesAny/dependenciesAdd.generated.js +1 -8
  24. package/lib/cjs/entry/dependenciesAny/dependenciesAddScalar.generated.js +1 -3
  25. package/lib/cjs/entry/dependenciesAny/dependenciesAnd.generated.js +1 -7
  26. package/lib/cjs/entry/dependenciesAny/dependenciesApply.generated.js +1 -4
  27. package/lib/cjs/entry/dependenciesAny/dependenciesApplyTransform.generated.js +1 -4
  28. package/lib/cjs/entry/dependenciesAny/dependenciesArg.generated.js +1 -3
  29. package/lib/cjs/entry/dependenciesAny/dependenciesArrayNode.generated.js +1 -3
  30. package/lib/cjs/entry/dependenciesAny/dependenciesAsec.generated.js +1 -5
  31. package/lib/cjs/entry/dependenciesAny/dependenciesAsech.generated.js +1 -5
  32. package/lib/cjs/entry/dependenciesAny/dependenciesAsin.generated.js +1 -4
  33. package/lib/cjs/entry/dependenciesAny/dependenciesAsinh.generated.js +1 -3
  34. package/lib/cjs/entry/dependenciesAny/dependenciesAssignmentNode.generated.js +1 -5
  35. package/lib/cjs/entry/dependenciesAny/dependenciesAtan.generated.js +1 -3
  36. package/lib/cjs/entry/dependenciesAny/dependenciesAtan2.generated.js +1 -7
  37. package/lib/cjs/entry/dependenciesAny/dependenciesAtanh.generated.js +1 -4
  38. package/lib/cjs/entry/dependenciesAny/dependenciesAtomicMass.generated.js +1 -4
  39. package/lib/cjs/entry/dependenciesAny/dependenciesAvogadro.generated.js +1 -4
  40. package/lib/cjs/entry/dependenciesAny/dependenciesBellNumbers.generated.js +1 -7
  41. package/lib/cjs/entry/dependenciesAny/dependenciesBigNumberClass.generated.js +1 -2
  42. package/lib/cjs/entry/dependenciesAny/dependenciesBignumber.generated.js +1 -4
  43. package/lib/cjs/entry/dependenciesAny/dependenciesBin.generated.js +1 -4
  44. package/lib/cjs/entry/dependenciesAny/dependenciesBitAnd.generated.js +1 -5
  45. package/lib/cjs/entry/dependenciesAny/dependenciesBitNot.generated.js +1 -3
  46. package/lib/cjs/entry/dependenciesAny/dependenciesBitOr.generated.js +1 -6
  47. package/lib/cjs/entry/dependenciesAny/dependenciesBitXor.generated.js +1 -5
  48. package/lib/cjs/entry/dependenciesAny/dependenciesBlockNode.generated.js +1 -4
  49. package/lib/cjs/entry/dependenciesAny/dependenciesBohrMagneton.generated.js +1 -4
  50. package/lib/cjs/entry/dependenciesAny/dependenciesBohrRadius.generated.js +1 -4
  51. package/lib/cjs/entry/dependenciesAny/dependenciesBoltzmann.generated.js +1 -4
  52. package/lib/cjs/entry/dependenciesAny/dependenciesBoolean.generated.js +1 -3
  53. package/lib/cjs/entry/dependenciesAny/dependenciesCatalan.generated.js +1 -9
  54. package/lib/cjs/entry/dependenciesAny/dependenciesCbrt.generated.js +1 -9
  55. package/lib/cjs/entry/dependenciesAny/dependenciesCeil.generated.js +1 -8
  56. package/lib/cjs/entry/dependenciesAny/dependenciesChain.generated.js +1 -4
  57. package/lib/cjs/entry/dependenciesAny/dependenciesChainClass.generated.js +1 -3
  58. package/lib/cjs/entry/dependenciesAny/dependenciesClassicalElectronRadius.generated.js +1 -4
  59. package/lib/cjs/entry/dependenciesAny/dependenciesClone.generated.js +1 -3
  60. package/lib/cjs/entry/dependenciesAny/dependenciesColumn.generated.js +1 -6
  61. package/lib/cjs/entry/dependenciesAny/dependenciesColumnTransform.generated.js +1 -6
  62. package/lib/cjs/entry/dependenciesAny/dependenciesCombinations.generated.js +1 -3
  63. package/lib/cjs/entry/dependenciesAny/dependenciesCombinationsWithRep.generated.js +1 -3
  64. package/lib/cjs/entry/dependenciesAny/dependenciesCompare.generated.js +1 -8
  65. package/lib/cjs/entry/dependenciesAny/dependenciesCompareNatural.generated.js +1 -4
  66. package/lib/cjs/entry/dependenciesAny/dependenciesCompareText.generated.js +1 -4
  67. package/lib/cjs/entry/dependenciesAny/dependenciesCompile.generated.js +1 -4
  68. package/lib/cjs/entry/dependenciesAny/dependenciesComplex.generated.js +1 -4
  69. package/lib/cjs/entry/dependenciesAny/dependenciesComplexClass.generated.js +1 -2
  70. package/lib/cjs/entry/dependenciesAny/dependenciesComposition.generated.js +1 -9
  71. package/lib/cjs/entry/dependenciesAny/dependenciesConcat.generated.js +1 -5
  72. package/lib/cjs/entry/dependenciesAny/dependenciesConcatTransform.generated.js +1 -5
  73. package/lib/cjs/entry/dependenciesAny/dependenciesConditionalNode.generated.js +1 -3
  74. package/lib/cjs/entry/dependenciesAny/dependenciesConductanceQuantum.generated.js +1 -4
  75. package/lib/cjs/entry/dependenciesAny/dependenciesConj.generated.js +1 -3
  76. package/lib/cjs/entry/dependenciesAny/dependenciesConstantNode.generated.js +1 -3
  77. package/lib/cjs/entry/dependenciesAny/dependenciesCos.generated.js +1 -3
  78. package/lib/cjs/entry/dependenciesAny/dependenciesCosh.generated.js +1 -3
  79. package/lib/cjs/entry/dependenciesAny/dependenciesCot.generated.js +1 -4
  80. package/lib/cjs/entry/dependenciesAny/dependenciesCoth.generated.js +1 -4
  81. package/lib/cjs/entry/dependenciesAny/dependenciesCoulomb.generated.js +1 -4
  82. package/lib/cjs/entry/dependenciesAny/dependenciesCount.generated.js +1 -5
  83. package/lib/cjs/entry/dependenciesAny/dependenciesCreateUnit.generated.js +1 -4
  84. package/lib/cjs/entry/dependenciesAny/dependenciesCross.generated.js +1 -6
  85. package/lib/cjs/entry/dependenciesAny/dependenciesCsc.generated.js +1 -4
  86. package/lib/cjs/entry/dependenciesAny/dependenciesCsch.generated.js +1 -4
  87. package/lib/cjs/entry/dependenciesAny/dependenciesCtranspose.generated.js +1 -5
  88. package/lib/cjs/entry/dependenciesAny/dependenciesCube.generated.js +1 -3
  89. package/lib/cjs/entry/dependenciesAny/dependenciesCumSum.generated.js +1 -5
  90. package/lib/cjs/entry/dependenciesAny/dependenciesCumSumTransform.generated.js +1 -5
  91. package/lib/cjs/entry/dependenciesAny/dependenciesDeepEqual.generated.js +1 -4
  92. package/lib/cjs/entry/dependenciesAny/dependenciesDenseMatrixClass.generated.js +1 -3
  93. package/lib/cjs/entry/dependenciesAny/dependenciesDerivative.generated.js +1 -13
  94. package/lib/cjs/entry/dependenciesAny/dependenciesDet.generated.js +1 -9
  95. package/lib/cjs/entry/dependenciesAny/dependenciesDeuteronMass.generated.js +1 -4
  96. package/lib/cjs/entry/dependenciesAny/dependenciesDiag.generated.js +1 -6
  97. package/lib/cjs/entry/dependenciesAny/dependenciesDiff.generated.js +1 -6
  98. package/lib/cjs/entry/dependenciesAny/dependenciesDiffTransform.generated.js +1 -7
  99. package/lib/cjs/entry/dependenciesAny/dependenciesDistance.generated.js +1 -10
  100. package/lib/cjs/entry/dependenciesAny/dependenciesDivide.generated.js +1 -8
  101. package/lib/cjs/entry/dependenciesAny/dependenciesDivideScalar.generated.js +1 -4
  102. package/lib/cjs/entry/dependenciesAny/dependenciesDot.generated.js +1 -7
  103. package/lib/cjs/entry/dependenciesAny/dependenciesDotDivide.generated.js +1 -7
  104. package/lib/cjs/entry/dependenciesAny/dependenciesDotMultiply.generated.js +1 -6
  105. package/lib/cjs/entry/dependenciesAny/dependenciesDotPow.generated.js +1 -7
  106. package/lib/cjs/entry/dependenciesAny/dependenciesE.generated.js +1 -3
  107. package/lib/cjs/entry/dependenciesAny/dependenciesEfimovFactor.generated.js +1 -3
  108. package/lib/cjs/entry/dependenciesAny/dependenciesEigs.generated.js +1 -32
  109. package/lib/cjs/entry/dependenciesAny/dependenciesElectricConstant.generated.js +1 -4
  110. package/lib/cjs/entry/dependenciesAny/dependenciesElectronMass.generated.js +1 -4
  111. package/lib/cjs/entry/dependenciesAny/dependenciesElementaryCharge.generated.js +1 -4
  112. package/lib/cjs/entry/dependenciesAny/dependenciesEqual.generated.js +1 -6
  113. package/lib/cjs/entry/dependenciesAny/dependenciesEqualScalar.generated.js +1 -3
  114. package/lib/cjs/entry/dependenciesAny/dependenciesEqualText.generated.js +1 -5
  115. package/lib/cjs/entry/dependenciesAny/dependenciesErf.generated.js +1 -3
  116. package/lib/cjs/entry/dependenciesAny/dependenciesEvaluate.generated.js +1 -4
  117. package/lib/cjs/entry/dependenciesAny/dependenciesExp.generated.js +1 -3
  118. package/lib/cjs/entry/dependenciesAny/dependenciesExpm.generated.js +1 -8
  119. package/lib/cjs/entry/dependenciesAny/dependenciesExpm1.generated.js +1 -4
  120. package/lib/cjs/entry/dependenciesAny/dependenciesFactorial.generated.js +1 -4
  121. package/lib/cjs/entry/dependenciesAny/dependenciesFalse.generated.js +1 -2
  122. package/lib/cjs/entry/dependenciesAny/dependenciesFaraday.generated.js +1 -4
  123. package/lib/cjs/entry/dependenciesAny/dependenciesFermiCoupling.generated.js +1 -4
  124. package/lib/cjs/entry/dependenciesAny/dependenciesFft.generated.js +1 -10
  125. package/lib/cjs/entry/dependenciesAny/dependenciesFibonacciHeapClass.generated.js +1 -4
  126. package/lib/cjs/entry/dependenciesAny/dependenciesFilter.generated.js +1 -3
  127. package/lib/cjs/entry/dependenciesAny/dependenciesFilterTransform.generated.js +1 -3
  128. package/lib/cjs/entry/dependenciesAny/dependenciesFineStructure.generated.js +1 -3
  129. package/lib/cjs/entry/dependenciesAny/dependenciesFirstRadiation.generated.js +1 -4
  130. package/lib/cjs/entry/dependenciesAny/dependenciesFix.generated.js +1 -10
  131. package/lib/cjs/entry/dependenciesAny/dependenciesFlatten.generated.js +1 -4
  132. package/lib/cjs/entry/dependenciesAny/dependenciesFloor.generated.js +1 -8
  133. package/lib/cjs/entry/dependenciesAny/dependenciesForEach.generated.js +1 -3
  134. package/lib/cjs/entry/dependenciesAny/dependenciesForEachTransform.generated.js +1 -3
  135. package/lib/cjs/entry/dependenciesAny/dependenciesFormat.generated.js +1 -3
  136. package/lib/cjs/entry/dependenciesAny/dependenciesFraction.generated.js +1 -4
  137. package/lib/cjs/entry/dependenciesAny/dependenciesFractionClass.generated.js +1 -2
  138. package/lib/cjs/entry/dependenciesAny/dependenciesFunctionAssignmentNode.generated.js +1 -4
  139. package/lib/cjs/entry/dependenciesAny/dependenciesFunctionNode.generated.js +1 -4
  140. package/lib/cjs/entry/dependenciesAny/dependenciesGamma.generated.js +1 -7
  141. package/lib/cjs/entry/dependenciesAny/dependenciesGasConstant.generated.js +1 -4
  142. package/lib/cjs/entry/dependenciesAny/dependenciesGcd.generated.js +1 -7
  143. package/lib/cjs/entry/dependenciesAny/dependenciesGetMatrixDataType.generated.js +1 -3
  144. package/lib/cjs/entry/dependenciesAny/dependenciesGravitationConstant.generated.js +1 -4
  145. package/lib/cjs/entry/dependenciesAny/dependenciesGravity.generated.js +1 -4
  146. package/lib/cjs/entry/dependenciesAny/dependenciesHartreeEnergy.generated.js +1 -4
  147. package/lib/cjs/entry/dependenciesAny/dependenciesHasNumericValue.generated.js +1 -4
  148. package/lib/cjs/entry/dependenciesAny/dependenciesHelp.generated.js +1 -4
  149. package/lib/cjs/entry/dependenciesAny/dependenciesHelpClass.generated.js +1 -3
  150. package/lib/cjs/entry/dependenciesAny/dependenciesHex.generated.js +1 -4
  151. package/lib/cjs/entry/dependenciesAny/dependenciesHypot.generated.js +1 -10
  152. package/lib/cjs/entry/dependenciesAny/dependenciesI.generated.js +1 -3
  153. package/lib/cjs/entry/dependenciesAny/dependenciesIdentity.generated.js +1 -7
  154. package/lib/cjs/entry/dependenciesAny/dependenciesIfft.generated.js +1 -6
  155. package/lib/cjs/entry/dependenciesAny/dependenciesIm.generated.js +1 -3
  156. package/lib/cjs/entry/dependenciesAny/dependenciesImmutableDenseMatrixClass.generated.js +1 -4
  157. package/lib/cjs/entry/dependenciesAny/dependenciesIndex.generated.js +1 -4
  158. package/lib/cjs/entry/dependenciesAny/dependenciesIndexClass.generated.js +1 -3
  159. package/lib/cjs/entry/dependenciesAny/dependenciesIndexNode.generated.js +1 -4
  160. package/lib/cjs/entry/dependenciesAny/dependenciesIndexTransform.generated.js +1 -3
  161. package/lib/cjs/entry/dependenciesAny/dependenciesInfinity.generated.js +1 -3
  162. package/lib/cjs/entry/dependenciesAny/dependenciesIntersect.generated.js +1 -16
  163. package/lib/cjs/entry/dependenciesAny/dependenciesInv.generated.js +1 -11
  164. package/lib/cjs/entry/dependenciesAny/dependenciesInverseConductanceQuantum.generated.js +1 -4
  165. package/lib/cjs/entry/dependenciesAny/dependenciesInvmod.generated.js +1 -10
  166. package/lib/cjs/entry/dependenciesAny/dependenciesIsInteger.generated.js +1 -3
  167. package/lib/cjs/entry/dependenciesAny/dependenciesIsNaN.generated.js +1 -3
  168. package/lib/cjs/entry/dependenciesAny/dependenciesIsNegative.generated.js +1 -3
  169. package/lib/cjs/entry/dependenciesAny/dependenciesIsNumeric.generated.js +1 -3
  170. package/lib/cjs/entry/dependenciesAny/dependenciesIsPositive.generated.js +1 -3
  171. package/lib/cjs/entry/dependenciesAny/dependenciesIsPrime.generated.js +1 -3
  172. package/lib/cjs/entry/dependenciesAny/dependenciesIsZero.generated.js +1 -3
  173. package/lib/cjs/entry/dependenciesAny/dependenciesKldivergence.generated.js +1 -11
  174. package/lib/cjs/entry/dependenciesAny/dependenciesKlitzing.generated.js +1 -4
  175. package/lib/cjs/entry/dependenciesAny/dependenciesKron.generated.js +1 -5
  176. package/lib/cjs/entry/dependenciesAny/dependenciesLN10.generated.js +1 -3
  177. package/lib/cjs/entry/dependenciesAny/dependenciesLN2.generated.js +1 -3
  178. package/lib/cjs/entry/dependenciesAny/dependenciesLOG10E.generated.js +1 -3
  179. package/lib/cjs/entry/dependenciesAny/dependenciesLOG2E.generated.js +1 -3
  180. package/lib/cjs/entry/dependenciesAny/dependenciesLarger.generated.js +1 -5
  181. package/lib/cjs/entry/dependenciesAny/dependenciesLargerEq.generated.js +1 -5
  182. package/lib/cjs/entry/dependenciesAny/dependenciesLcm.generated.js +1 -5
  183. package/lib/cjs/entry/dependenciesAny/dependenciesLeafCount.generated.js +1 -4
  184. package/lib/cjs/entry/dependenciesAny/dependenciesLeftShift.generated.js +1 -7
  185. package/lib/cjs/entry/dependenciesAny/dependenciesLgamma.generated.js +1 -4
  186. package/lib/cjs/entry/dependenciesAny/dependenciesLog.generated.js +1 -5
  187. package/lib/cjs/entry/dependenciesAny/dependenciesLog10.generated.js +1 -4
  188. package/lib/cjs/entry/dependenciesAny/dependenciesLog1p.generated.js +1 -6
  189. package/lib/cjs/entry/dependenciesAny/dependenciesLog2.generated.js +1 -4
  190. package/lib/cjs/entry/dependenciesAny/dependenciesLoschmidt.generated.js +1 -4
  191. package/lib/cjs/entry/dependenciesAny/dependenciesLsolve.generated.js +1 -9
  192. package/lib/cjs/entry/dependenciesAny/dependenciesLsolveAll.generated.js +1 -9
  193. package/lib/cjs/entry/dependenciesAny/dependenciesLup.generated.js +1 -15
  194. package/lib/cjs/entry/dependenciesAny/dependenciesLusolve.generated.js +1 -9
  195. package/lib/cjs/entry/dependenciesAny/dependenciesMad.generated.js +1 -7
  196. package/lib/cjs/entry/dependenciesAny/dependenciesMagneticConstant.generated.js +1 -4
  197. package/lib/cjs/entry/dependenciesAny/dependenciesMagneticFluxQuantum.generated.js +1 -4
  198. package/lib/cjs/entry/dependenciesAny/dependenciesMap.generated.js +1 -3
  199. package/lib/cjs/entry/dependenciesAny/dependenciesMapTransform.generated.js +1 -3
  200. package/lib/cjs/entry/dependenciesAny/dependenciesMatrix.generated.js +1 -6
  201. package/lib/cjs/entry/dependenciesAny/dependenciesMatrixClass.generated.js +1 -2
  202. package/lib/cjs/entry/dependenciesAny/dependenciesMatrixFromColumns.generated.js +1 -6
  203. package/lib/cjs/entry/dependenciesAny/dependenciesMatrixFromFunction.generated.js +1 -5
  204. package/lib/cjs/entry/dependenciesAny/dependenciesMatrixFromRows.generated.js +1 -6
  205. package/lib/cjs/entry/dependenciesAny/dependenciesMax.generated.js +1 -5
  206. package/lib/cjs/entry/dependenciesAny/dependenciesMaxTransform.generated.js +1 -5
  207. package/lib/cjs/entry/dependenciesAny/dependenciesMean.generated.js +1 -5
  208. package/lib/cjs/entry/dependenciesAny/dependenciesMeanTransform.generated.js +1 -5
  209. package/lib/cjs/entry/dependenciesAny/dependenciesMedian.generated.js +1 -7
  210. package/lib/cjs/entry/dependenciesAny/dependenciesMin.generated.js +1 -5
  211. package/lib/cjs/entry/dependenciesAny/dependenciesMinTransform.generated.js +1 -5
  212. package/lib/cjs/entry/dependenciesAny/dependenciesMod.generated.js +1 -6
  213. package/lib/cjs/entry/dependenciesAny/dependenciesMode.generated.js +1 -5
  214. package/lib/cjs/entry/dependenciesAny/dependenciesMolarMass.generated.js +1 -4
  215. package/lib/cjs/entry/dependenciesAny/dependenciesMolarMassC12.generated.js +1 -4
  216. package/lib/cjs/entry/dependenciesAny/dependenciesMolarPlanckConstant.generated.js +1 -4
  217. package/lib/cjs/entry/dependenciesAny/dependenciesMolarVolume.generated.js +1 -4
  218. package/lib/cjs/entry/dependenciesAny/dependenciesMultinomial.generated.js +1 -9
  219. package/lib/cjs/entry/dependenciesAny/dependenciesMultiply.generated.js +1 -8
  220. package/lib/cjs/entry/dependenciesAny/dependenciesMultiplyScalar.generated.js +1 -3
  221. package/lib/cjs/entry/dependenciesAny/dependenciesNaN.generated.js +1 -3
  222. package/lib/cjs/entry/dependenciesAny/dependenciesNeutronMass.generated.js +1 -4
  223. package/lib/cjs/entry/dependenciesAny/dependenciesNode.generated.js +1 -2
  224. package/lib/cjs/entry/dependenciesAny/dependenciesNorm.generated.js +1 -15
  225. package/lib/cjs/entry/dependenciesAny/dependenciesNot.generated.js +1 -3
  226. package/lib/cjs/entry/dependenciesAny/dependenciesNthRoot.generated.js +1 -6
  227. package/lib/cjs/entry/dependenciesAny/dependenciesNthRoots.generated.js +1 -5
  228. package/lib/cjs/entry/dependenciesAny/dependenciesNuclearMagneton.generated.js +1 -4
  229. package/lib/cjs/entry/dependenciesAny/dependenciesNull.generated.js +1 -2
  230. package/lib/cjs/entry/dependenciesAny/dependenciesNumber.generated.js +1 -3
  231. package/lib/cjs/entry/dependenciesAny/dependenciesNumeric.generated.js +1 -5
  232. package/lib/cjs/entry/dependenciesAny/dependenciesObjectNode.generated.js +1 -3
  233. package/lib/cjs/entry/dependenciesAny/dependenciesOct.generated.js +1 -4
  234. package/lib/cjs/entry/dependenciesAny/dependenciesOnes.generated.js +1 -5
  235. package/lib/cjs/entry/dependenciesAny/dependenciesOperatorNode.generated.js +1 -3
  236. package/lib/cjs/entry/dependenciesAny/dependenciesOr.generated.js +1 -6
  237. package/lib/cjs/entry/dependenciesAny/dependenciesParenthesisNode.generated.js +1 -3
  238. package/lib/cjs/entry/dependenciesAny/dependenciesParse.generated.js +1 -19
  239. package/lib/cjs/entry/dependenciesAny/dependenciesParser.generated.js +1 -4
  240. package/lib/cjs/entry/dependenciesAny/dependenciesParserClass.generated.js +1 -3
  241. package/lib/cjs/entry/dependenciesAny/dependenciesPartitionSelect.generated.js +1 -6
  242. package/lib/cjs/entry/dependenciesAny/dependenciesPermutations.generated.js +1 -4
  243. package/lib/cjs/entry/dependenciesAny/dependenciesPhi.generated.js +1 -3
  244. package/lib/cjs/entry/dependenciesAny/dependenciesPi.generated.js +1 -3
  245. package/lib/cjs/entry/dependenciesAny/dependenciesPickRandom.generated.js +1 -3
  246. package/lib/cjs/entry/dependenciesAny/dependenciesPinv.generated.js +1 -14
  247. package/lib/cjs/entry/dependenciesAny/dependenciesPlanckCharge.generated.js +1 -4
  248. package/lib/cjs/entry/dependenciesAny/dependenciesPlanckConstant.generated.js +1 -4
  249. package/lib/cjs/entry/dependenciesAny/dependenciesPlanckLength.generated.js +1 -4
  250. package/lib/cjs/entry/dependenciesAny/dependenciesPlanckMass.generated.js +1 -4
  251. package/lib/cjs/entry/dependenciesAny/dependenciesPlanckTemperature.generated.js +1 -4
  252. package/lib/cjs/entry/dependenciesAny/dependenciesPlanckTime.generated.js +1 -4
  253. package/lib/cjs/entry/dependenciesAny/dependenciesPow.generated.js +1 -10
  254. package/lib/cjs/entry/dependenciesAny/dependenciesPrint.generated.js +1 -3
  255. package/lib/cjs/entry/dependenciesAny/dependenciesProd.generated.js +1 -5
  256. package/lib/cjs/entry/dependenciesAny/dependenciesProtonMass.generated.js +1 -4
  257. package/lib/cjs/entry/dependenciesAny/dependenciesQr.generated.js +1 -17
  258. package/lib/cjs/entry/dependenciesAny/dependenciesQuantileSeq.generated.js +1 -7
  259. package/lib/cjs/entry/dependenciesAny/dependenciesQuantumOfCirculation.generated.js +1 -4
  260. package/lib/cjs/entry/dependenciesAny/dependenciesRandom.generated.js +1 -3
  261. package/lib/cjs/entry/dependenciesAny/dependenciesRandomInt.generated.js +1 -3
  262. package/lib/cjs/entry/dependenciesAny/dependenciesRange.generated.js +1 -9
  263. package/lib/cjs/entry/dependenciesAny/dependenciesRangeClass.generated.js +1 -2
  264. package/lib/cjs/entry/dependenciesAny/dependenciesRangeNode.generated.js +1 -3
  265. package/lib/cjs/entry/dependenciesAny/dependenciesRangeTransform.generated.js +1 -9
  266. package/lib/cjs/entry/dependenciesAny/dependenciesRationalize.generated.js +1 -26
  267. package/lib/cjs/entry/dependenciesAny/dependenciesRe.generated.js +1 -3
  268. package/lib/cjs/entry/dependenciesAny/dependenciesReducedPlanckConstant.generated.js +1 -4
  269. package/lib/cjs/entry/dependenciesAny/dependenciesRelationalNode.generated.js +1 -3
  270. package/lib/cjs/entry/dependenciesAny/dependenciesReplacer.generated.js +1 -2
  271. package/lib/cjs/entry/dependenciesAny/dependenciesReshape.generated.js +1 -5
  272. package/lib/cjs/entry/dependenciesAny/dependenciesResize.generated.js +1 -3
  273. package/lib/cjs/entry/dependenciesAny/dependenciesResolve.generated.js +1 -8
  274. package/lib/cjs/entry/dependenciesAny/dependenciesResultSet.generated.js +1 -2
  275. package/lib/cjs/entry/dependenciesAny/dependenciesReviver.generated.js +1 -2
  276. package/lib/cjs/entry/dependenciesAny/dependenciesRightArithShift.generated.js +1 -7
  277. package/lib/cjs/entry/dependenciesAny/dependenciesRightLogShift.generated.js +1 -7
  278. package/lib/cjs/entry/dependenciesAny/dependenciesRotate.generated.js +1 -5
  279. package/lib/cjs/entry/dependenciesAny/dependenciesRotationMatrix.generated.js +1 -13
  280. package/lib/cjs/entry/dependenciesAny/dependenciesRound.generated.js +1 -8
  281. package/lib/cjs/entry/dependenciesAny/dependenciesRow.generated.js +1 -6
  282. package/lib/cjs/entry/dependenciesAny/dependenciesRowTransform.generated.js +1 -6
  283. package/lib/cjs/entry/dependenciesAny/dependenciesRydberg.generated.js +1 -4
  284. package/lib/cjs/entry/dependenciesAny/dependenciesSQRT1_2.generated.js +2 -3
  285. package/lib/cjs/entry/dependenciesAny/dependenciesSQRT2.generated.js +1 -3
  286. package/lib/cjs/entry/dependenciesAny/dependenciesSackurTetrode.generated.js +1 -3
  287. package/lib/cjs/entry/dependenciesAny/dependenciesSec.generated.js +1 -4
  288. package/lib/cjs/entry/dependenciesAny/dependenciesSech.generated.js +1 -4
  289. package/lib/cjs/entry/dependenciesAny/dependenciesSecondRadiation.generated.js +1 -4
  290. package/lib/cjs/entry/dependenciesAny/dependenciesSetCartesian.generated.js +1 -8
  291. package/lib/cjs/entry/dependenciesAny/dependenciesSetDifference.generated.js +1 -8
  292. package/lib/cjs/entry/dependenciesAny/dependenciesSetDistinct.generated.js +1 -8
  293. package/lib/cjs/entry/dependenciesAny/dependenciesSetIntersect.generated.js +1 -8
  294. package/lib/cjs/entry/dependenciesAny/dependenciesSetIsSubset.generated.js +1 -7
  295. package/lib/cjs/entry/dependenciesAny/dependenciesSetMultiplicity.generated.js +1 -7
  296. package/lib/cjs/entry/dependenciesAny/dependenciesSetPowerset.generated.js +1 -7
  297. package/lib/cjs/entry/dependenciesAny/dependenciesSetSize.generated.js +1 -4
  298. package/lib/cjs/entry/dependenciesAny/dependenciesSetSymDifference.generated.js +1 -8
  299. package/lib/cjs/entry/dependenciesAny/dependenciesSetUnion.generated.js +1 -9
  300. package/lib/cjs/entry/dependenciesAny/dependenciesSign.generated.js +1 -6
  301. package/lib/cjs/entry/dependenciesAny/dependenciesSimplify.generated.js +1 -26
  302. package/lib/cjs/entry/dependenciesAny/dependenciesSimplifyConstant.generated.js +1 -15
  303. package/lib/cjs/entry/dependenciesAny/dependenciesSimplifyCore.generated.js +1 -20
  304. package/lib/cjs/entry/dependenciesAny/dependenciesSin.generated.js +1 -3
  305. package/lib/cjs/entry/dependenciesAny/dependenciesSinh.generated.js +1 -3
  306. package/lib/cjs/entry/dependenciesAny/dependenciesSize.generated.js +1 -4
  307. package/lib/cjs/entry/dependenciesAny/dependenciesSlu.generated.js +1 -12
  308. package/lib/cjs/entry/dependenciesAny/dependenciesSmaller.generated.js +1 -5
  309. package/lib/cjs/entry/dependenciesAny/dependenciesSmallerEq.generated.js +1 -5
  310. package/lib/cjs/entry/dependenciesAny/dependenciesSort.generated.js +1 -6
  311. package/lib/cjs/entry/dependenciesAny/dependenciesSpaClass.generated.js +1 -5
  312. package/lib/cjs/entry/dependenciesAny/dependenciesSparse.generated.js +1 -4
  313. package/lib/cjs/entry/dependenciesAny/dependenciesSparseMatrixClass.generated.js +1 -5
  314. package/lib/cjs/entry/dependenciesAny/dependenciesSpeedOfLight.generated.js +1 -4
  315. package/lib/cjs/entry/dependenciesAny/dependenciesSplitUnit.generated.js +1 -3
  316. package/lib/cjs/entry/dependenciesAny/dependenciesSqrt.generated.js +1 -4
  317. package/lib/cjs/entry/dependenciesAny/dependenciesSqrtm.generated.js +1 -13
  318. package/lib/cjs/entry/dependenciesAny/dependenciesSquare.generated.js +1 -3
  319. package/lib/cjs/entry/dependenciesAny/dependenciesSqueeze.generated.js +1 -4
  320. package/lib/cjs/entry/dependenciesAny/dependenciesStd.generated.js +1 -6
  321. package/lib/cjs/entry/dependenciesAny/dependenciesStdTransform.generated.js +1 -6
  322. package/lib/cjs/entry/dependenciesAny/dependenciesStefanBoltzmann.generated.js +1 -4
  323. package/lib/cjs/entry/dependenciesAny/dependenciesStirlingS2.generated.js +1 -15
  324. package/lib/cjs/entry/dependenciesAny/dependenciesString.generated.js +1 -3
  325. package/lib/cjs/entry/dependenciesAny/dependenciesSubset.generated.js +1 -4
  326. package/lib/cjs/entry/dependenciesAny/dependenciesSubsetTransform.generated.js +1 -4
  327. package/lib/cjs/entry/dependenciesAny/dependenciesSubtract.generated.js +1 -8
  328. package/lib/cjs/entry/dependenciesAny/dependenciesSum.generated.js +1 -5
  329. package/lib/cjs/entry/dependenciesAny/dependenciesSumTransform.generated.js +1 -5
  330. package/lib/cjs/entry/dependenciesAny/dependenciesSymbolNode.generated.js +1 -4
  331. package/lib/cjs/entry/dependenciesAny/dependenciesSymbolicEqual.generated.js +1 -6
  332. package/lib/cjs/entry/dependenciesAny/dependenciesTan.generated.js +1 -3
  333. package/lib/cjs/entry/dependenciesAny/dependenciesTanh.generated.js +1 -3
  334. package/lib/cjs/entry/dependenciesAny/dependenciesTau.generated.js +1 -3
  335. package/lib/cjs/entry/dependenciesAny/dependenciesThomsonCrossSection.generated.js +1 -4
  336. package/lib/cjs/entry/dependenciesAny/dependenciesTo.generated.js +1 -4
  337. package/lib/cjs/entry/dependenciesAny/dependenciesTrace.generated.js +1 -5
  338. package/lib/cjs/entry/dependenciesAny/dependenciesTranspose.generated.js +1 -4
  339. package/lib/cjs/entry/dependenciesAny/dependenciesTrue.generated.js +1 -2
  340. package/lib/cjs/entry/dependenciesAny/dependenciesTypeOf.generated.js +1 -3
  341. package/lib/cjs/entry/dependenciesAny/dependenciesTyped.generated.js +1 -6
  342. package/lib/cjs/entry/dependenciesAny/dependenciesUnaryMinus.generated.js +1 -3
  343. package/lib/cjs/entry/dependenciesAny/dependenciesUnaryPlus.generated.js +1 -4
  344. package/lib/cjs/entry/dependenciesAny/dependenciesUnequal.generated.js +1 -6
  345. package/lib/cjs/entry/dependenciesAny/dependenciesUnitClass.generated.js +1 -17
  346. package/lib/cjs/entry/dependenciesAny/dependenciesUnitFunction.generated.js +1 -4
  347. package/lib/cjs/entry/dependenciesAny/dependenciesUppercaseE.generated.js +1 -3
  348. package/lib/cjs/entry/dependenciesAny/dependenciesUppercasePi.generated.js +1 -3
  349. package/lib/cjs/entry/dependenciesAny/dependenciesUsolve.generated.js +1 -9
  350. package/lib/cjs/entry/dependenciesAny/dependenciesUsolveAll.generated.js +1 -9
  351. package/lib/cjs/entry/dependenciesAny/dependenciesVacuumImpedance.generated.js +1 -4
  352. package/lib/cjs/entry/dependenciesAny/dependenciesVariance.generated.js +1 -9
  353. package/lib/cjs/entry/dependenciesAny/dependenciesVarianceTransform.generated.js +1 -9
  354. package/lib/cjs/entry/dependenciesAny/dependenciesVersion.generated.js +1 -2
  355. package/lib/cjs/entry/dependenciesAny/dependenciesWeakMixingAngle.generated.js +1 -3
  356. package/lib/cjs/entry/dependenciesAny/dependenciesWienDisplacement.generated.js +1 -4
  357. package/lib/cjs/entry/dependenciesAny/dependenciesXgcd.generated.js +1 -5
  358. package/lib/cjs/entry/dependenciesAny/dependenciesXor.generated.js +1 -5
  359. package/lib/cjs/entry/dependenciesAny/dependenciesZeros.generated.js +1 -5
  360. package/lib/cjs/entry/dependenciesAny.generated.js +0 -346
  361. package/lib/cjs/entry/dependenciesNumber/dependenciesAbs.generated.js +1 -3
  362. package/lib/cjs/entry/dependenciesNumber/dependenciesAccessorNode.generated.js +1 -4
  363. package/lib/cjs/entry/dependenciesNumber/dependenciesAcos.generated.js +1 -3
  364. package/lib/cjs/entry/dependenciesNumber/dependenciesAcosh.generated.js +1 -3
  365. package/lib/cjs/entry/dependenciesNumber/dependenciesAcot.generated.js +1 -3
  366. package/lib/cjs/entry/dependenciesNumber/dependenciesAcoth.generated.js +1 -3
  367. package/lib/cjs/entry/dependenciesNumber/dependenciesAcsc.generated.js +1 -3
  368. package/lib/cjs/entry/dependenciesNumber/dependenciesAcsch.generated.js +1 -3
  369. package/lib/cjs/entry/dependenciesNumber/dependenciesAdd.generated.js +1 -3
  370. package/lib/cjs/entry/dependenciesNumber/dependenciesAddScalar.generated.js +1 -3
  371. package/lib/cjs/entry/dependenciesNumber/dependenciesAnd.generated.js +1 -3
  372. package/lib/cjs/entry/dependenciesNumber/dependenciesApply.generated.js +1 -4
  373. package/lib/cjs/entry/dependenciesNumber/dependenciesApplyTransform.generated.js +1 -4
  374. package/lib/cjs/entry/dependenciesNumber/dependenciesArrayNode.generated.js +1 -3
  375. package/lib/cjs/entry/dependenciesNumber/dependenciesAsec.generated.js +1 -3
  376. package/lib/cjs/entry/dependenciesNumber/dependenciesAsech.generated.js +1 -3
  377. package/lib/cjs/entry/dependenciesNumber/dependenciesAsin.generated.js +1 -3
  378. package/lib/cjs/entry/dependenciesNumber/dependenciesAsinh.generated.js +1 -3
  379. package/lib/cjs/entry/dependenciesNumber/dependenciesAssignmentNode.generated.js +1 -5
  380. package/lib/cjs/entry/dependenciesNumber/dependenciesAtan.generated.js +1 -3
  381. package/lib/cjs/entry/dependenciesNumber/dependenciesAtan2.generated.js +1 -3
  382. package/lib/cjs/entry/dependenciesNumber/dependenciesAtanh.generated.js +1 -3
  383. package/lib/cjs/entry/dependenciesNumber/dependenciesBellNumbers.generated.js +1 -7
  384. package/lib/cjs/entry/dependenciesNumber/dependenciesBitAnd.generated.js +1 -3
  385. package/lib/cjs/entry/dependenciesNumber/dependenciesBitNot.generated.js +1 -3
  386. package/lib/cjs/entry/dependenciesNumber/dependenciesBitOr.generated.js +1 -3
  387. package/lib/cjs/entry/dependenciesNumber/dependenciesBitXor.generated.js +1 -3
  388. package/lib/cjs/entry/dependenciesNumber/dependenciesBlockNode.generated.js +1 -4
  389. package/lib/cjs/entry/dependenciesNumber/dependenciesBoolean.generated.js +1 -3
  390. package/lib/cjs/entry/dependenciesNumber/dependenciesCatalan.generated.js +1 -9
  391. package/lib/cjs/entry/dependenciesNumber/dependenciesCbrt.generated.js +1 -3
  392. package/lib/cjs/entry/dependenciesNumber/dependenciesCeil.generated.js +1 -4
  393. package/lib/cjs/entry/dependenciesNumber/dependenciesChain.generated.js +1 -4
  394. package/lib/cjs/entry/dependenciesNumber/dependenciesChainClass.generated.js +1 -3
  395. package/lib/cjs/entry/dependenciesNumber/dependenciesClone.generated.js +1 -3
  396. package/lib/cjs/entry/dependenciesNumber/dependenciesCombinations.generated.js +1 -3
  397. package/lib/cjs/entry/dependenciesNumber/dependenciesCombinationsWithRep.generated.js +1 -3
  398. package/lib/cjs/entry/dependenciesNumber/dependenciesCompare.generated.js +1 -3
  399. package/lib/cjs/entry/dependenciesNumber/dependenciesCompareNatural.generated.js +1 -4
  400. package/lib/cjs/entry/dependenciesNumber/dependenciesCompareText.generated.js +1 -3
  401. package/lib/cjs/entry/dependenciesNumber/dependenciesCompile.generated.js +1 -4
  402. package/lib/cjs/entry/dependenciesNumber/dependenciesComposition.generated.js +1 -9
  403. package/lib/cjs/entry/dependenciesNumber/dependenciesConditionalNode.generated.js +1 -3
  404. package/lib/cjs/entry/dependenciesNumber/dependenciesConstantNode.generated.js +1 -3
  405. package/lib/cjs/entry/dependenciesNumber/dependenciesCos.generated.js +1 -3
  406. package/lib/cjs/entry/dependenciesNumber/dependenciesCosh.generated.js +1 -3
  407. package/lib/cjs/entry/dependenciesNumber/dependenciesCot.generated.js +1 -3
  408. package/lib/cjs/entry/dependenciesNumber/dependenciesCoth.generated.js +1 -3
  409. package/lib/cjs/entry/dependenciesNumber/dependenciesCsc.generated.js +1 -3
  410. package/lib/cjs/entry/dependenciesNumber/dependenciesCsch.generated.js +1 -3
  411. package/lib/cjs/entry/dependenciesNumber/dependenciesCube.generated.js +1 -3
  412. package/lib/cjs/entry/dependenciesNumber/dependenciesCumSum.generated.js +1 -5
  413. package/lib/cjs/entry/dependenciesNumber/dependenciesCumSumTransform.generated.js +1 -5
  414. package/lib/cjs/entry/dependenciesNumber/dependenciesDeepEqual.generated.js +1 -4
  415. package/lib/cjs/entry/dependenciesNumber/dependenciesDerivative.generated.js +1 -13
  416. package/lib/cjs/entry/dependenciesNumber/dependenciesDivide.generated.js +1 -3
  417. package/lib/cjs/entry/dependenciesNumber/dependenciesDivideScalar.generated.js +1 -3
  418. package/lib/cjs/entry/dependenciesNumber/dependenciesE.generated.js +1 -2
  419. package/lib/cjs/entry/dependenciesNumber/dependenciesEqual.generated.js +1 -4
  420. package/lib/cjs/entry/dependenciesNumber/dependenciesEqualScalar.generated.js +1 -3
  421. package/lib/cjs/entry/dependenciesNumber/dependenciesEqualText.generated.js +1 -5
  422. package/lib/cjs/entry/dependenciesNumber/dependenciesErf.generated.js +1 -3
  423. package/lib/cjs/entry/dependenciesNumber/dependenciesEvaluate.generated.js +1 -4
  424. package/lib/cjs/entry/dependenciesNumber/dependenciesExp.generated.js +1 -3
  425. package/lib/cjs/entry/dependenciesNumber/dependenciesExpm1.generated.js +1 -3
  426. package/lib/cjs/entry/dependenciesNumber/dependenciesFactorial.generated.js +1 -4
  427. package/lib/cjs/entry/dependenciesNumber/dependenciesFalse.generated.js +1 -2
  428. package/lib/cjs/entry/dependenciesNumber/dependenciesFilter.generated.js +1 -3
  429. package/lib/cjs/entry/dependenciesNumber/dependenciesFilterTransform.generated.js +1 -3
  430. package/lib/cjs/entry/dependenciesNumber/dependenciesFix.generated.js +1 -5
  431. package/lib/cjs/entry/dependenciesNumber/dependenciesFloor.generated.js +1 -4
  432. package/lib/cjs/entry/dependenciesNumber/dependenciesForEach.generated.js +1 -3
  433. package/lib/cjs/entry/dependenciesNumber/dependenciesForEachTransform.generated.js +1 -3
  434. package/lib/cjs/entry/dependenciesNumber/dependenciesFormat.generated.js +1 -3
  435. package/lib/cjs/entry/dependenciesNumber/dependenciesFunctionAssignmentNode.generated.js +1 -4
  436. package/lib/cjs/entry/dependenciesNumber/dependenciesFunctionNode.generated.js +1 -4
  437. package/lib/cjs/entry/dependenciesNumber/dependenciesGamma.generated.js +1 -3
  438. package/lib/cjs/entry/dependenciesNumber/dependenciesGcd.generated.js +1 -3
  439. package/lib/cjs/entry/dependenciesNumber/dependenciesHasNumericValue.generated.js +1 -4
  440. package/lib/cjs/entry/dependenciesNumber/dependenciesHelp.generated.js +1 -4
  441. package/lib/cjs/entry/dependenciesNumber/dependenciesHelpClass.generated.js +1 -3
  442. package/lib/cjs/entry/dependenciesNumber/dependenciesHypot.generated.js +1 -10
  443. package/lib/cjs/entry/dependenciesNumber/dependenciesIndex.generated.js +1 -2
  444. package/lib/cjs/entry/dependenciesNumber/dependenciesIndexNode.generated.js +1 -4
  445. package/lib/cjs/entry/dependenciesNumber/dependenciesInfinity.generated.js +1 -2
  446. package/lib/cjs/entry/dependenciesNumber/dependenciesIsInteger.generated.js +1 -3
  447. package/lib/cjs/entry/dependenciesNumber/dependenciesIsNaN.generated.js +1 -3
  448. package/lib/cjs/entry/dependenciesNumber/dependenciesIsNegative.generated.js +1 -3
  449. package/lib/cjs/entry/dependenciesNumber/dependenciesIsNumeric.generated.js +1 -3
  450. package/lib/cjs/entry/dependenciesNumber/dependenciesIsPositive.generated.js +1 -3
  451. package/lib/cjs/entry/dependenciesNumber/dependenciesIsPrime.generated.js +1 -3
  452. package/lib/cjs/entry/dependenciesNumber/dependenciesIsZero.generated.js +1 -3
  453. package/lib/cjs/entry/dependenciesNumber/dependenciesLN10.generated.js +1 -2
  454. package/lib/cjs/entry/dependenciesNumber/dependenciesLN2.generated.js +1 -2
  455. package/lib/cjs/entry/dependenciesNumber/dependenciesLOG10E.generated.js +1 -2
  456. package/lib/cjs/entry/dependenciesNumber/dependenciesLOG2E.generated.js +1 -2
  457. package/lib/cjs/entry/dependenciesNumber/dependenciesLarger.generated.js +1 -3
  458. package/lib/cjs/entry/dependenciesNumber/dependenciesLargerEq.generated.js +1 -3
  459. package/lib/cjs/entry/dependenciesNumber/dependenciesLcm.generated.js +1 -3
  460. package/lib/cjs/entry/dependenciesNumber/dependenciesLeftShift.generated.js +1 -3
  461. package/lib/cjs/entry/dependenciesNumber/dependenciesLgamma.generated.js +1 -3
  462. package/lib/cjs/entry/dependenciesNumber/dependenciesLog.generated.js +1 -3
  463. package/lib/cjs/entry/dependenciesNumber/dependenciesLog10.generated.js +1 -3
  464. package/lib/cjs/entry/dependenciesNumber/dependenciesLog1p.generated.js +1 -3
  465. package/lib/cjs/entry/dependenciesNumber/dependenciesLog2.generated.js +1 -3
  466. package/lib/cjs/entry/dependenciesNumber/dependenciesMad.generated.js +1 -7
  467. package/lib/cjs/entry/dependenciesNumber/dependenciesMap.generated.js +1 -3
  468. package/lib/cjs/entry/dependenciesNumber/dependenciesMapTransform.generated.js +1 -3
  469. package/lib/cjs/entry/dependenciesNumber/dependenciesMatrix.generated.js +1 -2
  470. package/lib/cjs/entry/dependenciesNumber/dependenciesMax.generated.js +1 -5
  471. package/lib/cjs/entry/dependenciesNumber/dependenciesMaxTransform.generated.js +1 -5
  472. package/lib/cjs/entry/dependenciesNumber/dependenciesMean.generated.js +1 -5
  473. package/lib/cjs/entry/dependenciesNumber/dependenciesMeanTransform.generated.js +1 -5
  474. package/lib/cjs/entry/dependenciesNumber/dependenciesMedian.generated.js +1 -7
  475. package/lib/cjs/entry/dependenciesNumber/dependenciesMin.generated.js +1 -5
  476. package/lib/cjs/entry/dependenciesNumber/dependenciesMinTransform.generated.js +1 -5
  477. package/lib/cjs/entry/dependenciesNumber/dependenciesMod.generated.js +1 -3
  478. package/lib/cjs/entry/dependenciesNumber/dependenciesMode.generated.js +1 -5
  479. package/lib/cjs/entry/dependenciesNumber/dependenciesMultinomial.generated.js +1 -9
  480. package/lib/cjs/entry/dependenciesNumber/dependenciesMultiply.generated.js +1 -3
  481. package/lib/cjs/entry/dependenciesNumber/dependenciesMultiplyScalar.generated.js +1 -3
  482. package/lib/cjs/entry/dependenciesNumber/dependenciesNaN.generated.js +1 -2
  483. package/lib/cjs/entry/dependenciesNumber/dependenciesNode.generated.js +1 -2
  484. package/lib/cjs/entry/dependenciesNumber/dependenciesNorm.generated.js +1 -3
  485. package/lib/cjs/entry/dependenciesNumber/dependenciesNot.generated.js +1 -3
  486. package/lib/cjs/entry/dependenciesNumber/dependenciesNthRoot.generated.js +1 -3
  487. package/lib/cjs/entry/dependenciesNumber/dependenciesNull.generated.js +1 -2
  488. package/lib/cjs/entry/dependenciesNumber/dependenciesNumber.generated.js +1 -3
  489. package/lib/cjs/entry/dependenciesNumber/dependenciesNumeric.generated.js +1 -3
  490. package/lib/cjs/entry/dependenciesNumber/dependenciesObjectNode.generated.js +1 -3
  491. package/lib/cjs/entry/dependenciesNumber/dependenciesOperatorNode.generated.js +1 -3
  492. package/lib/cjs/entry/dependenciesNumber/dependenciesOr.generated.js +1 -3
  493. package/lib/cjs/entry/dependenciesNumber/dependenciesParenthesisNode.generated.js +1 -3
  494. package/lib/cjs/entry/dependenciesNumber/dependenciesParse.generated.js +1 -19
  495. package/lib/cjs/entry/dependenciesNumber/dependenciesParser.generated.js +1 -4
  496. package/lib/cjs/entry/dependenciesNumber/dependenciesParserClass.generated.js +1 -3
  497. package/lib/cjs/entry/dependenciesNumber/dependenciesPartitionSelect.generated.js +1 -6
  498. package/lib/cjs/entry/dependenciesNumber/dependenciesPermutations.generated.js +1 -4
  499. package/lib/cjs/entry/dependenciesNumber/dependenciesPhi.generated.js +1 -2
  500. package/lib/cjs/entry/dependenciesNumber/dependenciesPi.generated.js +1 -2
  501. package/lib/cjs/entry/dependenciesNumber/dependenciesPickRandom.generated.js +1 -3
  502. package/lib/cjs/entry/dependenciesNumber/dependenciesPow.generated.js +1 -3
  503. package/lib/cjs/entry/dependenciesNumber/dependenciesPrint.generated.js +1 -3
  504. package/lib/cjs/entry/dependenciesNumber/dependenciesProd.generated.js +1 -5
  505. package/lib/cjs/entry/dependenciesNumber/dependenciesQuantileSeq.generated.js +1 -7
  506. package/lib/cjs/entry/dependenciesNumber/dependenciesRandom.generated.js +1 -3
  507. package/lib/cjs/entry/dependenciesNumber/dependenciesRandomInt.generated.js +1 -3
  508. package/lib/cjs/entry/dependenciesNumber/dependenciesRange.generated.js +1 -8
  509. package/lib/cjs/entry/dependenciesNumber/dependenciesRangeClass.generated.js +1 -2
  510. package/lib/cjs/entry/dependenciesNumber/dependenciesRangeNode.generated.js +1 -3
  511. package/lib/cjs/entry/dependenciesNumber/dependenciesRangeTransform.generated.js +1 -8
  512. package/lib/cjs/entry/dependenciesNumber/dependenciesRationalize.generated.js +1 -24
  513. package/lib/cjs/entry/dependenciesNumber/dependenciesRelationalNode.generated.js +1 -3
  514. package/lib/cjs/entry/dependenciesNumber/dependenciesReplacer.generated.js +1 -2
  515. package/lib/cjs/entry/dependenciesNumber/dependenciesResolve.generated.js +1 -8
  516. package/lib/cjs/entry/dependenciesNumber/dependenciesResultSet.generated.js +1 -2
  517. package/lib/cjs/entry/dependenciesNumber/dependenciesReviver.generated.js +1 -2
  518. package/lib/cjs/entry/dependenciesNumber/dependenciesRightArithShift.generated.js +1 -3
  519. package/lib/cjs/entry/dependenciesNumber/dependenciesRightLogShift.generated.js +1 -3
  520. package/lib/cjs/entry/dependenciesNumber/dependenciesRound.generated.js +1 -3
  521. package/lib/cjs/entry/dependenciesNumber/dependenciesSQRT1_2.generated.js +1 -2
  522. package/lib/cjs/entry/dependenciesNumber/dependenciesSQRT2.generated.js +1 -2
  523. package/lib/cjs/entry/dependenciesNumber/dependenciesSec.generated.js +1 -3
  524. package/lib/cjs/entry/dependenciesNumber/dependenciesSech.generated.js +1 -3
  525. package/lib/cjs/entry/dependenciesNumber/dependenciesSign.generated.js +1 -3
  526. package/lib/cjs/entry/dependenciesNumber/dependenciesSimplify.generated.js +1 -24
  527. package/lib/cjs/entry/dependenciesNumber/dependenciesSimplifyConstant.generated.js +1 -13
  528. package/lib/cjs/entry/dependenciesNumber/dependenciesSimplifyCore.generated.js +1 -20
  529. package/lib/cjs/entry/dependenciesNumber/dependenciesSin.generated.js +1 -3
  530. package/lib/cjs/entry/dependenciesNumber/dependenciesSinh.generated.js +1 -3
  531. package/lib/cjs/entry/dependenciesNumber/dependenciesSize.generated.js +1 -4
  532. package/lib/cjs/entry/dependenciesNumber/dependenciesSmaller.generated.js +1 -3
  533. package/lib/cjs/entry/dependenciesNumber/dependenciesSmallerEq.generated.js +1 -3
  534. package/lib/cjs/entry/dependenciesNumber/dependenciesSqrt.generated.js +1 -3
  535. package/lib/cjs/entry/dependenciesNumber/dependenciesSquare.generated.js +1 -3
  536. package/lib/cjs/entry/dependenciesNumber/dependenciesStd.generated.js +1 -6
  537. package/lib/cjs/entry/dependenciesNumber/dependenciesStdTransform.generated.js +1 -6
  538. package/lib/cjs/entry/dependenciesNumber/dependenciesStirlingS2.generated.js +1 -14
  539. package/lib/cjs/entry/dependenciesNumber/dependenciesString.generated.js +1 -3
  540. package/lib/cjs/entry/dependenciesNumber/dependenciesSubset.generated.js +1 -2
  541. package/lib/cjs/entry/dependenciesNumber/dependenciesSubsetTransform.generated.js +1 -2
  542. package/lib/cjs/entry/dependenciesNumber/dependenciesSubtract.generated.js +1 -3
  543. package/lib/cjs/entry/dependenciesNumber/dependenciesSum.generated.js +1 -5
  544. package/lib/cjs/entry/dependenciesNumber/dependenciesSumTransform.generated.js +1 -5
  545. package/lib/cjs/entry/dependenciesNumber/dependenciesSymbolNode.generated.js +1 -3
  546. package/lib/cjs/entry/dependenciesNumber/dependenciesTan.generated.js +1 -3
  547. package/lib/cjs/entry/dependenciesNumber/dependenciesTanh.generated.js +1 -3
  548. package/lib/cjs/entry/dependenciesNumber/dependenciesTau.generated.js +1 -2
  549. package/lib/cjs/entry/dependenciesNumber/dependenciesTrue.generated.js +1 -2
  550. package/lib/cjs/entry/dependenciesNumber/dependenciesTypeOf.generated.js +1 -3
  551. package/lib/cjs/entry/dependenciesNumber/dependenciesTyped.generated.js +1 -2
  552. package/lib/cjs/entry/dependenciesNumber/dependenciesUnaryMinus.generated.js +1 -3
  553. package/lib/cjs/entry/dependenciesNumber/dependenciesUnaryPlus.generated.js +1 -3
  554. package/lib/cjs/entry/dependenciesNumber/dependenciesUnequal.generated.js +1 -4
  555. package/lib/cjs/entry/dependenciesNumber/dependenciesUppercaseE.generated.js +1 -3
  556. package/lib/cjs/entry/dependenciesNumber/dependenciesUppercasePi.generated.js +1 -3
  557. package/lib/cjs/entry/dependenciesNumber/dependenciesVariance.generated.js +1 -9
  558. package/lib/cjs/entry/dependenciesNumber/dependenciesVarianceTransform.generated.js +1 -9
  559. package/lib/cjs/entry/dependenciesNumber/dependenciesVersion.generated.js +1 -2
  560. package/lib/cjs/entry/dependenciesNumber/dependenciesXgcd.generated.js +1 -3
  561. package/lib/cjs/entry/dependenciesNumber/dependenciesXor.generated.js +1 -3
  562. package/lib/cjs/entry/dependenciesNumber.generated.js +0 -202
  563. package/lib/cjs/entry/impureFunctionsAny.generated.js +1 -9
  564. package/lib/cjs/entry/impureFunctionsNumber.generated.js +1 -9
  565. package/lib/cjs/entry/mainAny.js +0 -16
  566. package/lib/cjs/entry/mainNumber.js +0 -16
  567. package/lib/cjs/entry/pureFunctionsAny.generated.js +1 -15
  568. package/lib/cjs/entry/pureFunctionsNumber.generated.js +1 -15
  569. package/lib/cjs/entry/typeChecks.js +0 -1
  570. package/lib/cjs/error/ArgumentsError.js +0 -3
  571. package/lib/cjs/error/DimensionError.js +0 -3
  572. package/lib/cjs/error/IndexError.js +0 -6
  573. package/lib/cjs/expression/Help.js +5 -28
  574. package/lib/cjs/expression/Parser.js +8 -21
  575. package/lib/cjs/expression/embeddedDocs/embeddedDocs.js +1 -235
  576. package/lib/cjs/expression/function/compile.js +1 -5
  577. package/lib/cjs/expression/function/evaluate.js +1 -6
  578. package/lib/cjs/expression/function/help.js +3 -12
  579. package/lib/cjs/expression/function/parser.js +1 -4
  580. package/lib/cjs/expression/node/AccessorNode.js +15 -45
  581. package/lib/cjs/expression/node/ArrayNode.js +10 -33
  582. package/lib/cjs/expression/node/AssignmentNode.js +28 -68
  583. package/lib/cjs/expression/node/BlockNode.js +11 -37
  584. package/lib/cjs/expression/node/ConditionalNode.js +14 -56
  585. package/lib/cjs/expression/node/ConstantNode.js +10 -41
  586. package/lib/cjs/expression/node/FunctionAssignmentNode.js +13 -54
  587. package/lib/cjs/expression/node/FunctionNode.js +32 -103
  588. package/lib/cjs/expression/node/IndexNode.js +15 -44
  589. package/lib/cjs/expression/node/Node.js +23 -57
  590. package/lib/cjs/expression/node/ObjectNode.js +10 -48
  591. package/lib/cjs/expression/node/OperatorNode.js +35 -142
  592. package/lib/cjs/expression/node/ParenthesisNode.js +11 -33
  593. package/lib/cjs/expression/node/RangeNode.js +15 -66
  594. package/lib/cjs/expression/node/RelationalNode.js +8 -44
  595. package/lib/cjs/expression/node/SymbolNode.js +16 -43
  596. package/lib/cjs/expression/node/utils/access.js +0 -7
  597. package/lib/cjs/expression/node/utils/assign.js +1 -8
  598. package/lib/cjs/expression/operators.js +22 -54
  599. package/lib/cjs/expression/parse.js +162 -341
  600. package/lib/cjs/expression/transform/apply.transform.js +4 -10
  601. package/lib/cjs/expression/transform/column.transform.js +6 -12
  602. package/lib/cjs/expression/transform/concat.transform.js +3 -10
  603. package/lib/cjs/expression/transform/cumsum.transform.js +2 -9
  604. package/lib/cjs/expression/transform/diff.transform.js +5 -11
  605. package/lib/cjs/expression/transform/filter.transform.js +3 -14
  606. package/lib/cjs/expression/transform/forEach.transform.js +2 -14
  607. package/lib/cjs/expression/transform/index.transform.js +4 -9
  608. package/lib/cjs/expression/transform/map.transform.js +3 -16
  609. package/lib/cjs/expression/transform/max.transform.js +4 -10
  610. package/lib/cjs/expression/transform/mean.transform.js +3 -9
  611. package/lib/cjs/expression/transform/min.transform.js +4 -10
  612. package/lib/cjs/expression/transform/range.transform.js +8 -13
  613. package/lib/cjs/expression/transform/row.transform.js +6 -12
  614. package/lib/cjs/expression/transform/std.transform.js +4 -10
  615. package/lib/cjs/expression/transform/subset.transform.js +2 -6
  616. package/lib/cjs/expression/transform/sum.transform.js +3 -9
  617. package/lib/cjs/expression/transform/utils/compileInlineExpression.js +2 -7
  618. package/lib/cjs/expression/transform/utils/errorTransform.js +0 -3
  619. package/lib/cjs/expression/transform/utils/lastDimToZeroBase.js +0 -4
  620. package/lib/cjs/expression/transform/variance.transform.js +7 -13
  621. package/lib/cjs/factoriesAny.js +0 -278
  622. package/lib/cjs/factoriesNumber.js +20 -123
  623. package/lib/cjs/function/algebra/decomposition/lup.js +136 -173
  624. package/lib/cjs/function/algebra/decomposition/qr.js +36 -54
  625. package/lib/cjs/function/algebra/decomposition/slu.js +18 -22
  626. package/lib/cjs/function/algebra/derivative.js +47 -119
  627. package/lib/cjs/function/algebra/leafCount.js +2 -6
  628. package/lib/cjs/function/algebra/rationalize.js +152 -170
  629. package/lib/cjs/function/algebra/resolve.js +8 -19
  630. package/lib/cjs/function/algebra/simplify/util.js +14 -74
  631. package/lib/cjs/function/algebra/simplify.js +126 -213
  632. package/lib/cjs/function/algebra/simplifyConstant.js +45 -131
  633. package/lib/cjs/function/algebra/simplifyCore.js +29 -81
  634. package/lib/cjs/function/algebra/solver/lsolve.js +28 -35
  635. package/lib/cjs/function/algebra/solver/lsolveAll.js +30 -36
  636. package/lib/cjs/function/algebra/solver/lusolve.js +15 -25
  637. package/lib/cjs/function/algebra/solver/usolve.js +32 -40
  638. package/lib/cjs/function/algebra/solver/usolveAll.js +34 -36
  639. package/lib/cjs/function/algebra/solver/utils/solveValidation.js +4 -32
  640. package/lib/cjs/function/algebra/sparse/csAmd.js +249 -301
  641. package/lib/cjs/function/algebra/sparse/csChol.js +72 -88
  642. package/lib/cjs/function/algebra/sparse/csCounts.js +37 -55
  643. package/lib/cjs/function/algebra/sparse/csCumsum.js +8 -11
  644. package/lib/cjs/function/algebra/sparse/csDfs.js +34 -42
  645. package/lib/cjs/function/algebra/sparse/csEreach.js +24 -31
  646. package/lib/cjs/function/algebra/sparse/csEtree.js +23 -28
  647. package/lib/cjs/function/algebra/sparse/csFkeep.js +20 -25
  648. package/lib/cjs/function/algebra/sparse/csFlip.js +0 -1
  649. package/lib/cjs/function/algebra/sparse/csIpvec.js +2 -4
  650. package/lib/cjs/function/algebra/sparse/csLeaf.js +12 -13
  651. package/lib/cjs/function/algebra/sparse/csLu.js +71 -92
  652. package/lib/cjs/function/algebra/sparse/csMark.js +0 -2
  653. package/lib/cjs/function/algebra/sparse/csMarked.js +0 -1
  654. package/lib/cjs/function/algebra/sparse/csPermute.js +20 -25
  655. package/lib/cjs/function/algebra/sparse/csPost.js +14 -24
  656. package/lib/cjs/function/algebra/sparse/csReach.js +14 -20
  657. package/lib/cjs/function/algebra/sparse/csSpsolve.js +32 -40
  658. package/lib/cjs/function/algebra/sparse/csSqr.js +62 -86
  659. package/lib/cjs/function/algebra/sparse/csSymperm.js +33 -44
  660. package/lib/cjs/function/algebra/sparse/csTdfs.js +12 -15
  661. package/lib/cjs/function/algebra/sparse/csUnflip.js +0 -2
  662. package/lib/cjs/function/algebra/symbolicEqual.js +3 -8
  663. package/lib/cjs/function/arithmetic/abs.js +0 -5
  664. package/lib/cjs/function/arithmetic/add.js +6 -14
  665. package/lib/cjs/function/arithmetic/addScalar.js +0 -6
  666. package/lib/cjs/function/arithmetic/cbrt.js +15 -26
  667. package/lib/cjs/function/arithmetic/ceil.js +11 -29
  668. package/lib/cjs/function/arithmetic/cube.js +2 -4
  669. package/lib/cjs/function/arithmetic/divide.js +7 -11
  670. package/lib/cjs/function/arithmetic/divideScalar.js +1 -4
  671. package/lib/cjs/function/arithmetic/dotDivide.js +5 -13
  672. package/lib/cjs/function/arithmetic/dotMultiply.js +4 -10
  673. package/lib/cjs/function/arithmetic/dotPow.js +5 -14
  674. package/lib/cjs/function/arithmetic/exp.js +0 -4
  675. package/lib/cjs/function/arithmetic/expm1.js +1 -5
  676. package/lib/cjs/function/arithmetic/fix.js +9 -17
  677. package/lib/cjs/function/arithmetic/floor.js +11 -29
  678. package/lib/cjs/function/arithmetic/gcd.js +8 -19
  679. package/lib/cjs/function/arithmetic/hypot.js +8 -17
  680. package/lib/cjs/function/arithmetic/invmod.js +11 -19
  681. package/lib/cjs/function/arithmetic/lcm.js +7 -20
  682. package/lib/cjs/function/arithmetic/log.js +3 -7
  683. package/lib/cjs/function/arithmetic/log10.js +2 -7
  684. package/lib/cjs/function/arithmetic/log1p.js +5 -11
  685. package/lib/cjs/function/arithmetic/log2.js +3 -8
  686. package/lib/cjs/function/arithmetic/mod.js +6 -17
  687. package/lib/cjs/function/arithmetic/multiply.js +312 -335
  688. package/lib/cjs/function/arithmetic/multiplyScalar.js +0 -4
  689. package/lib/cjs/function/arithmetic/norm.js +41 -69
  690. package/lib/cjs/function/arithmetic/nthRoot.js +9 -25
  691. package/lib/cjs/function/arithmetic/nthRoots.js +7 -15
  692. package/lib/cjs/function/arithmetic/pow.js +21 -40
  693. package/lib/cjs/function/arithmetic/round.js +6 -22
  694. package/lib/cjs/function/arithmetic/sign.js +3 -9
  695. package/lib/cjs/function/arithmetic/sqrt.js +3 -6
  696. package/lib/cjs/function/arithmetic/square.js +0 -4
  697. package/lib/cjs/function/arithmetic/subtract.js +7 -17
  698. package/lib/cjs/function/arithmetic/unaryMinus.js +2 -6
  699. package/lib/cjs/function/arithmetic/unaryPlus.js +5 -7
  700. package/lib/cjs/function/arithmetic/xgcd.js +12 -18
  701. package/lib/cjs/function/bitwise/bitAnd.js +3 -11
  702. package/lib/cjs/function/bitwise/bitNot.js +0 -6
  703. package/lib/cjs/function/bitwise/bitOr.js +4 -12
  704. package/lib/cjs/function/bitwise/bitXor.js +3 -11
  705. package/lib/cjs/function/bitwise/leftShift.js +5 -21
  706. package/lib/cjs/function/bitwise/rightArithShift.js +5 -21
  707. package/lib/cjs/function/bitwise/rightLogShift.js +6 -19
  708. package/lib/cjs/function/bitwise/useMatrixForArrayScalar.js +1 -3
  709. package/lib/cjs/function/combinatorics/bellNumbers.js +6 -11
  710. package/lib/cjs/function/combinatorics/catalan.js +6 -10
  711. package/lib/cjs/function/combinatorics/composition.js +6 -10
  712. package/lib/cjs/function/combinatorics/stirlingS2.js +12 -23
  713. package/lib/cjs/function/complex/arg.js +1 -4
  714. package/lib/cjs/function/complex/conj.js +0 -4
  715. package/lib/cjs/function/complex/im.js +0 -4
  716. package/lib/cjs/function/complex/re.js +0 -4
  717. package/lib/cjs/function/geometry/distance.js +7 -55
  718. package/lib/cjs/function/geometry/intersect.js +19 -54
  719. package/lib/cjs/function/logical/and.js +5 -17
  720. package/lib/cjs/function/logical/not.js +0 -5
  721. package/lib/cjs/function/logical/or.js +4 -11
  722. package/lib/cjs/function/logical/xor.js +3 -10
  723. package/lib/cjs/function/matrix/apply.js +3 -23
  724. package/lib/cjs/function/matrix/column.js +4 -10
  725. package/lib/cjs/function/matrix/concat.js +9 -26
  726. package/lib/cjs/function/matrix/count.js +2 -5
  727. package/lib/cjs/function/matrix/cross.js +4 -11
  728. package/lib/cjs/function/matrix/ctranspose.js +2 -5
  729. package/lib/cjs/function/matrix/det.js +7 -26
  730. package/lib/cjs/function/matrix/diag.js +21 -35
  731. package/lib/cjs/function/matrix/diff.js +7 -24
  732. package/lib/cjs/function/matrix/dot.js +22 -46
  733. package/lib/cjs/function/matrix/eigs/complexEigs.js +156 -209
  734. package/lib/cjs/function/matrix/eigs/realSymetric.js +62 -106
  735. package/lib/cjs/function/matrix/eigs.js +40 -72
  736. package/lib/cjs/function/matrix/expm.js +26 -42
  737. package/lib/cjs/function/matrix/fft.js +12 -26
  738. package/lib/cjs/function/matrix/filter.js +1 -7
  739. package/lib/cjs/function/matrix/flatten.js +6 -12
  740. package/lib/cjs/function/matrix/forEach.js +1 -9
  741. package/lib/cjs/function/matrix/getMatrixDataType.js +0 -5
  742. package/lib/cjs/function/matrix/identity.js +14 -30
  743. package/lib/cjs/function/matrix/ifft.js +3 -8
  744. package/lib/cjs/function/matrix/inv.js +20 -44
  745. package/lib/cjs/function/matrix/kron.js +3 -10
  746. package/lib/cjs/function/matrix/map.js +1 -11
  747. package/lib/cjs/function/matrix/matrixFromColumns.js +12 -22
  748. package/lib/cjs/function/matrix/matrixFromFunction.js +2 -8
  749. package/lib/cjs/function/matrix/matrixFromRows.js +6 -18
  750. package/lib/cjs/function/matrix/ones.js +8 -22
  751. package/lib/cjs/function/matrix/partitionSelect.js +15 -26
  752. package/lib/cjs/function/matrix/pinv.js +18 -50
  753. package/lib/cjs/function/matrix/range.js +15 -41
  754. package/lib/cjs/function/matrix/reshape.js +1 -5
  755. package/lib/cjs/function/matrix/resize.js +6 -27
  756. package/lib/cjs/function/matrix/rotate.js +2 -14
  757. package/lib/cjs/function/matrix/rotationMatrix.js +14 -33
  758. package/lib/cjs/function/matrix/row.js +4 -10
  759. package/lib/cjs/function/matrix/size.js +2 -7
  760. package/lib/cjs/function/matrix/sort.js +7 -20
  761. package/lib/cjs/function/matrix/sqrtm.js +12 -25
  762. package/lib/cjs/function/matrix/squeeze.js +3 -8
  763. package/lib/cjs/function/matrix/subset.js +16 -39
  764. package/lib/cjs/function/matrix/trace.js +22 -36
  765. package/lib/cjs/function/matrix/transpose.js +43 -58
  766. package/lib/cjs/function/matrix/zeros.js +10 -23
  767. package/lib/cjs/function/probability/combinations.js +3 -12
  768. package/lib/cjs/function/probability/combinationsWithRep.js +1 -17
  769. package/lib/cjs/function/probability/factorial.js +1 -7
  770. package/lib/cjs/function/probability/gamma.js +23 -34
  771. package/lib/cjs/function/probability/kldivergence.js +10 -22
  772. package/lib/cjs/function/probability/lgamma.js +13 -17
  773. package/lib/cjs/function/probability/multinomial.js +6 -11
  774. package/lib/cjs/function/probability/permutations.js +6 -19
  775. package/lib/cjs/function/probability/pickRandom.js +7 -27
  776. package/lib/cjs/function/probability/random.js +9 -20
  777. package/lib/cjs/function/probability/randomInt.js +3 -12
  778. package/lib/cjs/function/probability/util/randomMatrix.js +0 -3
  779. package/lib/cjs/function/probability/util/seededRNG.js +6 -9
  780. package/lib/cjs/function/relational/compare.js +8 -17
  781. package/lib/cjs/function/relational/compareNatural.js +28 -59
  782. package/lib/cjs/function/relational/compareText.js +2 -6
  783. package/lib/cjs/function/relational/compareUnits.js +0 -3
  784. package/lib/cjs/function/relational/deepEqual.js +2 -8
  785. package/lib/cjs/function/relational/equal.js +5 -15
  786. package/lib/cjs/function/relational/equalScalar.js +3 -9
  787. package/lib/cjs/function/relational/equalText.js +2 -5
  788. package/lib/cjs/function/relational/larger.js +5 -14
  789. package/lib/cjs/function/relational/largerEq.js +5 -14
  790. package/lib/cjs/function/relational/smaller.js +5 -14
  791. package/lib/cjs/function/relational/smallerEq.js +5 -14
  792. package/lib/cjs/function/relational/unequal.js +6 -17
  793. package/lib/cjs/function/set/setCartesian.js +9 -17
  794. package/lib/cjs/function/set/setDifference.js +9 -19
  795. package/lib/cjs/function/set/setDistinct.js +9 -17
  796. package/lib/cjs/function/set/setIntersect.js +9 -17
  797. package/lib/cjs/function/set/setIsSubset.js +4 -13
  798. package/lib/cjs/function/set/setMultiplicity.js +4 -11
  799. package/lib/cjs/function/set/setPowerset.js +10 -20
  800. package/lib/cjs/function/set/setSize.js +1 -7
  801. package/lib/cjs/function/set/setSymDifference.js +5 -10
  802. package/lib/cjs/function/set/setUnion.js +6 -11
  803. package/lib/cjs/function/special/erf.js +12 -27
  804. package/lib/cjs/function/statistics/cumsum.js +4 -27
  805. package/lib/cjs/function/statistics/mad.js +4 -12
  806. package/lib/cjs/function/statistics/max.js +7 -16
  807. package/lib/cjs/function/statistics/mean.js +4 -14
  808. package/lib/cjs/function/statistics/median.js +14 -21
  809. package/lib/cjs/function/statistics/min.js +7 -16
  810. package/lib/cjs/function/statistics/mode.js +3 -15
  811. package/lib/cjs/function/statistics/prod.js +9 -13
  812. package/lib/cjs/function/statistics/quantileSeq.js +19 -65
  813. package/lib/cjs/function/statistics/std.js +3 -10
  814. package/lib/cjs/function/statistics/sum.js +6 -14
  815. package/lib/cjs/function/statistics/utils/improveErrorMessage.js +0 -5
  816. package/lib/cjs/function/statistics/variance.js +11 -24
  817. package/lib/cjs/function/string/bin.js +2 -4
  818. package/lib/cjs/function/string/format.js +0 -4
  819. package/lib/cjs/function/string/hex.js +2 -4
  820. package/lib/cjs/function/string/oct.js +2 -3
  821. package/lib/cjs/function/string/print.js +1 -10
  822. package/lib/cjs/function/trigonometry/acos.js +2 -5
  823. package/lib/cjs/function/trigonometry/acosh.js +2 -8
  824. package/lib/cjs/function/trigonometry/acot.js +1 -5
  825. package/lib/cjs/function/trigonometry/acoth.js +3 -8
  826. package/lib/cjs/function/trigonometry/acsc.js +3 -8
  827. package/lib/cjs/function/trigonometry/acsch.js +1 -5
  828. package/lib/cjs/function/trigonometry/asec.js +3 -8
  829. package/lib/cjs/function/trigonometry/asech.js +3 -10
  830. package/lib/cjs/function/trigonometry/asin.js +2 -5
  831. package/lib/cjs/function/trigonometry/asinh.js +0 -4
  832. package/lib/cjs/function/trigonometry/atan.js +0 -3
  833. package/lib/cjs/function/trigonometry/atan2.js +6 -13
  834. package/lib/cjs/function/trigonometry/atanh.js +2 -7
  835. package/lib/cjs/function/trigonometry/cos.js +1 -4
  836. package/lib/cjs/function/trigonometry/cosh.js +0 -4
  837. package/lib/cjs/function/trigonometry/cot.js +2 -6
  838. package/lib/cjs/function/trigonometry/coth.js +1 -5
  839. package/lib/cjs/function/trigonometry/csc.js +2 -6
  840. package/lib/cjs/function/trigonometry/csch.js +1 -5
  841. package/lib/cjs/function/trigonometry/sec.js +2 -6
  842. package/lib/cjs/function/trigonometry/sech.js +1 -5
  843. package/lib/cjs/function/trigonometry/sin.js +1 -4
  844. package/lib/cjs/function/trigonometry/sinh.js +0 -4
  845. package/lib/cjs/function/trigonometry/tan.js +1 -4
  846. package/lib/cjs/function/trigonometry/tanh.js +0 -4
  847. package/lib/cjs/function/trigonometry/trigUnit.js +0 -3
  848. package/lib/cjs/function/unit/to.js +2 -5
  849. package/lib/cjs/function/utils/clone.js +0 -4
  850. package/lib/cjs/function/utils/hasNumericValue.js +1 -4
  851. package/lib/cjs/function/utils/isInteger.js +1 -5
  852. package/lib/cjs/function/utils/isNaN.js +0 -5
  853. package/lib/cjs/function/utils/isNegative.js +1 -5
  854. package/lib/cjs/function/utils/isNumeric.js +0 -4
  855. package/lib/cjs/function/utils/isPositive.js +0 -5
  856. package/lib/cjs/function/utils/isPrime.js +4 -25
  857. package/lib/cjs/function/utils/isZero.js +0 -5
  858. package/lib/cjs/function/utils/numeric.js +5 -13
  859. package/lib/cjs/function/utils/typeOf.js +0 -4
  860. package/lib/cjs/header.js +2 -2
  861. package/lib/cjs/index.js +0 -2
  862. package/lib/cjs/json/replacer.js +0 -3
  863. package/lib/cjs/json/reviver.js +0 -5
  864. package/lib/cjs/number.js +0 -2
  865. package/lib/cjs/plain/bignumber/arithmetic.js +0 -10
  866. package/lib/cjs/plain/bignumber/index.js +0 -7
  867. package/lib/cjs/plain/number/arithmetic.js +24 -85
  868. package/lib/cjs/plain/number/bitwise.js +0 -23
  869. package/lib/cjs/plain/number/combinations.js +4 -14
  870. package/lib/cjs/plain/number/constants.js +0 -1
  871. package/lib/cjs/plain/number/index.js +0 -18
  872. package/lib/cjs/plain/number/logical.js +0 -8
  873. package/lib/cjs/plain/number/probability.js +11 -22
  874. package/lib/cjs/plain/number/trigonometry.js +0 -52
  875. package/lib/cjs/plain/number/utils.js +0 -12
  876. package/lib/cjs/type/bignumber/BigNumber.js +4 -13
  877. package/lib/cjs/type/bignumber/function/bignumber.js +1 -10
  878. package/lib/cjs/type/boolean.js +2 -9
  879. package/lib/cjs/type/chain/Chain.js +18 -43
  880. package/lib/cjs/type/chain/function/chain.js +1 -4
  881. package/lib/cjs/type/complex/Complex.js +8 -35
  882. package/lib/cjs/type/complex/function/complex.js +2 -7
  883. package/lib/cjs/type/fraction/Fraction.js +2 -8
  884. package/lib/cjs/type/fraction/function/fraction.js +2 -6
  885. package/lib/cjs/type/matrix/DenseMatrix.js +144 -246
  886. package/lib/cjs/type/matrix/FibonacciHeap.js +119 -159
  887. package/lib/cjs/type/matrix/ImmutableDenseMatrix.js +20 -43
  888. package/lib/cjs/type/matrix/Matrix.js +18 -38
  889. package/lib/cjs/type/matrix/MatrixIndex.js +24 -65
  890. package/lib/cjs/type/matrix/Range.js +14 -50
  891. package/lib/cjs/type/matrix/Spa.js +34 -54
  892. package/lib/cjs/type/matrix/SparseMatrix.js +414 -531
  893. package/lib/cjs/type/matrix/function/index.js +1 -5
  894. package/lib/cjs/type/matrix/function/matrix.js +4 -9
  895. package/lib/cjs/type/matrix/function/sparse.js +1 -4
  896. package/lib/cjs/type/matrix/utils/matAlgo01xDSid.js +36 -36
  897. package/lib/cjs/type/matrix/utils/matAlgo02xDS0.js +43 -43
  898. package/lib/cjs/type/matrix/utils/matAlgo03xDSf.js +40 -40
  899. package/lib/cjs/type/matrix/utils/matAlgo04xSidSid.js +71 -71
  900. package/lib/cjs/type/matrix/utils/matAlgo05xSfSf.js +73 -74
  901. package/lib/cjs/type/matrix/utils/matAlgo06xS0S0.js +61 -61
  902. package/lib/cjs/type/matrix/utils/matAlgo07xSSf.js +47 -49
  903. package/lib/cjs/type/matrix/utils/matAlgo08xS0Sid.js +67 -67
  904. package/lib/cjs/type/matrix/utils/matAlgo09xS0Sf.js +57 -56
  905. package/lib/cjs/type/matrix/utils/matAlgo10xSids.js +33 -33
  906. package/lib/cjs/type/matrix/utils/matAlgo11xS0s.js +39 -38
  907. package/lib/cjs/type/matrix/utils/matAlgo12xSfs.js +33 -33
  908. package/lib/cjs/type/matrix/utils/matAlgo13xDD.js +26 -28
  909. package/lib/cjs/type/matrix/utils/matAlgo14xDs.js +18 -19
  910. package/lib/cjs/type/matrix/utils/matrixAlgorithmSuite.js +10 -32
  911. package/lib/cjs/type/number.js +7 -26
  912. package/lib/cjs/type/resultset/ResultSet.js +5 -13
  913. package/lib/cjs/type/string.js +0 -5
  914. package/lib/cjs/type/unit/Unit.js +205 -388
  915. package/lib/cjs/type/unit/function/createUnit.js +1 -4
  916. package/lib/cjs/type/unit/function/splitUnit.js +0 -3
  917. package/lib/cjs/type/unit/function/unit.js +5 -6
  918. package/lib/cjs/type/unit/physicalConstants.js +22 -19
  919. package/lib/cjs/utils/array.js +62 -137
  920. package/lib/cjs/utils/bignumber/bitwise.js +13 -96
  921. package/lib/cjs/utils/bignumber/constants.js +4 -7
  922. package/lib/cjs/utils/bignumber/formatter.js +20 -46
  923. package/lib/cjs/utils/bignumber/nearlyEqual.js +8 -10
  924. package/lib/cjs/utils/collection.js +24 -43
  925. package/lib/cjs/utils/complex.js +0 -2
  926. package/lib/cjs/utils/customs.js +18 -42
  927. package/lib/cjs/utils/emitter.js +2 -4
  928. package/lib/cjs/utils/factory.js +11 -28
  929. package/lib/cjs/utils/function.js +4 -21
  930. package/lib/cjs/utils/is.js +3 -50
  931. package/lib/cjs/utils/latex.js +6 -14
  932. package/lib/cjs/utils/log.js +0 -6
  933. package/lib/cjs/utils/lruQueue.js +0 -9
  934. package/lib/cjs/utils/map.js +12 -44
  935. package/lib/cjs/utils/noop.js +0 -5
  936. package/lib/cjs/utils/number.js +71 -151
  937. package/lib/cjs/utils/object.js +25 -85
  938. package/lib/cjs/utils/product.js +0 -4
  939. package/lib/cjs/utils/scope.js +0 -4
  940. package/lib/cjs/utils/snapshot.js +13 -47
  941. package/lib/cjs/utils/string.js +9 -40
  942. package/lib/cjs/utils/switch.js +0 -5
  943. package/lib/cjs/version.js +2 -2
  944. package/lib/esm/constants.js +9 -5
  945. package/lib/esm/core/create.js +24 -26
  946. package/lib/esm/core/function/config.js +12 -10
  947. package/lib/esm/core/function/import.js +21 -57
  948. package/lib/esm/core/function/typed.js +23 -41
  949. package/lib/esm/entry/configReadonly.js +2 -3
  950. package/lib/esm/entry/dependenciesAny.generated.js +0 -1
  951. package/lib/esm/entry/dependenciesNumber.generated.js +0 -1
  952. package/lib/esm/entry/impureFunctionsAny.generated.js +2 -8
  953. package/lib/esm/entry/impureFunctionsNumber.generated.js +2 -8
  954. package/lib/esm/entry/mainAny.js +10 -5
  955. package/lib/esm/entry/mainNumber.js +10 -5
  956. package/lib/esm/entry/pureFunctionsAny.generated.js +2 -1
  957. package/lib/esm/entry/pureFunctionsNumber.generated.js +2 -1
  958. package/lib/esm/error/ArgumentsError.js +0 -1
  959. package/lib/esm/error/DimensionError.js +0 -1
  960. package/lib/esm/error/IndexError.js +0 -4
  961. package/lib/esm/expression/Help.js +5 -23
  962. package/lib/esm/expression/Parser.js +8 -18
  963. package/lib/esm/expression/embeddedDocs/embeddedDocs.js +1 -0
  964. package/lib/esm/expression/function/compile.js +0 -1
  965. package/lib/esm/expression/function/evaluate.js +0 -1
  966. package/lib/esm/expression/function/help.js +1 -5
  967. package/lib/esm/expression/function/parser.js +0 -1
  968. package/lib/esm/expression/node/AccessorNode.js +14 -40
  969. package/lib/esm/expression/node/ArrayNode.js +11 -29
  970. package/lib/esm/expression/node/AssignmentNode.js +25 -58
  971. package/lib/esm/expression/node/BlockNode.js +11 -33
  972. package/lib/esm/expression/node/ConditionalNode.js +15 -53
  973. package/lib/esm/expression/node/ConstantNode.js +11 -37
  974. package/lib/esm/expression/node/FunctionAssignmentNode.js +13 -46
  975. package/lib/esm/expression/node/FunctionNode.js +30 -93
  976. package/lib/esm/expression/node/IndexNode.js +15 -38
  977. package/lib/esm/expression/node/Node.js +23 -67
  978. package/lib/esm/expression/node/ObjectNode.js +11 -41
  979. package/lib/esm/expression/node/OperatorNode.js +36 -138
  980. package/lib/esm/expression/node/ParenthesisNode.js +12 -32
  981. package/lib/esm/expression/node/RangeNode.js +16 -62
  982. package/lib/esm/expression/node/RelationalNode.js +9 -37
  983. package/lib/esm/expression/node/SymbolNode.js +16 -39
  984. package/lib/esm/expression/node/utils/access.js +0 -2
  985. package/lib/esm/expression/node/utils/assign.js +0 -2
  986. package/lib/esm/expression/operators.js +21 -41
  987. package/lib/esm/expression/parse.js +145 -323
  988. package/lib/esm/expression/transform/apply.transform.js +3 -4
  989. package/lib/esm/expression/transform/column.transform.js +3 -4
  990. package/lib/esm/expression/transform/concat.transform.js +1 -3
  991. package/lib/esm/expression/transform/cumsum.transform.js +1 -3
  992. package/lib/esm/expression/transform/diff.transform.js +1 -2
  993. package/lib/esm/expression/transform/filter.transform.js +3 -7
  994. package/lib/esm/expression/transform/forEach.transform.js +2 -8
  995. package/lib/esm/expression/transform/index.transform.js +4 -6
  996. package/lib/esm/expression/transform/map.transform.js +3 -9
  997. package/lib/esm/expression/transform/max.transform.js +1 -2
  998. package/lib/esm/expression/transform/mean.transform.js +1 -2
  999. package/lib/esm/expression/transform/min.transform.js +1 -2
  1000. package/lib/esm/expression/transform/range.transform.js +1 -3
  1001. package/lib/esm/expression/transform/row.transform.js +3 -4
  1002. package/lib/esm/expression/transform/std.transform.js +1 -2
  1003. package/lib/esm/expression/transform/subset.transform.js +1 -1
  1004. package/lib/esm/expression/transform/sum.transform.js +1 -2
  1005. package/lib/esm/expression/transform/utils/compileInlineExpression.js +3 -5
  1006. package/lib/esm/expression/transform/utils/errorTransform.js +1 -2
  1007. package/lib/esm/expression/transform/utils/lastDimToZeroBase.js +1 -3
  1008. package/lib/esm/expression/transform/variance.transform.js +1 -2
  1009. package/lib/esm/factoriesAny.js +2 -1
  1010. package/lib/esm/factoriesNumber.js +58 -33
  1011. package/lib/esm/function/algebra/decomposition/lup.js +124 -158
  1012. package/lib/esm/function/algebra/decomposition/qr.js +22 -36
  1013. package/lib/esm/function/algebra/decomposition/slu.js +9 -8
  1014. package/lib/esm/function/algebra/derivative.js +36 -105
  1015. package/lib/esm/function/algebra/leafCount.js +1 -3
  1016. package/lib/esm/function/algebra/rationalize.js +127 -142
  1017. package/lib/esm/function/algebra/resolve.js +3 -10
  1018. package/lib/esm/function/algebra/simplify/util.js +12 -67
  1019. package/lib/esm/function/algebra/simplify.js +86 -162
  1020. package/lib/esm/function/algebra/simplifyConstant.js +22 -94
  1021. package/lib/esm/function/algebra/simplifyCore.js +6 -52
  1022. package/lib/esm/function/algebra/solver/lsolve.js +22 -26
  1023. package/lib/esm/function/algebra/solver/lsolveAll.js +24 -25
  1024. package/lib/esm/function/algebra/solver/lusolve.js +9 -14
  1025. package/lib/esm/function/algebra/solver/usolve.js +26 -31
  1026. package/lib/esm/function/algebra/solver/usolveAll.js +28 -25
  1027. package/lib/esm/function/algebra/solver/utils/solveValidation.js +4 -28
  1028. package/lib/esm/function/algebra/sparse/csAmd.js +247 -294
  1029. package/lib/esm/function/algebra/sparse/csChol.js +63 -75
  1030. package/lib/esm/function/algebra/sparse/csCounts.js +37 -52
  1031. package/lib/esm/function/algebra/sparse/csCumsum.js +8 -10
  1032. package/lib/esm/function/algebra/sparse/csDfs.js +35 -39
  1033. package/lib/esm/function/algebra/sparse/csEreach.js +25 -29
  1034. package/lib/esm/function/algebra/sparse/csEtree.js +23 -27
  1035. package/lib/esm/function/algebra/sparse/csFkeep.js +20 -24
  1036. package/lib/esm/function/algebra/sparse/csIpvec.js +2 -3
  1037. package/lib/esm/function/algebra/sparse/csLeaf.js +12 -12
  1038. package/lib/esm/function/algebra/sparse/csLu.js +65 -83
  1039. package/lib/esm/function/algebra/sparse/csMark.js +1 -1
  1040. package/lib/esm/function/algebra/sparse/csPermute.js +20 -24
  1041. package/lib/esm/function/algebra/sparse/csPost.js +15 -23
  1042. package/lib/esm/function/algebra/sparse/csReach.js +15 -17
  1043. package/lib/esm/function/algebra/sparse/csSpsolve.js +30 -35
  1044. package/lib/esm/function/algebra/sparse/csSqr.js +60 -77
  1045. package/lib/esm/function/algebra/sparse/csSymperm.js +32 -40
  1046. package/lib/esm/function/algebra/sparse/csTdfs.js +12 -14
  1047. package/lib/esm/function/algebra/sparse/csUnflip.js +1 -1
  1048. package/lib/esm/function/algebra/symbolicEqual.js +0 -2
  1049. package/lib/esm/function/arithmetic/abs.js +0 -1
  1050. package/lib/esm/function/arithmetic/add.js +1 -3
  1051. package/lib/esm/function/arithmetic/addScalar.js +0 -3
  1052. package/lib/esm/function/arithmetic/cbrt.js +8 -15
  1053. package/lib/esm/function/arithmetic/ceil.js +0 -3
  1054. package/lib/esm/function/arithmetic/cube.js +2 -1
  1055. package/lib/esm/function/arithmetic/divide.js +2 -1
  1056. package/lib/esm/function/arithmetic/divideScalar.js +0 -1
  1057. package/lib/esm/function/arithmetic/dotDivide.js +1 -1
  1058. package/lib/esm/function/arithmetic/dotMultiply.js +1 -1
  1059. package/lib/esm/function/arithmetic/dotPow.js +1 -3
  1060. package/lib/esm/function/arithmetic/exp.js +0 -1
  1061. package/lib/esm/function/arithmetic/expm1.js +0 -1
  1062. package/lib/esm/function/arithmetic/fix.js +0 -3
  1063. package/lib/esm/function/arithmetic/floor.js +0 -3
  1064. package/lib/esm/function/arithmetic/gcd.js +4 -8
  1065. package/lib/esm/function/arithmetic/hypot.js +1 -6
  1066. package/lib/esm/function/arithmetic/invmod.js +0 -2
  1067. package/lib/esm/function/arithmetic/lcm.js +5 -11
  1068. package/lib/esm/function/arithmetic/log.js +0 -1
  1069. package/lib/esm/function/arithmetic/log10.js +0 -1
  1070. package/lib/esm/function/arithmetic/log1p.js +1 -3
  1071. package/lib/esm/function/arithmetic/log2.js +1 -2
  1072. package/lib/esm/function/arithmetic/mod.js +3 -5
  1073. package/lib/esm/function/arithmetic/multiply.js +307 -324
  1074. package/lib/esm/function/arithmetic/multiplyScalar.js +0 -1
  1075. package/lib/esm/function/arithmetic/norm.js +29 -55
  1076. package/lib/esm/function/arithmetic/nthRoot.js +6 -14
  1077. package/lib/esm/function/arithmetic/nthRoots.js +4 -10
  1078. package/lib/esm/function/arithmetic/pow.js +13 -27
  1079. package/lib/esm/function/arithmetic/round.js +1 -10
  1080. package/lib/esm/function/arithmetic/sign.js +0 -2
  1081. package/lib/esm/function/arithmetic/sqrt.js +1 -2
  1082. package/lib/esm/function/arithmetic/square.js +0 -1
  1083. package/lib/esm/function/arithmetic/subtract.js +2 -4
  1084. package/lib/esm/function/arithmetic/unaryMinus.js +2 -2
  1085. package/lib/esm/function/arithmetic/unaryPlus.js +3 -1
  1086. package/lib/esm/function/arithmetic/xgcd.js +9 -12
  1087. package/lib/esm/function/bitwise/bitAnd.js +1 -1
  1088. package/lib/esm/function/bitwise/bitNot.js +0 -1
  1089. package/lib/esm/function/bitwise/bitOr.js +1 -1
  1090. package/lib/esm/function/bitwise/bitXor.js +1 -1
  1091. package/lib/esm/function/bitwise/leftShift.js +1 -5
  1092. package/lib/esm/function/bitwise/rightArithShift.js +1 -5
  1093. package/lib/esm/function/bitwise/rightLogShift.js +2 -4
  1094. package/lib/esm/function/combinatorics/bellNumbers.js +2 -5
  1095. package/lib/esm/function/combinatorics/catalan.js +0 -2
  1096. package/lib/esm/function/combinatorics/composition.js +0 -2
  1097. package/lib/esm/function/combinatorics/stirlingS2.js +0 -8
  1098. package/lib/esm/function/complex/arg.js +1 -1
  1099. package/lib/esm/function/complex/conj.js +0 -1
  1100. package/lib/esm/function/complex/im.js +0 -1
  1101. package/lib/esm/function/complex/re.js +0 -1
  1102. package/lib/esm/function/geometry/distance.js +0 -45
  1103. package/lib/esm/function/geometry/intersect.js +5 -38
  1104. package/lib/esm/function/logical/and.js +1 -5
  1105. package/lib/esm/function/logical/not.js +0 -1
  1106. package/lib/esm/function/logical/or.js +1 -1
  1107. package/lib/esm/function/logical/xor.js +1 -1
  1108. package/lib/esm/function/matrix/apply.js +2 -16
  1109. package/lib/esm/function/matrix/column.js +1 -3
  1110. package/lib/esm/function/matrix/concat.js +7 -16
  1111. package/lib/esm/function/matrix/count.js +0 -1
  1112. package/lib/esm/function/matrix/cross.js +1 -5
  1113. package/lib/esm/function/matrix/ctranspose.js +0 -1
  1114. package/lib/esm/function/matrix/det.js +1 -15
  1115. package/lib/esm/function/matrix/diag.js +18 -27
  1116. package/lib/esm/function/matrix/diff.js +4 -17
  1117. package/lib/esm/function/matrix/dot.js +18 -39
  1118. package/lib/esm/function/matrix/eigs/complexEigs.js +131 -169
  1119. package/lib/esm/function/matrix/eigs/realSymetric.js +51 -93
  1120. package/lib/esm/function/matrix/eigs.js +6 -30
  1121. package/lib/esm/function/matrix/expm.js +21 -33
  1122. package/lib/esm/function/matrix/fft.js +5 -14
  1123. package/lib/esm/function/matrix/filter.js +1 -2
  1124. package/lib/esm/function/matrix/flatten.js +5 -7
  1125. package/lib/esm/function/matrix/forEach.js +1 -4
  1126. package/lib/esm/function/matrix/getMatrixDataType.js +0 -1
  1127. package/lib/esm/function/matrix/identity.js +9 -20
  1128. package/lib/esm/function/matrix/ifft.js +0 -1
  1129. package/lib/esm/function/matrix/inv.js +12 -31
  1130. package/lib/esm/function/matrix/kron.js +1 -5
  1131. package/lib/esm/function/matrix/map.js +1 -7
  1132. package/lib/esm/function/matrix/matrixFromColumns.js +8 -12
  1133. package/lib/esm/function/matrix/matrixFromFunction.js +0 -4
  1134. package/lib/esm/function/matrix/matrixFromRows.js +2 -8
  1135. package/lib/esm/function/matrix/ones.js +5 -14
  1136. package/lib/esm/function/matrix/partitionSelect.js +12 -19
  1137. package/lib/esm/function/matrix/pinv.js +5 -31
  1138. package/lib/esm/function/matrix/range.js +8 -31
  1139. package/lib/esm/function/matrix/reshape.js +0 -1
  1140. package/lib/esm/function/matrix/resize.js +5 -17
  1141. package/lib/esm/function/matrix/rotate.js +0 -9
  1142. package/lib/esm/function/matrix/rotationMatrix.js +3 -19
  1143. package/lib/esm/function/matrix/row.js +1 -3
  1144. package/lib/esm/function/matrix/size.js +0 -1
  1145. package/lib/esm/function/matrix/sort.js +4 -14
  1146. package/lib/esm/function/matrix/sqrtm.js +2 -10
  1147. package/lib/esm/function/matrix/squeeze.js +2 -3
  1148. package/lib/esm/function/matrix/subset.js +15 -30
  1149. package/lib/esm/function/matrix/trace.js +20 -30
  1150. package/lib/esm/function/matrix/transpose.js +42 -53
  1151. package/lib/esm/function/matrix/zeros.js +8 -15
  1152. package/lib/esm/function/probability/combinations.js +3 -8
  1153. package/lib/esm/function/probability/combinationsWithRep.js +1 -12
  1154. package/lib/esm/function/probability/factorial.js +0 -3
  1155. package/lib/esm/function/probability/gamma.js +18 -26
  1156. package/lib/esm/function/probability/kldivergence.js +2 -12
  1157. package/lib/esm/function/probability/lgamma.js +12 -12
  1158. package/lib/esm/function/probability/multinomial.js +0 -2
  1159. package/lib/esm/function/probability/permutations.js +5 -13
  1160. package/lib/esm/function/probability/pickRandom.js +2 -17
  1161. package/lib/esm/function/probability/random.js +4 -10
  1162. package/lib/esm/function/probability/randomInt.js +1 -5
  1163. package/lib/esm/function/probability/util/randomMatrix.js +0 -2
  1164. package/lib/esm/function/probability/util/seededRNG.js +6 -5
  1165. package/lib/esm/function/relational/compare.js +1 -1
  1166. package/lib/esm/function/relational/compareNatural.js +27 -52
  1167. package/lib/esm/function/relational/compareText.js +1 -1
  1168. package/lib/esm/function/relational/compareUnits.js +0 -1
  1169. package/lib/esm/function/relational/deepEqual.js +1 -5
  1170. package/lib/esm/function/relational/equal.js +1 -5
  1171. package/lib/esm/function/relational/equalScalar.js +1 -1
  1172. package/lib/esm/function/relational/equalText.js +0 -1
  1173. package/lib/esm/function/relational/larger.js +1 -1
  1174. package/lib/esm/function/relational/largerEq.js +1 -1
  1175. package/lib/esm/function/relational/smaller.js +1 -1
  1176. package/lib/esm/function/relational/smallerEq.js +1 -1
  1177. package/lib/esm/function/relational/unequal.js +1 -6
  1178. package/lib/esm/function/set/setCartesian.js +4 -9
  1179. package/lib/esm/function/set/setDifference.js +4 -11
  1180. package/lib/esm/function/set/setDistinct.js +4 -9
  1181. package/lib/esm/function/set/setIntersect.js +4 -9
  1182. package/lib/esm/function/set/setIsSubset.js +0 -6
  1183. package/lib/esm/function/set/setMultiplicity.js +0 -4
  1184. package/lib/esm/function/set/setPowerset.js +6 -13
  1185. package/lib/esm/function/set/setSize.js +0 -3
  1186. package/lib/esm/function/set/setSymDifference.js +0 -2
  1187. package/lib/esm/function/set/setUnion.js +0 -2
  1188. package/lib/esm/function/special/erf.js +12 -23
  1189. package/lib/esm/function/statistics/cumsum.js +2 -18
  1190. package/lib/esm/function/statistics/mad.js +0 -4
  1191. package/lib/esm/function/statistics/max.js +4 -9
  1192. package/lib/esm/function/statistics/mean.js +2 -7
  1193. package/lib/esm/function/statistics/median.js +10 -12
  1194. package/lib/esm/function/statistics/min.js +4 -9
  1195. package/lib/esm/function/statistics/mode.js +1 -10
  1196. package/lib/esm/function/statistics/prod.js +6 -6
  1197. package/lib/esm/function/statistics/quantileSeq.js +15 -56
  1198. package/lib/esm/function/statistics/std.js +0 -4
  1199. package/lib/esm/function/statistics/sum.js +3 -7
  1200. package/lib/esm/function/statistics/utils/improveErrorMessage.js +1 -4
  1201. package/lib/esm/function/statistics/variance.js +5 -13
  1202. package/lib/esm/function/string/bin.js +1 -1
  1203. package/lib/esm/function/string/format.js +0 -1
  1204. package/lib/esm/function/string/hex.js +1 -1
  1205. package/lib/esm/function/string/oct.js +1 -0
  1206. package/lib/esm/function/string/print.js +1 -5
  1207. package/lib/esm/function/trigonometry/acos.js +0 -1
  1208. package/lib/esm/function/trigonometry/acosh.js +0 -3
  1209. package/lib/esm/function/trigonometry/acot.js +0 -1
  1210. package/lib/esm/function/trigonometry/acoth.js +0 -2
  1211. package/lib/esm/function/trigonometry/acsc.js +0 -2
  1212. package/lib/esm/function/trigonometry/acsch.js +0 -1
  1213. package/lib/esm/function/trigonometry/asec.js +0 -2
  1214. package/lib/esm/function/trigonometry/asech.js +0 -4
  1215. package/lib/esm/function/trigonometry/asin.js +0 -1
  1216. package/lib/esm/function/trigonometry/asinh.js +0 -1
  1217. package/lib/esm/function/trigonometry/atan.js +0 -1
  1218. package/lib/esm/function/trigonometry/atan2.js +2 -1
  1219. package/lib/esm/function/trigonometry/atanh.js +0 -2
  1220. package/lib/esm/function/trigonometry/cos.js +1 -1
  1221. package/lib/esm/function/trigonometry/cosh.js +0 -1
  1222. package/lib/esm/function/trigonometry/cot.js +1 -1
  1223. package/lib/esm/function/trigonometry/coth.js +0 -1
  1224. package/lib/esm/function/trigonometry/csc.js +1 -1
  1225. package/lib/esm/function/trigonometry/csch.js +0 -1
  1226. package/lib/esm/function/trigonometry/sec.js +1 -1
  1227. package/lib/esm/function/trigonometry/sech.js +0 -1
  1228. package/lib/esm/function/trigonometry/sin.js +1 -1
  1229. package/lib/esm/function/trigonometry/sinh.js +0 -1
  1230. package/lib/esm/function/trigonometry/tan.js +1 -1
  1231. package/lib/esm/function/trigonometry/tanh.js +0 -1
  1232. package/lib/esm/function/trigonometry/trigUnit.js +0 -1
  1233. package/lib/esm/function/unit/to.js +1 -1
  1234. package/lib/esm/function/utils/clone.js +0 -1
  1235. package/lib/esm/function/utils/hasNumericValue.js +0 -1
  1236. package/lib/esm/function/utils/isInteger.js +1 -1
  1237. package/lib/esm/function/utils/isNaN.js +0 -1
  1238. package/lib/esm/function/utils/isNegative.js +1 -1
  1239. package/lib/esm/function/utils/isNumeric.js +0 -1
  1240. package/lib/esm/function/utils/isPositive.js +0 -1
  1241. package/lib/esm/function/utils/isPrime.js +4 -22
  1242. package/lib/esm/function/utils/isZero.js +0 -1
  1243. package/lib/esm/function/utils/numeric.js +3 -7
  1244. package/lib/esm/function/utils/typeOf.js +0 -1
  1245. package/lib/esm/json/replacer.js +0 -1
  1246. package/lib/esm/json/reviver.js +0 -3
  1247. package/lib/esm/plain/bignumber/index.js +2 -1
  1248. package/lib/esm/plain/number/arithmetic.js +25 -45
  1249. package/lib/esm/plain/number/bitwise.js +0 -7
  1250. package/lib/esm/plain/number/combinations.js +4 -10
  1251. package/lib/esm/plain/number/probability.js +12 -16
  1252. package/lib/esm/type/bignumber/BigNumber.js +3 -6
  1253. package/lib/esm/type/bignumber/function/bignumber.js +0 -6
  1254. package/lib/esm/type/boolean.js +2 -6
  1255. package/lib/esm/type/chain/Chain.js +16 -36
  1256. package/lib/esm/type/chain/function/chain.js +0 -1
  1257. package/lib/esm/type/complex/Complex.js +8 -28
  1258. package/lib/esm/type/complex/function/complex.js +1 -3
  1259. package/lib/esm/type/fraction/Fraction.js +2 -4
  1260. package/lib/esm/type/fraction/function/fraction.js +1 -2
  1261. package/lib/esm/type/matrix/DenseMatrix.js +143 -224
  1262. package/lib/esm/type/matrix/FibonacciHeap.js +118 -156
  1263. package/lib/esm/type/matrix/ImmutableDenseMatrix.js +19 -38
  1264. package/lib/esm/type/matrix/Matrix.js +18 -36
  1265. package/lib/esm/type/matrix/MatrixIndex.js +24 -60
  1266. package/lib/esm/type/matrix/Range.js +14 -46
  1267. package/lib/esm/type/matrix/Spa.js +32 -50
  1268. package/lib/esm/type/matrix/SparseMatrix.js +412 -513
  1269. package/lib/esm/type/matrix/function/index.js +0 -1
  1270. package/lib/esm/type/matrix/function/matrix.js +1 -4
  1271. package/lib/esm/type/matrix/function/sparse.js +0 -1
  1272. package/lib/esm/type/matrix/utils/matAlgo01xDSid.js +36 -33
  1273. package/lib/esm/type/matrix/utils/matAlgo02xDS0.js +42 -39
  1274. package/lib/esm/type/matrix/utils/matAlgo03xDSf.js +40 -37
  1275. package/lib/esm/type/matrix/utils/matAlgo04xSidSid.js +70 -67
  1276. package/lib/esm/type/matrix/utils/matAlgo05xSfSf.js +72 -70
  1277. package/lib/esm/type/matrix/utils/matAlgo06xS0S0.js +60 -56
  1278. package/lib/esm/type/matrix/utils/matAlgo07xSSf.js +46 -45
  1279. package/lib/esm/type/matrix/utils/matAlgo08xS0Sid.js +66 -63
  1280. package/lib/esm/type/matrix/utils/matAlgo09xS0Sf.js +56 -52
  1281. package/lib/esm/type/matrix/utils/matAlgo10xSids.js +32 -30
  1282. package/lib/esm/type/matrix/utils/matAlgo11xS0s.js +38 -35
  1283. package/lib/esm/type/matrix/utils/matAlgo12xSfs.js +32 -30
  1284. package/lib/esm/type/matrix/utils/matAlgo13xDD.js +26 -25
  1285. package/lib/esm/type/matrix/utils/matAlgo14xDs.js +18 -16
  1286. package/lib/esm/type/matrix/utils/matrixAlgorithmSuite.js +9 -26
  1287. package/lib/esm/type/number.js +7 -23
  1288. package/lib/esm/type/resultset/ResultSet.js +5 -11
  1289. package/lib/esm/type/string.js +0 -1
  1290. package/lib/esm/type/unit/Unit.js +189 -362
  1291. package/lib/esm/type/unit/function/createUnit.js +0 -1
  1292. package/lib/esm/type/unit/function/splitUnit.js +0 -1
  1293. package/lib/esm/type/unit/function/unit.js +4 -2
  1294. package/lib/esm/type/unit/physicalConstants.js +22 -15
  1295. package/lib/esm/utils/array.js +63 -113
  1296. package/lib/esm/utils/bignumber/bitwise.js +13 -89
  1297. package/lib/esm/utils/bignumber/constants.js +5 -5
  1298. package/lib/esm/utils/bignumber/formatter.js +21 -42
  1299. package/lib/esm/utils/bignumber/nearlyEqual.js +8 -9
  1300. package/lib/esm/utils/collection.js +25 -35
  1301. package/lib/esm/utils/complex.js +1 -1
  1302. package/lib/esm/utils/customs.js +19 -39
  1303. package/lib/esm/utils/emitter.js +3 -2
  1304. package/lib/esm/utils/factory.js +12 -20
  1305. package/lib/esm/utils/function.js +4 -13
  1306. package/lib/esm/utils/is.js +3 -7
  1307. package/lib/esm/utils/latex.js +6 -8
  1308. package/lib/esm/utils/log.js +0 -2
  1309. package/lib/esm/utils/lruQueue.js +0 -8
  1310. package/lib/esm/utils/map.js +6 -21
  1311. package/lib/esm/utils/number.js +72 -115
  1312. package/lib/esm/utils/object.js +26 -66
  1313. package/lib/esm/utils/product.js +0 -3
  1314. package/lib/esm/utils/scope.js +1 -3
  1315. package/lib/esm/utils/snapshot.js +10 -32
  1316. package/lib/esm/utils/string.js +10 -32
  1317. package/lib/esm/utils/switch.js +0 -4
  1318. package/lib/esm/version.js +2 -1
  1319. package/package.json +16 -15
  1320. package/types/index.d.ts +30 -35
  1321. package/types/index.ts +72 -7
  1322. package/types/tsconfig.json +1 -0
@@ -1,54 +1,41 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.createUnitClass = void 0;
9
-
10
8
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
11
-
12
9
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
-
14
10
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
15
-
16
11
  var _is = require("../../utils/is.js");
17
-
18
12
  var _factory = require("../../utils/factory.js");
19
-
20
13
  var _function = require("../../utils/function.js");
21
-
22
14
  var _string = require("../../utils/string.js");
23
-
24
15
  var _object = require("../../utils/object.js");
25
-
26
16
  var _constants = require("../../utils/bignumber/constants.js");
27
-
28
17
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
29
-
30
18
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
31
-
32
19
  var name = 'Unit';
33
20
  var dependencies = ['?on', 'config', 'addScalar', 'subtract', 'multiplyScalar', 'divideScalar', 'pow', 'abs', 'fix', 'round', 'equal', 'isNumeric', 'format', 'number', 'Complex', 'BigNumber', 'Fraction'];
34
21
  var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
35
22
  var on = _ref.on,
36
- config = _ref.config,
37
- addScalar = _ref.addScalar,
38
- subtract = _ref.subtract,
39
- multiplyScalar = _ref.multiplyScalar,
40
- divideScalar = _ref.divideScalar,
41
- pow = _ref.pow,
42
- abs = _ref.abs,
43
- fix = _ref.fix,
44
- round = _ref.round,
45
- equal = _ref.equal,
46
- isNumeric = _ref.isNumeric,
47
- format = _ref.format,
48
- number = _ref.number,
49
- Complex = _ref.Complex,
50
- _BigNumber = _ref.BigNumber,
51
- _Fraction = _ref.Fraction;
23
+ config = _ref.config,
24
+ addScalar = _ref.addScalar,
25
+ subtract = _ref.subtract,
26
+ multiplyScalar = _ref.multiplyScalar,
27
+ divideScalar = _ref.divideScalar,
28
+ pow = _ref.pow,
29
+ abs = _ref.abs,
30
+ fix = _ref.fix,
31
+ round = _ref.round,
32
+ equal = _ref.equal,
33
+ isNumeric = _ref.isNumeric,
34
+ format = _ref.format,
35
+ number = _ref.number,
36
+ Complex = _ref.Complex,
37
+ _BigNumber = _ref.BigNumber,
38
+ _Fraction = _ref.Fraction;
52
39
  var toNumber = number;
53
40
  /**
54
41
  * A unit can be constructed in the following ways:
@@ -69,24 +56,20 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
69
56
  * @param {number | BigNumber | Fraction | Complex | boolean} [value] A value like 5.2
70
57
  * @param {string | Unit} valuelessUnit A unit without value. Can have prefix, like "cm"
71
58
  */
72
-
73
59
  function Unit(value, valuelessUnit) {
74
60
  if (!(this instanceof Unit)) {
75
61
  throw new Error('Constructor must be called with the new operator');
76
62
  }
77
-
78
63
  if (!(value === null || value === undefined || isNumeric(value) || (0, _is.isComplex)(value))) {
79
64
  throw new TypeError('First parameter in Unit constructor must be number, BigNumber, Fraction, Complex, or undefined');
80
65
  }
81
-
82
66
  this.fixPrefix = false; // if true, function format will not search for the
83
67
  // best prefix but leave it as initially provided.
84
68
  // fixPrefix is set true by the method Unit.to
69
+
85
70
  // The justification behind this is that if the constructor is explicitly called,
86
71
  // the caller wishes the units to be returned exactly as supplied.
87
-
88
72
  this.skipAutomaticSimplification = true;
89
-
90
73
  if (valuelessUnit === undefined) {
91
74
  this.units = [];
92
75
  this.dimensions = BASE_DIMENSIONS.map(function (x) {
@@ -107,69 +90,59 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
107
90
  } else {
108
91
  throw new TypeError('Second parameter in Unit constructor must be a string or valueless Unit');
109
92
  }
110
-
111
93
  this.value = this._normalize(value);
112
94
  }
95
+
113
96
  /**
114
97
  * Attach type information
115
98
  */
116
-
117
-
118
99
  Object.defineProperty(Unit, 'name', {
119
100
  value: 'Unit'
120
101
  });
121
102
  Unit.prototype.constructor = Unit;
122
103
  Unit.prototype.type = 'Unit';
123
- Unit.prototype.isUnit = true; // private variables and functions for the Unit parser
104
+ Unit.prototype.isUnit = true;
124
105
 
106
+ // private variables and functions for the Unit parser
125
107
  var text, index, c;
126
-
127
108
  function skipWhitespace() {
128
109
  while (c === ' ' || c === '\t') {
129
110
  next();
130
111
  }
131
112
  }
132
-
133
113
  function isDigitDot(c) {
134
114
  return c >= '0' && c <= '9' || c === '.';
135
115
  }
136
-
137
116
  function isDigit(c) {
138
117
  return c >= '0' && c <= '9';
139
118
  }
140
-
141
119
  function next() {
142
120
  index++;
143
121
  c = text.charAt(index);
144
122
  }
145
-
146
123
  function revert(oldIndex) {
147
124
  index = oldIndex;
148
125
  c = text.charAt(index);
149
126
  }
150
-
151
127
  function parseNumber() {
152
128
  var number = '';
153
129
  var oldIndex = index;
154
-
155
130
  if (c === '+') {
156
131
  next();
157
132
  } else if (c === '-') {
158
133
  number += c;
159
134
  next();
160
135
  }
161
-
162
136
  if (!isDigitDot(c)) {
163
137
  // a + or - must be followed by a digit
164
138
  revert(oldIndex);
165
139
  return null;
166
- } // get number, can have a single dot
167
-
140
+ }
168
141
 
142
+ // get number, can have a single dot
169
143
  if (c === '.') {
170
144
  number += c;
171
145
  next();
172
-
173
146
  if (!isDigit(c)) {
174
147
  // this is no legal number, it is just a dot
175
148
  revert(oldIndex);
@@ -180,68 +153,62 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
180
153
  number += c;
181
154
  next();
182
155
  }
183
-
184
156
  if (c === '.') {
185
157
  number += c;
186
158
  next();
187
159
  }
188
160
  }
189
-
190
161
  while (isDigit(c)) {
191
162
  number += c;
192
163
  next();
193
- } // check for exponential notation like "2.3e-4" or "1.23e50"
194
-
164
+ }
195
165
 
166
+ // check for exponential notation like "2.3e-4" or "1.23e50"
196
167
  if (c === 'E' || c === 'e') {
197
168
  // The grammar branches here. This could either be part of an exponent or the start of a unit that begins with the letter e, such as "4exabytes"
169
+
198
170
  var tentativeNumber = '';
199
171
  var tentativeIndex = index;
200
172
  tentativeNumber += c;
201
173
  next();
202
-
203
174
  if (c === '+' || c === '-') {
204
175
  tentativeNumber += c;
205
176
  next();
206
- } // Scientific notation MUST be followed by an exponent (otherwise we assume it is not scientific notation)
207
-
177
+ }
208
178
 
179
+ // Scientific notation MUST be followed by an exponent (otherwise we assume it is not scientific notation)
209
180
  if (!isDigit(c)) {
210
181
  // The e or E must belong to something else, so return the number without the e or E.
211
182
  revert(tentativeIndex);
212
183
  return number;
213
- } // We can now safely say that this is scientific notation.
214
-
184
+ }
215
185
 
186
+ // We can now safely say that this is scientific notation.
216
187
  number = number + tentativeNumber;
217
-
218
188
  while (isDigit(c)) {
219
189
  number += c;
220
190
  next();
221
191
  }
222
192
  }
223
-
224
193
  return number;
225
194
  }
226
-
227
195
  function parseUnit() {
228
- var unitName = ''; // Alphanumeric characters only; matches [a-zA-Z0-9]
196
+ var unitName = '';
229
197
 
198
+ // Alphanumeric characters only; matches [a-zA-Z0-9]
230
199
  while (isDigit(c) || Unit.isValidAlpha(c)) {
231
200
  unitName += c;
232
201
  next();
233
- } // Must begin with [a-zA-Z]
234
-
202
+ }
235
203
 
204
+ // Must begin with [a-zA-Z]
236
205
  var firstC = unitName.charAt(0);
237
-
238
206
  if (Unit.isValidAlpha(firstC)) {
239
207
  return unitName;
240
208
  } else {
241
209
  return null;
242
210
  }
243
211
  }
244
-
245
212
  function parseCharacter(toFind) {
246
213
  if (c === toFind) {
247
214
  next();
@@ -250,6 +217,7 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
250
217
  return null;
251
218
  }
252
219
  }
220
+
253
221
  /**
254
222
  * Parse a string into a unit. The value of the unit is parsed as number,
255
223
  * BigNumber, or Fraction depending on the math.js config setting `number`.
@@ -260,24 +228,23 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
260
228
  * @param {string} str A string like "5.2 inch", "4e2 cm/s^2"
261
229
  * @return {Unit} unit
262
230
  */
263
-
264
-
265
231
  Unit.parse = function (str, options) {
266
232
  options = options || {};
267
233
  text = str;
268
234
  index = -1;
269
235
  c = '';
270
-
271
236
  if (typeof text !== 'string') {
272
237
  throw new TypeError('Invalid argument in Unit.parse, string expected');
273
238
  }
274
-
275
239
  var unit = new Unit();
276
240
  unit.units = [];
277
241
  var powerMultiplierCurrent = 1;
278
- var expectingUnit = false; // A unit should follow this pattern:
242
+ var expectingUnit = false;
243
+
244
+ // A unit should follow this pattern:
279
245
  // [number] ...[ [*/] unit[^number] ]
280
246
  // unit[^number] ... [ [*/] unit[^number] ]
247
+
281
248
  // Rules:
282
249
  // number is any floating point number.
283
250
  // unit is any alphanumeric string beginning with an alpha. Units with names like e3 should be avoided because they look like the exponent of a floating point number!
@@ -289,11 +256,11 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
289
256
  // 4erg
290
257
 
291
258
  next();
292
- skipWhitespace(); // Optional number at the start of the string
259
+ skipWhitespace();
293
260
 
261
+ // Optional number at the start of the string
294
262
  var valueStr = parseNumber();
295
263
  var value = null;
296
-
297
264
  if (valueStr) {
298
265
  if (config.number === 'BigNumber') {
299
266
  value = new _BigNumber(valueStr);
@@ -308,10 +275,9 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
308
275
  // number
309
276
  value = parseFloat(valueStr);
310
277
  }
311
-
312
278
  skipWhitespace(); // Whitespace is not required here
313
- // handle multiplication or division right after the value, like '1/s'
314
279
 
280
+ // handle multiplication or division right after the value, like '1/s'
315
281
  if (parseCharacter('*')) {
316
282
  powerMultiplierCurrent = 1;
317
283
  expectingUnit = true;
@@ -319,93 +285,83 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
319
285
  powerMultiplierCurrent = -1;
320
286
  expectingUnit = true;
321
287
  }
322
- } // Stack to keep track of powerMultipliers applied to each parentheses group
323
-
288
+ }
324
289
 
325
- var powerMultiplierStack = []; // Running product of all elements in powerMultiplierStack
290
+ // Stack to keep track of powerMultipliers applied to each parentheses group
291
+ var powerMultiplierStack = [];
326
292
 
293
+ // Running product of all elements in powerMultiplierStack
327
294
  var powerMultiplierStackProduct = 1;
328
-
329
295
  while (true) {
330
- skipWhitespace(); // Check for and consume opening parentheses, pushing powerMultiplierCurrent to the stack
331
- // A '(' will always appear directly before a unit.
296
+ skipWhitespace();
332
297
 
298
+ // Check for and consume opening parentheses, pushing powerMultiplierCurrent to the stack
299
+ // A '(' will always appear directly before a unit.
333
300
  while (c === '(') {
334
301
  powerMultiplierStack.push(powerMultiplierCurrent);
335
302
  powerMultiplierStackProduct *= powerMultiplierCurrent;
336
303
  powerMultiplierCurrent = 1;
337
304
  next();
338
305
  skipWhitespace();
339
- } // Is there something here?
340
-
306
+ }
341
307
 
308
+ // Is there something here?
342
309
  var uStr = void 0;
343
-
344
310
  if (c) {
345
311
  var oldC = c;
346
312
  uStr = parseUnit();
347
-
348
313
  if (uStr === null) {
349
314
  throw new SyntaxError('Unexpected "' + oldC + '" in "' + text + '" at index ' + index.toString());
350
315
  }
351
316
  } else {
352
317
  // End of input.
353
318
  break;
354
- } // Verify the unit exists and get the prefix (if any)
355
-
319
+ }
356
320
 
321
+ // Verify the unit exists and get the prefix (if any)
357
322
  var res = _findUnit(uStr);
358
-
359
323
  if (res === null) {
360
324
  // Unit not found.
361
325
  throw new SyntaxError('Unit "' + uStr + '" not found.');
362
326
  }
363
-
364
- var power = powerMultiplierCurrent * powerMultiplierStackProduct; // Is there a "^ number"?
365
-
327
+ var power = powerMultiplierCurrent * powerMultiplierStackProduct;
328
+ // Is there a "^ number"?
366
329
  skipWhitespace();
367
-
368
330
  if (parseCharacter('^')) {
369
331
  skipWhitespace();
370
332
  var p = parseNumber();
371
-
372
333
  if (p === null) {
373
334
  // No valid number found for the power!
374
335
  throw new SyntaxError('In "' + str + '", "^" must be followed by a floating-point number');
375
336
  }
376
-
377
337
  power *= p;
378
- } // Add the unit to the list
379
-
338
+ }
380
339
 
340
+ // Add the unit to the list
381
341
  unit.units.push({
382
342
  unit: res.unit,
383
343
  prefix: res.prefix,
384
344
  power: power
385
345
  });
386
-
387
346
  for (var i = 0; i < BASE_DIMENSIONS.length; i++) {
388
347
  unit.dimensions[i] += (res.unit.dimensions[i] || 0) * power;
389
- } // Check for and consume closing parentheses, popping from the stack.
390
- // A ')' will always follow a unit.
391
-
348
+ }
392
349
 
350
+ // Check for and consume closing parentheses, popping from the stack.
351
+ // A ')' will always follow a unit.
393
352
  skipWhitespace();
394
-
395
353
  while (c === ')') {
396
354
  if (powerMultiplierStack.length === 0) {
397
355
  throw new SyntaxError('Unmatched ")" in "' + text + '" at index ' + index.toString());
398
356
  }
399
-
400
357
  powerMultiplierStackProduct /= powerMultiplierStack.pop();
401
358
  next();
402
359
  skipWhitespace();
403
- } // "*" and "/" should mean we are expecting something to come next.
404
- // Is there a forward slash? If so, negate powerMultiplierCurrent. The next unit or paren group is in the denominator.
405
-
360
+ }
406
361
 
362
+ // "*" and "/" should mean we are expecting something to come next.
363
+ // Is there a forward slash? If so, negate powerMultiplierCurrent. The next unit or paren group is in the denominator.
407
364
  expectingUnit = false;
408
-
409
365
  if (parseCharacter('*')) {
410
366
  // explicit multiplication
411
367
  powerMultiplierCurrent = 1;
@@ -417,9 +373,9 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
417
373
  } else {
418
374
  // implicit multiplication
419
375
  powerMultiplierCurrent = 1;
420
- } // Replace the unit into the auto unit system
421
-
376
+ }
422
377
 
378
+ // Replace the unit into the auto unit system
423
379
  if (res.unit.base) {
424
380
  var baseDim = res.unit.base.key;
425
381
  UNIT_SYSTEMS.auto[baseDim] = {
@@ -427,40 +383,37 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
427
383
  prefix: res.prefix
428
384
  };
429
385
  }
430
- } // Has the string been entirely consumed?
431
-
386
+ }
432
387
 
388
+ // Has the string been entirely consumed?
433
389
  skipWhitespace();
434
-
435
390
  if (c) {
436
391
  throw new SyntaxError('Could not parse: "' + str + '"');
437
- } // Is there a trailing slash?
438
-
392
+ }
439
393
 
394
+ // Is there a trailing slash?
440
395
  if (expectingUnit) {
441
396
  throw new SyntaxError('Trailing characters: "' + str + '"');
442
- } // Is the parentheses stack empty?
443
-
397
+ }
444
398
 
399
+ // Is the parentheses stack empty?
445
400
  if (powerMultiplierStack.length !== 0) {
446
401
  throw new SyntaxError('Unmatched "(" in "' + text + '"');
447
- } // Are there any units at all?
448
-
402
+ }
449
403
 
404
+ // Are there any units at all?
450
405
  if (unit.units.length === 0 && !options.allowNoUnits) {
451
406
  throw new SyntaxError('"' + str + '" contains no units');
452
407
  }
453
-
454
408
  unit.value = value !== undefined ? unit._normalize(value) : null;
455
409
  return unit;
456
410
  };
411
+
457
412
  /**
458
413
  * create a copy of this unit
459
414
  * @memberof Unit
460
415
  * @return {Unit} Returns a cloned version of the unit
461
416
  */
462
-
463
-
464
417
  Unit.prototype.clone = function () {
465
418
  var unit = new Unit();
466
419
  unit.fixPrefix = this.fixPrefix;
@@ -468,44 +421,39 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
468
421
  unit.value = (0, _object.clone)(this.value);
469
422
  unit.dimensions = this.dimensions.slice(0);
470
423
  unit.units = [];
471
-
472
424
  for (var i = 0; i < this.units.length; i++) {
473
425
  unit.units[i] = {};
474
-
475
426
  for (var p in this.units[i]) {
476
427
  if ((0, _object.hasOwnProperty)(this.units[i], p)) {
477
428
  unit.units[i][p] = this.units[i][p];
478
429
  }
479
430
  }
480
431
  }
481
-
482
432
  return unit;
483
433
  };
434
+
484
435
  /**
485
436
  * Return the type of the value of this unit
486
437
  *
487
438
  * @memberof Unit
488
439
  * @ return {string} type of the value of the unit
489
440
  */
490
-
491
-
492
441
  Unit.prototype.valueType = function () {
493
442
  return (0, _is.typeOf)(this.value);
494
443
  };
444
+
495
445
  /**
496
446
  * Return whether the unit is derived (such as m/s, or cm^2, but not N)
497
447
  * @memberof Unit
498
448
  * @return {boolean} True if the unit is derived
499
449
  */
500
-
501
-
502
450
  Unit.prototype._isDerived = function () {
503
451
  if (this.units.length === 0) {
504
452
  return false;
505
453
  }
506
-
507
454
  return this.units.length > 1 || Math.abs(this.units[0].power - 1.0) > 1e-15;
508
455
  };
456
+
509
457
  /**
510
458
  * Normalize a value, based on its currently set unit(s)
511
459
  * @memberof Unit
@@ -513,27 +461,22 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
513
461
  * @return {number | BigNumber | Fraction | boolean} normalized value
514
462
  * @private
515
463
  */
516
-
517
-
518
464
  Unit.prototype._normalize = function (value) {
519
465
  if (value === null || value === undefined || this.units.length === 0) {
520
466
  return value;
521
467
  }
522
-
523
468
  var res = value;
524
-
525
469
  var convert = Unit._getNumberConverter((0, _is.typeOf)(value)); // convert to Fraction or BigNumber if needed
526
470
 
527
-
528
471
  for (var i = 0; i < this.units.length; i++) {
529
472
  var unitValue = convert(this.units[i].unit.value);
530
473
  var unitPrefixValue = convert(this.units[i].prefix.value);
531
474
  var unitPower = convert(this.units[i].power);
532
475
  res = multiplyScalar(res, pow(multiplyScalar(unitValue, unitPrefixValue), unitPower));
533
476
  }
534
-
535
477
  return res;
536
478
  };
479
+
537
480
  /**
538
481
  * Denormalize a value, based on its currently set unit(s)
539
482
  * @memberof Unit
@@ -542,27 +485,22 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
542
485
  * @return {number} denormalized value
543
486
  * @private
544
487
  */
545
-
546
-
547
488
  Unit.prototype._denormalize = function (value, prefixValue) {
548
489
  if (value === null || value === undefined || this.units.length === 0) {
549
490
  return value;
550
491
  }
551
-
552
492
  var res = value;
553
-
554
493
  var convert = Unit._getNumberConverter((0, _is.typeOf)(value)); // convert to Fraction or BigNumber if needed
555
494
 
556
-
557
495
  for (var i = 0; i < this.units.length; i++) {
558
496
  var unitValue = convert(this.units[i].unit.value);
559
497
  var unitPrefixValue = convert(this.units[i].prefix.value);
560
498
  var unitPower = convert(this.units[i].power);
561
499
  res = divideScalar(res, pow(multiplyScalar(unitValue, unitPrefixValue), unitPower));
562
500
  }
563
-
564
501
  return res;
565
502
  };
503
+
566
504
  /**
567
505
  * Find a unit from a string
568
506
  * @memberof Unit
@@ -571,8 +509,6 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
571
509
  * prefix is returned. Else, null is returned.
572
510
  * @private
573
511
  */
574
-
575
-
576
512
  var _findUnit = (0, _function.memoize)(function (str) {
577
513
  // First, match units names exactly. For example, a user could define 'mm' as 10^-4 m, which is silly, but then we would want 'mm' to match the user-defined unit.
578
514
  if ((0, _object.hasOwnProperty)(UNITS, str)) {
@@ -583,16 +519,13 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
583
519
  prefix: prefix
584
520
  };
585
521
  }
586
-
587
522
  for (var _name in UNITS) {
588
523
  if ((0, _object.hasOwnProperty)(UNITS, _name)) {
589
524
  if ((0, _string.endsWith)(str, _name)) {
590
525
  var _unit = UNITS[_name];
591
526
  var prefixLen = str.length - _name.length;
592
527
  var prefixName = str.substring(0, prefixLen);
593
-
594
528
  var _prefix = (0, _object.hasOwnProperty)(_unit.prefixes, prefixName) ? _unit.prefixes[prefixName] : undefined;
595
-
596
529
  if (_prefix !== undefined) {
597
530
  // store unit, prefix, and value
598
531
  return {
@@ -603,7 +536,6 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
603
536
  }
604
537
  }
605
538
  }
606
-
607
539
  return null;
608
540
  }, {
609
541
  hasher: function hasher(args) {
@@ -611,6 +543,7 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
611
543
  },
612
544
  limit: 100
613
545
  });
546
+
614
547
  /**
615
548
  * Test if the given expression is a unit.
616
549
  * The unit can have a prefix but cannot have a value.
@@ -619,37 +552,33 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
619
552
  * The unit can have prefix, like "cm"
620
553
  * @return {boolean} true if the given string is a unit
621
554
  */
622
-
623
-
624
555
  Unit.isValuelessUnit = function (name) {
625
556
  return _findUnit(name) !== null;
626
557
  };
558
+
627
559
  /**
628
560
  * check if this unit has given base unit
629
561
  * If this unit is a derived unit, this will ALWAYS return false, since by definition base units are not derived.
630
562
  * @memberof Unit
631
563
  * @param {BASE_UNITS | string | undefined} base
632
564
  */
633
-
634
-
635
565
  Unit.prototype.hasBase = function (base) {
636
566
  if (typeof base === 'string') {
637
567
  base = BASE_UNITS[base];
638
568
  }
639
-
640
569
  if (!base) {
641
570
  return false;
642
- } // All dimensions must be the same
643
-
571
+ }
644
572
 
573
+ // All dimensions must be the same
645
574
  for (var i = 0; i < BASE_DIMENSIONS.length; i++) {
646
575
  if (Math.abs((this.dimensions[i] || 0) - (base.dimensions[i] || 0)) > 1e-12) {
647
576
  return false;
648
577
  }
649
578
  }
650
-
651
579
  return true;
652
580
  };
581
+
653
582
  /**
654
583
  * Check if this unit has a base or bases equal to another base or bases
655
584
  * For derived units, the exponent on each base also must match
@@ -657,8 +586,6 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
657
586
  * @param {Unit} other
658
587
  * @return {boolean} true if equal base
659
588
  */
660
-
661
-
662
589
  Unit.prototype.equalBase = function (other) {
663
590
  // All dimensions must be the same
664
591
  for (var i = 0; i < BASE_DIMENSIONS.length; i++) {
@@ -666,46 +593,41 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
666
593
  return false;
667
594
  }
668
595
  }
669
-
670
596
  return true;
671
597
  };
598
+
672
599
  /**
673
600
  * Check if this unit equals another unit
674
601
  * @memberof Unit
675
602
  * @param {Unit} other
676
603
  * @return {boolean} true if both units are equal
677
604
  */
678
-
679
-
680
605
  Unit.prototype.equals = function (other) {
681
606
  return this.equalBase(other) && equal(this.value, other.value);
682
607
  };
608
+
683
609
  /**
684
610
  * Multiply this unit with another one or with a scalar
685
611
  * @memberof Unit
686
612
  * @param {Unit} other
687
613
  * @return {Unit} product of this unit and the other unit
688
614
  */
689
-
690
-
691
615
  Unit.prototype.multiply = function (_other) {
692
616
  var res = this.clone();
693
617
  var other = (0, _is.isUnit)(_other) ? _other : new Unit(_other);
694
-
695
618
  for (var i = 0; i < BASE_DIMENSIONS.length; i++) {
696
619
  // Dimensions arrays may be of different lengths. Default to 0.
697
620
  res.dimensions[i] = (this.dimensions[i] || 0) + (other.dimensions[i] || 0);
698
- } // Append other's units list onto res
699
-
621
+ }
700
622
 
623
+ // Append other's units list onto res
701
624
  for (var _i = 0; _i < other.units.length; _i++) {
702
625
  // Make a shallow copy of every unit
703
626
  var inverted = _objectSpread({}, other.units[_i]);
704
-
705
627
  res.units.push(inverted);
706
- } // If at least one operand has a value, then the result should also have a value
707
-
628
+ }
708
629
 
630
+ // If at least one operand has a value, then the result should also have a value
709
631
  if (this.value !== null || other.value !== null) {
710
632
  var valThis = this.value === null ? this._normalize(1) : this.value;
711
633
  var valOther = other.value === null ? other._normalize(1) : other.value;
@@ -713,13 +635,12 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
713
635
  } else {
714
636
  res.value = null;
715
637
  }
716
-
717
638
  if ((0, _is.isUnit)(_other)) {
718
639
  res.skipAutomaticSimplification = false;
719
640
  }
720
-
721
641
  return getNumericIfUnitless(res);
722
642
  };
643
+
723
644
  /**
724
645
  * Divide a number by this unit
725
646
  *
@@ -727,39 +648,34 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
727
648
  * @param {numeric} numerator
728
649
  * @param {unit} result of dividing numerator by this unit
729
650
  */
730
-
731
-
732
651
  Unit.prototype.divideInto = function (numerator) {
733
652
  return new Unit(numerator).divide(this);
734
653
  };
654
+
735
655
  /**
736
656
  * Divide this unit by another one
737
657
  * @memberof Unit
738
658
  * @param {Unit | numeric} other
739
659
  * @return {Unit} result of dividing this unit by the other unit
740
660
  */
741
-
742
-
743
661
  Unit.prototype.divide = function (_other) {
744
662
  var res = this.clone();
745
663
  var other = (0, _is.isUnit)(_other) ? _other : new Unit(_other);
746
-
747
664
  for (var i = 0; i < BASE_DIMENSIONS.length; i++) {
748
665
  // Dimensions arrays may be of different lengths. Default to 0.
749
666
  res.dimensions[i] = (this.dimensions[i] || 0) - (other.dimensions[i] || 0);
750
- } // Invert and append other's units list onto res
751
-
667
+ }
752
668
 
669
+ // Invert and append other's units list onto res
753
670
  for (var _i2 = 0; _i2 < other.units.length; _i2++) {
754
671
  // Make a shallow copy of every unit
755
672
  var inverted = _objectSpread(_objectSpread({}, other.units[_i2]), {}, {
756
673
  power: -other.units[_i2].power
757
674
  });
758
-
759
675
  res.units.push(inverted);
760
- } // If at least one operand has a value, the result should have a value
761
-
676
+ }
762
677
 
678
+ // If at least one operand has a value, the result should have a value
763
679
  if (this.value !== null || other.value !== null) {
764
680
  var valThis = this.value === null ? this._normalize(1) : this.value;
765
681
  var valOther = other.value === null ? other._normalize(1) : other.value;
@@ -767,36 +683,33 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
767
683
  } else {
768
684
  res.value = null;
769
685
  }
770
-
771
686
  if ((0, _is.isUnit)(_other)) {
772
687
  res.skipAutomaticSimplification = false;
773
688
  }
774
-
775
689
  return getNumericIfUnitless(res);
776
690
  };
691
+
777
692
  /**
778
693
  * Calculate the power of a unit
779
694
  * @memberof Unit
780
695
  * @param {number | Fraction | BigNumber} p
781
696
  * @returns {Unit} The result: this^p
782
697
  */
783
-
784
-
785
698
  Unit.prototype.pow = function (p) {
786
699
  var res = this.clone();
787
-
788
700
  for (var i = 0; i < BASE_DIMENSIONS.length; i++) {
789
701
  // Dimensions arrays may be of different lengths. Default to 0.
790
702
  res.dimensions[i] = (this.dimensions[i] || 0) * p;
791
- } // Adjust the power of each unit in the list
792
-
703
+ }
793
704
 
705
+ // Adjust the power of each unit in the list
794
706
  for (var _i3 = 0; _i3 < res.units.length; _i3++) {
795
707
  res.units[_i3].power *= p;
796
708
  }
797
-
798
709
  if (res.value !== null) {
799
- res.value = pow(res.value, p); // only allow numeric output, we don't want to return a Complex number
710
+ res.value = pow(res.value, p);
711
+
712
+ // only allow numeric output, we don't want to return a Complex number
800
713
  // if (!isNumeric(res.value)) {
801
714
  // res.value = NaN
802
715
  // }
@@ -804,17 +717,15 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
804
717
  } else {
805
718
  res.value = null;
806
719
  }
807
-
808
720
  res.skipAutomaticSimplification = false;
809
721
  return getNumericIfUnitless(res);
810
722
  };
723
+
811
724
  /**
812
725
  * Return the numeric value of this unit if it is dimensionless, has a value, and config.predictable == false; or the original unit otherwise
813
726
  * @param {Unit} unit
814
727
  * @returns {number | Fraction | BigNumber | Unit} The numeric value of the unit if conditions are met, or the original unit otherwise
815
728
  */
816
-
817
-
818
729
  function getNumericIfUnitless(unit) {
819
730
  if (unit.equalBase(BASE_UNITS.NONE) && unit.value !== null && !config.predictable) {
820
731
  return unit.value;
@@ -822,17 +733,15 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
822
733
  return unit;
823
734
  }
824
735
  }
736
+
825
737
  /**
826
738
  * Calculate the absolute value of a unit
827
739
  * @memberof Unit
828
740
  * @param {number | Fraction | BigNumber} x
829
741
  * @returns {Unit} The result: |x|, absolute value of x
830
742
  */
831
-
832
-
833
743
  Unit.prototype.abs = function () {
834
744
  var ret = this.clone();
835
-
836
745
  if (ret.value !== null) {
837
746
  if (ret._isDerived() || ret.units[0].unit.offset === 0) {
838
747
  ret.value = abs(ret.value);
@@ -841,35 +750,29 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
841
750
  // For example, abs(-283.15 degC) = -263.15 degC !!!
842
751
  // We must take the offset into consideration here
843
752
  var convert = ret._numberConverter(); // convert to Fraction or BigNumber if needed
844
-
845
-
846
753
  var unitValue = convert(ret.units[0].unit.value);
847
754
  var nominalOffset = convert(ret.units[0].unit.offset);
848
755
  var unitOffset = multiplyScalar(unitValue, nominalOffset);
849
756
  ret.value = subtract(abs(addScalar(ret.value, unitOffset)), unitOffset);
850
757
  }
851
758
  }
852
-
853
759
  for (var i in ret.units) {
854
760
  if (ret.units[i].unit.name === 'VA' || ret.units[i].unit.name === 'VAR') {
855
761
  ret.units[i].unit = UNITS.W;
856
762
  }
857
763
  }
858
-
859
764
  return ret;
860
765
  };
766
+
861
767
  /**
862
768
  * Convert the unit to a specific unit name.
863
769
  * @memberof Unit
864
770
  * @param {string | Unit} valuelessUnit A unit without value. Can have prefix, like "cm"
865
771
  * @returns {Unit} Returns a clone of the unit with a fixed prefix and unit.
866
772
  */
867
-
868
-
869
773
  Unit.prototype.to = function (valuelessUnit) {
870
774
  var value = this.value === null ? this._normalize(1) : this.value;
871
775
  var other;
872
-
873
776
  if (typeof valuelessUnit === 'string') {
874
777
  other = Unit.parse(valuelessUnit);
875
778
  } else if ((0, _is.isUnit)(valuelessUnit)) {
@@ -877,22 +780,18 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
877
780
  } else {
878
781
  throw new Error('String or Unit expected as parameter');
879
782
  }
880
-
881
783
  if (!this.equalBase(other)) {
882
784
  throw new Error("Units do not match ('".concat(other.toString(), "' != '").concat(this.toString(), "')"));
883
785
  }
884
-
885
786
  if (other.value !== null) {
886
787
  throw new Error('Cannot convert to a unit with a value');
887
788
  }
888
-
889
789
  if (this.value === null || this._isDerived() || this.units[0].unit.offset === other.units[0].unit.offset) {
890
790
  other.value = (0, _object.clone)(value);
891
791
  } else {
892
792
  /* Need to adjust value by difference in offset to convert */
893
793
  var convert = Unit._getNumberConverter((0, _is.typeOf)(value)); // convert to Fraction or BigNumber if needed
894
794
 
895
-
896
795
  var thisUnitValue = convert(this.units[0].unit.value);
897
796
  var thisNominalOffset = convert(this.units[0].unit.offset);
898
797
  var thisUnitOffset = multiplyScalar(thisUnitValue, thisNominalOffset);
@@ -901,11 +800,11 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
901
800
  var otherUnitOffset = multiplyScalar(otherUnitValue, otherNominalOffset);
902
801
  other.value = subtract(addScalar(value, thisUnitOffset), otherUnitOffset);
903
802
  }
904
-
905
803
  other.fixPrefix = true;
906
804
  other.skipAutomaticSimplification = true;
907
805
  return other;
908
806
  };
807
+
909
808
  /**
910
809
  * Return the value of the unit when represented with given valueless unit
911
810
  * @memberof Unit
@@ -913,53 +812,46 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
913
812
  * @return {number} Returns the unit value as number.
914
813
  */
915
814
  // TODO: deprecate Unit.toNumber? It's always better to use toNumeric
916
-
917
-
918
815
  Unit.prototype.toNumber = function (valuelessUnit) {
919
816
  return toNumber(this.toNumeric(valuelessUnit));
920
817
  };
818
+
921
819
  /**
922
820
  * Return the value of the unit in the original numeric type
923
821
  * @memberof Unit
924
822
  * @param {string | Unit} valuelessUnit For example 'cm' or 'inch'
925
823
  * @return {number | BigNumber | Fraction} Returns the unit value
926
824
  */
927
-
928
-
929
825
  Unit.prototype.toNumeric = function (valuelessUnit) {
930
826
  var other;
931
-
932
827
  if (valuelessUnit) {
933
828
  // Allow getting the numeric value without converting to a different unit
934
829
  other = this.to(valuelessUnit);
935
830
  } else {
936
831
  other = this.clone();
937
832
  }
938
-
939
833
  if (other._isDerived() || other.units.length === 0) {
940
834
  return other._denormalize(other.value);
941
835
  } else {
942
836
  return other._denormalize(other.value, other.units[0].prefix.value);
943
837
  }
944
838
  };
839
+
945
840
  /**
946
841
  * Get a string representation of the unit.
947
842
  * @memberof Unit
948
843
  * @return {string}
949
844
  */
950
-
951
-
952
845
  Unit.prototype.toString = function () {
953
846
  return this.format();
954
847
  };
848
+
955
849
  /**
956
850
  * Get a JSON representation of the unit
957
851
  * @memberof Unit
958
852
  * @returns {Object} Returns a JSON object structured as:
959
853
  * `{"mathjs": "Unit", "value": 2, "unit": "cm", "fixPrefix": false}`
960
854
  */
961
-
962
-
963
855
  Unit.prototype.toJSON = function () {
964
856
  return {
965
857
  mathjs: 'Unit',
@@ -968,6 +860,7 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
968
860
  fixPrefix: this.fixPrefix
969
861
  };
970
862
  };
863
+
971
864
  /**
972
865
  * Instantiate a Unit from a JSON object
973
866
  * @memberof Unit
@@ -975,32 +868,29 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
975
868
  * `{"mathjs": "Unit", "value": 2, "unit": "cm", "fixPrefix": false}`
976
869
  * @return {Unit}
977
870
  */
978
-
979
-
980
871
  Unit.fromJSON = function (json) {
981
872
  var unit = new Unit(json.value, json.unit);
982
873
  unit.fixPrefix = json.fixPrefix || false;
983
874
  return unit;
984
875
  };
876
+
985
877
  /**
986
878
  * Returns the string representation of the unit.
987
879
  * @memberof Unit
988
880
  * @return {string}
989
881
  */
990
-
991
-
992
882
  Unit.prototype.valueOf = Unit.prototype.toString;
883
+
993
884
  /**
994
885
  * Simplify this Unit's unit list and return a new Unit with the simplified list.
995
886
  * The returned Unit will contain a list of the "best" units for formatting.
996
887
  */
997
-
998
888
  Unit.prototype.simplify = function () {
999
889
  var ret = this.clone();
1000
- var proposedUnitList = []; // Search for a matching base
890
+ var proposedUnitList = [];
1001
891
 
892
+ // Search for a matching base
1002
893
  var matchingBase;
1003
-
1004
894
  for (var key in currentUnitSystem) {
1005
895
  if ((0, _object.hasOwnProperty)(currentUnitSystem, key)) {
1006
896
  if (ret.hasBase(BASE_UNITS[key])) {
@@ -1009,19 +899,16 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
1009
899
  }
1010
900
  }
1011
901
  }
1012
-
1013
902
  if (matchingBase === 'NONE') {
1014
903
  ret.units = [];
1015
904
  } else {
1016
905
  var matchingUnit;
1017
-
1018
906
  if (matchingBase) {
1019
907
  // Does the unit system have a matching unit?
1020
908
  if ((0, _object.hasOwnProperty)(currentUnitSystem, matchingBase)) {
1021
909
  matchingUnit = currentUnitSystem[matchingBase];
1022
910
  }
1023
911
  }
1024
-
1025
912
  if (matchingUnit) {
1026
913
  ret.units = [{
1027
914
  unit: matchingUnit.unit,
@@ -1033,10 +920,8 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
1033
920
  // 5 (kg m^2) / (s^3 mol)
1034
921
  // Build an representation from the base units of the current unit system
1035
922
  var missingBaseDim = false;
1036
-
1037
923
  for (var i = 0; i < BASE_DIMENSIONS.length; i++) {
1038
924
  var baseDim = BASE_DIMENSIONS[i];
1039
-
1040
925
  if (Math.abs(ret.dimensions[i] || 0) > 1e-12) {
1041
926
  if ((0, _object.hasOwnProperty)(currentUnitSystem, baseDim)) {
1042
927
  proposedUnitList.push({
@@ -1048,32 +933,30 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
1048
933
  missingBaseDim = true;
1049
934
  }
1050
935
  }
1051
- } // Is the proposed unit list "simpler" than the existing one?
1052
-
936
+ }
1053
937
 
938
+ // Is the proposed unit list "simpler" than the existing one?
1054
939
  if (proposedUnitList.length < ret.units.length && !missingBaseDim) {
1055
940
  // Replace this unit list with the proposed list
1056
941
  ret.units = proposedUnitList;
1057
942
  }
1058
943
  }
1059
944
  }
1060
-
1061
945
  return ret;
1062
946
  };
947
+
1063
948
  /**
1064
949
  * Returns a new Unit in the SI system with the same value as this one
1065
950
  */
1066
-
1067
-
1068
951
  Unit.prototype.toSI = function () {
1069
952
  var ret = this.clone();
1070
- var proposedUnitList = []; // Multiple units or units with powers are formatted like this:
953
+ var proposedUnitList = [];
954
+
955
+ // Multiple units or units with powers are formatted like this:
1071
956
  // 5 (kg m^2) / (s^3 mol)
1072
957
  // Build an representation from the base units of the SI unit system
1073
-
1074
958
  for (var i = 0; i < BASE_DIMENSIONS.length; i++) {
1075
959
  var baseDim = BASE_DIMENSIONS[i];
1076
-
1077
960
  if (Math.abs(ret.dimensions[i] || 0) > 1e-12) {
1078
961
  if ((0, _object.hasOwnProperty)(UNIT_SYSTEMS.si, baseDim)) {
1079
962
  proposedUnitList.push({
@@ -1085,32 +968,29 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
1085
968
  throw new Error('Cannot express custom unit ' + baseDim + ' in SI units');
1086
969
  }
1087
970
  }
1088
- } // Replace this unit list with the proposed list
1089
-
971
+ }
1090
972
 
973
+ // Replace this unit list with the proposed list
1091
974
  ret.units = proposedUnitList;
1092
975
  ret.fixPrefix = true;
1093
976
  ret.skipAutomaticSimplification = true;
1094
977
  return ret;
1095
978
  };
979
+
1096
980
  /**
1097
981
  * Get a string representation of the units of this Unit, without the value. The unit list is formatted as-is without first being simplified.
1098
982
  * @memberof Unit
1099
983
  * @return {string}
1100
984
  */
1101
-
1102
-
1103
985
  Unit.prototype.formatUnits = function () {
1104
986
  var strNum = '';
1105
987
  var strDen = '';
1106
988
  var nNum = 0;
1107
989
  var nDen = 0;
1108
-
1109
990
  for (var i = 0; i < this.units.length; i++) {
1110
991
  if (this.units[i].power > 0) {
1111
992
  nNum++;
1112
993
  strNum += ' ' + this.units[i].prefix.name + this.units[i].unit.name;
1113
-
1114
994
  if (Math.abs(this.units[i].power - 1.0) > 1e-15) {
1115
995
  strNum += '^' + this.units[i].power;
1116
996
  }
@@ -1118,13 +998,11 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
1118
998
  nDen++;
1119
999
  }
1120
1000
  }
1121
-
1122
1001
  if (nDen > 0) {
1123
1002
  for (var _i4 = 0; _i4 < this.units.length; _i4++) {
1124
1003
  if (this.units[_i4].power < 0) {
1125
1004
  if (nNum > 0) {
1126
1005
  strDen += ' ' + this.units[_i4].prefix.name + this.units[_i4].unit.name;
1127
-
1128
1006
  if (Math.abs(this.units[_i4].power + 1.0) > 1e-15) {
1129
1007
  strDen += '^' + -this.units[_i4].power;
1130
1008
  }
@@ -1134,29 +1012,26 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
1134
1012
  }
1135
1013
  }
1136
1014
  }
1137
- } // Remove leading " "
1138
-
1139
-
1015
+ }
1016
+ // Remove leading " "
1140
1017
  strNum = strNum.substr(1);
1141
- strDen = strDen.substr(1); // Add parans for better copy/paste back into evaluate, for example, or for better pretty print formatting
1018
+ strDen = strDen.substr(1);
1142
1019
 
1020
+ // Add parans for better copy/paste back into evaluate, for example, or for better pretty print formatting
1143
1021
  if (nNum > 1 && nDen > 0) {
1144
1022
  strNum = '(' + strNum + ')';
1145
1023
  }
1146
-
1147
1024
  if (nDen > 1 && nNum > 0) {
1148
1025
  strDen = '(' + strDen + ')';
1149
1026
  }
1150
-
1151
1027
  var str = strNum;
1152
-
1153
1028
  if (nNum > 0 && nDen > 0) {
1154
1029
  str += ' / ';
1155
1030
  }
1156
-
1157
1031
  str += strDen;
1158
1032
  return str;
1159
1033
  };
1034
+
1160
1035
  /**
1161
1036
  * Get a string representation of the Unit, with optional formatting options.
1162
1037
  * @memberof Unit
@@ -1166,20 +1041,17 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
1166
1041
  * options.
1167
1042
  * @return {string}
1168
1043
  */
1169
-
1170
-
1171
1044
  Unit.prototype.format = function (options) {
1172
1045
  // Simplfy the unit list, unless it is valueless or was created directly in the
1173
1046
  // constructor or as the result of to or toSI
1174
- var simp = this.skipAutomaticSimplification || this.value === null ? this.clone() : this.simplify(); // Apply some custom logic for handling VA and VAR. The goal is to express the value of the unit as a real value, if possible. Otherwise, use a real-valued unit instead of a complex-valued one.
1047
+ var simp = this.skipAutomaticSimplification || this.value === null ? this.clone() : this.simplify();
1175
1048
 
1049
+ // Apply some custom logic for handling VA and VAR. The goal is to express the value of the unit as a real value, if possible. Otherwise, use a real-valued unit instead of a complex-valued one.
1176
1050
  var isImaginary = false;
1177
-
1178
1051
  if (typeof simp.value !== 'undefined' && simp.value !== null && (0, _is.isComplex)(simp.value)) {
1179
1052
  // TODO: Make this better, for example, use relative magnitude of re and im rather than absolute
1180
1053
  isImaginary = Math.abs(simp.value.re) < 1e-14;
1181
1054
  }
1182
-
1183
1055
  for (var i in simp.units) {
1184
1056
  if ((0, _object.hasOwnProperty)(simp.units, i)) {
1185
1057
  if (simp.units[i].unit) {
@@ -1190,10 +1062,10 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
1190
1062
  }
1191
1063
  }
1192
1064
  }
1193
- } // Now apply the best prefix
1194
- // Units must have only one unit and not have the fixPrefix flag set
1195
-
1065
+ }
1196
1066
 
1067
+ // Now apply the best prefix
1068
+ // Units must have only one unit and not have the fixPrefix flag set
1197
1069
  if (simp.units.length === 1 && !simp.fixPrefix) {
1198
1070
  // Units must have integer powers, otherwise the prefix will change the
1199
1071
  // outputted value by not-an-integer-power-of-ten
@@ -1202,12 +1074,9 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
1202
1074
  simp.units[0].prefix = simp._bestPrefix();
1203
1075
  }
1204
1076
  }
1205
-
1206
1077
  var value = simp._denormalize(simp.value);
1207
-
1208
1078
  var str = simp.value !== null ? format(value, options || {}) : '';
1209
1079
  var unitStr = simp.formatUnits();
1210
-
1211
1080
  if (simp.value && (0, _is.isComplex)(simp.value)) {
1212
1081
  str = '(' + str + ')'; // Surround complex values with ( ) to enable better parsing
1213
1082
  }
@@ -1215,56 +1084,48 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
1215
1084
  if (unitStr.length > 0 && str.length > 0) {
1216
1085
  str += ' ';
1217
1086
  }
1218
-
1219
1087
  str += unitStr;
1220
1088
  return str;
1221
1089
  };
1090
+
1222
1091
  /**
1223
1092
  * Calculate the best prefix using current value.
1224
1093
  * @memberof Unit
1225
1094
  * @returns {Object} prefix
1226
1095
  * @private
1227
1096
  */
1228
-
1229
-
1230
1097
  Unit.prototype._bestPrefix = function () {
1231
1098
  if (this.units.length !== 1) {
1232
1099
  throw new Error('Can only compute the best prefix for single units with integer powers, like kg, s^2, N^-1, and so forth!');
1233
1100
  }
1234
-
1235
1101
  if (Math.abs(this.units[0].power - Math.round(this.units[0].power)) >= 1e-14) {
1236
1102
  throw new Error('Can only compute the best prefix for single units with integer powers, like kg, s^2, N^-1, and so forth!');
1237
- } // find the best prefix value (resulting in the value of which
1103
+ }
1104
+
1105
+ // find the best prefix value (resulting in the value of which
1238
1106
  // the absolute value of the log10 is closest to zero,
1239
1107
  // though with a little offset of 1.2 for nicer values: you get a
1240
1108
  // sequence 1mm 100mm 500mm 0.6m 1m 10m 100m 500m 0.6km 1km ...
1109
+
1241
1110
  // Note: the units value can be any numeric type, but to find the best
1242
1111
  // prefix it's enough to work with limited precision of a regular number
1243
1112
  // Update: using mathjs abs since we also allow complex numbers
1244
-
1245
-
1246
1113
  var absValue = this.value !== null ? abs(this.value) : 0;
1247
1114
  var absUnitValue = abs(this.units[0].unit.value);
1248
1115
  var bestPrefix = this.units[0].prefix;
1249
-
1250
1116
  if (absValue === 0) {
1251
1117
  return bestPrefix;
1252
1118
  }
1253
-
1254
1119
  var power = this.units[0].power;
1255
1120
  var bestDiff = Math.log(absValue / Math.pow(bestPrefix.value * absUnitValue, power)) / Math.LN10 - 1.2;
1256
1121
  if (bestDiff > -2.200001 && bestDiff < 1.800001) return bestPrefix; // Allow the original prefix
1257
-
1258
1122
  bestDiff = Math.abs(bestDiff);
1259
1123
  var prefixes = this.units[0].unit.prefixes;
1260
-
1261
1124
  for (var p in prefixes) {
1262
1125
  if ((0, _object.hasOwnProperty)(prefixes, p)) {
1263
1126
  var prefix = prefixes[p];
1264
-
1265
1127
  if (prefix.scientific) {
1266
1128
  var diff = Math.abs(Math.log(absValue / Math.pow(prefix.value * absUnitValue, power)) / Math.LN10 - 1.2);
1267
-
1268
1129
  if (diff < bestDiff || diff === bestDiff && prefix.name.length < bestPrefix.name.length) {
1269
1130
  // choose the prefix with the smallest diff, or if equal, choose the one
1270
1131
  // with the shortest name (can happen with SHORTLONG for example)
@@ -1274,9 +1135,9 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
1274
1135
  }
1275
1136
  }
1276
1137
  }
1277
-
1278
1138
  return bestPrefix;
1279
1139
  };
1140
+
1280
1141
  /**
1281
1142
  * Returns an array of units whose sum is equal to this unit
1282
1143
  * @memberof Unit
@@ -1290,53 +1151,46 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
1290
1151
  *
1291
1152
  * @return {Array} An array of units.
1292
1153
  */
1293
-
1294
-
1295
1154
  Unit.prototype.splitUnit = function (parts) {
1296
1155
  var x = this.clone();
1297
1156
  var ret = [];
1298
-
1299
1157
  for (var i = 0; i < parts.length; i++) {
1300
1158
  // Convert x to the requested unit
1301
1159
  x = x.to(parts[i]);
1302
- if (i === parts.length - 1) break; // Get the numeric value of this unit
1160
+ if (i === parts.length - 1) break;
1303
1161
 
1304
- var xNumeric = x.toNumeric(); // Check to see if xNumeric is nearly equal to an integer,
1305
- // since fix can incorrectly round down if there is round-off error
1162
+ // Get the numeric value of this unit
1163
+ var xNumeric = x.toNumeric();
1306
1164
 
1165
+ // Check to see if xNumeric is nearly equal to an integer,
1166
+ // since fix can incorrectly round down if there is round-off error
1307
1167
  var xRounded = round(xNumeric);
1308
1168
  var xFixed = void 0;
1309
1169
  var isNearlyEqual = equal(xRounded, xNumeric);
1310
-
1311
1170
  if (isNearlyEqual) {
1312
1171
  xFixed = xRounded;
1313
1172
  } else {
1314
1173
  xFixed = fix(x.toNumeric());
1315
1174
  }
1316
-
1317
1175
  var y = new Unit(xFixed, parts[i].toString());
1318
1176
  ret.push(y);
1319
1177
  x = subtract(x, y);
1320
- } // This little bit fixes a bug where the remainder should be 0 but is a little bit off.
1178
+ }
1179
+
1180
+ // This little bit fixes a bug where the remainder should be 0 but is a little bit off.
1321
1181
  // But instead of comparing x, the remainder, with zero--we will compare the sum of
1322
1182
  // all the parts so far with the original value. If they are nearly equal,
1323
1183
  // we set the remainder to 0.
1324
-
1325
-
1326
1184
  var testSum = 0;
1327
-
1328
1185
  for (var _i5 = 0; _i5 < ret.length; _i5++) {
1329
1186
  testSum = addScalar(testSum, ret[_i5].value);
1330
1187
  }
1331
-
1332
1188
  if (equal(testSum, this.value)) {
1333
1189
  x.value = 0;
1334
1190
  }
1335
-
1336
1191
  ret.push(x);
1337
1192
  return ret;
1338
1193
  };
1339
-
1340
1194
  var PREFIXES = {
1341
1195
  NONE: {
1342
1196
  '': {
@@ -1977,6 +1831,7 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
1977
1831
  PREFIXES.SHORTLONG = (0, _extends2["default"])({}, PREFIXES.SHORT, PREFIXES.LONG);
1978
1832
  PREFIXES.BINARY_SHORT = (0, _extends2["default"])({}, PREFIXES.BINARY_SHORT_SI, PREFIXES.BINARY_SHORT_IEC);
1979
1833
  PREFIXES.BINARY_LONG = (0, _extends2["default"])({}, PREFIXES.BINARY_LONG_SI, PREFIXES.BINARY_LONG_IEC);
1834
+
1980
1835
  /* Internally, each unit is represented by a value and a dimension array. The elements of the dimensions array have the following meaning:
1981
1836
  * Index Dimension
1982
1837
  * ----- ---------
@@ -2071,13 +1926,11 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
2071
1926
  dimensions: [0, 0, 0, 0, 0, 0, 0, 0, 1]
2072
1927
  }
2073
1928
  };
2074
-
2075
1929
  for (var key in BASE_UNITS) {
2076
1930
  if ((0, _object.hasOwnProperty)(BASE_UNITS, key)) {
2077
1931
  BASE_UNITS[key].key = key;
2078
1932
  }
2079
1933
  }
2080
-
2081
1934
  var BASE_UNIT_NONE = {};
2082
1935
  var UNIT_NONE = {
2083
1936
  name: '',
@@ -2217,6 +2070,7 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
2217
2070
  offset: 0
2218
2071
  },
2219
2072
  // 1/1000 inch
2073
+
2220
2074
  // Surface
2221
2075
  m2: {
2222
2076
  name: 'm2',
@@ -2297,6 +2151,7 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
2297
2151
  offset: 0
2298
2152
  },
2299
2153
  // 10000 m2
2154
+
2300
2155
  // Volume
2301
2156
  m3: {
2302
2157
  name: 'm3',
@@ -2385,6 +2240,7 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
2385
2240
  offset: 0
2386
2241
  },
2387
2242
  // 0.05 mL = 5e-8 m3
2243
+
2388
2244
  // Liquid volume
2389
2245
  minim: {
2390
2246
  name: 'minim',
@@ -2482,6 +2338,7 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
2482
2338
  offset: 0
2483
2339
  },
2484
2340
  // 238.4810 L
2341
+
2485
2342
  // {name: 'min', base: BASE_UNITS.VOLUME, prefixes: PREFIXES.NONE, value: 0.00000006161152, offset: 0}, // 0.06161152 mL // min is already in use as minute
2486
2343
  fldr: {
2487
2344
  name: 'fldr',
@@ -2556,6 +2413,7 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
2556
2413
  },
2557
2414
  // 158.9873 L
2558
2415
  // {name: 'hogshead', base: BASE_UNITS.VOLUME, prefixes: PREFIXES.NONE, value: 0.2384810, offset: 0}, // 238.4810 L // TODO: hh?
2416
+
2559
2417
  // Mass
2560
2418
  g: {
2561
2419
  name: 'g',
@@ -2981,6 +2839,7 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
2981
2839
  // TODO: units STERADIAN
2982
2840
  // {name: 'sr', base: BASE_UNITS.STERADIAN, prefixes: PREFIXES.NONE, value: 1, offset: 0},
2983
2841
  // {name: 'steradian', base: BASE_UNITS.STERADIAN, prefixes: PREFIXES.NONE, value: 1, offset: 0},
2842
+
2984
2843
  // Force
2985
2844
  N: {
2986
2845
  name: 'N',
@@ -3236,7 +3095,6 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
3236
3095
  value: 1,
3237
3096
  offset: 0
3238
3097
  },
3239
-
3240
3098
  /*
3241
3099
  * Unicode breaks in browsers if charset is not specified
3242
3100
  Ω: {
@@ -3336,8 +3194,9 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
3336
3194
  value: 8,
3337
3195
  offset: 0
3338
3196
  }
3339
- }; // aliases (formerly plurals)
3197
+ };
3340
3198
 
3199
+ // aliases (formerly plurals)
3341
3200
  var ALIASES = {
3342
3201
  meters: 'meter',
3343
3202
  inches: 'inch',
@@ -3426,48 +3285,39 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
3426
3285
  bit: 'bits',
3427
3286
  "byte": 'bytes'
3428
3287
  };
3288
+
3429
3289
  /**
3430
3290
  * Calculate the values for the angle units.
3431
3291
  * Value is calculated as number or BigNumber depending on the configuration
3432
3292
  * @param {{number: 'number' | 'BigNumber'}} config
3433
3293
  */
3434
-
3435
3294
  function calculateAngleValues(config) {
3436
3295
  if (config.number === 'BigNumber') {
3437
3296
  var pi = (0, _constants.createBigNumberPi)(_BigNumber);
3438
3297
  UNITS.rad.value = new _BigNumber(1);
3439
3298
  UNITS.deg.value = pi.div(180); // 2 * pi / 360
3440
-
3441
3299
  UNITS.grad.value = pi.div(200); // 2 * pi / 400
3442
-
3443
3300
  UNITS.cycle.value = pi.times(2); // 2 * pi
3444
-
3445
3301
  UNITS.arcsec.value = pi.div(648000); // 2 * pi / 360 / 3600
3446
-
3447
3302
  UNITS.arcmin.value = pi.div(10800); // 2 * pi / 360 / 60
3448
3303
  } else {
3449
3304
  // number
3450
3305
  UNITS.rad.value = 1;
3451
3306
  UNITS.deg.value = Math.PI / 180; // 2 * pi / 360
3452
-
3453
3307
  UNITS.grad.value = Math.PI / 200; // 2 * pi / 400
3454
-
3455
3308
  UNITS.cycle.value = Math.PI * 2; // 2 * pi
3456
-
3457
3309
  UNITS.arcsec.value = Math.PI / 648000; // 2 * pi / 360 / 3600
3458
-
3459
3310
  UNITS.arcmin.value = Math.PI / 10800; // 2 * pi / 360 / 60
3460
- } // copy to the full names of the angles
3461
-
3311
+ }
3462
3312
 
3313
+ // copy to the full names of the angles
3463
3314
  UNITS.radian.value = UNITS.rad.value;
3464
3315
  UNITS.degree.value = UNITS.deg.value;
3465
3316
  UNITS.gradian.value = UNITS.grad.value;
3466
- } // apply the angle values now
3467
-
3317
+ }
3468
3318
 
3319
+ // apply the angle values now
3469
3320
  calculateAngleValues(config);
3470
-
3471
3321
  if (on) {
3472
3322
  // recalculate the values on change of configuration
3473
3323
  on('config', function (curr, prev) {
@@ -3476,13 +3326,12 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
3476
3326
  }
3477
3327
  });
3478
3328
  }
3329
+
3479
3330
  /**
3480
3331
  * A unit system is a set of dimensionally independent base units plus a set of derived units, formed by multiplication and division of the base units, that are by convention used with the unit system.
3481
3332
  * A user perhaps could issue a command to select a preferred unit system, or use the default (see below).
3482
3333
  * Auto unit system: The default unit system is updated on the fly anytime a unit is parsed. The corresponding unit in the default unit system is updated, so that answers are given in the same units the user supplies.
3483
3334
  */
3484
-
3485
-
3486
3335
  var UNIT_SYSTEMS = {
3487
3336
  si: {
3488
3337
  // Base units
@@ -3580,8 +3429,9 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
3580
3429
  prefix: PREFIXES.SHORT['']
3581
3430
  }
3582
3431
  }
3583
- }; // Clone to create the other unit systems
3432
+ };
3584
3433
 
3434
+ // Clone to create the other unit systems
3585
3435
  UNIT_SYSTEMS.cgs = JSON.parse(JSON.stringify(UNIT_SYSTEMS.si));
3586
3436
  UNIT_SYSTEMS.cgs.LENGTH = {
3587
3437
  unit: UNITS.m,
@@ -3598,7 +3448,8 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
3598
3448
  UNIT_SYSTEMS.cgs.ENERGY = {
3599
3449
  unit: UNITS.erg,
3600
3450
  prefix: PREFIXES.NONE['']
3601
- }; // there are wholly 4 unique cgs systems for electricity and magnetism,
3451
+ };
3452
+ // there are wholly 4 unique cgs systems for electricity and magnetism,
3602
3453
  // so let's not worry about it unless somebody complains
3603
3454
 
3604
3455
  UNIT_SYSTEMS.us = JSON.parse(JSON.stringify(UNIT_SYSTEMS.si));
@@ -3629,17 +3480,20 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
3629
3480
  UNIT_SYSTEMS.us.PRESSURE = {
3630
3481
  unit: UNITS.psi,
3631
3482
  prefix: PREFIXES.NONE['']
3632
- }; // Add additional unit systems here.
3633
- // Choose a unit system to seed the auto unit system.
3483
+ };
3634
3484
 
3635
- UNIT_SYSTEMS.auto = JSON.parse(JSON.stringify(UNIT_SYSTEMS.si)); // Set the current unit system
3485
+ // Add additional unit systems here.
3636
3486
 
3487
+ // Choose a unit system to seed the auto unit system.
3488
+ UNIT_SYSTEMS.auto = JSON.parse(JSON.stringify(UNIT_SYSTEMS.si));
3489
+
3490
+ // Set the current unit system
3637
3491
  var currentUnitSystem = UNIT_SYSTEMS.auto;
3492
+
3638
3493
  /**
3639
3494
  * Set a unit system for formatting derived units.
3640
3495
  * @param {string} [name] The name of the unit system.
3641
3496
  */
3642
-
3643
3497
  Unit.setUnitSystem = function (name) {
3644
3498
  if ((0, _object.hasOwnProperty)(UNIT_SYSTEMS, name)) {
3645
3499
  currentUnitSystem = UNIT_SYSTEMS[name];
@@ -3647,12 +3501,11 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
3647
3501
  throw new Error('Unit system ' + name + ' does not exist. Choices are: ' + Object.keys(UNIT_SYSTEMS).join(', '));
3648
3502
  }
3649
3503
  };
3504
+
3650
3505
  /**
3651
3506
  * Return the current unit system.
3652
3507
  * @return {string} The current unit system.
3653
3508
  */
3654
-
3655
-
3656
3509
  Unit.getUnitSystem = function () {
3657
3510
  for (var _key in UNIT_SYSTEMS) {
3658
3511
  if ((0, _object.hasOwnProperty)(UNIT_SYSTEMS, _key)) {
@@ -3662,16 +3515,16 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
3662
3515
  }
3663
3516
  }
3664
3517
  };
3518
+
3665
3519
  /**
3666
3520
  * Converters to convert from number to an other numeric type like BigNumber
3667
3521
  * or Fraction
3668
3522
  */
3669
-
3670
-
3671
3523
  Unit.typeConverters = {
3672
3524
  BigNumber: function BigNumber(x) {
3673
3525
  return new _BigNumber(x + ''); // stringify to prevent constructor error
3674
3526
  },
3527
+
3675
3528
  Fraction: function Fraction(x) {
3676
3529
  return new _Fraction(x);
3677
3530
  },
@@ -3682,6 +3535,7 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
3682
3535
  return x;
3683
3536
  }
3684
3537
  };
3538
+
3685
3539
  /**
3686
3540
  * Retrieve the right converter function corresponding with this unit's
3687
3541
  * value
@@ -3689,16 +3543,14 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
3689
3543
  * @memberof Unit
3690
3544
  * @return {Function}
3691
3545
  */
3692
-
3693
3546
  Unit.prototype._numberConverter = function () {
3694
3547
  var convert = Unit.typeConverters[this.valueType()];
3695
-
3696
3548
  if (convert) {
3697
3549
  return convert;
3698
3550
  }
3699
-
3700
3551
  throw new TypeError('Unsupported Unit value type "' + this.valueType() + '"');
3701
3552
  };
3553
+
3702
3554
  /**
3703
3555
  * Retrieve the right convertor function corresponding with the type
3704
3556
  * of provided exampleValue.
@@ -3707,64 +3559,56 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
3707
3559
  * In case of an unknown type,
3708
3560
  * @return {Function}
3709
3561
  */
3710
-
3711
-
3712
3562
  Unit._getNumberConverter = function (type) {
3713
3563
  if (!Unit.typeConverters[type]) {
3714
3564
  throw new TypeError('Unsupported type "' + type + '"');
3715
3565
  }
3716
-
3717
3566
  return Unit.typeConverters[type];
3718
- }; // Add dimensions to each built-in unit
3719
-
3567
+ };
3720
3568
 
3569
+ // Add dimensions to each built-in unit
3721
3570
  for (var _key2 in UNITS) {
3722
3571
  if ((0, _object.hasOwnProperty)(UNITS, _key2)) {
3723
3572
  var unit = UNITS[_key2];
3724
3573
  unit.dimensions = unit.base.dimensions;
3725
3574
  }
3726
- } // Create aliases
3727
-
3575
+ }
3728
3576
 
3577
+ // Create aliases
3729
3578
  for (var _name2 in ALIASES) {
3730
3579
  if ((0, _object.hasOwnProperty)(ALIASES, _name2)) {
3731
3580
  var _unit2 = UNITS[ALIASES[_name2]];
3732
3581
  var alias = {};
3733
-
3734
3582
  for (var _key3 in _unit2) {
3735
3583
  if ((0, _object.hasOwnProperty)(_unit2, _key3)) {
3736
3584
  alias[_key3] = _unit2[_key3];
3737
3585
  }
3738
3586
  }
3739
-
3740
3587
  alias.name = _name2;
3741
3588
  UNITS[_name2] = alias;
3742
3589
  }
3743
3590
  }
3591
+
3744
3592
  /**
3745
3593
  * Checks if a character is a valid latin letter (upper or lower case).
3746
3594
  * Note that this function can be overridden, for example to allow support of other alphabets.
3747
3595
  * @param {string} c Tested character
3748
3596
  */
3749
-
3750
-
3751
3597
  Unit.isValidAlpha = function isValidAlpha(c) {
3752
3598
  return /^[a-zA-Z]$/.test(c);
3753
3599
  };
3754
-
3755
3600
  function assertUnitNameIsValid(name) {
3756
3601
  for (var i = 0; i < name.length; i++) {
3757
3602
  c = name.charAt(i);
3758
-
3759
3603
  if (i === 0 && !Unit.isValidAlpha(c)) {
3760
3604
  throw new Error('Invalid unit name (must begin with alpha character): "' + name + '"');
3761
3605
  }
3762
-
3763
3606
  if (i > 0 && !(Unit.isValidAlpha(c) || isDigit(c))) {
3764
3607
  throw new Error('Invalid unit name (only alphanumeric characters are allowed): "' + name + '"');
3765
3608
  }
3766
3609
  }
3767
3610
  }
3611
+
3768
3612
  /**
3769
3613
  * Wrapper around createUnitSingle.
3770
3614
  * Example:
@@ -3783,39 +3627,35 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
3783
3627
  * @param {object} obj Object map. Each key becomes a unit which is defined by its value.
3784
3628
  * @param {object} options
3785
3629
  */
3786
-
3787
-
3788
3630
  Unit.createUnit = function (obj, options) {
3789
3631
  if ((0, _typeof2["default"])(obj) !== 'object') {
3790
3632
  throw new TypeError("createUnit expects first parameter to be of type 'Object'");
3791
- } // Remove all units and aliases we are overriding
3792
-
3633
+ }
3793
3634
 
3635
+ // Remove all units and aliases we are overriding
3794
3636
  if (options && options.override) {
3795
3637
  for (var _key4 in obj) {
3796
3638
  if ((0, _object.hasOwnProperty)(obj, _key4)) {
3797
3639
  Unit.deleteUnit(_key4);
3798
3640
  }
3799
-
3800
3641
  if (obj[_key4].aliases) {
3801
3642
  for (var i = 0; i < obj[_key4].aliases.length; i++) {
3802
3643
  Unit.deleteUnit(obj[_key4].aliases[i]);
3803
3644
  }
3804
3645
  }
3805
3646
  }
3806
- } // TODO: traverse multiple times until all units have been added
3807
-
3647
+ }
3808
3648
 
3649
+ // TODO: traverse multiple times until all units have been added
3809
3650
  var lastUnit;
3810
-
3811
3651
  for (var _key5 in obj) {
3812
3652
  if ((0, _object.hasOwnProperty)(obj, _key5)) {
3813
3653
  lastUnit = Unit.createUnitSingle(_key5, obj[_key5]);
3814
3654
  }
3815
3655
  }
3816
-
3817
3656
  return lastUnit;
3818
3657
  };
3658
+
3819
3659
  /**
3820
3660
  * Create a user-defined unit and register it with the Unit type.
3821
3661
  * Example:
@@ -3844,32 +3684,28 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
3844
3684
  *
3845
3685
  * @return {Unit}
3846
3686
  */
3847
-
3848
-
3849
3687
  Unit.createUnitSingle = function (name, obj, options) {
3850
3688
  if (typeof obj === 'undefined' || obj === null) {
3851
3689
  obj = {};
3852
3690
  }
3853
-
3854
3691
  if (typeof name !== 'string') {
3855
3692
  throw new TypeError("createUnitSingle expects first parameter to be of type 'string'");
3856
- } // Check collisions with existing units
3857
-
3693
+ }
3858
3694
 
3695
+ // Check collisions with existing units
3859
3696
  if ((0, _object.hasOwnProperty)(UNITS, name)) {
3860
3697
  throw new Error('Cannot create unit "' + name + '": a unit with that name already exists');
3861
- } // TODO: Validate name for collisions with other built-in functions (like abs or cos, for example), and for acceptable variable names. For example, '42' is probably not a valid unit. Nor is '%', since it is also an operator.
3698
+ }
3862
3699
 
3700
+ // TODO: Validate name for collisions with other built-in functions (like abs or cos, for example), and for acceptable variable names. For example, '42' is probably not a valid unit. Nor is '%', since it is also an operator.
3863
3701
 
3864
3702
  assertUnitNameIsValid(name);
3865
3703
  var defUnit = null; // The Unit from which the new unit will be created.
3866
-
3867
3704
  var aliases = [];
3868
3705
  var offset = 0;
3869
3706
  var definition;
3870
3707
  var prefixes;
3871
3708
  var baseName;
3872
-
3873
3709
  if (obj && obj.type === 'Unit') {
3874
3710
  defUnit = obj.clone();
3875
3711
  } else if (typeof obj === 'string') {
@@ -3881,14 +3717,12 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
3881
3717
  prefixes = obj.prefixes;
3882
3718
  offset = obj.offset;
3883
3719
  baseName = obj.baseName;
3884
-
3885
3720
  if (obj.aliases) {
3886
3721
  aliases = obj.aliases.valueOf(); // aliases could be a Matrix, so convert to Array
3887
3722
  }
3888
3723
  } else {
3889
3724
  throw new TypeError('Cannot create unit "' + name + '" from "' + obj.toString() + '": expecting "string" or "Unit" or "Object"');
3890
3725
  }
3891
-
3892
3726
  if (aliases) {
3893
3727
  for (var i = 0; i < aliases.length; i++) {
3894
3728
  if ((0, _object.hasOwnProperty)(UNITS, aliases[i])) {
@@ -3896,7 +3730,6 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
3896
3730
  }
3897
3731
  }
3898
3732
  }
3899
-
3900
3733
  if (definition && typeof definition === 'string' && !defUnit) {
3901
3734
  try {
3902
3735
  defUnit = Unit.parse(definition, {
@@ -3909,45 +3742,39 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
3909
3742
  } else if (definition && definition.type === 'Unit') {
3910
3743
  defUnit = definition.clone();
3911
3744
  }
3912
-
3913
3745
  aliases = aliases || [];
3914
3746
  offset = offset || 0;
3915
-
3916
3747
  if (prefixes && prefixes.toUpperCase) {
3917
3748
  prefixes = PREFIXES[prefixes.toUpperCase()] || PREFIXES.NONE;
3918
3749
  } else {
3919
3750
  prefixes = PREFIXES.NONE;
3920
- } // If defUnit is null, it is because the user did not
3921
- // specify a defintion. So create a new base dimension.
3922
-
3751
+ }
3923
3752
 
3753
+ // If defUnit is null, it is because the user did not
3754
+ // specify a defintion. So create a new base dimension.
3924
3755
  var newUnit = {};
3925
-
3926
3756
  if (!defUnit) {
3927
3757
  // Add a new base dimension
3928
3758
  baseName = baseName || name + '_STUFF'; // foo --> foo_STUFF, or the essence of foo
3929
-
3930
3759
  if (BASE_DIMENSIONS.indexOf(baseName) >= 0) {
3931
3760
  throw new Error('Cannot create new base unit "' + name + '": a base unit with that name already exists (and cannot be overridden)');
3932
3761
  }
3762
+ BASE_DIMENSIONS.push(baseName);
3933
3763
 
3934
- BASE_DIMENSIONS.push(baseName); // Push 0 onto existing base units
3935
-
3764
+ // Push 0 onto existing base units
3936
3765
  for (var b in BASE_UNITS) {
3937
3766
  if ((0, _object.hasOwnProperty)(BASE_UNITS, b)) {
3938
3767
  BASE_UNITS[b].dimensions[BASE_DIMENSIONS.length - 1] = 0;
3939
3768
  }
3940
- } // Add the new base unit
3941
-
3769
+ }
3942
3770
 
3771
+ // Add the new base unit
3943
3772
  var newBaseUnit = {
3944
3773
  dimensions: []
3945
3774
  };
3946
-
3947
3775
  for (var _i6 = 0; _i6 < BASE_DIMENSIONS.length; _i6++) {
3948
3776
  newBaseUnit.dimensions[_i6] = 0;
3949
3777
  }
3950
-
3951
3778
  newBaseUnit.dimensions[BASE_DIMENSIONS.length - 1] = 1;
3952
3779
  newBaseUnit.key = baseName;
3953
3780
  BASE_UNITS[baseName] = newBaseUnit;
@@ -3970,21 +3797,19 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
3970
3797
  dimensions: defUnit.dimensions.slice(0),
3971
3798
  prefixes: prefixes,
3972
3799
  offset: offset
3973
- }; // Create a new base if no matching base exists
3800
+ };
3974
3801
 
3802
+ // Create a new base if no matching base exists
3975
3803
  var anyMatch = false;
3976
-
3977
3804
  for (var _i7 in BASE_UNITS) {
3978
3805
  if ((0, _object.hasOwnProperty)(BASE_UNITS, _i7)) {
3979
3806
  var match = true;
3980
-
3981
3807
  for (var j = 0; j < BASE_DIMENSIONS.length; j++) {
3982
3808
  if (Math.abs((newUnit.dimensions[j] || 0) - (BASE_UNITS[_i7].dimensions[j] || 0)) > 1e-12) {
3983
3809
  match = false;
3984
3810
  break;
3985
3811
  }
3986
3812
  }
3987
-
3988
3813
  if (match) {
3989
3814
  anyMatch = true;
3990
3815
  newUnit.base = BASE_UNITS[_i7];
@@ -3992,11 +3817,9 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
3992
3817
  }
3993
3818
  }
3994
3819
  }
3995
-
3996
3820
  if (!anyMatch) {
3997
3821
  baseName = baseName || name + '_STUFF'; // foo --> foo_STUFF, or the essence of foo
3998
3822
  // Add the new base unit
3999
-
4000
3823
  var _newBaseUnit = {
4001
3824
  dimensions: defUnit.dimensions.slice(0)
4002
3825
  };
@@ -4009,34 +3832,28 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
4009
3832
  newUnit.base = BASE_UNITS[baseName];
4010
3833
  }
4011
3834
  }
4012
-
4013
3835
  Unit.UNITS[name] = newUnit;
4014
-
4015
3836
  for (var _i8 = 0; _i8 < aliases.length; _i8++) {
4016
3837
  var aliasName = aliases[_i8];
4017
3838
  var _alias = {};
4018
-
4019
3839
  for (var _key6 in newUnit) {
4020
3840
  if ((0, _object.hasOwnProperty)(newUnit, _key6)) {
4021
3841
  _alias[_key6] = newUnit[_key6];
4022
3842
  }
4023
3843
  }
4024
-
4025
3844
  _alias.name = aliasName;
4026
3845
  Unit.UNITS[aliasName] = _alias;
4027
- } // delete the memoization cache, since adding a new unit to the array
3846
+ }
3847
+ // delete the memoization cache, since adding a new unit to the array
4028
3848
  // invalidates all old results
4029
-
4030
-
4031
3849
  delete _findUnit.cache;
4032
3850
  return new Unit(null, name);
4033
3851
  };
4034
-
4035
3852
  Unit.deleteUnit = function (name) {
4036
3853
  delete Unit.UNITS[name];
4037
- }; // expose arrays with prefixes, dimensions, units, systems
4038
-
3854
+ };
4039
3855
 
3856
+ // expose arrays with prefixes, dimensions, units, systems
4040
3857
  Unit.PREFIXES = PREFIXES;
4041
3858
  Unit.BASE_DIMENSIONS = BASE_DIMENSIONS;
4042
3859
  Unit.BASE_UNITS = BASE_UNITS;