@pawells/math-extended 2.0.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.
Files changed (118) hide show
  1. package/README.md +15 -21
  2. package/build/clamp.d.ts +5 -5
  3. package/build/clamp.js +5 -5
  4. package/build/core.d.ts +23 -0
  5. package/build/core.d.ts.map +1 -0
  6. package/build/core.js +25 -0
  7. package/build/core.js.map +1 -0
  8. package/build/index.d.ts +1 -4
  9. package/build/index.d.ts.map +1 -1
  10. package/build/index.js +1 -6
  11. package/build/index.js.map +1 -1
  12. package/build/interpolation.d.ts +158 -171
  13. package/build/interpolation.d.ts.map +1 -1
  14. package/build/interpolation.js +162 -181
  15. package/build/interpolation.js.map +1 -1
  16. package/build/matrices/arithmetic.d.ts +132 -132
  17. package/build/matrices/arithmetic.d.ts.map +1 -1
  18. package/build/matrices/arithmetic.js +194 -226
  19. package/build/matrices/arithmetic.js.map +1 -1
  20. package/build/matrices/asserts.d.ts +30 -408
  21. package/build/matrices/asserts.d.ts.map +1 -1
  22. package/build/matrices/asserts.js +98 -542
  23. package/build/matrices/asserts.js.map +1 -1
  24. package/build/matrices/core.d.ts +117 -46
  25. package/build/matrices/core.d.ts.map +1 -1
  26. package/build/matrices/core.js +127 -103
  27. package/build/matrices/core.js.map +1 -1
  28. package/build/matrices/decompositions.d.ts +95 -96
  29. package/build/matrices/decompositions.d.ts.map +1 -1
  30. package/build/matrices/decompositions.js +119 -160
  31. package/build/matrices/decompositions.js.map +1 -1
  32. package/build/matrices/index.d.ts +0 -1
  33. package/build/matrices/index.d.ts.map +1 -1
  34. package/build/matrices/index.js +0 -3
  35. package/build/matrices/index.js.map +1 -1
  36. package/build/matrices/linear-algebra.d.ts +45 -8
  37. package/build/matrices/linear-algebra.d.ts.map +1 -1
  38. package/build/matrices/linear-algebra.js +76 -32
  39. package/build/matrices/linear-algebra.js.map +1 -1
  40. package/build/matrices/normalization.d.ts +29 -8
  41. package/build/matrices/normalization.d.ts.map +1 -1
  42. package/build/matrices/normalization.js +32 -23
  43. package/build/matrices/normalization.js.map +1 -1
  44. package/build/matrices/transformations.d.ts +116 -148
  45. package/build/matrices/transformations.d.ts.map +1 -1
  46. package/build/matrices/transformations.js +69 -91
  47. package/build/matrices/transformations.js.map +1 -1
  48. package/build/matrices/types.d.ts +32 -60
  49. package/build/matrices/types.d.ts.map +1 -1
  50. package/build/matrices/types.js +63 -1
  51. package/build/matrices/types.js.map +1 -1
  52. package/build/quaternions/asserts.d.ts +29 -38
  53. package/build/quaternions/asserts.d.ts.map +1 -1
  54. package/build/quaternions/asserts.js +61 -77
  55. package/build/quaternions/asserts.js.map +1 -1
  56. package/build/quaternions/conversions.d.ts +26 -26
  57. package/build/quaternions/conversions.d.ts.map +1 -1
  58. package/build/quaternions/conversions.js +24 -24
  59. package/build/quaternions/core.d.ts +70 -69
  60. package/build/quaternions/core.d.ts.map +1 -1
  61. package/build/quaternions/core.js +71 -71
  62. package/build/quaternions/core.js.map +1 -1
  63. package/build/quaternions/index.d.ts +0 -1
  64. package/build/quaternions/index.d.ts.map +1 -1
  65. package/build/quaternions/index.js +0 -2
  66. package/build/quaternions/index.js.map +1 -1
  67. package/build/quaternions/interpolation.d.ts +16 -16
  68. package/build/quaternions/interpolation.d.ts.map +1 -1
  69. package/build/quaternions/interpolation.js +21 -21
  70. package/build/quaternions/interpolation.js.map +1 -1
  71. package/build/quaternions/predefined.d.ts +10 -10
  72. package/build/quaternions/predefined.d.ts.map +1 -1
  73. package/build/quaternions/predefined.js +9 -9
  74. package/build/quaternions/types.d.ts +23 -12
  75. package/build/quaternions/types.d.ts.map +1 -1
  76. package/build/quaternions/types.js +51 -1
  77. package/build/quaternions/types.js.map +1 -1
  78. package/build/random.d.ts +66 -20
  79. package/build/random.d.ts.map +1 -1
  80. package/build/random.js +73 -20
  81. package/build/random.js.map +1 -1
  82. package/build/vectors/asserts.d.ts +50 -220
  83. package/build/vectors/asserts.d.ts.map +1 -1
  84. package/build/vectors/asserts.js +141 -327
  85. package/build/vectors/asserts.js.map +1 -1
  86. package/build/vectors/core.d.ts +182 -229
  87. package/build/vectors/core.d.ts.map +1 -1
  88. package/build/vectors/core.js +234 -288
  89. package/build/vectors/core.js.map +1 -1
  90. package/build/vectors/index.d.ts +0 -1
  91. package/build/vectors/index.d.ts.map +1 -1
  92. package/build/vectors/index.js +0 -2
  93. package/build/vectors/index.js.map +1 -1
  94. package/build/vectors/interpolation.d.ts +40 -40
  95. package/build/vectors/interpolation.d.ts.map +1 -1
  96. package/build/vectors/interpolation.js +75 -86
  97. package/build/vectors/interpolation.js.map +1 -1
  98. package/build/vectors/predefined.d.ts +31 -7
  99. package/build/vectors/predefined.d.ts.map +1 -1
  100. package/build/vectors/predefined.js +30 -6
  101. package/build/vectors/predefined.js.map +1 -1
  102. package/build/vectors/types.d.ts +26 -4
  103. package/build/vectors/types.d.ts.map +1 -1
  104. package/build/vectors/types.js +50 -1
  105. package/build/vectors/types.js.map +1 -1
  106. package/package.json +3 -2
  107. package/build/matrices/_exports.d.ts +0 -13
  108. package/build/matrices/_exports.d.ts.map +0 -1
  109. package/build/matrices/_exports.js +0 -13
  110. package/build/matrices/_exports.js.map +0 -1
  111. package/build/quaternions/_exports.d.ts +0 -11
  112. package/build/quaternions/_exports.d.ts.map +0 -1
  113. package/build/quaternions/_exports.js +0 -11
  114. package/build/quaternions/_exports.js.map +0 -1
  115. package/build/vectors/_exports.d.ts +0 -10
  116. package/build/vectors/_exports.d.ts.map +0 -1
  117. package/build/vectors/_exports.js +0 -10
  118. package/build/vectors/_exports.js.map +0 -1
