pimath 0.0.120 → 0.0.122

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 (175) hide show
  1. package/.idea/PI.iml +7 -1
  2. package/.idea/shelf/Uncommitted_changes_before_Update_at_24_07_2023_15_31_[Default_Changelist]/shelved.patch +90 -0
  3. package/.idea/shelf/Uncommitted_changes_before_Update_at_24_07_2023_15_31_[Default_Changelist]1/shelved.patch +107 -0
  4. package/.idea/shelf/Uncommitted_changes_before_Update_at_24_07_2023_15_31__Default_Changelist_.xml +4 -0
  5. package/.idea/shelf/Uncommitted_changes_before_Update_at_24_07_2023_15_31__Default_Changelist_1.xml +4 -0
  6. package/LICENSE.md +1 -1
  7. package/dev/pimath.js +7929 -0
  8. package/dev/pimath.js.map +1 -0
  9. package/dist/{pi.js → pimath.js} +7613 -7840
  10. package/dist/pimath.js.map +1 -0
  11. package/dist/pimath.min.js +2 -0
  12. package/dist/pimath.min.js.map +1 -0
  13. package/docs/assets/main.js +58 -58
  14. package/docs/assets/search.js +1 -1
  15. package/docs/assets/style.css +1367 -1280
  16. package/docs/classes/Logicalset.Logicalset.html +221 -212
  17. package/docs/classes/Polynom.Rational.html +391 -388
  18. package/docs/classes/Vector-1.Vector.html +494 -448
  19. package/docs/classes/Vector.Point.html +341 -342
  20. package/docs/classes/algebra_equation.Equation.html +796 -753
  21. package/docs/classes/algebra_linearSystem.LinearSystem.html +408 -397
  22. package/docs/classes/algebra_monom.Monom.html +967 -910
  23. package/docs/classes/algebra_polynom.Polynom.html +1281 -1260
  24. package/docs/classes/coefficients_fraction.Fraction.html +939 -931
  25. package/docs/classes/geometry_circle.Circle.html +476 -476
  26. package/docs/classes/geometry_line.Line.html +779 -719
  27. package/docs/classes/geometry_triangle.Triangle.html +429 -420
  28. package/docs/classes/numeric.Numeric.html +269 -263
  29. package/docs/classes/shutingyard.Shutingyard.html +259 -248
  30. package/docs/enums/algebra_equation.PARTICULAR_SOLUTION.html +89 -88
  31. package/docs/enums/geometry_line.LinePropriety.html +102 -102
  32. package/docs/enums/shutingyard.ShutingyardMode.html +106 -102
  33. package/docs/enums/shutingyard.ShutingyardType.html +120 -116
  34. package/docs/index.html +63 -65
  35. package/docs/interfaces/algebra_equation.ISolution.html +111 -109
  36. package/docs/interfaces/algebra_polynom.IEuclidian.html +93 -92
  37. package/docs/interfaces/geometry_triangle.remarquableLines.html +150 -150
  38. package/docs/modules/Logicalset.html +69 -74
  39. package/docs/modules/Polynom.html +69 -74
  40. package/docs/modules/Vector-1.html +69 -74
  41. package/docs/modules/Vector.html +69 -74
  42. package/docs/modules/algebra_equation.html +75 -81
  43. package/docs/modules/algebra_linearSystem.html +65 -71
  44. package/docs/modules/algebra_monom.html +70 -76
  45. package/docs/modules/algebra_polynom.html +75 -81
  46. package/docs/modules/coefficients_fraction.html +70 -76
  47. package/docs/modules/geometry_circle.html +65 -71
  48. package/docs/modules/geometry_line.html +70 -76
  49. package/docs/modules/geometry_triangle.html +70 -76
  50. package/docs/modules/numeric.html +65 -71
  51. package/docs/modules/shutingyard.html +84 -90
  52. package/docs/types/algebra_monom.literalType.html +66 -70
  53. package/docs/types/algebra_polynom.PolynomParsingType.html +62 -66
  54. package/docs/types/coefficients_fraction.FractionParsingType.html +61 -65
  55. package/docs/types/shutingyard.Token.html +72 -76
  56. package/docs/types/shutingyard.tokenType.html +77 -81
  57. package/docs/variables/shutingyard.tokenConstant.html +70 -74
  58. package/esm/index.d.ts +38 -41
  59. package/esm/index.js +43 -46
  60. package/esm/index.js.map +1 -1
  61. package/esm/maths/algebra/equation.d.ts +119 -117
  62. package/esm/maths/algebra/equation.js +796 -785
  63. package/esm/maths/algebra/equation.js.map +1 -1
  64. package/esm/maths/algebra/linearSystem.d.ts +39 -38
  65. package/esm/maths/algebra/linearSystem.js +278 -262
  66. package/esm/maths/algebra/linearSystem.js.map +1 -1
  67. package/esm/maths/algebra/logicalset.d.ts +28 -28
  68. package/esm/maths/algebra/logicalset.js +157 -157
  69. package/esm/maths/algebra/monom.d.ts +206 -206
  70. package/esm/maths/algebra/monom.js +908 -908
  71. package/esm/maths/algebra/monom.js.map +1 -1
  72. package/esm/maths/algebra/polynom.d.ts +157 -157
  73. package/esm/maths/algebra/polynom.js +1277 -1277
  74. package/esm/maths/algebra/rational.d.ts +45 -45
  75. package/esm/maths/algebra/rational.js +183 -183
  76. package/esm/maths/algebra/study/rationalStudy.d.ts +28 -28
  77. package/esm/maths/algebra/study/rationalStudy.js +243 -243
  78. package/esm/maths/algebra/study.d.ts +143 -142
  79. package/esm/maths/algebra/study.js +378 -377
  80. package/esm/maths/algebra/study.js.map +1 -1
  81. package/esm/maths/coefficients/fraction.d.ts +90 -90
  82. package/esm/maths/coefficients/fraction.js +516 -516
  83. package/esm/maths/coefficients/fraction.js.map +1 -1
  84. package/esm/maths/coefficients/nthRoot.d.ts +23 -23
  85. package/esm/maths/coefficients/nthRoot.js +136 -136
  86. package/esm/maths/geometry/circle.d.ts +45 -45
  87. package/esm/maths/geometry/circle.js +323 -323
  88. package/esm/maths/geometry/line.d.ts +99 -99
  89. package/esm/maths/geometry/line.js +481 -481
  90. package/esm/maths/geometry/line.js.map +1 -1
  91. package/esm/maths/geometry/point.d.ts +34 -34
  92. package/esm/maths/geometry/point.js +166 -166
  93. package/esm/maths/geometry/point.js.map +1 -1
  94. package/esm/maths/geometry/triangle.d.ts +85 -85
  95. package/esm/maths/geometry/triangle.js +268 -268
  96. package/esm/maths/geometry/vector.d.ts +41 -41
  97. package/esm/maths/geometry/vector.js +197 -197
  98. package/esm/maths/geometry/vector.js.map +1 -1
  99. package/esm/maths/numeric.d.ts +28 -28
  100. package/esm/maths/numeric.js +180 -180
  101. package/esm/maths/numexp.d.ts +19 -0
  102. package/esm/maths/numexp.js +186 -0
  103. package/esm/maths/numexp.js.map +1 -0
  104. package/esm/maths/randomization/random.d.ts +23 -23
  105. package/esm/maths/randomization/random.js +78 -78
  106. package/esm/maths/randomization/random.js.map +1 -1
  107. package/esm/maths/randomization/randomCore.d.ts +7 -7
  108. package/esm/maths/randomization/randomCore.js +21 -21
  109. package/esm/maths/randomization/rndFraction.d.ts +12 -12
  110. package/esm/maths/randomization/rndFraction.js +43 -43
  111. package/esm/maths/randomization/rndGeometryLine.d.ts +12 -12
  112. package/esm/maths/randomization/rndGeometryLine.js +45 -45
  113. package/esm/maths/randomization/rndGeometryPoint.d.ts +12 -12
  114. package/esm/maths/randomization/rndGeometryPoint.js +60 -60
  115. package/esm/maths/randomization/rndHelpers.d.ts +23 -23
  116. package/esm/maths/randomization/rndHelpers.js +76 -76
  117. package/esm/maths/randomization/rndMonom.d.ts +12 -12
  118. package/esm/maths/randomization/rndMonom.js +52 -52
  119. package/esm/maths/randomization/rndPolynom.d.ts +13 -13
  120. package/esm/maths/randomization/rndPolynom.js +74 -74
  121. package/esm/maths/randomization/rndTypes.d.ts +34 -34
  122. package/esm/maths/randomization/rndTypes.js +2 -2
  123. package/esm/maths/shutingyard.d.ts +59 -59
  124. package/esm/maths/shutingyard.js +442 -442
  125. package/esm/maths/shutingyard.js.map +1 -1
  126. package/package.json +11 -11
  127. package/public/index.html +50 -81
  128. package/public/playground.html +7 -8
  129. package/src/index.ts +1 -4
  130. package/src/maths/algebra/equation.ts +16 -0
  131. package/src/maths/algebra/linearSystem.ts +20 -0
  132. package/src/maths/algebra/study.ts +12 -10
  133. package/src/maths/{expressions/numexp.ts → numexp.ts} +2 -2
  134. package/tests/algebra/equation.test.ts +19 -5
  135. package/tests/algebra/linear.test.ts +3 -11
  136. package/tests/algebra/polynom.test.ts +7 -8
  137. package/tests/algebra/rationnal.test.ts +1 -1
  138. package/tests/algebra/study.test.ts +2 -9
  139. package/tests/coefficients/fraction.test.ts +8 -8
  140. package/tests/custom.test.ts +33 -37
  141. package/tests/numeric.test.ts +1 -2
  142. package/tests/numexp.test.ts +13 -5
  143. package/tests/shutingyard.test.ts +3 -3
  144. package/webpack-production-min.config.js +1 -1
  145. package/webpack-production.config.js +1 -1
  146. package/webpack.config.js +1 -1
  147. package/dist/pi.js.map +0 -1
  148. package/dist/pi.min.js +0 -2
  149. package/dist/pi.min.js.map +0 -1
  150. package/docs/classes/expressions_numexp.NumExp.html +0 -236
  151. package/docs/classes/expressions_polynomexp.PolynomExpFactor.html +0 -317
  152. package/docs/classes/expressions_polynomexp.PolynomExpProduct.html +0 -285
  153. package/docs/modules/expressions_numexp.html +0 -71
  154. package/docs/modules/expressions_polynomexp.html +0 -73
  155. package/docs/modules.html +0 -76
  156. package/graph.svg +0 -1033
  157. package/src/maths/expressions/ExpressionTree.ts +0 -172
  158. package/src/maths/expressions/expression.ts +0 -286
  159. package/src/maths/expressions/expressionFactor.ts +0 -190
  160. package/src/maths/expressions/expressionMember.ts +0 -233
  161. package/src/maths/expressions/expressionOperators.ts +0 -49
  162. package/src/maths/expressions/expressionParser.ts +0 -295
  163. package/src/maths/expressions/factors/ExpFactor.ts +0 -39
  164. package/src/maths/expressions/factors/ExpFactorConstant.ts +0 -60
  165. package/src/maths/expressions/factors/ExpFactorExponential.ts +0 -26
  166. package/src/maths/expressions/factors/ExpFactorNumber.ts +0 -72
  167. package/src/maths/expressions/factors/ExpFactorPower.ts +0 -42
  168. package/src/maths/expressions/factors/ExpFactorTrigo.ts +0 -53
  169. package/src/maths/expressions/factors/ExpFactorVariable.ts +0 -45
  170. package/src/maths/expressions/internals.ts +0 -14
  171. package/src/maths/expressions/polynomexp.bkp.ts +0 -221
  172. package/src/maths/expressions/polynomexp.ts +0 -310
  173. package/tests/expressions/expressions.test.ts +0 -145
  174. package/tests/expressions/expressiontree.test.ts +0 -11
  175. package/tests/polynomexp.test.ts +0 -12
