@nexart/cli 0.12.2 → 0.15.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 +83 -0
- package/README.md +102 -3
- package/dist/index.d.ts +37 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +346 -17
- package/dist/index.js.map +1 -1
- package/dist/tsaVerify.d.ts +38 -0
- package/dist/tsaVerify.d.ts.map +1 -0
- package/dist/tsaVerify.js +247 -0
- package/dist/tsaVerify.js.map +1 -0
- package/package.json +4 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,88 @@
|
|
|
1
1
|
# @nexart/cli — Changelog
|
|
2
2
|
|
|
3
|
+
## v0.15.0 (2026-06-17) — `verify-record` (full CER record + timestamp verification)
|
|
4
|
+
|
|
5
|
+
Additive feature. No breaking changes. `verify-bundle` is byte-for-byte unchanged.
|
|
6
|
+
|
|
7
|
+
- **New:** `nexart verify-record <file>` verifies a **full CER record** — the
|
|
8
|
+
self-contained envelope `{ bundle, verification: { receipt, receiptSignature },
|
|
9
|
+
timestamp?: { token } }` a relying party receives — rather than a bare bundle. It
|
|
10
|
+
lifts `verification.receipt` / `verification.receiptSignature` onto the bundle and
|
|
11
|
+
runs the **same** integrity + signature checks as `verify-bundle`, reusing the
|
|
12
|
+
identical internal verifier (`standaloneVerify.ts`, `node:crypto`-only) — **no
|
|
13
|
+
duplicated cryptography**.
|
|
14
|
+
- **Timestamp precedence:** a record-level `timestamp.token` is verified in
|
|
15
|
+
preference to any token embedded in the bundle (`trustedTimestamps[]` / singular
|
|
16
|
+
`timestamp`); when the record omits it, the embedded token is used.
|
|
17
|
+
- **Strictly additive / non-negotiable invariants (identical to `verify-bundle`):**
|
|
18
|
+
the optional RFC 3161 timestamp layer never modifies `certificateHash`, is never
|
|
19
|
+
canonicalised, and **never affects the Integrity/Signature results or the process
|
|
20
|
+
exit code** — which remains `0` only when integrity passes and the signature is not
|
|
21
|
+
invalid, `1` otherwise. The ASN.1 stack (`pkijs` / `asn1js`) and the TSA module are
|
|
22
|
+
loaded **only** under `--verify-timestamp`. TSA operational errors (e.g. an
|
|
23
|
+
unreadable `--tsa-roots`) are mapped to a timestamp *status* and never crash or
|
|
24
|
+
change the exit code.
|
|
25
|
+
- **Flags & output:** `--public-key`, `--kid`, `--json`, `--verbose`,
|
|
26
|
+
`--verify-timestamp`, `--tsa-roots` — all identical to `verify-bundle`, with the
|
|
27
|
+
same human-readable and `--json` shapes (shared render path).
|
|
28
|
+
- **Tests:** added `record.test.ts` (7 cases) covering integrity pass/fail,
|
|
29
|
+
signature pass/skipped, the record-vs-bundle timestamp precedence, a verified
|
|
30
|
+
timestamp, and an operational TSA error leaving Integrity/exit-code untouched.
|
|
31
|
+
- **Docs:** new README section *"Verifying a full CER record (`nexart
|
|
32
|
+
verify-record`)"*.
|
|
33
|
+
|
|
34
|
+
## v0.14.0 (2026-06-17) — clearer `verify-bundle` timestamp output
|
|
35
|
+
|
|
36
|
+
Product polish for the optional RFC 3161 timestamp verification shipped in v0.13.0.
|
|
37
|
+
**Strictly additive and behaviour-preserving:** `certificateHash`, canonicalisation,
|
|
38
|
+
the signature check, the Integrity/Signature results, and the process exit code are
|
|
39
|
+
all byte-for-byte unchanged, and the ASN.1 stack (`pkijs`/`asn1js`) is still loaded
|
|
40
|
+
**only** when `--verify-timestamp` is used.
|
|
41
|
+
|
|
42
|
+
- **Clearer wording.** The timestamp line now reads `✔ Externally anchored
|
|
43
|
+
timestamp: valid` (and `invalid (…)` / `untrusted (unknown root)` / `present (not
|
|
44
|
+
verified)` / `not present`), making explicit that the check proves anchoring to an
|
|
45
|
+
*independent* time authority rather than an internal clock.
|
|
46
|
+
- **New Timestamp Details block.** When a token is actually verified, the
|
|
47
|
+
human-readable output now adds a `Timestamp Details:` block showing the **Provider**,
|
|
48
|
+
the token's **Time** (`genTime`, sub-second precision stripped), and whether the
|
|
49
|
+
message **Imprint** matched the bundle's `certificateHash`. The block is suppressed
|
|
50
|
+
when no verification was attempted (flag absent, no token, or an operational error
|
|
51
|
+
such as an unreadable `--tsa-roots`), so it never reports a misleading imprint state.
|
|
52
|
+
- **Tests:** added an imprint-mismatch case — a real TSA token minted over a
|
|
53
|
+
*different* digest — at both the verifier and CLI layers, asserting `invalid
|
|
54
|
+
(imprint mismatch)` while Integrity stays `PASS` and the exit code stays `0`.
|
|
55
|
+
|
|
56
|
+
## v0.13.0 (2026-06-16) — optional RFC 3161 timestamp verification for `verify-bundle`
|
|
57
|
+
|
|
58
|
+
Additive feature. No breaking changes. Existing `verify-bundle` behavior is
|
|
59
|
+
byte-for-byte unchanged unless you opt in with `--verify-timestamp`.
|
|
60
|
+
|
|
61
|
+
- **New:** `nexart verify-bundle --verify-timestamp [--tsa-roots <pem>]` performs
|
|
62
|
+
an **offline** RFC 3161 TimeStampToken verification when a bundle carries one
|
|
63
|
+
(in `trustedTimestamps[]` or a singular `timestamp`). It checks, in order: the
|
|
64
|
+
TSA's CMS signature over the embedded `TSTInfo`; that the token's message
|
|
65
|
+
imprint equals the bundle's `certificateHash` digest; that the TSA signing
|
|
66
|
+
certificate chains to a trusted root supplied via `--tsa-roots`; that the
|
|
67
|
+
certificate is valid at the timestamp; and that the timestamp is at or after
|
|
68
|
+
`createdAt`.
|
|
69
|
+
- **Strictly additive / non-negotiable invariants:** the timestamp layer never
|
|
70
|
+
modifies `certificateHash`, is never included in canonicalisation, and **never
|
|
71
|
+
affects the Integrity or Signature results or the process exit code.** The exit
|
|
72
|
+
code remains a function of integrity + signature alone.
|
|
73
|
+
- **Dependency-light by default:** the ASN.1 stack (`pkijs` / `asn1js`) is
|
|
74
|
+
dynamically imported **only** when `--verify-timestamp` is used. Ordinary
|
|
75
|
+
integrity/signature verification loads nothing new, and `standaloneVerify.ts`
|
|
76
|
+
remains `node:crypto`-only and auditable.
|
|
77
|
+
- **Output:** a new line — `✔ Timestamp (RFC3161): VALID (<tsa>)`, or `INVALID
|
|
78
|
+
(signature | imprint mismatch | expired | time | malformed token)`, `UNTRUSTED
|
|
79
|
+
(unknown root)`, `PRESENT (not verified)` (token present, flag absent), or
|
|
80
|
+
`NOT PRESENT`. `--json` gains an additive, informational `timestamp` object.
|
|
81
|
+
- **Tests:** cross-implementation interop fixtures (OpenSSL-produced token,
|
|
82
|
+
pkijs-based verifier) cover valid, tampered, wrong-imprint, missing/untrusted
|
|
83
|
+
root, expired, time-inconsistent, malformed, present-unverified, and not-present
|
|
84
|
+
cases, plus CLI integration asserting integrity/exit-code are untouched.
|
|
85
|
+
|
|
3
86
|
## v0.12.2 (2026-06-15) — bump core to `@nexart/ai-execution@^0.23.0`
|
|
4
87
|
|
|
5
88
|
Dependency alignment. No command behavior changes, no breaking changes.
|
package/README.md
CHANGED
|
@@ -660,6 +660,9 @@ nexart verify-bundle cer.json --public-key node-keys.json --json
|
|
|
660
660
|
|
|
661
661
|
# Show every intermediate step (canonical mode, byte counts, hashes)
|
|
662
662
|
nexart verify-bundle cer.json --public-key node-keys.json --verbose
|
|
663
|
+
|
|
664
|
+
# Additionally verify an embedded RFC 3161 timestamp against trusted TSA roots
|
|
665
|
+
nexart verify-bundle cer.json --verify-timestamp --tsa-roots tsa-roots.pem
|
|
663
666
|
```
|
|
664
667
|
|
|
665
668
|
### What it checks
|
|
@@ -687,6 +690,22 @@ nexart verify-bundle cer.json --public-key node-keys.json --verbose
|
|
|
687
690
|
If a signature is not present, integrity can still pass, but authenticity is
|
|
688
691
|
not established.
|
|
689
692
|
|
|
693
|
+
3. **Timestamp (RFC 3161)** *(optional, additive — `--verify-timestamp`)* — when
|
|
694
|
+
the bundle carries an RFC 3161 TimeStampToken (in `trustedTimestamps[]` or a
|
|
695
|
+
singular `timestamp`), this **offline** check confirms the token anchors the
|
|
696
|
+
bundle to a point in time. It verifies, in order: (1) the TSA's CMS signature
|
|
697
|
+
over the embedded `TSTInfo`; (2) that the token's message imprint equals the
|
|
698
|
+
bundle's `certificateHash` digest; (3) that the TSA signing certificate chains
|
|
699
|
+
to a root supplied via `--tsa-roots`; (4) that the certificate is valid at the
|
|
700
|
+
timestamp; and (5) that the timestamp is at or after the bundle's `createdAt`.
|
|
701
|
+
|
|
702
|
+
This layer is **strictly additive**: it never modifies `certificateHash`, is
|
|
703
|
+
never included in canonicalisation, and **never affects the Integrity or
|
|
704
|
+
Signature results or the exit code**. The ASN.1 stack (`pkijs`) is loaded
|
|
705
|
+
**only** when `--verify-timestamp` is passed — ordinary verification stays
|
|
706
|
+
dependency-light. Without the flag, an existing timestamp is reported as
|
|
707
|
+
`present (not verified)`; with no timestamp at all, `not present`.
|
|
708
|
+
|
|
690
709
|
### Output
|
|
691
710
|
|
|
692
711
|
Human-readable (default):
|
|
@@ -695,6 +714,32 @@ Human-readable (default):
|
|
|
695
714
|
✔ Integrity: PASS
|
|
696
715
|
✔ Signature: PASS
|
|
697
716
|
Protocol: 1.3.0
|
|
717
|
+
✔ Externally anchored timestamp: valid
|
|
718
|
+
|
|
719
|
+
Timestamp Details:
|
|
720
|
+
Provider: freeTSA
|
|
721
|
+
Time: 2026-06-17T10:52:12Z
|
|
722
|
+
Imprint: match
|
|
723
|
+
```
|
|
724
|
+
|
|
725
|
+
The phrasing — **"externally anchored timestamp"** — reflects that the check
|
|
726
|
+
proves the bundle was anchored to an *independent* time authority, not an internal
|
|
727
|
+
clock. When a token was actually verified, a **Timestamp Details** block follows
|
|
728
|
+
with the provider, the token's `genTime` (sub-second precision stripped), and
|
|
729
|
+
whether the message imprint matched the bundle's `certificateHash`.
|
|
730
|
+
|
|
731
|
+
The status line is one of:
|
|
732
|
+
|
|
733
|
+
```
|
|
734
|
+
✔ Externally anchored timestamp: valid
|
|
735
|
+
✖ Externally anchored timestamp: invalid (signature)
|
|
736
|
+
✖ Externally anchored timestamp: invalid (imprint mismatch)
|
|
737
|
+
✖ Externally anchored timestamp: untrusted (unknown root)
|
|
738
|
+
✖ Externally anchored timestamp: invalid (expired)
|
|
739
|
+
✖ Externally anchored timestamp: invalid (time)
|
|
740
|
+
✖ Externally anchored timestamp: invalid (malformed token)
|
|
741
|
+
○ Externally anchored timestamp: present (not verified) # token present, flag absent
|
|
742
|
+
○ Externally anchored timestamp: not present # no token in the bundle
|
|
698
743
|
```
|
|
699
744
|
|
|
700
745
|
Machine-readable (`--json`):
|
|
@@ -704,13 +749,15 @@ Machine-readable (`--json`):
|
|
|
704
749
|
"status": "verified",
|
|
705
750
|
"integrity": "pass",
|
|
706
751
|
"signature": "pass",
|
|
707
|
-
"protocolVersion": "1.3.0"
|
|
752
|
+
"protocolVersion": "1.3.0",
|
|
753
|
+
"timestamp": { "status": "valid", "tsa": "freeTSA", "genTime": "2026-06-17T10:52:12.000Z" }
|
|
708
754
|
}
|
|
709
755
|
```
|
|
710
756
|
|
|
711
757
|
`status` is `verified` when integrity passes and the signature is not invalid
|
|
712
|
-
(`pass` or `skipped`); otherwise it is `failed`. The
|
|
713
|
-
|
|
758
|
+
(`pass` or `skipped`); otherwise it is `failed`. The `timestamp` field is always
|
|
759
|
+
present and purely informational — **it never changes `status` or the exit code.**
|
|
760
|
+
The process exits `0` when verified and `1` otherwise, so it is safe to use in CI.
|
|
714
761
|
|
|
715
762
|
**Options:**
|
|
716
763
|
| Flag | Default | Description |
|
|
@@ -719,6 +766,8 @@ verified and `1` otherwise, so it is safe to use in CI.
|
|
|
719
766
|
| `--kid` | — | Key id to select when `--public-key` is a `NodeKeysDocument`. Strict — if the requested kid is absent, the signature **fails closed** (no fallback to another key) |
|
|
720
767
|
| `--json` | `false` | Emit a machine-readable result |
|
|
721
768
|
| `--verbose` | `false` | Print intermediate verification steps |
|
|
769
|
+
| `--verify-timestamp` | `false` | Additionally verify an embedded RFC 3161 timestamp (offline; never affects the exit code) |
|
|
770
|
+
| `--tsa-roots` | — | Path to trusted TSA root certificate(s) (PEM) used by `--verify-timestamp`. Without trusted roots, a present token reports `UNTRUSTED` |
|
|
722
771
|
|
|
723
772
|
> **Note on the command name.** This command is named `verify-bundle` rather than
|
|
724
773
|
> `verify` because `nexart verify <snapshot>` already exists for Code Mode
|
|
@@ -731,6 +780,56 @@ verified and `1` otherwise, so it is safe to use in CI.
|
|
|
731
780
|
|
|
732
781
|
---
|
|
733
782
|
|
|
783
|
+
## Verifying a full CER record (`nexart verify-record`)
|
|
784
|
+
|
|
785
|
+
`nexart verify-record` verifies a **full CER record** — the self-contained
|
|
786
|
+
envelope a relying party receives — rather than a bare bundle. A record bundles
|
|
787
|
+
the evidentiary payload together with its signed node attestation receipt and an
|
|
788
|
+
optional externally anchored timestamp:
|
|
789
|
+
|
|
790
|
+
```jsonc
|
|
791
|
+
{
|
|
792
|
+
"bundle": { /* the cer.ai.execution.v1 bundle */ },
|
|
793
|
+
"verification": {
|
|
794
|
+
"receipt": { /* signed node attestation receipt */ },
|
|
795
|
+
"receiptSignature": "base64url-ed25519-signature"
|
|
796
|
+
},
|
|
797
|
+
"timestamp": { "token": "base64-rfc3161-timestamptoken" } // optional
|
|
798
|
+
}
|
|
799
|
+
```
|
|
800
|
+
|
|
801
|
+
**How it differs from `verify-bundle`.** `verify-bundle` takes a bundle whose
|
|
802
|
+
receipt and signature are already embedded inside it. `verify-record` accepts the
|
|
803
|
+
record envelope above, lifts `verification.receipt` / `verification.receiptSignature`
|
|
804
|
+
onto the bundle, and then runs the **exact same** integrity + signature checks as
|
|
805
|
+
`verify-bundle` (it reuses the identical internal verifier — no duplicated crypto).
|
|
806
|
+
The record-level `timestamp.token` takes precedence over any token embedded in the
|
|
807
|
+
bundle; if the record omits it, an embedded `trustedTimestamps[]` / `timestamp` is
|
|
808
|
+
used instead. Everything else — flags, output, exit-code semantics — is identical
|
|
809
|
+
to `verify-bundle`.
|
|
810
|
+
|
|
811
|
+
```bash
|
|
812
|
+
# Integrity + signature of a full record (offline)
|
|
813
|
+
nexart verify-record record.json --public-key node-keys.json
|
|
814
|
+
|
|
815
|
+
# Machine-readable output
|
|
816
|
+
nexart verify-record record.json --public-key node-keys.json --json
|
|
817
|
+
|
|
818
|
+
# Additionally verify the record's RFC 3161 timestamp against trusted TSA roots
|
|
819
|
+
nexart verify-record record.json --public-key node-keys.json \
|
|
820
|
+
--verify-timestamp --tsa-roots tsa-roots.pem
|
|
821
|
+
```
|
|
822
|
+
|
|
823
|
+
The **Integrity**, **Signature**, **Timestamp** semantics, the human-readable and
|
|
824
|
+
`--json` shapes, and the option table are all exactly as documented for
|
|
825
|
+
[`verify-bundle`](#independent-verification-nexart-verify-bundle) above. The
|
|
826
|
+
timestamp layer is, identically, **strictly additive**: `pkijs` is loaded **only**
|
|
827
|
+
under `--verify-timestamp`, and the timestamp result **never** affects the
|
|
828
|
+
Integrity/Signature outcome or the process exit code (which is `0` only when
|
|
829
|
+
integrity passes and the signature is not invalid, `1` otherwise).
|
|
830
|
+
|
|
831
|
+
---
|
|
832
|
+
|
|
734
833
|
### `nexart ai project-verify` (v0.7.0+)
|
|
735
834
|
|
|
736
835
|
Verify a **project bundle** (`cer.project.bundle.v1`) locally. No network required. Delegates all verification logic to `verifyProjectBundle()` from `@nexart/ai-execution` — the canonical source of truth for project bundle semantics. The CLI provides the command surface and output formatting.
|
package/dist/index.d.ts
CHANGED
|
@@ -214,7 +214,43 @@ export declare function verifyBundleStandaloneCommand(file: string, opts: {
|
|
|
214
214
|
kid?: string;
|
|
215
215
|
json?: boolean;
|
|
216
216
|
verbose?: boolean;
|
|
217
|
-
|
|
217
|
+
verifyTimestamp?: boolean;
|
|
218
|
+
tsaRoots?: string;
|
|
219
|
+
}): Promise<StandaloneVerifyResult>;
|
|
220
|
+
/**
|
|
221
|
+
* nexart verify-record — Verify a full NexArt CER RECORD offline and independently.
|
|
222
|
+
*
|
|
223
|
+
* A "record" is the full verification envelope: { bundle, verification: { receipt,
|
|
224
|
+
* receiptSignature }, timestamp? }. This command is STRICTLY ADDITIVE alongside
|
|
225
|
+
* `verify-bundle` and reuses the exact same engine:
|
|
226
|
+
* - INTEGRITY + SIGNATURE: the record's `verification.receipt` /
|
|
227
|
+
* `verification.receiptSignature` are merged into a SHALLOW copy of `bundle`
|
|
228
|
+
* (which never affects the recomputed certificateHash — receipt/signature are
|
|
229
|
+
* not part of the certificate payload) and handed to verifyBundleStandalone().
|
|
230
|
+
* Behaviour, including --public-key / --kid, is identical to verify-bundle.
|
|
231
|
+
* - TIMESTAMP (optional, additive): the record-level `timestamp.token` (or a
|
|
232
|
+
* bundle-embedded timestamp) is verified via the same resolveTimestampResult()
|
|
233
|
+
* path used by verify-bundle. It NEVER affects integrity, signature, or the
|
|
234
|
+
* exit code, and the ASN.1 stack loads only behind --verify-timestamp.
|
|
235
|
+
*/
|
|
236
|
+
export declare function verifyRecordStandaloneCommand(file: string, opts: {
|
|
237
|
+
publicKey?: string;
|
|
238
|
+
kid?: string;
|
|
239
|
+
json?: boolean;
|
|
240
|
+
verbose?: boolean;
|
|
241
|
+
verifyTimestamp?: boolean;
|
|
242
|
+
tsaRoots?: string;
|
|
243
|
+
}): Promise<StandaloneVerifyResult>;
|
|
244
|
+
/**
|
|
245
|
+
* Render the human-readable timestamp STATUS line WITHOUT importing the ASN.1 stack.
|
|
246
|
+
* This deliberately mirrors formatTsaLine() in tsaVerify.ts but lives here so the
|
|
247
|
+
* present-unverified / not-present paths never load pkijs (non-negotiable: ASN.1
|
|
248
|
+
* libs are only loaded behind --verify-timestamp). The wording — "Externally
|
|
249
|
+
* anchored timestamp" — reflects that we are proving anchoring to an INDEPENDENT
|
|
250
|
+
* authority, not running an internal check. Provider/time/imprint are surfaced
|
|
251
|
+
* separately in the Timestamp Details block (formatTimestampDetails).
|
|
252
|
+
*/
|
|
253
|
+
export declare function formatTimestampLine(status: import('./tsaVerify.js').TsaStatus): string;
|
|
218
254
|
/**
|
|
219
255
|
* nexart ai project-verify — Read a cer.project.bundle.v1 JSON from file or stdin,
|
|
220
256
|
* delegate all verification to verifyProjectBundle() from @nexart/ai-execution,
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsDG;AAcH,OAAO,EAEL,KAAK,sBAAsB,EAC5B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAGL,cAAc,IAAI,iBAAiB,EAqBpC,MAAM,sBAAsB,CAAC;AAi0B9B;;GAEG;AACH,wBAAsB,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC,CAerD;AAED;;GAEG;AACH,wBAAsB,aAAa,CACjC,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,WAAW,GAAE,MAAM,OAAO,CAAC,MAAM,CAAiB,GACjD,OAAO,CAAC,OAAO,CAAC,CA0BlB;AAED;;;GAGG;AACH,wBAAsB,WAAW,CAC/B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,OAAO,EACb,MAAM,CAAC,EAAE,MAAM,EACf,OAAO,GAAE,OAAO,KAAwB,GACvC,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,OAAO,CAAA;CAAE,CAAC,CAoB5C;AAED;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,cAAc,0BAAoB,CAAC;AAEhD;;;GAGG;AACH,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,EAAE,CAwB9D;AAoED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAsB,aAAa,CACjC,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,IAAI,EAAE;IACJ,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,EACD,WAAW,GAAE,MAAM,OAAO,CAAC,MAAM,CAAiB,GACjD,OAAO,CAAC,IAAI,CAAC,CAuCf;AAED;;;;GAIG;AACH,wBAAsB,eAAe,CACnC,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,IAAI,EAAE;IACJ,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,EACD,OAAO,GAAE,OAAO,KAAwB,EACxC,WAAW,GAAE,MAAM,OAAO,CAAC,MAAM,CAAiB,GACjD,OAAO,CAAC,IAAI,CAAC,CA8Cf;AAED;;;;;GAKG;AACH,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,IAAI,EAAE;IACJ,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,EACD,OAAO,GAAE,OAAO,KAAwB,EACxC,WAAW,GAAE,MAAM,OAAO,CAAC,MAAM,CAAiB,GACjD,OAAO,CAAC,IAAI,CAAC,CA8Df;AAqCD,wBAAsB,eAAe,CACnC,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,IAAI,EAAE;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAAE,EAChE,WAAW,GAAE,MAAM,OAAO,CAAC,MAAM,CAAiB,GACjD,OAAO,CAAC,IAAI,CAAC,CA+Hf;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,qBAAqB,CACzC,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE;IAAE,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,GACrB,OAAO,CAAC,IAAI,CAAC,CAoCf;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,yBAAyB,CAC7C,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,IAAI,EAAE;IAAE,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,EAC7D,WAAW,GAAE,MAAM,OAAO,CAAC,MAAM,CAAiB,GACjD,OAAO,CAAC,IAAI,CAAC,CAqCf;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAsB,6BAA6B,CACjD,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,eAAe,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAC1H,OAAO,CAAC,sBAAsB,CAAC,CAqCjC;AA2GD;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,6BAA6B,CACjD,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,eAAe,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAC1H,OAAO,CAAC,sBAAsB,CAAC,CAkEjC;AAoCD;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,OAAO,gBAAgB,EAAE,SAAS,GAAG,MAAM,CAyBtF;AAmDD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,sBAAsB,CAC1C,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,IAAI,EAAE;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,EACvB,WAAW,GAAE,MAAM,OAAO,CAAC,MAAM,CAAiB,GACjD,OAAO,CAAC,IAAI,CAAC,CAwBf"}
|