shadok-ai 0.16.20 → 0.16.21
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/README.md +10 -1
- package/dist/server.js +32 -0
- package/dist/server.js.map +1 -1
- package/dist/telegram.d.ts +13 -6
- package/dist/telegram.js +68 -35
- package/dist/telegram.js.map +1 -1
- package/dist/tg-pairing.d.ts +38 -0
- package/dist/tg-pairing.js +97 -0
- package/dist/tg-pairing.js.map +1 -0
- package/package.json +1 -1
- package/public/index.html +55 -3
package/dist/telegram.d.ts
CHANGED
|
@@ -74,15 +74,22 @@ export declare function nextToolsState(arg: string, current: boolean): boolean;
|
|
|
74
74
|
/**
|
|
75
75
|
* Who may write to the bot in private?
|
|
76
76
|
*
|
|
77
|
-
*
|
|
78
|
-
*
|
|
79
|
-
*
|
|
77
|
+
* With no allowlist configured, anyone who found the bot would get a Claude
|
|
78
|
+
* session on the machine. DMs therefore belong to ONE owner, and with no owner
|
|
79
|
+
* yet the sender must `pair` — present the code the web cockpit shows
|
|
80
|
+
* (`src/tg-pairing.ts`). It used to be "the first to write claims DMs", which
|
|
81
|
+
* handed the machine to whichever stranger got there first.
|
|
80
82
|
*
|
|
81
|
-
* A sender with no id is refused
|
|
82
|
-
* nothing to store, hence nothing that would keep the next one out.
|
|
83
|
+
* A sender with no id is refused outright: there is nothing to store as owner.
|
|
83
84
|
* Pure — unit tested.
|
|
84
85
|
*/
|
|
85
|
-
export declare function dmGate(owner: number | null, from: number | undefined): "
|
|
86
|
+
export declare function dmGate(owner: number | null, from: number | undefined): "pair" | "allow" | "deny";
|
|
87
|
+
/**
|
|
88
|
+
* The code a message presents to pair the bot, or null. `/setup <code>` is the
|
|
89
|
+
* typed form; `/start <code>` is what Telegram sends by itself when the bot is
|
|
90
|
+
* reached through a `?start=` / `?startgroup=` deep link. Pure — unit tested.
|
|
91
|
+
*/
|
|
92
|
+
export declare function pairingCodeOf(text: unknown): string | null;
|
|
86
93
|
/**
|
|
87
94
|
* The line that tells the agent WHICH message a Telegram reply answers.
|
|
88
95
|
*
|
package/dist/telegram.js
CHANGED
|
@@ -15,6 +15,7 @@ import { loadCrons, upsertCron, removeCron, resolveCronId, nextRunFor, onceAt, c
|
|
|
15
15
|
import { SHADOK_DIR, loadConfig, telegramConfig } from "./config.js";
|
|
16
16
|
import { readAndClearUpdateResult } from "./update-flag.js";
|
|
17
17
|
import { UPDATE_EXIT_CODE } from "./supervisor.js";
|
|
18
|
+
import { pairingRefusal, redeemPairingCode } from "./tg-pairing.js";
|
|
18
19
|
/**
|
|
19
20
|
* Telegram control bridge. Runs inside the server process (only when
|
|
20
21
|
* TELEGRAM_BOT_TOKEN is set) and connects to the server's own /ws as a plain
|
|
@@ -142,21 +143,35 @@ export function nextToolsState(arg, current) {
|
|
|
142
143
|
/**
|
|
143
144
|
* Who may write to the bot in private?
|
|
144
145
|
*
|
|
145
|
-
*
|
|
146
|
-
*
|
|
147
|
-
*
|
|
146
|
+
* With no allowlist configured, anyone who found the bot would get a Claude
|
|
147
|
+
* session on the machine. DMs therefore belong to ONE owner, and with no owner
|
|
148
|
+
* yet the sender must `pair` — present the code the web cockpit shows
|
|
149
|
+
* (`src/tg-pairing.ts`). It used to be "the first to write claims DMs", which
|
|
150
|
+
* handed the machine to whichever stranger got there first.
|
|
148
151
|
*
|
|
149
|
-
* A sender with no id is refused
|
|
150
|
-
* nothing to store, hence nothing that would keep the next one out.
|
|
152
|
+
* A sender with no id is refused outright: there is nothing to store as owner.
|
|
151
153
|
* Pure — unit tested.
|
|
152
154
|
*/
|
|
153
155
|
export function dmGate(owner, from) {
|
|
154
156
|
if (typeof from !== "number")
|
|
155
157
|
return "deny";
|
|
156
158
|
if (owner === null)
|
|
157
|
-
return "
|
|
159
|
+
return "pair";
|
|
158
160
|
return owner === from ? "allow" : "deny";
|
|
159
161
|
}
|
|
162
|
+
/**
|
|
163
|
+
* The code a message presents to pair the bot, or null. `/setup <code>` is the
|
|
164
|
+
* typed form; `/start <code>` is what Telegram sends by itself when the bot is
|
|
165
|
+
* reached through a `?start=` / `?startgroup=` deep link. Pure — unit tested.
|
|
166
|
+
*/
|
|
167
|
+
export function pairingCodeOf(text) {
|
|
168
|
+
if (typeof text !== "string")
|
|
169
|
+
return null;
|
|
170
|
+
const cmd = parseCommand(text);
|
|
171
|
+
if (!cmd || (cmd.cmd !== "setup" && cmd.cmd !== "start") || !cmd.arg)
|
|
172
|
+
return null;
|
|
173
|
+
return cmd.arg;
|
|
174
|
+
}
|
|
160
175
|
/** How much of a quoted message rides along. It is prepended to EVERY reply, so
|
|
161
176
|
* unbounded it would crowd out the message it exists to contextualise. */
|
|
162
177
|
const QUOTE_MAX = 300;
|
|
@@ -1411,10 +1426,22 @@ export function startTelegram(port, authCookie) {
|
|
|
1411
1426
|
const verdict = dmGate(loadTgOwner(), from);
|
|
1412
1427
|
if (verdict === "allow")
|
|
1413
1428
|
return true;
|
|
1414
|
-
if (verdict === "
|
|
1415
|
-
|
|
1416
|
-
|
|
1417
|
-
|
|
1429
|
+
if (verdict === "pair") {
|
|
1430
|
+
// No owner yet: the only message that gets anywhere is a valid code, and
|
|
1431
|
+
// it is consumed — it is a pairing, not a prompt for an agent.
|
|
1432
|
+
const code = pairingCodeOf(msg.text);
|
|
1433
|
+
const v = code ? redeemPairingCode(code) : "none";
|
|
1434
|
+
if (v === "ok") {
|
|
1435
|
+
saveTgOwner(from);
|
|
1436
|
+
console.log(`telegram: DM paired with user ${from} — others will be refused`);
|
|
1437
|
+
await reply(msg.chat.id, undefined, "✅ Paired — this bot's DMs are now yours. Send a message to talk to your agent.");
|
|
1438
|
+
}
|
|
1439
|
+
else {
|
|
1440
|
+
if (code)
|
|
1441
|
+
console.log(`telegram: DM pairing refused for user ${from} (${v})`);
|
|
1442
|
+
await reply(msg.chat.id, undefined, pairingRefusal(v));
|
|
1443
|
+
}
|
|
1444
|
+
return false;
|
|
1418
1445
|
}
|
|
1419
1446
|
console.log(`telegram: refused DM from user ${from ?? "?"} (not the owner)`);
|
|
1420
1447
|
await reply(msg.chat.id, undefined, "⛔ This bot is private.");
|
|
@@ -1429,9 +1456,9 @@ export function startTelegram(port, authCookie) {
|
|
|
1429
1456
|
await reply(chat.id, msg.message_thread_id, "⛔ this bot is restricted.");
|
|
1430
1457
|
return;
|
|
1431
1458
|
}
|
|
1432
|
-
// DMs belong to
|
|
1433
|
-
// has already filtered above): this is the
|
|
1434
|
-
// that configures none.
|
|
1459
|
+
// DMs belong to ONE owner, paired with the cockpit's code. An explicit
|
|
1460
|
+
// allowlist still wins (it has already filtered above): this is the
|
|
1461
|
+
// default guard, for an install that configures none.
|
|
1435
1462
|
if (chat.type === "private" && !(await guardDm(msg)))
|
|
1436
1463
|
return;
|
|
1437
1464
|
const threadId = msg.message_thread_id;
|
|
@@ -1442,12 +1469,29 @@ export function startTelegram(port, authCookie) {
|
|
|
1442
1469
|
if (isGroup) {
|
|
1443
1470
|
const bound = loadTgGroup();
|
|
1444
1471
|
if (bound === null) {
|
|
1445
|
-
|
|
1446
|
-
|
|
1447
|
-
|
|
1472
|
+
// Binding the board needs the pairing code from the web cockpit: a
|
|
1473
|
+
// bare /setup used to bind ANY group that sent it, so anyone who found
|
|
1474
|
+
// the bot could add it to their own group and drive agents.
|
|
1475
|
+
const code = pairingCodeOf(msg.text);
|
|
1476
|
+
if (code) {
|
|
1477
|
+
const v = redeemPairingCode(code);
|
|
1478
|
+
if (v === "ok") {
|
|
1479
|
+
saveTgGroup(chat.id);
|
|
1480
|
+
// Whoever typed a code only the cockpit's admin can see is the
|
|
1481
|
+
// legitimate owner; DMs follow them unless someone already owns them.
|
|
1482
|
+
const from = msg.from?.id;
|
|
1483
|
+
if (loadTgOwner() === null && typeof from === "number" && !msg.from?.is_bot)
|
|
1484
|
+
saveTgOwner(from);
|
|
1485
|
+
console.log(`telegram: board group ${chat.id} paired by user ${from ?? "?"}`);
|
|
1486
|
+
await reply(chat.id, threadId, "✅ This group is now shadok-ai's board. Use /spawn <name> to create an agent (a forum topic). Enable Topics + make me admin if /spawn fails.");
|
|
1487
|
+
}
|
|
1488
|
+
else {
|
|
1489
|
+
console.log(`telegram: board pairing refused in chat ${chat.id} (${v})`);
|
|
1490
|
+
await reply(chat.id, threadId, pairingRefusal(v));
|
|
1491
|
+
}
|
|
1448
1492
|
}
|
|
1449
1493
|
else {
|
|
1450
|
-
await reply(chat.id, threadId, "
|
|
1494
|
+
await reply(chat.id, threadId, "To bind this group as shadok-ai's board, send /setup <code> here. Get the code from the cockpit's Telegram panel (“Pair Telegram”).");
|
|
1451
1495
|
}
|
|
1452
1496
|
return;
|
|
1453
1497
|
}
|
|
@@ -1461,7 +1505,7 @@ export function startTelegram(port, authCookie) {
|
|
|
1461
1505
|
switch (cmd.cmd) {
|
|
1462
1506
|
case "start":
|
|
1463
1507
|
case "help":
|
|
1464
|
-
await reply(chat.id, threadId, "shadok-ai — talk to your agent by sending a message.\n/spawn <name> — new agent in a topic (groups)\n/stop — interrupt the current turn (esc)\n/new — reset · /end — kill the session · /list — bindings\n/tools [on|off] — show or hide tool calls in this agent\n/secrets — list · /secret KEY value — set · /unsecret KEY\n/cron — schedule prompts (monitoring/reporting)\n/login — sign this instance in to Claude · /code <code> — finish the sign-in");
|
|
1508
|
+
await reply(chat.id, threadId, "shadok-ai — talk to your agent by sending a message.\n/spawn <name> — new agent in a topic (groups)\n/stop — interrupt the current turn (esc)\n/new — reset · /end — kill the session · /list — bindings\n/tools [on|off] — show or hide tool calls in this agent\n/secrets — list · /secret KEY value — set · /unsecret KEY\n/cron — schedule prompts (monitoring/reporting)\n/login — sign this instance in to Claude · /code <code> — finish the sign-in\n/setup <code> — pair the bot (code from the cockpit's Telegram panel)");
|
|
1465
1509
|
return;
|
|
1466
1510
|
case "setup":
|
|
1467
1511
|
if (isGroup)
|
|
@@ -1849,8 +1893,8 @@ export function startTelegram(port, authCookie) {
|
|
|
1849
1893
|
return;
|
|
1850
1894
|
// A keyboard can only appear after an accepted message, so in principle a
|
|
1851
1895
|
// stranger cannot reach this path — we close it anyway rather than depend
|
|
1852
|
-
// on that assumption. Never a
|
|
1853
|
-
// by clicking.
|
|
1896
|
+
// on that assumption. Never a pairing here: DMs are paired by a typed code,
|
|
1897
|
+
// not by clicking.
|
|
1854
1898
|
if (msg.chat?.type === "private" && dmGate(loadTgOwner(), cq.from?.id) !== "allow") {
|
|
1855
1899
|
await tg("answerCallbackQuery", { callback_query_id: cq.id, text: "⛔ This bot is private." });
|
|
1856
1900
|
return;
|
|
@@ -2136,21 +2180,10 @@ export function startTelegram(port, authCookie) {
|
|
|
2136
2180
|
return;
|
|
2137
2181
|
}
|
|
2138
2182
|
}
|
|
2139
|
-
// No DM binding
|
|
2140
|
-
//
|
|
2141
|
-
//
|
|
2142
|
-
//
|
|
2143
|
-
const group = loadTgGroup();
|
|
2144
|
-
if (group === null)
|
|
2145
|
-
return;
|
|
2146
|
-
const admins = await tg("getChatAdministrators", { chat_id: group });
|
|
2147
|
-
const creator = admins?.ok && Array.isArray(admins.result)
|
|
2148
|
-
? admins.result.find((a) => a.status === "creator" && !a.user?.is_bot)
|
|
2149
|
-
: null;
|
|
2150
|
-
if (creator?.user?.id) {
|
|
2151
|
-
saveTgOwner(creator.user.id);
|
|
2152
|
-
console.log(`telegram: DM owner adopted from the board group's creator (user ${creator.user.id})`);
|
|
2153
|
-
}
|
|
2183
|
+
// No DM binding: DMs stay unowned until someone pairs with the cockpit's
|
|
2184
|
+
// code. Adopting the bound group's CREATOR used to fill this gap, but
|
|
2185
|
+
// nothing proved who had bound that group — with a bare /setup it could be
|
|
2186
|
+
// a stranger, who was then handed the DMs on top.
|
|
2154
2187
|
};
|
|
2155
2188
|
const reconcileOnBoot = async () => {
|
|
2156
2189
|
await adoptOwnerFromBindings();
|
package/dist/telegram.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"telegram.js","sourceRoot":"","sources":["../src/telegram.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,SAAS,MAAM,IAAI,CAAC;AAC3B,OAAO,EACL,YAAY,EACZ,aAAa,EACb,aAAa,EACb,kBAAkB,EAClB,qBAAqB,EACrB,WAAW,EACX,WAAW,EACX,WAAW,EACX,WAAW,EACX,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,cAAc,EACd,UAAU,GACX,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAC3E,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EACL,SAAS,EACT,UAAU,EACV,UAAU,EACV,aAAa,EACb,UAAU,EACV,MAAM,EACN,YAAY,EACZ,iBAAiB,EACjB,aAAa,GAGd,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AACrE,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEnD;;;;;;;;GAQG;AAEH;;6EAE6E;AAC7E,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAElC,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,+CAA+C;AAEvE,6EAA6E;AAC7E,0EAA0E;AAC1E,4EAA4E;AAC5E,8CAA8C;AAC9C,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;AACxD,MAAM,aAAa,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,6BAA6B;AACrE,MAAM,gBAAgB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,sBAAsB;AAEtE,4EAA4E;AAE5E,gEAAgE;AAChE,MAAM,UAAU,OAAO,CAAC,IAAkC,EAAE,QAAiB;IAC3E,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS;QAAE,OAAO,WAAW,IAAI,CAAC,EAAE,EAAE,CAAC;IACzD,OAAO,QAAQ,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,EAAE,IAAI,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,EAAE,EAAE,CAAC;AACxE,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,KAAK,CAAC,IAAY,EAAE,GAAG,GAAG,SAAS;IACjD,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,IAAI,IAAI,GAAG,IAAI,CAAC;IAChB,OAAO,IAAI,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;QACzB,IAAI,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QACtC,IAAI,GAAG,GAAG,GAAG,GAAG,GAAG;YAAE,GAAG,GAAG,GAAG,CAAC,CAAC,8BAA8B;QAC9D,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;QAC7B,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC5C,CAAC;IACD,IAAI,IAAI;QAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACzB,OAAO,GAAG,CAAC;AACb,CAAC;AAED,4EAA4E;AAC5E,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;IACvD,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AAClE,CAAC;AAED;;;;;GAKG;AACH;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,oBAAoB,CAAC,CAOpC;IACC,0EAA0E;IAC1E,4EAA4E;IAC5E,6EAA6E;IAC7E,0EAA0E;IAC1E,2EAA2E;IAC3E,IAAI,CAAC,CAAC,MAAM,IAAI,IAAI;QAAE,OAAO,KAAK,CAAC;IACnC,IAAI,CAAC,CAAC,SAAS;QAAE,OAAO,KAAK,CAAC,CAAQ,oBAAoB;IAC1D,OAAO,CAAC,CAAC,YAAY,CAAC;AACxB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,UAAU,CAAC,IAAqE;IAC9F,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACxG,IAAI,IAAI;QAAE,OAAO,IAAI,CAAC;IACtB,MAAM,MAAM,GAAG,CAAC,IAAI,EAAE,QAAQ,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC7C,OAAO,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AAC3C,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,aAAa,CAAC,CAAyD;IACrF,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM;QAAE,OAAO,KAAK,CAAC;IACpC,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACnC,IAAI,CAAC,IAAI;QAAE,OAAO,KAAK,CAAC;IACxB,OAAO,IAAI,KAAK,CAAC,CAAC,WAAW,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,GAAW,EAAE,OAAgB;IAC1D,MAAM,CAAC,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACnC,IAAI,CAAC,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAC5B,IAAI,CAAC,KAAK,KAAK;QAAE,OAAO,KAAK,CAAC;IAC9B,OAAO,CAAC,OAAO,CAAC;AAClB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,MAAM,CAAC,KAAoB,EAAE,IAAwB;IACnE,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,MAAM,CAAC;IAC5C,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,OAAO,CAAC;IACnC,OAAO,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;AAC3C,CAAC;AAED;2EAC2E;AAC3E,MAAM,SAAS,GAAG,GAAG,CAAC;AAEtB;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,UAAU,YAAY,CAAC,GAG5B;IACC,MAAM,CAAC,GAAG,GAAG,CAAC,gBAAgB,CAAC;IAC/B,IAAI,CAAC,CAAC;QAAE,OAAO,SAAS,CAAC;IACzB,2EAA2E;IAC3E,IAAI,CAAC,CAAC,mBAAmB;QAAE,OAAO,SAAS,CAAC;IAE5C,MAAM,GAAG,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,CAAC;IAC7E,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,IAAK,CAAC,CAAC,IAA2B,IAAK,CAAC,CAAC,OAA8B,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACrH,IAAI,MAAM,EAAE,CAAC;QACX,yEAAyE;QACzE,wCAAwC;QACxC,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QACzC,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;QAC5E,OAAO,gBAAgB,GAAG,MAAM,GAAG,GAAG,CAAC;IACzC,CAAC;IACD,4EAA4E;IAC5E,4BAA4B;IAC5B,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC;IACvJ,OAAO,gBAAgB,GAAG,MAAM,MAAM,GAAG,CAAC;AAC5C,CAAC;AAED;;8CAE8C;AAC9C,MAAM,YAAY,GAAmD;IACnE,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE;IAChC,IAAI,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE;IACjC,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE;IAChC,QAAQ,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE;CAC3C,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,eAAe,CAAC,MAA0B,EAAE,IAAI,GAAG,KAAK,EAAE,IAAa;IACrF,8EAA8E;IAC9E,4DAA4D;IAC5D,IAAI,IAAI;QAAE,OAAO,iBAAiB,CAAC;IACnC,MAAM,IAAI,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACjC,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACvD,MAAM,IAAI,GAAG,IAAI,EAAE,IAAI,IAAI,IAAI,CAAC;IAChC,MAAM,IAAI,GAAG,IAAI,EAAE,IAAI,IAAI,MAAM,IAAI,EAAE,CAAC;IACxC,6EAA6E;IAC7E,uEAAuE;IACvE,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAClD,OAAO,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,IAAI,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC;AAChE,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,GAAQ,EAAE,YAA2B;IACnE,MAAM,KAAK,GAAG,GAAG,EAAE,kBAAkB,CAAC;IACtC,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC3C,OAAO,GAAG,EAAE,IAAI,EAAE,EAAE,KAAK,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;AACvD,CAAC;AAkBD;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,YAAY,CAAC,GAAQ;IACnC,4EAA4E;IAC5E,8EAA8E;IAC9E,sDAAsD;IACtD,MAAM,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC;IACpB,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC;QACf,OAAO;YACL,MAAM,EAAE,CAAC,CAAC,OAAO;YACjB,YAAY,EAAE,CAAC,CAAC,cAAc;YAC9B,IAAI,EAAE,OAAO;YACb,GAAG,CAAC,CAAC,CAAC,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzD,GAAG,CAAC,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC3D,CAAC;IACJ,CAAC;IACD,4EAA4E;IAC5E,6EAA6E;IAC7E,yEAAyE;IACzE,0CAA0C;IAC1C,MAAM,GAAG,GAAG,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,UAAU,CAAC;IACzD,IAAI,GAAG,EAAE,OAAO,EAAE,CAAC;QACjB,OAAO;YACL,MAAM,EAAE,GAAG,CAAC,OAAO;YACnB,YAAY,EAAE,GAAG,CAAC,cAAc;YAChC,IAAI,EAAE,OAAO;YACb,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrD,GAAG,CAAC,GAAG,CAAC,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7D,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrD,GAAG,CAAC,GAAG,CAAC,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC/D,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QACjD,MAAM,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC1C,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC,cAAc,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC;IACrG,CAAC;IACD,0EAA0E;IAC1E,2EAA2E;IAC3E,2EAA2E;IAC3E,yCAAyC;IACzC,MAAM,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC;IACpB,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC;QACf,OAAO;YACL,MAAM,EAAE,CAAC,CAAC,OAAO;YACjB,YAAY,EAAE,CAAC,CAAC,cAAc;YAC9B,IAAI,EAAE,MAAM;YACZ,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjD,GAAG,CAAC,CAAC,CAAC,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzD,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjD,GAAG,CAAC,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC3D,CAAC;IACJ,CAAC;IACD,MAAM,CAAC,GAAG,GAAG,CAAC,QAAQ,CAAC;IACvB,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC;QACf,OAAO;YACL,MAAM,EAAE,CAAC,CAAC,OAAO;YACjB,YAAY,EAAE,CAAC,CAAC,cAAc;YAC9B,IAAI,EAAE,OAAO,CAAC,CAAC,SAAS,KAAK,QAAQ,IAAI,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,QAAQ,CAAC;gBACvE,CAAC,CAAC,OAAO;gBACT,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,KAAK,QAAQ,IAAI,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,QAAQ,CAAC;oBACnE,CAAC,CAAC,OAAO;oBACT,CAAC,CAAC,MAAM;YACZ,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjD,GAAG,CAAC,CAAC,CAAC,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzD,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAClD,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,cAAc,CAAC,WAAmB;IAChD,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC5D,MAAM,KAAK,GAA2B;QACpC,WAAW,EAAE,KAAK;QAClB,YAAY,EAAE,KAAK;QACnB,WAAW,EAAE,KAAK;QAClB,YAAY,EAAE,MAAM;QACpB,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,KAAK;QACtB,yEAAyE;QACzE,0EAA0E;QAC1E,iBAAiB,EAAE,KAAK;QACxB,YAAY,EAAE,KAAK;QACnB,eAAe,EAAE,IAAI;QACrB,UAAU,EAAE,KAAK;QACjB,kBAAkB,EAAE,MAAM;QAC1B,iBAAiB,EAAE,KAAK;KACzB,CAAC;IACF,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC;AAC9B,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAAC,EAAU,EAAE,IAAY,EAAE,WAAmB;IACzE,MAAM,IAAI,GAAG,IAAI;QACf,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE;QAC/E,CAAC,CAAC,EAAE,CAAC;IACP,IAAI,IAAI,IAAI,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC,gBAAgB;IAC5F,MAAM,GAAG,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;IACxC,OAAO,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,IAAI,IAAI,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,IAAI,GAAG,EAAE,CAAC;AACpE,CAAC;AAED;;;;;;GAMG;AACH,MAAM,SAAS,GAA2B;IACxC,WAAW,EAAE,KAAK;IAClB,iBAAiB,EAAE,KAAK;IACxB,YAAY,EAAE,MAAM;IACpB,kBAAkB,EAAE,KAAK;IACzB,YAAY,EAAE,MAAM;IACpB,YAAY,EAAE,KAAK;IACnB,WAAW,EAAE,KAAK;IAClB,WAAW,EAAE,KAAK;IAClB,aAAa,EAAE,KAAK;IACpB,WAAW,EAAE,KAAK;CACnB,CAAC;AAEF;;8EAE8E;AAC9E,MAAM,UAAU,cAAc,CAAC,GAAiB;IAC9C,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACvG,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAC9B,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO;QAAE,OAAO,KAAK,CAAC;IACvC,yEAAyE;IACzE,kEAAkE;IAClE,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO;QAAE,OAAO,KAAK,CAAC;IACvC,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;0CAE0C;AAC1C,MAAM,UAAU,aAAa,CAAC,GAAiB;IAC7C,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACzF,IAAI,IAAI;QAAE,OAAO,GAAG,GAAG,CAAC,YAAY,IAAI,IAAI,EAAE,CAAC;IAC/C,MAAM,GAAG,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;IAChC,OAAO,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,YAAY,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC;AAC/D,CAAC;AAgBD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAmB,EAAE,OAAgB;IACpE,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YACvB,MAAM,GAAG,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9D,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,IAAI,GAAG,GAAG,GAAG,CAAC,CAAC;YAChD,IAAI,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;gBACrB,KAAK,CAAC,IAAI,CAAC,sDAAsD,CAAC,CAAC;gBACnE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACxB,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,IAAI,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,MAAO,CAAC,MAAM,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAClG,CAAC;YACJ,CAAC;YACD,IAAI,CAAC,CAAC,UAAU,EAAE,IAAI,EAAE;gBAAE,KAAK,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;iBACjF,IAAI,CAAC,CAAC,SAAS;gBAAE,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;YACjE,SAAS;QACX,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;IAChG,CAAC;IACD,OAAO,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAChF,CAAC;AAED;;2BAE2B;AAC3B,MAAM,UAAU,cAAc,CAAC,GAAiB;IAC9C,MAAM,EAAE,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,GAAG,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC;IACtF,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;IACtF,OAAO,8DAA8D,IAAI,OAAO,EAAE,uEAAuE,CAAC;AAC5J,CAAC;AAED;;iCAEiC;AACjC,MAAM,UAAU,SAAS,CAAC,GAAiB,EAAE,GAAQ;IACnD,IAAI,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,QAAQ,GAAG,aAAa;QAAE,OAAO,IAAI,CAAC;IAC9D,OAAO,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,OAAO,IAAI,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC;AACpE,CAAC;AAED,MAAM,UAAU,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AAEvG;;;;;;;GAOG;AACH,MAAM,UAAU,gBAAgB,CAAC,EAAU;IACzC,4EAA4E;IAC5E,uDAAuD;IACvD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,KAAK,GAAG,CAAC,IAAY,EAAE,EAAE;QAC7B,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjB,OAAO,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC;IACjC,CAAC,CAAC;IACF,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,4BAA4B,EAAE,CAAC,EAAE,EAAE,IAAY,EAAE,EAAE,CACpE,KAAK,CAAC,QAAQ,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,CAC3D,CAAC;IACF,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,EAAE,EAAE,CAAS,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;IACzF,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,qDAAqD;IACxE,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,gCAAgC,EAAE,WAAW,CAAC,CAAC,CAAC,mBAAmB;IACjF,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,oBAAoB,EAAE,WAAW,CAAC,CAAC,OAAO,CAAC,gBAAgB,EAAE,WAAW,CAAC,CAAC;IACxF,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,iCAAiC,EAAE,aAAa,CAAC,CAAC,CAAC,WAAW;IAC5E,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,+BAA+B,EAAE,aAAa,CAAC,CAAC,CAAC,WAAW;IAC1E,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,yCAAyC,EAAE,qBAAqB,CAAC,CAAC;IAChF,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC,CAAC,UAAU;IACrD,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,CAAS,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACxD,OAAO,CAAC,CAAC;AACX,CAAC;AAED;;;sEAGsE;AACtE,MAAM,UAAU,UAAU,CAAC,IAAgB,EAAE,UAAU,GAAG,IAAI;IAC5D,IAAI,KAAK,GAA0B,IAAI,CAAC;IACxC,OAAO;QACL,KAAK;YACH,IAAI,KAAK;gBAAE,OAAO;YAClB,IAAI,EAAE,CAAC;YACP,KAAK,GAAG,WAAW,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;YACtC,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,gDAAgD;QACnE,CAAC;QACD,IAAI;YACF,IAAI,KAAK;gBAAE,aAAa,CAAC,KAAK,CAAC,CAAC;YAChC,KAAK,GAAG,IAAI,CAAC;QACf,CAAC;KACF,CAAC;AACJ,CAAC;AAED;;;oDAGoD;AACpD,MAAM,UAAU,eAAe,CAC7B,KAA4C,EAC5C,OAAO,GAAG,IAAI;IAEd,MAAM,MAAM,GAAG,IAAI,GAAG,EAAiD,CAAC;IACxE,OAAO;QACL,GAAG,CAAC,OAAO,EAAE,IAAI;YACf,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAC9B,IAAI,CAAC,EAAE,CAAC;gBACN,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACnB,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;gBAClB,OAAO;YACT,CAAC;YACD,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC;YACrB,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC5B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBACvB,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YACxB,CAAC,EAAE,OAAO,CAAC,CAAC;YACZ,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,2CAA2C;YAC5D,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QACxC,CAAC;KACF,CAAC;AACJ,CAAC;AAKD;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,WAAW,CAAC,IAAY,EAAE,IAAa,EAAE,KAAK,GAAG,KAAK;IACpE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;AACzG,CAAC;AAED;4CAC4C;AAC5C,MAAM,cAAc,GAAG,MAAM,CAAC;AAE9B,oFAAoF;AACpF,MAAM,mBAAmB,GAAG,CAAC,GAAG,MAAM,CAAC;AAEvC;;;;;GAKG;AACH,MAAM,gBAAgB,GAAG,MAAM,CAAC;AAEhC;;;;;;;;;;GAUG;AACH,MAAM,UAAU,UAAU,CAAC,KAAkB,EAAE,EAAU;IACvD,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAAC,GAAY;IACxC,MAAM,CAAC,GAAG,GAAsF,CAAC;IACjG,IAAI,CAAC,CAAC;QAAE,OAAO,wDAAwD,CAAC;IACxE,IAAI,CAAC,CAAC,EAAE;QAAE,OAAO,YAAY,CAAC;IAC9B,MAAM,GAAG,GAAG,OAAO,CAAC,CAAC,WAAW,KAAK,QAAQ,IAAI,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,8BAA8B,CAAC;IAChH,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,UAAU,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;AACvD,CAAC;AAED;+DAC+D;AAC/D,MAAM,eAAe,GAAG,GAAG,CAAC;AAE5B;4EAC4E;AAC5E,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,GAAG,MAAM,CAAC;AAE1C;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,WAAW,CAAC,GAAY;IACtC,MAAM,CAAC,GAAG,GAAuG,CAAC;IAClH,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,UAAU,KAAK,GAAG;QAAE,OAAO,IAAI,CAAC;IACpD,MAAM,KAAK,GAAG,CAAC,CAAC,UAAU,EAAE,WAAW,CAAC;IACxC,0EAA0E;IAC1E,wEAAwE;IACxE,iCAAiC;IACjC,MAAM,GAAG,GAAG,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACzF,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,eAAe,CAAC;AACjD,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,IAAsB,EACtB,IAAgG;IAEhG,IAAI,IAAI,GAAG,IAAI,CAAC,QAAQ,IAAI,eAAe,CAAC;IAC5C,SAAS,CAAC;QACR,MAAM,GAAG,GAAG,MAAM,IAAI,EAAE,CAAC;QACzB,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;QAC9B,uEAAuE;QACvE,oEAAoE;QACpE,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,GAAG,IAAI;YAAE,OAAO,GAAG,CAAC;QAC7C,IAAI,IAAI,IAAI,CAAC;QACb,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC;QACpB,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACzB,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,aAAa;IAC3B,IAAI,IAAI,GAAqB,OAAO,CAAC,OAAO,EAAE,CAAC;IAC/C,OAAO,CAAI,EAAoB,EAAc,EAAE;QAC7C,2EAA2E;QAC3E,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAe,CAAC;QAC7C,IAAI,GAAG,IAAI,CAAC,IAAI,CACd,GAAG,EAAE,GAAE,CAAC,EACR,GAAG,EAAE,GAAE,CAAC,CACT,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;AACJ,CAAC;AAED;oCACoC;AACpC,MAAM,WAAW,GAAG,EAAE,CAAC;AAEvB;;;;;;;;;GASG;AACH,SAAS,QAAQ,CAAC,CAAS;IACzB,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;AACjE,CAAC;AAED;yEACyE;AACzE,MAAM,mBAAmB,GAAG,EAAE,CAAC;AAE/B;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,cAAc,CAAC,OAAe,EAAE,aAAqB;IACnE,MAAM,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC5B,MAAM,CAAC,GAAG,QAAQ,CAAC,aAAa,CAAC,CAAC;IAClC,IAAI,CAAC,CAAC,MAAM,GAAG,WAAW,IAAI,CAAC,CAAC,MAAM,GAAG,WAAW;QAAE,OAAO,KAAK,CAAC;IACnE,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,mBAAmB,CAAC,CAAC,CAAC;AACrD,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,cAAc,CAAC,OAAe,EAAE,MAAgB;IAC9D,MAAM,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC5B,IAAI,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC;IACrB,4EAA4E;IAC5E,2EAA2E;IAC3E,iDAAiD;IACjD,4EAA4E;IAC5E,sDAAsD;IACtD,wEAAwE;IACxE,6EAA6E;IAC7E,wEAAwE;IACxE,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;QACvB,MAAM,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QACtB,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IACvC,CAAC,CAAC,CAAC;AACL,CAAC;AAkBD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,UAAU,CAAC,CAAoC,EAAE,KAAK,GAAG,SAAS;IAChF,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,IAAI,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IACpD,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC;IAC5B,IAAI,CAAC,IAAI;QAAE,OAAO,CAAC,CAAC;IACpB,MAAM,IAAI,GAAG,KAAK,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IAClC,IAAI,IAAI,GAAG,EAAE;QAAE,OAAO,CAAC,CAAC;IACxB,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;IACpE,OAAO,CAAC,GAAG,MAAM,GAAG,CAAC,CAAC;AACxB,CAAC;AAED;yEACyE;AACzE;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa;IAC5C,OAAO,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,CAAS;IACtC,MAAM,IAAI,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QAChC;YACE,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;YACpF,wEAAwE;YACxE,0EAA0E;YAC1E,oEAAoE;YACpE,aAAa,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;SAChF;KACF,CAAC,CAAC;IACH,IAAI,CAAC,CAAC,KAAK;QAAE,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,aAAa,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;IACnE,OAAO,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC;AACnC,CAAC;AAED,2DAA2D;AAC3D,MAAM,UAAU,aAAa,CAC3B,IAAY;IAEZ,IAAI,IAAI,KAAK,GAAG;QAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;IAC7C,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACxC,IAAI,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IACpB,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC;IAC5E,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACnC,CAAC;AAiDD;;;;GAIG;AACH,IAAI,eAAe,GAAsE,IAAI,CAAC;AAC9F,MAAM,UAAU,mBAAmB,CAAC,MAAc,EAAE,QAAgB,EAAE,IAAY;IAChF,eAAe,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;AAC5C,CAAC;AAED,8EAA8E;AAC9E,IAAI,cAAc,GAAwD,IAAI,CAAC;AAC/E,MAAM,UAAU,kBAAkB,CAAC,MAAc,EAAE,QAAgB;IACjE,cAAc,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;AACrC,CAAC;AAED;;;;;;GAMG;AACH,IAAI,kBAAkB,GAAG,KAAK,CAAC;AAC/B,6EAA6E;AAC7E,IAAI,qBAAqB,GAA2B,IAAI,CAAC;AAEzD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,iBAAiB;IAC/B,IAAI,CAAC,uBAAuB,CAAC,kBAAkB,EAAE,qBAAqB,KAAK,IAAI,CAAC;QAAE,OAAO;IACzF,IAAI,qBAAqB,EAAE,EAAE;QAAE,kBAAkB,GAAG,IAAI,CAAC;AAC3D,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,uBAAuB,CAAC,gBAAyB,EAAE,QAAiB;IAClF,OAAO,CAAC,gBAAgB,IAAI,QAAQ,CAAC;AACvC,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,oBAAoB;IAClC,kBAAkB,GAAG,KAAK,CAAC;AAC7B,CAAC;AAQD,MAAM,WAAW,GAAmB;IAClC,IAAI,KAAI,CAAC;IACT,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK;IACpB,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;CACrD,CAAC;AAEF,MAAM,UAAU,aAAa,CAAC,IAAY,EAAE,UAAmB;IAC7D,mFAAmF;IACnF,MAAM,GAAG,GAAG,cAAc,CAAC,UAAU,EAAE,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACxD,IAAI,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK;QAAE,OAAO,WAAW,CAAC,CAAC,oCAAoC;IACxF,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;IACxB,MAAM,GAAG,GAAG,+BAA+B,KAAK,EAAE,CAAC;IACnD,MAAM,OAAO,GAAG,GAAG,CAAC,YAAY,CAAC;IACjC,kFAAkF;IAClF,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,WAAW,GAAkB,IAAI,CAAC;IACtC,IAAI,UAAU,GAAkB,IAAI,CAAC;IACrC,IAAI,cAAc,GAA0C,IAAI,CAAC;IACjE,IAAI,SAAS,GAA2B,IAAI,CAAC;IAC7C,MAAM,OAAO,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC1C,4EAA4E;IAC5E,0EAA0E;IAC1E,MAAM,UAAU,GAAG,IAAI,GAAG,EAAkB,CAAC;IAE7C,MAAM,EAAE,GAAG,KAAK,EAAE,MAAc,EAAE,MAAc,EAAE,MAAoB,EAAgB,EAAE;QACtF,IAAI,CAAC;YACH,MAAM,CAAC,GAAG,MAAM,KAAK,CAAC,GAAG,GAAG,IAAI,MAAM,EAAE,EAAE;gBACxC,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;gBAC5B,qEAAqE;gBACrE,sEAAsE;gBACtE,uEAAuE;gBACvE,qEAAqE;gBACrE,mEAAmE;gBACnE,0DAA0D;gBAC1D,yEAAyE;gBACzE,MAAM,EAAE,MAAM,IAAI,WAAW,CAAC,OAAO,CAAC,cAAc,CAAC;aACtD,CAAC,CAAC;YACH,OAAO,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;QACxB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC,CAAC;IAEF,2EAA2E;IAC3E,MAAM,SAAS,GAAG,CAAC,CAAS,EAAU,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IAE5F,2EAA2E;IAC3E,MAAM,OAAO,GAAG,CAAI,CAAS,EAAE,IAAsB,EAAc,EAAE,CACnE,gBAAgB,CAAC,IAAI,EAAE;QACrB,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,OAAO,CAAO,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC1D,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,CACb,OAAO,CAAC,GAAG,CAAC,aAAa,SAAS,CAAC,CAAC,CAAC,sCAAsC,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC;KACvG,CAAC,CAAC;IAEL,kEAAkE;IAClE,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,gBAAgB,CAAC;QAC7C,KAAK,MAAM,IAAI,IAAI,EAAE,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,CAAC;YAC7C,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;YACrC,IAAI,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,MAAM;gBAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,mCAAmC;IACrC,CAAC;IAED;2DACuD;IACvD,MAAM,kBAAkB,GAAG,KAAK,EAAE,GAAiB,EAAmB,EAAE;QACtE,IAAI,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,QAAQ,GAAG,aAAa;YAC9C,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;QAChE,MAAM,CAAC,GAAG,MAAM,EAAE,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;QACvD,IAAI,CAAC,CAAC,EAAE,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,CAAC,EAAE,WAAW,IAAI,gBAAgB,CAAC,CAAC;QAChE,4EAA4E;QAC5E,yEAAyE;QACzE,2EAA2E;QAC3E,yEAAyE;QACzE,sDAAsD;QACtD,MAAM,CAAC,GAAG,MAAM,KAAK,CAAC,oCAAoC,KAAK,IAAI,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,EAAE;YACvF,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,mBAAmB,CAAC;SACjD,CAAC,CAAC;QACH,IAAI,CAAC,CAAC,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;QACxD,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC7C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC;QACtD,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;QAC3D,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEF,sEAAsE;IACtE,eAAe,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE;QAC3C,EAAE,CAAC,gBAAgB,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;IACnG,CAAC,CAAC;IACF,6EAA6E;IAC7E,gEAAgE;IAChE,cAAc,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE;QACpC,EAAE,CAAC,kBAAkB,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC3E,CAAC,CAAC;IAEF,8EAA8E;IAC9E,MAAM,QAAQ,GAAG,KAAK,EAAE,CAAS,EAAE,IAAY,EAA0B,EAAE;QACzE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;QAC3F,uEAAuE;QACvE,kEAAkE;QAClE,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,CAC9B,EAAE,CAAC,aAAa,EAAE;YAChB,GAAG,EAAE;YACL,IAAI,EAAE,gBAAgB,CAAC,IAAI,CAAC;YAC5B,UAAU,EAAE,MAAM;YAClB,wBAAwB,EAAE,IAAI;SAC/B,CAAC,CACH,CAAC;QACF,IAAI,CAAC,EAAE,EAAE;YAAE,OAAO,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;QACtC,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,aAAa,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,wBAAwB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QAC7G,IAAI,GAAG,EAAE,EAAE;YAAE,OAAO,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC;QAC1C,mEAAmE;QACnE,uEAAuE;QACvE,uEAAuE;QACvE,yCAAyC;QACzC,OAAO,CAAC,GAAG,CAAC,aAAa,SAAS,CAAC,CAAC,CAAC,6BAA6B,aAAa,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;QAC7F,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEF;;iFAE6E;IAC7E,MAAM,IAAI,GAAG,CAAC,CAAS,EAAE,IAAY,EAA0B,EAAE,CAC/D,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE;QAChB,IAAI,KAAK,GAAkB,IAAI,CAAC;QAChC,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YAC/B,MAAM,EAAE,GAAG,MAAM,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;YACnC,IAAI,KAAK,KAAK,IAAI;gBAAE,KAAK,GAAG,EAAE,CAAC;QACjC,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC,CAAC;IAEL;;;gFAG4E;IAC5E,MAAM,YAAY,GAAG,CAAC,CAAS,EAAE,CAAiC,EAAoB,EAAE,CACtF,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE;QAChB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAC/C,MAAM,KAAK,GAAG,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACxC,MAAM,IAAI,GAAG,IAAI,QAAQ,EAAE,CAAC;YAC5B,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;YACzC,IAAI,CAAC,CAAC,QAAQ;gBAAE,IAAI,CAAC,MAAM,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;YACrE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,EAAE,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;YACnE,uEAAuE;YACvE,sEAAsE;YACtE,wEAAwE;YACxE,sEAAsE;YACtE,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,CAC9B,KAAK,CAAC,GAAG,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,cAAc,EAAE,EAAE;gBACtD,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,mBAAmB,CAAC;aACjD,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAA4D,CAAC,CACnF,CAAC;YACF,IAAI,CAAC,CAAC,EAAE,EAAE;gBAAE,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;QAChD,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,aAAa,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,IAAI,YAAY,CAAC,EAAE,OAAO,IAAI,CAAC,EAAE,CAAC,CAAC;YAC1F,IAAI,CAAC,CAAC,EAAE,mBAAmB,GAAG,CAAC,CAAC,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;QACzE,CAAC;IACH,CAAC,CAAC,CAAC;IAEL;;+EAE2E;IAC3E,MAAM,QAAQ,GAAG,CAAC,CAAS,EAAE,KAAa,EAAE,IAAY,EAAiB,EAAE,CACzE,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE;QAChB,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;QAC1B,MAAM,CAAC,GAAG,MAAM,EAAE,CAAC,iBAAiB,EAAE;YACpC,OAAO,EAAE,CAAC,CAAC,MAAM;YACjB,UAAU,EAAE,KAAK;YACjB,IAAI,EAAE,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAChC,UAAU,EAAE,MAAM;YAClB,wBAAwB,EAAE,IAAI;SAC/B,CAAC,CAAC;QACH,IAAI,CAAC,CAAC,EAAE,EAAE;YACR,MAAM,EAAE,CAAC,iBAAiB,EAAE;gBAC1B,OAAO,EAAE,CAAC,CAAC,MAAM;gBACjB,UAAU,EAAE,KAAK;gBACjB,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;gBACd,wBAAwB,EAAE,IAAI;aAC/B,CAAC,CAAC;QACL,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;YAAE,MAAM,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAC7D,CAAC,CAAC,CAAC;IAEL,wEAAwE;IACxE,8EAA8E;IAC9E,yEAAyE;IACzE,MAAM,OAAO,GAAG,GAAG,EAAE;QACnB,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;YACjC,IAAI,CAAC,CAAC,CAAC,SAAS;gBAAE,SAAS;YAC3B,MAAM,QAAQ,GAAG,kBAAkB,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC;YAC1D,uEAAuE;YACvE,+DAA+D;YAC/D,MAAM,IAAI,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACvF,aAAa,CAAC;gBACZ,SAAS,EAAE,CAAC,CAAC,SAAS;gBACtB,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACzB,iEAAiE;gBACjE,mEAAmE;gBACnE,wEAAwE;gBACxE,sCAAsC;gBACtC,GAAG,CAAC,QAAQ,EAAE,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC3D,QAAQ,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;aAChF,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC;IAEF,mFAAmF;IACnF,MAAM,UAAU,GAAG,CACjB,GAAW,EACX,MAAc,EACd,QAA4B,EAC5B,IAAI,GAAmG,EAAE,EACjG,EAAE;QACV,MAAM,EAAE,GAAG,IAAI,SAAS,CAAC,kBAAkB,IAAI,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC7G,MAAM,CAAC,GAAW;YAChB,GAAG;YACH,MAAM;YACN,QAAQ;YACR,EAAE;YACF,SAAS,EAAE,IAAI,CAAC,QAAQ,IAAI,IAAI;YAChC,KAAK,EAAE,KAAK;YACZ,OAAO,EAAE,EAAE;YACX,cAAc,EAAE,EAAE;YAClB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,SAAS,EAAE,cAAc,CAAC,GAAG,CAAC;YAC9B,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,IAAI,EAAE,aAAa,EAAE;YACrB,MAAM,EAAE,UAAU,CAAC,GAAG,EAAE,CACtB,EAAE,CAAC,gBAAgB,EAAE;gBACnB,OAAO,EAAE,MAAM;gBACf,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACpD,MAAM,EAAE,QAAQ;aACjB,CAAC,CACH;SACF,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QAEpB,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE;YACjB,EAAE,CAAC,IAAI,CACL,IAAI,CAAC,SAAS,CACZ,IAAI,CAAC,QAAQ;gBACX,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;gBACtI,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAC7I,CACF,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE;YACvB,IAAI,CAAM,CAAC;YACX,IAAI,CAAC;gBACH,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YAC9B,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO;YACT,CAAC;YACD,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;gBACf,KAAK,SAAS,EAAE,CAAC;oBACf,uEAAuE;oBACvE,+DAA+D;oBAC/D,IAAI,CAAC,CAAC,CAAC,QAAQ;wBAAE,MAAM;oBACvB,CAAC,CAAC,QAAQ,GAAG,KAAK,CAAC;oBACnB,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;oBACjE,IAAI,CAAC,KAAK,CAAC,MAAM;wBAAE,MAAM;oBACzB,IAAI,CAAC,CAAC,EAAE,2BAA2B,KAAK,CAAC,MAAM,eAAe,CAAC,CAAC;oBAChE,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;wBACtB,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;wBACzC,IAAI,GAAG;4BAAE,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;oBAC1D,CAAC;oBACD,MAAM;gBACR,CAAC;gBACD,KAAK,OAAO;oBACV,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC;oBAC1B,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC;oBACf,OAAO,EAAE,CAAC;oBACV,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;wBAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;oBAChE,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC;wBAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;oBACvE,MAAM;gBACR,KAAK,SAAS;oBACZ,kEAAkE;oBAClE,gEAAgE;oBAChE,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;oBACjB,MAAM;gBACR,KAAK,aAAa,EAAE,CAAC;oBACnB,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE;wBAAE,MAAM;oBAC3B,mEAAmE;oBACnE,sEAAsE;oBACtE,mEAAmE;oBACnE,mDAAmD;oBACnD,IAAI,CAAC,CAAC,WAAW,IAAI,cAAc,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;wBAC3D,MAAM,EAAE,GAAG,CAAC,CAAC,YAAY,CAAC;wBAC1B,CAAC,CAAC,WAAW,GAAG,SAAS,CAAC;wBAC1B,CAAC,CAAC,YAAY,GAAG,SAAS,CAAC;wBAC3B,IAAI,EAAE,KAAK,SAAS;4BAAE,QAAQ,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;wBAC9C,MAAM;oBACR,CAAC;oBACD,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;oBAChB,MAAM;gBACR,CAAC;gBACD,KAAK,aAAa;oBAChB,4DAA4D;oBAC5D,oEAAoE;oBACpE,qCAAqC;oBACrC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE;wBAAE,IAAI,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC;oBACvF,MAAM;gBACR,KAAK,aAAa;oBAChB,uEAAuE;oBACvE,qCAAqC;oBACrC,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,cAAc,IAAI,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;wBACvG,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK;4BAAE,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;wBAC5C,MAAM;oBACR,CAAC;oBACD,gEAAgE;oBAChE,+DAA+D;oBAC/D,WAAW;oBACX,IAAI,CAAC,CAAC,SAAS;wBAAE,IAAI,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBAC9E,MAAM;gBACR,KAAK,QAAQ;oBACX,+DAA+D;oBAC/D,iDAAiD;oBACjD,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;oBAChB,gEAAgE;oBAChE,mEAAmE;oBACnE,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;wBAClB,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CACV,EAAE,CAAC,wBAAwB,EAAE;4BAC3B,OAAO,EAAE,CAAC,CAAC,MAAM;4BACjB,UAAU,EAAE,CAAC,CAAC,WAAW;4BACzB,YAAY,EAAE,cAAc,CAAC,CAAC,CAAC;yBAChC,CAAC,CACH,CAAC;oBACJ,CAAC;yBAAM,CAAC;wBACN,gEAAgE;wBAChE,oEAAoE;wBACpE,kEAAkE;wBAClE,mCAAmC;wBACnC,IAAI,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC;4BACtB,CAAC,CAAC,WAAW,GAAG,CAAC,CAAC,OAAO,CAAC;4BAC1B,CAAC,CAAC,YAAY,GAAG,SAAS,CAAC;4BAC3B,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE;gCAC7B,IAAI,EAAE,KAAK,IAAI;oCAAE,CAAC,CAAC,YAAY,GAAG,EAAE,CAAC;4BACvC,CAAC,CAAC,CAAC;wBACL,CAAC;wBACD,CAAC,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAAC,0CAA0C;wBAC1E,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CACV,EAAE,CAAC,aAAa,EAAE;4BAChB,OAAO,EAAE,CAAC,CAAC,MAAM;4BACjB,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;4BACxD,6DAA6D;4BAC7D,6DAA6D;4BAC7D,+DAA+D;4BAC/D,0DAA0D;4BAC1D,8BAA8B;4BAC9B,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC;4BACnB,YAAY,EAAE,cAAc,CAAC,CAAC,CAAC;yBAChC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;4BACZ,IAAI,CAAC,EAAE,EAAE;gCAAE,CAAC,CAAC,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;4BAC/C,yDAAyD;4BACzD,qDAAqD;;gCAChD,IAAI,CAAC,CAAC,EAAE,gDAAgD,CAAC,EAAE,WAAW,IAAI,gBAAgB,sCAAsC,CAAC,CAAC;wBACzI,CAAC,CAAC,CACH,CAAC;oBACJ,CAAC;oBACD,MAAM;gBACR,KAAK,WAAW;oBACd,CAAC,CAAC,WAAW,GAAG,SAAS,CAAC,CAAC,4CAA4C;oBACvE,CAAC,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAAC,wCAAwC;oBACxE,sEAAsE;oBACtE,oEAAoE;oBACpE,iEAAiE;oBACjE,CAAC,CAAC,WAAW,GAAG,SAAS,CAAC;oBAC1B,CAAC,CAAC,YAAY,GAAG,SAAS,CAAC;oBAC3B,uEAAuE;oBACvE,iEAAiE;oBACjE,oEAAoE;oBACpE,oEAAoE;oBACpE,mDAAmD;oBACnD,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC;wBACjB,MAAM,IAAI,GAAG,CAAC,CAAC,UAAU,CAAC;wBAC1B,CAAC,CAAC,UAAU,GAAG,SAAS,CAAC;wBACzB,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;wBAC7B,QAAQ,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;wBACxC,MAAM;oBACR,CAAC;oBACD,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;oBAChB,MAAM;gBACR,KAAK,cAAc;oBACjB,gEAAgE;oBAChE,gEAAgE;oBAChE,gDAAgD;oBAChD,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;oBAChB,IAAI,CAAC,CAAC,EAAE,iBAAiB,GAAG,CAAC,CAAC,CAAC,MAAM,IAAI,qBAAqB,CAAC,GAAG,4CAA4C,CAAC,CAAC;oBAChH,MAAM;gBACR,KAAK,OAAO;oBACV,uEAAuE;oBACvE,sEAAsE;oBACtE,mEAAmE;oBACnE,yDAAyD;oBACzD,IAAI,aAAa,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,WAAW,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;wBAClF,MAAM,IAAI,GAAG,CAAC,CAAC,QAAS,CAAC;wBACzB,CAAC,CAAC,WAAW,GAAG,IAAI,CAAC;wBACrB,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC;wBACpB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;wBAC1D,mEAAmE;wBACnE,+DAA+D;wBAC/D,+DAA+D;wBAC/D,4DAA4D;wBAC5D,kEAAkE;wBAClE,8DAA8D;wBAC9D,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;wBAC7B,CAAC,CAAC,YAAY,GAAG,UAAU,CAAC,GAAG,EAAE;4BAC/B,IAAI,CAAC,CAAC,UAAU,KAAK,IAAI;gCAAE,OAAO;4BAClC,CAAC,CAAC,UAAU,GAAG,SAAS,CAAC;4BACzB,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;4BAChB,IAAI,CAAC,CAAC,EAAE,4FAA4F,CAAC,CAAC;wBACxG,CAAC,EAAE,kBAAkB,CAAC,CAAC;wBACvB,MAAM;oBACR,CAAC;oBACD,kEAAkE;oBAClE,iEAAiE;oBACjE,IAAI,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC;oBAC3B,MAAM;gBACR,KAAK,QAAQ;oBACX,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;oBAChB,CAAC,CAAC,gBAAgB,GAAG,SAAS,CAAC;oBAC/B,IAAI,CAAC,CAAC,EAAE,mBAAmB,CAAC,CAAC;oBAC7B,MAAM;YACV,CAAC;QACH,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YAClB,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YAChB,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC;gBAAE,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAClD,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACzB,OAAO,CAAC,CAAC;IACX,CAAC,CAAC;IAEF,MAAM,SAAS,GAAG,CAAC,GAAW,EAAE,MAAc,EAAE,QAAiB,EAAE,IAAa,EAAU,EAAE;QAC1F,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAClC,IAAI,QAAQ,IAAI,QAAQ,CAAC,EAAE,CAAC,UAAU,IAAI,SAAS,CAAC,IAAI;YAAE,OAAO,QAAQ,CAAC;QAC1E,MAAM,KAAK,GAAG,kBAAkB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACnD,6EAA6E;QAC7E,8EAA8E;QAC9E,8EAA8E;QAC9E,2EAA2E;QAC3E,MAAM,KAAK,GAAG,YAAY,EAAE,CAAC;QAC7B,MAAM,OAAO,GACX,CAAC,KAAK,IAAI,QAAQ,IAAI,IAAI,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACjF,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACjF,MAAM,QAAQ,GAAG,KAAK,EAAE,SAAS,IAAI,OAAO,IAAI,SAAS,CAAC;QAC1D,2EAA2E;QAC3E,4EAA4E;QAC5E,MAAM,OAAO,GAAG,KAAK,EAAE,OAAO,IAAI,OAAO,EAAE,OAAO,IAAI,SAAS,CAAC;QAChE,OAAO,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IACxE,CAAC,CAAC;IAEF,2EAA2E;IAC3E,uEAAuE;IACvE,MAAM,QAAQ,GAAG,CAAC,CAAS,EAAE,IAAY,EAAE,IAAa,EAAE,MAAM,GAAG,KAAK,EAAE,KAAK,GAAG,KAAK,EAAE,EAAE;QACzF,CAAC,CAAC,QAAQ,GAAG,IAAI,CAAC;QAClB,uEAAuE;QACvE,IAAI,CAAC,MAAM;YAAE,CAAC,CAAC,YAAY,GAAG,IAAI,CAAC;QACnC,yEAAyE;QACzE,sEAAsE;QACtE,IAAI,CAAC,MAAM;YAAE,CAAC,CAAC,WAAW,GAAG,SAAS,CAAC;QACvC,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;QAC7C,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,EAAE,CAAC,UAAU,KAAK,SAAS,CAAC,IAAI;YAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;;YAC/E,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC,CAAC;IAEF,MAAM,KAAK,GAAG,CAAC,MAAc,EAAE,QAA4B,EAAE,IAAY,EAAE,KAAK,GAAW,EAAE,EAAE,EAAE,CAC/F,EAAE,CAAC,aAAa,EAAE;QAChB,OAAO,EAAE,MAAM;QACf,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpD,IAAI;QACJ,wBAAwB,EAAE,IAAI;QAC9B,GAAG,KAAK;KACT,CAAC,CAAC;IAEL,0EAA0E;IAC1E,yDAAyD;IACzD,qBAAqB,GAAG,GAAG,EAAE;QAC3B,MAAM,KAAK,GAAG,WAAW,EAAE,CAAC;QAC5B,IAAI,KAAK,KAAK,IAAI;YAAE,OAAO,KAAK,CAAC,CAAC,2CAA2C;QAC7E,KAAK,CACH,KAAK,EACL,SAAS,EACT,uGAAuG,CACxG,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEF,4EAA4E;IAC5E,4EAA4E;IAC5E,MAAM,MAAM,GAAG,eAAe,CAAoE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE;QACtH,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACrB,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;QACtD,MAAM,EAAE,GAAiB,EAAE,CAAC;QAC5B,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;YACtB,IAAI,CAAC;gBACH,sEAAsE;gBACtE,oEAAoE;gBACpE,gEAAgE;gBAChE,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,KAAK,OAAO;oBAAE,SAAS;gBACrC,MAAM,CAAC,GAAG,MAAM,kBAAkB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;gBAC1C,MAAM,IAAI,GAAe,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;gBACvD,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;oBAC3B,oEAAoE;oBACpE,mEAAmE;oBACnE,kCAAkC;oBAClC,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,CAAC,EAAE;wBAChC,WAAW,EAAE,CAAC,CAAC,GAAG,CAAC,WAAW;wBAC9B,SAAS,EAAE,YAAY;wBACvB,UAAU,EAAE,KAAK;wBACjB,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC;qBACzD,CAAC,CAAC;oBACH,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE;wBAClB,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC9D,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC/C,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;qBACzD,CAAC,CAAC;gBACL,CAAC;gBACD,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAChB,CAAC;YAAC,OAAO,CAAM,EAAE,CAAC;gBAChB,MAAM,CAAC,IAAI,CACT,SAAS,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;oBACjB,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,CAAC,GAAG,CAAC,YAAY,oCAAoC;oBAC7E,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,CAAC,GAAG,CAAC,YAAY,KAAK,CAAC,EAAE,OAAO,IAAI,CAAC,GAAG,CACnE,CAAC;YACJ,CAAC;QACH,CAAC;QACD,IAAI,MAAM,CAAC,MAAM;YAAE,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,sBAAsB,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC3F,IAAI,EAAE,CAAC,MAAM;YAAE,QAAQ,CAAC,CAAC,EAAE,gBAAgB,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;;YACtF,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,iDAAiD;IACzE,CAAC,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,CAAC,GAAW,EAAE,MAAc,EAAE,QAAiB,EAAE,EAAE;QACpE,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC3B,IAAI,CAAC,EAAE,CAAC;YACN,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YAC5C,CAAC,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;YACb,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACtB,CAAC;QACD,0EAA0E;QAC1E,mBAAmB;QACnB,MAAM,EAAE,GAAG,kBAAkB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAChD,IAAI,EAAE;YAAE,aAAa,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;IACtC,CAAC,CAAC;IAEF,4EAA4E;IAC5E,MAAM,OAAO,GAAG,KAAK,EAAE,GAAQ,EAAoB,EAAE;QACnD,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,EAAE,EAAwB,CAAC;QAChD,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,EAAE,EAAE,IAAI,CAAC,CAAC;QAC5C,IAAI,OAAO,KAAK,OAAO;YAAE,OAAO,IAAI,CAAC;QACrC,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;YACxB,WAAW,CAAC,IAAK,CAAC,CAAC;YACnB,OAAO,CAAC,GAAG,CAAC,gCAAgC,IAAI,2BAA2B,CAAC,CAAC;YAC7E,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,kCAAkC,IAAI,IAAI,GAAG,kBAAkB,CAAC,CAAC;QAC7E,MAAM,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,wBAAwB,CAAC,CAAC;QAC9D,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,KAAK,EAAE,GAAQ,EAAE,EAAE;QACvC,MAAM,GAAG,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;QAC9B,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,GAAG;YAAE,OAAO;QACjD,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;QACtB,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;YACzD,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,iBAAiB,EAAE,2BAA2B,CAAC,CAAC;YACzE,OAAO;QACT,CAAC;QACD,0EAA0E;QAC1E,yEAAyE;QACzE,wBAAwB;QACxB,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC;YAAE,OAAO;QAC7D,MAAM,QAAQ,GAAG,GAAG,CAAC,iBAAuC,CAAC;QAC7D,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY,CAAC;QACpE,uEAAuE;QACvE,MAAM,GAAG,GAAG,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAEzE,2DAA2D;QAC3D,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,KAAK,GAAG,WAAW,EAAE,CAAC;YAC5B,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBACnB,IAAI,GAAG,EAAE,GAAG,KAAK,OAAO,EAAE,CAAC;oBACzB,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACrB,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,6IAA6I,CAAC,CAAC;gBAChL,CAAC;qBAAM,CAAC;oBACN,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,mFAAmF,CAAC,CAAC;gBACtH,CAAC;gBACD,OAAO;YACT,CAAC;YACD,IAAI,KAAK,KAAK,IAAI,CAAC,EAAE,EAAE,CAAC;gBACtB,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,sDAAsD,CAAC,CAAC;gBACvF,OAAO;YACT,CAAC;QACH,CAAC;QAED,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAEpC,IAAI,GAAG,EAAE,CAAC;YACR,QAAQ,GAAG,CAAC,GAAG,EAAE,CAAC;gBAChB,KAAK,OAAO,CAAC;gBACb,KAAK,MAAM;oBACT,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,6bAA6b,CAAC,CAAC;oBAC9d,OAAO;gBACT,KAAK,OAAO;oBACV,IAAI,OAAO;wBAAE,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,kCAAkC,CAAC,CAAC;oBAChF,OAAO;gBACT,KAAK,OAAO,EAAE,CAAC;oBACb,IAAI,CAAC,OAAO,EAAE,CAAC;wBACb,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,+DAA+D,CAAC,CAAC;wBAChG,OAAO;oBACT,CAAC;oBACD,mEAAmE;oBACnE,oEAAoE;oBACpE,IAAI,OAA2B,CAAC;oBAChC,IAAI,IAAI,GAAG,GAAG,CAAC,GAAG,IAAI,OAAO,CAAC;oBAC9B,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;oBAC7B,MAAM,KAAK,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBACnD,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;wBACtB,OAAO,GAAG,KAAK,CAAC;wBAChB,IAAI,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,KAAK,CAAC;oBAChE,CAAC;oBACD,MAAM,CAAC,GAAG,MAAM,EAAE,CAAC,kBAAkB,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;oBACvF,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC;wBACX,MAAM,GAAG,GAAG,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;wBAClE,OAAO,CAAC,GAAG,CAAC,yCAAyC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,WAAW,IAAI,CAAC,CAAC,CAAC;wBACtF,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,6BAA6B,GAAG,oGAAoG,CAAC,CAAC;wBACrK,OAAO;oBACT,CAAC;oBACD,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC;oBAC7C,UAAU,CAAC,SAAS,CAAC,CAAC;oBACtB,qEAAqE;oBACrE,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;oBAC5F,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,cAAc,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,6CAA6C,CAAC,CAAC;oBACpI,OAAO;gBACT,CAAC;gBACD,KAAK,UAAU,EAAE,CAAC;oBAChB,MAAM,KAAK,GAAG,YAAY,EAAE,CAAC;oBAC7B,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,kCAAkC,CAAC,CAAC,CAAC,+DAA+D,CAAC,CAAC;oBAC5M,OAAO;gBACT,CAAC;gBACD,KAAK,KAAK,CAAC;gBACX,KAAK,KAAK;oBACR,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;oBACnC,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,GAAG,CAAC,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,oCAAoC,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC;oBAC/G,OAAO;gBACT,KAAK,MAAM,CAAC;gBACZ,KAAK,KAAK,EAAE,CAAC;oBACX,mEAAmE;oBACnE,oEAAoE;oBACpE,sEAAsE;oBACtE,iDAAiD;oBACjD,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;oBAC5B,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,UAAU,KAAK,SAAS,CAAC,IAAI,EAAE,CAAC;wBAC/C,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,kBAAkB,CAAC,CAAC;wBACnD,OAAO;oBACT,CAAC;oBACD,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;oBAC3D,+DAA+D;oBAC/D,2CAA2C;oBAC3C,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;oBACjB,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,gBAAgB,CAAC,CAAC;oBACjD,OAAO;gBACT,CAAC;gBACD,KAAK,OAAO,EAAE,CAAC;oBACb,qEAAqE;oBACrE,iEAAiE;oBACjE,oEAAoE;oBACpE,MAAM,IAAI,GAAG,cAAc,CAAC,GAAG,CAAC,GAAG,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC;oBAC1D,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;oBACtB,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;oBAC5B,IAAI,EAAE;wBAAE,EAAE,CAAC,SAAS,GAAG,IAAI,CAAC;oBAC5B,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,oCAAoC,CAAC,CAAC,CAAC,qCAAqC,CAAC,CAAC;oBACpH,OAAO;gBACT,CAAC;gBACD,KAAK,MAAM,EAAE,CAAC;oBACZ,MAAM,KAAK,GAAG,YAAY,EAAE;yBACzB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;yBACzB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;wBACT,MAAM,KAAK,GAAG,CAAC,CAAC,QAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,QAAS,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;wBAC9E,OAAO,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,KAAK,GAAG,CAAC;oBAC7D,CAAC,CAAC,CAAC;oBACL,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC;oBAC3F,OAAO;gBACT,CAAC;gBACD,KAAK,MAAM,EAAE,CAAC;oBACZ,MAAM,UAAU,GACd,uCAAuC;wBACvC,uCAAuC;wBACvC,6DAA6D;wBAC7D,sDAAsD;wBACtD,gEAAgE,CAAC;oBACnE,MAAM,EAAE,GAAG,kBAAkB,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;oBACjD,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBAC1C,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;oBACpD,MAAM,MAAM,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,GAAG,CAAC,CAAC;oBAC/E,iEAAiE;oBACjE,gEAAgE;oBAChE,mEAAmE;oBACnE,MAAM,QAAQ,GAAG,CAAC,GAAW,EAA2B,EAAE;wBACxD,MAAM,IAAI,GAAG,SAAS,EAAE,CAAC;wBACzB,MAAM,CAAC,GAAG,aAAa,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;wBACnC,IAAI,CAAC,CAAC,EAAE;4BAAE,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,CAAE,CAAC;wBAClD,IAAI,CAAC,CAAC,KAAK,KAAK,WAAW;4BAAE,OAAO,EAAE,IAAI,EAAE,IAAI,GAAG,aAAa,CAAC,CAAC,OAAO,+BAA+B,EAAE,CAAC;wBAC3G,OAAO,EAAE,IAAI,EAAE,kCAAkC,EAAE,CAAC;oBACtD,CAAC,CAAC;oBAEF,IAAI,GAAG,KAAK,MAAM,EAAE,CAAC;wBACnB,MAAM,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC5C,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM;4BACtB,CAAC,CAAC,IAAI;iCACD,GAAG,CACF,CAAC,CAAC,EAAE,EAAE,CACJ,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,aAAa,CAAC,CAAC,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,OAAO,CAAC,CAAC,MAAM,EAAE,CACxH;iCACA,IAAI,CAAC,IAAI,CAAC;4BACf,CAAC,CAAC,uBAAuB,CAAC;wBAC5B,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,GAAG,MAAM,GAAG,UAAU,CAAC,CAAC;wBAC3D,OAAO;oBACT,CAAC;oBACD,IAAI,GAAG,KAAK,KAAK,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,KAAK,EAAE,CAAC;wBACnE,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;wBACvC,IAAI,MAAM,IAAI,KAAK,EAAE,CAAC;4BAAC,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;4BAAC,OAAO;wBAAC,CAAC;wBAC5E,MAAM,CAAC,GAAG,KAAK,CAAC;wBAChB,IAAI,GAAG,KAAK,KAAK,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;4BAClC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;4BACjB,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC;wBACzE,CAAC;6BAAM,CAAC;4BACN,CAAC,CAAC,OAAO,GAAG,GAAG,KAAK,IAAI,CAAC;4BACzB,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;4BACxF,UAAU,CAAC,CAAC,CAAC,CAAC;4BACd,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,UAAU,SAAS,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;wBACvG,CAAC;wBACD,OAAO;oBACT,CAAC;oBACD,8EAA8E;oBAC9E,IAAI,CAAC,EAAE,EAAE,CAAC;wBACR,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,mEAAmE,GAAG,UAAU,CAAC,CAAC;wBACjH,OAAO;oBACT,CAAC;oBACD,IAAI,KAAK,GAAwB,IAAI,CAAC;oBACtC,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC;oBACjC,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;wBACpB,MAAM,CAAC,GAAG,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBACtC,IAAI,CAAC;4BAAE,KAAK,GAAG,iBAAiB,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;oBACpH,CAAC;yBAAM,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;wBAC3B,MAAM,CAAC,GAAG,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBAC3C,IAAI,CAAC;4BAAE,KAAK,GAAG,iBAAiB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;oBAClF,CAAC;yBAAM,IAAI,GAAG,KAAK,MAAM,EAAE,CAAC;wBAC1B,MAAM,EAAE,GAAG,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;wBAC1C,IAAI,EAAE,IAAI,IAAI;4BAAE,KAAK,GAAG,iBAAiB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;oBAClE,CAAC;oBACD,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;oBACtC,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;wBAAC,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;wBAAC,OAAO;oBAAC,CAAC;oBAC9E,oEAAoE;oBACpE,sEAAsE;oBACtE,+CAA+C;oBAC/C,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,EAAE,IAAI,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;wBACpD,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,aAAa,CAAC,KAAK,EAAE,YAAY,CAAC,EAAE,CAAC,CAAC,wCAAwC,CAAC,CAAC;wBACpH,OAAO;oBACT,CAAC;oBACD,MAAM,IAAI,GAAG;wBACX,EAAE,EAAE,UAAU,EAAE;wBAChB,SAAS,EAAE,EAAE,CAAC,SAAS;wBACvB,MAAM;wBACN,QAAQ,EAAE,KAAK;wBACf,OAAO,EAAE,IAAI;wBACb,kEAAkE;wBAClE,+DAA+D;wBAC/D,OAAO,EAAE,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,YAAY,CAAC,EAAE,CAAC,CAAC;qBACzD,CAAC;oBACF,UAAU,CAAC,IAAI,CAAC,CAAC;oBACjB,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,gBAAgB,aAAa,CAAC,KAAK,EAAE,YAAY,CAAC,EAAE,CAAC,CAAC,UAAU,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;oBACtH,OAAO;gBACT,CAAC;gBACD,KAAK,QAAQ,EAAE,CAAC;oBACd,+DAA+D;oBAC/D,oEAAoE;oBACpE,0DAA0D;oBAC1D,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,wCAAwC,CAAC,CAAC;oBACzE,sDAAsD;oBACtD,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;gBACjC,CAAC;gBACD,KAAK,SAAS,EAAE,CAAC;oBACf,MAAM,KAAK,GAAG,WAAW,EAAE,CAAC;oBAC5B,MAAM,KAAK,CACT,IAAI,CAAC,EAAE,EACP,QAAQ,EACR,cAAc,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,uHAAuH,CACrM,CAAC;oBACF,OAAO;gBACT,CAAC;gBACD,KAAK,OAAO,EAAE,CAAC;oBACb,qEAAqE;oBACrE,sEAAsE;oBACtE,kEAAkE;oBAClE,qBAAqB;oBACrB,MAAM,CAAC,GAAG,MAAM,UAAU,EAAE,CAAC;oBAC7B,IAAI,OAAO,IAAI,CAAC,EAAE,CAAC;wBACjB,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,kCAAkC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;wBAC5E,OAAO;oBACT,CAAC;oBACD,IAAI,iBAAiB,IAAI,CAAC,EAAE,CAAC;wBAC3B,iEAAiE;wBACjE,2BAA2B;wBAC3B,MAAM,CAAC,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,CAAC;wBACjC,MAAM,KAAK,CACT,IAAI,CAAC,EAAE,EACP,QAAQ,EACR,uCAAuC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,CAC1E,CAAC;wBACF,OAAO;oBACT,CAAC;oBACD,MAAM,KAAK,CACT,IAAI,CAAC,EAAE,EACP,QAAQ,EACR,iFAAiF,CAAC,CAAC,GAAG,EAAE,CACzF,CAAC;oBACF,OAAO;gBACT,CAAC;gBACD,KAAK,MAAM,EAAE,CAAC;oBACZ,MAAM,CAAC,GAAG,MAAM,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;oBACzC,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC;wBACT,MAAM,CAAC,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,CAAC;wBACjC,oBAAoB,EAAE,CAAC,CAAC,yCAAyC;wBACjE,iEAAiE;wBACjE,+CAA+C;wBAC/C,MAAM,EAAE,CAAC,eAAe,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;wBAC5E,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,cAAc,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;oBACnF,CAAC;yBAAM,CAAC;wBACN,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;oBAClD,CAAC;oBACD,OAAO;gBACT,CAAC;gBACD,KAAK,QAAQ,EAAE,CAAC;oBACd,sEAAsE;oBACtE,gDAAgD;oBAChD,MAAM,EAAE,GAAG,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;oBAChC,MAAM,IAAI,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBACxD,MAAM,IAAI,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;oBACpD,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;wBACnB,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,2BAA2B,CAAC,CAAC;wBAC5D,OAAO;oBACT,CAAC;oBACD,MAAM,OAAO,GAAG,WAAW,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;oBACpD,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC;oBAC7B,iBAAiB,CAAC;wBAChB,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;wBACvC,OAAO,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;wBACtB,KAAK,EAAE,YAAY,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,GAAG,EAAE;wBAChD,GAAG,EAAE,UAAU;wBACf,QAAQ,EAAE,OAAO,CAAC,GAAG,EAAE;qBACxB,CAAC,CAAC;oBACH,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,eAAe,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;oBACxF,MAAM,KAAK,CACT,IAAI,CAAC,EAAE,EACP,QAAQ,EACR,MAAM,IAAI,CAAC,IAAI,EAAE,uBAAuB,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC,CAAC,4FAA4F,oCAAoC,CACnN,CAAC;oBACF,OAAO;gBACT,CAAC;gBACD,KAAK,UAAU,EAAE,CAAC;oBAChB,MAAM,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;oBAC5B,IAAI,CAAC,IAAI,EAAE,CAAC;wBACV,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,uBAAuB,CAAC,CAAC;wBACxD,OAAO;oBACT,CAAC;oBACD,IAAI,WAAW,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;wBACjC,YAAY,CAAC,IAAI,CAAC,CAAC;wBACnB,iBAAiB,CAAC;4BAChB,MAAM,EAAE,SAAS;4BACjB,OAAO,EAAE,CAAC,IAAI,CAAC;4BACf,KAAK,EAAE,YAAY,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,GAAG,EAAE;4BAChD,GAAG,EAAE,UAAU;4BACf,QAAQ,EAAE,OAAO,CAAC,GAAG,EAAE;yBACxB,CAAC,CAAC;oBACL,CAAC;oBACD,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,IAAI,0BAA0B,CAAC,CAAC;oBACrE,OAAO;gBACT,CAAC;gBACD,KAAK,SAAS,EAAE,CAAC;oBACf,oEAAoE;oBACpE,MAAM,EAAE,GAAG,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;oBAC7C,MAAM,IAAI,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;oBACjC,IAAI,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE,CAAC,UAAU,KAAK,SAAS,CAAC,IAAI;wBAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;;wBACjF,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAClC,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,2CAA2C,CAAC,CAAC;oBAC5E,OAAO;gBACT,CAAC;YACH,CAAC;QACH,CAAC;QAED,sEAAsE;QACtE,0EAA0E;QAC1E,2EAA2E;QAC3E,MAAM,SAAS,GACb,QAAQ,IAAI,IAAI;YACd,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,gBAAgB,EAAE,mBAAmB,EAAE,IAAI;YACxE,CAAC,CAAC,SAAS,CAAC;QAEhB,yEAAyE;QACzE,0EAA0E;QAC1E,yEAAyE;QACzE,uDAAuD;QACvD,MAAM,CAAC,GAAG,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;QACvD,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAEjB,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,OAAO,GAAG,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;YAC1E,IAAI,GAAG,CAAC,cAAc,EAAE,CAAC;gBACvB,+DAA+D;gBAC/D,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,IAAI,GAAG,CAAC,cAAc,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAC5F,OAAO;YACT,CAAC;YACD,IAAI,CAAC;gBACH,MAAM,CAAC,GAAG,MAAM,kBAAkB,CAAC,GAAG,CAAC,CAAC;gBACxC,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;oBACzB,oEAAoE;oBACpE,sEAAsE;oBACtE,sEAAsE;oBACtE,kEAAkE;oBAClE,2CAA2C;oBAC3C,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,GAAG,KAAK,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBACpF,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;wBACZ,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;wBAChB,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;wBAC3C,OAAO;oBACT,CAAC;oBACD,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;oBACtD,qEAAqE;oBACrE,oEAAoE;oBACpE,kEAAkE;oBAClE,yDAAyD;oBACzD,QAAQ,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,IAAI,OAAO,OAAO,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;oBACjG,OAAO;gBACT,CAAC;gBACD,MAAM,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;gBACnC,kEAAkE;gBAClE,gEAAgE;gBAChE,sEAAsE;gBACtE,sDAAsD;gBACtD,MAAM,IAAI,GAAe,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC;gBACrD,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;oBACzB,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,CAAC,EAAE;wBAChC,WAAW,EAAE,GAAG,CAAC,WAAW;wBAC5B,SAAS,EAAE,UAAU;wBACrB,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC;qBACtD,CAAC,CAAC;oBACH,IAAI,IAAI,CAAC,OAAO;wBAAE,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;oBAC/D,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE;wBAClB,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC9D,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC/C,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC3D,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;qBACzD,CAAC,CAAC;gBACL,CAAC;gBACD,MAAM,OAAO,GAAG,gBAAgB,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;gBAClD,QAAQ,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,GAAG,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;YACpF,CAAC;YAAC,OAAO,CAAM,EAAE,CAAC;gBAChB,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;gBAChB,wEAAwE;gBACxE,oEAAoE;gBACpE,yDAAyD;gBACzD,MAAM,KAAK,CACT,IAAI,CAAC,EAAE,EACP,QAAQ,EACR,SAAS,CAAC,GAAG,EAAE,CAAC,CAAC;oBACf,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC;oBACrB,CAAC,CAAC,yBAAyB,GAAG,CAAC,QAAQ,IAAI,gBAAgB,KAAK,CAAC,EAAE,OAAO,IAAI,CAAC,GAAG,CACrF,CAAC;YACJ,CAAC;YACD,OAAO;QACT,CAAC;QACD,mEAAmE;QACnE,4EAA4E;QAC5E,oDAAoD;QACpD,IAAI,CAAC,CAAC,gBAAgB,EAAE,CAAC;YACvB,MAAM,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,gBAAgB,CAAC;YACjC,CAAC,CAAC,gBAAgB,GAAG,SAAS,CAAC;YAC/B,MAAM,KAAK,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC;YACtD,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,EAAE,CAAC,UAAU,KAAK,SAAS,CAAC,IAAI;gBAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;;gBAC/E,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAClC,OAAO;QACT,CAAC;QACD,qEAAqE;QACrE,8CAA8C;QAC9C,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;QACjC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,GAAG,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;IAClF,CAAC,CAAC;IAEF,MAAM,cAAc,GAAG,KAAK,EAAE,EAAO,EAAE,EAAE;QACvC,MAAM,MAAM,GAAG,aAAa,CAAC,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;QAC5C,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC;QACvB,IAAI,CAAC,MAAM,IAAI,CAAC,GAAG;YAAE,OAAO;QAC5B,0EAA0E;QAC1E,0EAA0E;QAC1E,4EAA4E;QAC5E,eAAe;QACf,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,KAAK,SAAS,IAAI,MAAM,CAAC,WAAW,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,OAAO,EAAE,CAAC;YACnF,MAAM,EAAE,CAAC,qBAAqB,EAAE,EAAE,iBAAiB,EAAE,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,CAAC,CAAC;YAC9F,OAAO;QACT,CAAC;QACD,MAAM,EAAE,CAAC,qBAAqB,EAAE,EAAE,iBAAiB,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,0BAA0B;QACzF,2EAA2E;QAC3E,yEAAyE;QACzE,MAAM,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAClG,wEAAwE;QACxE,uDAAuD;QACvD,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YAC/B,CAAC,CAAC,gBAAgB,GAAG,EAAE,CAAC,EAAE,MAAM,CAAC,CAAE,EAAE,CAAC;YACtC,MAAM,EAAE,CAAC,aAAa,EAAE;gBACtB,OAAO,EAAE,CAAC,CAAC,MAAM;gBACjB,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACxD,IAAI,EAAE,+DAA+D;gBACrE,YAAY,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,uBAAuB,EAAE,cAAc,EAAE;aAC7E,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QACD,MAAM,KAAK,GACT,MAAM,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC;QACvF,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,EAAE,CAAC,UAAU,KAAK,SAAS,CAAC,IAAI;YAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;;YAC/E,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC,CAAC;IAEF,2EAA2E;IAC3E,2EAA2E;IAC3E,0EAA0E;IAC1E,8DAA8D;IAC9D,MAAM,kBAAkB,GAAG,CAAC,GAAQ,EAAE,EAAE;QACtC,MAAM,IAAI,GAAG,GAAG,CAAC,mBAAmB,EAAE,IAAI,CAAC;QAC3C,MAAM,QAAQ,GAAG,GAAG,CAAC,iBAAiB,CAAC;QACvC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACxC,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI;YAAE,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAChE,IAAI,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,WAAW,EAAE;YAAE,OAAO,CAAC,6BAA6B;QACxE,UAAU,CAAC,QAAQ,CAAC,CAAC;QACrB,MAAM,EAAE,GAAG,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QACrD,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC;YAC3B,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,IAAI;gBAAE,aAAa,CAAC,EAAE,SAAS,EAAE,EAAE,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC7E,OAAO;QACT,CAAC;QACD,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QACjE,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,cAAc,IAAI,IAAI,OAAO,+CAA+C,CAAC,CAAC;IAC7G,CAAC,CAAC;IAEF,gFAAgF;IAChF,MAAM,iBAAiB,GAAG,CAAC,GAAQ,EAAE,EAAE;QACrC,MAAM,IAAI,GAAG,GAAG,CAAC,kBAAkB,EAAE,IAAI,CAAC;QAC1C,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,IAAI;YAAE,OAAO;QAC9C,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,iBAAiB,CAAC,EAAE,IAAI,CAAC,CAAC;QAC/D,MAAM,EAAE,GAAG,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAClE,IAAI,EAAE;YAAE,aAAa,CAAC,EAAE,SAAS,EAAE,EAAE,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3D,CAAC,CAAC;IAEF,2EAA2E;IAC3E,8EAA8E;IAC9E,2DAA2D;IAC3D,MAAM,iBAAiB,GAAG,CAAC,GAAQ,EAAE,EAAE;QACrC,MAAM,EAAE,GAAG,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAClE,IAAI,CAAC,EAAE;YAAE,OAAO;QAChB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,iBAAiB,CAAC,CAAC;QACrD,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC3B,IAAI,CAAC,EAAE,EAAE,CAAC,UAAU,KAAK,SAAS,CAAC,IAAI;YAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;;YAChF,aAAa,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;QACjC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACtB,CAAC,CAAC;IAEF;;6EAEyE;IACzE,MAAM,aAAa,GAAG,CAAC,GAAQ,EAAE,EAAE;QACjC,MAAM,KAAK,GAAG,eAAe,CAAC,GAAG,EAAE,WAAW,EAAE,CAAC,CAAC;QAClD,IAAI,KAAK,KAAK,IAAI;YAAE,OAAO;QAC3B,WAAW,CAAC,KAAK,CAAC,CAAC;QACnB,OAAO,CAAC,GAAG,CAAC,gDAAgD,KAAK,oBAAoB,CAAC,CAAC;IACzF,CAAC,CAAC;IAEF,MAAM,YAAY,GAAG,KAAK,EAAE,CAAM,EAAE,EAAE;QACpC,IAAI,CAAC,CAAC,cAAc;YAAE,OAAO,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;QAC9D,IAAI,CAAC,CAAC,OAAO,EAAE,kBAAkB;YAAE,OAAO,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QACnE,IAAI,CAAC,CAAC,OAAO,EAAE,mBAAmB;YAAE,OAAO,kBAAkB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QACzE,IAAI,CAAC,CAAC,OAAO,EAAE,kBAAkB;YAAE,OAAO,iBAAiB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QACvE,IAAI,CAAC,CAAC,OAAO,EAAE,kBAAkB,IAAI,CAAC,CAAC,OAAO,EAAE,mBAAmB;YACjE,OAAO,iBAAiB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QACtC,IAAI,CAAC,CAAC,OAAO;YAAE,OAAO,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IACjD,CAAC,CAAC;IAEF,mDAAmD;IACnD,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,MAAM,IAAI,GAAG,KAAK,IAAI,EAAE;QACtB,IAAI,OAAO;YAAE,OAAO;QACpB,SAAS,GAAG,IAAI,eAAe,EAAE,CAAC;QAClC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,GAAG,GAAG,MAAM,EAAE,CAClB,YAAY,EACZ,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,eAAe,EAAE,CAAC,SAAS,EAAE,gBAAgB,CAAC,EAAE,EACvE,UAAU,CAAC,SAAS,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAC/C,CAAC;QACF,IAAI,OAAO;YAAE,OAAO,CAAC,sDAAsD;QAC3E,0EAA0E;QAC1E,sEAAsE;QACtE,0EAA0E;QAC1E,2EAA2E;QAC3E,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,IAAI,gBAAgB;YACpD,OAAO,CAAC,GAAG,CACT,+CAA+C,IAAI,CAAC,KAAK,CAAC,gBAAgB,GAAG,IAAI,CAAC,uBAAuB,CAC1G,CAAC;QACJ,IAAI,GAAG,EAAE,EAAE,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YACzC,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;gBAC3B,MAAM,GAAG,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC;gBACzB,YAAY,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YAClC,CAAC;QACH,CAAC;QACD,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,4BAA4B;IAChE,CAAC,CAAC;IAEF,6EAA6E;IAC7E,4EAA4E;IAC5E,4EAA4E;IAC5E,8EAA8E;IAC9E,0DAA0D;IAC1D,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;IACpC;;;;;;;;;;;;OAYG;IACH,MAAM,kBAAkB,GAAG,CAAC,CAA0G,EAAW,EAAE;QACjJ,MAAM,MAAM,GAAG,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC;QAClC,IAAI,MAAM,IAAI,IAAI;YAAE,OAAO,KAAK,CAAC;QACjC,MAAM,EAAE,GAAG,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,wCAAwC;QACzE,yEAAyE;QACzE,2EAA2E;QAC3E,MAAM,GAAG,GAAG,OAAO,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC;QACrF,MAAM,EAAE,GAAG,oBAAoB,CAAC;YAC9B,MAAM;YACN,QAAQ,EAAE,EAAE;YACZ,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;YAC3B,YAAY,EAAE,cAAc,CAAC,KAAK,GAAG,CAAC,CAAC,SAAS,CAAC;SAClD,CAAC,CAAC;QACH,IAAI,CAAC,EAAE;YAAE,OAAO,KAAK,CAAC;QACtB,MAAM,KAAK,GAAG,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC;QAC3E,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,KAAK,GAAG,CAAC,CAAC;QACtF,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,IAAI,SAAS,EAAE,CAAC,CAAC;QACxF,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEF,MAAM,oBAAoB,GAAG,KAAK,IAAI,EAAE;QACtC,MAAM,KAAK,GAAG,WAAW,EAAE,CAAC;QAC5B,IAAI,KAAK,KAAK,IAAI;YAAE,OAAO;QAC3B,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;QACvF,KAAK,MAAM,CAAC,IAAI,YAAY,EAAE,EAAE,CAAC;YAC/B,wEAAwE;YACxE,yEAAyE;YACzE,wEAAwE;YACxE,uCAAuC;YACvC,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;gBACvE,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;gBAC3B,SAAS;YACX,CAAC;YACD,wEAAwE;YACxE,qEAAqE;YACrE,kEAAkE;YAClE,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YAC7B,qEAAqE;YACrE,2EAA2E;YAC3E,uEAAuE;YACvE,2EAA2E;YAC3E,wEAAwE;YACxE,sEAAsE;YACtE,mBAAmB;YACnB,IAAI,CAAC,CAAC,MAAM,KAAK,KAAK,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC,QAAQ,IAAI,IAAI,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;gBACnG,qEAAqE;gBACrE,kEAAkE;gBAClE,4DAA4D;gBAC5D,MAAM,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBAC/B,MAAM,GAAG,GAAG,OAAO,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,CAAC;gBAC3D,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBAC3B,IAAI,CAAC,EAAE,CAAC;oBACN,IAAI,CAAC;wBAAC,CAAC,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;oBAAC,CAAC;oBAAC,MAAM,CAAC,CAAC,oBAAoB,CAAC,CAAC;oBACpD,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACtB,CAAC;gBACD,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,qBAAqB,EAAE,EAAE,CAAC,CAAC;gBAC/F,MAAM,EAAE,CAAC,kBAAkB,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,iBAAiB,EAAE,EAAE,EAAE,CAAC,CAAC;gBACxE,YAAY,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBACrD,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;gBAC9B,aAAa,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC1D,SAAS;YACX,CAAC;YACD,IAAI,CAAC,MAAM;gBAAE,SAAS;YACtB,0EAA0E;YAC1E,+DAA+D;YAC/D,2EAA2E;YAC3E,yEAAyE;YACzE,uEAAuE;YACvE,kDAAkD;YAClD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;gBAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC;YACrD,wEAAwE;YACxE,qEAAqE;YACrE,kEAAkE;YAClE,IAAI,CAAC,CAAC,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;gBAAE,SAAS;YACnF,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YAC3B,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YAC/D,MAAM,CAAC,GAAG,MAAM,EAAE,CAAC,kBAAkB,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YACjE,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC;gBACV,MAAM,QAAQ,GAAG,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC;gBAC5C,UAAU,CAAC,QAAQ,CAAC,CAAC;gBACrB,0EAA0E;gBAC1E,UAAU,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,QAAQ,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE;oBAChF,QAAQ,EAAE,CAAC,CAAC,SAAS;oBACrB,IAAI;oBACJ,OAAO,EAAE,CAAC,CAAC,OAAO,IAAI,SAAS,EAAE,4CAA4C;oBAC7E,QAAQ,EAAE,IAAI,EAAE,wDAAwD;iBACzE,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,mDAAmD;YACpF,CAAC;QACH,CAAC;IACH,CAAC,CAAC;IAEF,6EAA6E;IAC7E,0EAA0E;IAC1E,4BAA4B;IAC5B,8EAA8E;IAC9E,wEAAwE;IACxE,4EAA4E;IAC5E,6EAA6E;IAC7E,0EAA0E;IAC1E,6EAA6E;IAC7E,yDAAyD;IACzD,MAAM,WAAW,GAAG,KAAK,EAAE,MAAc,EAAE,QAAgB,EAA0C,EAAE;QACrG,MAAM,CAAC,GAAG,MAAM,EAAE,CAAC,gBAAgB,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,QAAQ,EAAE,oBAAoB,EAAE,EAAE,EAAE,CAAC,CAAC;QACjH,IAAI,CAAC,EAAE,EAAE,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC,EAAE,WAAW,IAAI,EAAE,CAAC;YAAE,OAAO,QAAQ,CAAC;QACzE,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;QAC/C,IAAI,+EAA+E,CAAC,IAAI,CAAC,CAAC,CAAC;YAAE,OAAO,MAAM,CAAC;QAC3G,OAAO,SAAS,CAAC,CAAC,gEAAgE;IACpF,CAAC,CAAC;IACF,MAAM,WAAW,GAAG,KAAK,EAAE,MAAc,EAAE,QAAgB,EAAoB,EAAE,CAC/E,CAAC,MAAM,WAAW,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,KAAK,QAAQ,CAAC;IAErD;;;;;OAKG;IACH;;;;;;OAMG;IACH,MAAM,sBAAsB,GAAG,KAAK,IAAI,EAAE;QACxC,IAAI,WAAW,EAAE,KAAK,IAAI;YAAE,OAAO;QACnC,KAAK,MAAM,CAAC,IAAI,YAAY,EAAE,EAAE,CAAC;YAC/B,MAAM,GAAG,GAAG,CAAC,CAAC,QAAQ,CAAC;YACvB,IAAI,GAAG,IAAI,GAAG,CAAC,QAAQ,IAAI,IAAI,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAClD,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBACxB,OAAO,CAAC,GAAG,CAAC,6DAA6D,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;gBACxF,OAAO;YACT,CAAC;QACH,CAAC;QACD,0EAA0E;QAC1E,uEAAuE;QACvE,yEAAyE;QACzE,mDAAmD;QACnD,MAAM,KAAK,GAAG,WAAW,EAAE,CAAC;QAC5B,IAAI,KAAK,KAAK,IAAI;YAAE,OAAO;QAC3B,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,uBAAuB,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;QACrE,MAAM,OAAO,GAAG,MAAM,EAAE,EAAE,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;YACxD,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC;YAC3E,CAAC,CAAC,IAAI,CAAC;QACT,IAAI,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;YACtB,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC7B,OAAO,CAAC,GAAG,CAAC,mEAAmE,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;QACrG,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,eAAe,GAAG,KAAK,IAAI,EAAE;QACjC,MAAM,sBAAsB,EAAE,CAAC;QAC/B,MAAM,KAAK,GAAG,WAAW,EAAE,CAAC;QAC5B,IAAI,KAAK,KAAK,IAAI;YAAE,OAAO;QAC3B,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;QAChC,KAAK,MAAM,CAAC,IAAI,YAAY,EAAE,EAAE,CAAC;YAC/B,MAAM,EAAE,GAAG,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC;YAChC,IAAI,CAAC,EAAE;gBAAE,SAAS;YAClB,MAAM,EAAE,GAAG,MAAM,WAAW,CAAC,CAAC,CAAC,QAAS,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YACrD,IAAI,EAAE,KAAK,QAAQ;gBAAE,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;iBAC9B,IAAI,EAAE,KAAK,MAAM,EAAE,CAAC;gBACvB,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,YAAY,EAAE,uBAAuB,CAAC,CAAC;gBAC3G,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YAC7B,CAAC;YACD,qEAAqE;QACvE,CAAC;QACD,wEAAwE;QACxE,uEAAuE;QACvE,4EAA4E;QAC5E,sEAAsE;QACtE,mEAAmE;QACnE,oEAAoE;QACpE,KAAK,MAAM,CAAC,IAAI,YAAY,EAAE,EAAE,CAAC;YAC/B,2EAA2E;YAC3E,2EAA2E;YAC3E,mEAAmE;YACnE,IAAI,CAAC,CAAC,QAAQ,EAAE,QAAQ,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC;QACpF,CAAC;QAED,IAAI,IAAI,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC;QACtB,KAAK,MAAM,EAAE,IAAI,YAAY,EAAE,EAAE,CAAC;YAChC,IAAI,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;gBAAE,SAAS;YAC5B,IAAI,MAAM,WAAW,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC;gBACjC,OAAO,CAAC,GAAG,CAAC,+CAA+C,EAAE,eAAe,CAAC,CAAC;gBAC9E,MAAM,EAAE,CAAC,kBAAkB,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,iBAAiB,EAAE,EAAE,EAAE,CAAC,CAAC;YAC1E,CAAC;YACD,iDAAiD;QACnD,CAAC;QACD,YAAY,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC,CAAC;IAEF,MAAM,OAAO,GAAG,KAAK,EAAE,OAAO,GAAG,CAAC,EAAiB,EAAE;QACnD,IAAI,OAAO;YAAE,OAAO;QACpB,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QACjC,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC;YACX,WAAW,GAAG,IAAI,EAAE,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YACvC,UAAU,GAAG,IAAI,CAAC;YAClB,OAAO,GAAG,IAAI,CAAC;YACf,OAAO,CAAC,GAAG,CAAC,iBAAiB,WAAW,2BAA2B,CAAC,CAAC;YACrE,IAAI,EAAE,CAAC;YACP,oBAAoB,EAAE,CAAC;YACvB,eAAe,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YAClC,cAAc,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,oBAAoB,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;YACjF,OAAO;QACT,CAAC;QACD,IAAI,EAAE,IAAI,EAAE,CAAC,UAAU,KAAK,GAAG,EAAE,CAAC;YAChC,UAAU,GAAG,wCAAwC,CAAC;YACtD,OAAO,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAC;YAC5D,OAAO;QACT,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,GAAG,CAAC,IAAI,OAAO,CAAC,CAAC;QACrD,OAAO,CAAC,GAAG,CAAC,mDAAmD,KAAK,GAAG,IAAI,GAAG,CAAC,CAAC;QAChF,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IAChD,CAAC,CAAC;IACF,OAAO,EAAE,CAAC;IAEV,2EAA2E;IAC3E,SAAS,oBAAoB;QAC3B,MAAM,CAAC,GAAG,wBAAwB,EAAE,CAAC;QACrC,MAAM,KAAK,GAAG,WAAW,EAAE,CAAC;QAC5B,IAAI,CAAC,CAAC,IAAI,KAAK,KAAK,IAAI;YAAE,OAAO;QACjC,MAAM,IAAI,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,KAAK,EAAE,CAAC;QAClF,EAAE,CAAC,aAAa,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9C,CAAC;IAED,OAAO;QACL,IAAI;YACF,OAAO,GAAG,IAAI,CAAC;YACf,OAAO,GAAG,KAAK,CAAC;YAChB,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC,uDAAuD;YAC3E,IAAI,cAAc;gBAAE,aAAa,CAAC,cAAc,CAAC,CAAC;YAClD,2EAA2E;YAC3E,gEAAgE;YAChE,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;gBACjC,IAAI,CAAC;oBACH,CAAC,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;gBACf,CAAC;gBAAC,MAAM,CAAC;oBACP,qBAAqB;gBACvB,CAAC;YACH,CAAC;YACD,OAAO,CAAC,KAAK,EAAE,CAAC;QAClB,CAAC;QACD,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO;QACtB,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC;KACtD,CAAC;AACJ,CAAC;AAED,gFAAgF;AAChF,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,KAAoB;IACnD,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IACnD,IAAI,CAAC;QACH,0EAA0E;QAC1E,0EAA0E;QAC1E,MAAM,CAAC,GAAG,MAAM,KAAK,CAAC,+BAA+B,KAAK,QAAQ,EAAE;YAClE,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,cAAc,CAAC;SAC5C,CAAC,CAAC;QACH,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;QACzB,IAAI,CAAC,EAAE,EAAE;YAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QACrE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,WAAW,IAAI,QAAQ,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;IACzE,CAAC;IAAC,OAAO,CAAM,EAAE,CAAC;QAChB,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,IAAI,eAAe,EAAE,CAAC;IAClE,CAAC;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"telegram.js","sourceRoot":"","sources":["../src/telegram.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
export declare const PAIRING_DIGITS = 8;
|
|
2
|
+
export declare const PAIRING_TTL_MS: number;
|
|
3
|
+
export declare const PAIRING_MAX_ATTEMPTS = 5;
|
|
4
|
+
export interface PairingState {
|
|
5
|
+
code: string;
|
|
6
|
+
expiresAt: number;
|
|
7
|
+
/** Wrong guesses so far. */
|
|
8
|
+
failures: number;
|
|
9
|
+
}
|
|
10
|
+
export type PairingVerdict = "ok" | "none" | "expired" | "invalid" | "locked";
|
|
11
|
+
/** A fresh code. `rand` is injectable for the tests. */
|
|
12
|
+
export declare function newPairing(now: number, rand?: (max: number) => number): PairingState;
|
|
13
|
+
/** Pull the code out of what was typed: tolerant of spaces and dashes
|
|
14
|
+
* ("1234 5678", "1234-5678"), since people copy codes the way they read them. */
|
|
15
|
+
export declare function normalizeCode(input: string): string;
|
|
16
|
+
/**
|
|
17
|
+
* Try a code against the current state. Returns the verdict and the state to
|
|
18
|
+
* keep: `null` once the code is spent (used, expired or locked out), so nothing
|
|
19
|
+
* can be retried against a dead code. Pure — unit tested.
|
|
20
|
+
*/
|
|
21
|
+
export declare function redeemPairing(state: PairingState | null, input: string, now: number): {
|
|
22
|
+
verdict: PairingVerdict;
|
|
23
|
+
next: PairingState | null;
|
|
24
|
+
};
|
|
25
|
+
/** What a refused redemption tells the Telegram sender. Never says how many
|
|
26
|
+
* tries are left: that is information for the guesser, not for the owner. */
|
|
27
|
+
export declare function pairingRefusal(verdict: Exclude<PairingVerdict, "ok">): string;
|
|
28
|
+
/** Issue a new code, revoking any previous one. */
|
|
29
|
+
export declare function issuePairingCode(now?: number): PairingState;
|
|
30
|
+
/** Redeem against the live code, advancing its state. */
|
|
31
|
+
export declare function redeemPairingCode(input: string, now?: number): PairingVerdict;
|
|
32
|
+
/** Revoke the live code, if any (the panel's "cancel"). */
|
|
33
|
+
export declare function cancelPairingCode(): void;
|
|
34
|
+
/** Is a code live right now, and until when? For the panel, never the code. */
|
|
35
|
+
export declare function pairingStatus(now?: number): {
|
|
36
|
+
active: boolean;
|
|
37
|
+
expiresAt: number | null;
|
|
38
|
+
};
|