@poe-platform/safe-bash 0.1.53 → 0.1.55
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/dist/safe-bash/browser.d.ts +2 -0
- package/dist/safe-bash/browser.d.ts.map +1 -1
- package/dist/safe-bash/browser.js +3951 -874
- package/dist/safe-bash/browser.js.map +4 -4
- package/dist/safe-bash/commands/basic.d.ts.map +1 -1
- package/dist/safe-bash/commands/basic.js +7 -1
- package/dist/safe-bash/commands/basic.js.map +1 -1
- package/dist/safe-bash/commands/filesystem-requirements.d.ts +67 -0
- package/dist/safe-bash/commands/filesystem-requirements.d.ts.map +1 -0
- package/dist/safe-bash/commands/filesystem-requirements.js +81 -0
- package/dist/safe-bash/commands/filesystem-requirements.js.map +1 -0
- package/dist/safe-bash/commands/filesystem.d.ts.map +1 -1
- package/dist/safe-bash/commands/filesystem.js +106 -9
- package/dist/safe-bash/commands/filesystem.js.map +1 -1
- package/dist/safe-bash/commands/grep.d.ts.map +1 -1
- package/dist/safe-bash/commands/grep.js +3 -109
- package/dist/safe-bash/commands/grep.js.map +1 -1
- package/dist/safe-bash/commands/internal.d.ts +1 -0
- package/dist/safe-bash/commands/internal.d.ts.map +1 -1
- package/dist/safe-bash/commands/internal.js +22 -0
- package/dist/safe-bash/commands/internal.js.map +1 -1
- package/dist/safe-bash/commands/move.d.ts.map +1 -1
- package/dist/safe-bash/commands/move.js +21 -0
- package/dist/safe-bash/commands/move.js.map +1 -1
- package/dist/safe-bash/commands/network/curl.js +2 -0
- package/dist/safe-bash/commands/network/curl.js.map +1 -1
- package/dist/safe-bash/commands/network/output.d.ts.map +1 -1
- package/dist/safe-bash/commands/network/output.js +37 -33
- package/dist/safe-bash/commands/network/output.js.map +1 -1
- package/dist/safe-bash/commands/portable-requirements.d.ts +6 -0
- package/dist/safe-bash/commands/portable-requirements.d.ts.map +1 -0
- package/dist/safe-bash/commands/portable-requirements.js +18 -0
- package/dist/safe-bash/commands/portable-requirements.js.map +1 -0
- package/dist/safe-bash/commands/predicates.d.ts.map +1 -1
- package/dist/safe-bash/commands/predicates.js +9 -1
- package/dist/safe-bash/commands/predicates.js.map +1 -1
- package/dist/safe-bash/commands/regex-execution/client.d.ts +5 -67
- package/dist/safe-bash/commands/regex-execution/client.d.ts.map +1 -1
- package/dist/safe-bash/commands/regex-execution/client.js +13 -379
- package/dist/safe-bash/commands/regex-execution/client.js.map +1 -1
- package/dist/safe-bash/commands/regex-execution/portable.d.ts +71 -0
- package/dist/safe-bash/commands/regex-execution/portable.d.ts.map +1 -0
- package/dist/safe-bash/commands/regex-execution/portable.js +385 -0
- package/dist/safe-bash/commands/regex-execution/portable.js.map +1 -0
- package/dist/safe-bash/commands/regex-execution/protocol.js +1 -1
- package/dist/safe-bash/commands/regex-execution/protocol.js.map +1 -1
- package/dist/safe-bash/commands/regex-execution/provider.d.ts +24 -0
- package/dist/safe-bash/commands/regex-execution/provider.d.ts.map +1 -0
- package/dist/safe-bash/commands/regex-execution/provider.js +2 -0
- package/dist/safe-bash/commands/regex-execution/provider.js.map +1 -0
- package/dist/safe-bash/commands/regex-execution/public.d.ts +9 -0
- package/dist/safe-bash/commands/regex-execution/public.d.ts.map +1 -0
- package/dist/safe-bash/commands/regex-execution/public.js +6 -0
- package/dist/safe-bash/commands/regex-execution/public.js.map +1 -0
- package/dist/safe-bash/commands/search/glob.d.ts +1 -1
- package/dist/safe-bash/commands/search/glob.d.ts.map +1 -1
- package/dist/safe-bash/commands/search/glob.js +1 -1
- package/dist/safe-bash/commands/search/glob.js.map +1 -1
- package/dist/safe-bash/commands/search/grep.d.ts +4 -0
- package/dist/safe-bash/commands/search/grep.d.ts.map +1 -0
- package/dist/safe-bash/commands/search/grep.js +119 -0
- package/dist/safe-bash/commands/search/grep.js.map +1 -0
- package/dist/safe-bash/commands/search/matcher.d.ts +1 -1
- package/dist/safe-bash/commands/search/matcher.d.ts.map +1 -1
- package/dist/safe-bash/commands/search/matcher.js +1 -1
- package/dist/safe-bash/commands/search/matcher.js.map +1 -1
- package/dist/safe-bash/commands/search/output.d.ts +1 -1
- package/dist/safe-bash/commands/search/output.d.ts.map +1 -1
- package/dist/safe-bash/commands/search/output.js +8 -2
- package/dist/safe-bash/commands/search/output.js.map +1 -1
- package/dist/safe-bash/commands/search/portable.d.ts +14 -0
- package/dist/safe-bash/commands/search/portable.d.ts.map +1 -0
- package/dist/safe-bash/commands/search/portable.js +22 -0
- package/dist/safe-bash/commands/search/portable.js.map +1 -0
- package/dist/safe-bash/commands/search/requirements.d.ts +9 -0
- package/dist/safe-bash/commands/search/requirements.d.ts.map +1 -0
- package/dist/safe-bash/commands/search/requirements.js +72 -0
- package/dist/safe-bash/commands/search/requirements.js.map +1 -0
- package/dist/safe-bash/commands/search/rg-command.d.ts +5 -0
- package/dist/safe-bash/commands/search/rg-command.d.ts.map +1 -0
- package/dist/safe-bash/commands/search/rg-command.js +230 -0
- package/dist/safe-bash/commands/search/rg-command.js.map +1 -0
- package/dist/safe-bash/commands/search/rg.d.ts +2 -2
- package/dist/safe-bash/commands/search/rg.d.ts.map +1 -1
- package/dist/safe-bash/commands/search/rg.js +3 -216
- package/dist/safe-bash/commands/search/rg.js.map +1 -1
- package/dist/safe-bash/commands/search/shared.d.ts.map +1 -1
- package/dist/safe-bash/commands/search/shared.js +2 -0
- package/dist/safe-bash/commands/search/shared.js.map +1 -1
- package/dist/safe-bash/commands/search/walk.d.ts +1 -1
- package/dist/safe-bash/commands/search/walk.d.ts.map +1 -1
- package/dist/safe-bash/commands/search/walk.js +8 -1
- package/dist/safe-bash/commands/search/walk.js.map +1 -1
- package/dist/safe-bash/commands/streams.d.ts.map +1 -1
- package/dist/safe-bash/commands/streams.js +52 -108
- package/dist/safe-bash/commands/streams.js.map +1 -1
- package/dist/safe-bash/commands/text-programs/sed.d.ts.map +1 -1
- package/dist/safe-bash/commands/text-programs/sed.js +23 -14
- package/dist/safe-bash/commands/text-programs/sed.js.map +1 -1
- package/dist/safe-bash/commands/text-programs/shared.d.ts.map +1 -1
- package/dist/safe-bash/commands/text-programs/shared.js +3 -5
- package/dist/safe-bash/commands/text-programs/shared.js.map +1 -1
- package/dist/safe-bash/commands/text.d.ts.map +1 -1
- package/dist/safe-bash/commands/text.js +22 -4
- package/dist/safe-bash/commands/text.js.map +1 -1
- package/dist/safe-bash/contracts/command-requirements.d.ts +22 -0
- package/dist/safe-bash/contracts/command-requirements.d.ts.map +1 -0
- package/dist/safe-bash/contracts/command-requirements.js +47 -0
- package/dist/safe-bash/contracts/command-requirements.js.map +1 -0
- package/dist/safe-bash/contracts/command.d.ts +2 -0
- package/dist/safe-bash/contracts/command.d.ts.map +1 -1
- package/dist/safe-bash/contracts/command.js.map +1 -1
- package/dist/safe-bash/contracts/filesystem-output.d.ts +12 -0
- package/dist/safe-bash/contracts/filesystem-output.d.ts.map +1 -0
- package/dist/safe-bash/contracts/filesystem-output.js +160 -0
- package/dist/safe-bash/contracts/filesystem-output.js.map +1 -0
- package/dist/safe-bash/contracts/index.d.ts +1 -0
- package/dist/safe-bash/contracts/index.d.ts.map +1 -1
- package/dist/safe-bash/contracts/index.js +1 -0
- package/dist/safe-bash/contracts/index.js.map +1 -1
- package/dist/safe-bash/contracts/io.d.ts +2 -0
- package/dist/safe-bash/contracts/io.d.ts.map +1 -1
- package/dist/safe-bash/contracts/io.js +2 -0
- package/dist/safe-bash/contracts/io.js.map +1 -1
- package/dist/safe-bash/contracts/output.d.ts +1 -0
- package/dist/safe-bash/contracts/output.d.ts.map +1 -1
- package/dist/safe-bash/contracts/output.js +6 -1
- package/dist/safe-bash/contracts/output.js.map +1 -1
- package/dist/safe-bash/index.d.ts +2 -1
- package/dist/safe-bash/index.d.ts.map +1 -1
- package/dist/safe-bash/index.js +2 -0
- package/dist/safe-bash/index.js.map +1 -1
- package/dist/safe-bash/shell/runtime.d.ts +7 -2
- package/dist/safe-bash/shell/runtime.d.ts.map +1 -1
- package/dist/safe-bash/shell/runtime.js +247 -185
- package/dist/safe-bash/shell/runtime.js.map +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../src/commands/text-programs/shared.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAgE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../src/commands/text-programs/shared.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"text.d.ts","sourceRoot":"","sources":["../../src/commands/text.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiD,KAAK,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"text.d.ts","sourceRoot":"","sources":["../../src/commands/text.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiD,KAAK,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAuH9G,wBAAgB,YAAY,IAAI,iBAAiB,EAAE,CAyPlD"}
|
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
import { FsError } from "../contracts/index.js";
|
|
2
|
-
import { bufferLimit, concatenate, define, diagnostic, encoder, input, integer, lines, options, output, pathOf, requireOperands, UsageError, value } from "./internal.js";
|
|
2
|
+
import { assertInputRequirements, bufferLimit, concatenate, define, diagnostic, encoder, input, integer, lines, options, output, pathOf, requireOperands, UsageError, value } from "./internal.js";
|
|
3
|
+
import { assertCommandRequirements } from "../contracts/command-requirements.js";
|
|
4
|
+
import { inputRequirements, textOutputRequirements } from "./portable-requirements.js";
|
|
5
|
+
async function admitTextOutput(context, destination) {
|
|
6
|
+
if (destination === undefined)
|
|
7
|
+
return;
|
|
8
|
+
assertCommandRequirements(context, textOutputRequirements, ["output"]);
|
|
9
|
+
if (context.fs.capabilitiesFor)
|
|
10
|
+
assertCommandRequirements(context, textOutputRequirements, ["output"], await context.fs.capabilitiesFor(pathOf(context, destination), { signal: context.signal }));
|
|
11
|
+
}
|
|
3
12
|
function compareBytes(left, right) { return Buffer.compare(left, right); }
|
|
4
13
|
function fold(bytes) { return bytes.map(byte => byte >= 97 && byte <= 122 ? byte - 32 : byte); }
|
|
5
14
|
function parseNumeric(bytes) {
|
|
@@ -72,9 +81,12 @@ async function emitRecords(context, records, destination) {
|
|
|
72
81
|
await output(context, bytes);
|
|
73
82
|
return;
|
|
74
83
|
}
|
|
75
|
-
|
|
84
|
+
await admitTextOutput(context, destination);
|
|
85
|
+
if (context.fs.writeStream && context.fs.capabilities.streamingWrite !== false)
|
|
76
86
|
await context.fs.writeStream(pathOf(context, destination), records, { signal: context.signal });
|
|
77
87
|
else {
|
|
88
|
+
if (context.fs.capabilities.write === false)
|
|
89
|
+
throw new FsError("ENOTSUP", { syscall: "writeFile", path: pathOf(context, destination) });
|
|
78
90
|
let size = 0;
|
|
79
91
|
const chunks = [];
|
|
80
92
|
for await (const bytes of records) {
|
|
@@ -122,6 +134,9 @@ export function textCommands() {
|
|
|
122
134
|
return [
|
|
123
135
|
define("sort", async (context) => {
|
|
124
136
|
const parsed = options(context.args, "nrfbuszt:k:o:c", { "numeric-sort": "n", reverse: "r", "ignore-case": "f", "ignore-leading-blanks": "b", unique: "u", stable: "s", "zero-terminated": "z", "field-separator": "t", key: "k", output: "o", check: "c" });
|
|
137
|
+
await assertInputRequirements(context, parsed.operands);
|
|
138
|
+
if (!parsed.flags.has("c"))
|
|
139
|
+
await admitTextOutput(context, value(parsed, "o"));
|
|
125
140
|
const separatorText = value(parsed, "t");
|
|
126
141
|
if (separatorText !== undefined && encoder.encode(separatorText).length !== 1)
|
|
127
142
|
throw new UsageError("field separator must be one byte");
|
|
@@ -270,6 +285,8 @@ export function textCommands() {
|
|
|
270
285
|
define("uniq", async (context) => {
|
|
271
286
|
const parsed = options(context.args, "cduif:s:w:z", { count: "c", repeated: "d", unique: "u", "ignore-case": "i", "skip-fields": "f", "skip-chars": "s", "check-chars": "w", "zero-terminated": "z" });
|
|
272
287
|
requireOperands(parsed.operands, 0, 2);
|
|
288
|
+
await assertInputRequirements(context, parsed.operands.slice(0, 1));
|
|
289
|
+
await admitTextOutput(context, parsed.operands[1]);
|
|
273
290
|
const skipFields = integer(value(parsed, "f") ?? "0");
|
|
274
291
|
const skipCharacters = integer(value(parsed, "s") ?? "0");
|
|
275
292
|
const width = value(parsed, "w") === undefined ? Infinity : integer(value(parsed, "w"));
|
|
@@ -316,6 +333,7 @@ export function textCommands() {
|
|
|
316
333
|
}),
|
|
317
334
|
define("cut", async (context) => {
|
|
318
335
|
const parsed = options(context.args, "b:c:f:d:szo:C", { bytes: "b", characters: "c", fields: "f", delimiter: "d", "only-delimited": "s", "zero-terminated": "z", "output-delimiter": "o", complement: "C" });
|
|
336
|
+
await assertInputRequirements(context, parsed.operands);
|
|
319
337
|
const modes = ["b", "c", "f"].filter(mode => parsed.flags.has(mode));
|
|
320
338
|
if (modes.length !== 1)
|
|
321
339
|
throw new UsageError("exactly one byte, character, or field list is required");
|
|
@@ -346,7 +364,7 @@ export function textCommands() {
|
|
|
346
364
|
let bytes;
|
|
347
365
|
if (mode === "f") {
|
|
348
366
|
const record = Buffer.from(line.bytes.buffer, line.bytes.byteOffset, line.bytes.byteLength);
|
|
349
|
-
const separator =
|
|
367
|
+
const separator = Buffer.from(delimiter);
|
|
350
368
|
let boundary = record.indexOf(separator);
|
|
351
369
|
if (boundary < 0) {
|
|
352
370
|
if (parsed.flags.has("s"))
|
|
@@ -423,6 +441,6 @@ export function textCommands() {
|
|
|
423
441
|
}
|
|
424
442
|
return { exitCode };
|
|
425
443
|
}),
|
|
426
|
-
];
|
|
444
|
+
].map(command => ({ ...command, filesystemRequirements: command.name === "cut" ? inputRequirements : textOutputRequirements }));
|
|
427
445
|
}
|
|
428
446
|
//# sourceMappingURL=text.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"text.js","sourceRoot":"","sources":["../../src/commands/text.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"text.js","sourceRoot":"","sources":["../../src/commands/text.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAgE,MAAM,uBAAuB,CAAC;AAC9G,OAAO,EAAE,uBAAuB,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACnM,OAAO,EAAE,yBAAyB,EAAE,MAAM,sCAAsC,CAAC;AACjF,OAAO,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAEvF,KAAK,UAAU,eAAe,CAAC,OAAuB,EAAE,WAA+B;IACrF,IAAI,WAAW,KAAK,SAAS;QAAE,OAAO;IACtC,yBAAyB,CAAC,OAAO,EAAE,sBAAsB,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IACvE,IAAI,OAAO,CAAC,EAAE,CAAC,eAAe;QAAE,yBAAyB,CAAC,OAAO,EAAE,sBAAsB,EAAE,CAAC,QAAQ,CAAC,EACnG,MAAM,OAAO,CAAC,EAAE,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;AAChG,CAAC;AAED,SAAS,YAAY,CAAC,IAAgB,EAAE,KAAiB,IAAY,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;AAC1G,SAAS,IAAI,CAAC,KAAiB,IAAgB,OAAO,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,EAAE,IAAI,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAIxH,SAAS,YAAY,CAAC,KAAiB;IACrC,MAAM,KAAK,GAAG,qCAAqC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAE,CAAC;IACjG,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC;IAC1D,MAAM,QAAQ,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACtD,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,KAAK,GAAG,IAAI,QAAQ,KAAK,EAAE,CAAC,EAAE,CAAC;AAC/F,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAmB,EAAE,MAAoB;IACrE,IAAI,KAAK,CAAC,QAAQ,KAAK,MAAM,CAAC,QAAQ;QAAE,OAAO,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACvE,IAAI,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;IACxD,IAAI,CAAC,QAAQ;QAAE,QAAQ,GAAG,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/F,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACtE,MAAM,aAAa,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QACxD,MAAM,cAAc,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAC1D,QAAQ,GAAG,aAAa,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1F,CAAC;IACD,OAAO,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC;AAC/C,CAAC;AAED,SAAS,cAAc,CAAC,IAAgB,EAAE,KAAiB;IACzD,OAAO,oBAAoB,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;AACvE,CAAC;AAID,SAAS,OAAO,CAAC,aAAqB;IACpC,MAAM,KAAK,GAAG,2EAA2E,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC9G,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,UAAU,CAAC,gBAAgB,aAAa,GAAG,CAAC,CAAC;IACnE,OAAO;QACL,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAE,EAAE,CAAC,CAAC,EAAE,cAAc,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC;QACzE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QAChE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QACzE,KAAK,EAAE,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;KACpD,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CAAC,IAAgB,EAAE,GAAY,EAAE,SAA6B,EAAE,MAAe;IAC9F,MAAM,MAAM,GAAqC,EAAE,CAAC;IACpD,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC5B,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,IAAI,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE;YAAE,IAAI,MAAM,KAAK,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,SAAS,EAAE,CAAC;gBAC/G,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC;gBAAC,KAAK,GAAG,MAAM,GAAG,CAAC,CAAC;YAC1D,CAAC;IACH,CAAC;SAAM,CAAC;QACN,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,OAAO,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;YAC5B,MAAM,OAAO,GAAG,MAAM,CAAC;YACvB,OAAO,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAAE,MAAM,EAAE,CAAC;YACrF,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;YACxC,IAAI,MAAM,KAAK,IAAI,CAAC,MAAM;gBAAE,MAAM;YAClC,OAAO,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;gBAAE,MAAM,EAAE,CAAC;YACnF,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC;QACtC,CAAC;IACH,CAAC;IACD,MAAM,KAAK,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,cAAc,GAAG,CAAC,CAAC;IACrF,MAAM,IAAI,GAAG,GAAG,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;IACrE,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM;QAChF,CAAC,CAAC,GAAG,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,YAAY,CAAC,CAAC;IAClG,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;AAC3E,CAAC;AAED,KAAK,UAAU,WAAW,CAAC,OAAuB,EAAE,OAAmB,EAAE,WAAoB;IAC3F,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;QAAC,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,OAAO;YAAE,MAAM,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAAC,OAAO;IAAC,CAAC;IAC3G,MAAM,eAAe,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAC5C,IAAI,OAAO,CAAC,EAAE,CAAC,WAAW,IAAI,OAAO,CAAC,EAAE,CAAC,YAAY,CAAC,cAAc,KAAK,KAAK;QAAE,MAAM,OAAO,CAAC,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;SAC3K,CAAC;QACJ,IAAI,OAAO,CAAC,EAAE,CAAC,YAAY,CAAC,KAAK,KAAK,KAAK;YAAE,MAAM,IAAI,OAAO,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC;QACxI,IAAI,IAAI,GAAG,CAAC,CAAC;QACb,MAAM,MAAM,GAAiB,EAAE,CAAC;QAChC,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAClC,IAAI,IAAI,KAAK,CAAC,MAAM,CAAC;YACrB,IAAI,IAAI,GAAG,WAAW;gBAAE,MAAM,IAAI,OAAO,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,8BAA8B,EAAE,CAAC,CAAC;YAChG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC;QACD,MAAM,OAAO,CAAC,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAClH,CAAC;AACH,CAAC;AAED,KAAK,UAAU,kBAAkB,CAAC,MAAkB,EAAE,SAAiB,EAAE,MAAmC;IAC1G,IAAI,OAAO,GAAiB,EAAE,CAAC;IAC/B,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QACjC,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC;YACrD,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,SAAS;gBAAE,SAAS;YAC1C,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YAC3C,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC;YACpB,IAAI,IAAI,GAAG,WAAW;gBAAE,MAAM,IAAI,OAAO,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,4BAA4B,EAAE,CAAC,CAAC;YAC9F,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAAC,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;YAAC,CAAC;;gBAC1E,MAAM,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;YAClC,OAAO,GAAG,EAAE,CAAC;YAAC,IAAI,GAAG,CAAC,CAAC;YAAC,KAAK,GAAG,MAAM,GAAG,CAAC,CAAC;QAC7C,CAAC;QACD,IAAI,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;YACzB,OAAO,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACpD,IAAI,IAAI,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC;YAC7B,IAAI,IAAI,GAAG,WAAW;gBAAE,MAAM,IAAI,OAAO,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,4BAA4B,EAAE,CAAC,CAAC;QAChG,CAAC;IACH,CAAC;IACD,IAAI,IAAI;QAAE,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,UAAU,YAAY;IAC1B,OAAO;QACL,MAAM,CAAC,MAAM,EAAE,KAAK,EAAC,OAAO,EAAC,EAAE;YAC7B,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,gBAAgB,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,EAAE,uBAAuB,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,iBAAiB,EAAE,GAAG,EAAE,iBAAiB,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;YAC7P,MAAM,uBAAuB,CAAC,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;YACxD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC;gBAAE,MAAM,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;YAC/E,MAAM,aAAa,GAAG,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YACzC,IAAI,aAAa,KAAK,SAAS,IAAI,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,MAAM,KAAK,CAAC;gBAAE,MAAM,IAAI,UAAU,CAAC,kCAAkC,CAAC,CAAC;YACxI,MAAM,SAAS,GAAG,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7F,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACzD,MAAM,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;YACrF,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACjD,IAAI,cAAc,GAAG,cAAc,CAAC;YACpC,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;gBACnG,MAAM,aAAa,GAAG,IAAI,GAAG,EAA4B,CAAC;gBAC1D,IAAI,aAAa,GAAG,CAAC,CAAC;gBACtB,MAAM,YAAY,GAAG,CAAC,KAAiB,EAAgB,EAAE;oBACvD,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;oBACxC,IAAI,MAAM,KAAK,SAAS;wBAAE,OAAO,MAAM,CAAC;oBACxC,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;oBAChC,MAAM,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;oBACpC,IAAI,aAAa,CAAC,IAAI,IAAI,MAAM,IAAI,MAAM,GAAG,SAAS,GAAG,aAAa;wBAAE,OAAO,YAAY,CAAC,KAAK,CAAC,CAAC;oBACnG,MAAM,WAAW,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;oBACxC,aAAa,CAAC,GAAG,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;oBACtC,aAAa,IAAI,MAAM,CAAC;oBACxB,OAAO,WAAW,CAAC;gBACrB,CAAC,CAAC;gBACF,cAAc,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,oBAAoB,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;YAClG,CAAC;YACD,IAAI,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,IAAgB,EAAE,KAAiB,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,IAAgB,EAAE,KAAiB,EAAE,EAAE;gBACjJ,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC;oBACnD,MAAM,KAAK,GAAG,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;oBACzD,IAAI,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;oBACxE,IAAI,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;oBAC3E,IAAI,CAAC,GAAG,IAAI,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;wBAC3B,MAAM,IAAI,GAAG,CAAC,KAAiB,EAAE,EAAE,GAAG,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC,OAAO,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE;4BAAE,MAAM,EAAE,CAAC,CAAC,OAAO,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;wBACrJ,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;wBAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;oBAC7C,CAAC;oBACD,IAAI,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;wBAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;wBAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;oBAAC,CAAC;oBACnE,IAAI,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;oBAC1F,IAAI,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC;wBAAE,MAAM,GAAG,CAAC,MAAM,CAAC;oBACrC,IAAI,MAAM;wBAAE,OAAO,MAAM,CAAC;gBAC5B,CAAC;gBACD,OAAO,CAAC,CAAC;YACX,CAAC,CAAC;YACF,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAC3D,MAAM,eAAe,GAAG,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;YACjF,IAAI,UAAU,IAAI,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC5H,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAA4B,CAAC;gBAC/D,IAAI,gBAAgB,GAAG,CAAC,CAAC;gBACzB,MAAM,iBAAiB,GAAG,CAAC,MAAkB,EAAgB,EAAE;oBAC7D,MAAM,MAAM,GAAG,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBAC9C,IAAI,MAAM,KAAK,SAAS;wBAAE,OAAO,MAAM,CAAC;oBACxC,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;oBAChC,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;oBAC7D,MAAM,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;oBACpC,IAAI,kBAAkB,CAAC,IAAI,IAAI,MAAM,IAAI,MAAM,GAAG,SAAS,GAAG,gBAAgB;wBAAE,OAAO,YAAY,CAAC,KAAK,CAAC,CAAC;oBAC3G,MAAM,WAAW,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;oBACxC,kBAAkB,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;oBAC5C,gBAAgB,IAAI,MAAM,CAAC;oBAC3B,OAAO,WAAW,CAAC;gBACrB,CAAC,CAAC;gBACF,UAAU,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;oBAC3B,MAAM,MAAM,GAAG,oBAAoB,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;oBACvF,OAAO,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;gBACrD,CAAC,CAAC;YACJ,CAAC;YACD,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAgB,EAAE,KAAiB,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC;mBACjG,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACzH,MAAM,OAAO,GAAiB,EAAE,CAAC;YACjC,IAAI,IAAI,GAAG,CAAC,CAAC;YACb,MAAM,QAAQ,GAAW,CAAC,CAAC;YAC3B,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACjD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;gBACpE,IAAI,CAAC;oBACH,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;wBAC3B,MAAM,kBAAkB,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,EAAE;4BAChE,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;4BAChC,IAAI,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;4BACzB,IAAI,IAAI,GAAG,WAAW;gCAAE,MAAM,IAAI,OAAO,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,4BAA4B,EAAE,CAAC,CAAC;4BAC9F,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;wBACtB,CAAC,CAAC,CAAC;wBACH,SAAS;oBACX,CAAC;oBACD,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,SAAS,CAAC,EAAE,CAAC;wBAChE,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;wBAChC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;wBAC9B,IAAI,IAAI,GAAG,WAAW;4BAAE,MAAM,IAAI,OAAO,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,4BAA4B,EAAE,CAAC,CAAC;wBAC9F,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;4BACpK,MAAM,UAAU,CAAC,OAAO,EAAE,IAAI,KAAK,CAAC,sBAAsB,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;4BACjF,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;wBACzB,CAAC;wBACD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBAC3B,CAAC;gBACH,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBAAC,MAAM,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;oBAAC,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;gBAAC,CAAC;YAC/E,CAAC;YACD,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC;gBAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;YAC/C,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACtB,MAAM,MAAM,GAAG,CAAC,KAAK,SAAS,CAAC;gBAC7B,IAAI,QAAgC,CAAC;gBACrC,IAAI,MAAM,GAAG,IAAI,UAAU,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC;gBACvC,IAAI,IAAI,GAAG,CAAC,CAAC;gBACb,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;oBAC7B,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;oBAChC,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,QAAQ,KAAK,SAAS,IAAI,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC;wBAAE,SAAS;oBACpG,IAAI,MAAM,GAAG,CAAC,CAAC;oBACf,OAAO,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;wBAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;wBACtE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC;wBAC3D,MAAM,IAAI,MAAM,CAAC;wBAAC,IAAI,IAAI,MAAM,CAAC;wBACjC,IAAI,IAAI,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC;4BAAC,MAAM,MAAM,CAAC;4BAAC,MAAM,GAAG,IAAI,UAAU,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC;4BAAC,IAAI,GAAG,CAAC,CAAC;wBAAC,CAAC;oBAC7F,CAAC;oBACD,MAAM,CAAC,IAAI,EAAE,CAAC,GAAG,SAAS,CAAC;oBAC3B,IAAI,IAAI,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC;wBAAC,MAAM,MAAM,CAAC;wBAAC,MAAM,GAAG,IAAI,UAAU,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC;wBAAC,IAAI,GAAG,CAAC,CAAC;oBAAC,CAAC;oBAC3F,QAAQ,GAAG,MAAM,CAAC;gBACpB,CAAC;gBACD,IAAI,IAAI;oBAAE,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;YAC3C,CAAC,CAAC,EAAE,CAAC;YACL,MAAM,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;YACvD,OAAO,EAAE,QAAQ,EAAE,CAAC;QACtB,CAAC,CAAC;QACF,MAAM,CAAC,MAAM,EAAE,KAAK,EAAC,OAAO,EAAC,EAAE;YAC7B,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,aAAa,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,EAAE,iBAAiB,EAAE,GAAG,EAAE,CAAC,CAAC;YACvM,eAAe,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;YACvC,MAAM,uBAAuB,CAAC,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YACpE,MAAM,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;YACnD,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC;YACtD,MAAM,cAAc,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC;YAC1D,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,CAAE,CAAC,CAAC;YACzF,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACjD,MAAM,GAAG,GAAG,CAAC,KAAiB,EAAE,EAAE;gBAChC,IAAI,MAAM,GAAG,CAAC,CAAC;gBACf,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,UAAU,EAAE,KAAK,EAAE,EAAE,CAAC;oBAChD,OAAO,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;wBAAE,MAAM,EAAE,CAAC;oBACxF,OAAO,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;wBAAE,MAAM,EAAE,CAAC;gBACxF,CAAC;gBACD,MAAM,IAAI,cAAc,CAAC;gBACzB,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC;gBACvF,OAAO,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YACvD,CAAC,CAAC;YACF,MAAM,OAAO,GAAG,CAAC,KAAK,SAAS,CAAC;gBAC9B,IAAI,QAAgC,CAAC;gBACrC,IAAI,WAAmC,CAAC;gBACxC,IAAI,KAAK,GAAG,CAAC,CAAC;gBACd,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC;gBACxG,MAAM,MAAM,GAAG,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,QAAS,EAAE,UAAU,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gBAC7J,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,EAAE,CAAC;oBAC9E,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;oBAChC,MAAM,UAAU,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBACnC,IAAI,WAAW,IAAI,YAAY,CAAC,WAAW,EAAE,UAAU,CAAC,KAAK,CAAC;wBAAE,KAAK,EAAE,CAAC;yBACnE,CAAC;wBACJ,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,EAAE;4BAAE,MAAM,MAAM,EAAE,CAAC;wBACzD,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC;wBAAC,WAAW,GAAG,UAAU,CAAC;wBAAC,KAAK,GAAG,CAAC,CAAC;oBAC7D,CAAC;gBACH,CAAC;gBACD,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,EAAE;oBAAE,MAAM,MAAM,EAAE,CAAC;YAC3D,CAAC,CAAC,EAAE,CAAC;YACL,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,SAAS,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,GAAG;mBAC7D,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAE,CAAC,KAAK,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAAE,MAAM,IAAI,UAAU,CAAC,0CAA0C,CAAC,CAAC;YACpJ,MAAM,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;YACxD,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;QACzB,CAAC,CAAC;QACF,MAAM,CAAC,KAAK,EAAE,KAAK,EAAC,OAAO,EAAC,EAAE;YAC5B,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,eAAe,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,gBAAgB,EAAE,GAAG,EAAE,iBAAiB,EAAE,GAAG,EAAE,kBAAkB,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC;YAC7M,MAAM,uBAAuB,CAAC,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;YACxD,MAAM,KAAK,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;YACrE,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;gBAAE,MAAM,IAAI,UAAU,CAAC,wDAAwD,CAAC,CAAC;YACvG,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC;YACvB,IAAI,IAAI,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBAAE,MAAM,IAAI,UAAU,CAAC,sCAAsC,CAAC,CAAC;YACnI,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,EAAE,IAAI,CAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;gBAC7D,MAAM,KAAK,GAAG,yCAAyC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACnE,IAAI,CAAC,KAAK;oBAAE,MAAM,IAAI,UAAU,CAAC,kBAAkB,IAAI,GAAG,CAAC,CAAC;gBAC5D,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACjE,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC/I,IAAI,GAAG,GAAG,KAAK;oBAAE,MAAM,IAAI,UAAU,CAAC,qBAAqB,IAAI,GAAG,CAAC,CAAC;gBACpE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;YACxB,CAAC,CAAC,CAAC;YACH,MAAM,QAAQ,GAAG,CAAC,QAAgB,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,IAAI,KAAK,CAAC,KAAK,IAAI,QAAQ,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACxI,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,IAAI,CAAC;YAC7C,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC,MAAM,KAAK,CAAC;gBAAE,MAAM,IAAI,UAAU,CAAC,sCAAsC,CAAC,CAAC;YAC9F,MAAM,eAAe,GAAG,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YAC3C,MAAM,eAAe,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACvD,IAAI,QAAQ,GAAG,CAAC,CAAC;YACjB,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;gBACpE,IAAI,CAAC;oBACH,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,eAAe,CAAC,EAAE,CAAC;wBACtE,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;wBAChC,IAAI,KAAiB,CAAC;wBACtB,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;4BACjB,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;4BAC5F,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;4BACzC,IAAI,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;4BACzC,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;gCACjB,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC;oCAAE,SAAS;gCACpC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;4BACrB,CAAC;iCAAM,CAAC;gCACN,MAAM,MAAM,GAAiB,EAAE,CAAC;gCAChC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,eAAe,IAAI,SAAS,CAAC,CAAC;gCAC5D,IAAI,KAAK,GAAG,CAAC,CAAC;gCACd,IAAI,KAAK,GAAG,CAAC,CAAC;gCACd,IAAI,OAAO,GAAG,KAAK,CAAC;gCACpB,OAAO,IAAI,EAAE,CAAC;oCACZ,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC;wCACtB,IAAI,OAAO;4CAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;wCACjC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;wCAC7E,OAAO,GAAG,IAAI,CAAC;oCACjB,CAAC;oCACD,IAAI,QAAQ,GAAG,CAAC;wCAAE,MAAM;oCACxB,KAAK,GAAG,QAAQ,GAAG,SAAS,CAAC,MAAM,CAAC;oCACpC,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;gCAC9C,CAAC;gCACD,KAAK,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;4BAC9B,CAAC;wBACH,CAAC;6BAAM,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;4BACxB,MAAM,MAAM,GAAiB,EAAE,CAAC;4BAChC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC;4BACf,IAAI,OAAO,GAAG,KAAK,CAAC;4BACpB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;gCACxD,MAAM,QAAQ,GAAG,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,QAAQ,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;gCAClE,IAAI,QAAQ,IAAI,KAAK,GAAG,CAAC;oCAAE,KAAK,GAAG,KAAK,CAAC;gCACzC,IAAI,CAAC,QAAQ,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;oCAC5B,IAAI,OAAO,IAAI,eAAe,KAAK,SAAS;wCAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC;oCAC3F,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;oCAAC,OAAO,GAAG,IAAI,CAAC;oCAAC,KAAK,GAAG,CAAC,CAAC,CAAC;gCAC7E,CAAC;4BACH,CAAC;4BACD,KAAK,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;wBAC9B,CAAC;6BAAM,CAAC;4BACN,MAAM,IAAI,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;4BAClD,MAAM,MAAM,GAAa,EAAE,CAAC;4BAC5B,IAAI,KAAK,GAAG,CAAC,CAAC;4BACd,IAAI,MAAM,GAAG,CAAC,CAAC;4BACf,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC;4BACf,KAAK,MAAM,SAAS,IAAI,IAAI,EAAE,CAAC;gCAC7B,MAAM,QAAQ,GAAG,QAAQ,CAAC,EAAE,KAAK,CAAC,CAAC;gCACnC,IAAI,QAAQ,IAAI,KAAK,GAAG,CAAC;oCAAE,KAAK,GAAG,MAAM,CAAC;gCAC1C,IAAI,CAAC,QAAQ,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;oCAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;oCAAC,KAAK,GAAG,CAAC,CAAC,CAAC;gCAAC,CAAC;gCACpF,MAAM,IAAI,SAAS,CAAC,MAAM,CAAC;4BAC7B,CAAC;4BACD,IAAI,KAAK,IAAI,CAAC;gCAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;4BAC/C,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC,CAAC;wBAC7D,CAAC;wBACD,MAAM,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;wBAC7B,MAAM,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC;oBACxD,CAAC;gBACH,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBAAC,MAAM,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;oBAAC,QAAQ,GAAG,CAAC,CAAC;gBAAC,CAAC;YACrE,CAAC;YACD,OAAO,EAAE,QAAQ,EAAE,CAAC;QACtB,CAAC,CAAC;KACH,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,sBAAsB,EAAE,OAAO,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,sBAAsB,EAAE,CAAC,CAAC,CAAC;AAClI,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { CommandContext, CommandDefinition } from "./command.js";
|
|
2
|
+
import type { FileSystemCapabilities } from "./filesystem.js";
|
|
3
|
+
export interface CommandFileSystemRequirement {
|
|
4
|
+
readonly id: string;
|
|
5
|
+
readonly description: string;
|
|
6
|
+
readonly capabilities: readonly string[];
|
|
7
|
+
readonly anyOf?: readonly (readonly string[])[];
|
|
8
|
+
readonly mutates?: boolean;
|
|
9
|
+
}
|
|
10
|
+
export interface CommandModeSupport extends CommandFileSystemRequirement {
|
|
11
|
+
readonly status: "supported" | "unsupported" | "unknown";
|
|
12
|
+
readonly missing: readonly string[];
|
|
13
|
+
readonly unknown: readonly string[];
|
|
14
|
+
}
|
|
15
|
+
export interface CommandSupport {
|
|
16
|
+
readonly status: "supported" | "partial" | "unsupported";
|
|
17
|
+
readonly declared: boolean;
|
|
18
|
+
readonly modes: readonly CommandModeSupport[];
|
|
19
|
+
}
|
|
20
|
+
export declare function evaluateCommandSupport(command: Pick<CommandDefinition, "filesystemRequirements"> | CommandDefinition, capabilities: FileSystemCapabilities): CommandSupport;
|
|
21
|
+
export declare function assertCommandRequirements(context: Pick<CommandContext, "fs" | "command" | "signal">, requirements: readonly CommandFileSystemRequirement[], selected: readonly string[], capabilities?: FileSystemCapabilities): void;
|
|
22
|
+
//# sourceMappingURL=command-requirements.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command-requirements.d.ts","sourceRoot":"","sources":["../../src/contracts/command-requirements.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACtE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAG9D,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,CAAC;IAChD,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,kBAAmB,SAAQ,4BAA4B;IACtE,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG,aAAa,GAAG,SAAS,CAAC;IACzD,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;CACrC;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG,SAAS,GAAG,aAAa,CAAC;IACzD,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,SAAS,kBAAkB,EAAE,CAAC;CAC/C;AAsBD,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAAE,wBAAwB,CAAC,GAAG,iBAAiB,EAC9E,YAAY,EAAE,sBAAsB,GACnC,cAAc,CAQhB;AAED,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,GAAG,SAAS,GAAG,QAAQ,CAAC,EAC1D,YAAY,EAAE,SAAS,4BAA4B,EAAE,EACrD,QAAQ,EAAE,SAAS,MAAM,EAAE,EAC3B,YAAY,GAAE,sBAAgD,GAC7D,IAAI,CAaN"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { FsError } from "./errors.js";
|
|
2
|
+
function evaluateMode(requirement, capabilities) {
|
|
3
|
+
const missing = requirement.capabilities.filter(name => capabilities[name] === false);
|
|
4
|
+
const unknown = requirement.capabilities.filter(name => capabilities[name] === undefined);
|
|
5
|
+
if (requirement.mutates && capabilities.readOnly === true)
|
|
6
|
+
missing.push("readOnly");
|
|
7
|
+
const alternatives = requirement.anyOf;
|
|
8
|
+
if (alternatives && !alternatives.some(group => group.every(name => capabilities[name] === true))) {
|
|
9
|
+
if (alternatives.every(group => group.some(name => capabilities[name] === false))) {
|
|
10
|
+
missing.push(...alternatives.flatMap(group => group.filter(name => capabilities[name] === false)));
|
|
11
|
+
}
|
|
12
|
+
else {
|
|
13
|
+
unknown.push(...alternatives.filter(group => !group.some(name => capabilities[name] === false))
|
|
14
|
+
.flatMap(group => group.filter(name => capabilities[name] === undefined)));
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
return {
|
|
18
|
+
...requirement,
|
|
19
|
+
status: missing.length ? "unsupported" : unknown.length ? "unknown" : "supported",
|
|
20
|
+
missing: [...new Set(missing)], unknown: [...new Set(unknown)],
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
export function evaluateCommandSupport(command, capabilities) {
|
|
24
|
+
const modes = (command.filesystemRequirements ?? []).map(requirement => evaluateMode(requirement, capabilities));
|
|
25
|
+
return {
|
|
26
|
+
declared: command.filesystemRequirements !== undefined,
|
|
27
|
+
status: command.filesystemRequirements !== undefined && modes.every(mode => mode.status === "supported") ? "supported"
|
|
28
|
+
: modes.length && modes.every(mode => mode.status === "unsupported") ? "unsupported" : "partial",
|
|
29
|
+
modes,
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
export function assertCommandRequirements(context, requirements, selected, capabilities = context.fs.capabilities) {
|
|
33
|
+
context.signal.throwIfAborted();
|
|
34
|
+
for (const id of new Set(selected)) {
|
|
35
|
+
const requirement = requirements.find(mode => mode.id === id);
|
|
36
|
+
if (!requirement)
|
|
37
|
+
throw new TypeError(`Unknown filesystem requirement mode: ${id}`);
|
|
38
|
+
const support = evaluateMode(requirement, capabilities);
|
|
39
|
+
if (support.status === "unsupported") {
|
|
40
|
+
throw new FsError(support.missing.includes("readOnly") ? "EROFS" : "ENOTSUP", {
|
|
41
|
+
syscall: context.command,
|
|
42
|
+
message: `${requirement.description} requires unavailable filesystem capabilities: ${support.missing.join(", ")}`,
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=command-requirements.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command-requirements.js","sourceRoot":"","sources":["../../src/contracts/command-requirements.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { FileSystem } from "./filesystem.js";
|
|
2
|
+
import type { CommandFileSystemRequirement } from "./command-requirements.js";
|
|
2
3
|
import type { ByteSink, ByteSource } from "./io.js";
|
|
3
4
|
import { type ShellValue, type ValueAllocation } from "./value.js";
|
|
4
5
|
export interface CommandArguments {
|
|
@@ -49,6 +50,7 @@ export type AsyncCommandHandler = (context: CommandContext) => Promise<CommandRe
|
|
|
49
50
|
export interface CommandDefinition {
|
|
50
51
|
readonly name: string;
|
|
51
52
|
readonly description?: string;
|
|
53
|
+
readonly filesystemRequirements?: readonly CommandFileSystemRequirement[];
|
|
52
54
|
readonly execute: CommandHandler;
|
|
53
55
|
}
|
|
54
56
|
export interface RegisterCommandOptions {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../src/contracts/command.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../src/contracts/command.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../src/contracts/command.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../src/contracts/command.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { CommandContext } from "./command.js";
|
|
2
|
+
import { type ByteSink } from "./io.js";
|
|
3
|
+
export type FileOutputContext = Pick<CommandContext, "fs" | "signal" | "registerCleanup">;
|
|
4
|
+
export declare function bindFileOutputBudget(context: Pick<CommandContext, "registerCleanup">, budget: (sink: ByteSink) => ByteSink): void;
|
|
5
|
+
export interface FileOutput {
|
|
6
|
+
readonly sink: ByteSink;
|
|
7
|
+
readonly signal: AbortSignal;
|
|
8
|
+
finish(): Promise<void>;
|
|
9
|
+
abort(reason: unknown): Promise<void>;
|
|
10
|
+
}
|
|
11
|
+
export declare function openFileOutput(context: FileOutputContext, path: string, flag: "w" | "a", incremental?: () => Promise<ByteSink>): Promise<FileOutput>;
|
|
12
|
+
//# sourceMappingURL=filesystem-output.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"filesystem-output.d.ts","sourceRoot":"","sources":["../../src/contracts/filesystem-output.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEnD,OAAO,EAAgD,KAAK,QAAQ,EAAmB,MAAM,SAAS,CAAC;AAKvG,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAAC,cAAc,EAAE,IAAI,GAAG,QAAQ,GAAG,iBAAiB,CAAC,CAAC;AAE1F,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,IAAI,CAAC,cAAc,EAAE,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,QAAQ,GAAG,IAAI,CAGjI;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACxB,KAAK,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACvC;AAED,wBAAsB,cAAc,CAAC,OAAO,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,GAAG,EAAE,WAAW,CAAC,EAAE,MAAM,OAAO,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,CA8H1J"}
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
import { FsError } from "./errors.js";
|
|
2
|
+
import { createBytePipe, outputFailure } from "./io.js";
|
|
3
|
+
import { createOutputOperation } from "./output.js";
|
|
4
|
+
const filesystemOutputBudgets = new WeakMap();
|
|
5
|
+
export function bindFileOutputBudget(context, budget) {
|
|
6
|
+
if (!context.registerCleanup)
|
|
7
|
+
throw new TypeError("Shell output budgets require invocation cleanup ownership");
|
|
8
|
+
filesystemOutputBudgets.set(context.registerCleanup, budget);
|
|
9
|
+
}
|
|
10
|
+
export async function openFileOutput(context, path, flag, incremental) {
|
|
11
|
+
let pipe;
|
|
12
|
+
let task;
|
|
13
|
+
let completed = false;
|
|
14
|
+
let ended = false;
|
|
15
|
+
let closing = false;
|
|
16
|
+
let failure;
|
|
17
|
+
const consumer = new AbortController();
|
|
18
|
+
let writes = Promise.resolve();
|
|
19
|
+
let acknowledge;
|
|
20
|
+
let ready;
|
|
21
|
+
const opened = new Promise(resolve => { ready = resolve; });
|
|
22
|
+
const destination = {
|
|
23
|
+
[outputFailure]: reason => operation.abort(reason),
|
|
24
|
+
async write(chunk) {
|
|
25
|
+
if (closing)
|
|
26
|
+
throw new FsError("EBADF", { path, syscall: "write" });
|
|
27
|
+
const writing = writes.then(async () => {
|
|
28
|
+
for (let offset = 0; offset < chunk.byteLength; offset += 64 * 1024) {
|
|
29
|
+
const accepted = new Promise(resolve => { acknowledge = resolve; });
|
|
30
|
+
await pipe.writable.write(chunk.subarray(offset, offset + 64 * 1024));
|
|
31
|
+
await Promise.race([accepted, task]);
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
writes = writing.catch(() => { });
|
|
35
|
+
await writing;
|
|
36
|
+
},
|
|
37
|
+
};
|
|
38
|
+
const budget = context.registerCleanup && filesystemOutputBudgets.get(context.registerCleanup);
|
|
39
|
+
const operation = createOutputOperation(context, budget?.(destination) ?? destination);
|
|
40
|
+
operation.registerCleanup(async () => {
|
|
41
|
+
closing = true;
|
|
42
|
+
if (!completed) {
|
|
43
|
+
void operation.abort(operation.signal.aborted ? operation.signal.reason : new FsError("ECANCELED", { path, syscall: "write" }));
|
|
44
|
+
await pipe?.abort(operation.signal.reason);
|
|
45
|
+
}
|
|
46
|
+
await task?.catch(() => { });
|
|
47
|
+
await writes;
|
|
48
|
+
});
|
|
49
|
+
try {
|
|
50
|
+
pipe = createBytePipe({ highWaterMark: 1, signal: operation.signal });
|
|
51
|
+
let reading = false;
|
|
52
|
+
const source = {
|
|
53
|
+
[Symbol.asyncIterator]() {
|
|
54
|
+
return (async function* () {
|
|
55
|
+
reading = true;
|
|
56
|
+
ready();
|
|
57
|
+
for await (const chunk of pipe.readable) {
|
|
58
|
+
yield chunk;
|
|
59
|
+
acknowledge?.();
|
|
60
|
+
acknowledge = undefined;
|
|
61
|
+
}
|
|
62
|
+
operation.signal.throwIfAborted();
|
|
63
|
+
ended = true;
|
|
64
|
+
})();
|
|
65
|
+
},
|
|
66
|
+
};
|
|
67
|
+
task = (async () => {
|
|
68
|
+
const { fs } = context;
|
|
69
|
+
const signal = operation.signal;
|
|
70
|
+
signal.throwIfAborted();
|
|
71
|
+
const capabilities = await fs.capabilitiesFor?.(path, { signal }) ?? fs.capabilities;
|
|
72
|
+
if (capabilities.readOnly === true)
|
|
73
|
+
throw new FsError("EROFS", { path, syscall: "write" });
|
|
74
|
+
try {
|
|
75
|
+
await fs.access(path, 2, { signal });
|
|
76
|
+
}
|
|
77
|
+
catch (error) {
|
|
78
|
+
signal.throwIfAborted();
|
|
79
|
+
if (!(error instanceof FsError) || error.code !== "ENOENT" && error.code !== "ENOTSUP")
|
|
80
|
+
throw error;
|
|
81
|
+
}
|
|
82
|
+
signal.throwIfAborted();
|
|
83
|
+
const streaming = flag === "a" ? capabilities.streamingAppend ?? capabilities.streamingWrite : capabilities.streamingWrite;
|
|
84
|
+
if (!incremental && streaming !== false && fs.writeStream) {
|
|
85
|
+
try {
|
|
86
|
+
await fs.writeStream(path, source, { flag, signal });
|
|
87
|
+
if (!ended)
|
|
88
|
+
throw new FsError("EIO", { path, message: "Streaming writer returned before consuming output" });
|
|
89
|
+
return;
|
|
90
|
+
}
|
|
91
|
+
catch (error) {
|
|
92
|
+
signal.throwIfAborted();
|
|
93
|
+
if (reading || !(error instanceof FsError) || error.code !== "ENOTSUP")
|
|
94
|
+
throw error;
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
if (flag === "w" && capabilities.write === false)
|
|
98
|
+
throw new FsError("ENOTSUP", { path, syscall: "writeFile" });
|
|
99
|
+
if ((!incremental || flag === "a") && capabilities.append === false)
|
|
100
|
+
throw new FsError("ENOTSUP", { path, syscall: "appendFile" });
|
|
101
|
+
const sink = incremental ? await incremental() : await (async () => {
|
|
102
|
+
if (flag === "a")
|
|
103
|
+
await fs.appendFile(path, new Uint8Array(), { signal });
|
|
104
|
+
else
|
|
105
|
+
await fs.writeFile(path, new Uint8Array(), { flag, signal });
|
|
106
|
+
return { write: chunk => fs.appendFile(path, chunk, { signal }) };
|
|
107
|
+
})();
|
|
108
|
+
for await (const chunk of source) {
|
|
109
|
+
signal.throwIfAborted();
|
|
110
|
+
await sink.write(chunk);
|
|
111
|
+
}
|
|
112
|
+
})();
|
|
113
|
+
void task.catch(error => {
|
|
114
|
+
failure = { reason: error };
|
|
115
|
+
if (!operation.signal.aborted)
|
|
116
|
+
consumer.abort(error);
|
|
117
|
+
void operation.abort(error).catch(() => { });
|
|
118
|
+
});
|
|
119
|
+
await Promise.race([opened, task]);
|
|
120
|
+
operation.signal.throwIfAborted();
|
|
121
|
+
const write = async (chunk) => {
|
|
122
|
+
try {
|
|
123
|
+
await operation.output.write(chunk);
|
|
124
|
+
}
|
|
125
|
+
catch (error) {
|
|
126
|
+
throw failure ? failure.reason : error;
|
|
127
|
+
}
|
|
128
|
+
};
|
|
129
|
+
return {
|
|
130
|
+
signal: operation.signal,
|
|
131
|
+
sink: {
|
|
132
|
+
[outputFailure]: destination[outputFailure],
|
|
133
|
+
ownedOutput: { consumerClosed: consumer.signal, write },
|
|
134
|
+
write,
|
|
135
|
+
},
|
|
136
|
+
async finish() {
|
|
137
|
+
closing = true;
|
|
138
|
+
try {
|
|
139
|
+
await writes;
|
|
140
|
+
await pipe.close();
|
|
141
|
+
await task;
|
|
142
|
+
operation.signal.throwIfAborted();
|
|
143
|
+
completed = true;
|
|
144
|
+
}
|
|
145
|
+
catch (error) {
|
|
146
|
+
throw failure ? failure.reason : error;
|
|
147
|
+
}
|
|
148
|
+
finally {
|
|
149
|
+
await operation.close();
|
|
150
|
+
}
|
|
151
|
+
},
|
|
152
|
+
abort: reason => operation.abort(reason),
|
|
153
|
+
};
|
|
154
|
+
}
|
|
155
|
+
catch (error) {
|
|
156
|
+
await operation.abort(error);
|
|
157
|
+
throw error;
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
//# sourceMappingURL=filesystem-output.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"filesystem-output.js","sourceRoot":"","sources":["../../src/contracts/filesystem-output.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/contracts/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/contracts/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/contracts/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/contracts/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC"}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import type { ByteSource, CollectOptions } from "@poe-platform/safe-fs";
|
|
2
2
|
export { collectBytes, readBytes, toByteSource } from "@poe-platform/safe-fs";
|
|
3
3
|
export type { ByteSource, CollectOptions } from "@poe-platform/safe-fs";
|
|
4
|
+
export declare const outputFailure: unique symbol;
|
|
4
5
|
export interface ByteSink {
|
|
5
6
|
write(chunk: Uint8Array): Promise<void>;
|
|
7
|
+
readonly [outputFailure]?: (reason: unknown) => Promise<void>;
|
|
6
8
|
readonly ownedOutput?: {
|
|
7
9
|
readonly consumerClosed: AbortSignal;
|
|
8
10
|
write(chunk: Uint8Array): Promise<void>;
|