pimath 0.0.26 → 0.0.30

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 (65) hide show
  1. package/dev/index.html +15 -7
  2. package/dev/pi.js +251 -98
  3. package/dev/pi.js.map +1 -1
  4. package/dist/pi.js +1 -1
  5. package/dist/pi.js.map +1 -1
  6. package/docs/assets/search.js +1 -1
  7. package/docs/classes/algebra.Equation.html +9 -9
  8. package/docs/classes/algebra.LinearSystem.html +1 -1
  9. package/docs/classes/algebra.Logicalset.html +2 -2
  10. package/docs/classes/algebra.Monom.html +45 -44
  11. package/docs/classes/algebra.Polynom.html +9 -9
  12. package/docs/classes/algebra.Rational.html +2 -2
  13. package/docs/classes/coefficients.Fraction.html +6 -6
  14. package/docs/classes/coefficients.Nthroot.html +1 -1
  15. package/docs/classes/geometry.Circle.html +1 -1
  16. package/docs/classes/geometry.Line.html +2 -2
  17. package/docs/classes/geometry.Point.html +1 -1
  18. package/docs/classes/geometry.Triangle.html +5 -5
  19. package/docs/classes/geometry.Vector.html +1 -1
  20. package/docs/classes/numeric.Numeric.html +5 -5
  21. package/docs/classes/shutingyard.Shutingyard.html +5 -5
  22. package/docs/interfaces/geometry.remarquableLines.html +1 -1
  23. package/docs/modules/algebra.html +1 -1
  24. package/docs/modules/random.Random.html +1 -1
  25. package/docs/modules/random.html +1 -1
  26. package/esm/main.js +2 -0
  27. package/esm/main.js.map +1 -1
  28. package/esm/maths/algebra/logicalset.js +1 -1
  29. package/esm/maths/algebra/logicalset.js.map +1 -1
  30. package/esm/maths/algebra/monom.d.ts +2 -1
  31. package/esm/maths/algebra/monom.js +7 -1
  32. package/esm/maths/algebra/monom.js.map +1 -1
  33. package/esm/maths/algebra/rational.d.ts +1 -1
  34. package/esm/maths/algebra/rational.js +2 -2
  35. package/esm/maths/algebra/rational.js.map +1 -1
  36. package/esm/maths/geometry/line.d.ts +1 -0
  37. package/esm/maths/geometry/line.js +3 -0
  38. package/esm/maths/geometry/line.js.map +1 -1
  39. package/esm/maths/geometry/vector.js +7 -2
  40. package/esm/maths/geometry/vector.js.map +1 -1
  41. package/esm/maths/numexp.d.ts +16 -0
  42. package/esm/maths/numexp.js +119 -0
  43. package/esm/maths/numexp.js.map +1 -0
  44. package/esm/maths/shutingyard.d.ts +21 -4
  45. package/esm/maths/shutingyard.js +76 -76
  46. package/esm/maths/shutingyard.js.map +1 -1
  47. package/package.json +1 -1
  48. package/src/main.ts +2 -0
  49. package/src/maths/algebra/logicalset.ts +2 -2
  50. package/src/maths/algebra/monom.ts +35 -22
  51. package/src/maths/algebra/rational.ts +1 -1
  52. package/src/maths/geometry/line.ts +3 -0
  53. package/src/maths/geometry/vector.ts +10 -2
  54. package/src/maths/numexp.ts +138 -0
  55. package/src/maths/shutingyard.ts +94 -97
  56. package/tests/algebra/monom.test.ts +1 -1
  57. package/tests/numexp.test.ts +27 -0
  58. package/tests/shutingyard.test.ts +3 -3
  59. package/tsconfig.json +0 -1
  60. package/esm/docs.d.ts +0 -6
  61. package/esm/docs.js +0 -7
  62. package/esm/docs.js.map +0 -1
  63. package/esm/maths/random/random.d.ts +0 -13
  64. package/esm/maths/random/random.js +0 -27
  65. package/esm/maths/random/random.js.map +0 -1
