{"version":3,"sources":["webpack://web/./node_modules/stylis/src/Enum.js","webpack://web/./node_modules/stylis/src/Prefixer.js","webpack://web/./node_modules/stylis/src/Middleware.js","webpack://web/./node_modules/stylis/src/Parser.js","webpack://web/./node_modules/stylis/src/Serializer.js","webpack://web/./node_modules/stylis/src/Tokenizer.js","webpack://web/./node_modules/stylis/src/Utility.js"],"names":["MS","MOZ","WEBKIT","COMMENT","RULESET","DECLARATION","IMPORT","KEYFRAMES","prefix","value","length","middleware","collection","element","index","children","callback","output","i","rulesheet","root","return","prefixer","type","props","compile","parse","parent","rule","rules","rulesets","pseudo","points","declarations","offset","atrule","property","previous","variable","scanning","ampersand","character","reference","characters","comment","declaration","ruleset","post","size","j","k","x","y","z","serialize","stringify","join","line","column","position","node","copy","char","prev","next","peek","caret","slice","begin","end","token","alloc","dealloc","delimit","delimiter","whitespace","escaping","count","commenter","identifier","abs","Math","from","String","fromCharCode","hash","charat","trim","match","pattern","exec","replace","replacement","indexof","search","indexOf","charCodeAt","substr","strlen","sizeof","append","array","push","combine","map"],"mappings":"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","file":"npm.stylis.9afe1d604fac715fc0c1.react.bundle.js","sourcesContent":["export var MS = '-ms-'\nexport var MOZ = '-moz-'\nexport var WEBKIT = '-webkit-'\n\nexport var COMMENT = 'comm'\nexport var RULESET = 'rule'\nexport var DECLARATION = 'decl'\n\nexport var PAGE = '@page'\nexport var MEDIA = '@media'\nexport var IMPORT = '@import'\nexport var CHARSET = '@charset'\nexport var VIEWPORT = '@viewport'\nexport var SUPPORTS = '@supports'\nexport var DOCUMENT = '@document'\nexport var NAMESPACE = '@namespace'\nexport var KEYFRAMES = '@keyframes'\nexport var FONT_FACE = '@font-face'\nexport var COUNTER_STYLE = '@counter-style'\nexport var FONT_FEATURE_VALUES = '@font-feature-values'\n","import {MS, MOZ, WEBKIT} from './Enum.js'\nimport {hash, charat, strlen, indexof, replace} from './Utility.js'\n\n/**\n * @param {string} value\n * @param {number} length\n * @return {string}\n */\nexport function prefix (value, length) {\n\tswitch (hash(value, length)) {\n\t\t// color-adjust\n\t\tcase 5103:\n\t\t\treturn WEBKIT + 'print-' + value + value\n\t\t// animation, animation-(delay|direction|duration|fill-mode|iteration-count|name|play-state|timing-function)\n\t\tcase 5737: case 4201: case 3177: case 3433: case 1641: case 4457: case 2921:\n\t\t// text-decoration, filter, clip-path, backface-visibility, column, box-decoration-break\n\t\tcase 5572: case 6356: case 5844: case 3191: case 6645: case 3005:\n\t\t// mask, mask-image, mask-(mode|clip|size), mask-(repeat|origin), mask-position, mask-composite,\n\t\tcase 6391: case 5879: case 5623: case 6135: case 4599: case 4855:\n\t\t// background-clip, columns, column-(count|fill|gap|rule|rule-color|rule-style|rule-width|span|width)\n\t\tcase 4215: case 6389: case 5109: case 5365: case 5621: case 3829:\n\t\t\treturn WEBKIT + value + value\n\t\t// appearance, user-select, transform, hyphens, text-size-adjust\n\t\tcase 5349: case 4246: case 4810: case 6968: case 2756:\n\t\t\treturn WEBKIT + value + MOZ + value + MS + value + value\n\t\t// flex, flex-direction\n\t\tcase 6828: case 4268:\n\t\t\treturn WEBKIT + value + MS + value + value\n\t\t// order\n\t\tcase 6165:\n\t\t\treturn WEBKIT + value + MS + 'flex-' + value + value\n\t\t// align-items\n\t\tcase 5187:\n\t\t\treturn WEBKIT + value + replace(value, /(\\w+).+(:[^]+)/, WEBKIT + 'box-$1$2' + MS + 'flex-$1$2') + value\n\t\t// align-self\n\t\tcase 5443:\n\t\t\treturn WEBKIT + value + MS + 'flex-item-' + replace(value, /flex-|-self/, '') + value\n\t\t// align-content\n\t\tcase 4675:\n\t\t\treturn WEBKIT + value + MS + 'flex-line-pack' + replace(value, /align-content|flex-|-self/, '') + value\n\t\t// flex-shrink\n\t\tcase 5548:\n\t\t\treturn WEBKIT + value + MS + replace(value, 'shrink', 'negative') + value\n\t\t// flex-basis\n\t\tcase 5292:\n\t\t\treturn WEBKIT + value + MS + replace(value, 'basis', 'preferred-size') + value\n\t\t// flex-grow\n\t\tcase 6060:\n\t\t\treturn WEBKIT + 'box-' + replace(value, '-grow', '') + WEBKIT + value + MS + replace(value, 'grow', 'positive') + value\n\t\t// transition\n\t\tcase 4554:\n\t\t\treturn WEBKIT + replace(value, /([^-])(transform)/g, '$1' + WEBKIT + '$2') + value\n\t\t// cursor\n\t\tcase 6187:\n\t\t\treturn replace(replace(replace(value, /(zoom-|grab)/, WEBKIT + '$1'), /(image-set)/, WEBKIT + '$1'), value, '') + value\n\t\t// background, background-image\n\t\tcase 5495: case 3959:\n\t\t\treturn replace(value, /(image-set\\([^]*)/, WEBKIT + '$1' + '$`$1')\n\t\t// justify-content\n\t\tcase 4968:\n\t\t\treturn replace(replace(value, /(.+:)(flex-)?(.*)/, WEBKIT + 'box-pack:$3' + MS + 'flex-pack:$3'), /s.+-b[^;]+/, 'justify') + WEBKIT + value + value\n\t\t// (margin|padding)-inline-(start|end)\n\t\tcase 4095: case 3583: case 4068: case 2532:\n\t\t\treturn replace(value, /(.+)-inline(.+)/, WEBKIT + '$1$2') + value\n\t\t// (min|max)?(width|height|inline-size|block-size)\n\t\tcase 8116: case 7059: case 5753: case 5535:\n\t\tcase 5445: case 5701: case 4933: case 4677:\n\t\tcase 5533: case 5789: case 5021: case 4765:\n\t\t\t// stretch, max-content, min-content, fill-available\n\t\t\tif (strlen(value) - 1 - length > 6)\n\t\t\t\tswitch (charat(value, length + 1)) {\n\t\t\t\t\t// (m)ax-content, (m)in-content\n\t\t\t\t\tcase 109:\n\t\t\t\t\t\t// -\n\t\t\t\t\t\tif (charat(value, length + 4) !== 45)\n\t\t\t\t\t\t\tbreak\n\t\t\t\t\t// (f)ill-available, (f)it-content\n\t\t\t\t\tcase 102:\n\t\t\t\t\t\treturn replace(value, /(.+:)(.+)-([^]+)/, '$1' + WEBKIT + '$2-$3' + '$1' + MOZ + (charat(value, length + 3) == 108 ? '$3' : '$2-$3')) + value\n\t\t\t\t\t// (s)tretch\n\t\t\t\t\tcase 115:\n\t\t\t\t\t\treturn ~indexof(value, 'stretch') ? prefix(replace(value, 'stretch', 'fill-available'), length) + value : value\n\t\t\t\t}\n\t\t\tbreak\n\t\t// position: sticky\n\t\tcase 4949:\n\t\t\t// (s)ticky?\n\t\t\tif (charat(value, length + 1) !== 115)\n\t\t\t\tbreak\n\t\t// display: (flex|inline-flex)\n\t\tcase 6444:\n\t\t\tswitch (charat(value, strlen(value) - 3 - (~indexof(value, '!important') && 10))) {\n\t\t\t\t// stic(k)y\n\t\t\t\tcase 107:\n\t\t\t\t\treturn replace(value, ':', ':' + WEBKIT) + value\n\t\t\t\t// (inline-)?fl(e)x\n\t\t\t\tcase 101:\n\t\t\t\t\treturn replace(value, /(.+:)([^;!]+)(;|!.+)?/, '$1' + WEBKIT + (charat(value, 14) === 45 ? 'inline-' : '') + 'box$3' + '$1' + WEBKIT + '$2$3' + '$1' + MS + '$2box$3') + value\n\t\t\t}\n\t\t\tbreak\n\t\t// writing-mode\n\t\tcase 5936:\n\t\t\tswitch (charat(value, length + 11)) {\n\t\t\t\t// vertical-l(r)\n\t\t\t\tcase 114:\n\t\t\t\t\treturn WEBKIT + value + MS + replace(value, /[svh]\\w+-[tblr]{2}/, 'tb') + value\n\t\t\t\t// vertical-r(l)\n\t\t\t\tcase 108:\n\t\t\t\t\treturn WEBKIT + value + MS + replace(value, /[svh]\\w+-[tblr]{2}/, 'tb-rl') + value\n\t\t\t\t// horizontal(-)tb\n\t\t\t\tcase 45:\n\t\t\t\t\treturn WEBKIT + value + MS + replace(value, /[svh]\\w+-[tblr]{2}/, 'lr') + value\n\t\t\t}\n\n\t\t\treturn WEBKIT + value + MS + value + value\n\t}\n\n\treturn value\n}\n","import {MS, MOZ, WEBKIT, RULESET, KEYFRAMES, DECLARATION} from './Enum.js'\nimport {match, charat, substr, strlen, sizeof, replace, combine} from './Utility.js'\nimport {copy, tokenize} from './Tokenizer.js'\nimport {serialize} from './Serializer.js'\nimport {prefix} from './Prefixer.js'\n\n/**\n * @param {function[]} collection\n * @return {function}\n */\nexport function middleware (collection) {\n\tvar length = sizeof(collection)\n\n\treturn function (element, index, children, callback) {\n\t\tvar output = ''\n\n\t\tfor (var i = 0; i < length; i++)\n\t\t\toutput += collection[i](element, index, children, callback) || ''\n\n\t\treturn output\n\t}\n}\n\n/**\n * @param {function} callback\n * @return {function}\n */\nexport function rulesheet (callback) {\n\treturn function (element) {\n\t\tif (!element.root)\n\t\t\tif (element = element.return)\n\t\t\t\tcallback(element)\n\t}\n}\n\n/**\n * @param {object} element\n * @param {number} index\n * @param {object[]} children\n * @param {function} callback\n */\nexport function prefixer (element, index, children, callback) {\n\tif (!element.return)\n\t\tswitch (element.type) {\n\t\t\tcase DECLARATION: element.return = prefix(element.value, element.length)\n\t\t\t\tbreak\n\t\t\tcase KEYFRAMES:\n\t\t\t\treturn serialize([copy(replace(element.value, '@', '@' + WEBKIT), element, '')], callback)\n\t\t\tcase RULESET:\n\t\t\t\tif (element.length)\n\t\t\t\t\treturn combine(element.props, function (value) {\n\t\t\t\t\t\tswitch (match(value, /(::plac\\w+|:read-\\w+)/)) {\n\t\t\t\t\t\t\t// :read-(only|write)\n\t\t\t\t\t\t\tcase ':read-only': case ':read-write':\n\t\t\t\t\t\t\t\treturn serialize([copy(replace(value, /:(read-\\w+)/, ':' + MOZ + '$1'), element, '')], callback)\n\t\t\t\t\t\t\t// :placeholder\n\t\t\t\t\t\t\tcase '::placeholder':\n\t\t\t\t\t\t\t\treturn serialize([\n\t\t\t\t\t\t\t\t\tcopy(replace(value, /:(plac\\w+)/, ':' + WEBKIT + 'input-$1'), element, ''),\n\t\t\t\t\t\t\t\t\tcopy(replace(value, /:(plac\\w+)/, ':' + MOZ + '$1'), element, ''),\n\t\t\t\t\t\t\t\t\tcopy(replace(value, /:(plac\\w+)/, MS + 'input-$1'), element, '')\n\t\t\t\t\t\t\t\t], callback)\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\treturn ''\n\t\t\t\t\t})\n\t\t}\n}\n\n/**\n * @param {object} element\n * @param {number} index\n * @param {object[]} children\n */\nexport function namespace (element) {\n\tswitch (element.type) {\n\t\tcase RULESET:\n\t\t\telement.props = element.props.map(function (value) {\n\t\t\t\treturn combine(tokenize(value), function (value, index, children) {\n\t\t\t\t\tswitch (charat(value, 0)) {\n\t\t\t\t\t\t// \\f\n\t\t\t\t\t\tcase 12:\n\t\t\t\t\t\t\treturn substr(value, 1, strlen(value))\n\t\t\t\t\t\t// \\0 ( + > ~\n\t\t\t\t\t\tcase 0: case 40: case 43: case 62: case 126:\n\t\t\t\t\t\t\treturn value\n\t\t\t\t\t\t// :\n\t\t\t\t\t\tcase 58:\n\t\t\t\t\t\t\tif (children[++index] === 'global')\n\t\t\t\t\t\t\t\tchildren[index] = '', children[++index] = '\\f' + substr(children[index], index = 1, -1)\n\t\t\t\t\t\t// \\s\n\t\t\t\t\t\tcase 32:\n\t\t\t\t\t\t\treturn index === 1 ? '' : value\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\tswitch (index) {\n\t\t\t\t\t\t\t\tcase 0: element = value\n\t\t\t\t\t\t\t\t\treturn sizeof(children) > 1 ? '' : value\n\t\t\t\t\t\t\t\tcase index = sizeof(children) - 1: case 2:\n\t\t\t\t\t\t\t\t\treturn index === 2 ? value + element + element : value + element\n\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\treturn value\n\t\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t})\n\t}\n}\n","import {COMMENT, RULESET, DECLARATION} from './Enum.js'\nimport {abs, trim, from, sizeof, strlen, substr, append, replace} from './Utility.js'\nimport {node, char, prev, next, peek, caret, alloc, dealloc, delimit, whitespace, escaping, identifier, commenter} from './Tokenizer.js'\n\n/**\n * @param {string} value\n * @return {object[]}\n */\nexport function compile (value) {\n\treturn dealloc(parse('', null, null, null, [''], value = alloc(value), 0, [0], value))\n}\n\n/**\n * @param {string} value\n * @param {object} root\n * @param {object?} parent\n * @param {string[]} rule\n * @param {string[]} rules\n * @param {string[]} rulesets\n * @param {number[]} pseudo\n * @param {number[]} points\n * @param {string[]} declarations\n * @return {object}\n */\nexport function parse (value, root, parent, rule, rules, rulesets, pseudo, points, declarations) {\n\tvar index = 0\n\tvar offset = 0\n\tvar length = pseudo\n\tvar atrule = 0\n\tvar property = 0\n\tvar previous = 0\n\tvar variable = 1\n\tvar scanning = 1\n\tvar ampersand = 1\n\tvar character = 0\n\tvar type = ''\n\tvar props = rules\n\tvar children = rulesets\n\tvar reference = rule\n\tvar characters = type\n\n\twhile (scanning)\n\t\tswitch (previous = character, character = next()) {\n\t\t\t// \" ' [ (\n\t\t\tcase 34: case 39: case 91: case 40:\n\t\t\t\tcharacters += delimit(character)\n\t\t\t\tbreak\n\t\t\t// \\t \\n \\r \\s\n\t\t\tcase 9: case 10: case 13: case 32:\n\t\t\t\tcharacters += whitespace(previous)\n\t\t\t\tbreak\n\t\t\t// \\\n\t\t\tcase 92:\n\t\t\t\tcharacters += escaping(caret() - 1, 7)\n\t\t\t\tcontinue\n\t\t\t// /\n\t\t\tcase 47:\n\t\t\t\tswitch (peek()) {\n\t\t\t\t\tcase 42: case 47:\n\t\t\t\t\t\tappend(comment(commenter(next(), caret()), root, parent), declarations)\n\t\t\t\t\t\tbreak\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tcharacters += '/'\n\t\t\t\t}\n\t\t\t\tbreak\n\t\t\t// {\n\t\t\tcase 123 * variable:\n\t\t\t\tpoints[index++] = strlen(characters) * ampersand\n\t\t\t// } ; \\0\n\t\t\tcase 125 * variable: case 59: case 0:\n\t\t\t\tswitch (character) {\n\t\t\t\t\t// \\0 }\n\t\t\t\t\tcase 0: case 125: scanning = 0\n\t\t\t\t\t// ;\n\t\t\t\t\tcase 59 + offset:\n\t\t\t\t\t\tif (property > 0 && (strlen(characters) - length))\n\t\t\t\t\t\t\tappend(property > 32 ? declaration(characters + ';', rule, parent, length - 1) : declaration(replace(characters, ' ', '') + ';', rule, parent, length - 2), declarations)\n\t\t\t\t\t\tbreak\n\t\t\t\t\t// @ ;\n\t\t\t\t\tcase 59: characters += ';'\n\t\t\t\t\t// { rule/at-rule\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tappend(reference = ruleset(characters, root, parent, index, offset, rules, points, type, props = [], children = [], length), rulesets)\n\n\t\t\t\t\t\tif (character === 123)\n\t\t\t\t\t\t\tif (offset === 0)\n\t\t\t\t\t\t\t\tparse(characters, root, reference, reference, props, rulesets, length, points, children)\n\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t\tswitch (atrule) {\n\t\t\t\t\t\t\t\t\t// d m s\n\t\t\t\t\t\t\t\t\tcase 100: case 109: case 115:\n\t\t\t\t\t\t\t\t\t\tparse(value, reference, reference, rule && append(ruleset(value, reference, reference, 0, 0, rules, points, type, rules, props = [], length), children), rules, children, length, points, rule ? props : children)\n\t\t\t\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\t\tparse(characters, reference, reference, reference, [''], children, length, points, children)\n\t\t\t\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tindex = offset = property = 0, variable = ampersand = 1, type = characters = '', length = pseudo\n\t\t\t\tbreak\n\t\t\t// :\n\t\t\tcase 58:\n\t\t\t\tlength = 1 + strlen(characters), property = previous\n\t\t\tdefault:\n\t\t\t\tif (variable < 1)\n\t\t\t\t\tif (character == 123)\n\t\t\t\t\t\t--variable\n\t\t\t\t\telse if (character == 125 && variable++ == 0 && prev() == 125)\n\t\t\t\t\t\tcontinue\n\n\t\t\t\tswitch (characters += from(character), character * variable) {\n\t\t\t\t\t// &\n\t\t\t\t\tcase 38:\n\t\t\t\t\t\tampersand = offset > 0 ? 1 : (characters += '\\f', -1)\n\t\t\t\t\t\tbreak\n\t\t\t\t\t// ,\n\t\t\t\t\tcase 44:\n\t\t\t\t\t\tpoints[index++] = (strlen(characters) - 1) * ampersand, ampersand = 1\n\t\t\t\t\t\tbreak\n\t\t\t\t\t// @\n\t\t\t\t\tcase 64:\n\t\t\t\t\t\t// -\n\t\t\t\t\t\tif (peek() === 45)\n\t\t\t\t\t\t\tcharacters += delimit(next())\n\n\t\t\t\t\t\tatrule = peek(), offset = strlen(type = characters += identifier(caret())), character++\n\t\t\t\t\t\tbreak\n\t\t\t\t\t// -\n\t\t\t\t\tcase 45:\n\t\t\t\t\t\tif (previous === 45 && strlen(characters) == 2)\n\t\t\t\t\t\t\tvariable = 0\n\t\t\t\t}\n\t\t}\n\n\treturn rulesets\n}\n\n/**\n * @param {string} value\n * @param {object} root\n * @param {object?} parent\n * @param {number} index\n * @param {number} offset\n * @param {string[]} rules\n * @param {number[]} points\n * @param {string} type\n * @param {string[]} props\n * @param {string[]} children\n * @param {number} length\n * @return {object}\n */\nexport function ruleset (value, root, parent, index, offset, rules, points, type, props, children, length) {\n\tvar post = offset - 1\n\tvar rule = offset === 0 ? rules : ['']\n\tvar size = sizeof(rule)\n\n\tfor (var i = 0, j = 0, k = 0; i < index; ++i)\n\t\tfor (var x = 0, y = substr(value, post + 1, post = abs(j = points[i])), z = value; x < size; ++x)\n\t\t\tif (z = trim(j > 0 ? rule[x] + ' ' + y : replace(y, /&\\f/g, rule[x])))\n\t\t\t\tprops[k++] = z\n\n\treturn node(value, root, parent, offset === 0 ? RULESET : type, props, children, length)\n}\n\n/**\n * @param {number} value\n * @param {object} root\n * @param {object?} parent\n * @return {object}\n */\nexport function comment (value, root, parent) {\n\treturn node(value, root, parent, COMMENT, from(char()), substr(value, 2, -2), 0)\n}\n\n/**\n * @param {string} value\n * @param {object} root\n * @param {object?} parent\n * @param {number} length\n * @return {object}\n */\nexport function declaration (value, root, parent, length) {\n\treturn node(value, root, parent, DECLARATION, substr(value, 0, length), substr(value, length + 1, -1), length)\n}\n","import {IMPORT, COMMENT, RULESET, DECLARATION} from './Enum.js'\nimport {strlen, sizeof} from './Utility.js'\n\n/**\n * @param {object[]} children\n * @param {function} callback\n * @return {string}\n */\nexport function serialize (children, callback) {\n\tvar output = ''\n\tvar length = sizeof(children)\n\n\tfor (var i = 0; i < length; i++)\n\t\toutput += callback(children[i], i, children, callback) || ''\n\n\treturn output\n}\n\n/**\n * @param {object} element\n * @param {number} index\n * @param {object[]} children\n * @param {function} callback\n * @return {string}\n */\nexport function stringify (element, index, children, callback) {\n\tswitch (element.type) {\n\t\tcase IMPORT: case DECLARATION: return element.return = element.return || element.value\n\t\tcase COMMENT: return ''\n\t\tcase RULESET: element.value = element.props.join(',')\n\t}\n\n\treturn strlen(children = serialize(element.children, callback)) ? element.return = element.value + '{' + children + '}' : ''\n}\n","import {from, trim, charat, strlen, substr, append} from './Utility.js'\n\nexport var line = 1\nexport var column = 1\nexport var length = 0\nexport var position = 0\nexport var character = 0\nexport var characters = ''\n\n/**\n * @param {string} value\n * @param {object} root\n * @param {object?} parent\n * @param {string} type\n * @param {string[]} props\n * @param {object[]} children\n * @param {number} length\n */\nexport function node (value, root, parent, type, props, children, length) {\n\treturn {value: value, root: root, parent: parent, type: type, props: props, children: children, line: line, column: column, length: length, return: ''}\n}\n\n/**\n * @param {string} value\n * @param {object} root\n * @param {string} type\n */\nexport function copy (value, root, type) {\n\treturn node(value, root.root, root.parent, type, root.props, root.children, 0)\n}\n\n/**\n * @return {number}\n */\nexport function char () {\n\treturn character\n}\n\n/**\n * @return {number}\n */\nexport function prev () {\n\tcharacter = position > 0 ? charat(characters, --position) : 0\n\n\tif (column--, character === 10)\n\t\tcolumn = 1, line--\n\n\treturn character\n}\n\n/**\n * @return {number}\n */\nexport function next () {\n\tcharacter = position < length ? charat(characters, position++) : 0\n\n\tif (column++, character === 10)\n\t\tcolumn = 1, line++\n\n\treturn character\n}\n\n/**\n * @return {number}\n */\nexport function peek () {\n\treturn charat(characters, position)\n}\n\n/**\n * @return {number}\n */\nexport function caret () {\n\treturn position\n}\n\n/**\n * @param {number} begin\n * @param {number} end\n * @return {string}\n */\nexport function slice (begin, end) {\n\treturn substr(characters, begin, end)\n}\n\n/**\n * @param {number} type\n * @return {number}\n */\nexport function token (type) {\n\tswitch (type) {\n\t\t// \\0 \\t \\n \\r \\s whitespace token\n\t\tcase 0: case 9: case 10: case 13: case 32:\n\t\t\treturn 5\n\t\t// ! + , / > @ ~ isolate token\n\t\tcase 33: case 43: case 44: case 47: case 62: case 64: case 126:\n\t\t// ; { } breakpoint token\n\t\tcase 59: case 123: case 125:\n\t\t\treturn 4\n\t\t// : accompanied token\n\t\tcase 58:\n\t\t\treturn 3\n\t\t// \" ' ( [ opening delimit token\n\t\tcase 34: case 39: case 40: case 91:\n\t\t\treturn 2\n\t\t// ) ] closing delimit token\n\t\tcase 41: case 93:\n\t\t\treturn 1\n\t}\n\n\treturn 0\n}\n\n/**\n * @param {string} value\n * @return {any[]}\n */\nexport function alloc (value) {\n\treturn line = column = 1, length = strlen(characters = value), position = 0, []\n}\n\n/**\n * @param {any} value\n * @return {any}\n */\nexport function dealloc (value) {\n\treturn characters = '', value\n}\n\n/**\n * @param {number} type\n * @return {string}\n */\nexport function delimit (type) {\n\treturn trim(slice(position - 1, delimiter(type === 91 ? type + 2 : type === 40 ? type + 1 : type)))\n}\n\n/**\n * @param {string} value\n * @return {string[]}\n */\nexport function tokenize (value) {\n\treturn dealloc(tokenizer(alloc(value)))\n}\n\n/**\n * @param {number} type\n * @return {string}\n */\nexport function whitespace (type) {\n\twhile (character = peek())\n\t\tif (character < 33)\n\t\t\tnext()\n\t\telse\n\t\t\tbreak\n\n\treturn token(type) > 2 || token(character) > 3 ? '' : ' '\n}\n\n/**\n * @param {string[]} children\n * @return {string[]}\n */\nexport function tokenizer (children) {\n\twhile (next())\n\t\tswitch (token(character)) {\n\t\t\tcase 0: append(identifier(position - 1), children)\n\t\t\t\tbreak\n\t\t\tcase 2: append(delimit(character), children)\n\t\t\t\tbreak\n\t\t\tdefault: append(from(character), children)\n\t\t}\n\n\treturn children\n}\n\n/**\n * @param {number} index\n * @param {number} count\n * @return {string}\n */\nexport function escaping (index, count) {\n\twhile (--count && next())\n\t\t// not 0-9 A-F a-f\n\t\tif (character < 48 || character > 102 || (character > 57 && character < 65) || (character > 70 && character < 97))\n\t\t\tbreak\n\n\treturn slice(index, caret() + (count < 6 && peek() == 32 && next() == 32))\n}\n\n/**\n * @param {number} type\n * @return {number}\n */\nexport function delimiter (type) {\n\twhile (next())\n\t\tswitch (character) {\n\t\t\t// ] ) \" '\n\t\t\tcase type:\n\t\t\t\treturn position\n\t\t\t// \" '\n\t\t\tcase 34: case 39:\n\t\t\t\treturn delimiter(type === 34 || type === 39 ? type : character)\n\t\t\t// (\n\t\t\tcase 40:\n\t\t\t\tif (type === 41)\n\t\t\t\t\tdelimiter(type)\n\t\t\t\tbreak\n\t\t\t// \\\n\t\t\tcase 92:\n\t\t\t\tnext()\n\t\t\t\tbreak\n\t\t}\n\n\treturn position\n}\n\n/**\n * @param {number} type\n * @param {number} index\n * @return {number}\n */\nexport function commenter (type, index) {\n\twhile (next())\n\t\t// //\n\t\tif (type + character === 47 + 10)\n\t\t\tbreak\n\t\t// /*\n\t\telse if (type + character === 42 + 42 && peek() === 47)\n\t\t\tbreak\n\n\treturn '/*' + slice(index, position - 1) + '*' + from(type === 47 ? type : next())\n}\n\n/**\n * @param {number} index\n * @return {string}\n */\nexport function identifier (index) {\n\twhile (!token(peek()))\n\t\tnext()\n\n\treturn slice(index, position)\n}\n","/**\n * @param {number}\n * @return {number}\n */\nexport var abs = Math.abs\n\n/**\n * @param {number}\n * @return {string}\n */\nexport var from = String.fromCharCode\n\n/**\n * @param {string} value\n * @param {number} length\n * @return {number}\n */\nexport function hash (value, length) {\n\treturn (((((((length << 2) ^ charat(value, 0)) << 2) ^ charat(value, 1)) << 2) ^ charat(value, 2)) << 2) ^ charat(value, 3)\n}\n\n/**\n * @param {string} value\n * @return {string}\n */\nexport function trim (value) {\n\treturn value.trim()\n}\n\n/**\n * @param {string} value\n * @param {RegExp} pattern\n * @return {string?}\n */\nexport function match (value, pattern) {\n\treturn (value = pattern.exec(value)) ? value[0] : value\n}\n\n/**\n * @param {string} value\n * @param {(string|RegExp)} pattern\n * @param {string} replacement\n * @return {string}\n */\nexport function replace (value, pattern, replacement) {\n\treturn value.replace(pattern, replacement)\n}\n\n/**\n * @param {string} value\n * @param {string} value\n * @return {number}\n */\nexport function indexof (value, search) {\n\treturn value.indexOf(search)\n}\n\n/**\n * @param {string} value\n * @param {number} index\n * @return {number}\n */\nexport function charat (value, index) {\n\treturn value.charCodeAt(index) | 0\n}\n\n/**\n * @param {string} value\n * @param {number} begin\n * @param {number} end\n * @return {string}\n */\nexport function substr (value, begin, end) {\n\treturn value.slice(begin, end)\n}\n\n/**\n * @param {string} value\n * @return {number}\n */\nexport function strlen (value) {\n\treturn value.length\n}\n\n/**\n * @param {any[]} value\n * @return {number}\n */\nexport function sizeof (value) {\n\treturn value.length\n}\n\n/**\n * @param {any} value\n * @param {any[]} array\n * @return {any}\n */\nexport function append (value, array) {\n\treturn array.push(value), value\n}\n\n/**\n * @param {string[]} array\n * @param {function} callback\n * @return {string}\n */\nexport function combine (array, callback) {\n\treturn array.map(callback).join('')\n}\n"],"sourceRoot":""}