@davidorex/pi-context 0.32.0 → 0.33.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 +15 -0
- package/README.md +4 -3
- package/dist/block-api.d.ts +20 -33
- package/dist/block-api.d.ts.map +1 -1
- package/dist/block-api.js +127 -1
- package/dist/block-api.js.map +1 -1
- package/dist/content-hash.d.ts +9 -0
- package/dist/content-hash.d.ts.map +1 -1
- package/dist/content-hash.js +11 -0
- package/dist/content-hash.js.map +1 -1
- package/dist/context-sdk.d.ts +88 -8
- package/dist/context-sdk.d.ts.map +1 -1
- package/dist/context-sdk.js +363 -116
- package/dist/context-sdk.js.map +1 -1
- package/dist/context.d.ts +5 -3
- package/dist/context.d.ts.map +1 -1
- package/dist/context.js.map +1 -1
- package/dist/index.d.ts +80 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +185 -3
- package/dist/index.js.map +1 -1
- package/dist/ops-registry.d.ts +18 -0
- package/dist/ops-registry.d.ts.map +1 -1
- package/dist/ops-registry.js +388 -17
- package/dist/ops-registry.js.map +1 -1
- package/package.json +2 -2
- package/samples/conception.json +7 -0
- package/samples/schemas/framework-gaps.schema.json +5 -0
- package/samples/schemas/research.schema.json +41 -2
- package/schemas/config.schema.json +13 -1
- package/skill-narrative.md +1 -1
- package/skills/pi-context/SKILL.md +30 -18
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,21 @@ All notable changes to this package are documented here. Format follows [Keep a
|
|
|
4
4
|
|
|
5
5
|
## [Unreleased]
|
|
6
6
|
|
|
7
|
+
## [0.33.0] - 2026-07-08
|
|
8
|
+
|
|
9
|
+
- Substrate-internal paths are never pinned or judged by the staleness machinery: the write choke skips pinning/baselining any path resolving inside the substrate dir, and the staleness evaluator never judges a hand-authored pin or baseline on one — block files are living state that changes on every substrate write, so such a pin would drift immediately and flag anchor-drift forever.
|
|
10
|
+
- Declared-baseline currency is machine-evaluable (typed staleness + content pins): research `stale_conditions` items additively admit typed variants alongside bare strings — `{kind:'item-status', item, bucket}` (fires when the watched item's status buckets there; the reference field is deliberately not named `id`, which is the Phase-H nested-id-bearing-array trigger), `{kind:'file-changed', path, baseline_hash}` and `{kind:'revision-moved', ref, baseline_sha}` — bare strings stay human-only. The identity write choke stamps declared baselines before the content hash is computed: path-bearing citation/evidence entries whose item subschema declares `content_pin` get a raw-bytes sha-256 of the referenced file (new `computeFileBytesHash`; the JSON-canonical `computeFileContentHash` parses files as JSON and is the wrong fingerprint for arbitrary cited files), a `file-changed` condition without a baseline gets the file's current hash, and a `revision-moved` condition without a baseline gets the ref's current commit — existing pins/baselines are never overwritten, unreadable files/refs are left unstamped (human-only), and stamping is schema-gated so undeclaring substrates are untouched. `context-validate` flags a complete `stale_conditions`-bearing item whose typed condition fired or whose pin drifted as a `staleness-candidate` (warning) and any other pinned-and-drifted item as `anchor-drift` (warning) — validate never mutates. `context-reconcile`'s sweep grows the transition half through the same `evaluateStalenessCandidates` verdict: `--dryRun` previews the exact `stalenessTransitions` set; a live run applies the complete-to-stale transitions through the validated write path (`stalenessApplied`); anchor-drift items never transition. Both schema changes are additive (oneOf widening + optional pin fields) — existing data validates unchanged, no migration.
|
|
11
|
+
- Birth-relations entries afford the role-typed orientation form: each `relations` entry on `append-block-item` / append-mode `upsert-block-item` now carries exactly one of `direction: as_parent|as_child` (raw — unchanged semantics) or `role: primary|counter` (the semantic role the NEW item holds; `other` holds the complement), mapped to the role-typed append input and delegated to the same porcelain, so orientAppendInput's guards apply verbatim. Previously the entry shape was direction-only, and the porcelain's rejection of a bare append for role-bearing orientation-ambiguous relation_types (14 of the registry's 17 role-bearing types — the same-kind ordering relations plus the wildcard gated-by/derived-from/includes/depends families) carried a re-issue-with-primary/counter instruction the shape could not express, making the filing atom unusable exactly where an error-severity invariant demands such a birth edge. The direction/role mutual exclusion is enforced at coercion, before any write. `upsert-block-item --dryRun` additionally runs the same role-mapping + orientation-ambiguity guard over the entries (registry-only; endpoint resolution stays out since the item is unwritten), so a preview refuses what the live run would orientation-refuse — previously a preview reported would-file for entries the live run rejects.
|
|
12
|
+
- `complete-task` is the closure transition atom: it files the `verification_verifies_item` edge itself (verification=parent, task=child; idempotent — an exact pre-existing edge is a dedup no-op, reported as `edgeAppended` on the result) and flips the task status in one op run, replacing the prior contract that required a standalone `append-relation` first and threw "does not verify task" when the edge was absent. That two-op sequence deadlocks under an error-severity closure invariant pair (a passed verification must verify a completed task / a completed task must have a verification edge): each order's intermediate resting state is itself the violation, so the write-time gate refuses both — only the joint end-state written by one op is legal. The op's error text no longer instructs a sequence the gate refuses.
|
|
13
|
+
- `append-block-item` and append-mode `upsert-block-item` accept an optional `relations` array filing the new item's BIRTH edges in the same op run, after auto-id allocation, through the same validated porcelain as `append-relation` (registered-type + endpoint-kind gate, atomic write, duplicate no-op): each entry names the `relation_type`, the endpoint the new item occupies (`direction: as_parent | as_child`), the `other` endpoint's selector, and an optional `ordinal`. A new item can thereby satisfy an error-severity birth-edge invariant (e.g. a decision must cite a forcing artifact) that would refuse the bare filing. A replace-mode upsert supplied with `relations` refuses the write (birth edges are new-item-only; the refusal is byte-restored).
|
|
14
|
+
- The write pipeline is all-or-nothing at the op level: an op that throws mid-run (a birth edge failing after its item landed, a composite ceremony failing between writes) byte-restores every top-level substrate `*.json` from the pre-write snapshot before rethrowing — previously the restore fired only on the gate's own refusal, so a mid-composite throw could persist a partial write in a state the gate never judged. Same snapshot gating as the refusal path (substrates declaring no invariants are unaffected).
|
|
15
|
+
- `upsert-block-item` joined the write-pipeline op set (converge-on-write + delta-scoped gate + throw-restore) — it mutates items exactly like `update-block-item` and was previously unwrapped.
|
|
16
|
+
- Delta-scoped write-time invariant gate: the rollup-input-mutating ops re-evaluate the config invariants after their write through the same path `context-validate` uses (identical verdicts by construction), acting ONLY on violations newly introduced by that write — error severity refuses the write with every top-level substrate `*.json` byte-restored from the pre-write snapshot and the op throwing the violation messages; warning severity is surfaced on the op result (`write-warning:` lines on string results, a `writeWarnings` array inside `{json}` object payloads). Pre-existing violations never block or warn, so legacy substrates stay fully writable; substrates declaring no invariants bypass the gate entirely; `--dryRun` previews bypass the whole write pipeline. Convergence runs before the gate evaluation, so a divergence the write's own convergence repairs is never flagged.
|
|
17
|
+
- Converge-on-write: the sanctioned mutating ops that can change a rollup input (item writes, relation writes, complete-task, rename-canonical-id, promote-item) run the derived-status convergence after their write lands, so an op-surface write leaves rollup-kind stored statuses equal to their derivation with no reconcile run needed. Convergence triggers on non-throw (these ops throw on failure and return success strings), skips --dryRun previews, is config-driven opt-in (no derived-status invariant declared → inert, byte-identical behavior), and is best-effort by design: it never establishes identity and never fails the caller's landed write — a convergence failure leaves the divergence for the invariant to detect and `context-reconcile` to repair.
|
|
18
|
+
- New `context-reconcile` op (auth-gated; CLI-reflected): converges stored substrate state with its derivation — the repair half of the `derived-status` invariant class. For every kind a `derived-status` invariant declares, it computes each item's stored-vs-derived status delta with the same completeness helper the state derivation and `context-validate` use (preview, detector, and repair cannot disagree). `--dryRun` returns the exact delta set a live run would apply, writing nothing; a live run applies exactly that set through the standard validated write path (identity-stamped, envelope-stamped, attested to the invoking writer) and reports the applied count. Scope: derived-status deltas only — the op never writes an authored-status kind and never touches prose (those classes are flagged for review, not auto-repaired); a converged substrate is a clean no-op both ways, and a live run on a pre-identity substrate establishes identity at entry.
|
|
19
|
+
- New `derived-status` invariant class (config-declared, additive `oneOf` branch — no schema version advance needed): for a block kind declared in `state_derivation.rollups`, `context-validate` compares each item's STORED status against its DERIVED membership-rollup status and reports divergence in BOTH directions (stored behind or ahead of the derivation), with `{stored}`/`{derived}` message tokens. The comparison uses the same shared completeness helper the state derivation's gate satisfaction uses, so the detector and the derivation cannot disagree. Defaults to warning severity (divergence is expected steady state until write-time convergence and the reconcile repair path exist). A declaration naming a non-rollup block is inert; old engines skip the unknown class. The packaged catalog registers `milestone-status-converges` over the milestone kind.
|
|
20
|
+
- Gate satisfaction in the state derivation consults a target kind's truth model: a kind declared in `state_derivation.rollups` (e.g. milestone) completes by its DERIVED membership rollup — recursively for nested rollup kinds, with a cycle guard deriving not-complete — instead of its stored status field, and the milestones facet reports the SAME verdict the gates consult, so a single `context-current-state` read can no longer simultaneously report a milestone reached and hold tasks blocked on it. Non-rollup kinds keep the shared status-bucket completeness unchanged, and a substrate without `state_derivation` is unaffected.
|
|
21
|
+
|
|
7
22
|
## [0.32.0] - 2026-07-05
|
|
8
23
|
|
|
9
24
|
- Ceremony-entry identity establishment: the substrate-lifecycle ceremonies that reach identity-stamping writes — `update` (live runs), `install`, and `resolve-blocked` — establish substrate identity at entry when `config.json` carries no `substrate_id`: one is minted (the same mint init uses), persisted through the sanctioned config write, and registered in the project registry before the ceremony's first stamping write, and the ceremony result reports it under `substrateIdEstablished`. A pre-identity substrate thereby heals on the sanctioned ceremony instead of refusing its populated-block version bump (the former mislabeled refusal), dry and live update runs agree on the outcome, and the two previously-skipped migrate-path tests are re-greened. An established identity is never re-minted (the on-disk id stays immutable), `--dryRun` establishes nothing (a preview performs no stamping write), and the block writer's own identity guard stays load-bearing for any write reaching it without identity.
|
package/README.md
CHANGED
|
@@ -26,7 +26,7 @@ pi install npm:@davidorex/pi-context
|
|
|
26
26
|
|
|
27
27
|
## How It Works
|
|
28
28
|
|
|
29
|
-
Project data lives under the substrate root (the dir chosen at init and recorded in `config.json`'s `root` field by accept-all; no default is shipped) as typed JSON block files. Each block has a corresponding JSON Schema that defines its shape. All writes — whether from tools, workflows, or agents — are validated against the schema before data hits disk. Invalid data is never persisted.
|
|
29
|
+
Project data lives under the substrate root (the dir chosen at init and recorded in `config.json`'s `root` field by accept-all; no default is shipped) as typed JSON block files. Each block has a corresponding JSON Schema that defines its shape. All writes — whether from tools, workflows, or agents — are validated against the schema before data hits disk. Invalid data is never persisted. Mutating ops additionally run a write pipeline: rollup-kind stored statuses converge with their derivation after the write, and the config invariants are re-evaluated delta-scoped — a violation newly introduced by the write refuses it at error severity (substrate byte-restored) or is surfaced on the result at warning severity; pre-existing violations never block. The pipeline is also all-or-nothing at the op level: an op that throws mid-run (e.g. a birth edge failing after its item landed) byte-restores the substrate before rethrowing, so a composite write never persists partially. Because an error-severity invariant can forbid every intermediate resting state of a multi-write transition, the ops that own such transitions perform them as one gate-judged atom: `complete-task` files the verification edge and flips the task status in a single run, and `append-block-item` / `upsert-block-item` accept a `relations` array that files a new item's birth edges in the same run.
|
|
30
30
|
|
|
31
31
|
After `/context init <substrate-dir>` the substrate skeleton is the dirs plus a minimal skeleton `config.json` (schema-valid, empty of vocabulary, carrying a minted/registered `substrate_id`) — no schemas, no blocks:
|
|
32
32
|
|
|
@@ -83,12 +83,12 @@ All inter-item relationships are closure-table edges in `<substrate-dir>/relatio
|
|
|
83
83
|
|
|
84
84
|
**Tools registered:** the tool surface grows with the package — read the generated `skills/pi-context/SKILL.md` for the current set, or call the `list-tools` tool at runtime (in-pi) / `grep pi.registerTool packages/pi-context/src/index.ts` (source). Families:
|
|
85
85
|
|
|
86
|
-
- **Block CRUD** — `read-block`, `write-block`, `read-block-dir`, `append-block-item`, `update-block-item`, `upsert-block-item` (validated find-or-append), `remove-block-item`, and the nested-array variants (`append/update/remove-block-nested-item`).
|
|
86
|
+
- **Block CRUD** — `read-block`, `write-block`, `read-block-dir`, `append-block-item`, `update-block-item`, `upsert-block-item` (validated find-or-append), `remove-block-item`, and the nested-array variants (`append/update/remove-block-nested-item`). `append-block-item` and append-mode `upsert-block-item` take an optional `relations` array filing the new item's birth edges in the same op run — item + edges judged as one atom by the write-time gate. Each entry names the relation_type, the other endpoint's selector, and exactly one orientation: `direction: as_parent|as_child` (raw — the endpoint the new item occupies) or `role: primary|counter` (role-typed — the semantic role the new item holds, mapped via the relation's declared `role_direction`; required for role-bearing orientation-ambiguous relation_types, where the raw form is rejected). `upsert-block-item --dryRun` runs the same orientation guard over the entries, so a preview refuses what the live run would refuse.
|
|
87
87
|
- **Item-level read/query** — `read-block-item`, `read-block-page`, `filter-block-items`, `resolve-item-by-id`, `resolve-items-by-id`, `join-blocks`, `find-references`, `walk-ancestors`, `context-walk-descendants`, `context-edges-for-lens`, `context-lens-view`, `gather-execution-context`.
|
|
88
88
|
- **Substrate writes** — `append-relation`, `append-relations` (bulk edge append), `remove-relation`, `replace-relation` (single-write atomic re-orient), `amend-config`, `write-schema`, `write-schema-migration`, `rename-canonical-id`.
|
|
89
89
|
- **Content-addressing lifecycle** — `promote-item` (cross-substrate derivation: promote an item into another registered substrate as a new content-addressed item + `item_derived_from_item` lineage edge; `dryRun` previews the destination write without persisting).
|
|
90
90
|
- **Discovery/introspection** — `read-config`, `read-schema`, `read-samples-catalog`, `read-catalog-schema`, `list-tools`, `context-current-state`, `context-bootstrap-state`.
|
|
91
|
-
- **Lifecycle/state** — `context-status`, `context-validate`, `context-validate-relations`, `complete-task` (gates on a passing `verification_verifies_item` edge — verification=parent, task=child).
|
|
91
|
+
- **Lifecycle/state** — `context-status`, `context-validate`, `context-validate-relations`, `complete-task` (the closure atom: gates on a passing verification, files the `verification_verifies_item` edge itself — verification=parent, task=child; idempotent — then flips the task to completed in the same run; no prior `append-relation` step).
|
|
92
92
|
- **Substrate management** — `context-init`, `context-accept-all`, `context-install`, `context-switch`, `context-list`, `context-archive`.
|
|
93
93
|
- **Roadmap** — `context-roadmap-load`, `context-roadmap-render`, `context-roadmap-validate`: the derived roadmap over the `milestone_precedes_milestone` DAG — milestone-block items topo-ordered by the authored precedes edges, with per-milestone phase/task rollups; adjacency comes strictly from the edges, never inferred from order.
|
|
94
94
|
|
|
@@ -110,6 +110,7 @@ The relation byRef ops (`append-relation` / `remove-relation` / `replace-relatio
|
|
|
110
110
|
- `/context update [--dryRun]` (CLI: `pi-context update [--dryRun]`) — bring the installed schema model current with the catalog, routing each schema by its drift state: `in-sync` no-op; `catalog-ahead` resync (migration-aware); `locally-modified` / `both-diverged` reconciled by a deterministic 3-way merge of base (the as-installed body in the object store, keyed by the baseline `content_hash`) × ours (installed schema) × theirs (catalog schema) — disjoint edits auto-merge (`required` / `enum` / array-`type` nodes merge as sets), and a schema with irreconcilable per-path conflicts is left unmodified — the conflict set is returned in the op output (under `conflicts`) alongside a readable report, and the calling agent reconciles it then commits via `/context resolve-conflict` (below; no subordinate resolver is spawned). Update also additively propagates catalog-new config-registry entries (`relation_types` / `invariants` / `block_kinds` / `lenses`) absent from the config, preserving user-authored entries and any locally-diverged body of an existing entry (reported under `registryAdditions`). A version-bump `catalog-ahead` resync registers the shipped catalog migration chain's declarations into `migrations.json`; these are reported under `migrationsRegistered` (each `{ schema, from, to }`). A `catalog-ahead` schema whose resync is refused (`blocked`) carries its diagnostic under `blockedDetail` (one entry per blocked schema): the refusal reason — `no-migration-chain` (no shipped chain reaches the catalog version) vs `validation-failed` (the forward-migrated items fail the catalog schema) vs `write-failed` (a non-validation throw at the write boundary, e.g. the block writer's duplicate-item-id guard; the failures entry carries the thrown message, the items were NOT flagged invalid, and no markers or pending-blocked record are produced) — the installed→catalog version pair, and for a validation failure the per-item failures naming the failing item id, field, and constraint. A live `validation-failed` block also persists a pending-blocked record (`pending-blocked.json`, pinning the target catalog schema + the chain reaching it) consumable by `/context resolve-blocked` (below): fix the named items (or widen the local schema) then run it to commit the resolution so a subsequent `update` converges instead of re-blocking. A `validation-failed` block additionally gets git-style failure markers written INTO the block file at the offending items (full-line `<<<<<<< BLOCKED …` / `>>>>>>> target: …` sentinels), pinning the pre-marker bytes; the schema and `migrations.json` stay byte-unchanged, and `/context resolve-blocked` strips the markers before re-validating. `--dryRun` predicts the precise per-schema outcome (resync / migrate / block / merge / conflict) by running the forward-migration and re-validation in memory, alongside the per-blocked-schema diagnostic detail, the config-registry entries that would be added, and the migration declarations that would be registered, and writes nothing beyond the idempotent config-migration ceremony seed (no markers). Each auto-merged / resynced schema refreshes its baseline so a follow-up `/context check-status` reports it `in-sync`; a schema left as a `conflict` is NOT brought current by update — it stays unmodified until `/context resolve-conflict` commits the reconciliation. A run that refuses any schema while applying registry additions or other-schema resyncs/migrations/merges additionally reports the partiality under `partialApplication` (`applied`/`notApplied` mirrors of the result channels + a one-line summary naming what was applied alongside what was refused and why), so a blocked run never reads as a no-op; `--dryRun` reports the predicted partiality in the same shape. On a substrate whose config carries no `substrate_id`, a LIVE update establishes the identity at entry — mints (the same `mintSubstrateId` init uses), persists it through the sanctioned config write, and registers it in the project registry — before its first identity-stamping write, so a pre-identity substrate heals on the ceremony instead of refusing; the run reports it under `substrateIdEstablished`, an established identity is never re-minted, and `--dryRun` (no stamping writes) establishes nothing
|
|
111
111
|
- `/context resolve-conflict --schemaName <name> [--schema <reconciled>]` (CLI: `pi-context resolve-conflict --schemaName <name> [--schema <reconciled>]`) — commit the reconciliation of a merge conflict `update` surfaced. Run after reconciling a `both-diverged` conflict: it writes the reconciled schema body (meta-validated, atomic) AND advances the merge base for that schema to the catalog body, so the next `update` sees the schema as `locally-modified` and its deterministic merge takes the reconciled body (base === theirs → ours) — auto-merging with zero conflicts and preserving the resolution. Without advancing the base a bare `write-schema` leaves the baseline on the original pre-conflict body and `update` re-derives the same conflict on every run. If `--schema` is omitted the current on-disk schema is treated as already reconciled and only the base is advanced
|
|
112
112
|
- `/context resolve-blocked --schemaName <name>` (CLI: `pi-context resolve-blocked --schemaName <name>`) — commit the resolution of a schema `update` blocked. Run after fixing the block's failing items (or widening the local schema): when the block file carries git-style failure markers (written by `update`), it strips the full-line marker sentinels first, then re-validates the corrected block against the pinned target schema from the pending-blocked record (forward-migrating in memory through the pinned chain when the block lags the target version); on pass it registers the chain declarations, writes the target schema, advances the block's `schema_version` envelope and the merge base to the target (so a subsequent `update` converges in-sync instead of re-blocking), and clears the pending entry; on fail it returns the remaining per-item failures and writes nothing (the pending record and the marker file stay intact for a retry). The commit itself is all-or-nothing: a throw partway through it restores every touched file byte-exact — `migrations.json`, the installed schema, the block file, `config.json`, and the pending record — and reports the failure, never a partial commit. On a substrate whose config carries no `substrate_id`, resolve-blocked establishes the identity at entry (mint + persist + register) before the commit's stamping write and reports it under `substrateIdEstablished`
|
|
113
|
+
- `/context reconcile [--dryRun]` (CLI: `pi-context context-reconcile [--dryRun]`, auth-gated) — converge stored substrate state with its derivation, the repair half of the `derived-status` invariant class. For every block kind a `derived-status` invariant declares (paired with its `state_derivation.rollups` entry), computes each item's stored-vs-derived status delta using the SAME completeness helper the state derivation's gate satisfaction and `context-validate` use — preview, detector, and repair cannot disagree. The sweep also includes declared-baseline staleness: every `stale_conditions`-bearing item whose status buckets complete and whose typed condition fired (item-status / file-changed / revision-moved) or whose citation content pin drifted transitions to `stale`, through the same `evaluateStalenessCandidates` verdict `context-validate` flags with (flag-only anchor-drift items never transition). `--dryRun` returns the exact delta + transition sets a live run would apply (deltas: id, block, from/to, declaring invariant; `stalenessTransitions`: id, block, from, to stale, firing reasons), writing nothing; a live run applies exactly those sets through the standard validated write path (identity-stamped, envelope-stamped, writer-attested) and reports the applied counts. Scope: derived-status deltas + declared-staleness transitions ONLY — never an authored-status kind (feature/gap/issue/task buckets are human judgment), never prose; those classes are flagged for review by `context-validate`, not auto-repaired. A converged substrate is a clean no-op both ways; a live run on a pre-identity substrate establishes identity at entry
|
|
113
114
|
- `/context view <lensId>` — render a configured lens (groupByLens projection) into the conversation as markdown
|
|
114
115
|
- `/context lens-curate <lensId>` — surface bin-assignment suggestions for uncategorized items as a follow-up turn; the LLM persists chosen edges via `append-block-item` against `relations.json`
|
|
115
116
|
- `/context status` — derived project state (source metrics, test counts, block summaries, git state)
|
package/dist/block-api.d.ts
CHANGED
|
@@ -1,3 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Centralized read/write API for .project/*.json project block files.
|
|
3
|
+
* Validates data against schemas before writing; uses atomic writes (tmp + rename).
|
|
4
|
+
* Read-modify-write operations (append, update) use file-level locking via proper-lockfile
|
|
5
|
+
* to prevent data loss from concurrent workflow steps targeting the same block.
|
|
6
|
+
*
|
|
7
|
+
* DispatchContext (FGAP-004): every write function accepts an optional final
|
|
8
|
+
* argument `ctx?: DispatchContext`. When provided AND the target block's
|
|
9
|
+
* schema declares any of {created_by, created_at, modified_by, modified_at},
|
|
10
|
+
* items are stamped via `stampItem` from `./dispatch-context` before AJV
|
|
11
|
+
* validation. When `ctx` is undefined, behavior is byte-identical to the
|
|
12
|
+
* pre-step-3 surface — the parameter is purely additive. The has-author-fields
|
|
13
|
+
* decision is mtime-cached per (cwd, blockName) to avoid re-reading the
|
|
14
|
+
* schema on every write; mirrors the `loadContext` cache pattern from
|
|
15
|
+
* `context.ts`.
|
|
16
|
+
*
|
|
17
|
+
* Future extraction seam for pi-project extension.
|
|
18
|
+
*/
|
|
1
19
|
import type { DispatchContext } from "./dispatch-context.js";
|
|
2
20
|
/**
|
|
3
21
|
* The MANDATORY content/metadata floor (content-addressed substrate identity,
|
|
@@ -110,39 +128,8 @@ export declare function contentProjection(schema: Record<string, unknown>, array
|
|
|
110
128
|
* edge dedup key in `endpointIdentity`, not the oid itself.)
|
|
111
129
|
*/
|
|
112
130
|
export declare function mintOid(substrateId: string, nonce?: string): string;
|
|
113
|
-
/**
|
|
114
|
-
|
|
115
|
-
* content-addressed substrate identity model (Cycle 3 / Phase C). Returns the
|
|
116
|
-
* item with `oid` / `content_hash` / `content_parent` set; the input is never
|
|
117
|
-
* mutated (a shallow copy is returned). Also persists the content projection to
|
|
118
|
-
* the object store as a side effect on every stamping write.
|
|
119
|
-
*
|
|
120
|
-
* NO-OP GATE (locked decision 1): when the item's array subschema does not
|
|
121
|
-
* declare all three identity fields, the original `item` is returned unchanged
|
|
122
|
-
* (no oid mint, no hash, no object write, no substrate_id read). This scopes
|
|
123
|
-
* the behavior change to exactly the schemas Cycle 3 edits — bespoke test
|
|
124
|
-
* schemas without the fields are untouched — mirroring `maybeStampItem`'s
|
|
125
|
-
* author-field gate. The gate is NOT ctx-gated: content hash / oid are
|
|
126
|
-
* integrity, not attestation.
|
|
127
|
-
*
|
|
128
|
-
* Ordering vs author-stamp: call AFTER `maybeStampItem`/`maybeStampTypedItem`.
|
|
129
|
-
* Author fields are in the metadata partition (excluded from the projection),
|
|
130
|
-
* so the content hash is invariant to whether author-stamping ran first — but
|
|
131
|
-
* `content_hash` itself is a metadata field, so it must be assigned AFTER the
|
|
132
|
-
* projection is computed from the (already author-stamped) item.
|
|
133
|
-
*
|
|
134
|
-
* `mode`:
|
|
135
|
-
* - `"create"`: mint a fresh `oid` (via `substrateIdForDir(substrateDir)`),
|
|
136
|
-
* compute `content_hash`, set NO `content_parent` (a v1 item has no prior).
|
|
137
|
-
* - `"update"`: preserve `prior.oid` — and THROW if the incoming item carries
|
|
138
|
-
* a different `oid` (locked decision 3: oid is immutable). Recompute
|
|
139
|
-
* `content_hash`. When the content changed (new hash !== prior.content_hash)
|
|
140
|
-
* set `content_parent = prior.content_hash`; when content is unchanged
|
|
141
|
-
* (no-op write) leave `content_parent` at the prior value (not advanced).
|
|
142
|
-
*
|
|
143
|
-
* `prior` is the on-disk item being replaced (required for `"update"`); for
|
|
144
|
-
* `"create"` it is ignored.
|
|
145
|
-
*/
|
|
131
|
+
/** Current commit of `ref` in the repo at `projectRoot`, or null (no repo / unresolvable). */
|
|
132
|
+
export declare function resolveGitRefOrNull(projectRoot: string, ref: string): string | null;
|
|
146
133
|
export declare function prepareItemIdentityForWrite(substrateDir: string, blockName: string, item: Record<string, unknown>, schemaPath: string | null, arrayKey: string, mode: "create" | "update", prior?: Record<string, unknown>): Record<string, unknown>;
|
|
147
134
|
/**
|
|
148
135
|
* Read and parse a .project/{blockName}.json file.
|
package/dist/block-api.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"block-api.d.ts","sourceRoot":"","sources":["../src/block-api.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"block-api.d.ts","sourceRoot":"","sources":["../src/block-api.ts"],"names":[],"mappings":"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"}
|
package/dist/block-api.js
CHANGED
|
@@ -16,13 +16,15 @@
|
|
|
16
16
|
*
|
|
17
17
|
* Future extraction seam for pi-project extension.
|
|
18
18
|
*/
|
|
19
|
+
import { execFileSync } from "node:child_process";
|
|
19
20
|
import { randomUUID } from "node:crypto";
|
|
20
21
|
import fs from "node:fs";
|
|
21
22
|
import path from "node:path";
|
|
22
23
|
import _lockfile from "proper-lockfile";
|
|
23
|
-
import { canonicalJson, computeContentHash, sha256Hex } from "./content-hash.js";
|
|
24
|
+
import { canonicalJson, computeContentHash, computeFileBytesHash, sha256Hex } from "./content-hash.js";
|
|
24
25
|
import { assertSubstrateName, resolveContextDir, schemaPathForDir, substrateIdForDir, tryResolveContextDir, } from "./context-dir.js";
|
|
25
26
|
import { stampItem } from "./dispatch-context.js";
|
|
27
|
+
import { cleanGitEnv } from "./git-env.js";
|
|
26
28
|
import { getProjectMigrationRegistryForDir } from "./migration-registry-loader.js";
|
|
27
29
|
import { hasObject, putObject } from "./object-store.js";
|
|
28
30
|
import { validateBlockWithMigrationForDir, validateFromFile } from "./schema-validator.js";
|
|
@@ -607,6 +609,123 @@ export function mintOid(substrateId, nonce) {
|
|
|
607
609
|
* `prior` is the on-disk item being replaced (required for `"update"`); for
|
|
608
610
|
* `"create"` it is ignored.
|
|
609
611
|
*/
|
|
612
|
+
/**
|
|
613
|
+
* Declared-baseline currency capture at the write choke (FEAT-011 criterion 6
|
|
614
|
+
* — TASK-089). Two field families, each schema-gated per nested field so a
|
|
615
|
+
* schema not declaring the shape is untouched (the identity-stamp gating
|
|
616
|
+
* pattern):
|
|
617
|
+
*
|
|
618
|
+
* (a) CONTENT PINS — an array-of-object field whose item subschema declares
|
|
619
|
+
* `content_pin` plus a path-bearing property (`path` or `file`): each
|
|
620
|
+
* element naming a readable file and carrying no pin gets
|
|
621
|
+
* `content_pin = sha256(file)`. An existing pin is never overwritten
|
|
622
|
+
* (the pin records the hash at GROUNDING time; drift is a validate flag,
|
|
623
|
+
* not a re-stamp).
|
|
624
|
+
* (b) TYPED STALE-CONDITION BASELINES — an array field whose item subschema
|
|
625
|
+
* admits kind-const object branches (oneOf): a `file-changed` element
|
|
626
|
+
* without `baseline_hash` gets the file's current hash; a
|
|
627
|
+
* `revision-moved` element without `baseline_sha` gets the ref's current
|
|
628
|
+
* commit (repo-resolved from the project root; unresolvable → left
|
|
629
|
+
* unstamped, so the condition stays human-only).
|
|
630
|
+
*
|
|
631
|
+
* Paths resolve against the project root (the substrate dir's parent).
|
|
632
|
+
* Mutated elements are copied first — the caller's nested objects are never
|
|
633
|
+
* aliased. Runs BEFORE the content projection is hashed, so `content_hash`
|
|
634
|
+
* covers the stamped values.
|
|
635
|
+
*/
|
|
636
|
+
function stampDeclaredBaselines(substrateDir, schemaPath, arrayKey, item) {
|
|
637
|
+
let itemProps;
|
|
638
|
+
try {
|
|
639
|
+
const schema = JSON.parse(fs.readFileSync(schemaPath, "utf-8"));
|
|
640
|
+
const props = schema.properties?.[arrayKey];
|
|
641
|
+
itemProps = (props?.items?.properties ?? undefined);
|
|
642
|
+
}
|
|
643
|
+
catch {
|
|
644
|
+
return;
|
|
645
|
+
}
|
|
646
|
+
if (!itemProps)
|
|
647
|
+
return;
|
|
648
|
+
const projectRoot = path.dirname(substrateDir);
|
|
649
|
+
const substrateAbs = path.resolve(substrateDir);
|
|
650
|
+
const fileHashOrNull = (rel) => {
|
|
651
|
+
const abs = path.resolve(projectRoot, rel);
|
|
652
|
+
// Substrate-internal paths are LIVING STATE, not groundable artifacts: a
|
|
653
|
+
// pin/baseline on a block file would drift on every subsequent substrate
|
|
654
|
+
// write and flag forever. Never stamped — such references stay human-only.
|
|
655
|
+
if (abs === substrateAbs || abs.startsWith(substrateAbs + path.sep))
|
|
656
|
+
return null;
|
|
657
|
+
try {
|
|
658
|
+
if (!fs.statSync(abs).isFile())
|
|
659
|
+
return null;
|
|
660
|
+
return computeFileBytesHash(abs);
|
|
661
|
+
}
|
|
662
|
+
catch {
|
|
663
|
+
return null;
|
|
664
|
+
}
|
|
665
|
+
};
|
|
666
|
+
for (const [field, decl] of Object.entries(itemProps)) {
|
|
667
|
+
const arr = item[field];
|
|
668
|
+
if (!Array.isArray(arr))
|
|
669
|
+
continue;
|
|
670
|
+
const fieldItems = decl?.items;
|
|
671
|
+
if (!fieldItems)
|
|
672
|
+
continue;
|
|
673
|
+
// (a) content pins
|
|
674
|
+
const elemProps = fieldItems.properties;
|
|
675
|
+
const pathField = elemProps?.content_pin ? (elemProps.path ? "path" : elemProps.file ? "file" : null) : null;
|
|
676
|
+
// (b) typed condition baselines
|
|
677
|
+
const branches = Array.isArray(fieldItems.oneOf) ? fieldItems.oneOf : [];
|
|
678
|
+
const branchDeclares = (kind) => branches.some((b) => {
|
|
679
|
+
const kindDecl = b.properties?.kind;
|
|
680
|
+
return kindDecl?.const === kind;
|
|
681
|
+
});
|
|
682
|
+
if (pathField === null && branches.length === 0)
|
|
683
|
+
continue;
|
|
684
|
+
item[field] = arr.map((el) => {
|
|
685
|
+
if (!el || typeof el !== "object" || Array.isArray(el))
|
|
686
|
+
return el;
|
|
687
|
+
const rec = el;
|
|
688
|
+
if (pathField !== null && typeof rec.content_pin !== "string" && typeof rec[pathField] === "string") {
|
|
689
|
+
const hash = fileHashOrNull(rec[pathField]);
|
|
690
|
+
if (hash !== null)
|
|
691
|
+
return { ...rec, content_pin: hash };
|
|
692
|
+
}
|
|
693
|
+
if (rec.kind === "file-changed" &&
|
|
694
|
+
branchDeclares("file-changed") &&
|
|
695
|
+
typeof rec.baseline_hash !== "string" &&
|
|
696
|
+
typeof rec.path === "string") {
|
|
697
|
+
const hash = fileHashOrNull(rec.path);
|
|
698
|
+
if (hash !== null)
|
|
699
|
+
return { ...rec, baseline_hash: hash };
|
|
700
|
+
}
|
|
701
|
+
if (rec.kind === "revision-moved" &&
|
|
702
|
+
branchDeclares("revision-moved") &&
|
|
703
|
+
typeof rec.baseline_sha !== "string" &&
|
|
704
|
+
typeof rec.ref === "string") {
|
|
705
|
+
const sha = resolveGitRefOrNull(projectRoot, rec.ref);
|
|
706
|
+
if (sha !== null)
|
|
707
|
+
return { ...rec, baseline_sha: sha };
|
|
708
|
+
}
|
|
709
|
+
return el;
|
|
710
|
+
});
|
|
711
|
+
}
|
|
712
|
+
}
|
|
713
|
+
/** Current commit of `ref` in the repo at `projectRoot`, or null (no repo / unresolvable). */
|
|
714
|
+
export function resolveGitRefOrNull(projectRoot, ref) {
|
|
715
|
+
try {
|
|
716
|
+
const out = execFileSync("git", ["rev-parse", "--verify", `${ref}^{commit}`], {
|
|
717
|
+
cwd: projectRoot,
|
|
718
|
+
env: cleanGitEnv(),
|
|
719
|
+
stdio: ["ignore", "pipe", "ignore"],
|
|
720
|
+
})
|
|
721
|
+
.toString()
|
|
722
|
+
.trim();
|
|
723
|
+
return out.length > 0 ? out : null;
|
|
724
|
+
}
|
|
725
|
+
catch {
|
|
726
|
+
return null;
|
|
727
|
+
}
|
|
728
|
+
}
|
|
610
729
|
export function prepareItemIdentityForWrite(substrateDir, blockName, item, schemaPath, arrayKey, mode, prior) {
|
|
611
730
|
// Schema-gate: no-op unless the array's items declare all three identity
|
|
612
731
|
// fields. Cheap cache-backed check; runs before any substrate_id read or
|
|
@@ -615,6 +734,13 @@ export function prepareItemIdentityForWrite(substrateDir, blockName, item, schem
|
|
|
615
734
|
return item;
|
|
616
735
|
}
|
|
617
736
|
const out = { ...item };
|
|
737
|
+
// Declared-baseline currency capture (FEAT-011 criterion 6) rides the
|
|
738
|
+
// identity choke: citation/evidence content pins and typed stale-condition
|
|
739
|
+
// baselines are stamped BEFORE the content projection is hashed, so
|
|
740
|
+
// content_hash covers them and a later metadata-only write never sees a
|
|
741
|
+
// phantom content change. Schema-gated per nested field (a schema not
|
|
742
|
+
// declaring content_pin / the typed condition shapes is untouched).
|
|
743
|
+
stampDeclaredBaselines(substrateDir, schemaPath, arrayKey, out);
|
|
618
744
|
// `content_hash` is itself a metadata field; project (which drops it +
|
|
619
745
|
// the rest of the floor + discretionary metadata) BEFORE assigning the
|
|
620
746
|
// fresh hash. The schema must be parseable here — the gate passed, so the
|
package/dist/block-api.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"block-api.js","sourceRoot":"","sources":["../src/block-api.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"block-api.js","sourceRoot":"","sources":["../src/block-api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,SAAS,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACvG,OAAO,EACN,mBAAmB,EACnB,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,oBAAoB,GACpB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,iCAAiC,EAAE,MAAM,gCAAgC,CAAC;AACnF,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,gCAAgC,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAE3F,wEAAwE;AACxE,MAAM,QAAQ,GAAI,SAAiB,CAAC,OAAO,IAAI,SAAS,CAAC;AAEzD;;;;GAIG;AACH,SAAS,aAAa,CAAI,QAAgB,EAAE,EAAW;IACtD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC9B,OAAO,EAAE,EAAE,CAAC;IACb,CAAC;IACD,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IAC9C,IAAI,CAAC;QACJ,OAAO,EAAE,EAAE,CAAC;IACb,CAAC;YAAS,CAAC;QACV,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;AACF,CAAC;AAED,SAAS,mBAAmB,CAAC,YAAoB,EAAE,SAAiB;IACnE,mBAAmB,CAAC,SAAS,CAAC,CAAC;IAC/B,OAAO,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,GAAG,SAAS,OAAO,CAAC,CAAC;AACrD,CAAC;AAED,SAAS,qBAAqB,CAAC,YAAoB,EAAE,SAAiB;IACrE,OAAO,gBAAgB,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;AAClD,CAAC;AAED,gFAAgF;AAEhF;;;;;;GAMG;AACH,MAAM,aAAa,GAAG,CAAC,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,aAAa,CAAU,CAAC;AAE1F;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAwB,IAAI,GAAG,CAAS;IAC7E,IAAI;IACJ,KAAK;IACL,cAAc;IACd,gBAAgB;CAChB,CAAC,CAAC;AAEH;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAwB,IAAI,GAAG,CAAS;IACjF,GAAG,aAAa;IAChB,WAAW;IACX,WAAW;CACX,CAAC,CAAC;AAEH;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAwB,IAAI,GAAG,CAAS;IAC3E,GAAG,yBAAyB;IAC5B,GAAG,6BAA6B;CAChC,CAAC,CAAC;AA8CH,MAAM,WAAW,GAAG,IAAI,GAAG,EAA4B,CAAC;AAExD,SAAS,QAAQ,CAAC,CAAS;IAC1B,IAAI,CAAC;QACJ,OAAO,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IACvB,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC;AAED;;;;;GAKG;AACH,SAAS,kCAAkC,CAAC,MAAe;IAC1D,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAC;IAC9B,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,GAAG,CAAC;IACtD,MAAM,CAAC,GAAG,MAAiC,CAAC;IAC5C,MAAM,KAAK,GAAG,CAAC,CAAC,UAAiD,CAAC;IAClE,IAAI,CAAC,KAAK;QAAE,OAAO,GAAG,CAAC;IACvB,KAAK,MAAM,CAAC,IAAI,aAAa,EAAE,CAAC;QAC/B,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;YAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,GAAG,CAAC;AACZ,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,SAAS,+BAA+B,CAAC,MAAe,EAAE,IAAsC;IAC/F,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO;IAClD,MAAM,CAAC,GAAG,MAAiC,CAAC;IAC5C,MAAM,KAAK,GAAG,CAAC,CAAC,UAAiD,CAAC;IAClE,IAAI,CAAC,KAAK;QAAE,OAAO;IACnB,KAAK,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5D,IAAI,CAAC,WAAW,IAAI,OAAO,WAAW,KAAK,QAAQ;YAAE,SAAS;QAC9D,MAAM,IAAI,GAAG,WAAsC,CAAC;QACpD,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,KAA4C,CAAC;YAChE,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBACxC,MAAM,SAAS,GAAG,KAAK,CAAC,UAAiD,CAAC;gBAC1E,IAAI,SAAS,EAAE,CAAC;oBACf,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;oBACnC,KAAK,MAAM,CAAC,IAAI,aAAa,EAAE,CAAC;wBAC/B,IAAI,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC;4BAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;oBAClD,CAAC;oBACD,sDAAsD;oBACtD,qDAAqD;oBACrD,uDAAuD;oBACvD,uDAAuD;oBACvD,qDAAqD;oBACrD,sCAAsC;oBACtC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;oBAChC,IAAI,KAAK,EAAE,CAAC;wBACX,MAAM,MAAM,GAAG,IAAI,GAAG,CAAS,KAAK,CAAC,CAAC;wBACtC,KAAK,MAAM,CAAC,IAAI,QAAQ;4BAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;wBACxC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;oBAC3B,CAAC;yBAAM,CAAC;wBACP,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;oBAC7B,CAAC;oBACD,iEAAiE;oBACjE,+BAA+B,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;gBAC9C,CAAC;YACF,CAAC;QACF,CAAC;aAAM,CAAC;YACP,iEAAiE;YACjE,gEAAgE;YAChE,8CAA8C;YAC9C,+BAA+B,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC7C,CAAC;IACF,CAAC;AACF,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,8BAA8B,CAAC,UAAmB;IAC1D,IAAI,CAAC,UAAU,IAAI,OAAO,UAAU,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC/D,MAAM,SAAS,GAAI,UAAsC,CAAC,YAAY,CAAC,CAAC;IACxE,IAAI,CAAC,SAAS,IAAI,OAAO,SAAS,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC7D,MAAM,MAAM,GAAI,SAAqC,CAAC,eAAe,CAAC;IACtE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO,IAAI,CAAC;IACxC,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAC;IAC9B,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACxB,IAAI,OAAO,CAAC,KAAK,QAAQ;YAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACvC,CAAC;IACD,OAAO,GAAG,CAAC;AACZ,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAS,iCAAiC,CAAC,MAAe,EAAE,IAAsC;IACjG,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO;IAClD,MAAM,CAAC,GAAG,MAAiC,CAAC;IAC5C,MAAM,KAAK,GAAG,CAAC,CAAC,UAAiD,CAAC;IAClE,IAAI,CAAC,KAAK;QAAE,OAAO;IACnB,KAAK,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5D,IAAI,CAAC,WAAW,IAAI,OAAO,WAAW,KAAK,QAAQ;YAAE,SAAS;QAC9D,MAAM,IAAI,GAAG,WAAsC,CAAC;QACpD,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,KAA4C,CAAC;YAChE,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBACxC,MAAM,SAAS,GAAG,KAAK,CAAC,UAAiD,CAAC;gBAC1E,IAAI,SAAS,EAAE,CAAC;oBACf,MAAM,QAAQ,GAAG,8BAA8B,CAAC,KAAK,CAAC,CAAC;oBACvD,sDAAsD;oBACtD,uDAAuD;oBACvD,4CAA4C;oBAC5C,IAAI,QAAQ,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;wBACpC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;oBAC7B,CAAC;oBACD,iCAAiC,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;gBAChD,CAAC;YACF,CAAC;QACF,CAAC;aAAM,CAAC;YACP,iCAAiC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC/C,CAAC;IACF,CAAC;AACF,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,2BAA2B,GAAG,CAAC,KAAK,EAAE,cAAc,EAAE,gBAAgB,CAAU,CAAC;AAEvF;;;;;;;;;;GAUG;AACH,SAAS,iCAAiC,CAAC,MAAe,EAAE,IAA0B;IACrF,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO;IAClD,MAAM,CAAC,GAAG,MAAiC,CAAC;IAC5C,MAAM,KAAK,GAAG,CAAC,CAAC,UAAiD,CAAC;IAClE,IAAI,CAAC,KAAK;QAAE,OAAO;IACnB,KAAK,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5D,IAAI,CAAC,WAAW,IAAI,OAAO,WAAW,KAAK,QAAQ;YAAE,SAAS;QAC9D,MAAM,IAAI,GAAG,WAAsC,CAAC;QACpD,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,KAA4C,CAAC;YAChE,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBACxC,MAAM,SAAS,GAAG,KAAK,CAAC,UAAiD,CAAC;gBAC1E,IAAI,SAAS,EAAE,CAAC;oBACf,MAAM,WAAW,GAAG,2BAA2B,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC;oBAC1F,IAAI,WAAW,EAAE,CAAC;wBACjB,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;oBACzB,CAAC;yBAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;wBAC/B,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;oBAC1B,CAAC;oBACD,iCAAiC,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;gBAChD,CAAC;YACF,CAAC;QACF,CAAC;aAAM,CAAC;YACP,iCAAiC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC/C,CAAC;IACF,CAAC;AACF,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,uBAAuB,CAAC,MAAe,EAAE,QAAgB;IACxE,MAAM,SAAS,GAAG,IAAI,GAAG,EAA+B,CAAC;IACzD,iCAAiC,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACrD,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACzC,MAAM,aAAa,GAAG,QAAQ,IAAI,6BAA6B,CAAC;IAChE,OAAO,IAAI,GAAG,CAAS,CAAC,GAAG,yBAAyB,EAAE,GAAG,aAAa,CAAC,CAAC,CAAC;AAC1E,CAAC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,wBAAwB,CAAC,MAAe;IACvD,MAAM,SAAS,GAAG,IAAI,GAAG,EAA+B,CAAC;IACzD,iCAAiC,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACrD,IAAI,SAAS,CAAC,IAAI,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACtC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,SAAS,EAAE,CAAC;QAC9C,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,KAAK,MAAM,CAAC,IAAI,6BAA6B,EAAE,CAAC;YAC/C,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;gBAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACvC,CAAC;QACD,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;YAC1B,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,6BAA6B,CAAC,GAAG,CAAC,CAAC,CAAC;gBAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC/F,CAAC;QACD,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,4CAA4C,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjG,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,oCAAoC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC7F,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,yEAAyE,CAAC,CAAC;QAC9G,KAAK,CAAC,IAAI,CAAC,UAAU,QAAQ,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACxD,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACzB,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,iBAAiB,CAChC,MAA+B,EAC/B,QAAgB,EAChB,IAA6B;IAE7B,MAAM,cAAc,GAAG,uBAAuB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACjE,MAAM,UAAU,GAA4B,EAAE,GAAG,IAAI,EAAE,CAAC;IACxD,KAAK,MAAM,CAAC,IAAI,cAAc,EAAE,CAAC;QAChC,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC;IACtB,CAAC;IACD,OAAO,UAAU,CAAC;AACnB,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAS,mBAAmB,CAAC,UAAyB;IACrD,IAAI,CAAC,UAAU;QAAE,OAAO,IAAI,CAAC;IAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IACrC,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC3B,IAAI,CAAC,IAAI,EAAE,CAAC;QACX,kEAAkE;QAClE,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACxB,OAAO,IAAI,CAAC;IACb,CAAC;IACD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;IAC7B,MAAM,GAAG,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACjC,IAAI,GAAG,IAAI,GAAG,CAAC,OAAO,KAAK,OAAO;QAAE,OAAO,GAAG,CAAC;IAE/C,IAAI,MAAe,CAAC;IACpB,IAAI,CAAC;QACJ,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC;IACpD,CAAC;IAAC,MAAM,CAAC;QACR,sEAAsE;QACtE,yEAAyE;QACzE,kCAAkC;QAClC,MAAM,KAAK,GAAqB;YAC/B,OAAO;YACP,eAAe,EAAE,KAAK;YACtB,gBAAgB,EAAE,IAAI,GAAG,EAAU;YACnC,WAAW,EAAE,IAAI,GAAG,EAAE;YACtB,wBAAwB,EAAE,IAAI,GAAG,EAAE;YACnC,wBAAwB,EAAE,IAAI,GAAG,EAAE;SACnC,CAAC;QACF,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAC5B,OAAO,KAAK,CAAC;IACd,CAAC;IACD,MAAM,WAAW,GAAG,IAAI,GAAG,EAA+B,CAAC;IAC3D,+BAA+B,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACrD,sEAAsE;IACtE,gEAAgE;IAChE,oEAAoE;IACpE,qEAAqE;IACrE,MAAM,SAAS,GAAG,IAAI,GAAG,EAA+B,CAAC;IACzD,iCAAiC,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACrD,MAAM,wBAAwB,GAAG,IAAI,GAAG,EAA+B,CAAC;IACxE,KAAK,MAAM,QAAQ,IAAI,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC;QACzC,wBAAwB,CAAC,GAAG,CAAC,QAAQ,EAAE,uBAAuB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;IACnF,CAAC;IACD,MAAM,wBAAwB,GAAG,IAAI,GAAG,EAAmB,CAAC;IAC5D,iCAAiC,CAAC,MAAM,EAAE,wBAAwB,CAAC,CAAC;IACpE,MAAM,gBAAgB,GAAG,kCAAkC,CAAC,MAAM,CAAC,CAAC;IACpE,IAAI,oBAAoB,GAAG,KAAK,CAAC;IACjC,KAAK,MAAM,CAAC,IAAI,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC;QACtC,IAAI,CAAC,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YAChB,oBAAoB,GAAG,IAAI,CAAC;YAC5B,MAAM;QACP,CAAC;IACF,CAAC;IACD,MAAM,KAAK,GAAqB;QAC/B,OAAO;QACP,eAAe,EAAE,gBAAgB,CAAC,IAAI,GAAG,CAAC,IAAI,oBAAoB;QAClE,gBAAgB;QAChB,WAAW;QACX,wBAAwB;QACxB,wBAAwB;KACxB,CAAC;IACF,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAC5B,OAAO,KAAK,CAAC;AACd,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,2BAA2B,CAAC,UAAyB,EAAE,QAAgB;IAC/E,MAAM,KAAK,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAC;IAC9C,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,CAAC;IACzB,OAAO,KAAK,CAAC,wBAAwB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC;AAC9D,CAAC;AAED;;;;;GAKG;AACH,SAAS,+BAA+B,CAAC,UAAyB;IACjE,MAAM,KAAK,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAC;IAC9C,OAAO,KAAK,EAAE,gBAAgB,IAAI,IAAI,GAAG,EAAU,CAAC;AACrD,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,4BAA4B,CAAC,UAAyB,EAAE,QAAgB;IAChF,MAAM,KAAK,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAC;IAC9C,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,GAAG,EAAU,CAAC;IACrC,OAAO,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,IAAI,GAAG,EAAU,CAAC;AAC7D,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,cAAc,CACtB,UAAyB,EACzB,QAAgB,EAChB,IAA6B,EAC7B,GAAgC,EAChC,IAAyB;IAEzB,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,MAAM,QAAQ,GAAG,4BAA4B,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IACpE,IAAI,QAAQ,CAAC,IAAI,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACrC,OAAO,SAAS,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;AAC7C,CAAC;AAED,gFAAgF;AAEhF;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,OAAO,CAAC,WAAmB,EAAE,KAAc;IAC1D,MAAM,IAAI,GAAG,KAAK,IAAI,UAAU,EAAE,CAAC;IACnC,OAAO,SAAS,CAAC,aAAa,CAAC,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AACnE,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,SAAS,sBAAsB,CAC9B,YAAoB,EACpB,UAAkB,EAClB,QAAgB,EAChB,IAA6B;IAE7B,IAAI,SAA8C,CAAC;IACnD,IAAI,CAAC;QACJ,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAA4B,CAAC;QAC3F,MAAM,KAAK,GAAI,MAAM,CAAC,UAAkD,EAAE,CAAC,QAAQ,CAEvE,CAAC;QACb,SAAS,GAAG,CAAE,KAAK,EAAE,KAA6C,EAAE,UAAU,IAAI,SAAS,CAE/E,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACR,OAAO;IACR,CAAC;IACD,IAAI,CAAC,SAAS;QAAE,OAAO;IACvB,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IAC/C,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IAChD,MAAM,cAAc,GAAG,CAAC,GAAW,EAAiB,EAAE;QACrD,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;QAC3C,yEAAyE;QACzE,yEAAyE;QACzE,2EAA2E;QAC3E,IAAI,GAAG,KAAK,YAAY,IAAI,GAAG,CAAC,UAAU,CAAC,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC;QACjF,IAAI,CAAC;YACJ,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE;gBAAE,OAAO,IAAI,CAAC;YAC5C,OAAO,oBAAoB,CAAC,GAAG,CAAC,CAAC;QAClC,CAAC;QAAC,MAAM,CAAC;YACR,OAAO,IAAI,CAAC;QACb,CAAC;IACF,CAAC,CAAC;IACF,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QACvD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;QACxB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;YAAE,SAAS;QAClC,MAAM,UAAU,GAAI,IAA4C,EAAE,KAA4C,CAAC;QAC/G,IAAI,CAAC,UAAU;YAAE,SAAS;QAE1B,mBAAmB;QACnB,MAAM,SAAS,GAAG,UAAU,CAAC,UAAiD,CAAC;QAC/E,MAAM,SAAS,GAAG,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAE7G,gCAAgC;QAChC,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAE,UAAU,CAAC,KAAwC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7G,MAAM,cAAc,GAAG,CAAC,IAAY,EAAW,EAAE,CAChD,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;YACnB,MAAM,QAAQ,GAAI,CAAC,CAAC,UAAkD,EAAE,IAE5D,CAAC;YACb,OAAO,QAAQ,EAAE,KAAK,KAAK,IAAI,CAAC;QACjC,CAAC,CAAC,CAAC;QAEJ,IAAI,SAAS,KAAK,IAAI,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QAE1D,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;YAC5B,IAAI,CAAC,EAAE,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;gBAAE,OAAO,EAAE,CAAC;YAClE,MAAM,GAAG,GAAG,EAA6B,CAAC;YAC1C,IAAI,SAAS,KAAK,IAAI,IAAI,OAAO,GAAG,CAAC,WAAW,KAAK,QAAQ,IAAI,OAAO,GAAG,CAAC,SAAS,CAAC,KAAK,QAAQ,EAAE,CAAC;gBACrG,MAAM,IAAI,GAAG,cAAc,CAAC,GAAG,CAAC,SAAS,CAAW,CAAC,CAAC;gBACtD,IAAI,IAAI,KAAK,IAAI;oBAAE,OAAO,EAAE,GAAG,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;YACzD,CAAC;YACD,IACC,GAAG,CAAC,IAAI,KAAK,cAAc;gBAC3B,cAAc,CAAC,cAAc,CAAC;gBAC9B,OAAO,GAAG,CAAC,aAAa,KAAK,QAAQ;gBACrC,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,EAC3B,CAAC;gBACF,MAAM,IAAI,GAAG,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACtC,IAAI,IAAI,KAAK,IAAI;oBAAE,OAAO,EAAE,GAAG,GAAG,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;YAC3D,CAAC;YACD,IACC,GAAG,CAAC,IAAI,KAAK,gBAAgB;gBAC7B,cAAc,CAAC,gBAAgB,CAAC;gBAChC,OAAO,GAAG,CAAC,YAAY,KAAK,QAAQ;gBACpC,OAAO,GAAG,CAAC,GAAG,KAAK,QAAQ,EAC1B,CAAC;gBACF,MAAM,GAAG,GAAG,mBAAmB,CAAC,WAAW,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;gBACtD,IAAI,GAAG,KAAK,IAAI;oBAAE,OAAO,EAAE,GAAG,GAAG,EAAE,YAAY,EAAE,GAAG,EAAE,CAAC;YACxD,CAAC;YACD,OAAO,EAAE,CAAC;QACX,CAAC,CAAC,CAAC;IACJ,CAAC;AACF,CAAC;AAED,8FAA8F;AAC9F,MAAM,UAAU,mBAAmB,CAAC,WAAmB,EAAE,GAAW;IACnE,IAAI,CAAC;QACJ,MAAM,GAAG,GAAG,YAAY,CAAC,KAAK,EAAE,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,GAAG,WAAW,CAAC,EAAE;YAC7E,GAAG,EAAE,WAAW;YAChB,GAAG,EAAE,WAAW,EAAE;YAClB,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC;SACnC,CAAC;aACA,QAAQ,EAAE;aACV,IAAI,EAAE,CAAC;QACT,OAAO,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;IACpC,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC;AAED,MAAM,UAAU,2BAA2B,CAC1C,YAAoB,EACpB,SAAiB,EACjB,IAA6B,EAC7B,UAAyB,EACzB,QAAgB,EAChB,IAAyB,EACzB,KAA+B;IAE/B,yEAAyE;IACzE,yEAAyE;IACzE,+CAA+C;IAC/C,IAAI,CAAC,2BAA2B,CAAC,UAAU,EAAE,QAAQ,CAAC,EAAE,CAAC;QACxD,OAAO,IAAI,CAAC;IACb,CAAC;IAED,MAAM,GAAG,GAA4B,EAAE,GAAG,IAAI,EAAE,CAAC;IACjD,sEAAsE;IACtE,2EAA2E;IAC3E,oEAAoE;IACpE,wEAAwE;IACxE,sEAAsE;IACtE,oEAAoE;IACpE,sBAAsB,CAAC,YAAY,EAAE,UAAoB,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;IAE1E,uEAAuE;IACvE,uEAAuE;IACvE,0EAA0E;IAC1E,yEAAyE;IACzE,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,UAAoB,EAAE,OAAO,CAAC,CAA4B,CAAC;IAErG,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACvB,MAAM,WAAW,GAAG,iBAAiB,CAAC,YAAY,CAAC,CAAC;QACpD,GAAG,CAAC,GAAG,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;QAC/B,oDAAoD;QACpD,MAAM,UAAU,GAAG,iBAAiB,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;QAC5D,MAAM,IAAI,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAC5C,GAAG,CAAC,YAAY,GAAG,IAAI,CAAC;QACxB,0EAA0E;QAC1E,uEAAuE;QACvE,sEAAsE;QACtE,OAAO,GAAG,CAAC;IACZ,CAAC;IAED,oBAAoB;IACpB,MAAM,QAAQ,GAAG,KAAK,IAAI,OAAO,KAAK,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAE,KAAK,CAAC,GAAc,CAAC,CAAC,CAAC,SAAS,CAAC;IAC5F,MAAM,WAAW,GAAG,OAAO,GAAG,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAE,GAAG,CAAC,GAAc,CAAC,CAAC,CAAC,SAAS,CAAC;IAClF,IAAI,QAAQ,KAAK,SAAS,IAAI,WAAW,KAAK,SAAS,IAAI,WAAW,KAAK,QAAQ,EAAE,CAAC;QACrF,MAAM,IAAI,KAAK,CACd,oEAAoE,SAAS,aAAa,QAAQ,wBAAwB,QAAQ,SAAS,WAAW,GAAG,CACzJ,CAAC;IACH,CAAC;IACD,wEAAwE;IACxE,2EAA2E;IAC3E,mEAAmE;IACnE,qEAAqE;IACrE,2EAA2E;IAC3E,2EAA2E;IAC3E,wCAAwC;IACxC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC5B,GAAG,CAAC,GAAG,GAAG,QAAQ,CAAC;IACpB,CAAC;SAAM,CAAC;QACP,GAAG,CAAC,GAAG,GAAG,OAAO,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC,CAAC;IACpD,CAAC;IAED,MAAM,SAAS,GAAG,KAAK,IAAI,OAAO,KAAK,CAAC,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAE,KAAK,CAAC,YAAuB,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/G,MAAM,WAAW,GAAG,KAAK,IAAI,OAAO,KAAK,CAAC,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAE,KAAK,CAAC,cAAyB,CAAC,CAAC,CAAC,SAAS,CAAC;IACrH,MAAM,UAAU,GAAG,iBAAiB,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;IAC5D,MAAM,IAAI,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;IAC5C,GAAG,CAAC,YAAY,GAAG,IAAI,CAAC;IACxB,uEAAuE;IACvE,8CAA8C;IAC9C,sEAAsE;IACtE,uEAAuE;IACvE,iEAAiE;IACjE,4EAA4E;IAC5E,yEAAyE;IACzE,0EAA0E;IAC1E,eAAe;IACf,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;QACnD,GAAG,CAAC,cAAc,GAAG,SAAS,CAAC;IAChC,CAAC;SAAM,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;QACtC,GAAG,CAAC,cAAc,GAAG,WAAW,CAAC;IAClC,CAAC;SAAM,CAAC;QACP,sEAAsE;QACtE,qEAAqE;QACrE,OAAO,GAAG,CAAC,cAAc,CAAC;IAC3B,CAAC;IACD,OAAO,GAAG,CAAC;AACZ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,eAAe,CAC9B,YAAoB,EACpB,SAAiB,EACjB,MAAoF;IAEpF,MAAM,QAAQ,GAAG,mBAAmB,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IAC9D,IAAI,OAAe,CAAC;IACpB,IAAI,CAAC;QACJ,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC9C,CAAC;IAAC,MAAM,CAAC;QACR,MAAM,IAAI,KAAK,CAAC,yBAAyB,QAAQ,EAAE,CAAC,CAAC;IACtD,CAAC;IAED,IAAI,IAAa,CAAC;IAClB,IAAI,CAAC;QACJ,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC5B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACd,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7D,MAAM,IAAI,KAAK,CAAC,+BAA+B,QAAQ,KAAK,GAAG,EAAE,CAAC,CAAC;IACpE,CAAC;IAED,2EAA2E;IAC3E,yEAAyE;IACzE,qEAAqE;IACrE,uEAAuE;IACvE,sEAAsE;IACtE,wEAAwE;IACxE,oEAAoE;IACpE,mEAAmE;IACnE,sEAAsE;IACtE,cAAc;IACd,IAAI,6BAA6B,CAAC,YAAY,EAAE,SAAS,CAAC,KAAK,IAAI,EAAE,CAAC;QACrE,MAAM,QAAQ,GAAG,IAAsC,CAAC;QACxD,IAAI,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,OAAO,QAAQ,CAAC,cAAc,KAAK,QAAQ,EAAE,CAAC;YAC7F,MAAM,QAAQ,GAAG,iCAAiC,CAAC,YAAY,CAAC,CAAC;YACjE,IAAI,GAAG,gCAAgC,CAAC,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACtF,CAAC;IACF,CAAC;IAED,IAAI,MAAM,EAAE,CAAC;QACZ,MAAM,MAAM,GAAG,IAA+B,CAAC;QAC/C,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACpC,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YACxB,OAAO,EAAE,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;QACvE,CAAC;IACF,CAAC;IAED,OAAO,IAAI,CAAC;AACb,CAAC;AAED,MAAM,UAAU,SAAS,CACxB,GAAW,EACX,SAAiB,EACjB,MAAoF;IAEpF,qEAAqE;IACrE,4EAA4E;IAC5E,iEAAiE;IACjE,mBAAmB,CAAC,SAAS,CAAC,CAAC;IAC/B,OAAO,eAAe,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;AACnE,CAAC;AAED;;;;GAIG;AACH,SAAS,6BAA6B,CAAC,YAAoB,EAAE,SAAiB;IAC7E,MAAM,UAAU,GAAG,qBAAqB,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IAClE,OAAO,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC;AACtD,CAAC;AAED;;;;;;GAMG;AACH,SAAS,aAAa,CAAC,QAAgB,EAAE,UAAkB;IAC1D,IAAI,OAAe,CAAC;IACpB,IAAI,CAAC;QACJ,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC9C,CAAC;IAAC,MAAM,CAAC;QACR,MAAM,IAAI,KAAK,CAAC,mBAAmB,UAAU,KAAK,QAAQ,GAAG,CAAC,CAAC;IAChE,CAAC;IACD,IAAI,CAAC;QACJ,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC5B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACd,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7D,MAAM,IAAI,KAAK,CAAC,mBAAmB,UAAU,KAAK,QAAQ,MAAM,GAAG,EAAE,CAAC,CAAC;IACxE,CAAC;AACF,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,UAAU,cAAc,CAC7B,QAAgB,EAChB,UAAyB,EACzB,IAAa,EACb,GAAqB,EACrB,UAAmB;IAEnB,MAAM,KAAK,GAAG,UAAU,IAAI,QAAQ,CAAC;IAErC,wEAAwE;IACxE,oEAAoE;IACpE,uEAAuE;IACvE,qEAAqE;IACrE,uDAAuD;IACvD,IAAI,OAAO,GAAG,IAAI,CAAC;IACnB,IAAI,GAAG,IAAI,UAAU,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACnF,MAAM,QAAQ,GAAG,+BAA+B,CAAC,UAAU,CAAC,CAAC;QAC7D,IAAI,QAAQ,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YACvB,OAAO,GAAG,SAAS,CAAC,IAA+B,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC/E,CAAC;IACF,CAAC;IAED,mEAAmE;IACnE,sDAAsD;IACtD,MAAM,YAAY,GAAmC,UAAU;QAC9D,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAA6B;QAC/E,CAAC,CAAC,IAAI,CAAC;IAER,yEAAyE;IACzE,uEAAuE;IACvE,2EAA2E;IAC3E,yEAAyE;IACzE,0EAA0E;IAC1E,uEAAuE;IACvE,2EAA2E;IAC3E,yEAAyE;IACzE,0EAA0E;IAC1E,2EAA2E;IAC3E,wEAAwE;IACxE,IAAI,YAAY,IAAI,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACvF,MAAM,KAAK,GAAG,YAAY,CAAC,UAAU,CAAC;QACtC,IACC,KAAK;YACL,OAAO,KAAK,KAAK,QAAQ;YACzB,gBAAgB,IAAK,KAAiC;YACtD,OAAO,YAAY,CAAC,OAAO,KAAK,QAAQ,EACvC,CAAC;YACF,OAAO,GAAG,EAAE,GAAI,OAAmC,EAAE,cAAc,EAAE,YAAY,CAAC,OAAO,EAAE,CAAC;QAC7F,CAAC;IACF,CAAC;IAED,kDAAkD;IAClD,IAAI,UAAU,EAAE,CAAC;QAChB,gBAAgB,CAAC,UAAU,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IAC9C,CAAC;IAED,yEAAyE;IACzE,2EAA2E;IAC3E,6EAA6E;IAC7E,4EAA4E;IAC5E,6EAA6E;IAC7E,0EAA0E;IAC1E,6EAA6E;IAC7E,oEAAoE;IACpE,IAAI,UAAU,IAAI,YAAY,EAAE,CAAC;QAChC,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC5C,MAAM,MAAM,GAAG,YAAY,CAAC;QAC5B,iBAAiB,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,EAAE;YAC5C,KAAK,MAAM,IAAI,IAAI,GAAG,EAAE,CAAC;gBACxB,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC9D,MAAM,GAAG,GAAG,IAA+B,CAAC;oBAC5C,IAAI,OAAO,GAAG,CAAC,YAAY,KAAK,QAAQ,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;wBACxF,SAAS,CAAC,YAAY,EAAE,GAAG,CAAC,YAAY,EAAE,iBAAiB,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC;oBACrF,CAAC;gBACF,CAAC;YACF,CAAC;QACF,CAAC,CAAC,CAAC;IACJ,CAAC;IAED,0BAA0B;IAC1B,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAE1D,0EAA0E;IAC1E,2EAA2E;IAC3E,MAAM,OAAO,GAAG,GAAG,QAAQ,cAAc,OAAO,CAAC,GAAG,MAAM,CAAC;IAC3D,IAAI,CAAC;QACJ,EAAE,CAAC,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QACrE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAClC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACd,IAAI,CAAC;YACJ,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACxB,CAAC;QAAC,MAAM,CAAC;YACR,4BAA4B;QAC7B,CAAC;QACD,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7D,MAAM,IAAI,KAAK,CAAC,mBAAmB,KAAK,KAAK,GAAG,EAAE,CAAC,CAAC;IACrD,CAAC;AACF,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH;;;;;;;;;GASG;AACH,SAAS,oBAAoB,CAAC,GAAc,EAAE,IAAa,EAAE,aAAqB;IACjF,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,OAAO;IACrE,MAAM,GAAG,GAAG,IAA+B,CAAC;IAC5C,IAAI,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC;QAAE,OAAO;IAC3B,MAAM,EAAE,GAAG,GAAG,CAAC,EAAE,CAAC;IAClB,KAAK,MAAM,QAAQ,IAAI,GAAG,EAAE,CAAC;QAC5B,IAAI,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAK,QAAoC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC;YACjG,MAAM,IAAI,KAAK,CAAC,SAAS,MAAM,CAAC,EAAE,CAAC,uBAAuB,aAAa,EAAE,CAAC,CAAC;QAC5E,CAAC;IACF,CAAC;AACF,CAAC;AAED;;;;;;GAMG;AACH,SAAS,2BAA2B,CAAC,GAAc,EAAE,aAAqB;IACzE,MAAM,IAAI,GAAG,IAAI,GAAG,EAAW,CAAC;IAChC,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;QACtB,IAAI,CAAC,EAAE,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;YAAE,SAAS;QACjE,MAAM,GAAG,GAAG,EAA6B,CAAC;QAC1C,IAAI,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC;YAAE,SAAS;QAC7B,MAAM,EAAE,GAAG,GAAG,CAAC,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,SAAS,MAAM,CAAC,EAAE,CAAC,uBAAuB,aAAa,EAAE,CAAC,CAAC;QAC5E,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACd,CAAC;AACF,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAa,EAAE,KAAmD;IACnG,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,OAAO;IACrE,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAA+B,CAAC,EAAE,CAAC;QAC5E,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,SAAS;QACpC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAClB,KAAK,MAAM,EAAE,IAAI,KAAK,EAAE,CAAC;YACxB,IAAI,EAAE,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;gBACxD,iBAAiB,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;YAC9B,CAAC;QACF,CAAC;IACF,CAAC;AACF,CAAC;AAED,MAAM,UAAU,iBAAiB,CAChC,QAAgB,EAChB,UAAyB,EACzB,SAAwB,EACxB,IAAa,EACb,GAAqB,EACrB,UAAmB;IAEnB,MAAM,KAAK,GAAG,UAAU,IAAI,QAAQ,CAAC;IACrC,aAAa,CAAC,QAAQ,EAAE,GAAG,EAAE;QAC5B,MAAM,IAAI,GAAG,aAAa,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAE5C,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;YACxB,yDAAyD;YACzD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC1B,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,mCAAmC,OAAO,IAAI,EAAE,CAAC,CAAC;YAC3E,CAAC;YACD,uEAAuE;YACvE,oBAAoB,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,KAAK,UAAU,CAAC,CAAC;YACrD,MAAM,QAAQ,GACb,GAAG,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;gBAC9D,CAAC,CAAC,cAAc,CAAC,UAAU,EAAE,SAAS,EAAE,IAA+B,EAAE,GAAG,EAAE,QAAQ,CAAC;gBACvF,CAAC,CAAC,IAAI,CAAC;YACT,mEAAmE;YACnE,wEAAwE;YACxE,MAAM,YAAY,GAAG,2BAA2B,CAAC,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;YACjG,MAAM,IAAI,GAAG,CAAC,GAAG,IAAI,EAAE,YAAY,CAAC,CAAC;YACrC,2DAA2D;YAC3D,cAAc,CAAC,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;YAC7D,OAAO;QACR,CAAC;QAED,kEAAkE;QAClE,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YAC9D,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,uCAAuC,SAAS,GAAG,CAAC,CAAC;QAC9E,CAAC;QACD,MAAM,MAAM,GAAG,IAA+B,CAAC;QAC/C,IAAI,CAAC,CAAC,SAAS,IAAI,MAAM,CAAC,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,gBAAgB,SAAS,GAAG,CAAC,CAAC;QACvD,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,SAAS,SAAS,mBAAmB,CAAC,CAAC;QAChE,CAAC;QACD,uEAAuE;QACvE,oBAAoB,CAAC,MAAM,CAAC,SAAS,CAAc,EAAE,IAAI,EAAE,GAAG,KAAK,IAAI,SAAS,EAAE,CAAC,CAAC;QACpF,MAAM,QAAQ,GACb,GAAG,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;YAC9D,CAAC,CAAC,cAAc,CAAC,UAAU,EAAE,SAAS,EAAE,IAA+B,EAAE,GAAG,EAAE,QAAQ,CAAC;YACvF,CAAC,CAAC,IAAI,CAAC;QACT,MAAM,YAAY,GAAG,2BAA2B,CAAC,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACtG,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,GAAI,MAAM,CAAC,SAAS,CAAe,EAAE,YAAY,CAAC,CAAC;QACxE,cAAc,CAAC,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IAChE,CAAC,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,UAAU,6BAA6B,CAC5C,QAAgB,EAChB,UAAyB,EACzB,SAAwB,EACxB,KAAgB,EAChB,QAAmC,EACnC,GAAqB,EACrB,UAAmB;IAEnB,MAAM,KAAK,GAAG,UAAU,IAAI,QAAQ,CAAC;IACrC,OAAO,aAAa,CAAC,QAAQ,EAAE,GAAG,EAAE;QACnC,yEAAyE;QACzE,yEAAyE;QACzE,uEAAuE;QACvE,MAAM,IAAI,GAAG,SAAS,KAAK,IAAI,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAElG,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;YACxB,yDAAyD;YACzD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC1B,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,mCAAmC,OAAO,IAAI,EAAE,CAAC,CAAC;YAC3E,CAAC;YACD,MAAM,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;YACtB,MAAM,IAAI,GAAG,IAAI,GAAG,CAAS,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YACxE,IAAI,QAAQ,GAAG,CAAC,CAAC;YACjB,IAAI,OAAO,GAAG,CAAC,CAAC;YAChB,KAAK,MAAM,SAAS,IAAI,KAAK,EAAE,CAAC;gBAC/B,MAAM,GAAG,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;gBAChC,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;oBACnB,OAAO,EAAE,CAAC;oBACV,SAAS;gBACV,CAAC;gBACD,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACd,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACpB,QAAQ,EAAE,CAAC;YACZ,CAAC;YACD,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;gBAClB,cAAc,CAAC,QAAQ,EAAE,UAAU,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;YACvD,CAAC;YACD,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;QAC9B,CAAC;QAED,kEAAkE;QAClE,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YAC9D,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,uCAAuC,SAAS,GAAG,CAAC,CAAC;QAC9E,CAAC;QACD,MAAM,MAAM,GAAG,IAA+B,CAAC;QAC/C,IAAI,CAAC,CAAC,SAAS,IAAI,MAAM,CAAC,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,gBAAgB,SAAS,GAAG,CAAC,CAAC;QACvD,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,SAAS,SAAS,mBAAmB,CAAC,CAAC;QAChE,CAAC;QACD,MAAM,GAAG,GAAG,CAAC,GAAI,MAAM,CAAC,SAAS,CAAe,CAAC,CAAC;QAClD,MAAM,IAAI,GAAG,IAAI,GAAG,CAAS,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QACxE,IAAI,QAAQ,GAAG,CAAC,CAAC;QACjB,IAAI,OAAO,GAAG,CAAC,CAAC;QAChB,KAAK,MAAM,SAAS,IAAI,KAAK,EAAE,CAAC;YAC/B,MAAM,GAAG,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;YAChC,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBACnB,OAAO,EAAE,CAAC;gBACV,SAAS;YACV,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACd,gEAAgE;YAChE,mEAAmE;YACnE,uCAAuC;YACvC,GAAG,CAAC,IAAI,CAAC,2BAA2B,CAAC,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC;YAC5F,QAAQ,EAAE,CAAC;QACZ,CAAC;QACD,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;YAClB,MAAM,CAAC,SAAS,CAAC,GAAG,GAAG,CAAC;YACxB,cAAc,CAAC,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;QAC1D,CAAC;QACD,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;IAC9B,CAAC,CAAC,CAAC;AACJ,CAAC;AAED,8EAA8E;AAE9E;;;;;;;;;;;;;;;;;;;GAmBG;AACH,SAAS,sBAAsB,CAC9B,IAAa,EACb,SAAwB,EACxB,KAAa;IAKb,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;QACxB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,mCAAmC,OAAO,IAAI,EAAE,CAAC,CAAC;QAC3E,CAAC;QACD,OAAO;YACN,GAAG,EAAE,IAAI;YACT,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI;SAC7B,CAAC;IACH,CAAC;IACD,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9D,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,uCAAuC,SAAS,GAAG,CAAC,CAAC;IAC9E,CAAC;IACD,MAAM,MAAM,GAAG,IAA+B,CAAC;IAC/C,IAAI,CAAC,CAAC,SAAS,IAAI,MAAM,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,gBAAgB,SAAS,GAAG,CAAC,CAAC;IACvD,CAAC;IACD,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;IACpC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,SAAS,SAAS,mBAAmB,CAAC,CAAC;IAChE,CAAC;IACD,OAAO;QACN,GAAG,EAAE,SAAS;QACd,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,CAAC;KAC3D,CAAC;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,mBAAmB,CAC3B,UAAyB,EACzB,SAAwB,EACxB,IAA6B,EAC7B,GAAgC,EAChC,IAAyB;IAEzB,MAAM,GAAG,GAAG,SAAS,IAAI,SAAS,CAAC;IACnC,OAAO,cAAc,CAAC,UAAU,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;AACzD,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,SAAS,2BAA2B,CACnC,QAAgB,EAChB,UAAyB,EACzB,SAAwB,EACxB,IAAa,EACb,IAAyB,EACzB,KAA+B;IAE/B,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAC1E,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC5C,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACnD,MAAM,GAAG,GAAG,SAAS,IAAI,SAAS,CAAC;IACnC,OAAO,2BAA2B,CACjC,YAAY,EACZ,SAAS,EACT,IAA+B,EAC/B,UAAU,EACV,GAAG,EACH,IAAI,EACJ,KAAK,CACL,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,qBAAqB,CACpC,QAAgB,EAChB,UAAyB,EACzB,SAAwB,EACxB,SAAqD,EACrD,OAAgC,EAChC,GAAqB,EACrB,UAAmB;IAEnB,MAAM,KAAK,GAAG,UAAU,IAAI,QAAQ,CAAC;IACrC,aAAa,CAAC,QAAQ,EAAE,GAAG,EAAE;QAC5B,MAAM,IAAI,GAAG,aAAa,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC5C,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,sBAAsB,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QACtF,MAAM,GAAG,GAAG,MAAmC,CAAC;QAChD,MAAM,GAAG,GAAG,GAAG,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QACrC,IAAI,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,uBAAuB,KAAK,GAAG,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,SAAS,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACnG,CAAC;QACD,IAAI,UAAU,GAAG,CAAC,CAAC;QACnB,KAAK,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC3C,IAAI,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBAAE,UAAU,EAAE,CAAC;QACrC,CAAC;QACD,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;YACpB,OAAO,CAAC,KAAK,CAAC,kCAAkC,UAAU,8CAA8C,CAAC,CAAC;QAC3G,CAAC;QACD,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;QACvB,MAAM,MAAM,GAA4B,EAAE,GAAG,KAAK,EAAE,GAAG,OAAO,EAAE,CAAC;QACjE,MAAM,QAAQ,GAAG,GAAG,CAAC,CAAC,CAAC,mBAAmB,CAAC,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QAClG,uEAAuE;QACvE,4DAA4D;QAC5D,MAAM,OAAO,GAAG,2BAA2B,CAAC,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAGrG,CAAC;QACF,MAAM,OAAO,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC;QACzB,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC;QACvB,cAAc,CAAC,QAAQ,EAAE,UAAU,EAAE,aAAa,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IAChF,CAAC,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,UAAU,qBAAqB,CACpC,QAAgB,EAChB,UAAyB,EACzB,SAAwB,EACxB,IAA6B,EAC7B,OAAe,EACf,GAAqB,EACrB,UAAmB,EACnB,IAA2B;IAE3B,MAAM,KAAK,GAAG,UAAU,IAAI,QAAQ,CAAC;IACrC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9B,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC;QACjE,MAAM,IAAI,KAAK,CACd,4DAA4D,OAAO,WAAW,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,KAAK,EAAE,CACrH,CAAC;IACH,CAAC;IACD,OAAO,aAAa,CAAC,QAAQ,EAAE,GAAG,EAAE;QACnC,MAAM,IAAI,GAAG,aAAa,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC5C,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,sBAAsB,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QACtF,MAAM,GAAG,GAAG,MAAmC,CAAC;QAChD,MAAM,GAAG,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,IAAI,QAAQ,CAAC,OAAO,CAAC,KAAK,OAAO,CAAC,CAAC;QACnF,MAAM,IAAI,GAA2B,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;QACzE,MAAM,SAAS,GAAwB,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC;QAEjF,2EAA2E;QAC3E,6EAA6E;QAC7E,4EAA4E;QAC5E,4EAA4E;QAC5E,4EAA4E;QAC5E,oDAAoD;QACpD,IAAI,YAAY,GAAG,IAAI,CAAC;QACxB,IAAI,GAAG,KAAK,CAAC,CAAC,IAAI,UAAU,EAAE,CAAC;YAC9B,MAAM,QAAQ,GAAG,4BAA4B,CAAC,UAAU,EAAE,SAAS,IAAI,SAAS,CAAC,CAAC;YAClF,MAAM,QAAQ,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;YAC1B,MAAM,aAAa,GAA4B,EAAE,CAAC;YAClD,KAAK,MAAM,KAAK,IAAI,CAAC,YAAY,EAAE,YAAY,CAAC,EAAE,CAAC;gBAClD,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,QAAQ,IAAI,KAAK,IAAI,QAAQ,EAAE,CAAC;oBAC9E,aAAa,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;gBACxC,CAAC;YACF,CAAC;YACD,IAAI,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC3C,YAAY,GAAG,EAAE,GAAG,aAAa,EAAE,GAAG,IAAI,EAAE,CAAC;YAC9C,CAAC;QACF,CAAC;QAED,MAAM,QAAQ,GAAG,GAAG,CAAC,CAAC,CAAC,mBAAmB,CAAC,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;QAC/G,wEAAwE;QACxE,wEAAwE;QACxE,yEAAyE;QACzE,yEAAyE;QACzE,uEAAuE;QACvE,MAAM,gBAAgB,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC3D,MAAM,OAAO,GAAG,2BAA2B,CAC1C,QAAQ,EACR,UAAU,EACV,SAAS,EACT,QAAQ,EACR,SAAS,EACT,gBAAgB,CACW,CAAC;QAC7B,MAAM,OAAO,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC;QACzB,IAAI,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC;YAChB,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACvB,CAAC;aAAM,CAAC;YACP,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC;QACxB,CAAC;QACD,IAAI,IAAI,EAAE,MAAM,EAAE,CAAC;YAClB,0EAA0E;YAC1E,yEAAyE;YACzE,uEAAuE;YACvE,uEAAuE;YACvE,yCAAyC;YACzC,IAAI,UAAU,EAAE,CAAC;gBAChB,gBAAgB,CAAC,UAAU,EAAE,aAAa,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,CAAC;YAC7D,CAAC;YACD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;QAC/B,CAAC;QACD,cAAc,CAAC,QAAQ,EAAE,UAAU,EAAE,aAAa,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QAC/E,OAAO,EAAE,IAAI,EAAE,CAAC;IACjB,CAAC,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CAClC,QAAgB,EAChB,UAAyB,EACzB,SAAwB,EACxB,SAAqD,EACrD,GAAqB,EACrB,UAAmB;IAEnB,4EAA4E;IAC5E,8BAA8B;IAC9B,KAAK,GAAG,CAAC;IACT,MAAM,KAAK,GAAG,UAAU,IAAI,QAAQ,CAAC;IACrC,OAAO,aAAa,CAAC,QAAQ,EAAE,GAAG,EAAE;QACnC,MAAM,IAAI,GAAG,aAAa,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC5C,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,sBAAsB,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QACtF,MAAM,GAAG,GAAG,MAAmC,CAAC;QAChD,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;QACrD,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;QAC9C,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC;YACnB,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;QACvB,CAAC;QACD,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;YACjB,OAAO,CAAC,KAAK,CAAC,gCAAgC,OAAO,uCAAuC,CAAC,CAAC;QAC/F,CAAC;QACD,cAAc,CAAC,QAAQ,EAAE,UAAU,EAAE,aAAa,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QACjF,OAAO,EAAE,OAAO,EAAE,CAAC;IACpB,CAAC,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,uBAAuB,CACtC,QAAgB,EAChB,UAAyB,EACzB,cAAsB,EACtB,SAAqD,EACrD,cAAsB,EACtB,IAAa,EACb,GAAqB,EACrB,UAAmB;IAEnB,MAAM,KAAK,GAAG,UAAU,IAAI,QAAQ,CAAC;IACrC,aAAa,CAAC,QAAQ,EAAE,GAAG,EAAE;QAC5B,MAAM,IAAI,GAAG,aAAa,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC5C,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,sBAAsB,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC;QAC3F,MAAM,GAAG,GAAG,MAAmC,CAAC;QAChD,MAAM,GAAG,GAAG,GAAG,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QACrC,IAAI,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,uBAAuB,KAAK,SAAS,cAAc,GAAG,CAAC,CAAC;QACzE,CAAC;QACD,IAAI,UAAU,GAAG,CAAC,CAAC;QACnB,KAAK,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC3C,IAAI,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBAAE,UAAU,EAAE,CAAC;QACrC,CAAC;QACD,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;YACpB,OAAO,CAAC,KAAK,CAAC,oCAAoC,UAAU,8CAA8C,CAAC,CAAC;QAC7G,CAAC;QACD,MAAM,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;QACxB,IAAI,CAAC,CAAC,cAAc,IAAI,MAAM,CAAC,EAAE,CAAC;YACjC,MAAM,IAAI,KAAK,CAAC,mBAAmB,KAAK,SAAS,cAAc,wBAAwB,cAAc,GAAG,CAAC,CAAC;QAC3G,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC;YAC5C,MAAM,IAAI,KAAK,CACd,mBAAmB,KAAK,SAAS,cAAc,iBAAiB,cAAc,mBAAmB,CACjG,CAAC;QACH,CAAC;QACD,2EAA2E;QAC3E,gFAAgF;QAChF,oBAAoB,CAAC,MAAM,CAAC,cAAc,CAAc,EAAE,IAAI,EAAE,GAAG,KAAK,IAAI,cAAc,IAAI,cAAc,EAAE,CAAC,CAAC;QAChH,MAAM,QAAQ,GACb,GAAG,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;YAC9D,CAAC,CAAC,cAAc,CAAC,UAAU,EAAE,cAAc,EAAE,IAA+B,EAAE,GAAG,EAAE,QAAQ,CAAC;YAC5F,CAAC,CAAC,IAAI,CAAC;QACT,sEAAsE;QACtE,mEAAmE;QACnE,MAAM,YAAY,GAAG,2BAA2B,CAAC,QAAQ,EAAE,UAAU,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC3G,MAAM,aAAa,GAAG;YACrB,GAAG,MAAM;YACT,CAAC,cAAc,CAAC,EAAE,CAAC,GAAI,MAAM,CAAC,cAAc,CAAe,EAAE,YAAY,CAAC;SAC1E,CAAC;QACF,MAAM,OAAO,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC;QACzB,OAAO,CAAC,GAAG,CAAC,GAAG,aAAa,CAAC;QAC7B,cAAc,CAAC,QAAQ,EAAE,UAAU,EAAE,aAAa,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IAChF,CAAC,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,2BAA2B,CAC1C,QAAgB,EAChB,UAAyB,EACzB,cAAsB,EACtB,eAA2D,EAC3D,cAAsB,EACtB,eAA2D,EAC3D,OAAgC,EAChC,GAAqB,EACrB,UAAmB;IAEnB,MAAM,KAAK,GAAG,UAAU,IAAI,QAAQ,CAAC;IACrC,aAAa,CAAC,QAAQ,EAAE,GAAG,EAAE;QAC5B,MAAM,IAAI,GAAG,aAAa,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC5C,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,sBAAsB,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC;QAC3F,MAAM,GAAG,GAAG,MAAmC,CAAC;QAChD,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;QACjD,IAAI,SAAS,KAAK,CAAC,CAAC,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,uBAAuB,KAAK,SAAS,cAAc,GAAG,CAAC,CAAC;QACzE,CAAC;QACD,IAAI,gBAAgB,GAAG,CAAC,CAAC;QACzB,KAAK,IAAI,CAAC,GAAG,SAAS,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACjD,IAAI,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBAAE,gBAAgB,EAAE,CAAC;QACjD,CAAC;QACD,IAAI,gBAAgB,GAAG,CAAC,EAAE,CAAC;YAC1B,OAAO,CAAC,KAAK,CACZ,sCAAsC,gBAAgB,qDAAqD,CAC3G,CAAC;QACH,CAAC;QACD,MAAM,MAAM,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC;QAC9B,IAAI,CAAC,CAAC,cAAc,IAAI,MAAM,CAAC,EAAE,CAAC;YACjC,MAAM,IAAI,KAAK,CAAC,mBAAmB,KAAK,SAAS,cAAc,wBAAwB,cAAc,GAAG,CAAC,CAAC;QAC3G,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC;YAC5C,MAAM,IAAI,KAAK,CACd,mBAAmB,KAAK,SAAS,cAAc,iBAAiB,cAAc,mBAAmB,CACjG,CAAC;QACH,CAAC;QACD,MAAM,SAAS,GAAG,MAAM,CAAC,cAAc,CAA8B,CAAC;QACtE,MAAM,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;QACvD,IAAI,SAAS,KAAK,CAAC,CAAC,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,8BAA8B,KAAK,SAAS,cAAc,IAAI,SAAS,KAAK,cAAc,GAAG,CAAC,CAAC;QAChH,CAAC;QACD,IAAI,gBAAgB,GAAG,CAAC,CAAC;QACzB,KAAK,IAAI,CAAC,GAAG,SAAS,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACvD,IAAI,eAAe,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gBAAE,gBAAgB,EAAE,CAAC;QACvD,CAAC;QACD,IAAI,gBAAgB,GAAG,CAAC,EAAE,CAAC;YAC1B,OAAO,CAAC,KAAK,CACZ,sCAAsC,gBAAgB,qDAAqD,CAC3G,CAAC;QACH,CAAC;QACD,MAAM,WAAW,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;QACzC,MAAM,YAAY,GAA4B,EAAE,GAAG,WAAW,EAAE,GAAG,OAAO,EAAE,CAAC;QAC7E,MAAM,cAAc,GAAG,GAAG,CAAC,CAAC,CAAC,cAAc,CAAC,UAAU,EAAE,cAAc,EAAE,YAAY,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;QACpH,uEAAuE;QACvE,0EAA0E;QAC1E,MAAM,aAAa,GAAG,2BAA2B,CAChD,QAAQ,EACR,UAAU,EACV,cAAc,EACd,cAAc,EACd,QAAQ,EACR,WAAW,CACgB,CAAC;QAC7B,MAAM,aAAa,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC;QACrC,aAAa,CAAC,SAAS,CAAC,GAAG,aAAa,CAAC;QACzC,MAAM,aAAa,GAAG,EAAE,GAAG,MAAM,EAAE,CAAC,cAAc,CAAC,EAAE,aAAa,EAAE,CAAC;QACrE,MAAM,cAAc,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC;QAChC,cAAc,CAAC,SAAS,CAAC,GAAG,aAAa,CAAC;QAC1C,cAAc,CAAC,QAAQ,EAAE,UAAU,EAAE,aAAa,CAAC,cAAc,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IACvF,CAAC,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,yBAAyB,CACxC,QAAgB,EAChB,UAAyB,EACzB,cAAsB,EACtB,eAA2D,EAC3D,cAAsB,EACtB,eAA2D,EAC3D,GAAqB,EACrB,UAAmB;IAEnB,KAAK,GAAG,CAAC;IACT,MAAM,KAAK,GAAG,UAAU,IAAI,QAAQ,CAAC;IACrC,OAAO,aAAa,CAAC,QAAQ,EAAE,GAAG,EAAE;QACnC,MAAM,IAAI,GAAG,aAAa,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC5C,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,sBAAsB,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC;QAC3F,MAAM,GAAG,GAAG,MAAmC,CAAC;QAChD,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;QACjD,IAAI,SAAS,KAAK,CAAC,CAAC,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,uBAAuB,KAAK,SAAS,cAAc,GAAG,CAAC,CAAC;QACzE,CAAC;QACD,IAAI,gBAAgB,GAAG,CAAC,CAAC;QACzB,KAAK,IAAI,CAAC,GAAG,SAAS,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACjD,IAAI,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBAAE,gBAAgB,EAAE,CAAC;QACjD,CAAC;QACD,IAAI,gBAAgB,GAAG,CAAC,EAAE,CAAC;YAC1B,OAAO,CAAC,KAAK,CACZ,sCAAsC,gBAAgB,sDAAsD,CAC5G,CAAC;QACH,CAAC;QACD,MAAM,MAAM,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC;QAC9B,IAAI,CAAC,CAAC,cAAc,IAAI,MAAM,CAAC,EAAE,CAAC;YACjC,MAAM,IAAI,KAAK,CAAC,mBAAmB,KAAK,SAAS,cAAc,wBAAwB,cAAc,GAAG,CAAC,CAAC;QAC3G,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC;YAC5C,MAAM,IAAI,KAAK,CACd,mBAAmB,KAAK,SAAS,cAAc,iBAAiB,cAAc,mBAAmB,CACjG,CAAC;QACH,CAAC;QACD,MAAM,SAAS,GAAG,MAAM,CAAC,cAAc,CAA8B,CAAC;QACtE,MAAM,eAAe,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,CAAC;QACvE,MAAM,OAAO,GAAG,SAAS,CAAC,MAAM,GAAG,eAAe,CAAC,MAAM,CAAC;QAC1D,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC;YACnB,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;QACvB,CAAC;QACD,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;YACjB,OAAO,CAAC,KAAK,CAAC,sCAAsC,OAAO,8CAA8C,CAAC,CAAC;QAC5G,CAAC;QACD,MAAM,aAAa,GAAG,EAAE,GAAG,MAAM,EAAE,CAAC,cAAc,CAAC,EAAE,eAAe,EAAE,CAAC;QACvE,MAAM,OAAO,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC;QACzB,OAAO,CAAC,SAAS,CAAC,GAAG,aAAa,CAAC;QACnC,cAAc,CAAC,QAAQ,EAAE,UAAU,EAAE,aAAa,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QAC/E,OAAO,EAAE,OAAO,EAAE,CAAC;IACpB,CAAC,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,gBAAgB,CAAC,YAAoB,EAAE,SAAiB,EAAE,IAAa,EAAE,GAAqB;IAC7G,MAAM,QAAQ,GAAG,mBAAmB,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IAC9D,MAAM,UAAU,GAAG,6BAA6B,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IAE1E,2EAA2E;IAC3E,0EAA0E;IAC1E,0EAA0E;IAC1E,2EAA2E;IAC3E,0EAA0E;IAC1E,wEAAwE;IACxE,sEAAsE;IACtE,uEAAuE;IACvE,2EAA2E;IAC3E,yEAAyE;IACzE,2EAA2E;IAC3E,6EAA6E;IAC7E,+DAA+D;IAC/D,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9D,iBAAiB,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,EAAE,CAAC,2BAA2B,CAAC,GAAG,EAAE,GAAG,SAAS,IAAI,QAAQ,EAAE,CAAC,CAAC,CAAC;IAC1G,CAAC;IAED,IAAI,eAAe,GAAY,IAAI,CAAC;IACpC,IAAI,UAAU,KAAK,IAAI,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACrF,eAAe,GAAG,uBAAuB,CACxC,YAAY,EACZ,SAAS,EACT,QAAQ,EACR,UAAU,EACV,IAA+B,CAC/B,CAAC;IACH,CAAC;IAED,oEAAoE;IACpE,oEAAoE;IACpE,2DAA2D;IAC3D,mEAAmE;IACnE,+DAA+D;IAC/D,iEAAiE;IACjE,uEAAuE;IACvE,yEAAyE;IACzE,oBAAoB;IACpB,IAAI,OAAO,GAAY,eAAe,CAAC;IACvC,IACC,UAAU,KAAK,IAAI;QACnB,eAAe;QACf,OAAO,eAAe,KAAK,QAAQ;QACnC,OAAQ,eAA2C,CAAC,cAAc,KAAK,QAAQ,EAC9E,CAAC;QACF,MAAM,QAAQ,GAAG,iCAAiC,CAAC,YAAY,CAAC,CAAC;QACjE,OAAO,GAAG,gCAAgC,CAAC,YAAY,EAAE,SAAS,EAAE,eAAe,EAAE,QAAQ,CAAC,CAAC;IAChG,CAAC;IAED,cAAc,CAAC,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,EAAE,eAAe,SAAS,QAAQ,CAAC,CAAC;AACtF,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,SAAS,uBAAuB,CAC/B,YAAoB,EACpB,SAAiB,EACjB,QAAgB,EAChB,UAAkB,EAClB,IAA6B;IAE7B,yEAAyE;IACzE,yEAAyE;IACzE,uEAAuE;IACvE,IAAI,SAAS,GAAmC,IAAI,CAAC;IACrD,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,IAAI,CAAC;YACJ,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAA4B,CAAC;QACvF,CAAC;QAAC,MAAM,CAAC;YACR,SAAS,GAAG,IAAI,CAAC;QAClB,CAAC;IACF,CAAC;IAED,MAAM,GAAG,GAA4B,EAAE,GAAG,IAAI,EAAE,CAAC;IACjD,KAAK,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACtD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,SAAS;QACpC,IAAI,CAAC,2BAA2B,CAAC,UAAU,EAAE,QAAQ,CAAC;YAAE,SAAS;QAEjE,0DAA0D;QAC1D,MAAM,UAAU,GAAG,IAAI,GAAG,EAAmC,CAAC;QAC9D,MAAM,SAAS,GAAG,IAAI,GAAG,EAAmC,CAAC;QAC7D,MAAM,QAAQ,GAAG,SAAS,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAE,SAAS,CAAC,QAAQ,CAAe,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3G,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;YAC1B,IAAI,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ;gBAAE,SAAS;YAC1C,MAAM,GAAG,GAAG,CAA4B,CAAC;YACzC,IAAI,OAAO,GAAG,CAAC,GAAG,KAAK,QAAQ;gBAAE,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAC9D,IAAI,OAAO,GAAG,CAAC,EAAE,KAAK,QAAQ;gBAAE,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QAC5D,CAAC;QAED,GAAG,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YAClC,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;gBAAE,OAAO,IAAI,CAAC;YAC1E,MAAM,GAAG,GAAG,IAA+B,CAAC;YAC5C,MAAM,KAAK,GACV,CAAC,OAAO,GAAG,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;gBACnE,CAAC,OAAO,GAAG,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YAClE,MAAM,IAAI,GAAwB,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC;YAC9D,OAAO,2BAA2B,CAAC,YAAY,EAAE,SAAS,EAAE,GAAG,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;QACrG,CAAC,CAAC,CAAC;IACJ,CAAC;IACD,OAAO,GAAG,CAAC;AACZ,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,GAAW,EAAE,SAAiB,EAAE,IAAa,EAAE,GAAqB;IAC9F,2EAA2E;IAC3E,mBAAmB,CAAC,SAAS,CAAC,CAAC;IAC/B,gBAAgB,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;AAChE,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,mBAAmB,CAClC,YAAoB,EACpB,SAAiB,EACjB,QAAgB,EAChB,IAAa,EACb,GAAqB;IAErB,aAAa,CAAC,mBAAmB,CAAC,YAAY,EAAE,SAAS,CAAC,EAAE,GAAG,EAAE;QAChE,MAAM,IAAI,GAAG,eAAe,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;QAEtD,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,UAAU,SAAS,oBAAoB,CAAC,CAAC;QAC1D,CAAC;QAED,MAAM,MAAM,GAAG,IAA+B,CAAC;QAC/C,IAAI,CAAC,CAAC,QAAQ,IAAI,MAAM,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,UAAU,SAAS,iBAAiB,QAAQ,GAAG,CAAC,CAAC;QAClE,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;YACtC,MAAM,IAAI,KAAK,CAAC,UAAU,SAAS,UAAU,QAAQ,mBAAmB,CAAC,CAAC;QAC3E,CAAC;QAED,uEAAuE;QACvE,2EAA2E;QAC3E,2CAA2C;QAC3C,oBAAoB,CAAC,MAAM,CAAC,QAAQ,CAAc,EAAE,IAAI,EAAE,GAAG,SAAS,IAAI,QAAQ,EAAE,CAAC,CAAC;QAEtF,sEAAsE;QACtE,wEAAwE;QACxE,8CAA8C;QAC9C,MAAM,UAAU,GAAG,6BAA6B,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;QAC1E,MAAM,YAAY,GACjB,GAAG,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;YAC9D,CAAC,CAAC,cAAc,CAAC,UAAU,EAAE,QAAQ,EAAE,IAA+B,EAAE,GAAG,EAAE,QAAQ,CAAC;YACtF,CAAC,CAAC,IAAI,CAAC;QAET,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAI,MAAM,CAAC,QAAQ,CAAe,EAAE,YAAY,CAAC,CAAC;QACtE,gBAAgB,CAAC,YAAY,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,aAAa,CAC5B,GAAW,EACX,SAAiB,EACjB,QAAgB,EAChB,IAAa,EACb,GAAqB;IAErB,2EAA2E;IAC3E,mBAAmB,CAAC,SAAS,CAAC,CAAC;IAC/B,mBAAmB,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;AAC7E,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,uBAAuB,CACtC,YAAoB,EACpB,SAAiB,EACjB,QAAgB,EAChB,SAAqD,EACrD,OAAgC,EAChC,GAAqB;IAErB,MAAM,QAAQ,GAAG,mBAAmB,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IAC9D,MAAM,UAAU,GAAG,6BAA6B,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IAC1E,qBAAqB,CAAC,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,EAAE,eAAe,SAAS,QAAQ,CAAC,CAAC;AAClH,CAAC;AAED,MAAM,UAAU,iBAAiB,CAChC,GAAW,EACX,SAAiB,EACjB,QAAgB,EAChB,SAAqD,EACrD,OAAgC,EAChC,GAAqB;IAErB,2EAA2E;IAC3E,mBAAmB,CAAC,SAAS,CAAC,CAAC;IAC/B,uBAAuB,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;AAC/F,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,UAAU,uBAAuB,CACtC,YAAoB,EACpB,SAAiB,EACjB,QAAgB,EAChB,IAA6B,EAC7B,OAAe,EACf,GAAqB,EACrB,IAA2B;IAE3B,MAAM,QAAQ,GAAG,mBAAmB,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IAC9D,MAAM,UAAU,GAAG,6BAA6B,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IAC1E,OAAO,qBAAqB,CAC3B,QAAQ,EACR,UAAU,EACV,QAAQ,EACR,IAAI,EACJ,OAAO,EACP,GAAG,EACH,eAAe,SAAS,QAAQ,EAChC,IAAI,CACJ,CAAC;AACH,CAAC;AAED,MAAM,UAAU,iBAAiB,CAChC,GAAW,EACX,SAAiB,EACjB,QAAgB,EAChB,IAA6B,EAC7B,OAAe,EACf,GAAqB,EACrB,IAA2B;IAE3B,2EAA2E;IAC3E,mBAAmB,CAAC,SAAS,CAAC,CAAC;IAC/B,OAAO,uBAAuB,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;AACvG,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,yBAAyB,CACxC,YAAoB,EACpB,SAAiB,EACjB,cAAsB,EACtB,SAAqD,EACrD,cAAsB,EACtB,IAAa,EACb,GAAqB;IAErB,MAAM,QAAQ,GAAG,mBAAmB,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IAC9D,MAAM,UAAU,GAAG,6BAA6B,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IAC1E,uBAAuB,CACtB,QAAQ,EACR,UAAU,EACV,cAAc,EACd,SAAS,EACT,cAAc,EACd,IAAI,EACJ,GAAG,EACH,eAAe,SAAS,QAAQ,CAChC,CAAC;AACH,CAAC;AAED,MAAM,UAAU,mBAAmB,CAClC,GAAW,EACX,SAAiB,EACjB,cAAsB,EACtB,SAAqD,EACrD,cAAsB,EACtB,IAAa,EACb,GAAqB;IAErB,2EAA2E;IAC3E,mBAAmB,CAAC,SAAS,CAAC,CAAC;IAC/B,yBAAyB,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,SAAS,EAAE,cAAc,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;AACpH,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,2BAA2B,CAC1C,YAAoB,EACpB,SAAiB,EACjB,cAAsB,EACtB,eAA2D,EAC3D,cAAsB,EACtB,eAA2D,EAC3D,OAAgC,EAChC,GAAqB;IAErB,MAAM,QAAQ,GAAG,mBAAmB,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IAC9D,MAAM,UAAU,GAAG,6BAA6B,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IAC1E,2BAA2B,CAC1B,QAAQ,EACR,UAAU,EACV,cAAc,EACd,eAAe,EACf,cAAc,EACd,eAAe,EACf,OAAO,EACP,GAAG,EACH,eAAe,SAAS,QAAQ,CAChC,CAAC;AACH,CAAC;AAED,MAAM,UAAU,qBAAqB,CACpC,GAAW,EACX,SAAiB,EACjB,cAAsB,EACtB,eAA2D,EAC3D,cAAsB,EACtB,eAA2D,EAC3D,OAAgC,EAChC,GAAqB;IAErB,2EAA2E;IAC3E,mBAAmB,CAAC,SAAS,CAAC,CAAC;IAC/B,2BAA2B,CAC1B,iBAAiB,CAAC,GAAG,CAAC,EACtB,SAAS,EACT,cAAc,EACd,eAAe,EACf,cAAc,EACd,eAAe,EACf,OAAO,EACP,GAAG,CACH,CAAC;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,qBAAqB,CACpC,YAAoB,EACpB,SAAiB,EACjB,QAAgB,EAChB,SAAqD,EACrD,GAAqB;IAErB,MAAM,QAAQ,GAAG,mBAAmB,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IAC9D,MAAM,UAAU,GAAG,6BAA6B,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IAC1E,OAAO,mBAAmB,CAAC,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,EAAE,eAAe,SAAS,QAAQ,CAAC,CAAC;AAC9G,CAAC;AAED,MAAM,UAAU,eAAe,CAC9B,GAAW,EACX,SAAiB,EACjB,QAAgB,EAChB,SAAqD,EACrD,GAAqB;IAErB,2EAA2E;IAC3E,mBAAmB,CAAC,SAAS,CAAC,CAAC;IAC/B,OAAO,qBAAqB,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;AAC3F,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,2BAA2B,CAC1C,YAAoB,EACpB,SAAiB,EACjB,cAAsB,EACtB,eAA2D,EAC3D,cAAsB,EACtB,eAA2D,EAC3D,GAAqB;IAErB,MAAM,QAAQ,GAAG,mBAAmB,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IAC9D,MAAM,UAAU,GAAG,6BAA6B,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IAC1E,OAAO,yBAAyB,CAC/B,QAAQ,EACR,UAAU,EACV,cAAc,EACd,eAAe,EACf,cAAc,EACd,eAAe,EACf,GAAG,EACH,eAAe,SAAS,QAAQ,CAChC,CAAC;AACH,CAAC;AAED,MAAM,UAAU,qBAAqB,CACpC,GAAW,EACX,SAAiB,EACjB,cAAsB,EACtB,eAA2D,EAC3D,cAAsB,EACtB,eAA2D,EAC3D,GAAqB;IAErB,2EAA2E;IAC3E,mBAAmB,CAAC,SAAS,CAAC,CAAC;IAC/B,OAAO,2BAA2B,CACjC,iBAAiB,CAAC,GAAG,CAAC,EACtB,SAAS,EACT,cAAc,EACd,eAAe,EACf,cAAc,EACd,eAAe,EACf,GAAG,CACH,CAAC;AACH,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,kBAAkB,CAAC,YAAoB,EAAE,MAAc;IACtE,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IAEhD,IAAI,OAAiB,CAAC;IACtB,IAAI,CAAC;QACJ,OAAO,GAAG,EAAE;aACV,WAAW,CAAC,OAAO,CAAC;aACpB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;aAClC,IAAI,EAAE,CAAC;IACV,CAAC;IAAC,MAAM,CAAC;QACR,gFAAgF;QAChF,OAAO,EAAE,CAAC;IACX,CAAC;IAED,MAAM,OAAO,GAAc,EAAE,CAAC;IAC9B,KAAK,MAAM,QAAQ,IAAI,OAAO,EAAE,CAAC;QAChC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QAC9C,IAAI,OAAe,CAAC;QACpB,IAAI,CAAC;YACJ,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC9C,CAAC;QAAC,MAAM,CAAC;YACR,MAAM,IAAI,KAAK,CAAC,qBAAqB,QAAQ,EAAE,CAAC,CAAC;QAClD,CAAC;QACD,IAAI,CAAC;YACJ,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QACnC,CAAC;QAAC,MAAM,CAAC;YACR,MAAM,IAAI,KAAK,CAAC,oBAAoB,QAAQ,EAAE,CAAC,CAAC;QACjD,CAAC;IACF,CAAC;IACD,OAAO,OAAO,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,GAAW,EAAE,MAAc;IACvD,MAAM,IAAI,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAC;IACvC,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,EAAE,CAAC,CAAC,4EAA4E;IAC1G,OAAO,kBAAkB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AACzC,CAAC;AAED,iFAAiF;AAEjF;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,sBAAsB,CAAC,MAA+B;IAIrE,MAAM,KAAK,GAAG,CAAC,MAAM,CAAC,UAAU,IAAI,EAAE,CAA4C,CAAC;IACnF,IAAI,QAA4B,CAAC;IACjC,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5C,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;YACxC,QAAQ,GAAG,CAAC,CAAC;YACb,MAAM;QACP,CAAC;IACF,CAAC;IACD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,sEAAsE,CAAC,CAAC;IACzF,CAAC;IACD,IAAI,KAAK,GAAI,KAAK,CAAC,QAAQ,CAA6B,CAAC,KAAgC,CAAC;IAC1F,MAAM,GAAG,GAAG,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAE,KAAK,CAAC,IAAe,CAAC,CAAC,CAAC,SAAS,CAAC;IAChF,IAAI,GAAG,EAAE,CAAC;QACT,MAAM,CAAC,GAAG,iCAAiC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACtD,IAAI,CAAC,CAAC,EAAE,CAAC;YACR,MAAM,IAAI,KAAK,CAAC,6CAA6C,GAAG,uCAAuC,CAAC,CAAC;QAC1G,CAAC;QACD,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAA4C,CAAC;QAC5E,MAAM,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzB,IAAI,CAAC,MAAM,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,iCAAiC,GAAG,8BAA8B,CAAC,CAAC;QACrF,CAAC;QACD,KAAK,GAAG,MAAM,CAAC;IAChB,CAAC;IACD,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;AACxC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,YAAY,CAAC,YAAoB,EAAE,SAAiB;IACnE,MAAM,UAAU,GAAG,qBAAqB,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IAClE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,uCAAuC,SAAS,QAAQ,UAAU,EAAE,CAAC,CAAC;IACvF,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAA4B,CAAC;IAC3F,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,sBAAsB,CAAC,MAAM,CAAC,CAAC;IAChE,MAAM,MAAM,GAAI,CAAC,UAAU,CAAC,UAAU,IAAI,EAAE,CAA6C,CAAC,EAAE,CAAC;IAC7F,MAAM,OAAO,GAAG,MAAM,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAE,MAAM,CAAC,OAAkB,CAAC,CAAC,CAAC,SAAS,CAAC;IACtG,IAAI,CAAC,OAAO,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,kBAAkB,SAAS,iCAAiC,CAAC,CAAC;IAC/E,CAAC;IACD,MAAM,CAAC,GAAG,0CAA0C,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACnE,IAAI,CAAC,CAAC,EAAE,CAAC;QACR,MAAM,IAAI,KAAK,CAAC,uBAAuB,OAAO,gBAAgB,SAAS,iCAAiC,CAAC,CAAC;IAC3G,CAAC;IACD,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACpB,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACxC,MAAM,IAAI,GAAG,eAAe,CAAC,YAAY,EAAE,SAAS,CAA4B,CAAC;IACjF,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAmC,CAAC;IACvE,MAAM,EAAE,GAAG,IAAI,MAAM,CAAC,IAAI,MAAM,SAAS,CAAC,CAAC;IAC3C,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,KAAK,MAAM,EAAE,IAAI,KAAK,EAAE,CAAC;QACxB,MAAM,EAAE,GAAG,OAAO,EAAE,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAClD,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACvB,IAAI,EAAE,EAAE,CAAC;YACR,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACrC,IAAI,CAAC,GAAG,IAAI;gBAAE,IAAI,GAAG,CAAC,CAAC;QACxB,CAAC;IACF,CAAC;IACD,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC;AAC5D,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,GAAW,EAAE,SAAiB;IACpD,2EAA2E;IAC3E,mBAAmB,CAAC,SAAS,CAAC,CAAC;IAC/B,OAAO,YAAY,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,SAAS,CAAC,CAAC;AACxD,CAAC"}
|