@@ -1 +1 @@
1
- <!DOCTYPE html><html class="default"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>random | pimath</title><meta name="description" content="Documentation for pimath"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script async src="../assets/search.js" id="search-script"></script><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/katex@0.15.1/dist/katex.min.css" integrity="sha384-R4558gYOUz8mP9YWpZJjofhk+zx0AS11p36HnD2ZKj/6JR5z27gSSULCNHIRReVs" crossorigin="anonymous"><script defer src="https://cdn.jsdelivr.net/npm/katex@0.15.1/dist/katex.min.js" integrity="sha384-z1fJDqw8ZApjGO3/unPWUPsIymfsJmyrDVWC8Tv/a1HeOtGmkwNd/7xUS0Xcnvsx" crossorigin="anonymous"></script><script defer src="https://cdn.jsdelivr.net/npm/katex@0.15.1/dist/contrib/auto-render.min.js" integrity="sha384-+XBljXPPiv+OzfbB3cVmLHf4hdUFHlWNZN5spNQ7rmHTXpd7WvJum6fIACpNNfIR" crossorigin="anonymous" onload="renderMathInElement(document.body);"></script></link>}); }</head><body><script>document.body.classList.add(localStorage.getItem("tsd-theme") || "os")</script><header><div class="tsd-page-toolbar"><div class="container"><div class="table-wrap"><div class="table-cell" id="tsd-search" data-base=".."><div class="field"><label for="tsd-search-field" class="tsd-widget search no-caption">Search</label><input type="text" id="tsd-search-field"/></div><ul class="results"><li class="state loading">Preparing search index...</li><li class="state failure">The search index is not available</li></ul><a href="../index.html" class="title">pimath</a></div><div class="table-cell" id="tsd-widgets"><div id="tsd-filter"><a href="#" class="tsd-widget options no-caption" data-toggle="options">Options</a><div class="tsd-filter-group"><div class="tsd-select" id="tsd-filter-visibility"><span class="tsd-select-label">All</span><ul class="tsd-select-list"><li data-value="public">Public</li><li data-value="protected">Public/Protected</li><li data-value="private" class="selected">All</li></ul></div> <input type="checkbox" id="tsd-filter-inherited" checked/><label class="tsd-widget" for="tsd-filter-inherited">Inherited</label><input type="checkbox" id="tsd-filter-externals" checked/><label class="tsd-widget" for="tsd-filter-externals">Externals</label></div></div><a href="#" class="tsd-widget menu no-caption" data-toggle="menu">Menu</a></div></div></div></div><div class="tsd-page-title"><div class="container"><ul class="tsd-breadcrumb"><li><a href="../modules.html">pimath</a></li><li><a href="random.html">random</a></li></ul><h1>Module random</h1></div></div></header><div class="container container-main"><div class="row"><div class="col-8 col-content"><section class="tsd-panel-group tsd-index-group"><h2>Index</h2><section class="tsd-panel tsd-index-panel"><div class="tsd-index-content"><section class="tsd-index-section "><h3>Namespaces</h3><ul class="tsd-index-list"><li class="tsd-kind-namespace tsd-parent-kind-module"><a href="random.Random.html" class="tsd-kind-icon">Random</a></li></ul></section><section class="tsd-index-section "><h3>Type aliases</h3><ul class="tsd-index-list"><li class="tsd-kind-type-alias tsd-parent-kind-module"><a href="random.html#randomCoefficientConfig" class="tsd-kind-icon">random<wbr/>Coefficient<wbr/>Config</a></li><li class="tsd-kind-type-alias tsd-parent-kind-module"><a href="random.html#randomMonomConfig" class="tsd-kind-icon">random<wbr/>Monom<wbr/>Config</a></li><li class="tsd-kind-type-alias tsd-parent-kind-module"><a href="random.html#randomPolynomConfig" class="tsd-kind-icon">random<wbr/>Polynom<wbr/>Config</a></li></ul></section></div></section></section><section class="tsd-panel-group tsd-member-group "><h2>Type aliases</h2><section class="tsd-panel tsd-member tsd-kind-type-alias tsd-parent-kind-module"><a id="randomCoefficientConfig" class="tsd-anchor"></a><h3>random<wbr/>Coefficient<wbr/>Config</h3><div class="tsd-signature tsd-kind-icon">random<wbr/>Coefficient<wbr/>Config<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">{ </span>max<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>natural<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>negative<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>reduced<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>zero<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol"> }</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/basilgass/PI/blob/95552d7/src/maths/random/rndTypes.ts#L1">random/rndTypes.ts:1</a></li></ul></aside><div class="tsd-type-declaration"><h4>Type declaration</h4><ul class="tsd-parameters"><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> max<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> natural<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span></h5></li><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> negative<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span></h5></li><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> reduced<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span></h5></li><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> zero<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span></h5></li></ul></div></section><section class="tsd-panel tsd-member tsd-kind-type-alias tsd-parent-kind-module"><a id="randomMonomConfig" class="tsd-anchor"></a><h3>random<wbr/>Monom<wbr/>Config</h3><div class="tsd-signature tsd-kind-icon">random<wbr/>Monom<wbr/>Config<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">{ </span>degree<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>fraction<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol"> | </span><a href="random.html#randomCoefficientConfig" class="tsd-signature-type" data-tsd-kind="Type alias">randomCoefficientConfig</a><span class="tsd-signature-symbol">; </span>letters<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">; </span>zero<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol"> }</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/basilgass/PI/blob/95552d7/src/maths/random/rndTypes.ts#L9">random/rndTypes.ts:9</a></li></ul></aside><div class="tsd-type-declaration"><h4>Type declaration</h4><ul class="tsd-parameters"><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> degree<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> fraction<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol"> | </span><a href="random.html#randomCoefficientConfig" class="tsd-signature-type" data-tsd-kind="Type alias">randomCoefficientConfig</a></h5></li><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> letters<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span></h5></li><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> zero<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span></h5></li></ul></div></section><section class="tsd-panel tsd-member tsd-kind-type-alias tsd-parent-kind-module"><a id="randomPolynomConfig" class="tsd-anchor"></a><h3>random<wbr/>Polynom<wbr/>Config</h3><div class="tsd-signature tsd-kind-icon">random<wbr/>Polynom<wbr/>Config<span class="tsd-signature-symbol">:</span> <a href="random.html#randomMonomConfig" class="tsd-signature-type" data-tsd-kind="Type alias">randomMonomConfig</a><span class="tsd-signature-symbol"> &amp; </span><span class="tsd-signature-symbol">{ </span>allowNullMonom<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>factorable<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>numberOfMonoms<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>positive<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>unit<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol"> }</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/basilgass/PI/blob/95552d7/src/maths/random/rndTypes.ts#L16">random/rndTypes.ts:16</a></li></ul></aside></section></section></div><div class="col-4 col-menu menu-sticky-wrap menu-highlight"><nav class="tsd-navigation primary"><ul><li class=""><a href="../modules.html">Modules</a></li><li class=" tsd-kind-module"><a href="algebra.html">algebra</a></li><li class=" tsd-kind-module"><a href="coefficients.html">coefficients</a></li><li class=" tsd-kind-module"><a href="geometry.html">geometry</a></li><li class=" tsd-kind-module"><a href="numeric.html">numeric</a></li><li class="current tsd-kind-module"><a href="random.html">random</a><ul><li class=" tsd-kind-namespace tsd-parent-kind-module"><a href="random.Random.html">Random</a></li></ul></li><li class=" tsd-kind-module"><a href="shutingyard.html">shutingyard</a></li></ul></nav><nav class="tsd-navigation secondary menu-sticky"><ul><li class="tsd-kind-type-alias tsd-parent-kind-module"><a href="random.html#randomCoefficientConfig" class="tsd-kind-icon">random<wbr/>Coefficient<wbr/>Config</a></li><li class="tsd-kind-type-alias tsd-parent-kind-module"><a href="random.html#randomMonomConfig" class="tsd-kind-icon">random<wbr/>Monom<wbr/>Config</a></li><li class="tsd-kind-type-alias tsd-parent-kind-module"><a href="random.html#randomPolynomConfig" class="tsd-kind-icon">random<wbr/>Polynom<wbr/>Config</a></li></ul></nav></div></div></div><footer class="with-border-bottom"><div class="container"><h2>Legend</h2><div class="tsd-legend-group"><ul class="tsd-legend"><li class="tsd-kind-namespace"><span class="tsd-kind-icon">Namespace</span></li><li class="tsd-kind-type-alias"><span class="tsd-kind-icon">Type alias</span></li></ul><ul class="tsd-legend"><li class="tsd-kind-interface"><span class="tsd-kind-icon">Interface</span></li></ul><ul class="tsd-legend"><li class="tsd-kind-class"><span class="tsd-kind-icon">Class</span></li></ul></div><h2>Settings</h2><p>Theme <select id="theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></p></div></footer><div class="container tsd-generator"><p>Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></div><div class="overlay"></div><script src="../assets/main.js"></script></body></html>
1
+ <!DOCTYPE html><html class="default"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>random | pimath</title><meta name="description" content="Documentation for pimath"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script async src="../assets/search.js" id="search-script"></script><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/katex@0.15.1/dist/katex.min.css" integrity="sha384-R4558gYOUz8mP9YWpZJjofhk+zx0AS11p36HnD2ZKj/6JR5z27gSSULCNHIRReVs" crossorigin="anonymous"><script defer src="https://cdn.jsdelivr.net/npm/katex@0.15.1/dist/katex.min.js" integrity="sha384-z1fJDqw8ZApjGO3/unPWUPsIymfsJmyrDVWC8Tv/a1HeOtGmkwNd/7xUS0Xcnvsx" crossorigin="anonymous"></script><script defer src="https://cdn.jsdelivr.net/npm/katex@0.15.1/dist/contrib/auto-render.min.js" integrity="sha384-+XBljXPPiv+OzfbB3cVmLHf4hdUFHlWNZN5spNQ7rmHTXpd7WvJum6fIACpNNfIR" crossorigin="anonymous" onload="renderMathInElement(document.body);"></script></link>}); }</head><body><script>document.body.classList.add(localStorage.getItem("tsd-theme") || "os")</script><header><div class="tsd-page-toolbar"><div class="container"><div class="table-wrap"><div class="table-cell" id="tsd-search" data-base=".."><div class="field"><label for="tsd-search-field" class="tsd-widget search no-caption">Search</label><input type="text" id="tsd-search-field"/></div><ul class="results"><li class="state loading">Preparing search index...</li><li class="state failure">The search index is not available</li></ul><a href="../index.html" class="title">pimath</a></div><div class="table-cell" id="tsd-widgets"><div id="tsd-filter"><a href="#" class="tsd-widget options no-caption" data-toggle="options">Options</a><div class="tsd-filter-group"><div class="tsd-select" id="tsd-filter-visibility"><span class="tsd-select-label">All</span><ul class="tsd-select-list"><li data-value="public">Public</li><li data-value="protected">Public/Protected</li><li data-value="private" class="selected">All</li></ul></div> <input type="checkbox" id="tsd-filter-inherited" checked/><label class="tsd-widget" for="tsd-filter-inherited">Inherited</label><input type="checkbox" id="tsd-filter-externals" checked/><label class="tsd-widget" for="tsd-filter-externals">Externals</label></div></div><a href="#" class="tsd-widget menu no-caption" data-toggle="menu">Menu</a></div></div></div></div><div class="tsd-page-title"><div class="container"><ul class="tsd-breadcrumb"><li><a href="../modules.html">pimath</a></li><li><a href="random.html">random</a></li></ul><h1>Module random</h1></div></div></header><div class="container container-main"><div class="row"><div class="col-8 col-content"><section class="tsd-panel-group tsd-index-group"><h2>Index</h2><section class="tsd-panel tsd-index-panel"><div class="tsd-index-content"><section class="tsd-index-section "><h3>Namespaces</h3><ul class="tsd-index-list"><li class="tsd-kind-namespace tsd-parent-kind-module"><a href="random.Random.html" class="tsd-kind-icon">Random</a></li></ul></section><section class="tsd-index-section "><h3>Type aliases</h3><ul class="tsd-index-list"><li class="tsd-kind-type-alias tsd-parent-kind-module"><a href="random.html#randomCoefficientConfig" class="tsd-kind-icon">random<wbr/>Coefficient<wbr/>Config</a></li><li class="tsd-kind-type-alias tsd-parent-kind-module"><a href="random.html#randomMonomConfig" class="tsd-kind-icon">random<wbr/>Monom<wbr/>Config</a></li><li class="tsd-kind-type-alias tsd-parent-kind-module"><a href="random.html#randomPolynomConfig" class="tsd-kind-icon">random<wbr/>Polynom<wbr/>Config</a></li></ul></section></div></section></section><section class="tsd-panel-group tsd-member-group "><h2>Type aliases</h2><section class="tsd-panel tsd-member tsd-kind-type-alias tsd-parent-kind-module"><a id="randomCoefficientConfig" class="tsd-anchor"></a><h3>random<wbr/>Coefficient<wbr/>Config</h3><div class="tsd-signature tsd-kind-icon">random<wbr/>Coefficient<wbr/>Config<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">{ </span>max<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>natural<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>negative<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>reduced<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>zero<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol"> }</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/basilgass/PI/blob/061ab57/src/maths/random/rndTypes.ts#L1">random/rndTypes.ts:1</a></li></ul></aside><div class="tsd-type-declaration"><h4>Type declaration</h4><ul class="tsd-parameters"><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> max<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> natural<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span></h5></li><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> negative<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span></h5></li><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> reduced<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span></h5></li><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> zero<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span></h5></li></ul></div></section><section class="tsd-panel tsd-member tsd-kind-type-alias tsd-parent-kind-module"><a id="randomMonomConfig" class="tsd-anchor"></a><h3>random<wbr/>Monom<wbr/>Config</h3><div class="tsd-signature tsd-kind-icon">random<wbr/>Monom<wbr/>Config<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">{ </span>degree<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>fraction<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol"> | </span><a href="random.html#randomCoefficientConfig" class="tsd-signature-type" data-tsd-kind="Type alias">randomCoefficientConfig</a><span class="tsd-signature-symbol">; </span>letters<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">; </span>zero<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol"> }</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/basilgass/PI/blob/061ab57/src/maths/random/rndTypes.ts#L9">random/rndTypes.ts:9</a></li></ul></aside><div class="tsd-type-declaration"><h4>Type declaration</h4><ul class="tsd-parameters"><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> degree<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> fraction<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol"> | </span><a href="random.html#randomCoefficientConfig" class="tsd-signature-type" data-tsd-kind="Type alias">randomCoefficientConfig</a></h5></li><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> letters<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span></h5></li><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> zero<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span></h5></li></ul></div></section><section class="tsd-panel tsd-member tsd-kind-type-alias tsd-parent-kind-module"><a id="randomPolynomConfig" class="tsd-anchor"></a><h3>random<wbr/>Polynom<wbr/>Config</h3><div class="tsd-signature tsd-kind-icon">random<wbr/>Polynom<wbr/>Config<span class="tsd-signature-symbol">:</span> <a href="random.html#randomMonomConfig" class="tsd-signature-type" data-tsd-kind="Type alias">randomMonomConfig</a><span class="tsd-signature-symbol"> &amp; </span><span class="tsd-signature-symbol">{ </span>allowNullMonom<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>factorable<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>numberOfMonoms<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>positive<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>unit<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol"> }</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/basilgass/PI/blob/061ab57/src/maths/random/rndTypes.ts#L16">random/rndTypes.ts:16</a></li></ul></aside></section></section></div><div class="col-4 col-menu menu-sticky-wrap menu-highlight"><nav class="tsd-navigation primary"><ul><li class=""><a href="../modules.html">Modules</a></li><li class=" tsd-kind-module"><a href="algebra.html">algebra</a></li><li class=" tsd-kind-module"><a href="coefficients.html">coefficients</a></li><li class=" tsd-kind-module"><a href="geometry.html">geometry</a></li><li class=" tsd-kind-module"><a href="numeric.html">numeric</a></li><li class="current tsd-kind-module"><a href="random.html">random</a><ul><li class=" tsd-kind-namespace tsd-parent-kind-module"><a href="random.Random.html">Random</a></li></ul></li><li class=" tsd-kind-module"><a href="shutingyard.html">shutingyard</a></li></ul></nav><nav class="tsd-navigation secondary menu-sticky"><ul><li class="tsd-kind-type-alias tsd-parent-kind-module"><a href="random.html#randomCoefficientConfig" class="tsd-kind-icon">random<wbr/>Coefficient<wbr/>Config</a></li><li class="tsd-kind-type-alias tsd-parent-kind-module"><a href="random.html#randomMonomConfig" class="tsd-kind-icon">random<wbr/>Monom<wbr/>Config</a></li><li class="tsd-kind-type-alias tsd-parent-kind-module"><a href="random.html#randomPolynomConfig" class="tsd-kind-icon">random<wbr/>Polynom<wbr/>Config</a></li></ul></nav></div></div></div><footer class="with-border-bottom"><div class="container"><h2>Legend</h2><div class="tsd-legend-group"><ul class="tsd-legend"><li class="tsd-kind-namespace"><span class="tsd-kind-icon">Namespace</span></li><li class="tsd-kind-type-alias"><span class="tsd-kind-icon">Type alias</span></li></ul><ul class="tsd-legend"><li class="tsd-kind-interface"><span class="tsd-kind-icon">Interface</span></li></ul><ul class="tsd-legend"><li class="tsd-kind-class"><span class="tsd-kind-icon">Class</span></li></ul></div><h2>Settings</h2><p>Theme <select id="theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></p></div></footer><div class="container tsd-generator"><p>Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></div><div class="overlay"></div><script src="../assets/main.js"></script></body></html>
package/esm/main.js CHANGED
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const numeric_1 = require("./maths/numeric");
4
+ const numexp_1 = require("./maths/numexp");
4
5
  const shutingyard_1 = require("./maths/shutingyard");
