@metadaoproject/futarchy 0.6.0-alpha.1 → 0.6.0-alpha.3

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 (67) hide show
  1. package/dist/v0.6/ConditionalVaultClient.d.ts +314 -0
  2. package/dist/v0.6/ConditionalVaultClient.js +209 -0
  3. package/dist/v0.6/ConditionalVaultClient.js.map +1 -0
  4. package/dist/v0.6/FutarchyClient.d.ts +744 -0
  5. package/dist/v0.6/FutarchyClient.js +390 -0
  6. package/dist/v0.6/FutarchyClient.js.map +1 -0
  7. package/dist/v0.6/LaunchpadClient.d.ts +460 -0
  8. package/dist/v0.6/LaunchpadClient.js +211 -0
  9. package/dist/v0.6/LaunchpadClient.js.map +1 -0
  10. package/dist/v0.6/PriceBasedUnlockClient.d.ts +325 -0
  11. package/dist/v0.6/PriceBasedUnlockClient.js +100 -0
  12. package/dist/v0.6/PriceBasedUnlockClient.js.map +1 -0
  13. package/dist/v0.6/constants.d.ts +26 -0
  14. package/dist/v0.6/constants.js +37 -0
  15. package/dist/v0.6/constants.js.map +1 -0
  16. package/dist/v0.6/index.d.ts +7 -0
  17. package/dist/v0.6/index.js +8 -0
  18. package/dist/v0.6/index.js.map +1 -0
  19. package/dist/v0.6/types/amm.d.ts +832 -0
  20. package/dist/v0.6/types/amm.js +832 -0
  21. package/dist/v0.6/types/amm.js.map +1 -0
  22. package/dist/v0.6/types/conditional_vault.d.ts +925 -0
  23. package/dist/v0.6/types/conditional_vault.js +925 -0
  24. package/dist/v0.6/types/conditional_vault.js.map +1 -0
  25. package/dist/v0.6/types/futarchy.d.ts +2236 -0
  26. package/dist/v0.6/types/futarchy.js +2236 -0
  27. package/dist/v0.6/types/futarchy.js.map +1 -0
  28. package/dist/v0.6/types/index.d.ts +50 -0
  29. package/dist/v0.6/types/index.js +11 -0
  30. package/dist/v0.6/types/index.js.map +1 -0
  31. package/dist/v0.6/types/launchpad.d.ts +1075 -0
  32. package/dist/v0.6/types/launchpad.js +1075 -0
  33. package/dist/v0.6/types/launchpad.js.map +1 -0
  34. package/dist/v0.6/types/price_based_token_lock.d.ts +444 -0
  35. package/dist/v0.6/types/price_based_token_lock.js +444 -0
  36. package/dist/v0.6/types/price_based_token_lock.js.map +1 -0
  37. package/dist/v0.6/types/price_based_unlock.d.ts +665 -0
  38. package/dist/v0.6/types/price_based_unlock.js +665 -0
  39. package/dist/v0.6/types/price_based_unlock.js.map +1 -0
  40. package/dist/v0.6/types/shared_liquidity_manager.d.ts +89 -0
  41. package/dist/v0.6/types/shared_liquidity_manager.js +89 -0
  42. package/dist/v0.6/types/shared_liquidity_manager.js.map +1 -0
  43. package/dist/v0.6/types/utils.d.ts +3 -0
  44. package/dist/v0.6/types/utils.js +2 -0
  45. package/dist/v0.6/types/utils.js.map +1 -0
  46. package/dist/v0.6/utils/cu.d.ts +10 -0
  47. package/dist/v0.6/utils/cu.js +11 -0
  48. package/dist/v0.6/utils/cu.js.map +1 -0
  49. package/dist/v0.6/utils/filters.d.ts +3 -0
  50. package/dist/v0.6/utils/filters.js +14 -0
  51. package/dist/v0.6/utils/filters.js.map +1 -0
  52. package/dist/v0.6/utils/index.d.ts +16 -0
  53. package/dist/v0.6/utils/index.js +30 -0
  54. package/dist/v0.6/utils/index.js.map +1 -0
  55. package/dist/v0.6/utils/instruction.d.ts +4 -0
  56. package/dist/v0.6/utils/instruction.js +10 -0
  57. package/dist/v0.6/utils/instruction.js.map +1 -0
  58. package/dist/v0.6/utils/metadata.d.ts +4 -0
  59. package/dist/v0.6/utils/metadata.js +22 -0
  60. package/dist/v0.6/utils/metadata.js.map +1 -0
  61. package/dist/v0.6/utils/pda.d.ts +25 -0
  62. package/dist/v0.6/utils/pda.js +75 -0
  63. package/dist/v0.6/utils/pda.js.map +1 -0
  64. package/dist/v0.6/utils/priceMath.d.ts +39 -0
  65. package/dist/v0.6/utils/priceMath.js +48 -0
  66. package/dist/v0.6/utils/priceMath.js.map +1 -0
  67. package/package.json +4 -3
