@antasphere/chassis-server 1.0.2 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,58 @@
1
+ import type { OpenAPIHono } from '@hono/zod-openapi';
2
+ import type { cliPackageRoute } from '@antasphere/chassis-contract/routes';
3
+ import { type Db } from '@antasphere/chassis-db';
4
+ import type { HubSsoService } from '../identity/hub-sso.js';
5
+ import type { CliPackage } from '../cli-package/index.js';
6
+ import type { Logger } from '../logger.js';
7
+ /**
8
+ * The tool's own CLI package (cloud edition ONLY, PRDCT-3312):
9
+ *
10
+ * POST /cli/package → verify a hub-minted 120 s exchange JWT (the same H3
11
+ * token `/sso/cli-connect` takes), burn its jti, stream the tarball the
12
+ * release packed (`CLI_PACKAGE_DIR`, cli-package/index.ts)
13
+ *
14
+ * The public `team` command installs each internal tool's private CLI from
15
+ * here: the hub mints the token only for a member it lets into the tool
16
+ * (its 403 `tool_access_denied` otherwise), so holding a valid one IS the
17
+ * access decision, and this route adds none of its own.
18
+ *
19
+ * Registered by create-api.ts ONLY when the instance boots EDITION=cloud,
20
+ * beside `/sso/cli-connect` and for the same reason: an oss boot never
21
+ * mounts this module, so the path answers the JSON 404 terminator there
22
+ * (zero hub surface). Rate-limited on the CLI-connect wall (the same hub
23
+ * token, the same cost).
24
+ *
25
+ * NOT a public path and unlisted in the machine scope allowlist, on
26
+ * purpose: the token rides in the BODY, never in `Authorization` (a
27
+ * three-part bearer reads as an OAuth token to the scope gate). A request
28
+ * carrying no credential reaches this handler with no principal; an API key
29
+ * or an OAuth bearer meets the fail-closed 403 `endpoint_not_allowed` before
30
+ * it (middleware/scopes.ts).
31
+ *
32
+ * Verification discipline is sso-connect.ts's, unchanged:
33
+ *
34
+ * - the token passes `HubSsoService.verifyConnectToken` — hub-JWKS
35
+ * signature, iss pinned to the hub, aud pinned to OUR resource URL,
36
+ * RS256 only, expiry, `purpose: 'sso-connect'` required, `jti` required;
37
+ * - the `jti` is consumed ONE-TIME-USE in the SAME `sso_connect_jtis`
38
+ * ledger, insert-first: a token spent here cannot then mint a key at
39
+ * `/sso/cli-connect`, and the other way round;
40
+ * - every verification failure (signature, iss, aud, purpose, expiry,
41
+ * replay) answers ONE uniform 401 — no oracle for probing tokens.
42
+ *
43
+ * Only after the token is spent does the route say whether a package
44
+ * exists (404 `cli_not_packaged`): an unverified caller learns nothing
45
+ * about the instance's release.
46
+ */
47
+ export interface CliPackageRouteDeps {
48
+ db: Db;
49
+ hubSso: HubSsoService;
50
+ /** What the boot read off `CLI_PACKAGE_DIR`; null = released without its CLI package. */
51
+ cliPackage: CliPackage | null;
52
+ logger: Logger;
53
+ routes: {
54
+ cliPackageRoute: typeof cliPackageRoute;
55
+ };
56
+ }
57
+ export declare function registerCliPackageRoutes(api: OpenAPIHono, deps: CliPackageRouteDeps): void;
58
+ //# sourceMappingURL=cli-package.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli-package.d.ts","sourceRoot":"","sources":["../../src/api/cli-package.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EAAkB,KAAK,EAAE,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,KAAK,EAAuB,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACjF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAI3C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AAEH,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,EAAE,CAAC;IACP,MAAM,EAAE,aAAa,CAAC;IACtB,yFAAyF;IACzF,UAAU,EAAE,UAAU,GAAG,IAAI,CAAC;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE;QAAE,eAAe,EAAE,OAAO,eAAe,CAAA;KAAE,CAAC;CACrD;AAED,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,mBAAmB,GAAG,IAAI,CAwF1F"}
@@ -0,0 +1,83 @@
1
+ import { createReadStream, statSync } from 'node:fs';
2
+ import { Readable } from 'node:stream';
3
+ import { lt, sql } from 'drizzle-orm';
4
+ import { ssoConnectJtis } from '@antasphere/chassis-db';
5
+ const err = (code, message) => ({ error: { code, message } });
6
+ export function registerCliPackageRoutes(api, deps) {
7
+ const { db, hubSso, cliPackage, logger } = deps;
8
+ const { cliPackageRoute } = deps.routes;
9
+ api.openapi(cliPackageRoute, async (c) => {
10
+ const body = c.req.valid('json');
11
+ // 1. Verify hard. One uniform 401 for every rejection reason.
12
+ let assertion;
13
+ try {
14
+ assertion = await hubSso.verifyConnectToken(body.token);
15
+ }
16
+ catch (cause) {
17
+ logger.warn({ err: cause }, 'cli package: exchange token rejected');
18
+ return c.json(err('invalid_token', 'The exchange token is invalid, expired, or already used'), 401);
19
+ }
20
+ // 2. Burn the jti (one-time-use, G8), in the ledger /sso/cli-connect
21
+ // burns into. Insert-first: the claim precedes any effect, so a replay —
22
+ // even a concurrent one — downloads nothing. The sweep keeps the ledger
23
+ // tiny; best-effort, never correctness-bearing (expired rows only shadow
24
+ // jtis of already-expired tokens).
25
+ void db
26
+ .delete(ssoConnectJtis)
27
+ .where(lt(ssoConnectJtis.expiresAt, sql `now() - interval '1 minute'`))
28
+ .catch(() => { });
29
+ const claimed = await db
30
+ .insert(ssoConnectJtis)
31
+ .values({ jti: assertion.jti, expiresAt: assertion.expiresAt })
32
+ .onConflictDoNothing()
33
+ .returning({ jti: ssoConnectJtis.jti });
34
+ if (claimed.length === 0) {
35
+ logger.warn({ jti: assertion.jti }, 'cli package: replayed jti rejected');
36
+ return c.json(err('invalid_token', 'The exchange token is invalid, expired, or already used'), 401);
37
+ }
38
+ // 3. Released without its CLI package: say so, with a sentence the
39
+ // `team` command can print as it is. The boot's read names what the
40
+ // image packed; the file is statted again HERE, after the burn, so a
41
+ // folder changed under a running instance answers the same 404 instead
42
+ // of a 200 whose body and length disagree.
43
+ const notPackaged = () => c.json(err('cli_not_packaged', 'This instance was released without its CLI package, so it has none to serve'), 404);
44
+ if (cliPackage === null)
45
+ return notPackaged();
46
+ let stat;
47
+ try {
48
+ stat = statSync(cliPackage.path);
49
+ }
50
+ catch (cause) {
51
+ logger.error({ err: cause, path: cliPackage.path }, 'cli package: the tarball read at boot is gone');
52
+ return notPackaged();
53
+ }
54
+ if (!stat.isFile()) {
55
+ logger.error({ path: cliPackage.path }, 'cli package: the tarball read at boot is no longer a file');
56
+ return notPackaged();
57
+ }
58
+ // 4. Stream the tarball. The bytes are the release's, never a person's,
59
+ // but they are served as an attachment and never sniffed all the same;
60
+ // no-store, so a shared cache never answers the next exchange.
61
+ logger.info({
62
+ hubSub: assertion.sub,
63
+ email: assertion.email,
64
+ package: cliPackage.name,
65
+ version: cliPackage.version
66
+ }, 'cli package: served');
67
+ const nodeStream = createReadStream(cliPackage.path);
68
+ // Backpressure rides Readable.toWeb; a client abort must destroy the
69
+ // source or every abandoned download leaks a descriptor (files/serve.ts).
70
+ c.req.raw.signal.addEventListener('abort', () => nodeStream.destroy());
71
+ const web = Readable.toWeb(nodeStream);
72
+ return c.body(web, 200, {
73
+ 'content-type': 'application/gzip',
74
+ 'content-disposition': `attachment; filename="${cliPackage.filename}"`,
75
+ // The size statted now, never the boot's: the header and the bytes agree.
76
+ 'content-length': String(stat.size),
77
+ // Also set on every response by the global security-headers middleware.
78
+ 'x-content-type-options': 'nosniff',
79
+ 'cache-control': 'no-store'
80
+ });
81
+ });
82
+ }
83
+ //# sourceMappingURL=cli-package.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli-package.js","sourceRoot":"","sources":["../../src/api/cli-package.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAc,MAAM,SAAS,CAAC;AACjE,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAEtC,OAAO,EAAE,cAAc,EAAW,MAAM,wBAAwB,CAAC;AAKjE,MAAM,GAAG,GAAG,CAAC,IAAY,EAAE,OAAe,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;AAoD9E,MAAM,UAAU,wBAAwB,CAAC,GAAgB,EAAE,IAAyB;IAClF,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAChD,MAAM,EAAE,eAAe,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC;IAExC,GAAG,CAAC,OAAO,CAAC,eAAe,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QACvC,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAEjC,8DAA8D;QAC9D,IAAI,SAA8B,CAAC;QACnC,IAAI,CAAC;YACH,SAAS,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,sCAAsC,CAAC,CAAC;YACpE,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,yDAAyD,CAAC,EAAE,GAAG,CAAC,CAAC;QACtG,CAAC;QAED,qEAAqE;QACrE,yEAAyE;QACzE,wEAAwE;QACxE,yEAAyE;QACzE,mCAAmC;QACnC,KAAK,EAAE;aACJ,MAAM,CAAC,cAAc,CAAC;aACtB,KAAK,CAAC,EAAE,CAAC,cAAc,CAAC,SAAS,EAAE,GAAG,CAAA,6BAA6B,CAAC,CAAC;aACrE,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACnB,MAAM,OAAO,GAAG,MAAM,EAAE;aACrB,MAAM,CAAC,cAAc,CAAC;aACtB,MAAM,CAAC,EAAE,GAAG,EAAE,SAAS,CAAC,GAAG,EAAE,SAAS,EAAE,SAAS,CAAC,SAAS,EAAE,CAAC;aAC9D,mBAAmB,EAAE;aACrB,SAAS,CAAC,EAAE,GAAG,EAAE,cAAc,CAAC,GAAG,EAAE,CAAC,CAAC;QAC1C,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,SAAS,CAAC,GAAG,EAAE,EAAE,oCAAoC,CAAC,CAAC;YAC1E,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,yDAAyD,CAAC,EAAE,GAAG,CAAC,CAAC;QACtG,CAAC;QAED,mEAAmE;QACnE,oEAAoE;QACpE,qEAAqE;QACrE,uEAAuE;QACvE,2CAA2C;QAC3C,MAAM,WAAW,GAAG,GAAG,EAAE,CACvB,CAAC,CAAC,IAAI,CACJ,GAAG,CACD,kBAAkB,EAClB,6EAA6E,CAC9E,EACD,GAAG,CACJ,CAAC;QACJ,IAAI,UAAU,KAAK,IAAI;YAAE,OAAO,WAAW,EAAE,CAAC;QAC9C,IAAI,IAAW,CAAC;QAChB,IAAI,CAAC;YACH,IAAI,GAAG,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACnC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,EAAE,+CAA+C,CAAC,CAAC;YACrG,OAAO,WAAW,EAAE,CAAC;QACvB,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC;YACnB,MAAM,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,EAAE,2DAA2D,CAAC,CAAC;YACrG,OAAO,WAAW,EAAE,CAAC;QACvB,CAAC;QAED,wEAAwE;QACxE,uEAAuE;QACvE,+DAA+D;QAC/D,MAAM,CAAC,IAAI,CACT;YACE,MAAM,EAAE,SAAS,CAAC,GAAG;YACrB,KAAK,EAAE,SAAS,CAAC,KAAK;YACtB,OAAO,EAAE,UAAU,CAAC,IAAI;YACxB,OAAO,EAAE,UAAU,CAAC,OAAO;SAC5B,EACD,qBAAqB,CACtB,CAAC;QACF,MAAM,UAAU,GAAG,gBAAgB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACrD,qEAAqE;QACrE,0EAA0E;QAC1E,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC;QACvE,MAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,UAAU,CAA8B,CAAC;QACpE,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE;YACtB,cAAc,EAAE,kBAAkB;YAClC,qBAAqB,EAAE,yBAAyB,UAAU,CAAC,QAAQ,GAAG;YACtE,0EAA0E;YAC1E,gBAAgB,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;YACnC,wEAAwE;YACxE,wBAAwB,EAAE,SAAS;YACnC,eAAe,EAAE,UAAU;SAC5B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"create-api.d.ts","sourceRoot":"","sources":["../../src/api/create-api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create-api.d.ts","sourceRoot":"","sources":["../../src/api/create-api.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ import { registerOpenApiDoc } from './index.js';
6
6
  import { ulid } from 'ulid';
