@b4run/permissions 0.8.28

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/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) Brian Love
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,45 @@
1
+ # @b4run/permissions
2
+
3
+ Permission matching and approval-store contracts for B4.run agents.
4
+
5
+ **Use this when:** You are building permission matching or approval-store integrations for a B4.run agent.
6
+
7
+ ## Install
8
+
9
+ ```bash
10
+ pnpm add @b4run/permissions
11
+ ```
12
+
13
+ ## Example
14
+
15
+ ```ts
16
+ import { matchPermission } from "@b4run/permissions"
17
+
18
+ const decision = matchPermission(
19
+ "bash",
20
+ "pnpm test",
21
+ { bash: ["pnpm"] },
22
+ { bash: ["pnpm publish"] },
23
+ )
24
+ ```
25
+
26
+ ## Runtime and stability
27
+
28
+ - `@b4run/permissions` is an edge-safe, supported integration surface.
29
+ - `@b4run/permissions/node` is a node-only, supported integration surface.
30
+
31
+ The root entry owns matching and portable contracts. Use the Node entry only for filesystem-backed approval-store integration.
32
+
33
+ ## Related
34
+
35
+ - [Permissions API reference](https://b4.run/docs/api/permissions) — exact matching and store contracts.
36
+ - [Permissions guide](https://b4.run/docs/permissions) — application policy and approval workflows.
37
+ - [`@b4run/postgres-storage`](https://www.npmjs.com/package/@b4run/postgres-storage) — shared Postgres-backed permission decisions.
38
+
39
+ ## Maturity and support
40
+
41
+ B4.run is pre-1.0, and its public surface can change. All publishable B4.run packages release together as a fixed group; review the [`@b4run/permissions` changelog](https://github.com/cacheplane/b4run/blob/main/packages/permissions/CHANGELOG.md) and [upgrading guide](https://b4.run/docs/upgrading) before upgrading. For support, use [GitHub Discussions](https://github.com/cacheplane/b4run/discussions); report defects in [GitHub Issues](https://github.com/cacheplane/b4run/issues).
42
+
43
+ ## License
44
+
45
+ MIT. See the [repository license](https://github.com/cacheplane/b4run/blob/main/LICENSE).
@@ -0,0 +1,4 @@
1
+ export { matchPermission } from "./pattern-matching.js";
2
+ export { subagentPermissionPattern, suggestedCommandPattern, suggestedMemoryPattern, suggestedPathPattern, } from "./suggested-pattern.js";
3
+ export type { CommandDetail, MemoryDetail, PathDetail, PermissionDecision, PermissionMode, PermissionRequest, PermissionsFile, PermissionsStore, SubagentDetail, ToolDetail, } from "./types.js";
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AACvD,OAAO,EACL,yBAAyB,EACzB,uBAAuB,EACvB,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,wBAAwB,CAAA;AAC/B,YAAY,EACV,aAAa,EACb,YAAY,EACZ,UAAU,EACV,kBAAkB,EAClB,cAAc,EACd,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,UAAU,GACX,MAAM,YAAY,CAAA"}
package/dist/index.js ADDED
@@ -0,0 +1,2 @@
1
+ export { matchPermission } from "./pattern-matching.js";
2
+ export { subagentPermissionPattern, suggestedCommandPattern, suggestedMemoryPattern, suggestedPathPattern, } from "./suggested-pattern.js";
package/dist/node.d.ts ADDED
@@ -0,0 +1,19 @@
1
+ /**
2
+ * The NODE layer of `@b4run/permissions`: the disk-backed store that reads
3
+ * and writes `.b4/permissions.json`.
4
+ *
5
+ * It lives behind the explicitly node-only "@b4run/permissions/node" subpath
6
+ * (NOT the "." barrel) so `node:fs` / `node:path` stay out of the default
7
+ * import graph — edge entries import the barrel for `matchPermission`, the
8
+ * suggested-pattern helpers and the `PermissionsStore` interface, and inject
9
+ * their own store implementation.
10
+ */
11
+ import type { PermissionMode, PermissionsFile, PermissionsStore } from "./types.js";
12
+ interface CreateOptions {
13
+ readonly appRoot: string;
14
+ readonly config: PermissionsFile | undefined;
15
+ readonly mode: PermissionMode;
16
+ }
17
+ export declare function createPermissionsStore(opts: CreateOptions): PermissionsStore;
18
+ export {};
19
+ //# sourceMappingURL=node.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../src/node.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAOH,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAKnF,UAAU,aAAa;IACrB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,MAAM,EAAE,eAAe,GAAG,SAAS,CAAA;IAC5C,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAA;CAC9B;AA6CD,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,aAAa,GAAG,gBAAgB,CAsF5E"}
package/dist/node.js ADDED
@@ -0,0 +1,135 @@
1
+ /**
2
+ * The NODE layer of `@b4run/permissions`: the disk-backed store that reads
3
+ * and writes `.b4/permissions.json`.
4
+ *
5
+ * It lives behind the explicitly node-only "@b4run/permissions/node" subpath
6
+ * (NOT the "." barrel) so `node:fs` / `node:path` stay out of the default
7
+ * import graph — edge entries import the barrel for `matchPermission`, the
8
+ * suggested-pattern helpers and the `PermissionsStore` interface, and inject
9
+ * their own store implementation.
10
+ */
11
+ import { existsSync } from "node:fs";
12
+ import { mkdir, readFile, writeFile } from "node:fs/promises";
13
+ import { join } from "node:path";
14
+ import { matchPermission } from "./pattern-matching.js";
15
+ const PERMISSIONS_DIR = ".b4";
16
+ const PERMISSIONS_FILE = "permissions.json";
17
+ function emptyState() {
18
+ return { configAllow: {}, configDeny: {}, runtimeAllow: {}, runtimeDeny: {} };
19
+ }
20
+ function cloneMap(src) {
21
+ const out = {};
22
+ for (const [k, v] of Object.entries(src))
23
+ out[k] = [...v];
24
+ return out;
25
+ }
26
+ function effectiveAllow(state, mode) {
27
+ if (mode === "bypass")
28
+ return {};
29
+ const out = {};
30
+ for (const [k, v] of Object.entries(state.configAllow))
31
+ out[k] = [...v];
32
+ if (mode === "interactive") {
33
+ for (const [k, v] of Object.entries(state.runtimeAllow)) {
34
+ out[k] = [...(out[k] ?? []), ...v];
35
+ }
36
+ }
37
+ return out;
38
+ }
39
+ function effectiveDeny(state, mode) {
40
+ if (mode === "bypass")
41
+ return {};
42
+ const out = {};
43
+ for (const [k, v] of Object.entries(state.configDeny))
44
+ out[k] = [...v];
45
+ if (mode === "interactive") {
46
+ for (const [k, v] of Object.entries(state.runtimeDeny)) {
47
+ out[k] = [...(out[k] ?? []), ...v];
48
+ }
49
+ }
50
+ return out;
51
+ }
52
+ export function createPermissionsStore(opts) {
53
+ const { appRoot, config, mode } = opts;
54
+ const state = emptyState();
55
+ if (config) {
56
+ state.configAllow = cloneMap(config.allow);
57
+ state.configDeny = cloneMap(config.deny);
58
+ }
59
+ let writeQueue = Promise.resolve();
60
+ async function loadRuntimeFile() {
61
+ const filePath = join(appRoot, PERMISSIONS_DIR, PERMISSIONS_FILE);
62
+ if (!existsSync(filePath))
63
+ return;
64
+ let raw;
65
+ try {
66
+ raw = await readFile(filePath, "utf8");
67
+ }
68
+ catch (err) {
69
+ throw new Error(`Failed to read permissions.json: ${err.message}`);
70
+ }
71
+ let parsed;
72
+ try {
73
+ parsed = JSON.parse(raw);
74
+ }
75
+ catch (err) {
76
+ throw new Error(`Malformed permissions.json: ${err.message}`);
77
+ }
78
+ const p = parsed;
79
+ if (p.allow && typeof p.allow === "object") {
80
+ state.runtimeAllow = cloneMap(p.allow);
81
+ }
82
+ if (p.deny && typeof p.deny === "object") {
83
+ state.runtimeDeny = cloneMap(p.deny);
84
+ }
85
+ }
86
+ async function persistRuntimeFile() {
87
+ const dir = join(appRoot, PERMISSIONS_DIR);
88
+ await mkdir(dir, { recursive: true });
89
+ const file = {
90
+ version: 1,
91
+ allow: state.runtimeAllow,
92
+ deny: state.runtimeDeny,
93
+ };
94
+ await writeFile(join(dir, PERMISSIONS_FILE), `${JSON.stringify(file, null, 2)}\n`, "utf8");
95
+ }
96
+ async function ensureGitignoreEntry() {
97
+ const gitignorePath = join(appRoot, ".gitignore");
98
+ let content = "";
99
+ if (existsSync(gitignorePath)) {
100
+ content = await readFile(gitignorePath, "utf8");
101
+ if (content.split("\n").some((line) => line.trim() === ".b4/"))
102
+ return;
103
+ if (!content.endsWith("\n") && content.length > 0)
104
+ content += "\n";
105
+ content += ".b4/\n";
106
+ }
107
+ else {
108
+ content = ".b4/\n";
109
+ }
110
+ await writeFile(gitignorePath, content, "utf8");
111
+ }
112
+ return {
113
+ mode,
114
+ match(tool, candidate) {
115
+ return matchPermission(tool, candidate, effectiveAllow(state, mode), effectiveDeny(state, mode));
116
+ },
117
+ async load() {
118
+ if (mode === "interactive") {
119
+ await loadRuntimeFile();
120
+ }
121
+ },
122
+ async addAllow(tool, pattern) {
123
+ const job = async () => {
124
+ const list = state.runtimeAllow[tool] ?? [];
125
+ if (!list.includes(pattern))
126
+ list.push(pattern);
127
+ state.runtimeAllow[tool] = list;
128
+ await persistRuntimeFile();
129
+ await ensureGitignoreEntry();
130
+ };
131
+ writeQueue = writeQueue.then(job, job);
132
+ await writeQueue;
133
+ },
134
+ };
135
+ }
@@ -0,0 +1,15 @@
1
+ type PatternMap = Readonly<Record<string, readonly string[]>>;
2
+ /**
3
+ * Match a tool+candidate against allow + deny pattern maps.
4
+ *
5
+ * Semantics:
6
+ * - deny wins over allow
7
+ * - prefix matching: `candidate.startsWith(pattern)` for all other keys
8
+ * - EXCEPT the reserved "tool" and "subagent" keys, which use exact
9
+ * equality: tool names and serialized subagent identities must not
10
+ * prefix-match
11
+ * - no entries for tool → "unknown"
12
+ */
13
+ export declare function matchPermission(tool: string, candidate: string, allow: PatternMap, deny: PatternMap): "allow" | "deny" | "unknown";
14
+ export {};
15
+ //# sourceMappingURL=pattern-matching.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pattern-matching.d.ts","sourceRoot":"","sources":["../src/pattern-matching.ts"],"names":[],"mappings":"AAAA,KAAK,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC,CAAA;AAE7D;;;;;;;;;;GAUG;AACH,wBAAgB,eAAe,CAC7B,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,UAAU,EACjB,IAAI,EAAE,UAAU,GACf,OAAO,GAAG,MAAM,GAAG,SAAS,CAY9B"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Match a tool+candidate against allow + deny pattern maps.
3
+ *
4
+ * Semantics:
5
+ * - deny wins over allow
6
+ * - prefix matching: `candidate.startsWith(pattern)` for all other keys
7
+ * - EXCEPT the reserved "tool" and "subagent" keys, which use exact
8
+ * equality: tool names and serialized subagent identities must not
9
+ * prefix-match
10
+ * - no entries for tool → "unknown"
11
+ */
12
+ export function matchPermission(tool, candidate, allow, deny) {
13
+ const matches = (pattern) => tool === "tool" || tool === "subagent" ? candidate === pattern : candidate.startsWith(pattern);
14
+ const denyList = deny[tool] ?? [];
15
+ for (const pattern of denyList) {
16
+ if (matches(pattern))
17
+ return "deny";
18
+ }
19
+ const allowList = allow[tool] ?? [];
20
+ for (const pattern of allowList) {
21
+ if (matches(pattern))
22
+ return "allow";
23
+ }
24
+ return "unknown";
25
+ }
@@ -0,0 +1,19 @@
1
+ export declare function subagentPermissionPattern(parentRouteId: string, subagentName: string): string;
2
+ /**
3
+ * Default suggested pattern for a shell command.
4
+ * Returns the first two whitespace-separated tokens.
5
+ */
6
+ export declare function suggestedCommandPattern(command: string): string;
7
+ /**
8
+ * Default suggested pattern for a filesystem path.
9
+ * Returns the parent directory with trailing slash.
10
+ */
11
+ export declare function suggestedPathPattern(path: string): string;
12
+ /**
13
+ * Default suggested pattern for a memory-write approval: the namespace's
14
+ * workspace+route prefix, with a trailing "|" terminator so prefix matching
15
+ * cannot collide across sibling routes (route=/a vs route=/ab). Callers match
16
+ * candidates as `namespace + "|"` for the same reason.
17
+ */
18
+ export declare function suggestedMemoryPattern(namespace: string): string;
19
+ //# sourceMappingURL=suggested-pattern.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"suggested-pattern.d.ts","sourceRoot":"","sources":["../src/suggested-pattern.ts"],"names":[],"mappings":"AAEA,wBAAgB,yBAAyB,CAAC,aAAa,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM,CAE7F;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAK/D;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAIzD;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAKhE"}
@@ -0,0 +1,37 @@
1
+ import { pureDirname } from "@b4run/sdk/pure";
2
+ export function subagentPermissionPattern(parentRouteId, subagentName) {
3
+ return JSON.stringify([parentRouteId, subagentName]);
4
+ }
5
+ /**
6
+ * Default suggested pattern for a shell command.
7
+ * Returns the first two whitespace-separated tokens.
8
+ */
9
+ export function suggestedCommandPattern(command) {
10
+ const trimmed = command.trim();
11
+ if (trimmed.length === 0)
12
+ return "";
13
+ const tokens = trimmed.split(/\s+/);
14
+ return tokens.slice(0, 2).join(" ");
15
+ }
16
+ /**
17
+ * Default suggested pattern for a filesystem path.
18
+ * Returns the parent directory with trailing slash.
19
+ */
20
+ export function suggestedPathPattern(path) {
21
+ if (path.endsWith("/"))
22
+ return path;
23
+ const parent = pureDirname(path);
24
+ return parent === "/" ? "/" : `${parent}/`;
25
+ }
26
+ /**
27
+ * Default suggested pattern for a memory-write approval: the namespace's
28
+ * workspace+route prefix, with a trailing "|" terminator so prefix matching
29
+ * cannot collide across sibling routes (route=/a vs route=/ab). Callers match
30
+ * candidates as `namespace + "|"` for the same reason.
31
+ */
32
+ export function suggestedMemoryPattern(namespace) {
33
+ const parts = namespace.split("|");
34
+ const routeIdx = parts.findIndex((p) => p.startsWith("route="));
35
+ const prefix = routeIdx >= 0 ? parts.slice(0, routeIdx + 1) : parts;
36
+ return `${prefix.join("|")}|`;
37
+ }
@@ -0,0 +1 @@
1
+ {"version":"7.0.2","root":[60,[64,67]],"packageJsons":["../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/package.json","../../../node_modules/.pnpm/buffer@6.0.3/node_modules/buffer/package.json","../../../node_modules/.pnpm/events@3.3.0/node_modules/events/package.json","../../../node_modules/.pnpm/process@0.11.10/node_modules/process/package.json","../../../node_modules/.pnpm/punycode@2.3.1/node_modules/punycode/package.json","../../../node_modules/.pnpm/string_decoder@1.3.0/node_modules/string_decoder/package.json","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/package.json","../package.json","../../sdk/package.json"],"missingPackageJsons":["../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/assert/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/assert/strict/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/async_hooks/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/buffer/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/child_process/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/cluster/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/console/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/constants/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/crypto/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/dgram/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/diagnostics_channel/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/dns/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/dns/promises/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/domain/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/events/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/fs/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/fs/promises/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/http/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/http2/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/https/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/inspector/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/inspector/promises/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/module/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/net/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/assert/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/dns/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/fs/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/inspector/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/path/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/readline/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/stream/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/test/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/timers/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/util/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/web-globals/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/zlib/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/os/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/path/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/path/posix/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/path/win32/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/perf_hooks/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/process/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/punycode/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/querystring/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/readline/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/readline/promises/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/repl/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/stream/consumers/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/stream/iter/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/stream/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/stream/promises/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/stream/web/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/string_decoder/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/timers/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/timers/promises/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/tls/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/trace_events/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/tty/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/url/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/util/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/util/types/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/v8/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/vm/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/wasi/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/worker_threads/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/zlib/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/assert/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/assert/strict/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/async_hooks/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/buffer/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/child_process/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/cluster/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/console/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/constants/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/crypto/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/dgram/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/diagnostics_channel/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/dns/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/dns/promises/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/domain/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/events/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/fs/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/fs/promises/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/http/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/http2/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/https/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/inspector/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/inspector/promises/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/module/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/net/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/os/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/path/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/path/posix/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/path/win32/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/perf_hooks/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/process/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/punycode/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/querystring/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/readline/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/readline/promises/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/repl/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/stream/consumers/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/stream/iter/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/stream/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/stream/promises/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/stream/web/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/string_decoder/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/timers/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/timers/promises/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/tls/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/trace_events/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/tty/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/url/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/util/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/util/types/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/v8/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/vm/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/wasi/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/worker_threads/package.json","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/zlib/package.json","../../../node_modules/.pnpm/node_modules/@types/assert/package.json","../../../node_modules/.pnpm/node_modules/@types/assert/strict/package.json","../../../node_modules/.pnpm/node_modules/@types/async_hooks/package.json","../../../node_modules/.pnpm/node_modules/@types/child_process/package.json","../../../node_modules/.pnpm/node_modules/@types/cluster/package.json","../../../node_modules/.pnpm/node_modules/@types/console/package.json","../../../node_modules/.pnpm/node_modules/@types/constants/package.json","../../../node_modules/.pnpm/node_modules/@types/crypto/package.json","../../../node_modules/.pnpm/node_modules/@types/dgram/package.json","../../../node_modules/.pnpm/node_modules/@types/diagnostics_channel/package.json","../../../node_modules/.pnpm/node_modules/@types/dns/package.json","../../../node_modules/.pnpm/node_modules/@types/dns/promises/package.json","../../../node_modules/.pnpm/node_modules/@types/domain/package.json","../../../node_modules/.pnpm/node_modules/@types/events/package.json","../../../node_modules/.pnpm/node_modules/@types/fs/package.json","../../../node_modules/.pnpm/node_modules/@types/fs/promises/package.json","../../../node_modules/.pnpm/node_modules/@types/http/package.json","../../../node_modules/.pnpm/node_modules/@types/http2/package.json","../../../node_modules/.pnpm/node_modules/@types/https/package.json","../../../node_modules/.pnpm/node_modules/@types/inspector/package.json","../../../node_modules/.pnpm/node_modules/@types/inspector/promises/package.json","../../../node_modules/.pnpm/node_modules/@types/module/package.json","../../../node_modules/.pnpm/node_modules/@types/net/package.json","../../../node_modules/.pnpm/node_modules/@types/os/package.json","../../../node_modules/.pnpm/node_modules/@types/path/package.json","../../../node_modules/.pnpm/node_modules/@types/path/posix/package.json","../../../node_modules/.pnpm/node_modules/@types/path/win32/package.json","../../../node_modules/.pnpm/node_modules/@types/perf_hooks/package.json","../../../node_modules/.pnpm/node_modules/@types/process/package.json","../../../node_modules/.pnpm/node_modules/@types/punycode/package.json","../../../node_modules/.pnpm/node_modules/@types/querystring/package.json","../../../node_modules/.pnpm/node_modules/@types/readline/package.json","../../../node_modules/.pnpm/node_modules/@types/readline/promises/package.json","../../../node_modules/.pnpm/node_modules/@types/repl/package.json","../../../node_modules/.pnpm/node_modules/@types/stream/consumers/package.json","../../../node_modules/.pnpm/node_modules/@types/stream/iter/package.json","../../../node_modules/.pnpm/node_modules/@types/stream/package.json","../../../node_modules/.pnpm/node_modules/@types/stream/promises/package.json","../../../node_modules/.pnpm/node_modules/@types/stream/web/package.json","../../../node_modules/.pnpm/node_modules/@types/string_decoder/package.json","../../../node_modules/.pnpm/node_modules/@types/timers/package.json","../../../node_modules/.pnpm/node_modules/@types/timers/promises/package.json","../../../node_modules/.pnpm/node_modules/@types/tls/package.json","../../../node_modules/.pnpm/node_modules/@types/trace_events/package.json","../../../node_modules/.pnpm/node_modules/@types/tty/package.json","../../../node_modules/.pnpm/node_modules/@types/url/package.json","../../../node_modules/.pnpm/node_modules/@types/util/package.json","../../../node_modules/.pnpm/node_modules/@types/util/types/package.json","../../../node_modules/.pnpm/node_modules/@types/v8/package.json","../../../node_modules/.pnpm/node_modules/@types/vm/package.json","../../../node_modules/.pnpm/node_modules/@types/wasi/package.json","../../../node_modules/.pnpm/node_modules/@types/worker_threads/package.json","../../../node_modules/.pnpm/node_modules/@types/zlib/package.json","../../../node_modules/.pnpm/node_modules/assert/package.json","../../../node_modules/.pnpm/node_modules/assert/strict/package.json","../../../node_modules/.pnpm/node_modules/async_hooks/package.json","../../../node_modules/.pnpm/node_modules/child_process/package.json","../../../node_modules/.pnpm/node_modules/cluster/package.json","../../../node_modules/.pnpm/node_modules/console/package.json","../../../node_modules/.pnpm/node_modules/constants/package.json","../../../node_modules/.pnpm/node_modules/crypto/package.json","../../../node_modules/.pnpm/node_modules/dgram/package.json","../../../node_modules/.pnpm/node_modules/diagnostics_channel/package.json","../../../node_modules/.pnpm/node_modules/dns/package.json","../../../node_modules/.pnpm/node_modules/dns/promises/package.json","../../../node_modules/.pnpm/node_modules/domain/package.json","../../../node_modules/.pnpm/node_modules/fs/package.json","../../../node_modules/.pnpm/node_modules/fs/promises/package.json","../../../node_modules/.pnpm/node_modules/http/package.json","../../../node_modules/.pnpm/node_modules/http2/package.json","../../../node_modules/.pnpm/node_modules/https/package.json","../../../node_modules/.pnpm/node_modules/inspector/package.json","../../../node_modules/.pnpm/node_modules/inspector/promises/package.json","../../../node_modules/.pnpm/node_modules/module/package.json","../../../node_modules/.pnpm/node_modules/net/package.json","../../../node_modules/.pnpm/node_modules/os/package.json","../../../node_modules/.pnpm/node_modules/path/package.json","../../../node_modules/.pnpm/node_modules/path/posix/package.json","../../../node_modules/.pnpm/node_modules/path/win32/package.json","../../../node_modules/.pnpm/node_modules/perf_hooks/package.json","../../../node_modules/.pnpm/node_modules/querystring/package.json","../../../node_modules/.pnpm/node_modules/readline/package.json","../../../node_modules/.pnpm/node_modules/readline/promises/package.json","../../../node_modules/.pnpm/node_modules/repl/package.json","../../../node_modules/.pnpm/node_modules/stream/consumers/package.json","../../../node_modules/.pnpm/node_modules/stream/iter/package.json","../../../node_modules/.pnpm/node_modules/stream/package.json","../../../node_modules/.pnpm/node_modules/stream/promises/package.json","../../../node_modules/.pnpm/node_modules/stream/web/package.json","../../../node_modules/.pnpm/node_modules/timers/package.json","../../../node_modules/.pnpm/node_modules/timers/promises/package.json","../../../node_modules/.pnpm/node_modules/tls/package.json","../../../node_modules/.pnpm/node_modules/trace_events/package.json","../../../node_modules/.pnpm/node_modules/tty/package.json","../../../node_modules/.pnpm/node_modules/url/package.json","../../../node_modules/.pnpm/node_modules/util/package.json","../../../node_modules/.pnpm/node_modules/util/types/package.json","../../../node_modules/.pnpm/node_modules/v8/package.json","../../../node_modules/.pnpm/node_modules/vm/package.json","../../../node_modules/.pnpm/node_modules/wasi/package.json","../../../node_modules/.pnpm/node_modules/worker_threads/package.json","../../../node_modules/.pnpm/node_modules/zlib/package.json","../../../node_modules/@types/assert/package.json","../../../node_modules/@types/assert/strict/package.json","../../../node_modules/@types/async_hooks/package.json","../../../node_modules/@types/child_process/package.json","../../../node_modules/@types/cluster/package.json","../../../node_modules/@types/console/package.json","../../../node_modules/@types/constants/package.json","../../../node_modules/@types/crypto/package.json","../../../node_modules/@types/dgram/package.json","../../../node_modules/@types/diagnostics_channel/package.json","../../../node_modules/@types/dns/package.json","../../../node_modules/@types/dns/promises/package.json","../../../node_modules/@types/domain/package.json","../../../node_modules/@types/events/package.json","../../../node_modules/@types/fs/package.json","../../../node_modules/@types/fs/promises/package.json","../../../node_modules/@types/http/package.json","../../../node_modules/@types/http2/package.json","../../../node_modules/@types/https/package.json","../../../node_modules/@types/inspector/package.json","../../../node_modules/@types/inspector/promises/package.json","../../../node_modules/@types/module/package.json","../../../node_modules/@types/net/package.json","../../../node_modules/@types/os/package.json","../../../node_modules/@types/path/package.json","../../../node_modules/@types/path/posix/package.json","../../../node_modules/@types/path/win32/package.json","../../../node_modules/@types/perf_hooks/package.json","../../../node_modules/@types/process/package.json","../../../node_modules/@types/punycode/package.json","../../../node_modules/@types/querystring/package.json","../../../node_modules/@types/readline/package.json","../../../node_modules/@types/readline/promises/package.json","../../../node_modules/@types/repl/package.json","../../../node_modules/@types/stream/consumers/package.json","../../../node_modules/@types/stream/iter/package.json","../../../node_modules/@types/stream/package.json","../../../node_modules/@types/stream/promises/package.json","../../../node_modules/@types/stream/web/package.json","../../../node_modules/@types/string_decoder/package.json","../../../node_modules/@types/timers/package.json","../../../node_modules/@types/timers/promises/package.json","../../../node_modules/@types/tls/package.json","../../../node_modules/@types/trace_events/package.json","../../../node_modules/@types/tty/package.json","../../../node_modules/@types/url/package.json","../../../node_modules/@types/util/package.json","../../../node_modules/@types/util/types/package.json","../../../node_modules/@types/v8/package.json","../../../node_modules/@types/vm/package.json","../../../node_modules/@types/wasi/package.json","../../../node_modules/@types/worker_threads/package.json","../../../node_modules/@types/zlib/package.json","../../../node_modules/assert/package.json","../../../node_modules/assert/strict/package.json","../../../node_modules/async_hooks/package.json","../../../node_modules/child_process/package.json","../../../node_modules/cluster/package.json","../../../node_modules/console/package.json","../../../node_modules/constants/package.json","../../../node_modules/crypto/package.json","../../../node_modules/dgram/package.json","../../../node_modules/diagnostics_channel/package.json","../../../node_modules/dns/package.json","../../../node_modules/dns/promises/package.json","../../../node_modules/domain/package.json","../../../node_modules/events/package.json","../../../node_modules/fs/package.json","../../../node_modules/fs/promises/package.json","../../../node_modules/http/package.json","../../../node_modules/http2/package.json","../../../node_modules/https/package.json","../../../node_modules/inspector/package.json","../../../node_modules/inspector/promises/package.json","../../../node_modules/module/package.json","../../../node_modules/net/package.json","../../../node_modules/os/package.json","../../../node_modules/path/package.json","../../../node_modules/path/posix/package.json","../../../node_modules/path/win32/package.json","../../../node_modules/perf_hooks/package.json","../../../node_modules/process/package.json","../../../node_modules/punycode/package.json","../../../node_modules/querystring/package.json","../../../node_modules/readline/package.json","../../../node_modules/readline/promises/package.json","../../../node_modules/repl/package.json","../../../node_modules/stream/consumers/package.json","../../../node_modules/stream/iter/package.json","../../../node_modules/stream/package.json","../../../node_modules/stream/promises/package.json","../../../node_modules/stream/web/package.json","../../../node_modules/string_decoder/package.json","../../../node_modules/timers/package.json","../../../node_modules/timers/promises/package.json","../../../node_modules/tls/package.json","../../../node_modules/trace_events/package.json","../../../node_modules/tty/package.json","../../../node_modules/url/package.json","../../../node_modules/util/package.json","../../../node_modules/util/types/package.json","../../../node_modules/v8/package.json","../../../node_modules/vm/package.json","../../../node_modules/wasi/package.json","../../../node_modules/worker_threads/package.json","../../../node_modules/zlib/package.json","../node_modules/@b4run/sdk/pure/package.json"],"fileNames":["lib.es5.d.ts","lib.es2015.d.ts","lib.es2016.d.ts","lib.es2017.d.ts","lib.es2018.d.ts","lib.es2019.d.ts","lib.es2020.d.ts","lib.es2021.d.ts","lib.es2022.d.ts","lib.es2015.core.d.ts","lib.es2015.collection.d.ts","lib.es2015.generator.d.ts","lib.es2015.iterable.d.ts","lib.es2015.promise.d.ts","lib.es2015.proxy.d.ts","lib.es2015.reflect.d.ts","lib.es2015.symbol.d.ts","lib.es2015.symbol.wellknown.d.ts","lib.es2016.array.include.d.ts","lib.es2016.intl.d.ts","lib.es2017.arraybuffer.d.ts","lib.es2017.date.d.ts","lib.es2017.object.d.ts","lib.es2017.sharedmemory.d.ts","lib.es2017.string.d.ts","lib.es2017.intl.d.ts","lib.es2017.typedarrays.d.ts","lib.es2018.asyncgenerator.d.ts","lib.es2018.asynciterable.d.ts","lib.es2018.intl.d.ts","lib.es2018.promise.d.ts","lib.es2018.regexp.d.ts","lib.es2019.array.d.ts","lib.es2019.object.d.ts","lib.es2019.string.d.ts","lib.es2019.symbol.d.ts","lib.es2019.intl.d.ts","lib.es2020.bigint.d.ts","lib.es2020.date.d.ts","lib.es2020.promise.d.ts","lib.es2020.sharedmemory.d.ts","lib.es2020.string.d.ts","lib.es2020.symbol.wellknown.d.ts","lib.es2020.intl.d.ts","lib.es2020.number.d.ts","lib.es2021.promise.d.ts","lib.es2021.string.d.ts","lib.es2021.weakref.d.ts","lib.es2021.intl.d.ts","lib.es2022.array.d.ts","lib.es2022.error.d.ts","lib.es2022.intl.d.ts","lib.es2022.object.d.ts","lib.es2022.string.d.ts","lib.es2022.regexp.d.ts","lib.es2025.float16.d.ts","lib.esnext.disposable.d.ts","lib.decorators.d.ts","lib.decorators.legacy.d.ts","../src/pattern-matching.ts","../../sdk/dist/pure/hash.d.ts","../../sdk/dist/pure/path.d.ts","../../sdk/dist/pure/index.d.ts","../src/suggested-pattern.ts","../src/types.ts","../src/index.ts","../src/node.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/globals.typedarray.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/buffer.buffer.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/globals.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/web-globals/abortcontroller.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/web-globals/blob.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/web-globals/console.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/web-globals/crypto.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/web-globals/domexception.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/web-globals/encoding.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/web-globals/events.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/utility.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/header.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/readable.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/fetch.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/formdata.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/connector.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/client-stats.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/client.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/errors.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/dispatcher.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/global-dispatcher.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/global-origin.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/pool-stats.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/pool.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/handlers.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/balanced-pool.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/round-robin-pool.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/h2c-client.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/agent.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/dispatcher1-wrapper.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/mock-interceptor.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/mock-call-history.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/mock-agent.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/mock-client.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/mock-pool.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/snapshot-agent.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/mock-errors.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/proxy-agent.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/socks5-proxy-agent.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/env-http-proxy-agent.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/retry-handler.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/retry-agent.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/api.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/cache-interceptor.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/interceptors.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/util.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/cookies.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/patch.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/websocket.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/eventsource.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/diagnostics-channel.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/content-type.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/cache.d.ts","../../../node_modules/.pnpm/undici-types@8.3.0/node_modules/undici-types/index.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/web-globals/fetch.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/web-globals/importmeta.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/web-globals/messaging.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/web-globals/navigator.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/web-globals/performance.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/web-globals/storage.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/web-globals/streams.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/web-globals/timers.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/web-globals/url.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/assert.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/assert/strict.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/async_hooks.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/buffer.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/child_process.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/cluster.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/console.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/constants.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/crypto.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/dgram.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/diagnostics_channel.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/dns.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/dns/promises.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/domain.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/events.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/ffi.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/fs.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/fs/promises.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/http.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/http2.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/https.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/inspector.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/inspector.generated.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/inspector/promises.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/module.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/net.d.ts","../../../node_modules/.pnpm/buffer@6.0.3/node_modules/buffer/index.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/os.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/path.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/path/posix.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/path/win32.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/perf_hooks.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/process.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/punycode.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/querystring.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/quic.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/readline.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/readline/promises.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/repl.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/sea.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/sqlite.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/stream.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/stream/consumers.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/stream/iter.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/stream/promises.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/stream/web.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/string_decoder.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/test.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/test/reporters.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/timers.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/timers/promises.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/tls.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/trace_events.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/tty.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/url.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/util.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/util/types.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/v8.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/vm.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/wasi.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/worker_threads.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/zlib.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/zlib/iter.d.ts","../../../node_modules/.pnpm/@types+node@26.1.2/node_modules/@types/node/index.d.ts"],"fileInfos":[{"version":"16934abaab7026ac114da441aabea1a0","affectsGlobalScope":true,"impliedNodeFormat":1},"d4306fb2e47f74835e8674ffac07d76f","e437c5c1302869326c3bb93da85bbbcf","e4324975a566567b21d350615f1fc6ac","333b1b9a2a9ac3b8497dba5c63b5ba50","6cffacd662b6eb5fa7a36aa2ea366bfa","b4c34f9c23304dbef2d23698637ed638","e5cb86a5fc491796ecd1d2dd348d208f","feb6c6fb19cdb246a5d8acb36a6901c7",{"version":"926204c28cd3d073865348473ae28d2e","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"f25e42c801b2cb3cf2b39792006a9beb","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"6344b55f26a4e81d9608777dbfb877dd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"3c0ed28e53d3695b363e256ec1c023fd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4c2761daba7f17141c25baa0821ac5da","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b87656acabd63e69379ff6ffcfe52fc7","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"597469522da047a5af5222cc6989f405","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1708ea4d34dc37fadadc63ca01127e80","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"55d97a8c6fbf34a30450a7b1e5f7a298","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"0ee05eb59426d33e374226d8dcfa708b","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"e347c14030993906efcfbb88915b6a05","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b0231263857c9b6a03641acdc9280ceb","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"3b15c4a83b598cacb4067676e6f0abed","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b417d97b7934cef63b1889abec0bbfbf","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"09a6cf4032ebba60ce22a501e663f881","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"2b056277dd138e8f5650fc04e20eaa8d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"e22cc07e3f3cc242ba52fa3f8ea1fc58","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"2c45da767a1bfbb220848df1bc4029e4","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b44c3e0fbaf2130cdcf6ac38b120ffa1","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b612fb5cf8e5d964b92063a75207632a","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"02705151a5e1551b9162a9ed8ab763f7","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"41025e398be9215d32e4337335da8f0b","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"52684c2b1f353a5538e4f275182a54cd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"6dedb6a4f90d1df3a6fbe5693e44886c","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"ca3f36fe3562c07e0f0d71c2bebd3f6d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"409974d6129befbb8226ddd1c6558568","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4d9cfde2a1ae1b4925f1f9bc10848e5d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"7e1daecc66dd564144e3bb1a0266b5fd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"a8e1d9bb35fd0637f2f9fd2b2a54f2ec","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4f168501772a6543182765bfd5f2fbfe","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"a19c80aad1b2162103496f5ba293a732","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b69afa63cd5d059851c78adb2856ee09","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"ae2fc5d954e9b0f5feee3d481b953c27","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1cfd3091a071d8b6feec15277643bafe","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1da2c1f258970fd3cc91184f69e91a9d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"a0d87491913d843139e0c993650a3235","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4ef72aa378127e7b7abba915b0110b1e","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"3ec74c6a7d4463f0254db3a74cf75646","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"84c2bdfa470d075526cce6322d81b0b6","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"0b3844c2b8c73e4e1ab91431411cad11","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4fc71cf4a15b8d99675a31df77f26e07","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"d1b49564ddaeca3df5b6dbae925d2242","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"6a25be566d60ccfc2d6e8b7bfdeefa83","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"8a20e27646985dfd58c57ca6566553dd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"9969f02ad3cdcbf4f709405cda44167f","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"9c9be4792a7a4f42c15ae7360bf28779","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"0219894bfe5042c7e1aa2d22e4a91ed0","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"be41035d7b941482a1e1ae6a5c5dcca5","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"f64453cbf9671f28158677fa5c43967a","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"33f317af5428801f944a478d2c1e38e5","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"7c0a2db39ba416e634da63e39a6a7bb0","signature":"34f154514bdf07045640cee9c10288a2","impliedNodeFormat":99},{"version":"4ccc4837f47b346631f7bbabfb664e17","impliedNodeFormat":99},{"version":"9ce8b7eb0c7d97b3ad28ece69181377a","impliedNodeFormat":99},{"version":"c6ff074d87f7cec36d4772b2b6a968f9","impliedNodeFormat":99},{"version":"5101946d4867de8f3e0f383a73c17c09","signature":"4d1718fe95a63a4be03e407abb54bff9","impliedNodeFormat":99},{"version":"b0042072897d34a702880ec24659b247","signature":"eab43d674aedd5702098669495f3a69d","impliedNodeFormat":99},{"version":"536bc271adcc8973decd0b2fa2ba8b81","signature":"b2a409bf64bb90f1ef67de8135ff44ce","impliedNodeFormat":99},{"version":"fcb9c9525f4712065ca7e0a40048888f","signature":"221a9e2619d4c1a5e7c35b546ee1d8da","impliedNodeFormat":99},{"version":"014eb4d3e0618e548a7001fb52d9f78b","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"29aa5df597455c046c2c88185c75534b","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"c5eb15737c858d986e0d5a542103b1df","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"ec83150a952000d42a7e6ccedac2d892","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"494755686d9e421e630117d917760e4f","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"c3f3d4053311f68af31e07f6e167faf6","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"86013697f2045d357ef20d7a952cdc12","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"fbef359f7184dcd12e5b3b95b171cca0","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1ca5302f6fe11154128eef397b5a285b","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"13835e9ba9b025ad7cab01fe7bad1fe3","affectsGlobalScope":true,"impliedNodeFormat":1},"49133c0dfbc32ab95668c3443dea49e5","d0b24ed45e91de84ca0fbafde3797006","9f970a4ba4bb3ed6326d46b3ddab3f63","7326b52c300bf65ac2f7e089fa536421","75de66fc4824402123c0d694ccc0a085","ff1283d1b4e6fa719203127857079e2e","fcd1a513c1e5802916fa602e8b8e64bc","78963d55a7500f2a08ecf81c3e2f2351","c1ace754853b3b972549a44a2316ca86","cf4561df3889c71b6b70fda4afe61f62","705645fe223430c696f47b708d592ca8","28d57c837c94adb42add03d499793cab","8c01a9bbae8449be21b3e018d59a74ac","b4a1cb50a619bde79c20d19aeb560633","21dc8b1a2dfd71b39278fd1db4055489","74d351e4ed233e82c6d74c444c1a6b86","35b9b5981aa2c74f808ba3334548e89b","81870445ff689f1a6c65a6d62e034298","d7131a7789ae06e6ba79d7cd1841fde7","dd373f44a8c44dd9286f3b43e07fc873","d7e5f7a0f1f883f28458f684106e7643","c2364011a80b6a9e3cc0e77895bad577","38da5c670190f4a35cbc204ca6c616bf","d95cc0eb29beed58f5ce72db21398f53","ecd53256b1ec7379c73316eaf392a69c","9871d4fb594b51eb13a3f6db71e01844","69c7bb9c3befe9ae37eed0e6a6310fee","c9351e1ed4d066672ad38be5c44f60b9","71e556084722c2a3f00f47d999db1e35","094ecadae30f65a82b77343dde77a666","f75df12d75dd783b03a0329b95abdb25","b438b08b2f0ed94a95a75c8990d9021b","f2becd2589591db92ab14e803eb8bdd5","230b29c24dac9c9800ba909debbaf7c4","518eaa3ff1153eacd0343a6bab2ce870","0468c0ccd0ec7770b76481b165564d62","188234d616a4f50ed9b14c8f84a39f33","4c116bcf0a47ea8fbf4072f380925fa7","213fda99209bff9d0330b6d9f5c9c7f3","add85ec26ba695fc99c698dbec065f8c","5bfde23f96fc502b5413d772c35e1abf","b744265d8ad12b7d4d5c5dc35d18d44e","eff32168b8348b822afeed9cbf61afa7","531a291f1cbe853ce3a138313c7448e9",{"version":"3b4fc11e9a5d20c846f1ba38889cbc8d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"53b0e86dfe96eb781a056e2662bf1e3b","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"d0bac56ae60094675c08a325b81d3b1a","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"292c9398a407b33b1d9c9812b673387a","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"83bc735c360e42b09f2b102d7b831ede","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"45df94b3c51b898624bacc2bcd6d9eb2","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"0b1a6b0b0f8828c286f9ae2ba01c4a5c","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"8617a23553d74c31be6da303c668bd18","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"3f2d808ba5f1ae3681bf7df616488dcd","affectsGlobalScope":true,"impliedNodeFormat":1},"4e58ba439fc661a1e2337fd17ae89d94","604aab8dd7c02abe3fcf1218fa951439","eb8c0e64b0e0e76f43e7c552937a365f",{"version":"d9f08c6ae1f16ca22e5a7ee7c02e8f55","affectsGlobalScope":true,"impliedNodeFormat":1},"1b0b3ba726724a8114fae4fe32b2e813","2c43726da10a0a524992e6fd4a561aba","75c6ee2c7a0e7d54f06ae1941553f44f","9af5958f27aacf7d18939d710f5b0da4","63d472a34b62f28ec36de487ed66e5f4","e83763b51773b219b802af074c41c158","dca9e0bed5a66eaef8e9d2533b733526","3913881dcc0e8e56499d4bb2d58cd5cd","96e4ab680765cf32feb71a88bbae18ae","2d8ebe6eb639d14875e12acf069d9c65",{"version":"2d30f3e526b72134674afeee7eb5f870","affectsGlobalScope":true,"impliedNodeFormat":1},"3dc88bd6dd1ffa2f65dbb913face44d9","156e7ba4d6075df40c44fe3b42d518c3","cd2631f28a9d8693684fdf8a4fd85b6c","52cd6b1193a0309e8782055ac7967d5e","42152e8a9fc3c2ee8955f5742cc930b2","8383fa58c2f75291c454f84915f12190","856e7f9f1e0e64dfa73b2026886d9380","fc81ee7b08868ee0973983110e2ef386","f7be6b8b253b7d07c8476f23bbdc98c1",{"version":"48b2540ad661c32ab2cf99d5d0300f98","affectsGlobalScope":true,"impliedNodeFormat":1},"552f49661c80ae3d5da105854ee1d892","8e91e7228778516936913f666d057c19","a91bb5d596fbbd6d7aa1e3978c2ef93f","860f49c8d6ad48b19bf7ed0bc5d2824e","235cc33b85ac998f0f2df0807648acb8","c0c62035e8f8a0b6da47b6277fd6dbb2","9b2cd7ec10805b4f47901fa3a8fb0635",{"version":"a471ff2dab1b5f8bcdbdfb743e001792","affectsGlobalScope":true,"impliedNodeFormat":1},"196cd3003168b4ee2df015d15cfed000","66b5b9b84ab95e019a6e1f5edb8bd250","6014f5bba998f243250331699b5c4fc0","2e2ed32d5133fb4c60f95543217e669e","2580385b74019e646d76a9f68fdbf31b","aa0f7a546acda88ef0a5df40ff0e5122","b3bdce048b1c601e1a19a4c3ee32053b","0243207cb0498a7e930f0374672b9a0a",{"version":"c18928bec3bc65892c54962be1683163","affectsGlobalScope":true,"impliedNodeFormat":1},"f9c43b0225ab4f6dc8aff6e619d322a8","28f9ca9da65e883dd2fbac1909329856","6e1de2df81bd936ffb5509f921f1fc8c","c7576162a5c832fc7681771ad7a50357","9959a7e96eedcbc697460cf0d31bda74","629718571a9e12edba8d52caefedbfb8","0b355907ec29bf7f68cedaff3b6b71f5",{"version":"b73a052b5fd08948bd559dcca4424ede","affectsGlobalScope":true,"impliedNodeFormat":1},"e6ad9a1d5cc3099621a4a7bba328d248","13c7d30ec9c5b3f2e8030aa28afcd9f3","b4dbe09999921e219d6ff56b29720eae","4d2cb96ef76779819df8963314db8b6b","93f25f3a36ba4dd4c8efff0cc442f118","513ff65469f15b8059ed4edd7033614a","b0466c3034f5921a2c78e7da534f2b19","61b988e4a671a41f33463227249c0b13","8e0c0fb59513333b77efcbd43da1ce7f","3b1ae8bab308b1e5ac7e7a26d27167ad","a41a5f7019678ba4b53936492dc465d1","35c1d312d8ffabf1e4546bfeaeb4142e","6728fae9ef4170f6403bf6db25cc60c6","9fd5b314bfba8a89299a1031ae1d82c0"],"fileIdsList":[[69,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,121,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[68,69,70,71,72,73,74,75,76,77,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,191,192,193],[69,121,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,121,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192],[69,84,87,90,91,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,87,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,87,91,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,81,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,85,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,83,84,87,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194],[69,81,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194],[69,83,87,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,78,79,80,82,86,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,87,96,105,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,79,85,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,87,115,116,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,79,82,87,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194],[69,78,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,81,82,83,85,86,87,88,89,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,116,117,118,119,120,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,87,108,111,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,87,96,98,99,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,85,87,98,100,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,86,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,79,81,87,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,87,91,98,100,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,91,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,85,87,90,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,79,83,87,96,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,87,108,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,100,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,79,83,87,91,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[69,81,87,115,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194],[60,64,65,69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[60,65,69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[63,69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[61,62,69,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193]],"options":{"allowJs":false,"composite":true,"declaration":true,"declarationMap":true,"exactOptionalPropertyTypes":true,"module":199,"noUncheckedIndexedAccess":true,"outDir":"./","rootDir":"../src","skipLibCheck":true,"strict":true,"stripInternal":true,"target":9,"tsBuildInfoFile":"./tsconfig.tsbuildinfo"},"referencedMap":[[131,1],[132,2],[133,3],[69,4],[134,5],[135,6],[136,7],[137,8],[138,9],[139,10],[140,11],[141,12],[142,13],[143,14],[144,15],[145,16],[146,17],[147,18],[148,19],[70,20],[68,20],[149,21],[150,22],[151,23],[194,24],[152,25],[153,26],[154,27],[155,28],[156,29],[158,30],[159,31],[160,32],[161,33],[162,34],[163,35],[164,36],[165,37],[166,38],[167,39],[168,40],[169,41],[170,42],[171,43],[172,44],[173,45],[174,46],[175,47],[176,48],[177,49],[178,50],[179,51],[180,52],[181,53],[182,54],[183,55],[184,56],[185,57],[186,58],[187,59],[188,60],[189,61],[190,62],[71,20],[72,20],[73,20],[74,20],[75,20],[76,20],[77,20],[122,63],[123,20],[124,20],[125,20],[126,20],[127,20],[128,20],[129,20],[130,20],[191,64],[192,65],[193,66],[58,20],[59,20],[11,20],[10,20],[2,20],[12,20],[13,20],[14,20],[15,20],[16,20],[17,20],[18,20],[19,20],[3,20],[20,20],[21,20],[4,20],[22,20],[26,20],[23,20],[24,20],[25,20],[27,20],[28,20],[29,20],[5,20],[30,20],[31,20],[32,20],[33,20],[6,20],[37,20],[34,20],[35,20],[36,20],[38,20],[7,20],[39,20],[44,20],[45,20],[40,20],[41,20],[42,20],[43,20],[8,20],[49,20],[46,20],[47,20],[48,20],[50,20],[9,20],[51,20],[52,20],[53,20],[55,20],[54,20],[56,20],[1,20],[57,20],[157,20],[96,67],[110,68],[93,69],[111,20],[120,70],[84,71],[85,72],[83,20],[119,73],[114,74],[118,75],[87,76],[97,68],[107,77],[86,78],[117,79],[81,80],[82,74],[88,68],[89,20],[95,75],[92,68],[79,81],[121,82],[112,83],[100,84],[99,68],[101,85],[104,86],[98,87],[102,88],[115,73],[90,89],[91,90],[105,91],[80,20],[109,92],[108,68],[94,90],[103,93],[106,94],[113,20],[78,20],[116,95],[66,96],[67,97],[60,20],[64,98],[65,20],[61,20],[63,99],[62,20]],"latestChangedDtsFile":"./node.d.ts"}
@@ -0,0 +1,88 @@
1
+ /**
2
+ * Public types for the B4.run HITL permissions system.
3
+ *
4
+ * The workspace capability calls into a `PermissionsStore` before
5
+ * invoking its filesystem/exec backends. The store consults the
6
+ * runtime file at .b4/permissions.json plus the config-seeded
7
+ * allow/deny lists and returns one of three decisions: "allow",
8
+ * "deny", or "unknown". On "unknown" in interactive mode the
9
+ * capability emits LangGraph's `interrupt()` with a `PermissionRequest`
10
+ * payload; the resume mechanism returns a `PermissionDecision`.
11
+ */
12
+ export type PermissionMode = "interactive" | "non-interactive" | "bypass";
13
+ export type PermissionDecision = "once" | "always" | "deny";
14
+ export interface PermissionsFile {
15
+ readonly version: 1;
16
+ readonly allow: Readonly<Record<string, readonly string[]>>;
17
+ readonly deny: Readonly<Record<string, readonly string[]>>;
18
+ }
19
+ export interface CommandDetail {
20
+ readonly command: string;
21
+ readonly suggestedPattern: string;
22
+ }
23
+ export interface PathDetail {
24
+ readonly path: string;
25
+ readonly operation: "readFile" | "writeFile" | "listDir";
26
+ readonly suggestedPattern: string;
27
+ }
28
+ export interface ToolDetail {
29
+ readonly toolName: string;
30
+ /** JSON.stringify(input) truncated (~500 chars). Shown in the prompt; never matched or persisted. */
31
+ readonly argsPreview: string;
32
+ /** The tool name — approval decisions persist name-level under the reserved "tool" key. */
33
+ readonly suggestedPattern: string;
34
+ }
35
+ export interface MemoryDetail {
36
+ /** Full memory namespace of the write (e.g. "workspace=app|route=/support"). */
37
+ readonly namespace: string;
38
+ /** Rendered identity key of the contradicted fact, e.g. "acme / payment-terms". */
39
+ readonly identity: string;
40
+ /** Id of the active record that would be superseded. */
41
+ readonly oldId: string;
42
+ /** Content of the record being overwritten. */
43
+ readonly oldContent: string;
44
+ /** Content of the replacement. */
45
+ readonly newContent: string;
46
+ /** Workspace+route namespace prefix (terminator included) — persisted on "always" under the reserved "memory" key. */
47
+ readonly suggestedPattern: string;
48
+ }
49
+ export interface SubagentDetail {
50
+ readonly parentRouteId: string;
51
+ readonly subagentName: string;
52
+ readonly subagentRouteId: string;
53
+ readonly inputPreview: string;
54
+ readonly reason?: string;
55
+ readonly suggestedPattern: string;
56
+ }
57
+ interface PermissionRequestBase {
58
+ readonly interruptId: string;
59
+ readonly threadId: string;
60
+ readonly callId?: string;
61
+ }
62
+ export type PermissionRequest = PermissionRequestBase & ({
63
+ readonly kind: "command";
64
+ readonly detail: CommandDetail;
65
+ } | {
66
+ readonly kind: "path";
67
+ readonly detail: PathDetail;
68
+ } | {
69
+ readonly kind: "tool";
70
+ readonly detail: ToolDetail;
71
+ } | {
72
+ readonly kind: "memory";
73
+ readonly detail: MemoryDetail;
74
+ } | {
75
+ readonly kind: "subagent";
76
+ readonly detail: SubagentDetail;
77
+ });
78
+ export interface PermissionsStore {
79
+ /** Loaded once at construction; subsequent loads not exposed in v1. */
80
+ load(): Promise<void>;
81
+ match(tool: string, candidate: string): "allow" | "deny" | "unknown";
82
+ /** Persists an allow entry to disk and updates the in-memory cache. */
83
+ addAllow(tool: string, pattern: string): Promise<void>;
84
+ /** Active mode (resolved from config + env at construction). */
85
+ readonly mode: PermissionMode;
86
+ }
87
+ export {};
88
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,MAAM,MAAM,cAAc,GAAG,aAAa,GAAG,iBAAiB,GAAG,QAAQ,CAAA;AAEzE,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,CAAA;AAE3D,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAA;IACnB,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC,CAAA;IAC3D,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC,CAAA;CAC3D;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAA;CAClC;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,SAAS,EAAE,UAAU,GAAG,WAAW,GAAG,SAAS,CAAA;IACxD,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAA;CAClC;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,qGAAqG;IACrG,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,2FAA2F;IAC3F,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAA;CAClC;AAED,MAAM,WAAW,YAAY;IAC3B,gFAAgF;IAChF,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,mFAAmF;IACnF,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,wDAAwD;IACxD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,+CAA+C;IAC/C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,kCAAkC;IAClC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,sHAAsH;IACtH,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAA;CAClC;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAA;IAC9B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAA;IAChC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAA;CAClC;AAED,UAAU,qBAAqB;IAC7B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CACzB;AAED,MAAM,MAAM,iBAAiB,GAAG,qBAAqB,GACnD,CACI;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAA;CAAE,GAC5D;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAA;CAAE,GACtD;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAA;CAAE,GACtD;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAA;CAAE,GAC1D;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAA;CAAE,CACjE,CAAA;AAEH,MAAM,WAAW,gBAAgB;IAC/B,uEAAuE;IACvE,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IACrB,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,CAAA;IACpE,uEAAuE;IACvE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACtD,gEAAgE;IAChE,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAA;CAC9B"}
package/dist/types.js ADDED
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Public types for the B4.run HITL permissions system.
3
+ *
4
+ * The workspace capability calls into a `PermissionsStore` before
5
+ * invoking its filesystem/exec backends. The store consults the
6
+ * runtime file at .b4/permissions.json plus the config-seeded
7
+ * allow/deny lists and returns one of three decisions: "allow",
8
+ * "deny", or "unknown". On "unknown" in interactive mode the
9
+ * capability emits LangGraph's `interrupt()` with a `PermissionRequest`
10
+ * payload; the resume mechanism returns a `PermissionDecision`.
11
+ */
12
+ export {};
package/package.json ADDED
@@ -0,0 +1,59 @@
1
+ {
2
+ "name": "@b4run/permissions",
3
+ "version": "0.8.28",
4
+ "private": false,
5
+ "type": "module",
6
+ "license": "MIT",
7
+ "description": "Permission matching, approval gates, and access-control stores for B4.run agents.",
8
+ "keywords": [
9
+ "b4",
10
+ "typescript",
11
+ "ai-agents",
12
+ "permissions",
13
+ "access-control",
14
+ "human-in-the-loop"
15
+ ],
16
+ "homepage": "https://github.com/cacheplane/b4run/tree/main/packages/permissions#readme",
17
+ "repository": {
18
+ "type": "git",
19
+ "url": "git+https://github.com/cacheplane/b4run.git",
20
+ "directory": "packages/permissions"
21
+ },
22
+ "bugs": {
23
+ "url": "https://github.com/cacheplane/b4run/issues"
24
+ },
25
+ "engines": {
26
+ "node": ">=24.0.0"
27
+ },
28
+ "files": [
29
+ "dist"
30
+ ],
31
+ "types": "./dist/index.d.ts",
32
+ "exports": {
33
+ ".": {
34
+ "types": "./dist/index.d.ts",
35
+ "default": "./dist/index.js"
36
+ },
37
+ "./node": {
38
+ "types": "./dist/node.d.ts",
39
+ "default": "./dist/node.js"
40
+ }
41
+ },
42
+ "publishConfig": {
43
+ "access": "public"
44
+ },
45
+ "dependencies": {
46
+ "@b4run/sdk": "0.8.28"
47
+ },
48
+ "devDependencies": {
49
+ "@types/node": "26.1.2",
50
+ "esbuild": "^0.28.1",
51
+ "@b4run/config-typescript": "0.8.28"
52
+ },
53
+ "scripts": {
54
+ "build": "tsc -b tsconfig.json",
55
+ "lint": "biome check --config-path ../config-biome/biome.json package.json src test tsconfig.json tsconfig.contracts.json tsconfig.test.json vitest.config.ts",
56
+ "test": "vitest --run --config vitest.config.ts --passWithNoTests",
57
+ "typecheck": "tsc --noEmit && tsc -p tsconfig.contracts.json && tsc -p tsconfig.test.json"
58
+ }
59
+ }