@@ -0,0 +1,444 @@
1
+ export const IDL = {
2
+ version: "0.1.0",
3
+ name: "price_based_token_lock",
4
+ constants: [
5
+ {
6
+ name: "SEED",
7
+ type: "string",
8
+ value: '"anchor"',
9
+ },
10
+ ],
11
+ instructions: [
12
+ {
13
+ name: "initializeLocker",
14
+ accounts: [
15
+ {
16
+ name: "locker",
17
+ isMut: true,
18
+ isSigner: false,
19
+ },
20
+ {
21
+ name: "createKey",
22
+ isMut: false,
23
+ isSigner: true,
24
+ docs: ["Used to derive the PDA"],
25
+ },
26
+ {
27
+ name: "tokenMint",
28
+ isMut: false,
29
+ isSigner: false,
30
+ docs: ["The mint of the tokens to be locked"],
31
+ },
32
+ {
33
+ name: "fromTokenAccount",
34
+ isMut: true,
35
+ isSigner: false,
36
+ docs: ["The token account containing the tokens to be locked"],
37
+ },
38
+ {
39
+ name: "tokenAuthority",
40
+ isMut: false,
41
+ isSigner: true,
42
+ docs: ["The authority of the token account"],
43
+ },
44
+ {
45
+ name: "lockerTokenAccount",
46
+ isMut: true,
47
+ isSigner: false,
48
+ docs: ["The locker's token account where tokens will be stored"],
49
+ },
50
+ {
51
+ name: "recipientTokenAccount",
52
+ isMut: false,
53
+ isSigner: false,
54
+ docs: [
55
+ "The recipient's token account where tokens will be sent when unlocked",
56
+ ],
57
+ },
58
+ {
59
+ name: "payer",
60
+ isMut: true,
61
+ isSigner: true,
62
+ },
63
+ {
64
+ name: "systemProgram",
65
+ isMut: false,
66
+ isSigner: false,
67
+ },
68
+ {
69
+ name: "tokenProgram",
70
+ isMut: false,
71
+ isSigner: false,
72
+ },
73
+ {
74
+ name: "associatedTokenProgram",
75
+ isMut: false,
76
+ isSigner: false,
77
+ },
78
+ {
79
+ name: "eventAuthority",
80
+ isMut: false,
81
+ isSigner: false,
82
+ },
83
+ {
84
+ name: "program",
85
+ isMut: false,
86
+ isSigner: false,
87
+ },
88
+ ],
89
+ args: [
90
+ {
91
+ name: "params",
92
+ type: {
93
+ defined: "InitializeLockerParams",
94
+ },
95
+ },
96
+ ],
97
+ },
98
+ {
99
+ name: "startUnlock",
100
+ accounts: [
101
+ {
102
+ name: "locker",
103
+ isMut: true,
104
+ isSigner: false,
105
+ },
106
+ {
107
+ name: "oracleAccount",
108
+ isMut: false,
109
+ isSigner: false,
110
+ },
111
+ {
112
+ name: "eventAuthority",
113
+ isMut: false,
114
+ isSigner: false,
115
+ },
116
+ {
117
+ name: "program",
118
+ isMut: false,
119
+ isSigner: false,
120
+ },
121
+ ],
122
+ args: [],
123
+ },
124
+ {
125
+ name: "completeUnlock",
126
+ accounts: [
127
+ {
128
+ name: "locker",
129
+ isMut: true,
130
+ isSigner: false,
131
+ },
132
+ {
133
+ name: "oracleAccount",
134
+ isMut: false,
135
+ isSigner: false,
136
+ },
137
+ {
138
+ name: "lockerTokenAccount",
139
+ isMut: true,
140
+ isSigner: false,
141
+ docs: ["The token account where locked tokens are stored"],
142
+ },
143
+ {
144
+ name: "recipientTokenAccount",
145
+ isMut: true,
146
+ isSigner: false,
147
+ docs: ["The recipient's token account where tokens will be sent"],
148
+ },
149
+ {
150
+ name: "tokenProgram",
151
+ isMut: false,
152
+ isSigner: false,
153
+ },
154
+ {
155
+ name: "eventAuthority",
156
+ isMut: false,
157
+ isSigner: false,
158
+ },
159
+ {
160
+ name: "program",
161
+ isMut: false,
162
+ isSigner: false,
163
+ },
164
+ ],
165
+ args: [],
166
+ },
167
+ ],
168
+ accounts: [
169
+ {
170
+ name: "locker",
171
+ type: {
172
+ kind: "struct",
173
+ fields: [
174
+ {
175
+ name: "priceThreshold",
176
+ docs: [
177
+ "The price threshold that must be met for tokens to be unlocked",
178
+ ],
179
+ type: "u128",
180
+ },
181
+ {
182
+ name: "tokenAmount",
183
+ docs: ["The amount of tokens locked"],
184
+ type: "u64",
185
+ },
186
+ {
187
+ name: "unlockTimestamp",
188
+ docs: ["The timestamp when unlocking can begin"],
189
+ type: "i64",
190
+ },
191
+ {
192
+ name: "oracleConfig",
193
+ docs: ["Where to pull price data from"],
194
+ type: {
195
+ defined: "OracleConfig",
196
+ },
197
+ },
198
+ {
199
+ name: "twapLengthSeconds",
200
+ docs: ["Length of time in seconds for TWAP calculation"],
201
+ type: "u64",
202
+ },
203
+ {
204
+ name: "tokenRecipient",
205
+ docs: ["The recipient of the tokens when unlocked"],
206
+ type: "publicKey",
207
+ },
208
+ {
209
+ name: "state",
210
+ docs: ["The current state of the locker"],
211
+ type: {
212
+ defined: "LockerState",
213
+ },
214
+ },
215
+ {
216
+ name: "createKey",
217
+ docs: ["Used to derive the PDA"],
218
+ type: "publicKey",
219
+ },
220
+ {
221
+ name: "pdaBump",
222
+ docs: ["The PDA bump"],
223
+ type: "u8",
224
+ },
225
+ ],
226
+ },
227
+ },
228
+ ],
229
+ types: [
230
+ {
231
+ name: "InitializeLockerParams",
232
+ type: {
233
+ kind: "struct",
234
+ fields: [
235
+ {
236
+ name: "priceThreshold",
237
+ type: "u128",
238
+ },
239
+ {
240
+ name: "tokenAmount",
241
+ type: "u64",
242
+ },
243
+ {
244
+ name: "unlockTimestamp",
245
+ type: "i64",
246
+ },
247
+ {
248
+ name: "oracleConfig",
249
+ type: {
250
+ defined: "OracleConfig",
251
+ },
252
+ },
253
+ {
254
+ name: "twapLengthSeconds",
255
+ type: "u64",
256
+ },
257
+ {
258
+ name: "tokenRecipient",
259
+ type: "publicKey",
260
+ },
261
+ ],
262
+ },
263
+ },
264
+ {
265
+ name: "OracleConfig",
266
+ docs: [
267
+ "Starting at `byte_offset` in `oracle_account`, this program expects to read:",
268
+ "- 16 bytes for the aggregator, stored as a little endian u128",
269
+ "- 8 bytes for the slot that the aggregator was last updated, stored as a",
270
+ "little endian u64",
271
+ "",
272
+ "The aggregator should be a weighted sum of prices, where the weight is the",
273
+ "number of seconds between prices. Here's an example:",
274
+ "- at second 0, the aggregator is 0",
275
+ "- at second 1, the price is 10 and the aggregator is 10 (10 * 1)",
276
+ "- at second 4, the price is 11 and 3 seconds have passed, so the aggregator is",
277
+ "10 + 11 * 3 = 43",
278
+ "",
279
+ "This allows our program to read a TWAP over a time period by reading the",
280
+ "aggregator value at the beginning and at the end, and dividing the difference",
281
+ "by the number of seconds between the two.",
282
+ ],
283
+ type: {
284
+ kind: "struct",
285
+ fields: [
286
+ {
287
+ name: "oracleAccount",
288
+ type: "publicKey",
289
+ },
290
+ {
291
+ name: "byteOffset",
292
+ type: "u32",
293
+ },
294
+ ],
295
+ },
296
+ },
297
+ {
298
+ name: "LockerState",
299
+ type: {
300
+ kind: "enum",
301
+ variants: [
302
+ {
303
+ name: "Locked",
304
+ },
305
+ {
306
+ name: "Unlocking",
307
+ fields: [
308
+ {
309
+ name: "startAggregator",
310
+ docs: ["The aggregator value when unlocking started"],
311
+ type: "u128",
312
+ },
313
+ {
314
+ name: "startTimestamp",
315
+ docs: ["The timestamp when unlocking started"],
316
+ type: "i64",
317
+ },
318
+ ],
319
+ },
320
+ {
321
+ name: "Unlocked",
322
+ },
323
+ ],
324
+ },
325
+ },
326
+ ],
327
+ events: [
328
+ {
329
+ name: "LockerInitialized",
330
+ fields: [
331
+ {
332
+ name: "locker",
333
+ type: "publicKey",
334
+ index: false,
335
+ },
336
+ {
337
+ name: "priceThreshold",
338
+ type: "u128",
339
+ index: false,
340
+ },
341
+ {
342
+ name: "tokenAmount",
343
+ type: "u64",
344
+ index: false,
345
+ },
346
+ {
347
+ name: "unlockTimestamp",
348
+ type: "i64",
349
+ index: false,
350
+ },
351
+ {
352
+ name: "oracleConfig",
353
+ type: {
354
+ defined: "OracleConfig",
355
+ },
356
+ index: false,
357
+ },
358
+ {
359
+ name: "tokenRecipient",
360
+ type: "publicKey",
361
+ index: false,
362
+ },
363
+ ],
364
+ },
365
+ {
366
+ name: "UnlockStarted",
367
+ fields: [
368
+ {
369
+ name: "locker",
370
+ type: "publicKey",
371
+ index: false,
372
+ },
373
+ {
374
+ name: "startAggregator",
375
+ type: "u128",
376
+ index: false,
377
+ },
378
+ {
379
+ name: "startTimestamp",
380
+ type: "i64",
381
+ index: false,
382
+ },
383
+ ],
384
+ },
385
+ {
386
+ name: "UnlockCompleted",
387
+ fields: [
388
+ {
389
+ name: "locker",
390
+ type: "publicKey",
391
+ index: false,
392
+ },
393
+ {
394
+ name: "tokenAmount",
395
+ type: "u64",
396
+ index: false,
397
+ },
398
+ {
399
+ name: "recipient",
400
+ type: "publicKey",
401
+ index: false,
402
+ },
403
+ {
404
+ name: "twapPrice",
405
+ type: "u128",
406
+ index: false,
407
+ },
408
+ {
409
+ name: "priceThreshold",
410
+ type: "u128",
411
+ index: false,
412
+ },
413
+ ],
414
+ },
415
+ ],
416
+ errors: [
417
+ {
418
+ code: 6000,
419
+ name: "UnlockTimestampNotReached",
420
+ msg: "Unlock timestamp has not been reached yet",
421
+ },
422
+ {
423
+ code: 6001,
424
+ name: "InvalidLockerState",
425
+ msg: "Locker is not in the expected state",
426
+ },
427
+ {
428
+ code: 6002,
429
+ name: "TwapCalculationFailed",
430
+ msg: "TWAP calculation failed",
431
+ },
432
+ {
433
+ code: 6003,
434
+ name: "PriceThresholdNotMet",
435
+ msg: "Price threshold not met",
436
+ },
437
+ {
438
+ code: 6004,
439
+ name: "InvalidOracleData",
440
+ msg: "Invalid oracle account data",
441
+ },
442
+ ],
443
+ };
444
+ //# sourceMappingURL=price_based_token_lock.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"price_based_token_lock.js","sourceRoot":"","sources":["../../../src/v0.6/types/price_based_token_lock.ts"],"names":[],"mappings":"AA4bA,MAAM,CAAC,MAAM,GAAG,GAAwB;IACtC,OAAO,EAAE,OAAO;IAChB,IAAI,EAAE,wBAAwB;IAC9B,SAAS,EAAE;QACT;YACE,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,UAAU;SAClB;KACF;IACD,YAAY,EAAE;QACZ;YACE,IAAI,EAAE,kBAAkB;YACxB,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,QAAQ;oBACd,KAAK,EAAE,IAAI;oBACX,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,WAAW;oBACjB,KAAK,EAAE,KAAK;oBACZ,QAAQ,EAAE,IAAI;oBACd,IAAI,EAAE,CAAC,wBAAwB,CAAC;iBACjC;gBACD;oBACE,IAAI,EAAE,WAAW;oBACjB,KAAK,EAAE,KAAK;oBACZ,QAAQ,EAAE,KAAK;oBACf,IAAI,EAAE,CAAC,qCAAqC,CAAC;iBAC9C;gBACD;oBACE,IAAI,EAAE,kBAAkB;oBACxB,KAAK,EAAE,IAAI;oBACX,QAAQ,EAAE,KAAK;oBACf,IAAI,EAAE,CAAC,sDAAsD,CAAC;iBAC/D;gBACD;oBACE,IAAI,EAAE,gBAAgB;oBACtB,KAAK,EAAE,KAAK;oBACZ,QAAQ,EAAE,IAAI;oBACd,IAAI,EAAE,CAAC,oCAAoC,CAAC;iBAC7C;gBACD;oBACE,IAAI,EAAE,oBAAoB;oBAC1B,KAAK,EAAE,IAAI;oBACX,QAAQ,EAAE,KAAK;oBACf,IAAI,EAAE,CAAC,wDAAwD,CAAC;iBACjE;gBACD;oBACE,IAAI,EAAE,uBAAuB;oBAC7B,KAAK,EAAE,KAAK;oBACZ,QAAQ,EAAE,KAAK;oBACf,IAAI,EAAE;wBACJ,uEAAuE;qBACxE;iBACF;gBACD;oBACE,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,IAAI;oBACX,QAAQ,EAAE,IAAI;iBACf;gBACD;oBACE,IAAI,EAAE,eAAe;oBACrB,KAAK,EAAE,KAAK;oBACZ,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,cAAc;oBACpB,KAAK,EAAE,KAAK;oBACZ,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,wBAAwB;oBAC9B,KAAK,EAAE,KAAK;oBACZ,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,gBAAgB;oBACtB,KAAK,EAAE,KAAK;oBACZ,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,KAAK;oBACZ,QAAQ,EAAE,KAAK;iBAChB;aACF;YACD,IAAI,EAAE;gBACJ;oBACE,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE;wBACJ,OAAO,EAAE,wBAAwB;qBAClC;iBACF;aACF;SACF;QACD;YACE,IAAI,EAAE,aAAa;YACnB,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,QAAQ;oBACd,KAAK,EAAE,IAAI;oBACX,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,eAAe;oBACrB,KAAK,EAAE,KAAK;oBACZ,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,gBAAgB;oBACtB,KAAK,EAAE,KAAK;oBACZ,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,KAAK;oBACZ,QAAQ,EAAE,KAAK;iBAChB;aACF;YACD,IAAI,EAAE,EAAE;SACT;QACD;YACE,IAAI,EAAE,gBAAgB;YACtB,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,QAAQ;oBACd,KAAK,EAAE,IAAI;oBACX,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,eAAe;oBACrB,KAAK,EAAE,KAAK;oBACZ,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,oBAAoB;oBAC1B,KAAK,EAAE,IAAI;oBACX,QAAQ,EAAE,KAAK;oBACf,IAAI,EAAE,CAAC,kDAAkD,CAAC;iBAC3D;gBACD;oBACE,IAAI,EAAE,uBAAuB;oBAC7B,KAAK,EAAE,IAAI;oBACX,QAAQ,EAAE,KAAK;oBACf,IAAI,EAAE,CAAC,yDAAyD,CAAC;iBAClE;gBACD;oBACE,IAAI,EAAE,cAAc;oBACpB,KAAK,EAAE,KAAK;oBACZ,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,gBAAgB;oBACtB,KAAK,EAAE,KAAK;oBACZ,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,KAAK;oBACZ,QAAQ,EAAE,KAAK;iBAChB;aACF;YACD,IAAI,EAAE,EAAE;SACT;KACF;IACD,QAAQ,EAAE;QACR;YACE,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE;oBACN;wBACE,IAAI,EAAE,gBAAgB;wBACtB,IAAI,EAAE;4BACJ,gEAAgE;yBACjE;wBACD,IAAI,EAAE,MAAM;qBACb;oBACD;wBACE,IAAI,EAAE,aAAa;wBACnB,IAAI,EAAE,CAAC,6BAA6B,CAAC;wBACrC,IAAI,EAAE,KAAK;qBACZ;oBACD;wBACE,IAAI,EAAE,iBAAiB;wBACvB,IAAI,EAAE,CAAC,wCAAwC,CAAC;wBAChD,IAAI,EAAE,KAAK;qBACZ;oBACD;wBACE,IAAI,EAAE,cAAc;wBACpB,IAAI,EAAE,CAAC,+BAA+B,CAAC;wBACvC,IAAI,EAAE;4BACJ,OAAO,EAAE,cAAc;yBACxB;qBACF;oBACD;wBACE,IAAI,EAAE,mBAAmB;wBACzB,IAAI,EAAE,CAAC,gDAAgD,CAAC;wBACxD,IAAI,EAAE,KAAK;qBACZ;oBACD;wBACE,IAAI,EAAE,gBAAgB;wBACtB,IAAI,EAAE,CAAC,2CAA2C,CAAC;wBACnD,IAAI,EAAE,WAAW;qBAClB;oBACD;wBACE,IAAI,EAAE,OAAO;wBACb,IAAI,EAAE,CAAC,iCAAiC,CAAC;wBACzC,IAAI,EAAE;4BACJ,OAAO,EAAE,aAAa;yBACvB;qBACF;oBACD;wBACE,IAAI,EAAE,WAAW;wBACjB,IAAI,EAAE,CAAC,wBAAwB,CAAC;wBAChC,IAAI,EAAE,WAAW;qBAClB;oBACD;wBACE,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,CAAC,cAAc,CAAC;wBACtB,IAAI,EAAE,IAAI;qBACX;iBACF;aACF;SACF;KACF;IACD,KAAK,EAAE;QACL;YACE,IAAI,EAAE,wBAAwB;YAC9B,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE;oBACN;wBACE,IAAI,EAAE,gBAAgB;wBACtB,IAAI,EAAE,MAAM;qBACb;oBACD;wBACE,IAAI,EAAE,aAAa;wBACnB,IAAI,EAAE,KAAK;qBACZ;oBACD;wBACE,IAAI,EAAE,iBAAiB;wBACvB,IAAI,EAAE,KAAK;qBACZ;oBACD;wBACE,IAAI,EAAE,cAAc;wBACpB,IAAI,EAAE;4BACJ,OAAO,EAAE,cAAc;yBACxB;qBACF;oBACD;wBACE,IAAI,EAAE,mBAAmB;wBACzB,IAAI,EAAE,KAAK;qBACZ;oBACD;wBACE,IAAI,EAAE,gBAAgB;wBACtB,IAAI,EAAE,WAAW;qBAClB;iBACF;aACF;SACF;QACD;YACE,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE;gBACJ,8EAA8E;gBAC9E,+DAA+D;gBAC/D,0EAA0E;gBAC1E,mBAAmB;gBACnB,EAAE;gBACF,4EAA4E;gBAC5E,sDAAsD;gBACtD,oCAAoC;gBACpC,kEAAkE;gBAClE,gFAAgF;gBAChF,kBAAkB;gBAClB,EAAE;gBACF,0EAA0E;gBAC1E,+EAA+E;gBAC/E,2CAA2C;aAC5C;YACD,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE;oBACN;wBACE,IAAI,EAAE,eAAe;wBACrB,IAAI,EAAE,WAAW;qBAClB;oBACD;wBACE,IAAI,EAAE,YAAY;wBAClB,IAAI,EAAE,KAAK;qBACZ;iBACF;aACF;SACF;QACD;YACE,IAAI,EAAE,aAAa;YACnB,IAAI,EAAE;gBACJ,IAAI,EAAE,MAAM;gBACZ,QAAQ,EAAE;oBACR;wBACE,IAAI,EAAE,QAAQ;qBACf;oBACD;wBACE,IAAI,EAAE,WAAW;wBACjB,MAAM,EAAE;4BACN;gCACE,IAAI,EAAE,iBAAiB;gCACvB,IAAI,EAAE,CAAC,6CAA6C,CAAC;gCACrD,IAAI,EAAE,MAAM;6BACb;4BACD;gCACE,IAAI,EAAE,gBAAgB;gCACtB,IAAI,EAAE,CAAC,sCAAsC,CAAC;gCAC9C,IAAI,EAAE,KAAK;6BACZ;yBACF;qBACF;oBACD;wBACE,IAAI,EAAE,UAAU;qBACjB;iBACF;aACF;SACF;KACF;IACD,MAAM,EAAE;QACN;YACE,IAAI,EAAE,mBAAmB;YACzB,MAAM,EAAE;gBACN;oBACE,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,WAAW;oBACjB,KAAK,EAAE,KAAK;iBACb;gBACD;oBACE,IAAI,EAAE,gBAAgB;oBACtB,IAAI,EAAE,MAAM;oBACZ,KAAK,EAAE,KAAK;iBACb;gBACD;oBACE,IAAI,EAAE,aAAa;oBACnB,IAAI,EAAE,KAAK;oBACX,KAAK,EAAE,KAAK;iBACb;gBACD;oBACE,IAAI,EAAE,iBAAiB;oBACvB,IAAI,EAAE,KAAK;oBACX,KAAK,EAAE,KAAK;iBACb;gBACD;oBACE,IAAI,EAAE,cAAc;oBACpB,IAAI,EAAE;wBACJ,OAAO,EAAE,cAAc;qBACxB;oBACD,KAAK,EAAE,KAAK;iBACb;gBACD;oBACE,IAAI,EAAE,gBAAgB;oBACtB,IAAI,EAAE,WAAW;oBACjB,KAAK,EAAE,KAAK;iBACb;aACF;SACF;QACD;YACE,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE;gBACN;oBACE,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,WAAW;oBACjB,KAAK,EAAE,KAAK;iBACb;gBACD;oBACE,IAAI,EAAE,iBAAiB;oBACvB,IAAI,EAAE,MAAM;oBACZ,KAAK,EAAE,KAAK;iBACb;gBACD;oBACE,IAAI,EAAE,gBAAgB;oBACtB,IAAI,EAAE,KAAK;oBACX,KAAK,EAAE,KAAK;iBACb;aACF;SACF;QACD;YACE,IAAI,EAAE,iBAAiB;YACvB,MAAM,EAAE;gBACN;oBACE,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,WAAW;oBACjB,KAAK,EAAE,KAAK;iBACb;gBACD;oBACE,IAAI,EAAE,aAAa;oBACnB,IAAI,EAAE,KAAK;oBACX,KAAK,EAAE,KAAK;iBACb;gBACD;oBACE,IAAI,EAAE,WAAW;oBACjB,IAAI,EAAE,WAAW;oBACjB,KAAK,EAAE,KAAK;iBACb;gBACD;oBACE,IAAI,EAAE,WAAW;oBACjB,IAAI,EAAE,MAAM;oBACZ,KAAK,EAAE,KAAK;iBACb;gBACD;oBACE,IAAI,EAAE,gBAAgB;oBACtB,IAAI,EAAE,MAAM;oBACZ,KAAK,EAAE,KAAK;iBACb;aACF;SACF;KACF;IACD,MAAM,EAAE;QACN;YACE,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,2BAA2B;YACjC,GAAG,EAAE,2CAA2C;SACjD;QACD;YACE,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,oBAAoB;YAC1B,GAAG,EAAE,qCAAqC;SAC3C;QACD;YACE,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,uBAAuB;YAC7B,GAAG,EAAE,yBAAyB;SAC/B;QACD;YACE,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,sBAAsB;YAC5B,GAAG,EAAE,yBAAyB;SAC/B;QACD;YACE,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,mBAAmB;YACzB,GAAG,EAAE,6BAA6B;SACnC;KACF;CACF,CAAC"}