7
7
  import { and, asc, desc, eq } from 'drizzle-orm';
8
8
  import { ACTIVE_WORKSPACE_HEADER } from '@antasphere/chassis-contract';
9
- import { instanceRoute, setupRoute } from '@antasphere/chassis-contract/routes';
9
+ import { cliPackageRoute, instanceRoute, setupRoute } from '@antasphere/chassis-contract/routes';
10
10
  import { account, instanceSettings, user as userTable, userOnboarding, workspaceMembers, workspaces } from '@antasphere/chassis-db';
11
11
  import { hubConfig } from '../env.js';
12
12
  import { DEMO_SESSION_REFUSED_API_ROUTES, demoSessionApiRefusalMessage, demoSessionAuthRefusal } from '../identity/index.js';
@@ -30,6 +30,8 @@ import { registerCliAuthRoutes } from './index.js';
30
30
  import { registerOnboardingRoutes } from './index.js';
31
31
  import { registerWorkspaceRoutes, workspaceCreationPolicy, workspaceCreationRefusal, workspaceCreateWallClosed } from './index.js';
32
32
  import { registerSsoConnectRoutes } from './index.js';
33
+ import { registerCliPackageRoutes } from './index.js';
34
+ import { loadCliPackage } from '../cli-package/index.js';
33
35
  import { registerSsoLogoutRoutes } from './index.js';
34
36
  import { registerMemberRoutes } from './index.js';
35
37
  import { demoSessionJudge, demoSignInOn, registerDemoPassRoutes } from './index.js';
