@prisma/composer-prisma-cloud 0.2.0-dev.9 → 0.3.0-dev.1

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.
Files changed (66) hide show
  1. package/dist/buckets-main.mjs +795 -0
  2. package/dist/buckets-main.mjs.map +1 -0
  3. package/dist/compute-main.mjs +559 -0
  4. package/dist/compute-main.mjs.map +1 -0
  5. package/dist/control.mjs +41 -1243
  6. package/dist/control.mjs.map +1 -1
  7. package/dist/cron/index.mjs +2 -3
  8. package/dist/cron/index.mjs.map +1 -1
  9. package/dist/cron/scheduler-entrypoint.mjs.map +1 -1
  10. package/dist/cron/scheduler-service.mjs +2 -3
  11. package/dist/cron/scheduler-service.mjs.map +1 -1
  12. package/dist/email/email-entrypoint.mjs.map +1 -1
  13. package/dist/email/email-service.mjs +2 -3
  14. package/dist/email/email-service.mjs.map +1 -1
  15. package/dist/email/index.mjs +2 -3
  16. package/dist/email/index.mjs.map +1 -1
  17. package/dist/email/testing.mjs.map +1 -1
  18. package/dist/get-port-BYnpbW5H.mjs +111 -0
  19. package/dist/get-port-BYnpbW5H.mjs.map +1 -0
  20. package/dist/index.mjs +4 -2
  21. package/dist/index.mjs.map +1 -1
  22. package/dist/local-target.d.mts +12 -0
  23. package/dist/local-target.d.mts.map +1 -0
  24. package/dist/local-target.mjs +6185 -0
  25. package/dist/local-target.mjs.map +1 -0
  26. package/dist/param-BTzY0ne5-CW6ojZ3E.mjs +66 -0
  27. package/dist/param-BTzY0ne5-CW6ojZ3E.mjs.map +1 -0
  28. package/dist/pg-connection-CadPZuEK-CF3FsSQu.mjs +79 -0
  29. package/dist/pg-connection-CadPZuEK-CF3FsSQu.mjs.map +1 -0
  30. package/dist/postgres-main.mjs +602 -0
  31. package/dist/postgres-main.mjs.map +1 -0
  32. package/dist/preflight-names-BPL-qsZF-BfoRgbgb.mjs +1252 -0
  33. package/dist/preflight-names-BPL-qsZF-BfoRgbgb.mjs.map +1 -0
  34. package/dist/{prisma-next-BvBwGCIt-CSauMX4l.mjs → prisma-next-BvBwGCIt-DssgnctU.mjs} +3 -78
  35. package/dist/prisma-next-BvBwGCIt-DssgnctU.mjs.map +1 -0
  36. package/dist/prisma-next.mjs +1 -1
  37. package/dist/{provisioned-edges-B_XS1Mz--NFJgcXK7.mjs → provisioned-edges-C1wSO3cx-YC5C19f9.mjs} +5 -65
  38. package/dist/provisioned-edges-C1wSO3cx-YC5C19f9.mjs.map +1 -0
  39. package/dist/secret-rz_ZqNeq-_xd97Jd9.mjs +47 -0
  40. package/dist/secret-rz_ZqNeq-_xd97Jd9.mjs.map +1 -0
  41. package/dist/segments-NpKN-46R-C_LQ2urs.mjs +1454 -0
  42. package/dist/segments-NpKN-46R-C_LQ2urs.mjs.map +1 -0
  43. package/dist/{serializer-D8_84XWO-DA2B6YbX.mjs → serializer-CJiOhF2d-DJUjQj1i.mjs} +4 -44
  44. package/dist/serializer-CJiOhF2d-DJUjQj1i.mjs.map +1 -0
  45. package/dist/storage/index.mjs +2 -3
  46. package/dist/storage/index.mjs.map +1 -1
  47. package/dist/storage/storage-entrypoint.mjs +4 -21
  48. package/dist/storage/storage-entrypoint.mjs.map +1 -1
  49. package/dist/storage/storage-service.mjs +2 -3
  50. package/dist/storage/storage-service.mjs.map +1 -1
  51. package/dist/storage/testing.d.mts +7 -6
  52. package/dist/storage/testing.d.mts.map +1 -1
  53. package/dist/storage/testing.mjs +4 -21
  54. package/dist/storage/testing.mjs.map +1 -1
  55. package/dist/streams/index.mjs +2 -3
  56. package/dist/streams/index.mjs.map +1 -1
  57. package/dist/streams/streams-entrypoint.mjs.map +1 -1
  58. package/dist/streams/streams-service.mjs +2 -3
  59. package/dist/streams/streams-service.mjs.map +1 -1
  60. package/dist/testing.mjs +1 -1
  61. package/dist/testing.mjs.map +1 -1
  62. package/package.json +21 -14
  63. package/src/exports/local-target.ts +1 -0
  64. package/dist/prisma-next-BvBwGCIt-CSauMX4l.mjs.map +0 -1
  65. package/dist/provisioned-edges-B_XS1Mz--NFJgcXK7.mjs.map +0 -1
  66. package/dist/serializer-D8_84XWO-DA2B6YbX.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"storage-entrypoint.mjs","names":["#value","#resolved","#loadedDeps","#processConfig","#loadedParams","#loadedSecrets","#origin"],"sources":["../../../../1-prisma-cloud/2-shared-modules/storage/dist/storage-entrypoint.mjs"],"sourcesContent":["import { createHash, createHmac, timingSafeEqual } from \"node:crypto\";\nimport { SQL } from \"bun\";\n//#region ../../1-extensions/target/dist/pg-connection-CadPZuEK.mjs\n/** Connection resilience helpers for Prisma Postgres cold-starts (FT-5226); no heavy imports (no `effect`/`alchemy`/`pg`), so the deploy lowerings, the pnPostgres runtime client, and bun-runnable services (the storage store, via the pure `@internal/prisma-cloud/connection` subpath) all share one implementation. */\n/** Network-level socket failures node-postgres surfaces as `err.code`. */\nconst TRANSIENT_CODES = /* @__PURE__ */ new Set([\n\t\"ECONNREFUSED\",\n\t\"ECONNRESET\",\n\t\"ETIMEDOUT\",\n\t\"EPIPE\",\n\t\"ENOTFOUND\",\n\t\"EAI_AGAIN\"\n]);\n/** Connection-establishment failure messages (no useful `err.code`). */\nconst TRANSIENT_MESSAGE_FRAGMENTS = [\n\t\"upstream database\",\n\t\"connection terminated\",\n\t\"connection refused\",\n\t\"terminating connection\",\n\t\"server closed the connection\",\n\t\"connection timeout\",\n\t\"timeout expired\"\n];\n/** Whether an error is a transient connection failure worth retrying, as opposed to a real query error that must surface at once. */\nfunction isTransientConnectionError(error) {\n\tif (typeof error !== \"object\" || error === null) return false;\n\tconst code = \"code\" in error && typeof error.code === \"string\" ? error.code : void 0;\n\tif (code !== void 0 && TRANSIENT_CODES.has(code)) return true;\n\tconst message = \"message\" in error && typeof error.message === \"string\" ? error.message.toLowerCase() : \"\";\n\treturn TRANSIENT_MESSAGE_FRAGMENTS.some((fragment) => message.includes(fragment));\n}\n/**\n* Retries an operation past a transient connection failure, bounded (default\n* ~1 min). `shouldRetry` decides what's transient — defaults to retrying\n* everything; the runtime client passes {@link isTransientConnectionError}.\n*/\nasync function withConnectionRetry(operation, opts = {}) {\n\tconst attempts = opts.attempts ?? 12;\n\tconst delayMs = opts.delayMs ?? 5e3;\n\tconst sleep = opts.sleep ?? ((ms) => new Promise((resolve) => setTimeout(resolve, ms)));\n\tconst shouldRetry = opts.shouldRetry ?? (() => true);\n\tlet lastError;\n\tfor (let attempt = 1; attempt <= attempts; attempt++) try {\n\t\treturn await operation();\n\t} catch (error) {\n\t\tif (!shouldRetry(error)) throw error;\n\t\tlastError = error;\n\t\tif (attempt < attempts) await sleep(delayMs);\n\t}\n\tthrow lastError;\n}\n/** Retries acquiring a connection past a transient cold-start; {@link withConnectionRetry} with {@link isTransientConnectionError} fixed as the predicate. */\nfunction retryTransientConnect(acquire, opts = {}) {\n\treturn withConnectionRetry(acquire, {\n\t\t...opts,\n\t\tshouldRetry: isTransientConnectionError\n\t});\n}\n//#endregion\n//#region src/pg-store.ts\n/**\n* The `ObjectStore` over Postgres `bytea` (spec § 3): one `objects` table,\n* single-row-per-object. Ranged reads use SQL `substring` so a range request\n* never detoasts the whole object. The schema is applied idempotently at init\n* behind a bounded connection retry — the first connect to a freshly\n* provisioned Postgres is rejected while the upstream is cold (FT-5226).\n*\n* Runtime engine code (`bun` SQL + `node:crypto`); NOT re-exported from the\n* authoring barrel.\n*/\nconst DEFAULT_MAX_KEYS$1 = 1e3;\nfunction etagOf(bytes) {\n\treturn `\"${createHash(\"sha256\").update(bytes).digest(\"hex\")}\"`;\n}\n/** bytea comes back as a Node Buffer (a Uint8Array). Fail closed on anything else rather than returning wrong bytes. */\nfunction toBytes(value) {\n\tif (value instanceof Uint8Array) return value;\n\tthrow new TypeError(`expected bytea to decode as Uint8Array, got ${typeof value}`);\n}\n/** One row → GetResult (both the whole-object and ranged queries alias the payload as `bytes`; `size` is the bigint total). */\nfunction toGetResult(row) {\n\treturn {\n\t\tbytes: toBytes(row.bytes),\n\t\tetag: row.etag,\n\t\tcontentType: row.content_type,\n\t\tsize: Number(row.size)\n\t};\n}\nvar PgObjectStore = class {\n\tsql;\n\tconstructor(sql) {\n\t\tthis.sql = sql;\n\t}\n\tasync put(bucket, key, bytes, opts = {}) {\n\t\tconst etag = etagOf(bytes);\n\t\tconst contentType = opts.contentType ?? \"application/octet-stream\";\n\t\tawait this.sql`\n insert into objects (bucket, key, bytes, size, etag, content_type)\n values (${bucket}, ${key}, ${bytes}, ${bytes.byteLength}, ${etag}, ${contentType})\n on conflict (bucket, key) do update set\n bytes = excluded.bytes, size = excluded.size,\n etag = excluded.etag, content_type = excluded.content_type`;\n\t\treturn { etag };\n\t}\n\tasync get(bucket, key, opts = {}) {\n\t\tconst range = opts.range;\n\t\tif (range) {\n\t\t\tconst from = range.start + 1;\n\t\t\tconst row = (range.end === void 0 ? await this.sql`select substring(bytes from ${from}) as bytes, size, etag, content_type\n from objects where bucket = ${bucket} and key = ${key}` : await this.sql`select substring(bytes from ${from} for ${range.end - range.start + 1}) as bytes,\n size, etag, content_type\n from objects where bucket = ${bucket} and key = ${key}`)[0];\n\t\t\treturn row === void 0 ? null : toGetResult(row);\n\t\t}\n\t\tconst row = (await this.sql`select bytes, size, etag, content_type\n from objects where bucket = ${bucket} and key = ${key}`)[0];\n\t\treturn row === void 0 ? null : toGetResult(row);\n\t}\n\tasync head(bucket, key) {\n\t\tconst row = (await this.sql`select size, etag, content_type\n from objects where bucket = ${bucket} and key = ${key}`)[0];\n\t\tif (row === void 0) return null;\n\t\treturn {\n\t\t\tetag: row.etag,\n\t\t\tsize: Number(row.size),\n\t\t\tcontentType: row.content_type\n\t\t};\n\t}\n\tasync delete(bucket, key) {\n\t\tawait this.sql`delete from objects where bucket = ${bucket} and key = ${key}`;\n\t}\n\tasync list(bucket, opts = {}) {\n\t\tconst prefix = opts.prefix ?? \"\";\n\t\tconst maxKeys = opts.maxKeys ?? DEFAULT_MAX_KEYS$1;\n\t\tconst token = opts.continuationToken;\n\t\tconst limit = maxKeys + 1;\n\t\tconst keys = (token === void 0 ? await this.sql`select key from objects\n where bucket = ${bucket} and starts_with(key, ${prefix})\n order by key limit ${limit}` : await this.sql`select key from objects\n where bucket = ${bucket} and starts_with(key, ${prefix}) and key > ${token}\n order by key limit ${limit}`).map((r) => r.key);\n\t\tconst isTruncated = keys.length > maxKeys;\n\t\tconst page = isTruncated ? keys.slice(0, maxKeys) : keys;\n\t\tconst last = page.at(-1);\n\t\treturn {\n\t\t\tkeys: page,\n\t\t\tisTruncated,\n\t\t\t...isTruncated && last !== void 0 ? { nextContinuationToken: last } : {}\n\t\t};\n\t}\n};\n/**\n* Connect (FT-5219 posture: `max: 1`, short `idleTimeout`), apply the schema\n* idempotently behind the cold-start retry, and return the store.\n*/\nasync function createPgStore(url) {\n\tconst sql = new SQL({\n\t\turl,\n\t\tmax: 1,\n\t\tidleTimeout: 10\n\t});\n\tawait retryTransientConnect(() => sql`\n create table if not exists objects (\n bucket text not null,\n key text not null,\n bytes bytea not null,\n size bigint not null,\n etag text not null,\n content_type text not null,\n created_at timestamptz not null default now(),\n primary key (bucket, key)\n )`);\n\treturn new PgObjectStore(sql);\n}\n//#endregion\n//#region src/sigv4.ts\n/**\n* AWS SigV4 verification for the S3 wire protocol (spec § 2 auth). The payload\n* hash comes from the client — `x-amz-content-sha256` (a real hash or\n* `UNSIGNED-PAYLOAD`) for header auth, `UNSIGNED-PAYLOAD` for presign — and is\n* never re-hashed; the verifier trusts what was signed, like a real S3 endpoint.\n* Runtime engine code (`node:crypto`); not re-exported from the authoring barrel.\n*/\nconst ALGORITHM = \"AWS4-HMAC-SHA256\";\nconst UNSIGNED_PAYLOAD = \"UNSIGNED-PAYLOAD\";\nfunction sha256Hex(data) {\n\treturn createHash(\"sha256\").update(data).digest(\"hex\");\n}\nfunction hmac(key, data) {\n\treturn createHmac(\"sha256\", key).update(data).digest();\n}\n/** AWS canonical URI encoding: every byte except the unreserved set is %XX. */\nfunction awsUriEncode(value) {\n\treturn encodeURIComponent(value).replace(/[!'()*]/g, (ch) => `%${ch.charCodeAt(0).toString(16).toUpperCase()}`).replace(/%7E/g, \"~\");\n}\nfunction parseCredential(credential) {\n\tconst parts = credential.split(\"/\");\n\tif (parts.length !== 5 || parts[4] !== \"aws4_request\") return null;\n\tconst [accessKeyId, date, region, service] = parts;\n\tif (!accessKeyId || !date || !region || !service) return null;\n\treturn {\n\t\taccessKeyId,\n\t\tdate,\n\t\tregion,\n\t\tservice\n\t};\n}\nfunction signingKey(secret, scope) {\n\treturn hmac(hmac(hmac(hmac(`AWS4${secret}`, scope.date), scope.region), scope.service), \"aws4_request\");\n}\nfunction canonicalHeaders(url, req, signedHeaders) {\n\treturn signedHeaders.map((name) => {\n\t\treturn `${name}:${(name === \"host\" ? url.host : req.headers.get(name) ?? \"\").trim().replace(/\\s+/g, \" \")}\\n`;\n\t}).join(\"\");\n}\nfunction canonicalQuery(url, exclude) {\n\tconst entries = [];\n\tfor (const [key, value] of url.searchParams.entries()) {\n\t\tif (exclude !== void 0 && key === exclude) continue;\n\t\tentries.push([awsUriEncode(key), awsUriEncode(value)]);\n\t}\n\tconst cmp = (a, b) => a < b ? -1 : a > b ? 1 : 0;\n\tentries.sort(([ak, av], [bk, bv]) => cmp(ak, bk) || cmp(av, bv));\n\treturn entries.map(([k, v]) => `${k}=${v}`).join(\"&\");\n}\nfunction stringToSign(amzDate, scope, canonicalRequest) {\n\tconst scopeString = `${scope.date}/${scope.region}/${scope.service}/aws4_request`;\n\treturn [\n\t\tALGORITHM,\n\t\tamzDate,\n\t\tscopeString,\n\t\tsha256Hex(canonicalRequest)\n\t].join(\"\\n\");\n}\nfunction signatureMatches(expected, provided) {\n\tconst a = Buffer.from(expected, \"hex\");\n\tconst b = Buffer.from(provided, \"hex\");\n\treturn a.length === b.length && a.length > 0 && timingSafeEqual(a, b);\n}\n/** `YYYYMMDDTHHMMSSZ` → epoch ms, or null when malformed. */\nfunction parseAmzDate(amzDate) {\n\tconst match = /^(\\d{4})(\\d{2})(\\d{2})T(\\d{2})(\\d{2})(\\d{2})Z$/.exec(amzDate);\n\tif (!match) return null;\n\tconst [, y, mo, d, h, mi, s] = match;\n\treturn Date.UTC(Number(y), Number(mo) - 1, Number(d), Number(h), Number(mi), Number(s));\n}\nfunction parseAuthorizationHeader(header) {\n\tif (!header.startsWith(`${ALGORITHM} `)) return null;\n\tconst rest = header.slice(17);\n\tconst fields = /* @__PURE__ */ new Map();\n\tfor (const part of rest.split(\",\")) {\n\t\tconst eq = part.indexOf(\"=\");\n\t\tif (eq === -1) continue;\n\t\tfields.set(part.slice(0, eq).trim(), part.slice(eq + 1).trim());\n\t}\n\tconst credential = fields.get(\"Credential\");\n\tconst signedHeaders = fields.get(\"SignedHeaders\");\n\tconst signature = fields.get(\"Signature\");\n\tif (!credential || !signedHeaders || !signature) return null;\n\treturn {\n\t\tcredential,\n\t\tsignedHeaders: signedHeaders.split(\";\"),\n\t\tsignature\n\t};\n}\n/** The one signing core both auth forms share: check the access key, rebuild the canonical request, derive the key, compare in constant time. */\nfunction verifySignature(req, url, credentials, params) {\n\tif (params.scope.accessKeyId !== credentials.accessKeyId) return {\n\t\tok: false,\n\t\treason: \"unknown access key\"\n\t};\n\tconst canonicalRequest = [\n\t\treq.method,\n\t\turl.pathname,\n\t\tcanonicalQuery(url, params.excludeQuery),\n\t\tcanonicalHeaders(url, req, params.signedHeaders),\n\t\tparams.signedHeaders.join(\";\"),\n\t\tparams.payloadHash\n\t].join(\"\\n\");\n\treturn signatureMatches(hmac(signingKey(credentials.secretAccessKey, params.scope), stringToSign(params.amzDate, params.scope, canonicalRequest)).toString(\"hex\"), params.signature) ? { ok: true } : {\n\t\tok: false,\n\t\treason: \"signature mismatch\"\n\t};\n}\nfunction verifyHeader(req, url, credentials) {\n\tconst auth = parseAuthorizationHeader(req.headers.get(\"authorization\") ?? \"\");\n\tif (!auth) return {\n\t\tok: false,\n\t\treason: \"malformed Authorization header\"\n\t};\n\tconst scope = parseCredential(auth.credential);\n\tif (!scope) return {\n\t\tok: false,\n\t\treason: \"malformed credential scope\"\n\t};\n\tconst amzDate = req.headers.get(\"x-amz-date\");\n\tif (!amzDate) return {\n\t\tok: false,\n\t\treason: \"missing x-amz-date\"\n\t};\n\tconst payloadHash = req.headers.get(\"x-amz-content-sha256\");\n\tif (!payloadHash) return {\n\t\tok: false,\n\t\treason: \"missing x-amz-content-sha256\"\n\t};\n\treturn verifySignature(req, url, credentials, {\n\t\tscope,\n\t\tamzDate,\n\t\tsignedHeaders: auth.signedHeaders,\n\t\tpayloadHash,\n\t\tsignature: auth.signature\n\t});\n}\nfunction verifyPresigned(req, url, credentials, now) {\n\tconst q = url.searchParams;\n\tif (q.get(\"X-Amz-Algorithm\") !== ALGORITHM) return {\n\t\tok: false,\n\t\treason: \"unsupported presign algorithm\"\n\t};\n\tconst credentialRaw = q.get(\"X-Amz-Credential\");\n\tconst amzDate = q.get(\"X-Amz-Date\");\n\tconst expiresRaw = q.get(\"X-Amz-Expires\");\n\tconst signedHeadersRaw = q.get(\"X-Amz-SignedHeaders\");\n\tconst signature = q.get(\"X-Amz-Signature\");\n\tif (!credentialRaw || !amzDate || !expiresRaw || !signedHeadersRaw || !signature) return {\n\t\tok: false,\n\t\treason: \"incomplete presign parameters\"\n\t};\n\tconst scope = parseCredential(credentialRaw);\n\tif (!scope) return {\n\t\tok: false,\n\t\treason: \"malformed credential scope\"\n\t};\n\tconst signedAt = parseAmzDate(amzDate);\n\tconst expires = Number(expiresRaw);\n\tif (signedAt === null || !Number.isFinite(expires)) return {\n\t\tok: false,\n\t\treason: \"malformed presign date\"\n\t};\n\tif (now.getTime() > signedAt + expires * 1e3) return {\n\t\tok: false,\n\t\treason: \"presign expired\"\n\t};\n\treturn verifySignature(req, url, credentials, {\n\t\tscope,\n\t\tamzDate,\n\t\tsignedHeaders: signedHeadersRaw.split(\";\"),\n\t\tpayloadHash: UNSIGNED_PAYLOAD,\n\t\tsignature,\n\t\texcludeQuery: \"X-Amz-Signature\"\n\t});\n}\n/**\n* Verify a request's SigV4 signature against a single credential pair. Picks\n* the presigned form when `X-Amz-Signature` is present, otherwise the\n* `Authorization`-header form. `now` is injectable for deterministic\n* expiry tests.\n*/\nfunction verifyRequest(req, credentials, now = /* @__PURE__ */ new Date()) {\n\tconst url = new URL(req.url);\n\tif (url.searchParams.has(\"X-Amz-Signature\")) return verifyPresigned(req, url, credentials, now);\n\tif (req.headers.has(\"authorization\")) return verifyHeader(req, url, credentials);\n\treturn {\n\t\tok: false,\n\t\treason: \"unsigned request\"\n\t};\n}\n//#endregion\n//#region src/handler.ts\nconst DEFAULT_CONTENT_TYPE = \"application/octet-stream\";\n/** Path-style: `/{bucket}/{key…}`. Each segment is percent-decoded. */\nfunction parseTarget(url) {\n\tconst segments = url.pathname.split(\"/\").filter((s) => s.length > 0);\n\tif (segments.length === 0) return null;\n\tconst [bucket, ...keyParts] = segments;\n\treturn {\n\t\tbucket: decodeURIComponent(bucket ?? \"\"),\n\t\tkey: keyParts.map(decodeURIComponent).join(\"/\")\n\t};\n}\n/** `bytes=a-b` (inclusive) or `bytes=a-` (open-ended). Null when absent/malformed. */\nfunction parseRange(header) {\n\tif (!header) return null;\n\tconst match = /^bytes=(\\d+)-(\\d*)$/.exec(header.trim());\n\tif (!match) return null;\n\tconst start = Number(match[1]);\n\treturn match[2] ? {\n\t\tstart,\n\t\tend: Number(match[2])\n\t} : { start };\n}\nfunction xmlEscape(value) {\n\treturn value.replace(/&/g, \"&amp;\").replace(/</g, \"&lt;\").replace(/>/g, \"&gt;\").replace(/\"/g, \"&quot;\").replace(/'/g, \"&apos;\");\n}\nfunction listXml(bucket, prefix, maxKeys, result) {\n\tconst contents = result.keys.map((k) => `<Contents><Key>${xmlEscape(k)}</Key></Contents>`).join(\"\");\n\tconst next = result.isTruncated && result.nextContinuationToken !== void 0 ? `<NextContinuationToken>${xmlEscape(result.nextContinuationToken)}</NextContinuationToken>` : \"\";\n\treturn `<?xml version=\"1.0\" encoding=\"UTF-8\"?><ListBucketResult xmlns=\"http://s3.amazonaws.com/doc/2006-03-01/\"><Name>${xmlEscape(bucket)}</Name><Prefix>${xmlEscape(prefix)}</Prefix><KeyCount>${result.keys.length}</KeyCount><MaxKeys>${maxKeys}</MaxKeys><IsTruncated>${result.isTruncated}</IsTruncated>` + contents + next + \"</ListBucketResult>\";\n}\nconst DEFAULT_MAX_KEYS = 1e3;\nasync function handleList(store, bucket, url) {\n\tconst prefix = url.searchParams.get(\"prefix\") ?? \"\";\n\tconst continuationToken = url.searchParams.get(\"continuation-token\");\n\tconst maxKeysRaw = url.searchParams.get(\"max-keys\");\n\tconst maxKeys = maxKeysRaw !== null && Number.isFinite(Number(maxKeysRaw)) ? Number(maxKeysRaw) : DEFAULT_MAX_KEYS;\n\tconst result = await store.list(bucket, {\n\t\tprefix,\n\t\tmaxKeys,\n\t\t...continuationToken !== null ? { continuationToken } : {}\n\t});\n\treturn new Response(listXml(bucket, prefix, maxKeys, result), {\n\t\tstatus: 200,\n\t\theaders: { \"content-type\": \"application/xml\" }\n\t});\n}\n/** aws-chunked / flexible-checksum PUTs frame the body as chunks + a trailer (signalled by `x-amz-content-sha256: STREAMING-…` or `content-encoding: aws-chunked`); the seed signature still verifies, so reject them (501) rather than store the raw framing as the object bytes. Decoding is out of scope. */\nfunction isStreamingPut(req) {\n\tconst contentSha = req.headers.get(\"x-amz-content-sha256\") ?? \"\";\n\tconst contentEncoding = req.headers.get(\"content-encoding\") ?? \"\";\n\treturn contentSha.startsWith(\"STREAMING-\") || contentEncoding.split(\",\").some((e) => e.trim() === \"aws-chunked\");\n}\nasync function handlePut(store, t, req) {\n\tif (isStreamingPut(req)) return new Response(\"aws-chunked / flexible checksums not supported; set requestChecksumCalculation: 'WHEN_REQUIRED'\", { status: 501 });\n\tconst body = new Uint8Array(await req.arrayBuffer());\n\tconst contentType = req.headers.get(\"content-type\") ?? DEFAULT_CONTENT_TYPE;\n\tconst { etag } = await store.put(t.bucket, t.key, body, { contentType });\n\treturn new Response(null, {\n\t\tstatus: 200,\n\t\theaders: { etag }\n\t});\n}\n/** The etag/content-type/content-length/accept-ranges headers GET and HEAD share — `contentLength` is the slice length for GET, the total object size for HEAD. */\nfunction metaHeaders(meta) {\n\treturn new Headers({\n\t\tetag: meta.etag,\n\t\t\"content-type\": meta.contentType,\n\t\t\"content-length\": String(meta.contentLength),\n\t\t\"accept-ranges\": \"bytes\"\n\t});\n}\nasync function handleGet(store, t, req) {\n\tconst range = parseRange(req.headers.get(\"range\"));\n\tconst object = await store.get(t.bucket, t.key, range ? { range } : void 0);\n\tif (!object) return new Response(null, { status: 404 });\n\tconst headers = metaHeaders({\n\t\tetag: object.etag,\n\t\tcontentType: object.contentType,\n\t\tcontentLength: object.bytes.byteLength\n\t});\n\tif (!range) return new Response(object.bytes, {\n\t\tstatus: 200,\n\t\theaders\n\t});\n\tif (range.start >= object.size && object.size > 0) return new Response(null, {\n\t\tstatus: 416,\n\t\theaders: { \"content-range\": `bytes */${object.size}` }\n\t});\n\tconst end = range.end === void 0 ? object.size - 1 : Math.min(range.end, object.size - 1);\n\theaders.set(\"content-range\", `bytes ${range.start}-${end}/${object.size}`);\n\treturn new Response(object.bytes, {\n\t\tstatus: 206,\n\t\theaders\n\t});\n}\nasync function handleHead(store, t) {\n\tconst meta = await store.head(t.bucket, t.key);\n\tif (!meta) return new Response(null, { status: 404 });\n\treturn new Response(null, {\n\t\tstatus: 200,\n\t\theaders: metaHeaders({\n\t\t\tetag: meta.etag,\n\t\t\tcontentType: meta.contentType,\n\t\t\tcontentLength: meta.size\n\t\t})\n\t});\n}\nasync function handleDelete(store, t) {\n\tawait store.delete(t.bucket, t.key);\n\treturn new Response(null, { status: 204 });\n}\nfunction createS3Handler(opts) {\n\tconst { store, credentials } = opts;\n\treturn async (req) => {\n\t\tif (!verifyRequest(req, credentials).ok) return new Response(null, { status: 403 });\n\t\tconst url = new URL(req.url);\n\t\tconst target = parseTarget(url);\n\t\tif (!target) return new Response(null, { status: 400 });\n\t\tif (req.method === \"GET\" && url.searchParams.get(\"list-type\") === \"2\" && target.key === \"\") return handleList(store, target.bucket, url);\n\t\tif (target.key === \"\") return new Response(null, { status: 400 });\n\t\tswitch (req.method) {\n\t\t\tcase \"PUT\": return handlePut(store, target, req);\n\t\t\tcase \"GET\": return handleGet(store, target, req);\n\t\t\tcase \"HEAD\": return handleHead(store, target);\n\t\t\tcase \"DELETE\": return handleDelete(store, target);\n\t\t\tdefault: return new Response(null, { status: 405 });\n\t\t}\n\t};\n}\n//#endregion\n//#region src/storage-server.ts\n/**\n* Boots the S3 wire protocol on `Bun.serve` — the D2 handler over any\n* `ObjectStore`. Binds all interfaces (Compute routes external HTTP to the VM,\n* so a loopback-only listener would be unreachable). Installs the FT-5219\n* process guards so an idle Bun.SQL connection close surfaces as a logged\n* error instead of crash-looping the process on scale-to-zero.\n*\n* Runtime engine code; NOT re-exported from the authoring barrel. The D4\n* entrypoint reads deps via `load()` and calls this.\n*/\nlet guardsInstalled = false;\n/** FT-5219: keep the process alive when Bun.SQL surfaces an idle-close as an unawaited async error. Installed once. */\nfunction installProcessGuards() {\n\tif (guardsInstalled) return;\n\tguardsInstalled = true;\n\tprocess.on(\"uncaughtException\", (err) => console.error(\"uncaughtException\", err));\n\tprocess.on(\"unhandledRejection\", (err) => console.error(\"unhandledRejection\", err));\n}\nfunction startStorageServer(opts) {\n\tinstallProcessGuards();\n\tconst handler = createS3Handler({\n\t\tstore: opts.store,\n\t\tcredentials: opts.credentials\n\t});\n\tconst hostname = opts.hostname ?? \"0.0.0.0\";\n\tconst server = Bun.serve({\n\t\tport: opts.port,\n\t\thostname,\n\t\tfetch: (req) => handler(req)\n\t});\n\treturn {\n\t\turl: `http://${hostname === \"0.0.0.0\" ? \"127.0.0.1\" : hostname}:${server.port}`,\n\t\tstop: () => server.stop(true)\n\t};\n}\n//#endregion\n//#region ../../../0-framework/0-foundation/foundation/dist/casts.mjs\n/**\n* **Last-resort escape hatch for unsafe type assertions. Not a sanctioned tool to reach for.**\n*\n* Before reaching for `blindCast`, **rewrite the surrounding code so the cast becomes\n* unnecessary**: tighten an input type, add a runtime check that narrows via a type\n* predicate, restructure a generic so the compiler can see the relationship you're\n* asserting, or use {@link castAs} when the value already satisfies the target type.\n* Only when no rewrite is feasible does `blindCast` become the right answer — and at\n* that point, the `Reason` literal you supply must articulate the compromise in\n* language a reviewer can evaluate.\n*\n* The reviewer **will** validate the `Reason`. If it doesn't hold up under scrutiny,\n* that is not a signal to soften the reason; it is a signal to go back and solve the\n* underlying type-system problem properly. An unconvincing justification is rework,\n* not a free pass.\n*\n* `blindCast` is the auditable form of `as Foo` / `as unknown as Foo`: it bypasses\n* the compiler's checks (the input type is `unknown`, the output type is whatever the\n* caller asks for), but it forces the unsafety to be named at the call site instead of\n* smuggled in via a bare `as`. The `Reason` type parameter exists only at compile\n* time — it is not present in the emitted JavaScript — but it is grep-able and\n* visible to future readers.\n*\n* @example\n* ```typescript\n* const stringValue = blindCast<\n* string,\n* \"JSON.parse returns `unknown`; this field is documented to be a string in the API contract\"\n* >(parsed[key]);\n* ```\n*\n* @typeParam TargetType - The type the caller is asserting the input has.\n* @typeParam _Reason - A string literal describing why bypassing the type system is necessary here.\n* Only meaningful at compile time. The reviewer evaluates whether it justifies the unsafety.\n*/\nfunction blindCast(input) {\n\treturn input;\n}\n//#endregion\n//#region ../../../0-framework/1-core/core/dist/graph-CP16cJyH.mjs\n/**\n* Core model: node types and the factories that construct them, plain frozen\n* data objects. A node's `extension` + `type` form its deploy-time registry key (ADR-0017).\n*/\nconst NODE = Symbol.for(\"prisma:node\");\nfunction requireType(type, factory) {\n\tif (typeof type !== \"string\" || type.length === 0) throw new Error(`${factory}() requires a non-empty node type.`);\n}\nfunction requireName(name, factory) {\n\tif (typeof name !== \"string\" || name.length === 0) throw new Error(`${factory}() requires a non-empty name.`);\n}\nfunction requireExtension(extension, factory) {\n\tif (typeof extension !== \"string\" || extension.length === 0) throw new Error(`${factory}() requires a non-empty extension (the authoring extension's package name).`);\n}\n/**\n* Core's grammar for every name that becomes a config-key segment —\n* addresses, input/param/secret names: ASCII letters and digits only.\n* Conservative by design so any target medium — POSIX env-var keys\n* included — can uppercase and \"_\"-join segments without escaping.\n*/\nfunction isConfigKeySegment(name) {\n\treturn /^[A-Za-z0-9]+$/.test(name);\n}\nfunction requireConfigKeySegmentName(name, kind, factory) {\n\tif (!isConfigKeySegment(name)) throw new Error(`${factory}() ${kind} name \"${name}\" must contain only ASCII letters and digits ([A-Za-z0-9]) — declared names derive deterministic config keys, uppercased and joined with \"_\" (an input \"db\"'s param \"url\" becomes config key \"DB_URL\"), so an underscore inside a name collides with that separator and any other character has no place in a config key. \"${name}\" would put \"${name.toUpperCase()}\" inside the derived key.`);\n}\nfunction requireConfigKeySegmentNames(names, kind, factory) {\n\tfor (const name of names) requireConfigKeySegmentName(name, kind, factory);\n}\nfunction freezeParams(params) {\n\tconst frozen = {};\n\tfor (const [name, param] of Object.entries(params)) frozen[name] = Object.freeze({ ...param });\n\treturn Object.freeze(frozen);\n}\nfunction freezeSecrets(secrets) {\n\tconst frozen = {};\n\tfor (const [name, need] of Object.entries(secrets)) frozen[name] = Object.freeze({ ...need });\n\treturn blindCast(Object.freeze(frozen));\n}\n/** A frozen shallow copy that keeps the caller's declared type. */\nfunction frozenShallowCopy(obj) {\n\treturn blindCast(Object.freeze({ ...obj }));\n}\n/**\n* Seals a node instance after its constructor has assigned all fields — the\n* last statement of a concrete node class's constructor. A free function, not\n* a base-class method, so an instance stays structurally a plain frozen node.\n*/\nfunction freezeNode(node) {\n\tObject.freeze(node);\n\treturn node;\n}\n/**\n* Everything `resource()` establishes, minus the freeze — an extension\n* whose resource node carries extra fields extends this, assigns them, and\n* calls `freezeNode(this)` as its constructor's last statement.\n*/\nvar ResourceNodeBase = class {\n\t[NODE] = true;\n\tkind = \"resource\";\n\tname;\n\textension;\n\ttype;\n\tprovides;\n\tconstructor(def) {\n\t\trequireName(def.name, \"resource\");\n\t\trequireExtension(def.extension, \"resource\");\n\t\tconst provides = def.provides;\n\t\tif (typeof provides !== \"object\" || provides === null || typeof provides.kind !== \"string\" || provides.kind.length === 0 || typeof provides.satisfies !== \"function\") throw new Error(\"resource() requires `provides` — the Contract this resource offers (a non-empty `kind` plus its `satisfies()`).\");\n\t\tthis.name = def.name;\n\t\tthis.extension = def.extension;\n\t\tthis.type = provides.kind;\n\t\tthis.provides = provides;\n\t}\n};\n/** The core leaf: exactly the base, frozen. */\nvar FrozenResourceNode = class extends ResourceNodeBase {\n\tconstructor(def) {\n\t\tsuper(def);\n\t\tfreezeNode(this);\n\t}\n};\n/**\n* Constructs a branded, frozen Resource node — an identity plus the Contract\n* it provides; the routing `type` is the contract's `kind`. Pure — nothing\n* is provisioned until a module provisions it.\n*/\nfunction resource(def) {\n\treturn new FrozenResourceNode(def);\n}\n/**\n* Constructs a branded, frozen Service node — declarations only (inputs,\n* params, build adapter, and the ports it exposes). Pure; carries no runtime behavior.\n*/\nfunction service$1(def) {\n\trequireName(def.name, \"service\");\n\trequireExtension(def.extension, \"service\");\n\trequireType(def.type, \"service\");\n\trequireConfigKeySegmentNames(Object.keys(def.inputs), \"input\", \"service\");\n\trequireConfigKeySegmentNames(Object.keys(def.params), \"param\", \"service\");\n\trequireConfigKeySegmentNames(Object.keys(def.secrets ?? {}), \"secret\", \"service\");\n\tfor (const slot of Object.keys(def.secrets ?? {})) if (Object.hasOwn(def.params, slot)) throw new Error(`service() secret slot \"${slot}\" collides with a param of the same name — a secret slot and a service param derive the same config key (COMPOSER_<addr>_${slot.toUpperCase()}); rename one.`);\n\treturn Object.freeze({\n\t\t[NODE]: true,\n\t\tkind: \"service\",\n\t\tname: def.name,\n\t\textension: def.extension,\n\t\ttype: def.type,\n\t\tinputs: frozenShallowCopy(def.inputs),\n\t\tparams: freezeParams(def.params),\n\t\tsecretSlots: freezeSecrets(def.secrets ?? blindCast({})),\n\t\tbuild: Object.freeze({ ...def.build }),\n\t\texpose: def.expose !== void 0 ? frozenShallowCopy(def.expose) : void 0\n\t});\n}\n/**\n* Constructs a branded, frozen DependencyEnd. `required` (if given) is the\n* contract Load compares a wired ref against via `satisfies()`; an unnamed\n* end's diagnostic `name` falls back to its `type`.\n*/\nfunction dependency(def) {\n\trequireType(def.type, \"dependency\");\n\trequireConfigKeySegmentNames(Object.keys(def.connection.params), \"param\", \"dependency\");\n\tconst connection = Object.freeze({\n\t\tparams: freezeParams(def.connection.params),\n\t\thydrate: def.connection.hydrate\n\t});\n\treturn Object.freeze({\n\t\t[NODE]: true,\n\t\tkind: \"dependency\",\n\t\tname: def.name !== void 0 && def.name.length > 0 ? def.name : def.type,\n\t\ttype: def.type,\n\t\tconnection,\n\t\trequired: def.required\n\t});\n}\n//#endregion\n//#region ../../../0-framework/0-foundation/foundation/dist/secret.mjs\n/**\n* A value wrapper that redacts everywhere except the one explicit reader,\n* `expose()`. Sensitivity is carried by the TYPE (`SecretBox<T>`), not a flag a\n* sink must remember to check: `String(box)`, template interpolation,\n* `JSON.stringify`, and `console.log`/`util.inspect` all print `[REDACTED]`, so\n* a secret can't leak through an accidental log or serialization.\n*\n* Shape matches the platform's own `secrecy` type (pdp-control-plane). The class\n* is nominal enough on its own — no phantom brand.\n*/\nconst REDACTED = \"[REDACTED]\";\nvar SecretBox = class {\n\t#value;\n\tconstructor(value) {\n\t\tthis.#value = value;\n\t}\n\t/** The sole explicit door to the wrapped value. */\n\texpose() {\n\t\treturn this.#value;\n\t}\n\ttoString() {\n\t\treturn REDACTED;\n\t}\n\ttoJSON() {\n\t\treturn REDACTED;\n\t}\n\tvalueOf() {\n\t\treturn REDACTED;\n\t}\n\t[Symbol.toPrimitive]() {\n\t\treturn REDACTED;\n\t}\n\t[Symbol.for(\"nodejs.util.inspect.custom\")]() {\n\t\treturn REDACTED;\n\t}\n};\n//#endregion\n//#region ../../../0-framework/1-core/core/dist/index.mjs\nfunction scalarSchema(name, check) {\n\treturn { \"~standard\": {\n\t\tversion: 1,\n\t\tvendor: \"@prisma/composer\",\n\t\tvalidate: (value) => check(value) ? { value } : { issues: [{ message: `expected ${name}, got ${typeof value}` }] }\n\t} };\n}\nconst stringSchema = scalarSchema(\"string\", (v) => typeof v === \"string\");\nconst numberSchema = scalarSchema(\"number\", (v) => typeof v === \"number\" && Number.isFinite(v));\nfunction withFacets(schema, opts) {\n\treturn {\n\t\tschema,\n\t\t...opts.optional !== void 0 ? { optional: opts.optional } : {},\n\t\t...opts.default !== void 0 ? { default: opts.default } : {},\n\t\t...opts.provision !== void 0 ? { provision: opts.provision } : {}\n\t};\n}\n/** A string-valued param. */\nfunction string$1(opts = {}) {\n\treturn withFacets(stringSchema, opts);\n}\n/** A number-valued param. */\nfunction number$1(opts = {}) {\n\treturn withFacets(numberSchema, opts);\n}\n/**\n* Synchronous hydrate — what the node's `load()` uses so\n* `const { db } = service.load()` reads without `await`. Requires every\n* connection.hydrate to return synchronously; a Promise return is a loud error\n* naming the input (an async client factory must use the async `hydrate` path).\n*/\nfunction hydrateSync(root, config) {\n\tconst deps = {};\n\tfor (const [name, inputNode] of Object.entries(root.inputs)) {\n\t\tconst values = config.inputs[name] ?? {};\n\t\tconst client = inputNode.connection.hydrate(values);\n\t\tif (client instanceof Promise) throw new Error(`Connection hydrate for input \"${name}\" returned a Promise; load() requires a synchronous client factory.`);\n\t\tdeps[name] = client;\n\t}\n\treturn deps;\n}\n/**\n* Wraps each of a service's resolved secret values in a redacting `SecretBox`\n* — what the node's `secrets()` accessor returns (ADR-0021, sibling to\n* `load()`/`config()`). The RESOLUTION of a secret's value (the boot\n* double-lookup that reads the platform var the pointer names) is the target\n* pack's job; core is handed the already-resolved strings and only boxes them,\n* so a secret is redacted by TYPE from here on. A declared slot missing from\n* `values` is a target contract violation, named loudly.\n*/\nfunction hydrateSecrets(root, values) {\n\tconst boxed = {};\n\tfor (const slot of Object.keys(root.secretSlots)) {\n\t\tconst value = values[slot];\n\t\tif (value === void 0) throw new Error(`secret slot \"${slot}\" has no resolved value — the target must resolve every declared secret before hydrateSecrets().`);\n\t\tboxed[slot] = new SecretBox(value);\n\t}\n\treturn blindCast(boxed);\n}\n//#endregion\n//#region ../../../0-framework/2-authoring/node/dist/index.mjs\nconst nodeBuild = (opts) => ({\n\textension: \"@prisma/composer/node\",\n\ttype: \"node\",\n\tmodule: opts.module,\n\tentry: opts.entry,\n\t...opts.dir === void 0 ? {} : { dir: opts.dir }\n});\n//#endregion\n//#region ../../../../node_modules/@ark/util/out/arrays.js\nconst liftArray = (data) => Array.isArray(data) ? data : [data];\n/**\n* Splits an array into two arrays based on the result of a predicate\n*\n* @param predicate - The guard function used to determine which items to include.\n* @returns A tuple containing two arrays:\n* \t\t\t\t- the first includes items for which `predicate` returns true\n* \t\t\t\t- the second includes items for which `predicate` returns false\n*\n* @example\n* const list = [1, \"2\", \"3\", 4, 5];\n* const [numbers, strings] = spliterate(list, (x) => typeof x === \"number\");\n* // Type: number[]\n* // Output: [1, 4, 5]\n* console.log(evens);\n* // Type: string[]\n* // Output: [\"2\", \"3\"]\n* console.log(odds);\n*/\nconst spliterate = (arr, predicate) => {\n\tconst result = [[], []];\n\tfor (const item of arr) if (predicate(item)) result[0].push(item);\n\telse result[1].push(item);\n\treturn result;\n};\nconst ReadonlyArray = Array;\nconst includes = (array, element) => array.includes(element);\nconst range = (length, offset = 0) => [...new Array(length)].map((_, i) => i + offset);\n/**\n* Adds a value or array to an array, returning the concatenated result\n*/\nconst append = (to, value, opts) => {\n\tif (to === void 0) return value === void 0 ? [] : Array.isArray(value) ? value : [value];\n\tif (opts?.prepend) if (Array.isArray(value)) to.unshift(...value);\n\telse to.unshift(value);\n\telse if (Array.isArray(value)) to.push(...value);\n\telse to.push(value);\n\treturn to;\n};\n/**\n* Concatenates an element or list with a readonly list\n*/\nconst conflatenate = (to, elementOrList) => {\n\tif (elementOrList === void 0 || elementOrList === null) return to ?? [];\n\tif (to === void 0 || to === null) return liftArray(elementOrList);\n\treturn to.concat(elementOrList);\n};\n/**\n* Concatenates a variadic list of elements or lists with a readonly list\n*/\nconst conflatenateAll = (...elementsOrLists) => elementsOrLists.reduce(conflatenate, []);\n/**\n* Appends a value or concatenates an array to an array if it is not already included, returning the array\n*/\nconst appendUnique = (to, value, opts) => {\n\tif (to === void 0) return Array.isArray(value) ? value : [value];\n\tconst isEqual = opts?.isEqual ?? ((l, r) => l === r);\n\tfor (const v of liftArray(value)) if (!to.some((existing) => isEqual(existing, v))) to.push(v);\n\treturn to;\n};\nconst groupBy = (array, discriminant) => array.reduce((result, item) => {\n\tconst key = item[discriminant];\n\tresult[key] = append(result[key], item);\n\treturn result;\n}, {});\nconst arrayEquals = (l, r, opts) => l.length === r.length && l.every(opts?.isEqual ? (lItem, i) => opts.isEqual(lItem, r[i]) : (lItem, i) => lItem === r[i]);\n//#endregion\n//#region ../../../../node_modules/@ark/util/out/domain.js\nconst hasDomain = (data, kind) => domainOf(data) === kind;\nconst domainOf = (data) => {\n\tconst builtinType = typeof data;\n\treturn builtinType === \"object\" ? data === null ? \"null\" : \"object\" : builtinType === \"function\" ? \"object\" : builtinType;\n};\n/** Each domain's completion for the phrase \"must be _____\" */\nconst domainDescriptions = {\n\tboolean: \"boolean\",\n\tnull: \"null\",\n\tundefined: \"undefined\",\n\tbigint: \"a bigint\",\n\tnumber: \"a number\",\n\tobject: \"an object\",\n\tstring: \"a string\",\n\tsymbol: \"a symbol\"\n};\nconst jsTypeOfDescriptions = {\n\t...domainDescriptions,\n\tfunction: \"a function\"\n};\n//#endregion\n//#region ../../../../node_modules/@ark/util/out/errors.js\nvar InternalArktypeError = class extends Error {};\nconst throwInternalError = (message) => throwError(message, InternalArktypeError);\nconst throwError = (message, ctor = Error) => {\n\tthrow new ctor(message);\n};\nvar ParseError = class extends Error {\n\tname = \"ParseError\";\n};\nconst throwParseError = (message) => throwError(message, ParseError);\n/**\n* TypeScript won't suggest strings beginning with a space as properties.\n* Useful for symbol-like string properties.\n*/\nconst noSuggest = (s) => ` ${s}`;\n//#endregion\n//#region ../../../../node_modules/@ark/util/out/flatMorph.js\nconst flatMorph = (o, flatMapEntry) => {\n\tconst result = {};\n\tconst inputIsArray = Array.isArray(o);\n\tlet outputShouldBeArray = false;\n\tfor (const [i, entry] of Object.entries(o).entries()) {\n\t\tconst mapped = inputIsArray ? flatMapEntry(i, entry[1]) : flatMapEntry(...entry, i);\n\t\toutputShouldBeArray ||= typeof mapped[0] === \"number\";\n\t\tconst flattenedEntries = Array.isArray(mapped[0]) || mapped.length === 0 ? mapped : [mapped];\n\t\tfor (const [k, v] of flattenedEntries) if (typeof k === \"object\") result[k.group] = append(result[k.group], v);\n\t\telse result[k] = v;\n\t}\n\treturn outputShouldBeArray ? Object.values(result) : result;\n};\n//#endregion\n//#region ../../../../node_modules/@ark/util/out/records.js\n/**\n* Object.entries wrapper providing narrowed types for objects with known sets\n* of keys, e.g. those defined internally as configs\n*/\nconst entriesOf = Object.entries;\nconst isKeyOf = (k, o) => k in o;\nconst hasKey = (o, k) => k in o;\nvar DynamicBase = class {\n\tconstructor(properties) {\n\t\tObject.assign(this, properties);\n\t}\n};\nconst NoopBase = class {};\n/** @ts-ignore (needed to extend `t`) **/\nvar CastableBase = class extends NoopBase {};\nconst splitByKeys = (o, leftKeys) => {\n\tconst l = {};\n\tconst r = {};\n\tlet k;\n\tfor (k in o) if (k in leftKeys) l[k] = o[k];\n\telse r[k] = o[k];\n\treturn [l, r];\n};\nconst omit = (o, keys) => splitByKeys(o, keys)[1];\nconst isEmptyObject = (o) => Object.keys(o).length === 0;\nconst stringAndSymbolicEntriesOf = (o) => [...Object.entries(o), ...Object.getOwnPropertySymbols(o).map((k) => [k, o[k]])];\n/** Like Object.assign, but it will preserve getters instead of evaluating them. */\nconst defineProperties = (base, merged) => Object.defineProperties(base, Object.getOwnPropertyDescriptors(merged));\n/** Copies enumerable keys of o to a new object in alphabetical order */\nconst withAlphabetizedKeys = (o) => {\n\tconst keys = Object.keys(o).sort();\n\tconst result = {};\n\tfor (let i = 0; i < keys.length; i++) result[keys[i]] = o[keys[i]];\n\treturn result;\n};\nconst unset = noSuggest(`unset​`);\nconst enumValues = (tsEnum) => Object.values(tsEnum).filter((v) => {\n\tif (typeof v === \"number\") return true;\n\treturn typeof tsEnum[v] !== \"number\";\n});\n//#endregion\n//#region ../../../../node_modules/@ark/util/out/objectKinds.js\nconst ecmascriptConstructors = {\n\tArray,\n\tBoolean,\n\tDate,\n\tError,\n\tFunction,\n\tMap,\n\tNumber,\n\tPromise,\n\tRegExp,\n\tSet,\n\tString,\n\tWeakMap,\n\tWeakSet\n};\n/** Node18 */\nconst FileConstructor = globalThis.File ?? Blob;\nconst platformConstructors = {\n\tArrayBuffer,\n\tBlob,\n\tFile: FileConstructor,\n\tFormData,\n\tHeaders,\n\tRequest,\n\tResponse,\n\tURL\n};\nconst typedArrayConstructors = {\n\tInt8Array,\n\tUint8Array,\n\tUint8ClampedArray,\n\tInt16Array,\n\tUint16Array,\n\tInt32Array,\n\tUint32Array,\n\tFloat32Array,\n\tFloat64Array,\n\tBigInt64Array,\n\tBigUint64Array\n};\nconst builtinConstructors = {\n\t...ecmascriptConstructors,\n\t...platformConstructors,\n\t...typedArrayConstructors,\n\tString,\n\tNumber,\n\tBoolean\n};\nconst objectKindOf = (data) => {\n\tlet prototype = Object.getPrototypeOf(data);\n\twhile (prototype?.constructor && (!isKeyOf(prototype.constructor.name, builtinConstructors) || !(data instanceof builtinConstructors[prototype.constructor.name]))) prototype = Object.getPrototypeOf(prototype);\n\tconst name = prototype?.constructor?.name;\n\tif (name === void 0 || name === \"Object\") return void 0;\n\treturn name;\n};\nconst objectKindOrDomainOf = (data) => typeof data === \"object\" && data !== null ? objectKindOf(data) ?? \"object\" : domainOf(data);\nconst isArray = Array.isArray;\nconst ecmascriptDescriptions = {\n\tArray: \"an array\",\n\tFunction: \"a function\",\n\tDate: \"a Date\",\n\tRegExp: \"a RegExp\",\n\tError: \"an Error\",\n\tMap: \"a Map\",\n\tSet: \"a Set\",\n\tString: \"a String object\",\n\tNumber: \"a Number object\",\n\tBoolean: \"a Boolean object\",\n\tPromise: \"a Promise\",\n\tWeakMap: \"a WeakMap\",\n\tWeakSet: \"a WeakSet\"\n};\nconst platformDescriptions = {\n\tArrayBuffer: \"an ArrayBuffer instance\",\n\tBlob: \"a Blob instance\",\n\tFile: \"a File instance\",\n\tFormData: \"a FormData instance\",\n\tHeaders: \"a Headers instance\",\n\tRequest: \"a Request instance\",\n\tResponse: \"a Response instance\",\n\tURL: \"a URL instance\"\n};\nconst typedArrayDescriptions = {\n\tInt8Array: \"an Int8Array\",\n\tUint8Array: \"a Uint8Array\",\n\tUint8ClampedArray: \"a Uint8ClampedArray\",\n\tInt16Array: \"an Int16Array\",\n\tUint16Array: \"a Uint16Array\",\n\tInt32Array: \"an Int32Array\",\n\tUint32Array: \"a Uint32Array\",\n\tFloat32Array: \"a Float32Array\",\n\tFloat64Array: \"a Float64Array\",\n\tBigInt64Array: \"a BigInt64Array\",\n\tBigUint64Array: \"a BigUint64Array\"\n};\n/** Each defaultObjectKind's completion for the phrase \"must be _____\" */\nconst objectKindDescriptions = {\n\t...ecmascriptDescriptions,\n\t...platformDescriptions,\n\t...typedArrayDescriptions\n};\n/**\n* this will only return an object kind if it's the root constructor\n* example TypeError would return null not 'Error'\n**/\nconst getBuiltinNameOfConstructor = (ctor) => {\n\tconst constructorName = Object(ctor).name ?? null;\n\treturn constructorName && isKeyOf(constructorName, builtinConstructors) && builtinConstructors[constructorName] === ctor ? constructorName : null;\n};\nconst constructorExtends = (ctor, base) => {\n\tlet current = ctor.prototype;\n\twhile (current !== null) {\n\t\tif (current === base.prototype) return true;\n\t\tcurrent = Object.getPrototypeOf(current);\n\t}\n\treturn false;\n};\n//#endregion\n//#region ../../../../node_modules/@ark/util/out/clone.js\n/** Deeply copy the properties of the a non-subclassed Object, Array or Date.*/\nconst deepClone = (input) => _clone(input, /* @__PURE__ */ new Map());\nconst _clone = (input, seen) => {\n\tif (typeof input !== \"object\" || input === null) return input;\n\tif (seen?.has(input)) return seen.get(input);\n\tconst builtinConstructorName = getBuiltinNameOfConstructor(input.constructor);\n\tif (builtinConstructorName === \"Date\") return new Date(input.getTime());\n\tif (builtinConstructorName && builtinConstructorName !== \"Array\") return input;\n\tconst cloned = Array.isArray(input) ? input.slice() : Object.create(Object.getPrototypeOf(input));\n\tconst propertyDescriptors = Object.getOwnPropertyDescriptors(input);\n\tif (seen) {\n\t\tseen.set(input, cloned);\n\t\tfor (const k in propertyDescriptors) {\n\t\t\tconst desc = propertyDescriptors[k];\n\t\t\tif (\"get\" in desc || \"set\" in desc) continue;\n\t\t\tdesc.value = _clone(desc.value, seen);\n\t\t}\n\t}\n\tObject.defineProperties(cloned, propertyDescriptors);\n\treturn cloned;\n};\n//#endregion\n//#region ../../../../node_modules/@ark/util/out/functions.js\nconst cached = (thunk) => {\n\tlet result = unset;\n\treturn () => result === unset ? result = thunk() : result;\n};\nconst isThunk = (value) => typeof value === \"function\" && value.length === 0;\nconst DynamicFunction = class extends Function {\n\tconstructor(...args) {\n\t\tconst params = args.slice(0, -1);\n\t\tconst body = args[args.length - 1];\n\t\ttry {\n\t\t\tsuper(...params, body);\n\t\t} catch (e) {\n\t\t\treturn throwInternalError(`Encountered an unexpected error while compiling your definition:\n Message: ${e} \n Source: (${args.slice(0, -1)}) => {\n ${args[args.length - 1]}\n }`);\n\t\t}\n\t}\n};\nvar Callable = class {\n\tconstructor(fn, ...[opts]) {\n\t\treturn Object.assign(Object.setPrototypeOf(fn.bind(opts?.bind ?? this), this.constructor.prototype), opts?.attach);\n\t}\n};\n/**\n* Checks if the environment has Content Security Policy (CSP) enabled,\n* preventing JIT-optimized code from being compiled via new Function().\n*\n* @returns `true` if a function created using new Function() can be\n* successfully invoked in the environment, `false` otherwise.\n*\n* The result is cached for subsequent invocations.\n*/\nconst envHasCsp = cached(() => {\n\ttry {\n\t\treturn new Function(\"return false\")();\n\t} catch {\n\t\treturn true;\n\t}\n});\nnoSuggest(\"brand\");\nnoSuggest(\"arkInferred\");\n//#endregion\n//#region ../../../../node_modules/@ark/util/out/hkt.js\nnoSuggest(\"args\");\nvar Hkt = class {\n\tconstructor() {}\n};\n//#endregion\n//#region ../../../../node_modules/@ark/util/out/isomorphic.js\n/** get a CJS/ESM compatible string representing the current file */\nconst fileName = () => {\n\ttry {\n\t\treturn (((/* @__PURE__ */ new Error()).stack?.split(\"\\n\")[2]?.trim() || \"\").match(/\\(?(.+?)(?::\\d+:\\d+)?\\)?$/)?.[1] || \"unknown\").replace(/^file:\\/\\//, \"\");\n\t} catch {\n\t\treturn \"unknown\";\n\t}\n};\nconst isomorphic = {\n\tfileName,\n\tenv: globalThis.process?.env ?? {}\n};\n//#endregion\n//#region ../../../../node_modules/@ark/util/out/strings.js\nconst capitalize$1 = (s) => s[0].toUpperCase() + s.slice(1);\nconst uncapitalize = (s) => s[0].toLowerCase() + s.slice(1);\nconst anchoredRegex = (regex) => new RegExp(anchoredSource(regex), typeof regex === \"string\" ? \"\" : regex.flags);\nconst anchoredSource = (regex) => {\n\treturn `^(?:${typeof regex === \"string\" ? regex : regex.source})$`;\n};\nconst RegexPatterns = {\n\tnegativeLookahead: (pattern) => `(?!${pattern})`,\n\tnonCapturingGroup: (pattern) => `(?:${pattern})`\n};\nconst whitespaceChars = {\n\t\" \": 1,\n\t\"\\n\": 1,\n\t\"\t\": 1\n};\n//#endregion\n//#region ../../../../node_modules/@ark/util/out/numbers.js\nconst anchoredNegativeZeroPattern = /^-0\\.?0*$/.source;\nconst positiveIntegerPattern = /[1-9]\\d*/.source;\nconst looseDecimalPattern = /\\.\\d+/.source;\nconst strictDecimalPattern = /\\.\\d*[1-9]/.source;\nconst createNumberMatcher = (opts) => anchoredRegex(RegexPatterns.negativeLookahead(anchoredNegativeZeroPattern) + RegexPatterns.nonCapturingGroup(\"-?\" + RegexPatterns.nonCapturingGroup(RegexPatterns.nonCapturingGroup(\"0|\" + positiveIntegerPattern) + RegexPatterns.nonCapturingGroup(opts.decimalPattern) + \"?\") + (opts.allowDecimalOnly ? \"|\" + opts.decimalPattern : \"\") + \"?\"));\n/**\n* Matches a well-formatted numeric expression according to the following rules:\n* 1. Must include an integer portion (i.e. '.321' must be written as '0.321')\n* 2. The first digit of the value must not be 0, unless the entire integer portion is 0\n* 3. If the value includes a decimal, its last digit may not be 0\n* 4. The value may not be \"-0\"\n*/\nconst wellFormedNumberMatcher = createNumberMatcher({\n\tdecimalPattern: strictDecimalPattern,\n\tallowDecimalOnly: false\n});\nconst isWellFormedNumber = wellFormedNumberMatcher.test.bind(wellFormedNumberMatcher);\n/**\n* Similar to wellFormedNumber but more permissive in the following ways:\n*\n* - Allows numbers without an integer portion like \".5\" (well-formed equivalent is \"0.5\")\n* - Allows decimals with trailing zeroes like \"0.10\" (well-formed equivalent is \"0.1\")\n*/\nconst numericStringMatcher = createNumberMatcher({\n\tdecimalPattern: looseDecimalPattern,\n\tallowDecimalOnly: true\n});\nnumericStringMatcher.test.bind(numericStringMatcher);\nconst numberLikeMatcher = /^-?\\d*\\.?\\d*$/;\nconst isNumberLike = (s) => s.length !== 0 && numberLikeMatcher.test(s);\n/**\n* Matches a well-formatted integer according to the following rules:\n* 1. must begin with an integer, the first digit of which cannot be 0 unless the entire value is 0\n* 2. The value may not be \"-0\"\n*/\nconst wellFormedIntegerMatcher = anchoredRegex(RegexPatterns.negativeLookahead(\"^-0$\") + \"-?\" + RegexPatterns.nonCapturingGroup(RegexPatterns.nonCapturingGroup(\"0|\" + positiveIntegerPattern)));\nconst isWellFormedInteger = wellFormedIntegerMatcher.test.bind(wellFormedIntegerMatcher);\nconst integerLikeMatcher = /^-?\\d+$/;\nconst isIntegerLike = integerLikeMatcher.test.bind(integerLikeMatcher);\nconst numericLiteralDescriptions = {\n\tnumber: \"a number\",\n\tbigint: \"a bigint\",\n\tinteger: \"an integer\"\n};\nconst writeMalformedNumericLiteralMessage = (def, kind) => `'${def}' was parsed as ${numericLiteralDescriptions[kind]} but could not be narrowed to a literal value. Avoid unnecessary leading or trailing zeros and other abnormal notation`;\nconst isWellFormed = (def, kind) => kind === \"number\" ? isWellFormedNumber(def) : isWellFormedInteger(def);\nconst parseKind = (def, kind) => kind === \"number\" ? Number(def) : Number.parseInt(def);\nconst isKindLike = (def, kind) => kind === \"number\" ? isNumberLike(def) : isIntegerLike(def);\nconst tryParseNumber = (token, options) => parseNumeric(token, \"number\", options);\nconst tryParseWellFormedNumber = (token, options) => parseNumeric(token, \"number\", {\n\t...options,\n\tstrict: true\n});\nconst tryParseInteger = (token, options) => parseNumeric(token, \"integer\", options);\nconst parseNumeric = (token, kind, options) => {\n\tconst value = parseKind(token, kind);\n\tif (!Number.isNaN(value)) {\n\t\tif (isKindLike(token, kind)) {\n\t\t\tif (options?.strict) return isWellFormed(token, kind) ? value : throwParseError(writeMalformedNumericLiteralMessage(token, kind));\n\t\t\treturn value;\n\t\t}\n\t}\n\treturn options?.errorOnFail ? throwParseError(options?.errorOnFail === true ? `Failed to parse ${numericLiteralDescriptions[kind]} from '${token}'` : options?.errorOnFail) : void 0;\n};\nconst tryParseWellFormedBigint = (def) => {\n\tif (def[def.length - 1] !== \"n\") return;\n\tconst maybeIntegerLiteral = def.slice(0, -1);\n\tlet value;\n\ttry {\n\t\tvalue = BigInt(maybeIntegerLiteral);\n\t} catch {\n\t\treturn;\n\t}\n\tif (wellFormedIntegerMatcher.test(maybeIntegerLiteral)) return value;\n\tif (integerLikeMatcher.test(maybeIntegerLiteral)) return throwParseError(writeMalformedNumericLiteralMessage(def, \"bigint\"));\n};\nconst registry = {\n\tversion: \"0.56.2\",\n\tfilename: isomorphic.fileName(),\n\tFileConstructor\n};\nconst namesByResolution = /* @__PURE__ */ new Map();\nconst nameCounts = Object.create(null);\nconst register = (value) => {\n\tconst existingName = namesByResolution.get(value);\n\tif (existingName) return existingName;\n\tlet name = baseNameFor(value);\n\tif (nameCounts[name]) name = `${name}${nameCounts[name]++}`;\n\telse nameCounts[name] = 1;\n\tregistry[name] = value;\n\tnamesByResolution.set(value, name);\n\treturn name;\n};\nconst isDotAccessible = (keyName) => /^[$A-Z_a-z][\\w$]*$/.test(keyName);\nconst baseNameFor = (value) => {\n\tswitch (typeof value) {\n\t\tcase \"object\": {\n\t\t\tif (value === null) break;\n\t\t\tconst prefix = objectKindOf(value) ?? \"object\";\n\t\t\treturn prefix[0].toLowerCase() + prefix.slice(1);\n\t\t}\n\t\tcase \"function\": return isDotAccessible(value.name) ? value.name : \"fn\";\n\t\tcase \"symbol\": return value.description && isDotAccessible(value.description) ? value.description : \"symbol\";\n\t}\n\treturn throwInternalError(`Unexpected attempt to register serializable value of type ${domainOf(value)}`);\n};\n//#endregion\n//#region ../../../../node_modules/@ark/util/out/primitive.js\nconst serializePrimitive = (value) => typeof value === \"string\" ? JSON.stringify(value) : typeof value === \"bigint\" ? `${value}n` : `${value}`;\n//#endregion\n//#region ../../../../node_modules/@ark/util/out/serialize.js\nconst snapshot = (data, opts = {}) => _serialize(data, {\n\tonUndefined: `$ark.undefined`,\n\tonBigInt: (n) => `$ark.bigint-${n}`,\n\t...opts\n}, []);\nconst printable = (data, opts) => {\n\tswitch (domainOf(data)) {\n\t\tcase \"object\":\n\t\t\tconst o = data;\n\t\t\tconst ctorName = o.constructor?.name ?? \"Object\";\n\t\t\treturn ctorName === \"Object\" || ctorName === \"Array\" ? opts?.quoteKeys === false ? stringifyUnquoted(o, opts?.indent ?? 0, \"\") : JSON.stringify(_serialize(o, printableOpts, []), null, opts?.indent) : stringifyUnquoted(o, opts?.indent ?? 0, \"\");\n\t\tcase \"symbol\": return printableOpts.onSymbol(data);\n\t\tdefault: return serializePrimitive(data);\n\t}\n};\nconst stringifyUnquoted = (value, indent, currentIndent) => {\n\tif (typeof value === \"function\") return printableOpts.onFunction(value);\n\tif (typeof value !== \"object\" || value === null) return serializePrimitive(value);\n\tconst nextIndent = currentIndent + \" \".repeat(indent);\n\tif (Array.isArray(value)) {\n\t\tif (value.length === 0) return \"[]\";\n\t\tconst items = value.map((item) => stringifyUnquoted(item, indent, nextIndent)).join(\",\\n\" + nextIndent);\n\t\treturn indent ? `[\\n${nextIndent}${items}\\n${currentIndent}]` : `[${items}]`;\n\t}\n\tconst ctorName = value.constructor?.name ?? \"Object\";\n\tif (ctorName === \"Object\") {\n\t\tconst keyValues = stringAndSymbolicEntriesOf(value).map(([key, val]) => {\n\t\t\tconst stringifiedKey = typeof key === \"symbol\" ? printableOpts.onSymbol(key) : isDotAccessible(key) ? key : JSON.stringify(key);\n\t\t\tconst stringifiedValue = stringifyUnquoted(val, indent, nextIndent);\n\t\t\treturn `${nextIndent}${stringifiedKey}: ${stringifiedValue}`;\n\t\t});\n\t\tif (keyValues.length === 0) return \"{}\";\n\t\treturn indent ? `{\\n${keyValues.join(\",\\n\")}\\n${currentIndent}}` : `{${keyValues.join(\", \")}}`;\n\t}\n\tif (value instanceof Date) return describeCollapsibleDate(value);\n\tif (\"expression\" in value && typeof value.expression === \"string\") return value.expression;\n\treturn ctorName;\n};\nconst printableOpts = {\n\tonCycle: () => \"(cycle)\",\n\tonSymbol: (v) => `Symbol(${register(v)})`,\n\tonFunction: (v) => `Function(${register(v)})`\n};\nconst _serialize = (data, opts, seen) => {\n\tswitch (domainOf(data)) {\n\t\tcase \"object\": {\n\t\t\tconst o = data;\n\t\t\tif (\"toJSON\" in o && typeof o.toJSON === \"function\") return o.toJSON();\n\t\t\tif (typeof o === \"function\") return printableOpts.onFunction(o);\n\t\t\tif (seen.includes(o)) return \"(cycle)\";\n\t\t\tconst nextSeen = [...seen, o];\n\t\t\tif (Array.isArray(o)) return o.map((item) => _serialize(item, opts, nextSeen));\n\t\t\tif (o instanceof Date) return o.toDateString();\n\t\t\tconst result = {};\n\t\t\tfor (const k in o) result[k] = _serialize(o[k], opts, nextSeen);\n\t\t\tfor (const s of Object.getOwnPropertySymbols(o)) result[opts.onSymbol?.(s) ?? s.toString()] = _serialize(o[s], opts, nextSeen);\n\t\t\treturn result;\n\t\t}\n\t\tcase \"symbol\": return printableOpts.onSymbol(data);\n\t\tcase \"bigint\": return opts.onBigInt?.(data) ?? `${data}n`;\n\t\tcase \"undefined\": return opts.onUndefined ?? \"undefined\";\n\t\tcase \"string\": return data.replace(/\\\\/g, \"\\\\\\\\\");\n\t\tdefault: return data;\n\t}\n};\n/**\n* Converts a Date instance to a human-readable description relative to its precision\n*/\nconst describeCollapsibleDate = (date) => {\n\tconst year = date.getFullYear();\n\tconst month = date.getMonth();\n\tconst dayOfMonth = date.getDate();\n\tconst hours = date.getHours();\n\tconst minutes = date.getMinutes();\n\tconst seconds = date.getSeconds();\n\tconst milliseconds = date.getMilliseconds();\n\tif (month === 0 && dayOfMonth === 1 && hours === 0 && minutes === 0 && seconds === 0 && milliseconds === 0) return `${year}`;\n\tconst datePortion = `${months[month]} ${dayOfMonth}, ${year}`;\n\tif (hours === 0 && minutes === 0 && seconds === 0 && milliseconds === 0) return datePortion;\n\tlet timePortion = date.toLocaleTimeString();\n\tconst suffix = timePortion.endsWith(\" AM\") || timePortion.endsWith(\" PM\") ? timePortion.slice(-3) : \"\";\n\tif (suffix) timePortion = timePortion.slice(0, -suffix.length);\n\tif (milliseconds) timePortion += `.${pad(milliseconds, 3)}`;\n\telse if (timeWithUnnecessarySeconds.test(timePortion)) timePortion = timePortion.slice(0, -3);\n\treturn `${timePortion + suffix}, ${datePortion}`;\n};\nconst months = [\n\t\"January\",\n\t\"February\",\n\t\"March\",\n\t\"April\",\n\t\"May\",\n\t\"June\",\n\t\"July\",\n\t\"August\",\n\t\"September\",\n\t\"October\",\n\t\"November\",\n\t\"December\"\n];\nconst timeWithUnnecessarySeconds = /:\\d\\d:00$/;\nconst pad = (value, length) => String(value).padStart(length, \"0\");\n//#endregion\n//#region ../../../../node_modules/@ark/util/out/path.js\nconst appendStringifiedKey = (path, prop, ...[opts]) => {\n\tconst stringifySymbol = opts?.stringifySymbol ?? printable;\n\tlet propAccessChain = path;\n\tswitch (typeof prop) {\n\t\tcase \"string\":\n\t\t\tpropAccessChain = isDotAccessible(prop) ? path === \"\" ? prop : `${path}.${prop}` : `${path}[${JSON.stringify(prop)}]`;\n\t\t\tbreak;\n\t\tcase \"number\":\n\t\t\tpropAccessChain = `${path}[${prop}]`;\n\t\t\tbreak;\n\t\tcase \"symbol\":\n\t\t\tpropAccessChain = `${path}[${stringifySymbol(prop)}]`;\n\t\t\tbreak;\n\t\tdefault: if (opts?.stringifyNonKey) propAccessChain = `${path}[${opts.stringifyNonKey(prop)}]`;\n\t\telse throwParseError(`${printable(prop)} must be a PropertyKey or stringifyNonKey must be passed to options`);\n\t}\n\treturn propAccessChain;\n};\nconst stringifyPath = (path, ...opts) => path.reduce((s, k) => appendStringifiedKey(s, k, ...opts), \"\");\nvar ReadonlyPath = class extends ReadonlyArray {\n\tcache = {};\n\tconstructor(...items) {\n\t\tsuper();\n\t\tthis.push(...items);\n\t}\n\ttoJSON() {\n\t\tif (this.cache.json) return this.cache.json;\n\t\tthis.cache.json = [];\n\t\tfor (let i = 0; i < this.length; i++) this.cache.json.push(typeof this[i] === \"symbol\" ? printable(this[i]) : this[i]);\n\t\treturn this.cache.json;\n\t}\n\tstringify() {\n\t\tif (this.cache.stringify) return this.cache.stringify;\n\t\treturn this.cache.stringify = stringifyPath(this);\n\t}\n\tstringifyAncestors() {\n\t\tif (this.cache.stringifyAncestors) return this.cache.stringifyAncestors;\n\t\tlet propString = \"\";\n\t\tconst result = [propString];\n\t\tfor (const path of this) {\n\t\t\tpropString = appendStringifiedKey(propString, path);\n\t\t\tresult.push(propString);\n\t\t}\n\t\treturn this.cache.stringifyAncestors = result;\n\t}\n};\n//#endregion\n//#region ../../../../node_modules/@ark/util/out/scanner.js\nvar Scanner = class {\n\tchars;\n\ti;\n\tdef;\n\tconstructor(def) {\n\t\tthis.def = def;\n\t\tthis.chars = [...def];\n\t\tthis.i = 0;\n\t}\n\t/** Get lookahead and advance scanner by one */\n\tshift() {\n\t\treturn this.chars[this.i++] ?? \"\";\n\t}\n\tget lookahead() {\n\t\treturn this.chars[this.i] ?? \"\";\n\t}\n\tget nextLookahead() {\n\t\treturn this.chars[this.i + 1] ?? \"\";\n\t}\n\tget length() {\n\t\treturn this.chars.length;\n\t}\n\tshiftUntil(condition) {\n\t\tlet shifted = \"\";\n\t\twhile (this.lookahead) if (condition(this, shifted)) break;\n\t\telse shifted += this.shift();\n\t\treturn shifted;\n\t}\n\tshiftUntilEscapable(condition) {\n\t\tlet shifted = \"\";\n\t\twhile (this.lookahead) if (this.lookahead === \"\\\\\") {\n\t\t\tthis.shift();\n\t\t\tif (condition(this, shifted)) shifted += this.shift();\n\t\t\telse if (this.lookahead === \"\\\\\") shifted += this.shift();\n\t\t\telse shifted += `\\\\${this.shift()}`;\n\t\t} else if (condition(this, shifted)) break;\n\t\telse shifted += this.shift();\n\t\treturn shifted;\n\t}\n\tshiftUntilLookahead(charOrSet) {\n\t\treturn typeof charOrSet === \"string\" ? this.shiftUntil((s) => s.lookahead === charOrSet) : this.shiftUntil((s) => s.lookahead in charOrSet);\n\t}\n\tshiftUntilNonWhitespace() {\n\t\treturn this.shiftUntil(() => !(this.lookahead in whitespaceChars));\n\t}\n\tjumpToIndex(i) {\n\t\tthis.i = i < 0 ? this.length + i : i;\n\t}\n\tjumpForward(count) {\n\t\tthis.i += count;\n\t}\n\tget location() {\n\t\treturn this.i;\n\t}\n\tget unscanned() {\n\t\treturn this.chars.slice(this.i, this.length).join(\"\");\n\t}\n\tget scanned() {\n\t\treturn this.chars.slice(0, this.i).join(\"\");\n\t}\n\tsliceChars(start, end) {\n\t\treturn this.chars.slice(start, end).join(\"\");\n\t}\n\tlookaheadIs(char) {\n\t\treturn this.lookahead === char;\n\t}\n\tlookaheadIsIn(tokens) {\n\t\treturn this.lookahead in tokens;\n\t}\n};\nconst writeUnmatchedGroupCloseMessage = (char, unscanned) => `Unmatched ${char}${unscanned === \"\" ? \"\" : ` before ${unscanned}`}`;\nconst writeUnclosedGroupMessage = (missingChar) => `Missing ${missingChar}`;\nnoSuggest(\"implementedTraits\");\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/shared/registry.js\nlet _registryName = \"$ark\";\nlet suffix = 2;\nwhile (_registryName in globalThis) _registryName = `$ark${suffix++}`;\nconst registryName = _registryName;\nglobalThis[registryName] = registry;\nconst $ark = registry;\nconst reference = (name) => `${registryName}.${name}`;\nconst registeredReference = (value) => reference(register(value));\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/shared/compile.js\nvar CompiledFunction = class extends CastableBase {\n\targNames;\n\tbody = \"\";\n\tconstructor(...args) {\n\t\tsuper();\n\t\tthis.argNames = args;\n\t\tfor (const arg of args) {\n\t\t\tif (arg in this) throw new Error(`Arg name '${arg}' would overwrite an existing property on FunctionBody`);\n\t\t\tthis[arg] = arg;\n\t\t}\n\t}\n\tindentation = 0;\n\tindent() {\n\t\tthis.indentation += 4;\n\t\treturn this;\n\t}\n\tdedent() {\n\t\tthis.indentation -= 4;\n\t\treturn this;\n\t}\n\tprop(key, optional = false) {\n\t\treturn compileLiteralPropAccess(key, optional);\n\t}\n\tindex(key, optional = false) {\n\t\treturn indexPropAccess(`${key}`, optional);\n\t}\n\tline(statement) {\n\t\tthis.body += `${\" \".repeat(this.indentation)}${statement}\\n`;\n\t\treturn this;\n\t}\n\tconst(identifier, expression) {\n\t\tthis.line(`const ${identifier} = ${expression}`);\n\t\treturn this;\n\t}\n\tlet(identifier, expression) {\n\t\treturn this.line(`let ${identifier} = ${expression}`);\n\t}\n\tset(identifier, expression) {\n\t\treturn this.line(`${identifier} = ${expression}`);\n\t}\n\tif(condition, then) {\n\t\treturn this.block(`if (${condition})`, then);\n\t}\n\telseIf(condition, then) {\n\t\treturn this.block(`else if (${condition})`, then);\n\t}\n\telse(then) {\n\t\treturn this.block(\"else\", then);\n\t}\n\t/** Current index is \"i\" */\n\tfor(until, body, initialValue = 0) {\n\t\treturn this.block(`for (let i = ${initialValue}; ${until}; i++)`, body);\n\t}\n\t/** Current key is \"k\" */\n\tforIn(object, body) {\n\t\treturn this.block(`for (const k in ${object})`, body);\n\t}\n\tblock(prefix, contents, suffix = \"\") {\n\t\tthis.line(`${prefix} {`);\n\t\tthis.indent();\n\t\tcontents(this);\n\t\tthis.dedent();\n\t\treturn this.line(`}${suffix}`);\n\t}\n\treturn(expression = \"\") {\n\t\treturn this.line(`return ${expression}`);\n\t}\n\twrite(name = \"anonymous\", indent = 0) {\n\t\treturn `${name}(${this.argNames.join(\", \")}) { ${indent ? this.body.split(\"\\n\").map((l) => \" \".repeat(indent) + `${l}`).join(\"\\n\") : this.body} }`;\n\t}\n\tcompile() {\n\t\treturn new DynamicFunction(...this.argNames, this.body);\n\t}\n};\nconst compileSerializedValue = (value) => hasDomain(value, \"object\") || typeof value === \"symbol\" ? registeredReference(value) : serializePrimitive(value);\nconst compileLiteralPropAccess = (key, optional = false) => {\n\tif (typeof key === \"string\" && isDotAccessible(key)) return `${optional ? \"?\" : \"\"}.${key}`;\n\treturn indexPropAccess(serializeLiteralKey(key), optional);\n};\nconst serializeLiteralKey = (key) => typeof key === \"symbol\" ? registeredReference(key) : JSON.stringify(key);\nconst indexPropAccess = (key, optional = false) => `${optional ? \"?.\" : \"\"}[${key}]`;\nvar NodeCompiler = class extends CompiledFunction {\n\ttraversalKind;\n\toptimistic;\n\tconstructor(ctx) {\n\t\tsuper(\"data\", \"ctx\");\n\t\tthis.traversalKind = ctx.kind;\n\t\tthis.optimistic = ctx.optimistic === true;\n\t}\n\tinvoke(node, opts) {\n\t\tconst arg = opts?.arg ?? this.data;\n\t\tconst requiresContext = typeof node === \"string\" ? true : this.requiresContextFor(node);\n\t\tconst id = typeof node === \"string\" ? node : node.id;\n\t\tif (requiresContext) return `${this.referenceToId(id, opts)}(${arg}, ${this.ctx})`;\n\t\treturn `${this.referenceToId(id, opts)}(${arg})`;\n\t}\n\treferenceToId(id, opts) {\n\t\tconst base = `this.${id}${opts?.kind ?? this.traversalKind}`;\n\t\treturn opts?.bind ? `${base}.bind(${opts?.bind})` : base;\n\t}\n\trequiresContextFor(node) {\n\t\treturn this.traversalKind === \"Apply\" || node.allowsRequiresContext;\n\t}\n\tinitializeErrorCount() {\n\t\treturn this.const(\"errorCount\", \"ctx.currentErrorCount\");\n\t}\n\treturnIfFail() {\n\t\treturn this.if(\"ctx.currentErrorCount > errorCount\", () => this.return());\n\t}\n\treturnIfFailFast() {\n\t\treturn this.if(\"ctx.failFast && ctx.currentErrorCount > errorCount\", () => this.return());\n\t}\n\ttraverseKey(keyExpression, accessExpression, node) {\n\t\tconst requiresContext = this.requiresContextFor(node);\n\t\tif (requiresContext) this.line(`${this.ctx}.path.push(${keyExpression})`);\n\t\tthis.check(node, { arg: accessExpression });\n\t\tif (requiresContext) this.line(`${this.ctx}.path.pop()`);\n\t\treturn this;\n\t}\n\tcheck(node, opts) {\n\t\treturn this.traversalKind === \"Allows\" ? this.if(`!${this.invoke(node, opts)}`, () => this.return(false)) : this.line(this.invoke(node, opts));\n\t}\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/shared/utils.js\nconst makeRootAndArrayPropertiesMutable = (o) => flatMorph(o, (k, v) => [k, isArray(v) ? [...v] : v]);\nconst arkKind = noSuggest(\"arkKind\");\nconst hasArkKind = (value, kind) => value?.[arkKind] === kind;\nconst isNode = (value) => hasArkKind(value, \"root\") || hasArkKind(value, \"constraint\");\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/shared/implement.js\nconst basisKinds = [\n\t\"unit\",\n\t\"proto\",\n\t\"domain\"\n];\nconst structuralKinds = [\n\t\"required\",\n\t\"optional\",\n\t\"index\",\n\t\"sequence\"\n];\nconst prestructuralKinds = [\n\t\"pattern\",\n\t\"divisor\",\n\t\"exactLength\",\n\t\"max\",\n\t\"min\",\n\t\"maxLength\",\n\t\"minLength\",\n\t\"before\",\n\t\"after\"\n];\nconst refinementKinds = [\n\t...prestructuralKinds,\n\t\"structure\",\n\t\"predicate\"\n];\nconst constraintKinds = [...refinementKinds, ...structuralKinds];\nconst rootKinds = [\n\t\"alias\",\n\t\"union\",\n\t\"morph\",\n\t\"unit\",\n\t\"intersection\",\n\t\"proto\",\n\t\"domain\"\n];\nconst nodeKinds = [...rootKinds, ...constraintKinds];\nconst constraintKeys = flatMorph(constraintKinds, (i, kind) => [kind, 1]);\nconst structureKeys = flatMorph([...structuralKinds, \"undeclared\"], (i, k) => [k, 1]);\nconst precedenceByKind = flatMorph(nodeKinds, (i, kind) => [kind, i]);\nconst isNodeKind = (value) => typeof value === \"string\" && value in precedenceByKind;\nconst precedenceOfKind = (kind) => precedenceByKind[kind];\nconst schemaKindsRightOf = (kind) => rootKinds.slice(precedenceOfKind(kind) + 1);\n[...schemaKindsRightOf(\"union\")];\n[...schemaKindsRightOf(\"morph\")];\nconst defaultValueSerializer = (v) => {\n\tif (typeof v === \"string\" || typeof v === \"boolean\" || v === null) return v;\n\tif (typeof v === \"number\") {\n\t\tif (Number.isNaN(v)) return \"NaN\";\n\t\tif (v === Number.POSITIVE_INFINITY) return \"Infinity\";\n\t\tif (v === Number.NEGATIVE_INFINITY) return \"-Infinity\";\n\t\treturn v;\n\t}\n\treturn compileSerializedValue(v);\n};\nconst compileObjectLiteral = (ctx) => {\n\tlet result = \"{ \";\n\tfor (const [k, v] of Object.entries(ctx)) result += `${k}: ${compileSerializedValue(v)}, `;\n\treturn result + \" }\";\n};\nconst implementNode = (_) => {\n\tconst implementation = _;\n\tif (implementation.hasAssociatedError) {\n\t\timplementation.defaults.expected ??= (ctx) => \"description\" in ctx ? ctx.description : implementation.defaults.description(ctx);\n\t\timplementation.defaults.actual ??= (data) => printable(data);\n\t\timplementation.defaults.problem ??= (ctx) => `must be ${ctx.expected}${ctx.actual ? ` (was ${ctx.actual})` : \"\"}`;\n\t\timplementation.defaults.message ??= (ctx) => {\n\t\t\tif (ctx.path.length === 0) return ctx.problem;\n\t\t\tconst problemWithLocation = `${ctx.propString} ${ctx.problem}`;\n\t\t\tif (problemWithLocation[0] === \"[\") return `value at ${problemWithLocation}`;\n\t\t\treturn problemWithLocation;\n\t\t};\n\t}\n\treturn implementation;\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/shared/toJsonSchema.js\nvar ToJsonSchemaError = class extends Error {\n\tname = \"ToJsonSchemaError\";\n\tcode;\n\tcontext;\n\tconstructor(code, context) {\n\t\tsuper(printable(context, {\n\t\t\tquoteKeys: false,\n\t\t\tindent: 4\n\t\t}));\n\t\tthis.code = code;\n\t\tthis.context = context;\n\t}\n\thasCode(code) {\n\t\treturn this.code === code;\n\t}\n};\nconst ToJsonSchema = {\n\tError: ToJsonSchemaError,\n\tthrow: (...args) => {\n\t\tthrow new ToJsonSchema.Error(...args);\n\t},\n\tthrowInternalOperandError: (kind, schema) => throwInternalError(`Unexpected JSON Schema input for ${kind}: ${printable(schema)}`),\n\tdefaultConfig: {\n\t\ttarget: \"draft-2020-12\",\n\t\tdialect: \"https://json-schema.org/draft/2020-12/schema\",\n\t\tuseRefs: false,\n\t\tfallback: {\n\t\t\tarrayObject: (ctx) => ToJsonSchema.throw(\"arrayObject\", ctx),\n\t\t\tarrayPostfix: (ctx) => ToJsonSchema.throw(\"arrayPostfix\", ctx),\n\t\t\tdefaultValue: (ctx) => ToJsonSchema.throw(\"defaultValue\", ctx),\n\t\t\tdomain: (ctx) => ToJsonSchema.throw(\"domain\", ctx),\n\t\t\tmorph: (ctx) => ToJsonSchema.throw(\"morph\", ctx),\n\t\t\tpatternIntersection: (ctx) => ToJsonSchema.throw(\"patternIntersection\", ctx),\n\t\t\tpredicate: (ctx) => ToJsonSchema.throw(\"predicate\", ctx),\n\t\t\tproto: (ctx) => ToJsonSchema.throw(\"proto\", ctx),\n\t\t\tsymbolKey: (ctx) => ToJsonSchema.throw(\"symbolKey\", ctx),\n\t\t\tunit: (ctx) => ToJsonSchema.throw(\"unit\", ctx),\n\t\t\tdate: (ctx) => ToJsonSchema.throw(\"date\", ctx)\n\t\t}\n\t}\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/config.js\n$ark.config ??= {};\nconst mergeConfigs = (base, merged) => {\n\tif (!merged) return base;\n\tconst result = { ...base };\n\tlet k;\n\tfor (k in merged) {\n\t\tconst keywords = { ...base.keywords };\n\t\tif (k === \"keywords\") {\n\t\t\tfor (const flatAlias in merged[k]) {\n\t\t\t\tconst v = merged.keywords[flatAlias];\n\t\t\t\tif (v === void 0) continue;\n\t\t\t\tkeywords[flatAlias] = typeof v === \"string\" ? { description: v } : v;\n\t\t\t}\n\t\t\tresult.keywords = keywords;\n\t\t} else if (k === \"toJsonSchema\") result[k] = mergeToJsonSchemaConfigs(base.toJsonSchema, merged.toJsonSchema);\n\t\telse if (isNodeKind(k)) result[k] = {\n\t\t\t...base[k],\n\t\t\t...merged[k]\n\t\t};\n\t\telse result[k] = merged[k];\n\t}\n\treturn result;\n};\nconst jsonSchemaTargetToDialect = {\n\t\"draft-2020-12\": \"https://json-schema.org/draft/2020-12/schema\",\n\t\"draft-07\": \"http://json-schema.org/draft-07/schema#\"\n};\nconst mergeToJsonSchemaConfigs = ((baseConfig, mergedConfig) => {\n\tif (!baseConfig) return resolveTargetToDialect(mergedConfig ?? {}, void 0);\n\tif (!mergedConfig) return baseConfig;\n\tconst result = { ...baseConfig };\n\tlet k;\n\tfor (k in mergedConfig) if (k === \"fallback\") result.fallback = mergeFallbacks(baseConfig.fallback, mergedConfig.fallback);\n\telse result[k] = mergedConfig[k];\n\treturn resolveTargetToDialect(result, mergedConfig);\n});\nconst resolveTargetToDialect = (opts, userOpts) => {\n\tif (userOpts?.dialect !== void 0) return opts;\n\tif (userOpts?.target !== void 0) return {\n\t\t...opts,\n\t\tdialect: jsonSchemaTargetToDialect[userOpts.target]\n\t};\n\treturn opts;\n};\nconst mergeFallbacks = (base, merged) => {\n\tbase = normalizeFallback(base);\n\tmerged = normalizeFallback(merged);\n\tconst result = {};\n\tlet code;\n\tfor (code in ToJsonSchema.defaultConfig.fallback) result[code] = merged[code] ?? merged.default ?? base[code] ?? base.default ?? ToJsonSchema.defaultConfig.fallback[code];\n\treturn result;\n};\nconst normalizeFallback = (fallback) => typeof fallback === \"function\" ? { default: fallback } : fallback ?? {};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/shared/errors.js\nvar ArkError = class ArkError extends CastableBase {\n\t[arkKind] = \"error\";\n\tpath;\n\tdata;\n\tnodeConfig;\n\tinput;\n\tctx;\n\tconstructor({ prefixPath, relativePath, ...input }, ctx) {\n\t\tsuper();\n\t\tthis.input = input;\n\t\tthis.ctx = ctx;\n\t\tdefineProperties(this, input);\n\t\tconst data = ctx.data;\n\t\tif (input.code === \"union\") input.errors = input.errors.flatMap((innerError) => {\n\t\t\tconst flat = innerError.hasCode(\"union\") ? innerError.errors : [innerError];\n\t\t\tif (!prefixPath && !relativePath) return flat;\n\t\t\treturn flat.map((e) => e.transform((e) => ({\n\t\t\t\t...e,\n\t\t\t\tpath: conflatenateAll(prefixPath, e.path, relativePath)\n\t\t\t})));\n\t\t});\n\t\tthis.nodeConfig = ctx.config[this.code];\n\t\tconst basePath = [...input.path ?? ctx.path];\n\t\tif (relativePath) basePath.push(...relativePath);\n\t\tif (prefixPath) basePath.unshift(...prefixPath);\n\t\tthis.path = new ReadonlyPath(...basePath);\n\t\tthis.data = \"data\" in input ? input.data : data;\n\t}\n\ttransform(f) {\n\t\treturn new ArkError(f({\n\t\t\tdata: this.data,\n\t\t\tpath: this.path,\n\t\t\t...this.input\n\t\t}), this.ctx);\n\t}\n\thasCode(code) {\n\t\treturn this.code === code;\n\t}\n\tget propString() {\n\t\treturn stringifyPath(this.path);\n\t}\n\tget expected() {\n\t\tif (this.input.expected) return this.input.expected;\n\t\tconst config = this.meta?.expected ?? this.nodeConfig.expected;\n\t\treturn typeof config === \"function\" ? config(this.input) : config;\n\t}\n\tget actual() {\n\t\tif (this.input.actual) return this.input.actual;\n\t\tconst config = this.meta?.actual ?? this.nodeConfig.actual;\n\t\treturn typeof config === \"function\" ? config(this.data) : config;\n\t}\n\tget problem() {\n\t\tif (this.input.problem) return this.input.problem;\n\t\tconst config = this.meta?.problem ?? this.nodeConfig.problem;\n\t\treturn typeof config === \"function\" ? config(this) : config;\n\t}\n\tget message() {\n\t\tif (this.input.message) return this.input.message;\n\t\tconst config = this.meta?.message ?? this.nodeConfig.message;\n\t\treturn typeof config === \"function\" ? config(this) : config;\n\t}\n\tget flat() {\n\t\treturn this.hasCode(\"intersection\") ? [...this.errors] : [this];\n\t}\n\ttoJSON() {\n\t\treturn {\n\t\t\tdata: this.data,\n\t\t\tpath: this.path,\n\t\t\t...this.input,\n\t\t\texpected: this.expected,\n\t\t\tactual: this.actual,\n\t\t\tproblem: this.problem,\n\t\t\tmessage: this.message\n\t\t};\n\t}\n\ttoString() {\n\t\treturn this.message;\n\t}\n\tthrow() {\n\t\tthrow this;\n\t}\n};\n/**\n* A ReadonlyArray of `ArkError`s returned by a Type on invalid input.\n*\n* Subsequent errors added at an existing path are merged into an\n* ArkError intersection.\n*/\nvar ArkErrors = class ArkErrors extends ReadonlyArray {\n\t[arkKind] = \"errors\";\n\t/**\n\t* Inherited array methods (`map`, `filter`, `slice`, …) return a plain\n\t* `Array`, not another `ArkErrors`, so callbacks that return primitives\n\t* (e.g. `issues.map(i => i.message)`) cannot populate a new `ArkErrors` instance.\n\t*/\n\tstatic get [Symbol.species]() {\n\t\treturn Array;\n\t}\n\tctx;\n\tconstructor(ctx) {\n\t\tsuper();\n\t\tthis.ctx = ctx;\n\t}\n\t/**\n\t* Errors by a pathString representing their location.\n\t*/\n\tbyPath = Object.create(null);\n\t/**\n\t* {@link byPath} flattened so that each value is an array of ArkError instances at that path.\n\t*\n\t* ✅ Since \"intersection\" errors will be flattened to their constituent `.errors`,\n\t* they will never be directly present in this representation.\n\t*/\n\tget flatByPath() {\n\t\treturn flatMorph(this.byPath, (k, v) => [k, v.flat]);\n\t}\n\t/**\n\t* {@link byPath} flattened so that each value is an array of problem strings at that path.\n\t*/\n\tget flatProblemsByPath() {\n\t\treturn flatMorph(this.byPath, (k, v) => [k, v.flat.map((e) => e.problem)]);\n\t}\n\t/**\n\t* All pathStrings at which errors are present mapped to the errors occuring\n\t* at that path or any nested path within it.\n\t*/\n\tbyAncestorPath = Object.create(null);\n\tcount = 0;\n\tmutable = this;\n\t/**\n\t* Throw a TraversalError based on these errors.\n\t*/\n\tthrow() {\n\t\tthrow this.toTraversalError();\n\t}\n\t/**\n\t* Converts ArkErrors to TraversalError, a subclass of `Error` suitable for throwing with nice\n\t* formatting.\n\t*/\n\ttoTraversalError() {\n\t\treturn new TraversalError(this);\n\t}\n\t/**\n\t* Append an ArkError to this array, ignoring duplicates.\n\t*/\n\tadd(error) {\n\t\tconst existing = this.byPath[error.propString];\n\t\tif (existing) {\n\t\t\tif (error === existing) return;\n\t\t\tif (existing.hasCode(\"union\") && existing.errors.length === 0) return;\n\t\t\tconst errorIntersection = error.hasCode(\"union\") && error.errors.length === 0 ? error : new ArkError({\n\t\t\t\tcode: \"intersection\",\n\t\t\t\terrors: existing.hasCode(\"intersection\") ? [...existing.errors, error] : [existing, error]\n\t\t\t}, this.ctx);\n\t\t\tconst existingIndex = this.indexOf(existing);\n\t\t\tthis.mutable[existingIndex === -1 ? this.length : existingIndex] = errorIntersection;\n\t\t\tthis.byPath[error.propString] = errorIntersection;\n\t\t\tthis.addAncestorPaths(error);\n\t\t} else {\n\t\t\tthis.byPath[error.propString] = error;\n\t\t\tthis.addAncestorPaths(error);\n\t\t\tthis.mutable.push(error);\n\t\t}\n\t\tthis.count++;\n\t}\n\ttransform(f) {\n\t\tconst result = new ArkErrors(this.ctx);\n\t\tfor (const e of this) result.add(f(e));\n\t\treturn result;\n\t}\n\t/**\n\t* Add all errors from an ArkErrors instance, ignoring duplicates and\n\t* prefixing their paths with that of the current Traversal.\n\t*/\n\tmerge(errors) {\n\t\tfor (const e of errors) this.add(new ArkError({\n\t\t\t...e,\n\t\t\tpath: [...this.ctx.path, ...e.path]\n\t\t}, this.ctx));\n\t}\n\t/**\n\t* @internal\n\t*/\n\taffectsPath(path) {\n\t\tif (this.length === 0) return false;\n\t\treturn path.stringifyAncestors().some((s) => s in this.byPath) || path.stringify() in this.byAncestorPath;\n\t}\n\t/**\n\t* A human-readable summary of all errors.\n\t*/\n\tget summary() {\n\t\treturn this.toString();\n\t}\n\t/**\n\t* Alias of this ArkErrors instance for StandardSchema compatibility.\n\t*/\n\tget issues() {\n\t\treturn this;\n\t}\n\ttoJSON() {\n\t\treturn [...this.map((e) => e.toJSON())];\n\t}\n\ttoString() {\n\t\treturn this.join(\"\\n\");\n\t}\n\taddAncestorPaths(error) {\n\t\tfor (const propString of error.path.stringifyAncestors()) this.byAncestorPath[propString] = append(this.byAncestorPath[propString], error);\n\t}\n};\nvar TraversalError = class extends Error {\n\tname = \"TraversalError\";\n\tconstructor(errors) {\n\t\tif (errors.length === 1) super(errors.summary);\n\t\telse super(\"\\n\" + errors.map((error) => ` • ${indent(error)}`).join(\"\\n\"));\n\t\tObject.defineProperty(this, \"arkErrors\", {\n\t\t\tvalue: errors,\n\t\t\tenumerable: false\n\t\t});\n\t}\n};\nconst indent = (error) => error.toString().split(\"\\n\").join(\"\\n \");\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/shared/traversal.js\nvar Traversal = class {\n\t/**\n\t* #### the path being validated or morphed\n\t*\n\t* ✅ array indices represented as numbers\n\t* ⚠️ mutated during traversal - use `path.slice(0)` to snapshot\n\t* 🔗 use {@link propString} for a stringified version\n\t*/\n\tpath = [];\n\t/**\n\t* #### {@link ArkErrors} that will be part of this traversal's finalized result\n\t*\n\t* ✅ will always be an empty array for a valid traversal\n\t*/\n\terrors = new ArkErrors(this);\n\t/**\n\t* #### the original value being traversed\n\t*/\n\troot;\n\t/**\n\t* #### configuration for this traversal\n\t*\n\t* ✅ options can affect traversal results and error messages\n\t* ✅ defaults < global config < scope config\n\t* ✅ does not include options configured on individual types\n\t*/\n\tconfig;\n\tqueuedMorphs = [];\n\tbranches = [];\n\tseen = {};\n\tconstructor(root, config) {\n\t\tthis.root = root;\n\t\tthis.config = config;\n\t}\n\t/**\n\t* #### the data being validated or morphed\n\t*\n\t* ✅ extracted from {@link root} at {@link path}\n\t*/\n\tget data() {\n\t\tlet result = this.root;\n\t\tfor (const segment of this.path) result = result?.[segment];\n\t\treturn result;\n\t}\n\t/**\n\t* #### a string representing {@link path}\n\t*\n\t* @propString\n\t*/\n\tget propString() {\n\t\treturn stringifyPath(this.path);\n\t}\n\t/**\n\t* #### add an {@link ArkError} and return `false`\n\t*\n\t* ✅ useful for predicates like `.narrow`\n\t*/\n\treject(input) {\n\t\tthis.error(input);\n\t\treturn false;\n\t}\n\t/**\n\t* #### add an {@link ArkError} from a description and return `false`\n\t*\n\t* ✅ useful for predicates like `.narrow`\n\t* 🔗 equivalent to {@link reject}({ expected })\n\t*/\n\tmustBe(expected) {\n\t\tthis.error(expected);\n\t\treturn false;\n\t}\n\terror(input) {\n\t\tconst errCtx = typeof input === \"object\" ? input.code ? input : {\n\t\t\t...input,\n\t\t\tcode: \"predicate\"\n\t\t} : {\n\t\t\tcode: \"predicate\",\n\t\t\texpected: input\n\t\t};\n\t\treturn this.errorFromContext(errCtx);\n\t}\n\t/**\n\t* #### whether {@link currentBranch} (or the traversal root, outside a union) has one or more errors\n\t*/\n\thasError() {\n\t\treturn this.currentErrorCount !== 0;\n\t}\n\tget currentBranch() {\n\t\treturn this.branches[this.branches.length - 1];\n\t}\n\tqueueMorphs(morphs) {\n\t\tconst input = {\n\t\t\tpath: new ReadonlyPath(...this.path),\n\t\t\tmorphs\n\t\t};\n\t\tif (this.currentBranch) this.currentBranch.queuedMorphs.push(input);\n\t\telse this.queuedMorphs.push(input);\n\t}\n\tfinalize(onFail) {\n\t\tif (this.queuedMorphs.length) {\n\t\t\tif (typeof this.root === \"object\" && this.root !== null && this.config.clone) this.root = this.config.clone(this.root);\n\t\t\tthis.applyQueuedMorphs();\n\t\t}\n\t\tif (this.hasError()) return onFail ? onFail(this.errors) : this.errors;\n\t\treturn this.root;\n\t}\n\tget currentErrorCount() {\n\t\treturn this.currentBranch ? this.currentBranch.error ? 1 : 0 : this.errors.count;\n\t}\n\tget failFast() {\n\t\treturn this.branches.length !== 0;\n\t}\n\tpushBranch() {\n\t\tthis.branches.push({\n\t\t\terror: void 0,\n\t\t\tqueuedMorphs: []\n\t\t});\n\t}\n\tpopBranch() {\n\t\treturn this.branches.pop();\n\t}\n\t/**\n\t* @internal\n\t* Convenience for casting from InternalTraversal to Traversal\n\t* for cases where the extra methods on the external type are expected, e.g.\n\t* a morph or predicate.\n\t*/\n\tget external() {\n\t\treturn this;\n\t}\n\terrorFromNodeContext(input) {\n\t\treturn this.errorFromContext(input);\n\t}\n\terrorFromContext(errCtx) {\n\t\tconst error = new ArkError(errCtx, this);\n\t\tif (this.currentBranch) this.currentBranch.error = error;\n\t\telse this.errors.add(error);\n\t\treturn error;\n\t}\n\tapplyQueuedMorphs() {\n\t\twhile (this.queuedMorphs.length) {\n\t\t\tconst queuedMorphs = this.queuedMorphs;\n\t\t\tthis.queuedMorphs = [];\n\t\t\tfor (const { path, morphs } of queuedMorphs) {\n\t\t\t\tif (this.errors.affectsPath(path)) continue;\n\t\t\t\tthis.applyMorphsAtPath(path, morphs);\n\t\t\t}\n\t\t}\n\t}\n\tapplyMorphsAtPath(path, morphs) {\n\t\tconst key = path[path.length - 1];\n\t\tlet parent;\n\t\tif (key !== void 0) {\n\t\t\tparent = this.root;\n\t\t\tfor (let pathIndex = 0; pathIndex < path.length - 1; pathIndex++) parent = parent[path[pathIndex]];\n\t\t}\n\t\tfor (const morph of morphs) {\n\t\t\tthis.path = [...path];\n\t\t\tconst morphIsNode = isNode(morph);\n\t\t\tconst result = morph(parent === void 0 ? this.root : parent[key], this);\n\t\t\tif (result instanceof ArkError) {\n\t\t\t\tthis.errors.add(result);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif (result instanceof ArkErrors) {\n\t\t\t\tif (!morphIsNode) this.errors.merge(result);\n\t\t\t\tthis.queuedMorphs = [];\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif (parent === void 0) this.root = result;\n\t\t\telse parent[key] = result;\n\t\t\tthis.applyQueuedMorphs();\n\t\t}\n\t}\n};\nconst traverseKey = (key, fn, ctx) => {\n\tif (!ctx) return fn();\n\tctx.path.push(key);\n\tconst result = fn();\n\tctx.path.pop();\n\treturn result;\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/node.js\nvar BaseNode = class extends Callable {\n\tattachments;\n\t$;\n\tonFail;\n\tincludesTransform;\n\tincludesContextualPredicate;\n\tisCyclic;\n\tallowsRequiresContext;\n\trootApplyStrategy;\n\tcontextFreeMorph;\n\trootApply;\n\treferencesById;\n\tshallowReferences;\n\tflatRefs;\n\tflatMorphs;\n\tallows;\n\tget shallowMorphs() {\n\t\treturn [];\n\t}\n\tconstructor(attachments, $) {\n\t\tsuper((data, pipedFromCtx, onFail = this.onFail) => {\n\t\t\tif (pipedFromCtx) {\n\t\t\t\tthis.traverseApply(data, pipedFromCtx);\n\t\t\t\treturn pipedFromCtx.hasError() ? pipedFromCtx.errors : pipedFromCtx.data;\n\t\t\t}\n\t\t\treturn this.rootApply(data, onFail);\n\t\t}, { attach: attachments });\n\t\tthis.attachments = attachments;\n\t\tthis.$ = $;\n\t\tthis.onFail = this.meta.onFail ?? this.$.resolvedConfig.onFail;\n\t\tthis.includesTransform = this.hasKind(\"morph\") || this.hasKind(\"structure\") && this.structuralMorph !== void 0 || this.hasKind(\"sequence\") && this.inner.defaultables !== void 0;\n\t\tthis.includesContextualPredicate = this.hasKind(\"predicate\") && this.inner.predicate.length !== 1;\n\t\tthis.isCyclic = this.kind === \"alias\";\n\t\tthis.referencesById = { [this.id]: this };\n\t\tthis.shallowReferences = this.hasKind(\"structure\") ? [this, ...this.children] : this.children.reduce((acc, child) => appendUniqueNodes(acc, child.shallowReferences), [this]);\n\t\tconst isStructural = this.isStructural();\n\t\tthis.flatRefs = [];\n\t\tthis.flatMorphs = [];\n\t\tfor (let i = 0; i < this.children.length; i++) {\n\t\t\tthis.includesTransform ||= this.children[i].includesTransform;\n\t\t\tthis.includesContextualPredicate ||= this.children[i].includesContextualPredicate;\n\t\t\tthis.isCyclic ||= this.children[i].isCyclic;\n\t\t\tif (!isStructural) {\n\t\t\t\tconst childFlatRefs = this.children[i].flatRefs;\n\t\t\t\tfor (let j = 0; j < childFlatRefs.length; j++) {\n\t\t\t\t\tconst childRef = childFlatRefs[j];\n\t\t\t\t\tif (!this.flatRefs.some((existing) => flatRefsAreEqual(existing, childRef))) {\n\t\t\t\t\t\tthis.flatRefs.push(childRef);\n\t\t\t\t\t\tfor (const branch of childRef.node.branches) if (branch.hasKind(\"morph\") || branch.hasKind(\"intersection\") && branch.structure?.structuralMorph !== void 0) this.flatMorphs.push({\n\t\t\t\t\t\t\tpath: childRef.path,\n\t\t\t\t\t\t\tpropString: childRef.propString,\n\t\t\t\t\t\t\tnode: branch\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tObject.assign(this.referencesById, this.children[i].referencesById);\n\t\t}\n\t\tthis.flatRefs.sort((l, r) => l.path.length > r.path.length ? 1 : l.path.length < r.path.length ? -1 : l.propString > r.propString ? 1 : l.propString < r.propString ? -1 : l.node.expression < r.node.expression ? -1 : 1);\n\t\tthis.allowsRequiresContext = this.includesContextualPredicate || this.isCyclic;\n\t\tthis.rootApplyStrategy = !this.allowsRequiresContext && this.flatMorphs.length === 0 ? this.shallowMorphs.length === 0 ? \"allows\" : this.shallowMorphs.every((morph) => morph.length === 1 || morph.name === \"$arkStructuralMorph\") ? this.hasKind(\"union\") ? this.branches.some((branch) => branch.shallowMorphs.length > 1) ? \"contextual\" : \"branchedOptimistic\" : this.shallowMorphs.length > 1 ? \"contextual\" : \"optimistic\" : \"contextual\" : \"contextual\";\n\t\tthis.rootApply = this.createRootApply();\n\t\tthis.allows = this.allowsRequiresContext ? (data) => this.traverseAllows(data, new Traversal(data, this.$.resolvedConfig)) : (data) => this.traverseAllows(data);\n\t}\n\tcreateRootApply() {\n\t\tswitch (this.rootApplyStrategy) {\n\t\t\tcase \"allows\": return (data, onFail) => {\n\t\t\t\tif (this.allows(data)) return data;\n\t\t\t\tconst ctx = new Traversal(data, this.$.resolvedConfig);\n\t\t\t\tthis.traverseApply(data, ctx);\n\t\t\t\treturn ctx.finalize(onFail);\n\t\t\t};\n\t\t\tcase \"contextual\": return (data, onFail) => {\n\t\t\t\tconst ctx = new Traversal(data, this.$.resolvedConfig);\n\t\t\t\tthis.traverseApply(data, ctx);\n\t\t\t\treturn ctx.finalize(onFail);\n\t\t\t};\n\t\t\tcase \"optimistic\":\n\t\t\t\tthis.contextFreeMorph = this.shallowMorphs[0];\n\t\t\t\tconst clone = this.$.resolvedConfig.clone;\n\t\t\t\treturn (data, onFail) => {\n\t\t\t\t\tif (this.allows(data)) return this.contextFreeMorph(clone && (typeof data === \"object\" && data !== null || typeof data === \"function\") ? clone(data) : data);\n\t\t\t\t\tconst ctx = new Traversal(data, this.$.resolvedConfig);\n\t\t\t\t\tthis.traverseApply(data, ctx);\n\t\t\t\t\treturn ctx.finalize(onFail);\n\t\t\t\t};\n\t\t\tcase \"branchedOptimistic\": return this.createBranchedOptimisticRootApply();\n\t\t\tdefault:\n\t\t\t\tthis.rootApplyStrategy;\n\t\t\t\treturn throwInternalError(`Unexpected rootApplyStrategy ${this.rootApplyStrategy}`);\n\t\t}\n\t}\n\tcompiledMeta = compileMeta(this.metaJson);\n\tcacheGetter(name, value) {\n\t\tObject.defineProperty(this, name, { value });\n\t\treturn value;\n\t}\n\tget description() {\n\t\treturn this.cacheGetter(\"description\", this.meta?.description ?? this.$.resolvedConfig[this.kind].description(this));\n\t}\n\tget references() {\n\t\treturn Object.values(this.referencesById);\n\t}\n\tprecedence = precedenceOfKind(this.kind);\n\tprecompilation;\n\tassert = (data, pipedFromCtx) => this(data, pipedFromCtx, (errors) => errors.throw());\n\ttraverse(data, pipedFromCtx) {\n\t\treturn this(data, pipedFromCtx, null);\n\t}\n\t/** rawIn should be used internally instead */\n\tget in() {\n\t\treturn this.cacheGetter(\"in\", this.rawIn.isRoot() ? this.$.finalize(this.rawIn) : this.rawIn);\n\t}\n\tget rawIn() {\n\t\treturn this.cacheGetter(\"rawIn\", this.getIo(\"in\"));\n\t}\n\t/** rawOut should be used internally instead */\n\tget out() {\n\t\treturn this.cacheGetter(\"out\", this.rawOut.isRoot() ? this.$.finalize(this.rawOut) : this.rawOut);\n\t}\n\tget rawOut() {\n\t\treturn this.cacheGetter(\"rawOut\", this.getIo(\"out\"));\n\t}\n\tgetIo(ioKind) {\n\t\tif (!this.includesTransform) return this;\n\t\tconst ioInner = {};\n\t\tfor (const [k, v] of this.innerEntries) {\n\t\t\tconst keySchemaImplementation = this.impl.keys[k];\n\t\t\tif (keySchemaImplementation.reduceIo) keySchemaImplementation.reduceIo(ioKind, ioInner, v);\n\t\t\telse if (keySchemaImplementation.child) {\n\t\t\t\tconst childValue = v;\n\t\t\t\tioInner[k] = isArray(childValue) ? childValue.map((child) => ioKind === \"in\" ? child.rawIn : child.rawOut) : ioKind === \"in\" ? childValue.rawIn : childValue.rawOut;\n\t\t\t} else ioInner[k] = v;\n\t\t}\n\t\treturn this.$.node(this.kind, ioInner);\n\t}\n\ttoJSON() {\n\t\treturn this.json;\n\t}\n\ttoString() {\n\t\treturn `Type<${this.expression}>`;\n\t}\n\tequals(r) {\n\t\tconst rNode = isNode(r) ? r : this.$.parseDefinition(r);\n\t\treturn this.innerHash === rNode.innerHash;\n\t}\n\tifEquals(r) {\n\t\treturn this.equals(r) ? this : void 0;\n\t}\n\thasKind(kind) {\n\t\treturn this.kind === kind;\n\t}\n\tassertHasKind(kind) {\n\t\tif (this.kind !== kind) throwError(`${this.kind} node was not of asserted kind ${kind}`);\n\t\treturn this;\n\t}\n\thasKindIn(...kinds) {\n\t\treturn kinds.includes(this.kind);\n\t}\n\tassertHasKindIn(...kinds) {\n\t\tif (!includes(kinds, this.kind)) throwError(`${this.kind} node was not one of asserted kinds ${kinds}`);\n\t\treturn this;\n\t}\n\tisBasis() {\n\t\treturn includes(basisKinds, this.kind);\n\t}\n\tisConstraint() {\n\t\treturn includes(constraintKinds, this.kind);\n\t}\n\tisStructural() {\n\t\treturn includes(structuralKinds, this.kind);\n\t}\n\tisRefinement() {\n\t\treturn includes(refinementKinds, this.kind);\n\t}\n\tisRoot() {\n\t\treturn includes(rootKinds, this.kind);\n\t}\n\tisUnknown() {\n\t\treturn this.hasKind(\"intersection\") && this.children.length === 0;\n\t}\n\tisNever() {\n\t\treturn this.hasKind(\"union\") && this.children.length === 0;\n\t}\n\thasUnit(value) {\n\t\treturn this.hasKind(\"unit\") && this.allows(value);\n\t}\n\thasOpenIntersection() {\n\t\treturn this.impl.intersectionIsOpen;\n\t}\n\tget nestableExpression() {\n\t\treturn this.expression;\n\t}\n\tselect(selector) {\n\t\tconst normalized = NodeSelector.normalize(selector);\n\t\treturn this._select(normalized);\n\t}\n\t_select(selector) {\n\t\tlet nodes = NodeSelector.applyBoundary[selector.boundary ?? \"references\"](this);\n\t\tif (selector.kind) nodes = nodes.filter((n) => n.kind === selector.kind);\n\t\tif (selector.where) nodes = nodes.filter(selector.where);\n\t\treturn NodeSelector.applyMethod[selector.method ?? \"filter\"](nodes, this, selector);\n\t}\n\ttransform(mapper, opts) {\n\t\treturn this._transform(mapper, this._createTransformContext(opts));\n\t}\n\t_createTransformContext(opts) {\n\t\treturn {\n\t\t\troot: this,\n\t\t\tselected: void 0,\n\t\t\tseen: {},\n\t\t\tpath: [],\n\t\t\tparseOptions: { prereduced: opts?.prereduced ?? false },\n\t\t\tundeclaredKeyHandling: void 0,\n\t\t\t...opts\n\t\t};\n\t}\n\t_transform(mapper, ctx) {\n\t\tconst $ = ctx.bindScope ?? this.$;\n\t\tif (ctx.seen[this.id]) return this.$.lazilyResolve(ctx.seen[this.id]);\n\t\tif (ctx.shouldTransform?.(this, ctx) === false) return this;\n\t\tlet transformedNode;\n\t\tctx.seen[this.id] = () => transformedNode;\n\t\tif (this.hasKind(\"structure\") && this.undeclared !== ctx.undeclaredKeyHandling) ctx = {\n\t\t\t...ctx,\n\t\t\tundeclaredKeyHandling: this.undeclared\n\t\t};\n\t\tconst innerWithTransformedChildren = flatMorph(this.inner, (k, v) => {\n\t\t\tif (!this.impl.keys[k].child) return [k, v];\n\t\t\tconst children = v;\n\t\t\tif (!isArray(children)) {\n\t\t\t\tconst transformed = children._transform(mapper, ctx);\n\t\t\t\treturn transformed ? [k, transformed] : [];\n\t\t\t}\n\t\t\tif (children.length === 0) return [k, v];\n\t\t\tconst transformed = children.flatMap((n) => {\n\t\t\t\treturn n._transform(mapper, ctx) ?? [];\n\t\t\t});\n\t\t\treturn transformed.length ? [k, transformed] : [];\n\t\t});\n\t\tdelete ctx.seen[this.id];\n\t\tconst innerWithMeta = Object.assign(innerWithTransformedChildren, { meta: this.meta });\n\t\tconst transformedInner = ctx.selected && !ctx.selected.includes(this) ? innerWithMeta : mapper(this.kind, innerWithMeta, ctx);\n\t\tif (transformedInner === null) return null;\n\t\tif (isNode(transformedInner)) return transformedNode = transformedInner;\n\t\tconst transformedKeys = Object.keys(transformedInner);\n\t\tif ((transformedKeys.length === 0 || transformedKeys.length === 1 && transformedKeys[0] === \"meta\") && !isEmptyObject(this.inner)) return null;\n\t\tif ((this.kind === \"required\" || this.kind === \"optional\" || this.kind === \"index\") && !(\"value\" in transformedInner)) return ctx.undeclaredKeyHandling ? {\n\t\t\t...transformedInner,\n\t\t\tvalue: $ark.intrinsic.unknown\n\t\t} : null;\n\t\tif (this.kind === \"morph\") transformedInner.in ??= $ark.intrinsic.unknown;\n\t\treturn transformedNode = $.node(this.kind, transformedInner, ctx.parseOptions);\n\t}\n\tconfigureReferences(meta, selector = \"references\") {\n\t\tconst normalized = NodeSelector.normalize(selector);\n\t\tconst mapper = typeof meta === \"string\" ? (kind, inner) => ({\n\t\t\t...inner,\n\t\t\tmeta: {\n\t\t\t\t...inner.meta,\n\t\t\t\tdescription: meta\n\t\t\t}\n\t\t}) : typeof meta === \"function\" ? (kind, inner) => ({\n\t\t\t...inner,\n\t\t\tmeta: meta(inner.meta)\n\t\t}) : (kind, inner) => ({\n\t\t\t...inner,\n\t\t\tmeta: {\n\t\t\t\t...inner.meta,\n\t\t\t\t...meta\n\t\t\t}\n\t\t});\n\t\tif (normalized.boundary === \"self\") return this.$.node(this.kind, mapper(this.kind, {\n\t\t\t...this.inner,\n\t\t\tmeta: this.meta\n\t\t}));\n\t\tconst rawSelected = this._select(normalized);\n\t\tconst selected = rawSelected && liftArray(rawSelected);\n\t\tconst shouldTransform = normalized.boundary === \"child\" ? (node, ctx) => ctx.root.children.includes(node) : normalized.boundary === \"shallow\" ? (node) => node.kind !== \"structure\" : () => true;\n\t\treturn this.$.finalize(this.transform(mapper, {\n\t\t\tshouldTransform,\n\t\t\tselected\n\t\t}));\n\t}\n};\nconst NodeSelector = {\n\tapplyBoundary: {\n\t\tself: (node) => [node],\n\t\tchild: (node) => [...node.children],\n\t\tshallow: (node) => [...node.shallowReferences],\n\t\treferences: (node) => [...node.references]\n\t},\n\tapplyMethod: {\n\t\tfilter: (nodes) => nodes,\n\t\tassertFilter: (nodes, from, selector) => {\n\t\t\tif (nodes.length === 0) throwError(writeSelectAssertionMessage(from, selector));\n\t\t\treturn nodes;\n\t\t},\n\t\tfind: (nodes) => nodes[0],\n\t\tassertFind: (nodes, from, selector) => {\n\t\t\tif (nodes.length === 0) throwError(writeSelectAssertionMessage(from, selector));\n\t\t\treturn nodes[0];\n\t\t}\n\t},\n\tnormalize: (selector) => typeof selector === \"function\" ? {\n\t\tboundary: \"references\",\n\t\tmethod: \"filter\",\n\t\twhere: selector\n\t} : typeof selector === \"string\" ? isKeyOf(selector, NodeSelector.applyBoundary) ? {\n\t\tmethod: \"filter\",\n\t\tboundary: selector\n\t} : {\n\t\tboundary: \"references\",\n\t\tmethod: \"filter\",\n\t\tkind: selector\n\t} : {\n\t\tboundary: \"references\",\n\t\tmethod: \"filter\",\n\t\t...selector\n\t}\n};\nconst writeSelectAssertionMessage = (from, selector) => `${from} had no references matching ${printable(selector)}.`;\nconst typePathToPropString = (path) => stringifyPath(path, { stringifyNonKey: (node) => node.expression });\nconst referenceMatcher = /\"(\\$ark\\.[^\"]+)\"/g;\nconst compileMeta = (metaJson) => JSON.stringify(metaJson).replace(referenceMatcher, \"$1\");\nconst flatRef = (path, node) => ({\n\tpath,\n\tnode,\n\tpropString: typePathToPropString(path)\n});\nconst flatRefsAreEqual = (l, r) => l.propString === r.propString && l.node.equals(r.node);\nconst appendUniqueFlatRefs = (existing, refs) => appendUnique(existing, refs, { isEqual: flatRefsAreEqual });\nconst appendUniqueNodes = (existing, refs) => appendUnique(existing, refs, { isEqual: (l, r) => l.equals(r) });\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/shared/disjoint.js\nvar Disjoint = class Disjoint extends Array {\n\tstatic init(kind, l, r, ctx) {\n\t\treturn new Disjoint({\n\t\t\tkind,\n\t\t\tl,\n\t\t\tr,\n\t\t\tpath: ctx?.path ?? [],\n\t\t\toptional: ctx?.optional ?? false\n\t\t});\n\t}\n\tadd(kind, l, r, ctx) {\n\t\tthis.push({\n\t\t\tkind,\n\t\t\tl,\n\t\t\tr,\n\t\t\tpath: ctx?.path ?? [],\n\t\t\toptional: ctx?.optional ?? false\n\t\t});\n\t\treturn this;\n\t}\n\tget summary() {\n\t\treturn this.describeReasons();\n\t}\n\tdescribeReasons() {\n\t\tif (this.length === 1) {\n\t\t\tconst { path, l, r } = this[0];\n\t\t\tconst pathString = stringifyPath(path);\n\t\t\treturn writeUnsatisfiableExpressionError(`Intersection${pathString && ` at ${pathString}`} of ${describeReasons(l, r)}`);\n\t\t}\n\t\treturn `The following intersections result in unsatisfiable types:\\n• ${this.map(({ path, l, r }) => `${path}: ${describeReasons(l, r)}`).join(\"\\n• \")}`;\n\t}\n\tthrow() {\n\t\treturn throwParseError(this.describeReasons());\n\t}\n\tinvert() {\n\t\tconst result = this.map((entry) => ({\n\t\t\t...entry,\n\t\t\tl: entry.r,\n\t\t\tr: entry.l\n\t\t}));\n\t\tif (!(result instanceof Disjoint)) return new Disjoint(...result);\n\t\treturn result;\n\t}\n\twithPrefixKey(key, kind) {\n\t\treturn this.map((entry) => ({\n\t\t\t...entry,\n\t\t\tpath: [key, ...entry.path],\n\t\t\toptional: entry.optional || kind === \"optional\"\n\t\t}));\n\t}\n\ttoNeverIfDisjoint() {\n\t\treturn $ark.intrinsic.never;\n\t}\n};\nconst describeReasons = (l, r) => `${describeReason(l)} and ${describeReason(r)}`;\nconst describeReason = (value) => isNode(value) ? value.expression : isArray(value) ? value.map(describeReason).join(\" | \") || \"never\" : String(value);\nconst writeUnsatisfiableExpressionError = (expression) => `${expression} results in an unsatisfiable type`;\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/shared/intersections.js\nconst intersectionCache = {};\nconst intersectNodesRoot = (l, r, $) => intersectOrPipeNodes(l, r, {\n\t$,\n\tinvert: false,\n\tpipe: false\n});\nconst pipeNodesRoot = (l, r, $) => intersectOrPipeNodes(l, r, {\n\t$,\n\tinvert: false,\n\tpipe: true\n});\nconst intersectOrPipeNodes = ((l, r, ctx) => {\n\tconst operator = ctx.pipe ? \"|>\" : \"&\";\n\tconst lrCacheKey = `${l.hash}${operator}${r.hash}`;\n\tif (intersectionCache[lrCacheKey] !== void 0) return intersectionCache[lrCacheKey];\n\tif (!ctx.pipe) {\n\t\tconst rlCacheKey = `${r.hash}${operator}${l.hash}`;\n\t\tif (intersectionCache[rlCacheKey] !== void 0) {\n\t\t\tconst rlResult = intersectionCache[rlCacheKey];\n\t\t\tconst lrResult = rlResult instanceof Disjoint ? rlResult.invert() : rlResult;\n\t\t\tintersectionCache[lrCacheKey] = lrResult;\n\t\t\treturn lrResult;\n\t\t}\n\t}\n\tconst isPureIntersection = !ctx.pipe || !l.includesTransform && !r.includesTransform;\n\tif (isPureIntersection && l.equals(r)) return l;\n\tlet result = isPureIntersection ? _intersectNodes(l, r, ctx) : l.hasKindIn(...rootKinds) ? _pipeNodes(l, r, ctx) : _intersectNodes(l, r, ctx);\n\tif (isNode(result)) {\n\t\tif (l.equals(result)) result = l;\n\t\telse if (r.equals(result)) result = r;\n\t}\n\tintersectionCache[lrCacheKey] = result;\n\treturn result;\n});\nconst _intersectNodes = (l, r, ctx) => {\n\tconst leftmostKind = l.precedence < r.precedence ? l.kind : r.kind;\n\tconst implementation = l.impl.intersections[r.kind] ?? r.impl.intersections[l.kind];\n\tif (implementation === void 0) return null;\n\telse if (leftmostKind === l.kind) return implementation(l, r, ctx);\n\telse {\n\t\tlet result = implementation(r, l, {\n\t\t\t...ctx,\n\t\t\tinvert: !ctx.invert\n\t\t});\n\t\tif (result instanceof Disjoint) result = result.invert();\n\t\treturn result;\n\t}\n};\nconst _pipeNodes = (l, r, ctx) => l.includesTransform || r.includesTransform ? ctx.invert ? pipeMorphed(r, l, ctx) : pipeMorphed(l, r, ctx) : _intersectNodes(l, r, ctx);\nconst pipeMorphed = (from, to, ctx) => from.distribute((fromBranch) => _pipeMorphed(fromBranch, to, ctx), (results) => {\n\tconst viableBranches = results.filter(isNode);\n\tif (viableBranches.length === 0) return Disjoint.init(\"union\", from.branches, to.branches);\n\tif (viableBranches.length < from.branches.length || !from.branches.every((branch, i) => branch.rawIn.equals(viableBranches[i].rawIn))) return ctx.$.parseSchema(viableBranches);\n\tif (viableBranches.length === 1) return viableBranches[0];\n\tconst schema = { branches: viableBranches };\n\treturn ctx.$.parseSchema(schema);\n});\nconst _pipeMorphed = (from, to, ctx) => {\n\tif (from.hasKind(\"morph\")) {\n\t\tconst morphs = [...from.morphs];\n\t\tif (from.lastMorphIfNode) {\n\t\t\tconst outIntersection = intersectOrPipeNodes(from.lastMorphIfNode, to, ctx);\n\t\t\tif (outIntersection instanceof Disjoint) return outIntersection;\n\t\t\tmorphs[morphs.length - 1] = outIntersection;\n\t\t} else morphs.push(to);\n\t\treturn ctx.$.node(\"morph\", {\n\t\t\tmorphs,\n\t\t\tin: from.inner.in\n\t\t});\n\t}\n\tif (to.hasKind(\"morph\")) {\n\t\tconst inTersection = intersectOrPipeNodes(from, to.rawIn, ctx);\n\t\tif (inTersection instanceof Disjoint) return inTersection;\n\t\treturn ctx.$.node(\"morph\", {\n\t\t\tmorphs: [to],\n\t\t\tin: inTersection\n\t\t});\n\t}\n\treturn ctx.$.node(\"morph\", {\n\t\tmorphs: [to],\n\t\tin: from\n\t});\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/constraint.js\nvar BaseConstraint = class extends BaseNode {\n\tconstructor(attachments, $) {\n\t\tsuper(attachments, $);\n\t\tObject.defineProperty(this, arkKind, {\n\t\t\tvalue: \"constraint\",\n\t\t\tenumerable: false\n\t\t});\n\t}\n\timpliedSiblings;\n\tintersect(r) {\n\t\treturn intersectNodesRoot(this, r, this.$);\n\t}\n};\nvar InternalPrimitiveConstraint = class extends BaseConstraint {\n\ttraverseApply = (data, ctx) => {\n\t\tif (!this.traverseAllows(data, ctx)) ctx.errorFromNodeContext(this.errorContext);\n\t};\n\tcompile(js) {\n\t\tif (js.traversalKind === \"Allows\") js.return(this.compiledCondition);\n\t\telse js.if(this.compiledNegation, () => js.line(`ctx.errorFromNodeContext(${this.compiledErrorContext})`));\n\t}\n\tget errorContext() {\n\t\treturn {\n\t\t\tcode: this.kind,\n\t\t\tdescription: this.description,\n\t\t\tmeta: this.meta,\n\t\t\t...this.inner\n\t\t};\n\t}\n\tget compiledErrorContext() {\n\t\treturn compileObjectLiteral(this.errorContext);\n\t}\n};\nconst constraintKeyParser = (kind) => (schema, ctx) => {\n\tif (isArray(schema)) {\n\t\tif (schema.length === 0) return;\n\t\tconst nodes = schema.map((schema) => ctx.$.node(kind, schema));\n\t\tif (kind === \"predicate\") return nodes;\n\t\treturn nodes.sort((l, r) => l.hash < r.hash ? -1 : 1);\n\t}\n\tconst child = ctx.$.node(kind, schema);\n\tif (child.isRoot()) return;\n\treturn child.hasOpenIntersection() ? [child] : child;\n};\nconst intersectConstraints = (s) => {\n\tconst head = s.r.shift();\n\tif (!head) {\n\t\tlet result = s.l.length === 0 && s.kind === \"structure\" ? $ark.intrinsic.unknown.internal : s.ctx.$.node(s.kind, Object.assign(s.baseInner, unflattenConstraints(s.l)), { prereduced: true });\n\t\tfor (const root of s.roots) {\n\t\t\tif (result instanceof Disjoint) return result;\n\t\t\tresult = intersectOrPipeNodes(root, result, s.ctx);\n\t\t}\n\t\treturn result;\n\t}\n\tlet matched = false;\n\tfor (let i = 0; i < s.l.length; i++) {\n\t\tconst result = intersectOrPipeNodes(s.l[i], head, s.ctx);\n\t\tif (result === null) continue;\n\t\tif (result instanceof Disjoint) return result;\n\t\tif (result.isRoot()) {\n\t\t\ts.roots.push(result);\n\t\t\ts.l.splice(i);\n\t\t\treturn intersectConstraints(s);\n\t\t}\n\t\tif (!matched) {\n\t\t\ts.l[i] = result;\n\t\t\tmatched = true;\n\t\t} else if (!s.l.includes(result)) return throwInternalError(`Unexpectedly encountered multiple distinct intersection results for refinement ${head}`);\n\t}\n\tif (!matched) s.l.push(head);\n\tif (s.kind === \"intersection\") {\n\t\tif (head.impliedSiblings) for (const node of head.impliedSiblings) appendUnique(s.r, node);\n\t}\n\treturn intersectConstraints(s);\n};\nconst flattenConstraints = (inner) => {\n\treturn Object.entries(inner).flatMap(([k, v]) => k in constraintKeys ? v : []).sort((l, r) => l.precedence < r.precedence ? -1 : l.precedence > r.precedence ? 1 : l.kind === \"predicate\" && r.kind === \"predicate\" ? 0 : l.hash < r.hash ? -1 : 1);\n};\nconst unflattenConstraints = (constraints) => {\n\tconst inner = {};\n\tfor (const constraint of constraints) if (constraint.hasOpenIntersection()) inner[constraint.kind] = append(inner[constraint.kind], constraint);\n\telse {\n\t\tif (inner[constraint.kind]) return throwInternalError(`Unexpected intersection of closed refinements of kind ${constraint.kind}`);\n\t\tinner[constraint.kind] = constraint;\n\t}\n\treturn inner;\n};\nconst throwInvalidOperandError = (...args) => throwParseError(writeInvalidOperandMessage(...args));\nconst writeInvalidOperandMessage = (kind, expected, actual) => {\n\tconst actualDescription = actual.hasKind(\"morph\") ? \"a morph\" : actual.isUnknown() ? \"unknown\" : actual.exclude(expected).defaultShortDescription;\n\treturn `${capitalize$1(kind)} operand must be ${expected.description} (was ${actualDescription})`;\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/generic.js\nconst parseGeneric = (paramDefs, bodyDef, $) => new GenericRoot(paramDefs, bodyDef, $, $, null);\nvar LazyGenericBody = class extends Callable {};\nvar GenericRoot = class extends Callable {\n\t[arkKind] = \"generic\";\n\tparamDefs;\n\tbodyDef;\n\t$;\n\targ$;\n\tbaseInstantiation;\n\thkt;\n\tdescription;\n\tconstructor(paramDefs, bodyDef, $, arg$, hkt) {\n\t\tsuper((...args) => {\n\t\t\tconst argNodes = flatMorph(this.names, (i, name) => {\n\t\t\t\tconst arg = this.arg$.parse(args[i]);\n\t\t\t\tif (!arg.extends(this.constraints[i])) throwParseError(writeUnsatisfiedParameterConstraintMessage(name, this.constraints[i].expression, arg.expression));\n\t\t\t\treturn [name, arg];\n\t\t\t});\n\t\t\tif (this.defIsLazy()) {\n\t\t\t\tconst def = this.bodyDef(argNodes);\n\t\t\t\treturn this.$.parse(def);\n\t\t\t}\n\t\t\treturn this.$.parse(bodyDef, { args: argNodes });\n\t\t});\n\t\tthis.paramDefs = paramDefs;\n\t\tthis.bodyDef = bodyDef;\n\t\tthis.$ = $;\n\t\tthis.arg$ = arg$;\n\t\tthis.hkt = hkt;\n\t\tthis.description = hkt ? new hkt().description ?? `a generic type for ${hkt.constructor.name}` : \"a generic type\";\n\t\tthis.baseInstantiation = this(...this.constraints);\n\t}\n\tdefIsLazy() {\n\t\treturn this.bodyDef instanceof LazyGenericBody;\n\t}\n\tcacheGetter(name, value) {\n\t\tObject.defineProperty(this, name, { value });\n\t\treturn value;\n\t}\n\tget json() {\n\t\treturn this.cacheGetter(\"json\", {\n\t\t\tparams: this.params.map((param) => param[1].isUnknown() ? param[0] : [param[0], param[1].json]),\n\t\t\tbody: snapshot(this.bodyDef)\n\t\t});\n\t}\n\tget params() {\n\t\treturn this.cacheGetter(\"params\", this.paramDefs.map((param) => typeof param === \"string\" ? [param, $ark.intrinsic.unknown] : [param[0], this.$.parse(param[1])]));\n\t}\n\tget names() {\n\t\treturn this.cacheGetter(\"names\", this.params.map((e) => e[0]));\n\t}\n\tget constraints() {\n\t\treturn this.cacheGetter(\"constraints\", this.params.map((e) => e[1]));\n\t}\n\tget internal() {\n\t\treturn this;\n\t}\n\tget referencesById() {\n\t\treturn this.baseInstantiation.internal.referencesById;\n\t}\n\tget references() {\n\t\treturn this.baseInstantiation.internal.references;\n\t}\n};\nconst writeUnsatisfiedParameterConstraintMessage = (name, constraint, arg) => `${name} must be assignable to ${constraint} (was ${arg})`;\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/predicate.js\nconst implementation$21 = implementNode({\n\tkind: \"predicate\",\n\thasAssociatedError: true,\n\tcollapsibleKey: \"predicate\",\n\tkeys: { predicate: {} },\n\tnormalize: (schema) => typeof schema === \"function\" ? { predicate: schema } : schema,\n\tdefaults: { description: (node) => `valid according to ${node.predicate.name || \"an anonymous predicate\"}` },\n\tintersectionIsOpen: true,\n\tintersections: { predicate: () => null }\n});\nvar PredicateNode = class extends BaseConstraint {\n\tserializedPredicate = registeredReference(this.predicate);\n\tcompiledCondition = `${this.serializedPredicate}(data, ctx)`;\n\tcompiledNegation = `!${this.compiledCondition}`;\n\timpliedBasis = null;\n\texpression = this.serializedPredicate;\n\ttraverseAllows = this.predicate;\n\terrorContext = {\n\t\tcode: \"predicate\",\n\t\tdescription: this.description,\n\t\tmeta: this.meta\n\t};\n\tcompiledErrorContext = compileObjectLiteral(this.errorContext);\n\ttraverseApply = (data, ctx) => {\n\t\tconst errorCount = ctx.currentErrorCount;\n\t\tif (!this.predicate(data, ctx.external) && ctx.currentErrorCount === errorCount) ctx.errorFromNodeContext(this.errorContext);\n\t};\n\tcompile(js) {\n\t\tif (js.traversalKind === \"Allows\") {\n\t\t\tjs.return(this.compiledCondition);\n\t\t\treturn;\n\t\t}\n\t\tjs.initializeErrorCount();\n\t\tjs.if(`${this.compiledNegation} && ctx.currentErrorCount === errorCount`, () => js.line(`ctx.errorFromNodeContext(${this.compiledErrorContext})`));\n\t}\n\treduceJsonSchema(base, ctx) {\n\t\treturn ctx.fallback.predicate({\n\t\t\tcode: \"predicate\",\n\t\t\tbase,\n\t\t\tpredicate: this.predicate\n\t\t});\n\t}\n};\nconst Predicate = {\n\timplementation: implementation$21,\n\tNode: PredicateNode\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/refinements/divisor.js\nconst implementation$20 = implementNode({\n\tkind: \"divisor\",\n\tcollapsibleKey: \"rule\",\n\tkeys: { rule: { parse: (divisor) => Number.isInteger(divisor) ? divisor : throwParseError(writeNonIntegerDivisorMessage(divisor)) } },\n\tnormalize: (schema) => typeof schema === \"number\" ? { rule: schema } : schema,\n\thasAssociatedError: true,\n\tdefaults: { description: (node) => node.rule === 1 ? \"an integer\" : node.rule === 2 ? \"even\" : `a multiple of ${node.rule}` },\n\tintersections: { divisor: (l, r, ctx) => ctx.$.node(\"divisor\", { rule: Math.abs(l.rule * r.rule / greatestCommonDivisor(l.rule, r.rule)) }) },\n\tobviatesBasisDescription: true\n});\nvar DivisorNode = class extends InternalPrimitiveConstraint {\n\ttraverseAllows = (data) => data % this.rule === 0;\n\tcompiledCondition = `data % ${this.rule} === 0`;\n\tcompiledNegation = `data % ${this.rule} !== 0`;\n\timpliedBasis = $ark.intrinsic.number.internal;\n\texpression = `% ${this.rule}`;\n\treduceJsonSchema(schema) {\n\t\tschema.type = \"integer\";\n\t\tif (this.rule === 1) return schema;\n\t\tschema.multipleOf = this.rule;\n\t\treturn schema;\n\t}\n};\nconst Divisor = {\n\timplementation: implementation$20,\n\tNode: DivisorNode\n};\nconst writeNonIntegerDivisorMessage = (divisor) => `divisor must be an integer (was ${divisor})`;\nconst greatestCommonDivisor = (l, r) => {\n\tlet previous;\n\tlet greatestCommonDivisor = l;\n\tlet current = r;\n\twhile (current !== 0) {\n\t\tprevious = current;\n\t\tcurrent = greatestCommonDivisor % current;\n\t\tgreatestCommonDivisor = previous;\n\t}\n\treturn greatestCommonDivisor;\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/refinements/range.js\nvar BaseRange = class extends InternalPrimitiveConstraint {\n\tboundOperandKind = operandKindsByBoundKind[this.kind];\n\tcompiledActual = this.boundOperandKind === \"value\" ? `data` : this.boundOperandKind === \"length\" ? `data.length` : `data.valueOf()`;\n\tcomparator = compileComparator(this.kind, this.exclusive);\n\tnumericLimit = this.rule.valueOf();\n\texpression = `${this.comparator} ${this.rule}`;\n\tcompiledCondition = `${this.compiledActual} ${this.comparator} ${this.numericLimit}`;\n\tcompiledNegation = `${this.compiledActual} ${negatedComparators[this.comparator]} ${this.numericLimit}`;\n\tstringLimit = this.boundOperandKind === \"date\" ? dateLimitToString(this.numericLimit) : `${this.numericLimit}`;\n\tlimitKind = this.comparator[\"0\"] === \"<\" ? \"upper\" : \"lower\";\n\tisStricterThan(r) {\n\t\treturn (this.limitKind === \"upper\" ? this.numericLimit < r.numericLimit : this.numericLimit > r.numericLimit) || this.numericLimit === r.numericLimit && this.exclusive === true && !r.exclusive;\n\t}\n\toverlapsRange(r) {\n\t\tif (this.isStricterThan(r)) return false;\n\t\tif (this.numericLimit === r.numericLimit && (this.exclusive || r.exclusive)) return false;\n\t\treturn true;\n\t}\n\toverlapIsUnit(r) {\n\t\treturn this.numericLimit === r.numericLimit && !this.exclusive && !r.exclusive;\n\t}\n};\nconst negatedComparators = {\n\t\"<\": \">=\",\n\t\"<=\": \">\",\n\t\">\": \"<=\",\n\t\">=\": \"<\"\n};\nconst boundKindPairsByLower = {\n\tmin: \"max\",\n\tminLength: \"maxLength\",\n\tafter: \"before\"\n};\nconst parseExclusiveKey = { parse: (flag) => flag || void 0 };\nconst createLengthSchemaNormalizer = (kind) => (schema) => {\n\tif (typeof schema === \"number\") return { rule: schema };\n\tconst { exclusive, ...normalized } = schema;\n\treturn exclusive ? {\n\t\t...normalized,\n\t\trule: kind === \"minLength\" ? normalized.rule + 1 : normalized.rule - 1\n\t} : normalized;\n};\nconst createDateSchemaNormalizer = (kind) => (schema) => {\n\tif (typeof schema === \"number\" || typeof schema === \"string\" || schema instanceof Date) return { rule: schema };\n\tconst { exclusive, ...normalized } = schema;\n\tif (!exclusive) return normalized;\n\tconst numericLimit = typeof normalized.rule === \"number\" ? normalized.rule : typeof normalized.rule === \"string\" ? new Date(normalized.rule).valueOf() : normalized.rule.valueOf();\n\treturn exclusive ? {\n\t\t...normalized,\n\t\trule: kind === \"after\" ? numericLimit + 1 : numericLimit - 1\n\t} : normalized;\n};\nconst parseDateLimit = (limit) => typeof limit === \"string\" || typeof limit === \"number\" ? new Date(limit) : limit;\nconst writeInvalidLengthBoundMessage = (kind, limit) => `${kind} bound must be a positive integer (was ${limit})`;\nconst createLengthRuleParser = (kind) => (limit) => {\n\tif (!Number.isInteger(limit) || limit < 0) throwParseError(writeInvalidLengthBoundMessage(kind, limit));\n\treturn limit;\n};\nconst operandKindsByBoundKind = {\n\tmin: \"value\",\n\tmax: \"value\",\n\tminLength: \"length\",\n\tmaxLength: \"length\",\n\tafter: \"date\",\n\tbefore: \"date\"\n};\nconst compileComparator = (kind, exclusive) => `${isKeyOf(kind, boundKindPairsByLower) ? \">\" : \"<\"}${exclusive ? \"\" : \"=\"}`;\nconst dateLimitToString = (limit) => typeof limit === \"string\" ? limit : new Date(limit).toLocaleString();\nconst writeUnboundableMessage = (root) => `Bounded expression ${root} must be exactly one of number, string, Array, or Date`;\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/refinements/after.js\nconst implementation$19 = implementNode({\n\tkind: \"after\",\n\tcollapsibleKey: \"rule\",\n\thasAssociatedError: true,\n\tkeys: { rule: {\n\t\tparse: parseDateLimit,\n\t\tserialize: (schema) => schema.toISOString()\n\t} },\n\tnormalize: createDateSchemaNormalizer(\"after\"),\n\tdefaults: {\n\t\tdescription: (node) => `${node.collapsibleLimitString} or later`,\n\t\tactual: describeCollapsibleDate\n\t},\n\tintersections: { after: (l, r) => l.isStricterThan(r) ? l : r }\n});\nvar AfterNode = class extends BaseRange {\n\timpliedBasis = $ark.intrinsic.Date.internal;\n\tcollapsibleLimitString = describeCollapsibleDate(this.rule);\n\ttraverseAllows = (data) => data >= this.rule;\n\treduceJsonSchema(base, ctx) {\n\t\treturn ctx.fallback.date({\n\t\t\tcode: \"date\",\n\t\t\tbase,\n\t\t\tafter: this.rule\n\t\t});\n\t}\n};\nconst After = {\n\timplementation: implementation$19,\n\tNode: AfterNode\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/refinements/before.js\nconst implementation$18 = implementNode({\n\tkind: \"before\",\n\tcollapsibleKey: \"rule\",\n\thasAssociatedError: true,\n\tkeys: { rule: {\n\t\tparse: parseDateLimit,\n\t\tserialize: (schema) => schema.toISOString()\n\t} },\n\tnormalize: createDateSchemaNormalizer(\"before\"),\n\tdefaults: {\n\t\tdescription: (node) => `${node.collapsibleLimitString} or earlier`,\n\t\tactual: describeCollapsibleDate\n\t},\n\tintersections: {\n\t\tbefore: (l, r) => l.isStricterThan(r) ? l : r,\n\t\tafter: (before, after, ctx) => before.overlapsRange(after) ? before.overlapIsUnit(after) ? ctx.$.node(\"unit\", { unit: before.rule }) : null : Disjoint.init(\"range\", before, after)\n\t}\n});\nvar BeforeNode = class extends BaseRange {\n\tcollapsibleLimitString = describeCollapsibleDate(this.rule);\n\ttraverseAllows = (data) => data <= this.rule;\n\timpliedBasis = $ark.intrinsic.Date.internal;\n\treduceJsonSchema(base, ctx) {\n\t\treturn ctx.fallback.date({\n\t\t\tcode: \"date\",\n\t\t\tbase,\n\t\t\tbefore: this.rule\n\t\t});\n\t}\n};\nconst Before = {\n\timplementation: implementation$18,\n\tNode: BeforeNode\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/refinements/exactLength.js\nconst implementation$17 = implementNode({\n\tkind: \"exactLength\",\n\tcollapsibleKey: \"rule\",\n\tkeys: { rule: { parse: createLengthRuleParser(\"exactLength\") } },\n\tnormalize: (schema) => typeof schema === \"number\" ? { rule: schema } : schema,\n\thasAssociatedError: true,\n\tdefaults: {\n\t\tdescription: (node) => `exactly length ${node.rule}`,\n\t\tactual: (data) => `${data.length}`\n\t},\n\tintersections: {\n\t\texactLength: (l, r, ctx) => Disjoint.init(\"unit\", ctx.$.node(\"unit\", { unit: l.rule }), ctx.$.node(\"unit\", { unit: r.rule }), { path: [\"length\"] }),\n\t\tminLength: (exactLength, minLength) => exactLength.rule >= minLength.rule ? exactLength : Disjoint.init(\"range\", exactLength, minLength),\n\t\tmaxLength: (exactLength, maxLength) => exactLength.rule <= maxLength.rule ? exactLength : Disjoint.init(\"range\", exactLength, maxLength)\n\t}\n});\nvar ExactLengthNode = class extends InternalPrimitiveConstraint {\n\ttraverseAllows = (data) => data.length === this.rule;\n\tcompiledCondition = `data.length === ${this.rule}`;\n\tcompiledNegation = `data.length !== ${this.rule}`;\n\timpliedBasis = $ark.intrinsic.lengthBoundable.internal;\n\texpression = `== ${this.rule}`;\n\treduceJsonSchema(schema) {\n\t\tswitch (schema.type) {\n\t\t\tcase \"string\":\n\t\t\t\tschema.minLength = this.rule;\n\t\t\t\tschema.maxLength = this.rule;\n\t\t\t\treturn schema;\n\t\t\tcase \"array\":\n\t\t\t\tschema.minItems = this.rule;\n\t\t\t\tschema.maxItems = this.rule;\n\t\t\t\treturn schema;\n\t\t\tdefault: return ToJsonSchema.throwInternalOperandError(\"exactLength\", schema);\n\t\t}\n\t}\n};\nconst ExactLength = {\n\timplementation: implementation$17,\n\tNode: ExactLengthNode\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/refinements/max.js\nconst implementation$16 = implementNode({\n\tkind: \"max\",\n\tcollapsibleKey: \"rule\",\n\thasAssociatedError: true,\n\tkeys: {\n\t\trule: {},\n\t\texclusive: parseExclusiveKey\n\t},\n\tnormalize: (schema) => typeof schema === \"number\" ? { rule: schema } : schema,\n\tdefaults: { description: (node) => {\n\t\tif (node.rule === 0) return node.exclusive ? \"negative\" : \"non-positive\";\n\t\treturn `${node.exclusive ? \"less than\" : \"at most\"} ${node.rule}`;\n\t} },\n\tintersections: {\n\t\tmax: (l, r) => l.isStricterThan(r) ? l : r,\n\t\tmin: (max, min, ctx) => max.overlapsRange(min) ? max.overlapIsUnit(min) ? ctx.$.node(\"unit\", { unit: max.rule }) : null : Disjoint.init(\"range\", max, min)\n\t},\n\tobviatesBasisDescription: true\n});\nvar MaxNode = class extends BaseRange {\n\timpliedBasis = $ark.intrinsic.number.internal;\n\ttraverseAllows = this.exclusive ? (data) => data < this.rule : (data) => data <= this.rule;\n\treduceJsonSchema(schema) {\n\t\tif (this.exclusive) schema.exclusiveMaximum = this.rule;\n\t\telse schema.maximum = this.rule;\n\t\treturn schema;\n\t}\n};\nconst Max = {\n\timplementation: implementation$16,\n\tNode: MaxNode\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/refinements/maxLength.js\nconst implementation$15 = implementNode({\n\tkind: \"maxLength\",\n\tcollapsibleKey: \"rule\",\n\thasAssociatedError: true,\n\tkeys: { rule: { parse: createLengthRuleParser(\"maxLength\") } },\n\treduce: (inner, $) => inner.rule === 0 ? $.node(\"exactLength\", inner) : void 0,\n\tnormalize: createLengthSchemaNormalizer(\"maxLength\"),\n\tdefaults: {\n\t\tdescription: (node) => `at most length ${node.rule}`,\n\t\tactual: (data) => `${data.length}`\n\t},\n\tintersections: {\n\t\tmaxLength: (l, r) => l.isStricterThan(r) ? l : r,\n\t\tminLength: (max, min, ctx) => max.overlapsRange(min) ? max.overlapIsUnit(min) ? ctx.$.node(\"exactLength\", { rule: max.rule }) : null : Disjoint.init(\"range\", max, min)\n\t}\n});\nvar MaxLengthNode = class extends BaseRange {\n\timpliedBasis = $ark.intrinsic.lengthBoundable.internal;\n\ttraverseAllows = (data) => data.length <= this.rule;\n\treduceJsonSchema(schema) {\n\t\tswitch (schema.type) {\n\t\t\tcase \"string\":\n\t\t\t\tschema.maxLength = this.rule;\n\t\t\t\treturn schema;\n\t\t\tcase \"array\":\n\t\t\t\tschema.maxItems = this.rule;\n\t\t\t\treturn schema;\n\t\t\tdefault: return ToJsonSchema.throwInternalOperandError(\"maxLength\", schema);\n\t\t}\n\t}\n};\nconst MaxLength = {\n\timplementation: implementation$15,\n\tNode: MaxLengthNode\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/refinements/min.js\nconst implementation$14 = implementNode({\n\tkind: \"min\",\n\tcollapsibleKey: \"rule\",\n\thasAssociatedError: true,\n\tkeys: {\n\t\trule: {},\n\t\texclusive: parseExclusiveKey\n\t},\n\tnormalize: (schema) => typeof schema === \"number\" ? { rule: schema } : schema,\n\tdefaults: { description: (node) => {\n\t\tif (node.rule === 0) return node.exclusive ? \"positive\" : \"non-negative\";\n\t\treturn `${node.exclusive ? \"more than\" : \"at least\"} ${node.rule}`;\n\t} },\n\tintersections: { min: (l, r) => l.isStricterThan(r) ? l : r },\n\tobviatesBasisDescription: true\n});\nvar MinNode = class extends BaseRange {\n\timpliedBasis = $ark.intrinsic.number.internal;\n\ttraverseAllows = this.exclusive ? (data) => data > this.rule : (data) => data >= this.rule;\n\treduceJsonSchema(schema) {\n\t\tif (this.exclusive) schema.exclusiveMinimum = this.rule;\n\t\telse schema.minimum = this.rule;\n\t\treturn schema;\n\t}\n};\nconst Min = {\n\timplementation: implementation$14,\n\tNode: MinNode\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/refinements/minLength.js\nconst implementation$13 = implementNode({\n\tkind: \"minLength\",\n\tcollapsibleKey: \"rule\",\n\thasAssociatedError: true,\n\tkeys: { rule: { parse: createLengthRuleParser(\"minLength\") } },\n\treduce: (inner) => inner.rule === 0 ? $ark.intrinsic.unknown : void 0,\n\tnormalize: createLengthSchemaNormalizer(\"minLength\"),\n\tdefaults: {\n\t\tdescription: (node) => node.rule === 1 ? \"non-empty\" : `at least length ${node.rule}`,\n\t\tactual: (data) => data.length === 0 ? \"\" : `${data.length}`\n\t},\n\tintersections: { minLength: (l, r) => l.isStricterThan(r) ? l : r }\n});\nvar MinLengthNode = class extends BaseRange {\n\timpliedBasis = $ark.intrinsic.lengthBoundable.internal;\n\ttraverseAllows = (data) => data.length >= this.rule;\n\treduceJsonSchema(schema) {\n\t\tswitch (schema.type) {\n\t\t\tcase \"string\":\n\t\t\t\tschema.minLength = this.rule;\n\t\t\t\treturn schema;\n\t\t\tcase \"array\":\n\t\t\t\tschema.minItems = this.rule;\n\t\t\t\treturn schema;\n\t\t\tdefault: return ToJsonSchema.throwInternalOperandError(\"minLength\", schema);\n\t\t}\n\t}\n};\nconst MinLength = {\n\timplementation: implementation$13,\n\tNode: MinLengthNode\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/refinements/kinds.js\nconst boundImplementationsByKind = {\n\tmin: Min.implementation,\n\tmax: Max.implementation,\n\tminLength: MinLength.implementation,\n\tmaxLength: MaxLength.implementation,\n\texactLength: ExactLength.implementation,\n\tafter: After.implementation,\n\tbefore: Before.implementation\n};\nconst boundClassesByKind = {\n\tmin: Min.Node,\n\tmax: Max.Node,\n\tminLength: MinLength.Node,\n\tmaxLength: MaxLength.Node,\n\texactLength: ExactLength.Node,\n\tafter: After.Node,\n\tbefore: Before.Node\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/refinements/pattern.js\nconst implementation$12 = implementNode({\n\tkind: \"pattern\",\n\tcollapsibleKey: \"rule\",\n\tkeys: {\n\t\trule: {},\n\t\tflags: {}\n\t},\n\tnormalize: (schema) => typeof schema === \"string\" ? { rule: schema } : schema instanceof RegExp ? schema.flags ? {\n\t\trule: schema.source,\n\t\tflags: schema.flags\n\t} : { rule: schema.source } : schema,\n\tobviatesBasisDescription: true,\n\tobviatesBasisExpression: true,\n\thasAssociatedError: true,\n\tintersectionIsOpen: true,\n\tdefaults: { description: (node) => `matched by ${node.rule}` },\n\tintersections: { pattern: () => null }\n});\nvar PatternNode = class extends InternalPrimitiveConstraint {\n\tinstance = new RegExp(this.rule, this.flags);\n\texpression = `${this.instance}`;\n\ttraverseAllows = this.instance.test.bind(this.instance);\n\tcompiledCondition = `${this.expression}.test(data)`;\n\tcompiledNegation = `!${this.compiledCondition}`;\n\timpliedBasis = $ark.intrinsic.string.internal;\n\treduceJsonSchema(base, ctx) {\n\t\tif (base.pattern) return ctx.fallback.patternIntersection({\n\t\t\tcode: \"patternIntersection\",\n\t\t\tbase,\n\t\t\tpattern: this.rule\n\t\t});\n\t\tbase.pattern = this.rule;\n\t\treturn base;\n\t}\n};\nconst Pattern = {\n\timplementation: implementation$12,\n\tNode: PatternNode\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/parse.js\nconst schemaKindOf = (schema, allowedKinds) => {\n\tconst kind = discriminateRootKind(schema);\n\tif (allowedKinds && !allowedKinds.includes(kind)) return throwParseError(`Root of kind ${kind} should be one of ${allowedKinds}`);\n\treturn kind;\n};\nconst discriminateRootKind = (schema) => {\n\tif (hasArkKind(schema, \"root\")) return schema.kind;\n\tif (typeof schema === \"string\") return schema[0] === \"$\" ? \"alias\" : schema in domainDescriptions ? \"domain\" : \"proto\";\n\tif (typeof schema === \"function\") return \"proto\";\n\tif (typeof schema !== \"object\" || schema === null) return throwParseError(writeInvalidSchemaMessage(schema));\n\tif (\"morphs\" in schema) return \"morph\";\n\tif (\"branches\" in schema || isArray(schema)) return \"union\";\n\tif (\"unit\" in schema) return \"unit\";\n\tif (\"reference\" in schema) return \"alias\";\n\tconst schemaKeys = Object.keys(schema);\n\tif (schemaKeys.length === 0 || schemaKeys.some((k) => k in constraintKeys)) return \"intersection\";\n\tif (\"proto\" in schema) return \"proto\";\n\tif (\"domain\" in schema) return \"domain\";\n\treturn throwParseError(writeInvalidSchemaMessage(schema));\n};\nconst writeInvalidSchemaMessage = (schema) => `${printable(schema)} is not a valid type schema`;\nconst nodeCountsByPrefix = {};\nconst serializeListableChild = (listableNode) => isArray(listableNode) ? listableNode.map((node) => node.collapsibleJson) : listableNode.collapsibleJson;\nconst nodesByRegisteredId = {};\n$ark.nodesByRegisteredId = nodesByRegisteredId;\nconst registerNodeId = (prefix) => {\n\tnodeCountsByPrefix[prefix] ??= 0;\n\treturn `${prefix}${++nodeCountsByPrefix[prefix]}`;\n};\nconst parseNode = (ctx) => {\n\tconst impl = nodeImplementationsByKind[ctx.kind];\n\tconst configuredSchema = impl.applyConfig?.(ctx.def, ctx.$.resolvedConfig) ?? ctx.def;\n\tconst inner = {};\n\tconst { meta: metaSchema, ...innerSchema } = configuredSchema;\n\tconst meta = metaSchema === void 0 ? {} : typeof metaSchema === \"string\" ? { description: metaSchema } : metaSchema;\n\tconst innerSchemaEntries = entriesOf(innerSchema).sort(([lKey], [rKey]) => isNodeKind(lKey) ? isNodeKind(rKey) ? precedenceOfKind(lKey) - precedenceOfKind(rKey) : 1 : isNodeKind(rKey) ? -1 : lKey < rKey ? -1 : 1).filter(([k, v]) => {\n\t\tif (k.startsWith(\"meta.\")) {\n\t\t\tconst metaKey = k.slice(5);\n\t\t\tmeta[metaKey] = v;\n\t\t\treturn false;\n\t\t}\n\t\treturn true;\n\t});\n\tfor (const entry of innerSchemaEntries) {\n\t\tconst k = entry[0];\n\t\tconst keyImpl = impl.keys[k];\n\t\tif (!keyImpl) return throwParseError(`Key ${k} is not valid on ${ctx.kind} schema`);\n\t\tconst v = keyImpl.parse ? keyImpl.parse(entry[1], ctx) : entry[1];\n\t\tif (v !== unset && (v !== void 0 || keyImpl.preserveUndefined)) inner[k] = v;\n\t}\n\tif (impl.reduce && !ctx.prereduced) {\n\t\tconst reduced = impl.reduce(inner, ctx.$);\n\t\tif (reduced) {\n\t\t\tif (reduced instanceof Disjoint) return reduced.throw();\n\t\t\treturn withMeta(reduced, meta);\n\t\t}\n\t}\n\treturn createNode({\n\t\tid: ctx.id,\n\t\tkind: ctx.kind,\n\t\tinner,\n\t\tmeta,\n\t\t$: ctx.$\n\t});\n};\nconst createNode = ({ id, kind, inner, meta, $, ignoreCache }) => {\n\tconst impl = nodeImplementationsByKind[kind];\n\tconst innerEntries = entriesOf(inner);\n\tconst children = [];\n\tlet innerJson = {};\n\tfor (const [k, v] of innerEntries) {\n\t\tconst keyImpl = impl.keys[k];\n\t\tconst serialize = keyImpl.serialize ?? (keyImpl.child ? serializeListableChild : defaultValueSerializer);\n\t\tinnerJson[k] = serialize(v);\n\t\tif (keyImpl.child === true) {\n\t\t\tconst listableNode = v;\n\t\t\tif (isArray(listableNode)) children.push(...listableNode);\n\t\t\telse children.push(listableNode);\n\t\t} else if (typeof keyImpl.child === \"function\") children.push(...keyImpl.child(v));\n\t}\n\tif (impl.finalizeInnerJson) innerJson = impl.finalizeInnerJson(innerJson);\n\tlet json = { ...innerJson };\n\tlet metaJson = {};\n\tif (!isEmptyObject(meta)) {\n\t\tmetaJson = flatMorph(meta, (k, v) => [k, k === \"examples\" ? v : defaultValueSerializer(v)]);\n\t\tjson.meta = possiblyCollapse(metaJson, \"description\", true);\n\t}\n\tinnerJson = possiblyCollapse(innerJson, impl.collapsibleKey, false);\n\tconst innerHash = JSON.stringify({\n\t\tkind,\n\t\t...innerJson\n\t});\n\tjson = possiblyCollapse(json, impl.collapsibleKey, false);\n\tconst collapsibleJson = possiblyCollapse(json, impl.collapsibleKey, true);\n\tconst hash = JSON.stringify({\n\t\tkind,\n\t\t...json\n\t});\n\tif ($.nodesByHash[hash] && !ignoreCache) return $.nodesByHash[hash];\n\tconst attachments = {\n\t\tid,\n\t\tkind,\n\t\timpl,\n\t\tinner,\n\t\tinnerEntries,\n\t\tinnerJson,\n\t\tinnerHash,\n\t\tmeta,\n\t\tmetaJson,\n\t\tjson,\n\t\thash,\n\t\tcollapsibleJson,\n\t\tchildren\n\t};\n\tif (kind !== \"intersection\") {\n\t\tfor (const k in inner) if (k !== \"in\" && k !== \"out\") attachments[k] = inner[k];\n\t}\n\tconst node = new nodeClassesByKind[kind](attachments, $);\n\treturn $.nodesByHash[hash] = node;\n};\nconst withId = (node, id) => {\n\tif (node.id === id) return node;\n\tif (isNode(nodesByRegisteredId[id])) throwInternalError(`Unexpected attempt to overwrite node id ${id}`);\n\treturn createNode({\n\t\tid,\n\t\tkind: node.kind,\n\t\tinner: node.inner,\n\t\tmeta: node.meta,\n\t\t$: node.$,\n\t\tignoreCache: true\n\t});\n};\nconst withMeta = (node, meta, id) => {\n\tif (id && isNode(nodesByRegisteredId[id])) throwInternalError(`Unexpected attempt to overwrite node id ${id}`);\n\treturn createNode({\n\t\tid: id ?? registerNodeId(meta.alias ?? node.kind),\n\t\tkind: node.kind,\n\t\tinner: node.inner,\n\t\tmeta,\n\t\t$: node.$\n\t});\n};\nconst possiblyCollapse = (json, toKey, allowPrimitive) => {\n\tconst collapsibleKeys = Object.keys(json);\n\tif (collapsibleKeys.length === 1 && collapsibleKeys[0] === toKey) {\n\t\tconst collapsed = json[toKey];\n\t\tif (allowPrimitive) return collapsed;\n\t\tif (hasDomain(collapsed, \"object\") && (Object.keys(collapsed).length === 1 || Array.isArray(collapsed))) return collapsed;\n\t}\n\treturn json;\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/structure/prop.js\nconst intersectProps = (l, r, ctx) => {\n\tif (l.key !== r.key) return null;\n\tconst key = l.key;\n\tlet value = intersectOrPipeNodes(l.value, r.value, ctx);\n\tconst kind = l.required || r.required ? \"required\" : \"optional\";\n\tif (value instanceof Disjoint) if (kind === \"optional\") value = $ark.intrinsic.never.internal;\n\telse return value.withPrefixKey(l.key, l.required && r.required ? \"required\" : \"optional\");\n\tif (kind === \"required\") return ctx.$.node(\"required\", {\n\t\tkey,\n\t\tvalue\n\t});\n\tconst defaultIntersection = l.hasDefault() ? r.hasDefault() ? l.default === r.default ? l.default : throwParseError(writeDefaultIntersectionMessage(l.default, r.default)) : l.default : r.hasDefault() ? r.default : unset;\n\treturn ctx.$.node(\"optional\", {\n\t\tkey,\n\t\tvalue,\n\t\tdefault: defaultIntersection\n\t});\n};\nvar BaseProp = class extends BaseConstraint {\n\trequired = this.kind === \"required\";\n\toptional = this.kind === \"optional\";\n\timpliedBasis = $ark.intrinsic.object.internal;\n\tserializedKey = compileSerializedValue(this.key);\n\tcompiledKey = typeof this.key === \"string\" ? this.key : this.serializedKey;\n\tflatRefs = append(this.value.flatRefs.map((ref) => flatRef([this.key, ...ref.path], ref.node)), flatRef([this.key], this.value));\n\t_transform(mapper, ctx) {\n\t\tctx.path.push(this.key);\n\t\tconst result = super._transform(mapper, ctx);\n\t\tctx.path.pop();\n\t\treturn result;\n\t}\n\thasDefault() {\n\t\treturn \"default\" in this.inner;\n\t}\n\ttraverseAllows = (data, ctx) => {\n\t\tif (this.key in data) return traverseKey(this.key, () => this.value.traverseAllows(data[this.key], ctx), ctx);\n\t\treturn this.optional;\n\t};\n\ttraverseApply = (data, ctx) => {\n\t\tif (this.key in data) traverseKey(this.key, () => this.value.traverseApply(data[this.key], ctx), ctx);\n\t\telse if (this.hasKind(\"required\")) ctx.errorFromNodeContext(this.errorContext);\n\t};\n\tcompile(js) {\n\t\tjs.if(`${this.serializedKey} in data`, () => js.traverseKey(this.serializedKey, `data${js.prop(this.key)}`, this.value));\n\t\tif (this.hasKind(\"required\")) js.else(() => js.traversalKind === \"Apply\" ? js.line(`ctx.errorFromNodeContext(${this.compiledErrorContext})`) : js.return(false));\n\t\tif (js.traversalKind === \"Allows\") js.return(true);\n\t}\n};\nconst writeDefaultIntersectionMessage = (lValue, rValue) => `Invalid intersection of default values ${printable(lValue)} & ${printable(rValue)}`;\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/structure/optional.js\nconst implementation$11 = implementNode({\n\tkind: \"optional\",\n\thasAssociatedError: false,\n\tintersectionIsOpen: true,\n\tkeys: {\n\t\tkey: {},\n\t\tvalue: {\n\t\t\tchild: true,\n\t\t\tparse: (schema, ctx) => ctx.$.parseSchema(schema)\n\t\t},\n\t\tdefault: { preserveUndefined: true }\n\t},\n\tnormalize: (schema) => schema,\n\treduce: (inner, $) => {\n\t\tif ($.resolvedConfig.exactOptionalPropertyTypes === false) {\n\t\t\tif (!inner.value.allows(void 0)) return $.node(\"optional\", {\n\t\t\t\t...inner,\n\t\t\t\tvalue: inner.value.or(intrinsic.undefined)\n\t\t\t}, { prereduced: true });\n\t\t}\n\t},\n\tdefaults: { description: (node) => `${node.compiledKey}?: ${node.value.description}` },\n\tintersections: { optional: intersectProps }\n});\nvar OptionalNode = class extends BaseProp {\n\tconstructor(...args) {\n\t\tsuper(...args);\n\t\tif (\"default\" in this.inner) assertDefaultValueAssignability(this.value, this.inner.default, this.key);\n\t}\n\tget rawIn() {\n\t\tconst baseIn = super.rawIn;\n\t\tif (!this.hasDefault()) return baseIn;\n\t\treturn this.$.node(\"optional\", omit(baseIn.inner, { default: true }), { prereduced: true });\n\t}\n\tget outProp() {\n\t\tif (!this.hasDefault()) return this;\n\t\tconst { default: defaultValue, ...requiredInner } = this.inner;\n\t\treturn this.cacheGetter(\"outProp\", this.$.node(\"required\", requiredInner, { prereduced: true }));\n\t}\n\texpression = this.hasDefault() ? `${this.compiledKey}: ${this.value.expression} = ${printable(this.inner.default)}` : `${this.compiledKey}?: ${this.value.expression}`;\n\tdefaultValueMorph = getDefaultableMorph(this);\n\tdefaultValueMorphRef = this.defaultValueMorph && registeredReference(this.defaultValueMorph);\n};\nconst Optional = {\n\timplementation: implementation$11,\n\tNode: OptionalNode\n};\nconst defaultableMorphCache = {};\nconst getDefaultableMorph = (node) => {\n\tif (!node.hasDefault()) return;\n\tconst cacheKey = `{${node.compiledKey}: ${node.value.id} = ${defaultValueSerializer(node.default)}}`;\n\treturn defaultableMorphCache[cacheKey] ??= computeDefaultValueMorph(node.key, node.value, node.default);\n};\nconst computeDefaultValueMorph = (key, value, defaultInput) => {\n\tif (typeof defaultInput === \"function\") return value.includesTransform ? (data, ctx) => {\n\t\ttraverseKey(key, () => value(data[key] = defaultInput(), ctx), ctx);\n\t\treturn data;\n\t} : (data) => {\n\t\tdata[key] = defaultInput();\n\t\treturn data;\n\t};\n\tconst precomputedMorphedDefault = value.includesTransform ? value.assert(defaultInput) : defaultInput;\n\treturn hasDomain(precomputedMorphedDefault, \"object\") ? (data, ctx) => {\n\t\ttraverseKey(key, () => value(data[key] = defaultInput, ctx), ctx);\n\t\treturn data;\n\t} : (data) => {\n\t\tdata[key] = precomputedMorphedDefault;\n\t\treturn data;\n\t};\n};\nconst assertDefaultValueAssignability = (node, value, key) => {\n\tconst wrapped = isThunk(value);\n\tif (hasDomain(value, \"object\") && !wrapped) throwParseError(writeNonPrimitiveNonFunctionDefaultValueMessage(key));\n\tconst out = node.in(wrapped ? value() : value);\n\tif (out instanceof ArkErrors) {\n\t\tif (key === null) throwParseError(`Default ${out.summary}`);\n\t\tthrowParseError(`Default for ${out.transform((e) => e.transform((input) => ({\n\t\t\t...input,\n\t\t\tprefixPath: [key]\n\t\t}))).summary}`);\n\t}\n\treturn value;\n};\nconst writeNonPrimitiveNonFunctionDefaultValueMessage = (key) => {\n\treturn `Non-primitive default ${key === null ? \"\" : typeof key === \"number\" ? `for value at [${key}] ` : `for ${compileSerializedValue(key)} `}must be specified as a function like () => ({my: 'object'})`;\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/roots/root.js\nvar BaseRoot = class extends BaseNode {\n\tconstructor(attachments, $) {\n\t\tsuper(attachments, $);\n\t\tObject.defineProperty(this, arkKind, {\n\t\t\tvalue: \"root\",\n\t\t\tenumerable: false\n\t\t});\n\t}\n\tget rawIn() {\n\t\treturn super.rawIn;\n\t}\n\tget rawOut() {\n\t\treturn super.rawOut;\n\t}\n\tget internal() {\n\t\treturn this;\n\t}\n\tget \"~standard\"() {\n\t\treturn {\n\t\t\tvendor: \"arktype\",\n\t\t\tversion: 1,\n\t\t\tvalidate: (input) => {\n\t\t\t\tconst out = this(input);\n\t\t\t\tif (out instanceof ArkErrors) return out;\n\t\t\t\treturn { value: out };\n\t\t\t},\n\t\t\tjsonSchema: {\n\t\t\t\tinput: (opts) => this.rawIn.toJsonSchema({\n\t\t\t\t\ttarget: validateStandardJsonSchemaTarget(opts.target),\n\t\t\t\t\t...opts.libraryOptions\n\t\t\t\t}),\n\t\t\t\toutput: (opts) => this.rawOut.toJsonSchema({\n\t\t\t\t\ttarget: validateStandardJsonSchemaTarget(opts.target),\n\t\t\t\t\t...opts.libraryOptions\n\t\t\t\t})\n\t\t\t}\n\t\t};\n\t}\n\tas() {\n\t\treturn this;\n\t}\n\tbrand(name) {\n\t\tif (name === \"\") return throwParseError(emptyBrandNameMessage);\n\t\treturn this;\n\t}\n\treadonly() {\n\t\treturn this;\n\t}\n\tbranches = this.hasKind(\"union\") ? this.inner.branches : [this];\n\tdistribute(mapBranch, reduceMapped) {\n\t\tconst mappedBranches = this.branches.map(mapBranch);\n\t\treturn reduceMapped?.(mappedBranches) ?? mappedBranches;\n\t}\n\tget shortDescription() {\n\t\treturn this.meta.description ?? this.defaultShortDescription;\n\t}\n\ttoJsonSchema(opts = {}) {\n\t\tconst ctx = mergeToJsonSchemaConfigs(this.$.resolvedConfig.toJsonSchema, opts);\n\t\tctx.useRefs ||= this.isCyclic;\n\t\tconst schema = typeof ctx.dialect === \"string\" ? { $schema: ctx.dialect } : {};\n\t\tObject.assign(schema, this.toJsonSchemaRecurse(ctx));\n\t\tif (ctx.useRefs) {\n\t\t\tconst defs = flatMorph(this.references, (i, ref) => ref.isRoot() && !ref.alwaysExpandJsonSchema ? [ref.id, ref.toResolvedJsonSchema(ctx)] : []);\n\t\t\tif (ctx.target === \"draft-07\") Object.assign(schema, { definitions: defs });\n\t\t\telse schema.$defs = defs;\n\t\t}\n\t\treturn schema;\n\t}\n\ttoJsonSchemaRecurse(ctx) {\n\t\tif (ctx.useRefs && !this.alwaysExpandJsonSchema) return { $ref: `#/${ctx.target === \"draft-07\" ? \"definitions\" : \"$defs\"}/${this.id}` };\n\t\treturn this.toResolvedJsonSchema(ctx);\n\t}\n\tget alwaysExpandJsonSchema() {\n\t\treturn this.isBasis() || this.kind === \"alias\" || this.hasKind(\"union\") && this.isBoolean;\n\t}\n\ttoResolvedJsonSchema(ctx) {\n\t\tconst result = this.innerToJsonSchema(ctx);\n\t\treturn Object.assign(result, this.metaJson);\n\t}\n\tintersect(r) {\n\t\tconst rNode = this.$.parseDefinition(r);\n\t\tconst result = this.rawIntersect(rNode);\n\t\tif (result instanceof Disjoint) return result;\n\t\treturn this.$.finalize(result);\n\t}\n\trawIntersect(r) {\n\t\treturn intersectNodesRoot(this, r, this.$);\n\t}\n\ttoNeverIfDisjoint() {\n\t\treturn this;\n\t}\n\tand(r) {\n\t\tconst result = this.intersect(r);\n\t\treturn result instanceof Disjoint ? result.throw() : result;\n\t}\n\trawAnd(r) {\n\t\tconst result = this.rawIntersect(r);\n\t\treturn result instanceof Disjoint ? result.throw() : result;\n\t}\n\tor(r) {\n\t\tconst rNode = this.$.parseDefinition(r);\n\t\treturn this.$.finalize(this.rawOr(rNode));\n\t}\n\trawOr(r) {\n\t\tconst branches = [...this.branches, ...r.branches];\n\t\treturn this.$.node(\"union\", branches);\n\t}\n\tmap(flatMapEntry) {\n\t\treturn this.$.schema(this.applyStructuralOperation(\"map\", [flatMapEntry]));\n\t}\n\tpick(...keys) {\n\t\treturn this.$.schema(this.applyStructuralOperation(\"pick\", keys));\n\t}\n\tomit(...keys) {\n\t\treturn this.$.schema(this.applyStructuralOperation(\"omit\", keys));\n\t}\n\trequired() {\n\t\treturn this.$.schema(this.applyStructuralOperation(\"required\", []));\n\t}\n\tpartial() {\n\t\treturn this.$.schema(this.applyStructuralOperation(\"partial\", []));\n\t}\n\t_keyof;\n\tkeyof() {\n\t\tif (this._keyof) return this._keyof;\n\t\tconst result = this.applyStructuralOperation(\"keyof\", []).reduce((result, branch) => result.intersect(branch).toNeverIfDisjoint(), $ark.intrinsic.unknown.internal);\n\t\tif (result.branches.length === 0) throwParseError(writeUnsatisfiableExpressionError(`keyof ${this.expression}`));\n\t\treturn this._keyof = this.$.finalize(result);\n\t}\n\tget props() {\n\t\tif (this.branches.length !== 1) return throwParseError(writeLiteralUnionEntriesMessage(this.expression));\n\t\treturn [...this.applyStructuralOperation(\"props\", [])[0]];\n\t}\n\tmerge(r) {\n\t\tconst rNode = this.$.parseDefinition(r);\n\t\treturn this.$.schema(rNode.distribute((branch) => this.applyStructuralOperation(\"merge\", [structureOf(branch) ?? throwParseError(writeNonStructuralOperandMessage(\"merge\", branch.expression))])));\n\t}\n\tapplyStructuralOperation(operation, args) {\n\t\treturn this.distribute((branch) => {\n\t\t\tif (branch.equals($ark.intrinsic.object) && operation !== \"merge\") return branch;\n\t\t\tconst structure = structureOf(branch);\n\t\t\tif (!structure) throwParseError(writeNonStructuralOperandMessage(operation, branch.expression));\n\t\t\tif (operation === \"keyof\") return structure.keyof();\n\t\t\tif (operation === \"get\") return structure.get(...args);\n\t\t\tif (operation === \"props\") return structure.props;\n\t\t\tconst structuralMethodName = operation === \"required\" ? \"require\" : operation === \"partial\" ? \"optionalize\" : operation;\n\t\t\treturn this.$.node(\"intersection\", {\n\t\t\t\tdomain: \"object\",\n\t\t\t\tstructure: structure[structuralMethodName](...args)\n\t\t\t});\n\t\t});\n\t}\n\tget(...path) {\n\t\tif (path[0] === void 0) return this;\n\t\treturn this.$.schema(this.applyStructuralOperation(\"get\", path));\n\t}\n\textract(r) {\n\t\tconst rNode = this.$.parseDefinition(r);\n\t\treturn this.$.schema(this.branches.filter((branch) => branch.extends(rNode)));\n\t}\n\texclude(r) {\n\t\tconst rNode = this.$.parseDefinition(r);\n\t\treturn this.$.schema(this.branches.filter((branch) => !branch.extends(rNode)));\n\t}\n\tarray() {\n\t\treturn this.$.schema(this.isUnknown() ? { proto: Array } : {\n\t\t\tproto: Array,\n\t\t\tsequence: this\n\t\t}, { prereduced: true });\n\t}\n\toverlaps(r) {\n\t\treturn !(this.intersect(r) instanceof Disjoint);\n\t}\n\textends(r) {\n\t\tif (this.isNever()) return true;\n\t\tconst intersection = this.intersect(r);\n\t\treturn !(intersection instanceof Disjoint) && this.equals(intersection);\n\t}\n\tifExtends(r) {\n\t\treturn this.extends(r) ? this : void 0;\n\t}\n\tsubsumes(r) {\n\t\treturn this.$.parseDefinition(r).extends(this);\n\t}\n\tconfigure(meta, selector = \"shallow\") {\n\t\treturn this.configureReferences(meta, selector);\n\t}\n\tdescribe(description, selector = \"shallow\") {\n\t\treturn this.configure({ description }, selector);\n\t}\n\toptional() {\n\t\treturn [this, \"?\"];\n\t}\n\tdefault(thunkableValue) {\n\t\tassertDefaultValueAssignability(this, thunkableValue, null);\n\t\treturn [\n\t\t\tthis,\n\t\t\t\"=\",\n\t\t\tthunkableValue\n\t\t];\n\t}\n\tfrom(input) {\n\t\treturn this.assert(input);\n\t}\n\t_pipe(...morphs) {\n\t\tconst result = morphs.reduce((acc, morph) => acc.rawPipeOnce(morph), this);\n\t\treturn this.$.finalize(result);\n\t}\n\ttryPipe(...morphs) {\n\t\tconst result = morphs.reduce((acc, morph) => acc.rawPipeOnce(hasArkKind(morph, \"root\") ? morph : ((In, ctx) => {\n\t\t\ttry {\n\t\t\t\treturn morph(In, ctx);\n\t\t\t} catch (e) {\n\t\t\t\treturn ctx.error({\n\t\t\t\t\tcode: \"predicate\",\n\t\t\t\t\tpredicate: morph,\n\t\t\t\t\tactual: `aborted due to error:\\n ${e}\\n`\n\t\t\t\t});\n\t\t\t}\n\t\t})), this);\n\t\treturn this.$.finalize(result);\n\t}\n\tpipe = Object.assign(this._pipe.bind(this), { try: this.tryPipe.bind(this) });\n\tto(def) {\n\t\treturn this.$.finalize(this.toNode(this.$.parseDefinition(def)));\n\t}\n\ttoNode(root) {\n\t\tconst result = pipeNodesRoot(this, root, this.$);\n\t\tif (result instanceof Disjoint) return result.throw();\n\t\treturn result;\n\t}\n\trawPipeOnce(morph) {\n\t\tif (hasArkKind(morph, \"root\")) return this.toNode(morph);\n\t\treturn this.distribute((branch) => branch.hasKind(\"morph\") ? this.$.node(\"morph\", {\n\t\t\tin: branch.inner.in,\n\t\t\tmorphs: [...branch.morphs, morph]\n\t\t}) : this.$.node(\"morph\", {\n\t\t\tin: branch,\n\t\t\tmorphs: [morph]\n\t\t}), this.$.parseSchema);\n\t}\n\tnarrow(predicate) {\n\t\treturn this.constrainOut(\"predicate\", predicate);\n\t}\n\tconstrain(kind, schema) {\n\t\treturn this._constrain(\"root\", kind, schema);\n\t}\n\tconstrainIn(kind, schema) {\n\t\treturn this._constrain(\"in\", kind, schema);\n\t}\n\tconstrainOut(kind, schema) {\n\t\treturn this._constrain(\"out\", kind, schema);\n\t}\n\t_constrain(io, kind, schema) {\n\t\tconst constraint = this.$.node(kind, schema);\n\t\tif (constraint.isRoot()) return constraint.isUnknown() ? this : throwInternalError(`Unexpected constraint node ${constraint}`);\n\t\tconst operand = io === \"root\" ? this : io === \"in\" ? this.rawIn : this.rawOut;\n\t\tif (operand.hasKind(\"morph\") || constraint.impliedBasis && !operand.extends(constraint.impliedBasis)) return throwInvalidOperandError(kind, constraint.impliedBasis, this);\n\t\tconst partialIntersection = this.$.node(\"intersection\", { [constraint.kind]: constraint });\n\t\tconst result = io === \"out\" ? pipeNodesRoot(this, partialIntersection, this.$) : intersectNodesRoot(this, partialIntersection, this.$);\n\t\tif (result instanceof Disjoint) result.throw();\n\t\treturn this.$.finalize(result);\n\t}\n\tonUndeclaredKey(cfg) {\n\t\tconst rule = typeof cfg === \"string\" ? cfg : cfg.rule;\n\t\tconst deep = typeof cfg === \"string\" ? false : cfg.deep;\n\t\treturn this.$.finalize(this.transform((kind, inner) => kind === \"structure\" ? rule === \"ignore\" ? omit(inner, { undeclared: 1 }) : {\n\t\t\t...inner,\n\t\t\tundeclared: rule\n\t\t} : inner, deep ? void 0 : { shouldTransform: (node) => !includes(structuralKinds, node.kind) }));\n\t}\n\thasEqualMorphs(r) {\n\t\tif (!this.includesTransform && !r.includesTransform) return true;\n\t\tif (!arrayEquals(this.shallowMorphs, r.shallowMorphs)) return false;\n\t\tif (!arrayEquals(this.flatMorphs, r.flatMorphs, { isEqual: (l, r) => l.propString === r.propString && (l.node.hasKind(\"morph\") && r.node.hasKind(\"morph\") ? l.node.hasEqualMorphs(r.node) : l.node.hasKind(\"intersection\") && r.node.hasKind(\"intersection\") ? l.node.structure?.structuralMorphRef === r.node.structure?.structuralMorphRef : false) })) return false;\n\t\treturn true;\n\t}\n\tonDeepUndeclaredKey(behavior) {\n\t\treturn this.onUndeclaredKey({\n\t\t\trule: behavior,\n\t\t\tdeep: true\n\t\t});\n\t}\n\tfilter(predicate) {\n\t\treturn this.constrainIn(\"predicate\", predicate);\n\t}\n\tdivisibleBy(schema) {\n\t\treturn this.constrain(\"divisor\", schema);\n\t}\n\tmatching(schema) {\n\t\treturn this.constrain(\"pattern\", schema);\n\t}\n\tatLeast(schema) {\n\t\treturn this.constrain(\"min\", schema);\n\t}\n\tatMost(schema) {\n\t\treturn this.constrain(\"max\", schema);\n\t}\n\tmoreThan(schema) {\n\t\treturn this.constrain(\"min\", exclusivizeRangeSchema(schema));\n\t}\n\tlessThan(schema) {\n\t\treturn this.constrain(\"max\", exclusivizeRangeSchema(schema));\n\t}\n\tatLeastLength(schema) {\n\t\treturn this.constrain(\"minLength\", schema);\n\t}\n\tatMostLength(schema) {\n\t\treturn this.constrain(\"maxLength\", schema);\n\t}\n\tmoreThanLength(schema) {\n\t\treturn this.constrain(\"minLength\", exclusivizeRangeSchema(schema));\n\t}\n\tlessThanLength(schema) {\n\t\treturn this.constrain(\"maxLength\", exclusivizeRangeSchema(schema));\n\t}\n\texactlyLength(schema) {\n\t\treturn this.constrain(\"exactLength\", schema);\n\t}\n\tatOrAfter(schema) {\n\t\treturn this.constrain(\"after\", schema);\n\t}\n\tatOrBefore(schema) {\n\t\treturn this.constrain(\"before\", schema);\n\t}\n\tlaterThan(schema) {\n\t\treturn this.constrain(\"after\", exclusivizeRangeSchema(schema));\n\t}\n\tearlierThan(schema) {\n\t\treturn this.constrain(\"before\", exclusivizeRangeSchema(schema));\n\t}\n};\nconst emptyBrandNameMessage = `Expected a non-empty brand name after #`;\nconst supportedJsonSchemaTargets = [\"draft-2020-12\", \"draft-07\"];\nconst writeInvalidJsonSchemaTargetMessage = (target) => `JSONSchema target '${target}' is not supported (must be ${supportedJsonSchemaTargets.map((t) => `\"${t}\"`).join(\" or \")})`;\nconst validateStandardJsonSchemaTarget = (target) => {\n\tif (!includes(supportedJsonSchemaTargets, target)) throwParseError(writeInvalidJsonSchemaTargetMessage(target));\n\treturn target;\n};\nconst exclusivizeRangeSchema = (schema) => typeof schema === \"object\" && !(schema instanceof Date) ? {\n\t...schema,\n\texclusive: true\n} : {\n\trule: schema,\n\texclusive: true\n};\nconst typeOrTermExtends = (t, base) => hasArkKind(base, \"root\") ? hasArkKind(t, \"root\") ? t.extends(base) : base.allows(t) : hasArkKind(t, \"root\") ? t.hasUnit(base) : base === t;\nconst structureOf = (branch) => {\n\tif (branch.hasKind(\"morph\")) return null;\n\tif (branch.hasKind(\"intersection\")) return branch.inner.structure ?? (branch.basis?.domain === \"object\" ? branch.$.bindReference($ark.intrinsic.emptyStructure) : null);\n\tif (branch.isBasis() && branch.domain === \"object\") return branch.$.bindReference($ark.intrinsic.emptyStructure);\n\treturn null;\n};\nconst writeLiteralUnionEntriesMessage = (expression) => `Props cannot be extracted from a union. Use .distribute to extract props from each branch instead. Received:\n${expression}`;\nconst writeNonStructuralOperandMessage = (operation, operand) => `${operation} operand must be an object (was ${operand})`;\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/roots/utils.js\nconst defineRightwardIntersections = (kind, implementation) => flatMorph(schemaKindsRightOf(kind), (i, kind) => [kind, implementation]);\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/roots/alias.js\nconst normalizeAliasSchema = (schema) => typeof schema === \"string\" ? { reference: schema } : schema;\nconst neverIfDisjoint = (result) => result instanceof Disjoint ? $ark.intrinsic.never.internal : result;\nconst implementation$10 = implementNode({\n\tkind: \"alias\",\n\thasAssociatedError: false,\n\tcollapsibleKey: \"reference\",\n\tkeys: {\n\t\treference: { serialize: (s) => s.startsWith(\"$\") ? s : `$ark.${s}` },\n\t\tresolve: {}\n\t},\n\tnormalize: normalizeAliasSchema,\n\tdefaults: { description: (node) => node.reference },\n\tintersections: {\n\t\talias: (l, r, ctx) => ctx.$.lazilyResolve(() => neverIfDisjoint(intersectOrPipeNodes(l.resolution, r.resolution, ctx)), `${l.reference}${ctx.pipe ? \"=>\" : \"&\"}${r.reference}`),\n\t\t...defineRightwardIntersections(\"alias\", (l, r, ctx) => {\n\t\t\tif (r.isUnknown()) return l;\n\t\t\tif (r.isNever()) return r;\n\t\t\tif (r.isBasis() && !r.overlaps($ark.intrinsic.object)) return Disjoint.init(\"assignability\", $ark.intrinsic.object, r);\n\t\t\treturn ctx.$.lazilyResolve(() => neverIfDisjoint(intersectOrPipeNodes(l.resolution, r, ctx)), `${l.reference}${ctx.pipe ? \"=>\" : \"&\"}${r.id}`);\n\t\t})\n\t}\n});\nvar AliasNode = class extends BaseRoot {\n\texpression = this.reference;\n\tstructure = void 0;\n\tget resolution() {\n\t\tconst result = this._resolve();\n\t\treturn nodesByRegisteredId[this.id] = result;\n\t}\n\t_resolve() {\n\t\tif (this.resolve) return this.resolve();\n\t\tif (this.reference[0] === \"$\") return this.$.resolveRoot(this.reference.slice(1));\n\t\tlet resolution = nodesByRegisteredId[this.reference];\n\t\tconst seen = [];\n\t\twhile (hasArkKind(resolution, \"context\")) {\n\t\t\tif (seen.includes(resolution.id)) return throwParseError(writeShallowCycleErrorMessage(resolution.id, seen));\n\t\t\tseen.push(resolution.id);\n\t\t\tresolution = nodesByRegisteredId[resolution.id];\n\t\t}\n\t\tif (!hasArkKind(resolution, \"root\")) return throwInternalError(`Unexpected resolution for reference ${this.reference}\nSeen: [${seen.join(\"->\")}] \nResolution: ${printable(resolution)}`);\n\t\treturn resolution;\n\t}\n\tget resolutionId() {\n\t\tif (this.reference.includes(\"&\") || this.reference.includes(\"=>\")) return this.resolution.id;\n\t\tif (this.reference[0] !== \"$\") return this.reference;\n\t\tconst alias = this.reference.slice(1);\n\t\tconst resolution = this.$.resolutions[alias];\n\t\tif (typeof resolution === \"string\") return resolution;\n\t\tif (hasArkKind(resolution, \"root\")) return resolution.id;\n\t\treturn throwInternalError(`Unexpected resolution for reference ${this.reference}: ${printable(resolution)}`);\n\t}\n\tget defaultShortDescription() {\n\t\treturn domainDescriptions.object;\n\t}\n\tinnerToJsonSchema(ctx) {\n\t\treturn this.resolution.toJsonSchemaRecurse(ctx);\n\t}\n\ttraverseAllows = (data, ctx) => {\n\t\tconst seen = ctx.seen[this.reference];\n\t\tif (seen?.includes(data)) return true;\n\t\tctx.seen[this.reference] = append(seen, data);\n\t\treturn this.resolution.traverseAllows(data, ctx);\n\t};\n\ttraverseApply = (data, ctx) => {\n\t\tconst seen = ctx.seen[this.reference];\n\t\tif (seen?.includes(data)) return;\n\t\tctx.seen[this.reference] = append(seen, data);\n\t\tthis.resolution.traverseApply(data, ctx);\n\t};\n\tcompile(js) {\n\t\tconst id = this.resolutionId;\n\t\tjs.if(`ctx.seen.${id} && ctx.seen.${id}.includes(data)`, () => js.return(true));\n\t\tjs.if(`!ctx.seen.${id}`, () => js.line(`ctx.seen.${id} = []`));\n\t\tjs.line(`ctx.seen.${id}.push(data)`);\n\t\tjs.return(js.invoke(id));\n\t}\n};\nconst writeShallowCycleErrorMessage = (name, seen) => `Alias '${name}' has a shallow resolution cycle: ${[...seen, name].join(\"->\")}`;\nconst Alias = {\n\timplementation: implementation$10,\n\tNode: AliasNode\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/roots/basis.js\nvar InternalBasis = class extends BaseRoot {\n\ttraverseApply = (data, ctx) => {\n\t\tif (!this.traverseAllows(data, ctx)) ctx.errorFromNodeContext(this.errorContext);\n\t};\n\tget errorContext() {\n\t\treturn {\n\t\t\tcode: this.kind,\n\t\t\tdescription: this.description,\n\t\t\tmeta: this.meta,\n\t\t\t...this.inner\n\t\t};\n\t}\n\tget compiledErrorContext() {\n\t\treturn compileObjectLiteral(this.errorContext);\n\t}\n\tcompile(js) {\n\t\tif (js.traversalKind === \"Allows\") js.return(this.compiledCondition);\n\t\telse js.if(this.compiledNegation, () => js.line(`ctx.errorFromNodeContext(${this.compiledErrorContext})`));\n\t}\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/roots/domain.js\nconst implementation$9 = implementNode({\n\tkind: \"domain\",\n\thasAssociatedError: true,\n\tcollapsibleKey: \"domain\",\n\tkeys: {\n\t\tdomain: {},\n\t\tnumberAllowsNaN: {}\n\t},\n\tnormalize: (schema) => typeof schema === \"string\" ? { domain: schema } : hasKey(schema, \"numberAllowsNaN\") && schema.domain !== \"number\" ? throwParseError(Domain.writeBadAllowNanMessage(schema.domain)) : schema,\n\tapplyConfig: (schema, config) => schema.numberAllowsNaN === void 0 && schema.domain === \"number\" && config.numberAllowsNaN ? {\n\t\t...schema,\n\t\tnumberAllowsNaN: true\n\t} : schema,\n\tdefaults: {\n\t\tdescription: (node) => domainDescriptions[node.domain],\n\t\tactual: (data) => Number.isNaN(data) ? \"NaN\" : domainDescriptions[domainOf(data)]\n\t},\n\tintersections: { domain: (l, r) => l.domain === \"number\" && r.domain === \"number\" ? l.numberAllowsNaN ? r : l : Disjoint.init(\"domain\", l, r) }\n});\nvar DomainNode = class extends InternalBasis {\n\trequiresNaNCheck = this.domain === \"number\" && !this.numberAllowsNaN;\n\ttraverseAllows = this.requiresNaNCheck ? (data) => typeof data === \"number\" && !Number.isNaN(data) : (data) => domainOf(data) === this.domain;\n\tcompiledCondition = this.domain === \"object\" ? `((typeof data === \"object\" && data !== null) || typeof data === \"function\")` : `typeof data === \"${this.domain}\"${this.requiresNaNCheck ? \" && !Number.isNaN(data)\" : \"\"}`;\n\tcompiledNegation = this.domain === \"object\" ? `((typeof data !== \"object\" || data === null) && typeof data !== \"function\")` : `typeof data !== \"${this.domain}\"${this.requiresNaNCheck ? \" || Number.isNaN(data)\" : \"\"}`;\n\texpression = this.numberAllowsNaN ? \"number | NaN\" : this.domain;\n\tget nestableExpression() {\n\t\treturn this.numberAllowsNaN ? `(${this.expression})` : this.expression;\n\t}\n\tget defaultShortDescription() {\n\t\treturn domainDescriptions[this.domain];\n\t}\n\tinnerToJsonSchema(ctx) {\n\t\tif (this.domain === \"bigint\" || this.domain === \"symbol\") return ctx.fallback.domain({\n\t\t\tcode: \"domain\",\n\t\t\tbase: {},\n\t\t\tdomain: this.domain\n\t\t});\n\t\treturn { type: this.domain };\n\t}\n};\nconst Domain = {\n\timplementation: implementation$9,\n\tNode: DomainNode,\n\twriteBadAllowNanMessage: (actual) => `numberAllowsNaN may only be specified with domain \"number\" (was ${actual})`\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/roots/intersection.js\nconst implementation$8 = implementNode({\n\tkind: \"intersection\",\n\thasAssociatedError: true,\n\tnormalize: (rawSchema) => {\n\t\tif (isNode(rawSchema)) return rawSchema;\n\t\tconst { structure, ...schema } = rawSchema;\n\t\tconst hasRootStructureKey = !!structure;\n\t\tconst normalizedStructure = structure ?? {};\n\t\tconst normalized = flatMorph(schema, (k, v) => {\n\t\t\tif (isKeyOf(k, structureKeys)) {\n\t\t\t\tif (hasRootStructureKey) throwParseError(`Flattened structure key ${k} cannot be specified alongside a root 'structure' key.`);\n\t\t\t\tnormalizedStructure[k] = v;\n\t\t\t\treturn [];\n\t\t\t}\n\t\t\treturn [k, v];\n\t\t});\n\t\tif (hasArkKind(normalizedStructure, \"constraint\") || !isEmptyObject(normalizedStructure)) normalized.structure = normalizedStructure;\n\t\treturn normalized;\n\t},\n\tfinalizeInnerJson: ({ structure, ...rest }) => hasDomain(structure, \"object\") ? {\n\t\t...structure,\n\t\t...rest\n\t} : rest,\n\tkeys: {\n\t\tdomain: {\n\t\t\tchild: true,\n\t\t\tparse: (schema, ctx) => ctx.$.node(\"domain\", schema)\n\t\t},\n\t\tproto: {\n\t\t\tchild: true,\n\t\t\tparse: (schema, ctx) => ctx.$.node(\"proto\", schema)\n\t\t},\n\t\tstructure: {\n\t\t\tchild: true,\n\t\t\tparse: (schema, ctx) => ctx.$.node(\"structure\", schema),\n\t\t\tserialize: (node) => {\n\t\t\t\tif (!node.sequence?.minLength) return node.collapsibleJson;\n\t\t\t\tconst { sequence, ...structureJson } = node.collapsibleJson;\n\t\t\t\tconst { minVariadicLength, ...sequenceJson } = sequence;\n\t\t\t\tconst collapsibleSequenceJson = sequenceJson.variadic && Object.keys(sequenceJson).length === 1 ? sequenceJson.variadic : sequenceJson;\n\t\t\t\treturn {\n\t\t\t\t\t...structureJson,\n\t\t\t\t\tsequence: collapsibleSequenceJson\n\t\t\t\t};\n\t\t\t}\n\t\t},\n\t\tdivisor: {\n\t\t\tchild: true,\n\t\t\tparse: constraintKeyParser(\"divisor\")\n\t\t},\n\t\tmax: {\n\t\t\tchild: true,\n\t\t\tparse: constraintKeyParser(\"max\")\n\t\t},\n\t\tmin: {\n\t\t\tchild: true,\n\t\t\tparse: constraintKeyParser(\"min\")\n\t\t},\n\t\tmaxLength: {\n\t\t\tchild: true,\n\t\t\tparse: constraintKeyParser(\"maxLength\")\n\t\t},\n\t\tminLength: {\n\t\t\tchild: true,\n\t\t\tparse: constraintKeyParser(\"minLength\")\n\t\t},\n\t\texactLength: {\n\t\t\tchild: true,\n\t\t\tparse: constraintKeyParser(\"exactLength\")\n\t\t},\n\t\tbefore: {\n\t\t\tchild: true,\n\t\t\tparse: constraintKeyParser(\"before\")\n\t\t},\n\t\tafter: {\n\t\t\tchild: true,\n\t\t\tparse: constraintKeyParser(\"after\")\n\t\t},\n\t\tpattern: {\n\t\t\tchild: true,\n\t\t\tparse: constraintKeyParser(\"pattern\")\n\t\t},\n\t\tpredicate: {\n\t\t\tchild: true,\n\t\t\tparse: constraintKeyParser(\"predicate\")\n\t\t}\n\t},\n\treduce: (inner, $) => intersectIntersections({}, inner, {\n\t\t$,\n\t\tinvert: false,\n\t\tpipe: false\n\t}),\n\tdefaults: {\n\t\tdescription: (node) => {\n\t\t\tif (node.children.length === 0) return \"unknown\";\n\t\t\tif (node.structure) return node.structure.description;\n\t\t\tconst childDescriptions = [];\n\t\t\tif (node.basis && !node.prestructurals.some((r) => r.impl.obviatesBasisDescription)) childDescriptions.push(node.basis.description);\n\t\t\tif (node.prestructurals.length) {\n\t\t\t\tconst sortedRefinementDescriptions = node.prestructurals.slice().sort((l, r) => l.kind === \"min\" && r.kind === \"max\" ? -1 : 0).map((r) => r.description);\n\t\t\t\tchildDescriptions.push(...sortedRefinementDescriptions);\n\t\t\t}\n\t\t\tif (node.inner.predicate) childDescriptions.push(...node.inner.predicate.map((p) => p.description));\n\t\t\treturn childDescriptions.join(\" and \");\n\t\t},\n\t\texpected: (source) => ` ◦ ${source.errors.map((e) => e.expected).join(\"\\n ◦ \")}`,\n\t\tproblem: (ctx) => `(${ctx.actual}) must be...\\n${ctx.expected}`\n\t},\n\tintersections: {\n\t\tintersection: (l, r, ctx) => intersectIntersections(l.inner, r.inner, ctx),\n\t\t...defineRightwardIntersections(\"intersection\", (l, r, ctx) => {\n\t\t\tif (l.children.length === 0) return r;\n\t\t\tconst { domain, proto, ...lInnerConstraints } = l.inner;\n\t\t\tconst lBasis = proto ?? domain;\n\t\t\tconst basis = lBasis ? intersectOrPipeNodes(lBasis, r, ctx) : r;\n\t\t\treturn basis instanceof Disjoint ? basis : l?.basis?.equals(basis) ? l : l.$.node(\"intersection\", {\n\t\t\t\t...lInnerConstraints,\n\t\t\t\t[basis.kind]: basis\n\t\t\t}, { prereduced: true });\n\t\t})\n\t}\n});\nvar IntersectionNode = class extends BaseRoot {\n\tbasis = this.inner.domain ?? this.inner.proto ?? null;\n\tprestructurals = [];\n\trefinements = this.children.filter((node) => {\n\t\tif (!node.isRefinement()) return false;\n\t\tif (includes(prestructuralKinds, node.kind)) this.prestructurals.push(node);\n\t\treturn true;\n\t});\n\tstructure = this.inner.structure;\n\texpression = writeIntersectionExpression(this);\n\tget shallowMorphs() {\n\t\treturn this.inner.structure?.structuralMorph ? [this.inner.structure.structuralMorph] : [];\n\t}\n\tget defaultShortDescription() {\n\t\treturn this.basis?.defaultShortDescription ?? \"present\";\n\t}\n\tinnerToJsonSchema(ctx) {\n\t\treturn this.children.reduce((schema, child) => child.isBasis() ? child.toJsonSchemaRecurse(ctx) : child.reduceJsonSchema(schema, ctx), {});\n\t}\n\ttraverseAllows = (data, ctx) => this.children.every((child) => child.traverseAllows(data, ctx));\n\ttraverseApply = (data, ctx) => {\n\t\tconst errorCount = ctx.currentErrorCount;\n\t\tif (this.basis) {\n\t\t\tthis.basis.traverseApply(data, ctx);\n\t\t\tif (ctx.currentErrorCount > errorCount) return;\n\t\t}\n\t\tif (this.prestructurals.length) {\n\t\t\tfor (let i = 0; i < this.prestructurals.length - 1; i++) {\n\t\t\t\tthis.prestructurals[i].traverseApply(data, ctx);\n\t\t\t\tif (ctx.failFast && ctx.currentErrorCount > errorCount) return;\n\t\t\t}\n\t\t\tthis.prestructurals[this.prestructurals.length - 1].traverseApply(data, ctx);\n\t\t\tif (ctx.currentErrorCount > errorCount) return;\n\t\t}\n\t\tif (this.structure) {\n\t\t\tthis.structure.traverseApply(data, ctx);\n\t\t\tif (ctx.currentErrorCount > errorCount) return;\n\t\t}\n\t\tif (this.inner.predicate) {\n\t\t\tfor (let i = 0; i < this.inner.predicate.length - 1; i++) {\n\t\t\t\tthis.inner.predicate[i].traverseApply(data, ctx);\n\t\t\t\tif (ctx.failFast && ctx.currentErrorCount > errorCount) return;\n\t\t\t}\n\t\t\tthis.inner.predicate[this.inner.predicate.length - 1].traverseApply(data, ctx);\n\t\t}\n\t};\n\tcompile(js) {\n\t\tif (js.traversalKind === \"Allows\") {\n\t\t\tfor (const child of this.children) js.check(child);\n\t\t\tjs.return(true);\n\t\t\treturn;\n\t\t}\n\t\tjs.initializeErrorCount();\n\t\tif (this.basis) {\n\t\t\tjs.check(this.basis);\n\t\t\tif (this.children.length > 1) js.returnIfFail();\n\t\t}\n\t\tif (this.prestructurals.length) {\n\t\t\tfor (let i = 0; i < this.prestructurals.length - 1; i++) {\n\t\t\t\tjs.check(this.prestructurals[i]);\n\t\t\t\tjs.returnIfFailFast();\n\t\t\t}\n\t\t\tjs.check(this.prestructurals[this.prestructurals.length - 1]);\n\t\t\tif (this.structure || this.inner.predicate) js.returnIfFail();\n\t\t}\n\t\tif (this.structure) {\n\t\t\tjs.check(this.structure);\n\t\t\tif (this.inner.predicate) js.returnIfFail();\n\t\t}\n\t\tif (this.inner.predicate) {\n\t\t\tfor (let i = 0; i < this.inner.predicate.length - 1; i++) {\n\t\t\t\tjs.check(this.inner.predicate[i]);\n\t\t\t\tjs.returnIfFail();\n\t\t\t}\n\t\t\tjs.check(this.inner.predicate[this.inner.predicate.length - 1]);\n\t\t}\n\t}\n};\nconst Intersection = {\n\timplementation: implementation$8,\n\tNode: IntersectionNode\n};\nconst writeIntersectionExpression = (node) => {\n\tif (node.structure?.expression) return node.structure.expression;\n\tconst basisExpression = node.basis && !node.prestructurals.some((n) => n.impl.obviatesBasisExpression) ? node.basis.nestableExpression : \"\";\n\tconst refinementsExpression = node.prestructurals.map((n) => n.expression).join(\" & \");\n\tconst fullExpression = `${basisExpression}${basisExpression && refinementsExpression ? \" \" : \"\"}${refinementsExpression}`;\n\tif (fullExpression === \"Array == 0\") return \"[]\";\n\treturn fullExpression || \"unknown\";\n};\nconst intersectIntersections = (l, r, ctx) => {\n\tconst baseInner = {};\n\tconst lBasis = l.proto ?? l.domain;\n\tconst rBasis = r.proto ?? r.domain;\n\tconst basisResult = lBasis ? rBasis ? intersectOrPipeNodes(lBasis, rBasis, ctx) : lBasis : rBasis;\n\tif (basisResult instanceof Disjoint) return basisResult;\n\tif (basisResult) baseInner[basisResult.kind] = basisResult;\n\treturn intersectConstraints({\n\t\tkind: \"intersection\",\n\t\tbaseInner,\n\t\tl: flattenConstraints(l),\n\t\tr: flattenConstraints(r),\n\t\troots: [],\n\t\tctx\n\t});\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/roots/morph.js\nconst implementation$7 = implementNode({\n\tkind: \"morph\",\n\thasAssociatedError: false,\n\tkeys: {\n\t\tin: {\n\t\t\tchild: true,\n\t\t\tparse: (schema, ctx) => ctx.$.parseSchema(schema)\n\t\t},\n\t\tmorphs: {\n\t\t\tparse: liftArray,\n\t\t\tserialize: (morphs) => morphs.map((m) => hasArkKind(m, \"root\") ? m.json : registeredReference(m))\n\t\t},\n\t\tdeclaredIn: {\n\t\t\tchild: false,\n\t\t\tserialize: (node) => node.json\n\t\t},\n\t\tdeclaredOut: {\n\t\t\tchild: false,\n\t\t\tserialize: (node) => node.json\n\t\t}\n\t},\n\tnormalize: (schema) => schema,\n\tdefaults: { description: (node) => `a morph from ${node.rawIn.description} to ${node.rawOut?.description ?? \"unknown\"}` },\n\tintersections: {\n\t\tmorph: (l, r, ctx) => {\n\t\t\tif (!l.hasEqualMorphs(r)) return throwParseError(writeMorphIntersectionMessage(l.expression, r.expression));\n\t\t\tconst inTersection = intersectOrPipeNodes(l.rawIn, r.rawIn, ctx);\n\t\t\tif (inTersection instanceof Disjoint) return inTersection;\n\t\t\tconst baseInner = { morphs: l.morphs };\n\t\t\tif (l.declaredIn || r.declaredIn) {\n\t\t\t\tconst declaredIn = intersectOrPipeNodes(l.rawIn, r.rawIn, ctx);\n\t\t\t\tif (declaredIn instanceof Disjoint) return declaredIn.throw();\n\t\t\t\telse baseInner.declaredIn = declaredIn;\n\t\t\t}\n\t\t\tif (l.declaredOut || r.declaredOut) {\n\t\t\t\tconst declaredOut = intersectOrPipeNodes(l.rawOut, r.rawOut, ctx);\n\t\t\t\tif (declaredOut instanceof Disjoint) return declaredOut.throw();\n\t\t\t\telse baseInner.declaredOut = declaredOut;\n\t\t\t}\n\t\t\treturn inTersection.distribute((inBranch) => ctx.$.node(\"morph\", {\n\t\t\t\t...baseInner,\n\t\t\t\tin: inBranch\n\t\t\t}), ctx.$.parseSchema);\n\t\t},\n\t\t...defineRightwardIntersections(\"morph\", (l, r, ctx) => {\n\t\t\tconst inTersection = l.inner.in ? intersectOrPipeNodes(l.inner.in, r, ctx) : r;\n\t\t\treturn inTersection instanceof Disjoint ? inTersection : inTersection.equals(l.inner.in) ? l : ctx.$.node(\"morph\", {\n\t\t\t\t...l.inner,\n\t\t\t\tin: inTersection\n\t\t\t});\n\t\t})\n\t}\n});\nvar MorphNode = class extends BaseRoot {\n\tserializedMorphs = this.morphs.map(registeredReference);\n\tcompiledMorphs = `[${this.serializedMorphs}]`;\n\tlastMorph = this.inner.morphs[this.inner.morphs.length - 1];\n\tlastMorphIfNode = hasArkKind(this.lastMorph, \"root\") ? this.lastMorph : void 0;\n\tintrospectableIn = this.inner.in;\n\tintrospectableOut = this.lastMorphIfNode ? Object.assign(this.referencesById, this.lastMorphIfNode.referencesById) && this.lastMorphIfNode.rawOut : void 0;\n\tget shallowMorphs() {\n\t\treturn Array.isArray(this.inner.in?.shallowMorphs) ? [...this.inner.in.shallowMorphs, ...this.morphs] : this.morphs;\n\t}\n\tget rawIn() {\n\t\treturn this.declaredIn ?? this.inner.in?.rawIn ?? $ark.intrinsic.unknown.internal;\n\t}\n\tget rawOut() {\n\t\treturn this.declaredOut ?? this.introspectableOut ?? $ark.intrinsic.unknown.internal;\n\t}\n\tdeclareIn(declaredIn) {\n\t\treturn this.$.node(\"morph\", {\n\t\t\t...this.inner,\n\t\t\tdeclaredIn\n\t\t});\n\t}\n\tdeclareOut(declaredOut) {\n\t\treturn this.$.node(\"morph\", {\n\t\t\t...this.inner,\n\t\t\tdeclaredOut\n\t\t});\n\t}\n\texpression = `(In: ${this.rawIn.expression}) => ${this.lastMorphIfNode ? \"To\" : \"Out\"}<${this.rawOut.expression}>`;\n\tget defaultShortDescription() {\n\t\treturn this.rawIn.meta.description ?? this.rawIn.defaultShortDescription;\n\t}\n\tinnerToJsonSchema(ctx) {\n\t\treturn ctx.fallback.morph({\n\t\t\tcode: \"morph\",\n\t\t\tbase: this.rawIn.toJsonSchemaRecurse(ctx),\n\t\t\tout: this.introspectableOut?.toJsonSchemaRecurse(ctx) ?? null\n\t\t});\n\t}\n\tcompile(js) {\n\t\tif (js.traversalKind === \"Allows\") {\n\t\t\tif (!this.introspectableIn) return;\n\t\t\tjs.return(js.invoke(this.introspectableIn));\n\t\t\treturn;\n\t\t}\n\t\tif (this.introspectableIn) js.line(js.invoke(this.introspectableIn));\n\t\tjs.line(`ctx.queueMorphs(${this.compiledMorphs})`);\n\t}\n\ttraverseAllows = (data, ctx) => !this.introspectableIn || this.introspectableIn.traverseAllows(data, ctx);\n\ttraverseApply = (data, ctx) => {\n\t\tif (this.introspectableIn) this.introspectableIn.traverseApply(data, ctx);\n\t\tctx.queueMorphs(this.morphs);\n\t};\n\t/** Check if the morphs of r are equal to those of this node */\n\thasEqualMorphs(r) {\n\t\treturn arrayEquals(this.morphs, r.morphs, { isEqual: (lMorph, rMorph) => lMorph === rMorph || hasArkKind(lMorph, \"root\") && hasArkKind(rMorph, \"root\") && lMorph.equals(rMorph) });\n\t}\n};\nconst Morph = {\n\timplementation: implementation$7,\n\tNode: MorphNode\n};\nconst writeMorphIntersectionMessage = (lDescription, rDescription) => `The intersection of distinct morphs at a single path is indeterminate:\nLeft: ${lDescription}\nRight: ${rDescription}`;\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/roots/proto.js\nconst implementation$6 = implementNode({\n\tkind: \"proto\",\n\thasAssociatedError: true,\n\tcollapsibleKey: \"proto\",\n\tkeys: {\n\t\tproto: { serialize: (ctor) => getBuiltinNameOfConstructor(ctor) ?? defaultValueSerializer(ctor) },\n\t\tdateAllowsInvalid: {}\n\t},\n\tnormalize: (schema) => {\n\t\tconst normalized = typeof schema === \"string\" ? { proto: builtinConstructors[schema] } : typeof schema === \"function\" ? isNode(schema) ? schema : { proto: schema } : typeof schema.proto === \"string\" ? {\n\t\t\t...schema,\n\t\t\tproto: builtinConstructors[schema.proto]\n\t\t} : schema;\n\t\tif (typeof normalized.proto !== \"function\") throwParseError(Proto.writeInvalidSchemaMessage(normalized.proto));\n\t\tif (hasKey(normalized, \"dateAllowsInvalid\") && normalized.proto !== Date) throwParseError(Proto.writeBadInvalidDateMessage(normalized.proto));\n\t\treturn normalized;\n\t},\n\tapplyConfig: (schema, config) => {\n\t\tif (schema.dateAllowsInvalid === void 0 && schema.proto === Date && config.dateAllowsInvalid) return {\n\t\t\t...schema,\n\t\t\tdateAllowsInvalid: true\n\t\t};\n\t\treturn schema;\n\t},\n\tdefaults: {\n\t\tdescription: (node) => node.builtinName ? objectKindDescriptions[node.builtinName] : `an instance of ${node.proto.name}`,\n\t\tactual: (data) => data instanceof Date && data.toString() === \"Invalid Date\" ? \"an invalid Date\" : objectKindOrDomainOf(data)\n\t},\n\tintersections: {\n\t\tproto: (l, r) => l.proto === Date && r.proto === Date ? l.dateAllowsInvalid ? r : l : constructorExtends(l.proto, r.proto) ? l : constructorExtends(r.proto, l.proto) ? r : Disjoint.init(\"proto\", l, r),\n\t\tdomain: (proto, domain) => domain.domain === \"object\" ? proto : Disjoint.init(\"domain\", $ark.intrinsic.object.internal, domain)\n\t}\n});\nvar ProtoNode = class extends InternalBasis {\n\tbuiltinName = getBuiltinNameOfConstructor(this.proto);\n\tserializedConstructor = this.json.proto;\n\trequiresInvalidDateCheck = this.proto === Date && !this.dateAllowsInvalid;\n\ttraverseAllows = this.requiresInvalidDateCheck ? (data) => data instanceof Date && data.toString() !== \"Invalid Date\" : (data) => data instanceof this.proto;\n\tcompiledCondition = `data instanceof ${this.serializedConstructor}${this.requiresInvalidDateCheck ? ` && data.toString() !== \"Invalid Date\"` : \"\"}`;\n\tcompiledNegation = `!(${this.compiledCondition})`;\n\tinnerToJsonSchema(ctx) {\n\t\tswitch (this.builtinName) {\n\t\t\tcase \"Array\": return { type: \"array\" };\n\t\t\tcase \"Date\": return ctx.fallback.date?.({\n\t\t\t\tcode: \"date\",\n\t\t\t\tbase: {}\n\t\t\t}) ?? ctx.fallback.proto({\n\t\t\t\tcode: \"proto\",\n\t\t\t\tbase: {},\n\t\t\t\tproto: this.proto\n\t\t\t});\n\t\t\tdefault: return ctx.fallback.proto({\n\t\t\t\tcode: \"proto\",\n\t\t\t\tbase: {},\n\t\t\t\tproto: this.proto\n\t\t\t});\n\t\t}\n\t}\n\texpression = this.dateAllowsInvalid ? \"Date | InvalidDate\" : this.proto.name;\n\tget nestableExpression() {\n\t\treturn this.dateAllowsInvalid ? `(${this.expression})` : this.expression;\n\t}\n\tdomain = \"object\";\n\tget defaultShortDescription() {\n\t\treturn this.description;\n\t}\n};\nconst Proto = {\n\timplementation: implementation$6,\n\tNode: ProtoNode,\n\twriteBadInvalidDateMessage: (actual) => `dateAllowsInvalid may only be specified with constructor Date (was ${actual.name})`,\n\twriteInvalidSchemaMessage: (actual) => `instanceOf operand must be a function (was ${domainOf(actual)})`\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/roots/union.js\nconst implementation$5 = implementNode({\n\tkind: \"union\",\n\thasAssociatedError: true,\n\tcollapsibleKey: \"branches\",\n\tkeys: {\n\t\tordered: {},\n\t\tbranches: {\n\t\t\tchild: true,\n\t\t\tparse: (schema, ctx) => {\n\t\t\t\tconst branches = [];\n\t\t\t\tfor (const branchSchema of schema) {\n\t\t\t\t\tconst branchNodes = hasArkKind(branchSchema, \"root\") ? branchSchema.branches : ctx.$.parseSchema(branchSchema).branches;\n\t\t\t\t\tfor (const node of branchNodes) if (node.hasKind(\"morph\")) {\n\t\t\t\t\t\tconst matchingMorphIndex = branches.findIndex((matching) => matching.hasKind(\"morph\") && matching.hasEqualMorphs(node));\n\t\t\t\t\t\tif (matchingMorphIndex === -1) branches.push(node);\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tconst matchingMorph = branches[matchingMorphIndex];\n\t\t\t\t\t\t\tbranches[matchingMorphIndex] = ctx.$.node(\"morph\", {\n\t\t\t\t\t\t\t\t...matchingMorph.inner,\n\t\t\t\t\t\t\t\tin: matchingMorph.rawIn.rawOr(node.rawIn)\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t} else branches.push(node);\n\t\t\t\t}\n\t\t\t\tif (!ctx.def.ordered) branches.sort((l, r) => l.hash < r.hash ? -1 : 1);\n\t\t\t\treturn branches;\n\t\t\t}\n\t\t}\n\t},\n\tnormalize: (schema) => isArray(schema) ? { branches: schema } : schema,\n\treduce: (inner, $) => {\n\t\tconst reducedBranches = reduceBranches(inner);\n\t\tif (reducedBranches.length === 1) return reducedBranches[0];\n\t\tif (reducedBranches.length === inner.branches.length) return;\n\t\treturn $.node(\"union\", {\n\t\t\t...inner,\n\t\t\tbranches: reducedBranches\n\t\t}, { prereduced: true });\n\t},\n\tdefaults: {\n\t\tdescription: (node) => node.distribute((branch) => branch.description, describeBranches),\n\t\texpected: (ctx) => {\n\t\t\tconst byPath = groupBy(ctx.errors, \"propString\");\n\t\t\tconst pathDescriptions = Object.entries(byPath).map(([path, errors]) => {\n\t\t\t\tconst branchesAtPath = [];\n\t\t\t\tfor (const errorAtPath of errors) appendUnique(branchesAtPath, errorAtPath.expected);\n\t\t\t\tconst expected = describeBranches(branchesAtPath);\n\t\t\t\tconst actual = errors.every((e) => e.actual === errors[0].actual) ? errors[0].actual : printable(errors[0].data);\n\t\t\t\treturn `${path && `${path} `}must be ${expected}${actual && ` (was ${actual})`}`;\n\t\t\t});\n\t\t\treturn describeBranches(pathDescriptions);\n\t\t},\n\t\tproblem: (ctx) => ctx.expected,\n\t\tmessage: (ctx) => {\n\t\t\tif (ctx.problem[0] === \"[\") return `value at ${ctx.problem}`;\n\t\t\treturn ctx.problem;\n\t\t}\n\t},\n\tintersections: {\n\t\tunion: (l, r, ctx) => {\n\t\t\tif (l.isNever !== r.isNever) return Disjoint.init(\"presence\", l, r);\n\t\t\tlet resultBranches;\n\t\t\tif (l.ordered) {\n\t\t\t\tif (r.ordered) throwParseError(writeOrderedIntersectionMessage(l.expression, r.expression));\n\t\t\t\tresultBranches = intersectBranches(r.branches, l.branches, ctx);\n\t\t\t\tif (resultBranches instanceof Disjoint) resultBranches.invert();\n\t\t\t} else resultBranches = intersectBranches(l.branches, r.branches, ctx);\n\t\t\tif (resultBranches instanceof Disjoint) return resultBranches;\n\t\t\treturn ctx.$.parseSchema(l.ordered || r.ordered ? {\n\t\t\t\tbranches: resultBranches,\n\t\t\t\tordered: true\n\t\t\t} : { branches: resultBranches });\n\t\t},\n\t\t...defineRightwardIntersections(\"union\", (l, r, ctx) => {\n\t\t\tconst branches = intersectBranches(l.branches, [r], ctx);\n\t\t\tif (branches instanceof Disjoint) return branches;\n\t\t\tif (branches.length === 1) return branches[0];\n\t\t\treturn ctx.$.parseSchema(l.ordered ? {\n\t\t\t\tbranches,\n\t\t\t\tordered: true\n\t\t\t} : { branches });\n\t\t})\n\t}\n});\nvar UnionNode = class extends BaseRoot {\n\tisBoolean = this.branches.length === 2 && this.branches[0].hasUnit(false) && this.branches[1].hasUnit(true);\n\tget branchGroups() {\n\t\tconst branchGroups = [];\n\t\tlet firstBooleanIndex = -1;\n\t\tfor (const branch of this.branches) {\n\t\t\tif (branch.hasKind(\"unit\") && branch.domain === \"boolean\") {\n\t\t\t\tif (firstBooleanIndex === -1) {\n\t\t\t\t\tfirstBooleanIndex = branchGroups.length;\n\t\t\t\t\tbranchGroups.push(branch);\n\t\t\t\t} else branchGroups[firstBooleanIndex] = $ark.intrinsic.boolean;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tbranchGroups.push(branch);\n\t\t}\n\t\treturn branchGroups;\n\t}\n\tunitBranches = this.branches.filter((n) => n.rawIn.hasKind(\"unit\"));\n\tdiscriminant = this.discriminate();\n\tdiscriminantJson = this.discriminant ? discriminantToJson(this.discriminant) : null;\n\texpression = this.distribute((n) => n.nestableExpression, expressBranches);\n\tcreateBranchedOptimisticRootApply() {\n\t\treturn (data, onFail) => {\n\t\t\tconst optimisticResult = this.traverseOptimistic(data);\n\t\t\tif (optimisticResult !== unset) return optimisticResult;\n\t\t\tconst ctx = new Traversal(data, this.$.resolvedConfig);\n\t\t\tthis.traverseApply(data, ctx);\n\t\t\treturn ctx.finalize(onFail);\n\t\t};\n\t}\n\tget shallowMorphs() {\n\t\treturn this.branches.reduce((morphs, branch) => appendUnique(morphs, branch.shallowMorphs), []);\n\t}\n\tget defaultShortDescription() {\n\t\treturn this.distribute((branch) => branch.defaultShortDescription, describeBranches);\n\t}\n\tinnerToJsonSchema(ctx) {\n\t\tif (this.branchGroups.length === 1 && this.branchGroups[0].equals($ark.intrinsic.boolean)) return { type: \"boolean\" };\n\t\tconst jsonSchemaBranches = this.branchGroups.map((group) => group.toJsonSchemaRecurse(ctx));\n\t\tif (jsonSchemaBranches.every((branch) => Object.keys(branch).length === 1 && hasKey(branch, \"const\"))) return { enum: jsonSchemaBranches.map((branch) => branch.const) };\n\t\treturn { anyOf: jsonSchemaBranches };\n\t}\n\ttraverseAllows = (data, ctx) => this.branches.some((b) => b.traverseAllows(data, ctx));\n\ttraverseApply = (data, ctx) => {\n\t\tconst errors = [];\n\t\tfor (let i = 0; i < this.branches.length; i++) {\n\t\t\tctx.pushBranch();\n\t\t\tthis.branches[i].traverseApply(data, ctx);\n\t\t\tif (!ctx.hasError()) {\n\t\t\t\tif (this.branches[i].includesTransform) return ctx.queuedMorphs.push(...ctx.popBranch().queuedMorphs);\n\t\t\t\treturn ctx.popBranch();\n\t\t\t}\n\t\t\terrors.push(ctx.popBranch().error);\n\t\t}\n\t\tctx.errorFromNodeContext({\n\t\t\tcode: \"union\",\n\t\t\terrors,\n\t\t\tmeta: this.meta\n\t\t});\n\t};\n\ttraverseOptimistic = (data) => {\n\t\tfor (let i = 0; i < this.branches.length; i++) {\n\t\t\tconst branch = this.branches[i];\n\t\t\tif (branch.traverseAllows(data)) {\n\t\t\t\tif (branch.contextFreeMorph) return branch.contextFreeMorph(data);\n\t\t\t\treturn data;\n\t\t\t}\n\t\t}\n\t\treturn unset;\n\t};\n\tcompile(js) {\n\t\tif (!this.discriminant || this.unitBranches.length === this.branches.length && this.branches.length === 2) return this.compileIndiscriminable(js);\n\t\tlet condition = this.discriminant.optionallyChainedPropString;\n\t\tif (this.discriminant.kind === \"domain\") condition = `typeof ${condition} === \"object\" ? ${condition} === null ? \"null\" : \"object\" : typeof ${condition} === \"function\" ? \"object\" : typeof ${condition}`;\n\t\tconst cases = this.discriminant.cases;\n\t\tconst caseKeys = Object.keys(cases);\n\t\tconst { optimistic } = js;\n\t\tjs.optimistic = false;\n\t\tjs.block(`switch(${condition})`, () => {\n\t\t\tfor (const k in cases) {\n\t\t\t\tconst v = cases[k];\n\t\t\t\tconst caseCondition = k === \"default\" ? k : `case ${k}`;\n\t\t\t\tlet caseResult;\n\t\t\t\tif (v === true) caseResult = optimistic ? \"data\" : \"true\";\n\t\t\t\telse if (optimistic) if (v.rootApplyStrategy === \"branchedOptimistic\") caseResult = js.invoke(v, { kind: \"Optimistic\" });\n\t\t\t\telse if (v.contextFreeMorph) caseResult = `${js.invoke(v)} ? ${registeredReference(v.contextFreeMorph)}(data) : \"${unset}\"`;\n\t\t\t\telse caseResult = `${js.invoke(v)} ? data : \"${unset}\"`;\n\t\t\t\telse caseResult = js.invoke(v);\n\t\t\t\tjs.line(`${caseCondition}: return ${caseResult}`);\n\t\t\t}\n\t\t\treturn js;\n\t\t});\n\t\tif (js.traversalKind === \"Allows\") {\n\t\t\tjs.return(optimistic ? `\"${unset}\"` : false);\n\t\t\treturn;\n\t\t}\n\t\tconst expected = describeBranches(this.discriminant.kind === \"domain\" ? caseKeys.map((k) => {\n\t\t\tconst jsTypeOf = k.slice(1, -1);\n\t\t\treturn jsTypeOf === \"function\" ? domainDescriptions.object : domainDescriptions[jsTypeOf];\n\t\t}) : caseKeys);\n\t\tconst serializedPathSegments = this.discriminant.path.map((k) => typeof k === \"symbol\" ? registeredReference(k) : JSON.stringify(k));\n\t\tconst serializedExpected = JSON.stringify(expected);\n\t\tconst serializedActual = this.discriminant.kind === \"domain\" ? `${serializedTypeOfDescriptions}[${condition}]` : `${serializedPrintable}(${condition})`;\n\t\tjs.line(`ctx.errorFromNodeContext({\n\tcode: \"predicate\",\n\texpected: ${serializedExpected},\n\tactual: ${serializedActual},\n\trelativePath: [${serializedPathSegments}],\n\tmeta: ${this.compiledMeta}\n})`);\n\t}\n\tcompileIndiscriminable(js) {\n\t\tif (js.traversalKind === \"Apply\") {\n\t\t\tjs.const(\"errors\", \"[]\");\n\t\t\tfor (const branch of this.branches) js.line(\"ctx.pushBranch()\").line(js.invoke(branch)).if(\"!ctx.hasError()\", () => js.return(branch.includesTransform ? \"ctx.queuedMorphs.push(...ctx.popBranch().queuedMorphs)\" : \"ctx.popBranch()\")).line(\"errors.push(ctx.popBranch().error)\");\n\t\t\tjs.line(`ctx.errorFromNodeContext({ code: \"union\", errors, meta: ${this.compiledMeta} })`);\n\t\t} else {\n\t\t\tconst { optimistic } = js;\n\t\t\tjs.optimistic = false;\n\t\t\tfor (const branch of this.branches) js.if(`${js.invoke(branch)}`, () => js.return(optimistic ? branch.contextFreeMorph ? `${registeredReference(branch.contextFreeMorph)}(data)` : \"data\" : true));\n\t\t\tjs.return(optimistic ? `\"${unset}\"` : false);\n\t\t}\n\t}\n\tget nestableExpression() {\n\t\treturn this.isBoolean ? \"boolean\" : `(${this.expression})`;\n\t}\n\tdiscriminate() {\n\t\tif (this.branches.length < 2) return null;\n\t\tif (this.unitBranches.length === this.branches.length) return {\n\t\t\tkind: \"unit\",\n\t\t\tpath: [],\n\t\t\toptionallyChainedPropString: \"data\",\n\t\t\tcases: flatMorph(this.unitBranches, (i, n) => [`${n.rawIn.serializedValue}`, n.hasKind(\"morph\") ? n : true])\n\t\t};\n\t\tconst candidates = [];\n\t\tfor (let lIndex = 0; lIndex < this.branches.length - 1; lIndex++) {\n\t\t\tconst l = this.branches[lIndex];\n\t\t\tfor (let rIndex = lIndex + 1; rIndex < this.branches.length; rIndex++) {\n\t\t\t\tconst r = this.branches[rIndex];\n\t\t\t\tconst result = intersectNodesRoot(l.rawIn, r.rawIn, l.$);\n\t\t\t\tif (!(result instanceof Disjoint)) continue;\n\t\t\t\tfor (const entry of result) {\n\t\t\t\t\tif (!entry.kind || entry.optional) continue;\n\t\t\t\t\tlet lSerialized;\n\t\t\t\t\tlet rSerialized;\n\t\t\t\t\tif (entry.kind === \"domain\") {\n\t\t\t\t\t\tconst lValue = entry.l;\n\t\t\t\t\t\tconst rValue = entry.r;\n\t\t\t\t\t\tlSerialized = `\"${typeof lValue === \"string\" ? lValue : lValue.domain}\"`;\n\t\t\t\t\t\trSerialized = `\"${typeof rValue === \"string\" ? rValue : rValue.domain}\"`;\n\t\t\t\t\t} else if (entry.kind === \"unit\") {\n\t\t\t\t\t\tlSerialized = entry.l.serializedValue;\n\t\t\t\t\t\trSerialized = entry.r.serializedValue;\n\t\t\t\t\t} else continue;\n\t\t\t\t\tconst matching = candidates.find((d) => arrayEquals(d.path, entry.path) && d.kind === entry.kind);\n\t\t\t\t\tif (!matching) candidates.push({\n\t\t\t\t\t\tkind: entry.kind,\n\t\t\t\t\t\tcases: {\n\t\t\t\t\t\t\t[lSerialized]: {\n\t\t\t\t\t\t\t\tbranchIndices: [lIndex],\n\t\t\t\t\t\t\t\tcondition: entry.l\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t[rSerialized]: {\n\t\t\t\t\t\t\t\tbranchIndices: [rIndex],\n\t\t\t\t\t\t\t\tcondition: entry.r\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t},\n\t\t\t\t\t\tpath: entry.path\n\t\t\t\t\t});\n\t\t\t\t\telse {\n\t\t\t\t\t\tif (matching.cases[lSerialized]) matching.cases[lSerialized].branchIndices = appendUnique(matching.cases[lSerialized].branchIndices, lIndex);\n\t\t\t\t\t\telse matching.cases[lSerialized] ??= {\n\t\t\t\t\t\t\tbranchIndices: [lIndex],\n\t\t\t\t\t\t\tcondition: entry.l\n\t\t\t\t\t\t};\n\t\t\t\t\t\tif (matching.cases[rSerialized]) matching.cases[rSerialized].branchIndices = appendUnique(matching.cases[rSerialized].branchIndices, rIndex);\n\t\t\t\t\t\telse matching.cases[rSerialized] ??= {\n\t\t\t\t\t\t\tbranchIndices: [rIndex],\n\t\t\t\t\t\t\tcondition: entry.r\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tconst viableCandidates = this.ordered ? viableOrderedCandidates(candidates, this.branches) : candidates;\n\t\tif (!viableCandidates.length) return null;\n\t\tconst ctx = createCaseResolutionContext(viableCandidates, this);\n\t\tconst cases = {};\n\t\tfor (const k in ctx.best.cases) {\n\t\t\tconst resolution = resolveCase(ctx, k);\n\t\t\tif (resolution === null) {\n\t\t\t\tcases[k] = true;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tif (resolution.length === this.branches.length) return null;\n\t\t\tif (this.ordered) resolution.sort((l, r) => l.originalIndex - r.originalIndex);\n\t\t\tconst branches = resolution.map((entry) => entry.branch);\n\t\t\tconst caseNode = branches.length === 1 ? branches[0] : this.$.node(\"union\", this.ordered ? {\n\t\t\t\tbranches,\n\t\t\t\tordered: true\n\t\t\t} : branches);\n\t\t\tObject.assign(this.referencesById, caseNode.referencesById);\n\t\t\tcases[k] = caseNode;\n\t\t}\n\t\tif (ctx.defaultEntries.length) {\n\t\t\tconst branches = ctx.defaultEntries.map((entry) => entry.branch);\n\t\t\tcases.default = this.$.node(\"union\", this.ordered ? {\n\t\t\t\tbranches,\n\t\t\t\tordered: true\n\t\t\t} : branches, { prereduced: true });\n\t\t\tObject.assign(this.referencesById, cases.default.referencesById);\n\t\t}\n\t\treturn Object.assign(ctx.location, { cases });\n\t}\n};\nconst createCaseResolutionContext = (viableCandidates, node) => {\n\tconst best = viableCandidates.sort((l, r) => l.path.length === r.path.length ? Object.keys(r.cases).length - Object.keys(l.cases).length : l.path.length - r.path.length)[0];\n\treturn {\n\t\tbest,\n\t\tlocation: {\n\t\t\tkind: best.kind,\n\t\t\tpath: best.path,\n\t\t\toptionallyChainedPropString: optionallyChainPropString(best.path)\n\t\t},\n\t\tdefaultEntries: node.branches.map((branch, originalIndex) => ({\n\t\t\toriginalIndex,\n\t\t\tbranch\n\t\t})),\n\t\tnode\n\t};\n};\nconst resolveCase = (ctx, key) => {\n\tconst caseCtx = ctx.best.cases[key];\n\tconst discriminantNode = discriminantCaseToNode(caseCtx.condition, ctx.location.path, ctx.node.$);\n\tlet resolvedEntries = [];\n\tconst nextDefaults = [];\n\tfor (let i = 0; i < ctx.defaultEntries.length; i++) {\n\t\tconst entry = ctx.defaultEntries[i];\n\t\tif (caseCtx.branchIndices.includes(entry.originalIndex)) {\n\t\t\tconst pruned = pruneDiscriminant(ctx.node.branches[entry.originalIndex], ctx.location);\n\t\t\tif (pruned === null) resolvedEntries = null;\n\t\t\telse resolvedEntries?.push({\n\t\t\t\toriginalIndex: entry.originalIndex,\n\t\t\t\tbranch: pruned\n\t\t\t});\n\t\t} else if (entry.branch.hasKind(\"alias\") && discriminantNode.hasKind(\"domain\") && discriminantNode.domain === \"object\") resolvedEntries?.push(entry);\n\t\telse {\n\t\t\tif (entry.branch.rawIn.overlaps(discriminantNode)) {\n\t\t\t\tconst overlapping = pruneDiscriminant(entry.branch, ctx.location);\n\t\t\t\tresolvedEntries?.push({\n\t\t\t\t\toriginalIndex: entry.originalIndex,\n\t\t\t\t\tbranch: overlapping\n\t\t\t\t});\n\t\t\t}\n\t\t\tnextDefaults.push(entry);\n\t\t}\n\t}\n\tctx.defaultEntries = nextDefaults;\n\treturn resolvedEntries;\n};\nconst viableOrderedCandidates = (candidates, originalBranches) => {\n\treturn candidates.filter((candidate) => {\n\t\tconst caseGroups = Object.values(candidate.cases).map((caseCtx) => caseCtx.branchIndices);\n\t\tfor (let i = 0; i < caseGroups.length - 1; i++) {\n\t\t\tconst currentGroup = caseGroups[i];\n\t\t\tfor (let j = i + 1; j < caseGroups.length; j++) {\n\t\t\t\tconst nextGroup = caseGroups[j];\n\t\t\t\tfor (const currentIndex of currentGroup) for (const nextIndex of nextGroup) if (currentIndex > nextIndex) {\n\t\t\t\t\tif (originalBranches[currentIndex].overlaps(originalBranches[nextIndex])) return false;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t});\n};\nconst discriminantCaseToNode = (caseDiscriminant, path, $) => {\n\tlet node = caseDiscriminant === \"undefined\" ? $.node(\"unit\", { unit: void 0 }) : caseDiscriminant === \"null\" ? $.node(\"unit\", { unit: null }) : caseDiscriminant === \"boolean\" ? $.units([true, false]) : caseDiscriminant;\n\tfor (let i = path.length - 1; i >= 0; i--) {\n\t\tconst key = path[i];\n\t\tnode = $.node(\"intersection\", typeof key === \"number\" ? {\n\t\t\tproto: \"Array\",\n\t\t\tsequence: [...range(key).map((_) => ({})), node]\n\t\t} : {\n\t\t\tdomain: \"object\",\n\t\t\trequired: [{\n\t\t\t\tkey,\n\t\t\t\tvalue: node\n\t\t\t}]\n\t\t});\n\t}\n\treturn node;\n};\nconst optionallyChainPropString = (path) => path.reduce((acc, k) => acc + compileLiteralPropAccess(k, true), \"data\");\nconst serializedTypeOfDescriptions = registeredReference(jsTypeOfDescriptions);\nconst serializedPrintable = registeredReference(printable);\nconst Union = {\n\timplementation: implementation$5,\n\tNode: UnionNode\n};\nconst discriminantToJson = (discriminant) => ({\n\tkind: discriminant.kind,\n\tpath: discriminant.path.map((k) => typeof k === \"string\" ? k : compileSerializedValue(k)),\n\tcases: flatMorph(discriminant.cases, (k, node) => [k, node === true ? node : node.hasKind(\"union\") && node.discriminantJson ? node.discriminantJson : node.json])\n});\nconst describeExpressionOptions = {\n\tdelimiter: \" | \",\n\tfinalDelimiter: \" | \"\n};\nconst expressBranches = (expressions) => describeBranches(expressions, describeExpressionOptions);\nconst describeBranches = (descriptions, opts) => {\n\tconst delimiter = opts?.delimiter ?? \", \";\n\tconst finalDelimiter = opts?.finalDelimiter ?? \" or \";\n\tif (descriptions.length === 0) return \"never\";\n\tif (descriptions.length === 1) return descriptions[0];\n\tif (descriptions.length === 2 && descriptions[0] === \"false\" && descriptions[1] === \"true\" || descriptions[0] === \"true\" && descriptions[1] === \"false\") return \"boolean\";\n\tconst seen = {};\n\tconst unique = descriptions.filter((s) => seen[s] ? false : seen[s] = true);\n\tconst last = unique.pop();\n\treturn `${unique.join(delimiter)}${unique.length ? finalDelimiter : \"\"}${last}`;\n};\nconst intersectBranches = (l, r, ctx) => {\n\tconst batchesByR = r.map(() => []);\n\tfor (let lIndex = 0; lIndex < l.length; lIndex++) {\n\t\tlet candidatesByR = {};\n\t\tfor (let rIndex = 0; rIndex < r.length; rIndex++) {\n\t\t\tif (batchesByR[rIndex] === null) continue;\n\t\t\tif (l[lIndex].equals(r[rIndex])) {\n\t\t\t\tbatchesByR[rIndex] = null;\n\t\t\t\tcandidatesByR = {};\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tconst branchIntersection = intersectOrPipeNodes(l[lIndex], r[rIndex], ctx);\n\t\t\tif (branchIntersection instanceof Disjoint) continue;\n\t\t\tif (branchIntersection.equals(l[lIndex])) {\n\t\t\t\tbatchesByR[rIndex].push(l[lIndex]);\n\t\t\t\tcandidatesByR = {};\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif (branchIntersection.equals(r[rIndex])) batchesByR[rIndex] = null;\n\t\t\telse candidatesByR[rIndex] = branchIntersection;\n\t\t}\n\t\tfor (const rIndex in candidatesByR) batchesByR[rIndex][lIndex] = candidatesByR[rIndex];\n\t}\n\tconst resultBranches = batchesByR.flatMap((batch, i) => batch?.flatMap((branch) => branch.branches) ?? r[i]);\n\treturn resultBranches.length === 0 ? Disjoint.init(\"union\", l, r) : resultBranches;\n};\nconst reduceBranches = ({ branches, ordered }) => {\n\tif (branches.length < 2) return branches;\n\tconst uniquenessByIndex = branches.map(() => true);\n\tfor (let i = 0; i < branches.length; i++) for (let j = i + 1; j < branches.length && uniquenessByIndex[i] && uniquenessByIndex[j]; j++) {\n\t\tif (branches[i].equals(branches[j])) {\n\t\t\tuniquenessByIndex[j] = false;\n\t\t\tcontinue;\n\t\t}\n\t\tconst intersection = intersectNodesRoot(branches[i].rawIn, branches[j].rawIn, branches[0].$);\n\t\tif (intersection instanceof Disjoint) continue;\n\t\tif (!ordered) assertDeterminateOverlap(branches[i], branches[j]);\n\t\tif (intersection.equals(branches[i].rawIn)) uniquenessByIndex[i] = !!ordered;\n\t\telse if (intersection.equals(branches[j].rawIn)) uniquenessByIndex[j] = false;\n\t}\n\treturn branches.filter((_, i) => uniquenessByIndex[i]);\n};\nconst assertDeterminateOverlap = (l, r) => {\n\tif (!l.includesTransform && !r.includesTransform) return;\n\tif (!arrayEquals(l.shallowMorphs, r.shallowMorphs)) throwParseError(writeIndiscriminableMorphMessage(l.expression, r.expression));\n\tif (!arrayEquals(l.flatMorphs, r.flatMorphs, { isEqual: (l, r) => l.propString === r.propString && (l.node.hasKind(\"morph\") && r.node.hasKind(\"morph\") ? l.node.hasEqualMorphs(r.node) : l.node.hasKind(\"intersection\") && r.node.hasKind(\"intersection\") ? l.node.structure?.structuralMorphRef === r.node.structure?.structuralMorphRef : false) })) throwParseError(writeIndiscriminableMorphMessage(l.expression, r.expression));\n};\nconst pruneDiscriminant = (discriminantBranch, discriminantCtx) => discriminantBranch.transform((nodeKind, inner) => {\n\tif (nodeKind === \"domain\" || nodeKind === \"unit\") return null;\n\treturn inner;\n}, { shouldTransform: (node, ctx) => {\n\tconst propString = optionallyChainPropString(ctx.path);\n\tif (!discriminantCtx.optionallyChainedPropString.startsWith(propString)) return false;\n\tif (node.hasKind(\"domain\") && node.domain === \"object\") return true;\n\tif ((node.hasKind(\"domain\") || discriminantCtx.kind === \"unit\") && propString === discriminantCtx.optionallyChainedPropString) return true;\n\treturn node.children.length !== 0 && node.kind !== \"index\";\n} });\nconst writeIndiscriminableMorphMessage = (lDescription, rDescription) => `An unordered union of a type including a morph and a type with overlapping input is indeterminate:\nLeft: ${lDescription}\nRight: ${rDescription}`;\nconst writeOrderedIntersectionMessage = (lDescription, rDescription) => `The intersection of two ordered unions is indeterminate:\nLeft: ${lDescription}\nRight: ${rDescription}`;\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/roots/unit.js\nconst implementation$4 = implementNode({\n\tkind: \"unit\",\n\thasAssociatedError: true,\n\tkeys: { unit: {\n\t\tpreserveUndefined: true,\n\t\tserialize: (schema) => schema instanceof Date ? schema.toISOString() : defaultValueSerializer(schema)\n\t} },\n\tnormalize: (schema) => schema,\n\tdefaults: {\n\t\tdescription: (node) => printable(node.unit),\n\t\tproblem: ({ expected, actual }) => `${expected === actual ? `must be reference equal to ${expected} (serialized to the same value)` : `must be ${expected} (was ${actual})`}`\n\t},\n\tintersections: {\n\t\tunit: (l, r) => Disjoint.init(\"unit\", l, r),\n\t\t...defineRightwardIntersections(\"unit\", (l, r) => {\n\t\t\tif (r.allows(l.unit)) return l;\n\t\t\tconst rBasis = r.hasKind(\"intersection\") ? r.basis : r;\n\t\t\tif (rBasis) {\n\t\t\t\tconst rDomain = rBasis.hasKind(\"domain\") ? rBasis : $ark.intrinsic.object;\n\t\t\t\tif (l.domain !== rDomain.domain) {\n\t\t\t\t\tconst lDomainDisjointValue = l.domain === \"undefined\" || l.domain === \"null\" || l.domain === \"boolean\" ? l.domain : $ark.intrinsic[l.domain];\n\t\t\t\t\treturn Disjoint.init(\"domain\", lDomainDisjointValue, rDomain);\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn Disjoint.init(\"assignability\", l, r.hasKind(\"intersection\") ? r.children.find((rConstraint) => !rConstraint.allows(l.unit)) : r);\n\t\t})\n\t}\n});\nvar UnitNode = class extends InternalBasis {\n\tcompiledValue = this.json.unit;\n\tserializedValue = typeof this.unit === \"string\" || this.unit instanceof Date ? JSON.stringify(this.compiledValue) : `${this.compiledValue}`;\n\tcompiledCondition = compileEqualityCheck(this.unit, this.serializedValue);\n\tcompiledNegation = compileEqualityCheck(this.unit, this.serializedValue, \"negated\");\n\texpression = printable(this.unit);\n\tdomain = domainOf(this.unit);\n\tget defaultShortDescription() {\n\t\treturn this.domain === \"object\" ? domainDescriptions.object : this.description;\n\t}\n\tinnerToJsonSchema(ctx) {\n\t\treturn this.unit === null ? { type: \"null\" } : $ark.intrinsic.jsonPrimitive.allows(this.unit) ? { const: this.unit } : ctx.fallback.unit({\n\t\t\tcode: \"unit\",\n\t\t\tbase: {},\n\t\t\tunit: this.unit\n\t\t});\n\t}\n\ttraverseAllows = this.unit instanceof Date ? (data) => data instanceof Date && data.toISOString() === this.compiledValue : Number.isNaN(this.unit) ? (data) => Number.isNaN(data) : (data) => data === this.unit;\n};\nconst Unit = {\n\timplementation: implementation$4,\n\tNode: UnitNode\n};\nconst compileEqualityCheck = (unit, serializedValue, negated) => {\n\tif (unit instanceof Date) {\n\t\tconst condition = `data instanceof Date && data.toISOString() === ${serializedValue}`;\n\t\treturn negated ? `!(${condition})` : condition;\n\t}\n\tif (Number.isNaN(unit)) return `${negated ? \"!\" : \"\"}Number.isNaN(data)`;\n\treturn `data ${negated ? \"!\" : \"=\"}== ${serializedValue}`;\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/structure/index.js\nconst implementation$3 = implementNode({\n\tkind: \"index\",\n\thasAssociatedError: false,\n\tintersectionIsOpen: true,\n\tkeys: {\n\t\tsignature: {\n\t\t\tchild: true,\n\t\t\tparse: (schema, ctx) => {\n\t\t\t\tconst key = ctx.$.parseSchema(schema);\n\t\t\t\tif (!key.extends($ark.intrinsic.key)) return throwParseError(writeInvalidPropertyKeyMessage(key.expression));\n\t\t\t\tconst enumerableBranches = key.branches.filter((b) => b.hasKind(\"unit\"));\n\t\t\t\tif (enumerableBranches.length) return throwParseError(writeEnumerableIndexBranches(enumerableBranches.map((b) => printable(b.unit))));\n\t\t\t\treturn key;\n\t\t\t}\n\t\t},\n\t\tvalue: {\n\t\t\tchild: true,\n\t\t\tparse: (schema, ctx) => ctx.$.parseSchema(schema)\n\t\t}\n\t},\n\tnormalize: (schema) => schema,\n\tdefaults: { description: (node) => `[${node.signature.expression}]: ${node.value.description}` },\n\tintersections: { index: (l, r, ctx) => {\n\t\tif (l.signature.equals(r.signature)) {\n\t\t\tconst valueIntersection = intersectOrPipeNodes(l.value, r.value, ctx);\n\t\t\tconst value = valueIntersection instanceof Disjoint ? $ark.intrinsic.never.internal : valueIntersection;\n\t\t\treturn ctx.$.node(\"index\", {\n\t\t\t\tsignature: l.signature,\n\t\t\t\tvalue\n\t\t\t});\n\t\t}\n\t\tif (l.signature.extends(r.signature) && l.value.subsumes(r.value)) return r;\n\t\tif (r.signature.extends(l.signature) && r.value.subsumes(l.value)) return l;\n\t\treturn null;\n\t} }\n});\nvar IndexNode = class extends BaseConstraint {\n\timpliedBasis = $ark.intrinsic.object.internal;\n\texpression = `[${this.signature.expression}]: ${this.value.expression}`;\n\tflatRefs = append(this.value.flatRefs.map((ref) => flatRef([this.signature, ...ref.path], ref.node)), flatRef([this.signature], this.value));\n\ttraverseAllows = (data, ctx) => stringAndSymbolicEntriesOf(data).every((entry) => {\n\t\tif (this.signature.traverseAllows(entry[0], ctx)) return traverseKey(entry[0], () => this.value.traverseAllows(entry[1], ctx), ctx);\n\t\treturn true;\n\t});\n\ttraverseApply = (data, ctx) => {\n\t\tfor (const entry of stringAndSymbolicEntriesOf(data)) if (this.signature.traverseAllows(entry[0], ctx)) traverseKey(entry[0], () => this.value.traverseApply(entry[1], ctx), ctx);\n\t};\n\t_transform(mapper, ctx) {\n\t\tctx.path.push(this.signature);\n\t\tconst result = super._transform(mapper, ctx);\n\t\tctx.path.pop();\n\t\treturn result;\n\t}\n\tcompile() {}\n};\nconst Index = {\n\timplementation: implementation$3,\n\tNode: IndexNode\n};\nconst writeEnumerableIndexBranches = (keys) => `Index keys ${keys.join(\", \")} should be specified as named props.`;\nconst writeInvalidPropertyKeyMessage = (indexSchema) => `Indexed key definition '${indexSchema}' must be a string or symbol`;\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/structure/required.js\nconst implementation$2 = implementNode({\n\tkind: \"required\",\n\thasAssociatedError: true,\n\tintersectionIsOpen: true,\n\tkeys: {\n\t\tkey: {},\n\t\tvalue: {\n\t\t\tchild: true,\n\t\t\tparse: (schema, ctx) => ctx.$.parseSchema(schema)\n\t\t}\n\t},\n\tnormalize: (schema) => schema,\n\tdefaults: {\n\t\tdescription: (node) => `${node.compiledKey}: ${node.value.description}`,\n\t\texpected: (ctx) => ctx.missingValueDescription,\n\t\tactual: () => \"missing\"\n\t},\n\tintersections: {\n\t\trequired: intersectProps,\n\t\toptional: intersectProps\n\t}\n});\nvar RequiredNode = class extends BaseProp {\n\texpression = `${this.compiledKey}: ${this.value.expression}`;\n\terrorContext = Object.freeze({\n\t\tcode: \"required\",\n\t\tmissingValueDescription: this.value.defaultShortDescription,\n\t\trelativePath: [this.key],\n\t\tmeta: this.meta\n\t});\n\tcompiledErrorContext = compileObjectLiteral(this.errorContext);\n};\nconst Required$1 = {\n\timplementation: implementation$2,\n\tNode: RequiredNode\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/structure/sequence.js\nconst implementation$1 = implementNode({\n\tkind: \"sequence\",\n\thasAssociatedError: false,\n\tcollapsibleKey: \"variadic\",\n\tkeys: {\n\t\tprefix: {\n\t\t\tchild: true,\n\t\t\tparse: (schema, ctx) => {\n\t\t\t\tif (schema.length === 0) return void 0;\n\t\t\t\treturn schema.map((element) => ctx.$.parseSchema(element));\n\t\t\t}\n\t\t},\n\t\toptionals: {\n\t\t\tchild: true,\n\t\t\tparse: (schema, ctx) => {\n\t\t\t\tif (schema.length === 0) return void 0;\n\t\t\t\treturn schema.map((element) => ctx.$.parseSchema(element));\n\t\t\t}\n\t\t},\n\t\tdefaultables: {\n\t\t\tchild: (defaultables) => defaultables.map((element) => element[0]),\n\t\t\tparse: (defaultables, ctx) => {\n\t\t\t\tif (defaultables.length === 0) return void 0;\n\t\t\t\treturn defaultables.map((element) => {\n\t\t\t\t\tconst node = ctx.$.parseSchema(element[0]);\n\t\t\t\t\tassertDefaultValueAssignability(node, element[1], null);\n\t\t\t\t\treturn [node, element[1]];\n\t\t\t\t});\n\t\t\t},\n\t\t\tserialize: (defaults) => defaults.map((element) => [element[0].collapsibleJson, defaultValueSerializer(element[1])]),\n\t\t\treduceIo: (ioKind, inner, defaultables) => {\n\t\t\t\tif (ioKind === \"in\") {\n\t\t\t\t\tinner.optionals = defaultables.map((d) => d[0].rawIn);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tinner.prefix = defaultables.map((d) => d[0].rawOut);\n\t\t\t}\n\t\t},\n\t\tvariadic: {\n\t\t\tchild: true,\n\t\t\tparse: (schema, ctx) => ctx.$.parseSchema(schema, ctx)\n\t\t},\n\t\tminVariadicLength: { parse: (min) => min === 0 ? void 0 : min },\n\t\tpostfix: {\n\t\t\tchild: true,\n\t\t\tparse: (schema, ctx) => {\n\t\t\t\tif (schema.length === 0) return void 0;\n\t\t\t\treturn schema.map((element) => ctx.$.parseSchema(element));\n\t\t\t}\n\t\t}\n\t},\n\tnormalize: (schema) => {\n\t\tif (typeof schema === \"string\") return { variadic: schema };\n\t\tif (\"variadic\" in schema || \"prefix\" in schema || \"defaultables\" in schema || \"optionals\" in schema || \"postfix\" in schema || \"minVariadicLength\" in schema) {\n\t\t\tif (schema.postfix?.length) {\n\t\t\t\tif (!schema.variadic) return throwParseError(postfixWithoutVariadicMessage);\n\t\t\t\tif (schema.optionals?.length || schema.defaultables?.length) return throwParseError(postfixAfterOptionalOrDefaultableMessage);\n\t\t\t}\n\t\t\tif (schema.minVariadicLength && !schema.variadic) return throwParseError(\"minVariadicLength may not be specified without a variadic element\");\n\t\t\treturn schema;\n\t\t}\n\t\treturn { variadic: schema };\n\t},\n\treduce: (raw, $) => {\n\t\tlet minVariadicLength = raw.minVariadicLength ?? 0;\n\t\tconst prefix = raw.prefix?.slice() ?? [];\n\t\tconst defaultables = raw.defaultables?.slice() ?? [];\n\t\tconst optionals = raw.optionals?.slice() ?? [];\n\t\tconst postfix = raw.postfix?.slice() ?? [];\n\t\tif (raw.variadic) {\n\t\t\twhile (optionals[optionals.length - 1]?.equals(raw.variadic)) optionals.pop();\n\t\t\tif (optionals.length === 0 && defaultables.length === 0) while (prefix[prefix.length - 1]?.equals(raw.variadic)) {\n\t\t\t\tprefix.pop();\n\t\t\t\tminVariadicLength++;\n\t\t\t}\n\t\t\twhile (postfix[0]?.equals(raw.variadic)) {\n\t\t\t\tpostfix.shift();\n\t\t\t\tminVariadicLength++;\n\t\t\t}\n\t\t} else if (optionals.length === 0 && defaultables.length === 0) prefix.push(...postfix.splice(0));\n\t\tif (minVariadicLength !== raw.minVariadicLength || raw.prefix && raw.prefix.length !== prefix.length) return $.node(\"sequence\", {\n\t\t\t...raw,\n\t\t\tprefix,\n\t\t\tdefaultables,\n\t\t\toptionals,\n\t\t\tpostfix,\n\t\t\tminVariadicLength\n\t\t}, { prereduced: true });\n\t},\n\tdefaults: { description: (node) => {\n\t\tif (node.isVariadicOnly) return `${node.variadic.nestableExpression}[]`;\n\t\treturn `[${node.tuple.map((element) => element.kind === \"defaultables\" ? `${element.node.nestableExpression} = ${printable(element.default)}` : element.kind === \"optionals\" ? `${element.node.nestableExpression}?` : element.kind === \"variadic\" ? `...${element.node.nestableExpression}[]` : element.node.expression).join(\", \")}]`;\n\t} },\n\tintersections: { sequence: (l, r, ctx) => {\n\t\tconst rootState = _intersectSequences({\n\t\t\tl: l.tuple,\n\t\t\tr: r.tuple,\n\t\t\tdisjoint: new Disjoint(),\n\t\t\tresult: [],\n\t\t\tfixedVariants: [],\n\t\t\tctx\n\t\t});\n\t\tconst viableBranches = rootState.disjoint.length === 0 ? [rootState, ...rootState.fixedVariants] : rootState.fixedVariants;\n\t\treturn viableBranches.length === 0 ? rootState.disjoint : viableBranches.length === 1 ? ctx.$.node(\"sequence\", sequenceTupleToInner(viableBranches[0].result)) : ctx.$.node(\"union\", viableBranches.map((state) => ({\n\t\t\tproto: Array,\n\t\t\tsequence: sequenceTupleToInner(state.result)\n\t\t})));\n\t} }\n});\nvar SequenceNode = class extends BaseConstraint {\n\timpliedBasis = $ark.intrinsic.Array.internal;\n\ttuple = sequenceInnerToTuple(this.inner);\n\tprefixLength = this.prefix?.length ?? 0;\n\tdefaultablesLength = this.defaultables?.length ?? 0;\n\toptionalsLength = this.optionals?.length ?? 0;\n\tpostfixLength = this.postfix?.length ?? 0;\n\tdefaultablesAndOptionals = [];\n\tprevariadic = this.tuple.filter((el) => {\n\t\tif (el.kind === \"defaultables\" || el.kind === \"optionals\") {\n\t\t\tthis.defaultablesAndOptionals.push(el.node);\n\t\t\treturn true;\n\t\t}\n\t\treturn el.kind === \"prefix\";\n\t});\n\tvariadicOrPostfix = conflatenate(this.variadic && [this.variadic], this.postfix);\n\tflatRefs = this.addFlatRefs();\n\taddFlatRefs() {\n\t\tappendUniqueFlatRefs(this.flatRefs, this.prevariadic.flatMap((element, i) => append(element.node.flatRefs.map((ref) => flatRef([`${i}`, ...ref.path], ref.node)), flatRef([`${i}`], element.node))));\n\t\tappendUniqueFlatRefs(this.flatRefs, this.variadicOrPostfix.flatMap((element) => append(element.flatRefs.map((ref) => flatRef([$ark.intrinsic.nonNegativeIntegerString.internal, ...ref.path], ref.node)), flatRef([$ark.intrinsic.nonNegativeIntegerString.internal], element))));\n\t\treturn this.flatRefs;\n\t}\n\tisVariadicOnly = this.prevariadic.length + this.postfixLength === 0;\n\tminVariadicLength = this.inner.minVariadicLength ?? 0;\n\tminLength = this.prefixLength + this.minVariadicLength + this.postfixLength;\n\tminLengthNode = this.minLength === 0 ? null : this.$.node(\"minLength\", this.minLength);\n\tmaxLength = this.variadic ? null : this.tuple.length;\n\tmaxLengthNode = this.maxLength === null ? null : this.$.node(\"maxLength\", this.maxLength);\n\timpliedSiblings = this.minLengthNode ? this.maxLengthNode ? [this.minLengthNode, this.maxLengthNode] : [this.minLengthNode] : this.maxLengthNode ? [this.maxLengthNode] : [];\n\tdefaultValueMorphs = getDefaultableMorphs(this);\n\tdefaultValueMorphsReference = this.defaultValueMorphs.length ? registeredReference(this.defaultValueMorphs) : void 0;\n\telementAtIndex(data, index) {\n\t\tif (index < this.prevariadic.length) return this.tuple[index];\n\t\tconst firstPostfixIndex = data.length - this.postfixLength;\n\t\tif (index >= firstPostfixIndex) return {\n\t\t\tkind: \"postfix\",\n\t\t\tnode: this.postfix[index - firstPostfixIndex]\n\t\t};\n\t\treturn {\n\t\t\tkind: \"variadic\",\n\t\t\tnode: this.variadic ?? throwInternalError(`Unexpected attempt to access index ${index} on ${this}`)\n\t\t};\n\t}\n\ttraverseAllows = (data, ctx) => {\n\t\tfor (let i = 0; i < data.length; i++) if (!this.elementAtIndex(data, i).node.traverseAllows(data[i], ctx)) return false;\n\t\treturn true;\n\t};\n\ttraverseApply = (data, ctx) => {\n\t\tlet i = 0;\n\t\tfor (; i < data.length; i++) traverseKey(i, () => this.elementAtIndex(data, i).node.traverseApply(data[i], ctx), ctx);\n\t};\n\tget element() {\n\t\treturn this.cacheGetter(\"element\", this.$.node(\"union\", this.children));\n\t}\n\tcompile(js) {\n\t\tif (this.prefix) for (const [i, node] of this.prefix.entries()) js.traverseKey(`${i}`, `data[${i}]`, node);\n\t\tfor (const [i, node] of this.defaultablesAndOptionals.entries()) {\n\t\t\tconst dataIndex = `${i + this.prefixLength}`;\n\t\t\tjs.if(`${dataIndex} >= data.length`, () => js.traversalKind === \"Allows\" ? js.return(true) : js.return());\n\t\t\tjs.traverseKey(dataIndex, `data[${dataIndex}]`, node);\n\t\t}\n\t\tif (this.variadic) {\n\t\t\tif (this.postfix) js.const(\"firstPostfixIndex\", `data.length${this.postfix ? `- ${this.postfix.length}` : \"\"}`);\n\t\t\tjs.for(`i < ${this.postfix ? \"firstPostfixIndex\" : \"data.length\"}`, () => js.traverseKey(\"i\", \"data[i]\", this.variadic), this.prevariadic.length);\n\t\t\tif (this.postfix) for (const [i, node] of this.postfix.entries()) {\n\t\t\t\tconst keyExpression = `firstPostfixIndex + ${i}`;\n\t\t\t\tjs.traverseKey(keyExpression, `data[${keyExpression}]`, node);\n\t\t\t}\n\t\t}\n\t\tif (js.traversalKind === \"Allows\") js.return(true);\n\t}\n\t_transform(mapper, ctx) {\n\t\tctx.path.push($ark.intrinsic.nonNegativeIntegerString.internal);\n\t\tconst result = super._transform(mapper, ctx);\n\t\tctx.path.pop();\n\t\treturn result;\n\t}\n\texpression = this.description;\n\treduceJsonSchema(schema, ctx) {\n\t\tconst isDraft07 = ctx.target === \"draft-07\";\n\t\tif (this.prevariadic.length) {\n\t\t\tconst prefixSchemas = this.prevariadic.map((el) => {\n\t\t\t\tconst valueSchema = el.node.toJsonSchemaRecurse(ctx);\n\t\t\t\tif (el.kind === \"defaultables\") {\n\t\t\t\t\tconst value = typeof el.default === \"function\" ? el.default() : el.default;\n\t\t\t\t\tvalueSchema.default = $ark.intrinsic.jsonData.allows(value) ? value : ctx.fallback.defaultValue({\n\t\t\t\t\t\tcode: \"defaultValue\",\n\t\t\t\t\t\tbase: valueSchema,\n\t\t\t\t\t\tvalue\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\treturn valueSchema;\n\t\t\t});\n\t\t\tif (isDraft07) schema.items = prefixSchemas;\n\t\t\telse schema.prefixItems = prefixSchemas;\n\t\t}\n\t\tif (this.minLength) schema.minItems = this.minLength;\n\t\tif (this.variadic) {\n\t\t\tconst variadicItemSchema = this.variadic.toJsonSchemaRecurse(ctx);\n\t\t\tif (isDraft07 && this.prevariadic.length) schema.additionalItems = variadicItemSchema;\n\t\t\telse schema.items = variadicItemSchema;\n\t\t\tif (this.maxLength) schema.maxItems = this.maxLength;\n\t\t\tif (this.postfix) {\n\t\t\t\tconst elements = this.postfix.map((el) => el.toJsonSchemaRecurse(ctx));\n\t\t\t\tschema = ctx.fallback.arrayPostfix({\n\t\t\t\t\tcode: \"arrayPostfix\",\n\t\t\t\t\tbase: schema,\n\t\t\t\t\telements\n\t\t\t\t});\n\t\t\t}\n\t\t} else {\n\t\t\tif (isDraft07) schema.additionalItems = false;\n\t\t\telse schema.items = false;\n\t\t\tdelete schema.maxItems;\n\t\t}\n\t\treturn schema;\n\t}\n};\nconst defaultableMorphsCache$1 = {};\nconst getDefaultableMorphs = (node) => {\n\tif (!node.defaultables) return [];\n\tconst morphs = [];\n\tlet cacheKey = \"[\";\n\tconst lastDefaultableIndex = node.prefixLength + node.defaultablesLength - 1;\n\tfor (let i = node.prefixLength; i <= lastDefaultableIndex; i++) {\n\t\tconst [elementNode, defaultValue] = node.defaultables[i - node.prefixLength];\n\t\tmorphs.push(computeDefaultValueMorph(i, elementNode, defaultValue));\n\t\tcacheKey += `${i}: ${elementNode.id} = ${defaultValueSerializer(defaultValue)}, `;\n\t}\n\tcacheKey += \"]\";\n\treturn defaultableMorphsCache$1[cacheKey] ??= morphs;\n};\nconst Sequence = {\n\timplementation: implementation$1,\n\tNode: SequenceNode\n};\nconst sequenceInnerToTuple = (inner) => {\n\tconst tuple = [];\n\tif (inner.prefix) for (const node of inner.prefix) tuple.push({\n\t\tkind: \"prefix\",\n\t\tnode\n\t});\n\tif (inner.defaultables) for (const [node, defaultValue] of inner.defaultables) tuple.push({\n\t\tkind: \"defaultables\",\n\t\tnode,\n\t\tdefault: defaultValue\n\t});\n\tif (inner.optionals) for (const node of inner.optionals) tuple.push({\n\t\tkind: \"optionals\",\n\t\tnode\n\t});\n\tif (inner.variadic) tuple.push({\n\t\tkind: \"variadic\",\n\t\tnode: inner.variadic\n\t});\n\tif (inner.postfix) for (const node of inner.postfix) tuple.push({\n\t\tkind: \"postfix\",\n\t\tnode\n\t});\n\treturn tuple;\n};\nconst sequenceTupleToInner = (tuple) => tuple.reduce((result, element) => {\n\tif (element.kind === \"variadic\") result.variadic = element.node;\n\telse if (element.kind === \"defaultables\") result.defaultables = append(result.defaultables, [[element.node, element.default]]);\n\telse result[element.kind] = append(result[element.kind], element.node);\n\treturn result;\n}, {});\nconst postfixAfterOptionalOrDefaultableMessage = \"A postfix required element cannot follow an optional or defaultable element\";\nconst postfixWithoutVariadicMessage = \"A postfix element requires a variadic element\";\nconst _intersectSequences = (s) => {\n\tconst [lHead, ...lTail] = s.l;\n\tconst [rHead, ...rTail] = s.r;\n\tif (!lHead || !rHead) return s;\n\tconst lHasPostfix = lTail[lTail.length - 1]?.kind === \"postfix\";\n\tconst rHasPostfix = rTail[rTail.length - 1]?.kind === \"postfix\";\n\tconst kind = lHead.kind === \"prefix\" || rHead.kind === \"prefix\" ? \"prefix\" : lHead.kind === \"postfix\" || rHead.kind === \"postfix\" ? \"postfix\" : lHead.kind === \"variadic\" && rHead.kind === \"variadic\" ? \"variadic\" : lHasPostfix || rHasPostfix ? \"prefix\" : lHead.kind === \"defaultables\" || rHead.kind === \"defaultables\" ? \"defaultables\" : \"optionals\";\n\tif (lHead.kind === \"prefix\" && rHead.kind === \"variadic\" && rHasPostfix) {\n\t\tconst postfixBranchResult = _intersectSequences({\n\t\t\t...s,\n\t\t\tfixedVariants: [],\n\t\t\tr: rTail.map((element) => ({\n\t\t\t\t...element,\n\t\t\t\tkind: \"prefix\"\n\t\t\t}))\n\t\t});\n\t\tif (postfixBranchResult.disjoint.length === 0) s.fixedVariants.push(postfixBranchResult);\n\t} else if (rHead.kind === \"prefix\" && lHead.kind === \"variadic\" && lHasPostfix) {\n\t\tconst postfixBranchResult = _intersectSequences({\n\t\t\t...s,\n\t\t\tfixedVariants: [],\n\t\t\tl: lTail.map((element) => ({\n\t\t\t\t...element,\n\t\t\t\tkind: \"prefix\"\n\t\t\t}))\n\t\t});\n\t\tif (postfixBranchResult.disjoint.length === 0) s.fixedVariants.push(postfixBranchResult);\n\t}\n\tconst result = intersectOrPipeNodes(lHead.node, rHead.node, s.ctx);\n\tif (result instanceof Disjoint) if (kind === \"prefix\" || kind === \"postfix\") {\n\t\ts.disjoint.push(...result.withPrefixKey(kind === \"prefix\" ? s.result.length : `-${lTail.length + 1}`, elementIsRequired(lHead) && elementIsRequired(rHead) ? \"required\" : \"optional\"));\n\t\ts.result = [...s.result, {\n\t\t\tkind,\n\t\t\tnode: $ark.intrinsic.never.internal\n\t\t}];\n\t} else if (kind === \"optionals\" || kind === \"defaultables\") return s;\n\telse return _intersectSequences({\n\t\t...s,\n\t\tfixedVariants: [],\n\t\tl: lTail.map((element) => ({\n\t\t\t...element,\n\t\t\tkind: \"prefix\"\n\t\t})),\n\t\tr: lTail.map((element) => ({\n\t\t\t...element,\n\t\t\tkind: \"prefix\"\n\t\t}))\n\t});\n\telse if (kind === \"defaultables\") {\n\t\tif (lHead.kind === \"defaultables\" && rHead.kind === \"defaultables\" && lHead.default !== rHead.default) throwParseError(writeDefaultIntersectionMessage(lHead.default, rHead.default));\n\t\ts.result = [...s.result, {\n\t\t\tkind,\n\t\t\tnode: result,\n\t\t\tdefault: lHead.kind === \"defaultables\" ? lHead.default : rHead.kind === \"defaultables\" ? rHead.default : throwInternalError(`Unexpected defaultable intersection from ${lHead.kind} and ${rHead.kind} elements.`)\n\t\t}];\n\t} else s.result = [...s.result, {\n\t\tkind,\n\t\tnode: result\n\t}];\n\tconst lRemaining = s.l.length;\n\tconst rRemaining = s.r.length;\n\tif (lHead.kind !== \"variadic\" || lRemaining >= rRemaining && (rHead.kind === \"variadic\" || rRemaining === 1)) s.l = lTail;\n\tif (rHead.kind !== \"variadic\" || rRemaining >= lRemaining && (lHead.kind === \"variadic\" || lRemaining === 1)) s.r = rTail;\n\treturn _intersectSequences(s);\n};\nconst elementIsRequired = (el) => el.kind === \"prefix\" || el.kind === \"postfix\";\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/structure/structure.js\nconst createStructuralWriter = (childStringProp) => (node) => {\n\tif (node.props.length || node.index) {\n\t\tconst parts = node.index?.map((index) => index[childStringProp]) ?? [];\n\t\tfor (const prop of node.props) parts.push(prop[childStringProp]);\n\t\tif (node.undeclared) parts.push(`+ (undeclared): ${node.undeclared}`);\n\t\tconst objectLiteralDescription = `{ ${parts.join(\", \")} }`;\n\t\treturn node.sequence ? `${objectLiteralDescription} & ${node.sequence.description}` : objectLiteralDescription;\n\t}\n\treturn node.sequence?.description ?? \"{}\";\n};\nconst structuralDescription = createStructuralWriter(\"description\");\nconst structuralExpression = createStructuralWriter(\"expression\");\nconst intersectPropsAndIndex = (l, r, $) => {\n\tconst kind = l.required ? \"required\" : \"optional\";\n\tif (!r.signature.allows(l.key)) return null;\n\tconst value = intersectNodesRoot(l.value, r.value, $);\n\tif (value instanceof Disjoint) return kind === \"optional\" ? $.node(\"optional\", {\n\t\tkey: l.key,\n\t\tvalue: $ark.intrinsic.never.internal\n\t}) : value.withPrefixKey(l.key, l.kind);\n\treturn null;\n};\nconst implementation = implementNode({\n\tkind: \"structure\",\n\thasAssociatedError: false,\n\tnormalize: (schema) => schema,\n\tapplyConfig: (schema, config) => {\n\t\tif (!schema.undeclared && config.onUndeclaredKey !== \"ignore\") return {\n\t\t\t...schema,\n\t\t\tundeclared: config.onUndeclaredKey\n\t\t};\n\t\treturn schema;\n\t},\n\tkeys: {\n\t\trequired: {\n\t\t\tchild: true,\n\t\t\tparse: constraintKeyParser(\"required\"),\n\t\t\treduceIo: (ioKind, inner, nodes) => {\n\t\t\t\tinner.required = append(inner.required, nodes.map((node) => ioKind === \"in\" ? node.rawIn : node.rawOut));\n\t\t\t}\n\t\t},\n\t\toptional: {\n\t\t\tchild: true,\n\t\t\tparse: constraintKeyParser(\"optional\"),\n\t\t\treduceIo: (ioKind, inner, nodes) => {\n\t\t\t\tif (ioKind === \"in\") {\n\t\t\t\t\tinner.optional = nodes.map((node) => node.rawIn);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tfor (const node of nodes) inner[node.outProp.kind] = append(inner[node.outProp.kind], node.outProp.rawOut);\n\t\t\t}\n\t\t},\n\t\tindex: {\n\t\t\tchild: true,\n\t\t\tparse: constraintKeyParser(\"index\")\n\t\t},\n\t\tsequence: {\n\t\t\tchild: true,\n\t\t\tparse: constraintKeyParser(\"sequence\")\n\t\t},\n\t\tundeclared: {\n\t\t\tparse: (behavior) => behavior === \"ignore\" ? void 0 : behavior,\n\t\t\treduceIo: (ioKind, inner, value) => {\n\t\t\t\tif (value === \"reject\") {\n\t\t\t\t\tinner.undeclared = \"reject\";\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tif (ioKind === \"in\") delete inner.undeclared;\n\t\t\t\telse inner.undeclared = \"reject\";\n\t\t\t}\n\t\t}\n\t},\n\tdefaults: { description: structuralDescription },\n\tintersections: { structure: (l, r, ctx) => {\n\t\tconst lInner = { ...l.inner };\n\t\tconst rInner = { ...r.inner };\n\t\tconst disjointResult = new Disjoint();\n\t\tif (l.undeclared) {\n\t\t\tconst lKey = l.keyof();\n\t\t\tfor (const k of r.requiredKeys) if (!lKey.allows(k)) disjointResult.add(\"presence\", $ark.intrinsic.never.internal, r.propsByKey[k].value, { path: [k] });\n\t\t\tif (rInner.optional) rInner.optional = rInner.optional.filter((n) => lKey.allows(n.key));\n\t\t\tif (rInner.index) rInner.index = rInner.index.flatMap((n) => {\n\t\t\t\tif (n.signature.extends(lKey)) return n;\n\t\t\t\tconst indexOverlap = intersectNodesRoot(lKey, n.signature, ctx.$);\n\t\t\t\tif (indexOverlap instanceof Disjoint) return [];\n\t\t\t\tconst normalized = normalizeIndex(indexOverlap, n.value, ctx.$);\n\t\t\t\tif (normalized.required) rInner.required = conflatenate(rInner.required, normalized.required);\n\t\t\t\tif (normalized.optional) rInner.optional = conflatenate(rInner.optional, normalized.optional);\n\t\t\t\treturn normalized.index ?? [];\n\t\t\t});\n\t\t}\n\t\tif (r.undeclared) {\n\t\t\tconst rKey = r.keyof();\n\t\t\tfor (const k of l.requiredKeys) if (!rKey.allows(k)) disjointResult.add(\"presence\", l.propsByKey[k].value, $ark.intrinsic.never.internal, { path: [k] });\n\t\t\tif (lInner.optional) lInner.optional = lInner.optional.filter((n) => rKey.allows(n.key));\n\t\t\tif (lInner.index) lInner.index = lInner.index.flatMap((n) => {\n\t\t\t\tif (n.signature.extends(rKey)) return n;\n\t\t\t\tconst indexOverlap = intersectNodesRoot(rKey, n.signature, ctx.$);\n\t\t\t\tif (indexOverlap instanceof Disjoint) return [];\n\t\t\t\tconst normalized = normalizeIndex(indexOverlap, n.value, ctx.$);\n\t\t\t\tif (normalized.required) lInner.required = conflatenate(lInner.required, normalized.required);\n\t\t\t\tif (normalized.optional) lInner.optional = conflatenate(lInner.optional, normalized.optional);\n\t\t\t\treturn normalized.index ?? [];\n\t\t\t});\n\t\t}\n\t\tconst baseInner = {};\n\t\tif (l.undeclared || r.undeclared) baseInner.undeclared = l.undeclared === \"reject\" || r.undeclared === \"reject\" ? \"reject\" : \"delete\";\n\t\tconst childIntersectionResult = intersectConstraints({\n\t\t\tkind: \"structure\",\n\t\t\tbaseInner,\n\t\t\tl: flattenConstraints(lInner),\n\t\t\tr: flattenConstraints(rInner),\n\t\t\troots: [],\n\t\t\tctx\n\t\t});\n\t\tif (childIntersectionResult instanceof Disjoint) disjointResult.push(...childIntersectionResult);\n\t\tif (disjointResult.length) return disjointResult;\n\t\treturn childIntersectionResult;\n\t} },\n\treduce: (inner, $) => {\n\t\tif (!inner.required && !inner.optional) return;\n\t\tconst seen = Object.create(null);\n\t\tlet updated = false;\n\t\tconst newOptionalProps = inner.optional ? [...inner.optional] : [];\n\t\tif (inner.required) for (let i = 0; i < inner.required.length; i++) {\n\t\t\tconst requiredProp = inner.required[i];\n\t\t\tif (requiredProp.key in seen) throwParseError(writeDuplicateKeyMessage(requiredProp.key));\n\t\t\tseen[requiredProp.key] = true;\n\t\t\tif (inner.index) for (const index of inner.index) {\n\t\t\t\tconst intersection = intersectPropsAndIndex(requiredProp, index, $);\n\t\t\t\tif (intersection instanceof Disjoint) return intersection;\n\t\t\t}\n\t\t}\n\t\tif (inner.optional) for (let i = 0; i < inner.optional.length; i++) {\n\t\t\tconst optionalProp = inner.optional[i];\n\t\t\tif (optionalProp.key in seen) throwParseError(writeDuplicateKeyMessage(optionalProp.key));\n\t\t\tseen[optionalProp.key] = true;\n\t\t\tif (inner.index) for (const index of inner.index) {\n\t\t\t\tconst intersection = intersectPropsAndIndex(optionalProp, index, $);\n\t\t\t\tif (intersection instanceof Disjoint) return intersection;\n\t\t\t\tif (intersection !== null) {\n\t\t\t\t\tnewOptionalProps[i] = intersection;\n\t\t\t\t\tupdated = true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif (updated) return $.node(\"structure\", {\n\t\t\t...inner,\n\t\t\toptional: newOptionalProps\n\t\t}, { prereduced: true });\n\t}\n});\nvar StructureNode = class extends BaseConstraint {\n\timpliedBasis = $ark.intrinsic.object.internal;\n\timpliedSiblings = this.children.flatMap((n) => n.impliedSiblings ?? []);\n\tprops = conflatenate(this.required, this.optional);\n\tpropsByKey = flatMorph(this.props, (i, node) => [node.key, node]);\n\tpropsByKeyReference = registeredReference(this.propsByKey);\n\texpression = structuralExpression(this);\n\trequiredKeys = this.required?.map((node) => node.key) ?? [];\n\toptionalKeys = this.optional?.map((node) => node.key) ?? [];\n\tliteralKeys = [...this.requiredKeys, ...this.optionalKeys];\n\t_keyof;\n\tkeyof() {\n\t\tif (this._keyof) return this._keyof;\n\t\tlet branches = this.$.units(this.literalKeys).branches;\n\t\tif (this.index) for (const { signature } of this.index) branches = branches.concat(signature.branches);\n\t\treturn this._keyof = this.$.node(\"union\", branches);\n\t}\n\tmap(flatMapProp) {\n\t\treturn this.$.node(\"structure\", this.props.flatMap(flatMapProp).reduce((structureInner, mapped) => {\n\t\t\tconst originalProp = this.propsByKey[mapped.key];\n\t\t\tif (isNode(mapped)) {\n\t\t\t\tif (mapped.kind !== \"required\" && mapped.kind !== \"optional\") return throwParseError(`Map result must have kind \"required\" or \"optional\" (was ${mapped.kind})`);\n\t\t\t\tstructureInner[mapped.kind] = append(structureInner[mapped.kind], mapped);\n\t\t\t\treturn structureInner;\n\t\t\t}\n\t\t\tconst mappedKind = mapped.kind ?? originalProp?.kind ?? \"required\";\n\t\t\tconst mappedPropInner = flatMorph(mapped, (k, v) => k in Optional.implementation.keys ? [k, v] : []);\n\t\t\tstructureInner[mappedKind] = append(structureInner[mappedKind], this.$.node(mappedKind, mappedPropInner));\n\t\t\treturn structureInner;\n\t\t}, {}));\n\t}\n\tassertHasKeys(keys) {\n\t\tconst invalidKeys = keys.filter((k) => !typeOrTermExtends(k, this.keyof()));\n\t\tif (invalidKeys.length) return throwParseError(writeInvalidKeysMessage(this.expression, invalidKeys));\n\t}\n\tget(indexer, ...path) {\n\t\tlet value;\n\t\tlet required = false;\n\t\tconst key = indexerToKey(indexer);\n\t\tif ((typeof key === \"string\" || typeof key === \"symbol\") && this.propsByKey[key]) {\n\t\t\tvalue = this.propsByKey[key].value;\n\t\t\trequired = this.propsByKey[key].required;\n\t\t}\n\t\tif (this.index) {\n\t\t\tfor (const n of this.index) if (typeOrTermExtends(key, n.signature)) value = value?.and(n.value) ?? n.value;\n\t\t}\n\t\tif (this.sequence && typeOrTermExtends(key, $ark.intrinsic.nonNegativeIntegerString)) if (hasArkKind(key, \"root\")) {\n\t\t\tif (this.sequence.variadic) value = value?.and(this.sequence.element) ?? this.sequence.element;\n\t\t} else {\n\t\t\tconst index = Number.parseInt(key);\n\t\t\tif (index < this.sequence.prevariadic.length) {\n\t\t\t\tconst fixedElement = this.sequence.prevariadic[index].node;\n\t\t\t\tvalue = value?.and(fixedElement) ?? fixedElement;\n\t\t\t\trequired ||= index < this.sequence.prefixLength;\n\t\t\t} else if (this.sequence.variadic) {\n\t\t\t\tconst nonFixedElement = this.$.node(\"union\", this.sequence.variadicOrPostfix);\n\t\t\t\tvalue = value?.and(nonFixedElement) ?? nonFixedElement;\n\t\t\t}\n\t\t}\n\t\tif (!value) {\n\t\t\tif (this.sequence?.variadic && hasArkKind(key, \"root\") && key.extends($ark.intrinsic.number)) return throwParseError(writeNumberIndexMessage(key.expression, this.sequence.expression));\n\t\t\treturn throwParseError(writeInvalidKeysMessage(this.expression, [key]));\n\t\t}\n\t\tconst result = value.get(...path);\n\t\treturn required ? result : result.or($ark.intrinsic.undefined);\n\t}\n\tpick(...keys) {\n\t\tthis.assertHasKeys(keys);\n\t\treturn this.$.node(\"structure\", this.filterKeys(\"pick\", keys));\n\t}\n\tomit(...keys) {\n\t\tthis.assertHasKeys(keys);\n\t\treturn this.$.node(\"structure\", this.filterKeys(\"omit\", keys));\n\t}\n\toptionalize() {\n\t\tconst { required, ...inner } = this.inner;\n\t\treturn this.$.node(\"structure\", {\n\t\t\t...inner,\n\t\t\toptional: this.props.map((prop) => prop.hasKind(\"required\") ? this.$.node(\"optional\", prop.inner) : prop)\n\t\t});\n\t}\n\trequire() {\n\t\tconst { optional, ...inner } = this.inner;\n\t\treturn this.$.node(\"structure\", {\n\t\t\t...inner,\n\t\t\trequired: this.props.map((prop) => prop.hasKind(\"optional\") ? {\n\t\t\t\tkey: prop.key,\n\t\t\t\tvalue: prop.value\n\t\t\t} : prop)\n\t\t});\n\t}\n\tmerge(r) {\n\t\tconst inner = this.filterKeys(\"omit\", [r.keyof()]);\n\t\tif (r.required) inner.required = append(inner.required, r.required);\n\t\tif (r.optional) inner.optional = append(inner.optional, r.optional);\n\t\tif (r.index) inner.index = append(inner.index, r.index);\n\t\tif (r.sequence) inner.sequence = r.sequence;\n\t\tif (r.undeclared) inner.undeclared = r.undeclared;\n\t\telse delete inner.undeclared;\n\t\treturn this.$.node(\"structure\", inner);\n\t}\n\tfilterKeys(operation, keys) {\n\t\tconst result = makeRootAndArrayPropertiesMutable(this.inner);\n\t\tconst shouldKeep = (key) => {\n\t\t\tconst matchesKey = keys.some((k) => typeOrTermExtends(key, k));\n\t\t\treturn operation === \"pick\" ? matchesKey : !matchesKey;\n\t\t};\n\t\tif (result.required) result.required = result.required.filter((prop) => shouldKeep(prop.key));\n\t\tif (result.optional) result.optional = result.optional.filter((prop) => shouldKeep(prop.key));\n\t\tif (result.index) result.index = result.index.filter((index) => shouldKeep(index.signature));\n\t\treturn result;\n\t}\n\ttraverseAllows = (data, ctx) => this._traverse(\"Allows\", data, ctx);\n\ttraverseApply = (data, ctx) => this._traverse(\"Apply\", data, ctx);\n\t_traverse = (traversalKind, data, ctx) => {\n\t\tconst errorCount = ctx?.currentErrorCount ?? 0;\n\t\tfor (let i = 0; i < this.props.length; i++) if (traversalKind === \"Allows\") {\n\t\t\tif (!this.props[i].traverseAllows(data, ctx)) return false;\n\t\t} else {\n\t\t\tthis.props[i].traverseApply(data, ctx);\n\t\t\tif (ctx.failFast && ctx.currentErrorCount > errorCount) return false;\n\t\t}\n\t\tif (this.sequence) if (traversalKind === \"Allows\") {\n\t\t\tif (!this.sequence.traverseAllows(data, ctx)) return false;\n\t\t} else {\n\t\t\tthis.sequence.traverseApply(data, ctx);\n\t\t\tif (ctx.failFast && ctx.currentErrorCount > errorCount) return false;\n\t\t}\n\t\tif (this.index || this.undeclared === \"reject\") {\n\t\t\tconst keys = Object.keys(data);\n\t\t\tkeys.push(...Object.getOwnPropertySymbols(data));\n\t\t\tfor (let i = 0; i < keys.length; i++) {\n\t\t\t\tconst k = keys[i];\n\t\t\t\tif (this.index) {\n\t\t\t\t\tfor (const node of this.index) if (node.signature.traverseAllows(k, ctx)) if (traversalKind === \"Allows\") {\n\t\t\t\t\t\tif (!traverseKey(k, () => node.value.traverseAllows(data[k], ctx), ctx)) return false;\n\t\t\t\t\t} else {\n\t\t\t\t\t\ttraverseKey(k, () => node.value.traverseApply(data[k], ctx), ctx);\n\t\t\t\t\t\tif (ctx.failFast && ctx.currentErrorCount > errorCount) return false;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (this.undeclared === \"reject\" && !this.declaresKey(k)) {\n\t\t\t\t\tif (traversalKind === \"Allows\") return false;\n\t\t\t\t\tctx.errorFromNodeContext({\n\t\t\t\t\t\tcode: \"predicate\",\n\t\t\t\t\t\texpected: \"removed\",\n\t\t\t\t\t\tactual: \"\",\n\t\t\t\t\t\trelativePath: [k],\n\t\t\t\t\t\tmeta: this.meta\n\t\t\t\t\t});\n\t\t\t\t\tif (ctx.failFast) return false;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif (this.structuralMorph && ctx && !ctx.hasError()) ctx.queueMorphs([this.structuralMorph]);\n\t\treturn true;\n\t};\n\tget defaultable() {\n\t\treturn this.cacheGetter(\"defaultable\", this.optional?.filter((o) => o.hasDefault()) ?? []);\n\t}\n\tdeclaresKey = (k) => k in this.propsByKey || this.index?.some((n) => n.signature.allows(k)) || this.sequence !== void 0 && $ark.intrinsic.nonNegativeIntegerString.allows(k);\n\t_compileDeclaresKey(js) {\n\t\tconst parts = [];\n\t\tif (this.props.length) parts.push(`k in ${this.propsByKeyReference}`);\n\t\tif (this.index) for (const index of this.index) parts.push(js.invoke(index.signature, {\n\t\t\tkind: \"Allows\",\n\t\t\targ: \"k\"\n\t\t}));\n\t\tif (this.sequence) parts.push(\"$ark.intrinsic.nonNegativeIntegerString.allows(k)\");\n\t\treturn parts.join(\" || \") || \"false\";\n\t}\n\tget structuralMorph() {\n\t\treturn this.cacheGetter(\"structuralMorph\", getPossibleMorph(this));\n\t}\n\tstructuralMorphRef = this.structuralMorph && registeredReference(this.structuralMorph);\n\tcompile(js) {\n\t\tif (js.traversalKind === \"Apply\") js.initializeErrorCount();\n\t\tfor (const prop of this.props) {\n\t\t\tjs.check(prop);\n\t\t\tif (js.traversalKind === \"Apply\") js.returnIfFailFast();\n\t\t}\n\t\tif (this.sequence) {\n\t\t\tjs.check(this.sequence);\n\t\t\tif (js.traversalKind === \"Apply\") js.returnIfFailFast();\n\t\t}\n\t\tif (this.index || this.undeclared === \"reject\") {\n\t\t\tjs.const(\"keys\", \"Object.keys(data)\");\n\t\t\tjs.line(\"keys.push(...Object.getOwnPropertySymbols(data))\");\n\t\t\tjs.for(\"i < keys.length\", () => this.compileExhaustiveEntry(js));\n\t\t}\n\t\tif (js.traversalKind === \"Allows\") return js.return(true);\n\t\tif (this.structuralMorphRef) js.if(\"ctx && !ctx.hasError()\", () => {\n\t\t\tjs.line(`ctx.queueMorphs([`);\n\t\t\tprecompileMorphs(js, this);\n\t\t\treturn js.line(\"])\");\n\t\t});\n\t}\n\tcompileExhaustiveEntry(js) {\n\t\tjs.const(\"k\", \"keys[i]\");\n\t\tif (this.index) for (const node of this.index) js.if(`${js.invoke(node.signature, {\n\t\t\targ: \"k\",\n\t\t\tkind: \"Allows\"\n\t\t})}`, () => js.traverseKey(\"k\", \"data[k]\", node.value));\n\t\tif (this.undeclared === \"reject\") js.if(`!(${this._compileDeclaresKey(js)})`, () => {\n\t\t\tif (js.traversalKind === \"Allows\") return js.return(false);\n\t\t\treturn js.line(`ctx.errorFromNodeContext({ code: \"predicate\", expected: \"removed\", actual: \"\", relativePath: [k], meta: ${this.compiledMeta} })`).if(\"ctx.failFast\", () => js.return());\n\t\t});\n\t\treturn js;\n\t}\n\treduceJsonSchema(schema, ctx) {\n\t\tswitch (schema.type) {\n\t\t\tcase \"object\": return this.reduceObjectJsonSchema(schema, ctx);\n\t\t\tcase \"array\":\n\t\t\t\tconst arraySchema = this.sequence?.reduceJsonSchema(schema, ctx) ?? schema;\n\t\t\t\tif (this.props.length || this.index) return ctx.fallback.arrayObject({\n\t\t\t\t\tcode: \"arrayObject\",\n\t\t\t\t\tbase: arraySchema,\n\t\t\t\t\tobject: this.reduceObjectJsonSchema({ type: \"object\" }, ctx)\n\t\t\t\t});\n\t\t\t\treturn arraySchema;\n\t\t\tdefault: return ToJsonSchema.throwInternalOperandError(\"structure\", schema);\n\t\t}\n\t}\n\treduceObjectJsonSchema(schema, ctx) {\n\t\tif (this.props.length) {\n\t\t\tschema.properties = {};\n\t\t\tfor (const prop of this.props) {\n\t\t\t\tconst valueSchema = prop.value.toJsonSchemaRecurse(ctx);\n\t\t\t\tif (typeof prop.key === \"symbol\") {\n\t\t\t\t\tctx.fallback.symbolKey({\n\t\t\t\t\t\tcode: \"symbolKey\",\n\t\t\t\t\t\tbase: schema,\n\t\t\t\t\t\tkey: prop.key,\n\t\t\t\t\t\tvalue: valueSchema,\n\t\t\t\t\t\toptional: prop.optional\n\t\t\t\t\t});\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\tif (prop.hasDefault()) {\n\t\t\t\t\tconst value = typeof prop.default === \"function\" ? prop.default() : prop.default;\n\t\t\t\t\tvalueSchema.default = $ark.intrinsic.jsonData.allows(value) ? value : ctx.fallback.defaultValue({\n\t\t\t\t\t\tcode: \"defaultValue\",\n\t\t\t\t\t\tbase: valueSchema,\n\t\t\t\t\t\tvalue\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\tschema.properties[prop.key] = valueSchema;\n\t\t\t}\n\t\t\tif (this.requiredKeys.length && schema.properties) schema.required = this.requiredKeys.filter((k) => typeof k === \"string\" && k in schema.properties);\n\t\t}\n\t\tif (this.index) for (const index of this.index) {\n\t\t\tconst valueJsonSchema = index.value.toJsonSchemaRecurse(ctx);\n\t\t\tif (index.signature.equals($ark.intrinsic.string)) {\n\t\t\t\tschema.additionalProperties = valueJsonSchema;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tfor (const keyBranch of index.signature.branches) {\n\t\t\t\tif (!keyBranch.extends($ark.intrinsic.string)) {\n\t\t\t\t\tschema = ctx.fallback.symbolKey({\n\t\t\t\t\t\tcode: \"symbolKey\",\n\t\t\t\t\t\tbase: schema,\n\t\t\t\t\t\tkey: null,\n\t\t\t\t\t\tvalue: valueJsonSchema,\n\t\t\t\t\t\toptional: false\n\t\t\t\t\t});\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\tlet keySchema = { type: \"string\" };\n\t\t\t\tif (keyBranch.hasKind(\"morph\")) keySchema = ctx.fallback.morph({\n\t\t\t\t\tcode: \"morph\",\n\t\t\t\t\tbase: keyBranch.rawIn.toJsonSchemaRecurse(ctx),\n\t\t\t\t\tout: keyBranch.rawOut.toJsonSchemaRecurse(ctx)\n\t\t\t\t});\n\t\t\t\tif (!keyBranch.hasKind(\"intersection\")) return throwInternalError(`Unexpected index branch kind ${keyBranch.kind}.`);\n\t\t\t\tconst { pattern } = keyBranch.inner;\n\t\t\t\tif (pattern) {\n\t\t\t\t\tconst keySchemaWithPattern = Object.assign(keySchema, { pattern: pattern[0].rule });\n\t\t\t\t\tfor (let i = 1; i < pattern.length; i++) keySchema = ctx.fallback.patternIntersection({\n\t\t\t\t\t\tcode: \"patternIntersection\",\n\t\t\t\t\t\tbase: keySchemaWithPattern,\n\t\t\t\t\t\tpattern: pattern[i].rule\n\t\t\t\t\t});\n\t\t\t\t\tschema.patternProperties ??= {};\n\t\t\t\t\tschema.patternProperties[keySchemaWithPattern.pattern] = valueJsonSchema;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif (this.undeclared && !schema.additionalProperties) schema.additionalProperties = false;\n\t\treturn schema;\n\t}\n};\nconst defaultableMorphsCache = {};\nconst constructStructuralMorphCacheKey = (node) => {\n\tlet cacheKey = \"\";\n\tfor (let i = 0; i < node.defaultable.length; i++) cacheKey += node.defaultable[i].defaultValueMorphRef;\n\tif (node.sequence?.defaultValueMorphsReference) cacheKey += node.sequence?.defaultValueMorphsReference;\n\tif (node.undeclared === \"delete\") {\n\t\tcacheKey += \"delete !(\";\n\t\tif (node.required) for (const n of node.required) cacheKey += n.compiledKey + \" | \";\n\t\tif (node.optional) for (const n of node.optional) cacheKey += n.compiledKey + \" | \";\n\t\tif (node.index) for (const index of node.index) cacheKey += index.signature.id + \" | \";\n\t\tif (node.sequence) if (node.sequence.maxLength === null) cacheKey += intrinsic.nonNegativeIntegerString.id;\n\t\telse for (let i = 0; i < node.sequence.tuple.length; i++) cacheKey += i + \" | \";\n\t\tcacheKey += \")\";\n\t}\n\treturn cacheKey;\n};\nconst getPossibleMorph = (node) => {\n\tconst cacheKey = constructStructuralMorphCacheKey(node);\n\tif (!cacheKey) return void 0;\n\tif (defaultableMorphsCache[cacheKey]) return defaultableMorphsCache[cacheKey];\n\tconst $arkStructuralMorph = (data, ctx) => {\n\t\tfor (let i = 0; i < node.defaultable.length; i++) if (!(node.defaultable[i].key in data)) node.defaultable[i].defaultValueMorph(data, ctx);\n\t\tif (node.sequence?.defaultables) for (let i = data.length - node.sequence.prefixLength; i < node.sequence.defaultables.length; i++) node.sequence.defaultValueMorphs[i](data, ctx);\n\t\tif (node.undeclared === \"delete\") {\n\t\t\tfor (const k in data) if (!node.declaresKey(k)) delete data[k];\n\t\t}\n\t\treturn data;\n\t};\n\treturn defaultableMorphsCache[cacheKey] = $arkStructuralMorph;\n};\nconst precompileMorphs = (js, node) => {\n\tconst args = `(data${node.defaultable.some((node) => node.defaultValueMorph.length === 2) || node.sequence?.defaultValueMorphs.some((morph) => morph.length === 2) ? \", ctx\" : \"\"})`;\n\treturn js.block(`${args} => `, (js) => {\n\t\tfor (let i = 0; i < node.defaultable.length; i++) {\n\t\t\tconst { serializedKey, defaultValueMorphRef } = node.defaultable[i];\n\t\t\tjs.if(`!(${serializedKey} in data)`, (js) => js.line(`${defaultValueMorphRef}${args}`));\n\t\t}\n\t\tif (node.sequence?.defaultables) js.for(`i < ${node.sequence.defaultables.length}`, (js) => js.line(`${node.sequence.defaultValueMorphsReference}[i]${args}`), `data.length - ${node.sequence.prefixLength}`);\n\t\tif (node.undeclared === \"delete\") js.forIn(\"data\", (js) => js.if(`!(${node._compileDeclaresKey(js)})`, (js) => js.line(`delete data[k]`)));\n\t\treturn js.return(\"data\");\n\t});\n};\nconst Structure = {\n\timplementation,\n\tNode: StructureNode\n};\nconst indexerToKey = (indexable) => {\n\tif (hasArkKind(indexable, \"root\") && indexable.hasKind(\"unit\")) indexable = indexable.unit;\n\tif (typeof indexable === \"number\") indexable = `${indexable}`;\n\treturn indexable;\n};\nconst writeNumberIndexMessage = (indexExpression, sequenceExpression) => `${indexExpression} is not allowed as an array index on ${sequenceExpression}. Use the 'nonNegativeIntegerString' keyword instead.`;\n/** extract enumerable named props from an index signature */\nconst normalizeIndex = (signature, value, $) => {\n\tconst [enumerableBranches, nonEnumerableBranches] = spliterate(signature.branches, (k) => k.hasKind(\"unit\"));\n\tif (!enumerableBranches.length) return { index: $.node(\"index\", {\n\t\tsignature,\n\t\tvalue\n\t}) };\n\tconst normalized = {};\n\tfor (const n of enumerableBranches) {\n\t\tconst prop = $.node(\"required\", {\n\t\t\tkey: n.unit,\n\t\t\tvalue\n\t\t});\n\t\tnormalized[prop.kind] = append(normalized[prop.kind], prop);\n\t}\n\tif (nonEnumerableBranches.length) normalized.index = $.node(\"index\", {\n\t\tsignature: nonEnumerableBranches,\n\t\tvalue\n\t});\n\treturn normalized;\n};\nconst typeKeyToString = (k) => hasArkKind(k, \"root\") ? k.expression : printable(k);\nconst writeInvalidKeysMessage = (o, keys) => `Key${keys.length === 1 ? \"\" : \"s\"} ${keys.map(typeKeyToString).join(\", \")} ${keys.length === 1 ? \"does\" : \"do\"} not exist on ${o}`;\nconst writeDuplicateKeyMessage = (key) => `Duplicate key ${compileSerializedValue(key)}`;\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/kinds.js\nconst nodeImplementationsByKind = {\n\t...boundImplementationsByKind,\n\talias: Alias.implementation,\n\tdomain: Domain.implementation,\n\tunit: Unit.implementation,\n\tproto: Proto.implementation,\n\tunion: Union.implementation,\n\tmorph: Morph.implementation,\n\tintersection: Intersection.implementation,\n\tdivisor: Divisor.implementation,\n\tpattern: Pattern.implementation,\n\tpredicate: Predicate.implementation,\n\trequired: Required$1.implementation,\n\toptional: Optional.implementation,\n\tindex: Index.implementation,\n\tsequence: Sequence.implementation,\n\tstructure: Structure.implementation\n};\n$ark.defaultConfig = withAlphabetizedKeys(Object.assign(flatMorph(nodeImplementationsByKind, (kind, implementation) => [kind, implementation.defaults]), {\n\tjitless: envHasCsp(),\n\tclone: deepClone,\n\tonUndeclaredKey: \"ignore\",\n\texactOptionalPropertyTypes: true,\n\tnumberAllowsNaN: false,\n\tdateAllowsInvalid: false,\n\tonFail: null,\n\tkeywords: {},\n\ttoJsonSchema: ToJsonSchema.defaultConfig\n}));\n$ark.resolvedConfig = mergeConfigs($ark.defaultConfig, $ark.config);\nconst nodeClassesByKind = {\n\t...boundClassesByKind,\n\talias: Alias.Node,\n\tdomain: Domain.Node,\n\tunit: Unit.Node,\n\tproto: Proto.Node,\n\tunion: Union.Node,\n\tmorph: Morph.Node,\n\tintersection: Intersection.Node,\n\tdivisor: Divisor.Node,\n\tpattern: Pattern.Node,\n\tpredicate: Predicate.Node,\n\trequired: Required$1.Node,\n\toptional: Optional.Node,\n\tindex: Index.Node,\n\tsequence: Sequence.Node,\n\tstructure: Structure.Node\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/module.js\nvar RootModule = class extends DynamicBase {\n\tget [arkKind]() {\n\t\treturn \"module\";\n\t}\n};\nconst bindModule = (module, $) => new RootModule(flatMorph(module, (alias, value) => [alias, hasArkKind(value, \"module\") ? bindModule(value, $) : $.bindReference(value)]));\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/scope.js\nconst schemaBranchesOf = (schema) => isArray(schema) ? schema : \"branches\" in schema && isArray(schema.branches) ? schema.branches : void 0;\nconst throwMismatchedNodeRootError = (expected, actual) => throwParseError(`Node of kind ${actual} is not valid as a ${expected} definition`);\nconst writeDuplicateAliasError = (alias) => `#${alias} duplicates public alias ${alias}`;\nconst scopesByName = {};\n$ark.ambient ??= {};\nlet rawUnknownUnion;\nconst rootScopeFnName = \"function $\";\nconst precompile = (references) => bindPrecompilation(references, precompileReferences(references));\nconst bindPrecompilation = (references, precompiler, owningScope) => {\n\tconst precompilation = precompiler.write(rootScopeFnName, 4);\n\tconst compiledTraversals = precompiler.compile()();\n\tfor (const node of references) {\n\t\tif (node.precompilation && (!owningScope || node.$ !== owningScope)) continue;\n\t\tnode.traverseAllows = compiledTraversals[`${node.id}Allows`].bind(compiledTraversals);\n\t\tif (node.isRoot() && !node.allowsRequiresContext) node.allows = node.traverseAllows;\n\t\tnode.traverseApply = compiledTraversals[`${node.id}Apply`].bind(compiledTraversals);\n\t\tif (compiledTraversals[`${node.id}Optimistic`]) node.traverseOptimistic = compiledTraversals[`${node.id}Optimistic`].bind(compiledTraversals);\n\t\tnode.precompilation = precompilation;\n\t}\n};\nconst precompileReferences = (references) => new CompiledFunction().return(references.reduce((js, node) => {\n\tconst allowsCompiler = new NodeCompiler({ kind: \"Allows\" }).indent();\n\tnode.compile(allowsCompiler);\n\tconst allowsJs = allowsCompiler.write(`${node.id}Allows`);\n\tconst applyCompiler = new NodeCompiler({ kind: \"Apply\" }).indent();\n\tnode.compile(applyCompiler);\n\tconst result = `${js}${allowsJs},\\n${applyCompiler.write(`${node.id}Apply`)},\\n`;\n\tif (!node.hasKind(\"union\")) return result;\n\tconst optimisticCompiler = new NodeCompiler({\n\t\tkind: \"Allows\",\n\t\toptimistic: true\n\t}).indent();\n\tnode.compile(optimisticCompiler);\n\treturn `${result}${optimisticCompiler.write(`${node.id}Optimistic`)},\\n`;\n}, \"{\\n\") + \"}\");\nvar BaseScope = class {\n\tconfig;\n\tresolvedConfig;\n\tname;\n\tget [arkKind]() {\n\t\treturn \"scope\";\n\t}\n\treferencesById = {};\n\treferences = [];\n\tresolutions = {};\n\texportedNames = [];\n\taliases = {};\n\tresolved = false;\n\tnodesByHash = {};\n\tintrinsic;\n\tconstructor(def, config) {\n\t\tthis.config = mergeConfigs($ark.config, config);\n\t\tthis.resolvedConfig = mergeConfigs($ark.resolvedConfig, config);\n\t\tthis.name = this.resolvedConfig.name ?? `anonymousScope${Object.keys(scopesByName).length}`;\n\t\tif (this.name in scopesByName) throwParseError(`A Scope already named ${this.name} already exists`);\n\t\tscopesByName[this.name] = this;\n\t\tconst aliasEntries = Object.entries(def).map((entry) => this.preparseOwnAliasEntry(...entry));\n\t\tfor (const [k, v] of aliasEntries) {\n\t\t\tlet name = k;\n\t\t\tif (k[0] === \"#\") {\n\t\t\t\tname = k.slice(1);\n\t\t\t\tif (name in this.aliases) throwParseError(writeDuplicateAliasError(name));\n\t\t\t\tthis.aliases[name] = v;\n\t\t\t} else {\n\t\t\t\tif (name in this.aliases) throwParseError(writeDuplicateAliasError(k));\n\t\t\t\tthis.aliases[name] = v;\n\t\t\t\tthis.exportedNames.push(name);\n\t\t\t}\n\t\t\tif (!hasArkKind(v, \"module\") && !hasArkKind(v, \"generic\") && !isThunk(v)) {\n\t\t\t\tconst preparsed = this.preparseOwnDefinitionFormat(v, { alias: name });\n\t\t\t\tthis.resolutions[name] = hasArkKind(preparsed, \"root\") ? this.bindReference(preparsed) : this.createParseContext(preparsed).id;\n\t\t\t}\n\t\t}\n\t\trawUnknownUnion ??= this.node(\"union\", { branches: [\n\t\t\t\"string\",\n\t\t\t\"number\",\n\t\t\t\"object\",\n\t\t\t\"bigint\",\n\t\t\t\"symbol\",\n\t\t\t{ unit: true },\n\t\t\t{ unit: false },\n\t\t\t{ unit: void 0 },\n\t\t\t{ unit: null }\n\t\t] }, { prereduced: true });\n\t\tthis.nodesByHash[rawUnknownUnion.hash] = this.node(\"intersection\", {}, { prereduced: true });\n\t\tthis.intrinsic = $ark.intrinsic ? flatMorph($ark.intrinsic, (k, v) => k.startsWith(\"json\") ? [] : [k, this.bindReference(v)]) : {};\n\t}\n\tcacheGetter(name, value) {\n\t\tObject.defineProperty(this, name, { value });\n\t\treturn value;\n\t}\n\tget internal() {\n\t\treturn this;\n\t}\n\t_json;\n\tget json() {\n\t\tif (!this._json) this.export();\n\t\treturn this._json;\n\t}\n\tdefineSchema(def) {\n\t\treturn def;\n\t}\n\tgeneric = (...params) => {\n\t\tconst $ = this;\n\t\treturn (def, possibleHkt) => new GenericRoot(params, possibleHkt ? new LazyGenericBody(def) : def, $, $, possibleHkt ?? null);\n\t};\n\tunits = (values, opts) => {\n\t\tconst uniqueValues = [];\n\t\tfor (const value of values) if (!uniqueValues.includes(value)) uniqueValues.push(value);\n\t\tconst branches = uniqueValues.map((unit) => this.node(\"unit\", { unit }, opts));\n\t\treturn this.node(\"union\", branches, {\n\t\t\t...opts,\n\t\t\tprereduced: true\n\t\t});\n\t};\n\tlazyResolutions = [];\n\tlazilyResolve(resolve, syntheticAlias) {\n\t\tconst node = this.node(\"alias\", {\n\t\t\treference: syntheticAlias ?? \"synthetic\",\n\t\t\tresolve\n\t\t}, { prereduced: true });\n\t\tif (!this.resolved) this.lazyResolutions.push(node);\n\t\treturn node;\n\t}\n\tschema = (schema, opts) => this.finalize(this.parseSchema(schema, opts));\n\tparseSchema = (schema, opts) => this.node(schemaKindOf(schema), schema, opts);\n\tpreparseNode(kinds, schema, opts) {\n\t\tlet kind = typeof kinds === \"string\" ? kinds : schemaKindOf(schema, kinds);\n\t\tif (isNode(schema) && schema.kind === kind) return schema;\n\t\tif (kind === \"alias\" && !opts?.prereduced) {\n\t\t\tconst { reference } = Alias.implementation.normalize(schema, this);\n\t\t\tif (reference.startsWith(\"$\")) {\n\t\t\t\tconst resolution = this.resolveRoot(reference.slice(1));\n\t\t\t\tschema = resolution;\n\t\t\t\tkind = resolution.kind;\n\t\t\t}\n\t\t} else if (kind === \"union\" && hasDomain(schema, \"object\")) {\n\t\t\tconst branches = schemaBranchesOf(schema);\n\t\t\tif (branches?.length === 1) {\n\t\t\t\tschema = branches[0];\n\t\t\t\tkind = schemaKindOf(schema);\n\t\t\t}\n\t\t}\n\t\tif (isNode(schema) && schema.kind === kind) return schema;\n\t\tconst normalizedSchema = nodeImplementationsByKind[kind].normalize?.(schema, this) ?? schema;\n\t\tif (isNode(normalizedSchema)) return normalizedSchema.kind === kind ? normalizedSchema : throwMismatchedNodeRootError(kind, normalizedSchema.kind);\n\t\treturn {\n\t\t\t...opts,\n\t\t\t$: this,\n\t\t\tkind,\n\t\t\tdef: normalizedSchema,\n\t\t\tprefix: opts.alias ?? kind\n\t\t};\n\t}\n\tbindReference(reference) {\n\t\tlet bound;\n\t\tif (isNode(reference)) bound = reference.$ === this ? reference : new reference.constructor(reference.attachments, this);\n\t\telse bound = reference.$ === this ? reference : new GenericRoot(reference.params, reference.bodyDef, reference.$, this, reference.hkt);\n\t\tif (!this.resolved) Object.assign(this.referencesById, bound.referencesById);\n\t\treturn bound;\n\t}\n\tresolveRoot(name) {\n\t\treturn this.maybeResolveRoot(name) ?? throwParseError(writeUnresolvableMessage(name));\n\t}\n\tmaybeResolveRoot(name) {\n\t\tconst result = this.maybeResolve(name);\n\t\tif (hasArkKind(result, \"generic\")) return;\n\t\treturn result;\n\t}\n\t/** If name is a valid reference to a submodule alias, return its resolution */\n\tmaybeResolveSubalias(name) {\n\t\treturn maybeResolveSubalias(this.aliases, name) ?? maybeResolveSubalias(this.ambient, name);\n\t}\n\tget ambient() {\n\t\treturn $ark.ambient;\n\t}\n\tmaybeResolve(name) {\n\t\tconst cached = this.resolutions[name];\n\t\tif (cached) {\n\t\t\tif (typeof cached !== \"string\") return this.bindReference(cached);\n\t\t\tconst v = nodesByRegisteredId[cached];\n\t\t\tif (hasArkKind(v, \"root\")) return this.resolutions[name] = v;\n\t\t\tif (hasArkKind(v, \"context\")) {\n\t\t\t\tif (v.phase === \"resolving\") return this.node(\"alias\", { reference: `$${name}` }, { prereduced: true });\n\t\t\t\tif (v.phase === \"resolved\") return throwInternalError(`Unexpected resolved context for was uncached by its scope: ${printable(v)}`);\n\t\t\t\tv.phase = \"resolving\";\n\t\t\t\tconst node = this.bindReference(this.parseOwnDefinitionFormat(v.def, v));\n\t\t\t\tv.phase = \"resolved\";\n\t\t\t\tnodesByRegisteredId[node.id] = node;\n\t\t\t\tnodesByRegisteredId[v.id] = node;\n\t\t\t\treturn this.resolutions[name] = node;\n\t\t\t}\n\t\t\treturn throwInternalError(`Unexpected nodesById entry for ${cached}: ${printable(v)}`);\n\t\t}\n\t\tlet def = this.aliases[name] ?? this.ambient?.[name];\n\t\tif (!def) return this.maybeResolveSubalias(name);\n\t\tdef = this.normalizeRootScopeValue(def);\n\t\tif (hasArkKind(def, \"generic\")) return this.resolutions[name] = this.bindReference(def);\n\t\tif (hasArkKind(def, \"module\")) {\n\t\t\tif (!def.root) throwParseError(writeMissingSubmoduleAccessMessage(name));\n\t\t\treturn this.resolutions[name] = this.bindReference(def.root);\n\t\t}\n\t\treturn this.resolutions[name] = this.parse(def, { alias: name });\n\t}\n\tcreateParseContext(input) {\n\t\tconst id = input.id ?? registerNodeId(input.prefix);\n\t\treturn nodesByRegisteredId[id] = Object.assign(input, {\n\t\t\t[arkKind]: \"context\",\n\t\t\t$: this,\n\t\t\tid,\n\t\t\tphase: \"unresolved\"\n\t\t});\n\t}\n\ttraversal(root) {\n\t\treturn new Traversal(root, this.resolvedConfig);\n\t}\n\timport(...names) {\n\t\treturn new RootModule(flatMorph(this.export(...names), (alias, value) => [`#${alias}`, value]));\n\t}\n\tprecompilation;\n\t_exportedResolutions;\n\t_exports;\n\texport(...names) {\n\t\tif (!this._exports) {\n\t\t\tthis._exports = {};\n\t\t\tfor (const name of this.exportedNames) {\n\t\t\t\tconst def = this.aliases[name];\n\t\t\t\tthis._exports[name] = hasArkKind(def, \"module\") ? bindModule(def, this) : bootstrapAliasReferences(this.maybeResolve(name));\n\t\t\t}\n\t\t\tfor (const node of this.lazyResolutions) node.resolution;\n\t\t\tthis._exportedResolutions = resolutionsOfModule(this, this._exports);\n\t\t\tthis._json = resolutionsToJson(this._exportedResolutions);\n\t\t\tObject.assign(this.resolutions, this._exportedResolutions);\n\t\t\tthis.references = Object.values(this.referencesById);\n\t\t\tif (!this.resolvedConfig.jitless) {\n\t\t\t\tconst precompiler = precompileReferences(this.references);\n\t\t\t\tthis.precompilation = precompiler.write(rootScopeFnName, 4);\n\t\t\t\tbindPrecompilation(this.references, precompiler, this);\n\t\t\t}\n\t\t\tthis.resolved = true;\n\t\t}\n\t\treturn new RootModule(flatMorph(names.length ? names : this.exportedNames, (_, name) => [name, this._exports[name]]));\n\t}\n\tresolve(name) {\n\t\treturn this.export()[name];\n\t}\n\tnode = (kinds, nodeSchema, opts = {}) => {\n\t\tconst ctxOrNode = this.preparseNode(kinds, nodeSchema, opts);\n\t\tif (isNode(ctxOrNode)) return this.bindReference(ctxOrNode);\n\t\tconst ctx = this.createParseContext(ctxOrNode);\n\t\tconst node = parseNode(ctx);\n\t\tconst bound = this.bindReference(node);\n\t\treturn nodesByRegisteredId[ctx.id] = bound;\n\t};\n\tparse = (def, opts = {}) => this.finalize(this.parseDefinition(def, opts));\n\tparseDefinition(def, opts = {}) {\n\t\tif (hasArkKind(def, \"root\")) return this.bindReference(def);\n\t\tconst ctxInputOrNode = this.preparseOwnDefinitionFormat(def, opts);\n\t\tif (hasArkKind(ctxInputOrNode, \"root\")) return this.bindReference(ctxInputOrNode);\n\t\tconst ctx = this.createParseContext(ctxInputOrNode);\n\t\tnodesByRegisteredId[ctx.id] = ctx;\n\t\tlet node = this.bindReference(this.parseOwnDefinitionFormat(def, ctx));\n\t\tif (node.isCyclic) node = withId(node, ctx.id);\n\t\tnodesByRegisteredId[ctx.id] = node;\n\t\treturn node;\n\t}\n\tfinalize(node) {\n\t\tbootstrapAliasReferences(node);\n\t\tif (!node.precompilation && !this.resolvedConfig.jitless) precompile(node.references);\n\t\treturn node;\n\t}\n};\nvar SchemaScope = class extends BaseScope {\n\tparseOwnDefinitionFormat(def, ctx) {\n\t\treturn parseNode(ctx);\n\t}\n\tpreparseOwnDefinitionFormat(schema, opts) {\n\t\treturn this.preparseNode(schemaKindOf(schema), schema, opts);\n\t}\n\tpreparseOwnAliasEntry(k, v) {\n\t\treturn [k, v];\n\t}\n\tnormalizeRootScopeValue(v) {\n\t\treturn v;\n\t}\n};\nconst bootstrapAliasReferences = (resolution) => {\n\tconst aliases = resolution.references.filter((node) => node.hasKind(\"alias\"));\n\tfor (const aliasNode of aliases) {\n\t\tObject.assign(aliasNode.referencesById, aliasNode.resolution.referencesById);\n\t\tfor (const ref of resolution.references) if (aliasNode.id in ref.referencesById) Object.assign(ref.referencesById, aliasNode.referencesById);\n\t}\n\treturn resolution;\n};\nconst resolutionsToJson = (resolutions) => flatMorph(resolutions, (k, v) => [k, hasArkKind(v, \"root\") || hasArkKind(v, \"generic\") ? v.json : hasArkKind(v, \"module\") ? resolutionsToJson(v) : throwInternalError(`Unexpected resolution ${printable(v)}`)]);\nconst maybeResolveSubalias = (base, name) => {\n\tconst dotIndex = name.indexOf(\".\");\n\tif (dotIndex === -1) return;\n\tconst dotPrefix = name.slice(0, dotIndex);\n\tconst prefixSchema = base[dotPrefix];\n\tif (prefixSchema === void 0) return;\n\tif (!hasArkKind(prefixSchema, \"module\")) return throwParseError(writeNonSubmoduleDotMessage(dotPrefix));\n\tconst subalias = name.slice(dotIndex + 1);\n\tconst resolution = prefixSchema[subalias];\n\tif (resolution === void 0) return maybeResolveSubalias(prefixSchema, subalias);\n\tif (hasArkKind(resolution, \"root\") || hasArkKind(resolution, \"generic\")) return resolution;\n\tif (hasArkKind(resolution, \"module\")) return resolution.root ?? throwParseError(writeMissingSubmoduleAccessMessage(name));\n\tthrowInternalError(`Unexpected resolution for alias '${name}': ${printable(resolution)}`);\n};\nconst schemaScope = (aliases, config) => new SchemaScope(aliases, config);\nconst rootSchemaScope = new SchemaScope({});\nconst resolutionsOfModule = ($, typeSet) => {\n\tconst result = {};\n\tfor (const k in typeSet) {\n\t\tconst v = typeSet[k];\n\t\tif (hasArkKind(v, \"module\")) {\n\t\t\tconst prefixedResolutions = flatMorph(resolutionsOfModule($, v), (innerK, innerV) => [`${k}.${innerK}`, innerV]);\n\t\t\tObject.assign(result, prefixedResolutions);\n\t\t} else if (hasArkKind(v, \"root\") || hasArkKind(v, \"generic\")) result[k] = v;\n\t\telse throwInternalError(`Unexpected scope resolution ${printable(v)}`);\n\t}\n\treturn result;\n};\nconst writeUnresolvableMessage = (token) => `'${token}' is unresolvable`;\nconst writeNonSubmoduleDotMessage = (name) => `'${name}' must reference a module to be accessed using dot syntax`;\nconst writeMissingSubmoduleAccessMessage = (name) => `Reference to submodule '${name}' must specify an alias`;\nrootSchemaScope.export();\nconst rootSchema = rootSchemaScope.schema;\nconst node = rootSchemaScope.node;\nrootSchemaScope.defineSchema;\nconst genericNode = rootSchemaScope.generic;\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/structure/shared.js\nconst arrayIndexSource = `^(?:0|[1-9]\\\\d*)$`;\nregisteredReference(new RegExp(arrayIndexSource));\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/intrinsic.js\nconst intrinsicBases = schemaScope({\n\tbigint: \"bigint\",\n\tboolean: [{ unit: false }, { unit: true }],\n\tfalse: { unit: false },\n\tnever: [],\n\tnull: { unit: null },\n\tnumber: \"number\",\n\tobject: \"object\",\n\tstring: \"string\",\n\tsymbol: \"symbol\",\n\ttrue: { unit: true },\n\tunknown: {},\n\tundefined: { unit: void 0 },\n\tArray,\n\tDate\n}, { prereducedAliases: true }).export();\n$ark.intrinsic = { ...intrinsicBases };\nconst intrinsicRoots = schemaScope({\n\tinteger: {\n\t\tdomain: \"number\",\n\t\tdivisor: 1\n\t},\n\tlengthBoundable: [\"string\", Array],\n\tkey: [\"string\", \"symbol\"],\n\tnonNegativeIntegerString: {\n\t\tdomain: \"string\",\n\t\tpattern: arrayIndexSource\n\t}\n}, { prereducedAliases: true }).export();\nObject.assign($ark.intrinsic, intrinsicRoots);\nconst intrinsicJson = schemaScope({\n\tjsonPrimitive: [\n\t\t\"string\",\n\t\t\"number\",\n\t\t{ unit: true },\n\t\t{ unit: false },\n\t\t{ unit: null }\n\t],\n\tjsonObject: {\n\t\tdomain: \"object\",\n\t\tindex: {\n\t\t\tsignature: \"string\",\n\t\t\tvalue: \"$jsonData\"\n\t\t}\n\t},\n\tjsonData: [\"$jsonPrimitive\", \"$jsonObject\"]\n}, { prereducedAliases: true }).export();\nconst intrinsic = {\n\t...intrinsicBases,\n\t...intrinsicRoots,\n\t...intrinsicJson,\n\temptyStructure: node(\"structure\", {}, { prereduced: true })\n};\n$ark.intrinsic = { ...intrinsic };\n//#endregion\n//#region ../../../../node_modules/arkregex/out/regex.js\nconst regex$1 = ((src, flags) => new RegExp(src, flags));\nObject.assign(regex$1, { as: regex$1 });\n//#endregion\n//#region ../../../../node_modules/arktype/out/parser/shift/operand/date.js\nconst isDateLiteral = (value) => typeof value === \"string\" && value[0] === \"d\" && (value[1] === \"'\" || value[1] === \"\\\"\") && value[value.length - 1] === value[1];\nconst isValidDate = (d) => d.toString() !== \"Invalid Date\";\nconst extractDateLiteralSource = (literal) => literal.slice(2, -1);\nconst writeInvalidDateMessage = (source) => `'${source}' could not be parsed by the Date constructor`;\nconst tryParseDate = (source, errorOnFail) => maybeParseDate(source, errorOnFail);\nconst maybeParseDate = (source, errorOnFail) => {\n\tconst stringParsedDate = new Date(source);\n\tif (isValidDate(stringParsedDate)) return stringParsedDate;\n\tconst epochMillis = tryParseNumber(source);\n\tif (epochMillis !== void 0) {\n\t\tconst numberParsedDate = new Date(epochMillis);\n\t\tif (isValidDate(numberParsedDate)) return numberParsedDate;\n\t}\n\treturn errorOnFail ? throwParseError(errorOnFail === true ? writeInvalidDateMessage(source) : errorOnFail) : void 0;\n};\n//#endregion\n//#region ../../../../node_modules/arktype/out/parser/shift/operand/enclosed.js\nconst regexExecArray = rootSchema({\n\tproto: \"Array\",\n\tsequence: \"string\",\n\trequired: {\n\t\tkey: \"groups\",\n\t\tvalue: [\"object\", { unit: void 0 }]\n\t}\n});\nconst parseEnclosed = (s, enclosing) => {\n\tconst enclosed = s.scanner.shiftUntilEscapable(untilLookaheadIsClosing[enclosingTokens[enclosing]]);\n\tif (s.scanner.lookahead === \"\") return s.error(writeUnterminatedEnclosedMessage(enclosed, enclosing));\n\ts.scanner.shift();\n\tif (enclosing in enclosingRegexTokens) {\n\t\tlet regex;\n\t\ttry {\n\t\t\tregex = new RegExp(enclosed);\n\t\t} catch (e) {\n\t\t\tthrowParseError(String(e));\n\t\t}\n\t\ts.root = s.ctx.$.node(\"intersection\", {\n\t\t\tdomain: \"string\",\n\t\t\tpattern: enclosed\n\t\t}, { prereduced: true });\n\t\tif (enclosing === \"x/\") s.root = s.ctx.$.node(\"morph\", {\n\t\t\tin: s.root,\n\t\t\tmorphs: (s) => regex.exec(s),\n\t\t\tdeclaredOut: regexExecArray\n\t\t});\n\t} else if (isKeyOf(enclosing, enclosingQuote)) s.root = s.ctx.$.node(\"unit\", { unit: enclosed });\n\telse {\n\t\tconst date = tryParseDate(enclosed, writeInvalidDateMessage(enclosed));\n\t\ts.root = s.ctx.$.node(\"unit\", {\n\t\t\tmeta: enclosed,\n\t\t\tunit: date\n\t\t});\n\t}\n};\nconst enclosingQuote = {\n\t\"'\": 1,\n\t\"\\\"\": 1\n};\nconst enclosingChar = {\n\t\"/\": 1,\n\t\"'\": 1,\n\t\"\\\"\": 1\n};\nconst enclosingLiteralTokens = {\n\t\"d'\": \"'\",\n\t\"d\\\"\": \"\\\"\",\n\t\"'\": \"'\",\n\t\"\\\"\": \"\\\"\"\n};\nconst enclosingRegexTokens = {\n\t\"/\": \"/\",\n\t\"x/\": \"/\"\n};\nconst enclosingTokens = {\n\t...enclosingLiteralTokens,\n\t...enclosingRegexTokens\n};\nconst untilLookaheadIsClosing = {\n\t\"'\": (scanner) => scanner.lookahead === `'`,\n\t\"\\\"\": (scanner) => scanner.lookahead === `\"`,\n\t\"/\": (scanner) => scanner.lookahead === `/`\n};\nconst enclosingCharDescriptions = {\n\t\"\\\"\": \"double-quote\",\n\t\"'\": \"single-quote\",\n\t\"/\": \"forward slash\"\n};\nconst writeUnterminatedEnclosedMessage = (fragment, enclosingStart) => `${enclosingStart}${fragment} requires a closing ${enclosingCharDescriptions[enclosingTokens[enclosingStart]]}`;\n//#endregion\n//#region ../../../../node_modules/arktype/out/parser/ast/validate.js\nconst writePrefixedPrivateReferenceMessage = (name) => `Private type references should not include '#'. Use '${name}' instead.`;\nconst shallowOptionalMessage = \"Optional definitions like 'string?' are only valid as properties in an object or tuple\";\nconst shallowDefaultableMessage = \"Defaultable definitions like 'number = 0' are only valid as properties in an object or tuple\";\n//#endregion\n//#region ../../../../node_modules/arktype/out/parser/shift/tokens.js\nconst terminatingChars = {\n\t\"<\": 1,\n\t\">\": 1,\n\t\"=\": 1,\n\t\"|\": 1,\n\t\"&\": 1,\n\t\")\": 1,\n\t\"[\": 1,\n\t\"%\": 1,\n\t\",\": 1,\n\t\":\": 1,\n\t\"?\": 1,\n\t\"#\": 1,\n\t...whitespaceChars\n};\nconst lookaheadIsFinalizing = (lookahead, unscanned) => lookahead === \">\" ? unscanned[0] === \"=\" ? unscanned[1] === \"=\" : unscanned.trimStart() === \"\" || isKeyOf(unscanned.trimStart()[0], terminatingChars) : lookahead === \"=\" ? unscanned[0] !== \"=\" : lookahead === \",\" || lookahead === \"?\";\n//#endregion\n//#region ../../../../node_modules/arktype/out/parser/shift/operand/genericArgs.js\nconst parseGenericArgs = (name, g, s) => _parseGenericArgs(name, g, s, []);\nconst _parseGenericArgs = (name, g, s, argNodes) => {\n\tconst argState = s.parseUntilFinalizer();\n\targNodes.push(argState.root);\n\tif (argState.finalizer === \">\") {\n\t\tif (argNodes.length !== g.params.length) return s.error(writeInvalidGenericArgCountMessage(name, g.names, argNodes.map((arg) => arg.expression)));\n\t\treturn argNodes;\n\t}\n\tif (argState.finalizer === \",\") return _parseGenericArgs(name, g, s, argNodes);\n\treturn argState.error(writeUnclosedGroupMessage(\">\"));\n};\nconst writeInvalidGenericArgCountMessage = (name, params, argDefs) => `${name}<${params.join(\", \")}> requires exactly ${params.length} args (got ${argDefs.length}${argDefs.length === 0 ? \"\" : `: ${argDefs.join(\", \")}`})`;\n//#endregion\n//#region ../../../../node_modules/arktype/out/parser/shift/operand/unenclosed.js\nconst parseUnenclosed = (s) => {\n\tconst token = s.scanner.shiftUntilLookahead(terminatingChars);\n\tif (token === \"keyof\") s.addPrefix(\"keyof\");\n\telse s.root = unenclosedToNode(s, token);\n};\nconst parseGenericInstantiation = (name, g, s) => {\n\ts.scanner.shiftUntilNonWhitespace();\n\tif (s.scanner.shift() !== \"<\") return s.error(writeInvalidGenericArgCountMessage(name, g.names, []));\n\treturn g(...parseGenericArgs(name, g, s));\n};\nconst unenclosedToNode = (s, token) => maybeParseReference(s, token) ?? maybeParseUnenclosedLiteral(s, token) ?? s.error(token === \"\" ? s.scanner.lookahead === \"#\" ? writePrefixedPrivateReferenceMessage(s.shiftedBy(1).scanner.shiftUntilLookahead(terminatingChars)) : writeMissingOperandMessage(s) : writeUnresolvableMessage(token));\nconst maybeParseReference = (s, token) => {\n\tif (s.ctx.args?.[token]) {\n\t\tconst arg = s.ctx.args[token];\n\t\tif (typeof arg !== \"string\") return arg;\n\t\treturn s.ctx.$.node(\"alias\", { reference: arg }, { prereduced: true });\n\t}\n\tconst resolution = s.ctx.$.maybeResolve(token);\n\tif (hasArkKind(resolution, \"root\")) return resolution;\n\tif (resolution === void 0) return;\n\tif (hasArkKind(resolution, \"generic\")) return parseGenericInstantiation(token, resolution, s);\n\treturn throwParseError(`Unexpected resolution ${printable(resolution)}`);\n};\nconst maybeParseUnenclosedLiteral = (s, token) => {\n\tconst maybeNumber = tryParseWellFormedNumber(token);\n\tif (maybeNumber !== void 0) return s.ctx.$.node(\"unit\", { unit: maybeNumber });\n\tconst maybeBigint = tryParseWellFormedBigint(token);\n\tif (maybeBigint !== void 0) return s.ctx.$.node(\"unit\", { unit: maybeBigint });\n};\nconst writeMissingOperandMessage = (s) => {\n\tconst operator = s.previousOperator();\n\treturn operator ? writeMissingRightOperandMessage(operator, s.scanner.unscanned) : writeExpressionExpectedMessage(s.scanner.unscanned);\n};\nconst writeMissingRightOperandMessage = (token, unscanned = \"\") => `Token '${token}' requires a right operand${unscanned ? ` before '${unscanned}'` : \"\"}`;\nconst writeExpressionExpectedMessage = (unscanned) => `Expected an expression${unscanned ? ` before '${unscanned}'` : \"\"}`;\n//#endregion\n//#region ../../../../node_modules/arktype/out/parser/shift/operand/operand.js\nconst parseOperand = (s) => s.scanner.lookahead === \"\" ? s.error(writeMissingOperandMessage(s)) : s.scanner.lookahead === \"(\" ? s.shiftedBy(1).reduceGroupOpen() : s.scanner.lookaheadIsIn(enclosingChar) ? parseEnclosed(s, s.scanner.shift()) : s.scanner.lookaheadIsIn(whitespaceChars) ? parseOperand(s.shiftedBy(1)) : s.scanner.lookahead === \"d\" ? s.scanner.nextLookahead in enclosingQuote ? parseEnclosed(s, `${s.scanner.shift()}${s.scanner.shift()}`) : parseUnenclosed(s) : s.scanner.lookahead === \"x\" ? s.scanner.nextLookahead === \"/\" ? s.shiftedBy(2) && parseEnclosed(s, \"x/\") : parseUnenclosed(s) : parseUnenclosed(s);\n//#endregion\n//#region ../../../../node_modules/arktype/out/parser/reduce/shared.js\nconst minComparators = {\n\t\">\": true,\n\t\">=\": true\n};\nconst maxComparators = {\n\t\"<\": true,\n\t\"<=\": true\n};\nconst invertedComparators = {\n\t\"<\": \">\",\n\t\">\": \"<\",\n\t\"<=\": \">=\",\n\t\">=\": \"<=\",\n\t\"==\": \"==\"\n};\nconst writeOpenRangeMessage = (min, comparator) => `Left bounds are only valid when paired with right bounds (try ...${comparator}${min})`;\nconst writeUnpairableComparatorMessage = (comparator) => `Left-bounded expressions must specify their limits using < or <= (was ${comparator})`;\nconst writeMultipleLeftBoundsMessage = (openLimit, openComparator, limit, comparator) => `An expression may have at most one left bound (parsed ${openLimit}${invertedComparators[openComparator]}, ${limit}${invertedComparators[comparator]})`;\n//#endregion\n//#region ../../../../node_modules/arktype/out/parser/shift/operator/bounds.js\nconst parseBound = (s, start) => {\n\tconst comparator = shiftComparator(s, start);\n\tif (s.root.hasKind(\"unit\")) {\n\t\tif (typeof s.root.unit === \"number\") {\n\t\t\ts.reduceLeftBound(s.root.unit, comparator);\n\t\t\ts.unsetRoot();\n\t\t\treturn;\n\t\t}\n\t\tif (s.root.unit instanceof Date) {\n\t\t\tconst literal = `d'${s.root.description ?? s.root.unit.toISOString()}'`;\n\t\t\ts.unsetRoot();\n\t\t\ts.reduceLeftBound(literal, comparator);\n\t\t\treturn;\n\t\t}\n\t}\n\treturn parseRightBound(s, comparator);\n};\nconst comparatorStartChars = {\n\t\"<\": 1,\n\t\">\": 1,\n\t\"=\": 1\n};\nconst shiftComparator = (s, start) => s.scanner.lookaheadIs(\"=\") ? `${start}${s.scanner.shift()}` : start;\nconst getBoundKinds = (comparator, limit, root, boundKind) => {\n\tif (root.extends($ark.intrinsic.number)) {\n\t\tif (typeof limit !== \"number\") return throwParseError(writeInvalidLimitMessage(comparator, limit, boundKind));\n\t\treturn comparator === \"==\" ? [\"min\", \"max\"] : comparator[0] === \">\" ? [\"min\"] : [\"max\"];\n\t}\n\tif (root.extends($ark.intrinsic.lengthBoundable)) {\n\t\tif (typeof limit !== \"number\") return throwParseError(writeInvalidLimitMessage(comparator, limit, boundKind));\n\t\treturn comparator === \"==\" ? [\"exactLength\"] : comparator[0] === \">\" ? [\"minLength\"] : [\"maxLength\"];\n\t}\n\tif (root.extends($ark.intrinsic.Date)) return comparator === \"==\" ? [\"after\", \"before\"] : comparator[0] === \">\" ? [\"after\"] : [\"before\"];\n\treturn throwParseError(writeUnboundableMessage(root.expression));\n};\nconst openLeftBoundToRoot = (leftBound) => ({\n\trule: isDateLiteral(leftBound.limit) ? extractDateLiteralSource(leftBound.limit) : leftBound.limit,\n\texclusive: leftBound.comparator.length === 1\n});\nconst parseRightBound = (s, comparator) => {\n\tconst previousRoot = s.unsetRoot();\n\tconst previousScannerIndex = s.scanner.location;\n\ts.parseOperand();\n\tconst limitNode = s.unsetRoot();\n\tconst limitToken = s.scanner.sliceChars(previousScannerIndex, s.scanner.location);\n\ts.root = previousRoot;\n\tif (!limitNode.hasKind(\"unit\") || typeof limitNode.unit !== \"number\" && !(limitNode.unit instanceof Date)) return s.error(writeInvalidLimitMessage(comparator, limitToken, \"right\"));\n\tconst limit = limitNode.unit;\n\tconst exclusive = comparator.length === 1;\n\tconst boundKinds = getBoundKinds(comparator, typeof limit === \"number\" ? limit : limitToken, previousRoot, \"right\");\n\tfor (const kind of boundKinds) s.constrainRoot(kind, comparator === \"==\" ? { rule: limit } : {\n\t\trule: limit,\n\t\texclusive\n\t});\n\tif (!s.branches.leftBound) return;\n\tif (!isKeyOf(comparator, maxComparators)) return s.error(writeUnpairableComparatorMessage(comparator));\n\tconst lowerBoundKind = getBoundKinds(s.branches.leftBound.comparator, s.branches.leftBound.limit, previousRoot, \"left\");\n\ts.constrainRoot(lowerBoundKind[0], openLeftBoundToRoot(s.branches.leftBound));\n\ts.branches.leftBound = null;\n};\nconst writeInvalidLimitMessage = (comparator, limit, boundKind) => `Comparator ${boundKind === \"left\" ? invertedComparators[comparator] : comparator} must be ${boundKind === \"left\" ? \"preceded\" : \"followed\"} by a corresponding literal (was ${limit})`;\n//#endregion\n//#region ../../../../node_modules/arktype/out/parser/shift/operator/brand.js\nconst parseBrand = (s) => {\n\ts.scanner.shiftUntilNonWhitespace();\n\tconst brandName = s.scanner.shiftUntilLookahead(terminatingChars);\n\ts.root = s.root.brand(brandName);\n};\n//#endregion\n//#region ../../../../node_modules/arktype/out/parser/shift/operator/divisor.js\nconst parseDivisor = (s) => {\n\ts.scanner.shiftUntilNonWhitespace();\n\tconst divisorToken = s.scanner.shiftUntilLookahead(terminatingChars);\n\tconst divisor = tryParseInteger(divisorToken, { errorOnFail: writeInvalidDivisorMessage(divisorToken) });\n\tif (divisor === 0) s.error(writeInvalidDivisorMessage(0));\n\ts.root = s.root.constrain(\"divisor\", divisor);\n};\nconst writeInvalidDivisorMessage = (divisor) => `% operator must be followed by a non-zero integer literal (was ${divisor})`;\n//#endregion\n//#region ../../../../node_modules/arktype/out/parser/shift/operator/operator.js\nconst parseOperator = (s) => {\n\tconst lookahead = s.scanner.shift();\n\treturn lookahead === \"\" ? s.finalize(\"\") : lookahead === \"[\" ? s.scanner.shift() === \"]\" ? s.setRoot(s.root.array()) : s.error(incompleteArrayTokenMessage) : lookahead === \"|\" ? s.scanner.lookahead === \">\" ? s.shiftedBy(1).pushRootToBranch(\"|>\") : s.pushRootToBranch(lookahead) : lookahead === \"&\" ? s.pushRootToBranch(lookahead) : lookahead === \")\" ? s.finalizeGroup() : lookaheadIsFinalizing(lookahead, s.scanner.unscanned) ? s.finalize(lookahead) : isKeyOf(lookahead, comparatorStartChars) ? parseBound(s, lookahead) : lookahead === \"%\" ? parseDivisor(s) : lookahead === \"#\" ? parseBrand(s) : lookahead in whitespaceChars ? parseOperator(s) : s.error(writeUnexpectedCharacterMessage(lookahead));\n};\nconst writeUnexpectedCharacterMessage = (char, shouldBe = \"\") => `'${char}' is not allowed here${shouldBe && ` (should be ${shouldBe})`}`;\nconst incompleteArrayTokenMessage = `Missing expected ']'`;\n//#endregion\n//#region ../../../../node_modules/arktype/out/parser/shift/operator/default.js\nconst parseDefault = (s) => {\n\tconst baseNode = s.unsetRoot();\n\ts.parseOperand();\n\tconst defaultNode = s.unsetRoot();\n\tif (!defaultNode.hasKind(\"unit\")) return s.error(writeNonLiteralDefaultMessage(defaultNode.expression));\n\treturn [\n\t\tbaseNode,\n\t\t\"=\",\n\t\tdefaultNode.unit instanceof Date ? () => new Date(defaultNode.unit) : defaultNode.unit\n\t];\n};\nconst writeNonLiteralDefaultMessage = (defaultDef) => `Default value '${defaultDef}' must be a literal value`;\n//#endregion\n//#region ../../../../node_modules/arktype/out/parser/string.js\nconst parseString = (def, ctx) => {\n\tconst aliasResolution = ctx.$.maybeResolveRoot(def);\n\tif (aliasResolution) return aliasResolution;\n\tif (def.endsWith(\"[]\")) {\n\t\tconst possibleElementResolution = ctx.$.maybeResolveRoot(def.slice(0, -2));\n\t\tif (possibleElementResolution) return possibleElementResolution.array();\n\t}\n\tconst s = new RuntimeState(new Scanner(def), ctx);\n\tconst node = fullStringParse(s);\n\tif (s.finalizer === \">\") throwParseError(writeUnexpectedCharacterMessage(\">\"));\n\treturn node;\n};\nconst fullStringParse = (s) => {\n\ts.parseOperand();\n\tlet result = parseUntilFinalizer(s).root;\n\tif (!result) return throwInternalError(`Root was unexpectedly unset after parsing string '${s.scanner.scanned}'`);\n\tif (s.finalizer === \"=\") result = parseDefault(s);\n\telse if (s.finalizer === \"?\") result = [result, \"?\"];\n\ts.scanner.shiftUntilNonWhitespace();\n\tif (s.scanner.lookahead) throwParseError(writeUnexpectedCharacterMessage(s.scanner.lookahead));\n\treturn result;\n};\nconst parseUntilFinalizer = (s) => {\n\twhile (s.finalizer === void 0) next(s);\n\treturn s;\n};\nconst next = (s) => s.hasRoot() ? s.parseOperator() : s.parseOperand();\n//#endregion\n//#region ../../../../node_modules/arktype/out/parser/reduce/dynamic.js\nvar RuntimeState = class RuntimeState {\n\troot;\n\tbranches = {\n\t\tprefixes: [],\n\t\tleftBound: null,\n\t\tintersection: null,\n\t\tunion: null,\n\t\tpipe: null\n\t};\n\tfinalizer;\n\tgroups = [];\n\tscanner;\n\tctx;\n\tconstructor(scanner, ctx) {\n\t\tthis.scanner = scanner;\n\t\tthis.ctx = ctx;\n\t}\n\terror(message) {\n\t\treturn throwParseError(message);\n\t}\n\thasRoot() {\n\t\treturn this.root !== void 0;\n\t}\n\tsetRoot(root) {\n\t\tthis.root = root;\n\t}\n\tunsetRoot() {\n\t\tconst value = this.root;\n\t\tthis.root = void 0;\n\t\treturn value;\n\t}\n\tconstrainRoot(...args) {\n\t\tthis.root = this.root.constrain(args[0], args[1]);\n\t}\n\tfinalize(finalizer) {\n\t\tif (this.groups.length) return this.error(writeUnclosedGroupMessage(\")\"));\n\t\tthis.finalizeBranches();\n\t\tthis.finalizer = finalizer;\n\t}\n\treduceLeftBound(limit, comparator) {\n\t\tconst invertedComparator = invertedComparators[comparator];\n\t\tif (!isKeyOf(invertedComparator, minComparators)) return this.error(writeUnpairableComparatorMessage(comparator));\n\t\tif (this.branches.leftBound) return this.error(writeMultipleLeftBoundsMessage(this.branches.leftBound.limit, this.branches.leftBound.comparator, limit, invertedComparator));\n\t\tthis.branches.leftBound = {\n\t\t\tcomparator: invertedComparator,\n\t\t\tlimit\n\t\t};\n\t}\n\tfinalizeBranches() {\n\t\tthis.assertRangeUnset();\n\t\tif (this.branches.pipe) {\n\t\t\tthis.pushRootToBranch(\"|>\");\n\t\t\tthis.root = this.branches.pipe;\n\t\t\treturn;\n\t\t}\n\t\tif (this.branches.union) {\n\t\t\tthis.pushRootToBranch(\"|\");\n\t\t\tthis.root = this.branches.union;\n\t\t\treturn;\n\t\t}\n\t\tif (this.branches.intersection) {\n\t\t\tthis.pushRootToBranch(\"&\");\n\t\t\tthis.root = this.branches.intersection;\n\t\t\treturn;\n\t\t}\n\t\tthis.applyPrefixes();\n\t}\n\tfinalizeGroup() {\n\t\tthis.finalizeBranches();\n\t\tconst topBranchState = this.groups.pop();\n\t\tif (!topBranchState) return this.error(writeUnmatchedGroupCloseMessage(\")\", this.scanner.unscanned));\n\t\tthis.branches = topBranchState;\n\t}\n\taddPrefix(prefix) {\n\t\tthis.branches.prefixes.push(prefix);\n\t}\n\tapplyPrefixes() {\n\t\twhile (this.branches.prefixes.length) {\n\t\t\tconst lastPrefix = this.branches.prefixes.pop();\n\t\t\tthis.root = lastPrefix === \"keyof\" ? this.root.keyof() : throwInternalError(`Unexpected prefix '${lastPrefix}'`);\n\t\t}\n\t}\n\tpushRootToBranch(token) {\n\t\tthis.assertRangeUnset();\n\t\tthis.applyPrefixes();\n\t\tconst root = this.root;\n\t\tthis.root = void 0;\n\t\tthis.branches.intersection = this.branches.intersection?.rawAnd(root) ?? root;\n\t\tif (token === \"&\") return;\n\t\tthis.branches.union = this.branches.union?.rawOr(this.branches.intersection) ?? this.branches.intersection;\n\t\tthis.branches.intersection = null;\n\t\tif (token === \"|\") return;\n\t\tthis.branches.pipe = this.branches.pipe?.rawPipeOnce(this.branches.union) ?? this.branches.union;\n\t\tthis.branches.union = null;\n\t}\n\tparseUntilFinalizer() {\n\t\treturn parseUntilFinalizer(new RuntimeState(this.scanner, this.ctx));\n\t}\n\tparseOperator() {\n\t\treturn parseOperator(this);\n\t}\n\tparseOperand() {\n\t\treturn parseOperand(this);\n\t}\n\tassertRangeUnset() {\n\t\tif (this.branches.leftBound) return this.error(writeOpenRangeMessage(this.branches.leftBound.limit, this.branches.leftBound.comparator));\n\t}\n\treduceGroupOpen() {\n\t\tthis.groups.push(this.branches);\n\t\tthis.branches = {\n\t\t\tprefixes: [],\n\t\t\tleftBound: null,\n\t\t\tunion: null,\n\t\t\tintersection: null,\n\t\t\tpipe: null\n\t\t};\n\t}\n\tpreviousOperator() {\n\t\treturn this.branches.leftBound?.comparator ?? this.branches.prefixes[this.branches.prefixes.length - 1] ?? (this.branches.intersection ? \"&\" : this.branches.union ? \"|\" : this.branches.pipe ? \"|>\" : void 0);\n\t}\n\tshiftedBy(count) {\n\t\tthis.scanner.jumpForward(count);\n\t\treturn this;\n\t}\n};\n//#endregion\n//#region ../../../../node_modules/arktype/out/generic.js\nconst emptyGenericParameterMessage = \"An empty string is not a valid generic parameter name\";\nconst parseGenericParamName = (scanner, result, ctx) => {\n\tscanner.shiftUntilNonWhitespace();\n\tconst name = scanner.shiftUntilLookahead(terminatingChars);\n\tif (name === \"\") {\n\t\tif (scanner.lookahead === \"\" && result.length) return result;\n\t\treturn throwParseError(emptyGenericParameterMessage);\n\t}\n\tscanner.shiftUntilNonWhitespace();\n\treturn _parseOptionalConstraint(scanner, name, result, ctx);\n};\nconst extendsToken = \"extends \";\nconst _parseOptionalConstraint = (scanner, name, result, ctx) => {\n\tscanner.shiftUntilNonWhitespace();\n\tif (scanner.unscanned.startsWith(extendsToken)) scanner.jumpForward(8);\n\telse {\n\t\tif (scanner.lookahead === \",\") scanner.shift();\n\t\tresult.push(name);\n\t\treturn parseGenericParamName(scanner, result, ctx);\n\t}\n\tconst s = parseUntilFinalizer(new RuntimeState(scanner, ctx));\n\tresult.push([name, s.root]);\n\treturn parseGenericParamName(scanner, result, ctx);\n};\n//#endregion\n//#region ../../../../node_modules/arktype/out/fn.js\nvar InternalFnParser = class extends Callable {\n\tconstructor($) {\n\t\tconst parse = (...signature) => {\n\t\t\tconst returnOperatorIndex = signature.indexOf(\":\");\n\t\t\tconst lastParamIndex = returnOperatorIndex === -1 ? signature.length - 1 : returnOperatorIndex - 1;\n\t\t\tconst paramDefs = signature.slice(0, lastParamIndex + 1);\n\t\t\tconst paramTuple = $.parse(paramDefs).assertHasKind(\"intersection\");\n\t\t\tlet returnType = $.intrinsic.unknown;\n\t\t\tif (returnOperatorIndex !== -1) {\n\t\t\t\tif (returnOperatorIndex !== signature.length - 2) return throwParseError(badFnReturnTypeMessage);\n\t\t\t\treturnType = $.parse(signature[returnOperatorIndex + 1]);\n\t\t\t}\n\t\t\treturn (impl) => new InternalTypedFn(impl, paramTuple, returnType);\n\t\t};\n\t\tsuper(parse, { attach: {\n\t\t\t$,\n\t\t\traw: parse\n\t\t} });\n\t}\n};\nvar InternalTypedFn = class extends Callable {\n\traw;\n\tparams;\n\treturns;\n\texpression;\n\tconstructor(raw, params, returns) {\n\t\tconst typedName = `typed ${raw.name}`;\n\t\tconst typed = { [typedName]: (...args) => {\n\t\t\tconst returned = raw(...params.assert(args));\n\t\t\treturn returns.assert(returned);\n\t\t} }[typedName];\n\t\tsuper(typed);\n\t\tthis.raw = raw;\n\t\tthis.params = params;\n\t\tthis.returns = returns;\n\t\tlet argsExpression = params.expression;\n\t\tif (argsExpression[0] === \"[\" && argsExpression[argsExpression.length - 1] === \"]\") argsExpression = argsExpression.slice(1, -1);\n\t\telse if (argsExpression.endsWith(\"[]\")) argsExpression = `...${argsExpression}`;\n\t\tthis.expression = `(${argsExpression}) => ${returns?.expression ?? \"unknown\"}`;\n\t}\n};\nconst badFnReturnTypeMessage = `\":\" must be followed by exactly one return type e.g:\nfn(\"string\", \":\", \"number\")(s => s.length)`;\n//#endregion\n//#region ../../../../node_modules/arktype/out/match.js\nvar InternalMatchParser = class extends Callable {\n\t$;\n\tconstructor($) {\n\t\tsuper((...args) => new InternalChainedMatchParser($)(...args), { bind: $ });\n\t\tthis.$ = $;\n\t}\n\tin(def) {\n\t\treturn new InternalChainedMatchParser(this.$, def === void 0 ? void 0 : this.$.parse(def));\n\t}\n\tat(key, cases) {\n\t\treturn new InternalChainedMatchParser(this.$).at(key, cases);\n\t}\n\tcase(when, then) {\n\t\treturn new InternalChainedMatchParser(this.$).case(when, then);\n\t}\n};\nvar InternalChainedMatchParser = class extends Callable {\n\t$;\n\tin;\n\tkey;\n\tbranches = [];\n\tconstructor($, In) {\n\t\tsuper((cases) => this.caseEntries(Object.entries(cases).map(([k, v]) => k === \"default\" ? [k, v] : [this.$.parse(k), v])));\n\t\tthis.$ = $;\n\t\tthis.in = In;\n\t}\n\tat(key, cases) {\n\t\tif (this.key) throwParseError(doubleAtMessage);\n\t\tif (this.branches.length) throwParseError(chainedAtMessage);\n\t\tthis.key = key;\n\t\treturn cases ? this.match(cases) : this;\n\t}\n\tcase(def, resolver) {\n\t\treturn this.caseEntry(this.$.parse(def), resolver);\n\t}\n\tcaseEntry(node, resolver) {\n\t\tconst branch = (this.key ? this.$.parse({ [this.key]: node }) : node).pipe(resolver);\n\t\tthis.branches.push(branch);\n\t\treturn this;\n\t}\n\tmatch(cases) {\n\t\treturn this(cases);\n\t}\n\tstrings(cases) {\n\t\treturn this.caseEntries(Object.entries(cases).map(([k, v]) => k === \"default\" ? [k, v] : [this.$.node(\"unit\", { unit: k }), v]));\n\t}\n\tcaseEntries(entries) {\n\t\tfor (let i = 0; i < entries.length; i++) {\n\t\t\tconst [k, v] = entries[i];\n\t\t\tif (k === \"default\") {\n\t\t\t\tif (i !== entries.length - 1) throwParseError(`default may only be specified as the last key of a switch definition`);\n\t\t\t\treturn this.default(v);\n\t\t\t}\n\t\t\tif (typeof v !== \"function\") return throwParseError(`Value for case \"${k}\" must be a function (was ${domainOf(v)})`);\n\t\t\tthis.caseEntry(k, v);\n\t\t}\n\t\treturn this;\n\t}\n\tdefault(defaultCase) {\n\t\tif (typeof defaultCase === \"function\") this.case(intrinsic.unknown, defaultCase);\n\t\tconst schema = {\n\t\t\tbranches: this.branches,\n\t\t\tordered: true\n\t\t};\n\t\tif (defaultCase === \"never\" || defaultCase === \"assert\") schema.meta = { onFail: throwOnDefault };\n\t\tconst cases = this.$.node(\"union\", schema);\n\t\tif (!this.in) return this.$.finalize(cases);\n\t\tlet inputValidatedCases = this.in.pipe(cases);\n\t\tif (defaultCase === \"never\" || defaultCase === \"assert\") inputValidatedCases = inputValidatedCases.configureReferences({ onFail: throwOnDefault }, \"self\");\n\t\treturn this.$.finalize(inputValidatedCases);\n\t}\n};\nconst throwOnDefault = (errors) => errors.throw();\nconst chainedAtMessage = `A key matcher must be specified before the first case i.e. match.at('foo') or match.in<object>().at('bar')`;\nconst doubleAtMessage = `At most one key matcher may be specified per expression`;\n//#endregion\n//#region ../../../../node_modules/arktype/out/parser/property.js\nconst parseProperty = (def, ctx) => {\n\tif (isArray(def)) {\n\t\tif (def[1] === \"=\") return [\n\t\t\tctx.$.parseOwnDefinitionFormat(def[0], ctx),\n\t\t\t\"=\",\n\t\t\tdef[2]\n\t\t];\n\t\tif (def[1] === \"?\") return [ctx.$.parseOwnDefinitionFormat(def[0], ctx), \"?\"];\n\t}\n\treturn parseInnerDefinition(def, ctx);\n};\nconst invalidOptionalKeyKindMessage = `Only required keys may make their values optional, e.g. { [mySymbol]: ['number', '?'] }`;\nconst invalidDefaultableKeyKindMessage = `Only required keys may specify default values, e.g. { value: 'number = 0' }`;\n//#endregion\n//#region ../../../../node_modules/arktype/out/parser/objectLiteral.js\nconst parseObjectLiteral = (def, ctx) => {\n\tlet spread;\n\tconst structure = {};\n\tconst defEntries = stringAndSymbolicEntriesOf(def);\n\tfor (const [k, v] of defEntries) {\n\t\tconst parsedKey = preparseKey(k);\n\t\tif (parsedKey.kind === \"spread\") {\n\t\t\tif (!isEmptyObject(structure)) return throwParseError(nonLeadingSpreadError);\n\t\t\tconst operand = ctx.$.parseOwnDefinitionFormat(v, ctx);\n\t\t\tif (operand.equals(intrinsic.object)) continue;\n\t\t\tif (!operand.hasKind(\"intersection\") || !operand.basis?.equals(intrinsic.object)) return throwParseError(writeInvalidSpreadTypeMessage(operand.expression));\n\t\t\tspread = operand.structure;\n\t\t\tcontinue;\n\t\t}\n\t\tif (parsedKey.kind === \"undeclared\") {\n\t\t\tif (v !== \"reject\" && v !== \"delete\" && v !== \"ignore\") throwParseError(writeInvalidUndeclaredBehaviorMessage(v));\n\t\t\tstructure.undeclared = v;\n\t\t\tcontinue;\n\t\t}\n\t\tconst parsedValue = parseProperty(v, ctx);\n\t\tconst parsedEntryKey = parsedKey;\n\t\tif (parsedKey.kind === \"required\") {\n\t\t\tif (!isArray(parsedValue)) appendNamedProp(structure, \"required\", {\n\t\t\t\tkey: parsedKey.normalized,\n\t\t\t\tvalue: parsedValue\n\t\t\t}, ctx);\n\t\t\telse appendNamedProp(structure, \"optional\", parsedValue[1] === \"=\" ? {\n\t\t\t\tkey: parsedKey.normalized,\n\t\t\t\tvalue: parsedValue[0],\n\t\t\t\tdefault: parsedValue[2]\n\t\t\t} : {\n\t\t\t\tkey: parsedKey.normalized,\n\t\t\t\tvalue: parsedValue[0]\n\t\t\t}, ctx);\n\t\t\tcontinue;\n\t\t}\n\t\tif (isArray(parsedValue)) {\n\t\t\tif (parsedValue[1] === \"?\") throwParseError(invalidOptionalKeyKindMessage);\n\t\t\tif (parsedValue[1] === \"=\") throwParseError(invalidDefaultableKeyKindMessage);\n\t\t}\n\t\tif (parsedKey.kind === \"optional\") {\n\t\t\tappendNamedProp(structure, \"optional\", {\n\t\t\t\tkey: parsedKey.normalized,\n\t\t\t\tvalue: parsedValue\n\t\t\t}, ctx);\n\t\t\tcontinue;\n\t\t}\n\t\tconst normalized = normalizeIndex(ctx.$.parseOwnDefinitionFormat(parsedEntryKey.normalized, ctx), parsedValue, ctx.$);\n\t\tif (normalized.index) structure.index = append(structure.index, normalized.index);\n\t\tif (normalized.required) structure.required = append(structure.required, normalized.required);\n\t}\n\tconst structureNode = ctx.$.node(\"structure\", structure);\n\treturn ctx.$.parseSchema({\n\t\tdomain: \"object\",\n\t\tstructure: spread?.merge(structureNode) ?? structureNode\n\t});\n};\nconst appendNamedProp = (structure, kind, inner, ctx) => {\n\tstructure[kind] = append(structure[kind], ctx.$.node(kind, inner));\n};\nconst writeInvalidUndeclaredBehaviorMessage = (actual) => `Value of '+' key must be 'reject', 'delete', or 'ignore' (was ${printable(actual)})`;\nconst nonLeadingSpreadError = \"Spread operator may only be used as the first key in an object\";\nconst preparseKey = (key) => typeof key === \"symbol\" ? {\n\tkind: \"required\",\n\tnormalized: key\n} : key[key.length - 1] === \"?\" ? key[key.length - 2] === \"\\\\\" ? {\n\tkind: \"required\",\n\tnormalized: `${key.slice(0, -2)}?`\n} : {\n\tkind: \"optional\",\n\tnormalized: key.slice(0, -1)\n} : key[0] === \"[\" && key[key.length - 1] === \"]\" ? {\n\tkind: \"index\",\n\tnormalized: key.slice(1, -1)\n} : key[0] === \"\\\\\" && key[1] === \"[\" && key[key.length - 1] === \"]\" ? {\n\tkind: \"required\",\n\tnormalized: key.slice(1)\n} : key === \"...\" ? { kind: \"spread\" } : key === \"+\" ? { kind: \"undeclared\" } : {\n\tkind: \"required\",\n\tnormalized: key === \"\\\\...\" ? \"...\" : key === \"\\\\+\" ? \"+\" : key\n};\nconst writeInvalidSpreadTypeMessage = (def) => `Spread operand must resolve to an object literal type (was ${def})`;\n//#endregion\n//#region ../../../../node_modules/arktype/out/parser/tupleExpressions.js\nconst maybeParseTupleExpression = (def, ctx) => isIndexZeroExpression(def) ? indexZeroParsers[def[0]](def, ctx) : isIndexOneExpression(def) ? indexOneParsers[def[1]](def, ctx) : null;\nconst parseKeyOfTuple = (def, ctx) => ctx.$.parseOwnDefinitionFormat(def[1], ctx).keyof();\nconst parseBranchTuple = (def, ctx) => {\n\tif (def[2] === void 0) return throwParseError(writeMissingRightOperandMessage(def[1], \"\"));\n\tconst l = ctx.$.parseOwnDefinitionFormat(def[0], ctx);\n\tconst r = ctx.$.parseOwnDefinitionFormat(def[2], ctx);\n\tif (def[1] === \"|\") return ctx.$.node(\"union\", { branches: [l, r] });\n\tconst result = def[1] === \"&\" ? intersectNodesRoot(l, r, ctx.$) : pipeNodesRoot(l, r, ctx.$);\n\tif (result instanceof Disjoint) return result.throw();\n\treturn result;\n};\nconst parseArrayTuple = (def, ctx) => ctx.$.parseOwnDefinitionFormat(def[0], ctx).array();\nconst parseMorphTuple = (def, ctx) => {\n\tif (typeof def[2] !== \"function\") return throwParseError(writeMalformedFunctionalExpressionMessage(\"=>\", def[2]));\n\treturn ctx.$.parseOwnDefinitionFormat(def[0], ctx).pipe(def[2]);\n};\nconst writeMalformedFunctionalExpressionMessage = (operator, value) => `${operator === \":\" ? \"Narrow\" : \"Morph\"} expression requires a function following '${operator}' (was ${typeof value})`;\nconst parseNarrowTuple = (def, ctx) => {\n\tif (typeof def[2] !== \"function\") return throwParseError(writeMalformedFunctionalExpressionMessage(\":\", def[2]));\n\treturn ctx.$.parseOwnDefinitionFormat(def[0], ctx).constrain(\"predicate\", def[2]);\n};\nconst parseMetaTuple = (def, ctx) => ctx.$.parseOwnDefinitionFormat(def[0], ctx).configure(def[2], def[3]);\nconst defineIndexOneParsers = (parsers) => parsers;\nconst postfixParsers = defineIndexOneParsers({\n\t\"[]\": parseArrayTuple,\n\t\"?\": () => throwParseError(shallowOptionalMessage)\n});\nconst infixParsers = defineIndexOneParsers({\n\t\"|\": parseBranchTuple,\n\t\"&\": parseBranchTuple,\n\t\":\": parseNarrowTuple,\n\t\"=>\": parseMorphTuple,\n\t\"|>\": parseBranchTuple,\n\t\"@\": parseMetaTuple,\n\t\"=\": () => throwParseError(shallowDefaultableMessage)\n});\nconst indexOneParsers = {\n\t...postfixParsers,\n\t...infixParsers\n};\nconst isIndexOneExpression = (def) => indexOneParsers[def[1]] !== void 0;\nconst defineIndexZeroParsers = (parsers) => parsers;\nconst indexZeroParsers = defineIndexZeroParsers({\n\tkeyof: parseKeyOfTuple,\n\tinstanceof: (def, ctx) => {\n\t\tif (typeof def[1] !== \"function\") return throwParseError(writeInvalidConstructorMessage(objectKindOrDomainOf(def[1])));\n\t\tconst branches = def.slice(1).map((ctor) => typeof ctor === \"function\" ? ctx.$.node(\"proto\", { proto: ctor }) : throwParseError(writeInvalidConstructorMessage(objectKindOrDomainOf(ctor))));\n\t\treturn branches.length === 1 ? branches[0] : ctx.$.node(\"union\", { branches });\n\t},\n\t\"===\": (def, ctx) => ctx.$.units(def.slice(1))\n});\nconst isIndexZeroExpression = (def) => indexZeroParsers[def[0]] !== void 0;\nconst writeInvalidConstructorMessage = (actual) => `Expected a constructor following 'instanceof' operator (was ${actual})`;\n//#endregion\n//#region ../../../../node_modules/arktype/out/parser/tupleLiteral.js\nconst parseTupleLiteral = (def, ctx) => {\n\tlet sequences = [{}];\n\tlet i = 0;\n\twhile (i < def.length) {\n\t\tlet spread = false;\n\t\tif (def[i] === \"...\" && i < def.length - 1) {\n\t\t\tspread = true;\n\t\t\ti++;\n\t\t}\n\t\tconst parsedProperty = parseProperty(def[i], ctx);\n\t\tconst [valueNode, operator, possibleDefaultValue] = !isArray(parsedProperty) ? [parsedProperty] : parsedProperty;\n\t\ti++;\n\t\tif (spread) {\n\t\t\tif (!valueNode.extends($ark.intrinsic.Array)) return throwParseError(writeNonArraySpreadMessage(valueNode.expression));\n\t\t\tsequences = sequences.flatMap((base) => valueNode.distribute((branch) => appendSpreadBranch(makeRootAndArrayPropertiesMutable(base), branch)));\n\t\t} else sequences = sequences.map((base) => {\n\t\t\tif (operator === \"?\") return appendOptionalElement(base, valueNode);\n\t\t\tif (operator === \"=\") return appendDefaultableElement(base, valueNode, possibleDefaultValue);\n\t\t\treturn appendRequiredElement(base, valueNode);\n\t\t});\n\t}\n\treturn ctx.$.parseSchema(sequences.map((sequence) => isEmptyObject(sequence) ? {\n\t\tproto: Array,\n\t\texactLength: 0\n\t} : {\n\t\tproto: Array,\n\t\tsequence\n\t}));\n};\nconst appendRequiredElement = (base, element) => {\n\tif (base.defaultables || base.optionals) return throwParseError(base.variadic ? postfixAfterOptionalOrDefaultableMessage : requiredPostOptionalMessage);\n\tif (base.variadic) base.postfix = append(base.postfix, element);\n\telse base.prefix = append(base.prefix, element);\n\treturn base;\n};\nconst appendOptionalElement = (base, element) => {\n\tif (base.variadic) return throwParseError(optionalOrDefaultableAfterVariadicMessage);\n\tbase.optionals = append(base.optionals, element);\n\treturn base;\n};\nconst appendDefaultableElement = (base, element, value) => {\n\tif (base.variadic) return throwParseError(optionalOrDefaultableAfterVariadicMessage);\n\tif (base.optionals) return throwParseError(defaultablePostOptionalMessage);\n\tbase.defaultables = append(base.defaultables, [[element, value]]);\n\treturn base;\n};\nconst appendVariadicElement = (base, element) => {\n\tif (base.postfix) throwParseError(multipleVariadicMesage);\n\tif (base.variadic) {\n\t\tif (!base.variadic.equals(element)) throwParseError(multipleVariadicMesage);\n\t} else base.variadic = element.internal;\n\treturn base;\n};\nconst appendSpreadBranch = (base, branch) => {\n\tconst spread = branch.select({\n\t\tmethod: \"find\",\n\t\tkind: \"sequence\"\n\t});\n\tif (!spread) return appendVariadicElement(base, $ark.intrinsic.unknown);\n\tif (spread.prefix) for (const node of spread.prefix) appendRequiredElement(base, node);\n\tif (spread.optionals) for (const node of spread.optionals) appendOptionalElement(base, node);\n\tif (spread.variadic) appendVariadicElement(base, spread.variadic);\n\tif (spread.postfix) for (const node of spread.postfix) appendRequiredElement(base, node);\n\treturn base;\n};\nconst writeNonArraySpreadMessage = (operand) => `Spread element must be an array (was ${operand})`;\nconst multipleVariadicMesage = \"A tuple may have at most one variadic element\";\nconst requiredPostOptionalMessage = \"A required element may not follow an optional element\";\nconst optionalOrDefaultableAfterVariadicMessage = \"An optional element may not follow a variadic element\";\nconst defaultablePostOptionalMessage = \"A defaultable element may not follow an optional element without a default\";\n//#endregion\n//#region ../../../../node_modules/arktype/out/parser/definition.js\nconst parseCache = {};\nconst parseInnerDefinition = (def, ctx) => {\n\tif (typeof def === \"string\") {\n\t\tif (ctx.args && Object.keys(ctx.args).some((k) => def.includes(k))) return parseString(def, ctx);\n\t\tconst scopeCache = parseCache[ctx.$.name] ??= {};\n\t\treturn scopeCache[def] ??= parseString(def, ctx);\n\t}\n\treturn hasDomain(def, \"object\") ? parseObject(def, ctx) : throwParseError(writeBadDefinitionTypeMessage(domainOf(def)));\n};\nconst parseObject = (def, ctx) => {\n\tconst objectKind = objectKindOf(def);\n\tswitch (objectKind) {\n\t\tcase void 0:\n\t\t\tif (hasArkKind(def, \"root\")) return def;\n\t\t\tif (\"~standard\" in def) return parseStandardSchema(def, ctx);\n\t\t\treturn parseObjectLiteral(def, ctx);\n\t\tcase \"Array\": return parseTuple(def, ctx);\n\t\tcase \"RegExp\": return ctx.$.node(\"intersection\", {\n\t\t\tdomain: \"string\",\n\t\t\tpattern: def\n\t\t}, { prereduced: true });\n\t\tcase \"Function\": {\n\t\t\tconst resolvedDef = isThunk(def) ? def() : def;\n\t\t\tif (hasArkKind(resolvedDef, \"root\")) return resolvedDef;\n\t\t\treturn throwParseError(writeBadDefinitionTypeMessage(\"Function\"));\n\t\t}\n\t\tdefault: return throwParseError(writeBadDefinitionTypeMessage(objectKind ?? printable(def)));\n\t}\n};\nconst parseStandardSchema = (def, ctx) => ctx.$.intrinsic.unknown.pipe((v, ctx) => {\n\tconst result = def[\"~standard\"].validate(v);\n\tif (!result.issues) return result.value;\n\tfor (const { message, path } of result.issues) if (path) if (path.length) ctx.error({\n\t\tproblem: uncapitalize(message),\n\t\trelativePath: path.map((k) => typeof k === \"object\" ? k.key : k)\n\t});\n\telse ctx.error({ message });\n\telse ctx.error({ message });\n});\nconst parseTuple = (def, ctx) => maybeParseTupleExpression(def, ctx) ?? parseTupleLiteral(def, ctx);\nconst writeBadDefinitionTypeMessage = (actual) => `Type definitions must be strings or objects (was ${actual})`;\n//#endregion\n//#region ../../../../node_modules/arktype/out/type.js\nvar InternalTypeParser = class extends Callable {\n\tconstructor($) {\n\t\tconst attach = Object.assign({\n\t\t\terrors: ArkErrors,\n\t\t\thkt: Hkt,\n\t\t\t$,\n\t\t\traw: $.parse,\n\t\t\tmodule: $.constructor.module,\n\t\t\tscope: $.constructor.scope,\n\t\t\tdeclare: $.declare,\n\t\t\tdefine: $.define,\n\t\t\tmatch: $.match,\n\t\t\tgeneric: $.generic,\n\t\t\tschema: $.schema,\n\t\t\tkeywords: $.ambient,\n\t\t\tunit: $.unit,\n\t\t\tenumerated: $.enumerated,\n\t\t\tinstanceOf: $.instanceOf,\n\t\t\tvalueOf: $.valueOf,\n\t\t\tor: $.or,\n\t\t\tand: $.and,\n\t\t\tmerge: $.merge,\n\t\t\tpipe: $.pipe,\n\t\t\tfn: $.fn\n\t\t}, $.ambientAttachments);\n\t\tsuper((...args) => {\n\t\t\tif (args.length === 1) return $.parse(args[0]);\n\t\t\tif (args.length === 2 && typeof args[0] === \"string\" && args[0][0] === \"<\" && args[0][args[0].length - 1] === \">\") {\n\t\t\t\tconst paramString = args[0].slice(1, -1);\n\t\t\t\treturn new GenericRoot($.parseGenericParams(paramString, {}), args[1], $, $, null);\n\t\t\t}\n\t\t\treturn $.parse(args);\n\t\t}, { attach });\n\t}\n};\n//#endregion\n//#region ../../../../node_modules/arktype/out/scope.js\nconst $arkTypeRegistry = $ark;\nvar InternalScope = class InternalScope extends BaseScope {\n\tget ambientAttachments() {\n\t\tif (!$arkTypeRegistry.typeAttachments) return;\n\t\treturn this.cacheGetter(\"ambientAttachments\", flatMorph($arkTypeRegistry.typeAttachments, (k, v) => [k, this.bindReference(v)]));\n\t}\n\tpreparseOwnAliasEntry(alias, def) {\n\t\tconst firstParamIndex = alias.indexOf(\"<\");\n\t\tif (firstParamIndex === -1) {\n\t\t\tif (hasArkKind(def, \"module\") || hasArkKind(def, \"generic\")) return [alias, def];\n\t\t\tconst qualifiedName = this.name === \"ark\" ? alias : alias === \"root\" ? this.name : `${this.name}.${alias}`;\n\t\t\tconst config = this.resolvedConfig.keywords?.[qualifiedName];\n\t\t\tif (config) def = [\n\t\t\t\tdef,\n\t\t\t\t\"@\",\n\t\t\t\tconfig\n\t\t\t];\n\t\t\treturn [alias, def];\n\t\t}\n\t\tif (alias[alias.length - 1] !== \">\") throwParseError(`'>' must be the last character of a generic declaration in a scope`);\n\t\tconst name = alias.slice(0, firstParamIndex);\n\t\tconst paramString = alias.slice(firstParamIndex + 1, -1);\n\t\treturn [name, () => {\n\t\t\treturn parseGeneric(this.parseGenericParams(paramString, { alias: name }), def, this);\n\t\t}];\n\t}\n\tparseGenericParams(def, opts) {\n\t\treturn parseGenericParamName(new Scanner(def), [], this.createParseContext({\n\t\t\t...opts,\n\t\t\tdef,\n\t\t\tprefix: \"generic\"\n\t\t}));\n\t}\n\tnormalizeRootScopeValue(resolution) {\n\t\tif (isThunk(resolution) && !hasArkKind(resolution, \"generic\")) return resolution();\n\t\treturn resolution;\n\t}\n\tpreparseOwnDefinitionFormat(def, opts) {\n\t\treturn {\n\t\t\t...opts,\n\t\t\tdef,\n\t\t\tprefix: opts.alias ?? \"type\"\n\t\t};\n\t}\n\tparseOwnDefinitionFormat(def, ctx) {\n\t\tif (!(ctx.alias && ctx.alias in this.aliases) && !ctx.args) ctx.args = { this: ctx.id };\n\t\tconst result = parseInnerDefinition(def, ctx);\n\t\tif (isArray(result)) {\n\t\t\tif (result[1] === \"=\") return throwParseError(shallowDefaultableMessage);\n\t\t\tif (result[1] === \"?\") return throwParseError(shallowOptionalMessage);\n\t\t}\n\t\treturn result;\n\t}\n\tunit = (value) => this.units([value]);\n\tvalueOf = (tsEnum) => this.units(enumValues(tsEnum));\n\tenumerated = (...values) => this.units(values);\n\tinstanceOf = (ctor) => this.node(\"proto\", { proto: ctor }, { prereduced: true });\n\tor = (...defs) => this.schema(defs.map((def) => this.parse(def)));\n\tand = (...defs) => defs.reduce((node, def) => node.and(this.parse(def)), this.intrinsic.unknown);\n\tmerge = (...defs) => defs.reduce((node, def) => node.merge(this.parse(def)), this.intrinsic.object);\n\tpipe = (...morphs) => this.intrinsic.unknown.pipe(...morphs);\n\tfn = new InternalFnParser(this);\n\tmatch = new InternalMatchParser(this);\n\tdeclare = () => ({ type: this.type });\n\tdefine(def) {\n\t\treturn def;\n\t}\n\ttype = new InternalTypeParser(this);\n\tstatic scope = ((def, config = {}) => new InternalScope(def, config));\n\tstatic module = ((def, config = {}) => this.scope(def, config).export());\n};\nconst scope = Object.assign(InternalScope.scope, { define: (def) => def });\nconst Scope = InternalScope;\n//#endregion\n//#region ../../../../node_modules/arktype/out/keywords/builtins.js\nvar MergeHkt = class extends Hkt {\n\tdescription = \"merge an object's properties onto another like `Merge(User, { isAdmin: \\\"true\\\" })`\";\n};\nconst Merge = genericNode([\"base\", intrinsic.object], [\"props\", intrinsic.object])((args) => args.base.merge(args.props), MergeHkt);\nconst arkBuiltins = Scope.module({\n\tKey: intrinsic.key,\n\tMerge\n});\n//#endregion\n//#region ../../../../node_modules/arktype/out/keywords/Array.js\nvar liftFromHkt = class extends Hkt {};\nconst liftFrom = genericNode(\"element\")((args) => {\n\tconst nonArrayElement = args.element.exclude(intrinsic.Array);\n\tconst lifted = nonArrayElement.array();\n\treturn nonArrayElement.rawOr(lifted).pipe(liftArray).distribute((branch) => branch.assertHasKind(\"morph\").declareOut(lifted), rootSchema);\n}, liftFromHkt);\nconst arkArray = Scope.module({\n\troot: intrinsic.Array,\n\treadonly: \"root\",\n\tindex: intrinsic.nonNegativeIntegerString,\n\tliftFrom\n}, { name: \"Array\" });\n//#endregion\n//#region ../../../../node_modules/arktype/out/keywords/FormData.js\nconst value = rootSchema([\"string\", registry.FileConstructor]);\nconst parsed = rootSchema({\n\tmeta: \"an object representing parsed form data\",\n\tdomain: \"object\",\n\tindex: {\n\t\tsignature: \"string\",\n\t\tvalue: value.rawOr(value.array())\n\t}\n});\nconst arkFormData = Scope.module({\n\troot: [\"instanceof\", FormData],\n\tvalue,\n\tparsed,\n\tparse: rootSchema({\n\t\tin: FormData,\n\t\tmorphs: (data) => {\n\t\t\tconst result = {};\n\t\t\tfor (const [k, v] of data) if (k in result) {\n\t\t\t\tconst existing = result[k];\n\t\t\t\tif (typeof existing === \"string\" || existing instanceof registry.FileConstructor) result[k] = [existing, v];\n\t\t\t\telse existing.push(v);\n\t\t\t} else result[k] = v;\n\t\t\treturn result;\n\t\t},\n\t\tdeclaredOut: parsed\n\t})\n}, { name: \"FormData\" });\n//#endregion\n//#region ../../../../node_modules/arktype/out/keywords/TypedArray.js\nconst TypedArray = Scope.module({\n\tInt8: [\"instanceof\", Int8Array],\n\tUint8: [\"instanceof\", Uint8Array],\n\tUint8Clamped: [\"instanceof\", Uint8ClampedArray],\n\tInt16: [\"instanceof\", Int16Array],\n\tUint16: [\"instanceof\", Uint16Array],\n\tInt32: [\"instanceof\", Int32Array],\n\tUint32: [\"instanceof\", Uint32Array],\n\tFloat32: [\"instanceof\", Float32Array],\n\tFloat64: [\"instanceof\", Float64Array],\n\tBigInt64: [\"instanceof\", BigInt64Array],\n\tBigUint64: [\"instanceof\", BigUint64Array]\n}, { name: \"TypedArray\" });\n//#endregion\n//#region ../../../../node_modules/arktype/out/keywords/constructors.js\nconst omittedPrototypes = {\n\tBoolean: 1,\n\tNumber: 1,\n\tString: 1\n};\nconst arkPrototypes = Scope.module({\n\t...flatMorph({\n\t\t...ecmascriptConstructors,\n\t\t...platformConstructors\n\t}, (k, v) => k in omittedPrototypes ? [] : [k, [\"instanceof\", v]]),\n\tArray: arkArray,\n\tTypedArray,\n\tFormData: arkFormData\n});\n//#endregion\n//#region ../../../../node_modules/arktype/out/keywords/number.js\n/**\n* As per the ECMA-262 specification:\n* A time value supports a slightly smaller range of -8,640,000,000,000,000 to 8,640,000,000,000,000 milliseconds.\n*\n* @see https://262.ecma-international.org/15.0/index.html#sec-time-values-and-time-range\n*/\nconst epoch$1 = rootSchema({\n\tdomain: {\n\t\tdomain: \"number\",\n\t\tmeta: \"a number representing a Unix timestamp\"\n\t},\n\tdivisor: {\n\t\trule: 1,\n\t\tmeta: `an integer representing a Unix timestamp`\n\t},\n\tmin: {\n\t\trule: -864e13,\n\t\tmeta: `a Unix timestamp after -8640000000000000`\n\t},\n\tmax: {\n\t\trule: 864e13,\n\t\tmeta: \"a Unix timestamp before 8640000000000000\"\n\t},\n\tmeta: \"an integer representing a safe Unix timestamp\"\n});\nconst integer = rootSchema({\n\tdomain: \"number\",\n\tdivisor: 1\n});\nconst number = Scope.module({\n\troot: intrinsic.number,\n\tinteger,\n\tepoch: epoch$1,\n\tsafe: rootSchema({\n\t\tdomain: {\n\t\t\tdomain: \"number\",\n\t\t\tnumberAllowsNaN: false\n\t\t},\n\t\tmin: Number.MIN_SAFE_INTEGER,\n\t\tmax: Number.MAX_SAFE_INTEGER\n\t}),\n\tNaN: [\"===\", NaN],\n\tInfinity: [\"===\", Number.POSITIVE_INFINITY],\n\tNegativeInfinity: [\"===\", Number.NEGATIVE_INFINITY]\n}, { name: \"number\" });\n//#endregion\n//#region ../../../../node_modules/arktype/out/keywords/string.js\nconst regexStringNode = (regex, description, jsonSchemaFormat) => {\n\tconst schema = {\n\t\tdomain: \"string\",\n\t\tpattern: {\n\t\t\trule: regex.source,\n\t\t\tflags: regex.flags,\n\t\t\tmeta: description\n\t\t}\n\t};\n\tif (jsonSchemaFormat) schema.meta = { format: jsonSchemaFormat };\n\treturn node(\"intersection\", schema);\n};\nconst stringIntegerRoot = regexStringNode(wellFormedIntegerMatcher, \"a well-formed integer string\");\nconst stringInteger = Scope.module({\n\troot: stringIntegerRoot,\n\tparse: rootSchema({\n\t\tin: stringIntegerRoot,\n\t\tmorphs: (s, ctx) => {\n\t\t\tconst parsed = Number.parseInt(s);\n\t\t\treturn Number.isSafeInteger(parsed) ? parsed : ctx.error(\"an integer in the range Number.MIN_SAFE_INTEGER to Number.MAX_SAFE_INTEGER\");\n\t\t},\n\t\tdeclaredOut: intrinsic.integer\n\t})\n}, { name: \"string.integer\" });\nconst hex = regexStringNode(/^[\\dA-Fa-f]+$/, \"hex characters only\");\nconst base64 = Scope.module({\n\troot: regexStringNode(/^(?:[\\d+/A-Za-z]{4})*(?:[\\d+/A-Za-z]{2}==|[\\d+/A-Za-z]{3}=)?$/, \"base64-encoded\"),\n\turl: regexStringNode(/^(?:[\\w-]{4})*(?:[\\w-]{2}(?:==|%3D%3D)?|[\\w-]{3}(?:=|%3D)?)?$/, \"base64url-encoded\")\n}, { name: \"string.base64\" });\nconst preformattedCapitalize = regexStringNode(/^[A-Z].*$/, \"capitalized\");\nconst capitalize = Scope.module({\n\troot: rootSchema({\n\t\tin: \"string\",\n\t\tmorphs: (s) => s.charAt(0).toUpperCase() + s.slice(1),\n\t\tdeclaredOut: preformattedCapitalize\n\t}),\n\tpreformatted: preformattedCapitalize\n}, { name: \"string.capitalize\" });\nconst isLuhnValid = (creditCardInput) => {\n\tconst sanitized = creditCardInput.replace(/[ -]+/g, \"\");\n\tlet sum = 0;\n\tlet digit;\n\tlet tmpNum;\n\tlet shouldDouble = false;\n\tfor (let i = sanitized.length - 1; i >= 0; i--) {\n\t\tdigit = sanitized.substring(i, i + 1);\n\t\ttmpNum = Number.parseInt(digit, 10);\n\t\tif (shouldDouble) {\n\t\t\ttmpNum *= 2;\n\t\t\tsum += tmpNum >= 10 ? tmpNum % 10 + 1 : tmpNum;\n\t\t} else sum += tmpNum;\n\t\tshouldDouble = !shouldDouble;\n\t}\n\treturn !!(sum % 10 === 0 ? sanitized : false);\n};\nconst creditCard = rootSchema({\n\tdomain: \"string\",\n\tpattern: {\n\t\tmeta: \"a credit card number\",\n\t\trule: /^(?:4\\d{12}(?:\\d{3,6})?|5[1-5]\\d{14}|(222[1-9]|22[3-9]\\d|2[3-6]\\d{2}|27[01]\\d|2720)\\d{12}|6(?:011|5\\d\\d)\\d{12,15}|3[47]\\d{13}|3(?:0[0-5]|[68]\\d)\\d{11}|(?:2131|1800|35\\d{3})\\d{11}|6[27]\\d{14}|^(81\\d{14,17}))$/.source\n\t},\n\tpredicate: {\n\t\tmeta: \"a credit card number\",\n\t\tpredicate: isLuhnValid\n\t}\n});\nconst iso8601Matcher = /^([+-]?\\d{4}(?!\\d{2}\\b))((-?)((0[1-9]|1[0-2])(\\3([12]\\d|0[1-9]|3[01]))?|W([0-4]\\d|5[0-3])(-?[1-7])?|(00[1-9]|0[1-9]\\d|[12]\\d{2}|3([0-5]\\d|6[1-6])))(T((([01]\\d|2[0-3])((:?)[0-5]\\d)?|24:?00)([,.]\\d+(?!:))?)?(\\17[0-5]\\d([,.]\\d+)?)?([Zz]|([+-])([01]\\d|2[0-3]):?([0-5]\\d)?)?)?)?$/;\nconst isParsableDate = (s) => !Number.isNaN(new Date(s).valueOf());\nconst parsableDate = rootSchema({\n\tdomain: \"string\",\n\tpredicate: {\n\t\tmeta: \"a parsable date\",\n\t\tpredicate: isParsableDate\n\t}\n}).assertHasKind(\"intersection\");\nconst epochRoot = stringInteger.root.internal.narrow((s, ctx) => {\n\tconst n = Number.parseInt(s);\n\tconst out = number.epoch(n);\n\tif (out instanceof ArkErrors) {\n\t\tctx.errors.merge(out);\n\t\treturn false;\n\t}\n\treturn true;\n}).configure({ description: \"an integer string representing a safe Unix timestamp\" }, \"self\").assertHasKind(\"intersection\");\nconst epoch = Scope.module({\n\troot: epochRoot,\n\tparse: rootSchema({\n\t\tin: epochRoot,\n\t\tmorphs: (s) => new Date(s),\n\t\tdeclaredOut: intrinsic.Date\n\t})\n}, { name: \"string.date.epoch\" });\nconst isoRoot = regexStringNode(iso8601Matcher, \"an ISO 8601 (YYYY-MM-DDTHH:mm:ss.sssZ) date\").internal.assertHasKind(\"intersection\");\nconst iso = Scope.module({\n\troot: isoRoot,\n\tparse: rootSchema({\n\t\tin: isoRoot,\n\t\tmorphs: (s) => new Date(s),\n\t\tdeclaredOut: intrinsic.Date\n\t})\n}, { name: \"string.date.iso\" });\nconst stringDate = Scope.module({\n\troot: parsableDate,\n\tparse: rootSchema({\n\t\tdeclaredIn: parsableDate,\n\t\tin: \"string\",\n\t\tmorphs: (s, ctx) => {\n\t\t\tconst date = new Date(s);\n\t\t\tif (Number.isNaN(date.valueOf())) return ctx.error(\"a parsable date\");\n\t\t\treturn date;\n\t\t},\n\t\tdeclaredOut: intrinsic.Date\n\t}),\n\tiso,\n\tepoch\n}, { name: \"string.date\" });\nconst email = regexStringNode(/^[\\w%+.-]+@[\\d.A-Za-z-]+\\.[A-Za-z]{2,}$/, \"an email address\", \"email\");\nconst ipv4Segment = \"(?:[0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\";\nconst ipv4Address = `(${ipv4Segment}[.]){3}${ipv4Segment}`;\nconst ipv4Matcher = new RegExp(`^${ipv4Address}$`);\nconst ipv6Segment = \"(?:[0-9a-fA-F]{1,4})\";\nconst ipv6Matcher = new RegExp(`^((?:${ipv6Segment}:){7}(?:${ipv6Segment}|:)|(?:${ipv6Segment}:){6}(?:${ipv4Address}|:${ipv6Segment}|:)|(?:${ipv6Segment}:){5}(?::${ipv4Address}|(:${ipv6Segment}){1,2}|:)|(?:${ipv6Segment}:){4}(?:(:${ipv6Segment}){0,1}:${ipv4Address}|(:${ipv6Segment}){1,3}|:)|(?:${ipv6Segment}:){3}(?:(:${ipv6Segment}){0,2}:${ipv4Address}|(:${ipv6Segment}){1,4}|:)|(?:${ipv6Segment}:){2}(?:(:${ipv6Segment}){0,3}:${ipv4Address}|(:${ipv6Segment}){1,5}|:)|(?:${ipv6Segment}:){1}(?:(:${ipv6Segment}){0,4}:${ipv4Address}|(:${ipv6Segment}){1,6}|:)|(?::((?::${ipv6Segment}){0,5}:${ipv4Address}|(?::${ipv6Segment}){1,7}|:)))(%[0-9a-zA-Z.]{1,})?\\$`);\nconst ip = Scope.module({\n\troot: [\n\t\t\"v4 | v6\",\n\t\t\"@\",\n\t\t\"an IP address\"\n\t],\n\tv4: regexStringNode(ipv4Matcher, \"an IPv4 address\", \"ipv4\"),\n\tv6: regexStringNode(ipv6Matcher, \"an IPv6 address\", \"ipv6\")\n}, { name: \"string.ip\" });\nconst jsonStringDescription = \"a JSON string\";\nconst writeJsonSyntaxErrorProblem = (error) => {\n\tif (!(error instanceof SyntaxError)) throw error;\n\treturn `must be ${jsonStringDescription} (${error})`;\n};\nconst jsonRoot = rootSchema({\n\tmeta: jsonStringDescription,\n\tdomain: \"string\",\n\tpredicate: {\n\t\tmeta: jsonStringDescription,\n\t\tpredicate: (s, ctx) => {\n\t\t\ttry {\n\t\t\t\tJSON.parse(s);\n\t\t\t\treturn true;\n\t\t\t} catch (e) {\n\t\t\t\treturn ctx.reject({\n\t\t\t\t\tcode: \"predicate\",\n\t\t\t\t\texpected: jsonStringDescription,\n\t\t\t\t\tproblem: writeJsonSyntaxErrorProblem(e)\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t}\n});\nconst parseJson = (s, ctx) => {\n\tif (s.length === 0) return ctx.error({\n\t\tcode: \"predicate\",\n\t\texpected: jsonStringDescription,\n\t\tactual: \"empty\"\n\t});\n\ttry {\n\t\treturn JSON.parse(s);\n\t} catch (e) {\n\t\treturn ctx.error({\n\t\t\tcode: \"predicate\",\n\t\t\texpected: jsonStringDescription,\n\t\t\tproblem: writeJsonSyntaxErrorProblem(e)\n\t\t});\n\t}\n};\nconst json$1 = Scope.module({\n\troot: jsonRoot,\n\tparse: rootSchema({\n\t\tmeta: \"safe JSON string parser\",\n\t\tin: \"string\",\n\t\tmorphs: parseJson,\n\t\tdeclaredOut: intrinsic.jsonObject\n\t})\n}, { name: \"string.json\" });\nconst preformattedLower = regexStringNode(/^[a-z]*$/, \"only lowercase letters\");\nconst lower = Scope.module({\n\troot: rootSchema({\n\t\tin: \"string\",\n\t\tmorphs: (s) => s.toLowerCase(),\n\t\tdeclaredOut: preformattedLower\n\t}),\n\tpreformatted: preformattedLower\n}, { name: \"string.lower\" });\nconst normalizedForms = [\n\t\"NFC\",\n\t\"NFD\",\n\t\"NFKC\",\n\t\"NFKD\"\n];\nconst preformattedNodes = flatMorph(normalizedForms, (i, form) => [form, rootSchema({\n\tdomain: \"string\",\n\tpredicate: (s) => s.normalize(form) === s,\n\tmeta: `${form}-normalized unicode`\n})]);\nconst normalizeNodes = flatMorph(normalizedForms, (i, form) => [form, rootSchema({\n\tin: \"string\",\n\tmorphs: (s) => s.normalize(form),\n\tdeclaredOut: preformattedNodes[form]\n})]);\nconst NFC = Scope.module({\n\troot: normalizeNodes.NFC,\n\tpreformatted: preformattedNodes.NFC\n}, { name: \"string.normalize.NFC\" });\nconst NFD = Scope.module({\n\troot: normalizeNodes.NFD,\n\tpreformatted: preformattedNodes.NFD\n}, { name: \"string.normalize.NFD\" });\nconst NFKC = Scope.module({\n\troot: normalizeNodes.NFKC,\n\tpreformatted: preformattedNodes.NFKC\n}, { name: \"string.normalize.NFKC\" });\nconst NFKD = Scope.module({\n\troot: normalizeNodes.NFKD,\n\tpreformatted: preformattedNodes.NFKD\n}, { name: \"string.normalize.NFKD\" });\nconst normalize = Scope.module({\n\troot: \"NFC\",\n\tNFC,\n\tNFD,\n\tNFKC,\n\tNFKD\n}, { name: \"string.normalize\" });\nconst numericRoot = regexStringNode(numericStringMatcher, \"a well-formed numeric string\");\nconst stringNumeric = Scope.module({\n\troot: numericRoot,\n\tparse: rootSchema({\n\t\tin: numericRoot,\n\t\tmorphs: (s) => Number.parseFloat(s),\n\t\tdeclaredOut: intrinsic.number\n\t})\n}, { name: \"string.numeric\" });\nconst regexPatternDescription = \"a regex pattern\";\nconst regex = rootSchema({\n\tdomain: \"string\",\n\tpredicate: {\n\t\tmeta: regexPatternDescription,\n\t\tpredicate: (s, ctx) => {\n\t\t\ttry {\n\t\t\t\tnew RegExp(s);\n\t\t\t\treturn true;\n\t\t\t} catch (e) {\n\t\t\t\treturn ctx.reject({\n\t\t\t\t\tcode: \"predicate\",\n\t\t\t\t\texpected: regexPatternDescription,\n\t\t\t\t\tproblem: String(e)\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t},\n\tmeta: { format: \"regex\" }\n});\nconst semver = regexStringNode(/^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[A-Za-z-][\\dA-Za-z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[A-Za-z-][\\dA-Za-z-]*))*))?(?:\\+([\\dA-Za-z-]+(?:\\.[\\dA-Za-z-]+)*))?$/, \"a semantic version (see https://semver.org/)\");\nconst preformattedTrim = regexStringNode(/^\\S.*\\S$|^\\S?$/, \"trimmed\");\nconst trim = Scope.module({\n\troot: rootSchema({\n\t\tin: \"string\",\n\t\tmorphs: (s) => s.trim(),\n\t\tdeclaredOut: preformattedTrim\n\t}),\n\tpreformatted: preformattedTrim\n}, { name: \"string.trim\" });\nconst preformattedUpper = regexStringNode(/^[A-Z]*$/, \"only uppercase letters\");\nconst upper = Scope.module({\n\troot: rootSchema({\n\t\tin: \"string\",\n\t\tmorphs: (s) => s.toUpperCase(),\n\t\tdeclaredOut: preformattedUpper\n\t}),\n\tpreformatted: preformattedUpper\n}, { name: \"string.upper\" });\nconst isParsableUrl = (s) => URL.canParse(s);\nconst urlRoot = rootSchema({\n\tdomain: \"string\",\n\tpredicate: {\n\t\tmeta: \"a URL string\",\n\t\tpredicate: isParsableUrl\n\t},\n\tmeta: { format: \"uri\" }\n});\nconst url = Scope.module({\n\troot: urlRoot,\n\tparse: rootSchema({\n\t\tdeclaredIn: urlRoot,\n\t\tin: \"string\",\n\t\tmorphs: (s, ctx) => {\n\t\t\ttry {\n\t\t\t\treturn new URL(s);\n\t\t\t} catch {\n\t\t\t\treturn ctx.error(\"a URL string\");\n\t\t\t}\n\t\t},\n\t\tdeclaredOut: rootSchema(URL)\n\t})\n}, { name: \"string.url\" });\nconst uuid = Scope.module({\n\troot: [\n\t\t\"versioned | nil | max\",\n\t\t\"@\",\n\t\t{\n\t\t\tdescription: \"a UUID\",\n\t\t\tformat: \"uuid\"\n\t\t}\n\t],\n\t\"#nil\": \"'00000000-0000-0000-0000-000000000000'\",\n\t\"#max\": \"'ffffffff-ffff-ffff-ffff-ffffffffffff'\",\n\t\"#versioned\": /^[\\da-f]{8}-[\\da-f]{4}-[1-8][\\da-f]{3}-[89ab][\\da-f]{3}-[\\da-f]{12}$/i,\n\tv1: regexStringNode(/^[\\da-f]{8}-[\\da-f]{4}-1[\\da-f]{3}-[89ab][\\da-f]{3}-[\\da-f]{12}$/i, \"a UUIDv1\"),\n\tv2: regexStringNode(/^[\\da-f]{8}-[\\da-f]{4}-2[\\da-f]{3}-[89ab][\\da-f]{3}-[\\da-f]{12}$/i, \"a UUIDv2\"),\n\tv3: regexStringNode(/^[\\da-f]{8}-[\\da-f]{4}-3[\\da-f]{3}-[89ab][\\da-f]{3}-[\\da-f]{12}$/i, \"a UUIDv3\"),\n\tv4: regexStringNode(/^[\\da-f]{8}-[\\da-f]{4}-4[\\da-f]{3}-[89ab][\\da-f]{3}-[\\da-f]{12}$/i, \"a UUIDv4\"),\n\tv5: regexStringNode(/^[\\da-f]{8}-[\\da-f]{4}-5[\\da-f]{3}-[89ab][\\da-f]{3}-[\\da-f]{12}$/i, \"a UUIDv5\"),\n\tv6: regexStringNode(/^[\\da-f]{8}-[\\da-f]{4}-6[\\da-f]{3}-[89ab][\\da-f]{3}-[\\da-f]{12}$/i, \"a UUIDv6\"),\n\tv7: regexStringNode(/^[\\da-f]{8}-[\\da-f]{4}-7[\\da-f]{3}-[89ab][\\da-f]{3}-[\\da-f]{12}$/i, \"a UUIDv7\"),\n\tv8: regexStringNode(/^[\\da-f]{8}-[\\da-f]{4}-8[\\da-f]{3}-[89ab][\\da-f]{3}-[\\da-f]{12}$/i, \"a UUIDv8\")\n}, { name: \"string.uuid\" });\nconst string = Scope.module({\n\troot: intrinsic.string,\n\talpha: regexStringNode(/^[A-Za-z]*$/, \"only letters\"),\n\talphanumeric: regexStringNode(/^[\\dA-Za-z]*$/, \"only letters and digits 0-9\"),\n\thex,\n\tbase64,\n\tcapitalize,\n\tcreditCard,\n\tdate: stringDate,\n\tdigits: regexStringNode(/^\\d*$/, \"only digits 0-9\"),\n\temail,\n\tinteger: stringInteger,\n\tip,\n\tjson: json$1,\n\tlower,\n\tnormalize,\n\tnumeric: stringNumeric,\n\tregex,\n\tsemver,\n\ttrim,\n\tupper,\n\turl,\n\tuuid\n}, { name: \"string\" });\n//#endregion\n//#region ../../../../node_modules/arktype/out/keywords/ts.js\nconst arkTsKeywords = Scope.module({\n\tbigint: intrinsic.bigint,\n\tboolean: intrinsic.boolean,\n\tfalse: intrinsic.false,\n\tnever: intrinsic.never,\n\tnull: intrinsic.null,\n\tnumber: intrinsic.number,\n\tobject: intrinsic.object,\n\tstring: intrinsic.string,\n\tsymbol: intrinsic.symbol,\n\ttrue: intrinsic.true,\n\tunknown: intrinsic.unknown,\n\tundefined: intrinsic.undefined\n});\nconst unknown = Scope.module({\n\troot: intrinsic.unknown,\n\tany: intrinsic.unknown\n}, { name: \"unknown\" });\nconst json = Scope.module({\n\troot: intrinsic.jsonObject,\n\tstringify: node(\"morph\", {\n\t\tin: intrinsic.jsonObject,\n\t\tmorphs: (data) => JSON.stringify(data),\n\t\tdeclaredOut: intrinsic.string\n\t})\n}, { name: \"object.json\" });\nconst object = Scope.module({\n\troot: intrinsic.object,\n\tjson\n}, { name: \"object\" });\nvar RecordHkt = class extends Hkt {\n\tdescription = \"instantiate an object from an index signature and corresponding value type like `Record(\\\"string\\\", \\\"number\\\")`\";\n};\nconst Record = genericNode([\"K\", intrinsic.key], \"V\")((args) => ({\n\tdomain: \"object\",\n\tindex: {\n\t\tsignature: args.K,\n\t\tvalue: args.V\n\t}\n}), RecordHkt);\nvar PickHkt = class extends Hkt {\n\tdescription = \"pick a set of properties from an object like `Pick(User, \\\"name | age\\\")`\";\n};\nconst Pick = genericNode([\"T\", intrinsic.object], [\"K\", intrinsic.key])((args) => args.T.pick(args.K), PickHkt);\nvar OmitHkt = class extends Hkt {\n\tdescription = \"omit a set of properties from an object like `Omit(User, \\\"age\\\")`\";\n};\nconst Omit = genericNode([\"T\", intrinsic.object], [\"K\", intrinsic.key])((args) => args.T.omit(args.K), OmitHkt);\nvar PartialHkt = class extends Hkt {\n\tdescription = \"make all named properties of an object optional like `Partial(User)`\";\n};\nconst Partial = genericNode([\"T\", intrinsic.object])((args) => args.T.partial(), PartialHkt);\nvar RequiredHkt = class extends Hkt {\n\tdescription = \"make all named properties of an object required like `Required(User)`\";\n};\nconst Required = genericNode([\"T\", intrinsic.object])((args) => args.T.required(), RequiredHkt);\nvar ExcludeHkt = class extends Hkt {\n\tdescription = \"exclude branches of a union like `Exclude(\\\"boolean\\\", \\\"true\\\")`\";\n};\nconst Exclude = genericNode(\"T\", \"U\")((args) => args.T.exclude(args.U), ExcludeHkt);\nvar ExtractHkt = class extends Hkt {\n\tdescription = \"extract branches of a union like `Extract(\\\"0 | false | 1\\\", \\\"number\\\")`\";\n};\nconst Extract = genericNode(\"T\", \"U\")((args) => args.T.extract(args.U), ExtractHkt);\nconst arkTsGenerics = Scope.module({\n\tExclude,\n\tExtract,\n\tOmit,\n\tPartial,\n\tPick,\n\tRecord,\n\tRequired\n});\n//#endregion\n//#region ../../../../node_modules/arktype/out/keywords/keywords.js\nconst ark = scope({\n\t...arkTsKeywords,\n\t...arkTsGenerics,\n\t...arkPrototypes,\n\t...arkBuiltins,\n\tstring,\n\tnumber,\n\tobject,\n\tunknown\n}, {\n\tprereducedAliases: true,\n\tname: \"ark\"\n});\nconst keywords = ark.export();\nObject.assign($arkTypeRegistry.ambient, keywords);\n$arkTypeRegistry.typeAttachments = {\n\tstring: keywords.string.root,\n\tnumber: keywords.number.root,\n\tbigint: keywords.bigint,\n\tboolean: keywords.boolean,\n\tsymbol: keywords.symbol,\n\tundefined: keywords.undefined,\n\tnull: keywords.null,\n\tobject: keywords.object.root,\n\tunknown: keywords.unknown.root,\n\tfalse: keywords.false,\n\ttrue: keywords.true,\n\tnever: keywords.never,\n\tarrayIndex: keywords.Array.index,\n\tKey: keywords.Key,\n\tRecord: keywords.Record,\n\tArray: keywords.Array.root,\n\tDate: keywords.Date\n};\nconst type = Object.assign(ark.type, $arkTypeRegistry.typeAttachments);\nark.match;\nark.fn;\nark.generic;\nark.schema;\nark.define;\nark.declare;\n/**\n* Walks a node's own params, then each dependency input's connection params —\n* the same enumeration order `configOf` uses, but carrying the raw\n* `ConfigParam` (with its `serialize`/`deserialize`) instead of a pure-data\n* projection.\n*/\nfunction paramEntries(node) {\n\tconst entries = [];\n\tfor (const [input, value] of Object.entries(node.inputs)) {\n\t\tif (typeof value !== \"object\" || value === null) continue;\n\t\tconst params = blindCast(value).connection.params;\n\t\tfor (const [name, param] of Object.entries(params)) entries.push({\n\t\t\towner: { input },\n\t\t\tname,\n\t\t\tparam\n\t\t});\n\t}\n\tfor (const [name, param] of Object.entries(node.params)) entries.push({\n\t\towner: \"service\",\n\t\tname,\n\t\tparam\n\t});\n\treturn entries;\n}\nconst configKey = (address, d) => {\n\tconst segments = address.split(\".\").filter((s) => s.length > 0);\n\tconst owner = d.owner === \"service\" ? [] : [d.owner.input];\n\treturn [\n\t\t\"COMPOSER\",\n\t\t...segments,\n\t\t...owner,\n\t\td.name\n\t].join(\"_\").toUpperCase();\n};\n/**\n* Typed value → its stored string. Service-own literals are JSON-encoded; a\n* dependency-input value is a provisioning ref at deploy (and a resolved\n* string at boot) and passes through untouched — LANDMINE: JSON-encoding it\n* would break the ordering edge Alchemy resolves through it.\n*/\nfunction encode(owner, value) {\n\treturn owner === \"service\" ? JSON.stringify(value) : blindCast(value);\n}\n/** Reverses `encode`: JSON-parse a service-own value, take a dependency-input value raw. */\nfunction decode(owner, raw) {\n\treturn owner === \"service\" ? JSON.parse(raw) : raw;\n}\nconst PARAM_POINTER_PREFIX = \"@composer-param-pointer:\";\n/** True iff `raw` is a param pointer row (as opposed to a JSON-encoded literal). */\nconst isParamPointerRow = (raw) => raw.startsWith(PARAM_POINTER_PREFIX);\n/** Reverses `encodeParamPointer`: the platform var NAME a pointer row points to. */\nconst decodeParamPointer = (raw) => raw.slice(24);\nfunction coerce(raw, d, key) {\n\tif (!(raw !== void 0 && raw !== \"\")) {\n\t\tif (d.param.default !== void 0) return d.param.default;\n\t\tif (d.param.optional === true) return void 0;\n\t\tthrow new Error(`missing required config param \"${d.name}\" (env ${key})`);\n\t}\n\tif (d.owner === \"service\" && isParamPointerRow(raw)) return coerceEnvSourcedParam(raw, d, key);\n\ttry {\n\t\treturn standardValidateSync(d.param.schema, decode(d.owner, raw));\n\t} catch (cause) {\n\t\tconst message = cause instanceof Error ? cause.message : String(cause);\n\t\tthrow new Error(`invalid value for config param \"${d.name}\" (env ${key}): ${message}`);\n\t}\n}\n/**\n* Boot resolution for an env-sourced param: double-lookup (pointer → platform\n* var), then the param's own schema on the raw string — no JSON decode, and\n* no redaction (it's config, not a secret). An UNSET platform var is a loud\n* boot failure naming both the param and the platform var; an EMPTY string is\n* not special-cased here — it reaches the schema like any other value, so it\n* passes iff the schema accepts it (deliberately unlike a literal param's own\n* \"\"-means-absent rule, and unlike a secret's non-empty requirement).\n*/\nfunction coerceEnvSourcedParam(raw, d, key) {\n\tconst platformVar = decodeParamPointer(raw);\n\tconst value = process.env[platformVar];\n\tif (value === void 0) throw new Error(`env-sourced config param \"${d.name}\" (env ${key} → ${platformVar}) is unset: the platform variable \"${platformVar}\" was not injected — the deploy did not provision it.`);\n\ttry {\n\t\treturn standardValidateSync(d.param.schema, value);\n\t} catch (cause) {\n\t\tconst message = cause instanceof Error ? cause.message : String(cause);\n\t\tthrow new Error(`invalid value for env-sourced config param \"${d.name}\" (env ${key} → ${platformVar}): ${message}`);\n\t}\n}\n/**\n* Boot: read each declared param from env by its key, reverse the param's own\n* serialization (missing/invalid fails loudly), assemble the typed Config.\n* Secrets ride a separate channel (deserializeSecrets), not this one.\n*/\nconst deserialize = (node, address) => {\n\tconst service = {};\n\tconst inputs = {};\n\tfor (const d of paramEntries(node)) {\n\t\tconst key = configKey(address, d);\n\t\tconst value = coerce(process.env[key], d, key);\n\t\tif (d.owner === \"service\") service[d.name] = value;\n\t\telse {\n\t\t\tlet bucket = inputs[d.owner.input];\n\t\t\tif (bucket === void 0) {\n\t\t\t\tbucket = {};\n\t\t\t\tinputs[d.owner.input] = bucket;\n\t\t\t}\n\t\t\tbucket[d.name] = value;\n\t\t}\n\t}\n\treturn {\n\t\tservice,\n\t\tinputs\n\t};\n};\n/**\n* run()'s setup step: write the resolved config to the environment under\n* address-free keys (configKey(\"\", d) + each serialize suffix), which load()\n* reads back with no address. Uses env, not a module variable, because a\n* framework may fork worker processes that inherit env but not memory.\n* Writes only these keys; nothing else is touched.\n*/\nconst stash = (node, config) => {\n\tfor (const d of paramEntries(node)) {\n\t\tconst value = d.owner === \"service\" ? config.service[d.name] : config.inputs[d.owner.input]?.[d.name];\n\t\tif (value === void 0) continue;\n\t\tprocess.env[configKey(\"\", d)] = encode(d.owner, value);\n\t}\n};\n/** The pointer-row key for a secret slot: COMPOSER_<addr>_<slot> (secrets are service-level). */\nconst secretKey = (address, slot) => configKey(address, {\n\towner: \"service\",\n\tname: slot\n});\n/**\n* Boot: resolve every secret slot to its value by double-lookup — read the\n* pointer key (the platform NAME), then read that platform var. A missing\n* pointer or a missing/empty platform value is a loud failure naming both keys.\n* Returns a plain Record for core's `hydrateSecrets` to box.\n*/\nconst deserializeSecrets = (node, address) => {\n\tconst values = {};\n\tfor (const slot of Object.keys(node.secretSlots)) {\n\t\tconst key = secretKey(address, slot);\n\t\tconst name = process.env[key];\n\t\tif (name === void 0 || name === \"\") throw new Error(`missing secret pointer for slot \"${slot}\" (env ${key}) — the deploy did not write it.`);\n\t\tconst value = process.env[name];\n\t\tif (value === void 0 || value === \"\") throw new Error(`secret \"${slot}\" is not provisioned (env ${key} → ${name}): the platform var \"${name}\" is unset or empty.`);\n\t\tvalues[slot] = value;\n\t}\n\treturn values;\n};\n/**\n* run()'s setup step for secrets: re-emit each slot's pointer NAME under its\n* address-free key, so the address-free `deserializeSecrets` double-looks-up\n* identically. Never the value — the value stays only in the platform var.\n*/\nconst stashSecrets = (node, address) => {\n\tfor (const slot of Object.keys(node.secretSlots)) {\n\t\tconst name = process.env[secretKey(address, slot)];\n\t\tif (name === void 0) continue;\n\t\tprocess.env[secretKey(\"\", slot)] = name;\n\t}\n};\n/**\n* Boot: for each reserved provider param, read its address-scoped row through\n* the same `coerce` a declared param uses (JSON-decode, schema-validate), and\n* re-emit it address-free — `stash`'s counterpart for this separate\n* declaration space. A param is declared optional here unconditionally: an\n* absent row means \"never provisioned\" (local dev, tests, a provider with no\n* registered value for this deploy), never a boot failure, so nothing is\n* stashed and the runtime reader that owns this slot falls back to its own\n* pass-through behavior.\n*/\nfunction stashProviderParams(entries, address) {\n\tfor (const entry of entries) {\n\t\tconst d = {\n\t\t\towner: \"service\",\n\t\t\tname: entry.name,\n\t\t\tparam: {\n\t\t\t\tschema: entry.schema,\n\t\t\t\toptional: true\n\t\t\t}\n\t\t};\n\t\tconst key = configKey(address, d);\n\t\tconst value = coerce(process.env[key], d, key);\n\t\tif (value === void 0) continue;\n\t\tprocess.env[configKey(\"\", d)] = encode(\"service\", value);\n\t}\n}\n/** The framework-resolved origin row: COMPOSER_<addr>_ORIGIN. Written per\n* compute service at serialize — the service's own provisioned endpoint URL,\n* riding the reserved-provider-param machinery (`origin-key.ts`'s\n* `ORIGIN_PARAM`); never a declared param, never in config(). A harness with\n* no deploy behind it supplies it by setting `COMPOSER_ORIGIN` to the\n* JSON-encoded origin URL — exactly how the existing entrypoint tests supply\n* their other `COMPOSER_*` rows. */\nconst ORIGIN_KEY_NAME = \"ORIGIN\";\n/**\n* Reads this service's origin back out of the address-free stash\n* `stashProviderParams` wrote for the ORIGIN entry. `COMPOSER_ORIGIN` unset is\n* a loud failure — a deployed environment always writes it, so an unset row\n* means either a local harness that hasn't supplied it or a boot() called\n* before run().\n*/\nfunction readOrigin() {\n\tconst d = {\n\t\towner: \"service\",\n\t\tname: ORIGIN_KEY_NAME,\n\t\tparam: {\n\t\t\tschema: type(\"string\"),\n\t\t\toptional: true\n\t\t}\n\t};\n\tconst key = configKey(\"\", d);\n\tconst value = coerce(process.env[key], d, key);\n\tif (value === void 0) throw new Error(\"this service's origin is not available (env COMPOSER_ORIGIN is unset) — a deployed environment writes it automatically; a local harness must supply it like any other config value (set COMPOSER_ORIGIN to the JSON-encoded origin URL).\");\n\treturn blindCast(value);\n}\n/** Synchronous Standard Schema validation — see the matching note in core's `config.ts`. */\nfunction standardValidateSync(schema, value) {\n\tconst result = schema[\"~standard\"].validate(value);\n\tif (result instanceof Promise) throw new Error(\"config param schema validation must be synchronous — async Standard Schema validators are not supported for config params\");\n\tif (result.issues !== void 0) throw new Error(`config param validation failed: ${result.issues.map((issue) => issue.message).join(\"; \")}`);\n\treturn result.value;\n}\n//#endregion\n//#region ../../../0-framework/2-authoring/service-rpc/dist/index.mjs\n/** ADR-0031's need brand for RPC's per-binding service key — the target registers a provisioner under this. */\nconst RPC_PEER_KEY = Symbol.for(\"prisma:rpc/per-binding-key\");\n//#endregion\n//#region ../../1-extensions/target/dist/provisioned-edges-B_XS1Mz-.mjs\n/**\n* The service's own origin as a reserved provider param (ADR-0031): the ONE\n* brand and the ONE entry — shared by control.ts (which registers the\n* deploy-side value function that resolves the provisioned service's\n* `endpointDomain` — see its `selfOriginValue`) and compute.ts (which\n* validates and stashes the row at boot through the generic\n* `stashProviderParams` loop), so writer and reader cannot drift.\n*\n* Unlike the key-minting brands (`service-keys.ts`, `streams-keys.ts`) this\n* brand has no provisioner and no consumer edges: the value derives from the\n* service's OWN provisioned attributes, so control.ts registers it as a\n* service-derived provider param (`descriptors/shared.ts`'s\n* `ServiceProviderParam`) and the descriptor writes it for EVERY compute\n* service, exposing or not.\n*\n* This module is reachable from the RUNTIME/authoring side — it must never\n* import `@internal/lowering` or `effect`, or those tokens leak into a user\n* service's bundle (the deploy-side value function lives in control.ts, the\n* control-plane-only entry).\n*/\n/** ADR-0031's brand for the service's own origin — control.ts registers the deploy-side value function under this. */\nconst SELF_ORIGIN = Symbol.for(\"prisma:self-origin\");\n/**\n* The reserved provider param for the origin row: the var name is `ORIGIN`,\n* derived through `configKey` at both ends (`configKey(address, …)` at\n* deploy, `configKey('', …)` — `COMPOSER_ORIGIN` — at boot, where\n* `readOrigin` reads it back). `brand` is `SELF_ORIGIN` — control.ts looks\n* its deploy-side value function up by this field.\n*/\nconst ORIGIN_PARAM = {\n\tname: ORIGIN_KEY_NAME,\n\tschema: type(\"string\"),\n\tbrand: SELF_ORIGIN\n};\n/**\n* RPC's reserved provider param (ADR-0030/ADR-0031): the declaration —\n* name + schema + brand — for the accepted-keys set a provider stores, shared\n* by `control.ts` (which registers the deploy-side `value(refs)` that mints\n* and aggregates it — see its `rpcAcceptedKeysValue`) and `compute.ts` (which\n* validates and stashes it at boot), so writer and reader cannot drift.\n* Finding the edges themselves is `provisioned-edges.ts`'s generic,\n* brand-blind scan — RPC is not special-cased anywhere in this target.\n*\n* This module is reachable from the RUNTIME/authoring side — it must never\n* import `@internal/lowering` or `effect`, or those tokens leak into a user\n* service's bundle (the deploy-side `value(refs)` lives in control.ts, the\n* control-plane-only entry).\n*/\n/**\n* The reserved provider param for RPC's accepted-keys set: the var name is\n* `RPC_ACCEPTED_KEYS`, derived through `configKey` at both ends\n* (`configKey(address, …)` at deploy, `configKey('', …)` at boot — the\n* address-free form is `@internal/service-rpc`'s `RPC_ACCEPTED_KEYS_ENV`). `brand` is\n* `RPC_PEER_KEY`, the same brand `perBindingToken()`'s need carries — control.ts\n* looks its `value(refs)` up by this field.\n*/\nconst RPC_ACCEPTED_KEYS_PARAM = {\n\tname: \"RPC_ACCEPTED_KEYS\",\n\tschema: type(\"string[]\"),\n\tbrand: RPC_PEER_KEY\n};\n/** ADR-0031's need brand for the streams module's bearer key — control.ts registers the provisioner under this. */\nconst STREAMS_API_KEY = Symbol.for(\"prisma:streams/api-key\");\n/**\n* The reserved provider param for the streams bearer key: the var name is\n* `STREAMS_API_KEY`. `brand` is `STREAMS_API_KEY` itself (the same symbol\n* `streamsApiKeyNeed()`'s need carries) — control.ts looks its `value(refs)`\n* up by this field.\n*/\nconst STREAMS_API_KEY_PARAM = {\n\tname: \"STREAMS_API_KEY\",\n\tschema: type(\"string\"),\n\tbrand: STREAMS_API_KEY\n};\nconfigKey(\"\", {\n\towner: \"service\",\n\tname: STREAMS_API_KEY_PARAM.name\n});\n/**\n* The list of provider-side reserved params the boot path validates and\n* stashes (ADR-0031): every brand's `{name, schema, brand}` declaration,\n* collected from that brand's own module (`service-keys.ts`,\n* `streams-keys.ts`, `origin-key.ts`) so `compute.ts` names no brand itself.\n*\n* This list exists separately from `control.ts`'s deploy-side registry\n* (`PROVIDER_PARAMS`) because `control.ts` is deploy-only code — it imports\n* `@internal/lowering` and `effect` to mint values — and a booted service\n* must never import it. This module is reachable from a user service's\n* bundle through `compute.ts`, so it must never import `@internal/lowering`,\n* `effect`, `alchemy`, or `control.ts`.\n*\n* This is the single source of which reserved provider params exist:\n* control.ts builds `PROVIDER_PARAMS` by mapping over this list and looking\n* up each entry's deploy-side value function (edge-derived `value(refs)` or\n* service-derived `valueForService(provisioned, address)`) by its `brand`,\n* throwing at module load if one is missing. Adding a brand means adding its\n* entry here, plus its deploy-side value function in control.ts — a brand\n* registered for deploy but absent here is no longer expressible, because\n* deploy no longer names its own param set independently.\n*/\nconst RESERVED_PROVIDER_PARAMS = [\n\tRPC_ACCEPTED_KEYS_PARAM,\n\tSTREAMS_API_KEY_PARAM,\n\tORIGIN_PARAM\n];\nObject.freeze({\n\tkind: \"s3\",\n\t__cmp: {\n\t\turl: \"\",\n\t\tbucket: \"\",\n\t\taccessKeyId: \"\",\n\t\tsecretAccessKey: \"\"\n\t},\n\tsatisfies: (required) => required.kind === \"s3\"\n});\nconst reservedParams = { port: number$1({ default: 3e3 }) };\n/**\n* A Prisma Compute service — declarations only (deps + params + build + the\n* ports it exposes), no descriptor. `params` merges with the reserved\n* `ReservedParams` (`port`); a user param whose name collides with a reserved\n* one fails at authoring, the same way a colliding dependency name does.\n*\n* · run(address, boot) — the process controller: deserialize the platform\n* environment (keyed off `address`, the extension's ONE env read) into a\n* typed Config, re-emit it under address-free process-local stash keys,\n* then call boot() to start the app's entry.\n* · load() / config() — called from inside the app's entry: read the stash;\n* load() hydrates + memoizes the deps, config() returns the typed params.\n* Separate accessors so a dep and a param never share a namespace (ADR-0021).\n* · origin() — this service's platform-assigned public origin, read from the\n* stash `run()` populates; memoized per process.\n*\n* The underlying node carries `extension: '@prisma/composer-prisma-cloud'` —\n* the control-plane registry key `prisma-composer deploy` resolves through the\n* app's `prisma-composer.config.ts` (ADR-0017). This module loads nothing at\n* deploy time; nodes are pure data until run() or load() is called.\n*/\nvar ComputeService = class {\n\t#resolved;\n\t#loadedDeps;\n\t#loadedParams;\n\t#loadedSecrets;\n\t#origin;\n\tconstructor(node) {\n\t\tObject.assign(this, node);\n\t}\n\t#processConfig() {\n\t\tif (this.#resolved === void 0) this.#resolved = deserialize(this, \"\");\n\t\treturn this.#resolved;\n\t}\n\tasync run(address, boot) {\n\t\tconst config = deserialize(this, address);\n\t\tstash(this, config);\n\t\tstashProviderParams(RESERVED_PROVIDER_PARAMS, address);\n\t\tstashSecrets(this, address);\n\t\tconst port = config.service[\"port\"];\n\t\tif (typeof port === \"number\") process.env[\"PORT\"] = String(port);\n\t\treturn boot();\n\t}\n\tload() {\n\t\tif (this.#loadedDeps === void 0) this.#loadedDeps = blindCast(hydrateSync(this, this.#processConfig()));\n\t\treturn this.#loadedDeps;\n\t}\n\tconfig() {\n\t\tif (this.#loadedParams === void 0) this.#loadedParams = blindCast(this.#processConfig().service);\n\t\treturn this.#loadedParams;\n\t}\n\tsecrets() {\n\t\tif (this.#loadedSecrets === void 0) this.#loadedSecrets = blindCast(hydrateSecrets(this, deserializeSecrets(this, \"\")));\n\t\treturn this.#loadedSecrets;\n\t}\n\t/** This service's platform-assigned public origin — read from the stash\n\t* run() populates and memoized per process. Throws if called before run()\n\t* has stashed it (readOrigin's pinned message). */\n\torigin() {\n\t\tthis.#origin ??= readOrigin();\n\t\treturn this.#origin;\n\t}\n};\nconst compute = (def) => {\n\tconst userParams = def.params ?? blindCast({});\n\tfor (const reserved of Object.keys(reservedParams)) {\n\t\tif (reserved in def.deps) throw new Error(`compute(): dependency \"${reserved}\" collides with the reserved service param of the same name — rename the dependency.`);\n\t\tif (reserved in userParams) throw new Error(`compute(): param \"${reserved}\" collides with the reserved service param of the same name — rename the param.`);\n\t}\n\tfor (const name of Object.keys(userParams)) if (name.toUpperCase() === \"ORIGIN\") throw new Error(`compute(): param \"${name}\" collides with the framework-written origin row — rename the param.`);\n\tfor (const name of Object.keys(def.secrets ?? {})) if (name.toUpperCase() === \"ORIGIN\") throw new Error(`compute(): secret \"${name}\" collides with the framework-written origin row — rename the secret.`);\n\tconst params = blindCast({\n\t\t...userParams,\n\t\t...reservedParams\n\t});\n\tconst instance = new ComputeService(service$1({\n\t\tname: def.name,\n\t\textension: \"@prisma/composer-prisma-cloud\",\n\t\ttype: \"compute\",\n\t\tinputs: def.deps,\n\t\tparams,\n\t\t...def.secrets !== void 0 ? { secrets: def.secrets } : {},\n\t\tbuild: def.build,\n\t\t...def.expose !== void 0 ? { expose: def.expose } : {}\n\t}));\n\tObject.freeze(instance);\n\treturn instance;\n};\n/**\n* The contract a Postgres provides — and the contract its consumers require.\n* `satisfies` compares KIND, not identity: an extension module can be duplicated\n* across a workspace (same rationale as the Symbol.for node brand), and every\n* duplicate's contract must still satisfy. `__cmp` is the connection config a\n* postgres offers; core never inspects it.\n*/\nconst postgresContract = Object.freeze({\n\tkind: \"postgres\",\n\t__cmp: { url: \"\" },\n\tsatisfies: (required) => required.kind === \"postgres\"\n});\nfunction postgres(opts) {\n\tif (opts?.name !== void 0) return resource({\n\t\tname: opts.name,\n\t\textension: \"@prisma/composer-prisma-cloud\",\n\t\tprovides: postgresContract\n\t});\n\treturn dependency({\n\t\ttype: \"postgres\",\n\t\tconnection: {\n\t\t\tparams: { url: string$1() },\n\t\t\thydrate: (v) => v\n\t\t},\n\t\trequired: postgresContract\n\t});\n}\n/**\n* The contract the `s3-credentials` resource provides — a minted SigV4 key\n* pair. `satisfies` compares KIND only (mirrors `postgresContract`); `__cmp` is\n* the config the resource offers, which core never inspects.\n*/\nconst credentialsContract = Object.freeze({\n\tkind: \"credentials\",\n\t__cmp: {\n\t\taccessKeyId: \"\",\n\t\tsecretAccessKey: \"\"\n\t},\n\tsatisfies: (required) => required.kind === \"credentials\"\n});\nfunction s3Credentials(opts) {\n\tif (opts?.name !== void 0) return resource({\n\t\tname: opts.name,\n\t\textension: \"@prisma/composer-prisma-cloud\",\n\t\tprovides: credentialsContract\n\t});\n\treturn dependency({\n\t\ttype: \"credentials\",\n\t\tconnection: {\n\t\t\tparams: {\n\t\t\t\taccessKeyId: string$1(),\n\t\t\t\tsecretAccessKey: string$1()\n\t\t\t},\n\t\t\thydrate: (v) => v\n\t\t},\n\t\trequired: credentialsContract\n\t});\n}\n/**\n* The storage service authoring factory — a `compute` service routed to the\n* `s3-store` lowering instead of `compute`'s. It is exactly `compute`'s\n* runnable (run/load/config, deps, params, build, expose) with the routing\n* `type` overridden to `'s3-store'`: nothing at runtime keys off `type` (the\n* serializer keys off the deployment address and each param's owner/name, and\n* `load`/`config` off deps/params), so only the deploy-time descriptor lookup\n* sees the override and routes to the extended-output lowering (§ 5). The\n* return type is compute's exactly (including the reserved `port` param). The\n* storage module (D4b) calls this with its `db`/`credentials` deps, a `bucket`\n* param, and `expose: { store: s3Contract }`.\n*\n* `compute()`'s result is a `ComputeService` instance — its run/load/config/\n* secrets/origin methods live on the class prototype, not as the instance's\n* own properties, so a plain object spread (`{ ...node }`) would silently\n* drop them. Building a fresh `ComputeService` from the same data fields\n* (which `{ ...node }` DOES copy — they're the node's own enumerable\n* properties) with `type` overridden keeps every method intact.\n*/\nfunction s3StoreService(def) {\n\tconst instance = new ComputeService({\n\t\t...compute(def),\n\t\ttype: \"s3-store\"\n\t});\n\tObject.freeze(instance);\n\treturn instance;\n}\n//#endregion\n//#region src/contract.ts\nconst s3Contract = Object.freeze({\n\tkind: \"s3\",\n\t__cmp: {\n\t\turl: \"\",\n\t\tbucket: \"\",\n\t\taccessKeyId: \"\",\n\t\tsecretAccessKey: \"\"\n\t},\n\tsatisfies: (required) => required.kind === \"s3\"\n});\n//#endregion\n//#region src/storage-service.ts\n/**\n* The storage service node (like cron's `scheduler.ts` + `scheduler-service.ts`\n* combined): `storageService` builds the `s3-store` service — a Postgres `db`\n* dependency, a minted `credentials` dependency, a `bucket` param, and the\n* `store` port exposing `s3Contract`. The deploy bootstrap runs the\n* default-exported bare node (`main.run(address, boot)`); the real bucket comes\n* from serialized config at runtime, so the default's `bucket` is only a\n* placeholder — exactly like `scheduler-service.ts` default-exports\n* `cronScheduler({ jobs: [] })`.\n*/\nfunction storageService(opts) {\n\treturn s3StoreService({\n\t\tname: \"storage\",\n\t\tdeps: {\n\t\t\tdb: postgres(),\n\t\t\tcredentials: s3Credentials()\n\t\t},\n\t\tparams: { bucket: string$1({ default: opts.bucket }) },\n\t\tbuild: nodeBuild({\n\t\t\tmodule: new URL(\"./storage-service.mjs\", import.meta.url).href,\n\t\t\tentry: \"./storage-entrypoint.mjs\"\n\t\t}),\n\t\texpose: { store: s3Contract }\n\t});\n}\nstorageService({ bucket: \"storage\" });\n//#endregion\n//#region src/execution/storage-entrypoint.ts\nconst service = storageService({ bucket: \"storage\" });\nconst { db, credentials } = service.load();\nconst { bucket, port } = service.config();\nstartStorageServer({\n\tstore: await createPgStore(db.url),\n\tcredentials,\n\tbucket,\n\tport\n});\n//#endregion\nexport {};\n\n//# sourceMappingURL=storage-entrypoint.mjs.map"],"mappings":"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"}
1
+ {"version":3,"file":"storage-entrypoint.mjs","names":["#value","#resolved","#loadedDeps","#processConfig","#loadedParams","#loadedSecrets","#origin"],"sources":["../../../../1-prisma-cloud/2-shared-modules/storage/dist/storage-entrypoint.mjs"],"sourcesContent":["import { createHash, createHmac, timingSafeEqual } from \"node:crypto\";\nimport { SQL } from \"bun\";\n//#region ../../1-extensions/target/dist/pg-connection-CadPZuEK.mjs\n/** Connection resilience helpers for Prisma Postgres cold-starts (FT-5226); no heavy imports (no `effect`/`alchemy`/`pg`), so the deploy lowerings, the pnPostgres runtime client, and bun-runnable services (the storage store, via the pure `@internal/prisma-cloud/connection` subpath) all share one implementation. */\n/** Network-level socket failures node-postgres surfaces as `err.code`. */\nconst TRANSIENT_CODES = /* @__PURE__ */ new Set([\n\t\"ECONNREFUSED\",\n\t\"ECONNRESET\",\n\t\"ETIMEDOUT\",\n\t\"EPIPE\",\n\t\"ENOTFOUND\",\n\t\"EAI_AGAIN\"\n]);\n/** Connection-establishment failure messages (no useful `err.code`). */\nconst TRANSIENT_MESSAGE_FRAGMENTS = [\n\t\"upstream database\",\n\t\"connection terminated\",\n\t\"connection refused\",\n\t\"terminating connection\",\n\t\"server closed the connection\",\n\t\"connection timeout\",\n\t\"timeout expired\"\n];\n/** Whether an error is a transient connection failure worth retrying, as opposed to a real query error that must surface at once. */\nfunction isTransientConnectionError(error) {\n\tif (typeof error !== \"object\" || error === null) return false;\n\tconst code = \"code\" in error && typeof error.code === \"string\" ? error.code : void 0;\n\tif (code !== void 0 && TRANSIENT_CODES.has(code)) return true;\n\tconst message = \"message\" in error && typeof error.message === \"string\" ? error.message.toLowerCase() : \"\";\n\treturn TRANSIENT_MESSAGE_FRAGMENTS.some((fragment) => message.includes(fragment));\n}\n/**\n* Retries an operation past a transient connection failure, bounded (default\n* ~1 min). `shouldRetry` decides what's transient — defaults to retrying\n* everything; the runtime client passes {@link isTransientConnectionError}.\n*/\nasync function withConnectionRetry(operation, opts = {}) {\n\tconst attempts = opts.attempts ?? 12;\n\tconst delayMs = opts.delayMs ?? 5e3;\n\tconst sleep = opts.sleep ?? ((ms) => new Promise((resolve) => setTimeout(resolve, ms)));\n\tconst shouldRetry = opts.shouldRetry ?? (() => true);\n\tlet lastError;\n\tfor (let attempt = 1; attempt <= attempts; attempt++) try {\n\t\treturn await operation();\n\t} catch (error) {\n\t\tif (!shouldRetry(error)) throw error;\n\t\tlastError = error;\n\t\tif (attempt < attempts) await sleep(delayMs);\n\t}\n\tthrow lastError;\n}\n/** Retries acquiring a connection past a transient cold-start; {@link withConnectionRetry} with {@link isTransientConnectionError} fixed as the predicate. */\nfunction retryTransientConnect(acquire, opts = {}) {\n\treturn withConnectionRetry(acquire, {\n\t\t...opts,\n\t\tshouldRetry: isTransientConnectionError\n\t});\n}\n//#endregion\n//#region src/pg-store.ts\n/**\n* The `ObjectStore` over Postgres `bytea` (spec § 3): one `objects` table,\n* single-row-per-object. Ranged reads use SQL `substring` so a range request\n* never detoasts the whole object. The schema is applied idempotently at init\n* behind a bounded connection retry — the first connect to a freshly\n* provisioned Postgres is rejected while the upstream is cold (FT-5226).\n*\n* Runtime engine code (`bun` SQL + `node:crypto`); NOT re-exported from the\n* authoring barrel.\n*/\nconst DEFAULT_MAX_KEYS = 1e3;\nfunction etagOf(bytes) {\n\treturn `\"${createHash(\"sha256\").update(bytes).digest(\"hex\")}\"`;\n}\n/** bytea comes back as a Node Buffer (a Uint8Array). Fail closed on anything else rather than returning wrong bytes. */\nfunction toBytes(value) {\n\tif (value instanceof Uint8Array) return value;\n\tthrow new TypeError(`expected bytea to decode as Uint8Array, got ${typeof value}`);\n}\n/** One row → GetResult (both the whole-object and ranged queries alias the payload as `bytes`; `size` is the bigint total). */\nfunction toGetResult(row) {\n\treturn {\n\t\tbytes: toBytes(row.bytes),\n\t\tetag: row.etag,\n\t\tcontentType: row.content_type,\n\t\tsize: Number(row.size)\n\t};\n}\nvar PgObjectStore = class {\n\tsql;\n\tconstructor(sql) {\n\t\tthis.sql = sql;\n\t}\n\tasync put(bucket, key, bytes, opts = {}) {\n\t\tconst etag = etagOf(bytes);\n\t\tconst contentType = opts.contentType ?? \"application/octet-stream\";\n\t\tawait this.sql`\n insert into objects (bucket, key, bytes, size, etag, content_type)\n values (${bucket}, ${key}, ${bytes}, ${bytes.byteLength}, ${etag}, ${contentType})\n on conflict (bucket, key) do update set\n bytes = excluded.bytes, size = excluded.size,\n etag = excluded.etag, content_type = excluded.content_type`;\n\t\treturn { etag };\n\t}\n\tasync get(bucket, key, opts = {}) {\n\t\tconst range = opts.range;\n\t\tif (range) {\n\t\t\tconst from = range.start + 1;\n\t\t\tconst row = (range.end === void 0 ? await this.sql`select substring(bytes from ${from}) as bytes, size, etag, content_type\n from objects where bucket = ${bucket} and key = ${key}` : await this.sql`select substring(bytes from ${from} for ${range.end - range.start + 1}) as bytes,\n size, etag, content_type\n from objects where bucket = ${bucket} and key = ${key}`)[0];\n\t\t\treturn row === void 0 ? null : toGetResult(row);\n\t\t}\n\t\tconst row = (await this.sql`select bytes, size, etag, content_type\n from objects where bucket = ${bucket} and key = ${key}`)[0];\n\t\treturn row === void 0 ? null : toGetResult(row);\n\t}\n\tasync head(bucket, key) {\n\t\tconst row = (await this.sql`select size, etag, content_type\n from objects where bucket = ${bucket} and key = ${key}`)[0];\n\t\tif (row === void 0) return null;\n\t\treturn {\n\t\t\tetag: row.etag,\n\t\t\tsize: Number(row.size),\n\t\t\tcontentType: row.content_type\n\t\t};\n\t}\n\tasync delete(bucket, key) {\n\t\tawait this.sql`delete from objects where bucket = ${bucket} and key = ${key}`;\n\t}\n\tasync list(bucket, opts = {}) {\n\t\tconst prefix = opts.prefix ?? \"\";\n\t\tconst maxKeys = opts.maxKeys ?? DEFAULT_MAX_KEYS;\n\t\tconst token = opts.continuationToken;\n\t\tconst limit = maxKeys + 1;\n\t\tconst keys = (token === void 0 ? await this.sql`select key from objects\n where bucket = ${bucket} and starts_with(key, ${prefix})\n order by key limit ${limit}` : await this.sql`select key from objects\n where bucket = ${bucket} and starts_with(key, ${prefix}) and key > ${token}\n order by key limit ${limit}`).map((r) => r.key);\n\t\tconst isTruncated = keys.length > maxKeys;\n\t\tconst page = isTruncated ? keys.slice(0, maxKeys) : keys;\n\t\tconst last = page.at(-1);\n\t\treturn {\n\t\t\tkeys: page,\n\t\t\tisTruncated,\n\t\t\t...isTruncated && last !== void 0 ? { nextContinuationToken: last } : {}\n\t\t};\n\t}\n};\n/**\n* Connect (FT-5219 posture: `max: 1`, short `idleTimeout`), apply the schema\n* idempotently behind the cold-start retry, and return the store.\n*/\nasync function createPgStore(url) {\n\tconst sql = new SQL({\n\t\turl,\n\t\tmax: 1,\n\t\tidleTimeout: 10\n\t});\n\tawait retryTransientConnect(() => sql`\n create table if not exists objects (\n bucket text not null,\n key text not null,\n bytes bytea not null,\n size bigint not null,\n etag text not null,\n content_type text not null,\n created_at timestamptz not null default now(),\n primary key (bucket, key)\n )`);\n\treturn new PgObjectStore(sql);\n}\n//#endregion\n//#region ../../0-lowering/s3-protocol/dist/index.mjs\nconst ALGORITHM = \"AWS4-HMAC-SHA256\";\nconst UNSIGNED_PAYLOAD = \"UNSIGNED-PAYLOAD\";\nfunction sha256Hex(data) {\n\treturn createHash(\"sha256\").update(data).digest(\"hex\");\n}\nfunction hmac(key, data) {\n\treturn createHmac(\"sha256\", key).update(data).digest();\n}\n/** AWS canonical URI encoding: every byte except the unreserved set is %XX. */\nfunction awsUriEncode(value) {\n\treturn encodeURIComponent(value).replace(/[!'()*]/g, (ch) => `%${ch.charCodeAt(0).toString(16).toUpperCase()}`).replace(/%7E/g, \"~\");\n}\nfunction parseCredential(credential) {\n\tconst parts = credential.split(\"/\");\n\tif (parts.length !== 5 || parts[4] !== \"aws4_request\") return null;\n\tconst [accessKeyId, date, region, service] = parts;\n\tif (!accessKeyId || !date || !region || !service) return null;\n\treturn {\n\t\taccessKeyId,\n\t\tdate,\n\t\tregion,\n\t\tservice\n\t};\n}\nfunction signingKey(secret, scope) {\n\treturn hmac(hmac(hmac(hmac(`AWS4${secret}`, scope.date), scope.region), scope.service), \"aws4_request\");\n}\nfunction canonicalHeaders(url, req, signedHeaders) {\n\treturn signedHeaders.map((name) => {\n\t\treturn `${name}:${(name === \"host\" ? url.host : req.headers.get(name) ?? \"\").trim().replace(/\\s+/g, \" \")}\\n`;\n\t}).join(\"\");\n}\nfunction canonicalQuery(url, exclude) {\n\tconst entries = [];\n\tfor (const [key, value] of url.searchParams.entries()) {\n\t\tif (exclude !== void 0 && key === exclude) continue;\n\t\tentries.push([awsUriEncode(key), awsUriEncode(value)]);\n\t}\n\tconst cmp = (a, b) => a < b ? -1 : a > b ? 1 : 0;\n\tentries.sort(([ak, av], [bk, bv]) => cmp(ak, bk) || cmp(av, bv));\n\treturn entries.map(([k, v]) => `${k}=${v}`).join(\"&\");\n}\nfunction stringToSign(amzDate, scope, canonicalRequest) {\n\tconst scopeString = `${scope.date}/${scope.region}/${scope.service}/aws4_request`;\n\treturn [\n\t\tALGORITHM,\n\t\tamzDate,\n\t\tscopeString,\n\t\tsha256Hex(canonicalRequest)\n\t].join(\"\\n\");\n}\nfunction signatureMatches(expected, provided) {\n\tconst a = Buffer.from(expected, \"hex\");\n\tconst b = Buffer.from(provided, \"hex\");\n\treturn a.length === b.length && a.length > 0 && timingSafeEqual(a, b);\n}\n/** `YYYYMMDDTHHMMSSZ` → epoch ms, or null when malformed. */\nfunction parseAmzDate(amzDate) {\n\tconst match = /^(\\d{4})(\\d{2})(\\d{2})T(\\d{2})(\\d{2})(\\d{2})Z$/.exec(amzDate);\n\tif (!match) return null;\n\tconst [, y, mo, d, h, mi, s] = match;\n\treturn Date.UTC(Number(y), Number(mo) - 1, Number(d), Number(h), Number(mi), Number(s));\n}\nfunction parseAuthorizationHeader(header) {\n\tif (!header.startsWith(`${ALGORITHM} `)) return null;\n\tconst rest = header.slice(17);\n\tconst fields = /* @__PURE__ */ new Map();\n\tfor (const part of rest.split(\",\")) {\n\t\tconst eq = part.indexOf(\"=\");\n\t\tif (eq === -1) continue;\n\t\tfields.set(part.slice(0, eq).trim(), part.slice(eq + 1).trim());\n\t}\n\tconst credential = fields.get(\"Credential\");\n\tconst signedHeaders = fields.get(\"SignedHeaders\");\n\tconst signature = fields.get(\"Signature\");\n\tif (!credential || !signedHeaders || !signature) return null;\n\treturn {\n\t\tcredential,\n\t\tsignedHeaders: signedHeaders.split(\";\"),\n\t\tsignature\n\t};\n}\n/** The one signing core both auth forms share: check the access key, rebuild the canonical request, derive the key, compare in constant time. */\nfunction verifySignature(req, url, credentials, params) {\n\tif (params.scope.accessKeyId !== credentials.accessKeyId) return {\n\t\tok: false,\n\t\treason: \"unknown access key\"\n\t};\n\tconst canonicalRequest = [\n\t\treq.method,\n\t\turl.pathname,\n\t\tcanonicalQuery(url, params.excludeQuery),\n\t\tcanonicalHeaders(url, req, params.signedHeaders),\n\t\tparams.signedHeaders.join(\";\"),\n\t\tparams.payloadHash\n\t].join(\"\\n\");\n\treturn signatureMatches(hmac(signingKey(credentials.secretAccessKey, params.scope), stringToSign(params.amzDate, params.scope, canonicalRequest)).toString(\"hex\"), params.signature) ? { ok: true } : {\n\t\tok: false,\n\t\treason: \"signature mismatch\"\n\t};\n}\nfunction verifyHeader(req, url, credentials) {\n\tconst auth = parseAuthorizationHeader(req.headers.get(\"authorization\") ?? \"\");\n\tif (!auth) return {\n\t\tok: false,\n\t\treason: \"malformed Authorization header\"\n\t};\n\tconst scope = parseCredential(auth.credential);\n\tif (!scope) return {\n\t\tok: false,\n\t\treason: \"malformed credential scope\"\n\t};\n\tconst amzDate = req.headers.get(\"x-amz-date\");\n\tif (!amzDate) return {\n\t\tok: false,\n\t\treason: \"missing x-amz-date\"\n\t};\n\tconst payloadHash = req.headers.get(\"x-amz-content-sha256\");\n\tif (!payloadHash) return {\n\t\tok: false,\n\t\treason: \"missing x-amz-content-sha256\"\n\t};\n\treturn verifySignature(req, url, credentials, {\n\t\tscope,\n\t\tamzDate,\n\t\tsignedHeaders: auth.signedHeaders,\n\t\tpayloadHash,\n\t\tsignature: auth.signature\n\t});\n}\nfunction verifyPresigned(req, url, credentials, now) {\n\tconst q = url.searchParams;\n\tif (q.get(\"X-Amz-Algorithm\") !== ALGORITHM) return {\n\t\tok: false,\n\t\treason: \"unsupported presign algorithm\"\n\t};\n\tconst credentialRaw = q.get(\"X-Amz-Credential\");\n\tconst amzDate = q.get(\"X-Amz-Date\");\n\tconst expiresRaw = q.get(\"X-Amz-Expires\");\n\tconst signedHeadersRaw = q.get(\"X-Amz-SignedHeaders\");\n\tconst signature = q.get(\"X-Amz-Signature\");\n\tif (!credentialRaw || !amzDate || !expiresRaw || !signedHeadersRaw || !signature) return {\n\t\tok: false,\n\t\treason: \"incomplete presign parameters\"\n\t};\n\tconst scope = parseCredential(credentialRaw);\n\tif (!scope) return {\n\t\tok: false,\n\t\treason: \"malformed credential scope\"\n\t};\n\tconst signedAt = parseAmzDate(amzDate);\n\tconst expires = Number(expiresRaw);\n\tif (signedAt === null || !Number.isFinite(expires)) return {\n\t\tok: false,\n\t\treason: \"malformed presign date\"\n\t};\n\tif (now.getTime() > signedAt + expires * 1e3) return {\n\t\tok: false,\n\t\treason: \"presign expired\"\n\t};\n\treturn verifySignature(req, url, credentials, {\n\t\tscope,\n\t\tamzDate,\n\t\tsignedHeaders: signedHeadersRaw.split(\";\"),\n\t\tpayloadHash: UNSIGNED_PAYLOAD,\n\t\tsignature,\n\t\texcludeQuery: \"X-Amz-Signature\"\n\t});\n}\n/**\n* Verify a request's SigV4 signature against a single credential pair. Picks\n* the presigned form when `X-Amz-Signature` is present, otherwise the\n* `Authorization`-header form. `now` is injectable for deterministic\n* expiry tests.\n*/\nfunction verifyRequest(req, credentials, now = /* @__PURE__ */ new Date()) {\n\tconst url = new URL(req.url);\n\tif (url.searchParams.has(\"X-Amz-Signature\")) return verifyPresigned(req, url, credentials, now);\n\tif (req.headers.has(\"authorization\")) return verifyHeader(req, url, credentials);\n\treturn {\n\t\tok: false,\n\t\treason: \"unsigned request\"\n\t};\n}\nconst DEFAULT_CONTENT_TYPE = \"application/octet-stream\";\n/** Path-style: `/{bucket}/{key…}`. Each segment is percent-decoded. */\nfunction parseTarget(url) {\n\tconst segments = url.pathname.split(\"/\").filter((s) => s.length > 0);\n\tif (segments.length === 0) return null;\n\tconst [bucket, ...keyParts] = segments;\n\treturn {\n\t\tbucket: decodeURIComponent(bucket ?? \"\"),\n\t\tkey: keyParts.map(decodeURIComponent).join(\"/\")\n\t};\n}\n/** `bytes=a-b` (inclusive) or `bytes=a-` (open-ended). Null when absent/malformed. */\nfunction parseRange(header) {\n\tif (!header) return null;\n\tconst match = /^bytes=(\\d+)-(\\d*)$/.exec(header.trim());\n\tif (!match) return null;\n\tconst start = Number(match[1]);\n\treturn match[2] ? {\n\t\tstart,\n\t\tend: Number(match[2])\n\t} : { start };\n}\nfunction xmlEscape(value) {\n\treturn value.replace(/&/g, \"&amp;\").replace(/</g, \"&lt;\").replace(/>/g, \"&gt;\").replace(/\"/g, \"&quot;\").replace(/'/g, \"&apos;\");\n}\nfunction listXml(bucket, prefix, maxKeys, result) {\n\tconst contents = result.keys.map((k) => `<Contents><Key>${xmlEscape(k)}</Key></Contents>`).join(\"\");\n\tconst next = result.isTruncated && result.nextContinuationToken !== void 0 ? `<NextContinuationToken>${xmlEscape(result.nextContinuationToken)}</NextContinuationToken>` : \"\";\n\treturn `<?xml version=\"1.0\" encoding=\"UTF-8\"?><ListBucketResult xmlns=\"http://s3.amazonaws.com/doc/2006-03-01/\"><Name>${xmlEscape(bucket)}</Name><Prefix>${xmlEscape(prefix)}</Prefix><KeyCount>${result.keys.length}</KeyCount><MaxKeys>${maxKeys}</MaxKeys><IsTruncated>${result.isTruncated}</IsTruncated>` + contents + next + \"</ListBucketResult>\";\n}\nconst DEFAULT_MAX_KEYS$1 = 1e3;\nasync function handleList(store, bucket, url) {\n\tconst prefix = url.searchParams.get(\"prefix\") ?? \"\";\n\tconst continuationToken = url.searchParams.get(\"continuation-token\");\n\tconst maxKeysRaw = url.searchParams.get(\"max-keys\");\n\tconst maxKeys = maxKeysRaw !== null && Number.isFinite(Number(maxKeysRaw)) ? Number(maxKeysRaw) : DEFAULT_MAX_KEYS$1;\n\tconst result = await store.list(bucket, {\n\t\tprefix,\n\t\tmaxKeys,\n\t\t...continuationToken !== null ? { continuationToken } : {}\n\t});\n\treturn new Response(listXml(bucket, prefix, maxKeys, result), {\n\t\tstatus: 200,\n\t\theaders: { \"content-type\": \"application/xml\" }\n\t});\n}\n/** aws-chunked / flexible-checksum PUTs frame the body as chunks + a trailer (signalled by `x-amz-content-sha256: STREAMING-…` or `content-encoding: aws-chunked`); the seed signature still verifies, so reject them (501) rather than store the raw framing as the object bytes. Decoding is out of scope. */\nfunction isStreamingPut(req) {\n\tconst contentSha = req.headers.get(\"x-amz-content-sha256\") ?? \"\";\n\tconst contentEncoding = req.headers.get(\"content-encoding\") ?? \"\";\n\treturn contentSha.startsWith(\"STREAMING-\") || contentEncoding.split(\",\").some((e) => e.trim() === \"aws-chunked\");\n}\nasync function handlePut(store, t, req) {\n\tif (isStreamingPut(req)) return new Response(\"aws-chunked / flexible checksums not supported; set requestChecksumCalculation: 'WHEN_REQUIRED'\", { status: 501 });\n\tconst body = new Uint8Array(await req.arrayBuffer());\n\tconst contentType = req.headers.get(\"content-type\") ?? DEFAULT_CONTENT_TYPE;\n\tconst { etag } = await store.put(t.bucket, t.key, body, { contentType });\n\treturn new Response(null, {\n\t\tstatus: 200,\n\t\theaders: { etag }\n\t});\n}\n/** The etag/content-type/content-length/accept-ranges headers GET and HEAD share — `contentLength` is the slice length for GET, the total object size for HEAD. */\nfunction metaHeaders(meta) {\n\treturn new Headers({\n\t\tetag: meta.etag,\n\t\t\"content-type\": meta.contentType,\n\t\t\"content-length\": String(meta.contentLength),\n\t\t\"accept-ranges\": \"bytes\"\n\t});\n}\nasync function handleGet(store, t, req) {\n\tconst range = parseRange(req.headers.get(\"range\"));\n\tconst object = await store.get(t.bucket, t.key, range ? { range } : void 0);\n\tif (!object) return new Response(null, { status: 404 });\n\tconst headers = metaHeaders({\n\t\tetag: object.etag,\n\t\tcontentType: object.contentType,\n\t\tcontentLength: object.bytes.byteLength\n\t});\n\tif (!range) return new Response(object.bytes, {\n\t\tstatus: 200,\n\t\theaders\n\t});\n\tif (range.start >= object.size && object.size > 0) return new Response(null, {\n\t\tstatus: 416,\n\t\theaders: { \"content-range\": `bytes */${object.size}` }\n\t});\n\tconst end = range.end === void 0 ? object.size - 1 : Math.min(range.end, object.size - 1);\n\theaders.set(\"content-range\", `bytes ${range.start}-${end}/${object.size}`);\n\treturn new Response(object.bytes, {\n\t\tstatus: 206,\n\t\theaders\n\t});\n}\nasync function handleHead(store, t) {\n\tconst meta = await store.head(t.bucket, t.key);\n\tif (!meta) return new Response(null, { status: 404 });\n\treturn new Response(null, {\n\t\tstatus: 200,\n\t\theaders: metaHeaders({\n\t\t\tetag: meta.etag,\n\t\t\tcontentType: meta.contentType,\n\t\t\tcontentLength: meta.size\n\t\t})\n\t});\n}\nasync function handleDelete(store, t) {\n\tawait store.delete(t.bucket, t.key);\n\treturn new Response(null, { status: 204 });\n}\nfunction createS3Handler(opts) {\n\tconst { store, credentials } = opts;\n\treturn async (req) => {\n\t\tif (!verifyRequest(req, credentials).ok) return new Response(null, { status: 403 });\n\t\tconst url = new URL(req.url);\n\t\tconst target = parseTarget(url);\n\t\tif (!target) return new Response(null, { status: 400 });\n\t\tif (req.method === \"GET\" && url.searchParams.get(\"list-type\") === \"2\" && target.key === \"\") return handleList(store, target.bucket, url);\n\t\tif (target.key === \"\") return new Response(null, { status: 400 });\n\t\tswitch (req.method) {\n\t\t\tcase \"PUT\": return handlePut(store, target, req);\n\t\t\tcase \"GET\": return handleGet(store, target, req);\n\t\t\tcase \"HEAD\": return handleHead(store, target);\n\t\t\tcase \"DELETE\": return handleDelete(store, target);\n\t\t\tdefault: return new Response(null, { status: 405 });\n\t\t}\n\t};\n}\n//#endregion\n//#region src/storage-server.ts\nlet guardsInstalled = false;\n/** FT-5219: keep the process alive when Bun.SQL surfaces an idle-close as an unawaited async error. Installed once. */\nfunction installProcessGuards() {\n\tif (guardsInstalled) return;\n\tguardsInstalled = true;\n\tprocess.on(\"uncaughtException\", (err) => console.error(\"uncaughtException\", err));\n\tprocess.on(\"unhandledRejection\", (err) => console.error(\"unhandledRejection\", err));\n}\nfunction startStorageServer(opts) {\n\tinstallProcessGuards();\n\tconst handler = createS3Handler({\n\t\tstore: opts.store,\n\t\tcredentials: opts.credentials\n\t});\n\tconst hostname = opts.hostname ?? \"0.0.0.0\";\n\tconst server = Bun.serve({\n\t\tport: opts.port,\n\t\thostname,\n\t\tfetch: (req) => handler(req)\n\t});\n\treturn {\n\t\turl: `http://${hostname === \"0.0.0.0\" ? \"127.0.0.1\" : hostname}:${server.port}`,\n\t\tstop: () => server.stop(true)\n\t};\n}\n//#endregion\n//#region ../../../0-framework/0-foundation/foundation/dist/casts.mjs\n/**\n* **Last-resort escape hatch for unsafe type assertions. Not a sanctioned tool to reach for.**\n*\n* Before reaching for `blindCast`, **rewrite the surrounding code so the cast becomes\n* unnecessary**: tighten an input type, add a runtime check that narrows via a type\n* predicate, restructure a generic so the compiler can see the relationship you're\n* asserting, or use {@link castAs} when the value already satisfies the target type.\n* Only when no rewrite is feasible does `blindCast` become the right answer — and at\n* that point, the `Reason` literal you supply must articulate the compromise in\n* language a reviewer can evaluate.\n*\n* The reviewer **will** validate the `Reason`. If it doesn't hold up under scrutiny,\n* that is not a signal to soften the reason; it is a signal to go back and solve the\n* underlying type-system problem properly. An unconvincing justification is rework,\n* not a free pass.\n*\n* `blindCast` is the auditable form of `as Foo` / `as unknown as Foo`: it bypasses\n* the compiler's checks (the input type is `unknown`, the output type is whatever the\n* caller asks for), but it forces the unsafety to be named at the call site instead of\n* smuggled in via a bare `as`. The `Reason` type parameter exists only at compile\n* time — it is not present in the emitted JavaScript — but it is grep-able and\n* visible to future readers.\n*\n* @example\n* ```typescript\n* const stringValue = blindCast<\n* string,\n* \"JSON.parse returns `unknown`; this field is documented to be a string in the API contract\"\n* >(parsed[key]);\n* ```\n*\n* @typeParam TargetType - The type the caller is asserting the input has.\n* @typeParam _Reason - A string literal describing why bypassing the type system is necessary here.\n* Only meaningful at compile time. The reviewer evaluates whether it justifies the unsafety.\n*/\nfunction blindCast(input) {\n\treturn input;\n}\n//#endregion\n//#region ../../../0-framework/1-core/core/dist/graph-CP16cJyH.mjs\n/**\n* Core model: node types and the factories that construct them, plain frozen\n* data objects. A node's `extension` + `type` form its deploy-time registry key (ADR-0017).\n*/\nconst NODE = Symbol.for(\"prisma:node\");\nfunction requireType(type, factory) {\n\tif (typeof type !== \"string\" || type.length === 0) throw new Error(`${factory}() requires a non-empty node type.`);\n}\nfunction requireName(name, factory) {\n\tif (typeof name !== \"string\" || name.length === 0) throw new Error(`${factory}() requires a non-empty name.`);\n}\nfunction requireExtension(extension, factory) {\n\tif (typeof extension !== \"string\" || extension.length === 0) throw new Error(`${factory}() requires a non-empty extension (the authoring extension's package name).`);\n}\n/**\n* Core's grammar for every name that becomes a config-key segment —\n* addresses, input/param/secret names: ASCII letters and digits only.\n* Conservative by design so any target medium — POSIX env-var keys\n* included — can uppercase and \"_\"-join segments without escaping.\n*/\nfunction isConfigKeySegment(name) {\n\treturn /^[A-Za-z0-9]+$/.test(name);\n}\nfunction requireConfigKeySegmentName(name, kind, factory) {\n\tif (!isConfigKeySegment(name)) throw new Error(`${factory}() ${kind} name \"${name}\" must contain only ASCII letters and digits ([A-Za-z0-9]) — declared names derive deterministic config keys, uppercased and joined with \"_\" (an input \"db\"'s param \"url\" becomes config key \"DB_URL\"), so an underscore inside a name collides with that separator and any other character has no place in a config key. \"${name}\" would put \"${name.toUpperCase()}\" inside the derived key.`);\n}\nfunction requireConfigKeySegmentNames(names, kind, factory) {\n\tfor (const name of names) requireConfigKeySegmentName(name, kind, factory);\n}\nfunction freezeParams(params) {\n\tconst frozen = {};\n\tfor (const [name, param] of Object.entries(params)) frozen[name] = Object.freeze({ ...param });\n\treturn Object.freeze(frozen);\n}\nfunction freezeSecrets(secrets) {\n\tconst frozen = {};\n\tfor (const [name, need] of Object.entries(secrets)) frozen[name] = Object.freeze({ ...need });\n\treturn blindCast(Object.freeze(frozen));\n}\n/** A frozen shallow copy that keeps the caller's declared type. */\nfunction frozenShallowCopy(obj) {\n\treturn blindCast(Object.freeze({ ...obj }));\n}\n/**\n* Seals a node instance after its constructor has assigned all fields — the\n* last statement of a concrete node class's constructor. A free function, not\n* a base-class method, so an instance stays structurally a plain frozen node.\n*/\nfunction freezeNode(node) {\n\tObject.freeze(node);\n\treturn node;\n}\n/**\n* Everything `resource()` establishes, minus the freeze — an extension\n* whose resource node carries extra fields extends this, assigns them, and\n* calls `freezeNode(this)` as its constructor's last statement.\n*/\nvar ResourceNodeBase = class {\n\t[NODE] = true;\n\tkind = \"resource\";\n\tname;\n\textension;\n\ttype;\n\tprovides;\n\tconstructor(def) {\n\t\trequireName(def.name, \"resource\");\n\t\trequireExtension(def.extension, \"resource\");\n\t\tconst provides = def.provides;\n\t\tif (typeof provides !== \"object\" || provides === null || typeof provides.kind !== \"string\" || provides.kind.length === 0 || typeof provides.satisfies !== \"function\") throw new Error(\"resource() requires `provides` — the Contract this resource offers (a non-empty `kind` plus its `satisfies()`).\");\n\t\tthis.name = def.name;\n\t\tthis.extension = def.extension;\n\t\tthis.type = provides.kind;\n\t\tthis.provides = provides;\n\t}\n};\n/** The core leaf: exactly the base, frozen. */\nvar FrozenResourceNode = class extends ResourceNodeBase {\n\tconstructor(def) {\n\t\tsuper(def);\n\t\tfreezeNode(this);\n\t}\n};\n/**\n* Constructs a branded, frozen Resource node — an identity plus the Contract\n* it provides; the routing `type` is the contract's `kind`. Pure — nothing\n* is provisioned until a module provisions it.\n*/\nfunction resource(def) {\n\treturn new FrozenResourceNode(def);\n}\n/**\n* Constructs a branded, frozen Service node — declarations only (inputs,\n* params, build adapter, and the ports it exposes). Pure; carries no runtime behavior.\n*/\nfunction service$1(def) {\n\trequireName(def.name, \"service\");\n\trequireExtension(def.extension, \"service\");\n\trequireType(def.type, \"service\");\n\trequireConfigKeySegmentNames(Object.keys(def.inputs), \"input\", \"service\");\n\trequireConfigKeySegmentNames(Object.keys(def.params), \"param\", \"service\");\n\trequireConfigKeySegmentNames(Object.keys(def.secrets ?? {}), \"secret\", \"service\");\n\tfor (const slot of Object.keys(def.secrets ?? {})) if (Object.hasOwn(def.params, slot)) throw new Error(`service() secret slot \"${slot}\" collides with a param of the same name — a secret slot and a service param derive the same config key (COMPOSER_<addr>_${slot.toUpperCase()}); rename one.`);\n\treturn Object.freeze({\n\t\t[NODE]: true,\n\t\tkind: \"service\",\n\t\tname: def.name,\n\t\textension: def.extension,\n\t\ttype: def.type,\n\t\tinputs: frozenShallowCopy(def.inputs),\n\t\tparams: freezeParams(def.params),\n\t\tsecretSlots: freezeSecrets(def.secrets ?? blindCast({})),\n\t\tbuild: Object.freeze({ ...def.build }),\n\t\texpose: def.expose !== void 0 ? frozenShallowCopy(def.expose) : void 0\n\t});\n}\n/**\n* Constructs a branded, frozen DependencyEnd. `required` (if given) is the\n* contract Load compares a wired ref against via `satisfies()`; an unnamed\n* end's diagnostic `name` falls back to its `type`.\n*/\nfunction dependency(def) {\n\trequireType(def.type, \"dependency\");\n\trequireConfigKeySegmentNames(Object.keys(def.connection.params), \"param\", \"dependency\");\n\tconst connection = Object.freeze({\n\t\tparams: freezeParams(def.connection.params),\n\t\thydrate: def.connection.hydrate\n\t});\n\treturn Object.freeze({\n\t\t[NODE]: true,\n\t\tkind: \"dependency\",\n\t\tname: def.name !== void 0 && def.name.length > 0 ? def.name : def.type,\n\t\ttype: def.type,\n\t\tconnection,\n\t\trequired: def.required\n\t});\n}\n//#endregion\n//#region ../../../0-framework/0-foundation/foundation/dist/secret.mjs\n/**\n* A value wrapper that redacts everywhere except the one explicit reader,\n* `expose()`. Sensitivity is carried by the TYPE (`SecretBox<T>`), not a flag a\n* sink must remember to check: `String(box)`, template interpolation,\n* `JSON.stringify`, and `console.log`/`util.inspect` all print `[REDACTED]`, so\n* a secret can't leak through an accidental log or serialization.\n*\n* Shape matches the platform's own `secrecy` type (pdp-control-plane). The class\n* is nominal enough on its own — no phantom brand.\n*/\nconst REDACTED = \"[REDACTED]\";\nvar SecretBox = class {\n\t#value;\n\tconstructor(value) {\n\t\tthis.#value = value;\n\t}\n\t/** The sole explicit door to the wrapped value. */\n\texpose() {\n\t\treturn this.#value;\n\t}\n\ttoString() {\n\t\treturn REDACTED;\n\t}\n\ttoJSON() {\n\t\treturn REDACTED;\n\t}\n\tvalueOf() {\n\t\treturn REDACTED;\n\t}\n\t[Symbol.toPrimitive]() {\n\t\treturn REDACTED;\n\t}\n\t[Symbol.for(\"nodejs.util.inspect.custom\")]() {\n\t\treturn REDACTED;\n\t}\n};\n//#endregion\n//#region ../../../0-framework/1-core/core/dist/index.mjs\nfunction scalarSchema(name, check) {\n\treturn { \"~standard\": {\n\t\tversion: 1,\n\t\tvendor: \"@prisma/composer\",\n\t\tvalidate: (value) => check(value) ? { value } : { issues: [{ message: `expected ${name}, got ${typeof value}` }] }\n\t} };\n}\nconst stringSchema = scalarSchema(\"string\", (v) => typeof v === \"string\");\nconst numberSchema = scalarSchema(\"number\", (v) => typeof v === \"number\" && Number.isFinite(v));\nfunction withFacets(schema, opts) {\n\treturn {\n\t\tschema,\n\t\t...opts.optional !== void 0 ? { optional: opts.optional } : {},\n\t\t...opts.default !== void 0 ? { default: opts.default } : {},\n\t\t...opts.provision !== void 0 ? { provision: opts.provision } : {}\n\t};\n}\n/** A string-valued param. */\nfunction string$1(opts = {}) {\n\treturn withFacets(stringSchema, opts);\n}\n/** A number-valued param. */\nfunction number$1(opts = {}) {\n\treturn withFacets(numberSchema, opts);\n}\n/**\n* Synchronous hydrate — what the node's `load()` uses so\n* `const { db } = service.load()` reads without `await`. Requires every\n* connection.hydrate to return synchronously; a Promise return is a loud error\n* naming the input (an async client factory must use the async `hydrate` path).\n*/\nfunction hydrateSync(root, config) {\n\tconst deps = {};\n\tfor (const [name, inputNode] of Object.entries(root.inputs)) {\n\t\tconst values = config.inputs[name] ?? {};\n\t\tconst client = inputNode.connection.hydrate(values);\n\t\tif (client instanceof Promise) throw new Error(`Connection hydrate for input \"${name}\" returned a Promise; load() requires a synchronous client factory.`);\n\t\tdeps[name] = client;\n\t}\n\treturn deps;\n}\n/**\n* Wraps each of a service's resolved secret values in a redacting `SecretBox`\n* — what the node's `secrets()` accessor returns (ADR-0021, sibling to\n* `load()`/`config()`). The RESOLUTION of a secret's value (the boot\n* double-lookup that reads the platform var the pointer names) is the target\n* pack's job; core is handed the already-resolved strings and only boxes them,\n* so a secret is redacted by TYPE from here on. A declared slot missing from\n* `values` is a target contract violation, named loudly.\n*/\nfunction hydrateSecrets(root, values) {\n\tconst boxed = {};\n\tfor (const slot of Object.keys(root.secretSlots)) {\n\t\tconst value = values[slot];\n\t\tif (value === void 0) throw new Error(`secret slot \"${slot}\" has no resolved value — the target must resolve every declared secret before hydrateSecrets().`);\n\t\tboxed[slot] = new SecretBox(value);\n\t}\n\treturn blindCast(boxed);\n}\n//#endregion\n//#region ../../../0-framework/2-authoring/node/dist/index.mjs\nconst nodeBuild = (opts) => ({\n\textension: \"@prisma/composer/node\",\n\ttype: \"node\",\n\tmodule: opts.module,\n\tentry: opts.entry,\n\t...opts.dir === void 0 ? {} : { dir: opts.dir }\n});\n//#endregion\n//#region ../../../../node_modules/@ark/util/out/arrays.js\nconst liftArray = (data) => Array.isArray(data) ? data : [data];\n/**\n* Splits an array into two arrays based on the result of a predicate\n*\n* @param predicate - The guard function used to determine which items to include.\n* @returns A tuple containing two arrays:\n* \t\t\t\t- the first includes items for which `predicate` returns true\n* \t\t\t\t- the second includes items for which `predicate` returns false\n*\n* @example\n* const list = [1, \"2\", \"3\", 4, 5];\n* const [numbers, strings] = spliterate(list, (x) => typeof x === \"number\");\n* // Type: number[]\n* // Output: [1, 4, 5]\n* console.log(evens);\n* // Type: string[]\n* // Output: [\"2\", \"3\"]\n* console.log(odds);\n*/\nconst spliterate = (arr, predicate) => {\n\tconst result = [[], []];\n\tfor (const item of arr) if (predicate(item)) result[0].push(item);\n\telse result[1].push(item);\n\treturn result;\n};\nconst ReadonlyArray = Array;\nconst includes = (array, element) => array.includes(element);\nconst range = (length, offset = 0) => [...new Array(length)].map((_, i) => i + offset);\n/**\n* Adds a value or array to an array, returning the concatenated result\n*/\nconst append = (to, value, opts) => {\n\tif (to === void 0) return value === void 0 ? [] : Array.isArray(value) ? value : [value];\n\tif (opts?.prepend) if (Array.isArray(value)) to.unshift(...value);\n\telse to.unshift(value);\n\telse if (Array.isArray(value)) to.push(...value);\n\telse to.push(value);\n\treturn to;\n};\n/**\n* Concatenates an element or list with a readonly list\n*/\nconst conflatenate = (to, elementOrList) => {\n\tif (elementOrList === void 0 || elementOrList === null) return to ?? [];\n\tif (to === void 0 || to === null) return liftArray(elementOrList);\n\treturn to.concat(elementOrList);\n};\n/**\n* Concatenates a variadic list of elements or lists with a readonly list\n*/\nconst conflatenateAll = (...elementsOrLists) => elementsOrLists.reduce(conflatenate, []);\n/**\n* Appends a value or concatenates an array to an array if it is not already included, returning the array\n*/\nconst appendUnique = (to, value, opts) => {\n\tif (to === void 0) return Array.isArray(value) ? value : [value];\n\tconst isEqual = opts?.isEqual ?? ((l, r) => l === r);\n\tfor (const v of liftArray(value)) if (!to.some((existing) => isEqual(existing, v))) to.push(v);\n\treturn to;\n};\nconst groupBy = (array, discriminant) => array.reduce((result, item) => {\n\tconst key = item[discriminant];\n\tresult[key] = append(result[key], item);\n\treturn result;\n}, {});\nconst arrayEquals = (l, r, opts) => l.length === r.length && l.every(opts?.isEqual ? (lItem, i) => opts.isEqual(lItem, r[i]) : (lItem, i) => lItem === r[i]);\n//#endregion\n//#region ../../../../node_modules/@ark/util/out/domain.js\nconst hasDomain = (data, kind) => domainOf(data) === kind;\nconst domainOf = (data) => {\n\tconst builtinType = typeof data;\n\treturn builtinType === \"object\" ? data === null ? \"null\" : \"object\" : builtinType === \"function\" ? \"object\" : builtinType;\n};\n/** Each domain's completion for the phrase \"must be _____\" */\nconst domainDescriptions = {\n\tboolean: \"boolean\",\n\tnull: \"null\",\n\tundefined: \"undefined\",\n\tbigint: \"a bigint\",\n\tnumber: \"a number\",\n\tobject: \"an object\",\n\tstring: \"a string\",\n\tsymbol: \"a symbol\"\n};\nconst jsTypeOfDescriptions = {\n\t...domainDescriptions,\n\tfunction: \"a function\"\n};\n//#endregion\n//#region ../../../../node_modules/@ark/util/out/errors.js\nvar InternalArktypeError = class extends Error {};\nconst throwInternalError = (message) => throwError(message, InternalArktypeError);\nconst throwError = (message, ctor = Error) => {\n\tthrow new ctor(message);\n};\nvar ParseError = class extends Error {\n\tname = \"ParseError\";\n};\nconst throwParseError = (message) => throwError(message, ParseError);\n/**\n* TypeScript won't suggest strings beginning with a space as properties.\n* Useful for symbol-like string properties.\n*/\nconst noSuggest = (s) => ` ${s}`;\n//#endregion\n//#region ../../../../node_modules/@ark/util/out/flatMorph.js\nconst flatMorph = (o, flatMapEntry) => {\n\tconst result = {};\n\tconst inputIsArray = Array.isArray(o);\n\tlet outputShouldBeArray = false;\n\tfor (const [i, entry] of Object.entries(o).entries()) {\n\t\tconst mapped = inputIsArray ? flatMapEntry(i, entry[1]) : flatMapEntry(...entry, i);\n\t\toutputShouldBeArray ||= typeof mapped[0] === \"number\";\n\t\tconst flattenedEntries = Array.isArray(mapped[0]) || mapped.length === 0 ? mapped : [mapped];\n\t\tfor (const [k, v] of flattenedEntries) if (typeof k === \"object\") result[k.group] = append(result[k.group], v);\n\t\telse result[k] = v;\n\t}\n\treturn outputShouldBeArray ? Object.values(result) : result;\n};\n//#endregion\n//#region ../../../../node_modules/@ark/util/out/records.js\n/**\n* Object.entries wrapper providing narrowed types for objects with known sets\n* of keys, e.g. those defined internally as configs\n*/\nconst entriesOf = Object.entries;\nconst isKeyOf = (k, o) => k in o;\nconst hasKey = (o, k) => k in o;\nvar DynamicBase = class {\n\tconstructor(properties) {\n\t\tObject.assign(this, properties);\n\t}\n};\nconst NoopBase = class {};\n/** @ts-ignore (needed to extend `t`) **/\nvar CastableBase = class extends NoopBase {};\nconst splitByKeys = (o, leftKeys) => {\n\tconst l = {};\n\tconst r = {};\n\tlet k;\n\tfor (k in o) if (k in leftKeys) l[k] = o[k];\n\telse r[k] = o[k];\n\treturn [l, r];\n};\nconst omit = (o, keys) => splitByKeys(o, keys)[1];\nconst isEmptyObject = (o) => Object.keys(o).length === 0;\nconst stringAndSymbolicEntriesOf = (o) => [...Object.entries(o), ...Object.getOwnPropertySymbols(o).map((k) => [k, o[k]])];\n/** Like Object.assign, but it will preserve getters instead of evaluating them. */\nconst defineProperties = (base, merged) => Object.defineProperties(base, Object.getOwnPropertyDescriptors(merged));\n/** Copies enumerable keys of o to a new object in alphabetical order */\nconst withAlphabetizedKeys = (o) => {\n\tconst keys = Object.keys(o).sort();\n\tconst result = {};\n\tfor (let i = 0; i < keys.length; i++) result[keys[i]] = o[keys[i]];\n\treturn result;\n};\nconst unset = noSuggest(`unset​`);\nconst enumValues = (tsEnum) => Object.values(tsEnum).filter((v) => {\n\tif (typeof v === \"number\") return true;\n\treturn typeof tsEnum[v] !== \"number\";\n});\n//#endregion\n//#region ../../../../node_modules/@ark/util/out/objectKinds.js\nconst ecmascriptConstructors = {\n\tArray,\n\tBoolean,\n\tDate,\n\tError,\n\tFunction,\n\tMap,\n\tNumber,\n\tPromise,\n\tRegExp,\n\tSet,\n\tString,\n\tWeakMap,\n\tWeakSet\n};\n/** Node18 */\nconst FileConstructor = globalThis.File ?? Blob;\nconst platformConstructors = {\n\tArrayBuffer,\n\tBlob,\n\tFile: FileConstructor,\n\tFormData,\n\tHeaders,\n\tRequest,\n\tResponse,\n\tURL\n};\nconst typedArrayConstructors = {\n\tInt8Array,\n\tUint8Array,\n\tUint8ClampedArray,\n\tInt16Array,\n\tUint16Array,\n\tInt32Array,\n\tUint32Array,\n\tFloat32Array,\n\tFloat64Array,\n\tBigInt64Array,\n\tBigUint64Array\n};\nconst builtinConstructors = {\n\t...ecmascriptConstructors,\n\t...platformConstructors,\n\t...typedArrayConstructors,\n\tString,\n\tNumber,\n\tBoolean\n};\nconst objectKindOf = (data) => {\n\tlet prototype = Object.getPrototypeOf(data);\n\twhile (prototype?.constructor && (!isKeyOf(prototype.constructor.name, builtinConstructors) || !(data instanceof builtinConstructors[prototype.constructor.name]))) prototype = Object.getPrototypeOf(prototype);\n\tconst name = prototype?.constructor?.name;\n\tif (name === void 0 || name === \"Object\") return void 0;\n\treturn name;\n};\nconst objectKindOrDomainOf = (data) => typeof data === \"object\" && data !== null ? objectKindOf(data) ?? \"object\" : domainOf(data);\nconst isArray = Array.isArray;\nconst ecmascriptDescriptions = {\n\tArray: \"an array\",\n\tFunction: \"a function\",\n\tDate: \"a Date\",\n\tRegExp: \"a RegExp\",\n\tError: \"an Error\",\n\tMap: \"a Map\",\n\tSet: \"a Set\",\n\tString: \"a String object\",\n\tNumber: \"a Number object\",\n\tBoolean: \"a Boolean object\",\n\tPromise: \"a Promise\",\n\tWeakMap: \"a WeakMap\",\n\tWeakSet: \"a WeakSet\"\n};\nconst platformDescriptions = {\n\tArrayBuffer: \"an ArrayBuffer instance\",\n\tBlob: \"a Blob instance\",\n\tFile: \"a File instance\",\n\tFormData: \"a FormData instance\",\n\tHeaders: \"a Headers instance\",\n\tRequest: \"a Request instance\",\n\tResponse: \"a Response instance\",\n\tURL: \"a URL instance\"\n};\nconst typedArrayDescriptions = {\n\tInt8Array: \"an Int8Array\",\n\tUint8Array: \"a Uint8Array\",\n\tUint8ClampedArray: \"a Uint8ClampedArray\",\n\tInt16Array: \"an Int16Array\",\n\tUint16Array: \"a Uint16Array\",\n\tInt32Array: \"an Int32Array\",\n\tUint32Array: \"a Uint32Array\",\n\tFloat32Array: \"a Float32Array\",\n\tFloat64Array: \"a Float64Array\",\n\tBigInt64Array: \"a BigInt64Array\",\n\tBigUint64Array: \"a BigUint64Array\"\n};\n/** Each defaultObjectKind's completion for the phrase \"must be _____\" */\nconst objectKindDescriptions = {\n\t...ecmascriptDescriptions,\n\t...platformDescriptions,\n\t...typedArrayDescriptions\n};\n/**\n* this will only return an object kind if it's the root constructor\n* example TypeError would return null not 'Error'\n**/\nconst getBuiltinNameOfConstructor = (ctor) => {\n\tconst constructorName = Object(ctor).name ?? null;\n\treturn constructorName && isKeyOf(constructorName, builtinConstructors) && builtinConstructors[constructorName] === ctor ? constructorName : null;\n};\nconst constructorExtends = (ctor, base) => {\n\tlet current = ctor.prototype;\n\twhile (current !== null) {\n\t\tif (current === base.prototype) return true;\n\t\tcurrent = Object.getPrototypeOf(current);\n\t}\n\treturn false;\n};\n//#endregion\n//#region ../../../../node_modules/@ark/util/out/clone.js\n/** Deeply copy the properties of the a non-subclassed Object, Array or Date.*/\nconst deepClone = (input) => _clone(input, /* @__PURE__ */ new Map());\nconst _clone = (input, seen) => {\n\tif (typeof input !== \"object\" || input === null) return input;\n\tif (seen?.has(input)) return seen.get(input);\n\tconst builtinConstructorName = getBuiltinNameOfConstructor(input.constructor);\n\tif (builtinConstructorName === \"Date\") return new Date(input.getTime());\n\tif (builtinConstructorName && builtinConstructorName !== \"Array\") return input;\n\tconst cloned = Array.isArray(input) ? input.slice() : Object.create(Object.getPrototypeOf(input));\n\tconst propertyDescriptors = Object.getOwnPropertyDescriptors(input);\n\tif (seen) {\n\t\tseen.set(input, cloned);\n\t\tfor (const k in propertyDescriptors) {\n\t\t\tconst desc = propertyDescriptors[k];\n\t\t\tif (\"get\" in desc || \"set\" in desc) continue;\n\t\t\tdesc.value = _clone(desc.value, seen);\n\t\t}\n\t}\n\tObject.defineProperties(cloned, propertyDescriptors);\n\treturn cloned;\n};\n//#endregion\n//#region ../../../../node_modules/@ark/util/out/functions.js\nconst cached = (thunk) => {\n\tlet result = unset;\n\treturn () => result === unset ? result = thunk() : result;\n};\nconst isThunk = (value) => typeof value === \"function\" && value.length === 0;\nconst DynamicFunction = class extends Function {\n\tconstructor(...args) {\n\t\tconst params = args.slice(0, -1);\n\t\tconst body = args[args.length - 1];\n\t\ttry {\n\t\t\tsuper(...params, body);\n\t\t} catch (e) {\n\t\t\treturn throwInternalError(`Encountered an unexpected error while compiling your definition:\n Message: ${e} \n Source: (${args.slice(0, -1)}) => {\n ${args[args.length - 1]}\n }`);\n\t\t}\n\t}\n};\nvar Callable = class {\n\tconstructor(fn, ...[opts]) {\n\t\treturn Object.assign(Object.setPrototypeOf(fn.bind(opts?.bind ?? this), this.constructor.prototype), opts?.attach);\n\t}\n};\n/**\n* Checks if the environment has Content Security Policy (CSP) enabled,\n* preventing JIT-optimized code from being compiled via new Function().\n*\n* @returns `true` if a function created using new Function() can be\n* successfully invoked in the environment, `false` otherwise.\n*\n* The result is cached for subsequent invocations.\n*/\nconst envHasCsp = cached(() => {\n\ttry {\n\t\treturn new Function(\"return false\")();\n\t} catch {\n\t\treturn true;\n\t}\n});\nnoSuggest(\"brand\");\nnoSuggest(\"arkInferred\");\n//#endregion\n//#region ../../../../node_modules/@ark/util/out/hkt.js\nnoSuggest(\"args\");\nvar Hkt = class {\n\tconstructor() {}\n};\n//#endregion\n//#region ../../../../node_modules/@ark/util/out/isomorphic.js\n/** get a CJS/ESM compatible string representing the current file */\nconst fileName = () => {\n\ttry {\n\t\treturn (((/* @__PURE__ */ new Error()).stack?.split(\"\\n\")[2]?.trim() || \"\").match(/\\(?(.+?)(?::\\d+:\\d+)?\\)?$/)?.[1] || \"unknown\").replace(/^file:\\/\\//, \"\");\n\t} catch {\n\t\treturn \"unknown\";\n\t}\n};\nconst isomorphic = {\n\tfileName,\n\tenv: globalThis.process?.env ?? {}\n};\n//#endregion\n//#region ../../../../node_modules/@ark/util/out/strings.js\nconst capitalize$1 = (s) => s[0].toUpperCase() + s.slice(1);\nconst uncapitalize = (s) => s[0].toLowerCase() + s.slice(1);\nconst anchoredRegex = (regex) => new RegExp(anchoredSource(regex), typeof regex === \"string\" ? \"\" : regex.flags);\nconst anchoredSource = (regex) => {\n\treturn `^(?:${typeof regex === \"string\" ? regex : regex.source})$`;\n};\nconst RegexPatterns = {\n\tnegativeLookahead: (pattern) => `(?!${pattern})`,\n\tnonCapturingGroup: (pattern) => `(?:${pattern})`\n};\nconst whitespaceChars = {\n\t\" \": 1,\n\t\"\\n\": 1,\n\t\"\t\": 1\n};\n//#endregion\n//#region ../../../../node_modules/@ark/util/out/numbers.js\nconst anchoredNegativeZeroPattern = /^-0\\.?0*$/.source;\nconst positiveIntegerPattern = /[1-9]\\d*/.source;\nconst looseDecimalPattern = /\\.\\d+/.source;\nconst strictDecimalPattern = /\\.\\d*[1-9]/.source;\nconst createNumberMatcher = (opts) => anchoredRegex(RegexPatterns.negativeLookahead(anchoredNegativeZeroPattern) + RegexPatterns.nonCapturingGroup(\"-?\" + RegexPatterns.nonCapturingGroup(RegexPatterns.nonCapturingGroup(\"0|\" + positiveIntegerPattern) + RegexPatterns.nonCapturingGroup(opts.decimalPattern) + \"?\") + (opts.allowDecimalOnly ? \"|\" + opts.decimalPattern : \"\") + \"?\"));\n/**\n* Matches a well-formatted numeric expression according to the following rules:\n* 1. Must include an integer portion (i.e. '.321' must be written as '0.321')\n* 2. The first digit of the value must not be 0, unless the entire integer portion is 0\n* 3. If the value includes a decimal, its last digit may not be 0\n* 4. The value may not be \"-0\"\n*/\nconst wellFormedNumberMatcher = createNumberMatcher({\n\tdecimalPattern: strictDecimalPattern,\n\tallowDecimalOnly: false\n});\nconst isWellFormedNumber = wellFormedNumberMatcher.test.bind(wellFormedNumberMatcher);\n/**\n* Similar to wellFormedNumber but more permissive in the following ways:\n*\n* - Allows numbers without an integer portion like \".5\" (well-formed equivalent is \"0.5\")\n* - Allows decimals with trailing zeroes like \"0.10\" (well-formed equivalent is \"0.1\")\n*/\nconst numericStringMatcher = createNumberMatcher({\n\tdecimalPattern: looseDecimalPattern,\n\tallowDecimalOnly: true\n});\nnumericStringMatcher.test.bind(numericStringMatcher);\nconst numberLikeMatcher = /^-?\\d*\\.?\\d*$/;\nconst isNumberLike = (s) => s.length !== 0 && numberLikeMatcher.test(s);\n/**\n* Matches a well-formatted integer according to the following rules:\n* 1. must begin with an integer, the first digit of which cannot be 0 unless the entire value is 0\n* 2. The value may not be \"-0\"\n*/\nconst wellFormedIntegerMatcher = anchoredRegex(RegexPatterns.negativeLookahead(\"^-0$\") + \"-?\" + RegexPatterns.nonCapturingGroup(RegexPatterns.nonCapturingGroup(\"0|\" + positiveIntegerPattern)));\nconst isWellFormedInteger = wellFormedIntegerMatcher.test.bind(wellFormedIntegerMatcher);\nconst integerLikeMatcher = /^-?\\d+$/;\nconst isIntegerLike = integerLikeMatcher.test.bind(integerLikeMatcher);\nconst numericLiteralDescriptions = {\n\tnumber: \"a number\",\n\tbigint: \"a bigint\",\n\tinteger: \"an integer\"\n};\nconst writeMalformedNumericLiteralMessage = (def, kind) => `'${def}' was parsed as ${numericLiteralDescriptions[kind]} but could not be narrowed to a literal value. Avoid unnecessary leading or trailing zeros and other abnormal notation`;\nconst isWellFormed = (def, kind) => kind === \"number\" ? isWellFormedNumber(def) : isWellFormedInteger(def);\nconst parseKind = (def, kind) => kind === \"number\" ? Number(def) : Number.parseInt(def);\nconst isKindLike = (def, kind) => kind === \"number\" ? isNumberLike(def) : isIntegerLike(def);\nconst tryParseNumber = (token, options) => parseNumeric(token, \"number\", options);\nconst tryParseWellFormedNumber = (token, options) => parseNumeric(token, \"number\", {\n\t...options,\n\tstrict: true\n});\nconst tryParseInteger = (token, options) => parseNumeric(token, \"integer\", options);\nconst parseNumeric = (token, kind, options) => {\n\tconst value = parseKind(token, kind);\n\tif (!Number.isNaN(value)) {\n\t\tif (isKindLike(token, kind)) {\n\t\t\tif (options?.strict) return isWellFormed(token, kind) ? value : throwParseError(writeMalformedNumericLiteralMessage(token, kind));\n\t\t\treturn value;\n\t\t}\n\t}\n\treturn options?.errorOnFail ? throwParseError(options?.errorOnFail === true ? `Failed to parse ${numericLiteralDescriptions[kind]} from '${token}'` : options?.errorOnFail) : void 0;\n};\nconst tryParseWellFormedBigint = (def) => {\n\tif (def[def.length - 1] !== \"n\") return;\n\tconst maybeIntegerLiteral = def.slice(0, -1);\n\tlet value;\n\ttry {\n\t\tvalue = BigInt(maybeIntegerLiteral);\n\t} catch {\n\t\treturn;\n\t}\n\tif (wellFormedIntegerMatcher.test(maybeIntegerLiteral)) return value;\n\tif (integerLikeMatcher.test(maybeIntegerLiteral)) return throwParseError(writeMalformedNumericLiteralMessage(def, \"bigint\"));\n};\nconst registry = {\n\tversion: \"0.56.2\",\n\tfilename: isomorphic.fileName(),\n\tFileConstructor\n};\nconst namesByResolution = /* @__PURE__ */ new Map();\nconst nameCounts = Object.create(null);\nconst register = (value) => {\n\tconst existingName = namesByResolution.get(value);\n\tif (existingName) return existingName;\n\tlet name = baseNameFor(value);\n\tif (nameCounts[name]) name = `${name}${nameCounts[name]++}`;\n\telse nameCounts[name] = 1;\n\tregistry[name] = value;\n\tnamesByResolution.set(value, name);\n\treturn name;\n};\nconst isDotAccessible = (keyName) => /^[$A-Z_a-z][\\w$]*$/.test(keyName);\nconst baseNameFor = (value) => {\n\tswitch (typeof value) {\n\t\tcase \"object\": {\n\t\t\tif (value === null) break;\n\t\t\tconst prefix = objectKindOf(value) ?? \"object\";\n\t\t\treturn prefix[0].toLowerCase() + prefix.slice(1);\n\t\t}\n\t\tcase \"function\": return isDotAccessible(value.name) ? value.name : \"fn\";\n\t\tcase \"symbol\": return value.description && isDotAccessible(value.description) ? value.description : \"symbol\";\n\t}\n\treturn throwInternalError(`Unexpected attempt to register serializable value of type ${domainOf(value)}`);\n};\n//#endregion\n//#region ../../../../node_modules/@ark/util/out/primitive.js\nconst serializePrimitive = (value) => typeof value === \"string\" ? JSON.stringify(value) : typeof value === \"bigint\" ? `${value}n` : `${value}`;\n//#endregion\n//#region ../../../../node_modules/@ark/util/out/serialize.js\nconst snapshot = (data, opts = {}) => _serialize(data, {\n\tonUndefined: `$ark.undefined`,\n\tonBigInt: (n) => `$ark.bigint-${n}`,\n\t...opts\n}, []);\nconst printable = (data, opts) => {\n\tswitch (domainOf(data)) {\n\t\tcase \"object\":\n\t\t\tconst o = data;\n\t\t\tconst ctorName = o.constructor?.name ?? \"Object\";\n\t\t\treturn ctorName === \"Object\" || ctorName === \"Array\" ? opts?.quoteKeys === false ? stringifyUnquoted(o, opts?.indent ?? 0, \"\") : JSON.stringify(_serialize(o, printableOpts, []), null, opts?.indent) : stringifyUnquoted(o, opts?.indent ?? 0, \"\");\n\t\tcase \"symbol\": return printableOpts.onSymbol(data);\n\t\tdefault: return serializePrimitive(data);\n\t}\n};\nconst stringifyUnquoted = (value, indent, currentIndent) => {\n\tif (typeof value === \"function\") return printableOpts.onFunction(value);\n\tif (typeof value !== \"object\" || value === null) return serializePrimitive(value);\n\tconst nextIndent = currentIndent + \" \".repeat(indent);\n\tif (Array.isArray(value)) {\n\t\tif (value.length === 0) return \"[]\";\n\t\tconst items = value.map((item) => stringifyUnquoted(item, indent, nextIndent)).join(\",\\n\" + nextIndent);\n\t\treturn indent ? `[\\n${nextIndent}${items}\\n${currentIndent}]` : `[${items}]`;\n\t}\n\tconst ctorName = value.constructor?.name ?? \"Object\";\n\tif (ctorName === \"Object\") {\n\t\tconst keyValues = stringAndSymbolicEntriesOf(value).map(([key, val]) => {\n\t\t\tconst stringifiedKey = typeof key === \"symbol\" ? printableOpts.onSymbol(key) : isDotAccessible(key) ? key : JSON.stringify(key);\n\t\t\tconst stringifiedValue = stringifyUnquoted(val, indent, nextIndent);\n\t\t\treturn `${nextIndent}${stringifiedKey}: ${stringifiedValue}`;\n\t\t});\n\t\tif (keyValues.length === 0) return \"{}\";\n\t\treturn indent ? `{\\n${keyValues.join(\",\\n\")}\\n${currentIndent}}` : `{${keyValues.join(\", \")}}`;\n\t}\n\tif (value instanceof Date) return describeCollapsibleDate(value);\n\tif (\"expression\" in value && typeof value.expression === \"string\") return value.expression;\n\treturn ctorName;\n};\nconst printableOpts = {\n\tonCycle: () => \"(cycle)\",\n\tonSymbol: (v) => `Symbol(${register(v)})`,\n\tonFunction: (v) => `Function(${register(v)})`\n};\nconst _serialize = (data, opts, seen) => {\n\tswitch (domainOf(data)) {\n\t\tcase \"object\": {\n\t\t\tconst o = data;\n\t\t\tif (\"toJSON\" in o && typeof o.toJSON === \"function\") return o.toJSON();\n\t\t\tif (typeof o === \"function\") return printableOpts.onFunction(o);\n\t\t\tif (seen.includes(o)) return \"(cycle)\";\n\t\t\tconst nextSeen = [...seen, o];\n\t\t\tif (Array.isArray(o)) return o.map((item) => _serialize(item, opts, nextSeen));\n\t\t\tif (o instanceof Date) return o.toDateString();\n\t\t\tconst result = {};\n\t\t\tfor (const k in o) result[k] = _serialize(o[k], opts, nextSeen);\n\t\t\tfor (const s of Object.getOwnPropertySymbols(o)) result[opts.onSymbol?.(s) ?? s.toString()] = _serialize(o[s], opts, nextSeen);\n\t\t\treturn result;\n\t\t}\n\t\tcase \"symbol\": return printableOpts.onSymbol(data);\n\t\tcase \"bigint\": return opts.onBigInt?.(data) ?? `${data}n`;\n\t\tcase \"undefined\": return opts.onUndefined ?? \"undefined\";\n\t\tcase \"string\": return data.replace(/\\\\/g, \"\\\\\\\\\");\n\t\tdefault: return data;\n\t}\n};\n/**\n* Converts a Date instance to a human-readable description relative to its precision\n*/\nconst describeCollapsibleDate = (date) => {\n\tconst year = date.getFullYear();\n\tconst month = date.getMonth();\n\tconst dayOfMonth = date.getDate();\n\tconst hours = date.getHours();\n\tconst minutes = date.getMinutes();\n\tconst seconds = date.getSeconds();\n\tconst milliseconds = date.getMilliseconds();\n\tif (month === 0 && dayOfMonth === 1 && hours === 0 && minutes === 0 && seconds === 0 && milliseconds === 0) return `${year}`;\n\tconst datePortion = `${months[month]} ${dayOfMonth}, ${year}`;\n\tif (hours === 0 && minutes === 0 && seconds === 0 && milliseconds === 0) return datePortion;\n\tlet timePortion = date.toLocaleTimeString();\n\tconst suffix = timePortion.endsWith(\" AM\") || timePortion.endsWith(\" PM\") ? timePortion.slice(-3) : \"\";\n\tif (suffix) timePortion = timePortion.slice(0, -suffix.length);\n\tif (milliseconds) timePortion += `.${pad(milliseconds, 3)}`;\n\telse if (timeWithUnnecessarySeconds.test(timePortion)) timePortion = timePortion.slice(0, -3);\n\treturn `${timePortion + suffix}, ${datePortion}`;\n};\nconst months = [\n\t\"January\",\n\t\"February\",\n\t\"March\",\n\t\"April\",\n\t\"May\",\n\t\"June\",\n\t\"July\",\n\t\"August\",\n\t\"September\",\n\t\"October\",\n\t\"November\",\n\t\"December\"\n];\nconst timeWithUnnecessarySeconds = /:\\d\\d:00$/;\nconst pad = (value, length) => String(value).padStart(length, \"0\");\n//#endregion\n//#region ../../../../node_modules/@ark/util/out/path.js\nconst appendStringifiedKey = (path, prop, ...[opts]) => {\n\tconst stringifySymbol = opts?.stringifySymbol ?? printable;\n\tlet propAccessChain = path;\n\tswitch (typeof prop) {\n\t\tcase \"string\":\n\t\t\tpropAccessChain = isDotAccessible(prop) ? path === \"\" ? prop : `${path}.${prop}` : `${path}[${JSON.stringify(prop)}]`;\n\t\t\tbreak;\n\t\tcase \"number\":\n\t\t\tpropAccessChain = `${path}[${prop}]`;\n\t\t\tbreak;\n\t\tcase \"symbol\":\n\t\t\tpropAccessChain = `${path}[${stringifySymbol(prop)}]`;\n\t\t\tbreak;\n\t\tdefault: if (opts?.stringifyNonKey) propAccessChain = `${path}[${opts.stringifyNonKey(prop)}]`;\n\t\telse throwParseError(`${printable(prop)} must be a PropertyKey or stringifyNonKey must be passed to options`);\n\t}\n\treturn propAccessChain;\n};\nconst stringifyPath = (path, ...opts) => path.reduce((s, k) => appendStringifiedKey(s, k, ...opts), \"\");\nvar ReadonlyPath = class extends ReadonlyArray {\n\tcache = {};\n\tconstructor(...items) {\n\t\tsuper();\n\t\tthis.push(...items);\n\t}\n\ttoJSON() {\n\t\tif (this.cache.json) return this.cache.json;\n\t\tthis.cache.json = [];\n\t\tfor (let i = 0; i < this.length; i++) this.cache.json.push(typeof this[i] === \"symbol\" ? printable(this[i]) : this[i]);\n\t\treturn this.cache.json;\n\t}\n\tstringify() {\n\t\tif (this.cache.stringify) return this.cache.stringify;\n\t\treturn this.cache.stringify = stringifyPath(this);\n\t}\n\tstringifyAncestors() {\n\t\tif (this.cache.stringifyAncestors) return this.cache.stringifyAncestors;\n\t\tlet propString = \"\";\n\t\tconst result = [propString];\n\t\tfor (const path of this) {\n\t\t\tpropString = appendStringifiedKey(propString, path);\n\t\t\tresult.push(propString);\n\t\t}\n\t\treturn this.cache.stringifyAncestors = result;\n\t}\n};\n//#endregion\n//#region ../../../../node_modules/@ark/util/out/scanner.js\nvar Scanner = class {\n\tchars;\n\ti;\n\tdef;\n\tconstructor(def) {\n\t\tthis.def = def;\n\t\tthis.chars = [...def];\n\t\tthis.i = 0;\n\t}\n\t/** Get lookahead and advance scanner by one */\n\tshift() {\n\t\treturn this.chars[this.i++] ?? \"\";\n\t}\n\tget lookahead() {\n\t\treturn this.chars[this.i] ?? \"\";\n\t}\n\tget nextLookahead() {\n\t\treturn this.chars[this.i + 1] ?? \"\";\n\t}\n\tget length() {\n\t\treturn this.chars.length;\n\t}\n\tshiftUntil(condition) {\n\t\tlet shifted = \"\";\n\t\twhile (this.lookahead) if (condition(this, shifted)) break;\n\t\telse shifted += this.shift();\n\t\treturn shifted;\n\t}\n\tshiftUntilEscapable(condition) {\n\t\tlet shifted = \"\";\n\t\twhile (this.lookahead) if (this.lookahead === \"\\\\\") {\n\t\t\tthis.shift();\n\t\t\tif (condition(this, shifted)) shifted += this.shift();\n\t\t\telse if (this.lookahead === \"\\\\\") shifted += this.shift();\n\t\t\telse shifted += `\\\\${this.shift()}`;\n\t\t} else if (condition(this, shifted)) break;\n\t\telse shifted += this.shift();\n\t\treturn shifted;\n\t}\n\tshiftUntilLookahead(charOrSet) {\n\t\treturn typeof charOrSet === \"string\" ? this.shiftUntil((s) => s.lookahead === charOrSet) : this.shiftUntil((s) => s.lookahead in charOrSet);\n\t}\n\tshiftUntilNonWhitespace() {\n\t\treturn this.shiftUntil(() => !(this.lookahead in whitespaceChars));\n\t}\n\tjumpToIndex(i) {\n\t\tthis.i = i < 0 ? this.length + i : i;\n\t}\n\tjumpForward(count) {\n\t\tthis.i += count;\n\t}\n\tget location() {\n\t\treturn this.i;\n\t}\n\tget unscanned() {\n\t\treturn this.chars.slice(this.i, this.length).join(\"\");\n\t}\n\tget scanned() {\n\t\treturn this.chars.slice(0, this.i).join(\"\");\n\t}\n\tsliceChars(start, end) {\n\t\treturn this.chars.slice(start, end).join(\"\");\n\t}\n\tlookaheadIs(char) {\n\t\treturn this.lookahead === char;\n\t}\n\tlookaheadIsIn(tokens) {\n\t\treturn this.lookahead in tokens;\n\t}\n};\nconst writeUnmatchedGroupCloseMessage = (char, unscanned) => `Unmatched ${char}${unscanned === \"\" ? \"\" : ` before ${unscanned}`}`;\nconst writeUnclosedGroupMessage = (missingChar) => `Missing ${missingChar}`;\nnoSuggest(\"implementedTraits\");\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/shared/registry.js\nlet _registryName = \"$ark\";\nlet suffix = 2;\nwhile (_registryName in globalThis) _registryName = `$ark${suffix++}`;\nconst registryName = _registryName;\nglobalThis[registryName] = registry;\nconst $ark = registry;\nconst reference = (name) => `${registryName}.${name}`;\nconst registeredReference = (value) => reference(register(value));\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/shared/compile.js\nvar CompiledFunction = class extends CastableBase {\n\targNames;\n\tbody = \"\";\n\tconstructor(...args) {\n\t\tsuper();\n\t\tthis.argNames = args;\n\t\tfor (const arg of args) {\n\t\t\tif (arg in this) throw new Error(`Arg name '${arg}' would overwrite an existing property on FunctionBody`);\n\t\t\tthis[arg] = arg;\n\t\t}\n\t}\n\tindentation = 0;\n\tindent() {\n\t\tthis.indentation += 4;\n\t\treturn this;\n\t}\n\tdedent() {\n\t\tthis.indentation -= 4;\n\t\treturn this;\n\t}\n\tprop(key, optional = false) {\n\t\treturn compileLiteralPropAccess(key, optional);\n\t}\n\tindex(key, optional = false) {\n\t\treturn indexPropAccess(`${key}`, optional);\n\t}\n\tline(statement) {\n\t\tthis.body += `${\" \".repeat(this.indentation)}${statement}\\n`;\n\t\treturn this;\n\t}\n\tconst(identifier, expression) {\n\t\tthis.line(`const ${identifier} = ${expression}`);\n\t\treturn this;\n\t}\n\tlet(identifier, expression) {\n\t\treturn this.line(`let ${identifier} = ${expression}`);\n\t}\n\tset(identifier, expression) {\n\t\treturn this.line(`${identifier} = ${expression}`);\n\t}\n\tif(condition, then) {\n\t\treturn this.block(`if (${condition})`, then);\n\t}\n\telseIf(condition, then) {\n\t\treturn this.block(`else if (${condition})`, then);\n\t}\n\telse(then) {\n\t\treturn this.block(\"else\", then);\n\t}\n\t/** Current index is \"i\" */\n\tfor(until, body, initialValue = 0) {\n\t\treturn this.block(`for (let i = ${initialValue}; ${until}; i++)`, body);\n\t}\n\t/** Current key is \"k\" */\n\tforIn(object, body) {\n\t\treturn this.block(`for (const k in ${object})`, body);\n\t}\n\tblock(prefix, contents, suffix = \"\") {\n\t\tthis.line(`${prefix} {`);\n\t\tthis.indent();\n\t\tcontents(this);\n\t\tthis.dedent();\n\t\treturn this.line(`}${suffix}`);\n\t}\n\treturn(expression = \"\") {\n\t\treturn this.line(`return ${expression}`);\n\t}\n\twrite(name = \"anonymous\", indent = 0) {\n\t\treturn `${name}(${this.argNames.join(\", \")}) { ${indent ? this.body.split(\"\\n\").map((l) => \" \".repeat(indent) + `${l}`).join(\"\\n\") : this.body} }`;\n\t}\n\tcompile() {\n\t\treturn new DynamicFunction(...this.argNames, this.body);\n\t}\n};\nconst compileSerializedValue = (value) => hasDomain(value, \"object\") || typeof value === \"symbol\" ? registeredReference(value) : serializePrimitive(value);\nconst compileLiteralPropAccess = (key, optional = false) => {\n\tif (typeof key === \"string\" && isDotAccessible(key)) return `${optional ? \"?\" : \"\"}.${key}`;\n\treturn indexPropAccess(serializeLiteralKey(key), optional);\n};\nconst serializeLiteralKey = (key) => typeof key === \"symbol\" ? registeredReference(key) : JSON.stringify(key);\nconst indexPropAccess = (key, optional = false) => `${optional ? \"?.\" : \"\"}[${key}]`;\nvar NodeCompiler = class extends CompiledFunction {\n\ttraversalKind;\n\toptimistic;\n\tconstructor(ctx) {\n\t\tsuper(\"data\", \"ctx\");\n\t\tthis.traversalKind = ctx.kind;\n\t\tthis.optimistic = ctx.optimistic === true;\n\t}\n\tinvoke(node, opts) {\n\t\tconst arg = opts?.arg ?? this.data;\n\t\tconst requiresContext = typeof node === \"string\" ? true : this.requiresContextFor(node);\n\t\tconst id = typeof node === \"string\" ? node : node.id;\n\t\tif (requiresContext) return `${this.referenceToId(id, opts)}(${arg}, ${this.ctx})`;\n\t\treturn `${this.referenceToId(id, opts)}(${arg})`;\n\t}\n\treferenceToId(id, opts) {\n\t\tconst base = `this.${id}${opts?.kind ?? this.traversalKind}`;\n\t\treturn opts?.bind ? `${base}.bind(${opts?.bind})` : base;\n\t}\n\trequiresContextFor(node) {\n\t\treturn this.traversalKind === \"Apply\" || node.allowsRequiresContext;\n\t}\n\tinitializeErrorCount() {\n\t\treturn this.const(\"errorCount\", \"ctx.currentErrorCount\");\n\t}\n\treturnIfFail() {\n\t\treturn this.if(\"ctx.currentErrorCount > errorCount\", () => this.return());\n\t}\n\treturnIfFailFast() {\n\t\treturn this.if(\"ctx.failFast && ctx.currentErrorCount > errorCount\", () => this.return());\n\t}\n\ttraverseKey(keyExpression, accessExpression, node) {\n\t\tconst requiresContext = this.requiresContextFor(node);\n\t\tif (requiresContext) this.line(`${this.ctx}.path.push(${keyExpression})`);\n\t\tthis.check(node, { arg: accessExpression });\n\t\tif (requiresContext) this.line(`${this.ctx}.path.pop()`);\n\t\treturn this;\n\t}\n\tcheck(node, opts) {\n\t\treturn this.traversalKind === \"Allows\" ? this.if(`!${this.invoke(node, opts)}`, () => this.return(false)) : this.line(this.invoke(node, opts));\n\t}\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/shared/utils.js\nconst makeRootAndArrayPropertiesMutable = (o) => flatMorph(o, (k, v) => [k, isArray(v) ? [...v] : v]);\nconst arkKind = noSuggest(\"arkKind\");\nconst hasArkKind = (value, kind) => value?.[arkKind] === kind;\nconst isNode = (value) => hasArkKind(value, \"root\") || hasArkKind(value, \"constraint\");\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/shared/implement.js\nconst basisKinds = [\n\t\"unit\",\n\t\"proto\",\n\t\"domain\"\n];\nconst structuralKinds = [\n\t\"required\",\n\t\"optional\",\n\t\"index\",\n\t\"sequence\"\n];\nconst prestructuralKinds = [\n\t\"pattern\",\n\t\"divisor\",\n\t\"exactLength\",\n\t\"max\",\n\t\"min\",\n\t\"maxLength\",\n\t\"minLength\",\n\t\"before\",\n\t\"after\"\n];\nconst refinementKinds = [\n\t...prestructuralKinds,\n\t\"structure\",\n\t\"predicate\"\n];\nconst constraintKinds = [...refinementKinds, ...structuralKinds];\nconst rootKinds = [\n\t\"alias\",\n\t\"union\",\n\t\"morph\",\n\t\"unit\",\n\t\"intersection\",\n\t\"proto\",\n\t\"domain\"\n];\nconst nodeKinds = [...rootKinds, ...constraintKinds];\nconst constraintKeys = flatMorph(constraintKinds, (i, kind) => [kind, 1]);\nconst structureKeys = flatMorph([...structuralKinds, \"undeclared\"], (i, k) => [k, 1]);\nconst precedenceByKind = flatMorph(nodeKinds, (i, kind) => [kind, i]);\nconst isNodeKind = (value) => typeof value === \"string\" && value in precedenceByKind;\nconst precedenceOfKind = (kind) => precedenceByKind[kind];\nconst schemaKindsRightOf = (kind) => rootKinds.slice(precedenceOfKind(kind) + 1);\n[...schemaKindsRightOf(\"union\")];\n[...schemaKindsRightOf(\"morph\")];\nconst defaultValueSerializer = (v) => {\n\tif (typeof v === \"string\" || typeof v === \"boolean\" || v === null) return v;\n\tif (typeof v === \"number\") {\n\t\tif (Number.isNaN(v)) return \"NaN\";\n\t\tif (v === Number.POSITIVE_INFINITY) return \"Infinity\";\n\t\tif (v === Number.NEGATIVE_INFINITY) return \"-Infinity\";\n\t\treturn v;\n\t}\n\treturn compileSerializedValue(v);\n};\nconst compileObjectLiteral = (ctx) => {\n\tlet result = \"{ \";\n\tfor (const [k, v] of Object.entries(ctx)) result += `${k}: ${compileSerializedValue(v)}, `;\n\treturn result + \" }\";\n};\nconst implementNode = (_) => {\n\tconst implementation = _;\n\tif (implementation.hasAssociatedError) {\n\t\timplementation.defaults.expected ??= (ctx) => \"description\" in ctx ? ctx.description : implementation.defaults.description(ctx);\n\t\timplementation.defaults.actual ??= (data) => printable(data);\n\t\timplementation.defaults.problem ??= (ctx) => `must be ${ctx.expected}${ctx.actual ? ` (was ${ctx.actual})` : \"\"}`;\n\t\timplementation.defaults.message ??= (ctx) => {\n\t\t\tif (ctx.path.length === 0) return ctx.problem;\n\t\t\tconst problemWithLocation = `${ctx.propString} ${ctx.problem}`;\n\t\t\tif (problemWithLocation[0] === \"[\") return `value at ${problemWithLocation}`;\n\t\t\treturn problemWithLocation;\n\t\t};\n\t}\n\treturn implementation;\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/shared/toJsonSchema.js\nvar ToJsonSchemaError = class extends Error {\n\tname = \"ToJsonSchemaError\";\n\tcode;\n\tcontext;\n\tconstructor(code, context) {\n\t\tsuper(printable(context, {\n\t\t\tquoteKeys: false,\n\t\t\tindent: 4\n\t\t}));\n\t\tthis.code = code;\n\t\tthis.context = context;\n\t}\n\thasCode(code) {\n\t\treturn this.code === code;\n\t}\n};\nconst ToJsonSchema = {\n\tError: ToJsonSchemaError,\n\tthrow: (...args) => {\n\t\tthrow new ToJsonSchema.Error(...args);\n\t},\n\tthrowInternalOperandError: (kind, schema) => throwInternalError(`Unexpected JSON Schema input for ${kind}: ${printable(schema)}`),\n\tdefaultConfig: {\n\t\ttarget: \"draft-2020-12\",\n\t\tdialect: \"https://json-schema.org/draft/2020-12/schema\",\n\t\tuseRefs: false,\n\t\tfallback: {\n\t\t\tarrayObject: (ctx) => ToJsonSchema.throw(\"arrayObject\", ctx),\n\t\t\tarrayPostfix: (ctx) => ToJsonSchema.throw(\"arrayPostfix\", ctx),\n\t\t\tdefaultValue: (ctx) => ToJsonSchema.throw(\"defaultValue\", ctx),\n\t\t\tdomain: (ctx) => ToJsonSchema.throw(\"domain\", ctx),\n\t\t\tmorph: (ctx) => ToJsonSchema.throw(\"morph\", ctx),\n\t\t\tpatternIntersection: (ctx) => ToJsonSchema.throw(\"patternIntersection\", ctx),\n\t\t\tpredicate: (ctx) => ToJsonSchema.throw(\"predicate\", ctx),\n\t\t\tproto: (ctx) => ToJsonSchema.throw(\"proto\", ctx),\n\t\t\tsymbolKey: (ctx) => ToJsonSchema.throw(\"symbolKey\", ctx),\n\t\t\tunit: (ctx) => ToJsonSchema.throw(\"unit\", ctx),\n\t\t\tdate: (ctx) => ToJsonSchema.throw(\"date\", ctx)\n\t\t}\n\t}\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/config.js\n$ark.config ??= {};\nconst mergeConfigs = (base, merged) => {\n\tif (!merged) return base;\n\tconst result = { ...base };\n\tlet k;\n\tfor (k in merged) {\n\t\tconst keywords = { ...base.keywords };\n\t\tif (k === \"keywords\") {\n\t\t\tfor (const flatAlias in merged[k]) {\n\t\t\t\tconst v = merged.keywords[flatAlias];\n\t\t\t\tif (v === void 0) continue;\n\t\t\t\tkeywords[flatAlias] = typeof v === \"string\" ? { description: v } : v;\n\t\t\t}\n\t\t\tresult.keywords = keywords;\n\t\t} else if (k === \"toJsonSchema\") result[k] = mergeToJsonSchemaConfigs(base.toJsonSchema, merged.toJsonSchema);\n\t\telse if (isNodeKind(k)) result[k] = {\n\t\t\t...base[k],\n\t\t\t...merged[k]\n\t\t};\n\t\telse result[k] = merged[k];\n\t}\n\treturn result;\n};\nconst jsonSchemaTargetToDialect = {\n\t\"draft-2020-12\": \"https://json-schema.org/draft/2020-12/schema\",\n\t\"draft-07\": \"http://json-schema.org/draft-07/schema#\"\n};\nconst mergeToJsonSchemaConfigs = ((baseConfig, mergedConfig) => {\n\tif (!baseConfig) return resolveTargetToDialect(mergedConfig ?? {}, void 0);\n\tif (!mergedConfig) return baseConfig;\n\tconst result = { ...baseConfig };\n\tlet k;\n\tfor (k in mergedConfig) if (k === \"fallback\") result.fallback = mergeFallbacks(baseConfig.fallback, mergedConfig.fallback);\n\telse result[k] = mergedConfig[k];\n\treturn resolveTargetToDialect(result, mergedConfig);\n});\nconst resolveTargetToDialect = (opts, userOpts) => {\n\tif (userOpts?.dialect !== void 0) return opts;\n\tif (userOpts?.target !== void 0) return {\n\t\t...opts,\n\t\tdialect: jsonSchemaTargetToDialect[userOpts.target]\n\t};\n\treturn opts;\n};\nconst mergeFallbacks = (base, merged) => {\n\tbase = normalizeFallback(base);\n\tmerged = normalizeFallback(merged);\n\tconst result = {};\n\tlet code;\n\tfor (code in ToJsonSchema.defaultConfig.fallback) result[code] = merged[code] ?? merged.default ?? base[code] ?? base.default ?? ToJsonSchema.defaultConfig.fallback[code];\n\treturn result;\n};\nconst normalizeFallback = (fallback) => typeof fallback === \"function\" ? { default: fallback } : fallback ?? {};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/shared/errors.js\nvar ArkError = class ArkError extends CastableBase {\n\t[arkKind] = \"error\";\n\tpath;\n\tdata;\n\tnodeConfig;\n\tinput;\n\tctx;\n\tconstructor({ prefixPath, relativePath, ...input }, ctx) {\n\t\tsuper();\n\t\tthis.input = input;\n\t\tthis.ctx = ctx;\n\t\tdefineProperties(this, input);\n\t\tconst data = ctx.data;\n\t\tif (input.code === \"union\") input.errors = input.errors.flatMap((innerError) => {\n\t\t\tconst flat = innerError.hasCode(\"union\") ? innerError.errors : [innerError];\n\t\t\tif (!prefixPath && !relativePath) return flat;\n\t\t\treturn flat.map((e) => e.transform((e) => ({\n\t\t\t\t...e,\n\t\t\t\tpath: conflatenateAll(prefixPath, e.path, relativePath)\n\t\t\t})));\n\t\t});\n\t\tthis.nodeConfig = ctx.config[this.code];\n\t\tconst basePath = [...input.path ?? ctx.path];\n\t\tif (relativePath) basePath.push(...relativePath);\n\t\tif (prefixPath) basePath.unshift(...prefixPath);\n\t\tthis.path = new ReadonlyPath(...basePath);\n\t\tthis.data = \"data\" in input ? input.data : data;\n\t}\n\ttransform(f) {\n\t\treturn new ArkError(f({\n\t\t\tdata: this.data,\n\t\t\tpath: this.path,\n\t\t\t...this.input\n\t\t}), this.ctx);\n\t}\n\thasCode(code) {\n\t\treturn this.code === code;\n\t}\n\tget propString() {\n\t\treturn stringifyPath(this.path);\n\t}\n\tget expected() {\n\t\tif (this.input.expected) return this.input.expected;\n\t\tconst config = this.meta?.expected ?? this.nodeConfig.expected;\n\t\treturn typeof config === \"function\" ? config(this.input) : config;\n\t}\n\tget actual() {\n\t\tif (this.input.actual) return this.input.actual;\n\t\tconst config = this.meta?.actual ?? this.nodeConfig.actual;\n\t\treturn typeof config === \"function\" ? config(this.data) : config;\n\t}\n\tget problem() {\n\t\tif (this.input.problem) return this.input.problem;\n\t\tconst config = this.meta?.problem ?? this.nodeConfig.problem;\n\t\treturn typeof config === \"function\" ? config(this) : config;\n\t}\n\tget message() {\n\t\tif (this.input.message) return this.input.message;\n\t\tconst config = this.meta?.message ?? this.nodeConfig.message;\n\t\treturn typeof config === \"function\" ? config(this) : config;\n\t}\n\tget flat() {\n\t\treturn this.hasCode(\"intersection\") ? [...this.errors] : [this];\n\t}\n\ttoJSON() {\n\t\treturn {\n\t\t\tdata: this.data,\n\t\t\tpath: this.path,\n\t\t\t...this.input,\n\t\t\texpected: this.expected,\n\t\t\tactual: this.actual,\n\t\t\tproblem: this.problem,\n\t\t\tmessage: this.message\n\t\t};\n\t}\n\ttoString() {\n\t\treturn this.message;\n\t}\n\tthrow() {\n\t\tthrow this;\n\t}\n};\n/**\n* A ReadonlyArray of `ArkError`s returned by a Type on invalid input.\n*\n* Subsequent errors added at an existing path are merged into an\n* ArkError intersection.\n*/\nvar ArkErrors = class ArkErrors extends ReadonlyArray {\n\t[arkKind] = \"errors\";\n\t/**\n\t* Inherited array methods (`map`, `filter`, `slice`, …) return a plain\n\t* `Array`, not another `ArkErrors`, so callbacks that return primitives\n\t* (e.g. `issues.map(i => i.message)`) cannot populate a new `ArkErrors` instance.\n\t*/\n\tstatic get [Symbol.species]() {\n\t\treturn Array;\n\t}\n\tctx;\n\tconstructor(ctx) {\n\t\tsuper();\n\t\tthis.ctx = ctx;\n\t}\n\t/**\n\t* Errors by a pathString representing their location.\n\t*/\n\tbyPath = Object.create(null);\n\t/**\n\t* {@link byPath} flattened so that each value is an array of ArkError instances at that path.\n\t*\n\t* ✅ Since \"intersection\" errors will be flattened to their constituent `.errors`,\n\t* they will never be directly present in this representation.\n\t*/\n\tget flatByPath() {\n\t\treturn flatMorph(this.byPath, (k, v) => [k, v.flat]);\n\t}\n\t/**\n\t* {@link byPath} flattened so that each value is an array of problem strings at that path.\n\t*/\n\tget flatProblemsByPath() {\n\t\treturn flatMorph(this.byPath, (k, v) => [k, v.flat.map((e) => e.problem)]);\n\t}\n\t/**\n\t* All pathStrings at which errors are present mapped to the errors occuring\n\t* at that path or any nested path within it.\n\t*/\n\tbyAncestorPath = Object.create(null);\n\tcount = 0;\n\tmutable = this;\n\t/**\n\t* Throw a TraversalError based on these errors.\n\t*/\n\tthrow() {\n\t\tthrow this.toTraversalError();\n\t}\n\t/**\n\t* Converts ArkErrors to TraversalError, a subclass of `Error` suitable for throwing with nice\n\t* formatting.\n\t*/\n\ttoTraversalError() {\n\t\treturn new TraversalError(this);\n\t}\n\t/**\n\t* Append an ArkError to this array, ignoring duplicates.\n\t*/\n\tadd(error) {\n\t\tconst existing = this.byPath[error.propString];\n\t\tif (existing) {\n\t\t\tif (error === existing) return;\n\t\t\tif (existing.hasCode(\"union\") && existing.errors.length === 0) return;\n\t\t\tconst errorIntersection = error.hasCode(\"union\") && error.errors.length === 0 ? error : new ArkError({\n\t\t\t\tcode: \"intersection\",\n\t\t\t\terrors: existing.hasCode(\"intersection\") ? [...existing.errors, error] : [existing, error]\n\t\t\t}, this.ctx);\n\t\t\tconst existingIndex = this.indexOf(existing);\n\t\t\tthis.mutable[existingIndex === -1 ? this.length : existingIndex] = errorIntersection;\n\t\t\tthis.byPath[error.propString] = errorIntersection;\n\t\t\tthis.addAncestorPaths(error);\n\t\t} else {\n\t\t\tthis.byPath[error.propString] = error;\n\t\t\tthis.addAncestorPaths(error);\n\t\t\tthis.mutable.push(error);\n\t\t}\n\t\tthis.count++;\n\t}\n\ttransform(f) {\n\t\tconst result = new ArkErrors(this.ctx);\n\t\tfor (const e of this) result.add(f(e));\n\t\treturn result;\n\t}\n\t/**\n\t* Add all errors from an ArkErrors instance, ignoring duplicates and\n\t* prefixing their paths with that of the current Traversal.\n\t*/\n\tmerge(errors) {\n\t\tfor (const e of errors) this.add(new ArkError({\n\t\t\t...e,\n\t\t\tpath: [...this.ctx.path, ...e.path]\n\t\t}, this.ctx));\n\t}\n\t/**\n\t* @internal\n\t*/\n\taffectsPath(path) {\n\t\tif (this.length === 0) return false;\n\t\treturn path.stringifyAncestors().some((s) => s in this.byPath) || path.stringify() in this.byAncestorPath;\n\t}\n\t/**\n\t* A human-readable summary of all errors.\n\t*/\n\tget summary() {\n\t\treturn this.toString();\n\t}\n\t/**\n\t* Alias of this ArkErrors instance for StandardSchema compatibility.\n\t*/\n\tget issues() {\n\t\treturn this;\n\t}\n\ttoJSON() {\n\t\treturn [...this.map((e) => e.toJSON())];\n\t}\n\ttoString() {\n\t\treturn this.join(\"\\n\");\n\t}\n\taddAncestorPaths(error) {\n\t\tfor (const propString of error.path.stringifyAncestors()) this.byAncestorPath[propString] = append(this.byAncestorPath[propString], error);\n\t}\n};\nvar TraversalError = class extends Error {\n\tname = \"TraversalError\";\n\tconstructor(errors) {\n\t\tif (errors.length === 1) super(errors.summary);\n\t\telse super(\"\\n\" + errors.map((error) => ` • ${indent(error)}`).join(\"\\n\"));\n\t\tObject.defineProperty(this, \"arkErrors\", {\n\t\t\tvalue: errors,\n\t\t\tenumerable: false\n\t\t});\n\t}\n};\nconst indent = (error) => error.toString().split(\"\\n\").join(\"\\n \");\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/shared/traversal.js\nvar Traversal = class {\n\t/**\n\t* #### the path being validated or morphed\n\t*\n\t* ✅ array indices represented as numbers\n\t* ⚠️ mutated during traversal - use `path.slice(0)` to snapshot\n\t* 🔗 use {@link propString} for a stringified version\n\t*/\n\tpath = [];\n\t/**\n\t* #### {@link ArkErrors} that will be part of this traversal's finalized result\n\t*\n\t* ✅ will always be an empty array for a valid traversal\n\t*/\n\terrors = new ArkErrors(this);\n\t/**\n\t* #### the original value being traversed\n\t*/\n\troot;\n\t/**\n\t* #### configuration for this traversal\n\t*\n\t* ✅ options can affect traversal results and error messages\n\t* ✅ defaults < global config < scope config\n\t* ✅ does not include options configured on individual types\n\t*/\n\tconfig;\n\tqueuedMorphs = [];\n\tbranches = [];\n\tseen = {};\n\tconstructor(root, config) {\n\t\tthis.root = root;\n\t\tthis.config = config;\n\t}\n\t/**\n\t* #### the data being validated or morphed\n\t*\n\t* ✅ extracted from {@link root} at {@link path}\n\t*/\n\tget data() {\n\t\tlet result = this.root;\n\t\tfor (const segment of this.path) result = result?.[segment];\n\t\treturn result;\n\t}\n\t/**\n\t* #### a string representing {@link path}\n\t*\n\t* @propString\n\t*/\n\tget propString() {\n\t\treturn stringifyPath(this.path);\n\t}\n\t/**\n\t* #### add an {@link ArkError} and return `false`\n\t*\n\t* ✅ useful for predicates like `.narrow`\n\t*/\n\treject(input) {\n\t\tthis.error(input);\n\t\treturn false;\n\t}\n\t/**\n\t* #### add an {@link ArkError} from a description and return `false`\n\t*\n\t* ✅ useful for predicates like `.narrow`\n\t* 🔗 equivalent to {@link reject}({ expected })\n\t*/\n\tmustBe(expected) {\n\t\tthis.error(expected);\n\t\treturn false;\n\t}\n\terror(input) {\n\t\tconst errCtx = typeof input === \"object\" ? input.code ? input : {\n\t\t\t...input,\n\t\t\tcode: \"predicate\"\n\t\t} : {\n\t\t\tcode: \"predicate\",\n\t\t\texpected: input\n\t\t};\n\t\treturn this.errorFromContext(errCtx);\n\t}\n\t/**\n\t* #### whether {@link currentBranch} (or the traversal root, outside a union) has one or more errors\n\t*/\n\thasError() {\n\t\treturn this.currentErrorCount !== 0;\n\t}\n\tget currentBranch() {\n\t\treturn this.branches[this.branches.length - 1];\n\t}\n\tqueueMorphs(morphs) {\n\t\tconst input = {\n\t\t\tpath: new ReadonlyPath(...this.path),\n\t\t\tmorphs\n\t\t};\n\t\tif (this.currentBranch) this.currentBranch.queuedMorphs.push(input);\n\t\telse this.queuedMorphs.push(input);\n\t}\n\tfinalize(onFail) {\n\t\tif (this.queuedMorphs.length) {\n\t\t\tif (typeof this.root === \"object\" && this.root !== null && this.config.clone) this.root = this.config.clone(this.root);\n\t\t\tthis.applyQueuedMorphs();\n\t\t}\n\t\tif (this.hasError()) return onFail ? onFail(this.errors) : this.errors;\n\t\treturn this.root;\n\t}\n\tget currentErrorCount() {\n\t\treturn this.currentBranch ? this.currentBranch.error ? 1 : 0 : this.errors.count;\n\t}\n\tget failFast() {\n\t\treturn this.branches.length !== 0;\n\t}\n\tpushBranch() {\n\t\tthis.branches.push({\n\t\t\terror: void 0,\n\t\t\tqueuedMorphs: []\n\t\t});\n\t}\n\tpopBranch() {\n\t\treturn this.branches.pop();\n\t}\n\t/**\n\t* @internal\n\t* Convenience for casting from InternalTraversal to Traversal\n\t* for cases where the extra methods on the external type are expected, e.g.\n\t* a morph or predicate.\n\t*/\n\tget external() {\n\t\treturn this;\n\t}\n\terrorFromNodeContext(input) {\n\t\treturn this.errorFromContext(input);\n\t}\n\terrorFromContext(errCtx) {\n\t\tconst error = new ArkError(errCtx, this);\n\t\tif (this.currentBranch) this.currentBranch.error = error;\n\t\telse this.errors.add(error);\n\t\treturn error;\n\t}\n\tapplyQueuedMorphs() {\n\t\twhile (this.queuedMorphs.length) {\n\t\t\tconst queuedMorphs = this.queuedMorphs;\n\t\t\tthis.queuedMorphs = [];\n\t\t\tfor (const { path, morphs } of queuedMorphs) {\n\t\t\t\tif (this.errors.affectsPath(path)) continue;\n\t\t\t\tthis.applyMorphsAtPath(path, morphs);\n\t\t\t}\n\t\t}\n\t}\n\tapplyMorphsAtPath(path, morphs) {\n\t\tconst key = path[path.length - 1];\n\t\tlet parent;\n\t\tif (key !== void 0) {\n\t\t\tparent = this.root;\n\t\t\tfor (let pathIndex = 0; pathIndex < path.length - 1; pathIndex++) parent = parent[path[pathIndex]];\n\t\t}\n\t\tfor (const morph of morphs) {\n\t\t\tthis.path = [...path];\n\t\t\tconst morphIsNode = isNode(morph);\n\t\t\tconst result = morph(parent === void 0 ? this.root : parent[key], this);\n\t\t\tif (result instanceof ArkError) {\n\t\t\t\tthis.errors.add(result);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif (result instanceof ArkErrors) {\n\t\t\t\tif (!morphIsNode) this.errors.merge(result);\n\t\t\t\tthis.queuedMorphs = [];\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif (parent === void 0) this.root = result;\n\t\t\telse parent[key] = result;\n\t\t\tthis.applyQueuedMorphs();\n\t\t}\n\t}\n};\nconst traverseKey = (key, fn, ctx) => {\n\tif (!ctx) return fn();\n\tctx.path.push(key);\n\tconst result = fn();\n\tctx.path.pop();\n\treturn result;\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/node.js\nvar BaseNode = class extends Callable {\n\tattachments;\n\t$;\n\tonFail;\n\tincludesTransform;\n\tincludesContextualPredicate;\n\tisCyclic;\n\tallowsRequiresContext;\n\trootApplyStrategy;\n\tcontextFreeMorph;\n\trootApply;\n\treferencesById;\n\tshallowReferences;\n\tflatRefs;\n\tflatMorphs;\n\tallows;\n\tget shallowMorphs() {\n\t\treturn [];\n\t}\n\tconstructor(attachments, $) {\n\t\tsuper((data, pipedFromCtx, onFail = this.onFail) => {\n\t\t\tif (pipedFromCtx) {\n\t\t\t\tthis.traverseApply(data, pipedFromCtx);\n\t\t\t\treturn pipedFromCtx.hasError() ? pipedFromCtx.errors : pipedFromCtx.data;\n\t\t\t}\n\t\t\treturn this.rootApply(data, onFail);\n\t\t}, { attach: attachments });\n\t\tthis.attachments = attachments;\n\t\tthis.$ = $;\n\t\tthis.onFail = this.meta.onFail ?? this.$.resolvedConfig.onFail;\n\t\tthis.includesTransform = this.hasKind(\"morph\") || this.hasKind(\"structure\") && this.structuralMorph !== void 0 || this.hasKind(\"sequence\") && this.inner.defaultables !== void 0;\n\t\tthis.includesContextualPredicate = this.hasKind(\"predicate\") && this.inner.predicate.length !== 1;\n\t\tthis.isCyclic = this.kind === \"alias\";\n\t\tthis.referencesById = { [this.id]: this };\n\t\tthis.shallowReferences = this.hasKind(\"structure\") ? [this, ...this.children] : this.children.reduce((acc, child) => appendUniqueNodes(acc, child.shallowReferences), [this]);\n\t\tconst isStructural = this.isStructural();\n\t\tthis.flatRefs = [];\n\t\tthis.flatMorphs = [];\n\t\tfor (let i = 0; i < this.children.length; i++) {\n\t\t\tthis.includesTransform ||= this.children[i].includesTransform;\n\t\t\tthis.includesContextualPredicate ||= this.children[i].includesContextualPredicate;\n\t\t\tthis.isCyclic ||= this.children[i].isCyclic;\n\t\t\tif (!isStructural) {\n\t\t\t\tconst childFlatRefs = this.children[i].flatRefs;\n\t\t\t\tfor (let j = 0; j < childFlatRefs.length; j++) {\n\t\t\t\t\tconst childRef = childFlatRefs[j];\n\t\t\t\t\tif (!this.flatRefs.some((existing) => flatRefsAreEqual(existing, childRef))) {\n\t\t\t\t\t\tthis.flatRefs.push(childRef);\n\t\t\t\t\t\tfor (const branch of childRef.node.branches) if (branch.hasKind(\"morph\") || branch.hasKind(\"intersection\") && branch.structure?.structuralMorph !== void 0) this.flatMorphs.push({\n\t\t\t\t\t\t\tpath: childRef.path,\n\t\t\t\t\t\t\tpropString: childRef.propString,\n\t\t\t\t\t\t\tnode: branch\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tObject.assign(this.referencesById, this.children[i].referencesById);\n\t\t}\n\t\tthis.flatRefs.sort((l, r) => l.path.length > r.path.length ? 1 : l.path.length < r.path.length ? -1 : l.propString > r.propString ? 1 : l.propString < r.propString ? -1 : l.node.expression < r.node.expression ? -1 : 1);\n\t\tthis.allowsRequiresContext = this.includesContextualPredicate || this.isCyclic;\n\t\tthis.rootApplyStrategy = !this.allowsRequiresContext && this.flatMorphs.length === 0 ? this.shallowMorphs.length === 0 ? \"allows\" : this.shallowMorphs.every((morph) => morph.length === 1 || morph.name === \"$arkStructuralMorph\") ? this.hasKind(\"union\") ? this.branches.some((branch) => branch.shallowMorphs.length > 1) ? \"contextual\" : \"branchedOptimistic\" : this.shallowMorphs.length > 1 ? \"contextual\" : \"optimistic\" : \"contextual\" : \"contextual\";\n\t\tthis.rootApply = this.createRootApply();\n\t\tthis.allows = this.allowsRequiresContext ? (data) => this.traverseAllows(data, new Traversal(data, this.$.resolvedConfig)) : (data) => this.traverseAllows(data);\n\t}\n\tcreateRootApply() {\n\t\tswitch (this.rootApplyStrategy) {\n\t\t\tcase \"allows\": return (data, onFail) => {\n\t\t\t\tif (this.allows(data)) return data;\n\t\t\t\tconst ctx = new Traversal(data, this.$.resolvedConfig);\n\t\t\t\tthis.traverseApply(data, ctx);\n\t\t\t\treturn ctx.finalize(onFail);\n\t\t\t};\n\t\t\tcase \"contextual\": return (data, onFail) => {\n\t\t\t\tconst ctx = new Traversal(data, this.$.resolvedConfig);\n\t\t\t\tthis.traverseApply(data, ctx);\n\t\t\t\treturn ctx.finalize(onFail);\n\t\t\t};\n\t\t\tcase \"optimistic\":\n\t\t\t\tthis.contextFreeMorph = this.shallowMorphs[0];\n\t\t\t\tconst clone = this.$.resolvedConfig.clone;\n\t\t\t\treturn (data, onFail) => {\n\t\t\t\t\tif (this.allows(data)) return this.contextFreeMorph(clone && (typeof data === \"object\" && data !== null || typeof data === \"function\") ? clone(data) : data);\n\t\t\t\t\tconst ctx = new Traversal(data, this.$.resolvedConfig);\n\t\t\t\t\tthis.traverseApply(data, ctx);\n\t\t\t\t\treturn ctx.finalize(onFail);\n\t\t\t\t};\n\t\t\tcase \"branchedOptimistic\": return this.createBranchedOptimisticRootApply();\n\t\t\tdefault:\n\t\t\t\tthis.rootApplyStrategy;\n\t\t\t\treturn throwInternalError(`Unexpected rootApplyStrategy ${this.rootApplyStrategy}`);\n\t\t}\n\t}\n\tcompiledMeta = compileMeta(this.metaJson);\n\tcacheGetter(name, value) {\n\t\tObject.defineProperty(this, name, { value });\n\t\treturn value;\n\t}\n\tget description() {\n\t\treturn this.cacheGetter(\"description\", this.meta?.description ?? this.$.resolvedConfig[this.kind].description(this));\n\t}\n\tget references() {\n\t\treturn Object.values(this.referencesById);\n\t}\n\tprecedence = precedenceOfKind(this.kind);\n\tprecompilation;\n\tassert = (data, pipedFromCtx) => this(data, pipedFromCtx, (errors) => errors.throw());\n\ttraverse(data, pipedFromCtx) {\n\t\treturn this(data, pipedFromCtx, null);\n\t}\n\t/** rawIn should be used internally instead */\n\tget in() {\n\t\treturn this.cacheGetter(\"in\", this.rawIn.isRoot() ? this.$.finalize(this.rawIn) : this.rawIn);\n\t}\n\tget rawIn() {\n\t\treturn this.cacheGetter(\"rawIn\", this.getIo(\"in\"));\n\t}\n\t/** rawOut should be used internally instead */\n\tget out() {\n\t\treturn this.cacheGetter(\"out\", this.rawOut.isRoot() ? this.$.finalize(this.rawOut) : this.rawOut);\n\t}\n\tget rawOut() {\n\t\treturn this.cacheGetter(\"rawOut\", this.getIo(\"out\"));\n\t}\n\tgetIo(ioKind) {\n\t\tif (!this.includesTransform) return this;\n\t\tconst ioInner = {};\n\t\tfor (const [k, v] of this.innerEntries) {\n\t\t\tconst keySchemaImplementation = this.impl.keys[k];\n\t\t\tif (keySchemaImplementation.reduceIo) keySchemaImplementation.reduceIo(ioKind, ioInner, v);\n\t\t\telse if (keySchemaImplementation.child) {\n\t\t\t\tconst childValue = v;\n\t\t\t\tioInner[k] = isArray(childValue) ? childValue.map((child) => ioKind === \"in\" ? child.rawIn : child.rawOut) : ioKind === \"in\" ? childValue.rawIn : childValue.rawOut;\n\t\t\t} else ioInner[k] = v;\n\t\t}\n\t\treturn this.$.node(this.kind, ioInner);\n\t}\n\ttoJSON() {\n\t\treturn this.json;\n\t}\n\ttoString() {\n\t\treturn `Type<${this.expression}>`;\n\t}\n\tequals(r) {\n\t\tconst rNode = isNode(r) ? r : this.$.parseDefinition(r);\n\t\treturn this.innerHash === rNode.innerHash;\n\t}\n\tifEquals(r) {\n\t\treturn this.equals(r) ? this : void 0;\n\t}\n\thasKind(kind) {\n\t\treturn this.kind === kind;\n\t}\n\tassertHasKind(kind) {\n\t\tif (this.kind !== kind) throwError(`${this.kind} node was not of asserted kind ${kind}`);\n\t\treturn this;\n\t}\n\thasKindIn(...kinds) {\n\t\treturn kinds.includes(this.kind);\n\t}\n\tassertHasKindIn(...kinds) {\n\t\tif (!includes(kinds, this.kind)) throwError(`${this.kind} node was not one of asserted kinds ${kinds}`);\n\t\treturn this;\n\t}\n\tisBasis() {\n\t\treturn includes(basisKinds, this.kind);\n\t}\n\tisConstraint() {\n\t\treturn includes(constraintKinds, this.kind);\n\t}\n\tisStructural() {\n\t\treturn includes(structuralKinds, this.kind);\n\t}\n\tisRefinement() {\n\t\treturn includes(refinementKinds, this.kind);\n\t}\n\tisRoot() {\n\t\treturn includes(rootKinds, this.kind);\n\t}\n\tisUnknown() {\n\t\treturn this.hasKind(\"intersection\") && this.children.length === 0;\n\t}\n\tisNever() {\n\t\treturn this.hasKind(\"union\") && this.children.length === 0;\n\t}\n\thasUnit(value) {\n\t\treturn this.hasKind(\"unit\") && this.allows(value);\n\t}\n\thasOpenIntersection() {\n\t\treturn this.impl.intersectionIsOpen;\n\t}\n\tget nestableExpression() {\n\t\treturn this.expression;\n\t}\n\tselect(selector) {\n\t\tconst normalized = NodeSelector.normalize(selector);\n\t\treturn this._select(normalized);\n\t}\n\t_select(selector) {\n\t\tlet nodes = NodeSelector.applyBoundary[selector.boundary ?? \"references\"](this);\n\t\tif (selector.kind) nodes = nodes.filter((n) => n.kind === selector.kind);\n\t\tif (selector.where) nodes = nodes.filter(selector.where);\n\t\treturn NodeSelector.applyMethod[selector.method ?? \"filter\"](nodes, this, selector);\n\t}\n\ttransform(mapper, opts) {\n\t\treturn this._transform(mapper, this._createTransformContext(opts));\n\t}\n\t_createTransformContext(opts) {\n\t\treturn {\n\t\t\troot: this,\n\t\t\tselected: void 0,\n\t\t\tseen: {},\n\t\t\tpath: [],\n\t\t\tparseOptions: { prereduced: opts?.prereduced ?? false },\n\t\t\tundeclaredKeyHandling: void 0,\n\t\t\t...opts\n\t\t};\n\t}\n\t_transform(mapper, ctx) {\n\t\tconst $ = ctx.bindScope ?? this.$;\n\t\tif (ctx.seen[this.id]) return this.$.lazilyResolve(ctx.seen[this.id]);\n\t\tif (ctx.shouldTransform?.(this, ctx) === false) return this;\n\t\tlet transformedNode;\n\t\tctx.seen[this.id] = () => transformedNode;\n\t\tif (this.hasKind(\"structure\") && this.undeclared !== ctx.undeclaredKeyHandling) ctx = {\n\t\t\t...ctx,\n\t\t\tundeclaredKeyHandling: this.undeclared\n\t\t};\n\t\tconst innerWithTransformedChildren = flatMorph(this.inner, (k, v) => {\n\t\t\tif (!this.impl.keys[k].child) return [k, v];\n\t\t\tconst children = v;\n\t\t\tif (!isArray(children)) {\n\t\t\t\tconst transformed = children._transform(mapper, ctx);\n\t\t\t\treturn transformed ? [k, transformed] : [];\n\t\t\t}\n\t\t\tif (children.length === 0) return [k, v];\n\t\t\tconst transformed = children.flatMap((n) => {\n\t\t\t\treturn n._transform(mapper, ctx) ?? [];\n\t\t\t});\n\t\t\treturn transformed.length ? [k, transformed] : [];\n\t\t});\n\t\tdelete ctx.seen[this.id];\n\t\tconst innerWithMeta = Object.assign(innerWithTransformedChildren, { meta: this.meta });\n\t\tconst transformedInner = ctx.selected && !ctx.selected.includes(this) ? innerWithMeta : mapper(this.kind, innerWithMeta, ctx);\n\t\tif (transformedInner === null) return null;\n\t\tif (isNode(transformedInner)) return transformedNode = transformedInner;\n\t\tconst transformedKeys = Object.keys(transformedInner);\n\t\tif ((transformedKeys.length === 0 || transformedKeys.length === 1 && transformedKeys[0] === \"meta\") && !isEmptyObject(this.inner)) return null;\n\t\tif ((this.kind === \"required\" || this.kind === \"optional\" || this.kind === \"index\") && !(\"value\" in transformedInner)) return ctx.undeclaredKeyHandling ? {\n\t\t\t...transformedInner,\n\t\t\tvalue: $ark.intrinsic.unknown\n\t\t} : null;\n\t\tif (this.kind === \"morph\") transformedInner.in ??= $ark.intrinsic.unknown;\n\t\treturn transformedNode = $.node(this.kind, transformedInner, ctx.parseOptions);\n\t}\n\tconfigureReferences(meta, selector = \"references\") {\n\t\tconst normalized = NodeSelector.normalize(selector);\n\t\tconst mapper = typeof meta === \"string\" ? (kind, inner) => ({\n\t\t\t...inner,\n\t\t\tmeta: {\n\t\t\t\t...inner.meta,\n\t\t\t\tdescription: meta\n\t\t\t}\n\t\t}) : typeof meta === \"function\" ? (kind, inner) => ({\n\t\t\t...inner,\n\t\t\tmeta: meta(inner.meta)\n\t\t}) : (kind, inner) => ({\n\t\t\t...inner,\n\t\t\tmeta: {\n\t\t\t\t...inner.meta,\n\t\t\t\t...meta\n\t\t\t}\n\t\t});\n\t\tif (normalized.boundary === \"self\") return this.$.node(this.kind, mapper(this.kind, {\n\t\t\t...this.inner,\n\t\t\tmeta: this.meta\n\t\t}));\n\t\tconst rawSelected = this._select(normalized);\n\t\tconst selected = rawSelected && liftArray(rawSelected);\n\t\tconst shouldTransform = normalized.boundary === \"child\" ? (node, ctx) => ctx.root.children.includes(node) : normalized.boundary === \"shallow\" ? (node) => node.kind !== \"structure\" : () => true;\n\t\treturn this.$.finalize(this.transform(mapper, {\n\t\t\tshouldTransform,\n\t\t\tselected\n\t\t}));\n\t}\n};\nconst NodeSelector = {\n\tapplyBoundary: {\n\t\tself: (node) => [node],\n\t\tchild: (node) => [...node.children],\n\t\tshallow: (node) => [...node.shallowReferences],\n\t\treferences: (node) => [...node.references]\n\t},\n\tapplyMethod: {\n\t\tfilter: (nodes) => nodes,\n\t\tassertFilter: (nodes, from, selector) => {\n\t\t\tif (nodes.length === 0) throwError(writeSelectAssertionMessage(from, selector));\n\t\t\treturn nodes;\n\t\t},\n\t\tfind: (nodes) => nodes[0],\n\t\tassertFind: (nodes, from, selector) => {\n\t\t\tif (nodes.length === 0) throwError(writeSelectAssertionMessage(from, selector));\n\t\t\treturn nodes[0];\n\t\t}\n\t},\n\tnormalize: (selector) => typeof selector === \"function\" ? {\n\t\tboundary: \"references\",\n\t\tmethod: \"filter\",\n\t\twhere: selector\n\t} : typeof selector === \"string\" ? isKeyOf(selector, NodeSelector.applyBoundary) ? {\n\t\tmethod: \"filter\",\n\t\tboundary: selector\n\t} : {\n\t\tboundary: \"references\",\n\t\tmethod: \"filter\",\n\t\tkind: selector\n\t} : {\n\t\tboundary: \"references\",\n\t\tmethod: \"filter\",\n\t\t...selector\n\t}\n};\nconst writeSelectAssertionMessage = (from, selector) => `${from} had no references matching ${printable(selector)}.`;\nconst typePathToPropString = (path) => stringifyPath(path, { stringifyNonKey: (node) => node.expression });\nconst referenceMatcher = /\"(\\$ark\\.[^\"]+)\"/g;\nconst compileMeta = (metaJson) => JSON.stringify(metaJson).replace(referenceMatcher, \"$1\");\nconst flatRef = (path, node) => ({\n\tpath,\n\tnode,\n\tpropString: typePathToPropString(path)\n});\nconst flatRefsAreEqual = (l, r) => l.propString === r.propString && l.node.equals(r.node);\nconst appendUniqueFlatRefs = (existing, refs) => appendUnique(existing, refs, { isEqual: flatRefsAreEqual });\nconst appendUniqueNodes = (existing, refs) => appendUnique(existing, refs, { isEqual: (l, r) => l.equals(r) });\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/shared/disjoint.js\nvar Disjoint = class Disjoint extends Array {\n\tstatic init(kind, l, r, ctx) {\n\t\treturn new Disjoint({\n\t\t\tkind,\n\t\t\tl,\n\t\t\tr,\n\t\t\tpath: ctx?.path ?? [],\n\t\t\toptional: ctx?.optional ?? false\n\t\t});\n\t}\n\tadd(kind, l, r, ctx) {\n\t\tthis.push({\n\t\t\tkind,\n\t\t\tl,\n\t\t\tr,\n\t\t\tpath: ctx?.path ?? [],\n\t\t\toptional: ctx?.optional ?? false\n\t\t});\n\t\treturn this;\n\t}\n\tget summary() {\n\t\treturn this.describeReasons();\n\t}\n\tdescribeReasons() {\n\t\tif (this.length === 1) {\n\t\t\tconst { path, l, r } = this[0];\n\t\t\tconst pathString = stringifyPath(path);\n\t\t\treturn writeUnsatisfiableExpressionError(`Intersection${pathString && ` at ${pathString}`} of ${describeReasons(l, r)}`);\n\t\t}\n\t\treturn `The following intersections result in unsatisfiable types:\\n• ${this.map(({ path, l, r }) => `${path}: ${describeReasons(l, r)}`).join(\"\\n• \")}`;\n\t}\n\tthrow() {\n\t\treturn throwParseError(this.describeReasons());\n\t}\n\tinvert() {\n\t\tconst result = this.map((entry) => ({\n\t\t\t...entry,\n\t\t\tl: entry.r,\n\t\t\tr: entry.l\n\t\t}));\n\t\tif (!(result instanceof Disjoint)) return new Disjoint(...result);\n\t\treturn result;\n\t}\n\twithPrefixKey(key, kind) {\n\t\treturn this.map((entry) => ({\n\t\t\t...entry,\n\t\t\tpath: [key, ...entry.path],\n\t\t\toptional: entry.optional || kind === \"optional\"\n\t\t}));\n\t}\n\ttoNeverIfDisjoint() {\n\t\treturn $ark.intrinsic.never;\n\t}\n};\nconst describeReasons = (l, r) => `${describeReason(l)} and ${describeReason(r)}`;\nconst describeReason = (value) => isNode(value) ? value.expression : isArray(value) ? value.map(describeReason).join(\" | \") || \"never\" : String(value);\nconst writeUnsatisfiableExpressionError = (expression) => `${expression} results in an unsatisfiable type`;\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/shared/intersections.js\nconst intersectionCache = {};\nconst intersectNodesRoot = (l, r, $) => intersectOrPipeNodes(l, r, {\n\t$,\n\tinvert: false,\n\tpipe: false\n});\nconst pipeNodesRoot = (l, r, $) => intersectOrPipeNodes(l, r, {\n\t$,\n\tinvert: false,\n\tpipe: true\n});\nconst intersectOrPipeNodes = ((l, r, ctx) => {\n\tconst operator = ctx.pipe ? \"|>\" : \"&\";\n\tconst lrCacheKey = `${l.hash}${operator}${r.hash}`;\n\tif (intersectionCache[lrCacheKey] !== void 0) return intersectionCache[lrCacheKey];\n\tif (!ctx.pipe) {\n\t\tconst rlCacheKey = `${r.hash}${operator}${l.hash}`;\n\t\tif (intersectionCache[rlCacheKey] !== void 0) {\n\t\t\tconst rlResult = intersectionCache[rlCacheKey];\n\t\t\tconst lrResult = rlResult instanceof Disjoint ? rlResult.invert() : rlResult;\n\t\t\tintersectionCache[lrCacheKey] = lrResult;\n\t\t\treturn lrResult;\n\t\t}\n\t}\n\tconst isPureIntersection = !ctx.pipe || !l.includesTransform && !r.includesTransform;\n\tif (isPureIntersection && l.equals(r)) return l;\n\tlet result = isPureIntersection ? _intersectNodes(l, r, ctx) : l.hasKindIn(...rootKinds) ? _pipeNodes(l, r, ctx) : _intersectNodes(l, r, ctx);\n\tif (isNode(result)) {\n\t\tif (l.equals(result)) result = l;\n\t\telse if (r.equals(result)) result = r;\n\t}\n\tintersectionCache[lrCacheKey] = result;\n\treturn result;\n});\nconst _intersectNodes = (l, r, ctx) => {\n\tconst leftmostKind = l.precedence < r.precedence ? l.kind : r.kind;\n\tconst implementation = l.impl.intersections[r.kind] ?? r.impl.intersections[l.kind];\n\tif (implementation === void 0) return null;\n\telse if (leftmostKind === l.kind) return implementation(l, r, ctx);\n\telse {\n\t\tlet result = implementation(r, l, {\n\t\t\t...ctx,\n\t\t\tinvert: !ctx.invert\n\t\t});\n\t\tif (result instanceof Disjoint) result = result.invert();\n\t\treturn result;\n\t}\n};\nconst _pipeNodes = (l, r, ctx) => l.includesTransform || r.includesTransform ? ctx.invert ? pipeMorphed(r, l, ctx) : pipeMorphed(l, r, ctx) : _intersectNodes(l, r, ctx);\nconst pipeMorphed = (from, to, ctx) => from.distribute((fromBranch) => _pipeMorphed(fromBranch, to, ctx), (results) => {\n\tconst viableBranches = results.filter(isNode);\n\tif (viableBranches.length === 0) return Disjoint.init(\"union\", from.branches, to.branches);\n\tif (viableBranches.length < from.branches.length || !from.branches.every((branch, i) => branch.rawIn.equals(viableBranches[i].rawIn))) return ctx.$.parseSchema(viableBranches);\n\tif (viableBranches.length === 1) return viableBranches[0];\n\tconst schema = { branches: viableBranches };\n\treturn ctx.$.parseSchema(schema);\n});\nconst _pipeMorphed = (from, to, ctx) => {\n\tif (from.hasKind(\"morph\")) {\n\t\tconst morphs = [...from.morphs];\n\t\tif (from.lastMorphIfNode) {\n\t\t\tconst outIntersection = intersectOrPipeNodes(from.lastMorphIfNode, to, ctx);\n\t\t\tif (outIntersection instanceof Disjoint) return outIntersection;\n\t\t\tmorphs[morphs.length - 1] = outIntersection;\n\t\t} else morphs.push(to);\n\t\treturn ctx.$.node(\"morph\", {\n\t\t\tmorphs,\n\t\t\tin: from.inner.in\n\t\t});\n\t}\n\tif (to.hasKind(\"morph\")) {\n\t\tconst inTersection = intersectOrPipeNodes(from, to.rawIn, ctx);\n\t\tif (inTersection instanceof Disjoint) return inTersection;\n\t\treturn ctx.$.node(\"morph\", {\n\t\t\tmorphs: [to],\n\t\t\tin: inTersection\n\t\t});\n\t}\n\treturn ctx.$.node(\"morph\", {\n\t\tmorphs: [to],\n\t\tin: from\n\t});\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/constraint.js\nvar BaseConstraint = class extends BaseNode {\n\tconstructor(attachments, $) {\n\t\tsuper(attachments, $);\n\t\tObject.defineProperty(this, arkKind, {\n\t\t\tvalue: \"constraint\",\n\t\t\tenumerable: false\n\t\t});\n\t}\n\timpliedSiblings;\n\tintersect(r) {\n\t\treturn intersectNodesRoot(this, r, this.$);\n\t}\n};\nvar InternalPrimitiveConstraint = class extends BaseConstraint {\n\ttraverseApply = (data, ctx) => {\n\t\tif (!this.traverseAllows(data, ctx)) ctx.errorFromNodeContext(this.errorContext);\n\t};\n\tcompile(js) {\n\t\tif (js.traversalKind === \"Allows\") js.return(this.compiledCondition);\n\t\telse js.if(this.compiledNegation, () => js.line(`ctx.errorFromNodeContext(${this.compiledErrorContext})`));\n\t}\n\tget errorContext() {\n\t\treturn {\n\t\t\tcode: this.kind,\n\t\t\tdescription: this.description,\n\t\t\tmeta: this.meta,\n\t\t\t...this.inner\n\t\t};\n\t}\n\tget compiledErrorContext() {\n\t\treturn compileObjectLiteral(this.errorContext);\n\t}\n};\nconst constraintKeyParser = (kind) => (schema, ctx) => {\n\tif (isArray(schema)) {\n\t\tif (schema.length === 0) return;\n\t\tconst nodes = schema.map((schema) => ctx.$.node(kind, schema));\n\t\tif (kind === \"predicate\") return nodes;\n\t\treturn nodes.sort((l, r) => l.hash < r.hash ? -1 : 1);\n\t}\n\tconst child = ctx.$.node(kind, schema);\n\tif (child.isRoot()) return;\n\treturn child.hasOpenIntersection() ? [child] : child;\n};\nconst intersectConstraints = (s) => {\n\tconst head = s.r.shift();\n\tif (!head) {\n\t\tlet result = s.l.length === 0 && s.kind === \"structure\" ? $ark.intrinsic.unknown.internal : s.ctx.$.node(s.kind, Object.assign(s.baseInner, unflattenConstraints(s.l)), { prereduced: true });\n\t\tfor (const root of s.roots) {\n\t\t\tif (result instanceof Disjoint) return result;\n\t\t\tresult = intersectOrPipeNodes(root, result, s.ctx);\n\t\t}\n\t\treturn result;\n\t}\n\tlet matched = false;\n\tfor (let i = 0; i < s.l.length; i++) {\n\t\tconst result = intersectOrPipeNodes(s.l[i], head, s.ctx);\n\t\tif (result === null) continue;\n\t\tif (result instanceof Disjoint) return result;\n\t\tif (result.isRoot()) {\n\t\t\ts.roots.push(result);\n\t\t\ts.l.splice(i);\n\t\t\treturn intersectConstraints(s);\n\t\t}\n\t\tif (!matched) {\n\t\t\ts.l[i] = result;\n\t\t\tmatched = true;\n\t\t} else if (!s.l.includes(result)) return throwInternalError(`Unexpectedly encountered multiple distinct intersection results for refinement ${head}`);\n\t}\n\tif (!matched) s.l.push(head);\n\tif (s.kind === \"intersection\") {\n\t\tif (head.impliedSiblings) for (const node of head.impliedSiblings) appendUnique(s.r, node);\n\t}\n\treturn intersectConstraints(s);\n};\nconst flattenConstraints = (inner) => {\n\treturn Object.entries(inner).flatMap(([k, v]) => k in constraintKeys ? v : []).sort((l, r) => l.precedence < r.precedence ? -1 : l.precedence > r.precedence ? 1 : l.kind === \"predicate\" && r.kind === \"predicate\" ? 0 : l.hash < r.hash ? -1 : 1);\n};\nconst unflattenConstraints = (constraints) => {\n\tconst inner = {};\n\tfor (const constraint of constraints) if (constraint.hasOpenIntersection()) inner[constraint.kind] = append(inner[constraint.kind], constraint);\n\telse {\n\t\tif (inner[constraint.kind]) return throwInternalError(`Unexpected intersection of closed refinements of kind ${constraint.kind}`);\n\t\tinner[constraint.kind] = constraint;\n\t}\n\treturn inner;\n};\nconst throwInvalidOperandError = (...args) => throwParseError(writeInvalidOperandMessage(...args));\nconst writeInvalidOperandMessage = (kind, expected, actual) => {\n\tconst actualDescription = actual.hasKind(\"morph\") ? \"a morph\" : actual.isUnknown() ? \"unknown\" : actual.exclude(expected).defaultShortDescription;\n\treturn `${capitalize$1(kind)} operand must be ${expected.description} (was ${actualDescription})`;\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/generic.js\nconst parseGeneric = (paramDefs, bodyDef, $) => new GenericRoot(paramDefs, bodyDef, $, $, null);\nvar LazyGenericBody = class extends Callable {};\nvar GenericRoot = class extends Callable {\n\t[arkKind] = \"generic\";\n\tparamDefs;\n\tbodyDef;\n\t$;\n\targ$;\n\tbaseInstantiation;\n\thkt;\n\tdescription;\n\tconstructor(paramDefs, bodyDef, $, arg$, hkt) {\n\t\tsuper((...args) => {\n\t\t\tconst argNodes = flatMorph(this.names, (i, name) => {\n\t\t\t\tconst arg = this.arg$.parse(args[i]);\n\t\t\t\tif (!arg.extends(this.constraints[i])) throwParseError(writeUnsatisfiedParameterConstraintMessage(name, this.constraints[i].expression, arg.expression));\n\t\t\t\treturn [name, arg];\n\t\t\t});\n\t\t\tif (this.defIsLazy()) {\n\t\t\t\tconst def = this.bodyDef(argNodes);\n\t\t\t\treturn this.$.parse(def);\n\t\t\t}\n\t\t\treturn this.$.parse(bodyDef, { args: argNodes });\n\t\t});\n\t\tthis.paramDefs = paramDefs;\n\t\tthis.bodyDef = bodyDef;\n\t\tthis.$ = $;\n\t\tthis.arg$ = arg$;\n\t\tthis.hkt = hkt;\n\t\tthis.description = hkt ? new hkt().description ?? `a generic type for ${hkt.constructor.name}` : \"a generic type\";\n\t\tthis.baseInstantiation = this(...this.constraints);\n\t}\n\tdefIsLazy() {\n\t\treturn this.bodyDef instanceof LazyGenericBody;\n\t}\n\tcacheGetter(name, value) {\n\t\tObject.defineProperty(this, name, { value });\n\t\treturn value;\n\t}\n\tget json() {\n\t\treturn this.cacheGetter(\"json\", {\n\t\t\tparams: this.params.map((param) => param[1].isUnknown() ? param[0] : [param[0], param[1].json]),\n\t\t\tbody: snapshot(this.bodyDef)\n\t\t});\n\t}\n\tget params() {\n\t\treturn this.cacheGetter(\"params\", this.paramDefs.map((param) => typeof param === \"string\" ? [param, $ark.intrinsic.unknown] : [param[0], this.$.parse(param[1])]));\n\t}\n\tget names() {\n\t\treturn this.cacheGetter(\"names\", this.params.map((e) => e[0]));\n\t}\n\tget constraints() {\n\t\treturn this.cacheGetter(\"constraints\", this.params.map((e) => e[1]));\n\t}\n\tget internal() {\n\t\treturn this;\n\t}\n\tget referencesById() {\n\t\treturn this.baseInstantiation.internal.referencesById;\n\t}\n\tget references() {\n\t\treturn this.baseInstantiation.internal.references;\n\t}\n};\nconst writeUnsatisfiedParameterConstraintMessage = (name, constraint, arg) => `${name} must be assignable to ${constraint} (was ${arg})`;\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/predicate.js\nconst implementation$21 = implementNode({\n\tkind: \"predicate\",\n\thasAssociatedError: true,\n\tcollapsibleKey: \"predicate\",\n\tkeys: { predicate: {} },\n\tnormalize: (schema) => typeof schema === \"function\" ? { predicate: schema } : schema,\n\tdefaults: { description: (node) => `valid according to ${node.predicate.name || \"an anonymous predicate\"}` },\n\tintersectionIsOpen: true,\n\tintersections: { predicate: () => null }\n});\nvar PredicateNode = class extends BaseConstraint {\n\tserializedPredicate = registeredReference(this.predicate);\n\tcompiledCondition = `${this.serializedPredicate}(data, ctx)`;\n\tcompiledNegation = `!${this.compiledCondition}`;\n\timpliedBasis = null;\n\texpression = this.serializedPredicate;\n\ttraverseAllows = this.predicate;\n\terrorContext = {\n\t\tcode: \"predicate\",\n\t\tdescription: this.description,\n\t\tmeta: this.meta\n\t};\n\tcompiledErrorContext = compileObjectLiteral(this.errorContext);\n\ttraverseApply = (data, ctx) => {\n\t\tconst errorCount = ctx.currentErrorCount;\n\t\tif (!this.predicate(data, ctx.external) && ctx.currentErrorCount === errorCount) ctx.errorFromNodeContext(this.errorContext);\n\t};\n\tcompile(js) {\n\t\tif (js.traversalKind === \"Allows\") {\n\t\t\tjs.return(this.compiledCondition);\n\t\t\treturn;\n\t\t}\n\t\tjs.initializeErrorCount();\n\t\tjs.if(`${this.compiledNegation} && ctx.currentErrorCount === errorCount`, () => js.line(`ctx.errorFromNodeContext(${this.compiledErrorContext})`));\n\t}\n\treduceJsonSchema(base, ctx) {\n\t\treturn ctx.fallback.predicate({\n\t\t\tcode: \"predicate\",\n\t\t\tbase,\n\t\t\tpredicate: this.predicate\n\t\t});\n\t}\n};\nconst Predicate = {\n\timplementation: implementation$21,\n\tNode: PredicateNode\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/refinements/divisor.js\nconst implementation$20 = implementNode({\n\tkind: \"divisor\",\n\tcollapsibleKey: \"rule\",\n\tkeys: { rule: { parse: (divisor) => Number.isInteger(divisor) ? divisor : throwParseError(writeNonIntegerDivisorMessage(divisor)) } },\n\tnormalize: (schema) => typeof schema === \"number\" ? { rule: schema } : schema,\n\thasAssociatedError: true,\n\tdefaults: { description: (node) => node.rule === 1 ? \"an integer\" : node.rule === 2 ? \"even\" : `a multiple of ${node.rule}` },\n\tintersections: { divisor: (l, r, ctx) => ctx.$.node(\"divisor\", { rule: Math.abs(l.rule * r.rule / greatestCommonDivisor(l.rule, r.rule)) }) },\n\tobviatesBasisDescription: true\n});\nvar DivisorNode = class extends InternalPrimitiveConstraint {\n\ttraverseAllows = (data) => data % this.rule === 0;\n\tcompiledCondition = `data % ${this.rule} === 0`;\n\tcompiledNegation = `data % ${this.rule} !== 0`;\n\timpliedBasis = $ark.intrinsic.number.internal;\n\texpression = `% ${this.rule}`;\n\treduceJsonSchema(schema) {\n\t\tschema.type = \"integer\";\n\t\tif (this.rule === 1) return schema;\n\t\tschema.multipleOf = this.rule;\n\t\treturn schema;\n\t}\n};\nconst Divisor = {\n\timplementation: implementation$20,\n\tNode: DivisorNode\n};\nconst writeNonIntegerDivisorMessage = (divisor) => `divisor must be an integer (was ${divisor})`;\nconst greatestCommonDivisor = (l, r) => {\n\tlet previous;\n\tlet greatestCommonDivisor = l;\n\tlet current = r;\n\twhile (current !== 0) {\n\t\tprevious = current;\n\t\tcurrent = greatestCommonDivisor % current;\n\t\tgreatestCommonDivisor = previous;\n\t}\n\treturn greatestCommonDivisor;\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/refinements/range.js\nvar BaseRange = class extends InternalPrimitiveConstraint {\n\tboundOperandKind = operandKindsByBoundKind[this.kind];\n\tcompiledActual = this.boundOperandKind === \"value\" ? `data` : this.boundOperandKind === \"length\" ? `data.length` : `data.valueOf()`;\n\tcomparator = compileComparator(this.kind, this.exclusive);\n\tnumericLimit = this.rule.valueOf();\n\texpression = `${this.comparator} ${this.rule}`;\n\tcompiledCondition = `${this.compiledActual} ${this.comparator} ${this.numericLimit}`;\n\tcompiledNegation = `${this.compiledActual} ${negatedComparators[this.comparator]} ${this.numericLimit}`;\n\tstringLimit = this.boundOperandKind === \"date\" ? dateLimitToString(this.numericLimit) : `${this.numericLimit}`;\n\tlimitKind = this.comparator[\"0\"] === \"<\" ? \"upper\" : \"lower\";\n\tisStricterThan(r) {\n\t\treturn (this.limitKind === \"upper\" ? this.numericLimit < r.numericLimit : this.numericLimit > r.numericLimit) || this.numericLimit === r.numericLimit && this.exclusive === true && !r.exclusive;\n\t}\n\toverlapsRange(r) {\n\t\tif (this.isStricterThan(r)) return false;\n\t\tif (this.numericLimit === r.numericLimit && (this.exclusive || r.exclusive)) return false;\n\t\treturn true;\n\t}\n\toverlapIsUnit(r) {\n\t\treturn this.numericLimit === r.numericLimit && !this.exclusive && !r.exclusive;\n\t}\n};\nconst negatedComparators = {\n\t\"<\": \">=\",\n\t\"<=\": \">\",\n\t\">\": \"<=\",\n\t\">=\": \"<\"\n};\nconst boundKindPairsByLower = {\n\tmin: \"max\",\n\tminLength: \"maxLength\",\n\tafter: \"before\"\n};\nconst parseExclusiveKey = { parse: (flag) => flag || void 0 };\nconst createLengthSchemaNormalizer = (kind) => (schema) => {\n\tif (typeof schema === \"number\") return { rule: schema };\n\tconst { exclusive, ...normalized } = schema;\n\treturn exclusive ? {\n\t\t...normalized,\n\t\trule: kind === \"minLength\" ? normalized.rule + 1 : normalized.rule - 1\n\t} : normalized;\n};\nconst createDateSchemaNormalizer = (kind) => (schema) => {\n\tif (typeof schema === \"number\" || typeof schema === \"string\" || schema instanceof Date) return { rule: schema };\n\tconst { exclusive, ...normalized } = schema;\n\tif (!exclusive) return normalized;\n\tconst numericLimit = typeof normalized.rule === \"number\" ? normalized.rule : typeof normalized.rule === \"string\" ? new Date(normalized.rule).valueOf() : normalized.rule.valueOf();\n\treturn exclusive ? {\n\t\t...normalized,\n\t\trule: kind === \"after\" ? numericLimit + 1 : numericLimit - 1\n\t} : normalized;\n};\nconst parseDateLimit = (limit) => typeof limit === \"string\" || typeof limit === \"number\" ? new Date(limit) : limit;\nconst writeInvalidLengthBoundMessage = (kind, limit) => `${kind} bound must be a positive integer (was ${limit})`;\nconst createLengthRuleParser = (kind) => (limit) => {\n\tif (!Number.isInteger(limit) || limit < 0) throwParseError(writeInvalidLengthBoundMessage(kind, limit));\n\treturn limit;\n};\nconst operandKindsByBoundKind = {\n\tmin: \"value\",\n\tmax: \"value\",\n\tminLength: \"length\",\n\tmaxLength: \"length\",\n\tafter: \"date\",\n\tbefore: \"date\"\n};\nconst compileComparator = (kind, exclusive) => `${isKeyOf(kind, boundKindPairsByLower) ? \">\" : \"<\"}${exclusive ? \"\" : \"=\"}`;\nconst dateLimitToString = (limit) => typeof limit === \"string\" ? limit : new Date(limit).toLocaleString();\nconst writeUnboundableMessage = (root) => `Bounded expression ${root} must be exactly one of number, string, Array, or Date`;\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/refinements/after.js\nconst implementation$19 = implementNode({\n\tkind: \"after\",\n\tcollapsibleKey: \"rule\",\n\thasAssociatedError: true,\n\tkeys: { rule: {\n\t\tparse: parseDateLimit,\n\t\tserialize: (schema) => schema.toISOString()\n\t} },\n\tnormalize: createDateSchemaNormalizer(\"after\"),\n\tdefaults: {\n\t\tdescription: (node) => `${node.collapsibleLimitString} or later`,\n\t\tactual: describeCollapsibleDate\n\t},\n\tintersections: { after: (l, r) => l.isStricterThan(r) ? l : r }\n});\nvar AfterNode = class extends BaseRange {\n\timpliedBasis = $ark.intrinsic.Date.internal;\n\tcollapsibleLimitString = describeCollapsibleDate(this.rule);\n\ttraverseAllows = (data) => data >= this.rule;\n\treduceJsonSchema(base, ctx) {\n\t\treturn ctx.fallback.date({\n\t\t\tcode: \"date\",\n\t\t\tbase,\n\t\t\tafter: this.rule\n\t\t});\n\t}\n};\nconst After = {\n\timplementation: implementation$19,\n\tNode: AfterNode\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/refinements/before.js\nconst implementation$18 = implementNode({\n\tkind: \"before\",\n\tcollapsibleKey: \"rule\",\n\thasAssociatedError: true,\n\tkeys: { rule: {\n\t\tparse: parseDateLimit,\n\t\tserialize: (schema) => schema.toISOString()\n\t} },\n\tnormalize: createDateSchemaNormalizer(\"before\"),\n\tdefaults: {\n\t\tdescription: (node) => `${node.collapsibleLimitString} or earlier`,\n\t\tactual: describeCollapsibleDate\n\t},\n\tintersections: {\n\t\tbefore: (l, r) => l.isStricterThan(r) ? l : r,\n\t\tafter: (before, after, ctx) => before.overlapsRange(after) ? before.overlapIsUnit(after) ? ctx.$.node(\"unit\", { unit: before.rule }) : null : Disjoint.init(\"range\", before, after)\n\t}\n});\nvar BeforeNode = class extends BaseRange {\n\tcollapsibleLimitString = describeCollapsibleDate(this.rule);\n\ttraverseAllows = (data) => data <= this.rule;\n\timpliedBasis = $ark.intrinsic.Date.internal;\n\treduceJsonSchema(base, ctx) {\n\t\treturn ctx.fallback.date({\n\t\t\tcode: \"date\",\n\t\t\tbase,\n\t\t\tbefore: this.rule\n\t\t});\n\t}\n};\nconst Before = {\n\timplementation: implementation$18,\n\tNode: BeforeNode\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/refinements/exactLength.js\nconst implementation$17 = implementNode({\n\tkind: \"exactLength\",\n\tcollapsibleKey: \"rule\",\n\tkeys: { rule: { parse: createLengthRuleParser(\"exactLength\") } },\n\tnormalize: (schema) => typeof schema === \"number\" ? { rule: schema } : schema,\n\thasAssociatedError: true,\n\tdefaults: {\n\t\tdescription: (node) => `exactly length ${node.rule}`,\n\t\tactual: (data) => `${data.length}`\n\t},\n\tintersections: {\n\t\texactLength: (l, r, ctx) => Disjoint.init(\"unit\", ctx.$.node(\"unit\", { unit: l.rule }), ctx.$.node(\"unit\", { unit: r.rule }), { path: [\"length\"] }),\n\t\tminLength: (exactLength, minLength) => exactLength.rule >= minLength.rule ? exactLength : Disjoint.init(\"range\", exactLength, minLength),\n\t\tmaxLength: (exactLength, maxLength) => exactLength.rule <= maxLength.rule ? exactLength : Disjoint.init(\"range\", exactLength, maxLength)\n\t}\n});\nvar ExactLengthNode = class extends InternalPrimitiveConstraint {\n\ttraverseAllows = (data) => data.length === this.rule;\n\tcompiledCondition = `data.length === ${this.rule}`;\n\tcompiledNegation = `data.length !== ${this.rule}`;\n\timpliedBasis = $ark.intrinsic.lengthBoundable.internal;\n\texpression = `== ${this.rule}`;\n\treduceJsonSchema(schema) {\n\t\tswitch (schema.type) {\n\t\t\tcase \"string\":\n\t\t\t\tschema.minLength = this.rule;\n\t\t\t\tschema.maxLength = this.rule;\n\t\t\t\treturn schema;\n\t\t\tcase \"array\":\n\t\t\t\tschema.minItems = this.rule;\n\t\t\t\tschema.maxItems = this.rule;\n\t\t\t\treturn schema;\n\t\t\tdefault: return ToJsonSchema.throwInternalOperandError(\"exactLength\", schema);\n\t\t}\n\t}\n};\nconst ExactLength = {\n\timplementation: implementation$17,\n\tNode: ExactLengthNode\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/refinements/max.js\nconst implementation$16 = implementNode({\n\tkind: \"max\",\n\tcollapsibleKey: \"rule\",\n\thasAssociatedError: true,\n\tkeys: {\n\t\trule: {},\n\t\texclusive: parseExclusiveKey\n\t},\n\tnormalize: (schema) => typeof schema === \"number\" ? { rule: schema } : schema,\n\tdefaults: { description: (node) => {\n\t\tif (node.rule === 0) return node.exclusive ? \"negative\" : \"non-positive\";\n\t\treturn `${node.exclusive ? \"less than\" : \"at most\"} ${node.rule}`;\n\t} },\n\tintersections: {\n\t\tmax: (l, r) => l.isStricterThan(r) ? l : r,\n\t\tmin: (max, min, ctx) => max.overlapsRange(min) ? max.overlapIsUnit(min) ? ctx.$.node(\"unit\", { unit: max.rule }) : null : Disjoint.init(\"range\", max, min)\n\t},\n\tobviatesBasisDescription: true\n});\nvar MaxNode = class extends BaseRange {\n\timpliedBasis = $ark.intrinsic.number.internal;\n\ttraverseAllows = this.exclusive ? (data) => data < this.rule : (data) => data <= this.rule;\n\treduceJsonSchema(schema) {\n\t\tif (this.exclusive) schema.exclusiveMaximum = this.rule;\n\t\telse schema.maximum = this.rule;\n\t\treturn schema;\n\t}\n};\nconst Max = {\n\timplementation: implementation$16,\n\tNode: MaxNode\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/refinements/maxLength.js\nconst implementation$15 = implementNode({\n\tkind: \"maxLength\",\n\tcollapsibleKey: \"rule\",\n\thasAssociatedError: true,\n\tkeys: { rule: { parse: createLengthRuleParser(\"maxLength\") } },\n\treduce: (inner, $) => inner.rule === 0 ? $.node(\"exactLength\", inner) : void 0,\n\tnormalize: createLengthSchemaNormalizer(\"maxLength\"),\n\tdefaults: {\n\t\tdescription: (node) => `at most length ${node.rule}`,\n\t\tactual: (data) => `${data.length}`\n\t},\n\tintersections: {\n\t\tmaxLength: (l, r) => l.isStricterThan(r) ? l : r,\n\t\tminLength: (max, min, ctx) => max.overlapsRange(min) ? max.overlapIsUnit(min) ? ctx.$.node(\"exactLength\", { rule: max.rule }) : null : Disjoint.init(\"range\", max, min)\n\t}\n});\nvar MaxLengthNode = class extends BaseRange {\n\timpliedBasis = $ark.intrinsic.lengthBoundable.internal;\n\ttraverseAllows = (data) => data.length <= this.rule;\n\treduceJsonSchema(schema) {\n\t\tswitch (schema.type) {\n\t\t\tcase \"string\":\n\t\t\t\tschema.maxLength = this.rule;\n\t\t\t\treturn schema;\n\t\t\tcase \"array\":\n\t\t\t\tschema.maxItems = this.rule;\n\t\t\t\treturn schema;\n\t\t\tdefault: return ToJsonSchema.throwInternalOperandError(\"maxLength\", schema);\n\t\t}\n\t}\n};\nconst MaxLength = {\n\timplementation: implementation$15,\n\tNode: MaxLengthNode\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/refinements/min.js\nconst implementation$14 = implementNode({\n\tkind: \"min\",\n\tcollapsibleKey: \"rule\",\n\thasAssociatedError: true,\n\tkeys: {\n\t\trule: {},\n\t\texclusive: parseExclusiveKey\n\t},\n\tnormalize: (schema) => typeof schema === \"number\" ? { rule: schema } : schema,\n\tdefaults: { description: (node) => {\n\t\tif (node.rule === 0) return node.exclusive ? \"positive\" : \"non-negative\";\n\t\treturn `${node.exclusive ? \"more than\" : \"at least\"} ${node.rule}`;\n\t} },\n\tintersections: { min: (l, r) => l.isStricterThan(r) ? l : r },\n\tobviatesBasisDescription: true\n});\nvar MinNode = class extends BaseRange {\n\timpliedBasis = $ark.intrinsic.number.internal;\n\ttraverseAllows = this.exclusive ? (data) => data > this.rule : (data) => data >= this.rule;\n\treduceJsonSchema(schema) {\n\t\tif (this.exclusive) schema.exclusiveMinimum = this.rule;\n\t\telse schema.minimum = this.rule;\n\t\treturn schema;\n\t}\n};\nconst Min = {\n\timplementation: implementation$14,\n\tNode: MinNode\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/refinements/minLength.js\nconst implementation$13 = implementNode({\n\tkind: \"minLength\",\n\tcollapsibleKey: \"rule\",\n\thasAssociatedError: true,\n\tkeys: { rule: { parse: createLengthRuleParser(\"minLength\") } },\n\treduce: (inner) => inner.rule === 0 ? $ark.intrinsic.unknown : void 0,\n\tnormalize: createLengthSchemaNormalizer(\"minLength\"),\n\tdefaults: {\n\t\tdescription: (node) => node.rule === 1 ? \"non-empty\" : `at least length ${node.rule}`,\n\t\tactual: (data) => data.length === 0 ? \"\" : `${data.length}`\n\t},\n\tintersections: { minLength: (l, r) => l.isStricterThan(r) ? l : r }\n});\nvar MinLengthNode = class extends BaseRange {\n\timpliedBasis = $ark.intrinsic.lengthBoundable.internal;\n\ttraverseAllows = (data) => data.length >= this.rule;\n\treduceJsonSchema(schema) {\n\t\tswitch (schema.type) {\n\t\t\tcase \"string\":\n\t\t\t\tschema.minLength = this.rule;\n\t\t\t\treturn schema;\n\t\t\tcase \"array\":\n\t\t\t\tschema.minItems = this.rule;\n\t\t\t\treturn schema;\n\t\t\tdefault: return ToJsonSchema.throwInternalOperandError(\"minLength\", schema);\n\t\t}\n\t}\n};\nconst MinLength = {\n\timplementation: implementation$13,\n\tNode: MinLengthNode\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/refinements/kinds.js\nconst boundImplementationsByKind = {\n\tmin: Min.implementation,\n\tmax: Max.implementation,\n\tminLength: MinLength.implementation,\n\tmaxLength: MaxLength.implementation,\n\texactLength: ExactLength.implementation,\n\tafter: After.implementation,\n\tbefore: Before.implementation\n};\nconst boundClassesByKind = {\n\tmin: Min.Node,\n\tmax: Max.Node,\n\tminLength: MinLength.Node,\n\tmaxLength: MaxLength.Node,\n\texactLength: ExactLength.Node,\n\tafter: After.Node,\n\tbefore: Before.Node\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/refinements/pattern.js\nconst implementation$12 = implementNode({\n\tkind: \"pattern\",\n\tcollapsibleKey: \"rule\",\n\tkeys: {\n\t\trule: {},\n\t\tflags: {}\n\t},\n\tnormalize: (schema) => typeof schema === \"string\" ? { rule: schema } : schema instanceof RegExp ? schema.flags ? {\n\t\trule: schema.source,\n\t\tflags: schema.flags\n\t} : { rule: schema.source } : schema,\n\tobviatesBasisDescription: true,\n\tobviatesBasisExpression: true,\n\thasAssociatedError: true,\n\tintersectionIsOpen: true,\n\tdefaults: { description: (node) => `matched by ${node.rule}` },\n\tintersections: { pattern: () => null }\n});\nvar PatternNode = class extends InternalPrimitiveConstraint {\n\tinstance = new RegExp(this.rule, this.flags);\n\texpression = `${this.instance}`;\n\ttraverseAllows = this.instance.test.bind(this.instance);\n\tcompiledCondition = `${this.expression}.test(data)`;\n\tcompiledNegation = `!${this.compiledCondition}`;\n\timpliedBasis = $ark.intrinsic.string.internal;\n\treduceJsonSchema(base, ctx) {\n\t\tif (base.pattern) return ctx.fallback.patternIntersection({\n\t\t\tcode: \"patternIntersection\",\n\t\t\tbase,\n\t\t\tpattern: this.rule\n\t\t});\n\t\tbase.pattern = this.rule;\n\t\treturn base;\n\t}\n};\nconst Pattern = {\n\timplementation: implementation$12,\n\tNode: PatternNode\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/parse.js\nconst schemaKindOf = (schema, allowedKinds) => {\n\tconst kind = discriminateRootKind(schema);\n\tif (allowedKinds && !allowedKinds.includes(kind)) return throwParseError(`Root of kind ${kind} should be one of ${allowedKinds}`);\n\treturn kind;\n};\nconst discriminateRootKind = (schema) => {\n\tif (hasArkKind(schema, \"root\")) return schema.kind;\n\tif (typeof schema === \"string\") return schema[0] === \"$\" ? \"alias\" : schema in domainDescriptions ? \"domain\" : \"proto\";\n\tif (typeof schema === \"function\") return \"proto\";\n\tif (typeof schema !== \"object\" || schema === null) return throwParseError(writeInvalidSchemaMessage(schema));\n\tif (\"morphs\" in schema) return \"morph\";\n\tif (\"branches\" in schema || isArray(schema)) return \"union\";\n\tif (\"unit\" in schema) return \"unit\";\n\tif (\"reference\" in schema) return \"alias\";\n\tconst schemaKeys = Object.keys(schema);\n\tif (schemaKeys.length === 0 || schemaKeys.some((k) => k in constraintKeys)) return \"intersection\";\n\tif (\"proto\" in schema) return \"proto\";\n\tif (\"domain\" in schema) return \"domain\";\n\treturn throwParseError(writeInvalidSchemaMessage(schema));\n};\nconst writeInvalidSchemaMessage = (schema) => `${printable(schema)} is not a valid type schema`;\nconst nodeCountsByPrefix = {};\nconst serializeListableChild = (listableNode) => isArray(listableNode) ? listableNode.map((node) => node.collapsibleJson) : listableNode.collapsibleJson;\nconst nodesByRegisteredId = {};\n$ark.nodesByRegisteredId = nodesByRegisteredId;\nconst registerNodeId = (prefix) => {\n\tnodeCountsByPrefix[prefix] ??= 0;\n\treturn `${prefix}${++nodeCountsByPrefix[prefix]}`;\n};\nconst parseNode = (ctx) => {\n\tconst impl = nodeImplementationsByKind[ctx.kind];\n\tconst configuredSchema = impl.applyConfig?.(ctx.def, ctx.$.resolvedConfig) ?? ctx.def;\n\tconst inner = {};\n\tconst { meta: metaSchema, ...innerSchema } = configuredSchema;\n\tconst meta = metaSchema === void 0 ? {} : typeof metaSchema === \"string\" ? { description: metaSchema } : metaSchema;\n\tconst innerSchemaEntries = entriesOf(innerSchema).sort(([lKey], [rKey]) => isNodeKind(lKey) ? isNodeKind(rKey) ? precedenceOfKind(lKey) - precedenceOfKind(rKey) : 1 : isNodeKind(rKey) ? -1 : lKey < rKey ? -1 : 1).filter(([k, v]) => {\n\t\tif (k.startsWith(\"meta.\")) {\n\t\t\tconst metaKey = k.slice(5);\n\t\t\tmeta[metaKey] = v;\n\t\t\treturn false;\n\t\t}\n\t\treturn true;\n\t});\n\tfor (const entry of innerSchemaEntries) {\n\t\tconst k = entry[0];\n\t\tconst keyImpl = impl.keys[k];\n\t\tif (!keyImpl) return throwParseError(`Key ${k} is not valid on ${ctx.kind} schema`);\n\t\tconst v = keyImpl.parse ? keyImpl.parse(entry[1], ctx) : entry[1];\n\t\tif (v !== unset && (v !== void 0 || keyImpl.preserveUndefined)) inner[k] = v;\n\t}\n\tif (impl.reduce && !ctx.prereduced) {\n\t\tconst reduced = impl.reduce(inner, ctx.$);\n\t\tif (reduced) {\n\t\t\tif (reduced instanceof Disjoint) return reduced.throw();\n\t\t\treturn withMeta(reduced, meta);\n\t\t}\n\t}\n\treturn createNode({\n\t\tid: ctx.id,\n\t\tkind: ctx.kind,\n\t\tinner,\n\t\tmeta,\n\t\t$: ctx.$\n\t});\n};\nconst createNode = ({ id, kind, inner, meta, $, ignoreCache }) => {\n\tconst impl = nodeImplementationsByKind[kind];\n\tconst innerEntries = entriesOf(inner);\n\tconst children = [];\n\tlet innerJson = {};\n\tfor (const [k, v] of innerEntries) {\n\t\tconst keyImpl = impl.keys[k];\n\t\tconst serialize = keyImpl.serialize ?? (keyImpl.child ? serializeListableChild : defaultValueSerializer);\n\t\tinnerJson[k] = serialize(v);\n\t\tif (keyImpl.child === true) {\n\t\t\tconst listableNode = v;\n\t\t\tif (isArray(listableNode)) children.push(...listableNode);\n\t\t\telse children.push(listableNode);\n\t\t} else if (typeof keyImpl.child === \"function\") children.push(...keyImpl.child(v));\n\t}\n\tif (impl.finalizeInnerJson) innerJson = impl.finalizeInnerJson(innerJson);\n\tlet json = { ...innerJson };\n\tlet metaJson = {};\n\tif (!isEmptyObject(meta)) {\n\t\tmetaJson = flatMorph(meta, (k, v) => [k, k === \"examples\" ? v : defaultValueSerializer(v)]);\n\t\tjson.meta = possiblyCollapse(metaJson, \"description\", true);\n\t}\n\tinnerJson = possiblyCollapse(innerJson, impl.collapsibleKey, false);\n\tconst innerHash = JSON.stringify({\n\t\tkind,\n\t\t...innerJson\n\t});\n\tjson = possiblyCollapse(json, impl.collapsibleKey, false);\n\tconst collapsibleJson = possiblyCollapse(json, impl.collapsibleKey, true);\n\tconst hash = JSON.stringify({\n\t\tkind,\n\t\t...json\n\t});\n\tif ($.nodesByHash[hash] && !ignoreCache) return $.nodesByHash[hash];\n\tconst attachments = {\n\t\tid,\n\t\tkind,\n\t\timpl,\n\t\tinner,\n\t\tinnerEntries,\n\t\tinnerJson,\n\t\tinnerHash,\n\t\tmeta,\n\t\tmetaJson,\n\t\tjson,\n\t\thash,\n\t\tcollapsibleJson,\n\t\tchildren\n\t};\n\tif (kind !== \"intersection\") {\n\t\tfor (const k in inner) if (k !== \"in\" && k !== \"out\") attachments[k] = inner[k];\n\t}\n\tconst node = new nodeClassesByKind[kind](attachments, $);\n\treturn $.nodesByHash[hash] = node;\n};\nconst withId = (node, id) => {\n\tif (node.id === id) return node;\n\tif (isNode(nodesByRegisteredId[id])) throwInternalError(`Unexpected attempt to overwrite node id ${id}`);\n\treturn createNode({\n\t\tid,\n\t\tkind: node.kind,\n\t\tinner: node.inner,\n\t\tmeta: node.meta,\n\t\t$: node.$,\n\t\tignoreCache: true\n\t});\n};\nconst withMeta = (node, meta, id) => {\n\tif (id && isNode(nodesByRegisteredId[id])) throwInternalError(`Unexpected attempt to overwrite node id ${id}`);\n\treturn createNode({\n\t\tid: id ?? registerNodeId(meta.alias ?? node.kind),\n\t\tkind: node.kind,\n\t\tinner: node.inner,\n\t\tmeta,\n\t\t$: node.$\n\t});\n};\nconst possiblyCollapse = (json, toKey, allowPrimitive) => {\n\tconst collapsibleKeys = Object.keys(json);\n\tif (collapsibleKeys.length === 1 && collapsibleKeys[0] === toKey) {\n\t\tconst collapsed = json[toKey];\n\t\tif (allowPrimitive) return collapsed;\n\t\tif (hasDomain(collapsed, \"object\") && (Object.keys(collapsed).length === 1 || Array.isArray(collapsed))) return collapsed;\n\t}\n\treturn json;\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/structure/prop.js\nconst intersectProps = (l, r, ctx) => {\n\tif (l.key !== r.key) return null;\n\tconst key = l.key;\n\tlet value = intersectOrPipeNodes(l.value, r.value, ctx);\n\tconst kind = l.required || r.required ? \"required\" : \"optional\";\n\tif (value instanceof Disjoint) if (kind === \"optional\") value = $ark.intrinsic.never.internal;\n\telse return value.withPrefixKey(l.key, l.required && r.required ? \"required\" : \"optional\");\n\tif (kind === \"required\") return ctx.$.node(\"required\", {\n\t\tkey,\n\t\tvalue\n\t});\n\tconst defaultIntersection = l.hasDefault() ? r.hasDefault() ? l.default === r.default ? l.default : throwParseError(writeDefaultIntersectionMessage(l.default, r.default)) : l.default : r.hasDefault() ? r.default : unset;\n\treturn ctx.$.node(\"optional\", {\n\t\tkey,\n\t\tvalue,\n\t\tdefault: defaultIntersection\n\t});\n};\nvar BaseProp = class extends BaseConstraint {\n\trequired = this.kind === \"required\";\n\toptional = this.kind === \"optional\";\n\timpliedBasis = $ark.intrinsic.object.internal;\n\tserializedKey = compileSerializedValue(this.key);\n\tcompiledKey = typeof this.key === \"string\" ? this.key : this.serializedKey;\n\tflatRefs = append(this.value.flatRefs.map((ref) => flatRef([this.key, ...ref.path], ref.node)), flatRef([this.key], this.value));\n\t_transform(mapper, ctx) {\n\t\tctx.path.push(this.key);\n\t\tconst result = super._transform(mapper, ctx);\n\t\tctx.path.pop();\n\t\treturn result;\n\t}\n\thasDefault() {\n\t\treturn \"default\" in this.inner;\n\t}\n\ttraverseAllows = (data, ctx) => {\n\t\tif (this.key in data) return traverseKey(this.key, () => this.value.traverseAllows(data[this.key], ctx), ctx);\n\t\treturn this.optional;\n\t};\n\ttraverseApply = (data, ctx) => {\n\t\tif (this.key in data) traverseKey(this.key, () => this.value.traverseApply(data[this.key], ctx), ctx);\n\t\telse if (this.hasKind(\"required\")) ctx.errorFromNodeContext(this.errorContext);\n\t};\n\tcompile(js) {\n\t\tjs.if(`${this.serializedKey} in data`, () => js.traverseKey(this.serializedKey, `data${js.prop(this.key)}`, this.value));\n\t\tif (this.hasKind(\"required\")) js.else(() => js.traversalKind === \"Apply\" ? js.line(`ctx.errorFromNodeContext(${this.compiledErrorContext})`) : js.return(false));\n\t\tif (js.traversalKind === \"Allows\") js.return(true);\n\t}\n};\nconst writeDefaultIntersectionMessage = (lValue, rValue) => `Invalid intersection of default values ${printable(lValue)} & ${printable(rValue)}`;\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/structure/optional.js\nconst implementation$11 = implementNode({\n\tkind: \"optional\",\n\thasAssociatedError: false,\n\tintersectionIsOpen: true,\n\tkeys: {\n\t\tkey: {},\n\t\tvalue: {\n\t\t\tchild: true,\n\t\t\tparse: (schema, ctx) => ctx.$.parseSchema(schema)\n\t\t},\n\t\tdefault: { preserveUndefined: true }\n\t},\n\tnormalize: (schema) => schema,\n\treduce: (inner, $) => {\n\t\tif ($.resolvedConfig.exactOptionalPropertyTypes === false) {\n\t\t\tif (!inner.value.allows(void 0)) return $.node(\"optional\", {\n\t\t\t\t...inner,\n\t\t\t\tvalue: inner.value.or(intrinsic.undefined)\n\t\t\t}, { prereduced: true });\n\t\t}\n\t},\n\tdefaults: { description: (node) => `${node.compiledKey}?: ${node.value.description}` },\n\tintersections: { optional: intersectProps }\n});\nvar OptionalNode = class extends BaseProp {\n\tconstructor(...args) {\n\t\tsuper(...args);\n\t\tif (\"default\" in this.inner) assertDefaultValueAssignability(this.value, this.inner.default, this.key);\n\t}\n\tget rawIn() {\n\t\tconst baseIn = super.rawIn;\n\t\tif (!this.hasDefault()) return baseIn;\n\t\treturn this.$.node(\"optional\", omit(baseIn.inner, { default: true }), { prereduced: true });\n\t}\n\tget outProp() {\n\t\tif (!this.hasDefault()) return this;\n\t\tconst { default: defaultValue, ...requiredInner } = this.inner;\n\t\treturn this.cacheGetter(\"outProp\", this.$.node(\"required\", requiredInner, { prereduced: true }));\n\t}\n\texpression = this.hasDefault() ? `${this.compiledKey}: ${this.value.expression} = ${printable(this.inner.default)}` : `${this.compiledKey}?: ${this.value.expression}`;\n\tdefaultValueMorph = getDefaultableMorph(this);\n\tdefaultValueMorphRef = this.defaultValueMorph && registeredReference(this.defaultValueMorph);\n};\nconst Optional = {\n\timplementation: implementation$11,\n\tNode: OptionalNode\n};\nconst defaultableMorphCache = {};\nconst getDefaultableMorph = (node) => {\n\tif (!node.hasDefault()) return;\n\tconst cacheKey = `{${node.compiledKey}: ${node.value.id} = ${defaultValueSerializer(node.default)}}`;\n\treturn defaultableMorphCache[cacheKey] ??= computeDefaultValueMorph(node.key, node.value, node.default);\n};\nconst computeDefaultValueMorph = (key, value, defaultInput) => {\n\tif (typeof defaultInput === \"function\") return value.includesTransform ? (data, ctx) => {\n\t\ttraverseKey(key, () => value(data[key] = defaultInput(), ctx), ctx);\n\t\treturn data;\n\t} : (data) => {\n\t\tdata[key] = defaultInput();\n\t\treturn data;\n\t};\n\tconst precomputedMorphedDefault = value.includesTransform ? value.assert(defaultInput) : defaultInput;\n\treturn hasDomain(precomputedMorphedDefault, \"object\") ? (data, ctx) => {\n\t\ttraverseKey(key, () => value(data[key] = defaultInput, ctx), ctx);\n\t\treturn data;\n\t} : (data) => {\n\t\tdata[key] = precomputedMorphedDefault;\n\t\treturn data;\n\t};\n};\nconst assertDefaultValueAssignability = (node, value, key) => {\n\tconst wrapped = isThunk(value);\n\tif (hasDomain(value, \"object\") && !wrapped) throwParseError(writeNonPrimitiveNonFunctionDefaultValueMessage(key));\n\tconst out = node.in(wrapped ? value() : value);\n\tif (out instanceof ArkErrors) {\n\t\tif (key === null) throwParseError(`Default ${out.summary}`);\n\t\tthrowParseError(`Default for ${out.transform((e) => e.transform((input) => ({\n\t\t\t...input,\n\t\t\tprefixPath: [key]\n\t\t}))).summary}`);\n\t}\n\treturn value;\n};\nconst writeNonPrimitiveNonFunctionDefaultValueMessage = (key) => {\n\treturn `Non-primitive default ${key === null ? \"\" : typeof key === \"number\" ? `for value at [${key}] ` : `for ${compileSerializedValue(key)} `}must be specified as a function like () => ({my: 'object'})`;\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/roots/root.js\nvar BaseRoot = class extends BaseNode {\n\tconstructor(attachments, $) {\n\t\tsuper(attachments, $);\n\t\tObject.defineProperty(this, arkKind, {\n\t\t\tvalue: \"root\",\n\t\t\tenumerable: false\n\t\t});\n\t}\n\tget rawIn() {\n\t\treturn super.rawIn;\n\t}\n\tget rawOut() {\n\t\treturn super.rawOut;\n\t}\n\tget internal() {\n\t\treturn this;\n\t}\n\tget \"~standard\"() {\n\t\treturn {\n\t\t\tvendor: \"arktype\",\n\t\t\tversion: 1,\n\t\t\tvalidate: (input) => {\n\t\t\t\tconst out = this(input);\n\t\t\t\tif (out instanceof ArkErrors) return out;\n\t\t\t\treturn { value: out };\n\t\t\t},\n\t\t\tjsonSchema: {\n\t\t\t\tinput: (opts) => this.rawIn.toJsonSchema({\n\t\t\t\t\ttarget: validateStandardJsonSchemaTarget(opts.target),\n\t\t\t\t\t...opts.libraryOptions\n\t\t\t\t}),\n\t\t\t\toutput: (opts) => this.rawOut.toJsonSchema({\n\t\t\t\t\ttarget: validateStandardJsonSchemaTarget(opts.target),\n\t\t\t\t\t...opts.libraryOptions\n\t\t\t\t})\n\t\t\t}\n\t\t};\n\t}\n\tas() {\n\t\treturn this;\n\t}\n\tbrand(name) {\n\t\tif (name === \"\") return throwParseError(emptyBrandNameMessage);\n\t\treturn this;\n\t}\n\treadonly() {\n\t\treturn this;\n\t}\n\tbranches = this.hasKind(\"union\") ? this.inner.branches : [this];\n\tdistribute(mapBranch, reduceMapped) {\n\t\tconst mappedBranches = this.branches.map(mapBranch);\n\t\treturn reduceMapped?.(mappedBranches) ?? mappedBranches;\n\t}\n\tget shortDescription() {\n\t\treturn this.meta.description ?? this.defaultShortDescription;\n\t}\n\ttoJsonSchema(opts = {}) {\n\t\tconst ctx = mergeToJsonSchemaConfigs(this.$.resolvedConfig.toJsonSchema, opts);\n\t\tctx.useRefs ||= this.isCyclic;\n\t\tconst schema = typeof ctx.dialect === \"string\" ? { $schema: ctx.dialect } : {};\n\t\tObject.assign(schema, this.toJsonSchemaRecurse(ctx));\n\t\tif (ctx.useRefs) {\n\t\t\tconst defs = flatMorph(this.references, (i, ref) => ref.isRoot() && !ref.alwaysExpandJsonSchema ? [ref.id, ref.toResolvedJsonSchema(ctx)] : []);\n\t\t\tif (ctx.target === \"draft-07\") Object.assign(schema, { definitions: defs });\n\t\t\telse schema.$defs = defs;\n\t\t}\n\t\treturn schema;\n\t}\n\ttoJsonSchemaRecurse(ctx) {\n\t\tif (ctx.useRefs && !this.alwaysExpandJsonSchema) return { $ref: `#/${ctx.target === \"draft-07\" ? \"definitions\" : \"$defs\"}/${this.id}` };\n\t\treturn this.toResolvedJsonSchema(ctx);\n\t}\n\tget alwaysExpandJsonSchema() {\n\t\treturn this.isBasis() || this.kind === \"alias\" || this.hasKind(\"union\") && this.isBoolean;\n\t}\n\ttoResolvedJsonSchema(ctx) {\n\t\tconst result = this.innerToJsonSchema(ctx);\n\t\treturn Object.assign(result, this.metaJson);\n\t}\n\tintersect(r) {\n\t\tconst rNode = this.$.parseDefinition(r);\n\t\tconst result = this.rawIntersect(rNode);\n\t\tif (result instanceof Disjoint) return result;\n\t\treturn this.$.finalize(result);\n\t}\n\trawIntersect(r) {\n\t\treturn intersectNodesRoot(this, r, this.$);\n\t}\n\ttoNeverIfDisjoint() {\n\t\treturn this;\n\t}\n\tand(r) {\n\t\tconst result = this.intersect(r);\n\t\treturn result instanceof Disjoint ? result.throw() : result;\n\t}\n\trawAnd(r) {\n\t\tconst result = this.rawIntersect(r);\n\t\treturn result instanceof Disjoint ? result.throw() : result;\n\t}\n\tor(r) {\n\t\tconst rNode = this.$.parseDefinition(r);\n\t\treturn this.$.finalize(this.rawOr(rNode));\n\t}\n\trawOr(r) {\n\t\tconst branches = [...this.branches, ...r.branches];\n\t\treturn this.$.node(\"union\", branches);\n\t}\n\tmap(flatMapEntry) {\n\t\treturn this.$.schema(this.applyStructuralOperation(\"map\", [flatMapEntry]));\n\t}\n\tpick(...keys) {\n\t\treturn this.$.schema(this.applyStructuralOperation(\"pick\", keys));\n\t}\n\tomit(...keys) {\n\t\treturn this.$.schema(this.applyStructuralOperation(\"omit\", keys));\n\t}\n\trequired() {\n\t\treturn this.$.schema(this.applyStructuralOperation(\"required\", []));\n\t}\n\tpartial() {\n\t\treturn this.$.schema(this.applyStructuralOperation(\"partial\", []));\n\t}\n\t_keyof;\n\tkeyof() {\n\t\tif (this._keyof) return this._keyof;\n\t\tconst result = this.applyStructuralOperation(\"keyof\", []).reduce((result, branch) => result.intersect(branch).toNeverIfDisjoint(), $ark.intrinsic.unknown.internal);\n\t\tif (result.branches.length === 0) throwParseError(writeUnsatisfiableExpressionError(`keyof ${this.expression}`));\n\t\treturn this._keyof = this.$.finalize(result);\n\t}\n\tget props() {\n\t\tif (this.branches.length !== 1) return throwParseError(writeLiteralUnionEntriesMessage(this.expression));\n\t\treturn [...this.applyStructuralOperation(\"props\", [])[0]];\n\t}\n\tmerge(r) {\n\t\tconst rNode = this.$.parseDefinition(r);\n\t\treturn this.$.schema(rNode.distribute((branch) => this.applyStructuralOperation(\"merge\", [structureOf(branch) ?? throwParseError(writeNonStructuralOperandMessage(\"merge\", branch.expression))])));\n\t}\n\tapplyStructuralOperation(operation, args) {\n\t\treturn this.distribute((branch) => {\n\t\t\tif (branch.equals($ark.intrinsic.object) && operation !== \"merge\") return branch;\n\t\t\tconst structure = structureOf(branch);\n\t\t\tif (!structure) throwParseError(writeNonStructuralOperandMessage(operation, branch.expression));\n\t\t\tif (operation === \"keyof\") return structure.keyof();\n\t\t\tif (operation === \"get\") return structure.get(...args);\n\t\t\tif (operation === \"props\") return structure.props;\n\t\t\tconst structuralMethodName = operation === \"required\" ? \"require\" : operation === \"partial\" ? \"optionalize\" : operation;\n\t\t\treturn this.$.node(\"intersection\", {\n\t\t\t\tdomain: \"object\",\n\t\t\t\tstructure: structure[structuralMethodName](...args)\n\t\t\t});\n\t\t});\n\t}\n\tget(...path) {\n\t\tif (path[0] === void 0) return this;\n\t\treturn this.$.schema(this.applyStructuralOperation(\"get\", path));\n\t}\n\textract(r) {\n\t\tconst rNode = this.$.parseDefinition(r);\n\t\treturn this.$.schema(this.branches.filter((branch) => branch.extends(rNode)));\n\t}\n\texclude(r) {\n\t\tconst rNode = this.$.parseDefinition(r);\n\t\treturn this.$.schema(this.branches.filter((branch) => !branch.extends(rNode)));\n\t}\n\tarray() {\n\t\treturn this.$.schema(this.isUnknown() ? { proto: Array } : {\n\t\t\tproto: Array,\n\t\t\tsequence: this\n\t\t}, { prereduced: true });\n\t}\n\toverlaps(r) {\n\t\treturn !(this.intersect(r) instanceof Disjoint);\n\t}\n\textends(r) {\n\t\tif (this.isNever()) return true;\n\t\tconst intersection = this.intersect(r);\n\t\treturn !(intersection instanceof Disjoint) && this.equals(intersection);\n\t}\n\tifExtends(r) {\n\t\treturn this.extends(r) ? this : void 0;\n\t}\n\tsubsumes(r) {\n\t\treturn this.$.parseDefinition(r).extends(this);\n\t}\n\tconfigure(meta, selector = \"shallow\") {\n\t\treturn this.configureReferences(meta, selector);\n\t}\n\tdescribe(description, selector = \"shallow\") {\n\t\treturn this.configure({ description }, selector);\n\t}\n\toptional() {\n\t\treturn [this, \"?\"];\n\t}\n\tdefault(thunkableValue) {\n\t\tassertDefaultValueAssignability(this, thunkableValue, null);\n\t\treturn [\n\t\t\tthis,\n\t\t\t\"=\",\n\t\t\tthunkableValue\n\t\t];\n\t}\n\tfrom(input) {\n\t\treturn this.assert(input);\n\t}\n\t_pipe(...morphs) {\n\t\tconst result = morphs.reduce((acc, morph) => acc.rawPipeOnce(morph), this);\n\t\treturn this.$.finalize(result);\n\t}\n\ttryPipe(...morphs) {\n\t\tconst result = morphs.reduce((acc, morph) => acc.rawPipeOnce(hasArkKind(morph, \"root\") ? morph : ((In, ctx) => {\n\t\t\ttry {\n\t\t\t\treturn morph(In, ctx);\n\t\t\t} catch (e) {\n\t\t\t\treturn ctx.error({\n\t\t\t\t\tcode: \"predicate\",\n\t\t\t\t\tpredicate: morph,\n\t\t\t\t\tactual: `aborted due to error:\\n ${e}\\n`\n\t\t\t\t});\n\t\t\t}\n\t\t})), this);\n\t\treturn this.$.finalize(result);\n\t}\n\tpipe = Object.assign(this._pipe.bind(this), { try: this.tryPipe.bind(this) });\n\tto(def) {\n\t\treturn this.$.finalize(this.toNode(this.$.parseDefinition(def)));\n\t}\n\ttoNode(root) {\n\t\tconst result = pipeNodesRoot(this, root, this.$);\n\t\tif (result instanceof Disjoint) return result.throw();\n\t\treturn result;\n\t}\n\trawPipeOnce(morph) {\n\t\tif (hasArkKind(morph, \"root\")) return this.toNode(morph);\n\t\treturn this.distribute((branch) => branch.hasKind(\"morph\") ? this.$.node(\"morph\", {\n\t\t\tin: branch.inner.in,\n\t\t\tmorphs: [...branch.morphs, morph]\n\t\t}) : this.$.node(\"morph\", {\n\t\t\tin: branch,\n\t\t\tmorphs: [morph]\n\t\t}), this.$.parseSchema);\n\t}\n\tnarrow(predicate) {\n\t\treturn this.constrainOut(\"predicate\", predicate);\n\t}\n\tconstrain(kind, schema) {\n\t\treturn this._constrain(\"root\", kind, schema);\n\t}\n\tconstrainIn(kind, schema) {\n\t\treturn this._constrain(\"in\", kind, schema);\n\t}\n\tconstrainOut(kind, schema) {\n\t\treturn this._constrain(\"out\", kind, schema);\n\t}\n\t_constrain(io, kind, schema) {\n\t\tconst constraint = this.$.node(kind, schema);\n\t\tif (constraint.isRoot()) return constraint.isUnknown() ? this : throwInternalError(`Unexpected constraint node ${constraint}`);\n\t\tconst operand = io === \"root\" ? this : io === \"in\" ? this.rawIn : this.rawOut;\n\t\tif (operand.hasKind(\"morph\") || constraint.impliedBasis && !operand.extends(constraint.impliedBasis)) return throwInvalidOperandError(kind, constraint.impliedBasis, this);\n\t\tconst partialIntersection = this.$.node(\"intersection\", { [constraint.kind]: constraint });\n\t\tconst result = io === \"out\" ? pipeNodesRoot(this, partialIntersection, this.$) : intersectNodesRoot(this, partialIntersection, this.$);\n\t\tif (result instanceof Disjoint) result.throw();\n\t\treturn this.$.finalize(result);\n\t}\n\tonUndeclaredKey(cfg) {\n\t\tconst rule = typeof cfg === \"string\" ? cfg : cfg.rule;\n\t\tconst deep = typeof cfg === \"string\" ? false : cfg.deep;\n\t\treturn this.$.finalize(this.transform((kind, inner) => kind === \"structure\" ? rule === \"ignore\" ? omit(inner, { undeclared: 1 }) : {\n\t\t\t...inner,\n\t\t\tundeclared: rule\n\t\t} : inner, deep ? void 0 : { shouldTransform: (node) => !includes(structuralKinds, node.kind) }));\n\t}\n\thasEqualMorphs(r) {\n\t\tif (!this.includesTransform && !r.includesTransform) return true;\n\t\tif (!arrayEquals(this.shallowMorphs, r.shallowMorphs)) return false;\n\t\tif (!arrayEquals(this.flatMorphs, r.flatMorphs, { isEqual: (l, r) => l.propString === r.propString && (l.node.hasKind(\"morph\") && r.node.hasKind(\"morph\") ? l.node.hasEqualMorphs(r.node) : l.node.hasKind(\"intersection\") && r.node.hasKind(\"intersection\") ? l.node.structure?.structuralMorphRef === r.node.structure?.structuralMorphRef : false) })) return false;\n\t\treturn true;\n\t}\n\tonDeepUndeclaredKey(behavior) {\n\t\treturn this.onUndeclaredKey({\n\t\t\trule: behavior,\n\t\t\tdeep: true\n\t\t});\n\t}\n\tfilter(predicate) {\n\t\treturn this.constrainIn(\"predicate\", predicate);\n\t}\n\tdivisibleBy(schema) {\n\t\treturn this.constrain(\"divisor\", schema);\n\t}\n\tmatching(schema) {\n\t\treturn this.constrain(\"pattern\", schema);\n\t}\n\tatLeast(schema) {\n\t\treturn this.constrain(\"min\", schema);\n\t}\n\tatMost(schema) {\n\t\treturn this.constrain(\"max\", schema);\n\t}\n\tmoreThan(schema) {\n\t\treturn this.constrain(\"min\", exclusivizeRangeSchema(schema));\n\t}\n\tlessThan(schema) {\n\t\treturn this.constrain(\"max\", exclusivizeRangeSchema(schema));\n\t}\n\tatLeastLength(schema) {\n\t\treturn this.constrain(\"minLength\", schema);\n\t}\n\tatMostLength(schema) {\n\t\treturn this.constrain(\"maxLength\", schema);\n\t}\n\tmoreThanLength(schema) {\n\t\treturn this.constrain(\"minLength\", exclusivizeRangeSchema(schema));\n\t}\n\tlessThanLength(schema) {\n\t\treturn this.constrain(\"maxLength\", exclusivizeRangeSchema(schema));\n\t}\n\texactlyLength(schema) {\n\t\treturn this.constrain(\"exactLength\", schema);\n\t}\n\tatOrAfter(schema) {\n\t\treturn this.constrain(\"after\", schema);\n\t}\n\tatOrBefore(schema) {\n\t\treturn this.constrain(\"before\", schema);\n\t}\n\tlaterThan(schema) {\n\t\treturn this.constrain(\"after\", exclusivizeRangeSchema(schema));\n\t}\n\tearlierThan(schema) {\n\t\treturn this.constrain(\"before\", exclusivizeRangeSchema(schema));\n\t}\n};\nconst emptyBrandNameMessage = `Expected a non-empty brand name after #`;\nconst supportedJsonSchemaTargets = [\"draft-2020-12\", \"draft-07\"];\nconst writeInvalidJsonSchemaTargetMessage = (target) => `JSONSchema target '${target}' is not supported (must be ${supportedJsonSchemaTargets.map((t) => `\"${t}\"`).join(\" or \")})`;\nconst validateStandardJsonSchemaTarget = (target) => {\n\tif (!includes(supportedJsonSchemaTargets, target)) throwParseError(writeInvalidJsonSchemaTargetMessage(target));\n\treturn target;\n};\nconst exclusivizeRangeSchema = (schema) => typeof schema === \"object\" && !(schema instanceof Date) ? {\n\t...schema,\n\texclusive: true\n} : {\n\trule: schema,\n\texclusive: true\n};\nconst typeOrTermExtends = (t, base) => hasArkKind(base, \"root\") ? hasArkKind(t, \"root\") ? t.extends(base) : base.allows(t) : hasArkKind(t, \"root\") ? t.hasUnit(base) : base === t;\nconst structureOf = (branch) => {\n\tif (branch.hasKind(\"morph\")) return null;\n\tif (branch.hasKind(\"intersection\")) return branch.inner.structure ?? (branch.basis?.domain === \"object\" ? branch.$.bindReference($ark.intrinsic.emptyStructure) : null);\n\tif (branch.isBasis() && branch.domain === \"object\") return branch.$.bindReference($ark.intrinsic.emptyStructure);\n\treturn null;\n};\nconst writeLiteralUnionEntriesMessage = (expression) => `Props cannot be extracted from a union. Use .distribute to extract props from each branch instead. Received:\n${expression}`;\nconst writeNonStructuralOperandMessage = (operation, operand) => `${operation} operand must be an object (was ${operand})`;\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/roots/utils.js\nconst defineRightwardIntersections = (kind, implementation) => flatMorph(schemaKindsRightOf(kind), (i, kind) => [kind, implementation]);\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/roots/alias.js\nconst normalizeAliasSchema = (schema) => typeof schema === \"string\" ? { reference: schema } : schema;\nconst neverIfDisjoint = (result) => result instanceof Disjoint ? $ark.intrinsic.never.internal : result;\nconst implementation$10 = implementNode({\n\tkind: \"alias\",\n\thasAssociatedError: false,\n\tcollapsibleKey: \"reference\",\n\tkeys: {\n\t\treference: { serialize: (s) => s.startsWith(\"$\") ? s : `$ark.${s}` },\n\t\tresolve: {}\n\t},\n\tnormalize: normalizeAliasSchema,\n\tdefaults: { description: (node) => node.reference },\n\tintersections: {\n\t\talias: (l, r, ctx) => ctx.$.lazilyResolve(() => neverIfDisjoint(intersectOrPipeNodes(l.resolution, r.resolution, ctx)), `${l.reference}${ctx.pipe ? \"=>\" : \"&\"}${r.reference}`),\n\t\t...defineRightwardIntersections(\"alias\", (l, r, ctx) => {\n\t\t\tif (r.isUnknown()) return l;\n\t\t\tif (r.isNever()) return r;\n\t\t\tif (r.isBasis() && !r.overlaps($ark.intrinsic.object)) return Disjoint.init(\"assignability\", $ark.intrinsic.object, r);\n\t\t\treturn ctx.$.lazilyResolve(() => neverIfDisjoint(intersectOrPipeNodes(l.resolution, r, ctx)), `${l.reference}${ctx.pipe ? \"=>\" : \"&\"}${r.id}`);\n\t\t})\n\t}\n});\nvar AliasNode = class extends BaseRoot {\n\texpression = this.reference;\n\tstructure = void 0;\n\tget resolution() {\n\t\tconst result = this._resolve();\n\t\treturn nodesByRegisteredId[this.id] = result;\n\t}\n\t_resolve() {\n\t\tif (this.resolve) return this.resolve();\n\t\tif (this.reference[0] === \"$\") return this.$.resolveRoot(this.reference.slice(1));\n\t\tlet resolution = nodesByRegisteredId[this.reference];\n\t\tconst seen = [];\n\t\twhile (hasArkKind(resolution, \"context\")) {\n\t\t\tif (seen.includes(resolution.id)) return throwParseError(writeShallowCycleErrorMessage(resolution.id, seen));\n\t\t\tseen.push(resolution.id);\n\t\t\tresolution = nodesByRegisteredId[resolution.id];\n\t\t}\n\t\tif (!hasArkKind(resolution, \"root\")) return throwInternalError(`Unexpected resolution for reference ${this.reference}\nSeen: [${seen.join(\"->\")}] \nResolution: ${printable(resolution)}`);\n\t\treturn resolution;\n\t}\n\tget resolutionId() {\n\t\tif (this.reference.includes(\"&\") || this.reference.includes(\"=>\")) return this.resolution.id;\n\t\tif (this.reference[0] !== \"$\") return this.reference;\n\t\tconst alias = this.reference.slice(1);\n\t\tconst resolution = this.$.resolutions[alias];\n\t\tif (typeof resolution === \"string\") return resolution;\n\t\tif (hasArkKind(resolution, \"root\")) return resolution.id;\n\t\treturn throwInternalError(`Unexpected resolution for reference ${this.reference}: ${printable(resolution)}`);\n\t}\n\tget defaultShortDescription() {\n\t\treturn domainDescriptions.object;\n\t}\n\tinnerToJsonSchema(ctx) {\n\t\treturn this.resolution.toJsonSchemaRecurse(ctx);\n\t}\n\ttraverseAllows = (data, ctx) => {\n\t\tconst seen = ctx.seen[this.reference];\n\t\tif (seen?.includes(data)) return true;\n\t\tctx.seen[this.reference] = append(seen, data);\n\t\treturn this.resolution.traverseAllows(data, ctx);\n\t};\n\ttraverseApply = (data, ctx) => {\n\t\tconst seen = ctx.seen[this.reference];\n\t\tif (seen?.includes(data)) return;\n\t\tctx.seen[this.reference] = append(seen, data);\n\t\tthis.resolution.traverseApply(data, ctx);\n\t};\n\tcompile(js) {\n\t\tconst id = this.resolutionId;\n\t\tjs.if(`ctx.seen.${id} && ctx.seen.${id}.includes(data)`, () => js.return(true));\n\t\tjs.if(`!ctx.seen.${id}`, () => js.line(`ctx.seen.${id} = []`));\n\t\tjs.line(`ctx.seen.${id}.push(data)`);\n\t\tjs.return(js.invoke(id));\n\t}\n};\nconst writeShallowCycleErrorMessage = (name, seen) => `Alias '${name}' has a shallow resolution cycle: ${[...seen, name].join(\"->\")}`;\nconst Alias = {\n\timplementation: implementation$10,\n\tNode: AliasNode\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/roots/basis.js\nvar InternalBasis = class extends BaseRoot {\n\ttraverseApply = (data, ctx) => {\n\t\tif (!this.traverseAllows(data, ctx)) ctx.errorFromNodeContext(this.errorContext);\n\t};\n\tget errorContext() {\n\t\treturn {\n\t\t\tcode: this.kind,\n\t\t\tdescription: this.description,\n\t\t\tmeta: this.meta,\n\t\t\t...this.inner\n\t\t};\n\t}\n\tget compiledErrorContext() {\n\t\treturn compileObjectLiteral(this.errorContext);\n\t}\n\tcompile(js) {\n\t\tif (js.traversalKind === \"Allows\") js.return(this.compiledCondition);\n\t\telse js.if(this.compiledNegation, () => js.line(`ctx.errorFromNodeContext(${this.compiledErrorContext})`));\n\t}\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/roots/domain.js\nconst implementation$9 = implementNode({\n\tkind: \"domain\",\n\thasAssociatedError: true,\n\tcollapsibleKey: \"domain\",\n\tkeys: {\n\t\tdomain: {},\n\t\tnumberAllowsNaN: {}\n\t},\n\tnormalize: (schema) => typeof schema === \"string\" ? { domain: schema } : hasKey(schema, \"numberAllowsNaN\") && schema.domain !== \"number\" ? throwParseError(Domain.writeBadAllowNanMessage(schema.domain)) : schema,\n\tapplyConfig: (schema, config) => schema.numberAllowsNaN === void 0 && schema.domain === \"number\" && config.numberAllowsNaN ? {\n\t\t...schema,\n\t\tnumberAllowsNaN: true\n\t} : schema,\n\tdefaults: {\n\t\tdescription: (node) => domainDescriptions[node.domain],\n\t\tactual: (data) => Number.isNaN(data) ? \"NaN\" : domainDescriptions[domainOf(data)]\n\t},\n\tintersections: { domain: (l, r) => l.domain === \"number\" && r.domain === \"number\" ? l.numberAllowsNaN ? r : l : Disjoint.init(\"domain\", l, r) }\n});\nvar DomainNode = class extends InternalBasis {\n\trequiresNaNCheck = this.domain === \"number\" && !this.numberAllowsNaN;\n\ttraverseAllows = this.requiresNaNCheck ? (data) => typeof data === \"number\" && !Number.isNaN(data) : (data) => domainOf(data) === this.domain;\n\tcompiledCondition = this.domain === \"object\" ? `((typeof data === \"object\" && data !== null) || typeof data === \"function\")` : `typeof data === \"${this.domain}\"${this.requiresNaNCheck ? \" && !Number.isNaN(data)\" : \"\"}`;\n\tcompiledNegation = this.domain === \"object\" ? `((typeof data !== \"object\" || data === null) && typeof data !== \"function\")` : `typeof data !== \"${this.domain}\"${this.requiresNaNCheck ? \" || Number.isNaN(data)\" : \"\"}`;\n\texpression = this.numberAllowsNaN ? \"number | NaN\" : this.domain;\n\tget nestableExpression() {\n\t\treturn this.numberAllowsNaN ? `(${this.expression})` : this.expression;\n\t}\n\tget defaultShortDescription() {\n\t\treturn domainDescriptions[this.domain];\n\t}\n\tinnerToJsonSchema(ctx) {\n\t\tif (this.domain === \"bigint\" || this.domain === \"symbol\") return ctx.fallback.domain({\n\t\t\tcode: \"domain\",\n\t\t\tbase: {},\n\t\t\tdomain: this.domain\n\t\t});\n\t\treturn { type: this.domain };\n\t}\n};\nconst Domain = {\n\timplementation: implementation$9,\n\tNode: DomainNode,\n\twriteBadAllowNanMessage: (actual) => `numberAllowsNaN may only be specified with domain \"number\" (was ${actual})`\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/roots/intersection.js\nconst implementation$8 = implementNode({\n\tkind: \"intersection\",\n\thasAssociatedError: true,\n\tnormalize: (rawSchema) => {\n\t\tif (isNode(rawSchema)) return rawSchema;\n\t\tconst { structure, ...schema } = rawSchema;\n\t\tconst hasRootStructureKey = !!structure;\n\t\tconst normalizedStructure = structure ?? {};\n\t\tconst normalized = flatMorph(schema, (k, v) => {\n\t\t\tif (isKeyOf(k, structureKeys)) {\n\t\t\t\tif (hasRootStructureKey) throwParseError(`Flattened structure key ${k} cannot be specified alongside a root 'structure' key.`);\n\t\t\t\tnormalizedStructure[k] = v;\n\t\t\t\treturn [];\n\t\t\t}\n\t\t\treturn [k, v];\n\t\t});\n\t\tif (hasArkKind(normalizedStructure, \"constraint\") || !isEmptyObject(normalizedStructure)) normalized.structure = normalizedStructure;\n\t\treturn normalized;\n\t},\n\tfinalizeInnerJson: ({ structure, ...rest }) => hasDomain(structure, \"object\") ? {\n\t\t...structure,\n\t\t...rest\n\t} : rest,\n\tkeys: {\n\t\tdomain: {\n\t\t\tchild: true,\n\t\t\tparse: (schema, ctx) => ctx.$.node(\"domain\", schema)\n\t\t},\n\t\tproto: {\n\t\t\tchild: true,\n\t\t\tparse: (schema, ctx) => ctx.$.node(\"proto\", schema)\n\t\t},\n\t\tstructure: {\n\t\t\tchild: true,\n\t\t\tparse: (schema, ctx) => ctx.$.node(\"structure\", schema),\n\t\t\tserialize: (node) => {\n\t\t\t\tif (!node.sequence?.minLength) return node.collapsibleJson;\n\t\t\t\tconst { sequence, ...structureJson } = node.collapsibleJson;\n\t\t\t\tconst { minVariadicLength, ...sequenceJson } = sequence;\n\t\t\t\tconst collapsibleSequenceJson = sequenceJson.variadic && Object.keys(sequenceJson).length === 1 ? sequenceJson.variadic : sequenceJson;\n\t\t\t\treturn {\n\t\t\t\t\t...structureJson,\n\t\t\t\t\tsequence: collapsibleSequenceJson\n\t\t\t\t};\n\t\t\t}\n\t\t},\n\t\tdivisor: {\n\t\t\tchild: true,\n\t\t\tparse: constraintKeyParser(\"divisor\")\n\t\t},\n\t\tmax: {\n\t\t\tchild: true,\n\t\t\tparse: constraintKeyParser(\"max\")\n\t\t},\n\t\tmin: {\n\t\t\tchild: true,\n\t\t\tparse: constraintKeyParser(\"min\")\n\t\t},\n\t\tmaxLength: {\n\t\t\tchild: true,\n\t\t\tparse: constraintKeyParser(\"maxLength\")\n\t\t},\n\t\tminLength: {\n\t\t\tchild: true,\n\t\t\tparse: constraintKeyParser(\"minLength\")\n\t\t},\n\t\texactLength: {\n\t\t\tchild: true,\n\t\t\tparse: constraintKeyParser(\"exactLength\")\n\t\t},\n\t\tbefore: {\n\t\t\tchild: true,\n\t\t\tparse: constraintKeyParser(\"before\")\n\t\t},\n\t\tafter: {\n\t\t\tchild: true,\n\t\t\tparse: constraintKeyParser(\"after\")\n\t\t},\n\t\tpattern: {\n\t\t\tchild: true,\n\t\t\tparse: constraintKeyParser(\"pattern\")\n\t\t},\n\t\tpredicate: {\n\t\t\tchild: true,\n\t\t\tparse: constraintKeyParser(\"predicate\")\n\t\t}\n\t},\n\treduce: (inner, $) => intersectIntersections({}, inner, {\n\t\t$,\n\t\tinvert: false,\n\t\tpipe: false\n\t}),\n\tdefaults: {\n\t\tdescription: (node) => {\n\t\t\tif (node.children.length === 0) return \"unknown\";\n\t\t\tif (node.structure) return node.structure.description;\n\t\t\tconst childDescriptions = [];\n\t\t\tif (node.basis && !node.prestructurals.some((r) => r.impl.obviatesBasisDescription)) childDescriptions.push(node.basis.description);\n\t\t\tif (node.prestructurals.length) {\n\t\t\t\tconst sortedRefinementDescriptions = node.prestructurals.slice().sort((l, r) => l.kind === \"min\" && r.kind === \"max\" ? -1 : 0).map((r) => r.description);\n\t\t\t\tchildDescriptions.push(...sortedRefinementDescriptions);\n\t\t\t}\n\t\t\tif (node.inner.predicate) childDescriptions.push(...node.inner.predicate.map((p) => p.description));\n\t\t\treturn childDescriptions.join(\" and \");\n\t\t},\n\t\texpected: (source) => ` ◦ ${source.errors.map((e) => e.expected).join(\"\\n ◦ \")}`,\n\t\tproblem: (ctx) => `(${ctx.actual}) must be...\\n${ctx.expected}`\n\t},\n\tintersections: {\n\t\tintersection: (l, r, ctx) => intersectIntersections(l.inner, r.inner, ctx),\n\t\t...defineRightwardIntersections(\"intersection\", (l, r, ctx) => {\n\t\t\tif (l.children.length === 0) return r;\n\t\t\tconst { domain, proto, ...lInnerConstraints } = l.inner;\n\t\t\tconst lBasis = proto ?? domain;\n\t\t\tconst basis = lBasis ? intersectOrPipeNodes(lBasis, r, ctx) : r;\n\t\t\treturn basis instanceof Disjoint ? basis : l?.basis?.equals(basis) ? l : l.$.node(\"intersection\", {\n\t\t\t\t...lInnerConstraints,\n\t\t\t\t[basis.kind]: basis\n\t\t\t}, { prereduced: true });\n\t\t})\n\t}\n});\nvar IntersectionNode = class extends BaseRoot {\n\tbasis = this.inner.domain ?? this.inner.proto ?? null;\n\tprestructurals = [];\n\trefinements = this.children.filter((node) => {\n\t\tif (!node.isRefinement()) return false;\n\t\tif (includes(prestructuralKinds, node.kind)) this.prestructurals.push(node);\n\t\treturn true;\n\t});\n\tstructure = this.inner.structure;\n\texpression = writeIntersectionExpression(this);\n\tget shallowMorphs() {\n\t\treturn this.inner.structure?.structuralMorph ? [this.inner.structure.structuralMorph] : [];\n\t}\n\tget defaultShortDescription() {\n\t\treturn this.basis?.defaultShortDescription ?? \"present\";\n\t}\n\tinnerToJsonSchema(ctx) {\n\t\treturn this.children.reduce((schema, child) => child.isBasis() ? child.toJsonSchemaRecurse(ctx) : child.reduceJsonSchema(schema, ctx), {});\n\t}\n\ttraverseAllows = (data, ctx) => this.children.every((child) => child.traverseAllows(data, ctx));\n\ttraverseApply = (data, ctx) => {\n\t\tconst errorCount = ctx.currentErrorCount;\n\t\tif (this.basis) {\n\t\t\tthis.basis.traverseApply(data, ctx);\n\t\t\tif (ctx.currentErrorCount > errorCount) return;\n\t\t}\n\t\tif (this.prestructurals.length) {\n\t\t\tfor (let i = 0; i < this.prestructurals.length - 1; i++) {\n\t\t\t\tthis.prestructurals[i].traverseApply(data, ctx);\n\t\t\t\tif (ctx.failFast && ctx.currentErrorCount > errorCount) return;\n\t\t\t}\n\t\t\tthis.prestructurals[this.prestructurals.length - 1].traverseApply(data, ctx);\n\t\t\tif (ctx.currentErrorCount > errorCount) return;\n\t\t}\n\t\tif (this.structure) {\n\t\t\tthis.structure.traverseApply(data, ctx);\n\t\t\tif (ctx.currentErrorCount > errorCount) return;\n\t\t}\n\t\tif (this.inner.predicate) {\n\t\t\tfor (let i = 0; i < this.inner.predicate.length - 1; i++) {\n\t\t\t\tthis.inner.predicate[i].traverseApply(data, ctx);\n\t\t\t\tif (ctx.failFast && ctx.currentErrorCount > errorCount) return;\n\t\t\t}\n\t\t\tthis.inner.predicate[this.inner.predicate.length - 1].traverseApply(data, ctx);\n\t\t}\n\t};\n\tcompile(js) {\n\t\tif (js.traversalKind === \"Allows\") {\n\t\t\tfor (const child of this.children) js.check(child);\n\t\t\tjs.return(true);\n\t\t\treturn;\n\t\t}\n\t\tjs.initializeErrorCount();\n\t\tif (this.basis) {\n\t\t\tjs.check(this.basis);\n\t\t\tif (this.children.length > 1) js.returnIfFail();\n\t\t}\n\t\tif (this.prestructurals.length) {\n\t\t\tfor (let i = 0; i < this.prestructurals.length - 1; i++) {\n\t\t\t\tjs.check(this.prestructurals[i]);\n\t\t\t\tjs.returnIfFailFast();\n\t\t\t}\n\t\t\tjs.check(this.prestructurals[this.prestructurals.length - 1]);\n\t\t\tif (this.structure || this.inner.predicate) js.returnIfFail();\n\t\t}\n\t\tif (this.structure) {\n\t\t\tjs.check(this.structure);\n\t\t\tif (this.inner.predicate) js.returnIfFail();\n\t\t}\n\t\tif (this.inner.predicate) {\n\t\t\tfor (let i = 0; i < this.inner.predicate.length - 1; i++) {\n\t\t\t\tjs.check(this.inner.predicate[i]);\n\t\t\t\tjs.returnIfFail();\n\t\t\t}\n\t\t\tjs.check(this.inner.predicate[this.inner.predicate.length - 1]);\n\t\t}\n\t}\n};\nconst Intersection = {\n\timplementation: implementation$8,\n\tNode: IntersectionNode\n};\nconst writeIntersectionExpression = (node) => {\n\tif (node.structure?.expression) return node.structure.expression;\n\tconst basisExpression = node.basis && !node.prestructurals.some((n) => n.impl.obviatesBasisExpression) ? node.basis.nestableExpression : \"\";\n\tconst refinementsExpression = node.prestructurals.map((n) => n.expression).join(\" & \");\n\tconst fullExpression = `${basisExpression}${basisExpression && refinementsExpression ? \" \" : \"\"}${refinementsExpression}`;\n\tif (fullExpression === \"Array == 0\") return \"[]\";\n\treturn fullExpression || \"unknown\";\n};\nconst intersectIntersections = (l, r, ctx) => {\n\tconst baseInner = {};\n\tconst lBasis = l.proto ?? l.domain;\n\tconst rBasis = r.proto ?? r.domain;\n\tconst basisResult = lBasis ? rBasis ? intersectOrPipeNodes(lBasis, rBasis, ctx) : lBasis : rBasis;\n\tif (basisResult instanceof Disjoint) return basisResult;\n\tif (basisResult) baseInner[basisResult.kind] = basisResult;\n\treturn intersectConstraints({\n\t\tkind: \"intersection\",\n\t\tbaseInner,\n\t\tl: flattenConstraints(l),\n\t\tr: flattenConstraints(r),\n\t\troots: [],\n\t\tctx\n\t});\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/roots/morph.js\nconst implementation$7 = implementNode({\n\tkind: \"morph\",\n\thasAssociatedError: false,\n\tkeys: {\n\t\tin: {\n\t\t\tchild: true,\n\t\t\tparse: (schema, ctx) => ctx.$.parseSchema(schema)\n\t\t},\n\t\tmorphs: {\n\t\t\tparse: liftArray,\n\t\t\tserialize: (morphs) => morphs.map((m) => hasArkKind(m, \"root\") ? m.json : registeredReference(m))\n\t\t},\n\t\tdeclaredIn: {\n\t\t\tchild: false,\n\t\t\tserialize: (node) => node.json\n\t\t},\n\t\tdeclaredOut: {\n\t\t\tchild: false,\n\t\t\tserialize: (node) => node.json\n\t\t}\n\t},\n\tnormalize: (schema) => schema,\n\tdefaults: { description: (node) => `a morph from ${node.rawIn.description} to ${node.rawOut?.description ?? \"unknown\"}` },\n\tintersections: {\n\t\tmorph: (l, r, ctx) => {\n\t\t\tif (!l.hasEqualMorphs(r)) return throwParseError(writeMorphIntersectionMessage(l.expression, r.expression));\n\t\t\tconst inTersection = intersectOrPipeNodes(l.rawIn, r.rawIn, ctx);\n\t\t\tif (inTersection instanceof Disjoint) return inTersection;\n\t\t\tconst baseInner = { morphs: l.morphs };\n\t\t\tif (l.declaredIn || r.declaredIn) {\n\t\t\t\tconst declaredIn = intersectOrPipeNodes(l.rawIn, r.rawIn, ctx);\n\t\t\t\tif (declaredIn instanceof Disjoint) return declaredIn.throw();\n\t\t\t\telse baseInner.declaredIn = declaredIn;\n\t\t\t}\n\t\t\tif (l.declaredOut || r.declaredOut) {\n\t\t\t\tconst declaredOut = intersectOrPipeNodes(l.rawOut, r.rawOut, ctx);\n\t\t\t\tif (declaredOut instanceof Disjoint) return declaredOut.throw();\n\t\t\t\telse baseInner.declaredOut = declaredOut;\n\t\t\t}\n\t\t\treturn inTersection.distribute((inBranch) => ctx.$.node(\"morph\", {\n\t\t\t\t...baseInner,\n\t\t\t\tin: inBranch\n\t\t\t}), ctx.$.parseSchema);\n\t\t},\n\t\t...defineRightwardIntersections(\"morph\", (l, r, ctx) => {\n\t\t\tconst inTersection = l.inner.in ? intersectOrPipeNodes(l.inner.in, r, ctx) : r;\n\t\t\treturn inTersection instanceof Disjoint ? inTersection : inTersection.equals(l.inner.in) ? l : ctx.$.node(\"morph\", {\n\t\t\t\t...l.inner,\n\t\t\t\tin: inTersection\n\t\t\t});\n\t\t})\n\t}\n});\nvar MorphNode = class extends BaseRoot {\n\tserializedMorphs = this.morphs.map(registeredReference);\n\tcompiledMorphs = `[${this.serializedMorphs}]`;\n\tlastMorph = this.inner.morphs[this.inner.morphs.length - 1];\n\tlastMorphIfNode = hasArkKind(this.lastMorph, \"root\") ? this.lastMorph : void 0;\n\tintrospectableIn = this.inner.in;\n\tintrospectableOut = this.lastMorphIfNode ? Object.assign(this.referencesById, this.lastMorphIfNode.referencesById) && this.lastMorphIfNode.rawOut : void 0;\n\tget shallowMorphs() {\n\t\treturn Array.isArray(this.inner.in?.shallowMorphs) ? [...this.inner.in.shallowMorphs, ...this.morphs] : this.morphs;\n\t}\n\tget rawIn() {\n\t\treturn this.declaredIn ?? this.inner.in?.rawIn ?? $ark.intrinsic.unknown.internal;\n\t}\n\tget rawOut() {\n\t\treturn this.declaredOut ?? this.introspectableOut ?? $ark.intrinsic.unknown.internal;\n\t}\n\tdeclareIn(declaredIn) {\n\t\treturn this.$.node(\"morph\", {\n\t\t\t...this.inner,\n\t\t\tdeclaredIn\n\t\t});\n\t}\n\tdeclareOut(declaredOut) {\n\t\treturn this.$.node(\"morph\", {\n\t\t\t...this.inner,\n\t\t\tdeclaredOut\n\t\t});\n\t}\n\texpression = `(In: ${this.rawIn.expression}) => ${this.lastMorphIfNode ? \"To\" : \"Out\"}<${this.rawOut.expression}>`;\n\tget defaultShortDescription() {\n\t\treturn this.rawIn.meta.description ?? this.rawIn.defaultShortDescription;\n\t}\n\tinnerToJsonSchema(ctx) {\n\t\treturn ctx.fallback.morph({\n\t\t\tcode: \"morph\",\n\t\t\tbase: this.rawIn.toJsonSchemaRecurse(ctx),\n\t\t\tout: this.introspectableOut?.toJsonSchemaRecurse(ctx) ?? null\n\t\t});\n\t}\n\tcompile(js) {\n\t\tif (js.traversalKind === \"Allows\") {\n\t\t\tif (!this.introspectableIn) return;\n\t\t\tjs.return(js.invoke(this.introspectableIn));\n\t\t\treturn;\n\t\t}\n\t\tif (this.introspectableIn) js.line(js.invoke(this.introspectableIn));\n\t\tjs.line(`ctx.queueMorphs(${this.compiledMorphs})`);\n\t}\n\ttraverseAllows = (data, ctx) => !this.introspectableIn || this.introspectableIn.traverseAllows(data, ctx);\n\ttraverseApply = (data, ctx) => {\n\t\tif (this.introspectableIn) this.introspectableIn.traverseApply(data, ctx);\n\t\tctx.queueMorphs(this.morphs);\n\t};\n\t/** Check if the morphs of r are equal to those of this node */\n\thasEqualMorphs(r) {\n\t\treturn arrayEquals(this.morphs, r.morphs, { isEqual: (lMorph, rMorph) => lMorph === rMorph || hasArkKind(lMorph, \"root\") && hasArkKind(rMorph, \"root\") && lMorph.equals(rMorph) });\n\t}\n};\nconst Morph = {\n\timplementation: implementation$7,\n\tNode: MorphNode\n};\nconst writeMorphIntersectionMessage = (lDescription, rDescription) => `The intersection of distinct morphs at a single path is indeterminate:\nLeft: ${lDescription}\nRight: ${rDescription}`;\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/roots/proto.js\nconst implementation$6 = implementNode({\n\tkind: \"proto\",\n\thasAssociatedError: true,\n\tcollapsibleKey: \"proto\",\n\tkeys: {\n\t\tproto: { serialize: (ctor) => getBuiltinNameOfConstructor(ctor) ?? defaultValueSerializer(ctor) },\n\t\tdateAllowsInvalid: {}\n\t},\n\tnormalize: (schema) => {\n\t\tconst normalized = typeof schema === \"string\" ? { proto: builtinConstructors[schema] } : typeof schema === \"function\" ? isNode(schema) ? schema : { proto: schema } : typeof schema.proto === \"string\" ? {\n\t\t\t...schema,\n\t\t\tproto: builtinConstructors[schema.proto]\n\t\t} : schema;\n\t\tif (typeof normalized.proto !== \"function\") throwParseError(Proto.writeInvalidSchemaMessage(normalized.proto));\n\t\tif (hasKey(normalized, \"dateAllowsInvalid\") && normalized.proto !== Date) throwParseError(Proto.writeBadInvalidDateMessage(normalized.proto));\n\t\treturn normalized;\n\t},\n\tapplyConfig: (schema, config) => {\n\t\tif (schema.dateAllowsInvalid === void 0 && schema.proto === Date && config.dateAllowsInvalid) return {\n\t\t\t...schema,\n\t\t\tdateAllowsInvalid: true\n\t\t};\n\t\treturn schema;\n\t},\n\tdefaults: {\n\t\tdescription: (node) => node.builtinName ? objectKindDescriptions[node.builtinName] : `an instance of ${node.proto.name}`,\n\t\tactual: (data) => data instanceof Date && data.toString() === \"Invalid Date\" ? \"an invalid Date\" : objectKindOrDomainOf(data)\n\t},\n\tintersections: {\n\t\tproto: (l, r) => l.proto === Date && r.proto === Date ? l.dateAllowsInvalid ? r : l : constructorExtends(l.proto, r.proto) ? l : constructorExtends(r.proto, l.proto) ? r : Disjoint.init(\"proto\", l, r),\n\t\tdomain: (proto, domain) => domain.domain === \"object\" ? proto : Disjoint.init(\"domain\", $ark.intrinsic.object.internal, domain)\n\t}\n});\nvar ProtoNode = class extends InternalBasis {\n\tbuiltinName = getBuiltinNameOfConstructor(this.proto);\n\tserializedConstructor = this.json.proto;\n\trequiresInvalidDateCheck = this.proto === Date && !this.dateAllowsInvalid;\n\ttraverseAllows = this.requiresInvalidDateCheck ? (data) => data instanceof Date && data.toString() !== \"Invalid Date\" : (data) => data instanceof this.proto;\n\tcompiledCondition = `data instanceof ${this.serializedConstructor}${this.requiresInvalidDateCheck ? ` && data.toString() !== \"Invalid Date\"` : \"\"}`;\n\tcompiledNegation = `!(${this.compiledCondition})`;\n\tinnerToJsonSchema(ctx) {\n\t\tswitch (this.builtinName) {\n\t\t\tcase \"Array\": return { type: \"array\" };\n\t\t\tcase \"Date\": return ctx.fallback.date?.({\n\t\t\t\tcode: \"date\",\n\t\t\t\tbase: {}\n\t\t\t}) ?? ctx.fallback.proto({\n\t\t\t\tcode: \"proto\",\n\t\t\t\tbase: {},\n\t\t\t\tproto: this.proto\n\t\t\t});\n\t\t\tdefault: return ctx.fallback.proto({\n\t\t\t\tcode: \"proto\",\n\t\t\t\tbase: {},\n\t\t\t\tproto: this.proto\n\t\t\t});\n\t\t}\n\t}\n\texpression = this.dateAllowsInvalid ? \"Date | InvalidDate\" : this.proto.name;\n\tget nestableExpression() {\n\t\treturn this.dateAllowsInvalid ? `(${this.expression})` : this.expression;\n\t}\n\tdomain = \"object\";\n\tget defaultShortDescription() {\n\t\treturn this.description;\n\t}\n};\nconst Proto = {\n\timplementation: implementation$6,\n\tNode: ProtoNode,\n\twriteBadInvalidDateMessage: (actual) => `dateAllowsInvalid may only be specified with constructor Date (was ${actual.name})`,\n\twriteInvalidSchemaMessage: (actual) => `instanceOf operand must be a function (was ${domainOf(actual)})`\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/roots/union.js\nconst implementation$5 = implementNode({\n\tkind: \"union\",\n\thasAssociatedError: true,\n\tcollapsibleKey: \"branches\",\n\tkeys: {\n\t\tordered: {},\n\t\tbranches: {\n\t\t\tchild: true,\n\t\t\tparse: (schema, ctx) => {\n\t\t\t\tconst branches = [];\n\t\t\t\tfor (const branchSchema of schema) {\n\t\t\t\t\tconst branchNodes = hasArkKind(branchSchema, \"root\") ? branchSchema.branches : ctx.$.parseSchema(branchSchema).branches;\n\t\t\t\t\tfor (const node of branchNodes) if (node.hasKind(\"morph\")) {\n\t\t\t\t\t\tconst matchingMorphIndex = branches.findIndex((matching) => matching.hasKind(\"morph\") && matching.hasEqualMorphs(node));\n\t\t\t\t\t\tif (matchingMorphIndex === -1) branches.push(node);\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tconst matchingMorph = branches[matchingMorphIndex];\n\t\t\t\t\t\t\tbranches[matchingMorphIndex] = ctx.$.node(\"morph\", {\n\t\t\t\t\t\t\t\t...matchingMorph.inner,\n\t\t\t\t\t\t\t\tin: matchingMorph.rawIn.rawOr(node.rawIn)\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t} else branches.push(node);\n\t\t\t\t}\n\t\t\t\tif (!ctx.def.ordered) branches.sort((l, r) => l.hash < r.hash ? -1 : 1);\n\t\t\t\treturn branches;\n\t\t\t}\n\t\t}\n\t},\n\tnormalize: (schema) => isArray(schema) ? { branches: schema } : schema,\n\treduce: (inner, $) => {\n\t\tconst reducedBranches = reduceBranches(inner);\n\t\tif (reducedBranches.length === 1) return reducedBranches[0];\n\t\tif (reducedBranches.length === inner.branches.length) return;\n\t\treturn $.node(\"union\", {\n\t\t\t...inner,\n\t\t\tbranches: reducedBranches\n\t\t}, { prereduced: true });\n\t},\n\tdefaults: {\n\t\tdescription: (node) => node.distribute((branch) => branch.description, describeBranches),\n\t\texpected: (ctx) => {\n\t\t\tconst byPath = groupBy(ctx.errors, \"propString\");\n\t\t\tconst pathDescriptions = Object.entries(byPath).map(([path, errors]) => {\n\t\t\t\tconst branchesAtPath = [];\n\t\t\t\tfor (const errorAtPath of errors) appendUnique(branchesAtPath, errorAtPath.expected);\n\t\t\t\tconst expected = describeBranches(branchesAtPath);\n\t\t\t\tconst actual = errors.every((e) => e.actual === errors[0].actual) ? errors[0].actual : printable(errors[0].data);\n\t\t\t\treturn `${path && `${path} `}must be ${expected}${actual && ` (was ${actual})`}`;\n\t\t\t});\n\t\t\treturn describeBranches(pathDescriptions);\n\t\t},\n\t\tproblem: (ctx) => ctx.expected,\n\t\tmessage: (ctx) => {\n\t\t\tif (ctx.problem[0] === \"[\") return `value at ${ctx.problem}`;\n\t\t\treturn ctx.problem;\n\t\t}\n\t},\n\tintersections: {\n\t\tunion: (l, r, ctx) => {\n\t\t\tif (l.isNever !== r.isNever) return Disjoint.init(\"presence\", l, r);\n\t\t\tlet resultBranches;\n\t\t\tif (l.ordered) {\n\t\t\t\tif (r.ordered) throwParseError(writeOrderedIntersectionMessage(l.expression, r.expression));\n\t\t\t\tresultBranches = intersectBranches(r.branches, l.branches, ctx);\n\t\t\t\tif (resultBranches instanceof Disjoint) resultBranches.invert();\n\t\t\t} else resultBranches = intersectBranches(l.branches, r.branches, ctx);\n\t\t\tif (resultBranches instanceof Disjoint) return resultBranches;\n\t\t\treturn ctx.$.parseSchema(l.ordered || r.ordered ? {\n\t\t\t\tbranches: resultBranches,\n\t\t\t\tordered: true\n\t\t\t} : { branches: resultBranches });\n\t\t},\n\t\t...defineRightwardIntersections(\"union\", (l, r, ctx) => {\n\t\t\tconst branches = intersectBranches(l.branches, [r], ctx);\n\t\t\tif (branches instanceof Disjoint) return branches;\n\t\t\tif (branches.length === 1) return branches[0];\n\t\t\treturn ctx.$.parseSchema(l.ordered ? {\n\t\t\t\tbranches,\n\t\t\t\tordered: true\n\t\t\t} : { branches });\n\t\t})\n\t}\n});\nvar UnionNode = class extends BaseRoot {\n\tisBoolean = this.branches.length === 2 && this.branches[0].hasUnit(false) && this.branches[1].hasUnit(true);\n\tget branchGroups() {\n\t\tconst branchGroups = [];\n\t\tlet firstBooleanIndex = -1;\n\t\tfor (const branch of this.branches) {\n\t\t\tif (branch.hasKind(\"unit\") && branch.domain === \"boolean\") {\n\t\t\t\tif (firstBooleanIndex === -1) {\n\t\t\t\t\tfirstBooleanIndex = branchGroups.length;\n\t\t\t\t\tbranchGroups.push(branch);\n\t\t\t\t} else branchGroups[firstBooleanIndex] = $ark.intrinsic.boolean;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tbranchGroups.push(branch);\n\t\t}\n\t\treturn branchGroups;\n\t}\n\tunitBranches = this.branches.filter((n) => n.rawIn.hasKind(\"unit\"));\n\tdiscriminant = this.discriminate();\n\tdiscriminantJson = this.discriminant ? discriminantToJson(this.discriminant) : null;\n\texpression = this.distribute((n) => n.nestableExpression, expressBranches);\n\tcreateBranchedOptimisticRootApply() {\n\t\treturn (data, onFail) => {\n\t\t\tconst optimisticResult = this.traverseOptimistic(data);\n\t\t\tif (optimisticResult !== unset) return optimisticResult;\n\t\t\tconst ctx = new Traversal(data, this.$.resolvedConfig);\n\t\t\tthis.traverseApply(data, ctx);\n\t\t\treturn ctx.finalize(onFail);\n\t\t};\n\t}\n\tget shallowMorphs() {\n\t\treturn this.branches.reduce((morphs, branch) => appendUnique(morphs, branch.shallowMorphs), []);\n\t}\n\tget defaultShortDescription() {\n\t\treturn this.distribute((branch) => branch.defaultShortDescription, describeBranches);\n\t}\n\tinnerToJsonSchema(ctx) {\n\t\tif (this.branchGroups.length === 1 && this.branchGroups[0].equals($ark.intrinsic.boolean)) return { type: \"boolean\" };\n\t\tconst jsonSchemaBranches = this.branchGroups.map((group) => group.toJsonSchemaRecurse(ctx));\n\t\tif (jsonSchemaBranches.every((branch) => Object.keys(branch).length === 1 && hasKey(branch, \"const\"))) return { enum: jsonSchemaBranches.map((branch) => branch.const) };\n\t\treturn { anyOf: jsonSchemaBranches };\n\t}\n\ttraverseAllows = (data, ctx) => this.branches.some((b) => b.traverseAllows(data, ctx));\n\ttraverseApply = (data, ctx) => {\n\t\tconst errors = [];\n\t\tfor (let i = 0; i < this.branches.length; i++) {\n\t\t\tctx.pushBranch();\n\t\t\tthis.branches[i].traverseApply(data, ctx);\n\t\t\tif (!ctx.hasError()) {\n\t\t\t\tif (this.branches[i].includesTransform) return ctx.queuedMorphs.push(...ctx.popBranch().queuedMorphs);\n\t\t\t\treturn ctx.popBranch();\n\t\t\t}\n\t\t\terrors.push(ctx.popBranch().error);\n\t\t}\n\t\tctx.errorFromNodeContext({\n\t\t\tcode: \"union\",\n\t\t\terrors,\n\t\t\tmeta: this.meta\n\t\t});\n\t};\n\ttraverseOptimistic = (data) => {\n\t\tfor (let i = 0; i < this.branches.length; i++) {\n\t\t\tconst branch = this.branches[i];\n\t\t\tif (branch.traverseAllows(data)) {\n\t\t\t\tif (branch.contextFreeMorph) return branch.contextFreeMorph(data);\n\t\t\t\treturn data;\n\t\t\t}\n\t\t}\n\t\treturn unset;\n\t};\n\tcompile(js) {\n\t\tif (!this.discriminant || this.unitBranches.length === this.branches.length && this.branches.length === 2) return this.compileIndiscriminable(js);\n\t\tlet condition = this.discriminant.optionallyChainedPropString;\n\t\tif (this.discriminant.kind === \"domain\") condition = `typeof ${condition} === \"object\" ? ${condition} === null ? \"null\" : \"object\" : typeof ${condition} === \"function\" ? \"object\" : typeof ${condition}`;\n\t\tconst cases = this.discriminant.cases;\n\t\tconst caseKeys = Object.keys(cases);\n\t\tconst { optimistic } = js;\n\t\tjs.optimistic = false;\n\t\tjs.block(`switch(${condition})`, () => {\n\t\t\tfor (const k in cases) {\n\t\t\t\tconst v = cases[k];\n\t\t\t\tconst caseCondition = k === \"default\" ? k : `case ${k}`;\n\t\t\t\tlet caseResult;\n\t\t\t\tif (v === true) caseResult = optimistic ? \"data\" : \"true\";\n\t\t\t\telse if (optimistic) if (v.rootApplyStrategy === \"branchedOptimistic\") caseResult = js.invoke(v, { kind: \"Optimistic\" });\n\t\t\t\telse if (v.contextFreeMorph) caseResult = `${js.invoke(v)} ? ${registeredReference(v.contextFreeMorph)}(data) : \"${unset}\"`;\n\t\t\t\telse caseResult = `${js.invoke(v)} ? data : \"${unset}\"`;\n\t\t\t\telse caseResult = js.invoke(v);\n\t\t\t\tjs.line(`${caseCondition}: return ${caseResult}`);\n\t\t\t}\n\t\t\treturn js;\n\t\t});\n\t\tif (js.traversalKind === \"Allows\") {\n\t\t\tjs.return(optimistic ? `\"${unset}\"` : false);\n\t\t\treturn;\n\t\t}\n\t\tconst expected = describeBranches(this.discriminant.kind === \"domain\" ? caseKeys.map((k) => {\n\t\t\tconst jsTypeOf = k.slice(1, -1);\n\t\t\treturn jsTypeOf === \"function\" ? domainDescriptions.object : domainDescriptions[jsTypeOf];\n\t\t}) : caseKeys);\n\t\tconst serializedPathSegments = this.discriminant.path.map((k) => typeof k === \"symbol\" ? registeredReference(k) : JSON.stringify(k));\n\t\tconst serializedExpected = JSON.stringify(expected);\n\t\tconst serializedActual = this.discriminant.kind === \"domain\" ? `${serializedTypeOfDescriptions}[${condition}]` : `${serializedPrintable}(${condition})`;\n\t\tjs.line(`ctx.errorFromNodeContext({\n\tcode: \"predicate\",\n\texpected: ${serializedExpected},\n\tactual: ${serializedActual},\n\trelativePath: [${serializedPathSegments}],\n\tmeta: ${this.compiledMeta}\n})`);\n\t}\n\tcompileIndiscriminable(js) {\n\t\tif (js.traversalKind === \"Apply\") {\n\t\t\tjs.const(\"errors\", \"[]\");\n\t\t\tfor (const branch of this.branches) js.line(\"ctx.pushBranch()\").line(js.invoke(branch)).if(\"!ctx.hasError()\", () => js.return(branch.includesTransform ? \"ctx.queuedMorphs.push(...ctx.popBranch().queuedMorphs)\" : \"ctx.popBranch()\")).line(\"errors.push(ctx.popBranch().error)\");\n\t\t\tjs.line(`ctx.errorFromNodeContext({ code: \"union\", errors, meta: ${this.compiledMeta} })`);\n\t\t} else {\n\t\t\tconst { optimistic } = js;\n\t\t\tjs.optimistic = false;\n\t\t\tfor (const branch of this.branches) js.if(`${js.invoke(branch)}`, () => js.return(optimistic ? branch.contextFreeMorph ? `${registeredReference(branch.contextFreeMorph)}(data)` : \"data\" : true));\n\t\t\tjs.return(optimistic ? `\"${unset}\"` : false);\n\t\t}\n\t}\n\tget nestableExpression() {\n\t\treturn this.isBoolean ? \"boolean\" : `(${this.expression})`;\n\t}\n\tdiscriminate() {\n\t\tif (this.branches.length < 2) return null;\n\t\tif (this.unitBranches.length === this.branches.length) return {\n\t\t\tkind: \"unit\",\n\t\t\tpath: [],\n\t\t\toptionallyChainedPropString: \"data\",\n\t\t\tcases: flatMorph(this.unitBranches, (i, n) => [`${n.rawIn.serializedValue}`, n.hasKind(\"morph\") ? n : true])\n\t\t};\n\t\tconst candidates = [];\n\t\tfor (let lIndex = 0; lIndex < this.branches.length - 1; lIndex++) {\n\t\t\tconst l = this.branches[lIndex];\n\t\t\tfor (let rIndex = lIndex + 1; rIndex < this.branches.length; rIndex++) {\n\t\t\t\tconst r = this.branches[rIndex];\n\t\t\t\tconst result = intersectNodesRoot(l.rawIn, r.rawIn, l.$);\n\t\t\t\tif (!(result instanceof Disjoint)) continue;\n\t\t\t\tfor (const entry of result) {\n\t\t\t\t\tif (!entry.kind || entry.optional) continue;\n\t\t\t\t\tlet lSerialized;\n\t\t\t\t\tlet rSerialized;\n\t\t\t\t\tif (entry.kind === \"domain\") {\n\t\t\t\t\t\tconst lValue = entry.l;\n\t\t\t\t\t\tconst rValue = entry.r;\n\t\t\t\t\t\tlSerialized = `\"${typeof lValue === \"string\" ? lValue : lValue.domain}\"`;\n\t\t\t\t\t\trSerialized = `\"${typeof rValue === \"string\" ? rValue : rValue.domain}\"`;\n\t\t\t\t\t} else if (entry.kind === \"unit\") {\n\t\t\t\t\t\tlSerialized = entry.l.serializedValue;\n\t\t\t\t\t\trSerialized = entry.r.serializedValue;\n\t\t\t\t\t} else continue;\n\t\t\t\t\tconst matching = candidates.find((d) => arrayEquals(d.path, entry.path) && d.kind === entry.kind);\n\t\t\t\t\tif (!matching) candidates.push({\n\t\t\t\t\t\tkind: entry.kind,\n\t\t\t\t\t\tcases: {\n\t\t\t\t\t\t\t[lSerialized]: {\n\t\t\t\t\t\t\t\tbranchIndices: [lIndex],\n\t\t\t\t\t\t\t\tcondition: entry.l\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t[rSerialized]: {\n\t\t\t\t\t\t\t\tbranchIndices: [rIndex],\n\t\t\t\t\t\t\t\tcondition: entry.r\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t},\n\t\t\t\t\t\tpath: entry.path\n\t\t\t\t\t});\n\t\t\t\t\telse {\n\t\t\t\t\t\tif (matching.cases[lSerialized]) matching.cases[lSerialized].branchIndices = appendUnique(matching.cases[lSerialized].branchIndices, lIndex);\n\t\t\t\t\t\telse matching.cases[lSerialized] ??= {\n\t\t\t\t\t\t\tbranchIndices: [lIndex],\n\t\t\t\t\t\t\tcondition: entry.l\n\t\t\t\t\t\t};\n\t\t\t\t\t\tif (matching.cases[rSerialized]) matching.cases[rSerialized].branchIndices = appendUnique(matching.cases[rSerialized].branchIndices, rIndex);\n\t\t\t\t\t\telse matching.cases[rSerialized] ??= {\n\t\t\t\t\t\t\tbranchIndices: [rIndex],\n\t\t\t\t\t\t\tcondition: entry.r\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tconst viableCandidates = this.ordered ? viableOrderedCandidates(candidates, this.branches) : candidates;\n\t\tif (!viableCandidates.length) return null;\n\t\tconst ctx = createCaseResolutionContext(viableCandidates, this);\n\t\tconst cases = {};\n\t\tfor (const k in ctx.best.cases) {\n\t\t\tconst resolution = resolveCase(ctx, k);\n\t\t\tif (resolution === null) {\n\t\t\t\tcases[k] = true;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tif (resolution.length === this.branches.length) return null;\n\t\t\tif (this.ordered) resolution.sort((l, r) => l.originalIndex - r.originalIndex);\n\t\t\tconst branches = resolution.map((entry) => entry.branch);\n\t\t\tconst caseNode = branches.length === 1 ? branches[0] : this.$.node(\"union\", this.ordered ? {\n\t\t\t\tbranches,\n\t\t\t\tordered: true\n\t\t\t} : branches);\n\t\t\tObject.assign(this.referencesById, caseNode.referencesById);\n\t\t\tcases[k] = caseNode;\n\t\t}\n\t\tif (ctx.defaultEntries.length) {\n\t\t\tconst branches = ctx.defaultEntries.map((entry) => entry.branch);\n\t\t\tcases.default = this.$.node(\"union\", this.ordered ? {\n\t\t\t\tbranches,\n\t\t\t\tordered: true\n\t\t\t} : branches, { prereduced: true });\n\t\t\tObject.assign(this.referencesById, cases.default.referencesById);\n\t\t}\n\t\treturn Object.assign(ctx.location, { cases });\n\t}\n};\nconst createCaseResolutionContext = (viableCandidates, node) => {\n\tconst best = viableCandidates.sort((l, r) => l.path.length === r.path.length ? Object.keys(r.cases).length - Object.keys(l.cases).length : l.path.length - r.path.length)[0];\n\treturn {\n\t\tbest,\n\t\tlocation: {\n\t\t\tkind: best.kind,\n\t\t\tpath: best.path,\n\t\t\toptionallyChainedPropString: optionallyChainPropString(best.path)\n\t\t},\n\t\tdefaultEntries: node.branches.map((branch, originalIndex) => ({\n\t\t\toriginalIndex,\n\t\t\tbranch\n\t\t})),\n\t\tnode\n\t};\n};\nconst resolveCase = (ctx, key) => {\n\tconst caseCtx = ctx.best.cases[key];\n\tconst discriminantNode = discriminantCaseToNode(caseCtx.condition, ctx.location.path, ctx.node.$);\n\tlet resolvedEntries = [];\n\tconst nextDefaults = [];\n\tfor (let i = 0; i < ctx.defaultEntries.length; i++) {\n\t\tconst entry = ctx.defaultEntries[i];\n\t\tif (caseCtx.branchIndices.includes(entry.originalIndex)) {\n\t\t\tconst pruned = pruneDiscriminant(ctx.node.branches[entry.originalIndex], ctx.location);\n\t\t\tif (pruned === null) resolvedEntries = null;\n\t\t\telse resolvedEntries?.push({\n\t\t\t\toriginalIndex: entry.originalIndex,\n\t\t\t\tbranch: pruned\n\t\t\t});\n\t\t} else if (entry.branch.hasKind(\"alias\") && discriminantNode.hasKind(\"domain\") && discriminantNode.domain === \"object\") resolvedEntries?.push(entry);\n\t\telse {\n\t\t\tif (entry.branch.rawIn.overlaps(discriminantNode)) {\n\t\t\t\tconst overlapping = pruneDiscriminant(entry.branch, ctx.location);\n\t\t\t\tresolvedEntries?.push({\n\t\t\t\t\toriginalIndex: entry.originalIndex,\n\t\t\t\t\tbranch: overlapping\n\t\t\t\t});\n\t\t\t}\n\t\t\tnextDefaults.push(entry);\n\t\t}\n\t}\n\tctx.defaultEntries = nextDefaults;\n\treturn resolvedEntries;\n};\nconst viableOrderedCandidates = (candidates, originalBranches) => {\n\treturn candidates.filter((candidate) => {\n\t\tconst caseGroups = Object.values(candidate.cases).map((caseCtx) => caseCtx.branchIndices);\n\t\tfor (let i = 0; i < caseGroups.length - 1; i++) {\n\t\t\tconst currentGroup = caseGroups[i];\n\t\t\tfor (let j = i + 1; j < caseGroups.length; j++) {\n\t\t\t\tconst nextGroup = caseGroups[j];\n\t\t\t\tfor (const currentIndex of currentGroup) for (const nextIndex of nextGroup) if (currentIndex > nextIndex) {\n\t\t\t\t\tif (originalBranches[currentIndex].overlaps(originalBranches[nextIndex])) return false;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t});\n};\nconst discriminantCaseToNode = (caseDiscriminant, path, $) => {\n\tlet node = caseDiscriminant === \"undefined\" ? $.node(\"unit\", { unit: void 0 }) : caseDiscriminant === \"null\" ? $.node(\"unit\", { unit: null }) : caseDiscriminant === \"boolean\" ? $.units([true, false]) : caseDiscriminant;\n\tfor (let i = path.length - 1; i >= 0; i--) {\n\t\tconst key = path[i];\n\t\tnode = $.node(\"intersection\", typeof key === \"number\" ? {\n\t\t\tproto: \"Array\",\n\t\t\tsequence: [...range(key).map((_) => ({})), node]\n\t\t} : {\n\t\t\tdomain: \"object\",\n\t\t\trequired: [{\n\t\t\t\tkey,\n\t\t\t\tvalue: node\n\t\t\t}]\n\t\t});\n\t}\n\treturn node;\n};\nconst optionallyChainPropString = (path) => path.reduce((acc, k) => acc + compileLiteralPropAccess(k, true), \"data\");\nconst serializedTypeOfDescriptions = registeredReference(jsTypeOfDescriptions);\nconst serializedPrintable = registeredReference(printable);\nconst Union = {\n\timplementation: implementation$5,\n\tNode: UnionNode\n};\nconst discriminantToJson = (discriminant) => ({\n\tkind: discriminant.kind,\n\tpath: discriminant.path.map((k) => typeof k === \"string\" ? k : compileSerializedValue(k)),\n\tcases: flatMorph(discriminant.cases, (k, node) => [k, node === true ? node : node.hasKind(\"union\") && node.discriminantJson ? node.discriminantJson : node.json])\n});\nconst describeExpressionOptions = {\n\tdelimiter: \" | \",\n\tfinalDelimiter: \" | \"\n};\nconst expressBranches = (expressions) => describeBranches(expressions, describeExpressionOptions);\nconst describeBranches = (descriptions, opts) => {\n\tconst delimiter = opts?.delimiter ?? \", \";\n\tconst finalDelimiter = opts?.finalDelimiter ?? \" or \";\n\tif (descriptions.length === 0) return \"never\";\n\tif (descriptions.length === 1) return descriptions[0];\n\tif (descriptions.length === 2 && descriptions[0] === \"false\" && descriptions[1] === \"true\" || descriptions[0] === \"true\" && descriptions[1] === \"false\") return \"boolean\";\n\tconst seen = {};\n\tconst unique = descriptions.filter((s) => seen[s] ? false : seen[s] = true);\n\tconst last = unique.pop();\n\treturn `${unique.join(delimiter)}${unique.length ? finalDelimiter : \"\"}${last}`;\n};\nconst intersectBranches = (l, r, ctx) => {\n\tconst batchesByR = r.map(() => []);\n\tfor (let lIndex = 0; lIndex < l.length; lIndex++) {\n\t\tlet candidatesByR = {};\n\t\tfor (let rIndex = 0; rIndex < r.length; rIndex++) {\n\t\t\tif (batchesByR[rIndex] === null) continue;\n\t\t\tif (l[lIndex].equals(r[rIndex])) {\n\t\t\t\tbatchesByR[rIndex] = null;\n\t\t\t\tcandidatesByR = {};\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tconst branchIntersection = intersectOrPipeNodes(l[lIndex], r[rIndex], ctx);\n\t\t\tif (branchIntersection instanceof Disjoint) continue;\n\t\t\tif (branchIntersection.equals(l[lIndex])) {\n\t\t\t\tbatchesByR[rIndex].push(l[lIndex]);\n\t\t\t\tcandidatesByR = {};\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif (branchIntersection.equals(r[rIndex])) batchesByR[rIndex] = null;\n\t\t\telse candidatesByR[rIndex] = branchIntersection;\n\t\t}\n\t\tfor (const rIndex in candidatesByR) batchesByR[rIndex][lIndex] = candidatesByR[rIndex];\n\t}\n\tconst resultBranches = batchesByR.flatMap((batch, i) => batch?.flatMap((branch) => branch.branches) ?? r[i]);\n\treturn resultBranches.length === 0 ? Disjoint.init(\"union\", l, r) : resultBranches;\n};\nconst reduceBranches = ({ branches, ordered }) => {\n\tif (branches.length < 2) return branches;\n\tconst uniquenessByIndex = branches.map(() => true);\n\tfor (let i = 0; i < branches.length; i++) for (let j = i + 1; j < branches.length && uniquenessByIndex[i] && uniquenessByIndex[j]; j++) {\n\t\tif (branches[i].equals(branches[j])) {\n\t\t\tuniquenessByIndex[j] = false;\n\t\t\tcontinue;\n\t\t}\n\t\tconst intersection = intersectNodesRoot(branches[i].rawIn, branches[j].rawIn, branches[0].$);\n\t\tif (intersection instanceof Disjoint) continue;\n\t\tif (!ordered) assertDeterminateOverlap(branches[i], branches[j]);\n\t\tif (intersection.equals(branches[i].rawIn)) uniquenessByIndex[i] = !!ordered;\n\t\telse if (intersection.equals(branches[j].rawIn)) uniquenessByIndex[j] = false;\n\t}\n\treturn branches.filter((_, i) => uniquenessByIndex[i]);\n};\nconst assertDeterminateOverlap = (l, r) => {\n\tif (!l.includesTransform && !r.includesTransform) return;\n\tif (!arrayEquals(l.shallowMorphs, r.shallowMorphs)) throwParseError(writeIndiscriminableMorphMessage(l.expression, r.expression));\n\tif (!arrayEquals(l.flatMorphs, r.flatMorphs, { isEqual: (l, r) => l.propString === r.propString && (l.node.hasKind(\"morph\") && r.node.hasKind(\"morph\") ? l.node.hasEqualMorphs(r.node) : l.node.hasKind(\"intersection\") && r.node.hasKind(\"intersection\") ? l.node.structure?.structuralMorphRef === r.node.structure?.structuralMorphRef : false) })) throwParseError(writeIndiscriminableMorphMessage(l.expression, r.expression));\n};\nconst pruneDiscriminant = (discriminantBranch, discriminantCtx) => discriminantBranch.transform((nodeKind, inner) => {\n\tif (nodeKind === \"domain\" || nodeKind === \"unit\") return null;\n\treturn inner;\n}, { shouldTransform: (node, ctx) => {\n\tconst propString = optionallyChainPropString(ctx.path);\n\tif (!discriminantCtx.optionallyChainedPropString.startsWith(propString)) return false;\n\tif (node.hasKind(\"domain\") && node.domain === \"object\") return true;\n\tif ((node.hasKind(\"domain\") || discriminantCtx.kind === \"unit\") && propString === discriminantCtx.optionallyChainedPropString) return true;\n\treturn node.children.length !== 0 && node.kind !== \"index\";\n} });\nconst writeIndiscriminableMorphMessage = (lDescription, rDescription) => `An unordered union of a type including a morph and a type with overlapping input is indeterminate:\nLeft: ${lDescription}\nRight: ${rDescription}`;\nconst writeOrderedIntersectionMessage = (lDescription, rDescription) => `The intersection of two ordered unions is indeterminate:\nLeft: ${lDescription}\nRight: ${rDescription}`;\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/roots/unit.js\nconst implementation$4 = implementNode({\n\tkind: \"unit\",\n\thasAssociatedError: true,\n\tkeys: { unit: {\n\t\tpreserveUndefined: true,\n\t\tserialize: (schema) => schema instanceof Date ? schema.toISOString() : defaultValueSerializer(schema)\n\t} },\n\tnormalize: (schema) => schema,\n\tdefaults: {\n\t\tdescription: (node) => printable(node.unit),\n\t\tproblem: ({ expected, actual }) => `${expected === actual ? `must be reference equal to ${expected} (serialized to the same value)` : `must be ${expected} (was ${actual})`}`\n\t},\n\tintersections: {\n\t\tunit: (l, r) => Disjoint.init(\"unit\", l, r),\n\t\t...defineRightwardIntersections(\"unit\", (l, r) => {\n\t\t\tif (r.allows(l.unit)) return l;\n\t\t\tconst rBasis = r.hasKind(\"intersection\") ? r.basis : r;\n\t\t\tif (rBasis) {\n\t\t\t\tconst rDomain = rBasis.hasKind(\"domain\") ? rBasis : $ark.intrinsic.object;\n\t\t\t\tif (l.domain !== rDomain.domain) {\n\t\t\t\t\tconst lDomainDisjointValue = l.domain === \"undefined\" || l.domain === \"null\" || l.domain === \"boolean\" ? l.domain : $ark.intrinsic[l.domain];\n\t\t\t\t\treturn Disjoint.init(\"domain\", lDomainDisjointValue, rDomain);\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn Disjoint.init(\"assignability\", l, r.hasKind(\"intersection\") ? r.children.find((rConstraint) => !rConstraint.allows(l.unit)) : r);\n\t\t})\n\t}\n});\nvar UnitNode = class extends InternalBasis {\n\tcompiledValue = this.json.unit;\n\tserializedValue = typeof this.unit === \"string\" || this.unit instanceof Date ? JSON.stringify(this.compiledValue) : `${this.compiledValue}`;\n\tcompiledCondition = compileEqualityCheck(this.unit, this.serializedValue);\n\tcompiledNegation = compileEqualityCheck(this.unit, this.serializedValue, \"negated\");\n\texpression = printable(this.unit);\n\tdomain = domainOf(this.unit);\n\tget defaultShortDescription() {\n\t\treturn this.domain === \"object\" ? domainDescriptions.object : this.description;\n\t}\n\tinnerToJsonSchema(ctx) {\n\t\treturn this.unit === null ? { type: \"null\" } : $ark.intrinsic.jsonPrimitive.allows(this.unit) ? { const: this.unit } : ctx.fallback.unit({\n\t\t\tcode: \"unit\",\n\t\t\tbase: {},\n\t\t\tunit: this.unit\n\t\t});\n\t}\n\ttraverseAllows = this.unit instanceof Date ? (data) => data instanceof Date && data.toISOString() === this.compiledValue : Number.isNaN(this.unit) ? (data) => Number.isNaN(data) : (data) => data === this.unit;\n};\nconst Unit = {\n\timplementation: implementation$4,\n\tNode: UnitNode\n};\nconst compileEqualityCheck = (unit, serializedValue, negated) => {\n\tif (unit instanceof Date) {\n\t\tconst condition = `data instanceof Date && data.toISOString() === ${serializedValue}`;\n\t\treturn negated ? `!(${condition})` : condition;\n\t}\n\tif (Number.isNaN(unit)) return `${negated ? \"!\" : \"\"}Number.isNaN(data)`;\n\treturn `data ${negated ? \"!\" : \"=\"}== ${serializedValue}`;\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/structure/index.js\nconst implementation$3 = implementNode({\n\tkind: \"index\",\n\thasAssociatedError: false,\n\tintersectionIsOpen: true,\n\tkeys: {\n\t\tsignature: {\n\t\t\tchild: true,\n\t\t\tparse: (schema, ctx) => {\n\t\t\t\tconst key = ctx.$.parseSchema(schema);\n\t\t\t\tif (!key.extends($ark.intrinsic.key)) return throwParseError(writeInvalidPropertyKeyMessage(key.expression));\n\t\t\t\tconst enumerableBranches = key.branches.filter((b) => b.hasKind(\"unit\"));\n\t\t\t\tif (enumerableBranches.length) return throwParseError(writeEnumerableIndexBranches(enumerableBranches.map((b) => printable(b.unit))));\n\t\t\t\treturn key;\n\t\t\t}\n\t\t},\n\t\tvalue: {\n\t\t\tchild: true,\n\t\t\tparse: (schema, ctx) => ctx.$.parseSchema(schema)\n\t\t}\n\t},\n\tnormalize: (schema) => schema,\n\tdefaults: { description: (node) => `[${node.signature.expression}]: ${node.value.description}` },\n\tintersections: { index: (l, r, ctx) => {\n\t\tif (l.signature.equals(r.signature)) {\n\t\t\tconst valueIntersection = intersectOrPipeNodes(l.value, r.value, ctx);\n\t\t\tconst value = valueIntersection instanceof Disjoint ? $ark.intrinsic.never.internal : valueIntersection;\n\t\t\treturn ctx.$.node(\"index\", {\n\t\t\t\tsignature: l.signature,\n\t\t\t\tvalue\n\t\t\t});\n\t\t}\n\t\tif (l.signature.extends(r.signature) && l.value.subsumes(r.value)) return r;\n\t\tif (r.signature.extends(l.signature) && r.value.subsumes(l.value)) return l;\n\t\treturn null;\n\t} }\n});\nvar IndexNode = class extends BaseConstraint {\n\timpliedBasis = $ark.intrinsic.object.internal;\n\texpression = `[${this.signature.expression}]: ${this.value.expression}`;\n\tflatRefs = append(this.value.flatRefs.map((ref) => flatRef([this.signature, ...ref.path], ref.node)), flatRef([this.signature], this.value));\n\ttraverseAllows = (data, ctx) => stringAndSymbolicEntriesOf(data).every((entry) => {\n\t\tif (this.signature.traverseAllows(entry[0], ctx)) return traverseKey(entry[0], () => this.value.traverseAllows(entry[1], ctx), ctx);\n\t\treturn true;\n\t});\n\ttraverseApply = (data, ctx) => {\n\t\tfor (const entry of stringAndSymbolicEntriesOf(data)) if (this.signature.traverseAllows(entry[0], ctx)) traverseKey(entry[0], () => this.value.traverseApply(entry[1], ctx), ctx);\n\t};\n\t_transform(mapper, ctx) {\n\t\tctx.path.push(this.signature);\n\t\tconst result = super._transform(mapper, ctx);\n\t\tctx.path.pop();\n\t\treturn result;\n\t}\n\tcompile() {}\n};\nconst Index = {\n\timplementation: implementation$3,\n\tNode: IndexNode\n};\nconst writeEnumerableIndexBranches = (keys) => `Index keys ${keys.join(\", \")} should be specified as named props.`;\nconst writeInvalidPropertyKeyMessage = (indexSchema) => `Indexed key definition '${indexSchema}' must be a string or symbol`;\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/structure/required.js\nconst implementation$2 = implementNode({\n\tkind: \"required\",\n\thasAssociatedError: true,\n\tintersectionIsOpen: true,\n\tkeys: {\n\t\tkey: {},\n\t\tvalue: {\n\t\t\tchild: true,\n\t\t\tparse: (schema, ctx) => ctx.$.parseSchema(schema)\n\t\t}\n\t},\n\tnormalize: (schema) => schema,\n\tdefaults: {\n\t\tdescription: (node) => `${node.compiledKey}: ${node.value.description}`,\n\t\texpected: (ctx) => ctx.missingValueDescription,\n\t\tactual: () => \"missing\"\n\t},\n\tintersections: {\n\t\trequired: intersectProps,\n\t\toptional: intersectProps\n\t}\n});\nvar RequiredNode = class extends BaseProp {\n\texpression = `${this.compiledKey}: ${this.value.expression}`;\n\terrorContext = Object.freeze({\n\t\tcode: \"required\",\n\t\tmissingValueDescription: this.value.defaultShortDescription,\n\t\trelativePath: [this.key],\n\t\tmeta: this.meta\n\t});\n\tcompiledErrorContext = compileObjectLiteral(this.errorContext);\n};\nconst Required$1 = {\n\timplementation: implementation$2,\n\tNode: RequiredNode\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/structure/sequence.js\nconst implementation$1 = implementNode({\n\tkind: \"sequence\",\n\thasAssociatedError: false,\n\tcollapsibleKey: \"variadic\",\n\tkeys: {\n\t\tprefix: {\n\t\t\tchild: true,\n\t\t\tparse: (schema, ctx) => {\n\t\t\t\tif (schema.length === 0) return void 0;\n\t\t\t\treturn schema.map((element) => ctx.$.parseSchema(element));\n\t\t\t}\n\t\t},\n\t\toptionals: {\n\t\t\tchild: true,\n\t\t\tparse: (schema, ctx) => {\n\t\t\t\tif (schema.length === 0) return void 0;\n\t\t\t\treturn schema.map((element) => ctx.$.parseSchema(element));\n\t\t\t}\n\t\t},\n\t\tdefaultables: {\n\t\t\tchild: (defaultables) => defaultables.map((element) => element[0]),\n\t\t\tparse: (defaultables, ctx) => {\n\t\t\t\tif (defaultables.length === 0) return void 0;\n\t\t\t\treturn defaultables.map((element) => {\n\t\t\t\t\tconst node = ctx.$.parseSchema(element[0]);\n\t\t\t\t\tassertDefaultValueAssignability(node, element[1], null);\n\t\t\t\t\treturn [node, element[1]];\n\t\t\t\t});\n\t\t\t},\n\t\t\tserialize: (defaults) => defaults.map((element) => [element[0].collapsibleJson, defaultValueSerializer(element[1])]),\n\t\t\treduceIo: (ioKind, inner, defaultables) => {\n\t\t\t\tif (ioKind === \"in\") {\n\t\t\t\t\tinner.optionals = defaultables.map((d) => d[0].rawIn);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tinner.prefix = defaultables.map((d) => d[0].rawOut);\n\t\t\t}\n\t\t},\n\t\tvariadic: {\n\t\t\tchild: true,\n\t\t\tparse: (schema, ctx) => ctx.$.parseSchema(schema, ctx)\n\t\t},\n\t\tminVariadicLength: { parse: (min) => min === 0 ? void 0 : min },\n\t\tpostfix: {\n\t\t\tchild: true,\n\t\t\tparse: (schema, ctx) => {\n\t\t\t\tif (schema.length === 0) return void 0;\n\t\t\t\treturn schema.map((element) => ctx.$.parseSchema(element));\n\t\t\t}\n\t\t}\n\t},\n\tnormalize: (schema) => {\n\t\tif (typeof schema === \"string\") return { variadic: schema };\n\t\tif (\"variadic\" in schema || \"prefix\" in schema || \"defaultables\" in schema || \"optionals\" in schema || \"postfix\" in schema || \"minVariadicLength\" in schema) {\n\t\t\tif (schema.postfix?.length) {\n\t\t\t\tif (!schema.variadic) return throwParseError(postfixWithoutVariadicMessage);\n\t\t\t\tif (schema.optionals?.length || schema.defaultables?.length) return throwParseError(postfixAfterOptionalOrDefaultableMessage);\n\t\t\t}\n\t\t\tif (schema.minVariadicLength && !schema.variadic) return throwParseError(\"minVariadicLength may not be specified without a variadic element\");\n\t\t\treturn schema;\n\t\t}\n\t\treturn { variadic: schema };\n\t},\n\treduce: (raw, $) => {\n\t\tlet minVariadicLength = raw.minVariadicLength ?? 0;\n\t\tconst prefix = raw.prefix?.slice() ?? [];\n\t\tconst defaultables = raw.defaultables?.slice() ?? [];\n\t\tconst optionals = raw.optionals?.slice() ?? [];\n\t\tconst postfix = raw.postfix?.slice() ?? [];\n\t\tif (raw.variadic) {\n\t\t\twhile (optionals[optionals.length - 1]?.equals(raw.variadic)) optionals.pop();\n\t\t\tif (optionals.length === 0 && defaultables.length === 0) while (prefix[prefix.length - 1]?.equals(raw.variadic)) {\n\t\t\t\tprefix.pop();\n\t\t\t\tminVariadicLength++;\n\t\t\t}\n\t\t\twhile (postfix[0]?.equals(raw.variadic)) {\n\t\t\t\tpostfix.shift();\n\t\t\t\tminVariadicLength++;\n\t\t\t}\n\t\t} else if (optionals.length === 0 && defaultables.length === 0) prefix.push(...postfix.splice(0));\n\t\tif (minVariadicLength !== raw.minVariadicLength || raw.prefix && raw.prefix.length !== prefix.length) return $.node(\"sequence\", {\n\t\t\t...raw,\n\t\t\tprefix,\n\t\t\tdefaultables,\n\t\t\toptionals,\n\t\t\tpostfix,\n\t\t\tminVariadicLength\n\t\t}, { prereduced: true });\n\t},\n\tdefaults: { description: (node) => {\n\t\tif (node.isVariadicOnly) return `${node.variadic.nestableExpression}[]`;\n\t\treturn `[${node.tuple.map((element) => element.kind === \"defaultables\" ? `${element.node.nestableExpression} = ${printable(element.default)}` : element.kind === \"optionals\" ? `${element.node.nestableExpression}?` : element.kind === \"variadic\" ? `...${element.node.nestableExpression}[]` : element.node.expression).join(\", \")}]`;\n\t} },\n\tintersections: { sequence: (l, r, ctx) => {\n\t\tconst rootState = _intersectSequences({\n\t\t\tl: l.tuple,\n\t\t\tr: r.tuple,\n\t\t\tdisjoint: new Disjoint(),\n\t\t\tresult: [],\n\t\t\tfixedVariants: [],\n\t\t\tctx\n\t\t});\n\t\tconst viableBranches = rootState.disjoint.length === 0 ? [rootState, ...rootState.fixedVariants] : rootState.fixedVariants;\n\t\treturn viableBranches.length === 0 ? rootState.disjoint : viableBranches.length === 1 ? ctx.$.node(\"sequence\", sequenceTupleToInner(viableBranches[0].result)) : ctx.$.node(\"union\", viableBranches.map((state) => ({\n\t\t\tproto: Array,\n\t\t\tsequence: sequenceTupleToInner(state.result)\n\t\t})));\n\t} }\n});\nvar SequenceNode = class extends BaseConstraint {\n\timpliedBasis = $ark.intrinsic.Array.internal;\n\ttuple = sequenceInnerToTuple(this.inner);\n\tprefixLength = this.prefix?.length ?? 0;\n\tdefaultablesLength = this.defaultables?.length ?? 0;\n\toptionalsLength = this.optionals?.length ?? 0;\n\tpostfixLength = this.postfix?.length ?? 0;\n\tdefaultablesAndOptionals = [];\n\tprevariadic = this.tuple.filter((el) => {\n\t\tif (el.kind === \"defaultables\" || el.kind === \"optionals\") {\n\t\t\tthis.defaultablesAndOptionals.push(el.node);\n\t\t\treturn true;\n\t\t}\n\t\treturn el.kind === \"prefix\";\n\t});\n\tvariadicOrPostfix = conflatenate(this.variadic && [this.variadic], this.postfix);\n\tflatRefs = this.addFlatRefs();\n\taddFlatRefs() {\n\t\tappendUniqueFlatRefs(this.flatRefs, this.prevariadic.flatMap((element, i) => append(element.node.flatRefs.map((ref) => flatRef([`${i}`, ...ref.path], ref.node)), flatRef([`${i}`], element.node))));\n\t\tappendUniqueFlatRefs(this.flatRefs, this.variadicOrPostfix.flatMap((element) => append(element.flatRefs.map((ref) => flatRef([$ark.intrinsic.nonNegativeIntegerString.internal, ...ref.path], ref.node)), flatRef([$ark.intrinsic.nonNegativeIntegerString.internal], element))));\n\t\treturn this.flatRefs;\n\t}\n\tisVariadicOnly = this.prevariadic.length + this.postfixLength === 0;\n\tminVariadicLength = this.inner.minVariadicLength ?? 0;\n\tminLength = this.prefixLength + this.minVariadicLength + this.postfixLength;\n\tminLengthNode = this.minLength === 0 ? null : this.$.node(\"minLength\", this.minLength);\n\tmaxLength = this.variadic ? null : this.tuple.length;\n\tmaxLengthNode = this.maxLength === null ? null : this.$.node(\"maxLength\", this.maxLength);\n\timpliedSiblings = this.minLengthNode ? this.maxLengthNode ? [this.minLengthNode, this.maxLengthNode] : [this.minLengthNode] : this.maxLengthNode ? [this.maxLengthNode] : [];\n\tdefaultValueMorphs = getDefaultableMorphs(this);\n\tdefaultValueMorphsReference = this.defaultValueMorphs.length ? registeredReference(this.defaultValueMorphs) : void 0;\n\telementAtIndex(data, index) {\n\t\tif (index < this.prevariadic.length) return this.tuple[index];\n\t\tconst firstPostfixIndex = data.length - this.postfixLength;\n\t\tif (index >= firstPostfixIndex) return {\n\t\t\tkind: \"postfix\",\n\t\t\tnode: this.postfix[index - firstPostfixIndex]\n\t\t};\n\t\treturn {\n\t\t\tkind: \"variadic\",\n\t\t\tnode: this.variadic ?? throwInternalError(`Unexpected attempt to access index ${index} on ${this}`)\n\t\t};\n\t}\n\ttraverseAllows = (data, ctx) => {\n\t\tfor (let i = 0; i < data.length; i++) if (!this.elementAtIndex(data, i).node.traverseAllows(data[i], ctx)) return false;\n\t\treturn true;\n\t};\n\ttraverseApply = (data, ctx) => {\n\t\tlet i = 0;\n\t\tfor (; i < data.length; i++) traverseKey(i, () => this.elementAtIndex(data, i).node.traverseApply(data[i], ctx), ctx);\n\t};\n\tget element() {\n\t\treturn this.cacheGetter(\"element\", this.$.node(\"union\", this.children));\n\t}\n\tcompile(js) {\n\t\tif (this.prefix) for (const [i, node] of this.prefix.entries()) js.traverseKey(`${i}`, `data[${i}]`, node);\n\t\tfor (const [i, node] of this.defaultablesAndOptionals.entries()) {\n\t\t\tconst dataIndex = `${i + this.prefixLength}`;\n\t\t\tjs.if(`${dataIndex} >= data.length`, () => js.traversalKind === \"Allows\" ? js.return(true) : js.return());\n\t\t\tjs.traverseKey(dataIndex, `data[${dataIndex}]`, node);\n\t\t}\n\t\tif (this.variadic) {\n\t\t\tif (this.postfix) js.const(\"firstPostfixIndex\", `data.length${this.postfix ? `- ${this.postfix.length}` : \"\"}`);\n\t\t\tjs.for(`i < ${this.postfix ? \"firstPostfixIndex\" : \"data.length\"}`, () => js.traverseKey(\"i\", \"data[i]\", this.variadic), this.prevariadic.length);\n\t\t\tif (this.postfix) for (const [i, node] of this.postfix.entries()) {\n\t\t\t\tconst keyExpression = `firstPostfixIndex + ${i}`;\n\t\t\t\tjs.traverseKey(keyExpression, `data[${keyExpression}]`, node);\n\t\t\t}\n\t\t}\n\t\tif (js.traversalKind === \"Allows\") js.return(true);\n\t}\n\t_transform(mapper, ctx) {\n\t\tctx.path.push($ark.intrinsic.nonNegativeIntegerString.internal);\n\t\tconst result = super._transform(mapper, ctx);\n\t\tctx.path.pop();\n\t\treturn result;\n\t}\n\texpression = this.description;\n\treduceJsonSchema(schema, ctx) {\n\t\tconst isDraft07 = ctx.target === \"draft-07\";\n\t\tif (this.prevariadic.length) {\n\t\t\tconst prefixSchemas = this.prevariadic.map((el) => {\n\t\t\t\tconst valueSchema = el.node.toJsonSchemaRecurse(ctx);\n\t\t\t\tif (el.kind === \"defaultables\") {\n\t\t\t\t\tconst value = typeof el.default === \"function\" ? el.default() : el.default;\n\t\t\t\t\tvalueSchema.default = $ark.intrinsic.jsonData.allows(value) ? value : ctx.fallback.defaultValue({\n\t\t\t\t\t\tcode: \"defaultValue\",\n\t\t\t\t\t\tbase: valueSchema,\n\t\t\t\t\t\tvalue\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\treturn valueSchema;\n\t\t\t});\n\t\t\tif (isDraft07) schema.items = prefixSchemas;\n\t\t\telse schema.prefixItems = prefixSchemas;\n\t\t}\n\t\tif (this.minLength) schema.minItems = this.minLength;\n\t\tif (this.variadic) {\n\t\t\tconst variadicItemSchema = this.variadic.toJsonSchemaRecurse(ctx);\n\t\t\tif (isDraft07 && this.prevariadic.length) schema.additionalItems = variadicItemSchema;\n\t\t\telse schema.items = variadicItemSchema;\n\t\t\tif (this.maxLength) schema.maxItems = this.maxLength;\n\t\t\tif (this.postfix) {\n\t\t\t\tconst elements = this.postfix.map((el) => el.toJsonSchemaRecurse(ctx));\n\t\t\t\tschema = ctx.fallback.arrayPostfix({\n\t\t\t\t\tcode: \"arrayPostfix\",\n\t\t\t\t\tbase: schema,\n\t\t\t\t\telements\n\t\t\t\t});\n\t\t\t}\n\t\t} else {\n\t\t\tif (isDraft07) schema.additionalItems = false;\n\t\t\telse schema.items = false;\n\t\t\tdelete schema.maxItems;\n\t\t}\n\t\treturn schema;\n\t}\n};\nconst defaultableMorphsCache$1 = {};\nconst getDefaultableMorphs = (node) => {\n\tif (!node.defaultables) return [];\n\tconst morphs = [];\n\tlet cacheKey = \"[\";\n\tconst lastDefaultableIndex = node.prefixLength + node.defaultablesLength - 1;\n\tfor (let i = node.prefixLength; i <= lastDefaultableIndex; i++) {\n\t\tconst [elementNode, defaultValue] = node.defaultables[i - node.prefixLength];\n\t\tmorphs.push(computeDefaultValueMorph(i, elementNode, defaultValue));\n\t\tcacheKey += `${i}: ${elementNode.id} = ${defaultValueSerializer(defaultValue)}, `;\n\t}\n\tcacheKey += \"]\";\n\treturn defaultableMorphsCache$1[cacheKey] ??= morphs;\n};\nconst Sequence = {\n\timplementation: implementation$1,\n\tNode: SequenceNode\n};\nconst sequenceInnerToTuple = (inner) => {\n\tconst tuple = [];\n\tif (inner.prefix) for (const node of inner.prefix) tuple.push({\n\t\tkind: \"prefix\",\n\t\tnode\n\t});\n\tif (inner.defaultables) for (const [node, defaultValue] of inner.defaultables) tuple.push({\n\t\tkind: \"defaultables\",\n\t\tnode,\n\t\tdefault: defaultValue\n\t});\n\tif (inner.optionals) for (const node of inner.optionals) tuple.push({\n\t\tkind: \"optionals\",\n\t\tnode\n\t});\n\tif (inner.variadic) tuple.push({\n\t\tkind: \"variadic\",\n\t\tnode: inner.variadic\n\t});\n\tif (inner.postfix) for (const node of inner.postfix) tuple.push({\n\t\tkind: \"postfix\",\n\t\tnode\n\t});\n\treturn tuple;\n};\nconst sequenceTupleToInner = (tuple) => tuple.reduce((result, element) => {\n\tif (element.kind === \"variadic\") result.variadic = element.node;\n\telse if (element.kind === \"defaultables\") result.defaultables = append(result.defaultables, [[element.node, element.default]]);\n\telse result[element.kind] = append(result[element.kind], element.node);\n\treturn result;\n}, {});\nconst postfixAfterOptionalOrDefaultableMessage = \"A postfix required element cannot follow an optional or defaultable element\";\nconst postfixWithoutVariadicMessage = \"A postfix element requires a variadic element\";\nconst _intersectSequences = (s) => {\n\tconst [lHead, ...lTail] = s.l;\n\tconst [rHead, ...rTail] = s.r;\n\tif (!lHead || !rHead) return s;\n\tconst lHasPostfix = lTail[lTail.length - 1]?.kind === \"postfix\";\n\tconst rHasPostfix = rTail[rTail.length - 1]?.kind === \"postfix\";\n\tconst kind = lHead.kind === \"prefix\" || rHead.kind === \"prefix\" ? \"prefix\" : lHead.kind === \"postfix\" || rHead.kind === \"postfix\" ? \"postfix\" : lHead.kind === \"variadic\" && rHead.kind === \"variadic\" ? \"variadic\" : lHasPostfix || rHasPostfix ? \"prefix\" : lHead.kind === \"defaultables\" || rHead.kind === \"defaultables\" ? \"defaultables\" : \"optionals\";\n\tif (lHead.kind === \"prefix\" && rHead.kind === \"variadic\" && rHasPostfix) {\n\t\tconst postfixBranchResult = _intersectSequences({\n\t\t\t...s,\n\t\t\tfixedVariants: [],\n\t\t\tr: rTail.map((element) => ({\n\t\t\t\t...element,\n\t\t\t\tkind: \"prefix\"\n\t\t\t}))\n\t\t});\n\t\tif (postfixBranchResult.disjoint.length === 0) s.fixedVariants.push(postfixBranchResult);\n\t} else if (rHead.kind === \"prefix\" && lHead.kind === \"variadic\" && lHasPostfix) {\n\t\tconst postfixBranchResult = _intersectSequences({\n\t\t\t...s,\n\t\t\tfixedVariants: [],\n\t\t\tl: lTail.map((element) => ({\n\t\t\t\t...element,\n\t\t\t\tkind: \"prefix\"\n\t\t\t}))\n\t\t});\n\t\tif (postfixBranchResult.disjoint.length === 0) s.fixedVariants.push(postfixBranchResult);\n\t}\n\tconst result = intersectOrPipeNodes(lHead.node, rHead.node, s.ctx);\n\tif (result instanceof Disjoint) if (kind === \"prefix\" || kind === \"postfix\") {\n\t\ts.disjoint.push(...result.withPrefixKey(kind === \"prefix\" ? s.result.length : `-${lTail.length + 1}`, elementIsRequired(lHead) && elementIsRequired(rHead) ? \"required\" : \"optional\"));\n\t\ts.result = [...s.result, {\n\t\t\tkind,\n\t\t\tnode: $ark.intrinsic.never.internal\n\t\t}];\n\t} else if (kind === \"optionals\" || kind === \"defaultables\") return s;\n\telse return _intersectSequences({\n\t\t...s,\n\t\tfixedVariants: [],\n\t\tl: lTail.map((element) => ({\n\t\t\t...element,\n\t\t\tkind: \"prefix\"\n\t\t})),\n\t\tr: lTail.map((element) => ({\n\t\t\t...element,\n\t\t\tkind: \"prefix\"\n\t\t}))\n\t});\n\telse if (kind === \"defaultables\") {\n\t\tif (lHead.kind === \"defaultables\" && rHead.kind === \"defaultables\" && lHead.default !== rHead.default) throwParseError(writeDefaultIntersectionMessage(lHead.default, rHead.default));\n\t\ts.result = [...s.result, {\n\t\t\tkind,\n\t\t\tnode: result,\n\t\t\tdefault: lHead.kind === \"defaultables\" ? lHead.default : rHead.kind === \"defaultables\" ? rHead.default : throwInternalError(`Unexpected defaultable intersection from ${lHead.kind} and ${rHead.kind} elements.`)\n\t\t}];\n\t} else s.result = [...s.result, {\n\t\tkind,\n\t\tnode: result\n\t}];\n\tconst lRemaining = s.l.length;\n\tconst rRemaining = s.r.length;\n\tif (lHead.kind !== \"variadic\" || lRemaining >= rRemaining && (rHead.kind === \"variadic\" || rRemaining === 1)) s.l = lTail;\n\tif (rHead.kind !== \"variadic\" || rRemaining >= lRemaining && (lHead.kind === \"variadic\" || lRemaining === 1)) s.r = rTail;\n\treturn _intersectSequences(s);\n};\nconst elementIsRequired = (el) => el.kind === \"prefix\" || el.kind === \"postfix\";\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/structure/structure.js\nconst createStructuralWriter = (childStringProp) => (node) => {\n\tif (node.props.length || node.index) {\n\t\tconst parts = node.index?.map((index) => index[childStringProp]) ?? [];\n\t\tfor (const prop of node.props) parts.push(prop[childStringProp]);\n\t\tif (node.undeclared) parts.push(`+ (undeclared): ${node.undeclared}`);\n\t\tconst objectLiteralDescription = `{ ${parts.join(\", \")} }`;\n\t\treturn node.sequence ? `${objectLiteralDescription} & ${node.sequence.description}` : objectLiteralDescription;\n\t}\n\treturn node.sequence?.description ?? \"{}\";\n};\nconst structuralDescription = createStructuralWriter(\"description\");\nconst structuralExpression = createStructuralWriter(\"expression\");\nconst intersectPropsAndIndex = (l, r, $) => {\n\tconst kind = l.required ? \"required\" : \"optional\";\n\tif (!r.signature.allows(l.key)) return null;\n\tconst value = intersectNodesRoot(l.value, r.value, $);\n\tif (value instanceof Disjoint) return kind === \"optional\" ? $.node(\"optional\", {\n\t\tkey: l.key,\n\t\tvalue: $ark.intrinsic.never.internal\n\t}) : value.withPrefixKey(l.key, l.kind);\n\treturn null;\n};\nconst implementation = implementNode({\n\tkind: \"structure\",\n\thasAssociatedError: false,\n\tnormalize: (schema) => schema,\n\tapplyConfig: (schema, config) => {\n\t\tif (!schema.undeclared && config.onUndeclaredKey !== \"ignore\") return {\n\t\t\t...schema,\n\t\t\tundeclared: config.onUndeclaredKey\n\t\t};\n\t\treturn schema;\n\t},\n\tkeys: {\n\t\trequired: {\n\t\t\tchild: true,\n\t\t\tparse: constraintKeyParser(\"required\"),\n\t\t\treduceIo: (ioKind, inner, nodes) => {\n\t\t\t\tinner.required = append(inner.required, nodes.map((node) => ioKind === \"in\" ? node.rawIn : node.rawOut));\n\t\t\t}\n\t\t},\n\t\toptional: {\n\t\t\tchild: true,\n\t\t\tparse: constraintKeyParser(\"optional\"),\n\t\t\treduceIo: (ioKind, inner, nodes) => {\n\t\t\t\tif (ioKind === \"in\") {\n\t\t\t\t\tinner.optional = nodes.map((node) => node.rawIn);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tfor (const node of nodes) inner[node.outProp.kind] = append(inner[node.outProp.kind], node.outProp.rawOut);\n\t\t\t}\n\t\t},\n\t\tindex: {\n\t\t\tchild: true,\n\t\t\tparse: constraintKeyParser(\"index\")\n\t\t},\n\t\tsequence: {\n\t\t\tchild: true,\n\t\t\tparse: constraintKeyParser(\"sequence\")\n\t\t},\n\t\tundeclared: {\n\t\t\tparse: (behavior) => behavior === \"ignore\" ? void 0 : behavior,\n\t\t\treduceIo: (ioKind, inner, value) => {\n\t\t\t\tif (value === \"reject\") {\n\t\t\t\t\tinner.undeclared = \"reject\";\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tif (ioKind === \"in\") delete inner.undeclared;\n\t\t\t\telse inner.undeclared = \"reject\";\n\t\t\t}\n\t\t}\n\t},\n\tdefaults: { description: structuralDescription },\n\tintersections: { structure: (l, r, ctx) => {\n\t\tconst lInner = { ...l.inner };\n\t\tconst rInner = { ...r.inner };\n\t\tconst disjointResult = new Disjoint();\n\t\tif (l.undeclared) {\n\t\t\tconst lKey = l.keyof();\n\t\t\tfor (const k of r.requiredKeys) if (!lKey.allows(k)) disjointResult.add(\"presence\", $ark.intrinsic.never.internal, r.propsByKey[k].value, { path: [k] });\n\t\t\tif (rInner.optional) rInner.optional = rInner.optional.filter((n) => lKey.allows(n.key));\n\t\t\tif (rInner.index) rInner.index = rInner.index.flatMap((n) => {\n\t\t\t\tif (n.signature.extends(lKey)) return n;\n\t\t\t\tconst indexOverlap = intersectNodesRoot(lKey, n.signature, ctx.$);\n\t\t\t\tif (indexOverlap instanceof Disjoint) return [];\n\t\t\t\tconst normalized = normalizeIndex(indexOverlap, n.value, ctx.$);\n\t\t\t\tif (normalized.required) rInner.required = conflatenate(rInner.required, normalized.required);\n\t\t\t\tif (normalized.optional) rInner.optional = conflatenate(rInner.optional, normalized.optional);\n\t\t\t\treturn normalized.index ?? [];\n\t\t\t});\n\t\t}\n\t\tif (r.undeclared) {\n\t\t\tconst rKey = r.keyof();\n\t\t\tfor (const k of l.requiredKeys) if (!rKey.allows(k)) disjointResult.add(\"presence\", l.propsByKey[k].value, $ark.intrinsic.never.internal, { path: [k] });\n\t\t\tif (lInner.optional) lInner.optional = lInner.optional.filter((n) => rKey.allows(n.key));\n\t\t\tif (lInner.index) lInner.index = lInner.index.flatMap((n) => {\n\t\t\t\tif (n.signature.extends(rKey)) return n;\n\t\t\t\tconst indexOverlap = intersectNodesRoot(rKey, n.signature, ctx.$);\n\t\t\t\tif (indexOverlap instanceof Disjoint) return [];\n\t\t\t\tconst normalized = normalizeIndex(indexOverlap, n.value, ctx.$);\n\t\t\t\tif (normalized.required) lInner.required = conflatenate(lInner.required, normalized.required);\n\t\t\t\tif (normalized.optional) lInner.optional = conflatenate(lInner.optional, normalized.optional);\n\t\t\t\treturn normalized.index ?? [];\n\t\t\t});\n\t\t}\n\t\tconst baseInner = {};\n\t\tif (l.undeclared || r.undeclared) baseInner.undeclared = l.undeclared === \"reject\" || r.undeclared === \"reject\" ? \"reject\" : \"delete\";\n\t\tconst childIntersectionResult = intersectConstraints({\n\t\t\tkind: \"structure\",\n\t\t\tbaseInner,\n\t\t\tl: flattenConstraints(lInner),\n\t\t\tr: flattenConstraints(rInner),\n\t\t\troots: [],\n\t\t\tctx\n\t\t});\n\t\tif (childIntersectionResult instanceof Disjoint) disjointResult.push(...childIntersectionResult);\n\t\tif (disjointResult.length) return disjointResult;\n\t\treturn childIntersectionResult;\n\t} },\n\treduce: (inner, $) => {\n\t\tif (!inner.required && !inner.optional) return;\n\t\tconst seen = Object.create(null);\n\t\tlet updated = false;\n\t\tconst newOptionalProps = inner.optional ? [...inner.optional] : [];\n\t\tif (inner.required) for (let i = 0; i < inner.required.length; i++) {\n\t\t\tconst requiredProp = inner.required[i];\n\t\t\tif (requiredProp.key in seen) throwParseError(writeDuplicateKeyMessage(requiredProp.key));\n\t\t\tseen[requiredProp.key] = true;\n\t\t\tif (inner.index) for (const index of inner.index) {\n\t\t\t\tconst intersection = intersectPropsAndIndex(requiredProp, index, $);\n\t\t\t\tif (intersection instanceof Disjoint) return intersection;\n\t\t\t}\n\t\t}\n\t\tif (inner.optional) for (let i = 0; i < inner.optional.length; i++) {\n\t\t\tconst optionalProp = inner.optional[i];\n\t\t\tif (optionalProp.key in seen) throwParseError(writeDuplicateKeyMessage(optionalProp.key));\n\t\t\tseen[optionalProp.key] = true;\n\t\t\tif (inner.index) for (const index of inner.index) {\n\t\t\t\tconst intersection = intersectPropsAndIndex(optionalProp, index, $);\n\t\t\t\tif (intersection instanceof Disjoint) return intersection;\n\t\t\t\tif (intersection !== null) {\n\t\t\t\t\tnewOptionalProps[i] = intersection;\n\t\t\t\t\tupdated = true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif (updated) return $.node(\"structure\", {\n\t\t\t...inner,\n\t\t\toptional: newOptionalProps\n\t\t}, { prereduced: true });\n\t}\n});\nvar StructureNode = class extends BaseConstraint {\n\timpliedBasis = $ark.intrinsic.object.internal;\n\timpliedSiblings = this.children.flatMap((n) => n.impliedSiblings ?? []);\n\tprops = conflatenate(this.required, this.optional);\n\tpropsByKey = flatMorph(this.props, (i, node) => [node.key, node]);\n\tpropsByKeyReference = registeredReference(this.propsByKey);\n\texpression = structuralExpression(this);\n\trequiredKeys = this.required?.map((node) => node.key) ?? [];\n\toptionalKeys = this.optional?.map((node) => node.key) ?? [];\n\tliteralKeys = [...this.requiredKeys, ...this.optionalKeys];\n\t_keyof;\n\tkeyof() {\n\t\tif (this._keyof) return this._keyof;\n\t\tlet branches = this.$.units(this.literalKeys).branches;\n\t\tif (this.index) for (const { signature } of this.index) branches = branches.concat(signature.branches);\n\t\treturn this._keyof = this.$.node(\"union\", branches);\n\t}\n\tmap(flatMapProp) {\n\t\treturn this.$.node(\"structure\", this.props.flatMap(flatMapProp).reduce((structureInner, mapped) => {\n\t\t\tconst originalProp = this.propsByKey[mapped.key];\n\t\t\tif (isNode(mapped)) {\n\t\t\t\tif (mapped.kind !== \"required\" && mapped.kind !== \"optional\") return throwParseError(`Map result must have kind \"required\" or \"optional\" (was ${mapped.kind})`);\n\t\t\t\tstructureInner[mapped.kind] = append(structureInner[mapped.kind], mapped);\n\t\t\t\treturn structureInner;\n\t\t\t}\n\t\t\tconst mappedKind = mapped.kind ?? originalProp?.kind ?? \"required\";\n\t\t\tconst mappedPropInner = flatMorph(mapped, (k, v) => k in Optional.implementation.keys ? [k, v] : []);\n\t\t\tstructureInner[mappedKind] = append(structureInner[mappedKind], this.$.node(mappedKind, mappedPropInner));\n\t\t\treturn structureInner;\n\t\t}, {}));\n\t}\n\tassertHasKeys(keys) {\n\t\tconst invalidKeys = keys.filter((k) => !typeOrTermExtends(k, this.keyof()));\n\t\tif (invalidKeys.length) return throwParseError(writeInvalidKeysMessage(this.expression, invalidKeys));\n\t}\n\tget(indexer, ...path) {\n\t\tlet value;\n\t\tlet required = false;\n\t\tconst key = indexerToKey(indexer);\n\t\tif ((typeof key === \"string\" || typeof key === \"symbol\") && this.propsByKey[key]) {\n\t\t\tvalue = this.propsByKey[key].value;\n\t\t\trequired = this.propsByKey[key].required;\n\t\t}\n\t\tif (this.index) {\n\t\t\tfor (const n of this.index) if (typeOrTermExtends(key, n.signature)) value = value?.and(n.value) ?? n.value;\n\t\t}\n\t\tif (this.sequence && typeOrTermExtends(key, $ark.intrinsic.nonNegativeIntegerString)) if (hasArkKind(key, \"root\")) {\n\t\t\tif (this.sequence.variadic) value = value?.and(this.sequence.element) ?? this.sequence.element;\n\t\t} else {\n\t\t\tconst index = Number.parseInt(key);\n\t\t\tif (index < this.sequence.prevariadic.length) {\n\t\t\t\tconst fixedElement = this.sequence.prevariadic[index].node;\n\t\t\t\tvalue = value?.and(fixedElement) ?? fixedElement;\n\t\t\t\trequired ||= index < this.sequence.prefixLength;\n\t\t\t} else if (this.sequence.variadic) {\n\t\t\t\tconst nonFixedElement = this.$.node(\"union\", this.sequence.variadicOrPostfix);\n\t\t\t\tvalue = value?.and(nonFixedElement) ?? nonFixedElement;\n\t\t\t}\n\t\t}\n\t\tif (!value) {\n\t\t\tif (this.sequence?.variadic && hasArkKind(key, \"root\") && key.extends($ark.intrinsic.number)) return throwParseError(writeNumberIndexMessage(key.expression, this.sequence.expression));\n\t\t\treturn throwParseError(writeInvalidKeysMessage(this.expression, [key]));\n\t\t}\n\t\tconst result = value.get(...path);\n\t\treturn required ? result : result.or($ark.intrinsic.undefined);\n\t}\n\tpick(...keys) {\n\t\tthis.assertHasKeys(keys);\n\t\treturn this.$.node(\"structure\", this.filterKeys(\"pick\", keys));\n\t}\n\tomit(...keys) {\n\t\tthis.assertHasKeys(keys);\n\t\treturn this.$.node(\"structure\", this.filterKeys(\"omit\", keys));\n\t}\n\toptionalize() {\n\t\tconst { required, ...inner } = this.inner;\n\t\treturn this.$.node(\"structure\", {\n\t\t\t...inner,\n\t\t\toptional: this.props.map((prop) => prop.hasKind(\"required\") ? this.$.node(\"optional\", prop.inner) : prop)\n\t\t});\n\t}\n\trequire() {\n\t\tconst { optional, ...inner } = this.inner;\n\t\treturn this.$.node(\"structure\", {\n\t\t\t...inner,\n\t\t\trequired: this.props.map((prop) => prop.hasKind(\"optional\") ? {\n\t\t\t\tkey: prop.key,\n\t\t\t\tvalue: prop.value\n\t\t\t} : prop)\n\t\t});\n\t}\n\tmerge(r) {\n\t\tconst inner = this.filterKeys(\"omit\", [r.keyof()]);\n\t\tif (r.required) inner.required = append(inner.required, r.required);\n\t\tif (r.optional) inner.optional = append(inner.optional, r.optional);\n\t\tif (r.index) inner.index = append(inner.index, r.index);\n\t\tif (r.sequence) inner.sequence = r.sequence;\n\t\tif (r.undeclared) inner.undeclared = r.undeclared;\n\t\telse delete inner.undeclared;\n\t\treturn this.$.node(\"structure\", inner);\n\t}\n\tfilterKeys(operation, keys) {\n\t\tconst result = makeRootAndArrayPropertiesMutable(this.inner);\n\t\tconst shouldKeep = (key) => {\n\t\t\tconst matchesKey = keys.some((k) => typeOrTermExtends(key, k));\n\t\t\treturn operation === \"pick\" ? matchesKey : !matchesKey;\n\t\t};\n\t\tif (result.required) result.required = result.required.filter((prop) => shouldKeep(prop.key));\n\t\tif (result.optional) result.optional = result.optional.filter((prop) => shouldKeep(prop.key));\n\t\tif (result.index) result.index = result.index.filter((index) => shouldKeep(index.signature));\n\t\treturn result;\n\t}\n\ttraverseAllows = (data, ctx) => this._traverse(\"Allows\", data, ctx);\n\ttraverseApply = (data, ctx) => this._traverse(\"Apply\", data, ctx);\n\t_traverse = (traversalKind, data, ctx) => {\n\t\tconst errorCount = ctx?.currentErrorCount ?? 0;\n\t\tfor (let i = 0; i < this.props.length; i++) if (traversalKind === \"Allows\") {\n\t\t\tif (!this.props[i].traverseAllows(data, ctx)) return false;\n\t\t} else {\n\t\t\tthis.props[i].traverseApply(data, ctx);\n\t\t\tif (ctx.failFast && ctx.currentErrorCount > errorCount) return false;\n\t\t}\n\t\tif (this.sequence) if (traversalKind === \"Allows\") {\n\t\t\tif (!this.sequence.traverseAllows(data, ctx)) return false;\n\t\t} else {\n\t\t\tthis.sequence.traverseApply(data, ctx);\n\t\t\tif (ctx.failFast && ctx.currentErrorCount > errorCount) return false;\n\t\t}\n\t\tif (this.index || this.undeclared === \"reject\") {\n\t\t\tconst keys = Object.keys(data);\n\t\t\tkeys.push(...Object.getOwnPropertySymbols(data));\n\t\t\tfor (let i = 0; i < keys.length; i++) {\n\t\t\t\tconst k = keys[i];\n\t\t\t\tif (this.index) {\n\t\t\t\t\tfor (const node of this.index) if (node.signature.traverseAllows(k, ctx)) if (traversalKind === \"Allows\") {\n\t\t\t\t\t\tif (!traverseKey(k, () => node.value.traverseAllows(data[k], ctx), ctx)) return false;\n\t\t\t\t\t} else {\n\t\t\t\t\t\ttraverseKey(k, () => node.value.traverseApply(data[k], ctx), ctx);\n\t\t\t\t\t\tif (ctx.failFast && ctx.currentErrorCount > errorCount) return false;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (this.undeclared === \"reject\" && !this.declaresKey(k)) {\n\t\t\t\t\tif (traversalKind === \"Allows\") return false;\n\t\t\t\t\tctx.errorFromNodeContext({\n\t\t\t\t\t\tcode: \"predicate\",\n\t\t\t\t\t\texpected: \"removed\",\n\t\t\t\t\t\tactual: \"\",\n\t\t\t\t\t\trelativePath: [k],\n\t\t\t\t\t\tmeta: this.meta\n\t\t\t\t\t});\n\t\t\t\t\tif (ctx.failFast) return false;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif (this.structuralMorph && ctx && !ctx.hasError()) ctx.queueMorphs([this.structuralMorph]);\n\t\treturn true;\n\t};\n\tget defaultable() {\n\t\treturn this.cacheGetter(\"defaultable\", this.optional?.filter((o) => o.hasDefault()) ?? []);\n\t}\n\tdeclaresKey = (k) => k in this.propsByKey || this.index?.some((n) => n.signature.allows(k)) || this.sequence !== void 0 && $ark.intrinsic.nonNegativeIntegerString.allows(k);\n\t_compileDeclaresKey(js) {\n\t\tconst parts = [];\n\t\tif (this.props.length) parts.push(`k in ${this.propsByKeyReference}`);\n\t\tif (this.index) for (const index of this.index) parts.push(js.invoke(index.signature, {\n\t\t\tkind: \"Allows\",\n\t\t\targ: \"k\"\n\t\t}));\n\t\tif (this.sequence) parts.push(\"$ark.intrinsic.nonNegativeIntegerString.allows(k)\");\n\t\treturn parts.join(\" || \") || \"false\";\n\t}\n\tget structuralMorph() {\n\t\treturn this.cacheGetter(\"structuralMorph\", getPossibleMorph(this));\n\t}\n\tstructuralMorphRef = this.structuralMorph && registeredReference(this.structuralMorph);\n\tcompile(js) {\n\t\tif (js.traversalKind === \"Apply\") js.initializeErrorCount();\n\t\tfor (const prop of this.props) {\n\t\t\tjs.check(prop);\n\t\t\tif (js.traversalKind === \"Apply\") js.returnIfFailFast();\n\t\t}\n\t\tif (this.sequence) {\n\t\t\tjs.check(this.sequence);\n\t\t\tif (js.traversalKind === \"Apply\") js.returnIfFailFast();\n\t\t}\n\t\tif (this.index || this.undeclared === \"reject\") {\n\t\t\tjs.const(\"keys\", \"Object.keys(data)\");\n\t\t\tjs.line(\"keys.push(...Object.getOwnPropertySymbols(data))\");\n\t\t\tjs.for(\"i < keys.length\", () => this.compileExhaustiveEntry(js));\n\t\t}\n\t\tif (js.traversalKind === \"Allows\") return js.return(true);\n\t\tif (this.structuralMorphRef) js.if(\"ctx && !ctx.hasError()\", () => {\n\t\t\tjs.line(`ctx.queueMorphs([`);\n\t\t\tprecompileMorphs(js, this);\n\t\t\treturn js.line(\"])\");\n\t\t});\n\t}\n\tcompileExhaustiveEntry(js) {\n\t\tjs.const(\"k\", \"keys[i]\");\n\t\tif (this.index) for (const node of this.index) js.if(`${js.invoke(node.signature, {\n\t\t\targ: \"k\",\n\t\t\tkind: \"Allows\"\n\t\t})}`, () => js.traverseKey(\"k\", \"data[k]\", node.value));\n\t\tif (this.undeclared === \"reject\") js.if(`!(${this._compileDeclaresKey(js)})`, () => {\n\t\t\tif (js.traversalKind === \"Allows\") return js.return(false);\n\t\t\treturn js.line(`ctx.errorFromNodeContext({ code: \"predicate\", expected: \"removed\", actual: \"\", relativePath: [k], meta: ${this.compiledMeta} })`).if(\"ctx.failFast\", () => js.return());\n\t\t});\n\t\treturn js;\n\t}\n\treduceJsonSchema(schema, ctx) {\n\t\tswitch (schema.type) {\n\t\t\tcase \"object\": return this.reduceObjectJsonSchema(schema, ctx);\n\t\t\tcase \"array\":\n\t\t\t\tconst arraySchema = this.sequence?.reduceJsonSchema(schema, ctx) ?? schema;\n\t\t\t\tif (this.props.length || this.index) return ctx.fallback.arrayObject({\n\t\t\t\t\tcode: \"arrayObject\",\n\t\t\t\t\tbase: arraySchema,\n\t\t\t\t\tobject: this.reduceObjectJsonSchema({ type: \"object\" }, ctx)\n\t\t\t\t});\n\t\t\t\treturn arraySchema;\n\t\t\tdefault: return ToJsonSchema.throwInternalOperandError(\"structure\", schema);\n\t\t}\n\t}\n\treduceObjectJsonSchema(schema, ctx) {\n\t\tif (this.props.length) {\n\t\t\tschema.properties = {};\n\t\t\tfor (const prop of this.props) {\n\t\t\t\tconst valueSchema = prop.value.toJsonSchemaRecurse(ctx);\n\t\t\t\tif (typeof prop.key === \"symbol\") {\n\t\t\t\t\tctx.fallback.symbolKey({\n\t\t\t\t\t\tcode: \"symbolKey\",\n\t\t\t\t\t\tbase: schema,\n\t\t\t\t\t\tkey: prop.key,\n\t\t\t\t\t\tvalue: valueSchema,\n\t\t\t\t\t\toptional: prop.optional\n\t\t\t\t\t});\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\tif (prop.hasDefault()) {\n\t\t\t\t\tconst value = typeof prop.default === \"function\" ? prop.default() : prop.default;\n\t\t\t\t\tvalueSchema.default = $ark.intrinsic.jsonData.allows(value) ? value : ctx.fallback.defaultValue({\n\t\t\t\t\t\tcode: \"defaultValue\",\n\t\t\t\t\t\tbase: valueSchema,\n\t\t\t\t\t\tvalue\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\tschema.properties[prop.key] = valueSchema;\n\t\t\t}\n\t\t\tif (this.requiredKeys.length && schema.properties) schema.required = this.requiredKeys.filter((k) => typeof k === \"string\" && k in schema.properties);\n\t\t}\n\t\tif (this.index) for (const index of this.index) {\n\t\t\tconst valueJsonSchema = index.value.toJsonSchemaRecurse(ctx);\n\t\t\tif (index.signature.equals($ark.intrinsic.string)) {\n\t\t\t\tschema.additionalProperties = valueJsonSchema;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tfor (const keyBranch of index.signature.branches) {\n\t\t\t\tif (!keyBranch.extends($ark.intrinsic.string)) {\n\t\t\t\t\tschema = ctx.fallback.symbolKey({\n\t\t\t\t\t\tcode: \"symbolKey\",\n\t\t\t\t\t\tbase: schema,\n\t\t\t\t\t\tkey: null,\n\t\t\t\t\t\tvalue: valueJsonSchema,\n\t\t\t\t\t\toptional: false\n\t\t\t\t\t});\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\tlet keySchema = { type: \"string\" };\n\t\t\t\tif (keyBranch.hasKind(\"morph\")) keySchema = ctx.fallback.morph({\n\t\t\t\t\tcode: \"morph\",\n\t\t\t\t\tbase: keyBranch.rawIn.toJsonSchemaRecurse(ctx),\n\t\t\t\t\tout: keyBranch.rawOut.toJsonSchemaRecurse(ctx)\n\t\t\t\t});\n\t\t\t\tif (!keyBranch.hasKind(\"intersection\")) return throwInternalError(`Unexpected index branch kind ${keyBranch.kind}.`);\n\t\t\t\tconst { pattern } = keyBranch.inner;\n\t\t\t\tif (pattern) {\n\t\t\t\t\tconst keySchemaWithPattern = Object.assign(keySchema, { pattern: pattern[0].rule });\n\t\t\t\t\tfor (let i = 1; i < pattern.length; i++) keySchema = ctx.fallback.patternIntersection({\n\t\t\t\t\t\tcode: \"patternIntersection\",\n\t\t\t\t\t\tbase: keySchemaWithPattern,\n\t\t\t\t\t\tpattern: pattern[i].rule\n\t\t\t\t\t});\n\t\t\t\t\tschema.patternProperties ??= {};\n\t\t\t\t\tschema.patternProperties[keySchemaWithPattern.pattern] = valueJsonSchema;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif (this.undeclared && !schema.additionalProperties) schema.additionalProperties = false;\n\t\treturn schema;\n\t}\n};\nconst defaultableMorphsCache = {};\nconst constructStructuralMorphCacheKey = (node) => {\n\tlet cacheKey = \"\";\n\tfor (let i = 0; i < node.defaultable.length; i++) cacheKey += node.defaultable[i].defaultValueMorphRef;\n\tif (node.sequence?.defaultValueMorphsReference) cacheKey += node.sequence?.defaultValueMorphsReference;\n\tif (node.undeclared === \"delete\") {\n\t\tcacheKey += \"delete !(\";\n\t\tif (node.required) for (const n of node.required) cacheKey += n.compiledKey + \" | \";\n\t\tif (node.optional) for (const n of node.optional) cacheKey += n.compiledKey + \" | \";\n\t\tif (node.index) for (const index of node.index) cacheKey += index.signature.id + \" | \";\n\t\tif (node.sequence) if (node.sequence.maxLength === null) cacheKey += intrinsic.nonNegativeIntegerString.id;\n\t\telse for (let i = 0; i < node.sequence.tuple.length; i++) cacheKey += i + \" | \";\n\t\tcacheKey += \")\";\n\t}\n\treturn cacheKey;\n};\nconst getPossibleMorph = (node) => {\n\tconst cacheKey = constructStructuralMorphCacheKey(node);\n\tif (!cacheKey) return void 0;\n\tif (defaultableMorphsCache[cacheKey]) return defaultableMorphsCache[cacheKey];\n\tconst $arkStructuralMorph = (data, ctx) => {\n\t\tfor (let i = 0; i < node.defaultable.length; i++) if (!(node.defaultable[i].key in data)) node.defaultable[i].defaultValueMorph(data, ctx);\n\t\tif (node.sequence?.defaultables) for (let i = data.length - node.sequence.prefixLength; i < node.sequence.defaultables.length; i++) node.sequence.defaultValueMorphs[i](data, ctx);\n\t\tif (node.undeclared === \"delete\") {\n\t\t\tfor (const k in data) if (!node.declaresKey(k)) delete data[k];\n\t\t}\n\t\treturn data;\n\t};\n\treturn defaultableMorphsCache[cacheKey] = $arkStructuralMorph;\n};\nconst precompileMorphs = (js, node) => {\n\tconst args = `(data${node.defaultable.some((node) => node.defaultValueMorph.length === 2) || node.sequence?.defaultValueMorphs.some((morph) => morph.length === 2) ? \", ctx\" : \"\"})`;\n\treturn js.block(`${args} => `, (js) => {\n\t\tfor (let i = 0; i < node.defaultable.length; i++) {\n\t\t\tconst { serializedKey, defaultValueMorphRef } = node.defaultable[i];\n\t\t\tjs.if(`!(${serializedKey} in data)`, (js) => js.line(`${defaultValueMorphRef}${args}`));\n\t\t}\n\t\tif (node.sequence?.defaultables) js.for(`i < ${node.sequence.defaultables.length}`, (js) => js.line(`${node.sequence.defaultValueMorphsReference}[i]${args}`), `data.length - ${node.sequence.prefixLength}`);\n\t\tif (node.undeclared === \"delete\") js.forIn(\"data\", (js) => js.if(`!(${node._compileDeclaresKey(js)})`, (js) => js.line(`delete data[k]`)));\n\t\treturn js.return(\"data\");\n\t});\n};\nconst Structure = {\n\timplementation,\n\tNode: StructureNode\n};\nconst indexerToKey = (indexable) => {\n\tif (hasArkKind(indexable, \"root\") && indexable.hasKind(\"unit\")) indexable = indexable.unit;\n\tif (typeof indexable === \"number\") indexable = `${indexable}`;\n\treturn indexable;\n};\nconst writeNumberIndexMessage = (indexExpression, sequenceExpression) => `${indexExpression} is not allowed as an array index on ${sequenceExpression}. Use the 'nonNegativeIntegerString' keyword instead.`;\n/** extract enumerable named props from an index signature */\nconst normalizeIndex = (signature, value, $) => {\n\tconst [enumerableBranches, nonEnumerableBranches] = spliterate(signature.branches, (k) => k.hasKind(\"unit\"));\n\tif (!enumerableBranches.length) return { index: $.node(\"index\", {\n\t\tsignature,\n\t\tvalue\n\t}) };\n\tconst normalized = {};\n\tfor (const n of enumerableBranches) {\n\t\tconst prop = $.node(\"required\", {\n\t\t\tkey: n.unit,\n\t\t\tvalue\n\t\t});\n\t\tnormalized[prop.kind] = append(normalized[prop.kind], prop);\n\t}\n\tif (nonEnumerableBranches.length) normalized.index = $.node(\"index\", {\n\t\tsignature: nonEnumerableBranches,\n\t\tvalue\n\t});\n\treturn normalized;\n};\nconst typeKeyToString = (k) => hasArkKind(k, \"root\") ? k.expression : printable(k);\nconst writeInvalidKeysMessage = (o, keys) => `Key${keys.length === 1 ? \"\" : \"s\"} ${keys.map(typeKeyToString).join(\", \")} ${keys.length === 1 ? \"does\" : \"do\"} not exist on ${o}`;\nconst writeDuplicateKeyMessage = (key) => `Duplicate key ${compileSerializedValue(key)}`;\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/kinds.js\nconst nodeImplementationsByKind = {\n\t...boundImplementationsByKind,\n\talias: Alias.implementation,\n\tdomain: Domain.implementation,\n\tunit: Unit.implementation,\n\tproto: Proto.implementation,\n\tunion: Union.implementation,\n\tmorph: Morph.implementation,\n\tintersection: Intersection.implementation,\n\tdivisor: Divisor.implementation,\n\tpattern: Pattern.implementation,\n\tpredicate: Predicate.implementation,\n\trequired: Required$1.implementation,\n\toptional: Optional.implementation,\n\tindex: Index.implementation,\n\tsequence: Sequence.implementation,\n\tstructure: Structure.implementation\n};\n$ark.defaultConfig = withAlphabetizedKeys(Object.assign(flatMorph(nodeImplementationsByKind, (kind, implementation) => [kind, implementation.defaults]), {\n\tjitless: envHasCsp(),\n\tclone: deepClone,\n\tonUndeclaredKey: \"ignore\",\n\texactOptionalPropertyTypes: true,\n\tnumberAllowsNaN: false,\n\tdateAllowsInvalid: false,\n\tonFail: null,\n\tkeywords: {},\n\ttoJsonSchema: ToJsonSchema.defaultConfig\n}));\n$ark.resolvedConfig = mergeConfigs($ark.defaultConfig, $ark.config);\nconst nodeClassesByKind = {\n\t...boundClassesByKind,\n\talias: Alias.Node,\n\tdomain: Domain.Node,\n\tunit: Unit.Node,\n\tproto: Proto.Node,\n\tunion: Union.Node,\n\tmorph: Morph.Node,\n\tintersection: Intersection.Node,\n\tdivisor: Divisor.Node,\n\tpattern: Pattern.Node,\n\tpredicate: Predicate.Node,\n\trequired: Required$1.Node,\n\toptional: Optional.Node,\n\tindex: Index.Node,\n\tsequence: Sequence.Node,\n\tstructure: Structure.Node\n};\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/module.js\nvar RootModule = class extends DynamicBase {\n\tget [arkKind]() {\n\t\treturn \"module\";\n\t}\n};\nconst bindModule = (module, $) => new RootModule(flatMorph(module, (alias, value) => [alias, hasArkKind(value, \"module\") ? bindModule(value, $) : $.bindReference(value)]));\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/scope.js\nconst schemaBranchesOf = (schema) => isArray(schema) ? schema : \"branches\" in schema && isArray(schema.branches) ? schema.branches : void 0;\nconst throwMismatchedNodeRootError = (expected, actual) => throwParseError(`Node of kind ${actual} is not valid as a ${expected} definition`);\nconst writeDuplicateAliasError = (alias) => `#${alias} duplicates public alias ${alias}`;\nconst scopesByName = {};\n$ark.ambient ??= {};\nlet rawUnknownUnion;\nconst rootScopeFnName = \"function $\";\nconst precompile = (references) => bindPrecompilation(references, precompileReferences(references));\nconst bindPrecompilation = (references, precompiler, owningScope) => {\n\tconst precompilation = precompiler.write(rootScopeFnName, 4);\n\tconst compiledTraversals = precompiler.compile()();\n\tfor (const node of references) {\n\t\tif (node.precompilation && (!owningScope || node.$ !== owningScope)) continue;\n\t\tnode.traverseAllows = compiledTraversals[`${node.id}Allows`].bind(compiledTraversals);\n\t\tif (node.isRoot() && !node.allowsRequiresContext) node.allows = node.traverseAllows;\n\t\tnode.traverseApply = compiledTraversals[`${node.id}Apply`].bind(compiledTraversals);\n\t\tif (compiledTraversals[`${node.id}Optimistic`]) node.traverseOptimistic = compiledTraversals[`${node.id}Optimistic`].bind(compiledTraversals);\n\t\tnode.precompilation = precompilation;\n\t}\n};\nconst precompileReferences = (references) => new CompiledFunction().return(references.reduce((js, node) => {\n\tconst allowsCompiler = new NodeCompiler({ kind: \"Allows\" }).indent();\n\tnode.compile(allowsCompiler);\n\tconst allowsJs = allowsCompiler.write(`${node.id}Allows`);\n\tconst applyCompiler = new NodeCompiler({ kind: \"Apply\" }).indent();\n\tnode.compile(applyCompiler);\n\tconst result = `${js}${allowsJs},\\n${applyCompiler.write(`${node.id}Apply`)},\\n`;\n\tif (!node.hasKind(\"union\")) return result;\n\tconst optimisticCompiler = new NodeCompiler({\n\t\tkind: \"Allows\",\n\t\toptimistic: true\n\t}).indent();\n\tnode.compile(optimisticCompiler);\n\treturn `${result}${optimisticCompiler.write(`${node.id}Optimistic`)},\\n`;\n}, \"{\\n\") + \"}\");\nvar BaseScope = class {\n\tconfig;\n\tresolvedConfig;\n\tname;\n\tget [arkKind]() {\n\t\treturn \"scope\";\n\t}\n\treferencesById = {};\n\treferences = [];\n\tresolutions = {};\n\texportedNames = [];\n\taliases = {};\n\tresolved = false;\n\tnodesByHash = {};\n\tintrinsic;\n\tconstructor(def, config) {\n\t\tthis.config = mergeConfigs($ark.config, config);\n\t\tthis.resolvedConfig = mergeConfigs($ark.resolvedConfig, config);\n\t\tthis.name = this.resolvedConfig.name ?? `anonymousScope${Object.keys(scopesByName).length}`;\n\t\tif (this.name in scopesByName) throwParseError(`A Scope already named ${this.name} already exists`);\n\t\tscopesByName[this.name] = this;\n\t\tconst aliasEntries = Object.entries(def).map((entry) => this.preparseOwnAliasEntry(...entry));\n\t\tfor (const [k, v] of aliasEntries) {\n\t\t\tlet name = k;\n\t\t\tif (k[0] === \"#\") {\n\t\t\t\tname = k.slice(1);\n\t\t\t\tif (name in this.aliases) throwParseError(writeDuplicateAliasError(name));\n\t\t\t\tthis.aliases[name] = v;\n\t\t\t} else {\n\t\t\t\tif (name in this.aliases) throwParseError(writeDuplicateAliasError(k));\n\t\t\t\tthis.aliases[name] = v;\n\t\t\t\tthis.exportedNames.push(name);\n\t\t\t}\n\t\t\tif (!hasArkKind(v, \"module\") && !hasArkKind(v, \"generic\") && !isThunk(v)) {\n\t\t\t\tconst preparsed = this.preparseOwnDefinitionFormat(v, { alias: name });\n\t\t\t\tthis.resolutions[name] = hasArkKind(preparsed, \"root\") ? this.bindReference(preparsed) : this.createParseContext(preparsed).id;\n\t\t\t}\n\t\t}\n\t\trawUnknownUnion ??= this.node(\"union\", { branches: [\n\t\t\t\"string\",\n\t\t\t\"number\",\n\t\t\t\"object\",\n\t\t\t\"bigint\",\n\t\t\t\"symbol\",\n\t\t\t{ unit: true },\n\t\t\t{ unit: false },\n\t\t\t{ unit: void 0 },\n\t\t\t{ unit: null }\n\t\t] }, { prereduced: true });\n\t\tthis.nodesByHash[rawUnknownUnion.hash] = this.node(\"intersection\", {}, { prereduced: true });\n\t\tthis.intrinsic = $ark.intrinsic ? flatMorph($ark.intrinsic, (k, v) => k.startsWith(\"json\") ? [] : [k, this.bindReference(v)]) : {};\n\t}\n\tcacheGetter(name, value) {\n\t\tObject.defineProperty(this, name, { value });\n\t\treturn value;\n\t}\n\tget internal() {\n\t\treturn this;\n\t}\n\t_json;\n\tget json() {\n\t\tif (!this._json) this.export();\n\t\treturn this._json;\n\t}\n\tdefineSchema(def) {\n\t\treturn def;\n\t}\n\tgeneric = (...params) => {\n\t\tconst $ = this;\n\t\treturn (def, possibleHkt) => new GenericRoot(params, possibleHkt ? new LazyGenericBody(def) : def, $, $, possibleHkt ?? null);\n\t};\n\tunits = (values, opts) => {\n\t\tconst uniqueValues = [];\n\t\tfor (const value of values) if (!uniqueValues.includes(value)) uniqueValues.push(value);\n\t\tconst branches = uniqueValues.map((unit) => this.node(\"unit\", { unit }, opts));\n\t\treturn this.node(\"union\", branches, {\n\t\t\t...opts,\n\t\t\tprereduced: true\n\t\t});\n\t};\n\tlazyResolutions = [];\n\tlazilyResolve(resolve, syntheticAlias) {\n\t\tconst node = this.node(\"alias\", {\n\t\t\treference: syntheticAlias ?? \"synthetic\",\n\t\t\tresolve\n\t\t}, { prereduced: true });\n\t\tif (!this.resolved) this.lazyResolutions.push(node);\n\t\treturn node;\n\t}\n\tschema = (schema, opts) => this.finalize(this.parseSchema(schema, opts));\n\tparseSchema = (schema, opts) => this.node(schemaKindOf(schema), schema, opts);\n\tpreparseNode(kinds, schema, opts) {\n\t\tlet kind = typeof kinds === \"string\" ? kinds : schemaKindOf(schema, kinds);\n\t\tif (isNode(schema) && schema.kind === kind) return schema;\n\t\tif (kind === \"alias\" && !opts?.prereduced) {\n\t\t\tconst { reference } = Alias.implementation.normalize(schema, this);\n\t\t\tif (reference.startsWith(\"$\")) {\n\t\t\t\tconst resolution = this.resolveRoot(reference.slice(1));\n\t\t\t\tschema = resolution;\n\t\t\t\tkind = resolution.kind;\n\t\t\t}\n\t\t} else if (kind === \"union\" && hasDomain(schema, \"object\")) {\n\t\t\tconst branches = schemaBranchesOf(schema);\n\t\t\tif (branches?.length === 1) {\n\t\t\t\tschema = branches[0];\n\t\t\t\tkind = schemaKindOf(schema);\n\t\t\t}\n\t\t}\n\t\tif (isNode(schema) && schema.kind === kind) return schema;\n\t\tconst normalizedSchema = nodeImplementationsByKind[kind].normalize?.(schema, this) ?? schema;\n\t\tif (isNode(normalizedSchema)) return normalizedSchema.kind === kind ? normalizedSchema : throwMismatchedNodeRootError(kind, normalizedSchema.kind);\n\t\treturn {\n\t\t\t...opts,\n\t\t\t$: this,\n\t\t\tkind,\n\t\t\tdef: normalizedSchema,\n\t\t\tprefix: opts.alias ?? kind\n\t\t};\n\t}\n\tbindReference(reference) {\n\t\tlet bound;\n\t\tif (isNode(reference)) bound = reference.$ === this ? reference : new reference.constructor(reference.attachments, this);\n\t\telse bound = reference.$ === this ? reference : new GenericRoot(reference.params, reference.bodyDef, reference.$, this, reference.hkt);\n\t\tif (!this.resolved) Object.assign(this.referencesById, bound.referencesById);\n\t\treturn bound;\n\t}\n\tresolveRoot(name) {\n\t\treturn this.maybeResolveRoot(name) ?? throwParseError(writeUnresolvableMessage(name));\n\t}\n\tmaybeResolveRoot(name) {\n\t\tconst result = this.maybeResolve(name);\n\t\tif (hasArkKind(result, \"generic\")) return;\n\t\treturn result;\n\t}\n\t/** If name is a valid reference to a submodule alias, return its resolution */\n\tmaybeResolveSubalias(name) {\n\t\treturn maybeResolveSubalias(this.aliases, name) ?? maybeResolveSubalias(this.ambient, name);\n\t}\n\tget ambient() {\n\t\treturn $ark.ambient;\n\t}\n\tmaybeResolve(name) {\n\t\tconst cached = this.resolutions[name];\n\t\tif (cached) {\n\t\t\tif (typeof cached !== \"string\") return this.bindReference(cached);\n\t\t\tconst v = nodesByRegisteredId[cached];\n\t\t\tif (hasArkKind(v, \"root\")) return this.resolutions[name] = v;\n\t\t\tif (hasArkKind(v, \"context\")) {\n\t\t\t\tif (v.phase === \"resolving\") return this.node(\"alias\", { reference: `$${name}` }, { prereduced: true });\n\t\t\t\tif (v.phase === \"resolved\") return throwInternalError(`Unexpected resolved context for was uncached by its scope: ${printable(v)}`);\n\t\t\t\tv.phase = \"resolving\";\n\t\t\t\tconst node = this.bindReference(this.parseOwnDefinitionFormat(v.def, v));\n\t\t\t\tv.phase = \"resolved\";\n\t\t\t\tnodesByRegisteredId[node.id] = node;\n\t\t\t\tnodesByRegisteredId[v.id] = node;\n\t\t\t\treturn this.resolutions[name] = node;\n\t\t\t}\n\t\t\treturn throwInternalError(`Unexpected nodesById entry for ${cached}: ${printable(v)}`);\n\t\t}\n\t\tlet def = this.aliases[name] ?? this.ambient?.[name];\n\t\tif (!def) return this.maybeResolveSubalias(name);\n\t\tdef = this.normalizeRootScopeValue(def);\n\t\tif (hasArkKind(def, \"generic\")) return this.resolutions[name] = this.bindReference(def);\n\t\tif (hasArkKind(def, \"module\")) {\n\t\t\tif (!def.root) throwParseError(writeMissingSubmoduleAccessMessage(name));\n\t\t\treturn this.resolutions[name] = this.bindReference(def.root);\n\t\t}\n\t\treturn this.resolutions[name] = this.parse(def, { alias: name });\n\t}\n\tcreateParseContext(input) {\n\t\tconst id = input.id ?? registerNodeId(input.prefix);\n\t\treturn nodesByRegisteredId[id] = Object.assign(input, {\n\t\t\t[arkKind]: \"context\",\n\t\t\t$: this,\n\t\t\tid,\n\t\t\tphase: \"unresolved\"\n\t\t});\n\t}\n\ttraversal(root) {\n\t\treturn new Traversal(root, this.resolvedConfig);\n\t}\n\timport(...names) {\n\t\treturn new RootModule(flatMorph(this.export(...names), (alias, value) => [`#${alias}`, value]));\n\t}\n\tprecompilation;\n\t_exportedResolutions;\n\t_exports;\n\texport(...names) {\n\t\tif (!this._exports) {\n\t\t\tthis._exports = {};\n\t\t\tfor (const name of this.exportedNames) {\n\t\t\t\tconst def = this.aliases[name];\n\t\t\t\tthis._exports[name] = hasArkKind(def, \"module\") ? bindModule(def, this) : bootstrapAliasReferences(this.maybeResolve(name));\n\t\t\t}\n\t\t\tfor (const node of this.lazyResolutions) node.resolution;\n\t\t\tthis._exportedResolutions = resolutionsOfModule(this, this._exports);\n\t\t\tthis._json = resolutionsToJson(this._exportedResolutions);\n\t\t\tObject.assign(this.resolutions, this._exportedResolutions);\n\t\t\tthis.references = Object.values(this.referencesById);\n\t\t\tif (!this.resolvedConfig.jitless) {\n\t\t\t\tconst precompiler = precompileReferences(this.references);\n\t\t\t\tthis.precompilation = precompiler.write(rootScopeFnName, 4);\n\t\t\t\tbindPrecompilation(this.references, precompiler, this);\n\t\t\t}\n\t\t\tthis.resolved = true;\n\t\t}\n\t\treturn new RootModule(flatMorph(names.length ? names : this.exportedNames, (_, name) => [name, this._exports[name]]));\n\t}\n\tresolve(name) {\n\t\treturn this.export()[name];\n\t}\n\tnode = (kinds, nodeSchema, opts = {}) => {\n\t\tconst ctxOrNode = this.preparseNode(kinds, nodeSchema, opts);\n\t\tif (isNode(ctxOrNode)) return this.bindReference(ctxOrNode);\n\t\tconst ctx = this.createParseContext(ctxOrNode);\n\t\tconst node = parseNode(ctx);\n\t\tconst bound = this.bindReference(node);\n\t\treturn nodesByRegisteredId[ctx.id] = bound;\n\t};\n\tparse = (def, opts = {}) => this.finalize(this.parseDefinition(def, opts));\n\tparseDefinition(def, opts = {}) {\n\t\tif (hasArkKind(def, \"root\")) return this.bindReference(def);\n\t\tconst ctxInputOrNode = this.preparseOwnDefinitionFormat(def, opts);\n\t\tif (hasArkKind(ctxInputOrNode, \"root\")) return this.bindReference(ctxInputOrNode);\n\t\tconst ctx = this.createParseContext(ctxInputOrNode);\n\t\tnodesByRegisteredId[ctx.id] = ctx;\n\t\tlet node = this.bindReference(this.parseOwnDefinitionFormat(def, ctx));\n\t\tif (node.isCyclic) node = withId(node, ctx.id);\n\t\tnodesByRegisteredId[ctx.id] = node;\n\t\treturn node;\n\t}\n\tfinalize(node) {\n\t\tbootstrapAliasReferences(node);\n\t\tif (!node.precompilation && !this.resolvedConfig.jitless) precompile(node.references);\n\t\treturn node;\n\t}\n};\nvar SchemaScope = class extends BaseScope {\n\tparseOwnDefinitionFormat(def, ctx) {\n\t\treturn parseNode(ctx);\n\t}\n\tpreparseOwnDefinitionFormat(schema, opts) {\n\t\treturn this.preparseNode(schemaKindOf(schema), schema, opts);\n\t}\n\tpreparseOwnAliasEntry(k, v) {\n\t\treturn [k, v];\n\t}\n\tnormalizeRootScopeValue(v) {\n\t\treturn v;\n\t}\n};\nconst bootstrapAliasReferences = (resolution) => {\n\tconst aliases = resolution.references.filter((node) => node.hasKind(\"alias\"));\n\tfor (const aliasNode of aliases) {\n\t\tObject.assign(aliasNode.referencesById, aliasNode.resolution.referencesById);\n\t\tfor (const ref of resolution.references) if (aliasNode.id in ref.referencesById) Object.assign(ref.referencesById, aliasNode.referencesById);\n\t}\n\treturn resolution;\n};\nconst resolutionsToJson = (resolutions) => flatMorph(resolutions, (k, v) => [k, hasArkKind(v, \"root\") || hasArkKind(v, \"generic\") ? v.json : hasArkKind(v, \"module\") ? resolutionsToJson(v) : throwInternalError(`Unexpected resolution ${printable(v)}`)]);\nconst maybeResolveSubalias = (base, name) => {\n\tconst dotIndex = name.indexOf(\".\");\n\tif (dotIndex === -1) return;\n\tconst dotPrefix = name.slice(0, dotIndex);\n\tconst prefixSchema = base[dotPrefix];\n\tif (prefixSchema === void 0) return;\n\tif (!hasArkKind(prefixSchema, \"module\")) return throwParseError(writeNonSubmoduleDotMessage(dotPrefix));\n\tconst subalias = name.slice(dotIndex + 1);\n\tconst resolution = prefixSchema[subalias];\n\tif (resolution === void 0) return maybeResolveSubalias(prefixSchema, subalias);\n\tif (hasArkKind(resolution, \"root\") || hasArkKind(resolution, \"generic\")) return resolution;\n\tif (hasArkKind(resolution, \"module\")) return resolution.root ?? throwParseError(writeMissingSubmoduleAccessMessage(name));\n\tthrowInternalError(`Unexpected resolution for alias '${name}': ${printable(resolution)}`);\n};\nconst schemaScope = (aliases, config) => new SchemaScope(aliases, config);\nconst rootSchemaScope = new SchemaScope({});\nconst resolutionsOfModule = ($, typeSet) => {\n\tconst result = {};\n\tfor (const k in typeSet) {\n\t\tconst v = typeSet[k];\n\t\tif (hasArkKind(v, \"module\")) {\n\t\t\tconst prefixedResolutions = flatMorph(resolutionsOfModule($, v), (innerK, innerV) => [`${k}.${innerK}`, innerV]);\n\t\t\tObject.assign(result, prefixedResolutions);\n\t\t} else if (hasArkKind(v, \"root\") || hasArkKind(v, \"generic\")) result[k] = v;\n\t\telse throwInternalError(`Unexpected scope resolution ${printable(v)}`);\n\t}\n\treturn result;\n};\nconst writeUnresolvableMessage = (token) => `'${token}' is unresolvable`;\nconst writeNonSubmoduleDotMessage = (name) => `'${name}' must reference a module to be accessed using dot syntax`;\nconst writeMissingSubmoduleAccessMessage = (name) => `Reference to submodule '${name}' must specify an alias`;\nrootSchemaScope.export();\nconst rootSchema = rootSchemaScope.schema;\nconst node = rootSchemaScope.node;\nrootSchemaScope.defineSchema;\nconst genericNode = rootSchemaScope.generic;\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/structure/shared.js\nconst arrayIndexSource = `^(?:0|[1-9]\\\\d*)$`;\nregisteredReference(new RegExp(arrayIndexSource));\n//#endregion\n//#region ../../../../node_modules/@ark/schema/out/intrinsic.js\nconst intrinsicBases = schemaScope({\n\tbigint: \"bigint\",\n\tboolean: [{ unit: false }, { unit: true }],\n\tfalse: { unit: false },\n\tnever: [],\n\tnull: { unit: null },\n\tnumber: \"number\",\n\tobject: \"object\",\n\tstring: \"string\",\n\tsymbol: \"symbol\",\n\ttrue: { unit: true },\n\tunknown: {},\n\tundefined: { unit: void 0 },\n\tArray,\n\tDate\n}, { prereducedAliases: true }).export();\n$ark.intrinsic = { ...intrinsicBases };\nconst intrinsicRoots = schemaScope({\n\tinteger: {\n\t\tdomain: \"number\",\n\t\tdivisor: 1\n\t},\n\tlengthBoundable: [\"string\", Array],\n\tkey: [\"string\", \"symbol\"],\n\tnonNegativeIntegerString: {\n\t\tdomain: \"string\",\n\t\tpattern: arrayIndexSource\n\t}\n}, { prereducedAliases: true }).export();\nObject.assign($ark.intrinsic, intrinsicRoots);\nconst intrinsicJson = schemaScope({\n\tjsonPrimitive: [\n\t\t\"string\",\n\t\t\"number\",\n\t\t{ unit: true },\n\t\t{ unit: false },\n\t\t{ unit: null }\n\t],\n\tjsonObject: {\n\t\tdomain: \"object\",\n\t\tindex: {\n\t\t\tsignature: \"string\",\n\t\t\tvalue: \"$jsonData\"\n\t\t}\n\t},\n\tjsonData: [\"$jsonPrimitive\", \"$jsonObject\"]\n}, { prereducedAliases: true }).export();\nconst intrinsic = {\n\t...intrinsicBases,\n\t...intrinsicRoots,\n\t...intrinsicJson,\n\temptyStructure: node(\"structure\", {}, { prereduced: true })\n};\n$ark.intrinsic = { ...intrinsic };\n//#endregion\n//#region ../../../../node_modules/arkregex/out/regex.js\nconst regex$1 = ((src, flags) => new RegExp(src, flags));\nObject.assign(regex$1, { as: regex$1 });\n//#endregion\n//#region ../../../../node_modules/arktype/out/parser/shift/operand/date.js\nconst isDateLiteral = (value) => typeof value === \"string\" && value[0] === \"d\" && (value[1] === \"'\" || value[1] === \"\\\"\") && value[value.length - 1] === value[1];\nconst isValidDate = (d) => d.toString() !== \"Invalid Date\";\nconst extractDateLiteralSource = (literal) => literal.slice(2, -1);\nconst writeInvalidDateMessage = (source) => `'${source}' could not be parsed by the Date constructor`;\nconst tryParseDate = (source, errorOnFail) => maybeParseDate(source, errorOnFail);\nconst maybeParseDate = (source, errorOnFail) => {\n\tconst stringParsedDate = new Date(source);\n\tif (isValidDate(stringParsedDate)) return stringParsedDate;\n\tconst epochMillis = tryParseNumber(source);\n\tif (epochMillis !== void 0) {\n\t\tconst numberParsedDate = new Date(epochMillis);\n\t\tif (isValidDate(numberParsedDate)) return numberParsedDate;\n\t}\n\treturn errorOnFail ? throwParseError(errorOnFail === true ? writeInvalidDateMessage(source) : errorOnFail) : void 0;\n};\n//#endregion\n//#region ../../../../node_modules/arktype/out/parser/shift/operand/enclosed.js\nconst regexExecArray = rootSchema({\n\tproto: \"Array\",\n\tsequence: \"string\",\n\trequired: {\n\t\tkey: \"groups\",\n\t\tvalue: [\"object\", { unit: void 0 }]\n\t}\n});\nconst parseEnclosed = (s, enclosing) => {\n\tconst enclosed = s.scanner.shiftUntilEscapable(untilLookaheadIsClosing[enclosingTokens[enclosing]]);\n\tif (s.scanner.lookahead === \"\") return s.error(writeUnterminatedEnclosedMessage(enclosed, enclosing));\n\ts.scanner.shift();\n\tif (enclosing in enclosingRegexTokens) {\n\t\tlet regex;\n\t\ttry {\n\t\t\tregex = new RegExp(enclosed);\n\t\t} catch (e) {\n\t\t\tthrowParseError(String(e));\n\t\t}\n\t\ts.root = s.ctx.$.node(\"intersection\", {\n\t\t\tdomain: \"string\",\n\t\t\tpattern: enclosed\n\t\t}, { prereduced: true });\n\t\tif (enclosing === \"x/\") s.root = s.ctx.$.node(\"morph\", {\n\t\t\tin: s.root,\n\t\t\tmorphs: (s) => regex.exec(s),\n\t\t\tdeclaredOut: regexExecArray\n\t\t});\n\t} else if (isKeyOf(enclosing, enclosingQuote)) s.root = s.ctx.$.node(\"unit\", { unit: enclosed });\n\telse {\n\t\tconst date = tryParseDate(enclosed, writeInvalidDateMessage(enclosed));\n\t\ts.root = s.ctx.$.node(\"unit\", {\n\t\t\tmeta: enclosed,\n\t\t\tunit: date\n\t\t});\n\t}\n};\nconst enclosingQuote = {\n\t\"'\": 1,\n\t\"\\\"\": 1\n};\nconst enclosingChar = {\n\t\"/\": 1,\n\t\"'\": 1,\n\t\"\\\"\": 1\n};\nconst enclosingLiteralTokens = {\n\t\"d'\": \"'\",\n\t\"d\\\"\": \"\\\"\",\n\t\"'\": \"'\",\n\t\"\\\"\": \"\\\"\"\n};\nconst enclosingRegexTokens = {\n\t\"/\": \"/\",\n\t\"x/\": \"/\"\n};\nconst enclosingTokens = {\n\t...enclosingLiteralTokens,\n\t...enclosingRegexTokens\n};\nconst untilLookaheadIsClosing = {\n\t\"'\": (scanner) => scanner.lookahead === `'`,\n\t\"\\\"\": (scanner) => scanner.lookahead === `\"`,\n\t\"/\": (scanner) => scanner.lookahead === `/`\n};\nconst enclosingCharDescriptions = {\n\t\"\\\"\": \"double-quote\",\n\t\"'\": \"single-quote\",\n\t\"/\": \"forward slash\"\n};\nconst writeUnterminatedEnclosedMessage = (fragment, enclosingStart) => `${enclosingStart}${fragment} requires a closing ${enclosingCharDescriptions[enclosingTokens[enclosingStart]]}`;\n//#endregion\n//#region ../../../../node_modules/arktype/out/parser/ast/validate.js\nconst writePrefixedPrivateReferenceMessage = (name) => `Private type references should not include '#'. Use '${name}' instead.`;\nconst shallowOptionalMessage = \"Optional definitions like 'string?' are only valid as properties in an object or tuple\";\nconst shallowDefaultableMessage = \"Defaultable definitions like 'number = 0' are only valid as properties in an object or tuple\";\n//#endregion\n//#region ../../../../node_modules/arktype/out/parser/shift/tokens.js\nconst terminatingChars = {\n\t\"<\": 1,\n\t\">\": 1,\n\t\"=\": 1,\n\t\"|\": 1,\n\t\"&\": 1,\n\t\")\": 1,\n\t\"[\": 1,\n\t\"%\": 1,\n\t\",\": 1,\n\t\":\": 1,\n\t\"?\": 1,\n\t\"#\": 1,\n\t...whitespaceChars\n};\nconst lookaheadIsFinalizing = (lookahead, unscanned) => lookahead === \">\" ? unscanned[0] === \"=\" ? unscanned[1] === \"=\" : unscanned.trimStart() === \"\" || isKeyOf(unscanned.trimStart()[0], terminatingChars) : lookahead === \"=\" ? unscanned[0] !== \"=\" : lookahead === \",\" || lookahead === \"?\";\n//#endregion\n//#region ../../../../node_modules/arktype/out/parser/shift/operand/genericArgs.js\nconst parseGenericArgs = (name, g, s) => _parseGenericArgs(name, g, s, []);\nconst _parseGenericArgs = (name, g, s, argNodes) => {\n\tconst argState = s.parseUntilFinalizer();\n\targNodes.push(argState.root);\n\tif (argState.finalizer === \">\") {\n\t\tif (argNodes.length !== g.params.length) return s.error(writeInvalidGenericArgCountMessage(name, g.names, argNodes.map((arg) => arg.expression)));\n\t\treturn argNodes;\n\t}\n\tif (argState.finalizer === \",\") return _parseGenericArgs(name, g, s, argNodes);\n\treturn argState.error(writeUnclosedGroupMessage(\">\"));\n};\nconst writeInvalidGenericArgCountMessage = (name, params, argDefs) => `${name}<${params.join(\", \")}> requires exactly ${params.length} args (got ${argDefs.length}${argDefs.length === 0 ? \"\" : `: ${argDefs.join(\", \")}`})`;\n//#endregion\n//#region ../../../../node_modules/arktype/out/parser/shift/operand/unenclosed.js\nconst parseUnenclosed = (s) => {\n\tconst token = s.scanner.shiftUntilLookahead(terminatingChars);\n\tif (token === \"keyof\") s.addPrefix(\"keyof\");\n\telse s.root = unenclosedToNode(s, token);\n};\nconst parseGenericInstantiation = (name, g, s) => {\n\ts.scanner.shiftUntilNonWhitespace();\n\tif (s.scanner.shift() !== \"<\") return s.error(writeInvalidGenericArgCountMessage(name, g.names, []));\n\treturn g(...parseGenericArgs(name, g, s));\n};\nconst unenclosedToNode = (s, token) => maybeParseReference(s, token) ?? maybeParseUnenclosedLiteral(s, token) ?? s.error(token === \"\" ? s.scanner.lookahead === \"#\" ? writePrefixedPrivateReferenceMessage(s.shiftedBy(1).scanner.shiftUntilLookahead(terminatingChars)) : writeMissingOperandMessage(s) : writeUnresolvableMessage(token));\nconst maybeParseReference = (s, token) => {\n\tif (s.ctx.args?.[token]) {\n\t\tconst arg = s.ctx.args[token];\n\t\tif (typeof arg !== \"string\") return arg;\n\t\treturn s.ctx.$.node(\"alias\", { reference: arg }, { prereduced: true });\n\t}\n\tconst resolution = s.ctx.$.maybeResolve(token);\n\tif (hasArkKind(resolution, \"root\")) return resolution;\n\tif (resolution === void 0) return;\n\tif (hasArkKind(resolution, \"generic\")) return parseGenericInstantiation(token, resolution, s);\n\treturn throwParseError(`Unexpected resolution ${printable(resolution)}`);\n};\nconst maybeParseUnenclosedLiteral = (s, token) => {\n\tconst maybeNumber = tryParseWellFormedNumber(token);\n\tif (maybeNumber !== void 0) return s.ctx.$.node(\"unit\", { unit: maybeNumber });\n\tconst maybeBigint = tryParseWellFormedBigint(token);\n\tif (maybeBigint !== void 0) return s.ctx.$.node(\"unit\", { unit: maybeBigint });\n};\nconst writeMissingOperandMessage = (s) => {\n\tconst operator = s.previousOperator();\n\treturn operator ? writeMissingRightOperandMessage(operator, s.scanner.unscanned) : writeExpressionExpectedMessage(s.scanner.unscanned);\n};\nconst writeMissingRightOperandMessage = (token, unscanned = \"\") => `Token '${token}' requires a right operand${unscanned ? ` before '${unscanned}'` : \"\"}`;\nconst writeExpressionExpectedMessage = (unscanned) => `Expected an expression${unscanned ? ` before '${unscanned}'` : \"\"}`;\n//#endregion\n//#region ../../../../node_modules/arktype/out/parser/shift/operand/operand.js\nconst parseOperand = (s) => s.scanner.lookahead === \"\" ? s.error(writeMissingOperandMessage(s)) : s.scanner.lookahead === \"(\" ? s.shiftedBy(1).reduceGroupOpen() : s.scanner.lookaheadIsIn(enclosingChar) ? parseEnclosed(s, s.scanner.shift()) : s.scanner.lookaheadIsIn(whitespaceChars) ? parseOperand(s.shiftedBy(1)) : s.scanner.lookahead === \"d\" ? s.scanner.nextLookahead in enclosingQuote ? parseEnclosed(s, `${s.scanner.shift()}${s.scanner.shift()}`) : parseUnenclosed(s) : s.scanner.lookahead === \"x\" ? s.scanner.nextLookahead === \"/\" ? s.shiftedBy(2) && parseEnclosed(s, \"x/\") : parseUnenclosed(s) : parseUnenclosed(s);\n//#endregion\n//#region ../../../../node_modules/arktype/out/parser/reduce/shared.js\nconst minComparators = {\n\t\">\": true,\n\t\">=\": true\n};\nconst maxComparators = {\n\t\"<\": true,\n\t\"<=\": true\n};\nconst invertedComparators = {\n\t\"<\": \">\",\n\t\">\": \"<\",\n\t\"<=\": \">=\",\n\t\">=\": \"<=\",\n\t\"==\": \"==\"\n};\nconst writeOpenRangeMessage = (min, comparator) => `Left bounds are only valid when paired with right bounds (try ...${comparator}${min})`;\nconst writeUnpairableComparatorMessage = (comparator) => `Left-bounded expressions must specify their limits using < or <= (was ${comparator})`;\nconst writeMultipleLeftBoundsMessage = (openLimit, openComparator, limit, comparator) => `An expression may have at most one left bound (parsed ${openLimit}${invertedComparators[openComparator]}, ${limit}${invertedComparators[comparator]})`;\n//#endregion\n//#region ../../../../node_modules/arktype/out/parser/shift/operator/bounds.js\nconst parseBound = (s, start) => {\n\tconst comparator = shiftComparator(s, start);\n\tif (s.root.hasKind(\"unit\")) {\n\t\tif (typeof s.root.unit === \"number\") {\n\t\t\ts.reduceLeftBound(s.root.unit, comparator);\n\t\t\ts.unsetRoot();\n\t\t\treturn;\n\t\t}\n\t\tif (s.root.unit instanceof Date) {\n\t\t\tconst literal = `d'${s.root.description ?? s.root.unit.toISOString()}'`;\n\t\t\ts.unsetRoot();\n\t\t\ts.reduceLeftBound(literal, comparator);\n\t\t\treturn;\n\t\t}\n\t}\n\treturn parseRightBound(s, comparator);\n};\nconst comparatorStartChars = {\n\t\"<\": 1,\n\t\">\": 1,\n\t\"=\": 1\n};\nconst shiftComparator = (s, start) => s.scanner.lookaheadIs(\"=\") ? `${start}${s.scanner.shift()}` : start;\nconst getBoundKinds = (comparator, limit, root, boundKind) => {\n\tif (root.extends($ark.intrinsic.number)) {\n\t\tif (typeof limit !== \"number\") return throwParseError(writeInvalidLimitMessage(comparator, limit, boundKind));\n\t\treturn comparator === \"==\" ? [\"min\", \"max\"] : comparator[0] === \">\" ? [\"min\"] : [\"max\"];\n\t}\n\tif (root.extends($ark.intrinsic.lengthBoundable)) {\n\t\tif (typeof limit !== \"number\") return throwParseError(writeInvalidLimitMessage(comparator, limit, boundKind));\n\t\treturn comparator === \"==\" ? [\"exactLength\"] : comparator[0] === \">\" ? [\"minLength\"] : [\"maxLength\"];\n\t}\n\tif (root.extends($ark.intrinsic.Date)) return comparator === \"==\" ? [\"after\", \"before\"] : comparator[0] === \">\" ? [\"after\"] : [\"before\"];\n\treturn throwParseError(writeUnboundableMessage(root.expression));\n};\nconst openLeftBoundToRoot = (leftBound) => ({\n\trule: isDateLiteral(leftBound.limit) ? extractDateLiteralSource(leftBound.limit) : leftBound.limit,\n\texclusive: leftBound.comparator.length === 1\n});\nconst parseRightBound = (s, comparator) => {\n\tconst previousRoot = s.unsetRoot();\n\tconst previousScannerIndex = s.scanner.location;\n\ts.parseOperand();\n\tconst limitNode = s.unsetRoot();\n\tconst limitToken = s.scanner.sliceChars(previousScannerIndex, s.scanner.location);\n\ts.root = previousRoot;\n\tif (!limitNode.hasKind(\"unit\") || typeof limitNode.unit !== \"number\" && !(limitNode.unit instanceof Date)) return s.error(writeInvalidLimitMessage(comparator, limitToken, \"right\"));\n\tconst limit = limitNode.unit;\n\tconst exclusive = comparator.length === 1;\n\tconst boundKinds = getBoundKinds(comparator, typeof limit === \"number\" ? limit : limitToken, previousRoot, \"right\");\n\tfor (const kind of boundKinds) s.constrainRoot(kind, comparator === \"==\" ? { rule: limit } : {\n\t\trule: limit,\n\t\texclusive\n\t});\n\tif (!s.branches.leftBound) return;\n\tif (!isKeyOf(comparator, maxComparators)) return s.error(writeUnpairableComparatorMessage(comparator));\n\tconst lowerBoundKind = getBoundKinds(s.branches.leftBound.comparator, s.branches.leftBound.limit, previousRoot, \"left\");\n\ts.constrainRoot(lowerBoundKind[0], openLeftBoundToRoot(s.branches.leftBound));\n\ts.branches.leftBound = null;\n};\nconst writeInvalidLimitMessage = (comparator, limit, boundKind) => `Comparator ${boundKind === \"left\" ? invertedComparators[comparator] : comparator} must be ${boundKind === \"left\" ? \"preceded\" : \"followed\"} by a corresponding literal (was ${limit})`;\n//#endregion\n//#region ../../../../node_modules/arktype/out/parser/shift/operator/brand.js\nconst parseBrand = (s) => {\n\ts.scanner.shiftUntilNonWhitespace();\n\tconst brandName = s.scanner.shiftUntilLookahead(terminatingChars);\n\ts.root = s.root.brand(brandName);\n};\n//#endregion\n//#region ../../../../node_modules/arktype/out/parser/shift/operator/divisor.js\nconst parseDivisor = (s) => {\n\ts.scanner.shiftUntilNonWhitespace();\n\tconst divisorToken = s.scanner.shiftUntilLookahead(terminatingChars);\n\tconst divisor = tryParseInteger(divisorToken, { errorOnFail: writeInvalidDivisorMessage(divisorToken) });\n\tif (divisor === 0) s.error(writeInvalidDivisorMessage(0));\n\ts.root = s.root.constrain(\"divisor\", divisor);\n};\nconst writeInvalidDivisorMessage = (divisor) => `% operator must be followed by a non-zero integer literal (was ${divisor})`;\n//#endregion\n//#region ../../../../node_modules/arktype/out/parser/shift/operator/operator.js\nconst parseOperator = (s) => {\n\tconst lookahead = s.scanner.shift();\n\treturn lookahead === \"\" ? s.finalize(\"\") : lookahead === \"[\" ? s.scanner.shift() === \"]\" ? s.setRoot(s.root.array()) : s.error(incompleteArrayTokenMessage) : lookahead === \"|\" ? s.scanner.lookahead === \">\" ? s.shiftedBy(1).pushRootToBranch(\"|>\") : s.pushRootToBranch(lookahead) : lookahead === \"&\" ? s.pushRootToBranch(lookahead) : lookahead === \")\" ? s.finalizeGroup() : lookaheadIsFinalizing(lookahead, s.scanner.unscanned) ? s.finalize(lookahead) : isKeyOf(lookahead, comparatorStartChars) ? parseBound(s, lookahead) : lookahead === \"%\" ? parseDivisor(s) : lookahead === \"#\" ? parseBrand(s) : lookahead in whitespaceChars ? parseOperator(s) : s.error(writeUnexpectedCharacterMessage(lookahead));\n};\nconst writeUnexpectedCharacterMessage = (char, shouldBe = \"\") => `'${char}' is not allowed here${shouldBe && ` (should be ${shouldBe})`}`;\nconst incompleteArrayTokenMessage = `Missing expected ']'`;\n//#endregion\n//#region ../../../../node_modules/arktype/out/parser/shift/operator/default.js\nconst parseDefault = (s) => {\n\tconst baseNode = s.unsetRoot();\n\ts.parseOperand();\n\tconst defaultNode = s.unsetRoot();\n\tif (!defaultNode.hasKind(\"unit\")) return s.error(writeNonLiteralDefaultMessage(defaultNode.expression));\n\treturn [\n\t\tbaseNode,\n\t\t\"=\",\n\t\tdefaultNode.unit instanceof Date ? () => new Date(defaultNode.unit) : defaultNode.unit\n\t];\n};\nconst writeNonLiteralDefaultMessage = (defaultDef) => `Default value '${defaultDef}' must be a literal value`;\n//#endregion\n//#region ../../../../node_modules/arktype/out/parser/string.js\nconst parseString = (def, ctx) => {\n\tconst aliasResolution = ctx.$.maybeResolveRoot(def);\n\tif (aliasResolution) return aliasResolution;\n\tif (def.endsWith(\"[]\")) {\n\t\tconst possibleElementResolution = ctx.$.maybeResolveRoot(def.slice(0, -2));\n\t\tif (possibleElementResolution) return possibleElementResolution.array();\n\t}\n\tconst s = new RuntimeState(new Scanner(def), ctx);\n\tconst node = fullStringParse(s);\n\tif (s.finalizer === \">\") throwParseError(writeUnexpectedCharacterMessage(\">\"));\n\treturn node;\n};\nconst fullStringParse = (s) => {\n\ts.parseOperand();\n\tlet result = parseUntilFinalizer(s).root;\n\tif (!result) return throwInternalError(`Root was unexpectedly unset after parsing string '${s.scanner.scanned}'`);\n\tif (s.finalizer === \"=\") result = parseDefault(s);\n\telse if (s.finalizer === \"?\") result = [result, \"?\"];\n\ts.scanner.shiftUntilNonWhitespace();\n\tif (s.scanner.lookahead) throwParseError(writeUnexpectedCharacterMessage(s.scanner.lookahead));\n\treturn result;\n};\nconst parseUntilFinalizer = (s) => {\n\twhile (s.finalizer === void 0) next(s);\n\treturn s;\n};\nconst next = (s) => s.hasRoot() ? s.parseOperator() : s.parseOperand();\n//#endregion\n//#region ../../../../node_modules/arktype/out/parser/reduce/dynamic.js\nvar RuntimeState = class RuntimeState {\n\troot;\n\tbranches = {\n\t\tprefixes: [],\n\t\tleftBound: null,\n\t\tintersection: null,\n\t\tunion: null,\n\t\tpipe: null\n\t};\n\tfinalizer;\n\tgroups = [];\n\tscanner;\n\tctx;\n\tconstructor(scanner, ctx) {\n\t\tthis.scanner = scanner;\n\t\tthis.ctx = ctx;\n\t}\n\terror(message) {\n\t\treturn throwParseError(message);\n\t}\n\thasRoot() {\n\t\treturn this.root !== void 0;\n\t}\n\tsetRoot(root) {\n\t\tthis.root = root;\n\t}\n\tunsetRoot() {\n\t\tconst value = this.root;\n\t\tthis.root = void 0;\n\t\treturn value;\n\t}\n\tconstrainRoot(...args) {\n\t\tthis.root = this.root.constrain(args[0], args[1]);\n\t}\n\tfinalize(finalizer) {\n\t\tif (this.groups.length) return this.error(writeUnclosedGroupMessage(\")\"));\n\t\tthis.finalizeBranches();\n\t\tthis.finalizer = finalizer;\n\t}\n\treduceLeftBound(limit, comparator) {\n\t\tconst invertedComparator = invertedComparators[comparator];\n\t\tif (!isKeyOf(invertedComparator, minComparators)) return this.error(writeUnpairableComparatorMessage(comparator));\n\t\tif (this.branches.leftBound) return this.error(writeMultipleLeftBoundsMessage(this.branches.leftBound.limit, this.branches.leftBound.comparator, limit, invertedComparator));\n\t\tthis.branches.leftBound = {\n\t\t\tcomparator: invertedComparator,\n\t\t\tlimit\n\t\t};\n\t}\n\tfinalizeBranches() {\n\t\tthis.assertRangeUnset();\n\t\tif (this.branches.pipe) {\n\t\t\tthis.pushRootToBranch(\"|>\");\n\t\t\tthis.root = this.branches.pipe;\n\t\t\treturn;\n\t\t}\n\t\tif (this.branches.union) {\n\t\t\tthis.pushRootToBranch(\"|\");\n\t\t\tthis.root = this.branches.union;\n\t\t\treturn;\n\t\t}\n\t\tif (this.branches.intersection) {\n\t\t\tthis.pushRootToBranch(\"&\");\n\t\t\tthis.root = this.branches.intersection;\n\t\t\treturn;\n\t\t}\n\t\tthis.applyPrefixes();\n\t}\n\tfinalizeGroup() {\n\t\tthis.finalizeBranches();\n\t\tconst topBranchState = this.groups.pop();\n\t\tif (!topBranchState) return this.error(writeUnmatchedGroupCloseMessage(\")\", this.scanner.unscanned));\n\t\tthis.branches = topBranchState;\n\t}\n\taddPrefix(prefix) {\n\t\tthis.branches.prefixes.push(prefix);\n\t}\n\tapplyPrefixes() {\n\t\twhile (this.branches.prefixes.length) {\n\t\t\tconst lastPrefix = this.branches.prefixes.pop();\n\t\t\tthis.root = lastPrefix === \"keyof\" ? this.root.keyof() : throwInternalError(`Unexpected prefix '${lastPrefix}'`);\n\t\t}\n\t}\n\tpushRootToBranch(token) {\n\t\tthis.assertRangeUnset();\n\t\tthis.applyPrefixes();\n\t\tconst root = this.root;\n\t\tthis.root = void 0;\n\t\tthis.branches.intersection = this.branches.intersection?.rawAnd(root) ?? root;\n\t\tif (token === \"&\") return;\n\t\tthis.branches.union = this.branches.union?.rawOr(this.branches.intersection) ?? this.branches.intersection;\n\t\tthis.branches.intersection = null;\n\t\tif (token === \"|\") return;\n\t\tthis.branches.pipe = this.branches.pipe?.rawPipeOnce(this.branches.union) ?? this.branches.union;\n\t\tthis.branches.union = null;\n\t}\n\tparseUntilFinalizer() {\n\t\treturn parseUntilFinalizer(new RuntimeState(this.scanner, this.ctx));\n\t}\n\tparseOperator() {\n\t\treturn parseOperator(this);\n\t}\n\tparseOperand() {\n\t\treturn parseOperand(this);\n\t}\n\tassertRangeUnset() {\n\t\tif (this.branches.leftBound) return this.error(writeOpenRangeMessage(this.branches.leftBound.limit, this.branches.leftBound.comparator));\n\t}\n\treduceGroupOpen() {\n\t\tthis.groups.push(this.branches);\n\t\tthis.branches = {\n\t\t\tprefixes: [],\n\t\t\tleftBound: null,\n\t\t\tunion: null,\n\t\t\tintersection: null,\n\t\t\tpipe: null\n\t\t};\n\t}\n\tpreviousOperator() {\n\t\treturn this.branches.leftBound?.comparator ?? this.branches.prefixes[this.branches.prefixes.length - 1] ?? (this.branches.intersection ? \"&\" : this.branches.union ? \"|\" : this.branches.pipe ? \"|>\" : void 0);\n\t}\n\tshiftedBy(count) {\n\t\tthis.scanner.jumpForward(count);\n\t\treturn this;\n\t}\n};\n//#endregion\n//#region ../../../../node_modules/arktype/out/generic.js\nconst emptyGenericParameterMessage = \"An empty string is not a valid generic parameter name\";\nconst parseGenericParamName = (scanner, result, ctx) => {\n\tscanner.shiftUntilNonWhitespace();\n\tconst name = scanner.shiftUntilLookahead(terminatingChars);\n\tif (name === \"\") {\n\t\tif (scanner.lookahead === \"\" && result.length) return result;\n\t\treturn throwParseError(emptyGenericParameterMessage);\n\t}\n\tscanner.shiftUntilNonWhitespace();\n\treturn _parseOptionalConstraint(scanner, name, result, ctx);\n};\nconst extendsToken = \"extends \";\nconst _parseOptionalConstraint = (scanner, name, result, ctx) => {\n\tscanner.shiftUntilNonWhitespace();\n\tif (scanner.unscanned.startsWith(extendsToken)) scanner.jumpForward(8);\n\telse {\n\t\tif (scanner.lookahead === \",\") scanner.shift();\n\t\tresult.push(name);\n\t\treturn parseGenericParamName(scanner, result, ctx);\n\t}\n\tconst s = parseUntilFinalizer(new RuntimeState(scanner, ctx));\n\tresult.push([name, s.root]);\n\treturn parseGenericParamName(scanner, result, ctx);\n};\n//#endregion\n//#region ../../../../node_modules/arktype/out/fn.js\nvar InternalFnParser = class extends Callable {\n\tconstructor($) {\n\t\tconst parse = (...signature) => {\n\t\t\tconst returnOperatorIndex = signature.indexOf(\":\");\n\t\t\tconst lastParamIndex = returnOperatorIndex === -1 ? signature.length - 1 : returnOperatorIndex - 1;\n\t\t\tconst paramDefs = signature.slice(0, lastParamIndex + 1);\n\t\t\tconst paramTuple = $.parse(paramDefs).assertHasKind(\"intersection\");\n\t\t\tlet returnType = $.intrinsic.unknown;\n\t\t\tif (returnOperatorIndex !== -1) {\n\t\t\t\tif (returnOperatorIndex !== signature.length - 2) return throwParseError(badFnReturnTypeMessage);\n\t\t\t\treturnType = $.parse(signature[returnOperatorIndex + 1]);\n\t\t\t}\n\t\t\treturn (impl) => new InternalTypedFn(impl, paramTuple, returnType);\n\t\t};\n\t\tsuper(parse, { attach: {\n\t\t\t$,\n\t\t\traw: parse\n\t\t} });\n\t}\n};\nvar InternalTypedFn = class extends Callable {\n\traw;\n\tparams;\n\treturns;\n\texpression;\n\tconstructor(raw, params, returns) {\n\t\tconst typedName = `typed ${raw.name}`;\n\t\tconst typed = { [typedName]: (...args) => {\n\t\t\tconst returned = raw(...params.assert(args));\n\t\t\treturn returns.assert(returned);\n\t\t} }[typedName];\n\t\tsuper(typed);\n\t\tthis.raw = raw;\n\t\tthis.params = params;\n\t\tthis.returns = returns;\n\t\tlet argsExpression = params.expression;\n\t\tif (argsExpression[0] === \"[\" && argsExpression[argsExpression.length - 1] === \"]\") argsExpression = argsExpression.slice(1, -1);\n\t\telse if (argsExpression.endsWith(\"[]\")) argsExpression = `...${argsExpression}`;\n\t\tthis.expression = `(${argsExpression}) => ${returns?.expression ?? \"unknown\"}`;\n\t}\n};\nconst badFnReturnTypeMessage = `\":\" must be followed by exactly one return type e.g:\nfn(\"string\", \":\", \"number\")(s => s.length)`;\n//#endregion\n//#region ../../../../node_modules/arktype/out/match.js\nvar InternalMatchParser = class extends Callable {\n\t$;\n\tconstructor($) {\n\t\tsuper((...args) => new InternalChainedMatchParser($)(...args), { bind: $ });\n\t\tthis.$ = $;\n\t}\n\tin(def) {\n\t\treturn new InternalChainedMatchParser(this.$, def === void 0 ? void 0 : this.$.parse(def));\n\t}\n\tat(key, cases) {\n\t\treturn new InternalChainedMatchParser(this.$).at(key, cases);\n\t}\n\tcase(when, then) {\n\t\treturn new InternalChainedMatchParser(this.$).case(when, then);\n\t}\n};\nvar InternalChainedMatchParser = class extends Callable {\n\t$;\n\tin;\n\tkey;\n\tbranches = [];\n\tconstructor($, In) {\n\t\tsuper((cases) => this.caseEntries(Object.entries(cases).map(([k, v]) => k === \"default\" ? [k, v] : [this.$.parse(k), v])));\n\t\tthis.$ = $;\n\t\tthis.in = In;\n\t}\n\tat(key, cases) {\n\t\tif (this.key) throwParseError(doubleAtMessage);\n\t\tif (this.branches.length) throwParseError(chainedAtMessage);\n\t\tthis.key = key;\n\t\treturn cases ? this.match(cases) : this;\n\t}\n\tcase(def, resolver) {\n\t\treturn this.caseEntry(this.$.parse(def), resolver);\n\t}\n\tcaseEntry(node, resolver) {\n\t\tconst branch = (this.key ? this.$.parse({ [this.key]: node }) : node).pipe(resolver);\n\t\tthis.branches.push(branch);\n\t\treturn this;\n\t}\n\tmatch(cases) {\n\t\treturn this(cases);\n\t}\n\tstrings(cases) {\n\t\treturn this.caseEntries(Object.entries(cases).map(([k, v]) => k === \"default\" ? [k, v] : [this.$.node(\"unit\", { unit: k }), v]));\n\t}\n\tcaseEntries(entries) {\n\t\tfor (let i = 0; i < entries.length; i++) {\n\t\t\tconst [k, v] = entries[i];\n\t\t\tif (k === \"default\") {\n\t\t\t\tif (i !== entries.length - 1) throwParseError(`default may only be specified as the last key of a switch definition`);\n\t\t\t\treturn this.default(v);\n\t\t\t}\n\t\t\tif (typeof v !== \"function\") return throwParseError(`Value for case \"${k}\" must be a function (was ${domainOf(v)})`);\n\t\t\tthis.caseEntry(k, v);\n\t\t}\n\t\treturn this;\n\t}\n\tdefault(defaultCase) {\n\t\tif (typeof defaultCase === \"function\") this.case(intrinsic.unknown, defaultCase);\n\t\tconst schema = {\n\t\t\tbranches: this.branches,\n\t\t\tordered: true\n\t\t};\n\t\tif (defaultCase === \"never\" || defaultCase === \"assert\") schema.meta = { onFail: throwOnDefault };\n\t\tconst cases = this.$.node(\"union\", schema);\n\t\tif (!this.in) return this.$.finalize(cases);\n\t\tlet inputValidatedCases = this.in.pipe(cases);\n\t\tif (defaultCase === \"never\" || defaultCase === \"assert\") inputValidatedCases = inputValidatedCases.configureReferences({ onFail: throwOnDefault }, \"self\");\n\t\treturn this.$.finalize(inputValidatedCases);\n\t}\n};\nconst throwOnDefault = (errors) => errors.throw();\nconst chainedAtMessage = `A key matcher must be specified before the first case i.e. match.at('foo') or match.in<object>().at('bar')`;\nconst doubleAtMessage = `At most one key matcher may be specified per expression`;\n//#endregion\n//#region ../../../../node_modules/arktype/out/parser/property.js\nconst parseProperty = (def, ctx) => {\n\tif (isArray(def)) {\n\t\tif (def[1] === \"=\") return [\n\t\t\tctx.$.parseOwnDefinitionFormat(def[0], ctx),\n\t\t\t\"=\",\n\t\t\tdef[2]\n\t\t];\n\t\tif (def[1] === \"?\") return [ctx.$.parseOwnDefinitionFormat(def[0], ctx), \"?\"];\n\t}\n\treturn parseInnerDefinition(def, ctx);\n};\nconst invalidOptionalKeyKindMessage = `Only required keys may make their values optional, e.g. { [mySymbol]: ['number', '?'] }`;\nconst invalidDefaultableKeyKindMessage = `Only required keys may specify default values, e.g. { value: 'number = 0' }`;\n//#endregion\n//#region ../../../../node_modules/arktype/out/parser/objectLiteral.js\nconst parseObjectLiteral = (def, ctx) => {\n\tlet spread;\n\tconst structure = {};\n\tconst defEntries = stringAndSymbolicEntriesOf(def);\n\tfor (const [k, v] of defEntries) {\n\t\tconst parsedKey = preparseKey(k);\n\t\tif (parsedKey.kind === \"spread\") {\n\t\t\tif (!isEmptyObject(structure)) return throwParseError(nonLeadingSpreadError);\n\t\t\tconst operand = ctx.$.parseOwnDefinitionFormat(v, ctx);\n\t\t\tif (operand.equals(intrinsic.object)) continue;\n\t\t\tif (!operand.hasKind(\"intersection\") || !operand.basis?.equals(intrinsic.object)) return throwParseError(writeInvalidSpreadTypeMessage(operand.expression));\n\t\t\tspread = operand.structure;\n\t\t\tcontinue;\n\t\t}\n\t\tif (parsedKey.kind === \"undeclared\") {\n\t\t\tif (v !== \"reject\" && v !== \"delete\" && v !== \"ignore\") throwParseError(writeInvalidUndeclaredBehaviorMessage(v));\n\t\t\tstructure.undeclared = v;\n\t\t\tcontinue;\n\t\t}\n\t\tconst parsedValue = parseProperty(v, ctx);\n\t\tconst parsedEntryKey = parsedKey;\n\t\tif (parsedKey.kind === \"required\") {\n\t\t\tif (!isArray(parsedValue)) appendNamedProp(structure, \"required\", {\n\t\t\t\tkey: parsedKey.normalized,\n\t\t\t\tvalue: parsedValue\n\t\t\t}, ctx);\n\t\t\telse appendNamedProp(structure, \"optional\", parsedValue[1] === \"=\" ? {\n\t\t\t\tkey: parsedKey.normalized,\n\t\t\t\tvalue: parsedValue[0],\n\t\t\t\tdefault: parsedValue[2]\n\t\t\t} : {\n\t\t\t\tkey: parsedKey.normalized,\n\t\t\t\tvalue: parsedValue[0]\n\t\t\t}, ctx);\n\t\t\tcontinue;\n\t\t}\n\t\tif (isArray(parsedValue)) {\n\t\t\tif (parsedValue[1] === \"?\") throwParseError(invalidOptionalKeyKindMessage);\n\t\t\tif (parsedValue[1] === \"=\") throwParseError(invalidDefaultableKeyKindMessage);\n\t\t}\n\t\tif (parsedKey.kind === \"optional\") {\n\t\t\tappendNamedProp(structure, \"optional\", {\n\t\t\t\tkey: parsedKey.normalized,\n\t\t\t\tvalue: parsedValue\n\t\t\t}, ctx);\n\t\t\tcontinue;\n\t\t}\n\t\tconst normalized = normalizeIndex(ctx.$.parseOwnDefinitionFormat(parsedEntryKey.normalized, ctx), parsedValue, ctx.$);\n\t\tif (normalized.index) structure.index = append(structure.index, normalized.index);\n\t\tif (normalized.required) structure.required = append(structure.required, normalized.required);\n\t}\n\tconst structureNode = ctx.$.node(\"structure\", structure);\n\treturn ctx.$.parseSchema({\n\t\tdomain: \"object\",\n\t\tstructure: spread?.merge(structureNode) ?? structureNode\n\t});\n};\nconst appendNamedProp = (structure, kind, inner, ctx) => {\n\tstructure[kind] = append(structure[kind], ctx.$.node(kind, inner));\n};\nconst writeInvalidUndeclaredBehaviorMessage = (actual) => `Value of '+' key must be 'reject', 'delete', or 'ignore' (was ${printable(actual)})`;\nconst nonLeadingSpreadError = \"Spread operator may only be used as the first key in an object\";\nconst preparseKey = (key) => typeof key === \"symbol\" ? {\n\tkind: \"required\",\n\tnormalized: key\n} : key[key.length - 1] === \"?\" ? key[key.length - 2] === \"\\\\\" ? {\n\tkind: \"required\",\n\tnormalized: `${key.slice(0, -2)}?`\n} : {\n\tkind: \"optional\",\n\tnormalized: key.slice(0, -1)\n} : key[0] === \"[\" && key[key.length - 1] === \"]\" ? {\n\tkind: \"index\",\n\tnormalized: key.slice(1, -1)\n} : key[0] === \"\\\\\" && key[1] === \"[\" && key[key.length - 1] === \"]\" ? {\n\tkind: \"required\",\n\tnormalized: key.slice(1)\n} : key === \"...\" ? { kind: \"spread\" } : key === \"+\" ? { kind: \"undeclared\" } : {\n\tkind: \"required\",\n\tnormalized: key === \"\\\\...\" ? \"...\" : key === \"\\\\+\" ? \"+\" : key\n};\nconst writeInvalidSpreadTypeMessage = (def) => `Spread operand must resolve to an object literal type (was ${def})`;\n//#endregion\n//#region ../../../../node_modules/arktype/out/parser/tupleExpressions.js\nconst maybeParseTupleExpression = (def, ctx) => isIndexZeroExpression(def) ? indexZeroParsers[def[0]](def, ctx) : isIndexOneExpression(def) ? indexOneParsers[def[1]](def, ctx) : null;\nconst parseKeyOfTuple = (def, ctx) => ctx.$.parseOwnDefinitionFormat(def[1], ctx).keyof();\nconst parseBranchTuple = (def, ctx) => {\n\tif (def[2] === void 0) return throwParseError(writeMissingRightOperandMessage(def[1], \"\"));\n\tconst l = ctx.$.parseOwnDefinitionFormat(def[0], ctx);\n\tconst r = ctx.$.parseOwnDefinitionFormat(def[2], ctx);\n\tif (def[1] === \"|\") return ctx.$.node(\"union\", { branches: [l, r] });\n\tconst result = def[1] === \"&\" ? intersectNodesRoot(l, r, ctx.$) : pipeNodesRoot(l, r, ctx.$);\n\tif (result instanceof Disjoint) return result.throw();\n\treturn result;\n};\nconst parseArrayTuple = (def, ctx) => ctx.$.parseOwnDefinitionFormat(def[0], ctx).array();\nconst parseMorphTuple = (def, ctx) => {\n\tif (typeof def[2] !== \"function\") return throwParseError(writeMalformedFunctionalExpressionMessage(\"=>\", def[2]));\n\treturn ctx.$.parseOwnDefinitionFormat(def[0], ctx).pipe(def[2]);\n};\nconst writeMalformedFunctionalExpressionMessage = (operator, value) => `${operator === \":\" ? \"Narrow\" : \"Morph\"} expression requires a function following '${operator}' (was ${typeof value})`;\nconst parseNarrowTuple = (def, ctx) => {\n\tif (typeof def[2] !== \"function\") return throwParseError(writeMalformedFunctionalExpressionMessage(\":\", def[2]));\n\treturn ctx.$.parseOwnDefinitionFormat(def[0], ctx).constrain(\"predicate\", def[2]);\n};\nconst parseMetaTuple = (def, ctx) => ctx.$.parseOwnDefinitionFormat(def[0], ctx).configure(def[2], def[3]);\nconst defineIndexOneParsers = (parsers) => parsers;\nconst postfixParsers = defineIndexOneParsers({\n\t\"[]\": parseArrayTuple,\n\t\"?\": () => throwParseError(shallowOptionalMessage)\n});\nconst infixParsers = defineIndexOneParsers({\n\t\"|\": parseBranchTuple,\n\t\"&\": parseBranchTuple,\n\t\":\": parseNarrowTuple,\n\t\"=>\": parseMorphTuple,\n\t\"|>\": parseBranchTuple,\n\t\"@\": parseMetaTuple,\n\t\"=\": () => throwParseError(shallowDefaultableMessage)\n});\nconst indexOneParsers = {\n\t...postfixParsers,\n\t...infixParsers\n};\nconst isIndexOneExpression = (def) => indexOneParsers[def[1]] !== void 0;\nconst defineIndexZeroParsers = (parsers) => parsers;\nconst indexZeroParsers = defineIndexZeroParsers({\n\tkeyof: parseKeyOfTuple,\n\tinstanceof: (def, ctx) => {\n\t\tif (typeof def[1] !== \"function\") return throwParseError(writeInvalidConstructorMessage(objectKindOrDomainOf(def[1])));\n\t\tconst branches = def.slice(1).map((ctor) => typeof ctor === \"function\" ? ctx.$.node(\"proto\", { proto: ctor }) : throwParseError(writeInvalidConstructorMessage(objectKindOrDomainOf(ctor))));\n\t\treturn branches.length === 1 ? branches[0] : ctx.$.node(\"union\", { branches });\n\t},\n\t\"===\": (def, ctx) => ctx.$.units(def.slice(1))\n});\nconst isIndexZeroExpression = (def) => indexZeroParsers[def[0]] !== void 0;\nconst writeInvalidConstructorMessage = (actual) => `Expected a constructor following 'instanceof' operator (was ${actual})`;\n//#endregion\n//#region ../../../../node_modules/arktype/out/parser/tupleLiteral.js\nconst parseTupleLiteral = (def, ctx) => {\n\tlet sequences = [{}];\n\tlet i = 0;\n\twhile (i < def.length) {\n\t\tlet spread = false;\n\t\tif (def[i] === \"...\" && i < def.length - 1) {\n\t\t\tspread = true;\n\t\t\ti++;\n\t\t}\n\t\tconst parsedProperty = parseProperty(def[i], ctx);\n\t\tconst [valueNode, operator, possibleDefaultValue] = !isArray(parsedProperty) ? [parsedProperty] : parsedProperty;\n\t\ti++;\n\t\tif (spread) {\n\t\t\tif (!valueNode.extends($ark.intrinsic.Array)) return throwParseError(writeNonArraySpreadMessage(valueNode.expression));\n\t\t\tsequences = sequences.flatMap((base) => valueNode.distribute((branch) => appendSpreadBranch(makeRootAndArrayPropertiesMutable(base), branch)));\n\t\t} else sequences = sequences.map((base) => {\n\t\t\tif (operator === \"?\") return appendOptionalElement(base, valueNode);\n\t\t\tif (operator === \"=\") return appendDefaultableElement(base, valueNode, possibleDefaultValue);\n\t\t\treturn appendRequiredElement(base, valueNode);\n\t\t});\n\t}\n\treturn ctx.$.parseSchema(sequences.map((sequence) => isEmptyObject(sequence) ? {\n\t\tproto: Array,\n\t\texactLength: 0\n\t} : {\n\t\tproto: Array,\n\t\tsequence\n\t}));\n};\nconst appendRequiredElement = (base, element) => {\n\tif (base.defaultables || base.optionals) return throwParseError(base.variadic ? postfixAfterOptionalOrDefaultableMessage : requiredPostOptionalMessage);\n\tif (base.variadic) base.postfix = append(base.postfix, element);\n\telse base.prefix = append(base.prefix, element);\n\treturn base;\n};\nconst appendOptionalElement = (base, element) => {\n\tif (base.variadic) return throwParseError(optionalOrDefaultableAfterVariadicMessage);\n\tbase.optionals = append(base.optionals, element);\n\treturn base;\n};\nconst appendDefaultableElement = (base, element, value) => {\n\tif (base.variadic) return throwParseError(optionalOrDefaultableAfterVariadicMessage);\n\tif (base.optionals) return throwParseError(defaultablePostOptionalMessage);\n\tbase.defaultables = append(base.defaultables, [[element, value]]);\n\treturn base;\n};\nconst appendVariadicElement = (base, element) => {\n\tif (base.postfix) throwParseError(multipleVariadicMesage);\n\tif (base.variadic) {\n\t\tif (!base.variadic.equals(element)) throwParseError(multipleVariadicMesage);\n\t} else base.variadic = element.internal;\n\treturn base;\n};\nconst appendSpreadBranch = (base, branch) => {\n\tconst spread = branch.select({\n\t\tmethod: \"find\",\n\t\tkind: \"sequence\"\n\t});\n\tif (!spread) return appendVariadicElement(base, $ark.intrinsic.unknown);\n\tif (spread.prefix) for (const node of spread.prefix) appendRequiredElement(base, node);\n\tif (spread.optionals) for (const node of spread.optionals) appendOptionalElement(base, node);\n\tif (spread.variadic) appendVariadicElement(base, spread.variadic);\n\tif (spread.postfix) for (const node of spread.postfix) appendRequiredElement(base, node);\n\treturn base;\n};\nconst writeNonArraySpreadMessage = (operand) => `Spread element must be an array (was ${operand})`;\nconst multipleVariadicMesage = \"A tuple may have at most one variadic element\";\nconst requiredPostOptionalMessage = \"A required element may not follow an optional element\";\nconst optionalOrDefaultableAfterVariadicMessage = \"An optional element may not follow a variadic element\";\nconst defaultablePostOptionalMessage = \"A defaultable element may not follow an optional element without a default\";\n//#endregion\n//#region ../../../../node_modules/arktype/out/parser/definition.js\nconst parseCache = {};\nconst parseInnerDefinition = (def, ctx) => {\n\tif (typeof def === \"string\") {\n\t\tif (ctx.args && Object.keys(ctx.args).some((k) => def.includes(k))) return parseString(def, ctx);\n\t\tconst scopeCache = parseCache[ctx.$.name] ??= {};\n\t\treturn scopeCache[def] ??= parseString(def, ctx);\n\t}\n\treturn hasDomain(def, \"object\") ? parseObject(def, ctx) : throwParseError(writeBadDefinitionTypeMessage(domainOf(def)));\n};\nconst parseObject = (def, ctx) => {\n\tconst objectKind = objectKindOf(def);\n\tswitch (objectKind) {\n\t\tcase void 0:\n\t\t\tif (hasArkKind(def, \"root\")) return def;\n\t\t\tif (\"~standard\" in def) return parseStandardSchema(def, ctx);\n\t\t\treturn parseObjectLiteral(def, ctx);\n\t\tcase \"Array\": return parseTuple(def, ctx);\n\t\tcase \"RegExp\": return ctx.$.node(\"intersection\", {\n\t\t\tdomain: \"string\",\n\t\t\tpattern: def\n\t\t}, { prereduced: true });\n\t\tcase \"Function\": {\n\t\t\tconst resolvedDef = isThunk(def) ? def() : def;\n\t\t\tif (hasArkKind(resolvedDef, \"root\")) return resolvedDef;\n\t\t\treturn throwParseError(writeBadDefinitionTypeMessage(\"Function\"));\n\t\t}\n\t\tdefault: return throwParseError(writeBadDefinitionTypeMessage(objectKind ?? printable(def)));\n\t}\n};\nconst parseStandardSchema = (def, ctx) => ctx.$.intrinsic.unknown.pipe((v, ctx) => {\n\tconst result = def[\"~standard\"].validate(v);\n\tif (!result.issues) return result.value;\n\tfor (const { message, path } of result.issues) if (path) if (path.length) ctx.error({\n\t\tproblem: uncapitalize(message),\n\t\trelativePath: path.map((k) => typeof k === \"object\" ? k.key : k)\n\t});\n\telse ctx.error({ message });\n\telse ctx.error({ message });\n});\nconst parseTuple = (def, ctx) => maybeParseTupleExpression(def, ctx) ?? parseTupleLiteral(def, ctx);\nconst writeBadDefinitionTypeMessage = (actual) => `Type definitions must be strings or objects (was ${actual})`;\n//#endregion\n//#region ../../../../node_modules/arktype/out/type.js\nvar InternalTypeParser = class extends Callable {\n\tconstructor($) {\n\t\tconst attach = Object.assign({\n\t\t\terrors: ArkErrors,\n\t\t\thkt: Hkt,\n\t\t\t$,\n\t\t\traw: $.parse,\n\t\t\tmodule: $.constructor.module,\n\t\t\tscope: $.constructor.scope,\n\t\t\tdeclare: $.declare,\n\t\t\tdefine: $.define,\n\t\t\tmatch: $.match,\n\t\t\tgeneric: $.generic,\n\t\t\tschema: $.schema,\n\t\t\tkeywords: $.ambient,\n\t\t\tunit: $.unit,\n\t\t\tenumerated: $.enumerated,\n\t\t\tinstanceOf: $.instanceOf,\n\t\t\tvalueOf: $.valueOf,\n\t\t\tor: $.or,\n\t\t\tand: $.and,\n\t\t\tmerge: $.merge,\n\t\t\tpipe: $.pipe,\n\t\t\tfn: $.fn\n\t\t}, $.ambientAttachments);\n\t\tsuper((...args) => {\n\t\t\tif (args.length === 1) return $.parse(args[0]);\n\t\t\tif (args.length === 2 && typeof args[0] === \"string\" && args[0][0] === \"<\" && args[0][args[0].length - 1] === \">\") {\n\t\t\t\tconst paramString = args[0].slice(1, -1);\n\t\t\t\treturn new GenericRoot($.parseGenericParams(paramString, {}), args[1], $, $, null);\n\t\t\t}\n\t\t\treturn $.parse(args);\n\t\t}, { attach });\n\t}\n};\n//#endregion\n//#region ../../../../node_modules/arktype/out/scope.js\nconst $arkTypeRegistry = $ark;\nvar InternalScope = class InternalScope extends BaseScope {\n\tget ambientAttachments() {\n\t\tif (!$arkTypeRegistry.typeAttachments) return;\n\t\treturn this.cacheGetter(\"ambientAttachments\", flatMorph($arkTypeRegistry.typeAttachments, (k, v) => [k, this.bindReference(v)]));\n\t}\n\tpreparseOwnAliasEntry(alias, def) {\n\t\tconst firstParamIndex = alias.indexOf(\"<\");\n\t\tif (firstParamIndex === -1) {\n\t\t\tif (hasArkKind(def, \"module\") || hasArkKind(def, \"generic\")) return [alias, def];\n\t\t\tconst qualifiedName = this.name === \"ark\" ? alias : alias === \"root\" ? this.name : `${this.name}.${alias}`;\n\t\t\tconst config = this.resolvedConfig.keywords?.[qualifiedName];\n\t\t\tif (config) def = [\n\t\t\t\tdef,\n\t\t\t\t\"@\",\n\t\t\t\tconfig\n\t\t\t];\n\t\t\treturn [alias, def];\n\t\t}\n\t\tif (alias[alias.length - 1] !== \">\") throwParseError(`'>' must be the last character of a generic declaration in a scope`);\n\t\tconst name = alias.slice(0, firstParamIndex);\n\t\tconst paramString = alias.slice(firstParamIndex + 1, -1);\n\t\treturn [name, () => {\n\t\t\treturn parseGeneric(this.parseGenericParams(paramString, { alias: name }), def, this);\n\t\t}];\n\t}\n\tparseGenericParams(def, opts) {\n\t\treturn parseGenericParamName(new Scanner(def), [], this.createParseContext({\n\t\t\t...opts,\n\t\t\tdef,\n\t\t\tprefix: \"generic\"\n\t\t}));\n\t}\n\tnormalizeRootScopeValue(resolution) {\n\t\tif (isThunk(resolution) && !hasArkKind(resolution, \"generic\")) return resolution();\n\t\treturn resolution;\n\t}\n\tpreparseOwnDefinitionFormat(def, opts) {\n\t\treturn {\n\t\t\t...opts,\n\t\t\tdef,\n\t\t\tprefix: opts.alias ?? \"type\"\n\t\t};\n\t}\n\tparseOwnDefinitionFormat(def, ctx) {\n\t\tif (!(ctx.alias && ctx.alias in this.aliases) && !ctx.args) ctx.args = { this: ctx.id };\n\t\tconst result = parseInnerDefinition(def, ctx);\n\t\tif (isArray(result)) {\n\t\t\tif (result[1] === \"=\") return throwParseError(shallowDefaultableMessage);\n\t\t\tif (result[1] === \"?\") return throwParseError(shallowOptionalMessage);\n\t\t}\n\t\treturn result;\n\t}\n\tunit = (value) => this.units([value]);\n\tvalueOf = (tsEnum) => this.units(enumValues(tsEnum));\n\tenumerated = (...values) => this.units(values);\n\tinstanceOf = (ctor) => this.node(\"proto\", { proto: ctor }, { prereduced: true });\n\tor = (...defs) => this.schema(defs.map((def) => this.parse(def)));\n\tand = (...defs) => defs.reduce((node, def) => node.and(this.parse(def)), this.intrinsic.unknown);\n\tmerge = (...defs) => defs.reduce((node, def) => node.merge(this.parse(def)), this.intrinsic.object);\n\tpipe = (...morphs) => this.intrinsic.unknown.pipe(...morphs);\n\tfn = new InternalFnParser(this);\n\tmatch = new InternalMatchParser(this);\n\tdeclare = () => ({ type: this.type });\n\tdefine(def) {\n\t\treturn def;\n\t}\n\ttype = new InternalTypeParser(this);\n\tstatic scope = ((def, config = {}) => new InternalScope(def, config));\n\tstatic module = ((def, config = {}) => this.scope(def, config).export());\n};\nconst scope = Object.assign(InternalScope.scope, { define: (def) => def });\nconst Scope = InternalScope;\n//#endregion\n//#region ../../../../node_modules/arktype/out/keywords/builtins.js\nvar MergeHkt = class extends Hkt {\n\tdescription = \"merge an object's properties onto another like `Merge(User, { isAdmin: \\\"true\\\" })`\";\n};\nconst Merge = genericNode([\"base\", intrinsic.object], [\"props\", intrinsic.object])((args) => args.base.merge(args.props), MergeHkt);\nconst arkBuiltins = Scope.module({\n\tKey: intrinsic.key,\n\tMerge\n});\n//#endregion\n//#region ../../../../node_modules/arktype/out/keywords/Array.js\nvar liftFromHkt = class extends Hkt {};\nconst liftFrom = genericNode(\"element\")((args) => {\n\tconst nonArrayElement = args.element.exclude(intrinsic.Array);\n\tconst lifted = nonArrayElement.array();\n\treturn nonArrayElement.rawOr(lifted).pipe(liftArray).distribute((branch) => branch.assertHasKind(\"morph\").declareOut(lifted), rootSchema);\n}, liftFromHkt);\nconst arkArray = Scope.module({\n\troot: intrinsic.Array,\n\treadonly: \"root\",\n\tindex: intrinsic.nonNegativeIntegerString,\n\tliftFrom\n}, { name: \"Array\" });\n//#endregion\n//#region ../../../../node_modules/arktype/out/keywords/FormData.js\nconst value = rootSchema([\"string\", registry.FileConstructor]);\nconst parsed = rootSchema({\n\tmeta: \"an object representing parsed form data\",\n\tdomain: \"object\",\n\tindex: {\n\t\tsignature: \"string\",\n\t\tvalue: value.rawOr(value.array())\n\t}\n});\nconst arkFormData = Scope.module({\n\troot: [\"instanceof\", FormData],\n\tvalue,\n\tparsed,\n\tparse: rootSchema({\n\t\tin: FormData,\n\t\tmorphs: (data) => {\n\t\t\tconst result = {};\n\t\t\tfor (const [k, v] of data) if (k in result) {\n\t\t\t\tconst existing = result[k];\n\t\t\t\tif (typeof existing === \"string\" || existing instanceof registry.FileConstructor) result[k] = [existing, v];\n\t\t\t\telse existing.push(v);\n\t\t\t} else result[k] = v;\n\t\t\treturn result;\n\t\t},\n\t\tdeclaredOut: parsed\n\t})\n}, { name: \"FormData\" });\n//#endregion\n//#region ../../../../node_modules/arktype/out/keywords/TypedArray.js\nconst TypedArray = Scope.module({\n\tInt8: [\"instanceof\", Int8Array],\n\tUint8: [\"instanceof\", Uint8Array],\n\tUint8Clamped: [\"instanceof\", Uint8ClampedArray],\n\tInt16: [\"instanceof\", Int16Array],\n\tUint16: [\"instanceof\", Uint16Array],\n\tInt32: [\"instanceof\", Int32Array],\n\tUint32: [\"instanceof\", Uint32Array],\n\tFloat32: [\"instanceof\", Float32Array],\n\tFloat64: [\"instanceof\", Float64Array],\n\tBigInt64: [\"instanceof\", BigInt64Array],\n\tBigUint64: [\"instanceof\", BigUint64Array]\n}, { name: \"TypedArray\" });\n//#endregion\n//#region ../../../../node_modules/arktype/out/keywords/constructors.js\nconst omittedPrototypes = {\n\tBoolean: 1,\n\tNumber: 1,\n\tString: 1\n};\nconst arkPrototypes = Scope.module({\n\t...flatMorph({\n\t\t...ecmascriptConstructors,\n\t\t...platformConstructors\n\t}, (k, v) => k in omittedPrototypes ? [] : [k, [\"instanceof\", v]]),\n\tArray: arkArray,\n\tTypedArray,\n\tFormData: arkFormData\n});\n//#endregion\n//#region ../../../../node_modules/arktype/out/keywords/number.js\n/**\n* As per the ECMA-262 specification:\n* A time value supports a slightly smaller range of -8,640,000,000,000,000 to 8,640,000,000,000,000 milliseconds.\n*\n* @see https://262.ecma-international.org/15.0/index.html#sec-time-values-and-time-range\n*/\nconst epoch$1 = rootSchema({\n\tdomain: {\n\t\tdomain: \"number\",\n\t\tmeta: \"a number representing a Unix timestamp\"\n\t},\n\tdivisor: {\n\t\trule: 1,\n\t\tmeta: `an integer representing a Unix timestamp`\n\t},\n\tmin: {\n\t\trule: -864e13,\n\t\tmeta: `a Unix timestamp after -8640000000000000`\n\t},\n\tmax: {\n\t\trule: 864e13,\n\t\tmeta: \"a Unix timestamp before 8640000000000000\"\n\t},\n\tmeta: \"an integer representing a safe Unix timestamp\"\n});\nconst integer = rootSchema({\n\tdomain: \"number\",\n\tdivisor: 1\n});\nconst number = Scope.module({\n\troot: intrinsic.number,\n\tinteger,\n\tepoch: epoch$1,\n\tsafe: rootSchema({\n\t\tdomain: {\n\t\t\tdomain: \"number\",\n\t\t\tnumberAllowsNaN: false\n\t\t},\n\t\tmin: Number.MIN_SAFE_INTEGER,\n\t\tmax: Number.MAX_SAFE_INTEGER\n\t}),\n\tNaN: [\"===\", NaN],\n\tInfinity: [\"===\", Number.POSITIVE_INFINITY],\n\tNegativeInfinity: [\"===\", Number.NEGATIVE_INFINITY]\n}, { name: \"number\" });\n//#endregion\n//#region ../../../../node_modules/arktype/out/keywords/string.js\nconst regexStringNode = (regex, description, jsonSchemaFormat) => {\n\tconst schema = {\n\t\tdomain: \"string\",\n\t\tpattern: {\n\t\t\trule: regex.source,\n\t\t\tflags: regex.flags,\n\t\t\tmeta: description\n\t\t}\n\t};\n\tif (jsonSchemaFormat) schema.meta = { format: jsonSchemaFormat };\n\treturn node(\"intersection\", schema);\n};\nconst stringIntegerRoot = regexStringNode(wellFormedIntegerMatcher, \"a well-formed integer string\");\nconst stringInteger = Scope.module({\n\troot: stringIntegerRoot,\n\tparse: rootSchema({\n\t\tin: stringIntegerRoot,\n\t\tmorphs: (s, ctx) => {\n\t\t\tconst parsed = Number.parseInt(s);\n\t\t\treturn Number.isSafeInteger(parsed) ? parsed : ctx.error(\"an integer in the range Number.MIN_SAFE_INTEGER to Number.MAX_SAFE_INTEGER\");\n\t\t},\n\t\tdeclaredOut: intrinsic.integer\n\t})\n}, { name: \"string.integer\" });\nconst hex = regexStringNode(/^[\\dA-Fa-f]+$/, \"hex characters only\");\nconst base64 = Scope.module({\n\troot: regexStringNode(/^(?:[\\d+/A-Za-z]{4})*(?:[\\d+/A-Za-z]{2}==|[\\d+/A-Za-z]{3}=)?$/, \"base64-encoded\"),\n\turl: regexStringNode(/^(?:[\\w-]{4})*(?:[\\w-]{2}(?:==|%3D%3D)?|[\\w-]{3}(?:=|%3D)?)?$/, \"base64url-encoded\")\n}, { name: \"string.base64\" });\nconst preformattedCapitalize = regexStringNode(/^[A-Z].*$/, \"capitalized\");\nconst capitalize = Scope.module({\n\troot: rootSchema({\n\t\tin: \"string\",\n\t\tmorphs: (s) => s.charAt(0).toUpperCase() + s.slice(1),\n\t\tdeclaredOut: preformattedCapitalize\n\t}),\n\tpreformatted: preformattedCapitalize\n}, { name: \"string.capitalize\" });\nconst isLuhnValid = (creditCardInput) => {\n\tconst sanitized = creditCardInput.replace(/[ -]+/g, \"\");\n\tlet sum = 0;\n\tlet digit;\n\tlet tmpNum;\n\tlet shouldDouble = false;\n\tfor (let i = sanitized.length - 1; i >= 0; i--) {\n\t\tdigit = sanitized.substring(i, i + 1);\n\t\ttmpNum = Number.parseInt(digit, 10);\n\t\tif (shouldDouble) {\n\t\t\ttmpNum *= 2;\n\t\t\tsum += tmpNum >= 10 ? tmpNum % 10 + 1 : tmpNum;\n\t\t} else sum += tmpNum;\n\t\tshouldDouble = !shouldDouble;\n\t}\n\treturn !!(sum % 10 === 0 ? sanitized : false);\n};\nconst creditCard = rootSchema({\n\tdomain: \"string\",\n\tpattern: {\n\t\tmeta: \"a credit card number\",\n\t\trule: /^(?:4\\d{12}(?:\\d{3,6})?|5[1-5]\\d{14}|(222[1-9]|22[3-9]\\d|2[3-6]\\d{2}|27[01]\\d|2720)\\d{12}|6(?:011|5\\d\\d)\\d{12,15}|3[47]\\d{13}|3(?:0[0-5]|[68]\\d)\\d{11}|(?:2131|1800|35\\d{3})\\d{11}|6[27]\\d{14}|^(81\\d{14,17}))$/.source\n\t},\n\tpredicate: {\n\t\tmeta: \"a credit card number\",\n\t\tpredicate: isLuhnValid\n\t}\n});\nconst iso8601Matcher = /^([+-]?\\d{4}(?!\\d{2}\\b))((-?)((0[1-9]|1[0-2])(\\3([12]\\d|0[1-9]|3[01]))?|W([0-4]\\d|5[0-3])(-?[1-7])?|(00[1-9]|0[1-9]\\d|[12]\\d{2}|3([0-5]\\d|6[1-6])))(T((([01]\\d|2[0-3])((:?)[0-5]\\d)?|24:?00)([,.]\\d+(?!:))?)?(\\17[0-5]\\d([,.]\\d+)?)?([Zz]|([+-])([01]\\d|2[0-3]):?([0-5]\\d)?)?)?)?$/;\nconst isParsableDate = (s) => !Number.isNaN(new Date(s).valueOf());\nconst parsableDate = rootSchema({\n\tdomain: \"string\",\n\tpredicate: {\n\t\tmeta: \"a parsable date\",\n\t\tpredicate: isParsableDate\n\t}\n}).assertHasKind(\"intersection\");\nconst epochRoot = stringInteger.root.internal.narrow((s, ctx) => {\n\tconst n = Number.parseInt(s);\n\tconst out = number.epoch(n);\n\tif (out instanceof ArkErrors) {\n\t\tctx.errors.merge(out);\n\t\treturn false;\n\t}\n\treturn true;\n}).configure({ description: \"an integer string representing a safe Unix timestamp\" }, \"self\").assertHasKind(\"intersection\");\nconst epoch = Scope.module({\n\troot: epochRoot,\n\tparse: rootSchema({\n\t\tin: epochRoot,\n\t\tmorphs: (s) => new Date(s),\n\t\tdeclaredOut: intrinsic.Date\n\t})\n}, { name: \"string.date.epoch\" });\nconst isoRoot = regexStringNode(iso8601Matcher, \"an ISO 8601 (YYYY-MM-DDTHH:mm:ss.sssZ) date\").internal.assertHasKind(\"intersection\");\nconst iso = Scope.module({\n\troot: isoRoot,\n\tparse: rootSchema({\n\t\tin: isoRoot,\n\t\tmorphs: (s) => new Date(s),\n\t\tdeclaredOut: intrinsic.Date\n\t})\n}, { name: \"string.date.iso\" });\nconst stringDate = Scope.module({\n\troot: parsableDate,\n\tparse: rootSchema({\n\t\tdeclaredIn: parsableDate,\n\t\tin: \"string\",\n\t\tmorphs: (s, ctx) => {\n\t\t\tconst date = new Date(s);\n\t\t\tif (Number.isNaN(date.valueOf())) return ctx.error(\"a parsable date\");\n\t\t\treturn date;\n\t\t},\n\t\tdeclaredOut: intrinsic.Date\n\t}),\n\tiso,\n\tepoch\n}, { name: \"string.date\" });\nconst email = regexStringNode(/^[\\w%+.-]+@[\\d.A-Za-z-]+\\.[A-Za-z]{2,}$/, \"an email address\", \"email\");\nconst ipv4Segment = \"(?:[0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\";\nconst ipv4Address = `(${ipv4Segment}[.]){3}${ipv4Segment}`;\nconst ipv4Matcher = new RegExp(`^${ipv4Address}$`);\nconst ipv6Segment = \"(?:[0-9a-fA-F]{1,4})\";\nconst ipv6Matcher = new RegExp(`^((?:${ipv6Segment}:){7}(?:${ipv6Segment}|:)|(?:${ipv6Segment}:){6}(?:${ipv4Address}|:${ipv6Segment}|:)|(?:${ipv6Segment}:){5}(?::${ipv4Address}|(:${ipv6Segment}){1,2}|:)|(?:${ipv6Segment}:){4}(?:(:${ipv6Segment}){0,1}:${ipv4Address}|(:${ipv6Segment}){1,3}|:)|(?:${ipv6Segment}:){3}(?:(:${ipv6Segment}){0,2}:${ipv4Address}|(:${ipv6Segment}){1,4}|:)|(?:${ipv6Segment}:){2}(?:(:${ipv6Segment}){0,3}:${ipv4Address}|(:${ipv6Segment}){1,5}|:)|(?:${ipv6Segment}:){1}(?:(:${ipv6Segment}){0,4}:${ipv4Address}|(:${ipv6Segment}){1,6}|:)|(?::((?::${ipv6Segment}){0,5}:${ipv4Address}|(?::${ipv6Segment}){1,7}|:)))(%[0-9a-zA-Z.]{1,})?\\$`);\nconst ip = Scope.module({\n\troot: [\n\t\t\"v4 | v6\",\n\t\t\"@\",\n\t\t\"an IP address\"\n\t],\n\tv4: regexStringNode(ipv4Matcher, \"an IPv4 address\", \"ipv4\"),\n\tv6: regexStringNode(ipv6Matcher, \"an IPv6 address\", \"ipv6\")\n}, { name: \"string.ip\" });\nconst jsonStringDescription = \"a JSON string\";\nconst writeJsonSyntaxErrorProblem = (error) => {\n\tif (!(error instanceof SyntaxError)) throw error;\n\treturn `must be ${jsonStringDescription} (${error})`;\n};\nconst jsonRoot = rootSchema({\n\tmeta: jsonStringDescription,\n\tdomain: \"string\",\n\tpredicate: {\n\t\tmeta: jsonStringDescription,\n\t\tpredicate: (s, ctx) => {\n\t\t\ttry {\n\t\t\t\tJSON.parse(s);\n\t\t\t\treturn true;\n\t\t\t} catch (e) {\n\t\t\t\treturn ctx.reject({\n\t\t\t\t\tcode: \"predicate\",\n\t\t\t\t\texpected: jsonStringDescription,\n\t\t\t\t\tproblem: writeJsonSyntaxErrorProblem(e)\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t}\n});\nconst parseJson = (s, ctx) => {\n\tif (s.length === 0) return ctx.error({\n\t\tcode: \"predicate\",\n\t\texpected: jsonStringDescription,\n\t\tactual: \"empty\"\n\t});\n\ttry {\n\t\treturn JSON.parse(s);\n\t} catch (e) {\n\t\treturn ctx.error({\n\t\t\tcode: \"predicate\",\n\t\t\texpected: jsonStringDescription,\n\t\t\tproblem: writeJsonSyntaxErrorProblem(e)\n\t\t});\n\t}\n};\nconst json$1 = Scope.module({\n\troot: jsonRoot,\n\tparse: rootSchema({\n\t\tmeta: \"safe JSON string parser\",\n\t\tin: \"string\",\n\t\tmorphs: parseJson,\n\t\tdeclaredOut: intrinsic.jsonObject\n\t})\n}, { name: \"string.json\" });\nconst preformattedLower = regexStringNode(/^[a-z]*$/, \"only lowercase letters\");\nconst lower = Scope.module({\n\troot: rootSchema({\n\t\tin: \"string\",\n\t\tmorphs: (s) => s.toLowerCase(),\n\t\tdeclaredOut: preformattedLower\n\t}),\n\tpreformatted: preformattedLower\n}, { name: \"string.lower\" });\nconst normalizedForms = [\n\t\"NFC\",\n\t\"NFD\",\n\t\"NFKC\",\n\t\"NFKD\"\n];\nconst preformattedNodes = flatMorph(normalizedForms, (i, form) => [form, rootSchema({\n\tdomain: \"string\",\n\tpredicate: (s) => s.normalize(form) === s,\n\tmeta: `${form}-normalized unicode`\n})]);\nconst normalizeNodes = flatMorph(normalizedForms, (i, form) => [form, rootSchema({\n\tin: \"string\",\n\tmorphs: (s) => s.normalize(form),\n\tdeclaredOut: preformattedNodes[form]\n})]);\nconst NFC = Scope.module({\n\troot: normalizeNodes.NFC,\n\tpreformatted: preformattedNodes.NFC\n}, { name: \"string.normalize.NFC\" });\nconst NFD = Scope.module({\n\troot: normalizeNodes.NFD,\n\tpreformatted: preformattedNodes.NFD\n}, { name: \"string.normalize.NFD\" });\nconst NFKC = Scope.module({\n\troot: normalizeNodes.NFKC,\n\tpreformatted: preformattedNodes.NFKC\n}, { name: \"string.normalize.NFKC\" });\nconst NFKD = Scope.module({\n\troot: normalizeNodes.NFKD,\n\tpreformatted: preformattedNodes.NFKD\n}, { name: \"string.normalize.NFKD\" });\nconst normalize = Scope.module({\n\troot: \"NFC\",\n\tNFC,\n\tNFD,\n\tNFKC,\n\tNFKD\n}, { name: \"string.normalize\" });\nconst numericRoot = regexStringNode(numericStringMatcher, \"a well-formed numeric string\");\nconst stringNumeric = Scope.module({\n\troot: numericRoot,\n\tparse: rootSchema({\n\t\tin: numericRoot,\n\t\tmorphs: (s) => Number.parseFloat(s),\n\t\tdeclaredOut: intrinsic.number\n\t})\n}, { name: \"string.numeric\" });\nconst regexPatternDescription = \"a regex pattern\";\nconst regex = rootSchema({\n\tdomain: \"string\",\n\tpredicate: {\n\t\tmeta: regexPatternDescription,\n\t\tpredicate: (s, ctx) => {\n\t\t\ttry {\n\t\t\t\tnew RegExp(s);\n\t\t\t\treturn true;\n\t\t\t} catch (e) {\n\t\t\t\treturn ctx.reject({\n\t\t\t\t\tcode: \"predicate\",\n\t\t\t\t\texpected: regexPatternDescription,\n\t\t\t\t\tproblem: String(e)\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t},\n\tmeta: { format: \"regex\" }\n});\nconst semver = regexStringNode(/^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[A-Za-z-][\\dA-Za-z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[A-Za-z-][\\dA-Za-z-]*))*))?(?:\\+([\\dA-Za-z-]+(?:\\.[\\dA-Za-z-]+)*))?$/, \"a semantic version (see https://semver.org/)\");\nconst preformattedTrim = regexStringNode(/^\\S.*\\S$|^\\S?$/, \"trimmed\");\nconst trim = Scope.module({\n\troot: rootSchema({\n\t\tin: \"string\",\n\t\tmorphs: (s) => s.trim(),\n\t\tdeclaredOut: preformattedTrim\n\t}),\n\tpreformatted: preformattedTrim\n}, { name: \"string.trim\" });\nconst preformattedUpper = regexStringNode(/^[A-Z]*$/, \"only uppercase letters\");\nconst upper = Scope.module({\n\troot: rootSchema({\n\t\tin: \"string\",\n\t\tmorphs: (s) => s.toUpperCase(),\n\t\tdeclaredOut: preformattedUpper\n\t}),\n\tpreformatted: preformattedUpper\n}, { name: \"string.upper\" });\nconst isParsableUrl = (s) => URL.canParse(s);\nconst urlRoot = rootSchema({\n\tdomain: \"string\",\n\tpredicate: {\n\t\tmeta: \"a URL string\",\n\t\tpredicate: isParsableUrl\n\t},\n\tmeta: { format: \"uri\" }\n});\nconst url = Scope.module({\n\troot: urlRoot,\n\tparse: rootSchema({\n\t\tdeclaredIn: urlRoot,\n\t\tin: \"string\",\n\t\tmorphs: (s, ctx) => {\n\t\t\ttry {\n\t\t\t\treturn new URL(s);\n\t\t\t} catch {\n\t\t\t\treturn ctx.error(\"a URL string\");\n\t\t\t}\n\t\t},\n\t\tdeclaredOut: rootSchema(URL)\n\t})\n}, { name: \"string.url\" });\nconst uuid = Scope.module({\n\troot: [\n\t\t\"versioned | nil | max\",\n\t\t\"@\",\n\t\t{\n\t\t\tdescription: \"a UUID\",\n\t\t\tformat: \"uuid\"\n\t\t}\n\t],\n\t\"#nil\": \"'00000000-0000-0000-0000-000000000000'\",\n\t\"#max\": \"'ffffffff-ffff-ffff-ffff-ffffffffffff'\",\n\t\"#versioned\": /^[\\da-f]{8}-[\\da-f]{4}-[1-8][\\da-f]{3}-[89ab][\\da-f]{3}-[\\da-f]{12}$/i,\n\tv1: regexStringNode(/^[\\da-f]{8}-[\\da-f]{4}-1[\\da-f]{3}-[89ab][\\da-f]{3}-[\\da-f]{12}$/i, \"a UUIDv1\"),\n\tv2: regexStringNode(/^[\\da-f]{8}-[\\da-f]{4}-2[\\da-f]{3}-[89ab][\\da-f]{3}-[\\da-f]{12}$/i, \"a UUIDv2\"),\n\tv3: regexStringNode(/^[\\da-f]{8}-[\\da-f]{4}-3[\\da-f]{3}-[89ab][\\da-f]{3}-[\\da-f]{12}$/i, \"a UUIDv3\"),\n\tv4: regexStringNode(/^[\\da-f]{8}-[\\da-f]{4}-4[\\da-f]{3}-[89ab][\\da-f]{3}-[\\da-f]{12}$/i, \"a UUIDv4\"),\n\tv5: regexStringNode(/^[\\da-f]{8}-[\\da-f]{4}-5[\\da-f]{3}-[89ab][\\da-f]{3}-[\\da-f]{12}$/i, \"a UUIDv5\"),\n\tv6: regexStringNode(/^[\\da-f]{8}-[\\da-f]{4}-6[\\da-f]{3}-[89ab][\\da-f]{3}-[\\da-f]{12}$/i, \"a UUIDv6\"),\n\tv7: regexStringNode(/^[\\da-f]{8}-[\\da-f]{4}-7[\\da-f]{3}-[89ab][\\da-f]{3}-[\\da-f]{12}$/i, \"a UUIDv7\"),\n\tv8: regexStringNode(/^[\\da-f]{8}-[\\da-f]{4}-8[\\da-f]{3}-[89ab][\\da-f]{3}-[\\da-f]{12}$/i, \"a UUIDv8\")\n}, { name: \"string.uuid\" });\nconst string = Scope.module({\n\troot: intrinsic.string,\n\talpha: regexStringNode(/^[A-Za-z]*$/, \"only letters\"),\n\talphanumeric: regexStringNode(/^[\\dA-Za-z]*$/, \"only letters and digits 0-9\"),\n\thex,\n\tbase64,\n\tcapitalize,\n\tcreditCard,\n\tdate: stringDate,\n\tdigits: regexStringNode(/^\\d*$/, \"only digits 0-9\"),\n\temail,\n\tinteger: stringInteger,\n\tip,\n\tjson: json$1,\n\tlower,\n\tnormalize,\n\tnumeric: stringNumeric,\n\tregex,\n\tsemver,\n\ttrim,\n\tupper,\n\turl,\n\tuuid\n}, { name: \"string\" });\n//#endregion\n//#region ../../../../node_modules/arktype/out/keywords/ts.js\nconst arkTsKeywords = Scope.module({\n\tbigint: intrinsic.bigint,\n\tboolean: intrinsic.boolean,\n\tfalse: intrinsic.false,\n\tnever: intrinsic.never,\n\tnull: intrinsic.null,\n\tnumber: intrinsic.number,\n\tobject: intrinsic.object,\n\tstring: intrinsic.string,\n\tsymbol: intrinsic.symbol,\n\ttrue: intrinsic.true,\n\tunknown: intrinsic.unknown,\n\tundefined: intrinsic.undefined\n});\nconst unknown = Scope.module({\n\troot: intrinsic.unknown,\n\tany: intrinsic.unknown\n}, { name: \"unknown\" });\nconst json = Scope.module({\n\troot: intrinsic.jsonObject,\n\tstringify: node(\"morph\", {\n\t\tin: intrinsic.jsonObject,\n\t\tmorphs: (data) => JSON.stringify(data),\n\t\tdeclaredOut: intrinsic.string\n\t})\n}, { name: \"object.json\" });\nconst object = Scope.module({\n\troot: intrinsic.object,\n\tjson\n}, { name: \"object\" });\nvar RecordHkt = class extends Hkt {\n\tdescription = \"instantiate an object from an index signature and corresponding value type like `Record(\\\"string\\\", \\\"number\\\")`\";\n};\nconst Record = genericNode([\"K\", intrinsic.key], \"V\")((args) => ({\n\tdomain: \"object\",\n\tindex: {\n\t\tsignature: args.K,\n\t\tvalue: args.V\n\t}\n}), RecordHkt);\nvar PickHkt = class extends Hkt {\n\tdescription = \"pick a set of properties from an object like `Pick(User, \\\"name | age\\\")`\";\n};\nconst Pick = genericNode([\"T\", intrinsic.object], [\"K\", intrinsic.key])((args) => args.T.pick(args.K), PickHkt);\nvar OmitHkt = class extends Hkt {\n\tdescription = \"omit a set of properties from an object like `Omit(User, \\\"age\\\")`\";\n};\nconst Omit = genericNode([\"T\", intrinsic.object], [\"K\", intrinsic.key])((args) => args.T.omit(args.K), OmitHkt);\nvar PartialHkt = class extends Hkt {\n\tdescription = \"make all named properties of an object optional like `Partial(User)`\";\n};\nconst Partial = genericNode([\"T\", intrinsic.object])((args) => args.T.partial(), PartialHkt);\nvar RequiredHkt = class extends Hkt {\n\tdescription = \"make all named properties of an object required like `Required(User)`\";\n};\nconst Required = genericNode([\"T\", intrinsic.object])((args) => args.T.required(), RequiredHkt);\nvar ExcludeHkt = class extends Hkt {\n\tdescription = \"exclude branches of a union like `Exclude(\\\"boolean\\\", \\\"true\\\")`\";\n};\nconst Exclude = genericNode(\"T\", \"U\")((args) => args.T.exclude(args.U), ExcludeHkt);\nvar ExtractHkt = class extends Hkt {\n\tdescription = \"extract branches of a union like `Extract(\\\"0 | false | 1\\\", \\\"number\\\")`\";\n};\nconst Extract = genericNode(\"T\", \"U\")((args) => args.T.extract(args.U), ExtractHkt);\nconst arkTsGenerics = Scope.module({\n\tExclude,\n\tExtract,\n\tOmit,\n\tPartial,\n\tPick,\n\tRecord,\n\tRequired\n});\n//#endregion\n//#region ../../../../node_modules/arktype/out/keywords/keywords.js\nconst ark = scope({\n\t...arkTsKeywords,\n\t...arkTsGenerics,\n\t...arkPrototypes,\n\t...arkBuiltins,\n\tstring,\n\tnumber,\n\tobject,\n\tunknown\n}, {\n\tprereducedAliases: true,\n\tname: \"ark\"\n});\nconst keywords = ark.export();\nObject.assign($arkTypeRegistry.ambient, keywords);\n$arkTypeRegistry.typeAttachments = {\n\tstring: keywords.string.root,\n\tnumber: keywords.number.root,\n\tbigint: keywords.bigint,\n\tboolean: keywords.boolean,\n\tsymbol: keywords.symbol,\n\tundefined: keywords.undefined,\n\tnull: keywords.null,\n\tobject: keywords.object.root,\n\tunknown: keywords.unknown.root,\n\tfalse: keywords.false,\n\ttrue: keywords.true,\n\tnever: keywords.never,\n\tarrayIndex: keywords.Array.index,\n\tKey: keywords.Key,\n\tRecord: keywords.Record,\n\tArray: keywords.Array.root,\n\tDate: keywords.Date\n};\nconst type = Object.assign(ark.type, $arkTypeRegistry.typeAttachments);\nark.match;\nark.fn;\nark.generic;\nark.schema;\nark.define;\nark.declare;\n//#endregion\n//#region ../../1-extensions/target/dist/serializer-CJiOhF2d.mjs\n/**\n* Walks a node's own params, then each dependency input's connection params —\n* the same enumeration order `configOf` uses, but carrying the raw\n* `ConfigParam` (with its `serialize`/`deserialize`) instead of a pure-data\n* projection.\n*/\nfunction paramEntries(node) {\n\tconst entries = [];\n\tfor (const [input, value] of Object.entries(node.inputs)) {\n\t\tif (typeof value !== \"object\" || value === null) continue;\n\t\tconst params = blindCast(value).connection.params;\n\t\tfor (const [name, param] of Object.entries(params)) entries.push({\n\t\t\towner: { input },\n\t\t\tname,\n\t\t\tparam\n\t\t});\n\t}\n\tfor (const [name, param] of Object.entries(node.params)) entries.push({\n\t\towner: \"service\",\n\t\tname,\n\t\tparam\n\t});\n\treturn entries;\n}\nconst configKey = (address, d) => {\n\tconst segments = address.split(\".\").filter((s) => s.length > 0);\n\tconst owner = d.owner === \"service\" ? [] : [d.owner.input];\n\treturn [\n\t\t\"COMPOSER\",\n\t\t...segments,\n\t\t...owner,\n\t\td.name\n\t].join(\"_\").toUpperCase();\n};\n/**\n* Typed value → its stored string. Service-own literals are JSON-encoded; a\n* dependency-input value is a provisioning ref at deploy (and a resolved\n* string at boot) and passes through untouched — LANDMINE: JSON-encoding it\n* would break the ordering edge Alchemy resolves through it.\n*/\nfunction encode(owner, value) {\n\treturn owner === \"service\" ? JSON.stringify(value) : blindCast(value);\n}\n/** Reverses `encode`: JSON-parse a service-own value, take a dependency-input value raw. */\nfunction decode(owner, raw) {\n\treturn owner === \"service\" ? JSON.parse(raw) : raw;\n}\nconst PARAM_POINTER_PREFIX = \"@composer-param-pointer:\";\n/** True iff `raw` is a param pointer row (as opposed to a JSON-encoded literal). */\nconst isParamPointerRow = (raw) => raw.startsWith(PARAM_POINTER_PREFIX);\n/** Reverses `encodeParamPointer`: the platform var NAME a pointer row points to. */\nconst decodeParamPointer = (raw) => raw.slice(24);\nfunction coerce(raw, d, key) {\n\tif (!(raw !== void 0 && raw !== \"\")) {\n\t\tif (d.param.default !== void 0) return d.param.default;\n\t\tif (d.param.optional === true) return void 0;\n\t\tthrow new Error(`missing required config param \"${d.name}\" (env ${key})`);\n\t}\n\tif (d.owner === \"service\" && isParamPointerRow(raw)) return coerceEnvSourcedParam(raw, d, key);\n\ttry {\n\t\treturn standardValidateSync(d.param.schema, decode(d.owner, raw));\n\t} catch (cause) {\n\t\tconst message = cause instanceof Error ? cause.message : String(cause);\n\t\tthrow new Error(`invalid value for config param \"${d.name}\" (env ${key}): ${message}`);\n\t}\n}\n/**\n* Boot resolution for an env-sourced param: double-lookup (pointer → platform\n* var), then the param's own schema on the raw string — no JSON decode, and\n* no redaction (it's config, not a secret). An UNSET platform var is a loud\n* boot failure naming both the param and the platform var; an EMPTY string is\n* not special-cased here — it reaches the schema like any other value, so it\n* passes iff the schema accepts it (deliberately unlike a literal param's own\n* \"\"-means-absent rule, and unlike a secret's non-empty requirement).\n*/\nfunction coerceEnvSourcedParam(raw, d, key) {\n\tconst platformVar = decodeParamPointer(raw);\n\tconst value = process.env[platformVar];\n\tif (value === void 0) throw new Error(`env-sourced config param \"${d.name}\" (env ${key} → ${platformVar}) is unset: the platform variable \"${platformVar}\" was not injected — the deploy did not provision it.`);\n\ttry {\n\t\treturn standardValidateSync(d.param.schema, value);\n\t} catch (cause) {\n\t\tconst message = cause instanceof Error ? cause.message : String(cause);\n\t\tthrow new Error(`invalid value for env-sourced config param \"${d.name}\" (env ${key} → ${platformVar}): ${message}`);\n\t}\n}\n/**\n* Boot: read each declared param from env by its key, reverse the param's own\n* serialization (missing/invalid fails loudly), assemble the typed Config.\n* Secrets ride a separate channel (deserializeSecrets), not this one.\n*/\nconst deserialize = (node, address) => {\n\tconst service = {};\n\tconst inputs = {};\n\tfor (const d of paramEntries(node)) {\n\t\tconst key = configKey(address, d);\n\t\tconst value = coerce(process.env[key], d, key);\n\t\tif (d.owner === \"service\") service[d.name] = value;\n\t\telse {\n\t\t\tlet bucket = inputs[d.owner.input];\n\t\t\tif (bucket === void 0) {\n\t\t\t\tbucket = {};\n\t\t\t\tinputs[d.owner.input] = bucket;\n\t\t\t}\n\t\t\tbucket[d.name] = value;\n\t\t}\n\t}\n\treturn {\n\t\tservice,\n\t\tinputs\n\t};\n};\n/**\n* run()'s setup step: write the resolved config to the environment under\n* address-free keys (configKey(\"\", d) + each serialize suffix), which load()\n* reads back with no address. Uses env, not a module variable, because a\n* framework may fork worker processes that inherit env but not memory.\n* Writes only these keys; nothing else is touched.\n*/\nconst stash = (node, config) => {\n\tfor (const d of paramEntries(node)) {\n\t\tconst value = d.owner === \"service\" ? config.service[d.name] : config.inputs[d.owner.input]?.[d.name];\n\t\tif (value === void 0) continue;\n\t\tprocess.env[configKey(\"\", d)] = encode(d.owner, value);\n\t}\n};\n/** The pointer-row key for a secret slot: COMPOSER_<addr>_<slot> (secrets are service-level). */\nconst secretKey = (address, slot) => configKey(address, {\n\towner: \"service\",\n\tname: slot\n});\n/**\n* Boot: resolve every secret slot to its value by double-lookup — read the\n* pointer key (the platform NAME), then read that platform var. A missing\n* pointer or a missing/empty platform value is a loud failure naming both keys.\n* Returns a plain Record for core's `hydrateSecrets` to box.\n*/\nconst deserializeSecrets = (node, address) => {\n\tconst values = {};\n\tfor (const slot of Object.keys(node.secretSlots)) {\n\t\tconst key = secretKey(address, slot);\n\t\tconst name = process.env[key];\n\t\tif (name === void 0 || name === \"\") throw new Error(`missing secret pointer for slot \"${slot}\" (env ${key}) — the deploy did not write it.`);\n\t\tconst value = process.env[name];\n\t\tif (value === void 0 || value === \"\") throw new Error(`secret \"${slot}\" is not provisioned (env ${key} → ${name}): the platform var \"${name}\" is unset or empty.`);\n\t\tvalues[slot] = value;\n\t}\n\treturn values;\n};\n/**\n* run()'s setup step for secrets: re-emit each slot's pointer NAME under its\n* address-free key, so the address-free `deserializeSecrets` double-looks-up\n* identically. Never the value — the value stays only in the platform var.\n*/\nconst stashSecrets = (node, address) => {\n\tfor (const slot of Object.keys(node.secretSlots)) {\n\t\tconst name = process.env[secretKey(address, slot)];\n\t\tif (name === void 0) continue;\n\t\tprocess.env[secretKey(\"\", slot)] = name;\n\t}\n};\n/**\n* Boot: for each reserved provider param, read its address-scoped row through\n* the same `coerce` a declared param uses (JSON-decode, schema-validate), and\n* re-emit it address-free — `stash`'s counterpart for this separate\n* declaration space. A param is declared optional here unconditionally: an\n* absent row means \"never provisioned\" (local dev, tests, a provider with no\n* registered value for this deploy), never a boot failure, so nothing is\n* stashed and the runtime reader that owns this slot falls back to its own\n* pass-through behavior.\n*/\nfunction stashProviderParams(entries, address) {\n\tfor (const entry of entries) {\n\t\tconst d = {\n\t\t\towner: \"service\",\n\t\t\tname: entry.name,\n\t\t\tparam: {\n\t\t\t\tschema: entry.schema,\n\t\t\t\toptional: true\n\t\t\t}\n\t\t};\n\t\tconst key = configKey(address, d);\n\t\tconst value = coerce(process.env[key], d, key);\n\t\tif (value === void 0) continue;\n\t\tprocess.env[configKey(\"\", d)] = encode(\"service\", value);\n\t}\n}\n/** The framework-resolved origin row: COMPOSER_<addr>_ORIGIN. Written per\n* compute service at serialize — the service's own provisioned endpoint URL,\n* riding the reserved-provider-param machinery (`origin-key.ts`'s\n* `ORIGIN_PARAM`); never a declared param, never in config(). A harness with\n* no deploy behind it supplies it by setting `COMPOSER_ORIGIN` to the\n* JSON-encoded origin URL — exactly how the existing entrypoint tests supply\n* their other `COMPOSER_*` rows. */\nconst ORIGIN_KEY_NAME = \"ORIGIN\";\n/**\n* Reads this service's origin back out of the address-free stash\n* `stashProviderParams` wrote for the ORIGIN entry. `COMPOSER_ORIGIN` unset is\n* a loud failure — a deployed environment always writes it, so an unset row\n* means either a local harness that hasn't supplied it or a boot() called\n* before run().\n*/\nfunction readOrigin() {\n\tconst d = {\n\t\towner: \"service\",\n\t\tname: ORIGIN_KEY_NAME,\n\t\tparam: {\n\t\t\tschema: type(\"string\"),\n\t\t\toptional: true\n\t\t}\n\t};\n\tconst key = configKey(\"\", d);\n\tconst value = coerce(process.env[key], d, key);\n\tif (value === void 0) throw new Error(\"this service's origin is not available (env COMPOSER_ORIGIN is unset) — a deployed environment writes it automatically; a local harness must supply it like any other config value (set COMPOSER_ORIGIN to the JSON-encoded origin URL).\");\n\treturn blindCast(value);\n}\n/** Synchronous Standard Schema validation — see the matching note in core's `config.ts`. */\nfunction standardValidateSync(schema, value) {\n\tconst result = schema[\"~standard\"].validate(value);\n\tif (result instanceof Promise) throw new Error(\"config param schema validation must be synchronous — async Standard Schema validators are not supported for config params\");\n\tif (result.issues !== void 0) throw new Error(`config param validation failed: ${result.issues.map((issue) => issue.message).join(\"; \")}`);\n\treturn result.value;\n}\n//#endregion\n//#region ../../../0-framework/2-authoring/service-rpc/dist/index.mjs\n/** ADR-0031's need brand for RPC's per-binding service key — the target registers a provisioner under this. */\nconst RPC_PEER_KEY = Symbol.for(\"prisma:rpc/per-binding-key\");\n//#endregion\n//#region ../../1-extensions/target/dist/provisioned-edges-C1wSO3cx.mjs\n/**\n* The service's own origin as a reserved provider param (ADR-0031): the ONE\n* brand and the ONE entry — shared by control.ts (which registers the\n* deploy-side value function that resolves the provisioned service's\n* `endpointDomain` — see its `selfOriginValue`) and compute.ts (which\n* validates and stashes the row at boot through the generic\n* `stashProviderParams` loop), so writer and reader cannot drift.\n*\n* Unlike the key-minting brands (`service-keys.ts`, `streams-keys.ts`) this\n* brand has no provisioner and no consumer edges: the value derives from the\n* service's OWN provisioned attributes, so control.ts registers it as a\n* service-derived provider param (`descriptors/shared.ts`'s\n* `ServiceProviderParam`) and the descriptor writes it for EVERY compute\n* service, exposing or not.\n*\n* This module is reachable from the RUNTIME/authoring side — it must never\n* import `@internal/lowering` or `effect`, or those tokens leak into a user\n* service's bundle (the deploy-side value function lives in control.ts, the\n* control-plane-only entry).\n*/\n/** ADR-0031's brand for the service's own origin — control.ts registers the deploy-side value function under this. */\nconst SELF_ORIGIN = Symbol.for(\"prisma:self-origin\");\n/**\n* The reserved provider param for the origin row: the var name is `ORIGIN`,\n* derived through `configKey` at both ends (`configKey(address, …)` at\n* deploy, `configKey('', …)` — `COMPOSER_ORIGIN` — at boot, where\n* `readOrigin` reads it back). `brand` is `SELF_ORIGIN` — control.ts looks\n* its deploy-side value function up by this field.\n*/\nconst ORIGIN_PARAM = {\n\tname: ORIGIN_KEY_NAME,\n\tschema: type(\"string\"),\n\tbrand: SELF_ORIGIN\n};\n/**\n* RPC's reserved provider param (ADR-0030/ADR-0031): the declaration —\n* name + schema + brand — for the accepted-keys set a provider stores, shared\n* by `control.ts` (which registers the deploy-side `value(refs)` that mints\n* and aggregates it — see its `rpcAcceptedKeysValue`) and `compute.ts` (which\n* validates and stashes it at boot), so writer and reader cannot drift.\n* Finding the edges themselves is `provisioned-edges.ts`'s generic,\n* brand-blind scan — RPC is not special-cased anywhere in this target.\n*\n* This module is reachable from the RUNTIME/authoring side — it must never\n* import `@internal/lowering` or `effect`, or those tokens leak into a user\n* service's bundle (the deploy-side `value(refs)` lives in control.ts, the\n* control-plane-only entry).\n*/\n/**\n* The reserved provider param for RPC's accepted-keys set: the var name is\n* `RPC_ACCEPTED_KEYS`, derived through `configKey` at both ends\n* (`configKey(address, …)` at deploy, `configKey('', …)` at boot — the\n* address-free form is `@internal/service-rpc`'s `RPC_ACCEPTED_KEYS_ENV`). `brand` is\n* `RPC_PEER_KEY`, the same brand `perBindingToken()`'s need carries — control.ts\n* looks its `value(refs)` up by this field.\n*/\nconst RPC_ACCEPTED_KEYS_PARAM = {\n\tname: \"RPC_ACCEPTED_KEYS\",\n\tschema: type(\"string[]\"),\n\tbrand: RPC_PEER_KEY\n};\n/** ADR-0031's need brand for the streams module's bearer key — control.ts registers the provisioner under this. */\nconst STREAMS_API_KEY = Symbol.for(\"prisma:streams/api-key\");\n/**\n* The reserved provider param for the streams bearer key: the var name is\n* `STREAMS_API_KEY`. `brand` is `STREAMS_API_KEY` itself (the same symbol\n* `streamsApiKeyNeed()`'s need carries) — control.ts looks its `value(refs)`\n* up by this field.\n*/\nconst STREAMS_API_KEY_PARAM = {\n\tname: \"STREAMS_API_KEY\",\n\tschema: type(\"string\"),\n\tbrand: STREAMS_API_KEY\n};\nconfigKey(\"\", {\n\towner: \"service\",\n\tname: STREAMS_API_KEY_PARAM.name\n});\n/**\n* The list of provider-side reserved params the boot path validates and\n* stashes (ADR-0031): every brand's `{name, schema, brand}` declaration,\n* collected from that brand's own module (`service-keys.ts`,\n* `streams-keys.ts`, `origin-key.ts`) so `compute.ts` names no brand itself.\n*\n* This list exists separately from `control.ts`'s deploy-side registry\n* (`PROVIDER_PARAMS`) because `control.ts` is deploy-only code — it imports\n* `@internal/lowering` and `effect` to mint values — and a booted service\n* must never import it. This module is reachable from a user service's\n* bundle through `compute.ts`, so it must never import `@internal/lowering`,\n* `effect`, `alchemy`, or `control.ts`.\n*\n* This is the single source of which reserved provider params exist:\n* control.ts builds `PROVIDER_PARAMS` by mapping over this list and looking\n* up each entry's deploy-side value function (edge-derived `value(refs)` or\n* service-derived `valueForService(provisioned, address)`) by its `brand`,\n* throwing at module load if one is missing. Adding a brand means adding its\n* entry here, plus its deploy-side value function in control.ts — a brand\n* registered for deploy but absent here is no longer expressible, because\n* deploy no longer names its own param set independently.\n*/\nconst RESERVED_PROVIDER_PARAMS = [\n\tRPC_ACCEPTED_KEYS_PARAM,\n\tSTREAMS_API_KEY_PARAM,\n\tORIGIN_PARAM\n];\nObject.freeze({\n\tkind: \"s3\",\n\t__cmp: {\n\t\turl: \"\",\n\t\tbucket: \"\",\n\t\taccessKeyId: \"\",\n\t\tsecretAccessKey: \"\"\n\t},\n\tsatisfies: (required) => required.kind === \"s3\"\n});\nconst reservedParams = { port: number$1({ default: 3e3 }) };\n/**\n* A Prisma Compute service — declarations only (deps + params + build + the\n* ports it exposes), no descriptor. `params` merges with the reserved\n* `ReservedParams` (`port`); a user param whose name collides with a reserved\n* one fails at authoring, the same way a colliding dependency name does.\n*\n* · run(address, boot) — the process controller: deserialize the platform\n* environment (keyed off `address`, the extension's ONE env read) into a\n* typed Config, re-emit it under address-free process-local stash keys,\n* then call boot() to start the app's entry.\n* · load() / config() — called from inside the app's entry: read the stash;\n* load() hydrates + memoizes the deps, config() returns the typed params.\n* Separate accessors so a dep and a param never share a namespace (ADR-0021).\n* · origin() — this service's platform-assigned public origin, read from the\n* stash `run()` populates; memoized per process.\n*\n* The underlying node carries `extension: '@prisma/composer-prisma-cloud'` —\n* the control-plane registry key `prisma-composer deploy` resolves through the\n* app's `prisma-composer.config.ts` (ADR-0017). This module loads nothing at\n* deploy time; nodes are pure data until run() or load() is called.\n*/\nvar ComputeService = class {\n\t#resolved;\n\t#loadedDeps;\n\t#loadedParams;\n\t#loadedSecrets;\n\t#origin;\n\tconstructor(node) {\n\t\tObject.assign(this, node);\n\t}\n\t#processConfig() {\n\t\tif (this.#resolved === void 0) this.#resolved = deserialize(this, \"\");\n\t\treturn this.#resolved;\n\t}\n\tasync run(address, boot) {\n\t\tconst config = deserialize(this, address);\n\t\tstash(this, config);\n\t\tstashProviderParams(RESERVED_PROVIDER_PARAMS, address);\n\t\tstashSecrets(this, address);\n\t\tconst port = config.service[\"port\"];\n\t\tif (typeof port === \"number\") process.env[\"PORT\"] = String(port);\n\t\treturn boot();\n\t}\n\tload() {\n\t\tif (this.#loadedDeps === void 0) this.#loadedDeps = blindCast(hydrateSync(this, this.#processConfig()));\n\t\treturn this.#loadedDeps;\n\t}\n\tconfig() {\n\t\tif (this.#loadedParams === void 0) this.#loadedParams = blindCast(this.#processConfig().service);\n\t\treturn this.#loadedParams;\n\t}\n\tsecrets() {\n\t\tif (this.#loadedSecrets === void 0) this.#loadedSecrets = blindCast(hydrateSecrets(this, deserializeSecrets(this, \"\")));\n\t\treturn this.#loadedSecrets;\n\t}\n\t/** This service's platform-assigned public origin — read from the stash\n\t* run() populates and memoized per process. Throws if called before run()\n\t* has stashed it (readOrigin's pinned message). */\n\torigin() {\n\t\tthis.#origin ??= readOrigin();\n\t\treturn this.#origin;\n\t}\n};\nconst compute = (def) => {\n\tconst userParams = def.params ?? blindCast({});\n\tfor (const reserved of Object.keys(reservedParams)) {\n\t\tif (reserved in def.deps) throw new Error(`compute(): dependency \"${reserved}\" collides with the reserved service param of the same name — rename the dependency.`);\n\t\tif (reserved in userParams) throw new Error(`compute(): param \"${reserved}\" collides with the reserved service param of the same name — rename the param.`);\n\t}\n\tfor (const name of Object.keys(userParams)) if (name.toUpperCase() === \"ORIGIN\") throw new Error(`compute(): param \"${name}\" collides with the framework-written origin row — rename the param.`);\n\tfor (const name of Object.keys(def.secrets ?? {})) if (name.toUpperCase() === \"ORIGIN\") throw new Error(`compute(): secret \"${name}\" collides with the framework-written origin row — rename the secret.`);\n\tconst params = blindCast({\n\t\t...userParams,\n\t\t...reservedParams\n\t});\n\tconst instance = new ComputeService(service$1({\n\t\tname: def.name,\n\t\textension: \"@prisma/composer-prisma-cloud\",\n\t\ttype: \"compute\",\n\t\tinputs: def.deps,\n\t\tparams,\n\t\t...def.secrets !== void 0 ? { secrets: def.secrets } : {},\n\t\tbuild: def.build,\n\t\t...def.expose !== void 0 ? { expose: def.expose } : {}\n\t}));\n\tObject.freeze(instance);\n\treturn instance;\n};\n/**\n* The contract a Postgres provides — and the contract its consumers require.\n* `satisfies` compares KIND, not identity: an extension module can be duplicated\n* across a workspace (same rationale as the Symbol.for node brand), and every\n* duplicate's contract must still satisfy. `__cmp` is the connection config a\n* postgres offers; core never inspects it.\n*/\nconst postgresContract = Object.freeze({\n\tkind: \"postgres\",\n\t__cmp: { url: \"\" },\n\tsatisfies: (required) => required.kind === \"postgres\"\n});\nfunction postgres(opts) {\n\tif (opts?.name !== void 0) return resource({\n\t\tname: opts.name,\n\t\textension: \"@prisma/composer-prisma-cloud\",\n\t\tprovides: postgresContract\n\t});\n\treturn dependency({\n\t\ttype: \"postgres\",\n\t\tconnection: {\n\t\t\tparams: { url: string$1() },\n\t\t\thydrate: (v) => v\n\t\t},\n\t\trequired: postgresContract\n\t});\n}\n/**\n* The contract the `s3-credentials` resource provides — a minted SigV4 key\n* pair. `satisfies` compares KIND only (mirrors `postgresContract`); `__cmp` is\n* the config the resource offers, which core never inspects.\n*/\nconst credentialsContract = Object.freeze({\n\tkind: \"credentials\",\n\t__cmp: {\n\t\taccessKeyId: \"\",\n\t\tsecretAccessKey: \"\"\n\t},\n\tsatisfies: (required) => required.kind === \"credentials\"\n});\nfunction s3Credentials(opts) {\n\tif (opts?.name !== void 0) return resource({\n\t\tname: opts.name,\n\t\textension: \"@prisma/composer-prisma-cloud\",\n\t\tprovides: credentialsContract\n\t});\n\treturn dependency({\n\t\ttype: \"credentials\",\n\t\tconnection: {\n\t\t\tparams: {\n\t\t\t\taccessKeyId: string$1(),\n\t\t\t\tsecretAccessKey: string$1()\n\t\t\t},\n\t\t\thydrate: (v) => v\n\t\t},\n\t\trequired: credentialsContract\n\t});\n}\n/**\n* The storage service authoring factory — a `compute` service routed to the\n* `s3-store` lowering instead of `compute`'s. It is exactly `compute`'s\n* runnable (run/load/config, deps, params, build, expose) with the routing\n* `type` overridden to `'s3-store'`: nothing at runtime keys off `type` (the\n* serializer keys off the deployment address and each param's owner/name, and\n* `load`/`config` off deps/params), so only the deploy-time descriptor lookup\n* sees the override and routes to the extended-output lowering (§ 5). The\n* return type is compute's exactly (including the reserved `port` param). The\n* storage module (D4b) calls this with its `db`/`credentials` deps, a `bucket`\n* param, and `expose: { store: s3Contract }`.\n*\n* `compute()`'s result is a `ComputeService` instance — its run/load/config/\n* secrets/origin methods live on the class prototype, not as the instance's\n* own properties, so a plain object spread (`{ ...node }`) would silently\n* drop them. Building a fresh `ComputeService` from the same data fields\n* (which `{ ...node }` DOES copy — they're the node's own enumerable\n* properties) with `type` overridden keeps every method intact.\n*/\nfunction s3StoreService(def) {\n\tconst instance = new ComputeService({\n\t\t...compute(def),\n\t\ttype: \"s3-store\"\n\t});\n\tObject.freeze(instance);\n\treturn instance;\n}\n//#endregion\n//#region src/contract.ts\nconst s3Contract = Object.freeze({\n\tkind: \"s3\",\n\t__cmp: {\n\t\turl: \"\",\n\t\tbucket: \"\",\n\t\taccessKeyId: \"\",\n\t\tsecretAccessKey: \"\"\n\t},\n\tsatisfies: (required) => required.kind === \"s3\"\n});\n//#endregion\n//#region src/storage-service.ts\n/**\n* The storage service node (like cron's `scheduler.ts` + `scheduler-service.ts`\n* combined): `storageService` builds the `s3-store` service — a Postgres `db`\n* dependency, a minted `credentials` dependency, a `bucket` param, and the\n* `store` port exposing `s3Contract`. The deploy bootstrap runs the\n* default-exported bare node (`main.run(address, boot)`); the real bucket comes\n* from serialized config at runtime, so the default's `bucket` is only a\n* placeholder — exactly like `scheduler-service.ts` default-exports\n* `cronScheduler({ jobs: [] })`.\n*/\nfunction storageService(opts) {\n\treturn s3StoreService({\n\t\tname: \"storage\",\n\t\tdeps: {\n\t\t\tdb: postgres(),\n\t\t\tcredentials: s3Credentials()\n\t\t},\n\t\tparams: { bucket: string$1({ default: opts.bucket }) },\n\t\tbuild: nodeBuild({\n\t\t\tmodule: new URL(\"./storage-service.mjs\", import.meta.url).href,\n\t\t\tentry: \"./storage-entrypoint.mjs\"\n\t\t}),\n\t\texpose: { store: s3Contract }\n\t});\n}\nstorageService({ bucket: \"storage\" });\n//#endregion\n//#region src/execution/storage-entrypoint.ts\nconst service = storageService({ bucket: \"storage\" });\nconst { db, credentials } = service.load();\nconst { bucket, port } = service.config();\nstartStorageServer({\n\tstore: await createPgStore(db.url),\n\tcredentials,\n\tbucket,\n\tport\n});\n//#endregion\nexport {};\n\n//# sourceMappingURL=storage-entrypoint.mjs.map"],"mappings":"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"}