Files
Dramlog-Prod/.next/server/vendor-chunks/set-cookie-parser.js
2025-12-17 23:12:53 +01:00

45 lines
74 KiB
JavaScript

"use strict";
/*
* ATTENTION: An "eval-source-map" devtool has been used.
* This devtool is neither made for production nor for readable output files.
* It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools.
* If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/)
* or disable the default devtool with "devtool: false".
* If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/).
*/
exports.id = "vendor-chunks/set-cookie-parser";
exports.ids = ["vendor-chunks/set-cookie-parser"];
exports.modules = {
/***/ "(ssr)/./node_modules/set-cookie-parser/lib/set-cookie.js":
/*!**********************************************************!*\
!*** ./node_modules/set-cookie-parser/lib/set-cookie.js ***!
\**********************************************************/
/***/ ((module) => {
eval("\nvar defaultParseOptions = {\n decodeValues: true,\n map: false,\n silent: false\n};\nfunction isForbiddenKey(key) {\n return typeof key !== \"string\" || key in {};\n}\nfunction createNullObj() {\n return Object.create(null);\n}\nfunction isNonEmptyString(str) {\n return typeof str === \"string\" && !!str.trim();\n}\nfunction parseString(setCookieValue, options) {\n var parts = setCookieValue.split(\";\").filter(isNonEmptyString);\n var nameValuePairStr = parts.shift();\n var parsed = parseNameValuePair(nameValuePairStr);\n var name = parsed.name;\n var value = parsed.value;\n options = options ? Object.assign({}, defaultParseOptions, options) : defaultParseOptions;\n if (isForbiddenKey(name)) {\n return null;\n }\n try {\n value = options.decodeValues ? decodeURIComponent(value) : value; // decode cookie value\n } catch (e) {\n console.error(\"set-cookie-parser: failed to decode cookie value. Set options.decodeValues=false to disable decoding.\", e);\n }\n var cookie = createNullObj();\n cookie.name = name;\n cookie.value = value;\n parts.forEach(function(part) {\n var sides = part.split(\"=\");\n var key = sides.shift().trimLeft().toLowerCase();\n if (isForbiddenKey(key)) {\n return;\n }\n var value = sides.join(\"=\");\n if (key === \"expires\") {\n cookie.expires = new Date(value);\n } else if (key === \"max-age\") {\n var n = parseInt(value, 10);\n if (!Number.isNaN(n)) cookie.maxAge = n;\n } else if (key === \"secure\") {\n cookie.secure = true;\n } else if (key === \"httponly\") {\n cookie.httpOnly = true;\n } else if (key === \"samesite\") {\n cookie.sameSite = value;\n } else if (key === \"partitioned\") {\n cookie.partitioned = true;\n } else if (key) {\n cookie[key] = value;\n }\n });\n return cookie;\n}\nfunction parseNameValuePair(nameValuePairStr) {\n // Parses name-value-pair according to rfc6265bis draft\n var name = \"\";\n var value = \"\";\n var nameValueArr = nameValuePairStr.split(\"=\");\n if (nameValueArr.length > 1) {\n name = nameValueArr.shift();\n value = nameValueArr.join(\"=\"); // everything after the first =, joined by a \"=\" if there was more than one part\n } else {\n value = nameValuePairStr;\n }\n return {\n name: name,\n value: value\n };\n}\nfunction parse(input, options) {\n options = options ? Object.assign({}, defaultParseOptions, options) : defaultParseOptions;\n if (!input) {\n if (!options.map) {\n return [];\n } else {\n return createNullObj();\n }\n }\n if (input.headers) {\n if (typeof input.headers.getSetCookie === \"function\") {\n // for fetch responses - they combine headers of the same type in the headers array,\n // but getSetCookie returns an uncombined array\n input = input.headers.getSetCookie();\n } else if (input.headers[\"set-cookie\"]) {\n // fast-path for node.js (which automatically normalizes header names to lower-case)\n input = input.headers[\"set-cookie\"];\n } else {\n // slow-path for other environments - see #25\n var sch = input.headers[Object.keys(input.headers).find(function(key) {\n return key.toLowerCase() === \"set-cookie\";\n })];\n // warn if called on a request-like object with a cookie header rather than a set-cookie header - see #34, 36\n if (!sch && input.headers.cookie && !options.silent) {\n console.warn(\"Warning: set-cookie-parser appears to have been called on a request object. It is designed to parse Set-Cookie headers from responses, not Cookie headers from requests. Set the option {silent: true} to suppress this warning.\");\n }\n input = sch;\n }\n }\n if (!Array.isArray(input)) {\n input = [\n input\n ];\n }\n if (!options.map) {\n return input.filter(isNonEmptyString).map(function(str) {\n return parseString(str, options);\n }).filter(Boolean);\n } else {\n var cookies = createNullObj();\n return input.filter(isNonEmptyString).reduce(function(cookies, str) {\n var cookie = parseString(str, options);\n if (cookie && !isForbiddenKey(cookie.name)) {\n cookies[cookie.name] = cookie;\n }\n return cookies;\n }, cookies);\n }\n}\n/*\n Set-Cookie header field-values are sometimes comma joined in one string. This splits them without choking on commas\n that are within a single set-cookie field-value, such as in the Expires portion.\n\n This is uncommon, but explicitly allowed - see https://tools.ietf.org/html/rfc2616#section-4.2\n Node.js does this for every header *except* set-cookie - see https://github.com/nodejs/node/blob/d5e363b77ebaf1caf67cd7528224b651c86815c1/lib/_http_incoming.js#L128\n React Native's fetch does this for *every* header, including set-cookie.\n\n Based on: https://github.com/google/j2objc/commit/16820fdbc8f76ca0c33472810ce0cb03d20efe25\n Credits to: https://github.com/tomball for original and https://github.com/chrusart for JavaScript implementation\n*/ function splitCookiesString(cookiesString) {\n if (Array.isArray(cookiesString)) {\n return cookiesString;\n }\n if (typeof cookiesString !== \"string\") {\n return [];\n }\n var cookiesStrings = [];\n var pos = 0;\n var start;\n var ch;\n var lastComma;\n var nextStart;\n var cookiesSeparatorFound;\n function skipWhitespace() {\n while(pos < cookiesString.length && /\\s/.test(cookiesString.charAt(pos))){\n pos += 1;\n }\n return pos < cookiesString.length;\n }\n function notSpecialChar() {\n ch = cookiesString.charAt(pos);\n return ch !== \"=\" && ch !== \";\" && ch !== \",\";\n }\n while(pos < cookiesString.length){\n start = pos;\n cookiesSeparatorFound = false;\n while(skipWhitespace()){\n ch = cookiesString.charAt(pos);\n if (ch === \",\") {\n // ',' is a cookie separator if we have later first '=', not ';' or ','\n lastComma = pos;\n pos += 1;\n skipWhitespace();\n nextStart = pos;\n while(pos < cookiesString.length && notSpecialChar()){\n pos += 1;\n }\n // currently special character\n if (pos < cookiesString.length && cookiesString.charAt(pos) === \"=\") {\n // we found cookies separator\n cookiesSeparatorFound = true;\n // pos is inside the next cookie, so back up and return it.\n pos = nextStart;\n cookiesStrings.push(cookiesString.substring(start, lastComma));\n start = pos;\n } else {\n // in param ',' or param separator ';',\n // we continue from that comma\n pos = lastComma + 1;\n }\n } else {\n pos += 1;\n }\n }\n if (!cookiesSeparatorFound || pos >= cookiesString.length) {\n cookiesStrings.push(cookiesString.substring(start, cookiesString.length));\n }\n }\n return cookiesStrings;\n}\nmodule.exports = parse;\nmodule.exports.parse = parse;\nmodule.exports.parseString = parseString;\nmodule.exports.splitCookiesString = splitCookiesString;\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvc2V0LWNvb2tpZS1wYXJzZXIvbGliL3NldC1jb29raWUuanMiLCJtYXBwaW5ncyI6IkFBQWE7QUFFYixJQUFJQSxzQkFBc0I7SUFDeEJDLGNBQWM7SUFDZEMsS0FBSztJQUNMQyxRQUFRO0FBQ1Y7QUFFQSxTQUFTQyxlQUFlQyxHQUFHO0lBQ3pCLE9BQU8sT0FBT0EsUUFBUSxZQUFZQSxPQUFPLENBQUM7QUFDNUM7QUFFQSxTQUFTQztJQUNQLE9BQU9DLE9BQU9DLE1BQU0sQ0FBQztBQUN2QjtBQUVBLFNBQVNDLGlCQUFpQkMsR0FBRztJQUMzQixPQUFPLE9BQU9BLFFBQVEsWUFBWSxDQUFDLENBQUNBLElBQUlDLElBQUk7QUFDOUM7QUFFQSxTQUFTQyxZQUFZQyxjQUFjLEVBQUVDLE9BQU87SUFDMUMsSUFBSUMsUUFBUUYsZUFBZUcsS0FBSyxDQUFDLEtBQUtDLE1BQU0sQ0FBQ1I7SUFFN0MsSUFBSVMsbUJBQW1CSCxNQUFNSSxLQUFLO0lBQ2xDLElBQUlDLFNBQVNDLG1CQUFtQkg7SUFDaEMsSUFBSUksT0FBT0YsT0FBT0UsSUFBSTtJQUN0QixJQUFJQyxRQUFRSCxPQUFPRyxLQUFLO0lBRXhCVCxVQUFVQSxVQUNOUCxPQUFPaUIsTUFBTSxDQUFDLENBQUMsR0FBR3hCLHFCQUFxQmMsV0FDdkNkO0lBRUosSUFBSUksZUFBZWtCLE9BQU87UUFDeEIsT0FBTztJQUNUO0lBRUEsSUFBSTtRQUNGQyxRQUFRVCxRQUFRYixZQUFZLEdBQUd3QixtQkFBbUJGLFNBQVNBLE9BQU8sc0JBQXNCO0lBQzFGLEVBQUUsT0FBT0csR0FBRztRQUNWQyxRQUFRQyxLQUFLLENBQ1gseUdBQ0FGO0lBRUo7SUFFQSxJQUFJRyxTQUFTdkI7SUFDYnVCLE9BQU9QLElBQUksR0FBR0E7SUFDZE8sT0FBT04sS0FBSyxHQUFHQTtJQUVmUixNQUFNZSxPQUFPLENBQUMsU0FBVUMsSUFBSTtRQUMxQixJQUFJQyxRQUFRRCxLQUFLZixLQUFLLENBQUM7UUFDdkIsSUFBSVgsTUFBTTJCLE1BQU1iLEtBQUssR0FBR2MsUUFBUSxHQUFHQyxXQUFXO1FBQzlDLElBQUk5QixlQUFlQyxNQUFNO1lBQ3ZCO1FBQ0Y7UUFDQSxJQUFJa0IsUUFBUVMsTUFBTUcsSUFBSSxDQUFDO1FBQ3ZCLElBQUk5QixRQUFRLFdBQVc7WUFDckJ3QixPQUFPTyxPQUFPLEdBQUcsSUFBSUMsS0FBS2Q7UUFDNUIsT0FBTyxJQUFJbEIsUUFBUSxXQUFXO1lBQzVCLElBQUlpQyxJQUFJQyxTQUFTaEIsT0FBTztZQUN4QixJQUFJLENBQUNpQixPQUFPQyxLQUFLLENBQUNILElBQUlULE9BQU9hLE1BQU0sR0FBR0o7UUFDeEMsT0FBTyxJQUFJakMsUUFBUSxVQUFVO1lBQzNCd0IsT0FBT2MsTUFBTSxHQUFHO1FBQ2xCLE9BQU8sSUFBSXRDLFFBQVEsWUFBWTtZQUM3QndCLE9BQU9lLFFBQVEsR0FBRztRQUNwQixPQUFPLElBQUl2QyxRQUFRLFlBQVk7WUFDN0J3QixPQUFPZ0IsUUFBUSxHQUFHdEI7UUFDcEIsT0FBTyxJQUFJbEIsUUFBUSxlQUFlO1lBQ2hDd0IsT0FBT2lCLFdBQVcsR0FBRztRQUN2QixPQUFPLElBQUl6QyxLQUFLO1lBQ2R3QixNQUFNLENBQUN4QixJQUFJLEdBQUdrQjtRQUNoQjtJQUNGO0lBRUEsT0FBT007QUFDVDtBQUVBLFNBQVNSLG1CQUFtQkgsZ0JBQWdCO0lBQzFDLHVEQUF1RDtJQUV2RCxJQUFJSSxPQUFPO0lBQ1gsSUFBSUMsUUFBUTtJQUNaLElBQUl3QixlQUFlN0IsaUJBQWlCRixLQUFLLENBQUM7SUFDMUMsSUFBSStCLGFBQWFDLE1BQU0sR0FBRyxHQUFHO1FBQzNCMUIsT0FBT3lCLGFBQWE1QixLQUFLO1FBQ3pCSSxRQUFRd0IsYUFBYVosSUFBSSxDQUFDLE1BQU0sZ0ZBQWdGO0lBQ2xILE9BQU87UUFDTFosUUFBUUw7SUFDVjtJQUVBLE9BQU87UUFBRUksTUFBTUE7UUFBTUMsT0FBT0E7SUFBTTtBQUNwQztBQUVBLFNBQVMwQixNQUFNQyxLQUFLLEVBQUVwQyxPQUFPO0lBQzNCQSxVQUFVQSxVQUNOUCxPQUFPaUIsTUFBTSxDQUFDLENBQUMsR0FBR3hCLHFCQUFxQmMsV0FDdkNkO0lBRUosSUFBSSxDQUFDa0QsT0FBTztRQUNWLElBQUksQ0FBQ3BDLFFBQVFaLEdBQUcsRUFBRTtZQUNoQixPQUFPLEVBQUU7UUFDWCxPQUFPO1lBQ0wsT0FBT0k7UUFDVDtJQUNGO0lBRUEsSUFBSTRDLE1BQU1DLE9BQU8sRUFBRTtRQUNqQixJQUFJLE9BQU9ELE1BQU1DLE9BQU8sQ0FBQ0MsWUFBWSxLQUFLLFlBQVk7WUFDcEQsb0ZBQW9GO1lBQ3BGLCtDQUErQztZQUMvQ0YsUUFBUUEsTUFBTUMsT0FBTyxDQUFDQyxZQUFZO1FBQ3BDLE9BQU8sSUFBSUYsTUFBTUMsT0FBTyxDQUFDLGFBQWEsRUFBRTtZQUN0QyxvRkFBb0Y7WUFDcEZELFFBQVFBLE1BQU1DLE9BQU8sQ0FBQyxhQUFhO1FBQ3JDLE9BQU87WUFDTCw2Q0FBNkM7WUFDN0MsSUFBSUUsTUFDRkgsTUFBTUMsT0FBTyxDQUNYNUMsT0FBTytDLElBQUksQ0FBQ0osTUFBTUMsT0FBTyxFQUFFSSxJQUFJLENBQUMsU0FBVWxELEdBQUc7Z0JBQzNDLE9BQU9BLElBQUk2QixXQUFXLE9BQU87WUFDL0IsR0FDRDtZQUNILDZHQUE2RztZQUM3RyxJQUFJLENBQUNtQixPQUFPSCxNQUFNQyxPQUFPLENBQUN0QixNQUFNLElBQUksQ0FBQ2YsUUFBUVgsTUFBTSxFQUFFO2dCQUNuRHdCLFFBQVE2QixJQUFJLENBQ1Y7WUFFSjtZQUNBTixRQUFRRztRQUNWO0lBQ0Y7SUFDQSxJQUFJLENBQUNJLE1BQU1DLE9BQU8sQ0FBQ1IsUUFBUTtRQUN6QkEsUUFBUTtZQUFDQTtTQUFNO0lBQ2pCO0lBRUEsSUFBSSxDQUFDcEMsUUFBUVosR0FBRyxFQUFFO1FBQ2hCLE9BQU9nRCxNQUNKakMsTUFBTSxDQUFDUixrQkFDUFAsR0FBRyxDQUFDLFNBQVVRLEdBQUc7WUFDaEIsT0FBT0UsWUFBWUYsS0FBS0k7UUFDMUIsR0FDQ0csTUFBTSxDQUFDMEM7SUFDWixPQUFPO1FBQ0wsSUFBSUMsVUFBVXREO1FBQ2QsT0FBTzRDLE1BQU1qQyxNQUFNLENBQUNSLGtCQUFrQm9ELE1BQU0sQ0FBQyxTQUFVRCxPQUFPLEVBQUVsRCxHQUFHO1lBQ2pFLElBQUltQixTQUFTakIsWUFBWUYsS0FBS0k7WUFDOUIsSUFBSWUsVUFBVSxDQUFDekIsZUFBZXlCLE9BQU9QLElBQUksR0FBRztnQkFDMUNzQyxPQUFPLENBQUMvQixPQUFPUCxJQUFJLENBQUMsR0FBR087WUFDekI7WUFDQSxPQUFPK0I7UUFDVCxHQUFHQTtJQUNMO0FBQ0Y7QUFFQTs7Ozs7Ozs7OztBQVVBLEdBQ0EsU0FBU0UsbUJBQW1CQyxhQUFhO0lBQ3ZDLElBQUlOLE1BQU1DLE9BQU8sQ0FBQ0ssZ0JBQWdCO1FBQ2hDLE9BQU9BO0lBQ1Q7SUFDQSxJQUFJLE9BQU9BLGtCQUFrQixVQUFVO1FBQ3JDLE9BQU8sRUFBRTtJQUNYO0lBRUEsSUFBSUMsaUJBQWlCLEVBQUU7SUFDdkIsSUFBSUMsTUFBTTtJQUNWLElBQUlDO0lBQ0osSUFBSUM7SUFDSixJQUFJQztJQUNKLElBQUlDO0lBQ0osSUFBSUM7SUFFSixTQUFTQztRQUNQLE1BQU9OLE1BQU1GLGNBQWNmLE1BQU0sSUFBSSxLQUFLd0IsSUFBSSxDQUFDVCxjQUFjVSxNQUFNLENBQUNSLE1BQU87WUFDekVBLE9BQU87UUFDVDtRQUNBLE9BQU9BLE1BQU1GLGNBQWNmLE1BQU07SUFDbkM7SUFFQSxTQUFTMEI7UUFDUFAsS0FBS0osY0FBY1UsTUFBTSxDQUFDUjtRQUUxQixPQUFPRSxPQUFPLE9BQU9BLE9BQU8sT0FBT0EsT0FBTztJQUM1QztJQUVBLE1BQU9GLE1BQU1GLGNBQWNmLE1BQU0sQ0FBRTtRQUNqQ2tCLFFBQVFEO1FBQ1JLLHdCQUF3QjtRQUV4QixNQUFPQyxpQkFBa0I7WUFDdkJKLEtBQUtKLGNBQWNVLE1BQU0sQ0FBQ1I7WUFDMUIsSUFBSUUsT0FBTyxLQUFLO2dCQUNkLHVFQUF1RTtnQkFDdkVDLFlBQVlIO2dCQUNaQSxPQUFPO2dCQUVQTTtnQkFDQUYsWUFBWUo7Z0JBRVosTUFBT0EsTUFBTUYsY0FBY2YsTUFBTSxJQUFJMEIsaUJBQWtCO29CQUNyRFQsT0FBTztnQkFDVDtnQkFFQSw4QkFBOEI7Z0JBQzlCLElBQUlBLE1BQU1GLGNBQWNmLE1BQU0sSUFBSWUsY0FBY1UsTUFBTSxDQUFDUixTQUFTLEtBQUs7b0JBQ25FLDZCQUE2QjtvQkFDN0JLLHdCQUF3QjtvQkFDeEIsMkRBQTJEO29CQUMzREwsTUFBTUk7b0JBQ05MLGVBQWVXLElBQUksQ0FBQ1osY0FBY2EsU0FBUyxDQUFDVixPQUFPRTtvQkFDbkRGLFFBQVFEO2dCQUNWLE9BQU87b0JBQ0wsdUNBQXVDO29CQUN2Qyw4QkFBOEI7b0JBQzlCQSxNQUFNRyxZQUFZO2dCQUNwQjtZQUNGLE9BQU87Z0JBQ0xILE9BQU87WUFDVDtRQUNGO1FBRUEsSUFBSSxDQUFDSyx5QkFBeUJMLE9BQU9GLGNBQWNmLE1BQU0sRUFBRTtZQUN6RGdCLGVBQWVXLElBQUksQ0FBQ1osY0FBY2EsU0FBUyxDQUFDVixPQUFPSCxjQUFjZixNQUFNO1FBQ3pFO0lBQ0Y7SUFFQSxPQUFPZ0I7QUFDVDtBQUVBYSxPQUFPQyxPQUFPLEdBQUc3QjtBQUNqQjRCLG9CQUFvQixHQUFHNUI7QUFDdkI0QiwwQkFBMEIsR0FBR2pFO0FBQzdCaUUsaUNBQWlDLEdBQUdmIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vd2hpc2t5LXZhdWx0Ly4vbm9kZV9tb2R1bGVzL3NldC1jb29raWUtcGFyc2VyL2xpYi9zZXQtY29va2llLmpzPzMzMTMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbnZhciBkZWZhdWx0UGFyc2VPcHRpb25zID0ge1xuICBkZWNvZGVWYWx1ZXM6IHRydWUsXG4gIG1hcDogZmFsc2UsXG4gIHNpbGVudDogZmFsc2UsXG59O1xuXG5mdW5jdGlvbiBpc0ZvcmJpZGRlbktleShrZXkpIHtcbiAgcmV0dXJuIHR5cGVvZiBrZXkgIT09IFwic3RyaW5nXCIgfHwga2V5IGluIHt9O1xufVxuXG5mdW5jdGlvbiBjcmVhdGVOdWxsT2JqKCkge1xuICByZXR1cm4gT2JqZWN0LmNyZWF0ZShudWxsKTtcbn1cblxuZnVuY3Rpb24gaXNOb25FbXB0eVN0cmluZyhzdHIpIHtcbiAgcmV0dXJuIHR5cGVvZiBzdHIgPT09IFwic3RyaW5nXCIgJiYgISFzdHIudHJpbSgpO1xufVxuXG5mdW5jdGlvbiBwYXJzZVN0cmluZyhzZXRDb29raWVWYWx1ZSwgb3B0aW9ucykge1xuICB2YXIgcGFydHMgPSBzZXRDb29raWVWYWx1ZS5zcGxpdChcIjtcIikuZmlsdGVyKGlzTm9uRW1wdHlTdHJpbmcpO1xuXG4gIHZhciBuYW1lVmFsdWVQYWlyU3RyID0gcGFydHMuc2hpZnQoKTtcbiAgdmFyIHBhcnNlZCA9IHBhcnNlTmFtZVZhbHVlUGFpcihuYW1lVmFsdWVQYWlyU3RyKTtcbiAgdmFyIG5hbWUgPSBwYXJzZWQubmFtZTtcbiAgdmFyIHZhbHVlID0gcGFyc2VkLnZhbHVlO1xuXG4gIG9wdGlvbnMgPSBvcHRpb25zXG4gICAgPyBPYmplY3QuYXNzaWduKHt9LCBkZWZhdWx0UGFyc2VPcHRpb25zLCBvcHRpb25zKVxuICAgIDogZGVmYXVsdFBhcnNlT3B0aW9ucztcblxuICBpZiAoaXNGb3JiaWRkZW5LZXkobmFtZSkpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHRyeSB7XG4gICAgdmFsdWUgPSBvcHRpb25zLmRlY29kZVZhbHVlcyA/IGRlY29kZVVSSUNvbXBvbmVudCh2YWx1ZSkgOiB2YWx1ZTsgLy8gZGVjb2RlIGNvb2tpZSB2YWx1ZVxuICB9IGNhdGNoIChlKSB7XG4gICAgY29uc29sZS5lcnJvcihcbiAgICAgIFwic2V0LWNvb2tpZS1wYXJzZXI6IGZhaWxlZCB0byBkZWNvZGUgY29va2llIHZhbHVlLiBTZXQgb3B0aW9ucy5kZWNvZGVWYWx1ZXM9ZmFsc2UgdG8gZGlzYWJsZSBkZWNvZGluZy5cIixcbiAgICAgIGVcbiAgICApO1xuICB9XG5cbiAgdmFyIGNvb2tpZSA9IGNyZWF0ZU51bGxPYmooKTtcbiAgY29va2llLm5hbWUgPSBuYW1lO1xuICBjb29raWUudmFsdWUgPSB2YWx1ZTtcblxuICBwYXJ0cy5mb3JFYWNoKGZ1bmN0aW9uIChwYXJ0KSB7XG4gICAgdmFyIHNpZGVzID0gcGFydC5zcGxpdChcIj1cIik7XG4gICAgdmFyIGtleSA9IHNpZGVzLnNoaWZ0KCkudHJpbUxlZnQoKS50b0xvd2VyQ2FzZSgpO1xuICAgIGlmIChpc0ZvcmJpZGRlbktleShrZXkpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHZhciB2YWx1ZSA9IHNpZGVzLmpvaW4oXCI9XCIpO1xuICAgIGlmIChrZXkgPT09IFwiZXhwaXJlc1wiKSB7XG4gICAgICBjb29raWUuZXhwaXJlcyA9IG5ldyBEYXRlKHZhbHVlKTtcbiAgICB9IGVsc2UgaWYgKGtleSA9PT0gXCJtYXgtYWdlXCIpIHtcbiAgICAgIHZhciBuID0gcGFyc2VJbnQodmFsdWUsIDEwKTtcbiAgICAgIGlmICghTnVtYmVyLmlzTmFOKG4pKSBjb29raWUubWF4QWdlID0gbjtcbiAgICB9IGVsc2UgaWYgKGtleSA9PT0gXCJzZWN1cmVcIikge1xuICAgICAgY29va2llLnNlY3VyZSA9IHRydWU7XG4gICAgfSBlbHNlIGlmIChrZXkgPT09IFwiaHR0cG9ubHlcIikge1xuICAgICAgY29va2llLmh0dHBPbmx5ID0gdHJ1ZTtcbiAgICB9IGVsc2UgaWYgKGtleSA9PT0gXCJzYW1lc2l0ZVwiKSB7XG4gICAgICBjb29raWUuc2FtZVNpdGUgPSB2YWx1ZTtcbiAgICB9IGVsc2UgaWYgKGtleSA9PT0gXCJwYXJ0aXRpb25lZFwiKSB7XG4gICAgICBjb29raWUucGFydGl0aW9uZWQgPSB0cnVlO1xuICAgIH0gZWxzZSBpZiAoa2V5KSB7XG4gICAgICBjb29raWVba2V5XSA9IHZhbHVlO1xuICAgIH1cbiAgfSk7XG5cbiAgcmV0dXJuIGNvb2tpZTtcbn1cblxuZnVuY3Rpb24gcGFyc2VOYW1lVmFsdWVQYWlyKG5hbWVWYWx1ZVBhaXJTdHIpIHtcbiAgLy8gUGFyc2VzIG5hbWUtdmFsdWUtcGFpciBhY2NvcmRpbmcgdG8gcmZjNjI2NWJpcyBkcmFmdFxuXG4gIHZhciBuYW1lID0gXCJcIjtcbiAgdmFyIHZhbHVlID0gXCJcIjtcbiAgdmFyIG5hbWVWYWx1ZUFyciA9IG5hbWVWYWx1ZVBhaXJTdHIuc3BsaXQoXCI9XCIpO1xuICBpZiAobmFtZVZhbHVlQXJyLmxlbmd0aCA+IDEpIHtcbiAgICBuYW1lID0gbmFtZVZhbHVlQXJyLnNoaWZ0KCk7XG4gICAgdmFsdWUgPSBuYW1lVmFsdWVBcnIuam9pbihcIj1cIik7IC8vIGV2ZXJ5dGhpbmcgYWZ0ZXIgdGhlIGZpcnN0ID0sIGpvaW5lZCBieSBhIFwiPVwiIGlmIHRoZXJlIHdhcyBtb3JlIHRoYW4gb25lIHBhcnRcbiAgfSBlbHNlIHtcbiAgICB2YWx1ZSA9IG5hbWVWYWx1ZVBhaXJTdHI7XG4gIH1cblxuICByZXR1cm4geyBuYW1lOiBuYW1lLCB2YWx1ZTogdmFsdWUgfTtcbn1cblxuZnVuY3Rpb24gcGFyc2UoaW5wdXQsIG9wdGlvbnMpIHtcbiAgb3B0aW9ucyA9IG9wdGlvbnNcbiAgICA/IE9iamVjdC5hc3NpZ24oe30sIGRlZmF1bHRQYXJzZU9wdGlvbnMsIG9wdGlvbnMpXG4gICAgOiBkZWZhdWx0UGFyc2VPcHRpb25zO1xuXG4gIGlmICghaW5wdXQpIHtcbiAgICBpZiAoIW9wdGlvbnMubWFwKSB7XG4gICAgICByZXR1cm4gW107XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBjcmVhdGVOdWxsT2JqKCk7XG4gICAgfVxuICB9XG5cbiAgaWYgKGlucHV0LmhlYWRlcnMpIHtcbiAgICBpZiAodHlwZW9mIGlucHV0LmhlYWRlcnMuZ2V0U2V0Q29va2llID09PSBcImZ1bmN0aW9uXCIpIHtcbiAgICAgIC8vIGZvciBmZXRjaCByZXNwb25zZXMgLSB0aGV5IGNvbWJpbmUgaGVhZGVycyBvZiB0aGUgc2FtZSB0eXBlIGluIHRoZSBoZWFkZXJzIGFycmF5LFxuICAgICAgLy8gYnV0IGdldFNldENvb2tpZSByZXR1cm5zIGFuIHVuY29tYmluZWQgYXJyYXlcbiAgICAgIGlucHV0ID0gaW5wdXQuaGVhZGVycy5nZXRTZXRDb29raWUoKTtcbiAgICB9IGVsc2UgaWYgKGlucHV0LmhlYWRlcnNbXCJzZXQtY29va2llXCJdKSB7XG4gICAgICAvLyBmYXN0LXBhdGggZm9yIG5vZGUuanMgKHdoaWNoIGF1dG9tYXRpY2FsbHkgbm9ybWFsaXplcyBoZWFkZXIgbmFtZXMgdG8gbG93ZXItY2FzZSlcbiAgICAgIGlucHV0ID0gaW5wdXQuaGVhZGVyc1tcInNldC1jb29raWVcIl07XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIHNsb3ctcGF0aCBmb3Igb3RoZXIgZW52aXJvbm1lbnRzIC0gc2VlICMyNVxuICAgICAgdmFyIHNjaCA9XG4gICAgICAgIGlucHV0LmhlYWRlcnNbXG4gICAgICAgICAgT2JqZWN0LmtleXMoaW5wdXQuaGVhZGVycykuZmluZChmdW5jdGlvbiAoa2V5KSB7XG4gICAgICAgICAgICByZXR1cm4ga2V5LnRvTG93ZXJDYXNlKCkgPT09IFwic2V0LWNvb2tpZVwiO1xuICAgICAgICAgIH0pXG4gICAgICAgIF07XG4gICAgICAvLyB3YXJuIGlmIGNhbGxlZCBvbiBhIHJlcXVlc3QtbGlrZSBvYmplY3Qgd2l0aCBhIGNvb2tpZSBoZWFkZXIgcmF0aGVyIHRoYW4gYSBzZXQtY29va2llIGhlYWRlciAtIHNlZSAjMzQsIDM2XG4gICAgICBpZiAoIXNjaCAmJiBpbnB1dC5oZWFkZXJzLmNvb2tpZSAmJiAhb3B0aW9ucy5zaWxlbnQpIHtcbiAgICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICAgIFwiV2FybmluZzogc2V0LWNvb2tpZS1wYXJzZXIgYXBwZWFycyB0byBoYXZlIGJlZW4gY2FsbGVkIG9uIGEgcmVxdWVzdCBvYmplY3QuIEl0IGlzIGRlc2lnbmVkIHRvIHBhcnNlIFNldC1Db29raWUgaGVhZGVycyBmcm9tIHJlc3BvbnNlcywgbm90IENvb2tpZSBoZWFkZXJzIGZyb20gcmVxdWVzdHMuIFNldCB0aGUgb3B0aW9uIHtzaWxlbnQ6IHRydWV9IHRvIHN1cHByZXNzIHRoaXMgd2FybmluZy5cIlxuICAgICAgICApO1xuICAgICAgfVxuICAgICAgaW5wdXQgPSBzY2g7XG4gICAgfVxuICB9XG4gIGlmICghQXJyYXkuaXNBcnJheShpbnB1dCkpIHtcbiAgICBpbnB1dCA9IFtpbnB1dF07XG4gIH1cblxuICBpZiAoIW9wdGlvbnMubWFwKSB7XG4gICAgcmV0dXJuIGlucHV0XG4gICAgICAuZmlsdGVyKGlzTm9uRW1wdHlTdHJpbmcpXG4gICAgICAubWFwKGZ1bmN0aW9uIChzdHIpIHtcbiAgICAgICAgcmV0dXJuIHBhcnNlU3RyaW5nKHN0ciwgb3B0aW9ucyk7XG4gICAgICB9KVxuICAgICAgLmZpbHRlcihCb29sZWFuKTtcbiAgfSBlbHNlIHtcbiAgICB2YXIgY29va2llcyA9IGNyZWF0ZU51bGxPYmooKTtcbiAgICByZXR1cm4gaW5wdXQuZmlsdGVyKGlzTm9uRW1wdHlTdHJpbmcpLnJlZHVjZShmdW5jdGlvbiAoY29va2llcywgc3RyKSB7XG4gICAgICB2YXIgY29va2llID0gcGFyc2VTdHJpbmcoc3RyLCBvcHRpb25zKTtcbiAgICAgIGlmIChjb29raWUgJiYgIWlzRm9yYmlkZGVuS2V5KGNvb2tpZS5uYW1lKSkge1xuICAgICAgICBjb29raWVzW2Nvb2tpZS5uYW1lXSA9IGNvb2tpZTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBjb29raWVzO1xuICAgIH0sIGNvb2tpZXMpO1xuICB9XG59XG5cbi8qXG4gIFNldC1Db29raWUgaGVhZGVyIGZpZWxkLXZhbHVlcyBhcmUgc29tZXRpbWVzIGNvbW1hIGpvaW5lZCBpbiBvbmUgc3RyaW5nLiBUaGlzIHNwbGl0cyB0aGVtIHdpdGhvdXQgY2hva2luZyBvbiBjb21tYXNcbiAgdGhhdCBhcmUgd2l0aGluIGEgc2luZ2xlIHNldC1jb29raWUgZmllbGQtdmFsdWUsIHN1Y2ggYXMgaW4gdGhlIEV4cGlyZXMgcG9ydGlvbi5cblxuICBUaGlzIGlzIHVuY29tbW9uLCBidXQgZXhwbGljaXRseSBhbGxvd2VkIC0gc2VlIGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmMyNjE2I3NlY3Rpb24tNC4yXG4gIE5vZGUuanMgZG9lcyB0aGlzIGZvciBldmVyeSBoZWFkZXIgKmV4Y2VwdCogc2V0LWNvb2tpZSAtIHNlZSBodHRwczovL2dpdGh1Yi5jb20vbm9kZWpzL25vZGUvYmxvYi9kNWUzNjNiNzdlYmFmMWNhZjY3Y2Q3NTI4MjI0YjY1MWM4NjgxNWMxL2xpYi9faHR0cF9pbmNvbWluZy5qcyNMMTI4XG4gIFJlYWN0IE5hdGl2ZSdzIGZldGNoIGRvZXMgdGhpcyBmb3IgKmV2ZXJ5KiBoZWFkZXIsIGluY2x1ZGluZyBzZXQtY29va2llLlxuXG4gIEJhc2VkIG9uOiBodHRwczovL2dpdGh1Yi5jb20vZ29vZ2xlL2oyb2JqYy9jb21taXQvMTY4MjBmZGJjOGY3NmNhMGMzMzQ3MjgxMGNlMGNiMDNkMjBlZmUyNVxuICBDcmVkaXRzIHRvOiBodHRwczovL2dpdGh1Yi5jb20vdG9tYmFsbCBmb3Igb3JpZ2luYWwgYW5kIGh0dHBzOi8vZ2l0aHViLmNvbS9jaHJ1c2FydCBmb3IgSmF2YVNjcmlwdCBpbXBsZW1lbnRhdGlvblxuKi9cbmZ1bmN0aW9uIHNwbGl0Q29va2llc1N0cmluZyhjb29raWVzU3RyaW5nKSB7XG4gIGlmIChBcnJheS5pc0FycmF5KGNvb2tpZXNTdHJpbmcpKSB7XG4gICAgcmV0dXJuIGNvb2tpZXNTdHJpbmc7XG4gIH1cbiAgaWYgKHR5cGVvZiBjb29raWVzU3RyaW5nICE9PSBcInN0cmluZ1wiKSB7XG4gICAgcmV0dXJuIFtdO1xuICB9XG5cbiAgdmFyIGNvb2tpZXNTdHJpbmdzID0gW107XG4gIHZhciBwb3MgPSAwO1xuICB2YXIgc3RhcnQ7XG4gIHZhciBjaDtcbiAgdmFyIGxhc3RDb21tYTtcbiAgdmFyIG5leHRTdGFydDtcbiAgdmFyIGNvb2tpZXNTZXBhcmF0b3JGb3VuZDtcblxuICBmdW5jdGlvbiBza2lwV2hpdGVzcGFjZSgpIHtcbiAgICB3aGlsZSAocG9zIDwgY29va2llc1N0cmluZy5sZW5ndGggJiYgL1xccy8udGVzdChjb29raWVzU3RyaW5nLmNoYXJBdChwb3MpKSkge1xuICAgICAgcG9zICs9IDE7XG4gICAgfVxuICAgIHJldHVybiBwb3MgPCBjb29raWVzU3RyaW5nLmxlbmd0aDtcbiAgfVxuXG4gIGZ1bmN0aW9uIG5vdFNwZWNpYWxDaGFyKCkge1xuICAgIGNoID0gY29va2llc1N0cmluZy5jaGFyQXQocG9zKTtcblxuICAgIHJldHVybiBjaCAhPT0gXCI9XCIgJiYgY2ggIT09IFwiO1wiICYmIGNoICE9PSBcIixcIjtcbiAgfVxuXG4gIHdoaWxlIChwb3MgPCBjb29raWVzU3RyaW5nLmxlbmd0aCkge1xuICAgIHN0YXJ0ID0gcG9zO1xuICAgIGNvb2tpZXNTZXBhcmF0b3JGb3VuZCA9IGZhbHNlO1xuXG4gICAgd2hpbGUgKHNraXBXaGl0ZXNwYWNlKCkpIHtcbiAgICAgIGNoID0gY29va2llc1N0cmluZy5jaGFyQXQocG9zKTtcbiAgICAgIGlmIChjaCA9PT0gXCIsXCIpIHtcbiAgICAgICAgLy8gJywnIGlzIGEgY29va2llIHNlcGFyYXRvciBpZiB3ZSBoYXZlIGxhdGVyIGZpcnN0ICc9Jywgbm90ICc7JyBvciAnLCdcbiAgICAgICAgbGFzdENvbW1hID0gcG9zO1xuICAgICAgICBwb3MgKz0gMTtcblxuICAgICAgICBza2lwV2hpdGVzcGFjZSgpO1xuICAgICAgICBuZXh0U3RhcnQgPSBwb3M7XG5cbiAgICAgICAgd2hpbGUgKHBvcyA8IGNvb2tpZXNTdHJpbmcubGVuZ3RoICYmIG5vdFNwZWNpYWxDaGFyKCkpIHtcbiAgICAgICAgICBwb3MgKz0gMTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGN1cnJlbnRseSBzcGVjaWFsIGNoYXJhY3RlclxuICAgICAgICBpZiAocG9zIDwgY29va2llc1N0cmluZy5sZW5ndGggJiYgY29va2llc1N0cmluZy5jaGFyQXQocG9zKSA9PT0gXCI9XCIpIHtcbiAgICAgICAgICAvLyB3ZSBmb3VuZCBjb29raWVzIHNlcGFyYXRvclxuICAgICAgICAgIGNvb2tpZXNTZXBhcmF0b3JGb3VuZCA9IHRydWU7XG4gICAgICAgICAgLy8gcG9zIGlzIGluc2lkZSB0aGUgbmV4dCBjb29raWUsIHNvIGJhY2sgdXAgYW5kIHJldHVybiBpdC5cbiAgICAgICAgICBwb3MgPSBuZXh0U3RhcnQ7XG4gICAgICAgICAgY29va2llc1N0cmluZ3MucHVzaChjb29raWVzU3RyaW5nLnN1YnN0cmluZyhzdGFydCwgbGFzdENvbW1hKSk7XG4gICAgICAgICAgc3RhcnQgPSBwb3M7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgLy8gaW4gcGFyYW0gJywnIG9yIHBhcmFtIHNlcGFyYXRvciAnOycsXG4gICAgICAgICAgLy8gd2UgY29udGludWUgZnJvbSB0aGF0IGNvbW1hXG4gICAgICAgICAgcG9zID0gbGFzdENvbW1hICsgMTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcG9zICs9IDE7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKCFjb29raWVzU2VwYXJhdG9yRm91bmQgfHwgcG9zID49IGNvb2tpZXNTdHJpbmcubGVuZ3RoKSB7XG4gICAgICBjb29raWVzU3RyaW5ncy5wdXNoKGNvb2tpZXNTdHJpbmcuc3Vic3RyaW5nKHN0YXJ0LCBjb29raWVzU3RyaW5nLmxlbmd0aCkpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBjb29raWVzU3RyaW5ncztcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBwYXJzZTtcbm1vZHVsZS5leHBvcnRzLnBhcnNlID0gcGFyc2U7XG5tb2R1bGUuZXhwb3J0cy5wYXJzZVN0cmluZyA9IHBhcnNlU3RyaW5nO1xubW9kdWxlLmV4cG9ydHMuc3BsaXRDb29raWVzU3RyaW5nID0gc3BsaXRDb29raWVzU3RyaW5nO1xuIl0sIm5hbWVzIjpbImRlZmF1bHRQYXJzZU9wdGlvbnMiLCJkZWNvZGVWYWx1ZXMiLCJtYXAiLCJzaWxlbnQiLCJpc0ZvcmJpZGRlbktleSIsImtleSIsImNyZWF0ZU51bGxPYmoiLCJPYmplY3QiLCJjcmVhdGUiLCJpc05vbkVtcHR5U3RyaW5nIiwic3RyIiwidHJpbSIsInBhcnNlU3RyaW5nIiwic2V0Q29va2llVmFsdWUiLCJvcHRpb25zIiwicGFydHMiLCJzcGxpdCIsImZpbHRlciIsIm5hbWVWYWx1ZVBhaXJTdHIiLCJzaGlmdCIsInBhcnNlZCIsInBhcnNlTmFtZVZhbHVlUGFpciIsIm5hbWUiLCJ2YWx1ZSIsImFzc2lnbiIsImRlY29kZVVSSUNvbXBvbmVudCIsImUiLCJjb25zb2xlIiwiZXJyb3IiLCJjb29raWUiLCJmb3JFYWNoIiwicGFydCIsInNpZGVzIiwidHJpbUxlZnQiLCJ0b0xvd2VyQ2FzZSIsImpvaW4iLCJleHBpcmVzIiwiRGF0ZSIsIm4iLCJwYXJzZUludCIsIk51bWJlciIsImlzTmFOIiwibWF4QWdlIiwic2VjdXJlIiwiaHR0cE9ubHkiLCJzYW1lU2l0ZSIsInBhcnRpdGlvbmVkIiwibmFtZVZhbHVlQXJyIiwibGVuZ3RoIiwicGFyc2UiLCJpbnB1dCIsImhlYWRlcnMiLCJnZXRTZXRDb29raWUiLCJzY2giLCJrZXlzIiwiZmluZCIsIndhcm4iLCJBcnJheSIsImlzQXJyYXkiLCJCb29sZWFuIiwiY29va2llcyIsInJlZHVjZSIsInNwbGl0Q29va2llc1N0cmluZyIsImNvb2tpZXNTdHJpbmciLCJjb29raWVzU3RyaW5ncyIsInBvcyIsInN0YXJ0IiwiY2giLCJsYXN0Q29tbWEiLCJuZXh0U3RhcnQiLCJjb29raWVzU2VwYXJhdG9yRm91bmQiLCJza2lwV2hpdGVzcGFjZSIsInRlc3QiLCJjaGFyQXQiLCJub3RTcGVjaWFsQ2hhciIsInB1c2giLCJzdWJzdHJpbmciLCJtb2R1bGUiLCJleHBvcnRzIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/set-cookie-parser/lib/set-cookie.js\n");
/***/ }),
/***/ "(action-browser)/./node_modules/set-cookie-parser/lib/set-cookie.js":
/*!**********************************************************!*\
!*** ./node_modules/set-cookie-parser/lib/set-cookie.js ***!
\**********************************************************/
/***/ ((module) => {
eval("\nvar defaultParseOptions = {\n decodeValues: true,\n map: false,\n silent: false\n};\nfunction isForbiddenKey(key) {\n return typeof key !== \"string\" || key in {};\n}\nfunction createNullObj() {\n return Object.create(null);\n}\nfunction isNonEmptyString(str) {\n return typeof str === \"string\" && !!str.trim();\n}\nfunction parseString(setCookieValue, options) {\n var parts = setCookieValue.split(\";\").filter(isNonEmptyString);\n var nameValuePairStr = parts.shift();\n var parsed = parseNameValuePair(nameValuePairStr);\n var name = parsed.name;\n var value = parsed.value;\n options = options ? Object.assign({}, defaultParseOptions, options) : defaultParseOptions;\n if (isForbiddenKey(name)) {\n return null;\n }\n try {\n value = options.decodeValues ? decodeURIComponent(value) : value; // decode cookie value\n } catch (e) {\n console.error(\"set-cookie-parser: failed to decode cookie value. Set options.decodeValues=false to disable decoding.\", e);\n }\n var cookie = createNullObj();\n cookie.name = name;\n cookie.value = value;\n parts.forEach(function(part) {\n var sides = part.split(\"=\");\n var key = sides.shift().trimLeft().toLowerCase();\n if (isForbiddenKey(key)) {\n return;\n }\n var value = sides.join(\"=\");\n if (key === \"expires\") {\n cookie.expires = new Date(value);\n } else if (key === \"max-age\") {\n var n = parseInt(value, 10);\n if (!Number.isNaN(n)) cookie.maxAge = n;\n } else if (key === \"secure\") {\n cookie.secure = true;\n } else if (key === \"httponly\") {\n cookie.httpOnly = true;\n } else if (key === \"samesite\") {\n cookie.sameSite = value;\n } else if (key === \"partitioned\") {\n cookie.partitioned = true;\n } else if (key) {\n cookie[key] = value;\n }\n });\n return cookie;\n}\nfunction parseNameValuePair(nameValuePairStr) {\n // Parses name-value-pair according to rfc6265bis draft\n var name = \"\";\n var value = \"\";\n var nameValueArr = nameValuePairStr.split(\"=\");\n if (nameValueArr.length > 1) {\n name = nameValueArr.shift();\n value = nameValueArr.join(\"=\"); // everything after the first =, joined by a \"=\" if there was more than one part\n } else {\n value = nameValuePairStr;\n }\n return {\n name: name,\n value: value\n };\n}\nfunction parse(input, options) {\n options = options ? Object.assign({}, defaultParseOptions, options) : defaultParseOptions;\n if (!input) {\n if (!options.map) {\n return [];\n } else {\n return createNullObj();\n }\n }\n if (input.headers) {\n if (typeof input.headers.getSetCookie === \"function\") {\n // for fetch responses - they combine headers of the same type in the headers array,\n // but getSetCookie returns an uncombined array\n input = input.headers.getSetCookie();\n } else if (input.headers[\"set-cookie\"]) {\n // fast-path for node.js (which automatically normalizes header names to lower-case)\n input = input.headers[\"set-cookie\"];\n } else {\n // slow-path for other environments - see #25\n var sch = input.headers[Object.keys(input.headers).find(function(key) {\n return key.toLowerCase() === \"set-cookie\";\n })];\n // warn if called on a request-like object with a cookie header rather than a set-cookie header - see #34, 36\n if (!sch && input.headers.cookie && !options.silent) {\n console.warn(\"Warning: set-cookie-parser appears to have been called on a request object. It is designed to parse Set-Cookie headers from responses, not Cookie headers from requests. Set the option {silent: true} to suppress this warning.\");\n }\n input = sch;\n }\n }\n if (!Array.isArray(input)) {\n input = [\n input\n ];\n }\n if (!options.map) {\n return input.filter(isNonEmptyString).map(function(str) {\n return parseString(str, options);\n }).filter(Boolean);\n } else {\n var cookies = createNullObj();\n return input.filter(isNonEmptyString).reduce(function(cookies, str) {\n var cookie = parseString(str, options);\n if (cookie && !isForbiddenKey(cookie.name)) {\n cookies[cookie.name] = cookie;\n }\n return cookies;\n }, cookies);\n }\n}\n/*\n Set-Cookie header field-values are sometimes comma joined in one string. This splits them without choking on commas\n that are within a single set-cookie field-value, such as in the Expires portion.\n\n This is uncommon, but explicitly allowed - see https://tools.ietf.org/html/rfc2616#section-4.2\n Node.js does this for every header *except* set-cookie - see https://github.com/nodejs/node/blob/d5e363b77ebaf1caf67cd7528224b651c86815c1/lib/_http_incoming.js#L128\n React Native's fetch does this for *every* header, including set-cookie.\n\n Based on: https://github.com/google/j2objc/commit/16820fdbc8f76ca0c33472810ce0cb03d20efe25\n Credits to: https://github.com/tomball for original and https://github.com/chrusart for JavaScript implementation\n*/ function splitCookiesString(cookiesString) {\n if (Array.isArray(cookiesString)) {\n return cookiesString;\n }\n if (typeof cookiesString !== \"string\") {\n return [];\n }\n var cookiesStrings = [];\n var pos = 0;\n var start;\n var ch;\n var lastComma;\n var nextStart;\n var cookiesSeparatorFound;\n function skipWhitespace() {\n while(pos < cookiesString.length && /\\s/.test(cookiesString.charAt(pos))){\n pos += 1;\n }\n return pos < cookiesString.length;\n }\n function notSpecialChar() {\n ch = cookiesString.charAt(pos);\n return ch !== \"=\" && ch !== \";\" && ch !== \",\";\n }\n while(pos < cookiesString.length){\n start = pos;\n cookiesSeparatorFound = false;\n while(skipWhitespace()){\n ch = cookiesString.charAt(pos);\n if (ch === \",\") {\n // ',' is a cookie separator if we have later first '=', not ';' or ','\n lastComma = pos;\n pos += 1;\n skipWhitespace();\n nextStart = pos;\n while(pos < cookiesString.length && notSpecialChar()){\n pos += 1;\n }\n // currently special character\n if (pos < cookiesString.length && cookiesString.charAt(pos) === \"=\") {\n // we found cookies separator\n cookiesSeparatorFound = true;\n // pos is inside the next cookie, so back up and return it.\n pos = nextStart;\n cookiesStrings.push(cookiesString.substring(start, lastComma));\n start = pos;\n } else {\n // in param ',' or param separator ';',\n // we continue from that comma\n pos = lastComma + 1;\n }\n } else {\n pos += 1;\n }\n }\n if (!cookiesSeparatorFound || pos >= cookiesString.length) {\n cookiesStrings.push(cookiesString.substring(start, cookiesString.length));\n }\n }\n return cookiesStrings;\n}\nmodule.exports = parse;\nmodule.exports.parse = parse;\nmodule.exports.parseString = parseString;\nmodule.exports.splitCookiesString = splitCookiesString;\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFjdGlvbi1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9zZXQtY29va2llLXBhcnNlci9saWIvc2V0LWNvb2tpZS5qcyIsIm1hcHBpbmdzIjoiQUFBYTtBQUViLElBQUlBLHNCQUFzQjtJQUN4QkMsY0FBYztJQUNkQyxLQUFLO0lBQ0xDLFFBQVE7QUFDVjtBQUVBLFNBQVNDLGVBQWVDLEdBQUc7SUFDekIsT0FBTyxPQUFPQSxRQUFRLFlBQVlBLE9BQU8sQ0FBQztBQUM1QztBQUVBLFNBQVNDO0lBQ1AsT0FBT0MsT0FBT0MsTUFBTSxDQUFDO0FBQ3ZCO0FBRUEsU0FBU0MsaUJBQWlCQyxHQUFHO0lBQzNCLE9BQU8sT0FBT0EsUUFBUSxZQUFZLENBQUMsQ0FBQ0EsSUFBSUMsSUFBSTtBQUM5QztBQUVBLFNBQVNDLFlBQVlDLGNBQWMsRUFBRUMsT0FBTztJQUMxQyxJQUFJQyxRQUFRRixlQUFlRyxLQUFLLENBQUMsS0FBS0MsTUFBTSxDQUFDUjtJQUU3QyxJQUFJUyxtQkFBbUJILE1BQU1JLEtBQUs7SUFDbEMsSUFBSUMsU0FBU0MsbUJBQW1CSDtJQUNoQyxJQUFJSSxPQUFPRixPQUFPRSxJQUFJO0lBQ3RCLElBQUlDLFFBQVFILE9BQU9HLEtBQUs7SUFFeEJULFVBQVVBLFVBQ05QLE9BQU9pQixNQUFNLENBQUMsQ0FBQyxHQUFHeEIscUJBQXFCYyxXQUN2Q2Q7SUFFSixJQUFJSSxlQUFla0IsT0FBTztRQUN4QixPQUFPO0lBQ1Q7SUFFQSxJQUFJO1FBQ0ZDLFFBQVFULFFBQVFiLFlBQVksR0FBR3dCLG1CQUFtQkYsU0FBU0EsT0FBTyxzQkFBc0I7SUFDMUYsRUFBRSxPQUFPRyxHQUFHO1FBQ1ZDLFFBQVFDLEtBQUssQ0FDWCx5R0FDQUY7SUFFSjtJQUVBLElBQUlHLFNBQVN2QjtJQUNidUIsT0FBT1AsSUFBSSxHQUFHQTtJQUNkTyxPQUFPTixLQUFLLEdBQUdBO0lBRWZSLE1BQU1lLE9BQU8sQ0FBQyxTQUFVQyxJQUFJO1FBQzFCLElBQUlDLFFBQVFELEtBQUtmLEtB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LE9BQU87Z0JBRVBNO2dCQUNBRixZQUFZSjtnQkFFWixNQUFPQSxNQUFNRixjQUFjZixNQUFNLElBQUkwQixpQkFBa0I7b0JBQ3JEVCxPQUFPO2dCQUNUO2dCQUVBLDhCQUE4QjtnQkFDOUIsSUFBSUEsTUFBTUYsY0FBY2YsTUFBTSxJQUFJZSxjQUFjVSxNQUFNLENBQUNSLFNBQVMsS0FBSztvQkFDbkUsNkJBQTZCO29CQUM3Qkssd0JBQXdCO29CQUN4QiwyREFBMkQ7b0JBQzNETCxNQUFNSTtvQkFDTkwsZUFBZVcsSUFBSSxDQUFDWixjQUFjYSxTQUFTLENBQUNWLE9BQU9FO29CQUNuREYsUUFBUUQ7Z0JBQ1YsT0FBTztvQkFDTCx1Q0FBdUM7b0JBQ3ZDLDhCQUE4QjtvQkFDOUJBLE1BQU1HLFlBQVk7Z0JBQ3BCO1lBQ0YsT0FBTztnQkFDTEgsT0FBTztZQUNUO1FBQ0Y7UUFFQSxJQUFJLENBQUNLLHlCQUF5QkwsT0FBT0YsY0FBY2YsTUFBTSxFQUFFO1lBQ3pEZ0IsZUFBZVcsSUFBSSxDQUFDWixjQUFjYSxTQUFTLENBQUNWLE9BQU9ILGNBQWNmLE1BQU07UUFDekU7SUFDRjtJQUVBLE9BQU9nQjtBQUNUO0FBRUFhLE9BQU9DLE9BQU8sR0FBRzdCO0FBQ2pCNEIsb0JBQW9CLEdBQUc1QjtBQUN2QjRCLDBCQUEwQixHQUFHakU7QUFDN0JpRSxpQ0FBaUMsR0FBR2YiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly93aGlza3ktdmF1bHQvLi9ub2RlX21vZHVsZXMvc2V0LWNvb2tpZS1wYXJzZXIvbGliL3NldC1jb29raWUuanM/MzMxMyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxudmFyIGRlZmF1bHRQYXJzZU9wdGlvbnMgPSB7XG4gIGRlY29kZVZhbHVlczogdHJ1ZSxcbiAgbWFwOiBmYWxzZSxcbiAgc2lsZW50OiBmYWxzZSxcbn07XG5cbmZ1bmN0aW9uIGlzRm9yYmlkZGVuS2V5KGtleSkge1xuICByZXR1cm4gdHlwZW9mIGtleSAhPT0gXCJzdHJpbmdcIiB8fCBrZXkgaW4ge307XG59XG5cbmZ1bmN0aW9uIGNyZWF0ZU51bGxPYmooKSB7XG4gIHJldHVybiBPYmplY3QuY3JlYXRlKG51bGwpO1xufVxuXG5mdW5jdGlvbiBpc05vbkVtcHR5U3RyaW5nKHN0cikge1xuICByZXR1cm4gdHlwZW9mIHN0ciA9PT0gXCJzdHJpbmdcIiAmJiAhIXN0ci50cmltKCk7XG59XG5cbmZ1bmN0aW9uIHBhcnNlU3RyaW5nKHNldENvb2tpZVZhbHVlLCBvcHRpb25zKSB7XG4gIHZhciBwYXJ0cyA9IHNldENvb2tpZVZhbHVlLnNwbGl0KFwiO1wiKS5maWx0ZXIoaXNOb25FbXB0eVN0cmluZyk7XG5cbiAgdmFyIG5hbWVWYWx1ZVBhaXJTdHIgPSBwYXJ0cy5zaGlmdCgpO1xuICB2YXIgcGFyc2VkID0gcGFyc2VOYW1lVmFsdWVQYWlyKG5hbWVWYWx1ZVBhaXJTdHIpO1xuICB2YXIgbmFtZSA9IHBhcnNlZC5uYW1lO1xuICB2YXIgdmFsdWUgPSBwYXJzZWQudmFsdWU7XG5cbiAgb3B0aW9ucyA9IG9wdGlvbnNcbiAgICA/IE9iamVjdC5hc3NpZ24oe30sIGRlZmF1bHRQYXJzZU9wdGlvbnMsIG9wdGlvbnMpXG4gICAgOiBkZWZhdWx0UGFyc2VPcHRpb25zO1xuXG4gIGlmIChpc0ZvcmJpZGRlbktleShuYW1lKSkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgdHJ5IHtcbiAgICB2YWx1ZSA9IG9wdGlvbnMuZGVjb2RlVmFsdWVzID8gZGVjb2RlVVJJQ29tcG9uZW50KHZhbHVlKSA6IHZhbHVlOyAvLyBkZWNvZGUgY29va2llIHZhbHVlXG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBjb25zb2xlLmVycm9yKFxuICAgICAgXCJzZXQtY29va2llLXBhcnNlcjogZmFpbGVkIHRvIGRlY29kZSBjb29raWUgdmFsdWUuIFNldCBvcHRpb25zLmRlY29kZVZhbHVlcz1mYWxzZSB0byBkaXNhYmxlIGRlY29kaW5nLlwiLFxuICAgICAgZVxuICAgICk7XG4gIH1cblxuICB2YXIgY29va2llID0gY3JlYXRlTnVsbE9iaigpO1xuICBjb29raWUubmFtZSA9IG5hbWU7XG4gIGNvb2tpZS52YWx1ZSA9IHZhbHVlO1xuXG4gIHBhcnRzLmZvckVhY2goZnVuY3Rpb24gKHBhcnQpIHtcbiAgICB2YXIgc2lkZXMgPSBwYXJ0LnNwbGl0KFwiPVwiKTtcbiAgICB2YXIga2V5ID0gc2lkZXMuc2hpZnQoKS50cmltTGVmdCgpLnRvTG93ZXJDYXNlKCk7XG4gICAgaWYgKGlzRm9yYmlkZGVuS2V5KGtleSkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdmFyIHZhbHVlID0gc2lkZXMuam9pbihcIj1cIik7XG4gICAgaWYgKGtleSA9PT0gXCJleHBpcmVzXCIpIHtcbiAgICAgIGNvb2tpZS5leHBpcmVzID0gbmV3IERhdGUodmFsdWUpO1xuICAgIH0gZWxzZSBpZiAoa2V5ID09PSBcIm1heC1hZ2VcIikge1xuICAgICAgdmFyIG4gPSBwYXJzZUludCh2YWx1ZSwgMTApO1xuICAgICAgaWYgKCFOdW1iZXIuaXNOYU4obikpIGNvb2tpZS5tYXhBZ2UgPSBuO1xuICAgIH0gZWxzZSBpZiAoa2V5ID09PSBcInNlY3VyZVwiKSB7XG4gICAgICBjb29raWUuc2VjdXJlID0gdHJ1ZTtcbiAgICB9IGVsc2UgaWYgKGtleSA9PT0gXCJodHRwb25seVwiKSB7XG4gICAgICBjb29raWUuaHR0cE9ubHkgPSB0cnVlO1xuICAgIH0gZWxzZSBpZiAoa2V5ID09PSBcInNhbWVzaXRlXCIpIHtcbiAgICAgIGNvb2tpZS5zYW1lU2l0ZSA9IHZhbHVlO1xuICAgIH0gZWxzZSBpZiAoa2V5ID09PSBcInBhcnRpdGlvbmVkXCIpIHtcbiAgICAgIGNvb2tpZS5wYXJ0aXRpb25lZCA9IHRydWU7XG4gICAgfSBlbHNlIGlmIChrZXkpIHtcbiAgICAgIGNvb2tpZVtrZXldID0gdmFsdWU7XG4gICAgfVxuICB9KTtcblxuICByZXR1cm4gY29va2llO1xufVxuXG5mdW5jdGlvbiBwYXJzZU5hbWVWYWx1ZVBhaXIobmFtZVZhbHVlUGFpclN0cikge1xuICAvLyBQYXJzZXMgbmFtZS12YWx1ZS1wYWlyIGFjY29yZGluZyB0byByZmM2MjY1YmlzIGRyYWZ0XG5cbiAgdmFyIG5hbWUgPSBcIlwiO1xuICB2YXIgdmFsdWUgPSBcIlwiO1xuICB2YXIgbmFtZVZhbHVlQXJyID0gbmFtZVZhbHVlUGFpclN0ci5zcGxpdChcIj1cIik7XG4gIGlmIChuYW1lVmFsdWVBcnIubGVuZ3RoID4gMSkge1xuICAgIG5hbWUgPSBuYW1lVmFsdWVBcnIuc2hpZnQoKTtcbiAgICB2YWx1ZSA9IG5hbWVWYWx1ZUFyci5qb2luKFwiPVwiKTsgLy8gZXZlcnl0aGluZyBhZnRlciB0aGUgZmlyc3QgPSwgam9pbmVkIGJ5IGEgXCI9XCIgaWYgdGhlcmUgd2FzIG1vcmUgdGhhbiBvbmUgcGFydFxuICB9IGVsc2Uge1xuICAgIHZhbHVlID0gbmFtZVZhbHVlUGFpclN0cjtcbiAgfVxuXG4gIHJldHVybiB7IG5hbWU6IG5hbWUsIHZhbHVlOiB2YWx1ZSB9O1xufVxuXG5mdW5jdGlvbiBwYXJzZShpbnB1dCwgb3B0aW9ucykge1xuICBvcHRpb25zID0gb3B0aW9uc1xuICAgID8gT2JqZWN0LmFzc2lnbih7fSwgZGVmYXVsdFBhcnNlT3B0aW9ucywgb3B0aW9ucylcbiAgICA6IGRlZmF1bHRQYXJzZU9wdGlvbnM7XG5cbiAgaWYgKCFpbnB1dCkge1xuICAgIGlmICghb3B0aW9ucy5tYXApIHtcbiAgICAgIHJldHVybiBbXTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGNyZWF0ZU51bGxPYmooKTtcbiAgICB9XG4gIH1cblxuICBpZiAoaW5wdXQuaGVhZGVycykge1xuICAgIGlmICh0eXBlb2YgaW5wdXQuaGVhZGVycy5nZXRTZXRDb29raWUgPT09IFwiZnVuY3Rpb25cIikge1xuICAgICAgLy8gZm9yIGZldGNoIHJlc3BvbnNlcyAtIHRoZXkgY29tYmluZSBoZWFkZXJzIG9mIHRoZSBzYW1lIHR5cGUgaW4gdGhlIGhlYWRlcnMgYXJyYXksXG4gICAgICAvLyBidXQgZ2V0U2V0Q29va2llIHJldHVybnMgYW4gdW5jb21iaW5lZCBhcnJheVxuICAgICAgaW5wdXQgPSBpbnB1dC5oZWFkZXJzLmdldFNldENvb2tpZSgpO1xuICAgIH0gZWxzZSBpZiAoaW5wdXQuaGVhZGVyc1tcInNldC1jb29raWVcIl0pIHtcbiAgICAgIC8vIGZhc3QtcGF0aCBmb3Igbm9kZS5qcyAod2hpY2ggYXV0b21hdGljYWxseSBub3JtYWxpemVzIGhlYWRlciBuYW1lcyB0byBsb3dlci1jYXNlKVxuICAgICAgaW5wdXQgPSBpbnB1dC5oZWFkZXJzW1wic2V0LWNvb2tpZVwiXTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gc2xvdy1wYXRoIGZvciBvdGhlciBlbnZpcm9ubWVudHMgLSBzZWUgIzI1XG4gICAgICB2YXIgc2NoID1cbiAgICAgICAgaW5wdXQuaGVhZGVyc1tcbiAgICAgICAgICBPYmplY3Qua2V5cyhpbnB1dC5oZWFkZXJzKS5maW5kKGZ1bmN0aW9uIChrZXkpIHtcbiAgICAgICAgICAgIHJldHVybiBrZXkudG9Mb3dlckNhc2UoKSA9PT0gXCJzZXQtY29va2llXCI7XG4gICAgICAgICAgfSlcbiAgICAgICAgXTtcbiAgICAgIC8vIHdhcm4gaWYgY2FsbGVkIG9uIGEgcmVxdWVzdC1saWtlIG9iamVjdCB3aXRoIGEgY29va2llIGhlYWRlciByYXRoZXIgdGhhbiBhIHNldC1jb29raWUgaGVhZGVyIC0gc2VlICMzNCwgMzZcbiAgICAgIGlmICghc2NoICYmIGlucHV0LmhlYWRlcnMuY29va2llICYmICFvcHRpb25zLnNpbGVudCkge1xuICAgICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgICAgXCJXYXJuaW5nOiBzZXQtY29va2llLXBhcnNlciBhcHBlYXJzIHRvIGhhdmUgYmVlbiBjYWxsZWQgb24gYSByZXF1ZXN0IG9iamVjdC4gSXQgaXMgZGVzaWduZWQgdG8gcGFyc2UgU2V0LUNvb2tpZSBoZWFkZXJzIGZyb20gcmVzcG9uc2VzLCBub3QgQ29va2llIGhlYWRlcnMgZnJvbSByZXF1ZXN0cy4gU2V0IHRoZSBvcHRpb24ge3NpbGVudDogdHJ1ZX0gdG8gc3VwcHJlc3MgdGhpcyB3YXJuaW5nLlwiXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICBpbnB1dCA9IHNjaDtcbiAgICB9XG4gIH1cbiAgaWYgKCFBcnJheS5pc0FycmF5KGlucHV0KSkge1xuICAgIGlucHV0ID0gW2lucHV0XTtcbiAgfVxuXG4gIGlmICghb3B0aW9ucy5tYXApIHtcbiAgICByZXR1cm4gaW5wdXRcbiAgICAgIC5maWx0ZXIoaXNOb25FbXB0eVN0cmluZylcbiAgICAgIC5tYXAoZnVuY3Rpb24gKHN0cikge1xuICAgICAgICByZXR1cm4gcGFyc2VTdHJpbmcoc3RyLCBvcHRpb25zKTtcbiAgICAgIH0pXG4gICAgICAuZmlsdGVyKEJvb2xlYW4pO1xuICB9IGVsc2Uge1xuICAgIHZhciBjb29raWVzID0gY3JlYXRlTnVsbE9iaigpO1xuICAgIHJldHVybiBpbnB1dC5maWx0ZXIoaXNOb25FbXB0eVN0cmluZykucmVkdWNlKGZ1bmN0aW9uIChjb29raWVzLCBzdHIpIHtcbiAgICAgIHZhciBjb29raWUgPSBwYXJzZVN0cmluZyhzdHIsIG9wdGlvbnMpO1xuICAgICAgaWYgKGNvb2tpZSAmJiAhaXNGb3JiaWRkZW5LZXkoY29va2llLm5hbWUpKSB7XG4gICAgICAgIGNvb2tpZXNbY29va2llLm5hbWVdID0gY29va2llO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGNvb2tpZXM7XG4gICAgfSwgY29va2llcyk7XG4gIH1cbn1cblxuLypcbiAgU2V0LUNvb2tpZSBoZWFkZXIgZmllbGQtdmFsdWVzIGFyZSBzb21ldGltZXMgY29tbWEgam9pbmVkIGluIG9uZSBzdHJpbmcuIFRoaXMgc3BsaXRzIHRoZW0gd2l0aG91dCBjaG9raW5nIG9uIGNvbW1hc1xuICB0aGF0IGFyZSB3aXRoaW4gYSBzaW5nbGUgc2V0LWNvb2tpZSBmaWVsZC12YWx1ZSwgc3VjaCBhcyBpbiB0aGUgRXhwaXJlcyBwb3J0aW9uLlxuXG4gIFRoaXMgaXMgdW5jb21tb24sIGJ1dCBleHBsaWNpdGx5IGFsbG93ZWQgLSBzZWUgaHR0cHM6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzI2MTYjc2VjdGlvbi00LjJcbiAgTm9kZS5qcyBkb2VzIHRoaXMgZm9yIGV2ZXJ5IGhlYWRlciAqZXhjZXB0KiBzZXQtY29va2llIC0gc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9ub2RlanMvbm9kZS9ibG9iL2Q1ZTM2M2I3N2ViYWYxY2FmNjdjZDc1MjgyMjRiNjUxYzg2ODE1YzEvbGliL19odHRwX2luY29taW5nLmpzI0wxMjhcbiAgUmVhY3QgTmF0aXZlJ3MgZmV0Y2ggZG9lcyB0aGlzIGZvciAqZXZlcnkqIGhlYWRlciwgaW5jbHVkaW5nIHNldC1jb29raWUuXG5cbiAgQmFzZWQgb246IGh0dHBzOi8vZ2l0aHViLmNvbS9nb29nbGUvajJvYmpjL2NvbW1pdC8xNjgyMGZkYmM4Zjc2Y2EwYzMzNDcyODEwY2UwY2IwM2QyMGVmZTI1XG4gIENyZWRpdHMgdG86IGh0dHBzOi8vZ2l0aHViLmNvbS90b21iYWxsIGZvciBvcmlnaW5hbCBhbmQgaHR0cHM6Ly9naXRodWIuY29tL2NocnVzYXJ0IGZvciBKYXZhU2NyaXB0IGltcGxlbWVudGF0aW9uXG4qL1xuZnVuY3Rpb24gc3BsaXRDb29raWVzU3RyaW5nKGNvb2tpZXNTdHJpbmcpIHtcbiAgaWYgKEFycmF5LmlzQXJyYXkoY29va2llc1N0cmluZykpIHtcbiAgICByZXR1cm4gY29va2llc1N0cmluZztcbiAgfVxuICBpZiAodHlwZW9mIGNvb2tpZXNTdHJpbmcgIT09IFwic3RyaW5nXCIpIHtcbiAgICByZXR1cm4gW107XG4gIH1cblxuICB2YXIgY29va2llc1N0cmluZ3MgPSBbXTtcbiAgdmFyIHBvcyA9IDA7XG4gIHZhciBzdGFydDtcbiAgdmFyIGNoO1xuICB2YXIgbGFzdENvbW1hO1xuICB2YXIgbmV4dFN0YXJ0O1xuICB2YXIgY29va2llc1NlcGFyYXRvckZvdW5kO1xuXG4gIGZ1bmN0aW9uIHNraXBXaGl0ZXNwYWNlKCkge1xuICAgIHdoaWxlIChwb3MgPCBjb29raWVzU3RyaW5nLmxlbmd0aCAmJiAvXFxzLy50ZXN0KGNvb2tpZXNTdHJpbmcuY2hhckF0KHBvcykpKSB7XG4gICAgICBwb3MgKz0gMTtcbiAgICB9XG4gICAgcmV0dXJuIHBvcyA8IGNvb2tpZXNTdHJpbmcubGVuZ3RoO1xuICB9XG5cbiAgZnVuY3Rpb24gbm90U3BlY2lhbENoYXIoKSB7XG4gICAgY2ggPSBjb29raWVzU3RyaW5nLmNoYXJBdChwb3MpO1xuXG4gICAgcmV0dXJuIGNoICE9PSBcIj1cIiAmJiBjaCAhPT0gXCI7XCIgJiYgY2ggIT09IFwiLFwiO1xuICB9XG5cbiAgd2hpbGUgKHBvcyA8IGNvb2tpZXNTdHJpbmcubGVuZ3RoKSB7XG4gICAgc3RhcnQgPSBwb3M7XG4gICAgY29va2llc1NlcGFyYXRvckZvdW5kID0gZmFsc2U7XG5cbiAgICB3aGlsZSAoc2tpcFdoaXRlc3BhY2UoKSkge1xuICAgICAgY2ggPSBjb29raWVzU3RyaW5nLmNoYXJBdChwb3MpO1xuICAgICAgaWYgKGNoID09PSBcIixcIikge1xuICAgICAgICAvLyAnLCcgaXMgYSBjb29raWUgc2VwYXJhdG9yIGlmIHdlIGhhdmUgbGF0ZXIgZmlyc3QgJz0nLCBub3QgJzsnIG9yICcsJ1xuICAgICAgICBsYXN0Q29tbWEgPSBwb3M7XG4gICAgICAgIHBvcyArPSAxO1xuXG4gICAgICAgIHNraXBXaGl0ZXNwYWNlKCk7XG4gICAgICAgIG5leHRTdGFydCA9IHBvcztcblxuICAgICAgICB3aGlsZSAocG9zIDwgY29va2llc1N0cmluZy5sZW5ndGggJiYgbm90U3BlY2lhbENoYXIoKSkge1xuICAgICAgICAgIHBvcyArPSAxO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gY3VycmVudGx5IHNwZWNpYWwgY2hhcmFjdGVyXG4gICAgICAgIGlmIChwb3MgPCBjb29raWVzU3RyaW5nLmxlbmd0aCAmJiBjb29raWVzU3RyaW5nLmNoYXJBdChwb3MpID09PSBcIj1cIikge1xuICAgICAgICAgIC8vIHdlIGZvdW5kIGNvb2tpZXMgc2VwYXJhdG9yXG4gICAgICAgICAgY29va2llc1NlcGFyYXRvckZvdW5kID0gdHJ1ZTtcbiAgICAgICAgICAvLyBwb3MgaXMgaW5zaWRlIHRoZSBuZXh0IGNvb2tpZSwgc28gYmFjayB1cCBhbmQgcmV0dXJuIGl0LlxuICAgICAgICAgIHBvcyA9IG5leHRTdGFydDtcbiAgICAgICAgICBjb29raWVzU3RyaW5ncy5wdXNoKGNvb2tpZXNTdHJpbmcuc3Vic3RyaW5nKHN0YXJ0LCBsYXN0Q29tbWEpKTtcbiAgICAgICAgICBzdGFydCA9IHBvcztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAvLyBpbiBwYXJhbSAnLCcgb3IgcGFyYW0gc2VwYXJhdG9yICc7JyxcbiAgICAgICAgICAvLyB3ZSBjb250aW51ZSBmcm9tIHRoYXQgY29tbWFcbiAgICAgICAgICBwb3MgPSBsYXN0Q29tbWEgKyAxO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBwb3MgKz0gMTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoIWNvb2tpZXNTZXBhcmF0b3JGb3VuZCB8fCBwb3MgPj0gY29va2llc1N0cmluZy5sZW5ndGgpIHtcbiAgICAgIGNvb2tpZXNTdHJpbmdzLnB1c2goY29va2llc1N0cmluZy5zdWJzdHJpbmcoc3RhcnQsIGNvb2tpZXNTdHJpbmcubGVuZ3RoKSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGNvb2tpZXNTdHJpbmdzO1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IHBhcnNlO1xubW9kdWxlLmV4cG9ydHMucGFyc2UgPSBwYXJzZTtcbm1vZHVsZS5leHBvcnRzLnBhcnNlU3RyaW5nID0gcGFyc2VTdHJpbmc7XG5tb2R1bGUuZXhwb3J0cy5zcGxpdENvb2tpZXNTdHJpbmcgPSBzcGxpdENvb2tpZXNTdHJpbmc7XG4iXSwibmFtZXMiOlsiZGVmYXVsdFBhcnNlT3B0aW9ucyIsImRlY29kZVZhbHVlcyIsIm1hcCIsInNpbGVudCIsImlzRm9yYmlkZGVuS2V5Iiwia2V5IiwiY3JlYXRlTnVsbE9iaiIsIk9iamVjdCIsImNyZWF0ZSIsImlzTm9uRW1wdHlTdHJpbmciLCJzdHIiLCJ0cmltIiwicGFyc2VTdHJpbmciLCJzZXRDb29raWVWYWx1ZSIsIm9wdGlvbnMiLCJwYXJ0cyIsInNwbGl0IiwiZmlsdGVyIiwibmFtZVZhbHVlUGFpclN0ciIsInNoaWZ0IiwicGFyc2VkIiwicGFyc2VOYW1lVmFsdWVQYWlyIiwibmFtZSIsInZhbHVlIiwiYXNzaWduIiwiZGVjb2RlVVJJQ29tcG9uZW50IiwiZSIsImNvbnNvbGUiLCJlcnJvciIsImNvb2tpZSIsImZvckVhY2giLCJwYXJ0Iiwic2lkZXMiLCJ0cmltTGVmdCIsInRvTG93ZXJDYXNlIiwiam9pbiIsImV4cGlyZXMiLCJEYXRlIiwibiIsInBhcnNlSW50IiwiTnVtYmVyIiwiaXNOYU4iLCJtYXhBZ2UiLCJzZWN1cmUiLCJodHRwT25seSIsInNhbWVTaXRlIiwicGFydGl0aW9uZWQiLCJuYW1lVmFsdWVBcnIiLCJsZW5ndGgiLCJwYXJzZSIsImlucHV0IiwiaGVhZGVycyIsImdldFNldENvb2tpZSIsInNjaCIsImtleXMiLCJmaW5kIiwid2FybiIsIkFycmF5IiwiaXNBcnJheSIsIkJvb2xlYW4iLCJjb29raWVzIiwicmVkdWNlIiwic3BsaXRDb29raWVzU3RyaW5nIiwiY29va2llc1N0cmluZyIsImNvb2tpZXNTdHJpbmdzIiwicG9zIiwic3RhcnQiLCJjaCIsImxhc3RDb21tYSIsIm5leHRTdGFydCIsImNvb2tpZXNTZXBhcmF0b3JGb3VuZCIsInNraXBXaGl0ZXNwYWNlIiwidGVzdCIsImNoYXJBdCIsIm5vdFNwZWNpYWxDaGFyIiwicHVzaCIsInN1YnN0cmluZyIsIm1vZHVsZSIsImV4cG9ydHMiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(action-browser)/./node_modules/set-cookie-parser/lib/set-cookie.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/set-cookie-parser/lib/set-cookie.js":
/*!**********************************************************!*\
!*** ./node_modules/set-cookie-parser/lib/set-cookie.js ***!
\**********************************************************/
/***/ ((module) => {
eval("\nvar defaultParseOptions = {\n decodeValues: true,\n map: false,\n silent: false\n};\nfunction isForbiddenKey(key) {\n return typeof key !== \"string\" || key in {};\n}\nfunction createNullObj() {\n return Object.create(null);\n}\nfunction isNonEmptyString(str) {\n return typeof str === \"string\" && !!str.trim();\n}\nfunction parseString(setCookieValue, options) {\n var parts = setCookieValue.split(\";\").filter(isNonEmptyString);\n var nameValuePairStr = parts.shift();\n var parsed = parseNameValuePair(nameValuePairStr);\n var name = parsed.name;\n var value = parsed.value;\n options = options ? Object.assign({}, defaultParseOptions, options) : defaultParseOptions;\n if (isForbiddenKey(name)) {\n return null;\n }\n try {\n value = options.decodeValues ? decodeURIComponent(value) : value; // decode cookie value\n } catch (e) {\n console.error(\"set-cookie-parser: failed to decode cookie value. Set options.decodeValues=false to disable decoding.\", e);\n }\n var cookie = createNullObj();\n cookie.name = name;\n cookie.value = value;\n parts.forEach(function(part) {\n var sides = part.split(\"=\");\n var key = sides.shift().trimLeft().toLowerCase();\n if (isForbiddenKey(key)) {\n return;\n }\n var value = sides.join(\"=\");\n if (key === \"expires\") {\n cookie.expires = new Date(value);\n } else if (key === \"max-age\") {\n var n = parseInt(value, 10);\n if (!Number.isNaN(n)) cookie.maxAge = n;\n } else if (key === \"secure\") {\n cookie.secure = true;\n } else if (key === \"httponly\") {\n cookie.httpOnly = true;\n } else if (key === \"samesite\") {\n cookie.sameSite = value;\n } else if (key === \"partitioned\") {\n cookie.partitioned = true;\n } else if (key) {\n cookie[key] = value;\n }\n });\n return cookie;\n}\nfunction parseNameValuePair(nameValuePairStr) {\n // Parses name-value-pair according to rfc6265bis draft\n var name = \"\";\n var value = \"\";\n var nameValueArr = nameValuePairStr.split(\"=\");\n if (nameValueArr.length > 1) {\n name = nameValueArr.shift();\n value = nameValueArr.join(\"=\"); // everything after the first =, joined by a \"=\" if there was more than one part\n } else {\n value = nameValuePairStr;\n }\n return {\n name: name,\n value: value\n };\n}\nfunction parse(input, options) {\n options = options ? Object.assign({}, defaultParseOptions, options) : defaultParseOptions;\n if (!input) {\n if (!options.map) {\n return [];\n } else {\n return createNullObj();\n }\n }\n if (input.headers) {\n if (typeof input.headers.getSetCookie === \"function\") {\n // for fetch responses - they combine headers of the same type in the headers array,\n // but getSetCookie returns an uncombined array\n input = input.headers.getSetCookie();\n } else if (input.headers[\"set-cookie\"]) {\n // fast-path for node.js (which automatically normalizes header names to lower-case)\n input = input.headers[\"set-cookie\"];\n } else {\n // slow-path for other environments - see #25\n var sch = input.headers[Object.keys(input.headers).find(function(key) {\n return key.toLowerCase() === \"set-cookie\";\n })];\n // warn if called on a request-like object with a cookie header rather than a set-cookie header - see #34, 36\n if (!sch && input.headers.cookie && !options.silent) {\n console.warn(\"Warning: set-cookie-parser appears to have been called on a request object. It is designed to parse Set-Cookie headers from responses, not Cookie headers from requests. Set the option {silent: true} to suppress this warning.\");\n }\n input = sch;\n }\n }\n if (!Array.isArray(input)) {\n input = [\n input\n ];\n }\n if (!options.map) {\n return input.filter(isNonEmptyString).map(function(str) {\n return parseString(str, options);\n }).filter(Boolean);\n } else {\n var cookies = createNullObj();\n return input.filter(isNonEmptyString).reduce(function(cookies, str) {\n var cookie = parseString(str, options);\n if (cookie && !isForbiddenKey(cookie.name)) {\n cookies[cookie.name] = cookie;\n }\n return cookies;\n }, cookies);\n }\n}\n/*\n Set-Cookie header field-values are sometimes comma joined in one string. This splits them without choking on commas\n that are within a single set-cookie field-value, such as in the Expires portion.\n\n This is uncommon, but explicitly allowed - see https://tools.ietf.org/html/rfc2616#section-4.2\n Node.js does this for every header *except* set-cookie - see https://github.com/nodejs/node/blob/d5e363b77ebaf1caf67cd7528224b651c86815c1/lib/_http_incoming.js#L128\n React Native's fetch does this for *every* header, including set-cookie.\n\n Based on: https://github.com/google/j2objc/commit/16820fdbc8f76ca0c33472810ce0cb03d20efe25\n Credits to: https://github.com/tomball for original and https://github.com/chrusart for JavaScript implementation\n*/ function splitCookiesString(cookiesString) {\n if (Array.isArray(cookiesString)) {\n return cookiesString;\n }\n if (typeof cookiesString !== \"string\") {\n return [];\n }\n var cookiesStrings = [];\n var pos = 0;\n var start;\n var ch;\n var lastComma;\n var nextStart;\n var cookiesSeparatorFound;\n function skipWhitespace() {\n while(pos < cookiesString.length && /\\s/.test(cookiesString.charAt(pos))){\n pos += 1;\n }\n return pos < cookiesString.length;\n }\n function notSpecialChar() {\n ch = cookiesString.charAt(pos);\n return ch !== \"=\" && ch !== \";\" && ch !== \",\";\n }\n while(pos < cookiesString.length){\n start = pos;\n cookiesSeparatorFound = false;\n while(skipWhitespace()){\n ch = cookiesString.charAt(pos);\n if (ch === \",\") {\n // ',' is a cookie separator if we have later first '=', not ';' or ','\n lastComma = pos;\n pos += 1;\n skipWhitespace();\n nextStart = pos;\n while(pos < cookiesString.length && notSpecialChar()){\n pos += 1;\n }\n // currently special character\n if (pos < cookiesString.length && cookiesString.charAt(pos) === \"=\") {\n // we found cookies separator\n cookiesSeparatorFound = true;\n // pos is inside the next cookie, so back up and return it.\n pos = nextStart;\n cookiesStrings.push(cookiesString.substring(start, lastComma));\n start = pos;\n } else {\n // in param ',' or param separator ';',\n // we continue from that comma\n pos = lastComma + 1;\n }\n } else {\n pos += 1;\n }\n }\n if (!cookiesSeparatorFound || pos >= cookiesString.length) {\n cookiesStrings.push(cookiesString.substring(start, cookiesString.length));\n }\n }\n return cookiesStrings;\n}\nmodule.exports = parse;\nmodule.exports.parse = parse;\nmodule.exports.parseString = parseString;\nmodule.exports.splitCookiesString = splitCookiesString;\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvc2V0LWNvb2tpZS1wYXJzZXIvbGliL3NldC1jb29raWUuanMiLCJtYXBwaW5ncyI6IkFBQWE7QUFFYixJQUFJQSxzQkFBc0I7SUFDeEJDLGNBQWM7SUFDZEMsS0FBSztJQUNMQyxRQUFRO0FBQ1Y7QUFFQSxTQUFTQyxlQUFlQyxHQUFHO0lBQ3pCLE9BQU8sT0FBT0EsUUFBUSxZQUFZQSxPQUFPLENBQUM7QUFDNUM7QUFFQSxTQUFTQztJQUNQLE9BQU9DLE9BQU9DLE1BQU0sQ0FBQztBQUN2QjtBQUVBLFNBQVNDLGlCQUFpQkMsR0FBRztJQUMzQixPQUFPLE9BQU9BLFFBQVEsWUFBWSxDQUFDLENBQUNBLElBQUlDLElBQUk7QUFDOUM7QUFFQSxTQUFTQyxZQUFZQyxjQUFjLEVBQUVDLE9BQU87SUFDMUMsSUFBSUMsUUFBUUYsZUFBZUcsS0FBSyxDQUFDLEtBQUtDLE1BQU0sQ0FBQ1I7SUFFN0MsSUFBSVMsbUJBQW1CSCxNQUFNSSxLQUFLO0lBQ2xDLElBQUlDLFNBQVNDLG1CQUFtQkg7SUFDaEMsSUFBSUksT0FBT0YsT0FBT0UsSUFBSTtJQUN0QixJQUFJQyxRQUFRSCxPQUFPRyxLQUFLO0lBRXhCVCxVQUFVQSxVQUNOUCxPQUFPaUIsTUFBTSxDQUFDLENBQUMsR0FBR3hCLHFCQUFxQmMsV0FDdkNkO0lBRUosSUFBSUksZUFBZWtCLE9BQU87UUFDeEIsT0FBTztJQUNUO0lBRUEsSUFBSTtRQUNGQyxRQUFRVCxRQUFRYixZQUFZLEdBQUd3QixtQkFBbUJGLFNBQVNBLE9BQU8sc0JBQXNCO0lBQzFGLEVBQUUsT0FBT0csR0FBRztRQUNWQyxRQUFRQyxLQUFLLENBQ1gseUdBQ0FGO0lBRUo7SUFFQSxJQUFJRyxTQUFTdkI7SUFDYnVCLE9BQU9QLElBQUksR0FBR0E7SUFDZE8sT0FBT04sS0FBSyxHQUFHQTtJQUVmUixNQUFNZSxPQUFPLENBQUMsU0FBVUMsSUFBSTtRQUMxQixJQUFJQyxRQUFRRCxLQUFLZixLQUFLLENBQUM7UUFDdkIsSUFBSVgsTUFBTTJCLE1BQU1iLEtBQUssR0FBR2MsUUFBUSxHQUFHQyxXQUFXO1FBQzlDLElBQUk5QixlQUFlQyxNQUFNO1lBQ3ZCO1FBQ0Y7UUFDQSxJQUFJa0IsUUFBUVMsTUFBTUcsSUFBSSxDQUFDO1FBQ3ZCLElBQUk5QixRQUFRLFdBQVc7WUFDckJ3QixPQUFPTyxPQUFPLEdBQUcsSUFBSUMsS0FBS2Q7UUFDNUIsT0FBTyxJQUFJbEIsUUFBUSxXQUFXO1lBQzVCLElBQUlpQyxJQUFJQyxTQUFTaEIsT0FBTztZQUN4QixJQUFJLENBQUNpQixPQUFPQyxLQUFLLENBQUNILElBQUlULE9BQU9hLE1BQU0sR0FBR0o7UUFDeEMsT0FBTyxJQUFJakMsUUFBUSxVQUFVO1lBQzNCd0IsT0FBT2MsTUFBTSxHQUFHO1FBQ2xCLE9BQU8sSUFBSXRDLFFBQVEsWUFBWTtZQUM3QndCLE9BQU9lLFFBQVEsR0FBRztRQUNwQixPQUFPLElBQUl2QyxRQUFRLFlBQVk7WUFDN0J3QixPQUFPZ0IsUUFBUSxHQUFHdEI7UUFDcEIsT0FBTyxJQUFJbEIsUUFBUSxlQUFlO1lBQ2hDd0IsT0FBT2lCLFdBQVcsR0FBRztRQUN2QixPQUFPLElBQUl6QyxLQUFLO1lBQ2R3QixNQUFNLENBQUN4QixJQUFJLEdBQUdrQjtRQUNoQjtJQUNGO0lBRUEsT0FBT007QUFDVDtBQUVBLFNBQVNSLG1CQUFtQkgsZ0JBQWdCO0lBQzFDLHVEQUF1RDtJQUV2RCxJQUFJSSxPQUFPO0lBQ1gsSUFBSUMsUUFBUTtJQUNaLElBQUl3QixlQUFlN0IsaUJBQWlCRixLQUFLLENBQUM7SUFDMUMsSUFBSStCLGFBQWFDLE1BQU0sR0FBRyxHQUFHO1FBQzNCMUIsT0FBT3lCLGFBQWE1QixLQUFLO1FBQ3pCSSxRQUFRd0IsYUFBYVosSUFBSSxDQUFDLE1BQU0sZ0ZBQWdGO0lBQ2xILE9BQU87UUFDTFosUUFBUUw7SUFDVjtJQUVBLE9BQU87UUFBRUksTUFBTUE7UUFBTUMsT0FBT0E7SUFBTTtBQUNwQztBQUVBLFNBQVMwQixNQUFNQyxLQUFLLEVBQUVwQyxPQUFPO0lBQzNCQSxVQUFVQSxVQUNOUCxPQUFPaUIsTUFBTSxDQUFDLENBQUMsR0FBR3hCLHFCQUFxQmMsV0FDdkNkO0lBRUosSUFBSSxDQUFDa0QsT0FBTztRQUNWLElBQUksQ0FBQ3BDLFFBQVFaLEdBQUcsRUFBRTtZQUNoQixPQUFPLEVBQUU7UUFDWCxPQUFPO1lBQ0wsT0FBT0k7UUFDVDtJQUNGO0lBRUEsSUFBSTRDLE1BQU1DLE9BQU8sRUFBRTtRQUNqQixJQUFJLE9BQU9ELE1BQU1DLE9BQU8sQ0FBQ0MsWUFBWSxLQUFLLFlBQVk7WUFDcEQsb0ZBQW9GO1lBQ3BGLCtDQUErQztZQUMvQ0YsUUFBUUEsTUFBTUMsT0FBTyxDQUFDQyxZQUFZO1FBQ3BDLE9BQU8sSUFBSUYsTUFBTUMsT0FBTyxDQUFDLGFBQWEsRUFBRTtZQUN0QyxvRkFBb0Y7WUFDcEZELFFBQVFBLE1BQU1DLE9BQU8sQ0FBQyxhQUFhO1FBQ3JDLE9BQU87WUFDTCw2Q0FBNkM7WUFDN0MsSUFBSUUsTUFDRkgsTUFBTUMsT0FBTyxDQUNYNUMsT0FBTytDLElBQUksQ0FBQ0osTUFBTUMsT0FBTyxFQUFFSSxJQUFJLENBQUMsU0FBVWxELEdBQUc7Z0JBQzNDLE9BQU9BLElBQUk2QixXQUFXLE9BQU87WUFDL0IsR0FDRDtZQUNILDZHQUE2RztZQUM3RyxJQUFJLENBQUNtQixPQUFPSCxNQUFNQyxPQUFPLENBQUN0QixNQUFNLElBQUksQ0FBQ2YsUUFBUVgsTUFBTSxFQUFFO2dCQUNuRHdCLFFBQVE2QixJQUFJLENBQ1Y7WUFFSjtZQUNBTixRQUFRRztRQUNWO0lBQ0Y7SUFDQSxJQUFJLENBQUNJLE1BQU1DLE9BQU8sQ0FBQ1IsUUFBUTtRQUN6QkEsUUFBUTtZQUFDQTtTQUFNO0lBQ2pCO0lBRUEsSUFBSSxDQUFDcEMsUUFBUVosR0FBRyxFQUFFO1FBQ2hCLE9BQU9nRCxNQUNKakMsTUFBTSxDQUFDUixrQkFDUFAsR0FBRyxDQUFDLFNBQVVRLEdBQUc7WUFDaEIsT0FBT0UsWUFBWUYsS0FBS0k7UUFDMUIsR0FDQ0csTUFBTSxDQUFDMEM7SUFDWixPQUFPO1FBQ0wsSUFBSUMsVUFBVXREO1FBQ2QsT0FBTzRDLE1BQU1qQyxNQUFNLENBQUNSLGtCQUFrQm9ELE1BQU0sQ0FBQyxTQUFVRCxPQUFPLEVBQUVsRCxHQUFHO1lBQ2pFLElBQUltQixTQUFTakIsWUFBWUYsS0FBS0k7WUFDOUIsSUFBSWUsVUFBVSxDQUFDekIsZUFBZXlCLE9BQU9QLElBQUksR0FBRztnQkFDMUNzQyxPQUFPLENBQUMvQixPQUFPUCxJQUFJLENBQUMsR0FBR087WUFDekI7WUFDQSxPQUFPK0I7UUFDVCxHQUFHQTtJQUNMO0FBQ0Y7QUFFQTs7Ozs7Ozs7OztBQVVBLEdBQ0EsU0FBU0UsbUJBQW1CQyxhQUFhO0lBQ3ZDLElBQUlOLE1BQU1DLE9BQU8sQ0FBQ0ssZ0JBQWdCO1FBQ2hDLE9BQU9BO0lBQ1Q7SUFDQSxJQUFJLE9BQU9BLGtCQUFrQixVQUFVO1FBQ3JDLE9BQU8sRUFBRTtJQUNYO0lBRUEsSUFBSUMsaUJBQWlCLEVBQUU7SUFDdkIsSUFBSUMsTUFBTTtJQUNWLElBQUlDO0lBQ0osSUFBSUM7SUFDSixJQUFJQztJQUNKLElBQUlDO0lBQ0osSUFBSUM7SUFFSixTQUFTQztRQUNQLE1BQU9OLE1BQU1GLGNBQWNmLE1BQU0sSUFBSSxLQUFLd0IsSUFBSSxDQUFDVCxjQUFjVSxNQUFNLENBQUNSLE1BQU87WUFDekVBLE9BQU87UUFDVDtRQUNBLE9BQU9BLE1BQU1GLGNBQWNmLE1BQU07SUFDbkM7SUFFQSxTQUFTMEI7UUFDUFAsS0FBS0osY0FBY1UsTUFBTSxDQUFDUjtRQUUxQixPQUFPRSxPQUFPLE9BQU9BLE9BQU8sT0FBT0EsT0FBTztJQUM1QztJQUVBLE1BQU9GLE1BQU1GLGNBQWNmLE1BQU0sQ0FBRTtRQUNqQ2tCLFFBQVFEO1FBQ1JLLHdCQUF3QjtRQUV4QixNQUFPQyxpQkFBa0I7WUFDdkJKLEtBQUtKLGNBQWNVLE1BQU0sQ0FBQ1I7WUFDMUIsSUFBSUUsT0FBTyxLQUFLO2dCQUNkLHVFQUF1RTtnQkFDdkVDLFlBQVlIO2dCQUNaQSxPQUFPO2dCQUVQTTtnQkFDQUYsWUFBWUo7Z0JBRVosTUFBT0EsTUFBTUYsY0FBY2YsTUFBTSxJQUFJMEIsaUJBQWtCO29CQUNyRFQsT0FBTztnQkFDVDtnQkFFQSw4QkFBOEI7Z0JBQzlCLElBQUlBLE1BQU1GLGNBQWNmLE1BQU0sSUFBSWUsY0FBY1UsTUFBTSxDQUFDUixTQUFTLEtBQUs7b0JBQ25FLDZCQUE2QjtvQkFDN0JLLHdCQUF3QjtvQkFDeEIsMkRBQTJEO29CQUMzREwsTUFBTUk7b0JBQ05MLGVBQWVXLElBQUksQ0FBQ1osY0FBY2EsU0FBUyxDQUFDVixPQUFPRTtvQkFDbkRGLFFBQVFEO2dCQUNWLE9BQU87b0JBQ0wsdUNBQXVDO29CQUN2Qyw4QkFBOEI7b0JBQzlCQSxNQUFNRyxZQUFZO2dCQUNwQjtZQUNGLE9BQU87Z0JBQ0xILE9BQU87WUFDVDtRQUNGO1FBRUEsSUFBSSxDQUFDSyx5QkFBeUJMLE9BQU9GLGNBQWNmLE1BQU0sRUFBRTtZQUN6RGdCLGVBQWVXLElBQUksQ0FBQ1osY0FBY2EsU0FBUyxDQUFDVixPQUFPSCxjQUFjZixNQUFNO1FBQ3pFO0lBQ0Y7SUFFQSxPQUFPZ0I7QUFDVDtBQUVBYSxPQUFPQyxPQUFPLEdBQUc3QjtBQUNqQjRCLG9CQUFvQixHQUFHNUI7QUFDdkI0QiwwQkFBMEIsR0FBR2pFO0FBQzdCaUUsaUNBQWlDLEdBQUdmIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vd2hpc2t5LXZhdWx0Ly4vbm9kZV9tb2R1bGVzL3NldC1jb29raWUtcGFyc2VyL2xpYi9zZXQtY29va2llLmpzPzMzMTMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbnZhciBkZWZhdWx0UGFyc2VPcHRpb25zID0ge1xuICBkZWNvZGVWYWx1ZXM6IHRydWUsXG4gIG1hcDogZmFsc2UsXG4gIHNpbGVudDogZmFsc2UsXG59O1xuXG5mdW5jdGlvbiBpc0ZvcmJpZGRlbktleShrZXkpIHtcbiAgcmV0dXJuIHR5cGVvZiBrZXkgIT09IFwic3RyaW5nXCIgfHwga2V5IGluIHt9O1xufVxuXG5mdW5jdGlvbiBjcmVhdGVOdWxsT2JqKCkge1xuICByZXR1cm4gT2JqZWN0LmNyZWF0ZShudWxsKTtcbn1cblxuZnVuY3Rpb24gaXNOb25FbXB0eVN0cmluZyhzdHIpIHtcbiAgcmV0dXJuIHR5cGVvZiBzdHIgPT09IFwic3RyaW5nXCIgJiYgISFzdHIudHJpbSgpO1xufVxuXG5mdW5jdGlvbiBwYXJzZVN0cmluZyhzZXRDb29raWVWYWx1ZSwgb3B0aW9ucykge1xuICB2YXIgcGFydHMgPSBzZXRDb29raWVWYWx1ZS5zcGxpdChcIjtcIikuZmlsdGVyKGlzTm9uRW1wdHlTdHJpbmcpO1xuXG4gIHZhciBuYW1lVmFsdWVQYWlyU3RyID0gcGFydHMuc2hpZnQoKTtcbiAgdmFyIHBhcnNlZCA9IHBhcnNlTmFtZVZhbHVlUGFpcihuYW1lVmFsdWVQYWlyU3RyKTtcbiAgdmFyIG5hbWUgPSBwYXJzZWQubmFtZTtcbiAgdmFyIHZhbHVlID0gcGFyc2VkLnZhbHVlO1xuXG4gIG9wdGlvbnMgPSBvcHRpb25zXG4gICAgPyBPYmplY3QuYXNzaWduKHt9LCBkZWZhdWx0UGFyc2VPcHRpb25zLCBvcHRpb25zKVxuICAgIDogZGVmYXVsdFBhcnNlT3B0aW9ucztcblxuICBpZiAoaXNGb3JiaWRkZW5LZXkobmFtZSkpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHRyeSB7XG4gICAgdmFsdWUgPSBvcHRpb25zLmRlY29kZVZhbHVlcyA/IGRlY29kZVVSSUNvbXBvbmVudCh2YWx1ZSkgOiB2YWx1ZTsgLy8gZGVjb2RlIGNvb2tpZSB2YWx1ZVxuICB9IGNhdGNoIChlKSB7XG4gICAgY29uc29sZS5lcnJvcihcbiAgICAgIFwic2V0LWNvb2tpZS1wYXJzZXI6IGZhaWxlZCB0byBkZWNvZGUgY29va2llIHZhbHVlLiBTZXQgb3B0aW9ucy5kZWNvZGVWYWx1ZXM9ZmFsc2UgdG8gZGlzYWJsZSBkZWNvZGluZy5cIixcbiAgICAgIGVcbiAgICApO1xuICB9XG5cbiAgdmFyIGNvb2tpZSA9IGNyZWF0ZU51bGxPYmooKTtcbiAgY29va2llLm5hbWUgPSBuYW1lO1xuICBjb29raWUudmFsdWUgPSB2YWx1ZTtcblxuICBwYXJ0cy5mb3JFYWNoKGZ1bmN0aW9uIChwYXJ0KSB7XG4gICAgdmFyIHNpZGVzID0gcGFydC5zcGxpdChcIj1cIik7XG4gICAgdmFyIGtleSA9IHNpZGVzLnNoaWZ0KCkudHJpbUxlZnQoKS50b0xvd2VyQ2FzZSgpO1xuICAgIGlmIChpc0ZvcmJpZGRlbktleShrZXkpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHZhciB2YWx1ZSA9IHNpZGVzLmpvaW4oXCI9XCIpO1xuICAgIGlmIChrZXkgPT09IFwiZXhwaXJlc1wiKSB7XG4gICAgICBjb29raWUuZXhwaXJlcyA9IG5ldyBEYXRlKHZhbHVlKTtcbiAgICB9IGVsc2UgaWYgKGtleSA9PT0gXCJtYXgtYWdlXCIpIHtcbiAgICAgIHZhciBuID0gcGFyc2VJbnQodmFsdWUsIDEwKTtcbiAgICAgIGlmICghTnVtYmVyLmlzTmFOKG4pKSBjb29raWUubWF4QWdlID0gbjtcbiAgICB9IGVsc2UgaWYgKGtleSA9PT0gXCJzZWN1cmVcIikge1xuICAgICAgY29va2llLnNlY3VyZSA9IHRydWU7XG4gICAgfSBlbHNlIGlmIChrZXkgPT09IFwiaHR0cG9ubHlcIikge1xuICAgICAgY29va2llLmh0dHBPbmx5ID0gdHJ1ZTtcbiAgICB9IGVsc2UgaWYgKGtleSA9PT0gXCJzYW1lc2l0ZVwiKSB7XG4gICAgICBjb29raWUuc2FtZVNpdGUgPSB2YWx1ZTtcbiAgICB9IGVsc2UgaWYgKGtleSA9PT0gXCJwYXJ0aXRpb25lZFwiKSB7XG4gICAgICBjb29raWUucGFydGl0aW9uZWQgPSB0cnVlO1xuICAgIH0gZWxzZSBpZiAoa2V5KSB7XG4gICAgICBjb29raWVba2V5XSA9IHZhbHVlO1xuICAgIH1cbiAgfSk7XG5cbiAgcmV0dXJuIGNvb2tpZTtcbn1cblxuZnVuY3Rpb24gcGFyc2VOYW1lVmFsdWVQYWlyKG5hbWVWYWx1ZVBhaXJTdHIpIHtcbiAgLy8gUGFyc2VzIG5hbWUtdmFsdWUtcGFpciBhY2NvcmRpbmcgdG8gcmZjNjI2NWJpcyBkcmFmdFxuXG4gIHZhciBuYW1lID0gXCJcIjtcbiAgdmFyIHZhbHVlID0gXCJcIjtcbiAgdmFyIG5hbWVWYWx1ZUFyciA9IG5hbWVWYWx1ZVBhaXJTdHIuc3BsaXQoXCI9XCIpO1xuICBpZiAobmFtZVZhbHVlQXJyLmxlbmd0aCA+IDEpIHtcbiAgICBuYW1lID0gbmFtZVZhbHVlQXJyLnNoaWZ0KCk7XG4gICAgdmFsdWUgPSBuYW1lVmFsdWVBcnIuam9pbihcIj1cIik7IC8vIGV2ZXJ5dGhpbmcgYWZ0ZXIgdGhlIGZpcnN0ID0sIGpvaW5lZCBieSBhIFwiPVwiIGlmIHRoZXJlIHdhcyBtb3JlIHRoYW4gb25lIHBhcnRcbiAgfSBlbHNlIHtcbiAgICB2YWx1ZSA9IG5hbWVWYWx1ZVBhaXJTdHI7XG4gIH1cblxuICByZXR1cm4geyBuYW1lOiBuYW1lLCB2YWx1ZTogdmFsdWUgfTtcbn1cblxuZnVuY3Rpb24gcGFyc2UoaW5wdXQsIG9wdGlvbnMpIHtcbiAgb3B0aW9ucyA9IG9wdGlvbnNcbiAgICA/IE9iamVjdC5hc3NpZ24oe30sIGRlZmF1bHRQYXJzZU9wdGlvbnMsIG9wdGlvbnMpXG4gICAgOiBkZWZhdWx0UGFyc2VPcHRpb25zO1xuXG4gIGlmICghaW5wdXQpIHtcbiAgICBpZiAoIW9wdGlvbnMubWFwKSB7XG4gICAgICByZXR1cm4gW107XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBjcmVhdGVOdWxsT2JqKCk7XG4gICAgfVxuICB9XG5cbiAgaWYgKGlucHV0LmhlYWRlcnMpIHtcbiAgICBpZiAodHlwZW9mIGlucHV0LmhlYWRlcnMuZ2V0U2V0Q29va2llID09PSBcImZ1bmN0aW9uXCIpIHtcbiAgICAgIC8vIGZvciBmZXRjaCByZXNwb25zZXMgLSB0aGV5IGNvbWJpbmUgaGVhZGVycyBvZiB0aGUgc2FtZSB0eXBlIGluIHRoZSBoZWFkZXJzIGFycmF5LFxuICAgICAgLy8gYnV0IGdldFNldENvb2tpZSByZXR1cm5zIGFuIHVuY29tYmluZWQgYXJyYXlcbiAgICAgIGlucHV0ID0gaW5wdXQuaGVhZGVycy5nZXRTZXRDb29raWUoKTtcbiAgICB9IGVsc2UgaWYgKGlucHV0LmhlYWRlcnNbXCJzZXQtY29va2llXCJdKSB7XG4gICAgICAvLyBmYXN0LXBhdGggZm9yIG5vZGUuanMgKHdoaWNoIGF1dG9tYXRpY2FsbHkgbm9ybWFsaXplcyBoZWFkZXIgbmFtZXMgdG8gbG93ZXItY2FzZSlcbiAgICAgIGlucHV0ID0gaW5wdXQuaGVhZGVyc1tcInNldC1jb29raWVcIl07XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIHNsb3ctcGF0aCBmb3Igb3RoZXIgZW52aXJvbm1lbnRzIC0gc2VlICMyNVxuICAgICAgdmFyIHNjaCA9XG4gICAgICAgIGlucHV0LmhlYWRlcnNbXG4gICAgICAgICAgT2JqZWN0LmtleXMoaW5wdXQuaGVhZGVycykuZmluZChmdW5jdGlvbiAoa2V5KSB7XG4gICAgICAgICAgICByZXR1cm4ga2V5LnRvTG93ZXJDYXNlKCkgPT09IFwic2V0LWNvb2tpZVwiO1xuICAgICAgICAgIH0pXG4gICAgICAgIF07XG4gICAgICAvLyB3YXJuIGlmIGNhbGxlZCBvbiBhIHJlcXVlc3QtbGlrZSBvYmplY3Qgd2l0aCBhIGNvb2tpZSBoZWFkZXIgcmF0aGVyIHRoYW4gYSBzZXQtY29va2llIGhlYWRlciAtIHNlZSAjMzQsIDM2XG4gICAgICBpZiAoIXNjaCAmJiBpbnB1dC5oZWFkZXJzLmNvb2tpZSAmJiAhb3B0aW9ucy5zaWxlbnQpIHtcbiAgICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICAgIFwiV2FybmluZzogc2V0LWNvb2tpZS1wYXJzZXIgYXBwZWFycyB0byBoYXZlIGJlZW4gY2FsbGVkIG9uIGEgcmVxdWVzdCBvYmplY3QuIEl0IGlzIGRlc2lnbmVkIHRvIHBhcnNlIFNldC1Db29raWUgaGVhZGVycyBmcm9tIHJlc3BvbnNlcywgbm90IENvb2tpZSBoZWFkZXJzIGZyb20gcmVxdWVzdHMuIFNldCB0aGUgb3B0aW9uIHtzaWxlbnQ6IHRydWV9IHRvIHN1cHByZXNzIHRoaXMgd2FybmluZy5cIlxuICAgICAgICApO1xuICAgICAgfVxuICAgICAgaW5wdXQgPSBzY2g7XG4gICAgfVxuICB9XG4gIGlmICghQXJyYXkuaXNBcnJheShpbnB1dCkpIHtcbiAgICBpbnB1dCA9IFtpbnB1dF07XG4gIH1cblxuICBpZiAoIW9wdGlvbnMubWFwKSB7XG4gICAgcmV0dXJuIGlucHV0XG4gICAgICAuZmlsdGVyKGlzTm9uRW1wdHlTdHJpbmcpXG4gICAgICAubWFwKGZ1bmN0aW9uIChzdHIpIHtcbiAgICAgICAgcmV0dXJuIHBhcnNlU3RyaW5nKHN0ciwgb3B0aW9ucyk7XG4gICAgICB9KVxuICAgICAgLmZpbHRlcihCb29sZWFuKTtcbiAgfSBlbHNlIHtcbiAgICB2YXIgY29va2llcyA9IGNyZWF0ZU51bGxPYmooKTtcbiAgICByZXR1cm4gaW5wdXQuZmlsdGVyKGlzTm9uRW1wdHlTdHJpbmcpLnJlZHVjZShmdW5jdGlvbiAoY29va2llcywgc3RyKSB7XG4gICAgICB2YXIgY29va2llID0gcGFyc2VTdHJpbmcoc3RyLCBvcHRpb25zKTtcbiAgICAgIGlmIChjb29raWUgJiYgIWlzRm9yYmlkZGVuS2V5KGNvb2tpZS5uYW1lKSkge1xuICAgICAgICBjb29raWVzW2Nvb2tpZS5uYW1lXSA9IGNvb2tpZTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBjb29raWVzO1xuICAgIH0sIGNvb2tpZXMpO1xuICB9XG59XG5cbi8qXG4gIFNldC1Db29raWUgaGVhZGVyIGZpZWxkLXZhbHVlcyBhcmUgc29tZXRpbWVzIGNvbW1hIGpvaW5lZCBpbiBvbmUgc3RyaW5nLiBUaGlzIHNwbGl0cyB0aGVtIHdpdGhvdXQgY2hva2luZyBvbiBjb21tYXNcbiAgdGhhdCBhcmUgd2l0aGluIGEgc2luZ2xlIHNldC1jb29raWUgZmllbGQtdmFsdWUsIHN1Y2ggYXMgaW4gdGhlIEV4cGlyZXMgcG9ydGlvbi5cblxuICBUaGlzIGlzIHVuY29tbW9uLCBidXQgZXhwbGljaXRseSBhbGxvd2VkIC0gc2VlIGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmMyNjE2I3NlY3Rpb24tNC4yXG4gIE5vZGUuanMgZG9lcyB0aGlzIGZvciBldmVyeSBoZWFkZXIgKmV4Y2VwdCogc2V0LWNvb2tpZSAtIHNlZSBodHRwczovL2dpdGh1Yi5jb20vbm9kZWpzL25vZGUvYmxvYi9kNWUzNjNiNzdlYmFmMWNhZjY3Y2Q3NTI4MjI0YjY1MWM4NjgxNWMxL2xpYi9faHR0cF9pbmNvbWluZy5qcyNMMTI4XG4gIFJlYWN0IE5hdGl2ZSdzIGZldGNoIGRvZXMgdGhpcyBmb3IgKmV2ZXJ5KiBoZWFkZXIsIGluY2x1ZGluZyBzZXQtY29va2llLlxuXG4gIEJhc2VkIG9uOiBodHRwczovL2dpdGh1Yi5jb20vZ29vZ2xlL2oyb2JqYy9jb21taXQvMTY4MjBmZGJjOGY3NmNhMGMzMzQ3MjgxMGNlMGNiMDNkMjBlZmUyNVxuICBDcmVkaXRzIHRvOiBodHRwczovL2dpdGh1Yi5jb20vdG9tYmFsbCBmb3Igb3JpZ2luYWwgYW5kIGh0dHBzOi8vZ2l0aHViLmNvbS9jaHJ1c2FydCBmb3IgSmF2YVNjcmlwdCBpbXBsZW1lbnRhdGlvblxuKi9cbmZ1bmN0aW9uIHNwbGl0Q29va2llc1N0cmluZyhjb29raWVzU3RyaW5nKSB7XG4gIGlmIChBcnJheS5pc0FycmF5KGNvb2tpZXNTdHJpbmcpKSB7XG4gICAgcmV0dXJuIGNvb2tpZXNTdHJpbmc7XG4gIH1cbiAgaWYgKHR5cGVvZiBjb29raWVzU3RyaW5nICE9PSBcInN0cmluZ1wiKSB7XG4gICAgcmV0dXJuIFtdO1xuICB9XG5cbiAgdmFyIGNvb2tpZXNTdHJpbmdzID0gW107XG4gIHZhciBwb3MgPSAwO1xuICB2YXIgc3RhcnQ7XG4gIHZhciBjaDtcbiAgdmFyIGxhc3RDb21tYTtcbiAgdmFyIG5leHRTdGFydDtcbiAgdmFyIGNvb2tpZXNTZXBhcmF0b3JGb3VuZDtcblxuICBmdW5jdGlvbiBza2lwV2hpdGVzcGFjZSgpIHtcbiAgICB3aGlsZSAocG9zIDwgY29va2llc1N0cmluZy5sZW5ndGggJiYgL1xccy8udGVzdChjb29raWVzU3RyaW5nLmNoYXJBdChwb3MpKSkge1xuICAgICAgcG9zICs9IDE7XG4gICAgfVxuICAgIHJldHVybiBwb3MgPCBjb29raWVzU3RyaW5nLmxlbmd0aDtcbiAgfVxuXG4gIGZ1bmN0aW9uIG5vdFNwZWNpYWxDaGFyKCkge1xuICAgIGNoID0gY29va2llc1N0cmluZy5jaGFyQXQocG9zKTtcblxuICAgIHJldHVybiBjaCAhPT0gXCI9XCIgJiYgY2ggIT09IFwiO1wiICYmIGNoICE9PSBcIixcIjtcbiAgfVxuXG4gIHdoaWxlIChwb3MgPCBjb29raWVzU3RyaW5nLmxlbmd0aCkge1xuICAgIHN0YXJ0ID0gcG9zO1xuICAgIGNvb2tpZXNTZXBhcmF0b3JGb3VuZCA9IGZhbHNlO1xuXG4gICAgd2hpbGUgKHNraXBXaGl0ZXNwYWNlKCkpIHtcbiAgICAgIGNoID0gY29va2llc1N0cmluZy5jaGFyQXQocG9zKTtcbiAgICAgIGlmIChjaCA9PT0gXCIsXCIpIHtcbiAgICAgICAgLy8gJywnIGlzIGEgY29va2llIHNlcGFyYXRvciBpZiB3ZSBoYXZlIGxhdGVyIGZpcnN0ICc9Jywgbm90ICc7JyBvciAnLCdcbiAgICAgICAgbGFzdENvbW1hID0gcG9zO1xuICAgICAgICBwb3MgKz0gMTtcblxuICAgICAgICBza2lwV2hpdGVzcGFjZSgpO1xuICAgICAgICBuZXh0U3RhcnQgPSBwb3M7XG5cbiAgICAgICAgd2hpbGUgKHBvcyA8IGNvb2tpZXNTdHJpbmcubGVuZ3RoICYmIG5vdFNwZWNpYWxDaGFyKCkpIHtcbiAgICAgICAgICBwb3MgKz0gMTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGN1cnJlbnRseSBzcGVjaWFsIGNoYXJhY3RlclxuICAgICAgICBpZiAocG9zIDwgY29va2llc1N0cmluZy5sZW5ndGggJiYgY29va2llc1N0cmluZy5jaGFyQXQocG9zKSA9PT0gXCI9XCIpIHtcbiAgICAgICAgICAvLyB3ZSBmb3VuZCBjb29raWVzIHNlcGFyYXRvclxuICAgICAgICAgIGNvb2tpZXNTZXBhcmF0b3JGb3VuZCA9IHRydWU7XG4gICAgICAgICAgLy8gcG9zIGlzIGluc2lkZSB0aGUgbmV4dCBjb29raWUsIHNvIGJhY2sgdXAgYW5kIHJldHVybiBpdC5cbiAgICAgICAgICBwb3MgPSBuZXh0U3RhcnQ7XG4gICAgICAgICAgY29va2llc1N0cmluZ3MucHVzaChjb29raWVzU3RyaW5nLnN1YnN0cmluZyhzdGFydCwgbGFzdENvbW1hKSk7XG4gICAgICAgICAgc3RhcnQgPSBwb3M7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgLy8gaW4gcGFyYW0gJywnIG9yIHBhcmFtIHNlcGFyYXRvciAnOycsXG4gICAgICAgICAgLy8gd2UgY29udGludWUgZnJvbSB0aGF0IGNvbW1hXG4gICAgICAgICAgcG9zID0gbGFzdENvbW1hICsgMTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcG9zICs9IDE7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKCFjb29raWVzU2VwYXJhdG9yRm91bmQgfHwgcG9zID49IGNvb2tpZXNTdHJpbmcubGVuZ3RoKSB7XG4gICAgICBjb29raWVzU3RyaW5ncy5wdXNoKGNvb2tpZXNTdHJpbmcuc3Vic3RyaW5nKHN0YXJ0LCBjb29raWVzU3RyaW5nLmxlbmd0aCkpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBjb29raWVzU3RyaW5ncztcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBwYXJzZTtcbm1vZHVsZS5leHBvcnRzLnBhcnNlID0gcGFyc2U7XG5tb2R1bGUuZXhwb3J0cy5wYXJzZVN0cmluZyA9IHBhcnNlU3RyaW5nO1xubW9kdWxlLmV4cG9ydHMuc3BsaXRDb29raWVzU3RyaW5nID0gc3BsaXRDb29raWVzU3RyaW5nO1xuIl0sIm5hbWVzIjpbImRlZmF1bHRQYXJzZU9wdGlvbnMiLCJkZWNvZGVWYWx1ZXMiLCJtYXAiLCJzaWxlbnQiLCJpc0ZvcmJpZGRlbktleSIsImtleSIsImNyZWF0ZU51bGxPYmoiLCJPYmplY3QiLCJjcmVhdGUiLCJpc05vbkVtcHR5U3RyaW5nIiwic3RyIiwidHJpbSIsInBhcnNlU3RyaW5nIiwic2V0Q29va2llVmFsdWUiLCJvcHRpb25zIiwicGFydHMiLCJzcGxpdCIsImZpbHRlciIsIm5hbWVWYWx1ZVBhaXJTdHIiLCJzaGlmdCIsInBhcnNlZCIsInBhcnNlTmFtZVZhbHVlUGFpciIsIm5hbWUiLCJ2YWx1ZSIsImFzc2lnbiIsImRlY29kZVVSSUNvbXBvbmVudCIsImUiLCJjb25zb2xlIiwiZXJyb3IiLCJjb29raWUiLCJmb3JFYWNoIiwicGFydCIsInNpZGVzIiwidHJpbUxlZnQiLCJ0b0xvd2VyQ2FzZSIsImpvaW4iLCJleHBpcmVzIiwiRGF0ZSIsIm4iLCJwYXJzZUludCIsIk51bWJlciIsImlzTmFOIiwibWF4QWdlIiwic2VjdXJlIiwiaHR0cE9ubHkiLCJzYW1lU2l0ZSIsInBhcnRpdGlvbmVkIiwibmFtZVZhbHVlQXJyIiwibGVuZ3RoIiwicGFyc2UiLCJpbnB1dCIsImhlYWRlcnMiLCJnZXRTZXRDb29raWUiLCJzY2giLCJrZXlzIiwiZmluZCIsIndhcm4iLCJBcnJheSIsImlzQXJyYXkiLCJCb29sZWFuIiwiY29va2llcyIsInJlZHVjZSIsInNwbGl0Q29va2llc1N0cmluZyIsImNvb2tpZXNTdHJpbmciLCJjb29raWVzU3RyaW5ncyIsInBvcyIsInN0YXJ0IiwiY2giLCJsYXN0Q29tbWEiLCJuZXh0U3RhcnQiLCJjb29raWVzU2VwYXJhdG9yRm91bmQiLCJza2lwV2hpdGVzcGFjZSIsInRlc3QiLCJjaGFyQXQiLCJub3RTcGVjaWFsQ2hhciIsInB1c2giLCJzdWJzdHJpbmciLCJtb2R1bGUiLCJleHBvcnRzIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/set-cookie-parser/lib/set-cookie.js\n");
/***/ })
};
;