claude-mux 0.30.9 → 0.30.10
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/dist/server/ws-handlers.d.ts +9 -0
- package/dist/server/ws-handlers.d.ts.map +1 -1
- package/dist/server/ws-handlers.js +20 -0
- package/dist/server/ws-handlers.js.map +1 -1
- package/dist/utils/version.d.ts +1 -1
- package/dist/utils/version.d.ts.map +1 -1
- package/dist/utils/version.js +1 -1
- package/dist/utils/version.js.map +1 -1
- package/dist/web/client/_app/immutable/chunks/{WcCQ-aQB.js → 76AmYzaD.js} +2 -2
- package/{web/.svelte-kit/output/client/_app/immutable/chunks/WcCQ-aQB.js.map → dist/web/client/_app/immutable/chunks/76AmYzaD.js.map} +1 -1
- package/{web/.svelte-kit/output/client/_app/immutable/chunks/BjdWK2NF.js → dist/web/client/_app/immutable/chunks/BN67l1AA.js} +2 -2
- package/{web/.svelte-kit/output/client/_app/immutable/chunks/BjdWK2NF.js.map → dist/web/client/_app/immutable/chunks/BN67l1AA.js.map} +1 -1
- package/dist/web/client/_app/immutable/chunks/{BbA90VVA.js → BiAXZSQb.js} +2 -2
- package/dist/web/client/_app/immutable/chunks/{BbA90VVA.js.map → BiAXZSQb.js.map} +1 -1
- package/dist/web/client/_app/immutable/chunks/BnE52VzB.js +3 -0
- package/{web/.svelte-kit/output/client/_app/immutable/chunks/DNGi74N5.js.map → dist/web/client/_app/immutable/chunks/BnE52VzB.js.map} +1 -1
- package/dist/web/client/_app/immutable/chunks/{StY2ivXA.js → BoLLjGZ-.js} +2 -2
- package/dist/web/client/_app/immutable/chunks/{StY2ivXA.js.map → BoLLjGZ-.js.map} +1 -1
- package/dist/web/client/_app/immutable/chunks/{By7KKiBd.js → DZ7qyYLy.js} +2 -2
- package/dist/web/client/_app/immutable/chunks/{By7KKiBd.js.map → DZ7qyYLy.js.map} +1 -1
- package/dist/web/client/_app/immutable/chunks/{bviL0pV4.js → DZJoSjVm.js} +2 -2
- package/dist/web/client/_app/immutable/chunks/{bviL0pV4.js.map → DZJoSjVm.js.map} +1 -1
- package/dist/web/client/_app/immutable/entry/{app.CEqzvY3i.js → app.B2ykX6JY.js} +3 -3
- package/dist/web/client/_app/immutable/entry/{app.CEqzvY3i.js.map → app.B2ykX6JY.js.map} +1 -1
- package/dist/web/client/_app/immutable/entry/start.Cxod0sBC.js +2 -0
- package/dist/web/client/_app/immutable/entry/start.Cxod0sBC.js.map +1 -0
- package/{web/.svelte-kit/output/client/_app/immutable/nodes/0.CldYQ0Ko.js → dist/web/client/_app/immutable/nodes/0.DZvzju5d.js} +2 -2
- package/dist/web/client/_app/immutable/nodes/{0.CldYQ0Ko.js.map → 0.DZvzju5d.js.map} +1 -1
- package/dist/web/client/_app/immutable/nodes/{1.Ci-9CzON.js → 1.Cbr4ApxR.js} +2 -2
- package/dist/web/client/_app/immutable/nodes/{1.Ci-9CzON.js.map → 1.Cbr4ApxR.js.map} +1 -1
- package/dist/web/client/_app/immutable/nodes/{2.6uAg6Oxz.js → 2._7x8cRyx.js} +2 -2
- package/dist/web/client/_app/immutable/nodes/{2.6uAg6Oxz.js.map → 2._7x8cRyx.js.map} +1 -1
- package/{web/.svelte-kit/output/client/_app/immutable/nodes/3.Blv7aHDK.js → dist/web/client/_app/immutable/nodes/3.XxKYNvQs.js} +2 -2
- package/dist/web/client/_app/immutable/nodes/{3.Blv7aHDK.js.map → 3.XxKYNvQs.js.map} +1 -1
- package/dist/web/client/_app/immutable/nodes/{4.CHa32UFY.js → 4.BoRyGyvU.js} +2 -2
- package/{web/.svelte-kit/output/client/_app/immutable/nodes/4.CHa32UFY.js.map → dist/web/client/_app/immutable/nodes/4.BoRyGyvU.js.map} +1 -1
- package/dist/web/client/_app/version.json +1 -1
- package/dist/web/server/chunks/{0-M1uFb9FA.js → 0-3HtYfE9q.js} +8 -8
- package/dist/web/server/chunks/{0-M1uFb9FA.js.map → 0-3HtYfE9q.js.map} +1 -1
- package/dist/web/server/chunks/{1-Df9brBDc.js → 1-CcNQJLoC.js} +4 -4
- package/dist/web/server/chunks/{1-Df9brBDc.js.map → 1-CcNQJLoC.js.map} +1 -1
- package/dist/web/server/chunks/{2-DmNJzlWe.js → 2-DD4Kxwdl.js} +6 -6
- package/dist/web/server/chunks/{2-DmNJzlWe.js.map → 2-DD4Kxwdl.js.map} +1 -1
- package/dist/web/server/chunks/{3-DmsUnSgy.js → 3-DcVvipw-.js} +7 -7
- package/dist/web/server/chunks/{3-DmsUnSgy.js.map → 3-DcVvipw-.js.map} +1 -1
- package/dist/web/server/chunks/{4-BKo64h0a.js → 4-CnnPOF6o.js} +6 -6
- package/dist/web/server/chunks/{4-BKo64h0a.js.map → 4-CnnPOF6o.js.map} +1 -1
- package/dist/web/server/chunks/{_server.ts-DHelkpQp.js → _server.ts-BDmIR5n3.js} +2 -2
- package/dist/web/server/chunks/{_server.ts-DHelkpQp.js.map → _server.ts-BDmIR5n3.js.map} +1 -1
- package/dist/web/server/chunks/{_server.ts-DqVG7OBg.js → _server.ts-Bz1IUeYk.js} +3 -3
- package/dist/web/server/chunks/{_server.ts-DqVG7OBg.js.map → _server.ts-Bz1IUeYk.js.map} +1 -1
- package/dist/web/server/chunks/{_server.ts-Bv6oSWei.js → _server.ts-C8M8qywo.js} +3 -3
- package/dist/web/server/chunks/{_server.ts-Bv6oSWei.js.map → _server.ts-C8M8qywo.js.map} +1 -1
- package/dist/web/server/chunks/{_server.ts-DaNApVPR.js → _server.ts-CMDULeQn.js} +3 -3
- package/dist/web/server/chunks/{_server.ts-DaNApVPR.js.map → _server.ts-CMDULeQn.js.map} +1 -1
- package/dist/web/server/chunks/{_server.ts-COmnPdv-.js → _server.ts-DK9_MYmu.js} +2 -2
- package/dist/web/server/chunks/{_server.ts-COmnPdv-.js.map → _server.ts-DK9_MYmu.js.map} +1 -1
- package/dist/web/server/chunks/{_server.ts-CPBfv0Wo.js → _server.ts-DWuxrEcw.js} +2 -2
- package/dist/web/server/chunks/{_server.ts-CPBfv0Wo.js.map → _server.ts-DWuxrEcw.js.map} +1 -1
- package/dist/web/server/chunks/{_server.ts-CpWLsUe5.js → _server.ts-Dp7IOeIj.js} +2 -2
- package/dist/web/server/chunks/{_server.ts-CpWLsUe5.js.map → _server.ts-Dp7IOeIj.js.map} +1 -1
- package/dist/web/server/chunks/{_server.ts-CWVxOUHm.js → _server.ts-Scyj3kus.js} +2 -2
- package/dist/web/server/chunks/{_server.ts-CWVxOUHm.js.map → _server.ts-Scyj3kus.js.map} +1 -1
- package/dist/web/server/chunks/{_server.ts-XxhaUDQz.js → _server.ts-qJbQVbSr.js} +3 -3
- package/dist/web/server/chunks/{_server.ts-XxhaUDQz.js.map → _server.ts-qJbQVbSr.js.map} +1 -1
- package/dist/web/server/chunks/{hooks.server-JA7qn1eq.js → hooks.server-DG1KCYEL.js} +6 -4
- package/dist/web/server/chunks/hooks.server-DG1KCYEL.js.map +1 -0
- package/dist/web/server/chunks/{ws-handlers-Dzc0p0Ub.js → ws-handlers-CzLuwHd2.js} +11 -2
- package/dist/web/server/chunks/{ws-handlers-Dzc0p0Ub.js.map → ws-handlers-CzLuwHd2.js.map} +1 -1
- package/dist/web/server/chunks/{ws-managers-CHOlG1XQ.js → ws-managers-aDT4iGvg.js} +2 -2
- package/dist/web/server/chunks/{ws-managers-CHOlG1XQ.js.map → ws-managers-aDT4iGvg.js.map} +1 -1
- package/dist/web/server/index.js +2 -2
- package/dist/web/server/index.js.map +1 -1
- package/dist/web/server/manifest.js +19 -19
- package/dist/web/server/manifest.js.map +1 -1
- package/package.json +1 -1
- package/src/server/ws-handlers.ts +18 -0
- package/src/utils/version.ts +1 -1
- package/tests/server/socket-origin.test.ts +31 -0
- package/web/.svelte-kit/adapter-bun/chunks/internal2.js +1 -1
- package/web/.svelte-kit/adapter-bun/chunks/internal2.js.map +1 -1
- package/web/.svelte-kit/adapter-bun/chunks/ws-handlers.js +17 -7
- package/web/.svelte-kit/adapter-bun/chunks/ws-handlers.js.map +1 -1
- package/web/.svelte-kit/adapter-bun/chunks/ws-managers.js +1 -1
- package/web/.svelte-kit/adapter-bun/entries/endpoints/api/projects/_server.ts.js +1 -1
- package/web/.svelte-kit/adapter-bun/entries/endpoints/api/projects/new-session/_server.ts.js +1 -1
- package/web/.svelte-kit/adapter-bun/entries/endpoints/api/sessions/_id_/visit/_server.ts.js +1 -1
- package/web/.svelte-kit/adapter-bun/entries/endpoints/api/sessions/_server.ts.js +1 -1
- package/web/.svelte-kit/adapter-bun/entries/endpoints/api/settings/_server.ts.js +1 -1
- package/web/.svelte-kit/adapter-bun/entries/hooks.server.js +4 -2
- package/web/.svelte-kit/adapter-bun/entries/hooks.server.js.map +1 -1
- package/web/.svelte-kit/adapter-bun/manifest-full.js +1 -1
- package/web/.svelte-kit/adapter-bun/manifest.js +1 -1
- package/web/.svelte-kit/adapter-bun/nodes/0.js +1 -1
- package/web/.svelte-kit/adapter-bun/nodes/1.js +1 -1
- package/web/.svelte-kit/adapter-bun/nodes/2.js +1 -1
- package/web/.svelte-kit/adapter-bun/nodes/3.js +1 -1
- package/web/.svelte-kit/adapter-bun/nodes/4.js +1 -1
- package/web/.svelte-kit/generated/server/internal.js +1 -1
- package/web/.svelte-kit/output/client/.vite/manifest.json +103 -103
- package/web/.svelte-kit/output/client/_app/immutable/chunks/{WcCQ-aQB.js → 76AmYzaD.js} +2 -2
- package/{dist/web/client/_app/immutable/chunks/WcCQ-aQB.js.map → web/.svelte-kit/output/client/_app/immutable/chunks/76AmYzaD.js.map} +1 -1
- package/{dist/web/client/_app/immutable/chunks/BjdWK2NF.js → web/.svelte-kit/output/client/_app/immutable/chunks/BN67l1AA.js} +2 -2
- package/{dist/web/client/_app/immutable/chunks/BjdWK2NF.js.map → web/.svelte-kit/output/client/_app/immutable/chunks/BN67l1AA.js.map} +1 -1
- package/web/.svelte-kit/output/client/_app/immutable/chunks/{BbA90VVA.js → BiAXZSQb.js} +2 -2
- package/web/.svelte-kit/output/client/_app/immutable/chunks/{BbA90VVA.js.map → BiAXZSQb.js.map} +1 -1
- package/web/.svelte-kit/output/client/_app/immutable/chunks/BnE52VzB.js +3 -0
- package/{dist/web/client/_app/immutable/chunks/DNGi74N5.js.map → web/.svelte-kit/output/client/_app/immutable/chunks/BnE52VzB.js.map} +1 -1
- package/web/.svelte-kit/output/client/_app/immutable/chunks/{StY2ivXA.js → BoLLjGZ-.js} +2 -2
- package/web/.svelte-kit/output/client/_app/immutable/chunks/{StY2ivXA.js.map → BoLLjGZ-.js.map} +1 -1
- package/web/.svelte-kit/output/client/_app/immutable/chunks/{By7KKiBd.js → DZ7qyYLy.js} +2 -2
- package/web/.svelte-kit/output/client/_app/immutable/chunks/{By7KKiBd.js.map → DZ7qyYLy.js.map} +1 -1
- package/web/.svelte-kit/output/client/_app/immutable/chunks/{bviL0pV4.js → DZJoSjVm.js} +2 -2
- package/web/.svelte-kit/output/client/_app/immutable/chunks/{bviL0pV4.js.map → DZJoSjVm.js.map} +1 -1
- package/web/.svelte-kit/output/client/_app/immutable/entry/{app.CEqzvY3i.js → app.B2ykX6JY.js} +3 -3
- package/web/.svelte-kit/output/client/_app/immutable/entry/{app.CEqzvY3i.js.map → app.B2ykX6JY.js.map} +1 -1
- package/web/.svelte-kit/output/client/_app/immutable/entry/start.Cxod0sBC.js +2 -0
- package/web/.svelte-kit/output/client/_app/immutable/entry/start.Cxod0sBC.js.map +1 -0
- package/{dist/web/client/_app/immutable/nodes/0.CldYQ0Ko.js → web/.svelte-kit/output/client/_app/immutable/nodes/0.DZvzju5d.js} +2 -2
- package/web/.svelte-kit/output/client/_app/immutable/nodes/{0.CldYQ0Ko.js.map → 0.DZvzju5d.js.map} +1 -1
- package/web/.svelte-kit/output/client/_app/immutable/nodes/{1.Ci-9CzON.js → 1.Cbr4ApxR.js} +2 -2
- package/web/.svelte-kit/output/client/_app/immutable/nodes/{1.Ci-9CzON.js.map → 1.Cbr4ApxR.js.map} +1 -1
- package/web/.svelte-kit/output/client/_app/immutable/nodes/{2.6uAg6Oxz.js → 2._7x8cRyx.js} +2 -2
- package/web/.svelte-kit/output/client/_app/immutable/nodes/{2.6uAg6Oxz.js.map → 2._7x8cRyx.js.map} +1 -1
- package/{dist/web/client/_app/immutable/nodes/3.Blv7aHDK.js → web/.svelte-kit/output/client/_app/immutable/nodes/3.XxKYNvQs.js} +2 -2
- package/web/.svelte-kit/output/client/_app/immutable/nodes/{3.Blv7aHDK.js.map → 3.XxKYNvQs.js.map} +1 -1
- package/web/.svelte-kit/output/client/_app/immutable/nodes/{4.CHa32UFY.js → 4.BoRyGyvU.js} +2 -2
- package/{dist/web/client/_app/immutable/nodes/4.CHa32UFY.js.map → web/.svelte-kit/output/client/_app/immutable/nodes/4.BoRyGyvU.js.map} +1 -1
- package/web/.svelte-kit/output/client/_app/version.json +1 -1
- package/web/.svelte-kit/output/server/chunks/internal2.js +1 -1
- package/web/.svelte-kit/output/server/chunks/internal2.js.map +1 -1
- package/web/.svelte-kit/output/server/chunks/ws-handlers.js +17 -7
- package/web/.svelte-kit/output/server/chunks/ws-handlers.js.map +1 -1
- package/web/.svelte-kit/output/server/chunks/ws-managers.js +1 -1
- package/web/.svelte-kit/output/server/entries/endpoints/api/projects/_server.ts.js +1 -1
- package/web/.svelte-kit/output/server/entries/endpoints/api/projects/new-session/_server.ts.js +1 -1
- package/web/.svelte-kit/output/server/entries/endpoints/api/sessions/_id_/visit/_server.ts.js +1 -1
- package/web/.svelte-kit/output/server/entries/endpoints/api/sessions/_server.ts.js +1 -1
- package/web/.svelte-kit/output/server/entries/endpoints/api/settings/_server.ts.js +1 -1
- package/web/.svelte-kit/output/server/entries/hooks.server.js +4 -2
- package/web/.svelte-kit/output/server/entries/hooks.server.js.map +1 -1
- package/web/.svelte-kit/output/server/manifest-full.js +1 -1
- package/web/.svelte-kit/output/server/manifest.js +1 -1
- package/web/.svelte-kit/output/server/nodes/0.js +1 -1
- package/web/.svelte-kit/output/server/nodes/1.js +1 -1
- package/web/.svelte-kit/output/server/nodes/2.js +1 -1
- package/web/.svelte-kit/output/server/nodes/3.js +1 -1
- package/web/.svelte-kit/output/server/nodes/4.js +1 -1
- package/web/src/hooks.server.ts +7 -2
- package/dist/web/client/_app/immutable/chunks/DNGi74N5.js +0 -3
- package/dist/web/client/_app/immutable/entry/start.r-3NFZvF.js +0 -2
- package/dist/web/client/_app/immutable/entry/start.r-3NFZvF.js.map +0 -1
- package/dist/web/server/chunks/hooks.server-JA7qn1eq.js.map +0 -1
- package/web/.svelte-kit/output/client/_app/immutable/chunks/DNGi74N5.js +0 -3
- package/web/.svelte-kit/output/client/_app/immutable/entry/start.r-3NFZvF.js +0 -2
- package/web/.svelte-kit/output/client/_app/immutable/entry/start.r-3NFZvF.js.map +0 -1
|
@@ -350,6 +350,15 @@ export declare function handleWsMessage(msgStr: string, handlers?: WsMessageHand
|
|
|
350
350
|
* names (`*.ts.net`) and the loopback names a dev server answers on.
|
|
351
351
|
*/
|
|
352
352
|
export declare const TRUSTED_ORIGIN: RegExp;
|
|
353
|
+
/**
|
|
354
|
+
* Whether a socket may be opened from a page at `origin`. A WebSocket is not
|
|
355
|
+
* held to CORS, so without this any site open in the browser could stream
|
|
356
|
+
* the sessions, transcripts and terminals of every claude-mux it can reach.
|
|
357
|
+
* The rule is the one CORS applies to `/api/`: the page this server served,
|
|
358
|
+
* or a tailnet or loopback page. A client that sends no Origin is not a
|
|
359
|
+
* browser page, and is let through.
|
|
360
|
+
*/
|
|
361
|
+
export declare function socketOriginAllowed(origin: string | null | undefined, host: string | null | undefined): boolean;
|
|
353
362
|
export type WsPathResult = {
|
|
354
363
|
type: 'sessions';
|
|
355
364
|
} | {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ws-handlers.d.ts","sourceRoot":"","sources":["../../src/server/ws-handlers.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ws-handlers.d.ts","sourceRoot":"","sources":["../../src/server/ws-handlers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1601,6 +1601,26 @@ export function handleWsMessage(msgStr, handlers) {
|
|
|
1601
1601
|
* names (`*.ts.net`) and the loopback names a dev server answers on.
|
|
1602
1602
|
*/
|
|
1603
1603
|
export const TRUSTED_ORIGIN = /^https?:\/\/(?:[a-z0-9-]+\.)*[a-z0-9-]+\.ts\.net(?::\d+)?$|^https?:\/\/(?:localhost|127\.0\.0\.1)(?::\d+)?$/i;
|
|
1604
|
+
/**
|
|
1605
|
+
* Whether a socket may be opened from a page at `origin`. A WebSocket is not
|
|
1606
|
+
* held to CORS, so without this any site open in the browser could stream
|
|
1607
|
+
* the sessions, transcripts and terminals of every claude-mux it can reach.
|
|
1608
|
+
* The rule is the one CORS applies to `/api/`: the page this server served,
|
|
1609
|
+
* or a tailnet or loopback page. A client that sends no Origin is not a
|
|
1610
|
+
* browser page, and is let through.
|
|
1611
|
+
*/
|
|
1612
|
+
export function socketOriginAllowed(origin, host) {
|
|
1613
|
+
if (!origin)
|
|
1614
|
+
return true;
|
|
1615
|
+
if (TRUSTED_ORIGIN.test(origin))
|
|
1616
|
+
return true;
|
|
1617
|
+
try {
|
|
1618
|
+
return !!host && new URL(origin).host === host;
|
|
1619
|
+
}
|
|
1620
|
+
catch {
|
|
1621
|
+
return false;
|
|
1622
|
+
}
|
|
1623
|
+
}
|
|
1604
1624
|
export function parseWsPath(pathname) {
|
|
1605
1625
|
if (pathname === '/api/sessions/stream') {
|
|
1606
1626
|
return { type: 'sessions' };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ws-handlers.js","sourceRoot":"","sources":["../../src/server/ws-handlers.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,aAAa,EAAE,SAAS,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,SAAS,EAAgB,MAAM,gBAAgB,CAAC;AAE1J,OAAO,EAAE,iBAAiB,EAAwB,MAAM,yBAAyB,CAAC;AAClF,OAAO,EAAE,eAAe,EAAwB,MAAM,2BAA2B,CAAC;AAClF,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,qBAAqB,EAAqB,MAAM,yBAAyB,CAAC;AAC/G,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,YAAY,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,aAAa,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAExR,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAkCxF,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAE7E,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAmB1D,MAAM,cAAc,GAAuB;IAC1C,kBAAkB,EAAE,EAAE;IACtB,2BAA2B,EAAE,EAAE;IAC/B,uBAAuB,EAAE,GAAG;IAC5B,iBAAiB,EAAE,GAAG;IACtB,KAAK,EAAE,KAAK;CACZ,CAAC;AAeF,SAAS,GAAG,CAAC,KAAe,EAAE,MAA0B;IACvD,IAAI,KAAK,CAAC,KAAK,KAAK,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK;QAAE,OAAO;IAErD,MAAM,MAAM,GAAG,OAAO,KAAK,CAAC,SAAS,GAAG,CAAC;IACzC,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI;QACrB,CAAC,CAAC,GAAG,MAAM,IAAI,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;QAC5D,CAAC,CAAC,GAAG,MAAM,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;IAEhC,QAAQ,KAAK,CAAC,KAAK,EAAE,CAAC;QACrB,KAAK,OAAO;YACX,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACnB,MAAM;QACP,KAAK,MAAM;YACV,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAClB,MAAM;QACP,KAAK,MAAM;YACV,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAClB,MAAM;QACP,KAAK,OAAO;YACX,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACnB,MAAM;IACR,CAAC;AACF,CAAC;AAyED,MAAM,qBAAqB,GAAG,GAAG,CAAC;AAClC,MAAM,iBAAiB,GAAG,IAAI,CAAC;AAC/B,2CAA2C;AAC3C,MAAM,mBAAmB,GAAG,IAAI,CAAC;AAEjC,+EAA+E;AAC/E,kBAAkB;AAClB,+EAA+E;AAG/E,SAAS,uBAAuB,CAC/B,QAAa;IAEb,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAa,CAAC;IACtC,MAAM,QAAQ,GAAQ,EAAE,CAAC;IACzB,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAChC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;YAC1B,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACvB,SAAS;QACV,CAAC;QACD,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QACnD,IAAI,CAAC,QAAQ,IAAI,OAAO,CAAC,WAAW,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;YAC7D,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QAC5C,CAAC;IACF,CAAC;IACD,OAAO,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,EAAE,GAAG,QAAQ,CAAC,CAAC;AAC5C,CAAC;AAED,+EAA+E;AAC/E,MAAM,aAAa,GAAG,IAAI,GAAG,EAAkB,CAAC;AAEhD;;;;GAIG;AACH;;;;;;GAMG;AACH,MAAM,cAAc,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAEtC,SAAS,kBAAkB,CAAC,OAAgB;IAC3C,OAAO,CAAC,OAAO,CAAC,gBAAgB,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,WAAW,GAAG,cAAc,CAAC;AACjG,CAAC;AAED,KAAK,UAAU,sBAAsB;IAMpC,MAAM,QAAQ,GAAG,cAAc,EAAE,CAAC;IAClC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC3C,MAAM,WAAW,GAAG,IAAI,GAAG,EAAkB,CAAC;IAE9C,8EAA8E;IAC9E,MAAM,KAAK,GAAG,CAAC,OAAgB,EAAE,KAAuB,EAAE,EAAE;QAC3D,aAAa,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QACjC,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAC/B,CAAC,CAAC;IAEF,MAAM,OAAO,CAAC,GAAG,CAChB,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;QAC9B,IAAI,CAAC,OAAO,CAAC,WAAW;YAAE,OAAO;QACjC,mEAAmE;QACnE,oEAAoE;QACpE,2BAA2B;QAC3B,MAAM,GAAG,GAAG,MAAM,uBAAuB,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QACrE,IAAI,CAAC,GAAG;YAAE,OAAO;QACjB,MAAM,OAAO,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;QAC/B,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QAC3C,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;QAE1C,IAAI,OAAO,CAAC,KAAK,KAAK,MAAM,IAAI,wBAAwB,CAAC,OAAO,CAAC,EAAE,CAAC;YACnE,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5E,CAAC;aAAM,IACN,OAAO,CAAC,KAAK,KAAK,MAAM;YACxB,CAAC,kBAAkB,CAAC,OAAO,CAAC;YAC5B,uBAAuB,CAAC,OAAO,CAAC,EAC/B,CAAC;YACF,oEAAoE;YACpE,oEAAoE;YACpE,mEAAmE;YACnE,mEAAmE;YACnE,MAAM,KAAK,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;YACvD,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;gBAChB,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;gBACjC,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;YAC5E,CAAC;iBAAM,CAAC;gBACP,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;YACtC,CAAC;QACF,CAAC;aAAM,CAAC;YACP,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAClC,CAAC;QACD,uEAAuE;QACvE,mDAAmD;QACnD,IAAI,OAAO,CAAC,KAAK,KAAK,MAAM,EAAE,CAAC;YAC9B,MAAM,QAAQ,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;YAC3C,IAAI,QAAQ;gBAAE,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC3E,CAAC;IACF,CAAC,CAAC,CACF,CAAC;IAEF,+DAA+D;IAC/D,IAAI,aAAa,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAChD,KAAK,MAAM,EAAE,IAAI,aAAa,CAAC,IAAI,EAAE,EAAE,CAAC;YACvC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;gBAAE,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC7C,CAAC;IACF,CAAC;IAED,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC;AAC5C,CAAC;AASD,yEAAyE;AACzE,MAAM,UAAU,GAAG,IAAI,GAAG,EAAkB,CAAC;AAE7C,SAAS,YAAY,CAAC,SAAiB,EAAE,QAA6B;IACrE,IAAI,CAAC,QAAQ,EAAE,CAAC;QACf,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC7B,OAAO,IAAI,CAAC;IACb,CAAC;IACD,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,GAAG,QAAQ,CAAC;IACxC,IAAI,SAAS,KAAK,IAAI;QAAE,OAAO,EAAE,GAAG,IAAI,EAAE,UAAU,EAAE,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,IAAI,EAAE,CAAC;IAC1F,0EAA0E;IAC1E,iEAAiE;IACjE,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,GAAG,IAAI,CAAC;IAC5C,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACxC,IAAI,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,IAAI;QAAE,OAAO,EAAE,GAAG,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;IAClG,UAAU,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IACjC,OAAO,EAAE,GAAG,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;AACvC,CAAC;AAED;;;GAGG;AACH,uEAAuE;AACvE,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;AAEtC,8EAA8E;AAC9E,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU,CAAC;AACjC,kFAAkF;AAClF,IAAI,QAAQ,GAAG,KAAK,CAAC;AAErB;;;GAGG;AACH,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAkB,CAAC;AAEtD;;;;;;;GAOG;AACH,SAAS,mBAAmB,CAAC,CAAU;IACtC,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,QAAQ,CAAC,KAAK,QAAQ;QAAE,OAAO;IAC/C,MAAM,KAAK,GAAG,mBAAmB,CAAC,CAAC,CAAC,CAAC;IACrC,IAAI,KAAK,KAAK,SAAS,IAAI,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,KAAK;QAAE,OAAO;IAC3E,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IACrC,MAAM,IAAI,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;IACxC,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,YAAY,IAAI,IAAI,CAAC;QAAE,OAAO;IAC9C,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5C,CAAC,CAAC,YAAY,GAAG,IAAI,CAAC;AACvB,CAAC;AAED;;;;GAIG;AACH,SAAS,WAAW,CAAC,CAAU;IAC9B,MAAM,GAAG,GAAG,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAClC,IAAI,GAAG;QAAE,OAAO,EAAE,GAAG,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IAC1C,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACnC,MAAM,OAAO,GAAG,cAAc,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC;IAC7C,OAAO,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AAC3D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,wBAAwB;IAC7C,MAAM,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,EAAE,UAAU,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAC3E,sBAAsB,EAAE;QACxB,gBAAgB,EAAE;KAClB,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG,SAAS,EAAE,CAAC;IAE1B,qEAAqE;IACrE,sEAAsE;IACtE,oEAAoE;IACpE,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QAC1B,MAAM,IAAI,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACvE,IAAI,IAAI,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,WAAY,CAAC,EAAE,CAAC;YACrE,MAAM,MAAM,GAAG,CAAC,CAAC,WAAY,CAAC;YAC9B,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACxB,KAAK,mBAAmB,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;QAC5E,CAAC;IACF,CAAC;IAED,yEAAyE;IACzE,0EAA0E;IAC1E,0EAA0E;IAC1E,mDAAmD;IACnD,MAAM,IAAI,GAAG,WAAW,EAAE,CAAC,iBAAiB,CAAC;IAC7C,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QAC1B,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAAE,SAAS;QAC/B,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACjB,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI;YAAE,SAAS;QACjC,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,QAAQ,CAAC,KAAK,QAAQ;YAAE,SAAS;QAC/E,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAAE,SAAS;QACnE,OAAO,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;IAC1C,CAAC;IACD,QAAQ,GAAG,IAAI,CAAC;IAEhB,KAAK,MAAM,CAAC,IAAI,QAAQ;QAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC;IAEjD,2EAA2E;IAC3E,uEAAuE;IACvE,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IAE5B,sFAAsF;IACtF,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QAC1B,IAAI,CAAC,CAAC,CAAC,WAAW;YAAE,SAAS;QAC7B,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;QAC5C,IAAI,CAAC,OAAO;YAAE,SAAS;QACvB,MAAM,KAAK,GAAG,sBAAsB,CAAC,OAAO,CAAC,CAAC;QAC9C,IAAI,KAAK,IAAI,KAAK,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;YACjC,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;YACvC,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC;YACjB,mEAAmE;YACnE,mEAAmE;YACnE,iEAAiE;YACjE,kEAAkE;YAClE,IAAI,4CAA4C,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBAChE,KAAK,YAAY,CAAC,CAAC,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;YAC3C,CAAC;QACF,CAAC;aAAM,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;YAC/B,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;YACtC,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC;QACjB,CAAC;IACF,CAAC;IAED,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,gBAAgB,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QAC3C,MAAM,SAAS,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACxF,MAAM,GAAG,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACvE,2EAA2E;QAC3E,MAAM,QAAQ,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACzE,sEAAsE;QACtE,gDAAgD;QAChD,MAAM,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC5C,MAAM,QAAQ,GAA6B;YAC1C,GAAG,CAAC;YACJ,UAAU,EAAE,SAAS;YACrB,UAAU,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI;YAChE,WAAW,EAAE,GAAG,EAAE,IAAI,IAAI,IAAI;YAC9B,UAAU,EAAE,GAAG,EAAE,IAAI,IAAI,IAAI;YAC7B,mEAAmE;YACnE,yCAAyC;YACzC,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;YAC9C,oEAAoE;YACpE,wEAAwE;YACxE,mEAAmE;YACnE,oEAAoE;YACpE,qEAAqE;YACrE,iEAAiE;YACjE,WAAW,EAAE,QAAQ;gBACpB,CAAC,CAAC,iBAAiB,CAAC,QAAQ,EAAE;oBAC5B,YAAY,EAAE,CAAC,CAAC,KAAK,KAAK,SAAS,IAAI,CAAC,CAAC,KAAK,KAAK,YAAY;iBAC/D,CAAC;gBACH,CAAC,CAAC,IAAI;YACP,2EAA2E;YAC3E,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI;YACzD,oEAAoE;YACpE,4EAA4E;YAC5E,aAAa,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,QAAQ,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YACjG,qEAAqE;YACrE,WAAW,EAAE,kBAAkB,CAAC,CAAC,CAAC;YAClC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,aAAa,CAAC;YAC5C,+EAA+E;YAC/E,KAAK,EAAE,CAAC,CAAC,WAAW;gBACnB,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC;gBACzE,CAAC,CAAC,EAAE;YACL,SAAS,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE;YAC5D,eAAe,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI;YACrC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC;SACvB,CAAC;QAEF,IAAI,CAAC,CAAC,WAAW,IAAI,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC;YAC3C,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;YACxC,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,UAAU,CAAC,CAAC;YACvE,IAAI,WAAW,EAAE,CAAC;gBACjB,QAAQ,CAAC,SAAS,GAAG,WAAW,CAAC,EAAE,CAAC;YACrC,CAAC;QACF,CAAC;QAED,OAAO,QAAQ,CAAC;IACjB,CAAC,CAAC,CAAC;IAEH,OAAO,uBAAuB,CAAC,gBAAgB,CAAC,CAAC;AAClD,CAAC;AAED,+EAA+E;AAC/E,mBAAmB;AACnB,+EAA+E;AAE/E,MAAM,UAAU,iBAAiB,CAAC,MAAc,EAAE,QAAgB,qBAAqB;IACtF,IAAI,CAAC;QACJ,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC1E,OAAO,YAAY,CAAC,MAAM,EAAE,CAAC,cAAc,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,KAAK,EAAE,CAAC,EAAE;YAC1F,QAAQ,EAAE,OAAO;YACjB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;YAC/B,OAAO,EAAE,IAAI;SACb,CAAC,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,MAAc,EAAE,IAAY,EAAE,IAAY;IACpE,gBAAgB,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AACtC,CAAC;AAED,+EAA+E;AAC/E,2DAA2D;AAC3D,+EAA+E;AAE/E,IAAI,iBAAiB,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;AAC/E,IAAI,WAAW,GAAG,CAAC,CAAC;AACpB,IAAI,YAAY,GAAG,CAAC,CAAC;AACrB,IAAI,gBAAgB,GAA0C,IAAI,CAAC;AACnE,IAAI,mBAAmB,GAAG,CAAC,CAAC;AAE5B,SAAS,kBAAkB;IAC1B,IAAI,CAAC;QACJ,MAAM,IAAI,GAAG,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QACjD,MAAM,OAAO,GAAG,YAAY,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;QAEvD,MAAM;QACN,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QACpC,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC3D,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAC9C,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;QAClD,MAAM,QAAQ,GAAG,IAAI,GAAG,WAAW,CAAC;QACpC,MAAM,SAAS,GAAG,KAAK,GAAG,YAAY,CAAC;QACvC,MAAM,UAAU,GAAG,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,QAAQ,GAAG,SAAS,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACpF,WAAW,GAAG,IAAI,CAAC;QACnB,YAAY,GAAG,KAAK,CAAC;QAErB,SAAS;QACT,MAAM,GAAG,GAA2B,EAAE,CAAC;QACvC,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YACxC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;YAC5C,IAAI,KAAK;gBAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACnD,CAAC;QACD,MAAM,QAAQ,GAAG,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACtC,MAAM,YAAY,GAAG,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAC9C,MAAM,SAAS,GAAG,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACxC,MAAM,QAAQ,GAAG,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAEtC,iBAAiB,GAAG;YACnB,GAAG,EAAE,UAAU;YACf,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,GAAG,YAAY,CAAC,GAAG,QAAQ,CAAC,GAAG,GAAG,CAAC;YAC7D,IAAI,EAAE,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,GAAG,QAAQ,CAAC,GAAG,SAAS,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAChF,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC;YACrC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC;SACvC,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACR,oDAAoD;IACrD,CAAC;AACF,CAAC;AAED,SAAS,gBAAgB;IACxB,mBAAmB,EAAE,CAAC;IACtB,IAAI,mBAAmB,KAAK,CAAC,EAAE,CAAC;QAC/B,kBAAkB,EAAE,CAAC,CAAC,eAAe;QACrC,gBAAgB,GAAG,WAAW,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC;IAC5D,CAAC;AACF,CAAC;AAED,SAAS,eAAe;IACvB,mBAAmB,EAAE,CAAC;IACtB,IAAI,mBAAmB,IAAI,CAAC,EAAE,CAAC;QAC9B,mBAAmB,GAAG,CAAC,CAAC;QACxB,IAAI,gBAAgB,EAAE,CAAC;YACtB,aAAa,CAAC,gBAAgB,CAAC,CAAC;YAChC,gBAAgB,GAAG,IAAI,CAAC;QACzB,CAAC;IACF,CAAC;AACF,CAAC;AAED,+EAA+E;AAC/E,6BAA6B;AAC7B,+EAA+E;AAE/E,MAAM,OAAO,iBAAiB;IACrB,OAAO,GAAG,IAAI,GAAG,EAAY,CAAC;IAC9B,WAAW,GAAwB,IAAI,CAAC;IACxC,mBAAmB,GAA0C,IAAI,CAAC;IAClE,YAAY,GAA0C,IAAI,CAAC;IAC3D,gBAAgB,GAA0C,IAAI,CAAC;IAC/D,QAAQ,GAAG,EAAE,CAAC;IACd,aAAa,GAAG,EAAE,CAAC;IACnB,MAAM,CAAqB;IAC3B,cAAc,GAAG,CAAC,CAAC;IACnB,UAAU,GAAG,KAAK,CAAC;IACnB,aAAa,GAAG,KAAK,CAAC;IAE9B,YAAY,MAAiB;QAC5B,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,MAAM,EAAE,CAAC;IAChD,CAAC;IAED,wBAAwB;IACxB,QAAQ;QACP,OAAO;YACN,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI;YAC1B,cAAc,EAAE,IAAI,CAAC,cAAc;SACnC,CAAC;IACH,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,MAAgB;QACzB,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAAE,CAAC;YACzD,GAAG,CACF;gBACC,KAAK,EAAE,MAAM;gBACb,SAAS,EAAE,UAAU;gBACrB,OAAO,EAAE,2CAA2C;gBACpD,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAAE;aACzE,EACD,IAAI,CAAC,MAAM,CACX,CAAC;YACF,OAAO,KAAK,CAAC;QACd,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACzB,GAAG,CACF;YACC,KAAK,EAAE,OAAO;YACd,SAAS,EAAE,UAAU;YACrB,OAAO,EAAE,kBAAkB;YAC3B,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE;SAClC,EACD,IAAI,CAAC,MAAM,CACX,CAAC;QAEF,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YAClD,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;YAClE,IAAI,CAAC,WAAW,GAAG,cAAc,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC,CAAC;YAC9E,mEAAmE;YACnE,2DAA2D;YAC3D,wEAAwE;YACxE,IAAI,CAAC,mBAAmB,GAAG,WAAW,CAAC,GAAG,EAAE;gBAC3C,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC5B,CAAC,EAAE,GAAG,CAAC,CAAC;YACR,kDAAkD;YAClD,IAAI,CAAC;gBAAC,oBAAoB,EAAE,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;YAC3D,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC,GAAG,EAAE;gBACpC,IAAI,CAAC;oBAAC,oBAAoB,EAAE,CAAC;gBAAC,CAAC;gBAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;YAC5D,CAAC,EAAE,MAAM,CAAC,CAAC;YACX,8DAA8D;YAC9D,gBAAgB,EAAE,CAAC;YACnB,IAAI,CAAC,gBAAgB,GAAG,WAAW,CAAC,GAAG,EAAE;gBACxC,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC7B,CAAC,EAAE,MAAM,CAAC,CAAC;QACZ,CAAC;aAAM,CAAC;YACP,OAAO,CAAC,GAAG,CAAC,mCAAmC,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC5G,CAAC;QACD,wFAAwF;QACxF,IAAI,CAAC,0BAA0B,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;YACzD,IAAI,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC;gBACrB,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;gBAC/B,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,wBAAwB,EAAE,CAAC,CAAC;YAC5D,CAAC;QACF,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACb,CAAC;IAED,YAAY,CAAC,MAAgB;QAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACxC,IAAI,GAAG,EAAE,CAAC;YACT,GAAG,CACF;gBACC,KAAK,EAAE,OAAO;gBACd,SAAS,EAAE,UAAU;gBACrB,OAAO,EAAE,qBAAqB;gBAC9B,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE;aAClC,EACD,IAAI,CAAC,MAAM,CACX,CAAC;QACH,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACjD,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;YACxB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;YACnB,6BAA6B;YAC7B,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;gBAC9B,aAAa,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;gBACxC,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;YACjC,CAAC;YACD,qBAAqB;YACrB,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBACvB,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBACjC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;YAC1B,CAAC;YACD,wCAAwC;YACxC,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBAC3B,aAAa,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;gBACrC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;YAC9B,CAAC;YACD,eAAe,EAAE,CAAC;QACnB,CAAC;IACF,CAAC;IAEO,KAAK,CAAC,0BAA0B,CAAC,IAA8B;QACtE,MAAM,QAAQ,GAAG,MAAM,wBAAwB,EAAE,CAAC;QAClD,oEAAoE;QACpE,oEAAoE;QACpE,sDAAsD;QACtD,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAiB,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAC/E,OAAO;YACN,IAAI;YACJ,QAAQ;YACR,KAAK,EAAE,QAAQ,CAAC,MAAM;YACtB,QAAQ,EAAE,gBAAgB,EAAE;YAC5B,QAAQ,EAAE,WAAW,EAAE;YACvB,KAAK,EAAE,YAAY,CAClB,IAAI,GAAG,CACN,QAAQ;iBACN,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,aAAa,IAAI,CAAC,CAAC,QAAQ,CAAC;iBAC5D,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,aAAa,EAAE,CAAC,CAChD,CACD;YACD,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;SACrB,CAAC;IACH,CAAC;IAEO,wBAAwB;QAC/B,OAAO,EAAE,IAAI,EAAE,aAAsB,EAAE,GAAG,iBAAiB,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;IACtF,CAAC;IAED;;;;OAIG;IACH,YAAY;QACX,IAAI,CAAC,mBAAmB,EAAE,CAAC;IAC5B,CAAC;IAEO,mBAAmB;QAC1B,oEAAoE;QACpE,0EAA0E;QAC1E,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;YAC1B,OAAO;QACR,CAAC;QACD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QAEvB,IAAI,CAAC,0BAA0B,CAAC,UAAU,CAAC;aACzC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;YACjB,sFAAsF;YAEtF,4EAA4E;YAC5E,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;YAC/D,IAAI,IAAI,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAC5B,OAAO;YACR,CAAC;YACD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;YACrB,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;YAErC,MAAM,KAAK,GAAe,EAAE,CAAC;YAC7B,KAAK,MAAM,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBACxC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC;oBAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACnE,CAAC;YACD,KAAK,MAAM,MAAM,IAAI,KAAK,EAAE,CAAC;gBAC5B,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAC5B,IAAI,CAAC,cAAc,EAAE,CAAC;gBACtB,GAAG,CACF;oBACC,KAAK,EAAE,MAAM;oBACb,SAAS,EAAE,UAAU;oBACrB,OAAO,EAAE,qBAAqB;oBAC9B,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE;iBAClC,EACD,IAAI,CAAC,MAAM,CACX,CAAC;YACH,CAAC;QACF,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACd,GAAG,CACF;gBACC,KAAK,EAAE,OAAO;gBACd,SAAS,EAAE,UAAU;gBACrB,OAAO,EAAE,gBAAgB;gBACzB,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE;aAC5B,EACD,IAAI,CAAC,MAAM,CACX,CAAC;QACH,CAAC,CAAC;aACD,OAAO,CAAC,GAAG,EAAE;YACb,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;YACxB,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBACxB,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;gBAC3B,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC5B,CAAC;QACF,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,oBAAoB;QAC3B,MAAM,OAAO,GAAG,IAAI,CAAC,wBAAwB,EAAE,CAAC;QAChD,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACrC,IAAI,IAAI,KAAK,IAAI,CAAC,aAAa;YAAE,OAAO;QACxC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAE1B,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACrC,MAAM,KAAK,GAAe,EAAE,CAAC;QAC7B,KAAK,MAAM,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACxC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC;gBAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnE,CAAC;QACD,KAAK,MAAM,MAAM,IAAI,KAAK,EAAE,CAAC;YAC5B,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAC5B,IAAI,CAAC,cAAc,EAAE,CAAC;QACvB,CAAC;IACF,CAAC;IAEO,YAAY,CACnB,MAAgB,EAChB,OAAoD,EACpD,IAAa;QAEb,wEAAwE;QACxE,oDAAoD;QACpD,OAAO,CACN,QAAQ,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE;YACtC,SAAS,EAAE,UAAU;YACrB,WAAW,EAAE,EAAE,GAAG,IAAI;YACtB,IAAI;SACJ,CAAC,KAAK,MAAM,CACb,CAAC;IACH,CAAC;CACD;AAQD;;;;;GAKG;AACH,SAAS,QAAQ,CAChB,MAAgB,EAChB,OAAgB,EAChB,MAA0B,EAC1B,IAA+D;IAE/D,IAAI,CAAC;QACJ,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;YAAE,OAAO,QAAQ,CAAC;QACtC,IAAI,MAAM,CAAC,iBAAiB,EAAE,CAAC;YAC9B,MAAM,QAAQ,GAAG,MAAM,CAAC,iBAAiB,EAAE,CAAC;YAC5C,IAAI,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjC,GAAG,CACF;oBACC,KAAK,EAAE,MAAM;oBACb,SAAS,EAAE,IAAI,CAAC,SAAS;oBACzB,OAAO,EAAE,8BAA8B;oBACvC,IAAI,EAAE,EAAE,QAAQ,EAAE;iBAClB,EACD,MAAM,CACN,CAAC;gBACF,OAAO,cAAc,CAAC;YACvB,CAAC;QACF,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;QAClD,OAAO,MAAM,CAAC;IACf,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACd,GAAG,CACF;YACC,KAAK,EAAE,OAAO;YACd,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,OAAO,EAAE,0BAA0B;YACnC,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE;SAC5B,EACD,MAAM,CACN,CAAC;QACF,OAAO,QAAQ,CAAC;IACjB,CAAC;AACF,CAAC;AAcD,MAAM,OAAO,iBAAiB;IACrB,OAAO,GAAG,IAAI,GAAG,EAAyB,CAAC;IAC3C,UAAU,GAAG,IAAI,GAAG,EAA0C,CAAC;IAC/D,MAAM,GAAG,IAAI,GAAG,EAAuB,CAAC;IACxC,MAAM,CAAqB;IAC3B,YAAY,GAAG,CAAC,CAAC;IACjB,cAAc,GAAG,CAAC,CAAC;IAE3B,YAAY,MAAiB;QAC5B,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,MAAM,EAAE,CAAC;IAChD,CAAC;IAED,wBAAwB;IACxB,QAAQ;QACP,OAAO;YACN,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI;YAC1B,cAAc,EAAE,IAAI,CAAC,cAAc;SACnC,CAAC;IACH,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,MAAgB,EAAE,MAAc;QACzC,oBAAoB;QACpB,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,MAAM,CAAC,uBAAuB,EAAE,CAAC;YAC9D,GAAG,CACF;gBACC,KAAK,EAAE,MAAM;gBACb,SAAS,EAAE,UAAU;gBACrB,OAAO,EAAE,2BAA2B;gBACpC,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,YAAY,EAAE,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,uBAAuB,EAAE;aAC9E,EACD,IAAI,CAAC,MAAM,CACX,CAAC;YACF,OAAO,KAAK,CAAC;QACd,CAAC;QAED,yBAAyB;QACzB,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC/C,IAAI,aAAa,IAAI,aAAa,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,2BAA2B,EAAE,CAAC;YACpF,GAAG,CACF;gBACC,KAAK,EAAE,MAAM;gBACb,SAAS,EAAE,UAAU;gBACrB,OAAO,EAAE,gCAAgC;gBACzC,IAAI,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,2BAA2B,EAAE;aAC3F,EACD,IAAI,CAAC,MAAM,CACX,CAAC;YACF,OAAO,KAAK,CAAC;QACd,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YAC/B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;QACrC,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACtC,IAAI,CAAC,YAAY,EAAE,CAAC;QAEpB,GAAG,CACF;YACC,KAAK,EAAE,OAAO;YACd,SAAS,EAAE,UAAU;YACrB,OAAO,EAAE,kBAAkB;YAC3B,IAAI,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAE,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE;SACzF,EACD,IAAI,CAAC,MAAM,CACX,CAAC;QAEF,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAE,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YAC1C,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAC3B,CAAC;QAED,wEAAwE;QACxE,MAAM,IAAI,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;QAClC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,IAAI,IAAI,EAAE,CAAC;YACV,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE;gBACvB,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,GAAG,EAAE,IAAI,CAAC,GAAG;gBACb,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;aACjC,CAAC,CAAC;YACH,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE;gBACzB,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,IAAI,CAAC,MAAM;gBAClB,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,GAAG,EAAE,IAAI,CAAC,GAAG;gBACb,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,SAAS,EAAE,GAAG;aACd,CAAC,CAAC;YACH,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,WAAW,GAAG,CAAC,EAAE,CAAC;gBACvC,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,qBAAqB,CAAC,CAAC;YAC/E,CAAC;QACF,CAAC;aAAM,CAAC;YACP,qEAAqE;YACrE,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE;gBACzB,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,EAAE;gBACT,WAAW,EAAE,CAAC;gBACd,GAAG,EAAE,KAAK;gBACV,IAAI,EAAE,CAAC;gBACP,IAAI,EAAE,CAAC;gBACP,SAAS,EAAE,GAAG;aACd,CAAC,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;;OAGG;IACH,cAAc,CAAC,MAAgB,EAAE,MAAc,EAAE,MAAc,EAAE,KAAa;QAC7E,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACtC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,GAAG;YAAE,OAAO;QAChC,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,mBAAmB,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACxE,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC;QACzE,IAAI,GAAG,KAAK,CAAC;YAAE,OAAO;QACtB,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;IAC9C,CAAC;IAEO,eAAe,CAAC,MAAgB,EAAE,MAAc,EAAE,GAAW,EAAE,KAAa;QACnF,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACtC,MAAM,KAAK,GAAG,KAAK,EAAE,WAAW,IAAI,GAAG,CAAC;QACxC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,KAAK,CAAC,CAAC;QACvC,MAAM,GAAG,GAAG,iBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;QACzD,IAAI,CAAC,GAAG;YAAE,OAAO;QACjB,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE;YACzB,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,GAAG,CAAC,KAAK;YAChB,KAAK,EAAE,GAAG,CAAC,KAAK;YAChB,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;SACrB,CAAC,CAAC;IACJ,CAAC;IAED,YAAY,CAAC,MAAgB,EAAE,MAAe;QAC7C,IAAI,MAAM,EAAE,CAAC;YACZ,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAC/C,IAAI,aAAa,IAAI,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;gBACnD,IAAI,CAAC,YAAY,EAAE,CAAC;gBACpB,GAAG,CACF;oBACC,KAAK,EAAE,OAAO;oBACd,SAAS,EAAE,UAAU;oBACrB,OAAO,EAAE,qBAAqB;oBAC9B,IAAI,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE;iBAC7E,EACD,IAAI,CAAC,MAAM,CACX,CAAC;gBAEF,IAAI,aAAa,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;oBAC9B,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;oBACzB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;oBAC5B,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAC5B,CAAC;YACF,CAAC;YACD,OAAO;QACR,CAAC;QAED,oCAAoC;QACpC,KAAK,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACzC,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC5B,IAAI,CAAC,YAAY,EAAE,CAAC;gBACpB,IAAI,OAAO,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;oBACxB,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;oBACpB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;oBACvB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBACvB,CAAC;gBACD,MAAM;YACP,CAAC;QACF,CAAC;IACF,CAAC;IAEO,YAAY,CAAC,MAAc;QAClC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC;YAAE,OAAO;QACxC,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,CAAC;QACpE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACpC,CAAC;IAEO,WAAW,CAAC,MAAc;QACjC,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC1C,IAAI,KAAK,EAAE,CAAC;YACX,aAAa,CAAC,KAAK,CAAC,CAAC;YACrB,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAChC,CAAC;IACF,CAAC;IAEO,gBAAgB,CAAC,MAAc;QACtC,MAAM,IAAI,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;QAClC,IAAI,CAAC,IAAI;YAAE,OAAO,CAAC,oFAAoF;QACvG,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,QAAQ,GAAsB,EAAE,CAAC;QACvC,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEzC,IAAI,CAAC,IAAI,EAAE,CAAC;YACX,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;YACvH,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;YACjI,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;QACvJ,CAAC;aAAM,CAAC;YACP,MAAM,QAAQ,GACb,IAAI,CAAC,GAAG,KAAK,IAAI,CAAC,GAAG;gBACrB,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI;gBACvB,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI;gBACvB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;YACrC,IAAI,QAAQ,EAAE,CAAC;gBACd,8EAA8E;gBAC9E,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;YAClI,CAAC;iBAAM,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;gBAC7D,MAAM,CAAC,GAAG,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;gBAC9C,IAAI,KAAK,GAAoB,IAAI,CAAC;gBAClC,IAAI,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC;gBAC7B,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;oBAC3B,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBAC/C,CAAC;qBAAM,CAAC;oBACP,gFAAgF;oBAChF,MAAM,GAAG,GAAG,iBAAiB,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;oBAC5F,IAAI,GAAG,EAAE,CAAC;wBACT,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;wBAClB,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;oBACnB,CAAC;gBACF,CAAC;gBACD,IAAI,KAAK,EAAE,CAAC;oBACX,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;gBACjG,CAAC;qBAAM,CAAC;oBACP,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;gBAClI,CAAC;YACF,CAAC;YACD,IAAI,SAAS,KAAK,IAAI,CAAC,SAAS,IAAI,QAAQ,EAAE,CAAC;gBAC9C,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;YACvJ,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;QACxH,CAAC;QAED,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAClC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACzC,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAChC,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;YACrC,MAAM,KAAK,GAAe,EAAE,CAAC;YAC7B,KAAK,MAAM,MAAM,IAAI,CAAC,GAAG,OAAO,CAAC,EAAE,CAAC;gBACnC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC;oBAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACnE,CAAC;YACD,KAAK,MAAM,MAAM,IAAI,KAAK,EAAE,CAAC;gBAC5B,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBACvB,IAAI,CAAC,YAAY,EAAE,CAAC;gBACpB,IAAI,CAAC,cAAc,EAAE,CAAC;gBACtB,GAAG,CACF;oBACC,KAAK,EAAE,MAAM;oBACb,SAAS,EAAE,UAAU;oBACrB,OAAO,EAAE,qBAAqB;oBAC9B,IAAI,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE;iBAC1C,EACD,IAAI,CAAC,MAAM,CACX,CAAC;YACH,CAAC;YACD,IAAI,OAAO,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;gBACxB,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;gBACzB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAC5B,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAC3B,OAAO;YACR,CAAC;QACF,CAAC;IACF,CAAC;IAEO,YAAY,CAAC,MAAgB,EAAE,OAAwB,EAAE,IAAa;QAC7E,sEAAsE;QACtE,qEAAqE;QACrE,OAAO,CACN,QAAQ,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE;YACtC,SAAS,EAAE,UAAU;YACrB,WAAW,EAAE,EAAE,GAAG,IAAI;YACtB,IAAI;SACJ,CAAC,KAAK,MAAM,CACb,CAAC;IACH,CAAC;CACD;AAgGD,MAAM,kBAAkB,GAAG,GAAG,CAAC;AAC/B,2EAA2E;AAC3E,MAAM,uBAAuB,GAAG,CAAC,CAAC;AAClC;;;;;;;GAOG;AACH,MAAM,aAAa,GAAG,CAAC,CAAC;AACxB,MAAM,iBAAiB,GAAG,EAAE,CAAC;AAC7B;;;;;GAKG;AACH,MAAM,gBAAgB,GAAG,GAAG,CAAC;AAC7B;;;;;GAKG;AACH,MAAM,eAAe,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AACvC,MAAM,QAAQ,GAAG,EAAE,GAAG,IAAI,CAAC;AAC3B,+EAA+E;AAC/E,MAAM,kBAAkB,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;AAC3C,4EAA4E;AAC5E,MAAM,mBAAmB,GAAG,GAAG,CAAC;AAEhC,+GAA+G;AAC/G,SAAS,MAAM,CAAC,OAA0B;IACzC,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC;IAC5B,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,GAAG,gBAAgB,CAAC,CAAC;IAC9D,OAAO;QACN,OAAO,EAAE,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG;QACrD,UAAU;QACV,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,KAAK,EAAE,OAAO,CAAC,KAAK;KACpB,CAAC;AACH,CAAC;AAED,mFAAmF;AACnF,SAAS,YAAY,CACpB,OAA0B,EAC1B,GAAqB,EACrB,SAAiB;IAEjB,MAAM,OAAO,GAAsB,EAAE,CAAC;IACtC,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,KAAK,MAAM,EAAE,IAAI,IAAI,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;QAC/B,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAClC,IAAI,KAAK,KAAK,SAAS;YAAE,SAAS;QAClC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;QACrC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;AACzD,CAAC;AAED,MAAM,OAAO,mBAAmB;IACvB,OAAO,GAAG,IAAI,GAAG,EAAyB,CAAC;IAC3C,QAAQ,GAAG,IAAI,GAAG,EAAkC,CAAC;IAC7D,kEAAkE;IAC1D,OAAO,GAAG,IAAI,GAAG,EAAyB,CAAC;IAC3C,MAAM,CAAqB;IAC3B,OAAO,GAAwB,IAAI,CAAC;IAE5C,YAAY,MAAiB;QAC5B,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,MAAM,EAAE,CAAC;IAChD,CAAC;IAED;;;OAGG;IACH,SAAS,CAAC,MAAgB,EAAE,SAAiB,EAAE,OAAgB;QAC9D,qEAAqE;QACrE,mEAAmE;QACnE,MAAM,OAAO,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,CAC9D,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,CAC/C,CAAC,MAAM,CAAC;QACT,IAAI,OAAO,IAAI,IAAI,CAAC,MAAM,CAAC,2BAA2B,EAAE,CAAC;YACxD,GAAG,CACF;gBACC,KAAK,EAAE,MAAM;gBACb,SAAS,EAAE,YAAY;gBACvB,OAAO,EAAE,iCAAiC;gBAC1C,IAAI,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE;aACrC,EACD,IAAI,CAAC,MAAM,CACX,CAAC;YACF,OAAO,KAAK,CAAC;QACd,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC;YAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;QACzE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACzC,IAAI,OAAO;YAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QAEjE,IAAI,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACzC,IAAI,CAAC,KAAK,EAAE,CAAC;YACZ,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;YACrC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QACrC,CAAC;aAAM,IAAI,KAAK,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;YACrC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAC7B,CAAC;QACD,MAAM,IAAI,GAAG,GAAG,EAAE;YACjB,IAAI,CAAC,OAAO;gBAAE,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YACxE,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;QACzD,CAAC,CAAC;QACF,2EAA2E;QAC3E,IAAI,KAAK,CAAC,SAAS;YAAE,KAAK,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;;YAChD,IAAI,EAAE,CAAC;QACZ,OAAO,IAAI,CAAC;IACb,CAAC;IAED,mFAAmF;IAC3E,IAAI,CAAC,SAAiB,EAAE,KAA6B;QAC5D,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC;QACvB,KAAK,CAAC,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,kBAAkB,CAAC,CAAC;QAC1E,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,SAAS;YAAE,OAAO;QAC7C,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACnC,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YAC/B,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YAC5B,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QAC1C,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAC7B,CAAC;QACD,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC1B,iEAAiE;QACjE,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAED,YAAY,CAAC,MAAgB,EAAE,SAAkB;QAChD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC5B,MAAM,IAAI,GAAG,CAAC,EAAU,EAAE,OAAsB,EAAE,EAAE;YACnD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;gBAAE,OAAO,KAAK,CAAC;YAC1C,IAAI,OAAO,CAAC,IAAI,KAAK,CAAC;gBAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACtC,OAAO,IAAI,CAAC;QACb,CAAC,CAAC;QACF,IAAI,SAAS,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAC5C,IAAI,OAAO;gBAAE,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YACtC,OAAO;QACR,CAAC;QACD,KAAK,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAC1C,IAAI,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC;gBAAE,MAAM;QAC9B,CAAC;IACF,CAAC;IAED,0FAA0F;IAClF,WAAW,CAAC,SAAiB;QACpC,OAAO,IAAI,iBAAiB,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,UAAU,CAAC,SAAS,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;IACpF,CAAC;IAEO,YAAY,CAAC,SAAiB;QACrC,MAAM,KAAK,GAA2B;YACrC,SAAS;YACT,MAAM,EAAE,IAAI;YACZ,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC;YACpC,SAAS,EAAE,KAAK;YAChB,SAAS,EAAE,aAAa;YACxB,cAAc,EAAE,aAAa;YAC7B,SAAS,EAAE,IAAI,GAAG,EAAE;YACpB,UAAU,EAAE,CAAC;YACb,QAAQ,EAAE,IAAI,GAAG,EAAE;YACnB,SAAS,EAAE,IAAI;YACf,SAAS,EAAE,IAAI;YACf,WAAW,EAAE,EAAE;YACf,SAAS,EAAE,IAAI;YACf,KAAK,EAAE,IAAI,GAAG,EAAE;YAChB,KAAK,EAAE,WAAW,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,kBAAkB,CAAC;SAClE,CAAC;QACF,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACpC,IAAI,IAAI;YAAE,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACnC,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,OAAO,KAAK,CAAC;IACd,CAAC;IAED;;;;;;;;OAQG;IACH,eAAe,CAAC,OAAyB;QACxC,KAAK,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;YAC1B,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACpC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM;gBAAE,SAAS;YACrC,MAAM,QAAQ,GAAG,UAAU,CAAC,EAAE,CAAC,EAAE,eAAe,CAAC;YACjD,IAAI,QAAQ,IAAI,UAAU,CAAC,QAAQ,CAAC;gBAAE,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC;QAC3D,CAAC;IACF,CAAC;IAED;;;;;;OAMG;IACK,MAAM,CAAC,KAA6B,EAAE,IAAY;QACzD,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC;QACrC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;QACtB,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;QAC7E,KAAK,CAAC,SAAS,GAAG,CAAC,KAAK,IAAI,EAAE;YAC7B,SAAS,CAAC;gBACT,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;gBAC/C,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;gBAC5B,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI;oBAAE,MAAM;gBACrD,MAAM,QAAQ,EAAE,CAAC;YAClB,CAAC;YACD,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;YAC9B,KAAK,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;gBAC9C,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;gBACvC,MAAM,QAAQ,EAAE,CAAC;YAClB,CAAC;YACD,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;QACnC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE;YACjB,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM;gBAAE,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC;QACrD,CAAC,CAAC,CAAC;QACH,OAAO,KAAK,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,0EAA0E;IAClE,MAAM,CAAC,SAAiB;QAC/B,MAAM,OAAO,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC;QACtC,OAAO,OAAO,CAAC,CAAC,CAAC,qBAAqB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACnE,CAAC;IAED;;;OAGG;IACK,aAAa,CAAC,KAA6B;QAClD,IAAI,CAAC,KAAK,CAAC,MAAM;YAAE,OAAO,EAAE,CAAC;QAE7B,IAAI,KAAK,CAAC,UAAU,IAAI,CAAC,EAAE,CAAC;YAC3B,KAAK,CAAC,UAAU,GAAG,uBAAuB,CAAC;YAC3C,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAC/B,CAAC;aAAM,CAAC;YACP,KAAK,CAAC,UAAU,EAAE,CAAC;QACpB,CAAC;QAED,MAAM,OAAO,GAAsB,EAAE,CAAC;QACtC,KAAK,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;YAC9C,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;YACvD,IAAI,OAAO;gBAAE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACpC,CAAC;QACD,OAAO,OAAO,CAAC;IAChB,CAAC;IAED,mEAAmE;IAC3D,iBAAiB,CAAC,KAA6B;QACtD,IAAI,CAAC,KAAK,CAAC,MAAM;YAAE,OAAO;QAC1B,KAAK,MAAM,IAAI,IAAI,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;YACtF,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE;gBACjC,MAAM,EAAE,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC;gBAClC,OAAO,EAAE,IAAI,iBAAiB,CAAC,IAAI,CAAC;gBACpC,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,EAAE;gBACZ,OAAO,EAAE,IAAI,GAAG,EAAE;gBAClB,KAAK,EAAE,KAAK;aACZ,CAAC,CAAC;QACJ,CAAC;IACF,CAAC;IAED;;;OAGG;IACK,YAAY,CACnB,KAA6B,EAC7B,OAAe,EACf,GAAkB;QAElB,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACjC,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YAC/B,GAAG,CAAC,OAAO,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC;YAC1C,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACpB,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,CAAC;aAAM,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YACtC,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;gBACjC,KAAK,MAAM,EAAE,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;oBAAE,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC9D,CAAC;QACF,CAAC;QACD,MAAM,OAAO,GAAG,eAAe,CAC9B,OAAO,EACP,GAAG,EACH,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,EACzC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAC3B,CAAC;QACF,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC;QACtB,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACxC,IAAI,OAAO,KAAK,GAAG,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAC;QAC1C,GAAG,CAAC,QAAQ,GAAG,OAAO,CAAC;QACvB,OAAO,OAAO,CAAC;IAChB,CAAC;IAED;;;OAGG;IACH,eAAe,CAAC,MAAgB,EAAE,SAAiB,EAAE,OAAe;QACnE,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC3C,MAAM,GAAG,GAAG,KAAK,EAAE,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC1C,IAAI,CAAC,KAAK,IAAI,CAAC,GAAG;YAAE,OAAO;QAC3B,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC5B,MAAM,OAAO,GAAG,eAAe,CAAC,OAAO,EAAE,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,CAAC;QAC/F,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC;QACtB,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACvC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IAC/F,CAAC;IAED;;;OAGG;IACH,cAAc,CAAC,MAAgB,EAAE,SAAiB,EAAE,MAAc,EAAE,KAAa;QAChF,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC3C,IAAI,CAAC,KAAK;YAAE,OAAO;QACnB,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACxC,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC;QACtF,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;QAC9E,IAAI,GAAG,KAAK,CAAC;YAAE,OAAO;QACtB,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,mBAAmB,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACxE,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC;QACnC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE;YACzB,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC;YAC1C,UAAU,EAAE,KAAK;YACjB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;SACrB,CAAC,CAAC;IACJ,CAAC;IAED;;;OAGG;IACK,IAAI,CAAC,SAAiB;QAC7B,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC3C,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC/B,IAAI,CAAC,KAAK;YAAE,OAAO;QACnB,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC3B,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;IAEO,WAAW,CAAC,SAAiB;QACpC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC3C,IAAI,KAAK;YAAE,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACtC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAChC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAChC,CAAC;IAEO,OAAO,GAA0C,IAAI,CAAC;IAEtD,aAAa;QACpB,IAAI,IAAI,CAAC,OAAO;YAAE,OAAO;QACzB,IAAI,CAAC,OAAO,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC;QACpF,IAAI,CAAC,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE;YAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACvB,KAAK,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACzC,IAAI,KAAK,CAAC,SAAS,KAAK,IAAI,IAAI,GAAG,GAAG,KAAK,CAAC,SAAS,GAAG,eAAe,EAAE,CAAC;oBACzE,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;gBACtB,CAAC;YACF,CAAC;YACD,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBAC9C,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAC5B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;gBACpB,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;gBACjB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YACrB,CAAC;QACF,CAAC,EAAE,QAAQ,CAAC,CAAC;IACd,CAAC;IAED,qEAAqE;IAC7D,OAAO,CACd,KAA6B,EAC7B,MAAuC;QAEvC,QAAQ,MAAM,CAAC,MAAM,EAAE,CAAC;YACvB,KAAK,OAAO,CAAC,CAAC,CAAC;gBACd,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC;gBACvB,MAAM,OAAO,GAAa,EAAE,CAAC;gBAC7B,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK;oBAAE,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC3E,OAAO,OAAO,CAAC;YAChB,CAAC;YACD,KAAK,OAAO;gBACX,0DAA0D;gBAC1D,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;gBAClD,OAAO,EAAE,CAAC;YACX;gBACC,OAAO,EAAE,CAAC;QACZ,CAAC;IACF,CAAC;IAEO,IAAI,CAAC,SAAiB;QAC7B,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC5C,IAAI,CAAC,KAAK,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,KAAK,CAAC;YAAE,OAAO;QAErD,IAAI,KAAK,CAAC,SAAS;YAAE,OAAO;QAC5B,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YACnB,IAAI,EAAE,KAAK,CAAC,SAAS,GAAG,CAAC;gBAAE,OAAO;YAClC,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACpC,IAAI,CAAC,IAAI,EAAE,CAAC;gBACX,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,cAAc,GAAG,CAAC,EAAE,iBAAiB,CAAC,CAAC;gBAC7E,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,cAAc,CAAC;gBACvC,OAAO;YACR,CAAC;YACD,KAAK,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;gBACvC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,KAAK;oBAAE,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;YAC3E,CAAC,CAAC,CAAC;YACH,OAAO;QACR,CAAC;QAED,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAEpC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACnC,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YAC/B,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YAC5B,gEAAgE;YAChE,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;YACzC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;YAC9B,OAAO;QACR,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAC/C,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,YAAY,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QAChF,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC5C,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACpF,CAAC;QACD,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;QAEhD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;QACtC,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACxC,IAAI,OAAO,IAAI,OAAO,KAAK,KAAK,CAAC,WAAW,EAAE,CAAC;YAC9C,KAAK,CAAC,WAAW,GAAG,OAAO,CAAC;YAC5B,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAChF,CAAC;QACD,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAClC,IAAI,KAAK,IAAI,KAAK,KAAK,KAAK,CAAC,SAAS,EAAE,CAAC;YACxC,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC;YACxB,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAC5E,CAAC;IACF,CAAC;IAED,iFAAiF;IACzE,MAAM,CAAC,SAAiB,EAAE,KAA6B;QAC9D,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC1D,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;QAChD,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,CAAC;YAClD,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;QACzD,CAAC;IACF,CAAC;IAED,8DAA8D;IACtD,WAAW,CAAC,SAAiB;QACpC,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QACvC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACpF,CAAC;IAED;;;;;OAKG;IACK,aAAa,CACpB,SAAiB,EACjB,KAA6B,EAC7B,QAA2B;QAE3B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC5C,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,CAAC;YAClD,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAE,CAAC;YACzC,MAAM,GAAG,GAAG,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAChD,uEAAuE;YACvE,IAAI,CAAC,GAAG,IAAI,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC;gBAAE,SAAS;YAC9C,MAAM,QAAQ,GAA0B,EAAE,CAAC;YAC3C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACvB,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;gBAChC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;YAC7C,CAAC;iBAAM,CAAC;gBACP,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;oBAC1B,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;oBAC3D,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC;oBACpC,IAAI,OAAO;wBAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;gBAC1E,CAAC;gBACD,oFAAoF;gBACpF,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;oBACxD,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;oBAClE,MAAM,OAAO,GAAG,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;oBACrE,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;gBAC5E,CAAC;YACF,CAAC;YACD,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;gBAChC,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBAClD,IAAI,MAAM,KAAK,MAAM;oBAAE,SAAS;gBAChC,IAAI,MAAM,KAAK,cAAc,EAAE,CAAC;oBAC/B,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBACzB,CAAC;qBAAM,CAAC;oBACP,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;oBACxB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAC7B,CAAC;gBACD,MAAM;YACP,CAAC;QACF,CAAC;QACD,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;QAClC,IAAI,OAAO,EAAE,IAAI,KAAK,CAAC;YAAE,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC/C,CAAC;IAED,0EAA0E;IAClE,qBAAqB,CAAC,KAA6B;QAC1D,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC;YAC5C,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACpB,GAAG,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,CAAC;IACF,CAAC;IAED;;;;OAIG;IACK,YAAY,CAAC,SAAiB,EAAE,KAA6B;QACpE,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC;YAAE,OAAO;QACnC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACrC,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACrC,KAAK,MAAM,MAAM,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;YACvC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC3B,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAC3B,SAAS;YACV,CAAC;YACD,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC;gBACtC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;gBACzD,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;YAC5C,IAAI,MAAM,KAAK,cAAc;gBAAE,SAAS,CAAC,gCAAgC;YACzE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAC3B,IAAI,MAAM,KAAK,QAAQ;gBAAE,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACjD,CAAC;IACF,CAAC;IAED;;;;OAIG;IACK,QAAQ,CAAC,KAA6B,EAAE,MAAiB;QAChE,MAAM,MAAM,GAAG,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAClD,IAAI,MAAM;YAAE,OAAO,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACrD,OAAO;YACN,IAAI,EAAE,UAAU;YAChB,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC;YACxB,SAAS,EAAE,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,GAAG,CAClC,CAAC,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,CACb,GAAG,CAAC,OAAO;gBACX,eAAe,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CACvF;YACD,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;SACrB,CAAC;IACH,CAAC;IAED;;;;OAIG;IACK,aAAa,CAAC,KAA6B,EAAE,MAAmB;QACvE,MAAM,GAAG,GAAG,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAChD,MAAM,CAAC,KAAK,GAAG,GAAG,KAAK,SAAS,CAAC;QACjC,IAAI,CAAC,GAAG,EAAE,CAAC;YACV,OAAO;gBACN,IAAI,EAAE,UAAU;gBAChB,OAAO,EAAE,EAAE;gBACX,UAAU,EAAE,CAAC;gBACb,SAAS,EAAE,EAAE;gBACb,OAAO,EAAE,IAAI;gBACb,KAAK,EAAE,IAAI;gBACX,SAAS,EAAE,KAAK;gBAChB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;aACrB,CAAC;QACH,CAAC;QACD,MAAM,OAAO,GAAG,eAAe,CAC9B,MAAM,CAAC,OAAO,EACd,GAAG,EACH,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,EAChD,IAAI,CACJ,CAAC;QACF,OAAO;YACN,IAAI,EAAE,UAAU;YAChB,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC;YACtB,SAAS,EAAE,CAAC,OAAO,CAAC;YACpB,SAAS,EAAE,IAAI;YACf,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;SACrB,CAAC;IACH,CAAC;IAED,4FAA4F;IACpF,SAAS,CAAC,SAAiB,EAAE,OAA4B;QAChE,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC5C,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACrC,KAAK,MAAM,MAAM,IAAI,CAAC,GAAG,OAAO,CAAC,EAAE,CAAC;YACnC,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC;gBAAE,SAAS;YACvC,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;YACxD,kEAAkE;YAClE,8DAA8D;YAC9D,yDAAyD;YACzD,IAAI,MAAM,KAAK,cAAc;gBAAE,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;iBACnD,IAAI,MAAM,KAAK,QAAQ;gBAAE,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACtD,CAAC;QACD,IAAI,OAAO,CAAC,IAAI,KAAK,CAAC;YAAE,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC9C,CAAC;IAEO,YAAY,CAAC,MAAgB,EAAE,OAA4B,EAAE,IAAa;QACjF,OAAO,QAAQ,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE;YAC7C,SAAS,EAAE,YAAY;YACvB,oEAAoE;YACpE,mEAAmE;YACnE,WAAW,EAAE,CAAC,GAAG,IAAI,GAAG,IAAI;YAC5B,IAAI;SACJ,CAAC,CAAC;IACJ,CAAC;CACD;AAeD,MAAM,UAAU,eAAe,CAAC,MAAc,EAAE,QAA4B;IAC3E,IAAI,MAAM,KAAK,MAAM;QAAE,OAAO,MAAM,CAAC;IACrC,IAAI,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC3B,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;QACpB,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACvB,OAAO,IAAI,CAAC;IACb,CAAC;IAED,IAAI,CAAC;QACJ,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAmE,CAAC;QACjG,QAAQ,GAAG,CAAC,IAAI,EAAE,CAAC;YAClB,KAAK,kBAAkB;gBACtB,IAAI,QAAQ,CAAC,eAAe,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;oBACjE,QAAQ,CAAC,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBACvC,CAAC;gBACD,MAAM;YACP,KAAK,QAAQ;gBACZ,IAAI,QAAQ,CAAC,MAAM,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBACrF,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;gBACrC,CAAC;gBACD,MAAM;YACP,KAAK,iBAAiB;gBACrB,IAAI,QAAQ,CAAC,cAAc,IAAI,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ,IAAI,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;oBAChG,QAAQ,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;gBAChD,CAAC;gBACD,MAAM;QACR,CAAC;IACF,CAAC;IAAC,MAAM,CAAC;QACR,iBAAiB;IAClB,CAAC;IAED,OAAO,IAAI,CAAC;AACb,CAAC;AAED,+EAA+E;AAC/E,UAAU;AACV,+EAA+E;AAE/E;;;GAGG;AACH,MAAM,CAAC,MAAM,cAAc,GAC1B,8GAA8G,CAAC;AAchH,MAAM,UAAU,WAAW,CAAC,QAAgB;IAC3C,IAAI,QAAQ,KAAK,sBAAsB,EAAE,CAAC;QACzC,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;IAC7B,CAAC;IAED,MAAM,YAAY,GAAG,QAAQ,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;IACzE,IAAI,YAAY,EAAE,CAAC;QAClB,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,kBAAkB,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACzE,CAAC;IAED,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,iEAAiE,CAAC,CAAC;IACrG,IAAI,UAAU,EAAE,CAAC;QAChB,OAAO;YACN,IAAI,EAAE,YAAY;YAClB,MAAM,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YACzC,KAAK,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;SACxC,CAAC;IACH,CAAC;IAED,MAAM,eAAe,GAAG,QAAQ,CAAC,KAAK,CAAC,gDAAgD,CAAC,CAAC;IACzF,IAAI,eAAe,EAAE,CAAC;QACrB,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,kBAAkB,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/E,CAAC;IAED,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;IACvE,IAAI,SAAS,EAAE,CAAC;QACf,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACvE,CAAC;IAED,OAAO,IAAI,CAAC;AACb,CAAC"}
|
|
1
|
+
{"version":3,"file":"ws-handlers.js","sourceRoot":"","sources":["../../src/server/ws-handlers.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,aAAa,EAAE,SAAS,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,SAAS,EAAgB,MAAM,gBAAgB,CAAC;AAE1J,OAAO,EAAE,iBAAiB,EAAwB,MAAM,yBAAyB,CAAC;AAClF,OAAO,EAAE,eAAe,EAAwB,MAAM,2BAA2B,CAAC;AAClF,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,qBAAqB,EAAqB,MAAM,yBAAyB,CAAC;AAC/G,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,YAAY,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,aAAa,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAExR,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAkCxF,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAE7E,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAmB1D,MAAM,cAAc,GAAuB;IAC1C,kBAAkB,EAAE,EAAE;IACtB,2BAA2B,EAAE,EAAE;IAC/B,uBAAuB,EAAE,GAAG;IAC5B,iBAAiB,EAAE,GAAG;IACtB,KAAK,EAAE,KAAK;CACZ,CAAC;AAeF,SAAS,GAAG,CAAC,KAAe,EAAE,MAA0B;IACvD,IAAI,KAAK,CAAC,KAAK,KAAK,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK;QAAE,OAAO;IAErD,MAAM,MAAM,GAAG,OAAO,KAAK,CAAC,SAAS,GAAG,CAAC;IACzC,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI;QACrB,CAAC,CAAC,GAAG,MAAM,IAAI,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;QAC5D,CAAC,CAAC,GAAG,MAAM,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;IAEhC,QAAQ,KAAK,CAAC,KAAK,EAAE,CAAC;QACrB,KAAK,OAAO;YACX,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACnB,MAAM;QACP,KAAK,MAAM;YACV,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAClB,MAAM;QACP,KAAK,MAAM;YACV,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAClB,MAAM;QACP,KAAK,OAAO;YACX,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACnB,MAAM;IACR,CAAC;AACF,CAAC;AAyED,MAAM,qBAAqB,GAAG,GAAG,CAAC;AAClC,MAAM,iBAAiB,GAAG,IAAI,CAAC;AAC/B,2CAA2C;AAC3C,MAAM,mBAAmB,GAAG,IAAI,CAAC;AAEjC,+EAA+E;AAC/E,kBAAkB;AAClB,+EAA+E;AAG/E,SAAS,uBAAuB,CAC/B,QAAa;IAEb,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAa,CAAC;IACtC,MAAM,QAAQ,GAAQ,EAAE,CAAC;IACzB,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAChC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;YAC1B,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACvB,SAAS;QACV,CAAC;QACD,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QACnD,IAAI,CAAC,QAAQ,IAAI,OAAO,CAAC,WAAW,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;YAC7D,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QAC5C,CAAC;IACF,CAAC;IACD,OAAO,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,EAAE,GAAG,QAAQ,CAAC,CAAC;AAC5C,CAAC;AAED,+EAA+E;AAC/E,MAAM,aAAa,GAAG,IAAI,GAAG,EAAkB,CAAC;AAEhD;;;;GAIG;AACH;;;;;;GAMG;AACH,MAAM,cAAc,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAEtC,SAAS,kBAAkB,CAAC,OAAgB;IAC3C,OAAO,CAAC,OAAO,CAAC,gBAAgB,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,WAAW,GAAG,cAAc,CAAC;AACjG,CAAC;AAED,KAAK,UAAU,sBAAsB;IAMpC,MAAM,QAAQ,GAAG,cAAc,EAAE,CAAC;IAClC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC3C,MAAM,WAAW,GAAG,IAAI,GAAG,EAAkB,CAAC;IAE9C,8EAA8E;IAC9E,MAAM,KAAK,GAAG,CAAC,OAAgB,EAAE,KAAuB,EAAE,EAAE;QAC3D,aAAa,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QACjC,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAC/B,CAAC,CAAC;IAEF,MAAM,OAAO,CAAC,GAAG,CAChB,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;QAC9B,IAAI,CAAC,OAAO,CAAC,WAAW;YAAE,OAAO;QACjC,mEAAmE;QACnE,oEAAoE;QACpE,2BAA2B;QAC3B,MAAM,GAAG,GAAG,MAAM,uBAAuB,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QACrE,IAAI,CAAC,GAAG;YAAE,OAAO;QACjB,MAAM,OAAO,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;QAC/B,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QAC3C,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;QAE1C,IAAI,OAAO,CAAC,KAAK,KAAK,MAAM,IAAI,wBAAwB,CAAC,OAAO,CAAC,EAAE,CAAC;YACnE,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5E,CAAC;aAAM,IACN,OAAO,CAAC,KAAK,KAAK,MAAM;YACxB,CAAC,kBAAkB,CAAC,OAAO,CAAC;YAC5B,uBAAuB,CAAC,OAAO,CAAC,EAC/B,CAAC;YACF,oEAAoE;YACpE,oEAAoE;YACpE,mEAAmE;YACnE,mEAAmE;YACnE,MAAM,KAAK,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;YACvD,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;gBAChB,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;gBACjC,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;YAC5E,CAAC;iBAAM,CAAC;gBACP,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;YACtC,CAAC;QACF,CAAC;aAAM,CAAC;YACP,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAClC,CAAC;QACD,uEAAuE;QACvE,mDAAmD;QACnD,IAAI,OAAO,CAAC,KAAK,KAAK,MAAM,EAAE,CAAC;YAC9B,MAAM,QAAQ,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;YAC3C,IAAI,QAAQ;gBAAE,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC3E,CAAC;IACF,CAAC,CAAC,CACF,CAAC;IAEF,+DAA+D;IAC/D,IAAI,aAAa,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAChD,KAAK,MAAM,EAAE,IAAI,aAAa,CAAC,IAAI,EAAE,EAAE,CAAC;YACvC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;gBAAE,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC7C,CAAC;IACF,CAAC;IAED,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC;AAC5C,CAAC;AASD,yEAAyE;AACzE,MAAM,UAAU,GAAG,IAAI,GAAG,EAAkB,CAAC;AAE7C,SAAS,YAAY,CAAC,SAAiB,EAAE,QAA6B;IACrE,IAAI,CAAC,QAAQ,EAAE,CAAC;QACf,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC7B,OAAO,IAAI,CAAC;IACb,CAAC;IACD,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,GAAG,QAAQ,CAAC;IACxC,IAAI,SAAS,KAAK,IAAI;QAAE,OAAO,EAAE,GAAG,IAAI,EAAE,UAAU,EAAE,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,IAAI,EAAE,CAAC;IAC1F,0EAA0E;IAC1E,iEAAiE;IACjE,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,GAAG,IAAI,CAAC;IAC5C,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACxC,IAAI,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,IAAI;QAAE,OAAO,EAAE,GAAG,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;IAClG,UAAU,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IACjC,OAAO,EAAE,GAAG,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;AACvC,CAAC;AAED;;;GAGG;AACH,uEAAuE;AACvE,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;AAEtC,8EAA8E;AAC9E,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU,CAAC;AACjC,kFAAkF;AAClF,IAAI,QAAQ,GAAG,KAAK,CAAC;AAErB;;;GAGG;AACH,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAkB,CAAC;AAEtD;;;;;;;GAOG;AACH,SAAS,mBAAmB,CAAC,CAAU;IACtC,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,QAAQ,CAAC,KAAK,QAAQ;QAAE,OAAO;IAC/C,MAAM,KAAK,GAAG,mBAAmB,CAAC,CAAC,CAAC,CAAC;IACrC,IAAI,KAAK,KAAK,SAAS,IAAI,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,KAAK;QAAE,OAAO;IAC3E,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IACrC,MAAM,IAAI,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;IACxC,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,YAAY,IAAI,IAAI,CAAC;QAAE,OAAO;IAC9C,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5C,CAAC,CAAC,YAAY,GAAG,IAAI,CAAC;AACvB,CAAC;AAED;;;;GAIG;AACH,SAAS,WAAW,CAAC,CAAU;IAC9B,MAAM,GAAG,GAAG,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAClC,IAAI,GAAG;QAAE,OAAO,EAAE,GAAG,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IAC1C,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACnC,MAAM,OAAO,GAAG,cAAc,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC;IAC7C,OAAO,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AAC3D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,wBAAwB;IAC7C,MAAM,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,EAAE,UAAU,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAC3E,sBAAsB,EAAE;QACxB,gBAAgB,EAAE;KAClB,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG,SAAS,EAAE,CAAC;IAE1B,qEAAqE;IACrE,sEAAsE;IACtE,oEAAoE;IACpE,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QAC1B,MAAM,IAAI,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACvE,IAAI,IAAI,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,WAAY,CAAC,EAAE,CAAC;YACrE,MAAM,MAAM,GAAG,CAAC,CAAC,WAAY,CAAC;YAC9B,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACxB,KAAK,mBAAmB,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;QAC5E,CAAC;IACF,CAAC;IAED,yEAAyE;IACzE,0EAA0E;IAC1E,0EAA0E;IAC1E,mDAAmD;IACnD,MAAM,IAAI,GAAG,WAAW,EAAE,CAAC,iBAAiB,CAAC;IAC7C,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QAC1B,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAAE,SAAS;QAC/B,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACjB,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI;YAAE,SAAS;QACjC,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,QAAQ,CAAC,KAAK,QAAQ;YAAE,SAAS;QAC/E,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAAE,SAAS;QACnE,OAAO,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;IAC1C,CAAC;IACD,QAAQ,GAAG,IAAI,CAAC;IAEhB,KAAK,MAAM,CAAC,IAAI,QAAQ;QAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC;IAEjD,2EAA2E;IAC3E,uEAAuE;IACvE,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IAE5B,sFAAsF;IACtF,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QAC1B,IAAI,CAAC,CAAC,CAAC,WAAW;YAAE,SAAS;QAC7B,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;QAC5C,IAAI,CAAC,OAAO;YAAE,SAAS;QACvB,MAAM,KAAK,GAAG,sBAAsB,CAAC,OAAO,CAAC,CAAC;QAC9C,IAAI,KAAK,IAAI,KAAK,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;YACjC,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;YACvC,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC;YACjB,mEAAmE;YACnE,mEAAmE;YACnE,iEAAiE;YACjE,kEAAkE;YAClE,IAAI,4CAA4C,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBAChE,KAAK,YAAY,CAAC,CAAC,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;YAC3C,CAAC;QACF,CAAC;aAAM,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;YAC/B,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;YACtC,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC;QACjB,CAAC;IACF,CAAC;IAED,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,gBAAgB,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QAC3C,MAAM,SAAS,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACxF,MAAM,GAAG,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACvE,2EAA2E;QAC3E,MAAM,QAAQ,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACzE,sEAAsE;QACtE,gDAAgD;QAChD,MAAM,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC5C,MAAM,QAAQ,GAA6B;YAC1C,GAAG,CAAC;YACJ,UAAU,EAAE,SAAS;YACrB,UAAU,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI;YAChE,WAAW,EAAE,GAAG,EAAE,IAAI,IAAI,IAAI;YAC9B,UAAU,EAAE,GAAG,EAAE,IAAI,IAAI,IAAI;YAC7B,mEAAmE;YACnE,yCAAyC;YACzC,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;YAC9C,oEAAoE;YACpE,wEAAwE;YACxE,mEAAmE;YACnE,oEAAoE;YACpE,qEAAqE;YACrE,iEAAiE;YACjE,WAAW,EAAE,QAAQ;gBACpB,CAAC,CAAC,iBAAiB,CAAC,QAAQ,EAAE;oBAC5B,YAAY,EAAE,CAAC,CAAC,KAAK,KAAK,SAAS,IAAI,CAAC,CAAC,KAAK,KAAK,YAAY;iBAC/D,CAAC;gBACH,CAAC,CAAC,IAAI;YACP,2EAA2E;YAC3E,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI;YACzD,oEAAoE;YACpE,4EAA4E;YAC5E,aAAa,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,QAAQ,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YACjG,qEAAqE;YACrE,WAAW,EAAE,kBAAkB,CAAC,CAAC,CAAC;YAClC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,aAAa,CAAC;YAC5C,+EAA+E;YAC/E,KAAK,EAAE,CAAC,CAAC,WAAW;gBACnB,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC;gBACzE,CAAC,CAAC,EAAE;YACL,SAAS,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE;YAC5D,eAAe,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI;YACrC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC;SACvB,CAAC;QAEF,IAAI,CAAC,CAAC,WAAW,IAAI,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC;YAC3C,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;YACxC,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,UAAU,CAAC,CAAC;YACvE,IAAI,WAAW,EAAE,CAAC;gBACjB,QAAQ,CAAC,SAAS,GAAG,WAAW,CAAC,EAAE,CAAC;YACrC,CAAC;QACF,CAAC;QAED,OAAO,QAAQ,CAAC;IACjB,CAAC,CAAC,CAAC;IAEH,OAAO,uBAAuB,CAAC,gBAAgB,CAAC,CAAC;AAClD,CAAC;AAED,+EAA+E;AAC/E,mBAAmB;AACnB,+EAA+E;AAE/E,MAAM,UAAU,iBAAiB,CAAC,MAAc,EAAE,QAAgB,qBAAqB;IACtF,IAAI,CAAC;QACJ,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC1E,OAAO,YAAY,CAAC,MAAM,EAAE,CAAC,cAAc,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,KAAK,EAAE,CAAC,EAAE;YAC1F,QAAQ,EAAE,OAAO;YACjB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;YAC/B,OAAO,EAAE,IAAI;SACb,CAAC,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,MAAc,EAAE,IAAY,EAAE,IAAY;IACpE,gBAAgB,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AACtC,CAAC;AAED,+EAA+E;AAC/E,2DAA2D;AAC3D,+EAA+E;AAE/E,IAAI,iBAAiB,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;AAC/E,IAAI,WAAW,GAAG,CAAC,CAAC;AACpB,IAAI,YAAY,GAAG,CAAC,CAAC;AACrB,IAAI,gBAAgB,GAA0C,IAAI,CAAC;AACnE,IAAI,mBAAmB,GAAG,CAAC,CAAC;AAE5B,SAAS,kBAAkB;IAC1B,IAAI,CAAC;QACJ,MAAM,IAAI,GAAG,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QACjD,MAAM,OAAO,GAAG,YAAY,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;QAEvD,MAAM;QACN,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QACpC,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC3D,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAC9C,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;QAClD,MAAM,QAAQ,GAAG,IAAI,GAAG,WAAW,CAAC;QACpC,MAAM,SAAS,GAAG,KAAK,GAAG,YAAY,CAAC;QACvC,MAAM,UAAU,GAAG,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,QAAQ,GAAG,SAAS,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACpF,WAAW,GAAG,IAAI,CAAC;QACnB,YAAY,GAAG,KAAK,CAAC;QAErB,SAAS;QACT,MAAM,GAAG,GAA2B,EAAE,CAAC;QACvC,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YACxC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;YAC5C,IAAI,KAAK;gBAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACnD,CAAC;QACD,MAAM,QAAQ,GAAG,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACtC,MAAM,YAAY,GAAG,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAC9C,MAAM,SAAS,GAAG,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACxC,MAAM,QAAQ,GAAG,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAEtC,iBAAiB,GAAG;YACnB,GAAG,EAAE,UAAU;YACf,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,GAAG,YAAY,CAAC,GAAG,QAAQ,CAAC,GAAG,GAAG,CAAC;YAC7D,IAAI,EAAE,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,GAAG,QAAQ,CAAC,GAAG,SAAS,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAChF,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC;YACrC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC;SACvC,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACR,oDAAoD;IACrD,CAAC;AACF,CAAC;AAED,SAAS,gBAAgB;IACxB,mBAAmB,EAAE,CAAC;IACtB,IAAI,mBAAmB,KAAK,CAAC,EAAE,CAAC;QAC/B,kBAAkB,EAAE,CAAC,CAAC,eAAe;QACrC,gBAAgB,GAAG,WAAW,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC;IAC5D,CAAC;AACF,CAAC;AAED,SAAS,eAAe;IACvB,mBAAmB,EAAE,CAAC;IACtB,IAAI,mBAAmB,IAAI,CAAC,EAAE,CAAC;QAC9B,mBAAmB,GAAG,CAAC,CAAC;QACxB,IAAI,gBAAgB,EAAE,CAAC;YACtB,aAAa,CAAC,gBAAgB,CAAC,CAAC;YAChC,gBAAgB,GAAG,IAAI,CAAC;QACzB,CAAC;IACF,CAAC;AACF,CAAC;AAED,+EAA+E;AAC/E,6BAA6B;AAC7B,+EAA+E;AAE/E,MAAM,OAAO,iBAAiB;IACrB,OAAO,GAAG,IAAI,GAAG,EAAY,CAAC;IAC9B,WAAW,GAAwB,IAAI,CAAC;IACxC,mBAAmB,GAA0C,IAAI,CAAC;IAClE,YAAY,GAA0C,IAAI,CAAC;IAC3D,gBAAgB,GAA0C,IAAI,CAAC;IAC/D,QAAQ,GAAG,EAAE,CAAC;IACd,aAAa,GAAG,EAAE,CAAC;IACnB,MAAM,CAAqB;IAC3B,cAAc,GAAG,CAAC,CAAC;IACnB,UAAU,GAAG,KAAK,CAAC;IACnB,aAAa,GAAG,KAAK,CAAC;IAE9B,YAAY,MAAiB;QAC5B,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,MAAM,EAAE,CAAC;IAChD,CAAC;IAED,wBAAwB;IACxB,QAAQ;QACP,OAAO;YACN,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI;YAC1B,cAAc,EAAE,IAAI,CAAC,cAAc;SACnC,CAAC;IACH,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,MAAgB;QACzB,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAAE,CAAC;YACzD,GAAG,CACF;gBACC,KAAK,EAAE,MAAM;gBACb,SAAS,EAAE,UAAU;gBACrB,OAAO,EAAE,2CAA2C;gBACpD,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAAE;aACzE,EACD,IAAI,CAAC,MAAM,CACX,CAAC;YACF,OAAO,KAAK,CAAC;QACd,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACzB,GAAG,CACF;YACC,KAAK,EAAE,OAAO;YACd,SAAS,EAAE,UAAU;YACrB,OAAO,EAAE,kBAAkB;YAC3B,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE;SAClC,EACD,IAAI,CAAC,MAAM,CACX,CAAC;QAEF,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YAClD,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;YAClE,IAAI,CAAC,WAAW,GAAG,cAAc,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC,CAAC;YAC9E,mEAAmE;YACnE,2DAA2D;YAC3D,wEAAwE;YACxE,IAAI,CAAC,mBAAmB,GAAG,WAAW,CAAC,GAAG,EAAE;gBAC3C,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC5B,CAAC,EAAE,GAAG,CAAC,CAAC;YACR,kDAAkD;YAClD,IAAI,CAAC;gBAAC,oBAAoB,EAAE,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;YAC3D,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC,GAAG,EAAE;gBACpC,IAAI,CAAC;oBAAC,oBAAoB,EAAE,CAAC;gBAAC,CAAC;gBAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;YAC5D,CAAC,EAAE,MAAM,CAAC,CAAC;YACX,8DAA8D;YAC9D,gBAAgB,EAAE,CAAC;YACnB,IAAI,CAAC,gBAAgB,GAAG,WAAW,CAAC,GAAG,EAAE;gBACxC,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC7B,CAAC,EAAE,MAAM,CAAC,CAAC;QACZ,CAAC;aAAM,CAAC;YACP,OAAO,CAAC,GAAG,CAAC,mCAAmC,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC5G,CAAC;QACD,wFAAwF;QACxF,IAAI,CAAC,0BAA0B,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;YACzD,IAAI,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC;gBACrB,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;gBAC/B,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,wBAAwB,EAAE,CAAC,CAAC;YAC5D,CAAC;QACF,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACb,CAAC;IAED,YAAY,CAAC,MAAgB;QAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACxC,IAAI,GAAG,EAAE,CAAC;YACT,GAAG,CACF;gBACC,KAAK,EAAE,OAAO;gBACd,SAAS,EAAE,UAAU;gBACrB,OAAO,EAAE,qBAAqB;gBAC9B,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE;aAClC,EACD,IAAI,CAAC,MAAM,CACX,CAAC;QACH,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACjD,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;YACxB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;YACnB,6BAA6B;YAC7B,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;gBAC9B,aAAa,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;gBACxC,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;YACjC,CAAC;YACD,qBAAqB;YACrB,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBACvB,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBACjC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;YAC1B,CAAC;YACD,wCAAwC;YACxC,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBAC3B,aAAa,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;gBACrC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;YAC9B,CAAC;YACD,eAAe,EAAE,CAAC;QACnB,CAAC;IACF,CAAC;IAEO,KAAK,CAAC,0BAA0B,CAAC,IAA8B;QACtE,MAAM,QAAQ,GAAG,MAAM,wBAAwB,EAAE,CAAC;QAClD,oEAAoE;QACpE,oEAAoE;QACpE,sDAAsD;QACtD,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAiB,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAC/E,OAAO;YACN,IAAI;YACJ,QAAQ;YACR,KAAK,EAAE,QAAQ,CAAC,MAAM;YACtB,QAAQ,EAAE,gBAAgB,EAAE;YAC5B,QAAQ,EAAE,WAAW,EAAE;YACvB,KAAK,EAAE,YAAY,CAClB,IAAI,GAAG,CACN,QAAQ;iBACN,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,aAAa,IAAI,CAAC,CAAC,QAAQ,CAAC;iBAC5D,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,aAAa,EAAE,CAAC,CAChD,CACD;YACD,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;SACrB,CAAC;IACH,CAAC;IAEO,wBAAwB;QAC/B,OAAO,EAAE,IAAI,EAAE,aAAsB,EAAE,GAAG,iBAAiB,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;IACtF,CAAC;IAED;;;;OAIG;IACH,YAAY;QACX,IAAI,CAAC,mBAAmB,EAAE,CAAC;IAC5B,CAAC;IAEO,mBAAmB;QAC1B,oEAAoE;QACpE,0EAA0E;QAC1E,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;YAC1B,OAAO;QACR,CAAC;QACD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QAEvB,IAAI,CAAC,0BAA0B,CAAC,UAAU,CAAC;aACzC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;YACjB,sFAAsF;YAEtF,4EAA4E;YAC5E,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;YAC/D,IAAI,IAAI,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAC5B,OAAO;YACR,CAAC;YACD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;YACrB,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;YAErC,MAAM,KAAK,GAAe,EAAE,CAAC;YAC7B,KAAK,MAAM,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBACxC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC;oBAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACnE,CAAC;YACD,KAAK,MAAM,MAAM,IAAI,KAAK,EAAE,CAAC;gBAC5B,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAC5B,IAAI,CAAC,cAAc,EAAE,CAAC;gBACtB,GAAG,CACF;oBACC,KAAK,EAAE,MAAM;oBACb,SAAS,EAAE,UAAU;oBACrB,OAAO,EAAE,qBAAqB;oBAC9B,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE;iBAClC,EACD,IAAI,CAAC,MAAM,CACX,CAAC;YACH,CAAC;QACF,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACd,GAAG,CACF;gBACC,KAAK,EAAE,OAAO;gBACd,SAAS,EAAE,UAAU;gBACrB,OAAO,EAAE,gBAAgB;gBACzB,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE;aAC5B,EACD,IAAI,CAAC,MAAM,CACX,CAAC;QACH,CAAC,CAAC;aACD,OAAO,CAAC,GAAG,EAAE;YACb,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;YACxB,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBACxB,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;gBAC3B,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC5B,CAAC;QACF,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,oBAAoB;QAC3B,MAAM,OAAO,GAAG,IAAI,CAAC,wBAAwB,EAAE,CAAC;QAChD,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACrC,IAAI,IAAI,KAAK,IAAI,CAAC,aAAa;YAAE,OAAO;QACxC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAE1B,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACrC,MAAM,KAAK,GAAe,EAAE,CAAC;QAC7B,KAAK,MAAM,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACxC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC;gBAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnE,CAAC;QACD,KAAK,MAAM,MAAM,IAAI,KAAK,EAAE,CAAC;YAC5B,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAC5B,IAAI,CAAC,cAAc,EAAE,CAAC;QACvB,CAAC;IACF,CAAC;IAEO,YAAY,CACnB,MAAgB,EAChB,OAAoD,EACpD,IAAa;QAEb,wEAAwE;QACxE,oDAAoD;QACpD,OAAO,CACN,QAAQ,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE;YACtC,SAAS,EAAE,UAAU;YACrB,WAAW,EAAE,EAAE,GAAG,IAAI;YACtB,IAAI;SACJ,CAAC,KAAK,MAAM,CACb,CAAC;IACH,CAAC;CACD;AAQD;;;;;GAKG;AACH,SAAS,QAAQ,CAChB,MAAgB,EAChB,OAAgB,EAChB,MAA0B,EAC1B,IAA+D;IAE/D,IAAI,CAAC;QACJ,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;YAAE,OAAO,QAAQ,CAAC;QACtC,IAAI,MAAM,CAAC,iBAAiB,EAAE,CAAC;YAC9B,MAAM,QAAQ,GAAG,MAAM,CAAC,iBAAiB,EAAE,CAAC;YAC5C,IAAI,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjC,GAAG,CACF;oBACC,KAAK,EAAE,MAAM;oBACb,SAAS,EAAE,IAAI,CAAC,SAAS;oBACzB,OAAO,EAAE,8BAA8B;oBACvC,IAAI,EAAE,EAAE,QAAQ,EAAE;iBAClB,EACD,MAAM,CACN,CAAC;gBACF,OAAO,cAAc,CAAC;YACvB,CAAC;QACF,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;QAClD,OAAO,MAAM,CAAC;IACf,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACd,GAAG,CACF;YACC,KAAK,EAAE,OAAO;YACd,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,OAAO,EAAE,0BAA0B;YACnC,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE;SAC5B,EACD,MAAM,CACN,CAAC;QACF,OAAO,QAAQ,CAAC;IACjB,CAAC;AACF,CAAC;AAcD,MAAM,OAAO,iBAAiB;IACrB,OAAO,GAAG,IAAI,GAAG,EAAyB,CAAC;IAC3C,UAAU,GAAG,IAAI,GAAG,EAA0C,CAAC;IAC/D,MAAM,GAAG,IAAI,GAAG,EAAuB,CAAC;IACxC,MAAM,CAAqB;IAC3B,YAAY,GAAG,CAAC,CAAC;IACjB,cAAc,GAAG,CAAC,CAAC;IAE3B,YAAY,MAAiB;QAC5B,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,MAAM,EAAE,CAAC;IAChD,CAAC;IAED,wBAAwB;IACxB,QAAQ;QACP,OAAO;YACN,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI;YAC1B,cAAc,EAAE,IAAI,CAAC,cAAc;SACnC,CAAC;IACH,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,MAAgB,EAAE,MAAc;QACzC,oBAAoB;QACpB,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,MAAM,CAAC,uBAAuB,EAAE,CAAC;YAC9D,GAAG,CACF;gBACC,KAAK,EAAE,MAAM;gBACb,SAAS,EAAE,UAAU;gBACrB,OAAO,EAAE,2BAA2B;gBACpC,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,YAAY,EAAE,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,uBAAuB,EAAE;aAC9E,EACD,IAAI,CAAC,MAAM,CACX,CAAC;YACF,OAAO,KAAK,CAAC;QACd,CAAC;QAED,yBAAyB;QACzB,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC/C,IAAI,aAAa,IAAI,aAAa,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,2BAA2B,EAAE,CAAC;YACpF,GAAG,CACF;gBACC,KAAK,EAAE,MAAM;gBACb,SAAS,EAAE,UAAU;gBACrB,OAAO,EAAE,gCAAgC;gBACzC,IAAI,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,2BAA2B,EAAE;aAC3F,EACD,IAAI,CAAC,MAAM,CACX,CAAC;YACF,OAAO,KAAK,CAAC;QACd,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YAC/B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;QACrC,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACtC,IAAI,CAAC,YAAY,EAAE,CAAC;QAEpB,GAAG,CACF;YACC,KAAK,EAAE,OAAO;YACd,SAAS,EAAE,UAAU;YACrB,OAAO,EAAE,kBAAkB;YAC3B,IAAI,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAE,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE;SACzF,EACD,IAAI,CAAC,MAAM,CACX,CAAC;QAEF,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAE,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YAC1C,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAC3B,CAAC;QAED,wEAAwE;QACxE,MAAM,IAAI,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;QAClC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,IAAI,IAAI,EAAE,CAAC;YACV,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE;gBACvB,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,GAAG,EAAE,IAAI,CAAC,GAAG;gBACb,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;aACjC,CAAC,CAAC;YACH,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE;gBACzB,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,IAAI,CAAC,MAAM;gBAClB,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,GAAG,EAAE,IAAI,CAAC,GAAG;gBACb,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,SAAS,EAAE,GAAG;aACd,CAAC,CAAC;YACH,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,WAAW,GAAG,CAAC,EAAE,CAAC;gBACvC,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,qBAAqB,CAAC,CAAC;YAC/E,CAAC;QACF,CAAC;aAAM,CAAC;YACP,qEAAqE;YACrE,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE;gBACzB,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,EAAE;gBACT,WAAW,EAAE,CAAC;gBACd,GAAG,EAAE,KAAK;gBACV,IAAI,EAAE,CAAC;gBACP,IAAI,EAAE,CAAC;gBACP,SAAS,EAAE,GAAG;aACd,CAAC,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;;OAGG;IACH,cAAc,CAAC,MAAgB,EAAE,MAAc,EAAE,MAAc,EAAE,KAAa;QAC7E,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACtC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,GAAG;YAAE,OAAO;QAChC,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,mBAAmB,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACxE,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC;QACzE,IAAI,GAAG,KAAK,CAAC;YAAE,OAAO;QACtB,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;IAC9C,CAAC;IAEO,eAAe,CAAC,MAAgB,EAAE,MAAc,EAAE,GAAW,EAAE,KAAa;QACnF,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACtC,MAAM,KAAK,GAAG,KAAK,EAAE,WAAW,IAAI,GAAG,CAAC;QACxC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,KAAK,CAAC,CAAC;QACvC,MAAM,GAAG,GAAG,iBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;QACzD,IAAI,CAAC,GAAG;YAAE,OAAO;QACjB,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE;YACzB,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,GAAG,CAAC,KAAK;YAChB,KAAK,EAAE,GAAG,CAAC,KAAK;YAChB,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;SACrB,CAAC,CAAC;IACJ,CAAC;IAED,YAAY,CAAC,MAAgB,EAAE,MAAe;QAC7C,IAAI,MAAM,EAAE,CAAC;YACZ,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAC/C,IAAI,aAAa,IAAI,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;gBACnD,IAAI,CAAC,YAAY,EAAE,CAAC;gBACpB,GAAG,CACF;oBACC,KAAK,EAAE,OAAO;oBACd,SAAS,EAAE,UAAU;oBACrB,OAAO,EAAE,qBAAqB;oBAC9B,IAAI,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE;iBAC7E,EACD,IAAI,CAAC,MAAM,CACX,CAAC;gBAEF,IAAI,aAAa,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;oBAC9B,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;oBACzB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;oBAC5B,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAC5B,CAAC;YACF,CAAC;YACD,OAAO;QACR,CAAC;QAED,oCAAoC;QACpC,KAAK,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACzC,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC5B,IAAI,CAAC,YAAY,EAAE,CAAC;gBACpB,IAAI,OAAO,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;oBACxB,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;oBACpB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;oBACvB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBACvB,CAAC;gBACD,MAAM;YACP,CAAC;QACF,CAAC;IACF,CAAC;IAEO,YAAY,CAAC,MAAc;QAClC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC;YAAE,OAAO;QACxC,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,CAAC;QACpE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACpC,CAAC;IAEO,WAAW,CAAC,MAAc;QACjC,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC1C,IAAI,KAAK,EAAE,CAAC;YACX,aAAa,CAAC,KAAK,CAAC,CAAC;YACrB,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAChC,CAAC;IACF,CAAC;IAEO,gBAAgB,CAAC,MAAc;QACtC,MAAM,IAAI,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;QAClC,IAAI,CAAC,IAAI;YAAE,OAAO,CAAC,oFAAoF;QACvG,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,QAAQ,GAAsB,EAAE,CAAC;QACvC,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEzC,IAAI,CAAC,IAAI,EAAE,CAAC;YACX,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;YACvH,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;YACjI,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;QACvJ,CAAC;aAAM,CAAC;YACP,MAAM,QAAQ,GACb,IAAI,CAAC,GAAG,KAAK,IAAI,CAAC,GAAG;gBACrB,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI;gBACvB,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI;gBACvB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;YACrC,IAAI,QAAQ,EAAE,CAAC;gBACd,8EAA8E;gBAC9E,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;YAClI,CAAC;iBAAM,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;gBAC7D,MAAM,CAAC,GAAG,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;gBAC9C,IAAI,KAAK,GAAoB,IAAI,CAAC;gBAClC,IAAI,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC;gBAC7B,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;oBAC3B,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBAC/C,CAAC;qBAAM,CAAC;oBACP,gFAAgF;oBAChF,MAAM,GAAG,GAAG,iBAAiB,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;oBAC5F,IAAI,GAAG,EAAE,CAAC;wBACT,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;wBAClB,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;oBACnB,CAAC;gBACF,CAAC;gBACD,IAAI,KAAK,EAAE,CAAC;oBACX,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;gBACjG,CAAC;qBAAM,CAAC;oBACP,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;gBAClI,CAAC;YACF,CAAC;YACD,IAAI,SAAS,KAAK,IAAI,CAAC,SAAS,IAAI,QAAQ,EAAE,CAAC;gBAC9C,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;YACvJ,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;QACxH,CAAC;QAED,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAClC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACzC,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAChC,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;YACrC,MAAM,KAAK,GAAe,EAAE,CAAC;YAC7B,KAAK,MAAM,MAAM,IAAI,CAAC,GAAG,OAAO,CAAC,EAAE,CAAC;gBACnC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC;oBAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACnE,CAAC;YACD,KAAK,MAAM,MAAM,IAAI,KAAK,EAAE,CAAC;gBAC5B,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBACvB,IAAI,CAAC,YAAY,EAAE,CAAC;gBACpB,IAAI,CAAC,cAAc,EAAE,CAAC;gBACtB,GAAG,CACF;oBACC,KAAK,EAAE,MAAM;oBACb,SAAS,EAAE,UAAU;oBACrB,OAAO,EAAE,qBAAqB;oBAC9B,IAAI,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE;iBAC1C,EACD,IAAI,CAAC,MAAM,CACX,CAAC;YACH,CAAC;YACD,IAAI,OAAO,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;gBACxB,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;gBACzB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAC5B,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAC3B,OAAO;YACR,CAAC;QACF,CAAC;IACF,CAAC;IAEO,YAAY,CAAC,MAAgB,EAAE,OAAwB,EAAE,IAAa;QAC7E,sEAAsE;QACtE,qEAAqE;QACrE,OAAO,CACN,QAAQ,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE;YACtC,SAAS,EAAE,UAAU;YACrB,WAAW,EAAE,EAAE,GAAG,IAAI;YACtB,IAAI;SACJ,CAAC,KAAK,MAAM,CACb,CAAC;IACH,CAAC;CACD;AAgGD,MAAM,kBAAkB,GAAG,GAAG,CAAC;AAC/B,2EAA2E;AAC3E,MAAM,uBAAuB,GAAG,CAAC,CAAC;AAClC;;;;;;;GAOG;AACH,MAAM,aAAa,GAAG,CAAC,CAAC;AACxB,MAAM,iBAAiB,GAAG,EAAE,CAAC;AAC7B;;;;;GAKG;AACH,MAAM,gBAAgB,GAAG,GAAG,CAAC;AAC7B;;;;;GAKG;AACH,MAAM,eAAe,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AACvC,MAAM,QAAQ,GAAG,EAAE,GAAG,IAAI,CAAC;AAC3B,+EAA+E;AAC/E,MAAM,kBAAkB,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;AAC3C,4EAA4E;AAC5E,MAAM,mBAAmB,GAAG,GAAG,CAAC;AAEhC,+GAA+G;AAC/G,SAAS,MAAM,CAAC,OAA0B;IACzC,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC;IAC5B,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,GAAG,gBAAgB,CAAC,CAAC;IAC9D,OAAO;QACN,OAAO,EAAE,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG;QACrD,UAAU;QACV,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,KAAK,EAAE,OAAO,CAAC,KAAK;KACpB,CAAC;AACH,CAAC;AAED,mFAAmF;AACnF,SAAS,YAAY,CACpB,OAA0B,EAC1B,GAAqB,EACrB,SAAiB;IAEjB,MAAM,OAAO,GAAsB,EAAE,CAAC;IACtC,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,KAAK,MAAM,EAAE,IAAI,IAAI,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;QAC/B,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAClC,IAAI,KAAK,KAAK,SAAS;YAAE,SAAS;QAClC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;QACrC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;AACzD,CAAC;AAED,MAAM,OAAO,mBAAmB;IACvB,OAAO,GAAG,IAAI,GAAG,EAAyB,CAAC;IAC3C,QAAQ,GAAG,IAAI,GAAG,EAAkC,CAAC;IAC7D,kEAAkE;IAC1D,OAAO,GAAG,IAAI,GAAG,EAAyB,CAAC;IAC3C,MAAM,CAAqB;IAC3B,OAAO,GAAwB,IAAI,CAAC;IAE5C,YAAY,MAAiB;QAC5B,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,MAAM,EAAE,CAAC;IAChD,CAAC;IAED;;;OAGG;IACH,SAAS,CAAC,MAAgB,EAAE,SAAiB,EAAE,OAAgB;QAC9D,qEAAqE;QACrE,mEAAmE;QACnE,MAAM,OAAO,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,CAC9D,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,CAC/C,CAAC,MAAM,CAAC;QACT,IAAI,OAAO,IAAI,IAAI,CAAC,MAAM,CAAC,2BAA2B,EAAE,CAAC;YACxD,GAAG,CACF;gBACC,KAAK,EAAE,MAAM;gBACb,SAAS,EAAE,YAAY;gBACvB,OAAO,EAAE,iCAAiC;gBAC1C,IAAI,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE;aACrC,EACD,IAAI,CAAC,MAAM,CACX,CAAC;YACF,OAAO,KAAK,CAAC;QACd,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC;YAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;QACzE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACzC,IAAI,OAAO;YAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QAEjE,IAAI,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACzC,IAAI,CAAC,KAAK,EAAE,CAAC;YACZ,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;YACrC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QACrC,CAAC;aAAM,IAAI,KAAK,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;YACrC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAC7B,CAAC;QACD,MAAM,IAAI,GAAG,GAAG,EAAE;YACjB,IAAI,CAAC,OAAO;gBAAE,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YACxE,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;QACzD,CAAC,CAAC;QACF,2EAA2E;QAC3E,IAAI,KAAK,CAAC,SAAS;YAAE,KAAK,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;;YAChD,IAAI,EAAE,CAAC;QACZ,OAAO,IAAI,CAAC;IACb,CAAC;IAED,mFAAmF;IAC3E,IAAI,CAAC,SAAiB,EAAE,KAA6B;QAC5D,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC;QACvB,KAAK,CAAC,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,kBAAkB,CAAC,CAAC;QAC1E,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,SAAS;YAAE,OAAO;QAC7C,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACnC,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YAC/B,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YAC5B,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QAC1C,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAC7B,CAAC;QACD,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC1B,iEAAiE;QACjE,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAED,YAAY,CAAC,MAAgB,EAAE,SAAkB;QAChD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC5B,MAAM,IAAI,GAAG,CAAC,EAAU,EAAE,OAAsB,EAAE,EAAE;YACnD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;gBAAE,OAAO,KAAK,CAAC;YAC1C,IAAI,OAAO,CAAC,IAAI,KAAK,CAAC;gBAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACtC,OAAO,IAAI,CAAC;QACb,CAAC,CAAC;QACF,IAAI,SAAS,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAC5C,IAAI,OAAO;gBAAE,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YACtC,OAAO;QACR,CAAC;QACD,KAAK,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAC1C,IAAI,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC;gBAAE,MAAM;QAC9B,CAAC;IACF,CAAC;IAED,0FAA0F;IAClF,WAAW,CAAC,SAAiB;QACpC,OAAO,IAAI,iBAAiB,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,UAAU,CAAC,SAAS,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;IACpF,CAAC;IAEO,YAAY,CAAC,SAAiB;QACrC,MAAM,KAAK,GAA2B;YACrC,SAAS;YACT,MAAM,EAAE,IAAI;YACZ,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC;YACpC,SAAS,EAAE,KAAK;YAChB,SAAS,EAAE,aAAa;YACxB,cAAc,EAAE,aAAa;YAC7B,SAAS,EAAE,IAAI,GAAG,EAAE;YACpB,UAAU,EAAE,CAAC;YACb,QAAQ,EAAE,IAAI,GAAG,EAAE;YACnB,SAAS,EAAE,IAAI;YACf,SAAS,EAAE,IAAI;YACf,WAAW,EAAE,EAAE;YACf,SAAS,EAAE,IAAI;YACf,KAAK,EAAE,IAAI,GAAG,EAAE;YAChB,KAAK,EAAE,WAAW,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,kBAAkB,CAAC;SAClE,CAAC;QACF,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACpC,IAAI,IAAI;YAAE,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACnC,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,OAAO,KAAK,CAAC;IACd,CAAC;IAED;;;;;;;;OAQG;IACH,eAAe,CAAC,OAAyB;QACxC,KAAK,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;YAC1B,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACpC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM;gBAAE,SAAS;YACrC,MAAM,QAAQ,GAAG,UAAU,CAAC,EAAE,CAAC,EAAE,eAAe,CAAC;YACjD,IAAI,QAAQ,IAAI,UAAU,CAAC,QAAQ,CAAC;gBAAE,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC;QAC3D,CAAC;IACF,CAAC;IAED;;;;;;OAMG;IACK,MAAM,CAAC,KAA6B,EAAE,IAAY;QACzD,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC;QACrC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;QACtB,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;QAC7E,KAAK,CAAC,SAAS,GAAG,CAAC,KAAK,IAAI,EAAE;YAC7B,SAAS,CAAC;gBACT,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;gBAC/C,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;gBAC5B,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI;oBAAE,MAAM;gBACrD,MAAM,QAAQ,EAAE,CAAC;YAClB,CAAC;YACD,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;YAC9B,KAAK,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;gBAC9C,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;gBACvC,MAAM,QAAQ,EAAE,CAAC;YAClB,CAAC;YACD,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;QACnC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE;YACjB,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM;gBAAE,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC;QACrD,CAAC,CAAC,CAAC;QACH,OAAO,KAAK,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,0EAA0E;IAClE,MAAM,CAAC,SAAiB;QAC/B,MAAM,OAAO,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC;QACtC,OAAO,OAAO,CAAC,CAAC,CAAC,qBAAqB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACnE,CAAC;IAED;;;OAGG;IACK,aAAa,CAAC,KAA6B;QAClD,IAAI,CAAC,KAAK,CAAC,MAAM;YAAE,OAAO,EAAE,CAAC;QAE7B,IAAI,KAAK,CAAC,UAAU,IAAI,CAAC,EAAE,CAAC;YAC3B,KAAK,CAAC,UAAU,GAAG,uBAAuB,CAAC;YAC3C,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAC/B,CAAC;aAAM,CAAC;YACP,KAAK,CAAC,UAAU,EAAE,CAAC;QACpB,CAAC;QAED,MAAM,OAAO,GAAsB,EAAE,CAAC;QACtC,KAAK,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;YAC9C,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;YACvD,IAAI,OAAO;gBAAE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACpC,CAAC;QACD,OAAO,OAAO,CAAC;IAChB,CAAC;IAED,mEAAmE;IAC3D,iBAAiB,CAAC,KAA6B;QACtD,IAAI,CAAC,KAAK,CAAC,MAAM;YAAE,OAAO;QAC1B,KAAK,MAAM,IAAI,IAAI,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;YACtF,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE;gBACjC,MAAM,EAAE,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC;gBAClC,OAAO,EAAE,IAAI,iBAAiB,CAAC,IAAI,CAAC;gBACpC,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,EAAE;gBACZ,OAAO,EAAE,IAAI,GAAG,EAAE;gBAClB,KAAK,EAAE,KAAK;aACZ,CAAC,CAAC;QACJ,CAAC;IACF,CAAC;IAED;;;OAGG;IACK,YAAY,CACnB,KAA6B,EAC7B,OAAe,EACf,GAAkB;QAElB,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACjC,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YAC/B,GAAG,CAAC,OAAO,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC;YAC1C,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACpB,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,CAAC;aAAM,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YACtC,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;gBACjC,KAAK,MAAM,EAAE,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;oBAAE,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC9D,CAAC;QACF,CAAC;QACD,MAAM,OAAO,GAAG,eAAe,CAC9B,OAAO,EACP,GAAG,EACH,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,EACzC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAC3B,CAAC;QACF,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC;QACtB,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACxC,IAAI,OAAO,KAAK,GAAG,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAC;QAC1C,GAAG,CAAC,QAAQ,GAAG,OAAO,CAAC;QACvB,OAAO,OAAO,CAAC;IAChB,CAAC;IAED;;;OAGG;IACH,eAAe,CAAC,MAAgB,EAAE,SAAiB,EAAE,OAAe;QACnE,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC3C,MAAM,GAAG,GAAG,KAAK,EAAE,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC1C,IAAI,CAAC,KAAK,IAAI,CAAC,GAAG;YAAE,OAAO;QAC3B,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC5B,MAAM,OAAO,GAAG,eAAe,CAAC,OAAO,EAAE,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,CAAC;QAC/F,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC;QACtB,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACvC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IAC/F,CAAC;IAED;;;OAGG;IACH,cAAc,CAAC,MAAgB,EAAE,SAAiB,EAAE,MAAc,EAAE,KAAa;QAChF,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC3C,IAAI,CAAC,KAAK;YAAE,OAAO;QACnB,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACxC,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC;QACtF,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;QAC9E,IAAI,GAAG,KAAK,CAAC;YAAE,OAAO;QACtB,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,mBAAmB,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACxE,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC;QACnC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE;YACzB,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC;YAC1C,UAAU,EAAE,KAAK;YACjB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;SACrB,CAAC,CAAC;IACJ,CAAC;IAED;;;OAGG;IACK,IAAI,CAAC,SAAiB;QAC7B,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC3C,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC/B,IAAI,CAAC,KAAK;YAAE,OAAO;QACnB,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC3B,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;IAEO,WAAW,CAAC,SAAiB;QACpC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC3C,IAAI,KAAK;YAAE,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACtC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAChC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAChC,CAAC;IAEO,OAAO,GAA0C,IAAI,CAAC;IAEtD,aAAa;QACpB,IAAI,IAAI,CAAC,OAAO;YAAE,OAAO;QACzB,IAAI,CAAC,OAAO,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC;QACpF,IAAI,CAAC,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE;YAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACvB,KAAK,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACzC,IAAI,KAAK,CAAC,SAAS,KAAK,IAAI,IAAI,GAAG,GAAG,KAAK,CAAC,SAAS,GAAG,eAAe,EAAE,CAAC;oBACzE,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;gBACtB,CAAC;YACF,CAAC;YACD,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBAC9C,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAC5B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;gBACpB,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;gBACjB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YACrB,CAAC;QACF,CAAC,EAAE,QAAQ,CAAC,CAAC;IACd,CAAC;IAED,qEAAqE;IAC7D,OAAO,CACd,KAA6B,EAC7B,MAAuC;QAEvC,QAAQ,MAAM,CAAC,MAAM,EAAE,CAAC;YACvB,KAAK,OAAO,CAAC,CAAC,CAAC;gBACd,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC;gBACvB,MAAM,OAAO,GAAa,EAAE,CAAC;gBAC7B,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK;oBAAE,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC3E,OAAO,OAAO,CAAC;YAChB,CAAC;YACD,KAAK,OAAO;gBACX,0DAA0D;gBAC1D,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;gBAClD,OAAO,EAAE,CAAC;YACX;gBACC,OAAO,EAAE,CAAC;QACZ,CAAC;IACF,CAAC;IAEO,IAAI,CAAC,SAAiB;QAC7B,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC5C,IAAI,CAAC,KAAK,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,KAAK,CAAC;YAAE,OAAO;QAErD,IAAI,KAAK,CAAC,SAAS;YAAE,OAAO;QAC5B,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YACnB,IAAI,EAAE,KAAK,CAAC,SAAS,GAAG,CAAC;gBAAE,OAAO;YAClC,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACpC,IAAI,CAAC,IAAI,EAAE,CAAC;gBACX,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,cAAc,GAAG,CAAC,EAAE,iBAAiB,CAAC,CAAC;gBAC7E,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,cAAc,CAAC;gBACvC,OAAO;YACR,CAAC;YACD,KAAK,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;gBACvC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,KAAK;oBAAE,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;YAC3E,CAAC,CAAC,CAAC;YACH,OAAO;QACR,CAAC;QAED,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAEpC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACnC,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YAC/B,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YAC5B,gEAAgE;YAChE,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;YACzC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;YAC9B,OAAO;QACR,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAC/C,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,YAAY,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QAChF,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC5C,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACpF,CAAC;QACD,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;QAEhD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;QACtC,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACxC,IAAI,OAAO,IAAI,OAAO,KAAK,KAAK,CAAC,WAAW,EAAE,CAAC;YAC9C,KAAK,CAAC,WAAW,GAAG,OAAO,CAAC;YAC5B,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAChF,CAAC;QACD,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAClC,IAAI,KAAK,IAAI,KAAK,KAAK,KAAK,CAAC,SAAS,EAAE,CAAC;YACxC,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC;YACxB,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAC5E,CAAC;IACF,CAAC;IAED,iFAAiF;IACzE,MAAM,CAAC,SAAiB,EAAE,KAA6B;QAC9D,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC1D,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;QAChD,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,CAAC;YAClD,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;QACzD,CAAC;IACF,CAAC;IAED,8DAA8D;IACtD,WAAW,CAAC,SAAiB;QACpC,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QACvC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACpF,CAAC;IAED;;;;;OAKG;IACK,aAAa,CACpB,SAAiB,EACjB,KAA6B,EAC7B,QAA2B;QAE3B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC5C,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,CAAC;YAClD,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAE,CAAC;YACzC,MAAM,GAAG,GAAG,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAChD,uEAAuE;YACvE,IAAI,CAAC,GAAG,IAAI,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC;gBAAE,SAAS;YAC9C,MAAM,QAAQ,GAA0B,EAAE,CAAC;YAC3C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACvB,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;gBAChC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;YAC7C,CAAC;iBAAM,CAAC;gBACP,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;oBAC1B,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;oBAC3D,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC;oBACpC,IAAI,OAAO;wBAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;gBAC1E,CAAC;gBACD,oFAAoF;gBACpF,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;oBACxD,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;oBAClE,MAAM,OAAO,GAAG,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;oBACrE,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;gBAC5E,CAAC;YACF,CAAC;YACD,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;gBAChC,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBAClD,IAAI,MAAM,KAAK,MAAM;oBAAE,SAAS;gBAChC,IAAI,MAAM,KAAK,cAAc,EAAE,CAAC;oBAC/B,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBACzB,CAAC;qBAAM,CAAC;oBACP,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;oBACxB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAC7B,CAAC;gBACD,MAAM;YACP,CAAC;QACF,CAAC;QACD,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;QAClC,IAAI,OAAO,EAAE,IAAI,KAAK,CAAC;YAAE,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC/C,CAAC;IAED,0EAA0E;IAClE,qBAAqB,CAAC,KAA6B;QAC1D,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC;YAC5C,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACpB,GAAG,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,CAAC;IACF,CAAC;IAED;;;;OAIG;IACK,YAAY,CAAC,SAAiB,EAAE,KAA6B;QACpE,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC;YAAE,OAAO;QACnC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACrC,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACrC,KAAK,MAAM,MAAM,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;YACvC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC3B,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAC3B,SAAS;YACV,CAAC;YACD,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC;gBACtC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;gBACzD,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;YAC5C,IAAI,MAAM,KAAK,cAAc;gBAAE,SAAS,CAAC,gCAAgC;YACzE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAC3B,IAAI,MAAM,KAAK,QAAQ;gBAAE,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACjD,CAAC;IACF,CAAC;IAED;;;;OAIG;IACK,QAAQ,CAAC,KAA6B,EAAE,MAAiB;QAChE,MAAM,MAAM,GAAG,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAClD,IAAI,MAAM;YAAE,OAAO,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACrD,OAAO;YACN,IAAI,EAAE,UAAU;YAChB,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC;YACxB,SAAS,EAAE,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,GAAG,CAClC,CAAC,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,CACb,GAAG,CAAC,OAAO;gBACX,eAAe,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CACvF;YACD,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;SACrB,CAAC;IACH,CAAC;IAED;;;;OAIG;IACK,aAAa,CAAC,KAA6B,EAAE,MAAmB;QACvE,MAAM,GAAG,GAAG,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAChD,MAAM,CAAC,KAAK,GAAG,GAAG,KAAK,SAAS,CAAC;QACjC,IAAI,CAAC,GAAG,EAAE,CAAC;YACV,OAAO;gBACN,IAAI,EAAE,UAAU;gBAChB,OAAO,EAAE,EAAE;gBACX,UAAU,EAAE,CAAC;gBACb,SAAS,EAAE,EAAE;gBACb,OAAO,EAAE,IAAI;gBACb,KAAK,EAAE,IAAI;gBACX,SAAS,EAAE,KAAK;gBAChB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;aACrB,CAAC;QACH,CAAC;QACD,MAAM,OAAO,GAAG,eAAe,CAC9B,MAAM,CAAC,OAAO,EACd,GAAG,EACH,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,EAChD,IAAI,CACJ,CAAC;QACF,OAAO;YACN,IAAI,EAAE,UAAU;YAChB,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC;YACtB,SAAS,EAAE,CAAC,OAAO,CAAC;YACpB,SAAS,EAAE,IAAI;YACf,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;SACrB,CAAC;IACH,CAAC;IAED,4FAA4F;IACpF,SAAS,CAAC,SAAiB,EAAE,OAA4B;QAChE,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC5C,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACrC,KAAK,MAAM,MAAM,IAAI,CAAC,GAAG,OAAO,CAAC,EAAE,CAAC;YACnC,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC;gBAAE,SAAS;YACvC,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;YACxD,kEAAkE;YAClE,8DAA8D;YAC9D,yDAAyD;YACzD,IAAI,MAAM,KAAK,cAAc;gBAAE,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;iBACnD,IAAI,MAAM,KAAK,QAAQ;gBAAE,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACtD,CAAC;QACD,IAAI,OAAO,CAAC,IAAI,KAAK,CAAC;YAAE,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC9C,CAAC;IAEO,YAAY,CAAC,MAAgB,EAAE,OAA4B,EAAE,IAAa;QACjF,OAAO,QAAQ,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE;YAC7C,SAAS,EAAE,YAAY;YACvB,oEAAoE;YACpE,mEAAmE;YACnE,WAAW,EAAE,CAAC,GAAG,IAAI,GAAG,IAAI;YAC5B,IAAI;SACJ,CAAC,CAAC;IACJ,CAAC;CACD;AAeD,MAAM,UAAU,eAAe,CAAC,MAAc,EAAE,QAA4B;IAC3E,IAAI,MAAM,KAAK,MAAM;QAAE,OAAO,MAAM,CAAC;IACrC,IAAI,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC3B,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;QACpB,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACvB,OAAO,IAAI,CAAC;IACb,CAAC;IAED,IAAI,CAAC;QACJ,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAmE,CAAC;QACjG,QAAQ,GAAG,CAAC,IAAI,EAAE,CAAC;YAClB,KAAK,kBAAkB;gBACtB,IAAI,QAAQ,CAAC,eAAe,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;oBACjE,QAAQ,CAAC,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBACvC,CAAC;gBACD,MAAM;YACP,KAAK,QAAQ;gBACZ,IAAI,QAAQ,CAAC,MAAM,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBACrF,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;gBACrC,CAAC;gBACD,MAAM;YACP,KAAK,iBAAiB;gBACrB,IAAI,QAAQ,CAAC,cAAc,IAAI,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ,IAAI,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;oBAChG,QAAQ,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;gBAChD,CAAC;gBACD,MAAM;QACR,CAAC;IACF,CAAC;IAAC,MAAM,CAAC;QACR,iBAAiB;IAClB,CAAC;IAED,OAAO,IAAI,CAAC;AACb,CAAC;AAED,+EAA+E;AAC/E,UAAU;AACV,+EAA+E;AAE/E;;;GAGG;AACH,MAAM,CAAC,MAAM,cAAc,GAC1B,8GAA8G,CAAC;AAEhH;;;;;;;GAOG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAAiC,EAAE,IAA+B;IACpG,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACzB,IAAI,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC;QAAE,OAAO,IAAI,CAAC;IAC7C,IAAI,CAAC;QACH,OAAO,CAAC,CAAC,IAAI,IAAI,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC;IACjD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAcD,MAAM,UAAU,WAAW,CAAC,QAAgB;IAC3C,IAAI,QAAQ,KAAK,sBAAsB,EAAE,CAAC;QACzC,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;IAC7B,CAAC;IAED,MAAM,YAAY,GAAG,QAAQ,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;IACzE,IAAI,YAAY,EAAE,CAAC;QAClB,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,kBAAkB,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACzE,CAAC;IAED,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,iEAAiE,CAAC,CAAC;IACrG,IAAI,UAAU,EAAE,CAAC;QAChB,OAAO;YACN,IAAI,EAAE,YAAY;YAClB,MAAM,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YACzC,KAAK,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;SACxC,CAAC;IACH,CAAC;IAED,MAAM,eAAe,GAAG,QAAQ,CAAC,KAAK,CAAC,gDAAgD,CAAC,CAAC;IACzF,IAAI,eAAe,EAAE,CAAC;QACrB,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,kBAAkB,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/E,CAAC;IAED,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;IACvE,IAAI,SAAS,EAAE,CAAC;QACf,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACvE,CAAC;IAED,OAAO,IAAI,CAAC;AACb,CAAC"}
|
package/dist/utils/version.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/utils/version.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,eAAO,MAAM,OAAO,
|
|
1
|
+
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/utils/version.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,eAAO,MAAM,OAAO,YAAY,CAAC"}
|
package/dist/utils/version.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/utils/version.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,
|
|
1
|
+
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/utils/version.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,SAAS,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{w as l,q as u,v as c,I as b}from"./C3eboQ8T.js";import{b as A}from"./
|
|
2
|
-
//# sourceMappingURL=
|
|
1
|
+
import{w as l,q as u,v as c,I as b}from"./C3eboQ8T.js";import{b as A}from"./BoLLjGZ-.js";class R{#e=l(!1);get open(){return u(this.#e)}set open(e){c(this.#e,e,!0)}toggle(){this.open=!this.open}close(){this.open=!1}}const B=new R,M=["audio/webm;codecs=opus","audio/webm","audio/ogg;codecs=opus","audio/mp4"];function y(){if(typeof MediaRecorder>"u")return"";for(const o of M)if(MediaRecorder.isTypeSupported(o))return o;return""}class x{stream=null;recorder=null;chunks=[];startedAt=0;pending=null;audioCtx=null;analyser=null;timeBuf=null;gainNode=null;async start(e,t={}){if(this.recorder&&this.recorder.state==="recording")throw new Error("Already recording");const i=Math.max(.1,Math.min(10,t.gain??1)),h=i!==1,n={echoCancellation:!0,noiseSuppression:t.noiseSuppression??!0,autoGainControl:!0};e&&(n.deviceId={exact:e});let p=!1;try{this.stream=await navigator.mediaDevices.getUserMedia({audio:n})}catch(s){if(e&&s instanceof Error&&s.name==="OverconstrainedError")delete n.deviceId,this.stream=await navigator.mediaDevices.getUserMedia({audio:n}),p=!0;else throw s}let g=this.stream;try{const s=window.AudioContext??window.webkitAudioContext;if(s){this.audioCtx=new s;const d=this.audioCtx.createMediaStreamSource(this.stream),a=this.audioCtx.createAnalyser();if(a.fftSize=1024,a.smoothingTimeConstant=.4,h){const m=this.audioCtx.createGain();m.gain.value=i;const w=this.audioCtx.createMediaStreamDestination();d.connect(m),m.connect(a),m.connect(w),this.gainNode=m,g=w.stream}else d.connect(a);this.analyser=a,this.timeBuf=new Float32Array(a.fftSize)}}catch{this.audioCtx=null,this.analyser=null,this.timeBuf=null,this.gainNode=null,g=this.stream}const v=y(),T=v?{mimeType:v}:{};return this.recorder=new MediaRecorder(g,T),this.chunks=[],this.startedAt=performance.now(),this.recorder.ondataavailable=s=>{s.data&&s.data.size>0&&this.chunks.push(s.data)},this.recorder.onstop=()=>{const s=this.recorder?.mimeType||v||"audio/webm",d=new Blob(this.chunks,{type:s}),a=performance.now()-this.startedAt;this.releaseStream(),this.pending?.resolve({blob:d,mimeType:s,durationMs:a}),this.pending=null},this.recorder.onerror=s=>{const d=s.error??new Error("MediaRecorder error");this.releaseStream(),this.pending?.reject(d),this.pending=null},this.recorder.start(),{fellBackToDefault:p}}async stop(){const e=this.recorder;if(!e||e.state==="inactive")throw new Error("Not recording");return new Promise((t,i)=>{this.pending={resolve:t,reject:i},e.stop()})}getLevel(){if(!this.analyser||!this.timeBuf)return null;this.analyser.getFloatTimeDomainData(this.timeBuf);let e=0,t=0;for(let h=0;h<this.timeBuf.length;h++){const r=this.timeBuf[h];e+=r*r;const n=r<0?-r:r;n>t&&(t=n)}return{rms:Math.sqrt(e/this.timeBuf.length),peak:t}}releaseStream(){if(this.stream){for(const e of this.stream.getTracks())e.stop();this.stream=null}this.audioCtx&&(this.audioCtx.close().catch(()=>{}),this.audioCtx=null),this.analyser=null,this.timeBuf=null,this.gainNode=null}}function C(){return S()===null}function S(){return typeof navigator>"u"?"No navigator (SSR).":typeof window<"u"&&window.isSecureContext===!1?"Voice requires HTTPS or localhost. Open this page over HTTPS.":navigator.mediaDevices?.getUserMedia?typeof MediaRecorder>"u"?"MediaRecorder API unavailable in this browser.":y()===""?"No supported audio codec (webm/ogg/mp4). Try another browser.":null:"Browser blocks microphone access. Open over HTTPS or use a supported browser."}async function L(){return typeof navigator>"u"||!navigator.mediaDevices?.enumerateDevices?[]:(await navigator.mediaDevices.enumerateDevices()).filter(e=>e.kind==="audioinput").map(e=>({deviceId:e.deviceId,label:e.label||"Microphone"}))}const I=200;function F(o,e){return o.trim()?`${o.trimEnd()} ${e}`:e}const f=A("claude-mux-voice-settings",{language:"auto",autoSubmit:!0,deviceId:null,gain:1,noiseSuppression:!0});class k{#e=l("idle");get status(){return u(this.#e)}set status(e){c(this.#e,e,!0)}#t=l(null);get error(){return u(this.#t)}set error(e){c(this.#t,e,!0)}#r=l(null);get startedAt(){return u(this.#r)}set startedAt(e){c(this.#r,e,!0)}#s=l(b({rms:0,peak:0}));get level(){return u(this.#s)}set level(e){c(this.#s,e,!0)}#i=l(null);get ownerTarget(){return u(this.#i)}set ownerTarget(e){c(this.#i,e,!0)}#n=l(null);get ownerField(){return u(this.#n)}set ownerField(e){c(this.#n,e,!0)}#o=l(b(f.load()));get prefs(){return u(this.#o)}set prefs(e){c(this.#o,e,!0)}recorder=null;inflightAbort=null;levelRaf=null;get supported(){return C()}get unsupportedReason(){return S()}get isActive(){return this.status==="recording"||this.status==="transcribing"}isOwnedBy(e,t=null){return e!=null&&this.ownerTarget===e&&this.ownerField===t}get language(){return this.prefs.language}set language(e){this.prefs.language!==e&&(this.prefs.language=e,f.save(this.prefs))}get autoSubmit(){return this.prefs.autoSubmit}set autoSubmit(e){this.prefs.autoSubmit!==e&&(this.prefs.autoSubmit=e,f.save(this.prefs))}get deviceId(){return this.prefs.deviceId}set deviceId(e){this.prefs.deviceId!==e&&(this.prefs.deviceId=e,f.save(this.prefs))}get gain(){return this.prefs.gain}set gain(e){const t=Math.max(.1,Math.min(10,e));this.prefs.gain!==t&&(this.prefs.gain=t,f.save(this.prefs))}get noiseSuppression(){return this.prefs.noiseSuppression}set noiseSuppression(e){this.prefs.noiseSuppression!==e&&(this.prefs.noiseSuppression=e,f.save(this.prefs))}async startRecording(e,t=null){if(!this.isActive){if(!this.supported){this.fail("Voice not supported in this browser");return}if(!e){this.fail("No target for voice recording");return}try{this.recorder||(this.recorder=new x),(await this.recorder.start(this.deviceId,{gain:this.gain,noiseSuppression:this.noiseSuppression})).fellBackToDefault&&this.deviceId!==null&&(this.deviceId=null),this.ownerTarget=e,this.ownerField=t,this.status="recording",this.error=null,this.startedAt=Date.now(),this.startLevelLoop()}catch(i){this.fail(i instanceof Error?i.message:"Microphone access denied")}}}startLevelLoop(){this.stopLevelLoop();const e=()=>{if(this.status!=="recording"||!this.recorder){this.levelRaf=null;return}const t=this.recorder.getLevel();t&&(this.level=t),this.levelRaf=requestAnimationFrame(e)};this.levelRaf=requestAnimationFrame(e)}stopLevelLoop(){this.levelRaf!==null&&(cancelAnimationFrame(this.levelRaf),this.levelRaf=null),this.level={rms:0,peak:0}}async stop(){if(this.status!=="recording"||!this.recorder)return null;const e=this.ownerTarget;if(!e)return this.fail("Voice owner missing"),null;this.stopLevelLoop();let t;try{t=await this.recorder.stop()}catch(r){return this.fail(r instanceof Error?r.message:"Recording failed"),null}if(this.status!=="recording")return null;if(t.blob.size===0||t.durationMs<I)return this.release(),null;this.status="transcribing",this.startedAt=null;const i=new AbortController;this.inflightAbort=i;const h=this.language==="auto"?"":`?lang=${this.language}`;try{const r=await fetch(`/api/sessions/${encodeURIComponent(e)}/voice${h}`,{method:"POST",headers:{"Content-Type":t.mimeType},body:t.blob,signal:i.signal});if(!r.ok){const g=await r.text().catch(()=>"");throw new Error(g||`HTTP ${r.status}`)}const n=await r.json();this.release();const p=(n.text??"").trim();return p?{text:p,command:n.command===!0}:null}catch(r){return i.signal.aborted?(this.error=null,null):(this.fail(r instanceof Error?r.message:"Transcription failed"),null)}finally{this.inflightAbort===i&&(this.inflightAbort=null)}}release(){this.status="idle",this.startedAt=null,this.ownerTarget=null,this.ownerField=null}cancelTranscribing(){this.status!=="transcribing"||!this.inflightAbort||(this.release(),this.inflightAbort.abort())}async cancelRecording(){if(!(this.status!=="recording"||!this.recorder)){this.release(),this.stopLevelLoop();try{await this.recorder.stop()}catch{}}}async cancel(){this.status==="recording"?await this.cancelRecording():this.status==="transcribing"&&this.cancelTranscribing()}fail(e){this.release(),this.status="error",this.error=e}}const N=new k;export{F as a,B as d,L as l,N as v};
|
|
2
|
+
//# sourceMappingURL=76AmYzaD.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WcCQ-aQB.js","sources":["../../../../../../src/lib/stores/drawer.svelte.ts","../../../../../../src/lib/voice/recorder.ts","../../../../../../src/lib/stores/voice.svelte.ts"],"sourcesContent":["/**\n * Whether the sidebar drawer is open on narrow viewports.\n *\n * The session page's composer carries the toggle now that the page header is\n * gone, and the layout owns the drawer itself — so the two talk through this\n * rather than through a floating button drawn over the transcript.\n */\nclass DrawerStore {\n open = $state(false);\n\n toggle() {\n this.open = !this.open;\n }\n\n close() {\n this.open = false;\n }\n}\n\nexport const drawer = new DrawerStore();\n","export interface RecorderResult {\n\tblob: Blob;\n\tmimeType: string;\n\tdurationMs: number;\n}\n\nconst PREFERRED_MIME = [\n\t'audio/webm;codecs=opus',\n\t'audio/webm',\n\t'audio/ogg;codecs=opus',\n\t'audio/mp4'\n];\n\nfunction pickMimeType(): string {\n\tif (typeof MediaRecorder === 'undefined') return '';\n\tfor (const m of PREFERRED_MIME) {\n\t\tif (MediaRecorder.isTypeSupported(m)) return m;\n\t}\n\treturn '';\n}\n\nexport interface AudioLevel {\n\trms: number;\n\tpeak: number;\n}\n\nexport interface RecorderStartOptions {\n\tgain?: number;\n\tnoiseSuppression?: boolean;\n}\n\nexport class VoiceRecorder {\n\tprivate stream: MediaStream | null = null;\n\tprivate recorder: MediaRecorder | null = null;\n\tprivate chunks: Blob[] = [];\n\tprivate startedAt = 0;\n\tprivate pending: { resolve: (r: RecorderResult) => void; reject: (e: Error) => void } | null =\n\t\tnull;\n\tprivate audioCtx: AudioContext | null = null;\n\tprivate analyser: AnalyserNode | null = null;\n\tprivate timeBuf: Float32Array<ArrayBuffer> | null = null;\n\tprivate gainNode: GainNode | null = null;\n\n\tasync start(\n\t\tdeviceId?: string | null,\n\t\topts: RecorderStartOptions = {}\n\t): Promise<{ fellBackToDefault: boolean }> {\n\t\tif (this.recorder && this.recorder.state === 'recording') {\n\t\t\tthrow new Error('Already recording');\n\t\t}\n\n\t\tconst gain = Math.max(0.1, Math.min(10, opts.gain ?? 1));\n\t\tconst useGainStage = gain !== 1;\n\t\tconst noiseSuppression = opts.noiseSuppression ?? true;\n\n\t\tconst audio: MediaTrackConstraints = {\n\t\t\techoCancellation: true,\n\t\t\tnoiseSuppression,\n\t\t\tautoGainControl: true\n\t\t};\n\t\tif (deviceId) audio.deviceId = { exact: deviceId };\n\n\t\tlet fellBackToDefault = false;\n\t\ttry {\n\t\t\tthis.stream = await navigator.mediaDevices.getUserMedia({ audio });\n\t\t} catch (err) {\n\t\t\tif (deviceId && err instanceof Error && err.name === 'OverconstrainedError') {\n\t\t\t\tdelete audio.deviceId;\n\t\t\t\tthis.stream = await navigator.mediaDevices.getUserMedia({ audio });\n\t\t\t\tfellBackToDefault = true;\n\t\t\t} else {\n\t\t\t\tthrow err;\n\t\t\t}\n\t\t}\n\n\t\t// Build WebAudio graph: source -> [gain] -> analyser (for meter) and -> destination (for recorder).\n\t\t// When gain == 1 we still split to attach the analyser, but skip the synthetic destination\n\t\t// so the recorder consumes the original mic stream directly (lower CPU, no resampling).\n\t\tlet recordStream: MediaStream = this.stream;\n\t\ttry {\n\t\t\tconst Ctor =\n\t\t\t\twindow.AudioContext ??\n\t\t\t\t(window as unknown as { webkitAudioContext?: typeof AudioContext }).webkitAudioContext;\n\t\t\tif (Ctor) {\n\t\t\t\tthis.audioCtx = new Ctor();\n\t\t\t\tconst source = this.audioCtx.createMediaStreamSource(this.stream);\n\t\t\t\tconst analyser = this.audioCtx.createAnalyser();\n\t\t\t\tanalyser.fftSize = 1024;\n\t\t\t\tanalyser.smoothingTimeConstant = 0.4;\n\n\t\t\t\tif (useGainStage) {\n\t\t\t\t\tconst gainNode = this.audioCtx.createGain();\n\t\t\t\t\tgainNode.gain.value = gain;\n\t\t\t\t\tconst dest = this.audioCtx.createMediaStreamDestination();\n\t\t\t\t\tsource.connect(gainNode);\n\t\t\t\t\tgainNode.connect(analyser);\n\t\t\t\t\tgainNode.connect(dest);\n\t\t\t\t\tthis.gainNode = gainNode;\n\t\t\t\t\trecordStream = dest.stream;\n\t\t\t\t} else {\n\t\t\t\t\tsource.connect(analyser);\n\t\t\t\t}\n\n\t\t\t\tthis.analyser = analyser;\n\t\t\t\tthis.timeBuf = new Float32Array(analyser.fftSize);\n\t\t\t}\n\t\t} catch {\n\t\t\tthis.audioCtx = null;\n\t\t\tthis.analyser = null;\n\t\t\tthis.timeBuf = null;\n\t\t\tthis.gainNode = null;\n\t\t\trecordStream = this.stream;\n\t\t}\n\n\t\tconst mimeType = pickMimeType();\n\t\tconst options: MediaRecorderOptions = mimeType ? { mimeType } : {};\n\t\tthis.recorder = new MediaRecorder(recordStream, options);\n\t\tthis.chunks = [];\n\t\tthis.startedAt = performance.now();\n\n\t\tthis.recorder.ondataavailable = (e) => {\n\t\t\tif (e.data && e.data.size > 0) this.chunks.push(e.data);\n\t\t};\n\n\t\tthis.recorder.onstop = () => {\n\t\t\tconst used = this.recorder?.mimeType || mimeType || 'audio/webm';\n\t\t\tconst blob = new Blob(this.chunks, { type: used });\n\t\t\tconst durationMs = performance.now() - this.startedAt;\n\t\t\tthis.releaseStream();\n\t\t\tthis.pending?.resolve({ blob, mimeType: used, durationMs });\n\t\t\tthis.pending = null;\n\t\t};\n\n\t\tthis.recorder.onerror = (ev) => {\n\t\t\tconst err =\n\t\t\t\t(ev as unknown as { error?: Error }).error ??\n\t\t\t\tnew Error('MediaRecorder error');\n\t\t\tthis.releaseStream();\n\t\t\tthis.pending?.reject(err);\n\t\t\tthis.pending = null;\n\t\t};\n\n\t\tthis.recorder.start();\n\t\treturn { fellBackToDefault };\n\t}\n\n\tasync stop(): Promise<RecorderResult> {\n\t\tconst rec = this.recorder;\n\t\tif (!rec || rec.state === 'inactive') {\n\t\t\tthrow new Error('Not recording');\n\t\t}\n\n\t\treturn new Promise<RecorderResult>((resolve, reject) => {\n\t\t\tthis.pending = { resolve, reject };\n\t\t\trec.stop();\n\t\t});\n\t}\n\n\tgetLevel(): AudioLevel | null {\n\t\tif (!this.analyser || !this.timeBuf) return null;\n\t\tthis.analyser.getFloatTimeDomainData(this.timeBuf);\n\t\tlet sumSq = 0;\n\t\tlet peak = 0;\n\t\tfor (let i = 0; i < this.timeBuf.length; i++) {\n\t\t\tconst v = this.timeBuf[i];\n\t\t\tsumSq += v * v;\n\t\t\tconst a = v < 0 ? -v : v;\n\t\t\tif (a > peak) peak = a;\n\t\t}\n\t\tconst rms = Math.sqrt(sumSq / this.timeBuf.length);\n\t\treturn { rms, peak };\n\t}\n\n\tprivate releaseStream(): void {\n\t\tif (this.stream) {\n\t\t\tfor (const t of this.stream.getTracks()) t.stop();\n\t\t\tthis.stream = null;\n\t\t}\n\t\tif (this.audioCtx) {\n\t\t\tvoid this.audioCtx.close().catch(() => {});\n\t\t\tthis.audioCtx = null;\n\t\t}\n\t\tthis.analyser = null;\n\t\tthis.timeBuf = null;\n\t\tthis.gainNode = null;\n\t}\n}\n\nexport function isVoiceSupported(): boolean {\n\treturn voiceUnsupportedReason() === null;\n}\n\nexport function voiceUnsupportedReason(): string | null {\n\tif (typeof navigator === 'undefined') return 'No navigator (SSR).';\n\tif (typeof window !== 'undefined' && window.isSecureContext === false) {\n\t\treturn 'Voice requires HTTPS or localhost. Open this page over HTTPS.';\n\t}\n\tif (!navigator.mediaDevices?.getUserMedia) {\n\t\treturn 'Browser blocks microphone access. Open over HTTPS or use a supported browser.';\n\t}\n\tif (typeof MediaRecorder === 'undefined') {\n\t\treturn 'MediaRecorder API unavailable in this browser.';\n\t}\n\tif (pickMimeType() === '') {\n\t\treturn 'No supported audio codec (webm/ogg/mp4). Try another browser.';\n\t}\n\treturn null;\n}\n\nexport interface AudioInputDevice {\n\tdeviceId: string;\n\tlabel: string;\n}\n\nexport async function listAudioInputs(): Promise<AudioInputDevice[]> {\n\tif (typeof navigator === 'undefined' || !navigator.mediaDevices?.enumerateDevices) {\n\t\treturn [];\n\t}\n\tconst devices = await navigator.mediaDevices.enumerateDevices();\n\treturn devices\n\t\t.filter((d) => d.kind === 'audioinput')\n\t\t.map((d) => ({ deviceId: d.deviceId, label: d.label || 'Microphone' }));\n}\n","import { browser } from '$app/environment';\nimport {\n\tVoiceRecorder,\n\tisVoiceSupported,\n\tvoiceUnsupportedReason,\n\ttype RecorderResult\n} from '$lib/voice/recorder';\nimport { createPersisted } from './persisted';\n\nexport type VoiceStatus = 'idle' | 'recording' | 'transcribing' | 'error';\nexport type VoiceLanguage = 'auto' | 'en' | 'pt';\n\nconst MIN_UTTERANCE_MS = 200;\n\n/** What a take came to: the words, and whether they resolved to a slash command. */\nexport interface Dictation {\n\ttext: string;\n\tcommand: boolean;\n}\n\n/** A field's text with what was just said added to the end of it. */\nexport function appendSaid(draft: string, said: string): string {\n\treturn draft.trim() ? `${draft.trimEnd()} ${said}` : said;\n}\n\ninterface PersistedSettings {\n\tlanguage: VoiceLanguage;\n\tautoSubmit: boolean;\n\tdeviceId: string | null;\n\tgain: number;\n\tnoiseSuppression: boolean;\n}\n\nconst persisted = createPersisted<PersistedSettings>('claude-mux-voice-settings', {\n\tlanguage: 'auto',\n\tautoSubmit: true,\n\tdeviceId: null,\n\tgain: 1,\n\tnoiseSuppression: true\n});\n\nclass VoiceStore {\n\tstatus = $state<VoiceStatus>('idle');\n\terror = $state<string | null>(null);\n\tstartedAt = $state<number | null>(null);\n\tlevel = $state<{ rms: number; peak: number }>({ rms: 0, peak: 0 });\n\townerTarget = $state<string | null>(null);\n\t/**\n\t * Which field of that session asked for the take: null for the composer,\n\t * otherwise the id a question's own microphone gave itself. Only the field\n\t * that started a take may stop it, since the words are its to receive.\n\t */\n\townerField = $state<string | null>(null);\n\n\tprivate prefs = $state<PersistedSettings>(persisted.load());\n\tprivate recorder: VoiceRecorder | null = null;\n\tprivate inflightAbort: AbortController | null = null;\n\tprivate levelRaf: number | null = null;\n\n\tget supported(): boolean {\n\t\treturn browser && isVoiceSupported();\n\t}\n\n\tget unsupportedReason(): string | null {\n\t\tif (!browser) return null;\n\t\treturn voiceUnsupportedReason();\n\t}\n\n\tget isActive(): boolean {\n\t\treturn this.status === 'recording' || this.status === 'transcribing';\n\t}\n\n\tisOwnedBy(target: string | null, field: string | null = null): boolean {\n\t\treturn target != null && this.ownerTarget === target && this.ownerField === field;\n\t}\n\n\tget language(): VoiceLanguage {\n\t\treturn this.prefs.language;\n\t}\n\tset language(v: VoiceLanguage) {\n\t\tif (this.prefs.language === v) return;\n\t\tthis.prefs.language = v;\n\t\tpersisted.save(this.prefs);\n\t}\n\n\tget autoSubmit(): boolean {\n\t\treturn this.prefs.autoSubmit;\n\t}\n\tset autoSubmit(v: boolean) {\n\t\tif (this.prefs.autoSubmit === v) return;\n\t\tthis.prefs.autoSubmit = v;\n\t\tpersisted.save(this.prefs);\n\t}\n\n\tget deviceId(): string | null {\n\t\treturn this.prefs.deviceId;\n\t}\n\tset deviceId(v: string | null) {\n\t\tif (this.prefs.deviceId === v) return;\n\t\tthis.prefs.deviceId = v;\n\t\tpersisted.save(this.prefs);\n\t}\n\n\tget gain(): number {\n\t\treturn this.prefs.gain;\n\t}\n\tset gain(v: number) {\n\t\tconst clamped = Math.max(0.1, Math.min(10, v));\n\t\tif (this.prefs.gain === clamped) return;\n\t\tthis.prefs.gain = clamped;\n\t\tpersisted.save(this.prefs);\n\t}\n\n\tget noiseSuppression(): boolean {\n\t\treturn this.prefs.noiseSuppression;\n\t}\n\tset noiseSuppression(v: boolean) {\n\t\tif (this.prefs.noiseSuppression === v) return;\n\t\tthis.prefs.noiseSuppression = v;\n\t\tpersisted.save(this.prefs);\n\t}\n\n\tasync startRecording(target: string, field: string | null = null): Promise<void> {\n\t\tif (this.isActive) return;\n\t\tif (!this.supported) {\n\t\t\tthis.fail('Voice not supported in this browser');\n\t\t\treturn;\n\t\t}\n\t\tif (!target) {\n\t\t\tthis.fail('No target for voice recording');\n\t\t\treturn;\n\t\t}\n\n\t\ttry {\n\t\t\tif (!this.recorder) this.recorder = new VoiceRecorder();\n\t\t\tconst result = await this.recorder.start(this.deviceId, {\n\t\t\t\tgain: this.gain,\n\t\t\t\tnoiseSuppression: this.noiseSuppression\n\t\t\t});\n\t\t\tif (result.fellBackToDefault && this.deviceId !== null) {\n\t\t\t\t// Saved device disappeared; clear so the picker reflects reality.\n\t\t\t\tthis.deviceId = null;\n\t\t\t}\n\t\t\tthis.ownerTarget = target;\n\t\t\tthis.ownerField = field;\n\t\t\tthis.status = 'recording';\n\t\t\tthis.error = null;\n\t\t\tthis.startedAt = Date.now();\n\t\t\tthis.startLevelLoop();\n\t\t} catch (err) {\n\t\t\tthis.fail(err instanceof Error ? err.message : 'Microphone access denied');\n\t\t}\n\t}\n\n\tprivate startLevelLoop(): void {\n\t\tthis.stopLevelLoop();\n\t\tconst tick = (): void => {\n\t\t\tif (this.status !== 'recording' || !this.recorder) {\n\t\t\t\tthis.levelRaf = null;\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst lvl = this.recorder.getLevel();\n\t\t\tif (lvl) this.level = lvl;\n\t\t\tthis.levelRaf = requestAnimationFrame(tick);\n\t\t};\n\t\tthis.levelRaf = requestAnimationFrame(tick);\n\t}\n\n\tprivate stopLevelLoop(): void {\n\t\tif (this.levelRaf !== null) {\n\t\t\tcancelAnimationFrame(this.levelRaf);\n\t\t\tthis.levelRaf = null;\n\t\t}\n\t\tthis.level = { rms: 0, peak: 0 };\n\t}\n\n\t/**\n\t * End the take and resolve with what was said, or null when there is\n\t * nothing to show for it (too short, cancelled, or failed, in which case\n\t * `error` says why). The words are the caller's to place: this store\n\t * records and transcribes, and delivers nothing.\n\t */\n\tasync stop(): Promise<Dictation | null> {\n\t\tif (this.status !== 'recording' || !this.recorder) return null;\n\t\tconst target = this.ownerTarget;\n\t\tif (!target) {\n\t\t\t// Should never happen — ownerTarget is set in lockstep with status='recording'.\n\t\t\tthis.fail('Voice owner missing');\n\t\t\treturn null;\n\t\t}\n\n\t\tthis.stopLevelLoop();\n\t\tlet result: RecorderResult;\n\t\ttry {\n\t\t\tresult = await this.recorder.stop();\n\t\t} catch (err) {\n\t\t\tthis.fail(err instanceof Error ? err.message : 'Recording failed');\n\t\t\treturn null;\n\t\t}\n\n\t\t// Cancel may have flipped status to idle while we awaited recorder.stop().\n\t\tif (this.status !== 'recording') return null;\n\n\t\tif (result.blob.size === 0 || result.durationMs < MIN_UTTERANCE_MS) {\n\t\t\tthis.release();\n\t\t\treturn null;\n\t\t}\n\n\t\tthis.status = 'transcribing';\n\t\tthis.startedAt = null;\n\n\t\tconst ac = new AbortController();\n\t\tthis.inflightAbort = ac;\n\t\tconst qs = this.language === 'auto' ? '' : `?lang=${this.language}`;\n\n\t\ttry {\n\t\t\tconst res = await fetch(`/api/sessions/${encodeURIComponent(target)}/voice${qs}`, {\n\t\t\t\tmethod: 'POST',\n\t\t\t\theaders: { 'Content-Type': result.mimeType },\n\t\t\t\tbody: result.blob,\n\t\t\t\tsignal: ac.signal\n\t\t\t});\n\n\t\t\tif (!res.ok) {\n\t\t\t\tconst body = await res.text().catch(() => '');\n\t\t\t\tthrow new Error(body || `HTTP ${res.status}`);\n\t\t\t}\n\n\t\t\tconst data = (await res.json()) as { text?: string; command?: boolean };\n\t\t\tthis.release();\n\t\t\tconst text = (data.text ?? '').trim();\n\t\t\treturn text ? { text, command: data.command === true } : null;\n\t\t} catch (err) {\n\t\t\tif (ac.signal.aborted) {\n\t\t\t\tthis.error = null;\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\tthis.fail(err instanceof Error ? err.message : 'Transcription failed');\n\t\t\treturn null;\n\t\t} finally {\n\t\t\tif (this.inflightAbort === ac) this.inflightAbort = null;\n\t\t}\n\t}\n\n\tprivate release(): void {\n\t\tthis.status = 'idle';\n\t\tthis.startedAt = null;\n\t\tthis.ownerTarget = null;\n\t\tthis.ownerField = null;\n\t}\n\n\tcancelTranscribing(): void {\n\t\tif (this.status !== 'transcribing' || !this.inflightAbort) return;\n\t\t// Flip status synchronously so a follow-up startRecording() in the same tick\n\t\t// doesn't bail on the still-transcribing guard before the catch handler runs.\n\t\tthis.release();\n\t\tthis.inflightAbort.abort();\n\t}\n\n\tprivate async cancelRecording(): Promise<void> {\n\t\tif (this.status !== 'recording' || !this.recorder) return;\n\t\tthis.release();\n\t\tthis.stopLevelLoop();\n\t\ttry {\n\t\t\tawait this.recorder.stop();\n\t\t} catch {\n\t\t\t// recorder already torn down; nothing to do\n\t\t}\n\t}\n\n\tasync cancel(): Promise<void> {\n\t\tif (this.status === 'recording') {\n\t\t\tawait this.cancelRecording();\n\t\t} else if (this.status === 'transcribing') {\n\t\t\tthis.cancelTranscribing();\n\t\t}\n\t}\n\n\tprivate fail(message: string): void {\n\t\tthis.release();\n\t\tthis.status = 'error';\n\t\tthis.error = message;\n\t}\n}\n\nexport const voiceStore = new VoiceStore();\n"],"names":["DrawerStore","$.state","value","drawer","PREFERRED_MIME","pickMimeType","m","VoiceRecorder","deviceId","opts","gain","useGainStage","audio","fellBackToDefault","err","recordStream","Ctor","source","analyser","gainNode","dest","mimeType","options","e","used","blob","durationMs","ev","rec","resolve","reject","sumSq","peak","i","v","a","t","isVoiceSupported","voiceUnsupportedReason","listAudioInputs","d","MIN_UTTERANCE_MS","appendSaid","draft","said","persisted","createPersisted","VoiceStore","$.proxy","#prefs","target","field","clamped","tick","lvl","result","ac","qs","res","body","data","text","message","voiceStore"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"76AmYzaD.js","sources":["../../../../../../src/lib/stores/drawer.svelte.ts","../../../../../../src/lib/voice/recorder.ts","../../../../../../src/lib/stores/voice.svelte.ts"],"sourcesContent":["/**\n * Whether the sidebar drawer is open on narrow viewports.\n *\n * The session page's composer carries the toggle now that the page header is\n * gone, and the layout owns the drawer itself — so the two talk through this\n * rather than through a floating button drawn over the transcript.\n */\nclass DrawerStore {\n open = $state(false);\n\n toggle() {\n this.open = !this.open;\n }\n\n close() {\n this.open = false;\n }\n}\n\nexport const drawer = new DrawerStore();\n","export interface RecorderResult {\n\tblob: Blob;\n\tmimeType: string;\n\tdurationMs: number;\n}\n\nconst PREFERRED_MIME = [\n\t'audio/webm;codecs=opus',\n\t'audio/webm',\n\t'audio/ogg;codecs=opus',\n\t'audio/mp4'\n];\n\nfunction pickMimeType(): string {\n\tif (typeof MediaRecorder === 'undefined') return '';\n\tfor (const m of PREFERRED_MIME) {\n\t\tif (MediaRecorder.isTypeSupported(m)) return m;\n\t}\n\treturn '';\n}\n\nexport interface AudioLevel {\n\trms: number;\n\tpeak: number;\n}\n\nexport interface RecorderStartOptions {\n\tgain?: number;\n\tnoiseSuppression?: boolean;\n}\n\nexport class VoiceRecorder {\n\tprivate stream: MediaStream | null = null;\n\tprivate recorder: MediaRecorder | null = null;\n\tprivate chunks: Blob[] = [];\n\tprivate startedAt = 0;\n\tprivate pending: { resolve: (r: RecorderResult) => void; reject: (e: Error) => void } | null =\n\t\tnull;\n\tprivate audioCtx: AudioContext | null = null;\n\tprivate analyser: AnalyserNode | null = null;\n\tprivate timeBuf: Float32Array<ArrayBuffer> | null = null;\n\tprivate gainNode: GainNode | null = null;\n\n\tasync start(\n\t\tdeviceId?: string | null,\n\t\topts: RecorderStartOptions = {}\n\t): Promise<{ fellBackToDefault: boolean }> {\n\t\tif (this.recorder && this.recorder.state === 'recording') {\n\t\t\tthrow new Error('Already recording');\n\t\t}\n\n\t\tconst gain = Math.max(0.1, Math.min(10, opts.gain ?? 1));\n\t\tconst useGainStage = gain !== 1;\n\t\tconst noiseSuppression = opts.noiseSuppression ?? true;\n\n\t\tconst audio: MediaTrackConstraints = {\n\t\t\techoCancellation: true,\n\t\t\tnoiseSuppression,\n\t\t\tautoGainControl: true\n\t\t};\n\t\tif (deviceId) audio.deviceId = { exact: deviceId };\n\n\t\tlet fellBackToDefault = false;\n\t\ttry {\n\t\t\tthis.stream = await navigator.mediaDevices.getUserMedia({ audio });\n\t\t} catch (err) {\n\t\t\tif (deviceId && err instanceof Error && err.name === 'OverconstrainedError') {\n\t\t\t\tdelete audio.deviceId;\n\t\t\t\tthis.stream = await navigator.mediaDevices.getUserMedia({ audio });\n\t\t\t\tfellBackToDefault = true;\n\t\t\t} else {\n\t\t\t\tthrow err;\n\t\t\t}\n\t\t}\n\n\t\t// Build WebAudio graph: source -> [gain] -> analyser (for meter) and -> destination (for recorder).\n\t\t// When gain == 1 we still split to attach the analyser, but skip the synthetic destination\n\t\t// so the recorder consumes the original mic stream directly (lower CPU, no resampling).\n\t\tlet recordStream: MediaStream = this.stream;\n\t\ttry {\n\t\t\tconst Ctor =\n\t\t\t\twindow.AudioContext ??\n\t\t\t\t(window as unknown as { webkitAudioContext?: typeof AudioContext }).webkitAudioContext;\n\t\t\tif (Ctor) {\n\t\t\t\tthis.audioCtx = new Ctor();\n\t\t\t\tconst source = this.audioCtx.createMediaStreamSource(this.stream);\n\t\t\t\tconst analyser = this.audioCtx.createAnalyser();\n\t\t\t\tanalyser.fftSize = 1024;\n\t\t\t\tanalyser.smoothingTimeConstant = 0.4;\n\n\t\t\t\tif (useGainStage) {\n\t\t\t\t\tconst gainNode = this.audioCtx.createGain();\n\t\t\t\t\tgainNode.gain.value = gain;\n\t\t\t\t\tconst dest = this.audioCtx.createMediaStreamDestination();\n\t\t\t\t\tsource.connect(gainNode);\n\t\t\t\t\tgainNode.connect(analyser);\n\t\t\t\t\tgainNode.connect(dest);\n\t\t\t\t\tthis.gainNode = gainNode;\n\t\t\t\t\trecordStream = dest.stream;\n\t\t\t\t} else {\n\t\t\t\t\tsource.connect(analyser);\n\t\t\t\t}\n\n\t\t\t\tthis.analyser = analyser;\n\t\t\t\tthis.timeBuf = new Float32Array(analyser.fftSize);\n\t\t\t}\n\t\t} catch {\n\t\t\tthis.audioCtx = null;\n\t\t\tthis.analyser = null;\n\t\t\tthis.timeBuf = null;\n\t\t\tthis.gainNode = null;\n\t\t\trecordStream = this.stream;\n\t\t}\n\n\t\tconst mimeType = pickMimeType();\n\t\tconst options: MediaRecorderOptions = mimeType ? { mimeType } : {};\n\t\tthis.recorder = new MediaRecorder(recordStream, options);\n\t\tthis.chunks = [];\n\t\tthis.startedAt = performance.now();\n\n\t\tthis.recorder.ondataavailable = (e) => {\n\t\t\tif (e.data && e.data.size > 0) this.chunks.push(e.data);\n\t\t};\n\n\t\tthis.recorder.onstop = () => {\n\t\t\tconst used = this.recorder?.mimeType || mimeType || 'audio/webm';\n\t\t\tconst blob = new Blob(this.chunks, { type: used });\n\t\t\tconst durationMs = performance.now() - this.startedAt;\n\t\t\tthis.releaseStream();\n\t\t\tthis.pending?.resolve({ blob, mimeType: used, durationMs });\n\t\t\tthis.pending = null;\n\t\t};\n\n\t\tthis.recorder.onerror = (ev) => {\n\t\t\tconst err =\n\t\t\t\t(ev as unknown as { error?: Error }).error ??\n\t\t\t\tnew Error('MediaRecorder error');\n\t\t\tthis.releaseStream();\n\t\t\tthis.pending?.reject(err);\n\t\t\tthis.pending = null;\n\t\t};\n\n\t\tthis.recorder.start();\n\t\treturn { fellBackToDefault };\n\t}\n\n\tasync stop(): Promise<RecorderResult> {\n\t\tconst rec = this.recorder;\n\t\tif (!rec || rec.state === 'inactive') {\n\t\t\tthrow new Error('Not recording');\n\t\t}\n\n\t\treturn new Promise<RecorderResult>((resolve, reject) => {\n\t\t\tthis.pending = { resolve, reject };\n\t\t\trec.stop();\n\t\t});\n\t}\n\n\tgetLevel(): AudioLevel | null {\n\t\tif (!this.analyser || !this.timeBuf) return null;\n\t\tthis.analyser.getFloatTimeDomainData(this.timeBuf);\n\t\tlet sumSq = 0;\n\t\tlet peak = 0;\n\t\tfor (let i = 0; i < this.timeBuf.length; i++) {\n\t\t\tconst v = this.timeBuf[i];\n\t\t\tsumSq += v * v;\n\t\t\tconst a = v < 0 ? -v : v;\n\t\t\tif (a > peak) peak = a;\n\t\t}\n\t\tconst rms = Math.sqrt(sumSq / this.timeBuf.length);\n\t\treturn { rms, peak };\n\t}\n\n\tprivate releaseStream(): void {\n\t\tif (this.stream) {\n\t\t\tfor (const t of this.stream.getTracks()) t.stop();\n\t\t\tthis.stream = null;\n\t\t}\n\t\tif (this.audioCtx) {\n\t\t\tvoid this.audioCtx.close().catch(() => {});\n\t\t\tthis.audioCtx = null;\n\t\t}\n\t\tthis.analyser = null;\n\t\tthis.timeBuf = null;\n\t\tthis.gainNode = null;\n\t}\n}\n\nexport function isVoiceSupported(): boolean {\n\treturn voiceUnsupportedReason() === null;\n}\n\nexport function voiceUnsupportedReason(): string | null {\n\tif (typeof navigator === 'undefined') return 'No navigator (SSR).';\n\tif (typeof window !== 'undefined' && window.isSecureContext === false) {\n\t\treturn 'Voice requires HTTPS or localhost. Open this page over HTTPS.';\n\t}\n\tif (!navigator.mediaDevices?.getUserMedia) {\n\t\treturn 'Browser blocks microphone access. Open over HTTPS or use a supported browser.';\n\t}\n\tif (typeof MediaRecorder === 'undefined') {\n\t\treturn 'MediaRecorder API unavailable in this browser.';\n\t}\n\tif (pickMimeType() === '') {\n\t\treturn 'No supported audio codec (webm/ogg/mp4). Try another browser.';\n\t}\n\treturn null;\n}\n\nexport interface AudioInputDevice {\n\tdeviceId: string;\n\tlabel: string;\n}\n\nexport async function listAudioInputs(): Promise<AudioInputDevice[]> {\n\tif (typeof navigator === 'undefined' || !navigator.mediaDevices?.enumerateDevices) {\n\t\treturn [];\n\t}\n\tconst devices = await navigator.mediaDevices.enumerateDevices();\n\treturn devices\n\t\t.filter((d) => d.kind === 'audioinput')\n\t\t.map((d) => ({ deviceId: d.deviceId, label: d.label || 'Microphone' }));\n}\n","import { browser } from '$app/environment';\nimport {\n\tVoiceRecorder,\n\tisVoiceSupported,\n\tvoiceUnsupportedReason,\n\ttype RecorderResult\n} from '$lib/voice/recorder';\nimport { createPersisted } from './persisted';\n\nexport type VoiceStatus = 'idle' | 'recording' | 'transcribing' | 'error';\nexport type VoiceLanguage = 'auto' | 'en' | 'pt';\n\nconst MIN_UTTERANCE_MS = 200;\n\n/** What a take came to: the words, and whether they resolved to a slash command. */\nexport interface Dictation {\n\ttext: string;\n\tcommand: boolean;\n}\n\n/** A field's text with what was just said added to the end of it. */\nexport function appendSaid(draft: string, said: string): string {\n\treturn draft.trim() ? `${draft.trimEnd()} ${said}` : said;\n}\n\ninterface PersistedSettings {\n\tlanguage: VoiceLanguage;\n\tautoSubmit: boolean;\n\tdeviceId: string | null;\n\tgain: number;\n\tnoiseSuppression: boolean;\n}\n\nconst persisted = createPersisted<PersistedSettings>('claude-mux-voice-settings', {\n\tlanguage: 'auto',\n\tautoSubmit: true,\n\tdeviceId: null,\n\tgain: 1,\n\tnoiseSuppression: true\n});\n\nclass VoiceStore {\n\tstatus = $state<VoiceStatus>('idle');\n\terror = $state<string | null>(null);\n\tstartedAt = $state<number | null>(null);\n\tlevel = $state<{ rms: number; peak: number }>({ rms: 0, peak: 0 });\n\townerTarget = $state<string | null>(null);\n\t/**\n\t * Which field of that session asked for the take: null for the composer,\n\t * otherwise the id a question's own microphone gave itself. Only the field\n\t * that started a take may stop it, since the words are its to receive.\n\t */\n\townerField = $state<string | null>(null);\n\n\tprivate prefs = $state<PersistedSettings>(persisted.load());\n\tprivate recorder: VoiceRecorder | null = null;\n\tprivate inflightAbort: AbortController | null = null;\n\tprivate levelRaf: number | null = null;\n\n\tget supported(): boolean {\n\t\treturn browser && isVoiceSupported();\n\t}\n\n\tget unsupportedReason(): string | null {\n\t\tif (!browser) return null;\n\t\treturn voiceUnsupportedReason();\n\t}\n\n\tget isActive(): boolean {\n\t\treturn this.status === 'recording' || this.status === 'transcribing';\n\t}\n\n\tisOwnedBy(target: string | null, field: string | null = null): boolean {\n\t\treturn target != null && this.ownerTarget === target && this.ownerField === field;\n\t}\n\n\tget language(): VoiceLanguage {\n\t\treturn this.prefs.language;\n\t}\n\tset language(v: VoiceLanguage) {\n\t\tif (this.prefs.language === v) return;\n\t\tthis.prefs.language = v;\n\t\tpersisted.save(this.prefs);\n\t}\n\n\tget autoSubmit(): boolean {\n\t\treturn this.prefs.autoSubmit;\n\t}\n\tset autoSubmit(v: boolean) {\n\t\tif (this.prefs.autoSubmit === v) return;\n\t\tthis.prefs.autoSubmit = v;\n\t\tpersisted.save(this.prefs);\n\t}\n\n\tget deviceId(): string | null {\n\t\treturn this.prefs.deviceId;\n\t}\n\tset deviceId(v: string | null) {\n\t\tif (this.prefs.deviceId === v) return;\n\t\tthis.prefs.deviceId = v;\n\t\tpersisted.save(this.prefs);\n\t}\n\n\tget gain(): number {\n\t\treturn this.prefs.gain;\n\t}\n\tset gain(v: number) {\n\t\tconst clamped = Math.max(0.1, Math.min(10, v));\n\t\tif (this.prefs.gain === clamped) return;\n\t\tthis.prefs.gain = clamped;\n\t\tpersisted.save(this.prefs);\n\t}\n\n\tget noiseSuppression(): boolean {\n\t\treturn this.prefs.noiseSuppression;\n\t}\n\tset noiseSuppression(v: boolean) {\n\t\tif (this.prefs.noiseSuppression === v) return;\n\t\tthis.prefs.noiseSuppression = v;\n\t\tpersisted.save(this.prefs);\n\t}\n\n\tasync startRecording(target: string, field: string | null = null): Promise<void> {\n\t\tif (this.isActive) return;\n\t\tif (!this.supported) {\n\t\t\tthis.fail('Voice not supported in this browser');\n\t\t\treturn;\n\t\t}\n\t\tif (!target) {\n\t\t\tthis.fail('No target for voice recording');\n\t\t\treturn;\n\t\t}\n\n\t\ttry {\n\t\t\tif (!this.recorder) this.recorder = new VoiceRecorder();\n\t\t\tconst result = await this.recorder.start(this.deviceId, {\n\t\t\t\tgain: this.gain,\n\t\t\t\tnoiseSuppression: this.noiseSuppression\n\t\t\t});\n\t\t\tif (result.fellBackToDefault && this.deviceId !== null) {\n\t\t\t\t// Saved device disappeared; clear so the picker reflects reality.\n\t\t\t\tthis.deviceId = null;\n\t\t\t}\n\t\t\tthis.ownerTarget = target;\n\t\t\tthis.ownerField = field;\n\t\t\tthis.status = 'recording';\n\t\t\tthis.error = null;\n\t\t\tthis.startedAt = Date.now();\n\t\t\tthis.startLevelLoop();\n\t\t} catch (err) {\n\t\t\tthis.fail(err instanceof Error ? err.message : 'Microphone access denied');\n\t\t}\n\t}\n\n\tprivate startLevelLoop(): void {\n\t\tthis.stopLevelLoop();\n\t\tconst tick = (): void => {\n\t\t\tif (this.status !== 'recording' || !this.recorder) {\n\t\t\t\tthis.levelRaf = null;\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst lvl = this.recorder.getLevel();\n\t\t\tif (lvl) this.level = lvl;\n\t\t\tthis.levelRaf = requestAnimationFrame(tick);\n\t\t};\n\t\tthis.levelRaf = requestAnimationFrame(tick);\n\t}\n\n\tprivate stopLevelLoop(): void {\n\t\tif (this.levelRaf !== null) {\n\t\t\tcancelAnimationFrame(this.levelRaf);\n\t\t\tthis.levelRaf = null;\n\t\t}\n\t\tthis.level = { rms: 0, peak: 0 };\n\t}\n\n\t/**\n\t * End the take and resolve with what was said, or null when there is\n\t * nothing to show for it (too short, cancelled, or failed, in which case\n\t * `error` says why). The words are the caller's to place: this store\n\t * records and transcribes, and delivers nothing.\n\t */\n\tasync stop(): Promise<Dictation | null> {\n\t\tif (this.status !== 'recording' || !this.recorder) return null;\n\t\tconst target = this.ownerTarget;\n\t\tif (!target) {\n\t\t\t// Should never happen — ownerTarget is set in lockstep with status='recording'.\n\t\t\tthis.fail('Voice owner missing');\n\t\t\treturn null;\n\t\t}\n\n\t\tthis.stopLevelLoop();\n\t\tlet result: RecorderResult;\n\t\ttry {\n\t\t\tresult = await this.recorder.stop();\n\t\t} catch (err) {\n\t\t\tthis.fail(err instanceof Error ? err.message : 'Recording failed');\n\t\t\treturn null;\n\t\t}\n\n\t\t// Cancel may have flipped status to idle while we awaited recorder.stop().\n\t\tif (this.status !== 'recording') return null;\n\n\t\tif (result.blob.size === 0 || result.durationMs < MIN_UTTERANCE_MS) {\n\t\t\tthis.release();\n\t\t\treturn null;\n\t\t}\n\n\t\tthis.status = 'transcribing';\n\t\tthis.startedAt = null;\n\n\t\tconst ac = new AbortController();\n\t\tthis.inflightAbort = ac;\n\t\tconst qs = this.language === 'auto' ? '' : `?lang=${this.language}`;\n\n\t\ttry {\n\t\t\tconst res = await fetch(`/api/sessions/${encodeURIComponent(target)}/voice${qs}`, {\n\t\t\t\tmethod: 'POST',\n\t\t\t\theaders: { 'Content-Type': result.mimeType },\n\t\t\t\tbody: result.blob,\n\t\t\t\tsignal: ac.signal\n\t\t\t});\n\n\t\t\tif (!res.ok) {\n\t\t\t\tconst body = await res.text().catch(() => '');\n\t\t\t\tthrow new Error(body || `HTTP ${res.status}`);\n\t\t\t}\n\n\t\t\tconst data = (await res.json()) as { text?: string; command?: boolean };\n\t\t\tthis.release();\n\t\t\tconst text = (data.text ?? '').trim();\n\t\t\treturn text ? { text, command: data.command === true } : null;\n\t\t} catch (err) {\n\t\t\tif (ac.signal.aborted) {\n\t\t\t\tthis.error = null;\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\tthis.fail(err instanceof Error ? err.message : 'Transcription failed');\n\t\t\treturn null;\n\t\t} finally {\n\t\t\tif (this.inflightAbort === ac) this.inflightAbort = null;\n\t\t}\n\t}\n\n\tprivate release(): void {\n\t\tthis.status = 'idle';\n\t\tthis.startedAt = null;\n\t\tthis.ownerTarget = null;\n\t\tthis.ownerField = null;\n\t}\n\n\tcancelTranscribing(): void {\n\t\tif (this.status !== 'transcribing' || !this.inflightAbort) return;\n\t\t// Flip status synchronously so a follow-up startRecording() in the same tick\n\t\t// doesn't bail on the still-transcribing guard before the catch handler runs.\n\t\tthis.release();\n\t\tthis.inflightAbort.abort();\n\t}\n\n\tprivate async cancelRecording(): Promise<void> {\n\t\tif (this.status !== 'recording' || !this.recorder) return;\n\t\tthis.release();\n\t\tthis.stopLevelLoop();\n\t\ttry {\n\t\t\tawait this.recorder.stop();\n\t\t} catch {\n\t\t\t// recorder already torn down; nothing to do\n\t\t}\n\t}\n\n\tasync cancel(): Promise<void> {\n\t\tif (this.status === 'recording') {\n\t\t\tawait this.cancelRecording();\n\t\t} else if (this.status === 'transcribing') {\n\t\t\tthis.cancelTranscribing();\n\t\t}\n\t}\n\n\tprivate fail(message: string): void {\n\t\tthis.release();\n\t\tthis.status = 'error';\n\t\tthis.error = message;\n\t}\n}\n\nexport const voiceStore = new VoiceStore();\n"],"names":["DrawerStore","$.state","value","drawer","PREFERRED_MIME","pickMimeType","m","VoiceRecorder","deviceId","opts","gain","useGainStage","audio","fellBackToDefault","err","recordStream","Ctor","source","analyser","gainNode","dest","mimeType","options","e","used","blob","durationMs","ev","rec","resolve","reject","sumSq","peak","i","v","a","t","isVoiceSupported","voiceUnsupportedReason","listAudioInputs","d","MIN_UTTERANCE_MS","appendSaid","draft","said","persisted","createPersisted","VoiceStore","$.proxy","#prefs","target","field","clamped","tick","lvl","result","ac","qs","res","body","data","text","message","voiceStore"],"mappings":"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"}
|