@stryke/capnp 0.12.49 → 0.12.51

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.
@@ -1 +1 @@
1
- {"version":3,"file":"helpers-BoKbpcuO.mjs","names":["convert","conversions","models","styles","stringReplaceAll","stringEncaseCRLFWithFirstIndex","styles","chalk","chalk","chalk","resolvedTsconfig!: ParsedCommandLine"],"sources":["../../../../node_modules/.pnpm/@storm-software+config-tools@1.188.71/node_modules/@storm-software/config-tools/dist/chunk-LA3S35UI.js","../../../../node_modules/.pnpm/color-name@1.1.4/node_modules/color-name/index.js","../../../../node_modules/.pnpm/color-convert@2.0.1/node_modules/color-convert/conversions.js","../../../../node_modules/.pnpm/color-convert@2.0.1/node_modules/color-convert/route.js","../../../../node_modules/.pnpm/color-convert@2.0.1/node_modules/color-convert/index.js","../../../../node_modules/.pnpm/ansi-styles@4.3.0/node_modules/ansi-styles/index.js","../../../../node_modules/.pnpm/has-flag@4.0.0/node_modules/has-flag/index.js","../../../../node_modules/.pnpm/supports-color@7.2.0/node_modules/supports-color/index.js","../../../../node_modules/.pnpm/chalk@4.1.2/node_modules/chalk/source/util.js","../../../../node_modules/.pnpm/chalk@4.1.2/node_modules/chalk/source/templates.js","../../../../node_modules/.pnpm/chalk@4.1.2/node_modules/chalk/source/index.js","../../../../node_modules/.pnpm/@storm-software+config-tools@1.188.71/node_modules/@storm-software/config-tools/dist/chunk-HVVJHTFS.js","../../../../node_modules/.pnpm/@storm-software+config-tools@1.188.71/node_modules/@storm-software/config-tools/dist/chunk-G2MK47WL.js","../../../../node_modules/.pnpm/@storm-software+config-tools@1.188.71/node_modules/@storm-software/config-tools/dist/chunk-POXTJ6GF.js","../../../../node_modules/.pnpm/@storm-software+config-tools@1.188.71/node_modules/@storm-software/config-tools/dist/chunk-LM2UMGYA.js","../../../../node_modules/.pnpm/@storm-software+config-tools@1.188.71/node_modules/@storm-software/config-tools/dist/chunk-CZ4IE2QN.js","../../../../node_modules/.pnpm/@storm-software+config-tools@1.188.71/node_modules/@storm-software/config-tools/dist/chunk-K4CDYUQR.js","../../../../node_modules/.pnpm/@storm-software+config-tools@1.188.71/node_modules/@storm-software/config-tools/dist/chunk-UU2P3WKA.js","../../../convert/src/to-array.ts","../../src/helpers.ts"],"sourcesContent":["// src/utilities/colors.ts\nvar DEFAULT_COLOR_CONFIG = {\n light: {\n background: \"#fafafa\",\n foreground: \"#1d1e22\",\n brand: \"#1fb2a6\",\n alternate: \"#db2777\",\n help: \"#5C4EE5\",\n success: \"#087f5b\",\n info: \"#0550ae\",\n warning: \"#e3b341\",\n danger: \"#D8314A\",\n fatal: \"#51070f\",\n link: \"#3fa6ff\",\n positive: \"#22c55e\",\n negative: \"#dc2626\",\n gradient: [\"#1fb2a6\", \"#db2777\", \"#5C4EE5\"]\n },\n dark: {\n background: \"#1d1e22\",\n foreground: \"#cbd5e1\",\n brand: \"#2dd4bf\",\n alternate: \"#db2777\",\n help: \"#818cf8\",\n success: \"#10b981\",\n info: \"#58a6ff\",\n warning: \"#f3d371\",\n danger: \"#D8314A\",\n fatal: \"#a40e26\",\n link: \"#3fa6ff\",\n positive: \"#22c55e\",\n negative: \"#dc2626\",\n gradient: [\"#1fb2a6\", \"#db2777\", \"#818cf8\"]\n }\n};\nfunction getColors(config) {\n if (!config?.colors || typeof config.colors !== \"object\" || !config.colors[\"dark\"] && (!config.colors[\"base\"] || typeof config.colors !== \"object\" || !config.colors[\"base\"]?.[\"dark\"])) {\n return DEFAULT_COLOR_CONFIG;\n }\n if (config.colors[\"base\"]) {\n if (typeof config.colors[\"base\"][\"dark\"] === \"object\") {\n return config.colors[\"base\"][\"dark\"];\n } else if (config.colors[\"base\"][\"dark\"] === \"string\") {\n return config.colors[\"base\"];\n }\n }\n if (typeof config.colors[\"dark\"] === \"object\") {\n return config.colors[\"dark\"];\n }\n return config.colors ?? DEFAULT_COLOR_CONFIG;\n}\nfunction getColor(key, config) {\n const colors = getColors(config);\n const result = (typeof colors[\"dark\"] === \"object\" ? colors[\"dark\"][key] : colors[key]) || DEFAULT_COLOR_CONFIG[\"dark\"][key] || DEFAULT_COLOR_CONFIG[key];\n if (result) {\n return result;\n }\n if (key === \"link\") {\n return getColor(\"info\", config);\n } else if (key === \"fatal\") {\n return getColor(\"danger\", config);\n }\n return getColor(\"brand\", config);\n}\nfunction getGradient(config) {\n const colors = getColors(config);\n const result = (typeof colors[\"dark\"] === \"object\" ? colors[\"dark\"].gradient : colors.gradient) || DEFAULT_COLOR_CONFIG[\"dark\"].gradient;\n if (result && Array.isArray(result) && result.length > 0) {\n return result;\n }\n return void 0;\n}\n\nexport {\n DEFAULT_COLOR_CONFIG,\n getColors,\n getColor,\n getGradient\n};\n","'use strict'\r\n\r\nmodule.exports = {\r\n\t\"aliceblue\": [240, 248, 255],\r\n\t\"antiquewhite\": [250, 235, 215],\r\n\t\"aqua\": [0, 255, 255],\r\n\t\"aquamarine\": [127, 255, 212],\r\n\t\"azure\": [240, 255, 255],\r\n\t\"beige\": [245, 245, 220],\r\n\t\"bisque\": [255, 228, 196],\r\n\t\"black\": [0, 0, 0],\r\n\t\"blanchedalmond\": [255, 235, 205],\r\n\t\"blue\": [0, 0, 255],\r\n\t\"blueviolet\": [138, 43, 226],\r\n\t\"brown\": [165, 42, 42],\r\n\t\"burlywood\": [222, 184, 135],\r\n\t\"cadetblue\": [95, 158, 160],\r\n\t\"chartreuse\": [127, 255, 0],\r\n\t\"chocolate\": [210, 105, 30],\r\n\t\"coral\": [255, 127, 80],\r\n\t\"cornflowerblue\": [100, 149, 237],\r\n\t\"cornsilk\": [255, 248, 220],\r\n\t\"crimson\": [220, 20, 60],\r\n\t\"cyan\": [0, 255, 255],\r\n\t\"darkblue\": [0, 0, 139],\r\n\t\"darkcyan\": [0, 139, 139],\r\n\t\"darkgoldenrod\": [184, 134, 11],\r\n\t\"darkgray\": [169, 169, 169],\r\n\t\"darkgreen\": [0, 100, 0],\r\n\t\"darkgrey\": [169, 169, 169],\r\n\t\"darkkhaki\": [189, 183, 107],\r\n\t\"darkmagenta\": [139, 0, 139],\r\n\t\"darkolivegreen\": [85, 107, 47],\r\n\t\"darkorange\": [255, 140, 0],\r\n\t\"darkorchid\": [153, 50, 204],\r\n\t\"darkred\": [139, 0, 0],\r\n\t\"darksalmon\": [233, 150, 122],\r\n\t\"darkseagreen\": [143, 188, 143],\r\n\t\"darkslateblue\": [72, 61, 139],\r\n\t\"darkslategray\": [47, 79, 79],\r\n\t\"darkslategrey\": [47, 79, 79],\r\n\t\"darkturquoise\": [0, 206, 209],\r\n\t\"darkviolet\": [148, 0, 211],\r\n\t\"deeppink\": [255, 20, 147],\r\n\t\"deepskyblue\": [0, 191, 255],\r\n\t\"dimgray\": [105, 105, 105],\r\n\t\"dimgrey\": [105, 105, 105],\r\n\t\"dodgerblue\": [30, 144, 255],\r\n\t\"firebrick\": [178, 34, 34],\r\n\t\"floralwhite\": [255, 250, 240],\r\n\t\"forestgreen\": [34, 139, 34],\r\n\t\"fuchsia\": [255, 0, 255],\r\n\t\"gainsboro\": [220, 220, 220],\r\n\t\"ghostwhite\": [248, 248, 255],\r\n\t\"gold\": [255, 215, 0],\r\n\t\"goldenrod\": [218, 165, 32],\r\n\t\"gray\": [128, 128, 128],\r\n\t\"green\": [0, 128, 0],\r\n\t\"greenyellow\": [173, 255, 47],\r\n\t\"grey\": [128, 128, 128],\r\n\t\"honeydew\": [240, 255, 240],\r\n\t\"hotpink\": [255, 105, 180],\r\n\t\"indianred\": [205, 92, 92],\r\n\t\"indigo\": [75, 0, 130],\r\n\t\"ivory\": [255, 255, 240],\r\n\t\"khaki\": [240, 230, 140],\r\n\t\"lavender\": [230, 230, 250],\r\n\t\"lavenderblush\": [255, 240, 245],\r\n\t\"lawngreen\": [124, 252, 0],\r\n\t\"lemonchiffon\": [255, 250, 205],\r\n\t\"lightblue\": [173, 216, 230],\r\n\t\"lightcoral\": [240, 128, 128],\r\n\t\"lightcyan\": [224, 255, 255],\r\n\t\"lightgoldenrodyellow\": [250, 250, 210],\r\n\t\"lightgray\": [211, 211, 211],\r\n\t\"lightgreen\": [144, 238, 144],\r\n\t\"lightgrey\": [211, 211, 211],\r\n\t\"lightpink\": [255, 182, 193],\r\n\t\"lightsalmon\": [255, 160, 122],\r\n\t\"lightseagreen\": [32, 178, 170],\r\n\t\"lightskyblue\": [135, 206, 250],\r\n\t\"lightslategray\": [119, 136, 153],\r\n\t\"lightslategrey\": [119, 136, 153],\r\n\t\"lightsteelblue\": [176, 196, 222],\r\n\t\"lightyellow\": [255, 255, 224],\r\n\t\"lime\": [0, 255, 0],\r\n\t\"limegreen\": [50, 205, 50],\r\n\t\"linen\": [250, 240, 230],\r\n\t\"magenta\": [255, 0, 255],\r\n\t\"maroon\": [128, 0, 0],\r\n\t\"mediumaquamarine\": [102, 205, 170],\r\n\t\"mediumblue\": [0, 0, 205],\r\n\t\"mediumorchid\": [186, 85, 211],\r\n\t\"mediumpurple\": [147, 112, 219],\r\n\t\"mediumseagreen\": [60, 179, 113],\r\n\t\"mediumslateblue\": [123, 104, 238],\r\n\t\"mediumspringgreen\": [0, 250, 154],\r\n\t\"mediumturquoise\": [72, 209, 204],\r\n\t\"mediumvioletred\": [199, 21, 133],\r\n\t\"midnightblue\": [25, 25, 112],\r\n\t\"mintcream\": [245, 255, 250],\r\n\t\"mistyrose\": [255, 228, 225],\r\n\t\"moccasin\": [255, 228, 181],\r\n\t\"navajowhite\": [255, 222, 173],\r\n\t\"navy\": [0, 0, 128],\r\n\t\"oldlace\": [253, 245, 230],\r\n\t\"olive\": [128, 128, 0],\r\n\t\"olivedrab\": [107, 142, 35],\r\n\t\"orange\": [255, 165, 0],\r\n\t\"orangered\": [255, 69, 0],\r\n\t\"orchid\": [218, 112, 214],\r\n\t\"palegoldenrod\": [238, 232, 170],\r\n\t\"palegreen\": [152, 251, 152],\r\n\t\"paleturquoise\": [175, 238, 238],\r\n\t\"palevioletred\": [219, 112, 147],\r\n\t\"papayawhip\": [255, 239, 213],\r\n\t\"peachpuff\": [255, 218, 185],\r\n\t\"peru\": [205, 133, 63],\r\n\t\"pink\": [255, 192, 203],\r\n\t\"plum\": [221, 160, 221],\r\n\t\"powderblue\": [176, 224, 230],\r\n\t\"purple\": [128, 0, 128],\r\n\t\"rebeccapurple\": [102, 51, 153],\r\n\t\"red\": [255, 0, 0],\r\n\t\"rosybrown\": [188, 143, 143],\r\n\t\"royalblue\": [65, 105, 225],\r\n\t\"saddlebrown\": [139, 69, 19],\r\n\t\"salmon\": [250, 128, 114],\r\n\t\"sandybrown\": [244, 164, 96],\r\n\t\"seagreen\": [46, 139, 87],\r\n\t\"seashell\": [255, 245, 238],\r\n\t\"sienna\": [160, 82, 45],\r\n\t\"silver\": [192, 192, 192],\r\n\t\"skyblue\": [135, 206, 235],\r\n\t\"slateblue\": [106, 90, 205],\r\n\t\"slategray\": [112, 128, 144],\r\n\t\"slategrey\": [112, 128, 144],\r\n\t\"snow\": [255, 250, 250],\r\n\t\"springgreen\": [0, 255, 127],\r\n\t\"steelblue\": [70, 130, 180],\r\n\t\"tan\": [210, 180, 140],\r\n\t\"teal\": [0, 128, 128],\r\n\t\"thistle\": [216, 191, 216],\r\n\t\"tomato\": [255, 99, 71],\r\n\t\"turquoise\": [64, 224, 208],\r\n\t\"violet\": [238, 130, 238],\r\n\t\"wheat\": [245, 222, 179],\r\n\t\"white\": [255, 255, 255],\r\n\t\"whitesmoke\": [245, 245, 245],\r\n\t\"yellow\": [255, 255, 0],\r\n\t\"yellowgreen\": [154, 205, 50]\r\n};\r\n","/* MIT license */\n/* eslint-disable no-mixed-operators */\nconst cssKeywords = require('color-name');\n\n// NOTE: conversions should only return primitive values (i.e. arrays, or\n// values that give correct `typeof` results).\n// do not use box values types (i.e. Number(), String(), etc.)\n\nconst reverseKeywords = {};\nfor (const key of Object.keys(cssKeywords)) {\n\treverseKeywords[cssKeywords[key]] = key;\n}\n\nconst convert = {\n\trgb: {channels: 3, labels: 'rgb'},\n\thsl: {channels: 3, labels: 'hsl'},\n\thsv: {channels: 3, labels: 'hsv'},\n\thwb: {channels: 3, labels: 'hwb'},\n\tcmyk: {channels: 4, labels: 'cmyk'},\n\txyz: {channels: 3, labels: 'xyz'},\n\tlab: {channels: 3, labels: 'lab'},\n\tlch: {channels: 3, labels: 'lch'},\n\thex: {channels: 1, labels: ['hex']},\n\tkeyword: {channels: 1, labels: ['keyword']},\n\tansi16: {channels: 1, labels: ['ansi16']},\n\tansi256: {channels: 1, labels: ['ansi256']},\n\thcg: {channels: 3, labels: ['h', 'c', 'g']},\n\tapple: {channels: 3, labels: ['r16', 'g16', 'b16']},\n\tgray: {channels: 1, labels: ['gray']}\n};\n\nmodule.exports = convert;\n\n// Hide .channels and .labels properties\nfor (const model of Object.keys(convert)) {\n\tif (!('channels' in convert[model])) {\n\t\tthrow new Error('missing channels property: ' + model);\n\t}\n\n\tif (!('labels' in convert[model])) {\n\t\tthrow new Error('missing channel labels property: ' + model);\n\t}\n\n\tif (convert[model].labels.length !== convert[model].channels) {\n\t\tthrow new Error('channel and label counts mismatch: ' + model);\n\t}\n\n\tconst {channels, labels} = convert[model];\n\tdelete convert[model].channels;\n\tdelete convert[model].labels;\n\tObject.defineProperty(convert[model], 'channels', {value: channels});\n\tObject.defineProperty(convert[model], 'labels', {value: labels});\n}\n\nconvert.rgb.hsl = function (rgb) {\n\tconst r = rgb[0] / 255;\n\tconst g = rgb[1] / 255;\n\tconst b = rgb[2] / 255;\n\tconst min = Math.min(r, g, b);\n\tconst max = Math.max(r, g, b);\n\tconst delta = max - min;\n\tlet h;\n\tlet s;\n\n\tif (max === min) {\n\t\th = 0;\n\t} else if (r === max) {\n\t\th = (g - b) / delta;\n\t} else if (g === max) {\n\t\th = 2 + (b - r) / delta;\n\t} else if (b === max) {\n\t\th = 4 + (r - g) / delta;\n\t}\n\n\th = Math.min(h * 60, 360);\n\n\tif (h < 0) {\n\t\th += 360;\n\t}\n\n\tconst l = (min + max) / 2;\n\n\tif (max === min) {\n\t\ts = 0;\n\t} else if (l <= 0.5) {\n\t\ts = delta / (max + min);\n\t} else {\n\t\ts = delta / (2 - max - min);\n\t}\n\n\treturn [h, s * 100, l * 100];\n};\n\nconvert.rgb.hsv = function (rgb) {\n\tlet rdif;\n\tlet gdif;\n\tlet bdif;\n\tlet h;\n\tlet s;\n\n\tconst r = rgb[0] / 255;\n\tconst g = rgb[1] / 255;\n\tconst b = rgb[2] / 255;\n\tconst v = Math.max(r, g, b);\n\tconst diff = v - Math.min(r, g, b);\n\tconst diffc = function (c) {\n\t\treturn (v - c) / 6 / diff + 1 / 2;\n\t};\n\n\tif (diff === 0) {\n\t\th = 0;\n\t\ts = 0;\n\t} else {\n\t\ts = diff / v;\n\t\trdif = diffc(r);\n\t\tgdif = diffc(g);\n\t\tbdif = diffc(b);\n\n\t\tif (r === v) {\n\t\t\th = bdif - gdif;\n\t\t} else if (g === v) {\n\t\t\th = (1 / 3) + rdif - bdif;\n\t\t} else if (b === v) {\n\t\t\th = (2 / 3) + gdif - rdif;\n\t\t}\n\n\t\tif (h < 0) {\n\t\t\th += 1;\n\t\t} else if (h > 1) {\n\t\t\th -= 1;\n\t\t}\n\t}\n\n\treturn [\n\t\th * 360,\n\t\ts * 100,\n\t\tv * 100\n\t];\n};\n\nconvert.rgb.hwb = function (rgb) {\n\tconst r = rgb[0];\n\tconst g = rgb[1];\n\tlet b = rgb[2];\n\tconst h = convert.rgb.hsl(rgb)[0];\n\tconst w = 1 / 255 * Math.min(r, Math.min(g, b));\n\n\tb = 1 - 1 / 255 * Math.max(r, Math.max(g, b));\n\n\treturn [h, w * 100, b * 100];\n};\n\nconvert.rgb.cmyk = function (rgb) {\n\tconst r = rgb[0] / 255;\n\tconst g = rgb[1] / 255;\n\tconst b = rgb[2] / 255;\n\n\tconst k = Math.min(1 - r, 1 - g, 1 - b);\n\tconst c = (1 - r - k) / (1 - k) || 0;\n\tconst m = (1 - g - k) / (1 - k) || 0;\n\tconst y = (1 - b - k) / (1 - k) || 0;\n\n\treturn [c * 100, m * 100, y * 100, k * 100];\n};\n\nfunction comparativeDistance(x, y) {\n\t/*\n\t\tSee https://en.m.wikipedia.org/wiki/Euclidean_distance#Squared_Euclidean_distance\n\t*/\n\treturn (\n\t\t((x[0] - y[0]) ** 2) +\n\t\t((x[1] - y[1]) ** 2) +\n\t\t((x[2] - y[2]) ** 2)\n\t);\n}\n\nconvert.rgb.keyword = function (rgb) {\n\tconst reversed = reverseKeywords[rgb];\n\tif (reversed) {\n\t\treturn reversed;\n\t}\n\n\tlet currentClosestDistance = Infinity;\n\tlet currentClosestKeyword;\n\n\tfor (const keyword of Object.keys(cssKeywords)) {\n\t\tconst value = cssKeywords[keyword];\n\n\t\t// Compute comparative distance\n\t\tconst distance = comparativeDistance(rgb, value);\n\n\t\t// Check if its less, if so set as closest\n\t\tif (distance < currentClosestDistance) {\n\t\t\tcurrentClosestDistance = distance;\n\t\t\tcurrentClosestKeyword = keyword;\n\t\t}\n\t}\n\n\treturn currentClosestKeyword;\n};\n\nconvert.keyword.rgb = function (keyword) {\n\treturn cssKeywords[keyword];\n};\n\nconvert.rgb.xyz = function (rgb) {\n\tlet r = rgb[0] / 255;\n\tlet g = rgb[1] / 255;\n\tlet b = rgb[2] / 255;\n\n\t// Assume sRGB\n\tr = r > 0.04045 ? (((r + 0.055) / 1.055) ** 2.4) : (r / 12.92);\n\tg = g > 0.04045 ? (((g + 0.055) / 1.055) ** 2.4) : (g / 12.92);\n\tb = b > 0.04045 ? (((b + 0.055) / 1.055) ** 2.4) : (b / 12.92);\n\n\tconst x = (r * 0.4124) + (g * 0.3576) + (b * 0.1805);\n\tconst y = (r * 0.2126) + (g * 0.7152) + (b * 0.0722);\n\tconst z = (r * 0.0193) + (g * 0.1192) + (b * 0.9505);\n\n\treturn [x * 100, y * 100, z * 100];\n};\n\nconvert.rgb.lab = function (rgb) {\n\tconst xyz = convert.rgb.xyz(rgb);\n\tlet x = xyz[0];\n\tlet y = xyz[1];\n\tlet z = xyz[2];\n\n\tx /= 95.047;\n\ty /= 100;\n\tz /= 108.883;\n\n\tx = x > 0.008856 ? (x ** (1 / 3)) : (7.787 * x) + (16 / 116);\n\ty = y > 0.008856 ? (y ** (1 / 3)) : (7.787 * y) + (16 / 116);\n\tz = z > 0.008856 ? (z ** (1 / 3)) : (7.787 * z) + (16 / 116);\n\n\tconst l = (116 * y) - 16;\n\tconst a = 500 * (x - y);\n\tconst b = 200 * (y - z);\n\n\treturn [l, a, b];\n};\n\nconvert.hsl.rgb = function (hsl) {\n\tconst h = hsl[0] / 360;\n\tconst s = hsl[1] / 100;\n\tconst l = hsl[2] / 100;\n\tlet t2;\n\tlet t3;\n\tlet val;\n\n\tif (s === 0) {\n\t\tval = l * 255;\n\t\treturn [val, val, val];\n\t}\n\n\tif (l < 0.5) {\n\t\tt2 = l * (1 + s);\n\t} else {\n\t\tt2 = l + s - l * s;\n\t}\n\n\tconst t1 = 2 * l - t2;\n\n\tconst rgb = [0, 0, 0];\n\tfor (let i = 0; i < 3; i++) {\n\t\tt3 = h + 1 / 3 * -(i - 1);\n\t\tif (t3 < 0) {\n\t\t\tt3++;\n\t\t}\n\n\t\tif (t3 > 1) {\n\t\t\tt3--;\n\t\t}\n\n\t\tif (6 * t3 < 1) {\n\t\t\tval = t1 + (t2 - t1) * 6 * t3;\n\t\t} else if (2 * t3 < 1) {\n\t\t\tval = t2;\n\t\t} else if (3 * t3 < 2) {\n\t\t\tval = t1 + (t2 - t1) * (2 / 3 - t3) * 6;\n\t\t} else {\n\t\t\tval = t1;\n\t\t}\n\n\t\trgb[i] = val * 255;\n\t}\n\n\treturn rgb;\n};\n\nconvert.hsl.hsv = function (hsl) {\n\tconst h = hsl[0];\n\tlet s = hsl[1] / 100;\n\tlet l = hsl[2] / 100;\n\tlet smin = s;\n\tconst lmin = Math.max(l, 0.01);\n\n\tl *= 2;\n\ts *= (l <= 1) ? l : 2 - l;\n\tsmin *= lmin <= 1 ? lmin : 2 - lmin;\n\tconst v = (l + s) / 2;\n\tconst sv = l === 0 ? (2 * smin) / (lmin + smin) : (2 * s) / (l + s);\n\n\treturn [h, sv * 100, v * 100];\n};\n\nconvert.hsv.rgb = function (hsv) {\n\tconst h = hsv[0] / 60;\n\tconst s = hsv[1] / 100;\n\tlet v = hsv[2] / 100;\n\tconst hi = Math.floor(h) % 6;\n\n\tconst f = h - Math.floor(h);\n\tconst p = 255 * v * (1 - s);\n\tconst q = 255 * v * (1 - (s * f));\n\tconst t = 255 * v * (1 - (s * (1 - f)));\n\tv *= 255;\n\n\tswitch (hi) {\n\t\tcase 0:\n\t\t\treturn [v, t, p];\n\t\tcase 1:\n\t\t\treturn [q, v, p];\n\t\tcase 2:\n\t\t\treturn [p, v, t];\n\t\tcase 3:\n\t\t\treturn [p, q, v];\n\t\tcase 4:\n\t\t\treturn [t, p, v];\n\t\tcase 5:\n\t\t\treturn [v, p, q];\n\t}\n};\n\nconvert.hsv.hsl = function (hsv) {\n\tconst h = hsv[0];\n\tconst s = hsv[1] / 100;\n\tconst v = hsv[2] / 100;\n\tconst vmin = Math.max(v, 0.01);\n\tlet sl;\n\tlet l;\n\n\tl = (2 - s) * v;\n\tconst lmin = (2 - s) * vmin;\n\tsl = s * vmin;\n\tsl /= (lmin <= 1) ? lmin : 2 - lmin;\n\tsl = sl || 0;\n\tl /= 2;\n\n\treturn [h, sl * 100, l * 100];\n};\n\n// http://dev.w3.org/csswg/css-color/#hwb-to-rgb\nconvert.hwb.rgb = function (hwb) {\n\tconst h = hwb[0] / 360;\n\tlet wh = hwb[1] / 100;\n\tlet bl = hwb[2] / 100;\n\tconst ratio = wh + bl;\n\tlet f;\n\n\t// Wh + bl cant be > 1\n\tif (ratio > 1) {\n\t\twh /= ratio;\n\t\tbl /= ratio;\n\t}\n\n\tconst i = Math.floor(6 * h);\n\tconst v = 1 - bl;\n\tf = 6 * h - i;\n\n\tif ((i & 0x01) !== 0) {\n\t\tf = 1 - f;\n\t}\n\n\tconst n = wh + f * (v - wh); // Linear interpolation\n\n\tlet r;\n\tlet g;\n\tlet b;\n\t/* eslint-disable max-statements-per-line,no-multi-spaces */\n\tswitch (i) {\n\t\tdefault:\n\t\tcase 6:\n\t\tcase 0: r = v; g = n; b = wh; break;\n\t\tcase 1: r = n; g = v; b = wh; break;\n\t\tcase 2: r = wh; g = v; b = n; break;\n\t\tcase 3: r = wh; g = n; b = v; break;\n\t\tcase 4: r = n; g = wh; b = v; break;\n\t\tcase 5: r = v; g = wh; b = n; break;\n\t}\n\t/* eslint-enable max-statements-per-line,no-multi-spaces */\n\n\treturn [r * 255, g * 255, b * 255];\n};\n\nconvert.cmyk.rgb = function (cmyk) {\n\tconst c = cmyk[0] / 100;\n\tconst m = cmyk[1] / 100;\n\tconst y = cmyk[2] / 100;\n\tconst k = cmyk[3] / 100;\n\n\tconst r = 1 - Math.min(1, c * (1 - k) + k);\n\tconst g = 1 - Math.min(1, m * (1 - k) + k);\n\tconst b = 1 - Math.min(1, y * (1 - k) + k);\n\n\treturn [r * 255, g * 255, b * 255];\n};\n\nconvert.xyz.rgb = function (xyz) {\n\tconst x = xyz[0] / 100;\n\tconst y = xyz[1] / 100;\n\tconst z = xyz[2] / 100;\n\tlet r;\n\tlet g;\n\tlet b;\n\n\tr = (x * 3.2406) + (y * -1.5372) + (z * -0.4986);\n\tg = (x * -0.9689) + (y * 1.8758) + (z * 0.0415);\n\tb = (x * 0.0557) + (y * -0.2040) + (z * 1.0570);\n\n\t// Assume sRGB\n\tr = r > 0.0031308\n\t\t? ((1.055 * (r ** (1.0 / 2.4))) - 0.055)\n\t\t: r * 12.92;\n\n\tg = g > 0.0031308\n\t\t? ((1.055 * (g ** (1.0 / 2.4))) - 0.055)\n\t\t: g * 12.92;\n\n\tb = b > 0.0031308\n\t\t? ((1.055 * (b ** (1.0 / 2.4))) - 0.055)\n\t\t: b * 12.92;\n\n\tr = Math.min(Math.max(0, r), 1);\n\tg = Math.min(Math.max(0, g), 1);\n\tb = Math.min(Math.max(0, b), 1);\n\n\treturn [r * 255, g * 255, b * 255];\n};\n\nconvert.xyz.lab = function (xyz) {\n\tlet x = xyz[0];\n\tlet y = xyz[1];\n\tlet z = xyz[2];\n\n\tx /= 95.047;\n\ty /= 100;\n\tz /= 108.883;\n\n\tx = x > 0.008856 ? (x ** (1 / 3)) : (7.787 * x) + (16 / 116);\n\ty = y > 0.008856 ? (y ** (1 / 3)) : (7.787 * y) + (16 / 116);\n\tz = z > 0.008856 ? (z ** (1 / 3)) : (7.787 * z) + (16 / 116);\n\n\tconst l = (116 * y) - 16;\n\tconst a = 500 * (x - y);\n\tconst b = 200 * (y - z);\n\n\treturn [l, a, b];\n};\n\nconvert.lab.xyz = function (lab) {\n\tconst l = lab[0];\n\tconst a = lab[1];\n\tconst b = lab[2];\n\tlet x;\n\tlet y;\n\tlet z;\n\n\ty = (l + 16) / 116;\n\tx = a / 500 + y;\n\tz = y - b / 200;\n\n\tconst y2 = y ** 3;\n\tconst x2 = x ** 3;\n\tconst z2 = z ** 3;\n\ty = y2 > 0.008856 ? y2 : (y - 16 / 116) / 7.787;\n\tx = x2 > 0.008856 ? x2 : (x - 16 / 116) / 7.787;\n\tz = z2 > 0.008856 ? z2 : (z - 16 / 116) / 7.787;\n\n\tx *= 95.047;\n\ty *= 100;\n\tz *= 108.883;\n\n\treturn [x, y, z];\n};\n\nconvert.lab.lch = function (lab) {\n\tconst l = lab[0];\n\tconst a = lab[1];\n\tconst b = lab[2];\n\tlet h;\n\n\tconst hr = Math.atan2(b, a);\n\th = hr * 360 / 2 / Math.PI;\n\n\tif (h < 0) {\n\t\th += 360;\n\t}\n\n\tconst c = Math.sqrt(a * a + b * b);\n\n\treturn [l, c, h];\n};\n\nconvert.lch.lab = function (lch) {\n\tconst l = lch[0];\n\tconst c = lch[1];\n\tconst h = lch[2];\n\n\tconst hr = h / 360 * 2 * Math.PI;\n\tconst a = c * Math.cos(hr);\n\tconst b = c * Math.sin(hr);\n\n\treturn [l, a, b];\n};\n\nconvert.rgb.ansi16 = function (args, saturation = null) {\n\tconst [r, g, b] = args;\n\tlet value = saturation === null ? convert.rgb.hsv(args)[2] : saturation; // Hsv -> ansi16 optimization\n\n\tvalue = Math.round(value / 50);\n\n\tif (value === 0) {\n\t\treturn 30;\n\t}\n\n\tlet ansi = 30\n\t\t+ ((Math.round(b / 255) << 2)\n\t\t| (Math.round(g / 255) << 1)\n\t\t| Math.round(r / 255));\n\n\tif (value === 2) {\n\t\tansi += 60;\n\t}\n\n\treturn ansi;\n};\n\nconvert.hsv.ansi16 = function (args) {\n\t// Optimization here; we already know the value and don't need to get\n\t// it converted for us.\n\treturn convert.rgb.ansi16(convert.hsv.rgb(args), args[2]);\n};\n\nconvert.rgb.ansi256 = function (args) {\n\tconst r = args[0];\n\tconst g = args[1];\n\tconst b = args[2];\n\n\t// We use the extended greyscale palette here, with the exception of\n\t// black and white. normal palette only has 4 greyscale shades.\n\tif (r === g && g === b) {\n\t\tif (r < 8) {\n\t\t\treturn 16;\n\t\t}\n\n\t\tif (r > 248) {\n\t\t\treturn 231;\n\t\t}\n\n\t\treturn Math.round(((r - 8) / 247) * 24) + 232;\n\t}\n\n\tconst ansi = 16\n\t\t+ (36 * Math.round(r / 255 * 5))\n\t\t+ (6 * Math.round(g / 255 * 5))\n\t\t+ Math.round(b / 255 * 5);\n\n\treturn ansi;\n};\n\nconvert.ansi16.rgb = function (args) {\n\tlet color = args % 10;\n\n\t// Handle greyscale\n\tif (color === 0 || color === 7) {\n\t\tif (args > 50) {\n\t\t\tcolor += 3.5;\n\t\t}\n\n\t\tcolor = color / 10.5 * 255;\n\n\t\treturn [color, color, color];\n\t}\n\n\tconst mult = (~~(args > 50) + 1) * 0.5;\n\tconst r = ((color & 1) * mult) * 255;\n\tconst g = (((color >> 1) & 1) * mult) * 255;\n\tconst b = (((color >> 2) & 1) * mult) * 255;\n\n\treturn [r, g, b];\n};\n\nconvert.ansi256.rgb = function (args) {\n\t// Handle greyscale\n\tif (args >= 232) {\n\t\tconst c = (args - 232) * 10 + 8;\n\t\treturn [c, c, c];\n\t}\n\n\targs -= 16;\n\n\tlet rem;\n\tconst r = Math.floor(args / 36) / 5 * 255;\n\tconst g = Math.floor((rem = args % 36) / 6) / 5 * 255;\n\tconst b = (rem % 6) / 5 * 255;\n\n\treturn [r, g, b];\n};\n\nconvert.rgb.hex = function (args) {\n\tconst integer = ((Math.round(args[0]) & 0xFF) << 16)\n\t\t+ ((Math.round(args[1]) & 0xFF) << 8)\n\t\t+ (Math.round(args[2]) & 0xFF);\n\n\tconst string = integer.toString(16).toUpperCase();\n\treturn '000000'.substring(string.length) + string;\n};\n\nconvert.hex.rgb = function (args) {\n\tconst match = args.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);\n\tif (!match) {\n\t\treturn [0, 0, 0];\n\t}\n\n\tlet colorString = match[0];\n\n\tif (match[0].length === 3) {\n\t\tcolorString = colorString.split('').map(char => {\n\t\t\treturn char + char;\n\t\t}).join('');\n\t}\n\n\tconst integer = parseInt(colorString, 16);\n\tconst r = (integer >> 16) & 0xFF;\n\tconst g = (integer >> 8) & 0xFF;\n\tconst b = integer & 0xFF;\n\n\treturn [r, g, b];\n};\n\nconvert.rgb.hcg = function (rgb) {\n\tconst r = rgb[0] / 255;\n\tconst g = rgb[1] / 255;\n\tconst b = rgb[2] / 255;\n\tconst max = Math.max(Math.max(r, g), b);\n\tconst min = Math.min(Math.min(r, g), b);\n\tconst chroma = (max - min);\n\tlet grayscale;\n\tlet hue;\n\n\tif (chroma < 1) {\n\t\tgrayscale = min / (1 - chroma);\n\t} else {\n\t\tgrayscale = 0;\n\t}\n\n\tif (chroma <= 0) {\n\t\thue = 0;\n\t} else\n\tif (max === r) {\n\t\thue = ((g - b) / chroma) % 6;\n\t} else\n\tif (max === g) {\n\t\thue = 2 + (b - r) / chroma;\n\t} else {\n\t\thue = 4 + (r - g) / chroma;\n\t}\n\n\thue /= 6;\n\thue %= 1;\n\n\treturn [hue * 360, chroma * 100, grayscale * 100];\n};\n\nconvert.hsl.hcg = function (hsl) {\n\tconst s = hsl[1] / 100;\n\tconst l = hsl[2] / 100;\n\n\tconst c = l < 0.5 ? (2.0 * s * l) : (2.0 * s * (1.0 - l));\n\n\tlet f = 0;\n\tif (c < 1.0) {\n\t\tf = (l - 0.5 * c) / (1.0 - c);\n\t}\n\n\treturn [hsl[0], c * 100, f * 100];\n};\n\nconvert.hsv.hcg = function (hsv) {\n\tconst s = hsv[1] / 100;\n\tconst v = hsv[2] / 100;\n\n\tconst c = s * v;\n\tlet f = 0;\n\n\tif (c < 1.0) {\n\t\tf = (v - c) / (1 - c);\n\t}\n\n\treturn [hsv[0], c * 100, f * 100];\n};\n\nconvert.hcg.rgb = function (hcg) {\n\tconst h = hcg[0] / 360;\n\tconst c = hcg[1] / 100;\n\tconst g = hcg[2] / 100;\n\n\tif (c === 0.0) {\n\t\treturn [g * 255, g * 255, g * 255];\n\t}\n\n\tconst pure = [0, 0, 0];\n\tconst hi = (h % 1) * 6;\n\tconst v = hi % 1;\n\tconst w = 1 - v;\n\tlet mg = 0;\n\n\t/* eslint-disable max-statements-per-line */\n\tswitch (Math.floor(hi)) {\n\t\tcase 0:\n\t\t\tpure[0] = 1; pure[1] = v; pure[2] = 0; break;\n\t\tcase 1:\n\t\t\tpure[0] = w; pure[1] = 1; pure[2] = 0; break;\n\t\tcase 2:\n\t\t\tpure[0] = 0; pure[1] = 1; pure[2] = v; break;\n\t\tcase 3:\n\t\t\tpure[0] = 0; pure[1] = w; pure[2] = 1; break;\n\t\tcase 4:\n\t\t\tpure[0] = v; pure[1] = 0; pure[2] = 1; break;\n\t\tdefault:\n\t\t\tpure[0] = 1; pure[1] = 0; pure[2] = w;\n\t}\n\t/* eslint-enable max-statements-per-line */\n\n\tmg = (1.0 - c) * g;\n\n\treturn [\n\t\t(c * pure[0] + mg) * 255,\n\t\t(c * pure[1] + mg) * 255,\n\t\t(c * pure[2] + mg) * 255\n\t];\n};\n\nconvert.hcg.hsv = function (hcg) {\n\tconst c = hcg[1] / 100;\n\tconst g = hcg[2] / 100;\n\n\tconst v = c + g * (1.0 - c);\n\tlet f = 0;\n\n\tif (v > 0.0) {\n\t\tf = c / v;\n\t}\n\n\treturn [hcg[0], f * 100, v * 100];\n};\n\nconvert.hcg.hsl = function (hcg) {\n\tconst c = hcg[1] / 100;\n\tconst g = hcg[2] / 100;\n\n\tconst l = g * (1.0 - c) + 0.5 * c;\n\tlet s = 0;\n\n\tif (l > 0.0 && l < 0.5) {\n\t\ts = c / (2 * l);\n\t} else\n\tif (l >= 0.5 && l < 1.0) {\n\t\ts = c / (2 * (1 - l));\n\t}\n\n\treturn [hcg[0], s * 100, l * 100];\n};\n\nconvert.hcg.hwb = function (hcg) {\n\tconst c = hcg[1] / 100;\n\tconst g = hcg[2] / 100;\n\tconst v = c + g * (1.0 - c);\n\treturn [hcg[0], (v - c) * 100, (1 - v) * 100];\n};\n\nconvert.hwb.hcg = function (hwb) {\n\tconst w = hwb[1] / 100;\n\tconst b = hwb[2] / 100;\n\tconst v = 1 - b;\n\tconst c = v - w;\n\tlet g = 0;\n\n\tif (c < 1) {\n\t\tg = (v - c) / (1 - c);\n\t}\n\n\treturn [hwb[0], c * 100, g * 100];\n};\n\nconvert.apple.rgb = function (apple) {\n\treturn [(apple[0] / 65535) * 255, (apple[1] / 65535) * 255, (apple[2] / 65535) * 255];\n};\n\nconvert.rgb.apple = function (rgb) {\n\treturn [(rgb[0] / 255) * 65535, (rgb[1] / 255) * 65535, (rgb[2] / 255) * 65535];\n};\n\nconvert.gray.rgb = function (args) {\n\treturn [args[0] / 100 * 255, args[0] / 100 * 255, args[0] / 100 * 255];\n};\n\nconvert.gray.hsl = function (args) {\n\treturn [0, 0, args[0]];\n};\n\nconvert.gray.hsv = convert.gray.hsl;\n\nconvert.gray.hwb = function (gray) {\n\treturn [0, 100, gray[0]];\n};\n\nconvert.gray.cmyk = function (gray) {\n\treturn [0, 0, 0, gray[0]];\n};\n\nconvert.gray.lab = function (gray) {\n\treturn [gray[0], 0, 0];\n};\n\nconvert.gray.hex = function (gray) {\n\tconst val = Math.round(gray[0] / 100 * 255) & 0xFF;\n\tconst integer = (val << 16) + (val << 8) + val;\n\n\tconst string = integer.toString(16).toUpperCase();\n\treturn '000000'.substring(string.length) + string;\n};\n\nconvert.rgb.gray = function (rgb) {\n\tconst val = (rgb[0] + rgb[1] + rgb[2]) / 3;\n\treturn [val / 255 * 100];\n};\n","const conversions = require('./conversions');\n\n/*\n\tThis function routes a model to all other models.\n\n\tall functions that are routed have a property `.conversion` attached\n\tto the returned synthetic function. This property is an array\n\tof strings, each with the steps in between the 'from' and 'to'\n\tcolor models (inclusive).\n\n\tconversions that are not possible simply are not included.\n*/\n\nfunction buildGraph() {\n\tconst graph = {};\n\t// https://jsperf.com/object-keys-vs-for-in-with-closure/3\n\tconst models = Object.keys(conversions);\n\n\tfor (let len = models.length, i = 0; i < len; i++) {\n\t\tgraph[models[i]] = {\n\t\t\t// http://jsperf.com/1-vs-infinity\n\t\t\t// micro-opt, but this is simple.\n\t\t\tdistance: -1,\n\t\t\tparent: null\n\t\t};\n\t}\n\n\treturn graph;\n}\n\n// https://en.wikipedia.org/wiki/Breadth-first_search\nfunction deriveBFS(fromModel) {\n\tconst graph = buildGraph();\n\tconst queue = [fromModel]; // Unshift -> queue -> pop\n\n\tgraph[fromModel].distance = 0;\n\n\twhile (queue.length) {\n\t\tconst current = queue.pop();\n\t\tconst adjacents = Object.keys(conversions[current]);\n\n\t\tfor (let len = adjacents.length, i = 0; i < len; i++) {\n\t\t\tconst adjacent = adjacents[i];\n\t\t\tconst node = graph[adjacent];\n\n\t\t\tif (node.distance === -1) {\n\t\t\t\tnode.distance = graph[current].distance + 1;\n\t\t\t\tnode.parent = current;\n\t\t\t\tqueue.unshift(adjacent);\n\t\t\t}\n\t\t}\n\t}\n\n\treturn graph;\n}\n\nfunction link(from, to) {\n\treturn function (args) {\n\t\treturn to(from(args));\n\t};\n}\n\nfunction wrapConversion(toModel, graph) {\n\tconst path = [graph[toModel].parent, toModel];\n\tlet fn = conversions[graph[toModel].parent][toModel];\n\n\tlet cur = graph[toModel].parent;\n\twhile (graph[cur].parent) {\n\t\tpath.unshift(graph[cur].parent);\n\t\tfn = link(conversions[graph[cur].parent][cur], fn);\n\t\tcur = graph[cur].parent;\n\t}\n\n\tfn.conversion = path;\n\treturn fn;\n}\n\nmodule.exports = function (fromModel) {\n\tconst graph = deriveBFS(fromModel);\n\tconst conversion = {};\n\n\tconst models = Object.keys(graph);\n\tfor (let len = models.length, i = 0; i < len; i++) {\n\t\tconst toModel = models[i];\n\t\tconst node = graph[toModel];\n\n\t\tif (node.parent === null) {\n\t\t\t// No possible conversion, or this node is the source model.\n\t\t\tcontinue;\n\t\t}\n\n\t\tconversion[toModel] = wrapConversion(toModel, graph);\n\t}\n\n\treturn conversion;\n};\n\n","const conversions = require('./conversions');\nconst route = require('./route');\n\nconst convert = {};\n\nconst models = Object.keys(conversions);\n\nfunction wrapRaw(fn) {\n\tconst wrappedFn = function (...args) {\n\t\tconst arg0 = args[0];\n\t\tif (arg0 === undefined || arg0 === null) {\n\t\t\treturn arg0;\n\t\t}\n\n\t\tif (arg0.length > 1) {\n\t\t\targs = arg0;\n\t\t}\n\n\t\treturn fn(args);\n\t};\n\n\t// Preserve .conversion property if there is one\n\tif ('conversion' in fn) {\n\t\twrappedFn.conversion = fn.conversion;\n\t}\n\n\treturn wrappedFn;\n}\n\nfunction wrapRounded(fn) {\n\tconst wrappedFn = function (...args) {\n\t\tconst arg0 = args[0];\n\n\t\tif (arg0 === undefined || arg0 === null) {\n\t\t\treturn arg0;\n\t\t}\n\n\t\tif (arg0.length > 1) {\n\t\t\targs = arg0;\n\t\t}\n\n\t\tconst result = fn(args);\n\n\t\t// We're assuming the result is an array here.\n\t\t// see notice in conversions.js; don't use box types\n\t\t// in conversion functions.\n\t\tif (typeof result === 'object') {\n\t\t\tfor (let len = result.length, i = 0; i < len; i++) {\n\t\t\t\tresult[i] = Math.round(result[i]);\n\t\t\t}\n\t\t}\n\n\t\treturn result;\n\t};\n\n\t// Preserve .conversion property if there is one\n\tif ('conversion' in fn) {\n\t\twrappedFn.conversion = fn.conversion;\n\t}\n\n\treturn wrappedFn;\n}\n\nmodels.forEach(fromModel => {\n\tconvert[fromModel] = {};\n\n\tObject.defineProperty(convert[fromModel], 'channels', {value: conversions[fromModel].channels});\n\tObject.defineProperty(convert[fromModel], 'labels', {value: conversions[fromModel].labels});\n\n\tconst routes = route(fromModel);\n\tconst routeModels = Object.keys(routes);\n\n\trouteModels.forEach(toModel => {\n\t\tconst fn = routes[toModel];\n\n\t\tconvert[fromModel][toModel] = wrapRounded(fn);\n\t\tconvert[fromModel][toModel].raw = wrapRaw(fn);\n\t});\n});\n\nmodule.exports = convert;\n","'use strict';\n\nconst wrapAnsi16 = (fn, offset) => (...args) => {\n\tconst code = fn(...args);\n\treturn `\\u001B[${code + offset}m`;\n};\n\nconst wrapAnsi256 = (fn, offset) => (...args) => {\n\tconst code = fn(...args);\n\treturn `\\u001B[${38 + offset};5;${code}m`;\n};\n\nconst wrapAnsi16m = (fn, offset) => (...args) => {\n\tconst rgb = fn(...args);\n\treturn `\\u001B[${38 + offset};2;${rgb[0]};${rgb[1]};${rgb[2]}m`;\n};\n\nconst ansi2ansi = n => n;\nconst rgb2rgb = (r, g, b) => [r, g, b];\n\nconst setLazyProperty = (object, property, get) => {\n\tObject.defineProperty(object, property, {\n\t\tget: () => {\n\t\t\tconst value = get();\n\n\t\t\tObject.defineProperty(object, property, {\n\t\t\t\tvalue,\n\t\t\t\tenumerable: true,\n\t\t\t\tconfigurable: true\n\t\t\t});\n\n\t\t\treturn value;\n\t\t},\n\t\tenumerable: true,\n\t\tconfigurable: true\n\t});\n};\n\n/** @type {typeof import('color-convert')} */\nlet colorConvert;\nconst makeDynamicStyles = (wrap, targetSpace, identity, isBackground) => {\n\tif (colorConvert === undefined) {\n\t\tcolorConvert = require('color-convert');\n\t}\n\n\tconst offset = isBackground ? 10 : 0;\n\tconst styles = {};\n\n\tfor (const [sourceSpace, suite] of Object.entries(colorConvert)) {\n\t\tconst name = sourceSpace === 'ansi16' ? 'ansi' : sourceSpace;\n\t\tif (sourceSpace === targetSpace) {\n\t\t\tstyles[name] = wrap(identity, offset);\n\t\t} else if (typeof suite === 'object') {\n\t\t\tstyles[name] = wrap(suite[targetSpace], offset);\n\t\t}\n\t}\n\n\treturn styles;\n};\n\nfunction assembleStyles() {\n\tconst codes = new Map();\n\tconst styles = {\n\t\tmodifier: {\n\t\t\treset: [0, 0],\n\t\t\t// 21 isn't widely supported and 22 does the same thing\n\t\t\tbold: [1, 22],\n\t\t\tdim: [2, 22],\n\t\t\titalic: [3, 23],\n\t\t\tunderline: [4, 24],\n\t\t\tinverse: [7, 27],\n\t\t\thidden: [8, 28],\n\t\t\tstrikethrough: [9, 29]\n\t\t},\n\t\tcolor: {\n\t\t\tblack: [30, 39],\n\t\t\tred: [31, 39],\n\t\t\tgreen: [32, 39],\n\t\t\tyellow: [33, 39],\n\t\t\tblue: [34, 39],\n\t\t\tmagenta: [35, 39],\n\t\t\tcyan: [36, 39],\n\t\t\twhite: [37, 39],\n\n\t\t\t// Bright color\n\t\t\tblackBright: [90, 39],\n\t\t\tredBright: [91, 39],\n\t\t\tgreenBright: [92, 39],\n\t\t\tyellowBright: [93, 39],\n\t\t\tblueBright: [94, 39],\n\t\t\tmagentaBright: [95, 39],\n\t\t\tcyanBright: [96, 39],\n\t\t\twhiteBright: [97, 39]\n\t\t},\n\t\tbgColor: {\n\t\t\tbgBlack: [40, 49],\n\t\t\tbgRed: [41, 49],\n\t\t\tbgGreen: [42, 49],\n\t\t\tbgYellow: [43, 49],\n\t\t\tbgBlue: [44, 49],\n\t\t\tbgMagenta: [45, 49],\n\t\t\tbgCyan: [46, 49],\n\t\t\tbgWhite: [47, 49],\n\n\t\t\t// Bright color\n\t\t\tbgBlackBright: [100, 49],\n\t\t\tbgRedBright: [101, 49],\n\t\t\tbgGreenBright: [102, 49],\n\t\t\tbgYellowBright: [103, 49],\n\t\t\tbgBlueBright: [104, 49],\n\t\t\tbgMagentaBright: [105, 49],\n\t\t\tbgCyanBright: [106, 49],\n\t\t\tbgWhiteBright: [107, 49]\n\t\t}\n\t};\n\n\t// Alias bright black as gray (and grey)\n\tstyles.color.gray = styles.color.blackBright;\n\tstyles.bgColor.bgGray = styles.bgColor.bgBlackBright;\n\tstyles.color.grey = styles.color.blackBright;\n\tstyles.bgColor.bgGrey = styles.bgColor.bgBlackBright;\n\n\tfor (const [groupName, group] of Object.entries(styles)) {\n\t\tfor (const [styleName, style] of Object.entries(group)) {\n\t\t\tstyles[styleName] = {\n\t\t\t\topen: `\\u001B[${style[0]}m`,\n\t\t\t\tclose: `\\u001B[${style[1]}m`\n\t\t\t};\n\n\t\t\tgroup[styleName] = styles[styleName];\n\n\t\t\tcodes.set(style[0], style[1]);\n\t\t}\n\n\t\tObject.defineProperty(styles, groupName, {\n\t\t\tvalue: group,\n\t\t\tenumerable: false\n\t\t});\n\t}\n\n\tObject.defineProperty(styles, 'codes', {\n\t\tvalue: codes,\n\t\tenumerable: false\n\t});\n\n\tstyles.color.close = '\\u001B[39m';\n\tstyles.bgColor.close = '\\u001B[49m';\n\n\tsetLazyProperty(styles.color, 'ansi', () => makeDynamicStyles(wrapAnsi16, 'ansi16', ansi2ansi, false));\n\tsetLazyProperty(styles.color, 'ansi256', () => makeDynamicStyles(wrapAnsi256, 'ansi256', ansi2ansi, false));\n\tsetLazyProperty(styles.color, 'ansi16m', () => makeDynamicStyles(wrapAnsi16m, 'rgb', rgb2rgb, false));\n\tsetLazyProperty(styles.bgColor, 'ansi', () => makeDynamicStyles(wrapAnsi16, 'ansi16', ansi2ansi, true));\n\tsetLazyProperty(styles.bgColor, 'ansi256', () => makeDynamicStyles(wrapAnsi256, 'ansi256', ansi2ansi, true));\n\tsetLazyProperty(styles.bgColor, 'ansi16m', () => makeDynamicStyles(wrapAnsi16m, 'rgb', rgb2rgb, true));\n\n\treturn styles;\n}\n\n// Make the export immutable\nObject.defineProperty(module, 'exports', {\n\tenumerable: true,\n\tget: assembleStyles\n});\n","'use strict';\n\nmodule.exports = (flag, argv = process.argv) => {\n\tconst prefix = flag.startsWith('-') ? '' : (flag.length === 1 ? '-' : '--');\n\tconst position = argv.indexOf(prefix + flag);\n\tconst terminatorPosition = argv.indexOf('--');\n\treturn position !== -1 && (terminatorPosition === -1 || position < terminatorPosition);\n};\n","'use strict';\nconst os = require('os');\nconst tty = require('tty');\nconst hasFlag = require('has-flag');\n\nconst {env} = process;\n\nlet forceColor;\nif (hasFlag('no-color') ||\n\thasFlag('no-colors') ||\n\thasFlag('color=false') ||\n\thasFlag('color=never')) {\n\tforceColor = 0;\n} else if (hasFlag('color') ||\n\thasFlag('colors') ||\n\thasFlag('color=true') ||\n\thasFlag('color=always')) {\n\tforceColor = 1;\n}\n\nif ('FORCE_COLOR' in env) {\n\tif (env.FORCE_COLOR === 'true') {\n\t\tforceColor = 1;\n\t} else if (env.FORCE_COLOR === 'false') {\n\t\tforceColor = 0;\n\t} else {\n\t\tforceColor = env.FORCE_COLOR.length === 0 ? 1 : Math.min(parseInt(env.FORCE_COLOR, 10), 3);\n\t}\n}\n\nfunction translateLevel(level) {\n\tif (level === 0) {\n\t\treturn false;\n\t}\n\n\treturn {\n\t\tlevel,\n\t\thasBasic: true,\n\t\thas256: level >= 2,\n\t\thas16m: level >= 3\n\t};\n}\n\nfunction supportsColor(haveStream, streamIsTTY) {\n\tif (forceColor === 0) {\n\t\treturn 0;\n\t}\n\n\tif (hasFlag('color=16m') ||\n\t\thasFlag('color=full') ||\n\t\thasFlag('color=truecolor')) {\n\t\treturn 3;\n\t}\n\n\tif (hasFlag('color=256')) {\n\t\treturn 2;\n\t}\n\n\tif (haveStream && !streamIsTTY && forceColor === undefined) {\n\t\treturn 0;\n\t}\n\n\tconst min = forceColor || 0;\n\n\tif (env.TERM === 'dumb') {\n\t\treturn min;\n\t}\n\n\tif (process.platform === 'win32') {\n\t\t// Windows 10 build 10586 is the first Windows release that supports 256 colors.\n\t\t// Windows 10 build 14931 is the first release that supports 16m/TrueColor.\n\t\tconst osRelease = os.release().split('.');\n\t\tif (\n\t\t\tNumber(osRelease[0]) >= 10 &&\n\t\t\tNumber(osRelease[2]) >= 10586\n\t\t) {\n\t\t\treturn Number(osRelease[2]) >= 14931 ? 3 : 2;\n\t\t}\n\n\t\treturn 1;\n\t}\n\n\tif ('CI' in env) {\n\t\tif (['TRAVIS', 'CIRCLECI', 'APPVEYOR', 'GITLAB_CI', 'GITHUB_ACTIONS', 'BUILDKITE'].some(sign => sign in env) || env.CI_NAME === 'codeship') {\n\t\t\treturn 1;\n\t\t}\n\n\t\treturn min;\n\t}\n\n\tif ('TEAMCITY_VERSION' in env) {\n\t\treturn /^(9\\.(0*[1-9]\\d*)\\.|\\d{2,}\\.)/.test(env.TEAMCITY_VERSION) ? 1 : 0;\n\t}\n\n\tif (env.COLORTERM === 'truecolor') {\n\t\treturn 3;\n\t}\n\n\tif ('TERM_PROGRAM' in env) {\n\t\tconst version = parseInt((env.TERM_PROGRAM_VERSION || '').split('.')[0], 10);\n\n\t\tswitch (env.TERM_PROGRAM) {\n\t\t\tcase 'iTerm.app':\n\t\t\t\treturn version >= 3 ? 3 : 2;\n\t\t\tcase 'Apple_Terminal':\n\t\t\t\treturn 2;\n\t\t\t// No default\n\t\t}\n\t}\n\n\tif (/-256(color)?$/i.test(env.TERM)) {\n\t\treturn 2;\n\t}\n\n\tif (/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(env.TERM)) {\n\t\treturn 1;\n\t}\n\n\tif ('COLORTERM' in env) {\n\t\treturn 1;\n\t}\n\n\treturn min;\n}\n\nfunction getSupportLevel(stream) {\n\tconst level = supportsColor(stream, stream && stream.isTTY);\n\treturn translateLevel(level);\n}\n\nmodule.exports = {\n\tsupportsColor: getSupportLevel,\n\tstdout: translateLevel(supportsColor(true, tty.isatty(1))),\n\tstderr: translateLevel(supportsColor(true, tty.isatty(2)))\n};\n","'use strict';\n\nconst stringReplaceAll = (string, substring, replacer) => {\n\tlet index = string.indexOf(substring);\n\tif (index === -1) {\n\t\treturn string;\n\t}\n\n\tconst substringLength = substring.length;\n\tlet endIndex = 0;\n\tlet returnValue = '';\n\tdo {\n\t\treturnValue += string.substr(endIndex, index - endIndex) + substring + replacer;\n\t\tendIndex = index + substringLength;\n\t\tindex = string.indexOf(substring, endIndex);\n\t} while (index !== -1);\n\n\treturnValue += string.substr(endIndex);\n\treturn returnValue;\n};\n\nconst stringEncaseCRLFWithFirstIndex = (string, prefix, postfix, index) => {\n\tlet endIndex = 0;\n\tlet returnValue = '';\n\tdo {\n\t\tconst gotCR = string[index - 1] === '\\r';\n\t\treturnValue += string.substr(endIndex, (gotCR ? index - 1 : index) - endIndex) + prefix + (gotCR ? '\\r\\n' : '\\n') + postfix;\n\t\tendIndex = index + 1;\n\t\tindex = string.indexOf('\\n', endIndex);\n\t} while (index !== -1);\n\n\treturnValue += string.substr(endIndex);\n\treturn returnValue;\n};\n\nmodule.exports = {\n\tstringReplaceAll,\n\tstringEncaseCRLFWithFirstIndex\n};\n","'use strict';\nconst TEMPLATE_REGEX = /(?:\\\\(u(?:[a-f\\d]{4}|\\{[a-f\\d]{1,6}\\})|x[a-f\\d]{2}|.))|(?:\\{(~)?(\\w+(?:\\([^)]*\\))?(?:\\.\\w+(?:\\([^)]*\\))?)*)(?:[ \\t]|(?=\\r?\\n)))|(\\})|((?:.|[\\r\\n\\f])+?)/gi;\nconst STYLE_REGEX = /(?:^|\\.)(\\w+)(?:\\(([^)]*)\\))?/g;\nconst STRING_REGEX = /^(['\"])((?:\\\\.|(?!\\1)[^\\\\])*)\\1$/;\nconst ESCAPE_REGEX = /\\\\(u(?:[a-f\\d]{4}|{[a-f\\d]{1,6}})|x[a-f\\d]{2}|.)|([^\\\\])/gi;\n\nconst ESCAPES = new Map([\n\t['n', '\\n'],\n\t['r', '\\r'],\n\t['t', '\\t'],\n\t['b', '\\b'],\n\t['f', '\\f'],\n\t['v', '\\v'],\n\t['0', '\\0'],\n\t['\\\\', '\\\\'],\n\t['e', '\\u001B'],\n\t['a', '\\u0007']\n]);\n\nfunction unescape(c) {\n\tconst u = c[0] === 'u';\n\tconst bracket = c[1] === '{';\n\n\tif ((u && !bracket && c.length === 5) || (c[0] === 'x' && c.length === 3)) {\n\t\treturn String.fromCharCode(parseInt(c.slice(1), 16));\n\t}\n\n\tif (u && bracket) {\n\t\treturn String.fromCodePoint(parseInt(c.slice(2, -1), 16));\n\t}\n\n\treturn ESCAPES.get(c) || c;\n}\n\nfunction parseArguments(name, arguments_) {\n\tconst results = [];\n\tconst chunks = arguments_.trim().split(/\\s*,\\s*/g);\n\tlet matches;\n\n\tfor (const chunk of chunks) {\n\t\tconst number = Number(chunk);\n\t\tif (!Number.isNaN(number)) {\n\t\t\tresults.push(number);\n\t\t} else if ((matches = chunk.match(STRING_REGEX))) {\n\t\t\tresults.push(matches[2].replace(ESCAPE_REGEX, (m, escape, character) => escape ? unescape(escape) : character));\n\t\t} else {\n\t\t\tthrow new Error(`Invalid Chalk template style argument: ${chunk} (in style '${name}')`);\n\t\t}\n\t}\n\n\treturn results;\n}\n\nfunction parseStyle(style) {\n\tSTYLE_REGEX.lastIndex = 0;\n\n\tconst results = [];\n\tlet matches;\n\n\twhile ((matches = STYLE_REGEX.exec(style)) !== null) {\n\t\tconst name = matches[1];\n\n\t\tif (matches[2]) {\n\t\t\tconst args = parseArguments(name, matches[2]);\n\t\t\tresults.push([name].concat(args));\n\t\t} else {\n\t\t\tresults.push([name]);\n\t\t}\n\t}\n\n\treturn results;\n}\n\nfunction buildStyle(chalk, styles) {\n\tconst enabled = {};\n\n\tfor (const layer of styles) {\n\t\tfor (const style of layer.styles) {\n\t\t\tenabled[style[0]] = layer.inverse ? null : style.slice(1);\n\t\t}\n\t}\n\n\tlet current = chalk;\n\tfor (const [styleName, styles] of Object.entries(enabled)) {\n\t\tif (!Array.isArray(styles)) {\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (!(styleName in current)) {\n\t\t\tthrow new Error(`Unknown Chalk style: ${styleName}`);\n\t\t}\n\n\t\tcurrent = styles.length > 0 ? current[styleName](...styles) : current[styleName];\n\t}\n\n\treturn current;\n}\n\nmodule.exports = (chalk, temporary) => {\n\tconst styles = [];\n\tconst chunks = [];\n\tlet chunk = [];\n\n\t// eslint-disable-next-line max-params\n\ttemporary.replace(TEMPLATE_REGEX, (m, escapeCharacter, inverse, style, close, character) => {\n\t\tif (escapeCharacter) {\n\t\t\tchunk.push(unescape(escapeCharacter));\n\t\t} else if (style) {\n\t\t\tconst string = chunk.join('');\n\t\t\tchunk = [];\n\t\t\tchunks.push(styles.length === 0 ? string : buildStyle(chalk, styles)(string));\n\t\t\tstyles.push({inverse, styles: parseStyle(style)});\n\t\t} else if (close) {\n\t\t\tif (styles.length === 0) {\n\t\t\t\tthrow new Error('Found extraneous } in Chalk template literal');\n\t\t\t}\n\n\t\t\tchunks.push(buildStyle(chalk, styles)(chunk.join('')));\n\t\t\tchunk = [];\n\t\t\tstyles.pop();\n\t\t} else {\n\t\t\tchunk.push(character);\n\t\t}\n\t});\n\n\tchunks.push(chunk.join(''));\n\n\tif (styles.length > 0) {\n\t\tconst errMessage = `Chalk template literal is missing ${styles.length} closing bracket${styles.length === 1 ? '' : 's'} (\\`}\\`)`;\n\t\tthrow new Error(errMessage);\n\t}\n\n\treturn chunks.join('');\n};\n","'use strict';\nconst ansiStyles = require('ansi-styles');\nconst {stdout: stdoutColor, stderr: stderrColor} = require('supports-color');\nconst {\n\tstringReplaceAll,\n\tstringEncaseCRLFWithFirstIndex\n} = require('./util');\n\nconst {isArray} = Array;\n\n// `supportsColor.level` → `ansiStyles.color[name]` mapping\nconst levelMapping = [\n\t'ansi',\n\t'ansi',\n\t'ansi256',\n\t'ansi16m'\n];\n\nconst styles = Object.create(null);\n\nconst applyOptions = (object, options = {}) => {\n\tif (options.level && !(Number.isInteger(options.level) && options.level >= 0 && options.level <= 3)) {\n\t\tthrow new Error('The `level` option should be an integer from 0 to 3');\n\t}\n\n\t// Detect level if not set manually\n\tconst colorLevel = stdoutColor ? stdoutColor.level : 0;\n\tobject.level = options.level === undefined ? colorLevel : options.level;\n};\n\nclass ChalkClass {\n\tconstructor(options) {\n\t\t// eslint-disable-next-line no-constructor-return\n\t\treturn chalkFactory(options);\n\t}\n}\n\nconst chalkFactory = options => {\n\tconst chalk = {};\n\tapplyOptions(chalk, options);\n\n\tchalk.template = (...arguments_) => chalkTag(chalk.template, ...arguments_);\n\n\tObject.setPrototypeOf(chalk, Chalk.prototype);\n\tObject.setPrototypeOf(chalk.template, chalk);\n\n\tchalk.template.constructor = () => {\n\t\tthrow new Error('`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead.');\n\t};\n\n\tchalk.template.Instance = ChalkClass;\n\n\treturn chalk.template;\n};\n\nfunction Chalk(options) {\n\treturn chalkFactory(options);\n}\n\nfor (const [styleName, style] of Object.entries(ansiStyles)) {\n\tstyles[styleName] = {\n\t\tget() {\n\t\t\tconst builder = createBuilder(this, createStyler(style.open, style.close, this._styler), this._isEmpty);\n\t\t\tObject.defineProperty(this, styleName, {value: builder});\n\t\t\treturn builder;\n\t\t}\n\t};\n}\n\nstyles.visible = {\n\tget() {\n\t\tconst builder = createBuilder(this, this._styler, true);\n\t\tObject.defineProperty(this, 'visible', {value: builder});\n\t\treturn builder;\n\t}\n};\n\nconst usedModels = ['rgb', 'hex', 'keyword', 'hsl', 'hsv', 'hwb', 'ansi', 'ansi256'];\n\nfor (const model of usedModels) {\n\tstyles[model] = {\n\t\tget() {\n\t\t\tconst {level} = this;\n\t\t\treturn function (...arguments_) {\n\t\t\t\tconst styler = createStyler(ansiStyles.color[levelMapping[level]][model](...arguments_), ansiStyles.color.close, this._styler);\n\t\t\t\treturn createBuilder(this, styler, this._isEmpty);\n\t\t\t};\n\t\t}\n\t};\n}\n\nfor (const model of usedModels) {\n\tconst bgModel = 'bg' + model[0].toUpperCase() + model.slice(1);\n\tstyles[bgModel] = {\n\t\tget() {\n\t\t\tconst {level} = this;\n\t\t\treturn function (...arguments_) {\n\t\t\t\tconst styler = createStyler(ansiStyles.bgColor[levelMapping[level]][model](...arguments_), ansiStyles.bgColor.close, this._styler);\n\t\t\t\treturn createBuilder(this, styler, this._isEmpty);\n\t\t\t};\n\t\t}\n\t};\n}\n\nconst proto = Object.defineProperties(() => {}, {\n\t...styles,\n\tlevel: {\n\t\tenumerable: true,\n\t\tget() {\n\t\t\treturn this._generator.level;\n\t\t},\n\t\tset(level) {\n\t\t\tthis._generator.level = level;\n\t\t}\n\t}\n});\n\nconst createStyler = (open, close, parent) => {\n\tlet openAll;\n\tlet closeAll;\n\tif (parent === undefined) {\n\t\topenAll = open;\n\t\tcloseAll = close;\n\t} else {\n\t\topenAll = parent.openAll + open;\n\t\tcloseAll = close + parent.closeAll;\n\t}\n\n\treturn {\n\t\topen,\n\t\tclose,\n\t\topenAll,\n\t\tcloseAll,\n\t\tparent\n\t};\n};\n\nconst createBuilder = (self, _styler, _isEmpty) => {\n\tconst builder = (...arguments_) => {\n\t\tif (isArray(arguments_[0]) && isArray(arguments_[0].raw)) {\n\t\t\t// Called as a template literal, for example: chalk.red`2 + 3 = {bold ${2+3}}`\n\t\t\treturn applyStyle(builder, chalkTag(builder, ...arguments_));\n\t\t}\n\n\t\t// Single argument is hot path, implicit coercion is faster than anything\n\t\t// eslint-disable-next-line no-implicit-coercion\n\t\treturn applyStyle(builder, (arguments_.length === 1) ? ('' + arguments_[0]) : arguments_.join(' '));\n\t};\n\n\t// We alter the prototype because we must return a function, but there is\n\t// no way to create a function with a different prototype\n\tObject.setPrototypeOf(builder, proto);\n\n\tbuilder._generator = self;\n\tbuilder._styler = _styler;\n\tbuilder._isEmpty = _isEmpty;\n\n\treturn builder;\n};\n\nconst applyStyle = (self, string) => {\n\tif (self.level <= 0 || !string) {\n\t\treturn self._isEmpty ? '' : string;\n\t}\n\n\tlet styler = self._styler;\n\n\tif (styler === undefined) {\n\t\treturn string;\n\t}\n\n\tconst {openAll, closeAll} = styler;\n\tif (string.indexOf('\\u001B') !== -1) {\n\t\twhile (styler !== undefined) {\n\t\t\t// Replace any instances already present with a re-opening code\n\t\t\t// otherwise only the part of the string until said closing code\n\t\t\t// will be colored, and the rest will simply be 'plain'.\n\t\t\tstring = stringReplaceAll(string, styler.close, styler.open);\n\n\t\t\tstyler = styler.parent;\n\t\t}\n\t}\n\n\t// We can move both next actions out of loop, because remaining actions in loop won't have\n\t// any/visible effect on parts we add here. Close the styling before a linebreak and reopen\n\t// after next line to fix a bleed issue on macOS: https://github.com/chalk/chalk/pull/92\n\tconst lfIndex = string.indexOf('\\n');\n\tif (lfIndex !== -1) {\n\t\tstring = stringEncaseCRLFWithFirstIndex(string, closeAll, openAll, lfIndex);\n\t}\n\n\treturn openAll + string + closeAll;\n};\n\nlet template;\nconst chalkTag = (chalk, ...strings) => {\n\tconst [firstString] = strings;\n\n\tif (!isArray(firstString) || !isArray(firstString.raw)) {\n\t\t// If chalk() was called by itself or with a string,\n\t\t// return the string itself as a string.\n\t\treturn strings.join(' ');\n\t}\n\n\tconst arguments_ = strings.slice(1);\n\tconst parts = [firstString.raw[0]];\n\n\tfor (let i = 1; i < firstString.length; i++) {\n\t\tparts.push(\n\t\t\tString(arguments_[i - 1]).replace(/[{}\\\\]/g, '\\\\$&'),\n\t\t\tString(firstString.raw[i])\n\t\t);\n\t}\n\n\tif (template === undefined) {\n\t\ttemplate = require('./templates');\n\t}\n\n\treturn template(chalk, parts.join(''));\n};\n\nObject.defineProperties(Chalk.prototype, styles);\n\nconst chalk = Chalk(); // eslint-disable-line new-cap\nchalk.supportsColor = stdoutColor;\nchalk.stderr = Chalk({level: stderrColor ? stderrColor.level : 0}); // eslint-disable-line new-cap\nchalk.stderr.supportsColor = stderrColor;\n\nmodule.exports = chalk;\n","// src/logger/chalk.ts\nimport chalk from \"chalk\";\nvar chalkDefault = {\n hex: (_) => (message) => message,\n bgHex: (_) => ({\n whiteBright: (message) => message,\n white: (message) => message\n }),\n white: (message) => message,\n whiteBright: (message) => message,\n gray: (message) => message,\n bold: {\n hex: (_) => (message) => message,\n bgHex: (_) => ({\n whiteBright: (message) => message,\n white: (message) => message\n }),\n whiteBright: (message) => message,\n white: (message) => message\n },\n dim: {\n hex: (_) => (message) => message,\n gray: (message) => message\n }\n};\nvar getChalk = () => {\n let _chalk = chalk;\n if (!_chalk?.hex || !_chalk?.bold?.hex || !_chalk?.bgHex || !_chalk?.whiteBright || !_chalk?.white) {\n _chalk = chalkDefault;\n }\n return _chalk;\n};\n\nexport {\n getChalk\n};\n","// src/logger/is-unicode-supported.ts\nfunction isUnicodeSupported() {\n if (process.platform !== \"win32\") {\n return process.env.TERM !== \"linux\";\n }\n return Boolean(process.env.WT_SESSION) || // Windows Terminal\n Boolean(process.env.TERMINUS_SUBLIME) || // Terminus (<0.2.27)\n process.env.ConEmuTask === \"{cmd::Cmder}\" || // ConEmu and cmder\n process.env.TERM_PROGRAM === \"Terminus-Sublime\" || process.env.TERM_PROGRAM === \"vscode\" || process.env.TERM === \"xterm-256color\" || process.env.TERM === \"alacritty\" || process.env.TERM === \"rxvt-unicode\" || process.env.TERM === \"rxvt-unicode-256color\" || process.env.TERMINAL_EMULATOR === \"JetBrains-JediTerm\";\n}\n\nexport {\n isUnicodeSupported\n};\n","// src/types.ts\nvar LogLevel = {\n SILENT: 0,\n FATAL: 10,\n ERROR: 20,\n WARN: 30,\n SUCCESS: 35,\n INFO: 40,\n DEBUG: 60,\n TRACE: 70,\n ALL: 100\n};\nvar LogLevelLabel = {\n SILENT: \"silent\",\n FATAL: \"fatal\",\n ERROR: \"error\",\n WARN: \"warn\",\n SUCCESS: \"success\",\n INFO: \"info\",\n DEBUG: \"debug\",\n TRACE: \"trace\",\n ALL: \"all\"\n};\n\nexport {\n LogLevel,\n LogLevelLabel\n};\n","import {\n isUnicodeSupported\n} from \"./chunk-G2MK47WL.js\";\nimport {\n LogLevelLabel\n} from \"./chunk-POXTJ6GF.js\";\n\n// src/logger/console-icons.ts\nvar useIcon = (c, fallback) => isUnicodeSupported() ? c : fallback;\nvar CONSOLE_ICONS = {\n [LogLevelLabel.ERROR]: useIcon(\"\\u2718\", \"\\xD7\"),\n [LogLevelLabel.FATAL]: useIcon(\"\\u{1F480}\", \"\\xD7\"),\n [LogLevelLabel.WARN]: useIcon(\"\\u26A0\", \"\\u203C\"),\n [LogLevelLabel.INFO]: useIcon(\"\\u2139\", \"i\"),\n [LogLevelLabel.SUCCESS]: useIcon(\"\\u2714\", \"\\u221A\"),\n [LogLevelLabel.DEBUG]: useIcon(\"\\u{1F6E0}\", \"D\"),\n [LogLevelLabel.TRACE]: useIcon(\"\\u{1F6E0}\", \"T\"),\n [LogLevelLabel.ALL]: useIcon(\"\\u2709\", \"\\u2192\")\n};\n\nexport {\n CONSOLE_ICONS\n};\n","// src/logger/format-timestamp.ts\nvar formatTimestamp = (date = /* @__PURE__ */ new Date()) => {\n return `${date.toLocaleDateString()} ${date.toLocaleTimeString()}`;\n};\n\nexport {\n formatTimestamp\n};\n","import {\n LogLevel,\n LogLevelLabel\n} from \"./chunk-POXTJ6GF.js\";\n\n// src/logger/get-log-level.ts\nvar getLogLevel = (label) => {\n switch (label) {\n case \"all\":\n return LogLevel.ALL;\n case \"trace\":\n return LogLevel.TRACE;\n case \"debug\":\n return LogLevel.DEBUG;\n case \"info\":\n return LogLevel.INFO;\n case \"warn\":\n return LogLevel.WARN;\n case \"error\":\n return LogLevel.ERROR;\n case \"fatal\":\n return LogLevel.FATAL;\n case \"silent\":\n return LogLevel.SILENT;\n default:\n return LogLevel.INFO;\n }\n};\nvar getLogLevelLabel = (logLevel = LogLevel.INFO) => {\n if (logLevel >= LogLevel.ALL) {\n return LogLevelLabel.ALL;\n }\n if (logLevel >= LogLevel.TRACE) {\n return LogLevelLabel.TRACE;\n }\n if (logLevel >= LogLevel.DEBUG) {\n return LogLevelLabel.DEBUG;\n }\n if (logLevel >= LogLevel.INFO) {\n return LogLevelLabel.INFO;\n }\n if (logLevel >= LogLevel.WARN) {\n return LogLevelLabel.WARN;\n }\n if (logLevel >= LogLevel.ERROR) {\n return LogLevelLabel.ERROR;\n }\n if (logLevel >= LogLevel.FATAL) {\n return LogLevelLabel.FATAL;\n }\n if (logLevel <= LogLevel.SILENT) {\n return LogLevelLabel.SILENT;\n }\n return LogLevelLabel.INFO;\n};\nvar isVerbose = (label = LogLevelLabel.SILENT) => {\n const logLevel = typeof label === \"string\" ? getLogLevel(label) : label;\n return logLevel >= LogLevel.DEBUG;\n};\n\nexport {\n getLogLevel,\n getLogLevelLabel,\n isVerbose\n};\n","import {\n DEFAULT_COLOR_CONFIG\n} from \"./chunk-LA3S35UI.js\";\nimport {\n getChalk\n} from \"./chunk-HVVJHTFS.js\";\nimport {\n CONSOLE_ICONS\n} from \"./chunk-LM2UMGYA.js\";\nimport {\n formatTimestamp\n} from \"./chunk-CZ4IE2QN.js\";\nimport {\n getLogLevel\n} from \"./chunk-K4CDYUQR.js\";\nimport {\n LogLevel,\n LogLevelLabel\n} from \"./chunk-POXTJ6GF.js\";\n\n// src/logger/console.ts\nimport { formatDistanceToNow } from \"date-fns/formatDistanceToNow\";\nvar getLogFn = (logLevel = LogLevel.INFO, config = {}, _chalk = getChalk()) => {\n const colors = !config.colors?.dark && !config.colors?.[\"base\"] && !config.colors?.[\"base\"]?.dark ? DEFAULT_COLOR_CONFIG : config.colors?.dark && typeof config.colors.dark === \"string\" ? config.colors : config.colors?.[\"base\"]?.dark && typeof config.colors[\"base\"].dark === \"string\" ? config.colors[\"base\"].dark : config.colors?.[\"base\"] ? config.colors?.[\"base\"] : DEFAULT_COLOR_CONFIG;\n const configLogLevel = config.logLevel || process.env.STORM_LOG_LEVEL || LogLevelLabel.INFO;\n if (logLevel > getLogLevel(configLogLevel) || logLevel <= LogLevel.SILENT || getLogLevel(configLogLevel) <= LogLevel.SILENT) {\n return (_) => {\n };\n }\n if (typeof logLevel === \"number\" && LogLevel.FATAL >= logLevel) {\n return (message) => {\n console.error(\n `\n${_chalk.gray(formatTimestamp())} ${_chalk.hex(colors.fatal ?? DEFAULT_COLOR_CONFIG.dark.fatal)(`[${CONSOLE_ICONS[LogLevelLabel.FATAL]} Fatal] `)}${_chalk.bold.whiteBright(formatLogMessage(message))}\n`\n );\n };\n }\n if (typeof logLevel === \"number\" && LogLevel.ERROR >= logLevel) {\n return (message) => {\n console.error(\n `\n${_chalk.gray(formatTimestamp())} ${_chalk.hex(colors.danger ?? DEFAULT_COLOR_CONFIG.dark.danger)(`[${CONSOLE_ICONS[LogLevelLabel.ERROR]} Error] `)}${_chalk.bold.whiteBright(formatLogMessage(message))}\n`\n );\n };\n }\n if (typeof logLevel === \"number\" && LogLevel.WARN >= logLevel) {\n return (message) => {\n console.warn(\n `\n${_chalk.gray(formatTimestamp())} ${_chalk.hex(colors.warning ?? DEFAULT_COLOR_CONFIG.dark.warning)(`[${CONSOLE_ICONS[LogLevelLabel.WARN]} Warn] `)}${_chalk.bold.whiteBright(formatLogMessage(message))}\n`\n );\n };\n }\n if (typeof logLevel === \"number\" && LogLevel.SUCCESS >= logLevel) {\n return (message) => {\n console.info(\n `\n${_chalk.gray(formatTimestamp())} ${_chalk.hex(colors.success ?? DEFAULT_COLOR_CONFIG.dark.success)(`[${CONSOLE_ICONS[LogLevelLabel.SUCCESS]} Success] `)}${_chalk.bold.whiteBright(formatLogMessage(message))}\n`\n );\n };\n }\n if (typeof logLevel === \"number\" && LogLevel.INFO >= logLevel) {\n return (message) => {\n console.info(\n `\n${_chalk.gray(formatTimestamp())} ${_chalk.hex(colors.info ?? DEFAULT_COLOR_CONFIG.dark.info)(`[${CONSOLE_ICONS[LogLevelLabel.INFO]} Info] `)}${_chalk.bold.whiteBright(formatLogMessage(message))}\n`\n );\n };\n }\n if (typeof logLevel === \"number\" && LogLevel.DEBUG >= logLevel) {\n return (message) => {\n console.debug(\n `\n${_chalk.gray(formatTimestamp())} ${_chalk.hex(colors.info ?? DEFAULT_COLOR_CONFIG.dark.info)(`[${CONSOLE_ICONS[LogLevelLabel.DEBUG]} Debug] `)}${_chalk.bold.whiteBright(formatLogMessage(message))}\n`\n );\n };\n }\n if (typeof logLevel === \"number\" && LogLevel.TRACE >= logLevel) {\n return (message) => {\n console.debug(\n `\n${_chalk.gray(formatTimestamp())} ${_chalk.hex(colors.info ?? DEFAULT_COLOR_CONFIG.dark.info)(`[${CONSOLE_ICONS[LogLevelLabel.TRACE]} Trace] `)}${_chalk.bold.whiteBright(formatLogMessage(message))}\n`\n );\n };\n }\n return (message) => {\n console.log(\n `\n${_chalk.gray(formatTimestamp())} ${_chalk.hex(colors.brand ?? DEFAULT_COLOR_CONFIG.dark.brand)(`[${CONSOLE_ICONS[LogLevelLabel.ALL]} System] `)}${_chalk.bold.whiteBright(formatLogMessage(message))}\n`\n );\n };\n};\nvar writeFatal = (message, config) => getLogFn(LogLevel.FATAL, config)(message);\nvar writeError = (message, config) => getLogFn(LogLevel.ERROR, config)(message);\nvar writeWarning = (message, config) => getLogFn(LogLevel.WARN, config)(message);\nvar writeInfo = (message, config) => getLogFn(LogLevel.INFO, config)(message);\nvar writeSuccess = (message, config) => getLogFn(LogLevel.SUCCESS, config)(message);\nvar writeDebug = (message, config) => getLogFn(LogLevel.DEBUG, config)(message);\nvar writeTrace = (message, config) => getLogFn(LogLevel.TRACE, config)(message);\nvar writeSystem = (message, config) => getLogFn(LogLevel.ALL, config)(message);\nvar getStopwatch = (name) => {\n const start = /* @__PURE__ */ new Date();\n return () => {\n console.info(\n `\n> \\u23F1\\uFE0F The${name ? ` ${name}` : \"\"} process took ${formatDistanceToNow(start, {\n includeSeconds: true\n })} to complete\n`\n );\n };\n};\nvar MAX_DEPTH = 4;\nvar formatLogMessage = (message, options = {}, depth = 0) => {\n if (depth > MAX_DEPTH) {\n return \"<max depth>\";\n }\n const prefix = options.prefix ?? \"-\";\n const skip = options.skip ?? [];\n return typeof message === \"undefined\" || message === null || !message && typeof message !== \"boolean\" ? \"<none>\" : typeof message === \"string\" ? message : Array.isArray(message) ? `\n${message.map((item, index) => ` ${prefix}> #${index} = ${formatLogMessage(item, { prefix: `${prefix}-`, skip }, depth + 1)}`).join(\"\\n\")}` : typeof message === \"object\" ? `\n${Object.keys(message).filter((key) => !skip.includes(key)).map(\n (key) => ` ${prefix}> ${key} = ${_isFunction(message[key]) ? \"<function>\" : typeof message[key] === \"object\" ? formatLogMessage(\n message[key],\n { prefix: `${prefix}-`, skip },\n depth + 1\n ) : message[key]}`\n ).join(\"\\n\")}` : message;\n};\nvar _isFunction = (value) => {\n try {\n return value instanceof Function || typeof value === \"function\" || !!(value?.constructor && value?.call && value?.apply);\n } catch {\n return false;\n }\n};\n\nexport {\n getLogFn,\n writeFatal,\n writeError,\n writeWarning,\n writeInfo,\n writeSuccess,\n writeDebug,\n writeTrace,\n writeSystem,\n getStopwatch,\n formatLogMessage\n};\n","/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Stryke\n\n This code was released as part of the Stryke project. Stryke\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/stryke.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/stryke\n Documentation: https://docs.stormsoftware.com/projects/stryke\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport type { Arrayable } from \"@stryke/types/array\";\nimport type { Nullable } from \"@stryke/types/utilities\";\n\n/**\n * Convert `Arrayable<T>` to `Array<T>`\n *\n * @param array - The `Arrayable<T>` to convert\n * @returns An `Array<T>` containing the elements of the input\n */\nexport function toArray<T>(array?: Nullable<Arrayable<T>>): Array<T> {\n array = array ?? [];\n return Array.isArray(array) ? array : [array];\n}\n","/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Stryke\n\n This code was released as part of the Stryke project. Stryke\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/stryke.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/stryke\n Documentation: https://docs.stormsoftware.com/projects/stryke\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport {\n writeFatal,\n writeWarning\n} from \"@storm-software/config-tools/logger/console\";\nimport { toArray } from \"@stryke/convert/to-array\";\nimport { existsSync } from \"@stryke/fs/exists\";\nimport { readJsonFile } from \"@stryke/fs/json\";\nimport { listFiles } from \"@stryke/fs/list-files\";\nimport { findFilePath, relativePath } from \"@stryke/path/file-path-fns\";\nimport { joinPaths } from \"@stryke/path/join-paths\";\nimport type { TsConfigJson } from \"@stryke/types/tsconfig\";\nimport type { ParsedCommandLine } from \"typescript\";\nimport { parseJsonConfigFileContent, sys } from \"typescript\";\nimport type { CapnpcOptions, CapnpcResolvedOptions } from \"./types.js\";\n\n/**\n * Resolves the options for the Cap'n Proto compiler.\n *\n * @param options - The options to resolve\n * @returns The resolved options\n */\nexport async function resolveOptions(\n options: Omit<CapnpcOptions, \"workspaceRoot\" | \"projectRoot\"> &\n Required<Pick<CapnpcOptions, \"workspaceRoot\" | \"projectRoot\">>\n): Promise<CapnpcResolvedOptions | null> {\n const tsconfigPath = options.tsconfigPath\n ? options.tsconfigPath\n .replace(\"{projectRoot}\", options.projectRoot)\n .replace(\"{workspaceRoot}\", options.workspaceRoot)\n : joinPaths(options.projectRoot, \"tsconfig.json\");\n const schemas = toArray(\n options.schemas\n ? options.schemas\n : joinPaths(options.projectRoot, \"schemas/**/*.capnp\")\n )\n .filter(Boolean)\n .map(schema =>\n schema\n .replace(\"{projectRoot}\", options.projectRoot)\n .replace(\"{workspaceRoot}\", options.workspaceRoot)\n );\n\n let resolvedTsconfig!: ParsedCommandLine;\n if (options.tsconfig) {\n resolvedTsconfig = options.tsconfig;\n } else {\n if (!tsconfigPath || !existsSync(tsconfigPath)) {\n const errorMessage = tsconfigPath\n ? `✖ The specified TypeScript configuration file \"${tsconfigPath}\" does not exist. Please provide a valid path.`\n : \"✖ The specified TypeScript configuration file does not exist. Please provide a valid path.\";\n writeFatal(errorMessage, { logLevel: \"all\" });\n\n throw new Error(errorMessage);\n }\n\n const tsconfigFile = await readJsonFile<TsConfigJson>(tsconfigPath);\n resolvedTsconfig = parseJsonConfigFileContent(\n tsconfigFile,\n sys,\n findFilePath(tsconfigPath)\n );\n if (!resolvedTsconfig) {\n const errorMessage = `✖ The specified TypeScript configuration file \"${tsconfigPath}\" is invalid. Please provide a valid configuration.`;\n writeFatal(errorMessage, { logLevel: \"all\" });\n\n throw new Error(errorMessage);\n }\n\n resolvedTsconfig.options.configFilePath = tsconfigPath;\n resolvedTsconfig.options.noImplicitOverride = false;\n resolvedTsconfig.options.noUnusedLocals = false;\n resolvedTsconfig.options.noUnusedParameters = false;\n }\n\n const resolvedSchemas = [] as string[];\n for (const schema of schemas) {\n let formattedSchema = schema;\n if (!schema.endsWith(\".capnp\") && !schema.includes(\"*\")) {\n formattedSchema = `${schema.replace(/\\/$/g, \"\")}/*.capnp`;\n }\n\n resolvedSchemas.push(...(await listFiles(formattedSchema)));\n }\n\n if (resolvedSchemas.length === 0 || !resolvedSchemas[0]) {\n writeWarning(\n `✖ No Cap'n Proto schema files found in the specified source paths: ${schemas.join(\n \", \"\n )}. As a result, the Cap'n Proto compiler will not be able to generate any output files. Please ensure that the paths are correct and contain .capnp files.`,\n { logLevel: \"all\" }\n );\n\n return null;\n }\n\n const output = options.output\n ? options.output\n .replace(\"{projectRoot}\", options.projectRoot)\n .replace(\"{workspaceRoot}\", options.workspaceRoot)\n : joinPaths(\n options.projectRoot,\n relativePath(\n tsconfigPath ? findFilePath(tsconfigPath) : options.projectRoot,\n joinPaths(\n options.workspaceRoot,\n resolvedSchemas[0].endsWith(\".capnp\")\n ? findFilePath(resolvedSchemas[0])\n : resolvedSchemas[0]\n )\n )\n );\n resolvedTsconfig.options.outDir = output;\n\n return {\n ...options,\n importPath: options.importPath\n ? options.importPath.split(\",\").map(dir => dir.trim())\n : [],\n workspaceRoot: options.workspaceRoot,\n projectRoot: options.projectRoot,\n schemas: resolvedSchemas,\n output,\n js: options.js === true,\n ts: options.noTs !== true,\n dts: options.dts ?? options.noDts !== true,\n tsconfig: resolvedTsconfig\n };\n}\n"],"x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],"mappings":"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"}
1
+ {"version":3,"file":"helpers-BoKbpcuO.mjs","names":["convert","conversions","models","styles","stringReplaceAll","stringEncaseCRLFWithFirstIndex","styles","chalk","chalk","chalk","resolvedTsconfig!: ParsedCommandLine"],"sources":["../../../../node_modules/.pnpm/@storm-software+config-tools@1.188.73/node_modules/@storm-software/config-tools/dist/chunk-LA3S35UI.js","../../../../node_modules/.pnpm/color-name@1.1.4/node_modules/color-name/index.js","../../../../node_modules/.pnpm/color-convert@2.0.1/node_modules/color-convert/conversions.js","../../../../node_modules/.pnpm/color-convert@2.0.1/node_modules/color-convert/route.js","../../../../node_modules/.pnpm/color-convert@2.0.1/node_modules/color-convert/index.js","../../../../node_modules/.pnpm/ansi-styles@4.3.0/node_modules/ansi-styles/index.js","../../../../node_modules/.pnpm/has-flag@4.0.0/node_modules/has-flag/index.js","../../../../node_modules/.pnpm/supports-color@7.2.0/node_modules/supports-color/index.js","../../../../node_modules/.pnpm/chalk@4.1.2/node_modules/chalk/source/util.js","../../../../node_modules/.pnpm/chalk@4.1.2/node_modules/chalk/source/templates.js","../../../../node_modules/.pnpm/chalk@4.1.2/node_modules/chalk/source/index.js","../../../../node_modules/.pnpm/@storm-software+config-tools@1.188.73/node_modules/@storm-software/config-tools/dist/chunk-HVVJHTFS.js","../../../../node_modules/.pnpm/@storm-software+config-tools@1.188.73/node_modules/@storm-software/config-tools/dist/chunk-G2MK47WL.js","../../../../node_modules/.pnpm/@storm-software+config-tools@1.188.73/node_modules/@storm-software/config-tools/dist/chunk-POXTJ6GF.js","../../../../node_modules/.pnpm/@storm-software+config-tools@1.188.73/node_modules/@storm-software/config-tools/dist/chunk-LM2UMGYA.js","../../../../node_modules/.pnpm/@storm-software+config-tools@1.188.73/node_modules/@storm-software/config-tools/dist/chunk-CZ4IE2QN.js","../../../../node_modules/.pnpm/@storm-software+config-tools@1.188.73/node_modules/@storm-software/config-tools/dist/chunk-K4CDYUQR.js","../../../../node_modules/.pnpm/@storm-software+config-tools@1.188.73/node_modules/@storm-software/config-tools/dist/chunk-UU2P3WKA.js","../../../convert/src/to-array.ts","../../src/helpers.ts"],"sourcesContent":["// src/utilities/colors.ts\nvar DEFAULT_COLOR_CONFIG = {\n light: {\n background: \"#fafafa\",\n foreground: \"#1d1e22\",\n brand: \"#1fb2a6\",\n alternate: \"#db2777\",\n help: \"#5C4EE5\",\n success: \"#087f5b\",\n info: \"#0550ae\",\n warning: \"#e3b341\",\n danger: \"#D8314A\",\n fatal: \"#51070f\",\n link: \"#3fa6ff\",\n positive: \"#22c55e\",\n negative: \"#dc2626\",\n gradient: [\"#1fb2a6\", \"#db2777\", \"#5C4EE5\"]\n },\n dark: {\n background: \"#1d1e22\",\n foreground: \"#cbd5e1\",\n brand: \"#2dd4bf\",\n alternate: \"#db2777\",\n help: \"#818cf8\",\n success: \"#10b981\",\n info: \"#58a6ff\",\n warning: \"#f3d371\",\n danger: \"#D8314A\",\n fatal: \"#a40e26\",\n link: \"#3fa6ff\",\n positive: \"#22c55e\",\n negative: \"#dc2626\",\n gradient: [\"#1fb2a6\", \"#db2777\", \"#818cf8\"]\n }\n};\nfunction getColors(config) {\n if (!config?.colors || typeof config.colors !== \"object\" || !config.colors[\"dark\"] && (!config.colors[\"base\"] || typeof config.colors !== \"object\" || !config.colors[\"base\"]?.[\"dark\"])) {\n return DEFAULT_COLOR_CONFIG;\n }\n if (config.colors[\"base\"]) {\n if (typeof config.colors[\"base\"][\"dark\"] === \"object\") {\n return config.colors[\"base\"][\"dark\"];\n } else if (config.colors[\"base\"][\"dark\"] === \"string\") {\n return config.colors[\"base\"];\n }\n }\n if (typeof config.colors[\"dark\"] === \"object\") {\n return config.colors[\"dark\"];\n }\n return config.colors ?? DEFAULT_COLOR_CONFIG;\n}\nfunction getColor(key, config) {\n const colors = getColors(config);\n const result = (typeof colors[\"dark\"] === \"object\" ? colors[\"dark\"][key] : colors[key]) || DEFAULT_COLOR_CONFIG[\"dark\"][key] || DEFAULT_COLOR_CONFIG[key];\n if (result) {\n return result;\n }\n if (key === \"link\") {\n return getColor(\"info\", config);\n } else if (key === \"fatal\") {\n return getColor(\"danger\", config);\n }\n return getColor(\"brand\", config);\n}\nfunction getGradient(config) {\n const colors = getColors(config);\n const result = (typeof colors[\"dark\"] === \"object\" ? colors[\"dark\"].gradient : colors.gradient) || DEFAULT_COLOR_CONFIG[\"dark\"].gradient;\n if (result && Array.isArray(result) && result.length > 0) {\n return result;\n }\n return void 0;\n}\n\nexport {\n DEFAULT_COLOR_CONFIG,\n getColors,\n getColor,\n getGradient\n};\n","'use strict'\r\n\r\nmodule.exports = {\r\n\t\"aliceblue\": [240, 248, 255],\r\n\t\"antiquewhite\": [250, 235, 215],\r\n\t\"aqua\": [0, 255, 255],\r\n\t\"aquamarine\": [127, 255, 212],\r\n\t\"azure\": [240, 255, 255],\r\n\t\"beige\": [245, 245, 220],\r\n\t\"bisque\": [255, 228, 196],\r\n\t\"black\": [0, 0, 0],\r\n\t\"blanchedalmond\": [255, 235, 205],\r\n\t\"blue\": [0, 0, 255],\r\n\t\"blueviolet\": [138, 43, 226],\r\n\t\"brown\": [165, 42, 42],\r\n\t\"burlywood\": [222, 184, 135],\r\n\t\"cadetblue\": [95, 158, 160],\r\n\t\"chartreuse\": [127, 255, 0],\r\n\t\"chocolate\": [210, 105, 30],\r\n\t\"coral\": [255, 127, 80],\r\n\t\"cornflowerblue\": [100, 149, 237],\r\n\t\"cornsilk\": [255, 248, 220],\r\n\t\"crimson\": [220, 20, 60],\r\n\t\"cyan\": [0, 255, 255],\r\n\t\"darkblue\": [0, 0, 139],\r\n\t\"darkcyan\": [0, 139, 139],\r\n\t\"darkgoldenrod\": [184, 134, 11],\r\n\t\"darkgray\": [169, 169, 169],\r\n\t\"darkgreen\": [0, 100, 0],\r\n\t\"darkgrey\": [169, 169, 169],\r\n\t\"darkkhaki\": [189, 183, 107],\r\n\t\"darkmagenta\": [139, 0, 139],\r\n\t\"darkolivegreen\": [85, 107, 47],\r\n\t\"darkorange\": [255, 140, 0],\r\n\t\"darkorchid\": [153, 50, 204],\r\n\t\"darkred\": [139, 0, 0],\r\n\t\"darksalmon\": [233, 150, 122],\r\n\t\"darkseagreen\": [143, 188, 143],\r\n\t\"darkslateblue\": [72, 61, 139],\r\n\t\"darkslategray\": [47, 79, 79],\r\n\t\"darkslategrey\": [47, 79, 79],\r\n\t\"darkturquoise\": [0, 206, 209],\r\n\t\"darkviolet\": [148, 0, 211],\r\n\t\"deeppink\": [255, 20, 147],\r\n\t\"deepskyblue\": [0, 191, 255],\r\n\t\"dimgray\": [105, 105, 105],\r\n\t\"dimgrey\": [105, 105, 105],\r\n\t\"dodgerblue\": [30, 144, 255],\r\n\t\"firebrick\": [178, 34, 34],\r\n\t\"floralwhite\": [255, 250, 240],\r\n\t\"forestgreen\": [34, 139, 34],\r\n\t\"fuchsia\": [255, 0, 255],\r\n\t\"gainsboro\": [220, 220, 220],\r\n\t\"ghostwhite\": [248, 248, 255],\r\n\t\"gold\": [255, 215, 0],\r\n\t\"goldenrod\": [218, 165, 32],\r\n\t\"gray\": [128, 128, 128],\r\n\t\"green\": [0, 128, 0],\r\n\t\"greenyellow\": [173, 255, 47],\r\n\t\"grey\": [128, 128, 128],\r\n\t\"honeydew\": [240, 255, 240],\r\n\t\"hotpink\": [255, 105, 180],\r\n\t\"indianred\": [205, 92, 92],\r\n\t\"indigo\": [75, 0, 130],\r\n\t\"ivory\": [255, 255, 240],\r\n\t\"khaki\": [240, 230, 140],\r\n\t\"lavender\": [230, 230, 250],\r\n\t\"lavenderblush\": [255, 240, 245],\r\n\t\"lawngreen\": [124, 252, 0],\r\n\t\"lemonchiffon\": [255, 250, 205],\r\n\t\"lightblue\": [173, 216, 230],\r\n\t\"lightcoral\": [240, 128, 128],\r\n\t\"lightcyan\": [224, 255, 255],\r\n\t\"lightgoldenrodyellow\": [250, 250, 210],\r\n\t\"lightgray\": [211, 211, 211],\r\n\t\"lightgreen\": [144, 238, 144],\r\n\t\"lightgrey\": [211, 211, 211],\r\n\t\"lightpink\": [255, 182, 193],\r\n\t\"lightsalmon\": [255, 160, 122],\r\n\t\"lightseagreen\": [32, 178, 170],\r\n\t\"lightskyblue\": [135, 206, 250],\r\n\t\"lightslategray\": [119, 136, 153],\r\n\t\"lightslategrey\": [119, 136, 153],\r\n\t\"lightsteelblue\": [176, 196, 222],\r\n\t\"lightyellow\": [255, 255, 224],\r\n\t\"lime\": [0, 255, 0],\r\n\t\"limegreen\": [50, 205, 50],\r\n\t\"linen\": [250, 240, 230],\r\n\t\"magenta\": [255, 0, 255],\r\n\t\"maroon\": [128, 0, 0],\r\n\t\"mediumaquamarine\": [102, 205, 170],\r\n\t\"mediumblue\": [0, 0, 205],\r\n\t\"mediumorchid\": [186, 85, 211],\r\n\t\"mediumpurple\": [147, 112, 219],\r\n\t\"mediumseagreen\": [60, 179, 113],\r\n\t\"mediumslateblue\": [123, 104, 238],\r\n\t\"mediumspringgreen\": [0, 250, 154],\r\n\t\"mediumturquoise\": [72, 209, 204],\r\n\t\"mediumvioletred\": [199, 21, 133],\r\n\t\"midnightblue\": [25, 25, 112],\r\n\t\"mintcream\": [245, 255, 250],\r\n\t\"mistyrose\": [255, 228, 225],\r\n\t\"moccasin\": [255, 228, 181],\r\n\t\"navajowhite\": [255, 222, 173],\r\n\t\"navy\": [0, 0, 128],\r\n\t\"oldlace\": [253, 245, 230],\r\n\t\"olive\": [128, 128, 0],\r\n\t\"olivedrab\": [107, 142, 35],\r\n\t\"orange\": [255, 165, 0],\r\n\t\"orangered\": [255, 69, 0],\r\n\t\"orchid\": [218, 112, 214],\r\n\t\"palegoldenrod\": [238, 232, 170],\r\n\t\"palegreen\": [152, 251, 152],\r\n\t\"paleturquoise\": [175, 238, 238],\r\n\t\"palevioletred\": [219, 112, 147],\r\n\t\"papayawhip\": [255, 239, 213],\r\n\t\"peachpuff\": [255, 218, 185],\r\n\t\"peru\": [205, 133, 63],\r\n\t\"pink\": [255, 192, 203],\r\n\t\"plum\": [221, 160, 221],\r\n\t\"powderblue\": [176, 224, 230],\r\n\t\"purple\": [128, 0, 128],\r\n\t\"rebeccapurple\": [102, 51, 153],\r\n\t\"red\": [255, 0, 0],\r\n\t\"rosybrown\": [188, 143, 143],\r\n\t\"royalblue\": [65, 105, 225],\r\n\t\"saddlebrown\": [139, 69, 19],\r\n\t\"salmon\": [250, 128, 114],\r\n\t\"sandybrown\": [244, 164, 96],\r\n\t\"seagreen\": [46, 139, 87],\r\n\t\"seashell\": [255, 245, 238],\r\n\t\"sienna\": [160, 82, 45],\r\n\t\"silver\": [192, 192, 192],\r\n\t\"skyblue\": [135, 206, 235],\r\n\t\"slateblue\": [106, 90, 205],\r\n\t\"slategray\": [112, 128, 144],\r\n\t\"slategrey\": [112, 128, 144],\r\n\t\"snow\": [255, 250, 250],\r\n\t\"springgreen\": [0, 255, 127],\r\n\t\"steelblue\": [70, 130, 180],\r\n\t\"tan\": [210, 180, 140],\r\n\t\"teal\": [0, 128, 128],\r\n\t\"thistle\": [216, 191, 216],\r\n\t\"tomato\": [255, 99, 71],\r\n\t\"turquoise\": [64, 224, 208],\r\n\t\"violet\": [238, 130, 238],\r\n\t\"wheat\": [245, 222, 179],\r\n\t\"white\": [255, 255, 255],\r\n\t\"whitesmoke\": [245, 245, 245],\r\n\t\"yellow\": [255, 255, 0],\r\n\t\"yellowgreen\": [154, 205, 50]\r\n};\r\n","/* MIT license */\n/* eslint-disable no-mixed-operators */\nconst cssKeywords = require('color-name');\n\n// NOTE: conversions should only return primitive values (i.e. arrays, or\n// values that give correct `typeof` results).\n// do not use box values types (i.e. Number(), String(), etc.)\n\nconst reverseKeywords = {};\nfor (const key of Object.keys(cssKeywords)) {\n\treverseKeywords[cssKeywords[key]] = key;\n}\n\nconst convert = {\n\trgb: {channels: 3, labels: 'rgb'},\n\thsl: {channels: 3, labels: 'hsl'},\n\thsv: {channels: 3, labels: 'hsv'},\n\thwb: {channels: 3, labels: 'hwb'},\n\tcmyk: {channels: 4, labels: 'cmyk'},\n\txyz: {channels: 3, labels: 'xyz'},\n\tlab: {channels: 3, labels: 'lab'},\n\tlch: {channels: 3, labels: 'lch'},\n\thex: {channels: 1, labels: ['hex']},\n\tkeyword: {channels: 1, labels: ['keyword']},\n\tansi16: {channels: 1, labels: ['ansi16']},\n\tansi256: {channels: 1, labels: ['ansi256']},\n\thcg: {channels: 3, labels: ['h', 'c', 'g']},\n\tapple: {channels: 3, labels: ['r16', 'g16', 'b16']},\n\tgray: {channels: 1, labels: ['gray']}\n};\n\nmodule.exports = convert;\n\n// Hide .channels and .labels properties\nfor (const model of Object.keys(convert)) {\n\tif (!('channels' in convert[model])) {\n\t\tthrow new Error('missing channels property: ' + model);\n\t}\n\n\tif (!('labels' in convert[model])) {\n\t\tthrow new Error('missing channel labels property: ' + model);\n\t}\n\n\tif (convert[model].labels.length !== convert[model].channels) {\n\t\tthrow new Error('channel and label counts mismatch: ' + model);\n\t}\n\n\tconst {channels, labels} = convert[model];\n\tdelete convert[model].channels;\n\tdelete convert[model].labels;\n\tObject.defineProperty(convert[model], 'channels', {value: channels});\n\tObject.defineProperty(convert[model], 'labels', {value: labels});\n}\n\nconvert.rgb.hsl = function (rgb) {\n\tconst r = rgb[0] / 255;\n\tconst g = rgb[1] / 255;\n\tconst b = rgb[2] / 255;\n\tconst min = Math.min(r, g, b);\n\tconst max = Math.max(r, g, b);\n\tconst delta = max - min;\n\tlet h;\n\tlet s;\n\n\tif (max === min) {\n\t\th = 0;\n\t} else if (r === max) {\n\t\th = (g - b) / delta;\n\t} else if (g === max) {\n\t\th = 2 + (b - r) / delta;\n\t} else if (b === max) {\n\t\th = 4 + (r - g) / delta;\n\t}\n\n\th = Math.min(h * 60, 360);\n\n\tif (h < 0) {\n\t\th += 360;\n\t}\n\n\tconst l = (min + max) / 2;\n\n\tif (max === min) {\n\t\ts = 0;\n\t} else if (l <= 0.5) {\n\t\ts = delta / (max + min);\n\t} else {\n\t\ts = delta / (2 - max - min);\n\t}\n\n\treturn [h, s * 100, l * 100];\n};\n\nconvert.rgb.hsv = function (rgb) {\n\tlet rdif;\n\tlet gdif;\n\tlet bdif;\n\tlet h;\n\tlet s;\n\n\tconst r = rgb[0] / 255;\n\tconst g = rgb[1] / 255;\n\tconst b = rgb[2] / 255;\n\tconst v = Math.max(r, g, b);\n\tconst diff = v - Math.min(r, g, b);\n\tconst diffc = function (c) {\n\t\treturn (v - c) / 6 / diff + 1 / 2;\n\t};\n\n\tif (diff === 0) {\n\t\th = 0;\n\t\ts = 0;\n\t} else {\n\t\ts = diff / v;\n\t\trdif = diffc(r);\n\t\tgdif = diffc(g);\n\t\tbdif = diffc(b);\n\n\t\tif (r === v) {\n\t\t\th = bdif - gdif;\n\t\t} else if (g === v) {\n\t\t\th = (1 / 3) + rdif - bdif;\n\t\t} else if (b === v) {\n\t\t\th = (2 / 3) + gdif - rdif;\n\t\t}\n\n\t\tif (h < 0) {\n\t\t\th += 1;\n\t\t} else if (h > 1) {\n\t\t\th -= 1;\n\t\t}\n\t}\n\n\treturn [\n\t\th * 360,\n\t\ts * 100,\n\t\tv * 100\n\t];\n};\n\nconvert.rgb.hwb = function (rgb) {\n\tconst r = rgb[0];\n\tconst g = rgb[1];\n\tlet b = rgb[2];\n\tconst h = convert.rgb.hsl(rgb)[0];\n\tconst w = 1 / 255 * Math.min(r, Math.min(g, b));\n\n\tb = 1 - 1 / 255 * Math.max(r, Math.max(g, b));\n\n\treturn [h, w * 100, b * 100];\n};\n\nconvert.rgb.cmyk = function (rgb) {\n\tconst r = rgb[0] / 255;\n\tconst g = rgb[1] / 255;\n\tconst b = rgb[2] / 255;\n\n\tconst k = Math.min(1 - r, 1 - g, 1 - b);\n\tconst c = (1 - r - k) / (1 - k) || 0;\n\tconst m = (1 - g - k) / (1 - k) || 0;\n\tconst y = (1 - b - k) / (1 - k) || 0;\n\n\treturn [c * 100, m * 100, y * 100, k * 100];\n};\n\nfunction comparativeDistance(x, y) {\n\t/*\n\t\tSee https://en.m.wikipedia.org/wiki/Euclidean_distance#Squared_Euclidean_distance\n\t*/\n\treturn (\n\t\t((x[0] - y[0]) ** 2) +\n\t\t((x[1] - y[1]) ** 2) +\n\t\t((x[2] - y[2]) ** 2)\n\t);\n}\n\nconvert.rgb.keyword = function (rgb) {\n\tconst reversed = reverseKeywords[rgb];\n\tif (reversed) {\n\t\treturn reversed;\n\t}\n\n\tlet currentClosestDistance = Infinity;\n\tlet currentClosestKeyword;\n\n\tfor (const keyword of Object.keys(cssKeywords)) {\n\t\tconst value = cssKeywords[keyword];\n\n\t\t// Compute comparative distance\n\t\tconst distance = comparativeDistance(rgb, value);\n\n\t\t// Check if its less, if so set as closest\n\t\tif (distance < currentClosestDistance) {\n\t\t\tcurrentClosestDistance = distance;\n\t\t\tcurrentClosestKeyword = keyword;\n\t\t}\n\t}\n\n\treturn currentClosestKeyword;\n};\n\nconvert.keyword.rgb = function (keyword) {\n\treturn cssKeywords[keyword];\n};\n\nconvert.rgb.xyz = function (rgb) {\n\tlet r = rgb[0] / 255;\n\tlet g = rgb[1] / 255;\n\tlet b = rgb[2] / 255;\n\n\t// Assume sRGB\n\tr = r > 0.04045 ? (((r + 0.055) / 1.055) ** 2.4) : (r / 12.92);\n\tg = g > 0.04045 ? (((g + 0.055) / 1.055) ** 2.4) : (g / 12.92);\n\tb = b > 0.04045 ? (((b + 0.055) / 1.055) ** 2.4) : (b / 12.92);\n\n\tconst x = (r * 0.4124) + (g * 0.3576) + (b * 0.1805);\n\tconst y = (r * 0.2126) + (g * 0.7152) + (b * 0.0722);\n\tconst z = (r * 0.0193) + (g * 0.1192) + (b * 0.9505);\n\n\treturn [x * 100, y * 100, z * 100];\n};\n\nconvert.rgb.lab = function (rgb) {\n\tconst xyz = convert.rgb.xyz(rgb);\n\tlet x = xyz[0];\n\tlet y = xyz[1];\n\tlet z = xyz[2];\n\n\tx /= 95.047;\n\ty /= 100;\n\tz /= 108.883;\n\n\tx = x > 0.008856 ? (x ** (1 / 3)) : (7.787 * x) + (16 / 116);\n\ty = y > 0.008856 ? (y ** (1 / 3)) : (7.787 * y) + (16 / 116);\n\tz = z > 0.008856 ? (z ** (1 / 3)) : (7.787 * z) + (16 / 116);\n\n\tconst l = (116 * y) - 16;\n\tconst a = 500 * (x - y);\n\tconst b = 200 * (y - z);\n\n\treturn [l, a, b];\n};\n\nconvert.hsl.rgb = function (hsl) {\n\tconst h = hsl[0] / 360;\n\tconst s = hsl[1] / 100;\n\tconst l = hsl[2] / 100;\n\tlet t2;\n\tlet t3;\n\tlet val;\n\n\tif (s === 0) {\n\t\tval = l * 255;\n\t\treturn [val, val, val];\n\t}\n\n\tif (l < 0.5) {\n\t\tt2 = l * (1 + s);\n\t} else {\n\t\tt2 = l + s - l * s;\n\t}\n\n\tconst t1 = 2 * l - t2;\n\n\tconst rgb = [0, 0, 0];\n\tfor (let i = 0; i < 3; i++) {\n\t\tt3 = h + 1 / 3 * -(i - 1);\n\t\tif (t3 < 0) {\n\t\t\tt3++;\n\t\t}\n\n\t\tif (t3 > 1) {\n\t\t\tt3--;\n\t\t}\n\n\t\tif (6 * t3 < 1) {\n\t\t\tval = t1 + (t2 - t1) * 6 * t3;\n\t\t} else if (2 * t3 < 1) {\n\t\t\tval = t2;\n\t\t} else if (3 * t3 < 2) {\n\t\t\tval = t1 + (t2 - t1) * (2 / 3 - t3) * 6;\n\t\t} else {\n\t\t\tval = t1;\n\t\t}\n\n\t\trgb[i] = val * 255;\n\t}\n\n\treturn rgb;\n};\n\nconvert.hsl.hsv = function (hsl) {\n\tconst h = hsl[0];\n\tlet s = hsl[1] / 100;\n\tlet l = hsl[2] / 100;\n\tlet smin = s;\n\tconst lmin = Math.max(l, 0.01);\n\n\tl *= 2;\n\ts *= (l <= 1) ? l : 2 - l;\n\tsmin *= lmin <= 1 ? lmin : 2 - lmin;\n\tconst v = (l + s) / 2;\n\tconst sv = l === 0 ? (2 * smin) / (lmin + smin) : (2 * s) / (l + s);\n\n\treturn [h, sv * 100, v * 100];\n};\n\nconvert.hsv.rgb = function (hsv) {\n\tconst h = hsv[0] / 60;\n\tconst s = hsv[1] / 100;\n\tlet v = hsv[2] / 100;\n\tconst hi = Math.floor(h) % 6;\n\n\tconst f = h - Math.floor(h);\n\tconst p = 255 * v * (1 - s);\n\tconst q = 255 * v * (1 - (s * f));\n\tconst t = 255 * v * (1 - (s * (1 - f)));\n\tv *= 255;\n\n\tswitch (hi) {\n\t\tcase 0:\n\t\t\treturn [v, t, p];\n\t\tcase 1:\n\t\t\treturn [q, v, p];\n\t\tcase 2:\n\t\t\treturn [p, v, t];\n\t\tcase 3:\n\t\t\treturn [p, q, v];\n\t\tcase 4:\n\t\t\treturn [t, p, v];\n\t\tcase 5:\n\t\t\treturn [v, p, q];\n\t}\n};\n\nconvert.hsv.hsl = function (hsv) {\n\tconst h = hsv[0];\n\tconst s = hsv[1] / 100;\n\tconst v = hsv[2] / 100;\n\tconst vmin = Math.max(v, 0.01);\n\tlet sl;\n\tlet l;\n\n\tl = (2 - s) * v;\n\tconst lmin = (2 - s) * vmin;\n\tsl = s * vmin;\n\tsl /= (lmin <= 1) ? lmin : 2 - lmin;\n\tsl = sl || 0;\n\tl /= 2;\n\n\treturn [h, sl * 100, l * 100];\n};\n\n// http://dev.w3.org/csswg/css-color/#hwb-to-rgb\nconvert.hwb.rgb = function (hwb) {\n\tconst h = hwb[0] / 360;\n\tlet wh = hwb[1] / 100;\n\tlet bl = hwb[2] / 100;\n\tconst ratio = wh + bl;\n\tlet f;\n\n\t// Wh + bl cant be > 1\n\tif (ratio > 1) {\n\t\twh /= ratio;\n\t\tbl /= ratio;\n\t}\n\n\tconst i = Math.floor(6 * h);\n\tconst v = 1 - bl;\n\tf = 6 * h - i;\n\n\tif ((i & 0x01) !== 0) {\n\t\tf = 1 - f;\n\t}\n\n\tconst n = wh + f * (v - wh); // Linear interpolation\n\n\tlet r;\n\tlet g;\n\tlet b;\n\t/* eslint-disable max-statements-per-line,no-multi-spaces */\n\tswitch (i) {\n\t\tdefault:\n\t\tcase 6:\n\t\tcase 0: r = v; g = n; b = wh; break;\n\t\tcase 1: r = n; g = v; b = wh; break;\n\t\tcase 2: r = wh; g = v; b = n; break;\n\t\tcase 3: r = wh; g = n; b = v; break;\n\t\tcase 4: r = n; g = wh; b = v; break;\n\t\tcase 5: r = v; g = wh; b = n; break;\n\t}\n\t/* eslint-enable max-statements-per-line,no-multi-spaces */\n\n\treturn [r * 255, g * 255, b * 255];\n};\n\nconvert.cmyk.rgb = function (cmyk) {\n\tconst c = cmyk[0] / 100;\n\tconst m = cmyk[1] / 100;\n\tconst y = cmyk[2] / 100;\n\tconst k = cmyk[3] / 100;\n\n\tconst r = 1 - Math.min(1, c * (1 - k) + k);\n\tconst g = 1 - Math.min(1, m * (1 - k) + k);\n\tconst b = 1 - Math.min(1, y * (1 - k) + k);\n\n\treturn [r * 255, g * 255, b * 255];\n};\n\nconvert.xyz.rgb = function (xyz) {\n\tconst x = xyz[0] / 100;\n\tconst y = xyz[1] / 100;\n\tconst z = xyz[2] / 100;\n\tlet r;\n\tlet g;\n\tlet b;\n\n\tr = (x * 3.2406) + (y * -1.5372) + (z * -0.4986);\n\tg = (x * -0.9689) + (y * 1.8758) + (z * 0.0415);\n\tb = (x * 0.0557) + (y * -0.2040) + (z * 1.0570);\n\n\t// Assume sRGB\n\tr = r > 0.0031308\n\t\t? ((1.055 * (r ** (1.0 / 2.4))) - 0.055)\n\t\t: r * 12.92;\n\n\tg = g > 0.0031308\n\t\t? ((1.055 * (g ** (1.0 / 2.4))) - 0.055)\n\t\t: g * 12.92;\n\n\tb = b > 0.0031308\n\t\t? ((1.055 * (b ** (1.0 / 2.4))) - 0.055)\n\t\t: b * 12.92;\n\n\tr = Math.min(Math.max(0, r), 1);\n\tg = Math.min(Math.max(0, g), 1);\n\tb = Math.min(Math.max(0, b), 1);\n\n\treturn [r * 255, g * 255, b * 255];\n};\n\nconvert.xyz.lab = function (xyz) {\n\tlet x = xyz[0];\n\tlet y = xyz[1];\n\tlet z = xyz[2];\n\n\tx /= 95.047;\n\ty /= 100;\n\tz /= 108.883;\n\n\tx = x > 0.008856 ? (x ** (1 / 3)) : (7.787 * x) + (16 / 116);\n\ty = y > 0.008856 ? (y ** (1 / 3)) : (7.787 * y) + (16 / 116);\n\tz = z > 0.008856 ? (z ** (1 / 3)) : (7.787 * z) + (16 / 116);\n\n\tconst l = (116 * y) - 16;\n\tconst a = 500 * (x - y);\n\tconst b = 200 * (y - z);\n\n\treturn [l, a, b];\n};\n\nconvert.lab.xyz = function (lab) {\n\tconst l = lab[0];\n\tconst a = lab[1];\n\tconst b = lab[2];\n\tlet x;\n\tlet y;\n\tlet z;\n\n\ty = (l + 16) / 116;\n\tx = a / 500 + y;\n\tz = y - b / 200;\n\n\tconst y2 = y ** 3;\n\tconst x2 = x ** 3;\n\tconst z2 = z ** 3;\n\ty = y2 > 0.008856 ? y2 : (y - 16 / 116) / 7.787;\n\tx = x2 > 0.008856 ? x2 : (x - 16 / 116) / 7.787;\n\tz = z2 > 0.008856 ? z2 : (z - 16 / 116) / 7.787;\n\n\tx *= 95.047;\n\ty *= 100;\n\tz *= 108.883;\n\n\treturn [x, y, z];\n};\n\nconvert.lab.lch = function (lab) {\n\tconst l = lab[0];\n\tconst a = lab[1];\n\tconst b = lab[2];\n\tlet h;\n\n\tconst hr = Math.atan2(b, a);\n\th = hr * 360 / 2 / Math.PI;\n\n\tif (h < 0) {\n\t\th += 360;\n\t}\n\n\tconst c = Math.sqrt(a * a + b * b);\n\n\treturn [l, c, h];\n};\n\nconvert.lch.lab = function (lch) {\n\tconst l = lch[0];\n\tconst c = lch[1];\n\tconst h = lch[2];\n\n\tconst hr = h / 360 * 2 * Math.PI;\n\tconst a = c * Math.cos(hr);\n\tconst b = c * Math.sin(hr);\n\n\treturn [l, a, b];\n};\n\nconvert.rgb.ansi16 = function (args, saturation = null) {\n\tconst [r, g, b] = args;\n\tlet value = saturation === null ? convert.rgb.hsv(args)[2] : saturation; // Hsv -> ansi16 optimization\n\n\tvalue = Math.round(value / 50);\n\n\tif (value === 0) {\n\t\treturn 30;\n\t}\n\n\tlet ansi = 30\n\t\t+ ((Math.round(b / 255) << 2)\n\t\t| (Math.round(g / 255) << 1)\n\t\t| Math.round(r / 255));\n\n\tif (value === 2) {\n\t\tansi += 60;\n\t}\n\n\treturn ansi;\n};\n\nconvert.hsv.ansi16 = function (args) {\n\t// Optimization here; we already know the value and don't need to get\n\t// it converted for us.\n\treturn convert.rgb.ansi16(convert.hsv.rgb(args), args[2]);\n};\n\nconvert.rgb.ansi256 = function (args) {\n\tconst r = args[0];\n\tconst g = args[1];\n\tconst b = args[2];\n\n\t// We use the extended greyscale palette here, with the exception of\n\t// black and white. normal palette only has 4 greyscale shades.\n\tif (r === g && g === b) {\n\t\tif (r < 8) {\n\t\t\treturn 16;\n\t\t}\n\n\t\tif (r > 248) {\n\t\t\treturn 231;\n\t\t}\n\n\t\treturn Math.round(((r - 8) / 247) * 24) + 232;\n\t}\n\n\tconst ansi = 16\n\t\t+ (36 * Math.round(r / 255 * 5))\n\t\t+ (6 * Math.round(g / 255 * 5))\n\t\t+ Math.round(b / 255 * 5);\n\n\treturn ansi;\n};\n\nconvert.ansi16.rgb = function (args) {\n\tlet color = args % 10;\n\n\t// Handle greyscale\n\tif (color === 0 || color === 7) {\n\t\tif (args > 50) {\n\t\t\tcolor += 3.5;\n\t\t}\n\n\t\tcolor = color / 10.5 * 255;\n\n\t\treturn [color, color, color];\n\t}\n\n\tconst mult = (~~(args > 50) + 1) * 0.5;\n\tconst r = ((color & 1) * mult) * 255;\n\tconst g = (((color >> 1) & 1) * mult) * 255;\n\tconst b = (((color >> 2) & 1) * mult) * 255;\n\n\treturn [r, g, b];\n};\n\nconvert.ansi256.rgb = function (args) {\n\t// Handle greyscale\n\tif (args >= 232) {\n\t\tconst c = (args - 232) * 10 + 8;\n\t\treturn [c, c, c];\n\t}\n\n\targs -= 16;\n\n\tlet rem;\n\tconst r = Math.floor(args / 36) / 5 * 255;\n\tconst g = Math.floor((rem = args % 36) / 6) / 5 * 255;\n\tconst b = (rem % 6) / 5 * 255;\n\n\treturn [r, g, b];\n};\n\nconvert.rgb.hex = function (args) {\n\tconst integer = ((Math.round(args[0]) & 0xFF) << 16)\n\t\t+ ((Math.round(args[1]) & 0xFF) << 8)\n\t\t+ (Math.round(args[2]) & 0xFF);\n\n\tconst string = integer.toString(16).toUpperCase();\n\treturn '000000'.substring(string.length) + string;\n};\n\nconvert.hex.rgb = function (args) {\n\tconst match = args.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);\n\tif (!match) {\n\t\treturn [0, 0, 0];\n\t}\n\n\tlet colorString = match[0];\n\n\tif (match[0].length === 3) {\n\t\tcolorString = colorString.split('').map(char => {\n\t\t\treturn char + char;\n\t\t}).join('');\n\t}\n\n\tconst integer = parseInt(colorString, 16);\n\tconst r = (integer >> 16) & 0xFF;\n\tconst g = (integer >> 8) & 0xFF;\n\tconst b = integer & 0xFF;\n\n\treturn [r, g, b];\n};\n\nconvert.rgb.hcg = function (rgb) {\n\tconst r = rgb[0] / 255;\n\tconst g = rgb[1] / 255;\n\tconst b = rgb[2] / 255;\n\tconst max = Math.max(Math.max(r, g), b);\n\tconst min = Math.min(Math.min(r, g), b);\n\tconst chroma = (max - min);\n\tlet grayscale;\n\tlet hue;\n\n\tif (chroma < 1) {\n\t\tgrayscale = min / (1 - chroma);\n\t} else {\n\t\tgrayscale = 0;\n\t}\n\n\tif (chroma <= 0) {\n\t\thue = 0;\n\t} else\n\tif (max === r) {\n\t\thue = ((g - b) / chroma) % 6;\n\t} else\n\tif (max === g) {\n\t\thue = 2 + (b - r) / chroma;\n\t} else {\n\t\thue = 4 + (r - g) / chroma;\n\t}\n\n\thue /= 6;\n\thue %= 1;\n\n\treturn [hue * 360, chroma * 100, grayscale * 100];\n};\n\nconvert.hsl.hcg = function (hsl) {\n\tconst s = hsl[1] / 100;\n\tconst l = hsl[2] / 100;\n\n\tconst c = l < 0.5 ? (2.0 * s * l) : (2.0 * s * (1.0 - l));\n\n\tlet f = 0;\n\tif (c < 1.0) {\n\t\tf = (l - 0.5 * c) / (1.0 - c);\n\t}\n\n\treturn [hsl[0], c * 100, f * 100];\n};\n\nconvert.hsv.hcg = function (hsv) {\n\tconst s = hsv[1] / 100;\n\tconst v = hsv[2] / 100;\n\n\tconst c = s * v;\n\tlet f = 0;\n\n\tif (c < 1.0) {\n\t\tf = (v - c) / (1 - c);\n\t}\n\n\treturn [hsv[0], c * 100, f * 100];\n};\n\nconvert.hcg.rgb = function (hcg) {\n\tconst h = hcg[0] / 360;\n\tconst c = hcg[1] / 100;\n\tconst g = hcg[2] / 100;\n\n\tif (c === 0.0) {\n\t\treturn [g * 255, g * 255, g * 255];\n\t}\n\n\tconst pure = [0, 0, 0];\n\tconst hi = (h % 1) * 6;\n\tconst v = hi % 1;\n\tconst w = 1 - v;\n\tlet mg = 0;\n\n\t/* eslint-disable max-statements-per-line */\n\tswitch (Math.floor(hi)) {\n\t\tcase 0:\n\t\t\tpure[0] = 1; pure[1] = v; pure[2] = 0; break;\n\t\tcase 1:\n\t\t\tpure[0] = w; pure[1] = 1; pure[2] = 0; break;\n\t\tcase 2:\n\t\t\tpure[0] = 0; pure[1] = 1; pure[2] = v; break;\n\t\tcase 3:\n\t\t\tpure[0] = 0; pure[1] = w; pure[2] = 1; break;\n\t\tcase 4:\n\t\t\tpure[0] = v; pure[1] = 0; pure[2] = 1; break;\n\t\tdefault:\n\t\t\tpure[0] = 1; pure[1] = 0; pure[2] = w;\n\t}\n\t/* eslint-enable max-statements-per-line */\n\n\tmg = (1.0 - c) * g;\n\n\treturn [\n\t\t(c * pure[0] + mg) * 255,\n\t\t(c * pure[1] + mg) * 255,\n\t\t(c * pure[2] + mg) * 255\n\t];\n};\n\nconvert.hcg.hsv = function (hcg) {\n\tconst c = hcg[1] / 100;\n\tconst g = hcg[2] / 100;\n\n\tconst v = c + g * (1.0 - c);\n\tlet f = 0;\n\n\tif (v > 0.0) {\n\t\tf = c / v;\n\t}\n\n\treturn [hcg[0], f * 100, v * 100];\n};\n\nconvert.hcg.hsl = function (hcg) {\n\tconst c = hcg[1] / 100;\n\tconst g = hcg[2] / 100;\n\n\tconst l = g * (1.0 - c) + 0.5 * c;\n\tlet s = 0;\n\n\tif (l > 0.0 && l < 0.5) {\n\t\ts = c / (2 * l);\n\t} else\n\tif (l >= 0.5 && l < 1.0) {\n\t\ts = c / (2 * (1 - l));\n\t}\n\n\treturn [hcg[0], s * 100, l * 100];\n};\n\nconvert.hcg.hwb = function (hcg) {\n\tconst c = hcg[1] / 100;\n\tconst g = hcg[2] / 100;\n\tconst v = c + g * (1.0 - c);\n\treturn [hcg[0], (v - c) * 100, (1 - v) * 100];\n};\n\nconvert.hwb.hcg = function (hwb) {\n\tconst w = hwb[1] / 100;\n\tconst b = hwb[2] / 100;\n\tconst v = 1 - b;\n\tconst c = v - w;\n\tlet g = 0;\n\n\tif (c < 1) {\n\t\tg = (v - c) / (1 - c);\n\t}\n\n\treturn [hwb[0], c * 100, g * 100];\n};\n\nconvert.apple.rgb = function (apple) {\n\treturn [(apple[0] / 65535) * 255, (apple[1] / 65535) * 255, (apple[2] / 65535) * 255];\n};\n\nconvert.rgb.apple = function (rgb) {\n\treturn [(rgb[0] / 255) * 65535, (rgb[1] / 255) * 65535, (rgb[2] / 255) * 65535];\n};\n\nconvert.gray.rgb = function (args) {\n\treturn [args[0] / 100 * 255, args[0] / 100 * 255, args[0] / 100 * 255];\n};\n\nconvert.gray.hsl = function (args) {\n\treturn [0, 0, args[0]];\n};\n\nconvert.gray.hsv = convert.gray.hsl;\n\nconvert.gray.hwb = function (gray) {\n\treturn [0, 100, gray[0]];\n};\n\nconvert.gray.cmyk = function (gray) {\n\treturn [0, 0, 0, gray[0]];\n};\n\nconvert.gray.lab = function (gray) {\n\treturn [gray[0], 0, 0];\n};\n\nconvert.gray.hex = function (gray) {\n\tconst val = Math.round(gray[0] / 100 * 255) & 0xFF;\n\tconst integer = (val << 16) + (val << 8) + val;\n\n\tconst string = integer.toString(16).toUpperCase();\n\treturn '000000'.substring(string.length) + string;\n};\n\nconvert.rgb.gray = function (rgb) {\n\tconst val = (rgb[0] + rgb[1] + rgb[2]) / 3;\n\treturn [val / 255 * 100];\n};\n","const conversions = require('./conversions');\n\n/*\n\tThis function routes a model to all other models.\n\n\tall functions that are routed have a property `.conversion` attached\n\tto the returned synthetic function. This property is an array\n\tof strings, each with the steps in between the 'from' and 'to'\n\tcolor models (inclusive).\n\n\tconversions that are not possible simply are not included.\n*/\n\nfunction buildGraph() {\n\tconst graph = {};\n\t// https://jsperf.com/object-keys-vs-for-in-with-closure/3\n\tconst models = Object.keys(conversions);\n\n\tfor (let len = models.length, i = 0; i < len; i++) {\n\t\tgraph[models[i]] = {\n\t\t\t// http://jsperf.com/1-vs-infinity\n\t\t\t// micro-opt, but this is simple.\n\t\t\tdistance: -1,\n\t\t\tparent: null\n\t\t};\n\t}\n\n\treturn graph;\n}\n\n// https://en.wikipedia.org/wiki/Breadth-first_search\nfunction deriveBFS(fromModel) {\n\tconst graph = buildGraph();\n\tconst queue = [fromModel]; // Unshift -> queue -> pop\n\n\tgraph[fromModel].distance = 0;\n\n\twhile (queue.length) {\n\t\tconst current = queue.pop();\n\t\tconst adjacents = Object.keys(conversions[current]);\n\n\t\tfor (let len = adjacents.length, i = 0; i < len; i++) {\n\t\t\tconst adjacent = adjacents[i];\n\t\t\tconst node = graph[adjacent];\n\n\t\t\tif (node.distance === -1) {\n\t\t\t\tnode.distance = graph[current].distance + 1;\n\t\t\t\tnode.parent = current;\n\t\t\t\tqueue.unshift(adjacent);\n\t\t\t}\n\t\t}\n\t}\n\n\treturn graph;\n}\n\nfunction link(from, to) {\n\treturn function (args) {\n\t\treturn to(from(args));\n\t};\n}\n\nfunction wrapConversion(toModel, graph) {\n\tconst path = [graph[toModel].parent, toModel];\n\tlet fn = conversions[graph[toModel].parent][toModel];\n\n\tlet cur = graph[toModel].parent;\n\twhile (graph[cur].parent) {\n\t\tpath.unshift(graph[cur].parent);\n\t\tfn = link(conversions[graph[cur].parent][cur], fn);\n\t\tcur = graph[cur].parent;\n\t}\n\n\tfn.conversion = path;\n\treturn fn;\n}\n\nmodule.exports = function (fromModel) {\n\tconst graph = deriveBFS(fromModel);\n\tconst conversion = {};\n\n\tconst models = Object.keys(graph);\n\tfor (let len = models.length, i = 0; i < len; i++) {\n\t\tconst toModel = models[i];\n\t\tconst node = graph[toModel];\n\n\t\tif (node.parent === null) {\n\t\t\t// No possible conversion, or this node is the source model.\n\t\t\tcontinue;\n\t\t}\n\n\t\tconversion[toModel] = wrapConversion(toModel, graph);\n\t}\n\n\treturn conversion;\n};\n\n","const conversions = require('./conversions');\nconst route = require('./route');\n\nconst convert = {};\n\nconst models = Object.keys(conversions);\n\nfunction wrapRaw(fn) {\n\tconst wrappedFn = function (...args) {\n\t\tconst arg0 = args[0];\n\t\tif (arg0 === undefined || arg0 === null) {\n\t\t\treturn arg0;\n\t\t}\n\n\t\tif (arg0.length > 1) {\n\t\t\targs = arg0;\n\t\t}\n\n\t\treturn fn(args);\n\t};\n\n\t// Preserve .conversion property if there is one\n\tif ('conversion' in fn) {\n\t\twrappedFn.conversion = fn.conversion;\n\t}\n\n\treturn wrappedFn;\n}\n\nfunction wrapRounded(fn) {\n\tconst wrappedFn = function (...args) {\n\t\tconst arg0 = args[0];\n\n\t\tif (arg0 === undefined || arg0 === null) {\n\t\t\treturn arg0;\n\t\t}\n\n\t\tif (arg0.length > 1) {\n\t\t\targs = arg0;\n\t\t}\n\n\t\tconst result = fn(args);\n\n\t\t// We're assuming the result is an array here.\n\t\t// see notice in conversions.js; don't use box types\n\t\t// in conversion functions.\n\t\tif (typeof result === 'object') {\n\t\t\tfor (let len = result.length, i = 0; i < len; i++) {\n\t\t\t\tresult[i] = Math.round(result[i]);\n\t\t\t}\n\t\t}\n\n\t\treturn result;\n\t};\n\n\t// Preserve .conversion property if there is one\n\tif ('conversion' in fn) {\n\t\twrappedFn.conversion = fn.conversion;\n\t}\n\n\treturn wrappedFn;\n}\n\nmodels.forEach(fromModel => {\n\tconvert[fromModel] = {};\n\n\tObject.defineProperty(convert[fromModel], 'channels', {value: conversions[fromModel].channels});\n\tObject.defineProperty(convert[fromModel], 'labels', {value: conversions[fromModel].labels});\n\n\tconst routes = route(fromModel);\n\tconst routeModels = Object.keys(routes);\n\n\trouteModels.forEach(toModel => {\n\t\tconst fn = routes[toModel];\n\n\t\tconvert[fromModel][toModel] = wrapRounded(fn);\n\t\tconvert[fromModel][toModel].raw = wrapRaw(fn);\n\t});\n});\n\nmodule.exports = convert;\n","'use strict';\n\nconst wrapAnsi16 = (fn, offset) => (...args) => {\n\tconst code = fn(...args);\n\treturn `\\u001B[${code + offset}m`;\n};\n\nconst wrapAnsi256 = (fn, offset) => (...args) => {\n\tconst code = fn(...args);\n\treturn `\\u001B[${38 + offset};5;${code}m`;\n};\n\nconst wrapAnsi16m = (fn, offset) => (...args) => {\n\tconst rgb = fn(...args);\n\treturn `\\u001B[${38 + offset};2;${rgb[0]};${rgb[1]};${rgb[2]}m`;\n};\n\nconst ansi2ansi = n => n;\nconst rgb2rgb = (r, g, b) => [r, g, b];\n\nconst setLazyProperty = (object, property, get) => {\n\tObject.defineProperty(object, property, {\n\t\tget: () => {\n\t\t\tconst value = get();\n\n\t\t\tObject.defineProperty(object, property, {\n\t\t\t\tvalue,\n\t\t\t\tenumerable: true,\n\t\t\t\tconfigurable: true\n\t\t\t});\n\n\t\t\treturn value;\n\t\t},\n\t\tenumerable: true,\n\t\tconfigurable: true\n\t});\n};\n\n/** @type {typeof import('color-convert')} */\nlet colorConvert;\nconst makeDynamicStyles = (wrap, targetSpace, identity, isBackground) => {\n\tif (colorConvert === undefined) {\n\t\tcolorConvert = require('color-convert');\n\t}\n\n\tconst offset = isBackground ? 10 : 0;\n\tconst styles = {};\n\n\tfor (const [sourceSpace, suite] of Object.entries(colorConvert)) {\n\t\tconst name = sourceSpace === 'ansi16' ? 'ansi' : sourceSpace;\n\t\tif (sourceSpace === targetSpace) {\n\t\t\tstyles[name] = wrap(identity, offset);\n\t\t} else if (typeof suite === 'object') {\n\t\t\tstyles[name] = wrap(suite[targetSpace], offset);\n\t\t}\n\t}\n\n\treturn styles;\n};\n\nfunction assembleStyles() {\n\tconst codes = new Map();\n\tconst styles = {\n\t\tmodifier: {\n\t\t\treset: [0, 0],\n\t\t\t// 21 isn't widely supported and 22 does the same thing\n\t\t\tbold: [1, 22],\n\t\t\tdim: [2, 22],\n\t\t\titalic: [3, 23],\n\t\t\tunderline: [4, 24],\n\t\t\tinverse: [7, 27],\n\t\t\thidden: [8, 28],\n\t\t\tstrikethrough: [9, 29]\n\t\t},\n\t\tcolor: {\n\t\t\tblack: [30, 39],\n\t\t\tred: [31, 39],\n\t\t\tgreen: [32, 39],\n\t\t\tyellow: [33, 39],\n\t\t\tblue: [34, 39],\n\t\t\tmagenta: [35, 39],\n\t\t\tcyan: [36, 39],\n\t\t\twhite: [37, 39],\n\n\t\t\t// Bright color\n\t\t\tblackBright: [90, 39],\n\t\t\tredBright: [91, 39],\n\t\t\tgreenBright: [92, 39],\n\t\t\tyellowBright: [93, 39],\n\t\t\tblueBright: [94, 39],\n\t\t\tmagentaBright: [95, 39],\n\t\t\tcyanBright: [96, 39],\n\t\t\twhiteBright: [97, 39]\n\t\t},\n\t\tbgColor: {\n\t\t\tbgBlack: [40, 49],\n\t\t\tbgRed: [41, 49],\n\t\t\tbgGreen: [42, 49],\n\t\t\tbgYellow: [43, 49],\n\t\t\tbgBlue: [44, 49],\n\t\t\tbgMagenta: [45, 49],\n\t\t\tbgCyan: [46, 49],\n\t\t\tbgWhite: [47, 49],\n\n\t\t\t// Bright color\n\t\t\tbgBlackBright: [100, 49],\n\t\t\tbgRedBright: [101, 49],\n\t\t\tbgGreenBright: [102, 49],\n\t\t\tbgYellowBright: [103, 49],\n\t\t\tbgBlueBright: [104, 49],\n\t\t\tbgMagentaBright: [105, 49],\n\t\t\tbgCyanBright: [106, 49],\n\t\t\tbgWhiteBright: [107, 49]\n\t\t}\n\t};\n\n\t// Alias bright black as gray (and grey)\n\tstyles.color.gray = styles.color.blackBright;\n\tstyles.bgColor.bgGray = styles.bgColor.bgBlackBright;\n\tstyles.color.grey = styles.color.blackBright;\n\tstyles.bgColor.bgGrey = styles.bgColor.bgBlackBright;\n\n\tfor (const [groupName, group] of Object.entries(styles)) {\n\t\tfor (const [styleName, style] of Object.entries(group)) {\n\t\t\tstyles[styleName] = {\n\t\t\t\topen: `\\u001B[${style[0]}m`,\n\t\t\t\tclose: `\\u001B[${style[1]}m`\n\t\t\t};\n\n\t\t\tgroup[styleName] = styles[styleName];\n\n\t\t\tcodes.set(style[0], style[1]);\n\t\t}\n\n\t\tObject.defineProperty(styles, groupName, {\n\t\t\tvalue: group,\n\t\t\tenumerable: false\n\t\t});\n\t}\n\n\tObject.defineProperty(styles, 'codes', {\n\t\tvalue: codes,\n\t\tenumerable: false\n\t});\n\n\tstyles.color.close = '\\u001B[39m';\n\tstyles.bgColor.close = '\\u001B[49m';\n\n\tsetLazyProperty(styles.color, 'ansi', () => makeDynamicStyles(wrapAnsi16, 'ansi16', ansi2ansi, false));\n\tsetLazyProperty(styles.color, 'ansi256', () => makeDynamicStyles(wrapAnsi256, 'ansi256', ansi2ansi, false));\n\tsetLazyProperty(styles.color, 'ansi16m', () => makeDynamicStyles(wrapAnsi16m, 'rgb', rgb2rgb, false));\n\tsetLazyProperty(styles.bgColor, 'ansi', () => makeDynamicStyles(wrapAnsi16, 'ansi16', ansi2ansi, true));\n\tsetLazyProperty(styles.bgColor, 'ansi256', () => makeDynamicStyles(wrapAnsi256, 'ansi256', ansi2ansi, true));\n\tsetLazyProperty(styles.bgColor, 'ansi16m', () => makeDynamicStyles(wrapAnsi16m, 'rgb', rgb2rgb, true));\n\n\treturn styles;\n}\n\n// Make the export immutable\nObject.defineProperty(module, 'exports', {\n\tenumerable: true,\n\tget: assembleStyles\n});\n","'use strict';\n\nmodule.exports = (flag, argv = process.argv) => {\n\tconst prefix = flag.startsWith('-') ? '' : (flag.length === 1 ? '-' : '--');\n\tconst position = argv.indexOf(prefix + flag);\n\tconst terminatorPosition = argv.indexOf('--');\n\treturn position !== -1 && (terminatorPosition === -1 || position < terminatorPosition);\n};\n","'use strict';\nconst os = require('os');\nconst tty = require('tty');\nconst hasFlag = require('has-flag');\n\nconst {env} = process;\n\nlet forceColor;\nif (hasFlag('no-color') ||\n\thasFlag('no-colors') ||\n\thasFlag('color=false') ||\n\thasFlag('color=never')) {\n\tforceColor = 0;\n} else if (hasFlag('color') ||\n\thasFlag('colors') ||\n\thasFlag('color=true') ||\n\thasFlag('color=always')) {\n\tforceColor = 1;\n}\n\nif ('FORCE_COLOR' in env) {\n\tif (env.FORCE_COLOR === 'true') {\n\t\tforceColor = 1;\n\t} else if (env.FORCE_COLOR === 'false') {\n\t\tforceColor = 0;\n\t} else {\n\t\tforceColor = env.FORCE_COLOR.length === 0 ? 1 : Math.min(parseInt(env.FORCE_COLOR, 10), 3);\n\t}\n}\n\nfunction translateLevel(level) {\n\tif (level === 0) {\n\t\treturn false;\n\t}\n\n\treturn {\n\t\tlevel,\n\t\thasBasic: true,\n\t\thas256: level >= 2,\n\t\thas16m: level >= 3\n\t};\n}\n\nfunction supportsColor(haveStream, streamIsTTY) {\n\tif (forceColor === 0) {\n\t\treturn 0;\n\t}\n\n\tif (hasFlag('color=16m') ||\n\t\thasFlag('color=full') ||\n\t\thasFlag('color=truecolor')) {\n\t\treturn 3;\n\t}\n\n\tif (hasFlag('color=256')) {\n\t\treturn 2;\n\t}\n\n\tif (haveStream && !streamIsTTY && forceColor === undefined) {\n\t\treturn 0;\n\t}\n\n\tconst min = forceColor || 0;\n\n\tif (env.TERM === 'dumb') {\n\t\treturn min;\n\t}\n\n\tif (process.platform === 'win32') {\n\t\t// Windows 10 build 10586 is the first Windows release that supports 256 colors.\n\t\t// Windows 10 build 14931 is the first release that supports 16m/TrueColor.\n\t\tconst osRelease = os.release().split('.');\n\t\tif (\n\t\t\tNumber(osRelease[0]) >= 10 &&\n\t\t\tNumber(osRelease[2]) >= 10586\n\t\t) {\n\t\t\treturn Number(osRelease[2]) >= 14931 ? 3 : 2;\n\t\t}\n\n\t\treturn 1;\n\t}\n\n\tif ('CI' in env) {\n\t\tif (['TRAVIS', 'CIRCLECI', 'APPVEYOR', 'GITLAB_CI', 'GITHUB_ACTIONS', 'BUILDKITE'].some(sign => sign in env) || env.CI_NAME === 'codeship') {\n\t\t\treturn 1;\n\t\t}\n\n\t\treturn min;\n\t}\n\n\tif ('TEAMCITY_VERSION' in env) {\n\t\treturn /^(9\\.(0*[1-9]\\d*)\\.|\\d{2,}\\.)/.test(env.TEAMCITY_VERSION) ? 1 : 0;\n\t}\n\n\tif (env.COLORTERM === 'truecolor') {\n\t\treturn 3;\n\t}\n\n\tif ('TERM_PROGRAM' in env) {\n\t\tconst version = parseInt((env.TERM_PROGRAM_VERSION || '').split('.')[0], 10);\n\n\t\tswitch (env.TERM_PROGRAM) {\n\t\t\tcase 'iTerm.app':\n\t\t\t\treturn version >= 3 ? 3 : 2;\n\t\t\tcase 'Apple_Terminal':\n\t\t\t\treturn 2;\n\t\t\t// No default\n\t\t}\n\t}\n\n\tif (/-256(color)?$/i.test(env.TERM)) {\n\t\treturn 2;\n\t}\n\n\tif (/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(env.TERM)) {\n\t\treturn 1;\n\t}\n\n\tif ('COLORTERM' in env) {\n\t\treturn 1;\n\t}\n\n\treturn min;\n}\n\nfunction getSupportLevel(stream) {\n\tconst level = supportsColor(stream, stream && stream.isTTY);\n\treturn translateLevel(level);\n}\n\nmodule.exports = {\n\tsupportsColor: getSupportLevel,\n\tstdout: translateLevel(supportsColor(true, tty.isatty(1))),\n\tstderr: translateLevel(supportsColor(true, tty.isatty(2)))\n};\n","'use strict';\n\nconst stringReplaceAll = (string, substring, replacer) => {\n\tlet index = string.indexOf(substring);\n\tif (index === -1) {\n\t\treturn string;\n\t}\n\n\tconst substringLength = substring.length;\n\tlet endIndex = 0;\n\tlet returnValue = '';\n\tdo {\n\t\treturnValue += string.substr(endIndex, index - endIndex) + substring + replacer;\n\t\tendIndex = index + substringLength;\n\t\tindex = string.indexOf(substring, endIndex);\n\t} while (index !== -1);\n\n\treturnValue += string.substr(endIndex);\n\treturn returnValue;\n};\n\nconst stringEncaseCRLFWithFirstIndex = (string, prefix, postfix, index) => {\n\tlet endIndex = 0;\n\tlet returnValue = '';\n\tdo {\n\t\tconst gotCR = string[index - 1] === '\\r';\n\t\treturnValue += string.substr(endIndex, (gotCR ? index - 1 : index) - endIndex) + prefix + (gotCR ? '\\r\\n' : '\\n') + postfix;\n\t\tendIndex = index + 1;\n\t\tindex = string.indexOf('\\n', endIndex);\n\t} while (index !== -1);\n\n\treturnValue += string.substr(endIndex);\n\treturn returnValue;\n};\n\nmodule.exports = {\n\tstringReplaceAll,\n\tstringEncaseCRLFWithFirstIndex\n};\n","'use strict';\nconst TEMPLATE_REGEX = /(?:\\\\(u(?:[a-f\\d]{4}|\\{[a-f\\d]{1,6}\\})|x[a-f\\d]{2}|.))|(?:\\{(~)?(\\w+(?:\\([^)]*\\))?(?:\\.\\w+(?:\\([^)]*\\))?)*)(?:[ \\t]|(?=\\r?\\n)))|(\\})|((?:.|[\\r\\n\\f])+?)/gi;\nconst STYLE_REGEX = /(?:^|\\.)(\\w+)(?:\\(([^)]*)\\))?/g;\nconst STRING_REGEX = /^(['\"])((?:\\\\.|(?!\\1)[^\\\\])*)\\1$/;\nconst ESCAPE_REGEX = /\\\\(u(?:[a-f\\d]{4}|{[a-f\\d]{1,6}})|x[a-f\\d]{2}|.)|([^\\\\])/gi;\n\nconst ESCAPES = new Map([\n\t['n', '\\n'],\n\t['r', '\\r'],\n\t['t', '\\t'],\n\t['b', '\\b'],\n\t['f', '\\f'],\n\t['v', '\\v'],\n\t['0', '\\0'],\n\t['\\\\', '\\\\'],\n\t['e', '\\u001B'],\n\t['a', '\\u0007']\n]);\n\nfunction unescape(c) {\n\tconst u = c[0] === 'u';\n\tconst bracket = c[1] === '{';\n\n\tif ((u && !bracket && c.length === 5) || (c[0] === 'x' && c.length === 3)) {\n\t\treturn String.fromCharCode(parseInt(c.slice(1), 16));\n\t}\n\n\tif (u && bracket) {\n\t\treturn String.fromCodePoint(parseInt(c.slice(2, -1), 16));\n\t}\n\n\treturn ESCAPES.get(c) || c;\n}\n\nfunction parseArguments(name, arguments_) {\n\tconst results = [];\n\tconst chunks = arguments_.trim().split(/\\s*,\\s*/g);\n\tlet matches;\n\n\tfor (const chunk of chunks) {\n\t\tconst number = Number(chunk);\n\t\tif (!Number.isNaN(number)) {\n\t\t\tresults.push(number);\n\t\t} else if ((matches = chunk.match(STRING_REGEX))) {\n\t\t\tresults.push(matches[2].replace(ESCAPE_REGEX, (m, escape, character) => escape ? unescape(escape) : character));\n\t\t} else {\n\t\t\tthrow new Error(`Invalid Chalk template style argument: ${chunk} (in style '${name}')`);\n\t\t}\n\t}\n\n\treturn results;\n}\n\nfunction parseStyle(style) {\n\tSTYLE_REGEX.lastIndex = 0;\n\n\tconst results = [];\n\tlet matches;\n\n\twhile ((matches = STYLE_REGEX.exec(style)) !== null) {\n\t\tconst name = matches[1];\n\n\t\tif (matches[2]) {\n\t\t\tconst args = parseArguments(name, matches[2]);\n\t\t\tresults.push([name].concat(args));\n\t\t} else {\n\t\t\tresults.push([name]);\n\t\t}\n\t}\n\n\treturn results;\n}\n\nfunction buildStyle(chalk, styles) {\n\tconst enabled = {};\n\n\tfor (const layer of styles) {\n\t\tfor (const style of layer.styles) {\n\t\t\tenabled[style[0]] = layer.inverse ? null : style.slice(1);\n\t\t}\n\t}\n\n\tlet current = chalk;\n\tfor (const [styleName, styles] of Object.entries(enabled)) {\n\t\tif (!Array.isArray(styles)) {\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (!(styleName in current)) {\n\t\t\tthrow new Error(`Unknown Chalk style: ${styleName}`);\n\t\t}\n\n\t\tcurrent = styles.length > 0 ? current[styleName](...styles) : current[styleName];\n\t}\n\n\treturn current;\n}\n\nmodule.exports = (chalk, temporary) => {\n\tconst styles = [];\n\tconst chunks = [];\n\tlet chunk = [];\n\n\t// eslint-disable-next-line max-params\n\ttemporary.replace(TEMPLATE_REGEX, (m, escapeCharacter, inverse, style, close, character) => {\n\t\tif (escapeCharacter) {\n\t\t\tchunk.push(unescape(escapeCharacter));\n\t\t} else if (style) {\n\t\t\tconst string = chunk.join('');\n\t\t\tchunk = [];\n\t\t\tchunks.push(styles.length === 0 ? string : buildStyle(chalk, styles)(string));\n\t\t\tstyles.push({inverse, styles: parseStyle(style)});\n\t\t} else if (close) {\n\t\t\tif (styles.length === 0) {\n\t\t\t\tthrow new Error('Found extraneous } in Chalk template literal');\n\t\t\t}\n\n\t\t\tchunks.push(buildStyle(chalk, styles)(chunk.join('')));\n\t\t\tchunk = [];\n\t\t\tstyles.pop();\n\t\t} else {\n\t\t\tchunk.push(character);\n\t\t}\n\t});\n\n\tchunks.push(chunk.join(''));\n\n\tif (styles.length > 0) {\n\t\tconst errMessage = `Chalk template literal is missing ${styles.length} closing bracket${styles.length === 1 ? '' : 's'} (\\`}\\`)`;\n\t\tthrow new Error(errMessage);\n\t}\n\n\treturn chunks.join('');\n};\n","'use strict';\nconst ansiStyles = require('ansi-styles');\nconst {stdout: stdoutColor, stderr: stderrColor} = require('supports-color');\nconst {\n\tstringReplaceAll,\n\tstringEncaseCRLFWithFirstIndex\n} = require('./util');\n\nconst {isArray} = Array;\n\n// `supportsColor.level` → `ansiStyles.color[name]` mapping\nconst levelMapping = [\n\t'ansi',\n\t'ansi',\n\t'ansi256',\n\t'ansi16m'\n];\n\nconst styles = Object.create(null);\n\nconst applyOptions = (object, options = {}) => {\n\tif (options.level && !(Number.isInteger(options.level) && options.level >= 0 && options.level <= 3)) {\n\t\tthrow new Error('The `level` option should be an integer from 0 to 3');\n\t}\n\n\t// Detect level if not set manually\n\tconst colorLevel = stdoutColor ? stdoutColor.level : 0;\n\tobject.level = options.level === undefined ? colorLevel : options.level;\n};\n\nclass ChalkClass {\n\tconstructor(options) {\n\t\t// eslint-disable-next-line no-constructor-return\n\t\treturn chalkFactory(options);\n\t}\n}\n\nconst chalkFactory = options => {\n\tconst chalk = {};\n\tapplyOptions(chalk, options);\n\n\tchalk.template = (...arguments_) => chalkTag(chalk.template, ...arguments_);\n\n\tObject.setPrototypeOf(chalk, Chalk.prototype);\n\tObject.setPrototypeOf(chalk.template, chalk);\n\n\tchalk.template.constructor = () => {\n\t\tthrow new Error('`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead.');\n\t};\n\n\tchalk.template.Instance = ChalkClass;\n\n\treturn chalk.template;\n};\n\nfunction Chalk(options) {\n\treturn chalkFactory(options);\n}\n\nfor (const [styleName, style] of Object.entries(ansiStyles)) {\n\tstyles[styleName] = {\n\t\tget() {\n\t\t\tconst builder = createBuilder(this, createStyler(style.open, style.close, this._styler), this._isEmpty);\n\t\t\tObject.defineProperty(this, styleName, {value: builder});\n\t\t\treturn builder;\n\t\t}\n\t};\n}\n\nstyles.visible = {\n\tget() {\n\t\tconst builder = createBuilder(this, this._styler, true);\n\t\tObject.defineProperty(this, 'visible', {value: builder});\n\t\treturn builder;\n\t}\n};\n\nconst usedModels = ['rgb', 'hex', 'keyword', 'hsl', 'hsv', 'hwb', 'ansi', 'ansi256'];\n\nfor (const model of usedModels) {\n\tstyles[model] = {\n\t\tget() {\n\t\t\tconst {level} = this;\n\t\t\treturn function (...arguments_) {\n\t\t\t\tconst styler = createStyler(ansiStyles.color[levelMapping[level]][model](...arguments_), ansiStyles.color.close, this._styler);\n\t\t\t\treturn createBuilder(this, styler, this._isEmpty);\n\t\t\t};\n\t\t}\n\t};\n}\n\nfor (const model of usedModels) {\n\tconst bgModel = 'bg' + model[0].toUpperCase() + model.slice(1);\n\tstyles[bgModel] = {\n\t\tget() {\n\t\t\tconst {level} = this;\n\t\t\treturn function (...arguments_) {\n\t\t\t\tconst styler = createStyler(ansiStyles.bgColor[levelMapping[level]][model](...arguments_), ansiStyles.bgColor.close, this._styler);\n\t\t\t\treturn createBuilder(this, styler, this._isEmpty);\n\t\t\t};\n\t\t}\n\t};\n}\n\nconst proto = Object.defineProperties(() => {}, {\n\t...styles,\n\tlevel: {\n\t\tenumerable: true,\n\t\tget() {\n\t\t\treturn this._generator.level;\n\t\t},\n\t\tset(level) {\n\t\t\tthis._generator.level = level;\n\t\t}\n\t}\n});\n\nconst createStyler = (open, close, parent) => {\n\tlet openAll;\n\tlet closeAll;\n\tif (parent === undefined) {\n\t\topenAll = open;\n\t\tcloseAll = close;\n\t} else {\n\t\topenAll = parent.openAll + open;\n\t\tcloseAll = close + parent.closeAll;\n\t}\n\n\treturn {\n\t\topen,\n\t\tclose,\n\t\topenAll,\n\t\tcloseAll,\n\t\tparent\n\t};\n};\n\nconst createBuilder = (self, _styler, _isEmpty) => {\n\tconst builder = (...arguments_) => {\n\t\tif (isArray(arguments_[0]) && isArray(arguments_[0].raw)) {\n\t\t\t// Called as a template literal, for example: chalk.red`2 + 3 = {bold ${2+3}}`\n\t\t\treturn applyStyle(builder, chalkTag(builder, ...arguments_));\n\t\t}\n\n\t\t// Single argument is hot path, implicit coercion is faster than anything\n\t\t// eslint-disable-next-line no-implicit-coercion\n\t\treturn applyStyle(builder, (arguments_.length === 1) ? ('' + arguments_[0]) : arguments_.join(' '));\n\t};\n\n\t// We alter the prototype because we must return a function, but there is\n\t// no way to create a function with a different prototype\n\tObject.setPrototypeOf(builder, proto);\n\n\tbuilder._generator = self;\n\tbuilder._styler = _styler;\n\tbuilder._isEmpty = _isEmpty;\n\n\treturn builder;\n};\n\nconst applyStyle = (self, string) => {\n\tif (self.level <= 0 || !string) {\n\t\treturn self._isEmpty ? '' : string;\n\t}\n\n\tlet styler = self._styler;\n\n\tif (styler === undefined) {\n\t\treturn string;\n\t}\n\n\tconst {openAll, closeAll} = styler;\n\tif (string.indexOf('\\u001B') !== -1) {\n\t\twhile (styler !== undefined) {\n\t\t\t// Replace any instances already present with a re-opening code\n\t\t\t// otherwise only the part of the string until said closing code\n\t\t\t// will be colored, and the rest will simply be 'plain'.\n\t\t\tstring = stringReplaceAll(string, styler.close, styler.open);\n\n\t\t\tstyler = styler.parent;\n\t\t}\n\t}\n\n\t// We can move both next actions out of loop, because remaining actions in loop won't have\n\t// any/visible effect on parts we add here. Close the styling before a linebreak and reopen\n\t// after next line to fix a bleed issue on macOS: https://github.com/chalk/chalk/pull/92\n\tconst lfIndex = string.indexOf('\\n');\n\tif (lfIndex !== -1) {\n\t\tstring = stringEncaseCRLFWithFirstIndex(string, closeAll, openAll, lfIndex);\n\t}\n\n\treturn openAll + string + closeAll;\n};\n\nlet template;\nconst chalkTag = (chalk, ...strings) => {\n\tconst [firstString] = strings;\n\n\tif (!isArray(firstString) || !isArray(firstString.raw)) {\n\t\t// If chalk() was called by itself or with a string,\n\t\t// return the string itself as a string.\n\t\treturn strings.join(' ');\n\t}\n\n\tconst arguments_ = strings.slice(1);\n\tconst parts = [firstString.raw[0]];\n\n\tfor (let i = 1; i < firstString.length; i++) {\n\t\tparts.push(\n\t\t\tString(arguments_[i - 1]).replace(/[{}\\\\]/g, '\\\\$&'),\n\t\t\tString(firstString.raw[i])\n\t\t);\n\t}\n\n\tif (template === undefined) {\n\t\ttemplate = require('./templates');\n\t}\n\n\treturn template(chalk, parts.join(''));\n};\n\nObject.defineProperties(Chalk.prototype, styles);\n\nconst chalk = Chalk(); // eslint-disable-line new-cap\nchalk.supportsColor = stdoutColor;\nchalk.stderr = Chalk({level: stderrColor ? stderrColor.level : 0}); // eslint-disable-line new-cap\nchalk.stderr.supportsColor = stderrColor;\n\nmodule.exports = chalk;\n","// src/logger/chalk.ts\nimport chalk from \"chalk\";\nvar chalkDefault = {\n hex: (_) => (message) => message,\n bgHex: (_) => ({\n whiteBright: (message) => message,\n white: (message) => message\n }),\n white: (message) => message,\n whiteBright: (message) => message,\n gray: (message) => message,\n bold: {\n hex: (_) => (message) => message,\n bgHex: (_) => ({\n whiteBright: (message) => message,\n white: (message) => message\n }),\n whiteBright: (message) => message,\n white: (message) => message\n },\n dim: {\n hex: (_) => (message) => message,\n gray: (message) => message\n }\n};\nvar getChalk = () => {\n let _chalk = chalk;\n if (!_chalk?.hex || !_chalk?.bold?.hex || !_chalk?.bgHex || !_chalk?.whiteBright || !_chalk?.white) {\n _chalk = chalkDefault;\n }\n return _chalk;\n};\n\nexport {\n getChalk\n};\n","// src/logger/is-unicode-supported.ts\nfunction isUnicodeSupported() {\n if (process.platform !== \"win32\") {\n return process.env.TERM !== \"linux\";\n }\n return Boolean(process.env.WT_SESSION) || // Windows Terminal\n Boolean(process.env.TERMINUS_SUBLIME) || // Terminus (<0.2.27)\n process.env.ConEmuTask === \"{cmd::Cmder}\" || // ConEmu and cmder\n process.env.TERM_PROGRAM === \"Terminus-Sublime\" || process.env.TERM_PROGRAM === \"vscode\" || process.env.TERM === \"xterm-256color\" || process.env.TERM === \"alacritty\" || process.env.TERM === \"rxvt-unicode\" || process.env.TERM === \"rxvt-unicode-256color\" || process.env.TERMINAL_EMULATOR === \"JetBrains-JediTerm\";\n}\n\nexport {\n isUnicodeSupported\n};\n","// src/types.ts\nvar LogLevel = {\n SILENT: 0,\n FATAL: 10,\n ERROR: 20,\n WARN: 30,\n SUCCESS: 35,\n INFO: 40,\n DEBUG: 60,\n TRACE: 70,\n ALL: 100\n};\nvar LogLevelLabel = {\n SILENT: \"silent\",\n FATAL: \"fatal\",\n ERROR: \"error\",\n WARN: \"warn\",\n SUCCESS: \"success\",\n INFO: \"info\",\n DEBUG: \"debug\",\n TRACE: \"trace\",\n ALL: \"all\"\n};\n\nexport {\n LogLevel,\n LogLevelLabel\n};\n","import {\n isUnicodeSupported\n} from \"./chunk-G2MK47WL.js\";\nimport {\n LogLevelLabel\n} from \"./chunk-POXTJ6GF.js\";\n\n// src/logger/console-icons.ts\nvar useIcon = (c, fallback) => isUnicodeSupported() ? c : fallback;\nvar CONSOLE_ICONS = {\n [LogLevelLabel.ERROR]: useIcon(\"\\u2718\", \"\\xD7\"),\n [LogLevelLabel.FATAL]: useIcon(\"\\u{1F480}\", \"\\xD7\"),\n [LogLevelLabel.WARN]: useIcon(\"\\u26A0\", \"\\u203C\"),\n [LogLevelLabel.INFO]: useIcon(\"\\u2139\", \"i\"),\n [LogLevelLabel.SUCCESS]: useIcon(\"\\u2714\", \"\\u221A\"),\n [LogLevelLabel.DEBUG]: useIcon(\"\\u{1F6E0}\", \"D\"),\n [LogLevelLabel.TRACE]: useIcon(\"\\u{1F6E0}\", \"T\"),\n [LogLevelLabel.ALL]: useIcon(\"\\u2709\", \"\\u2192\")\n};\n\nexport {\n CONSOLE_ICONS\n};\n","// src/logger/format-timestamp.ts\nvar formatTimestamp = (date = /* @__PURE__ */ new Date()) => {\n return `${date.toLocaleDateString()} ${date.toLocaleTimeString()}`;\n};\n\nexport {\n formatTimestamp\n};\n","import {\n LogLevel,\n LogLevelLabel\n} from \"./chunk-POXTJ6GF.js\";\n\n// src/logger/get-log-level.ts\nvar getLogLevel = (label) => {\n switch (label) {\n case \"all\":\n return LogLevel.ALL;\n case \"trace\":\n return LogLevel.TRACE;\n case \"debug\":\n return LogLevel.DEBUG;\n case \"info\":\n return LogLevel.INFO;\n case \"warn\":\n return LogLevel.WARN;\n case \"error\":\n return LogLevel.ERROR;\n case \"fatal\":\n return LogLevel.FATAL;\n case \"silent\":\n return LogLevel.SILENT;\n default:\n return LogLevel.INFO;\n }\n};\nvar getLogLevelLabel = (logLevel = LogLevel.INFO) => {\n if (logLevel >= LogLevel.ALL) {\n return LogLevelLabel.ALL;\n }\n if (logLevel >= LogLevel.TRACE) {\n return LogLevelLabel.TRACE;\n }\n if (logLevel >= LogLevel.DEBUG) {\n return LogLevelLabel.DEBUG;\n }\n if (logLevel >= LogLevel.INFO) {\n return LogLevelLabel.INFO;\n }\n if (logLevel >= LogLevel.WARN) {\n return LogLevelLabel.WARN;\n }\n if (logLevel >= LogLevel.ERROR) {\n return LogLevelLabel.ERROR;\n }\n if (logLevel >= LogLevel.FATAL) {\n return LogLevelLabel.FATAL;\n }\n if (logLevel <= LogLevel.SILENT) {\n return LogLevelLabel.SILENT;\n }\n return LogLevelLabel.INFO;\n};\nvar isVerbose = (label = LogLevelLabel.SILENT) => {\n const logLevel = typeof label === \"string\" ? getLogLevel(label) : label;\n return logLevel >= LogLevel.DEBUG;\n};\n\nexport {\n getLogLevel,\n getLogLevelLabel,\n isVerbose\n};\n","import {\n DEFAULT_COLOR_CONFIG\n} from \"./chunk-LA3S35UI.js\";\nimport {\n getChalk\n} from \"./chunk-HVVJHTFS.js\";\nimport {\n CONSOLE_ICONS\n} from \"./chunk-LM2UMGYA.js\";\nimport {\n formatTimestamp\n} from \"./chunk-CZ4IE2QN.js\";\nimport {\n getLogLevel\n} from \"./chunk-K4CDYUQR.js\";\nimport {\n LogLevel,\n LogLevelLabel\n} from \"./chunk-POXTJ6GF.js\";\n\n// src/logger/console.ts\nimport { formatDistanceToNow } from \"date-fns/formatDistanceToNow\";\nvar getLogFn = (logLevel = LogLevel.INFO, config = {}, _chalk = getChalk()) => {\n const colors = !config.colors?.dark && !config.colors?.[\"base\"] && !config.colors?.[\"base\"]?.dark ? DEFAULT_COLOR_CONFIG : config.colors?.dark && typeof config.colors.dark === \"string\" ? config.colors : config.colors?.[\"base\"]?.dark && typeof config.colors[\"base\"].dark === \"string\" ? config.colors[\"base\"].dark : config.colors?.[\"base\"] ? config.colors?.[\"base\"] : DEFAULT_COLOR_CONFIG;\n const configLogLevel = config.logLevel || process.env.STORM_LOG_LEVEL || LogLevelLabel.INFO;\n if (logLevel > getLogLevel(configLogLevel) || logLevel <= LogLevel.SILENT || getLogLevel(configLogLevel) <= LogLevel.SILENT) {\n return (_) => {\n };\n }\n if (typeof logLevel === \"number\" && LogLevel.FATAL >= logLevel) {\n return (message) => {\n console.error(\n `\n${_chalk.gray(formatTimestamp())} ${_chalk.hex(colors.fatal ?? DEFAULT_COLOR_CONFIG.dark.fatal)(`[${CONSOLE_ICONS[LogLevelLabel.FATAL]} Fatal] `)}${_chalk.bold.whiteBright(formatLogMessage(message))}\n`\n );\n };\n }\n if (typeof logLevel === \"number\" && LogLevel.ERROR >= logLevel) {\n return (message) => {\n console.error(\n `\n${_chalk.gray(formatTimestamp())} ${_chalk.hex(colors.danger ?? DEFAULT_COLOR_CONFIG.dark.danger)(`[${CONSOLE_ICONS[LogLevelLabel.ERROR]} Error] `)}${_chalk.bold.whiteBright(formatLogMessage(message))}\n`\n );\n };\n }\n if (typeof logLevel === \"number\" && LogLevel.WARN >= logLevel) {\n return (message) => {\n console.warn(\n `\n${_chalk.gray(formatTimestamp())} ${_chalk.hex(colors.warning ?? DEFAULT_COLOR_CONFIG.dark.warning)(`[${CONSOLE_ICONS[LogLevelLabel.WARN]} Warn] `)}${_chalk.bold.whiteBright(formatLogMessage(message))}\n`\n );\n };\n }\n if (typeof logLevel === \"number\" && LogLevel.SUCCESS >= logLevel) {\n return (message) => {\n console.info(\n `\n${_chalk.gray(formatTimestamp())} ${_chalk.hex(colors.success ?? DEFAULT_COLOR_CONFIG.dark.success)(`[${CONSOLE_ICONS[LogLevelLabel.SUCCESS]} Success] `)}${_chalk.bold.whiteBright(formatLogMessage(message))}\n`\n );\n };\n }\n if (typeof logLevel === \"number\" && LogLevel.INFO >= logLevel) {\n return (message) => {\n console.info(\n `\n${_chalk.gray(formatTimestamp())} ${_chalk.hex(colors.info ?? DEFAULT_COLOR_CONFIG.dark.info)(`[${CONSOLE_ICONS[LogLevelLabel.INFO]} Info] `)}${_chalk.bold.whiteBright(formatLogMessage(message))}\n`\n );\n };\n }\n if (typeof logLevel === \"number\" && LogLevel.DEBUG >= logLevel) {\n return (message) => {\n console.debug(\n `\n${_chalk.gray(formatTimestamp())} ${_chalk.hex(colors.info ?? DEFAULT_COLOR_CONFIG.dark.info)(`[${CONSOLE_ICONS[LogLevelLabel.DEBUG]} Debug] `)}${_chalk.bold.whiteBright(formatLogMessage(message))}\n`\n );\n };\n }\n if (typeof logLevel === \"number\" && LogLevel.TRACE >= logLevel) {\n return (message) => {\n console.debug(\n `\n${_chalk.gray(formatTimestamp())} ${_chalk.hex(colors.info ?? DEFAULT_COLOR_CONFIG.dark.info)(`[${CONSOLE_ICONS[LogLevelLabel.TRACE]} Trace] `)}${_chalk.bold.whiteBright(formatLogMessage(message))}\n`\n );\n };\n }\n return (message) => {\n console.log(\n `\n${_chalk.gray(formatTimestamp())} ${_chalk.hex(colors.brand ?? DEFAULT_COLOR_CONFIG.dark.brand)(`[${CONSOLE_ICONS[LogLevelLabel.ALL]} System] `)}${_chalk.bold.whiteBright(formatLogMessage(message))}\n`\n );\n };\n};\nvar writeFatal = (message, config) => getLogFn(LogLevel.FATAL, config)(message);\nvar writeError = (message, config) => getLogFn(LogLevel.ERROR, config)(message);\nvar writeWarning = (message, config) => getLogFn(LogLevel.WARN, config)(message);\nvar writeInfo = (message, config) => getLogFn(LogLevel.INFO, config)(message);\nvar writeSuccess = (message, config) => getLogFn(LogLevel.SUCCESS, config)(message);\nvar writeDebug = (message, config) => getLogFn(LogLevel.DEBUG, config)(message);\nvar writeTrace = (message, config) => getLogFn(LogLevel.TRACE, config)(message);\nvar writeSystem = (message, config) => getLogFn(LogLevel.ALL, config)(message);\nvar getStopwatch = (name) => {\n const start = /* @__PURE__ */ new Date();\n return () => {\n console.info(\n `\n> \\u23F1\\uFE0F The${name ? ` ${name}` : \"\"} process took ${formatDistanceToNow(start, {\n includeSeconds: true\n })} to complete\n`\n );\n };\n};\nvar MAX_DEPTH = 4;\nvar formatLogMessage = (message, options = {}, depth = 0) => {\n if (depth > MAX_DEPTH) {\n return \"<max depth>\";\n }\n const prefix = options.prefix ?? \"-\";\n const skip = options.skip ?? [];\n return typeof message === \"undefined\" || message === null || !message && typeof message !== \"boolean\" ? \"<none>\" : typeof message === \"string\" ? message : Array.isArray(message) ? `\n${message.map((item, index) => ` ${prefix}> #${index} = ${formatLogMessage(item, { prefix: `${prefix}-`, skip }, depth + 1)}`).join(\"\\n\")}` : typeof message === \"object\" ? `\n${Object.keys(message).filter((key) => !skip.includes(key)).map(\n (key) => ` ${prefix}> ${key} = ${_isFunction(message[key]) ? \"<function>\" : typeof message[key] === \"object\" ? formatLogMessage(\n message[key],\n { prefix: `${prefix}-`, skip },\n depth + 1\n ) : message[key]}`\n ).join(\"\\n\")}` : message;\n};\nvar _isFunction = (value) => {\n try {\n return value instanceof Function || typeof value === \"function\" || !!(value?.constructor && value?.call && value?.apply);\n } catch {\n return false;\n }\n};\n\nexport {\n getLogFn,\n writeFatal,\n writeError,\n writeWarning,\n writeInfo,\n writeSuccess,\n writeDebug,\n writeTrace,\n writeSystem,\n getStopwatch,\n formatLogMessage\n};\n","/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Stryke\n\n This code was released as part of the Stryke project. Stryke\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/stryke.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/stryke\n Documentation: https://docs.stormsoftware.com/projects/stryke\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport type { Arrayable } from \"@stryke/types/array\";\nimport type { Nullable } from \"@stryke/types/utilities\";\n\n/**\n * Convert `Arrayable<T>` to `Array<T>`\n *\n * @param array - The `Arrayable<T>` to convert\n * @returns An `Array<T>` containing the elements of the input\n */\nexport function toArray<T>(array?: Nullable<Arrayable<T>>): Array<T> {\n array = array ?? [];\n return Array.isArray(array) ? array : [array];\n}\n","/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Stryke\n\n This code was released as part of the Stryke project. Stryke\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/stryke.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/stryke\n Documentation: https://docs.stormsoftware.com/projects/stryke\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport {\n writeFatal,\n writeWarning\n} from \"@storm-software/config-tools/logger/console\";\nimport { toArray } from \"@stryke/convert/to-array\";\nimport { existsSync } from \"@stryke/fs/exists\";\nimport { readJsonFile } from \"@stryke/fs/json\";\nimport { listFiles } from \"@stryke/fs/list-files\";\nimport { findFilePath, relativePath } from \"@stryke/path/file-path-fns\";\nimport { joinPaths } from \"@stryke/path/join-paths\";\nimport type { TsConfigJson } from \"@stryke/types/tsconfig\";\nimport type { ParsedCommandLine } from \"typescript\";\nimport { parseJsonConfigFileContent, sys } from \"typescript\";\nimport type { CapnpcOptions, CapnpcResolvedOptions } from \"./types.js\";\n\n/**\n * Resolves the options for the Cap'n Proto compiler.\n *\n * @param options - The options to resolve\n * @returns The resolved options\n */\nexport async function resolveOptions(\n options: Omit<CapnpcOptions, \"workspaceRoot\" | \"projectRoot\"> &\n Required<Pick<CapnpcOptions, \"workspaceRoot\" | \"projectRoot\">>\n): Promise<CapnpcResolvedOptions | null> {\n const tsconfigPath = options.tsconfigPath\n ? options.tsconfigPath\n .replace(\"{projectRoot}\", options.projectRoot)\n .replace(\"{workspaceRoot}\", options.workspaceRoot)\n : joinPaths(options.projectRoot, \"tsconfig.json\");\n const schemas = toArray(\n options.schemas\n ? options.schemas\n : joinPaths(options.projectRoot, \"schemas/**/*.capnp\")\n )\n .filter(Boolean)\n .map(schema =>\n schema\n .replace(\"{projectRoot}\", options.projectRoot)\n .replace(\"{workspaceRoot}\", options.workspaceRoot)\n );\n\n let resolvedTsconfig!: ParsedCommandLine;\n if (options.tsconfig) {\n resolvedTsconfig = options.tsconfig;\n } else {\n if (!tsconfigPath || !existsSync(tsconfigPath)) {\n const errorMessage = tsconfigPath\n ? `✖ The specified TypeScript configuration file \"${tsconfigPath}\" does not exist. Please provide a valid path.`\n : \"✖ The specified TypeScript configuration file does not exist. Please provide a valid path.\";\n writeFatal(errorMessage, { logLevel: \"all\" });\n\n throw new Error(errorMessage);\n }\n\n const tsconfigFile = await readJsonFile<TsConfigJson>(tsconfigPath);\n resolvedTsconfig = parseJsonConfigFileContent(\n tsconfigFile,\n sys,\n findFilePath(tsconfigPath)\n );\n if (!resolvedTsconfig) {\n const errorMessage = `✖ The specified TypeScript configuration file \"${tsconfigPath}\" is invalid. Please provide a valid configuration.`;\n writeFatal(errorMessage, { logLevel: \"all\" });\n\n throw new Error(errorMessage);\n }\n\n resolvedTsconfig.options.configFilePath = tsconfigPath;\n resolvedTsconfig.options.noImplicitOverride = false;\n resolvedTsconfig.options.noUnusedLocals = false;\n resolvedTsconfig.options.noUnusedParameters = false;\n }\n\n const resolvedSchemas = [] as string[];\n for (const schema of schemas) {\n let formattedSchema = schema;\n if (!schema.endsWith(\".capnp\") && !schema.includes(\"*\")) {\n formattedSchema = `${schema.replace(/\\/$/g, \"\")}/*.capnp`;\n }\n\n resolvedSchemas.push(...(await listFiles(formattedSchema)));\n }\n\n if (resolvedSchemas.length === 0 || !resolvedSchemas[0]) {\n writeWarning(\n `✖ No Cap'n Proto schema files found in the specified source paths: ${schemas.join(\n \", \"\n )}. As a result, the Cap'n Proto compiler will not be able to generate any output files. Please ensure that the paths are correct and contain .capnp files.`,\n { logLevel: \"all\" }\n );\n\n return null;\n }\n\n const output = options.output\n ? options.output\n .replace(\"{projectRoot}\", options.projectRoot)\n .replace(\"{workspaceRoot}\", options.workspaceRoot)\n : joinPaths(\n options.projectRoot,\n relativePath(\n tsconfigPath ? findFilePath(tsconfigPath) : options.projectRoot,\n joinPaths(\n options.workspaceRoot,\n resolvedSchemas[0].endsWith(\".capnp\")\n ? findFilePath(resolvedSchemas[0])\n : resolvedSchemas[0]\n )\n )\n );\n resolvedTsconfig.options.outDir = output;\n\n return {\n ...options,\n importPath: options.importPath\n ? options.importPath.split(\",\").map(dir => dir.trim())\n : [],\n workspaceRoot: options.workspaceRoot,\n projectRoot: options.projectRoot,\n schemas: resolvedSchemas,\n output,\n js: options.js === true,\n ts: options.noTs !== true,\n dts: options.dts ?? options.noDts !== true,\n tsconfig: resolvedTsconfig\n };\n}\n"],"x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],"mappings":"06BACI,EAAuB,CACzB,MAAO,CACL,WAAY,UACZ,WAAY,UACZ,MAAO,UACP,UAAW,UACX,KAAM,UACN,QAAS,UACT,KAAM,UACN,QAAS,UACT,OAAQ,UACR,MAAO,UACP,KAAM,UACN,SAAU,UACV,SAAU,UACV,SAAU,CAAC,UAAW,UAAW,UAAU,CAC5C,CACD,KAAM,CACJ,WAAY,UACZ,WAAY,UACZ,MAAO,UACP,UAAW,UACX,KAAM,UACN,QAAS,UACT,KAAM,UACN,QAAS,UACT,OAAQ,UACR,MAAO,UACP,KAAM,UACN,SAAU,UACV,SAAU,UACV,SAAU,CAAC,UAAW,UAAW,UAAU,CAC5C,CACF,cChCD,EAAO,QAAU,CAChB,UAAa,CAAC,IAAK,IAAK,IAAI,CAC5B,aAAgB,CAAC,IAAK,IAAK,IAAI,CAC/B,KAAQ,CAAC,EAAG,IAAK,IAAI,CACrB,WAAc,CAAC,IAAK,IAAK,IAAI,CAC7B,MAAS,CAAC,IAAK,IAAK,IAAI,CACxB,MAAS,CAAC,IAAK,IAAK,IAAI,CACxB,OAAU,CAAC,IAAK,IAAK,IAAI,CACzB,MAAS,CAAC,EAAG,EAAG,EAAE,CAClB,eAAkB,CAAC,IAAK,IAAK,IAAI,CACjC,KAAQ,CAAC,EAAG,EAAG,IAAI,CACnB,WAAc,CAAC,IAAK,GAAI,IAAI,CAC5B,MAAS,CAAC,IAAK,GAAI,GAAG,CACtB,UAAa,CAAC,IAAK,IAAK,IAAI,CAC5B,UAAa,CAAC,GAAI,IAAK,IAAI,CAC3B,WAAc,CAAC,IAAK,IAAK,EAAE,CAC3B,UAAa,CAAC,IAAK,IAAK,GAAG,CAC3B,MAAS,CAAC,IAAK,IAAK,GAAG,CACvB,eAAkB,CAAC,IAAK,IAAK,IAAI,CACjC,SAAY,CAAC,IAAK,IAAK,IAAI,CAC3B,QAAW,CAAC,IAAK,GAAI,GAAG,CACxB,KAAQ,CAAC,EAAG,IAAK,IAAI,CACrB,SAAY,CAAC,EAAG,EAAG,IAAI,CACvB,SAAY,CAAC,EAAG,IAAK,IAAI,CACzB,cAAiB,CAAC,IAAK,IAAK,GAAG,CAC/B,SAAY,CAAC,IAAK,IAAK,IAAI,CAC3B,UAAa,CAAC,EAAG,IAAK,EAAE,CACxB,SAAY,CAAC,IAAK,IAAK,IAAI,CAC3B,UAAa,CAAC,IAAK,IAAK,IAAI,CAC5B,YAAe,CAAC,IAAK,EAAG,IAAI,CAC5B,eAAkB,CAAC,GAAI,IAAK,GAAG,CAC/B,WAAc,CAAC,IAAK,IAAK,EAAE,CAC3B,WAAc,CAAC,IAAK,GAAI,IAAI,CAC5B,QAAW,CAAC,IAAK,EAAG,EAAE,CACtB,WAAc,CAAC,IAAK,IAAK,IAAI,CAC7B,aAAgB,CAAC,IAAK,IAAK,IAAI,CAC/B,cAAiB,CAAC,GAAI,GAAI,IAAI,CAC9B,cAAiB,CAAC,GAAI,GAAI,GAAG,CAC7B,cAAiB,CAAC,GAAI,GAAI,GAAG,CAC7B,cAAiB,CAAC,EAAG,IAAK,IAAI,CAC9B,WAAc,CAAC,IAAK,EAAG,IAAI,CAC3B,SAAY,CAAC,IAAK,GAAI,IAAI,CAC1B,YAAe,CAAC,EAAG,IAAK,IAAI,CAC5B,QAAW,CAAC,IAAK,IAAK,IAAI,CAC1B,QAAW,CAAC,IAAK,IAAK,IAAI,CAC1B,WAAc,CAAC,GAAI,IAAK,IAAI,CAC5B,UAAa,CAAC,IAAK,GAAI,GAAG,CAC1B,YAAe,CAAC,IAAK,IAAK,IAAI,CAC9B,YAAe,CAAC,GAAI,IAAK,GAAG,CAC5B,QAAW,CAAC,IAAK,EAAG,IAAI,CACxB,UAAa,CAAC,IAAK,IAAK,IAAI,CAC5B,WAAc,CAAC,IAAK,IAAK,IAAI,CAC7B,KAAQ,CAAC,IAAK,IAAK,EAAE,CACrB,UAAa,CAAC,IAAK,IAAK,GAAG,CAC3B,KAAQ,CAAC,IAAK,IAAK,IAAI,CACvB,MAAS,CAAC,EAAG,IAAK,EAAE,CACpB,YAAe,CAAC,IAAK,IAAK,GAAG,CAC7B,KAAQ,CAAC,IAAK,IAAK,IAAI,CACvB,SAAY,CAAC,IAAK,IAAK,IAAI,CAC3B,QAAW,CAAC,IAAK,IAAK,IAAI,CAC1B,UAAa,CAAC,IAAK,GAAI,GAAG,CAC1B,OAAU,CAAC,GAAI,EAAG,IAAI,CACtB,MAAS,CAAC,IAAK,IAAK,IAAI,CACxB,MAAS,CAAC,IAAK,IAAK,IAAI,CACxB,SAAY,CAAC,IAAK,IAAK,IAAI,CAC3B,cAAiB,CAAC,IAAK,IAAK,IAAI,CAChC,UAAa,CAAC,IAAK,IAAK,EAAE,CAC1B,aAAgB,CAAC,IAAK,IAAK,IAAI,CAC/B,UAAa,CAAC,IAAK,IAAK,IAAI,CAC5B,WAAc,CAAC,IAAK,IAAK,IAAI,CAC7B,UAAa,CAAC,IAAK,IAAK,IAAI,CAC5B,qBAAwB,CAAC,IAAK,IAAK,IAAI,CACvC,UAAa,CAAC,IAAK,IAAK,IAAI,CAC5B,WAAc,CAAC,IAAK,IAAK,IAAI,CAC7B,UAAa,CAAC,IAAK,IAAK,IAAI,CAC5B,UAAa,CAAC,IAAK,IAAK,IAAI,CAC5B,YAAe,CAAC,IAAK,IAAK,IAAI,CAC9B,cAAiB,CAAC,GAAI,IAAK,IAAI,CAC/B,aAAgB,CAAC,IAAK,IAAK,IAAI,CAC/B,eAAkB,CAAC,IAAK,IAAK,IAAI,CACjC,eAAkB,CAAC,IAAK,IAAK,IAAI,CACjC,eAAkB,CAAC,IAAK,IAAK,IAAI,CACjC,YAAe,CAAC,IAAK,IAAK,IAAI,CAC9B,KAAQ,CAAC,EAAG,IAAK,EAAE,CACnB,UAAa,CAAC,GAAI,IAAK,GAAG,CAC1B,MAAS,CAAC,IAAK,IAAK,IAAI,CACxB,QAAW,CAAC,IAAK,EAAG,IAAI,CACxB,OAAU,CAAC,IAAK,EAAG,EAAE,CACrB,iBAAoB,CAAC,IAAK,IAAK,IAAI,CACnC,WAAc,CAAC,EAAG,EAAG,IAAI,CACzB,aAAgB,CAAC,IAAK,GAAI,IAAI,CAC9B,aAAgB,CAAC,IAAK,IAAK,IAAI,CAC/B,eAAkB,CAAC,GAAI,IAAK,IAAI,CAChC,gBAAmB,CAAC,IAAK,IAAK,IAAI,CAClC,kBAAqB,CAAC,EAAG,IAAK,IAAI,CAClC,gBAAmB,CAAC,GAAI,IAAK,IAAI,CACjC,gBAAmB,CAAC,IAAK,GAAI,IAAI,CACjC,aAAgB,CAAC,GAAI,GAAI,IAAI,CAC7B,UAAa,CAAC,IAAK,IAAK,IAAI,CAC5B,UAAa,CAAC,IAAK,IAAK,IAAI,CAC5B,SAAY,CAAC,IAAK,IAAK,IAAI,CAC3B,YAAe,CAAC,IAAK,IAAK,IAAI,CAC9B,KAAQ,CAAC,EAAG,EAAG,IAAI,CACnB,QAAW,CAAC,IAAK,IAAK,IAAI,CAC1B,MAAS,CAAC,IAAK,IAAK,EAAE,CACtB,UAAa,CAAC,IAAK,IAAK,GAAG,CAC3B,OAAU,CAAC,IAAK,IAAK,EAAE,CACvB,UAAa,CAAC,IAAK,GAAI,EAAE,CACzB,OAAU,CAAC,IAAK,IAAK,IAAI,CACzB,cAAiB,CAAC,IAAK,IAAK,IAAI,CAChC,UAAa,CAAC,IAAK,IAAK,IAAI,CAC5B,cAAiB,CAAC,IAAK,IAAK,IAAI,CAChC,cAAiB,CAAC,IAAK,IAAK,IAAI,CAChC,WAAc,CAAC,IAAK,IAAK,IAAI,CAC7B,UAAa,CAAC,IAAK,IAAK,IAAI,CAC5B,KAAQ,CAAC,IAAK,IAAK,GAAG,CACtB,KAAQ,CAAC,IAAK,IAAK,IAAI,CACvB,KAAQ,CAAC,IAAK,IAAK,IAAI,CACvB,WAAc,CAAC,IAAK,IAAK,IAAI,CAC7B,OAAU,CAAC,IAAK,EAAG,IAAI,CACvB,cAAiB,CAAC,IAAK,GAAI,IAAI,CAC/B,IAAO,CAAC,IAAK,EAAG,EAAE,CAClB,UAAa,CAAC,IAAK,IAAK,IAAI,CAC5B,UAAa,CAAC,GAAI,IAAK,IAAI,CAC3B,YAAe,CAAC,IAAK,GAAI,GAAG,CAC5B,OAAU,CAAC,IAAK,IAAK,IAAI,CACzB,WAAc,CAAC,IAAK,IAAK,GAAG,CAC5B,SAAY,CAAC,GAAI,IAAK,GAAG,CACzB,SAAY,CAAC,IAAK,IAAK,IAAI,CAC3B,OAAU,CAAC,IAAK,GAAI,GAAG,CACvB,OAAU,CAAC,IAAK,IAAK,IAAI,CACzB,QAAW,CAAC,IAAK,IAAK,IAAI,CAC1B,UAAa,CAAC,IAAK,GAAI,IAAI,CAC3B,UAAa,CAAC,IAAK,IAAK,IAAI,CAC5B,UAAa,CAAC,IAAK,IAAK,IAAI,CAC5B,KAAQ,CAAC,IAAK,IAAK,IAAI,CACvB,YAAe,CAAC,EAAG,IAAK,IAAI,CAC5B,UAAa,CAAC,GAAI,IAAK,IAAI,CAC3B,IAAO,CAAC,IAAK,IAAK,IAAI,CACtB,KAAQ,CAAC,EAAG,IAAK,IAAI,CACrB,QAAW,CAAC,IAAK,IAAK,IAAI,CAC1B,OAAU,CAAC,IAAK,GAAI,GAAG,CACvB,UAAa,CAAC,GAAI,IAAK,IAAI,CAC3B,OAAU,CAAC,IAAK,IAAK,IAAI,CACzB,MAAS,CAAC,IAAK,IAAK,IAAI,CACxB,MAAS,CAAC,IAAK,IAAK,IAAI,CACxB,WAAc,CAAC,IAAK,IAAK,IAAI,CAC7B,OAAU,CAAC,IAAK,IAAK,EAAE,CACvB,YAAe,CAAC,IAAK,IAAK,GAAG,CAC7B,iBCrJD,IAAM,EAAA,GAAA,CAMA,EAAkB,EAAE,CAC1B,IAAK,IAAM,KAAO,OAAO,KAAK,EAAY,CACzC,EAAgB,EAAY,IAAQ,EAGrC,IAAMA,EAAU,CACf,IAAK,CAAC,SAAU,EAAG,OAAQ,MAAM,CACjC,IAAK,CAAC,SAAU,EAAG,OAAQ,MAAM,CACjC,IAAK,CAAC,SAAU,EAAG,OAAQ,MAAM,CACjC,IAAK,CAAC,SAAU,EAAG,OAAQ,MAAM,CACjC,KAAM,CAAC,SAAU,EAAG,OAAQ,OAAO,CACnC,IAAK,CAAC,SAAU,EAAG,OAAQ,MAAM,CACjC,IAAK,CAAC,SAAU,EAAG,OAAQ,MAAM,CACjC,IAAK,CAAC,SAAU,EAAG,OAAQ,MAAM,CACjC,IAAK,CAAC,SAAU,EAAG,OAAQ,CAAC,MAAM,CAAC,CACnC,QAAS,CAAC,SAAU,EAAG,OAAQ,CAAC,UAAU,CAAC,CAC3C,OAAQ,CAAC,SAAU,EAAG,OAAQ,CAAC,SAAS,CAAC,CACzC,QAAS,CAAC,SAAU,EAAG,OAAQ,CAAC,UAAU,CAAC,CAC3C,IAAK,CAAC,SAAU,EAAG,OAAQ,CAAC,IAAK,IAAK,IAAI,CAAC,CAC3C,MAAO,CAAC,SAAU,EAAG,OAAQ,CAAC,MAAO,MAAO,MAAM,CAAC,CACnD,KAAM,CAAC,SAAU,EAAG,OAAQ,CAAC,OAAO,CAAC,CACrC,CAED,EAAO,QAAUA,EAGjB,IAAK,IAAM,KAAS,OAAO,KAAKA,EAAQ,CAAE,CACzC,GAAI,EAAE,aAAcA,EAAQ,IAC3B,MAAU,MAAM,8BAAgC,EAAM,CAGvD,GAAI,EAAE,WAAYA,EAAQ,IACzB,MAAU,MAAM,oCAAsC,EAAM,CAG7D,GAAIA,EAAQ,GAAO,OAAO,SAAWA,EAAQ,GAAO,SACnD,MAAU,MAAM,sCAAwC,EAAM,CAG/D,GAAM,CAAC,WAAU,UAAUA,EAAQ,GACnC,OAAOA,EAAQ,GAAO,SACtB,OAAOA,EAAQ,GAAO,OACtB,OAAO,eAAeA,EAAQ,GAAQ,WAAY,CAAC,MAAO,EAAS,CAAC,CACpE,OAAO,eAAeA,EAAQ,GAAQ,SAAU,CAAC,MAAO,EAAO,CAAC,CAGjE,EAAQ,IAAI,IAAM,SAAU,EAAK,CAChC,IAAM,EAAI,EAAI,GAAK,IACb,EAAI,EAAI,GAAK,IACb,EAAI,EAAI,GAAK,IACb,EAAM,KAAK,IAAI,EAAG,EAAG,EAAE,CACvB,EAAM,KAAK,IAAI,EAAG,EAAG,EAAE,CACvB,EAAQ,EAAM,EAChB,EACA,EAEA,IAAQ,EACX,EAAI,EACM,IAAM,EAChB,GAAK,EAAI,GAAK,EACJ,IAAM,EAChB,EAAI,GAAK,EAAI,GAAK,EACR,IAAM,IAChB,EAAI,GAAK,EAAI,GAAK,GAGnB,EAAI,KAAK,IAAI,EAAI,GAAI,IAAI,CAErB,EAAI,IACP,GAAK,KAGN,IAAM,GAAK,EAAM,GAAO,EAUxB,MARA,CAKC,EALG,IAAQ,EACP,EACM,GAAK,GACX,GAAS,EAAM,GAEf,GAAS,EAAI,EAAM,GAGjB,CAAC,EAAG,EAAI,IAAK,EAAI,IAAI,EAG7B,EAAQ,IAAI,IAAM,SAAU,EAAK,CAChC,IAAI,EACA,EACA,EACA,EACA,EAEE,EAAI,EAAI,GAAK,IACb,EAAI,EAAI,GAAK,IACb,EAAI,EAAI,GAAK,IACb,EAAI,KAAK,IAAI,EAAG,EAAG,EAAE,CACrB,EAAO,EAAI,KAAK,IAAI,EAAG,EAAG,EAAE,CAC5B,EAAQ,SAAU,EAAG,CAC1B,OAAQ,EAAI,GAAK,EAAI,EAAO,EAAI,GA2BjC,OAxBI,IAAS,GACZ,EAAI,EACJ,EAAI,IAEJ,EAAI,EAAO,EACX,EAAO,EAAM,EAAE,CACf,EAAO,EAAM,EAAE,CACf,EAAO,EAAM,EAAE,CAEX,IAAM,EACT,EAAI,EAAO,EACD,IAAM,EAChB,EAAK,EAAI,EAAK,EAAO,EACX,IAAM,IAChB,EAAK,EAAI,EAAK,EAAO,GAGlB,EAAI,EACP,GAAK,EACK,EAAI,GACd,KAIK,CACN,EAAI,IACJ,EAAI,IACJ,EAAI,IACJ,EAGF,EAAQ,IAAI,IAAM,SAAU,EAAK,CAChC,IAAM,EAAI,EAAI,GACR,EAAI,EAAI,GACV,EAAI,EAAI,GACN,EAAIA,EAAQ,IAAI,IAAI,EAAI,CAAC,GACzB,EAAI,EAAI,IAAM,KAAK,IAAI,EAAG,KAAK,IAAI,EAAG,EAAE,CAAC,CAI/C,MAFA,GAAI,EAAI,EAAI,IAAM,KAAK,IAAI,EAAG,KAAK,IAAI,EAAG,EAAE,CAAC,CAEtC,CAAC,EAAG,EAAI,IAAK,EAAI,IAAI,EAG7B,EAAQ,IAAI,KAAO,SAAU,EAAK,CACjC,IAAM,EAAI,EAAI,GAAK,IACb,EAAI,EAAI,GAAK,IACb,EAAI,EAAI,GAAK,IAEb,EAAI,KAAK,IAAI,EAAI,EAAG,EAAI,EAAG,EAAI,EAAE,CACjC,GAAK,EAAI,EAAI,IAAM,EAAI,IAAM,EAC7B,GAAK,EAAI,EAAI,IAAM,EAAI,IAAM,EAC7B,GAAK,EAAI,EAAI,IAAM,EAAI,IAAM,EAEnC,MAAO,CAAC,EAAI,IAAK,EAAI,IAAK,EAAI,IAAK,EAAI,IAAI,EAG5C,SAAS,EAAoB,EAAG,EAAG,CAIlC,OACG,EAAE,GAAK,EAAE,KAAO,GAChB,EAAE,GAAK,EAAE,KAAO,GAChB,EAAE,GAAK,EAAE,KAAO,EAIpB,EAAQ,IAAI,QAAU,SAAU,EAAK,CACpC,IAAM,EAAW,EAAgB,GACjC,GAAI,EACH,OAAO,EAGR,IAAI,EAAyB,IACzB,EAEJ,IAAK,IAAM,KAAW,OAAO,KAAK,EAAY,CAAE,CAC/C,IAAM,EAAQ,EAAY,GAGpB,EAAW,EAAoB,EAAK,EAAM,CAG5C,EAAW,IACd,EAAyB,EACzB,EAAwB,GAI1B,OAAO,GAGR,EAAQ,QAAQ,IAAM,SAAU,EAAS,CACxC,OAAO,EAAY,IAGpB,EAAQ,IAAI,IAAM,SAAU,EAAK,CAChC,IAAI,EAAI,EAAI,GAAK,IACb,EAAI,EAAI,GAAK,IACb,EAAI,EAAI,GAAK,IAGjB,EAAI,EAAI,SAAa,EAAI,MAAS,QAAU,IAAQ,EAAI,MACxD,EAAI,EAAI,SAAa,EAAI,MAAS,QAAU,IAAQ,EAAI,MACxD,EAAI,EAAI,SAAa,EAAI,MAAS,QAAU,IAAQ,EAAI,MAExD,IAAM,EAAK,EAAI,MAAW,EAAI,MAAW,EAAI,MACvC,EAAK,EAAI,MAAW,EAAI,MAAW,EAAI,MACvC,EAAK,EAAI,MAAW,EAAI,MAAW,EAAI,MAE7C,MAAO,CAAC,EAAI,IAAK,EAAI,IAAK,EAAI,IAAI,EAGnC,EAAQ,IAAI,IAAM,SAAU,EAAK,CAChC,IAAM,EAAMA,EAAQ,IAAI,IAAI,EAAI,CAC5B,EAAI,EAAI,GACR,EAAI,EAAI,GACR,EAAI,EAAI,GAcZ,MAZA,IAAK,OACL,GAAK,IACL,GAAK,QAEL,EAAI,EAAI,QAAY,IAAM,EAAI,GAAO,MAAQ,EAAM,GAAK,IACxD,EAAI,EAAI,QAAY,IAAM,EAAI,GAAO,MAAQ,EAAM,GAAK,IACxD,EAAI,EAAI,QAAY,IAAM,EAAI,GAAO,MAAQ,EAAM,GAAK,IAMjD,CAJI,IAAM,EAAK,GACZ,KAAO,EAAI,GACX,KAAO,EAAI,GAEL,EAGjB,EAAQ,IAAI,IAAM,SAAU,EAAK,CAChC,IAAM,EAAI,EAAI,GAAK,IACb,EAAI,EAAI,GAAK,IACb,EAAI,EAAI,GAAK,IACf,EACA,EACA,EAEJ,GAAI,IAAM,EAET,MADA,GAAM,EAAI,IACH,CAAC,EAAK,EAAK,EAAI,CAGvB,AAGC,EAHG,EAAI,GACF,GAAK,EAAI,GAET,EAAI,EAAI,EAAI,EAGlB,IAAM,EAAK,EAAI,EAAI,EAEb,EAAM,CAAC,EAAG,EAAG,EAAE,CACrB,IAAK,IAAI,EAAI,EAAG,EAAI,EAAG,IACtB,EAAK,EAAI,EAAI,EAAI,EAAE,EAAI,GACnB,EAAK,GACR,IAGG,EAAK,GACR,IAGD,AAOC,EAPG,EAAI,EAAK,EACN,GAAM,EAAK,GAAM,EAAI,EACjB,EAAI,EAAK,EACb,EACI,EAAI,EAAK,EACb,GAAM,EAAK,IAAO,EAAI,EAAI,GAAM,EAEhC,EAGP,EAAI,GAAK,EAAM,IAGhB,OAAO,GAGR,EAAQ,IAAI,IAAM,SAAU,EAAK,CAChC,IAAM,EAAI,EAAI,GACV,EAAI,EAAI,GAAK,IACb,EAAI,EAAI,GAAK,IACb,EAAO,EACL,EAAO,KAAK,IAAI,EAAG,IAAK,CAE9B,GAAK,EACL,GAAM,GAAK,EAAK,EAAI,EAAI,EACxB,GAAQ,GAAQ,EAAI,EAAO,EAAI,EAC/B,IAAM,GAAK,EAAI,GAAK,EAGpB,MAAO,CAAC,GAFG,IAAM,EAAK,EAAI,GAAS,EAAO,GAAS,EAAI,GAAM,EAAI,IAEjD,IAAK,EAAI,IAAI,EAG9B,EAAQ,IAAI,IAAM,SAAU,EAAK,CAChC,IAAM,EAAI,EAAI,GAAK,GACb,EAAI,EAAI,GAAK,IACf,EAAI,EAAI,GAAK,IACX,EAAK,KAAK,MAAM,EAAE,CAAG,EAErB,EAAI,EAAI,KAAK,MAAM,EAAE,CACrB,EAAI,IAAM,GAAK,EAAI,GACnB,EAAI,IAAM,GAAK,EAAK,EAAI,GACxB,EAAI,IAAM,GAAK,EAAK,GAAK,EAAI,IAGnC,OAFA,GAAK,IAEG,EAAR,CACC,IAAK,GACJ,MAAO,CAAC,EAAG,EAAG,EAAE,CACjB,IAAK,GACJ,MAAO,CAAC,EAAG,EAAG,EAAE,CACjB,IAAK,GACJ,MAAO,CAAC,EAAG,EAAG,EAAE,CACjB,IAAK,GACJ,MAAO,CAAC,EAAG,EAAG,EAAE,CACjB,IAAK,GACJ,MAAO,CAAC,EAAG,EAAG,EAAE,CACjB,IAAK,GACJ,MAAO,CAAC,EAAG,EAAG,EAAE,GAInB,EAAQ,IAAI,IAAM,SAAU,EAAK,CAChC,IAAM,EAAI,EAAI,GACR,EAAI,EAAI,GAAK,IACb,EAAI,EAAI,GAAK,IACb,EAAO,KAAK,IAAI,EAAG,IAAK,CAC1B,EACA,EAEJ,GAAK,EAAI,GAAK,EACd,IAAM,GAAQ,EAAI,GAAK,EAMvB,MALA,GAAK,EAAI,EACT,GAAO,GAAQ,EAAK,EAAO,EAAI,EAC/B,IAAW,EACX,GAAK,EAEE,CAAC,EAAG,EAAK,IAAK,EAAI,IAAI,EAI9B,EAAQ,IAAI,IAAM,SAAU,EAAK,CAChC,IAAM,EAAI,EAAI,GAAK,IACf,EAAK,EAAI,GAAK,IACd,EAAK,EAAI,GAAK,IACZ,EAAQ,EAAK,EACf,EAGA,EAAQ,IACX,GAAM,EACN,GAAM,GAGP,IAAM,EAAI,KAAK,MAAM,EAAI,EAAE,CACrB,EAAI,EAAI,EACd,EAAI,EAAI,EAAI,EAEP,EAAI,IACR,EAAI,EAAI,GAGT,IAAM,EAAI,EAAK,GAAK,EAAI,GAEpB,EACA,EACA,EAEJ,OAAQ,EAAR,CACC,QACA,IAAK,GACL,IAAK,GAAG,EAAI,EAAI,EAAI,EAAI,EAAI,EAAI,MAChC,IAAK,GAAG,EAAI,EAAI,EAAI,EAAI,EAAI,EAAI,MAChC,IAAK,GAAG,EAAI,EAAI,EAAI,EAAI,EAAI,EAAG,MAC/B,IAAK,GAAG,EAAI,EAAI,EAAI,EAAI,EAAI,EAAG,MAC/B,IAAK,GAAG,EAAI,EAAI,EAAI,EAAI,EAAI,EAAG,MAC/B,IAAK,GAAG,EAAI,EAAI,EAAI,EAAI,EAAI,EAAG,MAIhC,MAAO,CAAC,EAAI,IAAK,EAAI,IAAK,EAAI,IAAI,EAGnC,EAAQ,KAAK,IAAM,SAAU,EAAM,CAClC,IAAM,EAAI,EAAK,GAAK,IACd,EAAI,EAAK,GAAK,IACd,EAAI,EAAK,GAAK,IACd,EAAI,EAAK,GAAK,IAEd,EAAI,EAAI,KAAK,IAAI,EAAG,GAAK,EAAI,GAAK,EAAE,CACpC,EAAI,EAAI,KAAK,IAAI,EAAG,GAAK,EAAI,GAAK,EAAE,CACpC,EAAI,EAAI,KAAK,IAAI,EAAG,GAAK,EAAI,GAAK,EAAE,CAE1C,MAAO,CAAC,EAAI,IAAK,EAAI,IAAK,EAAI,IAAI,EAGnC,EAAQ,IAAI,IAAM,SAAU,EAAK,CAChC,IAAM,EAAI,EAAI,GAAK,IACb,EAAI,EAAI,GAAK,IACb,EAAI,EAAI,GAAK,IACf,EACA,EACA,EAuBJ,MArBA,GAAK,EAAI,OAAW,EAAI,QAAY,EAAI,OACxC,EAAK,EAAI,OAAY,EAAI,OAAW,EAAI,MACxC,EAAK,EAAI,MAAW,EAAI,MAAY,EAAI,MAGxC,EAAI,EAAI,SACH,MAAS,IAAM,EAAM,KAAS,KAChC,EAAI,MAEP,EAAI,EAAI,SACH,MAAS,IAAM,EAAM,KAAS,KAChC,EAAI,MAEP,EAAI,EAAI,SACH,MAAS,IAAM,EAAM,KAAS,KAChC,EAAI,MAEP,EAAI,KAAK,IAAI,KAAK,IAAI,EAAG,EAAE,CAAE,EAAE,CAC/B,EAAI,KAAK,IAAI,KAAK,IAAI,EAAG,EAAE,CAAE,EAAE,CAC/B,EAAI,KAAK,IAAI,KAAK,IAAI,EAAG,EAAE,CAAE,EAAE,CAExB,CAAC,EAAI,IAAK,EAAI,IAAK,EAAI,IAAI,EAGnC,EAAQ,IAAI,IAAM,SAAU,EAAK,CAChC,IAAI,EAAI,EAAI,GACR,EAAI,EAAI,GACR,EAAI,EAAI,GAcZ,MAZA,IAAK,OACL,GAAK,IACL,GAAK,QAEL,EAAI,EAAI,QAAY,IAAM,EAAI,GAAO,MAAQ,EAAM,GAAK,IACxD,EAAI,EAAI,QAAY,IAAM,EAAI,GAAO,MAAQ,EAAM,GAAK,IACxD,EAAI,EAAI,QAAY,IAAM,EAAI,GAAO,MAAQ,EAAM,GAAK,IAMjD,CAJI,IAAM,EAAK,GACZ,KAAO,EAAI,GACX,KAAO,EAAI,GAEL,EAGjB,EAAQ,IAAI,IAAM,SAAU,EAAK,CAChC,IAAM,EAAI,EAAI,GACR,EAAI,EAAI,GACR,EAAI,EAAI,GACV,EACA,EACA,EAEJ,GAAK,EAAI,IAAM,IACf,EAAI,EAAI,IAAM,EACd,EAAI,EAAI,EAAI,IAEZ,IAAM,EAAK,GAAK,EACV,EAAK,GAAK,EACV,EAAK,GAAK,EAShB,MARA,GAAI,EAAK,QAAW,GAAM,EAAI,GAAK,KAAO,MAC1C,EAAI,EAAK,QAAW,GAAM,EAAI,GAAK,KAAO,MAC1C,EAAI,EAAK,QAAW,GAAM,EAAI,GAAK,KAAO,MAE1C,GAAK,OACL,GAAK,IACL,GAAK,QAEE,CAAC,EAAG,EAAG,EAAE,EAGjB,EAAQ,IAAI,IAAM,SAAU,EAAK,CAChC,IAAM,EAAI,EAAI,GACR,EAAI,EAAI,GACR,EAAI,EAAI,GACV,EAWJ,MARA,GADW,KAAK,MAAM,EAAG,EAAE,CAClB,IAAM,EAAI,KAAK,GAEpB,EAAI,IACP,GAAK,KAKC,CAAC,EAFE,KAAK,KAAK,EAAI,EAAI,EAAI,EAAE,CAEpB,EAAE,EAGjB,EAAQ,IAAI,IAAM,SAAU,EAAK,CAChC,IAAM,EAAI,EAAI,GACR,EAAI,EAAI,GAGR,EAFI,EAAI,GAEC,IAAM,EAAI,KAAK,GAI9B,MAAO,CAAC,EAHE,EAAI,KAAK,IAAI,EAAG,CAChB,EAAI,KAAK,IAAI,EAAG,CAEV,EAGjB,EAAQ,IAAI,OAAS,SAAU,EAAM,EAAa,KAAM,CACvD,GAAM,CAAC,EAAG,EAAG,GAAK,EACd,EAAQ,IAAe,KAAOA,EAAQ,IAAI,IAAI,EAAK,CAAC,GAAK,EAI7D,GAFA,EAAQ,KAAK,MAAM,EAAQ,GAAG,CAE1B,IAAU,EACb,MAAO,IAGR,IAAI,EAAO,IACN,KAAK,MAAM,EAAI,IAAI,EAAI,EACxB,KAAK,MAAM,EAAI,IAAI,EAAI,EACxB,KAAK,MAAM,EAAI,IAAI,EAMtB,OAJI,IAAU,IACb,GAAQ,IAGF,GAGR,EAAQ,IAAI,OAAS,SAAU,EAAM,CAGpC,OAAOA,EAAQ,IAAI,OAAOA,EAAQ,IAAI,IAAI,EAAK,CAAE,EAAK,GAAG,EAG1D,EAAQ,IAAI,QAAU,SAAU,EAAM,CACrC,IAAM,EAAI,EAAK,GACT,EAAI,EAAK,GACT,EAAI,EAAK,GAqBf,OAjBI,IAAM,GAAK,IAAM,EAChB,EAAI,EACA,GAGJ,EAAI,IACA,IAGD,KAAK,OAAQ,EAAI,GAAK,IAAO,GAAG,CAAG,IAG9B,GACT,GAAK,KAAK,MAAM,EAAI,IAAM,EAAE,CAC5B,EAAI,KAAK,MAAM,EAAI,IAAM,EAAE,CAC5B,KAAK,MAAM,EAAI,IAAM,EAAE,EAK3B,EAAQ,OAAO,IAAM,SAAU,EAAM,CACpC,IAAI,EAAQ,EAAO,GAGnB,GAAI,IAAU,GAAK,IAAU,EAO5B,OANI,EAAO,KACV,GAAS,KAGV,EAAQ,EAAQ,KAAO,IAEhB,CAAC,EAAO,EAAO,EAAM,CAG7B,IAAM,GAAQ,CAAC,EAAE,EAAO,IAAM,GAAK,GAKnC,MAAO,EAJK,EAAQ,GAAK,EAAQ,KACpB,GAAS,EAAK,GAAK,EAAQ,KAC3B,GAAS,EAAK,GAAK,EAAQ,IAExB,EAGjB,EAAQ,QAAQ,IAAM,SAAU,EAAM,CAErC,GAAI,GAAQ,IAAK,CAChB,IAAM,GAAK,EAAO,KAAO,GAAK,EAC9B,MAAO,CAAC,EAAG,EAAG,EAAE,CAGjB,GAAQ,GAER,IAAI,EAKJ,MAAO,CAJG,KAAK,MAAM,EAAO,GAAG,CAAG,EAAI,IAC5B,KAAK,OAAO,EAAM,EAAO,IAAM,EAAE,CAAG,EAAI,IACvC,EAAM,EAAK,EAAI,IAEV,EAGjB,EAAQ,IAAI,IAAM,SAAU,EAAM,CAKjC,IAAM,KAJY,KAAK,MAAM,EAAK,GAAG,CAAG,MAAS,MAC5C,KAAK,MAAM,EAAK,GAAG,CAAG,MAAS,IAChC,KAAK,MAAM,EAAK,GAAG,CAAG,MAEH,SAAS,GAAG,CAAC,aAAa,CACjD,MAAO,SAAS,UAAU,EAAO,OAAO,CAAG,GAG5C,EAAQ,IAAI,IAAM,SAAU,EAAM,CACjC,IAAM,EAAQ,EAAK,SAAS,GAAG,CAAC,MAAM,2BAA2B,CACjE,GAAI,CAAC,EACJ,MAAO,CAAC,EAAG,EAAG,EAAE,CAGjB,IAAI,EAAc,EAAM,GAEpB,EAAM,GAAG,SAAW,IACvB,EAAc,EAAY,MAAM,GAAG,CAAC,IAAI,GAChC,EAAO,EACb,CAAC,KAAK,GAAG,EAGZ,IAAM,EAAU,SAAS,EAAa,GAAG,CAKzC,MAAO,CAJI,GAAW,GAAM,IACjB,GAAW,EAAK,IACjB,EAAU,IAEJ,EAGjB,EAAQ,IAAI,IAAM,SAAU,EAAK,CAChC,IAAM,EAAI,EAAI,GAAK,IACb,EAAI,EAAI,GAAK,IACb,EAAI,EAAI,GAAK,IACb,EAAM,KAAK,IAAI,KAAK,IAAI,EAAG,EAAE,CAAE,EAAE,CACjC,EAAM,KAAK,IAAI,KAAK,IAAI,EAAG,EAAE,CAAE,EAAE,CACjC,EAAU,EAAM,EAClB,EACA,EAuBJ,MArBA,CAGC,EAHG,EAAS,EACA,GAAO,EAAI,GAEX,EAGb,AASC,EATG,GAAU,EACP,EAEH,IAAQ,GACH,EAAI,GAAK,EAAU,EAExB,IAAQ,EACL,GAAK,EAAI,GAAK,EAEd,GAAK,EAAI,GAAK,EAGrB,GAAO,EACP,GAAO,EAEA,CAAC,EAAM,IAAK,EAAS,IAAK,EAAY,IAAI,EAGlD,EAAQ,IAAI,IAAM,SAAU,EAAK,CAChC,IAAM,EAAI,EAAI,GAAK,IACb,EAAI,EAAI,GAAK,IAEb,EAAI,EAAI,GAAO,EAAM,EAAI,EAAM,EAAM,GAAK,EAAM,GAElD,EAAI,EAKR,OAJI,EAAI,IACP,GAAK,EAAI,GAAM,IAAM,EAAM,IAGrB,CAAC,EAAI,GAAI,EAAI,IAAK,EAAI,IAAI,EAGlC,EAAQ,IAAI,IAAM,SAAU,EAAK,CAChC,IAAM,EAAI,EAAI,GAAK,IACb,EAAI,EAAI,GAAK,IAEb,EAAI,EAAI,EACV,EAAI,EAMR,OAJI,EAAI,IACP,GAAK,EAAI,IAAM,EAAI,IAGb,CAAC,EAAI,GAAI,EAAI,IAAK,EAAI,IAAI,EAGlC,EAAQ,IAAI,IAAM,SAAU,EAAK,CAChC,IAAM,EAAI,EAAI,GAAK,IACb,EAAI,EAAI,GAAK,IACb,EAAI,EAAI,GAAK,IAEnB,GAAI,IAAM,EACT,MAAO,CAAC,EAAI,IAAK,EAAI,IAAK,EAAI,IAAI,CAGnC,IAAM,EAAO,CAAC,EAAG,EAAG,EAAE,CAChB,EAAM,EAAI,EAAK,EACf,EAAI,EAAK,EACT,EAAI,EAAI,EACV,EAAK,EAGT,OAAQ,KAAK,MAAM,EAAG,CAAtB,CACC,IAAK,GACJ,EAAK,GAAK,EAAG,EAAK,GAAK,EAAG,EAAK,GAAK,EAAG,MACxC,IAAK,GACJ,EAAK,GAAK,EAAG,EAAK,GAAK,EAAG,EAAK,GAAK,EAAG,MACxC,IAAK,GACJ,EAAK,GAAK,EAAG,EAAK,GAAK,EAAG,EAAK,GAAK,EAAG,MACxC,IAAK,GACJ,EAAK,GAAK,EAAG,EAAK,GAAK,EAAG,EAAK,GAAK,EAAG,MACxC,IAAK,GACJ,EAAK,GAAK,EAAG,EAAK,GAAK,EAAG,EAAK,GAAK,EAAG,MACxC,QACC,EAAK,GAAK,EAAG,EAAK,GAAK,EAAG,EAAK,GAAK,EAMtC,MAFA,IAAM,EAAM,GAAK,EAEV,EACL,EAAI,EAAK,GAAK,GAAM,KACpB,EAAI,EAAK,GAAK,GAAM,KACpB,EAAI,EAAK,GAAK,GAAM,IACrB,EAGF,EAAQ,IAAI,IAAM,SAAU,EAAK,CAChC,IAAM,EAAI,EAAI,GAAK,IAGb,EAAI,EAFA,EAAI,GAAK,KAEA,EAAM,GACrB,EAAI,EAMR,OAJI,EAAI,IACP,EAAI,EAAI,GAGF,CAAC,EAAI,GAAI,EAAI,IAAK,EAAI,IAAI,EAGlC,EAAQ,IAAI,IAAM,SAAU,EAAK,CAChC,IAAM,EAAI,EAAI,GAAK,IAGb,EAFI,EAAI,GAAK,KAEJ,EAAM,GAAK,GAAM,EAC5B,EAAI,EASR,OAPI,EAAI,GAAO,EAAI,GAClB,EAAI,GAAK,EAAI,GAEV,GAAK,IAAO,EAAI,IACnB,EAAI,GAAK,GAAK,EAAI,KAGZ,CAAC,EAAI,GAAI,EAAI,IAAK,EAAI,IAAI,EAGlC,EAAQ,IAAI,IAAM,SAAU,EAAK,CAChC,IAAM,EAAI,EAAI,GAAK,IAEb,EAAI,EADA,EAAI,GAAK,KACA,EAAM,GACzB,MAAO,CAAC,EAAI,IAAK,EAAI,GAAK,KAAM,EAAI,GAAK,IAAI,EAG9C,EAAQ,IAAI,IAAM,SAAU,EAAK,CAChC,IAAM,EAAI,EAAI,GAAK,IAEb,EAAI,EADA,EAAI,GAAK,IAEb,EAAI,EAAI,EACV,EAAI,EAMR,OAJI,EAAI,IACP,GAAK,EAAI,IAAM,EAAI,IAGb,CAAC,EAAI,GAAI,EAAI,IAAK,EAAI,IAAI,EAGlC,EAAQ,MAAM,IAAM,SAAU,EAAO,CACpC,MAAO,CAAE,EAAM,GAAK,MAAS,IAAM,EAAM,GAAK,MAAS,IAAM,EAAM,GAAK,MAAS,IAAI,EAGtF,EAAQ,IAAI,MAAQ,SAAU,EAAK,CAClC,MAAO,CAAE,EAAI,GAAK,IAAO,MAAQ,EAAI,GAAK,IAAO,MAAQ,EAAI,GAAK,IAAO,MAAM,EAGhF,EAAQ,KAAK,IAAM,SAAU,EAAM,CAClC,MAAO,CAAC,EAAK,GAAK,IAAM,IAAK,EAAK,GAAK,IAAM,IAAK,EAAK,GAAK,IAAM,IAAI,EAGvE,EAAQ,KAAK,IAAM,SAAU,EAAM,CAClC,MAAO,CAAC,EAAG,EAAG,EAAK,GAAG,EAGvB,EAAQ,KAAK,IAAMA,EAAQ,KAAK,IAEhC,EAAQ,KAAK,IAAM,SAAU,EAAM,CAClC,MAAO,CAAC,EAAG,IAAK,EAAK,GAAG,EAGzB,EAAQ,KAAK,KAAO,SAAU,EAAM,CACnC,MAAO,CAAC,EAAG,EAAG,EAAG,EAAK,GAAG,EAG1B,EAAQ,KAAK,IAAM,SAAU,EAAM,CAClC,MAAO,CAAC,EAAK,GAAI,EAAG,EAAE,EAGvB,EAAQ,KAAK,IAAM,SAAU,EAAM,CAClC,IAAM,EAAM,KAAK,MAAM,EAAK,GAAK,IAAM,IAAI,CAAG,IAGxC,IAFW,GAAO,KAAO,GAAO,GAAK,GAEpB,SAAS,GAAG,CAAC,aAAa,CACjD,MAAO,SAAS,UAAU,EAAO,OAAO,CAAG,GAG5C,EAAQ,IAAI,KAAO,SAAU,EAAK,CAEjC,MAAO,EADM,EAAI,GAAK,EAAI,GAAK,EAAI,IAAM,EAC3B,IAAM,IAAI,kBCr0BzB,IAAMC,EAAAA,GAAAA,CAaN,SAAS,GAAa,CACrB,IAAM,EAAQ,EAAE,CAEVC,EAAS,OAAO,KAAKD,EAAY,CAEvC,IAAK,IAAI,EAAMC,EAAO,OAAQ,EAAI,EAAG,EAAI,EAAK,IAC7C,EAAMA,EAAO,IAAM,CAGlB,SAAU,GACV,OAAQ,KACR,CAGF,OAAO,EAIR,SAAS,EAAU,EAAW,CAC7B,IAAM,EAAQ,GAAY,CACpB,EAAQ,CAAC,EAAU,CAIzB,IAFA,EAAM,GAAW,SAAW,EAErB,EAAM,QAAQ,CACpB,IAAM,EAAU,EAAM,KAAK,CACrB,EAAY,OAAO,KAAKD,EAAY,GAAS,CAEnD,IAAK,IAAI,EAAM,EAAU,OAAQ,EAAI,EAAG,EAAI,EAAK,IAAK,CACrD,IAAM,EAAW,EAAU,GACrB,EAAO,EAAM,GAEf,EAAK,WAAa,KACrB,EAAK,SAAW,EAAM,GAAS,SAAW,EAC1C,EAAK,OAAS,EACd,EAAM,QAAQ,EAAS,GAK1B,OAAO,EAGR,SAAS,EAAK,EAAM,EAAI,CACvB,OAAO,SAAU,EAAM,CACtB,OAAO,EAAG,EAAK,EAAK,CAAC,EAIvB,SAAS,EAAe,EAAS,EAAO,CACvC,IAAM,EAAO,CAAC,EAAM,GAAS,OAAQ,EAAQ,CACzC,EAAKA,EAAY,EAAM,GAAS,QAAQ,GAExC,EAAM,EAAM,GAAS,OACzB,KAAO,EAAM,GAAK,QACjB,EAAK,QAAQ,EAAM,GAAK,OAAO,CAC/B,EAAK,EAAKA,EAAY,EAAM,GAAK,QAAQ,GAAM,EAAG,CAClD,EAAM,EAAM,GAAK,OAIlB,MADA,GAAG,WAAa,EACT,EAGR,EAAO,QAAU,SAAU,EAAW,CACrC,IAAM,EAAQ,EAAU,EAAU,CAC5B,EAAa,EAAE,CAEfC,EAAS,OAAO,KAAK,EAAM,CACjC,IAAK,IAAI,EAAMA,EAAO,OAAQ,EAAI,EAAG,EAAI,EAAK,IAAK,CAClD,IAAM,EAAUA,EAAO,GACV,EAAM,GAEV,SAAW,OAKpB,EAAW,GAAW,EAAe,EAAS,EAAM,EAGrD,OAAO,mBC9FR,IAAM,EAAA,GAAA,CACA,EAAA,GAAA,CAEA,EAAU,EAAE,CAEZ,EAAS,OAAO,KAAK,EAAY,CAEvC,SAAS,EAAQ,EAAI,CACpB,IAAM,EAAY,SAAU,GAAG,EAAM,CACpC,IAAM,EAAO,EAAK,GASlB,OARI,GAA+B,KAC3B,GAGJ,EAAK,OAAS,IACjB,EAAO,GAGD,EAAG,EAAK,GAQhB,MAJI,eAAgB,IACnB,EAAU,WAAa,EAAG,YAGpB,EAGR,SAAS,EAAY,EAAI,CACxB,IAAM,EAAY,SAAU,GAAG,EAAM,CACpC,IAAM,EAAO,EAAK,GAElB,GAAI,GAA+B,KAClC,OAAO,EAGJ,EAAK,OAAS,IACjB,EAAO,GAGR,IAAM,EAAS,EAAG,EAAK,CAKvB,GAAI,OAAO,GAAW,SACrB,IAAK,IAAI,EAAM,EAAO,OAAQ,EAAI,EAAG,EAAI,EAAK,IAC7C,EAAO,GAAK,KAAK,MAAM,EAAO,GAAG,CAInC,OAAO,GAQR,MAJI,eAAgB,IACnB,EAAU,WAAa,EAAG,YAGpB,EAGR,EAAO,QAAQ,GAAa,CAC3B,EAAQ,GAAa,EAAE,CAEvB,OAAO,eAAe,EAAQ,GAAY,WAAY,CAAC,MAAO,EAAY,GAAW,SAAS,CAAC,CAC/F,OAAO,eAAe,EAAQ,GAAY,SAAU,CAAC,MAAO,EAAY,GAAW,OAAO,CAAC,CAE3F,IAAM,EAAS,EAAM,EAAU,CACX,OAAO,KAAK,EAAO,CAE3B,QAAQ,GAAW,CAC9B,IAAM,EAAK,EAAO,GAElB,EAAQ,GAAW,GAAW,EAAY,EAAG,CAC7C,EAAQ,GAAW,GAAS,IAAM,EAAQ,EAAG,EAC5C,EACD,CAEF,EAAO,QAAU,kBC9EjB,IAAM,GAAc,EAAI,KAAY,GAAG,IAE/B,UADM,EAAG,GAAG,EAAK,CACA,EAAO,GAG1B,GAAe,EAAI,KAAY,GAAG,IAAS,CAChD,IAAM,EAAO,EAAG,GAAG,EAAK,CACxB,MAAO,UAAU,GAAK,EAAO,KAAK,EAAK,IAGlC,GAAe,EAAI,KAAY,GAAG,IAAS,CAChD,IAAM,EAAM,EAAG,GAAG,EAAK,CACvB,MAAO,UAAU,GAAK,EAAO,KAAK,EAAI,GAAG,GAAG,EAAI,GAAG,GAAG,EAAI,GAAG,IAGxD,EAAY,GAAK,EACjB,GAAW,EAAG,EAAG,IAAM,CAAC,EAAG,EAAG,EAAE,CAEhC,GAAmB,EAAQ,EAAU,IAAQ,CAClD,OAAO,eAAe,EAAQ,EAAU,CACvC,QAAW,CACV,IAAM,EAAQ,GAAK,CAQnB,OANA,OAAO,eAAe,EAAQ,EAAU,CACvC,QACA,WAAY,GACZ,aAAc,GACd,CAAC,CAEK,GAER,WAAY,GACZ,aAAc,GACd,CAAC,EAIC,EACE,GAAqB,EAAM,EAAa,EAAU,IAAiB,CACpE,IAAiB,IAAA,KACpB,EAAA,GAAA,EAGD,IAAM,EAAS,EAAe,GAAK,EAC7BC,EAAS,EAAE,CAEjB,IAAK,GAAM,CAAC,EAAa,KAAU,OAAO,QAAQ,EAAa,CAAE,CAChE,IAAM,EAAO,IAAgB,SAAW,OAAS,EAC7C,IAAgB,EACnB,EAAO,GAAQ,EAAK,EAAU,EAAO,CAC3B,OAAO,GAAU,WAC3B,EAAO,GAAQ,EAAK,EAAM,GAAc,EAAO,EAIjD,OAAOA,GAGR,SAAS,GAAiB,CACzB,IAAM,EAAQ,IAAI,IACZA,EAAS,CACd,SAAU,CACT,MAAO,CAAC,EAAG,EAAE,CAEb,KAAM,CAAC,EAAG,GAAG,CACb,IAAK,CAAC,EAAG,GAAG,CACZ,OAAQ,CAAC,EAAG,GAAG,CACf,UAAW,CAAC,EAAG,GAAG,CAClB,QAAS,CAAC,EAAG,GAAG,CAChB,OAAQ,CAAC,EAAG,GAAG,CACf,cAAe,CAAC,EAAG,GAAG,CACtB,CACD,MAAO,CACN,MAAO,CAAC,GAAI,GAAG,CACf,IAAK,CAAC,GAAI,GAAG,CACb,MAAO,CAAC,GAAI,GAAG,CACf,OAAQ,CAAC,GAAI,GAAG,CAChB,KAAM,CAAC,GAAI,GAAG,CACd,QAAS,CAAC,GAAI,GAAG,CACjB,KAAM,CAAC,GAAI,GAAG,CACd,MAAO,CAAC,GAAI,GAAG,CAGf,YAAa,CAAC,GAAI,GAAG,CACrB,UAAW,CAAC,GAAI,GAAG,CACnB,YAAa,CAAC,GAAI,GAAG,CACrB,aAAc,CAAC,GAAI,GAAG,CACtB,WAAY,CAAC,GAAI,GAAG,CACpB,cAAe,CAAC,GAAI,GAAG,CACvB,WAAY,CAAC,GAAI,GAAG,CACpB,YAAa,CAAC,GAAI,GAAG,CACrB,CACD,QAAS,CACR,QAAS,CAAC,GAAI,GAAG,CACjB,MAAO,CAAC,GAAI,GAAG,CACf,QAAS,CAAC,GAAI,GAAG,CACjB,SAAU,CAAC,GAAI,GAAG,CAClB,OAAQ,CAAC,GAAI,GAAG,CAChB,UAAW,CAAC,GAAI,GAAG,CACnB,OAAQ,CAAC,GAAI,GAAG,CAChB,QAAS,CAAC,GAAI,GAAG,CAGjB,cAAe,CAAC,IAAK,GAAG,CACxB,YAAa,CAAC,IAAK,GAAG,CACtB,cAAe,CAAC,IAAK,GAAG,CACxB,eAAgB,CAAC,IAAK,GAAG,CACzB,aAAc,CAAC,IAAK,GAAG,CACvB,gBAAiB,CAAC,IAAK,GAAG,CAC1B,aAAc,CAAC,IAAK,GAAG,CACvB,cAAe,CAAC,IAAK,GAAG,CACxB,CACD,CAGD,EAAO,MAAM,KAAOA,EAAO,MAAM,YACjC,EAAO,QAAQ,OAASA,EAAO,QAAQ,cACvC,EAAO,MAAM,KAAOA,EAAO,MAAM,YACjC,EAAO,QAAQ,OAASA,EAAO,QAAQ,cAEvC,IAAK,GAAM,CAAC,EAAW,KAAU,OAAO,QAAQA,EAAO,CAAE,CACxD,IAAK,GAAM,CAAC,EAAW,KAAU,OAAO,QAAQ,EAAM,CACrD,EAAO,GAAa,CACnB,KAAM,UAAU,EAAM,GAAG,GACzB,MAAO,UAAU,EAAM,GAAG,GAC1B,CAED,EAAM,GAAaA,EAAO,GAE1B,EAAM,IAAI,EAAM,GAAI,EAAM,GAAG,CAG9B,OAAO,eAAeA,EAAQ,EAAW,CACxC,MAAO,EACP,WAAY,GACZ,CAAC,CAkBH,OAfA,OAAO,eAAeA,EAAQ,QAAS,CACtC,MAAO,EACP,WAAY,GACZ,CAAC,CAEF,EAAO,MAAM,MAAQ,WACrB,EAAO,QAAQ,MAAQ,WAEvB,EAAgBA,EAAO,MAAO,WAAc,EAAkB,EAAY,SAAU,EAAW,GAAM,CAAC,CACtG,EAAgBA,EAAO,MAAO,cAAiB,EAAkB,EAAa,UAAW,EAAW,GAAM,CAAC,CAC3G,EAAgBA,EAAO,MAAO,cAAiB,EAAkB,EAAa,MAAO,EAAS,GAAM,CAAC,CACrG,EAAgBA,EAAO,QAAS,WAAc,EAAkB,EAAY,SAAU,EAAW,GAAK,CAAC,CACvG,EAAgBA,EAAO,QAAS,cAAiB,EAAkB,EAAa,UAAW,EAAW,GAAK,CAAC,CAC5G,EAAgBA,EAAO,QAAS,cAAiB,EAAkB,EAAa,MAAO,EAAS,GAAK,CAAC,CAE/FA,EAIR,OAAO,eAAe,EAAQ,UAAW,CACxC,WAAY,GACZ,IAAK,EACL,CAAC,iBChKF,EAAO,SAAW,EAAM,EAAO,QAAQ,OAAS,CAC/C,IAAM,EAAS,EAAK,WAAW,IAAI,CAAG,GAAM,EAAK,SAAW,EAAI,IAAM,KAChE,EAAW,EAAK,QAAQ,EAAS,EAAK,CACtC,EAAqB,EAAK,QAAQ,KAAK,CAC7C,OAAO,IAAa,KAAO,IAAuB,IAAM,EAAW,oBCLpE,IAAM,EAAA,EAAa,UAAK,CAClB,EAAA,EAAc,WAAM,CACpB,EAAA,GAAA,CAEA,CAAC,OAAO,QAEV,EACA,EAAQ,WAAW,EACtB,EAAQ,YAAY,EACpB,EAAQ,cAAc,EACtB,EAAQ,cAAc,CACtB,EAAa,GACH,EAAQ,QAAQ,EAC1B,EAAQ,SAAS,EACjB,EAAQ,aAAa,EACrB,EAAQ,eAAe,IACvB,EAAa,GAGV,gBAAiB,IACpB,AAKC,EALG,EAAI,cAAgB,OACV,EACH,EAAI,cAAgB,QACjB,EAEA,EAAI,YAAY,SAAW,EAAI,EAAI,KAAK,IAAI,SAAS,EAAI,YAAa,GAAG,CAAE,EAAE,EAI5F,SAAS,EAAe,EAAO,CAK9B,OAJI,IAAU,EACN,GAGD,CACN,QACA,SAAU,GACV,OAAQ,GAAS,EACjB,OAAQ,GAAS,EACjB,CAGF,SAAS,EAAc,EAAY,EAAa,CAC/C,GAAI,IAAe,EAClB,MAAO,GAGR,GAAI,EAAQ,YAAY,EACvB,EAAQ,aAAa,EACrB,EAAQ,kBAAkB,CAC1B,MAAO,GAGR,GAAI,EAAQ,YAAY,CACvB,MAAO,GAGR,GAAI,GAAc,CAAC,GAAe,IAAe,IAAA,GAChD,MAAO,GAGR,IAAM,EAAM,GAAc,EAE1B,GAAI,EAAI,OAAS,OAChB,OAAO,EAGR,GAAI,QAAQ,WAAa,QAAS,CAGjC,IAAM,EAAY,EAAG,SAAS,CAAC,MAAM,IAAI,CAQzC,OANC,OAAO,EAAU,GAAG,EAAI,IACxB,OAAO,EAAU,GAAG,EAAI,MAEjB,OAAO,EAAU,GAAG,EAAI,MAAQ,EAAI,EAGrC,EAGR,GAAI,OAAQ,EAKX,MAJI,CAAC,SAAU,WAAY,WAAY,YAAa,iBAAkB,YAAY,CAAC,KAAK,GAAQ,KAAQ,EAAI,EAAI,EAAI,UAAY,WACxH,EAGD,EAGR,GAAI,qBAAsB,EACzB,MAAO,gCAAgC,KAAK,EAAI,iBAAiB,CAAG,EAAI,EAGzE,GAAI,EAAI,YAAc,YACrB,MAAO,GAGR,GAAI,iBAAkB,EAAK,CAC1B,IAAM,EAAU,UAAU,EAAI,sBAAwB,IAAI,MAAM,IAAI,CAAC,GAAI,GAAG,CAE5E,OAAQ,EAAI,aAAZ,CACC,IAAK,YACJ,OAAO,GAAW,EAAI,EAAI,EAC3B,IAAK,iBACJ,MAAO,IAiBV,MAZI,iBAAiB,KAAK,EAAI,KAAK,CAC3B,EAGJ,8DAA8D,KAAK,EAAI,KAAK,EAI5E,cAAe,EACX,EAGD,EAGR,SAAS,EAAgB,EAAQ,CAEhC,OAAO,EADO,EAAc,EAAQ,GAAU,EAAO,MAAM,CAC/B,CAG7B,EAAO,QAAU,CAChB,cAAe,EACf,OAAQ,EAAe,EAAc,GAAM,EAAI,OAAO,EAAE,CAAC,CAAC,CAC1D,OAAQ,EAAe,EAAc,GAAM,EAAI,OAAO,EAAE,CAAC,CAAC,CAC1D,iBCnGD,EAAO,QAAU,CAChB,kBAlCyB,EAAQ,EAAW,IAAa,CACzD,IAAI,EAAQ,EAAO,QAAQ,EAAU,CACrC,GAAI,IAAU,GACb,OAAO,EAGR,IAAM,EAAkB,EAAU,OAC9B,EAAW,EACX,EAAc,GAClB,EACC,IAAe,EAAO,OAAO,EAAU,EAAQ,EAAS,CAAG,EAAY,EACvE,EAAW,EAAQ,EACnB,EAAQ,EAAO,QAAQ,EAAW,EAAS,OACnC,IAAU,IAGnB,MADA,IAAe,EAAO,OAAO,EAAS,CAC/B,GAmBP,gCAhBuC,EAAQ,EAAQ,EAAS,IAAU,CAC1E,IAAI,EAAW,EACX,EAAc,GAClB,EAAG,CACF,IAAM,EAAQ,EAAO,EAAQ,KAAO,KACpC,GAAe,EAAO,OAAO,GAAW,EAAQ,EAAQ,EAAI,GAAS,EAAS,CAAG,GAAU,EAAQ;EAAS;GAAQ,EACpH,EAAW,EAAQ,EACnB,EAAQ,EAAO,QAAQ;EAAM,EAAS,OAC9B,IAAU,IAGnB,MADA,IAAe,EAAO,OAAO,EAAS,CAC/B,GAMP,iBCrCD,IAAM,EAAiB,4JACjB,EAAc,iCACd,EAAe,mCACf,EAAe,6DAEf,EAAU,IAAI,IAAI,CACvB,CAAC,IAAK;EAAK,CACX,CAAC,IAAK,KAAK,CACX,CAAC,IAAK,IAAK,CACX,CAAC,IAAK,KAAK,CACX,CAAC,IAAK,KAAK,CACX,CAAC,IAAK,KAAK,CACX,CAAC,IAAK,KAAK,CACX,CAAC,KAAM,KAAK,CACZ,CAAC,IAAK,OAAS,CACf,CAAC,IAAK,OAAS,CACf,CAAC,CAEF,SAAS,EAAS,EAAG,CACpB,IAAM,EAAI,EAAE,KAAO,IACb,EAAU,EAAE,KAAO,IAUzB,OARK,GAAK,CAAC,GAAW,EAAE,SAAW,GAAO,EAAE,KAAO,KAAO,EAAE,SAAW,EAC/D,OAAO,aAAa,SAAS,EAAE,MAAM,EAAE,CAAE,GAAG,CAAC,CAGjD,GAAK,EACD,OAAO,cAAc,SAAS,EAAE,MAAM,EAAG,GAAG,CAAE,GAAG,CAAC,CAGnD,EAAQ,IAAI,EAAE,EAAI,EAG1B,SAAS,EAAe,EAAM,EAAY,CACzC,IAAM,EAAU,EAAE,CACZ,EAAS,EAAW,MAAM,CAAC,MAAM,WAAW,CAC9C,EAEJ,IAAK,IAAM,KAAS,EAAQ,CAC3B,IAAM,EAAS,OAAO,EAAM,CAC5B,GAAI,CAAC,OAAO,MAAM,EAAO,CACxB,EAAQ,KAAK,EAAO,SACT,EAAU,EAAM,MAAM,EAAa,CAC9C,EAAQ,KAAK,EAAQ,GAAG,QAAQ,GAAe,EAAG,EAAQ,IAAc,EAAS,EAAS,EAAO,CAAG,EAAU,CAAC,MAE/G,MAAU,MAAM,0CAA0C,EAAM,cAAc,EAAK,IAAI,CAIzF,OAAO,EAGR,SAAS,EAAW,EAAO,CAC1B,EAAY,UAAY,EAExB,IAAM,EAAU,EAAE,CACd,EAEJ,MAAQ,EAAU,EAAY,KAAK,EAAM,IAAM,MAAM,CACpD,IAAM,EAAO,EAAQ,GAErB,GAAI,EAAQ,GAAI,CACf,IAAM,EAAO,EAAe,EAAM,EAAQ,GAAG,CAC7C,EAAQ,KAAK,CAAC,EAAK,CAAC,OAAO,EAAK,CAAC,MAEjC,EAAQ,KAAK,CAAC,EAAK,CAAC,CAItB,OAAO,EAGR,SAAS,EAAW,EAAO,EAAQ,CAClC,IAAM,EAAU,EAAE,CAElB,IAAK,IAAM,KAASG,EACnB,IAAK,IAAM,KAAS,EAAM,OACzB,EAAQ,EAAM,IAAM,EAAM,QAAU,KAAO,EAAM,MAAM,EAAE,CAI3D,IAAI,EAAUC,EACd,IAAK,GAAM,CAAC,EAAWD,KAAW,OAAO,QAAQ,EAAQ,CACnD,SAAM,QAAQA,EAAO,CAI1B,IAAI,EAAE,KAAa,GAClB,MAAU,MAAM,wBAAwB,IAAY,CAGrD,EAAUA,EAAO,OAAS,EAAI,EAAQ,GAAW,GAAGA,EAAO,CAAG,EAAQ,GAGvE,OAAO,EAGR,EAAO,SAAW,EAAO,IAAc,CACtC,IAAMA,EAAS,EAAE,CACX,EAAS,EAAE,CACb,EAAQ,EAAE,CA0Bd,GAvBA,EAAU,QAAQ,GAAiB,EAAG,EAAiB,EAAS,EAAO,EAAO,IAAc,CAC3F,GAAI,EACH,EAAM,KAAK,EAAS,EAAgB,CAAC,SAC3B,EAAO,CACjB,IAAM,EAAS,EAAM,KAAK,GAAG,CAC7B,EAAQ,EAAE,CACV,EAAO,KAAKA,EAAO,SAAW,EAAI,EAAS,EAAWC,EAAOD,EAAO,CAAC,EAAO,CAAC,CAC7E,EAAO,KAAK,CAAC,UAAS,OAAQ,EAAW,EAAM,CAAC,CAAC,SACvC,EAAO,CACjB,GAAIA,EAAO,SAAW,EACrB,MAAU,MAAM,+CAA+C,CAGhE,EAAO,KAAK,EAAWC,EAAOD,EAAO,CAAC,EAAM,KAAK,GAAG,CAAC,CAAC,CACtD,EAAQ,EAAE,CACV,EAAO,KAAK,MAEZ,EAAM,KAAK,EAAU,EAErB,CAEF,EAAO,KAAK,EAAM,KAAK,GAAG,CAAC,CAEvBA,EAAO,OAAS,EAAG,CACtB,IAAM,EAAa,qCAAqCA,EAAO,OAAO,kBAAkBA,EAAO,SAAW,EAAI,GAAK,IAAI,UACvH,MAAU,MAAM,EAAW,CAG5B,OAAO,EAAO,KAAK,GAAG,oBCnIvB,IAAM,EAAA,GAAA,CACA,CAAC,OAAQ,EAAa,OAAQ,GAAA,GAAA,CAC9B,CACL,mBACA,kCAAA,GAAA,CAGK,CAAC,WAAW,MAGZ,EAAe,CACpB,OACA,OACA,UACA,UACA,CAEK,EAAS,OAAO,OAAO,KAAK,CAE5B,GAAgB,EAAQ,EAAU,EAAE,GAAK,CAC9C,GAAI,EAAQ,OAAS,EAAE,OAAO,UAAU,EAAQ,MAAM,EAAI,EAAQ,OAAS,GAAK,EAAQ,OAAS,GAChG,MAAU,MAAM,sDAAsD,CAIvE,IAAM,EAAa,EAAc,EAAY,MAAQ,EACrD,EAAO,MAAQ,EAAQ,QAAU,IAAA,GAAY,EAAa,EAAQ,OAGnE,IAAM,EAAN,KAAiB,CAChB,YAAY,EAAS,CAEpB,OAAO,EAAa,EAAQ,GAI9B,IAAM,EAAe,GAAW,CAC/B,IAAME,EAAQ,EAAE,CAchB,OAbA,EAAaA,EAAO,EAAQ,CAE5B,EAAM,UAAY,GAAG,IAAe,EAASA,EAAM,SAAU,GAAG,EAAW,CAE3E,OAAO,eAAeA,EAAO,EAAM,UAAU,CAC7C,OAAO,eAAeA,EAAM,SAAUA,EAAM,CAE5C,EAAM,SAAS,gBAAoB,CAClC,MAAU,MAAM,2EAA2E,EAG5F,EAAM,SAAS,SAAW,EAEnBA,EAAM,UAGd,SAAS,EAAM,EAAS,CACvB,OAAO,EAAa,EAAQ,CAG7B,IAAK,GAAM,CAAC,EAAW,KAAU,OAAO,QAAQ,EAAW,CAC1D,EAAO,GAAa,CACnB,KAAM,CACL,IAAM,EAAU,EAAc,KAAM,EAAa,EAAM,KAAM,EAAM,MAAO,KAAK,QAAQ,CAAE,KAAK,SAAS,CAEvG,OADA,OAAO,eAAe,KAAM,EAAW,CAAC,MAAO,EAAQ,CAAC,CACjD,GAER,CAGF,EAAO,QAAU,CAChB,KAAM,CACL,IAAM,EAAU,EAAc,KAAM,KAAK,QAAS,GAAK,CAEvD,OADA,OAAO,eAAe,KAAM,UAAW,CAAC,MAAO,EAAQ,CAAC,CACjD,GAER,CAED,IAAM,EAAa,CAAC,MAAO,MAAO,UAAW,MAAO,MAAO,MAAO,OAAQ,UAAU,CAEpF,IAAK,IAAM,KAAS,EACnB,EAAO,GAAS,CACf,KAAM,CACL,GAAM,CAAC,SAAS,KAChB,OAAO,SAAU,GAAG,EAAY,CAC/B,IAAM,EAAS,EAAa,EAAW,MAAM,EAAa,IAAQ,GAAO,GAAG,EAAW,CAAE,EAAW,MAAM,MAAO,KAAK,QAAQ,CAC9H,OAAO,EAAc,KAAM,EAAQ,KAAK,SAAS,GAGnD,CAGF,IAAK,IAAM,KAAS,EAAY,CAC/B,IAAM,EAAU,KAAO,EAAM,GAAG,aAAa,CAAG,EAAM,MAAM,EAAE,CAC9D,EAAO,GAAW,CACjB,KAAM,CACL,GAAM,CAAC,SAAS,KAChB,OAAO,SAAU,GAAG,EAAY,CAC/B,IAAM,EAAS,EAAa,EAAW,QAAQ,EAAa,IAAQ,GAAO,GAAG,EAAW,CAAE,EAAW,QAAQ,MAAO,KAAK,QAAQ,CAClI,OAAO,EAAc,KAAM,EAAQ,KAAK,SAAS,GAGnD,CAGF,IAAM,EAAQ,OAAO,qBAAuB,GAAI,CAC/C,GAAG,EACH,MAAO,CACN,WAAY,GACZ,KAAM,CACL,OAAO,KAAK,WAAW,OAExB,IAAI,EAAO,CACV,KAAK,WAAW,MAAQ,GAEzB,CACD,CAAC,CAEI,GAAgB,EAAM,EAAO,IAAW,CAC7C,IAAI,EACA,EASJ,OARI,IAAW,IAAA,IACd,EAAU,EACV,EAAW,IAEX,EAAU,EAAO,QAAU,EAC3B,EAAW,EAAQ,EAAO,UAGpB,CACN,OACA,QACA,UACA,WACA,SACA,EAGI,GAAiB,EAAM,EAAS,IAAa,CAClD,IAAM,GAAW,GAAG,IACf,EAAQ,EAAW,GAAG,EAAI,EAAQ,EAAW,GAAG,IAAI,CAEhD,EAAW,EAAS,EAAS,EAAS,GAAG,EAAW,CAAC,CAKtD,EAAW,EAAU,EAAW,SAAW,EAAM,GAAK,EAAW,GAAM,EAAW,KAAK,IAAI,CAAC,CAWpG,OANA,OAAO,eAAe,EAAS,EAAM,CAErC,EAAQ,WAAa,EACrB,EAAQ,QAAU,EAClB,EAAQ,SAAW,EAEZ,GAGF,GAAc,EAAM,IAAW,CACpC,GAAI,EAAK,OAAS,GAAK,CAAC,EACvB,OAAO,EAAK,SAAW,GAAK,EAG7B,IAAI,EAAS,EAAK,QAElB,GAAI,IAAW,IAAA,GACd,OAAO,EAGR,GAAM,CAAC,UAAS,YAAY,EAC5B,GAAI,EAAO,QAAQ,OAAS,GAAK,GAChC,KAAO,IAAW,IAAA,IAIjB,EAAS,EAAiB,EAAQ,EAAO,MAAO,EAAO,KAAK,CAE5D,EAAS,EAAO,OAOlB,IAAM,EAAU,EAAO,QAAQ;EAAK,CAKpC,OAJI,IAAY,KACf,EAAS,EAA+B,EAAQ,EAAU,EAAS,EAAQ,EAGrE,EAAU,EAAS,GAGvB,EACE,GAAY,EAAO,GAAG,IAAY,CACvC,GAAM,CAAC,GAAe,EAEtB,GAAI,CAAC,EAAQ,EAAY,EAAI,CAAC,EAAQ,EAAY,IAAI,CAGrD,OAAO,EAAQ,KAAK,IAAI,CAGzB,IAAM,EAAa,EAAQ,MAAM,EAAE,CAC7B,EAAQ,CAAC,EAAY,IAAI,GAAG,CAElC,IAAK,IAAI,EAAI,EAAG,EAAI,EAAY,OAAQ,IACvC,EAAM,KACL,OAAO,EAAW,EAAI,GAAG,CAAC,QAAQ,UAAW,OAAO,CACpD,OAAO,EAAY,IAAI,GAAG,CAC1B,CAOF,OAJI,IAAa,IAAA,KAChB,EAAA,GAAA,EAGM,EAASA,EAAO,EAAM,KAAK,GAAG,CAAC,EAGvC,OAAO,iBAAiB,EAAM,UAAW,EAAO,CAEhD,IAAMA,EAAQ,GAAO,CACrB,EAAM,cAAgB,EACtB,EAAM,OAAS,EAAM,CAAC,MAAO,EAAc,EAAY,MAAQ,EAAE,CAAC,CAClE,EAAM,OAAO,cAAgB,EAE7B,EAAO,QAAUA,UClOb,EAAe,CACjB,IAAM,GAAO,GAAY,EACzB,MAAQ,IAAO,CACb,YAAc,GAAY,EAC1B,MAAQ,GAAY,EACrB,EACD,MAAQ,GAAY,EACpB,YAAc,GAAY,EAC1B,KAAO,GAAY,EACnB,KAAM,CACJ,IAAM,GAAO,GAAY,EACzB,MAAQ,IAAO,CACb,YAAc,GAAY,EAC1B,MAAQ,GAAY,EACrB,EACD,YAAc,GAAY,EAC1B,MAAQ,GAAY,EACrB,CACD,IAAK,CACH,IAAM,GAAO,GAAY,EACzB,KAAO,GAAY,EACpB,CACF,CACG,MAAiB,CACnB,IAAI,EAASC,EAAAA,QAIb,OAHI,CAAC,GAAQ,KAAO,CAAC,GAAQ,MAAM,KAAO,CAAC,GAAQ,OAAS,CAAC,GAAQ,aAAe,CAAC,GAAQ,SAC3F,EAAS,GAEJ,GC7BT,SAAS,GAAqB,CAI5B,OAHI,QAAQ,WAAa,QAGlB,EAAQ,QAAQ,IAAI,YAC3B,EAAQ,QAAQ,IAAI,kBACpB,QAAQ,IAAI,aAAe,gBAC3B,QAAQ,IAAI,eAAiB,oBAAsB,QAAQ,IAAI,eAAiB,UAAY,QAAQ,IAAI,OAAS,kBAAoB,QAAQ,IAAI,OAAS,aAAe,QAAQ,IAAI,OAAS,gBAAkB,QAAQ,IAAI,OAAS,yBAA2B,QAAQ,IAAI,oBAAsB,qBALzR,QAAQ,IAAI,OAAS,QCFhC,IAAI,EAAW,CACb,OAAQ,EACR,MAAO,GACP,MAAO,GACP,KAAM,GACN,QAAS,GACT,KAAM,GACN,MAAO,GACP,MAAO,GACP,IAAK,IACN,CACG,EAAgB,CAClB,OAAQ,SACR,MAAO,QACP,MAAO,QACP,KAAM,OACN,QAAS,UACT,KAAM,OACN,MAAO,QACP,MAAO,QACP,IAAK,MACN,CCdG,GAAW,EAAG,IAAa,GAAoB,CAAG,EAAI,EACtD,EAAgB,EACjB,EAAc,OAAQ,EAAQ,IAAU,IAAO,EAC/C,EAAc,OAAQ,EAAQ,KAAa,IAAO,EAClD,EAAc,MAAO,EAAQ,IAAU,IAAS,EAChD,EAAc,MAAO,EAAQ,IAAU,IAAI,EAC3C,EAAc,SAAU,EAAQ,IAAU,IAAS,EACnD,EAAc,OAAQ,EAAQ,KAAa,IAAI,EAC/C,EAAc,OAAQ,EAAQ,KAAa,IAAI,EAC/C,EAAc,KAAM,EAAQ,IAAU,IAAS,CACjD,CCjBG,GAAmB,EAAuB,IAAI,OACzC,GAAG,EAAK,oBAAoB,CAAC,GAAG,EAAK,oBAAoB,GCI9D,EAAe,GAAU,CAC3B,OAAQ,EAAR,CACE,IAAK,MACH,OAAO,EAAS,IAClB,IAAK,QACH,OAAO,EAAS,MAClB,IAAK,QACH,OAAO,EAAS,MAClB,IAAK,OACH,OAAO,EAAS,KAClB,IAAK,OACH,OAAO,EAAS,KAClB,IAAK,QACH,OAAO,EAAS,MAClB,IAAK,QACH,OAAO,EAAS,MAClB,IAAK,SACH,OAAO,EAAS,OAClB,QACE,OAAO,EAAS,OCHlB,GAAY,EAAW,EAAS,KAAM,EAAS,EAAE,CAAE,EAAS,GAAU,GAAK,CAC7E,IAAM,EAAS,CAAC,EAAO,QAAQ,MAAQ,CAAC,EAAO,QAAS,MAAW,CAAC,EAAO,QAAS,MAAS,KAAO,EAAuB,EAAO,QAAQ,MAAQ,OAAO,EAAO,OAAO,MAAS,SAAW,EAAO,OAAS,EAAO,QAAS,MAAS,MAAQ,OAAO,EAAO,OAAO,KAAQ,MAAS,SAAW,EAAO,OAAO,KAAQ,KAAO,EAAO,QAAS,KAAU,EAAO,QAAS,KAAU,EACxW,EAAiB,EAAO,UAAY,QAAQ,IAAI,iBAAmB,EAAc,KAoEvF,OAnEI,EAAW,EAAY,EAAe,EAAI,GAAY,EAAS,QAAU,EAAY,EAAe,EAAI,EAAS,OAC3G,GAAM,GAGZ,OAAO,GAAa,UAAY,EAAS,OAAS,EAC5C,GAAY,CAClB,QAAQ,MACN;EACN,EAAO,KAAK,GAAiB,CAAC,CAAC,GAAG,EAAO,IAAI,EAAO,OAAS,EAAqB,KAAK,MAAM,CAAC,IAAI,EAAc,EAAc,OAAO,UAAU,GAAG,EAAO,KAAK,YAAY,EAAiB,EAAQ,CAAC,CAAC;EAEhM,EAGD,OAAO,GAAa,UAAY,EAAS,OAAS,EAC5C,GAAY,CAClB,QAAQ,MACN;EACN,EAAO,KAAK,GAAiB,CAAC,CAAC,GAAG,EAAO,IAAI,EAAO,QAAU,EAAqB,KAAK,OAAO,CAAC,IAAI,EAAc,EAAc,OAAO,UAAU,GAAG,EAAO,KAAK,YAAY,EAAiB,EAAQ,CAAC,CAAC;EAElM,EAGD,OAAO,GAAa,UAAY,EAAS,MAAQ,EAC3C,GAAY,CAClB,QAAQ,KACN;EACN,EAAO,KAAK,GAAiB,CAAC,CAAC,GAAG,EAAO,IAAI,EAAO,SAAW,EAAqB,KAAK,QAAQ,CAAC,IAAI,EAAc,EAAc,MAAM,SAAS,GAAG,EAAO,KAAK,YAAY,EAAiB,EAAQ,CAAC,CAAC;EAElM,EAGD,OAAO,GAAa,UAAY,EAAS,SAAW,EAC9C,GAAY,CAClB,QAAQ,KACN;EACN,EAAO,KAAK,GAAiB,CAAC,CAAC,GAAG,EAAO,IAAI,EAAO,SAAW,EAAqB,KAAK,QAAQ,CAAC,IAAI,EAAc,EAAc,SAAS,YAAY,GAAG,EAAO,KAAK,YAAY,EAAiB,EAAQ,CAAC,CAAC;EAExM,EAGD,OAAO,GAAa,UAAY,EAAS,MAAQ,EAC3C,GAAY,CAClB,QAAQ,KACN;EACN,EAAO,KAAK,GAAiB,CAAC,CAAC,GAAG,EAAO,IAAI,EAAO,MAAQ,EAAqB,KAAK,KAAK,CAAC,IAAI,EAAc,EAAc,MAAM,SAAS,GAAG,EAAO,KAAK,YAAY,EAAiB,EAAQ,CAAC,CAAC;EAE5L,EAGD,OAAO,GAAa,UAAY,EAAS,OAAS,EAC5C,GAAY,CAClB,QAAQ,MACN;EACN,EAAO,KAAK,GAAiB,CAAC,CAAC,GAAG,EAAO,IAAI,EAAO,MAAQ,EAAqB,KAAK,KAAK,CAAC,IAAI,EAAc,EAAc,OAAO,UAAU,GAAG,EAAO,KAAK,YAAY,EAAiB,EAAQ,CAAC,CAAC;EAE9L,EAGD,OAAO,GAAa,UAAY,EAAS,OAAS,EAC5C,GAAY,CAClB,QAAQ,MACN;EACN,EAAO,KAAK,GAAiB,CAAC,CAAC,GAAG,EAAO,IAAI,EAAO,MAAQ,EAAqB,KAAK,KAAK,CAAC,IAAI,EAAc,EAAc,OAAO,UAAU,GAAG,EAAO,KAAK,YAAY,EAAiB,EAAQ,CAAC,CAAC;EAE9L,EAGG,GAAY,CAClB,QAAQ,IACN;EACJ,EAAO,KAAK,GAAiB,CAAC,CAAC,GAAG,EAAO,IAAI,EAAO,OAAS,EAAqB,KAAK,MAAM,CAAC,IAAI,EAAc,EAAc,KAAK,WAAW,GAAG,EAAO,KAAK,YAAY,EAAiB,EAAQ,CAAC,CAAC;EAEjM,GAGD,GAAc,EAAS,IAAW,EAAS,EAAS,MAAO,EAAO,CAAC,EAAQ,CAE3E,GAAgB,EAAS,IAAW,EAAS,EAAS,KAAM,EAAO,CAAC,EAAQ,CAkB5E,EAAY,EACZ,GAAoB,EAAS,EAAU,EAAE,CAAE,EAAQ,IAAM,CAC3D,GAAI,EAAQ,EACV,MAAO,cAET,IAAM,EAAS,EAAQ,QAAU,IAC3B,EAAO,EAAQ,MAAQ,EAAE,CAC/B,OAAc,GAAuC,MAAQ,CAAC,GAAW,OAAO,GAAY,UAAY,SAAW,OAAO,GAAY,SAAW,EAAU,MAAM,QAAQ,EAAQ,CAAG;EACpL,EAAQ,KAAK,EAAM,IAAU,IAAI,EAAO,KAAK,EAAM,KAAK,EAAiB,EAAM,CAAE,OAAQ,GAAG,EAAO,GAAI,OAAM,CAAE,EAAQ,EAAE,GAAG,CAAC,KAAK;EAAK,GAAK,OAAO,GAAY,SAAW;EAC1K,OAAO,KAAK,EAAQ,CAAC,OAAQ,GAAQ,CAAC,EAAK,SAAS,EAAI,CAAC,CAAC,IACvD,GAAQ,IAAI,EAAO,IAAI,EAAI,KAAK,EAAY,EAAQ,GAAK,CAAG,aAAe,OAAO,EAAQ,IAAS,SAAW,EAC7G,EAAQ,GACR,CAAE,OAAQ,GAAG,EAAO,GAAI,OAAM,CAC9B,EAAQ,EACT,CAAG,EAAQ,KACb,CAAC,KAAK;EAAK,GAAK,GAEf,EAAe,GAAU,CAC3B,GAAI,CACF,OAAO,aAAiB,UAAY,OAAO,GAAU,YAAc,CAAC,EAAE,GAAO,aAAe,GAAO,MAAQ,GAAO,YAC5G,CACN,MAAO,KClHX,SAAgB,EAAW,EAA0C,CAEnE,MADA,KAAiB,EAAE,CACZ,MAAM,QAAQ,EAAM,CAAG,EAAQ,CAAC,EAAM,CCU/C,eAAsB,EACpB,EAEuC,CACvC,IAAM,EAAe,EAAQ,aACzB,EAAQ,aACL,QAAQ,gBAAiB,EAAQ,YAAY,CAC7C,QAAQ,kBAAmB,EAAQ,cAAc,CACpD,EAAU,EAAQ,YAAa,gBAAgB,CAC7C,EAAU,EACd,EAAQ,QACJ,EAAQ,QACR,EAAU,EAAQ,YAAa,qBAAqB,CACzD,CACE,OAAO,QAAQ,CACf,IAAI,GACH,EACG,QAAQ,gBAAiB,EAAQ,YAAY,CAC7C,QAAQ,kBAAmB,EAAQ,cAAc,CACrD,CAECC,EACJ,GAAI,EAAQ,SACV,EAAmB,EAAQ,aACtB,CACL,GAAI,CAAC,GAAgB,CAAC,EAAW,EAAa,CAAE,CAC9C,IAAM,EAAe,EACjB,kDAAkD,EAAa,gDAC/D,6FAGJ,MAFA,EAAW,EAAc,CAAE,SAAU,MAAO,CAAC,CAEnC,MAAM,EAAa,CAS/B,GALA,EAAmB,EADE,MAAM,EAA2B,EAAa,CAGjE,EACA,EAAa,EAAa,CAC3B,CACG,CAAC,EAAkB,CACrB,IAAM,EAAe,kDAAkD,EAAa,qDAGpF,MAFA,EAAW,EAAc,CAAE,SAAU,MAAO,CAAC,CAEnC,MAAM,EAAa,CAG/B,EAAiB,QAAQ,eAAiB,EAC1C,EAAiB,QAAQ,mBAAqB,GAC9C,EAAiB,QAAQ,eAAiB,GAC1C,EAAiB,QAAQ,mBAAqB,GAGhD,IAAM,EAAkB,EAAE,CAC1B,IAAK,IAAM,KAAU,EAAS,CAC5B,IAAI,EAAkB,EAClB,CAAC,EAAO,SAAS,SAAS,EAAI,CAAC,EAAO,SAAS,IAAI,GACrD,EAAkB,GAAG,EAAO,QAAQ,OAAQ,GAAG,CAAC,WAGlD,EAAgB,KAAK,GAAI,MAAM,EAAU,EAAgB,CAAE,CAG7D,GAAI,EAAgB,SAAW,GAAK,CAAC,EAAgB,GAQnD,OAPA,EACE,sEAAsE,EAAQ,KAC5E,KACD,CAAC,2JACF,CAAE,SAAU,MAAO,CACpB,CAEM,KAGT,IAAM,EAAS,EAAQ,OACnB,EAAQ,OACL,QAAQ,gBAAiB,EAAQ,YAAY,CAC7C,QAAQ,kBAAmB,EAAQ,cAAc,CACpD,EACE,EAAQ,YACR,EACE,EAAe,EAAa,EAAa,CAAG,EAAQ,YACpD,EACE,EAAQ,cACR,EAAgB,GAAG,SAAS,SAAS,CACjC,EAAa,EAAgB,GAAG,CAChC,EAAgB,GACrB,CACF,CACF,CAGL,MAFA,GAAiB,QAAQ,OAAS,EAE3B,CACL,GAAG,EACH,WAAY,EAAQ,WAChB,EAAQ,WAAW,MAAM,IAAI,CAAC,IAAI,GAAO,EAAI,MAAM,CAAC,CACpD,EAAE,CACN,cAAe,EAAQ,cACvB,YAAa,EAAQ,YACrB,QAAS,EACT,SACA,GAAI,EAAQ,KAAO,GACnB,GAAI,EAAQ,OAAS,GACrB,IAAK,EAAQ,KAAO,EAAQ,QAAU,GACtC,SAAU,EACX"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stryke/capnp",
3
- "version": "0.12.49",
3
+ "version": "0.12.51",
4
4
  "type": "module",
5
5
  "description": "A package to assist in running the Cap'n Proto compiler and creating Cap'n Proto serialization protocol schemas.",
6
6
  "repository": {
@@ -106,16 +106,16 @@
106
106
  "peerDependencies": { "typescript": ">=4.0.0" },
107
107
  "peerDependenciesMeta": { "typescript": { "optional": false } },
108
108
  "dependencies": {
109
- "@stryke/fs": "^0.33.24",
110
- "@stryke/path": "^0.23.1",
109
+ "@stryke/fs": "^0.33.26",
110
+ "@stryke/path": "^0.24.0",
111
111
  "defu": "^6.1.4",
112
112
  "hex2dec": "^1.1.2",
113
113
  "nanotar": "^0.2.0"
114
114
  },
115
115
  "devDependencies": {
116
- "@storm-software/config": "^1.134.71",
117
- "@storm-software/config-tools": "^1.188.71",
118
- "@storm-software/testing-tools": "^1.119.70",
116
+ "@storm-software/config": "^1.134.73",
117
+ "@storm-software/config-tools": "^1.188.73",
118
+ "@storm-software/testing-tools": "^1.119.72",
119
119
  "@types/node": "^24.10.4",
120
120
  "capnp-es": "^0.0.11",
121
121
  "chalk": "^5.6.2",
@@ -125,5 +125,5 @@
125
125
  "tsx": "^4.21.0"
126
126
  },
127
127
  "publishConfig": { "access": "public" },
128
- "gitHead": "ed86f49867133045cf1eb4626ca513043221d0af"
128
+ "gitHead": "91cfc26c66c3042fd25e7c39d65f2a9cc88fb920"
129
129
  }