@plurnk/plurnk-contracts 1.4.0 → 1.5.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/README.md +1 -1
- package/SPEC.md +62 -25
- package/dist/plurnk.gbnf +40 -40
- package/dist/schema/MatcherBody.json +1 -1
- package/dist/schema/OperationResult.json +3 -0
- package/dist/schema/PlurnkStatement.json +1 -1
- package/dist/schema/RangeExtent.json +47 -0
- package/dist/src/AstBuilder.d.ts.map +1 -1
- package/dist/src/AstBuilder.js +20 -7
- package/dist/src/AstBuilder.js.map +1 -1
- package/dist/src/JsonResult.d.ts +3 -0
- package/dist/src/JsonResult.d.ts.map +1 -0
- package/dist/src/JsonResult.js +37 -0
- package/dist/src/JsonResult.js.map +1 -0
- package/dist/src/PlurnkParser.d.ts.map +1 -1
- package/dist/src/PlurnkParser.js +6 -0
- package/dist/src/PlurnkParser.js.map +1 -1
- package/dist/src/Validator.d.ts +5 -1
- package/dist/src/Validator.d.ts.map +1 -1
- package/dist/src/Validator.js +29 -1
- package/dist/src/Validator.js.map +1 -1
- package/dist/src/generated/plurnkLexer.d.ts +11 -1
- package/dist/src/generated/plurnkLexer.d.ts.map +1 -1
- package/dist/src/generated/plurnkLexer.js +281 -243
- package/dist/src/generated/plurnkLexer.js.map +1 -1
- package/dist/src/generated/plurnkParser.d.ts +2 -1
- package/dist/src/generated/plurnkParser.d.ts.map +1 -1
- package/dist/src/generated/plurnkParser.js +6 -4
- package/dist/src/generated/plurnkParser.js.map +1 -1
- package/dist/src/index.d.ts +4 -2
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +3 -2
- package/dist/src/index.js.map +1 -1
- package/dist/src/types.d.ts +1 -0
- package/dist/src/types.d.ts.map +1 -1
- package/dist/src/types.generated.d.ts +19 -2
- package/dist/src/types.generated.d.ts.map +1 -1
- package/dist/src/types.js +3 -0
- package/dist/src/types.js.map +1 -1
- package/package.json +6 -7
- package/plurnk.md +31 -65
package/README.md
CHANGED
|
@@ -107,7 +107,7 @@ guarantee semantically valid output. See SPEC {§gbnf-turn-shape} and
|
|
|
107
107
|
```sh
|
|
108
108
|
npm run build
|
|
109
109
|
npm test
|
|
110
|
-
npm run test:
|
|
110
|
+
npm run test:installation
|
|
111
111
|
```
|
|
112
112
|
|
|
113
113
|
Generated parser, schema-type, distribution, and GBNF artifacts are rebuilt by
|
package/SPEC.md
CHANGED
|
@@ -8,11 +8,12 @@ is the single code API for those contracts.
|
|
|
8
8
|
|
|
9
9
|
| Surface | Canonical export or artifact |
|
|
10
10
|
| ------------------------------------------------------------------------------- | --------------------------------------------------- |
|
|
11
|
-
| Parser, AST, validators, Problems, results, Notices, text regions
|
|
11
|
+
| Parser, AST, validators, Problems, results, Notices, text regions and extents | `@plurnk/plurnk-contracts` |
|
|
12
12
|
| Effective loop policy and its default | `LoopFlags`, `DEFAULT_LOOP_FLAGS` |
|
|
13
13
|
| Stopped-world client contract | `ProposalDisposition`, `ProposalProjection` |
|
|
14
14
|
| Client capability presentation | `ClientDisplayCapabilities` |
|
|
15
15
|
| JSON Schemas | `@plurnk/plurnk-contracts/schema/*.json` |
|
|
16
|
+
| Generated JSON result rendering | `renderJsonResult` |
|
|
16
17
|
| Local-model rail | `@plurnk/plurnk-contracts/plurnk.gbnf` |
|
|
17
18
|
| Model language reference | `plurnk.md` in the package |
|
|
18
19
|
|
|
@@ -20,6 +21,13 @@ is the single code API for those contracts.
|
|
|
20
21
|
generated from the schemas; ANTLR is authoritative for accepted model-language
|
|
21
22
|
syntax; GBNF remains the bounded generation aid described in §1.2.
|
|
22
23
|
|
|
24
|
+
§json-result-rendering `renderJsonResult` is the one presentation serializer
|
|
25
|
+
for generated JSON operation results. A top-level array remains one valid,
|
|
26
|
+
compact JSON value but places each item on its own physical line by adding only
|
|
27
|
+
item-boundary newlines; an empty or single-item array and every non-array value
|
|
28
|
+
remain one line. It never rewrites arbitrary stored JSON, whose original lines
|
|
29
|
+
remain source coordinates.
|
|
30
|
+
|
|
23
31
|
## §contract-layers 1.1 Contract layers and admission boundary
|
|
24
32
|
|
|
25
33
|
PLURNK uses one contract with deliberately different projections. A tolerant
|
|
@@ -82,7 +90,10 @@ currency plus its decimal USD equivalent; an estimate carries a decimal USD
|
|
|
82
90
|
amount; free requires an explicit source; unknown requires a reason. Decimal
|
|
83
91
|
strings preserve evidence without binary floating-point rewriting. Unknown is
|
|
84
92
|
not zero, and no consumer may infer free from absent rates or a legacy numeric
|
|
85
|
-
zero.
|
|
93
|
+
zero. A numeric `costUsd` projection includes authoritative USD equivalents,
|
|
94
|
+
Models.dev-derived estimates, and explicit zero-cost evidence. It is `null`
|
|
95
|
+
when any contributing result is unknown; there is no second projected-cost
|
|
96
|
+
surface.
|
|
86
97
|
|
|
87
98
|
The parser returns ordered statement, error, and text items. It recovers at a
|
|
88
99
|
trustworthy statement boundary when possible and sets `unparsedTail` when a
|
|
@@ -206,7 +217,7 @@ governed by {§canonical-statement}; runtime conditions remain explicit below.
|
|
|
206
217
|
|------|-------------------------------|----------------------------------------------|---------------------------------|--------------------------------|
|
|
207
218
|
| PLAN | none | none | none | required intended goals |
|
|
208
219
|
| FIND | optional filter tags | required target or glob | optional result range | optional matcher |
|
|
209
|
-
| READ | optional filter tags | required target
|
|
220
|
+
| READ | optional filter tags | required target | optional text region | empty |
|
|
210
221
|
| EDIT | optional apply tags | required file or entry | required for an existing target | literal text |
|
|
211
222
|
| COPY | optional apply tags | required source | optional source region | required destination selection |
|
|
212
223
|
| MOVE | optional apply tags | required source | optional source region | required destination selection |
|
|
@@ -255,13 +266,12 @@ four-coordinate region ending after the final code point of `endLine`.
|
|
|
255
266
|
Producers never emit that form. Other arities and decimal text coordinates are
|
|
256
267
|
runtime 416 failures.
|
|
257
268
|
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
integer belongs to READ projection and selection uses the configured default.
|
|
269
|
+
§read-exact-target READ targets one exact resource (a local path or scheme URL,
|
|
270
|
+
with optional `#channel` fragment or `{header: value}` metadata). READ does not
|
|
271
|
+
admit globs or matcher bodies; pattern matching belongs to FIND. A `<scope>` on
|
|
272
|
+
READ selects a text region from that exact target. Without a scope, READ
|
|
273
|
+
defaults to `<1,16>`; `<1,-1>` explicitly selects all text. Decimal scope
|
|
274
|
+
components are invalid on READ.
|
|
265
275
|
|
|
266
276
|
Mutation semantics:
|
|
267
277
|
|
|
@@ -271,13 +281,13 @@ Mutation semantics:
|
|
|
271
281
|
- An empty body deletes the selected text.
|
|
272
282
|
- `<0>` prepends and `<-1>` appends.
|
|
273
283
|
- `<SL,SC,EL,EC>` deletes the exact exclusive-end region and inserts the body at its start.
|
|
274
|
-
- COPY and MOVE parse the body as a destination `ResourceSelection`: a target plus an optional destination scope. Header target, fragment, and scope independently select the source resource, channel, and region.
|
|
284
|
+
- §destination-scope-boundary COPY and MOVE parse the body as a destination `ResourceSelection`: a target plus an optional destination scope. A destination scope is final body content; a scope-shaped suffix followed only by one or more colons is rejected as close-fence residue rather than reinterpreted as target data. Scope-shaped text elsewhere remains target data, and a URL requiring the reserved terminal spelling percent-encodes its angle brackets. Header target, fragment, and scope independently select the source resource, channel, and region.
|
|
275
285
|
|
|
276
286
|
### §operation-observation Per-operation observations
|
|
277
287
|
|
|
278
288
|
| OP | Successful observation |
|
|
279
289
|
|------|-----------------------------------------------------------------------------------|
|
|
280
|
-
| FIND |
|
|
290
|
+
| FIND | Resource catalog rows or exact-target match locations |
|
|
281
291
|
| READ | Complete or scoped body projections plus optional text match evidence |
|
|
282
292
|
| EDIT | Status plus a bounded receipt for the effect that landed |
|
|
283
293
|
| COPY | Source and destination selections plus ordered destination effects |
|
|
@@ -291,6 +301,12 @@ Mutation semantics:
|
|
|
291
301
|
| KILL | Status of deletion or termination |
|
|
292
302
|
| PLAN | Status of durable intended-goals logging |
|
|
293
303
|
|
|
304
|
+
§find-result-unit For FIND, authored target shape fixes the paginated result
|
|
305
|
+
unit. An exact target with a matcher pages flat match locations; a glob or
|
|
306
|
+
folder target, and every body-less FIND, pages resources. Resolving a glob to
|
|
307
|
+
one resource does not make it exact. The same `<N>`, inclusive `<N,M>`,
|
|
308
|
+
markerless `<1,16>`, and explicit-all `<1,-1>` forms apply to either unit.
|
|
309
|
+
|
|
294
310
|
§copy-move-observation COPY and MOVE log projections preserve both admitted operand selections,
|
|
295
311
|
including their independent scopes, whether the result changed state, was a
|
|
296
312
|
304 no-op, or failed after admission. Operands identify the request; `effects`
|
|
@@ -378,8 +394,9 @@ ingestion restriction: the parser decomposes arbitrary URL authorities.
|
|
|
378
394
|
|
|
379
395
|
## §matcher-prefix-claims 6. Bulk pattern matching
|
|
380
396
|
|
|
381
|
-
FIND,
|
|
382
|
-
the body opaquely; AstBuilder assigns the dialect
|
|
397
|
+
FIND, OPEN, and FOLD accept an optional body matcher. READ requires an exact target
|
|
398
|
+
and an empty body. The lexer preserves the body opaquely; AstBuilder assigns the dialect
|
|
399
|
+
from its leading characters.
|
|
383
400
|
A leading prefix claims its dialect. Invalid claimed syntax is a positioned
|
|
384
401
|
visitor error and never falls back to glob matching.
|
|
385
402
|
|
|
@@ -405,7 +422,9 @@ statements remain recoverable when their boundaries are trustworthy.
|
|
|
405
422
|
|
|
406
423
|
- §pattern-body-single-line The GBNF rail permits only single-line matcher
|
|
407
424
|
bodies. A regex that matches a newline uses the two-character `\n` escape.
|
|
408
|
-
|
|
425
|
+
During ingestion, a FIND body that reaches a physical newline without its
|
|
426
|
+
close tag closes at that boundary with one recoverable lexer diagnostic, so
|
|
427
|
+
the following statement remains independently parseable.
|
|
409
428
|
- §pattern-body-leading-colon The GBNF rail forbids `:` as the first matcher
|
|
410
429
|
character. Empty matchers and later colons remain valid; a regex such as
|
|
411
430
|
`/^:needle/` expresses a pattern beginning with a literal colon.
|
|
@@ -418,8 +437,8 @@ components, while the operation owner assigns their roles.
|
|
|
418
437
|
|
|
419
438
|
| Operation | Canonical components | Meaning |
|
|
420
439
|
|-----------------------|----------------------------------------------|--------------------------------------------------------------|
|
|
421
|
-
| FIND | optional threshold, then 0–2 positions | Inclusive
|
|
422
|
-
| READ |
|
|
440
|
+
| FIND | optional threshold, then 0–2 positions | Inclusive resource or exact-target location positions ({§find-result-unit}; defaults to `<1,16>`) |
|
|
441
|
+
| READ | 0/1/2/4 coordinates | Text projection from the exact selected file, entry, or log item |
|
|
423
442
|
| EDIT | text coordinates | Text replacement, deletion, prepend, or append |
|
|
424
443
|
| COPY/MOVE source | text coordinates | Region copied or moved from the selected source |
|
|
425
444
|
| COPY/MOVE destination | text coordinates after destination | Region replaced or insertion point at the destination |
|
|
@@ -429,9 +448,9 @@ components, while the operation owner assigns their roles.
|
|
|
429
448
|
Text coordinates use the algebra in {§text-scope-semantics}: one integer is a
|
|
430
449
|
whole line, two integers are an inclusive whole-line range, and four integers
|
|
431
450
|
are an exact start-inclusive/end-exclusive region. Mutation scopes additionally
|
|
432
|
-
admit `0` as prepend and `-1` as append. A leading decimal on semantic FIND
|
|
433
|
-
|
|
434
|
-
|
|
451
|
+
admit `0` as prepend and `-1` as append. A leading decimal on semantic FIND
|
|
452
|
+
is a similarity threshold; any remaining integers select result positions. READ
|
|
453
|
+
does not admit decimal scope components.
|
|
435
454
|
|
|
436
455
|
§scope-marker-forms Canonical producers separate components with commas and no
|
|
437
456
|
spaces. ANTLR tolerates a dash separator and one space after a comma. Each
|
|
@@ -654,6 +673,7 @@ following supported consumer values. All other root exports are TypeScript types
|
|
|
654
673
|
| `InvalidProblemDetailsError` | Typed failure from `Validator.assertProblemDetails` | {§problem-details} |
|
|
655
674
|
| `InvalidOperationResultError` | Typed failure from `Validator.assertOperationResult` | {§operation-result} |
|
|
656
675
|
| `InvalidTextRegionError` | Typed failure from `Validator.assertTextRegion` | {§text-region} |
|
|
676
|
+
| `InvalidRangeExtentError` | Typed failure from `Validator.assertRangeExtent` | {§range-extent} |
|
|
657
677
|
| `Problems` | RFC 9457 Problem construction | {§problem-details} |
|
|
658
678
|
| `PLURNK_OPS` | Runtime tuple from which the closed `PlurnkOp` union is derived | {§canonical-statement} |
|
|
659
679
|
| `WORKER_NAME`, `RESERVED_AUTHORITIES` | Authority minting predicate and internal reserved names | {§worker-name} |
|
|
@@ -703,7 +723,24 @@ point. A producer supplies all four coordinates or omits the region. It never
|
|
|
703
723
|
substitutes UTF-16 offsets, readable-row indices, or partial coordinates.
|
|
704
724
|
`Validator.assertTextRegion` rejects an end before its start.
|
|
705
725
|
|
|
706
|
-
### §
|
|
726
|
+
### §range-extent 13.2 Range extents
|
|
727
|
+
|
|
728
|
+
`RangeExtent` is the compact wire projection of one line or ordered-result
|
|
729
|
+
selection: `{ unit, total, requested: [first,last], returned?: [first,last] }`.
|
|
730
|
+
`requested` preserves the numeric request, including invalid fractional
|
|
731
|
+
evidence on a failed selection; a one-position request therefore repeats its
|
|
732
|
+
endpoint. Successful selection endpoints are integers. `total` is the complete
|
|
733
|
+
available cardinality.
|
|
734
|
+
`returned` names the inclusive positions actually projected and is absent for
|
|
735
|
+
an empty selection or a failed request. Its endpoints are positive, ordered,
|
|
736
|
+
and no greater than `total`.
|
|
737
|
+
|
|
738
|
+
The transparent coordinates make completion and continuation derivable. The
|
|
739
|
+
shape has no separate `complete`, `next`, or all-results instruction. Exact
|
|
740
|
+
text-coordinate selections use {§text-region} instead. `Validator.assertRangeExtent`
|
|
741
|
+
enforces both the schema and the relational endpoint invariants.
|
|
742
|
+
|
|
743
|
+
### §entry-read-result 13.3 Client entry reads
|
|
707
744
|
|
|
708
745
|
`EntryReadResult` is the exact transport-neutral projection of one entry. It
|
|
709
746
|
does not expose workspace IDs, storage owner IDs, split scheme/pathname fields,
|
|
@@ -736,7 +773,7 @@ offset beyond the current end returns empty content at `contentLength`, not the
|
|
|
736
773
|
unbounded requested offset. `Validator.assertEntryReadResult` enforces the
|
|
737
774
|
schema, this suffix invariant, and Problem status equality.
|
|
738
775
|
|
|
739
|
-
### 13.
|
|
776
|
+
### 13.4 Operation results
|
|
740
777
|
|
|
741
778
|
§operation-result Every public PLURNK operation returns one `OperationResult`:
|
|
742
779
|
|
|
@@ -750,7 +787,7 @@ fields and Problem Details extension members remain open. A malformed result is
|
|
|
750
787
|
an internal producer contract violation; it is not converted into a second
|
|
751
788
|
model-facing failure envelope.
|
|
752
789
|
|
|
753
|
-
### 13.
|
|
790
|
+
### 13.5 Problem Details
|
|
754
791
|
|
|
755
792
|
§problem-details `ProblemDetails` requires `type`, `title`, `status`, and `detail`;
|
|
756
793
|
`instance` is optional until a durable host can attach the occurrence URI.
|
|
@@ -780,13 +817,13 @@ Internal invariant violations throw and preserve their cause. An external
|
|
|
780
817
|
protocol may require its own error envelope; its adapter maps that envelope to
|
|
781
818
|
or from the canonical Problem without creating another PLURNK failure contract.
|
|
782
819
|
|
|
783
|
-
### 13.
|
|
820
|
+
### 13.6 Notices
|
|
784
821
|
|
|
785
822
|
§notice A `Notice` is a transient, nonterminal observation. It cannot determine durable
|
|
786
823
|
failure truth, lifecycle, scheduling, or recovery. Sharing a renderer with
|
|
787
824
|
Problems does not merge their semantics.
|
|
788
825
|
|
|
789
|
-
### §client-display-capabilities 13.
|
|
826
|
+
### §client-display-capabilities 13.7 Client display capabilities
|
|
790
827
|
|
|
791
828
|
`ClientDisplayCapabilities` is the transport-neutral installed-capability
|
|
792
829
|
projection used by external clients. It is an ordered array of closed,
|
package/dist/plurnk.gbnf
CHANGED
|
@@ -57,40 +57,40 @@ edit-2-b2 ::= ("D" edit-2-b3 | ":" edit-2-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F
|
|
|
57
57
|
edit-2-b3 ::= ("I" edit-2-b4 | ":" edit-2-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:I] edit-2-b0)?
|
|
58
58
|
edit-2-b4 ::= ("T" edit-2-b5 | ":" edit-2-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:T] edit-2-b0)?
|
|
59
59
|
edit-2-b5 ::= (":" edit-2-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:2] edit-2-b0)?
|
|
60
|
-
copy-b0 ::= (":" copy-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F
|
|
61
|
-
copy-b1 ::= ("C" copy-b2 | ":" copy-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:C] copy-b0)?
|
|
62
|
-
copy-b2 ::= ("O" copy-b3 | ":" copy-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:O] copy-b0)?
|
|
63
|
-
copy-b3 ::= ("P" copy-b4 | ":" copy-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:P] copy-b0)?
|
|
64
|
-
copy-b4 ::= (":" copy-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:Y] copy-b0)?
|
|
65
|
-
copy-1-b0 ::= (":" copy-1-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F
|
|
66
|
-
copy-1-b1 ::= ("C" copy-1-b2 | ":" copy-1-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:C] copy-1-b0)?
|
|
67
|
-
copy-1-b2 ::= ("O" copy-1-b3 | ":" copy-1-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:O] copy-1-b0)?
|
|
68
|
-
copy-1-b3 ::= ("P" copy-1-b4 | ":" copy-1-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:P] copy-1-b0)?
|
|
69
|
-
copy-1-b4 ::= ("Y" copy-1-b5 | ":" copy-1-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:Y] copy-1-b0)?
|
|
70
|
-
copy-1-b5 ::= (":" copy-1-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:1] copy-1-b0)?
|
|
71
|
-
copy-2-b0 ::= (":" copy-2-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F
|
|
72
|
-
copy-2-b1 ::= ("C" copy-2-b2 | ":" copy-2-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:C] copy-2-b0)?
|
|
73
|
-
copy-2-b2 ::= ("O" copy-2-b3 | ":" copy-2-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:O] copy-2-b0)?
|
|
74
|
-
copy-2-b3 ::= ("P" copy-2-b4 | ":" copy-2-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:P] copy-2-b0)?
|
|
75
|
-
copy-2-b4 ::= ("Y" copy-2-b5 | ":" copy-2-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:Y] copy-2-b0)?
|
|
76
|
-
copy-2-b5 ::= (":" copy-2-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:2] copy-2-b0)?
|
|
77
|
-
move-b0 ::= (":" move-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F
|
|
78
|
-
move-b1 ::= ("M" move-b2 | ":" move-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:M] move-b0)?
|
|
79
|
-
move-b2 ::= ("O" move-b3 | ":" move-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:O] move-b0)?
|
|
80
|
-
move-b3 ::= ("V" move-b4 | ":" move-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:V] move-b0)?
|
|
81
|
-
move-b4 ::= (":" move-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:E] move-b0)?
|
|
82
|
-
move-1-b0 ::= (":" move-1-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F
|
|
83
|
-
move-1-b1 ::= ("M" move-1-b2 | ":" move-1-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:M] move-1-b0)?
|
|
84
|
-
move-1-b2 ::= ("O" move-1-b3 | ":" move-1-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:O] move-1-b0)?
|
|
85
|
-
move-1-b3 ::= ("V" move-1-b4 | ":" move-1-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:V] move-1-b0)?
|
|
86
|
-
move-1-b4 ::= ("E" move-1-b5 | ":" move-1-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:E] move-1-b0)?
|
|
87
|
-
move-1-b5 ::= (":" move-1-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:1] move-1-b0)?
|
|
88
|
-
move-2-b0 ::= (":" move-2-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F
|
|
89
|
-
move-2-b1 ::= ("M" move-2-b2 | ":" move-2-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:M] move-2-b0)?
|
|
90
|
-
move-2-b2 ::= ("O" move-2-b3 | ":" move-2-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:O] move-2-b0)?
|
|
91
|
-
move-2-b3 ::= ("V" move-2-b4 | ":" move-2-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:V] move-2-b0)?
|
|
92
|
-
move-2-b4 ::= ("E" move-2-b5 | ":" move-2-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:E] move-2-b0)?
|
|
93
|
-
move-2-b5 ::= (":" move-2-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:2] move-2-b0)?
|
|
60
|
+
copy-b0 ::= (":" copy-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:<] copy-b0)?
|
|
61
|
+
copy-b1 ::= ("C" copy-b2 | ":" copy-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:C<] copy-b0)?
|
|
62
|
+
copy-b2 ::= ("O" copy-b3 | ":" copy-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:O<] copy-b0)?
|
|
63
|
+
copy-b3 ::= ("P" copy-b4 | ":" copy-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:P<] copy-b0)?
|
|
64
|
+
copy-b4 ::= (":" copy-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:Y<] copy-b0)?
|
|
65
|
+
copy-1-b0 ::= (":" copy-1-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:<] copy-1-b0)?
|
|
66
|
+
copy-1-b1 ::= ("C" copy-1-b2 | ":" copy-1-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:C<] copy-1-b0)?
|
|
67
|
+
copy-1-b2 ::= ("O" copy-1-b3 | ":" copy-1-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:O<] copy-1-b0)?
|
|
68
|
+
copy-1-b3 ::= ("P" copy-1-b4 | ":" copy-1-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:P<] copy-1-b0)?
|
|
69
|
+
copy-1-b4 ::= ("Y" copy-1-b5 | ":" copy-1-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:Y<] copy-1-b0)?
|
|
70
|
+
copy-1-b5 ::= (":" copy-1-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:1<] copy-1-b0)?
|
|
71
|
+
copy-2-b0 ::= (":" copy-2-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:<] copy-2-b0)?
|
|
72
|
+
copy-2-b1 ::= ("C" copy-2-b2 | ":" copy-2-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:C<] copy-2-b0)?
|
|
73
|
+
copy-2-b2 ::= ("O" copy-2-b3 | ":" copy-2-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:O<] copy-2-b0)?
|
|
74
|
+
copy-2-b3 ::= ("P" copy-2-b4 | ":" copy-2-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:P<] copy-2-b0)?
|
|
75
|
+
copy-2-b4 ::= ("Y" copy-2-b5 | ":" copy-2-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:Y<] copy-2-b0)?
|
|
76
|
+
copy-2-b5 ::= (":" copy-2-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:2<] copy-2-b0)?
|
|
77
|
+
move-b0 ::= (":" move-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:<] move-b0)?
|
|
78
|
+
move-b1 ::= ("M" move-b2 | ":" move-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:M<] move-b0)?
|
|
79
|
+
move-b2 ::= ("O" move-b3 | ":" move-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:O<] move-b0)?
|
|
80
|
+
move-b3 ::= ("V" move-b4 | ":" move-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:V<] move-b0)?
|
|
81
|
+
move-b4 ::= (":" move-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:E<] move-b0)?
|
|
82
|
+
move-1-b0 ::= (":" move-1-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:<] move-1-b0)?
|
|
83
|
+
move-1-b1 ::= ("M" move-1-b2 | ":" move-1-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:M<] move-1-b0)?
|
|
84
|
+
move-1-b2 ::= ("O" move-1-b3 | ":" move-1-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:O<] move-1-b0)?
|
|
85
|
+
move-1-b3 ::= ("V" move-1-b4 | ":" move-1-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:V<] move-1-b0)?
|
|
86
|
+
move-1-b4 ::= ("E" move-1-b5 | ":" move-1-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:E<] move-1-b0)?
|
|
87
|
+
move-1-b5 ::= (":" move-1-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:1<] move-1-b0)?
|
|
88
|
+
move-2-b0 ::= (":" move-2-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:<] move-2-b0)?
|
|
89
|
+
move-2-b1 ::= ("M" move-2-b2 | ":" move-2-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:M<] move-2-b0)?
|
|
90
|
+
move-2-b2 ::= ("O" move-2-b3 | ":" move-2-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:O<] move-2-b0)?
|
|
91
|
+
move-2-b3 ::= ("V" move-2-b4 | ":" move-2-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:V<] move-2-b0)?
|
|
92
|
+
move-2-b4 ::= ("E" move-2-b5 | ":" move-2-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:E<] move-2-b0)?
|
|
93
|
+
move-2-b5 ::= (":" move-2-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F:2<] move-2-b0)?
|
|
94
94
|
open-b0 ::= (":" open-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F\n\r:] open-b0)?
|
|
95
95
|
open-b1 ::= ("O" open-b2 | ":" open-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F\n\r:O] open-b0)?
|
|
96
96
|
open-b2 ::= ("P" open-b3 | ":" open-b1 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F\n\r:P] open-b0)?
|
|
@@ -277,9 +277,9 @@ tail-12 ::= send-mid-any sep tail-13 | op-statement sep tail-13 | send-final-any
|
|
|
277
277
|
tail-13 ::= send-mid-any sep tail-14 | op-statement sep tail-14 | send-final-any sep
|
|
278
278
|
tail-14 ::= send-final-any sep
|
|
279
279
|
root-turn ::= channel sep plan sep tail-0
|
|
280
|
-
op-statement-6 ::= tags? target line? ":" copy-1-b0 ":COPY1"
|
|
281
|
-
op-statement-7 ::= tags? target line? ":" copy-2-b0 ":COPY2"
|
|
282
|
-
op-statement-5 ::= tags? target line? ":" copy-b0 ":COPY" | "1" op-statement-6 | "2" op-statement-7
|
|
280
|
+
op-statement-6 ::= tags? target line? ":" copy-1-b0 line? ":COPY1"
|
|
281
|
+
op-statement-7 ::= tags? target line? ":" copy-2-b0 line? ":COPY2"
|
|
282
|
+
op-statement-5 ::= tags? target line? ":" copy-b0 line? ":COPY" | "1" op-statement-6 | "2" op-statement-7
|
|
283
283
|
op-statement-4 ::= "Y" op-statement-5
|
|
284
284
|
op-statement-3 ::= "P" op-statement-4
|
|
285
285
|
op-statement-2 ::= "O" op-statement-3
|
|
@@ -315,9 +315,9 @@ op-statement-37 ::= kill-sig? target ":" kill-b0 ":KILL" | "1" op-statement-38 |
|
|
|
315
315
|
op-statement-36 ::= "L" op-statement-37
|
|
316
316
|
op-statement-35 ::= "L" op-statement-36
|
|
317
317
|
op-statement-34 ::= "I" op-statement-35
|
|
318
|
-
op-statement-44 ::= tags? target line? ":" move-1-b0 ":MOVE1"
|
|
319
|
-
op-statement-45 ::= tags? target line? ":" move-2-b0 ":MOVE2"
|
|
320
|
-
op-statement-43 ::= tags? target line? ":" move-b0 ":MOVE" | "1" op-statement-44 | "2" op-statement-45
|
|
318
|
+
op-statement-44 ::= tags? target line? ":" move-1-b0 line? ":MOVE1"
|
|
319
|
+
op-statement-45 ::= tags? target line? ":" move-2-b0 line? ":MOVE2"
|
|
320
|
+
op-statement-43 ::= tags? target line? ":" move-b0 line? ":MOVE" | "1" op-statement-44 | "2" op-statement-45
|
|
321
321
|
op-statement-42 ::= "E" op-statement-43
|
|
322
322
|
op-statement-41 ::= "V" op-statement-42
|
|
323
323
|
op-statement-40 ::= "O" op-statement-41
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
3
|
"$id": "https://schemas.plurnk.dev/v0/MatcherBody.json",
|
|
4
4
|
"title": "MatcherBody",
|
|
5
|
-
"description": "Parsed body of a FIND/
|
|
5
|
+
"description": "Parsed body of a FIND/OPEN/FOLD statement, discriminated on `dialect`. The dialect is determined by the body's leading characters (`//` xpath, `/` regex, `$` jsonpath, `~` semantic, `@` graph, else glob). The regex variant carries pattern and flags split out of the `/pattern/flags` literal; every variant remains JSON-serializable.",
|
|
6
6
|
"oneOf": [
|
|
7
7
|
{ "$ref": "#/$defs/XPathBody" },
|
|
8
8
|
{ "$ref": "#/$defs/RegexBody" },
|
|
@@ -82,7 +82,7 @@
|
|
|
82
82
|
"signal": { "$ref": "#/$defs/TagSignal" },
|
|
83
83
|
"target": { "$ref": "#/$defs/PathOrNull" },
|
|
84
84
|
"lineMarker": { "$ref": "#/$defs/LineMarkerOrNull" },
|
|
85
|
-
"body": { "
|
|
85
|
+
"body": { "type": "null" },
|
|
86
86
|
"position": { "$ref": "#/$defs/PositionRef" }
|
|
87
87
|
}
|
|
88
88
|
},
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://schemas.plurnk.dev/v0/RangeExtent.json",
|
|
4
|
+
"title": "RangeExtent",
|
|
5
|
+
"description": "A compact projection of one line or ordered-result selection. Requested and returned positions are inclusive; total is the complete available cardinality.",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"required": ["unit", "total", "requested"],
|
|
8
|
+
"additionalProperties": false,
|
|
9
|
+
"properties": {
|
|
10
|
+
"unit": {
|
|
11
|
+
"enum": ["line", "result", "resource", "matchLocation"]
|
|
12
|
+
},
|
|
13
|
+
"total": {
|
|
14
|
+
"type": "integer",
|
|
15
|
+
"minimum": 0,
|
|
16
|
+
"maximum": 9007199254740991
|
|
17
|
+
},
|
|
18
|
+
"requested": {
|
|
19
|
+
"$ref": "#/$defs/RequestedRange"
|
|
20
|
+
},
|
|
21
|
+
"returned": {
|
|
22
|
+
"$ref": "#/$defs/ReturnedRange"
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
"$defs": {
|
|
26
|
+
"RequestedRange": {
|
|
27
|
+
"type": "array",
|
|
28
|
+
"items": {
|
|
29
|
+
"type": "number",
|
|
30
|
+
"minimum": -9007199254740991,
|
|
31
|
+
"maximum": 9007199254740991
|
|
32
|
+
},
|
|
33
|
+
"minItems": 2,
|
|
34
|
+
"maxItems": 2
|
|
35
|
+
},
|
|
36
|
+
"ReturnedRange": {
|
|
37
|
+
"type": "array",
|
|
38
|
+
"items": {
|
|
39
|
+
"type": "integer",
|
|
40
|
+
"minimum": 1,
|
|
41
|
+
"maximum": 9007199254740991
|
|
42
|
+
},
|
|
43
|
+
"minItems": 2,
|
|
44
|
+
"maxItems": 2
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AstBuilder.d.ts","sourceRoot":"","sources":["../../src/AstBuilder.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAGR,eAAe,EAaf,iBAAiB,EACjB,UAAU,EAGV,eAAe,EACf,QAAQ,EAMX,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAER,sBAAsB,EAgBtB,gBAAgB,EAChB,mBAAmB,EAGtB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAGH,oBAAoB,EACpB,oBAAoB,EAIvB,MAAM,6BAA6B,CAAC;AAMrC,OAAO,QAAQ,OAAO,CAAC;IACnB,SAAgB,KAAK,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC;CACtD;AASD,MAAM,CAAC,OAAO,OAAO,UAAU;;
|
|
1
|
+
{"version":3,"file":"AstBuilder.d.ts","sourceRoot":"","sources":["../../src/AstBuilder.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAGR,eAAe,EAaf,iBAAiB,EACjB,UAAU,EAGV,eAAe,EACf,QAAQ,EAMX,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAER,sBAAsB,EAgBtB,gBAAgB,EAChB,mBAAmB,EAGtB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAGH,oBAAoB,EACpB,oBAAoB,EAIvB,MAAM,6BAA6B,CAAC;AAMrC,OAAO,QAAQ,OAAO,CAAC;IACnB,SAAgB,KAAK,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC;CACtD;AASD,MAAM,CAAC,OAAO,OAAO,UAAU;;IAM3B,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,gBAAgB,GAAG,mBAAmB,GAAG,oBAAoB,GAAG,oBAAoB,GAAG,eAAe,CA4BvH;IAmBD,MAAM,CAAC,WAAW,CAAC,GAAG,EAAE,sBAAsB,GAAG,eAAe,CAK/D;IA6VD;;;;OAIG;IACH,MAAM,CAAC,sBAAsB,CACzB,GAAG,EAAE,MAAM,EACX,GAAG,GAAE,QAAiC,GACvC,iBAAiB,GAAG,IAAI,CAmB1B;IAED;;;;OAIG;IACH,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,GAAE,QAAiC,GAAG,UAAU,GAAG,IAAI,CAoCvF;CA2HJ"}
|
package/dist/src/AstBuilder.js
CHANGED
|
@@ -8,6 +8,7 @@ import PlurnkParseError from "./PlurnkParseError.js";
|
|
|
8
8
|
import PathSyntax from "./PathSyntax.js";
|
|
9
9
|
export default class AstBuilder {
|
|
10
10
|
static #SCHEME_PATTERN = /^[a-z][a-z0-9+.-]*:\/\//i;
|
|
11
|
+
static #RESOURCE_SELECTION_TAIL = /(<-?\d+(?:\.\d+)?(?:(?:-|, ?)-?\d+(?:\.\d+)?)*>)(:*)$/;
|
|
11
12
|
// Compile-only RFC 9535 admission using the runtime's JSONPath engine. {§matcher-prefix-claims}
|
|
12
13
|
static #JSONPATH = new JSONPathEnvironment();
|
|
13
14
|
static build(ctx) {
|
|
@@ -97,9 +98,8 @@ export default class AstBuilder {
|
|
|
97
98
|
return AstBuilder.#buildBuff(buff);
|
|
98
99
|
throw new Error("clientStatement context has no recognized alternative");
|
|
99
100
|
}
|
|
100
|
-
// LOOK / BUFF are
|
|
101
|
-
//
|
|
102
|
-
// client runtime's, not the grammar's.
|
|
101
|
+
// LOOK / BUFF are client-tier matcher observations. They share the tag slots
|
|
102
|
+
// but deliberately retain matcher bodies that exact-target READ forbids.
|
|
103
103
|
static #buildLook(ctx) {
|
|
104
104
|
const position = AstBuilder.#positionOf(ctx);
|
|
105
105
|
const slots = AstBuilder.#extractTagSlots(ctx.tagOpModifiers(), position);
|
|
@@ -128,11 +128,17 @@ export default class AstBuilder {
|
|
|
128
128
|
const position = AstBuilder.#positionOf(ctx);
|
|
129
129
|
const slots = AstBuilder.#extractTagSlots(ctx.tagOpModifiers(), position);
|
|
130
130
|
const raw = AstBuilder.#bodyTextOf(ctx);
|
|
131
|
+
const targetPath = slots.target?.kind === "url"
|
|
132
|
+
? slots.target.pathname
|
|
133
|
+
: slots.target?.raw;
|
|
134
|
+
if ((raw !== null && raw.trim() !== "") || (targetPath !== undefined && PathSyntax.hasGlob(targetPath))) {
|
|
135
|
+
throw new PlurnkParseError(position.line, position.column, "visitor", "READ requires one exact target with an empty body; use FIND for path globs or content matchers");
|
|
136
|
+
}
|
|
131
137
|
return {
|
|
132
138
|
op: "READ",
|
|
133
139
|
suffix: AstBuilder.#splitSuffix(ctx.OPEN_READ().getText(), "READ"),
|
|
134
140
|
...slots,
|
|
135
|
-
body:
|
|
141
|
+
body: null,
|
|
136
142
|
position,
|
|
137
143
|
};
|
|
138
144
|
}
|
|
@@ -423,8 +429,11 @@ export default class AstBuilder {
|
|
|
423
429
|
static parseResourceSelection(raw, pos = { line: 0, column: 0 }) {
|
|
424
430
|
if (raw.length === 0)
|
|
425
431
|
return null;
|
|
426
|
-
const markerMatch =
|
|
432
|
+
const markerMatch = AstBuilder.#RESOURCE_SELECTION_TAIL.exec(raw);
|
|
427
433
|
const markerText = markerMatch?.[1] ?? null;
|
|
434
|
+
if ((markerMatch?.[2].length ?? 0) > 0) {
|
|
435
|
+
throw new PlurnkParseError(pos.line, pos.column, "visitor", "COPY/MOVE destination scope must immediately precede the operation close; remove the extra `:` after the scope");
|
|
436
|
+
}
|
|
428
437
|
const pathText = markerText === null ? raw : raw.slice(0, -markerText.length);
|
|
429
438
|
const target = AstBuilder.parsePath(pathText, pos);
|
|
430
439
|
if (target === null)
|
|
@@ -537,9 +546,13 @@ export default class AstBuilder {
|
|
|
537
546
|
&& regex.detail.includes("Invalid flags supplied")
|
|
538
547
|
? " - use only ECMAScript flags after the closing `/`; escape a literal `/` inside the pattern as `\\/`"
|
|
539
548
|
: "";
|
|
549
|
+
// Quote the offending matcher so a multi-op emission's failure is
|
|
550
|
+
// unambiguous about WHICH body failed (a correct sibling regex must
|
|
551
|
+
// not take the blame for a broken one).
|
|
552
|
+
const excerpt = body.length > 80 ? `${body.slice(0, 80)}…` : body;
|
|
540
553
|
throw new PlurnkParseError(pos.line, pos.column, "visitor", regex.reason === "unclosed"
|
|
541
|
-
?
|
|
542
|
-
: `pattern leads with \`/\` but is not a valid \`/pattern/flags\` regex - ${regex.detail}${slashRecovery}
|
|
554
|
+
? `regex matcher must use \`/pattern/flags\`; this matcher has no closing \`/\`: \`${excerpt}\``
|
|
555
|
+
: `pattern leads with \`/\` but is not a valid \`/pattern/flags\` regex - ${regex.detail}${slashRecovery}: \`${excerpt}\``);
|
|
543
556
|
}
|
|
544
557
|
if (body.startsWith("$")) {
|
|
545
558
|
// Compile-only RFC 9535 admission through the shared json-p3 engine.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AstBuilder.js","sourceRoot":"","sources":["../../src/AstBuilder.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AstBuilder.js","sourceRoot":"","sources":["../../src/AstBuilder.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"JsonResult.d.ts","sourceRoot":"","sources":["../../src/JsonResult.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC;AAKnF,eAAO,MAAM,gBAAgB,UAAW,OAAO,aAAa,YAAY,KAAG,MAyB1E,CAAC"}
|