@lakuna/umath 1.5.0 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +1 -1
- package/dist/algorithms/greatestCommonDivisor.d.ts.map +1 -1
- package/dist/algorithms/greatestCommonDivisor.js +14 -4
- package/dist/algorithms/greatestCommonDivisor.js.map +1 -1
- package/dist/index.d.ts +15 -11
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -0
- package/dist/index.js.map +1 -1
- package/dist/linalg/DualQuaternion.d.ts +131 -154
- package/dist/linalg/DualQuaternion.d.ts.map +1 -1
- package/dist/linalg/DualQuaternion.js +188 -203
- package/dist/linalg/DualQuaternion.js.map +1 -1
- package/dist/linalg/Matrix.d.ts +24 -24
- package/dist/linalg/Matrix.d.ts.map +1 -1
- package/dist/linalg/Matrix2.d.ts +74 -88
- package/dist/linalg/Matrix2.d.ts.map +1 -1
- package/dist/linalg/Matrix2.js +114 -124
- package/dist/linalg/Matrix2.js.map +1 -1
- package/dist/linalg/Matrix3.d.ts +118 -139
- package/dist/linalg/Matrix3.d.ts.map +1 -1
- package/dist/linalg/Matrix3.js +169 -201
- package/dist/linalg/Matrix3.js.map +1 -1
- package/dist/linalg/Matrix4.d.ts +217 -257
- package/dist/linalg/Matrix4.d.ts.map +1 -1
- package/dist/linalg/Matrix4.js +310 -374
- package/dist/linalg/Matrix4.js.map +1 -1
- package/dist/linalg/Quaternion.d.ts +120 -151
- package/dist/linalg/Quaternion.d.ts.map +1 -1
- package/dist/linalg/Quaternion.js +187 -204
- package/dist/linalg/Quaternion.js.map +1 -1
- package/dist/linalg/SlowMatrix.d.ts +5 -5
- package/dist/linalg/SlowMatrix.d.ts.map +1 -1
- package/dist/linalg/SlowMatrix.js +63 -89
- package/dist/linalg/SlowMatrix.js.map +1 -1
- package/dist/linalg/SlowSquareMatrix.d.ts +6 -6
- package/dist/linalg/SlowSquareMatrix.d.ts.map +1 -1
- package/dist/linalg/SlowSquareMatrix.js +15 -15
- package/dist/linalg/SlowSquareMatrix.js.map +1 -1
- package/dist/linalg/SlowVector.d.ts +165 -0
- package/dist/linalg/SlowVector.d.ts.map +1 -0
- package/dist/linalg/SlowVector.js +369 -0
- package/dist/linalg/SlowVector.js.map +1 -0
- package/dist/linalg/SquareMatrix.d.ts +8 -8
- package/dist/linalg/SquareMatrix.d.ts.map +1 -1
- package/dist/linalg/Vector.d.ts +84 -84
- package/dist/linalg/Vector.d.ts.map +1 -1
- package/dist/linalg/Vector2.d.ts +115 -137
- package/dist/linalg/Vector2.d.ts.map +1 -1
- package/dist/linalg/Vector2.js +164 -188
- package/dist/linalg/Vector2.js.map +1 -1
- package/dist/linalg/Vector3.d.ts +141 -167
- package/dist/linalg/Vector3.d.ts.map +1 -1
- package/dist/linalg/Vector3.js +200 -237
- package/dist/linalg/Vector3.js.map +1 -1
- package/dist/linalg/Vector4.d.ts +111 -131
- package/dist/linalg/Vector4.d.ts.map +1 -1
- package/dist/linalg/Vector4.js +163 -187
- package/dist/linalg/Vector4.js.map +1 -1
- package/dist/types/AxisAngle.d.ts +2 -2
- package/dist/types/AxisAngle.d.ts.map +1 -1
- package/dist/types/FieldOfView.d.ts +2 -2
- package/dist/types/FieldOfView.d.ts.map +1 -1
- package/dist/utility/BigNumber.d.ts +21 -11
- package/dist/utility/BigNumber.d.ts.map +1 -1
- package/dist/utility/BigNumber.js +42 -31
- package/dist/utility/BigNumber.js.map +1 -1
- package/dist/utility/MatrixSizeError.d.ts +1 -1
- package/dist/utility/MatrixSizeError.d.ts.map +1 -1
- package/dist/utility/MatrixSizeError.js +1 -1
- package/dist/utility/MatrixSizeError.js.map +1 -1
- package/dist/utility/VectorSizeError.d.ts +12 -0
- package/dist/utility/VectorSizeError.d.ts.map +1 -0
- package/dist/utility/VectorSizeError.js +15 -0
- package/dist/utility/VectorSizeError.js.map +1 -0
- package/dist/utility/createAxisAngleLike.d.ts +10 -0
- package/dist/utility/createAxisAngleLike.d.ts.map +1 -0
- package/dist/utility/createAxisAngleLike.js +10 -0
- package/dist/utility/createAxisAngleLike.js.map +1 -0
- package/package.json +11 -11
- package/src/algorithms/greatestCommonDivisor.ts +19 -7
- package/src/index.ts +24 -13
- package/src/linalg/DualQuaternion.ts +224 -292
- package/src/linalg/Matrix.ts +28 -28
- package/src/linalg/Matrix2.ts +138 -180
- package/src/linalg/Matrix3.ts +211 -286
- package/src/linalg/Matrix4.ts +466 -584
- package/src/linalg/Quaternion.ts +221 -294
- package/src/linalg/SlowMatrix.ts +97 -95
- package/src/linalg/SlowSquareMatrix.ts +19 -18
- package/src/linalg/SlowVector.ts +450 -0
- package/src/linalg/SquareMatrix.ts +9 -9
- package/src/linalg/Vector.ts +90 -90
- package/src/linalg/Vector2.ts +181 -266
- package/src/linalg/Vector3.ts +230 -342
- package/src/linalg/Vector4.ts +183 -257
- package/src/types/AxisAngle.ts +3 -3
- package/src/types/FieldOfView.ts +3 -3
- package/src/utility/BigNumber.ts +63 -41
- package/src/utility/MatrixSizeError.ts +1 -1
- package/src/utility/VectorSizeError.ts +14 -0
- package/src/utility/createAxisAngleLike.ts +14 -0
package/LICENSE
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"greatestCommonDivisor.d.ts","sourceRoot":"","sources":["../../src/algorithms/greatestCommonDivisor.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,CAAC,OAAO,UAAU,qBAAqB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"greatestCommonDivisor.d.ts","sourceRoot":"","sources":["../../src/algorithms/greatestCommonDivisor.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,CAAC,OAAO,UAAU,qBAAqB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;AAC5E;;;;;;;GAOG;AACH,MAAM,CAAC,OAAO,UAAU,qBAAqB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC"}
|
|
@@ -1,13 +1,23 @@
|
|
|
1
1
|
export default function greatestCommonDivisor(a, b) {
|
|
2
|
+
if (typeof a === "number" && typeof b === "number") {
|
|
3
|
+
// Ensure that both of the integers are positive.
|
|
4
|
+
let c = Math.abs(a);
|
|
5
|
+
let d = Math.abs(b);
|
|
6
|
+
// Apply the Euclidean algorithm.
|
|
7
|
+
while (d) {
|
|
8
|
+
[c, d] = [d, c % d];
|
|
9
|
+
}
|
|
10
|
+
return c;
|
|
11
|
+
}
|
|
12
|
+
if (typeof a === "number" || typeof b === "number") {
|
|
13
|
+
throw new Error("Mismatched argument types.");
|
|
14
|
+
}
|
|
2
15
|
// Ensure that both of the integers are positive. Can't use `Math.abs` in case `a` and `b` are `bigint`s.
|
|
3
16
|
let c = a < 0 ? -a : a;
|
|
4
17
|
let d = b < 0 ? -b : b;
|
|
5
18
|
// Apply the Euclidean algorithm.
|
|
6
19
|
while (d) {
|
|
7
|
-
|
|
8
|
-
const temp = c;
|
|
9
|
-
c = d;
|
|
10
|
-
d = temp % d;
|
|
20
|
+
[c, d] = [d, c % d];
|
|
11
21
|
}
|
|
12
22
|
return c;
|
|
13
23
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"greatestCommonDivisor.js","sourceRoot":"","sources":["../../src/algorithms/greatestCommonDivisor.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"greatestCommonDivisor.js","sourceRoot":"","sources":["../../src/algorithms/greatestCommonDivisor.ts"],"names":[],"mappings":"AAkBA,MAAM,CAAC,OAAO,UAAU,qBAAqB,CAC5C,CAAkB,EAClB,CAAkB;IAElB,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;QACpD,iDAAiD;QACjD,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACpB,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAEpB,iCAAiC;QACjC,OAAO,CAAC,EAAE,CAAC;YACV,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QACrB,CAAC;QAED,OAAO,CAAC,CAAC;IACV,CAAC;IAED,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;QACpD,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;IAC/C,CAAC;IAED,yGAAyG;IACzG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACvB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAEvB,iCAAiC;IACjC,OAAO,CAAC,EAAE,CAAC;QACV,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACrB,CAAC;IAED,OAAO,CAAC,CAAC;AACV,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/** @module . */
|
|
1
2
|
export { default as approx } from "./algorithms/approx.js";
|
|
2
3
|
export { default as approxRelative } from "./algorithms/approxRelative.js";
|
|
3
4
|
export { default as combinations } from "./algorithms/combinations.js";
|
|
@@ -11,25 +12,28 @@ export { default as permutations } from "./algorithms/permutations.js";
|
|
|
11
12
|
export { default as primeFactorization } from "./algorithms/primeFactorization.js";
|
|
12
13
|
export { default as radiansToDegrees } from "./algorithms/radiansToDegrees.js";
|
|
13
14
|
export { default as summation } from "./algorithms/summation.js";
|
|
14
|
-
export {
|
|
15
|
-
export
|
|
16
|
-
export {
|
|
17
|
-
export {
|
|
18
|
-
export
|
|
19
|
-
export {
|
|
15
|
+
export { default as DualQuaternion, type DualQuaternionLike } from "./linalg/DualQuaternion.js";
|
|
16
|
+
export { default as Matrix2, type Matrix2Like } from "./linalg/Matrix2.js";
|
|
17
|
+
export { default as Matrix3, type Matrix3Like } from "./linalg/Matrix3.js";
|
|
18
|
+
export { default as Matrix4, type Matrix4Like } from "./linalg/Matrix4.js";
|
|
19
|
+
export type { default as Matrix, MatrixLike } from "./linalg/Matrix.js";
|
|
20
|
+
export { default as Quaternion, type QuaternionLike } from "./linalg/Quaternion.js";
|
|
20
21
|
export { default as SlowMatrix } from "./linalg/SlowMatrix.js";
|
|
21
22
|
export { default as SlowSquareMatrix } from "./linalg/SlowSquareMatrix.js";
|
|
23
|
+
export { default as SlowVector } from "./linalg/SlowVector.js";
|
|
22
24
|
export type { default as SquareMatrix } from "./linalg/SquareMatrix.js";
|
|
23
|
-
export
|
|
24
|
-
export {
|
|
25
|
-
export {
|
|
26
|
-
export
|
|
25
|
+
export { default as Vector2, type Vector2Like } from "./linalg/Vector2.js";
|
|
26
|
+
export { default as Vector3, type Vector3Like } from "./linalg/Vector3.js";
|
|
27
|
+
export { default as Vector4, type Vector4Like } from "./linalg/Vector4.js";
|
|
28
|
+
export type { default as Vector, VectorLike } from "./linalg/Vector.js";
|
|
27
29
|
export type { default as AxisAngle } from "./types/AxisAngle.js";
|
|
28
30
|
export type { default as FieldOfView } from "./types/FieldOfView.js";
|
|
29
|
-
export { default as BigNumber } from "./utility/BigNumber.js";
|
|
31
|
+
export { type BigIntLike, default as BigNumber, type BigNumberLike } from "./utility/BigNumber.js";
|
|
32
|
+
export { default as createAxisAngleLike } from "./utility/createAxisAngleLike.js";
|
|
30
33
|
export { default as epsilon } from "./utility/epsilon.js";
|
|
31
34
|
export { default as MagnitudeError } from "./utility/MagnitudeError.js";
|
|
32
35
|
export { default as MatrixSizeError } from "./utility/MatrixSizeError.js";
|
|
33
36
|
export { default as PartialMatrixError } from "./utility/PartialMatrixError.js";
|
|
34
37
|
export { default as SingularMatrixError } from "./utility/SingularMatrixError.js";
|
|
38
|
+
export { default as VectorSizeError } from "./utility/VectorSizeError.js";
|
|
35
39
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,gBAAgB;AAGhB,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AACzF,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACjF,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AACnF,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAGjE,OAAO,EACN,OAAO,IAAI,cAAc,EACzB,KAAK,kBAAkB,EACvB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAC3E,YAAY,EAAE,OAAO,IAAI,MAAM,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACxE,OAAO,EACN,OAAO,IAAI,UAAU,EACrB,KAAK,cAAc,EACnB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAC/D,YAAY,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxE,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAC3E,YAAY,EAAE,OAAO,IAAI,MAAM,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAGxE,YAAY,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjE,YAAY,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAGrE,OAAO,EACN,KAAK,UAAU,EACf,OAAO,IAAI,SAAS,EACpB,KAAK,aAAa,EAClB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAClF,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAClF,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,8BAA8B,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
// TypeDoc-specific tag that gives a name to this module.
|
|
2
|
+
// eslint-disable-next-line tsdoc/syntax
|
|
3
|
+
/** @module . */
|
|
1
4
|
// Algorithms
|
|
2
5
|
export { default as approx } from "./algorithms/approx.js";
|
|
3
6
|
export { default as approxRelative } from "./algorithms/approxRelative.js";
|
|
@@ -20,14 +23,17 @@ export { default as Matrix4 } from "./linalg/Matrix4.js";
|
|
|
20
23
|
export { default as Quaternion } from "./linalg/Quaternion.js";
|
|
21
24
|
export { default as SlowMatrix } from "./linalg/SlowMatrix.js";
|
|
22
25
|
export { default as SlowSquareMatrix } from "./linalg/SlowSquareMatrix.js";
|
|
26
|
+
export { default as SlowVector } from "./linalg/SlowVector.js";
|
|
23
27
|
export { default as Vector2 } from "./linalg/Vector2.js";
|
|
24
28
|
export { default as Vector3 } from "./linalg/Vector3.js";
|
|
25
29
|
export { default as Vector4 } from "./linalg/Vector4.js";
|
|
26
30
|
// Utility
|
|
27
31
|
export { default as BigNumber } from "./utility/BigNumber.js";
|
|
32
|
+
export { default as createAxisAngleLike } from "./utility/createAxisAngleLike.js";
|
|
28
33
|
export { default as epsilon } from "./utility/epsilon.js";
|
|
29
34
|
export { default as MagnitudeError } from "./utility/MagnitudeError.js";
|
|
30
35
|
export { default as MatrixSizeError } from "./utility/MatrixSizeError.js";
|
|
31
36
|
export { default as PartialMatrixError } from "./utility/PartialMatrixError.js";
|
|
32
37
|
export { default as SingularMatrixError } from "./utility/SingularMatrixError.js";
|
|
38
|
+
export { default as VectorSizeError } from "./utility/VectorSizeError.js";
|
|
33
39
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,aAAa;AACb,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AACzF,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACjF,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AACnF,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAEjE,iBAAiB;AACjB,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,yDAAyD;AACzD,wCAAwC;AACxC,gBAAgB;AAEhB,aAAa;AACb,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AACzF,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACjF,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AACnF,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAEjE,iBAAiB;AACjB,OAAO,EACN,OAAO,IAAI,cAAc,EAEzB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,OAAO,IAAI,OAAO,EAAoB,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,OAAO,EAAoB,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,OAAO,EAAoB,MAAM,qBAAqB,CAAC;AAE3E,OAAO,EACN,OAAO,IAAI,UAAU,EAErB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAE/D,OAAO,EAAE,OAAO,IAAI,OAAO,EAAoB,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,OAAO,EAAoB,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,OAAO,EAAoB,MAAM,qBAAqB,CAAC;AAO3E,UAAU;AACV,OAAO,EAEN,OAAO,IAAI,SAAS,EAEpB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAClF,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAClF,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,8BAA8B,CAAC"}
|
|
@@ -28,7 +28,7 @@ export interface DualQuaternionLike extends Record<number, number> {
|
|
|
28
28
|
* @returns A dual quaternion-like object.
|
|
29
29
|
* @public
|
|
30
30
|
*/
|
|
31
|
-
export declare const createDualQuaternionLike: () =>
|
|
31
|
+
export declare const createDualQuaternionLike: () => DualQuaternionLike & Float32Array;
|
|
32
32
|
/**
|
|
33
33
|
* Create a dual quaternion with the given values.
|
|
34
34
|
* @param x1 - The first real component.
|
|
@@ -302,70 +302,85 @@ export declare const equals: (a: DualQuaternionLike, b: DualQuaternionLike) => b
|
|
|
302
302
|
* @public
|
|
303
303
|
*/
|
|
304
304
|
export default class DualQuaternion extends Float32Array implements DualQuaternionLike {
|
|
305
|
+
/** The first real component of this dual quaternion. */
|
|
306
|
+
0: number;
|
|
307
|
+
/** The second real component of this dual quaternion. */
|
|
308
|
+
1: number;
|
|
309
|
+
/** The third real component of this dual quaternion. */
|
|
310
|
+
2: number;
|
|
311
|
+
/** The fourth real component of this dual quaternion. */
|
|
312
|
+
3: number;
|
|
313
|
+
/** The first dual component of this dual quaternion. */
|
|
314
|
+
4: number;
|
|
315
|
+
/** The second dual component of this dual quaternion. */
|
|
316
|
+
5: number;
|
|
317
|
+
/** The third dual component of this dual quaternion. */
|
|
318
|
+
6: number;
|
|
319
|
+
/** The fourth dual component of this dual quaternion. */
|
|
320
|
+
7: number;
|
|
321
|
+
/** Get the magnitude (length) of this dual quaternion. */
|
|
322
|
+
get magnitude(): number;
|
|
323
|
+
/** Get the squared magnitude (length) of this dual quaternion. */
|
|
324
|
+
get squaredMagnitude(): number;
|
|
305
325
|
/**
|
|
306
|
-
* Create
|
|
307
|
-
* @
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
*
|
|
312
|
-
* @param
|
|
313
|
-
* @
|
|
314
|
-
* @param w2 - The fourth dual component.
|
|
315
|
-
* @param out - The dual quaternion to store the result in.
|
|
316
|
-
* @returns A new dual quaternion.
|
|
326
|
+
* Create an identity dual quaternion.
|
|
327
|
+
* @see {@link https://en.wikipedia.org/wiki/Dual_quaternion | Dual quaternion}
|
|
328
|
+
*/
|
|
329
|
+
constructor();
|
|
330
|
+
/**
|
|
331
|
+
* Create a dual quaternion from the given four-by-four matrix.
|
|
332
|
+
* @param matrix - The matrix.
|
|
333
|
+
* @returns The dual quaternion.
|
|
317
334
|
*/
|
|
318
|
-
static
|
|
335
|
+
static fromMatrix4(matrix: Matrix4Like): DualQuaternion;
|
|
336
|
+
/**
|
|
337
|
+
* Create a dual quaternion from the given rotation.
|
|
338
|
+
* @param q - The rotation quaternion.
|
|
339
|
+
* @returns The dual quaternion.
|
|
340
|
+
*/
|
|
341
|
+
static fromRotation(q: QuaternionLike): DualQuaternion;
|
|
319
342
|
/**
|
|
320
343
|
* Create a dual quaternion from the given rotation and translation.
|
|
321
344
|
* @param q - The rotation quaternion.
|
|
322
345
|
* @param t - The translation vector.
|
|
323
|
-
* @param out - The dual quaternion to store the result in.
|
|
324
346
|
* @returns The dual quaternion.
|
|
325
347
|
*/
|
|
326
|
-
static fromRotationTranslation
|
|
348
|
+
static fromRotationTranslation(q: QuaternionLike, t: Vector3Like): DualQuaternion;
|
|
327
349
|
/**
|
|
328
350
|
* Create a dual quaternion from the given translation.
|
|
329
351
|
* @param t - The translation vector.
|
|
330
|
-
* @param out - The dual quaternion to store the result in.
|
|
331
352
|
* @returns The dual quaternion.
|
|
332
353
|
*/
|
|
333
|
-
static fromTranslation
|
|
354
|
+
static fromTranslation(t: Vector3Like): DualQuaternion;
|
|
334
355
|
/**
|
|
335
|
-
* Create a dual quaternion
|
|
336
|
-
* @param
|
|
337
|
-
* @param
|
|
338
|
-
* @
|
|
356
|
+
* Create a dual quaternion with the given values.
|
|
357
|
+
* @param x1 - The first real component.
|
|
358
|
+
* @param y1 - The second real component.
|
|
359
|
+
* @param z1 - The third real component.
|
|
360
|
+
* @param w1 - The fourth real component.
|
|
361
|
+
* @param x2 - The first dual component.
|
|
362
|
+
* @param y2 - The second dual component.
|
|
363
|
+
* @param z2 - The third dual component.
|
|
364
|
+
* @param w2 - The fourth dual component.
|
|
365
|
+
* @returns A new dual quaternion.
|
|
339
366
|
*/
|
|
340
|
-
static
|
|
367
|
+
static fromValues(x1: number, y1: number, z1: number, w1: number, x2: number, y2: number, z2: number, w2: number): DualQuaternion;
|
|
341
368
|
/**
|
|
342
|
-
*
|
|
343
|
-
* @param
|
|
344
|
-
* @
|
|
345
|
-
* @returns The dual quaternion.
|
|
369
|
+
* Add another dual quaternion to this one.
|
|
370
|
+
* @param dq - The other dual quaternion.
|
|
371
|
+
* @returns The sum.
|
|
346
372
|
*/
|
|
347
|
-
|
|
373
|
+
add(dq: DualQuaternionLike): DualQuaternion;
|
|
348
374
|
/**
|
|
349
|
-
*
|
|
350
|
-
* @
|
|
375
|
+
* Copy the values from this dual quaternion to another one.
|
|
376
|
+
* @returns The copy.
|
|
351
377
|
*/
|
|
352
|
-
|
|
353
|
-
/**
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
2: number;
|
|
359
|
-
/** The fourth real component of this dual quaternion. */
|
|
360
|
-
3: number;
|
|
361
|
-
/** The first dual component of this dual quaternion. */
|
|
362
|
-
4: number;
|
|
363
|
-
/** The second dual component of this dual quaternion. */
|
|
364
|
-
5: number;
|
|
365
|
-
/** The third dual component of this dual quaternion. */
|
|
366
|
-
6: number;
|
|
367
|
-
/** The fourth dual component of this dual quaternion. */
|
|
368
|
-
7: number;
|
|
378
|
+
clone(): DualQuaternion;
|
|
379
|
+
/**
|
|
380
|
+
* Calculate the conjugate of this dual quaternion. If this dual quaternion is normalized, this is equivalent to its inverse and faster to calculate.
|
|
381
|
+
* @returns The conjugate.
|
|
382
|
+
*/
|
|
383
|
+
conjugate(): DualQuaternion;
|
|
369
384
|
/**
|
|
370
385
|
* Copy the values from another dual quaternion to this one.
|
|
371
386
|
* @param dualQuaternion - The dual quaternion to copy.
|
|
@@ -373,165 +388,127 @@ export default class DualQuaternion extends Float32Array implements DualQuaterni
|
|
|
373
388
|
*/
|
|
374
389
|
copy(dualQuaternion: DualQuaternionLike): this;
|
|
375
390
|
/**
|
|
376
|
-
*
|
|
377
|
-
* @param
|
|
378
|
-
* @returns The
|
|
379
|
-
|
|
380
|
-
clone<T extends DualQuaternionLike = DualQuaternion>(out?: T): T;
|
|
381
|
-
/**
|
|
382
|
-
* Set this dual quaternion to the identity dual quaternion.
|
|
383
|
-
* @returns The identity dual quaternion.
|
|
391
|
+
* Calculate the dot product of this and another dual quaternion.
|
|
392
|
+
* @param dq - The other dual quaternion.
|
|
393
|
+
* @returns The dot product.
|
|
394
|
+
* @see {@link https://en.wikipedia.org/wiki/Dot_product | Dot product}
|
|
384
395
|
*/
|
|
385
|
-
|
|
396
|
+
dot(dq: DualQuaternionLike): number;
|
|
386
397
|
/**
|
|
387
|
-
*
|
|
388
|
-
* @param
|
|
389
|
-
* @returns
|
|
398
|
+
* Determine whether or not this dual quaternion is roughly equivalent to another.
|
|
399
|
+
* @param dq - The other dual quaternion.
|
|
400
|
+
* @returns Whether or not the dual quaternions are equivalent.
|
|
390
401
|
*/
|
|
391
|
-
|
|
402
|
+
equals(dq: DualQuaternionLike): boolean;
|
|
392
403
|
/**
|
|
393
|
-
*
|
|
394
|
-
* @param
|
|
404
|
+
* Determine whether or not this dual quaternion is exactly equivalent to another.
|
|
405
|
+
* @param dq - The other dual quaternion.
|
|
406
|
+
* @returns Whether or not the dual quaternions are equivalent.
|
|
395
407
|
*/
|
|
396
|
-
|
|
408
|
+
exactEquals(dq: DualQuaternionLike): boolean;
|
|
397
409
|
/**
|
|
398
410
|
* Get the dual part of this dual quaternion.
|
|
399
|
-
* @param out - The quaternion to store the result in.
|
|
400
411
|
* @returns The dual part.
|
|
401
412
|
*/
|
|
402
|
-
getDual
|
|
413
|
+
getDual(): Quaternion;
|
|
403
414
|
/**
|
|
404
|
-
*
|
|
405
|
-
* @
|
|
415
|
+
* Get the real part of this dual quaternion.
|
|
416
|
+
* @returns The real part.
|
|
406
417
|
*/
|
|
407
|
-
|
|
418
|
+
getReal(): Quaternion;
|
|
408
419
|
/**
|
|
409
420
|
* Get the translation of this normalized dual quaternion.
|
|
410
|
-
* @param out - The vector to store the result in.
|
|
411
421
|
* @returns The translation.
|
|
412
422
|
*/
|
|
413
|
-
getTranslation
|
|
423
|
+
getTranslation(): Vector3;
|
|
414
424
|
/**
|
|
415
|
-
*
|
|
416
|
-
* @
|
|
417
|
-
* @param out - The dual quaternion to store the result in.
|
|
418
|
-
* @returns The translated dual quaternion.
|
|
425
|
+
* Set this dual quaternion to the identity dual quaternion.
|
|
426
|
+
* @returns The identity dual quaternion.
|
|
419
427
|
*/
|
|
420
|
-
|
|
428
|
+
identity(): this;
|
|
421
429
|
/**
|
|
422
|
-
*
|
|
423
|
-
* @
|
|
424
|
-
* @param out - The dual quaternion to store the result in.
|
|
425
|
-
* @returns The rotated dual quaternion.
|
|
430
|
+
* Calculate the inverse of this dual quaternion. If this dual quaternion is normalized, the conjugate is equivalent and faster to calculate.
|
|
431
|
+
* @returns The inverse.
|
|
426
432
|
*/
|
|
427
|
-
|
|
433
|
+
invert(): DualQuaternion;
|
|
428
434
|
/**
|
|
429
|
-
*
|
|
430
|
-
* @param
|
|
431
|
-
* @param
|
|
432
|
-
* @returns The
|
|
435
|
+
* Perform a linear interpolation between this and another dual quaternion.
|
|
436
|
+
* @param dq - The other dual quaternion.
|
|
437
|
+
* @param t - The interpolation amount in `[0,1]`.
|
|
438
|
+
* @returns The interpolated value.
|
|
433
439
|
*/
|
|
434
|
-
|
|
440
|
+
lerp(dq: DualQuaternionLike, t: number): DualQuaternion;
|
|
435
441
|
/**
|
|
436
|
-
*
|
|
437
|
-
* @param
|
|
438
|
-
* @
|
|
439
|
-
* @returns The rotated dual quaternion.
|
|
442
|
+
* Multiply this dual quaternion by another one.
|
|
443
|
+
* @param dq - The other dual quaternion.
|
|
444
|
+
* @returns The product.
|
|
440
445
|
*/
|
|
441
|
-
|
|
446
|
+
multiply(dq: DualQuaternionLike): DualQuaternion;
|
|
447
|
+
/**
|
|
448
|
+
* Normalize this dual quaternion.
|
|
449
|
+
* @returns The normalized dual quaternion.
|
|
450
|
+
*/
|
|
451
|
+
normalize(): DualQuaternion;
|
|
452
|
+
/**
|
|
453
|
+
* Rotate this dual quaternion around an axis.
|
|
454
|
+
* @param axis - The axis.
|
|
455
|
+
* @param r - The angle of the rotation in radians.
|
|
456
|
+
* @returns A normalized dual quaternion.
|
|
457
|
+
*/
|
|
458
|
+
rotateAroundAxis(axis: Vector3Like, r: number): DualQuaternion;
|
|
442
459
|
/**
|
|
443
460
|
* Rotate this dual quaternion by a quaternion (using the quaternion as the multiplicand).
|
|
444
461
|
* @param q - The quaternion.
|
|
445
|
-
* @param out - The dual quaternion to store the result in.
|
|
446
462
|
* @returns The rotated dual quaternion.
|
|
447
463
|
* @see {@link https://en.wikipedia.org/wiki/Quaternion | Quaternion}
|
|
448
464
|
*/
|
|
449
|
-
rotateByQuaternionAppend
|
|
465
|
+
rotateByQuaternionAppend(q: QuaternionLike): DualQuaternion;
|
|
450
466
|
/**
|
|
451
467
|
* Rotate this dual quaternion by a quaternion (using the quaternion as the multiplier).
|
|
452
468
|
* @param q - The quaternion.
|
|
453
|
-
* @param out - The dual quaternion to store the result in.
|
|
454
469
|
* @returns The rotated dual quaternion.
|
|
455
470
|
* @see {@link https://en.wikipedia.org/wiki/Quaternion | Quaternion}
|
|
456
471
|
*/
|
|
457
|
-
rotateByQuaternionPrepend
|
|
472
|
+
rotateByQuaternionPrepend(q: QuaternionLike): DualQuaternion;
|
|
458
473
|
/**
|
|
459
|
-
* Rotate this dual quaternion around
|
|
460
|
-
* @param
|
|
461
|
-
* @
|
|
462
|
-
* @param out - The dual quaternion to store the result in.
|
|
463
|
-
* @returns A normalized dual quaternion.
|
|
474
|
+
* Rotate this dual quaternion around the X-axis.
|
|
475
|
+
* @param r - The angle to rotate by in radians.
|
|
476
|
+
* @returns The rotated dual quaternion.
|
|
464
477
|
*/
|
|
465
|
-
|
|
478
|
+
rotateX(r: number): DualQuaternion;
|
|
466
479
|
/**
|
|
467
|
-
*
|
|
468
|
-
* @param
|
|
469
|
-
* @
|
|
470
|
-
* @returns The sum.
|
|
480
|
+
* Rotate this dual quaternion around the Y-axis.
|
|
481
|
+
* @param r - The angle to rotate by in radians.
|
|
482
|
+
* @returns The rotated dual quaternion.
|
|
471
483
|
*/
|
|
472
|
-
|
|
484
|
+
rotateY(r: number): DualQuaternion;
|
|
473
485
|
/**
|
|
474
|
-
*
|
|
475
|
-
* @param
|
|
476
|
-
* @
|
|
477
|
-
* @returns The product.
|
|
486
|
+
* Rotate this dual quaternion around the Z-axis.
|
|
487
|
+
* @param r - The angle to rotate by in radians.
|
|
488
|
+
* @returns The rotated dual quaternion.
|
|
478
489
|
*/
|
|
479
|
-
|
|
490
|
+
rotateZ(r: number): DualQuaternion;
|
|
480
491
|
/**
|
|
481
492
|
* Multiply this dual quaternion by a scalar.
|
|
482
493
|
* @param s - The scalar.
|
|
483
|
-
* @param out - The dual quaternion to store the result in.
|
|
484
494
|
* @returns The product.
|
|
485
495
|
*/
|
|
486
|
-
scale
|
|
496
|
+
scale(s: number): DualQuaternion;
|
|
487
497
|
/**
|
|
488
|
-
*
|
|
489
|
-
* @param
|
|
490
|
-
* @returns The dot product.
|
|
491
|
-
* @see {@link https://en.wikipedia.org/wiki/Dot_product | Dot product}
|
|
492
|
-
*/
|
|
493
|
-
dot(dq: DualQuaternionLike): number;
|
|
494
|
-
/**
|
|
495
|
-
* Perform a linear interpolation between this and another dual quaternion.
|
|
496
|
-
* @param dq - The other dual quaternion.
|
|
497
|
-
* @param t - The interpolation amount in `[0,1]`.
|
|
498
|
-
* @param out - The dual quaternion to store the result in.
|
|
499
|
-
* @returns The interpolated value.
|
|
500
|
-
*/
|
|
501
|
-
lerp<T extends DualQuaternionLike = DualQuaternion>(dq: DualQuaternionLike, t: number, out?: T): T;
|
|
502
|
-
/**
|
|
503
|
-
* Calculate the inverse of this dual quaternion. If this dual quaternion is normalized, the conjugate is equivalent and faster to calculate.
|
|
504
|
-
* @param out - The dual quaternion to store the result in.
|
|
505
|
-
* @returns The inverse.
|
|
506
|
-
*/
|
|
507
|
-
invert<T extends DualQuaternionLike = DualQuaternion>(out?: T): T;
|
|
508
|
-
/**
|
|
509
|
-
* Calculate the conjugate of this dual quaternion. If this dual quaternion is normalized, this is equivalent to its inverse and faster to calculate.
|
|
510
|
-
* @param out - The dual quaternion to store the result in.
|
|
511
|
-
* @returns The conjugate.
|
|
512
|
-
*/
|
|
513
|
-
conjugate<T extends DualQuaternionLike = DualQuaternion>(out?: T): T;
|
|
514
|
-
/** Get the magnitude (length) of this dual quaternion. */
|
|
515
|
-
get magnitude(): number;
|
|
516
|
-
/** Get the squared magnitude (length) of this dual quaternion. */
|
|
517
|
-
get squaredMagnitude(): number;
|
|
518
|
-
/**
|
|
519
|
-
* Normalize this dual quaternion.
|
|
520
|
-
* @param out - The dual quaternion to store the result in.
|
|
521
|
-
* @returns The normalized dual quaternion.
|
|
498
|
+
* Set the real part of this dual quaternion.
|
|
499
|
+
* @param q - The quaternion.
|
|
522
500
|
*/
|
|
523
|
-
|
|
501
|
+
setDual(q: QuaternionLike): void;
|
|
524
502
|
/**
|
|
525
|
-
*
|
|
526
|
-
* @param
|
|
527
|
-
* @returns Whether or not the dual quaternions are equivalent.
|
|
503
|
+
* Set the real part of this dual quaternion.
|
|
504
|
+
* @param q - The quaternion.
|
|
528
505
|
*/
|
|
529
|
-
|
|
506
|
+
setReal(q: QuaternionLike): void;
|
|
530
507
|
/**
|
|
531
|
-
*
|
|
532
|
-
* @param
|
|
533
|
-
* @returns
|
|
508
|
+
* Translate this dual quaternion by the given vector.
|
|
509
|
+
* @param v - The vector.
|
|
510
|
+
* @returns The translated dual quaternion.
|
|
534
511
|
*/
|
|
535
|
-
|
|
512
|
+
translate(v: Vector3Like): DualQuaternion;
|
|
536
513
|
}
|
|
537
514
|
//# sourceMappingURL=DualQuaternion.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DualQuaternion.d.ts","sourceRoot":"","sources":["../../src/linalg/DualQuaternion.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"DualQuaternion.d.ts","sourceRoot":"","sources":["../../src/linalg/DualQuaternion.ts"],"names":[],"mappings":"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"}
|