yosr-seed 0.1.0-alpha.7 → 0.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,31 @@
1
1
  # yosr-seed
2
2
 
3
+ ## 0.1.0
4
+
5
+ ### Minor Changes
6
+
7
+ - First stable release of Yosr Seed: `create`, `doctor`, `info`, `gate`, and `profile`. Templates: Next.js full-stack (default), Hono (Node), and FastAPI (Python). Stack line: Node: Hono, Python: FastAPI. Named style profiles, create-time workflow options, `info` always prints a Recorded profile line (including first-run Clean defaults), and plain `npx create-yosr-seed` / `npx yosr-seed@latest` install copy.
8
+
9
+ ### Patch Changes
10
+
11
+ - Updated dependencies
12
+ - @yosr-ai/template-next-fullstack@0.1.0
13
+ - @yosr-ai/template-fastapi@0.1.0
14
+ - @yosr-ai/template-hono@0.1.0
15
+
16
+ ## 0.1.0-alpha.8
17
+
18
+ ### Minor Changes
19
+
20
+ - 2365a5b: Add the Hono API template (`--template hono`, ADR 0019): Node.js 24 running TypeScript with type stripping (no build step), Hono + Zod OpenAPI with Swagger UI, Biome, `tsc --noEmit`, Vitest in-process HTTP tests, a notes API, database none/SQLite/Postgres through Drizzle, API-key auth, Docker and Compose. The engine learns Biome enforcement (`enforcement.biome`), `#` alias roots and an explicit `.ts` import extension in the move codemods, and treats `stack.framework: "hono"` as API-only for workflow text.
21
+
22
+ ### Patch Changes
23
+
24
+ - Updated dependencies [2365a5b]
25
+ - @yosr-ai/template-next-fullstack@0.1.0-alpha.8
26
+ - @yosr-ai/template-fastapi@0.1.0-alpha.8
27
+ - @yosr-ai/template-hono@0.1.0-alpha.8
28
+
3
29
  ## 0.1.0-alpha.7
4
30
 
5
31
  ### Minor Changes
package/README.md CHANGED
@@ -1,25 +1,39 @@
1
1
  # yosr-seed
2
2
 
3
- **Yosr Seed** creates a gated project from a template — Next.js full-stack (`@yosr-ai/template-next-fullstack`, the default) or a FastAPI service (`@yosr-ai/template-fastapi`) — applies a style profile, and runs the template's checks (lint, typecheck, tests, …) before handing the repo over.
3
+ **Yosr Seed** creates a gated project from a template, applies a style profile, and runs the template's checks before handing the repo over.
4
+
5
+ Templates:
6
+
7
+ - `next-fullstack` (`@yosr-ai/template-next-fullstack`, the default) — Next.js full-stack
8
+ - `hono` (`@yosr-ai/template-hono`) — API-only Hono on Node.js 24
9
+ - `fastapi` (`@yosr-ai/template-fastapi`) — API-only FastAPI on Python 3.12+
10
+
11
+ Stack line: **Node: Hono, Python: FastAPI**.
4
12
 
5
13
  ## Quick start
6
14
 
7
15
  ```text
8
- npx create-yosr-seed@alpha
16
+ npx create-yosr-seed
9
17
  ```
10
18
 
11
- Use `@alpha` while the product is in alpha. After **0.1.0** ships, `@latest` will work too.
19
+ `create-yosr-seed` is the same as `yosr-seed create`. Inside a generated project, run the CLI with:
20
+
21
+ ```text
22
+ npx yosr-seed@latest info
23
+ npx yosr-seed@latest gate
24
+ ```
12
25
 
13
- `create-yosr-seed` is the same as `yosr-seed create`. For the FastAPI template:
26
+ Examples:
14
27
 
15
28
  ```text
16
- npx create-yosr-seed@alpha my-api --template fastapi
29
+ npx create-yosr-seed my-api --template fastapi
30
+ npx create-yosr-seed my-api --template hono
17
31
  ```
18
32
 
19
33
  ## Requirements
20
34
 
21
35
  - Node.js `>=24`
