@lakuna/umath 1.3.9 → 1.4.2

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 (162) hide show
  1. package/README.md +1 -1
  2. package/dist/algorithms/approx.d.ts +9 -0
  3. package/dist/algorithms/approx.d.ts.map +1 -0
  4. package/dist/algorithms/approx.js +12 -0
  5. package/dist/algorithms/approx.js.map +1 -0
  6. package/dist/algorithms/approxRelative.d.ts +9 -0
  7. package/dist/algorithms/approxRelative.d.ts.map +1 -0
  8. package/dist/algorithms/approxRelative.js +12 -0
  9. package/dist/algorithms/approxRelative.js.map +1 -0
  10. package/dist/algorithms/combinations.d.ts +2 -1
  11. package/dist/algorithms/combinations.d.ts.map +1 -1
  12. package/dist/algorithms/combinations.js +2 -1
  13. package/dist/algorithms/combinations.js.map +1 -1
  14. package/dist/algorithms/degreesToRadians.d.ts +3 -2
  15. package/dist/algorithms/degreesToRadians.d.ts.map +1 -1
  16. package/dist/algorithms/degreesToRadians.js +5 -3
  17. package/dist/algorithms/degreesToRadians.js.map +1 -1
  18. package/dist/algorithms/factorial.d.ts +2 -1
  19. package/dist/algorithms/factorial.d.ts.map +1 -1
  20. package/dist/algorithms/factorial.js +2 -1
  21. package/dist/algorithms/factorial.js.map +1 -1
  22. package/dist/algorithms/fibonacci.d.ts +2 -1
  23. package/dist/algorithms/fibonacci.d.ts.map +1 -1
  24. package/dist/algorithms/fibonacci.js +6 -2
  25. package/dist/algorithms/fibonacci.js.map +1 -1
  26. package/dist/algorithms/greatestCommonDivisor.d.ts +4 -2
  27. package/dist/algorithms/greatestCommonDivisor.d.ts.map +1 -1
  28. package/dist/algorithms/greatestCommonDivisor.js +5 -2
  29. package/dist/algorithms/greatestCommonDivisor.js.map +1 -1
  30. package/dist/algorithms/hypergeometricPmf.d.ts +3 -2
  31. package/dist/algorithms/hypergeometricPmf.d.ts.map +1 -1
  32. package/dist/algorithms/hypergeometricPmf.js +3 -2
  33. package/dist/algorithms/hypergeometricPmf.js.map +1 -1
  34. package/dist/algorithms/isPrime.d.ts +2 -1
  35. package/dist/algorithms/isPrime.d.ts.map +1 -1
  36. package/dist/algorithms/isPrime.js +2 -1
  37. package/dist/algorithms/isPrime.js.map +1 -1
  38. package/dist/algorithms/permutations.d.ts +2 -1
  39. package/dist/algorithms/permutations.d.ts.map +1 -1
  40. package/dist/algorithms/permutations.js +2 -1
  41. package/dist/algorithms/permutations.js.map +1 -1
  42. package/dist/algorithms/primeFactorization.d.ts +2 -1
  43. package/dist/algorithms/primeFactorization.d.ts.map +1 -1
  44. package/dist/algorithms/primeFactorization.js +2 -1
  45. package/dist/algorithms/primeFactorization.js.map +1 -1
  46. package/dist/algorithms/radiansToDegrees.d.ts +3 -2
  47. package/dist/algorithms/radiansToDegrees.d.ts.map +1 -1
  48. package/dist/algorithms/radiansToDegrees.js +5 -3
  49. package/dist/algorithms/radiansToDegrees.js.map +1 -1
  50. package/dist/algorithms/summation.d.ts +2 -1
  51. package/dist/algorithms/summation.d.ts.map +1 -1
  52. package/dist/algorithms/summation.js +2 -1
  53. package/dist/algorithms/summation.js.map +1 -1
  54. package/dist/linalg/DualQuaternion.d.ts +102 -32
  55. package/dist/linalg/DualQuaternion.d.ts.map +1 -1
  56. package/dist/linalg/DualQuaternion.js +243 -272
  57. package/dist/linalg/DualQuaternion.js.map +1 -1
  58. package/dist/linalg/Matrix.d.ts +14 -10
  59. package/dist/linalg/Matrix.d.ts.map +1 -1
  60. package/dist/linalg/Matrix2.d.ts +74 -51
  61. package/dist/linalg/Matrix2.d.ts.map +1 -1
  62. package/dist/linalg/Matrix2.js +95 -171
  63. package/dist/linalg/Matrix2.js.map +1 -1
  64. package/dist/linalg/Matrix3.d.ts +122 -72
  65. package/dist/linalg/Matrix3.d.ts.map +1 -1
  66. package/dist/linalg/Matrix3.js +186 -355
  67. package/dist/linalg/Matrix3.js.map +1 -1
  68. package/dist/linalg/Matrix4.d.ts +266 -149
  69. package/dist/linalg/Matrix4.d.ts.map +1 -1
  70. package/dist/linalg/Matrix4.js +512 -852
  71. package/dist/linalg/Matrix4.js.map +1 -1
  72. package/dist/linalg/Quaternion.d.ts +252 -34
  73. package/dist/linalg/Quaternion.d.ts.map +1 -1
  74. package/dist/linalg/Quaternion.js +436 -166
  75. package/dist/linalg/Quaternion.js.map +1 -1
  76. package/dist/linalg/SlowMatrix.d.ts +10 -9
  77. package/dist/linalg/SlowMatrix.d.ts.map +1 -1
  78. package/dist/linalg/SlowMatrix.js +10 -9
  79. package/dist/linalg/SlowMatrix.js.map +1 -1
  80. package/dist/linalg/SlowSquareMatrix.d.ts +10 -9
  81. package/dist/linalg/SlowSquareMatrix.d.ts.map +1 -1
  82. package/dist/linalg/SlowSquareMatrix.js +10 -9
  83. package/dist/linalg/SlowSquareMatrix.js.map +1 -1
  84. package/dist/linalg/SquareMatrix.d.ts +6 -5
  85. package/dist/linalg/SquareMatrix.d.ts.map +1 -1
  86. package/dist/linalg/Vector.d.ts +8 -4
  87. package/dist/linalg/Vector.d.ts.map +1 -1
  88. package/dist/linalg/Vector2.d.ts +82 -31
  89. package/dist/linalg/Vector2.d.ts.map +1 -1
  90. package/dist/linalg/Vector2.js +112 -154
  91. package/dist/linalg/Vector2.js.map +1 -1
  92. package/dist/linalg/Vector3.d.ts +93 -41
  93. package/dist/linalg/Vector3.d.ts.map +1 -1
  94. package/dist/linalg/Vector3.js +171 -282
  95. package/dist/linalg/Vector3.js.map +1 -1
  96. package/dist/linalg/Vector4.d.ts +71 -21
  97. package/dist/linalg/Vector4.d.ts.map +1 -1
  98. package/dist/linalg/Vector4.js +121 -195
  99. package/dist/linalg/Vector4.js.map +1 -1
  100. package/dist/types/AxisAngle.d.ts +4 -1
  101. package/dist/types/AxisAngle.d.ts.map +1 -1
  102. package/dist/types/FieldOfView.d.ts +4 -1
  103. package/dist/types/FieldOfView.d.ts.map +1 -1
  104. package/dist/utility/BigNumber.d.ts +4 -1
  105. package/dist/utility/BigNumber.d.ts.map +1 -1
  106. package/dist/utility/BigNumber.js +4 -1
  107. package/dist/utility/BigNumber.js.map +1 -1
  108. package/dist/utility/MagnitudeError.d.ts +4 -1
  109. package/dist/utility/MagnitudeError.d.ts.map +1 -1
  110. package/dist/utility/MagnitudeError.js +4 -1
  111. package/dist/utility/MagnitudeError.js.map +1 -1
  112. package/dist/utility/MatrixSizeError.d.ts +4 -1
  113. package/dist/utility/MatrixSizeError.d.ts.map +1 -1
  114. package/dist/utility/MatrixSizeError.js +4 -1
  115. package/dist/utility/MatrixSizeError.js.map +1 -1
  116. package/dist/utility/PartialMatrixError.d.ts +4 -1
  117. package/dist/utility/PartialMatrixError.d.ts.map +1 -1
  118. package/dist/utility/PartialMatrixError.js +4 -1
  119. package/dist/utility/PartialMatrixError.js.map +1 -1
  120. package/dist/utility/SingularMatrixError.d.ts +2 -1
  121. package/dist/utility/SingularMatrixError.d.ts.map +1 -1
  122. package/dist/utility/SingularMatrixError.js +2 -1
  123. package/dist/utility/SingularMatrixError.js.map +1 -1
  124. package/dist/utility/epsilon.d.ts +4 -1
  125. package/dist/utility/epsilon.d.ts.map +1 -1
  126. package/dist/utility/epsilon.js +4 -1
  127. package/dist/utility/epsilon.js.map +1 -1
  128. package/package.json +11 -11
  129. package/src/algorithms/approx.ts +12 -0
  130. package/src/algorithms/approxRelative.ts +12 -0
  131. package/src/algorithms/combinations.ts +2 -1
  132. package/src/algorithms/degreesToRadians.ts +6 -3
  133. package/src/algorithms/factorial.ts +3 -1
  134. package/src/algorithms/fibonacci.ts +7 -2
  135. package/src/algorithms/greatestCommonDivisor.ts +9 -4
  136. package/src/algorithms/hypergeometricPmf.ts +3 -2
  137. package/src/algorithms/isPrime.ts +2 -1
  138. package/src/algorithms/permutations.ts +2 -1
  139. package/src/algorithms/primeFactorization.ts +2 -1
  140. package/src/algorithms/radiansToDegrees.ts +6 -3
  141. package/src/algorithms/summation.ts +2 -1
  142. package/src/linalg/DualQuaternion.ts +424 -289
  143. package/src/linalg/Matrix.ts +14 -10
  144. package/src/linalg/Matrix2.ts +141 -188
  145. package/src/linalg/Matrix3.ts +400 -375
  146. package/src/linalg/Matrix4.ts +1083 -905
  147. package/src/linalg/Quaternion.ts +706 -188
  148. package/src/linalg/SlowMatrix.ts +10 -9
  149. package/src/linalg/SlowSquareMatrix.ts +10 -9
  150. package/src/linalg/SquareMatrix.ts +6 -5
  151. package/src/linalg/Vector.ts +8 -4
  152. package/src/linalg/Vector2.ts +146 -173
  153. package/src/linalg/Vector3.ts +293 -326
  154. package/src/linalg/Vector4.ts +227 -215
  155. package/src/types/AxisAngle.ts +4 -1
  156. package/src/types/FieldOfView.ts +4 -1
  157. package/src/utility/BigNumber.ts +6 -3
  158. package/src/utility/MagnitudeError.ts +4 -1
  159. package/src/utility/MatrixSizeError.ts +4 -1
  160. package/src/utility/PartialMatrixError.ts +4 -1
  161. package/src/utility/SingularMatrixError.ts +2 -1
  162. package/src/utility/epsilon.ts +4 -1