@@ -1 +1 @@
1
- {"version":3,"file":"monom.js","sourceRoot":"","sources":["../../../src/maths/algebra/monom.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"monom.js","sourceRoot":"","sources":["../../../src/maths/algebra/monom.ts"],"names":[],"mappings":"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"}
@@ -1,157 +1,157 @@
1
- /**
2
- * Polynom module contains everything necessary to handle polynoms.*
3
- */
4
- import { literalType, Monom } from './monom';
5
- import { Token } from '../shutingyard';
6
- import { Fraction } from "../coefficients/fraction";
7
- import { ISolution } from "./equation";
8
- export type PolynomParsingType = string | Polynom | number | Fraction | Monom;
9
- export interface IEuclidian {
10
- quotient: Polynom;
11
- reminder: Polynom;
12
- }
13
- /**
14
- * Polynom class can handle polynoms, reorder, resolve, ...
15
- * ```
16
- * let P = new Polynom('3x-4')
17
- * ```
18
- */
19
- export declare class Polynom {
20
- private _dirty_factors;
21
- private _dirty_zeroes;
22
- private _euclidianCache;
23
- private _factors;
24
- private _monoms;
25
- private _rawString;
26
- private _texString;
27
- private _zeroes;
28
- /**
29
- *
30
- * @param {string} polynomString (optional) Default polynom to parse on class creation
31
- * @param values
32
- */
33
- constructor(polynomString?: PolynomParsingType, ...values: unknown[]);
34
- get euclidianCache(): {
35
- [p: string]: IEuclidian;
36
- };
37
- set euclidianCache(value: {
38
- [p: string]: IEuclidian;
39
- });
40
- get dirty_zeroes(): boolean;
41
- set dirty_zeroes(value: boolean);
42
- get dirty_factors(): boolean;
43
- set dirty_factors(value: boolean);
44
- get monoms(): Monom[];
45
- set monoms(M: Monom[]);
46
- get zeroes(): ISolution[];
47
- get factors(): Polynom[];
48
- set factors(value: Polynom[]);
49
- get texString(): string;
50
- get texFactors(): string;
51
- get displayFactors(): string;
52
- get length(): number;
53
- get display(): string;
54
- get raw(): string;
55
- get tex(): string;
56
- get isMultiVariable(): boolean;
57
- get variables(): string[];
58
- get numberOfVars(): number;
59
- get plotFunction(): string;
60
- mark_as_dirty: () => void;
61
- addToken: (stack: Polynom[], element: Token) => void;
62
- /**
63
- * Parse a string to a polynom.
64
- * @param inputStr
65
- * @param values: as string, numbers or fractions
66
- */
67
- parse: (inputStr: PolynomParsingType, ...values: unknown[]) => Polynom;
68
- /**
69
- * Clone the polynom
70
- */
71
- clone: () => Polynom;
72
- /**
73
- * Set the polynom to zero.
74
- * @returns {this}
75
- */
76
- zero: () => Polynom;
77
- one: () => Polynom;
78
- empty: () => Polynom;
79
- opposed: () => Polynom;
80
- add: (...values: unknown[]) => Polynom;
81
- subtract: (...values: unknown[]) => Polynom;
82
- multiply: (value: unknown) => Polynom;
83
- /**
84
- * Divide the current polynom by another polynom.
85
- * @param P
86
- * returns {quotient: Polynom, reminder: Polynom}
87
- */
88
- euclidian: (P: Polynom) => IEuclidian;
89
- divide: (value: unknown) => Polynom;
90
- pow: (nb: number) => Polynom;
91
- /**
92
- * Compare the current coefficient with another coefficient
93
- * @param P
94
- * @param sign (string| default is =): authorized values: =, <, <=, >, >= with some variations.
95
- */
96
- compare: (P: Polynom, sign?: string) => boolean;
97
- isZero(): boolean;
98
- isOne(): boolean;
99
- isEqual: (P: Polynom) => boolean;
100
- isSameAs: (P: Polynom) => boolean;
101
- isOpposedAt: (P: Polynom) => boolean;
102
- isFactorized: (polynomString: string, soft?: boolean) => boolean;
103
- isReduced: (polynomString: string) => Boolean;
104
- isDeveloped: (polynomString: string) => Boolean;
105
- reduce: () => Polynom;
106
- reorder: (letter?: string, revert?: boolean) => Polynom;
107
- degree: (letter?: string) => Fraction;
108
- letters: () => string[];
109
- /**
110
- * Replace a variable (letter) by a polynom.
111
- * @param letter
112
- * @param P
113
- */
114
- replaceBy: (letter: string, P: Polynom) => Polynom;
115
- evaluate: (values: literalType | Fraction | number) => Fraction;
116
- evaluateAsNumeric: (values: number | {
117
- [Key: string]: number;
118
- }) => number;
119
- derivative: (letter?: string) => Polynom;
120
- primitive: (letter?: string) => Polynom;
121
- integrate: (a: Fraction | number, b: Fraction | number, letter?: string) => Fraction;
122
- /**
123
- * Factorize a polynom and store the best results in factors.
124
- * @param maxValue Defines the greatest value to search to (default is 20).
125
- */
126
- factorize: (letter?: string) => Polynom[];
127
- isDividableBy: (div: Polynom) => boolean;
128
- getZeroes: () => ISolution[];
129
- monomByDegree: (degree?: Fraction | number, letter?: string) => Monom;
130
- monomsByDegree: (degree?: number | Fraction, letter?: string) => Monom[];
131
- monomByLetter: (letter: string) => Monom;
132
- getDenominators: () => number[];
133
- getNumerators: () => number[];
134
- lcmDenominator: () => number;
135
- gcdDenominator: () => number;
136
- lcmNumerator: () => number;
137
- gcdNumerator: () => number;
138
- commonMonom: () => Monom;
139
- limitToInfinity: (letter?: string) => Fraction;
140
- limitToNegativeInfinity: (letter?: string) => Fraction;
141
- private _getAllPotentialFactors;
142
- private _parseString;
143
- private genDisplay;
144
- /**
145
- * Main parse using a shutting yard class
146
- * @param inputStr
147
- */
148
- private shutingYardToReducedPolynom;
149
- private multiplyByPolynom;
150
- private multiplyByFraction;
151
- private multiplyByInteger;
152
- private multiplyByMonom;
153
- private divideByInteger;
154
- private divideByFraction;
155
- private _factorize2ndDegree;
156
- private _factorizeByGroups;
157
- }
1
+ /**
2
+ * Polynom module contains everything necessary to handle polynoms.*
3
+ */
4
+ import { literalType, Monom } from './monom';
5
+ import { Token } from '../shutingyard';
6
+ import { Fraction } from "../coefficients/fraction";
7
+ import { ISolution } from "./equation";
8
+ export type PolynomParsingType = string | Polynom | number | Fraction | Monom;
9
+ export interface IEuclidian {
10
+ quotient: Polynom;
11
+ reminder: Polynom;
12
+ }
13
+ /**
14
+ * Polynom class can handle polynoms, reorder, resolve, ...
15
+ * ```
16
+ * let P = new Polynom('3x-4')
17
+ * ```
18
+ */
19
+ export declare class Polynom {
20
+ private _dirty_factors;
21
+ private _dirty_zeroes;
22
+ private _euclidianCache;
23
+ private _factors;
24
+ private _monoms;
25
+ private _rawString;
26
+ private _texString;
27
+ private _zeroes;
28
+ /**
29
+ *
30
+ * @param {string} polynomString (optional) Default polynom to parse on class creation
31
+ * @param values
32
+ */
33
+ constructor(polynomString?: PolynomParsingType, ...values: unknown[]);
34
+ get euclidianCache(): {
35
+ [p: string]: IEuclidian;
36
+ };
37
+ set euclidianCache(value: {
38
+ [p: string]: IEuclidian;
39
+ });
40
+ get dirty_zeroes(): boolean;
41
+ set dirty_zeroes(value: boolean);
42
+ get dirty_factors(): boolean;
43
+ set dirty_factors(value: boolean);
44
+ get monoms(): Monom[];
45
+ set monoms(M: Monom[]);
46
+ get zeroes(): ISolution[];
47
+ get factors(): Polynom[];
48
+ set factors(value: Polynom[]);
49
+ get texString(): string;
50
+ get texFactors(): string;
51
+ get displayFactors(): string;
52
+ get length(): number;
53
+ get display(): string;
54
+ get raw(): string;
55
+ get tex(): string;
56
+ get isMultiVariable(): boolean;
57
+ get variables(): string[];
58
+ get numberOfVars(): number;
59
+ get plotFunction(): string;
60
+ mark_as_dirty: () => void;
61
+ addToken: (stack: Polynom[], element: Token) => void;
62
+ /**
63
+ * Parse a string to a polynom.
64
+ * @param inputStr
65
+ * @param values: as string, numbers or fractions
66
+ */
67
+ parse: (inputStr: PolynomParsingType, ...values: unknown[]) => Polynom;
68
+ /**
69
+ * Clone the polynom
70
+ */
71
+ clone: () => Polynom;
72
+ /**
73
+ * Set the polynom to zero.
74
+ * @returns {this}
75
+ */
76
+ zero: () => Polynom;
77
+ one: () => Polynom;
78
+ empty: () => Polynom;
79
+ opposed: () => Polynom;
80
+ add: (...values: unknown[]) => Polynom;
81
+ subtract: (...values: unknown[]) => Polynom;
82
+ multiply: (value: unknown) => Polynom;
83
+ /**
84
+ * Divide the current polynom by another polynom.
85
+ * @param P
86
+ * returns {quotient: Polynom, reminder: Polynom}
87
+ */
88
+ euclidian: (P: Polynom) => IEuclidian;
89
+ divide: (value: unknown) => Polynom;
90
+ pow: (nb: number) => Polynom;
91
+ /**
92
+ * Compare the current coefficient with another coefficient
93
+ * @param P
94
+ * @param sign (string| default is =): authorized values: =, <, <=, >, >= with some variations.
95
+ */
96
+ compare: (P: Polynom, sign?: string) => boolean;
97
+ isZero(): boolean;
98
+ isOne(): boolean;
99
+ isEqual: (P: Polynom) => boolean;
100
+ isSameAs: (P: Polynom) => boolean;
101
+ isOpposedAt: (P: Polynom) => boolean;
102
+ isFactorized: (polynomString: string, soft?: boolean) => boolean;
103
+ isReduced: (polynomString: string) => Boolean;
104
+ isDeveloped: (polynomString: string) => Boolean;
105
+ reduce: () => Polynom;
106
+ reorder: (letter?: string, revert?: boolean) => Polynom;
107
+ degree: (letter?: string) => Fraction;
108
+ letters: () => string[];
109
+ /**
110
+ * Replace a variable (letter) by a polynom.
111
+ * @param letter
112
+ * @param P
113
+ */
114
+ replaceBy: (letter: string, P: Polynom) => Polynom;
115
+ evaluate: (values: literalType | Fraction | number) => Fraction;
116
+ evaluateAsNumeric: (values: number | {
117
+ [Key: string]: number;
118
+ }) => number;
119
+ derivative: (letter?: string) => Polynom;
120
+ primitive: (letter?: string) => Polynom;
121
+ integrate: (a: Fraction | number, b: Fraction | number, letter?: string) => Fraction;
122
+ /**
123
+ * Factorize a polynom and store the best results in factors.
124
+ * @param maxValue Defines the greatest value to search to (default is 20).
125
+ */
126
+ factorize: (letter?: string) => Polynom[];
127
+ isDividableBy: (div: Polynom) => boolean;
128
+ getZeroes: () => ISolution[];
129
+ monomByDegree: (degree?: Fraction | number, letter?: string) => Monom;
130
+ monomsByDegree: (degree?: number | Fraction, letter?: string) => Monom[];
131
+ monomByLetter: (letter: string) => Monom;
132
+ getDenominators: () => number[];
133
+ getNumerators: () => number[];
134
+ lcmDenominator: () => number;
135
+ gcdDenominator: () => number;
136
+ lcmNumerator: () => number;
137
+ gcdNumerator: () => number;
138
+ commonMonom: () => Monom;
139
+ limitToInfinity: (letter?: string) => Fraction;
140
+ limitToNegativeInfinity: (letter?: string) => Fraction;
141
+ private _getAllPotentialFactors;
142
+ private _parseString;
143
+ private genDisplay;
144
+ /**
145
+ * Main parse using a shutting yard class
146
+ * @param inputStr
147
+ */
148
+ private shutingYardToReducedPolynom;
149
+ private multiplyByPolynom;
150
+ private multiplyByFraction;
151
+ private multiplyByInteger;
152
+ private multiplyByMonom;
153
+ private divideByInteger;
154
+ private divideByFraction;
155
+ private _factorize2ndDegree;
156
+ private _factorizeByGroups;
157
+ }