@beignet/cli 0.0.12 → 0.0.14
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 +26 -0
- package/README.md +24 -12
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +29 -0
- package/dist/index.js.map +1 -1
- package/dist/inspect.js +174 -0
- package/dist/inspect.js.map +1 -1
- package/dist/lint.d.ts.map +1 -1
- package/dist/lint.js +22 -3
- package/dist/lint.js.map +1 -1
- package/dist/make.d.ts +11 -0
- package/dist/make.d.ts.map +1 -1
- package/dist/make.js +1608 -0
- package/dist/make.js.map +1 -1
- package/dist/mcp.d.ts.map +1 -1
- package/dist/mcp.js +14 -2
- package/dist/mcp.js.map +1 -1
- package/dist/templates/agents.d.ts +4 -3
- package/dist/templates/agents.d.ts.map +1 -1
- package/dist/templates/agents.js +4 -3
- package/dist/templates/agents.js.map +1 -1
- package/dist/templates/index.d.ts.map +1 -1
- package/dist/templates/index.js +1 -0
- package/dist/templates/index.js.map +1 -1
- package/package.json +2 -2
- package/src/index.ts +35 -0
- package/src/inspect.ts +361 -0
- package/src/lint.ts +28 -3
- package/src/make.ts +1823 -0
- package/src/mcp.ts +16 -2
- package/src/templates/agents.ts +4 -3
- package/src/templates/index.ts +1 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,31 @@
|
|
|
1
1
|
# @beignet/cli
|
|
2
2
|
|
|
3
|
+
## 0.0.14
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- edf5ddc: Add first-class entitlement primitives for product access checks, devtools-ready entitlement decision observation, and doctor checks for entitlement wiring drift. Generated billing slices expose a billing-backed entitlements port.
|
|
8
|
+
- d51a35f: Add the provider-neutral payments port, memory payments adapter, Stripe payments provider, Next.js payment webhook route helper, `beignet make payments`, and first-class payments devtools view.
|
|
9
|
+
- 2baeb36: Add payments production-readiness doctor diagnostics, including Stripe-vs-memory provider wiring checks, and generated-app conformance coverage for the payments slice.
|
|
10
|
+
- Updated dependencies [0b106c3]
|
|
11
|
+
- Updated dependencies [6828442]
|
|
12
|
+
- Updated dependencies [edf5ddc]
|
|
13
|
+
- Updated dependencies [bcd3864]
|
|
14
|
+
- Updated dependencies [d51a35f]
|
|
15
|
+
- Updated dependencies [655c101]
|
|
16
|
+
- Updated dependencies [bcd3864]
|
|
17
|
+
- @beignet/core@0.0.14
|
|
18
|
+
|
|
19
|
+
## 0.0.13
|
|
20
|
+
|
|
21
|
+
### Patch Changes
|
|
22
|
+
|
|
23
|
+
- cac3d61: Align shared-domain, server context, and workflow-builder docs with current app conventions.
|
|
24
|
+
- 211d8e1: Generate CLAUDE.md alongside AGENTS.md in starter apps.
|
|
25
|
+
- Updated dependencies [cac3d61]
|
|
26
|
+
- Updated dependencies [7ccbab1]
|
|
27
|
+
- @beignet/core@0.0.13
|
|
28
|
+
|
|
3
29
|
## 0.0.12
|
|
4
30
|
|
|
5
31
|
### Patch Changes
|
package/README.md
CHANGED
|
@@ -57,8 +57,8 @@ By default the CLI creates a Next.js app with:
|
|
|
57
57
|
- Validated application use cases
|
|
58
58
|
- A Beignet server wired through Next.js route handlers
|
|
59
59
|
- App error helpers, auth helpers, env validation, health checks, and devtools
|
|
60
|
-
-
|
|
61
|
-
`beignet mcp` server for MCP clients such as Claude Code
|
|
60
|
+
- `AGENTS.md` and `CLAUDE.md` agent guides, plus a `.mcp.json` that registers
|
|
61
|
+
the `beignet mcp` server for MCP clients such as Claude Code
|
|
62
62
|
- A typed client
|
|
63
63
|
- TanStack Query
|
|
64
64
|
- React Hook Form
|
|
@@ -169,6 +169,7 @@ beignet make factory <feature>/<name> [options]
|
|
|
169
169
|
beignet make feature <name> [options]
|
|
170
170
|
beignet make job <feature>/<name> [options]
|
|
171
171
|
beignet make notification <feature>/<name> [options]
|
|
172
|
+
beignet make payments [options]
|
|
172
173
|
beignet make listener <feature>/<name> --event <feature>/<event> [options]
|
|
173
174
|
beignet make schedule <feature>/<name> [options]
|
|
174
175
|
beignet make upload <feature>/<name> [options]
|
|
@@ -213,6 +214,7 @@ Options:
|
|
|
213
214
|
--attempt 1 One-based provider attempt number for schedule runs.
|
|
214
215
|
--source manual Provider or app source label for schedule runs.
|
|
215
216
|
--with policy,events Add optional artifacts to `make feature`; also supports tasks, jobs, notifications, ui, uploads.
|
|
217
|
+
make payments Add `features/billing`, a payments webhook route, billing persistence, entitlement checks, and local memory payments provider wiring.
|
|
216
218
|
--auth Add authorization metadata, policy wiring, policy tests, and use-case gate checks to `make resource`.
|
|
217
219
|
--tenant Add tenant-scoped schemas, repository filters, and use-case tenant checks to `make resource`.
|
|
218
220
|
--events Add created, updated, and deleted domain events to `make resource`.
|
|
@@ -311,14 +313,15 @@ ports/index.ts
|
|
|
311
313
|
lib/use-case.ts
|
|
312
314
|
```
|
|
313
315
|
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
`lib/
|
|
317
|
-
|
|
316
|
+
Workflow builders are created on demand. New apps do not ship `lib/jobs.ts`,
|
|
317
|
+
`lib/listeners.ts`, `lib/notifications.ts`, `lib/schedules.ts`, or
|
|
318
|
+
`lib/tasks.ts`; each `beignet make ...` workflow generator creates only the
|
|
319
|
+
app-bound builder it needs.
|
|
318
320
|
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
321
|
+
The CLI uses this shape to inspect routes, wire generated features, and report
|
|
322
|
+
drift safely. `beignet doctor` treats absent workflow-tier files as fine and
|
|
323
|
+
reports misplaced or stale workflow artifacts when they drift from the app
|
|
324
|
+
layout.
|
|
322
325
|
|
|
323
326
|
Use `beignet.config.ts`, `beignet.config.js`,
|
|
324
327
|
`beignet.config.mjs`, or `beignet.config.json` when your app keeps
|
|
@@ -821,6 +824,15 @@ Today it detects:
|
|
|
821
824
|
- Feature seeds without a `db:seed` package script
|
|
822
825
|
- Upload definitions without an upload route
|
|
823
826
|
- Upload definitions without explicit size limits
|
|
827
|
+
- Billing slices without a payment webhook route
|
|
828
|
+
- Billing checkout contracts missing idempotency metadata or an
|
|
829
|
+
`idempotency-key` header
|
|
830
|
+
- Billing webhook use cases that reference `ctx.ports.idempotency` when
|
|
831
|
+
`AppPorts` does not declare an idempotency port
|
|
832
|
+
- Entitlement checks without an `AppPorts` entitlements declaration
|
|
833
|
+
- Billing entitlement modules that are not wired into infra or server providers
|
|
834
|
+
- Stripe payments configuration paired with local memory payments provider
|
|
835
|
+
wiring
|
|
824
836
|
- Devtools routes that are explicitly enabled without authorization
|
|
825
837
|
- Cron routes that do not use `CRON_SECRET`
|
|
826
838
|
- Installed provider packages without expected environment configuration
|
|
@@ -880,9 +892,9 @@ Tool outputs match the JSON the matching `--json` flags print. Generated apps
|
|
|
880
892
|
ship a `.mcp.json` that registers the server through the app's package runner
|
|
881
893
|
(`bunx` in bun apps, `npx` in npm, pnpm, and yarn apps), so Claude Code picks
|
|
882
894
|
it up with no configuration; Cursor and VS Code users add the same command to
|
|
883
|
-
`.cursor/mcp.json` or `.vscode/mcp.json`. Generated apps also include
|
|
884
|
-
`AGENTS.md` covering registration, generator, placement, and
|
|
885
|
-
conventions.
|
|
895
|
+
`.cursor/mcp.json` or `.vscode/mcp.json`. Generated apps also include
|
|
896
|
+
`AGENTS.md` and `CLAUDE.md` covering registration, generator, placement, and
|
|
897
|
+
validation conventions.
|
|
886
898
|
|
|
887
899
|
## License
|
|
888
900
|
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAGA,OAAO,EAIL,KAAK,cAAc,EAInB,KAAK,4BAA4B,EACjC,KAAK,cAAc,EAEpB,MAAM,eAAe,CAAC;AAoBvB,KAAK,UAAU,GAAG,cAAc,GAAG;IACjC,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;CAClC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAGA,OAAO,EAIL,KAAK,cAAc,EAInB,KAAK,4BAA4B,EACjC,KAAK,cAAc,EAEpB,MAAM,eAAe,CAAC;AAoBvB,KAAK,UAAU,GAAG,cAAc,GAAG;IACjC,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;CAClC,CAAC;AAqgDF,wBAAsB,IAAI,CACxB,MAAM,WAAwB,EAC9B,OAAO,GAAE,4BAA4B,CAAC,UAAU,CAAe,GAC9D,OAAO,CAAC,IAAI,CAAC,CAiBf"}
|
package/dist/index.js
CHANGED
|
@@ -702,6 +702,26 @@ const makeScheduleCommand = buildCommand({
|
|
|
702
702
|
};
|
|
703
703
|
},
|
|
704
704
|
});
|
|
705
|
+
const makePaymentsCommand = buildCommand({
|
|
706
|
+
docs: {
|
|
707
|
+
brief: "Generate a payments-backed billing slice.",
|
|
708
|
+
},
|
|
709
|
+
parameters: {
|
|
710
|
+
flags: makeFlagParameters,
|
|
711
|
+
},
|
|
712
|
+
loader: async () => {
|
|
713
|
+
const { makePayments } = await import("./make.js");
|
|
714
|
+
return async function runMakePayments(flags) {
|
|
715
|
+
const result = await makePayments({
|
|
716
|
+
force: Boolean(flags.force),
|
|
717
|
+
dryRun: Boolean(flags.dryRun),
|
|
718
|
+
});
|
|
719
|
+
writeOutput(this, flags.json
|
|
720
|
+
? JSON.stringify(result, null, 2)
|
|
721
|
+
: makePaymentsNextSteps(result));
|
|
722
|
+
};
|
|
723
|
+
},
|
|
724
|
+
});
|
|
705
725
|
const makeRoutes = buildRouteMap({
|
|
706
726
|
docs: {
|
|
707
727
|
brief: "Generate Beignet app files.",
|
|
@@ -714,6 +734,7 @@ const makeRoutes = buildRouteMap({
|
|
|
714
734
|
feature: makeFeatureCommand,
|
|
715
735
|
job: simpleMakeCommand("makeJob", "Generate a feature job.", makeJobNextSteps),
|
|
716
736
|
notification: simpleMakeCommand("makeNotification", "Generate a feature notification.", makeNotificationNextSteps),
|
|
737
|
+
payments: makePaymentsCommand,
|
|
717
738
|
listener: makeListenerCommand,
|
|
718
739
|
policy: simpleMakeCommand("makePolicy", "Generate an authorization policy.", makePolicyNextSteps),
|
|
719
740
|
port: simpleMakeCommand("makePort", "Generate an application port.", makePortNextSteps),
|
|
@@ -993,6 +1014,14 @@ function makeNotificationNextSteps(result) {
|
|
|
993
1014
|
"Send the notification through ctx.ports.notifications so delivery can run inline in tests and through jobs in production.",
|
|
994
1015
|
]);
|
|
995
1016
|
}
|
|
1017
|
+
function makePaymentsNextSteps(result) {
|
|
1018
|
+
return makeNextSteps(result, "billing slice", [
|
|
1019
|
+
"Set BILLING_TEAM_PRICE_ID in .env.local to the provider price ID for your team plan.",
|
|
1020
|
+
"Run beignet db generate and beignet db migrate so billing_accounts exists before handling webhooks.",
|
|
1021
|
+
"Use createMemoryPaymentsProvider() for local development, then swap server/providers.ts to stripePaymentsProvider when STRIPE_SECRET_KEY and STRIPE_WEBHOOK_SECRET are configured.",
|
|
1022
|
+
"Run your app's test, lint, and typecheck commands, then beignet lint and beignet doctor.",
|
|
1023
|
+
]);
|
|
1024
|
+
}
|
|
996
1025
|
function makeListenerNextSteps(result) {
|
|
997
1026
|
return makeNextSteps(result, "listener", [
|
|
998
1027
|
"Replace the starter handler with the event reaction.",
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EACL,gBAAgB,EAChB,YAAY,EACZ,aAAa,EAGb,kBAAkB,EAClB,GAAG,EAGH,OAAO,GACR,MAAM,eAAe,CAAC;AACvB,OAAO,EAEL,sBAAsB,EAEtB,eAAe,EACf,oBAAoB,EAEpB,kBAAkB,EAElB,uBAAuB,EAEvB,qBAAqB,EAErB,eAAe,GAChB,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAQ7C,MAAM,mBAAmB,GAAG;IAC1B,OAAO;IACP,MAAM;IACN,QAAQ;CACkC,CAAC;AAiG7C,MAAM,WAAW,GAAG,CAAC,KAAa,EAAU,EAAE,CAAC,KAAK,CAAC;AACrD,MAAM,oBAAoB,GAAG,CAAC,KAAa,EAAU,EAAE;IACrD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC5B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;QAC3C,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;IAClD,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG;IAChB,IAAI,EAAE,SAAS;IACf,QAAQ,EAAE,IAAI;IACd,WAAW,EAAE,KAAK;IAClB,KAAK,EAAE,kEAAkE;CACjE,CAAC;AAEX,MAAM,UAAU,GAAG;IACjB,IAAI,EAAE,SAAS;IACf,QAAQ,EAAE,IAAI;IACd,WAAW,EAAE,KAAK;IAClB,KAAK,EAAE,kDAAkD;CACjD,CAAC;AAEX,MAAM,QAAQ,GAAG;IACf,IAAI,EAAE,SAAS;IACf,QAAQ,EAAE,IAAI;IACd,WAAW,EAAE,KAAK;IAClB,KAAK,EAAE,8BAA8B;CAC7B,CAAC;AAEX,MAAM,gBAAgB,GAAG,CAAC,KAAa,EAAE,EAAE,CACzC,CAAC;IACC,IAAI,EAAE,QAAQ;IACd,KAAK,EAAE,WAAW;IAClB,QAAQ,EAAE,IAAI;IACd,KAAK;CACN,CAAU,CAAC;AAEd,MAAM,OAAO,GAAG,gBAAgB,CAC9B,sEAAsE,CACvE,CAAC;AAEF,MAAM,UAAU,GAAG;IACjB,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,mBAAmB;IAC3B,QAAQ,EAAE,IAAI;IACd,KAAK,EACH,uEAAuE;CACjE,CAAC;AAEX,MAAM,kBAAkB,GAAG;IACzB,KAAK,EAAE,SAAS;IAChB,MAAM,EAAE,UAAU;IAClB,IAAI,EAAE,QAAQ;CACwC,CAAC;AAEzD,MAAM,oBAAoB,GAAG;IAC3B,IAAI,EAAE,QAAQ;IACd,GAAG,EAAE,OAAO;CAC4C,CAAC;AAE3D,MAAM,kBAAkB,GAAG;IACzB,IAAI,EAAE,QAAQ;IACd,GAAG,EAAE,OAAO;IACZ,MAAM,EAAE,UAAU;CACoC,CAAC;AAEzD,MAAM,gBAAgB,GAAG;IACvB,IAAI,EAAE,QAAQ;IACd,MAAM,EAAE,UAAU;CACkC,CAAC;AAEvD,MAAM,qBAAqB,GAAG;IAC5B,IAAI,EAAE,QAAQ;IACd,KAAK,EAAE,gBAAgB,CAAC,uCAAuC,CAAC;IAChE,MAAM,EAAE,gBAAgB,CACtB,oDAAoD,CACrD;CACwD,CAAC;AAE5D,MAAM,yBAAyB,GAAG;IAChC,IAAI,EAAE,QAAQ;IACd,MAAM,EAAE,gBAAgB,CACtB,uDAAuD,CACxD;IACD,SAAS,EAAE;QACT,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,oBAAoB;QAC3B,QAAQ,EAAE,IAAI;QACd,KAAK,EAAE,8CAA8C;KACtD;CAC4D,CAAC;AAEhE,MAAM,yBAAyB,GAAG;IAChC,IAAI,EAAE,QAAQ;IACd,MAAM,EAAE,gBAAgB,CACtB,4DAA4D,CAC7D;IACD,OAAO,EAAE,gBAAgB,CAAC,6CAA6C,CAAC;IACxE,EAAE,EAAE,gBAAgB,CAAC,kCAAkC,CAAC;IACxD,OAAO,EAAE;QACP,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,oBAAoB;QAC3B,QAAQ,EAAE,IAAI;QACd,KAAK,EAAE,oCAAoC;KAC5C;IACD,WAAW,EAAE,gBAAgB,CAAC,+BAA+B,CAAC;IAC9D,WAAW,EAAE,gBAAgB,CAAC,6BAA6B,CAAC;IAC5D,MAAM,EAAE,gBAAgB,CAAC,+BAA+B,CAAC;CACI,CAAC;AAEhE,MAAM,cAAc,GAAG;IACrB,IAAI,EAAE,OAAO;IACb,UAAU,EAAE;QACV;YACE,KAAK,EAAE,WAAW;YAClB,WAAW,EAAE,MAAM;YACnB,KAAK,EAAE,kCAAkC;SAC1C;KACF;CACO,CAAC;AAEX,SAAS,mBAAmB,CAAC,KAG5B;IACC,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;QACf,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAC5C,MAAM,IAAI,KAAK,CACb,kCAAkC,KAAK,CAAC,MAAM,qBAAqB,CACpE,CAAC;QACJ,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,KAAK,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC,MAAM,CAAC;IACtC,OAAO,OAAO,CAAC,GAAG,CAAC,cAAc,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC;AACpE,CAAC;AAED,SAAS,QAAQ;IACf,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;AAChE,CAAC;AAED,MAAM,aAAa,GAAG,YAAY,CAIhC;IACA,IAAI,EAAE;QACJ,KAAK,EAAE,2BAA2B;QAClC,eAAe,EAAE;;;;;uBAKE,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;0BACvB,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC;;;0EAGmB;KACvE;IACD,UAAU,EAAE;QACV,KAAK,EAAE;YACL,QAAQ,EAAE;gBACR,IAAI,EAAE,MAAM;gBACZ,MAAM,EAAE,eAAe;gBACvB,OAAO,EAAE,MAAM;gBACf,KAAK,EAAE,kBAAkB;aAC1B;YACD,GAAG,EAAE;gBACH,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,KAAK;gBAClB,KAAK,EAAE,gDAAgD;aACxD;YACD,EAAE,EAAE;gBACF,IAAI,EAAE,MAAM;gBACZ,MAAM,EAAE,eAAe;gBACvB,QAAQ,EAAE,IAAI;gBACd,KAAK,EAAE,oDAAoD;aAC5D;YACD,cAAc,EAAE;gBACd,IAAI,EAAE,MAAM;gBACZ,MAAM,EAAE,qBAAqB;gBAC7B,QAAQ,EAAE,IAAI;gBACd,KAAK,EAAE,+CAA+C;aACvD;YACD,YAAY,EAAE;gBACZ,IAAI,EAAE,MAAM;gBACZ,MAAM,EAAE,kBAAkB;gBAC1B,QAAQ,EAAE,IAAI;gBACd,QAAQ,EAAE,GAAG;gBACb,KAAK,EAAE,yDAAyD;aACjE;YACD,GAAG,EAAE;gBACH,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,KAAK;gBAClB,KAAK,EAAE,gDAAgD;aACxD;YACD,KAAK,EAAE,SAAS;YAChB,MAAM,EAAE,UAAU;YAClB,IAAI,EAAE,QAAQ;SACf;QACD,UAAU,EAAE;YACV,IAAI,EAAE,OAAO;YACb,UAAU,EAAE;gBACV;oBACE,KAAK,EAAE,WAAW;oBAClB,WAAW,EAAE,WAAW;oBACxB,KAAK,EAAE,8BAA8B;oBACrC,QAAQ,EAAE,IAAI;iBACf;aACF;SACF;KACF;IACD,MAAM,EAAE,KAAK,IAAI,EAAE;QACjB,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;QACtD,MAAM,EAAE,sBAAsB,EAAE,yBAAyB,EAAE,GAAG,MAAM,MAAM,CACxE,qBAAqB,CACtB,CAAC;QAEF,OAAO,KAAK,UAAU,SAAS,CAE7B,KAAkB,EAClB,SAA6B;YAE7B,IAAI,UAAU,GAAqB;gBACjC,SAAS;gBACT,GAAG,EAAE,KAAK,CAAC,GAAG;gBACd,EAAE,EAAE,KAAK,CAAC,EAAE;gBACZ,YAAY,EAAE,KAAK,CAAC,YAAY;gBAChC,cAAc,EAAE,KAAK,CAAC,cAAc;aACrC,CAAC;YAEF,MAAM,WAAW,GAAG,yBAAyB,CAC3C,EAAE,GAAG,UAAU,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,EACjC;gBACE,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,KAAK,IAAI;gBACnC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,KAAK,IAAI;aACtC,CACF,CAAC;YACF,IAAI,WAAW,EAAE,CAAC;gBAChB,MAAM,OAAO,GAAG,MAAM,sBAAsB,CAAC,UAAU,CAAC,CAAC;gBACzD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;oBAC1B,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;oBAC1C,IAAI,CAAC,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;oBAC1B,OAAO;gBACT,CAAC;gBACD,UAAU,GAAG,OAAO,CAAC;YACvB,CAAC;YAED,IAAI,UAAU,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;gBACvC,MAAM,IAAI,KAAK,CACb,mHAAmH,CACpH,CAAC;YACJ,CAAC;YAED,MAAM,GAAG,GAAG,UAAU,CAAC,GAAG,IAAI,KAAK,CAAC;YACpC,MAAM,QAAQ,GAAG,UAAU,CAAC,EAAE,IAAI,QAAQ,CAAC;YAC3C,MAAM,YAAY,GAAG,YAAY,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YACxE,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC;gBACjC,IAAI,EAAE,UAAU,CAAC,SAAS;gBAC1B,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,GAAG;gBACH,cAAc,EAAE,UAAU,CAAC,cAAc;gBACzC,YAAY;gBACZ,EAAE,EAAE,QAAQ;gBACZ,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;gBAC3B,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;aAC9B,CAAC,CAAC;YAEH,WAAW,CACT,IAAI,EACJ,KAAK,CAAC,IAAI;gBACR,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;gBACjC,CAAC,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,CACvD,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,aAAa,GAAG,YAAY,CAA8B;IAC9D,IAAI,EAAE;QACJ,KAAK,EAAE,oCAAoC;KAC5C;IACD,UAAU,EAAE;QACV,KAAK,EAAE,oBAAoB;KAC5B;IACD,MAAM,EAAE,KAAK,IAAI,EAAE;QACjB,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,CAAC;QAElE,OAAO,KAAK,UAAU,SAAS,CAAmB,KAAkB;YAClE,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;YACpD,WAAW,CACT,IAAI,EACJ,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CACpE,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,aAAa,GAAG,YAAY,CAA8B;IAC9D,IAAI,EAAE;QACJ,KAAK,EAAE,+CAA+C;KACvD;IACD,UAAU,EAAE;QACV,KAAK,EAAE;YACL,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE;gBACN,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,KAAK;gBAClB,KAAK,EAAE,oDAAoD;aAC5D;YACD,GAAG,EAAE;gBACH,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,KAAK;gBAClB,KAAK,EAAE,wCAAwC;aAChD;YACD,GAAG,EAAE,OAAO;YACZ,MAAM,EAAE,UAAU;SACnB;KACF;IACD,MAAM,EAAE,KAAK,IAAI,EAAE;QACjB,MAAM,EAAE,gBAAgB,EAAE,YAAY,EAAE,kBAAkB,EAAE,UAAU,EAAE,GACtE,MAAM,MAAM,CAAC,cAAc,CAAC,CAAC;QAE/B,OAAO,KAAK,UAAU,SAAS,CAAmB,KAAkB;YAClE,MAAM,MAAM,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;YAC1C,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG;gBACrB,CAAC,CAAC,MAAM,gBAAgB,CAAC;oBACrB,GAAG,EAAE,KAAK,CAAC,GAAG;oBACd,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;iBAC9B,CAAC;gBACJ,CAAC,CAAC,EAAE,CAAC;YACP,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC;gBAC9B,GAAG,EAAE,KAAK,CAAC,GAAG;gBACd,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;aAC9B,CAAC,CAAC;YACH,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;YACrB,WAAW,CACT,IAAI,EACJ,MAAM,KAAK,MAAM;gBACf,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;gBACjC,CAAC,CAAC,MAAM,KAAK,QAAQ;oBACnB,CAAC,CAAC,kBAAkB,CAAC,MAAM,CAAC;oBAC5B,CAAC,CAAC,YAAY,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,CAAC,CAClD,CAAC;YACF,IACE,MAAM,CAAC,WAAW,CAAC,IAAI,CACrB,CAAC,UAAU,EAAE,EAAE,CACb,UAAU,CAAC,QAAQ,KAAK,OAAO;gBAC/B,CAAC,KAAK,CAAC,MAAM,IAAI,UAAU,CAAC,QAAQ,KAAK,SAAS,CAAC,CACtD,EACD,CAAC;gBACD,IAAI,CAAC,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,WAAW,GAAG,YAAY,CAA4B;IAC1D,IAAI,EAAE;QACJ,KAAK,EAAE,iDAAiD;KACzD;IACD,UAAU,EAAE;QACV,KAAK,EAAE,kBAAkB;KAC1B;IACD,MAAM,EAAE,KAAK,IAAI,EAAE;QACjB,MAAM,EAAE,UAAU,EAAE,gBAAgB,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC;QAE5E,OAAO,KAAK,UAAU,OAAO,CAAmB,KAAgB;YAC9D,MAAM,MAAM,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;YAC1C,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;YACjD,WAAW,CACT,IAAI,EACJ,MAAM,KAAK,MAAM;gBACf,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;gBACjC,CAAC,CAAC,MAAM,KAAK,QAAQ;oBACnB,CAAC,CAAC,gBAAgB,CAAC,MAAM,CAAC;oBAC1B,CAAC,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,CAAC,CAChD,CAAC;YACF,IAAI,MAAM,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAClC,IAAI,CAAC,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,UAAU,GAAG,YAAY,CAA2B;IACxD,IAAI,EAAE;QACJ,KAAK,EACH,0GAA0G;KAC7G;IACD,UAAU,EAAE;QACV,KAAK,EAAE;YACL,GAAG,EAAE,OAAO;SACyC;KACxD;IACD,MAAM,EAAE,KAAK,IAAI,EAAE;QACjB,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;QAElD,OAAO,KAAK,UAAU,MAAM,CAAmB,KAAe;YAC5D,iEAAiE;YACjE,oBAAoB;YACpB,MAAM,YAAY,CAAC;gBACjB,GAAG,EAAE,KAAK,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE;gBAC/B,OAAO,EAAE,aAAa,EAAE;aACzB,CAAC,CAAC;QACL,CAAC,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAIH,SAAS,eAAe,CAAC,OAA4B;IACnD,OAAO,YAAY,CAA0B;QAC3C,IAAI,EAAE;YACJ,KAAK,EAAE,oBAAoB,OAAO,UAAU;SAC7C;QACD,UAAU,EAAE;YACV,KAAK,EAAE,gBAAgB;SACxB;QACD,MAAM,EAAE,KAAK,IAAI,EAAE;YACjB,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,CAAC;YAEvD,OAAO,KAAK,UAAU,KAAK,CAAmB,KAAc;gBAC1D,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC;oBACtC,OAAO;oBACP,aAAa,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC;oBAClC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;iBAC9B,CAAC,CAAC;gBAEH,WAAW,CACT,IAAI,EACJ,KAAK,CAAC,IAAI;oBACR,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;oBACjC,CAAC,CAAC,wBAAwB,CAAC,MAAM,CAAC,CACrC,CAAC;gBACF,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;oBAC1B,IAAI,CAAC,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;gBAC1C,CAAC;YACH,CAAC,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,QAAQ,GAAG,aAAa,CAAC;IAC7B,IAAI,EAAE;QACJ,KAAK,EAAE,0CAA0C;KAClD;IACD,MAAM,EAAE;QACN,QAAQ,EAAE,eAAe,CAAC,UAAU,CAAC;QACrC,OAAO,EAAE,eAAe,CAAC,SAAS,CAAC;QACnC,KAAK,EAAE,eAAe,CAAC,OAAO,CAAC;QAC/B,IAAI,EAAE,eAAe,CAAC,MAAM,CAAC;KAC9B;CACF,CAAC,CAAC;AAEH,MAAM,cAAc,GAAG,YAAY,CAAqC;IACtE,IAAI,EAAE;QACJ,KAAK,EAAE,oCAAoC;KAC5C;IACD,UAAU,EAAE;QACV,KAAK,EAAE,qBAAqB;QAC5B,UAAU,EAAE,cAAc;KAC3B;IACD,MAAM,EAAE,KAAK,IAAI,EAAE;QACjB,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC;QAEjD,OAAO,KAAK,UAAU,OAAO,CAE3B,KAAmB,EACnB,IAAY;YAEZ,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC;gBAC9B,IAAI;gBACJ,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,UAAU,EAAE,KAAK,CAAC,MAAM;aACzB,CAAC,CAAC;YAEH,WAAW,CACT,IAAI,EACJ,KAAK,CAAC,IAAI;gBACR,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;gBACjC,CAAC,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAChC,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,UAAU,GAAG,aAAa,CAAC;IAC/B,IAAI,EAAE;QACJ,KAAK,EAAE,oCAAoC;KAC5C;IACD,MAAM,EAAE;QACN,GAAG,EAAE,cAAc;KACpB;CACF,CAAC,CAAC;AAEH,MAAM,kBAAkB,GAAG,YAAY,CAAmC;IACxE,IAAI,EAAE;QACJ,KAAK,EAAE,sCAAsC;KAC9C;IACD,UAAU,EAAE;QACV,KAAK,EAAE,yBAAyB;KACjC;IACD,MAAM,EAAE,KAAK,IAAI,EAAE;QACjB,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;QAEvD,OAAO,KAAK,UAAU,QAAQ,CAAmB,KAAuB;YACtE,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC;gBAClC,UAAU,EAAE,KAAK,CAAC,MAAM;gBACxB,SAAS,EAAE,KAAK,CAAC,SAAS;aAC3B,CAAC,CAAC;YAEH,WAAW,CACT,IAAI,EACJ,KAAK,CAAC,IAAI;gBACR,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;gBACjC,CAAC,CAAC,oBAAoB,CAAC,MAAM,CAAC,CACjC,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,YAAY,GAAG,aAAa,CAAC;IACjC,IAAI,EAAE;QACJ,KAAK,EAAE,gCAAgC;KACxC;IACD,MAAM,EAAE;QACN,KAAK,EAAE,kBAAkB;KAC1B;CACF,CAAC,CAAC;AAEH,MAAM,kBAAkB,GAAG,YAAY,CACrC;IACE,IAAI,EAAE;QACJ,KAAK,EAAE,4BAA4B;KACpC;IACD,UAAU,EAAE;QACV,KAAK,EAAE,yBAAyB;QAChC,UAAU,EAAE,cAAc;KAC3B;IACD,MAAM,EAAE,KAAK,IAAI,EAAE;QACjB,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;QAEzD,OAAO,KAAK,UAAU,WAAW,CAE/B,KAAuB,EACvB,IAAY;YAEZ,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC;gBAClC,IAAI;gBACJ,UAAU,EAAE,KAAK,CAAC,MAAM;gBACxB,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,EAAE,EAAE,KAAK,CAAC,EAAE;gBACZ,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,WAAW,EAAE,KAAK,CAAC,WAAW;gBAC9B,WAAW,EAAE,KAAK,CAAC,WAAW;gBAC9B,MAAM,EAAE,KAAK,CAAC,MAAM;aACrB,CAAC,CAAC;YAEH,WAAW,CACT,IAAI,EACJ,KAAK,CAAC,IAAI;gBACR,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;gBACjC,CAAC,CAAC,oBAAoB,CAAC,MAAM,CAAC,CACjC,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;CACF,CACF,CAAC;AAEF,MAAM,cAAc,GAAG,aAAa,CAAC;IACnC,IAAI,EAAE;QACJ,KAAK,EAAE,kCAAkC;KAC1C;IACD,MAAM,EAAE;QACN,GAAG,EAAE,kBAAkB;KACxB;CACF,CAAC,CAAC;AAEH,MAAM,6BAA6B,GAAG;IACpC,KAAK,EAAE;QACL,IAAI,EAAE,MAAM;QACZ,MAAM,EAAE,sBAAsB;QAC9B,QAAQ,EAAE,IAAI;QACd,KAAK,EAAE,sDAAsD;KAC9D;IACD,IAAI,EAAE,QAAQ;CAC8C,CAAC;AAE/D,MAAM,wBAAwB,GAAG,YAAY,CAAkC;IAC7E,IAAI,EAAE;QACJ,KAAK,EAAE,oDAAoD;KAC5D;IACD,UAAU,EAAE;QACV,KAAK,EAAE,6BAA6B;KACrC;IACD,MAAM,EAAE,KAAK,IAAI,EAAE;QACjB,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,CAAC;QAE/D,OAAO,KAAK,UAAU,UAAU,CAAmB,KAAsB;YACvE,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;YAChE,WAAW,CACT,IAAI,EACJ,KAAK,CAAC,IAAI;gBACR,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;gBACjC,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,IAAI,MAAM,CAAC,KAAK,mBAAmB,MAAM,CAAC,IAAI;;wDAE1D,CACjD,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,0BAA0B,GAAG,YAAY,CAI7C;IACA,IAAI,EAAE;QACJ,KAAK,EAAE,mDAAmD;KAC3D;IACD,UAAU,EAAE;QACV,KAAK,EAAE,6BAA6B;KACrC;IACD,MAAM,EAAE,KAAK,IAAI,EAAE;QACjB,MAAM,EAAE,oBAAoB,EAAE,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,CAAC;QAEjE,OAAO,KAAK,UAAU,YAAY,CAEhC,KAAsB;YAEtB,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;YAClE,WAAW,CACT,IAAI,EACJ,KAAK,CAAC,IAAI;gBACR,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;gBACjC,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,SAAS;oBAC3B,CAAC,CAAC,WAAW,MAAM,CAAC,KAAK,qBAAqB,MAAM,CAAC,IAAI,EAAE;oBAC3D,CAAC,CAAC,mCAAmC,MAAM,CAAC,IAAI,EAAE,CACvD,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,gBAAgB,GAAG,aAAa,CAAC;IACrC,IAAI,EAAE;QACJ,KAAK,EAAE,mCAAmC;KAC3C;IACD,MAAM,EAAE;QACN,OAAO,EAAE,wBAAwB;QACjC,SAAS,EAAE,0BAA0B;KACtC;CACF,CAAC,CAAC;AAEH,MAAM,mBAAmB,GAAG,YAAY,CAItC;IACA,IAAI,EAAE;QACJ,KAAK,EAAE,wCAAwC;KAChD;IACD,UAAU,EAAE;QACV,KAAK,EAAE;YACL,GAAG,kBAAkB;YACrB,IAAI,EAAE;gBACJ,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,KAAK;gBAClB,KAAK,EACH,iFAAiF;aACpF;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,KAAK;gBAClB,KAAK,EACH,0EAA0E;aAC7E;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,KAAK;gBAClB,KAAK,EAAE,gEAAgE;aACxE;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,KAAK;gBAClB,KAAK,EACH,qEAAqE;aACxE;SAC6D;QAChE,UAAU,EAAE,cAAc;KAC3B;IACD,MAAM,EAAE,KAAK,IAAI,EAAE;QACjB,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC;QAEnD,OAAO,KAAK,UAAU,eAAe,CAEnC,KAAwB,EACxB,IAAY;YAEZ,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC;gBAChC,IAAI;gBACJ,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;gBAC3B,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;gBAC7B,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC;gBACzB,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;gBAC7B,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;gBAC7B,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC;aACtC,CAAC,CAAC;YACH,WAAW,CACT,IAAI,EACJ,KAAK,CAAC,IAAI;gBACR,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;gBACjC,CAAC,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAClC,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,kBAAkB,GAAG,YAAY,CACrC;IACE,IAAI,EAAE;QACJ,KAAK,EAAE,0CAA0C;KAClD;IACD,UAAU,EAAE;QACV,KAAK,EAAE;YACL,GAAG,kBAAkB;YACrB,IAAI,EAAE;gBACJ,IAAI,EAAE,MAAM;gBACZ,MAAM,EAAE,uBAAuB;gBAC/B,QAAQ,EAAE,IAAI;gBACd,QAAQ,EAAE,GAAG;gBACb,KAAK,EACH,uIAAuI;aAC1I;SAC4D;QAC/D,UAAU,EAAE,cAAc;KAC3B;IACD,MAAM,EAAE,KAAK,IAAI,EAAE;QACjB,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC;QAElD,OAAO,KAAK,UAAU,cAAc,CAElC,KAAuB,EACvB,IAAY;YAEZ,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC;gBAC/B,IAAI;gBACJ,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;gBAC3B,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;aAC9B,CAAC,CAAC;YACH,WAAW,CACT,IAAI,EACJ,KAAK,CAAC,IAAI;gBACR,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;gBACjC,CAAC,CAAC,oBAAoB,CAAC,MAAM,CAAC,CACjC,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;CACF,CACF,CAAC;AAiBF,SAAS,iBAAiB,CACxB,SAA4B,EAC5B,KAAa,EACb,eAAwD;IAExD,OAAO,YAAY,CAAkC;QACnD,IAAI,EAAE;YACJ,KAAK;SACN;QACD,UAAU,EAAE;YACV,KAAK,EAAE,kBAAkB;YACzB,UAAU,EAAE,cAAc;SAC3B;QACD,MAAM,EAAE,KAAK,IAAI,EAAE;YACjB,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC;YAE7C,OAAO,KAAK,UAAU,OAAO,CAE3B,KAAgB,EAChB,IAAY;gBAEZ,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,SAAS,CAAC,CAAC;oBACzC,IAAI;oBACJ,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;oBAC3B,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;iBAC9B,CAAC,CAAC;gBACH,WAAW,CACT,IAAI,EACJ,KAAK,CAAC,IAAI;oBACR,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;oBACjC,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,CAC5B,CAAC;YACJ,CAAC,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,mBAAmB,GAAG,YAAY,CAItC;IACA,IAAI,EAAE;QACJ,KAAK,EAAE,oCAAoC;KAC5C;IACD,UAAU,EAAE;QACV,KAAK,EAAE;YACL,GAAG,kBAAkB;YACrB,KAAK,EAAE,gBAAgB,CACrB,kDAAkD,CACnD;SAC6D;QAChE,UAAU,EAAE,cAAc;KAC3B;IACD,MAAM,EAAE,KAAK,IAAI,EAAE;QACjB,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC;QAEnD,OAAO,KAAK,UAAU,eAAe,CAEnC,KAAwB,EACxB,IAAY;YAEZ,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CACb,2FAA2F,CAC5F,CAAC;YACJ,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC;gBAChC,IAAI;gBACJ,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;gBAC3B,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;aAC9B,CAAC,CAAC;YACH,WAAW,CACT,IAAI,EACJ,KAAK,CAAC,IAAI;gBACR,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;gBACjC,CAAC,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAClC,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,mBAAmB,GAAG,YAAY,CAItC;IACA,IAAI,EAAE;QACJ,KAAK,EAAE,8BAA8B;KACtC;IACD,UAAU,EAAE;QACV,KAAK,EAAE;YACL,GAAG,kBAAkB;YACrB,IAAI,EAAE,gBAAgB,CAAC,yCAAyC,CAAC;YACjE,QAAQ,EAAE,gBAAgB,CAAC,6CAA6C,CAAC;YACzE,KAAK,EAAE;gBACL,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,KAAK;gBAClB,KAAK,EAAE,kDAAkD;aAC1D;SAC6D;QAChE,UAAU,EAAE,cAAc;KAC3B;IACD,MAAM,EAAE,KAAK,IAAI,EAAE;QACjB,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC;QAEnD,OAAO,KAAK,UAAU,eAAe,CAEnC,KAAwB,EACxB,IAAY;YAEZ,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC;gBAChC,IAAI;gBACJ,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;gBAC3B,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;gBAC3B,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;aAC9B,CAAC,CAAC;YACH,WAAW,CACT,IAAI,EACJ,KAAK,CAAC,IAAI;gBACR,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;gBACjC,CAAC,CAAC,qBAAqB,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CACnE,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,UAAU,GAAG,aAAa,CAAC;IAC/B,IAAI,EAAE;QACJ,KAAK,EAAE,6BAA6B;KACrC;IACD,MAAM,EAAE;QACN,OAAO,EAAE,iBAAiB,CACxB,aAAa,EACb,0BAA0B,EAC1B,oBAAoB,CACrB;QACD,QAAQ,EAAE,iBAAiB,CACzB,cAAc,EACd,4BAA4B,EAC5B,qBAAqB,CACtB;QACD,KAAK,EAAE,iBAAiB,CACtB,WAAW,EACX,2BAA2B,EAC3B,kBAAkB,CACnB;QACD,OAAO,EAAE,iBAAiB,CACxB,aAAa,EACb,uCAAuC,EACvC,oBAAoB,CACrB;QACD,OAAO,EAAE,kBAAkB;QAC3B,GAAG,EAAE,iBAAiB,CACpB,SAAS,EACT,yBAAyB,EACzB,gBAAgB,CACjB;QACD,YAAY,EAAE,iBAAiB,CAC7B,kBAAkB,EAClB,kCAAkC,EAClC,yBAAyB,CAC1B;QACD,QAAQ,EAAE,mBAAmB;QAC7B,MAAM,EAAE,iBAAiB,CACvB,YAAY,EACZ,mCAAmC,EACnC,mBAAmB,CACpB;QACD,IAAI,EAAE,iBAAiB,CACrB,UAAU,EACV,+BAA+B,EAC/B,iBAAiB,CAClB;QACD,QAAQ,EAAE,mBAAmB;QAC7B,QAAQ,EAAE,mBAAmB;QAC7B,IAAI,EAAE,iBAAiB,CACrB,UAAU,EACV,0BAA0B,EAC1B,iBAAiB,CAClB;QACD,IAAI,EAAE,iBAAiB,CACrB,UAAU,EACV,sCAAsC,EACtC,iBAAiB,CAClB;QACD,IAAI,EAAE,iBAAiB,CACrB,UAAU,EACV,2BAA2B,EAC3B,iBAAiB,CAClB;QACD,MAAM,EAAE,iBAAiB,CACvB,YAAY,EACZ,4BAA4B,EAC5B,mBAAmB,CACpB;QACD,OAAO,EAAE,iBAAiB,CACxB,aAAa,EACb,sBAAsB,EACtB,oBAAoB,CACrB;KACF;CACF,CAAC,CAAC;AAEH,MAAM,UAAU,GAAG,aAAa,CAAC;IAC/B,IAAI,EAAE;QACJ,KAAK,EAAE,aAAa;QACpB,eAAe,EAAE;;6EAEwD;KAC1E;IACD,MAAM,EAAE;QACN,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,aAAa;QACrB,EAAE,EAAE,QAAQ;QACZ,MAAM,EAAE,aAAa;QACrB,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,UAAU;QAChB,GAAG,EAAE,UAAU;QACf,MAAM,EAAE,YAAY;QACpB,MAAM,EAAE,aAAa;QACrB,QAAQ,EAAE,cAAc;QACxB,IAAI,EAAE,UAAU;KACjB;CACF,CAAC,CAAC;AAEH,MAAM,GAAG,GAAG,gBAAgB,CAAC,UAAU,EAAE;IACvC,IAAI,EAAE,SAAS;IACf,WAAW,EAAE;QACX,cAAc,EAAE,aAAa,EAAE;KAChC;IACD,OAAO,EAAE;QACP,SAAS,EAAE,uBAAuB;KACnC;IACD,aAAa,EAAE;QACb,gBAAgB,EAAE,IAAI;KACvB;IACD,YAAY,EAAE;QACZ,IAAI,EAAE;YACJ,GAAG,OAAO;YACV,4BAA4B,EAAE,kBAAkB;YAChD,kBAAkB,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO;SAC7C;KACF;IACD,iBAAiB,EAAE,GAAG,EAAE,CAAC,CAAC;CAC3B,CAAC,CAAC;AAEH,SAAS,YAAY,CAAI,MAAoB;IAC3C,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;AAC9B,CAAC;AAED,SAAS,WAAW,CAAC,OAAmB,EAAE,MAAc;IACtD,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,IAAI,CAAC,CAAC;AAC9C,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAc;IACxC,OAAO,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAChE,CAAC;AAuDD,SAAS,mBAAmB,CAAC,MAAiC;IAC5D,MAAM,MAAM,GACV,MAAM,CAAC,MAAM,KAAK,SAAS;QACzB,CAAC,CAAC,WAAW;QACb,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAE7C,OAAO,YAAY,MAAM,CAAC,IAAI,OAAO,MAAM,CAAC,UAAU;;;EAGtD,MAAM,EAAE,CAAC;AACX,CAAC;AAED,SAAS,oBAAoB,CAAC,MAAkC;IAC9D,OAAO,qBAAqB,MAAM,CAAC,UAAU;;;aAGlC,MAAM,CAAC,MAAM,CAAC,OAAO;eACnB,MAAM,CAAC,MAAM,CAAC,SAAS;aACzB,MAAM,CAAC,MAAM,CAAC,OAAO;kBAChB,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;AAC/C,CAAC;AAED,SAAS,oBAAoB,CAAC,MAAkC;IAC9D,OAAO,gBAAgB,MAAM,CAAC,IAAI,OAAO,MAAM,CAAC,UAAU;;;YAGhD,MAAM,CAAC,GAAG,CAAC,MAAM;QACrB,MAAM,CAAC,GAAG,CAAC,EAAE,IAAI,MAAM;aAClB,MAAM,CAAC,GAAG,CAAC,OAAO,IAAI,MAAM;iBACxB,MAAM,CAAC,GAAG,CAAC,WAAW,IAAI,MAAM;iBAChC,MAAM,CAAC,GAAG,CAAC,WAAW,IAAI,MAAM,EAAE,CAAC;AACpD,CAAC;AAED,SAAS,SAAS,CAChB,MAA6B,EAC7B,UAII,EAAE;IAEN,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAClB,MAAM,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAExE,OAAO,gBAAgB,MAAM,CAAC,IAAI,OAAO,MAAM,CAAC,SAAS;;;EAG3D,YAAY,EAAE,CAAC;IACf,CAAC;IAED,MAAM,EAAE,GAAG,MAAM,CAAC,cAAc,CAAC;IACjC,MAAM,GAAG,GAAG,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC;IACnD,MAAM,GAAG,GAAG,+BAA+B,CAAC,EAAE,CAAC,CAAC;IAChD,MAAM,uBAAuB,GAC3B,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC,gCAAgC,CAAC,IAAI,EAAE,CAAC;IACvE,MAAM,OAAO,GACX,uBAAuB,CAAC,MAAM,GAAG,CAAC;QAChC,CAAC,CAAC,iFAAiF;QACnF,CAAC,CAAC,EAAE,CAAC;IACT,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG;QAC1B,CAAC,CAAC,uDAAuD;QACzD,CAAC,CAAC,sCAAsC,CAAC;IAC3C,MAAM,oBAAoB,GAAG,OAAO,CAAC,QAAQ;QAC3C,CAAC,CAAC,oBAAoB,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC;QACrD,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,iBAAiB,GAAG,oBAAoB;QAC5C,CAAC,CAAC;IACF,oBAAoB;;CAEvB;QACG,CAAC,CAAC,EAAE,CAAC;IAEP,OAAO,WAAW,MAAM,CAAC,IAAI,OAAO,MAAM,CAAC,SAAS;;;OAG/C,MAAM,CAAC,SAAS;IACnB,EAAE;;EAEJ,OAAO;EACP,iBAAiB;IACf,GAAG;;;IAGH,GAAG;EACL,QAAQ;;;IAGN,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;;;IAGH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG,SAAS,CAAC;AACjB,CAAC;AAED,SAAS,+BAA+B,CAAC,EAAkB;IACzD,QAAQ,EAAE,EAAE,CAAC;QACX,KAAK,KAAK;YACR,OAAO,oBAAoB,CAAC;QAC9B,KAAK,MAAM;YACT,OAAO,cAAc,CAAC;QACxB,KAAK,MAAM;YACT,OAAO,cAAc,CAAC;QACxB;YACE,OAAO,aAAa,CAAC;IACzB,CAAC;AACH,CAAC;AAED,SAAS,gCAAgC,CACvC,WAA4B;IAE5B,OAAO,CACL,WAAW,KAAK,SAAS;QACzB,WAAW,KAAK,QAAQ;QACxB,WAAW,KAAK,oBAAoB,CACrC,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,MAA2B;IAInD,OAAO;QACL,YAAY,EAAE,CAAC,GAAG,MAAM,CAAC,YAAY,EAAE,GAAG,MAAM,CAAC,YAAY,CAAC;aAC3D,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC;aAC1B,IAAI,CAAC,IAAI,CAAC;QACb,YAAY,EAAE,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;KACxE,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CACpB,MAA2B,EAC3B,IAAY,EACZ,KAAwB;IAExB,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAEhE,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,IAAI,MAAM,CAAC,IAAI,IAAI,IAAI,OAAO,MAAM,CAAC,SAAS;;;EAGlG,YAAY,IAAI,QAAQ;EACxB,YAAY,CAAC,CAAC,CAAC,+BAA+B,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE;;;EAGjE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;AAChD,CAAC;AAED,SAAS,qBAAqB,CAAC,MAA2B;IACxD,OAAO,aAAa,CAAC,MAAM,EAAE,UAAU,EAAE;QACvC,wGAAwG;QACxG,qDAAqD;QACrD,sGAAsG;QACtG,0FAA0F;KAC3F,CAAC,CAAC;AACL,CAAC;AAED,SAAS,wBAAwB,CAC/B,MAAsC;IAEtC,MAAM,OAAO,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC1D,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC;IAEnD,OAAO,GAAG,MAAM,IAAI,MAAM,CAAC,MAAM,OAAO,MAAM,CAAC,GAAG;;;IAGhD,OAAO,EAAE,CAAC;AACd,CAAC;AAED,SAAS,oBAAoB,CAAC,MAA2B;IACvD,OAAO,aAAa,CAAC,MAAM,EAAE,eAAe,EAAE;QAC5C,oHAAoH;QACpH,wIAAwI;QACxI,sGAAsG;QACtG,0FAA0F;KAC3F,CAAC,CAAC;AACL,CAAC;AAED,SAAS,qBAAqB,CAAC,MAA2B;IACxD,OAAO,aAAa,CAAC,MAAM,EAAE,UAAU,EAAE;QACvC,iDAAiD;QACjD,8EAA8E;KAC/E,CAAC,CAAC;AACL,CAAC;AAED,SAAS,iBAAiB,CAAC,MAA2B;IACpD,OAAO,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE;QACnC,6EAA6E;QAC7E,uEAAuE;KACxE,CAAC,CAAC;AACL,CAAC;AAED,SAAS,oBAAoB,CAAC,MAA2B;IACvD,OAAO,aAAa,CAAC,MAAM,EAAE,UAAU,EAAE;QACvC,2EAA2E;QAC3E,gEAAgE;KACjE,CAAC,CAAC;AACL,CAAC;AAED,SAAS,iBAAiB,CAAC,MAA2B;IACpD,OAAO,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE;QACnC,oFAAoF;QACpF,8BAA8B;KAC/B,CAAC,CAAC;AACL,CAAC;AAED,SAAS,iBAAiB,CAAC,MAA2B;IACpD,OAAO,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE;QACnC,qEAAqE;QACrE,qEAAqE;KACtE,CAAC,CAAC;AACL,CAAC;AAED,SAAS,mBAAmB,CAAC,MAA2B;IACtD,OAAO,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE;QACrC,yEAAyE;QACzE,0EAA0E;KAC3E,CAAC,CAAC;AACL,CAAC;AAED,SAAS,oBAAoB,CAAC,MAA2B;IACvD,OAAO,aAAa,CAAC,MAAM,EAAE,cAAc,EAAE;QAC3C,8EAA8E;QAC9E,uFAAuF;KACxF,CAAC,CAAC;AACL,CAAC;AAED,SAAS,kBAAkB,CAAC,MAA2B;IACrD,OAAO,aAAa,CAAC,MAAM,EAAE,OAAO,EAAE;QACpC,gEAAgE;QAChE,yEAAyE;KAC1E,CAAC,CAAC;AACL,CAAC;AAED,SAAS,gBAAgB,CAAC,MAA2B;IACnD,OAAO,aAAa,CAAC,MAAM,EAAE,KAAK,EAAE;QAClC,wEAAwE;QACxE,iFAAiF;KAClF,CAAC,CAAC;AACL,CAAC;AAED,SAAS,oBAAoB,CAAC,MAA2B;IACvD,OAAO,aAAa,CAAC,MAAM,EAAE,SAAS,EAAE;QACtC,yEAAyE;QACzE,iFAAiF;KAClF,CAAC,CAAC;AACL,CAAC;AAED,SAAS,iBAAiB,CAAC,MAA2B;IACpD,OAAO,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE;QACnC,gEAAgE;QAChE,qGAAqG;KACtG,CAAC,CAAC;AACL,CAAC;AAED,SAAS,yBAAyB,CAAC,MAA2B;IAC5D,OAAO,aAAa,CAAC,MAAM,EAAE,cAAc,EAAE;QAC3C,6EAA6E;QAC7E,2HAA2H;KAC5H,CAAC,CAAC;AACL,CAAC;AAED,SAAS,qBAAqB,CAAC,MAA2B;IACxD,OAAO,aAAa,CAAC,MAAM,EAAE,UAAU,EAAE;QACvC,sDAAsD;QACtD,+DAA+D;KAChE,CAAC,CAAC;AACL,CAAC;AAED,SAAS,qBAAqB,CAC5B,MAA2B,EAC3B,UAA+B,EAAE;IAEjC,OAAO,aAAa,CAAC,MAAM,EAAE,UAAU,EAAE;QACvC,sEAAsE;QACtE,GAAG,CAAC,OAAO,CAAC,KAAK;YACf,CAAC,CAAC;gBACE,+GAA+G;aAChH;YACH,CAAC,CAAC,CAAC,4DAA4D,CAAC,CAAC;KACpE,CAAC,CAAC;AACL,CAAC;AAED,SAAS,mBAAmB,CAAC,MAA2B;IACtD,OAAO,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE;QACrC,yFAAyF;QACzF,2FAA2F;KAC5F,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,IAAI,CACxB,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAC9B,UAAoD,EAAE,OAAO,EAAE;IAE/D,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,MAAM,GAAG,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,CAAC;QACpC,OAAO,CAAC,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QAC7B,OAAO;IACT,CAAC;IAED,yEAAyE;IACzE,uEAAuE;IACvE,gDAAgD;IAChD,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,YAAY,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;QAC1D,MAAM,wBAAwB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QACzD,OAAO;IACT,CAAC;IAED,MAAM,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,iBAAiB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;AACrC,CAAC;AAED,KAAK,UAAU,wBAAwB,CACrC,MAAyB,EACzB,OAAiD;IAEjD,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,kBAAkB,CACxC,GAAG,EACH,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EACnC,OAAO,CACR,CAAC;QACF,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAC,UAAU,IAAI,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,mEAAmE;IACrE,CAAC;AACH,CAAC;AAED,0EAA0E;AAC1E,8EAA8E;AAC9E,0EAA0E;AAC1E,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAAC;IACpC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG;CAC5C,CAAC,CAAC;AAEH,SAAS,iBAAiB,CAAC,IAAoB;IAC7C,IAAI,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QACtC,OAAO;IACT,CAAC;IAED,IAAI,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7C,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;QAClB,OAAO;IACT,CAAC;IAED,IAAI,IAAI,CAAC,QAAQ,GAAG,GAAG,EAAE,CAAC;QACxB,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;IACpB,CAAC;AACH,CAAC;AAED,SAAS,eAAe;IACtB,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACjC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,CAAC;QACH,OAAO,CACL,YAAY,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,YAAY,CAAC,QAAQ,CAAC,CACxE,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,IAAI,eAAe,EAAE,EAAE,CAAC;IACtB,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;QAC9B,OAAO,CAAC,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACtE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;IACvB,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EACL,gBAAgB,EAChB,YAAY,EACZ,aAAa,EAGb,kBAAkB,EAClB,GAAG,EAGH,OAAO,GACR,MAAM,eAAe,CAAC;AACvB,OAAO,EAEL,sBAAsB,EAEtB,eAAe,EACf,oBAAoB,EAEpB,kBAAkB,EAElB,uBAAuB,EAEvB,qBAAqB,EAErB,eAAe,GAChB,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAQ7C,MAAM,mBAAmB,GAAG;IAC1B,OAAO;IACP,MAAM;IACN,QAAQ;CACkC,CAAC;AAiG7C,MAAM,WAAW,GAAG,CAAC,KAAa,EAAU,EAAE,CAAC,KAAK,CAAC;AACrD,MAAM,oBAAoB,GAAG,CAAC,KAAa,EAAU,EAAE;IACrD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC5B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;QAC3C,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;IAClD,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG;IAChB,IAAI,EAAE,SAAS;IACf,QAAQ,EAAE,IAAI;IACd,WAAW,EAAE,KAAK;IAClB,KAAK,EAAE,kEAAkE;CACjE,CAAC;AAEX,MAAM,UAAU,GAAG;IACjB,IAAI,EAAE,SAAS;IACf,QAAQ,EAAE,IAAI;IACd,WAAW,EAAE,KAAK;IAClB,KAAK,EAAE,kDAAkD;CACjD,CAAC;AAEX,MAAM,QAAQ,GAAG;IACf,IAAI,EAAE,SAAS;IACf,QAAQ,EAAE,IAAI;IACd,WAAW,EAAE,KAAK;IAClB,KAAK,EAAE,8BAA8B;CAC7B,CAAC;AAEX,MAAM,gBAAgB,GAAG,CAAC,KAAa,EAAE,EAAE,CACzC,CAAC;IACC,IAAI,EAAE,QAAQ;IACd,KAAK,EAAE,WAAW;IAClB,QAAQ,EAAE,IAAI;IACd,KAAK;CACN,CAAU,CAAC;AAEd,MAAM,OAAO,GAAG,gBAAgB,CAC9B,sEAAsE,CACvE,CAAC;AAEF,MAAM,UAAU,GAAG;IACjB,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,mBAAmB;IAC3B,QAAQ,EAAE,IAAI;IACd,KAAK,EACH,uEAAuE;CACjE,CAAC;AAEX,MAAM,kBAAkB,GAAG;IACzB,KAAK,EAAE,SAAS;IAChB,MAAM,EAAE,UAAU;IAClB,IAAI,EAAE,QAAQ;CACwC,CAAC;AAEzD,MAAM,oBAAoB,GAAG;IAC3B,IAAI,EAAE,QAAQ;IACd,GAAG,EAAE,OAAO;CAC4C,CAAC;AAE3D,MAAM,kBAAkB,GAAG;IACzB,IAAI,EAAE,QAAQ;IACd,GAAG,EAAE,OAAO;IACZ,MAAM,EAAE,UAAU;CACoC,CAAC;AAEzD,MAAM,gBAAgB,GAAG;IACvB,IAAI,EAAE,QAAQ;IACd,MAAM,EAAE,UAAU;CACkC,CAAC;AAEvD,MAAM,qBAAqB,GAAG;IAC5B,IAAI,EAAE,QAAQ;IACd,KAAK,EAAE,gBAAgB,CAAC,uCAAuC,CAAC;IAChE,MAAM,EAAE,gBAAgB,CACtB,oDAAoD,CACrD;CACwD,CAAC;AAE5D,MAAM,yBAAyB,GAAG;IAChC,IAAI,EAAE,QAAQ;IACd,MAAM,EAAE,gBAAgB,CACtB,uDAAuD,CACxD;IACD,SAAS,EAAE;QACT,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,oBAAoB;QAC3B,QAAQ,EAAE,IAAI;QACd,KAAK,EAAE,8CAA8C;KACtD;CAC4D,CAAC;AAEhE,MAAM,yBAAyB,GAAG;IAChC,IAAI,EAAE,QAAQ;IACd,MAAM,EAAE,gBAAgB,CACtB,4DAA4D,CAC7D;IACD,OAAO,EAAE,gBAAgB,CAAC,6CAA6C,CAAC;IACxE,EAAE,EAAE,gBAAgB,CAAC,kCAAkC,CAAC;IACxD,OAAO,EAAE;QACP,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,oBAAoB;QAC3B,QAAQ,EAAE,IAAI;QACd,KAAK,EAAE,oCAAoC;KAC5C;IACD,WAAW,EAAE,gBAAgB,CAAC,+BAA+B,CAAC;IAC9D,WAAW,EAAE,gBAAgB,CAAC,6BAA6B,CAAC;IAC5D,MAAM,EAAE,gBAAgB,CAAC,+BAA+B,CAAC;CACI,CAAC;AAEhE,MAAM,cAAc,GAAG;IACrB,IAAI,EAAE,OAAO;IACb,UAAU,EAAE;QACV;YACE,KAAK,EAAE,WAAW;YAClB,WAAW,EAAE,MAAM;YACnB,KAAK,EAAE,kCAAkC;SAC1C;KACF;CACO,CAAC;AAEX,SAAS,mBAAmB,CAAC,KAG5B;IACC,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;QACf,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAC5C,MAAM,IAAI,KAAK,CACb,kCAAkC,KAAK,CAAC,MAAM,qBAAqB,CACpE,CAAC;QACJ,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,KAAK,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC,MAAM,CAAC;IACtC,OAAO,OAAO,CAAC,GAAG,CAAC,cAAc,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC;AACpE,CAAC;AAED,SAAS,QAAQ;IACf,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;AAChE,CAAC;AAED,MAAM,aAAa,GAAG,YAAY,CAIhC;IACA,IAAI,EAAE;QACJ,KAAK,EAAE,2BAA2B;QAClC,eAAe,EAAE;;;;;uBAKE,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;0BACvB,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC;;;0EAGmB;KACvE;IACD,UAAU,EAAE;QACV,KAAK,EAAE;YACL,QAAQ,EAAE;gBACR,IAAI,EAAE,MAAM;gBACZ,MAAM,EAAE,eAAe;gBACvB,OAAO,EAAE,MAAM;gBACf,KAAK,EAAE,kBAAkB;aAC1B;YACD,GAAG,EAAE;gBACH,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,KAAK;gBAClB,KAAK,EAAE,gDAAgD;aACxD;YACD,EAAE,EAAE;gBACF,IAAI,EAAE,MAAM;gBACZ,MAAM,EAAE,eAAe;gBACvB,QAAQ,EAAE,IAAI;gBACd,KAAK,EAAE,oDAAoD;aAC5D;YACD,cAAc,EAAE;gBACd,IAAI,EAAE,MAAM;gBACZ,MAAM,EAAE,qBAAqB;gBAC7B,QAAQ,EAAE,IAAI;gBACd,KAAK,EAAE,+CAA+C;aACvD;YACD,YAAY,EAAE;gBACZ,IAAI,EAAE,MAAM;gBACZ,MAAM,EAAE,kBAAkB;gBAC1B,QAAQ,EAAE,IAAI;gBACd,QAAQ,EAAE,GAAG;gBACb,KAAK,EAAE,yDAAyD;aACjE;YACD,GAAG,EAAE;gBACH,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,KAAK;gBAClB,KAAK,EAAE,gDAAgD;aACxD;YACD,KAAK,EAAE,SAAS;YAChB,MAAM,EAAE,UAAU;YAClB,IAAI,EAAE,QAAQ;SACf;QACD,UAAU,EAAE;YACV,IAAI,EAAE,OAAO;YACb,UAAU,EAAE;gBACV;oBACE,KAAK,EAAE,WAAW;oBAClB,WAAW,EAAE,WAAW;oBACxB,KAAK,EAAE,8BAA8B;oBACrC,QAAQ,EAAE,IAAI;iBACf;aACF;SACF;KACF;IACD,MAAM,EAAE,KAAK,IAAI,EAAE;QACjB,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;QACtD,MAAM,EAAE,sBAAsB,EAAE,yBAAyB,EAAE,GAAG,MAAM,MAAM,CACxE,qBAAqB,CACtB,CAAC;QAEF,OAAO,KAAK,UAAU,SAAS,CAE7B,KAAkB,EAClB,SAA6B;YAE7B,IAAI,UAAU,GAAqB;gBACjC,SAAS;gBACT,GAAG,EAAE,KAAK,CAAC,GAAG;gBACd,EAAE,EAAE,KAAK,CAAC,EAAE;gBACZ,YAAY,EAAE,KAAK,CAAC,YAAY;gBAChC,cAAc,EAAE,KAAK,CAAC,cAAc;aACrC,CAAC;YAEF,MAAM,WAAW,GAAG,yBAAyB,CAC3C,EAAE,GAAG,UAAU,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,EACjC;gBACE,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,KAAK,IAAI;gBACnC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,KAAK,IAAI;aACtC,CACF,CAAC;YACF,IAAI,WAAW,EAAE,CAAC;gBAChB,MAAM,OAAO,GAAG,MAAM,sBAAsB,CAAC,UAAU,CAAC,CAAC;gBACzD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;oBAC1B,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;oBAC1C,IAAI,CAAC,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;oBAC1B,OAAO;gBACT,CAAC;gBACD,UAAU,GAAG,OAAO,CAAC;YACvB,CAAC;YAED,IAAI,UAAU,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;gBACvC,MAAM,IAAI,KAAK,CACb,mHAAmH,CACpH,CAAC;YACJ,CAAC;YAED,MAAM,GAAG,GAAG,UAAU,CAAC,GAAG,IAAI,KAAK,CAAC;YACpC,MAAM,QAAQ,GAAG,UAAU,CAAC,EAAE,IAAI,QAAQ,CAAC;YAC3C,MAAM,YAAY,GAAG,YAAY,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YACxE,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC;gBACjC,IAAI,EAAE,UAAU,CAAC,SAAS;gBAC1B,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,GAAG;gBACH,cAAc,EAAE,UAAU,CAAC,cAAc;gBACzC,YAAY;gBACZ,EAAE,EAAE,QAAQ;gBACZ,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;gBAC3B,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;aAC9B,CAAC,CAAC;YAEH,WAAW,CACT,IAAI,EACJ,KAAK,CAAC,IAAI;gBACR,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;gBACjC,CAAC,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,CACvD,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,aAAa,GAAG,YAAY,CAA8B;IAC9D,IAAI,EAAE;QACJ,KAAK,EAAE,oCAAoC;KAC5C;IACD,UAAU,EAAE;QACV,KAAK,EAAE,oBAAoB;KAC5B;IACD,MAAM,EAAE,KAAK,IAAI,EAAE;QACjB,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,CAAC;QAElE,OAAO,KAAK,UAAU,SAAS,CAAmB,KAAkB;YAClE,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;YACpD,WAAW,CACT,IAAI,EACJ,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CACpE,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,aAAa,GAAG,YAAY,CAA8B;IAC9D,IAAI,EAAE;QACJ,KAAK,EAAE,+CAA+C;KACvD;IACD,UAAU,EAAE;QACV,KAAK,EAAE;YACL,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE;gBACN,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,KAAK;gBAClB,KAAK,EAAE,oDAAoD;aAC5D;YACD,GAAG,EAAE;gBACH,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,KAAK;gBAClB,KAAK,EAAE,wCAAwC;aAChD;YACD,GAAG,EAAE,OAAO;YACZ,MAAM,EAAE,UAAU;SACnB;KACF;IACD,MAAM,EAAE,KAAK,IAAI,EAAE;QACjB,MAAM,EAAE,gBAAgB,EAAE,YAAY,EAAE,kBAAkB,EAAE,UAAU,EAAE,GACtE,MAAM,MAAM,CAAC,cAAc,CAAC,CAAC;QAE/B,OAAO,KAAK,UAAU,SAAS,CAAmB,KAAkB;YAClE,MAAM,MAAM,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;YAC1C,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG;gBACrB,CAAC,CAAC,MAAM,gBAAgB,CAAC;oBACrB,GAAG,EAAE,KAAK,CAAC,GAAG;oBACd,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;iBAC9B,CAAC;gBACJ,CAAC,CAAC,EAAE,CAAC;YACP,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC;gBAC9B,GAAG,EAAE,KAAK,CAAC,GAAG;gBACd,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;aAC9B,CAAC,CAAC;YACH,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;YACrB,WAAW,CACT,IAAI,EACJ,MAAM,KAAK,MAAM;gBACf,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;gBACjC,CAAC,CAAC,MAAM,KAAK,QAAQ;oBACnB,CAAC,CAAC,kBAAkB,CAAC,MAAM,CAAC;oBAC5B,CAAC,CAAC,YAAY,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,CAAC,CAClD,CAAC;YACF,IACE,MAAM,CAAC,WAAW,CAAC,IAAI,CACrB,CAAC,UAAU,EAAE,EAAE,CACb,UAAU,CAAC,QAAQ,KAAK,OAAO;gBAC/B,CAAC,KAAK,CAAC,MAAM,IAAI,UAAU,CAAC,QAAQ,KAAK,SAAS,CAAC,CACtD,EACD,CAAC;gBACD,IAAI,CAAC,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,WAAW,GAAG,YAAY,CAA4B;IAC1D,IAAI,EAAE;QACJ,KAAK,EAAE,iDAAiD;KACzD;IACD,UAAU,EAAE;QACV,KAAK,EAAE,kBAAkB;KAC1B;IACD,MAAM,EAAE,KAAK,IAAI,EAAE;QACjB,MAAM,EAAE,UAAU,EAAE,gBAAgB,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC;QAE5E,OAAO,KAAK,UAAU,OAAO,CAAmB,KAAgB;YAC9D,MAAM,MAAM,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;YAC1C,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;YACjD,WAAW,CACT,IAAI,EACJ,MAAM,KAAK,MAAM;gBACf,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;gBACjC,CAAC,CAAC,MAAM,KAAK,QAAQ;oBACnB,CAAC,CAAC,gBAAgB,CAAC,MAAM,CAAC;oBAC1B,CAAC,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,CAAC,CAChD,CAAC;YACF,IAAI,MAAM,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAClC,IAAI,CAAC,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,UAAU,GAAG,YAAY,CAA2B;IACxD,IAAI,EAAE;QACJ,KAAK,EACH,0GAA0G;KAC7G;IACD,UAAU,EAAE;QACV,KAAK,EAAE;YACL,GAAG,EAAE,OAAO;SACyC;KACxD;IACD,MAAM,EAAE,KAAK,IAAI,EAAE;QACjB,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;QAElD,OAAO,KAAK,UAAU,MAAM,CAAmB,KAAe;YAC5D,iEAAiE;YACjE,oBAAoB;YACpB,MAAM,YAAY,CAAC;gBACjB,GAAG,EAAE,KAAK,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE;gBAC/B,OAAO,EAAE,aAAa,EAAE;aACzB,CAAC,CAAC;QACL,CAAC,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAIH,SAAS,eAAe,CAAC,OAA4B;IACnD,OAAO,YAAY,CAA0B;QAC3C,IAAI,EAAE;YACJ,KAAK,EAAE,oBAAoB,OAAO,UAAU;SAC7C;QACD,UAAU,EAAE;YACV,KAAK,EAAE,gBAAgB;SACxB;QACD,MAAM,EAAE,KAAK,IAAI,EAAE;YACjB,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,CAAC;YAEvD,OAAO,KAAK,UAAU,KAAK,CAAmB,KAAc;gBAC1D,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC;oBACtC,OAAO;oBACP,aAAa,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC;oBAClC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;iBAC9B,CAAC,CAAC;gBAEH,WAAW,CACT,IAAI,EACJ,KAAK,CAAC,IAAI;oBACR,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;oBACjC,CAAC,CAAC,wBAAwB,CAAC,MAAM,CAAC,CACrC,CAAC;gBACF,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;oBAC1B,IAAI,CAAC,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;gBAC1C,CAAC;YACH,CAAC,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,QAAQ,GAAG,aAAa,CAAC;IAC7B,IAAI,EAAE;QACJ,KAAK,EAAE,0CAA0C;KAClD;IACD,MAAM,EAAE;QACN,QAAQ,EAAE,eAAe,CAAC,UAAU,CAAC;QACrC,OAAO,EAAE,eAAe,CAAC,SAAS,CAAC;QACnC,KAAK,EAAE,eAAe,CAAC,OAAO,CAAC;QAC/B,IAAI,EAAE,eAAe,CAAC,MAAM,CAAC;KAC9B;CACF,CAAC,CAAC;AAEH,MAAM,cAAc,GAAG,YAAY,CAAqC;IACtE,IAAI,EAAE;QACJ,KAAK,EAAE,oCAAoC;KAC5C;IACD,UAAU,EAAE;QACV,KAAK,EAAE,qBAAqB;QAC5B,UAAU,EAAE,cAAc;KAC3B;IACD,MAAM,EAAE,KAAK,IAAI,EAAE;QACjB,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC;QAEjD,OAAO,KAAK,UAAU,OAAO,CAE3B,KAAmB,EACnB,IAAY;YAEZ,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC;gBAC9B,IAAI;gBACJ,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,UAAU,EAAE,KAAK,CAAC,MAAM;aACzB,CAAC,CAAC;YAEH,WAAW,CACT,IAAI,EACJ,KAAK,CAAC,IAAI;gBACR,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;gBACjC,CAAC,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAChC,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,UAAU,GAAG,aAAa,CAAC;IAC/B,IAAI,EAAE;QACJ,KAAK,EAAE,oCAAoC;KAC5C;IACD,MAAM,EAAE;QACN,GAAG,EAAE,cAAc;KACpB;CACF,CAAC,CAAC;AAEH,MAAM,kBAAkB,GAAG,YAAY,CAAmC;IACxE,IAAI,EAAE;QACJ,KAAK,EAAE,sCAAsC;KAC9C;IACD,UAAU,EAAE;QACV,KAAK,EAAE,yBAAyB;KACjC;IACD,MAAM,EAAE,KAAK,IAAI,EAAE;QACjB,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;QAEvD,OAAO,KAAK,UAAU,QAAQ,CAAmB,KAAuB;YACtE,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC;gBAClC,UAAU,EAAE,KAAK,CAAC,MAAM;gBACxB,SAAS,EAAE,KAAK,CAAC,SAAS;aAC3B,CAAC,CAAC;YAEH,WAAW,CACT,IAAI,EACJ,KAAK,CAAC,IAAI;gBACR,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;gBACjC,CAAC,CAAC,oBAAoB,CAAC,MAAM,CAAC,CACjC,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,YAAY,GAAG,aAAa,CAAC;IACjC,IAAI,EAAE;QACJ,KAAK,EAAE,gCAAgC;KACxC;IACD,MAAM,EAAE;QACN,KAAK,EAAE,kBAAkB;KAC1B;CACF,CAAC,CAAC;AAEH,MAAM,kBAAkB,GAAG,YAAY,CACrC;IACE,IAAI,EAAE;QACJ,KAAK,EAAE,4BAA4B;KACpC;IACD,UAAU,EAAE;QACV,KAAK,EAAE,yBAAyB;QAChC,UAAU,EAAE,cAAc;KAC3B;IACD,MAAM,EAAE,KAAK,IAAI,EAAE;QACjB,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;QAEzD,OAAO,KAAK,UAAU,WAAW,CAE/B,KAAuB,EACvB,IAAY;YAEZ,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC;gBAClC,IAAI;gBACJ,UAAU,EAAE,KAAK,CAAC,MAAM;gBACxB,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,EAAE,EAAE,KAAK,CAAC,EAAE;gBACZ,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,WAAW,EAAE,KAAK,CAAC,WAAW;gBAC9B,WAAW,EAAE,KAAK,CAAC,WAAW;gBAC9B,MAAM,EAAE,KAAK,CAAC,MAAM;aACrB,CAAC,CAAC;YAEH,WAAW,CACT,IAAI,EACJ,KAAK,CAAC,IAAI;gBACR,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;gBACjC,CAAC,CAAC,oBAAoB,CAAC,MAAM,CAAC,CACjC,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;CACF,CACF,CAAC;AAEF,MAAM,cAAc,GAAG,aAAa,CAAC;IACnC,IAAI,EAAE;QACJ,KAAK,EAAE,kCAAkC;KAC1C;IACD,MAAM,EAAE;QACN,GAAG,EAAE,kBAAkB;KACxB;CACF,CAAC,CAAC;AAEH,MAAM,6BAA6B,GAAG;IACpC,KAAK,EAAE;QACL,IAAI,EAAE,MAAM;QACZ,MAAM,EAAE,sBAAsB;QAC9B,QAAQ,EAAE,IAAI;QACd,KAAK,EAAE,sDAAsD;KAC9D;IACD,IAAI,EAAE,QAAQ;CAC8C,CAAC;AAE/D,MAAM,wBAAwB,GAAG,YAAY,CAAkC;IAC7E,IAAI,EAAE;QACJ,KAAK,EAAE,oDAAoD;KAC5D;IACD,UAAU,EAAE;QACV,KAAK,EAAE,6BAA6B;KACrC;IACD,MAAM,EAAE,KAAK,IAAI,EAAE;QACjB,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,CAAC;QAE/D,OAAO,KAAK,UAAU,UAAU,CAAmB,KAAsB;YACvE,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;YAChE,WAAW,CACT,IAAI,EACJ,KAAK,CAAC,IAAI;gBACR,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;gBACjC,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,IAAI,MAAM,CAAC,KAAK,mBAAmB,MAAM,CAAC,IAAI;;wDAE1D,CACjD,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,0BAA0B,GAAG,YAAY,CAI7C;IACA,IAAI,EAAE;QACJ,KAAK,EAAE,mDAAmD;KAC3D;IACD,UAAU,EAAE;QACV,KAAK,EAAE,6BAA6B;KACrC;IACD,MAAM,EAAE,KAAK,IAAI,EAAE;QACjB,MAAM,EAAE,oBAAoB,EAAE,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,CAAC;QAEjE,OAAO,KAAK,UAAU,YAAY,CAEhC,KAAsB;YAEtB,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;YAClE,WAAW,CACT,IAAI,EACJ,KAAK,CAAC,IAAI;gBACR,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;gBACjC,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,SAAS;oBAC3B,CAAC,CAAC,WAAW,MAAM,CAAC,KAAK,qBAAqB,MAAM,CAAC,IAAI,EAAE;oBAC3D,CAAC,CAAC,mCAAmC,MAAM,CAAC,IAAI,EAAE,CACvD,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,gBAAgB,GAAG,aAAa,CAAC;IACrC,IAAI,EAAE;QACJ,KAAK,EAAE,mCAAmC;KAC3C;IACD,MAAM,EAAE;QACN,OAAO,EAAE,wBAAwB;QACjC,SAAS,EAAE,0BAA0B;KACtC;CACF,CAAC,CAAC;AAEH,MAAM,mBAAmB,GAAG,YAAY,CAItC;IACA,IAAI,EAAE;QACJ,KAAK,EAAE,wCAAwC;KAChD;IACD,UAAU,EAAE;QACV,KAAK,EAAE;YACL,GAAG,kBAAkB;YACrB,IAAI,EAAE;gBACJ,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,KAAK;gBAClB,KAAK,EACH,iFAAiF;aACpF;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,KAAK;gBAClB,KAAK,EACH,0EAA0E;aAC7E;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,KAAK;gBAClB,KAAK,EAAE,gEAAgE;aACxE;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,KAAK;gBAClB,KAAK,EACH,qEAAqE;aACxE;SAC6D;QAChE,UAAU,EAAE,cAAc;KAC3B;IACD,MAAM,EAAE,KAAK,IAAI,EAAE;QACjB,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC;QAEnD,OAAO,KAAK,UAAU,eAAe,CAEnC,KAAwB,EACxB,IAAY;YAEZ,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC;gBAChC,IAAI;gBACJ,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;gBAC3B,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;gBAC7B,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC;gBACzB,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;gBAC7B,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;gBAC7B,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC;aACtC,CAAC,CAAC;YACH,WAAW,CACT,IAAI,EACJ,KAAK,CAAC,IAAI;gBACR,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;gBACjC,CAAC,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAClC,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,kBAAkB,GAAG,YAAY,CACrC;IACE,IAAI,EAAE;QACJ,KAAK,EAAE,0CAA0C;KAClD;IACD,UAAU,EAAE;QACV,KAAK,EAAE;YACL,GAAG,kBAAkB;YACrB,IAAI,EAAE;gBACJ,IAAI,EAAE,MAAM;gBACZ,MAAM,EAAE,uBAAuB;gBAC/B,QAAQ,EAAE,IAAI;gBACd,QAAQ,EAAE,GAAG;gBACb,KAAK,EACH,uIAAuI;aAC1I;SAC4D;QAC/D,UAAU,EAAE,cAAc;KAC3B;IACD,MAAM,EAAE,KAAK,IAAI,EAAE;QACjB,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC;QAElD,OAAO,KAAK,UAAU,cAAc,CAElC,KAAuB,EACvB,IAAY;YAEZ,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC;gBAC/B,IAAI;gBACJ,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;gBAC3B,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;aAC9B,CAAC,CAAC;YACH,WAAW,CACT,IAAI,EACJ,KAAK,CAAC,IAAI;gBACR,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;gBACjC,CAAC,CAAC,oBAAoB,CAAC,MAAM,CAAC,CACjC,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;CACF,CACF,CAAC;AAiBF,SAAS,iBAAiB,CACxB,SAA4B,EAC5B,KAAa,EACb,eAAwD;IAExD,OAAO,YAAY,CAAkC;QACnD,IAAI,EAAE;YACJ,KAAK;SACN;QACD,UAAU,EAAE;YACV,KAAK,EAAE,kBAAkB;YACzB,UAAU,EAAE,cAAc;SAC3B;QACD,MAAM,EAAE,KAAK,IAAI,EAAE;YACjB,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC;YAE7C,OAAO,KAAK,UAAU,OAAO,CAE3B,KAAgB,EAChB,IAAY;gBAEZ,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,SAAS,CAAC,CAAC;oBACzC,IAAI;oBACJ,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;oBAC3B,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;iBAC9B,CAAC,CAAC;gBACH,WAAW,CACT,IAAI,EACJ,KAAK,CAAC,IAAI;oBACR,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;oBACjC,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,CAC5B,CAAC;YACJ,CAAC,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,mBAAmB,GAAG,YAAY,CAItC;IACA,IAAI,EAAE;QACJ,KAAK,EAAE,oCAAoC;KAC5C;IACD,UAAU,EAAE;QACV,KAAK,EAAE;YACL,GAAG,kBAAkB;YACrB,KAAK,EAAE,gBAAgB,CACrB,kDAAkD,CACnD;SAC6D;QAChE,UAAU,EAAE,cAAc;KAC3B;IACD,MAAM,EAAE,KAAK,IAAI,EAAE;QACjB,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC;QAEnD,OAAO,KAAK,UAAU,eAAe,CAEnC,KAAwB,EACxB,IAAY;YAEZ,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CACb,2FAA2F,CAC5F,CAAC;YACJ,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC;gBAChC,IAAI;gBACJ,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;gBAC3B,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;aAC9B,CAAC,CAAC;YACH,WAAW,CACT,IAAI,EACJ,KAAK,CAAC,IAAI;gBACR,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;gBACjC,CAAC,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAClC,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,mBAAmB,GAAG,YAAY,CAItC;IACA,IAAI,EAAE;QACJ,KAAK,EAAE,8BAA8B;KACtC;IACD,UAAU,EAAE;QACV,KAAK,EAAE;YACL,GAAG,kBAAkB;YACrB,IAAI,EAAE,gBAAgB,CAAC,yCAAyC,CAAC;YACjE,QAAQ,EAAE,gBAAgB,CAAC,6CAA6C,CAAC;YACzE,KAAK,EAAE;gBACL,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,KAAK;gBAClB,KAAK,EAAE,kDAAkD;aAC1D;SAC6D;QAChE,UAAU,EAAE,cAAc;KAC3B;IACD,MAAM,EAAE,KAAK,IAAI,EAAE;QACjB,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC;QAEnD,OAAO,KAAK,UAAU,eAAe,CAEnC,KAAwB,EACxB,IAAY;YAEZ,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC;gBAChC,IAAI;gBACJ,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;gBAC3B,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;gBAC3B,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;aAC9B,CAAC,CAAC;YACH,WAAW,CACT,IAAI,EACJ,KAAK,CAAC,IAAI;gBACR,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;gBACjC,CAAC,CAAC,qBAAqB,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CACnE,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,mBAAmB,GAAG,YAAY,CAA4B;IAClE,IAAI,EAAE;QACJ,KAAK,EAAE,2CAA2C;KACnD;IACD,UAAU,EAAE;QACV,KAAK,EAAE,kBAAkB;KAC1B;IACD,MAAM,EAAE,KAAK,IAAI,EAAE;QACjB,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC;QAEnD,OAAO,KAAK,UAAU,eAAe,CAAmB,KAAgB;YACtE,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC;gBAChC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;gBAC3B,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;aAC9B,CAAC,CAAC;YACH,WAAW,CACT,IAAI,EACJ,KAAK,CAAC,IAAI;gBACR,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;gBACjC,CAAC,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAClC,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,UAAU,GAAG,aAAa,CAAC;IAC/B,IAAI,EAAE;QACJ,KAAK,EAAE,6BAA6B;KACrC;IACD,MAAM,EAAE;QACN,OAAO,EAAE,iBAAiB,CACxB,aAAa,EACb,0BAA0B,EAC1B,oBAAoB,CACrB;QACD,QAAQ,EAAE,iBAAiB,CACzB,cAAc,EACd,4BAA4B,EAC5B,qBAAqB,CACtB;QACD,KAAK,EAAE,iBAAiB,CACtB,WAAW,EACX,2BAA2B,EAC3B,kBAAkB,CACnB;QACD,OAAO,EAAE,iBAAiB,CACxB,aAAa,EACb,uCAAuC,EACvC,oBAAoB,CACrB;QACD,OAAO,EAAE,kBAAkB;QAC3B,GAAG,EAAE,iBAAiB,CACpB,SAAS,EACT,yBAAyB,EACzB,gBAAgB,CACjB;QACD,YAAY,EAAE,iBAAiB,CAC7B,kBAAkB,EAClB,kCAAkC,EAClC,yBAAyB,CAC1B;QACD,QAAQ,EAAE,mBAAmB;QAC7B,QAAQ,EAAE,mBAAmB;QAC7B,MAAM,EAAE,iBAAiB,CACvB,YAAY,EACZ,mCAAmC,EACnC,mBAAmB,CACpB;QACD,IAAI,EAAE,iBAAiB,CACrB,UAAU,EACV,+BAA+B,EAC/B,iBAAiB,CAClB;QACD,QAAQ,EAAE,mBAAmB;QAC7B,QAAQ,EAAE,mBAAmB;QAC7B,IAAI,EAAE,iBAAiB,CACrB,UAAU,EACV,0BAA0B,EAC1B,iBAAiB,CAClB;QACD,IAAI,EAAE,iBAAiB,CACrB,UAAU,EACV,sCAAsC,EACtC,iBAAiB,CAClB;QACD,IAAI,EAAE,iBAAiB,CACrB,UAAU,EACV,2BAA2B,EAC3B,iBAAiB,CAClB;QACD,MAAM,EAAE,iBAAiB,CACvB,YAAY,EACZ,4BAA4B,EAC5B,mBAAmB,CACpB;QACD,OAAO,EAAE,iBAAiB,CACxB,aAAa,EACb,sBAAsB,EACtB,oBAAoB,CACrB;KACF;CACF,CAAC,CAAC;AAEH,MAAM,UAAU,GAAG,aAAa,CAAC;IAC/B,IAAI,EAAE;QACJ,KAAK,EAAE,aAAa;QACpB,eAAe,EAAE;;6EAEwD;KAC1E;IACD,MAAM,EAAE;QACN,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,aAAa;QACrB,EAAE,EAAE,QAAQ;QACZ,MAAM,EAAE,aAAa;QACrB,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,UAAU;QAChB,GAAG,EAAE,UAAU;QACf,MAAM,EAAE,YAAY;QACpB,MAAM,EAAE,aAAa;QACrB,QAAQ,EAAE,cAAc;QACxB,IAAI,EAAE,UAAU;KACjB;CACF,CAAC,CAAC;AAEH,MAAM,GAAG,GAAG,gBAAgB,CAAC,UAAU,EAAE;IACvC,IAAI,EAAE,SAAS;IACf,WAAW,EAAE;QACX,cAAc,EAAE,aAAa,EAAE;KAChC;IACD,OAAO,EAAE;QACP,SAAS,EAAE,uBAAuB;KACnC;IACD,aAAa,EAAE;QACb,gBAAgB,EAAE,IAAI;KACvB;IACD,YAAY,EAAE;QACZ,IAAI,EAAE;YACJ,GAAG,OAAO;YACV,4BAA4B,EAAE,kBAAkB;YAChD,kBAAkB,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO;SAC7C;KACF;IACD,iBAAiB,EAAE,GAAG,EAAE,CAAC,CAAC;CAC3B,CAAC,CAAC;AAEH,SAAS,YAAY,CAAI,MAAoB;IAC3C,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;AAC9B,CAAC;AAED,SAAS,WAAW,CAAC,OAAmB,EAAE,MAAc;IACtD,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,IAAI,CAAC,CAAC;AAC9C,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAc;IACxC,OAAO,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAChE,CAAC;AAuDD,SAAS,mBAAmB,CAAC,MAAiC;IAC5D,MAAM,MAAM,GACV,MAAM,CAAC,MAAM,KAAK,SAAS;QACzB,CAAC,CAAC,WAAW;QACb,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAE7C,OAAO,YAAY,MAAM,CAAC,IAAI,OAAO,MAAM,CAAC,UAAU;;;EAGtD,MAAM,EAAE,CAAC;AACX,CAAC;AAED,SAAS,oBAAoB,CAAC,MAAkC;IAC9D,OAAO,qBAAqB,MAAM,CAAC,UAAU;;;aAGlC,MAAM,CAAC,MAAM,CAAC,OAAO;eACnB,MAAM,CAAC,MAAM,CAAC,SAAS;aACzB,MAAM,CAAC,MAAM,CAAC,OAAO;kBAChB,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;AAC/C,CAAC;AAED,SAAS,oBAAoB,CAAC,MAAkC;IAC9D,OAAO,gBAAgB,MAAM,CAAC,IAAI,OAAO,MAAM,CAAC,UAAU;;;YAGhD,MAAM,CAAC,GAAG,CAAC,MAAM;QACrB,MAAM,CAAC,GAAG,CAAC,EAAE,IAAI,MAAM;aAClB,MAAM,CAAC,GAAG,CAAC,OAAO,IAAI,MAAM;iBACxB,MAAM,CAAC,GAAG,CAAC,WAAW,IAAI,MAAM;iBAChC,MAAM,CAAC,GAAG,CAAC,WAAW,IAAI,MAAM,EAAE,CAAC;AACpD,CAAC;AAED,SAAS,SAAS,CAChB,MAA6B,EAC7B,UAII,EAAE;IAEN,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAClB,MAAM,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAExE,OAAO,gBAAgB,MAAM,CAAC,IAAI,OAAO,MAAM,CAAC,SAAS;;;EAG3D,YAAY,EAAE,CAAC;IACf,CAAC;IAED,MAAM,EAAE,GAAG,MAAM,CAAC,cAAc,CAAC;IACjC,MAAM,GAAG,GAAG,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC;IACnD,MAAM,GAAG,GAAG,+BAA+B,CAAC,EAAE,CAAC,CAAC;IAChD,MAAM,uBAAuB,GAC3B,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC,gCAAgC,CAAC,IAAI,EAAE,CAAC;IACvE,MAAM,OAAO,GACX,uBAAuB,CAAC,MAAM,GAAG,CAAC;QAChC,CAAC,CAAC,iFAAiF;QACnF,CAAC,CAAC,EAAE,CAAC;IACT,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG;QAC1B,CAAC,CAAC,uDAAuD;QACzD,CAAC,CAAC,sCAAsC,CAAC;IAC3C,MAAM,oBAAoB,GAAG,OAAO,CAAC,QAAQ;QAC3C,CAAC,CAAC,oBAAoB,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC;QACrD,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,iBAAiB,GAAG,oBAAoB;QAC5C,CAAC,CAAC;IACF,oBAAoB;;CAEvB;QACG,CAAC,CAAC,EAAE,CAAC;IAEP,OAAO,WAAW,MAAM,CAAC,IAAI,OAAO,MAAM,CAAC,SAAS;;;OAG/C,MAAM,CAAC,SAAS;IACnB,EAAE;;EAEJ,OAAO;EACP,iBAAiB;IACf,GAAG;;;IAGH,GAAG;EACL,QAAQ;;;IAGN,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;;;IAGH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG,SAAS,CAAC;AACjB,CAAC;AAED,SAAS,+BAA+B,CAAC,EAAkB;IACzD,QAAQ,EAAE,EAAE,CAAC;QACX,KAAK,KAAK;YACR,OAAO,oBAAoB,CAAC;QAC9B,KAAK,MAAM;YACT,OAAO,cAAc,CAAC;QACxB,KAAK,MAAM;YACT,OAAO,cAAc,CAAC;QACxB;YACE,OAAO,aAAa,CAAC;IACzB,CAAC;AACH,CAAC;AAED,SAAS,gCAAgC,CACvC,WAA4B;IAE5B,OAAO,CACL,WAAW,KAAK,SAAS;QACzB,WAAW,KAAK,QAAQ;QACxB,WAAW,KAAK,oBAAoB,CACrC,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,MAA2B;IAInD,OAAO;QACL,YAAY,EAAE,CAAC,GAAG,MAAM,CAAC,YAAY,EAAE,GAAG,MAAM,CAAC,YAAY,CAAC;aAC3D,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC;aAC1B,IAAI,CAAC,IAAI,CAAC;QACb,YAAY,EAAE,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;KACxE,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CACpB,MAA2B,EAC3B,IAAY,EACZ,KAAwB;IAExB,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAEhE,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,IAAI,MAAM,CAAC,IAAI,IAAI,IAAI,OAAO,MAAM,CAAC,SAAS;;;EAGlG,YAAY,IAAI,QAAQ;EACxB,YAAY,CAAC,CAAC,CAAC,+BAA+B,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE;;;EAGjE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;AAChD,CAAC;AAED,SAAS,qBAAqB,CAAC,MAA2B;IACxD,OAAO,aAAa,CAAC,MAAM,EAAE,UAAU,EAAE;QACvC,wGAAwG;QACxG,qDAAqD;QACrD,sGAAsG;QACtG,0FAA0F;KAC3F,CAAC,CAAC;AACL,CAAC;AAED,SAAS,wBAAwB,CAC/B,MAAsC;IAEtC,MAAM,OAAO,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC1D,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC;IAEnD,OAAO,GAAG,MAAM,IAAI,MAAM,CAAC,MAAM,OAAO,MAAM,CAAC,GAAG;;;IAGhD,OAAO,EAAE,CAAC;AACd,CAAC;AAED,SAAS,oBAAoB,CAAC,MAA2B;IACvD,OAAO,aAAa,CAAC,MAAM,EAAE,eAAe,EAAE;QAC5C,oHAAoH;QACpH,wIAAwI;QACxI,sGAAsG;QACtG,0FAA0F;KAC3F,CAAC,CAAC;AACL,CAAC;AAED,SAAS,qBAAqB,CAAC,MAA2B;IACxD,OAAO,aAAa,CAAC,MAAM,EAAE,UAAU,EAAE;QACvC,iDAAiD;QACjD,8EAA8E;KAC/E,CAAC,CAAC;AACL,CAAC;AAED,SAAS,iBAAiB,CAAC,MAA2B;IACpD,OAAO,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE;QACnC,6EAA6E;QAC7E,uEAAuE;KACxE,CAAC,CAAC;AACL,CAAC;AAED,SAAS,oBAAoB,CAAC,MAA2B;IACvD,OAAO,aAAa,CAAC,MAAM,EAAE,UAAU,EAAE;QACvC,2EAA2E;QAC3E,gEAAgE;KACjE,CAAC,CAAC;AACL,CAAC;AAED,SAAS,iBAAiB,CAAC,MAA2B;IACpD,OAAO,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE;QACnC,oFAAoF;QACpF,8BAA8B;KAC/B,CAAC,CAAC;AACL,CAAC;AAED,SAAS,iBAAiB,CAAC,MAA2B;IACpD,OAAO,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE;QACnC,qEAAqE;QACrE,qEAAqE;KACtE,CAAC,CAAC;AACL,CAAC;AAED,SAAS,mBAAmB,CAAC,MAA2B;IACtD,OAAO,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE;QACrC,yEAAyE;QACzE,0EAA0E;KAC3E,CAAC,CAAC;AACL,CAAC;AAED,SAAS,oBAAoB,CAAC,MAA2B;IACvD,OAAO,aAAa,CAAC,MAAM,EAAE,cAAc,EAAE;QAC3C,8EAA8E;QAC9E,uFAAuF;KACxF,CAAC,CAAC;AACL,CAAC;AAED,SAAS,kBAAkB,CAAC,MAA2B;IACrD,OAAO,aAAa,CAAC,MAAM,EAAE,OAAO,EAAE;QACpC,gEAAgE;QAChE,yEAAyE;KAC1E,CAAC,CAAC;AACL,CAAC;AAED,SAAS,gBAAgB,CAAC,MAA2B;IACnD,OAAO,aAAa,CAAC,MAAM,EAAE,KAAK,EAAE;QAClC,wEAAwE;QACxE,iFAAiF;KAClF,CAAC,CAAC;AACL,CAAC;AAED,SAAS,oBAAoB,CAAC,MAA2B;IACvD,OAAO,aAAa,CAAC,MAAM,EAAE,SAAS,EAAE;QACtC,yEAAyE;QACzE,iFAAiF;KAClF,CAAC,CAAC;AACL,CAAC;AAED,SAAS,iBAAiB,CAAC,MAA2B;IACpD,OAAO,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE;QACnC,gEAAgE;QAChE,qGAAqG;KACtG,CAAC,CAAC;AACL,CAAC;AAED,SAAS,yBAAyB,CAAC,MAA2B;IAC5D,OAAO,aAAa,CAAC,MAAM,EAAE,cAAc,EAAE;QAC3C,6EAA6E;QAC7E,2HAA2H;KAC5H,CAAC,CAAC;AACL,CAAC;AAED,SAAS,qBAAqB,CAAC,MAA2B;IACxD,OAAO,aAAa,CAAC,MAAM,EAAE,eAAe,EAAE;QAC5C,sFAAsF;QACtF,qGAAqG;QACrG,oLAAoL;QACpL,0FAA0F;KAC3F,CAAC,CAAC;AACL,CAAC;AAED,SAAS,qBAAqB,CAAC,MAA2B;IACxD,OAAO,aAAa,CAAC,MAAM,EAAE,UAAU,EAAE;QACvC,sDAAsD;QACtD,+DAA+D;KAChE,CAAC,CAAC;AACL,CAAC;AAED,SAAS,qBAAqB,CAC5B,MAA2B,EAC3B,UAA+B,EAAE;IAEjC,OAAO,aAAa,CAAC,MAAM,EAAE,UAAU,EAAE;QACvC,sEAAsE;QACtE,GAAG,CAAC,OAAO,CAAC,KAAK;YACf,CAAC,CAAC;gBACE,+GAA+G;aAChH;YACH,CAAC,CAAC,CAAC,4DAA4D,CAAC,CAAC;KACpE,CAAC,CAAC;AACL,CAAC;AAED,SAAS,mBAAmB,CAAC,MAA2B;IACtD,OAAO,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE;QACrC,yFAAyF;QACzF,2FAA2F;KAC5F,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,IAAI,CACxB,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAC9B,UAAoD,EAAE,OAAO,EAAE;IAE/D,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,MAAM,GAAG,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,CAAC;QACpC,OAAO,CAAC,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QAC7B,OAAO;IACT,CAAC;IAED,yEAAyE;IACzE,uEAAuE;IACvE,gDAAgD;IAChD,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,YAAY,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;QAC1D,MAAM,wBAAwB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QACzD,OAAO;IACT,CAAC;IAED,MAAM,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,iBAAiB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;AACrC,CAAC;AAED,KAAK,UAAU,wBAAwB,CACrC,MAAyB,EACzB,OAAiD;IAEjD,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,kBAAkB,CACxC,GAAG,EACH,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EACnC,OAAO,CACR,CAAC;QACF,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAC,UAAU,IAAI,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,mEAAmE;IACrE,CAAC;AACH,CAAC;AAED,0EAA0E;AAC1E,8EAA8E;AAC9E,0EAA0E;AAC1E,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAAC;IACpC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG;CAC5C,CAAC,CAAC;AAEH,SAAS,iBAAiB,CAAC,IAAoB;IAC7C,IAAI,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QACtC,OAAO;IACT,CAAC;IAED,IAAI,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7C,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;QAClB,OAAO;IACT,CAAC;IAED,IAAI,IAAI,CAAC,QAAQ,GAAG,GAAG,EAAE,CAAC;QACxB,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;IACpB,CAAC;AACH,CAAC;AAED,SAAS,eAAe;IACtB,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACjC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,CAAC;QACH,OAAO,CACL,YAAY,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,YAAY,CAAC,QAAQ,CAAC,CACxE,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,IAAI,eAAe,EAAE,EAAE,CAAC;IACtB,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;QAC9B,OAAO,CAAC,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACtE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;IACvB,CAAC,CAAC,CAAC;AACL,CAAC"}
|
package/dist/inspect.js
CHANGED
|
@@ -1215,6 +1215,8 @@ async function inspectProductionReadiness(targetDir, files, config, convention)
|
|
|
1215
1215
|
}
|
|
1216
1216
|
}
|
|
1217
1217
|
const providerEntries = await readProviderListEntries(targetDir, files, config, sourceCache);
|
|
1218
|
+
const stripeMemoryProviderMismatch = await hasStripeMemoryProviderMismatch(targetDir, sourceCache, configFiles, installedPackages, providerEntries);
|
|
1219
|
+
diagnostics.push(...(await inspectEntitlementsProductionReadiness(targetDir, files, config, sourceCache)), ...(await inspectPaymentsProductionReadiness(targetDir, files, config, sourceCache, installedPackages, stripeMemoryProviderMismatch)));
|
|
1218
1220
|
for (const provider of providerDoctorRules) {
|
|
1219
1221
|
if (!installedPackages.has(provider.packageName))
|
|
1220
1222
|
continue;
|
|
@@ -1268,6 +1270,98 @@ async function inspectProductionReadiness(targetDir, files, config, convention)
|
|
|
1268
1270
|
}
|
|
1269
1271
|
return diagnostics;
|
|
1270
1272
|
}
|
|
1273
|
+
async function inspectEntitlementsProductionReadiness(targetDir, files, config, sourceCache) {
|
|
1274
|
+
if (!(await usesEntitlementChecks(targetDir, files, sourceCache)) ||
|
|
1275
|
+
(await appPortsIncludesPort(targetDir, files, config, sourceCache, "entitlements"))) {
|
|
1276
|
+
return [];
|
|
1277
|
+
}
|
|
1278
|
+
return [
|
|
1279
|
+
{
|
|
1280
|
+
severity: "warning",
|
|
1281
|
+
code: "BEIGNET_ENTITLEMENTS_PORT_MISSING",
|
|
1282
|
+
file: config.paths.ports,
|
|
1283
|
+
message: "This app checks entitlements, but AppPorts does not declare an entitlements port. Add entitlements: EntitlementsPort; and wire a provider-backed entitlement resolver before deploying paid feature gates.",
|
|
1284
|
+
},
|
|
1285
|
+
];
|
|
1286
|
+
}
|
|
1287
|
+
async function inspectPaymentsProductionReadiness(targetDir, files, config, sourceCache, installedPackages, stripeMemoryProviderMismatch) {
|
|
1288
|
+
if (!(hasBillingOrPaymentsFeature(files, config) ||
|
|
1289
|
+
installedPackages.has("@beignet/provider-payments-stripe"))) {
|
|
1290
|
+
return [];
|
|
1291
|
+
}
|
|
1292
|
+
const diagnostics = [];
|
|
1293
|
+
if (stripeMemoryProviderMismatch) {
|
|
1294
|
+
diagnostics.push({
|
|
1295
|
+
severity: "warning",
|
|
1296
|
+
code: "BEIGNET_PAYMENTS_STRIPE_MEMORY_PROVIDER",
|
|
1297
|
+
file: serverProviderFiles(files, config)[0] ?? config.paths.server,
|
|
1298
|
+
message: "@beignet/provider-payments-stripe is installed and Stripe env/config is present, but server/providers.ts still registers memory payments. Register stripePaymentsProvider before deploying Stripe-backed billing, or remove the Stripe provider/config until the app is ready to switch.",
|
|
1299
|
+
});
|
|
1300
|
+
}
|
|
1301
|
+
if (!(await hasPaymentWebhookRoute(targetDir, files, config, sourceCache))) {
|
|
1302
|
+
diagnostics.push({
|
|
1303
|
+
severity: "warning",
|
|
1304
|
+
code: "BEIGNET_PAYMENTS_WEBHOOK_ROUTE_MISSING",
|
|
1305
|
+
file: directoryPath(config.paths.routes),
|
|
1306
|
+
message: "This app appears to use payments, but no route calls createPaymentWebhookRoute(...). Expose payment webhooks under app/api/webhooks/payments/route.ts or an equivalent configured route so provider events can update billing state.",
|
|
1307
|
+
});
|
|
1308
|
+
}
|
|
1309
|
+
const billingContractsFile = `${directoryPath(config.paths.features)}/billing/contracts.ts`;
|
|
1310
|
+
if (files.includes(billingContractsFile)) {
|
|
1311
|
+
const source = await readCachedSource(targetDir, billingContractsFile, sourceCache);
|
|
1312
|
+
const checkoutContract = exportedConstInitializer(source, "createCheckoutSession");
|
|
1313
|
+
if (checkoutContract &&
|
|
1314
|
+
!(/\bidempotency\s*:/.test(checkoutContract) &&
|
|
1315
|
+
/["']idempotency-key["']/.test(checkoutContract))) {
|
|
1316
|
+
diagnostics.push({
|
|
1317
|
+
severity: "warning",
|
|
1318
|
+
code: "BEIGNET_BILLING_CHECKOUT_IDEMPOTENCY_MISSING",
|
|
1319
|
+
file: billingContractsFile,
|
|
1320
|
+
contract: "createCheckoutSession",
|
|
1321
|
+
message: "The billing checkout contract appears to create payment sessions without idempotency metadata and an idempotency-key header. Mark checkout as idempotent so retries do not create duplicate payment sessions.",
|
|
1322
|
+
});
|
|
1323
|
+
}
|
|
1324
|
+
}
|
|
1325
|
+
const billingUseCasesFile = `${directoryPath(config.paths.features)}/billing/use-cases/index.ts`;
|
|
1326
|
+
if (files.includes(billingUseCasesFile)) {
|
|
1327
|
+
const source = await readCachedSource(targetDir, billingUseCasesFile, sourceCache);
|
|
1328
|
+
if (/\bctx\.ports\.idempotency\b/.test(source) &&
|
|
1329
|
+
!(await appPortsIncludesIdempotency(targetDir, files, config, sourceCache))) {
|
|
1330
|
+
diagnostics.push({
|
|
1331
|
+
severity: "warning",
|
|
1332
|
+
code: "BEIGNET_BILLING_IDEMPOTENCY_PORT_MISSING",
|
|
1333
|
+
file: config.paths.ports,
|
|
1334
|
+
message: "Billing use cases reference ctx.ports.idempotency, but AppPorts does not declare an idempotency port. Add idempotency to AppPorts and provider wiring, or remove the stale billing workflow dependency.",
|
|
1335
|
+
});
|
|
1336
|
+
}
|
|
1337
|
+
}
|
|
1338
|
+
const billingEntitlementsFile = `${directoryPath(config.paths.features)}/billing/entitlements.ts`;
|
|
1339
|
+
if (files.includes(billingEntitlementsFile) &&
|
|
1340
|
+
!(await hasBillingEntitlementsProviderWiring(targetDir, files, config, sourceCache))) {
|
|
1341
|
+
diagnostics.push({
|
|
1342
|
+
severity: "warning",
|
|
1343
|
+
code: "BEIGNET_BILLING_ENTITLEMENTS_PROVIDER_MISSING",
|
|
1344
|
+
file: path.dirname(config.paths.infrastructurePorts),
|
|
1345
|
+
message: "features/billing/entitlements.ts exists, but no infra or server provider appears to call createBillingEntitlements(...). Wire the billing-backed entitlements port into AppPorts so paid feature gates use app billing state.",
|
|
1346
|
+
});
|
|
1347
|
+
}
|
|
1348
|
+
return diagnostics;
|
|
1349
|
+
}
|
|
1350
|
+
async function hasStripeMemoryProviderMismatch(targetDir, sourceCache, configFiles, installedPackages, providerEntries) {
|
|
1351
|
+
if (!installedPackages.has("@beignet/provider-payments-stripe")) {
|
|
1352
|
+
return false;
|
|
1353
|
+
}
|
|
1354
|
+
if (findProviderEntryIndex(providerEntries, ["stripePaymentsProvider"]) >= 0) {
|
|
1355
|
+
return false;
|
|
1356
|
+
}
|
|
1357
|
+
if (findProviderEntryIndex(providerEntries, [
|
|
1358
|
+
"createMemoryPaymentsProvider",
|
|
1359
|
+
"createMemoryPayments",
|
|
1360
|
+
]) < 0) {
|
|
1361
|
+
return false;
|
|
1362
|
+
}
|
|
1363
|
+
return anyFileMatches(targetDir, configFiles, /\bSTRIPE_(?:SECRET_KEY|WEBHOOK_SECRET)\b/, sourceCache);
|
|
1364
|
+
}
|
|
1271
1365
|
// Local-dev ranges such as the generated-app conformance vendoring point each
|
|
1272
1366
|
// @beignet/* package at a different path on purpose, so they are exempt from
|
|
1273
1367
|
// the declared-range comparison. Their installed versions still participate in
|
|
@@ -1380,9 +1474,14 @@ async function inspectProviderRegistrationDrift(targetDir, files, config, conven
|
|
|
1380
1474
|
const providerFiles = serverProviderFiles(files, config);
|
|
1381
1475
|
const sourceCache = new Map();
|
|
1382
1476
|
const providerEntries = await readProviderListEntries(targetDir, files, config, sourceCache);
|
|
1477
|
+
const stripeMemoryProviderMismatch = await hasStripeMemoryProviderMismatch(targetDir, sourceCache, operationalConfigFiles(files, config), installedPackages, providerEntries);
|
|
1383
1478
|
for (const provider of providerDoctorRules) {
|
|
1384
1479
|
if (!installedPackages.has(provider.packageName))
|
|
1385
1480
|
continue;
|
|
1481
|
+
if (provider.packageName === "@beignet/provider-payments-stripe" &&
|
|
1482
|
+
stripeMemoryProviderMismatch) {
|
|
1483
|
+
continue;
|
|
1484
|
+
}
|
|
1386
1485
|
if (provider.variants !== undefined) {
|
|
1387
1486
|
if (detectedProviderVariants(provider.variants, providerEntries).length > 0) {
|
|
1388
1487
|
continue;
|
|
@@ -1671,6 +1770,81 @@ function hasBetterAuthRoute(files, config) {
|
|
|
1671
1770
|
const routesPath = directoryPath(config.paths.routes);
|
|
1672
1771
|
return files.some((file) => file.startsWith(`${routesPath}/auth/`) && file.endsWith("/route.ts"));
|
|
1673
1772
|
}
|
|
1773
|
+
function hasBillingOrPaymentsFeature(files, config) {
|
|
1774
|
+
const featuresPath = directoryPath(config.paths.features);
|
|
1775
|
+
return files.some((file) => file.startsWith(`${featuresPath}/billing/`) ||
|
|
1776
|
+
file.startsWith(`${featuresPath}/payments/`));
|
|
1777
|
+
}
|
|
1778
|
+
async function hasPaymentWebhookRoute(targetDir, files, config, sourceCache) {
|
|
1779
|
+
const routesPath = directoryPath(config.paths.routes);
|
|
1780
|
+
const routeFiles = files.filter((file) => file.startsWith(`${routesPath}/`) && file.endsWith("/route.ts"));
|
|
1781
|
+
for (const file of routeFiles) {
|
|
1782
|
+
const source = await readCachedSource(targetDir, file, sourceCache);
|
|
1783
|
+
if (containsCallExpression(source, "createPaymentWebhookRoute")) {
|
|
1784
|
+
return true;
|
|
1785
|
+
}
|
|
1786
|
+
}
|
|
1787
|
+
return false;
|
|
1788
|
+
}
|
|
1789
|
+
async function appPortsIncludesIdempotency(targetDir, files, config, sourceCache) {
|
|
1790
|
+
return appPortsIncludesPort(targetDir, files, config, sourceCache, "idempotency");
|
|
1791
|
+
}
|
|
1792
|
+
async function appPortsIncludesPort(targetDir, files, config, sourceCache, portName) {
|
|
1793
|
+
if (!files.includes(config.paths.ports))
|
|
1794
|
+
return false;
|
|
1795
|
+
const source = await readCachedSource(targetDir, config.paths.ports, sourceCache);
|
|
1796
|
+
const declarationStart = source.search(/\bexport\s+type\s+AppPorts\b/);
|
|
1797
|
+
if (declarationStart < 0)
|
|
1798
|
+
return false;
|
|
1799
|
+
const bodyStart = source.indexOf("{", declarationStart);
|
|
1800
|
+
if (bodyStart < 0)
|
|
1801
|
+
return false;
|
|
1802
|
+
const body = balancedObjectSource(source, bodyStart);
|
|
1803
|
+
return (body !== undefined &&
|
|
1804
|
+
new RegExp(`\\b${escapeRegExp(portName)}\\s*:`).test(body));
|
|
1805
|
+
}
|
|
1806
|
+
async function usesEntitlementChecks(targetDir, files, sourceCache) {
|
|
1807
|
+
for (const file of files) {
|
|
1808
|
+
if (!/\.(?:ts|tsx|mts|cts)$/.test(file))
|
|
1809
|
+
continue;
|
|
1810
|
+
if (isTestSourceFile(file))
|
|
1811
|
+
continue;
|
|
1812
|
+
const source = await readCachedSource(targetDir, file, sourceCache);
|
|
1813
|
+
if (/\brequireEntitlement\s*\(/.test(source) ||
|
|
1814
|
+
/\bctx\.ports\.entitlements\b/.test(source)) {
|
|
1815
|
+
return true;
|
|
1816
|
+
}
|
|
1817
|
+
}
|
|
1818
|
+
return false;
|
|
1819
|
+
}
|
|
1820
|
+
async function hasBillingEntitlementsProviderWiring(targetDir, files, config, sourceCache) {
|
|
1821
|
+
const infraPath = path.dirname(config.paths.infrastructurePorts);
|
|
1822
|
+
const serverPath = path.dirname(config.paths.server);
|
|
1823
|
+
const candidateFiles = files.filter((file) => /\.(?:ts|tsx|mts|cts)$/.test(file) &&
|
|
1824
|
+
!isTestSourceFile(file) &&
|
|
1825
|
+
(file.startsWith(`${infraPath}/`) || file.startsWith(`${serverPath}/`)));
|
|
1826
|
+
for (const file of candidateFiles) {
|
|
1827
|
+
const source = await readCachedSource(targetDir, file, sourceCache);
|
|
1828
|
+
if (containsCallExpression(source, "createBillingEntitlements")) {
|
|
1829
|
+
return true;
|
|
1830
|
+
}
|
|
1831
|
+
}
|
|
1832
|
+
return false;
|
|
1833
|
+
}
|
|
1834
|
+
function isTestSourceFile(file) {
|
|
1835
|
+
return (/(?:^|\/)tests\//.test(file) ||
|
|
1836
|
+
/\.(?:test|spec)\.(?:ts|tsx|mts|cts)$/.test(file));
|
|
1837
|
+
}
|
|
1838
|
+
function exportedConstInitializer(source, exportName) {
|
|
1839
|
+
const declaration = new RegExp(`\\bexport\\s+const\\s+${escapeRegExp(exportName)}\\s*=`).exec(source);
|
|
1840
|
+
if (declaration?.index === undefined)
|
|
1841
|
+
return undefined;
|
|
1842
|
+
const start = declaration.index;
|
|
1843
|
+
const nextExport = /\n\s*export\s+(?:const|function|type|interface|class)\s+/g;
|
|
1844
|
+
nextExport.lastIndex = start + declaration[0].length;
|
|
1845
|
+
const next = nextExport.exec(source);
|
|
1846
|
+
return source.slice(start, next?.index ?? source.length);
|
|
1847
|
+
}
|
|
1674
1848
|
function featureNameFromContractFile(file, config) {
|
|
1675
1849
|
const featuresPath = directoryPath(config.paths.features);
|
|
1676
1850
|
const match = new RegExp(`^${escapeRegExp(featuresPath)}/([^/]+)/contracts\\.ts$`).exec(file);
|