@opencode-ai/cli-windows-arm64 0.0.0-beta-202606050413 → 0.0.0-beta-202606050635
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/{chunk-yjd4gfrw.js.map → chunk-01045avw.js.map} +1 -1
- package/bin/{chunk-7e33eexw.js.map → chunk-04aztn0b.js.map} +1 -1
- package/bin/{chunk-0w8srq86.js.map → chunk-15h0rnzn.js.map} +1 -1
- package/bin/{chunk-c405mav2.js.map → chunk-1sytpc6f.js.map} +1 -1
- package/bin/{chunk-yrctbw5z.js.map → chunk-261ddjb6.js.map} +1 -1
- package/bin/{chunk-g75pjf1s.js.map → chunk-2byrf7ep.js.map} +1 -1
- package/bin/{chunk-pzcbqccc.js.map → chunk-2rgvh087.js.map} +1 -1
- package/bin/{chunk-v5t5sfsa.js.map → chunk-2x3cdftk.js.map} +1 -1
- package/bin/{chunk-6t6j2syw.js.map → chunk-30axpd3c.js.map} +1 -1
- package/bin/{chunk-p7vb6q61.js.map → chunk-33dpck4r.js.map} +1 -1
- package/bin/{chunk-0zaxan0f.js.map → chunk-3a78h791.js.map} +1 -1
- package/bin/{chunk-37mqnge5.js.map → chunk-3ksmv4c2.js.map} +1 -1
- package/bin/{chunk-tp53m8fs.js.map → chunk-3nen48r7.js.map} +1 -1
- package/bin/{chunk-qxp1n90a.js.map → chunk-3q9y0mvz.js.map} +1 -1
- package/bin/{chunk-f5tfppa3.js.map → chunk-3ykfzv15.js.map} +1 -1
- package/bin/{chunk-753zwk10.js.map → chunk-40an6rst.js.map} +1 -1
- package/bin/{chunk-9pxszgex.js.map → chunk-4x714waw.js.map} +1 -1
- package/bin/{chunk-rt3p96q3.js.map → chunk-4xkbmehz.js.map} +1 -1
- package/bin/{chunk-b16pmd6c.js.map → chunk-4zhtpsfq.js.map} +1 -1
- package/bin/{chunk-9rp9xyz4.js.map → chunk-5h92s4pv.js.map} +2 -2
- package/bin/{chunk-7h3thzht.js.map → chunk-5jxfft74.js.map} +1 -1
- package/bin/{chunk-10g9mzpr.js.map → chunk-5kpn8vaw.js.map} +1 -1
- package/bin/{chunk-de8e7pt7.js.map → chunk-5qsmqhwr.js.map} +1 -1
- package/bin/{chunk-0m0ysqkf.js.map → chunk-64907mep.js.map} +1 -1
- package/bin/{chunk-en70h511.js.map → chunk-67nxqrwy.js.map} +2 -2
- package/bin/{chunk-mww4n4f4.js.map → chunk-6g2chb5m.js.map} +1 -1
- package/bin/chunk-6ytt419c.js.map +9 -0
- package/bin/{chunk-s6p78e64.js.map → chunk-7c6917we.js.map} +1 -1
- package/bin/{chunk-wzt86v8e.js.map → chunk-7dawkz9f.js.map} +1 -1
- package/bin/{chunk-j49r3r0h.js.map → chunk-7sbdkr3p.js.map} +1 -1
- package/bin/{chunk-rcbp13zr.js.map → chunk-7trxbwky.js.map} +1 -1
- package/bin/{chunk-vht6r6mg.js.map → chunk-7ttdyjym.js.map} +1 -1
- package/bin/{chunk-cxavw1f9.js.map → chunk-7vde01x1.js.map} +1 -1
- package/bin/{chunk-cq3s2bc3.js.map → chunk-7we8fer2.js.map} +2 -2
- package/bin/{chunk-0fd7e98q.js.map → chunk-80y0nhj5.js.map} +1 -1
- package/bin/{chunk-tx4d8n2c.js.map → chunk-86ey16ga.js.map} +1 -1
- package/bin/{chunk-ymbn2qrb.js.map → chunk-8hca861v.js.map} +1 -1
- package/bin/{chunk-sy53xwps.js.map → chunk-8p4fw9fs.js.map} +1 -1
- package/bin/chunk-8xynca5d.js.map +9 -0
- package/bin/{chunk-z6004x1f.js.map → chunk-93nep7kv.js.map} +1 -1
- package/bin/{chunk-1xcexrst.js.map → chunk-980aeczs.js.map} +2 -2
- package/bin/chunk-98cfxgcf.js.map +9 -0
- package/bin/{chunk-hhes0fb4.js.map → chunk-9fx74p59.js.map} +1 -1
- package/bin/{chunk-5vshf5d9.js.map → chunk-9gjqyzv9.js.map} +1 -1
- package/bin/{chunk-mb38k8t0.js.map → chunk-9ytt0sw5.js.map} +1 -1
- package/bin/{chunk-q8d3f8vv.js.map → chunk-a9y62fd0.js.map} +1 -1
- package/bin/chunk-ad029h3p.js.map +9 -0
- package/bin/{chunk-ppjn2gwr.js.map → chunk-agegs70a.js.map} +1 -1
- package/bin/{chunk-y1y94hd9.js.map → chunk-aq9vzzfd.js.map} +1 -1
- package/bin/{chunk-8g9cx71s.js.map → chunk-aqs1bcwb.js.map} +1 -1
- package/bin/{chunk-vqn23nvj.js.map → chunk-b0r7h3v7.js.map} +1 -1
- package/bin/{chunk-3n2hpq8t.js.map → chunk-bg6bs48j.js.map} +1 -1
- package/bin/{chunk-78g08k7w.js.map → chunk-bkxkz2gr.js.map} +1 -1
- package/bin/{chunk-4kkfbnqc.js.map → chunk-bkzz4gmj.js.map} +2 -2
- package/bin/{chunk-07t8c27r.js.map → chunk-bvg6tgkp.js.map} +22 -18
- package/bin/{chunk-59ag69w3.js.map → chunk-bwcw4v9v.js.map} +1 -1
- package/bin/{chunk-qsj8gt5c.js.map → chunk-cc2rmfa1.js.map} +1 -1
- package/bin/{chunk-6m6559kj.js.map → chunk-cmkpmz1t.js.map} +1 -1
- package/bin/{chunk-bt4a2b38.js.map → chunk-ddj7jhhs.js.map} +2 -2
- package/bin/{chunk-kbksyj8q.js.map → chunk-dm5bqjyj.js.map} +1 -1
- package/bin/{chunk-9y4bxd9z.js.map → chunk-dqfpb4xf.js.map} +1 -1
- package/bin/{chunk-61ex0ysa.js.map → chunk-dwt61cf9.js.map} +1 -1
- package/bin/{chunk-aqr51qaz.js.map → chunk-e9802ppg.js.map} +1 -1
- package/bin/{chunk-m31nxbnx.js.map → chunk-eajygmt3.js.map} +1 -1
- package/bin/{chunk-n5f9tqke.js.map → chunk-egxn625f.js.map} +1 -1
- package/bin/{chunk-1qafz13b.js.map → chunk-er0jf84x.js.map} +1 -1
- package/bin/chunk-et47enz9.js.map +9 -0
- package/bin/{chunk-8m4e6jm9.js.map → chunk-eyyhecap.js.map} +1 -1
- package/bin/{chunk-jwpekcgc.js.map → chunk-f3134cq8.js.map} +1 -1
- package/bin/{chunk-3s93j8bp.js.map → chunk-fcrwp5aw.js.map} +1 -1
- package/bin/{chunk-hcrstn1a.js.map → chunk-fczsbfxn.js.map} +1 -1
- package/bin/{chunk-087s56gx.js.map → chunk-fhmz5jzq.js.map} +2 -2
- package/bin/{chunk-jen69edq.js.map → chunk-g7js2td3.js.map} +2 -2
- package/bin/{chunk-9777kknm.js.map → chunk-g9257jec.js.map} +1 -1
- package/bin/{chunk-xtwd1g04.js.map → chunk-grhfspvr.js.map} +1 -1
- package/bin/{chunk-3n6fe6h1.js.map → chunk-grzxag2s.js.map} +1 -1
- package/bin/{chunk-vn7d3q1a.js.map → chunk-hbnsd8zc.js.map} +1 -1
- package/bin/{chunk-mjtn9njj.js.map → chunk-hdx1bfpk.js.map} +1 -1
- package/bin/{chunk-d2d2qyc8.js.map → chunk-hg7b8aq0.js.map} +1 -1
- package/bin/chunk-jd0wj7bc.js.map +10 -0
- package/bin/{chunk-24ytprtt.js.map → chunk-jngpmhcr.js.map} +1 -1
- package/bin/{chunk-aspg97y0.js.map → chunk-js3nmfy2.js.map} +1 -1
- package/bin/{chunk-bvgxtvy5.js.map → chunk-k553zsep.js.map} +1 -1
- package/bin/{chunk-sfvtysgk.js.map → chunk-kghggch5.js.map} +1 -1
- package/bin/{chunk-1v1eg9ea.js.map → chunk-kq6f5vzs.js.map} +1 -1
- package/bin/{chunk-778262wk.js.map → chunk-ktxh41y6.js.map} +1 -1
- package/bin/{chunk-v4k8v6ad.js.map → chunk-m2g8e58p.js.map} +1 -1
- package/bin/{chunk-wsc1m3ya.js.map → chunk-mdswrx0q.js.map} +1 -1
- package/bin/chunk-ndm1rc9r.js.map +9 -0
- package/bin/{chunk-r4xfgh1d.js.map → chunk-ng9550j6.js.map} +1 -1
- package/bin/{chunk-tjaapjgk.js.map → chunk-njtgwkja.js.map} +1 -1
- package/bin/{chunk-5czy6c2t.js.map → chunk-nrh3s9kj.js.map} +1 -1
- package/bin/{chunk-1m5frevr.js.map → chunk-pw5jrvsz.js.map} +1 -1
- package/bin/{chunk-0fxqxahr.js.map → chunk-q4nry60b.js.map} +1 -1
- package/bin/{chunk-4q3zgnq0.js.map → chunk-q95nk89x.js.map} +1 -1
- package/bin/{chunk-9t3ktng1.js.map → chunk-qb31328t.js.map} +1 -1
- package/bin/{chunk-addegf2c.js.map → chunk-qq9amzwy.js.map} +1 -1
- package/bin/{chunk-pvt3zcpb.js.map → chunk-qwj18b0z.js.map} +1 -1
- package/bin/{chunk-xnyqakct.js.map → chunk-rdm3kdj5.js.map} +2 -2
- package/bin/{chunk-6c8zad0q.js.map → chunk-rrwzn8rb.js.map} +1 -1
- package/bin/{chunk-f1dc53f5.js.map → chunk-rwny8wxq.js.map} +1 -1
- package/bin/{chunk-7p88mnrp.js.map → chunk-s6g5ddx9.js.map} +1 -1
- package/bin/{chunk-58crwv73.js.map → chunk-skmzxmeg.js.map} +1 -1
- package/bin/{chunk-9av9p5be.js.map → chunk-spxphc8w.js.map} +1 -1
- package/bin/{chunk-yj84ce63.js.map → chunk-t92mwyn8.js.map} +1 -1
- package/bin/{chunk-k12sqt5c.js.map → chunk-t994hgps.js.map} +1 -1
- package/bin/{chunk-z9nnfhja.js.map → chunk-tc8qmjh2.js.map} +1 -1
- package/bin/{chunk-m5rn1t9e.js.map → chunk-tdbzvbw1.js.map} +1 -1
- package/bin/{chunk-0twas8m4.js.map → chunk-tk15nqcn.js.map} +1 -1
- package/bin/{chunk-d6q844vr.js.map → chunk-tynrv6ej.js.map} +2 -2
- package/bin/{chunk-g2hzewm5.js.map → chunk-v2x99gvq.js.map} +2 -2
- package/bin/{chunk-1ks336sp.js.map → chunk-vk4g295y.js.map} +1 -1
- package/bin/{chunk-v6m6x911.js.map → chunk-vtkxz24g.js.map} +1 -1
- package/bin/chunk-vxqtbnnp.js.map +9 -0
- package/bin/chunk-vzay7hnb.js.map +9 -0
- package/bin/{chunk-m6jr02jt.js.map → chunk-w0j45wn7.js.map} +1 -1
- package/bin/{chunk-3h1gycas.js.map → chunk-w5mg9mph.js.map} +5 -4
- package/bin/{chunk-q2z8hcc9.js.map → chunk-wgqmktrv.js.map} +1 -1
- package/bin/{chunk-p9fsk8xk.js.map → chunk-wkjpmvj8.js.map} +1 -1
- package/bin/{chunk-047brskp.js.map → chunk-x2f3bprg.js.map} +1 -1
- package/bin/{chunk-d7en3gra.js.map → chunk-xp90638w.js.map} +1 -1
- package/bin/{chunk-1zdchkt5.js.map → chunk-y5r0p4x1.js.map} +2 -2
- package/bin/chunk-y77ez1ej.js.map +9 -0
- package/bin/{chunk-77cxfwjv.js.map → chunk-y9pjf57f.js.map} +1 -1
- package/bin/{chunk-6bm18v4w.js.map → chunk-ybv69n13.js.map} +1 -1
- package/bin/{chunk-x0j6zt83.js.map → chunk-yjnxmdx5.js.map} +1 -1
- package/bin/chunk-yqn407a0.js.map +9 -0
- package/bin/{chunk-tb0f4dfz.js.map → chunk-yzh9qfef.js.map} +1 -1
- package/bin/index.js.map +1 -1
- package/bin/lildax.exe +0 -0
- package/package.json +1 -1
- package/bin/chunk-h6jav6rr.js.map +0 -9
- package/bin/chunk-h77hc9q0.js.map +0 -9
- package/bin/chunk-j96y437a.js.map +0 -9
- package/bin/chunk-jscajwnx.js.map +0 -9
- package/bin/chunk-n4bc2p29.js.map +0 -9
- package/bin/chunk-ny339t5n.js.map +0 -9
- package/bin/chunk-ph8xj7gz.js.map +0 -9
- package/bin/chunk-qt4k35pb.js.map +0 -9
- package/bin/chunk-rg3jde5f.js.map +0 -9
- package/bin/chunk-z24btbc0.js.map +0 -9
- /package/bin/{chunk-c8jy587n.js.map → chunk-5cyqcfga.js.map} +0 -0
- /package/bin/{chunk-nyhw1wge.js.map → chunk-he4ra84x.js.map} +0 -0
- /package/bin/{chunk-fr19nwzq.js.map → chunk-m0gxctaj.js.map} +0 -0
- /package/bin/{chunk-mxmh510w.js.map → chunk-rvya8phr.js.map} +0 -0
- /package/bin/{chunk-z8txj8wr.js.map → chunk-v7w3zb97.js.map} +0 -0
- /package/bin/{chunk-ar99dprb.js.map → chunk-wcgtbzx3.js.map} +0 -0
- /package/bin/{chunk-a0wmwbtm.js.map → chunk-zc8g703n.js.map} +0 -0
|
@@ -11,6 +11,6 @@
|
|
|
11
11
|
"'use strict';\n\nvar node_crypto = require('node:crypto');\nvar node_fs = require('node:fs');\nvar transport = require('@smithy/core/transport');\nvar endpoints = require('@smithy/core/endpoints');\nvar node_stream = require('node:stream');\n\nconst isArrayBuffer = (arg) => (typeof ArrayBuffer === \"function\" && arg instanceof ArrayBuffer) ||\n Object.prototype.toString.call(arg) === \"[object ArrayBuffer]\";\n\nconst fromArrayBuffer = (input, offset = 0, length = input.byteLength - offset) => {\n if (!isArrayBuffer(input)) {\n throw new TypeError(`The \"input\" argument must be ArrayBuffer. Received type ${typeof input} (${input})`);\n }\n return Buffer.from(input, offset, length);\n};\nconst fromString = (input, encoding) => {\n if (typeof input !== \"string\") {\n throw new TypeError(`The \"input\" argument must be of type string. Received type ${typeof input} (${input})`);\n }\n return encoding ? Buffer.from(input, encoding) : Buffer.from(input);\n};\n\nconst BASE64_REGEX = /^[A-Za-z0-9+/]*={0,2}$/;\nconst fromBase64$1 = (input) => {\n if ((input.length * 3) % 4 !== 0) {\n throw new TypeError(`Incorrect padding on base64 string.`);\n }\n if (!BASE64_REGEX.exec(input)) {\n throw new TypeError(`Invalid base64 string.`);\n }\n const buffer = fromString(input, \"base64\");\n return new Uint8Array(buffer.buffer, buffer.byteOffset, buffer.byteLength);\n};\n\nconst fromUtf8$1 = (input) => {\n const buf = fromString(input, \"utf8\");\n return new Uint8Array(buf.buffer, buf.byteOffset, buf.byteLength / Uint8Array.BYTES_PER_ELEMENT);\n};\n\nconst toBase64$1 = (_input) => {\n let input;\n if (typeof _input === \"string\") {\n input = fromUtf8$1(_input);\n }\n else {\n input = _input;\n }\n if (typeof input !== \"object\" || typeof input.byteOffset !== \"number\" || typeof input.byteLength !== \"number\") {\n throw new Error(\"@smithy/util-base64: toBase64 encoder function only accepts string | Uint8Array.\");\n }\n return fromArrayBuffer(input.buffer, input.byteOffset, input.byteLength).toString(\"base64\");\n};\n\nfunction bindUint8ArrayBlobAdapter(toUtf8, fromUtf8, toBase64, fromBase64) {\n return class Uint8ArrayBlobAdapter extends Uint8Array {\n static fromString(source, encoding = \"utf-8\") {\n if (typeof source === \"string\") {\n if (encoding === \"base64\") {\n return Uint8ArrayBlobAdapter.mutate(fromBase64(source));\n }\n return Uint8ArrayBlobAdapter.mutate(fromUtf8(source));\n }\n throw new Error(`Unsupported conversion from ${typeof source} to Uint8ArrayBlobAdapter.`);\n }\n static mutate(source) {\n Object.setPrototypeOf(source, Uint8ArrayBlobAdapter.prototype);\n return source;\n }\n transformToString(encoding = \"utf-8\") {\n if (encoding === \"base64\") {\n return toBase64(this);\n }\n return toUtf8(this);\n }\n };\n}\n\nconst toUtf8$1 = (input) => {\n if (typeof input === \"string\") {\n return input;\n }\n if (typeof input !== \"object\" || typeof input.byteOffset !== \"number\" || typeof input.byteLength !== \"number\") {\n throw new Error(\"@smithy/util-utf8: toUtf8 encoder function only accepts string | Uint8Array.\");\n }\n return fromArrayBuffer(input.buffer, input.byteOffset, input.byteLength).toString(\"utf8\");\n};\n\nconst decimalToHex = Array.from({ length: 256 }, (_, i) => i.toString(16).padStart(2, \"0\"));\nfunction bindV4(getRandomValues) {\n if (typeof crypto !== \"undefined\" && typeof crypto.randomUUID === \"function\") {\n return () => crypto.randomUUID();\n }\n return () => {\n const rnds = new Uint8Array(16);\n getRandomValues(rnds);\n rnds[6] = (rnds[6] & 0x0f) | 0x40;\n rnds[8] = (rnds[8] & 0x3f) | 0x80;\n return (decimalToHex[rnds[0]] +\n decimalToHex[rnds[1]] +\n decimalToHex[rnds[2]] +\n decimalToHex[rnds[3]] +\n \"-\" +\n decimalToHex[rnds[4]] +\n decimalToHex[rnds[5]] +\n \"-\" +\n decimalToHex[rnds[6]] +\n decimalToHex[rnds[7]] +\n \"-\" +\n decimalToHex[rnds[8]] +\n decimalToHex[rnds[9]] +\n \"-\" +\n decimalToHex[rnds[10]] +\n decimalToHex[rnds[11]] +\n decimalToHex[rnds[12]] +\n decimalToHex[rnds[13]] +\n decimalToHex[rnds[14]] +\n decimalToHex[rnds[15]]);\n };\n}\n\nconst copyDocumentWithTransform = (source, schemaRef, transform = (_) => _) => source;\n\nconst parseBoolean = (value) => {\n switch (value) {\n case \"true\":\n return true;\n case \"false\":\n return false;\n default:\n throw new Error(`Unable to parse boolean value \"${value}\"`);\n }\n};\nconst expectBoolean = (value) => {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (typeof value === \"number\") {\n if (value === 0 || value === 1) {\n logger.warn(stackTraceWarning(`Expected boolean, got ${typeof value}: ${value}`));\n }\n if (value === 0) {\n return false;\n }\n if (value === 1) {\n return true;\n }\n }\n if (typeof value === \"string\") {\n const lower = value.toLowerCase();\n if (lower === \"false\" || lower === \"true\") {\n logger.warn(stackTraceWarning(`Expected boolean, got ${typeof value}: ${value}`));\n }\n if (lower === \"false\") {\n return false;\n }\n if (lower === \"true\") {\n return true;\n }\n }\n if (typeof value === \"boolean\") {\n return value;\n }\n throw new TypeError(`Expected boolean, got ${typeof value}: ${value}`);\n};\nconst expectNumber = (value) => {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (typeof value === \"string\") {\n const parsed = parseFloat(value);\n if (!Number.isNaN(parsed)) {\n if (String(parsed) !== String(value)) {\n logger.warn(stackTraceWarning(`Expected number but observed string: ${value}`));\n }\n return parsed;\n }\n }\n if (typeof value === \"number\") {\n return value;\n }\n throw new TypeError(`Expected number, got ${typeof value}: ${value}`);\n};\nconst MAX_FLOAT = Math.ceil(2 ** 127 * (2 - 2 ** -23));\nconst expectFloat32 = (value) => {\n const expected = expectNumber(value);\n if (expected !== undefined && !Number.isNaN(expected) && expected !== Infinity && expected !== -Infinity) {\n if (Math.abs(expected) > MAX_FLOAT) {\n throw new TypeError(`Expected 32-bit float, got ${value}`);\n }\n }\n return expected;\n};\nconst expectLong = (value) => {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (Number.isInteger(value) && !Number.isNaN(value)) {\n return value;\n }\n throw new TypeError(`Expected integer, got ${typeof value}: ${value}`);\n};\nconst expectInt = expectLong;\nconst expectInt32 = (value) => expectSizedInt(value, 32);\nconst expectShort = (value) => expectSizedInt(value, 16);\nconst expectByte = (value) => expectSizedInt(value, 8);\nconst expectSizedInt = (value, size) => {\n const expected = expectLong(value);\n if (expected !== undefined && castInt(expected, size) !== expected) {\n throw new TypeError(`Expected ${size}-bit integer, got ${value}`);\n }\n return expected;\n};\nconst castInt = (value, size) => {\n switch (size) {\n case 32:\n return Int32Array.of(value)[0];\n case 16:\n return Int16Array.of(value)[0];\n case 8:\n return Int8Array.of(value)[0];\n }\n};\nconst expectNonNull = (value, location) => {\n if (value === null || value === undefined) {\n if (location) {\n throw new TypeError(`Expected a non-null value for ${location}`);\n }\n throw new TypeError(\"Expected a non-null value\");\n }\n return value;\n};\nconst expectObject = (value) => {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (typeof value === \"object\" && !Array.isArray(value)) {\n return value;\n }\n const receivedType = Array.isArray(value) ? \"array\" : typeof value;\n throw new TypeError(`Expected object, got ${receivedType}: ${value}`);\n};\nconst expectString = (value) => {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (typeof value === \"string\") {\n return value;\n }\n if ([\"boolean\", \"number\", \"bigint\"].includes(typeof value)) {\n logger.warn(stackTraceWarning(`Expected string, got ${typeof value}: ${value}`));\n return String(value);\n }\n throw new TypeError(`Expected string, got ${typeof value}: ${value}`);\n};\nconst expectUnion = (value) => {\n if (value === null || value === undefined) {\n return undefined;\n }\n const asObject = expectObject(value);\n const setKeys = [];\n for (const k in asObject) {\n if (asObject[k] != null) {\n setKeys.push(k);\n }\n }\n if (setKeys.length === 0) {\n throw new TypeError(`Unions must have exactly one non-null member. None were found.`);\n }\n if (setKeys.length > 1) {\n throw new TypeError(`Unions must have exactly one non-null member. Keys ${setKeys} were not null.`);\n }\n return asObject;\n};\nconst strictParseDouble = (value) => {\n if (typeof value == \"string\") {\n return expectNumber(parseNumber(value));\n }\n return expectNumber(value);\n};\nconst strictParseFloat = strictParseDouble;\nconst strictParseFloat32 = (value) => {\n if (typeof value == \"string\") {\n return expectFloat32(parseNumber(value));\n }\n return expectFloat32(value);\n};\nconst NUMBER_REGEX = /(-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?)|(-?Infinity)|(NaN)/g;\nconst parseNumber = (value) => {\n const matches = value.match(NUMBER_REGEX);\n if (matches === null || matches[0].length !== value.length) {\n throw new TypeError(`Expected real number, got implicit NaN`);\n }\n return parseFloat(value);\n};\nconst limitedParseDouble = (value) => {\n if (typeof value == \"string\") {\n return parseFloatString(value);\n }\n return expectNumber(value);\n};\nconst handleFloat = limitedParseDouble;\nconst limitedParseFloat = limitedParseDouble;\nconst limitedParseFloat32 = (value) => {\n if (typeof value == \"string\") {\n return parseFloatString(value);\n }\n return expectFloat32(value);\n};\nconst parseFloatString = (value) => {\n switch (value) {\n case \"NaN\":\n return NaN;\n case \"Infinity\":\n return Infinity;\n case \"-Infinity\":\n return -Infinity;\n default:\n throw new Error(`Unable to parse float value: ${value}`);\n }\n};\nconst strictParseLong = (value) => {\n if (typeof value === \"string\") {\n return expectLong(parseNumber(value));\n }\n return expectLong(value);\n};\nconst strictParseInt = strictParseLong;\nconst strictParseInt32 = (value) => {\n if (typeof value === \"string\") {\n return expectInt32(parseNumber(value));\n }\n return expectInt32(value);\n};\nconst strictParseShort = (value) => {\n if (typeof value === \"string\") {\n return expectShort(parseNumber(value));\n }\n return expectShort(value);\n};\nconst strictParseByte = (value) => {\n if (typeof value === \"string\") {\n return expectByte(parseNumber(value));\n }\n return expectByte(value);\n};\nconst stackTraceWarning = (message) => {\n return String(new TypeError(message).stack || message)\n .split(\"\\n\")\n .slice(0, 5)\n .filter((s) => !s.includes(\"stackTraceWarning\"))\n .join(\"\\n\");\n};\nconst logger = {\n warn: console.warn,\n};\n\nconst DAYS = [\"Sun\", \"Mon\", \"Tue\", \"Wed\", \"Thu\", \"Fri\", \"Sat\"];\nconst MONTHS = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\nfunction dateToUtcString(date) {\n const year = date.getUTCFullYear();\n const month = date.getUTCMonth();\n const dayOfWeek = date.getUTCDay();\n const dayOfMonthInt = date.getUTCDate();\n const hoursInt = date.getUTCHours();\n const minutesInt = date.getUTCMinutes();\n const secondsInt = date.getUTCSeconds();\n const dayOfMonthString = dayOfMonthInt < 10 ? `0${dayOfMonthInt}` : `${dayOfMonthInt}`;\n const hoursString = hoursInt < 10 ? `0${hoursInt}` : `${hoursInt}`;\n const minutesString = minutesInt < 10 ? `0${minutesInt}` : `${minutesInt}`;\n const secondsString = secondsInt < 10 ? `0${secondsInt}` : `${secondsInt}`;\n return `${DAYS[dayOfWeek]}, ${dayOfMonthString} ${MONTHS[month]} ${year} ${hoursString}:${minutesString}:${secondsString} GMT`;\n}\nconst RFC3339 = new RegExp(/^(\\d{4})-(\\d{2})-(\\d{2})[tT](\\d{2}):(\\d{2}):(\\d{2})(?:\\.(\\d+))?[zZ]$/);\nconst parseRfc3339DateTime = (value) => {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (typeof value !== \"string\") {\n throw new TypeError(\"RFC-3339 date-times must be expressed as strings\");\n }\n const match = RFC3339.exec(value);\n if (!match) {\n throw new TypeError(\"Invalid RFC-3339 date-time value\");\n }\n const [_, yearStr, monthStr, dayStr, hours, minutes, seconds, fractionalMilliseconds] = match;\n const year = strictParseShort(stripLeadingZeroes(yearStr));\n const month = parseDateValue(monthStr, \"month\", 1, 12);\n const day = parseDateValue(dayStr, \"day\", 1, 31);\n return buildDate(year, month, day, { hours, minutes, seconds, fractionalMilliseconds });\n};\nconst RFC3339_WITH_OFFSET$1 = new RegExp(/^(\\d{4})-(\\d{2})-(\\d{2})[tT](\\d{2}):(\\d{2}):(\\d{2})(?:\\.(\\d+))?(([-+]\\d{2}\\:\\d{2})|[zZ])$/);\nconst parseRfc3339DateTimeWithOffset = (value) => {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (typeof value !== \"string\") {\n throw new TypeError(\"RFC-3339 date-times must be expressed as strings\");\n }\n const match = RFC3339_WITH_OFFSET$1.exec(value);\n if (!match) {\n throw new TypeError(\"Invalid RFC-3339 date-time value\");\n }\n const [_, yearStr, monthStr, dayStr, hours, minutes, seconds, fractionalMilliseconds, offsetStr] = match;\n const year = strictParseShort(stripLeadingZeroes(yearStr));\n const month = parseDateValue(monthStr, \"month\", 1, 12);\n const day = parseDateValue(dayStr, \"day\", 1, 31);\n const date = buildDate(year, month, day, { hours, minutes, seconds, fractionalMilliseconds });\n if (offsetStr.toUpperCase() != \"Z\") {\n date.setTime(date.getTime() - parseOffsetToMilliseconds(offsetStr));\n }\n return date;\n};\nconst IMF_FIXDATE$1 = new RegExp(/^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\\d{2}) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\\d{4}) (\\d{1,2}):(\\d{2}):(\\d{2})(?:\\.(\\d+))? GMT$/);\nconst RFC_850_DATE$1 = new RegExp(/^(?:Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\\d{2})-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\\d{2}) (\\d{1,2}):(\\d{2}):(\\d{2})(?:\\.(\\d+))? GMT$/);\nconst ASC_TIME$1 = new RegExp(/^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( [1-9]|\\d{2}) (\\d{1,2}):(\\d{2}):(\\d{2})(?:\\.(\\d+))? (\\d{4})$/);\nconst parseRfc7231DateTime = (value) => {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (typeof value !== \"string\") {\n throw new TypeError(\"RFC-7231 date-times must be expressed as strings\");\n }\n let match = IMF_FIXDATE$1.exec(value);\n if (match) {\n const [_, dayStr, monthStr, yearStr, hours, minutes, seconds, fractionalMilliseconds] = match;\n return buildDate(strictParseShort(stripLeadingZeroes(yearStr)), parseMonthByShortName(monthStr), parseDateValue(dayStr, \"day\", 1, 31), { hours, minutes, seconds, fractionalMilliseconds });\n }\n match = RFC_850_DATE$1.exec(value);\n if (match) {\n const [_, dayStr, monthStr, yearStr, hours, minutes, seconds, fractionalMilliseconds] = match;\n return adjustRfc850Year(buildDate(parseTwoDigitYear(yearStr), parseMonthByShortName(monthStr), parseDateValue(dayStr, \"day\", 1, 31), {\n hours,\n minutes,\n seconds,\n fractionalMilliseconds,\n }));\n }\n match = ASC_TIME$1.exec(value);\n if (match) {\n const [_, monthStr, dayStr, hours, minutes, seconds, fractionalMilliseconds, yearStr] = match;\n return buildDate(strictParseShort(stripLeadingZeroes(yearStr)), parseMonthByShortName(monthStr), parseDateValue(dayStr.trimLeft(), \"day\", 1, 31), { hours, minutes, seconds, fractionalMilliseconds });\n }\n throw new TypeError(\"Invalid RFC-7231 date-time value\");\n};\nconst parseEpochTimestamp = (value) => {\n if (value === null || value === undefined) {\n return undefined;\n }\n let valueAsDouble;\n if (typeof value === \"number\") {\n valueAsDouble = value;\n }\n else if (typeof value === \"string\") {\n valueAsDouble = strictParseDouble(value);\n }\n else if (typeof value === \"object\" && value.tag === 1) {\n valueAsDouble = value.value;\n }\n else {\n throw new TypeError(\"Epoch timestamps must be expressed as floating point numbers or their string representation\");\n }\n if (Number.isNaN(valueAsDouble) || valueAsDouble === Infinity || valueAsDouble === -Infinity) {\n throw new TypeError(\"Epoch timestamps must be valid, non-Infinite, non-NaN numerics\");\n }\n return new Date(Math.round(valueAsDouble * 1000));\n};\nconst buildDate = (year, month, day, time) => {\n const adjustedMonth = month - 1;\n validateDayOfMonth(year, adjustedMonth, day);\n return new Date(Date.UTC(year, adjustedMonth, day, parseDateValue(time.hours, \"hour\", 0, 23), parseDateValue(time.minutes, \"minute\", 0, 59), parseDateValue(time.seconds, \"seconds\", 0, 60), parseMilliseconds(time.fractionalMilliseconds)));\n};\nconst parseTwoDigitYear = (value) => {\n const thisYear = new Date().getUTCFullYear();\n const valueInThisCentury = Math.floor(thisYear / 100) * 100 + strictParseShort(stripLeadingZeroes(value));\n if (valueInThisCentury < thisYear) {\n return valueInThisCentury + 100;\n }\n return valueInThisCentury;\n};\nconst FIFTY_YEARS_IN_MILLIS = 50 * 365 * 24 * 60 * 60 * 1000;\nconst adjustRfc850Year = (input) => {\n if (input.getTime() - new Date().getTime() > FIFTY_YEARS_IN_MILLIS) {\n return new Date(Date.UTC(input.getUTCFullYear() - 100, input.getUTCMonth(), input.getUTCDate(), input.getUTCHours(), input.getUTCMinutes(), input.getUTCSeconds(), input.getUTCMilliseconds()));\n }\n return input;\n};\nconst parseMonthByShortName = (value) => {\n const monthIdx = MONTHS.indexOf(value);\n if (monthIdx < 0) {\n throw new TypeError(`Invalid month: ${value}`);\n }\n return monthIdx + 1;\n};\nconst DAYS_IN_MONTH = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];\nconst validateDayOfMonth = (year, month, day) => {\n let maxDays = DAYS_IN_MONTH[month];\n if (month === 1 && isLeapYear(year)) {\n maxDays = 29;\n }\n if (day > maxDays) {\n throw new TypeError(`Invalid day for ${MONTHS[month]} in ${year}: ${day}`);\n }\n};\nconst isLeapYear = (year) => {\n return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);\n};\nconst parseDateValue = (value, type, lower, upper) => {\n const dateVal = strictParseByte(stripLeadingZeroes(value));\n if (dateVal < lower || dateVal > upper) {\n throw new TypeError(`${type} must be between ${lower} and ${upper}, inclusive`);\n }\n return dateVal;\n};\nconst parseMilliseconds = (value) => {\n if (value === null || value === undefined) {\n return 0;\n }\n return strictParseFloat32(\"0.\" + value) * 1000;\n};\nconst parseOffsetToMilliseconds = (value) => {\n const directionStr = value[0];\n let direction = 1;\n if (directionStr == \"+\") {\n direction = 1;\n }\n else if (directionStr == \"-\") {\n direction = -1;\n }\n else {\n throw new TypeError(`Offset direction, ${directionStr}, must be \"+\" or \"-\"`);\n }\n const hour = Number(value.substring(1, 3));\n const minute = Number(value.substring(4, 6));\n return direction * (hour * 60 + minute) * 60 * 1000;\n};\nconst stripLeadingZeroes = (value) => {\n let idx = 0;\n while (idx < value.length - 1 && value.charAt(idx) === \"0\") {\n idx++;\n }\n if (idx === 0) {\n return value;\n }\n return value.slice(idx);\n};\n\nconst LazyJsonString = function LazyJsonString(val) {\n const str = Object.assign(new String(val), {\n deserializeJSON() {\n return JSON.parse(String(val));\n },\n toString() {\n return String(val);\n },\n toJSON() {\n return String(val);\n },\n });\n return str;\n};\nLazyJsonString.from = (object) => {\n if (object && typeof object === \"object\" && (object instanceof LazyJsonString || \"deserializeJSON\" in object)) {\n return object;\n }\n else if (typeof object === \"string\" || Object.getPrototypeOf(object) === String.prototype) {\n return LazyJsonString(String(object));\n }\n return LazyJsonString(JSON.stringify(object));\n};\nLazyJsonString.fromObject = LazyJsonString.from;\n\nfunction quoteHeader(part) {\n if (part.includes(\",\") || part.includes('\"')) {\n part = `\"${part.replace(/\"/g, '\\\\\"')}\"`;\n }\n return part;\n}\n\nconst ddd = `(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun)(?:[ne|u?r]?s?day)?`;\nconst mmm = `(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)`;\nconst time = `(\\\\d?\\\\d):(\\\\d{2}):(\\\\d{2})(?:\\\\.(\\\\d+))?`;\nconst date = `(\\\\d?\\\\d)`;\nconst year = `(\\\\d{4})`;\nconst RFC3339_WITH_OFFSET = new RegExp(/^(\\d{4})-(\\d\\d)-(\\d\\d)[tT](\\d\\d):(\\d\\d):(\\d\\d)(\\.(\\d+))?(([-+]\\d\\d:\\d\\d)|[zZ])$/);\nconst IMF_FIXDATE = new RegExp(`^${ddd}, ${date} ${mmm} ${year} ${time} GMT$`);\nconst RFC_850_DATE = new RegExp(`^${ddd}, ${date}-${mmm}-(\\\\d\\\\d) ${time} GMT$`);\nconst ASC_TIME = new RegExp(`^${ddd} ${mmm} ( [1-9]|\\\\d\\\\d) ${time} ${year}$`);\nconst months = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\nconst _parseEpochTimestamp = (value) => {\n if (value == null) {\n return void 0;\n }\n let num = NaN;\n if (typeof value === \"number\") {\n num = value;\n }\n else if (typeof value === \"string\") {\n if (!/^-?\\d*\\.?\\d+$/.test(value)) {\n throw new TypeError(`parseEpochTimestamp - numeric string invalid.`);\n }\n num = Number.parseFloat(value);\n }\n else if (typeof value === \"object\" && value.tag === 1) {\n num = value.value;\n }\n if (isNaN(num) || Math.abs(num) === Infinity) {\n throw new TypeError(\"Epoch timestamps must be valid finite numbers.\");\n }\n return new Date(Math.round(num * 1000));\n};\nconst _parseRfc3339DateTimeWithOffset = (value) => {\n if (value == null) {\n return void 0;\n }\n if (typeof value !== \"string\") {\n throw new TypeError(\"RFC3339 timestamps must be strings\");\n }\n const matches = RFC3339_WITH_OFFSET.exec(value);\n if (!matches) {\n throw new TypeError(`Invalid RFC3339 timestamp format ${value}`);\n }\n const [, yearStr, monthStr, dayStr, hours, minutes, seconds, , ms, offsetStr] = matches;\n range(monthStr, 1, 12);\n range(dayStr, 1, 31);\n range(hours, 0, 23);\n range(minutes, 0, 59);\n range(seconds, 0, 60);\n const date = new Date(Date.UTC(Number(yearStr), Number(monthStr) - 1, Number(dayStr), Number(hours), Number(minutes), Number(seconds), Number(ms) ? Math.round(parseFloat(`0.${ms}`) * 1000) : 0));\n date.setUTCFullYear(Number(yearStr));\n if (offsetStr.toUpperCase() != \"Z\") {\n const [, sign, offsetH, offsetM] = /([+-])(\\d\\d):(\\d\\d)/.exec(offsetStr) || [void 0, \"+\", 0, 0];\n const scalar = sign === \"-\" ? 1 : -1;\n date.setTime(date.getTime() + scalar * (Number(offsetH) * 60 * 60 * 1000 + Number(offsetM) * 60 * 1000));\n }\n return date;\n};\nconst _parseRfc7231DateTime = (value) => {\n if (value == null) {\n return void 0;\n }\n if (typeof value !== \"string\") {\n throw new TypeError(\"RFC7231 timestamps must be strings.\");\n }\n let day;\n let month;\n let year;\n let hour;\n let minute;\n let second;\n let fraction;\n let matches;\n if ((matches = IMF_FIXDATE.exec(value))) {\n [, day, month, year, hour, minute, second, fraction] = matches;\n }\n else if ((matches = RFC_850_DATE.exec(value))) {\n [, day, month, year, hour, minute, second, fraction] = matches;\n year = (Number(year) + 1900).toString();\n }\n else if ((matches = ASC_TIME.exec(value))) {\n [, month, day, hour, minute, second, fraction, year] = matches;\n }\n if (year && second) {\n const timestamp = Date.UTC(Number(year), months.indexOf(month), Number(day), Number(hour), Number(minute), Number(second), fraction ? Math.round(parseFloat(`0.${fraction}`) * 1000) : 0);\n range(day, 1, 31);\n range(hour, 0, 23);\n range(minute, 0, 59);\n range(second, 0, 60);\n const date = new Date(timestamp);\n date.setUTCFullYear(Number(year));\n return date;\n }\n throw new TypeError(`Invalid RFC7231 date-time value ${value}.`);\n};\nfunction range(v, min, max) {\n const _v = Number(v);\n if (_v < min || _v > max) {\n throw new Error(`Value ${_v} out of range [${min}, ${max}]`);\n }\n}\n\nfunction splitEvery(value, delimiter, numDelimiters) {\n if (numDelimiters <= 0 || !Number.isInteger(numDelimiters)) {\n throw new Error(\"Invalid number of delimiters (\" + numDelimiters + \") for splitEvery.\");\n }\n const segments = value.split(delimiter);\n if (numDelimiters === 1) {\n return segments;\n }\n const compoundSegments = [];\n let currentSegment = \"\";\n for (let i = 0; i < segments.length; i++) {\n if (currentSegment === \"\") {\n currentSegment = segments[i];\n }\n else {\n currentSegment += delimiter + segments[i];\n }\n if ((i + 1) % numDelimiters === 0) {\n compoundSegments.push(currentSegment);\n currentSegment = \"\";\n }\n }\n if (currentSegment !== \"\") {\n compoundSegments.push(currentSegment);\n }\n return compoundSegments;\n}\n\nconst splitHeader = (value) => {\n const z = value.length;\n const values = [];\n let withinQuotes = false;\n let prevChar = undefined;\n let anchor = 0;\n for (let i = 0; i < z; ++i) {\n const char = value[i];\n switch (char) {\n case `\"`:\n if (prevChar !== \"\\\\\") {\n withinQuotes = !withinQuotes;\n }\n break;\n case \",\":\n if (!withinQuotes) {\n values.push(value.slice(anchor, i));\n anchor = i + 1;\n }\n break;\n }\n prevChar = char;\n }\n values.push(value.slice(anchor));\n return values.map((v) => {\n v = v.trim();\n const z = v.length;\n if (z < 2) {\n return v;\n }\n if (v[0] === `\"` && v[z - 1] === `\"`) {\n v = v.slice(1, z - 1);\n }\n return v.replace(/\\\\\"/g, '\"');\n });\n};\n\nconst format = /^-?\\d*(\\.\\d+)?$/;\nclass NumericValue {\n string;\n type;\n constructor(string, type) {\n this.string = string;\n this.type = type;\n if (!format.test(string)) {\n throw new Error(`@smithy/core/serde - NumericValue must only contain [0-9], at most one decimal point \".\", and an optional negation prefix \"-\".`);\n }\n }\n toString() {\n return this.string;\n }\n static [Symbol.hasInstance](object) {\n if (!object || typeof object !== \"object\") {\n return false;\n }\n const _nv = object;\n return NumericValue.prototype.isPrototypeOf(object) || (_nv.type === \"bigDecimal\" && format.test(_nv.string));\n }\n}\nfunction nv(input) {\n return new NumericValue(String(input), \"bigDecimal\");\n}\n\nconst SHORT_TO_HEX = {};\nconst HEX_TO_SHORT = {};\nfor (let i = 0; i < 256; i++) {\n let encodedByte = i.toString(16).toLowerCase();\n if (encodedByte.length === 1) {\n encodedByte = `0${encodedByte}`;\n }\n SHORT_TO_HEX[i] = encodedByte;\n HEX_TO_SHORT[encodedByte] = i;\n}\nfunction fromHex(encoded) {\n if (encoded.length % 2 !== 0) {\n throw new Error(\"Hex encoded strings must have an even number length\");\n }\n const out = new Uint8Array(encoded.length / 2);\n for (let i = 0; i < encoded.length; i += 2) {\n const encodedByte = encoded.slice(i, i + 2).toLowerCase();\n if (encodedByte in HEX_TO_SHORT) {\n out[i / 2] = HEX_TO_SHORT[encodedByte];\n }\n else {\n throw new Error(`Cannot decode unrecognized sequence ${encodedByte} as hexadecimal`);\n }\n }\n return out;\n}\nfunction toHex(bytes) {\n let out = \"\";\n for (let i = 0; i < bytes.byteLength; i++) {\n out += SHORT_TO_HEX[bytes[i]];\n }\n return out;\n}\n\nconst calculateBodyLength = (body) => {\n if (!body) {\n return 0;\n }\n if (typeof body === \"string\") {\n return Buffer.byteLength(body);\n }\n else if (typeof body.byteLength === \"number\") {\n return body.byteLength;\n }\n else if (typeof body.size === \"number\") {\n return body.size;\n }\n else if (typeof body.start === \"number\" && typeof body.end === \"number\") {\n return body.end + 1 - body.start;\n }\n else if (body instanceof node_fs.ReadStream) {\n if (body.path != null) {\n return node_fs.lstatSync(body.path).size;\n }\n else if (typeof body.fd === \"number\") {\n return node_fs.fstatSync(body.fd).size;\n }\n }\n throw new Error(`Body Length computation failed for ${body}`);\n};\n\nconst toUint8Array = (data) => {\n if (typeof data === \"string\") {\n return fromUtf8$1(data);\n }\n if (ArrayBuffer.isView(data)) {\n return new Uint8Array(data.buffer, data.byteOffset, data.byteLength / Uint8Array.BYTES_PER_ELEMENT);\n }\n return new Uint8Array(data);\n};\n\nconst deserializerMiddleware = (options, deserializer) => (next, context) => async (args) => {\n const { response } = await next(args);\n try {\n const parsed = await deserializer(response, options);\n return {\n response,\n output: parsed,\n };\n }\n catch (error) {\n Object.defineProperty(error, \"$response\", {\n value: response,\n enumerable: false,\n writable: false,\n configurable: false,\n });\n if (!(\"$metadata\" in error)) {\n const hint = `Deserialization error: to see the raw response, inspect the hidden field {error}.$response on this object.`;\n try {\n error.message += \"\\n \" + hint;\n }\n catch (e) {\n if (!context.logger || context.logger?.constructor?.name === \"NoOpLogger\") {\n console.warn(hint);\n }\n else {\n context.logger?.warn?.(hint);\n }\n }\n if (typeof error.$responseBodyText !== \"undefined\") {\n if (error.$response) {\n error.$response.body = error.$responseBodyText;\n }\n }\n try {\n if (transport.HttpResponse.isInstance(response)) {\n const { headers = {} } = response;\n const headerEntries = Object.entries(headers);\n error.$metadata = {\n httpStatusCode: response.statusCode,\n requestId: findHeader(/^x-[\\w-]+-request-?id$/, headerEntries),\n extendedRequestId: findHeader(/^x-[\\w-]+-id-2$/, headerEntries),\n cfId: findHeader(/^x-[\\w-]+-cf-id$/, headerEntries),\n };\n }\n }\n catch (e) {\n }\n }\n throw error;\n }\n};\nconst findHeader = (pattern, headers) => {\n return (headers.find(([k]) => {\n return k.match(pattern);\n }) || [void 0, void 0])[1];\n};\n\nconst serializerMiddleware = (options, serializer) => (next, context) => async (args) => {\n const endpointConfig = options;\n const endpoint = context.endpointV2\n ? async () => endpoints.toEndpointV1(context.endpointV2)\n : endpointConfig.endpoint;\n if (!endpoint) {\n throw new Error(\"No valid endpoint provider available.\");\n }\n const request = await serializer(args.input, { ...options, endpoint });\n return next({\n ...args,\n request,\n });\n};\n\nconst deserializerMiddlewareOption = {\n name: \"deserializerMiddleware\",\n step: \"deserialize\",\n tags: [\"DESERIALIZER\"],\n override: true,\n};\nconst serializerMiddlewareOption = {\n name: \"serializerMiddleware\",\n step: \"serialize\",\n tags: [\"SERIALIZER\"],\n override: true,\n};\nfunction getSerdePlugin(config, serializer, deserializer) {\n return {\n applyToStack: (commandStack) => {\n commandStack.add(deserializerMiddleware(config, deserializer), deserializerMiddlewareOption);\n commandStack.add(serializerMiddleware(config, serializer), serializerMiddlewareOption);\n },\n };\n}\n\nclass Hash {\n algorithmIdentifier;\n secret;\n hash;\n constructor(algorithmIdentifier, secret) {\n this.algorithmIdentifier = algorithmIdentifier;\n this.secret = secret;\n this.reset();\n }\n update(toHash, encoding) {\n this.hash.update(toUint8Array(castSourceData(toHash, encoding)));\n }\n digest() {\n return Promise.resolve(this.hash.digest());\n }\n reset() {\n this.hash = this.secret\n ? node_crypto.createHmac(this.algorithmIdentifier, castSourceData(this.secret))\n : node_crypto.createHash(this.algorithmIdentifier);\n }\n}\nfunction castSourceData(toCast, encoding) {\n if (Buffer.isBuffer(toCast)) {\n return toCast;\n }\n if (typeof toCast === \"string\") {\n return fromString(toCast, encoding);\n }\n if (ArrayBuffer.isView(toCast)) {\n return fromArrayBuffer(toCast.buffer, toCast.byteOffset, toCast.byteLength);\n }\n return fromArrayBuffer(toCast);\n}\n\nlet ChecksumStream$1 = class ChecksumStream extends node_stream.Duplex {\n expectedChecksum;\n checksumSourceLocation;\n checksum;\n source;\n base64Encoder;\n pendingCallback = null;\n constructor({ expectedChecksum, checksum, source, checksumSourceLocation, base64Encoder, }) {\n super();\n if (typeof source.pipe === \"function\") {\n this.source = source;\n }\n else {\n throw new Error(`@smithy/util-stream: unsupported source type ${source?.constructor?.name ?? source} in ChecksumStream.`);\n }\n this.base64Encoder = base64Encoder ?? toBase64$1;\n this.expectedChecksum = expectedChecksum;\n this.checksum = checksum;\n this.checksumSourceLocation = checksumSourceLocation;\n this.source.pipe(this);\n }\n _read(size) {\n if (this.pendingCallback) {\n const callback = this.pendingCallback;\n this.pendingCallback = null;\n callback();\n }\n }\n _write(chunk, encoding, callback) {\n try {\n this.checksum.update(chunk);\n const canPushMore = this.push(chunk);\n if (!canPushMore) {\n this.pendingCallback = callback;\n return;\n }\n }\n catch (e) {\n return callback(e);\n }\n return callback();\n }\n async _final(callback) {\n try {\n const digest = await this.checksum.digest();\n const received = this.base64Encoder(digest);\n if (this.expectedChecksum !== received) {\n return callback(new Error(`Checksum mismatch: expected \"${this.expectedChecksum}\" but received \"${received}\"` +\n ` in response header \"${this.checksumSourceLocation}\".`));\n }\n }\n catch (e) {\n return callback(e);\n }\n this.push(null);\n return callback();\n }\n};\n\nconst isReadableStream = (stream) => typeof ReadableStream === \"function\" &&\n (stream?.constructor?.name === ReadableStream.name || stream instanceof ReadableStream);\nconst isBlob = (blob) => {\n return typeof Blob === \"function\" && (blob?.constructor?.name === Blob.name || blob instanceof Blob);\n};\n\nconst fromUtf8 = (input) => new TextEncoder().encode(input);\n\nconst chars = `ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`;\nconst alphabetByEncoding = Object.entries(chars).reduce((acc, [i, c]) => {\n acc[c] = Number(i);\n return acc;\n}, {});\nconst alphabetByValue = chars.split(\"\");\nconst bitsPerLetter = 6;\nconst bitsPerByte = 8;\nconst maxLetterValue = 0b111111;\n\nfunction toBase64(_input) {\n let input;\n if (typeof _input === \"string\") {\n input = fromUtf8(_input);\n }\n else {\n input = _input;\n }\n const isArrayLike = typeof input === \"object\" && typeof input.length === \"number\";\n const isUint8Array = typeof input === \"object\" &&\n typeof input.byteOffset === \"number\" &&\n typeof input.byteLength === \"number\";\n if (!isArrayLike && !isUint8Array) {\n throw new Error(\"@smithy/util-base64: toBase64 encoder function only accepts string | Uint8Array.\");\n }\n let str = \"\";\n for (let i = 0; i < input.length; i += 3) {\n let bits = 0;\n let bitLength = 0;\n for (let j = i, limit = Math.min(i + 3, input.length); j < limit; j++) {\n bits |= input[j] << ((limit - j - 1) * bitsPerByte);\n bitLength += bitsPerByte;\n }\n const bitClusterCount = Math.ceil(bitLength / bitsPerLetter);\n bits <<= bitClusterCount * bitsPerLetter - bitLength;\n for (let k = 1; k <= bitClusterCount; k++) {\n const offset = (bitClusterCount - k) * bitsPerLetter;\n str += alphabetByValue[(bits & (maxLetterValue << offset)) >> offset];\n }\n str += \"==\".slice(0, 4 - bitClusterCount);\n }\n return str;\n}\n\nconst ReadableStreamRef = typeof ReadableStream === \"function\" ? ReadableStream : function () { };\nclass ChecksumStream extends ReadableStreamRef {\n}\n\nconst createChecksumStream$1 = ({ expectedChecksum, checksum, source, checksumSourceLocation, base64Encoder, }) => {\n if (!isReadableStream(source)) {\n throw new Error(`@smithy/util-stream: unsupported source type ${source?.constructor?.name ?? source} in ChecksumStream.`);\n }\n const encoder = base64Encoder ?? toBase64;\n if (typeof TransformStream !== \"function\") {\n throw new Error(\"@smithy/util-stream: unable to instantiate ChecksumStream because API unavailable: ReadableStream/TransformStream.\");\n }\n const transform = new TransformStream({\n start() { },\n async transform(chunk, controller) {\n checksum.update(chunk);\n controller.enqueue(chunk);\n },\n async flush(controller) {\n const digest = await checksum.digest();\n const received = encoder(digest);\n if (expectedChecksum !== received) {\n const error = new Error(`Checksum mismatch: expected \"${expectedChecksum}\" but received \"${received}\"` +\n ` in response header \"${checksumSourceLocation}\".`);\n controller.error(error);\n }\n else {\n controller.terminate();\n }\n },\n });\n source.pipeThrough(transform);\n const readable = transform.readable;\n Object.setPrototypeOf(readable, ChecksumStream.prototype);\n return readable;\n};\n\nfunction createChecksumStream(init) {\n if (typeof ReadableStream === \"function\" && isReadableStream(init.source)) {\n return createChecksumStream$1(init);\n }\n return new ChecksumStream$1(init);\n}\n\nclass ByteArrayCollector {\n allocByteArray;\n byteLength = 0;\n byteArrays = [];\n constructor(allocByteArray) {\n this.allocByteArray = allocByteArray;\n }\n push(byteArray) {\n this.byteArrays.push(byteArray);\n this.byteLength += byteArray.byteLength;\n }\n flush() {\n if (this.byteArrays.length === 1) {\n const bytes = this.byteArrays[0];\n this.reset();\n return bytes;\n }\n const aggregation = this.allocByteArray(this.byteLength);\n let cursor = 0;\n for (let i = 0; i < this.byteArrays.length; ++i) {\n const bytes = this.byteArrays[i];\n aggregation.set(bytes, cursor);\n cursor += bytes.byteLength;\n }\n this.reset();\n return aggregation;\n }\n reset() {\n this.byteArrays = [];\n this.byteLength = 0;\n }\n}\n\nfunction createBufferedReadableStream(upstream, size, logger) {\n const reader = upstream.getReader();\n let streamBufferingLoggedWarning = false;\n let bytesSeen = 0;\n const buffers = [\"\", new ByteArrayCollector((size) => new Uint8Array(size))];\n let mode = -1;\n const pull = async (controller) => {\n const { value, done } = await reader.read();\n const chunk = value;\n if (done) {\n if (mode !== -1) {\n const remainder = flush(buffers, mode);\n if (sizeOf(remainder) > 0) {\n controller.enqueue(remainder);\n }\n }\n controller.close();\n }\n else {\n const chunkMode = modeOf(chunk, false);\n if (mode !== chunkMode) {\n if (mode >= 0) {\n controller.enqueue(flush(buffers, mode));\n }\n mode = chunkMode;\n }\n if (mode === -1) {\n controller.enqueue(chunk);\n return;\n }\n const chunkSize = sizeOf(chunk);\n bytesSeen += chunkSize;\n const bufferSize = sizeOf(buffers[mode]);\n if (chunkSize >= size && bufferSize === 0) {\n controller.enqueue(chunk);\n }\n else {\n const newSize = merge(buffers, mode, chunk);\n if (!streamBufferingLoggedWarning && bytesSeen > size * 2) {\n streamBufferingLoggedWarning = true;\n logger?.warn(`@smithy/util-stream - stream chunk size ${chunkSize} is below threshold of ${size}, automatically buffering.`);\n }\n if (newSize >= size) {\n controller.enqueue(flush(buffers, mode));\n }\n else {\n await pull(controller);\n }\n }\n }\n };\n return new ReadableStream({\n pull,\n });\n}\nfunction merge(buffers, mode, chunk) {\n switch (mode) {\n case 0:\n buffers[0] += chunk;\n return sizeOf(buffers[0]);\n case 1:\n case 2:\n buffers[mode].push(chunk);\n return sizeOf(buffers[mode]);\n }\n}\nfunction flush(buffers, mode) {\n switch (mode) {\n case 0:\n const s = buffers[0];\n buffers[0] = \"\";\n return s;\n case 1:\n case 2:\n return buffers[mode].flush();\n }\n throw new Error(`@smithy/util-stream - invalid index ${mode} given to flush()`);\n}\nfunction sizeOf(chunk) {\n return chunk?.byteLength ?? chunk?.length ?? 0;\n}\nfunction modeOf(chunk, allowBuffer = true) {\n if (allowBuffer && typeof Buffer !== \"undefined\" && chunk instanceof Buffer) {\n return 2;\n }\n if (chunk instanceof Uint8Array) {\n return 1;\n }\n if (typeof chunk === \"string\") {\n return 0;\n }\n return -1;\n}\n\nfunction createBufferedReadable(upstream, size, logger) {\n if (isReadableStream(upstream)) {\n return createBufferedReadableStream(upstream, size, logger);\n }\n const downstream = new node_stream.Readable({ read() { } });\n let streamBufferingLoggedWarning = false;\n let bytesSeen = 0;\n const buffers = [\n \"\",\n new ByteArrayCollector((size) => new Uint8Array(size)),\n new ByteArrayCollector((size) => Buffer.from(new Uint8Array(size))),\n ];\n let mode = -1;\n upstream.on(\"data\", (chunk) => {\n const chunkMode = modeOf(chunk, true);\n if (mode !== chunkMode) {\n if (mode >= 0) {\n downstream.push(flush(buffers, mode));\n }\n mode = chunkMode;\n }\n if (mode === -1) {\n downstream.push(chunk);\n return;\n }\n const chunkSize = sizeOf(chunk);\n bytesSeen += chunkSize;\n const bufferSize = sizeOf(buffers[mode]);\n if (chunkSize >= size && bufferSize === 0) {\n downstream.push(chunk);\n }\n else {\n const newSize = merge(buffers, mode, chunk);\n if (!streamBufferingLoggedWarning && bytesSeen > size * 2) {\n streamBufferingLoggedWarning = true;\n logger?.warn(`@smithy/util-stream - stream chunk size ${chunkSize} is below threshold of ${size}, automatically buffering.`);\n }\n if (newSize >= size) {\n downstream.push(flush(buffers, mode));\n }\n }\n });\n upstream.on(\"end\", () => {\n if (mode !== -1) {\n const remainder = flush(buffers, mode);\n if (sizeOf(remainder) > 0) {\n downstream.push(remainder);\n }\n }\n downstream.push(null);\n });\n return downstream;\n}\n\nconst getAwsChunkedEncodingStream$1 = (readableStream, options) => {\n const { base64Encoder, bodyLengthChecker, checksumAlgorithmFn, checksumLocationName, streamHasher } = options;\n const checksumRequired = base64Encoder !== undefined &&\n bodyLengthChecker !== undefined &&\n checksumAlgorithmFn !== undefined &&\n checksumLocationName !== undefined &&\n streamHasher !== undefined;\n const digest = checksumRequired ? streamHasher(checksumAlgorithmFn, readableStream) : undefined;\n const reader = readableStream.getReader();\n return new ReadableStream({\n async pull(controller) {\n const { value, done } = await reader.read();\n if (done) {\n controller.enqueue(`0\\r\\n`);\n if (checksumRequired) {\n const checksum = base64Encoder(await digest);\n controller.enqueue(`${checksumLocationName}:${checksum}\\r\\n`);\n controller.enqueue(`\\r\\n`);\n }\n controller.close();\n }\n else {\n controller.enqueue(`${(bodyLengthChecker(value) || 0).toString(16)}\\r\\n${value}\\r\\n`);\n }\n },\n });\n};\n\nfunction getAwsChunkedEncodingStream(stream, options) {\n const readable = stream;\n const readableStream = stream;\n if (isReadableStream(readableStream)) {\n return getAwsChunkedEncodingStream$1(readableStream, options);\n }\n const { base64Encoder, bodyLengthChecker, checksumAlgorithmFn, checksumLocationName, streamHasher } = options;\n const checksumRequired = base64Encoder !== undefined &&\n checksumAlgorithmFn !== undefined &&\n checksumLocationName !== undefined &&\n streamHasher !== undefined;\n const digest = checksumRequired ? streamHasher(checksumAlgorithmFn, readable) : undefined;\n const awsChunkedEncodingStream = new node_stream.Readable({\n read: () => { },\n });\n readable.on(\"data\", (data) => {\n const length = bodyLengthChecker(data) || 0;\n if (length === 0) {\n return;\n }\n awsChunkedEncodingStream.push(`${length.toString(16)}\\r\\n`);\n awsChunkedEncodingStream.push(data);\n awsChunkedEncodingStream.push(\"\\r\\n\");\n });\n readable.on(\"end\", async () => {\n awsChunkedEncodingStream.push(`0\\r\\n`);\n if (checksumRequired) {\n const checksum = base64Encoder(await digest);\n awsChunkedEncodingStream.push(`${checksumLocationName}:${checksum}\\r\\n`);\n awsChunkedEncodingStream.push(`\\r\\n`);\n }\n awsChunkedEncodingStream.push(null);\n });\n return awsChunkedEncodingStream;\n}\n\nasync function headStream$1(stream, bytes) {\n let byteLengthCounter = 0;\n const chunks = [];\n const reader = stream.getReader();\n let isDone = false;\n while (!isDone) {\n const { done, value } = await reader.read();\n if (value) {\n chunks.push(value);\n byteLengthCounter += value?.byteLength ?? 0;\n }\n if (byteLengthCounter >= bytes) {\n break;\n }\n isDone = done;\n }\n reader.releaseLock();\n const collected = new Uint8Array(Math.min(bytes, byteLengthCounter));\n let offset = 0;\n for (const chunk of chunks) {\n if (chunk.byteLength > collected.byteLength - offset) {\n collected.set(chunk.subarray(0, collected.byteLength - offset), offset);\n break;\n }\n else {\n collected.set(chunk, offset);\n }\n offset += chunk.length;\n }\n return collected;\n}\n\nconst headStream = (stream, bytes) => {\n if (isReadableStream(stream)) {\n return headStream$1(stream, bytes);\n }\n return new Promise((resolve, reject) => {\n const collector = new Collector$1();\n collector.limit = bytes;\n stream.pipe(collector);\n stream.on(\"error\", (err) => {\n collector.end();\n reject(err);\n });\n collector.on(\"error\", reject);\n collector.on(\"finish\", function () {\n const bytes = new Uint8Array(Buffer.concat(this.buffers));\n resolve(bytes);\n });\n });\n};\nlet Collector$1 = class Collector extends node_stream.Writable {\n buffers = [];\n limit = Infinity;\n bytesBuffered = 0;\n _write(chunk, encoding, callback) {\n this.buffers.push(chunk);\n this.bytesBuffered += chunk.byteLength ?? 0;\n if (this.bytesBuffered >= this.limit) {\n const excess = this.bytesBuffered - this.limit;\n const tailBuffer = this.buffers[this.buffers.length - 1];\n this.buffers[this.buffers.length - 1] = tailBuffer.subarray(0, tailBuffer.byteLength - excess);\n this.emit(\"finish\");\n }\n callback();\n }\n};\n\nconst toUtf8 = (input) => {\n if (typeof input === \"string\") {\n return input;\n }\n if (typeof input !== \"object\" || typeof input.byteOffset !== \"number\" || typeof input.byteLength !== \"number\") {\n throw new Error(\"@smithy/util-utf8: toUtf8 encoder function only accepts string | Uint8Array.\");\n }\n return new TextDecoder(\"utf-8\").decode(input);\n};\n\nconst fromBase64 = (input) => {\n let totalByteLength = (input.length / 4) * 3;\n if (input.slice(-2) === \"==\") {\n totalByteLength -= 2;\n }\n else if (input.slice(-1) === \"=\") {\n totalByteLength--;\n }\n const out = new ArrayBuffer(totalByteLength);\n const dataView = new DataView(out);\n for (let i = 0; i < input.length; i += 4) {\n let bits = 0;\n let bitLength = 0;\n for (let j = i, limit = i + 3; j <= limit; j++) {\n if (input[j] !== \"=\") {\n if (!(input[j] in alphabetByEncoding)) {\n throw new TypeError(`Invalid character ${input[j]} in base64 string.`);\n }\n bits |= alphabetByEncoding[input[j]] << ((limit - j) * bitsPerLetter);\n bitLength += bitsPerLetter;\n }\n else {\n bits >>= bitsPerLetter;\n }\n }\n const chunkOffset = (i / 4) * 3;\n bits >>= bitLength % bitsPerByte;\n const byteLength = Math.floor(bitLength / bitsPerByte);\n for (let k = 0; k < byteLength; k++) {\n const offset = (byteLength - k - 1) * bitsPerByte;\n dataView.setUint8(chunkOffset + k, (bits & (255 << offset)) >> offset);\n }\n }\n return new Uint8Array(out);\n};\n\nconst streamCollector$1 = async (stream) => {\n if ((typeof Blob === \"function\" && stream instanceof Blob) || stream.constructor?.name === \"Blob\") {\n if (Blob.prototype.arrayBuffer !== undefined) {\n return new Uint8Array(await stream.arrayBuffer());\n }\n return collectBlob(stream);\n }\n return collectStream(stream);\n};\nasync function collectBlob(blob) {\n const base64 = await readToBase64(blob);\n const arrayBuffer = fromBase64(base64);\n return new Uint8Array(arrayBuffer);\n}\nasync function collectStream(stream) {\n const chunks = [];\n const reader = stream.getReader();\n let isDone = false;\n let length = 0;\n while (!isDone) {\n const { done, value } = await reader.read();\n if (value) {\n chunks.push(value);\n length += value.length;\n }\n isDone = done;\n }\n const collected = new Uint8Array(length);\n let offset = 0;\n for (const chunk of chunks) {\n collected.set(chunk, offset);\n offset += chunk.length;\n }\n return collected;\n}\nfunction readToBase64(blob) {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.onloadend = () => {\n if (reader.readyState !== 2) {\n return reject(new Error(\"Reader aborted too early\"));\n }\n const result = (reader.result ?? \"\");\n const commaIndex = result.indexOf(\",\");\n const dataOffset = commaIndex > -1 ? commaIndex + 1 : result.length;\n resolve(result.substring(dataOffset));\n };\n reader.onabort = () => reject(new Error(\"Read aborted\"));\n reader.onerror = () => reject(reader.error);\n reader.readAsDataURL(blob);\n });\n}\n\nconst ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED$1 = \"The stream has already been transformed.\";\nconst sdkStreamMixin$1 = (stream) => {\n if (!isBlobInstance(stream) && !isReadableStream(stream)) {\n const name = stream?.__proto__?.constructor?.name || stream;\n throw new Error(`Unexpected stream implementation, expect Blob or ReadableStream, got ${name}`);\n }\n let transformed = false;\n const transformToByteArray = async () => {\n if (transformed) {\n throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED$1);\n }\n transformed = true;\n return await streamCollector$1(stream);\n };\n const blobToWebStream = (blob) => {\n if (typeof blob.stream !== \"function\") {\n throw new Error(\"Cannot transform payload Blob to web stream. Please make sure the Blob.stream() is polyfilled.\\n\" +\n \"If you are using React Native, this API is not yet supported, see: https://react-native.canny.io/feature-requests/p/fetch-streaming-body\");\n }\n return blob.stream();\n };\n return Object.assign(stream, {\n transformToByteArray: transformToByteArray,\n transformToString: async (encoding) => {\n const buf = await transformToByteArray();\n if (encoding === \"base64\") {\n return toBase64(buf);\n }\n else if (encoding === \"hex\") {\n return toHex(buf);\n }\n else if (encoding === undefined || encoding === \"utf8\" || encoding === \"utf-8\") {\n return toUtf8(buf);\n }\n else if (typeof TextDecoder === \"function\") {\n return new TextDecoder(encoding).decode(buf);\n }\n else {\n throw new Error(\"TextDecoder is not available, please make sure polyfill is provided.\");\n }\n },\n transformToWebStream: () => {\n if (transformed) {\n throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED$1);\n }\n transformed = true;\n if (isBlobInstance(stream)) {\n return blobToWebStream(stream);\n }\n else if (isReadableStream(stream)) {\n return stream;\n }\n else {\n throw new Error(`Cannot transform payload to web stream, got ${stream}`);\n }\n },\n });\n};\nconst isBlobInstance = (stream) => typeof Blob === \"function\" && stream instanceof Blob;\n\nclass Collector extends node_stream.Writable {\n bufferedBytes = [];\n _write(chunk, encoding, callback) {\n this.bufferedBytes.push(chunk);\n callback();\n }\n}\nconst isReadableStreamInstance = (stream) => typeof ReadableStream === \"function\" && stream instanceof ReadableStream;\nasync function collectReadableStream(stream) {\n const chunks = [];\n const reader = stream.getReader();\n let isDone = false;\n let length = 0;\n while (!isDone) {\n const { done, value } = await reader.read();\n if (value) {\n chunks.push(value);\n length += value.length;\n }\n isDone = done;\n }\n const collected = new Uint8Array(length);\n let offset = 0;\n for (const chunk of chunks) {\n collected.set(chunk, offset);\n offset += chunk.length;\n }\n return collected;\n}\nconst streamCollector = (stream) => {\n if (isReadableStreamInstance(stream)) {\n return collectReadableStream(stream);\n }\n return new Promise((resolve, reject) => {\n const collector = new Collector();\n stream.pipe(collector);\n stream.on(\"error\", (err) => {\n collector.end();\n reject(err);\n });\n collector.on(\"error\", reject);\n collector.on(\"finish\", function () {\n const bytes = new Uint8Array(Buffer.concat(this.bufferedBytes));\n resolve(bytes);\n });\n });\n};\n\nconst ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED = \"The stream has already been transformed.\";\nconst sdkStreamMixin = (stream) => {\n if (!(stream instanceof node_stream.Readable)) {\n try {\n return sdkStreamMixin$1(stream);\n }\n catch (e) {\n const name = stream?.__proto__?.constructor?.name || stream;\n throw new Error(`Unexpected stream implementation, expect Stream.Readable instance, got ${name}`);\n }\n }\n let transformed = false;\n const transformToByteArray = async () => {\n if (transformed) {\n throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);\n }\n transformed = true;\n return await streamCollector(stream);\n };\n return Object.assign(stream, {\n transformToByteArray,\n transformToString: async (encoding) => {\n const buf = await transformToByteArray();\n if (encoding === undefined || Buffer.isEncoding(encoding)) {\n return fromArrayBuffer(buf.buffer, buf.byteOffset, buf.byteLength).toString(encoding);\n }\n else {\n const decoder = new TextDecoder(encoding);\n return decoder.decode(buf);\n }\n },\n transformToWebStream: () => {\n if (transformed) {\n throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);\n }\n if (stream.readableFlowing !== null) {\n throw new Error(\"The stream has been consumed by other callbacks.\");\n }\n if (typeof node_stream.Readable.toWeb !== \"function\") {\n throw new Error(\"Readable.toWeb() is not supported. Please ensure a polyfill is available.\");\n }\n transformed = true;\n return node_stream.Readable.toWeb(stream);\n },\n });\n};\n\nasync function splitStream$1(stream) {\n if (typeof stream.stream === \"function\") {\n stream = stream.stream();\n }\n const readableStream = stream;\n return readableStream.tee();\n}\n\nasync function splitStream(stream) {\n if (isReadableStream(stream) || isBlob(stream)) {\n return splitStream$1(stream);\n }\n const stream1 = new node_stream.PassThrough();\n const stream2 = new node_stream.PassThrough();\n stream.pipe(stream1);\n stream.pipe(stream2);\n return [stream1, stream2];\n}\n\nclass Uint8ArrayBlobAdapter extends bindUint8ArrayBlobAdapter(toUtf8$1, fromUtf8$1, toBase64$1, fromBase64$1) {\n}\nconst _getRandomValues = node_crypto.getRandomValues;\nconst v4 = bindV4(_getRandomValues);\nconst generateIdempotencyToken = v4;\n\nexports.ChecksumStream = ChecksumStream$1;\nexports.Hash = Hash;\nexports.LazyJsonString = LazyJsonString;\nexports.NumericValue = NumericValue;\nexports.Uint8ArrayBlobAdapter = Uint8ArrayBlobAdapter;\nexports._parseEpochTimestamp = _parseEpochTimestamp;\nexports._parseRfc3339DateTimeWithOffset = _parseRfc3339DateTimeWithOffset;\nexports._parseRfc7231DateTime = _parseRfc7231DateTime;\nexports.calculateBodyLength = calculateBodyLength;\nexports.copyDocumentWithTransform = copyDocumentWithTransform;\nexports.createBufferedReadable = createBufferedReadable;\nexports.createChecksumStream = createChecksumStream;\nexports.dateToUtcString = dateToUtcString;\nexports.deserializerMiddleware = deserializerMiddleware;\nexports.deserializerMiddlewareOption = deserializerMiddlewareOption;\nexports.expectBoolean = expectBoolean;\nexports.expectByte = expectByte;\nexports.expectFloat32 = expectFloat32;\nexports.expectInt = expectInt;\nexports.expectInt32 = expectInt32;\nexports.expectLong = expectLong;\nexports.expectNonNull = expectNonNull;\nexports.expectNumber = expectNumber;\nexports.expectObject = expectObject;\nexports.expectShort = expectShort;\nexports.expectString = expectString;\nexports.expectUnion = expectUnion;\nexports.fromArrayBuffer = fromArrayBuffer;\nexports.fromBase64 = fromBase64$1;\nexports.fromHex = fromHex;\nexports.fromString = fromString;\nexports.fromUtf8 = fromUtf8$1;\nexports.generateIdempotencyToken = generateIdempotencyToken;\nexports.getAwsChunkedEncodingStream = getAwsChunkedEncodingStream;\nexports.getSerdePlugin = getSerdePlugin;\nexports.handleFloat = handleFloat;\nexports.headStream = headStream;\nexports.isArrayBuffer = isArrayBuffer;\nexports.isBlob = isBlob;\nexports.isReadableStream = isReadableStream;\nexports.limitedParseDouble = limitedParseDouble;\nexports.limitedParseFloat = limitedParseFloat;\nexports.limitedParseFloat32 = limitedParseFloat32;\nexports.logger = logger;\nexports.nv = nv;\nexports.parseBoolean = parseBoolean;\nexports.parseEpochTimestamp = parseEpochTimestamp;\nexports.parseRfc3339DateTime = parseRfc3339DateTime;\nexports.parseRfc3339DateTimeWithOffset = parseRfc3339DateTimeWithOffset;\nexports.parseRfc7231DateTime = parseRfc7231DateTime;\nexports.quoteHeader = quoteHeader;\nexports.sdkStreamMixin = sdkStreamMixin;\nexports.serializerMiddleware = serializerMiddleware;\nexports.serializerMiddlewareOption = serializerMiddlewareOption;\nexports.splitEvery = splitEvery;\nexports.splitHeader = splitHeader;\nexports.splitStream = splitStream;\nexports.strictParseByte = strictParseByte;\nexports.strictParseDouble = strictParseDouble;\nexports.strictParseFloat = strictParseFloat;\nexports.strictParseFloat32 = strictParseFloat32;\nexports.strictParseInt = strictParseInt;\nexports.strictParseInt32 = strictParseInt32;\nexports.strictParseLong = strictParseLong;\nexports.strictParseShort = strictParseShort;\nexports.toBase64 = toBase64$1;\nexports.toHex = toHex;\nexports.toUint8Array = toUint8Array;\nexports.toUtf8 = toUtf8$1;\nexports.v4 = v4;\n"
|
|
12
12
|
],
|
|
13
13
|
"mappings": "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",
|
|
14
|
-
"debugId": "
|
|
14
|
+
"debugId": "1F79B25AABB95C6C64756E2164756E21",
|
|
15
15
|
"names": []
|
|
16
16
|
}
|
|
@@ -5,6 +5,6 @@
|
|
|
5
5
|
"// src/chat/openai-compatible-chat-language-model.ts\nimport {\n InvalidResponseDataError\n} from \"@ai-sdk/provider\";\nimport {\n combineHeaders,\n createEventSourceResponseHandler,\n createJsonErrorResponseHandler,\n createJsonResponseHandler,\n generateId,\n isParsableJson,\n parseProviderOptions,\n postJsonToApi\n} from \"@ai-sdk/provider-utils\";\nimport { z as z3 } from \"zod/v4\";\n\n// src/openai-compatible-error.ts\nimport { z } from \"zod/v4\";\nvar openaiCompatibleErrorDataSchema = z.object({\n error: z.object({\n message: z.string(),\n // The additional information below is handled loosely to support\n // OpenAI-compatible providers that have slightly different error\n // responses:\n type: z.string().nullish(),\n param: z.any().nullish(),\n code: z.union([z.string(), z.number()]).nullish()\n })\n});\nvar defaultOpenAICompatibleErrorStructure = {\n errorSchema: openaiCompatibleErrorDataSchema,\n errorToMessage: (data) => data.error.message\n};\n\n// src/chat/convert-openai-compatible-chat-usage.ts\nfunction convertOpenAICompatibleChatUsage(usage) {\n var _a, _b, _c, _d, _e, _f;\n if (usage == null) {\n return {\n inputTokens: {\n total: void 0,\n noCache: void 0,\n cacheRead: void 0,\n cacheWrite: void 0\n },\n outputTokens: {\n total: void 0,\n text: void 0,\n reasoning: void 0\n },\n raw: void 0\n };\n }\n const promptTokens = (_a = usage.prompt_tokens) != null ? _a : 0;\n const completionTokens = (_b = usage.completion_tokens) != null ? _b : 0;\n const cacheReadTokens = (_d = (_c = usage.prompt_tokens_details) == null ? void 0 : _c.cached_tokens) != null ? _d : 0;\n const reasoningTokens = (_f = (_e = usage.completion_tokens_details) == null ? void 0 : _e.reasoning_tokens) != null ? _f : 0;\n return {\n inputTokens: {\n total: promptTokens,\n noCache: promptTokens - cacheReadTokens,\n cacheRead: cacheReadTokens,\n cacheWrite: void 0\n },\n outputTokens: {\n total: completionTokens,\n text: completionTokens - reasoningTokens,\n reasoning: reasoningTokens\n },\n raw: usage\n };\n}\n\n// src/chat/convert-to-openai-compatible-chat-messages.ts\nimport {\n UnsupportedFunctionalityError\n} from \"@ai-sdk/provider\";\nimport {\n convertBase64ToUint8Array,\n convertToBase64\n} from \"@ai-sdk/provider-utils\";\nfunction getOpenAIMetadata(message) {\n var _a, _b;\n return (_b = (_a = message == null ? void 0 : message.providerOptions) == null ? void 0 : _a.openaiCompatible) != null ? _b : {};\n}\nfunction getAudioFormat(mediaType) {\n switch (mediaType) {\n case \"audio/wav\":\n return \"wav\";\n case \"audio/mp3\":\n case \"audio/mpeg\":\n return \"mp3\";\n default:\n return null;\n }\n}\nfunction convertToOpenAICompatibleChatMessages(prompt) {\n var _a, _b, _c;\n const messages = [];\n for (const { role, content, ...message } of prompt) {\n const metadata = getOpenAIMetadata({ ...message });\n switch (role) {\n case \"system\": {\n messages.push({ role: \"system\", content, ...metadata });\n break;\n }\n case \"user\": {\n if (content.length === 1 && content[0].type === \"text\") {\n messages.push({\n role: \"user\",\n content: content[0].text,\n ...getOpenAIMetadata(content[0])\n });\n break;\n }\n messages.push({\n role: \"user\",\n content: content.map((part) => {\n var _a2;\n const partMetadata = getOpenAIMetadata(part);\n switch (part.type) {\n case \"text\": {\n return { type: \"text\", text: part.text, ...partMetadata };\n }\n case \"file\": {\n if (part.mediaType.startsWith(\"image/\")) {\n const mediaType = part.mediaType === \"image/*\" ? \"image/jpeg\" : part.mediaType;\n return {\n type: \"image_url\",\n image_url: {\n url: part.data instanceof URL ? part.data.toString() : `data:${mediaType};base64,${convertToBase64(part.data)}`\n },\n ...partMetadata\n };\n }\n if (part.mediaType.startsWith(\"audio/\")) {\n if (part.data instanceof URL) {\n throw new UnsupportedFunctionalityError({\n functionality: \"audio file parts with URLs\"\n });\n }\n const format = getAudioFormat(part.mediaType);\n if (format === null) {\n throw new UnsupportedFunctionalityError({\n functionality: `audio media type ${part.mediaType}`\n });\n }\n return {\n type: \"input_audio\",\n input_audio: {\n data: convertToBase64(part.data),\n format\n },\n ...partMetadata\n };\n }\n if (part.mediaType === \"application/pdf\") {\n if (part.data instanceof URL) {\n throw new UnsupportedFunctionalityError({\n functionality: \"PDF file parts with URLs\"\n });\n }\n return {\n type: \"file\",\n file: {\n filename: (_a2 = part.filename) != null ? _a2 : \"document.pdf\",\n file_data: `data:application/pdf;base64,${convertToBase64(part.data)}`\n },\n ...partMetadata\n };\n }\n if (part.mediaType.startsWith(\"text/\")) {\n const textContent = part.data instanceof URL ? part.data.toString() : typeof part.data === \"string\" ? new TextDecoder().decode(\n convertBase64ToUint8Array(part.data)\n ) : new TextDecoder().decode(part.data);\n return {\n type: \"text\",\n text: textContent,\n ...partMetadata\n };\n }\n throw new UnsupportedFunctionalityError({\n functionality: `file part media type ${part.mediaType}`\n });\n }\n }\n }),\n ...metadata\n });\n break;\n }\n case \"assistant\": {\n let text = \"\";\n let reasoning = \"\";\n const toolCalls = [];\n for (const part of content) {\n const partMetadata = getOpenAIMetadata(part);\n switch (part.type) {\n case \"text\": {\n text += part.text;\n break;\n }\n case \"reasoning\": {\n reasoning += part.text;\n break;\n }\n case \"tool-call\": {\n const thoughtSignature = (_b = (_a = part.providerOptions) == null ? void 0 : _a.google) == null ? void 0 : _b.thoughtSignature;\n toolCalls.push({\n id: part.toolCallId,\n type: \"function\",\n function: {\n name: part.toolName,\n arguments: JSON.stringify(part.input)\n },\n ...partMetadata,\n // Include extra_content for Google Gemini thought signatures\n ...thoughtSignature ? {\n extra_content: {\n google: {\n thought_signature: String(thoughtSignature)\n }\n }\n } : {}\n });\n break;\n }\n }\n }\n messages.push({\n role: \"assistant\",\n content: text,\n ...reasoning.length > 0 ? { reasoning_content: reasoning } : {},\n tool_calls: toolCalls.length > 0 ? toolCalls : void 0,\n ...metadata\n });\n break;\n }\n case \"tool\": {\n for (const toolResponse of content) {\n if (toolResponse.type === \"tool-approval-response\") {\n continue;\n }\n const output = toolResponse.output;\n let contentValue;\n switch (output.type) {\n case \"text\":\n case \"error-text\":\n contentValue = output.value;\n break;\n case \"execution-denied\":\n contentValue = (_c = output.reason) != null ? _c : \"Tool execution denied.\";\n break;\n case \"content\":\n case \"json\":\n case \"error-json\":\n contentValue = JSON.stringify(output.value);\n break;\n }\n const toolResponseMetadata = getOpenAIMetadata(toolResponse);\n messages.push({\n role: \"tool\",\n tool_call_id: toolResponse.toolCallId,\n content: contentValue,\n ...toolResponseMetadata\n });\n }\n break;\n }\n default: {\n const _exhaustiveCheck = role;\n throw new Error(`Unsupported role: ${_exhaustiveCheck}`);\n }\n }\n }\n return messages;\n}\n\n// src/chat/get-response-metadata.ts\nfunction getResponseMetadata({\n id,\n model,\n created\n}) {\n return {\n id: id != null ? id : void 0,\n modelId: model != null ? model : void 0,\n timestamp: created != null ? new Date(created * 1e3) : void 0\n };\n}\n\n// src/chat/map-openai-compatible-finish-reason.ts\nfunction mapOpenAICompatibleFinishReason(finishReason) {\n switch (finishReason) {\n case \"stop\":\n return \"stop\";\n case \"length\":\n return \"length\";\n case \"content_filter\":\n return \"content-filter\";\n case \"function_call\":\n case \"tool_calls\":\n return \"tool-calls\";\n default:\n return \"other\";\n }\n}\n\n// src/chat/openai-compatible-chat-options.ts\nimport { z as z2 } from \"zod/v4\";\nvar openaiCompatibleLanguageModelChatOptions = z2.object({\n /**\n * A unique identifier representing your end-user, which can help the provider to\n * monitor and detect abuse.\n */\n user: z2.string().optional(),\n /**\n * Reasoning effort for reasoning models. Defaults to `medium`.\n */\n reasoningEffort: z2.string().optional(),\n /**\n * Controls the verbosity of the generated text. Defaults to `medium`.\n */\n textVerbosity: z2.string().optional(),\n /**\n * Whether to use strict JSON schema validation.\n * When true, the model uses constrained decoding to guarantee schema compliance.\n * Only used when the provider supports structured outputs and a schema is provided.\n *\n * @default true\n */\n strictJsonSchema: z2.boolean().optional()\n});\n\n// src/chat/openai-compatible-prepare-tools.ts\nimport {\n UnsupportedFunctionalityError as UnsupportedFunctionalityError2\n} from \"@ai-sdk/provider\";\nfunction prepareTools({\n tools,\n toolChoice\n}) {\n tools = (tools == null ? void 0 : tools.length) ? tools : void 0;\n const toolWarnings = [];\n if (tools == null) {\n return { tools: void 0, toolChoice: void 0, toolWarnings };\n }\n const openaiCompatTools = [];\n for (const tool of tools) {\n if (tool.type === \"provider\") {\n toolWarnings.push({\n type: \"unsupported\",\n feature: `provider-defined tool ${tool.id}`\n });\n } else {\n openaiCompatTools.push({\n type: \"function\",\n function: {\n name: tool.name,\n description: tool.description,\n parameters: tool.inputSchema,\n ...tool.strict != null ? { strict: tool.strict } : {}\n }\n });\n }\n }\n if (toolChoice == null) {\n return { tools: openaiCompatTools, toolChoice: void 0, toolWarnings };\n }\n const type = toolChoice.type;\n switch (type) {\n case \"auto\":\n case \"none\":\n case \"required\":\n return { tools: openaiCompatTools, toolChoice: type, toolWarnings };\n case \"tool\":\n return {\n tools: openaiCompatTools,\n toolChoice: {\n type: \"function\",\n function: { name: toolChoice.toolName }\n },\n toolWarnings\n };\n default: {\n const _exhaustiveCheck = type;\n throw new UnsupportedFunctionalityError2({\n functionality: `tool choice type: ${_exhaustiveCheck}`\n });\n }\n }\n}\n\n// src/chat/openai-compatible-chat-language-model.ts\nvar OpenAICompatibleChatLanguageModel = class {\n // type inferred via constructor\n constructor(modelId, config) {\n this.specificationVersion = \"v3\";\n var _a, _b;\n this.modelId = modelId;\n this.config = config;\n const errorStructure = (_a = config.errorStructure) != null ? _a : defaultOpenAICompatibleErrorStructure;\n this.chunkSchema = createOpenAICompatibleChatChunkSchema(\n errorStructure.errorSchema\n );\n this.failedResponseHandler = createJsonErrorResponseHandler(errorStructure);\n this.supportsStructuredOutputs = (_b = config.supportsStructuredOutputs) != null ? _b : false;\n }\n get provider() {\n return this.config.provider;\n }\n get providerOptionsName() {\n return this.config.provider.split(\".\")[0].trim();\n }\n get supportedUrls() {\n var _a, _b, _c;\n return (_c = (_b = (_a = this.config).supportedUrls) == null ? void 0 : _b.call(_a)) != null ? _c : {};\n }\n transformRequestBody(args) {\n var _a, _b, _c;\n return (_c = (_b = (_a = this.config).transformRequestBody) == null ? void 0 : _b.call(_a, args)) != null ? _c : args;\n }\n async getArgs({\n prompt,\n maxOutputTokens,\n temperature,\n topP,\n topK,\n frequencyPenalty,\n presencePenalty,\n providerOptions,\n stopSequences,\n responseFormat,\n seed,\n toolChoice,\n tools\n }) {\n var _a, _b, _c, _d, _e;\n const warnings = [];\n const deprecatedOptions = await parseProviderOptions({\n provider: \"openai-compatible\",\n providerOptions,\n schema: openaiCompatibleLanguageModelChatOptions\n });\n if (deprecatedOptions != null) {\n warnings.push({\n type: \"other\",\n message: `The 'openai-compatible' key in providerOptions is deprecated. Use 'openaiCompatible' instead.`\n });\n }\n const compatibleOptions = Object.assign(\n deprecatedOptions != null ? deprecatedOptions : {},\n (_a = await parseProviderOptions({\n provider: \"openaiCompatible\",\n providerOptions,\n schema: openaiCompatibleLanguageModelChatOptions\n })) != null ? _a : {},\n (_b = await parseProviderOptions({\n provider: this.providerOptionsName,\n providerOptions,\n schema: openaiCompatibleLanguageModelChatOptions\n })) != null ? _b : {}\n );\n const strictJsonSchema = (_c = compatibleOptions == null ? void 0 : compatibleOptions.strictJsonSchema) != null ? _c : true;\n if (topK != null) {\n warnings.push({ type: \"unsupported\", feature: \"topK\" });\n }\n if ((responseFormat == null ? void 0 : responseFormat.type) === \"json\" && responseFormat.schema != null && !this.supportsStructuredOutputs) {\n warnings.push({\n type: \"unsupported\",\n feature: \"responseFormat\",\n details: \"JSON response format schema is only supported with structuredOutputs\"\n });\n }\n const {\n tools: openaiTools,\n toolChoice: openaiToolChoice,\n toolWarnings\n } = prepareTools({\n tools,\n toolChoice\n });\n return {\n args: {\n // model id:\n model: this.modelId,\n // model specific settings:\n user: compatibleOptions.user,\n // standardized settings:\n max_tokens: maxOutputTokens,\n temperature,\n top_p: topP,\n frequency_penalty: frequencyPenalty,\n presence_penalty: presencePenalty,\n response_format: (responseFormat == null ? void 0 : responseFormat.type) === \"json\" ? this.supportsStructuredOutputs === true && responseFormat.schema != null ? {\n type: \"json_schema\",\n json_schema: {\n schema: responseFormat.schema,\n strict: strictJsonSchema,\n name: (_d = responseFormat.name) != null ? _d : \"response\",\n description: responseFormat.description\n }\n } : { type: \"json_object\" } : void 0,\n stop: stopSequences,\n seed,\n ...Object.fromEntries(\n Object.entries(\n (_e = providerOptions == null ? void 0 : providerOptions[this.providerOptionsName]) != null ? _e : {}\n ).filter(\n ([key]) => !Object.keys(\n openaiCompatibleLanguageModelChatOptions.shape\n ).includes(key)\n )\n ),\n reasoning_effort: compatibleOptions.reasoningEffort,\n verbosity: compatibleOptions.textVerbosity,\n // messages:\n messages: convertToOpenAICompatibleChatMessages(prompt),\n // tools:\n tools: openaiTools,\n tool_choice: openaiToolChoice\n },\n warnings: [...warnings, ...toolWarnings]\n };\n }\n async doGenerate(options) {\n var _a, _b, _c, _d, _e, _f, _g, _h;\n const { args, warnings } = await this.getArgs({ ...options });\n const transformedBody = this.transformRequestBody(args);\n const body = JSON.stringify(transformedBody);\n const {\n responseHeaders,\n value: responseBody,\n rawValue: rawResponse\n } = await postJsonToApi({\n url: this.config.url({\n path: \"/chat/completions\",\n modelId: this.modelId\n }),\n headers: combineHeaders(this.config.headers(), options.headers),\n body: transformedBody,\n failedResponseHandler: this.failedResponseHandler,\n successfulResponseHandler: createJsonResponseHandler(\n OpenAICompatibleChatResponseSchema\n ),\n abortSignal: options.abortSignal,\n fetch: this.config.fetch\n });\n const choice = responseBody.choices[0];\n const content = [];\n const text = choice.message.content;\n if (text != null && text.length > 0) {\n content.push({ type: \"text\", text });\n }\n const reasoning = (_a = choice.message.reasoning_content) != null ? _a : choice.message.reasoning;\n if (reasoning != null && reasoning.length > 0) {\n content.push({\n type: \"reasoning\",\n text: reasoning\n });\n }\n if (choice.message.tool_calls != null) {\n for (const toolCall of choice.message.tool_calls) {\n const thoughtSignature = (_c = (_b = toolCall.extra_content) == null ? void 0 : _b.google) == null ? void 0 : _c.thought_signature;\n content.push({\n type: \"tool-call\",\n toolCallId: (_d = toolCall.id) != null ? _d : generateId(),\n toolName: toolCall.function.name,\n input: toolCall.function.arguments,\n ...thoughtSignature ? {\n providerMetadata: {\n [this.providerOptionsName]: { thoughtSignature }\n }\n } : {}\n });\n }\n }\n const providerMetadata = {\n [this.providerOptionsName]: {},\n ...await ((_f = (_e = this.config.metadataExtractor) == null ? void 0 : _e.extractMetadata) == null ? void 0 : _f.call(_e, {\n parsedBody: rawResponse\n }))\n };\n const completionTokenDetails = (_g = responseBody.usage) == null ? void 0 : _g.completion_tokens_details;\n if ((completionTokenDetails == null ? void 0 : completionTokenDetails.accepted_prediction_tokens) != null) {\n providerMetadata[this.providerOptionsName].acceptedPredictionTokens = completionTokenDetails == null ? void 0 : completionTokenDetails.accepted_prediction_tokens;\n }\n if ((completionTokenDetails == null ? void 0 : completionTokenDetails.rejected_prediction_tokens) != null) {\n providerMetadata[this.providerOptionsName].rejectedPredictionTokens = completionTokenDetails == null ? void 0 : completionTokenDetails.rejected_prediction_tokens;\n }\n return {\n content,\n finishReason: {\n unified: mapOpenAICompatibleFinishReason(choice.finish_reason),\n raw: (_h = choice.finish_reason) != null ? _h : void 0\n },\n usage: convertOpenAICompatibleChatUsage(responseBody.usage),\n providerMetadata,\n request: { body },\n response: {\n ...getResponseMetadata(responseBody),\n headers: responseHeaders,\n body: rawResponse\n },\n warnings\n };\n }\n async doStream(options) {\n var _a;\n const { args, warnings } = await this.getArgs({ ...options });\n const body = this.transformRequestBody({\n ...args,\n stream: true,\n // only include stream_options when in strict compatibility mode:\n stream_options: this.config.includeUsage ? { include_usage: true } : void 0\n });\n const metadataExtractor = (_a = this.config.metadataExtractor) == null ? void 0 : _a.createStreamExtractor();\n const { responseHeaders, value: response } = await postJsonToApi({\n url: this.config.url({\n path: \"/chat/completions\",\n modelId: this.modelId\n }),\n headers: combineHeaders(this.config.headers(), options.headers),\n body,\n failedResponseHandler: this.failedResponseHandler,\n successfulResponseHandler: createEventSourceResponseHandler(\n this.chunkSchema\n ),\n abortSignal: options.abortSignal,\n fetch: this.config.fetch\n });\n const toolCalls = [];\n let finishReason = {\n unified: \"other\",\n raw: void 0\n };\n let usage = void 0;\n let isFirstChunk = true;\n const providerOptionsName = this.providerOptionsName;\n let isActiveReasoning = false;\n let isActiveText = false;\n return {\n stream: response.pipeThrough(\n new TransformStream({\n start(controller) {\n controller.enqueue({ type: \"stream-start\", warnings });\n },\n transform(chunk, controller) {\n var _a2, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r;\n if (options.includeRawChunks) {\n controller.enqueue({ type: \"raw\", rawValue: chunk.rawValue });\n }\n if (!chunk.success) {\n finishReason = { unified: \"error\", raw: void 0 };\n controller.enqueue({ type: \"error\", error: chunk.error });\n return;\n }\n metadataExtractor == null ? void 0 : metadataExtractor.processChunk(chunk.rawValue);\n if (\"error\" in chunk.value) {\n finishReason = { unified: \"error\", raw: void 0 };\n controller.enqueue({\n type: \"error\",\n error: chunk.value.error.message\n });\n return;\n }\n const value = chunk.value;\n if (isFirstChunk) {\n isFirstChunk = false;\n controller.enqueue({\n type: \"response-metadata\",\n ...getResponseMetadata(value)\n });\n }\n if (value.usage != null) {\n usage = value.usage;\n }\n const choice = value.choices[0];\n if ((choice == null ? void 0 : choice.finish_reason) != null) {\n finishReason = {\n unified: mapOpenAICompatibleFinishReason(choice.finish_reason),\n raw: (_a2 = choice.finish_reason) != null ? _a2 : void 0\n };\n }\n if ((choice == null ? void 0 : choice.delta) == null) {\n return;\n }\n const delta = choice.delta;\n const reasoningContent = (_b = delta.reasoning_content) != null ? _b : delta.reasoning;\n if (reasoningContent) {\n if (!isActiveReasoning) {\n controller.enqueue({\n type: \"reasoning-start\",\n id: \"reasoning-0\"\n });\n isActiveReasoning = true;\n }\n controller.enqueue({\n type: \"reasoning-delta\",\n id: \"reasoning-0\",\n delta: reasoningContent\n });\n }\n if (delta.content) {\n if (isActiveReasoning) {\n controller.enqueue({\n type: \"reasoning-end\",\n id: \"reasoning-0\"\n });\n isActiveReasoning = false;\n }\n if (!isActiveText) {\n controller.enqueue({ type: \"text-start\", id: \"txt-0\" });\n isActiveText = true;\n }\n controller.enqueue({\n type: \"text-delta\",\n id: \"txt-0\",\n delta: delta.content\n });\n }\n if (delta.tool_calls != null) {\n if (isActiveReasoning) {\n controller.enqueue({\n type: \"reasoning-end\",\n id: \"reasoning-0\"\n });\n isActiveReasoning = false;\n }\n for (const toolCallDelta of delta.tool_calls) {\n const index = (_c = toolCallDelta.index) != null ? _c : toolCalls.length;\n if (toolCalls[index] == null) {\n if (toolCallDelta.id == null) {\n throw new InvalidResponseDataError({\n data: toolCallDelta,\n message: `Expected 'id' to be a string.`\n });\n }\n if (((_d = toolCallDelta.function) == null ? void 0 : _d.name) == null) {\n throw new InvalidResponseDataError({\n data: toolCallDelta,\n message: `Expected 'function.name' to be a string.`\n });\n }\n controller.enqueue({\n type: \"tool-input-start\",\n id: toolCallDelta.id,\n toolName: toolCallDelta.function.name\n });\n toolCalls[index] = {\n id: toolCallDelta.id,\n type: \"function\",\n function: {\n name: toolCallDelta.function.name,\n arguments: (_e = toolCallDelta.function.arguments) != null ? _e : \"\"\n },\n hasFinished: false,\n thoughtSignature: (_h = (_g = (_f = toolCallDelta.extra_content) == null ? void 0 : _f.google) == null ? void 0 : _g.thought_signature) != null ? _h : void 0\n };\n const toolCall2 = toolCalls[index];\n if (((_i = toolCall2.function) == null ? void 0 : _i.name) != null && ((_j = toolCall2.function) == null ? void 0 : _j.arguments) != null) {\n if (toolCall2.function.arguments.length > 0) {\n controller.enqueue({\n type: \"tool-input-delta\",\n id: toolCall2.id,\n delta: toolCall2.function.arguments\n });\n }\n if (isParsableJson(toolCall2.function.arguments)) {\n controller.enqueue({\n type: \"tool-input-end\",\n id: toolCall2.id\n });\n controller.enqueue({\n type: \"tool-call\",\n toolCallId: (_k = toolCall2.id) != null ? _k : generateId(),\n toolName: toolCall2.function.name,\n input: toolCall2.function.arguments,\n ...toolCall2.thoughtSignature ? {\n providerMetadata: {\n [providerOptionsName]: {\n thoughtSignature: toolCall2.thoughtSignature\n }\n }\n } : {}\n });\n toolCall2.hasFinished = true;\n }\n }\n continue;\n }\n const toolCall = toolCalls[index];\n if (toolCall.hasFinished) {\n continue;\n }\n if (((_l = toolCallDelta.function) == null ? void 0 : _l.arguments) != null) {\n toolCall.function.arguments += (_n = (_m = toolCallDelta.function) == null ? void 0 : _m.arguments) != null ? _n : \"\";\n }\n controller.enqueue({\n type: \"tool-input-delta\",\n id: toolCall.id,\n delta: (_o = toolCallDelta.function.arguments) != null ? _o : \"\"\n });\n if (((_p = toolCall.function) == null ? void 0 : _p.name) != null && ((_q = toolCall.function) == null ? void 0 : _q.arguments) != null && isParsableJson(toolCall.function.arguments)) {\n controller.enqueue({\n type: \"tool-input-end\",\n id: toolCall.id\n });\n controller.enqueue({\n type: \"tool-call\",\n toolCallId: (_r = toolCall.id) != null ? _r : generateId(),\n toolName: toolCall.function.name,\n input: toolCall.function.arguments,\n ...toolCall.thoughtSignature ? {\n providerMetadata: {\n [providerOptionsName]: {\n thoughtSignature: toolCall.thoughtSignature\n }\n }\n } : {}\n });\n toolCall.hasFinished = true;\n }\n }\n }\n },\n flush(controller) {\n var _a2, _b, _c, _d, _e;\n if (isActiveReasoning) {\n controller.enqueue({ type: \"reasoning-end\", id: \"reasoning-0\" });\n }\n if (isActiveText) {\n controller.enqueue({ type: \"text-end\", id: \"txt-0\" });\n }\n for (const toolCall of toolCalls.filter(\n (toolCall2) => !toolCall2.hasFinished\n )) {\n controller.enqueue({\n type: \"tool-input-end\",\n id: toolCall.id\n });\n controller.enqueue({\n type: \"tool-call\",\n toolCallId: (_a2 = toolCall.id) != null ? _a2 : generateId(),\n toolName: toolCall.function.name,\n input: toolCall.function.arguments,\n ...toolCall.thoughtSignature ? {\n providerMetadata: {\n [providerOptionsName]: {\n thoughtSignature: toolCall.thoughtSignature\n }\n }\n } : {}\n });\n }\n const providerMetadata = {\n [providerOptionsName]: {},\n ...metadataExtractor == null ? void 0 : metadataExtractor.buildMetadata()\n };\n if (((_b = usage == null ? void 0 : usage.completion_tokens_details) == null ? void 0 : _b.accepted_prediction_tokens) != null) {\n providerMetadata[providerOptionsName].acceptedPredictionTokens = (_c = usage == null ? void 0 : usage.completion_tokens_details) == null ? void 0 : _c.accepted_prediction_tokens;\n }\n if (((_d = usage == null ? void 0 : usage.completion_tokens_details) == null ? void 0 : _d.rejected_prediction_tokens) != null) {\n providerMetadata[providerOptionsName].rejectedPredictionTokens = (_e = usage == null ? void 0 : usage.completion_tokens_details) == null ? void 0 : _e.rejected_prediction_tokens;\n }\n controller.enqueue({\n type: \"finish\",\n finishReason,\n usage: convertOpenAICompatibleChatUsage(usage),\n providerMetadata\n });\n }\n })\n ),\n request: { body },\n response: { headers: responseHeaders }\n };\n }\n};\nvar openaiCompatibleTokenUsageSchema = z3.looseObject({\n prompt_tokens: z3.number().nullish(),\n completion_tokens: z3.number().nullish(),\n total_tokens: z3.number().nullish(),\n prompt_tokens_details: z3.object({\n cached_tokens: z3.number().nullish()\n }).nullish(),\n completion_tokens_details: z3.object({\n reasoning_tokens: z3.number().nullish(),\n accepted_prediction_tokens: z3.number().nullish(),\n rejected_prediction_tokens: z3.number().nullish()\n }).nullish()\n}).nullish();\nvar OpenAICompatibleChatResponseSchema = z3.looseObject({\n id: z3.string().nullish(),\n created: z3.number().nullish(),\n model: z3.string().nullish(),\n choices: z3.array(\n z3.object({\n message: z3.object({\n role: z3.literal(\"assistant\").nullish(),\n content: z3.string().nullish(),\n reasoning_content: z3.string().nullish(),\n reasoning: z3.string().nullish(),\n tool_calls: z3.array(\n z3.object({\n id: z3.string().nullish(),\n function: z3.object({\n name: z3.string(),\n arguments: z3.string()\n }),\n // Support for Google Gemini thought signatures via OpenAI compatibility\n extra_content: z3.object({\n google: z3.object({\n thought_signature: z3.string().nullish()\n }).nullish()\n }).nullish()\n })\n ).nullish()\n }),\n finish_reason: z3.string().nullish()\n })\n ),\n usage: openaiCompatibleTokenUsageSchema\n});\nvar chunkBaseSchema = z3.looseObject({\n id: z3.string().nullish(),\n created: z3.number().nullish(),\n model: z3.string().nullish(),\n choices: z3.array(\n z3.object({\n delta: z3.object({\n role: z3.enum([\"assistant\"]).nullish(),\n content: z3.string().nullish(),\n // Most openai-compatible models set `reasoning_content`, but some\n // providers serving `gpt-oss` set `reasoning`. See #7866\n reasoning_content: z3.string().nullish(),\n reasoning: z3.string().nullish(),\n tool_calls: z3.array(\n z3.object({\n index: z3.number().nullish(),\n //google does not send index\n id: z3.string().nullish(),\n function: z3.object({\n name: z3.string().nullish(),\n arguments: z3.string().nullish()\n }),\n // Support for Google Gemini thought signatures via OpenAI compatibility\n extra_content: z3.object({\n google: z3.object({\n thought_signature: z3.string().nullish()\n }).nullish()\n }).nullish()\n })\n ).nullish()\n }).nullish(),\n finish_reason: z3.string().nullish()\n })\n ),\n usage: openaiCompatibleTokenUsageSchema\n});\nvar createOpenAICompatibleChatChunkSchema = (errorSchema) => z3.union([chunkBaseSchema, errorSchema]);\n\n// src/completion/openai-compatible-completion-language-model.ts\nimport {\n combineHeaders as combineHeaders2,\n createEventSourceResponseHandler as createEventSourceResponseHandler2,\n createJsonErrorResponseHandler as createJsonErrorResponseHandler2,\n createJsonResponseHandler as createJsonResponseHandler2,\n parseProviderOptions as parseProviderOptions2,\n postJsonToApi as postJsonToApi2\n} from \"@ai-sdk/provider-utils\";\nimport { z as z5 } from \"zod/v4\";\n\n// src/completion/convert-openai-compatible-completion-usage.ts\nfunction convertOpenAICompatibleCompletionUsage(usage) {\n var _a, _b;\n if (usage == null) {\n return {\n inputTokens: {\n total: void 0,\n noCache: void 0,\n cacheRead: void 0,\n cacheWrite: void 0\n },\n outputTokens: {\n total: void 0,\n text: void 0,\n reasoning: void 0\n },\n raw: void 0\n };\n }\n const promptTokens = (_a = usage.prompt_tokens) != null ? _a : 0;\n const completionTokens = (_b = usage.completion_tokens) != null ? _b : 0;\n return {\n inputTokens: {\n total: promptTokens,\n noCache: promptTokens,\n cacheRead: void 0,\n cacheWrite: void 0\n },\n outputTokens: {\n total: completionTokens,\n text: completionTokens,\n reasoning: void 0\n },\n raw: usage\n };\n}\n\n// src/completion/convert-to-openai-compatible-completion-prompt.ts\nimport {\n InvalidPromptError,\n UnsupportedFunctionalityError as UnsupportedFunctionalityError3\n} from \"@ai-sdk/provider\";\nfunction convertToOpenAICompatibleCompletionPrompt({\n prompt,\n user = \"user\",\n assistant = \"assistant\"\n}) {\n let text = \"\";\n if (prompt[0].role === \"system\") {\n text += `${prompt[0].content}\n\n`;\n prompt = prompt.slice(1);\n }\n for (const { role, content } of prompt) {\n switch (role) {\n case \"system\": {\n throw new InvalidPromptError({\n message: \"Unexpected system message in prompt: ${content}\",\n prompt\n });\n }\n case \"user\": {\n const userMessage = content.map((part) => {\n switch (part.type) {\n case \"text\": {\n return part.text;\n }\n }\n }).filter(Boolean).join(\"\");\n text += `${user}:\n${userMessage}\n\n`;\n break;\n }\n case \"assistant\": {\n const assistantMessage = content.map((part) => {\n switch (part.type) {\n case \"text\": {\n return part.text;\n }\n case \"tool-call\": {\n throw new UnsupportedFunctionalityError3({\n functionality: \"tool-call messages\"\n });\n }\n }\n }).join(\"\");\n text += `${assistant}:\n${assistantMessage}\n\n`;\n break;\n }\n case \"tool\": {\n throw new UnsupportedFunctionalityError3({\n functionality: \"tool messages\"\n });\n }\n default: {\n const _exhaustiveCheck = role;\n throw new Error(`Unsupported role: ${_exhaustiveCheck}`);\n }\n }\n }\n text += `${assistant}:\n`;\n return {\n prompt: text,\n stopSequences: [`\n${user}:`]\n };\n}\n\n// src/completion/get-response-metadata.ts\nfunction getResponseMetadata2({\n id,\n model,\n created\n}) {\n return {\n id: id != null ? id : void 0,\n modelId: model != null ? model : void 0,\n timestamp: created != null ? new Date(created * 1e3) : void 0\n };\n}\n\n// src/completion/map-openai-compatible-finish-reason.ts\nfunction mapOpenAICompatibleFinishReason2(finishReason) {\n switch (finishReason) {\n case \"stop\":\n return \"stop\";\n case \"length\":\n return \"length\";\n case \"content_filter\":\n return \"content-filter\";\n case \"function_call\":\n case \"tool_calls\":\n return \"tool-calls\";\n default:\n return \"other\";\n }\n}\n\n// src/completion/openai-compatible-completion-options.ts\nimport { z as z4 } from \"zod/v4\";\nvar openaiCompatibleLanguageModelCompletionOptions = z4.object({\n /**\n * Echo back the prompt in addition to the completion.\n */\n echo: z4.boolean().optional(),\n /**\n * Modify the likelihood of specified tokens appearing in the completion.\n *\n * Accepts a JSON object that maps tokens (specified by their token ID in\n * the GPT tokenizer) to an associated bias value from -100 to 100.\n */\n logitBias: z4.record(z4.string(), z4.number()).optional(),\n /**\n * The suffix that comes after a completion of inserted text.\n */\n suffix: z4.string().optional(),\n /**\n * A unique identifier representing your end-user, which can help providers to\n * monitor and detect abuse.\n */\n user: z4.string().optional()\n});\n\n// src/completion/openai-compatible-completion-language-model.ts\nvar OpenAICompatibleCompletionLanguageModel = class {\n // type inferred via constructor\n constructor(modelId, config) {\n this.specificationVersion = \"v3\";\n var _a;\n this.modelId = modelId;\n this.config = config;\n const errorStructure = (_a = config.errorStructure) != null ? _a : defaultOpenAICompatibleErrorStructure;\n this.chunkSchema = createOpenAICompatibleCompletionChunkSchema(\n errorStructure.errorSchema\n );\n this.failedResponseHandler = createJsonErrorResponseHandler2(errorStructure);\n }\n get provider() {\n return this.config.provider;\n }\n get providerOptionsName() {\n return this.config.provider.split(\".\")[0].trim();\n }\n get supportedUrls() {\n var _a, _b, _c;\n return (_c = (_b = (_a = this.config).supportedUrls) == null ? void 0 : _b.call(_a)) != null ? _c : {};\n }\n async getArgs({\n prompt,\n maxOutputTokens,\n temperature,\n topP,\n topK,\n frequencyPenalty,\n presencePenalty,\n stopSequences: userStopSequences,\n responseFormat,\n seed,\n providerOptions,\n tools,\n toolChoice\n }) {\n var _a;\n const warnings = [];\n const completionOptions = (_a = await parseProviderOptions2({\n provider: this.providerOptionsName,\n providerOptions,\n schema: openaiCompatibleLanguageModelCompletionOptions\n })) != null ? _a : {};\n if (topK != null) {\n warnings.push({ type: \"unsupported\", feature: \"topK\" });\n }\n if (tools == null ? void 0 : tools.length) {\n warnings.push({ type: \"unsupported\", feature: \"tools\" });\n }\n if (toolChoice != null) {\n warnings.push({ type: \"unsupported\", feature: \"toolChoice\" });\n }\n if (responseFormat != null && responseFormat.type !== \"text\") {\n warnings.push({\n type: \"unsupported\",\n feature: \"responseFormat\",\n details: \"JSON response format is not supported.\"\n });\n }\n const { prompt: completionPrompt, stopSequences } = convertToOpenAICompatibleCompletionPrompt({ prompt });\n const stop = [...stopSequences != null ? stopSequences : [], ...userStopSequences != null ? userStopSequences : []];\n return {\n args: {\n // model id:\n model: this.modelId,\n // model specific settings:\n echo: completionOptions.echo,\n logit_bias: completionOptions.logitBias,\n suffix: completionOptions.suffix,\n user: completionOptions.user,\n // standardized settings:\n max_tokens: maxOutputTokens,\n temperature,\n top_p: topP,\n frequency_penalty: frequencyPenalty,\n presence_penalty: presencePenalty,\n seed,\n ...providerOptions == null ? void 0 : providerOptions[this.providerOptionsName],\n // prompt:\n prompt: completionPrompt,\n // stop sequences:\n stop: stop.length > 0 ? stop : void 0\n },\n warnings\n };\n }\n async doGenerate(options) {\n const { args, warnings } = await this.getArgs(options);\n const {\n responseHeaders,\n value: response,\n rawValue: rawResponse\n } = await postJsonToApi2({\n url: this.config.url({\n path: \"/completions\",\n modelId: this.modelId\n }),\n headers: combineHeaders2(this.config.headers(), options.headers),\n body: args,\n failedResponseHandler: this.failedResponseHandler,\n successfulResponseHandler: createJsonResponseHandler2(\n openaiCompatibleCompletionResponseSchema\n ),\n abortSignal: options.abortSignal,\n fetch: this.config.fetch\n });\n const choice = response.choices[0];\n const content = [];\n if (choice.text != null && choice.text.length > 0) {\n content.push({ type: \"text\", text: choice.text });\n }\n return {\n content,\n usage: convertOpenAICompatibleCompletionUsage(response.usage),\n finishReason: {\n unified: mapOpenAICompatibleFinishReason2(choice.finish_reason),\n raw: choice.finish_reason\n },\n request: { body: args },\n response: {\n ...getResponseMetadata2(response),\n headers: responseHeaders,\n body: rawResponse\n },\n warnings\n };\n }\n async doStream(options) {\n const { args, warnings } = await this.getArgs(options);\n const body = {\n ...args,\n stream: true,\n // only include stream_options when in strict compatibility mode:\n stream_options: this.config.includeUsage ? { include_usage: true } : void 0\n };\n const { responseHeaders, value: response } = await postJsonToApi2({\n url: this.config.url({\n path: \"/completions\",\n modelId: this.modelId\n }),\n headers: combineHeaders2(this.config.headers(), options.headers),\n body,\n failedResponseHandler: this.failedResponseHandler,\n successfulResponseHandler: createEventSourceResponseHandler2(\n this.chunkSchema\n ),\n abortSignal: options.abortSignal,\n fetch: this.config.fetch\n });\n let finishReason = {\n unified: \"other\",\n raw: void 0\n };\n let usage = void 0;\n let isFirstChunk = true;\n return {\n stream: response.pipeThrough(\n new TransformStream({\n start(controller) {\n controller.enqueue({ type: \"stream-start\", warnings });\n },\n transform(chunk, controller) {\n var _a;\n if (options.includeRawChunks) {\n controller.enqueue({ type: \"raw\", rawValue: chunk.rawValue });\n }\n if (!chunk.success) {\n finishReason = { unified: \"error\", raw: void 0 };\n controller.enqueue({ type: \"error\", error: chunk.error });\n return;\n }\n const value = chunk.value;\n if (\"error\" in value) {\n finishReason = { unified: \"error\", raw: void 0 };\n controller.enqueue({ type: \"error\", error: value.error });\n return;\n }\n if (isFirstChunk) {\n isFirstChunk = false;\n controller.enqueue({\n type: \"response-metadata\",\n ...getResponseMetadata2(value)\n });\n controller.enqueue({\n type: \"text-start\",\n id: \"0\"\n });\n }\n if (value.usage != null) {\n usage = value.usage;\n }\n const choice = value.choices[0];\n if ((choice == null ? void 0 : choice.finish_reason) != null) {\n finishReason = {\n unified: mapOpenAICompatibleFinishReason2(choice.finish_reason),\n raw: (_a = choice.finish_reason) != null ? _a : void 0\n };\n }\n if ((choice == null ? void 0 : choice.text) != null) {\n controller.enqueue({\n type: \"text-delta\",\n id: \"0\",\n delta: choice.text\n });\n }\n },\n flush(controller) {\n if (!isFirstChunk) {\n controller.enqueue({ type: \"text-end\", id: \"0\" });\n }\n controller.enqueue({\n type: \"finish\",\n finishReason,\n usage: convertOpenAICompatibleCompletionUsage(usage)\n });\n }\n })\n ),\n request: { body },\n response: { headers: responseHeaders }\n };\n }\n};\nvar usageSchema = z5.object({\n prompt_tokens: z5.number(),\n completion_tokens: z5.number(),\n total_tokens: z5.number()\n});\nvar openaiCompatibleCompletionResponseSchema = z5.object({\n id: z5.string().nullish(),\n created: z5.number().nullish(),\n model: z5.string().nullish(),\n choices: z5.array(\n z5.object({\n text: z5.string(),\n finish_reason: z5.string()\n })\n ),\n usage: usageSchema.nullish()\n});\nvar createOpenAICompatibleCompletionChunkSchema = (errorSchema) => z5.union([\n z5.object({\n id: z5.string().nullish(),\n created: z5.number().nullish(),\n model: z5.string().nullish(),\n choices: z5.array(\n z5.object({\n text: z5.string(),\n finish_reason: z5.string().nullish(),\n index: z5.number()\n })\n ),\n usage: usageSchema.nullish()\n }),\n errorSchema\n]);\n\n// src/embedding/openai-compatible-embedding-model.ts\nimport {\n TooManyEmbeddingValuesForCallError\n} from \"@ai-sdk/provider\";\nimport {\n combineHeaders as combineHeaders3,\n createJsonErrorResponseHandler as createJsonErrorResponseHandler3,\n createJsonResponseHandler as createJsonResponseHandler3,\n parseProviderOptions as parseProviderOptions3,\n postJsonToApi as postJsonToApi3\n} from \"@ai-sdk/provider-utils\";\nimport { z as z7 } from \"zod/v4\";\n\n// src/embedding/openai-compatible-embedding-options.ts\nimport { z as z6 } from \"zod/v4\";\nvar openaiCompatibleEmbeddingModelOptions = z6.object({\n /**\n * The number of dimensions the resulting output embeddings should have.\n * Only supported in text-embedding-3 and later models.\n */\n dimensions: z6.number().optional(),\n /**\n * A unique identifier representing your end-user, which can help providers to\n * monitor and detect abuse.\n */\n user: z6.string().optional()\n});\n\n// src/embedding/openai-compatible-embedding-model.ts\nvar OpenAICompatibleEmbeddingModel = class {\n constructor(modelId, config) {\n this.specificationVersion = \"v3\";\n this.modelId = modelId;\n this.config = config;\n }\n get provider() {\n return this.config.provider;\n }\n get maxEmbeddingsPerCall() {\n var _a;\n return (_a = this.config.maxEmbeddingsPerCall) != null ? _a : 2048;\n }\n get supportsParallelCalls() {\n var _a;\n return (_a = this.config.supportsParallelCalls) != null ? _a : true;\n }\n get providerOptionsName() {\n return this.config.provider.split(\".\")[0].trim();\n }\n async doEmbed({\n values,\n headers,\n abortSignal,\n providerOptions\n }) {\n var _a, _b, _c;\n const warnings = [];\n const deprecatedOptions = await parseProviderOptions3({\n provider: \"openai-compatible\",\n providerOptions,\n schema: openaiCompatibleEmbeddingModelOptions\n });\n if (deprecatedOptions != null) {\n warnings.push({\n type: \"other\",\n message: `The 'openai-compatible' key in providerOptions is deprecated. Use 'openaiCompatible' instead.`\n });\n }\n const compatibleOptions = Object.assign(\n deprecatedOptions != null ? deprecatedOptions : {},\n (_a = await parseProviderOptions3({\n provider: \"openaiCompatible\",\n providerOptions,\n schema: openaiCompatibleEmbeddingModelOptions\n })) != null ? _a : {},\n (_b = await parseProviderOptions3({\n provider: this.providerOptionsName,\n providerOptions,\n schema: openaiCompatibleEmbeddingModelOptions\n })) != null ? _b : {}\n );\n if (values.length > this.maxEmbeddingsPerCall) {\n throw new TooManyEmbeddingValuesForCallError({\n provider: this.provider,\n modelId: this.modelId,\n maxEmbeddingsPerCall: this.maxEmbeddingsPerCall,\n values\n });\n }\n const {\n responseHeaders,\n value: response,\n rawValue\n } = await postJsonToApi3({\n url: this.config.url({\n path: \"/embeddings\",\n modelId: this.modelId\n }),\n headers: combineHeaders3(this.config.headers(), headers),\n body: {\n model: this.modelId,\n input: values,\n encoding_format: \"float\",\n dimensions: compatibleOptions.dimensions,\n user: compatibleOptions.user\n },\n failedResponseHandler: createJsonErrorResponseHandler3(\n (_c = this.config.errorStructure) != null ? _c : defaultOpenAICompatibleErrorStructure\n ),\n successfulResponseHandler: createJsonResponseHandler3(\n openaiTextEmbeddingResponseSchema\n ),\n abortSignal,\n fetch: this.config.fetch\n });\n return {\n warnings,\n embeddings: response.data.map((item) => item.embedding),\n usage: response.usage ? { tokens: response.usage.prompt_tokens } : void 0,\n providerMetadata: response.providerMetadata,\n response: { headers: responseHeaders, body: rawValue }\n };\n }\n};\nvar openaiTextEmbeddingResponseSchema = z7.object({\n data: z7.array(z7.object({ embedding: z7.array(z7.number()) })),\n usage: z7.object({ prompt_tokens: z7.number() }).nullish(),\n providerMetadata: z7.record(z7.string(), z7.record(z7.string(), z7.any())).optional()\n});\n\n// src/image/openai-compatible-image-model.ts\nimport {\n combineHeaders as combineHeaders4,\n convertBase64ToUint8Array as convertBase64ToUint8Array2,\n convertToFormData,\n createJsonErrorResponseHandler as createJsonErrorResponseHandler4,\n createJsonResponseHandler as createJsonResponseHandler4,\n downloadBlob,\n postFormDataToApi,\n postJsonToApi as postJsonToApi4\n} from \"@ai-sdk/provider-utils\";\nimport { z as z8 } from \"zod/v4\";\nvar OpenAICompatibleImageModel = class {\n constructor(modelId, config) {\n this.modelId = modelId;\n this.config = config;\n this.specificationVersion = \"v3\";\n this.maxImagesPerCall = 10;\n }\n get provider() {\n return this.config.provider;\n }\n /**\n * The provider options key used to extract provider-specific options.\n */\n get providerOptionsKey() {\n return this.config.provider.split(\".\")[0].trim();\n }\n // TODO: deprecate non-camelCase keys and remove in future major version\n getArgs(providerOptions) {\n return {\n ...providerOptions[this.providerOptionsKey],\n ...providerOptions[toCamelCase(this.providerOptionsKey)]\n };\n }\n async doGenerate({\n prompt,\n n,\n size,\n aspectRatio,\n seed,\n providerOptions,\n headers,\n abortSignal,\n files,\n mask\n }) {\n var _a, _b, _c, _d, _e;\n const warnings = [];\n if (aspectRatio != null) {\n warnings.push({\n type: \"unsupported\",\n feature: \"aspectRatio\",\n details: \"This model does not support aspect ratio. Use `size` instead.\"\n });\n }\n if (seed != null) {\n warnings.push({ type: \"unsupported\", feature: \"seed\" });\n }\n const currentDate = (_c = (_b = (_a = this.config._internal) == null ? void 0 : _a.currentDate) == null ? void 0 : _b.call(_a)) != null ? _c : /* @__PURE__ */ new Date();\n const args = this.getArgs(providerOptions);\n if (files != null && files.length > 0) {\n const { value: response2, responseHeaders: responseHeaders2 } = await postFormDataToApi({\n url: this.config.url({\n path: \"/images/edits\",\n modelId: this.modelId\n }),\n headers: combineHeaders4(this.config.headers(), headers),\n formData: convertToFormData({\n model: this.modelId,\n prompt,\n image: await Promise.all(files.map((file) => fileToBlob(file))),\n mask: mask != null ? await fileToBlob(mask) : void 0,\n n,\n size,\n ...args\n }),\n failedResponseHandler: createJsonErrorResponseHandler4(\n (_d = this.config.errorStructure) != null ? _d : defaultOpenAICompatibleErrorStructure\n ),\n successfulResponseHandler: createJsonResponseHandler4(\n openaiCompatibleImageResponseSchema\n ),\n abortSignal,\n fetch: this.config.fetch\n });\n return {\n images: response2.data.map((item) => item.b64_json),\n warnings,\n response: {\n timestamp: currentDate,\n modelId: this.modelId,\n headers: responseHeaders2\n }\n };\n }\n const { value: response, responseHeaders } = await postJsonToApi4({\n url: this.config.url({\n path: \"/images/generations\",\n modelId: this.modelId\n }),\n headers: combineHeaders4(this.config.headers(), headers),\n body: {\n model: this.modelId,\n prompt,\n n,\n size,\n ...args,\n response_format: \"b64_json\"\n },\n failedResponseHandler: createJsonErrorResponseHandler4(\n (_e = this.config.errorStructure) != null ? _e : defaultOpenAICompatibleErrorStructure\n ),\n successfulResponseHandler: createJsonResponseHandler4(\n openaiCompatibleImageResponseSchema\n ),\n abortSignal,\n fetch: this.config.fetch\n });\n return {\n images: response.data.map((item) => item.b64_json),\n warnings,\n response: {\n timestamp: currentDate,\n modelId: this.modelId,\n headers: responseHeaders\n }\n };\n }\n};\nvar openaiCompatibleImageResponseSchema = z8.object({\n data: z8.array(z8.object({ b64_json: z8.string() }))\n});\nasync function fileToBlob(file) {\n if (file.type === \"url\") {\n return downloadBlob(file.url);\n }\n const data = file.data instanceof Uint8Array ? file.data : convertBase64ToUint8Array2(file.data);\n return new Blob([data], { type: file.mediaType });\n}\nfunction toCamelCase(str) {\n return str.replace(/[_-]([a-z])/g, (g) => g[1].toUpperCase());\n}\n\n// src/openai-compatible-provider.ts\nimport {\n withoutTrailingSlash,\n withUserAgentSuffix\n} from \"@ai-sdk/provider-utils\";\n\n// src/version.ts\nvar VERSION = true ? \"2.0.37\" : \"0.0.0-test\";\n\n// src/openai-compatible-provider.ts\nfunction createOpenAICompatible(options) {\n const baseURL = withoutTrailingSlash(options.baseURL);\n const providerName = options.name;\n const headers = {\n ...options.apiKey && { Authorization: `Bearer ${options.apiKey}` },\n ...options.headers\n };\n const getHeaders = () => withUserAgentSuffix(headers, `ai-sdk/openai-compatible/${VERSION}`);\n const getCommonModelConfig = (modelType) => ({\n provider: `${providerName}.${modelType}`,\n url: ({ path }) => {\n const url = new URL(`${baseURL}${path}`);\n if (options.queryParams) {\n url.search = new URLSearchParams(options.queryParams).toString();\n }\n return url.toString();\n },\n headers: getHeaders,\n fetch: options.fetch\n });\n const createLanguageModel = (modelId) => createChatModel(modelId);\n const createChatModel = (modelId) => new OpenAICompatibleChatLanguageModel(modelId, {\n ...getCommonModelConfig(\"chat\"),\n includeUsage: options.includeUsage,\n supportsStructuredOutputs: options.supportsStructuredOutputs,\n transformRequestBody: options.transformRequestBody,\n metadataExtractor: options.metadataExtractor\n });\n const createCompletionModel = (modelId) => new OpenAICompatibleCompletionLanguageModel(modelId, {\n ...getCommonModelConfig(\"completion\"),\n includeUsage: options.includeUsage\n });\n const createEmbeddingModel = (modelId) => new OpenAICompatibleEmbeddingModel(modelId, {\n ...getCommonModelConfig(\"embedding\")\n });\n const createImageModel = (modelId) => new OpenAICompatibleImageModel(modelId, getCommonModelConfig(\"image\"));\n const provider = (modelId) => createLanguageModel(modelId);\n provider.specificationVersion = \"v3\";\n provider.languageModel = createLanguageModel;\n provider.chatModel = createChatModel;\n provider.completionModel = createCompletionModel;\n provider.embeddingModel = createEmbeddingModel;\n provider.textEmbeddingModel = createEmbeddingModel;\n provider.imageModel = createImageModel;\n return provider;\n}\nexport {\n OpenAICompatibleChatLanguageModel,\n OpenAICompatibleCompletionLanguageModel,\n OpenAICompatibleEmbeddingModel,\n OpenAICompatibleImageModel,\n VERSION,\n createOpenAICompatible\n};\n//# sourceMappingURL=index.mjs.map"
|
|
6
6
|
],
|
|
7
7
|
"mappings": ";qPAkBA,SAAI,QAAkC,EAAE,OAAO,CAC7C,MAAO,EAAE,OAAO,CACd,QAAS,EAAE,OAAO,EAIlB,KAAM,EAAE,OAAO,EAAE,QAAQ,EACzB,MAAO,EAAE,IAAI,EAAE,QAAQ,EACvB,KAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAG,EAAE,OAAO,CAAC,CAAC,EAAE,QAAQ,CAClD,CAAC,CACH,CAAC,EACG,EAAwC,CAC1C,YAAa,GACb,eAAgB,CAAC,IAAS,EAAK,MAAM,OACvC,EAGA,SAAS,EAAgC,CAAC,EAAO,CAC/C,IAAI,EAAI,EAAI,EAAI,EAAI,EAAI,EACxB,GAAI,GAAS,KACX,MAAO,CACL,YAAa,CACX,MAAY,OACZ,QAAc,OACd,UAAgB,OAChB,WAAiB,MACnB,EACA,aAAc,CACZ,MAAY,OACZ,KAAW,OACX,UAAgB,MAClB,EACA,IAAU,MACZ,EAEF,IAAM,GAAgB,EAAK,EAAM,gBAAkB,KAAO,EAAK,EACzD,GAAoB,EAAK,EAAM,oBAAsB,KAAO,EAAK,EACjE,GAAmB,GAAM,EAAK,EAAM,wBAA0B,KAAY,OAAI,EAAG,gBAAkB,KAAO,EAAK,EAC/G,GAAmB,GAAM,EAAK,EAAM,4BAA8B,KAAY,OAAI,EAAG,mBAAqB,KAAO,EAAK,EAC5H,MAAO,CACL,YAAa,CACX,MAAO,EACP,QAAS,EAAe,EACxB,UAAW,EACX,WAAiB,MACnB,EACA,aAAc,CACZ,MAAO,EACP,KAAM,EAAmB,EACzB,UAAW,CACb,EACA,IAAK,CACP,EAWF,SAAS,CAAiB,CAAC,EAAS,CAClC,IAAI,EAAI,EACR,OAAQ,GAAM,EAAK,GAAW,KAAY,OAAI,EAAQ,kBAAoB,KAAY,OAAI,EAAG,mBAAqB,KAAO,EAAK,CAAC,EAEjI,SAAS,EAAc,CAAC,EAAW,CACjC,OAAQ,OACD,YACH,MAAO,UACJ,gBACA,aACH,MAAO,cAEP,OAAO,MAGb,SAAS,EAAqC,CAAC,EAAQ,CACrD,IAAI,EAAI,EAAI,EACZ,IAAM,EAAW,CAAC,EAClB,QAAa,OAAM,aAAY,KAAa,EAAQ,CAClD,IAAM,EAAW,EAAkB,IAAK,CAAQ,CAAC,EACjD,OAAQ,OACD,SAAU,CACb,EAAS,KAAK,CAAE,KAAM,SAAU,aAAY,CAAS,CAAC,EACtD,KACF,KACK,OAAQ,CACX,GAAI,EAAQ,SAAW,GAAK,EAAQ,GAAG,OAAS,OAAQ,CACtD,EAAS,KAAK,CACZ,KAAM,OACN,QAAS,EAAQ,GAAG,QACjB,EAAkB,EAAQ,EAAE,CACjC,CAAC,EACD,MAEF,EAAS,KAAK,CACZ,KAAM,OACN,QAAS,EAAQ,IAAI,CAAC,IAAS,CAC7B,IAAI,EACJ,IAAM,EAAe,EAAkB,CAAI,EAC3C,OAAQ,EAAK,UACN,OACH,MAAO,CAAE,KAAM,OAAQ,KAAM,EAAK,QAAS,CAAa,MAErD,OAAQ,CACX,GAAI,EAAK,UAAU,WAAW,QAAQ,EAAG,CACvC,IAAM,EAAY,EAAK,YAAc,UAAY,aAAe,EAAK,UACrE,MAAO,CACL,KAAM,YACN,UAAW,CACT,IAAK,EAAK,gBAAgB,IAAM,EAAK,KAAK,SAAS,EAAI,QAAQ,YAAoB,EAAgB,EAAK,IAAI,GAC9G,KACG,CACL,EAEF,GAAI,EAAK,UAAU,WAAW,QAAQ,EAAG,CACvC,GAAI,EAAK,gBAAgB,IACvB,MAAM,IAAI,EAA8B,CACtC,cAAe,4BACjB,CAAC,EAEH,IAAM,EAAS,GAAe,EAAK,SAAS,EAC5C,GAAI,IAAW,KACb,MAAM,IAAI,EAA8B,CACtC,cAAe,oBAAoB,EAAK,WAC1C,CAAC,EAEH,MAAO,CACL,KAAM,cACN,YAAa,CACX,KAAM,EAAgB,EAAK,IAAI,EAC/B,QACF,KACG,CACL,EAEF,GAAI,EAAK,YAAc,kBAAmB,CACxC,GAAI,EAAK,gBAAgB,IACvB,MAAM,IAAI,EAA8B,CACtC,cAAe,0BACjB,CAAC,EAEH,MAAO,CACL,KAAM,OACN,KAAM,CACJ,UAAW,EAAM,EAAK,WAAa,KAAO,EAAM,eAChD,UAAW,+BAA+B,EAAgB,EAAK,IAAI,GACrE,KACG,CACL,EAEF,GAAI,EAAK,UAAU,WAAW,OAAO,EAInC,MAAO,CACL,KAAM,OACN,KALkB,EAAK,gBAAgB,IAAM,EAAK,KAAK,SAAS,EAAI,OAAO,EAAK,OAAS,SAAW,IAAI,YAAY,EAAE,OACtH,GAA0B,EAAK,IAAI,CACrC,EAAI,IAAI,YAAY,EAAE,OAAO,EAAK,IAAI,KAIjC,CACL,EAEF,MAAM,IAAI,EAA8B,CACtC,cAAe,wBAAwB,EAAK,WAC9C,CAAC,CACH,GAEH,KACE,CACL,CAAC,EACD,KACF,KACK,YAAa,CAChB,IAAI,EAAO,GACP,EAAY,GACV,EAAY,CAAC,EACnB,QAAW,KAAQ,EAAS,CAC1B,IAAM,EAAe,EAAkB,CAAI,EAC3C,OAAQ,EAAK,UACN,OAAQ,CACX,GAAQ,EAAK,KACb,KACF,KACK,YAAa,CAChB,GAAa,EAAK,KAClB,KACF,KACK,YAAa,CAChB,IAAM,GAAoB,GAAM,EAAK,EAAK,kBAAoB,KAAY,OAAI,EAAG,SAAW,KAAY,OAAI,EAAG,iBAC/G,EAAU,KAAK,CACb,GAAI,EAAK,WACT,KAAM,WACN,SAAU,CACR,KAAM,EAAK,SACX,UAAW,KAAK,UAAU,EAAK,KAAK,CACtC,KACG,KAEA,EAAmB,CACpB,cAAe,CACb,OAAQ,CACN,kBAAmB,OAAO,CAAgB,CAC5C,CACF,CACF,EAAI,CAAC,CACP,CAAC,EACD,KACF,GAGJ,EAAS,KAAK,CACZ,KAAM,YACN,QAAS,KACN,EAAU,OAAS,EAAI,CAAE,kBAAmB,CAAU,EAAI,CAAC,EAC9D,WAAY,EAAU,OAAS,EAAI,EAAiB,UACjD,CACL,CAAC,EACD,KACF,KACK,OAAQ,CACX,QAAW,KAAgB,EAAS,CAClC,GAAI,EAAa,OAAS,yBACxB,SAEF,IAAM,EAAS,EAAa,OACxB,EACJ,OAAQ,EAAO,UACR,WACA,aACH,EAAe,EAAO,MACtB,UACG,mBACH,GAAgB,EAAK,EAAO,SAAW,KAAO,EAAK,yBACnD,UACG,cACA,WACA,aACH,EAAe,KAAK,UAAU,EAAO,KAAK,EAC1C,MAEJ,IAAM,EAAuB,EAAkB,CAAY,EAC3D,EAAS,KAAK,CACZ,KAAM,OACN,aAAc,EAAa,WAC3B,QAAS,KACN,CACL,CAAC,EAEH,KACF,SAGE,MAAU,MAAM,qBADS,GAC8B,GAI7D,OAAO,EAIT,SAAS,EAAmB,EAC1B,KACA,QACA,WACC,CACD,MAAO,CACL,GAAI,GAAM,KAAO,EAAU,OAC3B,QAAS,GAAS,KAAO,EAAa,OACtC,UAAW,GAAW,KAAO,IAAI,KAAK,EAAU,IAAG,EAAS,MAC9D,EAIF,SAAS,EAA+B,CAAC,EAAc,CACrD,OAAQ,OACD,OACH,MAAO,WACJ,SACH,MAAO,aACJ,iBACH,MAAO,qBACJ,oBACA,aACH,MAAO,qBAEP,MAAO,SAMb,IAAI,EAA2C,EAAG,OAAO,CAKvD,KAAM,EAAG,OAAO,EAAE,SAAS,EAI3B,gBAAiB,EAAG,OAAO,EAAE,SAAS,EAItC,cAAe,EAAG,OAAO,EAAE,SAAS,EAQpC,iBAAkB,EAAG,QAAQ,EAAE,SAAS,CAC1C,CAAC,EAMD,SAAS,EAAY,EACnB,QACA,cACC,CACD,GAAS,GAAS,KAAY,OAAI,EAAM,QAAU,EAAa,OAC/D,IAAM,EAAe,CAAC,EACtB,GAAI,GAAS,KACX,MAAO,CAAE,MAAY,OAAG,WAAiB,OAAG,cAAa,EAE3D,IAAM,EAAoB,CAAC,EAC3B,QAAW,KAAQ,EACjB,GAAI,EAAK,OAAS,WAChB,EAAa,KAAK,CAChB,KAAM,cACN,QAAS,yBAAyB,EAAK,IACzC,CAAC,EAED,OAAkB,KAAK,CACrB,KAAM,WACN,SAAU,CACR,KAAM,EAAK,KACX,YAAa,EAAK,YAClB,WAAY,EAAK,eACd,EAAK,QAAU,KAAO,CAAE,OAAQ,EAAK,MAAO,EAAI,CAAC,CACtD,CACF,CAAC,EAGL,GAAI,GAAc,KAChB,MAAO,CAAE,MAAO,EAAmB,WAAiB,OAAG,cAAa,EAEtE,IAAM,EAAO,EAAW,KACxB,OAAQ,OACD,WACA,WACA,WACH,MAAO,CAAE,MAAO,EAAmB,WAAY,EAAM,cAAa,MAC/D,OACH,MAAO,CACL,MAAO,EACP,WAAY,CACV,KAAM,WACN,SAAU,CAAE,KAAM,EAAW,QAAS,CACxC,EACA,cACF,UAGA,MAAM,IAAI,EAA+B,CACvC,cAAe,qBAFQ,GAGzB,CAAC,GAMP,IAAI,GAAoC,KAAM,CAE5C,WAAW,CAAC,EAAS,EAAQ,CAC3B,KAAK,qBAAuB,KAC5B,IAAI,EAAI,EACR,KAAK,QAAU,EACf,KAAK,OAAS,EACd,IAAM,GAAkB,EAAK,EAAO,iBAAmB,KAAO,EAAK,EACnE,KAAK,YAAc,GACjB,EAAe,WACjB,EACA,KAAK,sBAAwB,EAA+B,CAAc,EAC1E,KAAK,2BAA6B,EAAK,EAAO,4BAA8B,KAAO,EAAK,MAEtF,SAAQ,EAAG,CACb,OAAO,KAAK,OAAO,YAEjB,oBAAmB,EAAG,CACxB,OAAO,KAAK,OAAO,SAAS,MAAM,GAAG,EAAE,GAAG,KAAK,KAE7C,cAAa,EAAG,CAClB,IAAI,EAAI,EAAI,EACZ,OAAQ,GAAM,GAAM,EAAK,KAAK,QAAQ,gBAAkB,KAAY,OAAI,EAAG,KAAK,CAAE,IAAM,KAAO,EAAK,CAAC,EAEvG,oBAAoB,CAAC,EAAM,CACzB,IAAI,EAAI,EAAI,EACZ,OAAQ,GAAM,GAAM,EAAK,KAAK,QAAQ,uBAAyB,KAAY,OAAI,EAAG,KAAK,EAAI,CAAI,IAAM,KAAO,EAAK,OAE7G,QAAO,EACX,SACA,kBACA,cACA,OACA,OACA,mBACA,kBACA,kBACA,gBACA,iBACA,OACA,aACA,SACC,CACD,IAAI,EAAI,EAAI,EAAI,EAAI,EACpB,IAAM,EAAW,CAAC,EACZ,EAAoB,MAAM,EAAqB,CACnD,SAAU,oBACV,kBACA,OAAQ,CACV,CAAC,EACD,GAAI,GAAqB,KACvB,EAAS,KAAK,CACZ,KAAM,QACN,QAAS,+FACX,CAAC,EAEH,IAAM,EAAoB,OAAO,OAC/B,GAAqB,KAAO,EAAoB,CAAC,GAChD,EAAK,MAAM,EAAqB,CAC/B,SAAU,mBACV,kBACA,OAAQ,CACV,CAAC,IAAM,KAAO,EAAK,CAAC,GACnB,EAAK,MAAM,EAAqB,CAC/B,SAAU,KAAK,oBACf,kBACA,OAAQ,CACV,CAAC,IAAM,KAAO,EAAK,CAAC,CACtB,EACM,GAAoB,EAAK,GAAqB,KAAY,OAAI,EAAkB,mBAAqB,KAAO,EAAK,GACvH,GAAI,GAAQ,KACV,EAAS,KAAK,CAAE,KAAM,cAAe,QAAS,MAAO,CAAC,EAExD,IAAK,GAAkB,KAAY,OAAI,EAAe,QAAU,QAAU,EAAe,QAAU,MAAQ,CAAC,KAAK,0BAC/G,EAAS,KAAK,CACZ,KAAM,cACN,QAAS,iBACT,QAAS,sEACX,CAAC,EAEH,IACE,MAAO,EACP,WAAY,EACZ,gBACE,GAAa,CACf,QACA,YACF,CAAC,EACD,MAAO,CACL,KAAM,CAEJ,MAAO,KAAK,QAEZ,KAAM,EAAkB,KAExB,WAAY,EACZ,cACA,MAAO,EACP,kBAAmB,EACnB,iBAAkB,EAClB,iBAAkB,GAAkB,KAAY,OAAI,EAAe,QAAU,OAAS,KAAK,4BAA8B,IAAQ,EAAe,QAAU,KAAO,CAC/J,KAAM,cACN,YAAa,CACX,OAAQ,EAAe,OACvB,OAAQ,EACR,MAAO,EAAK,EAAe,OAAS,KAAO,EAAK,WAChD,YAAa,EAAe,WAC9B,CACF,EAAI,CAAE,KAAM,aAAc,EAAS,OACnC,KAAM,EACN,UACG,OAAO,YACR,OAAO,SACJ,EAAK,GAAmB,KAAY,OAAI,EAAgB,KAAK,uBAAyB,KAAO,EAAK,CAAC,CACtG,EAAE,OACA,EAAE,KAAS,CAAC,OAAO,KACjB,EAAyC,KAC3C,EAAE,SAAS,CAAG,CAChB,CACF,EACA,iBAAkB,EAAkB,gBACpC,UAAW,EAAkB,cAE7B,SAAU,GAAsC,CAAM,EAEtD,MAAO,EACP,YAAa,CACf,EACA,SAAU,CAAC,GAAG,EAAU,GAAG,CAAY,CACzC,OAEI,WAAU,CAAC,EAAS,CACxB,IAAI,EAAI,EAAI,EAAI,EAAI,EAAI,EAAI,EAAI,EAChC,IAAQ,OAAM,YAAa,MAAM,KAAK,QAAQ,IAAK,CAAQ,CAAC,EACtD,EAAkB,KAAK,qBAAqB,CAAI,EAChD,EAAO,KAAK,UAAU,CAAe,GAEzC,kBACA,MAAO,EACP,SAAU,GACR,MAAM,EAAc,CACtB,IAAK,KAAK,OAAO,IAAI,CACnB,KAAM,oBACN,QAAS,KAAK,OAChB,CAAC,EACD,QAAS,EAAe,KAAK,OAAO,QAAQ,EAAG,EAAQ,OAAO,EAC9D,KAAM,EACN,sBAAuB,KAAK,sBAC5B,0BAA2B,EACzB,EACF,EACA,YAAa,EAAQ,YACrB,MAAO,KAAK,OAAO,KACrB,CAAC,EACK,EAAS,EAAa,QAAQ,GAC9B,EAAU,CAAC,EACX,EAAO,EAAO,QAAQ,QAC5B,GAAI,GAAQ,MAAQ,EAAK,OAAS,EAChC,EAAQ,KAAK,CAAE,KAAM,OAAQ,MAAK,CAAC,EAErC,IAAM,GAAa,EAAK,EAAO,QAAQ,oBAAsB,KAAO,EAAK,EAAO,QAAQ,UACxF,GAAI,GAAa,MAAQ,EAAU,OAAS,EAC1C,EAAQ,KAAK,CACX,KAAM,YACN,KAAM,CACR,CAAC,EAEH,GAAI,EAAO,QAAQ,YAAc,KAC/B,QAAW,KAAY,EAAO,QAAQ,WAAY,CAChD,IAAM,GAAoB,GAAM,EAAK,EAAS,gBAAkB,KAAY,OAAI,EAAG,SAAW,KAAY,OAAI,EAAG,kBACjH,EAAQ,KAAK,CACX,KAAM,YACN,YAAa,EAAK,EAAS,KAAO,KAAO,EAAK,EAAW,EACzD,SAAU,EAAS,SAAS,KAC5B,MAAO,EAAS,SAAS,aACtB,EAAmB,CACpB,iBAAkB,EACf,KAAK,qBAAsB,CAAE,kBAAiB,CACjD,CACF,EAAI,CAAC,CACP,CAAC,EAGL,IAAM,EAAmB,EACtB,KAAK,qBAAsB,CAAC,KAC1B,OAAQ,GAAM,EAAK,KAAK,OAAO,oBAAsB,KAAY,OAAI,EAAG,kBAAoB,KAAY,OAAI,EAAG,KAAK,EAAI,CACzH,WAAY,CACd,CAAC,EACH,EACM,GAA0B,EAAK,EAAa,QAAU,KAAY,OAAI,EAAG,0BAC/E,IAAK,GAA0B,KAAY,OAAI,EAAuB,6BAA+B,KACnG,EAAiB,KAAK,qBAAqB,yBAA2B,GAA0B,KAAY,OAAI,EAAuB,2BAEzI,IAAK,GAA0B,KAAY,OAAI,EAAuB,6BAA+B,KACnG,EAAiB,KAAK,qBAAqB,yBAA2B,GAA0B,KAAY,OAAI,EAAuB,2BAEzI,MAAO,CACL,UACA,aAAc,CACZ,QAAS,GAAgC,EAAO,aAAa,EAC7D,KAAM,EAAK,EAAO,gBAAkB,KAAO,EAAU,MACvD,EACA,MAAO,GAAiC,EAAa,KAAK,EAC1D,mBACA,QAAS,CAAE,MAAK,EAChB,SAAU,IACL,GAAoB,CAAY,EACnC,QAAS,EACT,KAAM,CACR,EACA,UACF,OAEI,SAAQ,CAAC,EAAS,CACtB,IAAI,EACJ,IAAQ,OAAM,YAAa,MAAM,KAAK,QAAQ,IAAK,CAAQ,CAAC,EACtD,EAAO,KAAK,qBAAqB,IAClC,EACH,OAAQ,GAER,eAAgB,KAAK,OAAO,aAAe,CAAE,cAAe,EAAK,EAAS,MAC5E,CAAC,EACK,GAAqB,EAAK,KAAK,OAAO,oBAAsB,KAAY,OAAI,EAAG,sBAAsB,GACnG,kBAAiB,MAAO,GAAa,MAAM,EAAc,CAC/D,IAAK,KAAK,OAAO,IAAI,CACnB,KAAM,oBACN,QAAS,KAAK,OAChB,CAAC,EACD,QAAS,EAAe,KAAK,OAAO,QAAQ,EAAG,EAAQ,OAAO,EAC9D,OACA,sBAAuB,KAAK,sBAC5B,0BAA2B,EACzB,KAAK,WACP,EACA,YAAa,EAAQ,YACrB,MAAO,KAAK,OAAO,KACrB,CAAC,EACK,EAAY,CAAC,EACf,EAAe,CACjB,QAAS,QACT,IAAU,MACZ,EACI,EAAa,OACb,EAAe,GACb,EAAsB,KAAK,oBAC7B,EAAoB,GACpB,EAAe,GACnB,MAAO,CACL,OAAQ,EAAS,YACf,IAAI,gBAAgB,CAClB,KAAK,CAAC,EAAY,CAChB,EAAW,QAAQ,CAAE,KAAM,eAAgB,UAAS,CAAC,GAEvD,SAAS,CAAC,EAAO,EAAY,CAC3B,IAAI,EAAK,EAAI,EAAI,EAAI,EAAI,EAAI,EAAI,EAAI,EAAI,EAAI,EAAI,EAAI,EAAI,EAAI,GAAI,GAAI,GAAI,GACzE,GAAI,EAAQ,iBACV,EAAW,QAAQ,CAAE,KAAM,MAAO,SAAU,EAAM,QAAS,CAAC,EAE9D,GAAI,CAAC,EAAM,QAAS,CAClB,EAAe,CAAE,QAAS,QAAS,IAAU,MAAE,EAC/C,EAAW,QAAQ,CAAE,KAAM,QAAS,MAAO,EAAM,KAAM,CAAC,EACxD,OAGF,GADA,GAAqB,MAAgB,EAAkB,aAAa,EAAM,QAAQ,EAC9E,UAAW,EAAM,MAAO,CAC1B,EAAe,CAAE,QAAS,QAAS,IAAU,MAAE,EAC/C,EAAW,QAAQ,CACjB,KAAM,QACN,MAAO,EAAM,MAAM,MAAM,OAC3B,CAAC,EACD,OAEF,IAAM,EAAQ,EAAM,MACpB,GAAI,EACF,EAAe,GACf,EAAW,QAAQ,CACjB,KAAM,uBACH,GAAoB,CAAK,CAC9B,CAAC,EAEH,GAAI,EAAM,OAAS,KACjB,EAAQ,EAAM,MAEhB,IAAM,EAAS,EAAM,QAAQ,GAC7B,IAAK,GAAU,KAAY,OAAI,EAAO,gBAAkB,KACtD,EAAe,CACb,QAAS,GAAgC,EAAO,aAAa,EAC7D,KAAM,EAAM,EAAO,gBAAkB,KAAO,EAAW,MACzD,EAEF,IAAK,GAAU,KAAY,OAAI,EAAO,QAAU,KAC9C,OAEF,IAAM,EAAQ,EAAO,MACf,IAAoB,EAAK,EAAM,oBAAsB,KAAO,EAAK,EAAM,UAC7E,GAAI,GAAkB,CACpB,GAAI,CAAC,EACH,EAAW,QAAQ,CACjB,KAAM,kBACN,GAAI,aACN,CAAC,EACD,EAAoB,GAEtB,EAAW,QAAQ,CACjB,KAAM,kBACN,GAAI,cACJ,MAAO,EACT,CAAC,EAEH,GAAI,EAAM,QAAS,CACjB,GAAI,EACF,EAAW,QAAQ,CACjB,KAAM,gBACN,GAAI,aACN,CAAC,EACD,EAAoB,GAEtB,GAAI,CAAC,EACH,EAAW,QAAQ,CAAE,KAAM,aAAc,GAAI,OAAQ,CAAC,EACtD,EAAe,GAEjB,EAAW,QAAQ,CACjB,KAAM,aACN,GAAI,QACJ,MAAO,EAAM,OACf,CAAC,EAEH,GAAI,EAAM,YAAc,KAAM,CAC5B,GAAI,EACF,EAAW,QAAQ,CACjB,KAAM,gBACN,GAAI,aACN,CAAC,EACD,EAAoB,GAEtB,QAAW,KAAiB,EAAM,WAAY,CAC5C,IAAM,GAAS,EAAK,EAAc,QAAU,KAAO,EAAK,EAAU,OAClE,GAAI,EAAU,IAAU,KAAM,CAC5B,GAAI,EAAc,IAAM,KACtB,MAAM,IAAI,EAAyB,CACjC,KAAM,EACN,QAAS,+BACX,CAAC,EAEH,KAAM,EAAK,EAAc,WAAa,KAAY,OAAI,EAAG,OAAS,KAChE,MAAM,IAAI,EAAyB,CACjC,KAAM,EACN,QAAS,0CACX,CAAC,EAEH,EAAW,QAAQ,CACjB,KAAM,mBACN,GAAI,EAAc,GAClB,SAAU,EAAc,SAAS,IACnC,CAAC,EACD,EAAU,GAAS,CACjB,GAAI,EAAc,GAClB,KAAM,WACN,SAAU,CACR,KAAM,EAAc,SAAS,KAC7B,WAAY,EAAK,EAAc,SAAS,YAAc,KAAO,EAAK,EACpE,EACA,YAAa,GACb,kBAAmB,GAAM,GAAM,EAAK,EAAc,gBAAkB,KAAY,OAAI,EAAG,SAAW,KAAY,OAAI,EAAG,oBAAsB,KAAO,EAAU,MAC9J,EACA,IAAM,EAAY,EAAU,GAC5B,KAAM,EAAK,EAAU,WAAa,KAAY,OAAI,EAAG,OAAS,QAAU,EAAK,EAAU,WAAa,KAAY,OAAI,EAAG,YAAc,KAAM,CACzI,GAAI,EAAU,SAAS,UAAU,OAAS,EACxC,EAAW,QAAQ,CACjB,KAAM,mBACN,GAAI,EAAU,GACd,MAAO,EAAU,SAAS,SAC5B,CAAC,EAEH,GAAI,EAAe,EAAU,SAAS,SAAS,EAC7C,EAAW,QAAQ,CACjB,KAAM,iBACN,GAAI,EAAU,EAChB,CAAC,EACD,EAAW,QAAQ,CACjB,KAAM,YACN,YAAa,EAAK,EAAU,KAAO,KAAO,EAAK,EAAW,EAC1D,SAAU,EAAU,SAAS,KAC7B,MAAO,EAAU,SAAS,aACvB,EAAU,iBAAmB,CAC9B,iBAAkB,EACf,GAAsB,CACrB,iBAAkB,EAAU,gBAC9B,CACF,CACF,EAAI,CAAC,CACP,CAAC,EACD,EAAU,YAAc,GAG5B,SAEF,IAAM,EAAW,EAAU,GAC3B,GAAI,EAAS,YACX,SAEF,KAAM,EAAK,EAAc,WAAa,KAAY,OAAI,EAAG,YAAc,KACrE,EAAS,SAAS,YAAc,GAAM,EAAK,EAAc,WAAa,KAAY,OAAI,EAAG,YAAc,KAAO,EAAK,GAOrH,GALA,EAAW,QAAQ,CACjB,KAAM,mBACN,GAAI,EAAS,GACb,OAAQ,GAAK,EAAc,SAAS,YAAc,KAAO,GAAK,EAChE,CAAC,IACK,GAAK,EAAS,WAAa,KAAY,OAAI,GAAG,OAAS,QAAU,GAAK,EAAS,WAAa,KAAY,OAAI,GAAG,YAAc,MAAQ,EAAe,EAAS,SAAS,SAAS,EACnL,EAAW,QAAQ,CACjB,KAAM,iBACN,GAAI,EAAS,EACf,CAAC,EACD,EAAW,QAAQ,CACjB,KAAM,YACN,YAAa,GAAK,EAAS,KAAO,KAAO,GAAK,EAAW,EACzD,SAAU,EAAS,SAAS,KAC5B,MAAO,EAAS,SAAS,aACtB,EAAS,iBAAmB,CAC7B,iBAAkB,EACf,GAAsB,CACrB,iBAAkB,EAAS,gBAC7B,CACF,CACF,EAAI,CAAC,CACP,CAAC,EACD,EAAS,YAAc,MAK/B,KAAK,CAAC,EAAY,CAChB,IAAI,EAAK,EAAI,EAAI,EAAI,EACrB,GAAI,EACF,EAAW,QAAQ,CAAE,KAAM,gBAAiB,GAAI,aAAc,CAAC,EAEjE,GAAI,EACF,EAAW,QAAQ,CAAE,KAAM,WAAY,GAAI,OAAQ,CAAC,EAEtD,QAAW,KAAY,EAAU,OAC/B,CAAC,IAAc,CAAC,EAAU,WAC5B,EACE,EAAW,QAAQ,CACjB,KAAM,iBACN,GAAI,EAAS,EACf,CAAC,EACD,EAAW,QAAQ,CACjB,KAAM,YACN,YAAa,EAAM,EAAS,KAAO,KAAO,EAAM,EAAW,EAC3D,SAAU,EAAS,SAAS,KAC5B,MAAO,EAAS,SAAS,aACtB,EAAS,iBAAmB,CAC7B,iBAAkB,EACf,GAAsB,CACrB,iBAAkB,EAAS,gBAC7B,CACF,CACF,EAAI,CAAC,CACP,CAAC,EAEH,IAAM,EAAmB,EACtB,GAAsB,CAAC,KACrB,GAAqB,KAAY,OAAI,EAAkB,cAAc,CAC1E,EACA,KAAM,EAAK,GAAS,KAAY,OAAI,EAAM,4BAA8B,KAAY,OAAI,EAAG,6BAA+B,KACxH,EAAiB,GAAqB,0BAA4B,EAAK,GAAS,KAAY,OAAI,EAAM,4BAA8B,KAAY,OAAI,EAAG,2BAEzJ,KAAM,EAAK,GAAS,KAAY,OAAI,EAAM,4BAA8B,KAAY,OAAI,EAAG,6BAA+B,KACxH,EAAiB,GAAqB,0BAA4B,EAAK,GAAS,KAAY,OAAI,EAAM,4BAA8B,KAAY,OAAI,EAAG,2BAEzJ,EAAW,QAAQ,CACjB,KAAM,SACN,eACA,MAAO,GAAiC,CAAK,EAC7C,kBACF,CAAC,EAEL,CAAC,CACH,EACA,QAAS,CAAE,MAAK,EAChB,SAAU,CAAE,QAAS,CAAgB,CACvC,EAEJ,EACI,GAAmC,EAAG,YAAY,CACpD,cAAe,EAAG,OAAO,EAAE,QAAQ,EACnC,kBAAmB,EAAG,OAAO,EAAE,QAAQ,EACvC,aAAc,EAAG,OAAO,EAAE,QAAQ,EAClC,sBAAuB,EAAG,OAAO,CAC/B,cAAe,EAAG,OAAO,EAAE,QAAQ,CACrC,CAAC,EAAE,QAAQ,EACX,0BAA2B,EAAG,OAAO,CACnC,iBAAkB,EAAG,OAAO,EAAE,QAAQ,EACtC,2BAA4B,EAAG,OAAO,EAAE,QAAQ,EAChD,2BAA4B,EAAG,OAAO,EAAE,QAAQ,CAClD,CAAC,EAAE,QAAQ,CACb,CAAC,EAAE,QAAQ,EACP,GAAqC,EAAG,YAAY,CACtD,GAAI,EAAG,OAAO,EAAE,QAAQ,EACxB,QAAS,EAAG,OAAO,EAAE,QAAQ,EAC7B,MAAO,EAAG,OAAO,EAAE,QAAQ,EAC3B,QAAS,EAAG,MACV,EAAG,OAAO,CACR,QAAS,EAAG,OAAO,CACjB,KAAM,EAAG,QAAQ,WAAW,EAAE,QAAQ,EACtC,QAAS,EAAG,OAAO,EAAE,QAAQ,EAC7B,kBAAmB,EAAG,OAAO,EAAE,QAAQ,EACvC,UAAW,EAAG,OAAO,EAAE,QAAQ,EAC/B,WAAY,EAAG,MACb,EAAG,OAAO,CACR,GAAI,EAAG,OAAO,EAAE,QAAQ,EACxB,SAAU,EAAG,OAAO,CAClB,KAAM,EAAG,OAAO,EAChB,UAAW,EAAG,OAAO,CACvB,CAAC,EAED,cAAe,EAAG,OAAO,CACvB,OAAQ,EAAG,OAAO,CAChB,kBAAmB,EAAG,OAAO,EAAE,QAAQ,CACzC,CAAC,EAAE,QAAQ,CACb,CAAC,EAAE,QAAQ,CACb,CAAC,CACH,EAAE,QAAQ,CACZ,CAAC,EACD,cAAe,EAAG,OAAO,EAAE,QAAQ,CACrC,CAAC,CACH,EACA,MAAO,EACT,CAAC,EACG,GAAkB,EAAG,YAAY,CACnC,GAAI,EAAG,OAAO,EAAE,QAAQ,EACxB,QAAS,EAAG,OAAO,EAAE,QAAQ,EAC7B,MAAO,EAAG,OAAO,EAAE,QAAQ,EAC3B,QAAS,EAAG,MACV,EAAG,OAAO,CACR,MAAO,EAAG,OAAO,CACf,KAAM,EAAG,KAAK,CAAC,WAAW,CAAC,EAAE,QAAQ,EACrC,QAAS,EAAG,OAAO,EAAE,QAAQ,EAG7B,kBAAmB,EAAG,OAAO,EAAE,QAAQ,EACvC,UAAW,EAAG,OAAO,EAAE,QAAQ,EAC/B,WAAY,EAAG,MACb,EAAG,OAAO,CACR,MAAO,EAAG,OAAO,EAAE,QAAQ,EAE3B,GAAI,EAAG,OAAO,EAAE,QAAQ,EACxB,SAAU,EAAG,OAAO,CAClB,KAAM,EAAG,OAAO,EAAE,QAAQ,EAC1B,UAAW,EAAG,OAAO,EAAE,QAAQ,CACjC,CAAC,EAED,cAAe,EAAG,OAAO,CACvB,OAAQ,EAAG,OAAO,CAChB,kBAAmB,EAAG,OAAO,EAAE,QAAQ,CACzC,CAAC,EAAE,QAAQ,CACb,CAAC,EAAE,QAAQ,CACb,CAAC,CACH,EAAE,QAAQ,CACZ,CAAC,EAAE,QAAQ,EACX,cAAe,EAAG,OAAO,EAAE,QAAQ,CACrC,CAAC,CACH,EACA,MAAO,EACT,CAAC,EACG,GAAwC,CAAC,IAAgB,EAAG,MAAM,CAAC,GAAiB,CAAW,CAAC,EAcpG,SAAS,EAAsC,CAAC,EAAO,CACrD,IAAI,EAAI,EACR,GAAI,GAAS,KACX,MAAO,CACL,YAAa,CACX,MAAY,OACZ,QAAc,OACd,UAAgB,OAChB,WAAiB,MACnB,EACA,aAAc,CACZ,MAAY,OACZ,KAAW,OACX,UAAgB,MAClB,EACA,IAAU,MACZ,EAEF,IAAM,GAAgB,EAAK,EAAM,gBAAkB,KAAO,EAAK,EACzD,GAAoB,EAAK,EAAM,oBAAsB,KAAO,EAAK,EACvE,MAAO,CACL,YAAa,CACX,MAAO,EACP,QAAS,EACT,UAAgB,OAChB,WAAiB,MACnB,EACA,aAAc,CACZ,MAAO,EACP,KAAM,EACN,UAAgB,MAClB,EACA,IAAK,CACP,EAQF,SAAS,EAAyC,EAChD,SACA,OAAO,OACP,YAAY,aACX,CACD,IAAI,EAAO,GACX,GAAI,EAAO,GAAG,OAAS,SACrB,GAAQ,GAAG,EAAO,GAAG;AAAA;AAAA,EAGrB,EAAS,EAAO,MAAM,CAAC,EAEzB,QAAa,OAAM,aAAa,EAC9B,OAAQ,OACD,SACH,MAAM,IAAI,GAAmB,CAC3B,QAAS,kDACT,QACF,CAAC,MAEE,OAAQ,CACX,IAAM,EAAc,EAAQ,IAAI,CAAC,IAAS,CACxC,OAAQ,EAAK,UACN,OACH,OAAO,EAAK,MAGjB,EAAE,OAAO,OAAO,EAAE,KAAK,EAAE,EAC1B,GAAQ,GAAG;AAAA,EACjB;AAAA;AAAA,EAGM,KACF,KACK,YAAa,CAChB,IAAM,EAAmB,EAAQ,IAAI,CAAC,IAAS,CAC7C,OAAQ,EAAK,UACN,OACH,OAAO,EAAK,SAET,YACH,MAAM,IAAI,EAA+B,CACvC,cAAe,oBACjB,CAAC,GAGN,EAAE,KAAK,EAAE,EACV,GAAQ,GAAG;AAAA,EACjB;AAAA;AAAA,EAGM,KACF,KACK,OACH,MAAM,IAAI,EAA+B,CACvC,cAAe,eACjB,CAAC,UAID,MAAU,MAAM,qBADS,GAC8B,EAM7D,OAFA,GAAQ,GAAG;AAAA,EAEJ,CACL,OAAQ,EACR,cAAe,CAAC;AAAA,EAClB,IAAO,CACP,EAIF,SAAS,EAAoB,EAC3B,KACA,QACA,WACC,CACD,MAAO,CACL,GAAI,GAAM,KAAO,EAAU,OAC3B,QAAS,GAAS,KAAO,EAAa,OACtC,UAAW,GAAW,KAAO,IAAI,KAAK,EAAU,IAAG,EAAS,MAC9D,EAIF,SAAS,EAAgC,CAAC,EAAc,CACtD,OAAQ,OACD,OACH,MAAO,WACJ,SACH,MAAO,aACJ,iBACH,MAAO,qBACJ,oBACA,aACH,MAAO,qBAEP,MAAO,SAMb,IAAI,GAAiD,EAAG,OAAO,CAI7D,KAAM,EAAG,QAAQ,EAAE,SAAS,EAO5B,UAAW,EAAG,OAAO,EAAG,OAAO,EAAG,EAAG,OAAO,CAAC,EAAE,SAAS,EAIxD,OAAQ,EAAG,OAAO,EAAE,SAAS,EAK7B,KAAM,EAAG,OAAO,EAAE,SAAS,CAC7B,CAAC,EAGG,GAA0C,KAAM,CAElD,WAAW,CAAC,EAAS,EAAQ,CAC3B,KAAK,qBAAuB,KAC5B,IAAI,EACJ,KAAK,QAAU,EACf,KAAK,OAAS,EACd,IAAM,GAAkB,EAAK,EAAO,iBAAmB,KAAO,EAAK,EACnE,KAAK,YAAc,GACjB,EAAe,WACjB,EACA,KAAK,sBAAwB,EAAgC,CAAc,KAEzE,SAAQ,EAAG,CACb,OAAO,KAAK,OAAO,YAEjB,oBAAmB,EAAG,CACxB,OAAO,KAAK,OAAO,SAAS,MAAM,GAAG,EAAE,GAAG,KAAK,KAE7C,cAAa,EAAG,CAClB,IAAI,EAAI,EAAI,EACZ,OAAQ,GAAM,GAAM,EAAK,KAAK,QAAQ,gBAAkB,KAAY,OAAI,EAAG,KAAK,CAAE,IAAM,KAAO,EAAK,CAAC,OAEjG,QAAO,EACX,SACA,kBACA,cACA,OACA,OACA,mBACA,kBACA,cAAe,EACf,iBACA,OACA,kBACA,QACA,cACC,CACD,IAAI,EACJ,IAAM,EAAW,CAAC,EACZ,GAAqB,EAAK,MAAM,EAAsB,CAC1D,SAAU,KAAK,oBACf,kBACA,OAAQ,EACV,CAAC,IAAM,KAAO,EAAK,CAAC,EACpB,GAAI,GAAQ,KACV,EAAS,KAAK,CAAE,KAAM,cAAe,QAAS,MAAO,CAAC,EAExD,GAAI,GAAS,KAAY,OAAI,EAAM,OACjC,EAAS,KAAK,CAAE,KAAM,cAAe,QAAS,OAAQ,CAAC,EAEzD,GAAI,GAAc,KAChB,EAAS,KAAK,CAAE,KAAM,cAAe,QAAS,YAAa,CAAC,EAE9D,GAAI,GAAkB,MAAQ,EAAe,OAAS,OACpD,EAAS,KAAK,CACZ,KAAM,cACN,QAAS,iBACT,QAAS,wCACX,CAAC,EAEH,IAAQ,OAAQ,EAAkB,iBAAkB,GAA0C,CAAE,QAAO,CAAC,EAClG,EAAO,CAAC,GAAG,GAAiB,KAAO,EAAgB,CAAC,EAAG,GAAG,GAAqB,KAAO,EAAoB,CAAC,CAAC,EAClH,MAAO,CACL,KAAM,CAEJ,MAAO,KAAK,QAEZ,KAAM,EAAkB,KACxB,WAAY,EAAkB,UAC9B,OAAQ,EAAkB,OAC1B,KAAM,EAAkB,KAExB,WAAY,EACZ,cACA,MAAO,EACP,kBAAmB,EACnB,iBAAkB,EAClB,UACG,GAAmB,KAAY,OAAI,EAAgB,KAAK,qBAE3D,OAAQ,EAER,KAAM,EAAK,OAAS,EAAI,EAAY,MACtC,EACA,UACF,OAEI,WAAU,CAAC,EAAS,CACxB,IAAQ,OAAM,YAAa,MAAM,KAAK,QAAQ,CAAO,GAEnD,kBACA,MAAO,EACP,SAAU,GACR,MAAM,EAAe,CACvB,IAAK,KAAK,OAAO,IAAI,CACnB,KAAM,eACN,QAAS,KAAK,OAChB,CAAC,EACD,QAAS,EAAgB,KAAK,OAAO,QAAQ,EAAG,EAAQ,OAAO,EAC/D,KAAM,EACN,sBAAuB,KAAK,sBAC5B,0BAA2B,EACzB,EACF,EACA,YAAa,EAAQ,YACrB,MAAO,KAAK,OAAO,KACrB,CAAC,EACK,EAAS,EAAS,QAAQ,GAC1B,EAAU,CAAC,EACjB,GAAI,EAAO,MAAQ,MAAQ,EAAO,KAAK,OAAS,EAC9C,EAAQ,KAAK,CAAE,KAAM,OAAQ,KAAM,EAAO,IAAK,CAAC,EAElD,MAAO,CACL,UACA,MAAO,GAAuC,EAAS,KAAK,EAC5D,aAAc,CACZ,QAAS,GAAiC,EAAO,aAAa,EAC9D,IAAK,EAAO,aACd,EACA,QAAS,CAAE,KAAM,CAAK,EACtB,SAAU,IACL,GAAqB,CAAQ,EAChC,QAAS,EACT,KAAM,CACR,EACA,UACF,OAEI,SAAQ,CAAC,EAAS,CACtB,IAAQ,OAAM,YAAa,MAAM,KAAK,QAAQ,CAAO,EAC/C,EAAO,IACR,EACH,OAAQ,GAER,eAAgB,KAAK,OAAO,aAAe,CAAE,cAAe,EAAK,EAAS,MAC5E,GACQ,kBAAiB,MAAO,GAAa,MAAM,EAAe,CAChE,IAAK,KAAK,OAAO,IAAI,CACnB,KAAM,eACN,QAAS,KAAK,OAChB,CAAC,EACD,QAAS,EAAgB,KAAK,OAAO,QAAQ,EAAG,EAAQ,OAAO,EAC/D,OACA,sBAAuB,KAAK,sBAC5B,0BAA2B,EACzB,KAAK,WACP,EACA,YAAa,EAAQ,YACrB,MAAO,KAAK,OAAO,KACrB,CAAC,EACG,EAAe,CACjB,QAAS,QACT,IAAU,MACZ,EACI,EAAa,OACb,EAAe,GACnB,MAAO,CACL,OAAQ,EAAS,YACf,IAAI,gBAAgB,CAClB,KAAK,CAAC,EAAY,CAChB,EAAW,QAAQ,CAAE,KAAM,eAAgB,UAAS,CAAC,GAEvD,SAAS,CAAC,EAAO,EAAY,CAC3B,IAAI,EACJ,GAAI,EAAQ,iBACV,EAAW,QAAQ,CAAE,KAAM,MAAO,SAAU,EAAM,QAAS,CAAC,EAE9D,GAAI,CAAC,EAAM,QAAS,CAClB,EAAe,CAAE,QAAS,QAAS,IAAU,MAAE,EAC/C,EAAW,QAAQ,CAAE,KAAM,QAAS,MAAO,EAAM,KAAM,CAAC,EACxD,OAEF,IAAM,EAAQ,EAAM,MACpB,GAAI,UAAW,EAAO,CACpB,EAAe,CAAE,QAAS,QAAS,IAAU,MAAE,EAC/C,EAAW,QAAQ,CAAE,KAAM,QAAS,MAAO,EAAM,KAAM,CAAC,EACxD,OAEF,GAAI,EACF,EAAe,GACf,EAAW,QAAQ,CACjB,KAAM,uBACH,GAAqB,CAAK,CAC/B,CAAC,EACD,EAAW,QAAQ,CACjB,KAAM,aACN,GAAI,GACN,CAAC,EAEH,GAAI,EAAM,OAAS,KACjB,EAAQ,EAAM,MAEhB,IAAM,EAAS,EAAM,QAAQ,GAC7B,IAAK,GAAU,KAAY,OAAI,EAAO,gBAAkB,KACtD,EAAe,CACb,QAAS,GAAiC,EAAO,aAAa,EAC9D,KAAM,EAAK,EAAO,gBAAkB,KAAO,EAAU,MACvD,EAEF,IAAK,GAAU,KAAY,OAAI,EAAO,OAAS,KAC7C,EAAW,QAAQ,CACjB,KAAM,aACN,GAAI,IACJ,MAAO,EAAO,IAChB,CAAC,GAGL,KAAK,CAAC,EAAY,CAChB,GAAI,CAAC,EACH,EAAW,QAAQ,CAAE,KAAM,WAAY,GAAI,GAAI,CAAC,EAElD,EAAW,QAAQ,CACjB,KAAM,SACN,eACA,MAAO,GAAuC,CAAK,CACrD,CAAC,EAEL,CAAC,CACH,EACA,QAAS,CAAE,MAAK,EAChB,SAAU,CAAE,QAAS,CAAgB,CACvC,EAEJ,EACI,GAAc,EAAG,OAAO,CAC1B,cAAe,EAAG,OAAO,EACzB,kBAAmB,EAAG,OAAO,EAC7B,aAAc,EAAG,OAAO,CAC1B,CAAC,EACG,GAA2C,EAAG,OAAO,CACvD,GAAI,EAAG,OAAO,EAAE,QAAQ,EACxB,QAAS,EAAG,OAAO,EAAE,QAAQ,EAC7B,MAAO,EAAG,OAAO,EAAE,QAAQ,EAC3B,QAAS,EAAG,MACV,EAAG,OAAO,CACR,KAAM,EAAG,OAAO,EAChB,cAAe,EAAG,OAAO,CAC3B,CAAC,CACH,EACA,MAAO,GAAY,QAAQ,CAC7B,CAAC,EACG,GAA8C,CAAC,IAAgB,EAAG,MAAM,CAC1E,EAAG,OAAO,CACR,GAAI,EAAG,OAAO,EAAE,QAAQ,EACxB,QAAS,EAAG,OAAO,EAAE,QAAQ,EAC7B,MAAO,EAAG,OAAO,EAAE,QAAQ,EAC3B,QAAS,EAAG,MACV,EAAG,OAAO,CACR,KAAM,EAAG,OAAO,EAChB,cAAe,EAAG,OAAO,EAAE,QAAQ,EACnC,MAAO,EAAG,OAAO,CACnB,CAAC,CACH,EACA,MAAO,GAAY,QAAQ,CAC7B,CAAC,EACD,CACF,CAAC,EAiBG,EAAwC,EAAG,OAAO,CAKpD,WAAY,EAAG,OAAO,EAAE,SAAS,EAKjC,KAAM,EAAG,OAAO,EAAE,SAAS,CAC7B,CAAC,EAGG,GAAiC,KAAM,CACzC,WAAW,CAAC,EAAS,EAAQ,CAC3B,KAAK,qBAAuB,KAC5B,KAAK,QAAU,EACf,KAAK,OAAS,KAEZ,SAAQ,EAAG,CACb,OAAO,KAAK,OAAO,YAEjB,qBAAoB,EAAG,CACzB,IAAI,EACJ,OAAQ,EAAK,KAAK,OAAO,uBAAyB,KAAO,EAAK,QAE5D,sBAAqB,EAAG,CAC1B,IAAI,EACJ,OAAQ,EAAK,KAAK,OAAO,wBAA0B,KAAO,EAAK,MAE7D,oBAAmB,EAAG,CACxB,OAAO,KAAK,OAAO,SAAS,MAAM,GAAG,EAAE,GAAG,KAAK,OAE3C,QAAO,EACX,SACA,UACA,cACA,mBACC,CACD,IAAI,EAAI,EAAI,EACZ,IAAM,EAAW,CAAC,EACZ,EAAoB,MAAM,EAAsB,CACpD,SAAU,oBACV,kBACA,OAAQ,CACV,CAAC,EACD,GAAI,GAAqB,KACvB,EAAS,KAAK,CACZ,KAAM,QACN,QAAS,+FACX,CAAC,EAEH,IAAM,EAAoB,OAAO,OAC/B,GAAqB,KAAO,EAAoB,CAAC,GAChD,EAAK,MAAM,EAAsB,CAChC,SAAU,mBACV,kBACA,OAAQ,CACV,CAAC,IAAM,KAAO,EAAK,CAAC,GACnB,EAAK,MAAM,EAAsB,CAChC,SAAU,KAAK,oBACf,kBACA,OAAQ,CACV,CAAC,IAAM,KAAO,EAAK,CAAC,CACtB,EACA,GAAI,EAAO,OAAS,KAAK,qBACvB,MAAM,IAAI,GAAmC,CAC3C,SAAU,KAAK,SACf,QAAS,KAAK,QACd,qBAAsB,KAAK,qBAC3B,QACF,CAAC,EAEH,IACE,kBACA,MAAO,EACP,YACE,MAAM,EAAe,CACvB,IAAK,KAAK,OAAO,IAAI,CACnB,KAAM,cACN,QAAS,KAAK,OAChB,CAAC,EACD,QAAS,EAAgB,KAAK,OAAO,QAAQ,EAAG,CAAO,EACvD,KAAM,CACJ,MAAO,KAAK,QACZ,MAAO,EACP,gBAAiB,QACjB,WAAY,EAAkB,WAC9B,KAAM,EAAkB,IAC1B,EACA,sBAAuB,GACpB,EAAK,KAAK,OAAO,iBAAmB,KAAO,EAAK,CACnD,EACA,0BAA2B,EACzB,EACF,EACA,cACA,MAAO,KAAK,OAAO,KACrB,CAAC,EACD,MAAO,CACL,WACA,WAAY,EAAS,KAAK,IAAI,CAAC,IAAS,EAAK,SAAS,EACtD,MAAO,EAAS,MAAQ,CAAE,OAAQ,EAAS,MAAM,aAAc,EAAS,OACxE,iBAAkB,EAAS,iBAC3B,SAAU,CAAE,QAAS,EAAiB,KAAM,CAAS,CACvD,EAEJ,EACI,GAAoC,EAAG,OAAO,CAChD,KAAM,EAAG,MAAM,EAAG,OAAO,CAAE,UAAW,EAAG,MAAM,EAAG,OAAO,CAAC,CAAE,CAAC,CAAC,EAC9D,MAAO,EAAG,OAAO,CAAE,cAAe,EAAG,OAAO,CAAE,CAAC,EAAE,QAAQ,EACzD,iBAAkB,EAAG,OAAO,EAAG,OAAO,EAAG,EAAG,OAAO,EAAG,OAAO,EAAG,EAAG,IAAI,CAAC,CAAC,EAAE,SAAS,CACtF,CAAC,EAoID,IAAI,GAAsC,EAAG,OAAO,CAClD,KAAM,EAAG,MAAM,EAAG,OAAO,CAAE,SAAU,EAAG,OAAO,CAAE,CAAC,CAAC,CACrD,CAAC",
|
|
8
|
-
"debugId": "
|
|
8
|
+
"debugId": "1C24C49C7E2611A064756E2164756E21",
|
|
9
9
|
"names": []
|
|
10
10
|
}
|