diff --git a/settings/js/main.js b/settings/js/main.js index 15d421a512..f179ab0bf6 100644 --- a/settings/js/main.js +++ b/settings/js/main.js @@ -68,7 +68,7 @@ /***/ (function(module, exports, __webpack_require__) { "use strict"; -eval("\n\nvar bind = __webpack_require__(18);\nvar isBuffer = __webpack_require__(51);\n\n/*global toString:true*/\n\n// utils is a library of generic helper functions non-specific to axios\n\nvar toString = Object.prototype.toString;\n\n/**\n * Determine if a value is an Array\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an Array, otherwise false\n */\nfunction isArray(val) {\n return toString.call(val) === '[object Array]';\n}\n\n/**\n * Determine if a value is an ArrayBuffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n */\nfunction isArrayBuffer(val) {\n return toString.call(val) === '[object ArrayBuffer]';\n}\n\n/**\n * Determine if a value is a FormData\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an FormData, otherwise false\n */\nfunction isFormData(val) {\n return (typeof FormData !== 'undefined') && (val instanceof FormData);\n}\n\n/**\n * Determine if a value is a view on an ArrayBuffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false\n */\nfunction isArrayBufferView(val) {\n var result;\n if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {\n result = ArrayBuffer.isView(val);\n } else {\n result = (val) && (val.buffer) && (val.buffer instanceof ArrayBuffer);\n }\n return result;\n}\n\n/**\n * Determine if a value is a String\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a String, otherwise false\n */\nfunction isString(val) {\n return typeof val === 'string';\n}\n\n/**\n * Determine if a value is a Number\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Number, otherwise false\n */\nfunction isNumber(val) {\n return typeof val === 'number';\n}\n\n/**\n * Determine if a value is undefined\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if the value is undefined, otherwise false\n */\nfunction isUndefined(val) {\n return typeof val === 'undefined';\n}\n\n/**\n * Determine if a value is an Object\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an Object, otherwise false\n */\nfunction isObject(val) {\n return val !== null && typeof val === 'object';\n}\n\n/**\n * Determine if a value is a Date\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Date, otherwise false\n */\nfunction isDate(val) {\n return toString.call(val) === '[object Date]';\n}\n\n/**\n * Determine if a value is a File\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a File, otherwise false\n */\nfunction isFile(val) {\n return toString.call(val) === '[object File]';\n}\n\n/**\n * Determine if a value is a Blob\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Blob, otherwise false\n */\nfunction isBlob(val) {\n return toString.call(val) === '[object Blob]';\n}\n\n/**\n * Determine if a value is a Function\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Function, otherwise false\n */\nfunction isFunction(val) {\n return toString.call(val) === '[object Function]';\n}\n\n/**\n * Determine if a value is a Stream\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Stream, otherwise false\n */\nfunction isStream(val) {\n return isObject(val) && isFunction(val.pipe);\n}\n\n/**\n * Determine if a value is a URLSearchParams object\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\n */\nfunction isURLSearchParams(val) {\n return typeof URLSearchParams !== 'undefined' && val instanceof URLSearchParams;\n}\n\n/**\n * Trim excess whitespace off the beginning and end of a string\n *\n * @param {String} str The String to trim\n * @returns {String} The String freed of excess whitespace\n */\nfunction trim(str) {\n return str.replace(/^\\s*/, '').replace(/\\s*$/, '');\n}\n\n/**\n * Determine if we're running in a standard browser environment\n *\n * This allows axios to run in a web worker, and react-native.\n * Both environments support XMLHttpRequest, but not fully standard globals.\n *\n * web workers:\n * typeof window -> undefined\n * typeof document -> undefined\n *\n * react-native:\n * navigator.product -> 'ReactNative'\n */\nfunction isStandardBrowserEnv() {\n if (typeof navigator !== 'undefined' && navigator.product === 'ReactNative') {\n return false;\n }\n return (\n typeof window !== 'undefined' &&\n typeof document !== 'undefined'\n );\n}\n\n/**\n * Iterate over an Array or an Object invoking a function for each item.\n *\n * If `obj` is an Array callback will be called passing\n * the value, index, and complete array for each item.\n *\n * If 'obj' is an Object callback will be called passing\n * the value, key, and complete object for each property.\n *\n * @param {Object|Array} obj The object to iterate\n * @param {Function} fn The callback to invoke for each item\n */\nfunction forEach(obj, fn) {\n // Don't bother if no value provided\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n\n // Force an array if not already something iterable\n if (typeof obj !== 'object') {\n /*eslint no-param-reassign:0*/\n obj = [obj];\n }\n\n if (isArray(obj)) {\n // Iterate over array values\n for (var i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n // Iterate over object keys\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n fn.call(null, obj[key], key, obj);\n }\n }\n }\n}\n\n/**\n * Accepts varargs expecting each argument to be an object, then\n * immutably merges the properties of each object and returns result.\n *\n * When multiple objects contain the same key the later object in\n * the arguments list will take precedence.\n *\n * Example:\n *\n * ```js\n * var result = merge({foo: 123}, {foo: 456});\n * console.log(result.foo); // outputs 456\n * ```\n *\n * @param {Object} obj1 Object to merge\n * @returns {Object} Result of all merge properties\n */\nfunction merge(/* obj1, obj2, obj3, ... */) {\n var result = {};\n function assignValue(val, key) {\n if (typeof result[key] === 'object' && typeof val === 'object') {\n result[key] = merge(result[key], val);\n } else {\n result[key] = val;\n }\n }\n\n for (var i = 0, l = arguments.length; i < l; i++) {\n forEach(arguments[i], assignValue);\n }\n return result;\n}\n\n/**\n * Extends object a by mutably adding to it the properties of object b.\n *\n * @param {Object} a The object to be extended\n * @param {Object} b The object to copy properties from\n * @param {Object} thisArg The object to bind function to\n * @return {Object} The resulting value of object a\n */\nfunction extend(a, b, thisArg) {\n forEach(b, function assignValue(val, key) {\n if (thisArg && typeof val === 'function') {\n a[key] = bind(val, thisArg);\n } else {\n a[key] = val;\n }\n });\n return a;\n}\n\nmodule.exports = {\n isArray: isArray,\n isArrayBuffer: isArrayBuffer,\n isBuffer: isBuffer,\n isFormData: isFormData,\n isArrayBufferView: isArrayBufferView,\n isString: isString,\n isNumber: isNumber,\n isObject: isObject,\n isUndefined: isUndefined,\n isDate: isDate,\n isFile: isFile,\n isBlob: isBlob,\n isFunction: isFunction,\n isStream: isStream,\n isURLSearchParams: isURLSearchParams,\n isStandardBrowserEnv: isStandardBrowserEnv,\n forEach: forEach,\n merge: merge,\n extend: extend,\n trim: trim\n};\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL3V0aWxzLmpzPzcwNjEiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0FBRUE7QUFDQTs7QUFFQTs7QUFFQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLE9BQU87QUFDbEIsYUFBYSxRQUFRO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLFdBQVcsT0FBTztBQUNsQixhQUFhLFFBQVE7QUFDckI7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsV0FBVyxPQUFPO0FBQ2xCLGFBQWEsUUFBUTtBQUNyQjtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLE9BQU87QUFDbEIsYUFBYSxRQUFRO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsV0FBVyxPQUFPO0FBQ2xCLGFBQWEsUUFBUTtBQUNyQjtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLE9BQU87QUFDbEIsYUFBYSxRQUFRO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLFdBQVcsT0FBTztBQUNsQixhQUFhLFFBQVE7QUFDckI7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsV0FBVyxPQUFPO0FBQ2xCLGFBQWEsUUFBUTtBQUNyQjtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLE9BQU87QUFDbEIsYUFBYSxRQUFRO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLFdBQVcsT0FBTztBQUNsQixhQUFhLFFBQVE7QUFDckI7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsV0FBVyxPQUFPO0FBQ2xCLGFBQWEsUUFBUTtBQUNyQjtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLE9BQU87QUFDbEIsYUFBYSxRQUFRO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLFdBQVcsT0FBTztBQUNsQixhQUFhLFFBQVE7QUFDckI7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsV0FBVyxPQUFPO0FBQ2xCLGFBQWEsUUFBUTtBQUNyQjtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLE9BQU87QUFDbEIsYUFBYSxPQUFPO0FBQ3BCO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFdBQVcsYUFBYTtBQUN4QixXQUFXLFNBQVM7QUFDcEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLG1DQUFtQyxPQUFPO0FBQzFDO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1QixTQUFTLEdBQUcsU0FBUztBQUM1QywyQkFBMkI7QUFDM0I7QUFDQTtBQUNBLFdBQVcsT0FBTztBQUNsQixhQUFhLE9BQU87QUFDcEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTs7QUFFQSx1Q0FBdUMsT0FBTztBQUM5QztBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLE9BQU87QUFDbEIsV0FBVyxPQUFPO0FBQ2xCLFdBQVcsT0FBTztBQUNsQixZQUFZLE9BQU87QUFDbkI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJmaWxlIjoiMC5qcyIsInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxudmFyIGJpbmQgPSByZXF1aXJlKCcuL2hlbHBlcnMvYmluZCcpO1xudmFyIGlzQnVmZmVyID0gcmVxdWlyZSgnaXMtYnVmZmVyJyk7XG5cbi8qZ2xvYmFsIHRvU3RyaW5nOnRydWUqL1xuXG4vLyB1dGlscyBpcyBhIGxpYnJhcnkgb2YgZ2VuZXJpYyBoZWxwZXIgZnVuY3Rpb25zIG5vbi1zcGVjaWZpYyB0byBheGlvc1xuXG52YXIgdG9TdHJpbmcgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nO1xuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGFuIEFycmF5XG4gKlxuICogQHBhcmFtIHtPYmplY3R9IHZhbCBUaGUgdmFsdWUgdG8gdGVzdFxuICogQHJldHVybnMge2Jvb2xlYW59IFRydWUgaWYgdmFsdWUgaXMgYW4gQXJyYXksIG90aGVyd2lzZSBmYWxzZVxuICovXG5mdW5jdGlvbiBpc0FycmF5KHZhbCkge1xuICByZXR1cm4gdG9TdHJpbmcuY2FsbCh2YWwpID09PSAnW29iamVjdCBBcnJheV0nO1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGFuIEFycmF5QnVmZmVyXG4gKlxuICogQHBhcmFtIHtPYmplY3R9IHZhbCBUaGUgdmFsdWUgdG8gdGVzdFxuICogQHJldHVybnMge2Jvb2xlYW59IFRydWUgaWYgdmFsdWUgaXMgYW4gQXJyYXlCdWZmZXIsIG90aGVyd2lzZSBmYWxzZVxuICovXG5mdW5jdGlvbiBpc0FycmF5QnVmZmVyKHZhbCkge1xuICByZXR1cm4gdG9TdHJpbmcuY2FsbCh2YWwpID09PSAnW29iamVjdCBBcnJheUJ1ZmZlcl0nO1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGEgRm9ybURhdGFcbiAqXG4gKiBAcGFyYW0ge09iamVjdH0gdmFsIFRoZSB2YWx1ZSB0byB0ZXN0XG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gVHJ1ZSBpZiB2YWx1ZSBpcyBhbiBGb3JtRGF0YSwgb3RoZXJ3aXNlIGZhbHNlXG4gKi9cbmZ1bmN0aW9uIGlzRm9ybURhdGEodmFsKSB7XG4gIHJldHVybiAodHlwZW9mIEZvcm1EYXRhICE9PSAndW5kZWZpbmVkJykgJiYgKHZhbCBpbnN0YW5jZW9mIEZvcm1EYXRhKTtcbn1cblxuLyoqXG4gKiBEZXRlcm1pbmUgaWYgYSB2YWx1ZSBpcyBhIHZpZXcgb24gYW4gQXJyYXlCdWZmZXJcbiAqXG4gKiBAcGFyYW0ge09iamVjdH0gdmFsIFRoZSB2YWx1ZSB0byB0ZXN0XG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gVHJ1ZSBpZiB2YWx1ZSBpcyBhIHZpZXcgb24gYW4gQXJyYXlCdWZmZXIsIG90aGVyd2lzZSBmYWxzZVxuICovXG5mdW5jdGlvbiBpc0FycmF5QnVmZmVyVmlldyh2YWwpIHtcbiAgdmFyIHJlc3VsdDtcbiAgaWYgKCh0eXBlb2YgQXJyYXlCdWZmZXIgIT09ICd1bmRlZmluZWQnKSAmJiAoQXJyYXlCdWZmZXIuaXNWaWV3KSkge1xuICAgIHJlc3VsdCA9IEFycmF5QnVmZmVyLmlzVmlldyh2YWwpO1xuICB9IGVsc2Uge1xuICAgIHJlc3VsdCA9ICh2YWwpICYmICh2YWwuYnVmZmVyKSAmJiAodmFsLmJ1ZmZlciBpbnN0YW5jZW9mIEFycmF5QnVmZmVyKTtcbiAgfVxuICByZXR1cm4gcmVzdWx0O1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGEgU3RyaW5nXG4gKlxuICogQHBhcmFtIHtPYmplY3R9IHZhbCBUaGUgdmFsdWUgdG8gdGVzdFxuICogQHJldHVybnMge2Jvb2xlYW59IFRydWUgaWYgdmFsdWUgaXMgYSBTdHJpbmcsIG90aGVyd2lzZSBmYWxzZVxuICovXG5mdW5jdGlvbiBpc1N0cmluZyh2YWwpIHtcbiAgcmV0dXJuIHR5cGVvZiB2YWwgPT09ICdzdHJpbmcnO1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGEgTnVtYmVyXG4gKlxuICogQHBhcmFtIHtPYmplY3R9IHZhbCBUaGUgdmFsdWUgdG8gdGVzdFxuICogQHJldHVybnMge2Jvb2xlYW59IFRydWUgaWYgdmFsdWUgaXMgYSBOdW1iZXIsIG90aGVyd2lzZSBmYWxzZVxuICovXG5mdW5jdGlvbiBpc051bWJlcih2YWwpIHtcbiAgcmV0dXJuIHR5cGVvZiB2YWwgPT09ICdudW1iZXInO1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIHVuZGVmaW5lZFxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSB2YWwgVGhlIHZhbHVlIHRvIHRlc3RcbiAqIEByZXR1cm5zIHtib29sZWFufSBUcnVlIGlmIHRoZSB2YWx1ZSBpcyB1bmRlZmluZWQsIG90aGVyd2lzZSBmYWxzZVxuICovXG5mdW5jdGlvbiBpc1VuZGVmaW5lZCh2YWwpIHtcbiAgcmV0dXJuIHR5cGVvZiB2YWwgPT09ICd1bmRlZmluZWQnO1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGFuIE9iamVjdFxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSB2YWwgVGhlIHZhbHVlIHRvIHRlc3RcbiAqIEByZXR1cm5zIHtib29sZWFufSBUcnVlIGlmIHZhbHVlIGlzIGFuIE9iamVjdCwgb3RoZXJ3aXNlIGZhbHNlXG4gKi9cbmZ1bmN0aW9uIGlzT2JqZWN0KHZhbCkge1xuICByZXR1cm4gdmFsICE9PSBudWxsICYmIHR5cGVvZiB2YWwgPT09ICdvYmplY3QnO1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGEgRGF0ZVxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSB2YWwgVGhlIHZhbHVlIHRvIHRlc3RcbiAqIEByZXR1cm5zIHtib29sZWFufSBUcnVlIGlmIHZhbHVlIGlzIGEgRGF0ZSwgb3RoZXJ3aXNlIGZhbHNlXG4gKi9cbmZ1bmN0aW9uIGlzRGF0ZSh2YWwpIHtcbiAgcmV0dXJuIHRvU3RyaW5nLmNhbGwodmFsKSA9PT0gJ1tvYmplY3QgRGF0ZV0nO1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGEgRmlsZVxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSB2YWwgVGhlIHZhbHVlIHRvIHRlc3RcbiAqIEByZXR1cm5zIHtib29sZWFufSBUcnVlIGlmIHZhbHVlIGlzIGEgRmlsZSwgb3RoZXJ3aXNlIGZhbHNlXG4gKi9cbmZ1bmN0aW9uIGlzRmlsZSh2YWwpIHtcbiAgcmV0dXJuIHRvU3RyaW5nLmNhbGwodmFsKSA9PT0gJ1tvYmplY3QgRmlsZV0nO1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGEgQmxvYlxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSB2YWwgVGhlIHZhbHVlIHRvIHRlc3RcbiAqIEByZXR1cm5zIHtib29sZWFufSBUcnVlIGlmIHZhbHVlIGlzIGEgQmxvYiwgb3RoZXJ3aXNlIGZhbHNlXG4gKi9cbmZ1bmN0aW9uIGlzQmxvYih2YWwpIHtcbiAgcmV0dXJuIHRvU3RyaW5nLmNhbGwodmFsKSA9PT0gJ1tvYmplY3QgQmxvYl0nO1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGEgRnVuY3Rpb25cbiAqXG4gKiBAcGFyYW0ge09iamVjdH0gdmFsIFRoZSB2YWx1ZSB0byB0ZXN0XG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gVHJ1ZSBpZiB2YWx1ZSBpcyBhIEZ1bmN0aW9uLCBvdGhlcndpc2UgZmFsc2VcbiAqL1xuZnVuY3Rpb24gaXNGdW5jdGlvbih2YWwpIHtcbiAgcmV0dXJuIHRvU3RyaW5nLmNhbGwodmFsKSA9PT0gJ1tvYmplY3QgRnVuY3Rpb25dJztcbn1cblxuLyoqXG4gKiBEZXRlcm1pbmUgaWYgYSB2YWx1ZSBpcyBhIFN0cmVhbVxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSB2YWwgVGhlIHZhbHVlIHRvIHRlc3RcbiAqIEByZXR1cm5zIHtib29sZWFufSBUcnVlIGlmIHZhbHVlIGlzIGEgU3RyZWFtLCBvdGhlcndpc2UgZmFsc2VcbiAqL1xuZnVuY3Rpb24gaXNTdHJlYW0odmFsKSB7XG4gIHJldHVybiBpc09iamVjdCh2YWwpICYmIGlzRnVuY3Rpb24odmFsLnBpcGUpO1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGEgVVJMU2VhcmNoUGFyYW1zIG9iamVjdFxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSB2YWwgVGhlIHZhbHVlIHRvIHRlc3RcbiAqIEByZXR1cm5zIHtib29sZWFufSBUcnVlIGlmIHZhbHVlIGlzIGEgVVJMU2VhcmNoUGFyYW1zIG9iamVjdCwgb3RoZXJ3aXNlIGZhbHNlXG4gKi9cbmZ1bmN0aW9uIGlzVVJMU2VhcmNoUGFyYW1zKHZhbCkge1xuICByZXR1cm4gdHlwZW9mIFVSTFNlYXJjaFBhcmFtcyAhPT0gJ3VuZGVmaW5lZCcgJiYgdmFsIGluc3RhbmNlb2YgVVJMU2VhcmNoUGFyYW1zO1xufVxuXG4vKipcbiAqIFRyaW0gZXhjZXNzIHdoaXRlc3BhY2Ugb2ZmIHRoZSBiZWdpbm5pbmcgYW5kIGVuZCBvZiBhIHN0cmluZ1xuICpcbiAqIEBwYXJhbSB7U3RyaW5nfSBzdHIgVGhlIFN0cmluZyB0byB0cmltXG4gKiBAcmV0dXJucyB7U3RyaW5nfSBUaGUgU3RyaW5nIGZyZWVkIG9mIGV4Y2VzcyB3aGl0ZXNwYWNlXG4gKi9cbmZ1bmN0aW9uIHRyaW0oc3RyKSB7XG4gIHJldHVybiBzdHIucmVwbGFjZSgvXlxccyovLCAnJykucmVwbGFjZSgvXFxzKiQvLCAnJyk7XG59XG5cbi8qKlxuICogRGV0ZXJtaW5lIGlmIHdlJ3JlIHJ1bm5pbmcgaW4gYSBzdGFuZGFyZCBicm93c2VyIGVudmlyb25tZW50XG4gKlxuICogVGhpcyBhbGxvd3MgYXhpb3MgdG8gcnVuIGluIGEgd2ViIHdvcmtlciwgYW5kIHJlYWN0LW5hdGl2ZS5cbiAqIEJvdGggZW52aXJvbm1lbnRzIHN1cHBvcnQgWE1MSHR0cFJlcXVlc3QsIGJ1dCBub3QgZnVsbHkgc3RhbmRhcmQgZ2xvYmFscy5cbiAqXG4gKiB3ZWIgd29ya2VyczpcbiAqICB0eXBlb2Ygd2luZG93IC0+IHVuZGVmaW5lZFxuICogIHR5cGVvZiBkb2N1bWVudCAtPiB1bmRlZmluZWRcbiAqXG4gKiByZWFjdC1uYXRpdmU6XG4gKiAgbmF2aWdhdG9yLnByb2R1Y3QgLT4gJ1JlYWN0TmF0aXZlJ1xuICovXG5mdW5jdGlvbiBpc1N0YW5kYXJkQnJvd3NlckVudigpIHtcbiAgaWYgKHR5cGVvZiBuYXZpZ2F0b3IgIT09ICd1bmRlZmluZWQnICYmIG5hdmlnYXRvci5wcm9kdWN0ID09PSAnUmVhY3ROYXRpdmUnKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIHJldHVybiAoXG4gICAgdHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiZcbiAgICB0eXBlb2YgZG9jdW1lbnQgIT09ICd1bmRlZmluZWQnXG4gICk7XG59XG5cbi8qKlxuICogSXRlcmF0ZSBvdmVyIGFuIEFycmF5IG9yIGFuIE9iamVjdCBpbnZva2luZyBhIGZ1bmN0aW9uIGZvciBlYWNoIGl0ZW0uXG4gKlxuICogSWYgYG9iamAgaXMgYW4gQXJyYXkgY2FsbGJhY2sgd2lsbCBiZSBjYWxsZWQgcGFzc2luZ1xuICogdGhlIHZhbHVlLCBpbmRleCwgYW5kIGNvbXBsZXRlIGFycmF5IGZvciBlYWNoIGl0ZW0uXG4gKlxuICogSWYgJ29iaicgaXMgYW4gT2JqZWN0IGNhbGxiYWNrIHdpbGwgYmUgY2FsbGVkIHBhc3NpbmdcbiAqIHRoZSB2YWx1ZSwga2V5LCBhbmQgY29tcGxldGUgb2JqZWN0IGZvciBlYWNoIHByb3BlcnR5LlxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fEFycmF5fSBvYmogVGhlIG9iamVjdCB0byBpdGVyYXRlXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBmbiBUaGUgY2FsbGJhY2sgdG8gaW52b2tlIGZvciBlYWNoIGl0ZW1cbiAqL1xuZnVuY3Rpb24gZm9yRWFjaChvYmosIGZuKSB7XG4gIC8vIERvbid0IGJvdGhlciBpZiBubyB2YWx1ZSBwcm92aWRlZFxuICBpZiAob2JqID09PSBudWxsIHx8IHR5cGVvZiBvYmogPT09ICd1bmRlZmluZWQnKSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLy8gRm9yY2UgYW4gYXJyYXkgaWYgbm90IGFscmVhZHkgc29tZXRoaW5nIGl0ZXJhYmxlXG4gIGlmICh0eXBlb2Ygb2JqICE9PSAnb2JqZWN0Jykge1xuICAgIC8qZXNsaW50IG5vLXBhcmFtLXJlYXNzaWduOjAqL1xuICAgIG9iaiA9IFtvYmpdO1xuICB9XG5cbiAgaWYgKGlzQXJyYXkob2JqKSkge1xuICAgIC8vIEl0ZXJhdGUgb3ZlciBhcnJheSB2YWx1ZXNcbiAgICBmb3IgKHZhciBpID0gMCwgbCA9IG9iai5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgIGZuLmNhbGwobnVsbCwgb2JqW2ldLCBpLCBvYmopO1xuICAgIH1cbiAgfSBlbHNlIHtcbiAgICAvLyBJdGVyYXRlIG92ZXIgb2JqZWN0IGtleXNcbiAgICBmb3IgKHZhciBrZXkgaW4gb2JqKSB7XG4gICAgICBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG9iaiwga2V5KSkge1xuICAgICAgICBmbi5jYWxsKG51bGwsIG9ialtrZXldLCBrZXksIG9iaik7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogQWNjZXB0cyB2YXJhcmdzIGV4cGVjdGluZyBlYWNoIGFyZ3VtZW50IHRvIGJlIGFuIG9iamVjdCwgdGhlblxuICogaW1tdXRhYmx5IG1lcmdlcyB0aGUgcHJvcGVydGllcyBvZiBlYWNoIG9iamVjdCBhbmQgcmV0dXJucyByZXN1bHQuXG4gKlxuICogV2hlbiBtdWx0aXBsZSBvYmplY3RzIGNvbnRhaW4gdGhlIHNhbWUga2V5IHRoZSBsYXRlciBvYmplY3QgaW5cbiAqIHRoZSBhcmd1bWVudHMgbGlzdCB3aWxsIHRha2UgcHJlY2VkZW5jZS5cbiAqXG4gKiBFeGFtcGxlOlxuICpcbiAqIGBgYGpzXG4gKiB2YXIgcmVzdWx0ID0gbWVyZ2Uoe2ZvbzogMTIzfSwge2ZvbzogNDU2fSk7XG4gKiBjb25zb2xlLmxvZyhyZXN1bHQuZm9vKTsgLy8gb3V0cHV0cyA0NTZcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSBvYmoxIE9iamVjdCB0byBtZXJnZVxuICogQHJldHVybnMge09iamVjdH0gUmVzdWx0IG9mIGFsbCBtZXJnZSBwcm9wZXJ0aWVzXG4gKi9cbmZ1bmN0aW9uIG1lcmdlKC8qIG9iajEsIG9iajIsIG9iajMsIC4uLiAqLykge1xuICB2YXIgcmVzdWx0ID0ge307XG4gIGZ1bmN0aW9uIGFzc2lnblZhbHVlKHZhbCwga2V5KSB7XG4gICAgaWYgKHR5cGVvZiByZXN1bHRba2V5XSA9PT0gJ29iamVjdCcgJiYgdHlwZW9mIHZhbCA9PT0gJ29iamVjdCcpIHtcbiAgICAgIHJlc3VsdFtrZXldID0gbWVyZ2UocmVzdWx0W2tleV0sIHZhbCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJlc3VsdFtrZXldID0gdmFsO1xuICAgIH1cbiAgfVxuXG4gIGZvciAodmFyIGkgPSAwLCBsID0gYXJndW1lbnRzLmxlbmd0aDsgaSA8IGw7IGkrKykge1xuICAgIGZvckVhY2goYXJndW1lbnRzW2ldLCBhc3NpZ25WYWx1ZSk7XG4gIH1cbiAgcmV0dXJuIHJlc3VsdDtcbn1cblxuLyoqXG4gKiBFeHRlbmRzIG9iamVjdCBhIGJ5IG11dGFibHkgYWRkaW5nIHRvIGl0IHRoZSBwcm9wZXJ0aWVzIG9mIG9iamVjdCBiLlxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSBhIFRoZSBvYmplY3QgdG8gYmUgZXh0ZW5kZWRcbiAqIEBwYXJhbSB7T2JqZWN0fSBiIFRoZSBvYmplY3QgdG8gY29weSBwcm9wZXJ0aWVzIGZyb21cbiAqIEBwYXJhbSB7T2JqZWN0fSB0aGlzQXJnIFRoZSBvYmplY3QgdG8gYmluZCBmdW5jdGlvbiB0b1xuICogQHJldHVybiB7T2JqZWN0fSBUaGUgcmVzdWx0aW5nIHZhbHVlIG9mIG9iamVjdCBhXG4gKi9cbmZ1bmN0aW9uIGV4dGVuZChhLCBiLCB0aGlzQXJnKSB7XG4gIGZvckVhY2goYiwgZnVuY3Rpb24gYXNzaWduVmFsdWUodmFsLCBrZXkpIHtcbiAgICBpZiAodGhpc0FyZyAmJiB0eXBlb2YgdmFsID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICBhW2tleV0gPSBiaW5kKHZhbCwgdGhpc0FyZyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGFba2V5XSA9IHZhbDtcbiAgICB9XG4gIH0pO1xuICByZXR1cm4gYTtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIGlzQXJyYXk6IGlzQXJyYXksXG4gIGlzQXJyYXlCdWZmZXI6IGlzQXJyYXlCdWZmZXIsXG4gIGlzQnVmZmVyOiBpc0J1ZmZlcixcbiAgaXNGb3JtRGF0YTogaXNGb3JtRGF0YSxcbiAgaXNBcnJheUJ1ZmZlclZpZXc6IGlzQXJyYXlCdWZmZXJWaWV3LFxuICBpc1N0cmluZzogaXNTdHJpbmcsXG4gIGlzTnVtYmVyOiBpc051bWJlcixcbiAgaXNPYmplY3Q6IGlzT2JqZWN0LFxuICBpc1VuZGVmaW5lZDogaXNVbmRlZmluZWQsXG4gIGlzRGF0ZTogaXNEYXRlLFxuICBpc0ZpbGU6IGlzRmlsZSxcbiAgaXNCbG9iOiBpc0Jsb2IsXG4gIGlzRnVuY3Rpb246IGlzRnVuY3Rpb24sXG4gIGlzU3RyZWFtOiBpc1N0cmVhbSxcbiAgaXNVUkxTZWFyY2hQYXJhbXM6IGlzVVJMU2VhcmNoUGFyYW1zLFxuICBpc1N0YW5kYXJkQnJvd3NlckVudjogaXNTdGFuZGFyZEJyb3dzZXJFbnYsXG4gIGZvckVhY2g6IGZvckVhY2gsXG4gIG1lcmdlOiBtZXJnZSxcbiAgZXh0ZW5kOiBleHRlbmQsXG4gIHRyaW06IHRyaW1cbn07XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvdXRpbHMuanNcbi8vIG1vZHVsZSBpZCA9IDBcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///0\n"); +eval("\n\nvar bind = __webpack_require__(18);\nvar isBuffer = __webpack_require__(47);\n\n/*global toString:true*/\n\n// utils is a library of generic helper functions non-specific to axios\n\nvar toString = Object.prototype.toString;\n\n/**\n * Determine if a value is an Array\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an Array, otherwise false\n */\nfunction isArray(val) {\n return toString.call(val) === '[object Array]';\n}\n\n/**\n * Determine if a value is an ArrayBuffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n */\nfunction isArrayBuffer(val) {\n return toString.call(val) === '[object ArrayBuffer]';\n}\n\n/**\n * Determine if a value is a FormData\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an FormData, otherwise false\n */\nfunction isFormData(val) {\n return (typeof FormData !== 'undefined') && (val instanceof FormData);\n}\n\n/**\n * Determine if a value is a view on an ArrayBuffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false\n */\nfunction isArrayBufferView(val) {\n var result;\n if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {\n result = ArrayBuffer.isView(val);\n } else {\n result = (val) && (val.buffer) && (val.buffer instanceof ArrayBuffer);\n }\n return result;\n}\n\n/**\n * Determine if a value is a String\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a String, otherwise false\n */\nfunction isString(val) {\n return typeof val === 'string';\n}\n\n/**\n * Determine if a value is a Number\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Number, otherwise false\n */\nfunction isNumber(val) {\n return typeof val === 'number';\n}\n\n/**\n * Determine if a value is undefined\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if the value is undefined, otherwise false\n */\nfunction isUndefined(val) {\n return typeof val === 'undefined';\n}\n\n/**\n * Determine if a value is an Object\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an Object, otherwise false\n */\nfunction isObject(val) {\n return val !== null && typeof val === 'object';\n}\n\n/**\n * Determine if a value is a Date\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Date, otherwise false\n */\nfunction isDate(val) {\n return toString.call(val) === '[object Date]';\n}\n\n/**\n * Determine if a value is a File\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a File, otherwise false\n */\nfunction isFile(val) {\n return toString.call(val) === '[object File]';\n}\n\n/**\n * Determine if a value is a Blob\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Blob, otherwise false\n */\nfunction isBlob(val) {\n return toString.call(val) === '[object Blob]';\n}\n\n/**\n * Determine if a value is a Function\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Function, otherwise false\n */\nfunction isFunction(val) {\n return toString.call(val) === '[object Function]';\n}\n\n/**\n * Determine if a value is a Stream\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Stream, otherwise false\n */\nfunction isStream(val) {\n return isObject(val) && isFunction(val.pipe);\n}\n\n/**\n * Determine if a value is a URLSearchParams object\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\n */\nfunction isURLSearchParams(val) {\n return typeof URLSearchParams !== 'undefined' && val instanceof URLSearchParams;\n}\n\n/**\n * Trim excess whitespace off the beginning and end of a string\n *\n * @param {String} str The String to trim\n * @returns {String} The String freed of excess whitespace\n */\nfunction trim(str) {\n return str.replace(/^\\s*/, '').replace(/\\s*$/, '');\n}\n\n/**\n * Determine if we're running in a standard browser environment\n *\n * This allows axios to run in a web worker, and react-native.\n * Both environments support XMLHttpRequest, but not fully standard globals.\n *\n * web workers:\n * typeof window -> undefined\n * typeof document -> undefined\n *\n * react-native:\n * navigator.product -> 'ReactNative'\n */\nfunction isStandardBrowserEnv() {\n if (typeof navigator !== 'undefined' && navigator.product === 'ReactNative') {\n return false;\n }\n return (\n typeof window !== 'undefined' &&\n typeof document !== 'undefined'\n );\n}\n\n/**\n * Iterate over an Array or an Object invoking a function for each item.\n *\n * If `obj` is an Array callback will be called passing\n * the value, index, and complete array for each item.\n *\n * If 'obj' is an Object callback will be called passing\n * the value, key, and complete object for each property.\n *\n * @param {Object|Array} obj The object to iterate\n * @param {Function} fn The callback to invoke for each item\n */\nfunction forEach(obj, fn) {\n // Don't bother if no value provided\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n\n // Force an array if not already something iterable\n if (typeof obj !== 'object') {\n /*eslint no-param-reassign:0*/\n obj = [obj];\n }\n\n if (isArray(obj)) {\n // Iterate over array values\n for (var i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n // Iterate over object keys\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n fn.call(null, obj[key], key, obj);\n }\n }\n }\n}\n\n/**\n * Accepts varargs expecting each argument to be an object, then\n * immutably merges the properties of each object and returns result.\n *\n * When multiple objects contain the same key the later object in\n * the arguments list will take precedence.\n *\n * Example:\n *\n * ```js\n * var result = merge({foo: 123}, {foo: 456});\n * console.log(result.foo); // outputs 456\n * ```\n *\n * @param {Object} obj1 Object to merge\n * @returns {Object} Result of all merge properties\n */\nfunction merge(/* obj1, obj2, obj3, ... */) {\n var result = {};\n function assignValue(val, key) {\n if (typeof result[key] === 'object' && typeof val === 'object') {\n result[key] = merge(result[key], val);\n } else {\n result[key] = val;\n }\n }\n\n for (var i = 0, l = arguments.length; i < l; i++) {\n forEach(arguments[i], assignValue);\n }\n return result;\n}\n\n/**\n * Extends object a by mutably adding to it the properties of object b.\n *\n * @param {Object} a The object to be extended\n * @param {Object} b The object to copy properties from\n * @param {Object} thisArg The object to bind function to\n * @return {Object} The resulting value of object a\n */\nfunction extend(a, b, thisArg) {\n forEach(b, function assignValue(val, key) {\n if (thisArg && typeof val === 'function') {\n a[key] = bind(val, thisArg);\n } else {\n a[key] = val;\n }\n });\n return a;\n}\n\nmodule.exports = {\n isArray: isArray,\n isArrayBuffer: isArrayBuffer,\n isBuffer: isBuffer,\n isFormData: isFormData,\n isArrayBufferView: isArrayBufferView,\n isString: isString,\n isNumber: isNumber,\n isObject: isObject,\n isUndefined: isUndefined,\n isDate: isDate,\n isFile: isFile,\n isBlob: isBlob,\n isFunction: isFunction,\n isStream: isStream,\n isURLSearchParams: isURLSearchParams,\n isStandardBrowserEnv: isStandardBrowserEnv,\n forEach: forEach,\n merge: merge,\n extend: extend,\n trim: trim\n};\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL3V0aWxzLmpzPzcwNjEiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0FBRUE7QUFDQTs7QUFFQTs7QUFFQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLE9BQU87QUFDbEIsYUFBYSxRQUFRO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLFdBQVcsT0FBTztBQUNsQixhQUFhLFFBQVE7QUFDckI7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsV0FBVyxPQUFPO0FBQ2xCLGFBQWEsUUFBUTtBQUNyQjtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLE9BQU87QUFDbEIsYUFBYSxRQUFRO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsV0FBVyxPQUFPO0FBQ2xCLGFBQWEsUUFBUTtBQUNyQjtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLE9BQU87QUFDbEIsYUFBYSxRQUFRO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLFdBQVcsT0FBTztBQUNsQixhQUFhLFFBQVE7QUFDckI7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsV0FBVyxPQUFPO0FBQ2xCLGFBQWEsUUFBUTtBQUNyQjtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLE9BQU87QUFDbEIsYUFBYSxRQUFRO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLFdBQVcsT0FBTztBQUNsQixhQUFhLFFBQVE7QUFDckI7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsV0FBVyxPQUFPO0FBQ2xCLGFBQWEsUUFBUTtBQUNyQjtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLE9BQU87QUFDbEIsYUFBYSxRQUFRO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLFdBQVcsT0FBTztBQUNsQixhQUFhLFFBQVE7QUFDckI7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsV0FBVyxPQUFPO0FBQ2xCLGFBQWEsUUFBUTtBQUNyQjtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLE9BQU87QUFDbEIsYUFBYSxPQUFPO0FBQ3BCO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFdBQVcsYUFBYTtBQUN4QixXQUFXLFNBQVM7QUFDcEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLG1DQUFtQyxPQUFPO0FBQzFDO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1QixTQUFTLEdBQUcsU0FBUztBQUM1QywyQkFBMkI7QUFDM0I7QUFDQTtBQUNBLFdBQVcsT0FBTztBQUNsQixhQUFhLE9BQU87QUFDcEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTs7QUFFQSx1Q0FBdUMsT0FBTztBQUM5QztBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLE9BQU87QUFDbEIsV0FBVyxPQUFPO0FBQ2xCLFdBQVcsT0FBTztBQUNsQixZQUFZLE9BQU87QUFDbkI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJmaWxlIjoiMC5qcyIsInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxudmFyIGJpbmQgPSByZXF1aXJlKCcuL2hlbHBlcnMvYmluZCcpO1xudmFyIGlzQnVmZmVyID0gcmVxdWlyZSgnaXMtYnVmZmVyJyk7XG5cbi8qZ2xvYmFsIHRvU3RyaW5nOnRydWUqL1xuXG4vLyB1dGlscyBpcyBhIGxpYnJhcnkgb2YgZ2VuZXJpYyBoZWxwZXIgZnVuY3Rpb25zIG5vbi1zcGVjaWZpYyB0byBheGlvc1xuXG52YXIgdG9TdHJpbmcgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nO1xuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGFuIEFycmF5XG4gKlxuICogQHBhcmFtIHtPYmplY3R9IHZhbCBUaGUgdmFsdWUgdG8gdGVzdFxuICogQHJldHVybnMge2Jvb2xlYW59IFRydWUgaWYgdmFsdWUgaXMgYW4gQXJyYXksIG90aGVyd2lzZSBmYWxzZVxuICovXG5mdW5jdGlvbiBpc0FycmF5KHZhbCkge1xuICByZXR1cm4gdG9TdHJpbmcuY2FsbCh2YWwpID09PSAnW29iamVjdCBBcnJheV0nO1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGFuIEFycmF5QnVmZmVyXG4gKlxuICogQHBhcmFtIHtPYmplY3R9IHZhbCBUaGUgdmFsdWUgdG8gdGVzdFxuICogQHJldHVybnMge2Jvb2xlYW59IFRydWUgaWYgdmFsdWUgaXMgYW4gQXJyYXlCdWZmZXIsIG90aGVyd2lzZSBmYWxzZVxuICovXG5mdW5jdGlvbiBpc0FycmF5QnVmZmVyKHZhbCkge1xuICByZXR1cm4gdG9TdHJpbmcuY2FsbCh2YWwpID09PSAnW29iamVjdCBBcnJheUJ1ZmZlcl0nO1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGEgRm9ybURhdGFcbiAqXG4gKiBAcGFyYW0ge09iamVjdH0gdmFsIFRoZSB2YWx1ZSB0byB0ZXN0XG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gVHJ1ZSBpZiB2YWx1ZSBpcyBhbiBGb3JtRGF0YSwgb3RoZXJ3aXNlIGZhbHNlXG4gKi9cbmZ1bmN0aW9uIGlzRm9ybURhdGEodmFsKSB7XG4gIHJldHVybiAodHlwZW9mIEZvcm1EYXRhICE9PSAndW5kZWZpbmVkJykgJiYgKHZhbCBpbnN0YW5jZW9mIEZvcm1EYXRhKTtcbn1cblxuLyoqXG4gKiBEZXRlcm1pbmUgaWYgYSB2YWx1ZSBpcyBhIHZpZXcgb24gYW4gQXJyYXlCdWZmZXJcbiAqXG4gKiBAcGFyYW0ge09iamVjdH0gdmFsIFRoZSB2YWx1ZSB0byB0ZXN0XG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gVHJ1ZSBpZiB2YWx1ZSBpcyBhIHZpZXcgb24gYW4gQXJyYXlCdWZmZXIsIG90aGVyd2lzZSBmYWxzZVxuICovXG5mdW5jdGlvbiBpc0FycmF5QnVmZmVyVmlldyh2YWwpIHtcbiAgdmFyIHJlc3VsdDtcbiAgaWYgKCh0eXBlb2YgQXJyYXlCdWZmZXIgIT09ICd1bmRlZmluZWQnKSAmJiAoQXJyYXlCdWZmZXIuaXNWaWV3KSkge1xuICAgIHJlc3VsdCA9IEFycmF5QnVmZmVyLmlzVmlldyh2YWwpO1xuICB9IGVsc2Uge1xuICAgIHJlc3VsdCA9ICh2YWwpICYmICh2YWwuYnVmZmVyKSAmJiAodmFsLmJ1ZmZlciBpbnN0YW5jZW9mIEFycmF5QnVmZmVyKTtcbiAgfVxuICByZXR1cm4gcmVzdWx0O1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGEgU3RyaW5nXG4gKlxuICogQHBhcmFtIHtPYmplY3R9IHZhbCBUaGUgdmFsdWUgdG8gdGVzdFxuICogQHJldHVybnMge2Jvb2xlYW59IFRydWUgaWYgdmFsdWUgaXMgYSBTdHJpbmcsIG90aGVyd2lzZSBmYWxzZVxuICovXG5mdW5jdGlvbiBpc1N0cmluZyh2YWwpIHtcbiAgcmV0dXJuIHR5cGVvZiB2YWwgPT09ICdzdHJpbmcnO1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGEgTnVtYmVyXG4gKlxuICogQHBhcmFtIHtPYmplY3R9IHZhbCBUaGUgdmFsdWUgdG8gdGVzdFxuICogQHJldHVybnMge2Jvb2xlYW59IFRydWUgaWYgdmFsdWUgaXMgYSBOdW1iZXIsIG90aGVyd2lzZSBmYWxzZVxuICovXG5mdW5jdGlvbiBpc051bWJlcih2YWwpIHtcbiAgcmV0dXJuIHR5cGVvZiB2YWwgPT09ICdudW1iZXInO1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIHVuZGVmaW5lZFxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSB2YWwgVGhlIHZhbHVlIHRvIHRlc3RcbiAqIEByZXR1cm5zIHtib29sZWFufSBUcnVlIGlmIHRoZSB2YWx1ZSBpcyB1bmRlZmluZWQsIG90aGVyd2lzZSBmYWxzZVxuICovXG5mdW5jdGlvbiBpc1VuZGVmaW5lZCh2YWwpIHtcbiAgcmV0dXJuIHR5cGVvZiB2YWwgPT09ICd1bmRlZmluZWQnO1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGFuIE9iamVjdFxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSB2YWwgVGhlIHZhbHVlIHRvIHRlc3RcbiAqIEByZXR1cm5zIHtib29sZWFufSBUcnVlIGlmIHZhbHVlIGlzIGFuIE9iamVjdCwgb3RoZXJ3aXNlIGZhbHNlXG4gKi9cbmZ1bmN0aW9uIGlzT2JqZWN0KHZhbCkge1xuICByZXR1cm4gdmFsICE9PSBudWxsICYmIHR5cGVvZiB2YWwgPT09ICdvYmplY3QnO1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGEgRGF0ZVxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSB2YWwgVGhlIHZhbHVlIHRvIHRlc3RcbiAqIEByZXR1cm5zIHtib29sZWFufSBUcnVlIGlmIHZhbHVlIGlzIGEgRGF0ZSwgb3RoZXJ3aXNlIGZhbHNlXG4gKi9cbmZ1bmN0aW9uIGlzRGF0ZSh2YWwpIHtcbiAgcmV0dXJuIHRvU3RyaW5nLmNhbGwodmFsKSA9PT0gJ1tvYmplY3QgRGF0ZV0nO1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGEgRmlsZVxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSB2YWwgVGhlIHZhbHVlIHRvIHRlc3RcbiAqIEByZXR1cm5zIHtib29sZWFufSBUcnVlIGlmIHZhbHVlIGlzIGEgRmlsZSwgb3RoZXJ3aXNlIGZhbHNlXG4gKi9cbmZ1bmN0aW9uIGlzRmlsZSh2YWwpIHtcbiAgcmV0dXJuIHRvU3RyaW5nLmNhbGwodmFsKSA9PT0gJ1tvYmplY3QgRmlsZV0nO1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGEgQmxvYlxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSB2YWwgVGhlIHZhbHVlIHRvIHRlc3RcbiAqIEByZXR1cm5zIHtib29sZWFufSBUcnVlIGlmIHZhbHVlIGlzIGEgQmxvYiwgb3RoZXJ3aXNlIGZhbHNlXG4gKi9cbmZ1bmN0aW9uIGlzQmxvYih2YWwpIHtcbiAgcmV0dXJuIHRvU3RyaW5nLmNhbGwodmFsKSA9PT0gJ1tvYmplY3QgQmxvYl0nO1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGEgRnVuY3Rpb25cbiAqXG4gKiBAcGFyYW0ge09iamVjdH0gdmFsIFRoZSB2YWx1ZSB0byB0ZXN0XG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gVHJ1ZSBpZiB2YWx1ZSBpcyBhIEZ1bmN0aW9uLCBvdGhlcndpc2UgZmFsc2VcbiAqL1xuZnVuY3Rpb24gaXNGdW5jdGlvbih2YWwpIHtcbiAgcmV0dXJuIHRvU3RyaW5nLmNhbGwodmFsKSA9PT0gJ1tvYmplY3QgRnVuY3Rpb25dJztcbn1cblxuLyoqXG4gKiBEZXRlcm1pbmUgaWYgYSB2YWx1ZSBpcyBhIFN0cmVhbVxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSB2YWwgVGhlIHZhbHVlIHRvIHRlc3RcbiAqIEByZXR1cm5zIHtib29sZWFufSBUcnVlIGlmIHZhbHVlIGlzIGEgU3RyZWFtLCBvdGhlcndpc2UgZmFsc2VcbiAqL1xuZnVuY3Rpb24gaXNTdHJlYW0odmFsKSB7XG4gIHJldHVybiBpc09iamVjdCh2YWwpICYmIGlzRnVuY3Rpb24odmFsLnBpcGUpO1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGEgVVJMU2VhcmNoUGFyYW1zIG9iamVjdFxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSB2YWwgVGhlIHZhbHVlIHRvIHRlc3RcbiAqIEByZXR1cm5zIHtib29sZWFufSBUcnVlIGlmIHZhbHVlIGlzIGEgVVJMU2VhcmNoUGFyYW1zIG9iamVjdCwgb3RoZXJ3aXNlIGZhbHNlXG4gKi9cbmZ1bmN0aW9uIGlzVVJMU2VhcmNoUGFyYW1zKHZhbCkge1xuICByZXR1cm4gdHlwZW9mIFVSTFNlYXJjaFBhcmFtcyAhPT0gJ3VuZGVmaW5lZCcgJiYgdmFsIGluc3RhbmNlb2YgVVJMU2VhcmNoUGFyYW1zO1xufVxuXG4vKipcbiAqIFRyaW0gZXhjZXNzIHdoaXRlc3BhY2Ugb2ZmIHRoZSBiZWdpbm5pbmcgYW5kIGVuZCBvZiBhIHN0cmluZ1xuICpcbiAqIEBwYXJhbSB7U3RyaW5nfSBzdHIgVGhlIFN0cmluZyB0byB0cmltXG4gKiBAcmV0dXJucyB7U3RyaW5nfSBUaGUgU3RyaW5nIGZyZWVkIG9mIGV4Y2VzcyB3aGl0ZXNwYWNlXG4gKi9cbmZ1bmN0aW9uIHRyaW0oc3RyKSB7XG4gIHJldHVybiBzdHIucmVwbGFjZSgvXlxccyovLCAnJykucmVwbGFjZSgvXFxzKiQvLCAnJyk7XG59XG5cbi8qKlxuICogRGV0ZXJtaW5lIGlmIHdlJ3JlIHJ1bm5pbmcgaW4gYSBzdGFuZGFyZCBicm93c2VyIGVudmlyb25tZW50XG4gKlxuICogVGhpcyBhbGxvd3MgYXhpb3MgdG8gcnVuIGluIGEgd2ViIHdvcmtlciwgYW5kIHJlYWN0LW5hdGl2ZS5cbiAqIEJvdGggZW52aXJvbm1lbnRzIHN1cHBvcnQgWE1MSHR0cFJlcXVlc3QsIGJ1dCBub3QgZnVsbHkgc3RhbmRhcmQgZ2xvYmFscy5cbiAqXG4gKiB3ZWIgd29ya2VyczpcbiAqICB0eXBlb2Ygd2luZG93IC0+IHVuZGVmaW5lZFxuICogIHR5cGVvZiBkb2N1bWVudCAtPiB1bmRlZmluZWRcbiAqXG4gKiByZWFjdC1uYXRpdmU6XG4gKiAgbmF2aWdhdG9yLnByb2R1Y3QgLT4gJ1JlYWN0TmF0aXZlJ1xuICovXG5mdW5jdGlvbiBpc1N0YW5kYXJkQnJvd3NlckVudigpIHtcbiAgaWYgKHR5cGVvZiBuYXZpZ2F0b3IgIT09ICd1bmRlZmluZWQnICYmIG5hdmlnYXRvci5wcm9kdWN0ID09PSAnUmVhY3ROYXRpdmUnKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIHJldHVybiAoXG4gICAgdHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiZcbiAgICB0eXBlb2YgZG9jdW1lbnQgIT09ICd1bmRlZmluZWQnXG4gICk7XG59XG5cbi8qKlxuICogSXRlcmF0ZSBvdmVyIGFuIEFycmF5IG9yIGFuIE9iamVjdCBpbnZva2luZyBhIGZ1bmN0aW9uIGZvciBlYWNoIGl0ZW0uXG4gKlxuICogSWYgYG9iamAgaXMgYW4gQXJyYXkgY2FsbGJhY2sgd2lsbCBiZSBjYWxsZWQgcGFzc2luZ1xuICogdGhlIHZhbHVlLCBpbmRleCwgYW5kIGNvbXBsZXRlIGFycmF5IGZvciBlYWNoIGl0ZW0uXG4gKlxuICogSWYgJ29iaicgaXMgYW4gT2JqZWN0IGNhbGxiYWNrIHdpbGwgYmUgY2FsbGVkIHBhc3NpbmdcbiAqIHRoZSB2YWx1ZSwga2V5LCBhbmQgY29tcGxldGUgb2JqZWN0IGZvciBlYWNoIHByb3BlcnR5LlxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fEFycmF5fSBvYmogVGhlIG9iamVjdCB0byBpdGVyYXRlXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBmbiBUaGUgY2FsbGJhY2sgdG8gaW52b2tlIGZvciBlYWNoIGl0ZW1cbiAqL1xuZnVuY3Rpb24gZm9yRWFjaChvYmosIGZuKSB7XG4gIC8vIERvbid0IGJvdGhlciBpZiBubyB2YWx1ZSBwcm92aWRlZFxuICBpZiAob2JqID09PSBudWxsIHx8IHR5cGVvZiBvYmogPT09ICd1bmRlZmluZWQnKSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLy8gRm9yY2UgYW4gYXJyYXkgaWYgbm90IGFscmVhZHkgc29tZXRoaW5nIGl0ZXJhYmxlXG4gIGlmICh0eXBlb2Ygb2JqICE9PSAnb2JqZWN0Jykge1xuICAgIC8qZXNsaW50IG5vLXBhcmFtLXJlYXNzaWduOjAqL1xuICAgIG9iaiA9IFtvYmpdO1xuICB9XG5cbiAgaWYgKGlzQXJyYXkob2JqKSkge1xuICAgIC8vIEl0ZXJhdGUgb3ZlciBhcnJheSB2YWx1ZXNcbiAgICBmb3IgKHZhciBpID0gMCwgbCA9IG9iai5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgIGZuLmNhbGwobnVsbCwgb2JqW2ldLCBpLCBvYmopO1xuICAgIH1cbiAgfSBlbHNlIHtcbiAgICAvLyBJdGVyYXRlIG92ZXIgb2JqZWN0IGtleXNcbiAgICBmb3IgKHZhciBrZXkgaW4gb2JqKSB7XG4gICAgICBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG9iaiwga2V5KSkge1xuICAgICAgICBmbi5jYWxsKG51bGwsIG9ialtrZXldLCBrZXksIG9iaik7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogQWNjZXB0cyB2YXJhcmdzIGV4cGVjdGluZyBlYWNoIGFyZ3VtZW50IHRvIGJlIGFuIG9iamVjdCwgdGhlblxuICogaW1tdXRhYmx5IG1lcmdlcyB0aGUgcHJvcGVydGllcyBvZiBlYWNoIG9iamVjdCBhbmQgcmV0dXJucyByZXN1bHQuXG4gKlxuICogV2hlbiBtdWx0aXBsZSBvYmplY3RzIGNvbnRhaW4gdGhlIHNhbWUga2V5IHRoZSBsYXRlciBvYmplY3QgaW5cbiAqIHRoZSBhcmd1bWVudHMgbGlzdCB3aWxsIHRha2UgcHJlY2VkZW5jZS5cbiAqXG4gKiBFeGFtcGxlOlxuICpcbiAqIGBgYGpzXG4gKiB2YXIgcmVzdWx0ID0gbWVyZ2Uoe2ZvbzogMTIzfSwge2ZvbzogNDU2fSk7XG4gKiBjb25zb2xlLmxvZyhyZXN1bHQuZm9vKTsgLy8gb3V0cHV0cyA0NTZcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSBvYmoxIE9iamVjdCB0byBtZXJnZVxuICogQHJldHVybnMge09iamVjdH0gUmVzdWx0IG9mIGFsbCBtZXJnZSBwcm9wZXJ0aWVzXG4gKi9cbmZ1bmN0aW9uIG1lcmdlKC8qIG9iajEsIG9iajIsIG9iajMsIC4uLiAqLykge1xuICB2YXIgcmVzdWx0ID0ge307XG4gIGZ1bmN0aW9uIGFzc2lnblZhbHVlKHZhbCwga2V5KSB7XG4gICAgaWYgKHR5cGVvZiByZXN1bHRba2V5XSA9PT0gJ29iamVjdCcgJiYgdHlwZW9mIHZhbCA9PT0gJ29iamVjdCcpIHtcbiAgICAgIHJlc3VsdFtrZXldID0gbWVyZ2UocmVzdWx0W2tleV0sIHZhbCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJlc3VsdFtrZXldID0gdmFsO1xuICAgIH1cbiAgfVxuXG4gIGZvciAodmFyIGkgPSAwLCBsID0gYXJndW1lbnRzLmxlbmd0aDsgaSA8IGw7IGkrKykge1xuICAgIGZvckVhY2goYXJndW1lbnRzW2ldLCBhc3NpZ25WYWx1ZSk7XG4gIH1cbiAgcmV0dXJuIHJlc3VsdDtcbn1cblxuLyoqXG4gKiBFeHRlbmRzIG9iamVjdCBhIGJ5IG11dGFibHkgYWRkaW5nIHRvIGl0IHRoZSBwcm9wZXJ0aWVzIG9mIG9iamVjdCBiLlxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSBhIFRoZSBvYmplY3QgdG8gYmUgZXh0ZW5kZWRcbiAqIEBwYXJhbSB7T2JqZWN0fSBiIFRoZSBvYmplY3QgdG8gY29weSBwcm9wZXJ0aWVzIGZyb21cbiAqIEBwYXJhbSB7T2JqZWN0fSB0aGlzQXJnIFRoZSBvYmplY3QgdG8gYmluZCBmdW5jdGlvbiB0b1xuICogQHJldHVybiB7T2JqZWN0fSBUaGUgcmVzdWx0aW5nIHZhbHVlIG9mIG9iamVjdCBhXG4gKi9cbmZ1bmN0aW9uIGV4dGVuZChhLCBiLCB0aGlzQXJnKSB7XG4gIGZvckVhY2goYiwgZnVuY3Rpb24gYXNzaWduVmFsdWUodmFsLCBrZXkpIHtcbiAgICBpZiAodGhpc0FyZyAmJiB0eXBlb2YgdmFsID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICBhW2tleV0gPSBiaW5kKHZhbCwgdGhpc0FyZyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGFba2V5XSA9IHZhbDtcbiAgICB9XG4gIH0pO1xuICByZXR1cm4gYTtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIGlzQXJyYXk6IGlzQXJyYXksXG4gIGlzQXJyYXlCdWZmZXI6IGlzQXJyYXlCdWZmZXIsXG4gIGlzQnVmZmVyOiBpc0J1ZmZlcixcbiAgaXNGb3JtRGF0YTogaXNGb3JtRGF0YSxcbiAgaXNBcnJheUJ1ZmZlclZpZXc6IGlzQXJyYXlCdWZmZXJWaWV3LFxuICBpc1N0cmluZzogaXNTdHJpbmcsXG4gIGlzTnVtYmVyOiBpc051bWJlcixcbiAgaXNPYmplY3Q6IGlzT2JqZWN0LFxuICBpc1VuZGVmaW5lZDogaXNVbmRlZmluZWQsXG4gIGlzRGF0ZTogaXNEYXRlLFxuICBpc0ZpbGU6IGlzRmlsZSxcbiAgaXNCbG9iOiBpc0Jsb2IsXG4gIGlzRnVuY3Rpb246IGlzRnVuY3Rpb24sXG4gIGlzU3RyZWFtOiBpc1N0cmVhbSxcbiAgaXNVUkxTZWFyY2hQYXJhbXM6IGlzVVJMU2VhcmNoUGFyYW1zLFxuICBpc1N0YW5kYXJkQnJvd3NlckVudjogaXNTdGFuZGFyZEJyb3dzZXJFbnYsXG4gIGZvckVhY2g6IGZvckVhY2gsXG4gIG1lcmdlOiBtZXJnZSxcbiAgZXh0ZW5kOiBleHRlbmQsXG4gIHRyaW06IHRyaW1cbn07XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvdXRpbHMuanNcbi8vIG1vZHVsZSBpZCA9IDBcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///0\n"); /***/ }), /* 1 */ @@ -103,86 +103,86 @@ eval("!function(t,e){ true?module.exports=e():\"function\"==typeof define&&defin /***/ }), /* 6 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -eval("/* WEBPACK VAR INJECTION */(function(process) {\n\nvar utils = __webpack_require__(0);\nvar normalizeHeaderName = __webpack_require__(53);\n\nvar DEFAULT_CONTENT_TYPE = {\n 'Content-Type': 'application/x-www-form-urlencoded'\n};\n\nfunction setContentTypeIfUnset(headers, value) {\n if (!utils.isUndefined(headers) && utils.isUndefined(headers['Content-Type'])) {\n headers['Content-Type'] = value;\n }\n}\n\nfunction getDefaultAdapter() {\n var adapter;\n if (typeof XMLHttpRequest !== 'undefined') {\n // For browsers use XHR adapter\n adapter = __webpack_require__(19);\n } else if (typeof process !== 'undefined') {\n // For node use HTTP adapter\n adapter = __webpack_require__(19);\n }\n return adapter;\n}\n\nvar defaults = {\n adapter: getDefaultAdapter(),\n\n transformRequest: [function transformRequest(data, headers) {\n normalizeHeaderName(headers, 'Content-Type');\n if (utils.isFormData(data) ||\n utils.isArrayBuffer(data) ||\n utils.isBuffer(data) ||\n utils.isStream(data) ||\n utils.isFile(data) ||\n utils.isBlob(data)\n ) {\n return data;\n }\n if (utils.isArrayBufferView(data)) {\n return data.buffer;\n }\n if (utils.isURLSearchParams(data)) {\n setContentTypeIfUnset(headers, 'application/x-www-form-urlencoded;charset=utf-8');\n return data.toString();\n }\n if (utils.isObject(data)) {\n setContentTypeIfUnset(headers, 'application/json;charset=utf-8');\n return JSON.stringify(data);\n }\n return data;\n }],\n\n transformResponse: [function transformResponse(data) {\n /*eslint no-param-reassign:0*/\n if (typeof data === 'string') {\n try {\n data = JSON.parse(data);\n } catch (e) { /* Ignore */ }\n }\n return data;\n }],\n\n /**\n * A timeout in milliseconds to abort a request. If set to 0 (default) a\n * timeout is not created.\n */\n timeout: 0,\n\n xsrfCookieName: 'XSRF-TOKEN',\n xsrfHeaderName: 'X-XSRF-TOKEN',\n\n maxContentLength: -1,\n\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n }\n};\n\ndefaults.headers = {\n common: {\n 'Accept': 'application/json, text/plain, */*'\n }\n};\n\nutils.forEach(['delete', 'get', 'head'], function forEachMethodNoData(method) {\n defaults.headers[method] = {};\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n defaults.headers[method] = utils.merge(DEFAULT_CONTENT_TYPE);\n});\n\nmodule.exports = defaults;\n\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(1)))\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2RlZmF1bHRzLmpzPzI4MjIiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IitDQUFBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0VBQXdFO0FBQ3hFO0FBQ0E7QUFDQTtBQUNBLHVEQUF1RDtBQUN2RDtBQUNBO0FBQ0E7QUFDQSxHQUFHOztBQUVIO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPLFlBQVk7QUFDbkI7QUFDQTtBQUNBLEdBQUc7O0FBRUg7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBLENBQUM7O0FBRUQiLCJmaWxlIjoiNi5qcyIsInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxudmFyIHV0aWxzID0gcmVxdWlyZSgnLi91dGlscycpO1xudmFyIG5vcm1hbGl6ZUhlYWRlck5hbWUgPSByZXF1aXJlKCcuL2hlbHBlcnMvbm9ybWFsaXplSGVhZGVyTmFtZScpO1xuXG52YXIgREVGQVVMVF9DT05URU5UX1RZUEUgPSB7XG4gICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkJ1xufTtcblxuZnVuY3Rpb24gc2V0Q29udGVudFR5cGVJZlVuc2V0KGhlYWRlcnMsIHZhbHVlKSB7XG4gIGlmICghdXRpbHMuaXNVbmRlZmluZWQoaGVhZGVycykgJiYgdXRpbHMuaXNVbmRlZmluZWQoaGVhZGVyc1snQ29udGVudC1UeXBlJ10pKSB7XG4gICAgaGVhZGVyc1snQ29udGVudC1UeXBlJ10gPSB2YWx1ZTtcbiAgfVxufVxuXG5mdW5jdGlvbiBnZXREZWZhdWx0QWRhcHRlcigpIHtcbiAgdmFyIGFkYXB0ZXI7XG4gIGlmICh0eXBlb2YgWE1MSHR0cFJlcXVlc3QgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgLy8gRm9yIGJyb3dzZXJzIHVzZSBYSFIgYWRhcHRlclxuICAgIGFkYXB0ZXIgPSByZXF1aXJlKCcuL2FkYXB0ZXJzL3hocicpO1xuICB9IGVsc2UgaWYgKHR5cGVvZiBwcm9jZXNzICE9PSAndW5kZWZpbmVkJykge1xuICAgIC8vIEZvciBub2RlIHVzZSBIVFRQIGFkYXB0ZXJcbiAgICBhZGFwdGVyID0gcmVxdWlyZSgnLi9hZGFwdGVycy9odHRwJyk7XG4gIH1cbiAgcmV0dXJuIGFkYXB0ZXI7XG59XG5cbnZhciBkZWZhdWx0cyA9IHtcbiAgYWRhcHRlcjogZ2V0RGVmYXVsdEFkYXB0ZXIoKSxcblxuICB0cmFuc2Zvcm1SZXF1ZXN0OiBbZnVuY3Rpb24gdHJhbnNmb3JtUmVxdWVzdChkYXRhLCBoZWFkZXJzKSB7XG4gICAgbm9ybWFsaXplSGVhZGVyTmFtZShoZWFkZXJzLCAnQ29udGVudC1UeXBlJyk7XG4gICAgaWYgKHV0aWxzLmlzRm9ybURhdGEoZGF0YSkgfHxcbiAgICAgIHV0aWxzLmlzQXJyYXlCdWZmZXIoZGF0YSkgfHxcbiAgICAgIHV0aWxzLmlzQnVmZmVyKGRhdGEpIHx8XG4gICAgICB1dGlscy5pc1N0cmVhbShkYXRhKSB8fFxuICAgICAgdXRpbHMuaXNGaWxlKGRhdGEpIHx8XG4gICAgICB1dGlscy5pc0Jsb2IoZGF0YSlcbiAgICApIHtcbiAgICAgIHJldHVybiBkYXRhO1xuICAgIH1cbiAgICBpZiAodXRpbHMuaXNBcnJheUJ1ZmZlclZpZXcoZGF0YSkpIHtcbiAgICAgIHJldHVybiBkYXRhLmJ1ZmZlcjtcbiAgICB9XG4gICAgaWYgKHV0aWxzLmlzVVJMU2VhcmNoUGFyYW1zKGRhdGEpKSB7XG4gICAgICBzZXRDb250ZW50VHlwZUlmVW5zZXQoaGVhZGVycywgJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZDtjaGFyc2V0PXV0Zi04Jyk7XG4gICAgICByZXR1cm4gZGF0YS50b1N0cmluZygpO1xuICAgIH1cbiAgICBpZiAodXRpbHMuaXNPYmplY3QoZGF0YSkpIHtcbiAgICAgIHNldENvbnRlbnRUeXBlSWZVbnNldChoZWFkZXJzLCAnYXBwbGljYXRpb24vanNvbjtjaGFyc2V0PXV0Zi04Jyk7XG4gICAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkoZGF0YSk7XG4gICAgfVxuICAgIHJldHVybiBkYXRhO1xuICB9XSxcblxuICB0cmFuc2Zvcm1SZXNwb25zZTogW2Z1bmN0aW9uIHRyYW5zZm9ybVJlc3BvbnNlKGRhdGEpIHtcbiAgICAvKmVzbGludCBuby1wYXJhbS1yZWFzc2lnbjowKi9cbiAgICBpZiAodHlwZW9mIGRhdGEgPT09ICdzdHJpbmcnKSB7XG4gICAgICB0cnkge1xuICAgICAgICBkYXRhID0gSlNPTi5wYXJzZShkYXRhKTtcbiAgICAgIH0gY2F0Y2ggKGUpIHsgLyogSWdub3JlICovIH1cbiAgICB9XG4gICAgcmV0dXJuIGRhdGE7XG4gIH1dLFxuXG4gIC8qKlxuICAgKiBBIHRpbWVvdXQgaW4gbWlsbGlzZWNvbmRzIHRvIGFib3J0IGEgcmVxdWVzdC4gSWYgc2V0IHRvIDAgKGRlZmF1bHQpIGFcbiAgICogdGltZW91dCBpcyBub3QgY3JlYXRlZC5cbiAgICovXG4gIHRpbWVvdXQ6IDAsXG5cbiAgeHNyZkNvb2tpZU5hbWU6ICdYU1JGLVRPS0VOJyxcbiAgeHNyZkhlYWRlck5hbWU6ICdYLVhTUkYtVE9LRU4nLFxuXG4gIG1heENvbnRlbnRMZW5ndGg6IC0xLFxuXG4gIHZhbGlkYXRlU3RhdHVzOiBmdW5jdGlvbiB2YWxpZGF0ZVN0YXR1cyhzdGF0dXMpIHtcbiAgICByZXR1cm4gc3RhdHVzID49IDIwMCAmJiBzdGF0dXMgPCAzMDA7XG4gIH1cbn07XG5cbmRlZmF1bHRzLmhlYWRlcnMgPSB7XG4gIGNvbW1vbjoge1xuICAgICdBY2NlcHQnOiAnYXBwbGljYXRpb24vanNvbiwgdGV4dC9wbGFpbiwgKi8qJ1xuICB9XG59O1xuXG51dGlscy5mb3JFYWNoKFsnZGVsZXRlJywgJ2dldCcsICdoZWFkJ10sIGZ1bmN0aW9uIGZvckVhY2hNZXRob2ROb0RhdGEobWV0aG9kKSB7XG4gIGRlZmF1bHRzLmhlYWRlcnNbbWV0aG9kXSA9IHt9O1xufSk7XG5cbnV0aWxzLmZvckVhY2goWydwb3N0JywgJ3B1dCcsICdwYXRjaCddLCBmdW5jdGlvbiBmb3JFYWNoTWV0aG9kV2l0aERhdGEobWV0aG9kKSB7XG4gIGRlZmF1bHRzLmhlYWRlcnNbbWV0aG9kXSA9IHV0aWxzLm1lcmdlKERFRkFVTFRfQ09OVEVOVF9UWVBFKTtcbn0pO1xuXG5tb2R1bGUuZXhwb3J0cyA9IGRlZmF1bHRzO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2RlZmF1bHRzLmpzXG4vLyBtb2R1bGUgaWQgPSA2XG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///6\n"); - -/***/ }), -/* 7 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("//\n//\n//\n//\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tname: 'App',\n\tbeforeMount: function beforeMount() {\n\t\t// importing server data into the store\n\t\tvar serverDataElmt = document.getElementById('serverData');\n\t\tif (serverDataElmt !== null) {\n\t\t\tthis.$store.commit('setServerData', JSON.parse(document.getElementById('serverData').dataset.server));\n\t\t}\n\t}\n});\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vc3JjL0FwcC52dWU/ZWE5OSJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUtBO09BRUE7cUNBQ0E7QUFDQTsrQ0FDQTsrQkFDQTtnR0FDQTtBQUNBO0FBQ0E7QUFSQSIsImZpbGUiOiI3LmpzIiwic291cmNlc0NvbnRlbnQiOlsiPHRlbXBsYXRlPlxuXHQ8cm91dGVyLXZpZXc+PC9yb3V0ZXItdmlldz5cbjwvdGVtcGxhdGU+XG5cbjxzY3JpcHQ+XG5leHBvcnQgZGVmYXVsdCB7XG5cdG5hbWU6ICdBcHAnLFxuXHRiZWZvcmVNb3VudDogZnVuY3Rpb24oKSB7XG5cdFx0Ly8gaW1wb3J0aW5nIHNlcnZlciBkYXRhIGludG8gdGhlIHN0b3JlXG5cdFx0Y29uc3Qgc2VydmVyRGF0YUVsbXQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnc2VydmVyRGF0YScpO1xuXHRcdGlmIChzZXJ2ZXJEYXRhRWxtdCAhPT0gbnVsbCkge1xuXHRcdFx0dGhpcy4kc3RvcmUuY29tbWl0KCdzZXRTZXJ2ZXJEYXRhJywgSlNPTi5wYXJzZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnc2VydmVyRGF0YScpLmRhdGFzZXQuc2VydmVyKSk7XG5cdFx0fVxuXHR9XG59XG48L3NjcmlwdD5cblxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyBzcmMvQXBwLnZ1ZSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///7\n"); +eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_axios__ = __webpack_require__(45);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_axios___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_axios__);\n\n\nvar requestToken = document.getElementsByTagName('head')[0].getAttribute('data-requesttoken');\nvar tokenHeaders = { headers: { requesttoken: requestToken } };\n\nvar sanitize = function sanitize(url) {\n\treturn url.replace(/\\/$/, ''); // Remove last url slash\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\n\t/**\n * This Promise is used to chain a request that require an admin password confirmation\n * Since chaining Promise have a very precise behavior concerning catch and then,\n * you'll need to be careful when using it.\n * e.g\n * // store\n * \taction(context) {\n *\t\treturn api.requireAdmin().then((response) => {\n *\t\t\treturn api.get('url')\n *\t\t\t\t.then((response) => {API success})\n *\t\t\t\t.catch((error) => {API failure});\n *\t\t}).catch((error) => {requireAdmin failure});\n *\t}\n * // vue\n *\tthis.$store.dispatch('action').then(() => {always executed})\n *\n * Since Promise.then().catch().then() will always execute the last then\n * this.$store.dispatch('action').then will always be executed\n * \n * If you want requireAdmin failure to also catch the API request failure\n * you will need to throw a new error in the api.get.catch()\n * \n * e.g\n *\tapi.requireAdmin().then((response) => {\n *\t\tapi.get('url')\n *\t\t\t.then((response) => {API success})\n *\t\t\t.catch((error) => {throw error;});\n *\t}).catch((error) => {requireAdmin OR API failure});\n * \n * @returns {Promise}\n */\n\trequireAdmin: function requireAdmin() {\n\t\treturn new Promise(function (resolve, reject) {\n\t\t\t// TODO: migrate the OC.dialog to Vue and avoid this mess\n\t\t\t// wait for password confirmation\n\t\t\tvar passwordTimeout = void 0;\n\t\t\tvar waitForpassword = function waitForpassword() {\n\t\t\t\tif (OC.PasswordConfirmation.requiresPasswordConfirmation()) {\n\t\t\t\t\tpasswordTimeout = setTimeout(waitForpassword, 500);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tclearTimeout(passwordTimeout);\n\t\t\t\tclearTimeout(promiseTimeout);\n\t\t\t\tresolve();\n\t\t\t};\n\n\t\t\t// automatically reject after 5s if not resolved\n\t\t\tvar promiseTimeout = setTimeout(function () {\n\t\t\t\tclearTimeout(passwordTimeout);\n\t\t\t\t// close dialog\n\t\t\t\tif (document.getElementsByClassName('oc-dialog-close').length > 0) {\n\t\t\t\t\tdocument.getElementsByClassName('oc-dialog-close')[0].click();\n\t\t\t\t}\n\t\t\t\tOC.Notification.showTemporary(t('settings', 'You did not enter the password in time'));\n\t\t\t\treject('Password request cancelled');\n\t\t\t}, 7000);\n\n\t\t\t// request password\n\t\t\tOC.PasswordConfirmation.requirePasswordConfirmation();\n\t\t\twaitForpassword();\n\t\t});\n\t},\n\tget: function get(url) {\n\t\treturn __WEBPACK_IMPORTED_MODULE_0_axios___default.a.get(sanitize(url), tokenHeaders).then(function (response) {\n\t\t\treturn Promise.resolve(response);\n\t\t}).catch(function (error) {\n\t\t\treturn Promise.reject(error);\n\t\t});\n\t},\n\tpost: function post(url, data) {\n\t\treturn __WEBPACK_IMPORTED_MODULE_0_axios___default.a.post(sanitize(url), data, tokenHeaders).then(function (response) {\n\t\t\treturn Promise.resolve(response);\n\t\t}).catch(function (error) {\n\t\t\treturn Promise.reject(error);\n\t\t});\n\t},\n\tpatch: function patch(url, data) {\n\t\treturn __WEBPACK_IMPORTED_MODULE_0_axios___default.a.patch(sanitize(url), data, tokenHeaders).then(function (response) {\n\t\t\treturn Promise.resolve(response);\n\t\t}).catch(function (error) {\n\t\t\treturn Promise.reject(error);\n\t\t});\n\t},\n\tput: function put(url, data) {\n\t\treturn __WEBPACK_IMPORTED_MODULE_0_axios___default.a.put(sanitize(url), data, tokenHeaders).then(function (response) {\n\t\t\treturn Promise.resolve(response);\n\t\t}).catch(function (error) {\n\t\t\treturn Promise.reject(error);\n\t\t});\n\t},\n\tdelete: function _delete(url, data) {\n\t\treturn __WEBPACK_IMPORTED_MODULE_0_axios___default.a.delete(sanitize(url), { data: data, headers: tokenHeaders.headers }).then(function (response) {\n\t\t\treturn Promise.resolve(response);\n\t\t}).catch(function (error) {\n\t\t\treturn Promise.reject(error);\n\t\t});\n\t}\n});\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvc3RvcmUvYXBpLmpzP2JkOTMiXSwibmFtZXMiOlsicmVxdWVzdFRva2VuIiwiZG9jdW1lbnQiLCJnZXRFbGVtZW50c0J5VGFnTmFtZSIsImdldEF0dHJpYnV0ZSIsInRva2VuSGVhZGVycyIsImhlYWRlcnMiLCJyZXF1ZXN0dG9rZW4iLCJzYW5pdGl6ZSIsInVybCIsInJlcGxhY2UiLCJyZXF1aXJlQWRtaW4iLCJQcm9taXNlIiwicmVzb2x2ZSIsInJlamVjdCIsInBhc3N3b3JkVGltZW91dCIsIndhaXRGb3JwYXNzd29yZCIsIk9DIiwiUGFzc3dvcmRDb25maXJtYXRpb24iLCJyZXF1aXJlc1Bhc3N3b3JkQ29uZmlybWF0aW9uIiwic2V0VGltZW91dCIsImNsZWFyVGltZW91dCIsInByb21pc2VUaW1lb3V0IiwiZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSIsImxlbmd0aCIsImNsaWNrIiwiTm90aWZpY2F0aW9uIiwic2hvd1RlbXBvcmFyeSIsInQiLCJyZXF1aXJlUGFzc3dvcmRDb25maXJtYXRpb24iLCJnZXQiLCJheGlvcyIsInRoZW4iLCJyZXNwb25zZSIsImNhdGNoIiwiZXJyb3IiLCJwb3N0IiwiZGF0YSIsInBhdGNoIiwicHV0IiwiZGVsZXRlIl0sIm1hcHBpbmdzIjoiOztBQUFBOztBQUVBLElBQU1BLGVBQWVDLFNBQVNDLG9CQUFULENBQThCLE1BQTlCLEVBQXNDLENBQXRDLEVBQXlDQyxZQUF6QyxDQUFzRCxtQkFBdEQsQ0FBckI7QUFDQSxJQUFNQyxlQUFlLEVBQUVDLFNBQVMsRUFBRUMsY0FBY04sWUFBaEIsRUFBWCxFQUFyQjs7QUFFQSxJQUFNTyxXQUFXLFNBQVhBLFFBQVcsQ0FBU0MsR0FBVCxFQUFjO0FBQzlCLFFBQU9BLElBQUlDLE9BQUosQ0FBWSxLQUFaLEVBQW1CLEVBQW5CLENBQVAsQ0FEOEIsQ0FDQztBQUMvQixDQUZEOztBQUlBLHlEQUFlOztBQUVkOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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Q0FBZXFCLEtBQWYsQ0FBWDtBQUFBLEdBRkQsQ0FBUDtBQUdBLEVBbkZhO0FBb0ZkSyxPQXBGYyxtQkFvRlAvQixHQXBGTyxFQW9GRjRCLElBcEZFLEVBb0ZJO0FBQ2pCLFNBQU8sNkNBQUFOLENBQU1TLE1BQU4sQ0FBYWhDLFNBQVNDLEdBQVQsQ0FBYixFQUE0QixFQUFFNEIsTUFBTUEsSUFBUixFQUFjL0IsU0FBU0QsYUFBYUMsT0FBcEMsRUFBNUIsRUFDTDBCLElBREssQ0FDQSxVQUFDQyxRQUFEO0FBQUEsVUFBY3JCLFFBQVFDLE9BQVIsQ0FBZ0JvQixRQUFoQixDQUFkO0FBQUEsR0FEQSxFQUVMQyxLQUZLLENBRUMsVUFBQ0MsS0FBRDtBQUFBLFVBQVd2QixRQUFRRSxNQUFSLENBQWVxQixLQUFmLENBQVg7QUFBQSxHQUZELENBQVA7QUFHQTtBQXhGYSxDQUFmIiwiZmlsZSI6IjYuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgYXhpb3MgZnJvbSAnYXhpb3MnO1xuXG5jb25zdCByZXF1ZXN0VG9rZW4gPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnaGVhZCcpWzBdLmdldEF0dHJpYnV0ZSgnZGF0YS1yZXF1ZXN0dG9rZW4nKTtcbmNvbnN0IHRva2VuSGVhZGVycyA9IHsgaGVhZGVyczogeyByZXF1ZXN0dG9rZW46IHJlcXVlc3RUb2tlbiB9IH07XG5cbmNvbnN0IHNhbml0aXplID0gZnVuY3Rpb24odXJsKSB7XG5cdHJldHVybiB1cmwucmVwbGFjZSgvXFwvJC8sICcnKTsgLy8gUmVtb3ZlIGxhc3QgdXJsIHNsYXNoXG59O1xuXG5leHBvcnQgZGVmYXVsdCB7XG5cblx0LyoqXG5cdCAqIFRoaXMgUHJvbWlzZSBpcyB1c2VkIHRvIGNoYWluIGEgcmVxdWVzdCB0aGF0IHJlcXVpcmUgYW4gYWRtaW4gcGFzc3dvcmQgY29uZmlybWF0aW9uXG5cdCAqIFNpbmNlIGNoYWluaW5nIFByb21pc2UgaGF2ZSBhIHZlcnkgcHJlY2lzZSBiZWhhdmlvciBjb25jZXJuaW5nIGNhdGNoIGFuZCB0aGVuLFxuXHQgKiB5b3UnbGwgbmVlZCB0byBiZSBjYXJlZnVsIHdoZW4gdXNpbmcgaXQuXG5cdCAqIGUuZ1xuXHQgKiAvLyBzdG9yZVxuXHQgKiBcdGFjdGlvbihjb250ZXh0KSB7XG5cdCAqXHRcdHJldHVybiBhcGkucmVxdWlyZUFkbWluKCkudGhlbigocmVzcG9uc2UpID0+IHtcblx0ICpcdFx0XHRyZXR1cm4gYXBpLmdldCgndXJsJylcblx0ICpcdFx0XHRcdC50aGVuKChyZXNwb25zZSkgPT4ge0FQSSBzdWNjZXNzfSlcblx0ICpcdFx0XHRcdC5jYXRjaCgoZXJyb3IpID0+IHtBUEkgZmFpbHVyZX0pO1xuXHQgKlx0XHR9KS5jYXRjaCgoZXJyb3IpID0+IHtyZXF1aXJlQWRtaW4gZmFpbHVyZX0pO1xuXHQgKlx0fVxuXHQgKiAvLyB2dWVcblx0ICpcdHRoaXMuJHN0b3JlLmRpc3BhdGNoKCdhY3Rpb24nKS50aGVuKCgpID0+IHthbHdheXMgZXhlY3V0ZWR9KVxuXHQgKlxuXHQgKiBTaW5jZSBQcm9taXNlLnRoZW4oKS5jYXRjaCgpLnRoZW4oKSB3aWxsIGFsd2F5cyBleGVjdXRlIHRoZSBsYXN0IHRoZW5cblx0ICogdGhpcy4kc3RvcmUuZGlzcGF0Y2goJ2FjdGlvbicpLnRoZW4gd2lsbCBhbHdheXMgYmUgZXhlY3V0ZWRcblx0ICogXG5cdCAqIElmIHlvdSB3YW50IHJlcXVpcmVBZG1pbiBmYWlsdXJlIHRvIGFsc28gY2F0Y2ggdGhlIEFQSSByZXF1ZXN0IGZhaWx1cmVcblx0ICogeW91IHdpbGwgbmVlZCB0byB0aHJvdyBhIG5ldyBlcnJvciBpbiB0aGUgYXBpLmdldC5jYXRjaCgpXG5cdCAqIFxuXHQgKiBlLmdcblx0ICpcdGFwaS5yZXF1aXJlQWRtaW4oKS50aGVuKChyZXNwb25zZSkgPT4ge1xuXHQgKlx0XHRhcGkuZ2V0KCd1cmwnKVxuXHQgKlx0XHRcdC50aGVuKChyZXNwb25zZSkgPT4ge0FQSSBzdWNjZXNzfSlcblx0ICpcdFx0XHQuY2F0Y2goKGVycm9yKSA9PiB7dGhyb3cgZXJyb3I7fSk7XG5cdCAqXHR9KS5jYXRjaCgoZXJyb3IpID0+IHtyZXF1aXJlQWRtaW4gT1IgQVBJIGZhaWx1cmV9KTtcblx0ICogXG5cdCAqIEByZXR1cm5zIHtQcm9taXNlfVxuXHQgKi9cblx0cmVxdWlyZUFkbWluKCkge1xuXHRcdHJldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbihyZXNvbHZlLCByZWplY3QpIHtcblx0XHRcdC8vIFRPRE86IG1pZ3JhdGUgdGhlIE9DLmRpYWxvZyB0byBWdWUgYW5kIGF2b2lkIHRoaXMgbWVzc1xuXHRcdFx0Ly8gd2FpdCBmb3IgcGFzc3dvcmQgY29uZmlybWF0aW9uXG5cdFx0XHRsZXQgcGFzc3dvcmRUaW1lb3V0O1xuXHRcdFx0bGV0IHdhaXRGb3JwYXNzd29yZCA9IGZ1bmN0aW9uKCkge1xuXHRcdFx0XHRpZiAoT0MuUGFzc3dvcmRDb25maXJtYXRpb24ucmVxdWlyZXNQYXNzd29yZENvbmZpcm1hdGlvbigpKSB7XG5cdFx0XHRcdFx0cGFzc3dvcmRUaW1lb3V0ID0gc2V0VGltZW91dCh3YWl0Rm9ycGFzc3dvcmQsIDUwMCk7XG5cdFx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0XHR9XG5cdFx0XHRcdGNsZWFyVGltZW91dChwYXNzd29yZFRpbWVvdXQpO1xuXHRcdFx0XHRjbGVhclRpbWVvdXQocHJvbWlzZVRpbWVvdXQpO1xuXHRcdFx0XHRyZXNvbHZlKCk7XG5cdFx0XHR9O1xuXG5cdFx0XHQvLyBhdXRvbWF0aWNhbGx5IHJlamVjdCBhZnRlciA1cyBpZiBub3QgcmVzb2x2ZWRcblx0XHRcdGxldCBwcm9taXNlVGltZW91dCA9IHNldFRpbWVvdXQoKCkgPT4ge1xuXHRcdFx0XHRjbGVhclRpbWVvdXQocGFzc3dvcmRUaW1lb3V0KTtcblx0XHRcdFx0Ly8gY2xvc2UgZGlhbG9nXG5cdFx0XHRcdGlmIChkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCdvYy1kaWFsb2ctY2xvc2UnKS5sZW5ndGg+MCkge1xuXHRcdFx0XHRcdGRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoJ29jLWRpYWxvZy1jbG9zZScpWzBdLmNsaWNrKCk7XG5cdFx0XHRcdH1cblx0XHRcdFx0T0MuTm90aWZpY2F0aW9uLnNob3dUZW1wb3JhcnkodCgnc2V0dGluZ3MnLCAnWW91IGRpZCBub3QgZW50ZXIgdGhlIHBhc3N3b3JkIGluIHRpbWUnKSk7XG5cdFx0XHRcdHJlamVjdCgnUGFzc3dvcmQgcmVxdWVzdCBjYW5jZWxsZWQnKTtcblx0XHRcdH0sIDcwMDApOyBcblxuXHRcdFx0Ly8gcmVxdWVzdCBwYXNzd29yZFxuXHRcdFx0T0MuUGFzc3dvcmRDb25maXJtYXRpb24ucmVxdWlyZVBhc3N3b3JkQ29uZmlybWF0aW9uKCk7XG5cdFx0XHR3YWl0Rm9ycGFzc3dvcmQoKTtcblx0XHR9KTtcblx0fSxcblx0Z2V0KHVybCkge1xuXHRcdHJldHVybiBheGlvcy5nZXQoc2FuaXRpemUodXJsKSwgdG9rZW5IZWFkZXJzKVxuXHRcdFx0LnRoZW4oKHJlc3BvbnNlKSA9PiBQcm9taXNlLnJlc29sdmUocmVzcG9uc2UpKVxuXHRcdFx0LmNhdGNoKChlcnJvcikgPT4gUHJvbWlzZS5yZWplY3QoZXJyb3IpKTtcblx0fSxcblx0cG9zdCh1cmwsIGRhdGEpIHtcblx0XHRyZXR1cm4gYXhpb3MucG9zdChzYW5pdGl6ZSh1cmwpLCBkYXRhLCB0b2tlbkhlYWRlcnMpXG5cdFx0XHQudGhlbigocmVzcG9uc2UpID0+IFByb21pc2UucmVzb2x2ZShyZXNwb25zZSkpXG5cdFx0XHQuY2F0Y2goKGVycm9yKSA9PiBQcm9taXNlLnJlamVjdChlcnJvcikpO1xuXHR9LFxuXHRwYXRjaCh1cmwsIGRhdGEpIHtcblx0XHRyZXR1cm4gYXhpb3MucGF0Y2goc2FuaXRpemUodXJsKSwgZGF0YSwgdG9rZW5IZWFkZXJzKVxuXHRcdFx0LnRoZW4oKHJlc3BvbnNlKSA9PiBQcm9taXNlLnJlc29sdmUocmVzcG9uc2UpKVxuXHRcdFx0LmNhdGNoKChlcnJvcikgPT4gUHJvbWlzZS5yZWplY3QoZXJyb3IpKTtcblx0fSxcblx0cHV0KHVybCwgZGF0YSkge1xuXHRcdHJldHVybiBheGlvcy5wdXQoc2FuaXRpemUodXJsKSwgZGF0YSwgdG9rZW5IZWFkZXJzKVxuXHRcdFx0LnRoZW4oKHJlc3BvbnNlKSA9PiBQcm9taXNlLnJlc29sdmUocmVzcG9uc2UpKVxuXHRcdFx0LmNhdGNoKChlcnJvcikgPT4gUHJvbWlzZS5yZWplY3QoZXJyb3IpKTtcblx0fSxcblx0ZGVsZXRlKHVybCwgZGF0YSkge1xuXHRcdHJldHVybiBheGlvcy5kZWxldGUoc2FuaXRpemUodXJsKSwgeyBkYXRhOiBkYXRhLCBoZWFkZXJzOiB0b2tlbkhlYWRlcnMuaGVhZGVycyB9KVxuXHRcdFx0LnRoZW4oKHJlc3BvbnNlKSA9PiBQcm9taXNlLnJlc29sdmUocmVzcG9uc2UpKVxuXHRcdFx0LmNhdGNoKChlcnJvcikgPT4gUHJvbWlzZS5yZWplY3QoZXJyb3IpKTtcblx0fVxufTtcblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gLi9zcmMvc3RvcmUvYXBpLmpzIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///6\n"); + +/***/ }), +/* 7 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; +eval("/* WEBPACK VAR INJECTION */(function(process) {\n\nvar utils = __webpack_require__(0);\nvar normalizeHeaderName = __webpack_require__(49);\n\nvar DEFAULT_CONTENT_TYPE = {\n 'Content-Type': 'application/x-www-form-urlencoded'\n};\n\nfunction setContentTypeIfUnset(headers, value) {\n if (!utils.isUndefined(headers) && utils.isUndefined(headers['Content-Type'])) {\n headers['Content-Type'] = value;\n }\n}\n\nfunction getDefaultAdapter() {\n var adapter;\n if (typeof XMLHttpRequest !== 'undefined') {\n // For browsers use XHR adapter\n adapter = __webpack_require__(19);\n } else if (typeof process !== 'undefined') {\n // For node use HTTP adapter\n adapter = __webpack_require__(19);\n }\n return adapter;\n}\n\nvar defaults = {\n adapter: getDefaultAdapter(),\n\n transformRequest: [function transformRequest(data, headers) {\n normalizeHeaderName(headers, 'Content-Type');\n if (utils.isFormData(data) ||\n utils.isArrayBuffer(data) ||\n utils.isBuffer(data) ||\n utils.isStream(data) ||\n utils.isFile(data) ||\n utils.isBlob(data)\n ) {\n return data;\n }\n if (utils.isArrayBufferView(data)) {\n return data.buffer;\n }\n if (utils.isURLSearchParams(data)) {\n setContentTypeIfUnset(headers, 'application/x-www-form-urlencoded;charset=utf-8');\n return data.toString();\n }\n if (utils.isObject(data)) {\n setContentTypeIfUnset(headers, 'application/json;charset=utf-8');\n return JSON.stringify(data);\n }\n return data;\n }],\n\n transformResponse: [function transformResponse(data) {\n /*eslint no-param-reassign:0*/\n if (typeof data === 'string') {\n try {\n data = JSON.parse(data);\n } catch (e) { /* Ignore */ }\n }\n return data;\n }],\n\n /**\n * A timeout in milliseconds to abort a request. If set to 0 (default) a\n * timeout is not created.\n */\n timeout: 0,\n\n xsrfCookieName: 'XSRF-TOKEN',\n xsrfHeaderName: 'X-XSRF-TOKEN',\n\n maxContentLength: -1,\n\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n }\n};\n\ndefaults.headers = {\n common: {\n 'Accept': 'application/json, text/plain, */*'\n }\n};\n\nutils.forEach(['delete', 'get', 'head'], function forEachMethodNoData(method) {\n defaults.headers[method] = {};\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n defaults.headers[method] = utils.merge(DEFAULT_CONTENT_TYPE);\n});\n\nmodule.exports = defaults;\n\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(1)))\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2RlZmF1bHRzLmpzPzI4MjIiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IitDQUFBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0VBQXdFO0FBQ3hFO0FBQ0E7QUFDQTtBQUNBLHVEQUF1RDtBQUN2RDtBQUNBO0FBQ0E7QUFDQSxHQUFHOztBQUVIO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPLFlBQVk7QUFDbkI7QUFDQTtBQUNBLEdBQUc7O0FBRUg7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBLENBQUM7O0FBRUQiLCJmaWxlIjoiNy5qcyIsInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxudmFyIHV0aWxzID0gcmVxdWlyZSgnLi91dGlscycpO1xudmFyIG5vcm1hbGl6ZUhlYWRlck5hbWUgPSByZXF1aXJlKCcuL2hlbHBlcnMvbm9ybWFsaXplSGVhZGVyTmFtZScpO1xuXG52YXIgREVGQVVMVF9DT05URU5UX1RZUEUgPSB7XG4gICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkJ1xufTtcblxuZnVuY3Rpb24gc2V0Q29udGVudFR5cGVJZlVuc2V0KGhlYWRlcnMsIHZhbHVlKSB7XG4gIGlmICghdXRpbHMuaXNVbmRlZmluZWQoaGVhZGVycykgJiYgdXRpbHMuaXNVbmRlZmluZWQoaGVhZGVyc1snQ29udGVudC1UeXBlJ10pKSB7XG4gICAgaGVhZGVyc1snQ29udGVudC1UeXBlJ10gPSB2YWx1ZTtcbiAgfVxufVxuXG5mdW5jdGlvbiBnZXREZWZhdWx0QWRhcHRlcigpIHtcbiAgdmFyIGFkYXB0ZXI7XG4gIGlmICh0eXBlb2YgWE1MSHR0cFJlcXVlc3QgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgLy8gRm9yIGJyb3dzZXJzIHVzZSBYSFIgYWRhcHRlclxuICAgIGFkYXB0ZXIgPSByZXF1aXJlKCcuL2FkYXB0ZXJzL3hocicpO1xuICB9IGVsc2UgaWYgKHR5cGVvZiBwcm9jZXNzICE9PSAndW5kZWZpbmVkJykge1xuICAgIC8vIEZvciBub2RlIHVzZSBIVFRQIGFkYXB0ZXJcbiAgICBhZGFwdGVyID0gcmVxdWlyZSgnLi9hZGFwdGVycy9odHRwJyk7XG4gIH1cbiAgcmV0dXJuIGFkYXB0ZXI7XG59XG5cbnZhciBkZWZhdWx0cyA9IHtcbiAgYWRhcHRlcjogZ2V0RGVmYXVsdEFkYXB0ZXIoKSxcblxuICB0cmFuc2Zvcm1SZXF1ZXN0OiBbZnVuY3Rpb24gdHJhbnNmb3JtUmVxdWVzdChkYXRhLCBoZWFkZXJzKSB7XG4gICAgbm9ybWFsaXplSGVhZGVyTmFtZShoZWFkZXJzLCAnQ29udGVudC1UeXBlJyk7XG4gICAgaWYgKHV0aWxzLmlzRm9ybURhdGEoZGF0YSkgfHxcbiAgICAgIHV0aWxzLmlzQXJyYXlCdWZmZXIoZGF0YSkgfHxcbiAgICAgIHV0aWxzLmlzQnVmZmVyKGRhdGEpIHx8XG4gICAgICB1dGlscy5pc1N0cmVhbShkYXRhKSB8fFxuICAgICAgdXRpbHMuaXNGaWxlKGRhdGEpIHx8XG4gICAgICB1dGlscy5pc0Jsb2IoZGF0YSlcbiAgICApIHtcbiAgICAgIHJldHVybiBkYXRhO1xuICAgIH1cbiAgICBpZiAodXRpbHMuaXNBcnJheUJ1ZmZlclZpZXcoZGF0YSkpIHtcbiAgICAgIHJldHVybiBkYXRhLmJ1ZmZlcjtcbiAgICB9XG4gICAgaWYgKHV0aWxzLmlzVVJMU2VhcmNoUGFyYW1zKGRhdGEpKSB7XG4gICAgICBzZXRDb250ZW50VHlwZUlmVW5zZXQoaGVhZGVycywgJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZDtjaGFyc2V0PXV0Zi04Jyk7XG4gICAgICByZXR1cm4gZGF0YS50b1N0cmluZygpO1xuICAgIH1cbiAgICBpZiAodXRpbHMuaXNPYmplY3QoZGF0YSkpIHtcbiAgICAgIHNldENvbnRlbnRUeXBlSWZVbnNldChoZWFkZXJzLCAnYXBwbGljYXRpb24vanNvbjtjaGFyc2V0PXV0Zi04Jyk7XG4gICAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkoZGF0YSk7XG4gICAgfVxuICAgIHJldHVybiBkYXRhO1xuICB9XSxcblxuICB0cmFuc2Zvcm1SZXNwb25zZTogW2Z1bmN0aW9uIHRyYW5zZm9ybVJlc3BvbnNlKGRhdGEpIHtcbiAgICAvKmVzbGludCBuby1wYXJhbS1yZWFzc2lnbjowKi9cbiAgICBpZiAodHlwZW9mIGRhdGEgPT09ICdzdHJpbmcnKSB7XG4gICAgICB0cnkge1xuICAgICAgICBkYXRhID0gSlNPTi5wYXJzZShkYXRhKTtcbiAgICAgIH0gY2F0Y2ggKGUpIHsgLyogSWdub3JlICovIH1cbiAgICB9XG4gICAgcmV0dXJuIGRhdGE7XG4gIH1dLFxuXG4gIC8qKlxuICAgKiBBIHRpbWVvdXQgaW4gbWlsbGlzZWNvbmRzIHRvIGFib3J0IGEgcmVxdWVzdC4gSWYgc2V0IHRvIDAgKGRlZmF1bHQpIGFcbiAgICogdGltZW91dCBpcyBub3QgY3JlYXRlZC5cbiAgICovXG4gIHRpbWVvdXQ6IDAsXG5cbiAgeHNyZkNvb2tpZU5hbWU6ICdYU1JGLVRPS0VOJyxcbiAgeHNyZkhlYWRlck5hbWU6ICdYLVhTUkYtVE9LRU4nLFxuXG4gIG1heENvbnRlbnRMZW5ndGg6IC0xLFxuXG4gIHZhbGlkYXRlU3RhdHVzOiBmdW5jdGlvbiB2YWxpZGF0ZVN0YXR1cyhzdGF0dXMpIHtcbiAgICByZXR1cm4gc3RhdHVzID49IDIwMCAmJiBzdGF0dXMgPCAzMDA7XG4gIH1cbn07XG5cbmRlZmF1bHRzLmhlYWRlcnMgPSB7XG4gIGNvbW1vbjoge1xuICAgICdBY2NlcHQnOiAnYXBwbGljYXRpb24vanNvbiwgdGV4dC9wbGFpbiwgKi8qJ1xuICB9XG59O1xuXG51dGlscy5mb3JFYWNoKFsnZGVsZXRlJywgJ2dldCcsICdoZWFkJ10sIGZ1bmN0aW9uIGZvckVhY2hNZXRob2ROb0RhdGEobWV0aG9kKSB7XG4gIGRlZmF1bHRzLmhlYWRlcnNbbWV0aG9kXSA9IHt9O1xufSk7XG5cbnV0aWxzLmZvckVhY2goWydwb3N0JywgJ3B1dCcsICdwYXRjaCddLCBmdW5jdGlvbiBmb3JFYWNoTWV0aG9kV2l0aERhdGEobWV0aG9kKSB7XG4gIGRlZmF1bHRzLmhlYWRlcnNbbWV0aG9kXSA9IHV0aWxzLm1lcmdlKERFRkFVTFRfQ09OVEVOVF9UWVBFKTtcbn0pO1xuXG5tb2R1bGUuZXhwb3J0cyA9IGRlZmF1bHRzO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2RlZmF1bHRzLmpzXG4vLyBtb2R1bGUgaWQgPSA3XG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///7\n"); /***/ }), /* 8 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__components_appNavigation__ = __webpack_require__(32);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_userList__ = __webpack_require__(39);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_vue__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_vue_localstorage__ = __webpack_require__(44);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_vue_localstorage___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_vue_localstorage__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_vue_multiselect__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_vue_multiselect___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_vue_multiselect__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__store_api__ = __webpack_require__(17);\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n\n\n\n\n\n\n\n__WEBPACK_IMPORTED_MODULE_2_vue__[\"a\" /* default */].use(__WEBPACK_IMPORTED_MODULE_3_vue_localstorage___default.a);\n__WEBPACK_IMPORTED_MODULE_2_vue__[\"a\" /* default */].use(__WEBPACK_IMPORTED_MODULE_3_vue_localstorage___default.a);\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tname: 'Users',\n\tprops: ['selectedGroup'],\n\tcomponents: {\n\t\tappNavigation: __WEBPACK_IMPORTED_MODULE_0__components_appNavigation__[\"a\" /* default */],\n\t\tuserList: __WEBPACK_IMPORTED_MODULE_1__components_userList__[\"a\" /* default */],\n\t\tMultiselect: __WEBPACK_IMPORTED_MODULE_4_vue_multiselect___default.a\n\t},\n\tbeforeMount: function beforeMount() {\n\t\tthis.$store.commit('initGroups', {\n\t\t\tgroups: this.$store.getters.getServerData.groups,\n\t\t\torderBy: this.$store.getters.getServerData.sortGroups,\n\t\t\tuserCount: this.$store.getters.getServerData.userCount\n\t\t});\n\t\tthis.$store.dispatch('getPasswordPolicyMinLength');\n\t},\n\tdata: function data() {\n\t\treturn {\n\t\t\t// default quota is unlimited\n\t\t\tunlimitedQuota: { id: 'default', label: t('settings', 'Unlimited') },\n\t\t\tshowConfig: {\n\t\t\t\tshowStoragePath: false,\n\t\t\t\tshowUserBackend: false,\n\t\t\t\tshowLastLogin: false,\n\t\t\t\tshowNewUserForm: false,\n\t\t\t\tshowLanguages: false\n\t\t\t}\n\t\t};\n\t},\n\n\tmethods: {\n\t\tgetLocalstorage: function getLocalstorage(key) {\n\t\t\t// force initialization\n\t\t\tthis.showConfig[key] = this.$localStorage.get(key) === 'true';\n\t\t\treturn this.showConfig[key];\n\t\t},\n\t\tsetLocalStorage: function setLocalStorage(key, status) {\n\t\t\tthis.showConfig[key] = status;\n\t\t\tthis.$localStorage.set(key, status);\n\t\t\treturn status;\n\t\t},\n\t\tremoveGroup: function removeGroup(groupid) {\n\t\t\tvar self = this;\n\t\t\t// TODO migrate to a vue js confirm dialog component \n\t\t\tOC.dialogs.confirm(t('settings', 'You are about to remove the group {group}. The users will NOT be deleted.', { group: groupid }), t('settings', 'Please confirm the group removal '), function (success) {\n\t\t\t\tif (success) {\n\t\t\t\t\tself.$store.dispatch('removeGroup', groupid);\n\t\t\t\t}\n\t\t\t});\n\t\t},\n\n\n\t\t/**\n * Dispatch default quota set request\n * \n * @param {string|Object} quota Quota in readable format '5 GB' or Object {id: '5 GB', label: '5GB'}\n * @returns {string}\n */\n\t\tsetDefaultQuota: function setDefaultQuota() {\n\t\t\tvar quota = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'none';\n\n\t\t\t// ensure we only send the preset id\n\t\t\tquota = quota.id ? quota.id : quota;\n\t\t\t__WEBPACK_IMPORTED_MODULE_5__store_api__[\"a\" /* default */].setAppConfig('files', 'default_quota', quota);\n\t\t},\n\n\n\t\t/**\n * Validate quota string to make sure it's a valid human file size\n * \n * @param {string} quota Quota in readable format '5 GB'\n * @returns {Promise|boolean}\n */\n\t\tvalidateQuota: function validateQuota(quota) {\n\t\t\t// only used for new presets sent through @Tag\n\t\t\tvar validQuota = OC.Util.computerFileSize(quota);\n\t\t\tif (validQuota === 0) {\n\t\t\t\treturn this.setDefaultQuota('none');\n\t\t\t} else if (validQuota !== null) {\n\t\t\t\t// unify format output\n\t\t\t\treturn this.setDefaultQuota(OC.Util.humanFileSize(OC.Util.computerFileSize(quota)));\n\t\t\t}\n\t\t\t// if no valid do not change\n\t\t\treturn false;\n\t\t}\n\t},\n\tcomputed: {\n\t\tusers: function users() {\n\t\t\treturn this.$store.getters.getUsers;\n\t\t},\n\t\tloading: function loading() {\n\t\t\treturn Object.keys(this.users).length === 0;\n\t\t},\n\t\tusersOffset: function usersOffset() {\n\t\t\treturn this.$store.getters.getUsersOffset;\n\t\t},\n\t\tusersLimit: function usersLimit() {\n\t\t\treturn this.$store.getters.getUsersLimit;\n\t\t},\n\n\n\t\t// Local settings\n\t\tshowLanguages: {\n\t\t\tget: function get() {\n\t\t\t\treturn this.getLocalstorage('showLanguages');\n\t\t\t},\n\t\t\tset: function set(status) {\n\t\t\t\tthis.setLocalStorage('showLanguages', status);\n\t\t\t}\n\t\t},\n\t\tshowLastLogin: {\n\t\t\tget: function get() {\n\t\t\t\treturn this.getLocalstorage('showLastLogin');\n\t\t\t},\n\t\t\tset: function set(status) {\n\t\t\t\tthis.setLocalStorage('showLastLogin', status);\n\t\t\t}\n\t\t},\n\t\tshowUserBackend: {\n\t\t\tget: function get() {\n\t\t\t\treturn this.getLocalstorage('showUserBackend');\n\t\t\t},\n\t\t\tset: function set(status) {\n\t\t\t\tthis.setLocalStorage('showUserBackend', status);\n\t\t\t}\n\t\t},\n\t\tshowStoragePath: {\n\t\t\tget: function get() {\n\t\t\t\treturn this.getLocalstorage('showStoragePath');\n\t\t\t},\n\t\t\tset: function set(status) {\n\t\t\t\tthis.setLocalStorage('showStoragePath', status);\n\t\t\t}\n\t\t},\n\n\t\tuserCount: function userCount() {\n\t\t\treturn this.$store.getters.getUserCount;\n\t\t},\n\t\tsettings: function settings() {\n\t\t\treturn this.$store.getters.getServerData;\n\t\t},\n\n\n\t\t// default quota\n\t\tquotaOptions: function quotaOptions() {\n\t\t\t// convert the preset array into objects\n\t\t\tvar quotaPreset = this.settings.quotaPreset.reduce(function (acc, cur) {\n\t\t\t\treturn acc.concat({ id: cur, label: cur });\n\t\t\t}, []);\n\t\t\t// add default presets\n\t\t\tquotaPreset.unshift(this.unlimitedQuota);\n\t\t\treturn quotaPreset;\n\t\t},\n\n\t\t// mapping saved values to objects\n\t\tdefaultQuota: function defaultQuota() {\n\t\t\tif (OC.Util.computerFileSize(this.settings.defaultQuota) > 0) {\n\t\t\t\t// if value is valid, let's map the quotaOptions or return custom quota\n\t\t\t\treturn { id: this.settings.defaultQuota, label: this.settings.defaultQuota };\n\t\t\t}\n\t\t\treturn this.unlimitedQuota; // unlimited\n\t\t},\n\n\n\t\t// BUILD APP NAVIGATION MENU OBJECT\n\t\tmenu: function menu() {\n\t\t\tvar _this = this;\n\n\t\t\t// Data provided php side\n\t\t\tvar groups = this.$store.getters.getGroups;\n\t\t\tgroups = Array.isArray(groups) ? groups : [];\n\n\t\t\t// Map groups\n\t\t\tgroups = groups.map(function (group) {\n\t\t\t\tvar item = {};\n\t\t\t\titem.id = group.id.replace(' ', '_');\n\t\t\t\titem.classes = []; // empty classes, active will be set later\n\t\t\t\titem.router = { // router link to\n\t\t\t\t\tname: 'group',\n\t\t\t\t\tparams: { selectedGroup: group.id }\n\t\t\t\t};\n\t\t\t\titem.text = group.name; // group name\n\t\t\t\titem.utils = { counter: group.usercount }; // users count\n\n\t\t\t\tif (item.id !== 'admin' && item.id !== 'disabled') {\n\t\t\t\t\t// add delete button on real groups\n\t\t\t\t\tvar self = _this;\n\t\t\t\t\titem.utils.actions = [{\n\t\t\t\t\t\ticon: 'icon-delete',\n\t\t\t\t\t\ttext: t('settings', 'Remove group'),\n\t\t\t\t\t\taction: function action() {\n\t\t\t\t\t\t\tself.removeGroup(item.id);\n\t\t\t\t\t\t}\n\t\t\t\t\t}];\n\t\t\t\t};\n\t\t\t\treturn item;\n\t\t\t});\n\n\t\t\t// Adjust data\n\t\t\tvar adminGroup = groups.find(function (group) {\n\t\t\t\treturn group.id == 'admin';\n\t\t\t});\n\t\t\tvar disabledGroupIndex = groups.findIndex(function (group) {\n\t\t\t\treturn group.id == 'disabled';\n\t\t\t});\n\t\t\tvar disabledGroup = groups[disabledGroupIndex];\n\t\t\tif (adminGroup.text) {\n\t\t\t\tadminGroup.text = t('settings', 'Admins'); // rename admin group\n\t\t\t}\n\t\t\tif (disabledGroup.text) {\n\t\t\t\tdisabledGroup.text = t('settings', 'Disabled users'); // rename disabled group\n\t\t\t\tif (disabledGroup.utils.counter === 0) {\n\t\t\t\t\tgroups.splice(disabledGroupIndex, 1); // remove disabled if empty\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Add everyone group\n\t\t\tgroups.unshift({\n\t\t\t\tid: 'everyone',\n\t\t\t\tclasses: [],\n\t\t\t\trouter: { name: 'users' },\n\t\t\t\ttext: t('settings', 'Everyone'),\n\t\t\t\tutils: { counter: this.userCount }\n\t\t\t});\n\n\t\t\t// Set current group as active\n\t\t\tvar activeGroup = groups.findIndex(function (group) {\n\t\t\t\treturn group.id === _this.selectedGroup;\n\t\t\t});\n\t\t\tif (activeGroup >= 0) {\n\t\t\t\tgroups[activeGroup].classes.push('active');\n\t\t\t} else {\n\t\t\t\tgroups[0].classes.push('active');\n\t\t\t}\n\n\t\t\t// Return\n\t\t\treturn {\n\t\t\t\tid: 'usergrouplist',\n\t\t\t\tnew: {\n\t\t\t\t\tid: 'new-user-button',\n\t\t\t\t\ttext: t('settings', 'New user'),\n\t\t\t\t\ticon: 'icon-add',\n\t\t\t\t\taction: function action() {\n\t\t\t\t\t\treturn _this.showConfig.showNewUserForm = !_this.showConfig.showNewUserForm;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\titems: groups\n\t\t\t};\n\t\t}\n\t}\n});\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vc3JjL3ZpZXdzL1VzZXJzLnZ1ZT8wNzZmIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUF5Q0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7T0FFQTtTQUNBOztBQUVBO0FBQ0E7QUFFQTtBQUpBO3FDQUtBOzs2Q0FFQTs4Q0FDQTtnREFFQTtBQUpBO3VCQUtBO0FBQ0E7dUJBQ0E7O0FBRUE7eURBQ0E7O3FCQUVBO3FCQUNBO21CQUNBO3FCQUNBO21CQUdBO0FBUEE7QUFIQTtBQVdBOzs7aURBRUE7QUFDQTswREFDQTswQkFDQTtBQUNBO3lEQUNBOzBCQUNBOytCQUNBO1VBQ0E7QUFDQTs2Q0FDQTtjQUNBO0FBQ0E7Y0FDQSw0R0FDQSwwQkFDQSx5REFDQTtpQkFDQTt5Q0FDQTtBQUNBO0FBRUE7QUFFQTs7O0FBTUE7Ozs7Ozs7QUFDQTs7QUFDQTtpQ0FDQTtzR0FDQTtBQUVBOzs7QUFNQTs7Ozs7OytDQUNBO0FBQ0E7NkNBQ0E7eUJBQ0E7Z0NBQ0E7bUNBQ0E7QUFDQTsrRUFDQTtBQUNBO0FBQ0E7VUFDQTtBQUVBO0FBdkRBOzswQkF5REE7OEJBQ0E7QUFDQTs4QkFDQTs2Q0FDQTtBQUNBO3NDQUNBOzhCQUNBO0FBQ0E7b0NBQ0E7OEJBQ0E7QUFFQTs7O0FBQ0E7Ozs7QUFFQTs2QkFDQTswQ0FDQTtBQUVBO0FBTEE7Ozs7QUFPQTs2QkFDQTswQ0FDQTtBQUVBO0FBTEE7Ozs7QUFPQTs2QkFDQTs0Q0FDQTtBQUVBO0FBTEE7Ozs7QUFPQTs2QkFDQTs0Q0FDQTtBQUdBO0FBTkE7O2tDQU9BOzhCQUNBO0FBQ0E7Z0NBQ0E7OEJBQ0E7QUFFQTs7O0FBQ0E7d0NBQ0E7QUFDQTs7O01BQ0E7QUFDQTs0QkFDQTtVQUNBO0FBQ0E7O0FBQ0E7O2lFQUVBO0FBQ0E7a0VBQ0E7QUFDQTs4QkFKQSxDQUtBO0FBRUE7OztBQUNBOztBQUNBOztBQUNBO29DQUNBOzZDQUVBOztBQUNBOztlQUVBO29DQUNBO3NCQUZBLENBR0E7b0JBQ0E7V0FDQTtvQ0FFQTs7NEJBQ0E7K0NBRUE7O3VEQUNBO0FBQ0E7U0FDQTs7WUFFQTswQkFDQTs7O0FBRUE7QUFKQTtBQUtBO1dBQ0E7QUFFQTs7QUFDQTs7dUJBQ0E7Ozt1QkFDQTs7OEJBQ0E7d0JBQ0E7K0NBQ0E7QUFDQTsyQkFDQTswREFDQTs7MENBQ0EsQ0FDQTtBQUNBO0FBRUE7O0FBQ0E7O1FBRUE7YUFDQTtvQkFDQTt3QkFDQTsyQkFHQTtBQVBBOztBQVFBOzs4QkFDQTs7eUJBQ0E7cUNBQ0E7VUFDQTsyQkFDQTtBQUVBOztBQUNBOztRQUVBOztTQUVBO3lCQUNBO1dBQ0E7O2tFQUVBOztBQUxBO1dBT0E7QUFUQTtBQVdBO0FBeklBO0FBckZBIiwiZmlsZSI6IjguanMiLCJzb3VyY2VzQ29udGVudCI6WyI8dGVtcGxhdGU+XG5cdDxkaXYgaWQ9XCJhcHBcIj5cblx0XHQ8YXBwLW5hdmlnYXRpb24gOm1lbnU9XCJtZW51XCI+XG5cdFx0XHQ8dGVtcGxhdGUgc2xvdD1cInNldHRpbmdzLWNvbnRlbnRcIj5cblx0XHRcdFx0PGRpdj5cblx0XHRcdFx0XHQ8cD57e3QoJ3NldHRpbmdzJywgJ0RlZmF1bHQgcXVvdGEgOicpfX08L3A+XG5cdFx0XHRcdFx0PG11bHRpc2VsZWN0IDp2YWx1ZT1cImRlZmF1bHRRdW90YVwiIDpvcHRpb25zPVwicXVvdGFPcHRpb25zXCJcblx0XHRcdFx0XHRcdFx0XHR0YWctcGxhY2Vob2xkZXI9XCJjcmVhdGVcIiA6cGxhY2Vob2xkZXI9XCJ0KCdzZXR0aW5ncycsICdTZWxlY3QgZGVmYXVsdCBxdW90YScpXCJcblx0XHRcdFx0XHRcdFx0XHRsYWJlbD1cImxhYmVsXCIgdHJhY2stYnk9XCJpZFwiIGNsYXNzPVwibXVsdGlzZWxlY3QtdnVlXCJcblx0XHRcdFx0XHRcdFx0XHQ6YWxsb3dFbXB0eT1cImZhbHNlXCIgOnRhZ2dhYmxlPVwidHJ1ZVwiXG5cdFx0XHRcdFx0XHRcdFx0QHRhZz1cInZhbGlkYXRlUXVvdGFcIiBAaW5wdXQ9XCJzZXREZWZhdWx0UXVvdGFcIj5cblx0XHRcdFx0XHQ8L211bHRpc2VsZWN0PlxuXG5cdFx0XHRcdDwvZGl2PlxuXHRcdFx0XHQ8ZGl2PlxuXHRcdFx0XHRcdDxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBpZD1cInNob3dMYW5ndWFnZXNcIiBjbGFzcz1cImNoZWNrYm94XCJcblx0XHRcdFx0XHRcdCAgIDpjaGVja2VkPVwic2hvd0xhbmd1YWdlc1wiIHYtbW9kZWw9XCJzaG93TGFuZ3VhZ2VzXCI+XG5cdFx0XHRcdFx0PGxhYmVsIGZvcj1cInNob3dMYW5ndWFnZXNcIj57e3QoJ3NldHRpbmdzJywgJ1Nob3cgTGFuZ3VhZ2VzJyl9fTwvbGFiZWw+XG5cdFx0XHRcdDwvZGl2PlxuXHRcdFx0XHQ8ZGl2PlxuXHRcdFx0XHRcdDxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBpZD1cInNob3dMYXN0TG9naW5cIiBjbGFzcz1cImNoZWNrYm94XCJcblx0XHRcdFx0XHRcdCAgIDpjaGVja2VkPVwic2hvd0xhc3RMb2dpblwiIHYtbW9kZWw9XCJzaG93TGFzdExvZ2luXCI+XG5cdFx0XHRcdFx0PGxhYmVsIGZvcj1cInNob3dMYXN0TG9naW5cIj57e3QoJ3NldHRpbmdzJywgJ1Nob3cgbGFzdCBsb2dpbicpfX08L2xhYmVsPlxuXHRcdFx0XHQ8L2Rpdj5cblx0XHRcdFx0PGRpdj5cblx0XHRcdFx0XHQ8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgaWQ9XCJzaG93VXNlckJhY2tlbmRcIiBjbGFzcz1cImNoZWNrYm94XCJcblx0XHRcdFx0XHRcdCAgIDpjaGVja2VkPVwic2hvd1VzZXJCYWNrZW5kXCIgdi1tb2RlbD1cInNob3dVc2VyQmFja2VuZFwiPlxuXHRcdFx0XHRcdDxsYWJlbCBmb3I9XCJzaG93VXNlckJhY2tlbmRcIj57e3QoJ3NldHRpbmdzJywgJ1Nob3cgdXNlciBiYWNrZW5kJyl9fTwvbGFiZWw+XG5cdFx0XHRcdDwvZGl2PlxuXHRcdFx0XHQ8ZGl2PlxuXHRcdFx0XHRcdDxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBpZD1cInNob3dTdG9yYWdlUGF0aFwiIGNsYXNzPVwiY2hlY2tib3hcIlxuXHRcdFx0XHRcdFx0ICAgOmNoZWNrZWQ9XCJzaG93U3RvcmFnZVBhdGhcIiB2LW1vZGVsPVwic2hvd1N0b3JhZ2VQYXRoXCI+XG5cdFx0XHRcdFx0PGxhYmVsIGZvcj1cInNob3dTdG9yYWdlUGF0aFwiPnt7dCgnc2V0dGluZ3MnLCAnU2hvdyBzdG9yYWdlIHBhdGgnKX19PC9sYWJlbD5cblx0XHRcdFx0PC9kaXY+XG5cdFx0XHQ8L3RlbXBsYXRlPlxuXHRcdDwvYXBwLW5hdmlnYXRpb24+XG5cdFx0PHVzZXItbGlzdCA6dXNlcnM9XCJ1c2Vyc1wiIDpzaG93Q29uZmlnPVwic2hvd0NvbmZpZ1wiIDpzZWxlY3RlZEdyb3VwPVwic2VsZWN0ZWRHcm91cFwiIC8+XG5cdDwvZGl2PlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdD5cbmltcG9ydCBhcHBOYXZpZ2F0aW9uIGZyb20gJy4uL2NvbXBvbmVudHMvYXBwTmF2aWdhdGlvbic7XG5pbXBvcnQgdXNlckxpc3QgZnJvbSAnLi4vY29tcG9uZW50cy91c2VyTGlzdCc7XG5pbXBvcnQgVnVlIGZyb20gJ3Z1ZSc7XG5pbXBvcnQgVnVlTG9jYWxTdG9yYWdlIGZyb20gJ3Z1ZS1sb2NhbHN0b3JhZ2UnXG5pbXBvcnQgTXVsdGlzZWxlY3QgZnJvbSAndnVlLW11bHRpc2VsZWN0JztcbmltcG9ydCBhcGkgZnJvbSAnLi4vc3RvcmUvYXBpJztcblxuVnVlLnVzZShWdWVMb2NhbFN0b3JhZ2UpXG5WdWUudXNlKFZ1ZUxvY2FsU3RvcmFnZSlcblxuZXhwb3J0IGRlZmF1bHQge1xuXHRuYW1lOiAnVXNlcnMnLFxuXHRwcm9wczogWydzZWxlY3RlZEdyb3VwJ10sXG5cdGNvbXBvbmVudHM6IHtcblx0XHRhcHBOYXZpZ2F0aW9uLFxuXHRcdHVzZXJMaXN0LFxuXHRcdE11bHRpc2VsZWN0XG5cdH0sXG5cdGJlZm9yZU1vdW50KCkge1xuXHRcdHRoaXMuJHN0b3JlLmNvbW1pdCgnaW5pdEdyb3VwcycsIHtcblx0XHRcdGdyb3VwczogdGhpcy4kc3RvcmUuZ2V0dGVycy5nZXRTZXJ2ZXJEYXRhLmdyb3Vwcyxcblx0XHRcdG9yZGVyQnk6IHRoaXMuJHN0b3JlLmdldHRlcnMuZ2V0U2VydmVyRGF0YS5zb3J0R3JvdXBzLFxuXHRcdFx0dXNlckNvdW50OiB0aGlzLiRzdG9yZS5nZXR0ZXJzLmdldFNlcnZlckRhdGEudXNlckNvdW50XG5cdFx0fSk7XG5cdFx0dGhpcy4kc3RvcmUuZGlzcGF0Y2goJ2dldFBhc3N3b3JkUG9saWN5TWluTGVuZ3RoJyk7XG5cdH0sXG5cdGRhdGEoKSB7XG5cdFx0cmV0dXJuIHtcblx0XHRcdC8vIGRlZmF1bHQgcXVvdGEgaXMgdW5saW1pdGVkXG5cdFx0XHR1bmxpbWl0ZWRRdW90YToge2lkOidkZWZhdWx0JywgbGFiZWw6dCgnc2V0dGluZ3MnLCAnVW5saW1pdGVkJyl9LFxuXHRcdFx0c2hvd0NvbmZpZzoge1xuXHRcdFx0XHRzaG93U3RvcmFnZVBhdGg6IGZhbHNlLFxuXHRcdFx0XHRzaG93VXNlckJhY2tlbmQ6IGZhbHNlLFxuXHRcdFx0XHRzaG93TGFzdExvZ2luOiBmYWxzZSxcblx0XHRcdFx0c2hvd05ld1VzZXJGb3JtOiBmYWxzZSxcblx0XHRcdFx0c2hvd0xhbmd1YWdlczogZmFsc2Vcblx0XHRcdH1cblx0XHR9XG5cdH0sXG5cdG1ldGhvZHM6IHtcblx0XHRnZXRMb2NhbHN0b3JhZ2Uoa2V5KSB7XG5cdFx0XHQvLyBmb3JjZSBpbml0aWFsaXphdGlvblxuXHRcdFx0dGhpcy5zaG93Q29uZmlnW2tleV0gPSB0aGlzLiRsb2NhbFN0b3JhZ2UuZ2V0KGtleSkgPT09ICd0cnVlJztcblx0XHRcdHJldHVybiB0aGlzLnNob3dDb25maWdba2V5XTtcblx0XHR9LFxuXHRcdHNldExvY2FsU3RvcmFnZShrZXksIHN0YXR1cykge1xuXHRcdFx0dGhpcy5zaG93Q29uZmlnW2tleV0gPSBzdGF0dXM7XG5cdFx0XHR0aGlzLiRsb2NhbFN0b3JhZ2Uuc2V0KGtleSwgc3RhdHVzKTtcblx0XHRcdHJldHVybiBzdGF0dXM7XG5cdFx0fSxcblx0XHRyZW1vdmVHcm91cChncm91cGlkKSB7XG5cdFx0XHRsZXQgc2VsZiA9IHRoaXM7XG5cdFx0XHQvLyBUT0RPIG1pZ3JhdGUgdG8gYSB2dWUganMgY29uZmlybSBkaWFsb2cgY29tcG9uZW50IFxuXHRcdFx0T0MuZGlhbG9ncy5jb25maXJtKFxuXHRcdFx0XHR0KCdzZXR0aW5ncycsICdZb3UgYXJlIGFib3V0IHRvIHJlbW92ZSB0aGUgZ3JvdXAge2dyb3VwfS4gVGhlIHVzZXJzIHdpbGwgTk9UIGJlIGRlbGV0ZWQuJywge2dyb3VwOiBncm91cGlkfSksXG5cdFx0XHRcdHQoJ3NldHRpbmdzJywnUGxlYXNlIGNvbmZpcm0gdGhlIGdyb3VwIHJlbW92YWwgJyksXG5cdFx0XHRcdGZ1bmN0aW9uIChzdWNjZXNzKSB7XG5cdFx0XHRcdFx0aWYgKHN1Y2Nlc3MpIHtcblx0XHRcdFx0XHRcdHNlbGYuJHN0b3JlLmRpc3BhdGNoKCdyZW1vdmVHcm91cCcsIGdyb3VwaWQpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0KTtcblx0XHR9LFxuXG5cdFx0LyoqXG5cdFx0ICogRGlzcGF0Y2ggZGVmYXVsdCBxdW90YSBzZXQgcmVxdWVzdFxuXHRcdCAqIFxuXHRcdCAqIEBwYXJhbSB7c3RyaW5nfE9iamVjdH0gcXVvdGEgUXVvdGEgaW4gcmVhZGFibGUgZm9ybWF0ICc1IEdCJyBvciBPYmplY3Qge2lkOiAnNSBHQicsIGxhYmVsOiAnNUdCJ31cblx0XHQgKiBAcmV0dXJucyB7c3RyaW5nfVxuXHRcdCAqL1xuXHRcdHNldERlZmF1bHRRdW90YShxdW90YSA9ICdub25lJykge1xuXHRcdFx0Ly8gZW5zdXJlIHdlIG9ubHkgc2VuZCB0aGUgcHJlc2V0IGlkXG5cdFx0XHRxdW90YSA9IHF1b3RhLmlkID8gcXVvdGEuaWQgOiBxdW90YTtcblx0XHRcdGFwaS5zZXRBcHBDb25maWcoJ2ZpbGVzJywgJ2RlZmF1bHRfcXVvdGEnLCBxdW90YSk7XG5cdFx0fSxcblxuXHRcdC8qKlxuXHRcdCAqIFZhbGlkYXRlIHF1b3RhIHN0cmluZyB0byBtYWtlIHN1cmUgaXQncyBhIHZhbGlkIGh1bWFuIGZpbGUgc2l6ZVxuXHRcdCAqIFxuXHRcdCAqIEBwYXJhbSB7c3RyaW5nfSBxdW90YSBRdW90YSBpbiByZWFkYWJsZSBmb3JtYXQgJzUgR0InXG5cdFx0ICogQHJldHVybnMge1Byb21pc2V8Ym9vbGVhbn1cblx0XHQgKi9cblx0XHR2YWxpZGF0ZVF1b3RhKHF1b3RhKSB7XG5cdFx0XHQvLyBvbmx5IHVzZWQgZm9yIG5ldyBwcmVzZXRzIHNlbnQgdGhyb3VnaCBAVGFnXG5cdFx0XHRsZXQgdmFsaWRRdW90YSA9IE9DLlV0aWwuY29tcHV0ZXJGaWxlU2l6ZShxdW90YSk7XG5cdFx0XHRpZiAodmFsaWRRdW90YSA9PT0gMCkge1xuXHRcdFx0XHRyZXR1cm4gdGhpcy5zZXREZWZhdWx0UXVvdGEoJ25vbmUnKTtcblx0XHRcdH0gZWxzZSBpZiAodmFsaWRRdW90YSAhPT0gbnVsbCkge1xuXHRcdFx0XHQvLyB1bmlmeSBmb3JtYXQgb3V0cHV0XG5cdFx0XHRcdHJldHVybiB0aGlzLnNldERlZmF1bHRRdW90YShPQy5VdGlsLmh1bWFuRmlsZVNpemUoT0MuVXRpbC5jb21wdXRlckZpbGVTaXplKHF1b3RhKSkpO1xuXHRcdFx0fVxuXHRcdFx0Ly8gaWYgbm8gdmFsaWQgZG8gbm90IGNoYW5nZVxuXHRcdFx0cmV0dXJuIGZhbHNlO1xuXHRcdH0sXG5cdH0sXG5cdGNvbXB1dGVkOiB7XG5cdFx0dXNlcnMoKSB7XG5cdFx0XHRyZXR1cm4gdGhpcy4kc3RvcmUuZ2V0dGVycy5nZXRVc2Vycztcblx0XHR9LFxuXHRcdGxvYWRpbmcoKSB7XG5cdFx0XHRyZXR1cm4gT2JqZWN0LmtleXModGhpcy51c2VycykubGVuZ3RoID09PSAwO1xuXHRcdH0sXG5cdFx0dXNlcnNPZmZzZXQoKSB7XG5cdFx0XHRyZXR1cm4gdGhpcy4kc3RvcmUuZ2V0dGVycy5nZXRVc2Vyc09mZnNldDtcblx0XHR9LFxuXHRcdHVzZXJzTGltaXQoKSB7XG5cdFx0XHRyZXR1cm4gdGhpcy4kc3RvcmUuZ2V0dGVycy5nZXRVc2Vyc0xpbWl0O1xuXHRcdH0sXG5cblx0XHQvLyBMb2NhbCBzZXR0aW5nc1xuXHRcdHNob3dMYW5ndWFnZXM6IHtcblx0XHRcdGdldDogZnVuY3Rpb24oKSB7cmV0dXJuIHRoaXMuZ2V0TG9jYWxzdG9yYWdlKCdzaG93TGFuZ3VhZ2VzJyl9LFxuXHRcdFx0c2V0OiBmdW5jdGlvbihzdGF0dXMpIHtcblx0XHRcdFx0dGhpcy5zZXRMb2NhbFN0b3JhZ2UoJ3Nob3dMYW5ndWFnZXMnLCBzdGF0dXMpO1xuXHRcdFx0fVxuXHRcdH0sXG5cdFx0c2hvd0xhc3RMb2dpbjoge1xuXHRcdFx0Z2V0OiBmdW5jdGlvbigpIHtyZXR1cm4gdGhpcy5nZXRMb2NhbHN0b3JhZ2UoJ3Nob3dMYXN0TG9naW4nKX0sXG5cdFx0XHRzZXQ6IGZ1bmN0aW9uKHN0YXR1cykge1xuXHRcdFx0XHR0aGlzLnNldExvY2FsU3RvcmFnZSgnc2hvd0xhc3RMb2dpbicsIHN0YXR1cyk7XG5cdFx0XHR9XG5cdFx0fSxcblx0XHRzaG93VXNlckJhY2tlbmQ6IHtcblx0XHRcdGdldDogZnVuY3Rpb24oKSB7cmV0dXJuIHRoaXMuZ2V0TG9jYWxzdG9yYWdlKCdzaG93VXNlckJhY2tlbmQnKX0sXG5cdFx0XHRzZXQ6IGZ1bmN0aW9uKHN0YXR1cykge1xuXHRcdFx0XHR0aGlzLnNldExvY2FsU3RvcmFnZSgnc2hvd1VzZXJCYWNrZW5kJywgc3RhdHVzKTtcblx0XHRcdH1cblx0XHR9LFxuXHRcdHNob3dTdG9yYWdlUGF0aDoge1xuXHRcdFx0Z2V0OiBmdW5jdGlvbigpIHtyZXR1cm4gdGhpcy5nZXRMb2NhbHN0b3JhZ2UoJ3Nob3dTdG9yYWdlUGF0aCcpfSxcblx0XHRcdHNldDogZnVuY3Rpb24oc3RhdHVzKSB7XG5cdFx0XHRcdHRoaXMuc2V0TG9jYWxTdG9yYWdlKCdzaG93U3RvcmFnZVBhdGgnLCBzdGF0dXMpO1xuXHRcdFx0fVxuXHRcdH0sXG5cblx0XHR1c2VyQ291bnQoKSB7XG5cdFx0XHRyZXR1cm4gdGhpcy4kc3RvcmUuZ2V0dGVycy5nZXRVc2VyQ291bnQ7XG5cdFx0fSxcblx0XHRzZXR0aW5ncygpIHtcblx0XHRcdHJldHVybiB0aGlzLiRzdG9yZS5nZXR0ZXJzLmdldFNlcnZlckRhdGE7XG5cdFx0fSxcblxuXHRcdC8vIGRlZmF1bHQgcXVvdGFcblx0XHRxdW90YU9wdGlvbnMoKSB7XG5cdFx0XHQvLyBjb252ZXJ0IHRoZSBwcmVzZXQgYXJyYXkgaW50byBvYmplY3RzXG5cdFx0XHRsZXQgcXVvdGFQcmVzZXQgPSB0aGlzLnNldHRpbmdzLnF1b3RhUHJlc2V0LnJlZHVjZSgoYWNjLCBjdXIpID0+IGFjYy5jb25jYXQoe2lkOmN1ciwgbGFiZWw6Y3VyfSksIFtdKTtcblx0XHRcdC8vIGFkZCBkZWZhdWx0IHByZXNldHNcblx0XHRcdHF1b3RhUHJlc2V0LnVuc2hpZnQodGhpcy51bmxpbWl0ZWRRdW90YSk7XG5cdFx0XHRyZXR1cm4gcXVvdGFQcmVzZXQ7XG5cdFx0fSxcblx0XHQvLyBtYXBwaW5nIHNhdmVkIHZhbHVlcyB0byBvYmplY3RzXG5cdFx0ZGVmYXVsdFF1b3RhKCkge1xuXHRcdFx0aWYgKE9DLlV0aWwuY29tcHV0ZXJGaWxlU2l6ZSh0aGlzLnNldHRpbmdzLmRlZmF1bHRRdW90YSkgPiAwKSB7XG5cdFx0XHRcdC8vIGlmIHZhbHVlIGlzIHZhbGlkLCBsZXQncyBtYXAgdGhlIHF1b3RhT3B0aW9ucyBvciByZXR1cm4gY3VzdG9tIHF1b3RhXG5cdFx0XHRcdHJldHVybiB7aWQ6dGhpcy5zZXR0aW5ncy5kZWZhdWx0UXVvdGEsIGxhYmVsOnRoaXMuc2V0dGluZ3MuZGVmYXVsdFF1b3RhfTtcblx0XHRcdH1cblx0XHRcdHJldHVybiB0aGlzLnVubGltaXRlZFF1b3RhOyAvLyB1bmxpbWl0ZWRcblx0XHR9LFxuXG5cdFx0Ly8gQlVJTEQgQVBQIE5BVklHQVRJT04gTUVOVSBPQkpFQ1Rcblx0XHRtZW51KCkge1xuXHRcdFx0Ly8gRGF0YSBwcm92aWRlZCBwaHAgc2lkZVxuXHRcdFx0bGV0IGdyb3VwcyA9IHRoaXMuJHN0b3JlLmdldHRlcnMuZ2V0R3JvdXBzO1xuXHRcdFx0Z3JvdXBzID0gQXJyYXkuaXNBcnJheShncm91cHMpID8gZ3JvdXBzIDogW107XG5cblx0XHRcdC8vIE1hcCBncm91cHNcblx0XHRcdGdyb3VwcyA9IGdyb3Vwcy5tYXAoZ3JvdXAgPT4ge1xuXHRcdFx0XHRsZXQgaXRlbSA9IHt9O1xuXHRcdFx0XHRpdGVtLmlkID0gZ3JvdXAuaWQucmVwbGFjZSgnICcsICdfJyk7XG5cdFx0XHRcdGl0ZW0uY2xhc3NlcyA9IFtdO1x0XHRcdFx0XHRcdFx0Ly8gZW1wdHkgY2xhc3NlcywgYWN0aXZlIHdpbGwgYmUgc2V0IGxhdGVyXG5cdFx0XHRcdGl0ZW0ucm91dGVyID0ge1x0XHRcdFx0XHRcdFx0XHQvLyByb3V0ZXIgbGluayB0b1xuXHRcdFx0XHRcdG5hbWU6ICdncm91cCcsXG5cdFx0XHRcdFx0cGFyYW1zOiB7c2VsZWN0ZWRHcm91cDogZ3JvdXAuaWR9XG5cdFx0XHRcdH07XG5cdFx0XHRcdGl0ZW0udGV4dCA9IGdyb3VwLm5hbWU7XHRcdFx0XHRcdFx0Ly8gZ3JvdXAgbmFtZVxuXHRcdFx0XHRpdGVtLnV0aWxzID0ge2NvdW50ZXI6IGdyb3VwLnVzZXJjb3VudH07XHQvLyB1c2VycyBjb3VudFxuXG5cdFx0XHRcdGlmIChpdGVtLmlkICE9PSAnYWRtaW4nICYmIGl0ZW0uaWQgIT09ICdkaXNhYmxlZCcpIHtcblx0XHRcdFx0XHQvLyBhZGQgZGVsZXRlIGJ1dHRvbiBvbiByZWFsIGdyb3Vwc1xuXHRcdFx0XHRcdGxldCBzZWxmID0gdGhpcztcblx0XHRcdFx0XHRpdGVtLnV0aWxzLmFjdGlvbnMgPSBbe1xuXHRcdFx0XHRcdFx0aWNvbjogJ2ljb24tZGVsZXRlJyxcblx0XHRcdFx0XHRcdHRleHQ6IHQoJ3NldHRpbmdzJywgJ1JlbW92ZSBncm91cCcpLFxuXHRcdFx0XHRcdFx0YWN0aW9uOiBmdW5jdGlvbigpIHtzZWxmLnJlbW92ZUdyb3VwKGl0ZW0uaWQpfVxuXHRcdFx0XHRcdH1dO1xuXHRcdFx0XHR9O1xuXHRcdFx0XHRyZXR1cm4gaXRlbTtcblx0XHRcdH0pO1xuXG5cdFx0XHQvLyBBZGp1c3QgZGF0YVxuXHRcdFx0bGV0IGFkbWluR3JvdXAgPSBncm91cHMuZmluZChncm91cCA9PiBncm91cC5pZCA9PSAnYWRtaW4nKTtcblx0XHRcdCAgIGxldCBkaXNhYmxlZEdyb3VwSW5kZXggPSBncm91cHMuZmluZEluZGV4KGdyb3VwID0+IGdyb3VwLmlkID09ICdkaXNhYmxlZCcpO1xuXHRcdFx0ICAgbGV0IGRpc2FibGVkR3JvdXAgPSBncm91cHNbZGlzYWJsZWRHcm91cEluZGV4XTtcblx0XHRcdGlmIChhZG1pbkdyb3VwLnRleHQpIHtcblx0XHRcdFx0YWRtaW5Hcm91cC50ZXh0ID0gdCgnc2V0dGluZ3MnLCAnQWRtaW5zJyk7IC8vIHJlbmFtZSBhZG1pbiBncm91cFxuXHRcdFx0fVxuXHRcdFx0aWYgKGRpc2FibGVkR3JvdXAudGV4dCkge1xuXHRcdFx0XHRkaXNhYmxlZEdyb3VwLnRleHQgPSB0KCdzZXR0aW5ncycsICdEaXNhYmxlZCB1c2VycycpOyAvLyByZW5hbWUgZGlzYWJsZWQgZ3JvdXBcblx0XHRcdFx0aWYgKGRpc2FibGVkR3JvdXAudXRpbHMuY291bnRlciA9PT0gMCkge1xuXHRcdFx0XHRcdGdyb3Vwcy5zcGxpY2UoZGlzYWJsZWRHcm91cEluZGV4LCAxKTsgLy8gcmVtb3ZlIGRpc2FibGVkIGlmIGVtcHR5XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Ly8gQWRkIGV2ZXJ5b25lIGdyb3VwXG5cdFx0XHRncm91cHMudW5zaGlmdCh7XG5cdFx0XHRcdGlkOiAnZXZlcnlvbmUnLFxuXHRcdFx0XHRjbGFzc2VzOiBbXSxcblx0XHRcdFx0cm91dGVyOiB7bmFtZTondXNlcnMnfSxcblx0XHRcdFx0dGV4dDogdCgnc2V0dGluZ3MnLCAnRXZlcnlvbmUnKSxcblx0XHRcdFx0dXRpbHM6IHtjb3VudGVyOiB0aGlzLnVzZXJDb3VudH1cblx0XHRcdH0pO1xuXG5cdFx0XHQvLyBTZXQgY3VycmVudCBncm91cCBhcyBhY3RpdmVcblx0XHRcdGxldCBhY3RpdmVHcm91cCA9IGdyb3Vwcy5maW5kSW5kZXgoZ3JvdXAgPT4gZ3JvdXAuaWQgPT09IHRoaXMuc2VsZWN0ZWRHcm91cCk7XG5cdFx0XHRpZiAoYWN0aXZlR3JvdXAgPj0gMCkge1xuXHRcdFx0XHRncm91cHNbYWN0aXZlR3JvdXBdLmNsYXNzZXMucHVzaCgnYWN0aXZlJyk7XG5cdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRncm91cHNbMF0uY2xhc3Nlcy5wdXNoKCdhY3RpdmUnKTtcblx0XHRcdH1cblxuXHRcdFx0Ly8gUmV0dXJuXG5cdFx0XHRyZXR1cm4ge1xuXHRcdFx0XHRpZDogJ3VzZXJncm91cGxpc3QnLFxuXHRcdFx0XHRuZXc6IHtcblx0XHRcdFx0XHRpZDonbmV3LXVzZXItYnV0dG9uJyxcblx0XHRcdFx0XHR0ZXh0OiB0KCdzZXR0aW5ncycsJ05ldyB1c2VyJyksXG5cdFx0XHRcdFx0aWNvbjogJ2ljb24tYWRkJyxcblx0XHRcdFx0XHRhY3Rpb246ICgpID0+IHRoaXMuc2hvd0NvbmZpZy5zaG93TmV3VXNlckZvcm09IXRoaXMuc2hvd0NvbmZpZy5zaG93TmV3VXNlckZvcm1cblx0XHRcdFx0fSxcblx0XHRcdFx0aXRlbXM6IGdyb3Vwc1xuXHRcdFx0fVxuXHRcdH0sXG5cdH1cbn1cbjwvc2NyaXB0PlxuXG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIHNyYy92aWV3cy9Vc2Vycy52dWUiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///8\n"); +eval("//\n//\n//\n//\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tname: 'App',\n\tbeforeMount: function beforeMount() {\n\t\t// importing server data into the store\n\t\tvar serverDataElmt = document.getElementById('serverData');\n\t\tif (serverDataElmt !== null) {\n\t\t\tthis.$store.commit('setServerData', JSON.parse(document.getElementById('serverData').dataset.server));\n\t\t}\n\t}\n});\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vc3JjL0FwcC52dWU/ZWE5OSJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUtBO09BRUE7cUNBQ0E7QUFDQTsrQ0FDQTsrQkFDQTtnR0FDQTtBQUNBO0FBQ0E7QUFSQSIsImZpbGUiOiI4LmpzIiwic291cmNlc0NvbnRlbnQiOlsiPHRlbXBsYXRlPlxuXHQ8cm91dGVyLXZpZXc+PC9yb3V0ZXItdmlldz5cbjwvdGVtcGxhdGU+XG5cbjxzY3JpcHQ+XG5leHBvcnQgZGVmYXVsdCB7XG5cdG5hbWU6ICdBcHAnLFxuXHRiZWZvcmVNb3VudDogZnVuY3Rpb24oKSB7XG5cdFx0Ly8gaW1wb3J0aW5nIHNlcnZlciBkYXRhIGludG8gdGhlIHN0b3JlXG5cdFx0Y29uc3Qgc2VydmVyRGF0YUVsbXQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnc2VydmVyRGF0YScpO1xuXHRcdGlmIChzZXJ2ZXJEYXRhRWxtdCAhPT0gbnVsbCkge1xuXHRcdFx0dGhpcy4kc3RvcmUuY29tbWl0KCdzZXRTZXJ2ZXJEYXRhJywgSlNPTi5wYXJzZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnc2VydmVyRGF0YScpLmRhdGFzZXQuc2VydmVyKSk7XG5cdFx0fVxuXHR9XG59XG48L3NjcmlwdD5cblxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyBzcmMvQXBwLnZ1ZSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///8\n"); /***/ }), /* 9 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__appNavigation_navigationItem__ = __webpack_require__(33);\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tname: 'appNavigation',\n\tprops: ['menu'],\n\tcomponents: {\n\t\tnavigationItem: __WEBPACK_IMPORTED_MODULE_0__appNavigation_navigationItem__[\"a\" /* default */]\n\t}\n});\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vc3JjL2NvbXBvbmVudHMvYXBwTmF2aWdhdGlvbi52dWU/ZjYyYyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXNCQTs7QUFFQTtPQUVBO1NBQ0E7O0FBR0E7QUFGQTtBQUhBIiwiZmlsZSI6IjkuanMiLCJzb3VyY2VzQ29udGVudCI6WyI8dGVtcGxhdGU+XG5cdDxkaXYgaWQ9XCJhcHAtbmF2aWdhdGlvblwiIDpjbGFzcz1cInsnaWNvbi1sb2FkaW5nJzogbWVudS5sb2FkaW5nfVwiPlxuXHRcdDxkaXYgY2xhc3M9XCJhcHAtbmF2aWdhdGlvbi1uZXdcIiB2LWlmPVwibWVudS5uZXdcIj5cblx0XHRcdDxidXR0b24gdHlwZT1cImJ1dHRvblwiIDppZD1cIm1lbnUubmV3LmlkXCIgOmNsYXNzPVwibWVudS5uZXcuaWNvblwiIEBjbGljaz1cIm1lbnUubmV3LmFjdGlvblwiPnt7bWVudS5uZXcudGV4dH19PC9idXR0b24+XG5cdFx0PC9kaXY+XG5cdFx0PHVsIDppZD1cIm1lbnUuaWRcIj5cblx0XHRcdDxuYXZpZ2F0aW9uLWl0ZW0gdi1mb3I9XCIoaXRlbSwga2V5KSBpbiBtZW51Lml0ZW1zXCIgOml0ZW09XCJpdGVtXCIgOmtleT1cImtleVwiIC8+XG5cdFx0PC91bD5cblx0XHQ8ZGl2IGlkPVwiYXBwLXNldHRpbmdzXCI+XG5cdFx0XHQ8ZGl2IGlkPVwiYXBwLXNldHRpbmdzLWhlYWRlclwiPlxuXHRcdFx0XHQ8YnV0dG9uIGNsYXNzPVwic2V0dGluZ3MtYnV0dG9uXCJcblx0XHRcdFx0XHRcdGRhdGEtYXBwcy1zbGlkZS10b2dnbGU9XCIjYXBwLXNldHRpbmdzLWNvbnRlbnRcIlxuXHRcdFx0XHQ+e3t0KCdzZXR0aW5ncycsICdTZXR0aW5ncycpfX08L2J1dHRvbj5cblx0XHRcdDwvZGl2PlxuXHRcdFx0PGRpdiBpZD1cImFwcC1zZXR0aW5ncy1jb250ZW50XCI+XG5cdFx0XHRcdDxzbG90IG5hbWU9XCJzZXR0aW5ncy1jb250ZW50XCI+PC9zbG90PlxuXHRcdFx0PC9kaXY+XG5cdFx0PC9kaXY+XG5cdDwvZGl2PlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdD5cbmltcG9ydCBuYXZpZ2F0aW9uSXRlbSBmcm9tICcuL2FwcE5hdmlnYXRpb24vbmF2aWdhdGlvbkl0ZW0nO1xuXG5leHBvcnQgZGVmYXVsdCB7XG5cdG5hbWU6ICdhcHBOYXZpZ2F0aW9uJyxcblx0cHJvcHM6IFsnbWVudSddLFxuXHRjb21wb25lbnRzOiB7XG5cdFx0bmF2aWdhdGlvbkl0ZW1cblx0fVxufVxuPC9zY3JpcHQ+XG5cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gc3JjL2NvbXBvbmVudHMvYXBwTmF2aWdhdGlvbi52dWUiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///9\n"); +eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__components_appNavigation__ = __webpack_require__(32);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_userList__ = __webpack_require__(39);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_vue__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_vue_localstorage__ = __webpack_require__(44);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_vue_localstorage___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_vue_localstorage__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_vue_multiselect__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_vue_multiselect___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_vue_multiselect__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__store_api__ = __webpack_require__(6);\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n\n\n\n\n\n\n\n__WEBPACK_IMPORTED_MODULE_2_vue__[\"a\" /* default */].use(__WEBPACK_IMPORTED_MODULE_3_vue_localstorage___default.a);\n__WEBPACK_IMPORTED_MODULE_2_vue__[\"a\" /* default */].use(__WEBPACK_IMPORTED_MODULE_3_vue_localstorage___default.a);\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tname: 'Users',\n\tprops: ['selectedGroup'],\n\tcomponents: {\n\t\tappNavigation: __WEBPACK_IMPORTED_MODULE_0__components_appNavigation__[\"a\" /* default */],\n\t\tuserList: __WEBPACK_IMPORTED_MODULE_1__components_userList__[\"a\" /* default */],\n\t\tMultiselect: __WEBPACK_IMPORTED_MODULE_4_vue_multiselect___default.a\n\t},\n\tbeforeMount: function beforeMount() {\n\t\tthis.$store.commit('initGroups', {\n\t\t\tgroups: this.$store.getters.getServerData.groups,\n\t\t\torderBy: this.$store.getters.getServerData.sortGroups,\n\t\t\tuserCount: this.$store.getters.getServerData.userCount\n\t\t});\n\t\tthis.$store.dispatch('getPasswordPolicyMinLength');\n\t},\n\tdata: function data() {\n\t\treturn {\n\t\t\t// default quota is unlimited\n\t\t\tunlimitedQuota: { id: 'default', label: t('settings', 'Unlimited') },\n\t\t\t// temporary value used for multiselect change\n\t\t\tselectedQuota: false,\n\t\t\tshowConfig: {\n\t\t\t\tshowStoragePath: false,\n\t\t\t\tshowUserBackend: false,\n\t\t\t\tshowLastLogin: false,\n\t\t\t\tshowNewUserForm: false,\n\t\t\t\tshowLanguages: false\n\t\t\t}\n\t\t};\n\t},\n\n\tmethods: {\n\t\tgetLocalstorage: function getLocalstorage(key) {\n\t\t\t// force initialization\n\t\t\tthis.showConfig[key] = this.$localStorage.get(key) === 'true';\n\t\t\treturn this.showConfig[key];\n\t\t},\n\t\tsetLocalStorage: function setLocalStorage(key, status) {\n\t\t\tthis.showConfig[key] = status;\n\t\t\tthis.$localStorage.set(key, status);\n\t\t\treturn status;\n\t\t},\n\t\tremoveGroup: function removeGroup(groupid) {\n\t\t\tvar self = this;\n\t\t\t// TODO migrate to a vue js confirm dialog component \n\t\t\tOC.dialogs.confirm(t('settings', 'You are about to remove the group {group}. The users will NOT be deleted.', { group: groupid }), t('settings', 'Please confirm the group removal '), function (success) {\n\t\t\t\tif (success) {\n\t\t\t\t\tself.$store.dispatch('removeGroup', groupid);\n\t\t\t\t}\n\t\t\t});\n\t\t},\n\n\n\t\t/**\n * Dispatch default quota set request\n * \n * @param {string|Object} quota Quota in readable format '5 GB' or Object {id: '5 GB', label: '5GB'}\n * @returns {string}\n */\n\t\tsetDefaultQuota: function setDefaultQuota() {\n\t\t\tvar _this = this;\n\n\t\t\tvar quota = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'none';\n\n\t\t\tthis.$store.dispatch('setAppConfig', {\n\t\t\t\tapp: 'files',\n\t\t\t\tkey: 'default_quota',\n\t\t\t\t// ensure we only send the preset id\n\t\t\t\tvalue: quota.id ? quota.id : quota\n\t\t\t}).then(function () {\n\t\t\t\tif ((typeof quota === 'undefined' ? 'undefined' : _typeof(quota)) !== 'object') {\n\t\t\t\t\tquota = { id: quota, label: quota };\n\t\t\t\t}\n\t\t\t\t_this.defaultQuota = quota;\n\t\t\t});\n\t\t},\n\n\n\t\t/**\n * Validate quota string to make sure it's a valid human file size\n * \n * @param {string} quota Quota in readable format '5 GB'\n * @returns {Promise|boolean}\n */\n\t\tvalidateQuota: function validateQuota(quota) {\n\t\t\t// only used for new presets sent through @Tag\n\t\t\tvar validQuota = OC.Util.computerFileSize(quota);\n\t\t\tif (validQuota === 0) {\n\t\t\t\treturn this.setDefaultQuota('none');\n\t\t\t} else if (validQuota !== null) {\n\t\t\t\t// unify format output\n\t\t\t\treturn this.setDefaultQuota(OC.Util.humanFileSize(OC.Util.computerFileSize(quota)));\n\t\t\t}\n\t\t\t// if no valid do not change\n\t\t\treturn false;\n\t\t}\n\t},\n\tcomputed: {\n\t\tusers: function users() {\n\t\t\treturn this.$store.getters.getUsers;\n\t\t},\n\t\tloading: function loading() {\n\t\t\treturn Object.keys(this.users).length === 0;\n\t\t},\n\t\tusersOffset: function usersOffset() {\n\t\t\treturn this.$store.getters.getUsersOffset;\n\t\t},\n\t\tusersLimit: function usersLimit() {\n\t\t\treturn this.$store.getters.getUsersLimit;\n\t\t},\n\n\n\t\t// Local settings\n\t\tshowLanguages: {\n\t\t\tget: function get() {\n\t\t\t\treturn this.getLocalstorage('showLanguages');\n\t\t\t},\n\t\t\tset: function set(status) {\n\t\t\t\tthis.setLocalStorage('showLanguages', status);\n\t\t\t}\n\t\t},\n\t\tshowLastLogin: {\n\t\t\tget: function get() {\n\t\t\t\treturn this.getLocalstorage('showLastLogin');\n\t\t\t},\n\t\t\tset: function set(status) {\n\t\t\t\tthis.setLocalStorage('showLastLogin', status);\n\t\t\t}\n\t\t},\n\t\tshowUserBackend: {\n\t\t\tget: function get() {\n\t\t\t\treturn this.getLocalstorage('showUserBackend');\n\t\t\t},\n\t\t\tset: function set(status) {\n\t\t\t\tthis.setLocalStorage('showUserBackend', status);\n\t\t\t}\n\t\t},\n\t\tshowStoragePath: {\n\t\t\tget: function get() {\n\t\t\t\treturn this.getLocalstorage('showStoragePath');\n\t\t\t},\n\t\t\tset: function set(status) {\n\t\t\t\tthis.setLocalStorage('showStoragePath', status);\n\t\t\t}\n\t\t},\n\n\t\tuserCount: function userCount() {\n\t\t\treturn this.$store.getters.getUserCount;\n\t\t},\n\t\tsettings: function settings() {\n\t\t\treturn this.$store.getters.getServerData;\n\t\t},\n\n\n\t\t// default quota\n\t\tquotaOptions: function quotaOptions() {\n\t\t\t// convert the preset array into objects\n\t\t\tvar quotaPreset = this.settings.quotaPreset.reduce(function (acc, cur) {\n\t\t\t\treturn acc.concat({ id: cur, label: cur });\n\t\t\t}, []);\n\t\t\t// add default presets\n\t\t\tquotaPreset.unshift(this.unlimitedQuota);\n\t\t\treturn quotaPreset;\n\t\t},\n\n\t\t// mapping saved values to objects\n\t\tdefaultQuota: {\n\t\t\tget: function get() {\n\t\t\t\tif (this.selectedQuota !== false) {\n\t\t\t\t\treturn this.selectedQuota;\n\t\t\t\t}\n\t\t\t\tif (OC.Util.computerFileSize(this.settings.defaultQuota) > 0) {\n\t\t\t\t\t// if value is valid, let's map the quotaOptions or return custom quota\n\t\t\t\t\treturn { id: this.settings.defaultQuota, label: this.settings.defaultQuota };\n\t\t\t\t}\n\t\t\t\treturn this.unlimitedQuota; // unlimited\n\t\t\t},\n\t\t\tset: function set(quota) {\n\t\t\t\tthis.selectedQuota = quota;\n\t\t\t}\n\n\t\t},\n\n\t\t// BUILD APP NAVIGATION MENU OBJECT\n\t\tmenu: function menu() {\n\t\t\tvar _this2 = this;\n\n\t\t\t// Data provided php side\n\t\t\tvar groups = this.$store.getters.getGroups;\n\t\t\tgroups = Array.isArray(groups) ? groups : [];\n\n\t\t\t// Map groups\n\t\t\tgroups = groups.map(function (group) {\n\t\t\t\tvar item = {};\n\t\t\t\titem.id = group.id.replace(' ', '_');\n\t\t\t\titem.classes = []; // empty classes, active will be set later\n\t\t\t\titem.router = { // router link to\n\t\t\t\t\tname: 'group',\n\t\t\t\t\tparams: { selectedGroup: group.id }\n\t\t\t\t};\n\t\t\t\titem.text = group.name; // group name\n\t\t\t\titem.utils = { counter: group.usercount }; // users count\n\n\t\t\t\tif (item.id !== 'admin' && item.id !== 'disabled') {\n\t\t\t\t\t// add delete button on real groups\n\t\t\t\t\tvar self = _this2;\n\t\t\t\t\titem.utils.actions = [{\n\t\t\t\t\t\ticon: 'icon-delete',\n\t\t\t\t\t\ttext: t('settings', 'Remove group'),\n\t\t\t\t\t\taction: function action() {\n\t\t\t\t\t\t\tself.removeGroup(item.id);\n\t\t\t\t\t\t}\n\t\t\t\t\t}];\n\t\t\t\t};\n\t\t\t\treturn item;\n\t\t\t});\n\n\t\t\t// Adjust data\n\t\t\tvar adminGroup = groups.find(function (group) {\n\t\t\t\treturn group.id == 'admin';\n\t\t\t});\n\t\t\tvar disabledGroupIndex = groups.findIndex(function (group) {\n\t\t\t\treturn group.id == 'disabled';\n\t\t\t});\n\t\t\tvar disabledGroup = groups[disabledGroupIndex];\n\t\t\tif (adminGroup.text) {\n\t\t\t\tadminGroup.text = t('settings', 'Admins'); // rename admin group\n\t\t\t}\n\t\t\tif (disabledGroup.text) {\n\t\t\t\tdisabledGroup.text = t('settings', 'Disabled users'); // rename disabled group\n\t\t\t\tif (disabledGroup.utils.counter === 0) {\n\t\t\t\t\tgroups.splice(disabledGroupIndex, 1); // remove disabled if empty\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Add everyone group\n\t\t\tgroups.unshift({\n\t\t\t\tid: 'everyone',\n\t\t\t\tclasses: [],\n\t\t\t\trouter: { name: 'users' },\n\t\t\t\ttext: t('settings', 'Everyone'),\n\t\t\t\tutils: { counter: this.userCount }\n\t\t\t});\n\n\t\t\t// Set current group as active\n\t\t\tvar activeGroup = groups.findIndex(function (group) {\n\t\t\t\treturn group.id === _this2.selectedGroup;\n\t\t\t});\n\t\t\tif (activeGroup >= 0) {\n\t\t\t\tgroups[activeGroup].classes.push('active');\n\t\t\t} else {\n\t\t\t\tgroups[0].classes.push('active');\n\t\t\t}\n\n\t\t\t// Return\n\t\t\treturn {\n\t\t\t\tid: 'usergrouplist',\n\t\t\t\tnew: {\n\t\t\t\t\tid: 'new-user-button',\n\t\t\t\t\ttext: t('settings', 'New user'),\n\t\t\t\t\ticon: 'icon-add',\n\t\t\t\t\taction: function action() {\n\t\t\t\t\t\treturn _this2.showConfig.showNewUserForm = !_this2.showConfig.showNewUserForm;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\titems: groups\n\t\t\t};\n\t\t}\n\t}\n});\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vc3JjL3ZpZXdzL1VzZXJzLnZ1ZT8wNzZmIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXlDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtPQUVBO1NBQ0E7O0FBRUE7QUFDQTtBQUVBO0FBSkE7cUNBS0E7OzZDQUVBOzhDQUNBO2dEQUVBO0FBSkE7dUJBS0E7QUFDQTt1QkFDQTs7QUFFQTt5REFDQTtBQUNBO2tCQUNBOztxQkFFQTtxQkFDQTttQkFDQTtxQkFDQTttQkFHQTtBQVBBO0FBTEE7QUFhQTs7O2lEQUVBO0FBQ0E7MERBQ0E7MEJBQ0E7QUFDQTt5REFDQTswQkFDQTsrQkFDQTtVQUNBO0FBQ0E7NkNBQ0E7Y0FDQTtBQUNBO2NBQ0EsNEdBQ0EsMEJBQ0EseURBQ0E7aUJBQ0E7eUNBQ0E7QUFDQTtBQUVBO0FBRUE7OztBQU1BOzs7Ozs7O0FBQ0E7Ozs7O1NBRUE7U0FDQTtBQUNBO2lDQUNBO0FBSkEsdUJBS0E7b0ZBQ0E7aUNBQ0E7QUFDQTt5QkFDQTtBQUNBO0FBRUE7OztBQU1BOzs7Ozs7K0NBQ0E7QUFDQTs2Q0FDQTt5QkFDQTtnQ0FDQTttQ0FDQTtBQUNBOytFQUNBO0FBQ0E7QUFDQTtVQUNBO0FBRUE7QUEvREE7OzBCQWlFQTs4QkFDQTtBQUNBOzhCQUNBOzZDQUNBO0FBQ0E7c0NBQ0E7OEJBQ0E7QUFDQTtvQ0FDQTs4QkFDQTtBQUVBOzs7QUFDQTs7OztBQUVBOzZCQUNBOzBDQUNBO0FBRUE7QUFMQTs7OztBQU9BOzZCQUNBOzBDQUNBO0FBRUE7QUFMQTs7OztBQU9BOzZCQUNBOzRDQUNBO0FBRUE7QUFMQTs7OztBQU9BOzZCQUNBOzRDQUNBO0FBR0E7QUFOQTs7a0NBT0E7OEJBQ0E7QUFDQTtnQ0FDQTs4QkFDQTtBQUVBOzs7QUFDQTt3Q0FDQTtBQUNBOzs7TUFDQTtBQUNBOzRCQUNBO1VBQ0E7QUFDQTs7QUFDQTs7dUJBRUE7c0NBQ0E7aUJBQ0E7QUFDQTtrRUFDQTtBQUNBO21FQUNBO0FBQ0E7Z0NBQ0E7QUFDQTs0QkFDQTt5QkFDQTtBQUlBOztBQWhCQTs7QUFpQkE7O0FBQ0E7O0FBQ0E7b0NBQ0E7NkNBRUE7O0FBQ0E7O2VBRUE7b0NBQ0E7c0JBRkEsQ0FHQTtvQkFDQTtXQUNBO29DQUVBOzs0QkFDQTsrQ0FFQTs7dURBQ0E7QUFDQTtTQUNBOztZQUVBOzBCQUNBOzs7QUFFQTtBQUpBO0FBS0E7V0FDQTtBQUVBOztBQUNBOzt1QkFDQTs7O3VCQUNBOzs4QkFDQTt3QkFDQTsrQ0FDQTtBQUNBOzJCQUNBOzBEQUNBOzswQ0FDQSxDQUNBO0FBQ0E7QUFFQTs7QUFDQTs7UUFFQTthQUNBO29CQUNBO3dCQUNBOzJCQUdBO0FBUEE7O0FBUUE7OytCQUNBOzt5QkFDQTtxQ0FDQTtVQUNBOzJCQUNBO0FBRUE7O0FBQ0E7O1FBRUE7O1NBRUE7eUJBQ0E7V0FDQTs7b0VBRUE7O0FBTEE7V0FPQTtBQVRBO0FBV0E7QUFsSkE7QUEvRkEiLCJmaWxlIjoiOS5qcyIsInNvdXJjZXNDb250ZW50IjpbIjx0ZW1wbGF0ZT5cblx0PGRpdiBpZD1cImFwcFwiPlxuXHRcdDxhcHAtbmF2aWdhdGlvbiA6bWVudT1cIm1lbnVcIj5cblx0XHRcdDx0ZW1wbGF0ZSBzbG90PVwic2V0dGluZ3MtY29udGVudFwiPlxuXHRcdFx0XHQ8ZGl2PlxuXHRcdFx0XHRcdDxwPnt7dCgnc2V0dGluZ3MnLCAnRGVmYXVsdCBxdW90YSA6Jyl9fTwvcD5cblx0XHRcdFx0XHQ8bXVsdGlzZWxlY3QgOnZhbHVlPVwiZGVmYXVsdFF1b3RhXCIgOm9wdGlvbnM9XCJxdW90YU9wdGlvbnNcIlxuXHRcdFx0XHRcdFx0XHRcdHRhZy1wbGFjZWhvbGRlcj1cImNyZWF0ZVwiIDpwbGFjZWhvbGRlcj1cInQoJ3NldHRpbmdzJywgJ1NlbGVjdCBkZWZhdWx0IHF1b3RhJylcIlxuXHRcdFx0XHRcdFx0XHRcdGxhYmVsPVwibGFiZWxcIiB0cmFjay1ieT1cImlkXCIgY2xhc3M9XCJtdWx0aXNlbGVjdC12dWVcIlxuXHRcdFx0XHRcdFx0XHRcdDphbGxvd0VtcHR5PVwiZmFsc2VcIiA6dGFnZ2FibGU9XCJ0cnVlXCJcblx0XHRcdFx0XHRcdFx0XHRAdGFnPVwidmFsaWRhdGVRdW90YVwiIEBpbnB1dD1cInNldERlZmF1bHRRdW90YVwiPlxuXHRcdFx0XHRcdDwvbXVsdGlzZWxlY3Q+XG5cblx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdDxkaXY+XG5cdFx0XHRcdFx0PGlucHV0IHR5cGU9XCJjaGVja2JveFwiIGlkPVwic2hvd0xhbmd1YWdlc1wiIGNsYXNzPVwiY2hlY2tib3hcIlxuXHRcdFx0XHRcdFx0ICAgOmNoZWNrZWQ9XCJzaG93TGFuZ3VhZ2VzXCIgdi1tb2RlbD1cInNob3dMYW5ndWFnZXNcIj5cblx0XHRcdFx0XHQ8bGFiZWwgZm9yPVwic2hvd0xhbmd1YWdlc1wiPnt7dCgnc2V0dGluZ3MnLCAnU2hvdyBMYW5ndWFnZXMnKX19PC9sYWJlbD5cblx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdDxkaXY+XG5cdFx0XHRcdFx0PGlucHV0IHR5cGU9XCJjaGVja2JveFwiIGlkPVwic2hvd0xhc3RMb2dpblwiIGNsYXNzPVwiY2hlY2tib3hcIlxuXHRcdFx0XHRcdFx0ICAgOmNoZWNrZWQ9XCJzaG93TGFzdExvZ2luXCIgdi1tb2RlbD1cInNob3dMYXN0TG9naW5cIj5cblx0XHRcdFx0XHQ8bGFiZWwgZm9yPVwic2hvd0xhc3RMb2dpblwiPnt7dCgnc2V0dGluZ3MnLCAnU2hvdyBsYXN0IGxvZ2luJyl9fTwvbGFiZWw+XG5cdFx0XHRcdDwvZGl2PlxuXHRcdFx0XHQ8ZGl2PlxuXHRcdFx0XHRcdDxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBpZD1cInNob3dVc2VyQmFja2VuZFwiIGNsYXNzPVwiY2hlY2tib3hcIlxuXHRcdFx0XHRcdFx0ICAgOmNoZWNrZWQ9XCJzaG93VXNlckJhY2tlbmRcIiB2LW1vZGVsPVwic2hvd1VzZXJCYWNrZW5kXCI+XG5cdFx0XHRcdFx0PGxhYmVsIGZvcj1cInNob3dVc2VyQmFja2VuZFwiPnt7dCgnc2V0dGluZ3MnLCAnU2hvdyB1c2VyIGJhY2tlbmQnKX19PC9sYWJlbD5cblx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdDxkaXY+XG5cdFx0XHRcdFx0PGlucHV0IHR5cGU9XCJjaGVja2JveFwiIGlkPVwic2hvd1N0b3JhZ2VQYXRoXCIgY2xhc3M9XCJjaGVja2JveFwiXG5cdFx0XHRcdFx0XHQgICA6Y2hlY2tlZD1cInNob3dTdG9yYWdlUGF0aFwiIHYtbW9kZWw9XCJzaG93U3RvcmFnZVBhdGhcIj5cblx0XHRcdFx0XHQ8bGFiZWwgZm9yPVwic2hvd1N0b3JhZ2VQYXRoXCI+e3t0KCdzZXR0aW5ncycsICdTaG93IHN0b3JhZ2UgcGF0aCcpfX08L2xhYmVsPlxuXHRcdFx0XHQ8L2Rpdj5cblx0XHRcdDwvdGVtcGxhdGU+XG5cdFx0PC9hcHAtbmF2aWdhdGlvbj5cblx0XHQ8dXNlci1saXN0IDp1c2Vycz1cInVzZXJzXCIgOnNob3dDb25maWc9XCJzaG93Q29uZmlnXCIgOnNlbGVjdGVkR3JvdXA9XCJzZWxlY3RlZEdyb3VwXCIgLz5cblx0PC9kaXY+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0PlxuaW1wb3J0IGFwcE5hdmlnYXRpb24gZnJvbSAnLi4vY29tcG9uZW50cy9hcHBOYXZpZ2F0aW9uJztcbmltcG9ydCB1c2VyTGlzdCBmcm9tICcuLi9jb21wb25lbnRzL3VzZXJMaXN0JztcbmltcG9ydCBWdWUgZnJvbSAndnVlJztcbmltcG9ydCBWdWVMb2NhbFN0b3JhZ2UgZnJvbSAndnVlLWxvY2Fsc3RvcmFnZSdcbmltcG9ydCBNdWx0aXNlbGVjdCBmcm9tICd2dWUtbXVsdGlzZWxlY3QnO1xuaW1wb3J0IGFwaSBmcm9tICcuLi9zdG9yZS9hcGknO1xuXG5WdWUudXNlKFZ1ZUxvY2FsU3RvcmFnZSlcblZ1ZS51c2UoVnVlTG9jYWxTdG9yYWdlKVxuXG5leHBvcnQgZGVmYXVsdCB7XG5cdG5hbWU6ICdVc2VycycsXG5cdHByb3BzOiBbJ3NlbGVjdGVkR3JvdXAnXSxcblx0Y29tcG9uZW50czoge1xuXHRcdGFwcE5hdmlnYXRpb24sXG5cdFx0dXNlckxpc3QsXG5cdFx0TXVsdGlzZWxlY3Rcblx0fSxcblx0YmVmb3JlTW91bnQoKSB7XG5cdFx0dGhpcy4kc3RvcmUuY29tbWl0KCdpbml0R3JvdXBzJywge1xuXHRcdFx0Z3JvdXBzOiB0aGlzLiRzdG9yZS5nZXR0ZXJzLmdldFNlcnZlckRhdGEuZ3JvdXBzLFxuXHRcdFx0b3JkZXJCeTogdGhpcy4kc3RvcmUuZ2V0dGVycy5nZXRTZXJ2ZXJEYXRhLnNvcnRHcm91cHMsXG5cdFx0XHR1c2VyQ291bnQ6IHRoaXMuJHN0b3JlLmdldHRlcnMuZ2V0U2VydmVyRGF0YS51c2VyQ291bnRcblx0XHR9KTtcblx0XHR0aGlzLiRzdG9yZS5kaXNwYXRjaCgnZ2V0UGFzc3dvcmRQb2xpY3lNaW5MZW5ndGgnKTtcblx0fSxcblx0ZGF0YSgpIHtcblx0XHRyZXR1cm4ge1xuXHRcdFx0Ly8gZGVmYXVsdCBxdW90YSBpcyB1bmxpbWl0ZWRcblx0XHRcdHVubGltaXRlZFF1b3RhOiB7aWQ6J2RlZmF1bHQnLCBsYWJlbDp0KCdzZXR0aW5ncycsICdVbmxpbWl0ZWQnKX0sXG5cdFx0XHQvLyB0ZW1wb3JhcnkgdmFsdWUgdXNlZCBmb3IgbXVsdGlzZWxlY3QgY2hhbmdlXG5cdFx0XHRzZWxlY3RlZFF1b3RhOiBmYWxzZSxcblx0XHRcdHNob3dDb25maWc6IHtcblx0XHRcdFx0c2hvd1N0b3JhZ2VQYXRoOiBmYWxzZSxcblx0XHRcdFx0c2hvd1VzZXJCYWNrZW5kOiBmYWxzZSxcblx0XHRcdFx0c2hvd0xhc3RMb2dpbjogZmFsc2UsXG5cdFx0XHRcdHNob3dOZXdVc2VyRm9ybTogZmFsc2UsXG5cdFx0XHRcdHNob3dMYW5ndWFnZXM6IGZhbHNlXG5cdFx0XHR9XG5cdFx0fVxuXHR9LFxuXHRtZXRob2RzOiB7XG5cdFx0Z2V0TG9jYWxzdG9yYWdlKGtleSkge1xuXHRcdFx0Ly8gZm9yY2UgaW5pdGlhbGl6YXRpb25cblx0XHRcdHRoaXMuc2hvd0NvbmZpZ1trZXldID0gdGhpcy4kbG9jYWxTdG9yYWdlLmdldChrZXkpID09PSAndHJ1ZSc7XG5cdFx0XHRyZXR1cm4gdGhpcy5zaG93Q29uZmlnW2tleV07XG5cdFx0fSxcblx0XHRzZXRMb2NhbFN0b3JhZ2Uoa2V5LCBzdGF0dXMpIHtcblx0XHRcdHRoaXMuc2hvd0NvbmZpZ1trZXldID0gc3RhdHVzO1xuXHRcdFx0dGhpcy4kbG9jYWxTdG9yYWdlLnNldChrZXksIHN0YXR1cyk7XG5cdFx0XHRyZXR1cm4gc3RhdHVzO1xuXHRcdH0sXG5cdFx0cmVtb3ZlR3JvdXAoZ3JvdXBpZCkge1xuXHRcdFx0bGV0IHNlbGYgPSB0aGlzO1xuXHRcdFx0Ly8gVE9ETyBtaWdyYXRlIHRvIGEgdnVlIGpzIGNvbmZpcm0gZGlhbG9nIGNvbXBvbmVudCBcblx0XHRcdE9DLmRpYWxvZ3MuY29uZmlybShcblx0XHRcdFx0dCgnc2V0dGluZ3MnLCAnWW91IGFyZSBhYm91dCB0byByZW1vdmUgdGhlIGdyb3VwIHtncm91cH0uIFRoZSB1c2VycyB3aWxsIE5PVCBiZSBkZWxldGVkLicsIHtncm91cDogZ3JvdXBpZH0pLFxuXHRcdFx0XHR0KCdzZXR0aW5ncycsJ1BsZWFzZSBjb25maXJtIHRoZSBncm91cCByZW1vdmFsICcpLFxuXHRcdFx0XHRmdW5jdGlvbiAoc3VjY2Vzcykge1xuXHRcdFx0XHRcdGlmIChzdWNjZXNzKSB7XG5cdFx0XHRcdFx0XHRzZWxmLiRzdG9yZS5kaXNwYXRjaCgncmVtb3ZlR3JvdXAnLCBncm91cGlkKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdCk7XG5cdFx0fSxcblxuXHRcdC8qKlxuXHRcdCAqIERpc3BhdGNoIGRlZmF1bHQgcXVvdGEgc2V0IHJlcXVlc3Rcblx0XHQgKiBcblx0XHQgKiBAcGFyYW0ge3N0cmluZ3xPYmplY3R9IHF1b3RhIFF1b3RhIGluIHJlYWRhYmxlIGZvcm1hdCAnNSBHQicgb3IgT2JqZWN0IHtpZDogJzUgR0InLCBsYWJlbDogJzVHQid9XG5cdFx0ICogQHJldHVybnMge3N0cmluZ31cblx0XHQgKi9cblx0XHRzZXREZWZhdWx0UXVvdGEocXVvdGEgPSAnbm9uZScpIHtcblx0XHRcdHRoaXMuJHN0b3JlLmRpc3BhdGNoKCdzZXRBcHBDb25maWcnLCB7XG5cdFx0XHRcdGFwcDogJ2ZpbGVzJyxcblx0XHRcdFx0a2V5OiAnZGVmYXVsdF9xdW90YScsXG5cdFx0XHRcdC8vIGVuc3VyZSB3ZSBvbmx5IHNlbmQgdGhlIHByZXNldCBpZFxuXHRcdFx0XHR2YWx1ZTogcXVvdGEuaWQgPyBxdW90YS5pZCA6IHF1b3RhXG5cdFx0XHR9KS50aGVuKCgpID0+IHtcblx0XHRcdFx0aWYgKHR5cGVvZiBxdW90YSAhPT0gJ29iamVjdCcpIHtcblx0XHRcdFx0XHRxdW90YSA9IHtpZDogcXVvdGEsIGxhYmVsOiBxdW90YX07XG5cdFx0XHRcdH1cblx0XHRcdFx0dGhpcy5kZWZhdWx0UXVvdGEgPSBxdW90YTtcblx0XHRcdH0pO1xuXHRcdH0sXG5cblx0XHQvKipcblx0XHQgKiBWYWxpZGF0ZSBxdW90YSBzdHJpbmcgdG8gbWFrZSBzdXJlIGl0J3MgYSB2YWxpZCBodW1hbiBmaWxlIHNpemVcblx0XHQgKiBcblx0XHQgKiBAcGFyYW0ge3N0cmluZ30gcXVvdGEgUXVvdGEgaW4gcmVhZGFibGUgZm9ybWF0ICc1IEdCJ1xuXHRcdCAqIEByZXR1cm5zIHtQcm9taXNlfGJvb2xlYW59XG5cdFx0ICovXG5cdFx0dmFsaWRhdGVRdW90YShxdW90YSkge1xuXHRcdFx0Ly8gb25seSB1c2VkIGZvciBuZXcgcHJlc2V0cyBzZW50IHRocm91Z2ggQFRhZ1xuXHRcdFx0bGV0IHZhbGlkUXVvdGEgPSBPQy5VdGlsLmNvbXB1dGVyRmlsZVNpemUocXVvdGEpO1xuXHRcdFx0aWYgKHZhbGlkUXVvdGEgPT09IDApIHtcblx0XHRcdFx0cmV0dXJuIHRoaXMuc2V0RGVmYXVsdFF1b3RhKCdub25lJyk7XG5cdFx0XHR9IGVsc2UgaWYgKHZhbGlkUXVvdGEgIT09IG51bGwpIHtcblx0XHRcdFx0Ly8gdW5pZnkgZm9ybWF0IG91dHB1dFxuXHRcdFx0XHRyZXR1cm4gdGhpcy5zZXREZWZhdWx0UXVvdGEoT0MuVXRpbC5odW1hbkZpbGVTaXplKE9DLlV0aWwuY29tcHV0ZXJGaWxlU2l6ZShxdW90YSkpKTtcblx0XHRcdH1cblx0XHRcdC8vIGlmIG5vIHZhbGlkIGRvIG5vdCBjaGFuZ2Vcblx0XHRcdHJldHVybiBmYWxzZTtcblx0XHR9LFxuXHR9LFxuXHRjb21wdXRlZDoge1xuXHRcdHVzZXJzKCkge1xuXHRcdFx0cmV0dXJuIHRoaXMuJHN0b3JlLmdldHRlcnMuZ2V0VXNlcnM7XG5cdFx0fSxcblx0XHRsb2FkaW5nKCkge1xuXHRcdFx0cmV0dXJuIE9iamVjdC5rZXlzKHRoaXMudXNlcnMpLmxlbmd0aCA9PT0gMDtcblx0XHR9LFxuXHRcdHVzZXJzT2Zmc2V0KCkge1xuXHRcdFx0cmV0dXJuIHRoaXMuJHN0b3JlLmdldHRlcnMuZ2V0VXNlcnNPZmZzZXQ7XG5cdFx0fSxcblx0XHR1c2Vyc0xpbWl0KCkge1xuXHRcdFx0cmV0dXJuIHRoaXMuJHN0b3JlLmdldHRlcnMuZ2V0VXNlcnNMaW1pdDtcblx0XHR9LFxuXG5cdFx0Ly8gTG9jYWwgc2V0dGluZ3Ncblx0XHRzaG93TGFuZ3VhZ2VzOiB7XG5cdFx0XHRnZXQ6IGZ1bmN0aW9uKCkge3JldHVybiB0aGlzLmdldExvY2Fsc3RvcmFnZSgnc2hvd0xhbmd1YWdlcycpfSxcblx0XHRcdHNldDogZnVuY3Rpb24oc3RhdHVzKSB7XG5cdFx0XHRcdHRoaXMuc2V0TG9jYWxTdG9yYWdlKCdzaG93TGFuZ3VhZ2VzJywgc3RhdHVzKTtcblx0XHRcdH1cblx0XHR9LFxuXHRcdHNob3dMYXN0TG9naW46IHtcblx0XHRcdGdldDogZnVuY3Rpb24oKSB7cmV0dXJuIHRoaXMuZ2V0TG9jYWxzdG9yYWdlKCdzaG93TGFzdExvZ2luJyl9LFxuXHRcdFx0c2V0OiBmdW5jdGlvbihzdGF0dXMpIHtcblx0XHRcdFx0dGhpcy5zZXRMb2NhbFN0b3JhZ2UoJ3Nob3dMYXN0TG9naW4nLCBzdGF0dXMpO1xuXHRcdFx0fVxuXHRcdH0sXG5cdFx0c2hvd1VzZXJCYWNrZW5kOiB7XG5cdFx0XHRnZXQ6IGZ1bmN0aW9uKCkge3JldHVybiB0aGlzLmdldExvY2Fsc3RvcmFnZSgnc2hvd1VzZXJCYWNrZW5kJyl9LFxuXHRcdFx0c2V0OiBmdW5jdGlvbihzdGF0dXMpIHtcblx0XHRcdFx0dGhpcy5zZXRMb2NhbFN0b3JhZ2UoJ3Nob3dVc2VyQmFja2VuZCcsIHN0YXR1cyk7XG5cdFx0XHR9XG5cdFx0fSxcblx0XHRzaG93U3RvcmFnZVBhdGg6IHtcblx0XHRcdGdldDogZnVuY3Rpb24oKSB7cmV0dXJuIHRoaXMuZ2V0TG9jYWxzdG9yYWdlKCdzaG93U3RvcmFnZVBhdGgnKX0sXG5cdFx0XHRzZXQ6IGZ1bmN0aW9uKHN0YXR1cykge1xuXHRcdFx0XHR0aGlzLnNldExvY2FsU3RvcmFnZSgnc2hvd1N0b3JhZ2VQYXRoJywgc3RhdHVzKTtcblx0XHRcdH1cblx0XHR9LFxuXG5cdFx0dXNlckNvdW50KCkge1xuXHRcdFx0cmV0dXJuIHRoaXMuJHN0b3JlLmdldHRlcnMuZ2V0VXNlckNvdW50O1xuXHRcdH0sXG5cdFx0c2V0dGluZ3MoKSB7XG5cdFx0XHRyZXR1cm4gdGhpcy4kc3RvcmUuZ2V0dGVycy5nZXRTZXJ2ZXJEYXRhO1xuXHRcdH0sXG5cblx0XHQvLyBkZWZhdWx0IHF1b3RhXG5cdFx0cXVvdGFPcHRpb25zKCkge1xuXHRcdFx0Ly8gY29udmVydCB0aGUgcHJlc2V0IGFycmF5IGludG8gb2JqZWN0c1xuXHRcdFx0bGV0IHF1b3RhUHJlc2V0ID0gdGhpcy5zZXR0aW5ncy5xdW90YVByZXNldC5yZWR1Y2UoKGFjYywgY3VyKSA9PiBhY2MuY29uY2F0KHtpZDpjdXIsIGxhYmVsOmN1cn0pLCBbXSk7XG5cdFx0XHQvLyBhZGQgZGVmYXVsdCBwcmVzZXRzXG5cdFx0XHRxdW90YVByZXNldC51bnNoaWZ0KHRoaXMudW5saW1pdGVkUXVvdGEpO1xuXHRcdFx0cmV0dXJuIHF1b3RhUHJlc2V0O1xuXHRcdH0sXG5cdFx0Ly8gbWFwcGluZyBzYXZlZCB2YWx1ZXMgdG8gb2JqZWN0c1xuXHRcdGRlZmF1bHRRdW90YToge1xuXHRcdFx0Z2V0OiBmdW5jdGlvbigpIHtcblx0XHRcdFx0aWYgKHRoaXMuc2VsZWN0ZWRRdW90YSAhPT0gZmFsc2UpIHtcblx0XHRcdFx0XHRyZXR1cm4gdGhpcy5zZWxlY3RlZFF1b3RhO1xuXHRcdFx0XHR9XG5cdFx0XHRcdGlmIChPQy5VdGlsLmNvbXB1dGVyRmlsZVNpemUodGhpcy5zZXR0aW5ncy5kZWZhdWx0UXVvdGEpID4gMCkge1xuXHRcdFx0XHRcdC8vIGlmIHZhbHVlIGlzIHZhbGlkLCBsZXQncyBtYXAgdGhlIHF1b3RhT3B0aW9ucyBvciByZXR1cm4gY3VzdG9tIHF1b3RhXG5cdFx0XHRcdFx0cmV0dXJuIHtpZDp0aGlzLnNldHRpbmdzLmRlZmF1bHRRdW90YSwgbGFiZWw6dGhpcy5zZXR0aW5ncy5kZWZhdWx0UXVvdGF9O1xuXHRcdFx0XHR9XG5cdFx0XHRcdHJldHVybiB0aGlzLnVubGltaXRlZFF1b3RhOyAvLyB1bmxpbWl0ZWRcblx0XHRcdH0sXG5cdFx0XHRzZXQ6IGZ1bmN0aW9uKHF1b3RhKSB7XG5cdFx0XHRcdHRoaXMuc2VsZWN0ZWRRdW90YSA9ICBxdW90YTtcblx0XHRcdH1cblx0XHRcdFxuXHRcdH0sXG5cblx0XHQvLyBCVUlMRCBBUFAgTkFWSUdBVElPTiBNRU5VIE9CSkVDVFxuXHRcdG1lbnUoKSB7XG5cdFx0XHQvLyBEYXRhIHByb3ZpZGVkIHBocCBzaWRlXG5cdFx0XHRsZXQgZ3JvdXBzID0gdGhpcy4kc3RvcmUuZ2V0dGVycy5nZXRHcm91cHM7XG5cdFx0XHRncm91cHMgPSBBcnJheS5pc0FycmF5KGdyb3VwcykgPyBncm91cHMgOiBbXTtcblxuXHRcdFx0Ly8gTWFwIGdyb3Vwc1xuXHRcdFx0Z3JvdXBzID0gZ3JvdXBzLm1hcChncm91cCA9PiB7XG5cdFx0XHRcdGxldCBpdGVtID0ge307XG5cdFx0XHRcdGl0ZW0uaWQgPSBncm91cC5pZC5yZXBsYWNlKCcgJywgJ18nKTtcblx0XHRcdFx0aXRlbS5jbGFzc2VzID0gW107XHRcdFx0XHRcdFx0XHQvLyBlbXB0eSBjbGFzc2VzLCBhY3RpdmUgd2lsbCBiZSBzZXQgbGF0ZXJcblx0XHRcdFx0aXRlbS5yb3V0ZXIgPSB7XHRcdFx0XHRcdFx0XHRcdC8vIHJvdXRlciBsaW5rIHRvXG5cdFx0XHRcdFx0bmFtZTogJ2dyb3VwJyxcblx0XHRcdFx0XHRwYXJhbXM6IHtzZWxlY3RlZEdyb3VwOiBncm91cC5pZH1cblx0XHRcdFx0fTtcblx0XHRcdFx0aXRlbS50ZXh0ID0gZ3JvdXAubmFtZTtcdFx0XHRcdFx0XHQvLyBncm91cCBuYW1lXG5cdFx0XHRcdGl0ZW0udXRpbHMgPSB7Y291bnRlcjogZ3JvdXAudXNlcmNvdW50fTtcdC8vIHVzZXJzIGNvdW50XG5cblx0XHRcdFx0aWYgKGl0ZW0uaWQgIT09ICdhZG1pbicgJiYgaXRlbS5pZCAhPT0gJ2Rpc2FibGVkJykge1xuXHRcdFx0XHRcdC8vIGFkZCBkZWxldGUgYnV0dG9uIG9uIHJlYWwgZ3JvdXBzXG5cdFx0XHRcdFx0bGV0IHNlbGYgPSB0aGlzO1xuXHRcdFx0XHRcdGl0ZW0udXRpbHMuYWN0aW9ucyA9IFt7XG5cdFx0XHRcdFx0XHRpY29uOiAnaWNvbi1kZWxldGUnLFxuXHRcdFx0XHRcdFx0dGV4dDogdCgnc2V0dGluZ3MnLCAnUmVtb3ZlIGdyb3VwJyksXG5cdFx0XHRcdFx0XHRhY3Rpb246IGZ1bmN0aW9uKCkge3NlbGYucmVtb3ZlR3JvdXAoaXRlbS5pZCl9XG5cdFx0XHRcdFx0fV07XG5cdFx0XHRcdH07XG5cdFx0XHRcdHJldHVybiBpdGVtO1xuXHRcdFx0fSk7XG5cblx0XHRcdC8vIEFkanVzdCBkYXRhXG5cdFx0XHRsZXQgYWRtaW5Hcm91cCA9IGdyb3Vwcy5maW5kKGdyb3VwID0+IGdyb3VwLmlkID09ICdhZG1pbicpO1xuXHRcdFx0ICAgbGV0IGRpc2FibGVkR3JvdXBJbmRleCA9IGdyb3Vwcy5maW5kSW5kZXgoZ3JvdXAgPT4gZ3JvdXAuaWQgPT0gJ2Rpc2FibGVkJyk7XG5cdFx0XHQgICBsZXQgZGlzYWJsZWRHcm91cCA9IGdyb3Vwc1tkaXNhYmxlZEdyb3VwSW5kZXhdO1xuXHRcdFx0aWYgKGFkbWluR3JvdXAudGV4dCkge1xuXHRcdFx0XHRhZG1pbkdyb3VwLnRleHQgPSB0KCdzZXR0aW5ncycsICdBZG1pbnMnKTsgLy8gcmVuYW1lIGFkbWluIGdyb3VwXG5cdFx0XHR9XG5cdFx0XHRpZiAoZGlzYWJsZWRHcm91cC50ZXh0KSB7XG5cdFx0XHRcdGRpc2FibGVkR3JvdXAudGV4dCA9IHQoJ3NldHRpbmdzJywgJ0Rpc2FibGVkIHVzZXJzJyk7IC8vIHJlbmFtZSBkaXNhYmxlZCBncm91cFxuXHRcdFx0XHRpZiAoZGlzYWJsZWRHcm91cC51dGlscy5jb3VudGVyID09PSAwKSB7XG5cdFx0XHRcdFx0Z3JvdXBzLnNwbGljZShkaXNhYmxlZEdyb3VwSW5kZXgsIDEpOyAvLyByZW1vdmUgZGlzYWJsZWQgaWYgZW1wdHlcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQvLyBBZGQgZXZlcnlvbmUgZ3JvdXBcblx0XHRcdGdyb3Vwcy51bnNoaWZ0KHtcblx0XHRcdFx0aWQ6ICdldmVyeW9uZScsXG5cdFx0XHRcdGNsYXNzZXM6IFtdLFxuXHRcdFx0XHRyb3V0ZXI6IHtuYW1lOid1c2Vycyd9LFxuXHRcdFx0XHR0ZXh0OiB0KCdzZXR0aW5ncycsICdFdmVyeW9uZScpLFxuXHRcdFx0XHR1dGlsczoge2NvdW50ZXI6IHRoaXMudXNlckNvdW50fVxuXHRcdFx0fSk7XG5cblx0XHRcdC8vIFNldCBjdXJyZW50IGdyb3VwIGFzIGFjdGl2ZVxuXHRcdFx0bGV0IGFjdGl2ZUdyb3VwID0gZ3JvdXBzLmZpbmRJbmRleChncm91cCA9PiBncm91cC5pZCA9PT0gdGhpcy5zZWxlY3RlZEdyb3VwKTtcblx0XHRcdGlmIChhY3RpdmVHcm91cCA+PSAwKSB7XG5cdFx0XHRcdGdyb3Vwc1thY3RpdmVHcm91cF0uY2xhc3Nlcy5wdXNoKCdhY3RpdmUnKTtcblx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdGdyb3Vwc1swXS5jbGFzc2VzLnB1c2goJ2FjdGl2ZScpO1xuXHRcdFx0fVxuXG5cdFx0XHQvLyBSZXR1cm5cblx0XHRcdHJldHVybiB7XG5cdFx0XHRcdGlkOiAndXNlcmdyb3VwbGlzdCcsXG5cdFx0XHRcdG5ldzoge1xuXHRcdFx0XHRcdGlkOiduZXctdXNlci1idXR0b24nLFxuXHRcdFx0XHRcdHRleHQ6IHQoJ3NldHRpbmdzJywnTmV3IHVzZXInKSxcblx0XHRcdFx0XHRpY29uOiAnaWNvbi1hZGQnLFxuXHRcdFx0XHRcdGFjdGlvbjogKCkgPT4gdGhpcy5zaG93Q29uZmlnLnNob3dOZXdVc2VyRm9ybT0hdGhpcy5zaG93Q29uZmlnLnNob3dOZXdVc2VyRm9ybVxuXHRcdFx0XHR9LFxuXHRcdFx0XHRpdGVtczogZ3JvdXBzXG5cdFx0XHR9XG5cdFx0fSxcblx0fVxufVxuPC9zY3JpcHQ+XG5cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gc3JjL3ZpZXdzL1VzZXJzLnZ1ZSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///9\n"); /***/ }), /* 10 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__popoverMenu__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vue_click_outside__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vue_click_outside___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_vue_click_outside__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_vue__ = __webpack_require__(3);\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tname: 'navigationItem',\n\tprops: ['item'],\n\tcomponents: {\n\t\tpopoverMenu: __WEBPACK_IMPORTED_MODULE_0__popoverMenu__[\"a\" /* default */]\n\t},\n\tdirectives: {\n\t\tClickOutside: __WEBPACK_IMPORTED_MODULE_1_vue_click_outside___default.a\n\t},\n\tdata: function data() {\n\t\treturn {\n\t\t\topenedMenu: false\n\t\t};\n\t},\n\n\tmethods: {\n\t\tshowMen: function showMen() {\n\t\t\tthis.openedMenu = true;\n\t\t},\n\t\thideMenu: function hideMenu() {\n\t\t\tthis.openedMenu = false;\n\t\t},\n\t\ttoggleCollapse: function toggleCollapse() {\n\t\t\t// if item.opened isn't set, Vue won't trigger view updates https://vuejs.org/v2/api/#Vue-set\n\t\t\t// ternary is here to detect the undefined state of item.opened\n\t\t\t__WEBPACK_IMPORTED_MODULE_2_vue__[\"a\" /* default */].set(this.item, 'opened', this.item.opened ? !this.item.opened : true);\n\t\t},\n\t\tcancelEdit: function cancelEdit() {\n\t\t\t// remove the editing class\n\t\t\tif (Array.isArray(this.item.classes)) this.item.classes = this.item.classes.filter(function (item) {\n\t\t\t\treturn item !== 'editing';\n\t\t\t});\n\t\t}\n\t},\n\tmounted: function mounted() {\n\t\t// prevent click outside event with popupItem.\n\t\tthis.popupItem = this.$el;\n\t}\n});\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vc3JjL2NvbXBvbmVudHMvYXBwTmF2aWdhdGlvbi9uYXZpZ2F0aW9uSXRlbS52dWU/OWVmZiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBMkVBO0FBQ0E7QUFDQTs7QUFFQTtPQUVBO1NBQ0E7O0FBR0E7QUFGQTs7QUFLQTtBQUZBO3VCQUdBOztlQUdBO0FBRkE7QUFHQTs7OzhCQUVBO3FCQUNBO0FBQ0E7Z0NBQ0E7cUJBQ0E7QUFDQTs0Q0FDQTtBQUNBO0FBQ0E7d0hBQ0E7QUFDQTtvQ0FDQTtBQUNBOytCQUNBO29CQUNBOztBQUVBO0FBakJBOzZCQWtCQTtBQUNBO3dCQUNBO0FBQ0E7QUFuQ0EiLCJmaWxlIjoiMTAuanMiLCJzb3VyY2VzQ29udGVudCI6WyI8dGVtcGxhdGU+XG5cdDxsaSA6aWQ9XCJpdGVtLmlkXCIgOmNsYXNzPVwiW3snaWNvbi1sb2FkaW5nLXNtYWxsJzogaXRlbS5sb2FkaW5nLCAnb3Blbic6IGl0ZW0ub3BlbmVkLCAnY29sbGFwc2libGUnOiBpdGVtLmNvbGxhcHNpYmxlJiZpdGVtLmNoaWxkcmVuJiZpdGVtLmNoaWxkcmVuLmxlbmd0aD4wIH0sIGl0ZW0uY2xhc3Nlc11cIj5cblxuXHRcdDwhLS0gQnVsbGV0IC0tPlxuXHRcdDxkaXYgdi1pZj1cIml0ZW0uYnVsbGV0XCIgY2xhc3M9XCJhcHAtbmF2aWdhdGlvbi1lbnRyeS1idWxsZXRcIiA6c3R5bGU9XCJ7IGJhY2tncm91bmRDb2xvcjogaXRlbS5idWxsZXQgfVwiPjwvZGl2PlxuXG5cdFx0PCEtLSBNYWluIGxpbmsgLS0+XG5cdFx0PGEgdi1pZj1cIml0ZW0uaHJlZlwiIDpocmVmPVwiKGl0ZW0uaHJlZikgPyBpdGVtLmhyZWYgOiAnIycgXCIgQGNsaWNrPVwidG9nZ2xlQ29sbGFwc2VcIiA6Y2xhc3M9XCJpdGVtLmljb25cIiA+XG5cdFx0XHQ8aW1nIHYtaWY9XCJpdGVtLmljb25VcmxcIiA6YWx0PVwiaXRlbS50ZXh0XCIgOnNyYz1cIml0ZW0uaWNvblVybFwiPlxuXHRcdFx0e3tpdGVtLnRleHR9fVxuXHRcdDwvYT5cblxuXHRcdDwhLS0gUm91dGVyIGxpbmsgaWYgc3BlY2lmaWVkLiBocmVmIE9SIHJvdXRlciAtLT5cblx0XHQ8cm91dGVyLWxpbmsgOnRvPVwiaXRlbS5yb3V0ZXJcIiB2LWVsc2UtaWY9XCJpdGVtLnJvdXRlclwiIDpjbGFzcz1cIml0ZW0uaWNvblwiID5cblx0XHRcdDxpbWcgdi1pZj1cIml0ZW0uaWNvblVybFwiIDphbHQ9XCJpdGVtLnRleHRcIiA6c3JjPVwiaXRlbS5pY29uVXJsXCI+XG5cdFx0XHR7e2l0ZW0udGV4dH19XG5cdFx0PC9yb3V0ZXItbGluaz5cdFxuXG5cdFx0PCEtLSBQb3BvdmVyLCBjb3VudGVyIGFuZCBidXR0b24ocykgLS0+XG5cdFx0PGRpdiB2LWlmPVwiaXRlbS51dGlsc1wiIGNsYXNzPVwiYXBwLW5hdmlnYXRpb24tZW50cnktdXRpbHNcIj5cblx0XHRcdDx1bD5cblx0XHRcdFx0PCEtLSBjb3VudGVyIC0tPlxuXHRcdFx0XHQ8bGkgdi1pZj1cIk51bWJlci5pc0ludGVnZXIoaXRlbS51dGlscy5jb3VudGVyKVwiXG5cdFx0XHRcdFx0Y2xhc3M9XCJhcHAtbmF2aWdhdGlvbi1lbnRyeS11dGlscy1jb3VudGVyXCI+e3tpdGVtLnV0aWxzLmNvdW50ZXJ9fTwvbGk+XG5cblx0XHRcdFx0PCEtLSBmaXJzdCBhY3Rpb24gaWYgb25seSBvbmUgYWN0aW9uIGFuZCBjb3VudGVyIC0tPlxuXHRcdFx0XHQ8bGkgdi1pZj1cIml0ZW0udXRpbHMuYWN0aW9ucyAmJiBpdGVtLnV0aWxzLmFjdGlvbnMubGVuZ3RoID09PSAxICYmIE51bWJlci5pc0ludGVnZXIoaXRlbS51dGlscy5jb3VudGVyKVwiXG5cdFx0XHRcdFx0Y2xhc3M9XCJhcHAtbmF2aWdhdGlvbi1lbnRyeS11dGlscy1tZW51LWJ1dHRvblwiPlxuXHRcdFx0XHRcdDxidXR0b24gQGNsaWNrPVwiaXRlbS51dGlscy5hY3Rpb25zWzBdLmFjdGlvblwiIDpjbGFzcz1cIml0ZW0udXRpbHMuYWN0aW9uc1swXS5pY29uXCIgOnRpdGxlPVwiaXRlbS51dGlscy5hY3Rpb25zWzBdLnRleHRcIj48L2J1dHRvbj5cblx0XHRcdFx0PC9saT5cblxuXHRcdFx0XHQ8IS0tIHNlY29uZCBhY3Rpb24gb25seSB0d28gYWN0aW9ucyBhbmQgbm8gY291bnRlciAtLT5cblx0XHRcdFx0PGxpIHYtZWxzZS1pZj1cIml0ZW0udXRpbHMuYWN0aW9ucyAmJiBpdGVtLnV0aWxzLmFjdGlvbnMubGVuZ3RoID09PSAyICYmICFOdW1iZXIuaXNJbnRlZ2VyKGl0ZW0udXRpbHMuY291bnRlcilcIlxuXHRcdFx0XHRcdHYtZm9yPVwiYWN0aW9uIGluIGl0ZW0udXRpbHMuYWN0aW9uc1wiIDprZXk9XCJhY3Rpb24uYWN0aW9uXCJcblx0XHRcdFx0XHRjbGFzcz1cImFwcC1uYXZpZ2F0aW9uLWVudHJ5LXV0aWxzLW1lbnUtYnV0dG9uXCI+XG5cdFx0XHRcdFx0PGJ1dHRvbiBAY2xpY2s9XCJhY3Rpb24uYWN0aW9uXCIgOmNsYXNzPVwiYWN0aW9uLmljb25cIiA6dGl0bGU9XCJhY3Rpb24udGV4dFwiPjwvYnV0dG9uPlxuXHRcdFx0XHQ8L2xpPlxuXG5cdFx0XHRcdDwhLS0gbWVudSBpZiBvbmx5IGF0IGxlYXN0IG9uZSBhY3Rpb24gYW5kIGNvdW50ZXIgT1IgdHdvIGFjdGlvbnMgYW5kIG5vIGNvdW50ZXItLT5cblx0XHRcdFx0PGxpIHYtZWxzZS1pZj1cIml0ZW0udXRpbHMuYWN0aW9ucyAmJiBpdGVtLnV0aWxzLmFjdGlvbnMubGVuZ3RoID4gMSAmJiAoTnVtYmVyLmlzSW50ZWdlcihpdGVtLnV0aWxzLmNvdW50ZXIpIHx8IGl0ZW0udXRpbHMuYWN0aW9ucy5sZW5ndGggPiAyKVwiXG5cdFx0XHRcdFx0Y2xhc3M9XCJhcHAtbmF2aWdhdGlvbi1lbnRyeS11dGlscy1tZW51LWJ1dHRvblwiPlxuXHRcdFx0XHRcdDxidXR0b24gdi1jbGljay1vdXRzaWRlPVwiaGlkZU1lbnVcIiBAY2xpY2s9XCJzaG93TWVudVwiID48L2J1dHRvbj5cblx0XHRcdFx0PC9saT5cblx0XHRcdDwvdWw+XG5cdFx0PC9kaXY+XG5cblx0XHQ8IS0tIGlmIG1vcmUgdGhhbiAyIGFjdGlvbnMgb3IgbW9yZSB0aGFuIDEgYWN0aW9ucyB3aXRoIGNvdW50ZXIgLS0+XG5cdFx0PGRpdiB2LWlmPVwiaXRlbS51dGlscyAmJiBpdGVtLnV0aWxzLmFjdGlvbnMgJiYgaXRlbS51dGlscy5hY3Rpb25zLmxlbmd0aCA+IDEgJiYgKE51bWJlci5pc0ludGVnZXIoaXRlbS51dGlscy5jb3VudGVyKSB8fCBpdGVtLnV0aWxzLmFjdGlvbnMubGVuZ3RoID4gMilcIlxuXHRcdFx0IGNsYXNzPVwiYXBwLW5hdmlnYXRpb24tZW50cnktbWVudVwiIDpjbGFzcz1cInsgJ29wZW4nOiBvcGVuZWRNZW51IH1cIj5cblx0XHRcdCA8cG9wb3Zlci1tZW51IDptZW51PVwiaXRlbS51dGlscy5hY3Rpb25zXCIvPlxuXHRcdDwvZGl2PlxuXG5cdFx0PCEtLSB1bmRvIGVudHJ5IC0tPlxuXHRcdDxkaXYgY2xhc3M9XCJhcHAtbmF2aWdhdGlvbi1lbnRyeS1kZWxldGVkXCIgdi1pZj1cIml0ZW0udW5kb1wiPlxuXHRcdFx0PGRpdiBjbGFzcz1cImFwcC1uYXZpZ2F0aW9uLWVudHJ5LWRlbGV0ZWQtZGVzY3JpcHRpb25cIj57e2l0ZW0udW5kby50ZXh0fX08L2Rpdj5cblx0XHRcdDxidXR0b24gY2xhc3M9XCJhcHAtbmF2aWdhdGlvbi1lbnRyeS1kZWxldGVkLWJ1dHRvbiBpY29uLWhpc3RvcnlcIiA6dGl0bGU9XCJ0KCdzZXR0aW5ncycsICdVbmRvJylcIj48L2J1dHRvbj5cblx0XHQ8L2Rpdj5cblxuXHRcdDwhLS0gZWRpdCBlbnRyeSAtLT5cblx0XHQ8ZGl2IGNsYXNzPVwiYXBwLW5hdmlnYXRpb24tZW50cnktZWRpdFwiIHYtaWY9XCJpdGVtLmVkaXRcIj5cblx0XHRcdDxmb3JtPlxuXHRcdFx0XHQ8aW5wdXQgdHlwZT1cInRleHRcIiB2LW1vZGVsPVwiaXRlbS50ZXh0XCI+XG5cdFx0XHRcdDxpbnB1dCB0eXBlPVwic3VibWl0XCIgdmFsdWU9XCJcIiBjbGFzcz1cImljb24tY29uZmlybVwiPlxuXHRcdFx0XHQ8aW5wdXQgdHlwZT1cInN1Ym1pdFwiIHZhbHVlPVwiXCIgY2xhc3M9XCJpY29uLWNsb3NlXCIgQGNsaWNrLnN0b3AucHJldmVudD1cImNhbmNlbEVkaXRcIj5cblx0XHRcdDwvZm9ybT5cblx0XHQ8L2Rpdj5cblxuXHRcdDwhLS0gaWYgdGhlIGl0ZW0gaGFzIGNoaWxkcmVuLCBpbmplY3QgdGhlIGNvbXBvbmVudCB3aXRoIHByb3BlciBkYXRhIC0tPlxuXHRcdDx1bCB2LWlmPVwiaXRlbS5jaGlsZHJlblwiPlxuXHRcdFx0PG5hdmlnYXRpb24taXRlbSB2LWZvcj1cIihpdGVtLCBrZXkpIGluIGl0ZW0uY2hpbGRyZW5cIiA6aXRlbT1cIml0ZW1cIiA6a2V5PVwia2V5XCIgLz5cblx0XHQ8L3VsPlxuXHQ8L2xpPlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdD5cbmltcG9ydCBwb3BvdmVyTWVudSBmcm9tICcuLi9wb3BvdmVyTWVudSc7XG5pbXBvcnQgQ2xpY2tPdXRzaWRlIGZyb20gJ3Z1ZS1jbGljay1vdXRzaWRlJztcbmltcG9ydCBWdWUgZnJvbSAndnVlJztcblxuZXhwb3J0IGRlZmF1bHQge1xuXHRuYW1lOiAnbmF2aWdhdGlvbkl0ZW0nLFxuXHRwcm9wczogWydpdGVtJ10sXG5cdGNvbXBvbmVudHM6IHtcblx0XHRwb3BvdmVyTWVudVxuXHR9LFxuXHRkaXJlY3RpdmVzOiB7XG5cdFx0Q2xpY2tPdXRzaWRlXG5cdH0sXG5cdGRhdGEoKSB7XG5cdFx0cmV0dXJuIHtcblx0XHRcdG9wZW5lZE1lbnU6IGZhbHNlXG5cdFx0fVxuXHR9LFxuXHRtZXRob2RzOiB7XG5cdFx0c2hvd01lbigpIHtcblx0XHRcdHRoaXMub3BlbmVkTWVudSA9IHRydWU7XG5cdFx0fSxcblx0XHRoaWRlTWVudSgpIHtcblx0XHRcdHRoaXMub3BlbmVkTWVudSA9IGZhbHNlO1xuXHRcdH0sXG5cdFx0dG9nZ2xlQ29sbGFwc2UoKSB7XG5cdFx0XHQvLyBpZiBpdGVtLm9wZW5lZCBpc24ndCBzZXQsIFZ1ZSB3b24ndCB0cmlnZ2VyIHZpZXcgdXBkYXRlcyBodHRwczovL3Z1ZWpzLm9yZy92Mi9hcGkvI1Z1ZS1zZXRcblx0XHRcdC8vIHRlcm5hcnkgaXMgaGVyZSB0byBkZXRlY3QgdGhlIHVuZGVmaW5lZCBzdGF0ZSBvZiBpdGVtLm9wZW5lZFxuXHRcdFx0VnVlLnNldCh0aGlzLml0ZW0sICdvcGVuZWQnLCB0aGlzLml0ZW0ub3BlbmVkID8gIXRoaXMuaXRlbS5vcGVuZWQgOiB0cnVlKTtcblx0XHR9LFxuXHRcdGNhbmNlbEVkaXQoKSB7XG5cdFx0XHQvLyByZW1vdmUgdGhlIGVkaXRpbmcgY2xhc3Ncblx0XHRcdGlmIChBcnJheS5pc0FycmF5KHRoaXMuaXRlbS5jbGFzc2VzKSlcblx0XHRcdFx0dGhpcy5pdGVtLmNsYXNzZXMgPSB0aGlzLml0ZW0uY2xhc3Nlcy5maWx0ZXIoaXRlbSA9PiBpdGVtICE9PSAnZWRpdGluZycpO1xuXHRcdH1cblx0fSxcblx0bW91bnRlZCgpIHtcblx0XHQvLyBwcmV2ZW50IGNsaWNrIG91dHNpZGUgZXZlbnQgd2l0aCBwb3B1cEl0ZW0uXG5cdFx0dGhpcy5wb3B1cEl0ZW0gPSB0aGlzLiRlbDtcblx0fSxcbn1cbjwvc2NyaXB0PlxuXG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIHNyYy9jb21wb25lbnRzL2FwcE5hdmlnYXRpb24vbmF2aWdhdGlvbkl0ZW0udnVlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///10\n"); +eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__appNavigation_navigationItem__ = __webpack_require__(33);\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tname: 'appNavigation',\n\tprops: ['menu'],\n\tcomponents: {\n\t\tnavigationItem: __WEBPACK_IMPORTED_MODULE_0__appNavigation_navigationItem__[\"a\" /* default */]\n\t}\n});\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vc3JjL2NvbXBvbmVudHMvYXBwTmF2aWdhdGlvbi52dWU/ZjYyYyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXNCQTs7QUFFQTtPQUVBO1NBQ0E7O0FBR0E7QUFGQTtBQUhBIiwiZmlsZSI6IjEwLmpzIiwic291cmNlc0NvbnRlbnQiOlsiPHRlbXBsYXRlPlxuXHQ8ZGl2IGlkPVwiYXBwLW5hdmlnYXRpb25cIiA6Y2xhc3M9XCJ7J2ljb24tbG9hZGluZyc6IG1lbnUubG9hZGluZ31cIj5cblx0XHQ8ZGl2IGNsYXNzPVwiYXBwLW5hdmlnYXRpb24tbmV3XCIgdi1pZj1cIm1lbnUubmV3XCI+XG5cdFx0XHQ8YnV0dG9uIHR5cGU9XCJidXR0b25cIiA6aWQ9XCJtZW51Lm5ldy5pZFwiIDpjbGFzcz1cIm1lbnUubmV3Lmljb25cIiBAY2xpY2s9XCJtZW51Lm5ldy5hY3Rpb25cIj57e21lbnUubmV3LnRleHR9fTwvYnV0dG9uPlxuXHRcdDwvZGl2PlxuXHRcdDx1bCA6aWQ9XCJtZW51LmlkXCI+XG5cdFx0XHQ8bmF2aWdhdGlvbi1pdGVtIHYtZm9yPVwiKGl0ZW0sIGtleSkgaW4gbWVudS5pdGVtc1wiIDppdGVtPVwiaXRlbVwiIDprZXk9XCJrZXlcIiAvPlxuXHRcdDwvdWw+XG5cdFx0PGRpdiBpZD1cImFwcC1zZXR0aW5nc1wiPlxuXHRcdFx0PGRpdiBpZD1cImFwcC1zZXR0aW5ncy1oZWFkZXJcIj5cblx0XHRcdFx0PGJ1dHRvbiBjbGFzcz1cInNldHRpbmdzLWJ1dHRvblwiXG5cdFx0XHRcdFx0XHRkYXRhLWFwcHMtc2xpZGUtdG9nZ2xlPVwiI2FwcC1zZXR0aW5ncy1jb250ZW50XCJcblx0XHRcdFx0Pnt7dCgnc2V0dGluZ3MnLCAnU2V0dGluZ3MnKX19PC9idXR0b24+XG5cdFx0XHQ8L2Rpdj5cblx0XHRcdDxkaXYgaWQ9XCJhcHAtc2V0dGluZ3MtY29udGVudFwiPlxuXHRcdFx0XHQ8c2xvdCBuYW1lPVwic2V0dGluZ3MtY29udGVudFwiPjwvc2xvdD5cblx0XHRcdDwvZGl2PlxuXHRcdDwvZGl2PlxuXHQ8L2Rpdj5cbjwvdGVtcGxhdGU+XG5cbjxzY3JpcHQ+XG5pbXBvcnQgbmF2aWdhdGlvbkl0ZW0gZnJvbSAnLi9hcHBOYXZpZ2F0aW9uL25hdmlnYXRpb25JdGVtJztcblxuZXhwb3J0IGRlZmF1bHQge1xuXHRuYW1lOiAnYXBwTmF2aWdhdGlvbicsXG5cdHByb3BzOiBbJ21lbnUnXSxcblx0Y29tcG9uZW50czoge1xuXHRcdG5hdmlnYXRpb25JdGVtXG5cdH1cbn1cbjwvc2NyaXB0PlxuXG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIHNyYy9jb21wb25lbnRzL2FwcE5hdmlnYXRpb24udnVlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///10\n"); /***/ }), /* 11 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_popoverMenu_vue__ = __webpack_require__(12);\n/* unused harmony namespace reexport */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_04ea21c4_hasScoped_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_popoverMenu_vue__ = __webpack_require__(36);\nvar disposed = false\nvar normalizeComponent = __webpack_require__(2)\n/* script */\n\n\n/* template */\n\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_popoverMenu_vue__[\"a\" /* default */],\n __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_04ea21c4_hasScoped_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_popoverMenu_vue__[\"a\" /* default */],\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\nComponent.options.__file = \"src/components/popoverMenu.vue\"\n\n/* hot reload */\nif (false) {(function () {\n var hotAPI = require(\"vue-hot-reload-api\")\n hotAPI.install(require(\"vue\"), false)\n if (!hotAPI.compatible) return\n module.hot.accept()\n if (!module.hot.data) {\n hotAPI.createRecord(\"data-v-04ea21c4\", Component.options)\n } else {\n hotAPI.reload(\"data-v-04ea21c4\", Component.options)\n }\n module.hot.dispose(function (data) {\n disposed = true\n })\n})()}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Component.exports);\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9wb3BvdmVyTWVudS52dWU/NTJhYSJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBO0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ3dLO0FBQ3hLO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxZQUFpQjtBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0gsQ0FBQzs7QUFFRCIsImZpbGUiOiIxMS5qcyIsInNvdXJjZXNDb250ZW50IjpbInZhciBkaXNwb3NlZCA9IGZhbHNlXG52YXIgbm9ybWFsaXplQ29tcG9uZW50ID0gcmVxdWlyZShcIiEuLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvY29tcG9uZW50LW5vcm1hbGl6ZXJcIilcbi8qIHNjcmlwdCAqL1xuZXhwb3J0ICogZnJvbSBcIiEhYmFiZWwtbG9hZGVyIS4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvcj90eXBlPXNjcmlwdCZpbmRleD0wIS4vcG9wb3Zlck1lbnUudnVlXCJcbmltcG9ydCBfX3Z1ZV9zY3JpcHRfXyBmcm9tIFwiISFiYWJlbC1sb2FkZXIhLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yP3R5cGU9c2NyaXB0JmluZGV4PTAhLi9wb3BvdmVyTWVudS52dWVcIlxuLyogdGVtcGxhdGUgKi9cbmltcG9ydCBfX3Z1ZV90ZW1wbGF0ZV9fIGZyb20gXCIhIS4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi90ZW1wbGF0ZS1jb21waWxlci9pbmRleD97XFxcImlkXFxcIjpcXFwiZGF0YS12LTA0ZWEyMWM0XFxcIixcXFwiaGFzU2NvcGVkXFxcIjpmYWxzZSxcXFwiYnVibGVcXFwiOntcXFwidHJhbnNmb3Jtc1xcXCI6e319fSEuLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3I/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vcG9wb3Zlck1lbnUudnVlXCJcbi8qIHRlbXBsYXRlIGZ1bmN0aW9uYWwgKi9cbnZhciBfX3Z1ZV90ZW1wbGF0ZV9mdW5jdGlvbmFsX18gPSBmYWxzZVxuLyogc3R5bGVzICovXG52YXIgX192dWVfc3R5bGVzX18gPSBudWxsXG4vKiBzY29wZUlkICovXG52YXIgX192dWVfc2NvcGVJZF9fID0gbnVsbFxuLyogbW9kdWxlSWRlbnRpZmllciAoc2VydmVyIG9ubHkpICovXG52YXIgX192dWVfbW9kdWxlX2lkZW50aWZpZXJfXyA9IG51bGxcbnZhciBDb21wb25lbnQgPSBub3JtYWxpemVDb21wb25lbnQoXG4gIF9fdnVlX3NjcmlwdF9fLFxuICBfX3Z1ZV90ZW1wbGF0ZV9fLFxuICBfX3Z1ZV90ZW1wbGF0ZV9mdW5jdGlvbmFsX18sXG4gIF9fdnVlX3N0eWxlc19fLFxuICBfX3Z1ZV9zY29wZUlkX18sXG4gIF9fdnVlX21vZHVsZV9pZGVudGlmaWVyX19cbilcbkNvbXBvbmVudC5vcHRpb25zLl9fZmlsZSA9IFwic3JjL2NvbXBvbmVudHMvcG9wb3Zlck1lbnUudnVlXCJcblxuLyogaG90IHJlbG9hZCAqL1xuaWYgKG1vZHVsZS5ob3QpIHsoZnVuY3Rpb24gKCkge1xuICB2YXIgaG90QVBJID0gcmVxdWlyZShcInZ1ZS1ob3QtcmVsb2FkLWFwaVwiKVxuICBob3RBUEkuaW5zdGFsbChyZXF1aXJlKFwidnVlXCIpLCBmYWxzZSlcbiAgaWYgKCFob3RBUEkuY29tcGF0aWJsZSkgcmV0dXJuXG4gIG1vZHVsZS5ob3QuYWNjZXB0KClcbiAgaWYgKCFtb2R1bGUuaG90LmRhdGEpIHtcbiAgICBob3RBUEkuY3JlYXRlUmVjb3JkKFwiZGF0YS12LTA0ZWEyMWM0XCIsIENvbXBvbmVudC5vcHRpb25zKVxuICB9IGVsc2Uge1xuICAgIGhvdEFQSS5yZWxvYWQoXCJkYXRhLXYtMDRlYTIxYzRcIiwgQ29tcG9uZW50Lm9wdGlvbnMpXG4gIH1cbiAgbW9kdWxlLmhvdC5kaXNwb3NlKGZ1bmN0aW9uIChkYXRhKSB7XG4gICAgZGlzcG9zZWQgPSB0cnVlXG4gIH0pXG59KSgpfVxuXG5leHBvcnQgZGVmYXVsdCBDb21wb25lbnQuZXhwb3J0c1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9zcmMvY29tcG9uZW50cy9wb3BvdmVyTWVudS52dWVcbi8vIG1vZHVsZSBpZCA9IDExXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///11\n"); +eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__popoverMenu__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vue_click_outside__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vue_click_outside___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_vue_click_outside__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_vue__ = __webpack_require__(3);\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tname: 'navigationItem',\n\tprops: ['item'],\n\tcomponents: {\n\t\tpopoverMenu: __WEBPACK_IMPORTED_MODULE_0__popoverMenu__[\"a\" /* default */]\n\t},\n\tdirectives: {\n\t\tClickOutside: __WEBPACK_IMPORTED_MODULE_1_vue_click_outside___default.a\n\t},\n\tdata: function data() {\n\t\treturn {\n\t\t\topenedMenu: false\n\t\t};\n\t},\n\n\tmethods: {\n\t\tshowMen: function showMen() {\n\t\t\tthis.openedMenu = true;\n\t\t},\n\t\thideMenu: function hideMenu() {\n\t\t\tthis.openedMenu = false;\n\t\t},\n\t\ttoggleCollapse: function toggleCollapse() {\n\t\t\t// if item.opened isn't set, Vue won't trigger view updates https://vuejs.org/v2/api/#Vue-set\n\t\t\t// ternary is here to detect the undefined state of item.opened\n\t\t\t__WEBPACK_IMPORTED_MODULE_2_vue__[\"a\" /* default */].set(this.item, 'opened', this.item.opened ? !this.item.opened : true);\n\t\t},\n\t\tcancelEdit: function cancelEdit() {\n\t\t\t// remove the editing class\n\t\t\tif (Array.isArray(this.item.classes)) this.item.classes = this.item.classes.filter(function (item) {\n\t\t\t\treturn item !== 'editing';\n\t\t\t});\n\t\t}\n\t},\n\tmounted: function mounted() {\n\t\t// prevent click outside event with popupItem.\n\t\tthis.popupItem = this.$el;\n\t}\n});\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vc3JjL2NvbXBvbmVudHMvYXBwTmF2aWdhdGlvbi9uYXZpZ2F0aW9uSXRlbS52dWU/OWVmZiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBMkVBO0FBQ0E7QUFDQTs7QUFFQTtPQUVBO1NBQ0E7O0FBR0E7QUFGQTs7QUFLQTtBQUZBO3VCQUdBOztlQUdBO0FBRkE7QUFHQTs7OzhCQUVBO3FCQUNBO0FBQ0E7Z0NBQ0E7cUJBQ0E7QUFDQTs0Q0FDQTtBQUNBO0FBQ0E7d0hBQ0E7QUFDQTtvQ0FDQTtBQUNBOytCQUNBO29CQUNBOztBQUVBO0FBakJBOzZCQWtCQTtBQUNBO3dCQUNBO0FBQ0E7QUFuQ0EiLCJmaWxlIjoiMTEuanMiLCJzb3VyY2VzQ29udGVudCI6WyI8dGVtcGxhdGU+XG5cdDxsaSA6aWQ9XCJpdGVtLmlkXCIgOmNsYXNzPVwiW3snaWNvbi1sb2FkaW5nLXNtYWxsJzogaXRlbS5sb2FkaW5nLCAnb3Blbic6IGl0ZW0ub3BlbmVkLCAnY29sbGFwc2libGUnOiBpdGVtLmNvbGxhcHNpYmxlJiZpdGVtLmNoaWxkcmVuJiZpdGVtLmNoaWxkcmVuLmxlbmd0aD4wIH0sIGl0ZW0uY2xhc3Nlc11cIj5cblxuXHRcdDwhLS0gQnVsbGV0IC0tPlxuXHRcdDxkaXYgdi1pZj1cIml0ZW0uYnVsbGV0XCIgY2xhc3M9XCJhcHAtbmF2aWdhdGlvbi1lbnRyeS1idWxsZXRcIiA6c3R5bGU9XCJ7IGJhY2tncm91bmRDb2xvcjogaXRlbS5idWxsZXQgfVwiPjwvZGl2PlxuXG5cdFx0PCEtLSBNYWluIGxpbmsgLS0+XG5cdFx0PGEgdi1pZj1cIml0ZW0uaHJlZlwiIDpocmVmPVwiKGl0ZW0uaHJlZikgPyBpdGVtLmhyZWYgOiAnIycgXCIgQGNsaWNrPVwidG9nZ2xlQ29sbGFwc2VcIiA6Y2xhc3M9XCJpdGVtLmljb25cIiA+XG5cdFx0XHQ8aW1nIHYtaWY9XCJpdGVtLmljb25VcmxcIiA6YWx0PVwiaXRlbS50ZXh0XCIgOnNyYz1cIml0ZW0uaWNvblVybFwiPlxuXHRcdFx0e3tpdGVtLnRleHR9fVxuXHRcdDwvYT5cblxuXHRcdDwhLS0gUm91dGVyIGxpbmsgaWYgc3BlY2lmaWVkLiBocmVmIE9SIHJvdXRlciAtLT5cblx0XHQ8cm91dGVyLWxpbmsgOnRvPVwiaXRlbS5yb3V0ZXJcIiB2LWVsc2UtaWY9XCJpdGVtLnJvdXRlclwiIDpjbGFzcz1cIml0ZW0uaWNvblwiID5cblx0XHRcdDxpbWcgdi1pZj1cIml0ZW0uaWNvblVybFwiIDphbHQ9XCJpdGVtLnRleHRcIiA6c3JjPVwiaXRlbS5pY29uVXJsXCI+XG5cdFx0XHR7e2l0ZW0udGV4dH19XG5cdFx0PC9yb3V0ZXItbGluaz5cdFxuXG5cdFx0PCEtLSBQb3BvdmVyLCBjb3VudGVyIGFuZCBidXR0b24ocykgLS0+XG5cdFx0PGRpdiB2LWlmPVwiaXRlbS51dGlsc1wiIGNsYXNzPVwiYXBwLW5hdmlnYXRpb24tZW50cnktdXRpbHNcIj5cblx0XHRcdDx1bD5cblx0XHRcdFx0PCEtLSBjb3VudGVyIC0tPlxuXHRcdFx0XHQ8bGkgdi1pZj1cIk51bWJlci5pc0ludGVnZXIoaXRlbS51dGlscy5jb3VudGVyKVwiXG5cdFx0XHRcdFx0Y2xhc3M9XCJhcHAtbmF2aWdhdGlvbi1lbnRyeS11dGlscy1jb3VudGVyXCI+e3tpdGVtLnV0aWxzLmNvdW50ZXJ9fTwvbGk+XG5cblx0XHRcdFx0PCEtLSBmaXJzdCBhY3Rpb24gaWYgb25seSBvbmUgYWN0aW9uIGFuZCBjb3VudGVyIC0tPlxuXHRcdFx0XHQ8bGkgdi1pZj1cIml0ZW0udXRpbHMuYWN0aW9ucyAmJiBpdGVtLnV0aWxzLmFjdGlvbnMubGVuZ3RoID09PSAxICYmIE51bWJlci5pc0ludGVnZXIoaXRlbS51dGlscy5jb3VudGVyKVwiXG5cdFx0XHRcdFx0Y2xhc3M9XCJhcHAtbmF2aWdhdGlvbi1lbnRyeS11dGlscy1tZW51LWJ1dHRvblwiPlxuXHRcdFx0XHRcdDxidXR0b24gQGNsaWNrPVwiaXRlbS51dGlscy5hY3Rpb25zWzBdLmFjdGlvblwiIDpjbGFzcz1cIml0ZW0udXRpbHMuYWN0aW9uc1swXS5pY29uXCIgOnRpdGxlPVwiaXRlbS51dGlscy5hY3Rpb25zWzBdLnRleHRcIj48L2J1dHRvbj5cblx0XHRcdFx0PC9saT5cblxuXHRcdFx0XHQ8IS0tIHNlY29uZCBhY3Rpb24gb25seSB0d28gYWN0aW9ucyBhbmQgbm8gY291bnRlciAtLT5cblx0XHRcdFx0PGxpIHYtZWxzZS1pZj1cIml0ZW0udXRpbHMuYWN0aW9ucyAmJiBpdGVtLnV0aWxzLmFjdGlvbnMubGVuZ3RoID09PSAyICYmICFOdW1iZXIuaXNJbnRlZ2VyKGl0ZW0udXRpbHMuY291bnRlcilcIlxuXHRcdFx0XHRcdHYtZm9yPVwiYWN0aW9uIGluIGl0ZW0udXRpbHMuYWN0aW9uc1wiIDprZXk9XCJhY3Rpb24uYWN0aW9uXCJcblx0XHRcdFx0XHRjbGFzcz1cImFwcC1uYXZpZ2F0aW9uLWVudHJ5LXV0aWxzLW1lbnUtYnV0dG9uXCI+XG5cdFx0XHRcdFx0PGJ1dHRvbiBAY2xpY2s9XCJhY3Rpb24uYWN0aW9uXCIgOmNsYXNzPVwiYWN0aW9uLmljb25cIiA6dGl0bGU9XCJhY3Rpb24udGV4dFwiPjwvYnV0dG9uPlxuXHRcdFx0XHQ8L2xpPlxuXG5cdFx0XHRcdDwhLS0gbWVudSBpZiBvbmx5IGF0IGxlYXN0IG9uZSBhY3Rpb24gYW5kIGNvdW50ZXIgT1IgdHdvIGFjdGlvbnMgYW5kIG5vIGNvdW50ZXItLT5cblx0XHRcdFx0PGxpIHYtZWxzZS1pZj1cIml0ZW0udXRpbHMuYWN0aW9ucyAmJiBpdGVtLnV0aWxzLmFjdGlvbnMubGVuZ3RoID4gMSAmJiAoTnVtYmVyLmlzSW50ZWdlcihpdGVtLnV0aWxzLmNvdW50ZXIpIHx8IGl0ZW0udXRpbHMuYWN0aW9ucy5sZW5ndGggPiAyKVwiXG5cdFx0XHRcdFx0Y2xhc3M9XCJhcHAtbmF2aWdhdGlvbi1lbnRyeS11dGlscy1tZW51LWJ1dHRvblwiPlxuXHRcdFx0XHRcdDxidXR0b24gdi1jbGljay1vdXRzaWRlPVwiaGlkZU1lbnVcIiBAY2xpY2s9XCJzaG93TWVudVwiID48L2J1dHRvbj5cblx0XHRcdFx0PC9saT5cblx0XHRcdDwvdWw+XG5cdFx0PC9kaXY+XG5cblx0XHQ8IS0tIGlmIG1vcmUgdGhhbiAyIGFjdGlvbnMgb3IgbW9yZSB0aGFuIDEgYWN0aW9ucyB3aXRoIGNvdW50ZXIgLS0+XG5cdFx0PGRpdiB2LWlmPVwiaXRlbS51dGlscyAmJiBpdGVtLnV0aWxzLmFjdGlvbnMgJiYgaXRlbS51dGlscy5hY3Rpb25zLmxlbmd0aCA+IDEgJiYgKE51bWJlci5pc0ludGVnZXIoaXRlbS51dGlscy5jb3VudGVyKSB8fCBpdGVtLnV0aWxzLmFjdGlvbnMubGVuZ3RoID4gMilcIlxuXHRcdFx0IGNsYXNzPVwiYXBwLW5hdmlnYXRpb24tZW50cnktbWVudVwiIDpjbGFzcz1cInsgJ29wZW4nOiBvcGVuZWRNZW51IH1cIj5cblx0XHRcdCA8cG9wb3Zlci1tZW51IDptZW51PVwiaXRlbS51dGlscy5hY3Rpb25zXCIvPlxuXHRcdDwvZGl2PlxuXG5cdFx0PCEtLSB1bmRvIGVudHJ5IC0tPlxuXHRcdDxkaXYgY2xhc3M9XCJhcHAtbmF2aWdhdGlvbi1lbnRyeS1kZWxldGVkXCIgdi1pZj1cIml0ZW0udW5kb1wiPlxuXHRcdFx0PGRpdiBjbGFzcz1cImFwcC1uYXZpZ2F0aW9uLWVudHJ5LWRlbGV0ZWQtZGVzY3JpcHRpb25cIj57e2l0ZW0udW5kby50ZXh0fX08L2Rpdj5cblx0XHRcdDxidXR0b24gY2xhc3M9XCJhcHAtbmF2aWdhdGlvbi1lbnRyeS1kZWxldGVkLWJ1dHRvbiBpY29uLWhpc3RvcnlcIiA6dGl0bGU9XCJ0KCdzZXR0aW5ncycsICdVbmRvJylcIj48L2J1dHRvbj5cblx0XHQ8L2Rpdj5cblxuXHRcdDwhLS0gZWRpdCBlbnRyeSAtLT5cblx0XHQ8ZGl2IGNsYXNzPVwiYXBwLW5hdmlnYXRpb24tZW50cnktZWRpdFwiIHYtaWY9XCJpdGVtLmVkaXRcIj5cblx0XHRcdDxmb3JtPlxuXHRcdFx0XHQ8aW5wdXQgdHlwZT1cInRleHRcIiB2LW1vZGVsPVwiaXRlbS50ZXh0XCI+XG5cdFx0XHRcdDxpbnB1dCB0eXBlPVwic3VibWl0XCIgdmFsdWU9XCJcIiBjbGFzcz1cImljb24tY29uZmlybVwiPlxuXHRcdFx0XHQ8aW5wdXQgdHlwZT1cInN1Ym1pdFwiIHZhbHVlPVwiXCIgY2xhc3M9XCJpY29uLWNsb3NlXCIgQGNsaWNrLnN0b3AucHJldmVudD1cImNhbmNlbEVkaXRcIj5cblx0XHRcdDwvZm9ybT5cblx0XHQ8L2Rpdj5cblxuXHRcdDwhLS0gaWYgdGhlIGl0ZW0gaGFzIGNoaWxkcmVuLCBpbmplY3QgdGhlIGNvbXBvbmVudCB3aXRoIHByb3BlciBkYXRhIC0tPlxuXHRcdDx1bCB2LWlmPVwiaXRlbS5jaGlsZHJlblwiPlxuXHRcdFx0PG5hdmlnYXRpb24taXRlbSB2LWZvcj1cIihpdGVtLCBrZXkpIGluIGl0ZW0uY2hpbGRyZW5cIiA6aXRlbT1cIml0ZW1cIiA6a2V5PVwia2V5XCIgLz5cblx0XHQ8L3VsPlxuXHQ8L2xpPlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdD5cbmltcG9ydCBwb3BvdmVyTWVudSBmcm9tICcuLi9wb3BvdmVyTWVudSc7XG5pbXBvcnQgQ2xpY2tPdXRzaWRlIGZyb20gJ3Z1ZS1jbGljay1vdXRzaWRlJztcbmltcG9ydCBWdWUgZnJvbSAndnVlJztcblxuZXhwb3J0IGRlZmF1bHQge1xuXHRuYW1lOiAnbmF2aWdhdGlvbkl0ZW0nLFxuXHRwcm9wczogWydpdGVtJ10sXG5cdGNvbXBvbmVudHM6IHtcblx0XHRwb3BvdmVyTWVudVxuXHR9LFxuXHRkaXJlY3RpdmVzOiB7XG5cdFx0Q2xpY2tPdXRzaWRlXG5cdH0sXG5cdGRhdGEoKSB7XG5cdFx0cmV0dXJuIHtcblx0XHRcdG9wZW5lZE1lbnU6IGZhbHNlXG5cdFx0fVxuXHR9LFxuXHRtZXRob2RzOiB7XG5cdFx0c2hvd01lbigpIHtcblx0XHRcdHRoaXMub3BlbmVkTWVudSA9IHRydWU7XG5cdFx0fSxcblx0XHRoaWRlTWVudSgpIHtcblx0XHRcdHRoaXMub3BlbmVkTWVudSA9IGZhbHNlO1xuXHRcdH0sXG5cdFx0dG9nZ2xlQ29sbGFwc2UoKSB7XG5cdFx0XHQvLyBpZiBpdGVtLm9wZW5lZCBpc24ndCBzZXQsIFZ1ZSB3b24ndCB0cmlnZ2VyIHZpZXcgdXBkYXRlcyBodHRwczovL3Z1ZWpzLm9yZy92Mi9hcGkvI1Z1ZS1zZXRcblx0XHRcdC8vIHRlcm5hcnkgaXMgaGVyZSB0byBkZXRlY3QgdGhlIHVuZGVmaW5lZCBzdGF0ZSBvZiBpdGVtLm9wZW5lZFxuXHRcdFx0VnVlLnNldCh0aGlzLml0ZW0sICdvcGVuZWQnLCB0aGlzLml0ZW0ub3BlbmVkID8gIXRoaXMuaXRlbS5vcGVuZWQgOiB0cnVlKTtcblx0XHR9LFxuXHRcdGNhbmNlbEVkaXQoKSB7XG5cdFx0XHQvLyByZW1vdmUgdGhlIGVkaXRpbmcgY2xhc3Ncblx0XHRcdGlmIChBcnJheS5pc0FycmF5KHRoaXMuaXRlbS5jbGFzc2VzKSlcblx0XHRcdFx0dGhpcy5pdGVtLmNsYXNzZXMgPSB0aGlzLml0ZW0uY2xhc3Nlcy5maWx0ZXIoaXRlbSA9PiBpdGVtICE9PSAnZWRpdGluZycpO1xuXHRcdH1cblx0fSxcblx0bW91bnRlZCgpIHtcblx0XHQvLyBwcmV2ZW50IGNsaWNrIG91dHNpZGUgZXZlbnQgd2l0aCBwb3B1cEl0ZW0uXG5cdFx0dGhpcy5wb3B1cEl0ZW0gPSB0aGlzLiRlbDtcblx0fSxcbn1cbjwvc2NyaXB0PlxuXG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIHNyYy9jb21wb25lbnRzL2FwcE5hdmlnYXRpb24vbmF2aWdhdGlvbkl0ZW0udnVlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///11\n"); /***/ }), /* 12 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__popoverMenu_popoverItem__ = __webpack_require__(34);\n//\n//\n//\n//\n//\n//\n//\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tname: 'popoverMenu',\n\tprops: ['menu'],\n\tcomponents: {\n\t\tpopoverItem: __WEBPACK_IMPORTED_MODULE_0__popoverMenu_popoverItem__[\"a\" /* default */]\n\t}\n});\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vc3JjL2NvbXBvbmVudHMvcG9wb3Zlck1lbnUudnVlPzY2NWUiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBUUE7O0FBRUE7T0FFQTtTQUNBOztBQUdBO0FBRkE7QUFIQSIsImZpbGUiOiIxMi5qcyIsInNvdXJjZXNDb250ZW50IjpbIjx0ZW1wbGF0ZT5cblx0PHVsPlxuXHRcdDxwb3BvdmVyLWl0ZW0gdi1mb3I9XCIoaXRlbSwga2V5KSBpbiBtZW51XCIgOml0ZW09XCJpdGVtXCIgOmtleT1cImtleVwiIC8+XG5cdDwvdWw+XG48L3RlbXBsYXRlPlxuXG5cbjxzY3JpcHQ+XG5pbXBvcnQgcG9wb3Zlckl0ZW0gZnJvbSAnLi9wb3BvdmVyTWVudS9wb3BvdmVySXRlbSc7XG5cbmV4cG9ydCBkZWZhdWx0IHtcblx0bmFtZTogJ3BvcG92ZXJNZW51Jyxcblx0cHJvcHM6IFsnbWVudSddLFxuXHRjb21wb25lbnRzOiB7XG5cdFx0cG9wb3Zlckl0ZW1cblx0fVxufVxuPC9zY3JpcHQ+XG5cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gc3JjL2NvbXBvbmVudHMvcG9wb3Zlck1lbnUudnVlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///12\n"); +eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_popoverMenu_vue__ = __webpack_require__(13);\n/* unused harmony namespace reexport */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_04ea21c4_hasScoped_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_popoverMenu_vue__ = __webpack_require__(36);\nvar disposed = false\nvar normalizeComponent = __webpack_require__(2)\n/* script */\n\n\n/* template */\n\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_popoverMenu_vue__[\"a\" /* default */],\n __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_04ea21c4_hasScoped_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_popoverMenu_vue__[\"a\" /* default */],\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\nComponent.options.__file = \"src/components/popoverMenu.vue\"\n\n/* hot reload */\nif (false) {(function () {\n var hotAPI = require(\"vue-hot-reload-api\")\n hotAPI.install(require(\"vue\"), false)\n if (!hotAPI.compatible) return\n module.hot.accept()\n if (!module.hot.data) {\n hotAPI.createRecord(\"data-v-04ea21c4\", Component.options)\n } else {\n hotAPI.reload(\"data-v-04ea21c4\", Component.options)\n }\n module.hot.dispose(function (data) {\n disposed = true\n })\n})()}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Component.exports);\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9wb3BvdmVyTWVudS52dWU/NTJhYSJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBO0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ3dLO0FBQ3hLO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxZQUFpQjtBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0gsQ0FBQzs7QUFFRCIsImZpbGUiOiIxMi5qcyIsInNvdXJjZXNDb250ZW50IjpbInZhciBkaXNwb3NlZCA9IGZhbHNlXG52YXIgbm9ybWFsaXplQ29tcG9uZW50ID0gcmVxdWlyZShcIiEuLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvY29tcG9uZW50LW5vcm1hbGl6ZXJcIilcbi8qIHNjcmlwdCAqL1xuZXhwb3J0ICogZnJvbSBcIiEhYmFiZWwtbG9hZGVyIS4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvcj90eXBlPXNjcmlwdCZpbmRleD0wIS4vcG9wb3Zlck1lbnUudnVlXCJcbmltcG9ydCBfX3Z1ZV9zY3JpcHRfXyBmcm9tIFwiISFiYWJlbC1sb2FkZXIhLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yP3R5cGU9c2NyaXB0JmluZGV4PTAhLi9wb3BvdmVyTWVudS52dWVcIlxuLyogdGVtcGxhdGUgKi9cbmltcG9ydCBfX3Z1ZV90ZW1wbGF0ZV9fIGZyb20gXCIhIS4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi90ZW1wbGF0ZS1jb21waWxlci9pbmRleD97XFxcImlkXFxcIjpcXFwiZGF0YS12LTA0ZWEyMWM0XFxcIixcXFwiaGFzU2NvcGVkXFxcIjpmYWxzZSxcXFwiYnVibGVcXFwiOntcXFwidHJhbnNmb3Jtc1xcXCI6e319fSEuLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3I/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vcG9wb3Zlck1lbnUudnVlXCJcbi8qIHRlbXBsYXRlIGZ1bmN0aW9uYWwgKi9cbnZhciBfX3Z1ZV90ZW1wbGF0ZV9mdW5jdGlvbmFsX18gPSBmYWxzZVxuLyogc3R5bGVzICovXG52YXIgX192dWVfc3R5bGVzX18gPSBudWxsXG4vKiBzY29wZUlkICovXG52YXIgX192dWVfc2NvcGVJZF9fID0gbnVsbFxuLyogbW9kdWxlSWRlbnRpZmllciAoc2VydmVyIG9ubHkpICovXG52YXIgX192dWVfbW9kdWxlX2lkZW50aWZpZXJfXyA9IG51bGxcbnZhciBDb21wb25lbnQgPSBub3JtYWxpemVDb21wb25lbnQoXG4gIF9fdnVlX3NjcmlwdF9fLFxuICBfX3Z1ZV90ZW1wbGF0ZV9fLFxuICBfX3Z1ZV90ZW1wbGF0ZV9mdW5jdGlvbmFsX18sXG4gIF9fdnVlX3N0eWxlc19fLFxuICBfX3Z1ZV9zY29wZUlkX18sXG4gIF9fdnVlX21vZHVsZV9pZGVudGlmaWVyX19cbilcbkNvbXBvbmVudC5vcHRpb25zLl9fZmlsZSA9IFwic3JjL2NvbXBvbmVudHMvcG9wb3Zlck1lbnUudnVlXCJcblxuLyogaG90IHJlbG9hZCAqL1xuaWYgKG1vZHVsZS5ob3QpIHsoZnVuY3Rpb24gKCkge1xuICB2YXIgaG90QVBJID0gcmVxdWlyZShcInZ1ZS1ob3QtcmVsb2FkLWFwaVwiKVxuICBob3RBUEkuaW5zdGFsbChyZXF1aXJlKFwidnVlXCIpLCBmYWxzZSlcbiAgaWYgKCFob3RBUEkuY29tcGF0aWJsZSkgcmV0dXJuXG4gIG1vZHVsZS5ob3QuYWNjZXB0KClcbiAgaWYgKCFtb2R1bGUuaG90LmRhdGEpIHtcbiAgICBob3RBUEkuY3JlYXRlUmVjb3JkKFwiZGF0YS12LTA0ZWEyMWM0XCIsIENvbXBvbmVudC5vcHRpb25zKVxuICB9IGVsc2Uge1xuICAgIGhvdEFQSS5yZWxvYWQoXCJkYXRhLXYtMDRlYTIxYzRcIiwgQ29tcG9uZW50Lm9wdGlvbnMpXG4gIH1cbiAgbW9kdWxlLmhvdC5kaXNwb3NlKGZ1bmN0aW9uIChkYXRhKSB7XG4gICAgZGlzcG9zZWQgPSB0cnVlXG4gIH0pXG59KSgpfVxuXG5leHBvcnQgZGVmYXVsdCBDb21wb25lbnQuZXhwb3J0c1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9zcmMvY29tcG9uZW50cy9wb3BvdmVyTWVudS52dWVcbi8vIG1vZHVsZSBpZCA9IDEyXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///12\n"); /***/ }), /* 13 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tprops: ['item']\n});\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vc3JjL2NvbXBvbmVudHMvcG9wb3Zlck1lbnUvcG9wb3Zlckl0ZW0udnVlPzZkN2IiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7QUFjQTtTQUVBO0FBREEiLCJmaWxlIjoiMTMuanMiLCJzb3VyY2VzQ29udGVudCI6WyI8dGVtcGxhdGU+XG5cdDxsaT5cblx0XHQ8YSBAY2xpY2s9XCJpdGVtLmFjdGlvblwiIHYtaWY9XCJpdGVtLmhyZWZcIiA6aHJlZj1cIihpdGVtLmhyZWYpID8gaXRlbS5ocmVmIDogJyMnIFwiPlxuXHRcdFx0PHNwYW4gOmNsYXNzPVwiaXRlbS5pY29uXCI+PC9zcGFuPlxuXHRcdFx0PHNwYW4+e3tpdGVtLnRleHR9fTwvc3Bhbj5cblx0XHQ8L2E+XG5cdFx0PGJ1dHRvbiBAY2xpY2s9XCJpdGVtLmFjdGlvblwiIHYtZWxzZT5cblx0XHRcdDxzcGFuIDpjbGFzcz1cIml0ZW0uaWNvblwiPjwvc3Bhbj5cblx0XHRcdDxzcGFuPnt7aXRlbS50ZXh0fX08L3NwYW4+XG5cdFx0PC9idXR0b24+XG5cdDwvbGk+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0PlxuZXhwb3J0IGRlZmF1bHQge1xuXHRwcm9wczogWydpdGVtJ11cbn1cbjwvc2NyaXB0PlxuXG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIHNyYy9jb21wb25lbnRzL3BvcG92ZXJNZW51L3BvcG92ZXJJdGVtLnZ1ZSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///13\n"); +eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__popoverMenu_popoverItem__ = __webpack_require__(34);\n//\n//\n//\n//\n//\n//\n//\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tname: 'popoverMenu',\n\tprops: ['menu'],\n\tcomponents: {\n\t\tpopoverItem: __WEBPACK_IMPORTED_MODULE_0__popoverMenu_popoverItem__[\"a\" /* default */]\n\t}\n});\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vc3JjL2NvbXBvbmVudHMvcG9wb3Zlck1lbnUudnVlPzY2NWUiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBUUE7O0FBRUE7T0FFQTtTQUNBOztBQUdBO0FBRkE7QUFIQSIsImZpbGUiOiIxMy5qcyIsInNvdXJjZXNDb250ZW50IjpbIjx0ZW1wbGF0ZT5cblx0PHVsPlxuXHRcdDxwb3BvdmVyLWl0ZW0gdi1mb3I9XCIoaXRlbSwga2V5KSBpbiBtZW51XCIgOml0ZW09XCJpdGVtXCIgOmtleT1cImtleVwiIC8+XG5cdDwvdWw+XG48L3RlbXBsYXRlPlxuXG5cbjxzY3JpcHQ+XG5pbXBvcnQgcG9wb3Zlckl0ZW0gZnJvbSAnLi9wb3BvdmVyTWVudS9wb3BvdmVySXRlbSc7XG5cbmV4cG9ydCBkZWZhdWx0IHtcblx0bmFtZTogJ3BvcG92ZXJNZW51Jyxcblx0cHJvcHM6IFsnbWVudSddLFxuXHRjb21wb25lbnRzOiB7XG5cdFx0cG9wb3Zlckl0ZW1cblx0fVxufVxuPC9zY3JpcHQ+XG5cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gc3JjL2NvbXBvbmVudHMvcG9wb3Zlck1lbnUudnVlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///13\n"); /***/ }), /* 14 */ -/***/ (function(module, exports) { - -eval("function validate(binding) {\r\n if (typeof binding.value !== 'function') {\r\n console.warn('[Vue-click-outside:] provided expression', binding.expression, 'is not a function.')\r\n return false\r\n }\r\n\r\n return true\r\n}\r\n\r\nfunction isPopup(popupItem, elements) {\r\n if (!popupItem || !elements)\r\n return false\r\n\r\n for (var i = 0, len = elements.length; i < len; i++) {\r\n try {\r\n if (popupItem.contains(elements[i])) {\r\n return true\r\n }\r\n if (elements[i].contains(popupItem)) {\r\n return false\r\n }\r\n } catch(e) {\r\n return false\r\n }\r\n }\r\n\r\n return false\r\n}\r\n\r\nfunction isServer(vNode) {\r\n return typeof vNode.componentInstance !== 'undefined' && vNode.componentInstance.$isServer\r\n}\r\n\r\nexports = module.exports = {\r\n bind: function (el, binding, vNode) {\r\n if (!validate(binding)) return\r\n\r\n // Define Handler and cache it on the element\r\n function handler(e) {\r\n if (!vNode.context) return\r\n\r\n // some components may have related popup item, on which we shall prevent the click outside event handler.\r\n var elements = e.path || (e.composedPath && e.composedPath())\r\n elements && elements.length > 0 && elements.unshift(e.target)\r\n \r\n if (el.contains(e.target) || isPopup(vNode.context.popupItem, elements)) return\r\n\r\n el.__vueClickOutside__.callback(e)\r\n }\r\n\r\n // add Event Listeners\r\n el.__vueClickOutside__ = {\r\n handler: handler,\r\n callback: binding.value\r\n }\r\n !isServer(vNode) && document.addEventListener('click', handler)\r\n },\r\n\r\n update: function (el, binding) {\r\n if (validate(binding)) el.__vueClickOutside__.callback = binding.value\r\n },\r\n \r\n unbind: function (el, binding, vNode) {\r\n // Remove Event Listeners\r\n !isServer(vNode) && document.removeEventListener('click', el.__vueClickOutside__.handler)\r\n delete el.__vueClickOutside__\r\n }\r\n}\r\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdnVlLWNsaWNrLW91dHNpZGUvaW5kZXguanM/NzQzYSJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBLHdDQUF3QyxTQUFTO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7O0FBRUg7QUFDQTtBQUNBLEdBQUc7O0FBRUg7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwiZmlsZSI6IjE0LmpzIiwic291cmNlc0NvbnRlbnQiOlsiZnVuY3Rpb24gdmFsaWRhdGUoYmluZGluZykge1xyXG4gIGlmICh0eXBlb2YgYmluZGluZy52YWx1ZSAhPT0gJ2Z1bmN0aW9uJykge1xyXG4gICAgY29uc29sZS53YXJuKCdbVnVlLWNsaWNrLW91dHNpZGU6XSBwcm92aWRlZCBleHByZXNzaW9uJywgYmluZGluZy5leHByZXNzaW9uLCAnaXMgbm90IGEgZnVuY3Rpb24uJylcclxuICAgIHJldHVybiBmYWxzZVxyXG4gIH1cclxuXHJcbiAgcmV0dXJuIHRydWVcclxufVxyXG5cclxuZnVuY3Rpb24gaXNQb3B1cChwb3B1cEl0ZW0sIGVsZW1lbnRzKSB7XHJcbiAgaWYgKCFwb3B1cEl0ZW0gfHwgIWVsZW1lbnRzKVxyXG4gICAgcmV0dXJuIGZhbHNlXHJcblxyXG4gIGZvciAodmFyIGkgPSAwLCBsZW4gPSBlbGVtZW50cy5sZW5ndGg7IGkgPCBsZW47IGkrKykge1xyXG4gICAgdHJ5IHtcclxuICAgICAgaWYgKHBvcHVwSXRlbS5jb250YWlucyhlbGVtZW50c1tpXSkpIHtcclxuICAgICAgICByZXR1cm4gdHJ1ZVxyXG4gICAgICB9XHJcbiAgICAgIGlmIChlbGVtZW50c1tpXS5jb250YWlucyhwb3B1cEl0ZW0pKSB7XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlXHJcbiAgICAgIH1cclxuICAgIH0gY2F0Y2goZSkge1xyXG4gICAgICByZXR1cm4gZmFsc2VcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJldHVybiBmYWxzZVxyXG59XHJcblxyXG5mdW5jdGlvbiBpc1NlcnZlcih2Tm9kZSkge1xyXG4gIHJldHVybiB0eXBlb2Ygdk5vZGUuY29tcG9uZW50SW5zdGFuY2UgIT09ICd1bmRlZmluZWQnICYmIHZOb2RlLmNvbXBvbmVudEluc3RhbmNlLiRpc1NlcnZlclxyXG59XHJcblxyXG5leHBvcnRzID0gbW9kdWxlLmV4cG9ydHMgPSB7XHJcbiAgYmluZDogZnVuY3Rpb24gKGVsLCBiaW5kaW5nLCB2Tm9kZSkge1xyXG4gICAgaWYgKCF2YWxpZGF0ZShiaW5kaW5nKSkgcmV0dXJuXHJcblxyXG4gICAgLy8gRGVmaW5lIEhhbmRsZXIgYW5kIGNhY2hlIGl0IG9uIHRoZSBlbGVtZW50XHJcbiAgICBmdW5jdGlvbiBoYW5kbGVyKGUpIHtcclxuICAgICAgaWYgKCF2Tm9kZS5jb250ZXh0KSByZXR1cm5cclxuXHJcbiAgICAgIC8vIHNvbWUgY29tcG9uZW50cyBtYXkgaGF2ZSByZWxhdGVkIHBvcHVwIGl0ZW0sIG9uIHdoaWNoIHdlIHNoYWxsIHByZXZlbnQgdGhlIGNsaWNrIG91dHNpZGUgZXZlbnQgaGFuZGxlci5cclxuICAgICAgdmFyIGVsZW1lbnRzID0gZS5wYXRoIHx8IChlLmNvbXBvc2VkUGF0aCAmJiBlLmNvbXBvc2VkUGF0aCgpKVxyXG4gICAgICBlbGVtZW50cyAmJiBlbGVtZW50cy5sZW5ndGggPiAwICYmIGVsZW1lbnRzLnVuc2hpZnQoZS50YXJnZXQpXHJcbiAgICAgIFxyXG4gICAgICBpZiAoZWwuY29udGFpbnMoZS50YXJnZXQpIHx8IGlzUG9wdXAodk5vZGUuY29udGV4dC5wb3B1cEl0ZW0sIGVsZW1lbnRzKSkgcmV0dXJuXHJcblxyXG4gICAgICBlbC5fX3Z1ZUNsaWNrT3V0c2lkZV9fLmNhbGxiYWNrKGUpXHJcbiAgICB9XHJcblxyXG4gICAgLy8gYWRkIEV2ZW50IExpc3RlbmVyc1xyXG4gICAgZWwuX192dWVDbGlja091dHNpZGVfXyA9IHtcclxuICAgICAgaGFuZGxlcjogaGFuZGxlcixcclxuICAgICAgY2FsbGJhY2s6IGJpbmRpbmcudmFsdWVcclxuICAgIH1cclxuICAgICFpc1NlcnZlcih2Tm9kZSkgJiYgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBoYW5kbGVyKVxyXG4gIH0sXHJcblxyXG4gIHVwZGF0ZTogZnVuY3Rpb24gKGVsLCBiaW5kaW5nKSB7XHJcbiAgICBpZiAodmFsaWRhdGUoYmluZGluZykpIGVsLl9fdnVlQ2xpY2tPdXRzaWRlX18uY2FsbGJhY2sgPSBiaW5kaW5nLnZhbHVlXHJcbiAgfSxcclxuICBcclxuICB1bmJpbmQ6IGZ1bmN0aW9uIChlbCwgYmluZGluZywgdk5vZGUpIHtcclxuICAgIC8vIFJlbW92ZSBFdmVudCBMaXN0ZW5lcnNcclxuICAgICFpc1NlcnZlcih2Tm9kZSkgJiYgZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignY2xpY2snLCBlbC5fX3Z1ZUNsaWNrT3V0c2lkZV9fLmhhbmRsZXIpXHJcbiAgICBkZWxldGUgZWwuX192dWVDbGlja091dHNpZGVfX1xyXG4gIH1cclxufVxyXG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy92dWUtY2xpY2stb3V0c2lkZS9pbmRleC5qc1xuLy8gbW9kdWxlIGlkID0gMTRcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///14\n"); - -/***/ }), -/* 15 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__userList_userRow__ = __webpack_require__(40);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vue_multiselect__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vue_multiselect___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_vue_multiselect__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_vue_infinite_loading__ = __webpack_require__(42);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_vue_infinite_loading___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_vue_infinite_loading__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_vue__ = __webpack_require__(3);\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tname: 'userList',\n\tprops: ['users', 'showConfig', 'selectedGroup'],\n\tcomponents: {\n\t\tuserRow: __WEBPACK_IMPORTED_MODULE_0__userList_userRow__[\"a\" /* default */],\n\t\tMultiselect: __WEBPACK_IMPORTED_MODULE_1_vue_multiselect___default.a,\n\t\tInfiniteLoading: __WEBPACK_IMPORTED_MODULE_2_vue_infinite_loading___default.a\n\t},\n\tdata: function data() {\n\t\tvar unlimitedQuota = { id: 'none', label: t('settings', 'Unlimited') },\n\t\t defaultQuota = { id: 'default', label: t('settings', 'Default quota') };\n\t\treturn {\n\t\t\tunlimitedQuota: unlimitedQuota,\n\t\t\tdefaultQuota: defaultQuota,\n\t\t\tloading: false,\n\t\t\tscrolled: false,\n\t\t\tnewUser: {\n\t\t\t\tid: '',\n\t\t\t\tdisplayName: '',\n\t\t\t\tpassword: '',\n\t\t\t\tmailAddress: '',\n\t\t\t\tgroups: [],\n\t\t\t\tsubAdminsGroups: [],\n\t\t\t\tquota: defaultQuota,\n\t\t\t\tlanguage: { code: 'en', name: t('settings', 'Default language') }\n\t\t\t}\n\t\t};\n\t},\n\tmounted: function mounted() {\n\t\tif (!this.settings.canChangePassword) {\n\t\t\tOC.Notification.showTemporary(t('settings', 'Password change is disabled because the master key is disabled'));\n\t\t}\n\t\t/** \n * Init default language from server data. The use of this.settings\n * requires a computed variable,vwhich break the v-model binding of the form,\n * this is a much easier solution than getter and setter\n */\n\t\t__WEBPACK_IMPORTED_MODULE_3_vue__[\"a\" /* default */].set(this.newUser.language, 'code', this.settings.defaultLanguage);\n\t},\n\n\tcomputed: {\n\t\tsettings: function settings() {\n\t\t\treturn this.$store.getters.getServerData;\n\t\t},\n\t\tfilteredUsers: function filteredUsers() {\n\t\t\tif (this.selectedGroup === 'disabled') {\n\t\t\t\tvar disabledUsers = this.users.filter(function (user) {\n\t\t\t\t\treturn user.enabled !== true;\n\t\t\t\t});\n\t\t\t\tif (disabledUsers.length === 0 && this.$refs.infiniteLoading && this.$refs.infiniteLoading.isComplete) {\n\t\t\t\t\t// disabled group is empty, redirection to all users\n\t\t\t\t\tthis.$router.push('users');\n\t\t\t\t\tthis.$refs.infiniteLoading.$emit('$InfiniteLoading:reset');\n\t\t\t\t}\n\t\t\t\treturn disabledUsers;\n\t\t\t}\n\t\t\treturn this.users.filter(function (user) {\n\t\t\t\treturn user.enabled === true;\n\t\t\t});\n\t\t},\n\t\tgroups: function groups() {\n\t\t\t// data provided php side + remove the disabled group\n\t\t\treturn this.$store.getters.getGroups.filter(function (group) {\n\t\t\t\treturn group.id !== 'disabled';\n\t\t\t});\n\t\t},\n\t\tsubAdminsGroups: function subAdminsGroups() {\n\t\t\t// data provided php side\n\t\t\treturn this.$store.getters.getServerData.subadmingroups;\n\t\t},\n\t\tquotaOptions: function quotaOptions() {\n\t\t\t// convert the preset array into objects\n\t\t\tvar quotaPreset = this.settings.quotaPreset.reduce(function (acc, cur) {\n\t\t\t\treturn acc.concat({ id: cur, label: cur });\n\t\t\t}, []);\n\t\t\t// add default presets\n\t\t\tquotaPreset.unshift(this.unlimitedQuota);\n\t\t\tquotaPreset.unshift(this.defaultQuota);\n\t\t\treturn quotaPreset;\n\t\t},\n\t\tminPasswordLength: function minPasswordLength() {\n\t\t\treturn this.$store.getters.getPasswordPolicyMinLength;\n\t\t},\n\t\tusersOffset: function usersOffset() {\n\t\t\treturn this.$store.getters.getUsersOffset;\n\t\t},\n\t\tusersLimit: function usersLimit() {\n\t\t\treturn this.$store.getters.getUsersLimit;\n\t\t},\n\n\n\t\t/* LANGUAGES */\n\t\tlanguages: function languages() {\n\t\t\treturn Array({\n\t\t\t\tlabel: t('settings', 'Common languages'),\n\t\t\t\tlanguages: this.settings.languages.commonlanguages\n\t\t\t}, {\n\t\t\t\tlabel: t('settings', 'All languages'),\n\t\t\t\tlanguages: this.settings.languages.languages\n\t\t\t});\n\t\t}\n\t},\n\twatch: {\n\t\t// watch url change and group select\n\t\tselectedGroup: function selectedGroup(val, old) {\n\t\t\tthis.$store.commit('resetUsers');\n\t\t\tthis.$refs.infiniteLoading.$emit('$InfiniteLoading:reset');\n\t\t}\n\t},\n\tmethods: {\n\t\tonScroll: function onScroll(event) {\n\t\t\tthis.scrolled = event.target.scrollTop > 0;\n\t\t},\n\n\n\t\t/**\n * Validate quota string to make sure it's a valid human file size\n * \n * @param {string} quota Quota in readable format '5 GB'\n * @returns {Object}\n */\n\t\tvalidateQuota: function validateQuota(quota) {\n\t\t\t// only used for new presets sent through @Tag\n\t\t\tvar validQuota = OC.Util.computerFileSize(quota);\n\t\t\tif (validQuota !== null && validQuota > 0) {\n\t\t\t\t// unify format output\n\t\t\t\tquota = OC.Util.humanFileSize(OC.Util.computerFileSize(quota));\n\t\t\t\treturn this.newUser.quota = { id: quota, label: quota };\n\t\t\t}\n\t\t\t// Default is unlimited\n\t\t\treturn this.newUser.quota = this.quotaOptions[0];\n\t\t},\n\t\tinfiniteHandler: function infiniteHandler($state) {\n\t\t\tthis.$store.dispatch('getUsers', {\n\t\t\t\toffset: this.usersOffset,\n\t\t\t\tlimit: this.usersLimit,\n\t\t\t\tgroup: this.selectedGroup !== 'disabled' ? this.selectedGroup : '' }).then(function (response) {\n\t\t\t\tresponse ? $state.loaded() : $state.complete();\n\t\t\t});\n\t\t},\n\t\tresetForm: function resetForm() {\n\t\t\t// revert form to original state\n\t\t\tObject.assign(this.newUser, this.$options.data.call(this).newUser);\n\t\t\tthis.loading = false;\n\t\t},\n\t\tcreateUser: function createUser() {\n\t\t\tvar _this = this;\n\n\t\t\tthis.loading = true;\n\t\t\tthis.$store.dispatch('addUser', {\n\t\t\t\tuserid: this.newUser.id,\n\t\t\t\tpassword: this.newUser.password,\n\t\t\t\temail: this.newUser.mailAddress,\n\t\t\t\tgroups: this.newUser.groups.map(function (group) {\n\t\t\t\t\treturn group.id;\n\t\t\t\t}),\n\t\t\t\tsubadmin: this.newUser.subAdminsGroups.map(function (group) {\n\t\t\t\t\treturn group.id;\n\t\t\t\t}),\n\t\t\t\tquota: this.newUser.quota.id,\n\t\t\t\tlanguage: this.newUser.language.code\n\t\t\t}).then(function () {\n\t\t\t\treturn _this.resetForm();\n\t\t\t});\n\t\t}\n\t}\n});\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vc3JjL2NvbXBvbmVudHMvdXNlckxpc3QudnVlP2JjNTEiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQTZHQTtBQUNBO0FBQ0E7QUFDQTs7eURBRUE7T0FFQTtnQ0FDQTs7QUFFQTtBQUNBO0FBRUE7QUFKQTt1QkFLQTswREFDQTsyREFDQTs7bUJBRUE7aUJBQ0E7WUFDQTthQUNBOztRQUVBO2lCQUNBO2NBQ0E7aUJBQ0E7WUFDQTtxQkFDQTtXQUNBO2dEQUdBO0FBVkE7QUFMQTtBQWdCQTs2QkFDQTt3Q0FDQTsrQ0FDQTtBQUNBO0FBS0E7Ozs7O3dHQUNBO0FBQ0E7OztnQ0FFQTs4QkFDQTtBQUNBOzBDQUNBOzBDQUNBOzs2QkFDQTs7MkdBQ0E7QUFDQTt1QkFDQTtzQ0FDQTtBQUNBO1dBQ0E7QUFDQTs7NEJBQ0E7O0FBQ0E7NEJBQ0E7QUFDQTs7d0JBQ0E7O0FBQ0E7OENBQ0E7QUFDQTs0Q0FDQTtBQUNBO3dDQUNBO0FBQ0E7OztNQUNBO0FBQ0E7NEJBQ0E7NEJBQ0E7VUFDQTtBQUNBO2tEQUNBOzhCQUNBO0FBQ0E7c0NBQ0E7OEJBQ0E7QUFDQTtvQ0FDQTs4QkFDQTtBQUVBOzs7QUFDQTtrQ0FDQTs7eUJBR0E7dUNBRUE7QUFIQSxJQURBO3lCQU1BO3VDQUdBO0FBSkE7QUFNQTtBQXZEQTs7QUF5REE7a0RBQ0E7c0JBQ0E7b0NBQ0E7QUFFQTtBQU5BOztxQ0FRQTs0Q0FDQTtBQUVBOzs7QUFNQTs7Ozs7OytDQUNBO0FBQ0E7NkNBQ0E7OENBQ0E7QUFDQTsyREFDQTtvREFDQTtBQUNBO0FBQ0E7aURBQ0E7QUFFQTtvREFDQTs7aUJBRUE7Z0JBQ0EsVUFGQTtvRUFHQTs7QUFDQTtBQUVBO2tDQUNBO0FBQ0E7NkRBQ0E7a0JBQ0E7QUFDQTs7QUFDQTs7a0JBQ0E7O3lCQUVBOzJCQUNBO3dCQUNBOztrQkFDQTs7O2tCQUNBOzs4QkFDQTtvQ0FDQTtBQVBBO2lCQVFBOztBQUVBO0FBaERBO0FBdEdBIiwiZmlsZSI6IjE1LmpzIiwic291cmNlc0NvbnRlbnQiOlsiPHRlbXBsYXRlPlxuXHQ8ZGl2IGlkPVwiYXBwLWNvbnRlbnRcIiBjbGFzcz1cInVzZXItbGlzdC1ncmlkXCIgdi1vbjpzY3JvbGwucGFzc2l2ZT1cIm9uU2Nyb2xsXCI+XG5cdFx0PGRpdiBjbGFzcz1cInJvd1wiIGlkPVwiZ3JpZC1oZWFkZXJcIiA6Y2xhc3M9XCJ7J3N0aWNreSc6IHNjcm9sbGVkICYmICFzaG93Q29uZmlnLnNob3dOZXdVc2VyRm9ybX1cIj5cblx0XHRcdDxkaXYgaWQ9XCJoZWFkZXJBdmF0YXJcIiBjbGFzcz1cImF2YXRhclwiPjwvZGl2PlxuXHRcdFx0PGRpdiBpZD1cImhlYWRlck5hbWVcIiBjbGFzcz1cIm5hbWVcIj57eyB0KCdzZXR0aW5ncycsICdVc2VybmFtZScpIH19PC9kaXY+XG5cdFx0XHQ8ZGl2IGlkPVwiaGVhZGVyRGlzcGxheU5hbWVcIiBjbGFzcz1cImRpc3BsYXlOYW1lXCI+e3sgdCgnc2V0dGluZ3MnLCAgJ0Z1bGwgbmFtZScpIH19PC9kaXY+XG5cdFx0XHQ8ZGl2IGlkPVwiaGVhZGVyUGFzc3dvcmRcIiBjbGFzcz1cInBhc3N3b3JkXCI+e3sgdCgnc2V0dGluZ3MnLCAgJ1Bhc3N3b3JkJykgfX08L2Rpdj5cblx0XHRcdDxkaXYgaWQ9XCJoZWFkZXJBZGRyZXNzXCIgY2xhc3M9XCJtYWlsQWRkcmVzc1wiPnt7IHQoJ3NldHRpbmdzJywgICdFbWFpbCcpIH19PC9kaXY+XG5cdFx0XHQ8ZGl2IGlkPVwiaGVhZGVyR3JvdXBzXCIgY2xhc3M9XCJncm91cHNcIj57eyB0KCdzZXR0aW5ncycsICAnR3JvdXBzJykgfX08L2Rpdj5cblx0XHRcdDxkaXYgaWQ9XCJoZWFkZXJTdWJBZG1pbnNcIiBjbGFzcz1cInN1YmFkbWluc1wiXG5cdFx0XHRcdCB2LWlmPVwic3ViQWRtaW5zR3JvdXBzLmxlbmd0aD4wXCI+e3sgdCgnc2V0dGluZ3MnLCAnR3JvdXAgYWRtaW4gZm9yJykgfX08L2Rpdj5cblx0XHRcdDxkaXYgaWQ9XCJoZWFkZXJRdW90YVwiIGNsYXNzPVwicXVvdGFcIj57eyB0KCdzZXR0aW5ncycsICdRdW90YScpIH19PC9kaXY+XG5cdFx0XHQ8ZGl2IGlkPVwiaGVhZGVyTGFuZ3VhZ2VzXCIgY2xhc3M9XCJsYW5ndWFnZXNcIlxuXHRcdFx0XHQgdi1pZj1cInNob3dDb25maWcuc2hvd0xhbmd1YWdlc1wiPnt7IHQoJ3NldHRpbmdzJywgJ0xhbmd1YWdlcycpIH19PC9kaXY+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwiaGVhZGVyU3RvcmFnZUxvY2F0aW9uIHN0b3JhZ2VMb2NhdGlvblwiXG5cdFx0XHRcdCB2LWlmPVwic2hvd0NvbmZpZy5zaG93U3RvcmFnZVBhdGhcIj57eyB0KCdzZXR0aW5ncycsICdTdG9yYWdlIGxvY2F0aW9uJykgfX08L2Rpdj5cblx0XHRcdDxkaXYgY2xhc3M9XCJoZWFkZXJVc2VyQmFja2VuZCB1c2VyQmFja2VuZFwiXG5cdFx0XHRcdCB2LWlmPVwic2hvd0NvbmZpZy5zaG93VXNlckJhY2tlbmRcIj57eyB0KCdzZXR0aW5ncycsICdVc2VyIGJhY2tlbmQnKSB9fTwvZGl2PlxuXHRcdFx0PGRpdiBjbGFzcz1cImhlYWRlckxhc3RMb2dpbiBsYXN0TG9naW5cIiBcblx0XHRcdFx0IHYtaWY9XCJzaG93Q29uZmlnLnNob3dMYXN0TG9naW5cIj57eyB0KCdzZXR0aW5ncycsICdMYXN0IGxvZ2luJykgfX08L2Rpdj5cblx0XHRcdDxkaXYgY2xhc3M9XCJ1c2VyQWN0aW9uc1wiPjwvZGl2PlxuXHRcdDwvZGl2PlxuXG5cdFx0PGZvcm0gY2xhc3M9XCJyb3dcIiBpZD1cIm5ldy11c2VyXCIgdi1zaG93PVwic2hvd0NvbmZpZy5zaG93TmV3VXNlckZvcm1cIlxuXHRcdFx0ICB2LW9uOnN1Ym1pdC5wcmV2ZW50PVwiY3JlYXRlVXNlclwiIDpkaXNhYmxlZD1cImxvYWRpbmdcIlxuXHRcdFx0ICA6Y2xhc3M9XCJ7J3N0aWNreSc6IHNjcm9sbGVkICYmIHNob3dDb25maWcuc2hvd05ld1VzZXJGb3JtfVwiPlxuXHRcdFx0PGRpdiA6Y2xhc3M9XCJsb2FkaW5nPydpY29uLWxvYWRpbmctc21hbGwnOidpY29uLWFkZCdcIj48L2Rpdj5cblx0XHRcdDxkaXYgY2xhc3M9XCJuYW1lXCI+XG5cdFx0XHRcdDxpbnB1dCBpZD1cIm5ld3VzZXJuYW1lXCIgdHlwZT1cInRleHRcIiByZXF1aXJlZCB2LW1vZGVsPVwibmV3VXNlci5pZFwiXG5cdFx0XHRcdFx0ICAgOnBsYWNlaG9sZGVyPVwidCgnc2V0dGluZ3MnLCAnVXNlciBuYW1lJylcIiBuYW1lPVwidXNlcm5hbWVcIlxuXHRcdFx0XHRcdCAgIGF1dG9jb21wbGV0ZT1cIm9mZlwiIGF1dG9jYXBpdGFsaXplPVwibm9uZVwiIGF1dG9jb3JyZWN0PVwib2ZmXCJcblx0XHRcdFx0XHQgICBwYXR0ZXJuPVwiW2EtekEtWjAtOSBfXFwuQFxcLSddK1wiPlxuXHRcdFx0PC9kaXY+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwiZGlzcGxheU5hbWVcIj5cblx0XHRcdFx0PGlucHV0IGlkPVwibmV3ZGlzcGxheW5hbWVcIiB0eXBlPVwidGV4dFwiIHYtbW9kZWw9XCJuZXdVc2VyLmRpc3BsYXlOYW1lXCJcblx0XHRcdFx0XHQgICA6cGxhY2Vob2xkZXI9XCJ0KCdzZXR0aW5ncycsICdEaXNwbGF5IG5hbWUnKVwiIG5hbWU9XCJkaXNwbGF5bmFtZVwiXG5cdFx0XHRcdFx0ICAgYXV0b2NvbXBsZXRlPVwib2ZmXCIgYXV0b2NhcGl0YWxpemU9XCJub25lXCIgYXV0b2NvcnJlY3Q9XCJvZmZcIj5cblx0XHRcdDwvZGl2PlxuXHRcdFx0PGRpdiBjbGFzcz1cInBhc3N3b3JkXCI+XG5cdFx0XHRcdDxpbnB1dCBpZD1cIm5ld3VzZXJwYXNzd29yZFwiIHR5cGU9XCJwYXNzd29yZFwiIHYtbW9kZWw9XCJuZXdVc2VyLnBhc3N3b3JkXCJcblx0XHRcdFx0XHQgICA6cmVxdWlyZWQ9XCJuZXdVc2VyLm1haWxBZGRyZXNzPT09JydcIlxuXHRcdFx0XHRcdCAgIDpwbGFjZWhvbGRlcj1cInQoJ3NldHRpbmdzJywgJ1Bhc3N3b3JkJylcIiBuYW1lPVwicGFzc3dvcmRcIlxuXHRcdFx0XHRcdCAgIGF1dG9jb21wbGV0ZT1cIm5ldy1wYXNzd29yZFwiIGF1dG9jYXBpdGFsaXplPVwibm9uZVwiIGF1dG9jb3JyZWN0PVwib2ZmXCJcblx0XHRcdFx0XHQgICA6bWlubGVuZ3RoPVwibWluUGFzc3dvcmRMZW5ndGhcIj5cblx0XHRcdDwvZGl2PlxuXHRcdFx0PGRpdiBjbGFzcz1cIm1haWxBZGRyZXNzXCI+XG5cdFx0XHRcdDxpbnB1dCBpZD1cIm5ld2VtYWlsXCIgdHlwZT1cImVtYWlsXCIgdi1tb2RlbD1cIm5ld1VzZXIubWFpbEFkZHJlc3NcIlxuXHRcdFx0XHRcdCAgIDpyZXF1aXJlZD1cIm5ld1VzZXIucGFzc3dvcmQ9PT0nJ1wiXG5cdFx0XHRcdFx0ICAgOnBsYWNlaG9sZGVyPVwidCgnc2V0dGluZ3MnLCAnTWFpbCBhZGRyZXNzJylcIiBuYW1lPVwiZW1haWxcIlxuXHRcdFx0XHRcdCAgIGF1dG9jb21wbGV0ZT1cIm9mZlwiIGF1dG9jYXBpdGFsaXplPVwibm9uZVwiIGF1dG9jb3JyZWN0PVwib2ZmXCI+XG5cdFx0XHQ8L2Rpdj5cblx0XHRcdDxkaXYgY2xhc3M9XCJncm91cHNcIj5cblx0XHRcdFx0PG11bHRpc2VsZWN0IDpvcHRpb25zPVwiZ3JvdXBzXCIgdi1tb2RlbD1cIm5ld1VzZXIuZ3JvdXBzXCJcblx0XHRcdFx0XHRcdFx0IDpwbGFjZWhvbGRlcj1cInQoJ3NldHRpbmdzJywgJ0FkZCB1c2VyIGluIGdyb3VwJylcIlxuXHRcdFx0XHRcdFx0XHQgbGFiZWw9XCJuYW1lXCIgdHJhY2stYnk9XCJpZFwiIGNsYXNzPVwibXVsdGlzZWxlY3QtdnVlXCJcblx0XHRcdFx0XHRcdFx0IDptdWx0aXBsZT1cInRydWVcIiA6Y2xvc2Utb24tc2VsZWN0PVwiZmFsc2VcIj5cblx0XHRcdFx0XHQ8c3BhbiBzbG90PVwibm9SZXN1bHRcIj57e3QoJ3NldHRpbmdzJywnTm8gcmVzdWx0Jyl9fTwvc3Bhbj5cblx0XHRcdFx0PC9tdWx0aXNlbGVjdD5cblx0XHRcdDwvZGl2PlxuXHRcdFx0PGRpdiBjbGFzcz1cInN1YmFkbWluc1wiIHYtaWY9XCJzdWJBZG1pbnNHcm91cHMubGVuZ3RoPjBcIj5cblx0XHRcdFx0PG11bHRpc2VsZWN0IDpvcHRpb25zPVwic3ViQWRtaW5zR3JvdXBzXCIgdi1tb2RlbD1cIm5ld1VzZXIuc3ViQWRtaW5zR3JvdXBzXCJcblx0XHRcdFx0XHRcdFx0IDpwbGFjZWhvbGRlcj1cInQoJ3NldHRpbmdzJywgJ1NldCB1c2VyIGFzIGFkbWluIGZvcicpXCJcblx0XHRcdFx0XHRcdFx0IGxhYmVsPVwibmFtZVwiIHRyYWNrLWJ5PVwiaWRcIiBjbGFzcz1cIm11bHRpc2VsZWN0LXZ1ZVwiXG5cdFx0XHRcdFx0XHRcdCA6bXVsdGlwbGU9XCJ0cnVlXCIgOmNsb3NlLW9uLXNlbGVjdD1cImZhbHNlXCI+XG5cdFx0XHRcdFx0PHNwYW4gc2xvdD1cIm5vUmVzdWx0XCI+e3t0KCdzZXR0aW5ncycsJ05vIHJlc3VsdCcpfX08L3NwYW4+XG5cdFx0XHQ8L211bHRpc2VsZWN0PlxuXHRcdFx0PC9kaXY+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwicXVvdGFcIj5cblx0XHRcdFx0PG11bHRpc2VsZWN0IDpvcHRpb25zPVwicXVvdGFPcHRpb25zXCIgdi1tb2RlbD1cIm5ld1VzZXIucXVvdGFcIlxuXHRcdFx0XHRcdFx0XHQgOnBsYWNlaG9sZGVyPVwidCgnc2V0dGluZ3MnLCAnU2VsZWN0IHVzZXIgcXVvdGEnKVwiXG5cdFx0XHRcdFx0XHRcdCBsYWJlbD1cImxhYmVsXCIgdHJhY2stYnk9XCJpZFwiIGNsYXNzPVwibXVsdGlzZWxlY3QtdnVlXCJcblx0XHRcdFx0XHRcdFx0IDphbGxvd0VtcHR5PVwiZmFsc2VcIiA6dGFnZ2FibGU9XCJ0cnVlXCJcblx0XHRcdFx0XHRcdCBcdCBAdGFnPVwidmFsaWRhdGVRdW90YVwiID5cblx0XHRcdFx0PC9tdWx0aXNlbGVjdD5cblx0XHRcdDwvZGl2PlxuXHRcdFx0PGRpdiBjbGFzcz1cImxhbmd1YWdlc1wiIHYtaWY9XCJzaG93Q29uZmlnLnNob3dMYW5ndWFnZXNcIj5cblx0XHRcdFx0PG11bHRpc2VsZWN0IDpvcHRpb25zPVwibGFuZ3VhZ2VzXCIgdi1tb2RlbD1cIm5ld1VzZXIubGFuZ3VhZ2VcIlxuXHRcdFx0XHRcdFx0XHQgOnBsYWNlaG9sZGVyPVwidCgnc2V0dGluZ3MnLCAnRGVmYXVsdCBsYW5ndWFnZScpXCJcblx0XHRcdFx0XHRcdFx0IGxhYmVsPVwibmFtZVwiIHRyYWNrLWJ5PVwiY29kZVwiIGNsYXNzPVwibXVsdGlzZWxlY3QtdnVlXCJcblx0XHRcdFx0XHRcdFx0IDphbGxvd0VtcHR5PVwiZmFsc2VcIiBncm91cC12YWx1ZXM9XCJsYW5ndWFnZXNcIiBncm91cC1sYWJlbD1cImxhYmVsXCI+XG5cdFx0XHRcdDwvbXVsdGlzZWxlY3Q+XG5cdFx0XHQ8L2Rpdj5cblx0XHRcdDxkaXYgY2xhc3M9XCJzdG9yYWdlTG9jYXRpb25cIiB2LWlmPVwic2hvd0NvbmZpZy5zaG93U3RvcmFnZVBhdGhcIj48L2Rpdj5cblx0XHRcdDxkaXYgY2xhc3M9XCJ1c2VyQmFja2VuZFwiIHYtaWY9XCJzaG93Q29uZmlnLnNob3dVc2VyQmFja2VuZFwiPjwvZGl2PlxuXHRcdFx0PGRpdiBjbGFzcz1cImxhc3RMb2dpblwiIHYtaWY9XCJzaG93Q29uZmlnLnNob3dMYXN0TG9naW5cIj48L2Rpdj5cblx0XHRcdDxkaXYgY2xhc3M9XCJ1c2VyQWN0aW9uc1wiPlxuXHRcdFx0XHQ8aW5wdXQgdHlwZT1cInN1Ym1pdFwiIGlkPVwibmV3c3VibWl0XCIgY2xhc3M9XCJidXR0b24gcHJpbWFyeSBpY29uLWNoZWNrbWFyay13aGl0ZSBoYXMtdG9vbHRpcFwiXG5cdFx0XHRcdFx0ICAgdmFsdWU9XCJcIiA6dGl0bGU9XCJ0KCdzZXR0aW5ncycsICdBZGQgYSBuZXcgdXNlcicpXCI+XG5cdFx0XHRcdDxpbnB1dCB0eXBlPVwicmVzZXRcIiBpZD1cIm5ld3Jlc2V0XCIgY2xhc3M9XCJidXR0b24gaWNvbi1jbG9zZSBoYXMtdG9vbHRpcFwiIEBjbGljaz1cInJlc2V0Rm9ybVwiXG5cdFx0XHRcdFx0ICAgdmFsdWU9XCJcIiA6dGl0bGU9XCJ0KCdzZXR0aW5ncycsICdDYW5jZWwgYW5kIHJlc2V0IHRoZSBmb3JtJylcIj5cblx0XHRcdDwvZGl2PlxuXHRcdDwvZm9ybT5cblxuXHRcdDx1c2VyLXJvdyB2LWZvcj1cIih1c2VyLCBrZXkpIGluIGZpbHRlcmVkVXNlcnNcIiA6dXNlcj1cInVzZXJcIiA6a2V5PVwia2V5XCIgOnNldHRpbmdzPVwic2V0dGluZ3NcIiA6c2hvd0NvbmZpZz1cInNob3dDb25maWdcIlxuXHRcdFx0XHQgIDpncm91cHM9XCJncm91cHNcIiA6c3ViQWRtaW5zR3JvdXBzPVwic3ViQWRtaW5zR3JvdXBzXCIgOnF1b3RhT3B0aW9ucz1cInF1b3RhT3B0aW9uc1wiIDpsYW5ndWFnZXM9XCJsYW5ndWFnZXNcIiAvPlxuXHRcdDxpbmZpbml0ZS1sb2FkaW5nIEBpbmZpbml0ZT1cImluZmluaXRlSGFuZGxlclwiIHJlZj1cImluZmluaXRlTG9hZGluZ1wiPlxuXHRcdFx0PGRpdiBzbG90PVwic3Bpbm5lclwiPjxkaXYgY2xhc3M9XCJ1c2Vycy1pY29uLWxvYWRpbmcgaWNvbi1sb2FkaW5nXCI+PC9kaXY+PC9kaXY+XG5cdFx0XHQ8ZGl2IHNsb3Q9XCJuby1tb3JlXCI+PGRpdiBjbGFzcz1cInVzZXJzLWxpc3QtZW5kXCI+4oCUIHt7dCgnc2V0dGluZ3MnLCAnbm8gbW9yZSByZXN1bHRzJyl9fSDigJQ8L2Rpdj48L2Rpdj5cblx0XHRcdDxkaXYgc2xvdD1cIm5vLXJlc3VsdHNcIj5cblx0XHRcdFx0PGRpdiBpZD1cImVtcHR5Y29udGVudFwiPlxuXHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJpY29uLWNvbnRhY3RzLWRhcmtcIj48L2Rpdj5cblx0XHRcdFx0XHQ8aDI+e3t0KCdzZXR0aW5ncycsICdObyB1c2VycyBpbiBoZXJlJyl9fTwvaDI+XG5cdFx0XHRcdDwvZGl2PlxuXHRcdFx0PC9kaXY+XG5cdFx0PC9pbmZpbml0ZS1sb2FkaW5nPlxuXHQ8L2Rpdj5cbjwvdGVtcGxhdGU+XG5cbjxzY3JpcHQ+XG5pbXBvcnQgdXNlclJvdyBmcm9tICcuL3VzZXJMaXN0L3VzZXJSb3cnO1xuaW1wb3J0IE11bHRpc2VsZWN0IGZyb20gJ3Z1ZS1tdWx0aXNlbGVjdCc7XG5pbXBvcnQgSW5maW5pdGVMb2FkaW5nIGZyb20gJ3Z1ZS1pbmZpbml0ZS1sb2FkaW5nJztcbmltcG9ydCBWdWUgZnJvbSAndnVlJztcblxuZXhwb3J0IGRlZmF1bHQge1xuXHRuYW1lOiAndXNlckxpc3QnLFxuXHRwcm9wczogWyd1c2VycycsICdzaG93Q29uZmlnJywgJ3NlbGVjdGVkR3JvdXAnXSxcblx0Y29tcG9uZW50czoge1xuXHRcdHVzZXJSb3csXG5cdFx0TXVsdGlzZWxlY3QsXG5cdFx0SW5maW5pdGVMb2FkaW5nXG5cdH0sXG5cdGRhdGEoKSB7XG5cdFx0bGV0IHVubGltaXRlZFF1b3RhID0ge2lkOidub25lJywgbGFiZWw6dCgnc2V0dGluZ3MnLCAnVW5saW1pdGVkJyl9LFxuXHRcdFx0ZGVmYXVsdFF1b3RhID0ge2lkOidkZWZhdWx0JywgbGFiZWw6dCgnc2V0dGluZ3MnLCAnRGVmYXVsdCBxdW90YScpfTtcblx0XHRyZXR1cm4ge1xuXHRcdFx0dW5saW1pdGVkUXVvdGE6IHVubGltaXRlZFF1b3RhLFxuXHRcdFx0ZGVmYXVsdFF1b3RhOiBkZWZhdWx0UXVvdGEsXG5cdFx0XHRsb2FkaW5nOiBmYWxzZSxcblx0XHRcdHNjcm9sbGVkOiBmYWxzZSxcblx0XHRcdG5ld1VzZXI6IHtcblx0XHRcdFx0aWQ6JycsXG5cdFx0XHRcdGRpc3BsYXlOYW1lOicnLFxuXHRcdFx0XHRwYXNzd29yZDonJyxcblx0XHRcdFx0bWFpbEFkZHJlc3M6JycsXG5cdFx0XHRcdGdyb3VwczogW10sXG5cdFx0XHRcdHN1YkFkbWluc0dyb3VwczogW10sXG5cdFx0XHRcdHF1b3RhOiBkZWZhdWx0UXVvdGEsXG5cdFx0XHRcdGxhbmd1YWdlOiB7Y29kZTogJ2VuJywgbmFtZTogdCgnc2V0dGluZ3MnLCAnRGVmYXVsdCBsYW5ndWFnZScpfVxuXHRcdFx0fVxuXHRcdH07XG5cdH0sXG5cdG1vdW50ZWQoKSB7XG5cdFx0aWYgKCF0aGlzLnNldHRpbmdzLmNhbkNoYW5nZVBhc3N3b3JkKSB7XG5cdFx0XHRPQy5Ob3RpZmljYXRpb24uc2hvd1RlbXBvcmFyeSh0KCdzZXR0aW5ncycsICdQYXNzd29yZCBjaGFuZ2UgaXMgZGlzYWJsZWQgYmVjYXVzZSB0aGUgbWFzdGVyIGtleSBpcyBkaXNhYmxlZCcpKTtcblx0XHR9XG5cdFx0LyoqIFxuXHRcdCAqIEluaXQgZGVmYXVsdCBsYW5ndWFnZSBmcm9tIHNlcnZlciBkYXRhLiBUaGUgdXNlIG9mIHRoaXMuc2V0dGluZ3Ncblx0XHQgKiByZXF1aXJlcyBhIGNvbXB1dGVkIHZhcmlhYmxlLHZ3aGljaCBicmVhayB0aGUgdi1tb2RlbCBiaW5kaW5nIG9mIHRoZSBmb3JtLFxuXHRcdCAqIHRoaXMgaXMgYSBtdWNoIGVhc2llciBzb2x1dGlvbiB0aGFuIGdldHRlciBhbmQgc2V0dGVyXG5cdFx0ICovXG5cdFx0VnVlLnNldCh0aGlzLm5ld1VzZXIubGFuZ3VhZ2UsICdjb2RlJywgdGhpcy5zZXR0aW5ncy5kZWZhdWx0TGFuZ3VhZ2UpO1xuXHR9LFxuXHRjb21wdXRlZDoge1xuXHRcdHNldHRpbmdzKCkge1xuXHRcdFx0cmV0dXJuIHRoaXMuJHN0b3JlLmdldHRlcnMuZ2V0U2VydmVyRGF0YTtcblx0XHR9LFxuXHRcdGZpbHRlcmVkVXNlcnMoKSB7XG5cdFx0XHRpZiAodGhpcy5zZWxlY3RlZEdyb3VwID09PSAnZGlzYWJsZWQnKSB7XG5cdFx0XHRcdGxldCBkaXNhYmxlZFVzZXJzID0gdGhpcy51c2Vycy5maWx0ZXIodXNlciA9PiB1c2VyLmVuYWJsZWQgIT09IHRydWUpO1xuXHRcdFx0XHRpZiAoZGlzYWJsZWRVc2Vycy5sZW5ndGg9PT0wICYmIHRoaXMuJHJlZnMuaW5maW5pdGVMb2FkaW5nICYmIHRoaXMuJHJlZnMuaW5maW5pdGVMb2FkaW5nLmlzQ29tcGxldGUpIHtcblx0XHRcdFx0XHQvLyBkaXNhYmxlZCBncm91cCBpcyBlbXB0eSwgcmVkaXJlY3Rpb24gdG8gYWxsIHVzZXJzXG5cdFx0XHRcdFx0dGhpcy4kcm91dGVyLnB1c2goJ3VzZXJzJyk7XG5cdFx0XHRcdFx0dGhpcy4kcmVmcy5pbmZpbml0ZUxvYWRpbmcuJGVtaXQoJyRJbmZpbml0ZUxvYWRpbmc6cmVzZXQnKTtcblx0XHRcdFx0fVxuXHRcdFx0XHRyZXR1cm4gZGlzYWJsZWRVc2Vycztcblx0XHRcdH1cblx0XHRcdHJldHVybiB0aGlzLnVzZXJzLmZpbHRlcih1c2VyID0+IHVzZXIuZW5hYmxlZCA9PT0gdHJ1ZSk7XG5cdFx0fSxcblx0XHRncm91cHMoKSB7XG5cdFx0XHQvLyBkYXRhIHByb3ZpZGVkIHBocCBzaWRlICsgcmVtb3ZlIHRoZSBkaXNhYmxlZCBncm91cFxuXHRcdFx0cmV0dXJuIHRoaXMuJHN0b3JlLmdldHRlcnMuZ2V0R3JvdXBzLmZpbHRlcihncm91cCA9PiBncm91cC5pZCAhPT0gJ2Rpc2FibGVkJyk7XG5cdFx0fSxcblx0XHRzdWJBZG1pbnNHcm91cHMoKSB7XG5cdFx0XHQvLyBkYXRhIHByb3ZpZGVkIHBocCBzaWRlXG5cdFx0XHRyZXR1cm4gdGhpcy4kc3RvcmUuZ2V0dGVycy5nZXRTZXJ2ZXJEYXRhLnN1YmFkbWluZ3JvdXBzO1xuXHRcdH0sXG5cdFx0cXVvdGFPcHRpb25zKCkge1xuXHRcdFx0Ly8gY29udmVydCB0aGUgcHJlc2V0IGFycmF5IGludG8gb2JqZWN0c1xuXHRcdFx0bGV0IHF1b3RhUHJlc2V0ID0gdGhpcy5zZXR0aW5ncy5xdW90YVByZXNldC5yZWR1Y2UoKGFjYywgY3VyKSA9PiBhY2MuY29uY2F0KHtpZDpjdXIsIGxhYmVsOmN1cn0pLCBbXSk7XG5cdFx0XHQvLyBhZGQgZGVmYXVsdCBwcmVzZXRzXG5cdFx0XHRxdW90YVByZXNldC51bnNoaWZ0KHRoaXMudW5saW1pdGVkUXVvdGEpO1xuXHRcdFx0cXVvdGFQcmVzZXQudW5zaGlmdCh0aGlzLmRlZmF1bHRRdW90YSk7XG5cdFx0XHRyZXR1cm4gcXVvdGFQcmVzZXQ7XG5cdFx0fSxcblx0XHRtaW5QYXNzd29yZExlbmd0aCgpIHtcblx0XHRcdHJldHVybiB0aGlzLiRzdG9yZS5nZXR0ZXJzLmdldFBhc3N3b3JkUG9saWN5TWluTGVuZ3RoO1xuXHRcdH0sXG5cdFx0dXNlcnNPZmZzZXQoKSB7XG5cdFx0XHRyZXR1cm4gdGhpcy4kc3RvcmUuZ2V0dGVycy5nZXRVc2Vyc09mZnNldDtcblx0XHR9LFxuXHRcdHVzZXJzTGltaXQoKSB7XG5cdFx0XHRyZXR1cm4gdGhpcy4kc3RvcmUuZ2V0dGVycy5nZXRVc2Vyc0xpbWl0O1xuXHRcdH0sXG5cblx0XHQvKiBMQU5HVUFHRVMgKi9cblx0XHRsYW5ndWFnZXMoKSB7XG5cdFx0XHRyZXR1cm4gQXJyYXkoXG5cdFx0XHRcdHtcblx0XHRcdFx0XHRsYWJlbDogdCgnc2V0dGluZ3MnLCAnQ29tbW9uIGxhbmd1YWdlcycpLFxuXHRcdFx0XHRcdGxhbmd1YWdlczogdGhpcy5zZXR0aW5ncy5sYW5ndWFnZXMuY29tbW9ubGFuZ3VhZ2VzXG5cdFx0XHRcdH0sXG5cdFx0XHRcdHtcblx0XHRcdFx0XHRsYWJlbDogdCgnc2V0dGluZ3MnLCAnQWxsIGxhbmd1YWdlcycpLFxuXHRcdFx0XHRcdGxhbmd1YWdlczogdGhpcy5zZXR0aW5ncy5sYW5ndWFnZXMubGFuZ3VhZ2VzXG5cdFx0XHRcdH1cblx0XHRcdCk7XG5cdFx0fVxuXHR9LFxuXHR3YXRjaDoge1xuXHRcdC8vIHdhdGNoIHVybCBjaGFuZ2UgYW5kIGdyb3VwIHNlbGVjdFxuXHRcdHNlbGVjdGVkR3JvdXA6IGZ1bmN0aW9uICh2YWwsIG9sZCkge1xuXHRcdFx0dGhpcy4kc3RvcmUuY29tbWl0KCdyZXNldFVzZXJzJyk7XG5cdFx0XHR0aGlzLiRyZWZzLmluZmluaXRlTG9hZGluZy4kZW1pdCgnJEluZmluaXRlTG9hZGluZzpyZXNldCcpO1xuXHRcdH1cblx0fSxcblx0bWV0aG9kczoge1xuXHRcdG9uU2Nyb2xsKGV2ZW50KSB7XG5cdFx0XHR0aGlzLnNjcm9sbGVkID0gZXZlbnQudGFyZ2V0LnNjcm9sbFRvcD4wO1xuXHRcdH0sXG5cblx0XHQvKipcblx0XHQgKiBWYWxpZGF0ZSBxdW90YSBzdHJpbmcgdG8gbWFrZSBzdXJlIGl0J3MgYSB2YWxpZCBodW1hbiBmaWxlIHNpemVcblx0XHQgKiBcblx0XHQgKiBAcGFyYW0ge3N0cmluZ30gcXVvdGEgUXVvdGEgaW4gcmVhZGFibGUgZm9ybWF0ICc1IEdCJ1xuXHRcdCAqIEByZXR1cm5zIHtPYmplY3R9XG5cdFx0ICovXG5cdFx0dmFsaWRhdGVRdW90YShxdW90YSkge1xuXHRcdFx0Ly8gb25seSB1c2VkIGZvciBuZXcgcHJlc2V0cyBzZW50IHRocm91Z2ggQFRhZ1xuXHRcdFx0bGV0IHZhbGlkUXVvdGEgPSBPQy5VdGlsLmNvbXB1dGVyRmlsZVNpemUocXVvdGEpO1xuXHRcdFx0aWYgKHZhbGlkUXVvdGEgIT09IG51bGwgJiYgdmFsaWRRdW90YSA+IDApIHtcblx0XHRcdFx0Ly8gdW5pZnkgZm9ybWF0IG91dHB1dFxuXHRcdFx0XHRxdW90YSA9IE9DLlV0aWwuaHVtYW5GaWxlU2l6ZShPQy5VdGlsLmNvbXB1dGVyRmlsZVNpemUocXVvdGEpKTtcblx0XHRcdFx0cmV0dXJuIHRoaXMubmV3VXNlci5xdW90YSA9IHtpZDogcXVvdGEsIGxhYmVsOiBxdW90YX07XG5cdFx0XHR9XG5cdFx0XHQvLyBEZWZhdWx0IGlzIHVubGltaXRlZFxuXHRcdFx0cmV0dXJuIHRoaXMubmV3VXNlci5xdW90YSA9IHRoaXMucXVvdGFPcHRpb25zWzBdO1xuXHRcdH0sXG5cblx0XHRpbmZpbml0ZUhhbmRsZXIoJHN0YXRlKSB7XG5cdFx0XHR0aGlzLiRzdG9yZS5kaXNwYXRjaCgnZ2V0VXNlcnMnLCB7XG5cdFx0XHRcdG9mZnNldDogdGhpcy51c2Vyc09mZnNldCxcblx0XHRcdFx0bGltaXQ6IHRoaXMudXNlcnNMaW1pdCxcblx0XHRcdFx0Z3JvdXA6IHRoaXMuc2VsZWN0ZWRHcm91cCAhPT0gJ2Rpc2FibGVkJyA/IHRoaXMuc2VsZWN0ZWRHcm91cCA6ICcnfSlcblx0XHRcdFx0LnRoZW4oKHJlc3BvbnNlKSA9PiB7cmVzcG9uc2U/JHN0YXRlLmxvYWRlZCgpOiRzdGF0ZS5jb21wbGV0ZSgpfSk7XG5cdFx0fSxcblxuXHRcdHJlc2V0Rm9ybSgpIHtcblx0XHRcdC8vIHJldmVydCBmb3JtIHRvIG9yaWdpbmFsIHN0YXRlXG5cdFx0XHRPYmplY3QuYXNzaWduKHRoaXMubmV3VXNlciwgdGhpcy4kb3B0aW9ucy5kYXRhLmNhbGwodGhpcykubmV3VXNlcik7XG5cdFx0XHR0aGlzLmxvYWRpbmcgPSBmYWxzZTtcblx0XHR9LFxuXHRcdGNyZWF0ZVVzZXIoKSB7XG5cdFx0XHR0aGlzLmxvYWRpbmcgPSB0cnVlO1xuXHRcdFx0dGhpcy4kc3RvcmUuZGlzcGF0Y2goJ2FkZFVzZXInLCB7XG5cdFx0XHRcdHVzZXJpZDogdGhpcy5uZXdVc2VyLmlkLFxuXHRcdFx0XHRwYXNzd29yZDogdGhpcy5uZXdVc2VyLnBhc3N3b3JkLFxuXHRcdFx0XHRlbWFpbDogdGhpcy5uZXdVc2VyLm1haWxBZGRyZXNzLFxuXHRcdFx0XHRncm91cHM6IHRoaXMubmV3VXNlci5ncm91cHMubWFwKGdyb3VwID0+IGdyb3VwLmlkKSxcblx0XHRcdFx0c3ViYWRtaW46IHRoaXMubmV3VXNlci5zdWJBZG1pbnNHcm91cHMubWFwKGdyb3VwID0+IGdyb3VwLmlkKSxcblx0XHRcdFx0cXVvdGE6IHRoaXMubmV3VXNlci5xdW90YS5pZCxcblx0XHRcdFx0bGFuZ3VhZ2U6IHRoaXMubmV3VXNlci5sYW5ndWFnZS5jb2RlLFxuXHRcdFx0fSkudGhlbigoKSA9PiB0aGlzLnJlc2V0Rm9ybSgpKTtcblx0XHR9XG5cdH1cbn1cbjwvc2NyaXB0PlxuXG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIHNyYy9jb21wb25lbnRzL3VzZXJMaXN0LnZ1ZSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///15\n"); +eval("//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tprops: ['item']\n});\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vc3JjL2NvbXBvbmVudHMvcG9wb3Zlck1lbnUvcG9wb3Zlckl0ZW0udnVlPzZkN2IiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7QUFjQTtTQUVBO0FBREEiLCJmaWxlIjoiMTQuanMiLCJzb3VyY2VzQ29udGVudCI6WyI8dGVtcGxhdGU+XG5cdDxsaT5cblx0XHQ8YSBAY2xpY2s9XCJpdGVtLmFjdGlvblwiIHYtaWY9XCJpdGVtLmhyZWZcIiA6aHJlZj1cIihpdGVtLmhyZWYpID8gaXRlbS5ocmVmIDogJyMnIFwiPlxuXHRcdFx0PHNwYW4gOmNsYXNzPVwiaXRlbS5pY29uXCI+PC9zcGFuPlxuXHRcdFx0PHNwYW4+e3tpdGVtLnRleHR9fTwvc3Bhbj5cblx0XHQ8L2E+XG5cdFx0PGJ1dHRvbiBAY2xpY2s9XCJpdGVtLmFjdGlvblwiIHYtZWxzZT5cblx0XHRcdDxzcGFuIDpjbGFzcz1cIml0ZW0uaWNvblwiPjwvc3Bhbj5cblx0XHRcdDxzcGFuPnt7aXRlbS50ZXh0fX08L3NwYW4+XG5cdFx0PC9idXR0b24+XG5cdDwvbGk+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0PlxuZXhwb3J0IGRlZmF1bHQge1xuXHRwcm9wczogWydpdGVtJ11cbn1cbjwvc2NyaXB0PlxuXG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIHNyYy9jb21wb25lbnRzL3BvcG92ZXJNZW51L3BvcG92ZXJJdGVtLnZ1ZSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///14\n"); + +/***/ }), +/* 15 */ +/***/ (function(module, exports) { + +eval("function validate(binding) {\r\n if (typeof binding.value !== 'function') {\r\n console.warn('[Vue-click-outside:] provided expression', binding.expression, 'is not a function.')\r\n return false\r\n }\r\n\r\n return true\r\n}\r\n\r\nfunction isPopup(popupItem, elements) {\r\n if (!popupItem || !elements)\r\n return false\r\n\r\n for (var i = 0, len = elements.length; i < len; i++) {\r\n try {\r\n if (popupItem.contains(elements[i])) {\r\n return true\r\n }\r\n if (elements[i].contains(popupItem)) {\r\n return false\r\n }\r\n } catch(e) {\r\n return false\r\n }\r\n }\r\n\r\n return false\r\n}\r\n\r\nfunction isServer(vNode) {\r\n return typeof vNode.componentInstance !== 'undefined' && vNode.componentInstance.$isServer\r\n}\r\n\r\nexports = module.exports = {\r\n bind: function (el, binding, vNode) {\r\n if (!validate(binding)) return\r\n\r\n // Define Handler and cache it on the element\r\n function handler(e) {\r\n if (!vNode.context) return\r\n\r\n // some components may have related popup item, on which we shall prevent the click outside event handler.\r\n var elements = e.path || (e.composedPath && e.composedPath())\r\n elements && elements.length > 0 && elements.unshift(e.target)\r\n \r\n if (el.contains(e.target) || isPopup(vNode.context.popupItem, elements)) return\r\n\r\n el.__vueClickOutside__.callback(e)\r\n }\r\n\r\n // add Event Listeners\r\n el.__vueClickOutside__ = {\r\n handler: handler,\r\n callback: binding.value\r\n }\r\n !isServer(vNode) && document.addEventListener('click', handler)\r\n },\r\n\r\n update: function (el, binding) {\r\n if (validate(binding)) el.__vueClickOutside__.callback = binding.value\r\n },\r\n \r\n unbind: function (el, binding, vNode) {\r\n // Remove Event Listeners\r\n !isServer(vNode) && document.removeEventListener('click', el.__vueClickOutside__.handler)\r\n delete el.__vueClickOutside__\r\n }\r\n}\r\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdnVlLWNsaWNrLW91dHNpZGUvaW5kZXguanM/NzQzYSJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBLHdDQUF3QyxTQUFTO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7O0FBRUg7QUFDQTtBQUNBLEdBQUc7O0FBRUg7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwiZmlsZSI6IjE1LmpzIiwic291cmNlc0NvbnRlbnQiOlsiZnVuY3Rpb24gdmFsaWRhdGUoYmluZGluZykge1xyXG4gIGlmICh0eXBlb2YgYmluZGluZy52YWx1ZSAhPT0gJ2Z1bmN0aW9uJykge1xyXG4gICAgY29uc29sZS53YXJuKCdbVnVlLWNsaWNrLW91dHNpZGU6XSBwcm92aWRlZCBleHByZXNzaW9uJywgYmluZGluZy5leHByZXNzaW9uLCAnaXMgbm90IGEgZnVuY3Rpb24uJylcclxuICAgIHJldHVybiBmYWxzZVxyXG4gIH1cclxuXHJcbiAgcmV0dXJuIHRydWVcclxufVxyXG5cclxuZnVuY3Rpb24gaXNQb3B1cChwb3B1cEl0ZW0sIGVsZW1lbnRzKSB7XHJcbiAgaWYgKCFwb3B1cEl0ZW0gfHwgIWVsZW1lbnRzKVxyXG4gICAgcmV0dXJuIGZhbHNlXHJcblxyXG4gIGZvciAodmFyIGkgPSAwLCBsZW4gPSBlbGVtZW50cy5sZW5ndGg7IGkgPCBsZW47IGkrKykge1xyXG4gICAgdHJ5IHtcclxuICAgICAgaWYgKHBvcHVwSXRlbS5jb250YWlucyhlbGVtZW50c1tpXSkpIHtcclxuICAgICAgICByZXR1cm4gdHJ1ZVxyXG4gICAgICB9XHJcbiAgICAgIGlmIChlbGVtZW50c1tpXS5jb250YWlucyhwb3B1cEl0ZW0pKSB7XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlXHJcbiAgICAgIH1cclxuICAgIH0gY2F0Y2goZSkge1xyXG4gICAgICByZXR1cm4gZmFsc2VcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJldHVybiBmYWxzZVxyXG59XHJcblxyXG5mdW5jdGlvbiBpc1NlcnZlcih2Tm9kZSkge1xyXG4gIHJldHVybiB0eXBlb2Ygdk5vZGUuY29tcG9uZW50SW5zdGFuY2UgIT09ICd1bmRlZmluZWQnICYmIHZOb2RlLmNvbXBvbmVudEluc3RhbmNlLiRpc1NlcnZlclxyXG59XHJcblxyXG5leHBvcnRzID0gbW9kdWxlLmV4cG9ydHMgPSB7XHJcbiAgYmluZDogZnVuY3Rpb24gKGVsLCBiaW5kaW5nLCB2Tm9kZSkge1xyXG4gICAgaWYgKCF2YWxpZGF0ZShiaW5kaW5nKSkgcmV0dXJuXHJcblxyXG4gICAgLy8gRGVmaW5lIEhhbmRsZXIgYW5kIGNhY2hlIGl0IG9uIHRoZSBlbGVtZW50XHJcbiAgICBmdW5jdGlvbiBoYW5kbGVyKGUpIHtcclxuICAgICAgaWYgKCF2Tm9kZS5jb250ZXh0KSByZXR1cm5cclxuXHJcbiAgICAgIC8vIHNvbWUgY29tcG9uZW50cyBtYXkgaGF2ZSByZWxhdGVkIHBvcHVwIGl0ZW0sIG9uIHdoaWNoIHdlIHNoYWxsIHByZXZlbnQgdGhlIGNsaWNrIG91dHNpZGUgZXZlbnQgaGFuZGxlci5cclxuICAgICAgdmFyIGVsZW1lbnRzID0gZS5wYXRoIHx8IChlLmNvbXBvc2VkUGF0aCAmJiBlLmNvbXBvc2VkUGF0aCgpKVxyXG4gICAgICBlbGVtZW50cyAmJiBlbGVtZW50cy5sZW5ndGggPiAwICYmIGVsZW1lbnRzLnVuc2hpZnQoZS50YXJnZXQpXHJcbiAgICAgIFxyXG4gICAgICBpZiAoZWwuY29udGFpbnMoZS50YXJnZXQpIHx8IGlzUG9wdXAodk5vZGUuY29udGV4dC5wb3B1cEl0ZW0sIGVsZW1lbnRzKSkgcmV0dXJuXHJcblxyXG4gICAgICBlbC5fX3Z1ZUNsaWNrT3V0c2lkZV9fLmNhbGxiYWNrKGUpXHJcbiAgICB9XHJcblxyXG4gICAgLy8gYWRkIEV2ZW50IExpc3RlbmVyc1xyXG4gICAgZWwuX192dWVDbGlja091dHNpZGVfXyA9IHtcclxuICAgICAgaGFuZGxlcjogaGFuZGxlcixcclxuICAgICAgY2FsbGJhY2s6IGJpbmRpbmcudmFsdWVcclxuICAgIH1cclxuICAgICFpc1NlcnZlcih2Tm9kZSkgJiYgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBoYW5kbGVyKVxyXG4gIH0sXHJcblxyXG4gIHVwZGF0ZTogZnVuY3Rpb24gKGVsLCBiaW5kaW5nKSB7XHJcbiAgICBpZiAodmFsaWRhdGUoYmluZGluZykpIGVsLl9fdnVlQ2xpY2tPdXRzaWRlX18uY2FsbGJhY2sgPSBiaW5kaW5nLnZhbHVlXHJcbiAgfSxcclxuICBcclxuICB1bmJpbmQ6IGZ1bmN0aW9uIChlbCwgYmluZGluZywgdk5vZGUpIHtcclxuICAgIC8vIFJlbW92ZSBFdmVudCBMaXN0ZW5lcnNcclxuICAgICFpc1NlcnZlcih2Tm9kZSkgJiYgZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignY2xpY2snLCBlbC5fX3Z1ZUNsaWNrT3V0c2lkZV9fLmhhbmRsZXIpXHJcbiAgICBkZWxldGUgZWwuX192dWVDbGlja091dHNpZGVfX1xyXG4gIH1cclxufVxyXG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy92dWUtY2xpY2stb3V0c2lkZS9pbmRleC5qc1xuLy8gbW9kdWxlIGlkID0gMTVcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///15\n"); /***/ }), /* 16 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__popoverMenu__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vue_click_outside__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vue_click_outside___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_vue_click_outside__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_vue_multiselect__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_vue_multiselect___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_vue_multiselect__);\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tname: 'userRow',\n\tprops: ['user', 'settings', 'groups', 'subAdminsGroups', 'quotaOptions', 'showConfig', 'languages'],\n\tcomponents: {\n\t\tpopoverMenu: __WEBPACK_IMPORTED_MODULE_0__popoverMenu__[\"a\" /* default */],\n\t\tMultiselect: __WEBPACK_IMPORTED_MODULE_2_vue_multiselect___default.a\n\t},\n\tdirectives: {\n\t\tClickOutside: __WEBPACK_IMPORTED_MODULE_1_vue_click_outside___default.a\n\t},\n\tmounted: function mounted() {\n\t\t// required if popup needs to stay opened after menu click\n\t\t// since we only have disable/delete actions, let's close it directly\n\t\t// this.popupItem = this.$el;\n\t},\n\tdata: function data() {\n\t\treturn {\n\t\t\trand: parseInt(Math.random() * 1000),\n\t\t\topenedMenu: false,\n\t\t\tloading: {\n\t\t\t\tall: false,\n\t\t\t\tdisplayName: false,\n\t\t\t\tpassword: false,\n\t\t\t\tmailAddress: false,\n\t\t\t\tgroups: false,\n\t\t\t\tsubadmins: false,\n\t\t\t\tquota: false,\n\t\t\t\tdelete: false,\n\t\t\t\tdisable: false,\n\t\t\t\tlanguages: false\n\t\t\t}\n\t\t};\n\t},\n\n\tcomputed: {\n\t\t/* USER POPOVERMENU ACTIONS */\n\t\tuserActions: function userActions() {\n\t\t\treturn [{\n\t\t\t\ticon: 'icon-delete',\n\t\t\t\ttext: t('settings', 'Delete user'),\n\t\t\t\taction: this.deleteUser\n\t\t\t}, {\n\t\t\t\t'icon': this.user.enabled ? 'icon-close' : 'icon-add',\n\t\t\t\t'text': this.user.enabled ? t('settings', 'Disable user') : t('settings', 'Enable user'),\n\t\t\t\t'action': this.enableDisableUser\n\t\t\t}];\n\t\t},\n\n\n\t\t/* GROUPS MANAGEMENT */\n\t\tuserGroups: function userGroups() {\n\t\t\tvar _this = this;\n\n\t\t\tvar userGroups = this.groups.filter(function (group) {\n\t\t\t\treturn _this.user.groups.includes(group.id);\n\t\t\t});\n\t\t\treturn userGroups;\n\t\t},\n\t\tuserSubAdminsGroups: function userSubAdminsGroups() {\n\t\t\tvar _this2 = this;\n\n\t\t\tvar userSubAdminsGroups = this.subAdminsGroups.filter(function (group) {\n\t\t\t\treturn _this2.user.subadmin.includes(group.id);\n\t\t\t});\n\t\t\treturn userSubAdminsGroups;\n\t\t},\n\n\n\t\t/* QUOTA MANAGEMENT */\n\t\tusedQuota: function usedQuota() {\n\t\t\tvar quota = this.user.quota.quota;\n\t\t\tif (quota > 0) {\n\t\t\t\tquota = Math.min(100, Math.round(this.user.quota.used / quota * 100));\n\t\t\t} else {\n\t\t\t\tvar usedInGB = this.user.quota.used / (10 * Math.pow(2, 30));\n\t\t\t\t//asymptotic curve approaching 50% at 10GB to visualize used stace with infinite quota\n\t\t\t\tquota = 95 * (1 - 1 / (usedInGB + 1));\n\t\t\t}\n\t\t\treturn isNaN(quota) ? 0 : quota;\n\t\t},\n\n\t\t// Mapping saved values to objects\n\t\tuserQuota: function userQuota() {\n\t\t\tif (this.user.quota.quota > 0) {\n\t\t\t\t// if value is valid, let's map the quotaOptions or return custom quota\n\t\t\t\tvar humanQuota = OC.Util.humanFileSize(this.user.quota.quota);\n\t\t\t\tvar userQuota = this.quotaOptions.find(function (quota) {\n\t\t\t\t\treturn quota.id === humanQuota;\n\t\t\t\t});\n\t\t\t\treturn userQuota ? userQuota : { id: humanQuota, label: humanQuota };\n\t\t\t} else if (this.user.quota.quota === 0 || this.user.quota.quota === 'default') {\n\t\t\t\t// default quota is replaced by the proper value on load\n\t\t\t\treturn this.quotaOptions[0];\n\t\t\t}\n\t\t\treturn this.quotaOptions[1]; // unlimited\n\t\t},\n\n\n\t\t/* PASSWORD POLICY? */\n\t\tminPasswordLength: function minPasswordLength() {\n\t\t\treturn this.$store.getters.getPasswordPolicyMinLength;\n\t\t},\n\n\n\t\t/* LANGUAGE */\n\t\tuserLanguage: function userLanguage() {\n\t\t\tvar _this3 = this;\n\n\t\t\tvar availableLanguages = this.languages[0].languages.concat(this.languages[1].languages);\n\t\t\tvar userLang = availableLanguages.find(function (lang) {\n\t\t\t\treturn lang.code === _this3.user.language;\n\t\t\t});\n\t\t\tif ((typeof userLang === 'undefined' ? 'undefined' : _typeof(userLang)) !== 'object' && this.user.language !== '') {\n\t\t\t\treturn {\n\t\t\t\t\tcode: this.user.language,\n\t\t\t\t\tname: this.user.language\n\t\t\t\t};\n\t\t\t} else if (this.user.language === '') {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\treturn userLang;\n\t\t}\n\t},\n\tmethods: {\n\t\t/* MENU HANDLING */\n\t\tshowMenu: function showMenu() {\n\t\t\tthis.openedMenu = true;\n\t\t},\n\t\thideMenu: function hideMenu() {\n\t\t\tthis.openedMenu = false;\n\t\t},\n\n\n\t\t/**\n * Generate avatar url\n * \n * @param {string} user The user name\n * @param {int} size Size integer, default 32\n * @returns {string}\n */\n\t\tgenerateAvatar: function generateAvatar(user) {\n\t\t\tvar size = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 32;\n\n\t\t\treturn OC.generateUrl('/avatar/{user}/{size}?v={version}', {\n\t\t\t\tuser: user,\n\t\t\t\tsize: size,\n\t\t\t\tversion: oc_userconfig.avatar.version\n\t\t\t});\n\t\t},\n\n\n\t\t/**\n * Format the limit text in the selected options\n * \n * @param {int} count elements left\n * @returns {string}\n */\n\t\tlimitGroups: function limitGroups(count) {\n\t\t\treturn '+' + count;\n\t\t},\n\t\tdeleteUser: function deleteUser() {\n\t\t\tvar _this4 = this;\n\n\t\t\tthis.loading.delete = true;\n\t\t\tthis.loading.all = true;\n\t\t\tvar userid = this.user.id;\n\t\t\treturn this.$store.dispatch('deleteUser', { userid: userid }).then(function () {\n\t\t\t\t_this4.loading.delete = false;\n\t\t\t\t_this4.loading.all = false;\n\t\t\t});\n\t\t},\n\t\tenableDisableUser: function enableDisableUser() {\n\t\t\tvar _this5 = this;\n\n\t\t\tthis.loading.delete = true;\n\t\t\tthis.loading.all = true;\n\t\t\tvar userid = this.user.id;\n\t\t\tvar enabled = !this.user.enabled;\n\t\t\treturn this.$store.dispatch('enableDisableUser', { userid: userid, enabled: enabled }).then(function () {\n\t\t\t\t_this5.loading.delete = false;\n\t\t\t\t_this5.loading.all = false;\n\t\t\t});\n\t\t},\n\n\n\t\t/**\n * Set user displayName\n * \n * @param {string} displayName The display name\n * @returns {Promise}\n */\n\t\tupdateDisplayName: function updateDisplayName() {\n\t\t\tvar _this6 = this;\n\n\t\t\tvar displayName = this.$refs.displayName.value;\n\t\t\tthis.loading.displayName = true;\n\t\t\tthis.$store.dispatch('setUserData', {\n\t\t\t\tuserid: this.user.id,\n\t\t\t\tkey: 'displayname',\n\t\t\t\tvalue: displayName\n\t\t\t}).then(function () {\n\t\t\t\t_this6.loading.displayName = false;\n\t\t\t\t_this6.$refs.displayName.value = displayName;\n\t\t\t});\n\t\t},\n\n\n\t\t/**\n * Set user password\n * \n * @param {string} password The email adress\n * @returns {Promise}\n */\n\t\tupdatePassword: function updatePassword() {\n\t\t\tvar _this7 = this;\n\n\t\t\tvar password = this.$refs.password.value;\n\t\t\tthis.loading.password = true;\n\t\t\tthis.$store.dispatch('setUserData', {\n\t\t\t\tuserid: this.user.id,\n\t\t\t\tkey: 'password',\n\t\t\t\tvalue: password\n\t\t\t}).then(function () {\n\t\t\t\t_this7.loading.password = false;\n\t\t\t\t_this7.$refs.password.value = ''; // empty & show placeholder \n\t\t\t});\n\t\t},\n\n\n\t\t/**\n * Set user mailAddress\n * \n * @param {string} mailAddress The email adress\n * @returns {Promise}\n */\n\t\tupdateEmail: function updateEmail() {\n\t\t\tvar _this8 = this;\n\n\t\t\tvar mailAddress = this.$refs.mailAddress.value;\n\t\t\tthis.loading.mailAddress = true;\n\t\t\tthis.$store.dispatch('setUserData', {\n\t\t\t\tuserid: this.user.id,\n\t\t\t\tkey: 'email',\n\t\t\t\tvalue: mailAddress\n\t\t\t}).then(function () {\n\t\t\t\t_this8.loading.mailAddress = false;\n\t\t\t\t_this8.$refs.mailAddress.value = mailAddress;\n\t\t\t});\n\t\t},\n\n\n\t\t/**\n * Create a new group\n * \n * @param {string} groups Group id\n * @returns {Promise}\n */\n\t\tcreateGroup: function createGroup(gid) {\n\t\t\tvar _this9 = this;\n\n\t\t\tthis.loading = { groups: true, subadmins: true };\n\t\t\tthis.$store.dispatch('addGroup', gid).then(function () {\n\t\t\t\t_this9.loading = { groups: false, subadmins: false };\n\t\t\t\tvar userid = _this9.user.id;\n\t\t\t\t_this9.$store.dispatch('addUserGroup', { userid: userid, gid: gid });\n\t\t\t});\n\t\t\treturn this.$store.getters.getGroups[this.groups.length];\n\t\t},\n\n\n\t\t/**\n * Add user to group\n * \n * @param {object} group Group object\n * @returns {Promise}\n */\n\t\taddUserGroup: function addUserGroup(group) {\n\t\t\tvar _this10 = this;\n\n\t\t\tthis.loading.groups = true;\n\t\t\tvar userid = this.user.id;\n\t\t\tvar gid = group.id;\n\t\t\treturn this.$store.dispatch('addUserGroup', { userid: userid, gid: gid }).then(function () {\n\t\t\t\treturn _this10.loading.groups = false;\n\t\t\t});\n\t\t},\n\n\n\t\t/**\n * Remove user from group\n * \n * @param {object} group Group object\n * @returns {Promise}\n */\n\t\tremoveUserGroup: function removeUserGroup(group) {\n\t\t\tvar _this11 = this;\n\n\t\t\tthis.loading.groups = true;\n\t\t\tvar userid = this.user.id;\n\t\t\tvar gid = group.id;\n\t\t\treturn this.$store.dispatch('removeUserGroup', { userid: userid, gid: gid }).then(function () {\n\t\t\t\treturn _this11.loading.groups = false;\n\t\t\t});\n\t\t},\n\n\n\t\t/**\n * Add user to group\n * \n * @param {object} group Group object\n * @returns {Promise}\n */\n\t\taddUserSubAdmin: function addUserSubAdmin(group) {\n\t\t\tvar _this12 = this;\n\n\t\t\tthis.loading.subadmins = true;\n\t\t\tvar userid = this.user.id;\n\t\t\tvar gid = group.id;\n\t\t\treturn this.$store.dispatch('addUserSubAdmin', { userid: userid, gid: gid }).then(function () {\n\t\t\t\treturn _this12.loading.subadmins = false;\n\t\t\t});\n\t\t},\n\n\n\t\t/**\n * Remove user from group\n * \n * @param {object} group Group object\n * @returns {Promise}\n */\n\t\tremoveUserSubAdmin: function removeUserSubAdmin(group) {\n\t\t\tvar _this13 = this;\n\n\t\t\tthis.loading.subadmins = true;\n\t\t\tvar userid = this.user.id;\n\t\t\tvar gid = group.id;\n\t\t\treturn this.$store.dispatch('removeUserSubAdmin', { userid: userid, gid: gid }).then(function () {\n\t\t\t\treturn _this13.loading.subadmins = false;\n\t\t\t});\n\t\t},\n\n\n\t\t/**\n * Dispatch quota set request\n * \n * @param {string|Object} quota Quota in readable format '5 GB' or Object {id: '5 GB', label: '5GB'}\n * @returns {string}\n */\n\t\tsetUserQuota: function setUserQuota() {\n\t\t\tvar _this14 = this;\n\n\t\t\tvar quota = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'none';\n\n\t\t\tthis.loading.quota = true;\n\t\t\t// ensure we only send the preset id\n\t\t\tquota = quota.id ? quota.id : quota;\n\t\t\tthis.$store.dispatch('setUserData', {\n\t\t\t\tuserid: this.user.id,\n\t\t\t\tkey: 'quota',\n\t\t\t\tvalue: quota\n\t\t\t}).then(function () {\n\t\t\t\treturn _this14.loading.quota = false;\n\t\t\t});\n\t\t\treturn quota;\n\t\t},\n\n\n\t\t/**\n * Validate quota string to make sure it's a valid human file size\n * \n * @param {string} quota Quota in readable format '5 GB'\n * @returns {Promise|boolean}\n */\n\t\tvalidateQuota: function validateQuota(quota) {\n\t\t\t// only used for new presets sent through @Tag\n\t\t\tvar validQuota = OC.Util.computerFileSize(quota);\n\t\t\tif (validQuota === 0) {\n\t\t\t\treturn this.setUserQuota('none');\n\t\t\t} else if (validQuota !== null) {\n\t\t\t\t// unify format output\n\t\t\t\treturn this.setUserQuota(OC.Util.humanFileSize(OC.Util.computerFileSize(quota)));\n\t\t\t}\n\t\t\t// if no valid do not change\n\t\t\treturn false;\n\t\t},\n\n\n\t\t/**\n * Dispatch language set request\n * \n * @param {Object} lang language object {code:'en', name:'English'}\n * @returns {Object}\n */\n\t\tsetUserLanguage: function setUserLanguage(lang) {\n\t\t\tvar _this15 = this;\n\n\t\t\tthis.loading.languages = true;\n\t\t\t// ensure we only send the preset id\n\t\t\tthis.$store.dispatch('setUserData', {\n\t\t\t\tuserid: this.user.id,\n\t\t\t\tkey: 'language',\n\t\t\t\tvalue: lang.code\n\t\t\t}).then(function () {\n\t\t\t\treturn _this15.loading.languages = false;\n\t\t\t});\n\t\t\treturn lang;\n\t\t}\n\t}\n});\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vc3JjL2NvbXBvbmVudHMvdXNlckxpc3QvdXNlclJvdy52dWU/Mjg4YyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXFGQTtBQUNBO0FBQ0E7O0FBRUE7T0FFQTt3RkFDQTs7QUFFQTtBQUVBO0FBSEE7O0FBTUE7QUFGQTs2QkFHQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO3VCQUNBOztrQ0FFQTtlQUNBOztTQUVBO2lCQUNBO2NBQ0E7aUJBQ0E7WUFDQTtlQUNBO1dBQ0E7WUFDQTthQUNBO2VBR0E7QUFaQTtBQUhBO0FBZ0JBOzs7QUFFQTtzQ0FDQTs7VUFFQTt3QkFDQTtpQkFDQTtBQUhBOytDQUtBOzhFQUNBO21CQUVBO0FBSkE7QUFNQTs7O0FBQ0E7O0FBQ0E7Ozs0Q0FDQTs7VUFDQTtBQUNBOztBQUNBOzs7K0NBQ0E7O1VBQ0E7QUFFQTs7O0FBQ0E7a0NBQ0E7K0JBQ0E7a0JBQ0E7b0VBQ0E7VUFDQTs0REFDQTtBQUNBO3NDQUNBO0FBQ0E7NkJBQ0E7QUFDQTs7QUFDQTs7a0NBRUE7QUFDQTsyREFDQTs7eUJBQ0E7OzREQUNBO2tGQUNBO0FBQ0E7NkJBQ0E7QUFDQTsrQkFUQSxDQVVBO0FBRUE7OztBQUNBO2tEQUNBOzhCQUNBO0FBRUE7OztBQUNBOztBQUNBOztpRkFDQTs7cUNBQ0E7O3NIQUNBOztxQkFFQTtxQkFFQTtBQUhBO3lDQUlBO1dBQ0E7QUFDQTtVQUNBO0FBRUE7QUFyRUE7O0FBdUVBO2dDQUNBO3FCQUNBO0FBQ0E7Z0NBQ0E7cUJBQ0E7QUFFQTs7O0FBT0E7Ozs7Ozs7O0FBQ0E7O2FBQ0EsWUFDQTtVQUVBO1VBQ0E7a0NBR0E7QUFMQTtBQVFBOzs7QUFNQTs7Ozs7OzJDQUNBO2dCQUNBO0FBRUE7O0FBQ0E7O3lCQUNBO3NCQUNBOzBCQUNBOytDQUNBLG1DQUNBOzRCQUNBO3lCQUNBO0FBQ0E7QUFFQTs7QUFDQTs7eUJBQ0E7c0JBQ0E7MEJBQ0E7NEJBQ0E7c0VBQ0EscUNBQ0E7NEJBQ0E7eUJBQ0E7QUFDQTtBQUVBOzs7QUFNQTs7Ozs7OztBQUNBOzs0Q0FDQTs4QkFDQTs7c0JBRUE7U0FDQTtXQUNBO0FBSEEsdUJBSUE7aUNBQ0E7cUNBQ0E7QUFDQTtBQUVBOzs7QUFNQTs7Ozs7OztBQUNBOztzQ0FDQTsyQkFDQTs7c0JBRUE7U0FDQTtXQUNBO0FBSEEsdUJBSUE7OEJBQ0E7c0NBQ0E7QUFDQTtBQUVBOzs7QUFNQTs7Ozs7OztBQUNBOzs0Q0FDQTs4QkFDQTs7c0JBRUE7U0FDQTtXQUNBO0FBSEEsdUJBSUE7aUNBQ0E7cUNBQ0E7QUFDQTtBQUVBOzs7QUFNQTs7Ozs7OztBQUNBOzs2Q0FDQTswREFDQTtpREFDQTs2QkFDQTs2REFDQTtBQUNBO29EQUNBO0FBRUE7OztBQU1BOzs7Ozs7O0FBQ0E7O3lCQUNBOzBCQUNBO21CQUNBO2lFQUNBO29DQUNBOztBQUVBOzs7QUFNQTs7Ozs7OztBQUNBOzt5QkFDQTswQkFDQTttQkFDQTtvRUFDQTtvQ0FDQTs7QUFFQTs7O0FBTUE7Ozs7Ozs7QUFDQTs7NEJBQ0E7MEJBQ0E7bUJBQ0E7b0VBQ0E7dUNBQ0E7O0FBRUE7OztBQU1BOzs7Ozs7O0FBQ0E7OzRCQUNBOzBCQUNBO21CQUNBO3VFQUNBO3VDQUNBOztBQUVBOzs7QUFNQTs7Ozs7OztBQUNBOzs7O3dCQUNBO0FBQ0E7aUNBQ0E7O3NCQUVBO1NBQ0E7V0FDQTtBQUhBO21DQUlBOztVQUNBO0FBRUE7OztBQU1BOzs7Ozs7K0NBQ0E7QUFDQTs2Q0FDQTt5QkFDQTs2QkFDQTttQ0FDQTtBQUNBOzRFQUNBO0FBQ0E7QUFDQTtVQUNBO0FBRUE7OztBQU1BOzs7Ozs7O0FBQ0E7OzRCQUNBO0FBQ0E7O3NCQUVBO1NBQ0E7Z0JBQ0E7QUFIQTt1Q0FJQTs7VUFDQTtBQUVBO0FBblBBO0FBdkdBIiwiZmlsZSI6IjE2LmpzIiwic291cmNlc0NvbnRlbnQiOlsiPHRlbXBsYXRlPlxuXHQ8ZGl2IGNsYXNzPVwicm93XCIgOmNsYXNzPVwieydkaXNhYmxlZCc6IGxvYWRpbmcuZGVsZXRlIHx8IGxvYWRpbmcuZGlzYWJsZX1cIj5cblx0XHQ8ZGl2IGNsYXNzPVwiYXZhdGFyXCIgOmNsYXNzPVwieydpY29uLWxvYWRpbmctc21hbGwnOiBsb2FkaW5nLmRlbGV0ZSB8fCBsb2FkaW5nLmRpc2FibGV9XCI+XG5cdFx0XHQ8aW1nIGFsdD1cIlwiIHdpZHRoPVwiMzJcIiBoZWlnaHQ9XCIzMlwiIDpzcmM9XCJnZW5lcmF0ZUF2YXRhcih1c2VyLmlkLCAzMilcIlxuXHRcdFx0XHQgOnNyY3NldD1cImdlbmVyYXRlQXZhdGFyKHVzZXIuaWQsIDY0KSsnIDJ4LCAnK2dlbmVyYXRlQXZhdGFyKHVzZXIuaWQsIDEyOCkrJyA0eCdcIlxuXHRcdFx0XHQgdi1pZj1cIiFsb2FkaW5nLmRlbGV0ZSAmJiAhbG9hZGluZy5kaXNhYmxlXCI+XG5cdFx0PC9kaXY+XG5cdFx0PGRpdiBjbGFzcz1cIm5hbWVcIj57e3VzZXIuaWR9fTwvZGl2PlxuXHRcdDxmb3JtIGNsYXNzPVwiZGlzcGxheU5hbWVcIiA6Y2xhc3M9XCJ7J2ljb24tbG9hZGluZy1zbWFsbCc6IGxvYWRpbmcuZGlzcGxheU5hbWV9XCIgdi1vbjpzdWJtaXQucHJldmVudD1cInVwZGF0ZURpc3BsYXlOYW1lXCI+XG5cdFx0XHQ8aW5wdXQgOmlkPVwiJ2Rpc3BsYXlOYW1lJyt1c2VyLmlkK3JhbmRcIiB0eXBlPVwidGV4dFwiXG5cdFx0XHRcdFx0OmRpc2FibGVkPVwibG9hZGluZy5kaXNwbGF5TmFtZXx8bG9hZGluZy5hbGxcIlxuXHRcdFx0XHRcdDp2YWx1ZT1cInVzZXIuZGlzcGxheW5hbWVcIiByZWY9XCJkaXNwbGF5TmFtZVwiXG5cdFx0XHRcdFx0YXV0b2NvbXBsZXRlPVwibmV3LXBhc3N3b3JkXCIgYXV0b2NvcnJlY3Q9XCJvZmZcIiBhdXRvY2FwaXRhbGl6ZT1cIm9mZlwiIHNwZWxsY2hlY2s9XCJmYWxzZVwiIC8+XG5cdFx0XHQ8aW5wdXQgdHlwZT1cInN1Ym1pdFwiIGNsYXNzPVwiaWNvbi1jb25maXJtXCIgdmFsdWU9XCJcIiAvPlxuXHRcdDwvZm9ybT5cblx0XHQ8Zm9ybSBjbGFzcz1cInBhc3N3b3JkXCIgdi1pZj1cInNldHRpbmdzLmNhbkNoYW5nZVBhc3N3b3JkXCIgOmNsYXNzPVwieydpY29uLWxvYWRpbmctc21hbGwnOiBsb2FkaW5nLnBhc3N3b3JkfVwiXG5cdFx0XHQgIHYtb246c3VibWl0LnByZXZlbnQ9XCJ1cGRhdGVQYXNzd29yZFwiPlxuXHRcdFx0PGlucHV0IDppZD1cIidwYXNzd29yZCcrdXNlci5pZCtyYW5kXCIgdHlwZT1cInBhc3N3b3JkXCIgcmVxdWlyZWRcblx0XHRcdFx0XHQ6ZGlzYWJsZWQ9XCJsb2FkaW5nLnBhc3N3b3JkfHxsb2FkaW5nLmFsbFwiIDptaW5sZW5ndGg9XCJtaW5QYXNzd29yZExlbmd0aFwiXG5cdFx0XHRcdFx0dmFsdWU9XCJcIiA6cGxhY2Vob2xkZXI9XCJ0KCdzZXR0aW5ncycsICdOZXcgcGFzc3dvcmQnKVwiIHJlZj1cInBhc3N3b3JkXCJcblx0XHRcdFx0XHRhdXRvY29tcGxldGU9XCJuZXctcGFzc3dvcmRcIiBhdXRvY29ycmVjdD1cIm9mZlwiIGF1dG9jYXBpdGFsaXplPVwib2ZmXCIgc3BlbGxjaGVjaz1cImZhbHNlXCIgLz5cblx0XHRcdDxpbnB1dCB0eXBlPVwic3VibWl0XCIgY2xhc3M9XCJpY29uLWNvbmZpcm1cIiB2YWx1ZT1cIlwiIC8+XG5cdFx0PC9mb3JtPlxuXHRcdDxkaXYgdi1lbHNlPjwvZGl2PlxuXHRcdDxmb3JtIGNsYXNzPVwibWFpbEFkZHJlc3NcIiA6Y2xhc3M9XCJ7J2ljb24tbG9hZGluZy1zbWFsbCc6IGxvYWRpbmcubWFpbEFkZHJlc3N9XCIgdi1vbjpzdWJtaXQucHJldmVudD1cInVwZGF0ZUVtYWlsXCI+XG5cdFx0XHQ8aW5wdXQgOmlkPVwiJ21haWxBZGRyZXNzJyt1c2VyLmlkK3JhbmRcIiB0eXBlPVwiZW1haWxcIlxuXHRcdFx0XHRcdDpkaXNhYmxlZD1cImxvYWRpbmcubWFpbEFkZHJlc3N8fGxvYWRpbmcuYWxsXCJcblx0XHRcdFx0XHQ6dmFsdWU9XCJ1c2VyLmVtYWlsXCIgcmVmPVwibWFpbEFkZHJlc3NcIlxuXHRcdFx0XHRcdGF1dG9jb21wbGV0ZT1cIm5ldy1wYXNzd29yZFwiIGF1dG9jb3JyZWN0PVwib2ZmXCIgYXV0b2NhcGl0YWxpemU9XCJvZmZcIiBzcGVsbGNoZWNrPVwiZmFsc2VcIiAvPlxuXHRcdFx0PGlucHV0IHR5cGU9XCJzdWJtaXRcIiBjbGFzcz1cImljb24tY29uZmlybVwiIHZhbHVlPVwiXCIgLz5cblx0XHQ8L2Zvcm0+XG5cdFx0PGRpdiBjbGFzcz1cImdyb3Vwc1wiIDpjbGFzcz1cInsnaWNvbi1sb2FkaW5nLXNtYWxsJzogbG9hZGluZy5ncm91cHN9XCI+XG5cdFx0XHQ8bXVsdGlzZWxlY3QgOnZhbHVlPVwidXNlckdyb3Vwc1wiIDpvcHRpb25zPVwiZ3JvdXBzXCIgOmRpc2FibGVkPVwibG9hZGluZy5ncm91cHN8fGxvYWRpbmcuYWxsXCJcblx0XHRcdFx0XHRcdCB0YWctcGxhY2Vob2xkZXI9XCJjcmVhdGVcIiA6cGxhY2Vob2xkZXI9XCJ0KCdzZXR0aW5ncycsICdBZGQgdXNlciBpbiBncm91cCcpXCJcblx0XHRcdFx0XHRcdCBsYWJlbD1cIm5hbWVcIiB0cmFjay1ieT1cImlkXCIgY2xhc3M9XCJtdWx0aXNlbGVjdC12dWVcIlxuXHRcdFx0XHRcdFx0IDpsaW1pdD1cIjJcIiA6bGltaXRUZXh0PVwibGltaXRHcm91cHNcIlxuXHRcdFx0XHRcdFx0IDptdWx0aXBsZT1cInRydWVcIiA6dGFnZ2FibGU9XCJ0cnVlXCIgOmNsb3NlT25TZWxlY3Q9XCJmYWxzZVwiXG5cdFx0XHRcdFx0XHQgQHRhZz1cImNyZWF0ZUdyb3VwXCIgQHNlbGVjdD1cImFkZFVzZXJHcm91cFwiIEByZW1vdmU9XCJyZW1vdmVVc2VyR3JvdXBcIj5cblx0XHRcdDwvbXVsdGlzZWxlY3Q+XG5cdFx0PC9kaXY+XG5cdFx0PGRpdiBjbGFzcz1cInN1YmFkbWluc1wiIHYtaWY9XCJzdWJBZG1pbnNHcm91cHMubGVuZ3RoPjBcIiA6Y2xhc3M9XCJ7J2ljb24tbG9hZGluZy1zbWFsbCc6IGxvYWRpbmcuc3ViYWRtaW5zfVwiPlxuXHRcdFx0PG11bHRpc2VsZWN0IDp2YWx1ZT1cInVzZXJTdWJBZG1pbnNHcm91cHNcIiA6b3B0aW9ucz1cInN1YkFkbWluc0dyb3Vwc1wiIDpkaXNhYmxlZD1cImxvYWRpbmcuc3ViYWRtaW5zfHxsb2FkaW5nLmFsbFwiXG5cdFx0XHRcdFx0XHQgOnBsYWNlaG9sZGVyPVwidCgnc2V0dGluZ3MnLCAnU2V0IHVzZXIgYXMgYWRtaW4gZm9yJylcIlxuXHRcdFx0XHRcdFx0IGxhYmVsPVwibmFtZVwiIHRyYWNrLWJ5PVwiaWRcIiBjbGFzcz1cIm11bHRpc2VsZWN0LXZ1ZVwiXG5cdFx0XHRcdFx0XHQgOmxpbWl0PVwiMlwiIDpsaW1pdFRleHQ9XCJsaW1pdEdyb3Vwc1wiXG5cdFx0XHRcdFx0XHQgOm11bHRpcGxlPVwidHJ1ZVwiIDpjbG9zZU9uU2VsZWN0PVwiZmFsc2VcIlxuXHRcdFx0XHRcdFx0IEBzZWxlY3Q9XCJhZGRVc2VyU3ViQWRtaW5cIiBAcmVtb3ZlPVwicmVtb3ZlVXNlclN1YkFkbWluXCI+XG5cdFx0XHRcdDxzcGFuIHNsb3Q9XCJub1Jlc3VsdFwiPnt7dCgnc2V0dGluZ3MnLCdObyByZXN1bHQnKX19PC9zcGFuPlxuXHRcdFx0PC9tdWx0aXNlbGVjdD5cblx0XHQ8L2Rpdj5cblx0XHQ8ZGl2IGNsYXNzPVwicXVvdGFcIiA6Y2xhc3M9XCJ7J2ljb24tbG9hZGluZy1zbWFsbCc6IGxvYWRpbmcucXVvdGF9XCI+XG5cdFx0XHQ8bXVsdGlzZWxlY3QgOnZhbHVlPVwidXNlclF1b3RhXCIgOm9wdGlvbnM9XCJxdW90YU9wdGlvbnNcIiA6ZGlzYWJsZWQ9XCJsb2FkaW5nLnF1b3RhfHxsb2FkaW5nLmFsbFwiXG5cdFx0XHRcdFx0XHQgdGFnLXBsYWNlaG9sZGVyPVwiY3JlYXRlXCIgOnBsYWNlaG9sZGVyPVwidCgnc2V0dGluZ3MnLCAnU2VsZWN0IHVzZXIgcXVvdGEnKVwiXG5cdFx0XHRcdFx0XHQgbGFiZWw9XCJsYWJlbFwiIHRyYWNrLWJ5PVwiaWRcIiBjbGFzcz1cIm11bHRpc2VsZWN0LXZ1ZVwiXG5cdFx0XHRcdFx0XHQgOmFsbG93RW1wdHk9XCJmYWxzZVwiIDp0YWdnYWJsZT1cInRydWVcIlxuXHRcdFx0XHRcdFx0IEB0YWc9XCJ2YWxpZGF0ZVF1b3RhXCIgQGlucHV0PVwic2V0VXNlclF1b3RhXCI+XG5cdFx0XHQ8L211bHRpc2VsZWN0PlxuXHRcdFx0PHByb2dyZXNzIGNsYXNzPVwicXVvdGEtdXNlci1wcm9ncmVzc1wiIDpjbGFzcz1cInsnd2Fybic6dXNlZFF1b3RhPjgwfVwiIDp2YWx1ZT1cInVzZWRRdW90YVwiIG1heD1cIjEwMFwiPjwvcHJvZ3Jlc3M+XG5cdFx0PC9kaXY+XG5cdFx0PGRpdiBjbGFzcz1cImxhbmd1YWdlc1wiIDpjbGFzcz1cInsnaWNvbi1sb2FkaW5nLXNtYWxsJzogbG9hZGluZy5sYW5ndWFnZXN9XCJcblx0XHRcdCB2LWlmPVwic2hvd0NvbmZpZy5zaG93TGFuZ3VhZ2VzXCI+XG5cdFx0XHQ8bXVsdGlzZWxlY3QgOnZhbHVlPVwidXNlckxhbmd1YWdlXCIgOm9wdGlvbnM9XCJsYW5ndWFnZXNcIiA6ZGlzYWJsZWQ9XCJsb2FkaW5nLmxhbmd1YWdlc3x8bG9hZGluZy5hbGxcIlxuXHRcdFx0XHRcdFx0IDpwbGFjZWhvbGRlcj1cInQoJ3NldHRpbmdzJywgJ05vIGxhbmd1YWdlIHNldCcpXCJcblx0XHRcdFx0XHRcdCBsYWJlbD1cIm5hbWVcIiB0cmFjay1ieT1cImNvZGVcIiBjbGFzcz1cIm11bHRpc2VsZWN0LXZ1ZVwiXG5cdFx0XHRcdFx0XHQgOmFsbG93RW1wdHk9XCJmYWxzZVwiIGdyb3VwLXZhbHVlcz1cImxhbmd1YWdlc1wiIGdyb3VwLWxhYmVsPVwibGFiZWxcIlxuXHRcdFx0XHRcdFx0IEBpbnB1dD1cInNldFVzZXJMYW5ndWFnZVwiPlxuXHRcdFx0PC9tdWx0aXNlbGVjdD5cblx0XHQ8L2Rpdj5cblx0XHQ8ZGl2IGNsYXNzPVwic3RvcmFnZUxvY2F0aW9uXCIgdi1pZj1cInNob3dDb25maWcuc2hvd1N0b3JhZ2VQYXRoXCI+e3t1c2VyLnN0b3JhZ2VMb2NhdGlvbn19PC9kaXY+XG5cdFx0PGRpdiBjbGFzcz1cInVzZXJCYWNrZW5kXCIgdi1pZj1cInNob3dDb25maWcuc2hvd1VzZXJCYWNrZW5kXCI+e3t1c2VyLmJhY2tlbmR9fTwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJsYXN0TG9naW5cIiB2LWlmPVwic2hvd0NvbmZpZy5zaG93TGFzdExvZ2luXCIgOnRpdGxlPVwidXNlci5sYXN0TG9naW4+MCA/IE9DLlV0aWwuZm9ybWF0RGF0ZSh1c2VyLmxhc3RMb2dpbikgOiAnJ1wiPlxuXHRcdFx0e3t1c2VyLmxhc3RMb2dpbj4wID8gT0MuVXRpbC5yZWxhdGl2ZU1vZGlmaWVkRGF0ZSh1c2VyLmxhc3RMb2dpbikgOiB0KCdzZXR0aW5ncycsJ05ldmVyJyl9fVxuXHRcdDwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJ1c2VyQWN0aW9uc1wiPlxuXHRcdFx0PGRpdiBjbGFzcz1cInRvZ2dsZVVzZXJBY3Rpb25zXCIgdi1pZj1cIk9DLmN1cnJlbnRVc2VyICE9PSB1c2VyLmlkICYmIHVzZXIuaWQgIT09ICdhZG1pbicgJiYgIWxvYWRpbmcuYWxsXCI+XG5cdFx0XHRcdDxkaXYgY2xhc3M9XCJpY29uLW1vcmVcIiB2LWNsaWNrLW91dHNpZGU9XCJoaWRlTWVudVwiIEBjbGljaz1cInNob3dNZW51XCI+PC9kaXY+XG5cdFx0XHRcdDxkaXYgY2xhc3M9XCJwb3BvdmVybWVudVwiIDpjbGFzcz1cInsgJ29wZW4nOiBvcGVuZWRNZW51IH1cIj5cblx0XHRcdFx0XHQ8cG9wb3Zlci1tZW51IDptZW51PVwidXNlckFjdGlvbnNcIiAvPlxuXHRcdFx0XHQ8L2Rpdj5cblx0XHRcdDwvZGl2PlxuXHRcdDwvZGl2PlxuXHRcdDwvZGl2PlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdD5cbmltcG9ydCBwb3BvdmVyTWVudSBmcm9tICcuLi9wb3BvdmVyTWVudSc7XG5pbXBvcnQgQ2xpY2tPdXRzaWRlIGZyb20gJ3Z1ZS1jbGljay1vdXRzaWRlJztcbmltcG9ydCBNdWx0aXNlbGVjdCBmcm9tICd2dWUtbXVsdGlzZWxlY3QnO1xuXG5leHBvcnQgZGVmYXVsdCB7XG5cdG5hbWU6ICd1c2VyUm93Jyxcblx0cHJvcHM6IFsndXNlcicsICdzZXR0aW5ncycsICdncm91cHMnLCAnc3ViQWRtaW5zR3JvdXBzJywgJ3F1b3RhT3B0aW9ucycsICdzaG93Q29uZmlnJywgJ2xhbmd1YWdlcyddLFxuXHRjb21wb25lbnRzOiB7XG5cdFx0cG9wb3Zlck1lbnUsXG5cdFx0TXVsdGlzZWxlY3Rcblx0fSxcblx0ZGlyZWN0aXZlczoge1xuXHRcdENsaWNrT3V0c2lkZVxuXHR9LFxuXHRtb3VudGVkKCkge1xuXHRcdC8vIHJlcXVpcmVkIGlmIHBvcHVwIG5lZWRzIHRvIHN0YXkgb3BlbmVkIGFmdGVyIG1lbnUgY2xpY2tcblx0XHQvLyBzaW5jZSB3ZSBvbmx5IGhhdmUgZGlzYWJsZS9kZWxldGUgYWN0aW9ucywgbGV0J3MgY2xvc2UgaXQgZGlyZWN0bHlcblx0XHQvLyB0aGlzLnBvcHVwSXRlbSA9IHRoaXMuJGVsO1xuXHR9LFxuXHRkYXRhKCkge1xuXHRcdHJldHVybiB7XG5cdFx0XHRyYW5kOiBwYXJzZUludChNYXRoLnJhbmRvbSgpICogMTAwMCksXG5cdFx0XHRvcGVuZWRNZW51OiBmYWxzZSxcblx0XHRcdGxvYWRpbmc6IHtcblx0XHRcdFx0YWxsOiBmYWxzZSxcblx0XHRcdFx0ZGlzcGxheU5hbWU6IGZhbHNlLFxuXHRcdFx0XHRwYXNzd29yZDogZmFsc2UsXG5cdFx0XHRcdG1haWxBZGRyZXNzOiBmYWxzZSxcblx0XHRcdFx0Z3JvdXBzOiBmYWxzZSxcblx0XHRcdFx0c3ViYWRtaW5zOiBmYWxzZSxcblx0XHRcdFx0cXVvdGE6IGZhbHNlLFxuXHRcdFx0XHRkZWxldGU6IGZhbHNlLFxuXHRcdFx0XHRkaXNhYmxlOiBmYWxzZSxcblx0XHRcdFx0bGFuZ3VhZ2VzOiBmYWxzZVxuXHRcdFx0fVxuXHRcdH1cblx0fSxcblx0Y29tcHV0ZWQ6IHtcblx0XHQvKiBVU0VSIFBPUE9WRVJNRU5VIEFDVElPTlMgKi9cblx0XHR1c2VyQWN0aW9ucygpIHtcblx0XHRcdHJldHVybiBbe1xuXHRcdFx0XHRpY29uOiAnaWNvbi1kZWxldGUnLFxuXHRcdFx0XHR0ZXh0OiB0KCdzZXR0aW5ncycsJ0RlbGV0ZSB1c2VyJyksXG5cdFx0XHRcdGFjdGlvbjogdGhpcy5kZWxldGVVc2VyXG5cdFx0XHR9LHtcblx0XHRcdFx0J2ljb24nOiB0aGlzLnVzZXIuZW5hYmxlZCA/ICdpY29uLWNsb3NlJyA6ICdpY29uLWFkZCcsXG5cdFx0XHRcdCd0ZXh0JzogdGhpcy51c2VyLmVuYWJsZWQgPyB0KCdzZXR0aW5ncycsJ0Rpc2FibGUgdXNlcicpIDogdCgnc2V0dGluZ3MnLCdFbmFibGUgdXNlcicpLFxuXHRcdFx0XHQnYWN0aW9uJzogdGhpcy5lbmFibGVEaXNhYmxlVXNlclxuXHRcdFx0fV1cblx0XHR9LFxuXG5cdFx0LyogR1JPVVBTIE1BTkFHRU1FTlQgKi9cblx0XHR1c2VyR3JvdXBzKCkge1xuXHRcdFx0bGV0IHVzZXJHcm91cHMgPSB0aGlzLmdyb3Vwcy5maWx0ZXIoZ3JvdXAgPT4gdGhpcy51c2VyLmdyb3Vwcy5pbmNsdWRlcyhncm91cC5pZCkpO1xuXHRcdFx0cmV0dXJuIHVzZXJHcm91cHM7XG5cdFx0fSxcblx0XHR1c2VyU3ViQWRtaW5zR3JvdXBzKCkge1xuXHRcdFx0bGV0IHVzZXJTdWJBZG1pbnNHcm91cHMgPSB0aGlzLnN1YkFkbWluc0dyb3Vwcy5maWx0ZXIoZ3JvdXAgPT4gdGhpcy51c2VyLnN1YmFkbWluLmluY2x1ZGVzKGdyb3VwLmlkKSk7XG5cdFx0XHRyZXR1cm4gdXNlclN1YkFkbWluc0dyb3Vwcztcblx0XHR9LFxuXG5cdFx0LyogUVVPVEEgTUFOQUdFTUVOVCAqL1xuXHRcdHVzZWRRdW90YSgpIHtcblx0XHRcdGxldCBxdW90YSA9IHRoaXMudXNlci5xdW90YS5xdW90YTtcblx0XHRcdGlmIChxdW90YSA+IDApIHtcblx0XHRcdFx0cXVvdGEgPSBNYXRoLm1pbigxMDAsIE1hdGgucm91bmQodGhpcy51c2VyLnF1b3RhLnVzZWQgLyBxdW90YSAqIDEwMCkpO1xuXHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0dmFyIHVzZWRJbkdCID0gdGhpcy51c2VyLnF1b3RhLnVzZWQgLyAoMTAgKiBNYXRoLnBvdygyLCAzMCkpO1xuXHRcdFx0XHQvL2FzeW1wdG90aWMgY3VydmUgYXBwcm9hY2hpbmcgNTAlIGF0IDEwR0IgdG8gdmlzdWFsaXplIHVzZWQgc3RhY2Ugd2l0aCBpbmZpbml0ZSBxdW90YVxuXHRcdFx0XHRxdW90YSA9IDk1ICogKDEgLSAoMSAvICh1c2VkSW5HQiArIDEpKSk7XG5cdFx0XHR9XG5cdFx0XHRyZXR1cm4gaXNOYU4ocXVvdGEpID8gMCA6IHF1b3RhO1xuXHRcdH0sXG5cdFx0Ly8gTWFwcGluZyBzYXZlZCB2YWx1ZXMgdG8gb2JqZWN0c1xuXHRcdHVzZXJRdW90YSgpIHtcblx0XHRcdGlmICh0aGlzLnVzZXIucXVvdGEucXVvdGEgPiAwKSB7XG5cdFx0XHRcdC8vIGlmIHZhbHVlIGlzIHZhbGlkLCBsZXQncyBtYXAgdGhlIHF1b3RhT3B0aW9ucyBvciByZXR1cm4gY3VzdG9tIHF1b3RhXG5cdFx0XHRcdGxldCBodW1hblF1b3RhID0gT0MuVXRpbC5odW1hbkZpbGVTaXplKHRoaXMudXNlci5xdW90YS5xdW90YSk7XG5cdFx0XHRcdGxldCB1c2VyUXVvdGEgPSB0aGlzLnF1b3RhT3B0aW9ucy5maW5kKHF1b3RhID0+IHF1b3RhLmlkID09PSBodW1hblF1b3RhKTtcblx0XHRcdFx0cmV0dXJuIHVzZXJRdW90YSA/IHVzZXJRdW90YSA6IHtpZDpodW1hblF1b3RhLCBsYWJlbDpodW1hblF1b3RhfTtcblx0XHRcdH0gZWxzZSBpZiAodGhpcy51c2VyLnF1b3RhLnF1b3RhID09PSAwIHx8IHRoaXMudXNlci5xdW90YS5xdW90YSA9PT0gJ2RlZmF1bHQnKSB7XG5cdFx0XHRcdC8vIGRlZmF1bHQgcXVvdGEgaXMgcmVwbGFjZWQgYnkgdGhlIHByb3BlciB2YWx1ZSBvbiBsb2FkXG5cdFx0XHRcdHJldHVybiB0aGlzLnF1b3RhT3B0aW9uc1swXTtcblx0XHRcdH1cblx0XHRcdHJldHVybiB0aGlzLnF1b3RhT3B0aW9uc1sxXTsgLy8gdW5saW1pdGVkXG5cdFx0fSxcblxuXHRcdC8qIFBBU1NXT1JEIFBPTElDWT8gKi9cblx0XHRtaW5QYXNzd29yZExlbmd0aCgpIHtcblx0XHRcdHJldHVybiB0aGlzLiRzdG9yZS5nZXR0ZXJzLmdldFBhc3N3b3JkUG9saWN5TWluTGVuZ3RoO1xuXHRcdH0sXG5cblx0XHQvKiBMQU5HVUFHRSAqL1xuXHRcdHVzZXJMYW5ndWFnZSgpIHtcblx0XHRcdGxldCBhdmFpbGFibGVMYW5ndWFnZXMgPSB0aGlzLmxhbmd1YWdlc1swXS5sYW5ndWFnZXMuY29uY2F0KHRoaXMubGFuZ3VhZ2VzWzFdLmxhbmd1YWdlcyk7XG5cdFx0XHRsZXQgdXNlckxhbmcgPSBhdmFpbGFibGVMYW5ndWFnZXMuZmluZChsYW5nID0+IGxhbmcuY29kZSA9PT0gdGhpcy51c2VyLmxhbmd1YWdlKTtcblx0XHRcdGlmICh0eXBlb2YgdXNlckxhbmcgIT09ICdvYmplY3QnICYmIHRoaXMudXNlci5sYW5ndWFnZSAhPT0gJycpIHtcblx0XHRcdFx0cmV0dXJuIHtcblx0XHRcdFx0XHRjb2RlOiB0aGlzLnVzZXIubGFuZ3VhZ2UsXG5cdFx0XHRcdFx0bmFtZTogdGhpcy51c2VyLmxhbmd1YWdlXG5cdFx0XHRcdH1cblx0XHRcdH0gZWxzZSBpZih0aGlzLnVzZXIubGFuZ3VhZ2UgPT09ICcnKSB7XG5cdFx0XHRcdHJldHVybiBmYWxzZTtcblx0XHRcdH1cblx0XHRcdHJldHVybiB1c2VyTGFuZztcblx0XHR9XG5cdH0sXG5cdG1ldGhvZHM6IHtcblx0XHQvKiBNRU5VIEhBTkRMSU5HICovXG5cdFx0c2hvd01lbnUoKSB7XG5cdFx0XHR0aGlzLm9wZW5lZE1lbnUgPSB0cnVlO1xuXHRcdH0sXG5cdFx0aGlkZU1lbnUoKSB7XG5cdFx0XHR0aGlzLm9wZW5lZE1lbnUgPSBmYWxzZTtcblx0XHR9LFxuXG5cdFx0LyoqXG5cdFx0ICogR2VuZXJhdGUgYXZhdGFyIHVybFxuXHRcdCAqIFxuXHRcdCAqIEBwYXJhbSB7c3RyaW5nfSB1c2VyIFRoZSB1c2VyIG5hbWVcblx0XHQgKiBAcGFyYW0ge2ludH0gc2l6ZSBTaXplIGludGVnZXIsIGRlZmF1bHQgMzJcblx0XHQgKiBAcmV0dXJucyB7c3RyaW5nfVxuXHRcdCAqL1xuXHRcdGdlbmVyYXRlQXZhdGFyKHVzZXIsIHNpemU9MzIpIHtcblx0XHRcdHJldHVybiBPQy5nZW5lcmF0ZVVybChcblx0XHRcdFx0Jy9hdmF0YXIve3VzZXJ9L3tzaXplfT92PXt2ZXJzaW9ufScsXG5cdFx0XHRcdHtcblx0XHRcdFx0XHR1c2VyOiB1c2VyLFxuXHRcdFx0XHRcdHNpemU6IHNpemUsXG5cdFx0XHRcdFx0dmVyc2lvbjogb2NfdXNlcmNvbmZpZy5hdmF0YXIudmVyc2lvblxuXHRcdFx0XHR9XG5cdFx0XHQpO1xuXHRcdH0sXG5cblxuXHRcdC8qKlxuXHRcdCAqIEZvcm1hdCB0aGUgbGltaXQgdGV4dCBpbiB0aGUgc2VsZWN0ZWQgb3B0aW9uc1xuXHRcdCAqIFxuXHRcdCAqIEBwYXJhbSB7aW50fSBjb3VudCBlbGVtZW50cyBsZWZ0XG5cdFx0ICogQHJldHVybnMge3N0cmluZ31cblx0XHQgKi9cblx0XHRsaW1pdEdyb3Vwcyhjb3VudCkge1xuXHRcdFx0cmV0dXJuICcrJytjb3VudDtcblx0XHR9LFxuXG5cdFx0ZGVsZXRlVXNlcigpIHtcblx0XHRcdHRoaXMubG9hZGluZy5kZWxldGUgPSB0cnVlO1xuXHRcdFx0dGhpcy5sb2FkaW5nLmFsbCA9IHRydWU7XG5cdFx0XHRsZXQgdXNlcmlkID0gdGhpcy51c2VyLmlkO1xuXHRcdFx0cmV0dXJuIHRoaXMuJHN0b3JlLmRpc3BhdGNoKCdkZWxldGVVc2VyJywge3VzZXJpZH0pXG5cdFx0XHRcdC50aGVuKCgpID0+IHtcblx0XHRcdFx0XHR0aGlzLmxvYWRpbmcuZGVsZXRlID0gZmFsc2Vcblx0XHRcdFx0XHR0aGlzLmxvYWRpbmcuYWxsID0gZmFsc2Vcblx0XHRcdFx0fSk7XG5cdFx0fSxcblxuXHRcdGVuYWJsZURpc2FibGVVc2VyKCkge1xuXHRcdFx0dGhpcy5sb2FkaW5nLmRlbGV0ZSA9IHRydWU7XG5cdFx0XHR0aGlzLmxvYWRpbmcuYWxsID0gdHJ1ZTtcblx0XHRcdGxldCB1c2VyaWQgPSB0aGlzLnVzZXIuaWQ7XG5cdFx0XHRsZXQgZW5hYmxlZCA9ICF0aGlzLnVzZXIuZW5hYmxlZDtcblx0XHRcdHJldHVybiB0aGlzLiRzdG9yZS5kaXNwYXRjaCgnZW5hYmxlRGlzYWJsZVVzZXInLCB7dXNlcmlkLCBlbmFibGVkfSlcblx0XHRcdFx0LnRoZW4oKCkgPT4ge1xuXHRcdFx0XHRcdHRoaXMubG9hZGluZy5kZWxldGUgPSBmYWxzZVxuXHRcdFx0XHRcdHRoaXMubG9hZGluZy5hbGwgPSBmYWxzZVxuXHRcdFx0XHR9KTtcblx0XHR9LFxuXG5cdFx0LyoqXG5cdFx0ICogU2V0IHVzZXIgZGlzcGxheU5hbWVcblx0XHQgKiBcblx0XHQgKiBAcGFyYW0ge3N0cmluZ30gZGlzcGxheU5hbWUgVGhlIGRpc3BsYXkgbmFtZVxuXHRcdCAqIEByZXR1cm5zIHtQcm9taXNlfVxuXHRcdCAqL1xuXHRcdHVwZGF0ZURpc3BsYXlOYW1lKCkge1xuXHRcdFx0bGV0IGRpc3BsYXlOYW1lID0gdGhpcy4kcmVmcy5kaXNwbGF5TmFtZS52YWx1ZTtcblx0XHRcdHRoaXMubG9hZGluZy5kaXNwbGF5TmFtZSA9IHRydWU7XG5cdFx0XHR0aGlzLiRzdG9yZS5kaXNwYXRjaCgnc2V0VXNlckRhdGEnLCB7XG5cdFx0XHRcdHVzZXJpZDogdGhpcy51c2VyLmlkLCBcblx0XHRcdFx0a2V5OiAnZGlzcGxheW5hbWUnLFxuXHRcdFx0XHR2YWx1ZTogZGlzcGxheU5hbWVcblx0XHRcdH0pLnRoZW4oKCkgPT4ge1xuXHRcdFx0XHR0aGlzLmxvYWRpbmcuZGlzcGxheU5hbWUgPSBmYWxzZTtcblx0XHRcdFx0dGhpcy4kcmVmcy5kaXNwbGF5TmFtZS52YWx1ZSA9IGRpc3BsYXlOYW1lO1xuXHRcdFx0fSk7XG5cdFx0fSxcblxuXHRcdC8qKlxuXHRcdCAqIFNldCB1c2VyIHBhc3N3b3JkXG5cdFx0ICogXG5cdFx0ICogQHBhcmFtIHtzdHJpbmd9IHBhc3N3b3JkIFRoZSBlbWFpbCBhZHJlc3Ncblx0XHQgKiBAcmV0dXJucyB7UHJvbWlzZX1cblx0XHQgKi9cblx0XHR1cGRhdGVQYXNzd29yZCgpIHtcblx0XHRcdGxldCBwYXNzd29yZCA9IHRoaXMuJHJlZnMucGFzc3dvcmQudmFsdWU7XG5cdFx0XHR0aGlzLmxvYWRpbmcucGFzc3dvcmQgPSB0cnVlO1xuXHRcdFx0dGhpcy4kc3RvcmUuZGlzcGF0Y2goJ3NldFVzZXJEYXRhJywge1xuXHRcdFx0XHR1c2VyaWQ6IHRoaXMudXNlci5pZCxcblx0XHRcdFx0a2V5OiAncGFzc3dvcmQnLFxuXHRcdFx0XHR2YWx1ZTogcGFzc3dvcmRcblx0XHRcdH0pLnRoZW4oKCkgPT4ge1xuXHRcdFx0XHR0aGlzLmxvYWRpbmcucGFzc3dvcmQgPSBmYWxzZTtcblx0XHRcdFx0dGhpcy4kcmVmcy5wYXNzd29yZC52YWx1ZSA9ICcnOyAvLyBlbXB0eSAmIHNob3cgcGxhY2Vob2xkZXIgXG5cdFx0XHR9KTtcblx0XHR9LFxuXG5cdFx0LyoqXG5cdFx0ICogU2V0IHVzZXIgbWFpbEFkZHJlc3Ncblx0XHQgKiBcblx0XHQgKiBAcGFyYW0ge3N0cmluZ30gbWFpbEFkZHJlc3MgVGhlIGVtYWlsIGFkcmVzc1xuXHRcdCAqIEByZXR1cm5zIHtQcm9taXNlfVxuXHRcdCAqL1xuXHRcdHVwZGF0ZUVtYWlsKCkge1xuXHRcdFx0bGV0IG1haWxBZGRyZXNzID0gdGhpcy4kcmVmcy5tYWlsQWRkcmVzcy52YWx1ZTtcblx0XHRcdHRoaXMubG9hZGluZy5tYWlsQWRkcmVzcyA9IHRydWU7XG5cdFx0XHR0aGlzLiRzdG9yZS5kaXNwYXRjaCgnc2V0VXNlckRhdGEnLCB7XG5cdFx0XHRcdHVzZXJpZDogdGhpcy51c2VyLmlkLFxuXHRcdFx0XHRrZXk6ICdlbWFpbCcsXG5cdFx0XHRcdHZhbHVlOiBtYWlsQWRkcmVzc1xuXHRcdFx0fSkudGhlbigoKSA9PiB7XG5cdFx0XHRcdHRoaXMubG9hZGluZy5tYWlsQWRkcmVzcyA9IGZhbHNlO1xuXHRcdFx0XHR0aGlzLiRyZWZzLm1haWxBZGRyZXNzLnZhbHVlID0gbWFpbEFkZHJlc3M7XG5cdFx0XHR9KTtcblx0XHR9LFxuXG5cdFx0LyoqXG5cdFx0ICogQ3JlYXRlIGEgbmV3IGdyb3VwXG5cdFx0ICogXG5cdFx0ICogQHBhcmFtIHtzdHJpbmd9IGdyb3VwcyBHcm91cCBpZFxuXHRcdCAqIEByZXR1cm5zIHtQcm9taXNlfVxuXHRcdCAqL1xuXHRcdGNyZWF0ZUdyb3VwKGdpZCkge1xuXHRcdFx0dGhpcy5sb2FkaW5nID0ge2dyb3Vwczp0cnVlLCBzdWJhZG1pbnM6dHJ1ZX1cblx0XHRcdHRoaXMuJHN0b3JlLmRpc3BhdGNoKCdhZGRHcm91cCcsIGdpZCkudGhlbigoKSA9PiB7XG5cdFx0XHRcdHRoaXMubG9hZGluZyA9IHtncm91cHM6ZmFsc2UsIHN1YmFkbWluczpmYWxzZX07XG5cdFx0XHRcdGxldCB1c2VyaWQgPSB0aGlzLnVzZXIuaWQ7XG5cdFx0XHRcdHRoaXMuJHN0b3JlLmRpc3BhdGNoKCdhZGRVc2VyR3JvdXAnLCB7dXNlcmlkLCBnaWR9KTtcblx0XHRcdH0pO1xuXHRcdFx0cmV0dXJuIHRoaXMuJHN0b3JlLmdldHRlcnMuZ2V0R3JvdXBzW3RoaXMuZ3JvdXBzLmxlbmd0aF07XG5cdFx0fSxcblxuXHRcdC8qKlxuXHRcdCAqIEFkZCB1c2VyIHRvIGdyb3VwXG5cdFx0ICogXG5cdFx0ICogQHBhcmFtIHtvYmplY3R9IGdyb3VwIEdyb3VwIG9iamVjdFxuXHRcdCAqIEByZXR1cm5zIHtQcm9taXNlfVxuXHRcdCAqL1xuXHRcdGFkZFVzZXJHcm91cChncm91cCkge1xuXHRcdFx0dGhpcy5sb2FkaW5nLmdyb3VwcyA9IHRydWU7XG5cdFx0XHRsZXQgdXNlcmlkID0gdGhpcy51c2VyLmlkO1xuXHRcdFx0bGV0IGdpZCA9IGdyb3VwLmlkO1xuXHRcdFx0cmV0dXJuIHRoaXMuJHN0b3JlLmRpc3BhdGNoKCdhZGRVc2VyR3JvdXAnLCB7dXNlcmlkLCBnaWR9KVxuXHRcdFx0XHQudGhlbigoKSA9PiB0aGlzLmxvYWRpbmcuZ3JvdXBzID0gZmFsc2UpO1xuXHRcdH0sXG5cblx0XHQvKipcblx0XHQgKiBSZW1vdmUgdXNlciBmcm9tIGdyb3VwXG5cdFx0ICogXG5cdFx0ICogQHBhcmFtIHtvYmplY3R9IGdyb3VwIEdyb3VwIG9iamVjdFxuXHRcdCAqIEByZXR1cm5zIHtQcm9taXNlfVxuXHRcdCAqL1xuXHRcdHJlbW92ZVVzZXJHcm91cChncm91cCkge1xuXHRcdFx0dGhpcy5sb2FkaW5nLmdyb3VwcyA9IHRydWU7XG5cdFx0XHRsZXQgdXNlcmlkID0gdGhpcy51c2VyLmlkO1xuXHRcdFx0bGV0IGdpZCA9IGdyb3VwLmlkO1xuXHRcdFx0cmV0dXJuIHRoaXMuJHN0b3JlLmRpc3BhdGNoKCdyZW1vdmVVc2VyR3JvdXAnLCB7dXNlcmlkLCBnaWR9KVxuXHRcdFx0XHQudGhlbigoKSA9PiB0aGlzLmxvYWRpbmcuZ3JvdXBzID0gZmFsc2UpO1xuXHRcdH0sXG5cblx0XHQvKipcblx0XHQgKiBBZGQgdXNlciB0byBncm91cFxuXHRcdCAqIFxuXHRcdCAqIEBwYXJhbSB7b2JqZWN0fSBncm91cCBHcm91cCBvYmplY3Rcblx0XHQgKiBAcmV0dXJucyB7UHJvbWlzZX1cblx0XHQgKi9cblx0XHRhZGRVc2VyU3ViQWRtaW4oZ3JvdXApIHtcblx0XHRcdHRoaXMubG9hZGluZy5zdWJhZG1pbnMgPSB0cnVlO1xuXHRcdFx0bGV0IHVzZXJpZCA9IHRoaXMudXNlci5pZDtcblx0XHRcdGxldCBnaWQgPSBncm91cC5pZDtcblx0XHRcdHJldHVybiB0aGlzLiRzdG9yZS5kaXNwYXRjaCgnYWRkVXNlclN1YkFkbWluJywge3VzZXJpZCwgZ2lkfSlcblx0XHRcdFx0LnRoZW4oKCkgPT4gdGhpcy5sb2FkaW5nLnN1YmFkbWlucyA9IGZhbHNlKTtcblx0XHR9LFxuXG5cdFx0LyoqXG5cdFx0ICogUmVtb3ZlIHVzZXIgZnJvbSBncm91cFxuXHRcdCAqIFxuXHRcdCAqIEBwYXJhbSB7b2JqZWN0fSBncm91cCBHcm91cCBvYmplY3Rcblx0XHQgKiBAcmV0dXJucyB7UHJvbWlzZX1cblx0XHQgKi9cblx0XHRyZW1vdmVVc2VyU3ViQWRtaW4oZ3JvdXApIHtcblx0XHRcdHRoaXMubG9hZGluZy5zdWJhZG1pbnMgPSB0cnVlO1xuXHRcdFx0bGV0IHVzZXJpZCA9IHRoaXMudXNlci5pZDtcblx0XHRcdGxldCBnaWQgPSBncm91cC5pZDtcblx0XHRcdHJldHVybiB0aGlzLiRzdG9yZS5kaXNwYXRjaCgncmVtb3ZlVXNlclN1YkFkbWluJywge3VzZXJpZCwgZ2lkfSlcblx0XHRcdFx0LnRoZW4oKCkgPT4gdGhpcy5sb2FkaW5nLnN1YmFkbWlucyA9IGZhbHNlKTtcblx0XHR9LFxuXG5cdFx0LyoqXG5cdFx0ICogRGlzcGF0Y2ggcXVvdGEgc2V0IHJlcXVlc3Rcblx0XHQgKiBcblx0XHQgKiBAcGFyYW0ge3N0cmluZ3xPYmplY3R9IHF1b3RhIFF1b3RhIGluIHJlYWRhYmxlIGZvcm1hdCAnNSBHQicgb3IgT2JqZWN0IHtpZDogJzUgR0InLCBsYWJlbDogJzVHQid9XG5cdFx0ICogQHJldHVybnMge3N0cmluZ31cblx0XHQgKi9cblx0XHRzZXRVc2VyUXVvdGEocXVvdGEgPSAnbm9uZScpIHtcblx0XHRcdHRoaXMubG9hZGluZy5xdW90YSA9IHRydWU7XG5cdFx0XHQvLyBlbnN1cmUgd2Ugb25seSBzZW5kIHRoZSBwcmVzZXQgaWRcblx0XHRcdHF1b3RhID0gcXVvdGEuaWQgPyBxdW90YS5pZCA6IHF1b3RhO1xuXHRcdFx0dGhpcy4kc3RvcmUuZGlzcGF0Y2goJ3NldFVzZXJEYXRhJywge1xuXHRcdFx0XHR1c2VyaWQ6IHRoaXMudXNlci5pZCwgXG5cdFx0XHRcdGtleTogJ3F1b3RhJyxcblx0XHRcdFx0dmFsdWU6IHF1b3RhXG5cdFx0XHR9KS50aGVuKCgpID0+IHRoaXMubG9hZGluZy5xdW90YSA9IGZhbHNlKTtcblx0XHRcdHJldHVybiBxdW90YTtcblx0XHR9LFxuXG5cdFx0LyoqXG5cdFx0ICogVmFsaWRhdGUgcXVvdGEgc3RyaW5nIHRvIG1ha2Ugc3VyZSBpdCdzIGEgdmFsaWQgaHVtYW4gZmlsZSBzaXplXG5cdFx0ICogXG5cdFx0ICogQHBhcmFtIHtzdHJpbmd9IHF1b3RhIFF1b3RhIGluIHJlYWRhYmxlIGZvcm1hdCAnNSBHQidcblx0XHQgKiBAcmV0dXJucyB7UHJvbWlzZXxib29sZWFufVxuXHRcdCAqL1xuXHRcdHZhbGlkYXRlUXVvdGEocXVvdGEpIHtcblx0XHRcdC8vIG9ubHkgdXNlZCBmb3IgbmV3IHByZXNldHMgc2VudCB0aHJvdWdoIEBUYWdcblx0XHRcdGxldCB2YWxpZFF1b3RhID0gT0MuVXRpbC5jb21wdXRlckZpbGVTaXplKHF1b3RhKTtcblx0XHRcdGlmICh2YWxpZFF1b3RhID09PSAwKSB7XG5cdFx0XHRcdHJldHVybiB0aGlzLnNldFVzZXJRdW90YSgnbm9uZScpO1xuXHRcdFx0fSBlbHNlIGlmICh2YWxpZFF1b3RhICE9PSBudWxsKSB7XG5cdFx0XHRcdC8vIHVuaWZ5IGZvcm1hdCBvdXRwdXRcblx0XHRcdFx0cmV0dXJuIHRoaXMuc2V0VXNlclF1b3RhKE9DLlV0aWwuaHVtYW5GaWxlU2l6ZShPQy5VdGlsLmNvbXB1dGVyRmlsZVNpemUocXVvdGEpKSk7XG5cdFx0XHR9XG5cdFx0XHQvLyBpZiBubyB2YWxpZCBkbyBub3QgY2hhbmdlXG5cdFx0XHRyZXR1cm4gZmFsc2U7XG5cdFx0fSxcblxuXHRcdC8qKlxuXHRcdCAqIERpc3BhdGNoIGxhbmd1YWdlIHNldCByZXF1ZXN0XG5cdFx0ICogXG5cdFx0ICogQHBhcmFtIHtPYmplY3R9IGxhbmcgbGFuZ3VhZ2Ugb2JqZWN0IHtjb2RlOidlbicsIG5hbWU6J0VuZ2xpc2gnfVxuXHRcdCAqIEByZXR1cm5zIHtPYmplY3R9XG5cdFx0ICovXG5cdFx0c2V0VXNlckxhbmd1YWdlKGxhbmcpIHtcblx0XHRcdHRoaXMubG9hZGluZy5sYW5ndWFnZXMgPSB0cnVlO1xuXHRcdFx0Ly8gZW5zdXJlIHdlIG9ubHkgc2VuZCB0aGUgcHJlc2V0IGlkXG5cdFx0XHR0aGlzLiRzdG9yZS5kaXNwYXRjaCgnc2V0VXNlckRhdGEnLCB7XG5cdFx0XHRcdHVzZXJpZDogdGhpcy51c2VyLmlkLCBcblx0XHRcdFx0a2V5OiAnbGFuZ3VhZ2UnLFxuXHRcdFx0XHR2YWx1ZTogbGFuZy5jb2RlXG5cdFx0XHR9KS50aGVuKCgpID0+IHRoaXMubG9hZGluZy5sYW5ndWFnZXMgPSBmYWxzZSk7XG5cdFx0XHRyZXR1cm4gbGFuZztcblx0XHR9XG5cdH1cbn1cbjwvc2NyaXB0PlxuXG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIHNyYy9jb21wb25lbnRzL3VzZXJMaXN0L3VzZXJSb3cudnVlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///16\n"); +eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__userList_userRow__ = __webpack_require__(40);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vue_multiselect__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vue_multiselect___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_vue_multiselect__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_vue_infinite_loading__ = __webpack_require__(42);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_vue_infinite_loading___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_vue_infinite_loading__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_vue__ = __webpack_require__(3);\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tname: 'userList',\n\tprops: ['users', 'showConfig', 'selectedGroup'],\n\tcomponents: {\n\t\tuserRow: __WEBPACK_IMPORTED_MODULE_0__userList_userRow__[\"a\" /* default */],\n\t\tMultiselect: __WEBPACK_IMPORTED_MODULE_1_vue_multiselect___default.a,\n\t\tInfiniteLoading: __WEBPACK_IMPORTED_MODULE_2_vue_infinite_loading___default.a\n\t},\n\tdata: function data() {\n\t\tvar unlimitedQuota = { id: 'none', label: t('settings', 'Unlimited') },\n\t\t defaultQuota = { id: 'default', label: t('settings', 'Default quota') };\n\t\treturn {\n\t\t\tunlimitedQuota: unlimitedQuota,\n\t\t\tdefaultQuota: defaultQuota,\n\t\t\tloading: false,\n\t\t\tscrolled: false,\n\t\t\tnewUser: {\n\t\t\t\tid: '',\n\t\t\t\tdisplayName: '',\n\t\t\t\tpassword: '',\n\t\t\t\tmailAddress: '',\n\t\t\t\tgroups: [],\n\t\t\t\tsubAdminsGroups: [],\n\t\t\t\tquota: defaultQuota,\n\t\t\t\tlanguage: { code: 'en', name: t('settings', 'Default language') }\n\t\t\t}\n\t\t};\n\t},\n\tmounted: function mounted() {\n\t\tif (!this.settings.canChangePassword) {\n\t\t\tOC.Notification.showTemporary(t('settings', 'Password change is disabled because the master key is disabled'));\n\t\t}\n\t\t/** \n * Init default language from server data. The use of this.settings\n * requires a computed variable,vwhich break the v-model binding of the form,\n * this is a much easier solution than getter and setter\n */\n\t\t__WEBPACK_IMPORTED_MODULE_3_vue__[\"a\" /* default */].set(this.newUser.language, 'code', this.settings.defaultLanguage);\n\t},\n\n\tcomputed: {\n\t\tsettings: function settings() {\n\t\t\treturn this.$store.getters.getServerData;\n\t\t},\n\t\tfilteredUsers: function filteredUsers() {\n\t\t\tif (this.selectedGroup === 'disabled') {\n\t\t\t\tvar disabledUsers = this.users.filter(function (user) {\n\t\t\t\t\treturn user.enabled !== true;\n\t\t\t\t});\n\t\t\t\tif (disabledUsers.length === 0 && this.$refs.infiniteLoading && this.$refs.infiniteLoading.isComplete) {\n\t\t\t\t\t// disabled group is empty, redirection to all users\n\t\t\t\t\tthis.$router.push('users');\n\t\t\t\t\tthis.$refs.infiniteLoading.$emit('$InfiniteLoading:reset');\n\t\t\t\t}\n\t\t\t\treturn disabledUsers;\n\t\t\t}\n\t\t\treturn this.users.filter(function (user) {\n\t\t\t\treturn user.enabled === true;\n\t\t\t});\n\t\t},\n\t\tgroups: function groups() {\n\t\t\t// data provided php side + remove the disabled group\n\t\t\treturn this.$store.getters.getGroups.filter(function (group) {\n\t\t\t\treturn group.id !== 'disabled';\n\t\t\t});\n\t\t},\n\t\tsubAdminsGroups: function subAdminsGroups() {\n\t\t\t// data provided php side\n\t\t\treturn this.$store.getters.getServerData.subadmingroups;\n\t\t},\n\t\tquotaOptions: function quotaOptions() {\n\t\t\t// convert the preset array into objects\n\t\t\tvar quotaPreset = this.settings.quotaPreset.reduce(function (acc, cur) {\n\t\t\t\treturn acc.concat({ id: cur, label: cur });\n\t\t\t}, []);\n\t\t\t// add default presets\n\t\t\tquotaPreset.unshift(this.unlimitedQuota);\n\t\t\tquotaPreset.unshift(this.defaultQuota);\n\t\t\treturn quotaPreset;\n\t\t},\n\t\tminPasswordLength: function minPasswordLength() {\n\t\t\treturn this.$store.getters.getPasswordPolicyMinLength;\n\t\t},\n\t\tusersOffset: function usersOffset() {\n\t\t\treturn this.$store.getters.getUsersOffset;\n\t\t},\n\t\tusersLimit: function usersLimit() {\n\t\t\treturn this.$store.getters.getUsersLimit;\n\t\t},\n\n\n\t\t/* LANGUAGES */\n\t\tlanguages: function languages() {\n\t\t\treturn Array({\n\t\t\t\tlabel: t('settings', 'Common languages'),\n\t\t\t\tlanguages: this.settings.languages.commonlanguages\n\t\t\t}, {\n\t\t\t\tlabel: t('settings', 'All languages'),\n\t\t\t\tlanguages: this.settings.languages.languages\n\t\t\t});\n\t\t}\n\t},\n\twatch: {\n\t\t// watch url change and group select\n\t\tselectedGroup: function selectedGroup(val, old) {\n\t\t\tthis.$store.commit('resetUsers');\n\t\t\tthis.$refs.infiniteLoading.$emit('$InfiniteLoading:reset');\n\t\t}\n\t},\n\tmethods: {\n\t\tonScroll: function onScroll(event) {\n\t\t\tthis.scrolled = event.target.scrollTop > 0;\n\t\t},\n\n\n\t\t/**\n * Validate quota string to make sure it's a valid human file size\n * \n * @param {string} quota Quota in readable format '5 GB'\n * @returns {Object}\n */\n\t\tvalidateQuota: function validateQuota(quota) {\n\t\t\t// only used for new presets sent through @Tag\n\t\t\tvar validQuota = OC.Util.computerFileSize(quota);\n\t\t\tif (validQuota !== null && validQuota > 0) {\n\t\t\t\t// unify format output\n\t\t\t\tquota = OC.Util.humanFileSize(OC.Util.computerFileSize(quota));\n\t\t\t\treturn this.newUser.quota = { id: quota, label: quota };\n\t\t\t}\n\t\t\t// Default is unlimited\n\t\t\treturn this.newUser.quota = this.quotaOptions[0];\n\t\t},\n\t\tinfiniteHandler: function infiniteHandler($state) {\n\t\t\tthis.$store.dispatch('getUsers', {\n\t\t\t\toffset: this.usersOffset,\n\t\t\t\tlimit: this.usersLimit,\n\t\t\t\tgroup: this.selectedGroup !== 'disabled' ? this.selectedGroup : '' }).then(function (response) {\n\t\t\t\tresponse ? $state.loaded() : $state.complete();\n\t\t\t});\n\t\t},\n\t\tresetForm: function resetForm() {\n\t\t\t// revert form to original state\n\t\t\tObject.assign(this.newUser, this.$options.data.call(this).newUser);\n\t\t\tthis.loading = false;\n\t\t},\n\t\tcreateUser: function createUser() {\n\t\t\tvar _this = this;\n\n\t\t\tthis.loading = true;\n\t\t\tthis.$store.dispatch('addUser', {\n\t\t\t\tuserid: this.newUser.id,\n\t\t\t\tpassword: this.newUser.password,\n\t\t\t\temail: this.newUser.mailAddress,\n\t\t\t\tgroups: this.newUser.groups.map(function (group) {\n\t\t\t\t\treturn group.id;\n\t\t\t\t}),\n\t\t\t\tsubadmin: this.newUser.subAdminsGroups.map(function (group) {\n\t\t\t\t\treturn group.id;\n\t\t\t\t}),\n\t\t\t\tquota: this.newUser.quota.id,\n\t\t\t\tlanguage: this.newUser.language.code\n\t\t\t}).then(function () {\n\t\t\t\treturn _this.resetForm();\n\t\t\t});\n\t\t}\n\t}\n});\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vc3JjL2NvbXBvbmVudHMvdXNlckxpc3QudnVlP2JjNTEiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQTZHQTtBQUNBO0FBQ0E7QUFDQTs7eURBRUE7T0FFQTtnQ0FDQTs7QUFFQTtBQUNBO0FBRUE7QUFKQTt1QkFLQTswREFDQTsyREFDQTs7bUJBRUE7aUJBQ0E7WUFDQTthQUNBOztRQUVBO2lCQUNBO2NBQ0E7aUJBQ0E7WUFDQTtxQkFDQTtXQUNBO2dEQUdBO0FBVkE7QUFMQTtBQWdCQTs2QkFDQTt3Q0FDQTsrQ0FDQTtBQUNBO0FBS0E7Ozs7O3dHQUNBO0FBQ0E7OztnQ0FFQTs4QkFDQTtBQUNBOzBDQUNBOzBDQUNBOzs2QkFDQTs7MkdBQ0E7QUFDQTt1QkFDQTtzQ0FDQTtBQUNBO1dBQ0E7QUFDQTs7NEJBQ0E7O0FBQ0E7NEJBQ0E7QUFDQTs7d0JBQ0E7O0FBQ0E7OENBQ0E7QUFDQTs0Q0FDQTtBQUNBO3dDQUNBO0FBQ0E7OztNQUNBO0FBQ0E7NEJBQ0E7NEJBQ0E7VUFDQTtBQUNBO2tEQUNBOzhCQUNBO0FBQ0E7c0NBQ0E7OEJBQ0E7QUFDQTtvQ0FDQTs4QkFDQTtBQUVBOzs7QUFDQTtrQ0FDQTs7eUJBR0E7dUNBRUE7QUFIQSxJQURBO3lCQU1BO3VDQUdBO0FBSkE7QUFNQTtBQXZEQTs7QUF5REE7a0RBQ0E7c0JBQ0E7b0NBQ0E7QUFFQTtBQU5BOztxQ0FRQTs0Q0FDQTtBQUVBOzs7QUFNQTs7Ozs7OytDQUNBO0FBQ0E7NkNBQ0E7OENBQ0E7QUFDQTsyREFDQTtvREFDQTtBQUNBO0FBQ0E7aURBQ0E7QUFFQTtvREFDQTs7aUJBRUE7Z0JBQ0EsVUFGQTtvRUFHQTs7QUFDQTtBQUVBO2tDQUNBO0FBQ0E7NkRBQ0E7a0JBQ0E7QUFDQTs7QUFDQTs7a0JBQ0E7O3lCQUVBOzJCQUNBO3dCQUNBOztrQkFDQTs7O2tCQUNBOzs4QkFDQTtvQ0FDQTtBQVBBO2lCQVFBOztBQUVBO0FBaERBO0FBdEdBIiwiZmlsZSI6IjE2LmpzIiwic291cmNlc0NvbnRlbnQiOlsiPHRlbXBsYXRlPlxuXHQ8ZGl2IGlkPVwiYXBwLWNvbnRlbnRcIiBjbGFzcz1cInVzZXItbGlzdC1ncmlkXCIgdi1vbjpzY3JvbGwucGFzc2l2ZT1cIm9uU2Nyb2xsXCI+XG5cdFx0PGRpdiBjbGFzcz1cInJvd1wiIGlkPVwiZ3JpZC1oZWFkZXJcIiA6Y2xhc3M9XCJ7J3N0aWNreSc6IHNjcm9sbGVkICYmICFzaG93Q29uZmlnLnNob3dOZXdVc2VyRm9ybX1cIj5cblx0XHRcdDxkaXYgaWQ9XCJoZWFkZXJBdmF0YXJcIiBjbGFzcz1cImF2YXRhclwiPjwvZGl2PlxuXHRcdFx0PGRpdiBpZD1cImhlYWRlck5hbWVcIiBjbGFzcz1cIm5hbWVcIj57eyB0KCdzZXR0aW5ncycsICdVc2VybmFtZScpIH19PC9kaXY+XG5cdFx0XHQ8ZGl2IGlkPVwiaGVhZGVyRGlzcGxheU5hbWVcIiBjbGFzcz1cImRpc3BsYXlOYW1lXCI+e3sgdCgnc2V0dGluZ3MnLCAgJ0Z1bGwgbmFtZScpIH19PC9kaXY+XG5cdFx0XHQ8ZGl2IGlkPVwiaGVhZGVyUGFzc3dvcmRcIiBjbGFzcz1cInBhc3N3b3JkXCI+e3sgdCgnc2V0dGluZ3MnLCAgJ1Bhc3N3b3JkJykgfX08L2Rpdj5cblx0XHRcdDxkaXYgaWQ9XCJoZWFkZXJBZGRyZXNzXCIgY2xhc3M9XCJtYWlsQWRkcmVzc1wiPnt7IHQoJ3NldHRpbmdzJywgICdFbWFpbCcpIH19PC9kaXY+XG5cdFx0XHQ8ZGl2IGlkPVwiaGVhZGVyR3JvdXBzXCIgY2xhc3M9XCJncm91cHNcIj57eyB0KCdzZXR0aW5ncycsICAnR3JvdXBzJykgfX08L2Rpdj5cblx0XHRcdDxkaXYgaWQ9XCJoZWFkZXJTdWJBZG1pbnNcIiBjbGFzcz1cInN1YmFkbWluc1wiXG5cdFx0XHRcdCB2LWlmPVwic3ViQWRtaW5zR3JvdXBzLmxlbmd0aD4wXCI+e3sgdCgnc2V0dGluZ3MnLCAnR3JvdXAgYWRtaW4gZm9yJykgfX08L2Rpdj5cblx0XHRcdDxkaXYgaWQ9XCJoZWFkZXJRdW90YVwiIGNsYXNzPVwicXVvdGFcIj57eyB0KCdzZXR0aW5ncycsICdRdW90YScpIH19PC9kaXY+XG5cdFx0XHQ8ZGl2IGlkPVwiaGVhZGVyTGFuZ3VhZ2VzXCIgY2xhc3M9XCJsYW5ndWFnZXNcIlxuXHRcdFx0XHQgdi1pZj1cInNob3dDb25maWcuc2hvd0xhbmd1YWdlc1wiPnt7IHQoJ3NldHRpbmdzJywgJ0xhbmd1YWdlcycpIH19PC9kaXY+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwiaGVhZGVyU3RvcmFnZUxvY2F0aW9uIHN0b3JhZ2VMb2NhdGlvblwiXG5cdFx0XHRcdCB2LWlmPVwic2hvd0NvbmZpZy5zaG93U3RvcmFnZVBhdGhcIj57eyB0KCdzZXR0aW5ncycsICdTdG9yYWdlIGxvY2F0aW9uJykgfX08L2Rpdj5cblx0XHRcdDxkaXYgY2xhc3M9XCJoZWFkZXJVc2VyQmFja2VuZCB1c2VyQmFja2VuZFwiXG5cdFx0XHRcdCB2LWlmPVwic2hvd0NvbmZpZy5zaG93VXNlckJhY2tlbmRcIj57eyB0KCdzZXR0aW5ncycsICdVc2VyIGJhY2tlbmQnKSB9fTwvZGl2PlxuXHRcdFx0PGRpdiBjbGFzcz1cImhlYWRlckxhc3RMb2dpbiBsYXN0TG9naW5cIiBcblx0XHRcdFx0IHYtaWY9XCJzaG93Q29uZmlnLnNob3dMYXN0TG9naW5cIj57eyB0KCdzZXR0aW5ncycsICdMYXN0IGxvZ2luJykgfX08L2Rpdj5cblx0XHRcdDxkaXYgY2xhc3M9XCJ1c2VyQWN0aW9uc1wiPjwvZGl2PlxuXHRcdDwvZGl2PlxuXG5cdFx0PGZvcm0gY2xhc3M9XCJyb3dcIiBpZD1cIm5ldy11c2VyXCIgdi1zaG93PVwic2hvd0NvbmZpZy5zaG93TmV3VXNlckZvcm1cIlxuXHRcdFx0ICB2LW9uOnN1Ym1pdC5wcmV2ZW50PVwiY3JlYXRlVXNlclwiIDpkaXNhYmxlZD1cImxvYWRpbmdcIlxuXHRcdFx0ICA6Y2xhc3M9XCJ7J3N0aWNreSc6IHNjcm9sbGVkICYmIHNob3dDb25maWcuc2hvd05ld1VzZXJGb3JtfVwiPlxuXHRcdFx0PGRpdiA6Y2xhc3M9XCJsb2FkaW5nPydpY29uLWxvYWRpbmctc21hbGwnOidpY29uLWFkZCdcIj48L2Rpdj5cblx0XHRcdDxkaXYgY2xhc3M9XCJuYW1lXCI+XG5cdFx0XHRcdDxpbnB1dCBpZD1cIm5ld3VzZXJuYW1lXCIgdHlwZT1cInRleHRcIiByZXF1aXJlZCB2LW1vZGVsPVwibmV3VXNlci5pZFwiXG5cdFx0XHRcdFx0ICAgOnBsYWNlaG9sZGVyPVwidCgnc2V0dGluZ3MnLCAnVXNlciBuYW1lJylcIiBuYW1lPVwidXNlcm5hbWVcIlxuXHRcdFx0XHRcdCAgIGF1dG9jb21wbGV0ZT1cIm9mZlwiIGF1dG9jYXBpdGFsaXplPVwibm9uZVwiIGF1dG9jb3JyZWN0PVwib2ZmXCJcblx0XHRcdFx0XHQgICBwYXR0ZXJuPVwiW2EtekEtWjAtOSBfXFwuQFxcLSddK1wiPlxuXHRcdFx0PC9kaXY+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwiZGlzcGxheU5hbWVcIj5cblx0XHRcdFx0PGlucHV0IGlkPVwibmV3ZGlzcGxheW5hbWVcIiB0eXBlPVwidGV4dFwiIHYtbW9kZWw9XCJuZXdVc2VyLmRpc3BsYXlOYW1lXCJcblx0XHRcdFx0XHQgICA6cGxhY2Vob2xkZXI9XCJ0KCdzZXR0aW5ncycsICdEaXNwbGF5IG5hbWUnKVwiIG5hbWU9XCJkaXNwbGF5bmFtZVwiXG5cdFx0XHRcdFx0ICAgYXV0b2NvbXBsZXRlPVwib2ZmXCIgYXV0b2NhcGl0YWxpemU9XCJub25lXCIgYXV0b2NvcnJlY3Q9XCJvZmZcIj5cblx0XHRcdDwvZGl2PlxuXHRcdFx0PGRpdiBjbGFzcz1cInBhc3N3b3JkXCI+XG5cdFx0XHRcdDxpbnB1dCBpZD1cIm5ld3VzZXJwYXNzd29yZFwiIHR5cGU9XCJwYXNzd29yZFwiIHYtbW9kZWw9XCJuZXdVc2VyLnBhc3N3b3JkXCJcblx0XHRcdFx0XHQgICA6cmVxdWlyZWQ9XCJuZXdVc2VyLm1haWxBZGRyZXNzPT09JydcIlxuXHRcdFx0XHRcdCAgIDpwbGFjZWhvbGRlcj1cInQoJ3NldHRpbmdzJywgJ1Bhc3N3b3JkJylcIiBuYW1lPVwicGFzc3dvcmRcIlxuXHRcdFx0XHRcdCAgIGF1dG9jb21wbGV0ZT1cIm5ldy1wYXNzd29yZFwiIGF1dG9jYXBpdGFsaXplPVwibm9uZVwiIGF1dG9jb3JyZWN0PVwib2ZmXCJcblx0XHRcdFx0XHQgICA6bWlubGVuZ3RoPVwibWluUGFzc3dvcmRMZW5ndGhcIj5cblx0XHRcdDwvZGl2PlxuXHRcdFx0PGRpdiBjbGFzcz1cIm1haWxBZGRyZXNzXCI+XG5cdFx0XHRcdDxpbnB1dCBpZD1cIm5ld2VtYWlsXCIgdHlwZT1cImVtYWlsXCIgdi1tb2RlbD1cIm5ld1VzZXIubWFpbEFkZHJlc3NcIlxuXHRcdFx0XHRcdCAgIDpyZXF1aXJlZD1cIm5ld1VzZXIucGFzc3dvcmQ9PT0nJ1wiXG5cdFx0XHRcdFx0ICAgOnBsYWNlaG9sZGVyPVwidCgnc2V0dGluZ3MnLCAnTWFpbCBhZGRyZXNzJylcIiBuYW1lPVwiZW1haWxcIlxuXHRcdFx0XHRcdCAgIGF1dG9jb21wbGV0ZT1cIm9mZlwiIGF1dG9jYXBpdGFsaXplPVwibm9uZVwiIGF1dG9jb3JyZWN0PVwib2ZmXCI+XG5cdFx0XHQ8L2Rpdj5cblx0XHRcdDxkaXYgY2xhc3M9XCJncm91cHNcIj5cblx0XHRcdFx0PG11bHRpc2VsZWN0IDpvcHRpb25zPVwiZ3JvdXBzXCIgdi1tb2RlbD1cIm5ld1VzZXIuZ3JvdXBzXCJcblx0XHRcdFx0XHRcdFx0IDpwbGFjZWhvbGRlcj1cInQoJ3NldHRpbmdzJywgJ0FkZCB1c2VyIGluIGdyb3VwJylcIlxuXHRcdFx0XHRcdFx0XHQgbGFiZWw9XCJuYW1lXCIgdHJhY2stYnk9XCJpZFwiIGNsYXNzPVwibXVsdGlzZWxlY3QtdnVlXCJcblx0XHRcdFx0XHRcdFx0IDptdWx0aXBsZT1cInRydWVcIiA6Y2xvc2Utb24tc2VsZWN0PVwiZmFsc2VcIj5cblx0XHRcdFx0XHQ8c3BhbiBzbG90PVwibm9SZXN1bHRcIj57e3QoJ3NldHRpbmdzJywnTm8gcmVzdWx0Jyl9fTwvc3Bhbj5cblx0XHRcdFx0PC9tdWx0aXNlbGVjdD5cblx0XHRcdDwvZGl2PlxuXHRcdFx0PGRpdiBjbGFzcz1cInN1YmFkbWluc1wiIHYtaWY9XCJzdWJBZG1pbnNHcm91cHMubGVuZ3RoPjBcIj5cblx0XHRcdFx0PG11bHRpc2VsZWN0IDpvcHRpb25zPVwic3ViQWRtaW5zR3JvdXBzXCIgdi1tb2RlbD1cIm5ld1VzZXIuc3ViQWRtaW5zR3JvdXBzXCJcblx0XHRcdFx0XHRcdFx0IDpwbGFjZWhvbGRlcj1cInQoJ3NldHRpbmdzJywgJ1NldCB1c2VyIGFzIGFkbWluIGZvcicpXCJcblx0XHRcdFx0XHRcdFx0IGxhYmVsPVwibmFtZVwiIHRyYWNrLWJ5PVwiaWRcIiBjbGFzcz1cIm11bHRpc2VsZWN0LXZ1ZVwiXG5cdFx0XHRcdFx0XHRcdCA6bXVsdGlwbGU9XCJ0cnVlXCIgOmNsb3NlLW9uLXNlbGVjdD1cImZhbHNlXCI+XG5cdFx0XHRcdFx0PHNwYW4gc2xvdD1cIm5vUmVzdWx0XCI+e3t0KCdzZXR0aW5ncycsJ05vIHJlc3VsdCcpfX08L3NwYW4+XG5cdFx0XHQ8L211bHRpc2VsZWN0PlxuXHRcdFx0PC9kaXY+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwicXVvdGFcIj5cblx0XHRcdFx0PG11bHRpc2VsZWN0IDpvcHRpb25zPVwicXVvdGFPcHRpb25zXCIgdi1tb2RlbD1cIm5ld1VzZXIucXVvdGFcIlxuXHRcdFx0XHRcdFx0XHQgOnBsYWNlaG9sZGVyPVwidCgnc2V0dGluZ3MnLCAnU2VsZWN0IHVzZXIgcXVvdGEnKVwiXG5cdFx0XHRcdFx0XHRcdCBsYWJlbD1cImxhYmVsXCIgdHJhY2stYnk9XCJpZFwiIGNsYXNzPVwibXVsdGlzZWxlY3QtdnVlXCJcblx0XHRcdFx0XHRcdFx0IDphbGxvd0VtcHR5PVwiZmFsc2VcIiA6dGFnZ2FibGU9XCJ0cnVlXCJcblx0XHRcdFx0XHRcdCBcdCBAdGFnPVwidmFsaWRhdGVRdW90YVwiID5cblx0XHRcdFx0PC9tdWx0aXNlbGVjdD5cblx0XHRcdDwvZGl2PlxuXHRcdFx0PGRpdiBjbGFzcz1cImxhbmd1YWdlc1wiIHYtaWY9XCJzaG93Q29uZmlnLnNob3dMYW5ndWFnZXNcIj5cblx0XHRcdFx0PG11bHRpc2VsZWN0IDpvcHRpb25zPVwibGFuZ3VhZ2VzXCIgdi1tb2RlbD1cIm5ld1VzZXIubGFuZ3VhZ2VcIlxuXHRcdFx0XHRcdFx0XHQgOnBsYWNlaG9sZGVyPVwidCgnc2V0dGluZ3MnLCAnRGVmYXVsdCBsYW5ndWFnZScpXCJcblx0XHRcdFx0XHRcdFx0IGxhYmVsPVwibmFtZVwiIHRyYWNrLWJ5PVwiY29kZVwiIGNsYXNzPVwibXVsdGlzZWxlY3QtdnVlXCJcblx0XHRcdFx0XHRcdFx0IDphbGxvd0VtcHR5PVwiZmFsc2VcIiBncm91cC12YWx1ZXM9XCJsYW5ndWFnZXNcIiBncm91cC1sYWJlbD1cImxhYmVsXCI+XG5cdFx0XHRcdDwvbXVsdGlzZWxlY3Q+XG5cdFx0XHQ8L2Rpdj5cblx0XHRcdDxkaXYgY2xhc3M9XCJzdG9yYWdlTG9jYXRpb25cIiB2LWlmPVwic2hvd0NvbmZpZy5zaG93U3RvcmFnZVBhdGhcIj48L2Rpdj5cblx0XHRcdDxkaXYgY2xhc3M9XCJ1c2VyQmFja2VuZFwiIHYtaWY9XCJzaG93Q29uZmlnLnNob3dVc2VyQmFja2VuZFwiPjwvZGl2PlxuXHRcdFx0PGRpdiBjbGFzcz1cImxhc3RMb2dpblwiIHYtaWY9XCJzaG93Q29uZmlnLnNob3dMYXN0TG9naW5cIj48L2Rpdj5cblx0XHRcdDxkaXYgY2xhc3M9XCJ1c2VyQWN0aW9uc1wiPlxuXHRcdFx0XHQ8aW5wdXQgdHlwZT1cInN1Ym1pdFwiIGlkPVwibmV3c3VibWl0XCIgY2xhc3M9XCJidXR0b24gcHJpbWFyeSBpY29uLWNoZWNrbWFyay13aGl0ZSBoYXMtdG9vbHRpcFwiXG5cdFx0XHRcdFx0ICAgdmFsdWU9XCJcIiA6dGl0bGU9XCJ0KCdzZXR0aW5ncycsICdBZGQgYSBuZXcgdXNlcicpXCI+XG5cdFx0XHRcdDxpbnB1dCB0eXBlPVwicmVzZXRcIiBpZD1cIm5ld3Jlc2V0XCIgY2xhc3M9XCJidXR0b24gaWNvbi1jbG9zZSBoYXMtdG9vbHRpcFwiIEBjbGljaz1cInJlc2V0Rm9ybVwiXG5cdFx0XHRcdFx0ICAgdmFsdWU9XCJcIiA6dGl0bGU9XCJ0KCdzZXR0aW5ncycsICdDYW5jZWwgYW5kIHJlc2V0IHRoZSBmb3JtJylcIj5cblx0XHRcdDwvZGl2PlxuXHRcdDwvZm9ybT5cblxuXHRcdDx1c2VyLXJvdyB2LWZvcj1cIih1c2VyLCBrZXkpIGluIGZpbHRlcmVkVXNlcnNcIiA6dXNlcj1cInVzZXJcIiA6a2V5PVwia2V5XCIgOnNldHRpbmdzPVwic2V0dGluZ3NcIiA6c2hvd0NvbmZpZz1cInNob3dDb25maWdcIlxuXHRcdFx0XHQgIDpncm91cHM9XCJncm91cHNcIiA6c3ViQWRtaW5zR3JvdXBzPVwic3ViQWRtaW5zR3JvdXBzXCIgOnF1b3RhT3B0aW9ucz1cInF1b3RhT3B0aW9uc1wiIDpsYW5ndWFnZXM9XCJsYW5ndWFnZXNcIiAvPlxuXHRcdDxpbmZpbml0ZS1sb2FkaW5nIEBpbmZpbml0ZT1cImluZmluaXRlSGFuZGxlclwiIHJlZj1cImluZmluaXRlTG9hZGluZ1wiPlxuXHRcdFx0PGRpdiBzbG90PVwic3Bpbm5lclwiPjxkaXYgY2xhc3M9XCJ1c2Vycy1pY29uLWxvYWRpbmcgaWNvbi1sb2FkaW5nXCI+PC9kaXY+PC9kaXY+XG5cdFx0XHQ8ZGl2IHNsb3Q9XCJuby1tb3JlXCI+PGRpdiBjbGFzcz1cInVzZXJzLWxpc3QtZW5kXCI+4oCUIHt7dCgnc2V0dGluZ3MnLCAnbm8gbW9yZSByZXN1bHRzJyl9fSDigJQ8L2Rpdj48L2Rpdj5cblx0XHRcdDxkaXYgc2xvdD1cIm5vLXJlc3VsdHNcIj5cblx0XHRcdFx0PGRpdiBpZD1cImVtcHR5Y29udGVudFwiPlxuXHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJpY29uLWNvbnRhY3RzLWRhcmtcIj48L2Rpdj5cblx0XHRcdFx0XHQ8aDI+e3t0KCdzZXR0aW5ncycsICdObyB1c2VycyBpbiBoZXJlJyl9fTwvaDI+XG5cdFx0XHRcdDwvZGl2PlxuXHRcdFx0PC9kaXY+XG5cdFx0PC9pbmZpbml0ZS1sb2FkaW5nPlxuXHQ8L2Rpdj5cbjwvdGVtcGxhdGU+XG5cbjxzY3JpcHQ+XG5pbXBvcnQgdXNlclJvdyBmcm9tICcuL3VzZXJMaXN0L3VzZXJSb3cnO1xuaW1wb3J0IE11bHRpc2VsZWN0IGZyb20gJ3Z1ZS1tdWx0aXNlbGVjdCc7XG5pbXBvcnQgSW5maW5pdGVMb2FkaW5nIGZyb20gJ3Z1ZS1pbmZpbml0ZS1sb2FkaW5nJztcbmltcG9ydCBWdWUgZnJvbSAndnVlJztcblxuZXhwb3J0IGRlZmF1bHQge1xuXHRuYW1lOiAndXNlckxpc3QnLFxuXHRwcm9wczogWyd1c2VycycsICdzaG93Q29uZmlnJywgJ3NlbGVjdGVkR3JvdXAnXSxcblx0Y29tcG9uZW50czoge1xuXHRcdHVzZXJSb3csXG5cdFx0TXVsdGlzZWxlY3QsXG5cdFx0SW5maW5pdGVMb2FkaW5nXG5cdH0sXG5cdGRhdGEoKSB7XG5cdFx0bGV0IHVubGltaXRlZFF1b3RhID0ge2lkOidub25lJywgbGFiZWw6dCgnc2V0dGluZ3MnLCAnVW5saW1pdGVkJyl9LFxuXHRcdFx0ZGVmYXVsdFF1b3RhID0ge2lkOidkZWZhdWx0JywgbGFiZWw6dCgnc2V0dGluZ3MnLCAnRGVmYXVsdCBxdW90YScpfTtcblx0XHRyZXR1cm4ge1xuXHRcdFx0dW5saW1pdGVkUXVvdGE6IHVubGltaXRlZFF1b3RhLFxuXHRcdFx0ZGVmYXVsdFF1b3RhOiBkZWZhdWx0UXVvdGEsXG5cdFx0XHRsb2FkaW5nOiBmYWxzZSxcblx0XHRcdHNjcm9sbGVkOiBmYWxzZSxcblx0XHRcdG5ld1VzZXI6IHtcblx0XHRcdFx0aWQ6JycsXG5cdFx0XHRcdGRpc3BsYXlOYW1lOicnLFxuXHRcdFx0XHRwYXNzd29yZDonJyxcblx0XHRcdFx0bWFpbEFkZHJlc3M6JycsXG5cdFx0XHRcdGdyb3VwczogW10sXG5cdFx0XHRcdHN1YkFkbWluc0dyb3VwczogW10sXG5cdFx0XHRcdHF1b3RhOiBkZWZhdWx0UXVvdGEsXG5cdFx0XHRcdGxhbmd1YWdlOiB7Y29kZTogJ2VuJywgbmFtZTogdCgnc2V0dGluZ3MnLCAnRGVmYXVsdCBsYW5ndWFnZScpfVxuXHRcdFx0fVxuXHRcdH07XG5cdH0sXG5cdG1vdW50ZWQoKSB7XG5cdFx0aWYgKCF0aGlzLnNldHRpbmdzLmNhbkNoYW5nZVBhc3N3b3JkKSB7XG5cdFx0XHRPQy5Ob3RpZmljYXRpb24uc2hvd1RlbXBvcmFyeSh0KCdzZXR0aW5ncycsICdQYXNzd29yZCBjaGFuZ2UgaXMgZGlzYWJsZWQgYmVjYXVzZSB0aGUgbWFzdGVyIGtleSBpcyBkaXNhYmxlZCcpKTtcblx0XHR9XG5cdFx0LyoqIFxuXHRcdCAqIEluaXQgZGVmYXVsdCBsYW5ndWFnZSBmcm9tIHNlcnZlciBkYXRhLiBUaGUgdXNlIG9mIHRoaXMuc2V0dGluZ3Ncblx0XHQgKiByZXF1aXJlcyBhIGNvbXB1dGVkIHZhcmlhYmxlLHZ3aGljaCBicmVhayB0aGUgdi1tb2RlbCBiaW5kaW5nIG9mIHRoZSBmb3JtLFxuXHRcdCAqIHRoaXMgaXMgYSBtdWNoIGVhc2llciBzb2x1dGlvbiB0aGFuIGdldHRlciBhbmQgc2V0dGVyXG5cdFx0ICovXG5cdFx0VnVlLnNldCh0aGlzLm5ld1VzZXIubGFuZ3VhZ2UsICdjb2RlJywgdGhpcy5zZXR0aW5ncy5kZWZhdWx0TGFuZ3VhZ2UpO1xuXHR9LFxuXHRjb21wdXRlZDoge1xuXHRcdHNldHRpbmdzKCkge1xuXHRcdFx0cmV0dXJuIHRoaXMuJHN0b3JlLmdldHRlcnMuZ2V0U2VydmVyRGF0YTtcblx0XHR9LFxuXHRcdGZpbHRlcmVkVXNlcnMoKSB7XG5cdFx0XHRpZiAodGhpcy5zZWxlY3RlZEdyb3VwID09PSAnZGlzYWJsZWQnKSB7XG5cdFx0XHRcdGxldCBkaXNhYmxlZFVzZXJzID0gdGhpcy51c2Vycy5maWx0ZXIodXNlciA9PiB1c2VyLmVuYWJsZWQgIT09IHRydWUpO1xuXHRcdFx0XHRpZiAoZGlzYWJsZWRVc2Vycy5sZW5ndGg9PT0wICYmIHRoaXMuJHJlZnMuaW5maW5pdGVMb2FkaW5nICYmIHRoaXMuJHJlZnMuaW5maW5pdGVMb2FkaW5nLmlzQ29tcGxldGUpIHtcblx0XHRcdFx0XHQvLyBkaXNhYmxlZCBncm91cCBpcyBlbXB0eSwgcmVkaXJlY3Rpb24gdG8gYWxsIHVzZXJzXG5cdFx0XHRcdFx0dGhpcy4kcm91dGVyLnB1c2goJ3VzZXJzJyk7XG5cdFx0XHRcdFx0dGhpcy4kcmVmcy5pbmZpbml0ZUxvYWRpbmcuJGVtaXQoJyRJbmZpbml0ZUxvYWRpbmc6cmVzZXQnKTtcblx0XHRcdFx0fVxuXHRcdFx0XHRyZXR1cm4gZGlzYWJsZWRVc2Vycztcblx0XHRcdH1cblx0XHRcdHJldHVybiB0aGlzLnVzZXJzLmZpbHRlcih1c2VyID0+IHVzZXIuZW5hYmxlZCA9PT0gdHJ1ZSk7XG5cdFx0fSxcblx0XHRncm91cHMoKSB7XG5cdFx0XHQvLyBkYXRhIHByb3ZpZGVkIHBocCBzaWRlICsgcmVtb3ZlIHRoZSBkaXNhYmxlZCBncm91cFxuXHRcdFx0cmV0dXJuIHRoaXMuJHN0b3JlLmdldHRlcnMuZ2V0R3JvdXBzLmZpbHRlcihncm91cCA9PiBncm91cC5pZCAhPT0gJ2Rpc2FibGVkJyk7XG5cdFx0fSxcblx0XHRzdWJBZG1pbnNHcm91cHMoKSB7XG5cdFx0XHQvLyBkYXRhIHByb3ZpZGVkIHBocCBzaWRlXG5cdFx0XHRyZXR1cm4gdGhpcy4kc3RvcmUuZ2V0dGVycy5nZXRTZXJ2ZXJEYXRhLnN1YmFkbWluZ3JvdXBzO1xuXHRcdH0sXG5cdFx0cXVvdGFPcHRpb25zKCkge1xuXHRcdFx0Ly8gY29udmVydCB0aGUgcHJlc2V0IGFycmF5IGludG8gb2JqZWN0c1xuXHRcdFx0bGV0IHF1b3RhUHJlc2V0ID0gdGhpcy5zZXR0aW5ncy5xdW90YVByZXNldC5yZWR1Y2UoKGFjYywgY3VyKSA9PiBhY2MuY29uY2F0KHtpZDpjdXIsIGxhYmVsOmN1cn0pLCBbXSk7XG5cdFx0XHQvLyBhZGQgZGVmYXVsdCBwcmVzZXRzXG5cdFx0XHRxdW90YVByZXNldC51bnNoaWZ0KHRoaXMudW5saW1pdGVkUXVvdGEpO1xuXHRcdFx0cXVvdGFQcmVzZXQudW5zaGlmdCh0aGlzLmRlZmF1bHRRdW90YSk7XG5cdFx0XHRyZXR1cm4gcXVvdGFQcmVzZXQ7XG5cdFx0fSxcblx0XHRtaW5QYXNzd29yZExlbmd0aCgpIHtcblx0XHRcdHJldHVybiB0aGlzLiRzdG9yZS5nZXR0ZXJzLmdldFBhc3N3b3JkUG9saWN5TWluTGVuZ3RoO1xuXHRcdH0sXG5cdFx0dXNlcnNPZmZzZXQoKSB7XG5cdFx0XHRyZXR1cm4gdGhpcy4kc3RvcmUuZ2V0dGVycy5nZXRVc2Vyc09mZnNldDtcblx0XHR9LFxuXHRcdHVzZXJzTGltaXQoKSB7XG5cdFx0XHRyZXR1cm4gdGhpcy4kc3RvcmUuZ2V0dGVycy5nZXRVc2Vyc0xpbWl0O1xuXHRcdH0sXG5cblx0XHQvKiBMQU5HVUFHRVMgKi9cblx0XHRsYW5ndWFnZXMoKSB7XG5cdFx0XHRyZXR1cm4gQXJyYXkoXG5cdFx0XHRcdHtcblx0XHRcdFx0XHRsYWJlbDogdCgnc2V0dGluZ3MnLCAnQ29tbW9uIGxhbmd1YWdlcycpLFxuXHRcdFx0XHRcdGxhbmd1YWdlczogdGhpcy5zZXR0aW5ncy5sYW5ndWFnZXMuY29tbW9ubGFuZ3VhZ2VzXG5cdFx0XHRcdH0sXG5cdFx0XHRcdHtcblx0XHRcdFx0XHRsYWJlbDogdCgnc2V0dGluZ3MnLCAnQWxsIGxhbmd1YWdlcycpLFxuXHRcdFx0XHRcdGxhbmd1YWdlczogdGhpcy5zZXR0aW5ncy5sYW5ndWFnZXMubGFuZ3VhZ2VzXG5cdFx0XHRcdH1cblx0XHRcdCk7XG5cdFx0fVxuXHR9LFxuXHR3YXRjaDoge1xuXHRcdC8vIHdhdGNoIHVybCBjaGFuZ2UgYW5kIGdyb3VwIHNlbGVjdFxuXHRcdHNlbGVjdGVkR3JvdXA6IGZ1bmN0aW9uICh2YWwsIG9sZCkge1xuXHRcdFx0dGhpcy4kc3RvcmUuY29tbWl0KCdyZXNldFVzZXJzJyk7XG5cdFx0XHR0aGlzLiRyZWZzLmluZmluaXRlTG9hZGluZy4kZW1pdCgnJEluZmluaXRlTG9hZGluZzpyZXNldCcpO1xuXHRcdH1cblx0fSxcblx0bWV0aG9kczoge1xuXHRcdG9uU2Nyb2xsKGV2ZW50KSB7XG5cdFx0XHR0aGlzLnNjcm9sbGVkID0gZXZlbnQudGFyZ2V0LnNjcm9sbFRvcD4wO1xuXHRcdH0sXG5cblx0XHQvKipcblx0XHQgKiBWYWxpZGF0ZSBxdW90YSBzdHJpbmcgdG8gbWFrZSBzdXJlIGl0J3MgYSB2YWxpZCBodW1hbiBmaWxlIHNpemVcblx0XHQgKiBcblx0XHQgKiBAcGFyYW0ge3N0cmluZ30gcXVvdGEgUXVvdGEgaW4gcmVhZGFibGUgZm9ybWF0ICc1IEdCJ1xuXHRcdCAqIEByZXR1cm5zIHtPYmplY3R9XG5cdFx0ICovXG5cdFx0dmFsaWRhdGVRdW90YShxdW90YSkge1xuXHRcdFx0Ly8gb25seSB1c2VkIGZvciBuZXcgcHJlc2V0cyBzZW50IHRocm91Z2ggQFRhZ1xuXHRcdFx0bGV0IHZhbGlkUXVvdGEgPSBPQy5VdGlsLmNvbXB1dGVyRmlsZVNpemUocXVvdGEpO1xuXHRcdFx0aWYgKHZhbGlkUXVvdGEgIT09IG51bGwgJiYgdmFsaWRRdW90YSA+IDApIHtcblx0XHRcdFx0Ly8gdW5pZnkgZm9ybWF0IG91dHB1dFxuXHRcdFx0XHRxdW90YSA9IE9DLlV0aWwuaHVtYW5GaWxlU2l6ZShPQy5VdGlsLmNvbXB1dGVyRmlsZVNpemUocXVvdGEpKTtcblx0XHRcdFx0cmV0dXJuIHRoaXMubmV3VXNlci5xdW90YSA9IHtpZDogcXVvdGEsIGxhYmVsOiBxdW90YX07XG5cdFx0XHR9XG5cdFx0XHQvLyBEZWZhdWx0IGlzIHVubGltaXRlZFxuXHRcdFx0cmV0dXJuIHRoaXMubmV3VXNlci5xdW90YSA9IHRoaXMucXVvdGFPcHRpb25zWzBdO1xuXHRcdH0sXG5cblx0XHRpbmZpbml0ZUhhbmRsZXIoJHN0YXRlKSB7XG5cdFx0XHR0aGlzLiRzdG9yZS5kaXNwYXRjaCgnZ2V0VXNlcnMnLCB7XG5cdFx0XHRcdG9mZnNldDogdGhpcy51c2Vyc09mZnNldCxcblx0XHRcdFx0bGltaXQ6IHRoaXMudXNlcnNMaW1pdCxcblx0XHRcdFx0Z3JvdXA6IHRoaXMuc2VsZWN0ZWRHcm91cCAhPT0gJ2Rpc2FibGVkJyA/IHRoaXMuc2VsZWN0ZWRHcm91cCA6ICcnfSlcblx0XHRcdFx0LnRoZW4oKHJlc3BvbnNlKSA9PiB7cmVzcG9uc2U/JHN0YXRlLmxvYWRlZCgpOiRzdGF0ZS5jb21wbGV0ZSgpfSk7XG5cdFx0fSxcblxuXHRcdHJlc2V0Rm9ybSgpIHtcblx0XHRcdC8vIHJldmVydCBmb3JtIHRvIG9yaWdpbmFsIHN0YXRlXG5cdFx0XHRPYmplY3QuYXNzaWduKHRoaXMubmV3VXNlciwgdGhpcy4kb3B0aW9ucy5kYXRhLmNhbGwodGhpcykubmV3VXNlcik7XG5cdFx0XHR0aGlzLmxvYWRpbmcgPSBmYWxzZTtcblx0XHR9LFxuXHRcdGNyZWF0ZVVzZXIoKSB7XG5cdFx0XHR0aGlzLmxvYWRpbmcgPSB0cnVlO1xuXHRcdFx0dGhpcy4kc3RvcmUuZGlzcGF0Y2goJ2FkZFVzZXInLCB7XG5cdFx0XHRcdHVzZXJpZDogdGhpcy5uZXdVc2VyLmlkLFxuXHRcdFx0XHRwYXNzd29yZDogdGhpcy5uZXdVc2VyLnBhc3N3b3JkLFxuXHRcdFx0XHRlbWFpbDogdGhpcy5uZXdVc2VyLm1haWxBZGRyZXNzLFxuXHRcdFx0XHRncm91cHM6IHRoaXMubmV3VXNlci5ncm91cHMubWFwKGdyb3VwID0+IGdyb3VwLmlkKSxcblx0XHRcdFx0c3ViYWRtaW46IHRoaXMubmV3VXNlci5zdWJBZG1pbnNHcm91cHMubWFwKGdyb3VwID0+IGdyb3VwLmlkKSxcblx0XHRcdFx0cXVvdGE6IHRoaXMubmV3VXNlci5xdW90YS5pZCxcblx0XHRcdFx0bGFuZ3VhZ2U6IHRoaXMubmV3VXNlci5sYW5ndWFnZS5jb2RlLFxuXHRcdFx0fSkudGhlbigoKSA9PiB0aGlzLnJlc2V0Rm9ybSgpKTtcblx0XHR9XG5cdH1cbn1cbjwvc2NyaXB0PlxuXG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIHNyYy9jb21wb25lbnRzL3VzZXJMaXN0LnZ1ZSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///16\n"); /***/ }), /* 17 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_axios__ = __webpack_require__(49);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_axios___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_axios__);\n\n\nvar requestToken = document.getElementsByTagName('head')[0].getAttribute('data-requesttoken');\nvar tokenHeaders = { headers: { requesttoken: requestToken } };\n\nvar sanitize = function sanitize(url) {\n\treturn url.replace(/\\/$/, ''); // Remove last url slash\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\n\t/**\n * This Promise is used to chain a request that require an admin password confirmation\n * Since chaining Promise have a very precise behavior concerning catch and then,\n * you'll need to be careful when using it.\n * e.g\n * // store\n * \taction(context) {\n *\t\treturn api.requireAdmin().then((response) => {\n *\t\t\treturn api.get('url')\n *\t\t\t\t.then((response) => {API success})\n *\t\t\t\t.catch((error) => {API failure});\n *\t\t}).catch((error) => {requireAdmin failure});\n *\t}\n * // vue\n *\tthis.$store.dispatch('action').then(() => {always executed})\n *\n * Since Promise.then().catch().then() will always execute the last then\n * this.$store.dispatch('action').then will always be executed\n * \n * If you want requireAdmin failure to also catch the API request failure\n * you will need to throw a new error in the api.get.catch()\n * \n * e.g\n *\tapi.requireAdmin().then((response) => {\n *\t\tapi.get('url')\n *\t\t\t.then((response) => {API success})\n *\t\t\t.catch((error) => {throw error;});\n *\t}).catch((error) => {requireAdmin OR API failure});\n * \n * @returns {Promise}\n */\n\trequireAdmin: function requireAdmin() {\n\t\treturn new Promise(function (resolve, reject) {\n\t\t\t// TODO: migrate the OC.dialog to Vue and avoid this mess\n\t\t\t// wait for password confirmation\n\t\t\tvar passwordTimeout = void 0;\n\t\t\tvar waitForpassword = function waitForpassword() {\n\t\t\t\tif (OC.PasswordConfirmation.requiresPasswordConfirmation()) {\n\t\t\t\t\tpasswordTimeout = setTimeout(waitForpassword, 500);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tclearTimeout(passwordTimeout);\n\t\t\t\tclearTimeout(promiseTimeout);\n\t\t\t\tresolve();\n\t\t\t};\n\n\t\t\t// automatically reject after 5s if not resolved\n\t\t\tvar promiseTimeout = setTimeout(function () {\n\t\t\t\tclearTimeout(passwordTimeout);\n\t\t\t\t// close dialog\n\t\t\t\tif (document.getElementsByClassName('oc-dialog-close').length > 0) {\n\t\t\t\t\tdocument.getElementsByClassName('oc-dialog-close')[0].click();\n\t\t\t\t}\n\t\t\t\tOC.Notification.showTemporary(t('settings', 'You did not enter the password in time'));\n\t\t\t\treject('Password request cancelled');\n\t\t\t}, 7000);\n\n\t\t\t// request password\n\t\t\tOC.PasswordConfirmation.requirePasswordConfirmation();\n\t\t\twaitForpassword();\n\t\t});\n\t},\n\tget: function get(url) {\n\t\treturn __WEBPACK_IMPORTED_MODULE_0_axios___default.a.get(sanitize(url), tokenHeaders).then(function (response) {\n\t\t\treturn Promise.resolve(response);\n\t\t}).catch(function (error) {\n\t\t\treturn Promise.reject(error);\n\t\t});\n\t},\n\tpost: function post(url, data) {\n\t\treturn __WEBPACK_IMPORTED_MODULE_0_axios___default.a.post(sanitize(url), data, tokenHeaders).then(function (response) {\n\t\t\treturn Promise.resolve(response);\n\t\t}).catch(function (error) {\n\t\t\treturn Promise.reject(error);\n\t\t});\n\t},\n\tpatch: function patch(url, data) {\n\t\treturn __WEBPACK_IMPORTED_MODULE_0_axios___default.a.patch(sanitize(url), data, tokenHeaders).then(function (response) {\n\t\t\treturn Promise.resolve(response);\n\t\t}).catch(function (error) {\n\t\t\treturn Promise.reject(error);\n\t\t});\n\t},\n\tput: function put(url, data) {\n\t\treturn __WEBPACK_IMPORTED_MODULE_0_axios___default.a.put(sanitize(url), data, tokenHeaders).then(function (response) {\n\t\t\treturn Promise.resolve(response);\n\t\t}).catch(function (error) {\n\t\t\treturn Promise.reject(error);\n\t\t});\n\t},\n\tdelete: function _delete(url, data) {\n\t\treturn __WEBPACK_IMPORTED_MODULE_0_axios___default.a.delete(sanitize(url), { data: data, headers: tokenHeaders.headers }).then(function (response) {\n\t\t\treturn Promise.resolve(response);\n\t\t}).catch(function (error) {\n\t\t\treturn Promise.reject(error);\n\t\t});\n\t},\n\n\n\t// OCS API entry points\n\t/**\n * \n * @param {string} app Application name \n * @param {string} key Config key\n * @param {string} [value=''] Value to set\n * @returns{Promise}\n */\n\tsetAppConfig: function setAppConfig(app, key) {\n\t\tvar _this = this;\n\n\t\tvar value = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';\n\n\t\treturn this.requireAdmin().then(function (response) {\n\t\t\treturn _this.post(OC.linkToOCS('apps/provisioning_api/api/v1/config/apps/' + app + '/' + key, 2), { value: value });\n\t\t});\n\t}\n});\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvc3RvcmUvYXBpLmpzP2JkOTMiXSwibmFtZXMiOlsicmVxdWVzdFRva2VuIiwiZG9jdW1lbnQiLCJnZXRFbGVtZW50c0J5VGFnTmFtZSIsImdldEF0dHJpYnV0ZSIsInRva2VuSGVhZGVycyIsImhlYWRlcnMiLCJyZXF1ZXN0dG9rZW4iLCJzYW5pdGl6ZSIsInVybCIsInJlcGxhY2UiLCJyZXF1aXJlQWRtaW4iLCJQcm9taXNlIiwicmVzb2x2ZSIsInJlamVjdCIsInBhc3N3b3JkVGltZW91dCIsIndhaXRGb3JwYXNzd29yZCIsIk9DIiwiUGFzc3dvcmRDb25maXJtYXRpb24iLCJyZXF1aXJlc1Bhc3N3b3JkQ29uZmlybWF0aW9uIiwic2V0VGltZW91dCIsImNsZWFyVGltZW91dCIsInByb21pc2VUaW1lb3V0IiwiZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSIsImxlbmd0aCIsImNsaWNrIiwiTm90aWZpY2F0aW9uIiwic2hvd1RlbXBvcmFyeSIsInQiLCJyZXF1aXJlUGFzc3dvcmRDb25maXJtYXRpb24iLCJnZXQiLCJheGlvcyIsInRoZW4iLCJyZXNwb25zZSIsImNhdGNoIiwiZXJyb3IiLCJwb3N0IiwiZGF0YSIsInBhdGNoIiwicHV0IiwiZGVsZXRlIiwic2V0QXBwQ29uZmlnIiwiYXBwIiwia2V5IiwidmFsdWUiLCJsaW5rVG9PQ1MiXSwibWFwcGluZ3MiOiI7O0FBQUE7O0FBRUEsSUFBTUEsZUFBZUMsU0FBU0Msb0JBQVQsQ0FBOEIsTUFBOUIsRUFBc0MsQ0FBdEMsRUFBeUNDLFlBQXpDLENBQXNELG1CQUF0RCxDQUFyQjtBQUNBLElBQU1DLGVBQWUsRUFBRUMsU0FBUyxFQUFFQyxjQUFjTixZQUFoQixFQUFYLEVBQXJCOztBQUVBLElBQU1PLFdBQVcsU0FBWEEsUUFBVyxDQUFTQyxHQUFULEVBQWM7QUFDOUIsUUFBT0EsSUFBSUMsT0FBSixDQUFZLEtBQVosRUFBbUIsRUFBbkIsQ0FBUCxDQUQ4QixDQUNDO0FBQy9CLENB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TEMsS0FGSyxDQUVDLFVBQUNDLEtBQUQ7QUFBQSxVQUFXdkIsUUFBUUUsTUFBUixDQUFlcUIsS0FBZixDQUFYO0FBQUEsR0FGRCxDQUFQO0FBR0EsRUFuRmE7QUFvRmRLLE9BcEZjLG1CQW9GUC9CLEdBcEZPLEVBb0ZGNEIsSUFwRkUsRUFvRkk7QUFDakIsU0FBTyw2Q0FBQU4sQ0FBTVMsTUFBTixDQUFhaEMsU0FBU0MsR0FBVCxDQUFiLEVBQTRCLEVBQUU0QixNQUFNQSxJQUFSLEVBQWMvQixTQUFTRCxhQUFhQyxPQUFwQyxFQUE1QixFQUNMMEIsSUFESyxDQUNBLFVBQUNDLFFBQUQ7QUFBQSxVQUFjckIsUUFBUUMsT0FBUixDQUFnQm9CLFFBQWhCLENBQWQ7QUFBQSxHQURBLEVBRUxDLEtBRkssQ0FFQyxVQUFDQyxLQUFEO0FBQUEsVUFBV3ZCLFFBQVFFLE1BQVIsQ0FBZXFCLEtBQWYsQ0FBWDtBQUFBLEdBRkQsQ0FBUDtBQUdBLEVBeEZhOzs7QUEwRmQ7QUFDQTs7Ozs7OztBQU9BTSxhQWxHYyx3QkFrR0RDLEdBbEdDLEVBa0dJQyxHQWxHSixFQWtHcUI7QUFBQTs7QUFBQSxNQUFaQyxLQUFZLHVFQUFKLEVBQUk7O0FBQ2xDLFNBQU8sS0FBS2pDLFlBQUwsR0FBb0JxQixJQUFwQixDQUF5QixVQUFDQyxRQUFELEVBQWM7QUFDN0MsVUFBTyxNQUFLRyxJQUFMLENBQVVuQixHQUFHNEIsU0FBSCwrQ0FBeURILEdBQXpELFNBQWdFQyxHQUFoRSxFQUF1RSxDQUF2RSxDQUFWLEVBQXFGLEVBQUNDLE9BQU9BLEtBQVIsRUFBckYsQ0FBUDtBQUNBLEdBRk0sQ0FBUDtBQUdBO0FBdEdhLENBQWYiLCJmaWxlIjoiMTcuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgYXhpb3MgZnJvbSAnYXhpb3MnO1xuXG5jb25zdCByZXF1ZXN0VG9rZW4gPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnaGVhZCcpWzBdLmdldEF0dHJpYnV0ZSgnZGF0YS1yZXF1ZXN0dG9rZW4nKTtcbmNvbnN0IHRva2VuSGVhZGVycyA9IHsgaGVhZGVyczogeyByZXF1ZXN0dG9rZW46IHJlcXVlc3RUb2tlbiB9IH07XG5cbmNvbnN0IHNhbml0aXplID0gZnVuY3Rpb24odXJsKSB7XG5cdHJldHVybiB1cmwucmVwbGFjZSgvXFwvJC8sICcnKTsgLy8gUmVtb3ZlIGxhc3QgdXJsIHNsYXNoXG59O1xuXG5leHBvcnQgZGVmYXVsdCB7XG5cblx0LyoqXG5cdCAqIFRoaXMgUHJvbWlzZSBpcyB1c2VkIHRvIGNoYWluIGEgcmVxdWVzdCB0aGF0IHJlcXVpcmUgYW4gYWRtaW4gcGFzc3dvcmQgY29uZmlybWF0aW9uXG5cdCAqIFNpbmNlIGNoYWluaW5nIFByb21pc2UgaGF2ZSBhIHZlcnkgcHJlY2lzZSBiZWhhdmlvciBjb25jZXJuaW5nIGNhdGNoIGFuZCB0aGVuLFxuXHQgKiB5b3UnbGwgbmVlZCB0byBiZSBjYXJlZnVsIHdoZW4gdXNpbmcgaXQuXG5cdCAqIGUuZ1xuXHQgKiAvLyBzdG9yZVxuXHQgKiBcdGFjdGlvbihjb250ZXh0KSB7XG5cdCAqXHRcdHJldHVybiBhcGkucmVxdWlyZUFkbWluKCkudGhlbigocmVzcG9uc2UpID0+IHtcblx0ICpcdFx0XHRyZXR1cm4gYXBpLmdldCgndXJsJylcblx0ICpcdFx0XHRcdC50aGVuKChyZXNwb25zZSkgPT4ge0FQSSBzdWNjZXNzfSlcblx0ICpcdFx0XHRcdC5jYXRjaCgoZXJyb3IpID0+IHtBUEkgZmFpbHVyZX0pO1xuXHQgKlx0XHR9KS5jYXRjaCgoZXJyb3IpID0+IHtyZXF1aXJlQWRtaW4gZmFpbHVyZX0pO1xuXHQgKlx0fVxuXHQgKiAvLyB2dWVcblx0ICpcdHRoaXMuJHN0b3JlLmRpc3BhdGNoKCdhY3Rpb24nKS50aGVuKCgpID0+IHthbHdheXMgZXhlY3V0ZWR9KVxuXHQgKlxuXHQgKiBTaW5jZSBQcm9taXNlLnRoZW4oKS5jYXRjaCgpLnRoZW4oKSB3aWxsIGFsd2F5cyBleGVjdXRlIHRoZSBsYXN0IHRoZW5cblx0ICogdGhpcy4kc3RvcmUuZGlzcGF0Y2goJ2FjdGlvbicpLnRoZW4gd2lsbCBhbHdheXMgYmUgZXhlY3V0ZWRcblx0ICogXG5cdCAqIElmIHlvdSB3YW50IHJlcXVpcmVBZG1pbiBmYWlsdXJlIHRvIGFsc28gY2F0Y2ggdGhlIEFQSSByZXF1ZXN0IGZhaWx1cmVcblx0ICogeW91IHdpbGwgbmVlZCB0byB0aHJvdyBhIG5ldyBlcnJvciBpbiB0aGUgYXBpLmdldC5jYXRjaCgpXG5cdCAqIFxuXHQgKiBlLmdcblx0ICpcdGFwaS5yZXF1aXJlQWRtaW4oKS50aGVuKChyZXNwb25zZSkgPT4ge1xuXHQgKlx0XHRhcGkuZ2V0KCd1cmwnKVxuXHQgKlx0XHRcdC50aGVuKChyZXNwb25zZSkgPT4ge0FQSSBzdWNjZXNzfSlcblx0ICpcdFx0XHQuY2F0Y2goKGVycm9yKSA9PiB7dGhyb3cgZXJyb3I7fSk7XG5cdCAqXHR9KS5jYXRjaCgoZXJyb3IpID0+IHtyZXF1aXJlQWRtaW4gT1IgQVBJIGZhaWx1cmV9KTtcblx0ICogXG5cdCAqIEByZXR1cm5zIHtQcm9taXNlfVxuXHQgKi9cblx0cmVxdWlyZUFkbWluKCkge1xuXHRcdHJldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbihyZXNvbHZlLCByZWplY3QpIHtcblx0XHRcdC8vIFRPRE86IG1pZ3JhdGUgdGhlIE9DLmRpYWxvZyB0byBWdWUgYW5kIGF2b2lkIHRoaXMgbWVzc1xuXHRcdFx0Ly8gd2FpdCBmb3IgcGFzc3dvcmQgY29uZmlybWF0aW9uXG5cdFx0XHRsZXQgcGFzc3dvcmRUaW1lb3V0O1xuXHRcdFx0bGV0IHdhaXRGb3JwYXNzd29yZCA9IGZ1bmN0aW9uKCkge1xuXHRcdFx0XHRpZiAoT0MuUGFzc3dvcmRDb25maXJtYXRpb24ucmVxdWlyZXNQYXNzd29yZENvbmZpcm1hdGlvbigpKSB7XG5cdFx0XHRcdFx0cGFzc3dvcmRUaW1lb3V0ID0gc2V0VGltZW91dCh3YWl0Rm9ycGFzc3dvcmQsIDUwMCk7XG5cdFx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0XHR9XG5cdFx0XHRcdGNsZWFyVGltZW91dChwYXNzd29yZFRpbWVvdXQpO1xuXHRcdFx0XHRjbGVhclRpbWVvdXQocHJvbWlzZVRpbWVvdXQpO1xuXHRcdFx0XHRyZXNvbHZlKCk7XG5cdFx0XHR9O1xuXG5cdFx0XHQvLyBhdXRvbWF0aWNhbGx5IHJlamVjdCBhZnRlciA1cyBpZiBub3QgcmVzb2x2ZWRcblx0XHRcdGxldCBwcm9taXNlVGltZW91dCA9IHNldFRpbWVvdXQoKCkgPT4ge1xuXHRcdFx0XHRjbGVhclRpbWVvdXQocGFzc3dvcmRUaW1lb3V0KTtcblx0XHRcdFx0Ly8gY2xvc2UgZGlhbG9nXG5cdFx0XHRcdGlmIChkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCdvYy1kaWFsb2ctY2xvc2UnKS5sZW5ndGg+MCkge1xuXHRcdFx0XHRcdGRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoJ29jLWRpYWxvZy1jbG9zZScpWzBdLmNsaWNrKCk7XG5cdFx0XHRcdH1cblx0XHRcdFx0T0MuTm90aWZpY2F0aW9uLnNob3dUZW1wb3JhcnkodCgnc2V0dGluZ3MnLCAnWW91IGRpZCBub3QgZW50ZXIgdGhlIHBhc3N3b3JkIGluIHRpbWUnKSk7XG5cdFx0XHRcdHJlamVjdCgnUGFzc3dvcmQgcmVxdWVzdCBjYW5jZWxsZWQnKTtcblx0XHRcdH0sIDcwMDApOyBcblxuXHRcdFx0Ly8gcmVxdWVzdCBwYXNzd29yZFxuXHRcdFx0T0MuUGFzc3dvcmRDb25maXJtYXRpb24ucmVxdWlyZVBhc3N3b3JkQ29uZmlybWF0aW9uKCk7XG5cdFx0XHR3YWl0Rm9ycGFzc3dvcmQoKTtcblx0XHR9KTtcblx0fSxcblx0Z2V0KHVybCkge1xuXHRcdHJldHVybiBheGlvcy5nZXQoc2FuaXRpemUodXJsKSwgdG9rZW5IZWFkZXJzKVxuXHRcdFx0LnRoZW4oKHJlc3BvbnNlKSA9PiBQcm9taXNlLnJlc29sdmUocmVzcG9uc2UpKVxuXHRcdFx0LmNhdGNoKChlcnJvcikgPT4gUHJvbWlzZS5yZWplY3QoZXJyb3IpKTtcblx0fSxcblx0cG9zdCh1cmwsIGRhdGEpIHtcblx0XHRyZXR1cm4gYXhpb3MucG9zdChzYW5pdGl6ZSh1cmwpLCBkYXRhLCB0b2tlbkhlYWRlcnMpXG5cdFx0XHQudGhlbigocmVzcG9uc2UpID0+IFByb21pc2UucmVzb2x2ZShyZXNwb25zZSkpXG5cdFx0XHQuY2F0Y2goKGVycm9yKSA9PiBQcm9taXNlLnJlamVjdChlcnJvcikpO1xuXHR9LFxuXHRwYXRjaCh1cmwsIGRhdGEpIHtcblx0XHRyZXR1cm4gYXhpb3MucGF0Y2goc2FuaXRpemUodXJsKSwgZGF0YSwgdG9rZW5IZWFkZXJzKVxuXHRcdFx0LnRoZW4oKHJlc3BvbnNlKSA9PiBQcm9taXNlLnJlc29sdmUocmVzcG9uc2UpKVxuXHRcdFx0LmNhdGNoKChlcnJvcikgPT4gUHJvbWlzZS5yZWplY3QoZXJyb3IpKTtcblx0fSxcblx0cHV0KHVybCwgZGF0YSkge1xuXHRcdHJldHVybiBheGlvcy5wdXQoc2FuaXRpemUodXJsKSwgZGF0YSwgdG9rZW5IZWFkZXJzKVxuXHRcdFx0LnRoZW4oKHJlc3BvbnNlKSA9PiBQcm9taXNlLnJlc29sdmUocmVzcG9uc2UpKVxuXHRcdFx0LmNhdGNoKChlcnJvcikgPT4gUHJvbWlzZS5yZWplY3QoZXJyb3IpKTtcblx0fSxcblx0ZGVsZXRlKHVybCwgZGF0YSkge1xuXHRcdHJldHVybiBheGlvcy5kZWxldGUoc2FuaXRpemUodXJsKSwgeyBkYXRhOiBkYXRhLCBoZWFkZXJzOiB0b2tlbkhlYWRlcnMuaGVhZGVycyB9KVxuXHRcdFx0LnRoZW4oKHJlc3BvbnNlKSA9PiBQcm9taXNlLnJlc29sdmUocmVzcG9uc2UpKVxuXHRcdFx0LmNhdGNoKChlcnJvcikgPT4gUHJvbWlzZS5yZWplY3QoZXJyb3IpKTtcblx0fSxcblxuXHQvLyBPQ1MgQVBJIGVudHJ5IHBvaW50c1xuXHQvKipcblx0ICogXG5cdCAqIEBwYXJhbSB7c3RyaW5nfSBhcHAgQXBwbGljYXRpb24gbmFtZSBcblx0ICogQHBhcmFtIHtzdHJpbmd9IGtleSBDb25maWcga2V5XG5cdCAqIEBwYXJhbSB7c3RyaW5nfSBbdmFsdWU9JyddIFZhbHVlIHRvIHNldFxuXHQgKiBAcmV0dXJuc3tQcm9taXNlfVxuXHQgKi9cblx0c2V0QXBwQ29uZmlnKGFwcCwga2V5LCB2YWx1ZSA9ICcnKSB7XG5cdFx0cmV0dXJuIHRoaXMucmVxdWlyZUFkbWluKCkudGhlbigocmVzcG9uc2UpID0+IHtcblx0XHRcdHJldHVybiB0aGlzLnBvc3QoT0MubGlua1RvT0NTKGBhcHBzL3Byb3Zpc2lvbmluZ19hcGkvYXBpL3YxL2NvbmZpZy9hcHBzLyR7YXBwfS8ke2tleX1gLCAyKSwge3ZhbHVlOiB2YWx1ZX0pO1xuXHRcdH0pO1xuXHR9XG59O1xuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyAuL3NyYy9zdG9yZS9hcGkuanMiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///17\n"); +eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__popoverMenu__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vue_click_outside__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vue_click_outside___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_vue_click_outside__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_vue_multiselect__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_vue_multiselect___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_vue_multiselect__);\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tname: 'userRow',\n\tprops: ['user', 'settings', 'groups', 'subAdminsGroups', 'quotaOptions', 'showConfig', 'languages'],\n\tcomponents: {\n\t\tpopoverMenu: __WEBPACK_IMPORTED_MODULE_0__popoverMenu__[\"a\" /* default */],\n\t\tMultiselect: __WEBPACK_IMPORTED_MODULE_2_vue_multiselect___default.a\n\t},\n\tdirectives: {\n\t\tClickOutside: __WEBPACK_IMPORTED_MODULE_1_vue_click_outside___default.a\n\t},\n\tmounted: function mounted() {\n\t\t// required if popup needs to stay opened after menu click\n\t\t// since we only have disable/delete actions, let's close it directly\n\t\t// this.popupItem = this.$el;\n\t},\n\tdata: function data() {\n\t\treturn {\n\t\t\trand: parseInt(Math.random() * 1000),\n\t\t\topenedMenu: false,\n\t\t\tloading: {\n\t\t\t\tall: false,\n\t\t\t\tdisplayName: false,\n\t\t\t\tpassword: false,\n\t\t\t\tmailAddress: false,\n\t\t\t\tgroups: false,\n\t\t\t\tsubadmins: false,\n\t\t\t\tquota: false,\n\t\t\t\tdelete: false,\n\t\t\t\tdisable: false,\n\t\t\t\tlanguages: false\n\t\t\t}\n\t\t};\n\t},\n\n\tcomputed: {\n\t\t/* USER POPOVERMENU ACTIONS */\n\t\tuserActions: function userActions() {\n\t\t\treturn [{\n\t\t\t\ticon: 'icon-delete',\n\t\t\t\ttext: t('settings', 'Delete user'),\n\t\t\t\taction: this.deleteUser\n\t\t\t}, {\n\t\t\t\t'icon': this.user.enabled ? 'icon-close' : 'icon-add',\n\t\t\t\t'text': this.user.enabled ? t('settings', 'Disable user') : t('settings', 'Enable user'),\n\t\t\t\t'action': this.enableDisableUser\n\t\t\t}];\n\t\t},\n\n\n\t\t/* GROUPS MANAGEMENT */\n\t\tuserGroups: function userGroups() {\n\t\t\tvar _this = this;\n\n\t\t\tvar userGroups = this.groups.filter(function (group) {\n\t\t\t\treturn _this.user.groups.includes(group.id);\n\t\t\t});\n\t\t\treturn userGroups;\n\t\t},\n\t\tuserSubAdminsGroups: function userSubAdminsGroups() {\n\t\t\tvar _this2 = this;\n\n\t\t\tvar userSubAdminsGroups = this.subAdminsGroups.filter(function (group) {\n\t\t\t\treturn _this2.user.subadmin.includes(group.id);\n\t\t\t});\n\t\t\treturn userSubAdminsGroups;\n\t\t},\n\n\n\t\t/* QUOTA MANAGEMENT */\n\t\tusedQuota: function usedQuota() {\n\t\t\tvar quota = this.user.quota.quota;\n\t\t\tif (quota > 0) {\n\t\t\t\tquota = Math.min(100, Math.round(this.user.quota.used / quota * 100));\n\t\t\t} else {\n\t\t\t\tvar usedInGB = this.user.quota.used / (10 * Math.pow(2, 30));\n\t\t\t\t//asymptotic curve approaching 50% at 10GB to visualize used stace with infinite quota\n\t\t\t\tquota = 95 * (1 - 1 / (usedInGB + 1));\n\t\t\t}\n\t\t\treturn isNaN(quota) ? 0 : quota;\n\t\t},\n\n\t\t// Mapping saved values to objects\n\t\tuserQuota: function userQuota() {\n\t\t\tif (this.user.quota.quota > 0) {\n\t\t\t\t// if value is valid, let's map the quotaOptions or return custom quota\n\t\t\t\tvar humanQuota = OC.Util.humanFileSize(this.user.quota.quota);\n\t\t\t\tvar userQuota = this.quotaOptions.find(function (quota) {\n\t\t\t\t\treturn quota.id === humanQuota;\n\t\t\t\t});\n\t\t\t\treturn userQuota ? userQuota : { id: humanQuota, label: humanQuota };\n\t\t\t} else if (this.user.quota.quota === 0 || this.user.quota.quota === 'default') {\n\t\t\t\t// default quota is replaced by the proper value on load\n\t\t\t\treturn this.quotaOptions[0];\n\t\t\t}\n\t\t\treturn this.quotaOptions[1]; // unlimited\n\t\t},\n\n\n\t\t/* PASSWORD POLICY? */\n\t\tminPasswordLength: function minPasswordLength() {\n\t\t\treturn this.$store.getters.getPasswordPolicyMinLength;\n\t\t},\n\n\n\t\t/* LANGUAGE */\n\t\tuserLanguage: function userLanguage() {\n\t\t\tvar _this3 = this;\n\n\t\t\tvar availableLanguages = this.languages[0].languages.concat(this.languages[1].languages);\n\t\t\tvar userLang = availableLanguages.find(function (lang) {\n\t\t\t\treturn lang.code === _this3.user.language;\n\t\t\t});\n\t\t\tif ((typeof userLang === 'undefined' ? 'undefined' : _typeof(userLang)) !== 'object' && this.user.language !== '') {\n\t\t\t\treturn {\n\t\t\t\t\tcode: this.user.language,\n\t\t\t\t\tname: this.user.language\n\t\t\t\t};\n\t\t\t} else if (this.user.language === '') {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\treturn userLang;\n\t\t}\n\t},\n\tmethods: {\n\t\t/* MENU HANDLING */\n\t\tshowMenu: function showMenu() {\n\t\t\tthis.openedMenu = true;\n\t\t},\n\t\thideMenu: function hideMenu() {\n\t\t\tthis.openedMenu = false;\n\t\t},\n\n\n\t\t/**\n * Generate avatar url\n * \n * @param {string} user The user name\n * @param {int} size Size integer, default 32\n * @returns {string}\n */\n\t\tgenerateAvatar: function generateAvatar(user) {\n\t\t\tvar size = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 32;\n\n\t\t\treturn OC.generateUrl('/avatar/{user}/{size}?v={version}', {\n\t\t\t\tuser: user,\n\t\t\t\tsize: size,\n\t\t\t\tversion: oc_userconfig.avatar.version\n\t\t\t});\n\t\t},\n\n\n\t\t/**\n * Format the limit text in the selected options\n * \n * @param {int} count elements left\n * @returns {string}\n */\n\t\tlimitGroups: function limitGroups(count) {\n\t\t\treturn '+' + count;\n\t\t},\n\t\tdeleteUser: function deleteUser() {\n\t\t\tvar _this4 = this;\n\n\t\t\tthis.loading.delete = true;\n\t\t\tthis.loading.all = true;\n\t\t\tvar userid = this.user.id;\n\t\t\treturn this.$store.dispatch('deleteUser', { userid: userid }).then(function () {\n\t\t\t\t_this4.loading.delete = false;\n\t\t\t\t_this4.loading.all = false;\n\t\t\t});\n\t\t},\n\t\tenableDisableUser: function enableDisableUser() {\n\t\t\tvar _this5 = this;\n\n\t\t\tthis.loading.delete = true;\n\t\t\tthis.loading.all = true;\n\t\t\tvar userid = this.user.id;\n\t\t\tvar enabled = !this.user.enabled;\n\t\t\treturn this.$store.dispatch('enableDisableUser', { userid: userid, enabled: enabled }).then(function () {\n\t\t\t\t_this5.loading.delete = false;\n\t\t\t\t_this5.loading.all = false;\n\t\t\t});\n\t\t},\n\n\n\t\t/**\n * Set user displayName\n * \n * @param {string} displayName The display name\n * @returns {Promise}\n */\n\t\tupdateDisplayName: function updateDisplayName() {\n\t\t\tvar _this6 = this;\n\n\t\t\tvar displayName = this.$refs.displayName.value;\n\t\t\tthis.loading.displayName = true;\n\t\t\tthis.$store.dispatch('setUserData', {\n\t\t\t\tuserid: this.user.id,\n\t\t\t\tkey: 'displayname',\n\t\t\t\tvalue: displayName\n\t\t\t}).then(function () {\n\t\t\t\t_this6.loading.displayName = false;\n\t\t\t\t_this6.$refs.displayName.value = displayName;\n\t\t\t});\n\t\t},\n\n\n\t\t/**\n * Set user password\n * \n * @param {string} password The email adress\n * @returns {Promise}\n */\n\t\tupdatePassword: function updatePassword() {\n\t\t\tvar _this7 = this;\n\n\t\t\tvar password = this.$refs.password.value;\n\t\t\tthis.loading.password = true;\n\t\t\tthis.$store.dispatch('setUserData', {\n\t\t\t\tuserid: this.user.id,\n\t\t\t\tkey: 'password',\n\t\t\t\tvalue: password\n\t\t\t}).then(function () {\n\t\t\t\t_this7.loading.password = false;\n\t\t\t\t_this7.$refs.password.value = ''; // empty & show placeholder \n\t\t\t});\n\t\t},\n\n\n\t\t/**\n * Set user mailAddress\n * \n * @param {string} mailAddress The email adress\n * @returns {Promise}\n */\n\t\tupdateEmail: function updateEmail() {\n\t\t\tvar _this8 = this;\n\n\t\t\tvar mailAddress = this.$refs.mailAddress.value;\n\t\t\tthis.loading.mailAddress = true;\n\t\t\tthis.$store.dispatch('setUserData', {\n\t\t\t\tuserid: this.user.id,\n\t\t\t\tkey: 'email',\n\t\t\t\tvalue: mailAddress\n\t\t\t}).then(function () {\n\t\t\t\t_this8.loading.mailAddress = false;\n\t\t\t\t_this8.$refs.mailAddress.value = mailAddress;\n\t\t\t});\n\t\t},\n\n\n\t\t/**\n * Create a new group\n * \n * @param {string} groups Group id\n * @returns {Promise}\n */\n\t\tcreateGroup: function createGroup(gid) {\n\t\t\tvar _this9 = this;\n\n\t\t\tthis.loading = { groups: true, subadmins: true };\n\t\t\tthis.$store.dispatch('addGroup', gid).then(function () {\n\t\t\t\t_this9.loading = { groups: false, subadmins: false };\n\t\t\t\tvar userid = _this9.user.id;\n\t\t\t\t_this9.$store.dispatch('addUserGroup', { userid: userid, gid: gid });\n\t\t\t});\n\t\t\treturn this.$store.getters.getGroups[this.groups.length];\n\t\t},\n\n\n\t\t/**\n * Add user to group\n * \n * @param {object} group Group object\n * @returns {Promise}\n */\n\t\taddUserGroup: function addUserGroup(group) {\n\t\t\tvar _this10 = this;\n\n\t\t\tthis.loading.groups = true;\n\t\t\tvar userid = this.user.id;\n\t\t\tvar gid = group.id;\n\t\t\treturn this.$store.dispatch('addUserGroup', { userid: userid, gid: gid }).then(function () {\n\t\t\t\treturn _this10.loading.groups = false;\n\t\t\t});\n\t\t},\n\n\n\t\t/**\n * Remove user from group\n * \n * @param {object} group Group object\n * @returns {Promise}\n */\n\t\tremoveUserGroup: function removeUserGroup(group) {\n\t\t\tvar _this11 = this;\n\n\t\t\tthis.loading.groups = true;\n\t\t\tvar userid = this.user.id;\n\t\t\tvar gid = group.id;\n\t\t\treturn this.$store.dispatch('removeUserGroup', { userid: userid, gid: gid }).then(function () {\n\t\t\t\treturn _this11.loading.groups = false;\n\t\t\t});\n\t\t},\n\n\n\t\t/**\n * Add user to group\n * \n * @param {object} group Group object\n * @returns {Promise}\n */\n\t\taddUserSubAdmin: function addUserSubAdmin(group) {\n\t\t\tvar _this12 = this;\n\n\t\t\tthis.loading.subadmins = true;\n\t\t\tvar userid = this.user.id;\n\t\t\tvar gid = group.id;\n\t\t\treturn this.$store.dispatch('addUserSubAdmin', { userid: userid, gid: gid }).then(function () {\n\t\t\t\treturn _this12.loading.subadmins = false;\n\t\t\t});\n\t\t},\n\n\n\t\t/**\n * Remove user from group\n * \n * @param {object} group Group object\n * @returns {Promise}\n */\n\t\tremoveUserSubAdmin: function removeUserSubAdmin(group) {\n\t\t\tvar _this13 = this;\n\n\t\t\tthis.loading.subadmins = true;\n\t\t\tvar userid = this.user.id;\n\t\t\tvar gid = group.id;\n\t\t\treturn this.$store.dispatch('removeUserSubAdmin', { userid: userid, gid: gid }).then(function () {\n\t\t\t\treturn _this13.loading.subadmins = false;\n\t\t\t});\n\t\t},\n\n\n\t\t/**\n * Dispatch quota set request\n * \n * @param {string|Object} quota Quota in readable format '5 GB' or Object {id: '5 GB', label: '5GB'}\n * @returns {string}\n */\n\t\tsetUserQuota: function setUserQuota() {\n\t\t\tvar _this14 = this;\n\n\t\t\tvar quota = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'none';\n\n\t\t\tthis.loading.quota = true;\n\t\t\t// ensure we only send the preset id\n\t\t\tquota = quota.id ? quota.id : quota;\n\t\t\tthis.$store.dispatch('setUserData', {\n\t\t\t\tuserid: this.user.id,\n\t\t\t\tkey: 'quota',\n\t\t\t\tvalue: quota\n\t\t\t}).then(function () {\n\t\t\t\treturn _this14.loading.quota = false;\n\t\t\t});\n\t\t\treturn quota;\n\t\t},\n\n\n\t\t/**\n * Validate quota string to make sure it's a valid human file size\n * \n * @param {string} quota Quota in readable format '5 GB'\n * @returns {Promise|boolean}\n */\n\t\tvalidateQuota: function validateQuota(quota) {\n\t\t\t// only used for new presets sent through @Tag\n\t\t\tvar validQuota = OC.Util.computerFileSize(quota);\n\t\t\tif (validQuota === 0) {\n\t\t\t\treturn this.setUserQuota('none');\n\t\t\t} else if (validQuota !== null) {\n\t\t\t\t// unify format output\n\t\t\t\treturn this.setUserQuota(OC.Util.humanFileSize(OC.Util.computerFileSize(quota)));\n\t\t\t}\n\t\t\t// if no valid do not change\n\t\t\treturn false;\n\t\t},\n\n\n\t\t/**\n * Dispatch language set request\n * \n * @param {Object} lang language object {code:'en', name:'English'}\n * @returns {Object}\n */\n\t\tsetUserLanguage: function setUserLanguage(lang) {\n\t\t\tvar _this15 = this;\n\n\t\t\tthis.loading.languages = true;\n\t\t\t// ensure we only send the preset id\n\t\t\tthis.$store.dispatch('setUserData', {\n\t\t\t\tuserid: this.user.id,\n\t\t\t\tkey: 'language',\n\t\t\t\tvalue: lang.code\n\t\t\t}).then(function () {\n\t\t\t\treturn _this15.loading.languages = false;\n\t\t\t});\n\t\t\treturn lang;\n\t\t}\n\t}\n});\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vc3JjL2NvbXBvbmVudHMvdXNlckxpc3QvdXNlclJvdy52dWU/Mjg4YyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXFGQTtBQUNBO0FBQ0E7O0FBRUE7T0FFQTt3RkFDQTs7QUFFQTtBQUVBO0FBSEE7O0FBTUE7QUFGQTs2QkFHQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO3VCQUNBOztrQ0FFQTtlQUNBOztTQUVBO2lCQUNBO2NBQ0E7aUJBQ0E7WUFDQTtlQUNBO1dBQ0E7WUFDQTthQUNBO2VBR0E7QUFaQTtBQUhBO0FBZ0JBOzs7QUFFQTtzQ0FDQTs7VUFFQTt3QkFDQTtpQkFDQTtBQUhBOytDQUtBOzhFQUNBO21CQUVBO0FBSkE7QUFNQTs7O0FBQ0E7O0FBQ0E7Ozs0Q0FDQTs7VUFDQTtBQUNBOztBQUNBOzs7K0NBQ0E7O1VBQ0E7QUFFQTs7O0FBQ0E7a0NBQ0E7K0JBQ0E7a0JBQ0E7b0VBQ0E7VUFDQTs0REFDQTtBQUNBO3NDQUNBO0FBQ0E7NkJBQ0E7QUFDQTs7QUFDQTs7a0NBRUE7QUFDQTsyREFDQTs7eUJBQ0E7OzREQUNBO2tGQUNBO0FBQ0E7NkJBQ0E7QUFDQTsrQkFUQSxDQVVBO0FBRUE7OztBQUNBO2tEQUNBOzhCQUNBO0FBRUE7OztBQUNBOztBQUNBOztpRkFDQTs7cUNBQ0E7O3NIQUNBOztxQkFFQTtxQkFFQTtBQUhBO3lDQUlBO1dBQ0E7QUFDQTtVQUNBO0FBRUE7QUFyRUE7O0FBdUVBO2dDQUNBO3FCQUNBO0FBQ0E7Z0NBQ0E7cUJBQ0E7QUFFQTs7O0FBT0E7Ozs7Ozs7O0FBQ0E7O2FBQ0EsWUFDQTtVQUVBO1VBQ0E7a0NBR0E7QUFMQTtBQVFBOzs7QUFNQTs7Ozs7OzJDQUNBO2dCQUNBO0FBRUE7O0FBQ0E7O3lCQUNBO3NCQUNBOzBCQUNBOytDQUNBLG1DQUNBOzRCQUNBO3lCQUNBO0FBQ0E7QUFFQTs7QUFDQTs7eUJBQ0E7c0JBQ0E7MEJBQ0E7NEJBQ0E7c0VBQ0EscUNBQ0E7NEJBQ0E7eUJBQ0E7QUFDQTtBQUVBOzs7QUFNQTs7Ozs7OztBQUNBOzs0Q0FDQTs4QkFDQTs7c0JBRUE7U0FDQTtXQUNBO0FBSEEsdUJBSUE7aUNBQ0E7cUNBQ0E7QUFDQTtBQUVBOzs7QUFNQTs7Ozs7OztBQUNBOztzQ0FDQTsyQkFDQTs7c0JBRUE7U0FDQTtXQUNBO0FBSEEsdUJBSUE7OEJBQ0E7c0NBQ0E7QUFDQTtBQUVBOzs7QUFNQTs7Ozs7OztBQUNBOzs0Q0FDQTs4QkFDQTs7c0JBRUE7U0FDQTtXQUNBO0FBSEEsdUJBSUE7aUNBQ0E7cUNBQ0E7QUFDQTtBQUVBOzs7QUFNQTs7Ozs7OztBQUNBOzs2Q0FDQTswREFDQTtpREFDQTs2QkFDQTs2REFDQTtBQUNBO29EQUNBO0FBRUE7OztBQU1BOzs7Ozs7O0FBQ0E7O3lCQUNBOzBCQUNBO21CQUNBO2lFQUNBO29DQUNBOztBQUVBOzs7QUFNQTs7Ozs7OztBQUNBOzt5QkFDQTswQkFDQTttQkFDQTtvRUFDQTtvQ0FDQTs7QUFFQTs7O0FBTUE7Ozs7Ozs7QUFDQTs7NEJBQ0E7MEJBQ0E7bUJBQ0E7b0VBQ0E7dUNBQ0E7O0FBRUE7OztBQU1BOzs7Ozs7O0FBQ0E7OzRCQUNBOzBCQUNBO21CQUNBO3VFQUNBO3VDQUNBOztBQUVBOzs7QUFNQTs7Ozs7OztBQUNBOzs7O3dCQUNBO0FBQ0E7aUNBQ0E7O3NCQUVBO1NBQ0E7V0FDQTtBQUhBO21DQUlBOztVQUNBO0FBRUE7OztBQU1BOzs7Ozs7K0NBQ0E7QUFDQTs2Q0FDQTt5QkFDQTs2QkFDQTttQ0FDQTtBQUNBOzRFQUNBO0FBQ0E7QUFDQTtVQUNBO0FBRUE7OztBQU1BOzs7Ozs7O0FBQ0E7OzRCQUNBO0FBQ0E7O3NCQUVBO1NBQ0E7Z0JBQ0E7QUFIQTt1Q0FJQTs7VUFDQTtBQUVBO0FBblBBO0FBdkdBIiwiZmlsZSI6IjE3LmpzIiwic291cmNlc0NvbnRlbnQiOlsiPHRlbXBsYXRlPlxuXHQ8ZGl2IGNsYXNzPVwicm93XCIgOmNsYXNzPVwieydkaXNhYmxlZCc6IGxvYWRpbmcuZGVsZXRlIHx8IGxvYWRpbmcuZGlzYWJsZX1cIj5cblx0XHQ8ZGl2IGNsYXNzPVwiYXZhdGFyXCIgOmNsYXNzPVwieydpY29uLWxvYWRpbmctc21hbGwnOiBsb2FkaW5nLmRlbGV0ZSB8fCBsb2FkaW5nLmRpc2FibGV9XCI+XG5cdFx0XHQ8aW1nIGFsdD1cIlwiIHdpZHRoPVwiMzJcIiBoZWlnaHQ9XCIzMlwiIDpzcmM9XCJnZW5lcmF0ZUF2YXRhcih1c2VyLmlkLCAzMilcIlxuXHRcdFx0XHQgOnNyY3NldD1cImdlbmVyYXRlQXZhdGFyKHVzZXIuaWQsIDY0KSsnIDJ4LCAnK2dlbmVyYXRlQXZhdGFyKHVzZXIuaWQsIDEyOCkrJyA0eCdcIlxuXHRcdFx0XHQgdi1pZj1cIiFsb2FkaW5nLmRlbGV0ZSAmJiAhbG9hZGluZy5kaXNhYmxlXCI+XG5cdFx0PC9kaXY+XG5cdFx0PGRpdiBjbGFzcz1cIm5hbWVcIj57e3VzZXIuaWR9fTwvZGl2PlxuXHRcdDxmb3JtIGNsYXNzPVwiZGlzcGxheU5hbWVcIiA6Y2xhc3M9XCJ7J2ljb24tbG9hZGluZy1zbWFsbCc6IGxvYWRpbmcuZGlzcGxheU5hbWV9XCIgdi1vbjpzdWJtaXQucHJldmVudD1cInVwZGF0ZURpc3BsYXlOYW1lXCI+XG5cdFx0XHQ8aW5wdXQgOmlkPVwiJ2Rpc3BsYXlOYW1lJyt1c2VyLmlkK3JhbmRcIiB0eXBlPVwidGV4dFwiXG5cdFx0XHRcdFx0OmRpc2FibGVkPVwibG9hZGluZy5kaXNwbGF5TmFtZXx8bG9hZGluZy5hbGxcIlxuXHRcdFx0XHRcdDp2YWx1ZT1cInVzZXIuZGlzcGxheW5hbWVcIiByZWY9XCJkaXNwbGF5TmFtZVwiXG5cdFx0XHRcdFx0YXV0b2NvbXBsZXRlPVwibmV3LXBhc3N3b3JkXCIgYXV0b2NvcnJlY3Q9XCJvZmZcIiBhdXRvY2FwaXRhbGl6ZT1cIm9mZlwiIHNwZWxsY2hlY2s9XCJmYWxzZVwiIC8+XG5cdFx0XHQ8aW5wdXQgdHlwZT1cInN1Ym1pdFwiIGNsYXNzPVwiaWNvbi1jb25maXJtXCIgdmFsdWU9XCJcIiAvPlxuXHRcdDwvZm9ybT5cblx0XHQ8Zm9ybSBjbGFzcz1cInBhc3N3b3JkXCIgdi1pZj1cInNldHRpbmdzLmNhbkNoYW5nZVBhc3N3b3JkXCIgOmNsYXNzPVwieydpY29uLWxvYWRpbmctc21hbGwnOiBsb2FkaW5nLnBhc3N3b3JkfVwiXG5cdFx0XHQgIHYtb246c3VibWl0LnByZXZlbnQ9XCJ1cGRhdGVQYXNzd29yZFwiPlxuXHRcdFx0PGlucHV0IDppZD1cIidwYXNzd29yZCcrdXNlci5pZCtyYW5kXCIgdHlwZT1cInBhc3N3b3JkXCIgcmVxdWlyZWRcblx0XHRcdFx0XHQ6ZGlzYWJsZWQ9XCJsb2FkaW5nLnBhc3N3b3JkfHxsb2FkaW5nLmFsbFwiIDptaW5sZW5ndGg9XCJtaW5QYXNzd29yZExlbmd0aFwiXG5cdFx0XHRcdFx0dmFsdWU9XCJcIiA6cGxhY2Vob2xkZXI9XCJ0KCdzZXR0aW5ncycsICdOZXcgcGFzc3dvcmQnKVwiIHJlZj1cInBhc3N3b3JkXCJcblx0XHRcdFx0XHRhdXRvY29tcGxldGU9XCJuZXctcGFzc3dvcmRcIiBhdXRvY29ycmVjdD1cIm9mZlwiIGF1dG9jYXBpdGFsaXplPVwib2ZmXCIgc3BlbGxjaGVjaz1cImZhbHNlXCIgLz5cblx0XHRcdDxpbnB1dCB0eXBlPVwic3VibWl0XCIgY2xhc3M9XCJpY29uLWNvbmZpcm1cIiB2YWx1ZT1cIlwiIC8+XG5cdFx0PC9mb3JtPlxuXHRcdDxkaXYgdi1lbHNlPjwvZGl2PlxuXHRcdDxmb3JtIGNsYXNzPVwibWFpbEFkZHJlc3NcIiA6Y2xhc3M9XCJ7J2ljb24tbG9hZGluZy1zbWFsbCc6IGxvYWRpbmcubWFpbEFkZHJlc3N9XCIgdi1vbjpzdWJtaXQucHJldmVudD1cInVwZGF0ZUVtYWlsXCI+XG5cdFx0XHQ8aW5wdXQgOmlkPVwiJ21haWxBZGRyZXNzJyt1c2VyLmlkK3JhbmRcIiB0eXBlPVwiZW1haWxcIlxuXHRcdFx0XHRcdDpkaXNhYmxlZD1cImxvYWRpbmcubWFpbEFkZHJlc3N8fGxvYWRpbmcuYWxsXCJcblx0XHRcdFx0XHQ6dmFsdWU9XCJ1c2VyLmVtYWlsXCIgcmVmPVwibWFpbEFkZHJlc3NcIlxuXHRcdFx0XHRcdGF1dG9jb21wbGV0ZT1cIm5ldy1wYXNzd29yZFwiIGF1dG9jb3JyZWN0PVwib2ZmXCIgYXV0b2NhcGl0YWxpemU9XCJvZmZcIiBzcGVsbGNoZWNrPVwiZmFsc2VcIiAvPlxuXHRcdFx0PGlucHV0IHR5cGU9XCJzdWJtaXRcIiBjbGFzcz1cImljb24tY29uZmlybVwiIHZhbHVlPVwiXCIgLz5cblx0XHQ8L2Zvcm0+XG5cdFx0PGRpdiBjbGFzcz1cImdyb3Vwc1wiIDpjbGFzcz1cInsnaWNvbi1sb2FkaW5nLXNtYWxsJzogbG9hZGluZy5ncm91cHN9XCI+XG5cdFx0XHQ8bXVsdGlzZWxlY3QgOnZhbHVlPVwidXNlckdyb3Vwc1wiIDpvcHRpb25zPVwiZ3JvdXBzXCIgOmRpc2FibGVkPVwibG9hZGluZy5ncm91cHN8fGxvYWRpbmcuYWxsXCJcblx0XHRcdFx0XHRcdCB0YWctcGxhY2Vob2xkZXI9XCJjcmVhdGVcIiA6cGxhY2Vob2xkZXI9XCJ0KCdzZXR0aW5ncycsICdBZGQgdXNlciBpbiBncm91cCcpXCJcblx0XHRcdFx0XHRcdCBsYWJlbD1cIm5hbWVcIiB0cmFjay1ieT1cImlkXCIgY2xhc3M9XCJtdWx0aXNlbGVjdC12dWVcIlxuXHRcdFx0XHRcdFx0IDpsaW1pdD1cIjJcIiA6bGltaXRUZXh0PVwibGltaXRHcm91cHNcIlxuXHRcdFx0XHRcdFx0IDptdWx0aXBsZT1cInRydWVcIiA6dGFnZ2FibGU9XCJ0cnVlXCIgOmNsb3NlT25TZWxlY3Q9XCJmYWxzZVwiXG5cdFx0XHRcdFx0XHQgQHRhZz1cImNyZWF0ZUdyb3VwXCIgQHNlbGVjdD1cImFkZFVzZXJHcm91cFwiIEByZW1vdmU9XCJyZW1vdmVVc2VyR3JvdXBcIj5cblx0XHRcdDwvbXVsdGlzZWxlY3Q+XG5cdFx0PC9kaXY+XG5cdFx0PGRpdiBjbGFzcz1cInN1YmFkbWluc1wiIHYtaWY9XCJzdWJBZG1pbnNHcm91cHMubGVuZ3RoPjBcIiA6Y2xhc3M9XCJ7J2ljb24tbG9hZGluZy1zbWFsbCc6IGxvYWRpbmcuc3ViYWRtaW5zfVwiPlxuXHRcdFx0PG11bHRpc2VsZWN0IDp2YWx1ZT1cInVzZXJTdWJBZG1pbnNHcm91cHNcIiA6b3B0aW9ucz1cInN1YkFkbWluc0dyb3Vwc1wiIDpkaXNhYmxlZD1cImxvYWRpbmcuc3ViYWRtaW5zfHxsb2FkaW5nLmFsbFwiXG5cdFx0XHRcdFx0XHQgOnBsYWNlaG9sZGVyPVwidCgnc2V0dGluZ3MnLCAnU2V0IHVzZXIgYXMgYWRtaW4gZm9yJylcIlxuXHRcdFx0XHRcdFx0IGxhYmVsPVwibmFtZVwiIHRyYWNrLWJ5PVwiaWRcIiBjbGFzcz1cIm11bHRpc2VsZWN0LXZ1ZVwiXG5cdFx0XHRcdFx0XHQgOmxpbWl0PVwiMlwiIDpsaW1pdFRleHQ9XCJsaW1pdEdyb3Vwc1wiXG5cdFx0XHRcdFx0XHQgOm11bHRpcGxlPVwidHJ1ZVwiIDpjbG9zZU9uU2VsZWN0PVwiZmFsc2VcIlxuXHRcdFx0XHRcdFx0IEBzZWxlY3Q9XCJhZGRVc2VyU3ViQWRtaW5cIiBAcmVtb3ZlPVwicmVtb3ZlVXNlclN1YkFkbWluXCI+XG5cdFx0XHRcdDxzcGFuIHNsb3Q9XCJub1Jlc3VsdFwiPnt7dCgnc2V0dGluZ3MnLCdObyByZXN1bHQnKX19PC9zcGFuPlxuXHRcdFx0PC9tdWx0aXNlbGVjdD5cblx0XHQ8L2Rpdj5cblx0XHQ8ZGl2IGNsYXNzPVwicXVvdGFcIiA6Y2xhc3M9XCJ7J2ljb24tbG9hZGluZy1zbWFsbCc6IGxvYWRpbmcucXVvdGF9XCI+XG5cdFx0XHQ8bXVsdGlzZWxlY3QgOnZhbHVlPVwidXNlclF1b3RhXCIgOm9wdGlvbnM9XCJxdW90YU9wdGlvbnNcIiA6ZGlzYWJsZWQ9XCJsb2FkaW5nLnF1b3RhfHxsb2FkaW5nLmFsbFwiXG5cdFx0XHRcdFx0XHQgdGFnLXBsYWNlaG9sZGVyPVwiY3JlYXRlXCIgOnBsYWNlaG9sZGVyPVwidCgnc2V0dGluZ3MnLCAnU2VsZWN0IHVzZXIgcXVvdGEnKVwiXG5cdFx0XHRcdFx0XHQgbGFiZWw9XCJsYWJlbFwiIHRyYWNrLWJ5PVwiaWRcIiBjbGFzcz1cIm11bHRpc2VsZWN0LXZ1ZVwiXG5cdFx0XHRcdFx0XHQgOmFsbG93RW1wdHk9XCJmYWxzZVwiIDp0YWdnYWJsZT1cInRydWVcIlxuXHRcdFx0XHRcdFx0IEB0YWc9XCJ2YWxpZGF0ZVF1b3RhXCIgQGlucHV0PVwic2V0VXNlclF1b3RhXCI+XG5cdFx0XHQ8L211bHRpc2VsZWN0PlxuXHRcdFx0PHByb2dyZXNzIGNsYXNzPVwicXVvdGEtdXNlci1wcm9ncmVzc1wiIDpjbGFzcz1cInsnd2Fybic6dXNlZFF1b3RhPjgwfVwiIDp2YWx1ZT1cInVzZWRRdW90YVwiIG1heD1cIjEwMFwiPjwvcHJvZ3Jlc3M+XG5cdFx0PC9kaXY+XG5cdFx0PGRpdiBjbGFzcz1cImxhbmd1YWdlc1wiIDpjbGFzcz1cInsnaWNvbi1sb2FkaW5nLXNtYWxsJzogbG9hZGluZy5sYW5ndWFnZXN9XCJcblx0XHRcdCB2LWlmPVwic2hvd0NvbmZpZy5zaG93TGFuZ3VhZ2VzXCI+XG5cdFx0XHQ8bXVsdGlzZWxlY3QgOnZhbHVlPVwidXNlckxhbmd1YWdlXCIgOm9wdGlvbnM9XCJsYW5ndWFnZXNcIiA6ZGlzYWJsZWQ9XCJsb2FkaW5nLmxhbmd1YWdlc3x8bG9hZGluZy5hbGxcIlxuXHRcdFx0XHRcdFx0IDpwbGFjZWhvbGRlcj1cInQoJ3NldHRpbmdzJywgJ05vIGxhbmd1YWdlIHNldCcpXCJcblx0XHRcdFx0XHRcdCBsYWJlbD1cIm5hbWVcIiB0cmFjay1ieT1cImNvZGVcIiBjbGFzcz1cIm11bHRpc2VsZWN0LXZ1ZVwiXG5cdFx0XHRcdFx0XHQgOmFsbG93RW1wdHk9XCJmYWxzZVwiIGdyb3VwLXZhbHVlcz1cImxhbmd1YWdlc1wiIGdyb3VwLWxhYmVsPVwibGFiZWxcIlxuXHRcdFx0XHRcdFx0IEBpbnB1dD1cInNldFVzZXJMYW5ndWFnZVwiPlxuXHRcdFx0PC9tdWx0aXNlbGVjdD5cblx0XHQ8L2Rpdj5cblx0XHQ8ZGl2IGNsYXNzPVwic3RvcmFnZUxvY2F0aW9uXCIgdi1pZj1cInNob3dDb25maWcuc2hvd1N0b3JhZ2VQYXRoXCI+e3t1c2VyLnN0b3JhZ2VMb2NhdGlvbn19PC9kaXY+XG5cdFx0PGRpdiBjbGFzcz1cInVzZXJCYWNrZW5kXCIgdi1pZj1cInNob3dDb25maWcuc2hvd1VzZXJCYWNrZW5kXCI+e3t1c2VyLmJhY2tlbmR9fTwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJsYXN0TG9naW5cIiB2LWlmPVwic2hvd0NvbmZpZy5zaG93TGFzdExvZ2luXCIgOnRpdGxlPVwidXNlci5sYXN0TG9naW4+MCA/IE9DLlV0aWwuZm9ybWF0RGF0ZSh1c2VyLmxhc3RMb2dpbikgOiAnJ1wiPlxuXHRcdFx0e3t1c2VyLmxhc3RMb2dpbj4wID8gT0MuVXRpbC5yZWxhdGl2ZU1vZGlmaWVkRGF0ZSh1c2VyLmxhc3RMb2dpbikgOiB0KCdzZXR0aW5ncycsJ05ldmVyJyl9fVxuXHRcdDwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJ1c2VyQWN0aW9uc1wiPlxuXHRcdFx0PGRpdiBjbGFzcz1cInRvZ2dsZVVzZXJBY3Rpb25zXCIgdi1pZj1cIk9DLmN1cnJlbnRVc2VyICE9PSB1c2VyLmlkICYmIHVzZXIuaWQgIT09ICdhZG1pbicgJiYgIWxvYWRpbmcuYWxsXCI+XG5cdFx0XHRcdDxkaXYgY2xhc3M9XCJpY29uLW1vcmVcIiB2LWNsaWNrLW91dHNpZGU9XCJoaWRlTWVudVwiIEBjbGljaz1cInNob3dNZW51XCI+PC9kaXY+XG5cdFx0XHRcdDxkaXYgY2xhc3M9XCJwb3BvdmVybWVudVwiIDpjbGFzcz1cInsgJ29wZW4nOiBvcGVuZWRNZW51IH1cIj5cblx0XHRcdFx0XHQ8cG9wb3Zlci1tZW51IDptZW51PVwidXNlckFjdGlvbnNcIiAvPlxuXHRcdFx0XHQ8L2Rpdj5cblx0XHRcdDwvZGl2PlxuXHRcdDwvZGl2PlxuXHRcdDwvZGl2PlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdD5cbmltcG9ydCBwb3BvdmVyTWVudSBmcm9tICcuLi9wb3BvdmVyTWVudSc7XG5pbXBvcnQgQ2xpY2tPdXRzaWRlIGZyb20gJ3Z1ZS1jbGljay1vdXRzaWRlJztcbmltcG9ydCBNdWx0aXNlbGVjdCBmcm9tICd2dWUtbXVsdGlzZWxlY3QnO1xuXG5leHBvcnQgZGVmYXVsdCB7XG5cdG5hbWU6ICd1c2VyUm93Jyxcblx0cHJvcHM6IFsndXNlcicsICdzZXR0aW5ncycsICdncm91cHMnLCAnc3ViQWRtaW5zR3JvdXBzJywgJ3F1b3RhT3B0aW9ucycsICdzaG93Q29uZmlnJywgJ2xhbmd1YWdlcyddLFxuXHRjb21wb25lbnRzOiB7XG5cdFx0cG9wb3Zlck1lbnUsXG5cdFx0TXVsdGlzZWxlY3Rcblx0fSxcblx0ZGlyZWN0aXZlczoge1xuXHRcdENsaWNrT3V0c2lkZVxuXHR9LFxuXHRtb3VudGVkKCkge1xuXHRcdC8vIHJlcXVpcmVkIGlmIHBvcHVwIG5lZWRzIHRvIHN0YXkgb3BlbmVkIGFmdGVyIG1lbnUgY2xpY2tcblx0XHQvLyBzaW5jZSB3ZSBvbmx5IGhhdmUgZGlzYWJsZS9kZWxldGUgYWN0aW9ucywgbGV0J3MgY2xvc2UgaXQgZGlyZWN0bHlcblx0XHQvLyB0aGlzLnBvcHVwSXRlbSA9IHRoaXMuJGVsO1xuXHR9LFxuXHRkYXRhKCkge1xuXHRcdHJldHVybiB7XG5cdFx0XHRyYW5kOiBwYXJzZUludChNYXRoLnJhbmRvbSgpICogMTAwMCksXG5cdFx0XHRvcGVuZWRNZW51OiBmYWxzZSxcblx0XHRcdGxvYWRpbmc6IHtcblx0XHRcdFx0YWxsOiBmYWxzZSxcblx0XHRcdFx0ZGlzcGxheU5hbWU6IGZhbHNlLFxuXHRcdFx0XHRwYXNzd29yZDogZmFsc2UsXG5cdFx0XHRcdG1haWxBZGRyZXNzOiBmYWxzZSxcblx0XHRcdFx0Z3JvdXBzOiBmYWxzZSxcblx0XHRcdFx0c3ViYWRtaW5zOiBmYWxzZSxcblx0XHRcdFx0cXVvdGE6IGZhbHNlLFxuXHRcdFx0XHRkZWxldGU6IGZhbHNlLFxuXHRcdFx0XHRkaXNhYmxlOiBmYWxzZSxcblx0XHRcdFx0bGFuZ3VhZ2VzOiBmYWxzZVxuXHRcdFx0fVxuXHRcdH1cblx0fSxcblx0Y29tcHV0ZWQ6IHtcblx0XHQvKiBVU0VSIFBPUE9WRVJNRU5VIEFDVElPTlMgKi9cblx0XHR1c2VyQWN0aW9ucygpIHtcblx0XHRcdHJldHVybiBbe1xuXHRcdFx0XHRpY29uOiAnaWNvbi1kZWxldGUnLFxuXHRcdFx0XHR0ZXh0OiB0KCdzZXR0aW5ncycsJ0RlbGV0ZSB1c2VyJyksXG5cdFx0XHRcdGFjdGlvbjogdGhpcy5kZWxldGVVc2VyXG5cdFx0XHR9LHtcblx0XHRcdFx0J2ljb24nOiB0aGlzLnVzZXIuZW5hYmxlZCA/ICdpY29uLWNsb3NlJyA6ICdpY29uLWFkZCcsXG5cdFx0XHRcdCd0ZXh0JzogdGhpcy51c2VyLmVuYWJsZWQgPyB0KCdzZXR0aW5ncycsJ0Rpc2FibGUgdXNlcicpIDogdCgnc2V0dGluZ3MnLCdFbmFibGUgdXNlcicpLFxuXHRcdFx0XHQnYWN0aW9uJzogdGhpcy5lbmFibGVEaXNhYmxlVXNlclxuXHRcdFx0fV1cblx0XHR9LFxuXG5cdFx0LyogR1JPVVBTIE1BTkFHRU1FTlQgKi9cblx0XHR1c2VyR3JvdXBzKCkge1xuXHRcdFx0bGV0IHVzZXJHcm91cHMgPSB0aGlzLmdyb3Vwcy5maWx0ZXIoZ3JvdXAgPT4gdGhpcy51c2VyLmdyb3Vwcy5pbmNsdWRlcyhncm91cC5pZCkpO1xuXHRcdFx0cmV0dXJuIHVzZXJHcm91cHM7XG5cdFx0fSxcblx0XHR1c2VyU3ViQWRtaW5zR3JvdXBzKCkge1xuXHRcdFx0bGV0IHVzZXJTdWJBZG1pbnNHcm91cHMgPSB0aGlzLnN1YkFkbWluc0dyb3Vwcy5maWx0ZXIoZ3JvdXAgPT4gdGhpcy51c2VyLnN1YmFkbWluLmluY2x1ZGVzKGdyb3VwLmlkKSk7XG5cdFx0XHRyZXR1cm4gdXNlclN1YkFkbWluc0dyb3Vwcztcblx0XHR9LFxuXG5cdFx0LyogUVVPVEEgTUFOQUdFTUVOVCAqL1xuXHRcdHVzZWRRdW90YSgpIHtcblx0XHRcdGxldCBxdW90YSA9IHRoaXMudXNlci5xdW90YS5xdW90YTtcblx0XHRcdGlmIChxdW90YSA+IDApIHtcblx0XHRcdFx0cXVvdGEgPSBNYXRoLm1pbigxMDAsIE1hdGgucm91bmQodGhpcy51c2VyLnF1b3RhLnVzZWQgLyBxdW90YSAqIDEwMCkpO1xuXHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0dmFyIHVzZWRJbkdCID0gdGhpcy51c2VyLnF1b3RhLnVzZWQgLyAoMTAgKiBNYXRoLnBvdygyLCAzMCkpO1xuXHRcdFx0XHQvL2FzeW1wdG90aWMgY3VydmUgYXBwcm9hY2hpbmcgNTAlIGF0IDEwR0IgdG8gdmlzdWFsaXplIHVzZWQgc3RhY2Ugd2l0aCBpbmZpbml0ZSBxdW90YVxuXHRcdFx0XHRxdW90YSA9IDk1ICogKDEgLSAoMSAvICh1c2VkSW5HQiArIDEpKSk7XG5cdFx0XHR9XG5cdFx0XHRyZXR1cm4gaXNOYU4ocXVvdGEpID8gMCA6IHF1b3RhO1xuXHRcdH0sXG5cdFx0Ly8gTWFwcGluZyBzYXZlZCB2YWx1ZXMgdG8gb2JqZWN0c1xuXHRcdHVzZXJRdW90YSgpIHtcblx0XHRcdGlmICh0aGlzLnVzZXIucXVvdGEucXVvdGEgPiAwKSB7XG5cdFx0XHRcdC8vIGlmIHZhbHVlIGlzIHZhbGlkLCBsZXQncyBtYXAgdGhlIHF1b3RhT3B0aW9ucyBvciByZXR1cm4gY3VzdG9tIHF1b3RhXG5cdFx0XHRcdGxldCBodW1hblF1b3RhID0gT0MuVXRpbC5odW1hbkZpbGVTaXplKHRoaXMudXNlci5xdW90YS5xdW90YSk7XG5cdFx0XHRcdGxldCB1c2VyUXVvdGEgPSB0aGlzLnF1b3RhT3B0aW9ucy5maW5kKHF1b3RhID0+IHF1b3RhLmlkID09PSBodW1hblF1b3RhKTtcblx0XHRcdFx0cmV0dXJuIHVzZXJRdW90YSA/IHVzZXJRdW90YSA6IHtpZDpodW1hblF1b3RhLCBsYWJlbDpodW1hblF1b3RhfTtcblx0XHRcdH0gZWxzZSBpZiAodGhpcy51c2VyLnF1b3RhLnF1b3RhID09PSAwIHx8IHRoaXMudXNlci5xdW90YS5xdW90YSA9PT0gJ2RlZmF1bHQnKSB7XG5cdFx0XHRcdC8vIGRlZmF1bHQgcXVvdGEgaXMgcmVwbGFjZWQgYnkgdGhlIHByb3BlciB2YWx1ZSBvbiBsb2FkXG5cdFx0XHRcdHJldHVybiB0aGlzLnF1b3RhT3B0aW9uc1swXTtcblx0XHRcdH1cblx0XHRcdHJldHVybiB0aGlzLnF1b3RhT3B0aW9uc1sxXTsgLy8gdW5saW1pdGVkXG5cdFx0fSxcblxuXHRcdC8qIFBBU1NXT1JEIFBPTElDWT8gKi9cblx0XHRtaW5QYXNzd29yZExlbmd0aCgpIHtcblx0XHRcdHJldHVybiB0aGlzLiRzdG9yZS5nZXR0ZXJzLmdldFBhc3N3b3JkUG9saWN5TWluTGVuZ3RoO1xuXHRcdH0sXG5cblx0XHQvKiBMQU5HVUFHRSAqL1xuXHRcdHVzZXJMYW5ndWFnZSgpIHtcblx0XHRcdGxldCBhdmFpbGFibGVMYW5ndWFnZXMgPSB0aGlzLmxhbmd1YWdlc1swXS5sYW5ndWFnZXMuY29uY2F0KHRoaXMubGFuZ3VhZ2VzWzFdLmxhbmd1YWdlcyk7XG5cdFx0XHRsZXQgdXNlckxhbmcgPSBhdmFpbGFibGVMYW5ndWFnZXMuZmluZChsYW5nID0+IGxhbmcuY29kZSA9PT0gdGhpcy51c2VyLmxhbmd1YWdlKTtcblx0XHRcdGlmICh0eXBlb2YgdXNlckxhbmcgIT09ICdvYmplY3QnICYmIHRoaXMudXNlci5sYW5ndWFnZSAhPT0gJycpIHtcblx0XHRcdFx0cmV0dXJuIHtcblx0XHRcdFx0XHRjb2RlOiB0aGlzLnVzZXIubGFuZ3VhZ2UsXG5cdFx0XHRcdFx0bmFtZTogdGhpcy51c2VyLmxhbmd1YWdlXG5cdFx0XHRcdH1cblx0XHRcdH0gZWxzZSBpZih0aGlzLnVzZXIubGFuZ3VhZ2UgPT09ICcnKSB7XG5cdFx0XHRcdHJldHVybiBmYWxzZTtcblx0XHRcdH1cblx0XHRcdHJldHVybiB1c2VyTGFuZztcblx0XHR9XG5cdH0sXG5cdG1ldGhvZHM6IHtcblx0XHQvKiBNRU5VIEhBTkRMSU5HICovXG5cdFx0c2hvd01lbnUoKSB7XG5cdFx0XHR0aGlzLm9wZW5lZE1lbnUgPSB0cnVlO1xuXHRcdH0sXG5cdFx0aGlkZU1lbnUoKSB7XG5cdFx0XHR0aGlzLm9wZW5lZE1lbnUgPSBmYWxzZTtcblx0XHR9LFxuXG5cdFx0LyoqXG5cdFx0ICogR2VuZXJhdGUgYXZhdGFyIHVybFxuXHRcdCAqIFxuXHRcdCAqIEBwYXJhbSB7c3RyaW5nfSB1c2VyIFRoZSB1c2VyIG5hbWVcblx0XHQgKiBAcGFyYW0ge2ludH0gc2l6ZSBTaXplIGludGVnZXIsIGRlZmF1bHQgMzJcblx0XHQgKiBAcmV0dXJucyB7c3RyaW5nfVxuXHRcdCAqL1xuXHRcdGdlbmVyYXRlQXZhdGFyKHVzZXIsIHNpemU9MzIpIHtcblx0XHRcdHJldHVybiBPQy5nZW5lcmF0ZVVybChcblx0XHRcdFx0Jy9hdmF0YXIve3VzZXJ9L3tzaXplfT92PXt2ZXJzaW9ufScsXG5cdFx0XHRcdHtcblx0XHRcdFx0XHR1c2VyOiB1c2VyLFxuXHRcdFx0XHRcdHNpemU6IHNpemUsXG5cdFx0XHRcdFx0dmVyc2lvbjogb2NfdXNlcmNvbmZpZy5hdmF0YXIudmVyc2lvblxuXHRcdFx0XHR9XG5cdFx0XHQpO1xuXHRcdH0sXG5cblxuXHRcdC8qKlxuXHRcdCAqIEZvcm1hdCB0aGUgbGltaXQgdGV4dCBpbiB0aGUgc2VsZWN0ZWQgb3B0aW9uc1xuXHRcdCAqIFxuXHRcdCAqIEBwYXJhbSB7aW50fSBjb3VudCBlbGVtZW50cyBsZWZ0XG5cdFx0ICogQHJldHVybnMge3N0cmluZ31cblx0XHQgKi9cblx0XHRsaW1pdEdyb3Vwcyhjb3VudCkge1xuXHRcdFx0cmV0dXJuICcrJytjb3VudDtcblx0XHR9LFxuXG5cdFx0ZGVsZXRlVXNlcigpIHtcblx0XHRcdHRoaXMubG9hZGluZy5kZWxldGUgPSB0cnVlO1xuXHRcdFx0dGhpcy5sb2FkaW5nLmFsbCA9IHRydWU7XG5cdFx0XHRsZXQgdXNlcmlkID0gdGhpcy51c2VyLmlkO1xuXHRcdFx0cmV0dXJuIHRoaXMuJHN0b3JlLmRpc3BhdGNoKCdkZWxldGVVc2VyJywge3VzZXJpZH0pXG5cdFx0XHRcdC50aGVuKCgpID0+IHtcblx0XHRcdFx0XHR0aGlzLmxvYWRpbmcuZGVsZXRlID0gZmFsc2Vcblx0XHRcdFx0XHR0aGlzLmxvYWRpbmcuYWxsID0gZmFsc2Vcblx0XHRcdFx0fSk7XG5cdFx0fSxcblxuXHRcdGVuYWJsZURpc2FibGVVc2VyKCkge1xuXHRcdFx0dGhpcy5sb2FkaW5nLmRlbGV0ZSA9IHRydWU7XG5cdFx0XHR0aGlzLmxvYWRpbmcuYWxsID0gdHJ1ZTtcblx0XHRcdGxldCB1c2VyaWQgPSB0aGlzLnVzZXIuaWQ7XG5cdFx0XHRsZXQgZW5hYmxlZCA9ICF0aGlzLnVzZXIuZW5hYmxlZDtcblx0XHRcdHJldHVybiB0aGlzLiRzdG9yZS5kaXNwYXRjaCgnZW5hYmxlRGlzYWJsZVVzZXInLCB7dXNlcmlkLCBlbmFibGVkfSlcblx0XHRcdFx0LnRoZW4oKCkgPT4ge1xuXHRcdFx0XHRcdHRoaXMubG9hZGluZy5kZWxldGUgPSBmYWxzZVxuXHRcdFx0XHRcdHRoaXMubG9hZGluZy5hbGwgPSBmYWxzZVxuXHRcdFx0XHR9KTtcblx0XHR9LFxuXG5cdFx0LyoqXG5cdFx0ICogU2V0IHVzZXIgZGlzcGxheU5hbWVcblx0XHQgKiBcblx0XHQgKiBAcGFyYW0ge3N0cmluZ30gZGlzcGxheU5hbWUgVGhlIGRpc3BsYXkgbmFtZVxuXHRcdCAqIEByZXR1cm5zIHtQcm9taXNlfVxuXHRcdCAqL1xuXHRcdHVwZGF0ZURpc3BsYXlOYW1lKCkge1xuXHRcdFx0bGV0IGRpc3BsYXlOYW1lID0gdGhpcy4kcmVmcy5kaXNwbGF5TmFtZS52YWx1ZTtcblx0XHRcdHRoaXMubG9hZGluZy5kaXNwbGF5TmFtZSA9IHRydWU7XG5cdFx0XHR0aGlzLiRzdG9yZS5kaXNwYXRjaCgnc2V0VXNlckRhdGEnLCB7XG5cdFx0XHRcdHVzZXJpZDogdGhpcy51c2VyLmlkLCBcblx0XHRcdFx0a2V5OiAnZGlzcGxheW5hbWUnLFxuXHRcdFx0XHR2YWx1ZTogZGlzcGxheU5hbWVcblx0XHRcdH0pLnRoZW4oKCkgPT4ge1xuXHRcdFx0XHR0aGlzLmxvYWRpbmcuZGlzcGxheU5hbWUgPSBmYWxzZTtcblx0XHRcdFx0dGhpcy4kcmVmcy5kaXNwbGF5TmFtZS52YWx1ZSA9IGRpc3BsYXlOYW1lO1xuXHRcdFx0fSk7XG5cdFx0fSxcblxuXHRcdC8qKlxuXHRcdCAqIFNldCB1c2VyIHBhc3N3b3JkXG5cdFx0ICogXG5cdFx0ICogQHBhcmFtIHtzdHJpbmd9IHBhc3N3b3JkIFRoZSBlbWFpbCBhZHJlc3Ncblx0XHQgKiBAcmV0dXJucyB7UHJvbWlzZX1cblx0XHQgKi9cblx0XHR1cGRhdGVQYXNzd29yZCgpIHtcblx0XHRcdGxldCBwYXNzd29yZCA9IHRoaXMuJHJlZnMucGFzc3dvcmQudmFsdWU7XG5cdFx0XHR0aGlzLmxvYWRpbmcucGFzc3dvcmQgPSB0cnVlO1xuXHRcdFx0dGhpcy4kc3RvcmUuZGlzcGF0Y2goJ3NldFVzZXJEYXRhJywge1xuXHRcdFx0XHR1c2VyaWQ6IHRoaXMudXNlci5pZCxcblx0XHRcdFx0a2V5OiAncGFzc3dvcmQnLFxuXHRcdFx0XHR2YWx1ZTogcGFzc3dvcmRcblx0XHRcdH0pLnRoZW4oKCkgPT4ge1xuXHRcdFx0XHR0aGlzLmxvYWRpbmcucGFzc3dvcmQgPSBmYWxzZTtcblx0XHRcdFx0dGhpcy4kcmVmcy5wYXNzd29yZC52YWx1ZSA9ICcnOyAvLyBlbXB0eSAmIHNob3cgcGxhY2Vob2xkZXIgXG5cdFx0XHR9KTtcblx0XHR9LFxuXG5cdFx0LyoqXG5cdFx0ICogU2V0IHVzZXIgbWFpbEFkZHJlc3Ncblx0XHQgKiBcblx0XHQgKiBAcGFyYW0ge3N0cmluZ30gbWFpbEFkZHJlc3MgVGhlIGVtYWlsIGFkcmVzc1xuXHRcdCAqIEByZXR1cm5zIHtQcm9taXNlfVxuXHRcdCAqL1xuXHRcdHVwZGF0ZUVtYWlsKCkge1xuXHRcdFx0bGV0IG1haWxBZGRyZXNzID0gdGhpcy4kcmVmcy5tYWlsQWRkcmVzcy52YWx1ZTtcblx0XHRcdHRoaXMubG9hZGluZy5tYWlsQWRkcmVzcyA9IHRydWU7XG5cdFx0XHR0aGlzLiRzdG9yZS5kaXNwYXRjaCgnc2V0VXNlckRhdGEnLCB7XG5cdFx0XHRcdHVzZXJpZDogdGhpcy51c2VyLmlkLFxuXHRcdFx0XHRrZXk6ICdlbWFpbCcsXG5cdFx0XHRcdHZhbHVlOiBtYWlsQWRkcmVzc1xuXHRcdFx0fSkudGhlbigoKSA9PiB7XG5cdFx0XHRcdHRoaXMubG9hZGluZy5tYWlsQWRkcmVzcyA9IGZhbHNlO1xuXHRcdFx0XHR0aGlzLiRyZWZzLm1haWxBZGRyZXNzLnZhbHVlID0gbWFpbEFkZHJlc3M7XG5cdFx0XHR9KTtcblx0XHR9LFxuXG5cdFx0LyoqXG5cdFx0ICogQ3JlYXRlIGEgbmV3IGdyb3VwXG5cdFx0ICogXG5cdFx0ICogQHBhcmFtIHtzdHJpbmd9IGdyb3VwcyBHcm91cCBpZFxuXHRcdCAqIEByZXR1cm5zIHtQcm9taXNlfVxuXHRcdCAqL1xuXHRcdGNyZWF0ZUdyb3VwKGdpZCkge1xuXHRcdFx0dGhpcy5sb2FkaW5nID0ge2dyb3Vwczp0cnVlLCBzdWJhZG1pbnM6dHJ1ZX1cblx0XHRcdHRoaXMuJHN0b3JlLmRpc3BhdGNoKCdhZGRHcm91cCcsIGdpZCkudGhlbigoKSA9PiB7XG5cdFx0XHRcdHRoaXMubG9hZGluZyA9IHtncm91cHM6ZmFsc2UsIHN1YmFkbWluczpmYWxzZX07XG5cdFx0XHRcdGxldCB1c2VyaWQgPSB0aGlzLnVzZXIuaWQ7XG5cdFx0XHRcdHRoaXMuJHN0b3JlLmRpc3BhdGNoKCdhZGRVc2VyR3JvdXAnLCB7dXNlcmlkLCBnaWR9KTtcblx0XHRcdH0pO1xuXHRcdFx0cmV0dXJuIHRoaXMuJHN0b3JlLmdldHRlcnMuZ2V0R3JvdXBzW3RoaXMuZ3JvdXBzLmxlbmd0aF07XG5cdFx0fSxcblxuXHRcdC8qKlxuXHRcdCAqIEFkZCB1c2VyIHRvIGdyb3VwXG5cdFx0ICogXG5cdFx0ICogQHBhcmFtIHtvYmplY3R9IGdyb3VwIEdyb3VwIG9iamVjdFxuXHRcdCAqIEByZXR1cm5zIHtQcm9taXNlfVxuXHRcdCAqL1xuXHRcdGFkZFVzZXJHcm91cChncm91cCkge1xuXHRcdFx0dGhpcy5sb2FkaW5nLmdyb3VwcyA9IHRydWU7XG5cdFx0XHRsZXQgdXNlcmlkID0gdGhpcy51c2VyLmlkO1xuXHRcdFx0bGV0IGdpZCA9IGdyb3VwLmlkO1xuXHRcdFx0cmV0dXJuIHRoaXMuJHN0b3JlLmRpc3BhdGNoKCdhZGRVc2VyR3JvdXAnLCB7dXNlcmlkLCBnaWR9KVxuXHRcdFx0XHQudGhlbigoKSA9PiB0aGlzLmxvYWRpbmcuZ3JvdXBzID0gZmFsc2UpO1xuXHRcdH0sXG5cblx0XHQvKipcblx0XHQgKiBSZW1vdmUgdXNlciBmcm9tIGdyb3VwXG5cdFx0ICogXG5cdFx0ICogQHBhcmFtIHtvYmplY3R9IGdyb3VwIEdyb3VwIG9iamVjdFxuXHRcdCAqIEByZXR1cm5zIHtQcm9taXNlfVxuXHRcdCAqL1xuXHRcdHJlbW92ZVVzZXJHcm91cChncm91cCkge1xuXHRcdFx0dGhpcy5sb2FkaW5nLmdyb3VwcyA9IHRydWU7XG5cdFx0XHRsZXQgdXNlcmlkID0gdGhpcy51c2VyLmlkO1xuXHRcdFx0bGV0IGdpZCA9IGdyb3VwLmlkO1xuXHRcdFx0cmV0dXJuIHRoaXMuJHN0b3JlLmRpc3BhdGNoKCdyZW1vdmVVc2VyR3JvdXAnLCB7dXNlcmlkLCBnaWR9KVxuXHRcdFx0XHQudGhlbigoKSA9PiB0aGlzLmxvYWRpbmcuZ3JvdXBzID0gZmFsc2UpO1xuXHRcdH0sXG5cblx0XHQvKipcblx0XHQgKiBBZGQgdXNlciB0byBncm91cFxuXHRcdCAqIFxuXHRcdCAqIEBwYXJhbSB7b2JqZWN0fSBncm91cCBHcm91cCBvYmplY3Rcblx0XHQgKiBAcmV0dXJucyB7UHJvbWlzZX1cblx0XHQgKi9cblx0XHRhZGRVc2VyU3ViQWRtaW4oZ3JvdXApIHtcblx0XHRcdHRoaXMubG9hZGluZy5zdWJhZG1pbnMgPSB0cnVlO1xuXHRcdFx0bGV0IHVzZXJpZCA9IHRoaXMudXNlci5pZDtcblx0XHRcdGxldCBnaWQgPSBncm91cC5pZDtcblx0XHRcdHJldHVybiB0aGlzLiRzdG9yZS5kaXNwYXRjaCgnYWRkVXNlclN1YkFkbWluJywge3VzZXJpZCwgZ2lkfSlcblx0XHRcdFx0LnRoZW4oKCkgPT4gdGhpcy5sb2FkaW5nLnN1YmFkbWlucyA9IGZhbHNlKTtcblx0XHR9LFxuXG5cdFx0LyoqXG5cdFx0ICogUmVtb3ZlIHVzZXIgZnJvbSBncm91cFxuXHRcdCAqIFxuXHRcdCAqIEBwYXJhbSB7b2JqZWN0fSBncm91cCBHcm91cCBvYmplY3Rcblx0XHQgKiBAcmV0dXJucyB7UHJvbWlzZX1cblx0XHQgKi9cblx0XHRyZW1vdmVVc2VyU3ViQWRtaW4oZ3JvdXApIHtcblx0XHRcdHRoaXMubG9hZGluZy5zdWJhZG1pbnMgPSB0cnVlO1xuXHRcdFx0bGV0IHVzZXJpZCA9IHRoaXMudXNlci5pZDtcblx0XHRcdGxldCBnaWQgPSBncm91cC5pZDtcblx0XHRcdHJldHVybiB0aGlzLiRzdG9yZS5kaXNwYXRjaCgncmVtb3ZlVXNlclN1YkFkbWluJywge3VzZXJpZCwgZ2lkfSlcblx0XHRcdFx0LnRoZW4oKCkgPT4gdGhpcy5sb2FkaW5nLnN1YmFkbWlucyA9IGZhbHNlKTtcblx0XHR9LFxuXG5cdFx0LyoqXG5cdFx0ICogRGlzcGF0Y2ggcXVvdGEgc2V0IHJlcXVlc3Rcblx0XHQgKiBcblx0XHQgKiBAcGFyYW0ge3N0cmluZ3xPYmplY3R9IHF1b3RhIFF1b3RhIGluIHJlYWRhYmxlIGZvcm1hdCAnNSBHQicgb3IgT2JqZWN0IHtpZDogJzUgR0InLCBsYWJlbDogJzVHQid9XG5cdFx0ICogQHJldHVybnMge3N0cmluZ31cblx0XHQgKi9cblx0XHRzZXRVc2VyUXVvdGEocXVvdGEgPSAnbm9uZScpIHtcblx0XHRcdHRoaXMubG9hZGluZy5xdW90YSA9IHRydWU7XG5cdFx0XHQvLyBlbnN1cmUgd2Ugb25seSBzZW5kIHRoZSBwcmVzZXQgaWRcblx0XHRcdHF1b3RhID0gcXVvdGEuaWQgPyBxdW90YS5pZCA6IHF1b3RhO1xuXHRcdFx0dGhpcy4kc3RvcmUuZGlzcGF0Y2goJ3NldFVzZXJEYXRhJywge1xuXHRcdFx0XHR1c2VyaWQ6IHRoaXMudXNlci5pZCwgXG5cdFx0XHRcdGtleTogJ3F1b3RhJyxcblx0XHRcdFx0dmFsdWU6IHF1b3RhXG5cdFx0XHR9KS50aGVuKCgpID0+IHRoaXMubG9hZGluZy5xdW90YSA9IGZhbHNlKTtcblx0XHRcdHJldHVybiBxdW90YTtcblx0XHR9LFxuXG5cdFx0LyoqXG5cdFx0ICogVmFsaWRhdGUgcXVvdGEgc3RyaW5nIHRvIG1ha2Ugc3VyZSBpdCdzIGEgdmFsaWQgaHVtYW4gZmlsZSBzaXplXG5cdFx0ICogXG5cdFx0ICogQHBhcmFtIHtzdHJpbmd9IHF1b3RhIFF1b3RhIGluIHJlYWRhYmxlIGZvcm1hdCAnNSBHQidcblx0XHQgKiBAcmV0dXJucyB7UHJvbWlzZXxib29sZWFufVxuXHRcdCAqL1xuXHRcdHZhbGlkYXRlUXVvdGEocXVvdGEpIHtcblx0XHRcdC8vIG9ubHkgdXNlZCBmb3IgbmV3IHByZXNldHMgc2VudCB0aHJvdWdoIEBUYWdcblx0XHRcdGxldCB2YWxpZFF1b3RhID0gT0MuVXRpbC5jb21wdXRlckZpbGVTaXplKHF1b3RhKTtcblx0XHRcdGlmICh2YWxpZFF1b3RhID09PSAwKSB7XG5cdFx0XHRcdHJldHVybiB0aGlzLnNldFVzZXJRdW90YSgnbm9uZScpO1xuXHRcdFx0fSBlbHNlIGlmICh2YWxpZFF1b3RhICE9PSBudWxsKSB7XG5cdFx0XHRcdC8vIHVuaWZ5IGZvcm1hdCBvdXRwdXRcblx0XHRcdFx0cmV0dXJuIHRoaXMuc2V0VXNlclF1b3RhKE9DLlV0aWwuaHVtYW5GaWxlU2l6ZShPQy5VdGlsLmNvbXB1dGVyRmlsZVNpemUocXVvdGEpKSk7XG5cdFx0XHR9XG5cdFx0XHQvLyBpZiBubyB2YWxpZCBkbyBub3QgY2hhbmdlXG5cdFx0XHRyZXR1cm4gZmFsc2U7XG5cdFx0fSxcblxuXHRcdC8qKlxuXHRcdCAqIERpc3BhdGNoIGxhbmd1YWdlIHNldCByZXF1ZXN0XG5cdFx0ICogXG5cdFx0ICogQHBhcmFtIHtPYmplY3R9IGxhbmcgbGFuZ3VhZ2Ugb2JqZWN0IHtjb2RlOidlbicsIG5hbWU6J0VuZ2xpc2gnfVxuXHRcdCAqIEByZXR1cm5zIHtPYmplY3R9XG5cdFx0ICovXG5cdFx0c2V0VXNlckxhbmd1YWdlKGxhbmcpIHtcblx0XHRcdHRoaXMubG9hZGluZy5sYW5ndWFnZXMgPSB0cnVlO1xuXHRcdFx0Ly8gZW5zdXJlIHdlIG9ubHkgc2VuZCB0aGUgcHJlc2V0IGlkXG5cdFx0XHR0aGlzLiRzdG9yZS5kaXNwYXRjaCgnc2V0VXNlckRhdGEnLCB7XG5cdFx0XHRcdHVzZXJpZDogdGhpcy51c2VyLmlkLCBcblx0XHRcdFx0a2V5OiAnbGFuZ3VhZ2UnLFxuXHRcdFx0XHR2YWx1ZTogbGFuZy5jb2RlXG5cdFx0XHR9KS50aGVuKCgpID0+IHRoaXMubG9hZGluZy5sYW5ndWFnZXMgPSBmYWxzZSk7XG5cdFx0XHRyZXR1cm4gbGFuZztcblx0XHR9XG5cdH1cbn1cbjwvc2NyaXB0PlxuXG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIHNyYy9jb21wb25lbnRzL3VzZXJMaXN0L3VzZXJSb3cudnVlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///17\n"); /***/ }), /* 18 */ @@ -196,14 +196,14 @@ eval("\n\nmodule.exports = function bind(fn, thisArg) {\n return function wrap( /***/ (function(module, exports, __webpack_require__) { "use strict"; -eval("/* WEBPACK VAR INJECTION */(function(process) {\n\nvar utils = __webpack_require__(0);\nvar settle = __webpack_require__(54);\nvar buildURL = __webpack_require__(56);\nvar parseHeaders = __webpack_require__(57);\nvar isURLSameOrigin = __webpack_require__(58);\nvar createError = __webpack_require__(20);\nvar btoa = (typeof window !== 'undefined' && window.btoa && window.btoa.bind(window)) || __webpack_require__(59);\n\nmodule.exports = function xhrAdapter(config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n var requestData = config.data;\n var requestHeaders = config.headers;\n\n if (utils.isFormData(requestData)) {\n delete requestHeaders['Content-Type']; // Let the browser set it\n }\n\n var request = new XMLHttpRequest();\n var loadEvent = 'onreadystatechange';\n var xDomain = false;\n\n // For IE 8/9 CORS support\n // Only supports POST and GET calls and doesn't returns the response headers.\n // DON'T do this for testing b/c XMLHttpRequest is mocked, not XDomainRequest.\n if (process.env.NODE_ENV !== 'test' &&\n typeof window !== 'undefined' &&\n window.XDomainRequest && !('withCredentials' in request) &&\n !isURLSameOrigin(config.url)) {\n request = new window.XDomainRequest();\n loadEvent = 'onload';\n xDomain = true;\n request.onprogress = function handleProgress() {};\n request.ontimeout = function handleTimeout() {};\n }\n\n // HTTP basic authentication\n if (config.auth) {\n var username = config.auth.username || '';\n var password = config.auth.password || '';\n requestHeaders.Authorization = 'Basic ' + btoa(username + ':' + password);\n }\n\n request.open(config.method.toUpperCase(), buildURL(config.url, config.params, config.paramsSerializer), true);\n\n // Set the request timeout in MS\n request.timeout = config.timeout;\n\n // Listen for ready state\n request[loadEvent] = function handleLoad() {\n if (!request || (request.readyState !== 4 && !xDomain)) {\n return;\n }\n\n // The request errored out and we didn't get a response, this will be\n // handled by onerror instead\n // With one exception: request that using file: protocol, most browsers\n // will return status as 0 even though it's a successful request\n if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {\n return;\n }\n\n // Prepare the response\n var responseHeaders = 'getAllResponseHeaders' in request ? parseHeaders(request.getAllResponseHeaders()) : null;\n var responseData = !config.responseType || config.responseType === 'text' ? request.responseText : request.response;\n var response = {\n data: responseData,\n // IE sends 1223 instead of 204 (https://github.com/axios/axios/issues/201)\n status: request.status === 1223 ? 204 : request.status,\n statusText: request.status === 1223 ? 'No Content' : request.statusText,\n headers: responseHeaders,\n config: config,\n request: request\n };\n\n settle(resolve, reject, response);\n\n // Clean up request\n request = null;\n };\n\n // Handle low level network errors\n request.onerror = function handleError() {\n // Real errors are hidden from us by the browser\n // onerror should only fire if it's a network error\n reject(createError('Network Error', config, null, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle timeout\n request.ontimeout = function handleTimeout() {\n reject(createError('timeout of ' + config.timeout + 'ms exceeded', config, 'ECONNABORTED',\n request));\n\n // Clean up request\n request = null;\n };\n\n // Add xsrf header\n // This is only done if running in a standard browser environment.\n // Specifically not if we're in a web worker, or react-native.\n if (utils.isStandardBrowserEnv()) {\n var cookies = __webpack_require__(60);\n\n // Add xsrf header\n var xsrfValue = (config.withCredentials || isURLSameOrigin(config.url)) && config.xsrfCookieName ?\n cookies.read(config.xsrfCookieName) :\n undefined;\n\n if (xsrfValue) {\n requestHeaders[config.xsrfHeaderName] = xsrfValue;\n }\n }\n\n // Add headers to the request\n if ('setRequestHeader' in request) {\n utils.forEach(requestHeaders, function setRequestHeader(val, key) {\n if (typeof requestData === 'undefined' && key.toLowerCase() === 'content-type') {\n // Remove Content-Type if data is undefined\n delete requestHeaders[key];\n } else {\n // Otherwise add header to the request\n request.setRequestHeader(key, val);\n }\n });\n }\n\n // Add withCredentials to request if needed\n if (config.withCredentials) {\n request.withCredentials = true;\n }\n\n // Add responseType to request if needed\n if (config.responseType) {\n try {\n request.responseType = config.responseType;\n } catch (e) {\n // Expected DOMException thrown by browsers not compatible XMLHttpRequest Level 2.\n // But, this can be suppressed for 'json' type as it can be parsed by default 'transformResponse' function.\n if (config.responseType !== 'json') {\n throw e;\n }\n }\n }\n\n // Handle progress if needed\n if (typeof config.onDownloadProgress === 'function') {\n request.addEventListener('progress', config.onDownloadProgress);\n }\n\n // Not all browsers support upload events\n if (typeof config.onUploadProgress === 'function' && request.upload) {\n request.upload.addEventListener('progress', config.onUploadProgress);\n }\n\n if (config.cancelToken) {\n // Handle cancellation\n config.cancelToken.promise.then(function onCanceled(cancel) {\n if (!request) {\n return;\n }\n\n request.abort();\n reject(cancel);\n // Clean up request\n request = null;\n });\n }\n\n if (requestData === undefined) {\n requestData = null;\n }\n\n // Send the request\n request.send(requestData);\n });\n};\n\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(1)))\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2FkYXB0ZXJzL3hoci5qcz9lYzZjIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIrQ0FBQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLDRDQUE0QztBQUM1Qzs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsR0FBRztBQUNIIiwiZmlsZSI6IjE5LmpzIiwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBzdHJpY3QnO1xuXG52YXIgdXRpbHMgPSByZXF1aXJlKCcuLy4uL3V0aWxzJyk7XG52YXIgc2V0dGxlID0gcmVxdWlyZSgnLi8uLi9jb3JlL3NldHRsZScpO1xudmFyIGJ1aWxkVVJMID0gcmVxdWlyZSgnLi8uLi9oZWxwZXJzL2J1aWxkVVJMJyk7XG52YXIgcGFyc2VIZWFkZXJzID0gcmVxdWlyZSgnLi8uLi9oZWxwZXJzL3BhcnNlSGVhZGVycycpO1xudmFyIGlzVVJMU2FtZU9yaWdpbiA9IHJlcXVpcmUoJy4vLi4vaGVscGVycy9pc1VSTFNhbWVPcmlnaW4nKTtcbnZhciBjcmVhdGVFcnJvciA9IHJlcXVpcmUoJy4uL2NvcmUvY3JlYXRlRXJyb3InKTtcbnZhciBidG9hID0gKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnICYmIHdpbmRvdy5idG9hICYmIHdpbmRvdy5idG9hLmJpbmQod2luZG93KSkgfHwgcmVxdWlyZSgnLi8uLi9oZWxwZXJzL2J0b2EnKTtcblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiB4aHJBZGFwdGVyKGNvbmZpZykge1xuICByZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24gZGlzcGF0Y2hYaHJSZXF1ZXN0KHJlc29sdmUsIHJlamVjdCkge1xuICAgIHZhciByZXF1ZXN0RGF0YSA9IGNvbmZpZy5kYXRhO1xuICAgIHZhciByZXF1ZXN0SGVhZGVycyA9IGNvbmZpZy5oZWFkZXJzO1xuXG4gICAgaWYgKHV0aWxzLmlzRm9ybURhdGEocmVxdWVzdERhdGEpKSB7XG4gICAgICBkZWxldGUgcmVxdWVzdEhlYWRlcnNbJ0NvbnRlbnQtVHlwZSddOyAvLyBMZXQgdGhlIGJyb3dzZXIgc2V0IGl0XG4gICAgfVxuXG4gICAgdmFyIHJlcXVlc3QgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTtcbiAgICB2YXIgbG9hZEV2ZW50ID0gJ29ucmVhZHlzdGF0ZWNoYW5nZSc7XG4gICAgdmFyIHhEb21haW4gPSBmYWxzZTtcblxuICAgIC8vIEZvciBJRSA4LzkgQ09SUyBzdXBwb3J0XG4gICAgLy8gT25seSBzdXBwb3J0cyBQT1NUIGFuZCBHRVQgY2FsbHMgYW5kIGRvZXNuJ3QgcmV0dXJucyB0aGUgcmVzcG9uc2UgaGVhZGVycy5cbiAgICAvLyBET04nVCBkbyB0aGlzIGZvciB0ZXN0aW5nIGIvYyBYTUxIdHRwUmVxdWVzdCBpcyBtb2NrZWQsIG5vdCBYRG9tYWluUmVxdWVzdC5cbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICd0ZXN0JyAmJlxuICAgICAgICB0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyAmJlxuICAgICAgICB3aW5kb3cuWERvbWFpblJlcXVlc3QgJiYgISgnd2l0aENyZWRlbnRpYWxzJyBpbiByZXF1ZXN0KSAmJlxuICAgICAgICAhaXNVUkxTYW1lT3JpZ2luKGNvbmZpZy51cmwpKSB7XG4gICAgICByZXF1ZXN0ID0gbmV3IHdpbmRvdy5YRG9tYWluUmVxdWVzdCgpO1xuICAgICAgbG9hZEV2ZW50ID0gJ29ubG9hZCc7XG4gICAgICB4RG9tYWluID0gdHJ1ZTtcbiAgICAgIHJlcXVlc3Qub25wcm9ncmVzcyA9IGZ1bmN0aW9uIGhhbmRsZVByb2dyZXNzKCkge307XG4gICAgICByZXF1ZXN0Lm9udGltZW91dCA9IGZ1bmN0aW9uIGhhbmRsZVRpbWVvdXQoKSB7fTtcbiAgICB9XG5cbiAgICAvLyBIVFRQIGJhc2ljIGF1dGhlbnRpY2F0aW9uXG4gICAgaWYgKGNvbmZpZy5hdXRoKSB7XG4gICAgICB2YXIgdXNlcm5hbWUgPSBjb25maWcuYXV0aC51c2VybmFtZSB8fCAnJztcbiAgICAgIHZhciBwYXNzd29yZCA9IGNvbmZpZy5hdXRoLnBhc3N3b3JkIHx8ICcnO1xuICAgICAgcmVxdWVzdEhlYWRlcnMuQXV0aG9yaXphdGlvbiA9ICdCYXNpYyAnICsgYnRvYSh1c2VybmFtZSArICc6JyArIHBhc3N3b3JkKTtcbiAgICB9XG5cbiAgICByZXF1ZXN0Lm9wZW4oY29uZmlnLm1ldGhvZC50b1VwcGVyQ2FzZSgpLCBidWlsZFVSTChjb25maWcudXJsLCBjb25maWcucGFyYW1zLCBjb25maWcucGFyYW1zU2VyaWFsaXplciksIHRydWUpO1xuXG4gICAgLy8gU2V0IHRoZSByZXF1ZXN0IHRpbWVvdXQgaW4gTVNcbiAgICByZXF1ZXN0LnRpbWVvdXQgPSBjb25maWcudGltZW91dDtcblxuICAgIC8vIExpc3RlbiBmb3IgcmVhZHkgc3RhdGVcbiAgICByZXF1ZXN0W2xvYWRFdmVudF0gPSBmdW5jdGlvbiBoYW5kbGVMb2FkKCkge1xuICAgICAgaWYgKCFyZXF1ZXN0IHx8IChyZXF1ZXN0LnJlYWR5U3RhdGUgIT09IDQgJiYgIXhEb21haW4pKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgLy8gVGhlIHJlcXVlc3QgZXJyb3JlZCBvdXQgYW5kIHdlIGRpZG4ndCBnZXQgYSByZXNwb25zZSwgdGhpcyB3aWxsIGJlXG4gICAgICAvLyBoYW5kbGVkIGJ5IG9uZXJyb3IgaW5zdGVhZFxuICAgICAgLy8gV2l0aCBvbmUgZXhjZXB0aW9uOiByZXF1ZXN0IHRoYXQgdXNpbmcgZmlsZTogcHJvdG9jb2wsIG1vc3QgYnJvd3NlcnNcbiAgICAgIC8vIHdpbGwgcmV0dXJuIHN0YXR1cyBhcyAwIGV2ZW4gdGhvdWdoIGl0J3MgYSBzdWNjZXNzZnVsIHJlcXVlc3RcbiAgICAgIGlmIChyZXF1ZXN0LnN0YXR1cyA9PT0gMCAmJiAhKHJlcXVlc3QucmVzcG9uc2VVUkwgJiYgcmVxdWVzdC5yZXNwb25zZVVSTC5pbmRleE9mKCdmaWxlOicpID09PSAwKSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIC8vIFByZXBhcmUgdGhlIHJlc3BvbnNlXG4gICAgICB2YXIgcmVzcG9uc2VIZWFkZXJzID0gJ2dldEFsbFJlc3BvbnNlSGVhZGVycycgaW4gcmVxdWVzdCA/IHBhcnNlSGVhZGVycyhyZXF1ZXN0LmdldEFsbFJlc3BvbnNlSGVhZGVycygpKSA6IG51bGw7XG4gICAgICB2YXIgcmVzcG9uc2VEYXRhID0gIWNvbmZpZy5yZXNwb25zZVR5cGUgfHwgY29uZmlnLnJlc3BvbnNlVHlwZSA9PT0gJ3RleHQnID8gcmVxdWVzdC5yZXNwb25zZVRleHQgOiByZXF1ZXN0LnJlc3BvbnNlO1xuICAgICAgdmFyIHJlc3BvbnNlID0ge1xuICAgICAgICBkYXRhOiByZXNwb25zZURhdGEsXG4gICAgICAgIC8vIElFIHNlbmRzIDEyMjMgaW5zdGVhZCBvZiAyMDQgKGh0dHBzOi8vZ2l0aHViLmNvbS9heGlvcy9heGlvcy9pc3N1ZXMvMjAxKVxuICAgICAgICBzdGF0dXM6IHJlcXVlc3Quc3RhdHVzID09PSAxMjIzID8gMjA0IDogcmVxdWVzdC5zdGF0dXMsXG4gICAgICAgIHN0YXR1c1RleHQ6IHJlcXVlc3Quc3RhdHVzID09PSAxMjIzID8gJ05vIENvbnRlbnQnIDogcmVxdWVzdC5zdGF0dXNUZXh0LFxuICAgICAgICBoZWFkZXJzOiByZXNwb25zZUhlYWRlcnMsXG4gICAgICAgIGNvbmZpZzogY29uZmlnLFxuICAgICAgICByZXF1ZXN0OiByZXF1ZXN0XG4gICAgICB9O1xuXG4gICAgICBzZXR0bGUocmVzb2x2ZSwgcmVqZWN0LCByZXNwb25zZSk7XG5cbiAgICAgIC8vIENsZWFuIHVwIHJlcXVlc3RcbiAgICAgIHJlcXVlc3QgPSBudWxsO1xuICAgIH07XG5cbiAgICAvLyBIYW5kbGUgbG93IGxldmVsIG5ldHdvcmsgZXJyb3JzXG4gICAgcmVxdWVzdC5vbmVycm9yID0gZnVuY3Rpb24gaGFuZGxlRXJyb3IoKSB7XG4gICAgICAvLyBSZWFsIGVycm9ycyBhcmUgaGlkZGVuIGZyb20gdXMgYnkgdGhlIGJyb3dzZXJcbiAgICAgIC8vIG9uZXJyb3Igc2hvdWxkIG9ubHkgZmlyZSBpZiBpdCdzIGEgbmV0d29yayBlcnJvclxuICAgICAgcmVqZWN0KGNyZWF0ZUVycm9yKCdOZXR3b3JrIEVycm9yJywgY29uZmlnLCBudWxsLCByZXF1ZXN0KSk7XG5cbiAgICAgIC8vIENsZWFuIHVwIHJlcXVlc3RcbiAgICAgIHJlcXVlc3QgPSBudWxsO1xuICAgIH07XG5cbiAgICAvLyBIYW5kbGUgdGltZW91dFxuICAgIHJlcXVlc3Qub250aW1lb3V0ID0gZnVuY3Rpb24gaGFuZGxlVGltZW91dCgpIHtcbiAgICAgIHJlamVjdChjcmVhdGVFcnJvcigndGltZW91dCBvZiAnICsgY29uZmlnLnRpbWVvdXQgKyAnbXMgZXhjZWVkZWQnLCBjb25maWcsICdFQ09OTkFCT1JURUQnLFxuICAgICAgICByZXF1ZXN0KSk7XG5cbiAgICAgIC8vIENsZWFuIHVwIHJlcXVlc3RcbiAgICAgIHJlcXVlc3QgPSBudWxsO1xuICAgIH07XG5cbiAgICAvLyBBZGQgeHNyZiBoZWFkZXJcbiAgICAvLyBUaGlzIGlzIG9ubHkgZG9uZSBpZiBydW5uaW5nIGluIGEgc3RhbmRhcmQgYnJvd3NlciBlbnZpcm9ubWVudC5cbiAgICAvLyBTcGVjaWZpY2FsbHkgbm90IGlmIHdlJ3JlIGluIGEgd2ViIHdvcmtlciwgb3IgcmVhY3QtbmF0aXZlLlxuICAgIGlmICh1dGlscy5pc1N0YW5kYXJkQnJvd3NlckVudigpKSB7XG4gICAgICB2YXIgY29va2llcyA9IHJlcXVpcmUoJy4vLi4vaGVscGVycy9jb29raWVzJyk7XG5cbiAgICAgIC8vIEFkZCB4c3JmIGhlYWRlclxuICAgICAgdmFyIHhzcmZWYWx1ZSA9IChjb25maWcud2l0aENyZWRlbnRpYWxzIHx8IGlzVVJMU2FtZU9yaWdpbihjb25maWcudXJsKSkgJiYgY29uZmlnLnhzcmZDb29raWVOYW1lID9cbiAgICAgICAgICBjb29raWVzLnJlYWQoY29uZmlnLnhzcmZDb29raWVOYW1lKSA6XG4gICAgICAgICAgdW5kZWZpbmVkO1xuXG4gICAgICBpZiAoeHNyZlZhbHVlKSB7XG4gICAgICAgIHJlcXVlc3RIZWFkZXJzW2NvbmZpZy54c3JmSGVhZGVyTmFtZV0gPSB4c3JmVmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWRkIGhlYWRlcnMgdG8gdGhlIHJlcXVlc3RcbiAgICBpZiAoJ3NldFJlcXVlc3RIZWFkZXInIGluIHJlcXVlc3QpIHtcbiAgICAgIHV0aWxzLmZvckVhY2gocmVxdWVzdEhlYWRlcnMsIGZ1bmN0aW9uIHNldFJlcXVlc3RIZWFkZXIodmFsLCBrZXkpIHtcbiAgICAgICAgaWYgKHR5cGVvZiByZXF1ZXN0RGF0YSA9PT0gJ3VuZGVmaW5lZCcgJiYga2V5LnRvTG93ZXJDYXNlKCkgPT09ICdjb250ZW50LXR5cGUnKSB7XG4gICAgICAgICAgLy8gUmVtb3ZlIENvbnRlbnQtVHlwZSBpZiBkYXRhIGlzIHVuZGVmaW5lZFxuICAgICAgICAgIGRlbGV0ZSByZXF1ZXN0SGVhZGVyc1trZXldO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIC8vIE90aGVyd2lzZSBhZGQgaGVhZGVyIHRvIHRoZSByZXF1ZXN0XG4gICAgICAgICAgcmVxdWVzdC5zZXRSZXF1ZXN0SGVhZGVyKGtleSwgdmFsKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgLy8gQWRkIHdpdGhDcmVkZW50aWFscyB0byByZXF1ZXN0IGlmIG5lZWRlZFxuICAgIGlmIChjb25maWcud2l0aENyZWRlbnRpYWxzKSB7XG4gICAgICByZXF1ZXN0LndpdGhDcmVkZW50aWFscyA9IHRydWU7XG4gICAgfVxuXG4gICAgLy8gQWRkIHJlc3BvbnNlVHlwZSB0byByZXF1ZXN0IGlmIG5lZWRlZFxuICAgIGlmIChjb25maWcucmVzcG9uc2VUeXBlKSB7XG4gICAgICB0cnkge1xuICAgICAgICByZXF1ZXN0LnJlc3BvbnNlVHlwZSA9IGNvbmZpZy5yZXNwb25zZVR5cGU7XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIC8vIEV4cGVjdGVkIERPTUV4Y2VwdGlvbiB0aHJvd24gYnkgYnJvd3NlcnMgbm90IGNvbXBhdGlibGUgWE1MSHR0cFJlcXVlc3QgTGV2ZWwgMi5cbiAgICAgICAgLy8gQnV0LCB0aGlzIGNhbiBiZSBzdXBwcmVzc2VkIGZvciAnanNvbicgdHlwZSBhcyBpdCBjYW4gYmUgcGFyc2VkIGJ5IGRlZmF1bHQgJ3RyYW5zZm9ybVJlc3BvbnNlJyBmdW5jdGlvbi5cbiAgICAgICAgaWYgKGNvbmZpZy5yZXNwb25zZVR5cGUgIT09ICdqc29uJykge1xuICAgICAgICAgIHRocm93IGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBIYW5kbGUgcHJvZ3Jlc3MgaWYgbmVlZGVkXG4gICAgaWYgKHR5cGVvZiBjb25maWcub25Eb3dubG9hZFByb2dyZXNzID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICByZXF1ZXN0LmFkZEV2ZW50TGlzdGVuZXIoJ3Byb2dyZXNzJywgY29uZmlnLm9uRG93bmxvYWRQcm9ncmVzcyk7XG4gICAgfVxuXG4gICAgLy8gTm90IGFsbCBicm93c2VycyBzdXBwb3J0IHVwbG9hZCBldmVudHNcbiAgICBpZiAodHlwZW9mIGNvbmZpZy5vblVwbG9hZFByb2dyZXNzID09PSAnZnVuY3Rpb24nICYmIHJlcXVlc3QudXBsb2FkKSB7XG4gICAgICByZXF1ZXN0LnVwbG9hZC5hZGRFdmVudExpc3RlbmVyKCdwcm9ncmVzcycsIGNvbmZpZy5vblVwbG9hZFByb2dyZXNzKTtcbiAgICB9XG5cbiAgICBpZiAoY29uZmlnLmNhbmNlbFRva2VuKSB7XG4gICAgICAvLyBIYW5kbGUgY2FuY2VsbGF0aW9uXG4gICAgICBjb25maWcuY2FuY2VsVG9rZW4ucHJvbWlzZS50aGVuKGZ1bmN0aW9uIG9uQ2FuY2VsZWQoY2FuY2VsKSB7XG4gICAgICAgIGlmICghcmVxdWVzdCkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHJlcXVlc3QuYWJvcnQoKTtcbiAgICAgICAgcmVqZWN0KGNhbmNlbCk7XG4gICAgICAgIC8vIENsZWFuIHVwIHJlcXVlc3RcbiAgICAgICAgcmVxdWVzdCA9IG51bGw7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBpZiAocmVxdWVzdERhdGEgPT09IHVuZGVmaW5lZCkge1xuICAgICAgcmVxdWVzdERhdGEgPSBudWxsO1xuICAgIH1cblxuICAgIC8vIFNlbmQgdGhlIHJlcXVlc3RcbiAgICByZXF1ZXN0LnNlbmQocmVxdWVzdERhdGEpO1xuICB9KTtcbn07XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvYWRhcHRlcnMveGhyLmpzXG4vLyBtb2R1bGUgaWQgPSAxOVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///19\n"); +eval("/* WEBPACK VAR INJECTION */(function(process) {\n\nvar utils = __webpack_require__(0);\nvar settle = __webpack_require__(50);\nvar buildURL = __webpack_require__(52);\nvar parseHeaders = __webpack_require__(53);\nvar isURLSameOrigin = __webpack_require__(54);\nvar createError = __webpack_require__(20);\nvar btoa = (typeof window !== 'undefined' && window.btoa && window.btoa.bind(window)) || __webpack_require__(55);\n\nmodule.exports = function xhrAdapter(config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n var requestData = config.data;\n var requestHeaders = config.headers;\n\n if (utils.isFormData(requestData)) {\n delete requestHeaders['Content-Type']; // Let the browser set it\n }\n\n var request = new XMLHttpRequest();\n var loadEvent = 'onreadystatechange';\n var xDomain = false;\n\n // For IE 8/9 CORS support\n // Only supports POST and GET calls and doesn't returns the response headers.\n // DON'T do this for testing b/c XMLHttpRequest is mocked, not XDomainRequest.\n if (process.env.NODE_ENV !== 'test' &&\n typeof window !== 'undefined' &&\n window.XDomainRequest && !('withCredentials' in request) &&\n !isURLSameOrigin(config.url)) {\n request = new window.XDomainRequest();\n loadEvent = 'onload';\n xDomain = true;\n request.onprogress = function handleProgress() {};\n request.ontimeout = function handleTimeout() {};\n }\n\n // HTTP basic authentication\n if (config.auth) {\n var username = config.auth.username || '';\n var password = config.auth.password || '';\n requestHeaders.Authorization = 'Basic ' + btoa(username + ':' + password);\n }\n\n request.open(config.method.toUpperCase(), buildURL(config.url, config.params, config.paramsSerializer), true);\n\n // Set the request timeout in MS\n request.timeout = config.timeout;\n\n // Listen for ready state\n request[loadEvent] = function handleLoad() {\n if (!request || (request.readyState !== 4 && !xDomain)) {\n return;\n }\n\n // The request errored out and we didn't get a response, this will be\n // handled by onerror instead\n // With one exception: request that using file: protocol, most browsers\n // will return status as 0 even though it's a successful request\n if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {\n return;\n }\n\n // Prepare the response\n var responseHeaders = 'getAllResponseHeaders' in request ? parseHeaders(request.getAllResponseHeaders()) : null;\n var responseData = !config.responseType || config.responseType === 'text' ? request.responseText : request.response;\n var response = {\n data: responseData,\n // IE sends 1223 instead of 204 (https://github.com/axios/axios/issues/201)\n status: request.status === 1223 ? 204 : request.status,\n statusText: request.status === 1223 ? 'No Content' : request.statusText,\n headers: responseHeaders,\n config: config,\n request: request\n };\n\n settle(resolve, reject, response);\n\n // Clean up request\n request = null;\n };\n\n // Handle low level network errors\n request.onerror = function handleError() {\n // Real errors are hidden from us by the browser\n // onerror should only fire if it's a network error\n reject(createError('Network Error', config, null, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle timeout\n request.ontimeout = function handleTimeout() {\n reject(createError('timeout of ' + config.timeout + 'ms exceeded', config, 'ECONNABORTED',\n request));\n\n // Clean up request\n request = null;\n };\n\n // Add xsrf header\n // This is only done if running in a standard browser environment.\n // Specifically not if we're in a web worker, or react-native.\n if (utils.isStandardBrowserEnv()) {\n var cookies = __webpack_require__(56);\n\n // Add xsrf header\n var xsrfValue = (config.withCredentials || isURLSameOrigin(config.url)) && config.xsrfCookieName ?\n cookies.read(config.xsrfCookieName) :\n undefined;\n\n if (xsrfValue) {\n requestHeaders[config.xsrfHeaderName] = xsrfValue;\n }\n }\n\n // Add headers to the request\n if ('setRequestHeader' in request) {\n utils.forEach(requestHeaders, function setRequestHeader(val, key) {\n if (typeof requestData === 'undefined' && key.toLowerCase() === 'content-type') {\n // Remove Content-Type if data is undefined\n delete requestHeaders[key];\n } else {\n // Otherwise add header to the request\n request.setRequestHeader(key, val);\n }\n });\n }\n\n // Add withCredentials to request if needed\n if (config.withCredentials) {\n request.withCredentials = true;\n }\n\n // Add responseType to request if needed\n if (config.responseType) {\n try {\n request.responseType = config.responseType;\n } catch (e) {\n // Expected DOMException thrown by browsers not compatible XMLHttpRequest Level 2.\n // But, this can be suppressed for 'json' type as it can be parsed by default 'transformResponse' function.\n if (config.responseType !== 'json') {\n throw e;\n }\n }\n }\n\n // Handle progress if needed\n if (typeof config.onDownloadProgress === 'function') {\n request.addEventListener('progress', config.onDownloadProgress);\n }\n\n // Not all browsers support upload events\n if (typeof config.onUploadProgress === 'function' && request.upload) {\n request.upload.addEventListener('progress', config.onUploadProgress);\n }\n\n if (config.cancelToken) {\n // Handle cancellation\n config.cancelToken.promise.then(function onCanceled(cancel) {\n if (!request) {\n return;\n }\n\n request.abort();\n reject(cancel);\n // Clean up request\n request = null;\n });\n }\n\n if (requestData === undefined) {\n requestData = null;\n }\n\n // Send the request\n request.send(requestData);\n });\n};\n\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(1)))\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2FkYXB0ZXJzL3hoci5qcz9lYzZjIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIrQ0FBQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLDRDQUE0QztBQUM1Qzs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsR0FBRztBQUNIIiwiZmlsZSI6IjE5LmpzIiwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBzdHJpY3QnO1xuXG52YXIgdXRpbHMgPSByZXF1aXJlKCcuLy4uL3V0aWxzJyk7XG52YXIgc2V0dGxlID0gcmVxdWlyZSgnLi8uLi9jb3JlL3NldHRsZScpO1xudmFyIGJ1aWxkVVJMID0gcmVxdWlyZSgnLi8uLi9oZWxwZXJzL2J1aWxkVVJMJyk7XG52YXIgcGFyc2VIZWFkZXJzID0gcmVxdWlyZSgnLi8uLi9oZWxwZXJzL3BhcnNlSGVhZGVycycpO1xudmFyIGlzVVJMU2FtZU9yaWdpbiA9IHJlcXVpcmUoJy4vLi4vaGVscGVycy9pc1VSTFNhbWVPcmlnaW4nKTtcbnZhciBjcmVhdGVFcnJvciA9IHJlcXVpcmUoJy4uL2NvcmUvY3JlYXRlRXJyb3InKTtcbnZhciBidG9hID0gKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnICYmIHdpbmRvdy5idG9hICYmIHdpbmRvdy5idG9hLmJpbmQod2luZG93KSkgfHwgcmVxdWlyZSgnLi8uLi9oZWxwZXJzL2J0b2EnKTtcblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiB4aHJBZGFwdGVyKGNvbmZpZykge1xuICByZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24gZGlzcGF0Y2hYaHJSZXF1ZXN0KHJlc29sdmUsIHJlamVjdCkge1xuICAgIHZhciByZXF1ZXN0RGF0YSA9IGNvbmZpZy5kYXRhO1xuICAgIHZhciByZXF1ZXN0SGVhZGVycyA9IGNvbmZpZy5oZWFkZXJzO1xuXG4gICAgaWYgKHV0aWxzLmlzRm9ybURhdGEocmVxdWVzdERhdGEpKSB7XG4gICAgICBkZWxldGUgcmVxdWVzdEhlYWRlcnNbJ0NvbnRlbnQtVHlwZSddOyAvLyBMZXQgdGhlIGJyb3dzZXIgc2V0IGl0XG4gICAgfVxuXG4gICAgdmFyIHJlcXVlc3QgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTtcbiAgICB2YXIgbG9hZEV2ZW50ID0gJ29ucmVhZHlzdGF0ZWNoYW5nZSc7XG4gICAgdmFyIHhEb21haW4gPSBmYWxzZTtcblxuICAgIC8vIEZvciBJRSA4LzkgQ09SUyBzdXBwb3J0XG4gICAgLy8gT25seSBzdXBwb3J0cyBQT1NUIGFuZCBHRVQgY2FsbHMgYW5kIGRvZXNuJ3QgcmV0dXJucyB0aGUgcmVzcG9uc2UgaGVhZGVycy5cbiAgICAvLyBET04nVCBkbyB0aGlzIGZvciB0ZXN0aW5nIGIvYyBYTUxIdHRwUmVxdWVzdCBpcyBtb2NrZWQsIG5vdCBYRG9tYWluUmVxdWVzdC5cbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICd0ZXN0JyAmJlxuICAgICAgICB0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyAmJlxuICAgICAgICB3aW5kb3cuWERvbWFpblJlcXVlc3QgJiYgISgnd2l0aENyZWRlbnRpYWxzJyBpbiByZXF1ZXN0KSAmJlxuICAgICAgICAhaXNVUkxTYW1lT3JpZ2luKGNvbmZpZy51cmwpKSB7XG4gICAgICByZXF1ZXN0ID0gbmV3IHdpbmRvdy5YRG9tYWluUmVxdWVzdCgpO1xuICAgICAgbG9hZEV2ZW50ID0gJ29ubG9hZCc7XG4gICAgICB4RG9tYWluID0gdHJ1ZTtcbiAgICAgIHJlcXVlc3Qub25wcm9ncmVzcyA9IGZ1bmN0aW9uIGhhbmRsZVByb2dyZXNzKCkge307XG4gICAgICByZXF1ZXN0Lm9udGltZW91dCA9IGZ1bmN0aW9uIGhhbmRsZVRpbWVvdXQoKSB7fTtcbiAgICB9XG5cbiAgICAvLyBIVFRQIGJhc2ljIGF1dGhlbnRpY2F0aW9uXG4gICAgaWYgKGNvbmZpZy5hdXRoKSB7XG4gICAgICB2YXIgdXNlcm5hbWUgPSBjb25maWcuYXV0aC51c2VybmFtZSB8fCAnJztcbiAgICAgIHZhciBwYXNzd29yZCA9IGNvbmZpZy5hdXRoLnBhc3N3b3JkIHx8ICcnO1xuICAgICAgcmVxdWVzdEhlYWRlcnMuQXV0aG9yaXphdGlvbiA9ICdCYXNpYyAnICsgYnRvYSh1c2VybmFtZSArICc6JyArIHBhc3N3b3JkKTtcbiAgICB9XG5cbiAgICByZXF1ZXN0Lm9wZW4oY29uZmlnLm1ldGhvZC50b1VwcGVyQ2FzZSgpLCBidWlsZFVSTChjb25maWcudXJsLCBjb25maWcucGFyYW1zLCBjb25maWcucGFyYW1zU2VyaWFsaXplciksIHRydWUpO1xuXG4gICAgLy8gU2V0IHRoZSByZXF1ZXN0IHRpbWVvdXQgaW4gTVNcbiAgICByZXF1ZXN0LnRpbWVvdXQgPSBjb25maWcudGltZW91dDtcblxuICAgIC8vIExpc3RlbiBmb3IgcmVhZHkgc3RhdGVcbiAgICByZXF1ZXN0W2xvYWRFdmVudF0gPSBmdW5jdGlvbiBoYW5kbGVMb2FkKCkge1xuICAgICAgaWYgKCFyZXF1ZXN0IHx8IChyZXF1ZXN0LnJlYWR5U3RhdGUgIT09IDQgJiYgIXhEb21haW4pKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgLy8gVGhlIHJlcXVlc3QgZXJyb3JlZCBvdXQgYW5kIHdlIGRpZG4ndCBnZXQgYSByZXNwb25zZSwgdGhpcyB3aWxsIGJlXG4gICAgICAvLyBoYW5kbGVkIGJ5IG9uZXJyb3IgaW5zdGVhZFxuICAgICAgLy8gV2l0aCBvbmUgZXhjZXB0aW9uOiByZXF1ZXN0IHRoYXQgdXNpbmcgZmlsZTogcHJvdG9jb2wsIG1vc3QgYnJvd3NlcnNcbiAgICAgIC8vIHdpbGwgcmV0dXJuIHN0YXR1cyBhcyAwIGV2ZW4gdGhvdWdoIGl0J3MgYSBzdWNjZXNzZnVsIHJlcXVlc3RcbiAgICAgIGlmIChyZXF1ZXN0LnN0YXR1cyA9PT0gMCAmJiAhKHJlcXVlc3QucmVzcG9uc2VVUkwgJiYgcmVxdWVzdC5yZXNwb25zZVVSTC5pbmRleE9mKCdmaWxlOicpID09PSAwKSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIC8vIFByZXBhcmUgdGhlIHJlc3BvbnNlXG4gICAgICB2YXIgcmVzcG9uc2VIZWFkZXJzID0gJ2dldEFsbFJlc3BvbnNlSGVhZGVycycgaW4gcmVxdWVzdCA/IHBhcnNlSGVhZGVycyhyZXF1ZXN0LmdldEFsbFJlc3BvbnNlSGVhZGVycygpKSA6IG51bGw7XG4gICAgICB2YXIgcmVzcG9uc2VEYXRhID0gIWNvbmZpZy5yZXNwb25zZVR5cGUgfHwgY29uZmlnLnJlc3BvbnNlVHlwZSA9PT0gJ3RleHQnID8gcmVxdWVzdC5yZXNwb25zZVRleHQgOiByZXF1ZXN0LnJlc3BvbnNlO1xuICAgICAgdmFyIHJlc3BvbnNlID0ge1xuICAgICAgICBkYXRhOiByZXNwb25zZURhdGEsXG4gICAgICAgIC8vIElFIHNlbmRzIDEyMjMgaW5zdGVhZCBvZiAyMDQgKGh0dHBzOi8vZ2l0aHViLmNvbS9heGlvcy9heGlvcy9pc3N1ZXMvMjAxKVxuICAgICAgICBzdGF0dXM6IHJlcXVlc3Quc3RhdHVzID09PSAxMjIzID8gMjA0IDogcmVxdWVzdC5zdGF0dXMsXG4gICAgICAgIHN0YXR1c1RleHQ6IHJlcXVlc3Quc3RhdHVzID09PSAxMjIzID8gJ05vIENvbnRlbnQnIDogcmVxdWVzdC5zdGF0dXNUZXh0LFxuICAgICAgICBoZWFkZXJzOiByZXNwb25zZUhlYWRlcnMsXG4gICAgICAgIGNvbmZpZzogY29uZmlnLFxuICAgICAgICByZXF1ZXN0OiByZXF1ZXN0XG4gICAgICB9O1xuXG4gICAgICBzZXR0bGUocmVzb2x2ZSwgcmVqZWN0LCByZXNwb25zZSk7XG5cbiAgICAgIC8vIENsZWFuIHVwIHJlcXVlc3RcbiAgICAgIHJlcXVlc3QgPSBudWxsO1xuICAgIH07XG5cbiAgICAvLyBIYW5kbGUgbG93IGxldmVsIG5ldHdvcmsgZXJyb3JzXG4gICAgcmVxdWVzdC5vbmVycm9yID0gZnVuY3Rpb24gaGFuZGxlRXJyb3IoKSB7XG4gICAgICAvLyBSZWFsIGVycm9ycyBhcmUgaGlkZGVuIGZyb20gdXMgYnkgdGhlIGJyb3dzZXJcbiAgICAgIC8vIG9uZXJyb3Igc2hvdWxkIG9ubHkgZmlyZSBpZiBpdCdzIGEgbmV0d29yayBlcnJvclxuICAgICAgcmVqZWN0KGNyZWF0ZUVycm9yKCdOZXR3b3JrIEVycm9yJywgY29uZmlnLCBudWxsLCByZXF1ZXN0KSk7XG5cbiAgICAgIC8vIENsZWFuIHVwIHJlcXVlc3RcbiAgICAgIHJlcXVlc3QgPSBudWxsO1xuICAgIH07XG5cbiAgICAvLyBIYW5kbGUgdGltZW91dFxuICAgIHJlcXVlc3Qub250aW1lb3V0ID0gZnVuY3Rpb24gaGFuZGxlVGltZW91dCgpIHtcbiAgICAgIHJlamVjdChjcmVhdGVFcnJvcigndGltZW91dCBvZiAnICsgY29uZmlnLnRpbWVvdXQgKyAnbXMgZXhjZWVkZWQnLCBjb25maWcsICdFQ09OTkFCT1JURUQnLFxuICAgICAgICByZXF1ZXN0KSk7XG5cbiAgICAgIC8vIENsZWFuIHVwIHJlcXVlc3RcbiAgICAgIHJlcXVlc3QgPSBudWxsO1xuICAgIH07XG5cbiAgICAvLyBBZGQgeHNyZiBoZWFkZXJcbiAgICAvLyBUaGlzIGlzIG9ubHkgZG9uZSBpZiBydW5uaW5nIGluIGEgc3RhbmRhcmQgYnJvd3NlciBlbnZpcm9ubWVudC5cbiAgICAvLyBTcGVjaWZpY2FsbHkgbm90IGlmIHdlJ3JlIGluIGEgd2ViIHdvcmtlciwgb3IgcmVhY3QtbmF0aXZlLlxuICAgIGlmICh1dGlscy5pc1N0YW5kYXJkQnJvd3NlckVudigpKSB7XG4gICAgICB2YXIgY29va2llcyA9IHJlcXVpcmUoJy4vLi4vaGVscGVycy9jb29raWVzJyk7XG5cbiAgICAgIC8vIEFkZCB4c3JmIGhlYWRlclxuICAgICAgdmFyIHhzcmZWYWx1ZSA9IChjb25maWcud2l0aENyZWRlbnRpYWxzIHx8IGlzVVJMU2FtZU9yaWdpbihjb25maWcudXJsKSkgJiYgY29uZmlnLnhzcmZDb29raWVOYW1lID9cbiAgICAgICAgICBjb29raWVzLnJlYWQoY29uZmlnLnhzcmZDb29raWVOYW1lKSA6XG4gICAgICAgICAgdW5kZWZpbmVkO1xuXG4gICAgICBpZiAoeHNyZlZhbHVlKSB7XG4gICAgICAgIHJlcXVlc3RIZWFkZXJzW2NvbmZpZy54c3JmSGVhZGVyTmFtZV0gPSB4c3JmVmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWRkIGhlYWRlcnMgdG8gdGhlIHJlcXVlc3RcbiAgICBpZiAoJ3NldFJlcXVlc3RIZWFkZXInIGluIHJlcXVlc3QpIHtcbiAgICAgIHV0aWxzLmZvckVhY2gocmVxdWVzdEhlYWRlcnMsIGZ1bmN0aW9uIHNldFJlcXVlc3RIZWFkZXIodmFsLCBrZXkpIHtcbiAgICAgICAgaWYgKHR5cGVvZiByZXF1ZXN0RGF0YSA9PT0gJ3VuZGVmaW5lZCcgJiYga2V5LnRvTG93ZXJDYXNlKCkgPT09ICdjb250ZW50LXR5cGUnKSB7XG4gICAgICAgICAgLy8gUmVtb3ZlIENvbnRlbnQtVHlwZSBpZiBkYXRhIGlzIHVuZGVmaW5lZFxuICAgICAgICAgIGRlbGV0ZSByZXF1ZXN0SGVhZGVyc1trZXldO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIC8vIE90aGVyd2lzZSBhZGQgaGVhZGVyIHRvIHRoZSByZXF1ZXN0XG4gICAgICAgICAgcmVxdWVzdC5zZXRSZXF1ZXN0SGVhZGVyKGtleSwgdmFsKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgLy8gQWRkIHdpdGhDcmVkZW50aWFscyB0byByZXF1ZXN0IGlmIG5lZWRlZFxuICAgIGlmIChjb25maWcud2l0aENyZWRlbnRpYWxzKSB7XG4gICAgICByZXF1ZXN0LndpdGhDcmVkZW50aWFscyA9IHRydWU7XG4gICAgfVxuXG4gICAgLy8gQWRkIHJlc3BvbnNlVHlwZSB0byByZXF1ZXN0IGlmIG5lZWRlZFxuICAgIGlmIChjb25maWcucmVzcG9uc2VUeXBlKSB7XG4gICAgICB0cnkge1xuICAgICAgICByZXF1ZXN0LnJlc3BvbnNlVHlwZSA9IGNvbmZpZy5yZXNwb25zZVR5cGU7XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIC8vIEV4cGVjdGVkIERPTUV4Y2VwdGlvbiB0aHJvd24gYnkgYnJvd3NlcnMgbm90IGNvbXBhdGlibGUgWE1MSHR0cFJlcXVlc3QgTGV2ZWwgMi5cbiAgICAgICAgLy8gQnV0LCB0aGlzIGNhbiBiZSBzdXBwcmVzc2VkIGZvciAnanNvbicgdHlwZSBhcyBpdCBjYW4gYmUgcGFyc2VkIGJ5IGRlZmF1bHQgJ3RyYW5zZm9ybVJlc3BvbnNlJyBmdW5jdGlvbi5cbiAgICAgICAgaWYgKGNvbmZpZy5yZXNwb25zZVR5cGUgIT09ICdqc29uJykge1xuICAgICAgICAgIHRocm93IGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBIYW5kbGUgcHJvZ3Jlc3MgaWYgbmVlZGVkXG4gICAgaWYgKHR5cGVvZiBjb25maWcub25Eb3dubG9hZFByb2dyZXNzID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICByZXF1ZXN0LmFkZEV2ZW50TGlzdGVuZXIoJ3Byb2dyZXNzJywgY29uZmlnLm9uRG93bmxvYWRQcm9ncmVzcyk7XG4gICAgfVxuXG4gICAgLy8gTm90IGFsbCBicm93c2VycyBzdXBwb3J0IHVwbG9hZCBldmVudHNcbiAgICBpZiAodHlwZW9mIGNvbmZpZy5vblVwbG9hZFByb2dyZXNzID09PSAnZnVuY3Rpb24nICYmIHJlcXVlc3QudXBsb2FkKSB7XG4gICAgICByZXF1ZXN0LnVwbG9hZC5hZGRFdmVudExpc3RlbmVyKCdwcm9ncmVzcycsIGNvbmZpZy5vblVwbG9hZFByb2dyZXNzKTtcbiAgICB9XG5cbiAgICBpZiAoY29uZmlnLmNhbmNlbFRva2VuKSB7XG4gICAgICAvLyBIYW5kbGUgY2FuY2VsbGF0aW9uXG4gICAgICBjb25maWcuY2FuY2VsVG9rZW4ucHJvbWlzZS50aGVuKGZ1bmN0aW9uIG9uQ2FuY2VsZWQoY2FuY2VsKSB7XG4gICAgICAgIGlmICghcmVxdWVzdCkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHJlcXVlc3QuYWJvcnQoKTtcbiAgICAgICAgcmVqZWN0KGNhbmNlbCk7XG4gICAgICAgIC8vIENsZWFuIHVwIHJlcXVlc3RcbiAgICAgICAgcmVxdWVzdCA9IG51bGw7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBpZiAocmVxdWVzdERhdGEgPT09IHVuZGVmaW5lZCkge1xuICAgICAgcmVxdWVzdERhdGEgPSBudWxsO1xuICAgIH1cblxuICAgIC8vIFNlbmQgdGhlIHJlcXVlc3RcbiAgICByZXF1ZXN0LnNlbmQocmVxdWVzdERhdGEpO1xuICB9KTtcbn07XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvYWRhcHRlcnMveGhyLmpzXG4vLyBtb2R1bGUgaWQgPSAxOVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///19\n"); /***/ }), /* 20 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -eval("\n\nvar enhanceError = __webpack_require__(55);\n\n/**\n * Create an Error with the specified message, config, error code, request and response.\n *\n * @param {string} message The error message.\n * @param {Object} config The config.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n * @returns {Error} The created error.\n */\nmodule.exports = function createError(message, config, code, request, response) {\n var error = new Error(message);\n return enhanceError(error, config, code, request, response);\n};\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvY3JlYXRlRXJyb3IuanM/MTZkMCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLE9BQU87QUFDbEIsV0FBVyxPQUFPO0FBQ2xCLFdBQVcsT0FBTztBQUNsQixXQUFXLE9BQU87QUFDbEIsV0FBVyxPQUFPO0FBQ2xCLGFBQWEsTUFBTTtBQUNuQjtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwiZmlsZSI6IjIwLmpzIiwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBzdHJpY3QnO1xuXG52YXIgZW5oYW5jZUVycm9yID0gcmVxdWlyZSgnLi9lbmhhbmNlRXJyb3InKTtcblxuLyoqXG4gKiBDcmVhdGUgYW4gRXJyb3Igd2l0aCB0aGUgc3BlY2lmaWVkIG1lc3NhZ2UsIGNvbmZpZywgZXJyb3IgY29kZSwgcmVxdWVzdCBhbmQgcmVzcG9uc2UuXG4gKlxuICogQHBhcmFtIHtzdHJpbmd9IG1lc3NhZ2UgVGhlIGVycm9yIG1lc3NhZ2UuXG4gKiBAcGFyYW0ge09iamVjdH0gY29uZmlnIFRoZSBjb25maWcuXG4gKiBAcGFyYW0ge3N0cmluZ30gW2NvZGVdIFRoZSBlcnJvciBjb2RlIChmb3IgZXhhbXBsZSwgJ0VDT05OQUJPUlRFRCcpLlxuICogQHBhcmFtIHtPYmplY3R9IFtyZXF1ZXN0XSBUaGUgcmVxdWVzdC5cbiAqIEBwYXJhbSB7T2JqZWN0fSBbcmVzcG9uc2VdIFRoZSByZXNwb25zZS5cbiAqIEByZXR1cm5zIHtFcnJvcn0gVGhlIGNyZWF0ZWQgZXJyb3IuXG4gKi9cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gY3JlYXRlRXJyb3IobWVzc2FnZSwgY29uZmlnLCBjb2RlLCByZXF1ZXN0LCByZXNwb25zZSkge1xuICB2YXIgZXJyb3IgPSBuZXcgRXJyb3IobWVzc2FnZSk7XG4gIHJldHVybiBlbmhhbmNlRXJyb3IoZXJyb3IsIGNvbmZpZywgY29kZSwgcmVxdWVzdCwgcmVzcG9uc2UpO1xufTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9jb3JlL2NyZWF0ZUVycm9yLmpzXG4vLyBtb2R1bGUgaWQgPSAyMFxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///20\n"); +eval("\n\nvar enhanceError = __webpack_require__(51);\n\n/**\n * Create an Error with the specified message, config, error code, request and response.\n *\n * @param {string} message The error message.\n * @param {Object} config The config.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n * @returns {Error} The created error.\n */\nmodule.exports = function createError(message, config, code, request, response) {\n var error = new Error(message);\n return enhanceError(error, config, code, request, response);\n};\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvY3JlYXRlRXJyb3IuanM/MTZkMCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLE9BQU87QUFDbEIsV0FBVyxPQUFPO0FBQ2xCLFdBQVcsT0FBTztBQUNsQixXQUFXLE9BQU87QUFDbEIsV0FBVyxPQUFPO0FBQ2xCLGFBQWEsTUFBTTtBQUNuQjtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwiZmlsZSI6IjIwLmpzIiwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBzdHJpY3QnO1xuXG52YXIgZW5oYW5jZUVycm9yID0gcmVxdWlyZSgnLi9lbmhhbmNlRXJyb3InKTtcblxuLyoqXG4gKiBDcmVhdGUgYW4gRXJyb3Igd2l0aCB0aGUgc3BlY2lmaWVkIG1lc3NhZ2UsIGNvbmZpZywgZXJyb3IgY29kZSwgcmVxdWVzdCBhbmQgcmVzcG9uc2UuXG4gKlxuICogQHBhcmFtIHtzdHJpbmd9IG1lc3NhZ2UgVGhlIGVycm9yIG1lc3NhZ2UuXG4gKiBAcGFyYW0ge09iamVjdH0gY29uZmlnIFRoZSBjb25maWcuXG4gKiBAcGFyYW0ge3N0cmluZ30gW2NvZGVdIFRoZSBlcnJvciBjb2RlIChmb3IgZXhhbXBsZSwgJ0VDT05OQUJPUlRFRCcpLlxuICogQHBhcmFtIHtPYmplY3R9IFtyZXF1ZXN0XSBUaGUgcmVxdWVzdC5cbiAqIEBwYXJhbSB7T2JqZWN0fSBbcmVzcG9uc2VdIFRoZSByZXNwb25zZS5cbiAqIEByZXR1cm5zIHtFcnJvcn0gVGhlIGNyZWF0ZWQgZXJyb3IuXG4gKi9cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gY3JlYXRlRXJyb3IobWVzc2FnZSwgY29uZmlnLCBjb2RlLCByZXF1ZXN0LCByZXNwb25zZSkge1xuICB2YXIgZXJyb3IgPSBuZXcgRXJyb3IobWVzc2FnZSk7XG4gIHJldHVybiBlbmhhbmNlRXJyb3IoZXJyb3IsIGNvbmZpZywgY29kZSwgcmVxdWVzdCwgcmVzcG9uc2UpO1xufTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9jb3JlL2NyZWF0ZUVycm9yLmpzXG4vLyBtb2R1bGUgaWQgPSAyMFxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///20\n"); /***/ }), /* 21 */ @@ -224,7 +224,7 @@ eval("\n\n/**\n * A `Cancel` is an object that is thrown when an operation is ca /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("Object.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"app\", function() { return app; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_vue__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vuex_router_sync__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vuex_router_sync___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_vuex_router_sync__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__App_vue__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__router__ = __webpack_require__(29);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__store__ = __webpack_require__(46);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"router\", function() { return __WEBPACK_IMPORTED_MODULE_3__router__[\"a\"]; });\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"store\", function() { return __WEBPACK_IMPORTED_MODULE_4__store__[\"a\"]; });\n\n\n\n\n\n\nObject(__WEBPACK_IMPORTED_MODULE_1_vuex_router_sync__[\"sync\"])(__WEBPACK_IMPORTED_MODULE_4__store__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__router__[\"a\" /* default */]);\n\n// bind to window\n__WEBPACK_IMPORTED_MODULE_0_vue__[\"a\" /* default */].prototype.t = t;\n__WEBPACK_IMPORTED_MODULE_0_vue__[\"a\" /* default */].prototype.OC = OC;\n__WEBPACK_IMPORTED_MODULE_0_vue__[\"a\" /* default */].prototype.oc_userconfig = oc_userconfig;\n\nvar app = new __WEBPACK_IMPORTED_MODULE_0_vue__[\"a\" /* default */]({\n\trouter: __WEBPACK_IMPORTED_MODULE_3__router__[\"a\" /* default */],\n\tstore: __WEBPACK_IMPORTED_MODULE_4__store__[\"a\" /* default */],\n\trender: function render(h) {\n\t\treturn h(__WEBPACK_IMPORTED_MODULE_2__App_vue__[\"a\" /* default */]);\n\t}\n}).$mount('#content');\n\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvbWFpbi5qcz8zNDc5Il0sIm5hbWVzIjpbInN5bmMiLCJWdWUiLCJwcm90b3R5cGUiLCJ0IiwiT0MiLCJvY191c2VyY29uZmlnIiwiYXBwIiwicm91dGVyIiwic3RvcmUiLCJyZW5kZXIiLCJoIiwiJG1vdW50Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQSw4REFBQUEsQ0FBSyx1REFBTCxFQUFZLHdEQUFaOztBQUVBO0FBQ0Esb0RBQUFDLENBQUlDLFNBQUosQ0FBY0MsQ0FBZCxHQUFrQkEsQ0FBbEI7QUFDQSxvREFBQUYsQ0FBSUMsU0FBSixDQUFjRSxFQUFkLEdBQW1CQSxFQUFuQjtBQUNBLG9EQUFBSCxDQUFJQyxTQUFKLENBQWNHLGFBQWQsR0FBOEJBLGFBQTlCOztBQUVBLElBQU1DLE1BQU0sSUFBSSxvREFBSixDQUFRO0FBQ25CQyxTQUFBLHdEQURtQjtBQUVuQkMsUUFBQSx1REFGbUI7QUFHbkJDLFNBQVE7QUFBQSxTQUFLQyxFQUFFLHlEQUFGLENBQUw7QUFBQTtBQUhXLENBQVIsRUFJVEMsTUFKUyxDQUlGLFVBSkUsQ0FBWiIsImZpbGUiOiIyMy5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBWdWUgZnJvbSAndnVlJztcbmltcG9ydCB7IHN5bmMgfSBmcm9tICd2dWV4LXJvdXRlci1zeW5jJztcbmltcG9ydCBBcHAgZnJvbSAnLi9BcHAudnVlJztcbmltcG9ydCByb3V0ZXIgZnJvbSAnLi9yb3V0ZXInO1xuaW1wb3J0IHN0b3JlIGZyb20gJy4vc3RvcmUnO1xuXG5zeW5jKHN0b3JlLCByb3V0ZXIpO1xuXG4vLyBiaW5kIHRvIHdpbmRvd1xuVnVlLnByb3RvdHlwZS50ID0gdDtcblZ1ZS5wcm90b3R5cGUuT0MgPSBPQztcblZ1ZS5wcm90b3R5cGUub2NfdXNlcmNvbmZpZyA9IG9jX3VzZXJjb25maWc7XG5cbmNvbnN0IGFwcCA9IG5ldyBWdWUoe1xuXHRyb3V0ZXIsXG5cdHN0b3JlLFxuXHRyZW5kZXI6IGggPT4gaChBcHApXG59KS4kbW91bnQoJyNjb250ZW50Jyk7XG5cbmV4cG9ydCB7IGFwcCwgcm91dGVyLCBzdG9yZSB9O1xuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyAuL3NyYy9tYWluLmpzIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///23\n"); +eval("Object.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"app\", function() { return app; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_vue__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vuex_router_sync__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vuex_router_sync___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_vuex_router_sync__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__App_vue__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__router__ = __webpack_require__(29);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__store__ = __webpack_require__(65);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"router\", function() { return __WEBPACK_IMPORTED_MODULE_3__router__[\"a\"]; });\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"store\", function() { return __WEBPACK_IMPORTED_MODULE_4__store__[\"a\"]; });\n\n\n\n\n\n\nObject(__WEBPACK_IMPORTED_MODULE_1_vuex_router_sync__[\"sync\"])(__WEBPACK_IMPORTED_MODULE_4__store__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__router__[\"a\" /* default */]);\n\n// bind to window\n__WEBPACK_IMPORTED_MODULE_0_vue__[\"a\" /* default */].prototype.t = t;\n__WEBPACK_IMPORTED_MODULE_0_vue__[\"a\" /* default */].prototype.OC = OC;\n__WEBPACK_IMPORTED_MODULE_0_vue__[\"a\" /* default */].prototype.oc_userconfig = oc_userconfig;\n\nvar app = new __WEBPACK_IMPORTED_MODULE_0_vue__[\"a\" /* default */]({\n\trouter: __WEBPACK_IMPORTED_MODULE_3__router__[\"a\" /* default */],\n\tstore: __WEBPACK_IMPORTED_MODULE_4__store__[\"a\" /* default */],\n\trender: function render(h) {\n\t\treturn h(__WEBPACK_IMPORTED_MODULE_2__App_vue__[\"a\" /* default */]);\n\t}\n}).$mount('#content');\n\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvbWFpbi5qcz8zNDc5Il0sIm5hbWVzIjpbInN5bmMiLCJWdWUiLCJwcm90b3R5cGUiLCJ0IiwiT0MiLCJvY191c2VyY29uZmlnIiwiYXBwIiwicm91dGVyIiwic3RvcmUiLCJyZW5kZXIiLCJoIiwiJG1vdW50Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQSw4REFBQUEsQ0FBSyx1REFBTCxFQUFZLHdEQUFaOztBQUVBO0FBQ0Esb0RBQUFDLENBQUlDLFNBQUosQ0FBY0MsQ0FBZCxHQUFrQkEsQ0FBbEI7QUFDQSxvREFBQUYsQ0FBSUMsU0FBSixDQUFjRSxFQUFkLEdBQW1CQSxFQUFuQjtBQUNBLG9EQUFBSCxDQUFJQyxTQUFKLENBQWNHLGFBQWQsR0FBOEJBLGFBQTlCOztBQUVBLElBQU1DLE1BQU0sSUFBSSxvREFBSixDQUFRO0FBQ25CQyxTQUFBLHdEQURtQjtBQUVuQkMsUUFBQSx1REFGbUI7QUFHbkJDLFNBQVE7QUFBQSxTQUFLQyxFQUFFLHlEQUFGLENBQUw7QUFBQTtBQUhXLENBQVIsRUFJVEMsTUFKUyxDQUlGLFVBSkUsQ0FBWiIsImZpbGUiOiIyMy5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBWdWUgZnJvbSAndnVlJztcbmltcG9ydCB7IHN5bmMgfSBmcm9tICd2dWV4LXJvdXRlci1zeW5jJztcbmltcG9ydCBBcHAgZnJvbSAnLi9BcHAudnVlJztcbmltcG9ydCByb3V0ZXIgZnJvbSAnLi9yb3V0ZXInO1xuaW1wb3J0IHN0b3JlIGZyb20gJy4vc3RvcmUnO1xuXG5zeW5jKHN0b3JlLCByb3V0ZXIpO1xuXG4vLyBiaW5kIHRvIHdpbmRvd1xuVnVlLnByb3RvdHlwZS50ID0gdDtcblZ1ZS5wcm90b3R5cGUuT0MgPSBPQztcblZ1ZS5wcm90b3R5cGUub2NfdXNlcmNvbmZpZyA9IG9jX3VzZXJjb25maWc7XG5cbmNvbnN0IGFwcCA9IG5ldyBWdWUoe1xuXHRyb3V0ZXIsXG5cdHN0b3JlLFxuXHRyZW5kZXI6IGggPT4gaChBcHApXG59KS4kbW91bnQoJyNjb250ZW50Jyk7XG5cbmV4cG9ydCB7IGFwcCwgcm91dGVyLCBzdG9yZSB9O1xuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyAuL3NyYy9tYWluLmpzIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///23\n"); /***/ }), /* 24 */ @@ -249,7 +249,7 @@ eval("exports.sync = function (store, router, options) {\n var moduleName = (op /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_App_vue__ = __webpack_require__(7);\n/* unused harmony namespace reexport */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_7ba5bd90_hasScoped_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_App_vue__ = __webpack_require__(28);\nvar disposed = false\nvar normalizeComponent = __webpack_require__(2)\n/* script */\n\n\n/* template */\n\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_App_vue__[\"a\" /* default */],\n __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_7ba5bd90_hasScoped_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_App_vue__[\"a\" /* default */],\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\nComponent.options.__file = \"src/App.vue\"\n\n/* hot reload */\nif (false) {(function () {\n var hotAPI = require(\"vue-hot-reload-api\")\n hotAPI.install(require(\"vue\"), false)\n if (!hotAPI.compatible) return\n module.hot.accept()\n if (!module.hot.data) {\n hotAPI.createRecord(\"data-v-7ba5bd90\", Component.options)\n } else {\n hotAPI.reload(\"data-v-7ba5bd90\", Component.options)\n }\n module.hot.dispose(function (data) {\n disposed = true\n })\n})()}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Component.exports);\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvQXBwLnZ1ZT81Y2YyIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDcUs7QUFDcks7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLFlBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSCxDQUFDOztBQUVEIiwiZmlsZSI6IjI3LmpzIiwic291cmNlc0NvbnRlbnQiOlsidmFyIGRpc3Bvc2VkID0gZmFsc2VcbnZhciBub3JtYWxpemVDb21wb25lbnQgPSByZXF1aXJlKFwiIS4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9jb21wb25lbnQtbm9ybWFsaXplclwiKVxuLyogc2NyaXB0ICovXG5leHBvcnQgKiBmcm9tIFwiISFiYWJlbC1sb2FkZXIhLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yP3R5cGU9c2NyaXB0JmluZGV4PTAhLi9BcHAudnVlXCJcbmltcG9ydCBfX3Z1ZV9zY3JpcHRfXyBmcm9tIFwiISFiYWJlbC1sb2FkZXIhLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yP3R5cGU9c2NyaXB0JmluZGV4PTAhLi9BcHAudnVlXCJcbi8qIHRlbXBsYXRlICovXG5pbXBvcnQgX192dWVfdGVtcGxhdGVfXyBmcm9tIFwiISEuLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXg/e1xcXCJpZFxcXCI6XFxcImRhdGEtdi03YmE1YmQ5MFxcXCIsXFxcImhhc1Njb3BlZFxcXCI6ZmFsc2UsXFxcImJ1YmxlXFxcIjp7XFxcInRyYW5zZm9ybXNcXFwiOnt9fX0hLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yP3R5cGU9dGVtcGxhdGUmaW5kZXg9MCEuL0FwcC52dWVcIlxuLyogdGVtcGxhdGUgZnVuY3Rpb25hbCAqL1xudmFyIF9fdnVlX3RlbXBsYXRlX2Z1bmN0aW9uYWxfXyA9IGZhbHNlXG4vKiBzdHlsZXMgKi9cbnZhciBfX3Z1ZV9zdHlsZXNfXyA9IG51bGxcbi8qIHNjb3BlSWQgKi9cbnZhciBfX3Z1ZV9zY29wZUlkX18gPSBudWxsXG4vKiBtb2R1bGVJZGVudGlmaWVyIChzZXJ2ZXIgb25seSkgKi9cbnZhciBfX3Z1ZV9tb2R1bGVfaWRlbnRpZmllcl9fID0gbnVsbFxudmFyIENvbXBvbmVudCA9IG5vcm1hbGl6ZUNvbXBvbmVudChcbiAgX192dWVfc2NyaXB0X18sXG4gIF9fdnVlX3RlbXBsYXRlX18sXG4gIF9fdnVlX3RlbXBsYXRlX2Z1bmN0aW9uYWxfXyxcbiAgX192dWVfc3R5bGVzX18sXG4gIF9fdnVlX3Njb3BlSWRfXyxcbiAgX192dWVfbW9kdWxlX2lkZW50aWZpZXJfX1xuKVxuQ29tcG9uZW50Lm9wdGlvbnMuX19maWxlID0gXCJzcmMvQXBwLnZ1ZVwiXG5cbi8qIGhvdCByZWxvYWQgKi9cbmlmIChtb2R1bGUuaG90KSB7KGZ1bmN0aW9uICgpIHtcbiAgdmFyIGhvdEFQSSA9IHJlcXVpcmUoXCJ2dWUtaG90LXJlbG9hZC1hcGlcIilcbiAgaG90QVBJLmluc3RhbGwocmVxdWlyZShcInZ1ZVwiKSwgZmFsc2UpXG4gIGlmICghaG90QVBJLmNvbXBhdGlibGUpIHJldHVyblxuICBtb2R1bGUuaG90LmFjY2VwdCgpXG4gIGlmICghbW9kdWxlLmhvdC5kYXRhKSB7XG4gICAgaG90QVBJLmNyZWF0ZVJlY29yZChcImRhdGEtdi03YmE1YmQ5MFwiLCBDb21wb25lbnQub3B0aW9ucylcbiAgfSBlbHNlIHtcbiAgICBob3RBUEkucmVsb2FkKFwiZGF0YS12LTdiYTViZDkwXCIsIENvbXBvbmVudC5vcHRpb25zKVxuICB9XG4gIG1vZHVsZS5ob3QuZGlzcG9zZShmdW5jdGlvbiAoZGF0YSkge1xuICAgIGRpc3Bvc2VkID0gdHJ1ZVxuICB9KVxufSkoKX1cblxuZXhwb3J0IGRlZmF1bHQgQ29tcG9uZW50LmV4cG9ydHNcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vc3JjL0FwcC52dWVcbi8vIG1vZHVsZSBpZCA9IDI3XG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///27\n"); +eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_App_vue__ = __webpack_require__(8);\n/* unused harmony namespace reexport */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_7ba5bd90_hasScoped_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_App_vue__ = __webpack_require__(28);\nvar disposed = false\nvar normalizeComponent = __webpack_require__(2)\n/* script */\n\n\n/* template */\n\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_App_vue__[\"a\" /* default */],\n __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_7ba5bd90_hasScoped_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_App_vue__[\"a\" /* default */],\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\nComponent.options.__file = \"src/App.vue\"\n\n/* hot reload */\nif (false) {(function () {\n var hotAPI = require(\"vue-hot-reload-api\")\n hotAPI.install(require(\"vue\"), false)\n if (!hotAPI.compatible) return\n module.hot.accept()\n if (!module.hot.data) {\n hotAPI.createRecord(\"data-v-7ba5bd90\", Component.options)\n } else {\n hotAPI.reload(\"data-v-7ba5bd90\", Component.options)\n }\n module.hot.dispose(function (data) {\n disposed = true\n })\n})()}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Component.exports);\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvQXBwLnZ1ZT81Y2YyIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDcUs7QUFDcks7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLFlBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSCxDQUFDOztBQUVEIiwiZmlsZSI6IjI3LmpzIiwic291cmNlc0NvbnRlbnQiOlsidmFyIGRpc3Bvc2VkID0gZmFsc2VcbnZhciBub3JtYWxpemVDb21wb25lbnQgPSByZXF1aXJlKFwiIS4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9jb21wb25lbnQtbm9ybWFsaXplclwiKVxuLyogc2NyaXB0ICovXG5leHBvcnQgKiBmcm9tIFwiISFiYWJlbC1sb2FkZXIhLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yP3R5cGU9c2NyaXB0JmluZGV4PTAhLi9BcHAudnVlXCJcbmltcG9ydCBfX3Z1ZV9zY3JpcHRfXyBmcm9tIFwiISFiYWJlbC1sb2FkZXIhLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yP3R5cGU9c2NyaXB0JmluZGV4PTAhLi9BcHAudnVlXCJcbi8qIHRlbXBsYXRlICovXG5pbXBvcnQgX192dWVfdGVtcGxhdGVfXyBmcm9tIFwiISEuLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXg/e1xcXCJpZFxcXCI6XFxcImRhdGEtdi03YmE1YmQ5MFxcXCIsXFxcImhhc1Njb3BlZFxcXCI6ZmFsc2UsXFxcImJ1YmxlXFxcIjp7XFxcInRyYW5zZm9ybXNcXFwiOnt9fX0hLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yP3R5cGU9dGVtcGxhdGUmaW5kZXg9MCEuL0FwcC52dWVcIlxuLyogdGVtcGxhdGUgZnVuY3Rpb25hbCAqL1xudmFyIF9fdnVlX3RlbXBsYXRlX2Z1bmN0aW9uYWxfXyA9IGZhbHNlXG4vKiBzdHlsZXMgKi9cbnZhciBfX3Z1ZV9zdHlsZXNfXyA9IG51bGxcbi8qIHNjb3BlSWQgKi9cbnZhciBfX3Z1ZV9zY29wZUlkX18gPSBudWxsXG4vKiBtb2R1bGVJZGVudGlmaWVyIChzZXJ2ZXIgb25seSkgKi9cbnZhciBfX3Z1ZV9tb2R1bGVfaWRlbnRpZmllcl9fID0gbnVsbFxudmFyIENvbXBvbmVudCA9IG5vcm1hbGl6ZUNvbXBvbmVudChcbiAgX192dWVfc2NyaXB0X18sXG4gIF9fdnVlX3RlbXBsYXRlX18sXG4gIF9fdnVlX3RlbXBsYXRlX2Z1bmN0aW9uYWxfXyxcbiAgX192dWVfc3R5bGVzX18sXG4gIF9fdnVlX3Njb3BlSWRfXyxcbiAgX192dWVfbW9kdWxlX2lkZW50aWZpZXJfX1xuKVxuQ29tcG9uZW50Lm9wdGlvbnMuX19maWxlID0gXCJzcmMvQXBwLnZ1ZVwiXG5cbi8qIGhvdCByZWxvYWQgKi9cbmlmIChtb2R1bGUuaG90KSB7KGZ1bmN0aW9uICgpIHtcbiAgdmFyIGhvdEFQSSA9IHJlcXVpcmUoXCJ2dWUtaG90LXJlbG9hZC1hcGlcIilcbiAgaG90QVBJLmluc3RhbGwocmVxdWlyZShcInZ1ZVwiKSwgZmFsc2UpXG4gIGlmICghaG90QVBJLmNvbXBhdGlibGUpIHJldHVyblxuICBtb2R1bGUuaG90LmFjY2VwdCgpXG4gIGlmICghbW9kdWxlLmhvdC5kYXRhKSB7XG4gICAgaG90QVBJLmNyZWF0ZVJlY29yZChcImRhdGEtdi03YmE1YmQ5MFwiLCBDb21wb25lbnQub3B0aW9ucylcbiAgfSBlbHNlIHtcbiAgICBob3RBUEkucmVsb2FkKFwiZGF0YS12LTdiYTViZDkwXCIsIENvbXBvbmVudC5vcHRpb25zKVxuICB9XG4gIG1vZHVsZS5ob3QuZGlzcG9zZShmdW5jdGlvbiAoZGF0YSkge1xuICAgIGRpc3Bvc2VkID0gdHJ1ZVxuICB9KVxufSkoKX1cblxuZXhwb3J0IGRlZmF1bHQgQ29tcG9uZW50LmV4cG9ydHNcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vc3JjL0FwcC52dWVcbi8vIG1vZHVsZSBpZCA9IDI3XG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///27\n"); /***/ }), /* 28 */ @@ -277,28 +277,28 @@ eval("/* WEBPACK VAR INJECTION */(function(process) {/**\n * vue-router v3.0.1\ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_Users_vue__ = __webpack_require__(8);\n/* unused harmony namespace reexport */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_68be103e_hasScoped_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_Users_vue__ = __webpack_require__(45);\nvar disposed = false\nvar normalizeComponent = __webpack_require__(2)\n/* script */\n\n\n/* template */\n\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_Users_vue__[\"a\" /* default */],\n __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_68be103e_hasScoped_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_Users_vue__[\"a\" /* default */],\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\nComponent.options.__file = \"src/views/Users.vue\"\n\n/* hot reload */\nif (false) {(function () {\n var hotAPI = require(\"vue-hot-reload-api\")\n hotAPI.install(require(\"vue\"), false)\n if (!hotAPI.compatible) return\n module.hot.accept()\n if (!module.hot.data) {\n hotAPI.createRecord(\"data-v-68be103e\", Component.options)\n } else {\n hotAPI.reload(\"data-v-68be103e\", Component.options)\n }\n module.hot.dispose(function (data) {\n disposed = true\n })\n})()}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Component.exports);\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvdmlld3MvVXNlcnMudnVlP2MyZDgiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQTtBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUN3SztBQUN4SztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsWUFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNILENBQUM7O0FBRUQiLCJmaWxlIjoiMzEuanMiLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgZGlzcG9zZWQgPSBmYWxzZVxudmFyIG5vcm1hbGl6ZUNvbXBvbmVudCA9IHJlcXVpcmUoXCIhLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2NvbXBvbmVudC1ub3JtYWxpemVyXCIpXG4vKiBzY3JpcHQgKi9cbmV4cG9ydCAqIGZyb20gXCIhIWJhYmVsLWxvYWRlciEuLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3I/dHlwZT1zY3JpcHQmaW5kZXg9MCEuL1VzZXJzLnZ1ZVwiXG5pbXBvcnQgX192dWVfc2NyaXB0X18gZnJvbSBcIiEhYmFiZWwtbG9hZGVyIS4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvcj90eXBlPXNjcmlwdCZpbmRleD0wIS4vVXNlcnMudnVlXCJcbi8qIHRlbXBsYXRlICovXG5pbXBvcnQgX192dWVfdGVtcGxhdGVfXyBmcm9tIFwiISEuLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXg/e1xcXCJpZFxcXCI6XFxcImRhdGEtdi02OGJlMTAzZVxcXCIsXFxcImhhc1Njb3BlZFxcXCI6ZmFsc2UsXFxcImJ1YmxlXFxcIjp7XFxcInRyYW5zZm9ybXNcXFwiOnt9fX0hLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yP3R5cGU9dGVtcGxhdGUmaW5kZXg9MCEuL1VzZXJzLnZ1ZVwiXG4vKiB0ZW1wbGF0ZSBmdW5jdGlvbmFsICovXG52YXIgX192dWVfdGVtcGxhdGVfZnVuY3Rpb25hbF9fID0gZmFsc2Vcbi8qIHN0eWxlcyAqL1xudmFyIF9fdnVlX3N0eWxlc19fID0gbnVsbFxuLyogc2NvcGVJZCAqL1xudmFyIF9fdnVlX3Njb3BlSWRfXyA9IG51bGxcbi8qIG1vZHVsZUlkZW50aWZpZXIgKHNlcnZlciBvbmx5KSAqL1xudmFyIF9fdnVlX21vZHVsZV9pZGVudGlmaWVyX18gPSBudWxsXG52YXIgQ29tcG9uZW50ID0gbm9ybWFsaXplQ29tcG9uZW50KFxuICBfX3Z1ZV9zY3JpcHRfXyxcbiAgX192dWVfdGVtcGxhdGVfXyxcbiAgX192dWVfdGVtcGxhdGVfZnVuY3Rpb25hbF9fLFxuICBfX3Z1ZV9zdHlsZXNfXyxcbiAgX192dWVfc2NvcGVJZF9fLFxuICBfX3Z1ZV9tb2R1bGVfaWRlbnRpZmllcl9fXG4pXG5Db21wb25lbnQub3B0aW9ucy5fX2ZpbGUgPSBcInNyYy92aWV3cy9Vc2Vycy52dWVcIlxuXG4vKiBob3QgcmVsb2FkICovXG5pZiAobW9kdWxlLmhvdCkgeyhmdW5jdGlvbiAoKSB7XG4gIHZhciBob3RBUEkgPSByZXF1aXJlKFwidnVlLWhvdC1yZWxvYWQtYXBpXCIpXG4gIGhvdEFQSS5pbnN0YWxsKHJlcXVpcmUoXCJ2dWVcIiksIGZhbHNlKVxuICBpZiAoIWhvdEFQSS5jb21wYXRpYmxlKSByZXR1cm5cbiAgbW9kdWxlLmhvdC5hY2NlcHQoKVxuICBpZiAoIW1vZHVsZS5ob3QuZGF0YSkge1xuICAgIGhvdEFQSS5jcmVhdGVSZWNvcmQoXCJkYXRhLXYtNjhiZTEwM2VcIiwgQ29tcG9uZW50Lm9wdGlvbnMpXG4gIH0gZWxzZSB7XG4gICAgaG90QVBJLnJlbG9hZChcImRhdGEtdi02OGJlMTAzZVwiLCBDb21wb25lbnQub3B0aW9ucylcbiAgfVxuICBtb2R1bGUuaG90LmRpc3Bvc2UoZnVuY3Rpb24gKGRhdGEpIHtcbiAgICBkaXNwb3NlZCA9IHRydWVcbiAgfSlcbn0pKCl9XG5cbmV4cG9ydCBkZWZhdWx0IENvbXBvbmVudC5leHBvcnRzXG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL3NyYy92aWV3cy9Vc2Vycy52dWVcbi8vIG1vZHVsZSBpZCA9IDMxXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///31\n"); +eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_Users_vue__ = __webpack_require__(9);\n/* unused harmony namespace reexport */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_68be103e_hasScoped_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_Users_vue__ = __webpack_require__(64);\nvar disposed = false\nvar normalizeComponent = __webpack_require__(2)\n/* script */\n\n\n/* template */\n\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_Users_vue__[\"a\" /* default */],\n __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_68be103e_hasScoped_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_Users_vue__[\"a\" /* default */],\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\nComponent.options.__file = \"src/views/Users.vue\"\n\n/* hot reload */\nif (false) {(function () {\n var hotAPI = require(\"vue-hot-reload-api\")\n hotAPI.install(require(\"vue\"), false)\n if (!hotAPI.compatible) return\n module.hot.accept()\n if (!module.hot.data) {\n hotAPI.createRecord(\"data-v-68be103e\", Component.options)\n } else {\n hotAPI.reload(\"data-v-68be103e\", Component.options)\n }\n module.hot.dispose(function (data) {\n disposed = true\n })\n})()}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Component.exports);\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvdmlld3MvVXNlcnMudnVlP2MyZDgiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQTtBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUN3SztBQUN4SztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsWUFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNILENBQUM7O0FBRUQiLCJmaWxlIjoiMzEuanMiLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgZGlzcG9zZWQgPSBmYWxzZVxudmFyIG5vcm1hbGl6ZUNvbXBvbmVudCA9IHJlcXVpcmUoXCIhLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2NvbXBvbmVudC1ub3JtYWxpemVyXCIpXG4vKiBzY3JpcHQgKi9cbmV4cG9ydCAqIGZyb20gXCIhIWJhYmVsLWxvYWRlciEuLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3I/dHlwZT1zY3JpcHQmaW5kZXg9MCEuL1VzZXJzLnZ1ZVwiXG5pbXBvcnQgX192dWVfc2NyaXB0X18gZnJvbSBcIiEhYmFiZWwtbG9hZGVyIS4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvcj90eXBlPXNjcmlwdCZpbmRleD0wIS4vVXNlcnMudnVlXCJcbi8qIHRlbXBsYXRlICovXG5pbXBvcnQgX192dWVfdGVtcGxhdGVfXyBmcm9tIFwiISEuLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXg/e1xcXCJpZFxcXCI6XFxcImRhdGEtdi02OGJlMTAzZVxcXCIsXFxcImhhc1Njb3BlZFxcXCI6ZmFsc2UsXFxcImJ1YmxlXFxcIjp7XFxcInRyYW5zZm9ybXNcXFwiOnt9fX0hLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yP3R5cGU9dGVtcGxhdGUmaW5kZXg9MCEuL1VzZXJzLnZ1ZVwiXG4vKiB0ZW1wbGF0ZSBmdW5jdGlvbmFsICovXG52YXIgX192dWVfdGVtcGxhdGVfZnVuY3Rpb25hbF9fID0gZmFsc2Vcbi8qIHN0eWxlcyAqL1xudmFyIF9fdnVlX3N0eWxlc19fID0gbnVsbFxuLyogc2NvcGVJZCAqL1xudmFyIF9fdnVlX3Njb3BlSWRfXyA9IG51bGxcbi8qIG1vZHVsZUlkZW50aWZpZXIgKHNlcnZlciBvbmx5KSAqL1xudmFyIF9fdnVlX21vZHVsZV9pZGVudGlmaWVyX18gPSBudWxsXG52YXIgQ29tcG9uZW50ID0gbm9ybWFsaXplQ29tcG9uZW50KFxuICBfX3Z1ZV9zY3JpcHRfXyxcbiAgX192dWVfdGVtcGxhdGVfXyxcbiAgX192dWVfdGVtcGxhdGVfZnVuY3Rpb25hbF9fLFxuICBfX3Z1ZV9zdHlsZXNfXyxcbiAgX192dWVfc2NvcGVJZF9fLFxuICBfX3Z1ZV9tb2R1bGVfaWRlbnRpZmllcl9fXG4pXG5Db21wb25lbnQub3B0aW9ucy5fX2ZpbGUgPSBcInNyYy92aWV3cy9Vc2Vycy52dWVcIlxuXG4vKiBob3QgcmVsb2FkICovXG5pZiAobW9kdWxlLmhvdCkgeyhmdW5jdGlvbiAoKSB7XG4gIHZhciBob3RBUEkgPSByZXF1aXJlKFwidnVlLWhvdC1yZWxvYWQtYXBpXCIpXG4gIGhvdEFQSS5pbnN0YWxsKHJlcXVpcmUoXCJ2dWVcIiksIGZhbHNlKVxuICBpZiAoIWhvdEFQSS5jb21wYXRpYmxlKSByZXR1cm5cbiAgbW9kdWxlLmhvdC5hY2NlcHQoKVxuICBpZiAoIW1vZHVsZS5ob3QuZGF0YSkge1xuICAgIGhvdEFQSS5jcmVhdGVSZWNvcmQoXCJkYXRhLXYtNjhiZTEwM2VcIiwgQ29tcG9uZW50Lm9wdGlvbnMpXG4gIH0gZWxzZSB7XG4gICAgaG90QVBJLnJlbG9hZChcImRhdGEtdi02OGJlMTAzZVwiLCBDb21wb25lbnQub3B0aW9ucylcbiAgfVxuICBtb2R1bGUuaG90LmRpc3Bvc2UoZnVuY3Rpb24gKGRhdGEpIHtcbiAgICBkaXNwb3NlZCA9IHRydWVcbiAgfSlcbn0pKCl9XG5cbmV4cG9ydCBkZWZhdWx0IENvbXBvbmVudC5leHBvcnRzXG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL3NyYy92aWV3cy9Vc2Vycy52dWVcbi8vIG1vZHVsZSBpZCA9IDMxXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///31\n"); /***/ }), /* 32 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_appNavigation_vue__ = __webpack_require__(9);\n/* unused harmony namespace reexport */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_142c1cb5_hasScoped_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_appNavigation_vue__ = __webpack_require__(38);\nvar disposed = false\nvar normalizeComponent = __webpack_require__(2)\n/* script */\n\n\n/* template */\n\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_appNavigation_vue__[\"a\" /* default */],\n __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_142c1cb5_hasScoped_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_appNavigation_vue__[\"a\" /* default */],\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\nComponent.options.__file = \"src/components/appNavigation.vue\"\n\n/* hot reload */\nif (false) {(function () {\n var hotAPI = require(\"vue-hot-reload-api\")\n hotAPI.install(require(\"vue\"), false)\n if (!hotAPI.compatible) return\n module.hot.accept()\n if (!module.hot.data) {\n hotAPI.createRecord(\"data-v-142c1cb5\", Component.options)\n } else {\n hotAPI.reload(\"data-v-142c1cb5\", Component.options)\n }\n module.hot.dispose(function (data) {\n disposed = true\n })\n})()}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Component.exports);\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9hcHBOYXZpZ2F0aW9uLnZ1ZT82Y2NlIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDd0s7QUFDeEs7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLFlBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSCxDQUFDOztBQUVEIiwiZmlsZSI6IjMyLmpzIiwic291cmNlc0NvbnRlbnQiOlsidmFyIGRpc3Bvc2VkID0gZmFsc2VcbnZhciBub3JtYWxpemVDb21wb25lbnQgPSByZXF1aXJlKFwiIS4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9jb21wb25lbnQtbm9ybWFsaXplclwiKVxuLyogc2NyaXB0ICovXG5leHBvcnQgKiBmcm9tIFwiISFiYWJlbC1sb2FkZXIhLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yP3R5cGU9c2NyaXB0JmluZGV4PTAhLi9hcHBOYXZpZ2F0aW9uLnZ1ZVwiXG5pbXBvcnQgX192dWVfc2NyaXB0X18gZnJvbSBcIiEhYmFiZWwtbG9hZGVyIS4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvcj90eXBlPXNjcmlwdCZpbmRleD0wIS4vYXBwTmF2aWdhdGlvbi52dWVcIlxuLyogdGVtcGxhdGUgKi9cbmltcG9ydCBfX3Z1ZV90ZW1wbGF0ZV9fIGZyb20gXCIhIS4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi90ZW1wbGF0ZS1jb21waWxlci9pbmRleD97XFxcImlkXFxcIjpcXFwiZGF0YS12LTE0MmMxY2I1XFxcIixcXFwiaGFzU2NvcGVkXFxcIjpmYWxzZSxcXFwiYnVibGVcXFwiOntcXFwidHJhbnNmb3Jtc1xcXCI6e319fSEuLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3I/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vYXBwTmF2aWdhdGlvbi52dWVcIlxuLyogdGVtcGxhdGUgZnVuY3Rpb25hbCAqL1xudmFyIF9fdnVlX3RlbXBsYXRlX2Z1bmN0aW9uYWxfXyA9IGZhbHNlXG4vKiBzdHlsZXMgKi9cbnZhciBfX3Z1ZV9zdHlsZXNfXyA9IG51bGxcbi8qIHNjb3BlSWQgKi9cbnZhciBfX3Z1ZV9zY29wZUlkX18gPSBudWxsXG4vKiBtb2R1bGVJZGVudGlmaWVyIChzZXJ2ZXIgb25seSkgKi9cbnZhciBfX3Z1ZV9tb2R1bGVfaWRlbnRpZmllcl9fID0gbnVsbFxudmFyIENvbXBvbmVudCA9IG5vcm1hbGl6ZUNvbXBvbmVudChcbiAgX192dWVfc2NyaXB0X18sXG4gIF9fdnVlX3RlbXBsYXRlX18sXG4gIF9fdnVlX3RlbXBsYXRlX2Z1bmN0aW9uYWxfXyxcbiAgX192dWVfc3R5bGVzX18sXG4gIF9fdnVlX3Njb3BlSWRfXyxcbiAgX192dWVfbW9kdWxlX2lkZW50aWZpZXJfX1xuKVxuQ29tcG9uZW50Lm9wdGlvbnMuX19maWxlID0gXCJzcmMvY29tcG9uZW50cy9hcHBOYXZpZ2F0aW9uLnZ1ZVwiXG5cbi8qIGhvdCByZWxvYWQgKi9cbmlmIChtb2R1bGUuaG90KSB7KGZ1bmN0aW9uICgpIHtcbiAgdmFyIGhvdEFQSSA9IHJlcXVpcmUoXCJ2dWUtaG90LXJlbG9hZC1hcGlcIilcbiAgaG90QVBJLmluc3RhbGwocmVxdWlyZShcInZ1ZVwiKSwgZmFsc2UpXG4gIGlmICghaG90QVBJLmNvbXBhdGlibGUpIHJldHVyblxuICBtb2R1bGUuaG90LmFjY2VwdCgpXG4gIGlmICghbW9kdWxlLmhvdC5kYXRhKSB7XG4gICAgaG90QVBJLmNyZWF0ZVJlY29yZChcImRhdGEtdi0xNDJjMWNiNVwiLCBDb21wb25lbnQub3B0aW9ucylcbiAgfSBlbHNlIHtcbiAgICBob3RBUEkucmVsb2FkKFwiZGF0YS12LTE0MmMxY2I1XCIsIENvbXBvbmVudC5vcHRpb25zKVxuICB9XG4gIG1vZHVsZS5ob3QuZGlzcG9zZShmdW5jdGlvbiAoZGF0YSkge1xuICAgIGRpc3Bvc2VkID0gdHJ1ZVxuICB9KVxufSkoKX1cblxuZXhwb3J0IGRlZmF1bHQgQ29tcG9uZW50LmV4cG9ydHNcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vc3JjL2NvbXBvbmVudHMvYXBwTmF2aWdhdGlvbi52dWVcbi8vIG1vZHVsZSBpZCA9IDMyXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///32\n"); +eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_appNavigation_vue__ = __webpack_require__(10);\n/* unused harmony namespace reexport */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_142c1cb5_hasScoped_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_appNavigation_vue__ = __webpack_require__(38);\nvar disposed = false\nvar normalizeComponent = __webpack_require__(2)\n/* script */\n\n\n/* template */\n\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_appNavigation_vue__[\"a\" /* default */],\n __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_142c1cb5_hasScoped_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_appNavigation_vue__[\"a\" /* default */],\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\nComponent.options.__file = \"src/components/appNavigation.vue\"\n\n/* hot reload */\nif (false) {(function () {\n var hotAPI = require(\"vue-hot-reload-api\")\n hotAPI.install(require(\"vue\"), false)\n if (!hotAPI.compatible) return\n module.hot.accept()\n if (!module.hot.data) {\n hotAPI.createRecord(\"data-v-142c1cb5\", Component.options)\n } else {\n hotAPI.reload(\"data-v-142c1cb5\", Component.options)\n }\n module.hot.dispose(function (data) {\n disposed = true\n })\n})()}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Component.exports);\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9hcHBOYXZpZ2F0aW9uLnZ1ZT82Y2NlIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDd0s7QUFDeEs7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLFlBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSCxDQUFDOztBQUVEIiwiZmlsZSI6IjMyLmpzIiwic291cmNlc0NvbnRlbnQiOlsidmFyIGRpc3Bvc2VkID0gZmFsc2VcbnZhciBub3JtYWxpemVDb21wb25lbnQgPSByZXF1aXJlKFwiIS4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9jb21wb25lbnQtbm9ybWFsaXplclwiKVxuLyogc2NyaXB0ICovXG5leHBvcnQgKiBmcm9tIFwiISFiYWJlbC1sb2FkZXIhLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yP3R5cGU9c2NyaXB0JmluZGV4PTAhLi9hcHBOYXZpZ2F0aW9uLnZ1ZVwiXG5pbXBvcnQgX192dWVfc2NyaXB0X18gZnJvbSBcIiEhYmFiZWwtbG9hZGVyIS4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvcj90eXBlPXNjcmlwdCZpbmRleD0wIS4vYXBwTmF2aWdhdGlvbi52dWVcIlxuLyogdGVtcGxhdGUgKi9cbmltcG9ydCBfX3Z1ZV90ZW1wbGF0ZV9fIGZyb20gXCIhIS4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi90ZW1wbGF0ZS1jb21waWxlci9pbmRleD97XFxcImlkXFxcIjpcXFwiZGF0YS12LTE0MmMxY2I1XFxcIixcXFwiaGFzU2NvcGVkXFxcIjpmYWxzZSxcXFwiYnVibGVcXFwiOntcXFwidHJhbnNmb3Jtc1xcXCI6e319fSEuLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3I/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vYXBwTmF2aWdhdGlvbi52dWVcIlxuLyogdGVtcGxhdGUgZnVuY3Rpb25hbCAqL1xudmFyIF9fdnVlX3RlbXBsYXRlX2Z1bmN0aW9uYWxfXyA9IGZhbHNlXG4vKiBzdHlsZXMgKi9cbnZhciBfX3Z1ZV9zdHlsZXNfXyA9IG51bGxcbi8qIHNjb3BlSWQgKi9cbnZhciBfX3Z1ZV9zY29wZUlkX18gPSBudWxsXG4vKiBtb2R1bGVJZGVudGlmaWVyIChzZXJ2ZXIgb25seSkgKi9cbnZhciBfX3Z1ZV9tb2R1bGVfaWRlbnRpZmllcl9fID0gbnVsbFxudmFyIENvbXBvbmVudCA9IG5vcm1hbGl6ZUNvbXBvbmVudChcbiAgX192dWVfc2NyaXB0X18sXG4gIF9fdnVlX3RlbXBsYXRlX18sXG4gIF9fdnVlX3RlbXBsYXRlX2Z1bmN0aW9uYWxfXyxcbiAgX192dWVfc3R5bGVzX18sXG4gIF9fdnVlX3Njb3BlSWRfXyxcbiAgX192dWVfbW9kdWxlX2lkZW50aWZpZXJfX1xuKVxuQ29tcG9uZW50Lm9wdGlvbnMuX19maWxlID0gXCJzcmMvY29tcG9uZW50cy9hcHBOYXZpZ2F0aW9uLnZ1ZVwiXG5cbi8qIGhvdCByZWxvYWQgKi9cbmlmIChtb2R1bGUuaG90KSB7KGZ1bmN0aW9uICgpIHtcbiAgdmFyIGhvdEFQSSA9IHJlcXVpcmUoXCJ2dWUtaG90LXJlbG9hZC1hcGlcIilcbiAgaG90QVBJLmluc3RhbGwocmVxdWlyZShcInZ1ZVwiKSwgZmFsc2UpXG4gIGlmICghaG90QVBJLmNvbXBhdGlibGUpIHJldHVyblxuICBtb2R1bGUuaG90LmFjY2VwdCgpXG4gIGlmICghbW9kdWxlLmhvdC5kYXRhKSB7XG4gICAgaG90QVBJLmNyZWF0ZVJlY29yZChcImRhdGEtdi0xNDJjMWNiNVwiLCBDb21wb25lbnQub3B0aW9ucylcbiAgfSBlbHNlIHtcbiAgICBob3RBUEkucmVsb2FkKFwiZGF0YS12LTE0MmMxY2I1XCIsIENvbXBvbmVudC5vcHRpb25zKVxuICB9XG4gIG1vZHVsZS5ob3QuZGlzcG9zZShmdW5jdGlvbiAoZGF0YSkge1xuICAgIGRpc3Bvc2VkID0gdHJ1ZVxuICB9KVxufSkoKX1cblxuZXhwb3J0IGRlZmF1bHQgQ29tcG9uZW50LmV4cG9ydHNcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vc3JjL2NvbXBvbmVudHMvYXBwTmF2aWdhdGlvbi52dWVcbi8vIG1vZHVsZSBpZCA9IDMyXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///32\n"); /***/ }), /* 33 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_navigationItem_vue__ = __webpack_require__(10);\n/* unused harmony namespace reexport */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_2cb61dde_hasScoped_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_navigationItem_vue__ = __webpack_require__(37);\nvar disposed = false\nvar normalizeComponent = __webpack_require__(2)\n/* script */\n\n\n/* template */\n\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_navigationItem_vue__[\"a\" /* default */],\n __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_2cb61dde_hasScoped_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_navigationItem_vue__[\"a\" /* default */],\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\nComponent.options.__file = \"src/components/appNavigation/navigationItem.vue\"\n\n/* hot reload */\nif (false) {(function () {\n var hotAPI = require(\"vue-hot-reload-api\")\n hotAPI.install(require(\"vue\"), false)\n if (!hotAPI.compatible) return\n module.hot.accept()\n if (!module.hot.data) {\n hotAPI.createRecord(\"data-v-2cb61dde\", Component.options)\n } else {\n hotAPI.reload(\"data-v-2cb61dde\", Component.options)\n }\n module.hot.dispose(function (data) {\n disposed = true\n })\n})()}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Component.exports);\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9hcHBOYXZpZ2F0aW9uL25hdmlnYXRpb25JdGVtLnZ1ZT8yM2VlIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDMks7QUFDM0s7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLFlBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSCxDQUFDOztBQUVEIiwiZmlsZSI6IjMzLmpzIiwic291cmNlc0NvbnRlbnQiOlsidmFyIGRpc3Bvc2VkID0gZmFsc2VcbnZhciBub3JtYWxpemVDb21wb25lbnQgPSByZXF1aXJlKFwiIS4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9jb21wb25lbnQtbm9ybWFsaXplclwiKVxuLyogc2NyaXB0ICovXG5leHBvcnQgKiBmcm9tIFwiISFiYWJlbC1sb2FkZXIhLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yP3R5cGU9c2NyaXB0JmluZGV4PTAhLi9uYXZpZ2F0aW9uSXRlbS52dWVcIlxuaW1wb3J0IF9fdnVlX3NjcmlwdF9fIGZyb20gXCIhIWJhYmVsLWxvYWRlciEuLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3I/dHlwZT1zY3JpcHQmaW5kZXg9MCEuL25hdmlnYXRpb25JdGVtLnZ1ZVwiXG4vKiB0ZW1wbGF0ZSAqL1xuaW1wb3J0IF9fdnVlX3RlbXBsYXRlX18gZnJvbSBcIiEhLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3RlbXBsYXRlLWNvbXBpbGVyL2luZGV4P3tcXFwiaWRcXFwiOlxcXCJkYXRhLXYtMmNiNjFkZGVcXFwiLFxcXCJoYXNTY29wZWRcXFwiOmZhbHNlLFxcXCJidWJsZVxcXCI6e1xcXCJ0cmFuc2Zvcm1zXFxcIjp7fX19IS4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvcj90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9uYXZpZ2F0aW9uSXRlbS52dWVcIlxuLyogdGVtcGxhdGUgZnVuY3Rpb25hbCAqL1xudmFyIF9fdnVlX3RlbXBsYXRlX2Z1bmN0aW9uYWxfXyA9IGZhbHNlXG4vKiBzdHlsZXMgKi9cbnZhciBfX3Z1ZV9zdHlsZXNfXyA9IG51bGxcbi8qIHNjb3BlSWQgKi9cbnZhciBfX3Z1ZV9zY29wZUlkX18gPSBudWxsXG4vKiBtb2R1bGVJZGVudGlmaWVyIChzZXJ2ZXIgb25seSkgKi9cbnZhciBfX3Z1ZV9tb2R1bGVfaWRlbnRpZmllcl9fID0gbnVsbFxudmFyIENvbXBvbmVudCA9IG5vcm1hbGl6ZUNvbXBvbmVudChcbiAgX192dWVfc2NyaXB0X18sXG4gIF9fdnVlX3RlbXBsYXRlX18sXG4gIF9fdnVlX3RlbXBsYXRlX2Z1bmN0aW9uYWxfXyxcbiAgX192dWVfc3R5bGVzX18sXG4gIF9fdnVlX3Njb3BlSWRfXyxcbiAgX192dWVfbW9kdWxlX2lkZW50aWZpZXJfX1xuKVxuQ29tcG9uZW50Lm9wdGlvbnMuX19maWxlID0gXCJzcmMvY29tcG9uZW50cy9hcHBOYXZpZ2F0aW9uL25hdmlnYXRpb25JdGVtLnZ1ZVwiXG5cbi8qIGhvdCByZWxvYWQgKi9cbmlmIChtb2R1bGUuaG90KSB7KGZ1bmN0aW9uICgpIHtcbiAgdmFyIGhvdEFQSSA9IHJlcXVpcmUoXCJ2dWUtaG90LXJlbG9hZC1hcGlcIilcbiAgaG90QVBJLmluc3RhbGwocmVxdWlyZShcInZ1ZVwiKSwgZmFsc2UpXG4gIGlmICghaG90QVBJLmNvbXBhdGlibGUpIHJldHVyblxuICBtb2R1bGUuaG90LmFjY2VwdCgpXG4gIGlmICghbW9kdWxlLmhvdC5kYXRhKSB7XG4gICAgaG90QVBJLmNyZWF0ZVJlY29yZChcImRhdGEtdi0yY2I2MWRkZVwiLCBDb21wb25lbnQub3B0aW9ucylcbiAgfSBlbHNlIHtcbiAgICBob3RBUEkucmVsb2FkKFwiZGF0YS12LTJjYjYxZGRlXCIsIENvbXBvbmVudC5vcHRpb25zKVxuICB9XG4gIG1vZHVsZS5ob3QuZGlzcG9zZShmdW5jdGlvbiAoZGF0YSkge1xuICAgIGRpc3Bvc2VkID0gdHJ1ZVxuICB9KVxufSkoKX1cblxuZXhwb3J0IGRlZmF1bHQgQ29tcG9uZW50LmV4cG9ydHNcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vc3JjL2NvbXBvbmVudHMvYXBwTmF2aWdhdGlvbi9uYXZpZ2F0aW9uSXRlbS52dWVcbi8vIG1vZHVsZSBpZCA9IDMzXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///33\n"); +eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_navigationItem_vue__ = __webpack_require__(11);\n/* unused harmony namespace reexport */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_2cb61dde_hasScoped_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_navigationItem_vue__ = __webpack_require__(37);\nvar disposed = false\nvar normalizeComponent = __webpack_require__(2)\n/* script */\n\n\n/* template */\n\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_navigationItem_vue__[\"a\" /* default */],\n __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_2cb61dde_hasScoped_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_navigationItem_vue__[\"a\" /* default */],\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\nComponent.options.__file = \"src/components/appNavigation/navigationItem.vue\"\n\n/* hot reload */\nif (false) {(function () {\n var hotAPI = require(\"vue-hot-reload-api\")\n hotAPI.install(require(\"vue\"), false)\n if (!hotAPI.compatible) return\n module.hot.accept()\n if (!module.hot.data) {\n hotAPI.createRecord(\"data-v-2cb61dde\", Component.options)\n } else {\n hotAPI.reload(\"data-v-2cb61dde\", Component.options)\n }\n module.hot.dispose(function (data) {\n disposed = true\n })\n})()}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Component.exports);\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9hcHBOYXZpZ2F0aW9uL25hdmlnYXRpb25JdGVtLnZ1ZT8yM2VlIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDMks7QUFDM0s7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLFlBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSCxDQUFDOztBQUVEIiwiZmlsZSI6IjMzLmpzIiwic291cmNlc0NvbnRlbnQiOlsidmFyIGRpc3Bvc2VkID0gZmFsc2VcbnZhciBub3JtYWxpemVDb21wb25lbnQgPSByZXF1aXJlKFwiIS4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9jb21wb25lbnQtbm9ybWFsaXplclwiKVxuLyogc2NyaXB0ICovXG5leHBvcnQgKiBmcm9tIFwiISFiYWJlbC1sb2FkZXIhLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yP3R5cGU9c2NyaXB0JmluZGV4PTAhLi9uYXZpZ2F0aW9uSXRlbS52dWVcIlxuaW1wb3J0IF9fdnVlX3NjcmlwdF9fIGZyb20gXCIhIWJhYmVsLWxvYWRlciEuLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3I/dHlwZT1zY3JpcHQmaW5kZXg9MCEuL25hdmlnYXRpb25JdGVtLnZ1ZVwiXG4vKiB0ZW1wbGF0ZSAqL1xuaW1wb3J0IF9fdnVlX3RlbXBsYXRlX18gZnJvbSBcIiEhLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3RlbXBsYXRlLWNvbXBpbGVyL2luZGV4P3tcXFwiaWRcXFwiOlxcXCJkYXRhLXYtMmNiNjFkZGVcXFwiLFxcXCJoYXNTY29wZWRcXFwiOmZhbHNlLFxcXCJidWJsZVxcXCI6e1xcXCJ0cmFuc2Zvcm1zXFxcIjp7fX19IS4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvcj90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9uYXZpZ2F0aW9uSXRlbS52dWVcIlxuLyogdGVtcGxhdGUgZnVuY3Rpb25hbCAqL1xudmFyIF9fdnVlX3RlbXBsYXRlX2Z1bmN0aW9uYWxfXyA9IGZhbHNlXG4vKiBzdHlsZXMgKi9cbnZhciBfX3Z1ZV9zdHlsZXNfXyA9IG51bGxcbi8qIHNjb3BlSWQgKi9cbnZhciBfX3Z1ZV9zY29wZUlkX18gPSBudWxsXG4vKiBtb2R1bGVJZGVudGlmaWVyIChzZXJ2ZXIgb25seSkgKi9cbnZhciBfX3Z1ZV9tb2R1bGVfaWRlbnRpZmllcl9fID0gbnVsbFxudmFyIENvbXBvbmVudCA9IG5vcm1hbGl6ZUNvbXBvbmVudChcbiAgX192dWVfc2NyaXB0X18sXG4gIF9fdnVlX3RlbXBsYXRlX18sXG4gIF9fdnVlX3RlbXBsYXRlX2Z1bmN0aW9uYWxfXyxcbiAgX192dWVfc3R5bGVzX18sXG4gIF9fdnVlX3Njb3BlSWRfXyxcbiAgX192dWVfbW9kdWxlX2lkZW50aWZpZXJfX1xuKVxuQ29tcG9uZW50Lm9wdGlvbnMuX19maWxlID0gXCJzcmMvY29tcG9uZW50cy9hcHBOYXZpZ2F0aW9uL25hdmlnYXRpb25JdGVtLnZ1ZVwiXG5cbi8qIGhvdCByZWxvYWQgKi9cbmlmIChtb2R1bGUuaG90KSB7KGZ1bmN0aW9uICgpIHtcbiAgdmFyIGhvdEFQSSA9IHJlcXVpcmUoXCJ2dWUtaG90LXJlbG9hZC1hcGlcIilcbiAgaG90QVBJLmluc3RhbGwocmVxdWlyZShcInZ1ZVwiKSwgZmFsc2UpXG4gIGlmICghaG90QVBJLmNvbXBhdGlibGUpIHJldHVyblxuICBtb2R1bGUuaG90LmFjY2VwdCgpXG4gIGlmICghbW9kdWxlLmhvdC5kYXRhKSB7XG4gICAgaG90QVBJLmNyZWF0ZVJlY29yZChcImRhdGEtdi0yY2I2MWRkZVwiLCBDb21wb25lbnQub3B0aW9ucylcbiAgfSBlbHNlIHtcbiAgICBob3RBUEkucmVsb2FkKFwiZGF0YS12LTJjYjYxZGRlXCIsIENvbXBvbmVudC5vcHRpb25zKVxuICB9XG4gIG1vZHVsZS5ob3QuZGlzcG9zZShmdW5jdGlvbiAoZGF0YSkge1xuICAgIGRpc3Bvc2VkID0gdHJ1ZVxuICB9KVxufSkoKX1cblxuZXhwb3J0IGRlZmF1bHQgQ29tcG9uZW50LmV4cG9ydHNcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vc3JjL2NvbXBvbmVudHMvYXBwTmF2aWdhdGlvbi9uYXZpZ2F0aW9uSXRlbS52dWVcbi8vIG1vZHVsZSBpZCA9IDMzXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///33\n"); /***/ }), /* 34 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_popoverItem_vue__ = __webpack_require__(13);\n/* unused harmony namespace reexport */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_4c6af9e6_hasScoped_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_popoverItem_vue__ = __webpack_require__(35);\nvar disposed = false\nvar normalizeComponent = __webpack_require__(2)\n/* script */\n\n\n/* template */\n\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_popoverItem_vue__[\"a\" /* default */],\n __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_4c6af9e6_hasScoped_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_popoverItem_vue__[\"a\" /* default */],\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\nComponent.options.__file = \"src/components/popoverMenu/popoverItem.vue\"\n\n/* hot reload */\nif (false) {(function () {\n var hotAPI = require(\"vue-hot-reload-api\")\n hotAPI.install(require(\"vue\"), false)\n if (!hotAPI.compatible) return\n module.hot.accept()\n if (!module.hot.data) {\n hotAPI.createRecord(\"data-v-4c6af9e6\", Component.options)\n } else {\n hotAPI.reload(\"data-v-4c6af9e6\", Component.options)\n }\n module.hot.dispose(function (data) {\n disposed = true\n })\n})()}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Component.exports);\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9wb3BvdmVyTWVudS9wb3BvdmVySXRlbS52dWU/M2MwNiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBO0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQzJLO0FBQzNLO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxZQUFpQjtBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0gsQ0FBQzs7QUFFRCIsImZpbGUiOiIzNC5qcyIsInNvdXJjZXNDb250ZW50IjpbInZhciBkaXNwb3NlZCA9IGZhbHNlXG52YXIgbm9ybWFsaXplQ29tcG9uZW50ID0gcmVxdWlyZShcIiEuLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvY29tcG9uZW50LW5vcm1hbGl6ZXJcIilcbi8qIHNjcmlwdCAqL1xuZXhwb3J0ICogZnJvbSBcIiEhYmFiZWwtbG9hZGVyIS4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvcj90eXBlPXNjcmlwdCZpbmRleD0wIS4vcG9wb3Zlckl0ZW0udnVlXCJcbmltcG9ydCBfX3Z1ZV9zY3JpcHRfXyBmcm9tIFwiISFiYWJlbC1sb2FkZXIhLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yP3R5cGU9c2NyaXB0JmluZGV4PTAhLi9wb3BvdmVySXRlbS52dWVcIlxuLyogdGVtcGxhdGUgKi9cbmltcG9ydCBfX3Z1ZV90ZW1wbGF0ZV9fIGZyb20gXCIhIS4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi90ZW1wbGF0ZS1jb21waWxlci9pbmRleD97XFxcImlkXFxcIjpcXFwiZGF0YS12LTRjNmFmOWU2XFxcIixcXFwiaGFzU2NvcGVkXFxcIjpmYWxzZSxcXFwiYnVibGVcXFwiOntcXFwidHJhbnNmb3Jtc1xcXCI6e319fSEuLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3I/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vcG9wb3Zlckl0ZW0udnVlXCJcbi8qIHRlbXBsYXRlIGZ1bmN0aW9uYWwgKi9cbnZhciBfX3Z1ZV90ZW1wbGF0ZV9mdW5jdGlvbmFsX18gPSBmYWxzZVxuLyogc3R5bGVzICovXG52YXIgX192dWVfc3R5bGVzX18gPSBudWxsXG4vKiBzY29wZUlkICovXG52YXIgX192dWVfc2NvcGVJZF9fID0gbnVsbFxuLyogbW9kdWxlSWRlbnRpZmllciAoc2VydmVyIG9ubHkpICovXG52YXIgX192dWVfbW9kdWxlX2lkZW50aWZpZXJfXyA9IG51bGxcbnZhciBDb21wb25lbnQgPSBub3JtYWxpemVDb21wb25lbnQoXG4gIF9fdnVlX3NjcmlwdF9fLFxuICBfX3Z1ZV90ZW1wbGF0ZV9fLFxuICBfX3Z1ZV90ZW1wbGF0ZV9mdW5jdGlvbmFsX18sXG4gIF9fdnVlX3N0eWxlc19fLFxuICBfX3Z1ZV9zY29wZUlkX18sXG4gIF9fdnVlX21vZHVsZV9pZGVudGlmaWVyX19cbilcbkNvbXBvbmVudC5vcHRpb25zLl9fZmlsZSA9IFwic3JjL2NvbXBvbmVudHMvcG9wb3Zlck1lbnUvcG9wb3Zlckl0ZW0udnVlXCJcblxuLyogaG90IHJlbG9hZCAqL1xuaWYgKG1vZHVsZS5ob3QpIHsoZnVuY3Rpb24gKCkge1xuICB2YXIgaG90QVBJID0gcmVxdWlyZShcInZ1ZS1ob3QtcmVsb2FkLWFwaVwiKVxuICBob3RBUEkuaW5zdGFsbChyZXF1aXJlKFwidnVlXCIpLCBmYWxzZSlcbiAgaWYgKCFob3RBUEkuY29tcGF0aWJsZSkgcmV0dXJuXG4gIG1vZHVsZS5ob3QuYWNjZXB0KClcbiAgaWYgKCFtb2R1bGUuaG90LmRhdGEpIHtcbiAgICBob3RBUEkuY3JlYXRlUmVjb3JkKFwiZGF0YS12LTRjNmFmOWU2XCIsIENvbXBvbmVudC5vcHRpb25zKVxuICB9IGVsc2Uge1xuICAgIGhvdEFQSS5yZWxvYWQoXCJkYXRhLXYtNGM2YWY5ZTZcIiwgQ29tcG9uZW50Lm9wdGlvbnMpXG4gIH1cbiAgbW9kdWxlLmhvdC5kaXNwb3NlKGZ1bmN0aW9uIChkYXRhKSB7XG4gICAgZGlzcG9zZWQgPSB0cnVlXG4gIH0pXG59KSgpfVxuXG5leHBvcnQgZGVmYXVsdCBDb21wb25lbnQuZXhwb3J0c1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9zcmMvY29tcG9uZW50cy9wb3BvdmVyTWVudS9wb3BvdmVySXRlbS52dWVcbi8vIG1vZHVsZSBpZCA9IDM0XG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///34\n"); +eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_popoverItem_vue__ = __webpack_require__(14);\n/* unused harmony namespace reexport */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_4c6af9e6_hasScoped_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_popoverItem_vue__ = __webpack_require__(35);\nvar disposed = false\nvar normalizeComponent = __webpack_require__(2)\n/* script */\n\n\n/* template */\n\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_popoverItem_vue__[\"a\" /* default */],\n __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_4c6af9e6_hasScoped_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_popoverItem_vue__[\"a\" /* default */],\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\nComponent.options.__file = \"src/components/popoverMenu/popoverItem.vue\"\n\n/* hot reload */\nif (false) {(function () {\n var hotAPI = require(\"vue-hot-reload-api\")\n hotAPI.install(require(\"vue\"), false)\n if (!hotAPI.compatible) return\n module.hot.accept()\n if (!module.hot.data) {\n hotAPI.createRecord(\"data-v-4c6af9e6\", Component.options)\n } else {\n hotAPI.reload(\"data-v-4c6af9e6\", Component.options)\n }\n module.hot.dispose(function (data) {\n disposed = true\n })\n})()}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Component.exports);\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9wb3BvdmVyTWVudS9wb3BvdmVySXRlbS52dWU/M2MwNiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBO0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQzJLO0FBQzNLO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxZQUFpQjtBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0gsQ0FBQzs7QUFFRCIsImZpbGUiOiIzNC5qcyIsInNvdXJjZXNDb250ZW50IjpbInZhciBkaXNwb3NlZCA9IGZhbHNlXG52YXIgbm9ybWFsaXplQ29tcG9uZW50ID0gcmVxdWlyZShcIiEuLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvY29tcG9uZW50LW5vcm1hbGl6ZXJcIilcbi8qIHNjcmlwdCAqL1xuZXhwb3J0ICogZnJvbSBcIiEhYmFiZWwtbG9hZGVyIS4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvcj90eXBlPXNjcmlwdCZpbmRleD0wIS4vcG9wb3Zlckl0ZW0udnVlXCJcbmltcG9ydCBfX3Z1ZV9zY3JpcHRfXyBmcm9tIFwiISFiYWJlbC1sb2FkZXIhLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yP3R5cGU9c2NyaXB0JmluZGV4PTAhLi9wb3BvdmVySXRlbS52dWVcIlxuLyogdGVtcGxhdGUgKi9cbmltcG9ydCBfX3Z1ZV90ZW1wbGF0ZV9fIGZyb20gXCIhIS4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi90ZW1wbGF0ZS1jb21waWxlci9pbmRleD97XFxcImlkXFxcIjpcXFwiZGF0YS12LTRjNmFmOWU2XFxcIixcXFwiaGFzU2NvcGVkXFxcIjpmYWxzZSxcXFwiYnVibGVcXFwiOntcXFwidHJhbnNmb3Jtc1xcXCI6e319fSEuLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3I/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vcG9wb3Zlckl0ZW0udnVlXCJcbi8qIHRlbXBsYXRlIGZ1bmN0aW9uYWwgKi9cbnZhciBfX3Z1ZV90ZW1wbGF0ZV9mdW5jdGlvbmFsX18gPSBmYWxzZVxuLyogc3R5bGVzICovXG52YXIgX192dWVfc3R5bGVzX18gPSBudWxsXG4vKiBzY29wZUlkICovXG52YXIgX192dWVfc2NvcGVJZF9fID0gbnVsbFxuLyogbW9kdWxlSWRlbnRpZmllciAoc2VydmVyIG9ubHkpICovXG52YXIgX192dWVfbW9kdWxlX2lkZW50aWZpZXJfXyA9IG51bGxcbnZhciBDb21wb25lbnQgPSBub3JtYWxpemVDb21wb25lbnQoXG4gIF9fdnVlX3NjcmlwdF9fLFxuICBfX3Z1ZV90ZW1wbGF0ZV9fLFxuICBfX3Z1ZV90ZW1wbGF0ZV9mdW5jdGlvbmFsX18sXG4gIF9fdnVlX3N0eWxlc19fLFxuICBfX3Z1ZV9zY29wZUlkX18sXG4gIF9fdnVlX21vZHVsZV9pZGVudGlmaWVyX19cbilcbkNvbXBvbmVudC5vcHRpb25zLl9fZmlsZSA9IFwic3JjL2NvbXBvbmVudHMvcG9wb3Zlck1lbnUvcG9wb3Zlckl0ZW0udnVlXCJcblxuLyogaG90IHJlbG9hZCAqL1xuaWYgKG1vZHVsZS5ob3QpIHsoZnVuY3Rpb24gKCkge1xuICB2YXIgaG90QVBJID0gcmVxdWlyZShcInZ1ZS1ob3QtcmVsb2FkLWFwaVwiKVxuICBob3RBUEkuaW5zdGFsbChyZXF1aXJlKFwidnVlXCIpLCBmYWxzZSlcbiAgaWYgKCFob3RBUEkuY29tcGF0aWJsZSkgcmV0dXJuXG4gIG1vZHVsZS5ob3QuYWNjZXB0KClcbiAgaWYgKCFtb2R1bGUuaG90LmRhdGEpIHtcbiAgICBob3RBUEkuY3JlYXRlUmVjb3JkKFwiZGF0YS12LTRjNmFmOWU2XCIsIENvbXBvbmVudC5vcHRpb25zKVxuICB9IGVsc2Uge1xuICAgIGhvdEFQSS5yZWxvYWQoXCJkYXRhLXYtNGM2YWY5ZTZcIiwgQ29tcG9uZW50Lm9wdGlvbnMpXG4gIH1cbiAgbW9kdWxlLmhvdC5kaXNwb3NlKGZ1bmN0aW9uIChkYXRhKSB7XG4gICAgZGlzcG9zZWQgPSB0cnVlXG4gIH0pXG59KSgpfVxuXG5leHBvcnQgZGVmYXVsdCBDb21wb25lbnQuZXhwb3J0c1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9zcmMvY29tcG9uZW50cy9wb3BvdmVyTWVudS9wb3BvdmVySXRlbS52dWVcbi8vIG1vZHVsZSBpZCA9IDM0XG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///34\n"); /***/ }), /* 35 */ @@ -333,14 +333,14 @@ eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_userList_vue__ = __webpack_require__(15);\n/* unused harmony namespace reexport */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_40745299_hasScoped_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_userList_vue__ = __webpack_require__(43);\nvar disposed = false\nvar normalizeComponent = __webpack_require__(2)\n/* script */\n\n\n/* template */\n\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_userList_vue__[\"a\" /* default */],\n __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_40745299_hasScoped_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_userList_vue__[\"a\" /* default */],\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\nComponent.options.__file = \"src/components/userList.vue\"\n\n/* hot reload */\nif (false) {(function () {\n var hotAPI = require(\"vue-hot-reload-api\")\n hotAPI.install(require(\"vue\"), false)\n if (!hotAPI.compatible) return\n module.hot.accept()\n if (!module.hot.data) {\n hotAPI.createRecord(\"data-v-40745299\", Component.options)\n } else {\n hotAPI.reload(\"data-v-40745299\", Component.options)\n }\n module.hot.dispose(function (data) {\n disposed = true\n })\n})()}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Component.exports);\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy91c2VyTGlzdC52dWU/ZGViYiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBO0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ3dLO0FBQ3hLO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxZQUFpQjtBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0gsQ0FBQzs7QUFFRCIsImZpbGUiOiIzOS5qcyIsInNvdXJjZXNDb250ZW50IjpbInZhciBkaXNwb3NlZCA9IGZhbHNlXG52YXIgbm9ybWFsaXplQ29tcG9uZW50ID0gcmVxdWlyZShcIiEuLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvY29tcG9uZW50LW5vcm1hbGl6ZXJcIilcbi8qIHNjcmlwdCAqL1xuZXhwb3J0ICogZnJvbSBcIiEhYmFiZWwtbG9hZGVyIS4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvcj90eXBlPXNjcmlwdCZpbmRleD0wIS4vdXNlckxpc3QudnVlXCJcbmltcG9ydCBfX3Z1ZV9zY3JpcHRfXyBmcm9tIFwiISFiYWJlbC1sb2FkZXIhLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yP3R5cGU9c2NyaXB0JmluZGV4PTAhLi91c2VyTGlzdC52dWVcIlxuLyogdGVtcGxhdGUgKi9cbmltcG9ydCBfX3Z1ZV90ZW1wbGF0ZV9fIGZyb20gXCIhIS4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi90ZW1wbGF0ZS1jb21waWxlci9pbmRleD97XFxcImlkXFxcIjpcXFwiZGF0YS12LTQwNzQ1Mjk5XFxcIixcXFwiaGFzU2NvcGVkXFxcIjpmYWxzZSxcXFwiYnVibGVcXFwiOntcXFwidHJhbnNmb3Jtc1xcXCI6e319fSEuLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3I/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vdXNlckxpc3QudnVlXCJcbi8qIHRlbXBsYXRlIGZ1bmN0aW9uYWwgKi9cbnZhciBfX3Z1ZV90ZW1wbGF0ZV9mdW5jdGlvbmFsX18gPSBmYWxzZVxuLyogc3R5bGVzICovXG52YXIgX192dWVfc3R5bGVzX18gPSBudWxsXG4vKiBzY29wZUlkICovXG52YXIgX192dWVfc2NvcGVJZF9fID0gbnVsbFxuLyogbW9kdWxlSWRlbnRpZmllciAoc2VydmVyIG9ubHkpICovXG52YXIgX192dWVfbW9kdWxlX2lkZW50aWZpZXJfXyA9IG51bGxcbnZhciBDb21wb25lbnQgPSBub3JtYWxpemVDb21wb25lbnQoXG4gIF9fdnVlX3NjcmlwdF9fLFxuICBfX3Z1ZV90ZW1wbGF0ZV9fLFxuICBfX3Z1ZV90ZW1wbGF0ZV9mdW5jdGlvbmFsX18sXG4gIF9fdnVlX3N0eWxlc19fLFxuICBfX3Z1ZV9zY29wZUlkX18sXG4gIF9fdnVlX21vZHVsZV9pZGVudGlmaWVyX19cbilcbkNvbXBvbmVudC5vcHRpb25zLl9fZmlsZSA9IFwic3JjL2NvbXBvbmVudHMvdXNlckxpc3QudnVlXCJcblxuLyogaG90IHJlbG9hZCAqL1xuaWYgKG1vZHVsZS5ob3QpIHsoZnVuY3Rpb24gKCkge1xuICB2YXIgaG90QVBJID0gcmVxdWlyZShcInZ1ZS1ob3QtcmVsb2FkLWFwaVwiKVxuICBob3RBUEkuaW5zdGFsbChyZXF1aXJlKFwidnVlXCIpLCBmYWxzZSlcbiAgaWYgKCFob3RBUEkuY29tcGF0aWJsZSkgcmV0dXJuXG4gIG1vZHVsZS5ob3QuYWNjZXB0KClcbiAgaWYgKCFtb2R1bGUuaG90LmRhdGEpIHtcbiAgICBob3RBUEkuY3JlYXRlUmVjb3JkKFwiZGF0YS12LTQwNzQ1Mjk5XCIsIENvbXBvbmVudC5vcHRpb25zKVxuICB9IGVsc2Uge1xuICAgIGhvdEFQSS5yZWxvYWQoXCJkYXRhLXYtNDA3NDUyOTlcIiwgQ29tcG9uZW50Lm9wdGlvbnMpXG4gIH1cbiAgbW9kdWxlLmhvdC5kaXNwb3NlKGZ1bmN0aW9uIChkYXRhKSB7XG4gICAgZGlzcG9zZWQgPSB0cnVlXG4gIH0pXG59KSgpfVxuXG5leHBvcnQgZGVmYXVsdCBDb21wb25lbnQuZXhwb3J0c1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9zcmMvY29tcG9uZW50cy91c2VyTGlzdC52dWVcbi8vIG1vZHVsZSBpZCA9IDM5XG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///39\n"); +eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_userList_vue__ = __webpack_require__(16);\n/* unused harmony namespace reexport */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_40745299_hasScoped_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_userList_vue__ = __webpack_require__(43);\nvar disposed = false\nvar normalizeComponent = __webpack_require__(2)\n/* script */\n\n\n/* template */\n\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_userList_vue__[\"a\" /* default */],\n __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_40745299_hasScoped_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_userList_vue__[\"a\" /* default */],\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\nComponent.options.__file = \"src/components/userList.vue\"\n\n/* hot reload */\nif (false) {(function () {\n var hotAPI = require(\"vue-hot-reload-api\")\n hotAPI.install(require(\"vue\"), false)\n if (!hotAPI.compatible) return\n module.hot.accept()\n if (!module.hot.data) {\n hotAPI.createRecord(\"data-v-40745299\", Component.options)\n } else {\n hotAPI.reload(\"data-v-40745299\", Component.options)\n }\n module.hot.dispose(function (data) {\n disposed = true\n })\n})()}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Component.exports);\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy91c2VyTGlzdC52dWU/ZGViYiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBO0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ3dLO0FBQ3hLO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxZQUFpQjtBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0gsQ0FBQzs7QUFFRCIsImZpbGUiOiIzOS5qcyIsInNvdXJjZXNDb250ZW50IjpbInZhciBkaXNwb3NlZCA9IGZhbHNlXG52YXIgbm9ybWFsaXplQ29tcG9uZW50ID0gcmVxdWlyZShcIiEuLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvY29tcG9uZW50LW5vcm1hbGl6ZXJcIilcbi8qIHNjcmlwdCAqL1xuZXhwb3J0ICogZnJvbSBcIiEhYmFiZWwtbG9hZGVyIS4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvcj90eXBlPXNjcmlwdCZpbmRleD0wIS4vdXNlckxpc3QudnVlXCJcbmltcG9ydCBfX3Z1ZV9zY3JpcHRfXyBmcm9tIFwiISFiYWJlbC1sb2FkZXIhLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yP3R5cGU9c2NyaXB0JmluZGV4PTAhLi91c2VyTGlzdC52dWVcIlxuLyogdGVtcGxhdGUgKi9cbmltcG9ydCBfX3Z1ZV90ZW1wbGF0ZV9fIGZyb20gXCIhIS4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi90ZW1wbGF0ZS1jb21waWxlci9pbmRleD97XFxcImlkXFxcIjpcXFwiZGF0YS12LTQwNzQ1Mjk5XFxcIixcXFwiaGFzU2NvcGVkXFxcIjpmYWxzZSxcXFwiYnVibGVcXFwiOntcXFwidHJhbnNmb3Jtc1xcXCI6e319fSEuLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3I/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vdXNlckxpc3QudnVlXCJcbi8qIHRlbXBsYXRlIGZ1bmN0aW9uYWwgKi9cbnZhciBfX3Z1ZV90ZW1wbGF0ZV9mdW5jdGlvbmFsX18gPSBmYWxzZVxuLyogc3R5bGVzICovXG52YXIgX192dWVfc3R5bGVzX18gPSBudWxsXG4vKiBzY29wZUlkICovXG52YXIgX192dWVfc2NvcGVJZF9fID0gbnVsbFxuLyogbW9kdWxlSWRlbnRpZmllciAoc2VydmVyIG9ubHkpICovXG52YXIgX192dWVfbW9kdWxlX2lkZW50aWZpZXJfXyA9IG51bGxcbnZhciBDb21wb25lbnQgPSBub3JtYWxpemVDb21wb25lbnQoXG4gIF9fdnVlX3NjcmlwdF9fLFxuICBfX3Z1ZV90ZW1wbGF0ZV9fLFxuICBfX3Z1ZV90ZW1wbGF0ZV9mdW5jdGlvbmFsX18sXG4gIF9fdnVlX3N0eWxlc19fLFxuICBfX3Z1ZV9zY29wZUlkX18sXG4gIF9fdnVlX21vZHVsZV9pZGVudGlmaWVyX19cbilcbkNvbXBvbmVudC5vcHRpb25zLl9fZmlsZSA9IFwic3JjL2NvbXBvbmVudHMvdXNlckxpc3QudnVlXCJcblxuLyogaG90IHJlbG9hZCAqL1xuaWYgKG1vZHVsZS5ob3QpIHsoZnVuY3Rpb24gKCkge1xuICB2YXIgaG90QVBJID0gcmVxdWlyZShcInZ1ZS1ob3QtcmVsb2FkLWFwaVwiKVxuICBob3RBUEkuaW5zdGFsbChyZXF1aXJlKFwidnVlXCIpLCBmYWxzZSlcbiAgaWYgKCFob3RBUEkuY29tcGF0aWJsZSkgcmV0dXJuXG4gIG1vZHVsZS5ob3QuYWNjZXB0KClcbiAgaWYgKCFtb2R1bGUuaG90LmRhdGEpIHtcbiAgICBob3RBUEkuY3JlYXRlUmVjb3JkKFwiZGF0YS12LTQwNzQ1Mjk5XCIsIENvbXBvbmVudC5vcHRpb25zKVxuICB9IGVsc2Uge1xuICAgIGhvdEFQSS5yZWxvYWQoXCJkYXRhLXYtNDA3NDUyOTlcIiwgQ29tcG9uZW50Lm9wdGlvbnMpXG4gIH1cbiAgbW9kdWxlLmhvdC5kaXNwb3NlKGZ1bmN0aW9uIChkYXRhKSB7XG4gICAgZGlzcG9zZWQgPSB0cnVlXG4gIH0pXG59KSgpfVxuXG5leHBvcnQgZGVmYXVsdCBDb21wb25lbnQuZXhwb3J0c1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9zcmMvY29tcG9uZW50cy91c2VyTGlzdC52dWVcbi8vIG1vZHVsZSBpZCA9IDM5XG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///39\n"); /***/ }), /* 40 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_userRow_vue__ = __webpack_require__(16);\n/* unused harmony namespace reexport */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_d19586ce_hasScoped_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_userRow_vue__ = __webpack_require__(41);\nvar disposed = false\nvar normalizeComponent = __webpack_require__(2)\n/* script */\n\n\n/* template */\n\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_userRow_vue__[\"a\" /* default */],\n __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_d19586ce_hasScoped_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_userRow_vue__[\"a\" /* default */],\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\nComponent.options.__file = \"src/components/userList/userRow.vue\"\n\n/* hot reload */\nif (false) {(function () {\n var hotAPI = require(\"vue-hot-reload-api\")\n hotAPI.install(require(\"vue\"), false)\n if (!hotAPI.compatible) return\n module.hot.accept()\n if (!module.hot.data) {\n hotAPI.createRecord(\"data-v-d19586ce\", Component.options)\n } else {\n hotAPI.reload(\"data-v-d19586ce\", Component.options)\n }\n module.hot.dispose(function (data) {\n disposed = true\n })\n})()}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Component.exports);\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy91c2VyTGlzdC91c2VyUm93LnZ1ZT9kNTczIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDMks7QUFDM0s7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLFlBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSCxDQUFDOztBQUVEIiwiZmlsZSI6IjQwLmpzIiwic291cmNlc0NvbnRlbnQiOlsidmFyIGRpc3Bvc2VkID0gZmFsc2VcbnZhciBub3JtYWxpemVDb21wb25lbnQgPSByZXF1aXJlKFwiIS4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9jb21wb25lbnQtbm9ybWFsaXplclwiKVxuLyogc2NyaXB0ICovXG5leHBvcnQgKiBmcm9tIFwiISFiYWJlbC1sb2FkZXIhLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yP3R5cGU9c2NyaXB0JmluZGV4PTAhLi91c2VyUm93LnZ1ZVwiXG5pbXBvcnQgX192dWVfc2NyaXB0X18gZnJvbSBcIiEhYmFiZWwtbG9hZGVyIS4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvcj90eXBlPXNjcmlwdCZpbmRleD0wIS4vdXNlclJvdy52dWVcIlxuLyogdGVtcGxhdGUgKi9cbmltcG9ydCBfX3Z1ZV90ZW1wbGF0ZV9fIGZyb20gXCIhIS4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi90ZW1wbGF0ZS1jb21waWxlci9pbmRleD97XFxcImlkXFxcIjpcXFwiZGF0YS12LWQxOTU4NmNlXFxcIixcXFwiaGFzU2NvcGVkXFxcIjpmYWxzZSxcXFwiYnVibGVcXFwiOntcXFwidHJhbnNmb3Jtc1xcXCI6e319fSEuLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3I/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vdXNlclJvdy52dWVcIlxuLyogdGVtcGxhdGUgZnVuY3Rpb25hbCAqL1xudmFyIF9fdnVlX3RlbXBsYXRlX2Z1bmN0aW9uYWxfXyA9IGZhbHNlXG4vKiBzdHlsZXMgKi9cbnZhciBfX3Z1ZV9zdHlsZXNfXyA9IG51bGxcbi8qIHNjb3BlSWQgKi9cbnZhciBfX3Z1ZV9zY29wZUlkX18gPSBudWxsXG4vKiBtb2R1bGVJZGVudGlmaWVyIChzZXJ2ZXIgb25seSkgKi9cbnZhciBfX3Z1ZV9tb2R1bGVfaWRlbnRpZmllcl9fID0gbnVsbFxudmFyIENvbXBvbmVudCA9IG5vcm1hbGl6ZUNvbXBvbmVudChcbiAgX192dWVfc2NyaXB0X18sXG4gIF9fdnVlX3RlbXBsYXRlX18sXG4gIF9fdnVlX3RlbXBsYXRlX2Z1bmN0aW9uYWxfXyxcbiAgX192dWVfc3R5bGVzX18sXG4gIF9fdnVlX3Njb3BlSWRfXyxcbiAgX192dWVfbW9kdWxlX2lkZW50aWZpZXJfX1xuKVxuQ29tcG9uZW50Lm9wdGlvbnMuX19maWxlID0gXCJzcmMvY29tcG9uZW50cy91c2VyTGlzdC91c2VyUm93LnZ1ZVwiXG5cbi8qIGhvdCByZWxvYWQgKi9cbmlmIChtb2R1bGUuaG90KSB7KGZ1bmN0aW9uICgpIHtcbiAgdmFyIGhvdEFQSSA9IHJlcXVpcmUoXCJ2dWUtaG90LXJlbG9hZC1hcGlcIilcbiAgaG90QVBJLmluc3RhbGwocmVxdWlyZShcInZ1ZVwiKSwgZmFsc2UpXG4gIGlmICghaG90QVBJLmNvbXBhdGlibGUpIHJldHVyblxuICBtb2R1bGUuaG90LmFjY2VwdCgpXG4gIGlmICghbW9kdWxlLmhvdC5kYXRhKSB7XG4gICAgaG90QVBJLmNyZWF0ZVJlY29yZChcImRhdGEtdi1kMTk1ODZjZVwiLCBDb21wb25lbnQub3B0aW9ucylcbiAgfSBlbHNlIHtcbiAgICBob3RBUEkucmVsb2FkKFwiZGF0YS12LWQxOTU4NmNlXCIsIENvbXBvbmVudC5vcHRpb25zKVxuICB9XG4gIG1vZHVsZS5ob3QuZGlzcG9zZShmdW5jdGlvbiAoZGF0YSkge1xuICAgIGRpc3Bvc2VkID0gdHJ1ZVxuICB9KVxufSkoKX1cblxuZXhwb3J0IGRlZmF1bHQgQ29tcG9uZW50LmV4cG9ydHNcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vc3JjL2NvbXBvbmVudHMvdXNlckxpc3QvdXNlclJvdy52dWVcbi8vIG1vZHVsZSBpZCA9IDQwXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///40\n"); +eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_userRow_vue__ = __webpack_require__(17);\n/* unused harmony namespace reexport */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_d19586ce_hasScoped_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_userRow_vue__ = __webpack_require__(41);\nvar disposed = false\nvar normalizeComponent = __webpack_require__(2)\n/* script */\n\n\n/* template */\n\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_userRow_vue__[\"a\" /* default */],\n __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_d19586ce_hasScoped_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_userRow_vue__[\"a\" /* default */],\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\nComponent.options.__file = \"src/components/userList/userRow.vue\"\n\n/* hot reload */\nif (false) {(function () {\n var hotAPI = require(\"vue-hot-reload-api\")\n hotAPI.install(require(\"vue\"), false)\n if (!hotAPI.compatible) return\n module.hot.accept()\n if (!module.hot.data) {\n hotAPI.createRecord(\"data-v-d19586ce\", Component.options)\n } else {\n hotAPI.reload(\"data-v-d19586ce\", Component.options)\n }\n module.hot.dispose(function (data) {\n disposed = true\n })\n})()}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Component.exports);\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy91c2VyTGlzdC91c2VyUm93LnZ1ZT9kNTczIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDMks7QUFDM0s7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLFlBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSCxDQUFDOztBQUVEIiwiZmlsZSI6IjQwLmpzIiwic291cmNlc0NvbnRlbnQiOlsidmFyIGRpc3Bvc2VkID0gZmFsc2VcbnZhciBub3JtYWxpemVDb21wb25lbnQgPSByZXF1aXJlKFwiIS4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9jb21wb25lbnQtbm9ybWFsaXplclwiKVxuLyogc2NyaXB0ICovXG5leHBvcnQgKiBmcm9tIFwiISFiYWJlbC1sb2FkZXIhLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yP3R5cGU9c2NyaXB0JmluZGV4PTAhLi91c2VyUm93LnZ1ZVwiXG5pbXBvcnQgX192dWVfc2NyaXB0X18gZnJvbSBcIiEhYmFiZWwtbG9hZGVyIS4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvcj90eXBlPXNjcmlwdCZpbmRleD0wIS4vdXNlclJvdy52dWVcIlxuLyogdGVtcGxhdGUgKi9cbmltcG9ydCBfX3Z1ZV90ZW1wbGF0ZV9fIGZyb20gXCIhIS4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi90ZW1wbGF0ZS1jb21waWxlci9pbmRleD97XFxcImlkXFxcIjpcXFwiZGF0YS12LWQxOTU4NmNlXFxcIixcXFwiaGFzU2NvcGVkXFxcIjpmYWxzZSxcXFwiYnVibGVcXFwiOntcXFwidHJhbnNmb3Jtc1xcXCI6e319fSEuLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3I/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vdXNlclJvdy52dWVcIlxuLyogdGVtcGxhdGUgZnVuY3Rpb25hbCAqL1xudmFyIF9fdnVlX3RlbXBsYXRlX2Z1bmN0aW9uYWxfXyA9IGZhbHNlXG4vKiBzdHlsZXMgKi9cbnZhciBfX3Z1ZV9zdHlsZXNfXyA9IG51bGxcbi8qIHNjb3BlSWQgKi9cbnZhciBfX3Z1ZV9zY29wZUlkX18gPSBudWxsXG4vKiBtb2R1bGVJZGVudGlmaWVyIChzZXJ2ZXIgb25seSkgKi9cbnZhciBfX3Z1ZV9tb2R1bGVfaWRlbnRpZmllcl9fID0gbnVsbFxudmFyIENvbXBvbmVudCA9IG5vcm1hbGl6ZUNvbXBvbmVudChcbiAgX192dWVfc2NyaXB0X18sXG4gIF9fdnVlX3RlbXBsYXRlX18sXG4gIF9fdnVlX3RlbXBsYXRlX2Z1bmN0aW9uYWxfXyxcbiAgX192dWVfc3R5bGVzX18sXG4gIF9fdnVlX3Njb3BlSWRfXyxcbiAgX192dWVfbW9kdWxlX2lkZW50aWZpZXJfX1xuKVxuQ29tcG9uZW50Lm9wdGlvbnMuX19maWxlID0gXCJzcmMvY29tcG9uZW50cy91c2VyTGlzdC91c2VyUm93LnZ1ZVwiXG5cbi8qIGhvdCByZWxvYWQgKi9cbmlmIChtb2R1bGUuaG90KSB7KGZ1bmN0aW9uICgpIHtcbiAgdmFyIGhvdEFQSSA9IHJlcXVpcmUoXCJ2dWUtaG90LXJlbG9hZC1hcGlcIilcbiAgaG90QVBJLmluc3RhbGwocmVxdWlyZShcInZ1ZVwiKSwgZmFsc2UpXG4gIGlmICghaG90QVBJLmNvbXBhdGlibGUpIHJldHVyblxuICBtb2R1bGUuaG90LmFjY2VwdCgpXG4gIGlmICghbW9kdWxlLmhvdC5kYXRhKSB7XG4gICAgaG90QVBJLmNyZWF0ZVJlY29yZChcImRhdGEtdi1kMTk1ODZjZVwiLCBDb21wb25lbnQub3B0aW9ucylcbiAgfSBlbHNlIHtcbiAgICBob3RBUEkucmVsb2FkKFwiZGF0YS12LWQxOTU4NmNlXCIsIENvbXBvbmVudC5vcHRpb25zKVxuICB9XG4gIG1vZHVsZS5ob3QuZGlzcG9zZShmdW5jdGlvbiAoZGF0YSkge1xuICAgIGRpc3Bvc2VkID0gdHJ1ZVxuICB9KVxufSkoKX1cblxuZXhwb3J0IGRlZmF1bHQgQ29tcG9uZW50LmV4cG9ydHNcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vc3JjL2NvbXBvbmVudHMvdXNlckxpc3QvdXNlclJvdy52dWVcbi8vIG1vZHVsZSBpZCA9IDQwXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///40\n"); /***/ }), /* 41 */ @@ -370,169 +370,176 @@ eval("/* WEBPACK VAR INJECTION */(function(process) {/**\n * vue-local-storage v /***/ }), /* 45 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { -"use strict"; -eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { attrs: { id: \"app\" } },\n [\n _c(\n \"app-navigation\",\n { attrs: { menu: _vm.menu } },\n [\n _c(\"template\", { slot: \"settings-content\" }, [\n _c(\n \"div\",\n [\n _c(\"p\", [_vm._v(_vm._s(_vm.t(\"settings\", \"Default quota :\")))]),\n _vm._v(\" \"),\n _c(\"multiselect\", {\n staticClass: \"multiselect-vue\",\n attrs: {\n value: _vm.defaultQuota,\n options: _vm.quotaOptions,\n \"tag-placeholder\": \"create\",\n placeholder: _vm.t(\"settings\", \"Select default quota\"),\n label: \"label\",\n \"track-by\": \"id\",\n allowEmpty: false,\n taggable: true\n },\n on: { tag: _vm.validateQuota, input: _vm.setDefaultQuota }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\"div\", [\n _c(\"input\", {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.showLanguages,\n expression: \"showLanguages\"\n }\n ],\n staticClass: \"checkbox\",\n attrs: { type: \"checkbox\", id: \"showLanguages\" },\n domProps: {\n checked: _vm.showLanguages,\n checked: Array.isArray(_vm.showLanguages)\n ? _vm._i(_vm.showLanguages, null) > -1\n : _vm.showLanguages\n },\n on: {\n change: function($event) {\n var $$a = _vm.showLanguages,\n $$el = $event.target,\n $$c = $$el.checked ? true : false\n if (Array.isArray($$a)) {\n var $$v = null,\n $$i = _vm._i($$a, $$v)\n if ($$el.checked) {\n $$i < 0 && (_vm.showLanguages = $$a.concat([$$v]))\n } else {\n $$i > -1 &&\n (_vm.showLanguages = $$a\n .slice(0, $$i)\n .concat($$a.slice($$i + 1)))\n }\n } else {\n _vm.showLanguages = $$c\n }\n }\n }\n }),\n _vm._v(\" \"),\n _c(\"label\", { attrs: { for: \"showLanguages\" } }, [\n _vm._v(_vm._s(_vm.t(\"settings\", \"Show Languages\")))\n ])\n ]),\n _vm._v(\" \"),\n _c(\"div\", [\n _c(\"input\", {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.showLastLogin,\n expression: \"showLastLogin\"\n }\n ],\n staticClass: \"checkbox\",\n attrs: { type: \"checkbox\", id: \"showLastLogin\" },\n domProps: {\n checked: _vm.showLastLogin,\n checked: Array.isArray(_vm.showLastLogin)\n ? _vm._i(_vm.showLastLogin, null) > -1\n : _vm.showLastLogin\n },\n on: {\n change: function($event) {\n var $$a = _vm.showLastLogin,\n $$el = $event.target,\n $$c = $$el.checked ? true : false\n if (Array.isArray($$a)) {\n var $$v = null,\n $$i = _vm._i($$a, $$v)\n if ($$el.checked) {\n $$i < 0 && (_vm.showLastLogin = $$a.concat([$$v]))\n } else {\n $$i > -1 &&\n (_vm.showLastLogin = $$a\n .slice(0, $$i)\n .concat($$a.slice($$i + 1)))\n }\n } else {\n _vm.showLastLogin = $$c\n }\n }\n }\n }),\n _vm._v(\" \"),\n _c(\"label\", { attrs: { for: \"showLastLogin\" } }, [\n _vm._v(_vm._s(_vm.t(\"settings\", \"Show last login\")))\n ])\n ]),\n _vm._v(\" \"),\n _c(\"div\", [\n _c(\"input\", {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.showUserBackend,\n expression: \"showUserBackend\"\n }\n ],\n staticClass: \"checkbox\",\n attrs: { type: \"checkbox\", id: \"showUserBackend\" },\n domProps: {\n checked: _vm.showUserBackend,\n checked: Array.isArray(_vm.showUserBackend)\n ? _vm._i(_vm.showUserBackend, null) > -1\n : _vm.showUserBackend\n },\n on: {\n change: function($event) {\n var $$a = _vm.showUserBackend,\n $$el = $event.target,\n $$c = $$el.checked ? true : false\n if (Array.isArray($$a)) {\n var $$v = null,\n $$i = _vm._i($$a, $$v)\n if ($$el.checked) {\n $$i < 0 && (_vm.showUserBackend = $$a.concat([$$v]))\n } else {\n $$i > -1 &&\n (_vm.showUserBackend = $$a\n .slice(0, $$i)\n .concat($$a.slice($$i + 1)))\n }\n } else {\n _vm.showUserBackend = $$c\n }\n }\n }\n }),\n _vm._v(\" \"),\n _c(\"label\", { attrs: { for: \"showUserBackend\" } }, [\n _vm._v(_vm._s(_vm.t(\"settings\", \"Show user backend\")))\n ])\n ]),\n _vm._v(\" \"),\n _c(\"div\", [\n _c(\"input\", {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.showStoragePath,\n expression: \"showStoragePath\"\n }\n ],\n staticClass: \"checkbox\",\n attrs: { type: \"checkbox\", id: \"showStoragePath\" },\n domProps: {\n checked: _vm.showStoragePath,\n checked: Array.isArray(_vm.showStoragePath)\n ? _vm._i(_vm.showStoragePath, null) > -1\n : _vm.showStoragePath\n },\n on: {\n change: function($event) {\n var $$a = _vm.showStoragePath,\n $$el = $event.target,\n $$c = $$el.checked ? true : false\n if (Array.isArray($$a)) {\n var $$v = null,\n $$i = _vm._i($$a, $$v)\n if ($$el.checked) {\n $$i < 0 && (_vm.showStoragePath = $$a.concat([$$v]))\n } else {\n $$i > -1 &&\n (_vm.showStoragePath = $$a\n .slice(0, $$i)\n .concat($$a.slice($$i + 1)))\n }\n } else {\n _vm.showStoragePath = $$c\n }\n }\n }\n }),\n _vm._v(\" \"),\n _c(\"label\", { attrs: { for: \"showStoragePath\" } }, [\n _vm._v(_vm._s(_vm.t(\"settings\", \"Show storage path\")))\n ])\n ])\n ])\n ],\n 2\n ),\n _vm._v(\" \"),\n _c(\"user-list\", {\n attrs: {\n users: _vm.users,\n showConfig: _vm.showConfig,\n selectedGroup: _vm.selectedGroup\n }\n })\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ __webpack_exports__[\"a\"] = (esExports);\nif (false) {\n module.hot.accept()\n if (module.hot.data) {\n require(\"vue-hot-reload-api\") .rerender(\"data-v-68be103e\", esExports)\n }\n}\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvdmlld3MvVXNlcnMudnVlPzJiNDgiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSyxTQUFTLFlBQVksRUFBRTtBQUM1QjtBQUNBO0FBQ0E7QUFDQSxTQUFTLFNBQVMsaUJBQWlCLEVBQUU7QUFDckM7QUFDQSwwQkFBMEIsMkJBQTJCO0FBQ3JEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbUJBQW1CO0FBQ25CLHVCQUF1QjtBQUN2QixpQkFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCLHdDQUF3QztBQUNoRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsdUJBQXVCO0FBQ3ZCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxlQUFlO0FBQ2Y7QUFDQSwyQkFBMkIsU0FBUyx1QkFBdUIsRUFBRTtBQUM3RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0Isd0NBQXdDO0FBQ2hFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx1QkFBdUI7QUFDdkI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWU7QUFDZjtBQUNBLDJCQUEyQixTQUFTLHVCQUF1QixFQUFFO0FBQzdEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QiwwQ0FBMEM7QUFDbEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1QjtBQUN2QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZUFBZTtBQUNmO0FBQ0EsMkJBQTJCLFNBQVMseUJBQXlCLEVBQUU7QUFDL0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCLDBDQUEwQztBQUNsRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsdUJBQXVCO0FBQ3ZCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxlQUFlO0FBQ2Y7QUFDQSwyQkFBMkIsU0FBUyx5QkFBeUIsRUFBRTtBQUMvRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsImZpbGUiOiI0NS5qcyIsInNvdXJjZXNDb250ZW50IjpbInZhciByZW5kZXIgPSBmdW5jdGlvbigpIHtcbiAgdmFyIF92bSA9IHRoaXNcbiAgdmFyIF9oID0gX3ZtLiRjcmVhdGVFbGVtZW50XG4gIHZhciBfYyA9IF92bS5fc2VsZi5fYyB8fCBfaFxuICByZXR1cm4gX2MoXG4gICAgXCJkaXZcIixcbiAgICB7IGF0dHJzOiB7IGlkOiBcImFwcFwiIH0gfSxcbiAgICBbXG4gICAgICBfYyhcbiAgICAgICAgXCJhcHAtbmF2aWdhdGlvblwiLFxuICAgICAgICB7IGF0dHJzOiB7IG1lbnU6IF92bS5tZW51IH0gfSxcbiAgICAgICAgW1xuICAgICAgICAgIF9jKFwidGVtcGxhdGVcIiwgeyBzbG90OiBcInNldHRpbmdzLWNvbnRlbnRcIiB9LCBbXG4gICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgIF9jKFwicFwiLCBbX3ZtLl92KF92bS5fcyhfdm0udChcInNldHRpbmdzXCIsIFwiRGVmYXVsdCBxdW90YSA6XCIpKSldKSxcbiAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgIF9jKFwibXVsdGlzZWxlY3RcIiwge1xuICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwibXVsdGlzZWxlY3QtdnVlXCIsXG4gICAgICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLmRlZmF1bHRRdW90YSxcbiAgICAgICAgICAgICAgICAgICAgb3B0aW9uczogX3ZtLnF1b3RhT3B0aW9ucyxcbiAgICAgICAgICAgICAgICAgICAgXCJ0YWctcGxhY2Vob2xkZXJcIjogXCJjcmVhdGVcIixcbiAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI6IF92bS50KFwic2V0dGluZ3NcIiwgXCJTZWxlY3QgZGVmYXVsdCBxdW90YVwiKSxcbiAgICAgICAgICAgICAgICAgICAgbGFiZWw6IFwibGFiZWxcIixcbiAgICAgICAgICAgICAgICAgICAgXCJ0cmFjay1ieVwiOiBcImlkXCIsXG4gICAgICAgICAgICAgICAgICAgIGFsbG93RW1wdHk6IGZhbHNlLFxuICAgICAgICAgICAgICAgICAgICB0YWdnYWJsZTogdHJ1ZVxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgIG9uOiB7IHRhZzogX3ZtLnZhbGlkYXRlUXVvdGEsIGlucHV0OiBfdm0uc2V0RGVmYXVsdFF1b3RhIH1cbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAxXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgIF9jKFwiZGl2XCIsIFtcbiAgICAgICAgICAgICAgX2MoXCJpbnB1dFwiLCB7XG4gICAgICAgICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBuYW1lOiBcIm1vZGVsXCIsXG4gICAgICAgICAgICAgICAgICAgIHJhd05hbWU6IFwidi1tb2RlbFwiLFxuICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLnNob3dMYW5ndWFnZXMsXG4gICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwic2hvd0xhbmd1YWdlc1wiXG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJjaGVja2JveFwiLFxuICAgICAgICAgICAgICAgIGF0dHJzOiB7IHR5cGU6IFwiY2hlY2tib3hcIiwgaWQ6IFwic2hvd0xhbmd1YWdlc1wiIH0sXG4gICAgICAgICAgICAgICAgZG9tUHJvcHM6IHtcbiAgICAgICAgICAgICAgICAgIGNoZWNrZWQ6IF92bS5zaG93TGFuZ3VhZ2VzLFxuICAgICAgICAgICAgICAgICAgY2hlY2tlZDogQXJyYXkuaXNBcnJheShfdm0uc2hvd0xhbmd1YWdlcylcbiAgICAgICAgICAgICAgICAgICAgPyBfdm0uX2koX3ZtLnNob3dMYW5ndWFnZXMsIG51bGwpID4gLTFcbiAgICAgICAgICAgICAgICAgICAgOiBfdm0uc2hvd0xhbmd1YWdlc1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgIGNoYW5nZTogZnVuY3Rpb24oJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgIHZhciAkJGEgPSBfdm0uc2hvd0xhbmd1YWdlcyxcbiAgICAgICAgICAgICAgICAgICAgICAkJGVsID0gJGV2ZW50LnRhcmdldCxcbiAgICAgICAgICAgICAgICAgICAgICAkJGMgPSAkJGVsLmNoZWNrZWQgPyB0cnVlIDogZmFsc2VcbiAgICAgICAgICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoJCRhKSkge1xuICAgICAgICAgICAgICAgICAgICAgIHZhciAkJHYgPSBudWxsLFxuICAgICAgICAgICAgICAgICAgICAgICAgJCRpID0gX3ZtLl9pKCQkYSwgJCR2KVxuICAgICAgICAgICAgICAgICAgICAgIGlmICgkJGVsLmNoZWNrZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICQkaSA8IDAgJiYgKF92bS5zaG93TGFuZ3VhZ2VzID0gJCRhLmNvbmNhdChbJCR2XSkpXG4gICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICQkaSA+IC0xICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgIChfdm0uc2hvd0xhbmd1YWdlcyA9ICQkYVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5zbGljZSgwLCAkJGkpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmNvbmNhdCgkJGEuc2xpY2UoJCRpICsgMSkpKVxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICBfdm0uc2hvd0xhbmd1YWdlcyA9ICQkY1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgX2MoXCJsYWJlbFwiLCB7IGF0dHJzOiB7IGZvcjogXCJzaG93TGFuZ3VhZ2VzXCIgfSB9LCBbXG4gICAgICAgICAgICAgICAgX3ZtLl92KF92bS5fcyhfdm0udChcInNldHRpbmdzXCIsIFwiU2hvdyBMYW5ndWFnZXNcIikpKVxuICAgICAgICAgICAgICBdKVxuICAgICAgICAgICAgXSksXG4gICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgX2MoXCJkaXZcIiwgW1xuICAgICAgICAgICAgICBfYyhcImlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICBkaXJlY3RpdmVzOiBbXG4gICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIG5hbWU6IFwibW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LW1vZGVsXCIsXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0uc2hvd0xhc3RMb2dpbixcbiAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJzaG93TGFzdExvZ2luXCJcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcImNoZWNrYm94XCIsXG4gICAgICAgICAgICAgICAgYXR0cnM6IHsgdHlwZTogXCJjaGVja2JveFwiLCBpZDogXCJzaG93TGFzdExvZ2luXCIgfSxcbiAgICAgICAgICAgICAgICBkb21Qcm9wczoge1xuICAgICAgICAgICAgICAgICAgY2hlY2tlZDogX3ZtLnNob3dMYXN0TG9naW4sXG4gICAgICAgICAgICAgICAgICBjaGVja2VkOiBBcnJheS5pc0FycmF5KF92bS5zaG93TGFzdExvZ2luKVxuICAgICAgICAgICAgICAgICAgICA/IF92bS5faShfdm0uc2hvd0xhc3RMb2dpbiwgbnVsbCkgPiAtMVxuICAgICAgICAgICAgICAgICAgICA6IF92bS5zaG93TGFzdExvZ2luXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgY2hhbmdlOiBmdW5jdGlvbigkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgdmFyICQkYSA9IF92bS5zaG93TGFzdExvZ2luLFxuICAgICAgICAgICAgICAgICAgICAgICQkZWwgPSAkZXZlbnQudGFyZ2V0LFxuICAgICAgICAgICAgICAgICAgICAgICQkYyA9ICQkZWwuY2hlY2tlZCA/IHRydWUgOiBmYWxzZVxuICAgICAgICAgICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheSgkJGEpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgdmFyICQkdiA9IG51bGwsXG4gICAgICAgICAgICAgICAgICAgICAgICAkJGkgPSBfdm0uX2koJCRhLCAkJHYpXG4gICAgICAgICAgICAgICAgICAgICAgaWYgKCQkZWwuY2hlY2tlZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgJCRpIDwgMCAmJiAoX3ZtLnNob3dMYXN0TG9naW4gPSAkJGEuY29uY2F0KFskJHZdKSlcbiAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgJCRpID4gLTEgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKF92bS5zaG93TGFzdExvZ2luID0gJCRhXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnNsaWNlKDAsICQkaSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuY29uY2F0KCQkYS5zbGljZSgkJGkgKyAxKSkpXG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgIF92bS5zaG93TGFzdExvZ2luID0gJCRjXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIHsgYXR0cnM6IHsgZm9yOiBcInNob3dMYXN0TG9naW5cIiB9IH0sIFtcbiAgICAgICAgICAgICAgICBfdm0uX3YoX3ZtLl9zKF92bS50KFwic2V0dGluZ3NcIiwgXCJTaG93IGxhc3QgbG9naW5cIikpKVxuICAgICAgICAgICAgICBdKVxuICAgICAgICAgICAgXSksXG4gICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgX2MoXCJkaXZcIiwgW1xuICAgICAgICAgICAgICBfYyhcImlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICBkaXJlY3RpdmVzOiBbXG4gICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIG5hbWU6IFwibW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LW1vZGVsXCIsXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0uc2hvd1VzZXJCYWNrZW5kLFxuICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcInNob3dVc2VyQmFja2VuZFwiXG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJjaGVja2JveFwiLFxuICAgICAgICAgICAgICAgIGF0dHJzOiB7IHR5cGU6IFwiY2hlY2tib3hcIiwgaWQ6IFwic2hvd1VzZXJCYWNrZW5kXCIgfSxcbiAgICAgICAgICAgICAgICBkb21Qcm9wczoge1xuICAgICAgICAgICAgICAgICAgY2hlY2tlZDogX3ZtLnNob3dVc2VyQmFja2VuZCxcbiAgICAgICAgICAgICAgICAgIGNoZWNrZWQ6IEFycmF5LmlzQXJyYXkoX3ZtLnNob3dVc2VyQmFja2VuZClcbiAgICAgICAgICAgICAgICAgICAgPyBfdm0uX2koX3ZtLnNob3dVc2VyQmFja2VuZCwgbnVsbCkgPiAtMVxuICAgICAgICAgICAgICAgICAgICA6IF92bS5zaG93VXNlckJhY2tlbmRcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICBjaGFuZ2U6IGZ1bmN0aW9uKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICB2YXIgJCRhID0gX3ZtLnNob3dVc2VyQmFja2VuZCxcbiAgICAgICAgICAgICAgICAgICAgICAkJGVsID0gJGV2ZW50LnRhcmdldCxcbiAgICAgICAgICAgICAgICAgICAgICAkJGMgPSAkJGVsLmNoZWNrZWQgPyB0cnVlIDogZmFsc2VcbiAgICAgICAgICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoJCRhKSkge1xuICAgICAgICAgICAgICAgICAgICAgIHZhciAkJHYgPSBudWxsLFxuICAgICAgICAgICAgICAgICAgICAgICAgJCRpID0gX3ZtLl9pKCQkYSwgJCR2KVxuICAgICAgICAgICAgICAgICAgICAgIGlmICgkJGVsLmNoZWNrZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICQkaSA8IDAgJiYgKF92bS5zaG93VXNlckJhY2tlbmQgPSAkJGEuY29uY2F0KFskJHZdKSlcbiAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgJCRpID4gLTEgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKF92bS5zaG93VXNlckJhY2tlbmQgPSAkJGFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuc2xpY2UoMCwgJCRpKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5jb25jYXQoJCRhLnNsaWNlKCQkaSArIDEpKSlcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgX3ZtLnNob3dVc2VyQmFja2VuZCA9ICQkY1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgX2MoXCJsYWJlbFwiLCB7IGF0dHJzOiB7IGZvcjogXCJzaG93VXNlckJhY2tlbmRcIiB9IH0sIFtcbiAgICAgICAgICAgICAgICBfdm0uX3YoX3ZtLl9zKF92bS50KFwic2V0dGluZ3NcIiwgXCJTaG93IHVzZXIgYmFja2VuZFwiKSkpXG4gICAgICAgICAgICAgIF0pXG4gICAgICAgICAgICBdKSxcbiAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICBfYyhcImRpdlwiLCBbXG4gICAgICAgICAgICAgIF9jKFwiaW5wdXRcIiwge1xuICAgICAgICAgICAgICAgIGRpcmVjdGl2ZXM6IFtcbiAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJtb2RlbFwiLFxuICAgICAgICAgICAgICAgICAgICByYXdOYW1lOiBcInYtbW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5zaG93U3RvcmFnZVBhdGgsXG4gICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwic2hvd1N0b3JhZ2VQYXRoXCJcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcImNoZWNrYm94XCIsXG4gICAgICAgICAgICAgICAgYXR0cnM6IHsgdHlwZTogXCJjaGVja2JveFwiLCBpZDogXCJzaG93U3RvcmFnZVBhdGhcIiB9LFxuICAgICAgICAgICAgICAgIGRvbVByb3BzOiB7XG4gICAgICAgICAgICAgICAgICBjaGVja2VkOiBfdm0uc2hvd1N0b3JhZ2VQYXRoLFxuICAgICAgICAgICAgICAgICAgY2hlY2tlZDogQXJyYXkuaXNBcnJheShfdm0uc2hvd1N0b3JhZ2VQYXRoKVxuICAgICAgICAgICAgICAgICAgICA/IF92bS5faShfdm0uc2hvd1N0b3JhZ2VQYXRoLCBudWxsKSA+IC0xXG4gICAgICAgICAgICAgICAgICAgIDogX3ZtLnNob3dTdG9yYWdlUGF0aFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgIGNoYW5nZTogZnVuY3Rpb24oJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgIHZhciAkJGEgPSBfdm0uc2hvd1N0b3JhZ2VQYXRoLFxuICAgICAgICAgICAgICAgICAgICAgICQkZWwgPSAkZXZlbnQudGFyZ2V0LFxuICAgICAgICAgICAgICAgICAgICAgICQkYyA9ICQkZWwuY2hlY2tlZCA/IHRydWUgOiBmYWxzZVxuICAgICAgICAgICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheSgkJGEpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgdmFyICQkdiA9IG51bGwsXG4gICAgICAgICAgICAgICAgICAgICAgICAkJGkgPSBfdm0uX2koJCRhLCAkJHYpXG4gICAgICAgICAgICAgICAgICAgICAgaWYgKCQkZWwuY2hlY2tlZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgJCRpIDwgMCAmJiAoX3ZtLnNob3dTdG9yYWdlUGF0aCA9ICQkYS5jb25jYXQoWyQkdl0pKVxuICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAkJGkgPiAtMSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAoX3ZtLnNob3dTdG9yYWdlUGF0aCA9ICQkYVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5zbGljZSgwLCAkJGkpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmNvbmNhdCgkJGEuc2xpY2UoJCRpICsgMSkpKVxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICBfdm0uc2hvd1N0b3JhZ2VQYXRoID0gJCRjXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIHsgYXR0cnM6IHsgZm9yOiBcInNob3dTdG9yYWdlUGF0aFwiIH0gfSwgW1xuICAgICAgICAgICAgICAgIF92bS5fdihfdm0uX3MoX3ZtLnQoXCJzZXR0aW5nc1wiLCBcIlNob3cgc3RvcmFnZSBwYXRoXCIpKSlcbiAgICAgICAgICAgICAgXSlcbiAgICAgICAgICAgIF0pXG4gICAgICAgICAgXSlcbiAgICAgICAgXSxcbiAgICAgICAgMlxuICAgICAgKSxcbiAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICBfYyhcInVzZXItbGlzdFwiLCB7XG4gICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgdXNlcnM6IF92bS51c2VycyxcbiAgICAgICAgICBzaG93Q29uZmlnOiBfdm0uc2hvd0NvbmZpZyxcbiAgICAgICAgICBzZWxlY3RlZEdyb3VwOiBfdm0uc2VsZWN0ZWRHcm91cFxuICAgICAgICB9XG4gICAgICB9KVxuICAgIF0sXG4gICAgMVxuICApXG59XG52YXIgc3RhdGljUmVuZGVyRm5zID0gW11cbnJlbmRlci5fd2l0aFN0cmlwcGVkID0gdHJ1ZVxudmFyIGVzRXhwb3J0cyA9IHsgcmVuZGVyOiByZW5kZXIsIHN0YXRpY1JlbmRlckZuczogc3RhdGljUmVuZGVyRm5zIH1cbmV4cG9ydCBkZWZhdWx0IGVzRXhwb3J0c1xuaWYgKG1vZHVsZS5ob3QpIHtcbiAgbW9kdWxlLmhvdC5hY2NlcHQoKVxuICBpZiAobW9kdWxlLmhvdC5kYXRhKSB7XG4gICAgcmVxdWlyZShcInZ1ZS1ob3QtcmVsb2FkLWFwaVwiKSAgICAgIC5yZXJlbmRlcihcImRhdGEtdi02OGJlMTAzZVwiLCBlc0V4cG9ydHMpXG4gIH1cbn1cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi90ZW1wbGF0ZS1jb21waWxlcj97XCJpZFwiOlwiZGF0YS12LTY4YmUxMDNlXCIsXCJoYXNTY29wZWRcIjpmYWxzZSxcImJ1YmxlXCI6e1widHJhbnNmb3Jtc1wiOnt9fX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vc3JjL3ZpZXdzL1VzZXJzLnZ1ZVxuLy8gbW9kdWxlIGlkID0gNDVcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///45\n"); +eval("module.exports = __webpack_require__(46);\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvaW5kZXguanM/OWFkNSJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSIsImZpbGUiOiI0NS5qcyIsInNvdXJjZXNDb250ZW50IjpbIm1vZHVsZS5leHBvcnRzID0gcmVxdWlyZSgnLi9saWIvYXhpb3MnKTtcblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9heGlvcy9pbmRleC5qc1xuLy8gbW9kdWxlIGlkID0gNDVcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///45\n"); /***/ }), /* 46 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { "use strict"; -eval("/* WEBPACK VAR INJECTION */(function(process) {/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_vue__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vuex__ = __webpack_require__(47);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__users__ = __webpack_require__(48);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__settings__ = __webpack_require__(68);\n\n\n\n\n\n__WEBPACK_IMPORTED_MODULE_0_vue__[\"a\" /* default */].use(__WEBPACK_IMPORTED_MODULE_1_vuex__[\"a\" /* default */]);\n\nvar debug = process.env.NODE_ENV !== 'production';\n\nvar mutations = {\n\tAPI_FAILURE: function API_FAILURE(state, error) {\n\t\tconsole.log(state, error);\n\t}\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (new __WEBPACK_IMPORTED_MODULE_1_vuex__[\"a\" /* default */].Store({\n\tmodules: {\n\t\tusers: __WEBPACK_IMPORTED_MODULE_2__users__[\"a\" /* default */],\n\t\tsettings: __WEBPACK_IMPORTED_MODULE_3__settings__[\"a\" /* default */]\n\t},\n\tstrict: debug,\n\n\tmutations: mutations\n}));\n/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(1)))\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvc3RvcmUvaW5kZXguanM/MjFjOSJdLCJuYW1lcyI6WyJWdWUiLCJ1c2UiLCJkZWJ1ZyIsInByb2Nlc3MiLCJlbnYiLCJOT0RFX0VOViIsIm11dGF0aW9ucyIsIkFQSV9GQUlMVVJFIiwic3RhdGUiLCJlcnJvciIsImNvbnNvbGUiLCJsb2ciLCJWdWV4IiwiU3RvcmUiLCJtb2R1bGVzIiwidXNlcnMiLCJzZXR0aW5ncyIsInN0cmljdCJdLCJtYXBwaW5ncyI6Ijs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLG9EQUFBQSxDQUFJQyxHQUFKLENBQVEscURBQVI7O0FBRUEsSUFBTUMsUUFBUUMsUUFBUUMsR0FBUixDQUFZQyxRQUFaLEtBQXlCLFlBQXZDOztBQUVBLElBQU1DLFlBQVk7QUFDakJDLFlBRGlCLHVCQUNMQyxLQURLLEVBQ0VDLEtBREYsRUFDUztBQUN6QkMsVUFBUUMsR0FBUixDQUFZSCxLQUFaLEVBQW1CQyxLQUFuQjtBQUNBO0FBSGdCLENBQWxCOztBQU1BLHlEQUFlLElBQUkscURBQUFHLENBQUtDLEtBQVQsQ0FBZTtBQUM3QkMsVUFBUztBQUNSQyxTQUFBLHVEQURRO0FBRVJDLFlBQUEsMERBQUFBO0FBRlEsRUFEb0I7QUFLN0JDLFNBQVFmLEtBTHFCOztBQU83Qkk7QUFQNkIsQ0FBZixDQUFmLEUiLCJmaWxlIjoiNDYuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgVnVlIGZyb20gJ3Z1ZSc7XG5pbXBvcnQgVnVleCBmcm9tICd2dWV4JztcbmltcG9ydCB1c2VycyBmcm9tICcuL3VzZXJzJztcbmltcG9ydCBzZXR0aW5ncyBmcm9tICcuL3NldHRpbmdzJztcblxuVnVlLnVzZShWdWV4KVxuXG5jb25zdCBkZWJ1ZyA9IHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbic7XG5cbmNvbnN0IG11dGF0aW9ucyA9IHtcblx0QVBJX0ZBSUxVUkUoc3RhdGUsIGVycm9yKSB7XG5cdFx0Y29uc29sZS5sb2coc3RhdGUsIGVycm9yKTtcblx0fVxufTtcblxuZXhwb3J0IGRlZmF1bHQgbmV3IFZ1ZXguU3RvcmUoe1xuXHRtb2R1bGVzOiB7XG5cdFx0dXNlcnMsXG5cdFx0c2V0dGluZ3Ncblx0fSxcblx0c3RyaWN0OiBkZWJ1ZyxcblxuXHRtdXRhdGlvbnNcbn0pO1xuXG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIC4vc3JjL3N0b3JlL2luZGV4LmpzIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///46\n"); +eval("\n\nvar utils = __webpack_require__(0);\nvar bind = __webpack_require__(18);\nvar Axios = __webpack_require__(48);\nvar defaults = __webpack_require__(7);\n\n/**\n * Create an instance of Axios\n *\n * @param {Object} defaultConfig The default config for the instance\n * @return {Axios} A new instance of Axios\n */\nfunction createInstance(defaultConfig) {\n var context = new Axios(defaultConfig);\n var instance = bind(Axios.prototype.request, context);\n\n // Copy axios.prototype to instance\n utils.extend(instance, Axios.prototype, context);\n\n // Copy context to instance\n utils.extend(instance, context);\n\n return instance;\n}\n\n// Create the default instance to be exported\nvar axios = createInstance(defaults);\n\n// Expose Axios class to allow class inheritance\naxios.Axios = Axios;\n\n// Factory for creating new instances\naxios.create = function create(instanceConfig) {\n return createInstance(utils.merge(defaults, instanceConfig));\n};\n\n// Expose Cancel & CancelToken\naxios.Cancel = __webpack_require__(22);\naxios.CancelToken = __webpack_require__(62);\naxios.isCancel = __webpack_require__(21);\n\n// Expose all/spread\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\naxios.spread = __webpack_require__(63);\n\nmodule.exports = axios;\n\n// Allow use of default import syntax in TypeScript\nmodule.exports.default = axios;\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2F4aW9zLmpzP2I0ODEiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsV0FBVyxPQUFPO0FBQ2xCLFlBQVksTUFBTTtBQUNsQjtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBIiwiZmlsZSI6IjQ2LmpzIiwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBzdHJpY3QnO1xuXG52YXIgdXRpbHMgPSByZXF1aXJlKCcuL3V0aWxzJyk7XG52YXIgYmluZCA9IHJlcXVpcmUoJy4vaGVscGVycy9iaW5kJyk7XG52YXIgQXhpb3MgPSByZXF1aXJlKCcuL2NvcmUvQXhpb3MnKTtcbnZhciBkZWZhdWx0cyA9IHJlcXVpcmUoJy4vZGVmYXVsdHMnKTtcblxuLyoqXG4gKiBDcmVhdGUgYW4gaW5zdGFuY2Ugb2YgQXhpb3NcbiAqXG4gKiBAcGFyYW0ge09iamVjdH0gZGVmYXVsdENvbmZpZyBUaGUgZGVmYXVsdCBjb25maWcgZm9yIHRoZSBpbnN0YW5jZVxuICogQHJldHVybiB7QXhpb3N9IEEgbmV3IGluc3RhbmNlIG9mIEF4aW9zXG4gKi9cbmZ1bmN0aW9uIGNyZWF0ZUluc3RhbmNlKGRlZmF1bHRDb25maWcpIHtcbiAgdmFyIGNvbnRleHQgPSBuZXcgQXhpb3MoZGVmYXVsdENvbmZpZyk7XG4gIHZhciBpbnN0YW5jZSA9IGJpbmQoQXhpb3MucHJvdG90eXBlLnJlcXVlc3QsIGNvbnRleHQpO1xuXG4gIC8vIENvcHkgYXhpb3MucHJvdG90eXBlIHRvIGluc3RhbmNlXG4gIHV0aWxzLmV4dGVuZChpbnN0YW5jZSwgQXhpb3MucHJvdG90eXBlLCBjb250ZXh0KTtcblxuICAvLyBDb3B5IGNvbnRleHQgdG8gaW5zdGFuY2VcbiAgdXRpbHMuZXh0ZW5kKGluc3RhbmNlLCBjb250ZXh0KTtcblxuICByZXR1cm4gaW5zdGFuY2U7XG59XG5cbi8vIENyZWF0ZSB0aGUgZGVmYXVsdCBpbnN0YW5jZSB0byBiZSBleHBvcnRlZFxudmFyIGF4aW9zID0gY3JlYXRlSW5zdGFuY2UoZGVmYXVsdHMpO1xuXG4vLyBFeHBvc2UgQXhpb3MgY2xhc3MgdG8gYWxsb3cgY2xhc3MgaW5oZXJpdGFuY2VcbmF4aW9zLkF4aW9zID0gQXhpb3M7XG5cbi8vIEZhY3RvcnkgZm9yIGNyZWF0aW5nIG5ldyBpbnN0YW5jZXNcbmF4aW9zLmNyZWF0ZSA9IGZ1bmN0aW9uIGNyZWF0ZShpbnN0YW5jZUNvbmZpZykge1xuICByZXR1cm4gY3JlYXRlSW5zdGFuY2UodXRpbHMubWVyZ2UoZGVmYXVsdHMsIGluc3RhbmNlQ29uZmlnKSk7XG59O1xuXG4vLyBFeHBvc2UgQ2FuY2VsICYgQ2FuY2VsVG9rZW5cbmF4aW9zLkNhbmNlbCA9IHJlcXVpcmUoJy4vY2FuY2VsL0NhbmNlbCcpO1xuYXhpb3MuQ2FuY2VsVG9rZW4gPSByZXF1aXJlKCcuL2NhbmNlbC9DYW5jZWxUb2tlbicpO1xuYXhpb3MuaXNDYW5jZWwgPSByZXF1aXJlKCcuL2NhbmNlbC9pc0NhbmNlbCcpO1xuXG4vLyBFeHBvc2UgYWxsL3NwcmVhZFxuYXhpb3MuYWxsID0gZnVuY3Rpb24gYWxsKHByb21pc2VzKSB7XG4gIHJldHVybiBQcm9taXNlLmFsbChwcm9taXNlcyk7XG59O1xuYXhpb3Muc3ByZWFkID0gcmVxdWlyZSgnLi9oZWxwZXJzL3NwcmVhZCcpO1xuXG5tb2R1bGUuZXhwb3J0cyA9IGF4aW9zO1xuXG4vLyBBbGxvdyB1c2Ugb2YgZGVmYXVsdCBpbXBvcnQgc3ludGF4IGluIFR5cGVTY3JpcHRcbm1vZHVsZS5leHBvcnRzLmRlZmF1bHQgPSBheGlvcztcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9heGlvcy5qc1xuLy8gbW9kdWxlIGlkID0gNDZcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///46\n"); /***/ }), /* 47 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { +/***/ (function(module, exports) { -"use strict"; -eval("/* WEBPACK VAR INJECTION */(function(process) {/* unused harmony export Store */\n/* unused harmony export install */\n/* unused harmony export mapState */\n/* unused harmony export mapMutations */\n/* unused harmony export mapGetters */\n/* unused harmony export mapActions */\n/* unused harmony export createNamespacedHelpers */\n/**\n * vuex v3.0.1\n * (c) 2017 Evan You\n * @license MIT\n */\nvar applyMixin = function (Vue) {\n var version = Number(Vue.version.split('.')[0]);\n\n if (version >= 2) {\n Vue.mixin({ beforeCreate: vuexInit });\n } else {\n // override init and inject vuex init procedure\n // for 1.x backwards compatibility.\n var _init = Vue.prototype._init;\n Vue.prototype._init = function (options) {\n if ( options === void 0 ) options = {};\n\n options.init = options.init\n ? [vuexInit].concat(options.init)\n : vuexInit;\n _init.call(this, options);\n };\n }\n\n /**\n * Vuex init hook, injected into each instances init hooks list.\n */\n\n function vuexInit () {\n var options = this.$options;\n // store injection\n if (options.store) {\n this.$store = typeof options.store === 'function'\n ? options.store()\n : options.store;\n } else if (options.parent && options.parent.$store) {\n this.$store = options.parent.$store;\n }\n }\n};\n\nvar devtoolHook =\n typeof window !== 'undefined' &&\n window.__VUE_DEVTOOLS_GLOBAL_HOOK__;\n\nfunction devtoolPlugin (store) {\n if (!devtoolHook) { return }\n\n store._devtoolHook = devtoolHook;\n\n devtoolHook.emit('vuex:init', store);\n\n devtoolHook.on('vuex:travel-to-state', function (targetState) {\n store.replaceState(targetState);\n });\n\n store.subscribe(function (mutation, state) {\n devtoolHook.emit('vuex:mutation', mutation, state);\n });\n}\n\n/**\n * Get the first item that pass the test\n * by second argument function\n *\n * @param {Array} list\n * @param {Function} f\n * @return {*}\n */\n/**\n * Deep copy the given object considering circular structure.\n * This function caches all nested objects and its copies.\n * If it detects circular structure, use cached copy to avoid infinite loop.\n *\n * @param {*} obj\n * @param {Array} cache\n * @return {*}\n */\n\n\n/**\n * forEach for object\n */\nfunction forEachValue (obj, fn) {\n Object.keys(obj).forEach(function (key) { return fn(obj[key], key); });\n}\n\nfunction isObject (obj) {\n return obj !== null && typeof obj === 'object'\n}\n\nfunction isPromise (val) {\n return val && typeof val.then === 'function'\n}\n\nfunction assert (condition, msg) {\n if (!condition) { throw new Error((\"[vuex] \" + msg)) }\n}\n\nvar Module = function Module (rawModule, runtime) {\n this.runtime = runtime;\n this._children = Object.create(null);\n this._rawModule = rawModule;\n var rawState = rawModule.state;\n this.state = (typeof rawState === 'function' ? rawState() : rawState) || {};\n};\n\nvar prototypeAccessors$1 = { namespaced: { configurable: true } };\n\nprototypeAccessors$1.namespaced.get = function () {\n return !!this._rawModule.namespaced\n};\n\nModule.prototype.addChild = function addChild (key, module) {\n this._children[key] = module;\n};\n\nModule.prototype.removeChild = function removeChild (key) {\n delete this._children[key];\n};\n\nModule.prototype.getChild = function getChild (key) {\n return this._children[key]\n};\n\nModule.prototype.update = function update (rawModule) {\n this._rawModule.namespaced = rawModule.namespaced;\n if (rawModule.actions) {\n this._rawModule.actions = rawModule.actions;\n }\n if (rawModule.mutations) {\n this._rawModule.mutations = rawModule.mutations;\n }\n if (rawModule.getters) {\n this._rawModule.getters = rawModule.getters;\n }\n};\n\nModule.prototype.forEachChild = function forEachChild (fn) {\n forEachValue(this._children, fn);\n};\n\nModule.prototype.forEachGetter = function forEachGetter (fn) {\n if (this._rawModule.getters) {\n forEachValue(this._rawModule.getters, fn);\n }\n};\n\nModule.prototype.forEachAction = function forEachAction (fn) {\n if (this._rawModule.actions) {\n forEachValue(this._rawModule.actions, fn);\n }\n};\n\nModule.prototype.forEachMutation = function forEachMutation (fn) {\n if (this._rawModule.mutations) {\n forEachValue(this._rawModule.mutations, fn);\n }\n};\n\nObject.defineProperties( Module.prototype, prototypeAccessors$1 );\n\nvar ModuleCollection = function ModuleCollection (rawRootModule) {\n // register root module (Vuex.Store options)\n this.register([], rawRootModule, false);\n};\n\nModuleCollection.prototype.get = function get (path) {\n return path.reduce(function (module, key) {\n return module.getChild(key)\n }, this.root)\n};\n\nModuleCollection.prototype.getNamespace = function getNamespace (path) {\n var module = this.root;\n return path.reduce(function (namespace, key) {\n module = module.getChild(key);\n return namespace + (module.namespaced ? key + '/' : '')\n }, '')\n};\n\nModuleCollection.prototype.update = function update$1 (rawRootModule) {\n update([], this.root, rawRootModule);\n};\n\nModuleCollection.prototype.register = function register (path, rawModule, runtime) {\n var this$1 = this;\n if ( runtime === void 0 ) runtime = true;\n\n if (process.env.NODE_ENV !== 'production') {\n assertRawModule(path, rawModule);\n }\n\n var newModule = new Module(rawModule, runtime);\n if (path.length === 0) {\n this.root = newModule;\n } else {\n var parent = this.get(path.slice(0, -1));\n parent.addChild(path[path.length - 1], newModule);\n }\n\n // register nested modules\n if (rawModule.modules) {\n forEachValue(rawModule.modules, function (rawChildModule, key) {\n this$1.register(path.concat(key), rawChildModule, runtime);\n });\n }\n};\n\nModuleCollection.prototype.unregister = function unregister (path) {\n var parent = this.get(path.slice(0, -1));\n var key = path[path.length - 1];\n if (!parent.getChild(key).runtime) { return }\n\n parent.removeChild(key);\n};\n\nfunction update (path, targetModule, newModule) {\n if (process.env.NODE_ENV !== 'production') {\n assertRawModule(path, newModule);\n }\n\n // update target module\n targetModule.update(newModule);\n\n // update nested modules\n if (newModule.modules) {\n for (var key in newModule.modules) {\n if (!targetModule.getChild(key)) {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(\n \"[vuex] trying to add a new module '\" + key + \"' on hot reloading, \" +\n 'manual reload is needed'\n );\n }\n return\n }\n update(\n path.concat(key),\n targetModule.getChild(key),\n newModule.modules[key]\n );\n }\n }\n}\n\nvar functionAssert = {\n assert: function (value) { return typeof value === 'function'; },\n expected: 'function'\n};\n\nvar objectAssert = {\n assert: function (value) { return typeof value === 'function' ||\n (typeof value === 'object' && typeof value.handler === 'function'); },\n expected: 'function or object with \"handler\" function'\n};\n\nvar assertTypes = {\n getters: functionAssert,\n mutations: functionAssert,\n actions: objectAssert\n};\n\nfunction assertRawModule (path, rawModule) {\n Object.keys(assertTypes).forEach(function (key) {\n if (!rawModule[key]) { return }\n\n var assertOptions = assertTypes[key];\n\n forEachValue(rawModule[key], function (value, type) {\n assert(\n assertOptions.assert(value),\n makeAssertionMessage(path, key, type, value, assertOptions.expected)\n );\n });\n });\n}\n\nfunction makeAssertionMessage (path, key, type, value, expected) {\n var buf = key + \" should be \" + expected + \" but \\\"\" + key + \".\" + type + \"\\\"\";\n if (path.length > 0) {\n buf += \" in module \\\"\" + (path.join('.')) + \"\\\"\";\n }\n buf += \" is \" + (JSON.stringify(value)) + \".\";\n return buf\n}\n\nvar Vue; // bind on install\n\nvar Store = function Store (options) {\n var this$1 = this;\n if ( options === void 0 ) options = {};\n\n // Auto install if it is not done yet and `window` has `Vue`.\n // To allow users to avoid auto-installation in some cases,\n // this code should be placed here. See #731\n if (!Vue && typeof window !== 'undefined' && window.Vue) {\n install(window.Vue);\n }\n\n if (process.env.NODE_ENV !== 'production') {\n assert(Vue, \"must call Vue.use(Vuex) before creating a store instance.\");\n assert(typeof Promise !== 'undefined', \"vuex requires a Promise polyfill in this browser.\");\n assert(this instanceof Store, \"Store must be called with the new operator.\");\n }\n\n var plugins = options.plugins; if ( plugins === void 0 ) plugins = [];\n var strict = options.strict; if ( strict === void 0 ) strict = false;\n\n var state = options.state; if ( state === void 0 ) state = {};\n if (typeof state === 'function') {\n state = state() || {};\n }\n\n // store internal state\n this._committing = false;\n this._actions = Object.create(null);\n this._actionSubscribers = [];\n this._mutations = Object.create(null);\n this._wrappedGetters = Object.create(null);\n this._modules = new ModuleCollection(options);\n this._modulesNamespaceMap = Object.create(null);\n this._subscribers = [];\n this._watcherVM = new Vue();\n\n // bind commit and dispatch to self\n var store = this;\n var ref = this;\n var dispatch = ref.dispatch;\n var commit = ref.commit;\n this.dispatch = function boundDispatch (type, payload) {\n return dispatch.call(store, type, payload)\n };\n this.commit = function boundCommit (type, payload, options) {\n return commit.call(store, type, payload, options)\n };\n\n // strict mode\n this.strict = strict;\n\n // init root module.\n // this also recursively registers all sub-modules\n // and collects all module getters inside this._wrappedGetters\n installModule(this, state, [], this._modules.root);\n\n // initialize the store vm, which is responsible for the reactivity\n // (also registers _wrappedGetters as computed properties)\n resetStoreVM(this, state);\n\n // apply plugins\n plugins.forEach(function (plugin) { return plugin(this$1); });\n\n if (Vue.config.devtools) {\n devtoolPlugin(this);\n }\n};\n\nvar prototypeAccessors = { state: { configurable: true } };\n\nprototypeAccessors.state.get = function () {\n return this._vm._data.$$state\n};\n\nprototypeAccessors.state.set = function (v) {\n if (process.env.NODE_ENV !== 'production') {\n assert(false, \"Use store.replaceState() to explicit replace store state.\");\n }\n};\n\nStore.prototype.commit = function commit (_type, _payload, _options) {\n var this$1 = this;\n\n // check object-style commit\n var ref = unifyObjectStyle(_type, _payload, _options);\n var type = ref.type;\n var payload = ref.payload;\n var options = ref.options;\n\n var mutation = { type: type, payload: payload };\n var entry = this._mutations[type];\n if (!entry) {\n if (process.env.NODE_ENV !== 'production') {\n console.error((\"[vuex] unknown mutation type: \" + type));\n }\n return\n }\n this._withCommit(function () {\n entry.forEach(function commitIterator (handler) {\n handler(payload);\n });\n });\n this._subscribers.forEach(function (sub) { return sub(mutation, this$1.state); });\n\n if (\n process.env.NODE_ENV !== 'production' &&\n options && options.silent\n ) {\n console.warn(\n \"[vuex] mutation type: \" + type + \". Silent option has been removed. \" +\n 'Use the filter functionality in the vue-devtools'\n );\n }\n};\n\nStore.prototype.dispatch = function dispatch (_type, _payload) {\n var this$1 = this;\n\n // check object-style dispatch\n var ref = unifyObjectStyle(_type, _payload);\n var type = ref.type;\n var payload = ref.payload;\n\n var action = { type: type, payload: payload };\n var entry = this._actions[type];\n if (!entry) {\n if (process.env.NODE_ENV !== 'production') {\n console.error((\"[vuex] unknown action type: \" + type));\n }\n return\n }\n\n this._actionSubscribers.forEach(function (sub) { return sub(action, this$1.state); });\n\n return entry.length > 1\n ? Promise.all(entry.map(function (handler) { return handler(payload); }))\n : entry[0](payload)\n};\n\nStore.prototype.subscribe = function subscribe (fn) {\n return genericSubscribe(fn, this._subscribers)\n};\n\nStore.prototype.subscribeAction = function subscribeAction (fn) {\n return genericSubscribe(fn, this._actionSubscribers)\n};\n\nStore.prototype.watch = function watch (getter, cb, options) {\n var this$1 = this;\n\n if (process.env.NODE_ENV !== 'production') {\n assert(typeof getter === 'function', \"store.watch only accepts a function.\");\n }\n return this._watcherVM.$watch(function () { return getter(this$1.state, this$1.getters); }, cb, options)\n};\n\nStore.prototype.replaceState = function replaceState (state) {\n var this$1 = this;\n\n this._withCommit(function () {\n this$1._vm._data.$$state = state;\n });\n};\n\nStore.prototype.registerModule = function registerModule (path, rawModule, options) {\n if ( options === void 0 ) options = {};\n\n if (typeof path === 'string') { path = [path]; }\n\n if (process.env.NODE_ENV !== 'production') {\n assert(Array.isArray(path), \"module path must be a string or an Array.\");\n assert(path.length > 0, 'cannot register the root module by using registerModule.');\n }\n\n this._modules.register(path, rawModule);\n installModule(this, this.state, path, this._modules.get(path), options.preserveState);\n // reset store to update getters...\n resetStoreVM(this, this.state);\n};\n\nStore.prototype.unregisterModule = function unregisterModule (path) {\n var this$1 = this;\n\n if (typeof path === 'string') { path = [path]; }\n\n if (process.env.NODE_ENV !== 'production') {\n assert(Array.isArray(path), \"module path must be a string or an Array.\");\n }\n\n this._modules.unregister(path);\n this._withCommit(function () {\n var parentState = getNestedState(this$1.state, path.slice(0, -1));\n Vue.delete(parentState, path[path.length - 1]);\n });\n resetStore(this);\n};\n\nStore.prototype.hotUpdate = function hotUpdate (newOptions) {\n this._modules.update(newOptions);\n resetStore(this, true);\n};\n\nStore.prototype._withCommit = function _withCommit (fn) {\n var committing = this._committing;\n this._committing = true;\n fn();\n this._committing = committing;\n};\n\nObject.defineProperties( Store.prototype, prototypeAccessors );\n\nfunction genericSubscribe (fn, subs) {\n if (subs.indexOf(fn) < 0) {\n subs.push(fn);\n }\n return function () {\n var i = subs.indexOf(fn);\n if (i > -1) {\n subs.splice(i, 1);\n }\n }\n}\n\nfunction resetStore (store, hot) {\n store._actions = Object.create(null);\n store._mutations = Object.create(null);\n store._wrappedGetters = Object.create(null);\n store._modulesNamespaceMap = Object.create(null);\n var state = store.state;\n // init all modules\n installModule(store, state, [], store._modules.root, true);\n // reset vm\n resetStoreVM(store, state, hot);\n}\n\nfunction resetStoreVM (store, state, hot) {\n var oldVm = store._vm;\n\n // bind store public getters\n store.getters = {};\n var wrappedGetters = store._wrappedGetters;\n var computed = {};\n forEachValue(wrappedGetters, function (fn, key) {\n // use computed to leverage its lazy-caching mechanism\n computed[key] = function () { return fn(store); };\n Object.defineProperty(store.getters, key, {\n get: function () { return store._vm[key]; },\n enumerable: true // for local getters\n });\n });\n\n // use a Vue instance to store the state tree\n // suppress warnings just in case the user has added\n // some funky global mixins\n var silent = Vue.config.silent;\n Vue.config.silent = true;\n store._vm = new Vue({\n data: {\n $$state: state\n },\n computed: computed\n });\n Vue.config.silent = silent;\n\n // enable strict mode for new vm\n if (store.strict) {\n enableStrictMode(store);\n }\n\n if (oldVm) {\n if (hot) {\n // dispatch changes in all subscribed watchers\n // to force getter re-evaluation for hot reloading.\n store._withCommit(function () {\n oldVm._data.$$state = null;\n });\n }\n Vue.nextTick(function () { return oldVm.$destroy(); });\n }\n}\n\nfunction installModule (store, rootState, path, module, hot) {\n var isRoot = !path.length;\n var namespace = store._modules.getNamespace(path);\n\n // register in namespace map\n if (module.namespaced) {\n store._modulesNamespaceMap[namespace] = module;\n }\n\n // set state\n if (!isRoot && !hot) {\n var parentState = getNestedState(rootState, path.slice(0, -1));\n var moduleName = path[path.length - 1];\n store._withCommit(function () {\n Vue.set(parentState, moduleName, module.state);\n });\n }\n\n var local = module.context = makeLocalContext(store, namespace, path);\n\n module.forEachMutation(function (mutation, key) {\n var namespacedType = namespace + key;\n registerMutation(store, namespacedType, mutation, local);\n });\n\n module.forEachAction(function (action, key) {\n var type = action.root ? key : namespace + key;\n var handler = action.handler || action;\n registerAction(store, type, handler, local);\n });\n\n module.forEachGetter(function (getter, key) {\n var namespacedType = namespace + key;\n registerGetter(store, namespacedType, getter, local);\n });\n\n module.forEachChild(function (child, key) {\n installModule(store, rootState, path.concat(key), child, hot);\n });\n}\n\n/**\n * make localized dispatch, commit, getters and state\n * if there is no namespace, just use root ones\n */\nfunction makeLocalContext (store, namespace, path) {\n var noNamespace = namespace === '';\n\n var local = {\n dispatch: noNamespace ? store.dispatch : function (_type, _payload, _options) {\n var args = unifyObjectStyle(_type, _payload, _options);\n var payload = args.payload;\n var options = args.options;\n var type = args.type;\n\n if (!options || !options.root) {\n type = namespace + type;\n if (process.env.NODE_ENV !== 'production' && !store._actions[type]) {\n console.error((\"[vuex] unknown local action type: \" + (args.type) + \", global type: \" + type));\n return\n }\n }\n\n return store.dispatch(type, payload)\n },\n\n commit: noNamespace ? store.commit : function (_type, _payload, _options) {\n var args = unifyObjectStyle(_type, _payload, _options);\n var payload = args.payload;\n var options = args.options;\n var type = args.type;\n\n if (!options || !options.root) {\n type = namespace + type;\n if (process.env.NODE_ENV !== 'production' && !store._mutations[type]) {\n console.error((\"[vuex] unknown local mutation type: \" + (args.type) + \", global type: \" + type));\n return\n }\n }\n\n store.commit(type, payload, options);\n }\n };\n\n // getters and state object must be gotten lazily\n // because they will be changed by vm update\n Object.defineProperties(local, {\n getters: {\n get: noNamespace\n ? function () { return store.getters; }\n : function () { return makeLocalGetters(store, namespace); }\n },\n state: {\n get: function () { return getNestedState(store.state, path); }\n }\n });\n\n return local\n}\n\nfunction makeLocalGetters (store, namespace) {\n var gettersProxy = {};\n\n var splitPos = namespace.length;\n Object.keys(store.getters).forEach(function (type) {\n // skip if the target getter is not match this namespace\n if (type.slice(0, splitPos) !== namespace) { return }\n\n // extract local getter type\n var localType = type.slice(splitPos);\n\n // Add a port to the getters proxy.\n // Define as getter property because\n // we do not want to evaluate the getters in this time.\n Object.defineProperty(gettersProxy, localType, {\n get: function () { return store.getters[type]; },\n enumerable: true\n });\n });\n\n return gettersProxy\n}\n\nfunction registerMutation (store, type, handler, local) {\n var entry = store._mutations[type] || (store._mutations[type] = []);\n entry.push(function wrappedMutationHandler (payload) {\n handler.call(store, local.state, payload);\n });\n}\n\nfunction registerAction (store, type, handler, local) {\n var entry = store._actions[type] || (store._actions[type] = []);\n entry.push(function wrappedActionHandler (payload, cb) {\n var res = handler.call(store, {\n dispatch: local.dispatch,\n commit: local.commit,\n getters: local.getters,\n state: local.state,\n rootGetters: store.getters,\n rootState: store.state\n }, payload, cb);\n if (!isPromise(res)) {\n res = Promise.resolve(res);\n }\n if (store._devtoolHook) {\n return res.catch(function (err) {\n store._devtoolHook.emit('vuex:error', err);\n throw err\n })\n } else {\n return res\n }\n });\n}\n\nfunction registerGetter (store, type, rawGetter, local) {\n if (store._wrappedGetters[type]) {\n if (process.env.NODE_ENV !== 'production') {\n console.error((\"[vuex] duplicate getter key: \" + type));\n }\n return\n }\n store._wrappedGetters[type] = function wrappedGetter (store) {\n return rawGetter(\n local.state, // local state\n local.getters, // local getters\n store.state, // root state\n store.getters // root getters\n )\n };\n}\n\nfunction enableStrictMode (store) {\n store._vm.$watch(function () { return this._data.$$state }, function () {\n if (process.env.NODE_ENV !== 'production') {\n assert(store._committing, \"Do not mutate vuex store state outside mutation handlers.\");\n }\n }, { deep: true, sync: true });\n}\n\nfunction getNestedState (state, path) {\n return path.length\n ? path.reduce(function (state, key) { return state[key]; }, state)\n : state\n}\n\nfunction unifyObjectStyle (type, payload, options) {\n if (isObject(type) && type.type) {\n options = payload;\n payload = type;\n type = type.type;\n }\n\n if (process.env.NODE_ENV !== 'production') {\n assert(typeof type === 'string', (\"Expects string as the type, but found \" + (typeof type) + \".\"));\n }\n\n return { type: type, payload: payload, options: options }\n}\n\nfunction install (_Vue) {\n if (Vue && _Vue === Vue) {\n if (process.env.NODE_ENV !== 'production') {\n console.error(\n '[vuex] already installed. Vue.use(Vuex) should be called only once.'\n );\n }\n return\n }\n Vue = _Vue;\n applyMixin(Vue);\n}\n\nvar mapState = normalizeNamespace(function (namespace, states) {\n var res = {};\n normalizeMap(states).forEach(function (ref) {\n var key = ref.key;\n var val = ref.val;\n\n res[key] = function mappedState () {\n var state = this.$store.state;\n var getters = this.$store.getters;\n if (namespace) {\n var module = getModuleByNamespace(this.$store, 'mapState', namespace);\n if (!module) {\n return\n }\n state = module.context.state;\n getters = module.context.getters;\n }\n return typeof val === 'function'\n ? val.call(this, state, getters)\n : state[val]\n };\n // mark vuex getter for devtools\n res[key].vuex = true;\n });\n return res\n});\n\nvar mapMutations = normalizeNamespace(function (namespace, mutations) {\n var res = {};\n normalizeMap(mutations).forEach(function (ref) {\n var key = ref.key;\n var val = ref.val;\n\n res[key] = function mappedMutation () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var commit = this.$store.commit;\n if (namespace) {\n var module = getModuleByNamespace(this.$store, 'mapMutations', namespace);\n if (!module) {\n return\n }\n commit = module.context.commit;\n }\n return typeof val === 'function'\n ? val.apply(this, [commit].concat(args))\n : commit.apply(this.$store, [val].concat(args))\n };\n });\n return res\n});\n\nvar mapGetters = normalizeNamespace(function (namespace, getters) {\n var res = {};\n normalizeMap(getters).forEach(function (ref) {\n var key = ref.key;\n var val = ref.val;\n\n val = namespace + val;\n res[key] = function mappedGetter () {\n if (namespace && !getModuleByNamespace(this.$store, 'mapGetters', namespace)) {\n return\n }\n if (process.env.NODE_ENV !== 'production' && !(val in this.$store.getters)) {\n console.error((\"[vuex] unknown getter: \" + val));\n return\n }\n return this.$store.getters[val]\n };\n // mark vuex getter for devtools\n res[key].vuex = true;\n });\n return res\n});\n\nvar mapActions = normalizeNamespace(function (namespace, actions) {\n var res = {};\n normalizeMap(actions).forEach(function (ref) {\n var key = ref.key;\n var val = ref.val;\n\n res[key] = function mappedAction () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var dispatch = this.$store.dispatch;\n if (namespace) {\n var module = getModuleByNamespace(this.$store, 'mapActions', namespace);\n if (!module) {\n return\n }\n dispatch = module.context.dispatch;\n }\n return typeof val === 'function'\n ? val.apply(this, [dispatch].concat(args))\n : dispatch.apply(this.$store, [val].concat(args))\n };\n });\n return res\n});\n\nvar createNamespacedHelpers = function (namespace) { return ({\n mapState: mapState.bind(null, namespace),\n mapGetters: mapGetters.bind(null, namespace),\n mapMutations: mapMutations.bind(null, namespace),\n mapActions: mapActions.bind(null, namespace)\n}); };\n\nfunction normalizeMap (map) {\n return Array.isArray(map)\n ? map.map(function (key) { return ({ key: key, val: key }); })\n : Object.keys(map).map(function (key) { return ({ key: key, val: map[key] }); })\n}\n\nfunction normalizeNamespace (fn) {\n return function (namespace, map) {\n if (typeof namespace !== 'string') {\n map = namespace;\n namespace = '';\n } else if (namespace.charAt(namespace.length - 1) !== '/') {\n namespace += '/';\n }\n return fn(namespace, map)\n }\n}\n\nfunction getModuleByNamespace (store, helper, namespace) {\n var module = store._modulesNamespaceMap[namespace];\n if (process.env.NODE_ENV !== 'production' && !module) {\n console.error((\"[vuex] module namespace not found in \" + helper + \"(): \" + namespace));\n }\n return module\n}\n\nvar index_esm = {\n Store: Store,\n install: install,\n version: '3.0.1',\n mapState: mapState,\n mapMutations: mapMutations,\n mapGetters: mapGetters,\n mapActions: mapActions,\n createNamespacedHelpers: createNamespacedHelpers\n};\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (index_esm);\n\n/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(1)))\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdnVleC9kaXN0L3Z1ZXguZXNtLmpzPzM1OGMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLGVBQWUseUJBQXlCO0FBQ3hDLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0EscUJBQXFCOztBQUVyQjs7QUFFQTs7QUFFQTtBQUNBO0FBQ0EsR0FBRzs7QUFFSDtBQUNBO0FBQ0EsR0FBRztBQUNIOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsV0FBVyxNQUFNO0FBQ2pCLFdBQVcsU0FBUztBQUNwQixZQUFZO0FBQ1o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsV0FBVyxFQUFFO0FBQ2IsV0FBVyxjQUFjO0FBQ3pCLFlBQVk7QUFDWjs7O0FBR0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwyQ0FBMkMsMEJBQTBCLEVBQUU7QUFDdkU7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLG1CQUFtQjtBQUNuQjs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQSw0QkFBNEIsY0FBYyxxQkFBcUI7O0FBRS9EO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxzQ0FBc0M7O0FBRXRDO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsNEJBQTRCLG9DQUFvQyxFQUFFO0FBQ2xFO0FBQ0E7O0FBRUE7QUFDQSw0QkFBNEI7QUFDNUIsdUVBQXVFLEVBQUU7QUFDekU7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSwwQkFBMEI7O0FBRTFCOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0wsR0FBRztBQUNIOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsUUFBUTs7QUFFUjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsZ0NBQWdDO0FBQ2hDLDhCQUE4Qjs7QUFFOUIsNEJBQTRCO0FBQzVCO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FB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QUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0EsQ0FBQzs7QUFFRCxvREFBb0Q7QUFDcEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxDQUFDLEVBQUU7O0FBRUg7QUFDQTtBQUNBLDhCQUE4QixVQUFVLHFCQUFxQixFQUFFLEVBQUU7QUFDakUsMkNBQTJDLFVBQVUsMEJBQTBCLEVBQUUsRUFBRTtBQUNuRjs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRVE7QUFDUiIsImZpbGUiOiI0Ny5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogdnVleCB2My4wLjFcbiAqIChjKSAyMDE3IEV2YW4gWW91XG4gKiBAbGljZW5zZSBNSVRcbiAqL1xudmFyIGFwcGx5TWl4aW4gPSBmdW5jdGlvbiAoVnVlKSB7XG4gIHZhciB2ZXJzaW9uID0gTnVtYmVyKFZ1ZS52ZXJzaW9uLnNwbGl0KCcuJylbMF0pO1xuXG4gIGlmICh2ZXJzaW9uID49IDIpIHtcbiAgICBWdWUubWl4aW4oeyBiZWZvcmVDcmVhdGU6IHZ1ZXhJbml0IH0pO1xuICB9IGVsc2Uge1xuICAgIC8vIG92ZXJyaWRlIGluaXQgYW5kIGluamVjdCB2dWV4IGluaXQgcHJvY2VkdXJlXG4gICAgLy8gZm9yIDEueCBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eS5cbiAgICB2YXIgX2luaXQgPSBWdWUucHJvdG90eXBlLl9pbml0O1xuICAgIFZ1ZS5wcm90b3R5cGUuX2luaXQgPSBmdW5jdGlvbiAob3B0aW9ucykge1xuICAgICAgaWYgKCBvcHRpb25zID09PSB2b2lkIDAgKSBvcHRpb25zID0ge307XG5cbiAgICAgIG9wdGlvbnMuaW5pdCA9IG9wdGlvbnMuaW5pdFxuICAgICAgICA/IFt2dWV4SW5pdF0uY29uY2F0KG9wdGlvbnMuaW5pdClcbiAgICAgICAgOiB2dWV4SW5pdDtcbiAgICAgIF9pbml0LmNhbGwodGhpcywgb3B0aW9ucyk7XG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBWdWV4IGluaXQgaG9vaywgaW5qZWN0ZWQgaW50byBlYWNoIGluc3RhbmNlcyBpbml0IGhvb2tzIGxpc3QuXG4gICAqL1xuXG4gIGZ1bmN0aW9uIHZ1ZXhJbml0ICgpIHtcbiAgICB2YXIgb3B0aW9ucyA9IHRoaXMuJG9wdGlvbnM7XG4gICAgLy8gc3RvcmUgaW5qZWN0aW9uXG4gICAgaWYgKG9wdGlvbnMuc3RvcmUpIHtcbiAgICAgIHRoaXMuJHN0b3JlID0gdHlwZW9mIG9wdGlvbnMuc3RvcmUgPT09ICdmdW5jdGlvbidcbiAgICAgICAgPyBvcHRpb25zLnN0b3JlKClcbiAgICAgICAgOiBvcHRpb25zLnN0b3JlO1xuICAgIH0gZWxzZSBpZiAob3B0aW9ucy5wYXJlbnQgJiYgb3B0aW9ucy5wYXJlbnQuJHN0b3JlKSB7XG4gICAgICB0aGlzLiRzdG9yZSA9IG9wdGlvbnMucGFyZW50LiRzdG9yZTtcbiAgICB9XG4gIH1cbn07XG5cbnZhciBkZXZ0b29sSG9vayA9XG4gIHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnICYmXG4gIHdpbmRvdy5fX1ZVRV9ERVZUT09MU19HTE9CQUxfSE9PS19fO1xuXG5mdW5jdGlvbiBkZXZ0b29sUGx1Z2luIChzdG9yZSkge1xuICBpZiAoIWRldnRvb2xIb29rKSB7IHJldHVybiB9XG5cbiAgc3RvcmUuX2RldnRvb2xIb29rID0gZGV2dG9vbEhvb2s7XG5cbiAgZGV2dG9vbEhvb2suZW1pdCgndnVleDppbml0Jywgc3RvcmUpO1xuXG4gIGRldnRvb2xIb29rLm9uKCd2dWV4OnRyYXZlbC10by1zdGF0ZScsIGZ1bmN0aW9uICh0YXJnZXRTdGF0ZSkge1xuICAgIHN0b3JlLnJlcGxhY2VTdGF0ZSh0YXJnZXRTdGF0ZSk7XG4gIH0pO1xuXG4gIHN0b3JlLnN1YnNjcmliZShmdW5jdGlvbiAobXV0YXRpb24sIHN0YXRlKSB7XG4gICAgZGV2dG9vbEhvb2suZW1pdCgndnVleDptdXRhdGlvbicsIG11dGF0aW9uLCBzdGF0ZSk7XG4gIH0pO1xufVxuXG4vKipcbiAqIEdldCB0aGUgZmlyc3QgaXRlbSB0aGF0IHBhc3MgdGhlIHRlc3RcbiAqIGJ5IHNlY29uZCBhcmd1bWVudCBmdW5jdGlvblxuICpcbiAqIEBwYXJhbSB7QXJyYXl9IGxpc3RcbiAqIEBwYXJhbSB7RnVuY3Rpb259IGZcbiAqIEByZXR1cm4geyp9XG4gKi9cbi8qKlxuICogRGVlcCBjb3B5IHRoZSBnaXZlbiBvYmplY3QgY29uc2lkZXJpbmcgY2lyY3VsYXIgc3RydWN0dXJlLlxuICogVGhpcyBmdW5jdGlvbiBjYWNoZXMgYWxsIG5lc3RlZCBvYmplY3RzIGFuZCBpdHMgY29waWVzLlxuICogSWYgaXQgZGV0ZWN0cyBjaXJjdWxhciBzdHJ1Y3R1cmUsIHVzZSBjYWNoZWQgY29weSB0byBhdm9pZCBpbmZpbml0ZSBsb29wLlxuICpcbiAqIEBwYXJhbSB7Kn0gb2JqXG4gKiBAcGFyYW0ge0FycmF5PE9iamVjdD59IGNhY2hlXG4gKiBAcmV0dXJuIHsqfVxuICovXG5cblxuLyoqXG4gKiBmb3JFYWNoIGZvciBvYmplY3RcbiAqL1xuZnVuY3Rpb24gZm9yRWFjaFZhbHVlIChvYmosIGZuKSB7XG4gIE9iamVjdC5rZXlzKG9iaikuZm9yRWFjaChmdW5jdGlvbiAoa2V5KSB7IHJldHVybiBmbihvYmpba2V5XSwga2V5KTsgfSk7XG59XG5cbmZ1bmN0aW9uIGlzT2JqZWN0IChvYmopIHtcbiAgcmV0dXJuIG9iaiAhPT0gbnVsbCAmJiB0eXBlb2Ygb2JqID09PSAnb2JqZWN0J1xufVxuXG5mdW5jdGlvbiBpc1Byb21pc2UgKHZhbCkge1xuICByZXR1cm4gdmFsICYmIHR5cGVvZiB2YWwudGhlbiA9PT0gJ2Z1bmN0aW9uJ1xufVxuXG5mdW5jdGlvbiBhc3NlcnQgKGNvbmRpdGlvbiwgbXNnKSB7XG4gIGlmICghY29uZGl0aW9uKSB7IHRocm93IG5ldyBFcnJvcigoXCJbdnVleF0gXCIgKyBtc2cpKSB9XG59XG5cbnZhciBNb2R1bGUgPSBmdW5jdGlvbiBNb2R1bGUgKHJhd01vZHVsZSwgcnVudGltZSkge1xuICB0aGlzLnJ1bnRpbWUgPSBydW50aW1lO1xuICB0aGlzLl9jaGlsZHJlbiA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG4gIHRoaXMuX3Jhd01vZHVsZSA9IHJhd01vZHVsZTtcbiAgdmFyIHJhd1N0YXRlID0gcmF3TW9kdWxlLnN0YXRlO1xuICB0aGlzLnN0YXRlID0gKHR5cGVvZiByYXdTdGF0ZSA9PT0gJ2Z1bmN0aW9uJyA/IHJhd1N0YXRlKCkgOiByYXdTdGF0ZSkgfHwge307XG59O1xuXG52YXIgcHJvdG90eXBlQWNjZXNzb3JzJDEgPSB7IG5hbWVzcGFjZWQ6IHsgY29uZmlndXJhYmxlOiB0cnVlIH0gfTtcblxucHJvdG90eXBlQWNjZXNzb3JzJDEubmFtZXNwYWNlZC5nZXQgPSBmdW5jdGlvbiAoKSB7XG4gIHJldHVybiAhIXRoaXMuX3Jhd01vZHVsZS5uYW1lc3BhY2VkXG59O1xuXG5Nb2R1bGUucHJvdG90eXBlLmFkZENoaWxkID0gZnVuY3Rpb24gYWRkQ2hpbGQgKGtleSwgbW9kdWxlKSB7XG4gIHRoaXMuX2NoaWxkcmVuW2tleV0gPSBtb2R1bGU7XG59O1xuXG5Nb2R1bGUucHJvdG90eXBlLnJlbW92ZUNoaWxkID0gZnVuY3Rpb24gcmVtb3ZlQ2hpbGQgKGtleSkge1xuICBkZWxldGUgdGhpcy5fY2hpbGRyZW5ba2V5XTtcbn07XG5cbk1vZHVsZS5wcm90b3R5cGUuZ2V0Q2hpbGQgPSBmdW5jdGlvbiBnZXRDaGlsZCAoa2V5KSB7XG4gIHJldHVybiB0aGlzLl9jaGlsZHJlbltrZXldXG59O1xuXG5Nb2R1bGUucHJvdG90eXBlLnVwZGF0ZSA9IGZ1bmN0aW9uIHVwZGF0ZSAocmF3TW9kdWxlKSB7XG4gIHRoaXMuX3Jhd01vZHVsZS5uYW1lc3BhY2VkID0gcmF3TW9kdWxlLm5hbWVzcGFjZWQ7XG4gIGlmIChyYXdNb2R1bGUuYWN0aW9ucykge1xuICAgIHRoaXMuX3Jhd01vZHVsZS5hY3Rpb25zID0gcmF3TW9kdWxlLmFjdGlvbnM7XG4gIH1cbiAgaWYgKHJhd01vZHVsZS5tdXRhdGlvbnMpIHtcbiAgICB0aGlzLl9yYXdNb2R1bGUubXV0YXRpb25zID0gcmF3TW9kdWxlLm11dGF0aW9ucztcbiAgfVxuICBpZiAocmF3TW9kdWxlLmdldHRlcnMpIHtcbiAgICB0aGlzLl9yYXdNb2R1bGUuZ2V0dGVycyA9IHJhd01vZHVsZS5nZXR0ZXJzO1xuICB9XG59O1xuXG5Nb2R1bGUucHJvdG90eXBlLmZvckVhY2hDaGlsZCA9IGZ1bmN0aW9uIGZvckVhY2hDaGlsZCAoZm4pIHtcbiAgZm9yRWFjaFZhbHVlKHRoaXMuX2NoaWxkcmVuLCBmbik7XG59O1xuXG5Nb2R1bGUucHJvdG90eXBlLmZvckVhY2hHZXR0ZXIgPSBmdW5jdGlvbiBmb3JFYWNoR2V0dGVyIChmbikge1xuICBpZiAodGhpcy5fcmF3TW9kdWxlLmdldHRlcnMpIHtcbiAgICBmb3JFYWNoVmFsdWUodGhpcy5fcmF3TW9kdWxlLmdldHRlcnMsIGZuKTtcbiAgfVxufTtcblxuTW9kdWxlLnByb3RvdHlwZS5mb3JFYWNoQWN0aW9uID0gZnVuY3Rpb24gZm9yRWFjaEFjdGlvbiAoZm4pIHtcbiAgaWYgKHRoaXMuX3Jhd01vZHVsZS5hY3Rpb25zKSB7XG4gICAgZm9yRWFjaFZhbHVlKHRoaXMuX3Jhd01vZHVsZS5hY3Rpb25zLCBmbik7XG4gIH1cbn07XG5cbk1vZHVsZS5wcm90b3R5cGUuZm9yRWFjaE11dGF0aW9uID0gZnVuY3Rpb24gZm9yRWFjaE11dGF0aW9uIChmbikge1xuICBpZiAodGhpcy5fcmF3TW9kdWxlLm11dGF0aW9ucykge1xuICAgIGZvckVhY2hWYWx1ZSh0aGlzLl9yYXdNb2R1bGUubXV0YXRpb25zLCBmbik7XG4gIH1cbn07XG5cbk9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKCBNb2R1bGUucHJvdG90eXBlLCBwcm90b3R5cGVBY2Nlc3NvcnMkMSApO1xuXG52YXIgTW9kdWxlQ29sbGVjdGlvbiA9IGZ1bmN0aW9uIE1vZHVsZUNvbGxlY3Rpb24gKHJhd1Jvb3RNb2R1bGUpIHtcbiAgLy8gcmVnaXN0ZXIgcm9vdCBtb2R1bGUgKFZ1ZXguU3RvcmUgb3B0aW9ucylcbiAgdGhpcy5yZWdpc3RlcihbXSwgcmF3Um9vdE1vZHVsZSwgZmFsc2UpO1xufTtcblxuTW9kdWxlQ29sbGVjdGlvbi5wcm90b3R5cGUuZ2V0ID0gZnVuY3Rpb24gZ2V0IChwYXRoKSB7XG4gIHJldHVybiBwYXRoLnJlZHVjZShmdW5jdGlvbiAobW9kdWxlLCBrZXkpIHtcbiAgICByZXR1cm4gbW9kdWxlLmdldENoaWxkKGtleSlcbiAgfSwgdGhpcy5yb290KVxufTtcblxuTW9kdWxlQ29sbGVjdGlvbi5wcm90b3R5cGUuZ2V0TmFtZXNwYWNlID0gZnVuY3Rpb24gZ2V0TmFtZXNwYWNlIChwYXRoKSB7XG4gIHZhciBtb2R1bGUgPSB0aGlzLnJvb3Q7XG4gIHJldHVybiBwYXRoLnJlZHVjZShmdW5jdGlvbiAobmFtZXNwYWNlLCBrZXkpIHtcbiAgICBtb2R1bGUgPSBtb2R1bGUuZ2V0Q2hpbGQoa2V5KTtcbiAgICByZXR1cm4gbmFtZXNwYWNlICsgKG1vZHVsZS5uYW1lc3BhY2VkID8ga2V5ICsgJy8nIDogJycpXG4gIH0sICcnKVxufTtcblxuTW9kdWxlQ29sbGVjdGlvbi5wcm90b3R5cGUudXBkYXRlID0gZnVuY3Rpb24gdXBkYXRlJDEgKHJhd1Jvb3RNb2R1bGUpIHtcbiAgdXBkYXRlKFtdLCB0aGlzLnJvb3QsIHJhd1Jvb3RNb2R1bGUpO1xufTtcblxuTW9kdWxlQ29sbGVjdGlvbi5wcm90b3R5cGUucmVnaXN0ZXIgPSBmdW5jdGlvbiByZWdpc3RlciAocGF0aCwgcmF3TW9kdWxlLCBydW50aW1lKSB7XG4gICAgdmFyIHRoaXMkMSA9IHRoaXM7XG4gICAgaWYgKCBydW50aW1lID09PSB2b2lkIDAgKSBydW50aW1lID0gdHJ1ZTtcblxuICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgIGFzc2VydFJhd01vZHVsZShwYXRoLCByYXdNb2R1bGUpO1xuICB9XG5cbiAgdmFyIG5ld01vZHVsZSA9IG5ldyBNb2R1bGUocmF3TW9kdWxlLCBydW50aW1lKTtcbiAgaWYgKHBhdGgubGVuZ3RoID09PSAwKSB7XG4gICAgdGhpcy5yb290ID0gbmV3TW9kdWxlO1xuICB9IGVsc2Uge1xuICAgIHZhciBwYXJlbnQgPSB0aGlzLmdldChwYXRoLnNsaWNlKDAsIC0xKSk7XG4gICAgcGFyZW50LmFkZENoaWxkKHBhdGhbcGF0aC5sZW5ndGggLSAxXSwgbmV3TW9kdWxlKTtcbiAgfVxuXG4gIC8vIHJlZ2lzdGVyIG5lc3RlZCBtb2R1bGVzXG4gIGlmIChyYXdNb2R1bGUubW9kdWxlcykge1xuICAgIGZvckVhY2hWYWx1ZShyYXdNb2R1bGUubW9kdWxlcywgZnVuY3Rpb24gKHJhd0NoaWxkTW9kdWxlLCBrZXkpIHtcbiAgICAgIHRoaXMkMS5yZWdpc3RlcihwYXRoLmNvbmNhdChrZXkpLCByYXdDaGlsZE1vZHVsZSwgcnVudGltZSk7XG4gICAgfSk7XG4gIH1cbn07XG5cbk1vZHVsZUNvbGxlY3Rpb24ucHJvdG90eXBlLnVucmVnaXN0ZXIgPSBmdW5jdGlvbiB1bnJlZ2lzdGVyIChwYXRoKSB7XG4gIHZhciBwYXJlbnQgPSB0aGlzLmdldChwYXRoLnNsaWNlKDAsIC0xKSk7XG4gIHZhciBrZXkgPSBwYXRoW3BhdGgubGVuZ3RoIC0gMV07XG4gIGlmICghcGFyZW50LmdldENoaWxkKGtleSkucnVudGltZSkgeyByZXR1cm4gfVxuXG4gIHBhcmVudC5yZW1vdmVDaGlsZChrZXkpO1xufTtcblxuZnVuY3Rpb24gdXBkYXRlIChwYXRoLCB0YXJnZXRNb2R1bGUsIG5ld01vZHVsZSkge1xuICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgIGFzc2VydFJhd01vZHVsZShwYXRoLCBuZXdNb2R1bGUpO1xuICB9XG5cbiAgLy8gdXBkYXRlIHRhcmdldCBtb2R1bGVcbiAgdGFyZ2V0TW9kdWxlLnVwZGF0ZShuZXdNb2R1bGUpO1xuXG4gIC8vIHVwZGF0ZSBuZXN0ZWQgbW9kdWxlc1xuICBpZiAobmV3TW9kdWxlLm1vZHVsZXMpIHtcbiAgICBmb3IgKHZhciBrZXkgaW4gbmV3TW9kdWxlLm1vZHVsZXMpIHtcbiAgICAgIGlmICghdGFyZ2V0TW9kdWxlLmdldENoaWxkKGtleSkpIHtcbiAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgICAgICBcIlt2dWV4XSB0cnlpbmcgdG8gYWRkIGEgbmV3IG1vZHVsZSAnXCIgKyBrZXkgKyBcIicgb24gaG90IHJlbG9hZGluZywgXCIgK1xuICAgICAgICAgICAgJ21hbnVhbCByZWxvYWQgaXMgbmVlZGVkJ1xuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG4gICAgICB1cGRhdGUoXG4gICAgICAgIHBhdGguY29uY2F0KGtleSksXG4gICAgICAgIHRhcmdldE1vZHVsZS5nZXRDaGlsZChrZXkpLFxuICAgICAgICBuZXdNb2R1bGUubW9kdWxlc1trZXldXG4gICAgICApO1xuICAgIH1cbiAgfVxufVxuXG52YXIgZnVuY3Rpb25Bc3NlcnQgPSB7XG4gIGFzc2VydDogZnVuY3Rpb24gKHZhbHVlKSB7IHJldHVybiB0eXBlb2YgdmFsdWUgPT09ICdmdW5jdGlvbic7IH0sXG4gIGV4cGVjdGVkOiAnZnVuY3Rpb24nXG59O1xuXG52YXIgb2JqZWN0QXNzZXJ0ID0ge1xuICBhc3NlcnQ6IGZ1bmN0aW9uICh2YWx1ZSkgeyByZXR1cm4gdHlwZW9mIHZhbHVlID09PSAnZnVuY3Rpb24nIHx8XG4gICAgKHR5cGVvZiB2YWx1ZSA9PT0gJ29iamVjdCcgJiYgdHlwZW9mIHZhbHVlLmhhbmRsZXIgPT09ICdmdW5jdGlvbicpOyB9LFxuICBleHBlY3RlZDogJ2Z1bmN0aW9uIG9yIG9iamVjdCB3aXRoIFwiaGFuZGxlclwiIGZ1bmN0aW9uJ1xufTtcblxudmFyIGFzc2VydFR5cGVzID0ge1xuICBnZXR0ZXJzOiBmdW5jdGlvbkFzc2VydCxcbiAgbXV0YXRpb25zOiBmdW5jdGlvbkFzc2VydCxcbiAgYWN0aW9uczogb2JqZWN0QXNzZXJ0XG59O1xuXG5mdW5jdGlvbiBhc3NlcnRSYXdNb2R1bGUgKHBhdGgsIHJhd01vZHVsZSkge1xuICBPYmplY3Qua2V5cyhhc3NlcnRUeXBlcykuZm9yRWFjaChmdW5jdGlvbiAoa2V5KSB7XG4gICAgaWYgKCFyYXdNb2R1bGVba2V5XSkgeyByZXR1cm4gfVxuXG4gICAgdmFyIGFzc2VydE9wdGlvbnMgPSBhc3NlcnRUeXBlc1trZXldO1xuXG4gICAgZm9yRWFjaFZhbHVlKHJhd01vZHVsZVtrZXldLCBmdW5jdGlvbiAodmFsdWUsIHR5cGUpIHtcbiAgICAgIGFzc2VydChcbiAgICAgICAgYXNzZXJ0T3B0aW9ucy5hc3NlcnQodmFsdWUpLFxuICAgICAgICBtYWtlQXNzZXJ0aW9uTWVzc2FnZShwYXRoLCBrZXksIHR5cGUsIHZhbHVlLCBhc3NlcnRPcHRpb25zLmV4cGVjdGVkKVxuICAgICAgKTtcbiAgICB9KTtcbiAgfSk7XG59XG5cbmZ1bmN0aW9uIG1ha2VBc3NlcnRpb25NZXNzYWdlIChwYXRoLCBrZXksIHR5cGUsIHZhbHVlLCBleHBlY3RlZCkge1xuICB2YXIgYnVmID0ga2V5ICsgXCIgc2hvdWxkIGJlIFwiICsgZXhwZWN0ZWQgKyBcIiBidXQgXFxcIlwiICsga2V5ICsgXCIuXCIgKyB0eXBlICsgXCJcXFwiXCI7XG4gIGlmIChwYXRoLmxlbmd0aCA+IDApIHtcbiAgICBidWYgKz0gXCIgaW4gbW9kdWxlIFxcXCJcIiArIChwYXRoLmpvaW4oJy4nKSkgKyBcIlxcXCJcIjtcbiAgfVxuICBidWYgKz0gXCIgaXMgXCIgKyAoSlNPTi5zdHJpbmdpZnkodmFsdWUpKSArIFwiLlwiO1xuICByZXR1cm4gYnVmXG59XG5cbnZhciBWdWU7IC8vIGJpbmQgb24gaW5zdGFsbFxuXG52YXIgU3RvcmUgPSBmdW5jdGlvbiBTdG9yZSAob3B0aW9ucykge1xuICB2YXIgdGhpcyQxID0gdGhpcztcbiAgaWYgKCBvcHRpb25zID09PSB2b2lkIDAgKSBvcHRpb25zID0ge307XG5cbiAgLy8gQXV0byBpbnN0YWxsIGlmIGl0IGlzIG5vdCBkb25lIHlldCBhbmQgYHdpbmRvd2AgaGFzIGBWdWVgLlxuICAvLyBUbyBhbGxvdyB1c2VycyB0byBhdm9pZCBhdXRvLWluc3RhbGxhdGlvbiBpbiBzb21lIGNhc2VzLFxuICAvLyB0aGlzIGNvZGUgc2hvdWxkIGJlIHBsYWNlZCBoZXJlLiBTZWUgIzczMVxuICBpZiAoIVZ1ZSAmJiB0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyAmJiB3aW5kb3cuVnVlKSB7XG4gICAgaW5zdGFsbCh3aW5kb3cuVnVlKTtcbiAgfVxuXG4gIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgYXNzZXJ0KFZ1ZSwgXCJtdXN0IGNhbGwgVnVlLnVzZShWdWV4KSBiZWZvcmUgY3JlYXRpbmcgYSBzdG9yZSBpbnN0YW5jZS5cIik7XG4gICAgYXNzZXJ0KHR5cGVvZiBQcm9taXNlICE9PSAndW5kZWZpbmVkJywgXCJ2dWV4IHJlcXVpcmVzIGEgUHJvbWlzZSBwb2x5ZmlsbCBpbiB0aGlzIGJyb3dzZXIuXCIpO1xuICAgIGFzc2VydCh0aGlzIGluc3RhbmNlb2YgU3RvcmUsIFwiU3RvcmUgbXVzdCBiZSBjYWxsZWQgd2l0aCB0aGUgbmV3IG9wZXJhdG9yLlwiKTtcbiAgfVxuXG4gIHZhciBwbHVnaW5zID0gb3B0aW9ucy5wbHVnaW5zOyBpZiAoIHBsdWdpbnMgPT09IHZvaWQgMCApIHBsdWdpbnMgPSBbXTtcbiAgdmFyIHN0cmljdCA9IG9wdGlvbnMuc3RyaWN0OyBpZiAoIHN0cmljdCA9PT0gdm9pZCAwICkgc3RyaWN0ID0gZmFsc2U7XG5cbiAgdmFyIHN0YXRlID0gb3B0aW9ucy5zdGF0ZTsgaWYgKCBzdGF0ZSA9PT0gdm9pZCAwICkgc3RhdGUgPSB7fTtcbiAgaWYgKHR5cGVvZiBzdGF0ZSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIHN0YXRlID0gc3RhdGUoKSB8fCB7fTtcbiAgfVxuXG4gIC8vIHN0b3JlIGludGVybmFsIHN0YXRlXG4gIHRoaXMuX2NvbW1pdHRpbmcgPSBmYWxzZTtcbiAgdGhpcy5fYWN0aW9ucyA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG4gIHRoaXMuX2FjdGlvblN1YnNjcmliZXJzID0gW107XG4gIHRoaXMuX211dGF0aW9ucyA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG4gIHRoaXMuX3dyYXBwZWRHZXR0ZXJzID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbiAgdGhpcy5fbW9kdWxlcyA9IG5ldyBNb2R1bGVDb2xsZWN0aW9uKG9wdGlvbnMpO1xuICB0aGlzLl9tb2R1bGVzTmFtZXNwYWNlTWFwID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbiAgdGhpcy5fc3Vic2NyaWJlcnMgPSBbXTtcbiAgdGhpcy5fd2F0Y2hlclZNID0gbmV3IFZ1ZSgpO1xuXG4gIC8vIGJpbmQgY29tbWl0IGFuZCBkaXNwYXRjaCB0byBzZWxmXG4gIHZhciBzdG9yZSA9IHRoaXM7XG4gIHZhciByZWYgPSB0aGlzO1xuICB2YXIgZGlzcGF0Y2ggPSByZWYuZGlzcGF0Y2g7XG4gIHZhciBjb21taXQgPSByZWYuY29tbWl0O1xuICB0aGlzLmRpc3BhdGNoID0gZnVuY3Rpb24gYm91bmREaXNwYXRjaCAodHlwZSwgcGF5bG9hZCkge1xuICAgIHJldHVybiBkaXNwYXRjaC5jYWxsKHN0b3JlLCB0eXBlLCBwYXlsb2FkKVxuICB9O1xuICB0aGlzLmNvbW1pdCA9IGZ1bmN0aW9uIGJvdW5kQ29tbWl0ICh0eXBlLCBwYXlsb2FkLCBvcHRpb25zKSB7XG4gICAgcmV0dXJuIGNvbW1pdC5jYWxsKHN0b3JlLCB0eXBlLCBwYXlsb2FkLCBvcHRpb25zKVxuICB9O1xuXG4gIC8vIHN0cmljdCBtb2RlXG4gIHRoaXMuc3RyaWN0ID0gc3RyaWN0O1xuXG4gIC8vIGluaXQgcm9vdCBtb2R1bGUuXG4gIC8vIHRoaXMgYWxzbyByZWN1cnNpdmVseSByZWdpc3RlcnMgYWxsIHN1Yi1tb2R1bGVzXG4gIC8vIGFuZCBjb2xsZWN0cyBhbGwgbW9kdWxlIGdldHRlcnMgaW5zaWRlIHRoaXMuX3dyYXBwZWRHZXR0ZXJzXG4gIGluc3RhbGxNb2R1bGUodGhpcywgc3RhdGUsIFtdLCB0aGlzLl9tb2R1bGVzLnJvb3QpO1xuXG4gIC8vIGluaXRpYWxpemUgdGhlIHN0b3JlIHZtLCB3aGljaCBpcyByZXNwb25zaWJsZSBmb3IgdGhlIHJlYWN0aXZpdHlcbiAgLy8gKGFsc28gcmVnaXN0ZXJzIF93cmFwcGVkR2V0dGVycyBhcyBjb21wdXRlZCBwcm9wZXJ0aWVzKVxuICByZXNldFN0b3JlVk0odGhpcywgc3RhdGUpO1xuXG4gIC8vIGFwcGx5IHBsdWdpbnNcbiAgcGx1Z2lucy5mb3JFYWNoKGZ1bmN0aW9uIChwbHVnaW4pIHsgcmV0dXJuIHBsdWdpbih0aGlzJDEpOyB9KTtcblxuICBpZiAoVnVlLmNvbmZpZy5kZXZ0b29scykge1xuICAgIGRldnRvb2xQbHVnaW4odGhpcyk7XG4gIH1cbn07XG5cbnZhciBwcm90b3R5cGVBY2Nlc3NvcnMgPSB7IHN0YXRlOiB7IGNvbmZpZ3VyYWJsZTogdHJ1ZSB9IH07XG5cbnByb3RvdHlwZUFjY2Vzc29ycy5zdGF0ZS5nZXQgPSBmdW5jdGlvbiAoKSB7XG4gIHJldHVybiB0aGlzLl92bS5fZGF0YS4kJHN0YXRlXG59O1xuXG5wcm90b3R5cGVBY2Nlc3NvcnMuc3RhdGUuc2V0ID0gZnVuY3Rpb24gKHYpIHtcbiAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICBhc3NlcnQoZmFsc2UsIFwiVXNlIHN0b3JlLnJlcGxhY2VTdGF0ZSgpIHRvIGV4cGxpY2l0IHJlcGxhY2Ugc3RvcmUgc3RhdGUuXCIpO1xuICB9XG59O1xuXG5TdG9yZS5wcm90b3R5cGUuY29tbWl0ID0gZnVuY3Rpb24gY29tbWl0IChfdHlwZSwgX3BheWxvYWQsIF9vcHRpb25zKSB7XG4gICAgdmFyIHRoaXMkMSA9IHRoaXM7XG5cbiAgLy8gY2hlY2sgb2JqZWN0LXN0eWxlIGNvbW1pdFxuICB2YXIgcmVmID0gdW5pZnlPYmplY3RTdHlsZShfdHlwZSwgX3BheWxvYWQsIF9vcHRpb25zKTtcbiAgICB2YXIgdHlwZSA9IHJlZi50eXBlO1xuICAgIHZhciBwYXlsb2FkID0gcmVmLnBheWxvYWQ7XG4gICAgdmFyIG9wdGlvbnMgPSByZWYub3B0aW9ucztcblxuICB2YXIgbXV0YXRpb24gPSB7IHR5cGU6IHR5cGUsIHBheWxvYWQ6IHBheWxvYWQgfTtcbiAgdmFyIGVudHJ5ID0gdGhpcy5fbXV0YXRpb25zW3R5cGVdO1xuICBpZiAoIWVudHJ5KSB7XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoKFwiW3Z1ZXhdIHVua25vd24gbXV0YXRpb24gdHlwZTogXCIgKyB0eXBlKSk7XG4gICAgfVxuICAgIHJldHVyblxuICB9XG4gIHRoaXMuX3dpdGhDb21taXQoZnVuY3Rpb24gKCkge1xuICAgIGVudHJ5LmZvckVhY2goZnVuY3Rpb24gY29tbWl0SXRlcmF0b3IgKGhhbmRsZXIpIHtcbiAgICAgIGhhbmRsZXIocGF5bG9hZCk7XG4gICAgfSk7XG4gIH0pO1xuICB0aGlzLl9zdWJzY3JpYmVycy5mb3JFYWNoKGZ1bmN0aW9uIChzdWIpIHsgcmV0dXJuIHN1YihtdXRhdGlvbiwgdGhpcyQxLnN0YXRlKTsgfSk7XG5cbiAgaWYgKFxuICAgIHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiZcbiAgICBvcHRpb25zICYmIG9wdGlvbnMuc2lsZW50XG4gICkge1xuICAgIGNvbnNvbGUud2FybihcbiAgICAgIFwiW3Z1ZXhdIG11dGF0aW9uIHR5cGU6IFwiICsgdHlwZSArIFwiLiBTaWxlbnQgb3B0aW9uIGhhcyBiZWVuIHJlbW92ZWQuIFwiICtcbiAgICAgICdVc2UgdGhlIGZpbHRlciBmdW5jdGlvbmFsaXR5IGluIHRoZSB2dWUtZGV2dG9vbHMnXG4gICAgKTtcbiAgfVxufTtcblxuU3RvcmUucHJvdG90eXBlLmRpc3BhdGNoID0gZnVuY3Rpb24gZGlzcGF0Y2ggKF90eXBlLCBfcGF5bG9hZCkge1xuICAgIHZhciB0aGlzJDEgPSB0aGlzO1xuXG4gIC8vIGNoZWNrIG9iamVjdC1zdHlsZSBkaXNwYXRjaFxuICB2YXIgcmVmID0gdW5pZnlPYmplY3RTdHlsZShfdHlwZSwgX3BheWxvYWQpO1xuICAgIHZhciB0eXBlID0gcmVmLnR5cGU7XG4gICAgdmFyIHBheWxvYWQgPSByZWYucGF5bG9hZDtcblxuICB2YXIgYWN0aW9uID0geyB0eXBlOiB0eXBlLCBwYXlsb2FkOiBwYXlsb2FkIH07XG4gIHZhciBlbnRyeSA9IHRoaXMuX2FjdGlvbnNbdHlwZV07XG4gIGlmICghZW50cnkpIHtcbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgY29uc29sZS5lcnJvcigoXCJbdnVleF0gdW5rbm93biBhY3Rpb24gdHlwZTogXCIgKyB0eXBlKSk7XG4gICAgfVxuICAgIHJldHVyblxuICB9XG5cbiAgdGhpcy5fYWN0aW9uU3Vic2NyaWJlcnMuZm9yRWFjaChmdW5jdGlvbiAoc3ViKSB7IHJldHVybiBzdWIoYWN0aW9uLCB0aGlzJDEuc3RhdGUpOyB9KTtcblxuICByZXR1cm4gZW50cnkubGVuZ3RoID4gMVxuICAgID8gUHJvbWlzZS5hbGwoZW50cnkubWFwKGZ1bmN0aW9uIChoYW5kbGVyKSB7IHJldHVybiBoYW5kbGVyKHBheWxvYWQpOyB9KSlcbiAgICA6IGVudHJ5WzBdKHBheWxvYWQpXG59O1xuXG5TdG9yZS5wcm90b3R5cGUuc3Vic2NyaWJlID0gZnVuY3Rpb24gc3Vic2NyaWJlIChmbikge1xuICByZXR1cm4gZ2VuZXJpY1N1YnNjcmliZShmbiwgdGhpcy5fc3Vic2NyaWJlcnMpXG59O1xuXG5TdG9yZS5wcm90b3R5cGUuc3Vic2NyaWJlQWN0aW9uID0gZnVuY3Rpb24gc3Vic2NyaWJlQWN0aW9uIChmbikge1xuICByZXR1cm4gZ2VuZXJpY1N1YnNjcmliZShmbiwgdGhpcy5fYWN0aW9uU3Vic2NyaWJlcnMpXG59O1xuXG5TdG9yZS5wcm90b3R5cGUud2F0Y2ggPSBmdW5jdGlvbiB3YXRjaCAoZ2V0dGVyLCBjYiwgb3B0aW9ucykge1xuICAgIHZhciB0aGlzJDEgPSB0aGlzO1xuXG4gIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgYXNzZXJ0KHR5cGVvZiBnZXR0ZXIgPT09ICdmdW5jdGlvbicsIFwic3RvcmUud2F0Y2ggb25seSBhY2NlcHRzIGEgZnVuY3Rpb24uXCIpO1xuICB9XG4gIHJldHVybiB0aGlzLl93YXRjaGVyVk0uJHdhdGNoKGZ1bmN0aW9uICgpIHsgcmV0dXJuIGdldHRlcih0aGlzJDEuc3RhdGUsIHRoaXMkMS5nZXR0ZXJzKTsgfSwgY2IsIG9wdGlvbnMpXG59O1xuXG5TdG9yZS5wcm90b3R5cGUucmVwbGFjZVN0YXRlID0gZnVuY3Rpb24gcmVwbGFjZVN0YXRlIChzdGF0ZSkge1xuICAgIHZhciB0aGlzJDEgPSB0aGlzO1xuXG4gIHRoaXMuX3dpdGhDb21taXQoZnVuY3Rpb24gKCkge1xuICAgIHRoaXMkMS5fdm0uX2RhdGEuJCRzdGF0ZSA9IHN0YXRlO1xuICB9KTtcbn07XG5cblN0b3JlLnByb3RvdHlwZS5yZWdpc3Rlck1vZHVsZSA9IGZ1bmN0aW9uIHJlZ2lzdGVyTW9kdWxlIChwYXRoLCByYXdNb2R1bGUsIG9wdGlvbnMpIHtcbiAgICBpZiAoIG9wdGlvbnMgPT09IHZvaWQgMCApIG9wdGlvbnMgPSB7fTtcblxuICBpZiAodHlwZW9mIHBhdGggPT09ICdzdHJpbmcnKSB7IHBhdGggPSBbcGF0aF07IH1cblxuICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgIGFzc2VydChBcnJheS5pc0FycmF5KHBhdGgpLCBcIm1vZHVsZSBwYXRoIG11c3QgYmUgYSBzdHJpbmcgb3IgYW4gQXJyYXkuXCIpO1xuICAgIGFzc2VydChwYXRoLmxlbmd0aCA+IDAsICdjYW5ub3QgcmVnaXN0ZXIgdGhlIHJvb3QgbW9kdWxlIGJ5IHVzaW5nIHJlZ2lzdGVyTW9kdWxlLicpO1xuICB9XG5cbiAgdGhpcy5fbW9kdWxlcy5yZWdpc3RlcihwYXRoLCByYXdNb2R1bGUpO1xuICBpbnN0YWxsTW9kdWxlKHRoaXMsIHRoaXMuc3RhdGUsIHBhdGgsIHRoaXMuX21vZHVsZXMuZ2V0KHBhdGgpLCBvcHRpb25zLnByZXNlcnZlU3RhdGUpO1xuICAvLyByZXNldCBzdG9yZSB0byB1cGRhdGUgZ2V0dGVycy4uLlxuICByZXNldFN0b3JlVk0odGhpcywgdGhpcy5zdGF0ZSk7XG59O1xuXG5TdG9yZS5wcm90b3R5cGUudW5yZWdpc3Rlck1vZHVsZSA9IGZ1bmN0aW9uIHVucmVnaXN0ZXJNb2R1bGUgKHBhdGgpIHtcbiAgICB2YXIgdGhpcyQxID0gdGhpcztcblxuICBpZiAodHlwZW9mIHBhdGggPT09ICdzdHJpbmcnKSB7IHBhdGggPSBbcGF0aF07IH1cblxuICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgIGFzc2VydChBcnJheS5pc0FycmF5KHBhdGgpLCBcIm1vZHVsZSBwYXRoIG11c3QgYmUgYSBzdHJpbmcgb3IgYW4gQXJyYXkuXCIpO1xuICB9XG5cbiAgdGhpcy5fbW9kdWxlcy51bnJlZ2lzdGVyKHBhdGgpO1xuICB0aGlzLl93aXRoQ29tbWl0KGZ1bmN0aW9uICgpIHtcbiAgICB2YXIgcGFyZW50U3RhdGUgPSBnZXROZXN0ZWRTdGF0ZSh0aGlzJDEuc3RhdGUsIHBhdGguc2xpY2UoMCwgLTEpKTtcbiAgICBWdWUuZGVsZXRlKHBhcmVudFN0YXRlLCBwYXRoW3BhdGgubGVuZ3RoIC0gMV0pO1xuICB9KTtcbiAgcmVzZXRTdG9yZSh0aGlzKTtcbn07XG5cblN0b3JlLnByb3RvdHlwZS5ob3RVcGRhdGUgPSBmdW5jdGlvbiBob3RVcGRhdGUgKG5ld09wdGlvbnMpIHtcbiAgdGhpcy5fbW9kdWxlcy51cGRhdGUobmV3T3B0aW9ucyk7XG4gIHJlc2V0U3RvcmUodGhpcywgdHJ1ZSk7XG59O1xuXG5TdG9yZS5wcm90b3R5cGUuX3dpdGhDb21taXQgPSBmdW5jdGlvbiBfd2l0aENvbW1pdCAoZm4pIHtcbiAgdmFyIGNvbW1pdHRpbmcgPSB0aGlzLl9jb21taXR0aW5nO1xuICB0aGlzLl9jb21taXR0aW5nID0gdHJ1ZTtcbiAgZm4oKTtcbiAgdGhpcy5fY29tbWl0dGluZyA9IGNvbW1pdHRpbmc7XG59O1xuXG5PYmplY3QuZGVmaW5lUHJvcGVydGllcyggU3RvcmUucHJvdG90eXBlLCBwcm90b3R5cGVBY2Nlc3NvcnMgKTtcblxuZnVuY3Rpb24gZ2VuZXJpY1N1YnNjcmliZSAoZm4sIHN1YnMpIHtcbiAgaWYgKHN1YnMuaW5kZXhPZihmbikgPCAwKSB7XG4gICAgc3Vicy5wdXNoKGZuKTtcbiAgfVxuICByZXR1cm4gZnVuY3Rpb24gKCkge1xuICAgIHZhciBpID0gc3Vicy5pbmRleE9mKGZuKTtcbiAgICBpZiAoaSA+IC0xKSB7XG4gICAgICBzdWJzLnNwbGljZShpLCAxKTtcbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gcmVzZXRTdG9yZSAoc3RvcmUsIGhvdCkge1xuICBzdG9yZS5fYWN0aW9ucyA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG4gIHN0b3JlLl9tdXRhdGlvbnMgPSBPYmplY3QuY3JlYXRlKG51bGwpO1xuICBzdG9yZS5fd3JhcHBlZEdldHRlcnMgPSBPYmplY3QuY3JlYXRlKG51bGwpO1xuICBzdG9yZS5fbW9kdWxlc05hbWVzcGFjZU1hcCA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG4gIHZhciBzdGF0ZSA9IHN0b3JlLnN0YXRlO1xuICAvLyBpbml0IGFsbCBtb2R1bGVzXG4gIGluc3RhbGxNb2R1bGUoc3RvcmUsIHN0YXRlLCBbXSwgc3RvcmUuX21vZHVsZXMucm9vdCwgdHJ1ZSk7XG4gIC8vIHJlc2V0IHZtXG4gIHJlc2V0U3RvcmVWTShzdG9yZSwgc3RhdGUsIGhvdCk7XG59XG5cbmZ1bmN0aW9uIHJlc2V0U3RvcmVWTSAoc3RvcmUsIHN0YXRlLCBob3QpIHtcbiAgdmFyIG9sZFZtID0gc3RvcmUuX3ZtO1xuXG4gIC8vIGJpbmQgc3RvcmUgcHVibGljIGdldHRlcnNcbiAgc3RvcmUuZ2V0dGVycyA9IHt9O1xuICB2YXIgd3JhcHBlZEdldHRlcnMgPSBzdG9yZS5fd3JhcHBlZEdldHRlcnM7XG4gIHZhciBjb21wdXRlZCA9IHt9O1xuICBmb3JFYWNoVmFsdWUod3JhcHBlZEdldHRlcnMsIGZ1bmN0aW9uIChmbiwga2V5KSB7XG4gICAgLy8gdXNlIGNvbXB1dGVkIHRvIGxldmVyYWdlIGl0cyBsYXp5LWNhY2hpbmcgbWVjaGFuaXNtXG4gICAgY29tcHV0ZWRba2V5XSA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuIGZuKHN0b3JlKTsgfTtcbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoc3RvcmUuZ2V0dGVycywga2V5LCB7XG4gICAgICBnZXQ6IGZ1bmN0aW9uICgpIHsgcmV0dXJuIHN0b3JlLl92bVtrZXldOyB9LFxuICAgICAgZW51bWVyYWJsZTogdHJ1ZSAvLyBmb3IgbG9jYWwgZ2V0dGVyc1xuICAgIH0pO1xuICB9KTtcblxuICAvLyB1c2UgYSBWdWUgaW5zdGFuY2UgdG8gc3RvcmUgdGhlIHN0YXRlIHRyZWVcbiAgLy8gc3VwcHJlc3Mgd2FybmluZ3MganVzdCBpbiBjYXNlIHRoZSB1c2VyIGhhcyBhZGRlZFxuICAvLyBzb21lIGZ1bmt5IGdsb2JhbCBtaXhpbnNcbiAgdmFyIHNpbGVudCA9IFZ1ZS5jb25maWcuc2lsZW50O1xuICBWdWUuY29uZmlnLnNpbGVudCA9IHRydWU7XG4gIHN0b3JlLl92bSA9IG5ldyBWdWUoe1xuICAgIGRhdGE6IHtcbiAgICAgICQkc3RhdGU6IHN0YXRlXG4gICAgfSxcbiAgICBjb21wdXRlZDogY29tcHV0ZWRcbiAgfSk7XG4gIFZ1ZS5jb25maWcuc2lsZW50ID0gc2lsZW50O1xuXG4gIC8vIGVuYWJsZSBzdHJpY3QgbW9kZSBmb3IgbmV3IHZtXG4gIGlmIChzdG9yZS5zdHJpY3QpIHtcbiAgICBlbmFibGVTdHJpY3RNb2RlKHN0b3JlKTtcbiAgfVxuXG4gIGlmIChvbGRWbSkge1xuICAgIGlmIChob3QpIHtcbiAgICAgIC8vIGRpc3BhdGNoIGNoYW5nZXMgaW4gYWxsIHN1YnNjcmliZWQgd2F0Y2hlcnNcbiAgICAgIC8vIHRvIGZvcmNlIGdldHRlciByZS1ldmFsdWF0aW9uIGZvciBob3QgcmVsb2FkaW5nLlxuICAgICAgc3RvcmUuX3dpdGhDb21taXQoZnVuY3Rpb24gKCkge1xuICAgICAgICBvbGRWbS5fZGF0YS4kJHN0YXRlID0gbnVsbDtcbiAgICAgIH0pO1xuICAgIH1cbiAgICBWdWUubmV4dFRpY2soZnVuY3Rpb24gKCkgeyByZXR1cm4gb2xkVm0uJGRlc3Ryb3koKTsgfSk7XG4gIH1cbn1cblxuZnVuY3Rpb24gaW5zdGFsbE1vZHVsZSAoc3RvcmUsIHJvb3RTdGF0ZSwgcGF0aCwgbW9kdWxlLCBob3QpIHtcbiAgdmFyIGlzUm9vdCA9ICFwYXRoLmxlbmd0aDtcbiAgdmFyIG5hbWVzcGFjZSA9IHN0b3JlLl9tb2R1bGVzLmdldE5hbWVzcGFjZShwYXRoKTtcblxuICAvLyByZWdpc3RlciBpbiBuYW1lc3BhY2UgbWFwXG4gIGlmIChtb2R1bGUubmFtZXNwYWNlZCkge1xuICAgIHN0b3JlLl9tb2R1bGVzTmFtZXNwYWNlTWFwW25hbWVzcGFjZV0gPSBtb2R1bGU7XG4gIH1cblxuICAvLyBzZXQgc3RhdGVcbiAgaWYgKCFpc1Jvb3QgJiYgIWhvdCkge1xuICAgIHZhciBwYXJlbnRTdGF0ZSA9IGdldE5lc3RlZFN0YXRlKHJvb3RTdGF0ZSwgcGF0aC5zbGljZSgwLCAtMSkpO1xuICAgIHZhciBtb2R1bGVOYW1lID0gcGF0aFtwYXRoLmxlbmd0aCAtIDFdO1xuICAgIHN0b3JlLl93aXRoQ29tbWl0KGZ1bmN0aW9uICgpIHtcbiAgICAgIFZ1ZS5zZXQocGFyZW50U3RhdGUsIG1vZHVsZU5hbWUsIG1vZHVsZS5zdGF0ZSk7XG4gICAgfSk7XG4gIH1cblxuICB2YXIgbG9jYWwgPSBtb2R1bGUuY29udGV4dCA9IG1ha2VMb2NhbENvbnRleHQoc3RvcmUsIG5hbWVzcGFjZSwgcGF0aCk7XG5cbiAgbW9kdWxlLmZvckVhY2hNdXRhdGlvbihmdW5jdGlvbiAobXV0YXRpb24sIGtleSkge1xuICAgIHZhciBuYW1lc3BhY2VkVHlwZSA9IG5hbWVzcGFjZSArIGtleTtcbiAgICByZWdpc3Rlck11dGF0aW9uKHN0b3JlLCBuYW1lc3BhY2VkVHlwZSwgbXV0YXRpb24sIGxvY2FsKTtcbiAgfSk7XG5cbiAgbW9kdWxlLmZvckVhY2hBY3Rpb24oZnVuY3Rpb24gKGFjdGlvbiwga2V5KSB7XG4gICAgdmFyIHR5cGUgPSBhY3Rpb24ucm9vdCA/IGtleSA6IG5hbWVzcGFjZSArIGtleTtcbiAgICB2YXIgaGFuZGxlciA9IGFjdGlvbi5oYW5kbGVyIHx8IGFjdGlvbjtcbiAgICByZWdpc3RlckFjdGlvbihzdG9yZSwgdHlwZSwgaGFuZGxlciwgbG9jYWwpO1xuICB9KTtcblxuICBtb2R1bGUuZm9yRWFjaEdldHRlcihmdW5jdGlvbiAoZ2V0dGVyLCBrZXkpIHtcbiAgICB2YXIgbmFtZXNwYWNlZFR5cGUgPSBuYW1lc3BhY2UgKyBrZXk7XG4gICAgcmVnaXN0ZXJHZXR0ZXIoc3RvcmUsIG5hbWVzcGFjZWRUeXBlLCBnZXR0ZXIsIGxvY2FsKTtcbiAgfSk7XG5cbiAgbW9kdWxlLmZvckVhY2hDaGlsZChmdW5jdGlvbiAoY2hpbGQsIGtleSkge1xuICAgIGluc3RhbGxNb2R1bGUoc3RvcmUsIHJvb3RTdGF0ZSwgcGF0aC5jb25jYXQoa2V5KSwgY2hpbGQsIGhvdCk7XG4gIH0pO1xufVxuXG4vKipcbiAqIG1ha2UgbG9jYWxpemVkIGRpc3BhdGNoLCBjb21taXQsIGdldHRlcnMgYW5kIHN0YXRlXG4gKiBpZiB0aGVyZSBpcyBubyBuYW1lc3BhY2UsIGp1c3QgdXNlIHJvb3Qgb25lc1xuICovXG5mdW5jdGlvbiBtYWtlTG9jYWxDb250ZXh0IChzdG9yZSwgbmFtZXNwYWNlLCBwYXRoKSB7XG4gIHZhciBub05hbWVzcGFjZSA9IG5hbWVzcGFjZSA9PT0gJyc7XG5cbiAgdmFyIGxvY2FsID0ge1xuICAgIGRpc3BhdGNoOiBub05hbWVzcGFjZSA/IHN0b3JlLmRpc3BhdGNoIDogZnVuY3Rpb24gKF90eXBlLCBfcGF5bG9hZCwgX29wdGlvbnMpIHtcbiAgICAgIHZhciBhcmdzID0gdW5pZnlPYmplY3RTdHlsZShfdHlwZSwgX3BheWxvYWQsIF9vcHRpb25zKTtcbiAgICAgIHZhciBwYXlsb2FkID0gYXJncy5wYXlsb2FkO1xuICAgICAgdmFyIG9wdGlvbnMgPSBhcmdzLm9wdGlvbnM7XG4gICAgICB2YXIgdHlwZSA9IGFyZ3MudHlwZTtcblxuICAgICAgaWYgKCFvcHRpb25zIHx8ICFvcHRpb25zLnJvb3QpIHtcbiAgICAgICAgdHlwZSA9IG5hbWVzcGFjZSArIHR5cGU7XG4gICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmICFzdG9yZS5fYWN0aW9uc1t0eXBlXSkge1xuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoKFwiW3Z1ZXhdIHVua25vd24gbG9jYWwgYWN0aW9uIHR5cGU6IFwiICsgKGFyZ3MudHlwZSkgKyBcIiwgZ2xvYmFsIHR5cGU6IFwiICsgdHlwZSkpO1xuICAgICAgICAgIHJldHVyblxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBzdG9yZS5kaXNwYXRjaCh0eXBlLCBwYXlsb2FkKVxuICAgIH0sXG5cbiAgICBjb21taXQ6IG5vTmFtZXNwYWNlID8gc3RvcmUuY29tbWl0IDogZnVuY3Rpb24gKF90eXBlLCBfcGF5bG9hZCwgX29wdGlvbnMpIHtcbiAgICAgIHZhciBhcmdzID0gdW5pZnlPYmplY3RTdHlsZShfdHlwZSwgX3BheWxvYWQsIF9vcHRpb25zKTtcbiAgICAgIHZhciBwYXlsb2FkID0gYXJncy5wYXlsb2FkO1xuICAgICAgdmFyIG9wdGlvbnMgPSBhcmdzLm9wdGlvbnM7XG4gICAgICB2YXIgdHlwZSA9IGFyZ3MudHlwZTtcblxuICAgICAgaWYgKCFvcHRpb25zIHx8ICFvcHRpb25zLnJvb3QpIHtcbiAgICAgICAgdHlwZSA9IG5hbWVzcGFjZSArIHR5cGU7XG4gICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmICFzdG9yZS5fbXV0YXRpb25zW3R5cGVdKSB7XG4gICAgICAgICAgY29uc29sZS5lcnJvcigoXCJbdnVleF0gdW5rbm93biBsb2NhbCBtdXRhdGlvbiB0eXBlOiBcIiArIChhcmdzLnR5cGUpICsgXCIsIGdsb2JhbCB0eXBlOiBcIiArIHR5cGUpKTtcbiAgICAgICAgICByZXR1cm5cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBzdG9yZS5jb21taXQodHlwZSwgcGF5bG9hZCwgb3B0aW9ucyk7XG4gICAgfVxuICB9O1xuXG4gIC8vIGdldHRlcnMgYW5kIHN0YXRlIG9iamVjdCBtdXN0IGJlIGdvdHRlbiBsYXppbHlcbiAgLy8gYmVjYXVzZSB0aGV5IHdpbGwgYmUgY2hhbmdlZCBieSB2bSB1cGRhdGVcbiAgT2JqZWN0LmRlZmluZVByb3BlcnRpZXMobG9jYWwsIHtcbiAgICBnZXR0ZXJzOiB7XG4gICAgICBnZXQ6IG5vTmFtZXNwYWNlXG4gICAgICAgID8gZnVuY3Rpb24gKCkgeyByZXR1cm4gc3RvcmUuZ2V0dGVyczsgfVxuICAgICAgICA6IGZ1bmN0aW9uICgpIHsgcmV0dXJuIG1ha2VMb2NhbEdldHRlcnMoc3RvcmUsIG5hbWVzcGFjZSk7IH1cbiAgICB9LFxuICAgIHN0YXRlOiB7XG4gICAgICBnZXQ6IGZ1bmN0aW9uICgpIHsgcmV0dXJuIGdldE5lc3RlZFN0YXRlKHN0b3JlLnN0YXRlLCBwYXRoKTsgfVxuICAgIH1cbiAgfSk7XG5cbiAgcmV0dXJuIGxvY2FsXG59XG5cbmZ1bmN0aW9uIG1ha2VMb2NhbEdldHRlcnMgKHN0b3JlLCBuYW1lc3BhY2UpIHtcbiAgdmFyIGdldHRlcnNQcm94eSA9IHt9O1xuXG4gIHZhciBzcGxpdFBvcyA9IG5hbWVzcGFjZS5sZW5ndGg7XG4gIE9iamVjdC5rZXlzKHN0b3JlLmdldHRlcnMpLmZvckVhY2goZnVuY3Rpb24gKHR5cGUpIHtcbiAgICAvLyBza2lwIGlmIHRoZSB0YXJnZXQgZ2V0dGVyIGlzIG5vdCBtYXRjaCB0aGlzIG5hbWVzcGFjZVxuICAgIGlmICh0eXBlLnNsaWNlKDAsIHNwbGl0UG9zKSAhPT0gbmFtZXNwYWNlKSB7IHJldHVybiB9XG5cbiAgICAvLyBleHRyYWN0IGxvY2FsIGdldHRlciB0eXBlXG4gICAgdmFyIGxvY2FsVHlwZSA9IHR5cGUuc2xpY2Uoc3BsaXRQb3MpO1xuXG4gICAgLy8gQWRkIGEgcG9ydCB0byB0aGUgZ2V0dGVycyBwcm94eS5cbiAgICAvLyBEZWZpbmUgYXMgZ2V0dGVyIHByb3BlcnR5IGJlY2F1c2VcbiAgICAvLyB3ZSBkbyBub3Qgd2FudCB0byBldmFsdWF0ZSB0aGUgZ2V0dGVycyBpbiB0aGlzIHRpbWUuXG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGdldHRlcnNQcm94eSwgbG9jYWxUeXBlLCB7XG4gICAgICBnZXQ6IGZ1bmN0aW9uICgpIHsgcmV0dXJuIHN0b3JlLmdldHRlcnNbdHlwZV07IH0sXG4gICAgICBlbnVtZXJhYmxlOiB0cnVlXG4gICAgfSk7XG4gIH0pO1xuXG4gIHJldHVybiBnZXR0ZXJzUHJveHlcbn1cblxuZnVuY3Rpb24gcmVnaXN0ZXJNdXRhdGlvbiAoc3RvcmUsIHR5cGUsIGhhbmRsZXIsIGxvY2FsKSB7XG4gIHZhciBlbnRyeSA9IHN0b3JlLl9tdXRhdGlvbnNbdHlwZV0gfHwgKHN0b3JlLl9tdXRhdGlvbnNbdHlwZV0gPSBbXSk7XG4gIGVudHJ5LnB1c2goZnVuY3Rpb24gd3JhcHBlZE11dGF0aW9uSGFuZGxlciAocGF5bG9hZCkge1xuICAgIGhhbmRsZXIuY2FsbChzdG9yZSwgbG9jYWwuc3RhdGUsIHBheWxvYWQpO1xuICB9KTtcbn1cblxuZnVuY3Rpb24gcmVnaXN0ZXJBY3Rpb24gKHN0b3JlLCB0eXBlLCBoYW5kbGVyLCBsb2NhbCkge1xuICB2YXIgZW50cnkgPSBzdG9yZS5fYWN0aW9uc1t0eXBlXSB8fCAoc3RvcmUuX2FjdGlvbnNbdHlwZV0gPSBbXSk7XG4gIGVudHJ5LnB1c2goZnVuY3Rpb24gd3JhcHBlZEFjdGlvbkhhbmRsZXIgKHBheWxvYWQsIGNiKSB7XG4gICAgdmFyIHJlcyA9IGhhbmRsZXIuY2FsbChzdG9yZSwge1xuICAgICAgZGlzcGF0Y2g6IGxvY2FsLmRpc3BhdGNoLFxuICAgICAgY29tbWl0OiBsb2NhbC5jb21taXQsXG4gICAgICBnZXR0ZXJzOiBsb2NhbC5nZXR0ZXJzLFxuICAgICAgc3RhdGU6IGxvY2FsLnN0YXRlLFxuICAgICAgcm9vdEdldHRlcnM6IHN0b3JlLmdldHRlcnMsXG4gICAgICByb290U3RhdGU6IHN0b3JlLnN0YXRlXG4gICAgfSwgcGF5bG9hZCwgY2IpO1xuICAgIGlmICghaXNQcm9taXNlKHJlcykpIHtcbiAgICAgIHJlcyA9IFByb21pc2UucmVzb2x2ZShyZXMpO1xuICAgIH1cbiAgICBpZiAoc3RvcmUuX2RldnRvb2xIb29rKSB7XG4gICAgICByZXR1cm4gcmVzLmNhdGNoKGZ1bmN0aW9uIChlcnIpIHtcbiAgICAgICAgc3RvcmUuX2RldnRvb2xIb29rLmVtaXQoJ3Z1ZXg6ZXJyb3InLCBlcnIpO1xuICAgICAgICB0aHJvdyBlcnJcbiAgICAgIH0pXG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiByZXNcbiAgICB9XG4gIH0pO1xufVxuXG5mdW5jdGlvbiByZWdpc3RlckdldHRlciAoc3RvcmUsIHR5cGUsIHJhd0dldHRlciwgbG9jYWwpIHtcbiAgaWYgKHN0b3JlLl93cmFwcGVkR2V0dGVyc1t0eXBlXSkge1xuICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICBjb25zb2xlLmVycm9yKChcIlt2dWV4XSBkdXBsaWNhdGUgZ2V0dGVyIGtleTogXCIgKyB0eXBlKSk7XG4gICAgfVxuICAgIHJldHVyblxuICB9XG4gIHN0b3JlLl93cmFwcGVkR2V0dGVyc1t0eXBlXSA9IGZ1bmN0aW9uIHdyYXBwZWRHZXR0ZXIgKHN0b3JlKSB7XG4gICAgcmV0dXJuIHJhd0dldHRlcihcbiAgICAgIGxvY2FsLnN0YXRlLCAvLyBsb2NhbCBzdGF0ZVxuICAgICAgbG9jYWwuZ2V0dGVycywgLy8gbG9jYWwgZ2V0dGVyc1xuICAgICAgc3RvcmUuc3RhdGUsIC8vIHJvb3Qgc3RhdGVcbiAgICAgIHN0b3JlLmdldHRlcnMgLy8gcm9vdCBnZXR0ZXJzXG4gICAgKVxuICB9O1xufVxuXG5mdW5jdGlvbiBlbmFibGVTdHJpY3RNb2RlIChzdG9yZSkge1xuICBzdG9yZS5fdm0uJHdhdGNoKGZ1bmN0aW9uICgpIHsgcmV0dXJuIHRoaXMuX2RhdGEuJCRzdGF0ZSB9LCBmdW5jdGlvbiAoKSB7XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgIGFzc2VydChzdG9yZS5fY29tbWl0dGluZywgXCJEbyBub3QgbXV0YXRlIHZ1ZXggc3RvcmUgc3RhdGUgb3V0c2lkZSBtdXRhdGlvbiBoYW5kbGVycy5cIik7XG4gICAgfVxuICB9LCB7IGRlZXA6IHRydWUsIHN5bmM6IHRydWUgfSk7XG59XG5cbmZ1bmN0aW9uIGdldE5lc3RlZFN0YXRlIChzdGF0ZSwgcGF0aCkge1xuICByZXR1cm4gcGF0aC5sZW5ndGhcbiAgICA/IHBhdGgucmVkdWNlKGZ1bmN0aW9uIChzdGF0ZSwga2V5KSB7IHJldHVybiBzdGF0ZVtrZXldOyB9LCBzdGF0ZSlcbiAgICA6IHN0YXRlXG59XG5cbmZ1bmN0aW9uIHVuaWZ5T2JqZWN0U3R5bGUgKHR5cGUsIHBheWxvYWQsIG9wdGlvbnMpIHtcbiAgaWYgKGlzT2JqZWN0KHR5cGUpICYmIHR5cGUudHlwZSkge1xuICAgIG9wdGlvbnMgPSBwYXlsb2FkO1xuICAgIHBheWxvYWQgPSB0eXBlO1xuICAgIHR5cGUgPSB0eXBlLnR5cGU7XG4gIH1cblxuICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgIGFzc2VydCh0eXBlb2YgdHlwZSA9PT0gJ3N0cmluZycsIChcIkV4cGVjdHMgc3RyaW5nIGFzIHRoZSB0eXBlLCBidXQgZm91bmQgXCIgKyAodHlwZW9mIHR5cGUpICsgXCIuXCIpKTtcbiAgfVxuXG4gIHJldHVybiB7IHR5cGU6IHR5cGUsIHBheWxvYWQ6IHBheWxvYWQsIG9wdGlvbnM6IG9wdGlvbnMgfVxufVxuXG5mdW5jdGlvbiBpbnN0YWxsIChfVnVlKSB7XG4gIGlmIChWdWUgJiYgX1Z1ZSA9PT0gVnVlKSB7XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoXG4gICAgICAgICdbdnVleF0gYWxyZWFkeSBpbnN0YWxsZWQuIFZ1ZS51c2UoVnVleCkgc2hvdWxkIGJlIGNhbGxlZCBvbmx5IG9uY2UuJ1xuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuXG4gIH1cbiAgVnVlID0gX1Z1ZTtcbiAgYXBwbHlNaXhpbihWdWUpO1xufVxuXG52YXIgbWFwU3RhdGUgPSBub3JtYWxpemVOYW1lc3BhY2UoZnVuY3Rpb24gKG5hbWVzcGFjZSwgc3RhdGVzKSB7XG4gIHZhciByZXMgPSB7fTtcbiAgbm9ybWFsaXplTWFwKHN0YXRlcykuZm9yRWFjaChmdW5jdGlvbiAocmVmKSB7XG4gICAgdmFyIGtleSA9IHJlZi5rZXk7XG4gICAgdmFyIHZhbCA9IHJlZi52YWw7XG5cbiAgICByZXNba2V5XSA9IGZ1bmN0aW9uIG1hcHBlZFN0YXRlICgpIHtcbiAgICAgIHZhciBzdGF0ZSA9IHRoaXMuJHN0b3JlLnN0YXRlO1xuICAgICAgdmFyIGdldHRlcnMgPSB0aGlzLiRzdG9yZS5nZXR0ZXJzO1xuICAgICAgaWYgKG5hbWVzcGFjZSkge1xuICAgICAgICB2YXIgbW9kdWxlID0gZ2V0TW9kdWxlQnlOYW1lc3BhY2UodGhpcy4kc3RvcmUsICdtYXBTdGF0ZScsIG5hbWVzcGFjZSk7XG4gICAgICAgIGlmICghbW9kdWxlKSB7XG4gICAgICAgICAgcmV0dXJuXG4gICAgICAgIH1cbiAgICAgICAgc3RhdGUgPSBtb2R1bGUuY29udGV4dC5zdGF0ZTtcbiAgICAgICAgZ2V0dGVycyA9IG1vZHVsZS5jb250ZXh0LmdldHRlcnM7XG4gICAgICB9XG4gICAgICByZXR1cm4gdHlwZW9mIHZhbCA9PT0gJ2Z1bmN0aW9uJ1xuICAgICAgICA/IHZhbC5jYWxsKHRoaXMsIHN0YXRlLCBnZXR0ZXJzKVxuICAgICAgICA6IHN0YXRlW3ZhbF1cbiAgICB9O1xuICAgIC8vIG1hcmsgdnVleCBnZXR0ZXIgZm9yIGRldnRvb2xzXG4gICAgcmVzW2tleV0udnVleCA9IHRydWU7XG4gIH0pO1xuICByZXR1cm4gcmVzXG59KTtcblxudmFyIG1hcE11dGF0aW9ucyA9IG5vcm1hbGl6ZU5hbWVzcGFjZShmdW5jdGlvbiAobmFtZXNwYWNlLCBtdXRhdGlvbnMpIHtcbiAgdmFyIHJlcyA9IHt9O1xuICBub3JtYWxpemVNYXAobXV0YXRpb25zKS5mb3JFYWNoKGZ1bmN0aW9uIChyZWYpIHtcbiAgICB2YXIga2V5ID0gcmVmLmtleTtcbiAgICB2YXIgdmFsID0gcmVmLnZhbDtcblxuICAgIHJlc1trZXldID0gZnVuY3Rpb24gbWFwcGVkTXV0YXRpb24gKCkge1xuICAgICAgdmFyIGFyZ3MgPSBbXSwgbGVuID0gYXJndW1lbnRzLmxlbmd0aDtcbiAgICAgIHdoaWxlICggbGVuLS0gKSBhcmdzWyBsZW4gXSA9IGFyZ3VtZW50c1sgbGVuIF07XG5cbiAgICAgIHZhciBjb21taXQgPSB0aGlzLiRzdG9yZS5jb21taXQ7XG4gICAgICBpZiAobmFtZXNwYWNlKSB7XG4gICAgICAgIHZhciBtb2R1bGUgPSBnZXRNb2R1bGVCeU5hbWVzcGFjZSh0aGlzLiRzdG9yZSwgJ21hcE11dGF0aW9ucycsIG5hbWVzcGFjZSk7XG4gICAgICAgIGlmICghbW9kdWxlKSB7XG4gICAgICAgICAgcmV0dXJuXG4gICAgICAgIH1cbiAgICAgICAgY29tbWl0ID0gbW9kdWxlLmNvbnRleHQuY29tbWl0O1xuICAgICAgfVxuICAgICAgcmV0dXJuIHR5cGVvZiB2YWwgPT09ICdmdW5jdGlvbidcbiAgICAgICAgPyB2YWwuYXBwbHkodGhpcywgW2NvbW1pdF0uY29uY2F0KGFyZ3MpKVxuICAgICAgICA6IGNvbW1pdC5hcHBseSh0aGlzLiRzdG9yZSwgW3ZhbF0uY29uY2F0KGFyZ3MpKVxuICAgIH07XG4gIH0pO1xuICByZXR1cm4gcmVzXG59KTtcblxudmFyIG1hcEdldHRlcnMgPSBub3JtYWxpemVOYW1lc3BhY2UoZnVuY3Rpb24gKG5hbWVzcGFjZSwgZ2V0dGVycykge1xuICB2YXIgcmVzID0ge307XG4gIG5vcm1hbGl6ZU1hcChnZXR0ZXJzKS5mb3JFYWNoKGZ1bmN0aW9uIChyZWYpIHtcbiAgICB2YXIga2V5ID0gcmVmLmtleTtcbiAgICB2YXIgdmFsID0gcmVmLnZhbDtcblxuICAgIHZhbCA9IG5hbWVzcGFjZSArIHZhbDtcbiAgICByZXNba2V5XSA9IGZ1bmN0aW9uIG1hcHBlZEdldHRlciAoKSB7XG4gICAgICBpZiAobmFtZXNwYWNlICYmICFnZXRNb2R1bGVCeU5hbWVzcGFjZSh0aGlzLiRzdG9yZSwgJ21hcEdldHRlcnMnLCBuYW1lc3BhY2UpKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgISh2YWwgaW4gdGhpcy4kc3RvcmUuZ2V0dGVycykpIHtcbiAgICAgICAgY29uc29sZS5lcnJvcigoXCJbdnVleF0gdW5rbm93biBnZXR0ZXI6IFwiICsgdmFsKSk7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuICAgICAgcmV0dXJuIHRoaXMuJHN0b3JlLmdldHRlcnNbdmFsXVxuICAgIH07XG4gICAgLy8gbWFyayB2dWV4IGdldHRlciBmb3IgZGV2dG9vbHNcbiAgICByZXNba2V5XS52dWV4ID0gdHJ1ZTtcbiAgfSk7XG4gIHJldHVybiByZXNcbn0pO1xuXG52YXIgbWFwQWN0aW9ucyA9IG5vcm1hbGl6ZU5hbWVzcGFjZShmdW5jdGlvbiAobmFtZXNwYWNlLCBhY3Rpb25zKSB7XG4gIHZhciByZXMgPSB7fTtcbiAgbm9ybWFsaXplTWFwKGFjdGlvbnMpLmZvckVhY2goZnVuY3Rpb24gKHJlZikge1xuICAgIHZhciBrZXkgPSByZWYua2V5O1xuICAgIHZhciB2YWwgPSByZWYudmFsO1xuXG4gICAgcmVzW2tleV0gPSBmdW5jdGlvbiBtYXBwZWRBY3Rpb24gKCkge1xuICAgICAgdmFyIGFyZ3MgPSBbXSwgbGVuID0gYXJndW1lbnRzLmxlbmd0aDtcbiAgICAgIHdoaWxlICggbGVuLS0gKSBhcmdzWyBsZW4gXSA9IGFyZ3VtZW50c1sgbGVuIF07XG5cbiAgICAgIHZhciBkaXNwYXRjaCA9IHRoaXMuJHN0b3JlLmRpc3BhdGNoO1xuICAgICAgaWYgKG5hbWVzcGFjZSkge1xuICAgICAgICB2YXIgbW9kdWxlID0gZ2V0TW9kdWxlQnlOYW1lc3BhY2UodGhpcy4kc3RvcmUsICdtYXBBY3Rpb25zJywgbmFtZXNwYWNlKTtcbiAgICAgICAgaWYgKCFtb2R1bGUpIHtcbiAgICAgICAgICByZXR1cm5cbiAgICAgICAgfVxuICAgICAgICBkaXNwYXRjaCA9IG1vZHVsZS5jb250ZXh0LmRpc3BhdGNoO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHR5cGVvZiB2YWwgPT09ICdmdW5jdGlvbidcbiAgICAgICAgPyB2YWwuYXBwbHkodGhpcywgW2Rpc3BhdGNoXS5jb25jYXQoYXJncykpXG4gICAgICAgIDogZGlzcGF0Y2guYXBwbHkodGhpcy4kc3RvcmUsIFt2YWxdLmNvbmNhdChhcmdzKSlcbiAgICB9O1xuICB9KTtcbiAgcmV0dXJuIHJlc1xufSk7XG5cbnZhciBjcmVhdGVOYW1lc3BhY2VkSGVscGVycyA9IGZ1bmN0aW9uIChuYW1lc3BhY2UpIHsgcmV0dXJuICh7XG4gIG1hcFN0YXRlOiBtYXBTdGF0ZS5iaW5kKG51bGwsIG5hbWVzcGFjZSksXG4gIG1hcEdldHRlcnM6IG1hcEdldHRlcnMuYmluZChudWxsLCBuYW1lc3BhY2UpLFxuICBtYXBNdXRhdGlvbnM6IG1hcE11dGF0aW9ucy5iaW5kKG51bGwsIG5hbWVzcGFjZSksXG4gIG1hcEFjdGlvbnM6IG1hcEFjdGlvbnMuYmluZChudWxsLCBuYW1lc3BhY2UpXG59KTsgfTtcblxuZnVuY3Rpb24gbm9ybWFsaXplTWFwIChtYXApIHtcbiAgcmV0dXJuIEFycmF5LmlzQXJyYXkobWFwKVxuICAgID8gbWFwLm1hcChmdW5jdGlvbiAoa2V5KSB7IHJldHVybiAoeyBrZXk6IGtleSwgdmFsOiBrZXkgfSk7IH0pXG4gICAgOiBPYmplY3Qua2V5cyhtYXApLm1hcChmdW5jdGlvbiAoa2V5KSB7IHJldHVybiAoeyBrZXk6IGtleSwgdmFsOiBtYXBba2V5XSB9KTsgfSlcbn1cblxuZnVuY3Rpb24gbm9ybWFsaXplTmFtZXNwYWNlIChmbikge1xuICByZXR1cm4gZnVuY3Rpb24gKG5hbWVzcGFjZSwgbWFwKSB7XG4gICAgaWYgKHR5cGVvZiBuYW1lc3BhY2UgIT09ICdzdHJpbmcnKSB7XG4gICAgICBtYXAgPSBuYW1lc3BhY2U7XG4gICAgICBuYW1lc3BhY2UgPSAnJztcbiAgICB9IGVsc2UgaWYgKG5hbWVzcGFjZS5jaGFyQXQobmFtZXNwYWNlLmxlbmd0aCAtIDEpICE9PSAnLycpIHtcbiAgICAgIG5hbWVzcGFjZSArPSAnLyc7XG4gICAgfVxuICAgIHJldHVybiBmbihuYW1lc3BhY2UsIG1hcClcbiAgfVxufVxuXG5mdW5jdGlvbiBnZXRNb2R1bGVCeU5hbWVzcGFjZSAoc3RvcmUsIGhlbHBlciwgbmFtZXNwYWNlKSB7XG4gIHZhciBtb2R1bGUgPSBzdG9yZS5fbW9kdWxlc05hbWVzcGFjZU1hcFtuYW1lc3BhY2VdO1xuICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiAhbW9kdWxlKSB7XG4gICAgY29uc29sZS5lcnJvcigoXCJbdnVleF0gbW9kdWxlIG5hbWVzcGFjZSBub3QgZm91bmQgaW4gXCIgKyBoZWxwZXIgKyBcIigpOiBcIiArIG5hbWVzcGFjZSkpO1xuICB9XG4gIHJldHVybiBtb2R1bGVcbn1cblxudmFyIGluZGV4X2VzbSA9IHtcbiAgU3RvcmU6IFN0b3JlLFxuICBpbnN0YWxsOiBpbnN0YWxsLFxuICB2ZXJzaW9uOiAnMy4wLjEnLFxuICBtYXBTdGF0ZTogbWFwU3RhdGUsXG4gIG1hcE11dGF0aW9uczogbWFwTXV0YXRpb25zLFxuICBtYXBHZXR0ZXJzOiBtYXBHZXR0ZXJzLFxuICBtYXBBY3Rpb25zOiBtYXBBY3Rpb25zLFxuICBjcmVhdGVOYW1lc3BhY2VkSGVscGVyczogY3JlYXRlTmFtZXNwYWNlZEhlbHBlcnNcbn07XG5cbmV4cG9ydCB7IFN0b3JlLCBpbnN0YWxsLCBtYXBTdGF0ZSwgbWFwTXV0YXRpb25zLCBtYXBHZXR0ZXJzLCBtYXBBY3Rpb25zLCBjcmVhdGVOYW1lc3BhY2VkSGVscGVycyB9O1xuZXhwb3J0IGRlZmF1bHQgaW5kZXhfZXNtO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvdnVleC9kaXN0L3Z1ZXguZXNtLmpzXG4vLyBtb2R1bGUgaWQgPSA0N1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///47\n"); +eval("/*!\n * Determine if an object is a Buffer\n *\n * @author Feross Aboukhadijeh \n * @license MIT\n */\n\n// The _isBuffer check is for Safari 5-7 support, because it's missing\n// Object.prototype.constructor. Remove this eventually\nmodule.exports = function (obj) {\n return obj != null && (isBuffer(obj) || isSlowBuffer(obj) || !!obj._isBuffer)\n}\n\nfunction isBuffer (obj) {\n return !!obj.constructor && typeof obj.constructor.isBuffer === 'function' && obj.constructor.isBuffer(obj)\n}\n\n// For Node v0.10 support. Remove this eventually.\nfunction isSlowBuffer (obj) {\n return typeof obj.readFloatLE === 'function' && typeof obj.slice === 'function' && isBuffer(obj.slice(0, 0))\n}\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvaXMtYnVmZmVyL2luZGV4LmpzPzQ1ZWQiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBIiwiZmlsZSI6IjQ3LmpzIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBEZXRlcm1pbmUgaWYgYW4gb2JqZWN0IGlzIGEgQnVmZmVyXG4gKlxuICogQGF1dGhvciAgIEZlcm9zcyBBYm91a2hhZGlqZWggPGh0dHBzOi8vZmVyb3NzLm9yZz5cbiAqIEBsaWNlbnNlICBNSVRcbiAqL1xuXG4vLyBUaGUgX2lzQnVmZmVyIGNoZWNrIGlzIGZvciBTYWZhcmkgNS03IHN1cHBvcnQsIGJlY2F1c2UgaXQncyBtaXNzaW5nXG4vLyBPYmplY3QucHJvdG90eXBlLmNvbnN0cnVjdG9yLiBSZW1vdmUgdGhpcyBldmVudHVhbGx5XG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChvYmopIHtcbiAgcmV0dXJuIG9iaiAhPSBudWxsICYmIChpc0J1ZmZlcihvYmopIHx8IGlzU2xvd0J1ZmZlcihvYmopIHx8ICEhb2JqLl9pc0J1ZmZlcilcbn1cblxuZnVuY3Rpb24gaXNCdWZmZXIgKG9iaikge1xuICByZXR1cm4gISFvYmouY29uc3RydWN0b3IgJiYgdHlwZW9mIG9iai5jb25zdHJ1Y3Rvci5pc0J1ZmZlciA9PT0gJ2Z1bmN0aW9uJyAmJiBvYmouY29uc3RydWN0b3IuaXNCdWZmZXIob2JqKVxufVxuXG4vLyBGb3IgTm9kZSB2MC4xMCBzdXBwb3J0LiBSZW1vdmUgdGhpcyBldmVudHVhbGx5LlxuZnVuY3Rpb24gaXNTbG93QnVmZmVyIChvYmopIHtcbiAgcmV0dXJuIHR5cGVvZiBvYmoucmVhZEZsb2F0TEUgPT09ICdmdW5jdGlvbicgJiYgdHlwZW9mIG9iai5zbGljZSA9PT0gJ2Z1bmN0aW9uJyAmJiBpc0J1ZmZlcihvYmouc2xpY2UoMCwgMCkpXG59XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9pcy1idWZmZXIvaW5kZXguanNcbi8vIG1vZHVsZSBpZCA9IDQ3XG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///47\n"); /***/ }), /* 48 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { "use strict"; -eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(17);\n\n\nvar orderGroups = function orderGroups(groups, orderBy) {\n\t/* const SORT_USERCOUNT = 1;\n * const SORT_GROUPNAME = 2;\n * https://github.com/nextcloud/server/blob/208e38e84e1a07a49699aa90dc5b7272d24489f0/lib/private/Group/MetaData.php#L34\n */\n\tif (orderBy === 1) {\n\t\treturn groups.sort(function (a, b) {\n\t\t\treturn a.usercount < b.usercount;\n\t\t});\n\t} else {\n\t\treturn groups.sort(function (a, b) {\n\t\t\treturn a.name.localeCompare(b.name);\n\t\t});\n\t}\n};\n\nvar state = {\n\tusers: [],\n\tgroups: [],\n\torderBy: 1,\n\tminPasswordLength: 0,\n\tusersOffset: 0,\n\tusersLimit: 25,\n\tuserCount: 0\n};\n\nvar mutations = {\n\tappendUsers: function appendUsers(state, usersObj) {\n\t\t// convert obj to array\n\t\tvar users = state.users.concat(Object.keys(usersObj).map(function (userid) {\n\t\t\treturn usersObj[userid];\n\t\t}));\n\t\tstate.usersOffset += state.usersLimit;\n\t\tstate.users = users;\n\t},\n\tsetPasswordPolicyMinLength: function setPasswordPolicyMinLength(state, length) {\n\t\tstate.minPasswordLength = length !== '' ? length : 0;\n\t},\n\tinitGroups: function initGroups(state, _ref) {\n\t\tvar groups = _ref.groups,\n\t\t orderBy = _ref.orderBy,\n\t\t userCount = _ref.userCount;\n\n\t\tstate.groups = groups;\n\t\tstate.orderBy = orderBy;\n\t\tstate.userCount = userCount;\n\t\tstate.groups = orderGroups(state.groups, state.orderBy);\n\t},\n\taddGroup: function addGroup(state, gid) {\n\t\ttry {\n\t\t\tstate.groups.push({\n\t\t\t\tid: gid,\n\t\t\t\tname: gid,\n\t\t\t\tusercount: 0 // user will be added after the creation\n\t\t\t});\n\t\t\tstate.groups = orderGroups(state.groups, state.orderBy);\n\t\t} catch (e) {\n\t\t\tconsole.log('Can\\'t create group', e);\n\t\t}\n\t},\n\tremoveGroup: function removeGroup(state, gid) {\n\t\tvar groupIndex = state.groups.findIndex(function (groupSearch) {\n\t\t\treturn groupSearch.id == gid;\n\t\t});\n\t\tif (groupIndex >= 0) {\n\t\t\tstate.groups.splice(groupIndex, 1);\n\t\t}\n\t},\n\taddUserGroup: function addUserGroup(state, _ref2) {\n\t\tvar userid = _ref2.userid,\n\t\t gid = _ref2.gid;\n\n\t\t// this should not be needed as it would means the user contains a group\n\t\t// the server database doesn't have.\n\t\tvar group = state.groups.find(function (groupSearch) {\n\t\t\treturn groupSearch.id == gid;\n\t\t});\n\t\tif (group) {\n\t\t\tgroup.usercount++; // increase count\n\t\t}\n\t\tvar groups = state.users.find(function (user) {\n\t\t\treturn user.id == userid;\n\t\t}).groups;\n\t\tgroups.push(gid);\n\t\tstate.groups = orderGroups(state.groups, state.orderBy);\n\t},\n\tremoveUserGroup: function removeUserGroup(state, _ref3) {\n\t\tvar userid = _ref3.userid,\n\t\t gid = _ref3.gid;\n\n\t\t// this should not be needed as it would means the user contains a group\n\t\t// the server database doesn't have.\n\t\tvar group = state.groups.find(function (groupSearch) {\n\t\t\treturn groupSearch.id == gid;\n\t\t});\n\t\tif (group) {\n\t\t\tgroup.usercount--; // lower count\n\t\t}\n\t\tvar groups = state.users.find(function (user) {\n\t\t\treturn user.id == userid;\n\t\t}).groups;\n\t\tgroups.splice(groups.indexOf(gid), 1);\n\t\tstate.groups = orderGroups(state.groups, state.orderBy);\n\t},\n\taddUserSubAdmin: function addUserSubAdmin(state, _ref4) {\n\t\tvar userid = _ref4.userid,\n\t\t gid = _ref4.gid;\n\n\t\tvar groups = state.users.find(function (user) {\n\t\t\treturn user.id == userid;\n\t\t}).subadmin;\n\t\tgroups.push(gid);\n\t},\n\tremoveUserSubAdmin: function removeUserSubAdmin(state, _ref5) {\n\t\tvar userid = _ref5.userid,\n\t\t gid = _ref5.gid;\n\n\t\tvar groups = state.users.find(function (user) {\n\t\t\treturn user.id == userid;\n\t\t}).subadmin;\n\t\tgroups.splice(groups.indexOf(gid), 1);\n\t},\n\tdeleteUser: function deleteUser(state, userid) {\n\t\tvar userIndex = state.users.findIndex(function (user) {\n\t\t\treturn user.id == userid;\n\t\t});\n\t\tstate.users.splice(userIndex, 1);\n\t},\n\taddUserData: function addUserData(state, response) {\n\t\tstate.users.push(response.data.ocs.data);\n\t},\n\tenableDisableUser: function enableDisableUser(state, _ref6) {\n\t\tvar userid = _ref6.userid,\n\t\t enabled = _ref6.enabled;\n\n\t\tstate.users.find(function (user) {\n\t\t\treturn user.id == userid;\n\t\t}).enabled = enabled;\n\t\t// increment or not\n\t\tstate.groups.find(function (group) {\n\t\t\treturn group.id == 'disabled';\n\t\t}).usercount += enabled ? -1 : 1;\n\t\tstate.userCount += enabled ? 1 : -1;\n\t\tconsole.log(enabled);\n\t},\n\tsetUserData: function setUserData(state, _ref7) {\n\t\tvar userid = _ref7.userid,\n\t\t key = _ref7.key,\n\t\t value = _ref7.value;\n\n\t\tif (key === 'quota') {\n\t\t\tvar humanValue = OC.Util.computerFileSize(value);\n\t\t\tstate.users.find(function (user) {\n\t\t\t\treturn user.id == userid;\n\t\t\t})[key][key] = humanValue ? humanValue : value;\n\t\t} else {\n\t\t\tstate.users.find(function (user) {\n\t\t\t\treturn user.id == userid;\n\t\t\t})[key] = value;\n\t\t}\n\t},\n\n\n\t/**\n * Reset users list\n */\n\tresetUsers: function resetUsers(state) {\n\t\tstate.users = [];\n\t\tstate.usersOffset = 0;\n\t}\n};\n\nvar getters = {\n\tgetUsers: function getUsers(state) {\n\t\treturn state.users;\n\t},\n\tgetGroups: function getGroups(state) {\n\t\treturn state.groups;\n\t},\n\tgetPasswordPolicyMinLength: function getPasswordPolicyMinLength(state) {\n\t\treturn state.minPasswordLength;\n\t},\n\tgetUsersOffset: function getUsersOffset(state) {\n\t\treturn state.usersOffset;\n\t},\n\tgetUsersLimit: function getUsersLimit(state) {\n\t\treturn state.usersLimit;\n\t},\n\tgetUserCount: function getUserCount(state) {\n\t\treturn state.userCount;\n\t}\n};\n\nvar actions = {\n\n\t/**\n * Get all users with full details\n * \n * @param {Object} context\n * @param {Object} options\n * @param {int} options.offset List offset to request\n * @param {int} options.limit List number to return from offset\n * @param {string} options.search Search amongst users\n * @param {string} options.group Get users from group\n * @returns {Promise}\n */\n\tgetUsers: function getUsers(context, _ref8) {\n\t\tvar offset = _ref8.offset,\n\t\t limit = _ref8.limit,\n\t\t search = _ref8.search,\n\t\t group = _ref8.group;\n\n\t\tsearch = typeof search === 'string' ? search : '';\n\t\tgroup = typeof group === 'string' ? group : '';\n\t\tif (group !== '') {\n\t\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].get(OC.linkToOCS('cloud/groups/' + group + '/users/details?offset=' + offset + '&limit=' + limit + '&search=' + search, 2)).then(function (response) {\n\t\t\t\tif (Object.keys(response.data.ocs.data.users).length > 0) {\n\t\t\t\t\tcontext.commit('appendUsers', response.data.ocs.data.users);\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t\treturn false;\n\t\t\t}).catch(function (error) {\n\t\t\t\treturn context.commit('API_FAILURE', error);\n\t\t\t});\n\t\t}\n\n\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].get(OC.linkToOCS('cloud/users/details?offset=' + offset + '&limit=' + limit + '&search=' + search, 2)).then(function (response) {\n\t\t\tif (Object.keys(response.data.ocs.data.users).length > 0) {\n\t\t\t\tcontext.commit('appendUsers', response.data.ocs.data.users);\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\treturn false;\n\t\t}).catch(function (error) {\n\t\t\treturn context.commit('API_FAILURE', error);\n\t\t});\n\t},\n\n\n\t/**\n * Get all users with full details\n * \n * @param {Object} context\n * @param {Object} options\n * @param {int} options.offset List offset to request\n * @param {int} options.limit List number to return from offset\n * @returns {Promise}\n */\n\tgetUsersFromList: function getUsersFromList(context, _ref9) {\n\t\tvar offset = _ref9.offset,\n\t\t limit = _ref9.limit,\n\t\t search = _ref9.search;\n\n\t\tsearch = typeof search === 'string' ? search : '';\n\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].get(OC.linkToOCS('cloud/users/details?offset=' + offset + '&limit=' + limit + '&search=' + search, 2)).then(function (response) {\n\t\t\tif (Object.keys(response.data.ocs.data.users).length > 0) {\n\t\t\t\tcontext.commit('appendUsers', response.data.ocs.data.users);\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\treturn false;\n\t\t}).catch(function (error) {\n\t\t\treturn context.commit('API_FAILURE', error);\n\t\t});\n\t},\n\n\n\t/**\n * Get all users with full details from a groupid\n * \n * @param {Object} context\n * @param {Object} options\n * @param {int} options.offset List offset to request\n * @param {int} options.limit List number to return from offset\n * @returns {Promise}\n */\n\tgetUsersFromGroup: function getUsersFromGroup(context, _ref10) {\n\t\tvar groupid = _ref10.groupid,\n\t\t offset = _ref10.offset,\n\t\t limit = _ref10.limit;\n\n\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].get(OC.linkToOCS('cloud/users/' + groupid + '/details?offset=' + offset + '&limit=' + limit, 2)).then(function (response) {\n\t\t\treturn context.commit('getUsersFromList', response.data.ocs.data.users);\n\t\t}).catch(function (error) {\n\t\t\treturn context.commit('API_FAILURE', error);\n\t\t});\n\t},\n\tgetPasswordPolicyMinLength: function getPasswordPolicyMinLength(context) {\n\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].get(OC.linkToOCS('apps/provisioning_api/api/v1/config/apps/password_policy/minLength', 2)).then(function (response) {\n\t\t\treturn context.commit('setPasswordPolicyMinLength', response.data.ocs.data.data);\n\t\t}).catch(function (error) {\n\t\t\treturn context.commit('API_FAILURE', error);\n\t\t});\n\t},\n\n\n\t/**\n * Add group\n * \n * @param {Object} context\n * @param {string} gid Group id\n * @returns {Promise}\n */\n\taddGroup: function addGroup(context, gid) {\n\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n\t\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].post(OC.linkToOCS('cloud/groups', 2), { groupid: gid }).then(function (response) {\n\t\t\t\treturn context.commit('addGroup', gid);\n\t\t\t}).catch(function (error) {\n\t\t\t\tthrow error;\n\t\t\t});\n\t\t}).catch(function (error) {\n\t\t\treturn context.commit('API_FAILURE', { userid: userid, error: error });\n\t\t});\n\t},\n\n\n\t/**\n * Remove group\n * \n * @param {Object} context\n * @param {string} gid Group id\n * @returns {Promise}\n */\n\tremoveGroup: function removeGroup(context, gid) {\n\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n\t\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].delete(OC.linkToOCS('cloud/groups/' + gid, 2)).then(function (response) {\n\t\t\t\treturn context.commit('removeGroup', gid);\n\t\t\t}).catch(function (error) {\n\t\t\t\tthrow error;\n\t\t\t});\n\t\t}).catch(function (error) {\n\t\t\treturn context.commit('API_FAILURE', { gid: gid, error: error });\n\t\t});\n\t},\n\n\n\t/**\n * Add user to group\n * \n * @param {Object} context\n * @param {Object} options\n * @param {string} options.userid User id\n * @param {string} options.gid Group id\n * @returns {Promise}\n */\n\taddUserGroup: function addUserGroup(context, _ref11) {\n\t\tvar userid = _ref11.userid,\n\t\t gid = _ref11.gid;\n\n\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n\t\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].post(OC.linkToOCS('cloud/users/' + userid + '/groups', 2), { groupid: gid }).then(function (response) {\n\t\t\t\treturn context.commit('addUserGroup', { userid: userid, gid: gid });\n\t\t\t}).catch(function (error) {\n\t\t\t\tthrow error;\n\t\t\t});\n\t\t}).catch(function (error) {\n\t\t\treturn context.commit('API_FAILURE', { userid: userid, error: error });\n\t\t});\n\t},\n\n\n\t/**\n * Remove user from group\n * \n * @param {Object} context\n * @param {Object} options\n * @param {string} options.userid User id\n * @param {string} options.gid Group id\n * @returns {Promise}\n */\n\tremoveUserGroup: function removeUserGroup(context, _ref12) {\n\t\tvar userid = _ref12.userid,\n\t\t gid = _ref12.gid;\n\n\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n\t\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].delete(OC.linkToOCS('cloud/users/' + userid + '/groups', 2), { groupid: gid }).then(function (response) {\n\t\t\t\treturn context.commit('removeUserGroup', { userid: userid, gid: gid });\n\t\t\t}).catch(function (error) {\n\t\t\t\tthrow error;\n\t\t\t});\n\t\t}).catch(function (error) {\n\t\t\treturn context.commit('API_FAILURE', { userid: userid, error: error });\n\t\t});\n\t},\n\n\n\t/**\n * Add user to group admin\n * \n * @param {Object} context\n * @param {Object} options\n * @param {string} options.userid User id\n * @param {string} options.gid Group id\n * @returns {Promise}\n */\n\taddUserSubAdmin: function addUserSubAdmin(context, _ref13) {\n\t\tvar userid = _ref13.userid,\n\t\t gid = _ref13.gid;\n\n\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n\t\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].post(OC.linkToOCS('cloud/users/' + userid + '/subadmins', 2), { groupid: gid }).then(function (response) {\n\t\t\t\treturn context.commit('addUserSubAdmin', { userid: userid, gid: gid });\n\t\t\t}).catch(function (error) {\n\t\t\t\tthrow error;\n\t\t\t});\n\t\t}).catch(function (error) {\n\t\t\treturn context.commit('API_FAILURE', { userid: userid, error: error });\n\t\t});\n\t},\n\n\n\t/**\n * Remove user from group admin\n * \n * @param {Object} context\n * @param {Object} options\n * @param {string} options.userid User id\n * @param {string} options.gid Group id\n * @returns {Promise}\n */\n\tremoveUserSubAdmin: function removeUserSubAdmin(context, _ref14) {\n\t\tvar userid = _ref14.userid,\n\t\t gid = _ref14.gid;\n\n\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n\t\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].delete(OC.linkToOCS('cloud/users/' + userid + '/subadmins', 2), { groupid: gid }).then(function (response) {\n\t\t\t\treturn context.commit('removeUserSubAdmin', { userid: userid, gid: gid });\n\t\t\t}).catch(function (error) {\n\t\t\t\tthrow error;\n\t\t\t});\n\t\t}).catch(function (error) {\n\t\t\treturn context.commit('API_FAILURE', { userid: userid, error: error });\n\t\t});\n\t},\n\n\n\t/**\n * Delete a user\n * \n * @param {Object} context\n * @param {string} userid User id \n * @returns {Promise}\n */\n\tdeleteUser: function deleteUser(context, _ref15) {\n\t\tvar userid = _ref15.userid;\n\n\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n\t\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].delete(OC.linkToOCS('cloud/users/' + userid, 2)).then(function (response) {\n\t\t\t\treturn context.commit('deleteUser', userid);\n\t\t\t}).catch(function (error) {\n\t\t\t\tthrow error;\n\t\t\t});\n\t\t}).catch(function (error) {\n\t\t\treturn context.commit('API_FAILURE', { userid: userid, error: error });\n\t\t});\n\t},\n\n\n\t/**\n * Add a user\n * \n * @param {Object} context\n * @param {Object} options\n * @param {string} options.userid User id\n * @param {string} options.password User password \n * @param {string} options.email User email\n * @param {string} options.groups User groups\n * @param {string} options.subadmin User subadmin groups\n * @param {string} options.quota User email\n * @returns {Promise}\n */\n\taddUser: function addUser(_ref16, _ref17) {\n\t\tvar context = _ref16.context,\n\t\t dispatch = _ref16.dispatch;\n\t\tvar userid = _ref17.userid,\n\t\t password = _ref17.password,\n\t\t email = _ref17.email,\n\t\t groups = _ref17.groups,\n\t\t subadmin = _ref17.subadmin,\n\t\t quota = _ref17.quota,\n\t\t language = _ref17.language;\n\n\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n\t\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].post(OC.linkToOCS('cloud/users', 2), { userid: userid, password: password, email: email, groups: groups, subadmin: subadmin, quota: quota, language: language }).then(function (response) {\n\t\t\t\treturn dispatch('addUserData', userid);\n\t\t\t}).catch(function (error) {\n\t\t\t\tthrow error;\n\t\t\t});\n\t\t}).catch(function (error) {\n\t\t\treturn context.commit('API_FAILURE', { userid: userid, error: error });\n\t\t});\n\t},\n\n\n\t/**\n * Get user data and commit addition\n * \n * @param {Object} context\n * @param {string} userid User id \n * @returns {Promise}\n */\n\taddUserData: function addUserData(context, userid) {\n\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n\t\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].get(OC.linkToOCS('cloud/users/' + userid, 2)).then(function (response) {\n\t\t\t\treturn context.commit('addUserData', response);\n\t\t\t}).catch(function (error) {\n\t\t\t\tthrow error;\n\t\t\t});\n\t\t}).catch(function (error) {\n\t\t\treturn context.commit('API_FAILURE', { userid: userid, error: error });\n\t\t});\n\t},\n\n\n\t/** Enable or disable user \n * \n * @param {Object} context\n * @param {Object} options\n * @param {string} options.userid User id\n * @param {boolean} options.enabled User enablement status\n * @returns {Promise}\n */\n\tenableDisableUser: function enableDisableUser(context, _ref18) {\n\t\tvar userid = _ref18.userid,\n\t\t _ref18$enabled = _ref18.enabled,\n\t\t enabled = _ref18$enabled === undefined ? true : _ref18$enabled;\n\n\t\tvar userStatus = enabled ? 'enable' : 'disable';\n\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n\t\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].put(OC.linkToOCS('cloud/users/' + userid + '/' + userStatus, 2)).then(function (response) {\n\t\t\t\treturn context.commit('enableDisableUser', { userid: userid, enabled: enabled });\n\t\t\t}).catch(function (error) {\n\t\t\t\tthrow error;\n\t\t\t});\n\t\t}).catch(function (error) {\n\t\t\treturn context.commit('API_FAILURE', { userid: userid, error: error });\n\t\t});\n\t},\n\n\n\t/**\n * Edit user data\n * \n * @param {Object} context \n * @param {Object} options\n * @param {string} options.userid User id\n * @param {string} options.key User field to edit\n * @param {string} options.value Value of the change\n * @returns {Promise}\n */\n\tsetUserData: function setUserData(context, _ref19) {\n\t\tvar userid = _ref19.userid,\n\t\t key = _ref19.key,\n\t\t value = _ref19.value;\n\n\t\tvar allowedEmpty = ['email', 'displayname'];\n\t\tif (['email', 'language', 'quota', 'displayname', 'password'].indexOf(key) !== -1) {\n\t\t\t// We allow empty email or displayname\n\t\t\tif (typeof value === 'string' && (allowedEmpty.indexOf(key) === -1 && value.length > 0 || allowedEmpty.indexOf(key) !== -1)) {\n\t\t\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n\t\t\t\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].put(OC.linkToOCS('cloud/users/' + userid, 2), { key: key, value: value }).then(function (response) {\n\t\t\t\t\t\treturn context.commit('setUserData', { userid: userid, key: key, value: value });\n\t\t\t\t\t}).catch(function (error) {\n\t\t\t\t\t\tthrow error;\n\t\t\t\t\t});\n\t\t\t\t}).catch(function (error) {\n\t\t\t\t\treturn context.commit('API_FAILURE', { userid: userid, error: error });\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t\treturn Promise.reject(new Error('Invalid request data'));\n\t}\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({ state: state, mutations: mutations, getters: getters, actions: actions });\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvc3RvcmUvdXNlcnMuanM/MjhjMiJdLCJuYW1lcyI6WyJvcmRlckdyb3VwcyIsImdyb3VwcyIsIm9yZGVyQnkiLCJzb3J0IiwiYSIsImIiLCJ1c2VyY291bnQiLCJuYW1lIiwibG9jYWxlQ29tcGFyZSIsInN0YXRlIiwidXNlcnMiLCJtaW5QYXNzd29yZExlbmd0aCIsInVzZXJzT2Zmc2V0IiwidXNlcnNMaW1pdCIsInVzZXJDb3VudCIsIm11dGF0aW9ucyIsImFwcGVuZFVzZXJzIiwidXNlcnNPYmoiLCJjb25jYXQiLCJPYmplY3QiLCJrZXlzIiwibWFwIiwidXNlcmlkIiwic2V0UGFzc3dvcmRQb2xpY3lNaW5MZW5ndGgiLCJsZW5ndGgiLCJpbml0R3JvdXBzIiwiYWRkR3JvdXAiLCJnaWQiLCJwdXNoIiwiaWQiLCJlIiwiY29uc29sZSIsImxvZyIsInJlbW92ZUdyb3VwIiwiZ3JvdXBJbmRleCIsImZpbmRJbmRleCIsImdyb3VwU2VhcmNoIiwic3BsaWNlIiwiYWRkVXNlckdyb3VwIiwiZ3JvdXAiLCJmaW5kIiwidXNlciIsInJlbW92ZVVzZXJHcm91cCIsImluZGV4T2YiLCJhZGRVc2VyU3ViQWRtaW4iLCJzdWJhZG1pbiIsInJlbW92ZVVzZXJTdWJBZG1pbiIsImRlbGV0ZVVzZXIiLCJ1c2VySW5kZXgiLCJhZGRVc2VyRGF0YSIsInJlc3BvbnNlIiwiZGF0YSIsIm9jcyIsImVuYWJsZURpc2FibGVVc2VyIiwiZW5hYmxlZCIsInNldFVzZXJEYXRhIiwia2V5IiwidmFsdWUiLCJodW1hblZhbHVlIiwiT0MiLCJVdGlsIiwiY29tcHV0ZXJGaWxlU2l6ZSIsInJlc2V0VXNlcnMiLCJnZXR0ZXJzIiwiZ2V0VXNlcnMiLCJnZXRHcm91cHMiLCJnZXRQYXNzd29yZFBvbGljeU1pbkxlbmd0aCIsImdldFVzZXJzT2Zmc2V0IiwiZ2V0VXNlcnNMaW1pdCIsImdldFVzZXJDb3VudCIsImFjdGlvbnMiLCJjb250ZXh0Iiwib2Zmc2V0IiwibGltaXQiLCJzZWFyY2giLCJhcGkiLCJnZXQiLCJsaW5rVG9PQ1MiLCJ0aGVuIiwiY29tbWl0IiwiY2F0Y2giLCJlcnJvciIsImdldFVzZXJzRnJvbUxpc3QiLCJnZXRVc2Vyc0Zyb21Hcm91cCIsImdyb3VwaWQiLCJyZXF1aXJlQWRtaW4iLCJwb3N0IiwiZGVsZXRlIiwiYWRkVXNlciIsImRpc3BhdGNoIiwicGFzc3dvcmQiLCJlbWFpbCIsInF1b3RhIiwibGFuZ3VhZ2UiLCJ1c2VyU3RhdHVzIiwicHV0IiwiYWxsb3dlZEVtcHR5IiwiUHJvbWlzZSIsInJlamVjdCIsIkVycm9yIl0sIm1hcHBpbmdzIjoiO0FBQUE7O0FBRUEsSUFBTUEsY0FBYyxTQUFkQSxXQUFjLENBQVNDLE1BQVQsRUFBaUJDLE9BQWpCLEVBQTBCO0FBQzdDOzs7O0FBSUEsS0FBSUEsWUFBWSxDQUFoQixFQUFtQjtBQUNsQixTQUFPRCxPQUFPRSxJQUFQLENBQVksVUFBQ0MsQ0FBRCxFQUFJQyxDQUFKO0FBQUEsVUFBVUQsRUFBRUUsU0FBRixHQUFjRCxFQUFFQyxTQUExQjtBQUFBLEdBQVosQ0FBUDtBQUNBLEVBRkQsTUFFTztBQUNOLFNBQU9MLE9BQU9FLElBQVAsQ0FBWSxVQUFDQyxDQUFELEVBQUlDLENBQUo7QUFBQSxVQUFVRCxFQUFFRyxJQUFGLENBQU9DLGFBQVAsQ0FBcUJILEVBQUVFLElBQXZCLENBQVY7QUFBQSxHQUFaLENBQVA7QUFDQTtBQUNELENBVkQ7O0FBWUEsSUFBTUUsUUFBUTtBQUNiQyxRQUFPLEVBRE07QUFFYlQsU0FBUSxFQUZLO0FBR2JDLFVBQVMsQ0FISTtBQUliUyxvQkFBbUIsQ0FKTjtBQUtiQyxjQUFhLENBTEE7QUFNYkMsYUFBWSxFQU5DO0FBT2JDLFlBQVc7QUFQRSxDQUFkOztBQVVBLElBQU1DLFlBQVk7QUFDakJDLFlBRGlCLHVCQUNMUCxLQURLLEVBQ0VRLFFBREYsRUFDWTtBQUM1QjtBQUNBLE1BQUlQLFFBQVFELE1BQU1DLEtBQU4sQ0FBWVEsTUFBWixDQUFtQkMsT0FBT0MsSUFB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cGknO1xuXG5jb25zdCBvcmRlckdyb3VwcyA9IGZ1bmN0aW9uKGdyb3Vwcywgb3JkZXJCeSkge1xuXHQvKiBjb25zdCBTT1JUX1VTRVJDT1VOVCA9IDE7XG5cdCAqIGNvbnN0IFNPUlRfR1JPVVBOQU1FID0gMjtcblx0ICogaHR0cHM6Ly9naXRodWIuY29tL25leHRjbG91ZC9zZXJ2ZXIvYmxvYi8yMDhlMzhlODRlMWEwN2E0OTY5OWFhOTBkYzViNzI3MmQyNDQ4OWYwL2xpYi9wcml2YXRlL0dyb3VwL01ldGFEYXRhLnBocCNMMzRcblx0ICovXG5cdGlmIChvcmRlckJ5ID09PSAxKSB7XG5cdFx0cmV0dXJuIGdyb3Vwcy5zb3J0KChhLCBiKSA9PiBhLnVzZXJjb3VudCA8IGIudXNlcmNvdW50KTtcblx0fSBlbHNlIHtcblx0XHRyZXR1cm4gZ3JvdXBzLnNvcnQoKGEsIGIpID0+IGEubmFtZS5sb2NhbGVDb21wYXJlKGIubmFtZSkpO1xuXHR9XG59O1xuXG5jb25zdCBzdGF0ZSA9IHtcblx0dXNlcnM6IFtdLFxuXHRncm91cHM6IFtdLFxuXHRvcmRlckJ5OiAxLFxuXHRtaW5QYXNzd29yZExlbmd0aDogMCxcblx0dXNlcnNPZmZzZXQ6IDAsXG5cdHVzZXJzTGltaXQ6IDI1LFxuXHR1c2VyQ291bnQ6IDBcbn07XG5cbmNvbnN0IG11dGF0aW9ucyA9IHtcblx0YXBwZW5kVXNlcnMoc3RhdGUsIHVzZXJzT2JqKSB7XG5cdFx0Ly8gY29udmVydCBvYmogdG8gYXJyYXlcblx0XHRsZXQgdXNlcnMgPSBzdGF0ZS51c2Vycy5jb25jYXQoT2JqZWN0LmtleXModXNlcnNPYmopLm1hcCh1c2VyaWQgPT4gdXNlcnNPYmpbdXNlcmlkXSkpO1xuXHRcdHN0YXRlLnVzZXJzT2Zmc2V0ICs9IHN0YXRlLnVzZXJzTGltaXQ7XG5cdFx0c3RhdGUudXNlcnMgPSB1c2Vycztcblx0fSxcblx0c2V0UGFzc3dvcmRQb2xpY3lNaW5MZW5ndGgoc3RhdGUsIGxlbmd0aCkge1xuXHRcdHN0YXRlLm1pblBhc3N3b3JkTGVuZ3RoID0gbGVuZ3RoIT09JycgPyBsZW5ndGggOiAwO1xuXHR9LFxuXHRpbml0R3JvdXBzKHN0YXRlLCB7Z3JvdXBzLCBvcmRlckJ5LCB1c2VyQ291bnR9KSB7XG5cdFx0c3RhdGUuZ3JvdXBzID0gZ3JvdXBzO1xuXHRcdHN0YXRlLm9yZGVyQnkgPSBvcmRlckJ5O1xuXHRcdHN0YXRlLnVzZXJDb3VudCA9IHVzZXJDb3VudDtcblx0XHRzdGF0ZS5ncm91cHMgPSBvcmRlckdyb3VwcyhzdGF0ZS5ncm91cHMsIHN0YXRlLm9yZGVyQnkpO1xuXHR9LFxuXHRhZGRHcm91cChzdGF0ZSwgZ2lkKSB7XG5cdFx0dHJ5IHtcblx0XHRcdHN0YXRlLmdyb3Vwcy5wdXNoKHtcblx0XHRcdFx0aWQ6IGdpZCxcblx0XHRcdFx0bmFtZTogZ2lkLFxuXHRcdFx0XHR1c2VyY291bnQ6IDAgLy8gdXNlciB3aWxsIGJlIGFkZGVkIGFmdGVyIHRoZSBjcmVhdGlvblxuXHRcdFx0fSk7XG5cdFx0XHRzdGF0ZS5ncm91cHMgPSBvcmRlckdyb3VwcyhzdGF0ZS5ncm91cHMsIHN0YXRlLm9yZGVyQnkpO1xuXHRcdH0gY2F0Y2ggKGUpIHtcblx0XHRcdGNvbnNvbGUubG9nKCdDYW5cXCd0IGNyZWF0ZSBncm91cCcsIGUpO1xuXHRcdH1cblx0fSxcblx0cmVtb3ZlR3JvdXAoc3RhdGUsIGdpZCkge1xuXHRcdGxldCBncm91cEluZGV4ID0gc3RhdGUuZ3JvdXBzLmZpbmRJbmRleChncm91cFNlYXJjaCA9PiBncm91cFNlYXJjaC5pZCA9PSBnaWQpO1xuXHRcdGlmIChncm91cEluZGV4ID49IDApIHtcblx0XHRcdHN0YXRlLmdyb3Vwcy5zcGxpY2UoZ3JvdXBJbmRleCwgMSk7XG5cdFx0fVxuXHR9LFxuXHRhZGRVc2VyR3JvdXAoc3RhdGUsIHsgdXNlcmlkLCBnaWQgfSkge1xuXHRcdC8vIHRoaXMgc2hvdWxkIG5vdCBiZSBuZWVkZWQgYXMgaXQgd291bGQgbWVhbnMgdGhlIHVzZXIgY29udGFpbnMgYSBncm91cFxuXHRcdC8vIHRoZSBzZXJ2ZXIgZGF0YWJhc2UgZG9lc24ndCBoYXZlLlxuXHRcdGxldCBncm91cCA9IHN0YXRlLmdyb3Vwcy5maW5kKGdyb3VwU2VhcmNoID0+IGdyb3VwU2VhcmNoLmlkID09IGdpZCk7XG5cdFx0aWYgKGdyb3VwKSB7XG5cdFx0XHRncm91cC51c2VyY291bnQrKzsgLy8gaW5jcmVhc2UgY291bnRcblx0XHR9XG5cdFx0bGV0IGdyb3VwcyA9IHN0YXRlLnVzZXJzLmZpbmQodXNlciA9PiB1c2VyLmlkID09IHVzZXJpZCkuZ3JvdXBzO1xuXHRcdGdyb3Vwcy5wdXNoKGdpZCk7XG5cdFx0c3RhdGUuZ3JvdXBzID0gb3JkZXJHcm91cHMoc3RhdGUuZ3JvdXBzLCBzdGF0ZS5vcmRlckJ5KTtcblx0fSxcblx0cmVtb3ZlVXNlckdyb3VwKHN0YXRlLCB7IHVzZXJpZCwgZ2lkIH0pIHtcblx0XHQvLyB0aGlzIHNob3VsZCBub3QgYmUgbmVlZGVkIGFzIGl0IHdvdWxkIG1lYW5zIHRoZSB1c2VyIGNvbnRhaW5zIGEgZ3JvdXBcblx0XHQvLyB0aGUgc2VydmVyIGRhdGFiYXNlIGRvZXNuJ3QgaGF2ZS5cblx0XHRsZXQgZ3JvdXAgPSBzdGF0ZS5ncm91cHMuZmluZChncm91cFNlYXJjaCA9PiBncm91cFNlYXJjaC5pZCA9PSBnaWQpO1xuXHRcdGlmIChncm91cCkge1xuXHRcdFx0Z3JvdXAudXNlcmNvdW50LS07IC8vIGxvd2VyIGNvdW50XG5cdFx0fVxuXHRcdGxldCBncm91cHMgPSBzdGF0ZS51c2Vycy5maW5kKHVzZXIgPT4gdXNlci5pZCA9PSB1c2VyaWQpLmdyb3Vwcztcblx0XHRncm91cHMuc3BsaWNlKGdyb3Vwcy5pbmRleE9mKGdpZCksMSk7XG5cdFx0c3RhdGUuZ3JvdXBzID0gb3JkZXJHcm91cHMoc3RhdGUuZ3JvdXBzLCBzdGF0ZS5vcmRlckJ5KTtcblx0fSxcblx0YWRkVXNlclN1YkFkbWluKHN0YXRlLCB7IHVzZXJpZCwgZ2lkIH0pIHtcblx0XHRsZXQgZ3JvdXBzID0gc3RhdGUudXNlcnMuZmluZCh1c2VyID0+IHVzZXIuaWQgPT0gdXNlcmlkKS5zdWJhZG1pbjtcblx0XHRncm91cHMucHVzaChnaWQpO1xuXHR9LFxuXHRyZW1vdmVVc2VyU3ViQWRtaW4oc3RhdGUsIHsgdXNlcmlkLCBnaWQgfSkge1xuXHRcdGxldCBncm91cHMgPSBzdGF0ZS51c2Vycy5maW5kKHVzZXIgPT4gdXNlci5pZCA9PSB1c2VyaWQpLnN1YmFkbWluO1xuXHRcdGdyb3Vwcy5zcGxpY2UoZ3JvdXBzLmluZGV4T2YoZ2lkKSwxKTtcblx0fSxcblx0ZGVsZXRlVXNlcihzdGF0ZSwgdXNlcmlkKSB7XG5cdFx0bGV0IHVzZXJJbmRleCA9IHN0YXRlLnVzZXJzLmZpbmRJbmRleCh1c2VyID0+IHVzZXIuaWQgPT0gdXNlcmlkKTtcblx0XHRzdGF0ZS51c2Vycy5zcGxpY2UodXNlckluZGV4LCAxKTtcblx0fSxcblx0YWRkVXNlckRhdGEoc3RhdGUsIHJlc3BvbnNlKSB7XG5cdFx0c3RhdGUudXNlcnMucHVzaChyZXNwb25zZS5kYXRhLm9jcy5kYXRhKTtcblx0fSxcblx0ZW5hYmxlRGlzYWJsZVVzZXIoc3RhdGUsIHsgdXNlcmlkLCBlbmFibGVkIH0pIHtcblx0XHRzdGF0ZS51c2Vycy5maW5kKHVzZXIgPT4gdXNlci5pZCA9PSB1c2VyaWQpLmVuYWJsZWQgPSBlbmFibGVkO1xuXHRcdC8vIGluY3JlbWVudCBvciBub3Rcblx0XHRzdGF0ZS5ncm91cHMuZmluZChncm91cCA9PiBncm91cC5pZCA9PSAnZGlzYWJsZWQnKS51c2VyY291bnQgKz0gZW5hYmxlZCA/IC0xIDogMTtcblx0XHRzdGF0ZS51c2VyQ291bnQgKz0gZW5hYmxlZCA/IDEgOiAtMTtcblx0XHRjb25zb2xlLmxvZyhlbmFibGVkKTtcblx0fSxcblx0c2V0VXNlckRhdGEoc3RhdGUsIHsgdXNlcmlkLCBrZXksIHZhbHVlIH0pIHtcblx0XHRpZiAoa2V5ID09PSAncXVvdGEnKSB7XG5cdFx0XHRsZXQgaHVtYW5WYWx1ZSA9IE9DLlV0aWwuY29tcHV0ZXJGaWxlU2l6ZSh2YWx1ZSk7XG5cdFx0XHRzdGF0ZS51c2Vycy5maW5kKHVzZXIgPT4gdXNlci5pZCA9PSB1c2VyaWQpW2tleV1ba2V5XSA9IGh1bWFuVmFsdWU/aHVtYW5WYWx1ZTp2YWx1ZTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0c3RhdGUudXNlcnMuZmluZCh1c2VyID0+IHVzZXIuaWQgPT0gdXNlcmlkKVtrZXldID0gdmFsdWU7XG5cdFx0fVxuXHR9LFxuXG5cdC8qKlxuXHQgKiBSZXNldCB1c2VycyBsaXN0XG5cdCAqL1xuXHRyZXNldFVzZXJzKHN0YXRlKSB7XG5cdFx0c3RhdGUudXNlcnMgPSBbXTtcblx0XHRzdGF0ZS51c2Vyc09mZnNldCA9IDA7XG5cdH1cbn07XG5cbmNvbnN0IGdldHRlcnMgPSB7XG5cdGdldFVzZXJzKHN0YXRlKSB7XG5cdFx0cmV0dXJuIHN0YXRlLnVzZXJzO1xuXHR9LFxuXHRnZXRHcm91cHMoc3RhdGUpIHtcblx0XHRyZXR1cm4gc3RhdGUuZ3JvdXBzO1xuXHR9LFxuXHRnZXRQYXNzd29yZFBvbGljeU1pbkxlbmd0aChzdGF0ZSkge1xuXHRcdHJldHVybiBzdGF0ZS5taW5QYXNzd29yZExlbmd0aDtcblx0fSxcblx0Z2V0VXNlcnNPZmZzZXQoc3RhdGUpIHtcblx0XHRyZXR1cm4gc3RhdGUudXNlcnNPZmZzZXQ7XG5cdH0sXG5cdGdldFVzZXJzTGltaXQoc3RhdGUpIHtcblx0XHRyZXR1cm4gc3RhdGUudXNlcnNMaW1pdDtcblx0fSxcblx0Z2V0VXNlckNvdW50KHN0YXRlKSB7XG5cdFx0cmV0dXJuIHN0YXRlLnVzZXJDb3VudDtcblx0fVxufTtcblxuY29uc3QgYWN0aW9ucyA9IHtcblxuXHQvKipcblx0ICogR2V0IGFsbCB1c2VycyB3aXRoIGZ1bGwgZGV0YWlsc1xuXHQgKiBcblx0ICogQHBhcmFtIHtPYmplY3R9IGNvbnRleHRcblx0ICogQHBhcmFtIHtPYmplY3R9IG9wdGlvbnNcblx0ICogQHBhcmFtIHtpbnR9IG9wdGlvbnMub2Zmc2V0IExpc3Qgb2Zmc2V0IHRvIHJlcXVlc3Rcblx0ICogQHBhcmFtIHtpbnR9IG9wdGlvbnMubGltaXQgTGlzdCBudW1iZXIgdG8gcmV0dXJuIGZyb20gb2Zmc2V0XG5cdCAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLnNlYXJjaCBTZWFyY2ggYW1vbmdzdCB1c2Vyc1xuXHQgKiBAcGFyYW0ge3N0cmluZ30gb3B0aW9ucy5ncm91cCBHZXQgdXNlcnMgZnJvbSBncm91cFxuXHQgKiBAcmV0dXJucyB7UHJvbWlzZX1cblx0ICovXG5cdGdldFVzZXJzKGNvbnRleHQsIHsgb2Zmc2V0LCBsaW1pdCwgc2VhcmNoLCBncm91cCB9KSB7XG5cdFx0c2VhcmNoID0gdHlwZW9mIHNlYXJjaCA9PT0gJ3N0cmluZycgPyBzZWFyY2ggOiAnJztcblx0XHRncm91cCA9IHR5cGVvZiBncm91cCA9PT0gJ3N0cmluZycgPyBncm91cCA6ICcnO1xuXHRcdGlmIChncm91cCAhPT0gJycpIHtcblx0XHRcdHJldHVybiBhcGkuZ2V0KE9DLmxpbmtUb09DUyhgY2xvdWQvZ3JvdXBzLyR7Z3JvdXB9L3VzZXJzL2RldGFpbHM/b2Zmc2V0PSR7b2Zmc2V0fSZsaW1pdD0ke2xpbWl0fSZzZWFyY2g9JHtzZWFyY2h9YCwgMikpXG5cdFx0XHQudGhlbigocmVzcG9uc2UpID0+IHtcblx0XHRcdFx0aWYgKE9iamVjdC5rZXlzKHJlc3BvbnNlLmRhdGEub2NzLmRhdGEudXNlcnMpLmxlbmd0aCA+IDApIHtcblx0XHRcdFx0XHRjb250ZXh0LmNvbW1pdCgnYXBwZW5kVXNlcnMnLCByZXNwb25zZS5kYXRhLm9jcy5kYXRhLnVzZXJzKTtcblx0XHRcdFx0XHRyZXR1cm4gdHJ1ZTtcblx0XHRcdFx0fVxuXHRcdFx0XHRyZXR1cm4gZmFsc2U7XG5cdFx0XHR9KVxuXHRcdFx0LmNhdGNoKChlcnJvcikgPT4gY29udGV4dC5jb21taXQoJ0FQSV9GQUlMVVJFJywgZXJyb3IpKTtcblx0XHR9XG5cblx0XHRyZXR1cm4gYXBpLmdldChPQy5saW5rVG9PQ1MoYGNsb3VkL3VzZXJzL2RldGFpbHM/b2Zmc2V0PSR7b2Zmc2V0fSZsaW1pdD0ke2xpbWl0fSZzZWFyY2g9JHtzZWFyY2h9YCwgMikpXG5cdFx0XHQudGhlbigocmVzcG9uc2UpID0+IHtcblx0XHRcdFx0aWYgKE9iamVjdC5rZXlzKHJlc3BvbnNlLmRhdGEub2NzLmRhdGEudXNlcnMpLmxlbmd0aCA+IDApIHtcblx0XHRcdFx0XHRjb250ZXh0LmNvbW1pdCgnYXBwZW5kVXNlcnMnLCByZXNwb25zZS5kYXRhLm9jcy5kYXRhLnVzZXJzKTtcblx0XHRcdFx0XHRyZXR1cm4gdHJ1ZTtcblx0XHRcdFx0fVxuXHRcdFx0XHRyZXR1cm4gZmFsc2U7XG5cdFx0XHR9KVxuXHRcdFx0LmNhdGNoKChlcnJvcikgPT4gY29udGV4dC5jb21taXQoJ0FQSV9GQUlMVVJFJywgZXJyb3IpKTtcblx0fSxcblxuXHQvKipcblx0ICogR2V0IGFsbCB1c2VycyB3aXRoIGZ1bGwgZGV0YWlsc1xuXHQgKiBcblx0ICogQHBhcmFtIHtPYmplY3R9IGNvbnRleHRcblx0ICogQHBhcmFtIHtPYmplY3R9IG9wdGlvbnNcblx0ICogQHBhcmFtIHtpbnR9IG9wdGlvbnMub2Zmc2V0IExpc3Qgb2Zmc2V0IHRvIHJlcXVlc3Rcblx0ICogQHBhcmFtIHtpbnR9IG9wdGlvbnMubGltaXQgTGlzdCBudW1iZXIgdG8gcmV0dXJuIGZyb20gb2Zmc2V0XG5cdCAqIEByZXR1cm5zIHtQcm9taXNlfVxuXHQgKi9cblx0Z2V0VXNlcnNGcm9tTGlzdChjb250ZXh0LCB7IG9mZnNldCwgbGltaXQsIHNlYXJjaCB9KSB7XG5cdFx0c2VhcmNoID0gdHlwZW9mIHNlYXJjaCA9PT0gJ3N0cmluZycgPyBzZWFyY2ggOiAnJztcblx0XHRyZXR1cm4gYXBpLmdldChPQy5saW5rVG9PQ1MoYGNsb3VkL3VzZXJzL2RldGFpbHM/b2Zmc2V0PSR7b2Zmc2V0fSZsaW1pdD0ke2xpbWl0fSZzZWFyY2g9JHtzZWFyY2h9YCwgMikpXG5cdFx0XHQudGhlbigocmVzcG9uc2UpID0+IHtcblx0XHRcdFx0aWYgKE9iamVjdC5rZXlzKHJlc3BvbnNlLmRhdGEub2NzLmRhdGEudXNlcnMpLmxlbmd0aCA+IDApIHtcblx0XHRcdFx0XHRjb250ZXh0LmNvbW1pdCgnYXBwZW5kVXNlcnMnLCByZXNwb25zZS5kYXRhLm9jcy5kYXRhLnVzZXJzKTtcblx0XHRcdFx0XHRyZXR1cm4gdHJ1ZTtcblx0XHRcdFx0fVxuXHRcdFx0XHRyZXR1cm4gZmFsc2U7XG5cdFx0XHR9KVxuXHRcdFx0LmNhdGNoKChlcnJvcikgPT4gY29udGV4dC5jb21taXQoJ0FQSV9GQUlMVVJFJywgZXJyb3IpKTtcblx0fSxcblxuXHQvKipcblx0ICogR2V0IGFsbCB1c2VycyB3aXRoIGZ1bGwgZGV0YWlscyBmcm9tIGEgZ3JvdXBpZFxuXHQgKiBcblx0ICogQHBhcmFtIHtPYmplY3R9IGNvbnRleHRcblx0ICogQHBhcmFtIHtPYmplY3R9IG9wdGlvbnNcblx0ICogQHBhcmFtIHtpbnR9IG9wdGlvbnMub2Zmc2V0IExpc3Qgb2Zmc2V0IHRvIHJlcXVlc3Rcblx0ICogQHBhcmFtIHtpbnR9IG9wdGlvbnMubGltaXQgTGlzdCBudW1iZXIgdG8gcmV0dXJuIGZyb20gb2Zmc2V0XG5cdCAqIEByZXR1cm5zIHtQcm9taXNlfVxuXHQgKi9cblx0Z2V0VXNlcnNGcm9tR3JvdXAoY29udGV4dCwgeyBncm91cGlkLCBvZmZzZXQsIGxpbWl0IH0pIHtcblx0XHRyZXR1cm4gYXBpLmdldChPQy5saW5rVG9PQ1MoYGNsb3VkL3VzZXJzLyR7Z3JvdXBpZH0vZGV0YWlscz9vZmZzZXQ9JHtvZmZzZXR9JmxpbWl0PSR7bGltaXR9YCwgMikpXG5cdFx0XHQudGhlbigocmVzcG9uc2UpID0+IGNvbnRleHQuY29tbWl0KCdnZXRVc2Vyc0Zyb21MaXN0JywgcmVzcG9uc2UuZGF0YS5vY3MuZGF0YS51c2VycykpXG5cdFx0XHQuY2F0Y2goKGVycm9yKSA9PiBjb250ZXh0LmNvbW1pdCgnQVBJX0ZBSUxVUkUnLCBlcnJvcikpO1xuXHR9LFxuXHRcblxuXHRnZXRQYXNzd29yZFBvbGljeU1pbkxlbmd0aChjb250ZXh0KSB7XG5cdFx0cmV0dXJuIGFwaS5nZXQoT0MubGlua1RvT0NTKCdhcHBzL3Byb3Zpc2lvbmluZ19hcGkvYXBpL3YxL2NvbmZpZy9hcHBzL3Bhc3N3b3JkX3BvbGljeS9taW5MZW5ndGgnLCAyKSlcblx0XHRcdC50aGVuKChyZXNwb25zZSkgPT4gY29udGV4dC5jb21taXQoJ3NldFBhc3N3b3JkUG9saWN5TWluTGVuZ3RoJywgcmVzcG9uc2UuZGF0YS5vY3MuZGF0YS5kYXRhKSlcblx0XHRcdC5jYXRjaCgoZXJyb3IpID0+IGNvbnRleHQuY29tbWl0KCdBUElfRkFJTFVSRScsIGVycm9yKSk7XG5cdH0sXG5cblx0LyoqXG5cdCAqIEFkZCBncm91cFxuXHQgKiBcblx0ICogQHBhcmFtIHtPYmplY3R9IGNvbnRleHRcblx0ICogQHBhcmFtIHtzdHJpbmd9IGdpZCBHcm91cCBpZFxuXHQgKiBAcmV0dXJucyB7UHJvbWlzZX1cblx0ICovXG5cdGFkZEdyb3VwKGNvbnRleHQsIGdpZCkge1xuXHRcdHJldHVybiBhcGkucmVxdWlyZUFkbWluKCkudGhlbigocmVzcG9uc2UpID0+IHtcblx0XHRcdHJldHVybiBhcGkucG9zdChPQy5saW5rVG9PQ1MoYGNsb3VkL2dyb3Vwc2AsIDIpLCB7Z3JvdXBpZDogZ2lkfSlcblx0XHRcdFx0LnRoZW4oKHJlc3BvbnNlKSA9PiBjb250ZXh0LmNvbW1pdCgnYWRkR3JvdXAnLCBnaWQpKVxuXHRcdFx0XHQuY2F0Y2goKGVycm9yKSA9PiB7dGhyb3cgZXJyb3I7fSk7XG5cdFx0fSkuY2F0Y2goKGVycm9yKSA9PiBjb250ZXh0LmNvbW1pdCgnQVBJX0ZBSUxVUkUnLCB7IHVzZXJpZCwgZXJyb3IgfSkpO1xuXHR9LFxuXG5cdC8qKlxuXHQgKiBSZW1vdmUgZ3JvdXBcblx0ICogXG5cdCAqIEBwYXJhbSB7T2JqZWN0fSBjb250ZXh0XG5cdCAqIEBwYXJhbSB7c3RyaW5nfSBnaWQgR3JvdXAgaWRcblx0ICogQHJldHVybnMge1Byb21pc2V9XG5cdCAqL1xuXHRyZW1vdmVHcm91cChjb250ZXh0LCBnaWQpIHtcblx0XHRyZXR1cm4gYXBpLnJlcXVpcmVBZG1pbigpLnRoZW4oKHJlc3BvbnNlKSA9PiB7XG5cdFx0XHRyZXR1cm4gYXBpLmRlbGV0ZShPQy5saW5rVG9PQ1MoYGNsb3VkL2dyb3Vwcy8ke2dpZH1gLCAyKSlcblx0XHRcdFx0LnRoZW4oKHJlc3BvbnNlKSA9PiBjb250ZXh0LmNvbW1pdCgncmVtb3ZlR3JvdXAnLCBnaWQpKVxuXHRcdFx0XHQuY2F0Y2goKGVycm9yKSA9PiB7dGhyb3cgZXJyb3I7fSk7XG5cdFx0fSkuY2F0Y2goKGVycm9yKSA9PiBjb250ZXh0LmNvbW1pdCgnQVBJX0ZBSUxVUkUnLCB7IGdpZCwgZXJyb3IgfSkpO1xuXHR9LFxuXG5cdC8qKlxuXHQgKiBBZGQgdXNlciB0byBncm91cFxuXHQgKiBcblx0ICogQHBhcmFtIHtPYmplY3R9IGNvbnRleHRcblx0ICogQHBhcmFtIHtPYmplY3R9IG9wdGlvbnNcblx0ICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMudXNlcmlkIFVzZXIgaWRcblx0ICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMuZ2lkIEdyb3VwIGlkXG5cdCAqIEByZXR1cm5zIHtQcm9taXNlfVxuXHQgKi9cblx0YWRkVXNlckdyb3VwKGNvbnRleHQsIHsgdXNlcmlkLCBnaWQgfSkge1xuXHRcdHJldHVybiBhcGkucmVxdWlyZUFkbWluKCkudGhlbigocmVzcG9uc2UpID0+IHtcblx0XHRcdHJldHVybiBhcGkucG9zdChPQy5saW5rVG9PQ1MoYGNsb3VkL3VzZXJzLyR7dXNlcmlkfS9ncm91cHNgLCAyKSwgeyBncm91cGlkOiBnaWQgfSlcblx0XHRcdFx0LnRoZW4oKHJlc3BvbnNlKSA9PiBjb250ZXh0LmNvbW1pdCgnYWRkVXNlckdyb3VwJywgeyB1c2VyaWQsIGdpZCB9KSlcblx0XHRcdFx0LmNhdGNoKChlcnJvcikgPT4ge3Rocm93IGVycm9yO30pO1xuXHRcdH0pLmNhdGNoKChlcnJvcikgPT4gY29udGV4dC5jb21taXQoJ0FQSV9GQUlMVVJFJywgeyB1c2VyaWQsIGVycm9yIH0pKTtcblx0fSxcblxuXHQvKipcblx0ICogUmVtb3ZlIHVzZXIgZnJvbSBncm91cFxuXHQgKiBcblx0ICogQHBhcmFtIHtPYmplY3R9IGNvbnRleHRcblx0ICogQHBhcmFtIHtPYmplY3R9IG9wdGlvbnNcblx0ICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMudXNlcmlkIFVzZXIgaWRcblx0ICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMuZ2lkIEdyb3VwIGlkXG5cdCAqIEByZXR1cm5zIHtQcm9taXNlfVxuXHQgKi9cblx0cmVtb3ZlVXNlckdyb3VwKGNvbnRleHQsIHsgdXNlcmlkLCBnaWQgfSkge1xuXHRcdHJldHVybiBhcGkucmVxdWlyZUFkbWluKCkudGhlbigocmVzcG9uc2UpID0+IHtcblx0XHRcdHJldHVybiBhcGkuZGVsZXRlKE9DLmxpbmtUb09DUyhgY2xvdWQvdXNlcnMvJHt1c2VyaWR9L2dyb3Vwc2AsIDIpLCB7IGdyb3VwaWQ6IGdpZCB9KVxuXHRcdFx0XHQudGhlbigocmVzcG9uc2UpID0+IGNvbnRleHQuY29tbWl0KCdyZW1vdmVVc2VyR3JvdXAnLCB7IHVzZXJpZCwgZ2lkIH0pKVxuXHRcdFx0XHQuY2F0Y2goKGVycm9yKSA9PiB7dGhyb3cgZXJyb3I7fSk7XG5cdFx0fSkuY2F0Y2goKGVycm9yKSA9PiBjb250ZXh0LmNvbW1pdCgnQVBJX0ZBSUxVUkUnLCB7IHVzZXJpZCwgZXJyb3IgfSkpO1xuXHR9LFxuXG5cdC8qKlxuXHQgKiBBZGQgdXNlciB0byBncm91cCBhZG1pblxuXHQgKiBcblx0ICogQHBhcmFtIHtPYmplY3R9IGNvbnRleHRcblx0ICogQHBhcmFtIHtPYmplY3R9IG9wdGlvbnNcblx0ICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMudXNlcmlkIFVzZXIgaWRcblx0ICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMuZ2lkIEdyb3VwIGlkXG5cdCAqIEByZXR1cm5zIHtQcm9taXNlfVxuXHQgKi9cblx0YWRkVXNlclN1YkFkbWluKGNvbnRleHQsIHsgdXNlcmlkLCBnaWQgfSkge1xuXHRcdHJldHVybiBhcGkucmVxdWlyZUFkbWluKCkudGhlbigocmVzcG9uc2UpID0+IHtcblx0XHRcdHJldHVybiBhcGkucG9zdChPQy5saW5rVG9PQ1MoYGNsb3VkL3VzZXJzLyR7dXNlcmlkfS9zdWJhZG1pbnNgLCAyKSwgIHsgZ3JvdXBpZDogZ2lkIH0pXG5cdFx0XHRcdC50aGVuKChyZXNwb25zZSkgPT4gY29udGV4dC5jb21taXQoJ2FkZFVzZXJTdWJBZG1pbicsIHsgdXNlcmlkLCBnaWQgfSkpXG5cdFx0XHRcdC5jYXRjaCgoZXJyb3IpID0+IHt0aHJvdyBlcnJvcjt9KTtcblx0XHR9KS5jYXRjaCgoZXJyb3IpID0+IGNvbnRleHQuY29tbWl0KCdBUElfRkFJTFVSRScsIHsgdXNlcmlkLCBlcnJvciB9KSk7XG5cdH0sXG5cblx0LyoqXG5cdCAqIFJlbW92ZSB1c2VyIGZyb20gZ3JvdXAgYWRtaW5cblx0ICogXG5cdCAqIEBwYXJhbSB7T2JqZWN0fSBjb250ZXh0XG5cdCAqIEBwYXJhbSB7T2JqZWN0fSBvcHRpb25zXG5cdCAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLnVzZXJpZCBVc2VyIGlkXG5cdCAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLmdpZCBHcm91cCBpZFxuXHQgKiBAcmV0dXJucyB7UHJvbWlzZX1cblx0ICovXG5cdHJlbW92ZVVzZXJTdWJBZG1pbihjb250ZXh0LCB7IHVzZXJpZCwgZ2lkIH0pIHtcblx0XHRyZXR1cm4gYXBpLnJlcXVpcmVBZG1pbigpLnRoZW4oKHJlc3BvbnNlKSA9PiB7XG5cdFx0XHRyZXR1cm4gYXBpLmRlbGV0ZShPQy5saW5rVG9PQ1MoYGNsb3VkL3VzZXJzLyR7dXNlcmlkfS9zdWJhZG1pbnNgLCAyKSwgeyBncm91cGlkOiBnaWQgfSlcblx0XHRcdFx0LnRoZW4oKHJlc3BvbnNlKSA9PiBjb250ZXh0LmNvbW1pdCgncmVtb3ZlVXNlclN1YkFkbWluJywgeyB1c2VyaWQsIGdpZCB9KSlcblx0XHRcdFx0LmNhdGNoKChlcnJvcikgPT4ge3Rocm93IGVycm9yO30pO1xuXHRcdH0pLmNhdGNoKChlcnJvcikgPT4gY29udGV4dC5jb21taXQoJ0FQSV9GQUlMVVJFJywgeyB1c2VyaWQsIGVycm9yIH0pKTtcblx0fSxcblxuXHQvKipcblx0ICogRGVsZXRlIGEgdXNlclxuXHQgKiBcblx0ICogQHBhcmFtIHtPYmplY3R9IGNvbnRleHRcblx0ICogQHBhcmFtIHtzdHJpbmd9IHVzZXJpZCBVc2VyIGlkIFxuXHQgKiBAcmV0dXJucyB7UHJvbWlzZX1cblx0ICovXG5cdGRlbGV0ZVVzZXIoY29udGV4dCwgeyB1c2VyaWQgfSkge1xuXHRcdHJldHVybiBhcGkucmVxdWlyZUFkbWluKCkudGhlbigocmVzcG9uc2UpID0+IHtcblx0XHRcdHJldHVybiBhcGkuZGVsZXRlKE9DLmxpbmtUb09DUyhgY2xvdWQvdXNlcnMvJHt1c2VyaWR9YCwgMikpXG5cdFx0XHRcdC50aGVuKChyZXNwb25zZSkgPT4gY29udGV4dC5jb21taXQoJ2RlbGV0ZVVzZXInLCB1c2VyaWQpKVxuXHRcdFx0XHQuY2F0Y2goKGVycm9yKSA9PiB7dGhyb3cgZXJyb3I7fSk7XG5cdFx0fSkuY2F0Y2goKGVycm9yKSA9PiBjb250ZXh0LmNvbW1pdCgnQVBJX0ZBSUxVUkUnLCB7IHVzZXJpZCwgZXJyb3IgfSkpO1xuXHR9LFxuXG5cdC8qKlxuXHQgKiBBZGQgYSB1c2VyXG5cdCAqIFxuXHQgKiBAcGFyYW0ge09iamVjdH0gY29udGV4dFxuXHQgKiBAcGFyYW0ge09iamVjdH0gb3B0aW9uc1xuXHQgKiBAcGFyYW0ge3N0cmluZ30gb3B0aW9ucy51c2VyaWQgVXNlciBpZFxuXHQgKiBAcGFyYW0ge3N0cmluZ30gb3B0aW9ucy5wYXNzd29yZCBVc2VyIHBhc3N3b3JkIFxuXHQgKiBAcGFyYW0ge3N0cmluZ30gb3B0aW9ucy5lbWFpbCBVc2VyIGVtYWlsXG5cdCAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLmdyb3VwcyBVc2VyIGdyb3Vwc1xuXHQgKiBAcGFyYW0ge3N0cmluZ30gb3B0aW9ucy5zdWJhZG1pbiBVc2VyIHN1YmFkbWluIGdyb3Vwc1xuXHQgKiBAcGFyYW0ge3N0cmluZ30gb3B0aW9ucy5xdW90YSBVc2VyIGVtYWlsXG5cdCAqIEByZXR1cm5zIHtQcm9taXNlfVxuXHQgKi9cblx0YWRkVXNlcih7Y29udGV4dCwgZGlzcGF0Y2h9LCB7IHVzZXJpZCwgcGFzc3dvcmQsIGVtYWlsLCBncm91cHMsIHN1YmFkbWluLCBxdW90YSwgbGFuZ3VhZ2UgfSkge1xuXHRcdHJldHVybiBhcGkucmVxdWlyZUFkbWluKCkudGhlbigocmVzcG9uc2UpID0+IHtcblx0XHRcdHJldHVybiBhcGkucG9zdChPQy5saW5rVG9PQ1MoYGNsb3VkL3VzZXJzYCwgMiksIHsgdXNlcmlkLCBwYXNzd29yZCwgZW1haWwsIGdyb3Vwcywgc3ViYWRtaW4sIHF1b3RhLCBsYW5ndWFnZSB9KVxuXHRcdFx0XHQudGhlbigocmVzcG9uc2UpID0+IGRpc3BhdGNoKCdhZGRVc2VyRGF0YScsIHVzZXJpZCkpXG5cdFx0XHRcdC5jYXRjaCgoZXJyb3IpID0+IHt0aHJvdyBlcnJvcjt9KTtcblx0XHR9KS5jYXRjaCgoZXJyb3IpID0+IGNvbnRleHQuY29tbWl0KCdBUElfRkFJTFVSRScsIHsgdXNlcmlkLCBlcnJvciB9KSk7XG5cdH0sXG5cblx0LyoqXG5cdCAqIEdldCB1c2VyIGRhdGEgYW5kIGNvbW1pdCBhZGRpdGlvblxuXHQgKiBcblx0ICogQHBhcmFtIHtPYmplY3R9IGNvbnRleHRcblx0ICogQHBhcmFtIHtzdHJpbmd9IHVzZXJpZCBVc2VyIGlkIFxuXHQgKiBAcmV0dXJucyB7UHJvbWlzZX1cblx0ICovXG5cdGFkZFVzZXJEYXRhKGNvbnRleHQsIHVzZXJpZCkge1xuXHRcdHJldHVybiBhcGkucmVxdWlyZUFkbWluKCkudGhlbigocmVzcG9uc2UpID0+IHtcblx0XHRcdHJldHVybiBhcGkuZ2V0KE9DLmxpbmtUb09DUyhgY2xvdWQvdXNlcnMvJHt1c2VyaWR9YCwgMikpXG5cdFx0XHRcdC50aGVuKChyZXNwb25zZSkgPT4gY29udGV4dC5jb21taXQoJ2FkZFVzZXJEYXRhJywgcmVzcG9uc2UpKVxuXHRcdFx0XHQuY2F0Y2goKGVycm9yKSA9PiB7dGhyb3cgZXJyb3I7fSk7XG5cdFx0fSkuY2F0Y2goKGVycm9yKSA9PiBjb250ZXh0LmNvbW1pdCgnQVBJX0ZBSUxVUkUnLCB7IHVzZXJpZCwgZXJyb3IgfSkpO1xuXHR9LFxuXG5cdC8qKiBFbmFibGUgb3IgZGlzYWJsZSB1c2VyIFxuXHQgKiBcblx0ICogQHBhcmFtIHtPYmplY3R9IGNvbnRleHRcblx0ICogQHBhcmFtIHtPYmplY3R9IG9wdGlvbnNcblx0ICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMudXNlcmlkIFVzZXIgaWRcblx0ICogQHBhcmFtIHtib29sZWFufSBvcHRpb25zLmVuYWJsZWQgVXNlciBlbmFibGVtZW50IHN0YXR1c1xuXHQgKiBAcmV0dXJucyB7UHJvbWlzZX1cblx0ICovXG5cdGVuYWJsZURpc2FibGVVc2VyKGNvbnRleHQsIHsgdXNlcmlkLCBlbmFibGVkID0gdHJ1ZSB9KSB7XG5cdFx0bGV0IHVzZXJTdGF0dXMgPSBlbmFibGVkID8gJ2VuYWJsZScgOiAnZGlzYWJsZSc7XG5cdFx0cmV0dXJuIGFwaS5yZXF1aXJlQWRtaW4oKS50aGVuKChyZXNwb25zZSkgPT4ge1xuXHRcdFx0cmV0dXJuIGFwaS5wdXQoT0MubGlua1RvT0NTKGBjbG91ZC91c2Vycy8ke3VzZXJpZH0vJHt1c2VyU3RhdHVzfWAsIDIpKVxuXHRcdFx0XHQudGhlbigocmVzcG9uc2UpID0+IGNvbnRleHQuY29tbWl0KCdlbmFibGVEaXNhYmxlVXNlcicsIHsgdXNlcmlkLCBlbmFibGVkIH0pKVxuXHRcdFx0XHQuY2F0Y2goKGVycm9yKSA9PiB7dGhyb3cgZXJyb3I7fSk7XG5cdFx0fSkuY2F0Y2goKGVycm9yKSA9PiBjb250ZXh0LmNvbW1pdCgnQVBJX0ZBSUxVUkUnLCB7IHVzZXJpZCwgZXJyb3IgfSkpO1xuXHR9LFxuXG5cdC8qKlxuXHQgKiBFZGl0IHVzZXIgZGF0YVxuXHQgKiBcblx0ICogQHBhcmFtIHtPYmplY3R9IGNvbnRleHQgXG5cdCAqIEBwYXJhbSB7T2JqZWN0fSBvcHRpb25zXG5cdCAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLnVzZXJpZCBVc2VyIGlkXG5cdCAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLmtleSBVc2VyIGZpZWxkIHRvIGVkaXRcblx0ICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMudmFsdWUgVmFsdWUgb2YgdGhlIGNoYW5nZVxuXHQgKiBAcmV0dXJucyB7UHJvbWlzZX1cblx0ICovXG5cdHNldFVzZXJEYXRhKGNvbnRleHQsIHsgdXNlcmlkLCBrZXksIHZhbHVlIH0pIHtcblx0XHRsZXQgYWxsb3dlZEVtcHR5ID0gWydlbWFpbCcsICdkaXNwbGF5bmFtZSddO1xuXHRcdGlmIChbJ2VtYWlsJywgJ2xhbmd1YWdlJywgJ3F1b3RhJywgJ2Rpc3BsYXluYW1lJywgJ3Bhc3N3b3JkJ10uaW5kZXhPZihrZXkpICE9PSAtMSkge1xuXHRcdFx0Ly8gV2UgYWxsb3cgZW1wdHkgZW1haWwgb3IgZGlzcGxheW5hbWVcblx0XHRcdGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnICYmXG5cdFx0XHRcdChcblx0XHRcdFx0XHQoYWxsb3dlZEVtcHR5LmluZGV4T2Yoa2V5KSA9PT0gLTEgJiYgdmFsdWUubGVuZ3RoID4gMCkgfHxcblx0XHRcdFx0XHRhbGxvd2VkRW1wdHkuaW5kZXhPZihrZXkpICE9PSAtMVxuXHRcdFx0XHQpXG5cdFx0XHQpIHtcblx0XHRcdFx0cmV0dXJuIGFwaS5yZXF1aXJlQWRtaW4oKS50aGVuKChyZXNwb25zZSkgPT4ge1xuXHRcdFx0XHRcdHJldHVybiBhcGkucHV0KE9DLmxpbmtUb09DUyhgY2xvdWQvdXNlcnMvJHt1c2VyaWR9YCwgMiksIHsga2V5OiBrZXksIHZhbHVlOiB2YWx1ZSB9KVxuXHRcdFx0XHRcdFx0LnRoZW4oKHJlc3BvbnNlKSA9PiBjb250ZXh0LmNvbW1pdCgnc2V0VXNlckRhdGEnLCB7IHVzZXJpZCwga2V5LCB2YWx1ZSB9KSlcblx0XHRcdFx0XHRcdC5jYXRjaCgoZXJyb3IpID0+IHt0aHJvdyBlcnJvcjt9KTtcblx0XHRcdFx0fSkuY2F0Y2goKGVycm9yKSA9PiBjb250ZXh0LmNvbW1pdCgnQVBJX0ZBSUxVUkUnLCB7IHVzZXJpZCwgZXJyb3IgfSkpO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRyZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3IEVycm9yKCdJbnZhbGlkIHJlcXVlc3QgZGF0YScpKTtcblx0fVxufTtcblxuZXhwb3J0IGRlZmF1bHQgeyBzdGF0ZSwgbXV0YXRpb25zLCBnZXR0ZXJzLCBhY3Rpb25zIH07XG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIC4vc3JjL3N0b3JlL3VzZXJzLmpzIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///48\n"); +eval("\n\nvar defaults = __webpack_require__(7);\nvar utils = __webpack_require__(0);\nvar InterceptorManager = __webpack_require__(57);\nvar dispatchRequest = __webpack_require__(58);\n\n/**\n * Create a new instance of Axios\n *\n * @param {Object} instanceConfig The default config for the instance\n */\nfunction Axios(instanceConfig) {\n this.defaults = instanceConfig;\n this.interceptors = {\n request: new InterceptorManager(),\n response: new InterceptorManager()\n };\n}\n\n/**\n * Dispatch a request\n *\n * @param {Object} config The config specific for this request (merged with this.defaults)\n */\nAxios.prototype.request = function request(config) {\n /*eslint no-param-reassign:0*/\n // Allow for axios('example/url'[, config]) a la fetch API\n if (typeof config === 'string') {\n config = utils.merge({\n url: arguments[0]\n }, arguments[1]);\n }\n\n config = utils.merge(defaults, {method: 'get'}, this.defaults, config);\n config.method = config.method.toLowerCase();\n\n // Hook up interceptors middleware\n var chain = [dispatchRequest, undefined];\n var promise = Promise.resolve(config);\n\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n chain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n chain.push(interceptor.fulfilled, interceptor.rejected);\n });\n\n while (chain.length) {\n promise = promise.then(chain.shift(), chain.shift());\n }\n\n return promise;\n};\n\n// Provide aliases for supported request methods\nutils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, config) {\n return this.request(utils.merge(config || {}, {\n method: method,\n url: url\n }));\n };\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, data, config) {\n return this.request(utils.merge(config || {}, {\n method: method,\n url: url,\n data: data\n }));\n };\n});\n\nmodule.exports = Axios;\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvQXhpb3MuanM/NWU2NSJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLE9BQU87QUFDbEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLE9BQU87QUFDbEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7O0FBRUEsa0NBQWtDLGNBQWM7QUFDaEQ7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxHQUFHOztBQUVIO0FBQ0E7QUFDQSxHQUFHOztBQUVIO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0RBQWdEO0FBQ2hEO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBLGdEQUFnRDtBQUNoRDtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxDQUFDOztBQUVEIiwiZmlsZSI6IjQ4LmpzIiwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBzdHJpY3QnO1xuXG52YXIgZGVmYXVsdHMgPSByZXF1aXJlKCcuLy4uL2RlZmF1bHRzJyk7XG52YXIgdXRpbHMgPSByZXF1aXJlKCcuLy4uL3V0aWxzJyk7XG52YXIgSW50ZXJjZXB0b3JNYW5hZ2VyID0gcmVxdWlyZSgnLi9JbnRlcmNlcHRvck1hbmFnZXInKTtcbnZhciBkaXNwYXRjaFJlcXVlc3QgPSByZXF1aXJlKCcuL2Rpc3BhdGNoUmVxdWVzdCcpO1xuXG4vKipcbiAqIENyZWF0ZSBhIG5ldyBpbnN0YW5jZSBvZiBBeGlvc1xuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSBpbnN0YW5jZUNvbmZpZyBUaGUgZGVmYXVsdCBjb25maWcgZm9yIHRoZSBpbnN0YW5jZVxuICovXG5mdW5jdGlvbiBBeGlvcyhpbnN0YW5jZUNvbmZpZykge1xuICB0aGlzLmRlZmF1bHRzID0gaW5zdGFuY2VDb25maWc7XG4gIHRoaXMuaW50ZXJjZXB0b3JzID0ge1xuICAgIHJlcXVlc3Q6IG5ldyBJbnRlcmNlcHRvck1hbmFnZXIoKSxcbiAgICByZXNwb25zZTogbmV3IEludGVyY2VwdG9yTWFuYWdlcigpXG4gIH07XG59XG5cbi8qKlxuICogRGlzcGF0Y2ggYSByZXF1ZXN0XG4gKlxuICogQHBhcmFtIHtPYmplY3R9IGNvbmZpZyBUaGUgY29uZmlnIHNwZWNpZmljIGZvciB0aGlzIHJlcXVlc3QgKG1lcmdlZCB3aXRoIHRoaXMuZGVmYXVsdHMpXG4gKi9cbkF4aW9zLnByb3RvdHlwZS5yZXF1ZXN0ID0gZnVuY3Rpb24gcmVxdWVzdChjb25maWcpIHtcbiAgLyplc2xpbnQgbm8tcGFyYW0tcmVhc3NpZ246MCovXG4gIC8vIEFsbG93IGZvciBheGlvcygnZXhhbXBsZS91cmwnWywgY29uZmlnXSkgYSBsYSBmZXRjaCBBUElcbiAgaWYgKHR5cGVvZiBjb25maWcgPT09ICdzdHJpbmcnKSB7XG4gICAgY29uZmlnID0gdXRpbHMubWVyZ2Uoe1xuICAgICAgdXJsOiBhcmd1bWVudHNbMF1cbiAgICB9LCBhcmd1bWVudHNbMV0pO1xuICB9XG5cbiAgY29uZmlnID0gdXRpbHMubWVyZ2UoZGVmYXVsdHMsIHttZXRob2Q6ICdnZXQnfSwgdGhpcy5kZWZhdWx0cywgY29uZmlnKTtcbiAgY29uZmlnLm1ldGhvZCA9IGNvbmZpZy5tZXRob2QudG9Mb3dlckNhc2UoKTtcblxuICAvLyBIb29rIHVwIGludGVyY2VwdG9ycyBtaWRkbGV3YXJlXG4gIHZhciBjaGFpbiA9IFtkaXNwYXRjaFJlcXVlc3QsIHVuZGVmaW5lZF07XG4gIHZhciBwcm9taXNlID0gUHJvbWlzZS5yZXNvbHZlKGNvbmZpZyk7XG5cbiAgdGhpcy5pbnRlcmNlcHRvcnMucmVxdWVzdC5mb3JFYWNoKGZ1bmN0aW9uIHVuc2hpZnRSZXF1ZXN0SW50ZXJjZXB0b3JzKGludGVyY2VwdG9yKSB7XG4gICAgY2hhaW4udW5zaGlmdChpbnRlcmNlcHRvci5mdWxmaWxsZWQsIGludGVyY2VwdG9yLnJlamVjdGVkKTtcbiAgfSk7XG5cbiAgdGhpcy5pbnRlcmNlcHRvcnMucmVzcG9uc2UuZm9yRWFjaChmdW5jdGlvbiBwdXNoUmVzcG9uc2VJbnRlcmNlcHRvcnMoaW50ZXJjZXB0b3IpIHtcbiAgICBjaGFpbi5wdXNoKGludGVyY2VwdG9yLmZ1bGZpbGxlZCwgaW50ZXJjZXB0b3IucmVqZWN0ZWQpO1xuICB9KTtcblxuICB3aGlsZSAoY2hhaW4ubGVuZ3RoKSB7XG4gICAgcHJvbWlzZSA9IHByb21pc2UudGhlbihjaGFpbi5zaGlmdCgpLCBjaGFpbi5zaGlmdCgpKTtcbiAgfVxuXG4gIHJldHVybiBwcm9taXNlO1xufTtcblxuLy8gUHJvdmlkZSBhbGlhc2VzIGZvciBzdXBwb3J0ZWQgcmVxdWVzdCBtZXRob2RzXG51dGlscy5mb3JFYWNoKFsnZGVsZXRlJywgJ2dldCcsICdoZWFkJywgJ29wdGlvbnMnXSwgZnVuY3Rpb24gZm9yRWFjaE1ldGhvZE5vRGF0YShtZXRob2QpIHtcbiAgLyplc2xpbnQgZnVuYy1uYW1lczowKi9cbiAgQXhpb3MucHJvdG90eXBlW21ldGhvZF0gPSBmdW5jdGlvbih1cmwsIGNvbmZpZykge1xuICAgIHJldHVybiB0aGlzLnJlcXVlc3QodXRpbHMubWVyZ2UoY29uZmlnIHx8IHt9LCB7XG4gICAgICBtZXRob2Q6IG1ldGhvZCxcbiAgICAgIHVybDogdXJsXG4gICAgfSkpO1xuICB9O1xufSk7XG5cbnV0aWxzLmZvckVhY2goWydwb3N0JywgJ3B1dCcsICdwYXRjaCddLCBmdW5jdGlvbiBmb3JFYWNoTWV0aG9kV2l0aERhdGEobWV0aG9kKSB7XG4gIC8qZXNsaW50IGZ1bmMtbmFtZXM6MCovXG4gIEF4aW9zLnByb3RvdHlwZVttZXRob2RdID0gZnVuY3Rpb24odXJsLCBkYXRhLCBjb25maWcpIHtcbiAgICByZXR1cm4gdGhpcy5yZXF1ZXN0KHV0aWxzLm1lcmdlKGNvbmZpZyB8fCB7fSwge1xuICAgICAgbWV0aG9kOiBtZXRob2QsXG4gICAgICB1cmw6IHVybCxcbiAgICAgIGRhdGE6IGRhdGFcbiAgICB9KSk7XG4gIH07XG59KTtcblxubW9kdWxlLmV4cG9ydHMgPSBBeGlvcztcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9jb3JlL0F4aW9zLmpzXG4vLyBtb2R1bGUgaWQgPSA0OFxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///48\n"); /***/ }), /* 49 */ /***/ (function(module, exports, __webpack_require__) { -eval("module.exports = __webpack_require__(50);\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvaW5kZXguanM/OWFkNSJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSIsImZpbGUiOiI0OS5qcyIsInNvdXJjZXNDb250ZW50IjpbIm1vZHVsZS5leHBvcnRzID0gcmVxdWlyZSgnLi9saWIvYXhpb3MnKTtcblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9heGlvcy9pbmRleC5qc1xuLy8gbW9kdWxlIGlkID0gNDlcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///49\n"); +"use strict"; +eval("\n\nvar utils = __webpack_require__(0);\n\nmodule.exports = function normalizeHeaderName(headers, normalizedName) {\n utils.forEach(headers, function processHeader(value, name) {\n if (name !== normalizedName && name.toUpperCase() === normalizedName.toUpperCase()) {\n headers[normalizedName] = value;\n delete headers[name];\n }\n });\n};\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvbm9ybWFsaXplSGVhZGVyTmFtZS5qcz9lNTU0Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSCIsImZpbGUiOiI0OS5qcyIsInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxudmFyIHV0aWxzID0gcmVxdWlyZSgnLi4vdXRpbHMnKTtcblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiBub3JtYWxpemVIZWFkZXJOYW1lKGhlYWRlcnMsIG5vcm1hbGl6ZWROYW1lKSB7XG4gIHV0aWxzLmZvckVhY2goaGVhZGVycywgZnVuY3Rpb24gcHJvY2Vzc0hlYWRlcih2YWx1ZSwgbmFtZSkge1xuICAgIGlmIChuYW1lICE9PSBub3JtYWxpemVkTmFtZSAmJiBuYW1lLnRvVXBwZXJDYXNlKCkgPT09IG5vcm1hbGl6ZWROYW1lLnRvVXBwZXJDYXNlKCkpIHtcbiAgICAgIGhlYWRlcnNbbm9ybWFsaXplZE5hbWVdID0gdmFsdWU7XG4gICAgICBkZWxldGUgaGVhZGVyc1tuYW1lXTtcbiAgICB9XG4gIH0pO1xufTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9oZWxwZXJzL25vcm1hbGl6ZUhlYWRlck5hbWUuanNcbi8vIG1vZHVsZSBpZCA9IDQ5XG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///49\n"); /***/ }), /* 50 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -eval("\n\nvar utils = __webpack_require__(0);\nvar bind = __webpack_require__(18);\nvar Axios = __webpack_require__(52);\nvar defaults = __webpack_require__(6);\n\n/**\n * Create an instance of Axios\n *\n * @param {Object} defaultConfig The default config for the instance\n * @return {Axios} A new instance of Axios\n */\nfunction createInstance(defaultConfig) {\n var context = new Axios(defaultConfig);\n var instance = bind(Axios.prototype.request, context);\n\n // Copy axios.prototype to instance\n utils.extend(instance, Axios.prototype, context);\n\n // Copy context to instance\n utils.extend(instance, context);\n\n return instance;\n}\n\n// Create the default instance to be exported\nvar axios = createInstance(defaults);\n\n// Expose Axios class to allow class inheritance\naxios.Axios = Axios;\n\n// Factory for creating new instances\naxios.create = function create(instanceConfig) {\n return createInstance(utils.merge(defaults, instanceConfig));\n};\n\n// Expose Cancel & CancelToken\naxios.Cancel = __webpack_require__(22);\naxios.CancelToken = __webpack_require__(66);\naxios.isCancel = __webpack_require__(21);\n\n// Expose all/spread\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\naxios.spread = __webpack_require__(67);\n\nmodule.exports = axios;\n\n// Allow use of default import syntax in TypeScript\nmodule.exports.default = axios;\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2F4aW9zLmpzP2I0ODEiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsV0FBVyxPQUFPO0FBQ2xCLFlBQVksTUFBTTtBQUNsQjtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBIiwiZmlsZSI6IjUwLmpzIiwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBzdHJpY3QnO1xuXG52YXIgdXRpbHMgPSByZXF1aXJlKCcuL3V0aWxzJyk7XG52YXIgYmluZCA9IHJlcXVpcmUoJy4vaGVscGVycy9iaW5kJyk7XG52YXIgQXhpb3MgPSByZXF1aXJlKCcuL2NvcmUvQXhpb3MnKTtcbnZhciBkZWZhdWx0cyA9IHJlcXVpcmUoJy4vZGVmYXVsdHMnKTtcblxuLyoqXG4gKiBDcmVhdGUgYW4gaW5zdGFuY2Ugb2YgQXhpb3NcbiAqXG4gKiBAcGFyYW0ge09iamVjdH0gZGVmYXVsdENvbmZpZyBUaGUgZGVmYXVsdCBjb25maWcgZm9yIHRoZSBpbnN0YW5jZVxuICogQHJldHVybiB7QXhpb3N9IEEgbmV3IGluc3RhbmNlIG9mIEF4aW9zXG4gKi9cbmZ1bmN0aW9uIGNyZWF0ZUluc3RhbmNlKGRlZmF1bHRDb25maWcpIHtcbiAgdmFyIGNvbnRleHQgPSBuZXcgQXhpb3MoZGVmYXVsdENvbmZpZyk7XG4gIHZhciBpbnN0YW5jZSA9IGJpbmQoQXhpb3MucHJvdG90eXBlLnJlcXVlc3QsIGNvbnRleHQpO1xuXG4gIC8vIENvcHkgYXhpb3MucHJvdG90eXBlIHRvIGluc3RhbmNlXG4gIHV0aWxzLmV4dGVuZChpbnN0YW5jZSwgQXhpb3MucHJvdG90eXBlLCBjb250ZXh0KTtcblxuICAvLyBDb3B5IGNvbnRleHQgdG8gaW5zdGFuY2VcbiAgdXRpbHMuZXh0ZW5kKGluc3RhbmNlLCBjb250ZXh0KTtcblxuICByZXR1cm4gaW5zdGFuY2U7XG59XG5cbi8vIENyZWF0ZSB0aGUgZGVmYXVsdCBpbnN0YW5jZSB0byBiZSBleHBvcnRlZFxudmFyIGF4aW9zID0gY3JlYXRlSW5zdGFuY2UoZGVmYXVsdHMpO1xuXG4vLyBFeHBvc2UgQXhpb3MgY2xhc3MgdG8gYWxsb3cgY2xhc3MgaW5oZXJpdGFuY2VcbmF4aW9zLkF4aW9zID0gQXhpb3M7XG5cbi8vIEZhY3RvcnkgZm9yIGNyZWF0aW5nIG5ldyBpbnN0YW5jZXNcbmF4aW9zLmNyZWF0ZSA9IGZ1bmN0aW9uIGNyZWF0ZShpbnN0YW5jZUNvbmZpZykge1xuICByZXR1cm4gY3JlYXRlSW5zdGFuY2UodXRpbHMubWVyZ2UoZGVmYXVsdHMsIGluc3RhbmNlQ29uZmlnKSk7XG59O1xuXG4vLyBFeHBvc2UgQ2FuY2VsICYgQ2FuY2VsVG9rZW5cbmF4aW9zLkNhbmNlbCA9IHJlcXVpcmUoJy4vY2FuY2VsL0NhbmNlbCcpO1xuYXhpb3MuQ2FuY2VsVG9rZW4gPSByZXF1aXJlKCcuL2NhbmNlbC9DYW5jZWxUb2tlbicpO1xuYXhpb3MuaXNDYW5jZWwgPSByZXF1aXJlKCcuL2NhbmNlbC9pc0NhbmNlbCcpO1xuXG4vLyBFeHBvc2UgYWxsL3NwcmVhZFxuYXhpb3MuYWxsID0gZnVuY3Rpb24gYWxsKHByb21pc2VzKSB7XG4gIHJldHVybiBQcm9taXNlLmFsbChwcm9taXNlcyk7XG59O1xuYXhpb3Muc3ByZWFkID0gcmVxdWlyZSgnLi9oZWxwZXJzL3NwcmVhZCcpO1xuXG5tb2R1bGUuZXhwb3J0cyA9IGF4aW9zO1xuXG4vLyBBbGxvdyB1c2Ugb2YgZGVmYXVsdCBpbXBvcnQgc3ludGF4IGluIFR5cGVTY3JpcHRcbm1vZHVsZS5leHBvcnRzLmRlZmF1bHQgPSBheGlvcztcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9heGlvcy5qc1xuLy8gbW9kdWxlIGlkID0gNTBcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///50\n"); +eval("\n\nvar createError = __webpack_require__(20);\n\n/**\n * Resolve or reject a Promise based on response status.\n *\n * @param {Function} resolve A function that resolves the promise.\n * @param {Function} reject A function that rejects the promise.\n * @param {object} response The response.\n */\nmodule.exports = function settle(resolve, reject, response) {\n var validateStatus = response.config.validateStatus;\n // Note: status is not exposed by XDomainRequest\n if (!response.status || !validateStatus || validateStatus(response.status)) {\n resolve(response);\n } else {\n reject(createError(\n 'Request failed with status code ' + response.status,\n response.config,\n null,\n response.request,\n response\n ));\n }\n};\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvc2V0dGxlLmpzP2RiNTIiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsV0FBVyxTQUFTO0FBQ3BCLFdBQVcsU0FBUztBQUNwQixXQUFXLE9BQU87QUFDbEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsImZpbGUiOiI1MC5qcyIsInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxudmFyIGNyZWF0ZUVycm9yID0gcmVxdWlyZSgnLi9jcmVhdGVFcnJvcicpO1xuXG4vKipcbiAqIFJlc29sdmUgb3IgcmVqZWN0IGEgUHJvbWlzZSBiYXNlZCBvbiByZXNwb25zZSBzdGF0dXMuXG4gKlxuICogQHBhcmFtIHtGdW5jdGlvbn0gcmVzb2x2ZSBBIGZ1bmN0aW9uIHRoYXQgcmVzb2x2ZXMgdGhlIHByb21pc2UuXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSByZWplY3QgQSBmdW5jdGlvbiB0aGF0IHJlamVjdHMgdGhlIHByb21pc2UuXG4gKiBAcGFyYW0ge29iamVjdH0gcmVzcG9uc2UgVGhlIHJlc3BvbnNlLlxuICovXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIHNldHRsZShyZXNvbHZlLCByZWplY3QsIHJlc3BvbnNlKSB7XG4gIHZhciB2YWxpZGF0ZVN0YXR1cyA9IHJlc3BvbnNlLmNvbmZpZy52YWxpZGF0ZVN0YXR1cztcbiAgLy8gTm90ZTogc3RhdHVzIGlzIG5vdCBleHBvc2VkIGJ5IFhEb21haW5SZXF1ZXN0XG4gIGlmICghcmVzcG9uc2Uuc3RhdHVzIHx8ICF2YWxpZGF0ZVN0YXR1cyB8fCB2YWxpZGF0ZVN0YXR1cyhyZXNwb25zZS5zdGF0dXMpKSB7XG4gICAgcmVzb2x2ZShyZXNwb25zZSk7XG4gIH0gZWxzZSB7XG4gICAgcmVqZWN0KGNyZWF0ZUVycm9yKFxuICAgICAgJ1JlcXVlc3QgZmFpbGVkIHdpdGggc3RhdHVzIGNvZGUgJyArIHJlc3BvbnNlLnN0YXR1cyxcbiAgICAgIHJlc3BvbnNlLmNvbmZpZyxcbiAgICAgIG51bGwsXG4gICAgICByZXNwb25zZS5yZXF1ZXN0LFxuICAgICAgcmVzcG9uc2VcbiAgICApKTtcbiAgfVxufTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9jb3JlL3NldHRsZS5qc1xuLy8gbW9kdWxlIGlkID0gNTBcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///50\n"); /***/ }), /* 51 */ -/***/ (function(module, exports) { +/***/ (function(module, exports, __webpack_require__) { -eval("/*!\n * Determine if an object is a Buffer\n *\n * @author Feross Aboukhadijeh \n * @license MIT\n */\n\n// The _isBuffer check is for Safari 5-7 support, because it's missing\n// Object.prototype.constructor. Remove this eventually\nmodule.exports = function (obj) {\n return obj != null && (isBuffer(obj) || isSlowBuffer(obj) || !!obj._isBuffer)\n}\n\nfunction isBuffer (obj) {\n return !!obj.constructor && typeof obj.constructor.isBuffer === 'function' && obj.constructor.isBuffer(obj)\n}\n\n// For Node v0.10 support. Remove this eventually.\nfunction isSlowBuffer (obj) {\n return typeof obj.readFloatLE === 'function' && typeof obj.slice === 'function' && isBuffer(obj.slice(0, 0))\n}\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvaXMtYnVmZmVyL2luZGV4LmpzPzQ1ZWQiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBIiwiZmlsZSI6IjUxLmpzIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBEZXRlcm1pbmUgaWYgYW4gb2JqZWN0IGlzIGEgQnVmZmVyXG4gKlxuICogQGF1dGhvciAgIEZlcm9zcyBBYm91a2hhZGlqZWggPGh0dHBzOi8vZmVyb3NzLm9yZz5cbiAqIEBsaWNlbnNlICBNSVRcbiAqL1xuXG4vLyBUaGUgX2lzQnVmZmVyIGNoZWNrIGlzIGZvciBTYWZhcmkgNS03IHN1cHBvcnQsIGJlY2F1c2UgaXQncyBtaXNzaW5nXG4vLyBPYmplY3QucHJvdG90eXBlLmNvbnN0cnVjdG9yLiBSZW1vdmUgdGhpcyBldmVudHVhbGx5XG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChvYmopIHtcbiAgcmV0dXJuIG9iaiAhPSBudWxsICYmIChpc0J1ZmZlcihvYmopIHx8IGlzU2xvd0J1ZmZlcihvYmopIHx8ICEhb2JqLl9pc0J1ZmZlcilcbn1cblxuZnVuY3Rpb24gaXNCdWZmZXIgKG9iaikge1xuICByZXR1cm4gISFvYmouY29uc3RydWN0b3IgJiYgdHlwZW9mIG9iai5jb25zdHJ1Y3Rvci5pc0J1ZmZlciA9PT0gJ2Z1bmN0aW9uJyAmJiBvYmouY29uc3RydWN0b3IuaXNCdWZmZXIob2JqKVxufVxuXG4vLyBGb3IgTm9kZSB2MC4xMCBzdXBwb3J0LiBSZW1vdmUgdGhpcyBldmVudHVhbGx5LlxuZnVuY3Rpb24gaXNTbG93QnVmZmVyIChvYmopIHtcbiAgcmV0dXJuIHR5cGVvZiBvYmoucmVhZEZsb2F0TEUgPT09ICdmdW5jdGlvbicgJiYgdHlwZW9mIG9iai5zbGljZSA9PT0gJ2Z1bmN0aW9uJyAmJiBpc0J1ZmZlcihvYmouc2xpY2UoMCwgMCkpXG59XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9pcy1idWZmZXIvaW5kZXguanNcbi8vIG1vZHVsZSBpZCA9IDUxXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///51\n"); +"use strict"; +eval("\n\n/**\n * Update an Error with the specified config, error code, and response.\n *\n * @param {Error} error The error to update.\n * @param {Object} config The config.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n * @returns {Error} The error.\n */\nmodule.exports = function enhanceError(error, config, code, request, response) {\n error.config = config;\n if (code) {\n error.code = code;\n }\n error.request = request;\n error.response = response;\n return error;\n};\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvZW5oYW5jZUVycm9yLmpzP2I3Y2EiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsV0FBVyxNQUFNO0FBQ2pCLFdBQVcsT0FBTztBQUNsQixXQUFXLE9BQU87QUFDbEIsV0FBVyxPQUFPO0FBQ2xCLFdBQVcsT0FBTztBQUNsQixhQUFhLE1BQU07QUFDbkI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJmaWxlIjoiNTEuanMiLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIHN0cmljdCc7XG5cbi8qKlxuICogVXBkYXRlIGFuIEVycm9yIHdpdGggdGhlIHNwZWNpZmllZCBjb25maWcsIGVycm9yIGNvZGUsIGFuZCByZXNwb25zZS5cbiAqXG4gKiBAcGFyYW0ge0Vycm9yfSBlcnJvciBUaGUgZXJyb3IgdG8gdXBkYXRlLlxuICogQHBhcmFtIHtPYmplY3R9IGNvbmZpZyBUaGUgY29uZmlnLlxuICogQHBhcmFtIHtzdHJpbmd9IFtjb2RlXSBUaGUgZXJyb3IgY29kZSAoZm9yIGV4YW1wbGUsICdFQ09OTkFCT1JURUQnKS5cbiAqIEBwYXJhbSB7T2JqZWN0fSBbcmVxdWVzdF0gVGhlIHJlcXVlc3QuXG4gKiBAcGFyYW0ge09iamVjdH0gW3Jlc3BvbnNlXSBUaGUgcmVzcG9uc2UuXG4gKiBAcmV0dXJucyB7RXJyb3J9IFRoZSBlcnJvci5cbiAqL1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiBlbmhhbmNlRXJyb3IoZXJyb3IsIGNvbmZpZywgY29kZSwgcmVxdWVzdCwgcmVzcG9uc2UpIHtcbiAgZXJyb3IuY29uZmlnID0gY29uZmlnO1xuICBpZiAoY29kZSkge1xuICAgIGVycm9yLmNvZGUgPSBjb2RlO1xuICB9XG4gIGVycm9yLnJlcXVlc3QgPSByZXF1ZXN0O1xuICBlcnJvci5yZXNwb25zZSA9IHJlc3BvbnNlO1xuICByZXR1cm4gZXJyb3I7XG59O1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvZW5oYW5jZUVycm9yLmpzXG4vLyBtb2R1bGUgaWQgPSA1MVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///51\n"); /***/ }), /* 52 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -eval("\n\nvar defaults = __webpack_require__(6);\nvar utils = __webpack_require__(0);\nvar InterceptorManager = __webpack_require__(61);\nvar dispatchRequest = __webpack_require__(62);\n\n/**\n * Create a new instance of Axios\n *\n * @param {Object} instanceConfig The default config for the instance\n */\nfunction Axios(instanceConfig) {\n this.defaults = instanceConfig;\n this.interceptors = {\n request: new InterceptorManager(),\n response: new InterceptorManager()\n };\n}\n\n/**\n * Dispatch a request\n *\n * @param {Object} config The config specific for this request (merged with this.defaults)\n */\nAxios.prototype.request = function request(config) {\n /*eslint no-param-reassign:0*/\n // Allow for axios('example/url'[, config]) a la fetch API\n if (typeof config === 'string') {\n config = utils.merge({\n url: arguments[0]\n }, arguments[1]);\n }\n\n config = utils.merge(defaults, {method: 'get'}, this.defaults, config);\n config.method = config.method.toLowerCase();\n\n // Hook up interceptors middleware\n var chain = [dispatchRequest, undefined];\n var promise = Promise.resolve(config);\n\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n chain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n chain.push(interceptor.fulfilled, interceptor.rejected);\n });\n\n while (chain.length) {\n promise = promise.then(chain.shift(), chain.shift());\n }\n\n return promise;\n};\n\n// Provide aliases for supported request methods\nutils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, config) {\n return this.request(utils.merge(config || {}, {\n method: method,\n url: url\n }));\n };\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, data, config) {\n return this.request(utils.merge(config || {}, {\n method: method,\n url: url,\n data: data\n }));\n };\n});\n\nmodule.exports = Axios;\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvQXhpb3MuanM/NWU2NSJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLE9BQU87QUFDbEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLE9BQU87QUFDbEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7O0FBRUEsa0NBQWtDLGNBQWM7QUFDaEQ7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxHQUFHOztBQUVIO0FBQ0E7QUFDQSxHQUFHOztBQUVIO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0RBQWdEO0FBQ2hEO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBLGdEQUFnRDtBQUNoRDtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxDQUFDOztBQUVEIiwiZmlsZSI6IjUyLmpzIiwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBzdHJpY3QnO1xuXG52YXIgZGVmYXVsdHMgPSByZXF1aXJlKCcuLy4uL2RlZmF1bHRzJyk7XG52YXIgdXRpbHMgPSByZXF1aXJlKCcuLy4uL3V0aWxzJyk7XG52YXIgSW50ZXJjZXB0b3JNYW5hZ2VyID0gcmVxdWlyZSgnLi9JbnRlcmNlcHRvck1hbmFnZXInKTtcbnZhciBkaXNwYXRjaFJlcXVlc3QgPSByZXF1aXJlKCcuL2Rpc3BhdGNoUmVxdWVzdCcpO1xuXG4vKipcbiAqIENyZWF0ZSBhIG5ldyBpbnN0YW5jZSBvZiBBeGlvc1xuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSBpbnN0YW5jZUNvbmZpZyBUaGUgZGVmYXVsdCBjb25maWcgZm9yIHRoZSBpbnN0YW5jZVxuICovXG5mdW5jdGlvbiBBeGlvcyhpbnN0YW5jZUNvbmZpZykge1xuICB0aGlzLmRlZmF1bHRzID0gaW5zdGFuY2VDb25maWc7XG4gIHRoaXMuaW50ZXJjZXB0b3JzID0ge1xuICAgIHJlcXVlc3Q6IG5ldyBJbnRlcmNlcHRvck1hbmFnZXIoKSxcbiAgICByZXNwb25zZTogbmV3IEludGVyY2VwdG9yTWFuYWdlcigpXG4gIH07XG59XG5cbi8qKlxuICogRGlzcGF0Y2ggYSByZXF1ZXN0XG4gKlxuICogQHBhcmFtIHtPYmplY3R9IGNvbmZpZyBUaGUgY29uZmlnIHNwZWNpZmljIGZvciB0aGlzIHJlcXVlc3QgKG1lcmdlZCB3aXRoIHRoaXMuZGVmYXVsdHMpXG4gKi9cbkF4aW9zLnByb3RvdHlwZS5yZXF1ZXN0ID0gZnVuY3Rpb24gcmVxdWVzdChjb25maWcpIHtcbiAgLyplc2xpbnQgbm8tcGFyYW0tcmVhc3NpZ246MCovXG4gIC8vIEFsbG93IGZvciBheGlvcygnZXhhbXBsZS91cmwnWywgY29uZmlnXSkgYSBsYSBmZXRjaCBBUElcbiAgaWYgKHR5cGVvZiBjb25maWcgPT09ICdzdHJpbmcnKSB7XG4gICAgY29uZmlnID0gdXRpbHMubWVyZ2Uoe1xuICAgICAgdXJsOiBhcmd1bWVudHNbMF1cbiAgICB9LCBhcmd1bWVudHNbMV0pO1xuICB9XG5cbiAgY29uZmlnID0gdXRpbHMubWVyZ2UoZGVmYXVsdHMsIHttZXRob2Q6ICdnZXQnfSwgdGhpcy5kZWZhdWx0cywgY29uZmlnKTtcbiAgY29uZmlnLm1ldGhvZCA9IGNvbmZpZy5tZXRob2QudG9Mb3dlckNhc2UoKTtcblxuICAvLyBIb29rIHVwIGludGVyY2VwdG9ycyBtaWRkbGV3YXJlXG4gIHZhciBjaGFpbiA9IFtkaXNwYXRjaFJlcXVlc3QsIHVuZGVmaW5lZF07XG4gIHZhciBwcm9taXNlID0gUHJvbWlzZS5yZXNvbHZlKGNvbmZpZyk7XG5cbiAgdGhpcy5pbnRlcmNlcHRvcnMucmVxdWVzdC5mb3JFYWNoKGZ1bmN0aW9uIHVuc2hpZnRSZXF1ZXN0SW50ZXJjZXB0b3JzKGludGVyY2VwdG9yKSB7XG4gICAgY2hhaW4udW5zaGlmdChpbnRlcmNlcHRvci5mdWxmaWxsZWQsIGludGVyY2VwdG9yLnJlamVjdGVkKTtcbiAgfSk7XG5cbiAgdGhpcy5pbnRlcmNlcHRvcnMucmVzcG9uc2UuZm9yRWFjaChmdW5jdGlvbiBwdXNoUmVzcG9uc2VJbnRlcmNlcHRvcnMoaW50ZXJjZXB0b3IpIHtcbiAgICBjaGFpbi5wdXNoKGludGVyY2VwdG9yLmZ1bGZpbGxlZCwgaW50ZXJjZXB0b3IucmVqZWN0ZWQpO1xuICB9KTtcblxuICB3aGlsZSAoY2hhaW4ubGVuZ3RoKSB7XG4gICAgcHJvbWlzZSA9IHByb21pc2UudGhlbihjaGFpbi5zaGlmdCgpLCBjaGFpbi5zaGlmdCgpKTtcbiAgfVxuXG4gIHJldHVybiBwcm9taXNlO1xufTtcblxuLy8gUHJvdmlkZSBhbGlhc2VzIGZvciBzdXBwb3J0ZWQgcmVxdWVzdCBtZXRob2RzXG51dGlscy5mb3JFYWNoKFsnZGVsZXRlJywgJ2dldCcsICdoZWFkJywgJ29wdGlvbnMnXSwgZnVuY3Rpb24gZm9yRWFjaE1ldGhvZE5vRGF0YShtZXRob2QpIHtcbiAgLyplc2xpbnQgZnVuYy1uYW1lczowKi9cbiAgQXhpb3MucHJvdG90eXBlW21ldGhvZF0gPSBmdW5jdGlvbih1cmwsIGNvbmZpZykge1xuICAgIHJldHVybiB0aGlzLnJlcXVlc3QodXRpbHMubWVyZ2UoY29uZmlnIHx8IHt9LCB7XG4gICAgICBtZXRob2Q6IG1ldGhvZCxcbiAgICAgIHVybDogdXJsXG4gICAgfSkpO1xuICB9O1xufSk7XG5cbnV0aWxzLmZvckVhY2goWydwb3N0JywgJ3B1dCcsICdwYXRjaCddLCBmdW5jdGlvbiBmb3JFYWNoTWV0aG9kV2l0aERhdGEobWV0aG9kKSB7XG4gIC8qZXNsaW50IGZ1bmMtbmFtZXM6MCovXG4gIEF4aW9zLnByb3RvdHlwZVttZXRob2RdID0gZnVuY3Rpb24odXJsLCBkYXRhLCBjb25maWcpIHtcbiAgICByZXR1cm4gdGhpcy5yZXF1ZXN0KHV0aWxzLm1lcmdlKGNvbmZpZyB8fCB7fSwge1xuICAgICAgbWV0aG9kOiBtZXRob2QsXG4gICAgICB1cmw6IHVybCxcbiAgICAgIGRhdGE6IGRhdGFcbiAgICB9KSk7XG4gIH07XG59KTtcblxubW9kdWxlLmV4cG9ydHMgPSBBeGlvcztcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9jb3JlL0F4aW9zLmpzXG4vLyBtb2R1bGUgaWQgPSA1MlxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///52\n"); +eval("\n\nvar utils = __webpack_require__(0);\n\nfunction encode(val) {\n return encodeURIComponent(val).\n replace(/%40/gi, '@').\n replace(/%3A/gi, ':').\n replace(/%24/g, '$').\n replace(/%2C/gi, ',').\n replace(/%20/g, '+').\n replace(/%5B/gi, '[').\n replace(/%5D/gi, ']');\n}\n\n/**\n * Build a URL by appending params to the end\n *\n * @param {string} url The base of the url (e.g., http://www.google.com)\n * @param {object} [params] The params to be appended\n * @returns {string} The formatted url\n */\nmodule.exports = function buildURL(url, params, paramsSerializer) {\n /*eslint no-param-reassign:0*/\n if (!params) {\n return url;\n }\n\n var serializedParams;\n if (paramsSerializer) {\n serializedParams = paramsSerializer(params);\n } else if (utils.isURLSearchParams(params)) {\n serializedParams = params.toString();\n } else {\n var parts = [];\n\n utils.forEach(params, function serialize(val, key) {\n if (val === null || typeof val === 'undefined') {\n return;\n }\n\n if (utils.isArray(val)) {\n key = key + '[]';\n } else {\n val = [val];\n }\n\n utils.forEach(val, function parseValue(v) {\n if (utils.isDate(v)) {\n v = v.toISOString();\n } else if (utils.isObject(v)) {\n v = JSON.stringify(v);\n }\n parts.push(encode(key) + '=' + encode(v));\n });\n });\n\n serializedParams = parts.join('&');\n }\n\n if (serializedParams) {\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;\n }\n\n return url;\n};\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvYnVpbGRVUkwuanM/MGQwMCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLE9BQU87QUFDbEIsV0FBVyxPQUFPO0FBQ2xCLGFBQWEsT0FBTztBQUNwQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0EsR0FBRztBQUNIOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQLEtBQUs7O0FBRUw7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSIsImZpbGUiOiI1Mi5qcyIsInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxudmFyIHV0aWxzID0gcmVxdWlyZSgnLi8uLi91dGlscycpO1xuXG5mdW5jdGlvbiBlbmNvZGUodmFsKSB7XG4gIHJldHVybiBlbmNvZGVVUklDb21wb25lbnQodmFsKS5cbiAgICByZXBsYWNlKC8lNDAvZ2ksICdAJykuXG4gICAgcmVwbGFjZSgvJTNBL2dpLCAnOicpLlxuICAgIHJlcGxhY2UoLyUyNC9nLCAnJCcpLlxuICAgIHJlcGxhY2UoLyUyQy9naSwgJywnKS5cbiAgICByZXBsYWNlKC8lMjAvZywgJysnKS5cbiAgICByZXBsYWNlKC8lNUIvZ2ksICdbJykuXG4gICAgcmVwbGFjZSgvJTVEL2dpLCAnXScpO1xufVxuXG4vKipcbiAqIEJ1aWxkIGEgVVJMIGJ5IGFwcGVuZGluZyBwYXJhbXMgdG8gdGhlIGVuZFxuICpcbiAqIEBwYXJhbSB7c3RyaW5nfSB1cmwgVGhlIGJhc2Ugb2YgdGhlIHVybCAoZS5nLiwgaHR0cDovL3d3dy5nb29nbGUuY29tKVxuICogQHBhcmFtIHtvYmplY3R9IFtwYXJhbXNdIFRoZSBwYXJhbXMgdG8gYmUgYXBwZW5kZWRcbiAqIEByZXR1cm5zIHtzdHJpbmd9IFRoZSBmb3JtYXR0ZWQgdXJsXG4gKi9cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gYnVpbGRVUkwodXJsLCBwYXJhbXMsIHBhcmFtc1NlcmlhbGl6ZXIpIHtcbiAgLyplc2xpbnQgbm8tcGFyYW0tcmVhc3NpZ246MCovXG4gIGlmICghcGFyYW1zKSB7XG4gICAgcmV0dXJuIHVybDtcbiAgfVxuXG4gIHZhciBzZXJpYWxpemVkUGFyYW1zO1xuICBpZiAocGFyYW1zU2VyaWFsaXplcikge1xuICAgIHNlcmlhbGl6ZWRQYXJhbXMgPSBwYXJhbXNTZXJpYWxpemVyKHBhcmFtcyk7XG4gIH0gZWxzZSBpZiAodXRpbHMuaXNVUkxTZWFyY2hQYXJhbXMocGFyYW1zKSkge1xuICAgIHNlcmlhbGl6ZWRQYXJhbXMgPSBwYXJhbXMudG9TdHJpbmcoKTtcbiAgfSBlbHNlIHtcbiAgICB2YXIgcGFydHMgPSBbXTtcblxuICAgIHV0aWxzLmZvckVhY2gocGFyYW1zLCBmdW5jdGlvbiBzZXJpYWxpemUodmFsLCBrZXkpIHtcbiAgICAgIGlmICh2YWwgPT09IG51bGwgfHwgdHlwZW9mIHZhbCA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBpZiAodXRpbHMuaXNBcnJheSh2YWwpKSB7XG4gICAgICAgIGtleSA9IGtleSArICdbXSc7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB2YWwgPSBbdmFsXTtcbiAgICAgIH1cblxuICAgICAgdXRpbHMuZm9yRWFjaCh2YWwsIGZ1bmN0aW9uIHBhcnNlVmFsdWUodikge1xuICAgICAgICBpZiAodXRpbHMuaXNEYXRlKHYpKSB7XG4gICAgICAgICAgdiA9IHYudG9JU09TdHJpbmcoKTtcbiAgICAgICAgfSBlbHNlIGlmICh1dGlscy5pc09iamVjdCh2KSkge1xuICAgICAgICAgIHYgPSBKU09OLnN0cmluZ2lmeSh2KTtcbiAgICAgICAgfVxuICAgICAgICBwYXJ0cy5wdXNoKGVuY29kZShrZXkpICsgJz0nICsgZW5jb2RlKHYpKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgc2VyaWFsaXplZFBhcmFtcyA9IHBhcnRzLmpvaW4oJyYnKTtcbiAgfVxuXG4gIGlmIChzZXJpYWxpemVkUGFyYW1zKSB7XG4gICAgdXJsICs9ICh1cmwuaW5kZXhPZignPycpID09PSAtMSA/ICc/JyA6ICcmJykgKyBzZXJpYWxpemVkUGFyYW1zO1xuICB9XG5cbiAgcmV0dXJuIHVybDtcbn07XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvaGVscGVycy9idWlsZFVSTC5qc1xuLy8gbW9kdWxlIGlkID0gNTJcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///52\n"); /***/ }), /* 53 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -eval("\n\nvar utils = __webpack_require__(0);\n\nmodule.exports = function normalizeHeaderName(headers, normalizedName) {\n utils.forEach(headers, function processHeader(value, name) {\n if (name !== normalizedName && name.toUpperCase() === normalizedName.toUpperCase()) {\n headers[normalizedName] = value;\n delete headers[name];\n }\n });\n};\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvbm9ybWFsaXplSGVhZGVyTmFtZS5qcz9lNTU0Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSCIsImZpbGUiOiI1My5qcyIsInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxudmFyIHV0aWxzID0gcmVxdWlyZSgnLi4vdXRpbHMnKTtcblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiBub3JtYWxpemVIZWFkZXJOYW1lKGhlYWRlcnMsIG5vcm1hbGl6ZWROYW1lKSB7XG4gIHV0aWxzLmZvckVhY2goaGVhZGVycywgZnVuY3Rpb24gcHJvY2Vzc0hlYWRlcih2YWx1ZSwgbmFtZSkge1xuICAgIGlmIChuYW1lICE9PSBub3JtYWxpemVkTmFtZSAmJiBuYW1lLnRvVXBwZXJDYXNlKCkgPT09IG5vcm1hbGl6ZWROYW1lLnRvVXBwZXJDYXNlKCkpIHtcbiAgICAgIGhlYWRlcnNbbm9ybWFsaXplZE5hbWVdID0gdmFsdWU7XG4gICAgICBkZWxldGUgaGVhZGVyc1tuYW1lXTtcbiAgICB9XG4gIH0pO1xufTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9oZWxwZXJzL25vcm1hbGl6ZUhlYWRlck5hbWUuanNcbi8vIG1vZHVsZSBpZCA9IDUzXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///53\n"); +eval("\n\nvar utils = __webpack_require__(0);\n\n// Headers whose duplicates are ignored by node\n// c.f. https://nodejs.org/api/http.html#http_message_headers\nvar ignoreDuplicateOf = [\n 'age', 'authorization', 'content-length', 'content-type', 'etag',\n 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since',\n 'last-modified', 'location', 'max-forwards', 'proxy-authorization',\n 'referer', 'retry-after', 'user-agent'\n];\n\n/**\n * Parse headers into an object\n *\n * ```\n * Date: Wed, 27 Aug 2014 08:58:49 GMT\n * Content-Type: application/json\n * Connection: keep-alive\n * Transfer-Encoding: chunked\n * ```\n *\n * @param {String} headers Headers needing to be parsed\n * @returns {Object} Headers parsed into an object\n */\nmodule.exports = function parseHeaders(headers) {\n var parsed = {};\n var key;\n var val;\n var i;\n\n if (!headers) { return parsed; }\n\n utils.forEach(headers.split('\\n'), function parser(line) {\n i = line.indexOf(':');\n key = utils.trim(line.substr(0, i)).toLowerCase();\n val = utils.trim(line.substr(i + 1));\n\n if (key) {\n if (parsed[key] && ignoreDuplicateOf.indexOf(key) >= 0) {\n return;\n }\n if (key === 'set-cookie') {\n parsed[key] = (parsed[key] ? parsed[key] : []).concat([val]);\n } else {\n parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;\n }\n }\n });\n\n return parsed;\n};\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvcGFyc2VIZWFkZXJzLmpzP2EwOTkiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFdBQVcsT0FBTztBQUNsQixhQUFhLE9BQU87QUFDcEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLGlCQUFpQixlQUFlOztBQUVoQztBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBO0FBQ0EsR0FBRzs7QUFFSDtBQUNBIiwiZmlsZSI6IjUzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBzdHJpY3QnO1xuXG52YXIgdXRpbHMgPSByZXF1aXJlKCcuLy4uL3V0aWxzJyk7XG5cbi8vIEhlYWRlcnMgd2hvc2UgZHVwbGljYXRlcyBhcmUgaWdub3JlZCBieSBub2RlXG4vLyBjLmYuIGh0dHBzOi8vbm9kZWpzLm9yZy9hcGkvaHR0cC5odG1sI2h0dHBfbWVzc2FnZV9oZWFkZXJzXG52YXIgaWdub3JlRHVwbGljYXRlT2YgPSBbXG4gICdhZ2UnLCAnYXV0aG9yaXphdGlvbicsICdjb250ZW50LWxlbmd0aCcsICdjb250ZW50LXR5cGUnLCAnZXRhZycsXG4gICdleHBpcmVzJywgJ2Zyb20nLCAnaG9zdCcsICdpZi1tb2RpZmllZC1zaW5jZScsICdpZi11bm1vZGlmaWVkLXNpbmNlJyxcbiAgJ2xhc3QtbW9kaWZpZWQnLCAnbG9jYXRpb24nLCAnbWF4LWZvcndhcmRzJywgJ3Byb3h5LWF1dGhvcml6YXRpb24nLFxuICAncmVmZXJlcicsICdyZXRyeS1hZnRlcicsICd1c2VyLWFnZW50J1xuXTtcblxuLyoqXG4gKiBQYXJzZSBoZWFkZXJzIGludG8gYW4gb2JqZWN0XG4gKlxuICogYGBgXG4gKiBEYXRlOiBXZWQsIDI3IEF1ZyAyMDE0IDA4OjU4OjQ5IEdNVFxuICogQ29udGVudC1UeXBlOiBhcHBsaWNhdGlvbi9qc29uXG4gKiBDb25uZWN0aW9uOiBrZWVwLWFsaXZlXG4gKiBUcmFuc2Zlci1FbmNvZGluZzogY2h1bmtlZFxuICogYGBgXG4gKlxuICogQHBhcmFtIHtTdHJpbmd9IGhlYWRlcnMgSGVhZGVycyBuZWVkaW5nIHRvIGJlIHBhcnNlZFxuICogQHJldHVybnMge09iamVjdH0gSGVhZGVycyBwYXJzZWQgaW50byBhbiBvYmplY3RcbiAqL1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiBwYXJzZUhlYWRlcnMoaGVhZGVycykge1xuICB2YXIgcGFyc2VkID0ge307XG4gIHZhciBrZXk7XG4gIHZhciB2YWw7XG4gIHZhciBpO1xuXG4gIGlmICghaGVhZGVycykgeyByZXR1cm4gcGFyc2VkOyB9XG5cbiAgdXRpbHMuZm9yRWFjaChoZWFkZXJzLnNwbGl0KCdcXG4nKSwgZnVuY3Rpb24gcGFyc2VyKGxpbmUpIHtcbiAgICBpID0gbGluZS5pbmRleE9mKCc6Jyk7XG4gICAga2V5ID0gdXRpbHMudHJpbShsaW5lLnN1YnN0cigwLCBpKSkudG9Mb3dlckNhc2UoKTtcbiAgICB2YWwgPSB1dGlscy50cmltKGxpbmUuc3Vic3RyKGkgKyAxKSk7XG5cbiAgICBpZiAoa2V5KSB7XG4gICAgICBpZiAocGFyc2VkW2tleV0gJiYgaWdub3JlRHVwbGljYXRlT2YuaW5kZXhPZihrZXkpID49IDApIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgaWYgKGtleSA9PT0gJ3NldC1jb29raWUnKSB7XG4gICAgICAgIHBhcnNlZFtrZXldID0gKHBhcnNlZFtrZXldID8gcGFyc2VkW2tleV0gOiBbXSkuY29uY2F0KFt2YWxdKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHBhcnNlZFtrZXldID0gcGFyc2VkW2tleV0gPyBwYXJzZWRba2V5XSArICcsICcgKyB2YWwgOiB2YWw7XG4gICAgICB9XG4gICAgfVxuICB9KTtcblxuICByZXR1cm4gcGFyc2VkO1xufTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9oZWxwZXJzL3BhcnNlSGVhZGVycy5qc1xuLy8gbW9kdWxlIGlkID0gNTNcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///53\n"); /***/ }), /* 54 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -eval("\n\nvar createError = __webpack_require__(20);\n\n/**\n * Resolve or reject a Promise based on response status.\n *\n * @param {Function} resolve A function that resolves the promise.\n * @param {Function} reject A function that rejects the promise.\n * @param {object} response The response.\n */\nmodule.exports = function settle(resolve, reject, response) {\n var validateStatus = response.config.validateStatus;\n // Note: status is not exposed by XDomainRequest\n if (!response.status || !validateStatus || validateStatus(response.status)) {\n resolve(response);\n } else {\n reject(createError(\n 'Request failed with status code ' + response.status,\n response.config,\n null,\n response.request,\n response\n ));\n }\n};\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvc2V0dGxlLmpzP2RiNTIiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsV0FBVyxTQUFTO0FBQ3BCLFdBQVcsU0FBUztBQUNwQixXQUFXLE9BQU87QUFDbEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsImZpbGUiOiI1NC5qcyIsInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxudmFyIGNyZWF0ZUVycm9yID0gcmVxdWlyZSgnLi9jcmVhdGVFcnJvcicpO1xuXG4vKipcbiAqIFJlc29sdmUgb3IgcmVqZWN0IGEgUHJvbWlzZSBiYXNlZCBvbiByZXNwb25zZSBzdGF0dXMuXG4gKlxuICogQHBhcmFtIHtGdW5jdGlvbn0gcmVzb2x2ZSBBIGZ1bmN0aW9uIHRoYXQgcmVzb2x2ZXMgdGhlIHByb21pc2UuXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSByZWplY3QgQSBmdW5jdGlvbiB0aGF0IHJlamVjdHMgdGhlIHByb21pc2UuXG4gKiBAcGFyYW0ge29iamVjdH0gcmVzcG9uc2UgVGhlIHJlc3BvbnNlLlxuICovXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIHNldHRsZShyZXNvbHZlLCByZWplY3QsIHJlc3BvbnNlKSB7XG4gIHZhciB2YWxpZGF0ZVN0YXR1cyA9IHJlc3BvbnNlLmNvbmZpZy52YWxpZGF0ZVN0YXR1cztcbiAgLy8gTm90ZTogc3RhdHVzIGlzIG5vdCBleHBvc2VkIGJ5IFhEb21haW5SZXF1ZXN0XG4gIGlmICghcmVzcG9uc2Uuc3RhdHVzIHx8ICF2YWxpZGF0ZVN0YXR1cyB8fCB2YWxpZGF0ZVN0YXR1cyhyZXNwb25zZS5zdGF0dXMpKSB7XG4gICAgcmVzb2x2ZShyZXNwb25zZSk7XG4gIH0gZWxzZSB7XG4gICAgcmVqZWN0KGNyZWF0ZUVycm9yKFxuICAgICAgJ1JlcXVlc3QgZmFpbGVkIHdpdGggc3RhdHVzIGNvZGUgJyArIHJlc3BvbnNlLnN0YXR1cyxcbiAgICAgIHJlc3BvbnNlLmNvbmZpZyxcbiAgICAgIG51bGwsXG4gICAgICByZXNwb25zZS5yZXF1ZXN0LFxuICAgICAgcmVzcG9uc2VcbiAgICApKTtcbiAgfVxufTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9jb3JlL3NldHRsZS5qc1xuLy8gbW9kdWxlIGlkID0gNTRcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///54\n"); +eval("\n\nvar utils = __webpack_require__(0);\n\nmodule.exports = (\n utils.isStandardBrowserEnv() ?\n\n // Standard browser envs have full support of the APIs needed to test\n // whether the request URL is of the same origin as current location.\n (function standardBrowserEnv() {\n var msie = /(msie|trident)/i.test(navigator.userAgent);\n var urlParsingNode = document.createElement('a');\n var originURL;\n\n /**\n * Parse a URL to discover it's components\n *\n * @param {String} url The URL to be parsed\n * @returns {Object}\n */\n function resolveURL(url) {\n var href = url;\n\n if (msie) {\n // IE needs attribute set twice to normalize properties\n urlParsingNode.setAttribute('href', href);\n href = urlParsingNode.href;\n }\n\n urlParsingNode.setAttribute('href', href);\n\n // urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils\n return {\n href: urlParsingNode.href,\n protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',\n host: urlParsingNode.host,\n search: urlParsingNode.search ? urlParsingNode.search.replace(/^\\?/, '') : '',\n hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',\n hostname: urlParsingNode.hostname,\n port: urlParsingNode.port,\n pathname: (urlParsingNode.pathname.charAt(0) === '/') ?\n urlParsingNode.pathname :\n '/' + urlParsingNode.pathname\n };\n }\n\n originURL = resolveURL(window.location.href);\n\n /**\n * Determine if a URL shares the same origin as the current location\n *\n * @param {String} requestURL The URL to test\n * @returns {boolean} True if URL shares the same origin, otherwise false\n */\n return function isURLSameOrigin(requestURL) {\n var parsed = (utils.isString(requestURL)) ? resolveURL(requestURL) : requestURL;\n return (parsed.protocol === originURL.protocol &&\n parsed.host === originURL.host);\n };\n })() :\n\n // Non standard browser envs (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return function isURLSameOrigin() {\n return true;\n };\n })()\n);\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvaXNVUkxTYW1lT3JpZ2luLmpzPzE4NzAiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0FBRUE7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsY0FBYyxPQUFPO0FBQ3JCLGdCQUFnQjtBQUNoQjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLGNBQWMsT0FBTztBQUNyQixnQkFBZ0IsUUFBUTtBQUN4QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHOztBQUVIO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0giLCJmaWxlIjoiNTQuanMiLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIHN0cmljdCc7XG5cbnZhciB1dGlscyA9IHJlcXVpcmUoJy4vLi4vdXRpbHMnKTtcblxubW9kdWxlLmV4cG9ydHMgPSAoXG4gIHV0aWxzLmlzU3RhbmRhcmRCcm93c2VyRW52KCkgP1xuXG4gIC8vIFN0YW5kYXJkIGJyb3dzZXIgZW52cyBoYXZlIGZ1bGwgc3VwcG9ydCBvZiB0aGUgQVBJcyBuZWVkZWQgdG8gdGVzdFxuICAvLyB3aGV0aGVyIHRoZSByZXF1ZXN0IFVSTCBpcyBvZiB0aGUgc2FtZSBvcmlnaW4gYXMgY3VycmVudCBsb2NhdGlvbi5cbiAgKGZ1bmN0aW9uIHN0YW5kYXJkQnJvd3NlckVudigpIHtcbiAgICB2YXIgbXNpZSA9IC8obXNpZXx0cmlkZW50KS9pLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCk7XG4gICAgdmFyIHVybFBhcnNpbmdOb2RlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpO1xuICAgIHZhciBvcmlnaW5VUkw7XG5cbiAgICAvKipcbiAgICAqIFBhcnNlIGEgVVJMIHRvIGRpc2NvdmVyIGl0J3MgY29tcG9uZW50c1xuICAgICpcbiAgICAqIEBwYXJhbSB7U3RyaW5nfSB1cmwgVGhlIFVSTCB0byBiZSBwYXJzZWRcbiAgICAqIEByZXR1cm5zIHtPYmplY3R9XG4gICAgKi9cbiAgICBmdW5jdGlvbiByZXNvbHZlVVJMKHVybCkge1xuICAgICAgdmFyIGhyZWYgPSB1cmw7XG5cbiAgICAgIGlmIChtc2llKSB7XG4gICAgICAgIC8vIElFIG5lZWRzIGF0dHJpYnV0ZSBzZXQgdHdpY2UgdG8gbm9ybWFsaXplIHByb3BlcnRpZXNcbiAgICAgICAgdXJsUGFyc2luZ05vZGUuc2V0QXR0cmlidXRlKCdocmVmJywgaHJlZik7XG4gICAgICAgIGhyZWYgPSB1cmxQYXJzaW5nTm9kZS5ocmVmO1xuICAgICAgfVxuXG4gICAgICB1cmxQYXJzaW5nTm9kZS5zZXRBdHRyaWJ1dGUoJ2hyZWYnLCBocmVmKTtcblxuICAgICAgLy8gdXJsUGFyc2luZ05vZGUgcHJvdmlkZXMgdGhlIFVybFV0aWxzIGludGVyZmFjZSAtIGh0dHA6Ly91cmwuc3BlYy53aGF0d2cub3JnLyN1cmx1dGlsc1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaHJlZjogdXJsUGFyc2luZ05vZGUuaHJlZixcbiAgICAgICAgcHJvdG9jb2w6IHVybFBhcnNpbmdOb2RlLnByb3RvY29sID8gdXJsUGFyc2luZ05vZGUucHJvdG9jb2wucmVwbGFjZSgvOiQvLCAnJykgOiAnJyxcbiAgICAgICAgaG9zdDogdXJsUGFyc2luZ05vZGUuaG9zdCxcbiAgICAgICAgc2VhcmNoOiB1cmxQYXJzaW5nTm9kZS5zZWFyY2ggPyB1cmxQYXJzaW5nTm9kZS5zZWFyY2gucmVwbGFjZSgvXlxcPy8sICcnKSA6ICcnLFxuICAgICAgICBoYXNoOiB1cmxQYXJzaW5nTm9kZS5oYXNoID8gdXJsUGFyc2luZ05vZGUuaGFzaC5yZXBsYWNlKC9eIy8sICcnKSA6ICcnLFxuICAgICAgICBob3N0bmFtZTogdXJsUGFyc2luZ05vZGUuaG9zdG5hbWUsXG4gICAgICAgIHBvcnQ6IHVybFBhcnNpbmdOb2RlLnBvcnQsXG4gICAgICAgIHBhdGhuYW1lOiAodXJsUGFyc2luZ05vZGUucGF0aG5hbWUuY2hhckF0KDApID09PSAnLycpID9cbiAgICAgICAgICAgICAgICAgIHVybFBhcnNpbmdOb2RlLnBhdGhuYW1lIDpcbiAgICAgICAgICAgICAgICAgICcvJyArIHVybFBhcnNpbmdOb2RlLnBhdGhuYW1lXG4gICAgICB9O1xuICAgIH1cblxuICAgIG9yaWdpblVSTCA9IHJlc29sdmVVUkwod2luZG93LmxvY2F0aW9uLmhyZWYpO1xuXG4gICAgLyoqXG4gICAgKiBEZXRlcm1pbmUgaWYgYSBVUkwgc2hhcmVzIHRoZSBzYW1lIG9yaWdpbiBhcyB0aGUgY3VycmVudCBsb2NhdGlvblxuICAgICpcbiAgICAqIEBwYXJhbSB7U3RyaW5nfSByZXF1ZXN0VVJMIFRoZSBVUkwgdG8gdGVzdFxuICAgICogQHJldHVybnMge2Jvb2xlYW59IFRydWUgaWYgVVJMIHNoYXJlcyB0aGUgc2FtZSBvcmlnaW4sIG90aGVyd2lzZSBmYWxzZVxuICAgICovXG4gICAgcmV0dXJuIGZ1bmN0aW9uIGlzVVJMU2FtZU9yaWdpbihyZXF1ZXN0VVJMKSB7XG4gICAgICB2YXIgcGFyc2VkID0gKHV0aWxzLmlzU3RyaW5nKHJlcXVlc3RVUkwpKSA/IHJlc29sdmVVUkwocmVxdWVzdFVSTCkgOiByZXF1ZXN0VVJMO1xuICAgICAgcmV0dXJuIChwYXJzZWQucHJvdG9jb2wgPT09IG9yaWdpblVSTC5wcm90b2NvbCAmJlxuICAgICAgICAgICAgcGFyc2VkLmhvc3QgPT09IG9yaWdpblVSTC5ob3N0KTtcbiAgICB9O1xuICB9KSgpIDpcblxuICAvLyBOb24gc3RhbmRhcmQgYnJvd3NlciBlbnZzICh3ZWIgd29ya2VycywgcmVhY3QtbmF0aXZlKSBsYWNrIG5lZWRlZCBzdXBwb3J0LlxuICAoZnVuY3Rpb24gbm9uU3RhbmRhcmRCcm93c2VyRW52KCkge1xuICAgIHJldHVybiBmdW5jdGlvbiBpc1VSTFNhbWVPcmlnaW4oKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9O1xuICB9KSgpXG4pO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvaXNVUkxTYW1lT3JpZ2luLmpzXG4vLyBtb2R1bGUgaWQgPSA1NFxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///54\n"); /***/ }), /* 55 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -eval("\n\n/**\n * Update an Error with the specified config, error code, and response.\n *\n * @param {Error} error The error to update.\n * @param {Object} config The config.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n * @returns {Error} The error.\n */\nmodule.exports = function enhanceError(error, config, code, request, response) {\n error.config = config;\n if (code) {\n error.code = code;\n }\n error.request = request;\n error.response = response;\n return error;\n};\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvZW5oYW5jZUVycm9yLmpzP2I3Y2EiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsV0FBVyxNQUFNO0FBQ2pCLFdBQVcsT0FBTztBQUNsQixXQUFXLE9BQU87QUFDbEIsV0FBVyxPQUFPO0FBQ2xCLFdBQVcsT0FBTztBQUNsQixhQUFhLE1BQU07QUFDbkI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJmaWxlIjoiNTUuanMiLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIHN0cmljdCc7XG5cbi8qKlxuICogVXBkYXRlIGFuIEVycm9yIHdpdGggdGhlIHNwZWNpZmllZCBjb25maWcsIGVycm9yIGNvZGUsIGFuZCByZXNwb25zZS5cbiAqXG4gKiBAcGFyYW0ge0Vycm9yfSBlcnJvciBUaGUgZXJyb3IgdG8gdXBkYXRlLlxuICogQHBhcmFtIHtPYmplY3R9IGNvbmZpZyBUaGUgY29uZmlnLlxuICogQHBhcmFtIHtzdHJpbmd9IFtjb2RlXSBUaGUgZXJyb3IgY29kZSAoZm9yIGV4YW1wbGUsICdFQ09OTkFCT1JURUQnKS5cbiAqIEBwYXJhbSB7T2JqZWN0fSBbcmVxdWVzdF0gVGhlIHJlcXVlc3QuXG4gKiBAcGFyYW0ge09iamVjdH0gW3Jlc3BvbnNlXSBUaGUgcmVzcG9uc2UuXG4gKiBAcmV0dXJucyB7RXJyb3J9IFRoZSBlcnJvci5cbiAqL1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiBlbmhhbmNlRXJyb3IoZXJyb3IsIGNvbmZpZywgY29kZSwgcmVxdWVzdCwgcmVzcG9uc2UpIHtcbiAgZXJyb3IuY29uZmlnID0gY29uZmlnO1xuICBpZiAoY29kZSkge1xuICAgIGVycm9yLmNvZGUgPSBjb2RlO1xuICB9XG4gIGVycm9yLnJlcXVlc3QgPSByZXF1ZXN0O1xuICBlcnJvci5yZXNwb25zZSA9IHJlc3BvbnNlO1xuICByZXR1cm4gZXJyb3I7XG59O1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvZW5oYW5jZUVycm9yLmpzXG4vLyBtb2R1bGUgaWQgPSA1NVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///55\n"); +eval("\n\n// btoa polyfill for IE<10 courtesy https://github.com/davidchambers/Base64.js\n\nvar chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';\n\nfunction E() {\n this.message = 'String contains an invalid character';\n}\nE.prototype = new Error;\nE.prototype.code = 5;\nE.prototype.name = 'InvalidCharacterError';\n\nfunction btoa(input) {\n var str = String(input);\n var output = '';\n for (\n // initialize result and counter\n var block, charCode, idx = 0, map = chars;\n // if the next str index does not exist:\n // change the mapping table to \"=\"\n // check if d has no fractional digits\n str.charAt(idx | 0) || (map = '=', idx % 1);\n // \"8 - idx % 1 * 8\" generates the sequence 2, 4, 6, 8\n output += map.charAt(63 & block >> 8 - idx % 1 * 8)\n ) {\n charCode = str.charCodeAt(idx += 3 / 4);\n if (charCode > 0xFF) {\n throw new E();\n }\n block = block << 8 | charCode;\n }\n return output;\n}\n\nmodule.exports = btoa;\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvYnRvYS5qcz9iNjEyIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztBQUVBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEiLCJmaWxlIjoiNTUuanMiLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIHN0cmljdCc7XG5cbi8vIGJ0b2EgcG9seWZpbGwgZm9yIElFPDEwIGNvdXJ0ZXN5IGh0dHBzOi8vZ2l0aHViLmNvbS9kYXZpZGNoYW1iZXJzL0Jhc2U2NC5qc1xuXG52YXIgY2hhcnMgPSAnQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrLz0nO1xuXG5mdW5jdGlvbiBFKCkge1xuICB0aGlzLm1lc3NhZ2UgPSAnU3RyaW5nIGNvbnRhaW5zIGFuIGludmFsaWQgY2hhcmFjdGVyJztcbn1cbkUucHJvdG90eXBlID0gbmV3IEVycm9yO1xuRS5wcm90b3R5cGUuY29kZSA9IDU7XG5FLnByb3RvdHlwZS5uYW1lID0gJ0ludmFsaWRDaGFyYWN0ZXJFcnJvcic7XG5cbmZ1bmN0aW9uIGJ0b2EoaW5wdXQpIHtcbiAgdmFyIHN0ciA9IFN0cmluZyhpbnB1dCk7XG4gIHZhciBvdXRwdXQgPSAnJztcbiAgZm9yIChcbiAgICAvLyBpbml0aWFsaXplIHJlc3VsdCBhbmQgY291bnRlclxuICAgIHZhciBibG9jaywgY2hhckNvZGUsIGlkeCA9IDAsIG1hcCA9IGNoYXJzO1xuICAgIC8vIGlmIHRoZSBuZXh0IHN0ciBpbmRleCBkb2VzIG5vdCBleGlzdDpcbiAgICAvLyAgIGNoYW5nZSB0aGUgbWFwcGluZyB0YWJsZSB0byBcIj1cIlxuICAgIC8vICAgY2hlY2sgaWYgZCBoYXMgbm8gZnJhY3Rpb25hbCBkaWdpdHNcbiAgICBzdHIuY2hhckF0KGlkeCB8IDApIHx8IChtYXAgPSAnPScsIGlkeCAlIDEpO1xuICAgIC8vIFwiOCAtIGlkeCAlIDEgKiA4XCIgZ2VuZXJhdGVzIHRoZSBzZXF1ZW5jZSAyLCA0LCA2LCA4XG4gICAgb3V0cHV0ICs9IG1hcC5jaGFyQXQoNjMgJiBibG9jayA+PiA4IC0gaWR4ICUgMSAqIDgpXG4gICkge1xuICAgIGNoYXJDb2RlID0gc3RyLmNoYXJDb2RlQXQoaWR4ICs9IDMgLyA0KTtcbiAgICBpZiAoY2hhckNvZGUgPiAweEZGKSB7XG4gICAgICB0aHJvdyBuZXcgRSgpO1xuICAgIH1cbiAgICBibG9jayA9IGJsb2NrIDw8IDggfCBjaGFyQ29kZTtcbiAgfVxuICByZXR1cm4gb3V0cHV0O1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IGJ0b2E7XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvaGVscGVycy9idG9hLmpzXG4vLyBtb2R1bGUgaWQgPSA1NVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///55\n"); /***/ }), /* 56 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -eval("\n\nvar utils = __webpack_require__(0);\n\nfunction encode(val) {\n return encodeURIComponent(val).\n replace(/%40/gi, '@').\n replace(/%3A/gi, ':').\n replace(/%24/g, '$').\n replace(/%2C/gi, ',').\n replace(/%20/g, '+').\n replace(/%5B/gi, '[').\n replace(/%5D/gi, ']');\n}\n\n/**\n * Build a URL by appending params to the end\n *\n * @param {string} url The base of the url (e.g., http://www.google.com)\n * @param {object} [params] The params to be appended\n * @returns {string} The formatted url\n */\nmodule.exports = function buildURL(url, params, paramsSerializer) {\n /*eslint no-param-reassign:0*/\n if (!params) {\n return url;\n }\n\n var serializedParams;\n if (paramsSerializer) {\n serializedParams = paramsSerializer(params);\n } else if (utils.isURLSearchParams(params)) {\n serializedParams = params.toString();\n } else {\n var parts = [];\n\n utils.forEach(params, function serialize(val, key) {\n if (val === null || typeof val === 'undefined') {\n return;\n }\n\n if (utils.isArray(val)) {\n key = key + '[]';\n } else {\n val = [val];\n }\n\n utils.forEach(val, function parseValue(v) {\n if (utils.isDate(v)) {\n v = v.toISOString();\n } else if (utils.isObject(v)) {\n v = JSON.stringify(v);\n }\n parts.push(encode(key) + '=' + encode(v));\n });\n });\n\n serializedParams = parts.join('&');\n }\n\n if (serializedParams) {\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;\n }\n\n return url;\n};\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvYnVpbGRVUkwuanM/MGQwMCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLE9BQU87QUFDbEIsV0FBVyxPQUFPO0FBQ2xCLGFBQWEsT0FBTztBQUNwQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0EsR0FBRztBQUNIOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQLEtBQUs7O0FBRUw7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSIsImZpbGUiOiI1Ni5qcyIsInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxudmFyIHV0aWxzID0gcmVxdWlyZSgnLi8uLi91dGlscycpO1xuXG5mdW5jdGlvbiBlbmNvZGUodmFsKSB7XG4gIHJldHVybiBlbmNvZGVVUklDb21wb25lbnQodmFsKS5cbiAgICByZXBsYWNlKC8lNDAvZ2ksICdAJykuXG4gICAgcmVwbGFjZSgvJTNBL2dpLCAnOicpLlxuICAgIHJlcGxhY2UoLyUyNC9nLCAnJCcpLlxuICAgIHJlcGxhY2UoLyUyQy9naSwgJywnKS5cbiAgICByZXBsYWNlKC8lMjAvZywgJysnKS5cbiAgICByZXBsYWNlKC8lNUIvZ2ksICdbJykuXG4gICAgcmVwbGFjZSgvJTVEL2dpLCAnXScpO1xufVxuXG4vKipcbiAqIEJ1aWxkIGEgVVJMIGJ5IGFwcGVuZGluZyBwYXJhbXMgdG8gdGhlIGVuZFxuICpcbiAqIEBwYXJhbSB7c3RyaW5nfSB1cmwgVGhlIGJhc2Ugb2YgdGhlIHVybCAoZS5nLiwgaHR0cDovL3d3dy5nb29nbGUuY29tKVxuICogQHBhcmFtIHtvYmplY3R9IFtwYXJhbXNdIFRoZSBwYXJhbXMgdG8gYmUgYXBwZW5kZWRcbiAqIEByZXR1cm5zIHtzdHJpbmd9IFRoZSBmb3JtYXR0ZWQgdXJsXG4gKi9cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gYnVpbGRVUkwodXJsLCBwYXJhbXMsIHBhcmFtc1NlcmlhbGl6ZXIpIHtcbiAgLyplc2xpbnQgbm8tcGFyYW0tcmVhc3NpZ246MCovXG4gIGlmICghcGFyYW1zKSB7XG4gICAgcmV0dXJuIHVybDtcbiAgfVxuXG4gIHZhciBzZXJpYWxpemVkUGFyYW1zO1xuICBpZiAocGFyYW1zU2VyaWFsaXplcikge1xuICAgIHNlcmlhbGl6ZWRQYXJhbXMgPSBwYXJhbXNTZXJpYWxpemVyKHBhcmFtcyk7XG4gIH0gZWxzZSBpZiAodXRpbHMuaXNVUkxTZWFyY2hQYXJhbXMocGFyYW1zKSkge1xuICAgIHNlcmlhbGl6ZWRQYXJhbXMgPSBwYXJhbXMudG9TdHJpbmcoKTtcbiAgfSBlbHNlIHtcbiAgICB2YXIgcGFydHMgPSBbXTtcblxuICAgIHV0aWxzLmZvckVhY2gocGFyYW1zLCBmdW5jdGlvbiBzZXJpYWxpemUodmFsLCBrZXkpIHtcbiAgICAgIGlmICh2YWwgPT09IG51bGwgfHwgdHlwZW9mIHZhbCA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBpZiAodXRpbHMuaXNBcnJheSh2YWwpKSB7XG4gICAgICAgIGtleSA9IGtleSArICdbXSc7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB2YWwgPSBbdmFsXTtcbiAgICAgIH1cblxuICAgICAgdXRpbHMuZm9yRWFjaCh2YWwsIGZ1bmN0aW9uIHBhcnNlVmFsdWUodikge1xuICAgICAgICBpZiAodXRpbHMuaXNEYXRlKHYpKSB7XG4gICAgICAgICAgdiA9IHYudG9JU09TdHJpbmcoKTtcbiAgICAgICAgfSBlbHNlIGlmICh1dGlscy5pc09iamVjdCh2KSkge1xuICAgICAgICAgIHYgPSBKU09OLnN0cmluZ2lmeSh2KTtcbiAgICAgICAgfVxuICAgICAgICBwYXJ0cy5wdXNoKGVuY29kZShrZXkpICsgJz0nICsgZW5jb2RlKHYpKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgc2VyaWFsaXplZFBhcmFtcyA9IHBhcnRzLmpvaW4oJyYnKTtcbiAgfVxuXG4gIGlmIChzZXJpYWxpemVkUGFyYW1zKSB7XG4gICAgdXJsICs9ICh1cmwuaW5kZXhPZignPycpID09PSAtMSA/ICc/JyA6ICcmJykgKyBzZXJpYWxpemVkUGFyYW1zO1xuICB9XG5cbiAgcmV0dXJuIHVybDtcbn07XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvaGVscGVycy9idWlsZFVSTC5qc1xuLy8gbW9kdWxlIGlkID0gNTZcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///56\n"); +eval("\n\nvar utils = __webpack_require__(0);\n\nmodule.exports = (\n utils.isStandardBrowserEnv() ?\n\n // Standard browser envs support document.cookie\n (function standardBrowserEnv() {\n return {\n write: function write(name, value, expires, path, domain, secure) {\n var cookie = [];\n cookie.push(name + '=' + encodeURIComponent(value));\n\n if (utils.isNumber(expires)) {\n cookie.push('expires=' + new Date(expires).toGMTString());\n }\n\n if (utils.isString(path)) {\n cookie.push('path=' + path);\n }\n\n if (utils.isString(domain)) {\n cookie.push('domain=' + domain);\n }\n\n if (secure === true) {\n cookie.push('secure');\n }\n\n document.cookie = cookie.join('; ');\n },\n\n read: function read(name) {\n var match = document.cookie.match(new RegExp('(^|;\\\\s*)(' + name + ')=([^;]*)'));\n return (match ? decodeURIComponent(match[3]) : null);\n },\n\n remove: function remove(name) {\n this.write(name, '', Date.now() - 86400000);\n }\n };\n })() :\n\n // Non standard browser env (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return {\n write: function write() {},\n read: function read() { return null; },\n remove: function remove() {}\n };\n })()\n);\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvY29va2llcy5qcz9hNzU2Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztBQUVBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQSx3Q0FBd0M7QUFDeEMsT0FBTzs7QUFFUDtBQUNBLDBEQUEwRCx3QkFBd0I7QUFDbEY7QUFDQSxPQUFPOztBQUVQO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRzs7QUFFSDtBQUNBO0FBQ0E7QUFDQSxnQ0FBZ0M7QUFDaEMsNkJBQTZCLGFBQWEsRUFBRTtBQUM1QztBQUNBO0FBQ0EsR0FBRztBQUNIIiwiZmlsZSI6IjU2LmpzIiwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBzdHJpY3QnO1xuXG52YXIgdXRpbHMgPSByZXF1aXJlKCcuLy4uL3V0aWxzJyk7XG5cbm1vZHVsZS5leHBvcnRzID0gKFxuICB1dGlscy5pc1N0YW5kYXJkQnJvd3NlckVudigpID9cblxuICAvLyBTdGFuZGFyZCBicm93c2VyIGVudnMgc3VwcG9ydCBkb2N1bWVudC5jb29raWVcbiAgKGZ1bmN0aW9uIHN0YW5kYXJkQnJvd3NlckVudigpIHtcbiAgICByZXR1cm4ge1xuICAgICAgd3JpdGU6IGZ1bmN0aW9uIHdyaXRlKG5hbWUsIHZhbHVlLCBleHBpcmVzLCBwYXRoLCBkb21haW4sIHNlY3VyZSkge1xuICAgICAgICB2YXIgY29va2llID0gW107XG4gICAgICAgIGNvb2tpZS5wdXNoKG5hbWUgKyAnPScgKyBlbmNvZGVVUklDb21wb25lbnQodmFsdWUpKTtcblxuICAgICAgICBpZiAodXRpbHMuaXNOdW1iZXIoZXhwaXJlcykpIHtcbiAgICAgICAgICBjb29raWUucHVzaCgnZXhwaXJlcz0nICsgbmV3IERhdGUoZXhwaXJlcykudG9HTVRTdHJpbmcoKSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodXRpbHMuaXNTdHJpbmcocGF0aCkpIHtcbiAgICAgICAgICBjb29raWUucHVzaCgncGF0aD0nICsgcGF0aCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodXRpbHMuaXNTdHJpbmcoZG9tYWluKSkge1xuICAgICAgICAgIGNvb2tpZS5wdXNoKCdkb21haW49JyArIGRvbWFpbik7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoc2VjdXJlID09PSB0cnVlKSB7XG4gICAgICAgICAgY29va2llLnB1c2goJ3NlY3VyZScpO1xuICAgICAgICB9XG5cbiAgICAgICAgZG9jdW1lbnQuY29va2llID0gY29va2llLmpvaW4oJzsgJyk7XG4gICAgICB9LFxuXG4gICAgICByZWFkOiBmdW5jdGlvbiByZWFkKG5hbWUpIHtcbiAgICAgICAgdmFyIG1hdGNoID0gZG9jdW1lbnQuY29va2llLm1hdGNoKG5ldyBSZWdFeHAoJyhefDtcXFxccyopKCcgKyBuYW1lICsgJyk9KFteO10qKScpKTtcbiAgICAgICAgcmV0dXJuIChtYXRjaCA/IGRlY29kZVVSSUNvbXBvbmVudChtYXRjaFszXSkgOiBudWxsKTtcbiAgICAgIH0sXG5cbiAgICAgIHJlbW92ZTogZnVuY3Rpb24gcmVtb3ZlKG5hbWUpIHtcbiAgICAgICAgdGhpcy53cml0ZShuYW1lLCAnJywgRGF0ZS5ub3coKSAtIDg2NDAwMDAwKTtcbiAgICAgIH1cbiAgICB9O1xuICB9KSgpIDpcblxuICAvLyBOb24gc3RhbmRhcmQgYnJvd3NlciBlbnYgKHdlYiB3b3JrZXJzLCByZWFjdC1uYXRpdmUpIGxhY2sgbmVlZGVkIHN1cHBvcnQuXG4gIChmdW5jdGlvbiBub25TdGFuZGFyZEJyb3dzZXJFbnYoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHdyaXRlOiBmdW5jdGlvbiB3cml0ZSgpIHt9LFxuICAgICAgcmVhZDogZnVuY3Rpb24gcmVhZCgpIHsgcmV0dXJuIG51bGw7IH0sXG4gICAgICByZW1vdmU6IGZ1bmN0aW9uIHJlbW92ZSgpIHt9XG4gICAgfTtcbiAgfSkoKVxuKTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9oZWxwZXJzL2Nvb2tpZXMuanNcbi8vIG1vZHVsZSBpZCA9IDU2XG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///56\n"); /***/ }), /* 57 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -eval("\n\nvar utils = __webpack_require__(0);\n\n// Headers whose duplicates are ignored by node\n// c.f. https://nodejs.org/api/http.html#http_message_headers\nvar ignoreDuplicateOf = [\n 'age', 'authorization', 'content-length', 'content-type', 'etag',\n 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since',\n 'last-modified', 'location', 'max-forwards', 'proxy-authorization',\n 'referer', 'retry-after', 'user-agent'\n];\n\n/**\n * Parse headers into an object\n *\n * ```\n * Date: Wed, 27 Aug 2014 08:58:49 GMT\n * Content-Type: application/json\n * Connection: keep-alive\n * Transfer-Encoding: chunked\n * ```\n *\n * @param {String} headers Headers needing to be parsed\n * @returns {Object} Headers parsed into an object\n */\nmodule.exports = function parseHeaders(headers) {\n var parsed = {};\n var key;\n var val;\n var i;\n\n if (!headers) { return parsed; }\n\n utils.forEach(headers.split('\\n'), function parser(line) {\n i = line.indexOf(':');\n key = utils.trim(line.substr(0, i)).toLowerCase();\n val = utils.trim(line.substr(i + 1));\n\n if (key) {\n if (parsed[key] && ignoreDuplicateOf.indexOf(key) >= 0) {\n return;\n }\n if (key === 'set-cookie') {\n parsed[key] = (parsed[key] ? parsed[key] : []).concat([val]);\n } else {\n parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;\n }\n }\n });\n\n return parsed;\n};\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvcGFyc2VIZWFkZXJzLmpzP2EwOTkiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFdBQVcsT0FBTztBQUNsQixhQUFhLE9BQU87QUFDcEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLGlCQUFpQixlQUFlOztBQUVoQztBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBO0FBQ0EsR0FBRzs7QUFFSDtBQUNBIiwiZmlsZSI6IjU3LmpzIiwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBzdHJpY3QnO1xuXG52YXIgdXRpbHMgPSByZXF1aXJlKCcuLy4uL3V0aWxzJyk7XG5cbi8vIEhlYWRlcnMgd2hvc2UgZHVwbGljYXRlcyBhcmUgaWdub3JlZCBieSBub2RlXG4vLyBjLmYuIGh0dHBzOi8vbm9kZWpzLm9yZy9hcGkvaHR0cC5odG1sI2h0dHBfbWVzc2FnZV9oZWFkZXJzXG52YXIgaWdub3JlRHVwbGljYXRlT2YgPSBbXG4gICdhZ2UnLCAnYXV0aG9yaXphdGlvbicsICdjb250ZW50LWxlbmd0aCcsICdjb250ZW50LXR5cGUnLCAnZXRhZycsXG4gICdleHBpcmVzJywgJ2Zyb20nLCAnaG9zdCcsICdpZi1tb2RpZmllZC1zaW5jZScsICdpZi11bm1vZGlmaWVkLXNpbmNlJyxcbiAgJ2xhc3QtbW9kaWZpZWQnLCAnbG9jYXRpb24nLCAnbWF4LWZvcndhcmRzJywgJ3Byb3h5LWF1dGhvcml6YXRpb24nLFxuICAncmVmZXJlcicsICdyZXRyeS1hZnRlcicsICd1c2VyLWFnZW50J1xuXTtcblxuLyoqXG4gKiBQYXJzZSBoZWFkZXJzIGludG8gYW4gb2JqZWN0XG4gKlxuICogYGBgXG4gKiBEYXRlOiBXZWQsIDI3IEF1ZyAyMDE0IDA4OjU4OjQ5IEdNVFxuICogQ29udGVudC1UeXBlOiBhcHBsaWNhdGlvbi9qc29uXG4gKiBDb25uZWN0aW9uOiBrZWVwLWFsaXZlXG4gKiBUcmFuc2Zlci1FbmNvZGluZzogY2h1bmtlZFxuICogYGBgXG4gKlxuICogQHBhcmFtIHtTdHJpbmd9IGhlYWRlcnMgSGVhZGVycyBuZWVkaW5nIHRvIGJlIHBhcnNlZFxuICogQHJldHVybnMge09iamVjdH0gSGVhZGVycyBwYXJzZWQgaW50byBhbiBvYmplY3RcbiAqL1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiBwYXJzZUhlYWRlcnMoaGVhZGVycykge1xuICB2YXIgcGFyc2VkID0ge307XG4gIHZhciBrZXk7XG4gIHZhciB2YWw7XG4gIHZhciBpO1xuXG4gIGlmICghaGVhZGVycykgeyByZXR1cm4gcGFyc2VkOyB9XG5cbiAgdXRpbHMuZm9yRWFjaChoZWFkZXJzLnNwbGl0KCdcXG4nKSwgZnVuY3Rpb24gcGFyc2VyKGxpbmUpIHtcbiAgICBpID0gbGluZS5pbmRleE9mKCc6Jyk7XG4gICAga2V5ID0gdXRpbHMudHJpbShsaW5lLnN1YnN0cigwLCBpKSkudG9Mb3dlckNhc2UoKTtcbiAgICB2YWwgPSB1dGlscy50cmltKGxpbmUuc3Vic3RyKGkgKyAxKSk7XG5cbiAgICBpZiAoa2V5KSB7XG4gICAgICBpZiAocGFyc2VkW2tleV0gJiYgaWdub3JlRHVwbGljYXRlT2YuaW5kZXhPZihrZXkpID49IDApIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgaWYgKGtleSA9PT0gJ3NldC1jb29raWUnKSB7XG4gICAgICAgIHBhcnNlZFtrZXldID0gKHBhcnNlZFtrZXldID8gcGFyc2VkW2tleV0gOiBbXSkuY29uY2F0KFt2YWxdKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHBhcnNlZFtrZXldID0gcGFyc2VkW2tleV0gPyBwYXJzZWRba2V5XSArICcsICcgKyB2YWwgOiB2YWw7XG4gICAgICB9XG4gICAgfVxuICB9KTtcblxuICByZXR1cm4gcGFyc2VkO1xufTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9oZWxwZXJzL3BhcnNlSGVhZGVycy5qc1xuLy8gbW9kdWxlIGlkID0gNTdcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///57\n"); +eval("\n\nvar utils = __webpack_require__(0);\n\nfunction InterceptorManager() {\n this.handlers = [];\n}\n\n/**\n * Add a new interceptor to the stack\n *\n * @param {Function} fulfilled The function to handle `then` for a `Promise`\n * @param {Function} rejected The function to handle `reject` for a `Promise`\n *\n * @return {Number} An ID used to remove interceptor later\n */\nInterceptorManager.prototype.use = function use(fulfilled, rejected) {\n this.handlers.push({\n fulfilled: fulfilled,\n rejected: rejected\n });\n return this.handlers.length - 1;\n};\n\n/**\n * Remove an interceptor from the stack\n *\n * @param {Number} id The ID that was returned by `use`\n */\nInterceptorManager.prototype.eject = function eject(id) {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n};\n\n/**\n * Iterate over all the registered interceptors\n *\n * This method is particularly useful for skipping over any\n * interceptors that may have become `null` calling `eject`.\n *\n * @param {Function} fn The function to call for each interceptor\n */\nInterceptorManager.prototype.forEach = function forEach(fn) {\n utils.forEach(this.handlers, function forEachHandler(h) {\n if (h !== null) {\n fn(h);\n }\n });\n};\n\nmodule.exports = InterceptorManager;\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvSW50ZXJjZXB0b3JNYW5hZ2VyLmpzPzdlZTEiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLFdBQVcsU0FBUztBQUNwQixXQUFXLFNBQVM7QUFDcEI7QUFDQSxZQUFZLE9BQU87QUFDbkI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLFdBQVcsT0FBTztBQUNsQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsV0FBVyxTQUFTO0FBQ3BCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDs7QUFFQSIsImZpbGUiOiI1Ny5qcyIsInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxudmFyIHV0aWxzID0gcmVxdWlyZSgnLi8uLi91dGlscycpO1xuXG5mdW5jdGlvbiBJbnRlcmNlcHRvck1hbmFnZXIoKSB7XG4gIHRoaXMuaGFuZGxlcnMgPSBbXTtcbn1cblxuLyoqXG4gKiBBZGQgYSBuZXcgaW50ZXJjZXB0b3IgdG8gdGhlIHN0YWNrXG4gKlxuICogQHBhcmFtIHtGdW5jdGlvbn0gZnVsZmlsbGVkIFRoZSBmdW5jdGlvbiB0byBoYW5kbGUgYHRoZW5gIGZvciBhIGBQcm9taXNlYFxuICogQHBhcmFtIHtGdW5jdGlvbn0gcmVqZWN0ZWQgVGhlIGZ1bmN0aW9uIHRvIGhhbmRsZSBgcmVqZWN0YCBmb3IgYSBgUHJvbWlzZWBcbiAqXG4gKiBAcmV0dXJuIHtOdW1iZXJ9IEFuIElEIHVzZWQgdG8gcmVtb3ZlIGludGVyY2VwdG9yIGxhdGVyXG4gKi9cbkludGVyY2VwdG9yTWFuYWdlci5wcm90b3R5cGUudXNlID0gZnVuY3Rpb24gdXNlKGZ1bGZpbGxlZCwgcmVqZWN0ZWQpIHtcbiAgdGhpcy5oYW5kbGVycy5wdXNoKHtcbiAgICBmdWxmaWxsZWQ6IGZ1bGZpbGxlZCxcbiAgICByZWplY3RlZDogcmVqZWN0ZWRcbiAgfSk7XG4gIHJldHVybiB0aGlzLmhhbmRsZXJzLmxlbmd0aCAtIDE7XG59O1xuXG4vKipcbiAqIFJlbW92ZSBhbiBpbnRlcmNlcHRvciBmcm9tIHRoZSBzdGFja1xuICpcbiAqIEBwYXJhbSB7TnVtYmVyfSBpZCBUaGUgSUQgdGhhdCB3YXMgcmV0dXJuZWQgYnkgYHVzZWBcbiAqL1xuSW50ZXJjZXB0b3JNYW5hZ2VyLnByb3RvdHlwZS5lamVjdCA9IGZ1bmN0aW9uIGVqZWN0KGlkKSB7XG4gIGlmICh0aGlzLmhhbmRsZXJzW2lkXSkge1xuICAgIHRoaXMuaGFuZGxlcnNbaWRdID0gbnVsbDtcbiAgfVxufTtcblxuLyoqXG4gKiBJdGVyYXRlIG92ZXIgYWxsIHRoZSByZWdpc3RlcmVkIGludGVyY2VwdG9yc1xuICpcbiAqIFRoaXMgbWV0aG9kIGlzIHBhcnRpY3VsYXJseSB1c2VmdWwgZm9yIHNraXBwaW5nIG92ZXIgYW55XG4gKiBpbnRlcmNlcHRvcnMgdGhhdCBtYXkgaGF2ZSBiZWNvbWUgYG51bGxgIGNhbGxpbmcgYGVqZWN0YC5cbiAqXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBmbiBUaGUgZnVuY3Rpb24gdG8gY2FsbCBmb3IgZWFjaCBpbnRlcmNlcHRvclxuICovXG5JbnRlcmNlcHRvck1hbmFnZXIucHJvdG90eXBlLmZvckVhY2ggPSBmdW5jdGlvbiBmb3JFYWNoKGZuKSB7XG4gIHV0aWxzLmZvckVhY2godGhpcy5oYW5kbGVycywgZnVuY3Rpb24gZm9yRWFjaEhhbmRsZXIoaCkge1xuICAgIGlmIChoICE9PSBudWxsKSB7XG4gICAgICBmbihoKTtcbiAgICB9XG4gIH0pO1xufTtcblxubW9kdWxlLmV4cG9ydHMgPSBJbnRlcmNlcHRvck1hbmFnZXI7XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvY29yZS9JbnRlcmNlcHRvck1hbmFnZXIuanNcbi8vIG1vZHVsZSBpZCA9IDU3XG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///57\n"); /***/ }), /* 58 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -eval("\n\nvar utils = __webpack_require__(0);\n\nmodule.exports = (\n utils.isStandardBrowserEnv() ?\n\n // Standard browser envs have full support of the APIs needed to test\n // whether the request URL is of the same origin as current location.\n (function standardBrowserEnv() {\n var msie = /(msie|trident)/i.test(navigator.userAgent);\n var urlParsingNode = document.createElement('a');\n var originURL;\n\n /**\n * Parse a URL to discover it's components\n *\n * @param {String} url The URL to be parsed\n * @returns {Object}\n */\n function resolveURL(url) {\n var href = url;\n\n if (msie) {\n // IE needs attribute set twice to normalize properties\n urlParsingNode.setAttribute('href', href);\n href = urlParsingNode.href;\n }\n\n urlParsingNode.setAttribute('href', href);\n\n // urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils\n return {\n href: urlParsingNode.href,\n protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',\n host: urlParsingNode.host,\n search: urlParsingNode.search ? urlParsingNode.search.replace(/^\\?/, '') : '',\n hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',\n hostname: urlParsingNode.hostname,\n port: urlParsingNode.port,\n pathname: (urlParsingNode.pathname.charAt(0) === '/') ?\n urlParsingNode.pathname :\n '/' + urlParsingNode.pathname\n };\n }\n\n originURL = resolveURL(window.location.href);\n\n /**\n * Determine if a URL shares the same origin as the current location\n *\n * @param {String} requestURL The URL to test\n * @returns {boolean} True if URL shares the same origin, otherwise false\n */\n return function isURLSameOrigin(requestURL) {\n var parsed = (utils.isString(requestURL)) ? resolveURL(requestURL) : requestURL;\n return (parsed.protocol === originURL.protocol &&\n parsed.host === originURL.host);\n };\n })() :\n\n // Non standard browser envs (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return function isURLSameOrigin() {\n return true;\n };\n })()\n);\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvaXNVUkxTYW1lT3JpZ2luLmpzPzE4NzAiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0FBRUE7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsY0FBYyxPQUFPO0FBQ3JCLGdCQUFnQjtBQUNoQjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLGNBQWMsT0FBTztBQUNyQixnQkFBZ0IsUUFBUTtBQUN4QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHOztBQUVIO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0giLCJmaWxlIjoiNTguanMiLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIHN0cmljdCc7XG5cbnZhciB1dGlscyA9IHJlcXVpcmUoJy4vLi4vdXRpbHMnKTtcblxubW9kdWxlLmV4cG9ydHMgPSAoXG4gIHV0aWxzLmlzU3RhbmRhcmRCcm93c2VyRW52KCkgP1xuXG4gIC8vIFN0YW5kYXJkIGJyb3dzZXIgZW52cyBoYXZlIGZ1bGwgc3VwcG9ydCBvZiB0aGUgQVBJcyBuZWVkZWQgdG8gdGVzdFxuICAvLyB3aGV0aGVyIHRoZSByZXF1ZXN0IFVSTCBpcyBvZiB0aGUgc2FtZSBvcmlnaW4gYXMgY3VycmVudCBsb2NhdGlvbi5cbiAgKGZ1bmN0aW9uIHN0YW5kYXJkQnJvd3NlckVudigpIHtcbiAgICB2YXIgbXNpZSA9IC8obXNpZXx0cmlkZW50KS9pLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCk7XG4gICAgdmFyIHVybFBhcnNpbmdOb2RlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpO1xuICAgIHZhciBvcmlnaW5VUkw7XG5cbiAgICAvKipcbiAgICAqIFBhcnNlIGEgVVJMIHRvIGRpc2NvdmVyIGl0J3MgY29tcG9uZW50c1xuICAgICpcbiAgICAqIEBwYXJhbSB7U3RyaW5nfSB1cmwgVGhlIFVSTCB0byBiZSBwYXJzZWRcbiAgICAqIEByZXR1cm5zIHtPYmplY3R9XG4gICAgKi9cbiAgICBmdW5jdGlvbiByZXNvbHZlVVJMKHVybCkge1xuICAgICAgdmFyIGhyZWYgPSB1cmw7XG5cbiAgICAgIGlmIChtc2llKSB7XG4gICAgICAgIC8vIElFIG5lZWRzIGF0dHJpYnV0ZSBzZXQgdHdpY2UgdG8gbm9ybWFsaXplIHByb3BlcnRpZXNcbiAgICAgICAgdXJsUGFyc2luZ05vZGUuc2V0QXR0cmlidXRlKCdocmVmJywgaHJlZik7XG4gICAgICAgIGhyZWYgPSB1cmxQYXJzaW5nTm9kZS5ocmVmO1xuICAgICAgfVxuXG4gICAgICB1cmxQYXJzaW5nTm9kZS5zZXRBdHRyaWJ1dGUoJ2hyZWYnLCBocmVmKTtcblxuICAgICAgLy8gdXJsUGFyc2luZ05vZGUgcHJvdmlkZXMgdGhlIFVybFV0aWxzIGludGVyZmFjZSAtIGh0dHA6Ly91cmwuc3BlYy53aGF0d2cub3JnLyN1cmx1dGlsc1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaHJlZjogdXJsUGFyc2luZ05vZGUuaHJlZixcbiAgICAgICAgcHJvdG9jb2w6IHVybFBhcnNpbmdOb2RlLnByb3RvY29sID8gdXJsUGFyc2luZ05vZGUucHJvdG9jb2wucmVwbGFjZSgvOiQvLCAnJykgOiAnJyxcbiAgICAgICAgaG9zdDogdXJsUGFyc2luZ05vZGUuaG9zdCxcbiAgICAgICAgc2VhcmNoOiB1cmxQYXJzaW5nTm9kZS5zZWFyY2ggPyB1cmxQYXJzaW5nTm9kZS5zZWFyY2gucmVwbGFjZSgvXlxcPy8sICcnKSA6ICcnLFxuICAgICAgICBoYXNoOiB1cmxQYXJzaW5nTm9kZS5oYXNoID8gdXJsUGFyc2luZ05vZGUuaGFzaC5yZXBsYWNlKC9eIy8sICcnKSA6ICcnLFxuICAgICAgICBob3N0bmFtZTogdXJsUGFyc2luZ05vZGUuaG9zdG5hbWUsXG4gICAgICAgIHBvcnQ6IHVybFBhcnNpbmdOb2RlLnBvcnQsXG4gICAgICAgIHBhdGhuYW1lOiAodXJsUGFyc2luZ05vZGUucGF0aG5hbWUuY2hhckF0KDApID09PSAnLycpID9cbiAgICAgICAgICAgICAgICAgIHVybFBhcnNpbmdOb2RlLnBhdGhuYW1lIDpcbiAgICAgICAgICAgICAgICAgICcvJyArIHVybFBhcnNpbmdOb2RlLnBhdGhuYW1lXG4gICAgICB9O1xuICAgIH1cblxuICAgIG9yaWdpblVSTCA9IHJlc29sdmVVUkwod2luZG93LmxvY2F0aW9uLmhyZWYpO1xuXG4gICAgLyoqXG4gICAgKiBEZXRlcm1pbmUgaWYgYSBVUkwgc2hhcmVzIHRoZSBzYW1lIG9yaWdpbiBhcyB0aGUgY3VycmVudCBsb2NhdGlvblxuICAgICpcbiAgICAqIEBwYXJhbSB7U3RyaW5nfSByZXF1ZXN0VVJMIFRoZSBVUkwgdG8gdGVzdFxuICAgICogQHJldHVybnMge2Jvb2xlYW59IFRydWUgaWYgVVJMIHNoYXJlcyB0aGUgc2FtZSBvcmlnaW4sIG90aGVyd2lzZSBmYWxzZVxuICAgICovXG4gICAgcmV0dXJuIGZ1bmN0aW9uIGlzVVJMU2FtZU9yaWdpbihyZXF1ZXN0VVJMKSB7XG4gICAgICB2YXIgcGFyc2VkID0gKHV0aWxzLmlzU3RyaW5nKHJlcXVlc3RVUkwpKSA/IHJlc29sdmVVUkwocmVxdWVzdFVSTCkgOiByZXF1ZXN0VVJMO1xuICAgICAgcmV0dXJuIChwYXJzZWQucHJvdG9jb2wgPT09IG9yaWdpblVSTC5wcm90b2NvbCAmJlxuICAgICAgICAgICAgcGFyc2VkLmhvc3QgPT09IG9yaWdpblVSTC5ob3N0KTtcbiAgICB9O1xuICB9KSgpIDpcblxuICAvLyBOb24gc3RhbmRhcmQgYnJvd3NlciBlbnZzICh3ZWIgd29ya2VycywgcmVhY3QtbmF0aXZlKSBsYWNrIG5lZWRlZCBzdXBwb3J0LlxuICAoZnVuY3Rpb24gbm9uU3RhbmRhcmRCcm93c2VyRW52KCkge1xuICAgIHJldHVybiBmdW5jdGlvbiBpc1VSTFNhbWVPcmlnaW4oKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9O1xuICB9KSgpXG4pO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvaXNVUkxTYW1lT3JpZ2luLmpzXG4vLyBtb2R1bGUgaWQgPSA1OFxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///58\n"); +eval("\n\nvar utils = __webpack_require__(0);\nvar transformData = __webpack_require__(59);\nvar isCancel = __webpack_require__(21);\nvar defaults = __webpack_require__(7);\nvar isAbsoluteURL = __webpack_require__(60);\nvar combineURLs = __webpack_require__(61);\n\n/**\n * Throws a `Cancel` if cancellation has been requested.\n */\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n}\n\n/**\n * Dispatch a request to the server using the configured adapter.\n *\n * @param {object} config The config that is to be used for the request\n * @returns {Promise} The Promise to be fulfilled\n */\nmodule.exports = function dispatchRequest(config) {\n throwIfCancellationRequested(config);\n\n // Support baseURL config\n if (config.baseURL && !isAbsoluteURL(config.url)) {\n config.url = combineURLs(config.baseURL, config.url);\n }\n\n // Ensure headers exist\n config.headers = config.headers || {};\n\n // Transform request data\n config.data = transformData(\n config.data,\n config.headers,\n config.transformRequest\n );\n\n // Flatten headers\n config.headers = utils.merge(\n config.headers.common || {},\n config.headers[config.method] || {},\n config.headers || {}\n );\n\n utils.forEach(\n ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],\n function cleanHeaderConfig(method) {\n delete config.headers[method];\n }\n );\n\n var adapter = config.adapter || defaults.adapter;\n\n return adapter(config).then(function onAdapterResolution(response) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n response.data = transformData(\n response.data,\n response.headers,\n config.transformResponse\n );\n\n return response;\n }, function onAdapterRejection(reason) {\n if (!isCancel(reason)) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n if (reason && reason.response) {\n reason.response.data = transformData(\n reason.response.data,\n reason.response.headers,\n config.transformResponse\n );\n }\n }\n\n return Promise.reject(reason);\n });\n};\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvZGlzcGF0Y2hSZXF1ZXN0LmpzP2M0YmIiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsV0FBVyxPQUFPO0FBQ2xCLGFBQWEsUUFBUTtBQUNyQjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLCtCQUErQjtBQUMvQix1Q0FBdUM7QUFDdkM7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxHQUFHO0FBQ0g7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxHQUFHO0FBQ0giLCJmaWxlIjoiNTguanMiLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIHN0cmljdCc7XG5cbnZhciB1dGlscyA9IHJlcXVpcmUoJy4vLi4vdXRpbHMnKTtcbnZhciB0cmFuc2Zvcm1EYXRhID0gcmVxdWlyZSgnLi90cmFuc2Zvcm1EYXRhJyk7XG52YXIgaXNDYW5jZWwgPSByZXF1aXJlKCcuLi9jYW5jZWwvaXNDYW5jZWwnKTtcbnZhciBkZWZhdWx0cyA9IHJlcXVpcmUoJy4uL2RlZmF1bHRzJyk7XG52YXIgaXNBYnNvbHV0ZVVSTCA9IHJlcXVpcmUoJy4vLi4vaGVscGVycy9pc0Fic29sdXRlVVJMJyk7XG52YXIgY29tYmluZVVSTHMgPSByZXF1aXJlKCcuLy4uL2hlbHBlcnMvY29tYmluZVVSTHMnKTtcblxuLyoqXG4gKiBUaHJvd3MgYSBgQ2FuY2VsYCBpZiBjYW5jZWxsYXRpb24gaGFzIGJlZW4gcmVxdWVzdGVkLlxuICovXG5mdW5jdGlvbiB0aHJvd0lmQ2FuY2VsbGF0aW9uUmVxdWVzdGVkKGNvbmZpZykge1xuICBpZiAoY29uZmlnLmNhbmNlbFRva2VuKSB7XG4gICAgY29uZmlnLmNhbmNlbFRva2VuLnRocm93SWZSZXF1ZXN0ZWQoKTtcbiAgfVxufVxuXG4vKipcbiAqIERpc3BhdGNoIGEgcmVxdWVzdCB0byB0aGUgc2VydmVyIHVzaW5nIHRoZSBjb25maWd1cmVkIGFkYXB0ZXIuXG4gKlxuICogQHBhcmFtIHtvYmplY3R9IGNvbmZpZyBUaGUgY29uZmlnIHRoYXQgaXMgdG8gYmUgdXNlZCBmb3IgdGhlIHJlcXVlc3RcbiAqIEByZXR1cm5zIHtQcm9taXNlfSBUaGUgUHJvbWlzZSB0byBiZSBmdWxmaWxsZWRcbiAqL1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiBkaXNwYXRjaFJlcXVlc3QoY29uZmlnKSB7XG4gIHRocm93SWZDYW5jZWxsYXRpb25SZXF1ZXN0ZWQoY29uZmlnKTtcblxuICAvLyBTdXBwb3J0IGJhc2VVUkwgY29uZmlnXG4gIGlmIChjb25maWcuYmFzZVVSTCAmJiAhaXNBYnNvbHV0ZVVSTChjb25maWcudXJsKSkge1xuICAgIGNvbmZpZy51cmwgPSBjb21iaW5lVVJMcyhjb25maWcuYmFzZVVSTCwgY29uZmlnLnVybCk7XG4gIH1cblxuICAvLyBFbnN1cmUgaGVhZGVycyBleGlzdFxuICBjb25maWcuaGVhZGVycyA9IGNvbmZpZy5oZWFkZXJzIHx8IHt9O1xuXG4gIC8vIFRyYW5zZm9ybSByZXF1ZXN0IGRhdGFcbiAgY29uZmlnLmRhdGEgPSB0cmFuc2Zvcm1EYXRhKFxuICAgIGNvbmZpZy5kYXRhLFxuICAgIGNvbmZpZy5oZWFkZXJzLFxuICAgIGNvbmZpZy50cmFuc2Zvcm1SZXF1ZXN0XG4gICk7XG5cbiAgLy8gRmxhdHRlbiBoZWFkZXJzXG4gIGNvbmZpZy5oZWFkZXJzID0gdXRpbHMubWVyZ2UoXG4gICAgY29uZmlnLmhlYWRlcnMuY29tbW9uIHx8IHt9LFxuICAgIGNvbmZpZy5oZWFkZXJzW2NvbmZpZy5tZXRob2RdIHx8IHt9LFxuICAgIGNvbmZpZy5oZWFkZXJzIHx8IHt9XG4gICk7XG5cbiAgdXRpbHMuZm9yRWFjaChcbiAgICBbJ2RlbGV0ZScsICdnZXQnLCAnaGVhZCcsICdwb3N0JywgJ3B1dCcsICdwYXRjaCcsICdjb21tb24nXSxcbiAgICBmdW5jdGlvbiBjbGVhbkhlYWRlckNvbmZpZyhtZXRob2QpIHtcbiAgICAgIGRlbGV0ZSBjb25maWcuaGVhZGVyc1ttZXRob2RdO1xuICAgIH1cbiAgKTtcblxuICB2YXIgYWRhcHRlciA9IGNvbmZpZy5hZGFwdGVyIHx8IGRlZmF1bHRzLmFkYXB0ZXI7XG5cbiAgcmV0dXJuIGFkYXB0ZXIoY29uZmlnKS50aGVuKGZ1bmN0aW9uIG9uQWRhcHRlclJlc29sdXRpb24ocmVzcG9uc2UpIHtcbiAgICB0aHJvd0lmQ2FuY2VsbGF0aW9uUmVxdWVzdGVkKGNvbmZpZyk7XG5cbiAgICAvLyBUcmFuc2Zvcm0gcmVzcG9uc2UgZGF0YVxuICAgIHJlc3BvbnNlLmRhdGEgPSB0cmFuc2Zvcm1EYXRhKFxuICAgICAgcmVzcG9uc2UuZGF0YSxcbiAgICAgIHJlc3BvbnNlLmhlYWRlcnMsXG4gICAgICBjb25maWcudHJhbnNmb3JtUmVzcG9uc2VcbiAgICApO1xuXG4gICAgcmV0dXJuIHJlc3BvbnNlO1xuICB9LCBmdW5jdGlvbiBvbkFkYXB0ZXJSZWplY3Rpb24ocmVhc29uKSB7XG4gICAgaWYgKCFpc0NhbmNlbChyZWFzb24pKSB7XG4gICAgICB0aHJvd0lmQ2FuY2VsbGF0aW9uUmVxdWVzdGVkKGNvbmZpZyk7XG5cbiAgICAgIC8vIFRyYW5zZm9ybSByZXNwb25zZSBkYXRhXG4gICAgICBpZiAocmVhc29uICYmIHJlYXNvbi5yZXNwb25zZSkge1xuICAgICAgICByZWFzb24ucmVzcG9uc2UuZGF0YSA9IHRyYW5zZm9ybURhdGEoXG4gICAgICAgICAgcmVhc29uLnJlc3BvbnNlLmRhdGEsXG4gICAgICAgICAgcmVhc29uLnJlc3BvbnNlLmhlYWRlcnMsXG4gICAgICAgICAgY29uZmlnLnRyYW5zZm9ybVJlc3BvbnNlXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIFByb21pc2UucmVqZWN0KHJlYXNvbik7XG4gIH0pO1xufTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9jb3JlL2Rpc3BhdGNoUmVxdWVzdC5qc1xuLy8gbW9kdWxlIGlkID0gNThcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///58\n"); /***/ }), /* 59 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -eval("\n\n// btoa polyfill for IE<10 courtesy https://github.com/davidchambers/Base64.js\n\nvar chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';\n\nfunction E() {\n this.message = 'String contains an invalid character';\n}\nE.prototype = new Error;\nE.prototype.code = 5;\nE.prototype.name = 'InvalidCharacterError';\n\nfunction btoa(input) {\n var str = String(input);\n var output = '';\n for (\n // initialize result and counter\n var block, charCode, idx = 0, map = chars;\n // if the next str index does not exist:\n // change the mapping table to \"=\"\n // check if d has no fractional digits\n str.charAt(idx | 0) || (map = '=', idx % 1);\n // \"8 - idx % 1 * 8\" generates the sequence 2, 4, 6, 8\n output += map.charAt(63 & block >> 8 - idx % 1 * 8)\n ) {\n charCode = str.charCodeAt(idx += 3 / 4);\n if (charCode > 0xFF) {\n throw new E();\n }\n block = block << 8 | charCode;\n }\n return output;\n}\n\nmodule.exports = btoa;\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvYnRvYS5qcz9iNjEyIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztBQUVBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEiLCJmaWxlIjoiNTkuanMiLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIHN0cmljdCc7XG5cbi8vIGJ0b2EgcG9seWZpbGwgZm9yIElFPDEwIGNvdXJ0ZXN5IGh0dHBzOi8vZ2l0aHViLmNvbS9kYXZpZGNoYW1iZXJzL0Jhc2U2NC5qc1xuXG52YXIgY2hhcnMgPSAnQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrLz0nO1xuXG5mdW5jdGlvbiBFKCkge1xuICB0aGlzLm1lc3NhZ2UgPSAnU3RyaW5nIGNvbnRhaW5zIGFuIGludmFsaWQgY2hhcmFjdGVyJztcbn1cbkUucHJvdG90eXBlID0gbmV3IEVycm9yO1xuRS5wcm90b3R5cGUuY29kZSA9IDU7XG5FLnByb3RvdHlwZS5uYW1lID0gJ0ludmFsaWRDaGFyYWN0ZXJFcnJvcic7XG5cbmZ1bmN0aW9uIGJ0b2EoaW5wdXQpIHtcbiAgdmFyIHN0ciA9IFN0cmluZyhpbnB1dCk7XG4gIHZhciBvdXRwdXQgPSAnJztcbiAgZm9yIChcbiAgICAvLyBpbml0aWFsaXplIHJlc3VsdCBhbmQgY291bnRlclxuICAgIHZhciBibG9jaywgY2hhckNvZGUsIGlkeCA9IDAsIG1hcCA9IGNoYXJzO1xuICAgIC8vIGlmIHRoZSBuZXh0IHN0ciBpbmRleCBkb2VzIG5vdCBleGlzdDpcbiAgICAvLyAgIGNoYW5nZSB0aGUgbWFwcGluZyB0YWJsZSB0byBcIj1cIlxuICAgIC8vICAgY2hlY2sgaWYgZCBoYXMgbm8gZnJhY3Rpb25hbCBkaWdpdHNcbiAgICBzdHIuY2hhckF0KGlkeCB8IDApIHx8IChtYXAgPSAnPScsIGlkeCAlIDEpO1xuICAgIC8vIFwiOCAtIGlkeCAlIDEgKiA4XCIgZ2VuZXJhdGVzIHRoZSBzZXF1ZW5jZSAyLCA0LCA2LCA4XG4gICAgb3V0cHV0ICs9IG1hcC5jaGFyQXQoNjMgJiBibG9jayA+PiA4IC0gaWR4ICUgMSAqIDgpXG4gICkge1xuICAgIGNoYXJDb2RlID0gc3RyLmNoYXJDb2RlQXQoaWR4ICs9IDMgLyA0KTtcbiAgICBpZiAoY2hhckNvZGUgPiAweEZGKSB7XG4gICAgICB0aHJvdyBuZXcgRSgpO1xuICAgIH1cbiAgICBibG9jayA9IGJsb2NrIDw8IDggfCBjaGFyQ29kZTtcbiAgfVxuICByZXR1cm4gb3V0cHV0O1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IGJ0b2E7XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvaGVscGVycy9idG9hLmpzXG4vLyBtb2R1bGUgaWQgPSA1OVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///59\n"); +eval("\n\nvar utils = __webpack_require__(0);\n\n/**\n * Transform the data for a request or a response\n *\n * @param {Object|String} data The data to be transformed\n * @param {Array} headers The headers for the request or response\n * @param {Array|Function} fns A single function or Array of functions\n * @returns {*} The resulting transformed data\n */\nmodule.exports = function transformData(data, headers, fns) {\n /*eslint no-param-reassign:0*/\n utils.forEach(fns, function transform(fn) {\n data = fn(data, headers);\n });\n\n return data;\n};\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvdHJhbnNmb3JtRGF0YS5qcz80Y2Q1Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLFdBQVcsY0FBYztBQUN6QixXQUFXLE1BQU07QUFDakIsV0FBVyxlQUFlO0FBQzFCLGFBQWEsRUFBRTtBQUNmO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHOztBQUVIO0FBQ0EiLCJmaWxlIjoiNTkuanMiLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIHN0cmljdCc7XG5cbnZhciB1dGlscyA9IHJlcXVpcmUoJy4vLi4vdXRpbHMnKTtcblxuLyoqXG4gKiBUcmFuc2Zvcm0gdGhlIGRhdGEgZm9yIGEgcmVxdWVzdCBvciBhIHJlc3BvbnNlXG4gKlxuICogQHBhcmFtIHtPYmplY3R8U3RyaW5nfSBkYXRhIFRoZSBkYXRhIHRvIGJlIHRyYW5zZm9ybWVkXG4gKiBAcGFyYW0ge0FycmF5fSBoZWFkZXJzIFRoZSBoZWFkZXJzIGZvciB0aGUgcmVxdWVzdCBvciByZXNwb25zZVxuICogQHBhcmFtIHtBcnJheXxGdW5jdGlvbn0gZm5zIEEgc2luZ2xlIGZ1bmN0aW9uIG9yIEFycmF5IG9mIGZ1bmN0aW9uc1xuICogQHJldHVybnMgeyp9IFRoZSByZXN1bHRpbmcgdHJhbnNmb3JtZWQgZGF0YVxuICovXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIHRyYW5zZm9ybURhdGEoZGF0YSwgaGVhZGVycywgZm5zKSB7XG4gIC8qZXNsaW50IG5vLXBhcmFtLXJlYXNzaWduOjAqL1xuICB1dGlscy5mb3JFYWNoKGZucywgZnVuY3Rpb24gdHJhbnNmb3JtKGZuKSB7XG4gICAgZGF0YSA9IGZuKGRhdGEsIGhlYWRlcnMpO1xuICB9KTtcblxuICByZXR1cm4gZGF0YTtcbn07XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvY29yZS90cmFuc2Zvcm1EYXRhLmpzXG4vLyBtb2R1bGUgaWQgPSA1OVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///59\n"); /***/ }), /* 60 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -eval("\n\nvar utils = __webpack_require__(0);\n\nmodule.exports = (\n utils.isStandardBrowserEnv() ?\n\n // Standard browser envs support document.cookie\n (function standardBrowserEnv() {\n return {\n write: function write(name, value, expires, path, domain, secure) {\n var cookie = [];\n cookie.push(name + '=' + encodeURIComponent(value));\n\n if (utils.isNumber(expires)) {\n cookie.push('expires=' + new Date(expires).toGMTString());\n }\n\n if (utils.isString(path)) {\n cookie.push('path=' + path);\n }\n\n if (utils.isString(domain)) {\n cookie.push('domain=' + domain);\n }\n\n if (secure === true) {\n cookie.push('secure');\n }\n\n document.cookie = cookie.join('; ');\n },\n\n read: function read(name) {\n var match = document.cookie.match(new RegExp('(^|;\\\\s*)(' + name + ')=([^;]*)'));\n return (match ? decodeURIComponent(match[3]) : null);\n },\n\n remove: function remove(name) {\n this.write(name, '', Date.now() - 86400000);\n }\n };\n })() :\n\n // Non standard browser env (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return {\n write: function write() {},\n read: function read() { return null; },\n remove: function remove() {}\n };\n })()\n);\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvY29va2llcy5qcz9hNzU2Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztBQUVBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQSx3Q0FBd0M7QUFDeEMsT0FBTzs7QUFFUDtBQUNBLDBEQUEwRCx3QkFBd0I7QUFDbEY7QUFDQSxPQUFPOztBQUVQO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRzs7QUFFSDtBQUNBO0FBQ0E7QUFDQSxnQ0FBZ0M7QUFDaEMsNkJBQTZCLGFBQWEsRUFBRTtBQUM1QztBQUNBO0FBQ0EsR0FBRztBQUNIIiwiZmlsZSI6IjYwLmpzIiwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBzdHJpY3QnO1xuXG52YXIgdXRpbHMgPSByZXF1aXJlKCcuLy4uL3V0aWxzJyk7XG5cbm1vZHVsZS5leHBvcnRzID0gKFxuICB1dGlscy5pc1N0YW5kYXJkQnJvd3NlckVudigpID9cblxuICAvLyBTdGFuZGFyZCBicm93c2VyIGVudnMgc3VwcG9ydCBkb2N1bWVudC5jb29raWVcbiAgKGZ1bmN0aW9uIHN0YW5kYXJkQnJvd3NlckVudigpIHtcbiAgICByZXR1cm4ge1xuICAgICAgd3JpdGU6IGZ1bmN0aW9uIHdyaXRlKG5hbWUsIHZhbHVlLCBleHBpcmVzLCBwYXRoLCBkb21haW4sIHNlY3VyZSkge1xuICAgICAgICB2YXIgY29va2llID0gW107XG4gICAgICAgIGNvb2tpZS5wdXNoKG5hbWUgKyAnPScgKyBlbmNvZGVVUklDb21wb25lbnQodmFsdWUpKTtcblxuICAgICAgICBpZiAodXRpbHMuaXNOdW1iZXIoZXhwaXJlcykpIHtcbiAgICAgICAgICBjb29raWUucHVzaCgnZXhwaXJlcz0nICsgbmV3IERhdGUoZXhwaXJlcykudG9HTVRTdHJpbmcoKSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodXRpbHMuaXNTdHJpbmcocGF0aCkpIHtcbiAgICAgICAgICBjb29raWUucHVzaCgncGF0aD0nICsgcGF0aCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodXRpbHMuaXNTdHJpbmcoZG9tYWluKSkge1xuICAgICAgICAgIGNvb2tpZS5wdXNoKCdkb21haW49JyArIGRvbWFpbik7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoc2VjdXJlID09PSB0cnVlKSB7XG4gICAgICAgICAgY29va2llLnB1c2goJ3NlY3VyZScpO1xuICAgICAgICB9XG5cbiAgICAgICAgZG9jdW1lbnQuY29va2llID0gY29va2llLmpvaW4oJzsgJyk7XG4gICAgICB9LFxuXG4gICAgICByZWFkOiBmdW5jdGlvbiByZWFkKG5hbWUpIHtcbiAgICAgICAgdmFyIG1hdGNoID0gZG9jdW1lbnQuY29va2llLm1hdGNoKG5ldyBSZWdFeHAoJyhefDtcXFxccyopKCcgKyBuYW1lICsgJyk9KFteO10qKScpKTtcbiAgICAgICAgcmV0dXJuIChtYXRjaCA/IGRlY29kZVVSSUNvbXBvbmVudChtYXRjaFszXSkgOiBudWxsKTtcbiAgICAgIH0sXG5cbiAgICAgIHJlbW92ZTogZnVuY3Rpb24gcmVtb3ZlKG5hbWUpIHtcbiAgICAgICAgdGhpcy53cml0ZShuYW1lLCAnJywgRGF0ZS5ub3coKSAtIDg2NDAwMDAwKTtcbiAgICAgIH1cbiAgICB9O1xuICB9KSgpIDpcblxuICAvLyBOb24gc3RhbmRhcmQgYnJvd3NlciBlbnYgKHdlYiB3b3JrZXJzLCByZWFjdC1uYXRpdmUpIGxhY2sgbmVlZGVkIHN1cHBvcnQuXG4gIChmdW5jdGlvbiBub25TdGFuZGFyZEJyb3dzZXJFbnYoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHdyaXRlOiBmdW5jdGlvbiB3cml0ZSgpIHt9LFxuICAgICAgcmVhZDogZnVuY3Rpb24gcmVhZCgpIHsgcmV0dXJuIG51bGw7IH0sXG4gICAgICByZW1vdmU6IGZ1bmN0aW9uIHJlbW92ZSgpIHt9XG4gICAgfTtcbiAgfSkoKVxuKTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9oZWxwZXJzL2Nvb2tpZXMuanNcbi8vIG1vZHVsZSBpZCA9IDYwXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///60\n"); +eval("\n\n/**\n * Determines whether the specified URL is absolute\n *\n * @param {string} url The URL to test\n * @returns {boolean} True if the specified URL is absolute, otherwise false\n */\nmodule.exports = function isAbsoluteURL(url) {\n // A URL is considered absolute if it begins with \"://\" or \"//\" (protocol-relative URL).\n // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed\n // by any combination of letters, digits, plus, period, or hyphen.\n return /^([a-z][a-z\\d\\+\\-\\.]*:)?\\/\\//i.test(url);\n};\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvaXNBYnNvbHV0ZVVSTC5qcz83NDhjIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLFdBQVcsT0FBTztBQUNsQixhQUFhLFFBQVE7QUFDckI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJmaWxlIjoiNjAuanMiLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIHN0cmljdCc7XG5cbi8qKlxuICogRGV0ZXJtaW5lcyB3aGV0aGVyIHRoZSBzcGVjaWZpZWQgVVJMIGlzIGFic29sdXRlXG4gKlxuICogQHBhcmFtIHtzdHJpbmd9IHVybCBUaGUgVVJMIHRvIHRlc3RcbiAqIEByZXR1cm5zIHtib29sZWFufSBUcnVlIGlmIHRoZSBzcGVjaWZpZWQgVVJMIGlzIGFic29sdXRlLCBvdGhlcndpc2UgZmFsc2VcbiAqL1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiBpc0Fic29sdXRlVVJMKHVybCkge1xuICAvLyBBIFVSTCBpcyBjb25zaWRlcmVkIGFic29sdXRlIGlmIGl0IGJlZ2lucyB3aXRoIFwiPHNjaGVtZT46Ly9cIiBvciBcIi8vXCIgKHByb3RvY29sLXJlbGF0aXZlIFVSTCkuXG4gIC8vIFJGQyAzOTg2IGRlZmluZXMgc2NoZW1lIG5hbWUgYXMgYSBzZXF1ZW5jZSBvZiBjaGFyYWN0ZXJzIGJlZ2lubmluZyB3aXRoIGEgbGV0dGVyIGFuZCBmb2xsb3dlZFxuICAvLyBieSBhbnkgY29tYmluYXRpb24gb2YgbGV0dGVycywgZGlnaXRzLCBwbHVzLCBwZXJpb2QsIG9yIGh5cGhlbi5cbiAgcmV0dXJuIC9eKFthLXpdW2EtelxcZFxcK1xcLVxcLl0qOik/XFwvXFwvL2kudGVzdCh1cmwpO1xufTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9oZWxwZXJzL2lzQWJzb2x1dGVVUkwuanNcbi8vIG1vZHVsZSBpZCA9IDYwXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///60\n"); /***/ }), /* 61 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -eval("\n\nvar utils = __webpack_require__(0);\n\nfunction InterceptorManager() {\n this.handlers = [];\n}\n\n/**\n * Add a new interceptor to the stack\n *\n * @param {Function} fulfilled The function to handle `then` for a `Promise`\n * @param {Function} rejected The function to handle `reject` for a `Promise`\n *\n * @return {Number} An ID used to remove interceptor later\n */\nInterceptorManager.prototype.use = function use(fulfilled, rejected) {\n this.handlers.push({\n fulfilled: fulfilled,\n rejected: rejected\n });\n return this.handlers.length - 1;\n};\n\n/**\n * Remove an interceptor from the stack\n *\n * @param {Number} id The ID that was returned by `use`\n */\nInterceptorManager.prototype.eject = function eject(id) {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n};\n\n/**\n * Iterate over all the registered interceptors\n *\n * This method is particularly useful for skipping over any\n * interceptors that may have become `null` calling `eject`.\n *\n * @param {Function} fn The function to call for each interceptor\n */\nInterceptorManager.prototype.forEach = function forEach(fn) {\n utils.forEach(this.handlers, function forEachHandler(h) {\n if (h !== null) {\n fn(h);\n }\n });\n};\n\nmodule.exports = InterceptorManager;\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvSW50ZXJjZXB0b3JNYW5hZ2VyLmpzPzdlZTEiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLFdBQVcsU0FBUztBQUNwQixXQUFXLFNBQVM7QUFDcEI7QUFDQSxZQUFZLE9BQU87QUFDbkI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLFdBQVcsT0FBTztBQUNsQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsV0FBVyxTQUFTO0FBQ3BCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDs7QUFFQSIsImZpbGUiOiI2MS5qcyIsInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxudmFyIHV0aWxzID0gcmVxdWlyZSgnLi8uLi91dGlscycpO1xuXG5mdW5jdGlvbiBJbnRlcmNlcHRvck1hbmFnZXIoKSB7XG4gIHRoaXMuaGFuZGxlcnMgPSBbXTtcbn1cblxuLyoqXG4gKiBBZGQgYSBuZXcgaW50ZXJjZXB0b3IgdG8gdGhlIHN0YWNrXG4gKlxuICogQHBhcmFtIHtGdW5jdGlvbn0gZnVsZmlsbGVkIFRoZSBmdW5jdGlvbiB0byBoYW5kbGUgYHRoZW5gIGZvciBhIGBQcm9taXNlYFxuICogQHBhcmFtIHtGdW5jdGlvbn0gcmVqZWN0ZWQgVGhlIGZ1bmN0aW9uIHRvIGhhbmRsZSBgcmVqZWN0YCBmb3IgYSBgUHJvbWlzZWBcbiAqXG4gKiBAcmV0dXJuIHtOdW1iZXJ9IEFuIElEIHVzZWQgdG8gcmVtb3ZlIGludGVyY2VwdG9yIGxhdGVyXG4gKi9cbkludGVyY2VwdG9yTWFuYWdlci5wcm90b3R5cGUudXNlID0gZnVuY3Rpb24gdXNlKGZ1bGZpbGxlZCwgcmVqZWN0ZWQpIHtcbiAgdGhpcy5oYW5kbGVycy5wdXNoKHtcbiAgICBmdWxmaWxsZWQ6IGZ1bGZpbGxlZCxcbiAgICByZWplY3RlZDogcmVqZWN0ZWRcbiAgfSk7XG4gIHJldHVybiB0aGlzLmhhbmRsZXJzLmxlbmd0aCAtIDE7XG59O1xuXG4vKipcbiAqIFJlbW92ZSBhbiBpbnRlcmNlcHRvciBmcm9tIHRoZSBzdGFja1xuICpcbiAqIEBwYXJhbSB7TnVtYmVyfSBpZCBUaGUgSUQgdGhhdCB3YXMgcmV0dXJuZWQgYnkgYHVzZWBcbiAqL1xuSW50ZXJjZXB0b3JNYW5hZ2VyLnByb3RvdHlwZS5lamVjdCA9IGZ1bmN0aW9uIGVqZWN0KGlkKSB7XG4gIGlmICh0aGlzLmhhbmRsZXJzW2lkXSkge1xuICAgIHRoaXMuaGFuZGxlcnNbaWRdID0gbnVsbDtcbiAgfVxufTtcblxuLyoqXG4gKiBJdGVyYXRlIG92ZXIgYWxsIHRoZSByZWdpc3RlcmVkIGludGVyY2VwdG9yc1xuICpcbiAqIFRoaXMgbWV0aG9kIGlzIHBhcnRpY3VsYXJseSB1c2VmdWwgZm9yIHNraXBwaW5nIG92ZXIgYW55XG4gKiBpbnRlcmNlcHRvcnMgdGhhdCBtYXkgaGF2ZSBiZWNvbWUgYG51bGxgIGNhbGxpbmcgYGVqZWN0YC5cbiAqXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBmbiBUaGUgZnVuY3Rpb24gdG8gY2FsbCBmb3IgZWFjaCBpbnRlcmNlcHRvclxuICovXG5JbnRlcmNlcHRvck1hbmFnZXIucHJvdG90eXBlLmZvckVhY2ggPSBmdW5jdGlvbiBmb3JFYWNoKGZuKSB7XG4gIHV0aWxzLmZvckVhY2godGhpcy5oYW5kbGVycywgZnVuY3Rpb24gZm9yRWFjaEhhbmRsZXIoaCkge1xuICAgIGlmIChoICE9PSBudWxsKSB7XG4gICAgICBmbihoKTtcbiAgICB9XG4gIH0pO1xufTtcblxubW9kdWxlLmV4cG9ydHMgPSBJbnRlcmNlcHRvck1hbmFnZXI7XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvY29yZS9JbnRlcmNlcHRvck1hbmFnZXIuanNcbi8vIG1vZHVsZSBpZCA9IDYxXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///61\n"); +eval("\n\n/**\n * Creates a new URL by combining the specified URLs\n *\n * @param {string} baseURL The base URL\n * @param {string} relativeURL The relative URL\n * @returns {string} The combined URL\n */\nmodule.exports = function combineURLs(baseURL, relativeURL) {\n return relativeURL\n ? baseURL.replace(/\\/+$/, '') + '/' + relativeURL.replace(/^\\/+/, '')\n : baseURL;\n};\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvY29tYmluZVVSTHMuanM/YTkxNyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLE9BQU87QUFDbEIsV0FBVyxPQUFPO0FBQ2xCLGFBQWEsT0FBTztBQUNwQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJmaWxlIjoiNjEuanMiLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIHN0cmljdCc7XG5cbi8qKlxuICogQ3JlYXRlcyBhIG5ldyBVUkwgYnkgY29tYmluaW5nIHRoZSBzcGVjaWZpZWQgVVJMc1xuICpcbiAqIEBwYXJhbSB7c3RyaW5nfSBiYXNlVVJMIFRoZSBiYXNlIFVSTFxuICogQHBhcmFtIHtzdHJpbmd9IHJlbGF0aXZlVVJMIFRoZSByZWxhdGl2ZSBVUkxcbiAqIEByZXR1cm5zIHtzdHJpbmd9IFRoZSBjb21iaW5lZCBVUkxcbiAqL1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiBjb21iaW5lVVJMcyhiYXNlVVJMLCByZWxhdGl2ZVVSTCkge1xuICByZXR1cm4gcmVsYXRpdmVVUkxcbiAgICA/IGJhc2VVUkwucmVwbGFjZSgvXFwvKyQvLCAnJykgKyAnLycgKyByZWxhdGl2ZVVSTC5yZXBsYWNlKC9eXFwvKy8sICcnKVxuICAgIDogYmFzZVVSTDtcbn07XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvaGVscGVycy9jb21iaW5lVVJMcy5qc1xuLy8gbW9kdWxlIGlkID0gNjFcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///61\n"); /***/ }), /* 62 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -eval("\n\nvar utils = __webpack_require__(0);\nvar transformData = __webpack_require__(63);\nvar isCancel = __webpack_require__(21);\nvar defaults = __webpack_require__(6);\nvar isAbsoluteURL = __webpack_require__(64);\nvar combineURLs = __webpack_require__(65);\n\n/**\n * Throws a `Cancel` if cancellation has been requested.\n */\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n}\n\n/**\n * Dispatch a request to the server using the configured adapter.\n *\n * @param {object} config The config that is to be used for the request\n * @returns {Promise} The Promise to be fulfilled\n */\nmodule.exports = function dispatchRequest(config) {\n throwIfCancellationRequested(config);\n\n // Support baseURL config\n if (config.baseURL && !isAbsoluteURL(config.url)) {\n config.url = combineURLs(config.baseURL, config.url);\n }\n\n // Ensure headers exist\n config.headers = config.headers || {};\n\n // Transform request data\n config.data = transformData(\n config.data,\n config.headers,\n config.transformRequest\n );\n\n // Flatten headers\n config.headers = utils.merge(\n config.headers.common || {},\n config.headers[config.method] || {},\n config.headers || {}\n );\n\n utils.forEach(\n ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],\n function cleanHeaderConfig(method) {\n delete config.headers[method];\n }\n );\n\n var adapter = config.adapter || defaults.adapter;\n\n return adapter(config).then(function onAdapterResolution(response) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n response.data = transformData(\n response.data,\n response.headers,\n config.transformResponse\n );\n\n return response;\n }, function onAdapterRejection(reason) {\n if (!isCancel(reason)) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n if (reason && reason.response) {\n reason.response.data = transformData(\n reason.response.data,\n reason.response.headers,\n config.transformResponse\n );\n }\n }\n\n return Promise.reject(reason);\n });\n};\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvZGlzcGF0Y2hSZXF1ZXN0LmpzP2M0YmIiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsV0FBVyxPQUFPO0FBQ2xCLGFBQWEsUUFBUTtBQUNyQjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLCtCQUErQjtBQUMvQix1Q0FBdUM7QUFDdkM7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxHQUFHO0FBQ0g7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxHQUFHO0FBQ0giLCJmaWxlIjoiNjIuanMiLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIHN0cmljdCc7XG5cbnZhciB1dGlscyA9IHJlcXVpcmUoJy4vLi4vdXRpbHMnKTtcbnZhciB0cmFuc2Zvcm1EYXRhID0gcmVxdWlyZSgnLi90cmFuc2Zvcm1EYXRhJyk7XG52YXIgaXNDYW5jZWwgPSByZXF1aXJlKCcuLi9jYW5jZWwvaXNDYW5jZWwnKTtcbnZhciBkZWZhdWx0cyA9IHJlcXVpcmUoJy4uL2RlZmF1bHRzJyk7XG52YXIgaXNBYnNvbHV0ZVVSTCA9IHJlcXVpcmUoJy4vLi4vaGVscGVycy9pc0Fic29sdXRlVVJMJyk7XG52YXIgY29tYmluZVVSTHMgPSByZXF1aXJlKCcuLy4uL2hlbHBlcnMvY29tYmluZVVSTHMnKTtcblxuLyoqXG4gKiBUaHJvd3MgYSBgQ2FuY2VsYCBpZiBjYW5jZWxsYXRpb24gaGFzIGJlZW4gcmVxdWVzdGVkLlxuICovXG5mdW5jdGlvbiB0aHJvd0lmQ2FuY2VsbGF0aW9uUmVxdWVzdGVkKGNvbmZpZykge1xuICBpZiAoY29uZmlnLmNhbmNlbFRva2VuKSB7XG4gICAgY29uZmlnLmNhbmNlbFRva2VuLnRocm93SWZSZXF1ZXN0ZWQoKTtcbiAgfVxufVxuXG4vKipcbiAqIERpc3BhdGNoIGEgcmVxdWVzdCB0byB0aGUgc2VydmVyIHVzaW5nIHRoZSBjb25maWd1cmVkIGFkYXB0ZXIuXG4gKlxuICogQHBhcmFtIHtvYmplY3R9IGNvbmZpZyBUaGUgY29uZmlnIHRoYXQgaXMgdG8gYmUgdXNlZCBmb3IgdGhlIHJlcXVlc3RcbiAqIEByZXR1cm5zIHtQcm9taXNlfSBUaGUgUHJvbWlzZSB0byBiZSBmdWxmaWxsZWRcbiAqL1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiBkaXNwYXRjaFJlcXVlc3QoY29uZmlnKSB7XG4gIHRocm93SWZDYW5jZWxsYXRpb25SZXF1ZXN0ZWQoY29uZmlnKTtcblxuICAvLyBTdXBwb3J0IGJhc2VVUkwgY29uZmlnXG4gIGlmIChjb25maWcuYmFzZVVSTCAmJiAhaXNBYnNvbHV0ZVVSTChjb25maWcudXJsKSkge1xuICAgIGNvbmZpZy51cmwgPSBjb21iaW5lVVJMcyhjb25maWcuYmFzZVVSTCwgY29uZmlnLnVybCk7XG4gIH1cblxuICAvLyBFbnN1cmUgaGVhZGVycyBleGlzdFxuICBjb25maWcuaGVhZGVycyA9IGNvbmZpZy5oZWFkZXJzIHx8IHt9O1xuXG4gIC8vIFRyYW5zZm9ybSByZXF1ZXN0IGRhdGFcbiAgY29uZmlnLmRhdGEgPSB0cmFuc2Zvcm1EYXRhKFxuICAgIGNvbmZpZy5kYXRhLFxuICAgIGNvbmZpZy5oZWFkZXJzLFxuICAgIGNvbmZpZy50cmFuc2Zvcm1SZXF1ZXN0XG4gICk7XG5cbiAgLy8gRmxhdHRlbiBoZWFkZXJzXG4gIGNvbmZpZy5oZWFkZXJzID0gdXRpbHMubWVyZ2UoXG4gICAgY29uZmlnLmhlYWRlcnMuY29tbW9uIHx8IHt9LFxuICAgIGNvbmZpZy5oZWFkZXJzW2NvbmZpZy5tZXRob2RdIHx8IHt9LFxuICAgIGNvbmZpZy5oZWFkZXJzIHx8IHt9XG4gICk7XG5cbiAgdXRpbHMuZm9yRWFjaChcbiAgICBbJ2RlbGV0ZScsICdnZXQnLCAnaGVhZCcsICdwb3N0JywgJ3B1dCcsICdwYXRjaCcsICdjb21tb24nXSxcbiAgICBmdW5jdGlvbiBjbGVhbkhlYWRlckNvbmZpZyhtZXRob2QpIHtcbiAgICAgIGRlbGV0ZSBjb25maWcuaGVhZGVyc1ttZXRob2RdO1xuICAgIH1cbiAgKTtcblxuICB2YXIgYWRhcHRlciA9IGNvbmZpZy5hZGFwdGVyIHx8IGRlZmF1bHRzLmFkYXB0ZXI7XG5cbiAgcmV0dXJuIGFkYXB0ZXIoY29uZmlnKS50aGVuKGZ1bmN0aW9uIG9uQWRhcHRlclJlc29sdXRpb24ocmVzcG9uc2UpIHtcbiAgICB0aHJvd0lmQ2FuY2VsbGF0aW9uUmVxdWVzdGVkKGNvbmZpZyk7XG5cbiAgICAvLyBUcmFuc2Zvcm0gcmVzcG9uc2UgZGF0YVxuICAgIHJlc3BvbnNlLmRhdGEgPSB0cmFuc2Zvcm1EYXRhKFxuICAgICAgcmVzcG9uc2UuZGF0YSxcbiAgICAgIHJlc3BvbnNlLmhlYWRlcnMsXG4gICAgICBjb25maWcudHJhbnNmb3JtUmVzcG9uc2VcbiAgICApO1xuXG4gICAgcmV0dXJuIHJlc3BvbnNlO1xuICB9LCBmdW5jdGlvbiBvbkFkYXB0ZXJSZWplY3Rpb24ocmVhc29uKSB7XG4gICAgaWYgKCFpc0NhbmNlbChyZWFzb24pKSB7XG4gICAgICB0aHJvd0lmQ2FuY2VsbGF0aW9uUmVxdWVzdGVkKGNvbmZpZyk7XG5cbiAgICAgIC8vIFRyYW5zZm9ybSByZXNwb25zZSBkYXRhXG4gICAgICBpZiAocmVhc29uICYmIHJlYXNvbi5yZXNwb25zZSkge1xuICAgICAgICByZWFzb24ucmVzcG9uc2UuZGF0YSA9IHRyYW5zZm9ybURhdGEoXG4gICAgICAgICAgcmVhc29uLnJlc3BvbnNlLmRhdGEsXG4gICAgICAgICAgcmVhc29uLnJlc3BvbnNlLmhlYWRlcnMsXG4gICAgICAgICAgY29uZmlnLnRyYW5zZm9ybVJlc3BvbnNlXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIFByb21pc2UucmVqZWN0KHJlYXNvbik7XG4gIH0pO1xufTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9jb3JlL2Rpc3BhdGNoUmVxdWVzdC5qc1xuLy8gbW9kdWxlIGlkID0gNjJcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///62\n"); +eval("\n\nvar Cancel = __webpack_require__(22);\n\n/**\n * A `CancelToken` is an object that can be used to request cancellation of an operation.\n *\n * @class\n * @param {Function} executor The executor function.\n */\nfunction CancelToken(executor) {\n if (typeof executor !== 'function') {\n throw new TypeError('executor must be a function.');\n }\n\n var resolvePromise;\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n\n var token = this;\n executor(function cancel(message) {\n if (token.reason) {\n // Cancellation has already been requested\n return;\n }\n\n token.reason = new Cancel(message);\n resolvePromise(token.reason);\n });\n}\n\n/**\n * Throws a `Cancel` if cancellation has been requested.\n */\nCancelToken.prototype.throwIfRequested = function throwIfRequested() {\n if (this.reason) {\n throw this.reason;\n }\n};\n\n/**\n * Returns an object that contains a new `CancelToken` and a function that, when called,\n * cancels the `CancelToken`.\n */\nCancelToken.source = function source() {\n var cancel;\n var token = new CancelToken(function executor(c) {\n cancel = c;\n });\n return {\n token: token,\n cancel: cancel\n };\n};\n\nmodule.exports = CancelToken;\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NhbmNlbC9DYW5jZWxUb2tlbi5qcz83MTZjIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsV0FBVyxTQUFTO0FBQ3BCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsR0FBRzs7QUFFSDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLEdBQUc7QUFDSDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQSIsImZpbGUiOiI2Mi5qcyIsInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxudmFyIENhbmNlbCA9IHJlcXVpcmUoJy4vQ2FuY2VsJyk7XG5cbi8qKlxuICogQSBgQ2FuY2VsVG9rZW5gIGlzIGFuIG9iamVjdCB0aGF0IGNhbiBiZSB1c2VkIHRvIHJlcXVlc3QgY2FuY2VsbGF0aW9uIG9mIGFuIG9wZXJhdGlvbi5cbiAqXG4gKiBAY2xhc3NcbiAqIEBwYXJhbSB7RnVuY3Rpb259IGV4ZWN1dG9yIFRoZSBleGVjdXRvciBmdW5jdGlvbi5cbiAqL1xuZnVuY3Rpb24gQ2FuY2VsVG9rZW4oZXhlY3V0b3IpIHtcbiAgaWYgKHR5cGVvZiBleGVjdXRvciAhPT0gJ2Z1bmN0aW9uJykge1xuICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ2V4ZWN1dG9yIG11c3QgYmUgYSBmdW5jdGlvbi4nKTtcbiAgfVxuXG4gIHZhciByZXNvbHZlUHJvbWlzZTtcbiAgdGhpcy5wcm9taXNlID0gbmV3IFByb21pc2UoZnVuY3Rpb24gcHJvbWlzZUV4ZWN1dG9yKHJlc29sdmUpIHtcbiAgICByZXNvbHZlUHJvbWlzZSA9IHJlc29sdmU7XG4gIH0pO1xuXG4gIHZhciB0b2tlbiA9IHRoaXM7XG4gIGV4ZWN1dG9yKGZ1bmN0aW9uIGNhbmNlbChtZXNzYWdlKSB7XG4gICAgaWYgKHRva2VuLnJlYXNvbikge1xuICAgICAgLy8gQ2FuY2VsbGF0aW9uIGhhcyBhbHJlYWR5IGJlZW4gcmVxdWVzdGVkXG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdG9rZW4ucmVhc29uID0gbmV3IENhbmNlbChtZXNzYWdlKTtcbiAgICByZXNvbHZlUHJvbWlzZSh0b2tlbi5yZWFzb24pO1xuICB9KTtcbn1cblxuLyoqXG4gKiBUaHJvd3MgYSBgQ2FuY2VsYCBpZiBjYW5jZWxsYXRpb24gaGFzIGJlZW4gcmVxdWVzdGVkLlxuICovXG5DYW5jZWxUb2tlbi5wcm90b3R5cGUudGhyb3dJZlJlcXVlc3RlZCA9IGZ1bmN0aW9uIHRocm93SWZSZXF1ZXN0ZWQoKSB7XG4gIGlmICh0aGlzLnJlYXNvbikge1xuICAgIHRocm93IHRoaXMucmVhc29uO1xuICB9XG59O1xuXG4vKipcbiAqIFJldHVybnMgYW4gb2JqZWN0IHRoYXQgY29udGFpbnMgYSBuZXcgYENhbmNlbFRva2VuYCBhbmQgYSBmdW5jdGlvbiB0aGF0LCB3aGVuIGNhbGxlZCxcbiAqIGNhbmNlbHMgdGhlIGBDYW5jZWxUb2tlbmAuXG4gKi9cbkNhbmNlbFRva2VuLnNvdXJjZSA9IGZ1bmN0aW9uIHNvdXJjZSgpIHtcbiAgdmFyIGNhbmNlbDtcbiAgdmFyIHRva2VuID0gbmV3IENhbmNlbFRva2VuKGZ1bmN0aW9uIGV4ZWN1dG9yKGMpIHtcbiAgICBjYW5jZWwgPSBjO1xuICB9KTtcbiAgcmV0dXJuIHtcbiAgICB0b2tlbjogdG9rZW4sXG4gICAgY2FuY2VsOiBjYW5jZWxcbiAgfTtcbn07XG5cbm1vZHVsZS5leHBvcnRzID0gQ2FuY2VsVG9rZW47XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvY2FuY2VsL0NhbmNlbFRva2VuLmpzXG4vLyBtb2R1bGUgaWQgPSA2MlxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///62\n"); /***/ }), /* 63 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -eval("\n\nvar utils = __webpack_require__(0);\n\n/**\n * Transform the data for a request or a response\n *\n * @param {Object|String} data The data to be transformed\n * @param {Array} headers The headers for the request or response\n * @param {Array|Function} fns A single function or Array of functions\n * @returns {*} The resulting transformed data\n */\nmodule.exports = function transformData(data, headers, fns) {\n /*eslint no-param-reassign:0*/\n utils.forEach(fns, function transform(fn) {\n data = fn(data, headers);\n });\n\n return data;\n};\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvdHJhbnNmb3JtRGF0YS5qcz80Y2Q1Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLFdBQVcsY0FBYztBQUN6QixXQUFXLE1BQU07QUFDakIsV0FBVyxlQUFlO0FBQzFCLGFBQWEsRUFBRTtBQUNmO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHOztBQUVIO0FBQ0EiLCJmaWxlIjoiNjMuanMiLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIHN0cmljdCc7XG5cbnZhciB1dGlscyA9IHJlcXVpcmUoJy4vLi4vdXRpbHMnKTtcblxuLyoqXG4gKiBUcmFuc2Zvcm0gdGhlIGRhdGEgZm9yIGEgcmVxdWVzdCBvciBhIHJlc3BvbnNlXG4gKlxuICogQHBhcmFtIHtPYmplY3R8U3RyaW5nfSBkYXRhIFRoZSBkYXRhIHRvIGJlIHRyYW5zZm9ybWVkXG4gKiBAcGFyYW0ge0FycmF5fSBoZWFkZXJzIFRoZSBoZWFkZXJzIGZvciB0aGUgcmVxdWVzdCBvciByZXNwb25zZVxuICogQHBhcmFtIHtBcnJheXxGdW5jdGlvbn0gZm5zIEEgc2luZ2xlIGZ1bmN0aW9uIG9yIEFycmF5IG9mIGZ1bmN0aW9uc1xuICogQHJldHVybnMgeyp9IFRoZSByZXN1bHRpbmcgdHJhbnNmb3JtZWQgZGF0YVxuICovXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIHRyYW5zZm9ybURhdGEoZGF0YSwgaGVhZGVycywgZm5zKSB7XG4gIC8qZXNsaW50IG5vLXBhcmFtLXJlYXNzaWduOjAqL1xuICB1dGlscy5mb3JFYWNoKGZucywgZnVuY3Rpb24gdHJhbnNmb3JtKGZuKSB7XG4gICAgZGF0YSA9IGZuKGRhdGEsIGhlYWRlcnMpO1xuICB9KTtcblxuICByZXR1cm4gZGF0YTtcbn07XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvY29yZS90cmFuc2Zvcm1EYXRhLmpzXG4vLyBtb2R1bGUgaWQgPSA2M1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///63\n"); +eval("\n\n/**\n * Syntactic sugar for invoking a function and expanding an array for arguments.\n *\n * Common use case would be to use `Function.prototype.apply`.\n *\n * ```js\n * function f(x, y, z) {}\n * var args = [1, 2, 3];\n * f.apply(null, args);\n * ```\n *\n * With `spread` this example can be re-written.\n *\n * ```js\n * spread(function(x, y, z) {})([1, 2, 3]);\n * ```\n *\n * @param {Function} callback\n * @returns {Function}\n */\nmodule.exports = function spread(callback) {\n return function wrap(arr) {\n return callback.apply(null, arr);\n };\n};\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvc3ByZWFkLmpzP2E3MTEiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLCtCQUErQjtBQUMvQjtBQUNBO0FBQ0EsV0FBVyxTQUFTO0FBQ3BCLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJmaWxlIjoiNjMuanMiLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIHN0cmljdCc7XG5cbi8qKlxuICogU3ludGFjdGljIHN1Z2FyIGZvciBpbnZva2luZyBhIGZ1bmN0aW9uIGFuZCBleHBhbmRpbmcgYW4gYXJyYXkgZm9yIGFyZ3VtZW50cy5cbiAqXG4gKiBDb21tb24gdXNlIGNhc2Ugd291bGQgYmUgdG8gdXNlIGBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHlgLlxuICpcbiAqICBgYGBqc1xuICogIGZ1bmN0aW9uIGYoeCwgeSwgeikge31cbiAqICB2YXIgYXJncyA9IFsxLCAyLCAzXTtcbiAqICBmLmFwcGx5KG51bGwsIGFyZ3MpO1xuICogIGBgYFxuICpcbiAqIFdpdGggYHNwcmVhZGAgdGhpcyBleGFtcGxlIGNhbiBiZSByZS13cml0dGVuLlxuICpcbiAqICBgYGBqc1xuICogIHNwcmVhZChmdW5jdGlvbih4LCB5LCB6KSB7fSkoWzEsIDIsIDNdKTtcbiAqICBgYGBcbiAqXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBjYWxsYmFja1xuICogQHJldHVybnMge0Z1bmN0aW9ufVxuICovXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIHNwcmVhZChjYWxsYmFjaykge1xuICByZXR1cm4gZnVuY3Rpb24gd3JhcChhcnIpIHtcbiAgICByZXR1cm4gY2FsbGJhY2suYXBwbHkobnVsbCwgYXJyKTtcbiAgfTtcbn07XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvaGVscGVycy9zcHJlYWQuanNcbi8vIG1vZHVsZSBpZCA9IDYzXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///63\n"); /***/ }), /* 64 */ -/***/ (function(module, exports, __webpack_require__) { +/***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("\n\n/**\n * Determines whether the specified URL is absolute\n *\n * @param {string} url The URL to test\n * @returns {boolean} True if the specified URL is absolute, otherwise false\n */\nmodule.exports = function isAbsoluteURL(url) {\n // A URL is considered absolute if it begins with \"://\" or \"//\" (protocol-relative URL).\n // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed\n // by any combination of letters, digits, plus, period, or hyphen.\n return /^([a-z][a-z\\d\\+\\-\\.]*:)?\\/\\//i.test(url);\n};\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvaXNBYnNvbHV0ZVVSTC5qcz83NDhjIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLFdBQVcsT0FBTztBQUNsQixhQUFhLFFBQVE7QUFDckI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJmaWxlIjoiNjQuanMiLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIHN0cmljdCc7XG5cbi8qKlxuICogRGV0ZXJtaW5lcyB3aGV0aGVyIHRoZSBzcGVjaWZpZWQgVVJMIGlzIGFic29sdXRlXG4gKlxuICogQHBhcmFtIHtzdHJpbmd9IHVybCBUaGUgVVJMIHRvIHRlc3RcbiAqIEByZXR1cm5zIHtib29sZWFufSBUcnVlIGlmIHRoZSBzcGVjaWZpZWQgVVJMIGlzIGFic29sdXRlLCBvdGhlcndpc2UgZmFsc2VcbiAqL1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiBpc0Fic29sdXRlVVJMKHVybCkge1xuICAvLyBBIFVSTCBpcyBjb25zaWRlcmVkIGFic29sdXRlIGlmIGl0IGJlZ2lucyB3aXRoIFwiPHNjaGVtZT46Ly9cIiBvciBcIi8vXCIgKHByb3RvY29sLXJlbGF0aXZlIFVSTCkuXG4gIC8vIFJGQyAzOTg2IGRlZmluZXMgc2NoZW1lIG5hbWUgYXMgYSBzZXF1ZW5jZSBvZiBjaGFyYWN0ZXJzIGJlZ2lubmluZyB3aXRoIGEgbGV0dGVyIGFuZCBmb2xsb3dlZFxuICAvLyBieSBhbnkgY29tYmluYXRpb24gb2YgbGV0dGVycywgZGlnaXRzLCBwbHVzLCBwZXJpb2QsIG9yIGh5cGhlbi5cbiAgcmV0dXJuIC9eKFthLXpdW2EtelxcZFxcK1xcLVxcLl0qOik/XFwvXFwvL2kudGVzdCh1cmwpO1xufTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9oZWxwZXJzL2lzQWJzb2x1dGVVUkwuanNcbi8vIG1vZHVsZSBpZCA9IDY0XG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///64\n"); +eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { attrs: { id: \"app\" } },\n [\n _c(\n \"app-navigation\",\n { attrs: { menu: _vm.menu } },\n [\n _c(\"template\", { slot: \"settings-content\" }, [\n _c(\n \"div\",\n [\n _c(\"p\", [_vm._v(_vm._s(_vm.t(\"settings\", \"Default quota :\")))]),\n _vm._v(\" \"),\n _c(\"multiselect\", {\n staticClass: \"multiselect-vue\",\n attrs: {\n value: _vm.defaultQuota,\n options: _vm.quotaOptions,\n \"tag-placeholder\": \"create\",\n placeholder: _vm.t(\"settings\", \"Select default quota\"),\n label: \"label\",\n \"track-by\": \"id\",\n allowEmpty: false,\n taggable: true\n },\n on: { tag: _vm.validateQuota, input: _vm.setDefaultQuota }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\"div\", [\n _c(\"input\", {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.showLanguages,\n expression: \"showLanguages\"\n }\n ],\n staticClass: \"checkbox\",\n attrs: { type: \"checkbox\", id: \"showLanguages\" },\n domProps: {\n checked: _vm.showLanguages,\n checked: Array.isArray(_vm.showLanguages)\n ? _vm._i(_vm.showLanguages, null) > -1\n : _vm.showLanguages\n },\n on: {\n change: function($event) {\n var $$a = _vm.showLanguages,\n $$el = $event.target,\n $$c = $$el.checked ? true : false\n if (Array.isArray($$a)) {\n var $$v = null,\n $$i = _vm._i($$a, $$v)\n if ($$el.checked) {\n $$i < 0 && (_vm.showLanguages = $$a.concat([$$v]))\n } else {\n $$i > -1 &&\n (_vm.showLanguages = $$a\n .slice(0, $$i)\n .concat($$a.slice($$i + 1)))\n }\n } else {\n _vm.showLanguages = $$c\n }\n }\n }\n }),\n _vm._v(\" \"),\n _c(\"label\", { attrs: { for: \"showLanguages\" } }, [\n _vm._v(_vm._s(_vm.t(\"settings\", \"Show Languages\")))\n ])\n ]),\n _vm._v(\" \"),\n _c(\"div\", [\n _c(\"input\", {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.showLastLogin,\n expression: \"showLastLogin\"\n }\n ],\n staticClass: \"checkbox\",\n attrs: { type: \"checkbox\", id: \"showLastLogin\" },\n domProps: {\n checked: _vm.showLastLogin,\n checked: Array.isArray(_vm.showLastLogin)\n ? _vm._i(_vm.showLastLogin, null) > -1\n : _vm.showLastLogin\n },\n on: {\n change: function($event) {\n var $$a = _vm.showLastLogin,\n $$el = $event.target,\n $$c = $$el.checked ? true : false\n if (Array.isArray($$a)) {\n var $$v = null,\n $$i = _vm._i($$a, $$v)\n if ($$el.checked) {\n $$i < 0 && (_vm.showLastLogin = $$a.concat([$$v]))\n } else {\n $$i > -1 &&\n (_vm.showLastLogin = $$a\n .slice(0, $$i)\n .concat($$a.slice($$i + 1)))\n }\n } else {\n _vm.showLastLogin = $$c\n }\n }\n }\n }),\n _vm._v(\" \"),\n _c(\"label\", { attrs: { for: \"showLastLogin\" } }, [\n _vm._v(_vm._s(_vm.t(\"settings\", \"Show last login\")))\n ])\n ]),\n _vm._v(\" \"),\n _c(\"div\", [\n _c(\"input\", {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.showUserBackend,\n expression: \"showUserBackend\"\n }\n ],\n staticClass: \"checkbox\",\n attrs: { type: \"checkbox\", id: \"showUserBackend\" },\n domProps: {\n checked: _vm.showUserBackend,\n checked: Array.isArray(_vm.showUserBackend)\n ? _vm._i(_vm.showUserBackend, null) > -1\n : _vm.showUserBackend\n },\n on: {\n change: function($event) {\n var $$a = _vm.showUserBackend,\n $$el = $event.target,\n $$c = $$el.checked ? true : false\n if (Array.isArray($$a)) {\n var $$v = null,\n $$i = _vm._i($$a, $$v)\n if ($$el.checked) {\n $$i < 0 && (_vm.showUserBackend = $$a.concat([$$v]))\n } else {\n $$i > -1 &&\n (_vm.showUserBackend = $$a\n .slice(0, $$i)\n .concat($$a.slice($$i + 1)))\n }\n } else {\n _vm.showUserBackend = $$c\n }\n }\n }\n }),\n _vm._v(\" \"),\n _c(\"label\", { attrs: { for: \"showUserBackend\" } }, [\n _vm._v(_vm._s(_vm.t(\"settings\", \"Show user backend\")))\n ])\n ]),\n _vm._v(\" \"),\n _c(\"div\", [\n _c(\"input\", {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.showStoragePath,\n expression: \"showStoragePath\"\n }\n ],\n staticClass: \"checkbox\",\n attrs: { type: \"checkbox\", id: \"showStoragePath\" },\n domProps: {\n checked: _vm.showStoragePath,\n checked: Array.isArray(_vm.showStoragePath)\n ? _vm._i(_vm.showStoragePath, null) > -1\n : _vm.showStoragePath\n },\n on: {\n change: function($event) {\n var $$a = _vm.showStoragePath,\n $$el = $event.target,\n $$c = $$el.checked ? true : false\n if (Array.isArray($$a)) {\n var $$v = null,\n $$i = _vm._i($$a, $$v)\n if ($$el.checked) {\n $$i < 0 && (_vm.showStoragePath = $$a.concat([$$v]))\n } else {\n $$i > -1 &&\n (_vm.showStoragePath = $$a\n .slice(0, $$i)\n .concat($$a.slice($$i + 1)))\n }\n } else {\n _vm.showStoragePath = $$c\n }\n }\n }\n }),\n _vm._v(\" \"),\n _c(\"label\", { attrs: { for: \"showStoragePath\" } }, [\n _vm._v(_vm._s(_vm.t(\"settings\", \"Show storage path\")))\n ])\n ])\n ])\n ],\n 2\n ),\n _vm._v(\" \"),\n _c(\"user-list\", {\n attrs: {\n users: _vm.users,\n showConfig: _vm.showConfig,\n selectedGroup: _vm.selectedGroup\n }\n })\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ __webpack_exports__[\"a\"] = (esExports);\nif (false) {\n module.hot.accept()\n if (module.hot.data) {\n require(\"vue-hot-reload-api\") .rerender(\"data-v-68be103e\", esExports)\n }\n}\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvdmlld3MvVXNlcnMudnVlPzJiNDgiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSyxTQUFTLFlBQVksRUFBRTtBQUM1QjtBQUNBO0FBQ0E7QUFDQSxTQUFTLFNBQVMsaUJBQWlCLEVBQUU7QUFDckM7QUFDQSwwQkFBMEIsMkJBQTJCO0FBQ3JEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbUJBQW1CO0FBQ25CLHVCQUF1QjtBQUN2QixpQkFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCLHdDQUF3QztBQUNoRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsdUJBQXVCO0FBQ3ZCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxlQUFlO0FBQ2Y7QUFDQSwyQkFBMkIsU0FBUyx1QkFBdUIsRUFBRTtBQUM3RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0Isd0NBQXdDO0FBQ2hFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx1QkFBdUI7QUFDdkI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWU7QUFDZjtBQUNBLDJCQUEyQixTQUFTLHVCQUF1QixFQUFFO0FBQzdEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QiwwQ0FBMEM7QUFDbEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1QjtBQUN2QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZUFBZTtBQUNmO0FBQ0EsMkJBQTJCLFNBQVMseUJBQXlCLEVBQUU7QUFDL0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCLDBDQUEwQztBQUNsRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsdUJBQXVCO0FBQ3ZCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxlQUFlO0FBQ2Y7QUFDQSwyQkFBMkIsU0FBUyx5QkFBeUIsRUFBRTtBQUMvRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsImZpbGUiOiI2NC5qcyIsInNvdXJjZXNDb250ZW50IjpbInZhciByZW5kZXIgPSBmdW5jdGlvbigpIHtcbiAgdmFyIF92bSA9IHRoaXNcbiAgdmFyIF9oID0gX3ZtLiRjcmVhdGVFbGVtZW50XG4gIHZhciBfYyA9IF92bS5fc2VsZi5fYyB8fCBfaFxuICByZXR1cm4gX2MoXG4gICAgXCJkaXZcIixcbiAgICB7IGF0dHJzOiB7IGlkOiBcImFwcFwiIH0gfSxcbiAgICBbXG4gICAgICBfYyhcbiAgICAgICAgXCJhcHAtbmF2aWdhdGlvblwiLFxuICAgICAgICB7IGF0dHJzOiB7IG1lbnU6IF92bS5tZW51IH0gfSxcbiAgICAgICAgW1xuICAgICAgICAgIF9jKFwidGVtcGxhdGVcIiwgeyBzbG90OiBcInNldHRpbmdzLWNvbnRlbnRcIiB9LCBbXG4gICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgIF9jKFwicFwiLCBbX3ZtLl92KF92bS5fcyhfdm0udChcInNldHRpbmdzXCIsIFwiRGVmYXVsdCBxdW90YSA6XCIpKSldKSxcbiAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgIF9jKFwibXVsdGlzZWxlY3RcIiwge1xuICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwibXVsdGlzZWxlY3QtdnVlXCIsXG4gICAgICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLmRlZmF1bHRRdW90YSxcbiAgICAgICAgICAgICAgICAgICAgb3B0aW9uczogX3ZtLnF1b3RhT3B0aW9ucyxcbiAgICAgICAgICAgICAgICAgICAgXCJ0YWctcGxhY2Vob2xkZXJcIjogXCJjcmVhdGVcIixcbiAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI6IF92bS50KFwic2V0dGluZ3NcIiwgXCJTZWxlY3QgZGVmYXVsdCBxdW90YVwiKSxcbiAgICAgICAgICAgICAgICAgICAgbGFiZWw6IFwibGFiZWxcIixcbiAgICAgICAgICAgICAgICAgICAgXCJ0cmFjay1ieVwiOiBcImlkXCIsXG4gICAgICAgICAgICAgICAgICAgIGFsbG93RW1wdHk6IGZhbHNlLFxuICAgICAgICAgICAgICAgICAgICB0YWdnYWJsZTogdHJ1ZVxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgIG9uOiB7IHRhZzogX3ZtLnZhbGlkYXRlUXVvdGEsIGlucHV0OiBfdm0uc2V0RGVmYXVsdFF1b3RhIH1cbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAxXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgIF9jKFwiZGl2XCIsIFtcbiAgICAgICAgICAgICAgX2MoXCJpbnB1dFwiLCB7XG4gICAgICAgICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBuYW1lOiBcIm1vZGVsXCIsXG4gICAgICAgICAgICAgICAgICAgIHJhd05hbWU6IFwidi1tb2RlbFwiLFxuICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLnNob3dMYW5ndWFnZXMsXG4gICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwic2hvd0xhbmd1YWdlc1wiXG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJjaGVja2JveFwiLFxuICAgICAgICAgICAgICAgIGF0dHJzOiB7IHR5cGU6IFwiY2hlY2tib3hcIiwgaWQ6IFwic2hvd0xhbmd1YWdlc1wiIH0sXG4gICAgICAgICAgICAgICAgZG9tUHJvcHM6IHtcbiAgICAgICAgICAgICAgICAgIGNoZWNrZWQ6IF92bS5zaG93TGFuZ3VhZ2VzLFxuICAgICAgICAgICAgICAgICAgY2hlY2tlZDogQXJyYXkuaXNBcnJheShfdm0uc2hvd0xhbmd1YWdlcylcbiAgICAgICAgICAgICAgICAgICAgPyBfdm0uX2koX3ZtLnNob3dMYW5ndWFnZXMsIG51bGwpID4gLTFcbiAgICAgICAgICAgICAgICAgICAgOiBfdm0uc2hvd0xhbmd1YWdlc1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgIGNoYW5nZTogZnVuY3Rpb24oJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgIHZhciAkJGEgPSBfdm0uc2hvd0xhbmd1YWdlcyxcbiAgICAgICAgICAgICAgICAgICAgICAkJGVsID0gJGV2ZW50LnRhcmdldCxcbiAgICAgICAgICAgICAgICAgICAgICAkJGMgPSAkJGVsLmNoZWNrZWQgPyB0cnVlIDogZmFsc2VcbiAgICAgICAgICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoJCRhKSkge1xuICAgICAgICAgICAgICAgICAgICAgIHZhciAkJHYgPSBudWxsLFxuICAgICAgICAgICAgICAgICAgICAgICAgJCRpID0gX3ZtLl9pKCQkYSwgJCR2KVxuICAgICAgICAgICAgICAgICAgICAgIGlmICgkJGVsLmNoZWNrZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICQkaSA8IDAgJiYgKF92bS5zaG93TGFuZ3VhZ2VzID0gJCRhLmNvbmNhdChbJCR2XSkpXG4gICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICQkaSA+IC0xICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgIChfdm0uc2hvd0xhbmd1YWdlcyA9ICQkYVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5zbGljZSgwLCAkJGkpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmNvbmNhdCgkJGEuc2xpY2UoJCRpICsgMSkpKVxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICBfdm0uc2hvd0xhbmd1YWdlcyA9ICQkY1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgX2MoXCJsYWJlbFwiLCB7IGF0dHJzOiB7IGZvcjogXCJzaG93TGFuZ3VhZ2VzXCIgfSB9LCBbXG4gICAgICAgICAgICAgICAgX3ZtLl92KF92bS5fcyhfdm0udChcInNldHRpbmdzXCIsIFwiU2hvdyBMYW5ndWFnZXNcIikpKVxuICAgICAgICAgICAgICBdKVxuICAgICAgICAgICAgXSksXG4gICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgX2MoXCJkaXZcIiwgW1xuICAgICAgICAgICAgICBfYyhcImlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICBkaXJlY3RpdmVzOiBbXG4gICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIG5hbWU6IFwibW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LW1vZGVsXCIsXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0uc2hvd0xhc3RMb2dpbixcbiAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJzaG93TGFzdExvZ2luXCJcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcImNoZWNrYm94XCIsXG4gICAgICAgICAgICAgICAgYXR0cnM6IHsgdHlwZTogXCJjaGVja2JveFwiLCBpZDogXCJzaG93TGFzdExvZ2luXCIgfSxcbiAgICAgICAgICAgICAgICBkb21Qcm9wczoge1xuICAgICAgICAgICAgICAgICAgY2hlY2tlZDogX3ZtLnNob3dMYXN0TG9naW4sXG4gICAgICAgICAgICAgICAgICBjaGVja2VkOiBBcnJheS5pc0FycmF5KF92bS5zaG93TGFzdExvZ2luKVxuICAgICAgICAgICAgICAgICAgICA/IF92bS5faShfdm0uc2hvd0xhc3RMb2dpbiwgbnVsbCkgPiAtMVxuICAgICAgICAgICAgICAgICAgICA6IF92bS5zaG93TGFzdExvZ2luXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgY2hhbmdlOiBmdW5jdGlvbigkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgdmFyICQkYSA9IF92bS5zaG93TGFzdExvZ2luLFxuICAgICAgICAgICAgICAgICAgICAgICQkZWwgPSAkZXZlbnQudGFyZ2V0LFxuICAgICAgICAgICAgICAgICAgICAgICQkYyA9ICQkZWwuY2hlY2tlZCA/IHRydWUgOiBmYWxzZVxuICAgICAgICAgICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheSgkJGEpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgdmFyICQkdiA9IG51bGwsXG4gICAgICAgICAgICAgICAgICAgICAgICAkJGkgPSBfdm0uX2koJCRhLCAkJHYpXG4gICAgICAgICAgICAgICAgICAgICAgaWYgKCQkZWwuY2hlY2tlZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgJCRpIDwgMCAmJiAoX3ZtLnNob3dMYXN0TG9naW4gPSAkJGEuY29uY2F0KFskJHZdKSlcbiAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgJCRpID4gLTEgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKF92bS5zaG93TGFzdExvZ2luID0gJCRhXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnNsaWNlKDAsICQkaSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuY29uY2F0KCQkYS5zbGljZSgkJGkgKyAxKSkpXG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgIF92bS5zaG93TGFzdExvZ2luID0gJCRjXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIHsgYXR0cnM6IHsgZm9yOiBcInNob3dMYXN0TG9naW5cIiB9IH0sIFtcbiAgICAgICAgICAgICAgICBfdm0uX3YoX3ZtLl9zKF92bS50KFwic2V0dGluZ3NcIiwgXCJTaG93IGxhc3QgbG9naW5cIikpKVxuICAgICAgICAgICAgICBdKVxuICAgICAgICAgICAgXSksXG4gICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgX2MoXCJkaXZcIiwgW1xuICAgICAgICAgICAgICBfYyhcImlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICBkaXJlY3RpdmVzOiBbXG4gICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIG5hbWU6IFwibW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LW1vZGVsXCIsXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0uc2hvd1VzZXJCYWNrZW5kLFxuICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcInNob3dVc2VyQmFja2VuZFwiXG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJjaGVja2JveFwiLFxuICAgICAgICAgICAgICAgIGF0dHJzOiB7IHR5cGU6IFwiY2hlY2tib3hcIiwgaWQ6IFwic2hvd1VzZXJCYWNrZW5kXCIgfSxcbiAgICAgICAgICAgICAgICBkb21Qcm9wczoge1xuICAgICAgICAgICAgICAgICAgY2hlY2tlZDogX3ZtLnNob3dVc2VyQmFja2VuZCxcbiAgICAgICAgICAgICAgICAgIGNoZWNrZWQ6IEFycmF5LmlzQXJyYXkoX3ZtLnNob3dVc2VyQmFja2VuZClcbiAgICAgICAgICAgICAgICAgICAgPyBfdm0uX2koX3ZtLnNob3dVc2VyQmFja2VuZCwgbnVsbCkgPiAtMVxuICAgICAgICAgICAgICAgICAgICA6IF92bS5zaG93VXNlckJhY2tlbmRcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICBjaGFuZ2U6IGZ1bmN0aW9uKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICB2YXIgJCRhID0gX3ZtLnNob3dVc2VyQmFja2VuZCxcbiAgICAgICAgICAgICAgICAgICAgICAkJGVsID0gJGV2ZW50LnRhcmdldCxcbiAgICAgICAgICAgICAgICAgICAgICAkJGMgPSAkJGVsLmNoZWNrZWQgPyB0cnVlIDogZmFsc2VcbiAgICAgICAgICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoJCRhKSkge1xuICAgICAgICAgICAgICAgICAgICAgIHZhciAkJHYgPSBudWxsLFxuICAgICAgICAgICAgICAgICAgICAgICAgJCRpID0gX3ZtLl9pKCQkYSwgJCR2KVxuICAgICAgICAgICAgICAgICAgICAgIGlmICgkJGVsLmNoZWNrZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICQkaSA8IDAgJiYgKF92bS5zaG93VXNlckJhY2tlbmQgPSAkJGEuY29uY2F0KFskJHZdKSlcbiAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgJCRpID4gLTEgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKF92bS5zaG93VXNlckJhY2tlbmQgPSAkJGFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuc2xpY2UoMCwgJCRpKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5jb25jYXQoJCRhLnNsaWNlKCQkaSArIDEpKSlcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgX3ZtLnNob3dVc2VyQmFja2VuZCA9ICQkY1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgX2MoXCJsYWJlbFwiLCB7IGF0dHJzOiB7IGZvcjogXCJzaG93VXNlckJhY2tlbmRcIiB9IH0sIFtcbiAgICAgICAgICAgICAgICBfdm0uX3YoX3ZtLl9zKF92bS50KFwic2V0dGluZ3NcIiwgXCJTaG93IHVzZXIgYmFja2VuZFwiKSkpXG4gICAgICAgICAgICAgIF0pXG4gICAgICAgICAgICBdKSxcbiAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICBfYyhcImRpdlwiLCBbXG4gICAgICAgICAgICAgIF9jKFwiaW5wdXRcIiwge1xuICAgICAgICAgICAgICAgIGRpcmVjdGl2ZXM6IFtcbiAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJtb2RlbFwiLFxuICAgICAgICAgICAgICAgICAgICByYXdOYW1lOiBcInYtbW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5zaG93U3RvcmFnZVBhdGgsXG4gICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwic2hvd1N0b3JhZ2VQYXRoXCJcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcImNoZWNrYm94XCIsXG4gICAgICAgICAgICAgICAgYXR0cnM6IHsgdHlwZTogXCJjaGVja2JveFwiLCBpZDogXCJzaG93U3RvcmFnZVBhdGhcIiB9LFxuICAgICAgICAgICAgICAgIGRvbVByb3BzOiB7XG4gICAgICAgICAgICAgICAgICBjaGVja2VkOiBfdm0uc2hvd1N0b3JhZ2VQYXRoLFxuICAgICAgICAgICAgICAgICAgY2hlY2tlZDogQXJyYXkuaXNBcnJheShfdm0uc2hvd1N0b3JhZ2VQYXRoKVxuICAgICAgICAgICAgICAgICAgICA/IF92bS5faShfdm0uc2hvd1N0b3JhZ2VQYXRoLCBudWxsKSA+IC0xXG4gICAgICAgICAgICAgICAgICAgIDogX3ZtLnNob3dTdG9yYWdlUGF0aFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgIGNoYW5nZTogZnVuY3Rpb24oJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgIHZhciAkJGEgPSBfdm0uc2hvd1N0b3JhZ2VQYXRoLFxuICAgICAgICAgICAgICAgICAgICAgICQkZWwgPSAkZXZlbnQudGFyZ2V0LFxuICAgICAgICAgICAgICAgICAgICAgICQkYyA9ICQkZWwuY2hlY2tlZCA/IHRydWUgOiBmYWxzZVxuICAgICAgICAgICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheSgkJGEpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgdmFyICQkdiA9IG51bGwsXG4gICAgICAgICAgICAgICAgICAgICAgICAkJGkgPSBfdm0uX2koJCRhLCAkJHYpXG4gICAgICAgICAgICAgICAgICAgICAgaWYgKCQkZWwuY2hlY2tlZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgJCRpIDwgMCAmJiAoX3ZtLnNob3dTdG9yYWdlUGF0aCA9ICQkYS5jb25jYXQoWyQkdl0pKVxuICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAkJGkgPiAtMSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAoX3ZtLnNob3dTdG9yYWdlUGF0aCA9ICQkYVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5zbGljZSgwLCAkJGkpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmNvbmNhdCgkJGEuc2xpY2UoJCRpICsgMSkpKVxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICBfdm0uc2hvd1N0b3JhZ2VQYXRoID0gJCRjXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIHsgYXR0cnM6IHsgZm9yOiBcInNob3dTdG9yYWdlUGF0aFwiIH0gfSwgW1xuICAgICAgICAgICAgICAgIF92bS5fdihfdm0uX3MoX3ZtLnQoXCJzZXR0aW5nc1wiLCBcIlNob3cgc3RvcmFnZSBwYXRoXCIpKSlcbiAgICAgICAgICAgICAgXSlcbiAgICAgICAgICAgIF0pXG4gICAgICAgICAgXSlcbiAgICAgICAgXSxcbiAgICAgICAgMlxuICAgICAgKSxcbiAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICBfYyhcInVzZXItbGlzdFwiLCB7XG4gICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgdXNlcnM6IF92bS51c2VycyxcbiAgICAgICAgICBzaG93Q29uZmlnOiBfdm0uc2hvd0NvbmZpZyxcbiAgICAgICAgICBzZWxlY3RlZEdyb3VwOiBfdm0uc2VsZWN0ZWRHcm91cFxuICAgICAgICB9XG4gICAgICB9KVxuICAgIF0sXG4gICAgMVxuICApXG59XG52YXIgc3RhdGljUmVuZGVyRm5zID0gW11cbnJlbmRlci5fd2l0aFN0cmlwcGVkID0gdHJ1ZVxudmFyIGVzRXhwb3J0cyA9IHsgcmVuZGVyOiByZW5kZXIsIHN0YXRpY1JlbmRlckZuczogc3RhdGljUmVuZGVyRm5zIH1cbmV4cG9ydCBkZWZhdWx0IGVzRXhwb3J0c1xuaWYgKG1vZHVsZS5ob3QpIHtcbiAgbW9kdWxlLmhvdC5hY2NlcHQoKVxuICBpZiAobW9kdWxlLmhvdC5kYXRhKSB7XG4gICAgcmVxdWlyZShcInZ1ZS1ob3QtcmVsb2FkLWFwaVwiKSAgICAgIC5yZXJlbmRlcihcImRhdGEtdi02OGJlMTAzZVwiLCBlc0V4cG9ydHMpXG4gIH1cbn1cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi90ZW1wbGF0ZS1jb21waWxlcj97XCJpZFwiOlwiZGF0YS12LTY4YmUxMDNlXCIsXCJoYXNTY29wZWRcIjpmYWxzZSxcImJ1YmxlXCI6e1widHJhbnNmb3Jtc1wiOnt9fX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vc3JjL3ZpZXdzL1VzZXJzLnZ1ZVxuLy8gbW9kdWxlIGlkID0gNjRcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///64\n"); /***/ }), /* 65 */ -/***/ (function(module, exports, __webpack_require__) { +/***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("\n\n/**\n * Creates a new URL by combining the specified URLs\n *\n * @param {string} baseURL The base URL\n * @param {string} relativeURL The relative URL\n * @returns {string} The combined URL\n */\nmodule.exports = function combineURLs(baseURL, relativeURL) {\n return relativeURL\n ? baseURL.replace(/\\/+$/, '') + '/' + relativeURL.replace(/^\\/+/, '')\n : baseURL;\n};\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvY29tYmluZVVSTHMuanM/YTkxNyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLE9BQU87QUFDbEIsV0FBVyxPQUFPO0FBQ2xCLGFBQWEsT0FBTztBQUNwQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJmaWxlIjoiNjUuanMiLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIHN0cmljdCc7XG5cbi8qKlxuICogQ3JlYXRlcyBhIG5ldyBVUkwgYnkgY29tYmluaW5nIHRoZSBzcGVjaWZpZWQgVVJMc1xuICpcbiAqIEBwYXJhbSB7c3RyaW5nfSBiYXNlVVJMIFRoZSBiYXNlIFVSTFxuICogQHBhcmFtIHtzdHJpbmd9IHJlbGF0aXZlVVJMIFRoZSByZWxhdGl2ZSBVUkxcbiAqIEByZXR1cm5zIHtzdHJpbmd9IFRoZSBjb21iaW5lZCBVUkxcbiAqL1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiBjb21iaW5lVVJMcyhiYXNlVVJMLCByZWxhdGl2ZVVSTCkge1xuICByZXR1cm4gcmVsYXRpdmVVUkxcbiAgICA/IGJhc2VVUkwucmVwbGFjZSgvXFwvKyQvLCAnJykgKyAnLycgKyByZWxhdGl2ZVVSTC5yZXBsYWNlKC9eXFwvKy8sICcnKVxuICAgIDogYmFzZVVSTDtcbn07XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvaGVscGVycy9jb21iaW5lVVJMcy5qc1xuLy8gbW9kdWxlIGlkID0gNjVcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///65\n"); +eval("/* WEBPACK VAR INJECTION */(function(process) {/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_vue__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vuex__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__users__ = __webpack_require__(67);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__settings__ = __webpack_require__(68);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__oc__ = __webpack_require__(69);\n\n\n\n\n\n\n__WEBPACK_IMPORTED_MODULE_0_vue__[\"a\" /* default */].use(__WEBPACK_IMPORTED_MODULE_1_vuex__[\"a\" /* default */]);\n\nvar debug = process.env.NODE_ENV !== 'production';\n\nvar mutations = {\n\tAPI_FAILURE: function API_FAILURE(state, error) {\n\t\tconsole.log(state, error);\n\t\tOC.Notification.showTemporary(t('settings', 'An error occured during the request. Unable to proceed.'));\n\t}\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (new __WEBPACK_IMPORTED_MODULE_1_vuex__[\"a\" /* default */].Store({\n\tmodules: {\n\t\tusers: __WEBPACK_IMPORTED_MODULE_2__users__[\"a\" /* default */],\n\t\tsettings: __WEBPACK_IMPORTED_MODULE_3__settings__[\"a\" /* default */],\n\t\toc: __WEBPACK_IMPORTED_MODULE_4__oc__[\"a\" /* default */]\n\t},\n\tstrict: debug,\n\n\tmutations: mutations\n}));\n/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(1)))\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvc3RvcmUvaW5kZXguanM/MjFjOSJdLCJuYW1lcyI6WyJWdWUiLCJ1c2UiLCJkZWJ1ZyIsInByb2Nlc3MiLCJlbnYiLCJOT0RFX0VOViIsIm11dGF0aW9ucyIsIkFQSV9GQUlMVVJFIiwic3RhdGUiLCJlcnJvciIsImNvbnNvbGUiLCJsb2ciLCJPQyIsIk5vdGlmaWNhdGlvbiIsInNob3dUZW1wb3JhcnkiLCJ0IiwiVnVleCIsIlN0b3JlIiwibW9kdWxlcyIsInVzZXJzIiwic2V0dGluZ3MiLCJvYyIsInN0cmljdCJdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLG9EQUFBQSxDQUFJQyxHQUFKLENBQVEscURBQVI7O0FBRUEsSUFBTUMsUUFBUUMsUUFBUUMsR0FBUixDQUFZQyxRQUFaLEtBQXlCLFlBQXZDOztBQUVBLElBQU1DLFlBQVk7QUFDakJDLFlBRGlCLHVCQUNMQyxLQURLLEVBQ0VDLEtBREYsRUFDUztBQUN6QkMsVUFBUUMsR0FBUixDQUFZSCxLQUFaLEVBQW1CQyxLQUFuQjtBQUNBRyxLQUFHQyxZQUFILENBQWdCQyxhQUFoQixDQUE4QkMsRUFBRSxVQUFGLEVBQWEseURBQWIsQ0FBOUI7QUFDQTtBQUpnQixDQUFsQjs7QUFPQSx5REFBZSxJQUFJLHFEQUFBQyxDQUFLQyxLQUFULENBQWU7QUFDN0JDLFVBQVM7QUFDUkMsU0FBQSx1REFEUTtBQUVSQyxZQUFBLDBEQUZRO0FBR1JDLE1BQUEsb0RBQUFBO0FBSFEsRUFEb0I7QUFNN0JDLFNBQVFwQixLQU5xQjs7QUFRN0JJO0FBUjZCLENBQWYsQ0FBZixFIiwiZmlsZSI6IjY1LmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFZ1ZSBmcm9tICd2dWUnO1xuaW1wb3J0IFZ1ZXggZnJvbSAndnVleCc7XG5pbXBvcnQgdXNlcnMgZnJvbSAnLi91c2Vycyc7XG5pbXBvcnQgc2V0dGluZ3MgZnJvbSAnLi9zZXR0aW5ncyc7XG5pbXBvcnQgb2MgZnJvbSAnLi9vYyc7XG5cblZ1ZS51c2UoVnVleClcblxuY29uc3QgZGVidWcgPSBwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nO1xuXG5jb25zdCBtdXRhdGlvbnMgPSB7XG5cdEFQSV9GQUlMVVJFKHN0YXRlLCBlcnJvcikge1xuXHRcdGNvbnNvbGUubG9nKHN0YXRlLCBlcnJvcik7XG5cdFx0T0MuTm90aWZpY2F0aW9uLnNob3dUZW1wb3JhcnkodCgnc2V0dGluZ3MnLCdBbiBlcnJvciBvY2N1cmVkIGR1cmluZyB0aGUgcmVxdWVzdC4gVW5hYmxlIHRvIHByb2NlZWQuJykpXG5cdH1cbn07XG5cbmV4cG9ydCBkZWZhdWx0IG5ldyBWdWV4LlN0b3JlKHtcblx0bW9kdWxlczoge1xuXHRcdHVzZXJzLFxuXHRcdHNldHRpbmdzLFxuXHRcdG9jXG5cdH0sXG5cdHN0cmljdDogZGVidWcsXG5cblx0bXV0YXRpb25zXG59KTtcblxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyAuL3NyYy9zdG9yZS9pbmRleC5qcyJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///65\n"); /***/ }), /* 66 */ -/***/ (function(module, exports, __webpack_require__) { +/***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("\n\nvar Cancel = __webpack_require__(22);\n\n/**\n * A `CancelToken` is an object that can be used to request cancellation of an operation.\n *\n * @class\n * @param {Function} executor The executor function.\n */\nfunction CancelToken(executor) {\n if (typeof executor !== 'function') {\n throw new TypeError('executor must be a function.');\n }\n\n var resolvePromise;\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n\n var token = this;\n executor(function cancel(message) {\n if (token.reason) {\n // Cancellation has already been requested\n return;\n }\n\n token.reason = new Cancel(message);\n resolvePromise(token.reason);\n });\n}\n\n/**\n * Throws a `Cancel` if cancellation has been requested.\n */\nCancelToken.prototype.throwIfRequested = function throwIfRequested() {\n if (this.reason) {\n throw this.reason;\n }\n};\n\n/**\n * Returns an object that contains a new `CancelToken` and a function that, when called,\n * cancels the `CancelToken`.\n */\nCancelToken.source = function source() {\n var cancel;\n var token = new CancelToken(function executor(c) {\n cancel = c;\n });\n return {\n token: token,\n cancel: cancel\n };\n};\n\nmodule.exports = CancelToken;\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NhbmNlbC9DYW5jZWxUb2tlbi5qcz83MTZjIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsV0FBVyxTQUFTO0FBQ3BCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsR0FBRzs7QUFFSDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLEdBQUc7QUFDSDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQSIsImZpbGUiOiI2Ni5qcyIsInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxudmFyIENhbmNlbCA9IHJlcXVpcmUoJy4vQ2FuY2VsJyk7XG5cbi8qKlxuICogQSBgQ2FuY2VsVG9rZW5gIGlzIGFuIG9iamVjdCB0aGF0IGNhbiBiZSB1c2VkIHRvIHJlcXVlc3QgY2FuY2VsbGF0aW9uIG9mIGFuIG9wZXJhdGlvbi5cbiAqXG4gKiBAY2xhc3NcbiAqIEBwYXJhbSB7RnVuY3Rpb259IGV4ZWN1dG9yIFRoZSBleGVjdXRvciBmdW5jdGlvbi5cbiAqL1xuZnVuY3Rpb24gQ2FuY2VsVG9rZW4oZXhlY3V0b3IpIHtcbiAgaWYgKHR5cGVvZiBleGVjdXRvciAhPT0gJ2Z1bmN0aW9uJykge1xuICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ2V4ZWN1dG9yIG11c3QgYmUgYSBmdW5jdGlvbi4nKTtcbiAgfVxuXG4gIHZhciByZXNvbHZlUHJvbWlzZTtcbiAgdGhpcy5wcm9taXNlID0gbmV3IFByb21pc2UoZnVuY3Rpb24gcHJvbWlzZUV4ZWN1dG9yKHJlc29sdmUpIHtcbiAgICByZXNvbHZlUHJvbWlzZSA9IHJlc29sdmU7XG4gIH0pO1xuXG4gIHZhciB0b2tlbiA9IHRoaXM7XG4gIGV4ZWN1dG9yKGZ1bmN0aW9uIGNhbmNlbChtZXNzYWdlKSB7XG4gICAgaWYgKHRva2VuLnJlYXNvbikge1xuICAgICAgLy8gQ2FuY2VsbGF0aW9uIGhhcyBhbHJlYWR5IGJlZW4gcmVxdWVzdGVkXG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdG9rZW4ucmVhc29uID0gbmV3IENhbmNlbChtZXNzYWdlKTtcbiAgICByZXNvbHZlUHJvbWlzZSh0b2tlbi5yZWFzb24pO1xuICB9KTtcbn1cblxuLyoqXG4gKiBUaHJvd3MgYSBgQ2FuY2VsYCBpZiBjYW5jZWxsYXRpb24gaGFzIGJlZW4gcmVxdWVzdGVkLlxuICovXG5DYW5jZWxUb2tlbi5wcm90b3R5cGUudGhyb3dJZlJlcXVlc3RlZCA9IGZ1bmN0aW9uIHRocm93SWZSZXF1ZXN0ZWQoKSB7XG4gIGlmICh0aGlzLnJlYXNvbikge1xuICAgIHRocm93IHRoaXMucmVhc29uO1xuICB9XG59O1xuXG4vKipcbiAqIFJldHVybnMgYW4gb2JqZWN0IHRoYXQgY29udGFpbnMgYSBuZXcgYENhbmNlbFRva2VuYCBhbmQgYSBmdW5jdGlvbiB0aGF0LCB3aGVuIGNhbGxlZCxcbiAqIGNhbmNlbHMgdGhlIGBDYW5jZWxUb2tlbmAuXG4gKi9cbkNhbmNlbFRva2VuLnNvdXJjZSA9IGZ1bmN0aW9uIHNvdXJjZSgpIHtcbiAgdmFyIGNhbmNlbDtcbiAgdmFyIHRva2VuID0gbmV3IENhbmNlbFRva2VuKGZ1bmN0aW9uIGV4ZWN1dG9yKGMpIHtcbiAgICBjYW5jZWwgPSBjO1xuICB9KTtcbiAgcmV0dXJuIHtcbiAgICB0b2tlbjogdG9rZW4sXG4gICAgY2FuY2VsOiBjYW5jZWxcbiAgfTtcbn07XG5cbm1vZHVsZS5leHBvcnRzID0gQ2FuY2VsVG9rZW47XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvY2FuY2VsL0NhbmNlbFRva2VuLmpzXG4vLyBtb2R1bGUgaWQgPSA2NlxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///66\n"); +eval("/* WEBPACK VAR INJECTION */(function(process) {/* unused harmony export Store */\n/* unused harmony export install */\n/* unused harmony export mapState */\n/* unused harmony export mapMutations */\n/* unused harmony export mapGetters */\n/* unused harmony export mapActions */\n/* unused harmony export createNamespacedHelpers */\n/**\n * vuex v3.0.1\n * (c) 2017 Evan You\n * @license MIT\n */\nvar applyMixin = function (Vue) {\n var version = Number(Vue.version.split('.')[0]);\n\n if (version >= 2) {\n Vue.mixin({ beforeCreate: vuexInit });\n } else {\n // override init and inject vuex init procedure\n // for 1.x backwards compatibility.\n var _init = Vue.prototype._init;\n Vue.prototype._init = function (options) {\n if ( options === void 0 ) options = {};\n\n options.init = options.init\n ? [vuexInit].concat(options.init)\n : vuexInit;\n _init.call(this, options);\n };\n }\n\n /**\n * Vuex init hook, injected into each instances init hooks list.\n */\n\n function vuexInit () {\n var options = this.$options;\n // store injection\n if (options.store) {\n this.$store = typeof options.store === 'function'\n ? options.store()\n : options.store;\n } else if (options.parent && options.parent.$store) {\n this.$store = options.parent.$store;\n }\n }\n};\n\nvar devtoolHook =\n typeof window !== 'undefined' &&\n window.__VUE_DEVTOOLS_GLOBAL_HOOK__;\n\nfunction devtoolPlugin (store) {\n if (!devtoolHook) { return }\n\n store._devtoolHook = devtoolHook;\n\n devtoolHook.emit('vuex:init', store);\n\n devtoolHook.on('vuex:travel-to-state', function (targetState) {\n store.replaceState(targetState);\n });\n\n store.subscribe(function (mutation, state) {\n devtoolHook.emit('vuex:mutation', mutation, state);\n });\n}\n\n/**\n * Get the first item that pass the test\n * by second argument function\n *\n * @param {Array} list\n * @param {Function} f\n * @return {*}\n */\n/**\n * Deep copy the given object considering circular structure.\n * This function caches all nested objects and its copies.\n * If it detects circular structure, use cached copy to avoid infinite loop.\n *\n * @param {*} obj\n * @param {Array} cache\n * @return {*}\n */\n\n\n/**\n * forEach for object\n */\nfunction forEachValue (obj, fn) {\n Object.keys(obj).forEach(function (key) { return fn(obj[key], key); });\n}\n\nfunction isObject (obj) {\n return obj !== null && typeof obj === 'object'\n}\n\nfunction isPromise (val) {\n return val && typeof val.then === 'function'\n}\n\nfunction assert (condition, msg) {\n if (!condition) { throw new Error((\"[vuex] \" + msg)) }\n}\n\nvar Module = function Module (rawModule, runtime) {\n this.runtime = runtime;\n this._children = Object.create(null);\n this._rawModule = rawModule;\n var rawState = rawModule.state;\n this.state = (typeof rawState === 'function' ? rawState() : rawState) || {};\n};\n\nvar prototypeAccessors$1 = { namespaced: { configurable: true } };\n\nprototypeAccessors$1.namespaced.get = function () {\n return !!this._rawModule.namespaced\n};\n\nModule.prototype.addChild = function addChild (key, module) {\n this._children[key] = module;\n};\n\nModule.prototype.removeChild = function removeChild (key) {\n delete this._children[key];\n};\n\nModule.prototype.getChild = function getChild (key) {\n return this._children[key]\n};\n\nModule.prototype.update = function update (rawModule) {\n this._rawModule.namespaced = rawModule.namespaced;\n if (rawModule.actions) {\n this._rawModule.actions = rawModule.actions;\n }\n if (rawModule.mutations) {\n this._rawModule.mutations = rawModule.mutations;\n }\n if (rawModule.getters) {\n this._rawModule.getters = rawModule.getters;\n }\n};\n\nModule.prototype.forEachChild = function forEachChild (fn) {\n forEachValue(this._children, fn);\n};\n\nModule.prototype.forEachGetter = function forEachGetter (fn) {\n if (this._rawModule.getters) {\n forEachValue(this._rawModule.getters, fn);\n }\n};\n\nModule.prototype.forEachAction = function forEachAction (fn) {\n if (this._rawModule.actions) {\n forEachValue(this._rawModule.actions, fn);\n }\n};\n\nModule.prototype.forEachMutation = function forEachMutation (fn) {\n if (this._rawModule.mutations) {\n forEachValue(this._rawModule.mutations, fn);\n }\n};\n\nObject.defineProperties( Module.prototype, prototypeAccessors$1 );\n\nvar ModuleCollection = function ModuleCollection (rawRootModule) {\n // register root module (Vuex.Store options)\n this.register([], rawRootModule, false);\n};\n\nModuleCollection.prototype.get = function get (path) {\n return path.reduce(function (module, key) {\n return module.getChild(key)\n }, this.root)\n};\n\nModuleCollection.prototype.getNamespace = function getNamespace (path) {\n var module = this.root;\n return path.reduce(function (namespace, key) {\n module = module.getChild(key);\n return namespace + (module.namespaced ? key + '/' : '')\n }, '')\n};\n\nModuleCollection.prototype.update = function update$1 (rawRootModule) {\n update([], this.root, rawRootModule);\n};\n\nModuleCollection.prototype.register = function register (path, rawModule, runtime) {\n var this$1 = this;\n if ( runtime === void 0 ) runtime = true;\n\n if (process.env.NODE_ENV !== 'production') {\n assertRawModule(path, rawModule);\n }\n\n var newModule = new Module(rawModule, runtime);\n if (path.length === 0) {\n this.root = newModule;\n } else {\n var parent = this.get(path.slice(0, -1));\n parent.addChild(path[path.length - 1], newModule);\n }\n\n // register nested modules\n if (rawModule.modules) {\n forEachValue(rawModule.modules, function (rawChildModule, key) {\n this$1.register(path.concat(key), rawChildModule, runtime);\n });\n }\n};\n\nModuleCollection.prototype.unregister = function unregister (path) {\n var parent = this.get(path.slice(0, -1));\n var key = path[path.length - 1];\n if (!parent.getChild(key).runtime) { return }\n\n parent.removeChild(key);\n};\n\nfunction update (path, targetModule, newModule) {\n if (process.env.NODE_ENV !== 'production') {\n assertRawModule(path, newModule);\n }\n\n // update target module\n targetModule.update(newModule);\n\n // update nested modules\n if (newModule.modules) {\n for (var key in newModule.modules) {\n if (!targetModule.getChild(key)) {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(\n \"[vuex] trying to add a new module '\" + key + \"' on hot reloading, \" +\n 'manual reload is needed'\n );\n }\n return\n }\n update(\n path.concat(key),\n targetModule.getChild(key),\n newModule.modules[key]\n );\n }\n }\n}\n\nvar functionAssert = {\n assert: function (value) { return typeof value === 'function'; },\n expected: 'function'\n};\n\nvar objectAssert = {\n assert: function (value) { return typeof value === 'function' ||\n (typeof value === 'object' && typeof value.handler === 'function'); },\n expected: 'function or object with \"handler\" function'\n};\n\nvar assertTypes = {\n getters: functionAssert,\n mutations: functionAssert,\n actions: objectAssert\n};\n\nfunction assertRawModule (path, rawModule) {\n Object.keys(assertTypes).forEach(function (key) {\n if (!rawModule[key]) { return }\n\n var assertOptions = assertTypes[key];\n\n forEachValue(rawModule[key], function (value, type) {\n assert(\n assertOptions.assert(value),\n makeAssertionMessage(path, key, type, value, assertOptions.expected)\n );\n });\n });\n}\n\nfunction makeAssertionMessage (path, key, type, value, expected) {\n var buf = key + \" should be \" + expected + \" but \\\"\" + key + \".\" + type + \"\\\"\";\n if (path.length > 0) {\n buf += \" in module \\\"\" + (path.join('.')) + \"\\\"\";\n }\n buf += \" is \" + (JSON.stringify(value)) + \".\";\n return buf\n}\n\nvar Vue; // bind on install\n\nvar Store = function Store (options) {\n var this$1 = this;\n if ( options === void 0 ) options = {};\n\n // Auto install if it is not done yet and `window` has `Vue`.\n // To allow users to avoid auto-installation in some cases,\n // this code should be placed here. See #731\n if (!Vue && typeof window !== 'undefined' && window.Vue) {\n install(window.Vue);\n }\n\n if (process.env.NODE_ENV !== 'production') {\n assert(Vue, \"must call Vue.use(Vuex) before creating a store instance.\");\n assert(typeof Promise !== 'undefined', \"vuex requires a Promise polyfill in this browser.\");\n assert(this instanceof Store, \"Store must be called with the new operator.\");\n }\n\n var plugins = options.plugins; if ( plugins === void 0 ) plugins = [];\n var strict = options.strict; if ( strict === void 0 ) strict = false;\n\n var state = options.state; if ( state === void 0 ) state = {};\n if (typeof state === 'function') {\n state = state() || {};\n }\n\n // store internal state\n this._committing = false;\n this._actions = Object.create(null);\n this._actionSubscribers = [];\n this._mutations = Object.create(null);\n this._wrappedGetters = Object.create(null);\n this._modules = new ModuleCollection(options);\n this._modulesNamespaceMap = Object.create(null);\n this._subscribers = [];\n this._watcherVM = new Vue();\n\n // bind commit and dispatch to self\n var store = this;\n var ref = this;\n var dispatch = ref.dispatch;\n var commit = ref.commit;\n this.dispatch = function boundDispatch (type, payload) {\n return dispatch.call(store, type, payload)\n };\n this.commit = function boundCommit (type, payload, options) {\n return commit.call(store, type, payload, options)\n };\n\n // strict mode\n this.strict = strict;\n\n // init root module.\n // this also recursively registers all sub-modules\n // and collects all module getters inside this._wrappedGetters\n installModule(this, state, [], this._modules.root);\n\n // initialize the store vm, which is responsible for the reactivity\n // (also registers _wrappedGetters as computed properties)\n resetStoreVM(this, state);\n\n // apply plugins\n plugins.forEach(function (plugin) { return plugin(this$1); });\n\n if (Vue.config.devtools) {\n devtoolPlugin(this);\n }\n};\n\nvar prototypeAccessors = { state: { configurable: true } };\n\nprototypeAccessors.state.get = function () {\n return this._vm._data.$$state\n};\n\nprototypeAccessors.state.set = function (v) {\n if (process.env.NODE_ENV !== 'production') {\n assert(false, \"Use store.replaceState() to explicit replace store state.\");\n }\n};\n\nStore.prototype.commit = function commit (_type, _payload, _options) {\n var this$1 = this;\n\n // check object-style commit\n var ref = unifyObjectStyle(_type, _payload, _options);\n var type = ref.type;\n var payload = ref.payload;\n var options = ref.options;\n\n var mutation = { type: type, payload: payload };\n var entry = this._mutations[type];\n if (!entry) {\n if (process.env.NODE_ENV !== 'production') {\n console.error((\"[vuex] unknown mutation type: \" + type));\n }\n return\n }\n this._withCommit(function () {\n entry.forEach(function commitIterator (handler) {\n handler(payload);\n });\n });\n this._subscribers.forEach(function (sub) { return sub(mutation, this$1.state); });\n\n if (\n process.env.NODE_ENV !== 'production' &&\n options && options.silent\n ) {\n console.warn(\n \"[vuex] mutation type: \" + type + \". Silent option has been removed. \" +\n 'Use the filter functionality in the vue-devtools'\n );\n }\n};\n\nStore.prototype.dispatch = function dispatch (_type, _payload) {\n var this$1 = this;\n\n // check object-style dispatch\n var ref = unifyObjectStyle(_type, _payload);\n var type = ref.type;\n var payload = ref.payload;\n\n var action = { type: type, payload: payload };\n var entry = this._actions[type];\n if (!entry) {\n if (process.env.NODE_ENV !== 'production') {\n console.error((\"[vuex] unknown action type: \" + type));\n }\n return\n }\n\n this._actionSubscribers.forEach(function (sub) { return sub(action, this$1.state); });\n\n return entry.length > 1\n ? Promise.all(entry.map(function (handler) { return handler(payload); }))\n : entry[0](payload)\n};\n\nStore.prototype.subscribe = function subscribe (fn) {\n return genericSubscribe(fn, this._subscribers)\n};\n\nStore.prototype.subscribeAction = function subscribeAction (fn) {\n return genericSubscribe(fn, this._actionSubscribers)\n};\n\nStore.prototype.watch = function watch (getter, cb, options) {\n var this$1 = this;\n\n if (process.env.NODE_ENV !== 'production') {\n assert(typeof getter === 'function', \"store.watch only accepts a function.\");\n }\n return this._watcherVM.$watch(function () { return getter(this$1.state, this$1.getters); }, cb, options)\n};\n\nStore.prototype.replaceState = function replaceState (state) {\n var this$1 = this;\n\n this._withCommit(function () {\n this$1._vm._data.$$state = state;\n });\n};\n\nStore.prototype.registerModule = function registerModule (path, rawModule, options) {\n if ( options === void 0 ) options = {};\n\n if (typeof path === 'string') { path = [path]; }\n\n if (process.env.NODE_ENV !== 'production') {\n assert(Array.isArray(path), \"module path must be a string or an Array.\");\n assert(path.length > 0, 'cannot register the root module by using registerModule.');\n }\n\n this._modules.register(path, rawModule);\n installModule(this, this.state, path, this._modules.get(path), options.preserveState);\n // reset store to update getters...\n resetStoreVM(this, this.state);\n};\n\nStore.prototype.unregisterModule = function unregisterModule (path) {\n var this$1 = this;\n\n if (typeof path === 'string') { path = [path]; }\n\n if (process.env.NODE_ENV !== 'production') {\n assert(Array.isArray(path), \"module path must be a string or an Array.\");\n }\n\n this._modules.unregister(path);\n this._withCommit(function () {\n var parentState = getNestedState(this$1.state, path.slice(0, -1));\n Vue.delete(parentState, path[path.length - 1]);\n });\n resetStore(this);\n};\n\nStore.prototype.hotUpdate = function hotUpdate (newOptions) {\n this._modules.update(newOptions);\n resetStore(this, true);\n};\n\nStore.prototype._withCommit = function _withCommit (fn) {\n var committing = this._committing;\n this._committing = true;\n fn();\n this._committing = committing;\n};\n\nObject.defineProperties( Store.prototype, prototypeAccessors );\n\nfunction genericSubscribe (fn, subs) {\n if (subs.indexOf(fn) < 0) {\n subs.push(fn);\n }\n return function () {\n var i = subs.indexOf(fn);\n if (i > -1) {\n subs.splice(i, 1);\n }\n }\n}\n\nfunction resetStore (store, hot) {\n store._actions = Object.create(null);\n store._mutations = Object.create(null);\n store._wrappedGetters = Object.create(null);\n store._modulesNamespaceMap = Object.create(null);\n var state = store.state;\n // init all modules\n installModule(store, state, [], store._modules.root, true);\n // reset vm\n resetStoreVM(store, state, hot);\n}\n\nfunction resetStoreVM (store, state, hot) {\n var oldVm = store._vm;\n\n // bind store public getters\n store.getters = {};\n var wrappedGetters = store._wrappedGetters;\n var computed = {};\n forEachValue(wrappedGetters, function (fn, key) {\n // use computed to leverage its lazy-caching mechanism\n computed[key] = function () { return fn(store); };\n Object.defineProperty(store.getters, key, {\n get: function () { return store._vm[key]; },\n enumerable: true // for local getters\n });\n });\n\n // use a Vue instance to store the state tree\n // suppress warnings just in case the user has added\n // some funky global mixins\n var silent = Vue.config.silent;\n Vue.config.silent = true;\n store._vm = new Vue({\n data: {\n $$state: state\n },\n computed: computed\n });\n Vue.config.silent = silent;\n\n // enable strict mode for new vm\n if (store.strict) {\n enableStrictMode(store);\n }\n\n if (oldVm) {\n if (hot) {\n // dispatch changes in all subscribed watchers\n // to force getter re-evaluation for hot reloading.\n store._withCommit(function () {\n oldVm._data.$$state = null;\n });\n }\n Vue.nextTick(function () { return oldVm.$destroy(); });\n }\n}\n\nfunction installModule (store, rootState, path, module, hot) {\n var isRoot = !path.length;\n var namespace = store._modules.getNamespace(path);\n\n // register in namespace map\n if (module.namespaced) {\n store._modulesNamespaceMap[namespace] = module;\n }\n\n // set state\n if (!isRoot && !hot) {\n var parentState = getNestedState(rootState, path.slice(0, -1));\n var moduleName = path[path.length - 1];\n store._withCommit(function () {\n Vue.set(parentState, moduleName, module.state);\n });\n }\n\n var local = module.context = makeLocalContext(store, namespace, path);\n\n module.forEachMutation(function (mutation, key) {\n var namespacedType = namespace + key;\n registerMutation(store, namespacedType, mutation, local);\n });\n\n module.forEachAction(function (action, key) {\n var type = action.root ? key : namespace + key;\n var handler = action.handler || action;\n registerAction(store, type, handler, local);\n });\n\n module.forEachGetter(function (getter, key) {\n var namespacedType = namespace + key;\n registerGetter(store, namespacedType, getter, local);\n });\n\n module.forEachChild(function (child, key) {\n installModule(store, rootState, path.concat(key), child, hot);\n });\n}\n\n/**\n * make localized dispatch, commit, getters and state\n * if there is no namespace, just use root ones\n */\nfunction makeLocalContext (store, namespace, path) {\n var noNamespace = namespace === '';\n\n var local = {\n dispatch: noNamespace ? store.dispatch : function (_type, _payload, _options) {\n var args = unifyObjectStyle(_type, _payload, _options);\n var payload = args.payload;\n var options = args.options;\n var type = args.type;\n\n if (!options || !options.root) {\n type = namespace + type;\n if (process.env.NODE_ENV !== 'production' && !store._actions[type]) {\n console.error((\"[vuex] unknown local action type: \" + (args.type) + \", global type: \" + type));\n return\n }\n }\n\n return store.dispatch(type, payload)\n },\n\n commit: noNamespace ? store.commit : function (_type, _payload, _options) {\n var args = unifyObjectStyle(_type, _payload, _options);\n var payload = args.payload;\n var options = args.options;\n var type = args.type;\n\n if (!options || !options.root) {\n type = namespace + type;\n if (process.env.NODE_ENV !== 'production' && !store._mutations[type]) {\n console.error((\"[vuex] unknown local mutation type: \" + (args.type) + \", global type: \" + type));\n return\n }\n }\n\n store.commit(type, payload, options);\n }\n };\n\n // getters and state object must be gotten lazily\n // because they will be changed by vm update\n Object.defineProperties(local, {\n getters: {\n get: noNamespace\n ? function () { return store.getters; }\n : function () { return makeLocalGetters(store, namespace); }\n },\n state: {\n get: function () { return getNestedState(store.state, path); }\n }\n });\n\n return local\n}\n\nfunction makeLocalGetters (store, namespace) {\n var gettersProxy = {};\n\n var splitPos = namespace.length;\n Object.keys(store.getters).forEach(function (type) {\n // skip if the target getter is not match this namespace\n if (type.slice(0, splitPos) !== namespace) { return }\n\n // extract local getter type\n var localType = type.slice(splitPos);\n\n // Add a port to the getters proxy.\n // Define as getter property because\n // we do not want to evaluate the getters in this time.\n Object.defineProperty(gettersProxy, localType, {\n get: function () { return store.getters[type]; },\n enumerable: true\n });\n });\n\n return gettersProxy\n}\n\nfunction registerMutation (store, type, handler, local) {\n var entry = store._mutations[type] || (store._mutations[type] = []);\n entry.push(function wrappedMutationHandler (payload) {\n handler.call(store, local.state, payload);\n });\n}\n\nfunction registerAction (store, type, handler, local) {\n var entry = store._actions[type] || (store._actions[type] = []);\n entry.push(function wrappedActionHandler (payload, cb) {\n var res = handler.call(store, {\n dispatch: local.dispatch,\n commit: local.commit,\n getters: local.getters,\n state: local.state,\n rootGetters: store.getters,\n rootState: store.state\n }, payload, cb);\n if (!isPromise(res)) {\n res = Promise.resolve(res);\n }\n if (store._devtoolHook) {\n return res.catch(function (err) {\n store._devtoolHook.emit('vuex:error', err);\n throw err\n })\n } else {\n return res\n }\n });\n}\n\nfunction registerGetter (store, type, rawGetter, local) {\n if (store._wrappedGetters[type]) {\n if (process.env.NODE_ENV !== 'production') {\n console.error((\"[vuex] duplicate getter key: \" + type));\n }\n return\n }\n store._wrappedGetters[type] = function wrappedGetter (store) {\n return rawGetter(\n local.state, // local state\n local.getters, // local getters\n store.state, // root state\n store.getters // root getters\n )\n };\n}\n\nfunction enableStrictMode (store) {\n store._vm.$watch(function () { return this._data.$$state }, function () {\n if (process.env.NODE_ENV !== 'production') {\n assert(store._committing, \"Do not mutate vuex store state outside mutation handlers.\");\n }\n }, { deep: true, sync: true });\n}\n\nfunction getNestedState (state, path) {\n return path.length\n ? path.reduce(function (state, key) { return state[key]; }, state)\n : state\n}\n\nfunction unifyObjectStyle (type, payload, options) {\n if (isObject(type) && type.type) {\n options = payload;\n payload = type;\n type = type.type;\n }\n\n if (process.env.NODE_ENV !== 'production') {\n assert(typeof type === 'string', (\"Expects string as the type, but found \" + (typeof type) + \".\"));\n }\n\n return { type: type, payload: payload, options: options }\n}\n\nfunction install (_Vue) {\n if (Vue && _Vue === Vue) {\n if (process.env.NODE_ENV !== 'production') {\n console.error(\n '[vuex] already installed. Vue.use(Vuex) should be called only once.'\n );\n }\n return\n }\n Vue = _Vue;\n applyMixin(Vue);\n}\n\nvar mapState = normalizeNamespace(function (namespace, states) {\n var res = {};\n normalizeMap(states).forEach(function (ref) {\n var key = ref.key;\n var val = ref.val;\n\n res[key] = function mappedState () {\n var state = this.$store.state;\n var getters = this.$store.getters;\n if (namespace) {\n var module = getModuleByNamespace(this.$store, 'mapState', namespace);\n if (!module) {\n return\n }\n state = module.context.state;\n getters = module.context.getters;\n }\n return typeof val === 'function'\n ? val.call(this, state, getters)\n : state[val]\n };\n // mark vuex getter for devtools\n res[key].vuex = true;\n });\n return res\n});\n\nvar mapMutations = normalizeNamespace(function (namespace, mutations) {\n var res = {};\n normalizeMap(mutations).forEach(function (ref) {\n var key = ref.key;\n var val = ref.val;\n\n res[key] = function mappedMutation () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var commit = this.$store.commit;\n if (namespace) {\n var module = getModuleByNamespace(this.$store, 'mapMutations', namespace);\n if (!module) {\n return\n }\n commit = module.context.commit;\n }\n return typeof val === 'function'\n ? val.apply(this, [commit].concat(args))\n : commit.apply(this.$store, [val].concat(args))\n };\n });\n return res\n});\n\nvar mapGetters = normalizeNamespace(function (namespace, getters) {\n var res = {};\n normalizeMap(getters).forEach(function (ref) {\n var key = ref.key;\n var val = ref.val;\n\n val = namespace + val;\n res[key] = function mappedGetter () {\n if (namespace && !getModuleByNamespace(this.$store, 'mapGetters', namespace)) {\n return\n }\n if (process.env.NODE_ENV !== 'production' && !(val in this.$store.getters)) {\n console.error((\"[vuex] unknown getter: \" + val));\n return\n }\n return this.$store.getters[val]\n };\n // mark vuex getter for devtools\n res[key].vuex = true;\n });\n return res\n});\n\nvar mapActions = normalizeNamespace(function (namespace, actions) {\n var res = {};\n normalizeMap(actions).forEach(function (ref) {\n var key = ref.key;\n var val = ref.val;\n\n res[key] = function mappedAction () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var dispatch = this.$store.dispatch;\n if (namespace) {\n var module = getModuleByNamespace(this.$store, 'mapActions', namespace);\n if (!module) {\n return\n }\n dispatch = module.context.dispatch;\n }\n return typeof val === 'function'\n ? val.apply(this, [dispatch].concat(args))\n : dispatch.apply(this.$store, [val].concat(args))\n };\n });\n return res\n});\n\nvar createNamespacedHelpers = function (namespace) { return ({\n mapState: mapState.bind(null, namespace),\n mapGetters: mapGetters.bind(null, namespace),\n mapMutations: mapMutations.bind(null, namespace),\n mapActions: mapActions.bind(null, namespace)\n}); };\n\nfunction normalizeMap (map) {\n return Array.isArray(map)\n ? map.map(function (key) { return ({ key: key, val: key }); })\n : Object.keys(map).map(function (key) { return ({ key: key, val: map[key] }); })\n}\n\nfunction normalizeNamespace (fn) {\n return function (namespace, map) {\n if (typeof namespace !== 'string') {\n map = namespace;\n namespace = '';\n } else if (namespace.charAt(namespace.length - 1) !== '/') {\n namespace += '/';\n }\n return fn(namespace, map)\n }\n}\n\nfunction getModuleByNamespace (store, helper, namespace) {\n var module = store._modulesNamespaceMap[namespace];\n if (process.env.NODE_ENV !== 'production' && !module) {\n console.error((\"[vuex] module namespace not found in \" + helper + \"(): \" + namespace));\n }\n return module\n}\n\nvar index_esm = {\n Store: Store,\n install: install,\n version: '3.0.1',\n mapState: mapState,\n mapMutations: mapMutations,\n mapGetters: mapGetters,\n mapActions: mapActions,\n createNamespacedHelpers: createNamespacedHelpers\n};\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (index_esm);\n\n/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(1)))\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdnVleC9kaXN0L3Z1ZXguZXNtLmpzPzM1OGMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLGVBQWUseUJBQXlCO0FBQ3hDLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0EscUJBQXFCOztBQUVyQjs7QUFFQTs7QUFFQTtBQUNBO0FBQ0EsR0FBRzs7QUFFSDtBQUNBO0FBQ0EsR0FBRztBQUNIOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsV0FBVyxNQUFNO0FBQ2pCLFdBQVcsU0FBUztBQUNwQixZQUFZO0FBQ1o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsV0FBVyxFQUFFO0FBQ2IsV0FBVyxjQUFjO0FBQ3pCLFlBQVk7QUFDWjs7O0FBR0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwyQ0FBMkMsMEJBQTBCLEVBQUU7QUFDdkU7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLG1CQUFtQjtBQUNuQjs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQSw0QkFBNEIsY0FBYyxxQkFBcUI7O0FBRS9EO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxzQ0FBc0M7O0FBRXRDO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsNEJBQTRCLG9DQUFvQyxFQUFFO0FBQ2xFO0FBQ0E7O0FBRUE7QUFDQSw0QkFBNEI7QUFDNUIsdUVBQXVFLEVBQUU7QUFDekU7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSwwQkFBMEI7O0FBRTFCOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0wsR0FBRztBQUNIOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsUUFBUTs7QUFFUjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsZ0NBQWdDO0FBQ2hDLDhCQUE4Qjs7QUFFOUIsNEJBQTRCO0FBQzVCO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0EscUNBQXFDLHVCQUF1QixFQUFFOztBQUU5RDtBQUNBO0FBQ0E7QUFDQTs7QUFFQSwwQkFBMEIsU0FBUyxxQkFBcUI7O0FBRXhEO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQSxrQkFBa0I7QUFDbEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0wsR0FBRztBQUNILDRDQUE0QyxvQ0FBb0MsRUFBRTs7QUFFbEY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQSxnQkFBZ0I7QUFDaEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsa0RBQWtELGtDQUFrQyxFQUFFOztBQUV0RjtBQUNBLGdEQUFnRCx5QkFBeUIsRUFBRTtBQUMzRTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSw2Q0FBNkMsNkNBQTZDLEVBQUU7QUFDNUY7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsR0FBRztBQUNIOztBQUVBO0FBQ0E7O0FBRUEsaUNBQWlDLGVBQWU7O0FBRWhEO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQSxpQ0FBaUMsZUFBZTs7QUFFaEQ7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlDQUFpQyxrQkFBa0I7QUFDbkQ7QUFDQSx3QkFBd0IsdUJBQXVCLEVBQUU7QUFDakQ7QUFDQSxLQUFLO0FBQ0wsR0FBRzs7QUFFSDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EsR0FBRztBQUNIOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBLDhCQUE4Qix5QkFBeUIsRUFBRTtBQUN6RDtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsR0FBRzs7QUFFSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7O0FBRUg7QUFDQTtBQUNBO0FBQ0EsR0FBRzs7QUFFSDtBQUNBO0FBQ0EsR0FBRztBQUNIOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxLQUFLOztBQUVMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx1QkFBdUIsc0JBQXNCO0FBQzdDLHVCQUF1QiwyQ0FBMkM7QUFDbEUsS0FBSztBQUNMO0FBQ0Esd0JBQXdCLDBDQUEwQztBQUNsRTtBQUNBLEdBQUc7O0FBRUg7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLGdEQUFnRDs7QUFFaEQ7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3Qiw0QkFBNEIsRUFBRTtBQUN0RDtBQUNBLEtBQUs7QUFDTCxHQUFHOztBQUVIO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1AsS0FBSztBQUNMO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxnQ0FBZ0MsNEJBQTRCO0FBQzVEO0FBQ0E7QUFDQTtBQUNBLEdBQUcsR0FBRyx5QkFBeUI7QUFDL0I7O0FBRUE7QUFDQTtBQUNBLHlDQUF5QyxtQkFBbUIsRUFBRTtBQUM5RDtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUEsVUFBVTtBQUNWOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQSxDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0EsQ0FBQzs7QUFFRCxvREFBb0Q7QUFDcEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxDQUFDLEVBQUU7O0FBRUg7QUFDQTtBQUNBLDhCQUE4QixVQUFVLHFCQUFxQixFQUFFLEVBQUU7QUFDakUsMkNBQTJDLFVBQVUsMEJBQTBCLEVBQUUsRUFBRTtBQUNuRjs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRVE7QUFDUiIsImZpbGUiOiI2Ni5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogdnVleCB2My4wLjFcbiAqIChjKSAyMDE3IEV2YW4gWW91XG4gKiBAbGljZW5zZSBNSVRcbiAqL1xudmFyIGFwcGx5TWl4aW4gPSBmdW5jdGlvbiAoVnVlKSB7XG4gIHZhciB2ZXJzaW9uID0gTnVtYmVyKFZ1ZS52ZXJzaW9uLnNwbGl0KCcuJylbMF0pO1xuXG4gIGlmICh2ZXJzaW9uID49IDIpIHtcbiAgICBWdWUubWl4aW4oeyBiZWZvcmVDcmVhdGU6IHZ1ZXhJbml0IH0pO1xuICB9IGVsc2Uge1xuICAgIC8vIG92ZXJyaWRlIGluaXQgYW5kIGluamVjdCB2dWV4IGluaXQgcHJvY2VkdXJlXG4gICAgLy8gZm9yIDEueCBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eS5cbiAgICB2YXIgX2luaXQgPSBWdWUucHJvdG90eXBlLl9pbml0O1xuICAgIFZ1ZS5wcm90b3R5cGUuX2luaXQgPSBmdW5jdGlvbiAob3B0aW9ucykge1xuICAgICAgaWYgKCBvcHRpb25zID09PSB2b2lkIDAgKSBvcHRpb25zID0ge307XG5cbiAgICAgIG9wdGlvbnMuaW5pdCA9IG9wdGlvbnMuaW5pdFxuICAgICAgICA/IFt2dWV4SW5pdF0uY29uY2F0KG9wdGlvbnMuaW5pdClcbiAgICAgICAgOiB2dWV4SW5pdDtcbiAgICAgIF9pbml0LmNhbGwodGhpcywgb3B0aW9ucyk7XG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBWdWV4IGluaXQgaG9vaywgaW5qZWN0ZWQgaW50byBlYWNoIGluc3RhbmNlcyBpbml0IGhvb2tzIGxpc3QuXG4gICAqL1xuXG4gIGZ1bmN0aW9uIHZ1ZXhJbml0ICgpIHtcbiAgICB2YXIgb3B0aW9ucyA9IHRoaXMuJG9wdGlvbnM7XG4gICAgLy8gc3RvcmUgaW5qZWN0aW9uXG4gICAgaWYgKG9wdGlvbnMuc3RvcmUpIHtcbiAgICAgIHRoaXMuJHN0b3JlID0gdHlwZW9mIG9wdGlvbnMuc3RvcmUgPT09ICdmdW5jdGlvbidcbiAgICAgICAgPyBvcHRpb25zLnN0b3JlKClcbiAgICAgICAgOiBvcHRpb25zLnN0b3JlO1xuICAgIH0gZWxzZSBpZiAob3B0aW9ucy5wYXJlbnQgJiYgb3B0aW9ucy5wYXJlbnQuJHN0b3JlKSB7XG4gICAgICB0aGlzLiRzdG9yZSA9IG9wdGlvbnMucGFyZW50LiRzdG9yZTtcbiAgICB9XG4gIH1cbn07XG5cbnZhciBkZXZ0b29sSG9vayA9XG4gIHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnICYmXG4gIHdpbmRvdy5fX1ZVRV9ERVZUT09MU19HTE9CQUxfSE9PS19fO1xuXG5mdW5jdGlvbiBkZXZ0b29sUGx1Z2luIChzdG9yZSkge1xuICBpZiAoIWRldnRvb2xIb29rKSB7IHJldHVybiB9XG5cbiAgc3RvcmUuX2RldnRvb2xIb29rID0gZGV2dG9vbEhvb2s7XG5cbiAgZGV2dG9vbEhvb2suZW1pdCgndnVleDppbml0Jywgc3RvcmUpO1xuXG4gIGRldnRvb2xIb29rLm9uKCd2dWV4OnRyYXZlbC10by1zdGF0ZScsIGZ1bmN0aW9uICh0YXJnZXRTdGF0ZSkge1xuICAgIHN0b3JlLnJlcGxhY2VTdGF0ZSh0YXJnZXRTdGF0ZSk7XG4gIH0pO1xuXG4gIHN0b3JlLnN1YnNjcmliZShmdW5jdGlvbiAobXV0YXRpb24sIHN0YXRlKSB7XG4gICAgZGV2dG9vbEhvb2suZW1pdCgndnVleDptdXRhdGlvbicsIG11dGF0aW9uLCBzdGF0ZSk7XG4gIH0pO1xufVxuXG4vKipcbiAqIEdldCB0aGUgZmlyc3QgaXRlbSB0aGF0IHBhc3MgdGhlIHRlc3RcbiAqIGJ5IHNlY29uZCBhcmd1bWVudCBmdW5jdGlvblxuICpcbiAqIEBwYXJhbSB7QXJyYXl9IGxpc3RcbiAqIEBwYXJhbSB7RnVuY3Rpb259IGZcbiAqIEByZXR1cm4geyp9XG4gKi9cbi8qKlxuICogRGVlcCBjb3B5IHRoZSBnaXZlbiBvYmplY3QgY29uc2lkZXJpbmcgY2lyY3VsYXIgc3RydWN0dXJlLlxuICogVGhpcyBmdW5jdGlvbiBjYWNoZXMgYWxsIG5lc3RlZCBvYmplY3RzIGFuZCBpdHMgY29waWVzLlxuICogSWYgaXQgZGV0ZWN0cyBjaXJjdWxhciBzdHJ1Y3R1cmUsIHVzZSBjYWNoZWQgY29weSB0byBhdm9pZCBpbmZpbml0ZSBsb29wLlxuICpcbiAqIEBwYXJhbSB7Kn0gb2JqXG4gKiBAcGFyYW0ge0FycmF5PE9iamVjdD59IGNhY2hlXG4gKiBAcmV0dXJuIHsqfVxuICovXG5cblxuLyoqXG4gKiBmb3JFYWNoIGZvciBvYmplY3RcbiAqL1xuZnVuY3Rpb24gZm9yRWFjaFZhbHVlIChvYmosIGZuKSB7XG4gIE9iamVjdC5rZXlzKG9iaikuZm9yRWFjaChmdW5jdGlvbiAoa2V5KSB7IHJldHVybiBmbihvYmpba2V5XSwga2V5KTsgfSk7XG59XG5cbmZ1bmN0aW9uIGlzT2JqZWN0IChvYmopIHtcbiAgcmV0dXJuIG9iaiAhPT0gbnVsbCAmJiB0eXBlb2Ygb2JqID09PSAnb2JqZWN0J1xufVxuXG5mdW5jdGlvbiBpc1Byb21pc2UgKHZhbCkge1xuICByZXR1cm4gdmFsICYmIHR5cGVvZiB2YWwudGhlbiA9PT0gJ2Z1bmN0aW9uJ1xufVxuXG5mdW5jdGlvbiBhc3NlcnQgKGNvbmRpdGlvbiwgbXNnKSB7XG4gIGlmICghY29uZGl0aW9uKSB7IHRocm93IG5ldyBFcnJvcigoXCJbdnVleF0gXCIgKyBtc2cpKSB9XG59XG5cbnZhciBNb2R1bGUgPSBmdW5jdGlvbiBNb2R1bGUgKHJhd01vZHVsZSwgcnVudGltZSkge1xuICB0aGlzLnJ1bnRpbWUgPSBydW50aW1lO1xuICB0aGlzLl9jaGlsZHJlbiA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG4gIHRoaXMuX3Jhd01vZHVsZSA9IHJhd01vZHVsZTtcbiAgdmFyIHJhd1N0YXRlID0gcmF3TW9kdWxlLnN0YXRlO1xuICB0aGlzLnN0YXRlID0gKHR5cGVvZiByYXdTdGF0ZSA9PT0gJ2Z1bmN0aW9uJyA/IHJhd1N0YXRlKCkgOiByYXdTdGF0ZSkgfHwge307XG59O1xuXG52YXIgcHJvdG90eXBlQWNjZXNzb3JzJDEgPSB7IG5hbWVzcGFjZWQ6IHsgY29uZmlndXJhYmxlOiB0cnVlIH0gfTtcblxucHJvdG90eXBlQWNjZXNzb3JzJDEubmFtZXNwYWNlZC5nZXQgPSBmdW5jdGlvbiAoKSB7XG4gIHJldHVybiAhIXRoaXMuX3Jhd01vZHVsZS5uYW1lc3BhY2VkXG59O1xuXG5Nb2R1bGUucHJvdG90eXBlLmFkZENoaWxkID0gZnVuY3Rpb24gYWRkQ2hpbGQgKGtleSwgbW9kdWxlKSB7XG4gIHRoaXMuX2NoaWxkcmVuW2tleV0gPSBtb2R1bGU7XG59O1xuXG5Nb2R1bGUucHJvdG90eXBlLnJlbW92ZUNoaWxkID0gZnVuY3Rpb24gcmVtb3ZlQ2hpbGQgKGtleSkge1xuICBkZWxldGUgdGhpcy5fY2hpbGRyZW5ba2V5XTtcbn07XG5cbk1vZHVsZS5wcm90b3R5cGUuZ2V0Q2hpbGQgPSBmdW5jdGlvbiBnZXRDaGlsZCAoa2V5KSB7XG4gIHJldHVybiB0aGlzLl9jaGlsZHJlbltrZXldXG59O1xuXG5Nb2R1bGUucHJvdG90eXBlLnVwZGF0ZSA9IGZ1bmN0aW9uIHVwZGF0ZSAocmF3TW9kdWxlKSB7XG4gIHRoaXMuX3Jhd01vZHVsZS5uYW1lc3BhY2VkID0gcmF3TW9kdWxlLm5hbWVzcGFjZWQ7XG4gIGlmIChyYXdNb2R1bGUuYWN0aW9ucykge1xuICAgIHRoaXMuX3Jhd01vZHVsZS5hY3Rpb25zID0gcmF3TW9kdWxlLmFjdGlvbnM7XG4gIH1cbiAgaWYgKHJhd01vZHVsZS5tdXRhdGlvbnMpIHtcbiAgICB0aGlzLl9yYXdNb2R1bGUubXV0YXRpb25zID0gcmF3TW9kdWxlLm11dGF0aW9ucztcbiAgfVxuICBpZiAocmF3TW9kdWxlLmdldHRlcnMpIHtcbiAgICB0aGlzLl9yYXdNb2R1bGUuZ2V0dGVycyA9IHJhd01vZHVsZS5nZXR0ZXJzO1xuICB9XG59O1xuXG5Nb2R1bGUucHJvdG90eXBlLmZvckVhY2hDaGlsZCA9IGZ1bmN0aW9uIGZvckVhY2hDaGlsZCAoZm4pIHtcbiAgZm9yRWFjaFZhbHVlKHRoaXMuX2NoaWxkcmVuLCBmbik7XG59O1xuXG5Nb2R1bGUucHJvdG90eXBlLmZvckVhY2hHZXR0ZXIgPSBmdW5jdGlvbiBmb3JFYWNoR2V0dGVyIChmbikge1xuICBpZiAodGhpcy5fcmF3TW9kdWxlLmdldHRlcnMpIHtcbiAgICBmb3JFYWNoVmFsdWUodGhpcy5fcmF3TW9kdWxlLmdldHRlcnMsIGZuKTtcbiAgfVxufTtcblxuTW9kdWxlLnByb3RvdHlwZS5mb3JFYWNoQWN0aW9uID0gZnVuY3Rpb24gZm9yRWFjaEFjdGlvbiAoZm4pIHtcbiAgaWYgKHRoaXMuX3Jhd01vZHVsZS5hY3Rpb25zKSB7XG4gICAgZm9yRWFjaFZhbHVlKHRoaXMuX3Jhd01vZHVsZS5hY3Rpb25zLCBmbik7XG4gIH1cbn07XG5cbk1vZHVsZS5wcm90b3R5cGUuZm9yRWFjaE11dGF0aW9uID0gZnVuY3Rpb24gZm9yRWFjaE11dGF0aW9uIChmbikge1xuICBpZiAodGhpcy5fcmF3TW9kdWxlLm11dGF0aW9ucykge1xuICAgIGZvckVhY2hWYWx1ZSh0aGlzLl9yYXdNb2R1bGUubXV0YXRpb25zLCBmbik7XG4gIH1cbn07XG5cbk9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKCBNb2R1bGUucHJvdG90eXBlLCBwcm90b3R5cGVBY2Nlc3NvcnMkMSApO1xuXG52YXIgTW9kdWxlQ29sbGVjdGlvbiA9IGZ1bmN0aW9uIE1vZHVsZUNvbGxlY3Rpb24gKHJhd1Jvb3RNb2R1bGUpIHtcbiAgLy8gcmVnaXN0ZXIgcm9vdCBtb2R1bGUgKFZ1ZXguU3RvcmUgb3B0aW9ucylcbiAgdGhpcy5yZWdpc3RlcihbXSwgcmF3Um9vdE1vZHVsZSwgZmFsc2UpO1xufTtcblxuTW9kdWxlQ29sbGVjdGlvbi5wcm90b3R5cGUuZ2V0ID0gZnVuY3Rpb24gZ2V0IChwYXRoKSB7XG4gIHJldHVybiBwYXRoLnJlZHVjZShmdW5jdGlvbiAobW9kdWxlLCBrZXkpIHtcbiAgICByZXR1cm4gbW9kdWxlLmdldENoaWxkKGtleSlcbiAgfSwgdGhpcy5yb290KVxufTtcblxuTW9kdWxlQ29sbGVjdGlvbi5wcm90b3R5cGUuZ2V0TmFtZXNwYWNlID0gZnVuY3Rpb24gZ2V0TmFtZXNwYWNlIChwYXRoKSB7XG4gIHZhciBtb2R1bGUgPSB0aGlzLnJvb3Q7XG4gIHJldHVybiBwYXRoLnJlZHVjZShmdW5jdGlvbiAobmFtZXNwYWNlLCBrZXkpIHtcbiAgICBtb2R1bGUgPSBtb2R1bGUuZ2V0Q2hpbGQoa2V5KTtcbiAgICByZXR1cm4gbmFtZXNwYWNlICsgKG1vZHVsZS5uYW1lc3BhY2VkID8ga2V5ICsgJy8nIDogJycpXG4gIH0sICcnKVxufTtcblxuTW9kdWxlQ29sbGVjdGlvbi5wcm90b3R5cGUudXBkYXRlID0gZnVuY3Rpb24gdXBkYXRlJDEgKHJhd1Jvb3RNb2R1bGUpIHtcbiAgdXBkYXRlKFtdLCB0aGlzLnJvb3QsIHJhd1Jvb3RNb2R1bGUpO1xufTtcblxuTW9kdWxlQ29sbGVjdGlvbi5wcm90b3R5cGUucmVnaXN0ZXIgPSBmdW5jdGlvbiByZWdpc3RlciAocGF0aCwgcmF3TW9kdWxlLCBydW50aW1lKSB7XG4gICAgdmFyIHRoaXMkMSA9IHRoaXM7XG4gICAgaWYgKCBydW50aW1lID09PSB2b2lkIDAgKSBydW50aW1lID0gdHJ1ZTtcblxuICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgIGFzc2VydFJhd01vZHVsZShwYXRoLCByYXdNb2R1bGUpO1xuICB9XG5cbiAgdmFyIG5ld01vZHVsZSA9IG5ldyBNb2R1bGUocmF3TW9kdWxlLCBydW50aW1lKTtcbiAgaWYgKHBhdGgubGVuZ3RoID09PSAwKSB7XG4gICAgdGhpcy5yb290ID0gbmV3TW9kdWxlO1xuICB9IGVsc2Uge1xuICAgIHZhciBwYXJlbnQgPSB0aGlzLmdldChwYXRoLnNsaWNlKDAsIC0xKSk7XG4gICAgcGFyZW50LmFkZENoaWxkKHBhdGhbcGF0aC5sZW5ndGggLSAxXSwgbmV3TW9kdWxlKTtcbiAgfVxuXG4gIC8vIHJlZ2lzdGVyIG5lc3RlZCBtb2R1bGVzXG4gIGlmIChyYXdNb2R1bGUubW9kdWxlcykge1xuICAgIGZvckVhY2hWYWx1ZShyYXdNb2R1bGUubW9kdWxlcywgZnVuY3Rpb24gKHJhd0NoaWxkTW9kdWxlLCBrZXkpIHtcbiAgICAgIHRoaXMkMS5yZWdpc3RlcihwYXRoLmNvbmNhdChrZXkpLCByYXdDaGlsZE1vZHVsZSwgcnVudGltZSk7XG4gICAgfSk7XG4gIH1cbn07XG5cbk1vZHVsZUNvbGxlY3Rpb24ucHJvdG90eXBlLnVucmVnaXN0ZXIgPSBmdW5jdGlvbiB1bnJlZ2lzdGVyIChwYXRoKSB7XG4gIHZhciBwYXJlbnQgPSB0aGlzLmdldChwYXRoLnNsaWNlKDAsIC0xKSk7XG4gIHZhciBrZXkgPSBwYXRoW3BhdGgubGVuZ3RoIC0gMV07XG4gIGlmICghcGFyZW50LmdldENoaWxkKGtleSkucnVudGltZSkgeyByZXR1cm4gfVxuXG4gIHBhcmVudC5yZW1vdmVDaGlsZChrZXkpO1xufTtcblxuZnVuY3Rpb24gdXBkYXRlIChwYXRoLCB0YXJnZXRNb2R1bGUsIG5ld01vZHVsZSkge1xuICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgIGFzc2VydFJhd01vZHVsZShwYXRoLCBuZXdNb2R1bGUpO1xuICB9XG5cbiAgLy8gdXBkYXRlIHRhcmdldCBtb2R1bGVcbiAgdGFyZ2V0TW9kdWxlLnVwZGF0ZShuZXdNb2R1bGUpO1xuXG4gIC8vIHVwZGF0ZSBuZXN0ZWQgbW9kdWxlc1xuICBpZiAobmV3TW9kdWxlLm1vZHVsZXMpIHtcbiAgICBmb3IgKHZhciBrZXkgaW4gbmV3TW9kdWxlLm1vZHVsZXMpIHtcbiAgICAgIGlmICghdGFyZ2V0TW9kdWxlLmdldENoaWxkKGtleSkpIHtcbiAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgICAgICBcIlt2dWV4XSB0cnlpbmcgdG8gYWRkIGEgbmV3IG1vZHVsZSAnXCIgKyBrZXkgKyBcIicgb24gaG90IHJlbG9hZGluZywgXCIgK1xuICAgICAgICAgICAgJ21hbnVhbCByZWxvYWQgaXMgbmVlZGVkJ1xuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG4gICAgICB1cGRhdGUoXG4gICAgICAgIHBhdGguY29uY2F0KGtleSksXG4gICAgICAgIHRhcmdldE1vZHVsZS5nZXRDaGlsZChrZXkpLFxuICAgICAgICBuZXdNb2R1bGUubW9kdWxlc1trZXldXG4gICAgICApO1xuICAgIH1cbiAgfVxufVxuXG52YXIgZnVuY3Rpb25Bc3NlcnQgPSB7XG4gIGFzc2VydDogZnVuY3Rpb24gKHZhbHVlKSB7IHJldHVybiB0eXBlb2YgdmFsdWUgPT09ICdmdW5jdGlvbic7IH0sXG4gIGV4cGVjdGVkOiAnZnVuY3Rpb24nXG59O1xuXG52YXIgb2JqZWN0QXNzZXJ0ID0ge1xuICBhc3NlcnQ6IGZ1bmN0aW9uICh2YWx1ZSkgeyByZXR1cm4gdHlwZW9mIHZhbHVlID09PSAnZnVuY3Rpb24nIHx8XG4gICAgKHR5cGVvZiB2YWx1ZSA9PT0gJ29iamVjdCcgJiYgdHlwZW9mIHZhbHVlLmhhbmRsZXIgPT09ICdmdW5jdGlvbicpOyB9LFxuICBleHBlY3RlZDogJ2Z1bmN0aW9uIG9yIG9iamVjdCB3aXRoIFwiaGFuZGxlclwiIGZ1bmN0aW9uJ1xufTtcblxudmFyIGFzc2VydFR5cGVzID0ge1xuICBnZXR0ZXJzOiBmdW5jdGlvbkFzc2VydCxcbiAgbXV0YXRpb25zOiBmdW5jdGlvbkFzc2VydCxcbiAgYWN0aW9uczogb2JqZWN0QXNzZXJ0XG59O1xuXG5mdW5jdGlvbiBhc3NlcnRSYXdNb2R1bGUgKHBhdGgsIHJhd01vZHVsZSkge1xuICBPYmplY3Qua2V5cyhhc3NlcnRUeXBlcykuZm9yRWFjaChmdW5jdGlvbiAoa2V5KSB7XG4gICAgaWYgKCFyYXdNb2R1bGVba2V5XSkgeyByZXR1cm4gfVxuXG4gICAgdmFyIGFzc2VydE9wdGlvbnMgPSBhc3NlcnRUeXBlc1trZXldO1xuXG4gICAgZm9yRWFjaFZhbHVlKHJhd01vZHVsZVtrZXldLCBmdW5jdGlvbiAodmFsdWUsIHR5cGUpIHtcbiAgICAgIGFzc2VydChcbiAgICAgICAgYXNzZXJ0T3B0aW9ucy5hc3NlcnQodmFsdWUpLFxuICAgICAgICBtYWtlQXNzZXJ0aW9uTWVzc2FnZShwYXRoLCBrZXksIHR5cGUsIHZhbHVlLCBhc3NlcnRPcHRpb25zLmV4cGVjdGVkKVxuICAgICAgKTtcbiAgICB9KTtcbiAgfSk7XG59XG5cbmZ1bmN0aW9uIG1ha2VBc3NlcnRpb25NZXNzYWdlIChwYXRoLCBrZXksIHR5cGUsIHZhbHVlLCBleHBlY3RlZCkge1xuICB2YXIgYnVmID0ga2V5ICsgXCIgc2hvdWxkIGJlIFwiICsgZXhwZWN0ZWQgKyBcIiBidXQgXFxcIlwiICsga2V5ICsgXCIuXCIgKyB0eXBlICsgXCJcXFwiXCI7XG4gIGlmIChwYXRoLmxlbmd0aCA+IDApIHtcbiAgICBidWYgKz0gXCIgaW4gbW9kdWxlIFxcXCJcIiArIChwYXRoLmpvaW4oJy4nKSkgKyBcIlxcXCJcIjtcbiAgfVxuICBidWYgKz0gXCIgaXMgXCIgKyAoSlNPTi5zdHJpbmdpZnkodmFsdWUpKSArIFwiLlwiO1xuICByZXR1cm4gYnVmXG59XG5cbnZhciBWdWU7IC8vIGJpbmQgb24gaW5zdGFsbFxuXG52YXIgU3RvcmUgPSBmdW5jdGlvbiBTdG9yZSAob3B0aW9ucykge1xuICB2YXIgdGhpcyQxID0gdGhpcztcbiAgaWYgKCBvcHRpb25zID09PSB2b2lkIDAgKSBvcHRpb25zID0ge307XG5cbiAgLy8gQXV0byBpbnN0YWxsIGlmIGl0IGlzIG5vdCBkb25lIHlldCBhbmQgYHdpbmRvd2AgaGFzIGBWdWVgLlxuICAvLyBUbyBhbGxvdyB1c2VycyB0byBhdm9pZCBhdXRvLWluc3RhbGxhdGlvbiBpbiBzb21lIGNhc2VzLFxuICAvLyB0aGlzIGNvZGUgc2hvdWxkIGJlIHBsYWNlZCBoZXJlLiBTZWUgIzczMVxuICBpZiAoIVZ1ZSAmJiB0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyAmJiB3aW5kb3cuVnVlKSB7XG4gICAgaW5zdGFsbCh3aW5kb3cuVnVlKTtcbiAgfVxuXG4gIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgYXNzZXJ0KFZ1ZSwgXCJtdXN0IGNhbGwgVnVlLnVzZShWdWV4KSBiZWZvcmUgY3JlYXRpbmcgYSBzdG9yZSBpbnN0YW5jZS5cIik7XG4gICAgYXNzZXJ0KHR5cGVvZiBQcm9taXNlICE9PSAndW5kZWZpbmVkJywgXCJ2dWV4IHJlcXVpcmVzIGEgUHJvbWlzZSBwb2x5ZmlsbCBpbiB0aGlzIGJyb3dzZXIuXCIpO1xuICAgIGFzc2VydCh0aGlzIGluc3RhbmNlb2YgU3RvcmUsIFwiU3RvcmUgbXVzdCBiZSBjYWxsZWQgd2l0aCB0aGUgbmV3IG9wZXJhdG9yLlwiKTtcbiAgfVxuXG4gIHZhciBwbHVnaW5zID0gb3B0aW9ucy5wbHVnaW5zOyBpZiAoIHBsdWdpbnMgPT09IHZvaWQgMCApIHBsdWdpbnMgPSBbXTtcbiAgdmFyIHN0cmljdCA9IG9wdGlvbnMuc3RyaWN0OyBpZiAoIHN0cmljdCA9PT0gdm9pZCAwICkgc3RyaWN0ID0gZmFsc2U7XG5cbiAgdmFyIHN0YXRlID0gb3B0aW9ucy5zdGF0ZTsgaWYgKCBzdGF0ZSA9PT0gdm9pZCAwICkgc3RhdGUgPSB7fTtcbiAgaWYgKHR5cGVvZiBzdGF0ZSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIHN0YXRlID0gc3RhdGUoKSB8fCB7fTtcbiAgfVxuXG4gIC8vIHN0b3JlIGludGVybmFsIHN0YXRlXG4gIHRoaXMuX2NvbW1pdHRpbmcgPSBmYWxzZTtcbiAgdGhpcy5fYWN0aW9ucyA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG4gIHRoaXMuX2FjdGlvblN1YnNjcmliZXJzID0gW107XG4gIHRoaXMuX211dGF0aW9ucyA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG4gIHRoaXMuX3dyYXBwZWRHZXR0ZXJzID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbiAgdGhpcy5fbW9kdWxlcyA9IG5ldyBNb2R1bGVDb2xsZWN0aW9uKG9wdGlvbnMpO1xuICB0aGlzLl9tb2R1bGVzTmFtZXNwYWNlTWFwID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbiAgdGhpcy5fc3Vic2NyaWJlcnMgPSBbXTtcbiAgdGhpcy5fd2F0Y2hlclZNID0gbmV3IFZ1ZSgpO1xuXG4gIC8vIGJpbmQgY29tbWl0IGFuZCBkaXNwYXRjaCB0byBzZWxmXG4gIHZhciBzdG9yZSA9IHRoaXM7XG4gIHZhciByZWYgPSB0aGlzO1xuICB2YXIgZGlzcGF0Y2ggPSByZWYuZGlzcGF0Y2g7XG4gIHZhciBjb21taXQgPSByZWYuY29tbWl0O1xuICB0aGlzLmRpc3BhdGNoID0gZnVuY3Rpb24gYm91bmREaXNwYXRjaCAodHlwZSwgcGF5bG9hZCkge1xuICAgIHJldHVybiBkaXNwYXRjaC5jYWxsKHN0b3JlLCB0eXBlLCBwYXlsb2FkKVxuICB9O1xuICB0aGlzLmNvbW1pdCA9IGZ1bmN0aW9uIGJvdW5kQ29tbWl0ICh0eXBlLCBwYXlsb2FkLCBvcHRpb25zKSB7XG4gICAgcmV0dXJuIGNvbW1pdC5jYWxsKHN0b3JlLCB0eXBlLCBwYXlsb2FkLCBvcHRpb25zKVxuICB9O1xuXG4gIC8vIHN0cmljdCBtb2RlXG4gIHRoaXMuc3RyaWN0ID0gc3RyaWN0O1xuXG4gIC8vIGluaXQgcm9vdCBtb2R1bGUuXG4gIC8vIHRoaXMgYWxzbyByZWN1cnNpdmVseSByZWdpc3RlcnMgYWxsIHN1Yi1tb2R1bGVzXG4gIC8vIGFuZCBjb2xsZWN0cyBhbGwgbW9kdWxlIGdldHRlcnMgaW5zaWRlIHRoaXMuX3dyYXBwZWRHZXR0ZXJzXG4gIGluc3RhbGxNb2R1bGUodGhpcywgc3RhdGUsIFtdLCB0aGlzLl9tb2R1bGVzLnJvb3QpO1xuXG4gIC8vIGluaXRpYWxpemUgdGhlIHN0b3JlIHZtLCB3aGljaCBpcyByZXNwb25zaWJsZSBmb3IgdGhlIHJlYWN0aXZpdHlcbiAgLy8gKGFsc28gcmVnaXN0ZXJzIF93cmFwcGVkR2V0dGVycyBhcyBjb21wdXRlZCBwcm9wZXJ0aWVzKVxuICByZXNldFN0b3JlVk0odGhpcywgc3RhdGUpO1xuXG4gIC8vIGFwcGx5IHBsdWdpbnNcbiAgcGx1Z2lucy5mb3JFYWNoKGZ1bmN0aW9uIChwbHVnaW4pIHsgcmV0dXJuIHBsdWdpbih0aGlzJDEpOyB9KTtcblxuICBpZiAoVnVlLmNvbmZpZy5kZXZ0b29scykge1xuICAgIGRldnRvb2xQbHVnaW4odGhpcyk7XG4gIH1cbn07XG5cbnZhciBwcm90b3R5cGVBY2Nlc3NvcnMgPSB7IHN0YXRlOiB7IGNvbmZpZ3VyYWJsZTogdHJ1ZSB9IH07XG5cbnByb3RvdHlwZUFjY2Vzc29ycy5zdGF0ZS5nZXQgPSBmdW5jdGlvbiAoKSB7XG4gIHJldHVybiB0aGlzLl92bS5fZGF0YS4kJHN0YXRlXG59O1xuXG5wcm90b3R5cGVBY2Nlc3NvcnMuc3RhdGUuc2V0ID0gZnVuY3Rpb24gKHYpIHtcbiAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICBhc3NlcnQoZmFsc2UsIFwiVXNlIHN0b3JlLnJlcGxhY2VTdGF0ZSgpIHRvIGV4cGxpY2l0IHJlcGxhY2Ugc3RvcmUgc3RhdGUuXCIpO1xuICB9XG59O1xuXG5TdG9yZS5wcm90b3R5cGUuY29tbWl0ID0gZnVuY3Rpb24gY29tbWl0IChfdHlwZSwgX3BheWxvYWQsIF9vcHRpb25zKSB7XG4gICAgdmFyIHRoaXMkMSA9IHRoaXM7XG5cbiAgLy8gY2hlY2sgb2JqZWN0LXN0eWxlIGNvbW1pdFxuICB2YXIgcmVmID0gdW5pZnlPYmplY3RTdHlsZShfdHlwZSwgX3BheWxvYWQsIF9vcHRpb25zKTtcbiAgICB2YXIgdHlwZSA9IHJlZi50eXBlO1xuICAgIHZhciBwYXlsb2FkID0gcmVmLnBheWxvYWQ7XG4gICAgdmFyIG9wdGlvbnMgPSByZWYub3B0aW9ucztcblxuICB2YXIgbXV0YXRpb24gPSB7IHR5cGU6IHR5cGUsIHBheWxvYWQ6IHBheWxvYWQgfTtcbiAgdmFyIGVudHJ5ID0gdGhpcy5fbXV0YXRpb25zW3R5cGVdO1xuICBpZiAoIWVudHJ5KSB7XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoKFwiW3Z1ZXhdIHVua25vd24gbXV0YXRpb24gdHlwZTogXCIgKyB0eXBlKSk7XG4gICAgfVxuICAgIHJldHVyblxuICB9XG4gIHRoaXMuX3dpdGhDb21taXQoZnVuY3Rpb24gKCkge1xuICAgIGVudHJ5LmZvckVhY2goZnVuY3Rpb24gY29tbWl0SXRlcmF0b3IgKGhhbmRsZXIpIHtcbiAgICAgIGhhbmRsZXIocGF5bG9hZCk7XG4gICAgfSk7XG4gIH0pO1xuICB0aGlzLl9zdWJzY3JpYmVycy5mb3JFYWNoKGZ1bmN0aW9uIChzdWIpIHsgcmV0dXJuIHN1YihtdXRhdGlvbiwgdGhpcyQxLnN0YXRlKTsgfSk7XG5cbiAgaWYgKFxuICAgIHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiZcbiAgICBvcHRpb25zICYmIG9wdGlvbnMuc2lsZW50XG4gICkge1xuICAgIGNvbnNvbGUud2FybihcbiAgICAgIFwiW3Z1ZXhdIG11dGF0aW9uIHR5cGU6IFwiICsgdHlwZSArIFwiLiBTaWxlbnQgb3B0aW9uIGhhcyBiZWVuIHJlbW92ZWQuIFwiICtcbiAgICAgICdVc2UgdGhlIGZpbHRlciBmdW5jdGlvbmFsaXR5IGluIHRoZSB2dWUtZGV2dG9vbHMnXG4gICAgKTtcbiAgfVxufTtcblxuU3RvcmUucHJvdG90eXBlLmRpc3BhdGNoID0gZnVuY3Rpb24gZGlzcGF0Y2ggKF90eXBlLCBfcGF5bG9hZCkge1xuICAgIHZhciB0aGlzJDEgPSB0aGlzO1xuXG4gIC8vIGNoZWNrIG9iamVjdC1zdHlsZSBkaXNwYXRjaFxuICB2YXIgcmVmID0gdW5pZnlPYmplY3RTdHlsZShfdHlwZSwgX3BheWxvYWQpO1xuICAgIHZhciB0eXBlID0gcmVmLnR5cGU7XG4gICAgdmFyIHBheWxvYWQgPSByZWYucGF5bG9hZDtcblxuICB2YXIgYWN0aW9uID0geyB0eXBlOiB0eXBlLCBwYXlsb2FkOiBwYXlsb2FkIH07XG4gIHZhciBlbnRyeSA9IHRoaXMuX2FjdGlvbnNbdHlwZV07XG4gIGlmICghZW50cnkpIHtcbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgY29uc29sZS5lcnJvcigoXCJbdnVleF0gdW5rbm93biBhY3Rpb24gdHlwZTogXCIgKyB0eXBlKSk7XG4gICAgfVxuICAgIHJldHVyblxuICB9XG5cbiAgdGhpcy5fYWN0aW9uU3Vic2NyaWJlcnMuZm9yRWFjaChmdW5jdGlvbiAoc3ViKSB7IHJldHVybiBzdWIoYWN0aW9uLCB0aGlzJDEuc3RhdGUpOyB9KTtcblxuICByZXR1cm4gZW50cnkubGVuZ3RoID4gMVxuICAgID8gUHJvbWlzZS5hbGwoZW50cnkubWFwKGZ1bmN0aW9uIChoYW5kbGVyKSB7IHJldHVybiBoYW5kbGVyKHBheWxvYWQpOyB9KSlcbiAgICA6IGVudHJ5WzBdKHBheWxvYWQpXG59O1xuXG5TdG9yZS5wcm90b3R5cGUuc3Vic2NyaWJlID0gZnVuY3Rpb24gc3Vic2NyaWJlIChmbikge1xuICByZXR1cm4gZ2VuZXJpY1N1YnNjcmliZShmbiwgdGhpcy5fc3Vic2NyaWJlcnMpXG59O1xuXG5TdG9yZS5wcm90b3R5cGUuc3Vic2NyaWJlQWN0aW9uID0gZnVuY3Rpb24gc3Vic2NyaWJlQWN0aW9uIChmbikge1xuICByZXR1cm4gZ2VuZXJpY1N1YnNjcmliZShmbiwgdGhpcy5fYWN0aW9uU3Vic2NyaWJlcnMpXG59O1xuXG5TdG9yZS5wcm90b3R5cGUud2F0Y2ggPSBmdW5jdGlvbiB3YXRjaCAoZ2V0dGVyLCBjYiwgb3B0aW9ucykge1xuICAgIHZhciB0aGlzJDEgPSB0aGlzO1xuXG4gIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgYXNzZXJ0KHR5cGVvZiBnZXR0ZXIgPT09ICdmdW5jdGlvbicsIFwic3RvcmUud2F0Y2ggb25seSBhY2NlcHRzIGEgZnVuY3Rpb24uXCIpO1xuICB9XG4gIHJldHVybiB0aGlzLl93YXRjaGVyVk0uJHdhdGNoKGZ1bmN0aW9uICgpIHsgcmV0dXJuIGdldHRlcih0aGlzJDEuc3RhdGUsIHRoaXMkMS5nZXR0ZXJzKTsgfSwgY2IsIG9wdGlvbnMpXG59O1xuXG5TdG9yZS5wcm90b3R5cGUucmVwbGFjZVN0YXRlID0gZnVuY3Rpb24gcmVwbGFjZVN0YXRlIChzdGF0ZSkge1xuICAgIHZhciB0aGlzJDEgPSB0aGlzO1xuXG4gIHRoaXMuX3dpdGhDb21taXQoZnVuY3Rpb24gKCkge1xuICAgIHRoaXMkMS5fdm0uX2RhdGEuJCRzdGF0ZSA9IHN0YXRlO1xuICB9KTtcbn07XG5cblN0b3JlLnByb3RvdHlwZS5yZWdpc3Rlck1vZHVsZSA9IGZ1bmN0aW9uIHJlZ2lzdGVyTW9kdWxlIChwYXRoLCByYXdNb2R1bGUsIG9wdGlvbnMpIHtcbiAgICBpZiAoIG9wdGlvbnMgPT09IHZvaWQgMCApIG9wdGlvbnMgPSB7fTtcblxuICBpZiAodHlwZW9mIHBhdGggPT09ICdzdHJpbmcnKSB7IHBhdGggPSBbcGF0aF07IH1cblxuICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgIGFzc2VydChBcnJheS5pc0FycmF5KHBhdGgpLCBcIm1vZHVsZSBwYXRoIG11c3QgYmUgYSBzdHJpbmcgb3IgYW4gQXJyYXkuXCIpO1xuICAgIGFzc2VydChwYXRoLmxlbmd0aCA+IDAsICdjYW5ub3QgcmVnaXN0ZXIgdGhlIHJvb3QgbW9kdWxlIGJ5IHVzaW5nIHJlZ2lzdGVyTW9kdWxlLicpO1xuICB9XG5cbiAgdGhpcy5fbW9kdWxlcy5yZWdpc3RlcihwYXRoLCByYXdNb2R1bGUpO1xuICBpbnN0YWxsTW9kdWxlKHRoaXMsIHRoaXMuc3RhdGUsIHBhdGgsIHRoaXMuX21vZHVsZXMuZ2V0KHBhdGgpLCBvcHRpb25zLnByZXNlcnZlU3RhdGUpO1xuICAvLyByZXNldCBzdG9yZSB0byB1cGRhdGUgZ2V0dGVycy4uLlxuICByZXNldFN0b3JlVk0odGhpcywgdGhpcy5zdGF0ZSk7XG59O1xuXG5TdG9yZS5wcm90b3R5cGUudW5yZWdpc3Rlck1vZHVsZSA9IGZ1bmN0aW9uIHVucmVnaXN0ZXJNb2R1bGUgKHBhdGgpIHtcbiAgICB2YXIgdGhpcyQxID0gdGhpcztcblxuICBpZiAodHlwZW9mIHBhdGggPT09ICdzdHJpbmcnKSB7IHBhdGggPSBbcGF0aF07IH1cblxuICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgIGFzc2VydChBcnJheS5pc0FycmF5KHBhdGgpLCBcIm1vZHVsZSBwYXRoIG11c3QgYmUgYSBzdHJpbmcgb3IgYW4gQXJyYXkuXCIpO1xuICB9XG5cbiAgdGhpcy5fbW9kdWxlcy51bnJlZ2lzdGVyKHBhdGgpO1xuICB0aGlzLl93aXRoQ29tbWl0KGZ1bmN0aW9uICgpIHtcbiAgICB2YXIgcGFyZW50U3RhdGUgPSBnZXROZXN0ZWRTdGF0ZSh0aGlzJDEuc3RhdGUsIHBhdGguc2xpY2UoMCwgLTEpKTtcbiAgICBWdWUuZGVsZXRlKHBhcmVudFN0YXRlLCBwYXRoW3BhdGgubGVuZ3RoIC0gMV0pO1xuICB9KTtcbiAgcmVzZXRTdG9yZSh0aGlzKTtcbn07XG5cblN0b3JlLnByb3RvdHlwZS5ob3RVcGRhdGUgPSBmdW5jdGlvbiBob3RVcGRhdGUgKG5ld09wdGlvbnMpIHtcbiAgdGhpcy5fbW9kdWxlcy51cGRhdGUobmV3T3B0aW9ucyk7XG4gIHJlc2V0U3RvcmUodGhpcywgdHJ1ZSk7XG59O1xuXG5TdG9yZS5wcm90b3R5cGUuX3dpdGhDb21taXQgPSBmdW5jdGlvbiBfd2l0aENvbW1pdCAoZm4pIHtcbiAgdmFyIGNvbW1pdHRpbmcgPSB0aGlzLl9jb21taXR0aW5nO1xuICB0aGlzLl9jb21taXR0aW5nID0gdHJ1ZTtcbiAgZm4oKTtcbiAgdGhpcy5fY29tbWl0dGluZyA9IGNvbW1pdHRpbmc7XG59O1xuXG5PYmplY3QuZGVmaW5lUHJvcGVydGllcyggU3RvcmUucHJvdG90eXBlLCBwcm90b3R5cGVBY2Nlc3NvcnMgKTtcblxuZnVuY3Rpb24gZ2VuZXJpY1N1YnNjcmliZSAoZm4sIHN1YnMpIHtcbiAgaWYgKHN1YnMuaW5kZXhPZihmbikgPCAwKSB7XG4gICAgc3Vicy5wdXNoKGZuKTtcbiAgfVxuICByZXR1cm4gZnVuY3Rpb24gKCkge1xuICAgIHZhciBpID0gc3Vicy5pbmRleE9mKGZuKTtcbiAgICBpZiAoaSA+IC0xKSB7XG4gICAgICBzdWJzLnNwbGljZShpLCAxKTtcbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gcmVzZXRTdG9yZSAoc3RvcmUsIGhvdCkge1xuICBzdG9yZS5fYWN0aW9ucyA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG4gIHN0b3JlLl9tdXRhdGlvbnMgPSBPYmplY3QuY3JlYXRlKG51bGwpO1xuICBzdG9yZS5fd3JhcHBlZEdldHRlcnMgPSBPYmplY3QuY3JlYXRlKG51bGwpO1xuICBzdG9yZS5fbW9kdWxlc05hbWVzcGFjZU1hcCA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG4gIHZhciBzdGF0ZSA9IHN0b3JlLnN0YXRlO1xuICAvLyBpbml0IGFsbCBtb2R1bGVzXG4gIGluc3RhbGxNb2R1bGUoc3RvcmUsIHN0YXRlLCBbXSwgc3RvcmUuX21vZHVsZXMucm9vdCwgdHJ1ZSk7XG4gIC8vIHJlc2V0IHZtXG4gIHJlc2V0U3RvcmVWTShzdG9yZSwgc3RhdGUsIGhvdCk7XG59XG5cbmZ1bmN0aW9uIHJlc2V0U3RvcmVWTSAoc3RvcmUsIHN0YXRlLCBob3QpIHtcbiAgdmFyIG9sZFZtID0gc3RvcmUuX3ZtO1xuXG4gIC8vIGJpbmQgc3RvcmUgcHVibGljIGdldHRlcnNcbiAgc3RvcmUuZ2V0dGVycyA9IHt9O1xuICB2YXIgd3JhcHBlZEdldHRlcnMgPSBzdG9yZS5fd3JhcHBlZEdldHRlcnM7XG4gIHZhciBjb21wdXRlZCA9IHt9O1xuICBmb3JFYWNoVmFsdWUod3JhcHBlZEdldHRlcnMsIGZ1bmN0aW9uIChmbiwga2V5KSB7XG4gICAgLy8gdXNlIGNvbXB1dGVkIHRvIGxldmVyYWdlIGl0cyBsYXp5LWNhY2hpbmcgbWVjaGFuaXNtXG4gICAgY29tcHV0ZWRba2V5XSA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuIGZuKHN0b3JlKTsgfTtcbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoc3RvcmUuZ2V0dGVycywga2V5LCB7XG4gICAgICBnZXQ6IGZ1bmN0aW9uICgpIHsgcmV0dXJuIHN0b3JlLl92bVtrZXldOyB9LFxuICAgICAgZW51bWVyYWJsZTogdHJ1ZSAvLyBmb3IgbG9jYWwgZ2V0dGVyc1xuICAgIH0pO1xuICB9KTtcblxuICAvLyB1c2UgYSBWdWUgaW5zdGFuY2UgdG8gc3RvcmUgdGhlIHN0YXRlIHRyZWVcbiAgLy8gc3VwcHJlc3Mgd2FybmluZ3MganVzdCBpbiBjYXNlIHRoZSB1c2VyIGhhcyBhZGRlZFxuICAvLyBzb21lIGZ1bmt5IGdsb2JhbCBtaXhpbnNcbiAgdmFyIHNpbGVudCA9IFZ1ZS5jb25maWcuc2lsZW50O1xuICBWdWUuY29uZmlnLnNpbGVudCA9IHRydWU7XG4gIHN0b3JlLl92bSA9IG5ldyBWdWUoe1xuICAgIGRhdGE6IHtcbiAgICAgICQkc3RhdGU6IHN0YXRlXG4gICAgfSxcbiAgICBjb21wdXRlZDogY29tcHV0ZWRcbiAgfSk7XG4gIFZ1ZS5jb25maWcuc2lsZW50ID0gc2lsZW50O1xuXG4gIC8vIGVuYWJsZSBzdHJpY3QgbW9kZSBmb3IgbmV3IHZtXG4gIGlmIChzdG9yZS5zdHJpY3QpIHtcbiAgICBlbmFibGVTdHJpY3RNb2RlKHN0b3JlKTtcbiAgfVxuXG4gIGlmIChvbGRWbSkge1xuICAgIGlmIChob3QpIHtcbiAgICAgIC8vIGRpc3BhdGNoIGNoYW5nZXMgaW4gYWxsIHN1YnNjcmliZWQgd2F0Y2hlcnNcbiAgICAgIC8vIHRvIGZvcmNlIGdldHRlciByZS1ldmFsdWF0aW9uIGZvciBob3QgcmVsb2FkaW5nLlxuICAgICAgc3RvcmUuX3dpdGhDb21taXQoZnVuY3Rpb24gKCkge1xuICAgICAgICBvbGRWbS5fZGF0YS4kJHN0YXRlID0gbnVsbDtcbiAgICAgIH0pO1xuICAgIH1cbiAgICBWdWUubmV4dFRpY2soZnVuY3Rpb24gKCkgeyByZXR1cm4gb2xkVm0uJGRlc3Ryb3koKTsgfSk7XG4gIH1cbn1cblxuZnVuY3Rpb24gaW5zdGFsbE1vZHVsZSAoc3RvcmUsIHJvb3RTdGF0ZSwgcGF0aCwgbW9kdWxlLCBob3QpIHtcbiAgdmFyIGlzUm9vdCA9ICFwYXRoLmxlbmd0aDtcbiAgdmFyIG5hbWVzcGFjZSA9IHN0b3JlLl9tb2R1bGVzLmdldE5hbWVzcGFjZShwYXRoKTtcblxuICAvLyByZWdpc3RlciBpbiBuYW1lc3BhY2UgbWFwXG4gIGlmIChtb2R1bGUubmFtZXNwYWNlZCkge1xuICAgIHN0b3JlLl9tb2R1bGVzTmFtZXNwYWNlTWFwW25hbWVzcGFjZV0gPSBtb2R1bGU7XG4gIH1cblxuICAvLyBzZXQgc3RhdGVcbiAgaWYgKCFpc1Jvb3QgJiYgIWhvdCkge1xuICAgIHZhciBwYXJlbnRTdGF0ZSA9IGdldE5lc3RlZFN0YXRlKHJvb3RTdGF0ZSwgcGF0aC5zbGljZSgwLCAtMSkpO1xuICAgIHZhciBtb2R1bGVOYW1lID0gcGF0aFtwYXRoLmxlbmd0aCAtIDFdO1xuICAgIHN0b3JlLl93aXRoQ29tbWl0KGZ1bmN0aW9uICgpIHtcbiAgICAgIFZ1ZS5zZXQocGFyZW50U3RhdGUsIG1vZHVsZU5hbWUsIG1vZHVsZS5zdGF0ZSk7XG4gICAgfSk7XG4gIH1cblxuICB2YXIgbG9jYWwgPSBtb2R1bGUuY29udGV4dCA9IG1ha2VMb2NhbENvbnRleHQoc3RvcmUsIG5hbWVzcGFjZSwgcGF0aCk7XG5cbiAgbW9kdWxlLmZvckVhY2hNdXRhdGlvbihmdW5jdGlvbiAobXV0YXRpb24sIGtleSkge1xuICAgIHZhciBuYW1lc3BhY2VkVHlwZSA9IG5hbWVzcGFjZSArIGtleTtcbiAgICByZWdpc3Rlck11dGF0aW9uKHN0b3JlLCBuYW1lc3BhY2VkVHlwZSwgbXV0YXRpb24sIGxvY2FsKTtcbiAgfSk7XG5cbiAgbW9kdWxlLmZvckVhY2hBY3Rpb24oZnVuY3Rpb24gKGFjdGlvbiwga2V5KSB7XG4gICAgdmFyIHR5cGUgPSBhY3Rpb24ucm9vdCA/IGtleSA6IG5hbWVzcGFjZSArIGtleTtcbiAgICB2YXIgaGFuZGxlciA9IGFjdGlvbi5oYW5kbGVyIHx8IGFjdGlvbjtcbiAgICByZWdpc3RlckFjdGlvbihzdG9yZSwgdHlwZSwgaGFuZGxlciwgbG9jYWwpO1xuICB9KTtcblxuICBtb2R1bGUuZm9yRWFjaEdldHRlcihmdW5jdGlvbiAoZ2V0dGVyLCBrZXkpIHtcbiAgICB2YXIgbmFtZXNwYWNlZFR5cGUgPSBuYW1lc3BhY2UgKyBrZXk7XG4gICAgcmVnaXN0ZXJHZXR0ZXIoc3RvcmUsIG5hbWVzcGFjZWRUeXBlLCBnZXR0ZXIsIGxvY2FsKTtcbiAgfSk7XG5cbiAgbW9kdWxlLmZvckVhY2hDaGlsZChmdW5jdGlvbiAoY2hpbGQsIGtleSkge1xuICAgIGluc3RhbGxNb2R1bGUoc3RvcmUsIHJvb3RTdGF0ZSwgcGF0aC5jb25jYXQoa2V5KSwgY2hpbGQsIGhvdCk7XG4gIH0pO1xufVxuXG4vKipcbiAqIG1ha2UgbG9jYWxpemVkIGRpc3BhdGNoLCBjb21taXQsIGdldHRlcnMgYW5kIHN0YXRlXG4gKiBpZiB0aGVyZSBpcyBubyBuYW1lc3BhY2UsIGp1c3QgdXNlIHJvb3Qgb25lc1xuICovXG5mdW5jdGlvbiBtYWtlTG9jYWxDb250ZXh0IChzdG9yZSwgbmFtZXNwYWNlLCBwYXRoKSB7XG4gIHZhciBub05hbWVzcGFjZSA9IG5hbWVzcGFjZSA9PT0gJyc7XG5cbiAgdmFyIGxvY2FsID0ge1xuICAgIGRpc3BhdGNoOiBub05hbWVzcGFjZSA/IHN0b3JlLmRpc3BhdGNoIDogZnVuY3Rpb24gKF90eXBlLCBfcGF5bG9hZCwgX29wdGlvbnMpIHtcbiAgICAgIHZhciBhcmdzID0gdW5pZnlPYmplY3RTdHlsZShfdHlwZSwgX3BheWxvYWQsIF9vcHRpb25zKTtcbiAgICAgIHZhciBwYXlsb2FkID0gYXJncy5wYXlsb2FkO1xuICAgICAgdmFyIG9wdGlvbnMgPSBhcmdzLm9wdGlvbnM7XG4gICAgICB2YXIgdHlwZSA9IGFyZ3MudHlwZTtcblxuICAgICAgaWYgKCFvcHRpb25zIHx8ICFvcHRpb25zLnJvb3QpIHtcbiAgICAgICAgdHlwZSA9IG5hbWVzcGFjZSArIHR5cGU7XG4gICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmICFzdG9yZS5fYWN0aW9uc1t0eXBlXSkge1xuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoKFwiW3Z1ZXhdIHVua25vd24gbG9jYWwgYWN0aW9uIHR5cGU6IFwiICsgKGFyZ3MudHlwZSkgKyBcIiwgZ2xvYmFsIHR5cGU6IFwiICsgdHlwZSkpO1xuICAgICAgICAgIHJldHVyblxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBzdG9yZS5kaXNwYXRjaCh0eXBlLCBwYXlsb2FkKVxuICAgIH0sXG5cbiAgICBjb21taXQ6IG5vTmFtZXNwYWNlID8gc3RvcmUuY29tbWl0IDogZnVuY3Rpb24gKF90eXBlLCBfcGF5bG9hZCwgX29wdGlvbnMpIHtcbiAgICAgIHZhciBhcmdzID0gdW5pZnlPYmplY3RTdHlsZShfdHlwZSwgX3BheWxvYWQsIF9vcHRpb25zKTtcbiAgICAgIHZhciBwYXlsb2FkID0gYXJncy5wYXlsb2FkO1xuICAgICAgdmFyIG9wdGlvbnMgPSBhcmdzLm9wdGlvbnM7XG4gICAgICB2YXIgdHlwZSA9IGFyZ3MudHlwZTtcblxuICAgICAgaWYgKCFvcHRpb25zIHx8ICFvcHRpb25zLnJvb3QpIHtcbiAgICAgICAgdHlwZSA9IG5hbWVzcGFjZSArIHR5cGU7XG4gICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmICFzdG9yZS5fbXV0YXRpb25zW3R5cGVdKSB7XG4gICAgICAgICAgY29uc29sZS5lcnJvcigoXCJbdnVleF0gdW5rbm93biBsb2NhbCBtdXRhdGlvbiB0eXBlOiBcIiArIChhcmdzLnR5cGUpICsgXCIsIGdsb2JhbCB0eXBlOiBcIiArIHR5cGUpKTtcbiAgICAgICAgICByZXR1cm5cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBzdG9yZS5jb21taXQodHlwZSwgcGF5bG9hZCwgb3B0aW9ucyk7XG4gICAgfVxuICB9O1xuXG4gIC8vIGdldHRlcnMgYW5kIHN0YXRlIG9iamVjdCBtdXN0IGJlIGdvdHRlbiBsYXppbHlcbiAgLy8gYmVjYXVzZSB0aGV5IHdpbGwgYmUgY2hhbmdlZCBieSB2bSB1cGRhdGVcbiAgT2JqZWN0LmRlZmluZVByb3BlcnRpZXMobG9jYWwsIHtcbiAgICBnZXR0ZXJzOiB7XG4gICAgICBnZXQ6IG5vTmFtZXNwYWNlXG4gICAgICAgID8gZnVuY3Rpb24gKCkgeyByZXR1cm4gc3RvcmUuZ2V0dGVyczsgfVxuICAgICAgICA6IGZ1bmN0aW9uICgpIHsgcmV0dXJuIG1ha2VMb2NhbEdldHRlcnMoc3RvcmUsIG5hbWVzcGFjZSk7IH1cbiAgICB9LFxuICAgIHN0YXRlOiB7XG4gICAgICBnZXQ6IGZ1bmN0aW9uICgpIHsgcmV0dXJuIGdldE5lc3RlZFN0YXRlKHN0b3JlLnN0YXRlLCBwYXRoKTsgfVxuICAgIH1cbiAgfSk7XG5cbiAgcmV0dXJuIGxvY2FsXG59XG5cbmZ1bmN0aW9uIG1ha2VMb2NhbEdldHRlcnMgKHN0b3JlLCBuYW1lc3BhY2UpIHtcbiAgdmFyIGdldHRlcnNQcm94eSA9IHt9O1xuXG4gIHZhciBzcGxpdFBvcyA9IG5hbWVzcGFjZS5sZW5ndGg7XG4gIE9iamVjdC5rZXlzKHN0b3JlLmdldHRlcnMpLmZvckVhY2goZnVuY3Rpb24gKHR5cGUpIHtcbiAgICAvLyBza2lwIGlmIHRoZSB0YXJnZXQgZ2V0dGVyIGlzIG5vdCBtYXRjaCB0aGlzIG5hbWVzcGFjZVxuICAgIGlmICh0eXBlLnNsaWNlKDAsIHNwbGl0UG9zKSAhPT0gbmFtZXNwYWNlKSB7IHJldHVybiB9XG5cbiAgICAvLyBleHRyYWN0IGxvY2FsIGdldHRlciB0eXBlXG4gICAgdmFyIGxvY2FsVHlwZSA9IHR5cGUuc2xpY2Uoc3BsaXRQb3MpO1xuXG4gICAgLy8gQWRkIGEgcG9ydCB0byB0aGUgZ2V0dGVycyBwcm94eS5cbiAgICAvLyBEZWZpbmUgYXMgZ2V0dGVyIHByb3BlcnR5IGJlY2F1c2VcbiAgICAvLyB3ZSBkbyBub3Qgd2FudCB0byBldmFsdWF0ZSB0aGUgZ2V0dGVycyBpbiB0aGlzIHRpbWUuXG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGdldHRlcnNQcm94eSwgbG9jYWxUeXBlLCB7XG4gICAgICBnZXQ6IGZ1bmN0aW9uICgpIHsgcmV0dXJuIHN0b3JlLmdldHRlcnNbdHlwZV07IH0sXG4gICAgICBlbnVtZXJhYmxlOiB0cnVlXG4gICAgfSk7XG4gIH0pO1xuXG4gIHJldHVybiBnZXR0ZXJzUHJveHlcbn1cblxuZnVuY3Rpb24gcmVnaXN0ZXJNdXRhdGlvbiAoc3RvcmUsIHR5cGUsIGhhbmRsZXIsIGxvY2FsKSB7XG4gIHZhciBlbnRyeSA9IHN0b3JlLl9tdXRhdGlvbnNbdHlwZV0gfHwgKHN0b3JlLl9tdXRhdGlvbnNbdHlwZV0gPSBbXSk7XG4gIGVudHJ5LnB1c2goZnVuY3Rpb24gd3JhcHBlZE11dGF0aW9uSGFuZGxlciAocGF5bG9hZCkge1xuICAgIGhhbmRsZXIuY2FsbChzdG9yZSwgbG9jYWwuc3RhdGUsIHBheWxvYWQpO1xuICB9KTtcbn1cblxuZnVuY3Rpb24gcmVnaXN0ZXJBY3Rpb24gKHN0b3JlLCB0eXBlLCBoYW5kbGVyLCBsb2NhbCkge1xuICB2YXIgZW50cnkgPSBzdG9yZS5fYWN0aW9uc1t0eXBlXSB8fCAoc3RvcmUuX2FjdGlvbnNbdHlwZV0gPSBbXSk7XG4gIGVudHJ5LnB1c2goZnVuY3Rpb24gd3JhcHBlZEFjdGlvbkhhbmRsZXIgKHBheWxvYWQsIGNiKSB7XG4gICAgdmFyIHJlcyA9IGhhbmRsZXIuY2FsbChzdG9yZSwge1xuICAgICAgZGlzcGF0Y2g6IGxvY2FsLmRpc3BhdGNoLFxuICAgICAgY29tbWl0OiBsb2NhbC5jb21taXQsXG4gICAgICBnZXR0ZXJzOiBsb2NhbC5nZXR0ZXJzLFxuICAgICAgc3RhdGU6IGxvY2FsLnN0YXRlLFxuICAgICAgcm9vdEdldHRlcnM6IHN0b3JlLmdldHRlcnMsXG4gICAgICByb290U3RhdGU6IHN0b3JlLnN0YXRlXG4gICAgfSwgcGF5bG9hZCwgY2IpO1xuICAgIGlmICghaXNQcm9taXNlKHJlcykpIHtcbiAgICAgIHJlcyA9IFByb21pc2UucmVzb2x2ZShyZXMpO1xuICAgIH1cbiAgICBpZiAoc3RvcmUuX2RldnRvb2xIb29rKSB7XG4gICAgICByZXR1cm4gcmVzLmNhdGNoKGZ1bmN0aW9uIChlcnIpIHtcbiAgICAgICAgc3RvcmUuX2RldnRvb2xIb29rLmVtaXQoJ3Z1ZXg6ZXJyb3InLCBlcnIpO1xuICAgICAgICB0aHJvdyBlcnJcbiAgICAgIH0pXG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiByZXNcbiAgICB9XG4gIH0pO1xufVxuXG5mdW5jdGlvbiByZWdpc3RlckdldHRlciAoc3RvcmUsIHR5cGUsIHJhd0dldHRlciwgbG9jYWwpIHtcbiAgaWYgKHN0b3JlLl93cmFwcGVkR2V0dGVyc1t0eXBlXSkge1xuICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICBjb25zb2xlLmVycm9yKChcIlt2dWV4XSBkdXBsaWNhdGUgZ2V0dGVyIGtleTogXCIgKyB0eXBlKSk7XG4gICAgfVxuICAgIHJldHVyblxuICB9XG4gIHN0b3JlLl93cmFwcGVkR2V0dGVyc1t0eXBlXSA9IGZ1bmN0aW9uIHdyYXBwZWRHZXR0ZXIgKHN0b3JlKSB7XG4gICAgcmV0dXJuIHJhd0dldHRlcihcbiAgICAgIGxvY2FsLnN0YXRlLCAvLyBsb2NhbCBzdGF0ZVxuICAgICAgbG9jYWwuZ2V0dGVycywgLy8gbG9jYWwgZ2V0dGVyc1xuICAgICAgc3RvcmUuc3RhdGUsIC8vIHJvb3Qgc3RhdGVcbiAgICAgIHN0b3JlLmdldHRlcnMgLy8gcm9vdCBnZXR0ZXJzXG4gICAgKVxuICB9O1xufVxuXG5mdW5jdGlvbiBlbmFibGVTdHJpY3RNb2RlIChzdG9yZSkge1xuICBzdG9yZS5fdm0uJHdhdGNoKGZ1bmN0aW9uICgpIHsgcmV0dXJuIHRoaXMuX2RhdGEuJCRzdGF0ZSB9LCBmdW5jdGlvbiAoKSB7XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgIGFzc2VydChzdG9yZS5fY29tbWl0dGluZywgXCJEbyBub3QgbXV0YXRlIHZ1ZXggc3RvcmUgc3RhdGUgb3V0c2lkZSBtdXRhdGlvbiBoYW5kbGVycy5cIik7XG4gICAgfVxuICB9LCB7IGRlZXA6IHRydWUsIHN5bmM6IHRydWUgfSk7XG59XG5cbmZ1bmN0aW9uIGdldE5lc3RlZFN0YXRlIChzdGF0ZSwgcGF0aCkge1xuICByZXR1cm4gcGF0aC5sZW5ndGhcbiAgICA/IHBhdGgucmVkdWNlKGZ1bmN0aW9uIChzdGF0ZSwga2V5KSB7IHJldHVybiBzdGF0ZVtrZXldOyB9LCBzdGF0ZSlcbiAgICA6IHN0YXRlXG59XG5cbmZ1bmN0aW9uIHVuaWZ5T2JqZWN0U3R5bGUgKHR5cGUsIHBheWxvYWQsIG9wdGlvbnMpIHtcbiAgaWYgKGlzT2JqZWN0KHR5cGUpICYmIHR5cGUudHlwZSkge1xuICAgIG9wdGlvbnMgPSBwYXlsb2FkO1xuICAgIHBheWxvYWQgPSB0eXBlO1xuICAgIHR5cGUgPSB0eXBlLnR5cGU7XG4gIH1cblxuICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgIGFzc2VydCh0eXBlb2YgdHlwZSA9PT0gJ3N0cmluZycsIChcIkV4cGVjdHMgc3RyaW5nIGFzIHRoZSB0eXBlLCBidXQgZm91bmQgXCIgKyAodHlwZW9mIHR5cGUpICsgXCIuXCIpKTtcbiAgfVxuXG4gIHJldHVybiB7IHR5cGU6IHR5cGUsIHBheWxvYWQ6IHBheWxvYWQsIG9wdGlvbnM6IG9wdGlvbnMgfVxufVxuXG5mdW5jdGlvbiBpbnN0YWxsIChfVnVlKSB7XG4gIGlmIChWdWUgJiYgX1Z1ZSA9PT0gVnVlKSB7XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoXG4gICAgICAgICdbdnVleF0gYWxyZWFkeSBpbnN0YWxsZWQuIFZ1ZS51c2UoVnVleCkgc2hvdWxkIGJlIGNhbGxlZCBvbmx5IG9uY2UuJ1xuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuXG4gIH1cbiAgVnVlID0gX1Z1ZTtcbiAgYXBwbHlNaXhpbihWdWUpO1xufVxuXG52YXIgbWFwU3RhdGUgPSBub3JtYWxpemVOYW1lc3BhY2UoZnVuY3Rpb24gKG5hbWVzcGFjZSwgc3RhdGVzKSB7XG4gIHZhciByZXMgPSB7fTtcbiAgbm9ybWFsaXplTWFwKHN0YXRlcykuZm9yRWFjaChmdW5jdGlvbiAocmVmKSB7XG4gICAgdmFyIGtleSA9IHJlZi5rZXk7XG4gICAgdmFyIHZhbCA9IHJlZi52YWw7XG5cbiAgICByZXNba2V5XSA9IGZ1bmN0aW9uIG1hcHBlZFN0YXRlICgpIHtcbiAgICAgIHZhciBzdGF0ZSA9IHRoaXMuJHN0b3JlLnN0YXRlO1xuICAgICAgdmFyIGdldHRlcnMgPSB0aGlzLiRzdG9yZS5nZXR0ZXJzO1xuICAgICAgaWYgKG5hbWVzcGFjZSkge1xuICAgICAgICB2YXIgbW9kdWxlID0gZ2V0TW9kdWxlQnlOYW1lc3BhY2UodGhpcy4kc3RvcmUsICdtYXBTdGF0ZScsIG5hbWVzcGFjZSk7XG4gICAgICAgIGlmICghbW9kdWxlKSB7XG4gICAgICAgICAgcmV0dXJuXG4gICAgICAgIH1cbiAgICAgICAgc3RhdGUgPSBtb2R1bGUuY29udGV4dC5zdGF0ZTtcbiAgICAgICAgZ2V0dGVycyA9IG1vZHVsZS5jb250ZXh0LmdldHRlcnM7XG4gICAgICB9XG4gICAgICByZXR1cm4gdHlwZW9mIHZhbCA9PT0gJ2Z1bmN0aW9uJ1xuICAgICAgICA/IHZhbC5jYWxsKHRoaXMsIHN0YXRlLCBnZXR0ZXJzKVxuICAgICAgICA6IHN0YXRlW3ZhbF1cbiAgICB9O1xuICAgIC8vIG1hcmsgdnVleCBnZXR0ZXIgZm9yIGRldnRvb2xzXG4gICAgcmVzW2tleV0udnVleCA9IHRydWU7XG4gIH0pO1xuICByZXR1cm4gcmVzXG59KTtcblxudmFyIG1hcE11dGF0aW9ucyA9IG5vcm1hbGl6ZU5hbWVzcGFjZShmdW5jdGlvbiAobmFtZXNwYWNlLCBtdXRhdGlvbnMpIHtcbiAgdmFyIHJlcyA9IHt9O1xuICBub3JtYWxpemVNYXAobXV0YXRpb25zKS5mb3JFYWNoKGZ1bmN0aW9uIChyZWYpIHtcbiAgICB2YXIga2V5ID0gcmVmLmtleTtcbiAgICB2YXIgdmFsID0gcmVmLnZhbDtcblxuICAgIHJlc1trZXldID0gZnVuY3Rpb24gbWFwcGVkTXV0YXRpb24gKCkge1xuICAgICAgdmFyIGFyZ3MgPSBbXSwgbGVuID0gYXJndW1lbnRzLmxlbmd0aDtcbiAgICAgIHdoaWxlICggbGVuLS0gKSBhcmdzWyBsZW4gXSA9IGFyZ3VtZW50c1sgbGVuIF07XG5cbiAgICAgIHZhciBjb21taXQgPSB0aGlzLiRzdG9yZS5jb21taXQ7XG4gICAgICBpZiAobmFtZXNwYWNlKSB7XG4gICAgICAgIHZhciBtb2R1bGUgPSBnZXRNb2R1bGVCeU5hbWVzcGFjZSh0aGlzLiRzdG9yZSwgJ21hcE11dGF0aW9ucycsIG5hbWVzcGFjZSk7XG4gICAgICAgIGlmICghbW9kdWxlKSB7XG4gICAgICAgICAgcmV0dXJuXG4gICAgICAgIH1cbiAgICAgICAgY29tbWl0ID0gbW9kdWxlLmNvbnRleHQuY29tbWl0O1xuICAgICAgfVxuICAgICAgcmV0dXJuIHR5cGVvZiB2YWwgPT09ICdmdW5jdGlvbidcbiAgICAgICAgPyB2YWwuYXBwbHkodGhpcywgW2NvbW1pdF0uY29uY2F0KGFyZ3MpKVxuICAgICAgICA6IGNvbW1pdC5hcHBseSh0aGlzLiRzdG9yZSwgW3ZhbF0uY29uY2F0KGFyZ3MpKVxuICAgIH07XG4gIH0pO1xuICByZXR1cm4gcmVzXG59KTtcblxudmFyIG1hcEdldHRlcnMgPSBub3JtYWxpemVOYW1lc3BhY2UoZnVuY3Rpb24gKG5hbWVzcGFjZSwgZ2V0dGVycykge1xuICB2YXIgcmVzID0ge307XG4gIG5vcm1hbGl6ZU1hcChnZXR0ZXJzKS5mb3JFYWNoKGZ1bmN0aW9uIChyZWYpIHtcbiAgICB2YXIga2V5ID0gcmVmLmtleTtcbiAgICB2YXIgdmFsID0gcmVmLnZhbDtcblxuICAgIHZhbCA9IG5hbWVzcGFjZSArIHZhbDtcbiAgICByZXNba2V5XSA9IGZ1bmN0aW9uIG1hcHBlZEdldHRlciAoKSB7XG4gICAgICBpZiAobmFtZXNwYWNlICYmICFnZXRNb2R1bGVCeU5hbWVzcGFjZSh0aGlzLiRzdG9yZSwgJ21hcEdldHRlcnMnLCBuYW1lc3BhY2UpKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgISh2YWwgaW4gdGhpcy4kc3RvcmUuZ2V0dGVycykpIHtcbiAgICAgICAgY29uc29sZS5lcnJvcigoXCJbdnVleF0gdW5rbm93biBnZXR0ZXI6IFwiICsgdmFsKSk7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuICAgICAgcmV0dXJuIHRoaXMuJHN0b3JlLmdldHRlcnNbdmFsXVxuICAgIH07XG4gICAgLy8gbWFyayB2dWV4IGdldHRlciBmb3IgZGV2dG9vbHNcbiAgICByZXNba2V5XS52dWV4ID0gdHJ1ZTtcbiAgfSk7XG4gIHJldHVybiByZXNcbn0pO1xuXG52YXIgbWFwQWN0aW9ucyA9IG5vcm1hbGl6ZU5hbWVzcGFjZShmdW5jdGlvbiAobmFtZXNwYWNlLCBhY3Rpb25zKSB7XG4gIHZhciByZXMgPSB7fTtcbiAgbm9ybWFsaXplTWFwKGFjdGlvbnMpLmZvckVhY2goZnVuY3Rpb24gKHJlZikge1xuICAgIHZhciBrZXkgPSByZWYua2V5O1xuICAgIHZhciB2YWwgPSByZWYudmFsO1xuXG4gICAgcmVzW2tleV0gPSBmdW5jdGlvbiBtYXBwZWRBY3Rpb24gKCkge1xuICAgICAgdmFyIGFyZ3MgPSBbXSwgbGVuID0gYXJndW1lbnRzLmxlbmd0aDtcbiAgICAgIHdoaWxlICggbGVuLS0gKSBhcmdzWyBsZW4gXSA9IGFyZ3VtZW50c1sgbGVuIF07XG5cbiAgICAgIHZhciBkaXNwYXRjaCA9IHRoaXMuJHN0b3JlLmRpc3BhdGNoO1xuICAgICAgaWYgKG5hbWVzcGFjZSkge1xuICAgICAgICB2YXIgbW9kdWxlID0gZ2V0TW9kdWxlQnlOYW1lc3BhY2UodGhpcy4kc3RvcmUsICdtYXBBY3Rpb25zJywgbmFtZXNwYWNlKTtcbiAgICAgICAgaWYgKCFtb2R1bGUpIHtcbiAgICAgICAgICByZXR1cm5cbiAgICAgICAgfVxuICAgICAgICBkaXNwYXRjaCA9IG1vZHVsZS5jb250ZXh0LmRpc3BhdGNoO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHR5cGVvZiB2YWwgPT09ICdmdW5jdGlvbidcbiAgICAgICAgPyB2YWwuYXBwbHkodGhpcywgW2Rpc3BhdGNoXS5jb25jYXQoYXJncykpXG4gICAgICAgIDogZGlzcGF0Y2guYXBwbHkodGhpcy4kc3RvcmUsIFt2YWxdLmNvbmNhdChhcmdzKSlcbiAgICB9O1xuICB9KTtcbiAgcmV0dXJuIHJlc1xufSk7XG5cbnZhciBjcmVhdGVOYW1lc3BhY2VkSGVscGVycyA9IGZ1bmN0aW9uIChuYW1lc3BhY2UpIHsgcmV0dXJuICh7XG4gIG1hcFN0YXRlOiBtYXBTdGF0ZS5iaW5kKG51bGwsIG5hbWVzcGFjZSksXG4gIG1hcEdldHRlcnM6IG1hcEdldHRlcnMuYmluZChudWxsLCBuYW1lc3BhY2UpLFxuICBtYXBNdXRhdGlvbnM6IG1hcE11dGF0aW9ucy5iaW5kKG51bGwsIG5hbWVzcGFjZSksXG4gIG1hcEFjdGlvbnM6IG1hcEFjdGlvbnMuYmluZChudWxsLCBuYW1lc3BhY2UpXG59KTsgfTtcblxuZnVuY3Rpb24gbm9ybWFsaXplTWFwIChtYXApIHtcbiAgcmV0dXJuIEFycmF5LmlzQXJyYXkobWFwKVxuICAgID8gbWFwLm1hcChmdW5jdGlvbiAoa2V5KSB7IHJldHVybiAoeyBrZXk6IGtleSwgdmFsOiBrZXkgfSk7IH0pXG4gICAgOiBPYmplY3Qua2V5cyhtYXApLm1hcChmdW5jdGlvbiAoa2V5KSB7IHJldHVybiAoeyBrZXk6IGtleSwgdmFsOiBtYXBba2V5XSB9KTsgfSlcbn1cblxuZnVuY3Rpb24gbm9ybWFsaXplTmFtZXNwYWNlIChmbikge1xuICByZXR1cm4gZnVuY3Rpb24gKG5hbWVzcGFjZSwgbWFwKSB7XG4gICAgaWYgKHR5cGVvZiBuYW1lc3BhY2UgIT09ICdzdHJpbmcnKSB7XG4gICAgICBtYXAgPSBuYW1lc3BhY2U7XG4gICAgICBuYW1lc3BhY2UgPSAnJztcbiAgICB9IGVsc2UgaWYgKG5hbWVzcGFjZS5jaGFyQXQobmFtZXNwYWNlLmxlbmd0aCAtIDEpICE9PSAnLycpIHtcbiAgICAgIG5hbWVzcGFjZSArPSAnLyc7XG4gICAgfVxuICAgIHJldHVybiBmbihuYW1lc3BhY2UsIG1hcClcbiAgfVxufVxuXG5mdW5jdGlvbiBnZXRNb2R1bGVCeU5hbWVzcGFjZSAoc3RvcmUsIGhlbHBlciwgbmFtZXNwYWNlKSB7XG4gIHZhciBtb2R1bGUgPSBzdG9yZS5fbW9kdWxlc05hbWVzcGFjZU1hcFtuYW1lc3BhY2VdO1xuICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiAhbW9kdWxlKSB7XG4gICAgY29uc29sZS5lcnJvcigoXCJbdnVleF0gbW9kdWxlIG5hbWVzcGFjZSBub3QgZm91bmQgaW4gXCIgKyBoZWxwZXIgKyBcIigpOiBcIiArIG5hbWVzcGFjZSkpO1xuICB9XG4gIHJldHVybiBtb2R1bGVcbn1cblxudmFyIGluZGV4X2VzbSA9IHtcbiAgU3RvcmU6IFN0b3JlLFxuICBpbnN0YWxsOiBpbnN0YWxsLFxuICB2ZXJzaW9uOiAnMy4wLjEnLFxuICBtYXBTdGF0ZTogbWFwU3RhdGUsXG4gIG1hcE11dGF0aW9uczogbWFwTXV0YXRpb25zLFxuICBtYXBHZXR0ZXJzOiBtYXBHZXR0ZXJzLFxuICBtYXBBY3Rpb25zOiBtYXBBY3Rpb25zLFxuICBjcmVhdGVOYW1lc3BhY2VkSGVscGVyczogY3JlYXRlTmFtZXNwYWNlZEhlbHBlcnNcbn07XG5cbmV4cG9ydCB7IFN0b3JlLCBpbnN0YWxsLCBtYXBTdGF0ZSwgbWFwTXV0YXRpb25zLCBtYXBHZXR0ZXJzLCBtYXBBY3Rpb25zLCBjcmVhdGVOYW1lc3BhY2VkSGVscGVycyB9O1xuZXhwb3J0IGRlZmF1bHQgaW5kZXhfZXNtO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvdnVleC9kaXN0L3Z1ZXguZXNtLmpzXG4vLyBtb2R1bGUgaWQgPSA2NlxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///66\n"); /***/ }), /* 67 */ -/***/ (function(module, exports, __webpack_require__) { +/***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("\n\n/**\n * Syntactic sugar for invoking a function and expanding an array for arguments.\n *\n * Common use case would be to use `Function.prototype.apply`.\n *\n * ```js\n * function f(x, y, z) {}\n * var args = [1, 2, 3];\n * f.apply(null, args);\n * ```\n *\n * With `spread` this example can be re-written.\n *\n * ```js\n * spread(function(x, y, z) {})([1, 2, 3]);\n * ```\n *\n * @param {Function} callback\n * @returns {Function}\n */\nmodule.exports = function spread(callback) {\n return function wrap(arr) {\n return callback.apply(null, arr);\n };\n};\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvc3ByZWFkLmpzP2E3MTEiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLCtCQUErQjtBQUMvQjtBQUNBO0FBQ0EsV0FBVyxTQUFTO0FBQ3BCLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJmaWxlIjoiNjcuanMiLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIHN0cmljdCc7XG5cbi8qKlxuICogU3ludGFjdGljIHN1Z2FyIGZvciBpbnZva2luZyBhIGZ1bmN0aW9uIGFuZCBleHBhbmRpbmcgYW4gYXJyYXkgZm9yIGFyZ3VtZW50cy5cbiAqXG4gKiBDb21tb24gdXNlIGNhc2Ugd291bGQgYmUgdG8gdXNlIGBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHlgLlxuICpcbiAqICBgYGBqc1xuICogIGZ1bmN0aW9uIGYoeCwgeSwgeikge31cbiAqICB2YXIgYXJncyA9IFsxLCAyLCAzXTtcbiAqICBmLmFwcGx5KG51bGwsIGFyZ3MpO1xuICogIGBgYFxuICpcbiAqIFdpdGggYHNwcmVhZGAgdGhpcyBleGFtcGxlIGNhbiBiZSByZS13cml0dGVuLlxuICpcbiAqICBgYGBqc1xuICogIHNwcmVhZChmdW5jdGlvbih4LCB5LCB6KSB7fSkoWzEsIDIsIDNdKTtcbiAqICBgYGBcbiAqXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBjYWxsYmFja1xuICogQHJldHVybnMge0Z1bmN0aW9ufVxuICovXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIHNwcmVhZChjYWxsYmFjaykge1xuICByZXR1cm4gZnVuY3Rpb24gd3JhcChhcnIpIHtcbiAgICByZXR1cm4gY2FsbGJhY2suYXBwbHkobnVsbCwgYXJyKTtcbiAgfTtcbn07XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvaGVscGVycy9zcHJlYWQuanNcbi8vIG1vZHVsZSBpZCA9IDY3XG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///67\n"); +eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(6);\n\n\nvar orderGroups = function orderGroups(groups, orderBy) {\n\t/* const SORT_USERCOUNT = 1;\n * const SORT_GROUPNAME = 2;\n * https://github.com/nextcloud/server/blob/208e38e84e1a07a49699aa90dc5b7272d24489f0/lib/private/Group/MetaData.php#L34\n */\n\tif (orderBy === 1) {\n\t\treturn groups.sort(function (a, b) {\n\t\t\treturn a.usercount < b.usercount;\n\t\t});\n\t} else {\n\t\treturn groups.sort(function (a, b) {\n\t\t\treturn a.name.localeCompare(b.name);\n\t\t});\n\t}\n};\n\nvar state = {\n\tusers: [],\n\tgroups: [],\n\torderBy: 1,\n\tminPasswordLength: 0,\n\tusersOffset: 0,\n\tusersLimit: 25,\n\tuserCount: 0\n};\n\nvar mutations = {\n\tappendUsers: function appendUsers(state, usersObj) {\n\t\t// convert obj to array\n\t\tvar users = state.users.concat(Object.keys(usersObj).map(function (userid) {\n\t\t\treturn usersObj[userid];\n\t\t}));\n\t\tstate.usersOffset += state.usersLimit;\n\t\tstate.users = users;\n\t},\n\tsetPasswordPolicyMinLength: function setPasswordPolicyMinLength(state, length) {\n\t\tstate.minPasswordLength = length !== '' ? length : 0;\n\t},\n\tinitGroups: function initGroups(state, _ref) {\n\t\tvar groups = _ref.groups,\n\t\t orderBy = _ref.orderBy,\n\t\t userCount = _ref.userCount;\n\n\t\tstate.groups = groups;\n\t\tstate.orderBy = orderBy;\n\t\tstate.userCount = userCount;\n\t\tstate.groups = orderGroups(state.groups, state.orderBy);\n\t},\n\taddGroup: function addGroup(state, gid) {\n\t\ttry {\n\t\t\tstate.groups.push({\n\t\t\t\tid: gid,\n\t\t\t\tname: gid,\n\t\t\t\tusercount: 0 // user will be added after the creation\n\t\t\t});\n\t\t\tstate.groups = orderGroups(state.groups, state.orderBy);\n\t\t} catch (e) {\n\t\t\tconsole.log('Can\\'t create group', e);\n\t\t}\n\t},\n\tremoveGroup: function removeGroup(state, gid) {\n\t\tvar groupIndex = state.groups.findIndex(function (groupSearch) {\n\t\t\treturn groupSearch.id == gid;\n\t\t});\n\t\tif (groupIndex >= 0) {\n\t\t\tstate.groups.splice(groupIndex, 1);\n\t\t}\n\t},\n\taddUserGroup: function addUserGroup(state, _ref2) {\n\t\tvar userid = _ref2.userid,\n\t\t gid = _ref2.gid;\n\n\t\t// this should not be needed as it would means the user contains a group\n\t\t// the server database doesn't have.\n\t\tvar group = state.groups.find(function (groupSearch) {\n\t\t\treturn groupSearch.id == gid;\n\t\t});\n\t\tif (group) {\n\t\t\tgroup.usercount++; // increase count\n\t\t}\n\t\tvar groups = state.users.find(function (user) {\n\t\t\treturn user.id == userid;\n\t\t}).groups;\n\t\tgroups.push(gid);\n\t\tstate.groups = orderGroups(state.groups, state.orderBy);\n\t},\n\tremoveUserGroup: function removeUserGroup(state, _ref3) {\n\t\tvar userid = _ref3.userid,\n\t\t gid = _ref3.gid;\n\n\t\t// this should not be needed as it would means the user contains a group\n\t\t// the server database doesn't have.\n\t\tvar group = state.groups.find(function (groupSearch) {\n\t\t\treturn groupSearch.id == gid;\n\t\t});\n\t\tif (group) {\n\t\t\tgroup.usercount--; // lower count\n\t\t}\n\t\tvar groups = state.users.find(function (user) {\n\t\t\treturn user.id == userid;\n\t\t}).groups;\n\t\tgroups.splice(groups.indexOf(gid), 1);\n\t\tstate.groups = orderGroups(state.groups, state.orderBy);\n\t},\n\taddUserSubAdmin: function addUserSubAdmin(state, _ref4) {\n\t\tvar userid = _ref4.userid,\n\t\t gid = _ref4.gid;\n\n\t\tvar groups = state.users.find(function (user) {\n\t\t\treturn user.id == userid;\n\t\t}).subadmin;\n\t\tgroups.push(gid);\n\t},\n\tremoveUserSubAdmin: function removeUserSubAdmin(state, _ref5) {\n\t\tvar userid = _ref5.userid,\n\t\t gid = _ref5.gid;\n\n\t\tvar groups = state.users.find(function (user) {\n\t\t\treturn user.id == userid;\n\t\t}).subadmin;\n\t\tgroups.splice(groups.indexOf(gid), 1);\n\t},\n\tdeleteUser: function deleteUser(state, userid) {\n\t\tvar userIndex = state.users.findIndex(function (user) {\n\t\t\treturn user.id == userid;\n\t\t});\n\t\tstate.users.splice(userIndex, 1);\n\t},\n\taddUserData: function addUserData(state, response) {\n\t\tstate.users.push(response.data.ocs.data);\n\t},\n\tenableDisableUser: function enableDisableUser(state, _ref6) {\n\t\tvar userid = _ref6.userid,\n\t\t enabled = _ref6.enabled;\n\n\t\tstate.users.find(function (user) {\n\t\t\treturn user.id == userid;\n\t\t}).enabled = enabled;\n\t\t// increment or not\n\t\tstate.groups.find(function (group) {\n\t\t\treturn group.id == 'disabled';\n\t\t}).usercount += enabled ? -1 : 1;\n\t\tstate.userCount += enabled ? 1 : -1;\n\t\tconsole.log(enabled);\n\t},\n\tsetUserData: function setUserData(state, _ref7) {\n\t\tvar userid = _ref7.userid,\n\t\t key = _ref7.key,\n\t\t value = _ref7.value;\n\n\t\tif (key === 'quota') {\n\t\t\tvar humanValue = OC.Util.computerFileSize(value);\n\t\t\tstate.users.find(function (user) {\n\t\t\t\treturn user.id == userid;\n\t\t\t})[key][key] = humanValue ? humanValue : value;\n\t\t} else {\n\t\t\tstate.users.find(function (user) {\n\t\t\t\treturn user.id == userid;\n\t\t\t})[key] = value;\n\t\t}\n\t},\n\n\n\t/**\n * Reset users list\n */\n\tresetUsers: function resetUsers(state) {\n\t\tstate.users = [];\n\t\tstate.usersOffset = 0;\n\t}\n};\n\nvar getters = {\n\tgetUsers: function getUsers(state) {\n\t\treturn state.users;\n\t},\n\tgetGroups: function getGroups(state) {\n\t\treturn state.groups;\n\t},\n\tgetPasswordPolicyMinLength: function getPasswordPolicyMinLength(state) {\n\t\treturn state.minPasswordLength;\n\t},\n\tgetUsersOffset: function getUsersOffset(state) {\n\t\treturn state.usersOffset;\n\t},\n\tgetUsersLimit: function getUsersLimit(state) {\n\t\treturn state.usersLimit;\n\t},\n\tgetUserCount: function getUserCount(state) {\n\t\treturn state.userCount;\n\t}\n};\n\nvar actions = {\n\n\t/**\n * Get all users with full details\n * \n * @param {Object} context\n * @param {Object} options\n * @param {int} options.offset List offset to request\n * @param {int} options.limit List number to return from offset\n * @param {string} options.search Search amongst users\n * @param {string} options.group Get users from group\n * @returns {Promise}\n */\n\tgetUsers: function getUsers(context, _ref8) {\n\t\tvar offset = _ref8.offset,\n\t\t limit = _ref8.limit,\n\t\t search = _ref8.search,\n\t\t group = _ref8.group;\n\n\t\tsearch = typeof search === 'string' ? search : '';\n\t\tgroup = typeof group === 'string' ? group : '';\n\t\tif (group !== '') {\n\t\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].get(OC.linkToOCS('cloud/groups/' + group + '/users/details?offset=' + offset + '&limit=' + limit + '&search=' + search, 2)).then(function (response) {\n\t\t\t\tif (Object.keys(response.data.ocs.data.users).length > 0) {\n\t\t\t\t\tcontext.commit('appendUsers', response.data.ocs.data.users);\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t\treturn false;\n\t\t\t}).catch(function (error) {\n\t\t\t\treturn context.commit('API_FAILURE', error);\n\t\t\t});\n\t\t}\n\n\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].get(OC.linkToOCS('cloud/users/details?offset=' + offset + '&limit=' + limit + '&search=' + search, 2)).then(function (response) {\n\t\t\tif (Object.keys(response.data.ocs.data.users).length > 0) {\n\t\t\t\tcontext.commit('appendUsers', response.data.ocs.data.users);\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\treturn false;\n\t\t}).catch(function (error) {\n\t\t\treturn context.commit('API_FAILURE', error);\n\t\t});\n\t},\n\n\n\t/**\n * Get all users with full details\n * \n * @param {Object} context\n * @param {Object} options\n * @param {int} options.offset List offset to request\n * @param {int} options.limit List number to return from offset\n * @returns {Promise}\n */\n\tgetUsersFromList: function getUsersFromList(context, _ref9) {\n\t\tvar offset = _ref9.offset,\n\t\t limit = _ref9.limit,\n\t\t search = _ref9.search;\n\n\t\tsearch = typeof search === 'string' ? search : '';\n\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].get(OC.linkToOCS('cloud/users/details?offset=' + offset + '&limit=' + limit + '&search=' + search, 2)).then(function (response) {\n\t\t\tif (Object.keys(response.data.ocs.data.users).length > 0) {\n\t\t\t\tcontext.commit('appendUsers', response.data.ocs.data.users);\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\treturn false;\n\t\t}).catch(function (error) {\n\t\t\treturn context.commit('API_FAILURE', error);\n\t\t});\n\t},\n\n\n\t/**\n * Get all users with full details from a groupid\n * \n * @param {Object} context\n * @param {Object} options\n * @param {int} options.offset List offset to request\n * @param {int} options.limit List number to return from offset\n * @returns {Promise}\n */\n\tgetUsersFromGroup: function getUsersFromGroup(context, _ref10) {\n\t\tvar groupid = _ref10.groupid,\n\t\t offset = _ref10.offset,\n\t\t limit = _ref10.limit;\n\n\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].get(OC.linkToOCS('cloud/users/' + groupid + '/details?offset=' + offset + '&limit=' + limit, 2)).then(function (response) {\n\t\t\treturn context.commit('getUsersFromList', response.data.ocs.data.users);\n\t\t}).catch(function (error) {\n\t\t\treturn context.commit('API_FAILURE', error);\n\t\t});\n\t},\n\tgetPasswordPolicyMinLength: function getPasswordPolicyMinLength(context) {\n\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].get(OC.linkToOCS('apps/provisioning_api/api/v1/config/apps/password_policy/minLength', 2)).then(function (response) {\n\t\t\treturn context.commit('setPasswordPolicyMinLength', response.data.ocs.data.data);\n\t\t}).catch(function (error) {\n\t\t\treturn context.commit('API_FAILURE', error);\n\t\t});\n\t},\n\n\n\t/**\n * Add group\n * \n * @param {Object} context\n * @param {string} gid Group id\n * @returns {Promise}\n */\n\taddGroup: function addGroup(context, gid) {\n\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n\t\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].post(OC.linkToOCS('cloud/groups', 2), { groupid: gid }).then(function (response) {\n\t\t\t\treturn context.commit('addGroup', gid);\n\t\t\t}).catch(function (error) {\n\t\t\t\tthrow error;\n\t\t\t});\n\t\t}).catch(function (error) {\n\t\t\treturn context.commit('API_FAILURE', { userid: userid, error: error });\n\t\t});\n\t},\n\n\n\t/**\n * Remove group\n * \n * @param {Object} context\n * @param {string} gid Group id\n * @returns {Promise}\n */\n\tremoveGroup: function removeGroup(context, gid) {\n\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n\t\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].delete(OC.linkToOCS('cloud/groups/' + gid, 2)).then(function (response) {\n\t\t\t\treturn context.commit('removeGroup', gid);\n\t\t\t}).catch(function (error) {\n\t\t\t\tthrow error;\n\t\t\t});\n\t\t}).catch(function (error) {\n\t\t\treturn context.commit('API_FAILURE', { gid: gid, error: error });\n\t\t});\n\t},\n\n\n\t/**\n * Add user to group\n * \n * @param {Object} context\n * @param {Object} options\n * @param {string} options.userid User id\n * @param {string} options.gid Group id\n * @returns {Promise}\n */\n\taddUserGroup: function addUserGroup(context, _ref11) {\n\t\tvar userid = _ref11.userid,\n\t\t gid = _ref11.gid;\n\n\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n\t\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].post(OC.linkToOCS('cloud/users/' + userid + '/groups', 2), { groupid: gid }).then(function (response) {\n\t\t\t\treturn context.commit('addUserGroup', { userid: userid, gid: gid });\n\t\t\t}).catch(function (error) {\n\t\t\t\tthrow error;\n\t\t\t});\n\t\t}).catch(function (error) {\n\t\t\treturn context.commit('API_FAILURE', { userid: userid, error: error });\n\t\t});\n\t},\n\n\n\t/**\n * Remove user from group\n * \n * @param {Object} context\n * @param {Object} options\n * @param {string} options.userid User id\n * @param {string} options.gid Group id\n * @returns {Promise}\n */\n\tremoveUserGroup: function removeUserGroup(context, _ref12) {\n\t\tvar userid = _ref12.userid,\n\t\t gid = _ref12.gid;\n\n\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n\t\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].delete(OC.linkToOCS('cloud/users/' + userid + '/groups', 2), { groupid: gid }).then(function (response) {\n\t\t\t\treturn context.commit('removeUserGroup', { userid: userid, gid: gid });\n\t\t\t}).catch(function (error) {\n\t\t\t\tthrow error;\n\t\t\t});\n\t\t}).catch(function (error) {\n\t\t\treturn context.commit('API_FAILURE', { userid: userid, error: error });\n\t\t});\n\t},\n\n\n\t/**\n * Add user to group admin\n * \n * @param {Object} context\n * @param {Object} options\n * @param {string} options.userid User id\n * @param {string} options.gid Group id\n * @returns {Promise}\n */\n\taddUserSubAdmin: function addUserSubAdmin(context, _ref13) {\n\t\tvar userid = _ref13.userid,\n\t\t gid = _ref13.gid;\n\n\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n\t\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].post(OC.linkToOCS('cloud/users/' + userid + '/subadmins', 2), { groupid: gid }).then(function (response) {\n\t\t\t\treturn context.commit('addUserSubAdmin', { userid: userid, gid: gid });\n\t\t\t}).catch(function (error) {\n\t\t\t\tthrow error;\n\t\t\t});\n\t\t}).catch(function (error) {\n\t\t\treturn context.commit('API_FAILURE', { userid: userid, error: error });\n\t\t});\n\t},\n\n\n\t/**\n * Remove user from group admin\n * \n * @param {Object} context\n * @param {Object} options\n * @param {string} options.userid User id\n * @param {string} options.gid Group id\n * @returns {Promise}\n */\n\tremoveUserSubAdmin: function removeUserSubAdmin(context, _ref14) {\n\t\tvar userid = _ref14.userid,\n\t\t gid = _ref14.gid;\n\n\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n\t\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].delete(OC.linkToOCS('cloud/users/' + userid + '/subadmins', 2), { groupid: gid }).then(function (response) {\n\t\t\t\treturn context.commit('removeUserSubAdmin', { userid: userid, gid: gid });\n\t\t\t}).catch(function (error) {\n\t\t\t\tthrow error;\n\t\t\t});\n\t\t}).catch(function (error) {\n\t\t\treturn context.commit('API_FAILURE', { userid: userid, error: error });\n\t\t});\n\t},\n\n\n\t/**\n * Delete a user\n * \n * @param {Object} context\n * @param {string} userid User id \n * @returns {Promise}\n */\n\tdeleteUser: function deleteUser(context, _ref15) {\n\t\tvar userid = _ref15.userid;\n\n\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n\t\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].delete(OC.linkToOCS('cloud/users/' + userid, 2)).then(function (response) {\n\t\t\t\treturn context.commit('deleteUser', userid);\n\t\t\t}).catch(function (error) {\n\t\t\t\tthrow error;\n\t\t\t});\n\t\t}).catch(function (error) {\n\t\t\treturn context.commit('API_FAILURE', { userid: userid, error: error });\n\t\t});\n\t},\n\n\n\t/**\n * Add a user\n * \n * @param {Object} context\n * @param {Object} options\n * @param {string} options.userid User id\n * @param {string} options.password User password \n * @param {string} options.email User email\n * @param {string} options.groups User groups\n * @param {string} options.subadmin User subadmin groups\n * @param {string} options.quota User email\n * @returns {Promise}\n */\n\taddUser: function addUser(_ref16, _ref17) {\n\t\tvar context = _ref16.context,\n\t\t dispatch = _ref16.dispatch;\n\t\tvar userid = _ref17.userid,\n\t\t password = _ref17.password,\n\t\t email = _ref17.email,\n\t\t groups = _ref17.groups,\n\t\t subadmin = _ref17.subadmin,\n\t\t quota = _ref17.quota,\n\t\t language = _ref17.language;\n\n\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n\t\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].post(OC.linkToOCS('cloud/users', 2), { userid: userid, password: password, email: email, groups: groups, subadmin: subadmin, quota: quota, language: language }).then(function (response) {\n\t\t\t\treturn dispatch('addUserData', userid);\n\t\t\t}).catch(function (error) {\n\t\t\t\tthrow error;\n\t\t\t});\n\t\t}).catch(function (error) {\n\t\t\treturn context.commit('API_FAILURE', { userid: userid, error: error });\n\t\t});\n\t},\n\n\n\t/**\n * Get user data and commit addition\n * \n * @param {Object} context\n * @param {string} userid User id \n * @returns {Promise}\n */\n\taddUserData: function addUserData(context, userid) {\n\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n\t\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].get(OC.linkToOCS('cloud/users/' + userid, 2)).then(function (response) {\n\t\t\t\treturn context.commit('addUserData', response);\n\t\t\t}).catch(function (error) {\n\t\t\t\tthrow error;\n\t\t\t});\n\t\t}).catch(function (error) {\n\t\t\treturn context.commit('API_FAILURE', { userid: userid, error: error });\n\t\t});\n\t},\n\n\n\t/** Enable or disable user \n * \n * @param {Object} context\n * @param {Object} options\n * @param {string} options.userid User id\n * @param {boolean} options.enabled User enablement status\n * @returns {Promise}\n */\n\tenableDisableUser: function enableDisableUser(context, _ref18) {\n\t\tvar userid = _ref18.userid,\n\t\t _ref18$enabled = _ref18.enabled,\n\t\t enabled = _ref18$enabled === undefined ? true : _ref18$enabled;\n\n\t\tvar userStatus = enabled ? 'enable' : 'disable';\n\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n\t\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].put(OC.linkToOCS('cloud/users/' + userid + '/' + userStatus, 2)).then(function (response) {\n\t\t\t\treturn context.commit('enableDisableUser', { userid: userid, enabled: enabled });\n\t\t\t}).catch(function (error) {\n\t\t\t\tthrow error;\n\t\t\t});\n\t\t}).catch(function (error) {\n\t\t\treturn context.commit('API_FAILURE', { userid: userid, error: error });\n\t\t});\n\t},\n\n\n\t/**\n * Edit user data\n * \n * @param {Object} context \n * @param {Object} options\n * @param {string} options.userid User id\n * @param {string} options.key User field to edit\n * @param {string} options.value Value of the change\n * @returns {Promise}\n */\n\tsetUserData: function setUserData(context, _ref19) {\n\t\tvar userid = _ref19.userid,\n\t\t key = _ref19.key,\n\t\t value = _ref19.value;\n\n\t\tvar allowedEmpty = ['email', 'displayname'];\n\t\tif (['email', 'language', 'quota', 'displayname', 'password'].indexOf(key) !== -1) {\n\t\t\t// We allow empty email or displayname\n\t\t\tif (typeof value === 'string' && (allowedEmpty.indexOf(key) === -1 && value.length > 0 || allowedEmpty.indexOf(key) !== -1)) {\n\t\t\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n\t\t\t\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].put(OC.linkToOCS('cloud/users/' + userid, 2), { key: key, value: value }).then(function (response) {\n\t\t\t\t\t\treturn context.commit('setUserData', { userid: userid, key: key, value: value });\n\t\t\t\t\t}).catch(function (error) {\n\t\t\t\t\t\tthrow error;\n\t\t\t\t\t});\n\t\t\t\t}).catch(function (error) {\n\t\t\t\t\treturn context.commit('API_FAILURE', { userid: userid, error: error });\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t\treturn Promise.reject(new Error('Invalid request data'));\n\t}\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({ state: state, mutations: mutations, getters: getters, actions: actions });\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvc3RvcmUvdXNlcnMuanM/MjhjMiJdLCJuYW1lcyI6WyJvcmRlckdyb3VwcyIsImdyb3VwcyIsIm9yZGVyQnkiLCJzb3J0IiwiYSIsImIiLCJ1c2VyY291bnQiLCJuYW1lIiwibG9jYWxlQ29tcGFyZSIsInN0YXRlIiwidXNlcnMiLCJtaW5QYXNzd29yZExlbmd0aCIsInVzZXJzT2Zmc2V0IiwidXNlcnNMaW1pdCIsInVzZXJDb3VudCIsIm11dGF0aW9ucyIsImFwcGVuZFVzZXJzIiwidXNlcnNPYmoiLCJjb25jYXQiLCJPYmplY3QiLCJrZXlzIiwibWFwIiwidXNlcmlkIiwic2V0UGFzc3dvcmRQb2xpY3lNaW5MZW5ndGgiLCJsZW5ndGgiLCJpbml0R3JvdXBzIiwiYWRkR3JvdXAiLCJnaWQiLCJwdXNoIiwiaWQiLCJlIiwiY29uc29sZSIsImxvZyIsInJlbW92ZUdyb3VwIiwiZ3JvdXBJbmRleCIsImZpbmRJbmRleCIsImdyb3VwU2VhcmNoIiwic3BsaWNlIiwiYWRkVXNlckdyb3VwIiwiZ3JvdXAiLCJmaW5kIiwidXNlciIsInJlbW92ZVVzZXJHcm91cCIsImluZGV4T2YiLCJhZGRVc2VyU3ViQWRtaW4iLCJzdWJhZG1pbiIsInJlbW92ZVVzZXJTdWJBZG1pbiIsImRlbGV0ZVVzZXIiLCJ1c2VySW5kZXgiLCJhZGRVc2VyRGF0YSIsInJlc3BvbnNlIiwiZGF0YSIsIm9jcyIsImVuYWJsZURpc2FibGVVc2VyIiwiZW5hYmxlZCIsInNldFVzZXJEYXRhIiwia2V5IiwidmFsdWUiLCJodW1hblZhbHVlIiwiT0MiLCJVdGlsIiwiY29tcHV0ZXJGaWxlU2l6ZSIsInJlc2V0VXNlcnMiLCJnZXR0ZXJzIiwiZ2V0VXNlcnMiLCJnZXRHcm91cHMiLCJnZXRQYXNzd29yZFBvbGljeU1pbkxlbmd0aCIsImdldFVzZXJzT2Zmc2V0IiwiZ2V0VXNlcnNMaW1pdCIsImdldFVzZXJDb3VudCIsImFjdGlvbnMiLCJjb250ZXh0Iiwib2Zmc2V0IiwibGltaXQiLCJzZWFyY2giLCJhcGkiLCJnZXQiLCJsaW5rVG9PQ1MiLCJ0aGVuIiwiY29tbWl0IiwiY2F0Y2giLCJlcnJvciIsImdldFVzZXJzRnJvbUxpc3QiLCJnZXRVc2Vyc0Zyb21Hcm91cCIsImdyb3VwaWQiLCJyZXF1aXJlQWRtaW4iLCJwb3N0IiwiZGVsZXRlIiwiYWRkVXNlciIsImRpc3BhdGNoIiwicGFzc3dvcmQiLCJlbWFpbCIsInF1b3RhIiwibGFuZ3VhZ2UiLCJ1c2VyU3RhdHVzIiwicHV0IiwiYWxsb3dlZEVtcHR5IiwiUHJvbWlzZSIsInJlamVjdCIsIkVycm9yIl0sIm1hcHBpbmdzIjoiO0FBQUE7O0FBRUEsSUFBTUEsY0FBYyxTQUFkQSxXQUFjLENBQVNDLE1BQVQsRUFBaUJDLE9BQWpCLEVBQTBCO0FBQzdDOzs7O0FBSUEsS0FBSUEsWUFBWSxDQUFoQixFQUFtQjtBQUNsQixTQUFPRCxPQUFPRSxJQUFQLENBQVksVUFBQ0MsQ0FBRCxFQUFJQyxDQUFKO0FBQUEsVUFBVUQsRUFBRUUsU0FBRixHQUFjRCxFQUFFQyxTQUExQjtBQUFBLEdBQVosQ0FBUDtBQUNBLEVBRkQsTUFFTztBQUNOLFNBQU9MLE9BQU9FLElBQVAsQ0FBWSxVQUFDQyxDQUFELEVBQUlDLENBQUo7QUFBQSxVQUFVRCxFQUFFRyxJQUFGLENBQU9DLGFBQVAsQ0FBcUJILEVBQUVFLElBQXZCLENBQVY7QUFBQSxHQUFaLENBQVA7QUFDQTtBQUNELENBVkQ7O0FBWUEsSUFBTUUsUUFBUTtBQUNiQyxRQUFPLEVBRE07QUFFYlQsU0FBUSxFQUZLO0FBR2JDLFVBQVMsQ0FISTtBQUliUyxvQkFBbUIsQ0FKTjtBQUtiQyxjQUFhLENBTEE7QUFNYkMsYUFBWSxFQU5DO0FBT2JDLFlBQVc7QUFQRSxDQUFkOztBQVVBLElBQU1DLFlBQVk7QUFDakJDLFlBRGlCLHVCQUNMUCxLQURLLEVBQ0VRLFFBREYsRUFDWTtBQUM1QjtBQUNBLE1BQUlQLFFBQVFELE1BQU1DLEtBQU4sQ0FBWVEsTUFBWixDQUFtQkMsT0FBT0MsSUFB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cGknO1xuXG5jb25zdCBvcmRlckdyb3VwcyA9IGZ1bmN0aW9uKGdyb3Vwcywgb3JkZXJCeSkge1xuXHQvKiBjb25zdCBTT1JUX1VTRVJDT1VOVCA9IDE7XG5cdCAqIGNvbnN0IFNPUlRfR1JPVVBOQU1FID0gMjtcblx0ICogaHR0cHM6Ly9naXRodWIuY29tL25leHRjbG91ZC9zZXJ2ZXIvYmxvYi8yMDhlMzhlODRlMWEwN2E0OTY5OWFhOTBkYzViNzI3MmQyNDQ4OWYwL2xpYi9wcml2YXRlL0dyb3VwL01ldGFEYXRhLnBocCNMMzRcblx0ICovXG5cdGlmIChvcmRlckJ5ID09PSAxKSB7XG5cdFx0cmV0dXJuIGdyb3Vwcy5zb3J0KChhLCBiKSA9PiBhLnVzZXJjb3VudCA8IGIudXNlcmNvdW50KTtcblx0fSBlbHNlIHtcblx0XHRyZXR1cm4gZ3JvdXBzLnNvcnQoKGEsIGIpID0+IGEubmFtZS5sb2NhbGVDb21wYXJlKGIubmFtZSkpO1xuXHR9XG59O1xuXG5jb25zdCBzdGF0ZSA9IHtcblx0dXNlcnM6IFtdLFxuXHRncm91cHM6IFtdLFxuXHRvcmRlckJ5OiAxLFxuXHRtaW5QYXNzd29yZExlbmd0aDogMCxcblx0dXNlcnNPZmZzZXQ6IDAsXG5cdHVzZXJzTGltaXQ6IDI1LFxuXHR1c2VyQ291bnQ6IDBcbn07XG5cbmNvbnN0IG11dGF0aW9ucyA9IHtcblx0YXBwZW5kVXNlcnMoc3RhdGUsIHVzZXJzT2JqKSB7XG5cdFx0Ly8gY29udmVydCBvYmogdG8gYXJyYXlcblx0XHRsZXQgdXNlcnMgPSBzdGF0ZS51c2Vycy5jb25jYXQoT2JqZWN0LmtleXModXNlcnNPYmopLm1hcCh1c2VyaWQgPT4gdXNlcnNPYmpbdXNlcmlkXSkpO1xuXHRcdHN0YXRlLnVzZXJzT2Zmc2V0ICs9IHN0YXRlLnVzZXJzTGltaXQ7XG5cdFx0c3RhdGUudXNlcnMgPSB1c2Vycztcblx0fSxcblx0c2V0UGFzc3dvcmRQb2xpY3lNaW5MZW5ndGgoc3RhdGUsIGxlbmd0aCkge1xuXHRcdHN0YXRlLm1pblBhc3N3b3JkTGVuZ3RoID0gbGVuZ3RoIT09JycgPyBsZW5ndGggOiAwO1xuXHR9LFxuXHRpbml0R3JvdXBzKHN0YXRlLCB7Z3JvdXBzLCBvcmRlckJ5LCB1c2VyQ291bnR9KSB7XG5cdFx0c3RhdGUuZ3JvdXBzID0gZ3JvdXBzO1xuXHRcdHN0YXRlLm9yZGVyQnkgPSBvcmRlckJ5O1xuXHRcdHN0YXRlLnVzZXJDb3VudCA9IHVzZXJDb3VudDtcblx0XHRzdGF0ZS5ncm91cHMgPSBvcmRlckdyb3VwcyhzdGF0ZS5ncm91cHMsIHN0YXRlLm9yZGVyQnkpO1xuXHR9LFxuXHRhZGRHcm91cChzdGF0ZSwgZ2lkKSB7XG5cdFx0dHJ5IHtcblx0XHRcdHN0YXRlLmdyb3Vwcy5wdXNoKHtcblx0XHRcdFx0aWQ6IGdpZCxcblx0XHRcdFx0bmFtZTogZ2lkLFxuXHRcdFx0XHR1c2VyY291bnQ6IDAgLy8gdXNlciB3aWxsIGJlIGFkZGVkIGFmdGVyIHRoZSBjcmVhdGlvblxuXHRcdFx0fSk7XG5cdFx0XHRzdGF0ZS5ncm91cHMgPSBvcmRlckdyb3VwcyhzdGF0ZS5ncm91cHMsIHN0YXRlLm9yZGVyQnkpO1xuXHRcdH0gY2F0Y2ggKGUpIHtcblx0XHRcdGNvbnNvbGUubG9nKCdDYW5cXCd0IGNyZWF0ZSBncm91cCcsIGUpO1xuXHRcdH1cblx0fSxcblx0cmVtb3ZlR3JvdXAoc3RhdGUsIGdpZCkge1xuXHRcdGxldCBncm91cEluZGV4ID0gc3RhdGUuZ3JvdXBzLmZpbmRJbmRleChncm91cFNlYXJjaCA9PiBncm91cFNlYXJjaC5pZCA9PSBnaWQpO1xuXHRcdGlmIChncm91cEluZGV4ID49IDApIHtcblx0XHRcdHN0YXRlLmdyb3Vwcy5zcGxpY2UoZ3JvdXBJbmRleCwgMSk7XG5cdFx0fVxuXHR9LFxuXHRhZGRVc2VyR3JvdXAoc3RhdGUsIHsgdXNlcmlkLCBnaWQgfSkge1xuXHRcdC8vIHRoaXMgc2hvdWxkIG5vdCBiZSBuZWVkZWQgYXMgaXQgd291bGQgbWVhbnMgdGhlIHVzZXIgY29udGFpbnMgYSBncm91cFxuXHRcdC8vIHRoZSBzZXJ2ZXIgZGF0YWJhc2UgZG9lc24ndCBoYXZlLlxuXHRcdGxldCBncm91cCA9IHN0YXRlLmdyb3Vwcy5maW5kKGdyb3VwU2VhcmNoID0+IGdyb3VwU2VhcmNoLmlkID09IGdpZCk7XG5cdFx0aWYgKGdyb3VwKSB7XG5cdFx0XHRncm91cC51c2VyY291bnQrKzsgLy8gaW5jcmVhc2UgY291bnRcblx0XHR9XG5cdFx0bGV0IGdyb3VwcyA9IHN0YXRlLnVzZXJzLmZpbmQodXNlciA9PiB1c2VyLmlkID09IHVzZXJpZCkuZ3JvdXBzO1xuXHRcdGdyb3Vwcy5wdXNoKGdpZCk7XG5cdFx0c3RhdGUuZ3JvdXBzID0gb3JkZXJHcm91cHMoc3RhdGUuZ3JvdXBzLCBzdGF0ZS5vcmRlckJ5KTtcblx0fSxcblx0cmVtb3ZlVXNlckdyb3VwKHN0YXRlLCB7IHVzZXJpZCwgZ2lkIH0pIHtcblx0XHQvLyB0aGlzIHNob3VsZCBub3QgYmUgbmVlZGVkIGFzIGl0IHdvdWxkIG1lYW5zIHRoZSB1c2VyIGNvbnRhaW5zIGEgZ3JvdXBcblx0XHQvLyB0aGUgc2VydmVyIGRhdGFiYXNlIGRvZXNuJ3QgaGF2ZS5cblx0XHRsZXQgZ3JvdXAgPSBzdGF0ZS5ncm91cHMuZmluZChncm91cFNlYXJjaCA9PiBncm91cFNlYXJjaC5pZCA9PSBnaWQpO1xuXHRcdGlmIChncm91cCkge1xuXHRcdFx0Z3JvdXAudXNlcmNvdW50LS07IC8vIGxvd2VyIGNvdW50XG5cdFx0fVxuXHRcdGxldCBncm91cHMgPSBzdGF0ZS51c2Vycy5maW5kKHVzZXIgPT4gdXNlci5pZCA9PSB1c2VyaWQpLmdyb3Vwcztcblx0XHRncm91cHMuc3BsaWNlKGdyb3Vwcy5pbmRleE9mKGdpZCksMSk7XG5cdFx0c3RhdGUuZ3JvdXBzID0gb3JkZXJHcm91cHMoc3RhdGUuZ3JvdXBzLCBzdGF0ZS5vcmRlckJ5KTtcblx0fSxcblx0YWRkVXNlclN1YkFkbWluKHN0YXRlLCB7IHVzZXJpZCwgZ2lkIH0pIHtcblx0XHRsZXQgZ3JvdXBzID0gc3RhdGUudXNlcnMuZmluZCh1c2VyID0+IHVzZXIuaWQgPT0gdXNlcmlkKS5zdWJhZG1pbjtcblx0XHRncm91cHMucHVzaChnaWQpO1xuXHR9LFxuXHRyZW1vdmVVc2VyU3ViQWRtaW4oc3RhdGUsIHsgdXNlcmlkLCBnaWQgfSkge1xuXHRcdGxldCBncm91cHMgPSBzdGF0ZS51c2Vycy5maW5kKHVzZXIgPT4gdXNlci5pZCA9PSB1c2VyaWQpLnN1YmFkbWluO1xuXHRcdGdyb3Vwcy5zcGxpY2UoZ3JvdXBzLmluZGV4T2YoZ2lkKSwxKTtcblx0fSxcblx0ZGVsZXRlVXNlcihzdGF0ZSwgdXNlcmlkKSB7XG5cdFx0bGV0IHVzZXJJbmRleCA9IHN0YXRlLnVzZXJzLmZpbmRJbmRleCh1c2VyID0+IHVzZXIuaWQgPT0gdXNlcmlkKTtcblx0XHRzdGF0ZS51c2Vycy5zcGxpY2UodXNlckluZGV4LCAxKTtcblx0fSxcblx0YWRkVXNlckRhdGEoc3RhdGUsIHJlc3BvbnNlKSB7XG5cdFx0c3RhdGUudXNlcnMucHVzaChyZXNwb25zZS5kYXRhLm9jcy5kYXRhKTtcblx0fSxcblx0ZW5hYmxlRGlzYWJsZVVzZXIoc3RhdGUsIHsgdXNlcmlkLCBlbmFibGVkIH0pIHtcblx0XHRzdGF0ZS51c2Vycy5maW5kKHVzZXIgPT4gdXNlci5pZCA9PSB1c2VyaWQpLmVuYWJsZWQgPSBlbmFibGVkO1xuXHRcdC8vIGluY3JlbWVudCBvciBub3Rcblx0XHRzdGF0ZS5ncm91cHMuZmluZChncm91cCA9PiBncm91cC5pZCA9PSAnZGlzYWJsZWQnKS51c2VyY291bnQgKz0gZW5hYmxlZCA/IC0xIDogMTtcblx0XHRzdGF0ZS51c2VyQ291bnQgKz0gZW5hYmxlZCA/IDEgOiAtMTtcblx0XHRjb25zb2xlLmxvZyhlbmFibGVkKTtcblx0fSxcblx0c2V0VXNlckRhdGEoc3RhdGUsIHsgdXNlcmlkLCBrZXksIHZhbHVlIH0pIHtcblx0XHRpZiAoa2V5ID09PSAncXVvdGEnKSB7XG5cdFx0XHRsZXQgaHVtYW5WYWx1ZSA9IE9DLlV0aWwuY29tcHV0ZXJGaWxlU2l6ZSh2YWx1ZSk7XG5cdFx0XHRzdGF0ZS51c2Vycy5maW5kKHVzZXIgPT4gdXNlci5pZCA9PSB1c2VyaWQpW2tleV1ba2V5XSA9IGh1bWFuVmFsdWU/aHVtYW5WYWx1ZTp2YWx1ZTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0c3RhdGUudXNlcnMuZmluZCh1c2VyID0+IHVzZXIuaWQgPT0gdXNlcmlkKVtrZXldID0gdmFsdWU7XG5cdFx0fVxuXHR9LFxuXG5cdC8qKlxuXHQgKiBSZXNldCB1c2VycyBsaXN0XG5cdCAqL1xuXHRyZXNldFVzZXJzKHN0YXRlKSB7XG5cdFx0c3RhdGUudXNlcnMgPSBbXTtcblx0XHRzdGF0ZS51c2Vyc09mZnNldCA9IDA7XG5cdH1cbn07XG5cbmNvbnN0IGdldHRlcnMgPSB7XG5cdGdldFVzZXJzKHN0YXRlKSB7XG5cdFx0cmV0dXJuIHN0YXRlLnVzZXJzO1xuXHR9LFxuXHRnZXRHcm91cHMoc3RhdGUpIHtcblx0XHRyZXR1cm4gc3RhdGUuZ3JvdXBzO1xuXHR9LFxuXHRnZXRQYXNzd29yZFBvbGljeU1pbkxlbmd0aChzdGF0ZSkge1xuXHRcdHJldHVybiBzdGF0ZS5taW5QYXNzd29yZExlbmd0aDtcblx0fSxcblx0Z2V0VXNlcnNPZmZzZXQoc3RhdGUpIHtcblx0XHRyZXR1cm4gc3RhdGUudXNlcnNPZmZzZXQ7XG5cdH0sXG5cdGdldFVzZXJzTGltaXQoc3RhdGUpIHtcblx0XHRyZXR1cm4gc3RhdGUudXNlcnNMaW1pdDtcblx0fSxcblx0Z2V0VXNlckNvdW50KHN0YXRlKSB7XG5cdFx0cmV0dXJuIHN0YXRlLnVzZXJDb3VudDtcblx0fVxufTtcblxuY29uc3QgYWN0aW9ucyA9IHtcblxuXHQvKipcblx0ICogR2V0IGFsbCB1c2VycyB3aXRoIGZ1bGwgZGV0YWlsc1xuXHQgKiBcblx0ICogQHBhcmFtIHtPYmplY3R9IGNvbnRleHRcblx0ICogQHBhcmFtIHtPYmplY3R9IG9wdGlvbnNcblx0ICogQHBhcmFtIHtpbnR9IG9wdGlvbnMub2Zmc2V0IExpc3Qgb2Zmc2V0IHRvIHJlcXVlc3Rcblx0ICogQHBhcmFtIHtpbnR9IG9wdGlvbnMubGltaXQgTGlzdCBudW1iZXIgdG8gcmV0dXJuIGZyb20gb2Zmc2V0XG5cdCAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLnNlYXJjaCBTZWFyY2ggYW1vbmdzdCB1c2Vyc1xuXHQgKiBAcGFyYW0ge3N0cmluZ30gb3B0aW9ucy5ncm91cCBHZXQgdXNlcnMgZnJvbSBncm91cFxuXHQgKiBAcmV0dXJucyB7UHJvbWlzZX1cblx0ICovXG5cdGdldFVzZXJzKGNvbnRleHQsIHsgb2Zmc2V0LCBsaW1pdCwgc2VhcmNoLCBncm91cCB9KSB7XG5cdFx0c2VhcmNoID0gdHlwZW9mIHNlYXJjaCA9PT0gJ3N0cmluZycgPyBzZWFyY2ggOiAnJztcblx0XHRncm91cCA9IHR5cGVvZiBncm91cCA9PT0gJ3N0cmluZycgPyBncm91cCA6ICcnO1xuXHRcdGlmIChncm91cCAhPT0gJycpIHtcblx0XHRcdHJldHVybiBhcGkuZ2V0KE9DLmxpbmtUb09DUyhgY2xvdWQvZ3JvdXBzLyR7Z3JvdXB9L3VzZXJzL2RldGFpbHM/b2Zmc2V0PSR7b2Zmc2V0fSZsaW1pdD0ke2xpbWl0fSZzZWFyY2g9JHtzZWFyY2h9YCwgMikpXG5cdFx0XHQudGhlbigocmVzcG9uc2UpID0+IHtcblx0XHRcdFx0aWYgKE9iamVjdC5rZXlzKHJlc3BvbnNlLmRhdGEub2NzLmRhdGEudXNlcnMpLmxlbmd0aCA+IDApIHtcblx0XHRcdFx0XHRjb250ZXh0LmNvbW1pdCgnYXBwZW5kVXNlcnMnLCByZXNwb25zZS5kYXRhLm9jcy5kYXRhLnVzZXJzKTtcblx0XHRcdFx0XHRyZXR1cm4gdHJ1ZTtcblx0XHRcdFx0fVxuXHRcdFx0XHRyZXR1cm4gZmFsc2U7XG5cdFx0XHR9KVxuXHRcdFx0LmNhdGNoKChlcnJvcikgPT4gY29udGV4dC5jb21taXQoJ0FQSV9GQUlMVVJFJywgZXJyb3IpKTtcblx0XHR9XG5cblx0XHRyZXR1cm4gYXBpLmdldChPQy5saW5rVG9PQ1MoYGNsb3VkL3VzZXJzL2RldGFpbHM/b2Zmc2V0PSR7b2Zmc2V0fSZsaW1pdD0ke2xpbWl0fSZzZWFyY2g9JHtzZWFyY2h9YCwgMikpXG5cdFx0XHQudGhlbigocmVzcG9uc2UpID0+IHtcblx0XHRcdFx0aWYgKE9iamVjdC5rZXlzKHJlc3BvbnNlLmRhdGEub2NzLmRhdGEudXNlcnMpLmxlbmd0aCA+IDApIHtcblx0XHRcdFx0XHRjb250ZXh0LmNvbW1pdCgnYXBwZW5kVXNlcnMnLCByZXNwb25zZS5kYXRhLm9jcy5kYXRhLnVzZXJzKTtcblx0XHRcdFx0XHRyZXR1cm4gdHJ1ZTtcblx0XHRcdFx0fVxuXHRcdFx0XHRyZXR1cm4gZmFsc2U7XG5cdFx0XHR9KVxuXHRcdFx0LmNhdGNoKChlcnJvcikgPT4gY29udGV4dC5jb21taXQoJ0FQSV9GQUlMVVJFJywgZXJyb3IpKTtcblx0fSxcblxuXHQvKipcblx0ICogR2V0IGFsbCB1c2VycyB3aXRoIGZ1bGwgZGV0YWlsc1xuXHQgKiBcblx0ICogQHBhcmFtIHtPYmplY3R9IGNvbnRleHRcblx0ICogQHBhcmFtIHtPYmplY3R9IG9wdGlvbnNcblx0ICogQHBhcmFtIHtpbnR9IG9wdGlvbnMub2Zmc2V0IExpc3Qgb2Zmc2V0IHRvIHJlcXVlc3Rcblx0ICogQHBhcmFtIHtpbnR9IG9wdGlvbnMubGltaXQgTGlzdCBudW1iZXIgdG8gcmV0dXJuIGZyb20gb2Zmc2V0XG5cdCAqIEByZXR1cm5zIHtQcm9taXNlfVxuXHQgKi9cblx0Z2V0VXNlcnNGcm9tTGlzdChjb250ZXh0LCB7IG9mZnNldCwgbGltaXQsIHNlYXJjaCB9KSB7XG5cdFx0c2VhcmNoID0gdHlwZW9mIHNlYXJjaCA9PT0gJ3N0cmluZycgPyBzZWFyY2ggOiAnJztcblx0XHRyZXR1cm4gYXBpLmdldChPQy5saW5rVG9PQ1MoYGNsb3VkL3VzZXJzL2RldGFpbHM/b2Zmc2V0PSR7b2Zmc2V0fSZsaW1pdD0ke2xpbWl0fSZzZWFyY2g9JHtzZWFyY2h9YCwgMikpXG5cdFx0XHQudGhlbigocmVzcG9uc2UpID0+IHtcblx0XHRcdFx0aWYgKE9iamVjdC5rZXlzKHJlc3BvbnNlLmRhdGEub2NzLmRhdGEudXNlcnMpLmxlbmd0aCA+IDApIHtcblx0XHRcdFx0XHRjb250ZXh0LmNvbW1pdCgnYXBwZW5kVXNlcnMnLCByZXNwb25zZS5kYXRhLm9jcy5kYXRhLnVzZXJzKTtcblx0XHRcdFx0XHRyZXR1cm4gdHJ1ZTtcblx0XHRcdFx0fVxuXHRcdFx0XHRyZXR1cm4gZmFsc2U7XG5cdFx0XHR9KVxuXHRcdFx0LmNhdGNoKChlcnJvcikgPT4gY29udGV4dC5jb21taXQoJ0FQSV9GQUlMVVJFJywgZXJyb3IpKTtcblx0fSxcblxuXHQvKipcblx0ICogR2V0IGFsbCB1c2VycyB3aXRoIGZ1bGwgZGV0YWlscyBmcm9tIGEgZ3JvdXBpZFxuXHQgKiBcblx0ICogQHBhcmFtIHtPYmplY3R9IGNvbnRleHRcblx0ICogQHBhcmFtIHtPYmplY3R9IG9wdGlvbnNcblx0ICogQHBhcmFtIHtpbnR9IG9wdGlvbnMub2Zmc2V0IExpc3Qgb2Zmc2V0IHRvIHJlcXVlc3Rcblx0ICogQHBhcmFtIHtpbnR9IG9wdGlvbnMubGltaXQgTGlzdCBudW1iZXIgdG8gcmV0dXJuIGZyb20gb2Zmc2V0XG5cdCAqIEByZXR1cm5zIHtQcm9taXNlfVxuXHQgKi9cblx0Z2V0VXNlcnNGcm9tR3JvdXAoY29udGV4dCwgeyBncm91cGlkLCBvZmZzZXQsIGxpbWl0IH0pIHtcblx0XHRyZXR1cm4gYXBpLmdldChPQy5saW5rVG9PQ1MoYGNsb3VkL3VzZXJzLyR7Z3JvdXBpZH0vZGV0YWlscz9vZmZzZXQ9JHtvZmZzZXR9JmxpbWl0PSR7bGltaXR9YCwgMikpXG5cdFx0XHQudGhlbigocmVzcG9uc2UpID0+IGNvbnRleHQuY29tbWl0KCdnZXRVc2Vyc0Zyb21MaXN0JywgcmVzcG9uc2UuZGF0YS5vY3MuZGF0YS51c2VycykpXG5cdFx0XHQuY2F0Y2goKGVycm9yKSA9PiBjb250ZXh0LmNvbW1pdCgnQVBJX0ZBSUxVUkUnLCBlcnJvcikpO1xuXHR9LFxuXHRcblxuXHRnZXRQYXNzd29yZFBvbGljeU1pbkxlbmd0aChjb250ZXh0KSB7XG5cdFx0cmV0dXJuIGFwaS5nZXQoT0MubGlua1RvT0NTKCdhcHBzL3Byb3Zpc2lvbmluZ19hcGkvYXBpL3YxL2NvbmZpZy9hcHBzL3Bhc3N3b3JkX3BvbGljeS9taW5MZW5ndGgnLCAyKSlcblx0XHRcdC50aGVuKChyZXNwb25zZSkgPT4gY29udGV4dC5jb21taXQoJ3NldFBhc3N3b3JkUG9saWN5TWluTGVuZ3RoJywgcmVzcG9uc2UuZGF0YS5vY3MuZGF0YS5kYXRhKSlcblx0XHRcdC5jYXRjaCgoZXJyb3IpID0+IGNvbnRleHQuY29tbWl0KCdBUElfRkFJTFVSRScsIGVycm9yKSk7XG5cdH0sXG5cblx0LyoqXG5cdCAqIEFkZCBncm91cFxuXHQgKiBcblx0ICogQHBhcmFtIHtPYmplY3R9IGNvbnRleHRcblx0ICogQHBhcmFtIHtzdHJpbmd9IGdpZCBHcm91cCBpZFxuXHQgKiBAcmV0dXJucyB7UHJvbWlzZX1cblx0ICovXG5cdGFkZEdyb3VwKGNvbnRleHQsIGdpZCkge1xuXHRcdHJldHVybiBhcGkucmVxdWlyZUFkbWluKCkudGhlbigocmVzcG9uc2UpID0+IHtcblx0XHRcdHJldHVybiBhcGkucG9zdChPQy5saW5rVG9PQ1MoYGNsb3VkL2dyb3Vwc2AsIDIpLCB7Z3JvdXBpZDogZ2lkfSlcblx0XHRcdFx0LnRoZW4oKHJlc3BvbnNlKSA9PiBjb250ZXh0LmNvbW1pdCgnYWRkR3JvdXAnLCBnaWQpKVxuXHRcdFx0XHQuY2F0Y2goKGVycm9yKSA9PiB7dGhyb3cgZXJyb3I7fSk7XG5cdFx0fSkuY2F0Y2goKGVycm9yKSA9PiBjb250ZXh0LmNvbW1pdCgnQVBJX0ZBSUxVUkUnLCB7IHVzZXJpZCwgZXJyb3IgfSkpO1xuXHR9LFxuXG5cdC8qKlxuXHQgKiBSZW1vdmUgZ3JvdXBcblx0ICogXG5cdCAqIEBwYXJhbSB7T2JqZWN0fSBjb250ZXh0XG5cdCAqIEBwYXJhbSB7c3RyaW5nfSBnaWQgR3JvdXAgaWRcblx0ICogQHJldHVybnMge1Byb21pc2V9XG5cdCAqL1xuXHRyZW1vdmVHcm91cChjb250ZXh0LCBnaWQpIHtcblx0XHRyZXR1cm4gYXBpLnJlcXVpcmVBZG1pbigpLnRoZW4oKHJlc3BvbnNlKSA9PiB7XG5cdFx0XHRyZXR1cm4gYXBpLmRlbGV0ZShPQy5saW5rVG9PQ1MoYGNsb3VkL2dyb3Vwcy8ke2dpZH1gLCAyKSlcblx0XHRcdFx0LnRoZW4oKHJlc3BvbnNlKSA9PiBjb250ZXh0LmNvbW1pdCgncmVtb3ZlR3JvdXAnLCBnaWQpKVxuXHRcdFx0XHQuY2F0Y2goKGVycm9yKSA9PiB7dGhyb3cgZXJyb3I7fSk7XG5cdFx0fSkuY2F0Y2goKGVycm9yKSA9PiBjb250ZXh0LmNvbW1pdCgnQVBJX0ZBSUxVUkUnLCB7IGdpZCwgZXJyb3IgfSkpO1xuXHR9LFxuXG5cdC8qKlxuXHQgKiBBZGQgdXNlciB0byBncm91cFxuXHQgKiBcblx0ICogQHBhcmFtIHtPYmplY3R9IGNvbnRleHRcblx0ICogQHBhcmFtIHtPYmplY3R9IG9wdGlvbnNcblx0ICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMudXNlcmlkIFVzZXIgaWRcblx0ICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMuZ2lkIEdyb3VwIGlkXG5cdCAqIEByZXR1cm5zIHtQcm9taXNlfVxuXHQgKi9cblx0YWRkVXNlckdyb3VwKGNvbnRleHQsIHsgdXNlcmlkLCBnaWQgfSkge1xuXHRcdHJldHVybiBhcGkucmVxdWlyZUFkbWluKCkudGhlbigocmVzcG9uc2UpID0+IHtcblx0XHRcdHJldHVybiBhcGkucG9zdChPQy5saW5rVG9PQ1MoYGNsb3VkL3VzZXJzLyR7dXNlcmlkfS9ncm91cHNgLCAyKSwgeyBncm91cGlkOiBnaWQgfSlcblx0XHRcdFx0LnRoZW4oKHJlc3BvbnNlKSA9PiBjb250ZXh0LmNvbW1pdCgnYWRkVXNlckdyb3VwJywgeyB1c2VyaWQsIGdpZCB9KSlcblx0XHRcdFx0LmNhdGNoKChlcnJvcikgPT4ge3Rocm93IGVycm9yO30pO1xuXHRcdH0pLmNhdGNoKChlcnJvcikgPT4gY29udGV4dC5jb21taXQoJ0FQSV9GQUlMVVJFJywgeyB1c2VyaWQsIGVycm9yIH0pKTtcblx0fSxcblxuXHQvKipcblx0ICogUmVtb3ZlIHVzZXIgZnJvbSBncm91cFxuXHQgKiBcblx0ICogQHBhcmFtIHtPYmplY3R9IGNvbnRleHRcblx0ICogQHBhcmFtIHtPYmplY3R9IG9wdGlvbnNcblx0ICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMudXNlcmlkIFVzZXIgaWRcblx0ICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMuZ2lkIEdyb3VwIGlkXG5cdCAqIEByZXR1cm5zIHtQcm9taXNlfVxuXHQgKi9cblx0cmVtb3ZlVXNlckdyb3VwKGNvbnRleHQsIHsgdXNlcmlkLCBnaWQgfSkge1xuXHRcdHJldHVybiBhcGkucmVxdWlyZUFkbWluKCkudGhlbigocmVzcG9uc2UpID0+IHtcblx0XHRcdHJldHVybiBhcGkuZGVsZXRlKE9DLmxpbmtUb09DUyhgY2xvdWQvdXNlcnMvJHt1c2VyaWR9L2dyb3Vwc2AsIDIpLCB7IGdyb3VwaWQ6IGdpZCB9KVxuXHRcdFx0XHQudGhlbigocmVzcG9uc2UpID0+IGNvbnRleHQuY29tbWl0KCdyZW1vdmVVc2VyR3JvdXAnLCB7IHVzZXJpZCwgZ2lkIH0pKVxuXHRcdFx0XHQuY2F0Y2goKGVycm9yKSA9PiB7dGhyb3cgZXJyb3I7fSk7XG5cdFx0fSkuY2F0Y2goKGVycm9yKSA9PiBjb250ZXh0LmNvbW1pdCgnQVBJX0ZBSUxVUkUnLCB7IHVzZXJpZCwgZXJyb3IgfSkpO1xuXHR9LFxuXG5cdC8qKlxuXHQgKiBBZGQgdXNlciB0byBncm91cCBhZG1pblxuXHQgKiBcblx0ICogQHBhcmFtIHtPYmplY3R9IGNvbnRleHRcblx0ICogQHBhcmFtIHtPYmplY3R9IG9wdGlvbnNcblx0ICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMudXNlcmlkIFVzZXIgaWRcblx0ICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMuZ2lkIEdyb3VwIGlkXG5cdCAqIEByZXR1cm5zIHtQcm9taXNlfVxuXHQgKi9cblx0YWRkVXNlclN1YkFkbWluKGNvbnRleHQsIHsgdXNlcmlkLCBnaWQgfSkge1xuXHRcdHJldHVybiBhcGkucmVxdWlyZUFkbWluKCkudGhlbigocmVzcG9uc2UpID0+IHtcblx0XHRcdHJldHVybiBhcGkucG9zdChPQy5saW5rVG9PQ1MoYGNsb3VkL3VzZXJzLyR7dXNlcmlkfS9zdWJhZG1pbnNgLCAyKSwgIHsgZ3JvdXBpZDogZ2lkIH0pXG5cdFx0XHRcdC50aGVuKChyZXNwb25zZSkgPT4gY29udGV4dC5jb21taXQoJ2FkZFVzZXJTdWJBZG1pbicsIHsgdXNlcmlkLCBnaWQgfSkpXG5cdFx0XHRcdC5jYXRjaCgoZXJyb3IpID0+IHt0aHJvdyBlcnJvcjt9KTtcblx0XHR9KS5jYXRjaCgoZXJyb3IpID0+IGNvbnRleHQuY29tbWl0KCdBUElfRkFJTFVSRScsIHsgdXNlcmlkLCBlcnJvciB9KSk7XG5cdH0sXG5cblx0LyoqXG5cdCAqIFJlbW92ZSB1c2VyIGZyb20gZ3JvdXAgYWRtaW5cblx0ICogXG5cdCAqIEBwYXJhbSB7T2JqZWN0fSBjb250ZXh0XG5cdCAqIEBwYXJhbSB7T2JqZWN0fSBvcHRpb25zXG5cdCAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLnVzZXJpZCBVc2VyIGlkXG5cdCAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLmdpZCBHcm91cCBpZFxuXHQgKiBAcmV0dXJucyB7UHJvbWlzZX1cblx0ICovXG5cdHJlbW92ZVVzZXJTdWJBZG1pbihjb250ZXh0LCB7IHVzZXJpZCwgZ2lkIH0pIHtcblx0XHRyZXR1cm4gYXBpLnJlcXVpcmVBZG1pbigpLnRoZW4oKHJlc3BvbnNlKSA9PiB7XG5cdFx0XHRyZXR1cm4gYXBpLmRlbGV0ZShPQy5saW5rVG9PQ1MoYGNsb3VkL3VzZXJzLyR7dXNlcmlkfS9zdWJhZG1pbnNgLCAyKSwgeyBncm91cGlkOiBnaWQgfSlcblx0XHRcdFx0LnRoZW4oKHJlc3BvbnNlKSA9PiBjb250ZXh0LmNvbW1pdCgncmVtb3ZlVXNlclN1YkFkbWluJywgeyB1c2VyaWQsIGdpZCB9KSlcblx0XHRcdFx0LmNhdGNoKChlcnJvcikgPT4ge3Rocm93IGVycm9yO30pO1xuXHRcdH0pLmNhdGNoKChlcnJvcikgPT4gY29udGV4dC5jb21taXQoJ0FQSV9GQUlMVVJFJywgeyB1c2VyaWQsIGVycm9yIH0pKTtcblx0fSxcblxuXHQvKipcblx0ICogRGVsZXRlIGEgdXNlclxuXHQgKiBcblx0ICogQHBhcmFtIHtPYmplY3R9IGNvbnRleHRcblx0ICogQHBhcmFtIHtzdHJpbmd9IHVzZXJpZCBVc2VyIGlkIFxuXHQgKiBAcmV0dXJucyB7UHJvbWlzZX1cblx0ICovXG5cdGRlbGV0ZVVzZXIoY29udGV4dCwgeyB1c2VyaWQgfSkge1xuXHRcdHJldHVybiBhcGkucmVxdWlyZUFkbWluKCkudGhlbigocmVzcG9uc2UpID0+IHtcblx0XHRcdHJldHVybiBhcGkuZGVsZXRlKE9DLmxpbmtUb09DUyhgY2xvdWQvdXNlcnMvJHt1c2VyaWR9YCwgMikpXG5cdFx0XHRcdC50aGVuKChyZXNwb25zZSkgPT4gY29udGV4dC5jb21taXQoJ2RlbGV0ZVVzZXInLCB1c2VyaWQpKVxuXHRcdFx0XHQuY2F0Y2goKGVycm9yKSA9PiB7dGhyb3cgZXJyb3I7fSk7XG5cdFx0fSkuY2F0Y2goKGVycm9yKSA9PiBjb250ZXh0LmNvbW1pdCgnQVBJX0ZBSUxVUkUnLCB7IHVzZXJpZCwgZXJyb3IgfSkpO1xuXHR9LFxuXG5cdC8qKlxuXHQgKiBBZGQgYSB1c2VyXG5cdCAqIFxuXHQgKiBAcGFyYW0ge09iamVjdH0gY29udGV4dFxuXHQgKiBAcGFyYW0ge09iamVjdH0gb3B0aW9uc1xuXHQgKiBAcGFyYW0ge3N0cmluZ30gb3B0aW9ucy51c2VyaWQgVXNlciBpZFxuXHQgKiBAcGFyYW0ge3N0cmluZ30gb3B0aW9ucy5wYXNzd29yZCBVc2VyIHBhc3N3b3JkIFxuXHQgKiBAcGFyYW0ge3N0cmluZ30gb3B0aW9ucy5lbWFpbCBVc2VyIGVtYWlsXG5cdCAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLmdyb3VwcyBVc2VyIGdyb3Vwc1xuXHQgKiBAcGFyYW0ge3N0cmluZ30gb3B0aW9ucy5zdWJhZG1pbiBVc2VyIHN1YmFkbWluIGdyb3Vwc1xuXHQgKiBAcGFyYW0ge3N0cmluZ30gb3B0aW9ucy5xdW90YSBVc2VyIGVtYWlsXG5cdCAqIEByZXR1cm5zIHtQcm9taXNlfVxuXHQgKi9cblx0YWRkVXNlcih7Y29udGV4dCwgZGlzcGF0Y2h9LCB7IHVzZXJpZCwgcGFzc3dvcmQsIGVtYWlsLCBncm91cHMsIHN1YmFkbWluLCBxdW90YSwgbGFuZ3VhZ2UgfSkge1xuXHRcdHJldHVybiBhcGkucmVxdWlyZUFkbWluKCkudGhlbigocmVzcG9uc2UpID0+IHtcblx0XHRcdHJldHVybiBhcGkucG9zdChPQy5saW5rVG9PQ1MoYGNsb3VkL3VzZXJzYCwgMiksIHsgdXNlcmlkLCBwYXNzd29yZCwgZW1haWwsIGdyb3Vwcywgc3ViYWRtaW4sIHF1b3RhLCBsYW5ndWFnZSB9KVxuXHRcdFx0XHQudGhlbigocmVzcG9uc2UpID0+IGRpc3BhdGNoKCdhZGRVc2VyRGF0YScsIHVzZXJpZCkpXG5cdFx0XHRcdC5jYXRjaCgoZXJyb3IpID0+IHt0aHJvdyBlcnJvcjt9KTtcblx0XHR9KS5jYXRjaCgoZXJyb3IpID0+IGNvbnRleHQuY29tbWl0KCdBUElfRkFJTFVSRScsIHsgdXNlcmlkLCBlcnJvciB9KSk7XG5cdH0sXG5cblx0LyoqXG5cdCAqIEdldCB1c2VyIGRhdGEgYW5kIGNvbW1pdCBhZGRpdGlvblxuXHQgKiBcblx0ICogQHBhcmFtIHtPYmplY3R9IGNvbnRleHRcblx0ICogQHBhcmFtIHtzdHJpbmd9IHVzZXJpZCBVc2VyIGlkIFxuXHQgKiBAcmV0dXJucyB7UHJvbWlzZX1cblx0ICovXG5cdGFkZFVzZXJEYXRhKGNvbnRleHQsIHVzZXJpZCkge1xuXHRcdHJldHVybiBhcGkucmVxdWlyZUFkbWluKCkudGhlbigocmVzcG9uc2UpID0+IHtcblx0XHRcdHJldHVybiBhcGkuZ2V0KE9DLmxpbmtUb09DUyhgY2xvdWQvdXNlcnMvJHt1c2VyaWR9YCwgMikpXG5cdFx0XHRcdC50aGVuKChyZXNwb25zZSkgPT4gY29udGV4dC5jb21taXQoJ2FkZFVzZXJEYXRhJywgcmVzcG9uc2UpKVxuXHRcdFx0XHQuY2F0Y2goKGVycm9yKSA9PiB7dGhyb3cgZXJyb3I7fSk7XG5cdFx0fSkuY2F0Y2goKGVycm9yKSA9PiBjb250ZXh0LmNvbW1pdCgnQVBJX0ZBSUxVUkUnLCB7IHVzZXJpZCwgZXJyb3IgfSkpO1xuXHR9LFxuXG5cdC8qKiBFbmFibGUgb3IgZGlzYWJsZSB1c2VyIFxuXHQgKiBcblx0ICogQHBhcmFtIHtPYmplY3R9IGNvbnRleHRcblx0ICogQHBhcmFtIHtPYmplY3R9IG9wdGlvbnNcblx0ICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMudXNlcmlkIFVzZXIgaWRcblx0ICogQHBhcmFtIHtib29sZWFufSBvcHRpb25zLmVuYWJsZWQgVXNlciBlbmFibGVtZW50IHN0YXR1c1xuXHQgKiBAcmV0dXJucyB7UHJvbWlzZX1cblx0ICovXG5cdGVuYWJsZURpc2FibGVVc2VyKGNvbnRleHQsIHsgdXNlcmlkLCBlbmFibGVkID0gdHJ1ZSB9KSB7XG5cdFx0bGV0IHVzZXJTdGF0dXMgPSBlbmFibGVkID8gJ2VuYWJsZScgOiAnZGlzYWJsZSc7XG5cdFx0cmV0dXJuIGFwaS5yZXF1aXJlQWRtaW4oKS50aGVuKChyZXNwb25zZSkgPT4ge1xuXHRcdFx0cmV0dXJuIGFwaS5wdXQoT0MubGlua1RvT0NTKGBjbG91ZC91c2Vycy8ke3VzZXJpZH0vJHt1c2VyU3RhdHVzfWAsIDIpKVxuXHRcdFx0XHQudGhlbigocmVzcG9uc2UpID0+IGNvbnRleHQuY29tbWl0KCdlbmFibGVEaXNhYmxlVXNlcicsIHsgdXNlcmlkLCBlbmFibGVkIH0pKVxuXHRcdFx0XHQuY2F0Y2goKGVycm9yKSA9PiB7dGhyb3cgZXJyb3I7fSk7XG5cdFx0fSkuY2F0Y2goKGVycm9yKSA9PiBjb250ZXh0LmNvbW1pdCgnQVBJX0ZBSUxVUkUnLCB7IHVzZXJpZCwgZXJyb3IgfSkpO1xuXHR9LFxuXG5cdC8qKlxuXHQgKiBFZGl0IHVzZXIgZGF0YVxuXHQgKiBcblx0ICogQHBhcmFtIHtPYmplY3R9IGNvbnRleHQgXG5cdCAqIEBwYXJhbSB7T2JqZWN0fSBvcHRpb25zXG5cdCAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLnVzZXJpZCBVc2VyIGlkXG5cdCAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLmtleSBVc2VyIGZpZWxkIHRvIGVkaXRcblx0ICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMudmFsdWUgVmFsdWUgb2YgdGhlIGNoYW5nZVxuXHQgKiBAcmV0dXJucyB7UHJvbWlzZX1cblx0ICovXG5cdHNldFVzZXJEYXRhKGNvbnRleHQsIHsgdXNlcmlkLCBrZXksIHZhbHVlIH0pIHtcblx0XHRsZXQgYWxsb3dlZEVtcHR5ID0gWydlbWFpbCcsICdkaXNwbGF5bmFtZSddO1xuXHRcdGlmIChbJ2VtYWlsJywgJ2xhbmd1YWdlJywgJ3F1b3RhJywgJ2Rpc3BsYXluYW1lJywgJ3Bhc3N3b3JkJ10uaW5kZXhPZihrZXkpICE9PSAtMSkge1xuXHRcdFx0Ly8gV2UgYWxsb3cgZW1wdHkgZW1haWwgb3IgZGlzcGxheW5hbWVcblx0XHRcdGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnICYmXG5cdFx0XHRcdChcblx0XHRcdFx0XHQoYWxsb3dlZEVtcHR5LmluZGV4T2Yoa2V5KSA9PT0gLTEgJiYgdmFsdWUubGVuZ3RoID4gMCkgfHxcblx0XHRcdFx0XHRhbGxvd2VkRW1wdHkuaW5kZXhPZihrZXkpICE9PSAtMVxuXHRcdFx0XHQpXG5cdFx0XHQpIHtcblx0XHRcdFx0cmV0dXJuIGFwaS5yZXF1aXJlQWRtaW4oKS50aGVuKChyZXNwb25zZSkgPT4ge1xuXHRcdFx0XHRcdHJldHVybiBhcGkucHV0KE9DLmxpbmtUb09DUyhgY2xvdWQvdXNlcnMvJHt1c2VyaWR9YCwgMiksIHsga2V5OiBrZXksIHZhbHVlOiB2YWx1ZSB9KVxuXHRcdFx0XHRcdFx0LnRoZW4oKHJlc3BvbnNlKSA9PiBjb250ZXh0LmNvbW1pdCgnc2V0VXNlckRhdGEnLCB7IHVzZXJpZCwga2V5LCB2YWx1ZSB9KSlcblx0XHRcdFx0XHRcdC5jYXRjaCgoZXJyb3IpID0+IHt0aHJvdyBlcnJvcjt9KTtcblx0XHRcdFx0fSkuY2F0Y2goKGVycm9yKSA9PiBjb250ZXh0LmNvbW1pdCgnQVBJX0ZBSUxVUkUnLCB7IHVzZXJpZCwgZXJyb3IgfSkpO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRyZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3IEVycm9yKCdJbnZhbGlkIHJlcXVlc3QgZGF0YScpKTtcblx0fVxufTtcblxuZXhwb3J0IGRlZmF1bHQgeyBzdGF0ZSwgbXV0YXRpb25zLCBnZXR0ZXJzLCBhY3Rpb25zIH07XG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIC4vc3JjL3N0b3JlL3VzZXJzLmpzIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///67\n"); /***/ }), /* 68 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(17);\n\n\nvar state = {\n\tserverData: {}\n};\nvar mutations = {\n\tsetServerData: function setServerData(state, data) {\n\t\tstate.serverData = data;\n\t}\n};\nvar getters = {\n\tgetServerData: function getServerData(state) {\n\t\treturn state.serverData;\n\t}\n};\nvar actions = {};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({ state: state, mutations: mutations, getters: getters, actions: actions });\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvc3RvcmUvc2V0dGluZ3MuanM/ZmY4OCJdLCJuYW1lcyI6WyJzdGF0ZSIsInNlcnZlckRhdGEiLCJtdXRhdGlvbnMiLCJzZXRTZXJ2ZXJEYXRhIiwiZGF0YSIsImdldHRlcnMiLCJnZXRTZXJ2ZXJEYXRhIiwiYWN0aW9ucyJdLCJtYXBwaW5ncyI6IjtBQUFBOztBQUVBLElBQU1BLFFBQVE7QUFDYkMsYUFBWTtBQURDLENBQWQ7QUFHQSxJQUFNQyxZQUFZO0FBQ2pCQyxjQURpQix5QkFDSEgsS0FERyxFQUNJSSxJQURKLEVBQ1U7QUFDMUJKLFFBQU1DLFVBQU4sR0FBbUJHLElBQW5CO0FBQ0E7QUFIZ0IsQ0FBbEI7QUFLQSxJQUFNQyxVQUFVO0FBQ2ZDLGNBRGUseUJBQ0ROLEtBREMsRUFDTTtBQUNwQixTQUFPQSxNQUFNQyxVQUFiO0FBQ0E7QUFIYyxDQUFoQjtBQUtBLElBQU1NLFVBQVUsRUFBaEI7O0FBRUEseURBQWUsRUFBQ1AsWUFBRCxFQUFRRSxvQkFBUixFQUFtQkcsZ0JBQW5CLEVBQTRCRSxnQkFBNUIsRUFBZiIsImZpbGUiOiI2OC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBhcGkgZnJvbSAnLi9hcGknO1xuXG5jb25zdCBzdGF0ZSA9IHtcblx0c2VydmVyRGF0YToge31cbn07XG5jb25zdCBtdXRhdGlvbnMgPSB7XG5cdHNldFNlcnZlckRhdGEoc3RhdGUsIGRhdGEpIHtcblx0XHRzdGF0ZS5zZXJ2ZXJEYXRhID0gZGF0YTtcblx0fVxufTtcbmNvbnN0IGdldHRlcnMgPSB7XG5cdGdldFNlcnZlckRhdGEoc3RhdGUpIHtcblx0XHRyZXR1cm4gc3RhdGUuc2VydmVyRGF0YTtcblx0fVxufTtcbmNvbnN0IGFjdGlvbnMgPSB7fTtcblxuZXhwb3J0IGRlZmF1bHQge3N0YXRlLCBtdXRhdGlvbnMsIGdldHRlcnMsIGFjdGlvbnN9O1xuXG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIC4vc3JjL3N0b3JlL3NldHRpbmdzLmpzIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///68\n"); +eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(6);\n\n\nvar state = {\n\tserverData: {}\n};\nvar mutations = {\n\tsetServerData: function setServerData(state, data) {\n\t\tstate.serverData = data;\n\t}\n};\nvar getters = {\n\tgetServerData: function getServerData(state) {\n\t\treturn state.serverData;\n\t}\n};\nvar actions = {};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({ state: state, mutations: mutations, getters: getters, actions: actions });\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvc3RvcmUvc2V0dGluZ3MuanM/ZmY4OCJdLCJuYW1lcyI6WyJzdGF0ZSIsInNlcnZlckRhdGEiLCJtdXRhdGlvbnMiLCJzZXRTZXJ2ZXJEYXRhIiwiZGF0YSIsImdldHRlcnMiLCJnZXRTZXJ2ZXJEYXRhIiwiYWN0aW9ucyJdLCJtYXBwaW5ncyI6IjtBQUFBOztBQUVBLElBQU1BLFFBQVE7QUFDYkMsYUFBWTtBQURDLENBQWQ7QUFHQSxJQUFNQyxZQUFZO0FBQ2pCQyxjQURpQix5QkFDSEgsS0FERyxFQUNJSSxJQURKLEVBQ1U7QUFDMUJKLFFBQU1DLFVBQU4sR0FBbUJHLElBQW5CO0FBQ0E7QUFIZ0IsQ0FBbEI7QUFLQSxJQUFNQyxVQUFVO0FBQ2ZDLGNBRGUseUJBQ0ROLEtBREMsRUFDTTtBQUNwQixTQUFPQSxNQUFNQyxVQUFiO0FBQ0E7QUFIYyxDQUFoQjtBQUtBLElBQU1NLFVBQVUsRUFBaEI7O0FBR0EseURBQWUsRUFBQ1AsWUFBRCxFQUFRRSxvQkFBUixFQUFtQkcsZ0JBQW5CLEVBQTRCRSxnQkFBNUIsRUFBZiIsImZpbGUiOiI2OC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBhcGkgZnJvbSAnLi9hcGknO1xuXG5jb25zdCBzdGF0ZSA9IHtcblx0c2VydmVyRGF0YToge31cbn07XG5jb25zdCBtdXRhdGlvbnMgPSB7XG5cdHNldFNlcnZlckRhdGEoc3RhdGUsIGRhdGEpIHtcblx0XHRzdGF0ZS5zZXJ2ZXJEYXRhID0gZGF0YTtcblx0fVxufTtcbmNvbnN0IGdldHRlcnMgPSB7XG5cdGdldFNlcnZlckRhdGEoc3RhdGUpIHtcblx0XHRyZXR1cm4gc3RhdGUuc2VydmVyRGF0YTtcblx0fVxufTtcbmNvbnN0IGFjdGlvbnMgPSB7XG59O1xuXG5leHBvcnQgZGVmYXVsdCB7c3RhdGUsIG11dGF0aW9ucywgZ2V0dGVycywgYWN0aW9uc307XG5cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gLi9zcmMvc3RvcmUvc2V0dGluZ3MuanMiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///68\n"); + +/***/ }), +/* 69 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(6);\n\n\nvar state = {};\nvar mutations = {};\nvar getters = {};\nvar actions = {\n\t\t\t\t/**\n * Set application config in database\n * \n * @param {Object} context\n * @param {Object} options\n * @param {string} options.app Application name\n * @param {boolean} options.key Config key\n * @param {boolean} options.value Value to set\n * @returns{Promise}\n */\n\t\t\t\tsetAppConfig: function setAppConfig(context, _ref) {\n\t\t\t\t\t\t\t\tvar app = _ref.app,\n\t\t\t\t\t\t\t\t key = _ref.key,\n\t\t\t\t\t\t\t\t value = _ref.value;\n\n\t\t\t\t\t\t\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n\t\t\t\t\t\t\t\t\t\t\t\treturn __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].post(OC.linkToOCS('apps/provisioning_api/api/v1/config/apps/' + app + '/' + key, 2), { value: value }).catch(function (error) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthrow error;\n\t\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t}).catch(function (error) {\n\t\t\t\t\t\t\t\t\t\t\t\treturn context.commit('API_FAILURE', { app: app, key: key, value: value, error: error });\n\t\t\t\t\t\t\t\t});;\n\t\t\t\t}\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({ state: state, mutations: mutations, getters: getters, actions: actions });\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvc3RvcmUvb2MuanM/NDI2ZCJdLCJuYW1lcyI6WyJzdGF0ZSIsIm11dGF0aW9ucyIsImdldHRlcnMiLCJhY3Rpb25zIiwic2V0QXBwQ29uZmlnIiwiY29udGV4dCIsImFwcCIsImtleSIsInZhbHVlIiwiYXBpIiwicmVxdWlyZUFkbWluIiwidGhlbiIsInJlc3BvbnNlIiwicG9zdCIsIk9DIiwibGlua1RvT0NTIiwiY2F0Y2giLCJlcnJvciIsImNvbW1pdCJdLCJtYXBwaW5ncyI6IjtBQUFBOztBQUVBLElBQU1BLFFBQVEsRUFBZDtBQUNBLElBQU1DLFlBQVksRUFBbEI7QUFDQSxJQUFNQyxVQUFVLEVBQWhCO0FBQ0EsSUFBTUMsVUFBVTtBQUNmOzs7Ozs7Ozs7O0FBVUFDLGdCQVhlLHdCQVdGQyxPQVhFLFFBVzBCO0FBQUEsWUFBbEJDLEdBQWtCLFFBQWxCQSxHQUFrQjtBQUFBLFlBQWJDLEdBQWEsUUFBYkEsR0FBYTtBQUFBLFlBQVJDLEtBQVEsUUFBUkEsS0FBUTs7QUFDeEMsZUFBTyxxREFBQUMsQ0FBSUMsWUFBSixHQUFtQkMsSUFBbkIsQ0FBd0IsVUFBQ0MsUUFBRCxFQUFjO0FBQzVDLG1CQUFPLHFEQUFBSCxDQUFJSSxJQUFKLENBQVNDLEdBQUdDLFNBQUgsK0NBQXlEVCxHQUF6RCxTQUFnRUMsR0FBaEUsRUFBdUUsQ0FBdkUsQ0FBVCxFQUFvRixFQUFDQyxPQUFPQSxLQUFSLEVBQXBGLEVBQ0xRLEtBREssQ0FDQyxVQUFDQyxLQUFELEVBQVc7QUFBQyxzQkFBTUEsS0FBTjtBQUFhLGFBRDFCLENBQVA7QUFFQSxTQUhNLEVBR0pELEtBSEksQ0FHRSxVQUFDQyxLQUFEO0FBQUEsbUJBQVdaLFFBQVFhLE1BQVIsQ0FBZSxhQUFmLEVBQThCLEVBQUVaLFFBQUYsRUFBT0MsUUFBUCxFQUFZQyxZQUFaLEVBQW1CUyxZQUFuQixFQUE5QixDQUFYO0FBQUEsU0FIRixDQUFQLENBRytFO0FBQzVFO0FBaEJXLENBQWhCOztBQW1CQSx5REFBZSxFQUFDakIsWUFBRCxFQUFRQyxvQkFBUixFQUFtQkMsZ0JBQW5CLEVBQTRCQyxnQkFBNUIsRUFBZiIsImZpbGUiOiI2OS5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBhcGkgZnJvbSAnLi9hcGknO1xuXG5jb25zdCBzdGF0ZSA9IHt9O1xuY29uc3QgbXV0YXRpb25zID0ge307XG5jb25zdCBnZXR0ZXJzID0ge307XG5jb25zdCBhY3Rpb25zID0ge1xuXHQvKipcbiAgICAgKiBTZXQgYXBwbGljYXRpb24gY29uZmlnIGluIGRhdGFiYXNlXG4gICAgICogXG5cdCAqIEBwYXJhbSB7T2JqZWN0fSBjb250ZXh0XG4gICAgICogQHBhcmFtIHtPYmplY3R9IG9wdGlvbnNcblx0ICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMuYXBwIEFwcGxpY2F0aW9uIG5hbWVcblx0ICogQHBhcmFtIHtib29sZWFufSBvcHRpb25zLmtleSBDb25maWcga2V5XG5cdCAqIEBwYXJhbSB7Ym9vbGVhbn0gb3B0aW9ucy52YWx1ZSBWYWx1ZSB0byBzZXRcblx0ICogQHJldHVybnN7UHJvbWlzZX1cblx0ICovXG5cdHNldEFwcENvbmZpZyhjb250ZXh0LCB7YXBwLCBrZXksIHZhbHVlfSkge1xuXHRcdHJldHVybiBhcGkucmVxdWlyZUFkbWluKCkudGhlbigocmVzcG9uc2UpID0+IHtcblx0XHRcdHJldHVybiBhcGkucG9zdChPQy5saW5rVG9PQ1MoYGFwcHMvcHJvdmlzaW9uaW5nX2FwaS9hcGkvdjEvY29uZmlnL2FwcHMvJHthcHB9LyR7a2V5fWAsIDIpLCB7dmFsdWU6IHZhbHVlfSlcblx0XHRcdFx0LmNhdGNoKChlcnJvcikgPT4ge3Rocm93IGVycm9yO30pO1xuXHRcdH0pLmNhdGNoKChlcnJvcikgPT4gY29udGV4dC5jb21taXQoJ0FQSV9GQUlMVVJFJywgeyBhcHAsIGtleSwgdmFsdWUsIGVycm9yIH0pKTs7XG4gICAgfVxufTtcblxuZXhwb3J0IGRlZmF1bHQge3N0YXRlLCBtdXRhdGlvbnMsIGdldHRlcnMsIGFjdGlvbnN9O1xuXG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIC4vc3JjL3N0b3JlL29jLmpzIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///69\n"); /***/ }) /******/ ]); \ No newline at end of file diff --git a/settings/src/store/api.js b/settings/src/store/api.js index 5ed6d66ef5..7501a7bb4c 100644 --- a/settings/src/store/api.js +++ b/settings/src/store/api.js @@ -95,19 +95,5 @@ export default { return axios.delete(sanitize(url), { data: data, headers: tokenHeaders.headers }) .then((response) => Promise.resolve(response)) .catch((error) => Promise.reject(error)); - }, - - // OCS API entry points - /** - * - * @param {string} app Application name - * @param {string} key Config key - * @param {string} [value=''] Value to set - * @returns{Promise} - */ - setAppConfig(app, key, value = '') { - return this.requireAdmin().then((response) => { - return this.post(OC.linkToOCS(`apps/provisioning_api/api/v1/config/apps/${app}/${key}`, 2), {value: value}); - }); } }; \ No newline at end of file diff --git a/settings/src/store/index.js b/settings/src/store/index.js index 1fe0c214d5..bf08e4aa39 100644 --- a/settings/src/store/index.js +++ b/settings/src/store/index.js @@ -2,6 +2,7 @@ import Vue from 'vue'; import Vuex from 'vuex'; import users from './users'; import settings from './settings'; +import oc from './oc'; Vue.use(Vuex) @@ -10,13 +11,15 @@ const debug = process.env.NODE_ENV !== 'production'; const mutations = { API_FAILURE(state, error) { console.log(state, error); + OC.Notification.showTemporary(t('settings','An error occured during the request. Unable to proceed.')); } }; export default new Vuex.Store({ modules: { users, - settings + settings, + oc }, strict: debug, diff --git a/settings/src/store/oc.js b/settings/src/store/oc.js new file mode 100644 index 0000000000..4bb82075e8 --- /dev/null +++ b/settings/src/store/oc.js @@ -0,0 +1,25 @@ +import api from './api'; + +const state = {}; +const mutations = {}; +const getters = {}; +const actions = { + /** + * Set application config in database + * + * @param {Object} context + * @param {Object} options + * @param {string} options.app Application name + * @param {boolean} options.key Config key + * @param {boolean} options.value Value to set + * @returns{Promise} + */ + setAppConfig(context, {app, key, value}) { + return api.requireAdmin().then((response) => { + return api.post(OC.linkToOCS(`apps/provisioning_api/api/v1/config/apps/${app}/${key}`, 2), {value: value}) + .catch((error) => {throw error;}); + }).catch((error) => context.commit('API_FAILURE', { app, key, value, error }));; + } +}; + +export default {state, mutations, getters, actions}; diff --git a/settings/src/views/Users.vue b/settings/src/views/Users.vue index 5f666f986f..d0e5591cd0 100644 --- a/settings/src/views/Users.vue +++ b/settings/src/views/Users.vue @@ -69,6 +69,8 @@ export default { return { // default quota is unlimited unlimitedQuota: {id:'default', label:t('settings', 'Unlimited')}, + // temporary value used for multiselect change + selectedQuota: false, showConfig: { showStoragePath: false, showUserBackend: false, @@ -110,9 +112,17 @@ export default { * @returns {string} */ setDefaultQuota(quota = 'none') { - // ensure we only send the preset id - quota = quota.id ? quota.id : quota; - api.setAppConfig('files', 'default_quota', quota); + this.$store.dispatch('setAppConfig', { + app: 'files', + key: 'default_quota', + // ensure we only send the preset id + value: quota.id ? quota.id : quota + }).then(() => { + if (typeof quota !== 'object') { + quota = {id: quota, label: quota}; + } + this.defaultQuota = quota; + }); }, /** @@ -190,12 +200,21 @@ export default { return quotaPreset; }, // mapping saved values to objects - defaultQuota() { - if (OC.Util.computerFileSize(this.settings.defaultQuota) > 0) { - // if value is valid, let's map the quotaOptions or return custom quota - return {id:this.settings.defaultQuota, label:this.settings.defaultQuota}; + defaultQuota: { + get: function() { + if (this.selectedQuota !== false) { + return this.selectedQuota; + } + if (OC.Util.computerFileSize(this.settings.defaultQuota) > 0) { + // if value is valid, let's map the quotaOptions or return custom quota + return {id:this.settings.defaultQuota, label:this.settings.defaultQuota}; + } + return this.unlimitedQuota; // unlimited + }, + set: function(quota) { + this.selectedQuota = quota; } - return this.unlimitedQuota; // unlimited + }, // BUILD APP NAVIGATION MENU OBJECT