UNPKG

chatgpt-fine-tuning

Version:
930 lines (917 loc) 3.33 MB
"use strict"; var __create = Object.create; var __defProp = Object.defineProperty; var __getOwnPropDesc = Object.getOwnPropertyDescriptor; var __getOwnPropNames = Object.getOwnPropertyNames; var __getProtoOf = Object.getPrototypeOf; var __hasOwnProp = Object.prototype.hasOwnProperty; var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __commonJS = (cb, mod) => function __require() { return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports; }; var __export = (target, all) => { for (var name in all) __defProp(target, name, { get: all[name], enumerable: true }); }; var __copyProps = (to, from, except, desc) => { if (from && typeof from === "object" || typeof from === "function") { for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); } return to; }; var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( // If the importer is in node compatibility mode or this is not an ESM // file that has been converted to a CommonJS file using a Babel- // compatible transform (i.e. "__esModule" has not been set), then set // "default" to the CommonJS "module.exports" for node compatibility. isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod )); var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); var __publicField = (obj, key, value) => { __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; // node_modules/json-buffer/index.js var require_json_buffer = __commonJS({ "node_modules/json-buffer/index.js"(exports2) { exports2.stringify = function stringify(o) { if ("undefined" == typeof o) return o; if (o && Buffer.isBuffer(o)) return JSON.stringify(":base64:" + o.toString("base64")); if (o && o.toJSON) o = o.toJSON(); if (o && "object" === typeof o) { var s = ""; var array = Array.isArray(o); s = array ? "[" : "{"; var first = true; for (var k in o) { var ignore = "function" == typeof o[k] || !array && "undefined" === typeof o[k]; if (Object.hasOwnProperty.call(o, k) && !ignore) { if (!first) s += ","; first = false; if (array) { if (o[k] == void 0) s += "null"; else s += stringify(o[k]); } else if (o[k] !== void 0) { s += stringify(k) + ":" + stringify(o[k]); } } } s += array ? "]" : "}"; return s; } else if ("string" === typeof o) { return JSON.stringify(/^:/.test(o) ? ":" + o : o); } else if ("undefined" === typeof o) { return "null"; } else return JSON.stringify(o); }; exports2.parse = function(s) { return JSON.parse(s, function(key, value) { if ("string" === typeof value) { if (/^:base64:/.test(value)) return Buffer.from(value.substring(8), "base64"); else return /^:/.test(value) ? value.substring(1) : value; } return value; }); }; } }); // node_modules/keyv/src/index.js var require_src = __commonJS({ "node_modules/keyv/src/index.js"(exports2, module2) { "use strict"; var EventEmitter = require("events"); var JSONB = require_json_buffer(); var loadStore = (options) => { const adapters = { redis: "@keyv/redis", rediss: "@keyv/redis", mongodb: "@keyv/mongo", mongo: "@keyv/mongo", sqlite: "@keyv/sqlite", postgresql: "@keyv/postgres", postgres: "@keyv/postgres", mysql: "@keyv/mysql", etcd: "@keyv/etcd", offline: "@keyv/offline", tiered: "@keyv/tiered" }; if (options.adapter || options.uri) { const adapter = options.adapter || /^[^:+]*/.exec(options.uri)[0]; return new (require(adapters[adapter]))(options); } return /* @__PURE__ */ new Map(); }; var iterableAdapters = [ "sqlite", "postgres", "mysql", "mongo", "redis", "tiered" ]; var Keyv2 = class extends EventEmitter { constructor(uri, { emitErrors = true, ...options } = {}) { super(); this.opts = { namespace: "keyv", serialize: JSONB.stringify, deserialize: JSONB.parse, ...typeof uri === "string" ? { uri } : uri, ...options }; if (!this.opts.store) { const adapterOptions = { ...this.opts }; this.opts.store = loadStore(adapterOptions); } if (this.opts.compression) { const compression = this.opts.compression; this.opts.serialize = compression.serialize.bind(compression); this.opts.deserialize = compression.deserialize.bind(compression); } if (typeof this.opts.store.on === "function" && emitErrors) { this.opts.store.on("error", (error) => this.emit("error", error)); } this.opts.store.namespace = this.opts.namespace; const generateIterator = (iterator) => async function* () { for await (const [key, raw] of typeof iterator === "function" ? iterator(this.opts.store.namespace) : iterator) { const data = await this.opts.deserialize(raw); if (this.opts.store.namespace && !key.includes(this.opts.store.namespace)) { continue; } if (typeof data.expires === "number" && Date.now() > data.expires) { this.delete(key); continue; } yield [this._getKeyUnprefix(key), data.value]; } }; if (typeof this.opts.store[Symbol.iterator] === "function" && this.opts.store instanceof Map) { this.iterator = generateIterator(this.opts.store); } else if (typeof this.opts.store.iterator === "function" && this.opts.store.opts && this._checkIterableAdaptar()) { this.iterator = generateIterator(this.opts.store.iterator.bind(this.opts.store)); } } _checkIterableAdaptar() { return iterableAdapters.includes(this.opts.store.opts.dialect) || iterableAdapters.findIndex((element) => this.opts.store.opts.url.includes(element)) >= 0; } _getKeyPrefix(key) { return `${this.opts.namespace}:${key}`; } _getKeyPrefixArray(keys) { return keys.map((key) => `${this.opts.namespace}:${key}`); } _getKeyUnprefix(key) { return key.split(":").splice(1).join(":"); } get(key, options) { const { store } = this.opts; const isArray = Array.isArray(key); const keyPrefixed = isArray ? this._getKeyPrefixArray(key) : this._getKeyPrefix(key); if (isArray && store.getMany === void 0) { const promises = []; for (const key2 of keyPrefixed) { promises.push( Promise.resolve().then(() => store.get(key2)).then((data) => typeof data === "string" ? this.opts.deserialize(data) : this.opts.compression ? this.opts.deserialize(data) : data).then((data) => { if (data === void 0 || data === null) { return void 0; } if (typeof data.expires === "number" && Date.now() > data.expires) { return this.delete(key2).then(() => void 0); } return options && options.raw ? data : data.value; }) ); } return Promise.allSettled(promises).then((values) => { const data = []; for (const value of values) { data.push(value.value); } return data; }); } return Promise.resolve().then(() => isArray ? store.getMany(keyPrefixed) : store.get(keyPrefixed)).then((data) => typeof data === "string" ? this.opts.deserialize(data) : this.opts.compression ? this.opts.deserialize(data) : data).then((data) => { if (data === void 0 || data === null) { return void 0; } if (isArray) { return data.map((row, index) => { if (typeof row === "string") { row = this.opts.deserialize(row); } if (row === void 0 || row === null) { return void 0; } if (typeof row.expires === "number" && Date.now() > row.expires) { this.delete(key[index]).then(() => void 0); return void 0; } return options && options.raw ? row : row.value; }); } if (typeof data.expires === "number" && Date.now() > data.expires) { return this.delete(key).then(() => void 0); } return options && options.raw ? data : data.value; }); } set(key, value, ttl) { const keyPrefixed = this._getKeyPrefix(key); if (typeof ttl === "undefined") { ttl = this.opts.ttl; } if (ttl === 0) { ttl = void 0; } const { store } = this.opts; return Promise.resolve().then(() => { const expires = typeof ttl === "number" ? Date.now() + ttl : null; if (typeof value === "symbol") { this.emit("error", "symbol cannot be serialized"); } value = { value, expires }; return this.opts.serialize(value); }).then((value2) => store.set(keyPrefixed, value2, ttl)).then(() => true); } delete(key) { const { store } = this.opts; if (Array.isArray(key)) { const keyPrefixed2 = this._getKeyPrefixArray(key); if (store.deleteMany === void 0) { const promises = []; for (const key2 of keyPrefixed2) { promises.push(store.delete(key2)); } return Promise.allSettled(promises).then((values) => values.every((x) => x.value === true)); } return Promise.resolve().then(() => store.deleteMany(keyPrefixed2)); } const keyPrefixed = this._getKeyPrefix(key); return Promise.resolve().then(() => store.delete(keyPrefixed)); } clear() { const { store } = this.opts; return Promise.resolve().then(() => store.clear()); } has(key) { const keyPrefixed = this._getKeyPrefix(key); const { store } = this.opts; return Promise.resolve().then(async () => { if (typeof store.has === "function") { return store.has(keyPrefixed); } const value = await store.get(keyPrefixed); return value !== void 0; }); } disconnect() { const { store } = this.opts; if (typeof store.disconnect === "function") { return store.disconnect(); } } }; module2.exports = Keyv2; } }); // node_modules/base64-js/index.js var require_base64_js = __commonJS({ "node_modules/base64-js/index.js"(exports2) { "use strict"; exports2.byteLength = byteLength; exports2.toByteArray = toByteArray; exports2.fromByteArray = fromByteArray; var lookup = []; var revLookup = []; var Arr = typeof Uint8Array !== "undefined" ? Uint8Array : Array; var code = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; for (i = 0, len = code.length; i < len; ++i) { lookup[i] = code[i]; revLookup[code.charCodeAt(i)] = i; } var i; var len; revLookup["-".charCodeAt(0)] = 62; revLookup["_".charCodeAt(0)] = 63; function getLens(b64) { var len2 = b64.length; if (len2 % 4 > 0) { throw new Error("Invalid string. Length must be a multiple of 4"); } var validLen = b64.indexOf("="); if (validLen === -1) validLen = len2; var placeHoldersLen = validLen === len2 ? 0 : 4 - validLen % 4; return [validLen, placeHoldersLen]; } function byteLength(b64) { var lens = getLens(b64); var validLen = lens[0]; var placeHoldersLen = lens[1]; return (validLen + placeHoldersLen) * 3 / 4 - placeHoldersLen; } function _byteLength(b64, validLen, placeHoldersLen) { return (validLen + placeHoldersLen) * 3 / 4 - placeHoldersLen; } function toByteArray(b64) { var tmp; var lens = getLens(b64); var validLen = lens[0]; var placeHoldersLen = lens[1]; var arr = new Arr(_byteLength(b64, validLen, placeHoldersLen)); var curByte = 0; var len2 = placeHoldersLen > 0 ? validLen - 4 : validLen; var i2; for (i2 = 0; i2 < len2; i2 += 4) { tmp = revLookup[b64.charCodeAt(i2)] << 18 | revLookup[b64.charCodeAt(i2 + 1)] << 12 | revLookup[b64.charCodeAt(i2 + 2)] << 6 | revLookup[b64.charCodeAt(i2 + 3)]; arr[curByte++] = tmp >> 16 & 255; arr[curByte++] = tmp >> 8 & 255; arr[curByte++] = tmp & 255; } if (placeHoldersLen === 2) { tmp = revLookup[b64.charCodeAt(i2)] << 2 | revLookup[b64.charCodeAt(i2 + 1)] >> 4; arr[curByte++] = tmp & 255; } if (placeHoldersLen === 1) { tmp = revLookup[b64.charCodeAt(i2)] << 10 | revLookup[b64.charCodeAt(i2 + 1)] << 4 | revLookup[b64.charCodeAt(i2 + 2)] >> 2; arr[curByte++] = tmp >> 8 & 255; arr[curByte++] = tmp & 255; } return arr; } function tripletToBase64(num) { return lookup[num >> 18 & 63] + lookup[num >> 12 & 63] + lookup[num >> 6 & 63] + lookup[num & 63]; } function encodeChunk(uint8, start, end) { var tmp; var output = []; for (var i2 = start; i2 < end; i2 += 3) { tmp = (uint8[i2] << 16 & 16711680) + (uint8[i2 + 1] << 8 & 65280) + (uint8[i2 + 2] & 255); output.push(tripletToBase64(tmp)); } return output.join(""); } function fromByteArray(uint8) { var tmp; var len2 = uint8.length; var extraBytes = len2 % 3; var parts = []; var maxChunkLength = 16383; for (var i2 = 0, len22 = len2 - extraBytes; i2 < len22; i2 += maxChunkLength) { parts.push(encodeChunk(uint8, i2, i2 + maxChunkLength > len22 ? len22 : i2 + maxChunkLength)); } if (extraBytes === 1) { tmp = uint8[len2 - 1]; parts.push( lookup[tmp >> 2] + lookup[tmp << 4 & 63] + "==" ); } else if (extraBytes === 2) { tmp = (uint8[len2 - 2] << 8) + uint8[len2 - 1]; parts.push( lookup[tmp >> 10] + lookup[tmp >> 4 & 63] + lookup[tmp << 2 & 63] + "=" ); } return parts.join(""); } } }); // src/index.ts var src_exports = {}; __export(src_exports, { Tuner: () => Tuner, default: () => src_default }); module.exports = __toCommonJS(src_exports); // node_modules/chatgpt/build/index.js var import_keyv = __toESM(require_src(), 1); // node_modules/p-timeout/index.js var TimeoutError = class extends Error { constructor(message) { super(message); this.name = "TimeoutError"; } }; var AbortError = class extends Error { constructor(message) { super(); this.name = "AbortError"; this.message = message; } }; var getDOMException = (errorMessage) => globalThis.DOMException === void 0 ? new AbortError(errorMessage) : new DOMException(errorMessage); var getAbortedReason = (signal) => { const reason = signal.reason === void 0 ? getDOMException("This operation was aborted.") : signal.reason; return reason instanceof Error ? reason : getDOMException(reason); }; function pTimeout(promise, options) { const { milliseconds, fallback, message, customTimers = { setTimeout, clearTimeout } } = options; let timer; const wrappedPromise = new Promise((resolve, reject) => { if (typeof milliseconds !== "number" || Math.sign(milliseconds) !== 1) { throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${milliseconds}\``); } if (options.signal) { const { signal } = options; if (signal.aborted) { reject(getAbortedReason(signal)); } signal.addEventListener("abort", () => { reject(getAbortedReason(signal)); }); } if (milliseconds === Number.POSITIVE_INFINITY) { promise.then(resolve, reject); return; } const timeoutError = new TimeoutError(); timer = customTimers.setTimeout.call(void 0, () => { if (fallback) { try { resolve(fallback()); } catch (error) { reject(error); } return; } if (typeof promise.cancel === "function") { promise.cancel(); } if (message === false) { resolve(); } else if (message instanceof Error) { reject(message); } else { timeoutError.message = message != null ? message : `Promise timed out after ${milliseconds} milliseconds`; reject(timeoutError); } }, milliseconds); (async () => { try { resolve(await promise); } catch (error) { reject(error); } })(); }); const cancelablePromise = wrappedPromise.finally(() => { cancelablePromise.clear(); }); cancelablePromise.clear = () => { customTimers.clearTimeout.call(void 0, timer); timer = void 0; }; return cancelablePromise; } // node_modules/quick-lru/index.js var QuickLRU = class extends Map { constructor(options = {}) { super(); if (!(options.maxSize && options.maxSize > 0)) { throw new TypeError("`maxSize` must be a number greater than 0"); } if (typeof options.maxAge === "number" && options.maxAge === 0) { throw new TypeError("`maxAge` must be a number greater than 0"); } this.maxSize = options.maxSize; this.maxAge = options.maxAge || Number.POSITIVE_INFINITY; this.onEviction = options.onEviction; this.cache = /* @__PURE__ */ new Map(); this.oldCache = /* @__PURE__ */ new Map(); this._size = 0; } // TODO: Use private class methods when targeting Node.js 16. _emitEvictions(cache) { if (typeof this.onEviction !== "function") { return; } for (const [key, item] of cache) { this.onEviction(key, item.value); } } _deleteIfExpired(key, item) { if (typeof item.expiry === "number" && item.expiry <= Date.now()) { if (typeof this.onEviction === "function") { this.onEviction(key, item.value); } return this.delete(key); } return false; } _getOrDeleteIfExpired(key, item) { const deleted = this._deleteIfExpired(key, item); if (deleted === false) { return item.value; } } _getItemValue(key, item) { return item.expiry ? this._getOrDeleteIfExpired(key, item) : item.value; } _peek(key, cache) { const item = cache.get(key); return this._getItemValue(key, item); } _set(key, value) { this.cache.set(key, value); this._size++; if (this._size >= this.maxSize) { this._size = 0; this._emitEvictions(this.oldCache); this.oldCache = this.cache; this.cache = /* @__PURE__ */ new Map(); } } _moveToRecent(key, item) { this.oldCache.delete(key); this._set(key, item); } *_entriesAscending() { for (const item of this.oldCache) { const [key, value] = item; if (!this.cache.has(key)) { const deleted = this._deleteIfExpired(key, value); if (deleted === false) { yield item; } } } for (const item of this.cache) { const [key, value] = item; const deleted = this._deleteIfExpired(key, value); if (deleted === false) { yield item; } } } get(key) { if (this.cache.has(key)) { const item = this.cache.get(key); return this._getItemValue(key, item); } if (this.oldCache.has(key)) { const item = this.oldCache.get(key); if (this._deleteIfExpired(key, item) === false) { this._moveToRecent(key, item); return item.value; } } } set(key, value, { maxAge = this.maxAge } = {}) { const expiry = typeof maxAge === "number" && maxAge !== Number.POSITIVE_INFINITY ? Date.now() + maxAge : void 0; if (this.cache.has(key)) { this.cache.set(key, { value, expiry }); } else { this._set(key, { value, expiry }); } return this; } has(key) { if (this.cache.has(key)) { return !this._deleteIfExpired(key, this.cache.get(key)); } if (this.oldCache.has(key)) { return !this._deleteIfExpired(key, this.oldCache.get(key)); } return false; } peek(key) { if (this.cache.has(key)) { return this._peek(key, this.cache); } if (this.oldCache.has(key)) { return this._peek(key, this.oldCache); } } delete(key) { const deleted = this.cache.delete(key); if (deleted) { this._size--; } return this.oldCache.delete(key) || deleted; } clear() { this.cache.clear(); this.oldCache.clear(); this._size = 0; } resize(newSize) { if (!(newSize && newSize > 0)) { throw new TypeError("`maxSize` must be a number greater than 0"); } const items = [...this._entriesAscending()]; const removeCount = items.length - newSize; if (removeCount < 0) { this.cache = new Map(items); this.oldCache = /* @__PURE__ */ new Map(); this._size = items.length; } else { if (removeCount > 0) { this._emitEvictions(items.slice(0, removeCount)); } this.oldCache = new Map(items.slice(removeCount)); this.cache = /* @__PURE__ */ new Map(); this._size = 0; } this.maxSize = newSize; } *keys() { for (const [key] of this) { yield key; } } *values() { for (const [, value] of this) { yield value; } } *[Symbol.iterator]() { for (const item of this.cache) { const [key, value] = item; const deleted = this._deleteIfExpired(key, value); if (deleted === false) { yield [key, value.value]; } } for (const item of this.oldCache) { const [key, value] = item; if (!this.cache.has(key)) { const deleted = this._deleteIfExpired(key, value); if (deleted === false) { yield [key, value.value]; } } } } *entriesDescending() { let items = [...this.cache]; for (let i = items.length - 1; i >= 0; --i) { const item = items[i]; const [key, value] = item; const deleted = this._deleteIfExpired(key, value); if (deleted === false) { yield [key, value.value]; } } items = [...this.oldCache]; for (let i = items.length - 1; i >= 0; --i) { const item = items[i]; const [key, value] = item; if (!this.cache.has(key)) { const deleted = this._deleteIfExpired(key, value); if (deleted === false) { yield [key, value.value]; } } } } *entriesAscending() { for (const [key, value] of this._entriesAscending()) { yield [key, value.value]; } } get size() { if (!this._size) { return this.oldCache.size; } let oldCacheSize = 0; for (const key of this.oldCache.keys()) { if (!this.cache.has(key)) { oldCacheSize++; } } return Math.min(this._size + oldCacheSize, this.maxSize); } entries() { return this.entriesAscending(); } forEach(callbackFunction, thisArgument = this) { for (const [key, value] of this.entriesAscending()) { callbackFunction.call(thisArgument, value, key, this); } } get [Symbol.toStringTag]() { return JSON.stringify([...this.entriesAscending()]); } }; // node_modules/uuid/dist/esm-node/rng.js var import_crypto = __toESM(require("crypto")); var rnds8Pool = new Uint8Array(256); var poolPtr = rnds8Pool.length; function rng() { if (poolPtr > rnds8Pool.length - 16) { import_crypto.default.randomFillSync(rnds8Pool); poolPtr = 0; } return rnds8Pool.slice(poolPtr, poolPtr += 16); } // node_modules/uuid/dist/esm-node/stringify.js var byteToHex = []; for (let i = 0; i < 256; ++i) { byteToHex.push((i + 256).toString(16).slice(1)); } function unsafeStringify(arr, offset = 0) { return byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + "-" + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + "-" + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + "-" + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + "-" + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]; } // node_modules/uuid/dist/esm-node/native.js var import_crypto2 = __toESM(require("crypto")); var native_default = { randomUUID: import_crypto2.default.randomUUID }; // node_modules/uuid/dist/esm-node/v4.js function v4(options, buf, offset) { if (native_default.randomUUID && !buf && !options) { return native_default.randomUUID(); } options = options || {}; const rnds = options.random || (options.rng || rng)(); rnds[6] = rnds[6] & 15 | 64; rnds[8] = rnds[8] & 63 | 128; if (buf) { offset = offset || 0; for (let i = 0; i < 16; ++i) { buf[offset + i] = rnds[i]; } return buf; } return unsafeStringify(rnds); } var v4_default = v4; // node_modules/js-tiktoken/dist/chunk-HXW345QN.js var import_base64_js = __toESM(require_base64_js(), 1); var __defProp2 = Object.defineProperty; var __defNormalProp2 = (obj, key, value) => key in obj ? __defProp2(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField2 = (obj, key, value) => { __defNormalProp2(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; function never(_) { } function bytePairMerge(piece, ranks) { let parts = Array.from( { length: piece.length }, (_, i) => ({ start: i, end: i + 1 }) ); while (parts.length > 1) { let minRank = null; for (let i = 0; i < parts.length - 1; i++) { const slice = piece.slice(parts[i].start, parts[i + 1].end); const rank = ranks.get(slice.join(",")); if (rank == null) continue; if (minRank == null || rank < minRank[0]) { minRank = [rank, i]; } } if (minRank != null) { const i = minRank[1]; parts[i] = { start: parts[i].start, end: parts[i + 1].end }; parts.splice(i + 1, 1); } else { break; } } return parts; } function bytePairEncode(piece, ranks) { if (piece.length === 1) return [ranks.get(piece.join(","))]; return bytePairMerge(piece, ranks).map((p) => ranks.get(piece.slice(p.start, p.end).join(","))).filter((x) => x != null); } function escapeRegex(str) { return str.replace(/[\\^$*+?.()|[\]{}]/g, "\\$&"); } var _Tiktoken = class { constructor(ranks, extendedSpecialTokens) { /** @internal */ __publicField(this, "specialTokens"); /** @internal */ __publicField(this, "inverseSpecialTokens"); /** @internal */ __publicField(this, "patStr"); /** @internal */ __publicField(this, "textEncoder", new TextEncoder()); /** @internal */ __publicField(this, "textDecoder", new TextDecoder("utf-8")); /** @internal */ __publicField(this, "rankMap", /* @__PURE__ */ new Map()); /** @internal */ __publicField(this, "textMap", /* @__PURE__ */ new Map()); this.patStr = ranks.pat_str; const uncompressed = ranks.bpe_ranks.split("\n").filter(Boolean).reduce((memo, x) => { const [_, offsetStr, ...tokens] = x.split(" "); const offset = Number.parseInt(offsetStr, 10); tokens.forEach((token, i) => memo[token] = offset + i); return memo; }, {}); for (const [token, rank] of Object.entries(uncompressed)) { const bytes = import_base64_js.default.toByteArray(token); this.rankMap.set(bytes.join(","), rank); this.textMap.set(rank, bytes); } this.specialTokens = { ...ranks.special_tokens, ...extendedSpecialTokens }; this.inverseSpecialTokens = Object.entries(this.specialTokens).reduce((memo, [text, rank]) => { memo[rank] = this.textEncoder.encode(text); return memo; }, {}); } encode(text, allowedSpecial = [], disallowedSpecial = "all") { var _a; const regexes = new RegExp(this.patStr, "ug"); const specialRegex = _Tiktoken.specialTokenRegex( Object.keys(this.specialTokens) ); const ret = []; const allowedSpecialSet = new Set( allowedSpecial === "all" ? Object.keys(this.specialTokens) : allowedSpecial ); const disallowedSpecialSet = new Set( disallowedSpecial === "all" ? Object.keys(this.specialTokens).filter( (x) => !allowedSpecialSet.has(x) ) : disallowedSpecial ); if (disallowedSpecialSet.size > 0) { const disallowedSpecialRegex = _Tiktoken.specialTokenRegex([ ...disallowedSpecialSet ]); const specialMatch = text.match(disallowedSpecialRegex); if (specialMatch != null) { throw new Error( `The text contains a special token that is not allowed: ${specialMatch[0]}` ); } } let start = 0; while (true) { let nextSpecial = null; let startFind = start; while (true) { specialRegex.lastIndex = startFind; nextSpecial = specialRegex.exec(text); if (nextSpecial == null || allowedSpecialSet.has(nextSpecial[0])) break; startFind = nextSpecial.index + 1; } const end = (_a = nextSpecial == null ? void 0 : nextSpecial.index) != null ? _a : text.length; for (const match of text.substring(start, end).matchAll(regexes)) { const piece = this.textEncoder.encode(match[0]); const token2 = this.rankMap.get(piece.join(",")); if (token2 != null) { ret.push(token2); continue; } ret.push(...bytePairEncode(piece, this.rankMap)); } if (nextSpecial == null) break; let token = this.specialTokens[nextSpecial[0]]; ret.push(token); start = nextSpecial.index + nextSpecial[0].length; } return ret; } decode(tokens) { var _a; const res = []; let length = 0; for (let i2 = 0; i2 < tokens.length; ++i2) { const token = tokens[i2]; const bytes = (_a = this.textMap.get(token)) != null ? _a : this.inverseSpecialTokens[token]; if (bytes != null) { res.push(bytes); length += bytes.length; } } const mergedArray = new Uint8Array(length); let i = 0; for (const bytes of res) { mergedArray.set(bytes, i); i += bytes.length; } return this.textDecoder.decode(mergedArray); } }; var Tiktoken = _Tiktoken; __publicField2(Tiktoken, "specialTokenRegex", (tokens) => { return new RegExp(tokens.map((i) => escapeRegex(i)).join("|"), "g"); }); // node_modules/js-tiktoken/dist/index.js var gpt2_default = { "explicit_n_vocab": 50257, "pat_str": "'s|'t|'re|'ve|'m|'ll|'d| ?\\p{L}+| ?\\p{N}+| ?[^\\s\\p{L}\\p{N}]+|\\s+(?!\\S)|\\s+", "special_tokens": { "<|endoftext|>": 50256 }, "bpe_ranks": "! 0 IQ== Ig== Iw== JA== JQ== Jg== Jw== KA== KQ== Kg== Kw== LA== LQ== Lg== Lw== MA== MQ== Mg== Mw== NA== NQ== Ng== Nw== OA== OQ== Og== Ow== PA== PQ== Pg== Pw== QA== QQ== Qg== Qw== RA== RQ== Rg== Rw== SA== SQ== Sg== Sw== TA== TQ== Tg== Tw== UA== UQ== Ug== Uw== VA== VQ== Vg== Vw== WA== WQ== Wg== Ww== XA== XQ== Xg== Xw== YA== YQ== Yg== Yw== ZA== ZQ== Zg== Zw== aA== aQ== ag== aw== bA== bQ== bg== bw== cA== cQ== cg== cw== dA== dQ== dg== dw== eA== eQ== eg== ew== fA== fQ== fg== oQ== og== ow== pA== pQ== pg== pw== qA== qQ== qg== qw== rA== rg== rw== sA== sQ== sg== sw== tA== tQ== tg== tw== uA== uQ== ug== uw== vA== vQ== vg== vw== wA== wQ== wg== ww== xA== xQ== xg== xw== yA== yQ== yg== yw== zA== zQ== zg== zw== 0A== 0Q== 0g== 0w== 1A== 1Q== 1g== 1w== 2A== 2Q== 2g== 2w== 3A== 3Q== 3g== 3w== 4A== 4Q== 4g== 4w== 5A== 5Q== 5g== 5w== 6A== 6Q== 6g== 6w== 7A== 7Q== 7g== 7w== 8A== 8Q== 8g== 8w== 9A== 9Q== 9g== 9w== +A== +Q== +g== +w== /A== /Q== /g== /w== AA== AQ== Ag== Aw== BA== BQ== Bg== Bw== CA== CQ== Cg== Cw== DA== DQ== Dg== Dw== EA== EQ== Eg== Ew== FA== FQ== Fg== Fw== GA== GQ== Gg== Gw== HA== HQ== Hg== Hw== IA== fw== gA== gQ== gg== gw== hA== hQ== hg== hw== iA== iQ== ig== iw== jA== jQ== jg== jw== kA== kQ== kg== kw== lA== lQ== lg== lw== mA== mQ== mg== mw== nA== nQ== ng== nw== oA== rQ== IHQ= IGE= aGU= aW4= cmU= b24= IHRoZQ== ZXI= IHM= YXQ= IHc= IG8= ZW4= IGM= aXQ= aXM= YW4= b3I= ZXM= IGI= ZWQ= IGY= aW5n IHA= b3U= IGFu YWw= YXI= IHRv IG0= IG9m IGlu IGQ= IGg= IGFuZA== aWM= YXM= bGU= IHRo aW9u b20= bGw= ZW50 IG4= IGw= c3Q= IHJl dmU= IGU= cm8= bHk= IGJl IGc= IFQ= Y3Q= IFM= aWQ= b3Q= IEk= dXQ= ZXQ= IEE= IGlz IG9u aW0= YW0= b3c= YXk= YWQ= c2U= IHRoYXQ= IEM= aWc= IGZvcg== YWM= IHk= dmVy dXI= IHU= bGQ= IHN0 IE0= J3M= IGhl IGl0 YXRpb24= aXRo aXI= Y2U= IHlvdQ== aWw= IEI= IHdo b2w= IFA= IHdpdGg= IDE= dGVy Y2g= IGFz IHdl ICg= bmQ= aWxs IEQ= aWY= IDI= YWc= ZXJz a2U= ICI= IEg= ZW0= IGNvbg== IFc= IFI= aGVy IHdhcw== IHI= b2Q= IEY= dWw= YXRl IGF0 cmk= cHA= b3Jl IFRoZQ== IHNl dXM= IHBybw== IGhh dW0= IGFyZQ== IGRl YWlu YW5k IG9y aWdo ZXN0 aXN0 YWI= cm9t IE4= dGg= IGNvbQ== IEc= dW4= b3A= MDA= IEw= IG5vdA== ZXNz IGV4 IHY= cmVz IEU= ZXc= aXR5 YW50 IGJ5 ZWw= b3M= b3J0 b2M= cXU= IGZyb20= IGhhdmU= IHN1 aXZl b3VsZA== IHNo IHRoaXM= bnQ= cmE= cGU= aWdodA== YXJ0 bWVudA== IGFs dXN0 ZW5k LS0= YWxs IE8= YWNr IGNo IGxl aWVz cmVk YXJk 4oA= b3V0 IEo= IGFi ZWFy aXY= YWxseQ== b3Vy b3N0 Z2g= cHQ= IHBs YXN0 IGNhbg== YWs= b21l dWQ= VGhl IGhpcw== IGRv IGdv IGhhcw== Z2U= J3Q= IFU= cm91 IHNh IGo= IGJ1dA== IHdvcg== IGFsbA== ZWN0 IGs= YW1l IHdpbGw= b2s= IHdoZQ== IHRoZXk= aWRl MDE= ZmY= aWNo cGw= dGhlcg== IHRy Li4= IGludA== aWU= dXJl YWdl IG5l aWFs YXA= aW5l aWNl IG1l IG91dA== YW5z b25l b25n aW9ucw== IHdobw== IEs= IHVw IHRoZWly IGFk IDM= IHVz YXRlZA== b3Vz IG1vcmU= dWU= b2c= IFN0 aW5k aWtl IHNv aW1l cGVy LiI= YmVy aXo= YWN0 IG9uZQ== IHNhaWQ= IC0= YXJl IHlvdXI= Y2M= IFRo IGNs ZXA= YWtl YWJsZQ== aXA= IGNvbnQ= IHdoaWNo aWE= IGlt IGFib3V0 IHdlcmU= dmVyeQ== dWI= IGhhZA== IGVu IGNvbXA= LCI= IElu IHVu IGFn aXJl YWNl YXU= YXJ5 IHdvdWxk YXNz cnk= IOKA Y2w= b29r ZXJl c28= IFY= aWdu aWI= IG9mZg== IHRl dmVu IFk= aWxl b3Nl aXRl b3Jt IDIwMQ== IHJlcw== IG1hbg== IHBlcg== IG90aGVy b3Jk dWx0 IGJlZW4= IGxpa2U= YXNl YW5jZQ== a3M= YXlz b3du ZW5jZQ== IGRpcw== Y3Rpb24= IGFueQ== IGFwcA== IHNw aW50 cmVzcw== YXRpb25z YWls IDQ= aWNhbA== IHRoZW0= IGhlcg== b3VudA== IENo IGFy IGlm IHRoZXJl IHBl IHllYXI= YXY= IG15 IHNvbWU= IHdoZW4= b3VnaA== YWNo IHRoYW4= cnU= b25k aWNr IG92ZXI= dmVs IHF1 Cgo= IHNj cmVhdA== cmVl IEl0 b3VuZA== cG9ydA== IGFsc28= IHBhcnQ= ZnRlcg== IGtu IGJlYw== IHRpbWU= ZW5z IDU= b3BsZQ== IHdoYXQ= IG5v ZHU= bWVy YW5n IG5ldw== LS0tLQ== IGdldA== b3J5 aXRpb24= aW5ncw== IGp1c3Q= IGludG8= IDA= ZW50cw== b3Zl dGU= IHBlb3BsZQ== IHByZQ== IGl0cw== IHJlYw== IHR3 aWFu aXJzdA== YXJr b3Jz IHdvcms= YWRl b2I= IHNoZQ== IG91cg== d24= aW5r bGlj IDE5 IEhl aXNo bmRlcg== YXVzZQ== IGhpbQ== b25z IFs= IHJv Zm9ybQ== aWxk YXRlcw== dmVycw== IG9ubHk= b2xs IHNwZQ== Y2s= ZWxs YW1w IGFjYw== IGJs aW91cw== dXJu ZnQ= b29k IGhvdw== aGVk ICc= IGFmdGVy YXc= IGF0dA== b3Y= bmU= IHBsYXk= ZXJ2 aWN0 IGNvdWxk aXR0 IGFt IGZpcnN0 IDY= IGFjdA== ICQ= ZWM= aGluZw== dWFs dWxs IGNvbW0= b3k= b2xk Y2Vz YXRlcg== IGZl IGJldA== d2U= aWZm IHR3bw== b2Nr IGJhY2s= KS4= aWRlbnQ= IHVuZGVy cm91Z2g= c2Vs eHQ= IG1heQ== cm91bmQ= IHBv cGg= aXNz IGRlcw== IG1vc3Q= IGRpZA== IGFkZA== amVjdA== IGluYw== Zm9yZQ== IHBvbA== b250 IGFnYWlu Y2x1ZA== dGVybg== IGtub3c= IG5lZWQ= IGNvbnM= IGNv IC4= IHdhbnQ= IHNlZQ== IDc= bmluZw== aWV3 IFRoaXM= Y2Vk IGV2ZW4= IGluZA== dHk= IFdl YXRo IHRoZXNl IHBy IHVzZQ== IGJlY2F1c2U= IGZs bmc= IG5vdw== IOKAkw== Y29t aXNl IG1ha2U= IHRoZW4= b3dlcg== IGV2ZXJ5 IFVu IHNlYw== b3Nz dWNo IGVt ID0= IFJl aWVk cml0 IGludg== bGVjdA== IHN1cHA= YXRpbmc= IGxvb2s= bWFu cGVjdA== IDg= cm93 IGJ1 IHdoZXJl aWZpYw== IHllYXJz aWx5 IGRpZmY= IHNob3VsZA== IHJlbQ== VGg= SW4= IGV2 ZGF5 J3Jl cmli IHJlbA== c3M= IGRlZg== IHJpZ2h0 IHN5 KSw= bGVz MDAw aGVu IHRocm91Z2g= IFRy X18= IHdheQ== IGRvbg== ICw= IDEw YXNlZA== IGFzcw== dWJsaWM= IHJlZw== IEFuZA== aXg= IHZlcnk= IGluY2x1ZA== b3RoZXI= IGltcA== b3Ro IHN1Yg== IOKAlA== IGJlaW5n YXJn IFdo PT0= aWJsZQ== IGRvZXM= YW5nZQ== cmFt IDk= ZXJ0 cHM= aXRlZA== YXRpb25hbA== IGJy IGRvd24= IG1hbnk= YWtpbmc= IGNhbGw= dXJpbmc= aXRpZXM= IHBo aWNz YWxz IGRlYw== YXRpdmU= ZW5lcg== IGJlZm9yZQ== aWxpdHk= IHdlbGw= IG11Y2g= ZXJzb24= IHRob3Nl IHN1Y2g= IGtl IGVuZA== IEJ1dA== YXNvbg== dGluZw== IGxvbmc= ZWY= IHRoaW5r eXM= IGJlbA== IHNt aXRz YXg= IG93bg== IHByb3Y= IHNldA== aWZl bWVudHM= Ymxl d2FyZA== IHNob3c= IHByZXM= bXM= b21ldA== IG9i IHNheQ== IFNo dHM= ZnVs IGVmZg== IGd1 IGluc3Q= dW5k cmVu Y2Vzcw== IGVudA== IFlvdQ== IGdvb2Q= IHN0YXJ0 aW5jZQ== IG1hZGU= dHQ= c3RlbQ== b2xvZw== dXA= IHw= dW1w IGhlbA== dmVybg== dWxhcg== dWFsbHk= IGFj IG1vbg== IGxhc3Q= IDIwMA== MTA= IHN0dWQ= dXJlcw== IEFy c2VsZg== YXJz bWVyaWM= dWVz Y3k= IG1pbg== b2xsb3c= IGNvbA== aW8= IG1vZA== IGNvdW50 IENvbQ== aGVz IGZpbg== YWly aWVy 4oCU cmVhZA== YW5r YXRjaA== ZXZlcg== IHN0cg== IHBvaW50 b3Jr IE5ldw== IHN1cg== b29s YWxr ZW1lbnQ= IHVzZWQ= cmFjdA== d2Vlbg== IHNhbWU= b3Vu IEFs Y2k= IGRpZmZlcmU= IHdoaWxl LS0tLS0tLS0= IGdhbWU= Y2VwdA== IHNpbQ== Li4u IGludGVy ZWs= IHJlcG9ydA== IHByb2R1 IHN0aWxs bGVk YWg= IGhlcmU= IHdvcmxk IHRob3VnaA== IG51bQ== YXJjaA== aW1lcw== YWxl IFNl IElm Ly8= IExl IHJldA== IHJlZg== IHRyYW5z bmVy dXRpb24= dGVycw== IHRha2U= IENs IGNvbmY= d2F5 YXZl IGdvaW5n IHNs dWc= IEFtZXJpYw== IHNwZWM= IGhhbmQ= IGJldHdlZW4= aXN0cw== IERl b290 SXQ= IGVhcg== IGFnYWluc3Q= IGhpZ2g= Z2Fu YXo= YXRoZXI= IGV4cA== IG9w IGlucw== IGdy IGhlbHA= IHJlcXU= ZXRz aW5z IFBybw== aXNt IGZvdW5k bGFuZA== YXRh dXNz YW1lcw== IHBlcnNvbg== IGdyZWF0 cHI= IHNpZ24= IEFu J3Zl IHNvbWV0 IHNlcg== aGlw IHJ1bg== IDo= IHRlcg== aXJlY3Q= IGZvbGxvdw== IGRldA== aWNlcw== IGZpbmQ= MTI= IG1lbQ== IGNy ZXJlZA== ZXg= IGV4dA== dXRo ZW5zZQ== Y28= IHRlYW0= dmluZw== b3VzZQ== YXNo YXR0 dmVk IHN5c3RlbQ== IEFz ZGVy aXZlcw== bWlu IGxlYWQ= IEJs Y2VudA== IGFyb3VuZA== IGdvdmVybg== IGN1cg== dmVsb3A= YW55 IGNvdXI= YWx0aA== YWdlcw== aXpl IGNhcg== b2Rl IGxhdw== IHJlYWQ= J20= Y29u IHJlYWw= IHN1cHBvcnQ= IDEy Li4uLg== IHJlYWxseQ== bmVzcw== IGZhY3Q= IGRheQ== IGJvdGg= eWluZw== IHNlcnY= IEZvcg== IHRocmVl IHdvbQ== IG1lZA== b2R5 IFRoZXk= NTA= IGV4cGVy dG9u IGVhY2g= YWtlcw== IGNoZQ== IGNyZQ== aW5lcw== IHJlcA== MTk= Z2c= aWxsaW9u IGdyb3U= dXRl aWs= V2U= Z2V0 RVI= IG1ldA== IHNheXM= b3g= IGR1cmluZw== ZXJu aXplZA== YXJlZA== IGZhbQ== aWNhbGx5 IGhhcHA= IElz IGNoYXI= bWVk dmVudA== IGdlbmVy aWVudA== cGxl aWV0 cmVudA== MTE= dmVz cHRpb24= IDIw Zm9ybWF0aW9u IGNvcg== IG9mZmlj aWVsZA== IHRvbw== aXNpb24= IGluZg== IFo= dGhl b2Fk IHB1YmxpYw== IHByb2c= cmlj Kio= IHdhcg== IHBvd2Vy dmlldw== IGZldw== IGxvYw== IGRpZmZlcmVudA== IHN0YXRl IGhlYWQ= J2xs IHBvc3M= IHN0YXQ= cmV0 YW50cw== IHZhbA== IGlzcw== IGNsZQ== aXZlcnM= YW5j IGV4cGw= IGFub3RoZXI= IFE= IGF2 dGhpbmc= bmNl V2g= IGNoaWxk IHNpbmNl aXJlZA== bGVzcw== IGxpZmU= IGRldmVsb3A= aXR0bGU= IGRlcA== IHBhc3M= 44M= IHR1cm4= b3Ju VGhpcw== YmVycw== cm9zcw== IEFk IGZy IHJlc3A= IHNlY29uZA== b2g= IC8= IGRpc2M= ICY= IHNvbWV0aGluZw== IGNvbXBsZQ== IGVk IGZpbA== IG1vbnRo YWo= dWM= IGdvdmVybm1lbnQ= IHdpdGhvdXQ= IGxlZw== IGRpc3Q= IHB1dA== IHF1ZXN0 YW5u IHByb3Q= MjA= IG5ldmVy aWVuY2U= IGxldmVs IGFydA== IHRoaW5ncw== IG1pZ2h0 IGVmZmVjdA== IGNvbnRybw== IGNlbnQ= IDE4 IGFsbG93 IGJlbGll Y2hvb2w= b3R0 IGluY3Jl IGZlZWw= IHJlc3VsdA== IGxvdA== IGZ1bg== b3Rl IHR5 ZXJlc3Q= IGNvbnRpbg== IHVzaW5n IGJpZw== MjAx IGFzaw== IGJlc3Q= ICk= SU4= IG9wcA== MzA= IG51bWJlcg== aW5lc3M= U3Q= bGVhc2U= IGNh IG11c3Q= IGRpcmVjdA== IGds IDw= IG9wZW4= IHBvc3Q= IGNvbWU= IHNlZW0= b3JkaW5n IHdlZWs= YXRlbHk= aXRhbA== IGVs cmllbmQ= IGZhcg== IHRyYQ== aW5hbA== IHByaQ== IFVT IHBsYWNl IGZvcm0= IHRvbGQ= Ijo= YWlucw== YXR1cmU= IFRydW1w IHN0YW5k ICM= aWRlcg== IEZy IG5leHQ= IHNvYw== IHB1cg== IGxldA== IGxpdHRsZQ== IGh1bQ== IGk= cm9u MTU= IDE1 IGNvbW11bg== IG1hcms= IFRoZXJl IHdy IFRoYXQ= IGluZm9ybWF0aW9u d2F5cw== IGJ1cw== YXBw IGludmVzdA== bWU= IGhhcmQ= YWluZWQ= ZWFk IGltcG9ydA== IGFwcHJv IHRlc3Q= IHRyaQ== IHJlc3Q= b3NlZA== IGZ1bGw= IGNhcmU= IFNw IGNhc2U= T04= IHNr IGxlc3M= ICs= IHBhcnRpYw== IFBs YWJseQ== dWNr aXNoZWQ= Y2hu YmU= IGxpc3Q= YXRvcg== IHRvcA== IGFkdg== IEJl cnVjdA== IGRlbQ== cmF0aW9u bGluZw== Z3k= cmVlbg== Z2Vy IGhvbWU= IGxlZnQ= IGJldHRlcg== IGRhdGE= IDEx IGF0dGFjaw== IHByb2JsZQ== bGluZQ== YXJkcw== IGJlaA== cmFs IEhvdw== IFNoZQ== YXJnZQ== IC0t Oi8v IGJybw== IFBo YXRz IGJ1aWxk d3c= aWRlZA== YWlt YXNlcw== ZW5jeQ== IG1haW4= aW5lZA== IGluY2x1ZGluZw== IHs= IGdvdA== IGludGVyZXN0 IGtlZXA= IFg= IGVhcw== YWluaW5n IGNsYXNz 4oCm IE5v IHZhcg== IHNtYWxs YW1wbGU= QVQ= IGlkZQ== IFNv IHJlY2U= IHBvbGl0 IG1vdg== IHBsYW4= IHBlcmNlbnQ= aXZpbmc= IGNhbXA= IHBheQ== MTQ= c2M= aXNlZA== IHVudA== b25leQ== cGxveQ== PT09PQ== IGRpZG4= IEluZA== ZWxz ZXJ0YWlu IHBvcw== X19fXw== aXZlcg== IHByb2Nlc3M= IHByb2dyYW0= aWZpZWQ= IFJlcA== MTY= dXJv b2xvZ3k= YXR0ZXI= aW5h IG5hbWU= IEFsbA== IGZvdXI= IHJldHVybg== dmlvdXM= YnM= IGNhbGxlZA== IG1vdmU= IFNj aXJk IGdyb3Vw IGJyZQ== IG1lbg== IGNhcA== dGVu ZWU= IGRyaQ== bGVn aGVyZQ== dXRob3I= IHBhdA== IGN1cnJlbnQ= aWRlcw== IHBvcA== dG8= ZW50aW9u IGFsd2F5cw== IG1pbA== IHdvbWVu IDE2 IG9sZA== aXZlbg== cmFwaA== IE9y cm9y ZW50bHk= IG5lYXI= IEV4 cmVhbQ== c2g= IDE0 IGZyZWU= aXNzaW9u c3RhbmQ= IENvbg== YWxpdHk= dXNlZA== MTM= IGRlc2lnbg== IGNoYW5nZQ== IGNoYW5n IGJv IHZpcw== ZW1iZXI= IGJvb2s= cmVhZHk= IGtpbGw= MjU= cHBlZA== IGF3YXk= IGFibGU= IGNvdW50cnk= IGNvbnN0 YXJu IG9yZGVy QVI= aW9y aXVt b3J0aA== MTg= YWlsYWJsZQ== IHN3 IG1pbGxpb24= IDEz YXRpYw== dGVk IEdv IG9wZXI= ZW5n IHRoaW5n YWpvcg== Y29ub20= IENvbW0= IHdoeQ== dXJlZA== dXJhbA== IHNjaG9vbA== Ynk= IE1hcg== IGFmZg== IGRheXM= IGFubg== dXNo YW5l SWY= ZWc= IHByb2Y= IGhlYWx0aA== b3V0aA== QnV0 aW9uYWw= Liw= IHNvbA== IGFscmVhZHk= IDMw IGNoYXJhY3Q= SGU= IGZyaWVuZA== RVM= aWFucw== aWNsZQ== J2Q= IE9u IGxlYXN0 IHByb20= IGRy IGhpc3Q= aXRoZXI= IGVzdA== aXF1 MTc= c29u IHRlbGw= IHRhbGs= b2hu b2ludA== bGVjdGlvbg== QU4= IHVudGls YXVnaA== IGxhdGVy IHZl IHZpZXc= ZW5kaW5n aXZlZA== IHdvcmQ= d2FyZQ== IGNvc3Q= IGVub3VnaA== IGdpdmU= IFVuaXRlZA== IHRlY2hu YXJlbnQ= T1I= IHBhcg== IERy IDIwMTY= cmlzdA== ZXJpbmc= IMI= IGxhcmdl c2lkZQ== YWN5 Y2Nlc3M= IHdpbg== IGltcG9ydGFudA== IDE5OQ== IGRvZXNu IDE3 IGJ1c2luZXNz IGNsZWFy IHJlc2U= Iiw= dXJ5 IGVxdQ== YXN0ZXI= YWxm IEFtZXJpY2Fu bmVjdA== IGV4cGVjdA== aXZlcnNpdHk= IG9jYw== IEZs IGtpbmQ= IG1lYW4= IHBhc3Q= IGRldg== IGJhcw== bGV0 cmFmdA== IG9yZ2Fu IGRlbA== IHBlcmZvcm0= IHN0b3J5 IHNlYXNvbg== IENvbA== IGNsYWlt IGNhbWU= IHdpdGhpbg== IGxpbmU= IHByb2plY3Q= IEF0 IGNvbnRyb2w= ZW5kZWQ= IFN5 IGFpcg== aXphdGlvbg== ICo= bGV5 IG1vbmV5 aWRk WW91 Zm9y IGZhbWlseQ== IG1ha2luZw== IGJpdA== IHBvbGljZQ== IGhhcHBlbg== IHZlcnM= b255 dWZm IFdoZW4= IHNpdA== aWRlbw== bGY= aXNvbg== IHN1cmU= Z2lu IGFwcGVhcg== IGxpZ2h0 IGVz b2Y= IHdhdGVy IHRpbWVz bm90 IGdyb3c= IGNvbXBhbnk= IFRl b3dz IG1hcg== b3VyY2U= aW9s YXJt YnI= IGV4YW1wbGU= IGNvbmM= IGZvcmU= IFRv cHJv RU4= cmllcw== IDI1 IENhbg== bmV5 IGFjdHVhbGx5 IGV2ZXI= dXJpdHk= YWtlbg== YXBz IHRheA== IG1ham9y YW1h IG9mdGVu ZXJhbA== IGh1bWFu IGpvYg== aXN0ZXI= IGF2YWlsYWJsZQ== b2Ny ZW5u YWlk aXZpZA== IHJlY29yZA== PyI= IHNpbmc= IEFt aWRlbmNl IG5ld3M= c3Rlcg== IGVjb25vbQ== IGZvbGxvd2luZw== IEJy aXNpbmc= IGhvdXI= bW9zdA== dW1lbnQ= IHNleA== IGRlc2M= IGJlY29tZQ== IEVk IHRvb2s= IGhhdmluZw== IHByb2R1Y3Q= YXVsdA== QXM= YXJpbmc= IG1lYW5z IGhvcA== dW5l IGNobw== IGNlcnRhaW4= IG5vbg== IGRlYWw= MjQ= bGVtZW50 b2Np ZW5l IHNpZGU= IFBy IE1heQ== IHJlYXNvbg== dWVk Y2hlZA== dWxhdGlvbg== IGVsZWN0 IG9mZmljaWFs IHBvc3NpYmxl IGhvbGQ= YW5kcw== b3Rz IGNpdHk= b3JpZXM= IHNldmVy IGNoaWxkcmVu IG9uY2U= IGFjdGl2 bGVy IG5pZ2h0 aXRpb25z IEpvaG4= YXBl cGxheQ== IGRvbmU= IGxpbQ== IHdvcmtpbmc= IFByZXM= b3JsZA== ZWI= IENv IGJvZHk= YWlscw== dXRlcw== IE1y IHdoZXRoZXI= IGF1dGhvcg== cm9w IHByb3Blcg== IHNlZW4= KTs= IGZhYw== IFN1 IGNvbmQ= aXRpbmc= IGNvdXJzZQ== IH0= LS0tLS0tLS0tLS0tLS0tLQ== YWlnbg== IGV2ZW50 IGVuZw== IHBvdA== IGludGVybg== aWFt IHNob3J0 ZW1wdA== 44I= IEdvZA== aWxhcg== ODA= IG9yaWc= SVM= b3Vybg== YWJpbGl0eQ== aXRpdmU= IGRhbQ== IDEwMA== IHByZXNz IGRvaW5n IHByb3RlY3Q= cmluZw== IHRob3VnaHQ= IHF1ZXN0aW9u cmV3 IFdhcg== IHNldmVyYWw= IFN0YXRl IGdpdmVu IGZ1bmQ= IFR3 IHdlbnQ= YW5jZXM= d29yaw== cG9y bXk= NDA= IGFyZw== YXJ0bWVudA== dXN0b20= IHBvbGlj IG1lZXQ= IGNyZWF0 MjI= IFN0YXRlcw== IGdhbWVz cmF3 dXR1cmU= IHVuZGVyc3RhbmQ= dXJz IE9i bGlzaA== c3k= IG1ha2Vz IHdvbg== YWdvbg== IGh0dA== IGxvdmU= ZW50aWFs IGNvbXBsZXRl cGFy IElt QUw= IGFjY291bnQ= wqA= b3JlZA== dmVydA== IGlkZW50 IDIwMTU= IG90aGVycw== IE1pbg== aWJlcg== dmVyYWdl VGhlcmU= aXRpb25hbA== ZGQ= IHByb2I= IHlvdW5n IGFsb25n IGFjY29yZGluZw== IHlldA== IG1lbWJlcnM= IFdoYXQ= b2lk IE1hbg== QW5k IGFtb25n YWk= IGVtcGxveQ== IFJlcw== ID4= IGludm9s IGxvdw== YWY= IENhcg== IGhpZw== IE9uZQ== IFNlYw== aW5hdGlvbg== IGxpa2VseQ== IGFudA== YWdlZA== IFJ1c3M= IGJlbg== IHJlbGU= Rm9y YmFjaw== IE5vdA== IHByZXNpZGVudA== YmFsbA== IGFjY2Vzcw== aXZpZHVhbA== IERlbQ== IEV1cm8= NjA= IGtub3du aXJs IEdy IGVhcmx5 dXNl aWV0eQ== 4oCT IGZpZ2h0 IHNlbnQ= IHRvZGF5 IG1hcmtldA== Ii4= IGJhc2Vk IHN0cm9uZw== dXJ0aGVy IGRlYg== bWJlcg== IHByb2JsZW0= IGRlYXRo IHNvY2lhbA== aW1hdGU= QVM= b3J0dW4= IGNhbXBhaWdu ZXJ5 Q2g= IGV5 aWFsbHk= IG11cw== d2g= cG9z IGVy IHNhZg== IG1vbnRocw== aXJvbg== IHZpb2w= IGZpdmU= IHN0cmU= IHBsYXllcnM= aW5j YWxk eWVhcg== YXVu IHN1Y2Nlc3M= IHByZXNlbnQ= ZXJlbmNl IDIwMTQ= IHN1Z2c= IHBhcnRpY3VsYXI= IHRyeQ== IHN1Z2dlc3Q= IENocmlzdA== b25lcw== IHByaXY= MjM= IGNyaXQ= IGxhbmQ= IGxvY2Fs aWZ5 Mjk= IGF1dA== RUQ= IEd1 IG11bHQ= IHBvbGl0aWNhbA== IGFza2Vk IGZvcm1lcg== aXR0ZXI= cmlwdA== IGNsb3Nl IHByYWN0 IFlvcms= IGdldHRpbmc= IGFjcm9zcw== IGNvbWI= IGJlbGlldmU= IHo= IHRvZ2V0 IHRvZ2V0aGVy IENlbnQ= aXJj IGluZGl2aWR1YWw= IE1j Mjc= aXNr IEVuZw== IGZhY2U= IDI0 IHZhbHVl IGFyZWE= ZXY= IHdyaXQ= IFByZXNpZGVudA== IHZvdA== IGtleQ== IG1vbQ== cHV0 IGFueXRoaW5n IGV4cGVyaWVuY2U= YXR0bGU= IG1pbmQ= YWZm b21t IGZ1dHVyZQ== Z2Vk IGN1dA== IHRvdA== aXRjaA== IHZpZGVv IGludmVzdGln IG5ldA== IE15 cmljdA== aWVu Lik= IGltcHJv dGhvdWdo d2FyZHM= IGNvbm5lY3Q= IE1lZA== c2VsdmVz ZW5zaXZl bWI= b2Jlcg== YXRvcnM= QW4= IDUw IHJlZHU= cmVzZW50 IGFib3Zl IGZyZQ== IEV1cm9wZQ== c3c= IGFtb3VudA== IEFwcA== IGVpdGhlcg== IG1pbGl0 IGFuYWw= IGZhaWw= IEVu YWxlcw== IHNwZWNpYWw= IGJsYWNr SVQ= Y2hlcg== IGxvb2tpbmc= IGZpcmU= eW4= IGFsbW9zdA== b29u IHN0dWR5 IG1pc3M= Y2hlcw== cm93bg== IHRyZQ== IGNvbW11bml0eQ== IG1lZGlh IGZvb2Q= IGNvbWVz IFVuaXZlcnNpdHk= IHNpbmdsZQ== V2hhdA== dWx5 IGhhbGY= YWd1ZQ== aG9k IFJlcHVibGlj IHN0YXJ0ZWQ= IHF1aWNr b3Rv Ym9vaw== IGlzc3Vl aXRvcg== IGVsc2U= IGNvbnNpZGVy MjY= cm9kdQ== IHRha2Vu Mjg= OTk= IFdpdGg= IHRydWU= IHdh IHRyYWQ= IGFnbw== IG1lc3M= aWVm IGFkZGVk b2tl IGJhZA== IGZhdg== MzM= IHNpbWlsYXI= YXNr IERvbg== IGNoYXJhY3Rlcg== b3J0cw== IEhvdXNl IHJlcG9ydGVk IHR5cGU= dmFs aW9k IEhvd2V2ZXI= IHRhcmc= IGVudGlyZQ== cHBpbmc= IGhpc3Rvcnk= IGxpdmU= ZmZpYw== Li4uLi4uLi4= ZWRlcmFs IHRyeWluZw== IGRpc2N1c3M= IEhhcg== YWNlcw== bGlzaGVk IHNlbGY= b3Nw cmVzdA== IHJvb20= ZWx0 IGZhbGw= b2x1dGlvbg== IGV0 IHg= IGlzbg== IGlkZWE= Ym8= IHNvdW5k IERlcA== IHNvbWVvbmU= Y2lhbGx5 dWxseQ== IGZvYw== IG9iamVjdA== aWZ0 YXBlcg== IHBsYXllcg== IHJhdGhlcg== IHNlcnZpY2U= YXNoaW5n IERv IFBhcnQ= cnVn bW9u cGx5 IG1vcg== IG5vdGhpbmc= IHByb3ZpZGU= SUM= dW5n IHBhcnR5 IGV4aXN0 IG1hZw== NzA= IHJ1bA== IGhvdXNl IGJlaGluZA== IGhvd2V2ZXI= IFdvcmxk IHN1bQ== IGFwcGxpYw== IDs= IGZ1bmN0aW9u Z3I= IFBvbA== IGZyb250 MjAw IHNlcmllcw== IHRlbQ== IHR5cA== aWxscw== IG9wdA== IHBvaW50cw== IGJlbG93 aXR0ZWQ= IHNwZWNpZmlj IDIwMTc= dW1i IHJh IHByZXZpb3Vz IHByZXQ= cmVtZQ== IGN1c3RvbQ== IGNvdXJ0 IE1l IHJlcGw= IHdob2xl Z28= Y2Vy IHRyZWF0 IEFjdA== IHByb2JhYmx5 IGxlYXJu ZW5kZXI= IEFzcw== IHZlcnNpb24= bm93 IGNoZWNr IENhbA== UkU= bWluaXN0 T24= b3VyY2Vz IGJlbmVm IGRvYw== IGRldGVy IGVuYw== IHN1cGVy IGFkZHJlc3M= IHZpY3Q= IDIwMTM= IG1lYXM= dHI= IGZpZWxk V2hlbg== IHNpZ25pZmlj dWdl IGZlYXQ= IGNvbW1vbg== bG9hZA== IGJlZ2lu IGJyaW5n IGFjdGlvbg== ZXJtYW4= IGRlc2NyaWI= IGluZHVzdA== IHdhbnRlZA== cmllZA== bWluZw== IGF0dGVtcHQ= NDU= ZmVy IGR1ZQ== cmVzc2lvbg== IyM= IHNoYWxs IHNpeA== b28= IHN0ZXA= IHB1Yg== IGhpbXNlbGY= IDIz IGNvcA== IGRlc3Q= IHN0b3A= QUM= aWJpbGl0eQ== IGxhYg== aWN1bHQ= IGhvdXJz IGNyZWF0ZQ== IGZ1cnRoZXI= IEFtZXJpY2E= IENpdHk= IGRvdQ== aGVhZA== U1Q= IE5vcnRo Y2luZw== IG5hdGlvbmFs dWxl IEluc3Q= IHRha2luZw== IFF1 aXJ0 IHJlZA== IHJlc2VhcmNo dmlyb24= IEdl IGJyZWFr YW5h IHNwYWNl YXRlcmlhbA== IHJlY2VudA== IEFi IGdlbmVyYWw= IGhpdA== IHBlcmlvZA== IGV2ZXJ5dGhpbmc= aXZlbHk= IHBoeXM= IHNheWluZw== YW5rcw== IGNvdQ== IGN1bHQ= YWNlZA== ZWFs dWF0aW9u IGNvdW4= bHU= IGluY2x1ZGU= IHBvc2l0aW9u IEFmdGVy IENhbmFk IEVt IGltbQ== IFJlZA== IHBpY2s= IGNvbXBs IG1hdHRlcg== cmVn ZXh0 YW5ndQ== aXNj b2xl YXV0 IGNvbXBldA== ZWVk ZmVjdA== IDIx IFNlbg== IFRoZXNl YXNpbmc= IGNhbm5vdA== IGluaXQ= IHJlbGF0aW9ucw== YWNoZWQ= IGJhcg== IDQw IFRI IDIwMTI= IHZvbA== IGdyb3VuZA== IHNlY3VyaXR5 IHVwZA== aWx0 MzU= IGNvbmNlcm4= IEp1c3Q= IHdoaXRl IHNlZW1z IEhlcg== cGVjaWFsbHk= aWVudHM= IGFubm91bg== IGZpZw== aWdodHM= IHN0cmk= bGlrZQ== aWRz IHN1cw== IHdhdGNo IOI= IHdpbmQ= IENvbnQ= IGl0c2VsZg== IG1hc3M= QWw= eWxl aXF1ZQ== IE5hdGlvbmFs IGFicw== IHBhY2s= IG91dHNpZGU= IGFuaW0= IHBhaW4= ZXRlcg== IG1hbmFn ZHVjdA== b2du IF0= IFNlcHQ= c2Vj b2Zm IEphbg== IGZvb3Q= YWRlcw== IHRoaXJk IG1vdA== IGV2aWRlbmNl aW50b24= IHRocmVhdA== YXB0 cGxlcw== Y2xl IGxv IGRlY2w= IGl0ZW0= bWVkaQ== IHJlcHJlc2VudA== b21i YW1lcg== IHNpZ25pZmljYW50 b2dyYXBo c3U= IGNhbA== aXJlcw== MDAwMA== SUQ= QU0= IHNpbXBseQ== IGxvbmdlcg== IGZpbGU= T1Q= Y2hl U28= YXRlZw== b3Jn IEhpcw== IGVuZXI= IGRvbQ== IHVwb24= aWxp Ijoi IHRoZW1zZWx2ZXM= IGNvbWluZw== IHF1aXRl