@esengine/ecs-framework-math 1.0.3 → 2.8.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 +21 -0
- package/bin/Animation/Easing.d.ts +150 -150
- package/bin/Animation/Easing.d.ts.map +1 -1
- package/bin/Animation/Easing.js +151 -151
- package/bin/Animation/Easing.js.map +1 -1
- package/bin/Animation/Interpolation.d.ts +102 -102
- package/bin/Animation/Interpolation.d.ts.map +1 -1
- package/bin/Animation/Interpolation.js +104 -104
- package/bin/Animation/Interpolation.js.map +1 -1
- package/bin/Animation/index.d.ts.map +1 -1
- package/bin/Animation/index.js.map +1 -1
- package/bin/Circle.d.ts +159 -159
- package/bin/Circle.d.ts.map +1 -1
- package/bin/Circle.js +159 -159
- package/bin/Circle.js.map +1 -1
- package/bin/Collision/CollisionDetector.d.ts +64 -64
- package/bin/Collision/CollisionDetector.d.ts.map +1 -1
- package/bin/Collision/CollisionDetector.js +66 -66
- package/bin/Collision/CollisionDetector.js.map +1 -1
- package/bin/Color.d.ts +277 -0
- package/bin/Color.d.ts.map +1 -0
- package/bin/Color.js +470 -0
- package/bin/Color.js.map +1 -0
- package/bin/Fixed32.d.ts +266 -0
- package/bin/Fixed32.d.ts.map +1 -0
- package/bin/Fixed32.js +381 -0
- package/bin/Fixed32.js.map +1 -0
- package/bin/FixedMath.d.ts +109 -0
- package/bin/FixedMath.d.ts.map +1 -0
- package/bin/FixedMath.js +264 -0
- package/bin/FixedMath.js.map +1 -0
- package/bin/FixedVector2.d.ts +293 -0
- package/bin/FixedVector2.d.ts.map +1 -0
- package/bin/FixedVector2.js +413 -0
- package/bin/FixedVector2.js.map +1 -0
- package/bin/MathUtils.d.ts +205 -205
- package/bin/MathUtils.d.ts.map +1 -1
- package/bin/MathUtils.js +206 -206
- package/bin/MathUtils.js.map +1 -1
- package/bin/Matrix3.d.ts +158 -139
- package/bin/Matrix3.d.ts.map +1 -1
- package/bin/Matrix3.js +179 -151
- package/bin/Matrix3.js.map +1 -1
- package/bin/Rectangle.d.ts +144 -144
- package/bin/Rectangle.d.ts.map +1 -1
- package/bin/Rectangle.js +144 -144
- package/bin/Rectangle.js.map +1 -1
- package/bin/Vector2.d.ts +202 -186
- package/bin/Vector2.d.ts.map +1 -1
- package/bin/Vector2.js +198 -188
- package/bin/Vector2.js.map +1 -1
- package/bin/Vector3.d.ts +257 -0
- package/bin/Vector3.d.ts.map +1 -0
- package/bin/Vector3.js +372 -0
- package/bin/Vector3.js.map +1 -0
- package/bin/index.d.ts +8 -1
- package/bin/index.d.ts.map +1 -1
- package/bin/index.js +9 -0
- package/bin/index.js.map +1 -1
- package/package.json +66 -67
package/bin/Animation/Easing.js
CHANGED
|
@@ -7,160 +7,160 @@
|
|
|
7
7
|
export class Easing {
|
|
8
8
|
// 线性缓动
|
|
9
9
|
/**
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
10
|
+
* 线性缓动(无缓动)
|
|
11
|
+
* @param t 时间参数 (0-1)
|
|
12
|
+
* @returns 缓动值
|
|
13
|
+
*/
|
|
14
14
|
static linear(t) {
|
|
15
15
|
return t;
|
|
16
16
|
}
|
|
17
17
|
// 二次方缓动 (Quadratic)
|
|
18
18
|
/**
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
19
|
+
* 二次方缓入
|
|
20
|
+
* @param t 时间参数 (0-1)
|
|
21
|
+
* @returns 缓动值
|
|
22
|
+
*/
|
|
23
23
|
static quadIn(t) {
|
|
24
24
|
return t * t;
|
|
25
25
|
}
|
|
26
26
|
/**
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
27
|
+
* 二次方缓出
|
|
28
|
+
* @param t 时间参数 (0-1)
|
|
29
|
+
* @returns 缓动值
|
|
30
|
+
*/
|
|
31
31
|
static quadOut(t) {
|
|
32
32
|
return 1 - (1 - t) * (1 - t);
|
|
33
33
|
}
|
|
34
34
|
/**
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
35
|
+
* 二次方缓入缓出
|
|
36
|
+
* @param t 时间参数 (0-1)
|
|
37
|
+
* @returns 缓动值
|
|
38
|
+
*/
|
|
39
39
|
static quadInOut(t) {
|
|
40
40
|
return t < 0.5 ? 2 * t * t : 1 - 2 * (1 - t) * (1 - t);
|
|
41
41
|
}
|
|
42
42
|
// 三次方缓动 (Cubic)
|
|
43
43
|
/**
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
44
|
+
* 三次方缓入
|
|
45
|
+
* @param t 时间参数 (0-1)
|
|
46
|
+
* @returns 缓动值
|
|
47
|
+
*/
|
|
48
48
|
static cubicIn(t) {
|
|
49
49
|
return t * t * t;
|
|
50
50
|
}
|
|
51
51
|
/**
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
52
|
+
* 三次方缓出
|
|
53
|
+
* @param t 时间参数 (0-1)
|
|
54
|
+
* @returns 缓动值
|
|
55
|
+
*/
|
|
56
56
|
static cubicOut(t) {
|
|
57
57
|
return 1 - Math.pow(1 - t, 3);
|
|
58
58
|
}
|
|
59
59
|
/**
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
60
|
+
* 三次方缓入缓出
|
|
61
|
+
* @param t 时间参数 (0-1)
|
|
62
|
+
* @returns 缓动值
|
|
63
|
+
*/
|
|
64
64
|
static cubicInOut(t) {
|
|
65
65
|
return t < 0.5 ? 4 * t * t * t : 1 - Math.pow(-2 * t + 2, 3) / 2;
|
|
66
66
|
}
|
|
67
67
|
// 四次方缓动 (Quartic)
|
|
68
68
|
/**
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
69
|
+
* 四次方缓入
|
|
70
|
+
* @param t 时间参数 (0-1)
|
|
71
|
+
* @returns 缓动值
|
|
72
|
+
*/
|
|
73
73
|
static quartIn(t) {
|
|
74
74
|
return t * t * t * t;
|
|
75
75
|
}
|
|
76
76
|
/**
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
77
|
+
* 四次方缓出
|
|
78
|
+
* @param t 时间参数 (0-1)
|
|
79
|
+
* @returns 缓动值
|
|
80
|
+
*/
|
|
81
81
|
static quartOut(t) {
|
|
82
82
|
return 1 - Math.pow(1 - t, 4);
|
|
83
83
|
}
|
|
84
84
|
/**
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
85
|
+
* 四次方缓入缓出
|
|
86
|
+
* @param t 时间参数 (0-1)
|
|
87
|
+
* @returns 缓动值
|
|
88
|
+
*/
|
|
89
89
|
static quartInOut(t) {
|
|
90
90
|
return t < 0.5 ? 8 * t * t * t * t : 1 - Math.pow(-2 * t + 2, 4) / 2;
|
|
91
91
|
}
|
|
92
92
|
// 五次方缓动 (Quintic)
|
|
93
93
|
/**
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
94
|
+
* 五次方缓入
|
|
95
|
+
* @param t 时间参数 (0-1)
|
|
96
|
+
* @returns 缓动值
|
|
97
|
+
*/
|
|
98
98
|
static quintIn(t) {
|
|
99
99
|
return t * t * t * t * t;
|
|
100
100
|
}
|
|
101
101
|
/**
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
102
|
+
* 五次方缓出
|
|
103
|
+
* @param t 时间参数 (0-1)
|
|
104
|
+
* @returns 缓动值
|
|
105
|
+
*/
|
|
106
106
|
static quintOut(t) {
|
|
107
107
|
return 1 - Math.pow(1 - t, 5);
|
|
108
108
|
}
|
|
109
109
|
/**
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
110
|
+
* 五次方缓入缓出
|
|
111
|
+
* @param t 时间参数 (0-1)
|
|
112
|
+
* @returns 缓动值
|
|
113
|
+
*/
|
|
114
114
|
static quintInOut(t) {
|
|
115
115
|
return t < 0.5 ? 16 * t * t * t * t * t : 1 - Math.pow(-2 * t + 2, 5) / 2;
|
|
116
116
|
}
|
|
117
117
|
// 正弦缓动 (Sine)
|
|
118
118
|
/**
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
119
|
+
* 正弦缓入
|
|
120
|
+
* @param t 时间参数 (0-1)
|
|
121
|
+
* @returns 缓动值
|
|
122
|
+
*/
|
|
123
123
|
static sineIn(t) {
|
|
124
124
|
return 1 - Math.cos((t * Math.PI) / 2);
|
|
125
125
|
}
|
|
126
126
|
/**
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
127
|
+
* 正弦缓出
|
|
128
|
+
* @param t 时间参数 (0-1)
|
|
129
|
+
* @returns 缓动值
|
|
130
|
+
*/
|
|
131
131
|
static sineOut(t) {
|
|
132
132
|
return Math.sin((t * Math.PI) / 2);
|
|
133
133
|
}
|
|
134
134
|
/**
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
135
|
+
* 正弦缓入缓出
|
|
136
|
+
* @param t 时间参数 (0-1)
|
|
137
|
+
* @returns 缓动值
|
|
138
|
+
*/
|
|
139
139
|
static sineInOut(t) {
|
|
140
140
|
return -(Math.cos(Math.PI * t) - 1) / 2;
|
|
141
141
|
}
|
|
142
142
|
// 指数缓动 (Exponential)
|
|
143
143
|
/**
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
144
|
+
* 指数缓入
|
|
145
|
+
* @param t 时间参数 (0-1)
|
|
146
|
+
* @returns 缓动值
|
|
147
|
+
*/
|
|
148
148
|
static expoIn(t) {
|
|
149
149
|
return t === 0 ? 0 : Math.pow(2, 10 * (t - 1));
|
|
150
150
|
}
|
|
151
151
|
/**
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
152
|
+
* 指数缓出
|
|
153
|
+
* @param t 时间参数 (0-1)
|
|
154
|
+
* @returns 缓动值
|
|
155
|
+
*/
|
|
156
156
|
static expoOut(t) {
|
|
157
157
|
return t === 1 ? 1 : 1 - Math.pow(2, -10 * t);
|
|
158
158
|
}
|
|
159
159
|
/**
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
160
|
+
* 指数缓入缓出
|
|
161
|
+
* @param t 时间参数 (0-1)
|
|
162
|
+
* @returns 缓动值
|
|
163
|
+
*/
|
|
164
164
|
static expoInOut(t) {
|
|
165
165
|
if (t === 0)
|
|
166
166
|
return 0;
|
|
@@ -172,26 +172,26 @@ export class Easing {
|
|
|
172
172
|
}
|
|
173
173
|
// 圆形缓动 (Circular)
|
|
174
174
|
/**
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
175
|
+
* 圆形缓入
|
|
176
|
+
* @param t 时间参数 (0-1)
|
|
177
|
+
* @returns 缓动值
|
|
178
|
+
*/
|
|
179
179
|
static circIn(t) {
|
|
180
180
|
return 1 - Math.sqrt(1 - t * t);
|
|
181
181
|
}
|
|
182
182
|
/**
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
183
|
+
* 圆形缓出
|
|
184
|
+
* @param t 时间参数 (0-1)
|
|
185
|
+
* @returns 缓动值
|
|
186
|
+
*/
|
|
187
187
|
static circOut(t) {
|
|
188
188
|
return Math.sqrt(1 - (t - 1) * (t - 1));
|
|
189
189
|
}
|
|
190
190
|
/**
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
191
|
+
* 圆形缓入缓出
|
|
192
|
+
* @param t 时间参数 (0-1)
|
|
193
|
+
* @returns 缓动值
|
|
194
|
+
*/
|
|
195
195
|
static circInOut(t) {
|
|
196
196
|
return t < 0.5
|
|
197
197
|
? (1 - Math.sqrt(1 - 4 * t * t)) / 2
|
|
@@ -199,33 +199,33 @@ export class Easing {
|
|
|
199
199
|
}
|
|
200
200
|
// 回弹缓动 (Back)
|
|
201
201
|
/**
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
202
|
+
* 回弹缓入
|
|
203
|
+
* @param t 时间参数 (0-1)
|
|
204
|
+
* @param s 回弹强度,默认1.70158
|
|
205
|
+
* @returns 缓动值
|
|
206
|
+
*/
|
|
207
207
|
static backIn(t, s = 1.70158) {
|
|
208
208
|
const c1 = s;
|
|
209
209
|
const c3 = c1 + 1;
|
|
210
210
|
return c3 * t * t * t - c1 * t * t;
|
|
211
211
|
}
|
|
212
212
|
/**
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
213
|
+
* 回弹缓出
|
|
214
|
+
* @param t 时间参数 (0-1)
|
|
215
|
+
* @param s 回弹强度,默认1.70158
|
|
216
|
+
* @returns 缓动值
|
|
217
|
+
*/
|
|
218
218
|
static backOut(t, s = 1.70158) {
|
|
219
219
|
const c1 = s;
|
|
220
220
|
const c3 = c1 + 1;
|
|
221
221
|
return 1 + c3 * Math.pow(t - 1, 3) + c1 * Math.pow(t - 1, 2);
|
|
222
222
|
}
|
|
223
223
|
/**
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
224
|
+
* 回弹缓入缓出
|
|
225
|
+
* @param t 时间参数 (0-1)
|
|
226
|
+
* @param s 回弹强度,默认1.70158
|
|
227
|
+
* @returns 缓动值
|
|
228
|
+
*/
|
|
229
229
|
static backInOut(t, s = 1.70158) {
|
|
230
230
|
const c1 = s;
|
|
231
231
|
const c2 = c1 * 1.525;
|
|
@@ -235,12 +235,12 @@ export class Easing {
|
|
|
235
235
|
}
|
|
236
236
|
// 弹性缓动 (Elastic)
|
|
237
237
|
/**
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
238
|
+
* 弹性缓入
|
|
239
|
+
* @param t 时间参数 (0-1)
|
|
240
|
+
* @param amplitude 振幅,默认1
|
|
241
|
+
* @param period 周期,默认0.3
|
|
242
|
+
* @returns 缓动值
|
|
243
|
+
*/
|
|
244
244
|
static elasticIn(t, amplitude = 1, period = 0.3) {
|
|
245
245
|
if (t === 0)
|
|
246
246
|
return 0;
|
|
@@ -250,12 +250,12 @@ export class Easing {
|
|
|
250
250
|
return -(amplitude * Math.pow(2, 10 * (t - 1)) * Math.sin((t - 1 - s) * (2 * Math.PI) / period));
|
|
251
251
|
}
|
|
252
252
|
/**
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
253
|
+
* 弹性缓出
|
|
254
|
+
* @param t 时间参数 (0-1)
|
|
255
|
+
* @param amplitude 振幅,默认1
|
|
256
|
+
* @param period 周期,默认0.3
|
|
257
|
+
* @returns 缓动值
|
|
258
|
+
*/
|
|
259
259
|
static elasticOut(t, amplitude = 1, period = 0.3) {
|
|
260
260
|
if (t === 0)
|
|
261
261
|
return 0;
|
|
@@ -265,12 +265,12 @@ export class Easing {
|
|
|
265
265
|
return amplitude * Math.pow(2, -10 * t) * Math.sin((t - s) * (2 * Math.PI) / period) + 1;
|
|
266
266
|
}
|
|
267
267
|
/**
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
268
|
+
* 弹性缓入缓出
|
|
269
|
+
* @param t 时间参数 (0-1)
|
|
270
|
+
* @param amplitude 振幅,默认1
|
|
271
|
+
* @param period 周期,默认0.45
|
|
272
|
+
* @returns 缓动值
|
|
273
|
+
*/
|
|
274
274
|
static elasticInOut(t, amplitude = 1, period = 0.45) {
|
|
275
275
|
if (t === 0)
|
|
276
276
|
return 0;
|
|
@@ -284,18 +284,18 @@ export class Easing {
|
|
|
284
284
|
}
|
|
285
285
|
// 跳跃缓动 (Bounce)
|
|
286
286
|
/**
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
287
|
+
* 跳跃缓入
|
|
288
|
+
* @param t 时间参数 (0-1)
|
|
289
|
+
* @returns 缓动值
|
|
290
|
+
*/
|
|
291
291
|
static bounceIn(t) {
|
|
292
292
|
return 1 - Easing.bounceOut(1 - t);
|
|
293
293
|
}
|
|
294
294
|
/**
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
295
|
+
* 跳跃缓出
|
|
296
|
+
* @param t 时间参数 (0-1)
|
|
297
|
+
* @returns 缓动值
|
|
298
|
+
*/
|
|
299
299
|
static bounceOut(t) {
|
|
300
300
|
const n1 = 7.5625;
|
|
301
301
|
const d1 = 2.75;
|
|
@@ -313,10 +313,10 @@ export class Easing {
|
|
|
313
313
|
}
|
|
314
314
|
}
|
|
315
315
|
/**
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
316
|
+
* 跳跃缓入缓出
|
|
317
|
+
* @param t 时间参数 (0-1)
|
|
318
|
+
* @returns 缓动值
|
|
319
|
+
*/
|
|
320
320
|
static bounceInOut(t) {
|
|
321
321
|
return t < 0.5
|
|
322
322
|
? (1 - Easing.bounceOut(1 - 2 * t)) / 2
|
|
@@ -324,11 +324,11 @@ export class Easing {
|
|
|
324
324
|
}
|
|
325
325
|
// 组合缓动
|
|
326
326
|
/**
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
327
|
+
* 创建自定义缓动函数(组合多个缓动)
|
|
328
|
+
* @param easingFunctions 缓动函数数组
|
|
329
|
+
* @param weights 权重数组,默认均等
|
|
330
|
+
* @returns 组合后的缓动函数
|
|
331
|
+
*/
|
|
332
332
|
static combine(easingFunctions, weights) {
|
|
333
333
|
if (!weights) {
|
|
334
334
|
weights = new Array(easingFunctions.length).fill(1 / easingFunctions.length);
|
|
@@ -342,15 +342,15 @@ export class Easing {
|
|
|
342
342
|
};
|
|
343
343
|
}
|
|
344
344
|
/**
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
345
|
+
* 创建分段缓动函数
|
|
346
|
+
* @param segments 分段配置数组,每段包含 {duration, easing}
|
|
347
|
+
* @returns 分段缓动函数
|
|
348
|
+
*/
|
|
349
349
|
static piecewise(segments) {
|
|
350
350
|
// 计算总持续时间
|
|
351
351
|
const totalDuration = segments.reduce((sum, seg) => sum + seg.duration, 0);
|
|
352
352
|
// 归一化持续时间
|
|
353
|
-
const normalizedSegments = segments.map(seg => ({
|
|
353
|
+
const normalizedSegments = segments.map((seg) => ({
|
|
354
354
|
...seg,
|
|
355
355
|
duration: seg.duration / totalDuration
|
|
356
356
|
}));
|
|
@@ -368,18 +368,18 @@ export class Easing {
|
|
|
368
368
|
};
|
|
369
369
|
}
|
|
370
370
|
/**
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
371
|
+
* 创建反向缓动函数
|
|
372
|
+
* @param easing 原缓动函数
|
|
373
|
+
* @returns 反向缓动函数
|
|
374
|
+
*/
|
|
375
375
|
static reverse(easing) {
|
|
376
376
|
return (t) => 1 - easing(1 - t);
|
|
377
377
|
}
|
|
378
378
|
/**
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
379
|
+
* 创建镜像缓动函数(先正向再反向)
|
|
380
|
+
* @param easing 原缓动函数
|
|
381
|
+
* @returns 镜像缓动函数
|
|
382
|
+
*/
|
|
383
383
|
static mirror(easing) {
|
|
384
384
|
return (t) => {
|
|
385
385
|
if (t < 0.5) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Easing.js","sourceRoot":"","sources":["../../src/Animation/Easing.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,OAAO,MAAM;
|
|
1
|
+
{"version":3,"file":"Easing.js","sourceRoot":"","sources":["../../src/Animation/Easing.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,OAAO,MAAM;IAEf,OAAO;IAEP;;;;KAIC;IACD,MAAM,CAAC,MAAM,CAAC,CAAS;QACnB,OAAO,CAAC,CAAC;IACb,CAAC;IAED,oBAAoB;IAEpB;;;;KAIC;IACD,MAAM,CAAC,MAAM,CAAC,CAAS;QACnB,OAAO,CAAC,GAAG,CAAC,CAAC;IACjB,CAAC;IAED;;;;KAIC;IACD,MAAM,CAAC,OAAO,CAAC,CAAS;QACpB,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACjC,CAAC;IAED;;;;KAIC;IACD,MAAM,CAAC,SAAS,CAAC,CAAS;QACtB,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3D,CAAC;IAED,gBAAgB;IAEhB;;;;KAIC;IACD,MAAM,CAAC,OAAO,CAAC,CAAS;QACpB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACrB,CAAC;IAED;;;;KAIC;IACD,MAAM,CAAC,QAAQ,CAAC,CAAS;QACrB,OAAO,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAClC,CAAC;IAED;;;;KAIC;IACD,MAAM,CAAC,UAAU,CAAC,CAAS;QACvB,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;IACrE,CAAC;IAED,kBAAkB;IAElB;;;;KAIC;IACD,MAAM,CAAC,OAAO,CAAC,CAAS;QACpB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAED;;;;KAIC;IACD,MAAM,CAAC,QAAQ,CAAC,CAAS;QACrB,OAAO,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAClC,CAAC;IAED;;;;KAIC;IACD,MAAM,CAAC,UAAU,CAAC,CAAS;QACvB,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;IACzE,CAAC;IAED,kBAAkB;IAElB;;;;KAIC;IACD,MAAM,CAAC,OAAO,CAAC,CAAS;QACpB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAED;;;;KAIC;IACD,MAAM,CAAC,QAAQ,CAAC,CAAS;QACrB,OAAO,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAClC,CAAC;IAED;;;;KAIC;IACD,MAAM,CAAC,UAAU,CAAC,CAAS;QACvB,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;IAC9E,CAAC;IAED,cAAc;IAEd;;;;KAIC;IACD,MAAM,CAAC,MAAM,CAAC,CAAS;QACnB,OAAO,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3C,CAAC;IAED;;;;KAIC;IACD,MAAM,CAAC,OAAO,CAAC,CAAS;QACpB,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvC,CAAC;IAED;;;;KAIC;IACD,MAAM,CAAC,SAAS,CAAC,CAAS;QACtB,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IAC5C,CAAC;IAED,qBAAqB;IAErB;;;;KAIC;IACD,MAAM,CAAC,MAAM,CAAC,CAAS;QACnB,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACnD,CAAC;IAED;;;;KAIC;IACD,MAAM,CAAC,OAAO,CAAC,CAAS;QACpB,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;IAClD,CAAC;IAED;;;;KAIC;IACD,MAAM,CAAC,SAAS,CAAC,CAAS;QACtB,IAAI,CAAC,KAAK,CAAC;YAAE,OAAO,CAAC,CAAC;QACtB,IAAI,CAAC,KAAK,CAAC;YAAE,OAAO,CAAC,CAAC;QAEtB,OAAO,CAAC,GAAG,GAAG;YACV,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC;YAC9B,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;IAC9C,CAAC;IAED,kBAAkB;IAElB;;;;KAIC;IACD,MAAM,CAAC,MAAM,CAAC,CAAS;QACnB,OAAO,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IACpC,CAAC;IAED;;;;KAIC;IACD,MAAM,CAAC,OAAO,CAAC,CAAS;QACpB,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAC5C,CAAC;IAED;;;;KAIC;IACD,MAAM,CAAC,SAAS,CAAC,CAAS;QACtB,OAAO,CAAC,GAAG,GAAG;YACV,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;YACpC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IAC/D,CAAC;IAED,cAAc;IAEd;;;;;KAKC;IACD,MAAM,CAAC,MAAM,CAAC,CAAS,EAAE,IAAY,OAAO;QACxC,MAAM,EAAE,GAAG,CAAC,CAAC;QACb,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QAClB,OAAO,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;IACvC,CAAC;IAED;;;;;KAKC;IACD,MAAM,CAAC,OAAO,CAAC,CAAS,EAAE,IAAY,OAAO;QACzC,MAAM,EAAE,GAAG,CAAC,CAAC;QACb,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QAClB,OAAO,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IACjE,CAAC;IAED;;;;;KAKC;IACD,MAAM,CAAC,SAAS,CAAC,CAAS,EAAE,IAAY,OAAO;QAC3C,MAAM,EAAE,GAAG,CAAC,CAAC;QACb,MAAM,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC;QAEtB,OAAO,CAAC,GAAG,GAAG;YACV,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC;YACpD,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IAC3E,CAAC;IAED,iBAAiB;IAEjB;;;;;;KAMC;IACD,MAAM,CAAC,SAAS,CAAC,CAAS,EAAE,YAAoB,CAAC,EAAE,SAAiB,GAAG;QACnE,IAAI,CAAC,KAAK,CAAC;YAAE,OAAO,CAAC,CAAC;QACtB,IAAI,CAAC,KAAK,CAAC;YAAE,OAAO,CAAC,CAAC;QAEtB,MAAM,CAAC,GAAG,MAAM,GAAG,CAAC,CAAC;QACrB,OAAO,CAAC,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;IACrG,CAAC;IAED;;;;;;KAMC;IACD,MAAM,CAAC,UAAU,CAAC,CAAS,EAAE,YAAoB,CAAC,EAAE,SAAiB,GAAG;QACpE,IAAI,CAAC,KAAK,CAAC;YAAE,OAAO,CAAC,CAAC;QACtB,IAAI,CAAC,KAAK,CAAC;YAAE,OAAO,CAAC,CAAC;QAEtB,MAAM,CAAC,GAAG,MAAM,GAAG,CAAC,CAAC;QACrB,OAAO,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IAC7F,CAAC;IAED;;;;;;KAMC;IACD,MAAM,CAAC,YAAY,CAAC,CAAS,EAAE,YAAoB,CAAC,EAAE,SAAiB,IAAI;QACvE,IAAI,CAAC,KAAK,CAAC;YAAE,OAAO,CAAC,CAAC;QACtB,IAAI,CAAC,KAAK,CAAC;YAAE,OAAO,CAAC,CAAC;QAEtB,MAAM,CAAC,GAAG,MAAM,GAAG,CAAC,CAAC;QAErB,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;YACV,OAAO,CAAC,GAAG,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;QACnH,CAAC;QAED,OAAO,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC;IACrH,CAAC;IAED,gBAAgB;IAEhB;;;;KAIC;IACD,MAAM,CAAC,QAAQ,CAAC,CAAS;QACrB,OAAO,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACvC,CAAC;IAED;;;;KAIC;IACD,MAAM,CAAC,SAAS,CAAC,CAAS;QACtB,MAAM,EAAE,GAAG,MAAM,CAAC;QAClB,MAAM,EAAE,GAAG,IAAI,CAAC;QAEhB,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC;YACb,OAAO,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;QACtB,CAAC;aAAM,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC;YACpB,OAAO,EAAE,GAAG,CAAC,CAAC,IAAI,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;QAC3C,CAAC;aAAM,IAAI,CAAC,GAAG,GAAG,GAAG,EAAE,EAAE,CAAC;YACtB,OAAO,EAAE,GAAG,CAAC,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC;QAC9C,CAAC;aAAM,CAAC;YACJ,OAAO,EAAE,GAAG,CAAC,CAAC,IAAI,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC;QACjD,CAAC;IACL,CAAC;IAED;;;;KAIC;IACD,MAAM,CAAC,WAAW,CAAC,CAAS;QACxB,OAAO,CAAC,GAAG,GAAG;YACV,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;YACvC,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAChD,CAAC;IAED,OAAO;IAEP;;;;;KAKC;IACD,MAAM,CAAC,OAAO,CACV,eAA0C,EAC1C,OAAkB;QAElB,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,OAAO,GAAG,IAAI,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;QACjF,CAAC;QAED,OAAO,CAAC,CAAS,EAAU,EAAE;YACzB,IAAI,MAAM,GAAG,CAAC,CAAC;YACf,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC9C,MAAM,IAAI,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,OAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YACzD,CAAC;YACD,OAAO,MAAM,CAAC;QAClB,CAAC,CAAC;IACN,CAAC;IAED;;;;KAIC;IACD,MAAM,CAAC,SAAS,CAAC,QAAkE;QACnF,UAAU;QACN,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QAE3E,UAAU;QACV,MAAM,kBAAkB,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YAC9C,GAAG,GAAG;YACN,QAAQ,EAAE,GAAG,CAAC,QAAQ,GAAG,aAAa;SACzC,CAAC,CAAC,CAAC;QAEJ,OAAO,CAAC,CAAS,EAAU,EAAE;YACzB,IAAI,eAAe,GAAG,CAAC,CAAC;YAExB,KAAK,MAAM,OAAO,IAAI,kBAAkB,EAAE,CAAC;gBACvC,IAAI,CAAC,IAAI,eAAe,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;oBAC1C,MAAM,MAAM,GAAG,CAAC,CAAC,GAAG,eAAe,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC;oBACxD,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;gBAC5D,CAAC;gBACD,eAAe,IAAI,OAAO,CAAC,QAAQ,CAAC;YACxC,CAAC;YAED,oBAAoB;YACpB,OAAO,kBAAkB,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACvE,CAAC,CAAC;IACN,CAAC;IAED;;;;KAIC;IACD,MAAM,CAAC,OAAO,CAAC,MAA6B;QACxC,OAAO,CAAC,CAAS,EAAU,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACpD,CAAC;IAED;;;;KAIC;IACD,MAAM,CAAC,MAAM,CAAC,MAA6B;QACvC,OAAO,CAAC,CAAS,EAAU,EAAE;YACzB,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;gBACV,OAAO,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YACzB,CAAC;iBAAM,CAAC;gBACJ,OAAO,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;YAC7B,CAAC;QACL,CAAC,CAAC;IACN,CAAC;;AAED,OAAO;AAEP,oBAAoB;AACJ,eAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;AAE1C,oBAAoB;AACJ,gBAAS,GAAG,MAAM,CAAC,MAAM,CAAC;AAE1C,oBAAoB;AACJ,cAAO,GAAG,MAAM,CAAC,QAAQ,CAAC;AAE1C,oBAAoB;AACJ,eAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;AAE1C,iBAAiB;AACD,cAAO,GAAG,MAAM,CAAC,QAAQ,CAAC;AAE1C,kBAAkB;AACF,gBAAS,GAAG,MAAM,CAAC,OAAO,CAAC"}
|