HEX
Server: Microsoft-IIS/8.5
System: Windows NT YDAWBH120 6.3 build 9600 (Windows Server 2012 R2 Standard Edition) AMD64
User: tentjecom_web (0)
PHP: 7.4.14
Disabled: NONE
Upload Files
File: D:/HostingSpaces/SBogers10/firetech.komma.pro/node_modules/uri-js/dist/es5/uri.all.js.map
{"version":3,"file":"uri.all.js","sources":["../../src/index.ts","../../src/schemes/urn-uuid.ts","../../src/schemes/urn.ts","../../src/schemes/mailto.ts","../../src/schemes/https.ts","../../src/schemes/http.ts","../../src/uri.ts","../../node_modules/punycode/punycode.es6.js","../../src/regexps-iri.ts","../../src/regexps-uri.ts","../../src/util.ts"],"sourcesContent":["import { SCHEMES } from \"./uri\";\n\nimport http from \"./schemes/http\";\nSCHEMES[\"http\"] = http;\n\nimport https from \"./schemes/https\";\nSCHEMES[\"https\"] = https;\n\nimport mailto from \"./schemes/mailto\";\nSCHEMES[\"mailto\"] = mailto;\n\nimport urn from \"./schemes/urn\";\nSCHEMES[\"urn\"] = urn;\n\nimport uuid from \"./schemes/urn-uuid\";\nSCHEMES[\"urn:uuid\"] = uuid;\n\nexport * from \"./uri\";\n","import { URIComponents, URIOptions } from \"../uri\";\nimport { SCHEMES } from \"../uri\";\n\nconst UUID = /^[0-9A-Fa-f]{8}(?:\\-[0-9A-Fa-f]{4}){3}\\-[0-9A-Fa-f]{12}$/;\n\n//RFC 4122\nexport default {\n\tscheme : \"urn:uuid\",\n\n\tparse : function (components:URIComponents, options:URIOptions):URIComponents {\n\t\tif (!options.tolerant && (!components.path || !components.path.match(UUID))) {\n\t\t\tcomponents.error = components.error || \"UUID is not valid.\";\n\t\t}\n\t\treturn components;\n\t},\n\n\tserialize : function (components:URIComponents, options:URIOptions):URIComponents {\n\t\t//ensure UUID is valid\n\t\tif (!options.tolerant && (!components.path || !components.path.match(UUID))) {\n\t\t\t//invalid UUIDs can not have this scheme\n\t\t\tcomponents.scheme = undefined;\n\t\t} else {\n\t\t\t//normalize UUID\n\t\t\tcomponents.path = (components.path || \"\").toLowerCase();\n\t\t}\n\n\t\treturn SCHEMES[\"urn\"].serialize(components, options);\n\t}\n};\n","import { URIComponents, URIOptions } from \"../uri\";\nimport { pctEncChar, SCHEMES } from \"../uri\";\n\nconst NID$ = \"(?:[0-9A-Za-z][0-9A-Za-z\\\\-]{1,31})\";\nconst PCT_ENCODED$ = \"(?:\\\\%[0-9A-Fa-f]{2})\";\nconst TRANS$$ = \"[0-9A-Za-z\\\\(\\\\)\\\\+\\\\,\\\\-\\\\.\\\\:\\\\=\\\\@\\\\;\\\\$\\\\_\\\\!\\\\*\\\\'\\\\/\\\\?\\\\#]\";\nconst NSS$ = \"(?:(?:\" + PCT_ENCODED$ + \"|\" + TRANS$$ + \")+)\";\nconst URN_SCHEME = new RegExp(\"^urn\\\\:(\" + NID$ + \")$\");\nconst URN_PATH = new RegExp(\"^(\" + NID$ + \")\\\\:(\" + NSS$ + \")$\");\nconst URN_PARSE = /^([^\\:]+)\\:(.*)/;\nconst URN_EXCLUDED = /[\\x00-\\x20\\\\\\\"\\&\\<\\>\\[\\]\\^\\`\\{\\|\\}\\~\\x7F-\\xFF]/g;\n\n//RFC 2141\nexport default {\n\tscheme : \"urn\",\n\n\tparse : function (components:URIComponents, options:URIOptions):URIComponents {\n\t\tconst matches = components.path && components.path.match(URN_PARSE);\n\n\t\tif (matches) {\n\t\t\tconst scheme = \"urn:\" + matches[1].toLowerCase();\n\t\t\tlet schemeHandler = SCHEMES[scheme];\n\n\t\t\t//in order to serialize properly,\n\t\t\t//every URN must have a serializer that calls the URN serializer\n\t\t\tif (!schemeHandler) {\n\t\t\t\t//create fake scheme handler\n\t\t\t\tschemeHandler = SCHEMES[scheme] = {\n\t\t\t\t\tscheme : scheme,\n\t\t\t\t\tparse : function (components:URIComponents, options:URIOptions):URIComponents {\n\t\t\t\t\t\treturn components;\n\t\t\t\t\t},\n\t\t\t\t\tserialize : SCHEMES[\"urn\"].serialize\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tcomponents.scheme = scheme;\n\t\t\tcomponents.path = matches[2];\n\n\t\t\tcomponents = schemeHandler.parse(components, options);\n\t\t} else {\n\t\t\tcomponents.error = components.error || \"URN can not be parsed.\";\n\t\t}\n\n\t\treturn components;\n\t},\n\n\tserialize : function (components:URIComponents, options:URIOptions):URIComponents {\n\t\tconst scheme = components.scheme || options.scheme;\n\n\t\tif (scheme && scheme !== \"urn\") {\n\t\t\tconst matches = scheme.match(URN_SCHEME) || [\"urn:\" + scheme, scheme];\n\t\t\tcomponents.scheme = \"urn\";\n\t\t\tcomponents.path = matches[1] + \":\" + (components.path ? components.path.replace(URN_EXCLUDED, pctEncChar) : \"\");\n\t\t}\n\n\t\treturn components;\n\t}\n};\n","import { URIComponents, URIOptions } from \"../uri\";\nimport { pctEncChar, pctDecChars, unescapeComponent } from \"../uri\";\nimport punycode from \"punycode\";\nimport { merge, subexp, toUpperCase, toArray } from \"../util\";\n\nexport interface MailtoHeaders {\n\t[hfname:string]:string\n}\n\nexport interface MailtoComponents extends URIComponents {\n\tto:Array<string>,\n\theaders?:MailtoHeaders,\n\tsubject?:string,\n\tbody?:string\n}\n\nconst O:MailtoHeaders = {};\nconst isIRI = true;\n\n//RFC 3986\nconst UNRESERVED$$ = \"[A-Za-z0-9\\\\-\\\\.\\\\_\\\\~\" + (isIRI ? \"\\\\xA0-\\\\u200D\\\\u2010-\\\\u2029\\\\u202F-\\\\uD7FF\\\\uF900-\\\\uFDCF\\\\uFDF0-\\\\uFFEF\" : \"\") + \"]\";\nconst HEXDIG$$ = \"[0-9A-Fa-f]\";  //case-insensitive\nconst PCT_ENCODED$ = subexp(subexp(\"%[EFef]\" + HEXDIG$$ + \"%\" + HEXDIG$$ + HEXDIG$$ + \"%\" + HEXDIG$$ + HEXDIG$$) + \"|\" + subexp(\"%[89A-Fa-f]\" + HEXDIG$$ + \"%\" + HEXDIG$$ + HEXDIG$$) + \"|\" + subexp(\"%\" + HEXDIG$$ + HEXDIG$$));  //expanded\n\n//RFC 5322, except these symbols as per RFC 6068: @ : / ? # [ ] & ; =\n//const ATEXT$$ = \"[A-Za-z0-9\\\\!\\\\#\\\\$\\\\%\\\\&\\\\'\\\\*\\\\+\\\\-\\\\/\\\\=\\\\?\\\\^\\\\_\\\\`\\\\{\\\\|\\\\}\\\\~]\";\n//const WSP$$ = \"[\\\\x20\\\\x09]\";\n//const OBS_QTEXT$$ = \"[\\\\x01-\\\\x08\\\\x0B\\\\x0C\\\\x0E-\\\\x1F\\\\x7F]\";  //(%d1-8 / %d11-12 / %d14-31 / %d127)\n//const QTEXT$$ = merge(\"[\\\\x21\\\\x23-\\\\x5B\\\\x5D-\\\\x7E]\", OBS_QTEXT$$);  //%d33 / %d35-91 / %d93-126 / obs-qtext\n//const VCHAR$$ = \"[\\\\x21-\\\\x7E]\";\n//const WSP$$ = \"[\\\\x20\\\\x09]\";\n//const OBS_QP$ = subexp(\"\\\\\\\\\" + merge(\"[\\\\x00\\\\x0D\\\\x0A]\", OBS_QTEXT$$));  //%d0 / CR / LF / obs-qtext\n//const FWS$ = subexp(subexp(WSP$$ + \"*\" + \"\\\\x0D\\\\x0A\") + \"?\" + WSP$$ + \"+\");\n//const QUOTED_PAIR$ = subexp(subexp(\"\\\\\\\\\" + subexp(VCHAR$$ + \"|\" + WSP$$)) + \"|\" + OBS_QP$);\n//const QUOTED_STRING$ = subexp('\\\\\"' + subexp(FWS$ + \"?\" + QCONTENT$) + \"*\" + FWS$ + \"?\" + '\\\\\"');\nconst ATEXT$$ = \"[A-Za-z0-9\\\\!\\\\$\\\\%\\\\'\\\\*\\\\+\\\\-\\\\^\\\\_\\\\`\\\\{\\\\|\\\\}\\\\~]\";\nconst QTEXT$$ = \"[\\\\!\\\\$\\\\%\\\\'\\\\(\\\\)\\\\*\\\\+\\\\,\\\\-\\\\.0-9\\\\<\\\\>A-Z\\\\x5E-\\\\x7E]\";\nconst VCHAR$$ = merge(QTEXT$$, \"[\\\\\\\"\\\\\\\\]\");\nconst DOT_ATOM_TEXT$ = subexp(ATEXT$$ + \"+\" + subexp(\"\\\\.\" + ATEXT$$ + \"+\") + \"*\");\nconst QUOTED_PAIR$ = subexp(\"\\\\\\\\\" + VCHAR$$);\nconst QCONTENT$ = subexp(QTEXT$$ + \"|\" + QUOTED_PAIR$);\nconst QUOTED_STRING$ = subexp('\\\\\"' + QCONTENT$ + \"*\" + '\\\\\"');\n\n//RFC 6068\nconst DTEXT_NO_OBS$$ = \"[\\\\x21-\\\\x5A\\\\x5E-\\\\x7E]\";  //%d33-90 / %d94-126\nconst SOME_DELIMS$$ = \"[\\\\!\\\\$\\\\'\\\\(\\\\)\\\\*\\\\+\\\\,\\\\;\\\\:\\\\@]\";\nconst QCHAR$ = subexp(UNRESERVED$$ + \"|\" + PCT_ENCODED$ + \"|\" + SOME_DELIMS$$);\nconst DOMAIN$ = subexp(DOT_ATOM_TEXT$ + \"|\" + \"\\\\[\" + DTEXT_NO_OBS$$ + \"*\" + \"\\\\]\");\nconst LOCAL_PART$ = subexp(DOT_ATOM_TEXT$ + \"|\" + QUOTED_STRING$);\nconst ADDR_SPEC$ = subexp(LOCAL_PART$ + \"\\\\@\" + DOMAIN$);\nconst TO$ = subexp(ADDR_SPEC$ + subexp(\"\\\\,\" + ADDR_SPEC$) + \"*\");\nconst HFNAME$ = subexp(QCHAR$ + \"*\");\nconst HFVALUE$ = HFNAME$;\nconst HFIELD$ = subexp(HFNAME$ + \"\\\\=\" + HFVALUE$);\nconst HFIELDS2$ = subexp(HFIELD$ + subexp(\"\\\\&\" + HFIELD$) + \"*\");\nconst HFIELDS$ = subexp(\"\\\\?\" + HFIELDS2$);\nconst MAILTO_URI = new RegExp(\"^mailto\\\\:\" + TO$ + \"?\" + HFIELDS$ + \"?$\");\n\nconst UNRESERVED = new RegExp(UNRESERVED$$, \"g\");\nconst PCT_ENCODED = new RegExp(PCT_ENCODED$, \"g\");\nconst NOT_LOCAL_PART = new RegExp(merge(\"[^]\", ATEXT$$, \"[\\\\.]\", '[\\\\\"]', VCHAR$$), \"g\");\nconst NOT_DOMAIN = new RegExp(merge(\"[^]\", ATEXT$$, \"[\\\\.]\", \"[\\\\[]\", DTEXT_NO_OBS$$, \"[\\\\]]\"), \"g\");\nconst NOT_HFNAME = new RegExp(merge(\"[^]\", UNRESERVED$$, SOME_DELIMS$$), \"g\");\nconst NOT_HFVALUE = NOT_HFNAME;\nconst TO = new RegExp(\"^\" + TO$ + \"$\");\nconst HFIELDS = new RegExp(\"^\" + HFIELDS2$ + \"$\");\n\nfunction decodeUnreserved(str:string):string {\n\tconst decStr = pctDecChars(str);\n\treturn (!decStr.match(UNRESERVED) ? str : decStr);\n}\n\nexport default {\n\tscheme : \"mailto\",\n\n\tparse : function (components:MailtoComponents, options:URIOptions):MailtoComponents {\n\t\tconst to = components.to = (components.path ? components.path.split(\",\") : []);\n\t\tcomponents.path = undefined;\n\n\t\tif (components.query) {\n\t\t\tlet unknownHeaders = false\n\t\t\tconst headers:MailtoHeaders = {};\n\t\t\tconst hfields = components.query.split(\"&\");\n\n\t\t\tfor (let x = 0, xl = hfields.length; x < xl; ++x) {\n\t\t\t\tconst hfield = hfields[x].split(\"=\");\n\n\t\t\t\tswitch (hfield[0]) {\n\t\t\t\t\tcase \"to\":\n\t\t\t\t\t\tconst toAddrs = hfield[1].split(\",\");\n\t\t\t\t\t\tfor (let x = 0, xl = toAddrs.length; x < xl; ++x) {\n\t\t\t\t\t\t\tto.push(toAddrs[x]);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"subject\":\n\t\t\t\t\t\tcomponents.subject = unescapeComponent(hfield[1], options);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"body\":\n\t\t\t\t\t\tcomponents.body = unescapeComponent(hfield[1], options);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tunknownHeaders = true;\n\t\t\t\t\t\theaders[unescapeComponent(hfield[0], options)] = unescapeComponent(hfield[1], options);\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (unknownHeaders) components.headers = headers;\n\t\t}\n\n\t\tcomponents.query = undefined;\n\n\t\tfor (let x = 0, xl = to.length; x < xl; ++x) {\n\t\t\tconst addr = to[x].split(\"@\");\n\n\t\t\taddr[0] = unescapeComponent(addr[0]);\n\n\t\t\tif (!options.unicodeSupport) {\n\t\t\t\t//convert Unicode IDN -> ASCII IDN\n\t\t\t\ttry {\n\t\t\t\t\taddr[1] = punycode.toASCII(unescapeComponent(addr[1], options).toLowerCase());\n\t\t\t\t} catch (e) {\n\t\t\t\t\tcomponents.error = components.error || \"Email address's domain name can not be converted to ASCII via punycode: \" + e;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\taddr[1] = unescapeComponent(addr[1], options).toLowerCase();\n\t\t\t}\n\n\t\t\tto[x] = addr.join(\"@\");\n\t\t}\n\n\t\treturn components;\n\t},\n\n\tserialize : function (components:MailtoComponents, options:URIOptions):URIComponents {\n\t\tconst to = toArray(components.to);\n\t\tif (to) {\n\t\t\tfor (let x = 0, xl = to.length; x < xl; ++x) {\n\t\t\t\tconst toAddr = String(to[x]);\n\t\t\t\tconst atIdx = toAddr.lastIndexOf(\"@\");\n\t\t\t\tconst localPart = (toAddr.slice(0, atIdx)).replace(PCT_ENCODED, decodeUnreserved).replace(PCT_ENCODED, toUpperCase).replace(NOT_LOCAL_PART, pctEncChar);\n\t\t\t\tlet domain = toAddr.slice(atIdx + 1);\n\n\t\t\t\t//convert IDN via punycode\n\t\t\t\ttry {\n\t\t\t\t\tdomain = (!options.iri ? punycode.toASCII(unescapeComponent(domain, options).toLowerCase()) : punycode.toUnicode(domain));\n\t\t\t\t} catch (e) {\n\t\t\t\t\tcomponents.error = components.error || \"Email address's domain name can not be converted to \" + (!options.iri ? \"ASCII\" : \"Unicode\") + \" via punycode: \" + e;\n\t\t\t\t}\n\n\t\t\t\tto[x] = localPart + \"@\" + domain;\n\t\t\t}\n\n\t\t\tcomponents.path = to.join(\",\");\n\t\t}\n\n\t\tconst headers = components.headers = components.headers || {};\n\n\t\tif (components.subject) headers[\"subject\"] = components.subject;\n\t\tif (components.body) headers[\"body\"] = components.body;\n\n\t\tconst fields = [];\n\t\tfor (const name in headers) {\n\t\t\tif (headers[name] !== O[name]) {\n\t\t\t\tfields.push(\n\t\t\t\t\tname.replace(PCT_ENCODED, decodeUnreserved).replace(PCT_ENCODED, toUpperCase).replace(NOT_HFNAME, pctEncChar) +\n\t\t\t\t\t\"=\" +\n\t\t\t\t\theaders[name].replace(PCT_ENCODED, decodeUnreserved).replace(PCT_ENCODED, toUpperCase).replace(NOT_HFVALUE, pctEncChar)\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t\tif (fields.length) {\n\t\t\tcomponents.query = fields.join(\"&\");\n\t\t}\n\n\t\treturn components;\n\t}\n}\n","import { URIComponents, URIOptions } from \"../uri\";\nimport http from \"./http\";\n\nexport default {\n\tscheme : \"https\",\n\tdomainHost : http.domainHost,\n\tparse : http.parse,\n\tserialize : http.serialize\n}\n","import { URIComponents, URIOptions } from \"../uri\";\n\nexport default {\n\tscheme : \"http\",\n\n\tdomainHost : true,\n\n\tparse : function (components:URIComponents, options:URIOptions):URIComponents {\n\t\t//report missing host\n\t\tif (!components.host) {\n\t\t\tcomponents.error = components.error || \"HTTP URIs must have a host.\";\n\t\t}\n\n\t\treturn components;\n\t},\n\n\tserialize : function (components:URIComponents, options:URIOptions):URIComponents {\n\t\t//normalize the default port\n\t\tif (components.port === (String(components.scheme).toLowerCase() !== \"https\" ? 80 : 443) || components.port === \"\") {\n\t\t\tcomponents.port = undefined;\n\t\t}\n\t\t\n\t\t//normalize the empty path\n\t\tif (!components.path) {\n\t\t\tcomponents.path = \"/\";\n\t\t}\n\n\t\t//NOTE: We do not parse query strings for HTTP URIs\n\t\t//as WWW Form Url Encoded query strings are part of the HTML4+ spec,\n\t\t//and not the HTTP spec.\n\n\t\treturn components;\n\t}\n};\n","/**\n * URI.js\n *\n * @fileoverview An RFC 3986 compliant, scheme extendable URI parsing/validating/resolving library for JavaScript.\n * @author <a href=\"mailto:gary.court@gmail.com\">Gary Court</a>\n * @see http://github.com/garycourt/uri-js\n */\n\n/**\n * Copyright 2011 Gary Court. All rights reserved.\n *\n * Redistribution and use in source and binary forms, with or without modification, are\n * permitted provided that the following conditions are met:\n *\n *    1. Redistributions of source code must retain the above copyright notice, this list of\n *       conditions and the following disclaimer.\n *\n *    2. Redistributions in binary form must reproduce the above copyright notice, this list\n *       of conditions and the following disclaimer in the documentation and/or other materials\n *       provided with the distribution.\n *\n * THIS SOFTWARE IS PROVIDED BY GARY COURT ``AS IS'' AND ANY EXPRESS OR IMPLIED\n * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND\n * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL GARY COURT OR\n * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\n * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR\n * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON\n * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING\n * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF\n * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n *\n * The views and conclusions contained in the software and documentation are those of the\n * authors and should not be interpreted as representing official policies, either expressed\n * or implied, of Gary Court.\n */\n\nimport URI_PROTOCOL from \"./regexps-uri\";\nimport IRI_PROTOCOL from \"./regexps-iri\";\nimport punycode from \"punycode\";\nimport { toUpperCase, typeOf } from \"./util\";\n\nexport interface URIComponents {\n\tscheme?:string,\n\tuserinfo?:string,\n\thost?:string,\n\tport?:number|string,\n\tpath?:string,\n\tquery?:string,\n\tfragment?:string,\n\treference?:string,\n\terror?:string\n}\n\nexport interface URIOptions {\n\tscheme?:string,\n\treference?:string,\n\ttolerant?:boolean,\n\tabsolutePath?:boolean,\n\tiri?:boolean,\n\tunicodeSupport?:boolean,\n\tdomainHost?:boolean\n}\n\nexport interface URISchemeHandler {\n\tscheme:string,\n\tparse(components:URIComponents, options:URIOptions):URIComponents,\n\tserialize(components:URIComponents, options:URIOptions):URIComponents,\n\tunicodeSupport?:boolean,\n\tdomainHost?:boolean,\n\tabsolutePath?:boolean\n}\n\nexport interface URIRegExps {\n\tNOT_SCHEME : RegExp,\n\tNOT_USERINFO : RegExp,\n\tNOT_HOST : RegExp,\n\tNOT_PATH : RegExp,\n\tNOT_PATH_NOSCHEME : RegExp,\n\tNOT_QUERY : RegExp,\n\tNOT_FRAGMENT : RegExp,\n\tESCAPE : RegExp,\n\tUNRESERVED : RegExp,\n\tOTHER_CHARS : RegExp,\n\tPCT_ENCODED : RegExp,\n\tIPV6ADDRESS : RegExp\n}\n\nexport const SCHEMES:{[scheme:string]:URISchemeHandler} = {};\n\nexport function pctEncChar(chr:string):string {\n\tconst c = chr.charCodeAt(0);\n\tlet e:string;\n\n\tif (c < 16) e = \"%0\" + c.toString(16).toUpperCase();\n\telse if (c < 128) e = \"%\" + c.toString(16).toUpperCase();\n\telse if (c < 2048) e = \"%\" + ((c >> 6) | 192).toString(16).toUpperCase() + \"%\" + ((c & 63) | 128).toString(16).toUpperCase();\n\telse e = \"%\" + ((c >> 12) | 224).toString(16).toUpperCase() + \"%\" + (((c >> 6) & 63) | 128).toString(16).toUpperCase() + \"%\" + ((c & 63) | 128).toString(16).toUpperCase();\n\n\treturn e;\n}\n\nexport function pctDecChars(str:string):string {\n\tlet newStr = \"\";\n\tlet i = 0;\n\tconst il = str.length;\n\n\twhile (i < il) {\n\t\tconst c = parseInt(str.substr(i + 1, 2), 16);\n\n\t\tif (c < 128) {\n\t\t\tnewStr += String.fromCharCode(c);\n\t\t\ti += 3;\n\t\t}\n\t\telse if (c >= 194 && c < 224) {\n\t\t\tif ((il - i) >= 6) {\n\t\t\t\tconst c2 = parseInt(str.substr(i + 4, 2), 16);\n\t\t\t\tnewStr += String.fromCharCode(((c & 31) << 6) | (c2 & 63));\n\t\t\t} else {\n\t\t\t\tnewStr += str.substr(i, 6);\n\t\t\t}\n\t\t\ti += 6;\n\t\t}\n\t\telse if (c >= 224) {\n\t\t\tif ((il - i) >= 9) {\n\t\t\t\tconst c2 = parseInt(str.substr(i + 4, 2), 16);\n\t\t\t\tconst c3 = parseInt(str.substr(i + 7, 2), 16);\n\t\t\t\tnewStr += String.fromCharCode(((c & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63));\n\t\t\t} else {\n\t\t\t\tnewStr += str.substr(i, 9);\n\t\t\t}\n\t\t\ti += 9;\n\t\t}\n\t\telse {\n\t\t\tnewStr += str.substr(i, 3);\n\t\t\ti += 3;\n\t\t}\n\t}\n\n\treturn newStr;\n}\n\nfunction _normalizeComponentEncoding(components:URIComponents, protocol:URIRegExps) {\n\tfunction decodeUnreserved(str:string):string {\n\t\tconst decStr = pctDecChars(str);\n\t\treturn (!decStr.match(protocol.UNRESERVED) ? str : decStr);\n\t}\n\n\tif (components.scheme) components.scheme = String(components.scheme).replace(protocol.PCT_ENCODED, decodeUnreserved).toLowerCase().replace(protocol.NOT_SCHEME, \"\");\n\tif (components.userinfo !== undefined) components.userinfo = String(components.userinfo).replace(protocol.PCT_ENCODED, decodeUnreserved).replace(protocol.NOT_USERINFO, pctEncChar).replace(protocol.PCT_ENCODED, toUpperCase);\n\tif (components.host !== undefined) components.host = String(components.host).replace(protocol.PCT_ENCODED, decodeUnreserved).toLowerCase().replace(protocol.NOT_HOST, pctEncChar).replace(protocol.PCT_ENCODED, toUpperCase);\n\tif (components.path !== undefined) components.path = String(components.path).replace(protocol.PCT_ENCODED, decodeUnreserved).replace((components.scheme ? protocol.NOT_PATH : protocol.NOT_PATH_NOSCHEME), pctEncChar).replace(protocol.PCT_ENCODED, toUpperCase);\n\tif (components.query !== undefined) components.query = String(components.query).replace(protocol.PCT_ENCODED, decodeUnreserved).replace(protocol.NOT_QUERY, pctEncChar).replace(protocol.PCT_ENCODED, toUpperCase);\n\tif (components.fragment !== undefined) components.fragment = String(components.fragment).replace(protocol.PCT_ENCODED, decodeUnreserved).replace(protocol.NOT_FRAGMENT, pctEncChar).replace(protocol.PCT_ENCODED, toUpperCase);\n\n\treturn components;\n};\n\nconst URI_PARSE = /^(?:([^:\\/?#]+):)?(?:\\/\\/((?:([^\\/?#@]*)@)?(\\[[\\dA-F:.]+\\]|[^\\/?#:]*)(?:\\:(\\d*))?))?([^?#]*)(?:\\?([^#]*))?(?:#((?:.|\\n|\\r)*))?/i;\nconst NO_MATCH_IS_UNDEFINED = (<RegExpMatchArray>(\"\").match(/(){0}/))[1] === undefined;\n\nexport function parse(uriString:string, options:URIOptions = {}):URIComponents {\n\tconst components:URIComponents = {};\n\tconst protocol = (options.iri !== false ? IRI_PROTOCOL : URI_PROTOCOL);\n\n\tif (options.reference === \"suffix\") uriString = (options.scheme ? options.scheme + \":\" : \"\") + \"//\" + uriString;\n\n\tconst matches = uriString.match(URI_PARSE);\n\n\tif (matches) {\n\t\tif (NO_MATCH_IS_UNDEFINED) {\n\t\t\t//store each component\n\t\t\tcomponents.scheme = matches[1];\n\t\t\tcomponents.userinfo = matches[3];\n\t\t\tcomponents.host = matches[4];\n\t\t\tcomponents.port = parseInt(matches[5], 10);\n\t\t\tcomponents.path = matches[6] || \"\";\n\t\t\tcomponents.query = matches[7];\n\t\t\tcomponents.fragment = matches[8];\n\n\t\t\t//fix port number\n\t\t\tif (isNaN(components.port)) {\n\t\t\t\tcomponents.port = matches[5];\n\t\t\t}\n\t\t} else {  //IE FIX for improper RegExp matching\n\t\t\t//store each component\n\t\t\tcomponents.scheme = matches[1] || undefined;\n\t\t\tcomponents.userinfo = (uriString.indexOf(\"@\") !== -1 ? matches[3] : undefined);\n\t\t\tcomponents.host = (uriString.indexOf(\"//\") !== -1 ? matches[4] : undefined);\n\t\t\tcomponents.port = parseInt(matches[5], 10);\n\t\t\tcomponents.path = matches[6] || \"\";\n\t\t\tcomponents.query = (uriString.indexOf(\"?\") !== -1 ? matches[7] : undefined);\n\t\t\tcomponents.fragment = (uriString.indexOf(\"#\") !== -1 ? matches[8] : undefined);\n\n\t\t\t//fix port number\n\t\t\tif (isNaN(components.port)) {\n\t\t\t\tcomponents.port = (uriString.match(/\\/\\/(?:.|\\n)*\\:(?:\\/|\\?|\\#|$)/) ? matches[4] : undefined);\n\t\t\t}\n\t\t}\n\n\t\t//strip brackets from IPv6 hosts\n\t\tif (components.host) {\n\t\t\tcomponents.host = components.host.replace(protocol.IPV6ADDRESS, \"$1\");\n\t\t}\n\n\t\t//determine reference type\n\t\tif (components.scheme === undefined && components.userinfo === undefined && components.host === undefined && components.port === undefined && !components.path && components.query === undefined) {\n\t\t\tcomponents.reference = \"same-document\";\n\t\t} else if (components.scheme === undefined) {\n\t\t\tcomponents.reference = \"relative\";\n\t\t} else if (components.fragment === undefined) {\n\t\t\tcomponents.reference = \"absolute\";\n\t\t} else {\n\t\t\tcomponents.reference = \"uri\";\n\t\t}\n\n\t\t//check for reference errors\n\t\tif (options.reference && options.reference !== \"suffix\" && options.reference !== components.reference) {\n\t\t\tcomponents.error = components.error || \"URI is not a \" + options.reference + \" reference.\";\n\t\t}\n\n\t\t//find scheme handler\n\t\tconst schemeHandler = SCHEMES[(options.scheme || components.scheme || \"\").toLowerCase()];\n\n\t\t//check if scheme can't handle IRIs\n\t\tif (!options.unicodeSupport && (!schemeHandler || !schemeHandler.unicodeSupport)) {\n\t\t\t//if host component is a domain name\n\t\t\tif (components.host && (options.domainHost || (schemeHandler && schemeHandler.domainHost))) {\n\t\t\t\t//convert Unicode IDN -> ASCII IDN\n\t\t\t\ttry {\n\t\t\t\t\tcomponents.host = punycode.toASCII(components.host.replace(protocol.PCT_ENCODED, pctDecChars).toLowerCase());\n\t\t\t\t} catch (e) {\n\t\t\t\t\tcomponents.error = components.error || \"Host's domain name can not be converted to ASCII via punycode: \" + e;\n\t\t\t\t}\n\t\t\t}\n\t\t\t//convert IRI -> URI\n\t\t\t_normalizeComponentEncoding(components, URI_PROTOCOL);\n\t\t} else {\n\t\t\t//normalize encodings\n\t\t\t_normalizeComponentEncoding(components, protocol);\n\t\t}\n\n\t\t//perform scheme specific parsing\n\t\tif (schemeHandler && schemeHandler.parse) {\n\t\t\tschemeHandler.parse(components, options);\n\t\t}\n\t} else {\n\t\tcomponents.error = components.error || \"URI can not be parsed.\";\n\t}\n\n\treturn components;\n};\n\nfunction _recomposeAuthority(components:URIComponents, options:URIOptions):string|undefined {\n\tconst protocol = (options.iri !== false ? IRI_PROTOCOL : URI_PROTOCOL);\n\tconst uriTokens:Array<string> = [];\n\n\tif (components.userinfo !== undefined) {\n\t\turiTokens.push(components.userinfo);\n\t\turiTokens.push(\"@\");\n\t}\n\n\tif (components.host !== undefined) {\n\t\t//ensure IPv6 addresses are bracketed\n\t\turiTokens.push(String(components.host).replace(protocol.IPV6ADDRESS, \"[$1]\"));\n\t}\n\n\tif (typeof components.port === \"number\") {\n\t\turiTokens.push(\":\");\n\t\turiTokens.push(components.port.toString(10));\n\t}\n\n\treturn uriTokens.length ? uriTokens.join(\"\") : undefined;\n};\n\nconst RDS1 = /^\\.\\.?\\//;\nconst RDS2 = /^\\/\\.(\\/|$)/;\nconst RDS3 = /^\\/\\.\\.(\\/|$)/;\nconst RDS4 = /^\\.\\.?$/;\nconst RDS5 = /^\\/?(?:.|\\n)*?(?=\\/|$)/;\n\nexport function removeDotSegments(input:string):string {\n\tconst output:Array<string> = [];\n\n\twhile (input.length) {\n\t\tif (input.match(RDS1)) {\n\t\t\tinput = input.replace(RDS1, \"\");\n\t\t} else if (input.match(RDS2)) {\n\t\t\tinput = input.replace(RDS2, \"/\");\n\t\t} else if (input.match(RDS3)) {\n\t\t\tinput = input.replace(RDS3, \"/\");\n\t\t\toutput.pop();\n\t\t} else if (input === \".\" || input === \"..\") {\n\t\t\tinput = \"\";\n\t\t} else {\n\t\t\tconst im = input.match(RDS5);\n\t\t\tif (im) {\n\t\t\t\tconst s = im[0];\n\t\t\t\tinput = input.slice(s.length);\n\t\t\t\toutput.push(s);\n\t\t\t} else {\n\t\t\t\tthrow new Error(\"Unexpected dot segment condition\");\n\t\t\t}\n\t\t}\n\t}\n\n\treturn output.join(\"\");\n};\n\nexport function serialize(components:URIComponents, options:URIOptions = {}):string {\n\tconst protocol = (options.iri ? IRI_PROTOCOL : URI_PROTOCOL);\n\tconst uriTokens:Array<string> = [];\n\n\t//find scheme handler\n\tconst schemeHandler = SCHEMES[(options.scheme || components.scheme || \"\").toLowerCase()];\n\n\t//perform scheme specific serialization\n\tif (schemeHandler && schemeHandler.serialize) schemeHandler.serialize(components, options);\n\n\tif (components.host) {\n\t\t//if host component is an IPv6 address\n\t\tif (protocol.IPV6ADDRESS.test(components.host)) {\n\t\t\t//TODO: normalize IPv6 address as per RFC 5952\n\t\t}\n\n\t\t//if host component is a domain name\n\t\telse if (options.domainHost || (schemeHandler && schemeHandler.domainHost)) {\n\t\t\t//convert IDN via punycode\n\t\t\ttry {\n\t\t\t\tcomponents.host = (!options.iri ? punycode.toASCII(components.host.replace(protocol.PCT_ENCODED, pctDecChars).toLowerCase()) : punycode.toUnicode(components.host));\n\t\t\t} catch (e) {\n\t\t\t\tcomponents.error = components.error || \"Host's domain name can not be converted to \" + (!options.iri ? \"ASCII\" : \"Unicode\") + \" via punycode: \" + e;\n\t\t\t}\n\t\t}\n\t}\n\n\t//normalize encoding\n\t_normalizeComponentEncoding(components, protocol);\n\n\tif (options.reference !== \"suffix\" && components.scheme) {\n\t\turiTokens.push(components.scheme);\n\t\turiTokens.push(\":\");\n\t}\n\n\tconst authority = _recomposeAuthority(components, options);\n\tif (authority !== undefined) {\n\t\tif (options.reference !== \"suffix\") {\n\t\t\turiTokens.push(\"//\");\n\t\t}\n\n\t\turiTokens.push(authority);\n\n\t\tif (components.path && components.path.charAt(0) !== \"/\") {\n\t\t\turiTokens.push(\"/\");\n\t\t}\n\t}\n\n\tif (components.path !== undefined) {\n\t\tlet s = components.path;\n\n\t\tif (!options.absolutePath && (!schemeHandler || !schemeHandler.absolutePath)) {\n\t\t\ts = removeDotSegments(s);\n\t\t}\n\n\t\tif (authority === undefined) {\n\t\t\ts = s.replace(/^\\/\\//, \"/%2F\");  //don't allow the path to start with \"//\"\n\t\t}\n\n\t\turiTokens.push(s);\n\t}\n\n\tif (components.query !== undefined) {\n\t\turiTokens.push(\"?\");\n\t\turiTokens.push(components.query);\n\t}\n\n\tif (components.fragment !== undefined) {\n\t\turiTokens.push(\"#\");\n\t\turiTokens.push(components.fragment);\n\t}\n\n\treturn uriTokens.join(\"\");  //merge tokens into a string\n};\n\nexport function resolveComponents(base:URIComponents, relative:URIComponents, options:URIOptions = {}, skipNormalization?:boolean):URIComponents {\n\tconst target:URIComponents = {};\n\n\tif (!skipNormalization) {\n\t\tbase = parse(serialize(base, options), options);  //normalize base components\n\t\trelative = parse(serialize(relative, options), options);  //normalize relative components\n\t}\n\toptions = options || {};\n\n\tif (!options.tolerant && relative.scheme) {\n\t\ttarget.scheme = relative.scheme;\n\t\t//target.authority = relative.authority;\n\t\ttarget.userinfo = relative.userinfo;\n\t\ttarget.host = relative.host;\n\t\ttarget.port = relative.port;\n\t\ttarget.path = removeDotSegments(relative.path || \"\");\n\t\ttarget.query = relative.query;\n\t} else {\n\t\tif (relative.userinfo !== undefined || relative.host !== undefined || relative.port !== undefined) {\n\t\t\t//target.authority = relative.authority;\n\t\t\ttarget.userinfo = relative.userinfo;\n\t\t\ttarget.host = relative.host;\n\t\t\ttarget.port = relative.port;\n\t\t\ttarget.path = removeDotSegments(relative.path || \"\");\n\t\t\ttarget.query = relative.query;\n\t\t} else {\n\t\t\tif (!relative.path) {\n\t\t\t\ttarget.path = base.path;\n\t\t\t\tif (relative.query !== undefined) {\n\t\t\t\t\ttarget.query = relative.query;\n\t\t\t\t} else {\n\t\t\t\t\ttarget.query = base.query;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (relative.path.charAt(0) === \"/\") {\n\t\t\t\t\ttarget.path = removeDotSegments(relative.path);\n\t\t\t\t} else {\n\t\t\t\t\tif ((base.userinfo !== undefined || base.host !== undefined || base.port !== undefined) && !base.path) {\n\t\t\t\t\t\ttarget.path = \"/\" + relative.path;\n\t\t\t\t\t} else if (!base.path) {\n\t\t\t\t\t\ttarget.path = relative.path;\n\t\t\t\t\t} else {\n\t\t\t\t\t\ttarget.path = base.path.slice(0, base.path.lastIndexOf(\"/\") + 1) + relative.path;\n\t\t\t\t\t}\n\t\t\t\t\ttarget.path = removeDotSegments(target.path);\n\t\t\t\t}\n\t\t\t\ttarget.query = relative.query;\n\t\t\t}\n\t\t\t//target.authority = base.authority;\n\t\t\ttarget.userinfo = base.userinfo;\n\t\t\ttarget.host = base.host;\n\t\t\ttarget.port = base.port;\n\t\t}\n\t\ttarget.scheme = base.scheme;\n\t}\n\n\ttarget.fragment = relative.fragment;\n\n\treturn target;\n};\n\nexport function resolve(baseURI:string, relativeURI:string, options?:URIOptions):string {\n\treturn serialize(resolveComponents(parse(baseURI, options), parse(relativeURI, options), options, true), options);\n};\n\nexport function normalize(uri:string, options?:URIOptions):string;\nexport function normalize(uri:URIComponents, options?:URIOptions):URIComponents;\nexport function normalize(uri:any, options?:URIOptions):any {\n\tif (typeof uri === \"string\") {\n\t\turi = serialize(parse(uri, options), options);\n\t} else if (typeOf(uri) === \"object\") {\n\t\turi = parse(serialize(<URIComponents>uri, options), options);\n\t}\n\n\treturn uri;\n};\n\nexport function equal(uriA:string, uriB:string, options?: URIOptions):boolean;\nexport function equal(uriA:URIComponents, uriB:URIComponents, options?:URIOptions):boolean;\nexport function equal(uriA:any, uriB:any, options?:URIOptions):boolean {\n\tif (typeof uriA === \"string\") {\n\t\turiA = serialize(parse(uriA, options), options);\n\t} else if (typeOf(uriA) === \"object\") {\n\t\turiA = serialize(<URIComponents>uriA, options);\n\t}\n\n\tif (typeof uriB === \"string\") {\n\t\turiB = serialize(parse(uriB, options), options);\n\t} else if (typeOf(uriB) === \"object\") {\n\t\turiB = serialize(<URIComponents>uriB, options);\n\t}\n\n\treturn uriA === uriB;\n};\n\nexport function escapeComponent(str:string, options?:URIOptions):string {\n\treturn str && str.toString().replace((!options || !options.iri ? URI_PROTOCOL.ESCAPE : IRI_PROTOCOL.ESCAPE), pctEncChar);\n};\n\nexport function unescapeComponent(str:string, options?:URIOptions):string {\n\treturn str && str.toString().replace((!options || !options.iri ? URI_PROTOCOL.PCT_ENCODED : IRI_PROTOCOL.PCT_ENCODED), pctDecChars);\n};\n","'use strict';\n\n/** Highest positive signed 32-bit float value */\nconst maxInt = 2147483647; // aka. 0x7FFFFFFF or 2^31-1\n\n/** Bootstring parameters */\nconst base = 36;\nconst tMin = 1;\nconst tMax = 26;\nconst skew = 38;\nconst damp = 700;\nconst initialBias = 72;\nconst initialN = 128; // 0x80\nconst delimiter = '-'; // '\\x2D'\n\n/** Regular expressions */\nconst regexPunycode = /^xn--/;\nconst regexNonASCII = /[^\\0-\\x7E]/; // non-ASCII chars\nconst regexSeparators = /[\\x2E\\u3002\\uFF0E\\uFF61]/g; // RFC 3490 separators\n\n/** Error messages */\nconst errors = {\n\t'overflow': 'Overflow: input needs wider integers to process',\n\t'not-basic': 'Illegal input >= 0x80 (not a basic code point)',\n\t'invalid-input': 'Invalid input'\n};\n\n/** Convenience shortcuts */\nconst baseMinusTMin = base - tMin;\nconst floor = Math.floor;\nconst stringFromCharCode = String.fromCharCode;\n\n/*--------------------------------------------------------------------------*/\n\n/**\n * A generic error utility function.\n * @private\n * @param {String} type The error type.\n * @returns {Error} Throws a `RangeError` with the applicable error message.\n */\nfunction error(type) {\n\tthrow new RangeError(errors[type]);\n}\n\n/**\n * A generic `Array#map` utility function.\n * @private\n * @param {Array} array The array to iterate over.\n * @param {Function} callback The function that gets called for every array\n * item.\n * @returns {Array} A new array of values returned by the callback function.\n */\nfunction map(array, fn) {\n\tconst result = [];\n\tlet length = array.length;\n\twhile (length--) {\n\t\tresult[length] = fn(array[length]);\n\t}\n\treturn result;\n}\n\n/**\n * A simple `Array#map`-like wrapper to work with domain name strings or email\n * addresses.\n * @private\n * @param {String} domain The domain name or email address.\n * @param {Function} callback The function that gets called for every\n * character.\n * @returns {Array} A new string of characters returned by the callback\n * function.\n */\nfunction mapDomain(string, fn) {\n\tconst parts = string.split('@');\n\tlet result = '';\n\tif (parts.length > 1) {\n\t\t// In email addresses, only the domain name should be punycoded. Leave\n\t\t// the local part (i.e. everything up to `@`) intact.\n\t\tresult = parts[0] + '@';\n\t\tstring = parts[1];\n\t}\n\t// Avoid `split(regex)` for IE8 compatibility. See #17.\n\tstring = string.replace(regexSeparators, '\\x2E');\n\tconst labels = string.split('.');\n\tconst encoded = map(labels, fn).join('.');\n\treturn result + encoded;\n}\n\n/**\n * Creates an array containing the numeric code points of each Unicode\n * character in the string. While JavaScript uses UCS-2 internally,\n * this function will convert a pair of surrogate halves (each of which\n * UCS-2 exposes as separate characters) into a single code point,\n * matching UTF-16.\n * @see `punycode.ucs2.encode`\n * @see <https://mathiasbynens.be/notes/javascript-encoding>\n * @memberOf punycode.ucs2\n * @name decode\n * @param {String} string The Unicode input string (UCS-2).\n * @returns {Array} The new array of code points.\n */\nfunction ucs2decode(string) {\n\tconst output = [];\n\tlet counter = 0;\n\tconst length = string.length;\n\twhile (counter < length) {\n\t\tconst value = string.charCodeAt(counter++);\n\t\tif (value >= 0xD800 && value <= 0xDBFF && counter < length) {\n\t\t\t// It's a high surrogate, and there is a next character.\n\t\t\tconst extra = string.charCodeAt(counter++);\n\t\t\tif ((extra & 0xFC00) == 0xDC00) { // Low surrogate.\n\t\t\t\toutput.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000);\n\t\t\t} else {\n\t\t\t\t// It's an unmatched surrogate; only append this code unit, in case the\n\t\t\t\t// next code unit is the high surrogate of a surrogate pair.\n\t\t\t\toutput.push(value);\n\t\t\t\tcounter--;\n\t\t\t}\n\t\t} else {\n\t\t\toutput.push(value);\n\t\t}\n\t}\n\treturn output;\n}\n\n/**\n * Creates a string based on an array of numeric code points.\n * @see `punycode.ucs2.decode`\n * @memberOf punycode.ucs2\n * @name encode\n * @param {Array} codePoints The array of numeric code points.\n * @returns {String} The new Unicode string (UCS-2).\n */\nconst ucs2encode = array => String.fromCodePoint(...array);\n\n/**\n * Converts a basic code point into a digit/integer.\n * @see `digitToBasic()`\n * @private\n * @param {Number} codePoint The basic numeric code point value.\n * @returns {Number} The numeric value of a basic code point (for use in\n * representing integers) in the range `0` to `base - 1`, or `base` if\n * the code point does not represent a value.\n */\nconst basicToDigit = function(codePoint) {\n\tif (codePoint - 0x30 < 0x0A) {\n\t\treturn codePoint - 0x16;\n\t}\n\tif (codePoint - 0x41 < 0x1A) {\n\t\treturn codePoint - 0x41;\n\t}\n\tif (codePoint - 0x61 < 0x1A) {\n\t\treturn codePoint - 0x61;\n\t}\n\treturn base;\n};\n\n/**\n * Converts a digit/integer into a basic code point.\n * @see `basicToDigit()`\n * @private\n * @param {Number} digit The numeric value of a basic code point.\n * @returns {Number} The basic code point whose value (when used for\n * representing integers) is `digit`, which needs to be in the range\n * `0` to `base - 1`. If `flag` is non-zero, the uppercase form is\n * used; else, the lowercase form is used. The behavior is undefined\n * if `flag` is non-zero and `digit` has no uppercase form.\n */\nconst digitToBasic = function(digit, flag) {\n\t//  0..25 map to ASCII a..z or A..Z\n\t// 26..35 map to ASCII 0..9\n\treturn digit + 22 + 75 * (digit < 26) - ((flag != 0) << 5);\n};\n\n/**\n * Bias adaptation function as per section 3.4 of RFC 3492.\n * https://tools.ietf.org/html/rfc3492#section-3.4\n * @private\n */\nconst adapt = function(delta, numPoints, firstTime) {\n\tlet k = 0;\n\tdelta = firstTime ? floor(delta / damp) : delta >> 1;\n\tdelta += floor(delta / numPoints);\n\tfor (/* no initialization */; delta > baseMinusTMin * tMax >> 1; k += base) {\n\t\tdelta = floor(delta / baseMinusTMin);\n\t}\n\treturn floor(k + (baseMinusTMin + 1) * delta / (delta + skew));\n};\n\n/**\n * Converts a Punycode string of ASCII-only symbols to a string of Unicode\n * symbols.\n * @memberOf punycode\n * @param {String} input The Punycode string of ASCII-only symbols.\n * @returns {String} The resulting string of Unicode symbols.\n */\nconst decode = function(input) {\n\t// Don't use UCS-2.\n\tconst output = [];\n\tconst inputLength = input.length;\n\tlet i = 0;\n\tlet n = initialN;\n\tlet bias = initialBias;\n\n\t// Handle the basic code points: let `basic` be the number of input code\n\t// points before the last delimiter, or `0` if there is none, then copy\n\t// the first basic code points to the output.\n\n\tlet basic = input.lastIndexOf(delimiter);\n\tif (basic < 0) {\n\t\tbasic = 0;\n\t}\n\n\tfor (let j = 0; j < basic; ++j) {\n\t\t// if it's not a basic code point\n\t\tif (input.charCodeAt(j) >= 0x80) {\n\t\t\terror('not-basic');\n\t\t}\n\t\toutput.push(input.charCodeAt(j));\n\t}\n\n\t// Main decoding loop: start just after the last delimiter if any basic code\n\t// points were copied; start at the beginning otherwise.\n\n\tfor (let index = basic > 0 ? basic + 1 : 0; index < inputLength; /* no final expression */) {\n\n\t\t// `index` is the index of the next character to be consumed.\n\t\t// Decode a generalized variable-length integer into `delta`,\n\t\t// which gets added to `i`. The overflow checking is easier\n\t\t// if we increase `i` as we go, then subtract off its starting\n\t\t// value at the end to obtain `delta`.\n\t\tlet oldi = i;\n\t\tfor (let w = 1, k = base; /* no condition */; k += base) {\n\n\t\t\tif (index >= inputLength) {\n\t\t\t\terror('invalid-input');\n\t\t\t}\n\n\t\t\tconst digit = basicToDigit(input.charCodeAt(index++));\n\n\t\t\tif (digit >= base || digit > floor((maxInt - i) / w)) {\n\t\t\t\terror('overflow');\n\t\t\t}\n\n\t\t\ti += digit * w;\n\t\t\tconst t = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias);\n\n\t\t\tif (digit < t) {\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tconst baseMinusT = base - t;\n\t\t\tif (w > floor(maxInt / baseMinusT)) {\n\t\t\t\terror('overflow');\n\t\t\t}\n\n\t\t\tw *= baseMinusT;\n\n\t\t}\n\n\t\tconst out = output.length + 1;\n\t\tbias = adapt(i - oldi, out, oldi == 0);\n\n\t\t// `i` was supposed to wrap around from `out` to `0`,\n\t\t// incrementing `n` each time, so we'll fix that now:\n\t\tif (floor(i / out) > maxInt - n) {\n\t\t\terror('overflow');\n\t\t}\n\n\t\tn += floor(i / out);\n\t\ti %= out;\n\n\t\t// Insert `n` at position `i` of the output.\n\t\toutput.splice(i++, 0, n);\n\n\t}\n\n\treturn String.fromCodePoint(...output);\n};\n\n/**\n * Converts a string of Unicode symbols (e.g. a domain name label) to a\n * Punycode string of ASCII-only symbols.\n * @memberOf punycode\n * @param {String} input The string of Unicode symbols.\n * @returns {String} The resulting Punycode string of ASCII-only symbols.\n */\nconst encode = function(input) {\n\tconst output = [];\n\n\t// Convert the input in UCS-2 to an array of Unicode code points.\n\tinput = ucs2decode(input);\n\n\t// Cache the length.\n\tlet inputLength = input.length;\n\n\t// Initialize the state.\n\tlet n = initialN;\n\tlet delta = 0;\n\tlet bias = initialBias;\n\n\t// Handle the basic code points.\n\tfor (const currentValue of input) {\n\t\tif (currentValue < 0x80) {\n\t\t\toutput.push(stringFromCharCode(currentValue));\n\t\t}\n\t}\n\n\tlet basicLength = output.length;\n\tlet handledCPCount = basicLength;\n\n\t// `handledCPCount` is the number of code points that have been handled;\n\t// `basicLength` is the number of basic code points.\n\n\t// Finish the basic string with a delimiter unless it's empty.\n\tif (basicLength) {\n\t\toutput.push(delimiter);\n\t}\n\n\t// Main encoding loop:\n\twhile (handledCPCount < inputLength) {\n\n\t\t// All non-basic code points < n have been handled already. Find the next\n\t\t// larger one:\n\t\tlet m = maxInt;\n\t\tfor (const currentValue of input) {\n\t\t\tif (currentValue >= n && currentValue < m) {\n\t\t\t\tm = currentValue;\n\t\t\t}\n\t\t}\n\n\t\t// Increase `delta` enough to advance the decoder's <n,i> state to <m,0>,\n\t\t// but guard against overflow.\n\t\tconst handledCPCountPlusOne = handledCPCount + 1;\n\t\tif (m - n > floor((maxInt - delta) / handledCPCountPlusOne)) {\n\t\t\terror('overflow');\n\t\t}\n\n\t\tdelta += (m - n) * handledCPCountPlusOne;\n\t\tn = m;\n\n\t\tfor (const currentValue of input) {\n\t\t\tif (currentValue < n && ++delta > maxInt) {\n\t\t\t\terror('overflow');\n\t\t\t}\n\t\t\tif (currentValue == n) {\n\t\t\t\t// Represent delta as a generalized variable-length integer.\n\t\t\t\tlet q = delta;\n\t\t\t\tfor (let k = base; /* no condition */; k += base) {\n\t\t\t\t\tconst t = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias);\n\t\t\t\t\tif (q < t) {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tconst qMinusT = q - t;\n\t\t\t\t\tconst baseMinusT = base - t;\n\t\t\t\t\toutput.push(\n\t\t\t\t\t\tstringFromCharCode(digitToBasic(t + qMinusT % baseMinusT, 0))\n\t\t\t\t\t);\n\t\t\t\t\tq = floor(qMinusT / baseMinusT);\n\t\t\t\t}\n\n\t\t\t\toutput.push(stringFromCharCode(digitToBasic(q, 0)));\n\t\t\t\tbias = adapt(delta, handledCPCountPlusOne, handledCPCount == basicLength);\n\t\t\t\tdelta = 0;\n\t\t\t\t++handledCPCount;\n\t\t\t}\n\t\t}\n\n\t\t++delta;\n\t\t++n;\n\n\t}\n\treturn output.join('');\n};\n\n/**\n * Converts a Punycode string representing a domain name or an email address\n * to Unicode. Only the Punycoded parts of the input will be converted, i.e.\n * it doesn't matter if you call it on a string that has already been\n * converted to Unicode.\n * @memberOf punycode\n * @param {String} input The Punycoded domain name or email address to\n * convert to Unicode.\n * @returns {String} The Unicode representation of the given Punycode\n * string.\n */\nconst toUnicode = function(input) {\n\treturn mapDomain(input, function(string) {\n\t\treturn regexPunycode.test(string)\n\t\t\t? decode(string.slice(4).toLowerCase())\n\t\t\t: string;\n\t});\n};\n\n/**\n * Converts a Unicode string representing a domain name or an email address to\n * Punycode. Only the non-ASCII parts of the domain name will be converted,\n * i.e. it doesn't matter if you call it with a domain that's already in\n * ASCII.\n * @memberOf punycode\n * @param {String} input The domain name or email address to convert, as a\n * Unicode string.\n * @returns {String} The Punycode representation of the given domain name or\n * email address.\n */\nconst toASCII = function(input) {\n\treturn mapDomain(input, function(string) {\n\t\treturn regexNonASCII.test(string)\n\t\t\t? 'xn--' + encode(string)\n\t\t\t: string;\n\t});\n};\n\n/*--------------------------------------------------------------------------*/\n\n/** Define the public API */\nconst punycode = {\n\t/**\n\t * A string representing the current Punycode.js version number.\n\t * @memberOf punycode\n\t * @type String\n\t */\n\t'version': '2.1.0',\n\t/**\n\t * An object of methods to convert from JavaScript's internal character\n\t * representation (UCS-2) to Unicode code points, and back.\n\t * @see <https://mathiasbynens.be/notes/javascript-encoding>\n\t * @memberOf punycode\n\t * @type Object\n\t */\n\t'ucs2': {\n\t\t'decode': ucs2decode,\n\t\t'encode': ucs2encode\n\t},\n\t'decode': decode,\n\t'encode': encode,\n\t'toASCII': toASCII,\n\t'toUnicode': toUnicode\n};\n\nexport default punycode;\n","import { URIRegExps } from \"./uri\";\nimport { buildExps } from \"./regexps-uri\";\n\nexport default buildExps(true);\n","import { URIRegExps } from \"./uri\";\nimport { merge, subexp } from \"./util\";\n\nexport function buildExps(isIRI:boolean):URIRegExps {\n\tconst\n\t\tALPHA$$ = \"[A-Za-z]\",\n\t\tCR$ = \"[\\\\x0D]\",\n\t\tDIGIT$$ = \"[0-9]\",\n\t\tDQUOTE$$ = \"[\\\\x22]\",\n\t\tHEXDIG$$ = merge(DIGIT$$, \"[A-Fa-f]\"),  //case-insensitive\n\t\tLF$$ = \"[\\\\x0A]\",\n\t\tSP$$ = \"[\\\\x20]\",\n\t\tPCT_ENCODED$ = subexp(subexp(\"%[EFef]\" + HEXDIG$$ + \"%\" + HEXDIG$$ + HEXDIG$$ + \"%\" + HEXDIG$$ + HEXDIG$$) + \"|\" + subexp(\"%[89A-Fa-f]\" + HEXDIG$$ + \"%\" + HEXDIG$$ + HEXDIG$$) + \"|\" + subexp(\"%\" + HEXDIG$$ + HEXDIG$$)),  //expanded\n\t\tGEN_DELIMS$$ = \"[\\\\:\\\\/\\\\?\\\\#\\\\[\\\\]\\\\@]\",\n\t\tSUB_DELIMS$$ = \"[\\\\!\\\\$\\\\&\\\\'\\\\(\\\\)\\\\*\\\\+\\\\,\\\\;\\\\=]\",\n\t\tRESERVED$$ = merge(GEN_DELIMS$$, SUB_DELIMS$$),\n\t\tUCSCHAR$$ = isIRI ? \"[\\\\xA0-\\\\u200D\\\\u2010-\\\\u2029\\\\u202F-\\\\uD7FF\\\\uF900-\\\\uFDCF\\\\uFDF0-\\\\uFFEF]\" : \"[]\",  //subset, excludes bidi control characters\n\t\tIPRIVATE$$ = isIRI ? \"[\\\\uE000-\\\\uF8FF]\" : \"[]\",  //subset\n\t\tUNRESERVED$$ = merge(ALPHA$$, DIGIT$$, \"[\\\\-\\\\.\\\\_\\\\~]\", UCSCHAR$$),\n\t\tSCHEME$ = subexp(ALPHA$$ + merge(ALPHA$$, DIGIT$$, \"[\\\\+\\\\-\\\\.]\") + \"*\"),\n\t\tUSERINFO$ = subexp(subexp(PCT_ENCODED$ + \"|\" + merge(UNRESERVED$$, SUB_DELIMS$$, \"[\\\\:]\")) + \"*\"),\n\t\tDEC_OCTET$ = subexp(subexp(\"25[0-5]\") + \"|\" + subexp(\"2[0-4]\" + DIGIT$$) + \"|\" + subexp(\"1\" + DIGIT$$ + DIGIT$$) + \"|\" + subexp(\"[1-9]\" + DIGIT$$) + \"|\" + DIGIT$$),\n\t\tIPV4ADDRESS$ = subexp(DEC_OCTET$ + \"\\\\.\" + DEC_OCTET$ + \"\\\\.\" + DEC_OCTET$ + \"\\\\.\" + DEC_OCTET$),\n\t\tH16$ = subexp(HEXDIG$$ + \"{1,4}\"),\n\t\tLS32$ = subexp(subexp(H16$ + \"\\\\:\" + H16$) + \"|\" + IPV4ADDRESS$),\n\t\tIPV6ADDRESS1$ = subexp(                                                            subexp(H16$ + \"\\\\:\") + \"{6}\" + LS32$), //                           6( h16 \":\" ) ls32\n\t\tIPV6ADDRESS2$ = subexp(                                                 \"\\\\:\\\\:\" + subexp(H16$ + \"\\\\:\") + \"{5}\" + LS32$), //                      \"::\" 5( h16 \":\" ) ls32\n\t\tIPV6ADDRESS3$ = subexp(subexp(                                 H16$) + \"?\\\\:\\\\:\" + subexp(H16$ + \"\\\\:\") + \"{4}\" + LS32$), //[               h16 ] \"::\" 4( h16 \":\" ) ls32\n\t\tIPV6ADDRESS4$ = subexp(subexp(subexp(H16$ + \"\\\\:\") + \"{0,1}\" + H16$) + \"?\\\\:\\\\:\" + subexp(H16$ + \"\\\\:\") + \"{3}\" + LS32$), //[ *1( h16 \":\" ) h16 ] \"::\" 3( h16 \":\" ) ls32\n\t\tIPV6ADDRESS5$ = subexp(subexp(subexp(H16$ + \"\\\\:\") + \"{0,2}\" + H16$) + \"?\\\\:\\\\:\" + subexp(H16$ + \"\\\\:\") + \"{2}\" + LS32$), //[ *2( h16 \":\" ) h16 ] \"::\" 2( h16 \":\" ) ls32\n\t\tIPV6ADDRESS6$ = subexp(subexp(subexp(H16$ + \"\\\\:\") + \"{0,3}\" + H16$) + \"?\\\\:\\\\:\" +        H16$ + \"\\\\:\"          + LS32$), //[ *3( h16 \":\" ) h16 ] \"::\"    h16 \":\"   ls32\n\t\tIPV6ADDRESS7$ = subexp(subexp(subexp(H16$ + \"\\\\:\") + \"{0,4}\" + H16$) + \"?\\\\:\\\\:\"                                + LS32$), //[ *4( h16 \":\" ) h16 ] \"::\"              ls32\n\t\tIPV6ADDRESS8$ = subexp(subexp(subexp(H16$ + \"\\\\:\") + \"{0,5}\" + H16$) + \"?\\\\:\\\\:\"                                + H16$ ), //[ *5( h16 \":\" ) h16 ] \"::\"              h16\n\t\tIPV6ADDRESS9$ = subexp(subexp(subexp(H16$ + \"\\\\:\") + \"{0,6}\" + H16$) + \"?\\\\:\\\\:\"                                       ), //[ *6( h16 \":\" ) h16 ] \"::\"\n\t\tIPV6ADDRESS$ = subexp([IPV6ADDRESS1$, IPV6ADDRESS2$, IPV6ADDRESS3$, IPV6ADDRESS4$, IPV6ADDRESS5$, IPV6ADDRESS6$, IPV6ADDRESS7$, IPV6ADDRESS8$, IPV6ADDRESS9$].join(\"|\")),\n\t\tIPVFUTURE$ = subexp(\"[vV]\" + HEXDIG$$ + \"+\\\\.\" + merge(UNRESERVED$$, SUB_DELIMS$$, \"[\\\\:]\") + \"+\"),\n\t\tIP_LITERAL$ = subexp(\"\\\\[\" + subexp(IPV6ADDRESS$ + \"|\" + IPVFUTURE$) + \"\\\\]\"),\n\t\tREG_NAME$ = subexp(subexp(PCT_ENCODED$ + \"|\" + merge(UNRESERVED$$, SUB_DELIMS$$)) + \"*\"),\n\t\tHOST$ = subexp(IP_LITERAL$ + \"|\" + IPV4ADDRESS$ + \"(?!\" + REG_NAME$ + \")\" + \"|\" + REG_NAME$),\n\t\tPORT$ = subexp(DIGIT$$ + \"*\"),\n\t\tAUTHORITY$ = subexp(subexp(USERINFO$ + \"@\") + \"?\" + HOST$ + subexp(\"\\\\:\" + PORT$) + \"?\"),\n\t\tPCHAR$ = subexp(PCT_ENCODED$ + \"|\" + merge(UNRESERVED$$, SUB_DELIMS$$, \"[\\\\:\\\\@]\")),\n\t\tSEGMENT$ = subexp(PCHAR$ + \"*\"),\n\t\tSEGMENT_NZ$ = subexp(PCHAR$ + \"+\"),\n\t\tSEGMENT_NZ_NC$ = subexp(subexp(PCT_ENCODED$ + \"|\" + merge(UNRESERVED$$, SUB_DELIMS$$, \"[\\\\@]\")) + \"+\"),\n\t\tPATH_ABEMPTY$ = subexp(subexp(\"\\\\/\" + SEGMENT$) + \"*\"),\n\t\tPATH_ABSOLUTE$ = subexp(\"\\\\/\" + subexp(SEGMENT_NZ$ + PATH_ABEMPTY$) + \"?\"),  //simplified\n\t\tPATH_NOSCHEME$ = subexp(SEGMENT_NZ_NC$ + PATH_ABEMPTY$),  //simplified\n\t\tPATH_ROOTLESS$ = subexp(SEGMENT_NZ$ + PATH_ABEMPTY$),  //simplified\n\t\tPATH_EMPTY$ = \"(?!\" + PCHAR$ + \")\",\n\t\tPATH$ = subexp(PATH_ABEMPTY$ + \"|\" + PATH_ABSOLUTE$ + \"|\" + PATH_NOSCHEME$ + \"|\" + PATH_ROOTLESS$ + \"|\" + PATH_EMPTY$),\n\t\tQUERY$ = subexp(subexp(PCHAR$ + \"|\" + merge(\"[\\\\/\\\\?]\", IPRIVATE$$)) + \"*\"),\n\t\tFRAGMENT$ = subexp(subexp(PCHAR$ + \"|[\\\\/\\\\?]\") + \"*\"),\n\t\tHIER_PART$ = subexp(subexp(\"\\\\/\\\\/\" + AUTHORITY$ + PATH_ABEMPTY$) + \"|\" + PATH_ABSOLUTE$ + \"|\" + PATH_ROOTLESS$ + \"|\" + PATH_EMPTY$),\n\t\tURI$ = subexp(SCHEME$ + \"\\\\:\" + HIER_PART$ + subexp(\"\\\\?\" + QUERY$) + \"?\" + subexp(\"\\\\#\" + FRAGMENT$) + \"?\"),\n\t\tRELATIVE_PART$ = subexp(subexp(\"\\\\/\\\\/\" + AUTHORITY$ + PATH_ABEMPTY$) + \"|\" + PATH_ABSOLUTE$ + \"|\" + PATH_NOSCHEME$ + \"|\" + PATH_EMPTY$),\n\t\tRELATIVE$ = subexp(RELATIVE_PART$ + subexp(\"\\\\?\" + QUERY$) + \"?\" + subexp(\"\\\\#\" + FRAGMENT$) + \"?\"),\n\t\tURI_REFERENCE$ = subexp(URI$ + \"|\" + RELATIVE$),\n\t\tABSOLUTE_URI$ = subexp(SCHEME$ + \"\\\\:\" + HIER_PART$ + subexp(\"\\\\?\" + QUERY$) + \"?\"),\n\n\t\tGENERIC_REF$ = \"^(\" + SCHEME$ + \")\\\\:\" + subexp(subexp(\"\\\\/\\\\/(\" + subexp(\"(\" + USERINFO$ + \")@\") + \"?(\" + HOST$ + \")\" + subexp(\"\\\\:(\" + PORT$ + \")\") + \"?)\") + \"?(\" + PATH_ABEMPTY$ + \"|\" + PATH_ABSOLUTE$ + \"|\" + PATH_ROOTLESS$ + \"|\" + PATH_EMPTY$ + \")\") + subexp(\"\\\\?(\" + QUERY$ + \")\") + \"?\" + subexp(\"\\\\#(\" + FRAGMENT$ + \")\") + \"?$\",\n\t\tRELATIVE_REF$ = \"^(){0}\" + subexp(subexp(\"\\\\/\\\\/(\" + subexp(\"(\" + USERINFO$ + \")@\") + \"?(\" + HOST$ + \")\" + subexp(\"\\\\:(\" + PORT$ + \")\") + \"?)\") + \"?(\" + PATH_ABEMPTY$ + \"|\" + PATH_ABSOLUTE$ + \"|\" + PATH_NOSCHEME$ + \"|\" + PATH_EMPTY$ + \")\") + subexp(\"\\\\?(\" + QUERY$ + \")\") + \"?\" + subexp(\"\\\\#(\" + FRAGMENT$ + \")\") + \"?$\",\n\t\tABSOLUTE_REF$ = \"^(\" + SCHEME$ + \")\\\\:\" + subexp(subexp(\"\\\\/\\\\/(\" + subexp(\"(\" + USERINFO$ + \")@\") + \"?(\" + HOST$ + \")\" + subexp(\"\\\\:(\" + PORT$ + \")\") + \"?)\") + \"?(\" + PATH_ABEMPTY$ + \"|\" + PATH_ABSOLUTE$ + \"|\" + PATH_ROOTLESS$ + \"|\" + PATH_EMPTY$ + \")\") + subexp(\"\\\\?(\" + QUERY$ + \")\") + \"?$\",\n\t\tSAMEDOC_REF$ = \"^\" + subexp(\"\\\\#(\" + FRAGMENT$ + \")\") + \"?$\",\n\t\tAUTHORITY_REF$ = \"^\" + subexp(\"(\" + USERINFO$ + \")@\") + \"?(\" + HOST$ + \")\" + subexp(\"\\\\:(\" + PORT$ + \")\") + \"?$\"\n\t;\n\n\treturn {\n\t\tNOT_SCHEME : new RegExp(merge(\"[^]\", ALPHA$$, DIGIT$$, \"[\\\\+\\\\-\\\\.]\"), \"g\"),\n\t\tNOT_USERINFO : new RegExp(merge(\"[^\\\\%\\\\:]\", UNRESERVED$$, SUB_DELIMS$$), \"g\"),\n\t\tNOT_HOST : new RegExp(merge(\"[^\\\\%\\\\[\\\\]\\\\:]\", UNRESERVED$$, SUB_DELIMS$$), \"g\"),\n\t\tNOT_PATH : new RegExp(merge(\"[^\\\\%\\\\/\\\\:\\\\@]\", UNRESERVED$$, SUB_DELIMS$$), \"g\"),\n\t\tNOT_PATH_NOSCHEME : new RegExp(merge(\"[^\\\\%\\\\/\\\\@]\", UNRESERVED$$, SUB_DELIMS$$), \"g\"),\n\t\tNOT_QUERY : new RegExp(merge(\"[^\\\\%]\", UNRESERVED$$, SUB_DELIMS$$, \"[\\\\:\\\\@\\\\/\\\\?]\", IPRIVATE$$), \"g\"),\n\t\tNOT_FRAGMENT : new RegExp(merge(\"[^\\\\%]\", UNRESERVED$$, SUB_DELIMS$$, \"[\\\\:\\\\@\\\\/\\\\?]\"), \"g\"),\n\t\tESCAPE : new RegExp(merge(\"[^]\", UNRESERVED$$, SUB_DELIMS$$), \"g\"),\n\t\tUNRESERVED : new RegExp(UNRESERVED$$, \"g\"),\n\t\tOTHER_CHARS : new RegExp(merge(\"[^\\\\%]\", UNRESERVED$$, RESERVED$$), \"g\"),\n\t\tPCT_ENCODED : new RegExp(PCT_ENCODED$, \"g\"),\n\t\tIPV6ADDRESS : new RegExp(\"\\\\[?(\" + IPV6ADDRESS$ + \")\\\\]?\", \"g\")\n\t};\n}\n\nexport default buildExps(false);\n","export function merge(...sets:Array<string>):string {\n\tif (sets.length > 1) {\n\t\tsets[0] = sets[0].slice(0, -1);\n\t\tconst xl = sets.length - 1;\n\t\tfor (let x = 1; x < xl; ++x) {\n\t\t\tsets[x] = sets[x].slice(1, -1);\n\t\t}\n\t\tsets[xl] = sets[xl].slice(1);\n\t\treturn sets.join('');\n\t} else {\n\t\treturn sets[0];\n\t}\n}\n\nexport function subexp(str:string):string {\n\treturn \"(?:\" + str + \")\";\n}\n\nexport function typeOf(o:any):string {\n\treturn o === undefined ? \"undefined\" : (o === null ? \"null\" : Object.prototype.toString.call(o).split(\" \").pop().split(\"]\").shift().toLowerCase());\n}\n\nexport function toUpperCase(str:string):string {\n\treturn str.toUpperCase();\n}\n\nexport function toArray(obj:any):Array<any> {\n\treturn obj !== undefined && obj !== null ? (obj instanceof Array ? obj : (typeof obj.length !== \"number\" || obj.split || obj.setInterval || obj.call ? [obj] : Array.prototype.slice.call(obj))) : [];\n}\n"],"names":["SCHEMES","uuid","urn","mailto","https","http","serialize","components","options","path","toLowerCase","scheme","undefined","tolerant","match","UUID","error","matches","replace","URN_EXCLUDED","pctEncChar","URN_SCHEME","schemeHandler","parse","URN_PARSE","PCT_ENCODED$","RegExp","NID$","query","fields","join","length","push","name","PCT_ENCODED","decodeUnreserved","toUpperCase","NOT_HFNAME","headers","NOT_HFVALUE","O","body","subject","to","x","localPart","domain","iri","e","punycode","toASCII","unescapeComponent","toUnicode","toAddr","slice","atIdx","NOT_LOCAL_PART","lastIndexOf","String","xl","toArray","addr","unicodeSupport","split","unknownHeaders","hfield","toAddrs","hfields","decStr","UNRESERVED","str","pctDecChars","merge","UNRESERVED$$","SOME_DELIMS$$","ATEXT$$","VCHAR$$","QTEXT$$","subexp","HEXDIG$$","isIRI","domainHost","port","host","toString","URI_PROTOCOL","IRI_PROTOCOL","ESCAPE","escapeComponent","uriA","uriB","typeOf","equal","uri","normalize","resolveComponents","baseURI","relativeURI","resolve","target","fragment","relative","base","userinfo","removeDotSegments","charAt","skipNormalization","uriTokens","s","authority","absolutePath","reference","_recomposeAuthority","protocol","IPV6ADDRESS","test","output","Error","input","im","RDS5","pop","RDS3","RDS2","RDS1","uriString","isNaN","indexOf","parseInt","NO_MATCH_IS_UNDEFINED","URI_PARSE","NOT_FRAGMENT","NOT_QUERY","NOT_PATH","NOT_PATH_NOSCHEME","NOT_HOST","NOT_USERINFO","NOT_SCHEME","_normalizeComponentEncoding","newStr","substr","i","fromCharCode","c","c2","c3","il","chr","charCodeAt","encode","decode","ucs2encode","ucs2decode","regexNonASCII","string","mapDomain","regexPunycode","n","delta","handledCPCount","adapt","handledCPCountPlusOne","basicLength","stringFromCharCode","digitToBasic","q","floor","qMinusT","baseMinusT","t","k","bias","tMin","tMax","currentValue","maxInt","m","inputLength","delimiter","initialBias","initialN","fromCodePoint","splice","out","oldi","w","digit","basicToDigit","index","basic","j","baseMinusTMin","skew","numPoints","firstTime","damp","flag","codePoint","array","value","extra","counter","result","encoded","map","labels","fn","regexSeparators","parts","RangeError","errors","type","Math","buildExps","IPV6ADDRESS$","RESERVED$$","SUB_DELIMS$$","IPRIVATE$$","ALPHA$$","DIGIT$$","AUTHORITY_REF$","USERINFO$","HOST$","PORT$","SAMEDOC_REF$","FRAGMENT$","ABSOLUTE_REF$","SCHEME$","PATH_ABEMPTY$","PATH_ABSOLUTE$","PATH_ROOTLESS$","PATH_EMPTY$","QUERY$","RELATIVE_REF$","PATH_NOSCHEME$","GENERIC_REF$","ABSOLUTE_URI$","HIER_PART$","URI_REFERENCE$","URI$","RELATIVE$","RELATIVE_PART$","AUTHORITY$","PCHAR$","PATH$","SEGMENT_NZ$","SEGMENT_NZ_NC$","SEGMENT$","IP_LITERAL$","IPV4ADDRESS$","REG_NAME$","IPVFUTURE$","IPV6ADDRESS1$","IPV6ADDRESS2$","IPV6ADDRESS3$","IPV6ADDRESS4$","IPV6ADDRESS5$","IPV6ADDRESS6$","IPV6ADDRESS7$","IPV6ADDRESS8$","IPV6ADDRESS9$","H16$","LS32$","DEC_OCTET$","UCSCHAR$$","GEN_DELIMS$$","SP$$","DQUOTE$$","CR$","obj","Array","setInterval","call","prototype","o","Object","shift","sets"],"mappings":"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"}