22
- - Next.js: `pnpm` (default) or `npm`
36
+ - Next.js / Hono: `pnpm` (default) or `npm`
23
37
  - FastAPI: [uv](https://docs.astral.sh/uv/) and Python `>=3.12`
24
38
 
25
39
  ## What you get
@@ -32,13 +46,19 @@ npx create-yosr-seed@alpha my-api --template fastapi
32
46
  - Optional Stripe payments (needs auth + Postgres)
33
47
  - Deploy: Vercel or Docker
34
48
 
49
+ `hono`: an API-only notes service (Hono, Zod OpenAPI, Biome, `tsc --noEmit`, Vitest) with:
50
+
51
+ - Database: none, SQLite, or Postgres (Drizzle)
52
+ - Auth: none or one shared API key
53
+ - Deploy: none or Docker + Compose
54
+
35
55
  `fastapi`: an API-only notes service (FastAPI, Pydantic v2, Ruff, Pyright, pytest) with:
36
56
 
37
57
  - Database: none (in-memory), SQLite, or Postgres (SQLAlchemy 2 + Alembic)
38
58
  - Auth: none or one shared API key
39
59
  - Deploy: none or Docker + Compose
40
60
 
41
- Style presets (Clean / Classic / Minimal) and tweaks shape layout, formatting, and agent rules. FastAPI honours layout, tests placement and error style, and skips the TypeScript-only settings.
61
+ Style presets (Clean / Classic / Minimal) and tweaks shape layout, formatting, and agent rules. FastAPI and Hono honour the settings they support and skip the rest.
42
62
 
43
63
  ## Commands
44
64
 
@@ -63,7 +83,7 @@ Style presets (Clean / Classic / Minimal) and tweaks shape layout, formatting, a
63
83
  | `yosr-seed --version` / `-v` | CLI and template versions |
64
84
  | `yosr-seed --help` / `-h` | Full flag list |
65
85
 
66
- Common create flags (see `--help` for all): `--template`, `--project-name`, `--database`, `--orm`, `--auth`, `--api`, `--payments`, `--deploy`, `--package-manager`, `--profile`, `--non-interactive`, `--save-profile`, `--e2e`, `--no-git`, `--push`.
86
+ Common create flags (see `--help` for all): `--template`, `--project-name`, `--database`, `--orm`, `--auth`, `--api`, `--payments`, `--deploy`, `--package-manager`, `--profile`, `--non-interactive`, `--save-profile`, `--e2e`, `--no-gate`, `--no-git`, `--push`.
67
87
 
68
88
  ## Style profile
69
89
 
@@ -80,6 +100,6 @@ Email **wzohny@gmail.com**. The source repository is private, so there is no pub
80
100
 
81
101
  ## License
82
102
 
83
- [Yosr Seed License](./LICENSE) (`SEE LICENSE IN LICENSE` on npm). Generated project files belong to you. The template packages `@yosr-ai/template-next-fullstack` and `@yosr-ai/template-fastapi` are MIT. Versions `0.1.0-alpha.0` through `0.1.0-alpha.5` were published under MIT.
103
+ [Yosr Seed License](./LICENSE) (`SEE LICENSE IN LICENSE` on npm). Generated project files belong to you. The template packages `@yosr-ai/template-next-fullstack`, `@yosr-ai/template-fastapi`, and `@yosr-ai/template-hono` are MIT.
84
104
 
85
105
  Site: [seed.yosr.ai](https://seed.yosr.ai)
package/dist/create.js CHANGED
@@ -82,6 +82,7 @@ function parseCreateArgs(args, manifest) {
82
82
  nonInteractive: false,
83
83
  packageManager: manifest.packageManagers?.default ?? "pnpm",
84
84
  e2e: false,
85
+ noGate: false,
85
86
  saveProfile: false,
86
87
  git: true,
87
88
  push: false,
@@ -103,6 +104,8 @@ function parseCreateArgs(args, manifest) {
103
104
  parsed.nonInteractive = true;
104
105
  else if (name === "e2e")
105
106
  parsed.e2e = true;
107
+ else if (name === "no-gate")
108
+ parsed.noGate = true;
106
109
  else if (name === "save-profile")
107
110
  parsed.saveProfile = true;
108
111
  else if (name === "no-git")
@@ -139,6 +142,12 @@ function parseCreateArgs(args, manifest) {
139
142
  }
140
143
  if (parsed.push && !parsed.git)
141
144
  throw new Error("--push needs git. Omit --no-git.");
145
+ if (parsed.noGate && parsed.e2e)
146
+ throw new Error("--e2e needs the gate. Omit --no-gate.");
147
+ if (parsed.noGate && parsed.push)
148
+ throw new Error("--push needs a green gate. Omit --no-gate.");
149
+ if (parsed.noGate && parsed.saveProfile)
150
+ throw new Error("--save-profile needs a green gate. Omit --no-gate.");
142
151
  return parsed;
143
152
  }
144
153
  function parseBooleanAnswer(raw, fallback) {
@@ -894,7 +903,9 @@ export async function runCreate(io) {
894
903
  spin?.stop(`Rendered ${secondsSince(renderStarted)}`);
895
904
  const ignored = rendered.ignored ?? [];
896
905
  if (ignored.length > 0) {
897
- const line = `Style: ${ignored.length} profile settings for TypeScript and front-end code do not apply to ${manifest.name}; skipped.`;
906
+ const line = manifest.stack?.framework === "hono"
907
+ ? `Style: ${ignored.length} profile settings this template ignores (for example Next.js-only lint) were skipped.`
908
+ : `Style: ${ignored.length} profile settings for TypeScript and front-end code do not apply to ${manifest.name}; skipped.`;
898
909
  if (session)
899
910
  session.log.step(line);
900
911
  else
@@ -908,66 +919,82 @@ export async function runCreate(io) {
908
919
  const wroteStarted = Date.now();
909
920
  spin?.start("Wrote");
910
921
  spin?.stop(`${wrote} ${secondsSince(wroteStarted)}`);
911
- const gateOptions = {
912
- dir: outDir,
913
- templateDir,
914
- services: true,
915
- e2e: flags.e2e,
916
- quiet: session !== undefined,
917
- shouldStop: () => abandoned,
918
- };
919
- let liveSteps = false;
920
- if (spin) {
921
- gateOptions.onStep = (event) => {
922
- liveSteps = true;
923
- const title = stepTitle(event.id);
924
- if (event.phase === "finish") {
925
- const seconds = event.durationSec !== undefined
926
- ? `${event.durationSec}s`
927
- : secondsSince(renderStarted);
928
- spin.stop(event.result === "passed"
929
- ? `${title} ${seconds}`
930
- : `${title} failed ${seconds}`);
931
- return;
932
- }
933
- spin.start(event.id === "install" ? "Installing dependencies" : title);
922
+ if (flags.noGate) {
923
+ gate = {
924
+ green: false,
925
+ exitCode: exitCodes.ok,
926
+ banner: "",
927
+ reportPath: path.join(outDir, ".seed", "report.md"),
928
+ steps: [],
929
+ problems: [],
930
+ installChanged: [],
931
+ testCount: 0,
934
932
  };
935
933
  }
936
- try {
937
- gate = await (io.runProjectGate ?? runGate)(gateOptions);
938
- }
939
- catch (error) {
934
+ else {
935
+ const gateOptions = {
936
+ dir: outDir,
937
+ templateDir,
938
+ services: true,
939
+ e2e: flags.e2e,
940
+ quiet: session !== undefined,
941
+ shouldStop: () => abandoned,
942
+ };
943
+ let liveSteps = false;
944
+ if (spin) {
945
+ gateOptions.onStep = (event) => {
946
+ liveSteps = true;
947
+ const title = stepTitle(event.id);
948
+ if (event.phase === "finish") {
949
+ const seconds = event.durationSec !== undefined
950
+ ? `${event.durationSec}s`
951
+ : secondsSince(renderStarted);
952
+ spin.stop(event.result === "passed"
953
+ ? `${title} ${seconds}`
954
+ : `${title} failed ${seconds}`);
955
+ return;
956
+ }
957
+ spin.start(event.id === "install" ? "Installing dependencies" : title);
958
+ };
959
+ }
960
+ try {
961
+ gate = await (io.runProjectGate ?? runGate)(gateOptions);
962
+ }
963
+ catch (error) {
964
+ if (abandoned)
965
+ return finishCancel();
966
+ throw error;
967
+ }
940
968
  if (abandoned)
941
969
  return finishCancel();
942
- throw error;
943
- }
944
- if (abandoned)
945
- return finishCancel();
946
- if (session && spin && !liveSteps) {
947
- for (const step of gate.steps) {
948
- if (step.durationSec === undefined)
949
- continue;
950
- const title = stepTitle(step.id);
951
- spin.start(step.id === "install" ? "Installing dependencies" : title);
952
- spin.stop(step.result === "passed"
953
- ? `${title} ${step.durationSec}s`
954
- : `${title} failed ${step.durationSec}s`);
970
+ if (session && spin && !liveSteps) {
971
+ for (const step of gate.steps) {
972
+ if (step.durationSec === undefined)
973
+ continue;
974
+ const title = stepTitle(step.id);
975
+ spin.start(step.id === "install" ? "Installing dependencies" : title);
976
+ spin.stop(step.result === "passed"
977
+ ? `${title} ${step.durationSec}s`
978
+ : `${title} failed ${step.durationSec}s`);
979
+ }
955
980
  }
956
- }
957
- if (!gate.green && session) {
958
- const failed = gate.steps.find((step) => step.result === "failed" || step.result === "timed-out");
959
- if (failed) {
960
- const title = stepTitle(failed.id);
961
- session.log.error(`${title} failed`);
962
- const text = failureLines(failed.excerpt ?? failed.head ?? "");
963
- if (text.length > 0)
964
- session.note(text, title);
981
+ if (!gate.green && session) {
982
+ const failed = gate.steps.find((step) => step.result === "failed" || step.result === "timed-out");
983
+ if (failed) {
984
+ const title = stepTitle(failed.id);
985
+ session.log.error(`${title} failed`);
986
+ const text = failureLines(failed.excerpt ?? failed.head ?? "");
987
+ if (text.length > 0)
988
+ session.note(text, title);
989
+ }
965
990
  }
966
991
  }
967
992
  if (flags.git) {
968
993
  const gitStarted = Date.now();
969
994
  spin?.start("Initial commit");
970
- commitProject(outDir, gate.green ? "Initial commit" : "Initial commit (not green)", io.gitIdentity);
995
+ commitProject(outDir, gate.green || flags.noGate
996
+ ? "Initial commit"
997
+ : "Initial commit (not green)", io.gitIdentity);
971
998
  spin?.stop(`Initial commit ${secondsSince(gitStarted)}`);
972
999
  }
973
1000
  }
@@ -1008,6 +1035,11 @@ export async function runCreate(io) {
1008
1035
  io.stderr(notPushed);
1009
1036
  }
1010
1037
  if (session) {
1038
+ if (flags.noGate) {
1039
+ session.log.success("Wrote project (gate skipped).");
1040
+ session.outro("Yosr Seed project is ready.");
1041
+ return exitCodes.ok;
1042
+ }
1011
1043
  if (!gate.green) {
1012
1044
  session.log.error(gate.banner ?? "NOT GREEN");
1013
1045
  session.outro(`The project was still written. See ${cd}/.seed/report.md`);
@@ -1018,7 +1050,8 @@ export async function runCreate(io) {
1018
1050
  session.log.message([
1019
1051
  `1. cd ${cd}`,
1020
1052
  `2. ${dev}`,
1021
- `3. Open the folder in Cursor and ask: ${TEMPLATES[templateId].ask}`,
1053
+ `3. npx yosr-seed@latest info`,
1054
+ `4. Open the folder in Cursor and ask: ${TEMPLATES[templateId].ask}`,
1022
1055
  ]);
1023
1056
  session.outro("Yosr Seed project is ready.");
1024
1057
  return exitCodes.ok;
@@ -1026,6 +1059,8 @@ export async function runCreate(io) {
1026
1059
  io.stdout(wrote);
1027
1060
  if (flags.git)
1028
1061
  io.stdout(".git initialized");
1062
+ if (flags.noGate)
1063
+ return exitCodes.ok;
1029
1064
  if (!gate.green) {
1030
1065
  io.stderr(gate.banner ?? "NOT GREEN");
1031
1066
  return gate.exitCode;
@@ -1 +1 @@
1
- {"version":3,"file":"create.js","sourceRoot":"","sources":["../src/create.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create.js","sourceRoot":"","sources":["../src/create.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EACL,aAAa,EACb,wBAAwB,EACxB,WAAW,EACX,YAAY,EACZ,kBAAkB,EAClB,QAAQ,EACR,SAAS,EACT,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,SAAS,EACT,gBAAgB,EAChB,mBAAmB,EACnB,gBAAgB,EAChB,WAAW,EACX,MAAM,EACN,mBAAmB,EACnB,OAAO,EACP,iBAAiB,EACjB,YAAY,GAab,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EACL,WAAW,EACX,QAAQ,EACR,SAAS,EACT,SAAS,EACT,mBAAmB,EACnB,WAAW,GAGZ,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,MAAM,EACN,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,WAAW,GAIZ,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,kBAAkB,EAAc,MAAM,UAAU,CAAC;AAC1D,OAAO,EACL,gBAAgB,EAChB,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,oBAAoB,EACpB,eAAe,EACf,WAAW,IAAI,qBAAqB,GAErC,MAAM,gBAAgB,CAAC;AAkBxB,gFAAgF;AAChF,MAAM,UAAU,oBAAoB,CAClC,KAAiB,gBAAgB;IAEjC,OAAO,qBAAqB,CAAC,EAAE,CAAC,CAAC;AACnC,CAAC;AAED,0FAA0F;AAC1F,MAAM,UAAU,gBAAgB,CAAC,IAAuB;IAItD,MAAM,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;IACvB,IAAI,QAAgC,CAAC;IACrC,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QACpD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QAChC,IAAI,KAAK,KAAK,YAAY,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC;YAAE,SAAS;QACzE,MAAM,MAAM,GAAG,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC;YAC5C,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC;YACnC,CAAC,CAAC,SAAS,CAAC;QACd,MAAM,KAAK,GAAG,MAAM,IAAI,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;QACxC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC;YAC/C,MAAM,IAAI,KAAK,CACb,wCAAwC,eAAe,EAAE,GAAG,CAC7D,CAAC;QACJ,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;YACtB,MAAM,IAAI,KAAK,CACb,oBAAoB,KAAK,YAAY,eAAe,EAAE,GAAG,CAC1D,CAAC;QACJ,QAAQ,GAAG,KAAK,CAAC;QACjB,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACjD,KAAK,IAAI,CAAC,CAAC;IACb,CAAC;IACD,OAAO,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAChE,CAAC;AAED,SAAS,QAAQ,CAAC,MAAqC;IACrD,IAAI,MAAM,CAAC,IAAI;QAAE,OAAO,MAAM,CAAC,IAAI,CAAC;IACpC,OAAO,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;AAC7E,CAAC;AAED,SAAS,SAAS,CAAC,KAAa;IAC9B,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC5B,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC7B,IAAI,EAAE,KAAK,CAAC,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACrC,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;AACjE,CAAC;AAED,SAAS,SAAS,CAChB,MAA0B,EAC1B,IAAc,EACd,IAAY;IAEZ,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC;IACxC,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACrB,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QAC7C,MAAM,IAAI,KAAK,CAAC,uBAAuB,IAAI,GAAG,CAAC,CAAC;IAClD,IAAI,CAAC,KAAK,EAAE,CAAC;IACb,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,WAAW,CAAC,MAA0B,EAAE,IAAc;IAC7D,IAAI,GAAG,GAAG,MAAM,CAAC;IACjB,IAAI,GAAG,KAAK,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;QACzE,GAAG,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;IACrB,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,MAAM;QAAE,OAAO,IAAI,CAAC;IACrD,IAAI,GAAG,KAAK,OAAO;QAAE,OAAO,KAAK,CAAC;IAClC,MAAM,IAAI,KAAK,CAAC,+BAA+B,GAAG,GAAG,CAAC,CAAC;AACzD,CAAC;AAED,SAAS,WAAW,CAAC,GAAW;IAC9B,IAAI,GAAG,KAAK,MAAM;QAAE,OAAO,IAAI,CAAC;IAChC,IAAI,GAAG,KAAK,OAAO;QAAE,OAAO,KAAK,CAAC;IAClC,IAAI,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;IAC5C,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,eAAe,CACtB,IAAuB,EACvB,QAA0B;IAE1B,MAAM,MAAM,GAAG,IAAI,GAAG,CACpB,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,CAC7D,CAAC;IACF,MAAM,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;IACvB,MAAM,QAAQ,GAAG,QAAQ,CAAC,eAAe,EAAE,SAAS,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACxE,MAAM,MAAM,GAAW;QACrB,cAAc,EAAE,KAAK;QACrB,cAAc,EAAE,QAAQ,CAAC,eAAe,EAAE,OAAO,IAAI,MAAM;QAC3D,GAAG,EAAE,KAAK;QACV,MAAM,EAAE,KAAK;QACb,WAAW,EAAE,KAAK;QAClB,GAAG,EAAE,IAAI;QACT,IAAI,EAAE,KAAK;QACX,KAAK,EAAE,EAAE;QACT,OAAO,EAAE,EAAE;KACZ,CAAC;IACF,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;QAC3B,IAAI,KAAK,KAAK,SAAS;YAAE,MAAM;QAC/B,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5B,IAAI,MAAM,CAAC,GAAG,KAAK,SAAS;gBAC1B,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;YACtD,MAAM,CAAC,GAAG,GAAG,KAAK,CAAC;YACnB,SAAS;QACX,CAAC;QACD,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;QAC1C,IAAI,IAAI,KAAK,iBAAiB;YAAE,MAAM,CAAC,cAAc,GAAG,IAAI,CAAC;aACxD,IAAI,IAAI,KAAK,KAAK;YAAE,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC;aACtC,IAAI,IAAI,KAAK,SAAS;YAAE,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC;aAC7C,IAAI,IAAI,KAAK,cAAc;YAAE,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC;aACvD,IAAI,IAAI,KAAK,QAAQ;YAAE,MAAM,CAAC,GAAG,GAAG,KAAK,CAAC;aAC1C,IAAI,IAAI,KAAK,MAAM;YAAE,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC;aACxC,IAAI,IAAI,KAAK,iBAAiB,EAAE,CAAC;YACpC,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YAC5C,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC;YACxD,IAAI,OAAO,KAAK,SAAS;gBACvB,MAAM,IAAI,KAAK,CACb,QAAQ,CAAC,MAAM,KAAK,CAAC;oBACnB,CAAC,CAAC,OAAO,QAAQ,CAAC,IAAI,kBAAkB,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,QAAQ;oBACjE,CAAC,CAAC,2BAA2B,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CACxD,CAAC;YACJ,MAAM,CAAC,cAAc,GAAG,OAAO,CAAC;QAClC,CAAC;aAAM,IAAI,IAAI,KAAK,SAAS;YAC3B,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;aAC5C,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;YAC1B,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YAC5C,MAAM,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAC9B,IAAI,EAAE,IAAI,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;YACtE,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;QACtE,CAAC;aAAM,CAAC;YACN,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAChC,IAAI,MAAM,KAAK,SAAS;gBAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,IAAI,GAAG,CAAC,CAAC;YACrE,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS;gBAC3B,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;;gBACnD,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;IACD,IAAI,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG;QAC5B,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;IACtD,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,GAAG;QAC7B,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;IAC3D,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI;QAC9B,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAChE,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,WAAW;QACrC,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACxE,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,kBAAkB,CACzB,GAAW,EACX,QAA6B;IAE7B,IAAI,GAAG,KAAK,EAAE,EAAE,CAAC;QACf,IAAI,QAAQ,KAAK,SAAS;YACxB,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;QAC1D,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,MAAM,IAAI,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;IAC/B,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,GAAG;QAAE,OAAO,IAAI,CAAC;IACnE,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,GAAG;QAAE,OAAO,KAAK,CAAC;IACpE,MAAM,IAAI,KAAK,CAAC,2BAA2B,GAAG,oBAAoB,CAAC,CAAC;AACtE,CAAC;AAED,KAAK,UAAU,GAAG,CAAC,EAAS,EAAE,IAAY;IACxC,IAAI,CAAC,EAAE,CAAC,MAAM;QACZ,MAAM,IAAI,KAAK,CACb,8EAA8E,CAC/E,CAAC;IACJ,OAAO,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,GAAG,IAAI,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AACjD,CAAC;AAED,SAAS,MAAM,CAAC,GAAW,EAAE,IAAc;IACzC,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;IACtE,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QACrB,MAAM,IAAI,KAAK,CACb,CAAC,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,IAAI,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,IAAI,EAAE,CACzE,CAAC;AACN,CAAC;AAED,SAAS,aAAa,CACpB,GAAW,EACX,OAAe,EACf,QAAqD;IAErD,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IACtB,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/D,MAAM,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,YAAY,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;IACnE,CAAC;IACD,MAAM,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;IAC3B,MAAM,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;AACzC,CAAC;AAID,SAAS,YAAY,CAAC,OAAe;IACnC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC;AAC7D,CAAC;AAED,MAAM,UAAU,GAA2B;IACzC,OAAO,EAAE,wBAAwB;IACjC,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,cAAc;IACtB,SAAS,EAAE,WAAW;IACtB,KAAK,EAAE,OAAO;IACd,IAAI,EAAE,OAAO;CACd,CAAC;AAEF,SAAS,SAAS,CAAC,EAAU;IAC3B,OAAO,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;AAC9B,CAAC;AAED,SAAS,SAAS,CAChB,EAAS,EACT,OAA6B,EAC7B,KAAY;IAEZ,IAAI,KAAK,CAAC,EAAE,EAAE,CAAC;QACb,IAAI,OAAO;YAAE,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC7C,OAAO;IACT,CAAC;IACD,IAAI,OAAO;QAAE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;;QACtC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AAC7B,CAAC;AAED,SAAS,WAAW,CAAC,GAAW,EAAE,MAAc;IAC9C,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAC5C,IAAI,QAAQ,KAAK,EAAE,IAAI,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;QAC3E,OAAO,MAAM,CAAC;IAChB,OAAO,KAAK,QAAQ,EAAE,CAAC;AACzB,CAAC;AAED,SAAS,YAAY,CAAC,IAAY;IAChC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACxE,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC/D,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACnE,CAAC;AAED,gFAAgF;AAChF,SAAS,UAAU,CACjB,MAAc,EACd,QAA0B,EAC1B,OAA+B,EAC/B,WAAmB;IAEnB,MAAM,MAAM,GAAG,CAAC,QAAQ,CAAC,KAAK,EAAE,UAAU,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CACnE,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,CAClC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,KAAK,SAAS,CACvC,CACF,CAAC;IACF,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IACpC,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC;IAC5D,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,OAAO,IAAI,EAAE,CAAC;IACrD,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,aAAa,GAAG,WAAW,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACvD,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;QAC5C,MAAM,GAAG,GAAG,MAAM;aACf,UAAU,CAAC,wBAAwB,EAAE,aAAa,CAAC;aACnD,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACtB,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YAAE,SAAS;QACnE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACd,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACpB,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,UAAU,CACjB,MAAc,EACd,QAAoB,EACpB,QAA0B,EAC1B,OAA+B,EAC/B,cAAsB,EACtB,WAAmB;IAEnB,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;IACnE,OAAO;QACL,SAAS,CAAC,QAAQ,CAAC,CAAC,KAAK;QACzB,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACnD,8DAA8D;QAC9D,oBAAoB,cAAc,EAAE;KACrC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,SAAS,SAAS,CAAC,IAAuB,EAAE,GAAW;IACrD,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IACrE,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;AAClE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,EAAS;IACvC,IAAI,OAA6B,CAAC;IAClC,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,IAAI,WAAW,GAAiB,GAAG,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC;IACxD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,gBAAgB,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAClD,IAAI,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;QAC/B,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC;YACxD,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC;QACnB,IAAI,QAAQ,EAAE,CAAC;YACb,QAAQ,CAAC,KAAK,CACZ,QAAQ,KAAK,SAAS;gBACpB,CAAC,CAAC,aAAa,EAAE,CAAC,OAAO,EAAE;gBAC3B,CAAC,CAAC,aAAa,EAAE,CAAC,OAAO,MAAM,SAAS,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE,CAC7D,CAAC;YACF,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC3B,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;oBACnC,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,UAAU;oBACnB,IAAI,EAAE,SAAS;oBACf,YAAY,EAAE,gBAAgB;oBAC9B,OAAO,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;wBACjC,KAAK,EAAE,EAAE;wBACT,KAAK,EAAE,SAAS,CAAC,EAAE,CAAC,CAAC,KAAK;wBAC1B,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,CAAC,IAAI;qBACzB,CAAC,CAAC;iBACJ,CAAC,CAAC;gBACH,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;oBACvD,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;oBAC7B,OAAO,SAAS,CAAC,OAAO,CAAC;gBAC3B,CAAC;gBACD,QAAQ,GAAG,MAAM,CAAC;YACpB,CAAC;;gBAAM,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,mBAAmB,QAAQ,EAAE,CAAC,CAAC;QAC1D,CAAC;aAAM,CAAC;YACN,QAAQ,KAAK,gBAAgB,CAAC;YAC9B,EAAE,CAAC,MAAM,CAAC,mBAAmB,QAAQ,EAAE,CAAC,CAAC;QAC3C,CAAC;QACD,MAAM,UAAU,GAAe,QAAQ,CAAC;QACxC,MAAM,WAAW,GAAG,oBAAoB,CAAC,UAAU,CAAC,CAAC;QACrD,MAAM,QAAQ,GAAG,oBAAoB,CAAC,UAAU,CAAC,CAAC;QAClD,MAAM,aAAa,GAAG,aAAa,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAC5D,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAC/B,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,CAC7C,CAAC;QACF,MAAM,KAAK,GAAG,eAAe,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACrD,MAAM,GAAG,GAAG,EAAE,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QACpC,MAAM,QAAQ,GAAoB;YAChC,GAAG,EAAE,EAAE,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG;YAC1B,QAAQ,EAAE,EAAE,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ;YACzC,OAAO,EAAE,EAAE,CAAC,OAAO,IAAI,OAAO,EAAE;SACjC,CAAC;QACF,mBAAmB,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;QACzD,OAAO,GAAG,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC;QAC5D,IACE,CAAC,KAAK,CAAC,cAAc;YACrB,KAAK,CAAC,OAAO,CAAC,WAAW,KAAK,SAAS;YACvC,CAAC,EAAE,CAAC,MAAM;YACV,OAAO,KAAK,SAAS,EACrB,CAAC;YACD,MAAM,IAAI,KAAK,CACb,8EAA8E,CAC/E,CAAC;QACJ,CAAC;QACD,IAAI,KAAK,CAAC,cAAc,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACpE,EAAE,CAAC,MAAM,CAAC,8DAA8D,CAAC,CAAC;YAC1E,OAAO,SAAS,CAAC,OAAO,CAAC;QAC3B,CAAC;QAED,MAAM,SAAS,GAAG,GAAW,EAAE;YAC7B,OAAO,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;YAC7B,OAAO,SAAS,CAAC,OAAO,CAAC;QAC3B,CAAC,CAAC;QAEF,KAAK,UAAU,SAAS,CAAC,IAAkB;YACzC,IAAI,OAAO,EAAE,CAAC;gBACZ,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACzC,IAAI,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC;oBAAE,OAAO,SAAS,CAAC;gBAC9C,OAAO,KAAK,CAAC;YACf,CAAC;YACD,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC3B,IAAI,IAA4B,CAAC;gBACjC,OAAO,IAAI,KAAK,SAAS,EAAE,CAAC;oBAC1B,MAAM,MAAM,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;oBACjE,IAAI,YAAY,CAAC,MAAM,CAAC;wBAAE,IAAI,GAAG,MAAM,CAAC;;wBACnC,EAAE,CAAC,MAAM,CAAC,oCAAoC,CAAC,CAAC;gBACvD,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC;YACD,IAAI,OAA2B,CAAC;YAChC,OAAO,OAAO,KAAK,SAAS,EAAE,CAAC;gBAC7B,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,EAAE,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;gBACjD,MAAM,GAAG,GAAG,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC;gBACvD,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CACzB,CAAC,MAAM,EAAE,EAAE,CACT,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,GAAG,CAAC,WAAW,EAAE;oBAChD,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,GAAG,CAAC,WAAW,EAAE,CACnD,EAAE,KAAK,CAAC;gBACT,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;oBAC1B,EAAE,CAAC,MAAM,CACP,IAAI,GAAG,yBAAyB,IAAI,CAAC,OAAO,YAAY,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAClH,CAAC;gBACJ,CAAC;YACH,CAAC;YACD,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,KAAK,UAAU,UAAU,CACvB,IAAmB;YAEnB,IAAI,OAAO,EAAE,CAAC;gBACZ,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBAC1C,IAAI,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC;oBAAE,OAAO,SAAS,CAAC;gBAC9C,OAAO,KAAK,CAAC;YACf,CAAC;YACD,IAAI,QAA6B,CAAC;YAClC,OAAO,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC9B,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,EAAE,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC9C,IAAI,CAAC;oBACH,QAAQ,GAAG,kBAAkB,CAAC,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;gBACxD,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,EAAE,CAAC,MAAM,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;gBACpE,CAAC;YACH,CAAC;YACD,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,KAAK,UAAU,OAAO,CAAC,IAAgB;YACrC,IAAI,OAAO,EAAE,CAAC;gBACZ,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACvC,IAAI,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC;oBAAE,OAAO,SAAS,CAAC;gBAC9C,OAAO,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC;YAClD,CAAC;YACD,IAAI,QAA4B,CAAC;YACjC,OAAO,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC9B,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,EAAE,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC9C,MAAM,KAAK,GAAG,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC;gBACnD,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBACnC,IAAI,KAAK,KAAK,SAAS;oBAAE,QAAQ,GAAG,KAAK,CAAC;;oBACrC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACxB,CAAC;YACD,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,KAAK,UAAU,WAAW,CAAC,KAAa;YACtC,IAAI,OAAO,GAAG,KAAK,CAAC;YACpB,SAAS,CAAC;gBACR,MAAM,MAAM,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;gBACpC,IAAI,MAAM,CAAC,EAAE;oBAAE,OAAO,OAAO,CAAC;gBAC9B,IAAI,CAAC,OAAO,EAAE,CAAC;oBACb,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;oBACvB,OAAO,SAAS,CAAC;gBACnB,CAAC;gBACD,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC;oBAC7B,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,MAAM,CAAC,IAAI;oBACpB,IAAI,EAAE,SAAS;oBACf,YAAY,EAAE,QAAQ;oBACtB,OAAO,EAAE;wBACP,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,mBAAmB,EAAE;wBAC/C,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;qBACrC;iBACF,CAAC,CAAC;gBACH,IAAI,MAAM,KAAK,QAAQ;oBAAE,OAAO,SAAS,CAAC;gBAC1C,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC;oBAC5B,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE,aAAa;oBACtB,YAAY,EAAE,QAAQ;oBACtB,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAClB,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,sBAAsB;iBAC/D,CAAC,CAAC;gBACH,IAAI,OAAO,KAAK,SAAS;oBAAE,OAAO,SAAS,CAAC;gBAC5C,KAAK,CAAC,GAAG,GAAG,OAAO,CAAC;gBACpB,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;gBACrC,SAAS,CAAC,EAAE,EAAE,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;YAC/C,CAAC;QACH,CAAC;QAED,MAAM,GAAG,GAAG,EAAE,CAAC,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC/C,MAAM,KAAK,GAAG,EAAE,CAAC,KAAK,IAAI,SAAS,EAAE,CAAC;QACtC,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC;QACvC,MAAM,SAAS,GAAY;YACzB,SAAS,CAAC,EAAE,CAAC,WAAW,CAAC;YACzB,mBAAmB,CAAC,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC;YAChD,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7D,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,WAAW,CAAC;SAC3C,CAAC;QACF,MAAM,QAAQ,GACZ,KAAK,CAAC,GAAG;YACT,CAAC,OAAO,KAAK,CAAC,OAAO,CAAC,WAAW,KAAK,QAAQ;gBAC5C,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW;gBAC3B,CAAC,CAAC,SAAS,CAAC,CAAC;QACjB,IAAI,aAAa,GAAG,KAAK,CAAC;QAC1B,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC;YACxD,IAAI,MAAM,CAAC,EAAE;gBAAE,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;iBACjC,IAAI,CAAC,OAAO,EAAE,CAAC;gBAClB,KAAK,MAAM,KAAK,IAAI,SAAS;oBAAE,SAAS,CAAC,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;gBAC7D,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACvB,OAAO,SAAS,CAAC,OAAO,CAAC;YAC3B,CAAC;iBAAM,CAAC;gBACN,KAAK,MAAM,KAAK,IAAI,SAAS;oBAAE,SAAS,CAAC,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;gBAC7D,aAAa,GAAG,IAAI,CAAC;gBACrB,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;oBAAE,OAAO,SAAS,CAAC,OAAO,CAAC;gBACnE,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC;gBAC/D,IAAI,OAAO,KAAK,SAAS;oBAAE,OAAO,SAAS,EAAE,CAAC;gBAC9C,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC;aAAM,IAAI,OAAO,EAAE,CAAC;YACnB,SAAS,CAAC,IAAI,CAAC;gBACb,IAAI,EAAE,QAAQ;gBACd,EAAE,EAAE,IAAI;gBACR,IAAI,EAAE,wCAAwC;aAC/C,CAAC,CAAC;QACL,CAAC;QACD,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,KAAK,MAAM,KAAK,IAAI,SAAS;gBAAE,SAAS,CAAC,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;YAC7D,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;gBAAE,OAAO,SAAS,CAAC,OAAO,CAAC;QACrE,CAAC;QAED,MAAM,OAAO,GAAG,CAAC,KAAiB,EAAgB,EAAE,CAClD,YAAY,CAAC;YACX,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,GAAG;YACH,WAAW,EAAE,EAAE,CAAC,OAAO;SACxB,CAAC,CAAC;QAEL,KAAK,UAAU,QAAQ,CACrB,OAA+B;YAE/B,MAAM,UAAU,GAAG,YAAY,EAAE,CAAC;YAClC,IAAI,OAAO,KAAK,SAAS;gBAAE,UAAU,CAAC,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;YACpE,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,UAAU,CAAC,CAAC;YAC/C,IAAI,UAAU,KAAK,SAAS;gBAAE,OAAO,SAAS,CAAC;YAC/C,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC;gBAAE,OAAO,SAAS,CAAC;YAChD,MAAM,OAAO,GACX,OAAO,KAAK,SAAS,IAAI,OAAO,CAAC,MAAM,KAAK,UAAU;gBACpD,CAAC,CAAC,EAAE,GAAG,aAAa,CAAC,UAAU,CAAC,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE;gBACrD,CAAC,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;YAChC,MAAM,MAAM,GAAiB,EAAE,CAAC;YAChC,KAAK,MAAM,EAAE,IAAI,aAAa;gBAAE,MAAM,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC;YACzD,KAAK,MAAM,KAAK,IAAI,WAAW,EAAE,CAAC;gBAChC,MAAM,KAAK,GAAG,MAAM,SAAS,CAC3B,WAAW,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CACzD,CAAC;gBACF,IAAI,KAAK,KAAK,SAAS;oBAAE,OAAO,SAAS,CAAC;gBAC1C,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC;YAC3B,CAAC;YACD,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;QACxC,CAAC;QAED,2EAA2E;QAC3E,IAAI,OAAsB,CAAC;QAC3B,IAAI,UAAkC,CAAC;QACvC,IAAI,cAAc,GAAG,KAAK,CAAC,WAAW,CAAC;QACvC,2FAA2F;QAC3F,IAAI,mBAAuC,CAAC;QAC5C,wEAAwE;QACxE,IAAI,UAA8B,CAAC;QACnC,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;QAC5D,MAAM,KAAK,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QACzC,MAAM,cAAc,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QAEpD,SAAS,UAAU,CACjB,IAAY,EACZ,IAAY,EACZ,MAAoB,EACpB,QAAkC;YAElC,mBAAmB,GAAG,IAAI,CAAC;YAC3B,UAAU,GAAG,IAAI,CAAC;YAClB,OAAO,GAAG,MAAM,CAAC;YACjB,IAAI,QAAQ,KAAK,eAAe;gBAC9B,EAAE,CAAC,MAAM,CAAC,kBAAkB,IAAI,KAAK,IAAI,GAAG,CAAC,CAAC;QAClD,CAAC;QAED,KAAK,UAAU,YAAY,CACzB,IAAY,EACZ,IAAY,EACZ,MAAoB;YAEpB,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;YACvC,MAAM,IAAI,GAAG,2BAA2B,gBAAgB,CAAC,OAAO,CAAC,EAAE,CAAC;YACpE,OAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,KAAK,IAAI,EAAE,EAAE,aAAa,CAAC,CAAC;YACjD,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC;gBAC7B,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,aAAa;gBACtB,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,MAAM;gBACpB,OAAO,EAAE;oBACP,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,kBAAkB,EAAE;oBAC5C,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,yBAAyB,EAAE;oBACrD,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,iBAAiB,EAAE;iBAC5C;aACF,CAAC,CAAC;YACH,IAAI,MAAM,KAAK,SAAS;gBAAE,OAAO,QAAQ,CAAC;YAC1C,IAAI,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;gBAC7C,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC;oBAC1B,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,MAAM;oBACjC,MAAM,EAAE;wBACN,GAAG,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC;wBAC3C,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM;qBAC7B;iBACF,CAAC,CAAC;gBACH,IAAI,IAAI,KAAK,SAAS;oBAAE,OAAO,QAAQ,CAAC;gBACxC,UAAU,GAAG,IAAI,CAAC;gBAClB,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;gBACxB,IAAI,MAAM,KAAK,MAAM;oBAAE,cAAc,GAAG,IAAI,CAAC;YAC/C,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAChC,IAAI,gBAAgB,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;gBACpC,EAAE,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAC;gBACpC,OAAO,GAAG,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBACrC,mBAAmB,GAAG,SAAS,CAAC;gBAChC,UAAU,GAAG,SAAS,CAAC;YACzB,CAAC;iBAAM,CAAC;gBACN,MAAM,QAAQ,GAAG,mBAAmB,CAAC,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;gBAC9D,UAAU,CACR,QAAQ,CAAC,IAAI,EACb,QAAQ,CAAC,IAAI,EACb,QAAQ,CAAC,OAAO,EAChB,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe,CACnC,CAAC;YACJ,CAAC;QACH,CAAC;aAAM,IAAI,CAAC,OAAO,EAAE,CAAC;YACpB,mEAAmE;YACnE,wEAAwE;YACxE,sEAAsE;YACtE,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;gBACjC,MAAM,QAAQ,GAAG,mBAAmB,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;gBAC/D,UAAU,CACR,QAAQ,CAAC,IAAI,EACb,QAAQ,CAAC,IAAI,EACb,QAAQ,CAAC,OAAO,EAChB,eAAe,CAChB,CAAC;YACJ,CAAC;iBAAM,IAAI,KAAK,CAAC,cAAc,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC;gBAC9C,OAAO,GAAG,YAAY,CAAC;oBACrB,MAAM,EAAE,OAAO;oBACf,GAAG;oBACH,WAAW,EAAE,EAAE,CAAC,OAAO;iBACxB,CAAC,CAAC;gBACH,mBAAmB,GAAG,SAAS,CAAC;gBAChC,UAAU,GAAG,KAAK,CAAC,WAAW;oBAC5B,CAAC,CAAC,gBAAgB,CAAC,QAAQ,EAAE,SAAS,CAAC;oBACvC,CAAC,CAAC,SAAS,CAAC;gBACd,EAAE,CAAC,MAAM,CACP,uFAAuF,CACxF,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,SAAS,CAAC,CAAC;gBACvC,IAAI,IAAI,KAAK,SAAS;oBAAE,OAAO,SAAS,EAAE,CAAC;gBAC3C,UAAU,GAAG,IAAI,CAAC;gBAClB,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;gBACxB,cAAc,GAAG,IAAI,CAAC;gBACtB,mBAAmB,GAAG,SAAS,CAAC;gBAChC,UAAU,GAAG,gBAAgB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;YACrD,CAAC;QACH,CAAC;aAAM,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YAChD,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC;gBAC7B,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,eAAe;gBACxB,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,cAAc,IAAI,KAAK,CAAC,CAAC,CAAE;gBACzC,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;oBAC5B,KAAK,EAAE,IAAI;oBACX,KAAK,EAAE,IAAI,KAAK,cAAc,CAAC,CAAC,CAAC,GAAG,IAAI,YAAY,CAAC,CAAC,CAAC,IAAI;iBAC5D,CAAC,CAAC;aACJ,CAAC,CAAC;YACH,IAAI,MAAM,KAAK,SAAS;gBAAE,OAAO,SAAS,EAAE,CAAC;YAC7C,MAAM,QAAQ,GAAG,mBAAmB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YACvD,IACE,CAAC,MAAM,YAAY,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;gBACpE,QAAQ;gBAER,OAAO,SAAS,EAAE,CAAC;QACvB,CAAC;aAAM,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YAClD,MAAM,QAAQ,GAAG,mBAAmB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAE,CAAC,CAAC;YAC1D,IACE,CAAC,MAAM,YAAY,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;gBACpE,QAAQ;gBAER,OAAO,SAAS,EAAE,CAAC;QACvB,CAAC;aAAM,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;YACxC,6EAA6E;YAC7E,MAAM,QAAQ,GAAG,mBAAmB,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;YAC/D,UAAU,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACrE,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,SAAS,CAAC,CAAC;YACvC,IAAI,IAAI,KAAK,SAAS;gBAAE,OAAO,SAAS,EAAE,CAAC;YAC3C,UAAU,GAAG,IAAI,CAAC;YAClB,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;YACxB,cAAc,GAAG,IAAI,CAAC;YACtB,mBAAmB,GAAG,SAAS,CAAC;YAChC,UAAU;gBACR,cAAc,KAAK,SAAS;oBAC1B,CAAC,CAAC,gBAAgB,CAAC,QAAQ,EAAE,cAAc,CAAC;oBAC5C,CAAC,CAAC,gBAAgB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;QAC9C,CAAC;QAED,MAAM,KAAK,GAAc,EAAE,cAAc,EAAE,KAAK,CAAC,cAAc,EAAE,CAAC;QAClE,KAAK,MAAM,MAAM,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;YACtC,MAAM,UAAU,GACd,MAAM,CAAC,IAAI,KAAK,SAAS;gBACzB,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC9C,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,SAAS;oBACxC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;gBAClC,SAAS;YACX,CAAC;YACD,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,SAAS;gBAAE,SAAS;YACrD,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;gBACzB,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;oBACjC,EAAE,CAAC,MAAM,CACP,GAAG,MAAM,CAAC,EAAE,uCAAuC,QAAQ,CAAC,MAAM,CAAC,GAAG,CACvE,CAAC;oBACF,OAAO,SAAS,CAAC,OAAO,CAAC;gBAC3B,CAAC;gBACD,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC;gBAC1C,SAAS;YACX,CAAC;YACD,MAAM,IAAI,GAAG,YAAY,CAAC,MAAM,EAAE;gBAChC,GAAG;gBACH,GAAG,CAAC,KAAK,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACvD,CAAC,CAAC;YACH,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC3B,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,CAAC;gBACpC,IAAI,KAAK,KAAK,SAAS;oBAAE,OAAO,SAAS,EAAE,CAAC;gBAC5C,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC;YACnC,CAAC;iBAAM,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBACnC,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,CAAC;gBACrC,IAAI,KAAK,KAAK,SAAS;oBAAE,OAAO,SAAS,EAAE,CAAC;gBAC5C,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC;YACnC,CAAC;iBAAM,CAAC;gBACN,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;gBAClC,IAAI,KAAK,KAAK,SAAS;oBAAE,OAAO,SAAS,EAAE,CAAC;gBAC5C,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC;YACnC,CAAC;QACH,CAAC;QAED,IACE,KAAK,CAAC,cAAc;YACpB,KAAK,CAAC,OAAO,CAAC,QAAQ,KAAK,SAAS;YACpC,KAAK,CAAC,OAAO,CAAC,QAAQ,KAAK,IAAI,EAC/B,CAAC;YACD,EAAE,CAAC,MAAM,CAAC,mBAAmB,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QACjE,CAAC;QAED,IAAI,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC;QAC5C,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAChE,EAAE,CAAC,MAAM,CAAC,8DAA8D,CAAC,CAAC;YAC1E,OAAO,SAAS,CAAC,OAAO,CAAC;QAC3B,CAAC;QACD,IAAI,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,IAAI,WAAW,CAAC,CAAC;QACzD,MAAM,YAAY,GAAG,MAAM,WAAW,CAAC,MAAM,CAAC,CAAC;QAC/C,IAAI,YAAY,KAAK,SAAS;YAC5B,OAAO,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC;QACnD,MAAM,GAAG,YAAY,CAAC;QAEtB,MAAM,YAAY,GAAG,GAAW,EAAE;YAChC,MAAM,IAAI,GAAG;gBACX,YAAY,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,IAAI,WAAW,CAAC,EAAE;gBAC9D,WAAW,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;gBAClC,oBAAoB,KAAK,CAAC,cAAc,EAAE;aAC3C,CAAC;YACF,KAAK,MAAM,MAAM,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACtC,IAAI,MAAM,CAAC,EAAE,KAAK,aAAa;oBAAE,SAAS;gBAC1C,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBACvC,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS;oBAAE,SAAS;gBACpD,MAAM,KAAK,GACT,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,KAAK,MAAM,CAAC,KAAK,CAAC,CAAC;oBAC9D,EAAE,KAAK,CAAC,GAAG,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC;gBACjC,IAAI,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,KAAK,EAAE,CAAC,CAAC;YAC7C,CAAC;YACD,IAAI,CAAC,IAAI,CACP,UAAU,gBAAgB,CAAC,OAAO,EAAE,aAAa,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,EAAE,CAC7E,CAAC;YACF,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzB,CAAC,CAAC;QAEF,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,QAAQ,GAAG,IAAI,CAAC;YACpB,OAAO,QAAQ,EAAE,CAAC;gBAChB,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,qBAAqB,CAAC,CAAC;gBACpD,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC;oBAC7B,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,qBAAqB;oBAC9B,IAAI,EAAE,SAAS;oBACf,YAAY,EAAE,QAAQ;oBACtB,OAAO,EAAE;wBACP,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE;wBACvC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,EAAE;wBACzC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;qBACrC;iBACF,CAAC,CAAC;gBACH,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,QAAQ;oBAAE,OAAO,SAAS,EAAE,CAAC;gBACpE,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;oBACxB,QAAQ,GAAG,KAAK,CAAC;oBACjB,SAAS;gBACX,CAAC;gBACD,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;oBAC7B,UAAU,GAAG;wBACX,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,MAAM;wBACjC,MAAM,EAAE;4BACN,GAAG,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC;4BAC3C,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM;yBAC7B;qBACF,CAAC;gBACJ,CAAC;gBACD,MAAM,QAAQ,GAAG;oBACf,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,qBAAqB,EAAE;oBACjD,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;wBAC7B,KAAK,EAAE,KAAK,CAAC,EAAE;wBACf,KAAK,EAAE,KAAK,CAAC,QAAQ;qBACtB,CAAC,CAAC;oBACH,GAAG,QAAQ,CAAC,OAAO;yBAChB,MAAM,CACL,CAAC,MAAM,EAAE,EAAE,CACT,MAAM,CAAC,IAAI,KAAK,SAAS;wBACzB,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAC9C;yBACA,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;wBAChB,KAAK,EAAE,UAAU,MAAM,CAAC,EAAE,EAAE;wBAC5B,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG;qBACxB,CAAC,CAAC;iBACN,CAAC;gBACF,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC;oBAC7B,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,eAAe;oBACxB,IAAI,EAAE,SAAS;oBACf,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,QAAQ;oBAC5C,OAAO,EAAE,QAAQ;iBAClB,CAAC,CAAC;gBACH,IAAI,MAAM,KAAK,SAAS;oBAAE,OAAO,SAAS,EAAE,CAAC;gBAC7C,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;oBACxB,MAAM,IAAI,GAAG,YAAY,EAAE,CAAC;oBAC5B,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC,MAAM,CAAC;oBACtC,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,CAAC;oBACzC,IAAI,UAAU,KAAK,SAAS,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC;wBACvD,OAAO,SAAS,EAAE,CAAC;oBACrB,UAAU,GAAG;wBACX,MAAM,EAAE,UAAU;wBAClB,MAAM,EACJ,UAAU,KAAK,UAAU,CAAC,MAAM;4BAC9B,CAAC,CAAC,UAAU,CAAC,MAAM;4BACnB,CAAC,CAAC,EAAE,GAAG,aAAa,CAAC,UAAU,CAAC,EAAE;qBACvC,CAAC;oBACF,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;oBAC9B,SAAS;gBACX,CAAC;gBACD,IAAI,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;oBACtB,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,MAAM,CAAC,CAAC;oBACxD,MAAM,KAAK,GAAG,MAAM,SAAS,CAC3B,WAAW,CACT,MAAM,EACN,KAAK,EAAE,QAAQ,IAAI,MAAM,EACzB,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC;wBACvB,aAAa,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAC3C,CACF,CAAC;oBACF,IAAI,KAAK,KAAK,SAAS;wBAAE,OAAO,SAAS,EAAE,CAAC;oBAC5C,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC;oBAClC,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;oBAC9B,SAAS;gBACX,CAAC;gBACD,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;gBAChD,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC;gBACrE,IAAI,MAAM,KAAK,SAAS;oBAAE,SAAS;gBACnC,MAAM,IAAI,GAAG,YAAY,CAAC,MAAM,EAAE;oBAChC,GAAG;oBACH,GAAG,CAAC,KAAK,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACvD,CAAC,CAAC;gBACH,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBAC3B,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;oBACzC,IAAI,OAAO,OAAO,KAAK,QAAQ;wBAAE,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC;oBAC7D,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,CAAC;oBACpC,IAAI,KAAK,KAAK,SAAS;wBAAE,OAAO,SAAS,EAAE,CAAC;oBAC5C,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC;gBACnC,CAAC;qBAAM,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;oBACnC,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,CAAC;oBACrC,IAAI,KAAK,KAAK,SAAS;wBAAE,OAAO,SAAS,EAAE,CAAC;oBAC5C,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC;gBACnC,CAAC;qBAAM,CAAC;oBACN,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;oBAClC,IAAI,KAAK,KAAK,SAAS;wBAAE,OAAO,SAAS,EAAE,CAAC;oBAC5C,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC;oBACjC,IAAI,MAAM,CAAC,EAAE,KAAK,aAAa,EAAE,CAAC;wBAChC,WAAW,GAAG,KAAK,CAAC;wBACpB,MAAM,OAAO,GAAG,MAAM,WAAW,CAC/B,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC,CACtC,CAAC;wBACF,IAAI,OAAO,KAAK,SAAS;4BAAE,OAAO,SAAS,EAAE,CAAC;wBAC9C,MAAM,GAAG,OAAO,CAAC;oBACnB,CAAC;gBACH,CAAC;gBACD,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;oBACpC,MAAM,UAAU,GACd,IAAI,CAAC,IAAI,KAAK,SAAS;wBACvB,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;oBAC5C,IAAI,CAAC,UAAU;wBAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;gBACjD,CAAC;YACH,CAAC;QACH,CAAC;aAAM,IAAI,CAAC,KAAK,CAAC,cAAc,IAAI,EAAE,CAAC,MAAM;YAAE,EAAE,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;QACzE,MAAM,KAAK,GAAuC;YAChD,WAAW;YACX,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,OAAO;YACP,GAAG,CAAC,mBAAmB,KAAK,SAAS;gBACnC,CAAC,CAAC,EAAE,WAAW,EAAE,mBAAmB,EAAE;gBACtC,CAAC,CAAC,EAAE,CAAC;YACP,MAAM;YACN,cAAc,EAAE,KAAK,CAAC,cAAc;YACpC,cAAc,EAAE,KAAK,CAAC,KAAK;SAC5B,CAAC;QACF,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QACvC,MAAM,KAAK,GAAG,SAAS,KAAK,EAAE,CAAC;QAC/B,MAAM,EAAE,GACN,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;YAC/C,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;YAChB,CAAC,CAAC,KAAK,CAAC;QACZ,MAAM,GAAG,GACP,KAAK,CAAC,cAAc,KAAK,KAAK;YAC5B,CAAC,CAAC,aAAa;YACf,CAAC,CAAC,KAAK,CAAC,cAAc,KAAK,IAAI;gBAC7B,CAAC,CAAC,YAAY;gBACd,CAAC,CAAC,UAAU,CAAC;QACnB,MAAM,WAAW,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACxC,MAAM,YAAY,GAAG,GAAW,EAAE;YAChC,IAAI,WAAW,IAAI,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;gBACtC,MAAM,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;gBACjD,MAAM,OAAO,GAAG,sBAAsB,KAAK,GAAG,CAAC;gBAC/C,IAAI,OAAO;oBAAE,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;;oBAChC,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC1B,CAAC;iBAAM,IAAI,OAAO;gBAAE,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;;gBAC3C,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YAC5B,OAAO,SAAS,CAAC,OAAO,CAAC;QAC3B,CAAC,CAAC;QACF,WAAW,GAAG,YAAY,CAAC;QAC3B,MAAM,QAAQ,GAAG,GAAS,EAAE;YAC1B,IAAI,SAAS;gBAAE,OAAO;YACtB,SAAS,GAAG,IAAI,CAAC;QACnB,CAAC,CAAC;QACF,IAAI,MAAM,GAAG,GAAS,EAAE,GAAE,CAAC,CAAC;QAC5B,IAAI,EAAE,CAAC,UAAU;YAAE,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;aACtC,CAAC;YACJ,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YAC/B,MAAM,GAAG,GAAG,EAAE;gBACZ,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YAClC,CAAC,CAAC;QACJ,CAAC;QACD,MAAM,IAAI,GAAG,OAAO,EAAE,OAAO,EAAE,CAAC;QAChC,IAAI,IAAgB,CAAC;QACrB,IAAI,QAAkC,CAAC;QACvC,IAAI,CAAC;YACH,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACjC,IAAI,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;YACzB,IAAI,CAAC;gBACH,QAAQ,GAAG,MAAM,kBAAkB,CAAC,KAAK,EAAE,EAAE,CAAC,aAAa,IAAI,MAAM,CAAC,CAAC;gBACvE,IAAI,SAAS;oBAAE,OAAO,YAAY,EAAE,CAAC;gBACrC,IAAI,EAAE,IAAI,CAAC,YAAY,YAAY,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;gBACtD,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,IAAI,EAAE,CAAC;gBACvC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACvB,MAAM,IAAI,GACR,QAAQ,CAAC,KAAK,EAAE,SAAS,KAAK,MAAM;wBAClC,CAAC,CAAC,UAAU,OAAO,CAAC,MAAM,uFAAuF;wBACjH,CAAC,CAAC,UAAU,OAAO,CAAC,MAAM,uEAAuE,QAAQ,CAAC,IAAI,YAAY,CAAC;oBAC/H,IAAI,OAAO;wBAAE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;;wBAC/B,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACvB,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;gBAC5B,MAAM,KAAK,CAAC;YACd,CAAC;YACD,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAChC,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;YACrB,IAAI,EAAE,IAAI,CAAC,GAAG,KAAK,IAAI,YAAY,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;YACrD,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;gBACjB,IAAI,GAAG;oBACL,KAAK,EAAE,KAAK;oBACZ,QAAQ,EAAE,SAAS,CAAC,EAAE;oBACtB,MAAM,EAAE,EAAE;oBACV,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,WAAW,CAAC;oBACnD,KAAK,EAAE,EAAE;oBACT,QAAQ,EAAE,EAAE;oBACZ,cAAc,EAAE,EAAE;oBAClB,SAAS,EAAE,CAAC;iBACb,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,MAAM,WAAW,GAAgB;oBAC/B,GAAG,EAAE,MAAM;oBACX,WAAW;oBACX,QAAQ,EAAE,IAAI;oBACd,GAAG,EAAE,KAAK,CAAC,GAAG;oBACd,KAAK,EAAE,OAAO,KAAK,SAAS;oBAC5B,UAAU,EAAE,GAAG,EAAE,CAAC,SAAS;iBAC5B,CAAC;gBACF,IAAI,SAAS,GAAG,KAAK,CAAC;gBACtB,IAAI,IAAI,EAAE,CAAC;oBACT,WAAW,CAAC,MAAM,GAAG,CAAC,KAAK,EAAE,EAAE;wBAC7B,SAAS,GAAG,IAAI,CAAC;wBACjB,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;wBAClC,IAAI,KAAK,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;4BAC7B,MAAM,OAAO,GACX,KAAK,CAAC,WAAW,KAAK,SAAS;gCAC7B,CAAC,CAAC,GAAG,KAAK,CAAC,WAAW,GAAG;gCACzB,CAAC,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;4BAClC,IAAI,CAAC,IAAI,CACP,KAAK,CAAC,MAAM,KAAK,QAAQ;gCACvB,CAAC,CAAC,GAAG,KAAK,IAAI,OAAO,EAAE;gCACvB,CAAC,CAAC,GAAG,KAAK,WAAW,OAAO,EAAE,CACjC,CAAC;4BACF,OAAO;wBACT,CAAC;wBACD,IAAI,CAAC,KAAK,CACR,KAAK,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,KAAK,CAC3D,CAAC;oBACJ,CAAC,CAAC;gBACJ,CAAC;gBACD,IAAI,CAAC;oBACH,IAAI,GAAG,MAAM,CAAC,EAAE,CAAC,cAAc,IAAI,OAAO,CAAC,CAAC,WAAW,CAAC,CAAC;gBAC3D,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,IAAI,SAAS;wBAAE,OAAO,YAAY,EAAE,CAAC;oBACrC,MAAM,KAAK,CAAC;gBACd,CAAC;gBACD,IAAI,SAAS;oBAAE,OAAO,YAAY,EAAE,CAAC;gBACrC,IAAI,OAAO,IAAI,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;oBAClC,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;wBAC9B,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS;4BAAE,SAAS;wBAC7C,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;wBACjC,IAAI,CAAC,KAAK,CACR,IAAI,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,KAAK,CAC1D,CAAC;wBACF,IAAI,CAAC,IAAI,CACP,IAAI,CAAC,MAAM,KAAK,QAAQ;4BACtB,CAAC,CAAC,GAAG,KAAK,IAAI,IAAI,CAAC,WAAW,GAAG;4BACjC,CAAC,CAAC,GAAG,KAAK,WAAW,IAAI,CAAC,WAAW,GAAG,CAC3C,CAAC;oBACJ,CAAC;gBACH,CAAC;gBACD,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,OAAO,EAAE,CAAC;oBAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAC5B,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,KAAK,WAAW,CAClE,CAAC;oBACF,IAAI,MAAM,EAAE,CAAC;wBACX,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;wBACnC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC;wBACrC,MAAM,IAAI,GAAG,YAAY,CAAC,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;wBAC/D,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;4BAAE,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;oBACjD,CAAC;gBACH,CAAC;YACH,CAAC;YACD,IAAI,KAAK,CAAC,GAAG,EAAE,CAAC;gBACd,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBAC9B,IAAI,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC;gBAC9B,aAAa,CACX,MAAM,EACN,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM;oBACxB,CAAC,CAAC,gBAAgB;oBAClB,CAAC,CAAC,4BAA4B,EAChC,EAAE,CAAC,WAAW,CACf,CAAC;gBACF,IAAI,EAAE,IAAI,CAAC,kBAAkB,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;YAC3D,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,MAAM,EAAE,CAAC;QACX,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,IAAI,cAAc,EAAE,CAAC;YACjC,MAAM,MAAM,GACV,UAAU;gBACV,CAAC,cAAc,KAAK,SAAS;oBAC3B,CAAC,CAAC,gBAAgB,CAAC,QAAQ,EAAE,cAAc,CAAC;oBAC5C,CAAC,CAAC,gBAAgB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC;YAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC;YAC5D,MAAM,OAAO,GACX,KAAK,CAAC,WAAW,IAAI,UAAU,CAAC,QAAQ,CAAC;gBACvC,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAkB;gBAC9D,CAAC,CAAC,OAAO,CAAC;YACd,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAC9B,IAAI,kBAAkB,CAAC,QAAQ,CAAC,KAAK,SAAS,EAAE,CAAC;gBAC/C,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBAC5C,iBAAiB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;YACpC,CAAC;QACH,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAC7B,CAAC,EAAE,CAAC,EAAE,IAAI,SAAS,CAAC,CAClB;gBACE,MAAM;gBACN,QAAQ;gBACR,WAAW;gBACX,UAAU;gBACV,MAAM;gBACN,WAAW;gBACX,QAAQ;aACT,EACD,MAAM,CACP,CAAC;QACJ,CAAC;aAAM,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;YACtB,MAAM,SAAS,GAAG,gCAAgC,CAAC;YACnD,IAAI,OAAO;gBAAE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;;gBACrC,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC5B,CAAC;QACD,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;gBACjB,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,+BAA+B,CAAC,CAAC;gBACrD,OAAO,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;gBAC7C,OAAO,SAAS,CAAC,EAAE,CAAC;YACtB,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;gBAChB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,IAAI,WAAW,CAAC,CAAC;gBAC9C,OAAO,CAAC,KAAK,CACX,sCAAsC,EAAE,kBAAkB,CAC3D,CAAC;gBACF,OAAO,IAAI,CAAC,QAAQ,CAAC;YACvB,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;YAC3C,OAAO,CAAC,IAAI,CACV,UAAU,CACR,MAAM,EACN,UAAU,EACV,QAAQ,EACR,QAAQ,EAAE,OAAO,IAAI,EAAE,EACvB,KAAK,CAAC,cAAc,EACpB,WAAW,CACZ,EACD,cAAc,CACf,CAAC;YACF,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;gBAClB,SAAS,EAAE,EAAE;gBACb,MAAM,GAAG,EAAE;gBACX,8BAA8B;gBAC9B,yCAAyC,SAAS,CAAC,UAAU,CAAC,CAAC,GAAG,EAAE;aACrE,CAAC,CAAC;YACH,OAAO,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;YAC7C,OAAO,SAAS,CAAC,EAAE,CAAC;QACtB,CAAC;QACD,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACjB,IAAI,KAAK,CAAC,GAAG;YAAE,EAAE,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;QAC7C,IAAI,KAAK,CAAC,MAAM;YAAE,OAAO,SAAS,CAAC,EAAE,CAAC;QACtC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,WAAW,CAAC,CAAC;YACtC,OAAO,IAAI,CAAC,QAAQ,CAAC;QACvB,CAAC;QACD,EAAE,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;QACjC,OAAO,SAAS,CAAC,EAAE,CAAC;IACtB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,SAAS;YAAE,OAAO,WAAW,EAAE,CAAC;QACpC,MAAM,OAAO,GACX,KAAK,YAAY,WAAW;YAC1B,CAAC,CAAC,KAAK,CAAC,OAAO;YACf,CAAC,CAAC,KAAK,YAAY,KAAK;gBACtB,CAAC,CAAC,KAAK,CAAC,OAAO;gBACf,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACtB,IAAI,OAAO;YAAE,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;;YAC/B,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACxB,OAAO,SAAS,CAAC,OAAO,CAAC;IAC3B,CAAC;AACH,CAAC"}
@@ -64,7 +64,8 @@ export function moveFiles(state, moves, owner) {
64
64
  const newTarget = moves.get(target) ?? target;
65
65
  if (newTarget === target && newPath === file)
66
66
  return all;
67
- const keepExt = /\.[a-z]+$/.test(spec) && !/\.(ts|tsx)$/.test(newTarget);
67
+ // A spec that already names its .ts file (Node type stripping needs the extension) keeps it.
68
+ const keepExt = /\.[a-z]+$/.test(spec) && (!/\.(ts|tsx)$/.test(newTarget) || /\.(m?ts|tsx)$/.test(spec));
68
69
  const strip = (specPath) => keepExt ? specPath : specPath.replace(/(\/index)?\.(ts|tsx|js|mjs)$/, "");
69
70
  let nextSpec = null;
70
71
  if (spec.startsWith(".")) {
@@ -1 +1 @@
1
- {"version":3,"file":"codemods.js","sourceRoot":"","sources":["../../src/render/codemods.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codemods.js","sourceRoot":"","sources":["../../src/render/codemods.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,18 @@
1
- import type { ConcreteDirs, Scalar, TemplateManifest, TreeState } from "./types.js";
1
+ import type { ConcreteDirs, Json, Scalar, TemplateManifest, TreeState } from "./types.js";
2
2
  /** Aliases whose default target directory has at least one file. */
3
3
  export declare function presentAliases(state: TreeState, aliases: Record<string, string>): Record<string, string>;
4
4
  export declare function eslintBlocks(applied: Record<string, Scalar>, aliases: Record<string, string>, dirs: ConcreteDirs): {
5
5
  imports: string[];
6
6
  blocks: string[];
7
7
  };
8
+ /** Prettier-style options for the format.* dimensions. Biome's formatter is set to match, and rendered source is formatted with them. */
9
+ export declare function formatOptions(applied: Record<string, Scalar>): Record<string, Scalar>;
10
+ /**
11
+ * Biome settings generated from the profile: formatter, import order and the
12
+ * `ts.*` / `imports.*` / `naming.files` lint rules. Fixed settings (file globs,
13
+ * erasable-syntax rules) live in the template's own biome.json.
14
+ */
15
+ export declare function biomeConfig(applied: Record<string, Scalar>): {
16
+ [key: string]: Json;
17
+ };
8
18
  export declare function applyEnforcement(state: TreeState, manifest: TemplateManifest, applied: Record<string, Scalar>, dirs: ConcreteDirs, concrete: (root: string) => string): Record<string, string>;