@@ -29,6 +29,7 @@ const EASE_INOUT_HALF = 0.5; // t threshold separating ease-in phase from ease-o
29
29
  const ELASTIC_INOUT_PHASE = 11.125; // phase offset in ElasticEaseInOut: 2*EXP_SCALE*t − 11.125
30
30
  const ELASTIC_INOUT_PERIOD = 4.5; // period divisor for ElasticEaseInOut: 2π / 4.5
31
31
  const BACK_INOUT_SCALE = 1.525; // scale factor for back ease-in-out overshoot (c2 = c1 * 1.525)
32
+ const BACK_EASE_OVERSHOOT_AMPLITUDE = 1.70158;
32
33
  /**
33
34
  * Linear interpolation (LERP) between two scalar values.
34
35
  * Maps parameter `t` proportionally between `a` (at t=0) and `b` (at t=1).
@@ -40,12 +41,12 @@ const BACK_INOUT_SCALE = 1.525; // scale factor for back ease-in-out overshoot (
40
41
  * @returns `a + (b - a) * t`
41
42
  *
42
43
  * @example
43
- * ```typescript
44
- * LinearInterpolation(0, 100, 0.5) // 50
45
- * LinearInterpolation(0, 100, 0) // 0
46
- * LinearInterpolation(0, 100, 1) // 100
47
- * LinearInterpolation(0, 100, 1.5) // 150 (extrapolation)
48
- * ```
44
+ * ```typescript
45
+ * LinearInterpolation(0, 100, 0.5) // 50
46
+ * LinearInterpolation(0, 100, 0) // 0
47
+ * LinearInterpolation(0, 100, 1) // 100
48
+ * LinearInterpolation(0, 100, 1.5) // 150 (extrapolation)
49
+ * ```
49
50
  */