@@ -3,7 +3,10 @@ import Vector3, { type Vector3Like } from "./Vector3.js";
3
3
  import type { Matrix2Like } from "./Matrix2.js";
4
4
  import type { Matrix3Like } from "./Matrix3.js";
5
5
  import type { Matrix4Like } from "./Matrix4.js";
6
- /** A quantity with magnitude and direction in two dimensions. */
6
+ /**
7
+ * A quantity with magnitude and direction in two dimensions.
8
+ * @public
9
+ */
7
10
  export interface Vector2Like extends VectorLike {
8
11
  /** The first component of this vector. */
9
12
  0: number;
@@ -13,6 +16,7 @@ export interface Vector2Like extends VectorLike {
13
16
  /**
14
17
  * Create a 2x1 vector-like object.
15
18
  * @returns A 2x1 vector-like object.
19
+ * @public
16
20
  */
17
21
  export declare const createVector2Like: () => Float32Array & Vector2Like;
18
22
  /**
@@ -21,6 +25,7 @@ export declare const createVector2Like: () => Float32Array & Vector2Like;
21
25
  * @param y - The second component.
22
26
  * @param out - The vector to store the result in.
23
27
  * @returns A new vector.
28
+ * @public
24
29
  */
25
30
  export declare const fromValues: <T extends Vector2Like>(x: number, y: number, out: T) => T;
26
31
  /**
@@ -28,6 +33,7 @@ export declare const fromValues: <T extends Vector2Like>(x: number, y: number, o
28
33
  * @param a - The first vector.
29
34
  * @param b - The second vector.
30
35
  * @returns Whether or not the vectors are equivalent.
36
+ * @public
31
37
  */
32
38
  export declare const equals: (a: Vector2Like, b: Vector2Like) => boolean;
33
39
  /**
@@ -35,6 +41,7 @@ export declare const equals: (a: Vector2Like, b: Vector2Like) => boolean;
35
41
  * @param a - The first vector.
36
42
  * @param b - The second vector.
37
43
  * @returns Whether or not the vectors are equivalent.
44
+ * @public
38
45
  */
39
46
  export declare const exactEquals: (a: Vector2Like, b: Vector2Like) => boolean;
40
47
  /**
@@ -43,6 +50,7 @@ export declare const exactEquals: (a: Vector2Like, b: Vector2Like) => boolean;
43
50
  * @param b - The addend.
44
51
  * @param out - The vector to store the result in.
45
52
  * @returns The sum.
53
+ * @public
46
54
  */
47
55
  export declare const add: <T extends Vector2Like>(a: Vector2Like, b: Vector2Like, out: T) => T;
48
56
  /**
@@ -50,6 +58,7 @@ export declare const add: <T extends Vector2Like>(a: Vector2Like, b: Vector2Like
50
58
  * @param vector - The vector to copy.
51
59
  * @param out - The vector to store the result in.
52
60
  * @returns The copy.
61
+ * @public
53
62
  */
54
63
  export declare const copy: <T extends Vector2Like>(vector: Vector2Like, out: T) => T;
55
64
  /**
@@ -58,6 +67,7 @@ export declare const copy: <T extends Vector2Like>(vector: Vector2Like, out: T)
58
67
  * @param b - The multiplier.
59
68
  * @param out - The vector to store the result in.
60
69
  * @returns The product.
70
+ * @public
61
71
  */
62
72
  export declare const multiply: <T extends Vector2Like>(a: Vector2Like, b: Vector2Like, out: T) => T;
63
73
  /**
@@ -66,6 +76,7 @@ export declare const multiply: <T extends Vector2Like>(a: Vector2Like, b: Vector
66
76
  * @param b - The divisor.
67
77
  * @param out - The vector to store the result in.
68
78
  * @returns The quotient.
79
+ * @public
69
80
  */
70
81
  export declare const divide: <T extends Vector2Like>(a: Vector2Like, b: Vector2Like, out: T) => T;
71
82
  /**
@@ -74,13 +85,23 @@ export declare const divide: <T extends Vector2Like>(a: Vector2Like, b: Vector2L
74
85
  * @param b - The subtrahend.
75
86
  * @param out - The vector to store the result in.
76
87
  * @returns The difference.
88
+ * @public
77
89
  */
78
90
  export declare const subtract: <T extends Vector2Like>(a: Vector2Like, b: Vector2Like, out: T) => T;
91
+ /**
92
+ * Absolutize the components of a vector.
93
+ * @param vector - The vector.
94
+ * @param out - The vector to store the result in.
95
+ * @returns The absolutized vector.
96
+ * @public
97
+ */
98
+ export declare const abs: <T extends Vector2Like>(vector: Vector2Like, out: T) => T;
79
99
  /**
80
100
  * Round up the components of a vector.
81
101
  * @param vector - The vector.
82
102
  * @param out - The vector to store the result in.
83
103
  * @returns The rounded vector.
104
+ * @public
84
105
  */
85
106
  export declare const ceil: <T extends Vector2Like>(vector: Vector2Like, out: T) => T;
86
107
  /**
@@ -88,6 +109,7 @@ export declare const ceil: <T extends Vector2Like>(vector: Vector2Like, out: T)
88
109
  * @param vector - The vector.
89
110
  * @param out - The vector to store the result in.
90
111
  * @returns The rounded vector.
112
+ * @public
91
113
  */
92
114
  export declare const floor: <T extends Vector2Like>(vector: Vector2Like, out: T) => T;
93
115
  /**
@@ -95,6 +117,7 @@ export declare const floor: <T extends Vector2Like>(vector: Vector2Like, out: T)
95
117
  * @param vector - The vector.
96
118
  * @param out - The vector to store the result in.
97
119
  * @returns The rounded vector.
120
+ * @public
98
121
  */
99
122
  export declare const round: <T extends Vector2Like>(vector: Vector2Like, out: T) => T;
100
123
  /**
@@ -103,6 +126,7 @@ export declare const round: <T extends Vector2Like>(vector: Vector2Like, out: T)
103
126
  * @param b - The second vector.
104
127
  * @param out - The vector to store the result in.
105
128
  * @returns The minimum.
129
+ * @public
106
130
  */
107
131
  export declare const min: <T extends Vector2Like>(a: Vector2Like, b: Vector2Like, out: T) => T;
108
132
  /**
@@ -111,6 +135,7 @@ export declare const min: <T extends Vector2Like>(a: Vector2Like, b: Vector2Like
111
135
  * @param b - The second vector.
112
136
  * @param out - The vector to store the result in.
113
137
  * @returns The maximum.
138
+ * @public
114
139
  */
115
140
  export declare const max: <T extends Vector2Like>(a: Vector2Like, b: Vector2Like, out: T) => T;
116
141
  /**
@@ -119,6 +144,7 @@ export declare const max: <T extends Vector2Like>(a: Vector2Like, b: Vector2Like
119
144
  * @param scalar - The multiplicand.
120
145
  * @param out - The vector to store the result in.
121
146
  * @returns The product.
147
+ * @public
122
148
  */
123
149
  export declare const scale: <T extends Vector2Like>(vector: Vector2Like, scalar: number, out: T) => T;
124
150
  /**
@@ -128,6 +154,7 @@ export declare const scale: <T extends Vector2Like>(vector: Vector2Like, scalar:
128
154
  * @param scalar - The multiplier.
129
155
  * @param out - The vector to store the result in.
130
156
  * @returns The sum.
157
+ * @public
131
158
  */
132
159
  export declare const scaleAndAdd: <T extends Vector2Like>(a: Vector2Like, b: Vector2Like, scalar: number, out: T) => T;
133
160
  /**
@@ -135,7 +162,8 @@ export declare const scaleAndAdd: <T extends Vector2Like>(a: Vector2Like, b: Vec
135
162
  * @param a - The first vector.
136
163
  * @param b - The second vector.
137
164
  * @returns The distance.
138
- * @see [Euclidean distance](https://en.wikipedia.org/wiki/Euclidean_distance)
165
+ * @see {@link https://en.wikipedia.org/wiki/Euclidean_distance | Euclidean distance}
166
+ * @public
139
167
  */
140
168
  export declare const distance: (a: Vector2Like, b: Vector2Like) => number;
141
169
  /**
@@ -143,19 +171,22 @@ export declare const distance: (a: Vector2Like, b: Vector2Like) => number;
143
171
  * @param a - The first vector.
144
172
  * @param b - The other vector.
145
173
  * @returns The squared distance.
146
- * @see [Euclidean distance](https://en.wikipedia.org/wiki/Euclidean_distance)
174
+ * @see {@link https://en.wikipedia.org/wiki/Euclidean_distance | Euclidean distance}
175
+ * @public
147
176
  */
148
177
  export declare const squaredDistance: (a: Vector2Like, b: Vector2Like) => number;
149
178
  /**
150
179
  * Get the magnitude (length) of a vector.
151
180
  * @param vector - The vector.
152
181
  * @returns The magnitude.
182
+ * @public
153
183
  */
154
184
  export declare const getMagnitude: (vector: Vector2Like) => number;
155
185
  /**
156
186
  * Get the squared magnitude (length) of a vector.
157
187
  * @param vector - The vector.
158
188
  * @returns The squared magnitude.
189
+ * @public
159
190
  */
160
191
  export declare const getSquaredMagnitude: (vector: Vector2Like) => number;
161
192
  /**
@@ -163,6 +194,7 @@ export declare const getSquaredMagnitude: (vector: Vector2Like) => number;
163
194
  * @param vector - The vector.
164
195
  * @param out - The vector to store the result in.
165
196
  * @returns The negated vector.
197
+ * @public
166
198
  */
167
199
  export declare const negate: <T extends Vector2Like>(vector: Vector2Like, out: T) => T;
168
200
  /**
@@ -170,6 +202,7 @@ export declare const negate: <T extends Vector2Like>(vector: Vector2Like, out: T
170
202
  * @param vector - The vector.
171
203
  * @param out - The vector to store the result in.
172
204
  * @returns The inverted vector.
205
+ * @public
173
206
  */
174
207
  export declare const invert: <T extends Vector2Like>(vector: Vector2Like, out: T) => T;
175
208
  /**
@@ -177,7 +210,8 @@ export declare const invert: <T extends Vector2Like>(vector: Vector2Like, out: T
177
210
  * @param vector - The vector.
178
211
  * @param out - The vector to store the result in.
179
212
  * @returns The normalized vector.
180
- * @see [Unit vector](https://en.wikipedia.org/wiki/Unit_vector)
213
+ * @see {@link https://en.wikipedia.org/wiki/Unit_vector | Unit vector}
214
+ * @public
181
215
  */
182
216
  export declare const normalize: <T extends Vector2Like>(vector: Vector2Like, out: T) => T;
183
217
  /**
@@ -185,7 +219,8 @@ export declare const normalize: <T extends Vector2Like>(vector: Vector2Like, out
185
219
  * @param a - The multiplicand.
186
220
  * @param b - The multiplier.
187
221
  * @returns The dot product.
188
- * @see [Dot product](https://en.wikipedia.org/wiki/Dot_product)
222
+ * @see {@link https://en.wikipedia.org/wiki/Dot_product | Dot product}
223
+ * @public
189
224
  */
190
225
  export declare const dot: (a: Vector2Like, b: Vector2Like) => number;
191
226
  /**
@@ -194,7 +229,8 @@ export declare const dot: (a: Vector2Like, b: Vector2Like) => number;
194
229
  * @param b - The multiplier.
195
230
  * @param out - The vector to store the result in.
196
231
  * @returns The cross product.
197
- * @see [Cross product](https://en.wikipedia.org/wiki/Cross_product)
232
+ * @see {@link https://en.wikipedia.org/wiki/Cross_product | Cross product}
233
+ * @public
198
234
  */
199
235
  export declare const cross: <T extends Vector3Like>(a: Vector2Like, b: Vector2Like, out: T) => T;
200
236
  /**
@@ -204,7 +240,8 @@ export declare const cross: <T extends Vector3Like>(a: Vector2Like, b: Vector2Li
204
240
  * @param t - The interpolation amount (in `[0,1]`).
205
241
  * @param out - The vector to store the result in.
206
242
  * @returns The interpolated vector.
207
- * @see [Linear interpolation](https://en.wikipedia.org/wiki/Linear_interpolation)
243
+ * @see {@link https://en.wikipedia.org/wiki/Linear_interpolation | Linear interpolation}
244
+ * @public
208
245
  */
209
246
  export declare const lerp: <T extends Vector2Like>(a: Vector2Like, b: Vector2Like, t: number, out: T) => T;
210
247
  /**
@@ -212,33 +249,37 @@ export declare const lerp: <T extends Vector2Like>(a: Vector2Like, b: Vector2Lik
212
249
  * @param magnitude - The magnitude.
213
250
  * @param out - The vector to store the result in.
214
251
  * @returns The vector.
252
+ * @public
215
253
  */
216
254
  export declare const random: <T extends Vector2Like>(magnitude: number, out: T) => T;
217
255
  /**
218
- * Transform a vector by a two-by-two matrix.
219
- * @param vector - The vector (multiplier).
220
- * @param matrix - The matrix (multiplicand).
256
+ * Transform a vector by a two-by-two matrix. Note that the arguments are "backwards."
257
+ * @param vector - The vector (multiplicand).
258
+ * @param matrix - The matrix (multiplier).
221
259
  * @param out - The vector to store the result in.
222
260
  * @returns The transformed vector.
223
- * @see [Transformation matrix](https://en.wikipedia.org/wiki/Transformation_matrix)
261
+ * @see {@link https://en.wikipedia.org/wiki/Transformation_matrix | Transformation matrix}
262
+ * @public
224
263
  */
225
264
  export declare const transformMatrix2: <T extends Vector2Like>(vector: Vector2Like, matrix: Matrix2Like, out: T) => T;
226
265
  /**
227
- * Transform a vector by a three-by-three matrix.
228
- * @param vector - The vector (multiplier).
229
- * @param matrix - The matrix (multiplicand).
266
+ * Transform a vector by a three-by-three matrix. Note that the arguments are "backwards."
267
+ * @param vector - The vector (multiplicand).
268
+ * @param matrix - The matrix (multiplier).
230
269
  * @param out - The vector to store the result in.
231
270
  * @returns The transformed vector.
232
- * @see [Transformation matrix](https://en.wikipedia.org/wiki/Transformation_matrix)
271
+ * @see {@link https://en.wikipedia.org/wiki/Transformation_matrix | Transformation matrix}
272
+ * @public
233
273
  */
234
274
  export declare const transformMatrix3: <T extends Vector2Like>(vector: Vector2Like, matrix: Matrix3Like, out: T) => T;
235
275
  /**
236
- * Transform a vector by a four-by-four matrix.
237
- * @param vector - The vector (multiplier).
238
- * @param matrix - The matrix (multiplicand).
276
+ * Transform a vector by a four-by-four matrix. Note that the arguments are "backwards."
277
+ * @param vector - The vector (multiplicand).
278
+ * @param matrix - The matrix (multiplier).
239
279
  * @param out - The vector to store the result in.
240
280
  * @returns The transformed vector.
241
- * @see [Transformation matrix](https://en.wikipedia.org/wiki/Transformation_matrix)
281
+ * @see {@link https://en.wikipedia.org/wiki/Transformation_matrix | Transformation matrix}
282
+ * @public
242
283
  */
243
284
  export declare const transformMatrix4: <T extends Vector2Like>(vector: Vector2Like, matrix: Matrix4Like, out: T) => T;
244
285
  /**
@@ -248,6 +289,7 @@ export declare const transformMatrix4: <T extends Vector2Like>(vector: Vector2Li
248
289
  * @param r - The angle of rotation in radians.
249
290
  * @param out - The vector to store the result in.
250
291
  * @returns The rotated vector.
292
+ * @public
251
293
  */
252
294
  export declare const rotate: <T extends Vector2Like>(vector: Vector2Like, origin: Vector2Like, r: number, out: T) => T;
253
295
  /**
@@ -255,17 +297,20 @@ export declare const rotate: <T extends Vector2Like>(vector: Vector2Like, origin
255
297
  * @param a - The first vector.
256
298
  * @param b - The second vector.
257
299
  * @returns The angular distance.
300
+ * @public
258
301
  */
259
302
  export declare const angle: (a: Vector2Like, b: Vector2Like) => number;
260
303
  /**
261
304
  * Set a vector to the zero vector.
262
305
  * @param out - The vector to store the result in.
263
- * @returns This vector.
306
+ * @returns The vector.
307
+ * @public
264
308
  */
265
309
  export declare const zero: <T extends Vector2Like>(out: T) => T;
266
310
  /**
267
311
  * A quantity with magnitude and direction in two dimensions.
268
- * @see [Euclidean vector](https://en.wikipedia.org/wiki/Euclidean_vector)
312
+ * @see {@link https://en.wikipedia.org/wiki/Euclidean_vector | Euclidean vector}
313
+ * @public
269
314
  */
270
315
  export default class Vector2 extends Float32Array implements Vector, Vector2Like {
271
316
  /**
@@ -278,7 +323,7 @@ export default class Vector2 extends Float32Array implements Vector, Vector2Like
278
323
  static fromValues<T extends Vector2Like = Vector2>(x: number, y: number, out?: T): T;
279
324
  /**
280
325
  * Create a two-dimensional zero vector.
281
- * @see [Euclidean vector](https://en.wikipedia.org/wiki/Euclidean_vector)
326
+ * @see {@link https://en.wikipedia.org/wiki/Euclidean_vector | Euclidean vector}
282
327
  */
283
328
  constructor();
284
329
  /** The first component of this vector. */
@@ -337,6 +382,12 @@ export default class Vector2 extends Float32Array implements Vector, Vector2Like
337
382
  * @returns The difference between the vectors.
338
383
  */
339
384
  subtract<T extends Vector2Like = Vector2>(vector: Vector2Like, out?: T): T;
385
+ /**
386
+ * Absolutize the components of this vector.
387
+ * @param out - The vector to store the result in.
388
+ * @returns The absolutized vector.
389
+ */
390
+ abs<T extends Vector2Like = Vector2>(out?: T): T;
340
391
  /**
341
392
  * Round up the components of this vector.
342
393
  * @param out - The vector to store the result in.
@@ -388,14 +439,14 @@ export default class Vector2 extends Float32Array implements Vector, Vector2Like
388
439
  * Calculate the Euclidean distance from this vector to another.
389
440
  * @param vector - The other vector.
390
441
  * @returns The distance.
391
- * @see [Euclidean distance](https://en.wikipedia.org/wiki/Euclidean_distance)
442
+ * @see {@link https://en.wikipedia.org/wiki/Euclidean_distance | Euclidean distance}
392
443
  */
393
444
  distance(vector: Vector2Like): number;
394
445
  /**
395
446
  * Calculate the squared Euclidean distance from this vector to another.
396
447
  * @param vector - The other vector.
397
448
  * @returns The squared distance.
398
- * @see [Euclidean distance](https://en.wikipedia.org/wiki/Euclidean_distance)
449
+ * @see {@link https://en.wikipedia.org/wiki/Euclidean_distance | Euclidean distance}
399
450
  */
400
451
  squaredDistance(vector: Vector2Like): number;
401
452
  /** Get the magnitude (length) of this vector. */
@@ -418,14 +469,14 @@ export default class Vector2 extends Float32Array implements Vector, Vector2Like
418
469
  * Normalize this vector.
419
470
  * @param out - The vector to store the result in.
420
471
  * @returns The normalized vector.
421
- * @see [Unit vector](https://en.wikipedia.org/wiki/Unit_vector)
472
+ * @see {@link https://en.wikipedia.org/wiki/Unit_vector | Unit vector}
422
473
  */
423
474
  normalize<T extends Vector2Like = Vector2>(out?: T): T;
424
475
  /**
425
476
  * Calculate the dot product of this and another vector.
426
477
  * @param vector - The other vector.
427
478
  * @returns The dot product.
428
- * @see [Dot product](https://en.wikipedia.org/wiki/Dot_product)
479
+ * @see {@link https://en.wikipedia.org/wiki/Dot_product | Dot product}
429
480
  */
430
481
  dot(vector: Vector2Like): number;
431
482
  /**
@@ -433,7 +484,7 @@ export default class Vector2 extends Float32Array implements Vector, Vector2Like
433
484
  * @param vector - The other vector.
434
485
  * @param out - The vector to store the result in.
435
486
  * @returns The cross product.
436
- * @see [Cross product](https://en.wikipedia.org/wiki/Cross_product)
487
+ * @see {@link https://en.wikipedia.org/wiki/Cross_product | Cross product}
437
488
  */
438
489
  cross<T extends Vector3Like = Vector3>(vector: Vector2Like, out?: T): T;
439
490
  /**
@@ -442,7 +493,7 @@ export default class Vector2 extends Float32Array implements Vector, Vector2Like
442
493
  * @param t - The interpolation amount (in `[0,1]`).
443
494
  * @param out - The vector to store the result in.
444
495
  * @returns The interpolated vector.
445
- * @see [Linear interpolation](https://en.wikipedia.org/wiki/Linear_interpolation)
496
+ * @see {@link https://en.wikipedia.org/wiki/Linear_interpolation | Linear interpolation}
446
497
  */
447
498
  lerp<T extends Vector2Like = Vector2>(vector: Vector2Like, t: number, out?: T): T;
448
499
  /**
@@ -456,7 +507,7 @@ export default class Vector2 extends Float32Array implements Vector, Vector2Like
456
507
  * @param matrix - The matrix.
457
508
  * @param out - The vector to store the result in.
458
509
  * @returns The transformed vector.
459
- * @see [Transformation matrix](https://en.wikipedia.org/wiki/Transformation_matrix)
510
+ * @see {@link https://en.wikipedia.org/wiki/Transformation_matrix | Transformation matrix}
460
511
  */
461
512
  transformMatrix2<T extends Vector2Like = Vector2>(matrix: Matrix2Like, out?: T): T;
462
513
  /**
@@ -464,7 +515,7 @@ export default class Vector2 extends Float32Array implements Vector, Vector2Like
464
515
  * @param matrix - The matrix.
465
516
  * @param out - The vector to store the result in.
466
517
  * @returns The transformed vector.
467
- * @see [Transformation matrix](https://en.wikipedia.org/wiki/Transformation_matrix)
518
+ * @see {@link https://en.wikipedia.org/wiki/Transformation_matrix | Transformation matrix}
468
519
  */
469
520
  transformMatrix3<T extends Vector2Like = Vector2>(matrix: Matrix3Like, out?: T): T;
470
521
  /**
@@ -472,7 +523,7 @@ export default class Vector2 extends Float32Array implements Vector, Vector2Like
472
523
  * @param matrix - The matrix.
473
524
  * @param out - The vector to store the result in.
474
525
  * @returns The transformed vector.
475
- * @see [Transformation matrix](https://en.wikipedia.org/wiki/Transformation_matrix)
526
+ * @see {@link https://en.wikipedia.org/wiki/Transformation_matrix | Transformation matrix}
476
527
  */
477
528
  transformMatrix4<T extends Vector2Like = Vector2>(matrix: Matrix4Like, out?: T): T;
478
529
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"Vector2.d.ts","sourceRoot":"","sources":["../../src/linalg/Vector2.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Vector2.d.ts","sourceRoot":"","sources":["../../src/linalg/Vector2.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,IAAI,MAAM,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACjE,OAAO,OAAO,EAAE,EACf,KAAK,WAAW,EAEhB,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAGhD;;;GAGG;AACH,MAAM,WAAW,WAAY,SAAQ,UAAU;IAC9C,0CAA0C;IAC1C,CAAC,EAAE,MAAM,CAAC;IAEV,2CAA2C;IAC3C,CAAC,EAAE,MAAM,CAAC;CACV;AAED;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,QAAO,YAAY,GAAG,WAEnD,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,UAAU,GAAI,CAAC,SAAS,WAAW,EAC/C,GAAG,MAAM,EACT,GAAG,MAAM,EACT,KAAK,CAAC,KACJ,CAIF,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,MAAM,GAAI,GAAG,WAAW,EAAE,GAAG,WAAW,KAAG,OACC,CAAC;AAE1D;;;;;;GAMG;AACH,eAAO,MAAM,WAAW,GAAI,GAAG,WAAW,EAAE,GAAG,WAAW,KAAG,OAC9B,CAAC;AAEhC;;;;;;;GAOG;AACH,eAAO,MAAM,GAAG,GAAI,CAAC,SAAS,WAAW,EACxC,GAAG,WAAW,EACd,GAAG,WAAW,EACd,KAAK,CAAC,KACJ,CAA8C,CAAC;AAElD;;;;;;GAMG;AACH,eAAO,MAAM,IAAI,GAAI,CAAC,SAAS,WAAW,EAAE,QAAQ,WAAW,EAAE,KAAK,CAAC,KAAG,CACpC,CAAC;AAEvC;;;;;;;GAOG;AACH,eAAO,MAAM,QAAQ,GAAI,CAAC,SAAS,WAAW,EAC7C,GAAG,WAAW,EACd,GAAG,WAAW,EACd,KAAK,CAAC,KACJ,CAA8C,CAAC;AAElD;;;;;;;GAOG;AACH,eAAO,MAAM,MAAM,GAAI,CAAC,SAAS,WAAW,EAC3C,GAAG,WAAW,EACd,GAAG,WAAW,EACd,KAAK,CAAC,KACJ,CAA8C,CAAC;AAElD;;;;;;;GAOG;AACH,eAAO,MAAM,QAAQ,GAAI,CAAC,SAAS,WAAW,EAC7C,GAAG,WAAW,EACd,GAAG,WAAW,EACd,KAAK,CAAC,KACJ,CAA8C,CAAC;AAElD;;;;;;GAMG;AACH,eAAO,MAAM,GAAG,GAAI,CAAC,SAAS,WAAW,EAAE,QAAQ,WAAW,EAAE,KAAK,CAAC,KAAG,CACf,CAAC;AAE3D;;;;;;GAMG;AACH,eAAO,MAAM,IAAI,GAAI,CAAC,SAAS,WAAW,EAAE,QAAQ,WAAW,EAAE,KAAK,CAAC,KAAG,CACd,CAAC;AAE7D;;;;;;GAMG;AACH,eAAO,MAAM,KAAK,GAAI,CAAC,SAAS,WAAW,EAAE,QAAQ,WAAW,EAAE,KAAK,CAAC,KAAG,CACb,CAAC;AAE/D;;;;;;GAMG;AACH,eAAO,MAAM,KAAK,GAAI,CAAC,SAAS,WAAW,EAAE,QAAQ,WAAW,EAAE,KAAK,CAAC,KAAG,CACb,CAAC;AAE/D;;;;;;;GAOG;AACH,eAAO,MAAM,GAAG,GAAI,CAAC,SAAS,WAAW,EACxC,GAAG,WAAW,EACd,GAAG,WAAW,EACd,KAAK,CAAC,KACJ,CAAgE,CAAC;AAEpE;;;;;;;GAOG;AACH,eAAO,MAAM,GAAG,GAAI,CAAC,SAAS,WAAW,EACxC,GAAG,WAAW,EACd,GAAG,WAAW,EACd,KAAK,CAAC,KACJ,CAAgE,CAAC;AAEpE;;;;;;;GAOG;AACH,eAAO,MAAM,KAAK,GAAI,CAAC,SAAS,WAAW,EAC1C,QAAQ,WAAW,EACnB,QAAQ,MAAM,EACd,KAAK,CAAC,KACJ,CAA4D,CAAC;AAEhE;;;;;;;;GAQG;AACH,eAAO,MAAM,WAAW,GAAI,CAAC,SAAS,WAAW,EAChD,GAAG,WAAW,EACd,GAAG,WAAW,EACd,QAAQ,MAAM,EACd,KAAK,CAAC,KACJ,CAAgE,CAAC;AAEpE;;;;;;;GAOG;AACH,eAAO,MAAM,QAAQ,GAAI,GAAG,WAAW,EAAE,GAAG,WAAW,KAAG,MAIzD,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe,GAAI,GAAG,WAAW,EAAE,GAAG,WAAW,KAAG,MAIhE,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,YAAY,GAAI,QAAQ,WAAW,KAAG,MAIlD,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,GAAI,QAAQ,WAAW,KAAG,MAIzD,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,MAAM,GAAI,CAAC,SAAS,WAAW,EAAE,QAAQ,WAAW,EAAE,KAAK,CAAC,KAAG,CACpC,CAAC;AAEzC;;;;;;GAMG;AACH,eAAO,MAAM,MAAM,GAAI,CAAC,SAAS,WAAW,EAAE,QAAQ,WAAW,EAAE,KAAK,CAAC,KAAG,CAC9B,CAAC;AAE/C;;;;;;;GAOG;AACH,eAAO,MAAM,SAAS,GAAI,CAAC,SAAS,WAAW,EAC9C,QAAQ,WAAW,EACnB,KAAK,CAAC,KACJ,CAUF,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,GAAG,GAAI,GAAG,WAAW,EAAE,GAAG,WAAW,KAAG,MAC3B,CAAC;AAE3B;;;;;;;;GAQG;AACH,eAAO,MAAM,KAAK,GAAI,CAAC,SAAS,WAAW,EAC1C,GAAG,WAAW,EACd,GAAG,WAAW,EACd,KAAK,CAAC,KACJ,CAA4D,CAAC;AAEhE;;;;;;;;;GASG;AACH,eAAO,MAAM,IAAI,GAAI,CAAC,SAAS,WAAW,EACzC,GAAG,WAAW,EACd,GAAG,WAAW,EACd,GAAG,MAAM,EACT,KAAK,CAAC,KACJ,CAKF,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,MAAM,GAAI,CAAC,SAAS,WAAW,EAAE,WAAW,MAAM,EAAE,KAAK,CAAC,KAAG,CAIzE,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,gBAAgB,GAAI,CAAC,SAAS,WAAW,EACrD,QAAQ,WAAW,EACnB,QAAQ,WAAW,EACnB,KAAK,CAAC,KACJ,CASF,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,gBAAgB,GAAI,CAAC,SAAS,WAAW,EACrD,QAAQ,WAAW,EACnB,QAAQ,WAAW,EACnB,KAAK,CAAC,KACJ,CASF,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,gBAAgB,GAAI,CAAC,SAAS,WAAW,EACrD,QAAQ,WAAW,EACnB,QAAQ,WAAW,EACnB,KAAK,CAAC,KACJ,CASF,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,MAAM,GAAI,CAAC,SAAS,WAAW,EAC3C,QAAQ,WAAW,EACnB,QAAQ,WAAW,EACnB,GAAG,MAAM,EACT,KAAK,CAAC,KACJ,CAWF,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,KAAK,GAAI,GAAG,WAAW,EAAE,GAAG,WAAW,KAAG,MAStD,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,IAAI,GAAI,CAAC,SAAS,WAAW,EAAE,KAAK,CAAC,KAAG,CAA0B,CAAC;AAEhF;;;;GAIG;AACH,MAAM,CAAC,OAAO,OAAO,OACpB,SAAQ,YACR,YAAW,MAAM,EAAE,WAAW;IAE9B;;;;;;OAMG;WACW,UAAU,CAAC,CAAC,SAAS,WAAW,GAAG,OAAO,EACvD,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,GAAG,GAAE,CAAgC,GACnC,CAAC;IAIJ;;;OAGG;;IAKH,0CAA0C;IACnC,CAAC,EAAE,MAAM,CAAC;IAEjB,2CAA2C;IACpC,CAAC,EAAE,MAAM,CAAC;IAEjB;;;;OAIG;IACI,MAAM,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO;IAI3C;;;;OAIG;IACI,WAAW,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO;IAIhD;;;;;OAKG;IACI,GAAG,CAAC,CAAC,SAAS,WAAW,GAAG,OAAO,EACzC,MAAM,EAAE,WAAW,EACnB,GAAG,GAAE,CAAgC,GACnC,CAAC;IAIJ;;;;OAIG;IACI,KAAK,CAAC,CAAC,SAAS,WAAW,GAAG,OAAO,EAC3C,GAAG,GAAE,CAAgC,GACnC,CAAC;IAIJ;;;;OAIG;IACI,IAAI,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAItC;;;;;OAKG;IACI,QAAQ,CAAC,CAAC,SAAS,WAAW,GAAG,OAAO,EAC9C,MAAM,EAAE,WAAW,EACnB,GAAG,GAAE,CAAgC,GACnC,CAAC;IAIJ;;;;;OAKG;IACI,MAAM,CAAC,CAAC,SAAS,WAAW,GAAG,OAAO,EAC5C,MAAM,EAAE,WAAW,EACnB,GAAG,GAAE,CAAgC,GACnC,CAAC;IAIJ;;;;;OAKG;IACI,QAAQ,CAAC,CAAC,SAAS,WAAW,GAAG,OAAO,EAC9C,MAAM,EAAE,WAAW,EACnB,GAAG,GAAE,CAAgC,GACnC,CAAC;IAIJ;;;;OAIG;IACI,GAAG,CAAC,CAAC,SAAS,WAAW,GAAG,OAAO,EACzC,GAAG,GAAE,CAAgC,GACnC,CAAC;IAIJ;;;;OAIG;IACI,IAAI,CAAC,CAAC,SAAS,WAAW,GAAG,OAAO,EAC1C,GAAG,GAAE,CAAgC,GACnC,CAAC;IAIJ;;;;OAIG;IACI,KAAK,CAAC,CAAC,SAAS,WAAW,GAAG,OAAO,EAC3C,GAAG,GAAE,CAAgC,GACnC,CAAC;IAIJ;;;;OAIG;IACI,KAAK,CAAC,CAAC,SAAS,WAAW,GAAG,OAAO,EAC3C,GAAG,GAAE,CAAgC,GACnC,CAAC;IAIJ;;;;;OAKG;IACI,GAAG,CAAC,CAAC,SAAS,WAAW,GAAG,OAAO,EACzC,MAAM,EAAE,WAAW,EACnB,GAAG,GAAE,CAAgC,GACnC,CAAC;IAIJ;;;;;OAKG;IACI,GAAG,CAAC,CAAC,SAAS,WAAW,GAAG,OAAO,EACzC,MAAM,EAAE,WAAW,EACnB,GAAG,GAAE,CAAgC,GACnC,CAAC;IAIJ;;;;;OAKG;IACI,KAAK,CAAC,CAAC,SAAS,WAAW,GAAG,OAAO,EAC3C,MAAM,EAAE,MAAM,EACd,GAAG,GAAE,CAAgC,GACnC,CAAC;IAIJ;;;;;;OAMG;IACI,WAAW,CAAC,CAAC,SAAS,WAAW,GAAG,OAAO,EACjD,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,MAAM,EACd,GAAG,GAAE,CAAgC,GACnC,CAAC;IAIJ;;;;;OAKG;IACI,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM;IAI5C;;;;;OAKG;IACI,eAAe,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM;IAInD,iDAAiD;IACjD,IAAW,SAAS,IAAI,MAAM,CAE7B;IAED,yDAAyD;IACzD,IAAW,gBAAgB,IAAI,MAAM,CAEpC;IAED;;;;OAIG;IACI,MAAM,CAAC,CAAC,SAAS,WAAW,GAAG,OAAO,EAC5C,GAAG,GAAE,CAAgC,GACnC,CAAC;IAIJ;;;;OAIG;IACI,MAAM,CAAC,CAAC,SAAS,WAAW,GAAG,OAAO,EAC5C,GAAG,GAAE,CAAgC,GACnC,CAAC;IAIJ;;;;;OAKG;IACI,SAAS,CAAC,CAAC,SAAS,WAAW,GAAG,OAAO,EAC/C,GAAG,GAAE,CAAgC,GACnC,CAAC;IAIJ;;;;;OAKG;IACI,GAAG,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM;IAIvC;;;;;;OAMG;IACI,KAAK,CAAC,CAAC,SAAS,WAAW,GAAG,OAAO,EAC3C,MAAM,EAAE,WAAW,EACnB,GAAG,GAAE,CAAgC,GACnC,CAAC;IAIJ;;;;;;;OAOG;IACI,IAAI,CAAC,CAAC,SAAS,WAAW,GAAG,OAAO,EAC1C,MAAM,EAAE,WAAW,EACnB,CAAC,EAAE,MAAM,EACT,GAAG,GAAE,CAAgC,GACnC,CAAC;IAIJ;;;;OAIG;IACI,MAAM,CAAC,SAAS,SAAI,GAAG,IAAI;IAIlC;;;;;;OAMG;IACI,gBAAgB,CAAC,CAAC,SAAS,WAAW,GAAG,OAAO,EACtD,MAAM,EAAE,WAAW,EACnB,GAAG,GAAE,CAAgC,GACnC,CAAC;IAIJ;;;;;;OAMG;IACI,gBAAgB,CAAC,CAAC,SAAS,WAAW,GAAG,OAAO,EACtD,MAAM,EAAE,WAAW,EACnB,GAAG,GAAE,CAAgC,GACnC,CAAC;IAIJ;;;;;;OAMG;IACI,gBAAgB,CAAC,CAAC,SAAS,WAAW,GAAG,OAAO,EACtD,MAAM,EAAE,WAAW,EACnB,GAAG,GAAE,CAAgC,GACnC,CAAC;IAIJ;;;;;;OAMG;IACI,MAAM,CAAC,CAAC,SAAS,WAAW,GAAG,OAAO,EAC5C,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,MAAM,EACf,GAAG,GAAE,CAAgC,GACnC,CAAC;IAIJ;;;;OAIG;IACI,KAAK,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM;IAIzC;;;OAGG;IACI,IAAI,IAAI,IAAI;CAGnB"}