5
6
  const random_1 = require("./maths/random");
6
7
  const coefficients_1 = require("./maths/coefficients");
@@ -9,6 +10,7 @@ const geometry_1 = require("./maths/geometry");
9
10
  window.Pi = {
10
11
  ShutingYard: shutingyard_1.Shutingyard,
11
12
  Numeric: numeric_1.Numeric,
13
+ NumExp: numexp_1.NumExp,
12
14
  Fraction: coefficients_1.Fraction,
13
15
  Root: coefficients_1.Nthroot,
14
16
  Monom: algebra_1.Monom,
package/esm/main.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":";;AAAA,6CAAwC;AACxC,qDAAgD;AAChD,2CAAsC;AACtC,uDAAuD;AACvD,6CAA6F;AAC7F,+CAAuE;AAIjE,MAAO,CAAC,EAAE,GAAG;IACf,WAAW,EAAE,yBAAW;IACxB,OAAO,EAAE,iBAAO;IAChB,QAAQ,EAAE,uBAAQ;IAClB,IAAI,EAAE,sBAAO;IACb,KAAK,EAAE,eAAK;IACZ,OAAO,EAAE,iBAAO;IAChB,QAAQ,EAAE,kBAAQ;IAClB,YAAY,EAAE,sBAAY;IAC1B,QAAQ,EAAE,kBAAQ;IAClB,UAAU,EAAE,oBAAU;IACtB,MAAM,EAAE,eAAM;IACd,QAAQ,EAAE;QACN,MAAM,EAAE,iBAAM;QACd,KAAK,EAAE,gBAAK;QACZ,IAAI,EAAE,eAAI;QACV,QAAQ,EAAE,mBAAQ;QAClB,MAAM,EAAE,iBAAM;KACjB;CACJ,CAAC"}
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":";;AAAA,6CAAwC;AACxC,2CAAsC;AACtC,qDAAgD;AAChD,2CAAsC;AACtC,uDAAuD;AACvD,6CAA6F;AAC7F,+CAAuE;AAIjE,MAAO,CAAC,EAAE,GAAG;IACf,WAAW,EAAE,yBAAW;IACxB,OAAO,EAAE,iBAAO;IAChB,MAAM,EAAE,eAAM;IACd,QAAQ,EAAE,uBAAQ;IAClB,IAAI,EAAE,sBAAO;IACb,KAAK,EAAE,eAAK;IACZ,OAAO,EAAE,iBAAO;IAChB,QAAQ,EAAE,kBAAQ;IAClB,YAAY,EAAE,sBAAY;IAC1B,QAAQ,EAAE,kBAAQ;IAClB,UAAU,EAAE,oBAAU;IACtB,MAAM,EAAE,eAAM;IACd,QAAQ,EAAE;QACN,MAAM,EAAE,iBAAM;QACd,KAAK,EAAE,gBAAK;QACZ,IAAI,EAAE,eAAI;QACV,QAAQ,EAAE,mBAAQ;QAClB,MAAM,EAAE,iBAAM;KACjB;CACJ,CAAC"}
@@ -15,7 +15,7 @@ class Logicalset {
15
15
  }
16
16
  ;
17
17
  parse = (value) => {
18
- this._rpn = new shutingyard_1.Shutingyard('set').parse(value).rpn;
18
+ this._rpn = new shutingyard_1.Shutingyard(shutingyard_1.ShutingyardMode.SET).parse(value).rpn;
19
19
  return this;
20
20
  };
21
21
  evaluate(tokenSets, reference) {
@@ -1 +1 @@
1
- {"version":3,"file":"logicalset.js","sourceRoot":"","sources":["../../../src/maths/algebra/logicalset.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"logicalset.js","sourceRoot":"","sources":["../../../src/maths/algebra/logicalset.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@ export declare class Monom {
7
7
  private _literal;
8
8
  constructor(value?: unknown);
9
9
  get coefficient(): Fraction;
10
- set coefficient(F: Fraction);
10
+ set coefficient(F: Fraction | number | string);
11
11
  get literal(): literalType;
12
12
  get literalSqrt(): literalType;
13
13
  set literal(L: literalType);
@@ -17,6 +17,7 @@ export declare class Monom {
17
17
  get dividers(): Monom[];
18
18
  private _getLiteralDividers;
19
19
  get displayWithSign(): string;
20
+ get texWithSign(): string;
20
21
  get tex(): string;
21
22
  parse: (inputStr: unknown) => Monom;
22
23
  private _shutingYardToReducedMonom;
@@ -18,7 +18,7 @@ class Monom {
18
18
  return this._coefficient;
19
19
  }
20
20
  set coefficient(F) {
21
- this._coefficient = F;
21
+ this._coefficient = new coefficients_1.Fraction(F);
22
22
  }
23
23
  get literal() {
24
24
  return this._literal;
@@ -157,6 +157,12 @@ class Monom {
157
157
  let d = this.display;
158
158
  return (d[0] !== '-' ? '+' : '') + d;
159
159
  }
160
+ get texWithSign() {
161
+ if (this.coefficient.isStrictlyPositive()) {
162
+ return '+' + this.tex;
163
+ }
164
+ return this.tex;
165
+ }
160
166
  get tex() {
161
167
  let L = '', letters = Object.keys(this._literal).sort();
162
168
  for (let letter of letters) {
@@ -1 +1 @@
1
- {"version":3,"file":"monom.js","sourceRoot":"","sources":["../../../src/maths/algebra/monom.ts"],"names":[],"mappings":";;;AAKA,kDAAyC;AACzC,wCAAmC;AACnC,gDAA2C;AAM3C,MAAa,KAAK;IACN,YAAY,CAAW;IACvB,QAAQ,CAAc;IAM9B,YAAY,KAAe;QACvB,IAAI,CAAC,IAAI,EAAE,CAAC;QAEZ,IAAI,KAAK,KAAK,SAAS,EAAE;YAErB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;SACrB;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAQD,IAAI,WAAW;QACX,OAAO,IAAI,CAAC,YAAY,CAAC;IAC7B,CAAC;IAMD,IAAI,WAAW,CAAC,CAAW;QACvB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;IAC1B,CAAC;IAKD,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;IAED,IAAI,WAAW;QAEX,IAAI,IAAI,CAAC,eAAe,EAAE,EAAE;YACxB,IAAI,CAAC,GAAgB,EAAE,CAAA;YACvB,KAAK,IAAI,GAAG,IAAI,IAAI,CAAC,QAAQ,EAAE;gBAC3B,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAA;aAC7C;YACD,OAAO,CAAC,CAAC;SACZ;aAAM;YACH,OAAO,IAAI,CAAC,QAAQ,CAAC;SACxB;IACL,CAAC;IAMD,IAAI,OAAO,CAAC,CAAc;QACtB,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;IACtB,CAAC;IAMD,IAAI,UAAU,CAAC,QAAgB;QAI3B,KAAK,MAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,yBAAyB,CAAC,CAAC,EAAE;YAE/D,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,EAAE;gBAC1B,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,uBAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;aAC/C;YAID,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAClC;QAGD,KAAK,MAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,EAAE;YAEtD,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,EAAE;gBAC1B,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,uBAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;aAC/C;YAGD,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;SAC7B;IACL,CAAC;IAMD,IAAI,SAAS;QACT,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,CAAC;QACrB,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IACrC,CAAC;IAMD,IAAI,OAAO;QACP,IAAI,CAAC,GAAW,EAAE,EACd,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAA;QAC/C,KAAK,IAAI,MAAM,IAAI,OAAO,EAAE;YACxB,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE;gBACnC,CAAC,IAAI,GAAG,MAAM,EAAE,CAAC;gBACjB,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE;oBACrC,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC;iBAC5C;aACJ;SACJ;QAED,IAAI,CAAC,KAAK,EAAE,EAAE;YAEV,IAAI,IAAI,CAAC,YAAY,CAAC,KAAK,IAAI,CAAC,EAAE;gBAC9B,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;aACzC;iBAAM;gBACH,OAAO,EAAE,CAAC;aACb;SACJ;aAAM;YACH,IAAI,IAAI,CAAC,YAAY,CAAC,KAAK,KAAK,CAAC,EAAE;gBAC/B,OAAO,CAAC,CAAC;aACZ;iBAAM,IAAI,IAAI,CAAC,YAAY,CAAC,KAAK,KAAK,CAAC,CAAC,EAAE;gBACvC,OAAO,IAAI,CAAC,EAAE,CAAC;aAClB;iBAAM,IAAI,IAAI,CAAC,YAAY,CAAC,KAAK,KAAK,CAAC,EAAE;gBACtC,OAAO,GAAG,CAAC;aACd;iBAAM;gBACH,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,GAAG,CAAC,EAAE,CAAC;aAC7C;SACJ;IACL,CAAC;IAED,IAAI,QAAQ;QAER,IAAI,IAAI,CAAC,WAAW,CAAC,WAAW,KAAK,CAAC,EAAE;YACpC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAA;SACxB;QAED,IAAI,IAAI,CAAC,sBAAsB,EAAE;YAC7B,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAA;SACxB;QAGD,IAAI,IAAI,CAAC,WAAW,CAAC,SAAS,GAAG,KAAK,EAAE;YACpC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAA;SACxB;QACD,MAAM,QAAQ,GAAG,iBAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAA;QAGvE,IAAI,QAAQ,GAAkB,EAAE,CAAC;QACjC,KAAK,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE;YAExB,QAAQ,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAA;SACnD;QAED,MAAM,aAAa,GAAY,EAAE,CAAC;QAClC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;YAC5C,KAAK,IAAI,CAAC,IAAI,QAAQ,EAAE;gBACpB,KAAK,IAAI,CAAC,IAAI,QAAQ,EAAE;oBACpB,IAAI,CAAC,GAAG,IAAI,KAAK,EAAE,CAAC;oBACpB,CAAC,CAAC,WAAW,GAAG,IAAI,uBAAQ,CAAC,CAAC,CAAC,CAAA;oBAC/B,CAAC,CAAC,OAAO,GAAG,CAAC,CAAA;oBACb,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;iBACxB;aACJ;SACJ;aAAM,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YAC9B,KAAK,IAAI,CAAC,IAAI,QAAQ,EAAE;gBACpB,IAAI,CAAC,GAAG,IAAI,KAAK,EAAE,CAAC;gBACpB,CAAC,CAAC,WAAW,GAAG,IAAI,uBAAQ,EAAE,CAAC,GAAG,EAAE,CAAA;gBACpC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAA;gBACb,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;aACxB;SACJ;aAAM;YACH,KAAK,IAAI,CAAC,IAAI,QAAQ,EAAE;gBACpB,IAAI,CAAC,GAAG,IAAI,KAAK,EAAE,CAAC;gBACpB,CAAC,CAAC,WAAW,GAAG,IAAI,uBAAQ,CAAC,CAAC,CAAC,CAAA;gBAC/B,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;aACxB;SACJ;QAED,OAAO,aAAa,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC;IAC5E,CAAC;IAEO,mBAAmB,CAAC,GAAkB,EAAE,MAAc;QAC1D,IAAI,OAAO,GAAkC,EAAE,CAAC;QAGhD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;YAClD,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE;gBAClB,IAAI,IAAI,GAAgB,EAAE,CAAA;gBAC1B,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,uBAAQ,CAAC,CAAC,CAAC,CAAA;gBAC9B,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;aACrB;iBAAM;gBACH,KAAK,IAAI,IAAI,IAAI,GAAG,EAAE;oBAClB,IAAI,IAAI,GAAgB,EAAE,CAAA;oBAC1B,KAAK,IAAI,aAAa,IAAI,IAAI,EAAE;wBAC5B,IAAI,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,CAAA;qBAC5C;oBACD,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,uBAAQ,CAAC,CAAC,CAAC,CAAA;oBAC9B,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;iBACrB;aACJ;SACJ;QACD,OAAO,OAAO,CAAC;IACnB,CAAC;IAKD,IAAI,eAAe;QAEf,IAAI,CAAC,GAAW,IAAI,CAAC,OAAO,CAAC;QAC7B,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IACzC,CAAC;IAKD,IAAI,GAAG;QAEH,IAAI,CAAC,GAAW,EAAE,EACd,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAA;QAE/C,KAAK,IAAI,MAAM,IAAI,OAAO,EAAE;YACxB,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE;gBACnC,CAAC,IAAI,GAAG,MAAM,EAAE,CAAC;gBACjB,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE;oBACrC,CAAC,IAAI,KAAK,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,GAAG,CAAC;iBAC9C;aACJ;SACJ;QAED,IAAI,CAAC,KAAK,EAAE,EAAE;YAEV,IAAI,IAAI,CAAC,YAAY,CAAC,KAAK,IAAI,CAAC,EAAE;gBAC9B,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;aACvC;iBAAM;gBACH,OAAO,GAAG,CAAC;aACd;SACJ;aAAM;YACH,IAAI,IAAI,CAAC,YAAY,CAAC,KAAK,KAAK,CAAC,EAAE;gBAC/B,OAAO,CAAC,CAAC;aACZ;iBAAM,IAAI,IAAI,CAAC,YAAY,CAAC,KAAK,KAAK,CAAC,CAAC,EAAE;gBACvC,OAAO,IAAI,CAAC,EAAE,CAAC;aAClB;iBAAM,IAAI,IAAI,CAAC,YAAY,CAAC,KAAK,KAAK,CAAC,EAAE;gBACtC,OAAO,GAAG,CAAC;aACd;iBAAM;gBACH,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC;aAC3C;SACJ;IACL,CAAC;IASD,KAAK,GAAG,CAAC,QAAiB,EAAS,EAAE;QAEjC,IAAG,OAAO,QAAQ,KAAK,QAAQ,EAAE;YAC7B,IAAI,CAAC,0BAA0B,CAAC,QAAQ,CAAC,CAAA;SAC5C;aAAK,IAAG,OAAO,QAAQ,KAAI,QAAQ,EAAE;YAClC,IAAI,CAAC,YAAY,GAAG,IAAI,uBAAQ,CAAC,QAAQ,CAAC,CAAA;YAC1C,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAA;SACrB;aAAK,IAAG,QAAQ,YAAY,uBAAQ,EAAE;YACnC,IAAI,CAAC,YAAY,GAAG,QAAQ,CAAC,KAAK,EAAE,CAAA;YACpC,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAA;SACrB;aAAK,IAAG,QAAQ,YAAY,KAAK,EAAC;YAC/B,IAAI,CAAC,YAAY,GAAG,QAAQ,CAAC,YAAY,CAAC,KAAK,EAAE,CAAA;YACjD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;SACtD;QAED,OAAO,IAAI,CAAC;IAChB,CAAC,CAAC;IAEM,0BAA0B,GAAG,CAAC,QAAgB,EAAS,EAAE;QAE7D,MAAM,EAAE,GAAgB,IAAI,yBAAW,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC1D,MAAM,GAAG,GAA2C,EAAE,CAAC,GAAG,CAAC;QAE3D,IAAI,KAAK,GAAY,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,CAAA;QAE/C,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE;YAClB,IAAI,CAAC,IAAI,EAAE,CAAA;YACX,OAAO,IAAI,CAAA;SACd;aAAM,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE;YACzB,MAAM,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,CAAA;YAEtB,IAAI,CAAC,GAAG,EAAE,CAAA;YACV,IAAI,OAAO,CAAC,SAAS,KAAK,aAAa,EAAE;gBACrC,IAAI,CAAC,WAAW,GAAG,IAAI,uBAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;aACjD;iBAAM,IAAI,OAAO,CAAC,SAAS,KAAK,UAAU,EAAE;gBACzC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;aACnC;YACD,OAAO,IAAI,CAAA;SACd;aAAM;YAEH,KAAK,MAAM,OAAO,IAAI,GAAG,EAAE;gBACvB,IAAI,OAAO,CAAC,SAAS,KAAK,aAAa,EAAE;oBACrC,IAAI,CAAC,GAAG,IAAI,KAAK,EAAE,CAAC,GAAG,EAAE,CAAA;oBACzB,CAAC,CAAC,WAAW,GAAG,IAAI,uBAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;oBAC3C,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAA;iBACxB;qBAAM,IAAI,OAAO,CAAC,SAAS,KAAK,UAAU,EAAE;oBACzC,IAAI,CAAC,GAAG,IAAI,KAAK,EAAE,CAAC,GAAG,EAAE,CAAA;oBACzB,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;oBAC7B,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAA;iBACxB;qBAAM,IAAI,OAAO,CAAC,SAAS,KAAK,WAAW,EAAE;oBAC1C,QAAQ,OAAO,CAAC,KAAK,EAAE;wBACnB,KAAK,GAAG;4BAEJ,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC,IAAI,EAAE,CAAA;4BACxC,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC,IAAI,EAAE,CAAA;4BAExC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAA;4BAE3B,MAAM;wBACV,KAAK,GAAG;4BAEJ,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC,GAAG,EAAE,CAAA;4BACvC,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC,GAAG,EAAE,CAAA;4BAEvC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAA;4BAC3B,MAAK;wBACT,KAAK,GAAG;4BAEJ,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,IAAI,IAAI,uBAAQ,EAAE,CAAC,GAAG,EAAE,CAAA;4BACvD,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC,GAAG,EAAE,CAAA;4BAEtC,MAAM,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;4BAEvB,IAAI,MAAM,KAAK,SAAS,EAAE;gCACtB,CAAC,CAAC,SAAS,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;6BAC3B;4BAED,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;4BAEb,MAAK;qBACZ;iBACJ;aACJ;SACJ;QAED,IAAI,CAAC,GAAG,EAAE,CAAA;QACV,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;QACvB,OAAO,IAAI,CAAA;IACf,CAAC,CAAA;IAID,KAAK,GAAG,GAAU,EAAE;QAChB,IAAI,CAAC,GAAU,IAAI,KAAK,EAAE,CAAC;QAE3B,CAAC,CAAC,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;QAG1C,KAAK,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE;YACzB,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;SAC5C;QACD,OAAO,CAAC,CAAC;IACb,CAAC,CAAC;IAEF,YAAY,GAAG,CAAC,OAAoB,EAAe,EAAE;QACjD,IAAI,CAAC,GAAe,EAAE,CAAA;QAEtB,KAAK,IAAI,CAAC,IAAI,OAAO,EAAE;YACnB,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAA;SAC5B;QACD,OAAO,CAAC,CAAA;IACZ,CAAC,CAAA;IAED,QAAQ,GAAG,CAAC,CAAQ,EAAQ,EAAE;QAE1B,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE;YACtB,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;SAC5C;QACD,OAAO,IAAI,CAAA;IACf,CAAC,CAAA;IAKD,IAAI,GAAG,GAAU,EAAE;QACf,IAAI,CAAC,YAAY,GAAG,IAAI,uBAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;QAC1C,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QACnB,OAAO,IAAI,CAAC;IAChB,CAAC,CAAC;IAKF,GAAG,GAAG,GAAU,EAAE;QACd,IAAI,CAAC,YAAY,GAAG,IAAI,uBAAQ,EAAE,CAAC,GAAG,EAAE,CAAC;QACzC,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QACnB,OAAO,IAAI,CAAC;IAChB,CAAC,CAAC;IAKF,KAAK,GAAG,GAAU,EAAE;QAChB,KAAK,IAAI,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE;YAC9B,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE;gBAChC,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;aAChC;SACJ;QAED,OAAO,IAAI,CAAC;IAChB,CAAC,CAAC;IAUF,OAAO,GAAG,GAAU,EAAE;QAClB,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;QAC5B,OAAO,IAAI,CAAC;IAChB,CAAC,CAAC;IAMF,GAAG,GAAG,CAAC,GAAG,CAAU,EAAS,EAAE;QAC3B,KAAK,IAAI,CAAC,IAAI,CAAC,EAAE;YACb,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;gBAClB,IAAG,IAAI,CAAC,MAAM,EAAE,EAAC;oBACb,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;iBACnB;gBACD,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;aACxC;iBAAM;gBACH,OAAO,CAAC,GAAG,CAAC,uBAAuB,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;aACnD;SACJ;QACD,OAAO,IAAI,CAAC;IAChB,CAAC,CAAC;IAMF,QAAQ,GAAG,CAAC,GAAG,CAAU,EAAS,EAAE;QAChC,KAAK,IAAI,CAAC,IAAI,CAAC,EAAE;YACb,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;gBAClB,IAAG,IAAI,CAAC,MAAM,EAAE,EAAC;oBACb,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;iBACnB;gBACD,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;aAC1D;iBAAM;gBACH,OAAO,CAAC,GAAG,CAAC,4BAA4B,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;aACxD;SACJ;QACD,OAAO,IAAI,CAAC;IAChB,CAAC,CAAC;IAMF,QAAQ,GAAG,CAAC,GAAG,CAAU,EAAS,EAAE;QAChC,KAAK,IAAI,CAAC,IAAI,CAAC,EAAE;YAEb,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;YAG1C,KAAK,IAAI,MAAM,IAAI,CAAC,CAAC,OAAO,EAAE;gBAC1B,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,SAAS,EAAE;oBACrC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,CAAA;iBACpD;qBAAM;oBACH,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAA;iBAC/C;aAEJ;SACJ;QACD,OAAO,IAAI,CAAC;IAChB,CAAC,CAAC;IAEF,gBAAgB,GAAG,CAAC,CAAoB,EAAS,EAAE;QAC/C,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC9B,OAAO,IAAI,CAAC;IAChB,CAAC,CAAA;IAMD,MAAM,GAAG,CAAC,GAAG,CAAU,EAAS,EAAE;QAE9B,KAAK,IAAI,CAAC,IAAI,CAAC,EAAE;YAEb,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;YAGxC,KAAK,IAAI,MAAM,IAAI,CAAC,CAAC,OAAO,EAAE;gBAC1B,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAA;gBAGvJ,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE;oBAChC,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;iBAChC;aACJ;SACJ;QACD,OAAO,IAAI,CAAC;IAChB,CAAC,CAAC;IAMF,GAAG,GAAG,CAAC,EAAU,EAAS,EAAE;QACxB,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC1B,KAAK,IAAI,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE;YAC9B,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;SAChC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC,CAAC;IAMF,IAAI,GAAG,CAAC,CAAS,EAAS,EAAE;QAExB,OAAO,IAAI,CAAC;IAChB,CAAC,CAAA;IAKD,IAAI,GAAG,GAAU,EAAE;QACf,IAAI,IAAI,CAAC,QAAQ,EAAE,EAAE;YACjB,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;YACzB,KAAK,IAAI,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE;gBAC9B,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;aAC1C;SACJ;QACD,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACxB,CAAC,CAAA;IAKD,OAAO,GAAG,CAAC,CAAQ,EAAE,IAAa,EAAW,EAAE;QAE3C,IAAI,IAAI,KAAK,SAAS,EAAE;YACpB,IAAI,GAAG,GAAG,CAAC;SACd;QAGD,QAAQ,IAAI,EAAE;YACV,KAAK,GAAG;gBAEJ,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE;oBAC1B,OAAO,KAAK,CAAC;iBAChB;gBAGD,OAAO,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;YACpD,KAAK,MAAM;gBAEP,IAAI,EAAE,GAAa,IAAI,CAAC,SAAS,EAC7B,EAAE,GAAa,CAAC,CAAC,SAAS,EAC1B,CAAC,GAAa,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBAGvE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE;oBAC/B,KAAK,IAAI,GAAG,IAAI,CAAC,EAAE;wBAEf,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,SAAS,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE;4BAClE,OAAO,KAAK,CAAC;yBAChB;wBAED,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE;4BAC7C,OAAO,KAAK,CAAC;yBAChB;qBACJ;iBACJ;gBAGD,OAAO,IAAI,CAAC;YAChB;gBACI,OAAO,KAAK,CAAC;SACpB;IACL,CAAC,CAAA;IAKD,MAAM;QACF,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,KAAK,CAAC,CAAC;IACzC,CAAC;IAKD,KAAK;QACD,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,KAAK,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,CAAC;IACxE,CAAC;IAMD,OAAO,GAAG,CAAC,CAAQ,EAAW,EAAE;QAC5B,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAChC,CAAC,CAAC;IAMF,QAAQ,GAAG,CAAC,CAAQ,EAAW,EAAE;QAC7B,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IACnC,CAAC,CAAC;IAEF,QAAQ,GAAG,GAAY,EAAE;QACrB,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,EAAE;YAC9B,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,IAAI,CAAC,eAAe,EAAE,CAAC;IAClC,CAAC,CAAA;IAED,eAAe,GAAG,GAAY,EAAE;QAC5B,KAAK,IAAI,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE;YAE7B,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE;gBACnC,OAAO,KAAK,CAAA;aACf;YAGD,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE;gBAC/B,OAAO,KAAK,CAAC;aAChB;SACJ;QAED,OAAO,IAAI,CAAC;IAChB,CAAC,CAAA;IAED,sBAAsB,GAAG,GAAY,EAAE;QACnC,KAAK,IAAI,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE;YAC9B,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE;gBACpC,OAAO,IAAI,CAAA;aACd;SACJ;QAED,OAAO,KAAK,CAAA;IAChB,CAAC,CAAA;IAQD,SAAS,GAAG,CAAC,MAAe,EAAW,EAAE;QAErC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,SAAS,EAAE;YAClE,OAAO,KAAK,CAAA;SACf;QAGD,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,CAAC;IAC1E,CAAC,CAAC;IAOF,SAAS,GAAG,CAAC,MAAc,EAAE,GAAsB,EAAQ,EAAE;QACzD,IAAI,GAAG,YAAY,uBAAQ,EAAE;YAEzB,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,MAAM,EAAE,EAAE;gBACxC,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;aAC/B;YAED,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,KAAK,EAAE,CAAA;SACtC;aAAM;YACH,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,uBAAQ,CAAC,GAAG,CAAC,CAAC,CAAA;SAC5C;IACL,CAAC,CAAC;IAMF,MAAM,GAAG,CAAC,MAAe,EAAY,EAAE;QACnC,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;YAC7B,OAAO,IAAI,uBAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;SAChC;QACD,IAAI,MAAM,KAAK,SAAS,EAAE;YAEtB,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;SAC1E;aAAM;YAEH,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,uBAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,CAAC;SACtG;IACL,CAAC,CAAC;IAMF,QAAQ,GAAG,CAAC,MAAuC,EAAY,EAAE;QAC7D,IAAI,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;QAEjC,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,YAAY,uBAAQ,EAAE;YAC1D,IAAI,SAAS,GAAgB,EAAE,CAAA;YAE/B,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,uBAAQ,CAAC,MAAM,CAAC,CAAA;YACnD,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;SACnC;QAED,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;YAC5B,KAAK,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACzB,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE;oBACzB,OAAO,IAAI,uBAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;iBAChC;gBAED,IAAI,KAAK,GAAG,IAAI,uBAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;gBACnC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;aAC1C;SACJ;QACD,OAAO,CAAC,CAAC;IACb,CAAC,CAAC;IAMF,UAAU,GAAG,CAAC,MAAe,EAAS,EAAE;QAEpC,IAAI,MAAM,KAAK,SAAS,EAAE;YACtB,MAAM,GAAG,GAAG,CAAC;SAChB;QAED,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE;YACxB,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EACjC,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;YAGtB,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;YAG/B,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,uBAAQ,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YAClD,OAAO,EAAE,CAAC;SACb;aAAM;YACH,OAAO,IAAI,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC;SAC7B;IACL,CAAC,CAAC;IAEF,SAAS,GAAG,CAAC,MAAe,EAAS,EAAE;QAEnC,IAAI,MAAM,KAAK,SAAS,EAAE;YACtB,MAAM,GAAG,GAAG,CAAA;SACf;QAGD,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,EAAE,EAAE,MAAM,CAAA;QAE5B,IAAI,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE;YACrB,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;YACxC,CAAC,CAAC,WAAW,GAAG,CAAC,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;YACpD,CAAC,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;SAC9B;aAAM;YAIH,IAAI,CAAC,CAAC,WAAW,CAAC,MAAM,EAAE,EAAE;gBACxB,CAAC,CAAC,WAAW,GAAG,IAAI,uBAAQ,EAAE,CAAC,GAAG,EAAE,CAAA;aACvC;YACD,CAAC,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;SACzB;QACD,OAAO,CAAC,CAAA;IACZ,CAAC,CAAA;IASD,MAAM,CAAC,GAAG,GAAG,CAAC,GAAG,MAAe,EAAS,EAAE;QAEvC,KAAK,IAAI,CAAC,IAAI,MAAM,EAAE;YAClB,IAAI,CAAC,CAAC,sBAAsB,EAAE,EAAE;gBAC5B,OAAO,IAAI,KAAK,EAAE,CAAC,IAAI,EAAE,CAAA;aAC5B;SACJ;QAGD,IAAI,CAAC,GAAG,IAAI,KAAK,EAAE,EACf,MAAM,GAAa,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,EACnE,MAAM,GAAa,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,WAAW,CAAC,EACrE,CAAC,GAAG,iBAAO,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,EAC1B,CAAC,GAAG,iBAAO,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC;QAG/B,CAAC,CAAC,WAAW,GAAG,IAAI,uBAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;QAG5C,KAAK,IAAI,CAAC,IAAI,MAAM,EAAE;YAElB,KAAK,IAAI,MAAM,IAAI,CAAC,CAAC,OAAO,EAAE;gBAC1B,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,OAAO,CAAC,EAAE;oBACxB,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;iBAC5B;aACJ;YACD,KAAK,IAAI,MAAM,IAAI,CAAC,CAAC,OAAO,EAAE;gBAC1B,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,SAAS,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,kBAAkB,EAAE,EAAE;oBAC3E,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,CAAC;iBACjD;qBAAM;oBACH,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI,uBAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,CAAA;iBAC/F;aACJ;SACJ;QAED,OAAO,CAAC,CAAC;IACb,CAAC,CAAC;IAMF,MAAM,CAAC,SAAS,GAAG,CAAC,GAAG,MAAe,EAAS,EAAE;QAC7C,IAAI,CAAC,GAAG,IAAI,KAAK,EAAE,CAAC,GAAG,EAAE,CAAC;QAE1B,KAAK,IAAI,CAAC,IAAI,MAAM,EAAE;YAClB,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;SACjB;QAED,OAAO,CAAC,CAAC;IACb,CAAC,CAAC;IAQF,SAAS,GAAG,CAAC,GAAG,CAAU,EAAW,EAAE;QACnC,IAAI,MAAM,GAAY,IAAI,CAAC;QAG3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC/B,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;gBACtB,OAAO,KAAK,CAAC;aAChB;SACJ;QAGD,OAAO,MAAM,CAAC;IAClB,CAAC,CAAC;IAMF,SAAS,GAAG,CAAC,GAAG,CAAU,EAAW,EAAE;QAEnC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE;YACvB,OAAO,KAAK,CAAC;SAChB;QAGD,KAAK,IAAI,CAAC,IAAI,CAAC,EAAE;YACb,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE;gBAC3C,OAAO,KAAK,CAAC;aAChB;SACJ;QAGD,OAAO,IAAI,CAAC;IAChB,CAAC,CAAC;;AAx3BN,sBA03BC"}
1
+ {"version":3,"file":"monom.js","sourceRoot":"","sources":["../../../src/maths/algebra/monom.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { Polynom } from "./polynom";
2
- import { Fraction } from "../coefficients/fraction";
2
+ import { Fraction } from "../coefficients";
3
3
  export declare class Rational {
4
4
  private _rawString;
5
5
  private _numerator;
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Rational = void 0;
4
4
  const polynom_1 = require("./polynom");
5
- const fraction_1 = require("../coefficients/fraction");
5
+ const coefficients_1 = require("../coefficients");
6
6
  class Rational {
7
7
  _rawString;
8
8
  _numerator;
@@ -101,7 +101,7 @@ class Rational {
101
101
  }
102
102
  }
103
103
  else {
104
- return this._numerator.evaluate({ letter: new fraction_1.Fraction(value) }).divide(this._denominator.evaluate({ letter: new fraction_1.Fraction(value) }));
104
+ return this._numerator.evaluate({ letter: new coefficients_1.Fraction(value) }).divide(this._denominator.evaluate({ letter: new coefficients_1.Fraction(value) }));
105
105
  }
106
106
  };
107
107
  }
@@ -1 +1 @@
1
- {"version":3,"file":"rational.js","sourceRoot":"","sources":["../../../src/maths/algebra/rational.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rational.js","sourceRoot":"","sources":["../../../src/maths/algebra/rational.ts"],"names":[],"mappings":"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"}
@@ -51,6 +51,7 @@ export declare class Line {
51
51
  clone: () => Line;
52
52
  isParellelTo: (line: Line) => Boolean;
53
53
  isSameAs: (line: Line) => Boolean;
54
+ isVertical: () => Boolean;
54
55
  simplify: () => Line;
55
56
  simplifyDirection: () => Line;
56
57
  intersection: (line: Line) => {
@@ -213,6 +213,9 @@ class Line {
213
213
  isSameAs = (line) => {
214
214
  return this.slope.isEqual(line.slope) && this.height.isEqual(line.height);
215
215
  };
216
+ isVertical = () => {
217
+ return this.slope.isInfinity();
218
+ };
216
219
  simplify = () => {
217
220
  let lcm = numeric_1.Numeric.lcm(this._a.denominator, this._b.denominator, this._c.denominator), gcd = numeric_1.Numeric.gcd(this._a.numerator, this._b.numerator, this._c.numerator);
218
221
  this.parseByCoefficient(this._a.clone().multiply(lcm).divide(gcd), this._b.clone().multiply(lcm).divide(gcd), this._c.clone().multiply(lcm).divide(gcd));
@@ -1 +1 @@
1
- {"version":3,"file":"line.js","sourceRoot":"","sources":["../../../src/maths/geometry/line.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"line.js","sourceRoot":"","sources":["../../../src/maths/geometry/line.ts"],"names":[],"mappings":"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"}
@@ -55,12 +55,17 @@ class Vector {
55
55
  this._y = values[1].y.clone().subtract(values[0].y);
56
56
  return this;
57
57
  }
58
- if (values[0].isFraction || !isNaN(values[0])) {
58
+ if (values[0] instanceof fraction_1.Fraction || !isNaN(values[0])) {
59
59
  this._x = new fraction_1.Fraction(values[0]);
60
60
  }
61
- if (values[1].isFraction || !isNaN(values[1])) {
61
+ if (values[1] instanceof fraction_1.Fraction || !isNaN(values[1])) {
62
62
  this._y = new fraction_1.Fraction(values[1]);
63
63
  }
64
+ if ((typeof values[0] === 'object' && !isNaN(values[0].x) && !isNaN(values[0].x)) &&
65
+ (typeof values[1] === 'object' && !isNaN(values[1].x) && !isNaN(values[1].x))) {
66
+ this._x = new fraction_1.Fraction(+values[1].x - values[0].x);
67
+ this._y = new fraction_1.Fraction(+values[1].y - values[0].y);
68
+ }
64
69
  }
65
70
  return this;
66
71
  };
@@ -1 +1 @@
1
- {"version":3,"file":"vector.js","sourceRoot":"","sources":["../../../src/maths/geometry/vector.ts"],"names":[],"mappings":";;;AAIA,uDAAkD;AAClD,wCAAmC;AACnC,mCAA8B;AAE9B,MAAa,MAAM;IACP,EAAE,CAAW;IACb,EAAE,CAAW;IAErB,YAAY,GAAG,MAAW;QACtB,IAAI,CAAC,EAAE,GAAG,IAAI,mBAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;QAChC,IAAI,CAAC,EAAE,GAAG,IAAI,mBAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;QAEhC,IAAI,MAAM,KAAK,SAAS,EAAE;YACtB,IAAI,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,CAAC;SACzB;IACL,CAAC;IAAA,CAAC;IAKF,IAAI,CAAC;QACD,OAAO,IAAI,CAAC,EAAE,CAAC;IACnB,CAAC;IAED,IAAI,CAAC,CAAC,KAAe;QACjB,IAAI,CAAC,EAAE,GAAG,KAAK,CAAC;IACpB,CAAC;IAED,IAAI,CAAC;QACD,OAAO,IAAI,CAAC,EAAE,CAAC;IACnB,CAAC;IAED,IAAI,CAAC,CAAC,KAAe;QACjB,IAAI,CAAC,EAAE,GAAG,KAAK,CAAC;IACpB,CAAC;IAED,IAAI,UAAU;QACV,OAAO,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,IAAI,IAAI;QACJ,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAC5C,CAAC;IAED,IAAI,GAAG;QACH,OAAO,mBAAmB,IAAI,CAAC,EAAE,CAAC,GAAG,UAAU,IAAI,CAAC,EAAE,CAAC,GAAG,iBAAiB,CAAA;IAC/E,CAAC;IAMD,KAAK,GAAG,CAAC,GAAG,MAAW,EAAU,EAAE;QAI/B,IAAI,CAAC,IAAI,EAAE,CAAC;QAEZ,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;YACrB,OAAO,IAAI,CAAC;SACf;QAED,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;YACrB,IAAI,MAAM,CAAC,CAAC,CAAC,YAAY,MAAM,EAAE;gBAC7B,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAA;aAC3B;iBAAM;gBACH,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;aACtC;SACJ;QAED,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,EAAE;YAEpB,IAAI,MAAM,CAAC,CAAC,CAAC,YAAY,aAAK,IAAI,MAAM,CAAC,CAAC,CAAC,YAAY,aAAK,EAAE;gBAC1D,IAAI,CAAC,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;gBACnD,IAAI,CAAC,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;gBACnD,OAAO,IAAI,CAAC;aACf;YAGD,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE;gBAC3C,IAAI,CAAC,EAAE,GAAG,IAAI,mBAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;aACpC;YACD,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE;gBAC3C,IAAI,CAAC,EAAE,GAAG,IAAI,mBAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;aACpC;SACJ;QAED,OAAO,IAAI,CAAC;IAChB,CAAC,CAAC;IAEF,KAAK,GAAG,GAAW,EAAE;QACjB,IAAI,CAAC,GAAG,IAAI,MAAM,EAAE,CAAC;QAErB,IAAI,IAAI,CAAC,EAAE,KAAK,IAAI,EAAE;YAClB,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;SACzB;QACD,IAAI,IAAI,CAAC,EAAE,KAAK,IAAI,EAAE;YAClB,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;SACzB;QACD,OAAO,CAAC,CAAC;IACb,CAAC,CAAA;IAED,KAAK,GAAG,GAAW,EAAE;QACjB,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC;QACf,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC;QACf,OAAO,IAAI,CAAC;IAChB,CAAC,CAAA;IAED,IAAI,GAAG,GAAW,EAAE;QAChB,IAAI,CAAC,KAAK,EAAE,CAAC;QACb,IAAI,CAAC,EAAE,GAAG,IAAI,mBAAQ,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,EAAE,GAAG,IAAI,mBAAQ,CAAC,IAAI,CAAC,CAAC;QAC7B,OAAO,IAAI,CAAC;IAChB,CAAC,CAAA;IAED,GAAG,GAAG,GAAW,EAAE;QACf,IAAI,CAAC,EAAE,GAAG,IAAI,mBAAQ,EAAE,CAAC;QACzB,IAAI,CAAC,EAAE,GAAG,IAAI,mBAAQ,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC;IAChB,CAAC,CAAA;IAEO,YAAY,GAAG,CAAC,KAAa,EAAU,EAAE;QAE7C,IAAI,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAGxC,IAAI,CAAC,CAAC,GAAG,IAAI,mBAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC,CAAC,GAAG,IAAI,mBAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC;QAC7C,OAAO,IAAI,CAAC;IAChB,CAAC,CAAC;IAKF,OAAO,GAAG,GAAW,EAAE;QACnB,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC;QAClB,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC;QAClB,OAAO,IAAI,CAAC;IAChB,CAAC,CAAA;IAED,GAAG,GAAG,CAAC,CAAS,EAAU,EAAE;QACxB,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACjB,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAEjB,OAAO,IAAI,CAAC;IAChB,CAAC,CAAA;IAED,QAAQ,GAAG,CAAC,CAAS,EAAU,EAAE;QAC7B,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;IACzC,CAAC,CAAA;IAED,uBAAuB,GAAG,CAAC,CAAS,EAAY,EAAE;QAE9C,OAAO,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5E,CAAC,CAAA;IAED,MAAM,CAAC,aAAa,GAAG,CAAC,EAAU,EAAE,EAAU,EAAU,EAAE;QAEtD,OAAO,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;IAC7D,CAAC,CAAC;IAEF,MAAM,GAAG,GAAW,EAAE;QAClB,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;QACrD,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;QACZ,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;QACZ,OAAO,IAAI,CAAC;IAChB,CAAC,CAAA;IAED,UAAU,GAAG,CAAC,CAAS,EAAW,EAAE;QAChC,OAAO,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAA;IACnD,CAAC,CAAA;IAED,gBAAgB,GAAG,CAAC,CAAM,EAAU,EAAE;QAClC,IAAI,MAAM,GAAG,IAAI,mBAAQ,CAAC,CAAC,CAAC,CAAC;QAC7B,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACzB,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACzB,OAAO,IAAI,CAAC;IAChB,CAAC,CAAA;IAED,cAAc,GAAG,CAAC,CAAM,EAAU,EAAE;QAChC,OAAO,IAAI,CAAC,gBAAgB,CAAC,IAAI,mBAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;IAC3D,CAAC,CAAA;IAKD,QAAQ,GAAG,GAAW,EAAE;QAEpB,OAAO,IAAI,CAAC,gBAAgB,CAAC,iBAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC;aAC9E,cAAc,CAAC,iBAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAC3E,CAAC,CAAA;IAED,SAAS,GAAG,CAAC,CAAS,EAAE,KAAe,EAAE,MAAgB,EAAU,EAAE;QACjE,IAAI,MAAM,GAAG,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,KAAK,EAC9C,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC;QAC1C,IAAI,KAAK,EAAE;YACP,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;SAC7B;QAED,OAAO,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAC/D,CAAC,CAAA;;AApML,wBAqMC"}
1
+ {"version":3,"file":"vector.js","sourceRoot":"","sources":["../../../src/maths/geometry/vector.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ export declare class NumExp {
2
+ private _rpn;
3
+ private _expression;
4
+ constructor(value: string);
5
+ get rpn(): {
6
+ token: string;
7
+ tokenType: string;
8
+ }[];
9
+ get expression(): string;
10
+ private _extractDecimalPart;
11
+ private _numberCorrection;
12
+ private _addToStack;
13
+ evaluate(values: {
14
+ [Key: string]: number;
15
+ }): number;
16
+ }
@@ -0,0 +1,119 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NumExp = void 0;
4
+ const shutingyard_1 = require("./shutingyard");
5
+ const coefficients_1 = require("./coefficients");
6
+ class NumExp {
7
+ _rpn;
8
+ _expression;
9
+ constructor(value) {
10
+ this._expression = value;
11
+ this._rpn = new shutingyard_1.Shutingyard(shutingyard_1.ShutingyardMode.NUMERIC).parse(value).rpn;
12
+ }
13
+ get rpn() {
14
+ return this._rpn;
15
+ }
16
+ get expression() {
17
+ return this._expression;
18
+ }
19
+ _extractDecimalPart(value) {
20
+ let decimal = value.toString();
21
+ if (!decimal.includes('.')) {
22
+ return '';
23
+ }
24
+ decimal = decimal.split('.')[1];
25
+ return decimal.substring(0, decimal.length - 2);
26
+ }
27
+ _numberCorrection(value) {
28
+ const epsilon = 0.00000000000001, number_of_digits = 6;
29
+ let decimal = this._extractDecimalPart(value);
30
+ if (decimal === '') {
31
+ return value;
32
+ }
33
+ const n9 = decimal.match(/9+$/g);
34
+ const n0 = decimal.match(/0+$/g);
35
+ if (n9 && n9[0].length >= number_of_digits) {
36
+ let mod = this._extractDecimalPart(value + epsilon), mod0 = mod.match(/0+$/g);
37
+ if (mod0 && mod0[0].length >= number_of_digits) {
38
+ return +((value + epsilon).toString().split(mod0[0])[0]);
39
+ }
40
+ }
41
+ if (n0 && n0[0].length >= number_of_digits) {
42
+ let mod = this._extractDecimalPart(value - epsilon), mod9 = mod.match(/9+$/g);
43
+ if (mod9 && mod9[0].length >= number_of_digits) {
44
+ return +(value.toString().split(n0[0])[0]);
45
+ }
46
+ }
47
+ return value;
48
+ }
49
+ _addToStack(stack, value) {
50
+ stack.push(this._numberCorrection(value));
51
+ }
52
+ evaluate(values) {
53
+ let stack = [];
54
+ for (const element of this._rpn) {
55
+ if (element.tokenType === shutingyard_1.ShutingyardType.COEFFICIENT) {
56
+ if (!isNaN(+element.token)) {
57
+ this._addToStack(stack, +element.token);
58
+ }
59
+ else {
60
+ this._addToStack(stack, new coefficients_1.Fraction(element.token).value);
61
+ }
62
+ }
63
+ else if (element.tokenType === shutingyard_1.ShutingyardType.VARIABLE) {
64
+ if (values[element.token] !== undefined) {
65
+ this._addToStack(stack, +values[element.token]);
66
+ }
67
+ }
68
+ else if (element.tokenType === shutingyard_1.ShutingyardType.CONSTANT) {
69
+ this._addToStack(stack, shutingyard_1.tokenConstant[element.token]);
70
+ }
71
+ else if (element.tokenType === shutingyard_1.ShutingyardType.OPERATION) {
72
+ if (element.token === '*') {
73
+ const b = +stack.pop(), a = +stack.pop();
74
+ this._addToStack(stack, a * b);
75
+ }
76
+ else if (element.token === '/') {
77
+ const b = +stack.pop(), a = +stack.pop();
78
+ this._addToStack(stack, a / b);
79
+ }
80
+ else if (element.token === '+') {
81
+ const b = +stack.pop(), a = +stack.pop();
82
+ this._addToStack(stack, a + b);
83
+ }
84
+ else if (element.token === '-') {
85
+ const b = +stack.pop(), a = +stack.pop() || 0;
86
+ this._addToStack(stack, a - b);
87
+ }
88
+ else if (element.token === '^') {
89
+ const b = +stack.pop(), a = +stack.pop();
90
+ this._addToStack(stack, Math.pow(a, b));
91
+ }
92
+ }
93
+ else if (element.tokenType === shutingyard_1.ShutingyardType.FUNCTION) {
94
+ const a = +stack.pop();
95
+ if (element.token === 'sin') {
96
+ this._addToStack(stack, Math.sin(a));
97
+ }
98
+ else if (element.token === 'cos') {
99
+ this._addToStack(stack, Math.cos(a));
100
+ }
101
+ else if (element.token === 'tan') {
102
+ this._addToStack(stack, Math.tan(a));
103
+ }
104
+ else if (element.token === 'sqrt') {
105
+ this._addToStack(stack, Math.sqrt(a));
106
+ }
107
+ }
108
+ }
109
+ if (stack.length === 1) {
110
+ return stack[0];
111
+ }
112
+ else {
113
+ console.error('There was a problem parsing', this._expression, '. The RPN array is', this._rpn);
114
+ return 0;
115
+ }
116
+ }
117
+ }
118
+ exports.NumExp = NumExp;
119
+ //# sourceMappingURL=numexp.js.map