50
51
  export function LinearInterpolation(a, b, t) {
51
52
  // Do not clamp t, allow extrapolation for LERP
@@ -61,11 +62,11 @@ export function LinearInterpolation(a, b, t) {
61
62
  * @returns Interpolated value using cubic smooth-step curve
62
63
  *
63
64
  * @example
64
- * ```typescript
65
- * SmoothStep(0, 10, 0) // 0
66
- * SmoothStep(0, 10, 1) // 10
67
- * SmoothStep(0, 10, 0.25) // 1.5625 (slower start than LinearInterpolation's 2.5)
68
- * ```
65
+ * ```typescript
66
+ * SmoothStep(0, 10, 0) // 0
67
+ * SmoothStep(0, 10, 1) // 10
68
+ * SmoothStep(0, 10, 0.25) // 1.5625 (slower start than LinearInterpolation's 2.5)
69
+ * ```
69
70
  */
70
71
  export function SmoothStep(a, b, t) {
71
72
  // Allow extrapolation by not clamping t
@@ -83,11 +84,11 @@ export function SmoothStep(a, b, t) {
83
84
  * @returns Interpolated value using quintic smoother-step curve
84
85
  *
85
86
  * @example
86
- * ```typescript
87
- * SmootherStep(0, 10, 0) // 0
88
- * SmootherStep(0, 10, 1) // 10
89
- * SmootherStep(0, 10, 0.25) // ~1.04 (smoother start than SmoothStep)
90
- * ```
87
+ * ```typescript
88
+ * SmootherStep(0, 10, 0) // 0
89
+ * SmootherStep(0, 10, 1) // 10
90
+ * SmootherStep(0, 10, 0.25) // ~1.04 (smoother start than SmoothStep)
91
+ * ```
91
92
  */
92
93
  export function SmootherStep(a, b, t) {
93
94
  // Allow extrapolation by not clamping t
@@ -104,11 +105,11 @@ export function SmootherStep(a, b, t) {
104
105
  * @returns Interpolated value with quadratic acceleration from start
105
106
  *
106
107
  * @example
107
- * ```typescript
108
- * QuadraticEaseIn(0, 10, 0) // 0
109
- * QuadraticEaseIn(0, 10, 1) // 10
110
- * QuadraticEaseIn(0, 10, 0.5) // 2.5 (only 25% progress at the midpoint)
111
- * ```
108
+ * ```typescript
109
+ * QuadraticEaseIn(0, 10, 0) // 0
110
+ * QuadraticEaseIn(0, 10, 1) // 10
111
+ * QuadraticEaseIn(0, 10, 0.5) // 2.5 (only 25% progress at the midpoint)
112
+ * ```
112
113
  */
113
114
  export function QuadraticEaseIn(a, b, t) {
114
115
  // Allow extrapolation by not clamping t
@@ -124,11 +125,11 @@ export function QuadraticEaseIn(a, b, t) {
124
125
  * @returns Interpolated value with quadratic deceleration toward end
125
126
  *
126
127
  * @example
127
- * ```typescript
128
- * QuadraticEaseOut(0, 10, 0) // 0
129
- * QuadraticEaseOut(0, 10, 1) // 10
130
- * QuadraticEaseOut(0, 10, 0.5) // 7.5 (already 75% progress at the midpoint)
131
- * ```
128
+ * ```typescript
129
+ * QuadraticEaseOut(0, 10, 0) // 0
130
+ * QuadraticEaseOut(0, 10, 1) // 10
131
+ * QuadraticEaseOut(0, 10, 0.5) // 7.5 (already 75% progress at the midpoint)
132
+ * ```
132
133
  */
133
134
  export function QuadraticEaseOut(a, b, t) {
134
135
  // Allow extrapolation by not clamping t
@@ -144,11 +145,11 @@ export function QuadraticEaseOut(a, b, t) {
144
145
  * @returns Interpolated value with cubic acceleration from start
145
146
  *
146
147
  * @example
147
- * ```typescript
148
- * CubicEaseIn(0, 10, 0) // 0
149
- * CubicEaseIn(0, 10, 1) // 10
150
- * CubicEaseIn(0, 10, 0.5) // 1.25 (only 12.5% progress at the midpoint)
151
- * ```
148
+ * ```typescript
149
+ * CubicEaseIn(0, 10, 0) // 0
150
+ * CubicEaseIn(0, 10, 1) // 10
151
+ * CubicEaseIn(0, 10, 0.5) // 1.25 (only 12.5% progress at the midpoint)
152
+ * ```
152
153
  */
153
154
  export function CubicEaseIn(a, b, t) {
154
155
  // Allow extrapolation by not clamping t
@@ -164,11 +165,11 @@ export function CubicEaseIn(a, b, t) {
164
165
  * @returns Interpolated value with cubic deceleration toward end
165
166
  *
166
167
  * @example
167
- * ```typescript
168
- * CubicEaseOut(0, 10, 0) // 0
169
- * CubicEaseOut(0, 10, 1) // 10
170
- * CubicEaseOut(0, 10, 0.5) // 8.75 (already 87.5% progress at the midpoint)
171
- * ```
168
+ * ```typescript
169
+ * CubicEaseOut(0, 10, 0) // 0
170
+ * CubicEaseOut(0, 10, 1) // 10
171
+ * CubicEaseOut(0, 10, 0.5) // 8.75 (already 87.5% progress at the midpoint)
172
+ * ```
172
173
  */
173
174
  export function CubicEaseOut(a, b, t) {
174
175
  // Allow extrapolation by not clamping t
@@ -184,11 +185,11 @@ export function CubicEaseOut(a, b, t) {
184
185
  * @returns Interpolated value using cosine-based easing curve
185
186
  *
186
187
  * @example
187
- * ```typescript
188
- * CosineInterpolation(0, 10, 0) // 0
189
- * CosineInterpolation(0, 10, 1) // 10
190
- * CosineInterpolation(0, 10, 0.5) // 5 (same as LERP at midpoint; smooth near endpoints)
191
- * ```
188
+ * ```typescript
189
+ * CosineInterpolation(0, 10, 0) // 0
190
+ * CosineInterpolation(0, 10, 1) // 10
191
+ * CosineInterpolation(0, 10, 0.5) // 5 (same as LERP at midpoint; smooth near endpoints)
192
+ * ```
192
193
  */
193
194
  export function CosineInterpolation(a, b, t) {
194
195
  // Allow extrapolation by not clamping t
@@ -205,11 +206,11 @@ export function CosineInterpolation(a, b, t) {
205
206
  * @returns Interpolated value with sine-based acceleration from start
206
207
  *
207
208
  * @example
208
- * ```typescript
209
- * SineEaseIn(0, 10, 0) // 0
210
- * SineEaseIn(0, 10, 1) // 10
211
- * SineEaseIn(0, 10, 0.5) // ~2.93 (slower than LinearInterpolation's 5 at midpoint)
212
- * ```
209
+ * ```typescript
210
+ * SineEaseIn(0, 10, 0) // 0
211
+ * SineEaseIn(0, 10, 1) // 10
212
+ * SineEaseIn(0, 10, 0.5) // ~2.93 (slower than LinearInterpolation's 5 at midpoint)
213
+ * ```
213
214
  */
214
215
  export function SineEaseIn(a, b, t) {
215
216
  // Allow extrapolation by not clamping t
@@ -225,11 +226,11 @@ export function SineEaseIn(a, b, t) {
225
226
  * @returns Interpolated value with sine-based deceleration toward end
226
227
  *
227
228
  * @example
228
- * ```typescript
229
- * SineEaseOut(0, 10, 0) // 0
230
- * SineEaseOut(0, 10, 1) // 10
231
- * SineEaseOut(0, 10, 0.5) // ~7.07 (faster than LinearInterpolation's 5 at midpoint)
232
- * ```
229
+ * ```typescript
230
+ * SineEaseOut(0, 10, 0) // 0
231
+ * SineEaseOut(0, 10, 1) // 10
232
+ * SineEaseOut(0, 10, 0.5) // ~7.07 (faster than LinearInterpolation's 5 at midpoint)
233
+ * ```
233
234
  */
234
235
  export function SineEaseOut(a, b, t) {
235
236
  // Allow extrapolation by not clamping t
@@ -245,11 +246,11 @@ export function SineEaseOut(a, b, t) {
245
246
  * @returns Interpolated value with exponential acceleration from start
246
247
  *
247
248
  * @example
248
- * ```typescript
249
- * ExponentialEaseIn(0, 10, 0) // 0
250
- * ExponentialEaseIn(0, 10, 1) // 10
251
- * ExponentialEaseIn(0, 10, 0.5) // ~0.31 (barely moved at midpoint)
252
- * ```
249
+ * ```typescript
250
+ * ExponentialEaseIn(0, 10, 0) // 0
251
+ * ExponentialEaseIn(0, 10, 1) // 10
252
+ * ExponentialEaseIn(0, 10, 0.5) // ~0.31 (barely moved at midpoint)
253
+ * ```
253
254
  */
254
255
  export function ExponentialEaseIn(a, b, t) {
255
256
  // Allow extrapolation by not clamping t
@@ -266,11 +267,11 @@ export function ExponentialEaseIn(a, b, t) {
266
267
  * @returns Interpolated value with exponential deceleration toward end
267
268
  *
268
269
  * @example
269
- * ```typescript
270
- * ExponentialEaseOut(0, 10, 0) // 0
271
- * ExponentialEaseOut(0, 10, 1) // 10
272
- * ExponentialEaseOut(0, 10, 0.5) // ~9.69 (nearly done at midpoint)
273
- * ```
270
+ * ```typescript
271
+ * ExponentialEaseOut(0, 10, 0) // 0
272
+ * ExponentialEaseOut(0, 10, 1) // 10
273
+ * ExponentialEaseOut(0, 10, 0.5) // ~9.69 (nearly done at midpoint)
274
+ * ```
274
275
  */
275
276
  export function ExponentialEaseOut(a, b, t) {
276
277
  // Allow extrapolation by not clamping t
@@ -287,11 +288,11 @@ export function ExponentialEaseOut(a, b, t) {
287
288
  * @returns Interpolated value with elastic overshoot effect toward end
288
289
  *
289
290
  * @example
290
- * ```typescript
291
- * ElasticEaseOut(0, 10, 0) // 0
292
- * ElasticEaseOut(0, 10, 1) // 10
293
- * ElasticEaseOut(0, 10, 0.8) // ~10.86 (overshoots target before settling)
294
- * ```
291
+ * ```typescript
292
+ * ElasticEaseOut(0, 10, 0) // 0
293
+ * ElasticEaseOut(0, 10, 1) // 10
294
+ * ElasticEaseOut(0, 10, 0.8) // ~10.86 (overshoots target before settling)
295
+ * ```
295
296
  */
296
297
  export function ElasticEaseOut(a, b, t) {
297
298
  // Allow extrapolation by not clamping t
@@ -312,11 +313,11 @@ export function ElasticEaseOut(a, b, t) {
312
313
  * @returns Interpolated value with back overshoot effect toward end
313
314
  *
314
315
  * @example
315
- * ```typescript
316
- * BackEaseOut(0, 10, 0) // 0
317
- * BackEaseOut(0, 10, 1) // 10
318
- * BackEaseOut(0, 10, 0.75) // ~10.88 (overshoots before settling)
319
- * ```
316
+ * ```typescript
317
+ * BackEaseOut(0, 10, 0) // 0
318
+ * BackEaseOut(0, 10, 1) // 10
319
+ * BackEaseOut(0, 10, 0.75) // ~10.88 (overshoots before settling)
320
+ * ```
320
321
  */
321
322
  export function BackEaseOut(a, b, t) {
322
323
  // Allow extrapolation by not clamping t
@@ -335,11 +336,11 @@ export function BackEaseOut(a, b, t) {
335
336
  * @returns Interpolated value with bouncing effect toward end
336
337
  *
337
338
  * @example
338
- * ```typescript
339
- * BounceEaseOut(0, 10, 0) // 0
340
- * BounceEaseOut(0, 10, 1) // 10
341
- * BounceEaseOut(0, 10, 0.5) // ~7.65 (mid-bounce)
342
- * ```
339
+ * ```typescript
340
+ * BounceEaseOut(0, 10, 0) // 0
341
+ * BounceEaseOut(0, 10, 1) // 10
342
+ * BounceEaseOut(0, 10, 0.5) // ~7.65 (mid-bounce)
343
+ * ```
343
344
  */
344
345
  export function BounceEaseOut(a, b, t) {
345
346
  // Allow extrapolation by not clamping t
@@ -375,11 +376,11 @@ export function BounceEaseOut(a, b, t) {
375
376
  * @returns Smoothly interpolated value along the Catmull-Rom spline
376
377
  *
377
378
  * @example
378
- * ```typescript
379
- * CatmullRomInterpolation(0, 5, 10, 15, 0) // 5 (at p1)
380
- * CatmullRomInterpolation(0, 5, 10, 15, 1) // 10 (at p2)
381
- * CatmullRomInterpolation(0, 5, 10, 15, 0.5) // 7.5
382
- * ```
379
+ * ```typescript
380
+ * CatmullRomInterpolation(0, 5, 10, 15, 0) // 5 (at p1)
381
+ * CatmullRomInterpolation(0, 5, 10, 15, 1) // 10 (at p2)
382
+ * CatmullRomInterpolation(0, 5, 10, 15, 0.5) // 7.5
383
+ * ```
383
384
  */
384
385
  export function CatmullRomInterpolation(p0, p1, p2, p3, t) {
385
386
  // Allow extrapolation by not clamping t
@@ -399,11 +400,11 @@ export function CatmullRomInterpolation(p0, p1, p2, p3, t) {
399
400
  * @returns Interpolated value along the Hermite spline
400
401
  *
401
402
  * @example
402
- * ```typescript
403
- * HermiteInterpolation(0, 10, 0, 0, 0) // 0 (at start)
404
- * HermiteInterpolation(0, 10, 0, 0, 1) // 10 (at end)
405
- * HermiteInterpolation(0, 10, 0, 0, 0.5) // 5 (flat tangents → same as LERP at midpoint)
406
- * ```
403
+ * ```typescript
404
+ * HermiteInterpolation(0, 10, 0, 0, 0) // 0 (at start)
405
+ * HermiteInterpolation(0, 10, 0, 0, 1) // 10 (at end)
406
+ * HermiteInterpolation(0, 10, 0, 0, 0.5) // 5 (flat tangents → same as LERP at midpoint)
407
+ * ```
407
408
  */
408
409
  export function HermiteInterpolation(p0, p1, t0, t1, t) {
409
410
  // Allow extrapolation by not clamping t
@@ -425,11 +426,11 @@ export function HermiteInterpolation(p0, p1, t0, t1, t) {
425
426
  * @returns Interpolated value with circular acceleration from start
426
427
  *
427
428
  * @example
428
- * ```typescript
429
- * CircularEaseIn(0, 10, 0) // 0
430
- * CircularEaseIn(0, 10, 1) // 10
431
- * CircularEaseIn(0, 10, 0.5) // ~1.34 (very slow start along circular arc)
432
- * ```
429
+ * ```typescript
430
+ * CircularEaseIn(0, 10, 0) // 0
431
+ * CircularEaseIn(0, 10, 1) // 10
432
+ * CircularEaseIn(0, 10, 0.5) // ~1.34 (very slow start along circular arc)
433
+ * ```
433
434
  */
434
435
  export function CircularEaseIn(a, b, t) {
435
436
  // Allow extrapolation by not clamping t
@@ -445,11 +446,11 @@ export function CircularEaseIn(a, b, t) {
445
446
  * @returns Interpolated value with circular deceleration toward end
446
447
  *
447
448
  * @example
448
- * ```typescript
449
- * CircularEaseOut(0, 10, 0) // 0
450
- * CircularEaseOut(0, 10, 1) // 10
451
- * CircularEaseOut(0, 10, 0.5) // ~8.66 (very fast start along circular arc)
452
- * ```
449
+ * ```typescript
450
+ * CircularEaseOut(0, 10, 0) // 0
451
+ * CircularEaseOut(0, 10, 1) // 10
452
+ * CircularEaseOut(0, 10, 0.5) // ~8.66 (very fast start along circular arc)
453
+ * ```
453
454
  */
454
455
  export function CircularEaseOut(a, b, t) {
455
456
  // Allow extrapolation by not clamping t
@@ -465,12 +466,12 @@ export function CircularEaseOut(a, b, t) {
465
466
  * @returns Interpolated value with quadratic symmetric easing
466
467
  *
467
468
  * @example
468
- * ```typescript
469
- * QuadraticEaseInOut(0, 10, 0) // 0
470
- * QuadraticEaseInOut(0, 10, 1) // 10
471
- * QuadraticEaseInOut(0, 10, 0.25) // 1.25 (slow start)
472
- * QuadraticEaseInOut(0, 10, 0.75) // 8.75 (slow end)
473
- * ```
469
+ * ```typescript
470
+ * QuadraticEaseInOut(0, 10, 0) // 0
471
+ * QuadraticEaseInOut(0, 10, 1) // 10
472
+ * QuadraticEaseInOut(0, 10, 0.25) // 1.25 (slow start)
473
+ * QuadraticEaseInOut(0, 10, 0.75) // 8.75 (slow end)
474
+ * ```
474
475
  */
475
476
  export function QuadraticEaseInOut(a, b, t) {
476
477
  const smoothT = t < EASE_INOUT_HALF
@@ -488,12 +489,12 @@ export function QuadraticEaseInOut(a, b, t) {
488
489
  * @returns Interpolated value with cubic symmetric easing
489
490
  *
490
491
  * @example
491
- * ```typescript
492
- * CubicEaseInOut(0, 10, 0) // 0
493
- * CubicEaseInOut(0, 10, 1) // 10
494
- * CubicEaseInOut(0, 10, 0.25) // 0.625 (very slow start)
495
- * CubicEaseInOut(0, 10, 0.75) // 9.375 (very slow end)
496
- * ```
492
+ * ```typescript
493
+ * CubicEaseInOut(0, 10, 0) // 0
494
+ * CubicEaseInOut(0, 10, 1) // 10
495
+ * CubicEaseInOut(0, 10, 0.25) // 0.625 (very slow start)
496
+ * CubicEaseInOut(0, 10, 0.75) // 9.375 (very slow end)
497
+ * ```
497
498
  */
498
499
  export function CubicEaseInOut(a, b, t) {
499
500
  const smoothT = t < EASE_INOUT_HALF
@@ -511,11 +512,11 @@ export function CubicEaseInOut(a, b, t) {
511
512
  * @returns Interpolated value with sine-based symmetric easing
512
513
  *
513
514
  * @example
514
- * ```typescript
515
- * SineEaseInOut(0, 10, 0) // 0
516
- * SineEaseInOut(0, 10, 1) // 10
517
- * SineEaseInOut(0, 10, 0.5) // 5 (symmetric midpoint)
518
- * ```
515
+ * ```typescript
516
+ * SineEaseInOut(0, 10, 0) // 0
517
+ * SineEaseInOut(0, 10, 1) // 10
518
+ * SineEaseInOut(0, 10, 0.5) // 5 (symmetric midpoint)
519
+ * ```
519
520
  */
520
521
  export function SineEaseInOut(a, b, t) {
521
522
  const smoothT = -(Math.cos(t * Math.PI) - 1) / 2;
@@ -531,11 +532,11 @@ export function SineEaseInOut(a, b, t) {
531
532
  * @returns Interpolated value with exponential symmetric easing
532
533
  *
533
534
  * @example
534
- * ```typescript
535
- * ExponentialEaseInOut(0, 10, 0) // 0
536
- * ExponentialEaseInOut(0, 10, 1) // 10
537
- * ExponentialEaseInOut(0, 10, 0.25) // ~0.16 (barely moving in the first quarter)
538
- * ```
535
+ * ```typescript
536
+ * ExponentialEaseInOut(0, 10, 0) // 0
537
+ * ExponentialEaseInOut(0, 10, 1) // 10
538
+ * ExponentialEaseInOut(0, 10, 0.25) // ~0.16 (barely moving in the first quarter)
539
+ * ```
539
540
  */
540
541
  export function ExponentialEaseInOut(a, b, t) {
541
542
  if (t === 0)
@@ -557,11 +558,11 @@ export function ExponentialEaseInOut(a, b, t) {
557
558
  * @returns Interpolated value with circular symmetric easing
558
559
  *
559
560
  * @example
560
- * ```typescript
561
- * CircularEaseInOut(0, 10, 0) // 0
562
- * CircularEaseInOut(0, 10, 1) // 10
563
- * CircularEaseInOut(0, 10, 0.25) // ~0.67 (very slow circular start)
564
- * ```
561
+ * ```typescript
562
+ * CircularEaseInOut(0, 10, 0) // 0
563
+ * CircularEaseInOut(0, 10, 1) // 10
564
+ * CircularEaseInOut(0, 10, 0.25) // ~0.67 (very slow circular start)
565
+ * ```
565
566
  */
566
567
  export function CircularEaseInOut(a, b, t) {
567
568
  const smoothT = t < EASE_INOUT_HALF
@@ -579,11 +580,11 @@ export function CircularEaseInOut(a, b, t) {
579
580
  * @returns Interpolated value with elastic spring acceleration from start
580
581
  *
581
582
  * @example
582
- * ```typescript
583
- * ElasticEaseIn(0, 10, 0) // 0
584
- * ElasticEaseIn(0, 10, 1) // 10
585
- * ElasticEaseIn(0, 10, 0.5) // ~-0.16 (backward oscillation at midpoint before launching)
586
- * ```
583
+ * ```typescript
584
+ * ElasticEaseIn(0, 10, 0) // 0
585
+ * ElasticEaseIn(0, 10, 1) // 10
586
+ * ElasticEaseIn(0, 10, 0.5) // ~-0.16 (backward oscillation at midpoint before launching)
587
+ * ```
587
588
  */
588
589
  export function ElasticEaseIn(a, b, t) {
589
590
  if (t === 0 || t === 1)
@@ -602,11 +603,11 @@ export function ElasticEaseIn(a, b, t) {
602
603
  * @returns Interpolated value with elastic oscillation at both ends
603
604
  *
604
605
  * @example
605
- * ```typescript
606
- * ElasticEaseInOut(0, 10, 0) // 0
607
- * ElasticEaseInOut(0, 10, 1) // 10
608
- * ElasticEaseInOut(0, 10, 0.4) // ~-1.17 (backward oscillation before midpoint)
609
- * ```
606
+ * ```typescript
607
+ * ElasticEaseInOut(0, 10, 0) // 0
608
+ * ElasticEaseInOut(0, 10, 1) // 10
609
+ * ElasticEaseInOut(0, 10, 0.4) // ~-1.17 (backward oscillation before midpoint)
610
+ * ```
610
611
  */
611
612
  export function ElasticEaseInOut(a, b, t) {
612
613
  if (t === 0 || t === 1)
@@ -627,16 +628,15 @@ export function ElasticEaseInOut(a, b, t) {
627
628
  * @returns Interpolated value with back overshoot at start
628
629
  *
629
630
  * @example
630
- * ```typescript
631
- * BackEaseIn(0, 10, 0) // 0
632
- * BackEaseIn(0, 10, 1) // 10
633
- * BackEaseIn(0, 10, 0.25) // ~-0.64 (dips below start before accelerating forward)
634
- * ```
631
+ * ```typescript
632
+ * BackEaseIn(0, 10, 0) // 0
633
+ * BackEaseIn(0, 10, 1) // 10
634
+ * BackEaseIn(0, 10, 0.25) // ~-0.64 (dips below start before accelerating forward)
635
+ * ```
635
636
  */
636
637
  export function BackEaseIn(a, b, t) {
637
- const c1 = 1.70158;
638
- const c3 = c1 + 1;
639
- const backT = (c3 * t * t * t) - (c1 * t * t);
638
+ const c3 = BACK_EASE_OVERSHOOT_AMPLITUDE + 1;
639
+ const backT = (c3 * t * t * t) - (BACK_EASE_OVERSHOOT_AMPLITUDE * t * t);
640
640
  return a + ((b - a) * backT);
641
641
  }
642
642
  /**
@@ -649,15 +649,14 @@ export function BackEaseIn(a, b, t) {
649
649
  * @returns Interpolated value with back overshoot at both start and end
650
650
  *
651
651
  * @example
652
- * ```typescript
653
- * BackEaseInOut(0, 10, 0) // 0
654
- * BackEaseInOut(0, 10, 1) // 10
655
- * BackEaseInOut(0, 10, 0.25) // ~-1.00 (dips backward at start)
656
- * ```
652
+ * ```typescript
653
+ * BackEaseInOut(0, 10, 0) // 0
654
+ * BackEaseInOut(0, 10, 1) // 10
655
+ * BackEaseInOut(0, 10, 0.25) // ~-1.00 (dips backward at start)
656
+ * ```
657
657
  */
658
658
  export function BackEaseInOut(a, b, t) {
659
- const c1 = 1.70158;
660
- const c2 = c1 * BACK_INOUT_SCALE;
659
+ const c2 = BACK_EASE_OVERSHOOT_AMPLITUDE * BACK_INOUT_SCALE;
661
660
  const backT = t < EASE_INOUT_HALF
662
661
  ? Math.pow(2 * t, 2) * (((c2 + 1) * 2 * t) - c2) / 2
663
662
  : (Math.pow((2 * t) - 2, 2) * (((c2 + 1) * ((2 * t) - 2)) + c2) + 2) / 2;
@@ -673,11 +672,11 @@ export function BackEaseInOut(a, b, t) {
673
672
  * @returns Interpolated value with bounce effect at start
674
673
  *
675
674
  * @example
676
- * ```typescript
677
- * BounceEaseIn(0, 10, 0) // 0
678
- * BounceEaseIn(0, 10, 1) // 10
679
- * BounceEaseIn(0, 10, 0.5) // ~2.34 (still bouncing at midpoint)
680
- * ```
675
+ * ```typescript
676
+ * BounceEaseIn(0, 10, 0) // 0
677
+ * BounceEaseIn(0, 10, 1) // 10
678
+ * BounceEaseIn(0, 10, 0.5) // ~2.34 (still bouncing at midpoint)
679
+ * ```
681
680
  */
682
681
  export function BounceEaseIn(a, b, t) {
683
682
  return a + ((b - a) * (1 - BounceEaseOut(0, 1, 1 - t)));
@@ -692,11 +691,11 @@ export function BounceEaseIn(a, b, t) {
692
691
  * @returns Interpolated value with bounce effect at both start and end
693
692
  *
694
693
  * @example
695
- * ```typescript
696
- * BounceEaseInOut(0, 10, 0) // 0
697
- * BounceEaseInOut(0, 10, 1) // 10
698
- * BounceEaseInOut(0, 10, 0.25) // ~1.17 (bouncing at start quarter)
699
- * ```
694
+ * ```typescript
695
+ * BounceEaseInOut(0, 10, 0) // 0
696
+ * BounceEaseInOut(0, 10, 1) // 10
697
+ * BounceEaseInOut(0, 10, 0.25) // ~1.17 (bouncing at start quarter)
698
+ * ```
700
699
  */
701
700
  export function BounceEaseInOut(a, b, t) {
702
701
  const bounceT = t < EASE_INOUT_HALF
@@ -716,33 +715,15 @@ export function BounceEaseInOut(a, b, t) {
716
715
  * @returns Either `a` or `b` depending on `t` relative to `threshold`
717
716
  *
718
717
  * @example
719
- * ```typescript
720
- * StepInterpolation(0, 10, 0.3) // 0 (below default threshold of 0.5)
721
- * StepInterpolation(0, 10, 0.7) // 10 (at or above default threshold of 0.5)
722
- * StepInterpolation(0, 10, 0.3, 0.25) // 10 (above custom threshold of 0.25)
723
- * ```
718
+ * ```typescript
719
+ * StepInterpolation(0, 10, 0.3) // 0 (below default threshold of 0.5)
720
+ * StepInterpolation(0, 10, 0.7) // 10 (at or above default threshold of 0.5)
721
+ * StepInterpolation(0, 10, 0.3, 0.25) // 10 (above custom threshold of 0.25)
722
+ * ```
724
723
  */
725
724
  export function StepInterpolation(a, b, t, threshold = 0.5) {
726
725
  const clampedT = Clamp(t, 0, 1);
727
726
  const clampedThreshold = Clamp(threshold, 0, 1);
728
727
  return clampedT < clampedThreshold ? a : b;
729
728
  }
730
- /**
731
- * Spherical linear interpolation for scalar values.
732
- * For scalar inputs, this is mathematically equivalent to {@link LinearInterpolation}.
733
- * For true spherical rotation interpolation, use `QuaternionSLERP` from the quaternions module.
734
- *
735
- * @param a - Start value (result when t = 0)
736
- * @param b - End value (result when t = 1)
737
- * @param t - Interpolation parameter — unclamped, allowing extrapolation
738
- * @returns Linearly interpolated value (identical to `LinearInterpolation(a, b, t)`)
739
- *
740
- * @deprecated This function is identical to LinearInterpolation and is not a true spherical interpolation. For quaternion spherical interpolation, use QuaternionSLERP from the quaternions module.
741
- */
742
- export function SphericalLinearInterpolation(a, b, t) {
743
- // Allow extrapolation by not clamping t
744
- // For scalar values, SLERP reduces to linear interpolation
745
- // This is a placeholder implementation for scalar compatibility
746
- return LinearInterpolation(a, b, t);
747
- }
748
729
  //# sourceMappingURL=interpolation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"interpolation.js","sourceRoot":"","sources":["../src/interpolation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interpolation.js","sourceRoot":"","sources":["../src/interpolation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC,+CAA+C;AAC/C,MAAM,KAAK,GAAG,CAAC,CAAC,CAAiB,iDAAiD;AAClF,MAAM,OAAO,GAAG,CAAC,CAAC,CAAe,+CAA+C;AAChF,MAAM,OAAO,GAAG,CAAC,CAAC,CAAe,iCAAiC;AAClE,gEAAgE;AAChE,kFAAkF;AAClF,MAAM,gBAAgB,GAAG,CAAC,CAAC,CAAK,kCAAkC;AAClE,MAAM,gBAAgB,GAAG,EAAE,CAAC,CAAI,mCAAmC;AACnE,MAAM,gBAAgB,GAAG,EAAE,CAAC,CAAI,mCAAmC;AACnE,iDAAiD;AACjD,MAAM,SAAS,GAAG,EAAE,CAAC,CAAW,iDAAiD;AACjF,MAAM,cAAc,GAAG,IAAI,CAAC,CAAI,kCAAkC;AAClE,yCAAyC;AACzC,MAAM,YAAY,GAAG,GAAG,CAAC,CAAO,wCAAwC;AACxE,MAAM,SAAS,GAAG,CAAC,CAAC,CAAY,kCAAkC;AAClE,uCAAuC;AACvC,MAAM,aAAa,GAAG,CAAC,CAAC,CAAC,CAAO,uCAAuC;AACvE,2DAA2D;AAC3D,MAAM,eAAe,GAAG,GAAG,CAAC,CAAI,0BAA0B;AAC1D,MAAM,aAAa,GAAG,IAAI,CAAC,CAAK,2BAA2B;AAC3D,MAAM,eAAe,GAAG,GAAG,CAAC,CAAI,gCAAgC;AAChE,MAAM,eAAe,GAAG,IAAI,CAAC,CAAG,2BAA2B;AAC3D,MAAM,aAAa,GAAG,MAAM,CAAC,CAAG,2BAA2B;AAC3D,MAAM,eAAe,GAAG,KAAK,CAAC,CAAE,4BAA4B;AAC5D,MAAM,aAAa,GAAG,QAAQ,CAAC,CAAC,2BAA2B;AAC3D,yCAAyC;AACzC,MAAM,eAAe,GAAG,GAAG,CAAC,CAAQ,2DAA2D;AAC/F,MAAM,mBAAmB,GAAG,MAAM,CAAC,CAAE,2DAA2D;AAChG,MAAM,oBAAoB,GAAG,GAAG,CAAC,CAAG,gDAAgD;AACpF,MAAM,gBAAgB,GAAG,KAAK,CAAC,CAAK,gEAAgE;AACpG,MAAM,6BAA6B,GAAG,OAAO,CAAC;AAE9C;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,mBAAmB,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;IAClE,+CAA+C;IAC/C,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;AAC1B,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,UAAU,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;IACzD,wCAAwC;IACxC,MAAM,OAAO,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAE1C,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,YAAY,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;IAC3D,wCAAwC;IACxC,MAAM,OAAO,GAAG,CAAC,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,GAAG,CAAC,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,GAAG,CAAC,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;IAEhJ,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,eAAe,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;IAC9D,wCAAwC;IACxC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;AAC9B,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,gBAAgB,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;IAC/D,wCAAwC;IACxC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACjD,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,WAAW,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;IAC1D,wCAAwC;IACxC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;AAClC,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,YAAY,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;IAC3D,wCAAwC;IACxC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;AACrD,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,mBAAmB,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;IAClE,wCAAwC;IACxC,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;IAE7C,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;AAC7B,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,UAAU,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;IACzD,wCAAwC;IACxC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AAC1D,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,WAAW,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;IAC1D,wCAAwC;IACxC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AACpD,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,iBAAiB,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;IAChE,wCAAwC;IACxC,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAE5D,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;AAC7B,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,kBAAkB,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;IACjE,wCAAwC;IACxC,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;IAE3D,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;AAC7B,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,cAAc,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;IAC7D,wCAAwC;IACxC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACxB,CAAC;IAED,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC;IACjC,MAAM,QAAQ,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,GAAG,cAAc,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;IAEvG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC;AACjC,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,WAAW,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;IAC1D,wCAAwC;IACxC,MAAM,EAAE,GAAG,OAAO,CAAC;IACnB,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAClB,MAAM,KAAK,GAAG,CAAC,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAE5E,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;AAC9B,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,aAAa,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;IAC5D,wCAAwC;IACxC,MAAM,EAAE,GAAG,MAAM,CAAC;IAClB,MAAM,EAAE,GAAG,IAAI,CAAC;IAEhB,IAAI,OAAe,CAAC;IAEpB,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;QAClB,OAAO,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;IACtB,CAAC;SAAM,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;QACzB,MAAM,SAAS,GAAG,CAAC,GAAG,CAAC,eAAe,GAAG,EAAE,CAAC,CAAC;QAC7C,OAAO,GAAG,CAAC,EAAE,GAAG,SAAS,GAAG,SAAS,CAAC,GAAG,aAAa,CAAC;IACxD,CAAC;SAAM,IAAI,CAAC,GAAG,CAAC,eAAe,GAAG,EAAE,CAAC,EAAE,CAAC;QACvC,MAAM,SAAS,GAAG,CAAC,GAAG,CAAC,eAAe,GAAG,EAAE,CAAC,CAAC;QAC7C,OAAO,GAAG,CAAC,EAAE,GAAG,SAAS,GAAG,SAAS,CAAC,GAAG,aAAa,CAAC;IACxD,CAAC;SAAM,CAAC;QACP,MAAM,SAAS,GAAG,CAAC,GAAG,CAAC,eAAe,GAAG,EAAE,CAAC,CAAC;QAC7C,OAAO,GAAG,CAAC,EAAE,GAAG,SAAS,GAAG,SAAS,CAAC,GAAG,aAAa,CAAC;IACxD,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,uBAAuB,CAAC,EAAU,EAAE,EAAU,EAAE,EAAU,EAAE,EAAU,EAAE,CAAS;IAChG,wCAAwC;IACxC,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;IACjB,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAElB,OAAO,YAAY,GAAG,CACrB,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,SAAS,GAAG,EAAE,CAAC,GAAG,CAAC,OAAO,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,KAAK,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,CAC1I,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,oBAAoB,CAAC,EAAU,EAAE,EAAU,EAAE,EAAU,EAAE,EAAU,EAAE,CAAS;IAC7F,wCAAwC;IACxC,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;IACjB,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAElB,MAAM,GAAG,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACxC,MAAM,GAAG,GAAG,EAAE,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IAC9B,MAAM,GAAG,GAAG,CAAC,aAAa,GAAG,EAAE,CAAC,GAAG,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC;IAChD,MAAM,GAAG,GAAG,EAAE,GAAG,EAAE,CAAC;IAEpB,OAAO,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC;AAC1D,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,cAAc,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;IAC7D,wCAAwC;IACxC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACrD,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,eAAe,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;IAC9D,wCAAwC;IACxC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AAC1D,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,kBAAkB,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;IACjE,MAAM,OAAO,GAAG,CAAC,GAAG,eAAe;QAClC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;QACX,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACrC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,cAAc,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;IAC7D,MAAM,OAAO,GAAG,CAAC,GAAG,eAAe;QAClC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;QACf,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;IACzC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,aAAa,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;IAC5D,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IACjD,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,oBAAoB,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;IACnE,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IACtB,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IACtB,MAAM,IAAI,GAAG,CAAC,GAAG,eAAe;QAC/B,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,SAAS,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC;QAClD,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,SAAS,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC;IAC3D,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;AAC7B,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,iBAAiB,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;IAChE,MAAM,OAAO,GAAG,CAAC,GAAG,eAAe;QAClC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QAC7C,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IACpD,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,aAAa,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;IAC5D,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/C,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC;IACjC,MAAM,QAAQ,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,SAAS,GAAG,cAAc,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;IACvH,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC;AACjC,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,gBAAgB,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;IAC/D,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/C,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,oBAAoB,CAAC;IAChD,MAAM,QAAQ,GAAG,CAAC,GAAG,eAAe;QACnC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,SAAS,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,GAAG,CAAC,CAAC,GAAG,mBAAmB,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC;QAClH,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,SAAS,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,GAAG,CAAC,CAAC,GAAG,mBAAmB,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACxH,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC;AACjC,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,UAAU,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;IACzD,MAAM,EAAE,GAAG,6BAA6B,GAAG,CAAC,CAAC;IAC7C,MAAM,KAAK,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,6BAA6B,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IACzE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;AAC9B,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,aAAa,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;IAC5D,MAAM,EAAE,GAAG,6BAA6B,GAAG,gBAAgB,CAAC;IAC5D,MAAM,KAAK,GAAG,CAAC,GAAG,eAAe;QAChC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC;QACpD,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IAC1E,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;AAC9B,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,YAAY,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;IAC3D,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AACzD,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,eAAe,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;IAC9D,MAAM,OAAO,GAAG,CAAC,GAAG,eAAe;QAClC,CAAC,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QAC5C,CAAC,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAC9C,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,iBAAiB,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,YAAoB,GAAG;IACzF,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAChC,MAAM,gBAAgB,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAEhD,OAAO,QAAQ,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5C,CAAC"}