@@ -199,6 +201,13 @@ export function createApiApp(deps) {
199
201
  // Demo sign-in (the demo pass spec): DEMO_SIGN_IN on the self-hosted
200
202
  // edition only. Off, no demo route, wall or discovery key exists.
201
203
  const demoSignIn = demoSignInOn(env, hub, logger);
204
+ // The tool's own CLI package (PRDCT-3312), read once here. parseEnv has
205
+ // already refused a CLI_PACKAGE_DIR that does not hold the pair, so a
206
+ // throw from here (the folder emptied between the two reads) still
207
+ // refuses the boot, it is never a person's failed install. Served (and
208
+ // advertised) only where its route is registered: the cloud block below.
209
+ const cliPackage = loadCliPackage(env.CLI_PACKAGE_DIR);
210
+ const cliServed = deps.hubSso && deps.hubGrant ? cliPackage : null;
202
211
  const api = new OpenAPIHono({
203
212
  // Validation failures use the same wire shape as every other error.
204
213
  defaultHook: (result, c) => {
@@ -398,6 +407,9 @@ export function createApiApp(deps) {
398
407
  // route itself: oss mounts zero hub surface.
399
408
  if (deps.hubSso) {
400
409
  api.use('/sso/cli-connect', rateLimit(limiters.cliConnect, clientIp));
410
+ // The CLI package download (cloud only, api/cli-package.ts) presents the
411
+ // same one-time hub token at the same cost: the same wall.
412
+ api.use('/cli/package', rateLimit(limiters.cliConnect, clientIp));
401
413
  }
402
414
  // ── JSON pre-validation in front of the Better Auth mount (AF-1 + the
403
415
  // update-user half of SL-B4, PRDCT-1358): Better Auth answers its own 500
@@ -633,6 +645,10 @@ export function createApiApp(deps) {
633
645
  // Present only on a cloud instance whose operator restricted the tool
634
646
  // (PRDCT-2947): organizations are opened by Antasphere, not created here.
635
647
  ...(hub && env.TOOL_RESTRICTED ? { restricted: true } : {}),
648
+ // Present only on a cloud instance whose release packed the tool's
649
+ // CLI (PRDCT-3312): what `POST /cli/package` serves, for the `team`
650
+ // command to install. An oss boot has no route, so no key either.
651
+ ...(cliServed ? { cli: { name: cliServed.name, version: cliServed.version } } : {}),
636
652
  // What this version declares for the billing rail (§7): the hub seeds
637
653
  // from it, staff read it, a client reads the limit it is held to.
638
654
  entitlements: {
@@ -1055,6 +1071,14 @@ export function createApiApp(deps) {
1055
1071
  cliKeyScopes: tool.scopes.cliKey,
1056
1072
  routes: { ssoCliConnectRoute }
1057
1073
  });
1074
+ // The tool's own CLI package (PRDCT-3312): cloud-only for the same
1075
+ // reason as /sso/cli-connect (it verifies the same hub exchange token
1076
+ // and burns it in the same ledger), so an oss boot leaves the path to
1077
+ // the JSON 404 terminator. Deliberately UNLISTED in the machine scope
1078
+ // allowlist and absent from PUBLIC_API_PATHS: the token rides in the
1079
+ // body, a request without a credential reaches the handler, and an API
1080
+ // key or an OAuth bearer meets 403 endpoint_not_allowed before it.
1081
+ registerCliPackageRoutes(api, { db, hubSso, cliPackage, logger, routes: { cliPackageRoute } });
1058
1082
  }
1059
1083
  // Single logout (SL-2): cloud-only like /sso/cli-connect — an oss boot
1060
1084
  // leaves POST /sso/logout to the JSON 404 terminator. Deliberately
@@ -1 +1 @@
1
- {"version":3,"file":"create-api.js","sourceRoot":"","sources":["../../src/api/create-api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create-api.js","sourceRoot":"","sources":["../../src/api/create-api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,4BAA4B,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AACjC,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,uBAAuB,EAAkB,MAAM,8BAA8B,CAAC;AACvF,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;AACjG,OAAO,EACL,OAAO,EACP,gBAAgB,EAChB,IAAI,IAAI,SAAS,EACjB,cAAc,EACd,gBAAgB,EAChB,UAAU,EAEX,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,SAAS,EAAgB,MAAM,WAAW,CAAC;AAGpD,OAAO,EACL,+BAA+B,EAC/B,4BAA4B,EAC5B,sBAAsB,EACvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAY3D,OAAO,EAAE,eAAe,EAAqB,MAAM,mBAAmB,CAAC;AACvE,OAAO,EACL,eAAe,EACf,uBAAuB,EAGxB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EACL,cAAc,EACd,WAAW,EACX,uBAAuB,EAExB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAEjG,OAAO,EAAE,mBAAmB,EAAsB,MAAM,sBAAsB,CAAC;AAG/E,OAAO,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AACtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AACtD,OAAO,EACL,uBAAuB,EACvB,uBAAuB,EACvB,wBAAwB,EACxB,yBAAyB,EAE1B,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AACtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AACpF,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAKlD,+EAA+E;AAC/E,MAAM,GAAG,GAAG,CAAC,IAAY,EAAE,OAAe,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;AAC9E,qGAAqG;AACrG,MAAM,UAAU,GAAG,cAAc,CAAC;AAElC;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH;;;;;;;;;;;;;GAaG;AACH,SAAS,oBAAoB,CAAC,QAAgB,EAAE,UAAkB,EAAE,aAAqB;IACvF,IAAI,QAAa,CAAC;IAClB,IAAI,aAAqB,CAAC;IAC1B,IAAI,CAAC;QACH,aAAa,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC;QAC3C,QAAQ,GAAG,IAAI,GAAG,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IAC3C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,GAAG,CAAC;IACb,CAAC;IACD,IAAI,YAAY,GAAkB,IAAI,CAAC;IACvC,IAAI,CAAC;QACH,YAAY,GAAG,IAAI,GAAG,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC;IAC/C,CAAC;IAAC,MAAM,CAAC;QACP,YAAY,GAAG,IAAI,CAAC;IACtB,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,KAAK,aAAa,IAAI,QAAQ,CAAC,MAAM,KAAK,YAAY,EAAE,CAAC;QAC1E,OAAO,QAAQ,CAAC,QAAQ,GAAG,QAAQ,CAAC,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC;IAC7D,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,KAAK,UAAU,2BAA2B,CACxC,IAAU,EACV,UAAkB,EAClB,OAAgB;IAEhB,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACjC,MAAM,KAAK,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC5C,IAAI,CAAC,KAAK;QAAE,OAAO,OAAO,CAAC;IAC3B,IAAI,OAAgC,CAAC;IACrC,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,KAAK,EAAE,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE;YAC5E,UAAU,EAAE,CAAC,OAAO,CAAC;SACtB,CAAC,CAAC;QACH,OAAO,GAAG,QAAQ,CAAC,OAAkC,CAAC;IACxD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,OAAO,CAAC,CAAC,kEAAkE;IACpF,CAAC;IACD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAC5B,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IAClC,IACE,OAAO,CAAC,WAAW,KAAK,2BAA2B;QACnD,OAAO,KAAK,KAAK,QAAQ;QACzB,OAAO,QAAQ,KAAK,QAAQ;QAC5B,KAAK,KAAK,QAAQ,EAClB,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC;QACpC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,eAAe,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QACpE,IAAI,CAAC,MAAM;YAAE,OAAO,OAAO,CAAC,CAAC,4CAA4C;QACzE,2EAA2E;QAC3E,sEAAsE;QACtE,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;QAC1F,IAAI,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,KAAK,KAAK;YAAE,OAAO,OAAO,CAAC;QAC5D,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,eAAe,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QACvE,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,MAAM,CAAC,IAAI,CAAC,EAAE;YAAE,OAAO,OAAO,CAAC,CAAC,eAAe;QACjF,yEAAyE;QACzE,qEAAqE;QACrE,0CAA0C;QAC1C,MAAM,SAAS,GAAG,MAAM,4BAA4B,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE;YACvF,WAAW,EAAE,2BAA2B;SACzC,CAAC,CAAC;QACH,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QACzC,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,OAAO,CAAC,CAAC;IAC9C,CAAC;IAAC,MAAM,CAAC;QACP,0EAA0E;QAC1E,mEAAmE;QACnE,OAAO,OAAO,CAAC;IACjB,CAAC;AACH,CAAC;AAqGD,+EAA+E;AAC/E,MAAM,gBAAiB,SAAQ,KAAK;CAAG;AAEvC;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAM1B,IAAoE;IACpE,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;IACvG,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,GAC7F,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC;IAC7B,MAAM,EAAE,kBAAkB,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC;IAC1D,yEAAyE;IACzE,+DAA+D;IAC/D,MAAM,eAAe,GAAqB,EAAE,GAAG,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC;IACjG,mDAAmD;IACnD,MAAM,WAAW,GAA6C;QAC5D,EAAE;QACF,GAAG;QACH,IAAI;QACJ,QAAQ;QACR,MAAM;QACN,KAAK;QACL,KAAK;QACL,QAAQ;QACR,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,MAAM,EAAE,IAAI,CAAC,MAAM;KACpB,CAAC;IAEF,4EAA4E;IAC5E,wEAAwE;IACxE,0EAA0E;IAC1E,yEAAyE;IACzE,qBAAqB;IACrB,MAAM,GAAG,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;IAC3B,MAAM,UAAU,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IAClE,qEAAqE;IACrE,kEAAkE;IAClE,MAAM,UAAU,GAAG,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;IAClD,wEAAwE;IACxE,sEAAsE;IACtE,mEAAmE;IACnE,uEAAuE;IACvE,yEAAyE;IACzE,MAAM,UAAU,GAAG,cAAc,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IACvD,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC;IAEnE,MAAM,GAAG,GAAG,IAAI,WAAW,CAAC;QAC1B,oEAAoE;QACpE,WAAW,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACzB,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,OAAO,CAAC,CAAC,IAAI,CACX;oBACE,KAAK,EAAE;wBACL,IAAI,EAAE,kBAAkB;wBACxB,OAAO,EAAE,2BAA2B;wBACpC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM;qBAC7B;iBACF,EACD,GAAG,CACJ,CAAC;YACJ,CAAC;QACH,CAAC;KACF,CAAC,CAAC;IAEH,0EAA0E;IAC1E,0EAA0E;IAC1E,2EAA2E;IAC3E,yEAAyE;IACzE,yEAAyE;IACzE,qEAAqE;IAErE,0EAA0E;IAC1E,yEAAyE;IACzE,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,oBAAoB,EAAE,CAAC,CAAC;IAE3C,4EAA4E;IAC5E,qEAAqE;IACrE,4EAA4E;IAC5E,0EAA0E;IAC1E,sEAAsE;IACtE,+CAA+C;IAC/C,EAAE;IACF,4EAA4E;IAC5E,yEAAyE;IACzE,2EAA2E;IAC3E,4EAA4E;IAC5E,2EAA2E;IAC3E,kDAAkD;IAClD,GAAG,CAAC,GAAG,CACL,GAAG,EACH,cAAc,CAAC;QACb,aAAa,EAAE,GAAG,CAAC,eAAe;QAClC,sEAAsE;QACtE,8DAA8D;QAC9D,gDAAgD;QAChD,aAAa,EAAE,IAAI,CAAC,gBAAgB;QACpC,oEAAoE;QACpE,sEAAsE;QACtE,mEAAmE;QACnE,8DAA8D;QAC9D,yEAAyE;QACzE,mEAAmE;QACnE,4DAA4D;QAC5D,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK;KACzD,CAAC,CACH,CAAC;IAEF,oEAAoE;IACpE,4EAA4E;IAC5E,6EAA6E;IAC7E,sEAAsE;IACtE,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC;IACrC,2EAA2E;IAC3E,uEAAuE;IACvE,sEAAsE;IACtE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IAEnC,wEAAwE;IACxE,oBAAoB;IACpB,4DAA4D;IAC5D,iEAAiE;IACjE,2EAA2E;IAC3E,0EAA0E;IAC1E,iDAAiD;IACjD,yFAAyF;IACzF,uEAAuE;IACvE,0CAA0C;IAC1C,MAAM,WAAW,GAAY;QAC3B,QAAQ,EAAE,IAAI,GAAG,IAAI;QACrB,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,mBAAmB,EAAE,sCAAsC,CAAC,EAAE,GAAG,CAAC;KAC9F,CAAC;IACF,0EAA0E;IAC1E,+DAA+D;IAC/D,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,WAAW,CAAC,CAAC;IACxD,2EAA2E;IAC3E,2EAA2E;IAC3E,EAAE;IACF,sEAAsE;IACtE,yEAAyE;IACzE,8DAA8D;IAC9D,sEAAsE;IACtE,kEAAkE;IAClE,0EAA0E;IAC1E,uEAAuE;IACvE,mEAAmE;IACnE,sEAAsE;IACtE,wEAAwE;IACxE,8BAA8B;IAC9B,MAAM,SAAS,GAAG,CAAC,CAAU,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IACnG,MAAM,aAAa,GAAG,IAAI,OAAO,EAA8B,CAAC;IAChE,MAAM,MAAM,GAAG,CAAC,GAAY,EAAqB,EAAE;QACjD,IAAI,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACnC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,KAAK,GAAG,iBAAiB,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;YAC1C,aAAa,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAChC,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IACF,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE;QACvB,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;QACxB,IAAI,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC;YAAE,OAAO,IAAI,EAAE,CAAC;QACpD,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC,IAAI,CAAC,CAAC;QACtC,IAAI,OAAO,KAAK,QAAQ;YAAE,OAAO,IAAI,EAAE,CAAC;QACxC,OAAO,MAAM,CAAC,OAAO,IAAI,WAAW,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IACjD,CAAC,CAAC,CAAC;IAEH,2EAA2E;IAC3E,4EAA4E;IAC5E,wEAAwE;IACxE,0DAA0D;IAC1D,0EAA0E;IAC1E,wEAAwE;IACxE,mEAAmE;IACnE,MAAM,UAAU,GAAG,cAAc,EAAE,CAAC;IACpC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IAEnG,wEAAwE;IACxE,uEAAuE;IACvE,MAAM,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAC/C,sEAAsE;IACtE,uEAAuE;IACvE,mEAAmE;IACnE,EAAE;IACF,0EAA0E;IAC1E,6EAA6E;IAC7E,2EAA2E;IAC3E,wEAAwE;IACxE,6EAA6E;IAC7E,kDAAkD;IAClD,EAAE;IACF,2EAA2E;IAC3E,4EAA4E;IAC5E,2EAA2E;IAC3E,wEAAwE;IACxE,4DAA4D;IAC5D,MAAM,SAAS,GAAG,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC;IAC5F,GAAG,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CACrC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,CAC1E,CAAC;IACF,GAAG,CAAC,GAAG,CAAC,mBAAmB,EAAE,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC;IAC5E,GAAG,CAAC,GAAG,CAAC,iBAAiB,EAAE,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;IAChE,2EAA2E;IAC3E,uEAAuE;IACvE,wDAAwD;IACxD,GAAG,CAAC,GAAG,CAAC,8BAA8B,EAAE,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC;IACjG,GAAG,CAAC,GAAG,CAAC,sBAAsB,EAAE,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC7E,GAAG,CAAC,GAAG,CAAC,wBAAwB,EAAE,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC/E,GAAG,CAAC,GAAG,CAAC,yBAAyB,EAAE,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC;IAC5F,2EAA2E;IAC3E,yEAAyE;IACzE,GAAG,CAAC,GAAG,CAAC,oBAAoB,EAAE,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC3E,GAAG,CAAC,GAAG,CAAC,uBAAuB,EAAE,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;IACtE,4EAA4E;IAC5E,4EAA4E;IAC5E,yEAAyE;IACzE,GAAG,CAAC,GAAG,CAAC,oBAAoB,EAAE,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;IACnE,0EAA0E;IAC1E,GAAG,CAAC,GAAG,CAAC,mBAAmB,EAAE,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;IAClE,GAAG,CAAC,GAAG,CAAC,uBAAuB,EAAE,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC9E,GAAG,CAAC,GAAG,CAAC,oBAAoB,EAAE,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC;IACxE,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;IACvD,GAAG,CAAC,GAAG,CAAC,qBAAqB,EAAE,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC/E,GAAG,CAAC,GAAG,CAAC,qBAAqB,EAAE,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC/E,4EAA4E;IAC5E,2DAA2D;IAC3D,MAAM,gBAAgB,GAAsD,EAAE,GAAG,WAAW,EAAE,QAAQ,EAAE,CAAC;IACzG,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC;IAC7C,uEAAuE;IACvE,wEAAwE;IACxE,GAAG,CAAC,GAAG,CAAC,sBAAsB,EAAE,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC1E,0EAA0E;IAC1E,wEAAwE;IACxE,yEAAyE;IACzE,GAAG,CAAC,GAAG,CAAC,mBAAmB,EAAE,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC;IAC5E,GAAG,CAAC,GAAG,CAAC,oBAAoB,EAAE,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;IACzG,0EAA0E;IAC1E,yEAAyE;IACzE,uDAAuD;IACvD,IAAI,UAAU,EAAE,CAAC;QACf,yEAAyE;QACzE,0EAA0E;QAC1E,0EAA0E;QAC1E,sEAAsE;QACtE,GAAG,CAAC,GAAG,CACL,mBAAmB,EACnB,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAC9E,CAAC;IACJ,CAAC;IACD,yEAAyE;IACzE,wEAAwE;IACxE,iEAAiE;IACjE,GAAG,CAAC,GAAG,CAAC,eAAe,EAAE,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC;IACnE,yEAAyE;IACzE,yEAAyE;IACzE,2EAA2E;IAC3E,wEAAwE;IACxE,2EAA2E;IAC3E,uEAAuE;IACvE,6CAA6C;IAC7C,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChB,GAAG,CAAC,GAAG,CAAC,kBAAkB,EAAE,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC;QACtE,yEAAyE;QACzE,2DAA2D;QAC3D,GAAG,CAAC,GAAG,CAAC,cAAc,EAAE,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC;IACpE,CAAC;IAED,uEAAuE;IACvE,0EAA0E;IAC1E,sEAAsE;IACtE,2EAA2E;IAC3E,2EAA2E;IAC3E,cAAc;IACd,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,aAAa,EAAE,CAAC,CAAC;IACpC,uEAAuE;IACvE,oEAAoE;IACpE,4EAA4E;IAC5E,2EAA2E;IAC3E,uEAAuE;IACvE,2EAA2E;IAC3E,mDAAmD;IACnD,4EAA4E;IAC5E,uEAAuE;IACvE,kEAAkE;IAClE,qEAAqE;IACrE,0EAA0E;IAC1E,gBAAgB;IAChB,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,KAAK,GAAG,gBAAgB,CAAC,EAAE,CAAC,CAAC;QACnC,MAAM,eAAe,GAAG,IAAI,eAAe,CAAC,EAAE,CAAC,CAAC;QAChD,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE;YACnC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC;gBAAE,OAAO,IAAI,EAAE,CAAC;YAC3C,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAC/C,MAAM,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;YACtG,IAAI,OAAO,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;gBACnC,IAAI,sBAAsB,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACrC,OAAO,CAAC,CAAC,IAAI,CACX,GAAG,CAAC,cAAc,EAAE,4EAA4E,CAAC,EACjG,GAAG,CACJ,CAAC;gBACJ,CAAC;gBACD,gEAAgE;gBAChE,iCAAiC;gBACjC,IAAI,QAAQ,KAAK,WAAW;oBAAE,MAAM,eAAe,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;YACvF,CAAC;iBAAM,IACL,QAAQ,KAAK,iBAAiB;gBAC9B,QAAQ,KAAK,kBAAkB;gBAC/B,QAAQ,KAAK,wBAAwB,EACrC,CAAC;gBACD,oEAAoE;gBACpE,oEAAoE;gBACpE,mEAAmE;gBACnE,kEAAkE;gBAClE,oEAAoE;gBACpE,0DAA0D;gBAC1D,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;gBAC7F,IAAI,QAAQ,EAAE,OAAO,EAAE,EAAE,IAAI,QAAQ,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;oBAChD,IAAI,SAAS,GAAkB,IAAI,CAAC;oBACpC,IAAI,CAAC;wBACH,MAAM,IAAI,GAAY,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC;wBACrD,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAQ,IAA4B,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;4BAChG,SAAS,GAAI,IAA0B,CAAC,KAAK,CAAC;wBAChD,CAAC;oBACH,CAAC;oBAAC,MAAM,CAAC;wBACP,0EAA0E;oBAC5E,CAAC;oBACD,MAAM,YAAY,GAAG,MAAM,eAAe,CAAC,qBAAqB,CAC9D,QAAQ,EACR,EAAE,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,EAC5D,SAAS,CACV,CAAC;oBACF,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC;wBAAE,MAAM,eAAe,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;gBAC/E,CAAC;YACH,CAAC;YACD,OAAO,IAAI,EAAE,CAAC;QAChB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,4EAA4E;IAC5E,0EAA0E;IAC1E,2EAA2E;IAC3E,wEAAwE;IACxE,uEAAuE;IACvE,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IACxB,2EAA2E;IAC3E,wEAAwE;IACxE,kEAAkE;IAClE,EAAE;IACF,4EAA4E;IAC5E,wEAAwE;IACxE,8EAA8E;IAC9E,6EAA6E;IAC7E,4EAA4E;IAC5E,yEAAyE;IACzE,6EAA6E;IAC7E,yEAAyE;IACzE,4EAA4E;IAC5E,6EAA6E;IAC7E,8EAA8E;IAC9E,2EAA2E;IAC3E,iDAAiD;IACjD,EAAE;IACF,gEAAgE;IAChE,GAAG,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,oBAAoB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QAChD,MAAM,GAAG,GAAG,MAAM,2BAA2B,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAChF,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;QACnG,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC;YAC/F,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG;iBACpB,KAAK,EAAE;iBACP,IAAI,EAAE;iBACN,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAgD,CAAC;YACrE,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC;gBACtD,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBACzC,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;gBACjC,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;YAC9F,CAAC;YACD,OAAO,GAAG,CAAC;QACb,CAAC;QACD,wEAAwE;QACxE,4EAA4E;QAC5E,uEAAuE;QACvE,8DAA8D;QAC9D,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;YAC1C,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAC7C,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,IAAI,GAAG,oBAAoB,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,eAAe,CAAC,CAAC;gBAC5E,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;oBACtB,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;oBACzC,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;oBAC9B,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;gBAC7D,CAAC;YACH,CAAC;YACD,OAAO,GAAG,CAAC;QACb,CAAC;QACD,IAAI,GAAG,CAAC,MAAM,GAAG,GAAG;YAAE,OAAO,GAAG,CAAC;QACjC,MAAM,CAAC,IAAI,CACT,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,EACtB,0EAA0E,CAC3E,CAAC;QACF,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IACH,GAAG,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CACvC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAC3F,CAAC;IAEF,GAAG,CAAC,GAAG,CACL,GAAG,EACH,WAAW,CAAC;QACV,QAAQ,EAAE,eAAe;QACzB,aAAa,EAAE,aAAa,CAAC,OAAO;QACpC,aAAa,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK,EAAE,SAAS,CAAC;QAC5E,eAAe,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,SAAS,CAAC;QAC9E,iBAAiB,EAAE,QAAQ,CAAC,cAAc;QAC1C,QAAQ;QACR,uEAAuE;QACvE,qEAAqE;QACrE,qEAAqE;QACrE,kEAAkE;QAClE,iEAAiE;QACjE,kDAAkD;QAClD,YAAY,EAAE,kBAAkB,CAAC;YAC/B,YAAY,EAAE,QAAQ,CAAC,YAAY;YACnC,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,MAAM;SACP,CAAC;QACF,oEAAoE;QACpE,oBAAoB;QACpB,aAAa,EAAE,IAAI,CAAC,aAAa;QACjC,uEAAuE;QACvE,gFAAgF;QAChF,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,gBAAgB,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5D,4EAA4E;QAC5E,gBAAgB,EAAE,IAAI,CAAC,MAAM,CAAC,gBAAgB;QAC9C,qBAAqB,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc;KAChD,CAAC,CACH,CAAC;IAEF,uEAAuE;IACvE,2EAA2E;IAC3E,4EAA4E;IAC5E,yEAAyE;IACzE,uEAAuE;IACvE,+EAA+E;IAC/E,KAAK,MAAM,IAAI,IAAI,CAAC,GAAG,+BAA+B,EAAE,GAAG,CAAC,IAAI,CAAC,wBAAwB,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;QAClG,MAAM,IAAI,GAAsB,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE;YAChD,IAAI,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;gBACxB,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,4BAA4B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YACnF,CAAC;YACD,OAAO,IAAI,EAAE,CAAC;QAChB,CAAC,CAAC;QACF,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK;YAAE,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;;YAC/C,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC5C,CAAC;IAED,uEAAuE;IACvE,2EAA2E;IAC3E,6EAA6E;IAC7E,GAAG,CAAC,GAAG,CACL,GAAG,EACH,WAAW,CAAC;QACV,EAAE;QACF,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACrF,CAAC,CACH,CAAC;IAEF,GAAG,CAAC,GAAG,CACL,GAAG,EACH,eAAe,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAC/F,CAAC;IAEF,gEAAgE;IAChE,IAAI,gBAAgB,GAAkB,IAAI,CAAC;IAC3C,MAAM,UAAU,GAAG,KAAK,IAAqB,EAAE;QAC7C,IAAI,gBAAgB;YAAE,OAAO,gBAAgB,CAAC;QAC9C,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,gBAAgB,CAAC,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACnG,gBAAgB,GAAG,GAAG,EAAE,EAAE,IAAI,SAAS,CAAC;QACxC,OAAO,gBAAgB,CAAC;IAC1B,CAAC,CAAC;IAEF,wEAAwE;IACxE,wEAAwE;IACxE,sEAAsE;IACtE,sEAAsE;IACtE,wEAAwE;IACxE,4DAA4D;IAC5D,uBAAuB,CAAC,GAAG,EAAE;QAC3B,YAAY,EAAE,IAAI,CAAC,YAAY,CAAC,MAAM;QACtC,IAAI,EAAE,IAAI,CAAC,YAAY;QACvB,YAAY,EAAE,QAAQ,CAAC,YAAY;QACnC,KAAK,EAAE,QAAQ,CAAC,KAAK;QACrB,KAAK,EAAE,IAAI,CAAC,gBAAgB;QAC5B,MAAM,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,UAAU,EAAE,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC;QACxG,MAAM;KACP,CAAC,CAAC;IAEH,4EAA4E;IAC5E,GAAG,CAAC,OAAO,CAAC,aAAa,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QACrC,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAChE,CAAC,CAAC,MAAM,CAAC,eAAe,EAAE,oBAAoB,CAAC,CAAC;QAChD,OAAO,CAAC,CAAC,IAAI,CACX;YACE,IAAI,EAAE,GAAG,EAAE,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW;YAC5C,UAAU,EAAE,GAAG,EAAE,UAAU,IAAI,IAAI;YACnC,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,OAAO,EAAE,GAAG,CAAC,WAAW;YACxB,UAAU,EAAE,IAAa;YACzB,aAAa,EAAE,CAAC,GAAG;YACnB,IAAI,EAAE;gBACJ,GAAG,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE;gBAC/B,8DAA8D;gBAC9D,8DAA8D;gBAC9D,+DAA+D;gBAC/D,uBAAuB;gBACvB,GAAG,CAAC,GAAG;oBACL,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,cAAc,EAAE,GAAG,CAAC,cAAc,EAAE,gBAAgB,EAAE,GAAG,CAAC,gBAAgB,EAAE,EAAE;oBACzF,CAAC,CAAC,EAAE,CAAC;aACR;YACD,QAAQ,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;YACjD,wEAAwE;YACxE,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3C,sEAAsE;YACtE,0EAA0E;YAC1E,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3D,mEAAmE;YACnE,oEAAoE;YACpE,kEAAkE;YAClE,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,OAAO,EAAE,SAAS,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnF,sEAAsE;YACtE,kEAAkE;YAClE,YAAY,EAAE;gBACZ,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,OAAO;gBAClC,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC,MAAM;gBAChC,QAAQ,EAAE,IAAI,CAAC,YAAY,CAAC,QAAQ;aACrC;SACF,EACD,GAAG,CACJ,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,4EAA4E;IAC5E,GAAG,CAAC,OAAO,CAAC,UAAU,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QAClC,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAEjC,yEAAyE;QACzE,yEAAyE;QACzE,0DAA0D;QAC1D,IAAI,CAAC,GAAG,CAAC,oBAAoB,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,CAAC;YAC3E,MAAM,CAAC,IAAI,CACT,EAAE,aAAa,EAAE,GAAG,CAAC,eAAe,EAAE,EACtC,uDAAuD,CACxD,CAAC;YACF,OAAO,CAAC,CAAC,IAAI,CACX,GAAG,CACD,oBAAoB,EACpB,8JAA8J,CAC/J,EACD,GAAG,CACJ,CAAC;QACJ,CAAC;QAED,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,gBAAgB,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAChG,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,uCAAuC,CAAC,EAAE,GAAG,CAAC,CAAC;QACpF,CAAC;QAED,yEAAyE;QACzE,sEAAsE;QACtE,wEAAwE;QACxE,wEAAwE;QACxE,4DAA4D;QAC5D,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,IAAI,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YACpF,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,qBAAqB,EAAE,iCAAiC,CAAC,EAAE,GAAG,CAAC,CAAC;QACpF,CAAC;QAED,sEAAsE;QACtE,qEAAqE;QACrE,yEAAyE;QACzE,wEAAwE;QACxE,mCAAmC;QACnC,IAAI,WAAmB,CAAC;QACxB,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC;gBACzC,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;aACxF,CAAC,CAAC;YACH,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QAChC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,qEAAqE;YACrE,sEAAsE;YACtE,qEAAqE;YACrE,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC;oBAC1C,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;iBACjE,CAAC,CAAC;gBACH,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YACjC,CAAC;YAAC,MAAM,CAAC;gBACP,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,8BAA8B,CAAC,CAAC;gBAC7D,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,uBAAuB,EAAE,iCAAiC,CAAC,EAAE,GAAG,CAAC,CAAC;YACtF,CAAC;QACH,CAAC;QAED,qEAAqE;QACrE,wEAAwE;QACxE,6EAA6E;QAC7E,oEAAoE;QACpE,oEAAoE;QACpE,wEAAwE;QACxE,kEAAkE;QAClE,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC,CAAC;QAE7F,kEAAkE;QAClE,uEAAuE;QACvE,uEAAuE;QACvE,sEAAsE;QACtE,uEAAuE;QACvE,sEAAsE;QACtE,qEAAqE;QACrE,uEAAuE;QACvE,mEAAmE;QACnE,wBAAwB;QACxB,MAAM,UAAU,GAAG,IAAI,EAAE,CAAC;QAC1B,IAAI,WAA0B,CAAC;QAC/B,IAAI,CAAC;YACH,WAAW,GAAG,MAAM,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;gBAC9C,MAAM,OAAO,GAAG,MAAM,EAAE;qBACrB,MAAM,CAAC,gBAAgB,CAAC;oBACzB,+DAA+D;oBAC/D,oEAAoE;oBACpE,2BAA2B;qBAC1B,MAAM,CAAC;oBACN,EAAE,EAAE,UAAU;oBACd,UAAU;oBACV,IAAI,EAAE,IAAI,CAAC,YAAY;oBACvB,OAAO,EAAE,GAAG,CAAC,OAAO;oBACpB,oEAAoE;oBACpE,cAAc,EAAE,WAAW;iBAC5B,CAAC;qBACD,mBAAmB,EAAE;qBACrB,SAAS,CAAC,EAAE,EAAE,EAAE,gBAAgB,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC1C,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;oBAAE,MAAM,IAAI,gBAAgB,EAAE,CAAC;gBAEvD,IAAI,GAAG;oBAAE,OAAO,IAAI,CAAC;gBACrB,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC;gBACrF,OAAO,OAAO,CAAC,WAAW,CAAC;YAC7B,CAAC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,gBAAgB,EAAE,CAAC;gBACtC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,uCAAuC,CAAC,EAAE,GAAG,CAAC,CAAC;YACpF,CAAC;YACD,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,+CAA+C,CAAC,CAAC;YAC9E,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,0DAA0D,CAAC,EAAE,GAAG,CAAC,CAAC;QAClG,CAAC;QAED,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,CAAC;QAC5E,MAAM,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,EAAE,4BAA4B,CAAC,CAAC;QACvE,wEAAwE;QACxE,sEAAsE;QACtE,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;YAC7D,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,wDAAwD,CAAC,CAAC;QACxF,CAAC,CAAC,CAAC;QAEH,mEAAmE;QACnE,gDAAgD;QAChD,MAAM,KAAK,CAAC,KAAK,CAAC;YAChB,WAAW;YACX,SAAS,EAAE,IAAI;YACf,MAAM,EAAE,gBAAgB;YACxB,YAAY,EAAE,UAAU;YACxB,UAAU,EAAE,UAAU;YACtB,SAAS,EAAE,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC;YAC7B,QAAQ,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;SACxD,CAAC,CAAC;QAEH,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,EAAE,GAAG,CAAC,CAAC;IAC/D,CAAC,CAAC,CAAC;IAEH;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,uEAAuE;IACvE,sEAAsE;IACtE,+DAA+D;IAC/D,MAAM,cAAc,GAAG,uBAAuB,CAAC;QAC7C,UAAU,EAAE,GAAG,CAAC,uBAAuB;QACvC,UAAU,EAAE,GAAG,CAAC,eAAe;QAC/B,KAAK,EAAE,IAAI,CAAC,cAAc;KAC3B,CAAC,CAAC;IACH,MAAM,YAAY,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,eAAe,EAAE,OAAO,EAAE,QAAQ,CAAC,sBAAsB,EAAE,CAAC;IACpG,MAAM,kBAAkB,GAAG,KAAK,EAC9B,MAAc,EACd,GAAoC,EACpC,OAAe,EACf,EAAE;QACF,IAAI,CAAC;YACH,IAAI,CAAC,MAAM,wBAAwB,CAAC,EAAE,EAAE,cAAc,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,KAAK,IAAI;gBAAE,OAAO,KAAK,CAAC;YACjG,kEAAkE;YAClE,8DAA8D;YAC9D,OAAO,CAAC,CAAC,MAAM,yBAAyB,CAAC,YAAY,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;QAC3E,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,iEAAiE,CAAC,CAAC;YAC/F,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,sBAAsB,GAAG,YAAY,CAAC;IAC5C,2EAA2E;IAC3E,qEAAqE;IACrE,MAAM,cAAc,GAAG,GAAG;QACxB,CAAC,CAAC,GAAG,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,wBAAwB,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;QAChG,CAAC,CAAC,IAAI,CAAC;IACT,MAAM,kBAAkB,GAAG,KAAK,EAC9B,MAAc,EACd,WAAmB,EAMlB,EAAE;QACH,MAAM,CAAC,cAAc,EAAE,WAAW,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACtD,EAAE;iBACC,MAAM,CAAC,EAAE,WAAW,EAAE,cAAc,CAAC,WAAW,EAAE,CAAC;iBACnD,IAAI,CAAC,cAAc,CAAC;iBACpB,KAAK,CAAC,EAAE,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;iBACxC,KAAK,CAAC,CAAC,CAAC;YACX,EAAE,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;SAC9F,CAAC,CAAC;QACH,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;QAChE,OAAO;YACL,eAAe,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,WAAW,IAAI,IAAI;YACvD,OAAO,EAAE,SAAS,CAAC,GAAG,CAAC,mBAAmB,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,sBAAsB,CAAC;YACrF,SAAS,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE;YAC7C,cAAc,EAAE,WAAW;SAC5B,CAAC;IACJ,CAAC,CAAC;IAEF,mEAAmE;IACnE,yEAAyE;IACzE,yEAAyE;IACzE,kEAAkE;IAClE,MAAM,qBAAqB,GAAG,KAAK,EAAE,CAAU,EAAE,MAAc,EAA6B,EAAE;QAC5F,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC,MAAM,CAAC,CAAC;YAC3C,MAAM,QAAQ,GAAG,MAAM,uBAAuB,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC;YACnE,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,MAAM;gBAAE,OAAO,IAAI,CAAC;YACzD,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;YACvE,OAAO,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;QACjD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,gEAAgE,CAAC,CAAC;YACtG,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC,CAAC;IAEF,4EAA4E;IAC5E,2EAA2E;IAC3E,sEAAsE;IACtE,uEAAuE;IACvE,iEAAiE;IACjE,uEAAuE;IACvE,0EAA0E;IAC1E,oEAAoE;IACpE,wEAAwE;IACxE,uEAAuE;IACvE,mEAAmE;IACnE,YAAY;IACZ,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QAC/B,IAAI,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QACnC,IAAI,aAAa,GAAuD,IAAI,CAAC;QAC7E,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,sEAAsE;YACtE,sEAAsE;YACtE,mEAAmE;YACnE,oEAAoE;YACpE,gEAAgE;YAChE,kEAAkE;YAClE,iBAAiB;YACjB,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,uBAAuB,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;gBAClD,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,yBAAyB,CAAC,EAAE,GAAG,CAAC,CAAC;YACxE,CAAC;YACD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YAC1E,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC;gBACnB,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,yBAAyB,CAAC,EAAE,GAAG,CAAC,CAAC;YACxE,CAAC;YACD,sEAAsE;YACtE,oEAAoE;YACpE,oEAAoE;YACpE,oEAAoE;YACpE,mEAAmE;YACnE,iEAAiE;YACjE,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;gBAC/B,SAAS,GAAG,MAAM,qBAAqB,CAAC,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC9D,CAAC;YACD,IAAI,CAAC,SAAS;gBAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;QAC/C,CAAC;QACD,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,IAAI,GAAG,aAAa,CAAC;YAC3B,IAAI,CAAC,IAAI;gBAAE,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,yBAAyB,CAAC,EAAE,GAAG,CAAC,CAAC;YACjF,OAAO,CAAC,CAAC,IAAI,CACX;gBACE,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE;gBACzD,SAAS,EAAE,IAAI;gBACf,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,IAAI;gBACZ,GAAG,EAAE,SAAkB;gBACvB,MAAM,EAAE,IAAI;gBACZ,eAAe,EAAE,IAAI;gBACrB,UAAU,EAAE,EAAE;gBACd,iBAAiB,EAAE,IAAI;gBACvB,kEAAkE;gBAClE,sDAAsD;gBACtD,YAAY,EAAE,UAAU,EAAE,SAAS,IAAI,IAAI;gBAC3C,mEAAmE;gBACnE,mEAAmE;gBACnE,sDAAsD;gBACtD,kBAAkB,EAAE,GAAG,CAAC,CAAC,CAAC,MAAM,kBAAkB,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK;gBAC3F,gEAAgE;gBAChE,0DAA0D;gBAC1D,GAAG,CAAC,cAAc,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,kBAAkB,CAAC,IAAI,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;aACtF,EACD,GAAG,CACJ,CAAC;QACJ,CAAC;QACD,sEAAsE;QACtE,uEAAuE;QACvE,sEAAsE;QACtE,qEAAqE;QACrE,uEAAuE;QACvE,qEAAqE;QACrE,mEAAmE;QACnE,qDAAqD;QACrD,MAAM,WAAW,GAAG,MAAM,EAAE;aACzB,MAAM,CAAC;YACN,EAAE,EAAE,UAAU,CAAC,EAAE;YACjB,IAAI,EAAE,UAAU,CAAC,IAAI;YACrB,IAAI,EAAE,gBAAgB,CAAC,IAAI;YAC3B,gBAAgB,EAAE,UAAU,CAAC,gBAAgB;YAC7C,SAAS,EAAE,UAAU,CAAC,SAAS;YAC/B,SAAS,EAAE,gBAAgB,CAAC,SAAS;YACrC,SAAS,EAAE,UAAU,CAAC,SAAS;YAC/B,WAAW,EAAE,UAAU,CAAC,WAAW;YACnC,SAAS,EAAE,UAAU,CAAC,SAAS;YAC/B,SAAS,EAAE,UAAU,CAAC,SAAS;SAChC,CAAC;aACD,IAAI,CAAC,gBAAgB,CAAC;aACtB,SAAS,CAAC,UAAU,EAAE,EAAE,CAAC,gBAAgB,CAAC,WAAW,EAAE,UAAU,CAAC,EAAE,CAAC,CAAC;aACtE,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,gBAAgB,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;aAC9F,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,GAAG,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,GAAG,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,CAAC;QACxG,sEAAsE;QACtE,uEAAuE;QACvE,0EAA0E;QAC1E,MAAM,cAAc,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC7C,EAAE,EAAE,CAAC,CAAC,EAAE;YACR,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,SAAS,EAAE,CAAC,CAAC,gBAAgB,KAAK,IAAI;YACtC,gBAAgB,EAAE,CAAC,CAAC,gBAAgB;YACpC,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC,SAAS,EAAE;YAC5F,SAAS,EAAE,CAAC,CAAC,SAAS,KAAK,WAAW;YACtC,OAAO,EAAE,CAAC,CAAC,SAAS;SACrB,CAAC,CAAC,CAAC;QACJ,MAAM,MAAM,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,WAAW,CAAC,CAAC;QAC1E,OAAO,CAAC,CAAC,IAAI,CACX;YACE,IAAI,EAAE,EAAE,EAAE,EAAE,SAAS,CAAC,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE;YAC5E,SAAS,EAAE;gBACT,EAAE,EAAE,SAAS,CAAC,WAAW;gBACzB,IAAI,EAAE,MAAM,EAAE,IAAI,IAAI,EAAE;gBACxB,gEAAgE;gBAChE,+DAA+D;gBAC/D,qCAAqC;gBACrC,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC;gBACxC,IAAI,EAAE,MAAM,EAAE,IAAI,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;aAC/E;YACD,IAAI,EAAE,SAAS,CAAC,IAAI;YACpB,MAAM,EAAE,SAAS,CAAC,MAAM;YACxB,GAAG,EAAE,SAAS,CAAC,GAAG;YAClB,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI;YACvD,eAAe,EAAE,SAAS,CAAC,eAAe,IAAI,IAAI;YAClD,UAAU,EAAE,cAAc;YAC1B,iBAAiB,EAAE,SAAS,CAAC,WAAW;YACxC,YAAY,EAAE,UAAU,IAAI,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI;YAC9E,sEAAsE;YACtE,yDAAyD;YACzD,kBAAkB,EAAE,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC;gBACrC,CAAC,CAAC,KAAK;gBACP,CAAC,CAAC,MAAM,kBAAkB,CAAC,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;YAC1E,mEAAmE;YACnE,oEAAoE;YACpE,oBAAoB;YACpB,GAAG,CAAC,cAAc,KAAK,IAAI,IAAI,SAAS,CAAC,GAAG,KAAK,SAAS;gBACxD,CAAC,CAAC,MAAM,kBAAkB,CAAC,SAAS,CAAC,MAAM,EAAE,cAAc,CAAC;gBAC5D,CAAC,CAAC,EAAE,CAAC;SACR,EACD,GAAG,CACJ,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,uEAAuE;IACvE,uEAAuE;IACvE,wEAAwE;IACxE,IAAI,GAAG,EAAE,CAAC;QACR,wBAAwB,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9C,CAAC;IAED,0EAA0E;IAC1E,wEAAwE;IACxE,wEAAwE;IACxE,uBAAuB,CAAC,GAAG,EAAE;QAC3B,EAAE;QACF,IAAI;QACJ,KAAK;QACL,QAAQ,EAAE,eAAe;QACzB,MAAM;QACN,QAAQ;QACR,IAAI,EAAE,YAAY;QAClB,UAAU,EAAE,GAAG,CAAC,uBAAuB;QACvC,UAAU,EAAE,GAAG,CAAC,eAAe;QAC/B,KAAK,EAAE,IAAI,CAAC,cAAc;QAC1B,qBAAqB,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc;QAC/C,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW;KACvC,CAAC,CAAC;IAEH,4EAA4E;IAC5E,0EAA0E;IAC1E,2EAA2E;IAC3E,mEAAmE;IACnE,wBAAwB,CAAC,GAAG,EAAE;QAC5B,EAAE;QACF,IAAI;QACJ,KAAK;QACL,MAAM;QACN,gBAAgB,EAAE,GAAG,CAAC,iBAAiB;KACxC,CAAC,CAAC;IACH,kEAAkE;IAClE,yEAAyE;IACzE,sEAAsE;IACtE,yEAAyE;IACzE,0EAA0E;IAC1E,4DAA4D;IAC5D,qBAAqB,CAAC,GAAG,EAAE;QACzB,EAAE;QACF,IAAI;QACJ,KAAK;QACL,OAAO,EAAE,aAAa;QACtB,KAAK;QACL,MAAM;QACN,MAAM;QACN,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM;QAChC,MAAM,EAAE,EAAE,oBAAoB,EAAE;QAChC,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW;KACvC,CAAC,CAAC;IACH,2EAA2E;IAC3E,sEAAsE;IACtE,0EAA0E;IAC1E,uEAAuE;IACvE,oBAAoB;IACpB,IAAI,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC5B,wBAAwB,CAAC,GAAG,EAAE;YAC5B,EAAE;YACF,IAAI;YACJ,MAAM;YACN,KAAK,EAAE,IAAI,CAAC,QAAQ;YACpB,OAAO,EAAE,aAAa;YACtB,KAAK;YACL,MAAM;YACN,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM;YAChC,MAAM,EAAE,EAAE,kBAAkB,EAAE;SAC/B,CAAC,CAAC;QACH,mEAAmE;QACnE,sEAAsE;QACtE,sEAAsE;QACtE,sEAAsE;QACtE,qEAAqE;QACrE,uEAAuE;QACvE,mEAAmE;QACnE,wBAAwB,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,eAAe,EAAE,EAAE,CAAC,CAAC;IACjG,CAAC;IACD,uEAAuE;IACvE,mEAAmE;IACnE,gEAAgE;IAChE,qEAAqE;IACrE,IAAI,MAAM,IAAI,IAAI,CAAC,SAAS,IAAI,GAAG,EAAE,CAAC;QACpC,uBAAuB,CAAC,GAAG,EAAE;YAC3B,IAAI;YACJ,MAAM,EAAE,IAAI,CAAC,SAAS;YACtB,IAAI,EAAE;gBACJ,IAAI,EAAE,GAAG,CAAC,cAAc;gBACxB,MAAM,EAAE,GAAG,CAAC,gBAAgB;gBAC5B,MAAM,EAAE,GAAG,CAAC,eAAe,CAAC,UAAU,CAAC,UAAU,CAAC;aACnD;YACD,MAAM;SACP,CAAC,CAAC;IACL,CAAC;IACD,oBAAoB,CAAC,GAAG,EAAE;QACxB,EAAE;QACF,IAAI;QACJ,aAAa,EAAE,GAAG,CAAC,eAAe;QAClC,eAAe,EAAE,IAAI,CAAC,eAAe;QACrC,UAAU;QACV,kBAAkB,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW;QACzC,mBAAmB,EAAE,IAAI,CAAC,iBAAiB;KAC5C,CAAC,CAAC;IACH,6EAA6E;IAC7E,0FAA0F;IAC1F,kBAAkB,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;IAC5C,IAAI,UAAU,EAAE,CAAC;QACf,sBAAsB,CAAC,GAAG,EAAE;YAC1B,EAAE;YACF,aAAa,EAAE,GAAG,CAAC,eAAe;YAClC,YAAY,EAAE,GAAG,CAAC,0BAA0B;YAC5C,kBAAkB,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW;SAC1C,CAAC,CAAC;IACL,CAAC;IACD,oBAAoB,CAAC,GAAG,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,CAAC,CAAC;IACzG,wBAAwB,CAAC,GAAG,EAAE;QAC5B,EAAE;QACF,GAAG;QACH,IAAI;QACJ,KAAK;QACL,KAAK;QACL,QAAQ,EAAE,eAAe;QACzB,MAAM;QACN,SAAS,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;QAC/E,UAAU,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;QAC5F,UAAU;QACV,2EAA2E;QAC3E,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC;QAC7B,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,gBAAgB,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC7D,CAAC,CAAC;IACH,2EAA2E;IAC3E,uEAAuE;IACvE,2DAA2D;IAC3D,qBAAqB,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACnC,mBAAmB,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IAC7B,oBAAoB,CAAC,GAAG,EAAE;QACxB,EAAE;QACF,GAAG;QACH,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,KAAK;QACL,QAAQ;QACR,QAAQ;QACR,MAAM;QACN,oBAAoB,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,oBAAoB;QACrE,gFAAgF;QAChF,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC1F,CAAC,CAAC;IAEH,kBAAkB,CAAC,GAAG,EAAE;QACtB,OAAO,EAAE,IAAI,CAAC,WAAW;QACzB,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,QAAQ,EAAE,eAAe;QACzB,GAAG;QACH,MAAM;QACN,uEAAuE;QACvE,qEAAqE;QACrE,sEAAsE;QACtE,4EAA4E;QAC5E,wBAAwB;QACxB,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC;QACnC,eAAe,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,eAAe;QAC3D,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS;KAC/B,CAAC,CAAC;IACH,oEAAoE;IACpE,oEAAoE;IACpE,MAAM,aAAa,GAAmD,EAAE,GAAG,gBAAgB,EAAE,UAAU,EAAE,CAAC;IAC1G,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAEnD,oEAAoE;IACpE,2DAA2D;IAC3D,kBAAkB,CAAC,GAAG,EAAE;QACtB,OAAO,EAAE,OAAO;QAChB,IAAI,EAAE;YACJ,KAAK,EAAE,cAAc;YACrB,OAAO,EAAE,GAAG,CAAC,WAAW;SACzB;QACD,OAAO,EAAE,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC;KAC9B,CAAC,CAAC;IAEH,4EAA4E;IAC5E,0EAA0E;IAC1E,uEAAuE;IACvE,uEAAuE;IACvE,qEAAqE;IACrE,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;IAEhE,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -2,6 +2,7 @@ export { registerApiKeyRoutes } from './apikeys.js';
2
2
  export { registerAuditRoutes } from './audit.js';
3
3
  export { registerBreakGlassRoutes } from './break-glass.js';
4
4
  export { registerCliAuthRoutes } from './cli-auth.js';
5
+ export { registerCliPackageRoutes, type CliPackageRouteDeps } from './cli-package.js';
5
6
  export { demoSessionJudge, demoSignInOn, registerDemoPassRoutes } from './demo-passes.js';
6
7
  export { registerExportRoutes, resolveExportEntries, sanitizeEntryName, RESERVED_EXPORT_ENTRY_NAMES, type ExportEntriesFn, type ExportEntry } from './export.js';
7
8
  export { registerFileRoutes } from './files.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAC1F,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,iBAAiB,EACjB,2BAA2B,EAC3B,KAAK,eAAe,EACpB,KAAK,WAAW,EACjB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EACL,KAAK,kBAAkB,EACvB,uBAAuB,EACvB,yBAAyB,EACzB,uBAAuB,EACvB,wBAAwB,EACzB,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,wBAAwB,EAAE,KAAK,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACtF,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAC1F,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,iBAAiB,EACjB,2BAA2B,EAC3B,KAAK,eAAe,EACpB,KAAK,WAAW,EACjB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EACL,KAAK,kBAAkB,EACvB,uBAAuB,EACvB,yBAAyB,EACzB,uBAAuB,EACvB,wBAAwB,EACzB,MAAM,iBAAiB,CAAC"}
package/dist/api/index.js CHANGED
@@ -2,6 +2,7 @@ export { registerApiKeyRoutes } from './apikeys.js';
2
2
  export { registerAuditRoutes } from './audit.js';
3
3
  export { registerBreakGlassRoutes } from './break-glass.js';
4
4
  export { registerCliAuthRoutes } from './cli-auth.js';
5
+ export { registerCliPackageRoutes } from './cli-package.js';
5
6
  export { demoSessionJudge, demoSignInOn, registerDemoPassRoutes } from './demo-passes.js';
6
7
  export { registerExportRoutes, resolveExportEntries, sanitizeEntryName, RESERVED_EXPORT_ENTRY_NAMES } from './export.js';
7
8
  export { registerFileRoutes } from './files.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAC1F,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,iBAAiB,EACjB,2BAA2B,EAG5B,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAEL,uBAAuB,EACvB,yBAAyB,EACzB,uBAAuB,EACvB,wBAAwB,EACzB,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,wBAAwB,EAA4B,MAAM,kBAAkB,CAAC;AACtF,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAC1F,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,iBAAiB,EACjB,2BAA2B,EAG5B,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAEL,uBAAuB,EACvB,yBAAyB,EACzB,uBAAuB,EACvB,wBAAwB,EACzB,MAAM,iBAAiB,CAAC"}
@@ -0,0 +1,44 @@
1
+ /**
2
+ * The tool's own CLI package, as the release packed it (PRDCT-3312): the
3
+ * folder `CLI_PACKAGE_DIR` names holds `package.tgz` (the output of
4
+ * `pnpm pack` of the tool's `packages/cli`) beside a copy of that package's
5
+ * `package.json`. The instance reads the pair ONCE at boot and serves the
6
+ * tarball on `POST /cli/package` (api/cli-package.ts, cloud only) to a member
7
+ * the hub let into the tool; discovery advertises `cli { name, version }` so
8
+ * the `team` command knows what it installs and whether to update.
9
+ *
10
+ * A folder that is named but does not hold the pair, or whose `package.json`
11
+ * carries no string `name` and `version`, refuses the boot (env.ts): a
12
+ * misconfiguration is proven at the image, never discovered by a person's
13
+ * install. Pure: nothing runs at import; the reads are synchronous and happen
14
+ * when the boot asks.
15
+ */
16
+ export interface CliPackage {
17
+ /** The package's npm name, from its `package.json` (e.g. `@scope/tool`). */
18
+ name: string;
19
+ /** The package's version, from its `package.json`. */
20
+ version: string;
21
+ /** The tarball's path (the configured folder joined with `package.tgz`), what the route streams. */
22
+ path: string;
23
+ /** The tarball's size when the boot read it (the route stats the file again when it serves). */
24
+ sizeBytes: number;
25
+ /** npm's own pack name for the pair, the attachment's filename. */
26
+ filename: string;
27
+ }
28
+ /** The tarball's name inside the folder, whatever the package is called. */
29
+ export declare const CLI_PACKAGE_TARBALL = "package.tgz";
30
+ /** The manifest copy beside it. */
31
+ export declare const CLI_PACKAGE_MANIFEST = "package.json";
32
+ /**
33
+ * npm's own pack filename: the scope's `@` dropped and its `/` turned into
34
+ * `-` (`@scope/tool` + `1.2.3` → `scope-tool-1.2.3.tgz`); an unscoped name is
35
+ * kept as it is (`tool` → `tool-1.2.3.tgz`).
36
+ */
37
+ export declare function packFilename(name: string, version: string): string;
38
+ /**
39
+ * Read the folder `CLI_PACKAGE_DIR` names. `undefined` (the variable unset)
40
+ * answers null: the instance serves no CLI. A named folder answers the
41
+ * package, or THROWS an Error naming the folder and the missing piece.
42
+ */
43
+ export declare function loadCliPackage(dir: string | undefined): CliPackage | null;
44
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cli-package/index.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,UAAU;IACzB,4EAA4E;IAC5E,IAAI,EAAE,MAAM,CAAC;IACb,sDAAsD;IACtD,OAAO,EAAE,MAAM,CAAC;IAChB,oGAAoG;IACpG,IAAI,EAAE,MAAM,CAAC;IACb,gGAAgG;IAChG,SAAS,EAAE,MAAM,CAAC;IAClB,mEAAmE;IACnE,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,4EAA4E;AAC5E,eAAO,MAAM,mBAAmB,gBAAgB,CAAC;AACjD,mCAAmC;AACnC,eAAO,MAAM,oBAAoB,iBAAiB,CAAC;AAEnD;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAGlE;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,UAAU,GAAG,IAAI,CAoCzE"}
@@ -0,0 +1,60 @@
1
+ import { readFileSync, statSync } from 'node:fs';
2
+ import { join } from 'node:path';
3
+ /** The tarball's name inside the folder, whatever the package is called. */
4
+ export const CLI_PACKAGE_TARBALL = 'package.tgz';
5
+ /** The manifest copy beside it. */
6
+ export const CLI_PACKAGE_MANIFEST = 'package.json';
7
+ /**
8
+ * npm's own pack filename: the scope's `@` dropped and its `/` turned into
9
+ * `-` (`@scope/tool` + `1.2.3` → `scope-tool-1.2.3.tgz`); an unscoped name is
10
+ * kept as it is (`tool` → `tool-1.2.3.tgz`).
11
+ */
12
+ export function packFilename(name, version) {
13
+ const base = name.startsWith('@') ? name.slice(1).replace('/', '-') : name;
14
+ return `${base}-${version}.tgz`;
15
+ }
16
+ /**
17
+ * Read the folder `CLI_PACKAGE_DIR` names. `undefined` (the variable unset)
18
+ * answers null: the instance serves no CLI. A named folder answers the
19
+ * package, or THROWS an Error naming the folder and the missing piece.
20
+ */
21
+ export function loadCliPackage(dir) {
22
+ if (dir === undefined)
23
+ return null;
24
+ const refuse = (what) => {
25
+ throw new Error(`CLI_PACKAGE_DIR=${dir}: ${what}`);
26
+ };
27
+ const tarball = join(dir, CLI_PACKAGE_TARBALL);
28
+ let stat;
29
+ try {
30
+ stat = statSync(tarball);
31
+ }
32
+ catch {
33
+ return refuse(`no ${CLI_PACKAGE_TARBALL} in the folder (the output of \`pnpm pack\` of the CLI package)`);
34
+ }
35
+ if (!stat.isFile())
36
+ return refuse(`${CLI_PACKAGE_TARBALL} is not a file`);
37
+ let raw;
38
+ try {
39
+ raw = readFileSync(join(dir, CLI_PACKAGE_MANIFEST), 'utf8');
40
+ }
41
+ catch {
42
+ return refuse(`no ${CLI_PACKAGE_MANIFEST} in the folder (a copy of the CLI package's manifest)`);
43
+ }
44
+ let manifest;
45
+ try {
46
+ manifest = JSON.parse(raw);
47
+ }
48
+ catch {
49
+ return refuse(`${CLI_PACKAGE_MANIFEST} is not valid JSON`);
50
+ }
51
+ const { name, version } = (manifest ?? {});
52
+ if (typeof name !== 'string' || name.length === 0) {
53
+ return refuse(`${CLI_PACKAGE_MANIFEST} carries no string "name"`);
54
+ }
55
+ if (typeof version !== 'string' || version.length === 0) {
56
+ return refuse(`${CLI_PACKAGE_MANIFEST} carries no string "version"`);
57
+ }
58
+ return { name, version, path: tarball, sizeBytes: stat.size, filename: packFilename(name, version) };
59
+ }
60
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli-package/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAc,MAAM,SAAS,CAAC;AAC7D,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AA8BjC,4EAA4E;AAC5E,MAAM,CAAC,MAAM,mBAAmB,GAAG,aAAa,CAAC;AACjD,mCAAmC;AACnC,MAAM,CAAC,MAAM,oBAAoB,GAAG,cAAc,CAAC;AAEnD;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,IAAY,EAAE,OAAe;IACxD,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC3E,OAAO,GAAG,IAAI,IAAI,OAAO,MAAM,CAAC;AAClC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAAC,GAAuB;IACpD,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACnC,MAAM,MAAM,GAAG,CAAC,IAAY,EAAS,EAAE;QACrC,MAAM,IAAI,KAAK,CAAC,mBAAmB,GAAG,KAAK,IAAI,EAAE,CAAC,CAAC;IACrD,CAAC,CAAC;IAEF,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAC;IAC/C,IAAI,IAAW,CAAC;IAChB,IAAI,CAAC;QACH,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC3B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,MAAM,CAAC,MAAM,mBAAmB,iEAAiE,CAAC,CAAC;IAC5G,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;QAAE,OAAO,MAAM,CAAC,GAAG,mBAAmB,gBAAgB,CAAC,CAAC;IAE1E,IAAI,GAAW,CAAC;IAChB,IAAI,CAAC;QACH,GAAG,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,CAAC,EAAE,MAAM,CAAC,CAAC;IAC9D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,MAAM,CAAC,MAAM,oBAAoB,uDAAuD,CAAC,CAAC;IACnG,CAAC;IACD,IAAI,QAAiB,CAAC;IACtB,IAAI,CAAC;QACH,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,MAAM,CAAC,GAAG,oBAAoB,oBAAoB,CAAC,CAAC;IAC7D,CAAC;IACD,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,QAAQ,IAAI,EAAE,CAA0C,CAAC;IACpF,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClD,OAAO,MAAM,CAAC,GAAG,oBAAoB,2BAA2B,CAAC,CAAC;IACpE,CAAC;IACD,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxD,OAAO,MAAM,CAAC,GAAG,oBAAoB,8BAA8B,CAAC,CAAC;IACvE,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC;AACvG,CAAC"}
package/dist/env.d.ts CHANGED
@@ -136,6 +136,8 @@ declare const chassisEnvShape: (version: string) => {
136
136
  true: "true";
137
137
  false: "false";
138
138
  }>, z.ZodTransform<boolean, "0" | "1" | "true" | "false">>>>;
139
+ /** The tool's own CLI package as the release packed it (PRDCT-3312): a folder holding `package.tgz` (the output of `pnpm pack` of `packages/cli`) beside a copy of that package's `package.json`. The image sets it. Cloud edition: the instance serves the tarball on `POST /cli/package` to a member the hub lets into the tool, and discovery carries `cli { name, version }` so the `team` command knows what it installs and whether to update. Unset = the instance serves no CLI: discovery carries no `cli` and the route answers 404 `cli_not_packaged`. A set value whose folder does not hold both files, or whose `package.json` has no string `name` and `version`, refuses the boot with the path and what is missing: a misconfiguration is proven at the image, never discovered by a person's install. */
140
+ CLI_PACKAGE_DIR: z.ZodPreprocess<z.ZodOptional<z.ZodString>>;
139
141
  /** R7 escape hatch (internal/federation.md): acknowledge an EDITION change on an already-set-up instance. Without it, boot refuses an EDITION that differs from the one stamped at setup — flipping editions under existing users/workspaces changes identity semantics and must be a conscious operator act. */
140
142
  EDITION_CHANGE_ALLOWED: z.ZodDefault<z.ZodPreprocess<z.ZodPipe<z.ZodEnum<{
141
143
  0: "0";
package/dist/env.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB;;;;;GAKG;AAEH;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,GAAI,GAAG,OAAO,YAA+D,CAAC;AAE3G,eAAO,MAAM,UAAU;;;;;2DAGtB,CAAC;AAEF,iFAAiF;AACjF,eAAO,MAAM,cAAc,GAAI,OAAO,CAAC,CAAC,SAAS,gDAAqD,CAAC;AAEvG;;;;;;;GAOG;AACH,eAAO,MAAM,OAAO,GAAI,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,uBAA0C,CAAC;AAEhG;;;;;;GAMG;AACH,eAAO,MAAM,OAAO,gBAAwC,CAAC;AAE7D;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAUxD;AAcD,kFAAkF;AAClF,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAW7D;AAYD;;;;GAIG;AACH,QAAA,MAAM,eAAe,GAAI,SAAS,MAAM;IACtC,8DAA8D;;IAE9D,2CAA2C;;IAE3C,oBAAoB;;IAEpB,gFAAgF;;IAEhF,2EAA2E;;IAM3E,2GAA2G;;;;;;;IAE3G,+EAA+E;;;;;;IAE/E,+FAA+F;;IAE/F,qZAAqZ;;IAUrZ,kRAAkR;;IAElR,oXAAoX;;;;;;;IAEpX,qVAAqV;;IAUrV,2pBAA2pB;;;;;;;IAE3pB,qSAAqS;;IAUrS,+SAA+S;;IAU/S,oCAAoC;;;IAGpC,4XAA4X;;;;;IAE5X,8LAA8L;;IAE9L,2HAA2H;;IAE3H,uSAAuS;;IAEvS,iRAAiR;;IAEjR,uOAAuO;;IAEvO,8bAA8b;;;;;;;IAE9b,iTAAiT;;;;;;;IAEjT,sNAAsN;;IAEtN,gaAAga;;;;;;;IAEha,yUAAyU;;IAEzU,mEAAmE;;IAEnE,6XAA6X;;IAE7X,mLAAmL;;IAEnL,+JAA+J;;IAE/J,gaAAga;;IAEha,iFAAiF;;;;;;;IAEjF,uEAAuE;;IAEvE,yCAAyC;;IAEzC,wCAAwC;;IAExC,mFAAmF;;IAEnF,2EAA2E;;IAE3E,2FAA2F;;;;;;;IAI3F,2DAA2D;;;;IAI3D,yEAAyE;;;;;;;IAEzE;;;;;;OAMG;;;;;;;IAEH,yFAAyF;;IAEzF,8FAA8F;;IAE9F,4EAA4E;;IAE5E,0QAA0Q;;IAE1Q,kBAAkB;;;;;;;;;;;;;;CAGlB,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC;AACjE,MAAM,MAAM,aAAa,GAAG,MAAM,eAAe,CAAC;AA0ClD;;;;GAIG;AACH,MAAM,WAAW,YAAY,CAAC,MAAM,SAAS,CAAC,CAAC,WAAW;IACxD,KAAK,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC;IACrD,+EAA+E;IAC/E,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,aAAa,KAAK,IAAI,CAAC;CAC/D;AAED,MAAM,WAAW,UAAU,CAAC,MAAM,SAAS,CAAC,CAAC,WAAW;IACtD,8DAA8D;IAC9D,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;CAClC;AAGD,wBAAgB,cAAc,CAAC,MAAM,SAAS,CAAC,CAAC,WAAW,GAAG,EAAE,EAC9D,OAAO,EAAE,UAAU,CAAC,MAAM,CAAC,GAC1B,CAAC,CAAC,SAAS,CAAC,eAAe,GAAG,MAAM,CAAC,CAwCvC;AAED,sGAAsG;AACtG,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC;AAC/D,kEAAkE;AAClE,MAAM,MAAM,OAAO,CAAC,MAAM,SAAS,CAAC,CAAC,WAAW,IAAI,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;AAC9F,sEAAsE;AACtE,MAAM,MAAM,GAAG,GAAG,UAAU,CAAC;AAE7B;;;;;;GAMG;AACH,MAAM,WAAW,SAAS;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB;;;;;;;OAOG;IACH,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAgBD,wBAAgB,SAAS,CAAC,GAAG,EAAE,GAAG,GAAG,SAAS,GAAG,IAAI,CAUpD;AAGD,wBAAgB,QAAQ,CAAC,MAAM,SAAS,CAAC,CAAC,WAAW,GAAG,EAAE,EACxD,MAAM,EAAE,MAAM,CAAC,UAAU,EACzB,OAAO,EAAE,UAAU,CAAC,MAAM,CAAC,GAC1B,OAAO,CAAC,MAAM,CAAC,CAuBjB"}
1
+ {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":"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"}