diff --git a/current/dist/openlayers/Common/Utils/LoggerByDefault.d.ts.map b/current/dist/openlayers/Common/Utils/LoggerByDefault.d.ts.map index a5b82217f..5fd3a9b7f 100644 --- a/current/dist/openlayers/Common/Utils/LoggerByDefault.d.ts.map +++ b/current/dist/openlayers/Common/Utils/LoggerByDefault.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"LoggerByDefault.d.ts","sourceRoot":"","sources":["../../../../src/Common/Utils/LoggerByDefault.js"],"names":[],"mappings":";;IAqBgB,sDAMX;IAKY,4BAQZ;IAKW,2BAQX"} \ No newline at end of file +{"version":3,"file":"LoggerByDefault.d.ts","sourceRoot":"","sources":["../../../../src/Common/Utils/LoggerByDefault.js"],"names":[],"mappings":";;IAqBgB,sDAaX;IAKY,4BAQZ;IAKW,2BAQX"} \ No newline at end of file diff --git a/current/dist/openlayers/GpPluginOpenLayers-map.css b/current/dist/openlayers/GpPluginOpenLayers-map.css index 1450ef858..8ce9b1600 100644 --- a/current/dist/openlayers/GpPluginOpenLayers-map.css +++ b/current/dist/openlayers/GpPluginOpenLayers-map.css @@ -9,8 +9,8 @@ * @copyright copyright (c) IGN * @license CeCILL-B * @author IGN - * @version 3.4.1 - * @date 04/04/2024 + * @version 3.4.2 + * @date 17/04/2024 * */ diff --git a/current/dist/openlayers/GpPluginOpenLayers-map.js b/current/dist/openlayers/GpPluginOpenLayers-map.js index 963de920e..0ec3fbffb 100644 --- a/current/dist/openlayers/GpPluginOpenLayers-map.js +++ b/current/dist/openlayers/GpPluginOpenLayers-map.js @@ -9,8 +9,8 @@ * @copyright copyright (c) IGN * @license CeCILL-B * @author IGN - * @version 3.4.1 - * @date 04/04/2024 + * @version 3.4.2 + * @date 17/04/2024 * */ @@ -196,6 +196,74 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* WEBPACK VAR INJECTION */(f /***/ }), +/***/ "./node_modules/@xmldom/xmldom/lib/conventions.js": +/*!********************************************************!*\ + !*** ./node_modules/@xmldom/xmldom/lib/conventions.js ***! + \********************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; +eval("\n\n/**\n * Ponyfill for `Array.prototype.find` which is only available in ES6 runtimes.\n *\n * Works with anything that has a `length` property and index access properties, including NodeList.\n *\n * @template {unknown} T\n * @param {Array | ({length:number, [number]: T})} list\n * @param {function (item: T, index: number, list:Array | ({length:number, [number]: T})):boolean} predicate\n * @param {Partial>?} ac `Array.prototype` by default,\n * \t\t\t\tallows injecting a custom implementation in tests\n * @returns {T | undefined}\n *\n * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/find\n * @see https://tc39.es/ecma262/multipage/indexed-collections.html#sec-array.prototype.find\n */\nfunction find(list, predicate, ac) {\n\tif (ac === undefined) {\n\t\tac = Array.prototype;\n\t}\n\tif (list && typeof ac.find === 'function') {\n\t\treturn ac.find.call(list, predicate);\n\t}\n\tfor (var i = 0; i < list.length; i++) {\n\t\tif (Object.prototype.hasOwnProperty.call(list, i)) {\n\t\t\tvar item = list[i];\n\t\t\tif (predicate.call(undefined, item, i, list)) {\n\t\t\t\treturn item;\n\t\t\t}\n\t\t}\n\t}\n}\n\n/**\n * \"Shallow freezes\" an object to render it immutable.\n * Uses `Object.freeze` if available,\n * otherwise the immutability is only in the type.\n *\n * Is used to create \"enum like\" objects.\n *\n * @template T\n * @param {T} object the object to freeze\n * @param {Pick = Object} oc `Object` by default,\n * \t\t\t\tallows to inject custom object constructor for tests\n * @returns {Readonly}\n *\n * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/freeze\n */\nfunction freeze(object, oc) {\n\tif (oc === undefined) {\n\t\toc = Object\n\t}\n\treturn oc && typeof oc.freeze === 'function' ? oc.freeze(object) : object\n}\n\n/**\n * Since we can not rely on `Object.assign` we provide a simplified version\n * that is sufficient for our needs.\n *\n * @param {Object} target\n * @param {Object | null | undefined} source\n *\n * @returns {Object} target\n * @throws TypeError if target is not an object\n *\n * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/assign\n * @see https://tc39.es/ecma262/multipage/fundamental-objects.html#sec-object.assign\n */\nfunction assign(target, source) {\n\tif (target === null || typeof target !== 'object') {\n\t\tthrow new TypeError('target is not an object')\n\t}\n\tfor (var key in source) {\n\t\tif (Object.prototype.hasOwnProperty.call(source, key)) {\n\t\t\ttarget[key] = source[key]\n\t\t}\n\t}\n\treturn target\n}\n\n/**\n * All mime types that are allowed as input to `DOMParser.parseFromString`\n *\n * @see https://developer.mozilla.org/en-US/docs/Web/API/DOMParser/parseFromString#Argument02 MDN\n * @see https://html.spec.whatwg.org/multipage/dynamic-markup-insertion.html#domparsersupportedtype WHATWG HTML Spec\n * @see DOMParser.prototype.parseFromString\n */\nvar MIME_TYPE = freeze({\n\t/**\n\t * `text/html`, the only mime type that triggers treating an XML document as HTML.\n\t *\n\t * @see DOMParser.SupportedType.isHTML\n\t * @see https://www.iana.org/assignments/media-types/text/html IANA MimeType registration\n\t * @see https://en.wikipedia.org/wiki/HTML Wikipedia\n\t * @see https://developer.mozilla.org/en-US/docs/Web/API/DOMParser/parseFromString MDN\n\t * @see https://html.spec.whatwg.org/multipage/dynamic-markup-insertion.html#dom-domparser-parsefromstring WHATWG HTML Spec\n\t */\n\tHTML: 'text/html',\n\n\t/**\n\t * Helper method to check a mime type if it indicates an HTML document\n\t *\n\t * @param {string} [value]\n\t * @returns {boolean}\n\t *\n\t * @see https://www.iana.org/assignments/media-types/text/html IANA MimeType registration\n\t * @see https://en.wikipedia.org/wiki/HTML Wikipedia\n\t * @see https://developer.mozilla.org/en-US/docs/Web/API/DOMParser/parseFromString MDN\n\t * @see https://html.spec.whatwg.org/multipage/dynamic-markup-insertion.html#dom-domparser-parsefromstring \t */\n\tisHTML: function (value) {\n\t\treturn value === MIME_TYPE.HTML\n\t},\n\n\t/**\n\t * `application/xml`, the standard mime type for XML documents.\n\t *\n\t * @see https://www.iana.org/assignments/media-types/application/xml IANA MimeType registration\n\t * @see https://tools.ietf.org/html/rfc7303#section-9.1 RFC 7303\n\t * @see https://en.wikipedia.org/wiki/XML_and_MIME Wikipedia\n\t */\n\tXML_APPLICATION: 'application/xml',\n\n\t/**\n\t * `text/html`, an alias for `application/xml`.\n\t *\n\t * @see https://tools.ietf.org/html/rfc7303#section-9.2 RFC 7303\n\t * @see https://www.iana.org/assignments/media-types/text/xml IANA MimeType registration\n\t * @see https://en.wikipedia.org/wiki/XML_and_MIME Wikipedia\n\t */\n\tXML_TEXT: 'text/xml',\n\n\t/**\n\t * `application/xhtml+xml`, indicates an XML document that has the default HTML namespace,\n\t * but is parsed as an XML document.\n\t *\n\t * @see https://www.iana.org/assignments/media-types/application/xhtml+xml IANA MimeType registration\n\t * @see https://dom.spec.whatwg.org/#dom-domimplementation-createdocument WHATWG DOM Spec\n\t * @see https://en.wikipedia.org/wiki/XHTML Wikipedia\n\t */\n\tXML_XHTML_APPLICATION: 'application/xhtml+xml',\n\n\t/**\n\t * `image/svg+xml`,\n\t *\n\t * @see https://www.iana.org/assignments/media-types/image/svg+xml IANA MimeType registration\n\t * @see https://www.w3.org/TR/SVG11/ W3C SVG 1.1\n\t * @see https://en.wikipedia.org/wiki/Scalable_Vector_Graphics Wikipedia\n\t */\n\tXML_SVG_IMAGE: 'image/svg+xml',\n})\n\n/**\n * Namespaces that are used in this code base.\n *\n * @see http://www.w3.org/TR/REC-xml-names\n */\nvar NAMESPACE = freeze({\n\t/**\n\t * The XHTML namespace.\n\t *\n\t * @see http://www.w3.org/1999/xhtml\n\t */\n\tHTML: 'http://www.w3.org/1999/xhtml',\n\n\t/**\n\t * Checks if `uri` equals `NAMESPACE.HTML`.\n\t *\n\t * @param {string} [uri]\n\t *\n\t * @see NAMESPACE.HTML\n\t */\n\tisHTML: function (uri) {\n\t\treturn uri === NAMESPACE.HTML\n\t},\n\n\t/**\n\t * The SVG namespace.\n\t *\n\t * @see http://www.w3.org/2000/svg\n\t */\n\tSVG: 'http://www.w3.org/2000/svg',\n\n\t/**\n\t * The `xml:` namespace.\n\t *\n\t * @see http://www.w3.org/XML/1998/namespace\n\t */\n\tXML: 'http://www.w3.org/XML/1998/namespace',\n\n\t/**\n\t * The `xmlns:` namespace\n\t *\n\t * @see https://www.w3.org/2000/xmlns/\n\t */\n\tXMLNS: 'http://www.w3.org/2000/xmlns/',\n})\n\nexports.assign = assign;\nexports.find = find;\nexports.freeze = freeze;\nexports.MIME_TYPE = MIME_TYPE;\nexports.NAMESPACE = NAMESPACE;\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9HcC8uL25vZGVfbW9kdWxlcy9AeG1sZG9tL3htbGRvbS9saWIvY29udmVudGlvbnMuanM/ODlhNyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBWTs7QUFFWjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsY0FBYyxRQUFRO0FBQ3RCLFdBQVcsYUFBYSwyQkFBMkIsRUFBRTtBQUNyRCxXQUFXLG9EQUFvRCwyQkFBMkIsV0FBVztBQUNyRyxXQUFXLHNEQUFzRDtBQUNqRTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLGlCQUFpQjtBQUNqQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLEVBQUU7QUFDYixXQUFXLDJDQUEyQztBQUN0RDtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLE9BQU87QUFDbEIsV0FBVywwQkFBMEI7QUFDckM7QUFDQSxhQUFhLE9BQU87QUFDcEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLFlBQVksT0FBTztBQUNuQixjQUFjO0FBQ2Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxFQUFFOztBQUVGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLFlBQVksT0FBTztBQUNuQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsRUFBRTs7QUFFRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsImZpbGUiOiIuL25vZGVfbW9kdWxlcy9AeG1sZG9tL3htbGRvbS9saWIvY29udmVudGlvbnMuanMuanMiLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIHN0cmljdCdcblxuLyoqXG4gKiBQb255ZmlsbCBmb3IgYEFycmF5LnByb3RvdHlwZS5maW5kYCB3aGljaCBpcyBvbmx5IGF2YWlsYWJsZSBpbiBFUzYgcnVudGltZXMuXG4gKlxuICogV29ya3Mgd2l0aCBhbnl0aGluZyB0aGF0IGhhcyBhIGBsZW5ndGhgIHByb3BlcnR5IGFuZCBpbmRleCBhY2Nlc3MgcHJvcGVydGllcywgaW5jbHVkaW5nIE5vZGVMaXN0LlxuICpcbiAqIEB0ZW1wbGF0ZSB7dW5rbm93bn0gVFxuICogQHBhcmFtIHtBcnJheTxUPiB8ICh7bGVuZ3RoOm51bWJlciwgW251bWJlcl06IFR9KX0gbGlzdFxuICogQHBhcmFtIHtmdW5jdGlvbiAoaXRlbTogVCwgaW5kZXg6IG51bWJlciwgbGlzdDpBcnJheTxUPiB8ICh7bGVuZ3RoOm51bWJlciwgW251bWJlcl06IFR9KSk6Ym9vbGVhbn0gcHJlZGljYXRlXG4gKiBAcGFyYW0ge1BhcnRpYWw8UGljazxBcnJheUNvbnN0cnVjdG9yWydwcm90b3R5cGUnXSwgJ2ZpbmQnPj4/fSBhYyBgQXJyYXkucHJvdG90eXBlYCBieSBkZWZhdWx0LFxuICogXHRcdFx0XHRhbGxvd3MgaW5qZWN0aW5nIGEgY3VzdG9tIGltcGxlbWVudGF0aW9uIGluIHRlc3RzXG4gKiBAcmV0dXJucyB7VCB8IHVuZGVmaW5lZH1cbiAqXG4gKiBAc2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0phdmFTY3JpcHQvUmVmZXJlbmNlL0dsb2JhbF9PYmplY3RzL0FycmF5L2ZpbmRcbiAqIEBzZWUgaHR0cHM6Ly90YzM5LmVzL2VjbWEyNjIvbXVsdGlwYWdlL2luZGV4ZWQtY29sbGVjdGlvbnMuaHRtbCNzZWMtYXJyYXkucHJvdG90eXBlLmZpbmRcbiAqL1xuZnVuY3Rpb24gZmluZChsaXN0LCBwcmVkaWNhdGUsIGFjKSB7XG5cdGlmIChhYyA9PT0gdW5kZWZpbmVkKSB7XG5cdFx0YWMgPSBBcnJheS5wcm90b3R5cGU7XG5cdH1cblx0aWYgKGxpc3QgJiYgdHlwZW9mIGFjLmZpbmQgPT09ICdmdW5jdGlvbicpIHtcblx0XHRyZXR1cm4gYWMuZmluZC5jYWxsKGxpc3QsIHByZWRpY2F0ZSk7XG5cdH1cblx0Zm9yICh2YXIgaSA9IDA7IGkgPCBsaXN0Lmxlbmd0aDsgaSsrKSB7XG5cdFx0aWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChsaXN0LCBpKSkge1xuXHRcdFx0dmFyIGl0ZW0gPSBsaXN0W2ldO1xuXHRcdFx0aWYgKHByZWRpY2F0ZS5jYWxsKHVuZGVmaW5lZCwgaXRlbSwgaSwgbGlzdCkpIHtcblx0XHRcdFx0cmV0dXJuIGl0ZW07XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi8qKlxuICogXCJTaGFsbG93IGZyZWV6ZXNcIiBhbiBvYmplY3QgdG8gcmVuZGVyIGl0IGltbXV0YWJsZS5cbiAqIFVzZXMgYE9iamVjdC5mcmVlemVgIGlmIGF2YWlsYWJsZSxcbiAqIG90aGVyd2lzZSB0aGUgaW1tdXRhYmlsaXR5IGlzIG9ubHkgaW4gdGhlIHR5cGUuXG4gKlxuICogSXMgdXNlZCB0byBjcmVhdGUgXCJlbnVtIGxpa2VcIiBvYmplY3RzLlxuICpcbiAqIEB0ZW1wbGF0ZSBUXG4gKiBAcGFyYW0ge1R9IG9iamVjdCB0aGUgb2JqZWN0IHRvIGZyZWV6ZVxuICogQHBhcmFtIHtQaWNrPE9iamVjdENvbnN0cnVjdG9yLCAnZnJlZXplJz4gPSBPYmplY3R9IG9jIGBPYmplY3RgIGJ5IGRlZmF1bHQsXG4gKiBcdFx0XHRcdGFsbG93cyB0byBpbmplY3QgY3VzdG9tIG9iamVjdCBjb25zdHJ1Y3RvciBmb3IgdGVzdHNcbiAqIEByZXR1cm5zIHtSZWFkb25seTxUPn1cbiAqXG4gKiBAc2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0phdmFTY3JpcHQvUmVmZXJlbmNlL0dsb2JhbF9PYmplY3RzL09iamVjdC9mcmVlemVcbiAqL1xuZnVuY3Rpb24gZnJlZXplKG9iamVjdCwgb2MpIHtcblx0aWYgKG9jID09PSB1bmRlZmluZWQpIHtcblx0XHRvYyA9IE9iamVjdFxuXHR9XG5cdHJldHVybiBvYyAmJiB0eXBlb2Ygb2MuZnJlZXplID09PSAnZnVuY3Rpb24nID8gb2MuZnJlZXplKG9iamVjdCkgOiBvYmplY3Rcbn1cblxuLyoqXG4gKiBTaW5jZSB3ZSBjYW4gbm90IHJlbHkgb24gYE9iamVjdC5hc3NpZ25gIHdlIHByb3ZpZGUgYSBzaW1wbGlmaWVkIHZlcnNpb25cbiAqIHRoYXQgaXMgc3VmZmljaWVudCBmb3Igb3VyIG5lZWRzLlxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSB0YXJnZXRcbiAqIEBwYXJhbSB7T2JqZWN0IHwgbnVsbCB8IHVuZGVmaW5lZH0gc291cmNlXG4gKlxuICogQHJldHVybnMge09iamVjdH0gdGFyZ2V0XG4gKiBAdGhyb3dzIFR5cGVFcnJvciBpZiB0YXJnZXQgaXMgbm90IGFuIG9iamVjdFxuICpcbiAqIEBzZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvSmF2YVNjcmlwdC9SZWZlcmVuY2UvR2xvYmFsX09iamVjdHMvT2JqZWN0L2Fzc2lnblxuICogQHNlZSBodHRwczovL3RjMzkuZXMvZWNtYTI2Mi9tdWx0aXBhZ2UvZnVuZGFtZW50YWwtb2JqZWN0cy5odG1sI3NlYy1vYmplY3QuYXNzaWduXG4gKi9cbmZ1bmN0aW9uIGFzc2lnbih0YXJnZXQsIHNvdXJjZSkge1xuXHRpZiAodGFyZ2V0ID09PSBudWxsIHx8IHR5cGVvZiB0YXJnZXQgIT09ICdvYmplY3QnKSB7XG5cdFx0dGhyb3cgbmV3IFR5cGVFcnJvcigndGFyZ2V0IGlzIG5vdCBhbiBvYmplY3QnKVxuXHR9XG5cdGZvciAodmFyIGtleSBpbiBzb3VyY2UpIHtcblx0XHRpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHNvdXJjZSwga2V5KSkge1xuXHRcdFx0dGFyZ2V0W2tleV0gPSBzb3VyY2Vba2V5XVxuXHRcdH1cblx0fVxuXHRyZXR1cm4gdGFyZ2V0XG59XG5cbi8qKlxuICogQWxsIG1pbWUgdHlwZXMgdGhhdCBhcmUgYWxsb3dlZCBhcyBpbnB1dCB0byBgRE9NUGFyc2VyLnBhcnNlRnJvbVN0cmluZ2BcbiAqXG4gKiBAc2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0FQSS9ET01QYXJzZXIvcGFyc2VGcm9tU3RyaW5nI0FyZ3VtZW50MDIgTUROXG4gKiBAc2VlIGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlL2R5bmFtaWMtbWFya3VwLWluc2VydGlvbi5odG1sI2RvbXBhcnNlcnN1cHBvcnRlZHR5cGUgV0hBVFdHIEhUTUwgU3BlY1xuICogQHNlZSBET01QYXJzZXIucHJvdG90eXBlLnBhcnNlRnJvbVN0cmluZ1xuICovXG52YXIgTUlNRV9UWVBFID0gZnJlZXplKHtcblx0LyoqXG5cdCAqIGB0ZXh0L2h0bWxgLCB0aGUgb25seSBtaW1lIHR5cGUgdGhhdCB0cmlnZ2VycyB0cmVhdGluZyBhbiBYTUwgZG9jdW1lbnQgYXMgSFRNTC5cblx0ICpcblx0ICogQHNlZSBET01QYXJzZXIuU3VwcG9ydGVkVHlwZS5pc0hUTUxcblx0ICogQHNlZSBodHRwczovL3d3dy5pYW5hLm9yZy9hc3NpZ25tZW50cy9tZWRpYS10eXBlcy90ZXh0L2h0bWwgSUFOQSBNaW1lVHlwZSByZWdpc3RyYXRpb25cblx0ICogQHNlZSBodHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9IVE1MIFdpa2lwZWRpYVxuXHQgKiBAc2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0FQSS9ET01QYXJzZXIvcGFyc2VGcm9tU3RyaW5nIE1ETlxuXHQgKiBAc2VlIGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlL2R5bmFtaWMtbWFya3VwLWluc2VydGlvbi5odG1sI2RvbS1kb21wYXJzZXItcGFyc2Vmcm9tc3RyaW5nIFdIQVRXRyBIVE1MIFNwZWNcblx0ICovXG5cdEhUTUw6ICd0ZXh0L2h0bWwnLFxuXG5cdC8qKlxuXHQgKiBIZWxwZXIgbWV0aG9kIHRvIGNoZWNrIGEgbWltZSB0eXBlIGlmIGl0IGluZGljYXRlcyBhbiBIVE1MIGRvY3VtZW50XG5cdCAqXG5cdCAqIEBwYXJhbSB7c3RyaW5nfSBbdmFsdWVdXG5cdCAqIEByZXR1cm5zIHtib29sZWFufVxuXHQgKlxuXHQgKiBAc2VlIGh0dHBzOi8vd3d3LmlhbmEub3JnL2Fzc2lnbm1lbnRzL21lZGlhLXR5cGVzL3RleHQvaHRtbCBJQU5BIE1pbWVUeXBlIHJlZ2lzdHJhdGlvblxuXHQgKiBAc2VlIGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0hUTUwgV2lraXBlZGlhXG5cdCAqIEBzZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQVBJL0RPTVBhcnNlci9wYXJzZUZyb21TdHJpbmcgTUROXG5cdCAqIEBzZWUgaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2UvZHluYW1pYy1tYXJrdXAtaW5zZXJ0aW9uLmh0bWwjZG9tLWRvbXBhcnNlci1wYXJzZWZyb21zdHJpbmcgXHQgKi9cblx0aXNIVE1MOiBmdW5jdGlvbiAodmFsdWUpIHtcblx0XHRyZXR1cm4gdmFsdWUgPT09IE1JTUVfVFlQRS5IVE1MXG5cdH0sXG5cblx0LyoqXG5cdCAqIGBhcHBsaWNhdGlvbi94bWxgLCB0aGUgc3RhbmRhcmQgbWltZSB0eXBlIGZvciBYTUwgZG9jdW1lbnRzLlxuXHQgKlxuXHQgKiBAc2VlIGh0dHBzOi8vd3d3LmlhbmEub3JnL2Fzc2lnbm1lbnRzL21lZGlhLXR5cGVzL2FwcGxpY2F0aW9uL3htbCBJQU5BIE1pbWVUeXBlIHJlZ2lzdHJhdGlvblxuXHQgKiBAc2VlIGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmM3MzAzI3NlY3Rpb24tOS4xIFJGQyA3MzAzXG5cdCAqIEBzZWUgaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvWE1MX2FuZF9NSU1FIFdpa2lwZWRpYVxuXHQgKi9cblx0WE1MX0FQUExJQ0FUSU9OOiAnYXBwbGljYXRpb24veG1sJyxcblxuXHQvKipcblx0ICogYHRleHQvaHRtbGAsIGFuIGFsaWFzIGZvciBgYXBwbGljYXRpb24veG1sYC5cblx0ICpcblx0ICogQHNlZSBodHRwczovL3Rvb2xzLmlldGYub3JnL2h0bWwvcmZjNzMwMyNzZWN0aW9uLTkuMiBSRkMgNzMwM1xuXHQgKiBAc2VlIGh0dHBzOi8vd3d3LmlhbmEub3JnL2Fzc2lnbm1lbnRzL21lZGlhLXR5cGVzL3RleHQveG1sIElBTkEgTWltZVR5cGUgcmVnaXN0cmF0aW9uXG5cdCAqIEBzZWUgaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvWE1MX2FuZF9NSU1FIFdpa2lwZWRpYVxuXHQgKi9cblx0WE1MX1RFWFQ6ICd0ZXh0L3htbCcsXG5cblx0LyoqXG5cdCAqIGBhcHBsaWNhdGlvbi94aHRtbCt4bWxgLCBpbmRpY2F0ZXMgYW4gWE1MIGRvY3VtZW50IHRoYXQgaGFzIHRoZSBkZWZhdWx0IEhUTUwgbmFtZXNwYWNlLFxuXHQgKiBidXQgaXMgcGFyc2VkIGFzIGFuIFhNTCBkb2N1bWVudC5cblx0ICpcblx0ICogQHNlZSBodHRwczovL3d3dy5pYW5hLm9yZy9hc3NpZ25tZW50cy9tZWRpYS10eXBlcy9hcHBsaWNhdGlvbi94aHRtbCt4bWwgSUFOQSBNaW1lVHlwZSByZWdpc3RyYXRpb25cblx0ICogQHNlZSBodHRwczovL2RvbS5zcGVjLndoYXR3Zy5vcmcvI2RvbS1kb21pbXBsZW1lbnRhdGlvbi1jcmVhdGVkb2N1bWVudCBXSEFUV0cgRE9NIFNwZWNcblx0ICogQHNlZSBodHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9YSFRNTCBXaWtpcGVkaWFcblx0ICovXG5cdFhNTF9YSFRNTF9BUFBMSUNBVElPTjogJ2FwcGxpY2F0aW9uL3hodG1sK3htbCcsXG5cblx0LyoqXG5cdCAqIGBpbWFnZS9zdmcreG1sYCxcblx0ICpcblx0ICogQHNlZSBodHRwczovL3d3dy5pYW5hLm9yZy9hc3NpZ25tZW50cy9tZWRpYS10eXBlcy9pbWFnZS9zdmcreG1sIElBTkEgTWltZVR5cGUgcmVnaXN0cmF0aW9uXG5cdCAqIEBzZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL1NWRzExLyBXM0MgU1ZHIDEuMVxuXHQgKiBAc2VlIGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL1NjYWxhYmxlX1ZlY3Rvcl9HcmFwaGljcyBXaWtpcGVkaWFcblx0ICovXG5cdFhNTF9TVkdfSU1BR0U6ICdpbWFnZS9zdmcreG1sJyxcbn0pXG5cbi8qKlxuICogTmFtZXNwYWNlcyB0aGF0IGFyZSB1c2VkIGluIHRoaXMgY29kZSBiYXNlLlxuICpcbiAqIEBzZWUgaHR0cDovL3d3dy53My5vcmcvVFIvUkVDLXhtbC1uYW1lc1xuICovXG52YXIgTkFNRVNQQUNFID0gZnJlZXplKHtcblx0LyoqXG5cdCAqIFRoZSBYSFRNTCBuYW1lc3BhY2UuXG5cdCAqXG5cdCAqIEBzZWUgaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbFxuXHQgKi9cblx0SFRNTDogJ2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwnLFxuXG5cdC8qKlxuXHQgKiBDaGVja3MgaWYgYHVyaWAgZXF1YWxzIGBOQU1FU1BBQ0UuSFRNTGAuXG5cdCAqXG5cdCAqIEBwYXJhbSB7c3RyaW5nfSBbdXJpXVxuXHQgKlxuXHQgKiBAc2VlIE5BTUVTUEFDRS5IVE1MXG5cdCAqL1xuXHRpc0hUTUw6IGZ1bmN0aW9uICh1cmkpIHtcblx0XHRyZXR1cm4gdXJpID09PSBOQU1FU1BBQ0UuSFRNTFxuXHR9LFxuXG5cdC8qKlxuXHQgKiBUaGUgU1ZHIG5hbWVzcGFjZS5cblx0ICpcblx0ICogQHNlZSBodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1xuXHQgKi9cblx0U1ZHOiAnaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnLFxuXG5cdC8qKlxuXHQgKiBUaGUgYHhtbDpgIG5hbWVzcGFjZS5cblx0ICpcblx0ICogQHNlZSBodHRwOi8vd3d3LnczLm9yZy9YTUwvMTk5OC9uYW1lc3BhY2Vcblx0ICovXG5cdFhNTDogJ2h0dHA6Ly93d3cudzMub3JnL1hNTC8xOTk4L25hbWVzcGFjZScsXG5cblx0LyoqXG5cdCAqIFRoZSBgeG1sbnM6YCBuYW1lc3BhY2Vcblx0ICpcblx0ICogQHNlZSBodHRwczovL3d3dy53My5vcmcvMjAwMC94bWxucy9cblx0ICovXG5cdFhNTE5TOiAnaHR0cDovL3d3dy53My5vcmcvMjAwMC94bWxucy8nLFxufSlcblxuZXhwb3J0cy5hc3NpZ24gPSBhc3NpZ247XG5leHBvcnRzLmZpbmQgPSBmaW5kO1xuZXhwb3J0cy5mcmVlemUgPSBmcmVlemU7XG5leHBvcnRzLk1JTUVfVFlQRSA9IE1JTUVfVFlQRTtcbmV4cG9ydHMuTkFNRVNQQUNFID0gTkFNRVNQQUNFO1xuIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/@xmldom/xmldom/lib/conventions.js\n"); + +/***/ }), + +/***/ "./node_modules/@xmldom/xmldom/lib/dom-parser.js": +/*!*******************************************************!*\ + !*** ./node_modules/@xmldom/xmldom/lib/dom-parser.js ***! + \*******************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +eval("var conventions = __webpack_require__(/*! ./conventions */ \"./node_modules/@xmldom/xmldom/lib/conventions.js\");\nvar dom = __webpack_require__(/*! ./dom */ \"./node_modules/@xmldom/xmldom/lib/dom.js\")\nvar entities = __webpack_require__(/*! ./entities */ \"./node_modules/@xmldom/xmldom/lib/entities.js\");\nvar sax = __webpack_require__(/*! ./sax */ \"./node_modules/@xmldom/xmldom/lib/sax.js\");\n\nvar DOMImplementation = dom.DOMImplementation;\n\nvar NAMESPACE = conventions.NAMESPACE;\n\nvar ParseError = sax.ParseError;\nvar XMLReader = sax.XMLReader;\n\n/**\n * Normalizes line ending according to https://www.w3.org/TR/xml11/#sec-line-ends:\n *\n * > XML parsed entities are often stored in computer files which,\n * > for editing convenience, are organized into lines.\n * > These lines are typically separated by some combination\n * > of the characters CARRIAGE RETURN (#xD) and LINE FEED (#xA).\n * >\n * > To simplify the tasks of applications, the XML processor must behave\n * > as if it normalized all line breaks in external parsed entities (including the document entity)\n * > on input, before parsing, by translating all of the following to a single #xA character:\n * >\n * > 1. the two-character sequence #xD #xA\n * > 2. the two-character sequence #xD #x85\n * > 3. the single character #x85\n * > 4. the single character #x2028\n * > 5. any #xD character that is not immediately followed by #xA or #x85.\n *\n * @param {string} input\n * @returns {string}\n */\nfunction normalizeLineEndings(input) {\n\treturn input\n\t\t.replace(/\\r[\\n\\u0085]/g, '\\n')\n\t\t.replace(/[\\r\\u0085\\u2028]/g, '\\n')\n}\n\n/**\n * @typedef Locator\n * @property {number} [columnNumber]\n * @property {number} [lineNumber]\n */\n\n/**\n * @typedef DOMParserOptions\n * @property {DOMHandler} [domBuilder]\n * @property {Function} [errorHandler]\n * @property {(string) => string} [normalizeLineEndings] used to replace line endings before parsing\n * \t\t\t\t\t\tdefaults to `normalizeLineEndings`\n * @property {Locator} [locator]\n * @property {Record} [xmlns]\n *\n * @see normalizeLineEndings\n */\n\n/**\n * The DOMParser interface provides the ability to parse XML or HTML source code\n * from a string into a DOM `Document`.\n *\n * _xmldom is different from the spec in that it allows an `options` parameter,\n * to override the default behavior._\n *\n * @param {DOMParserOptions} [options]\n * @constructor\n *\n * @see https://developer.mozilla.org/en-US/docs/Web/API/DOMParser\n * @see https://html.spec.whatwg.org/multipage/dynamic-markup-insertion.html#dom-parsing-and-serialization\n */\nfunction DOMParser(options){\n\tthis.options = options ||{locator:{}};\n}\n\nDOMParser.prototype.parseFromString = function(source,mimeType){\n\tvar options = this.options;\n\tvar sax = new XMLReader();\n\tvar domBuilder = options.domBuilder || new DOMHandler();//contentHandler and LexicalHandler\n\tvar errorHandler = options.errorHandler;\n\tvar locator = options.locator;\n\tvar defaultNSMap = options.xmlns||{};\n\tvar isHTML = /\\/x?html?$/.test(mimeType);//mimeType.toLowerCase().indexOf('html') > -1;\n \tvar entityMap = isHTML ? entities.HTML_ENTITIES : entities.XML_ENTITIES;\n\tif(locator){\n\t\tdomBuilder.setDocumentLocator(locator)\n\t}\n\n\tsax.errorHandler = buildErrorHandler(errorHandler,domBuilder,locator);\n\tsax.domBuilder = options.domBuilder || domBuilder;\n\tif(isHTML){\n\t\tdefaultNSMap[''] = NAMESPACE.HTML;\n\t}\n\tdefaultNSMap.xml = defaultNSMap.xml || NAMESPACE.XML;\n\tvar normalize = options.normalizeLineEndings || normalizeLineEndings;\n\tif (source && typeof source === 'string') {\n\t\tsax.parse(\n\t\t\tnormalize(source),\n\t\t\tdefaultNSMap,\n\t\t\tentityMap\n\t\t)\n\t} else {\n\t\tsax.errorHandler.error('invalid doc source')\n\t}\n\treturn domBuilder.doc;\n}\nfunction buildErrorHandler(errorImpl,domBuilder,locator){\n\tif(!errorImpl){\n\t\tif(domBuilder instanceof DOMHandler){\n\t\t\treturn domBuilder;\n\t\t}\n\t\terrorImpl = domBuilder ;\n\t}\n\tvar errorHandler = {}\n\tvar isCallback = errorImpl instanceof Function;\n\tlocator = locator||{}\n\tfunction build(key){\n\t\tvar fn = errorImpl[key];\n\t\tif(!fn && isCallback){\n\t\t\tfn = errorImpl.length == 2?function(msg){errorImpl(key,msg)}:errorImpl;\n\t\t}\n\t\terrorHandler[key] = fn && function(msg){\n\t\t\tfn('[xmldom '+key+']\\t'+msg+_locator(locator));\n\t\t}||function(){};\n\t}\n\tbuild('warning');\n\tbuild('error');\n\tbuild('fatalError');\n\treturn errorHandler;\n}\n\n//console.log('#\\n\\n\\n\\n\\n\\n\\n####')\n/**\n * +ContentHandler+ErrorHandler\n * +LexicalHandler+EntityResolver2\n * -DeclHandler-DTDHandler\n *\n * DefaultHandler:EntityResolver, DTDHandler, ContentHandler, ErrorHandler\n * DefaultHandler2:DefaultHandler,LexicalHandler, DeclHandler, EntityResolver2\n * @link http://www.saxproject.org/apidoc/org/xml/sax/helpers/DefaultHandler.html\n */\nfunction DOMHandler() {\n this.cdata = false;\n}\nfunction position(locator,node){\n\tnode.lineNumber = locator.lineNumber;\n\tnode.columnNumber = locator.columnNumber;\n}\n/**\n * @see org.xml.sax.ContentHandler#startDocument\n * @link http://www.saxproject.org/apidoc/org/xml/sax/ContentHandler.html\n */\nDOMHandler.prototype = {\n\tstartDocument : function() {\n \tthis.doc = new DOMImplementation().createDocument(null, null, null);\n \tif (this.locator) {\n \tthis.doc.documentURI = this.locator.systemId;\n \t}\n\t},\n\tstartElement:function(namespaceURI, localName, qName, attrs) {\n\t\tvar doc = this.doc;\n\t var el = doc.createElementNS(namespaceURI, qName||localName);\n\t var len = attrs.length;\n\t appendElement(this, el);\n\t this.currentElement = el;\n\n\t\tthis.locator && position(this.locator,el)\n\t for (var i = 0 ; i < len; i++) {\n\t var namespaceURI = attrs.getURI(i);\n\t var value = attrs.getValue(i);\n\t var qName = attrs.getQName(i);\n\t\t\tvar attr = doc.createAttributeNS(namespaceURI, qName);\n\t\t\tthis.locator &&position(attrs.getLocator(i),attr);\n\t\t\tattr.value = attr.nodeValue = value;\n\t\t\tel.setAttributeNode(attr)\n\t }\n\t},\n\tendElement:function(namespaceURI, localName, qName) {\n\t\tvar current = this.currentElement\n\t\tvar tagName = current.tagName;\n\t\tthis.currentElement = current.parentNode;\n\t},\n\tstartPrefixMapping:function(prefix, uri) {\n\t},\n\tendPrefixMapping:function(prefix) {\n\t},\n\tprocessingInstruction:function(target, data) {\n\t var ins = this.doc.createProcessingInstruction(target, data);\n\t this.locator && position(this.locator,ins)\n\t appendElement(this, ins);\n\t},\n\tignorableWhitespace:function(ch, start, length) {\n\t},\n\tcharacters:function(chars, start, length) {\n\t\tchars = _toString.apply(this,arguments)\n\t\t//console.log(chars)\n\t\tif(chars){\n\t\t\tif (this.cdata) {\n\t\t\t\tvar charNode = this.doc.createCDATASection(chars);\n\t\t\t} else {\n\t\t\t\tvar charNode = this.doc.createTextNode(chars);\n\t\t\t}\n\t\t\tif(this.currentElement){\n\t\t\t\tthis.currentElement.appendChild(charNode);\n\t\t\t}else if(/^\\s*$/.test(chars)){\n\t\t\t\tthis.doc.appendChild(charNode);\n\t\t\t\t//process xml\n\t\t\t}\n\t\t\tthis.locator && position(this.locator,charNode)\n\t\t}\n\t},\n\tskippedEntity:function(name) {\n\t},\n\tendDocument:function() {\n\t\tthis.doc.normalize();\n\t},\n\tsetDocumentLocator:function (locator) {\n\t if(this.locator = locator){// && !('lineNumber' in locator)){\n\t \tlocator.lineNumber = 0;\n\t }\n\t},\n\t//LexicalHandler\n\tcomment:function(chars, start, length) {\n\t\tchars = _toString.apply(this,arguments)\n\t var comm = this.doc.createComment(chars);\n\t this.locator && position(this.locator,comm)\n\t appendElement(this, comm);\n\t},\n\n\tstartCDATA:function() {\n\t //used in characters() methods\n\t this.cdata = true;\n\t},\n\tendCDATA:function() {\n\t this.cdata = false;\n\t},\n\n\tstartDTD:function(name, publicId, systemId) {\n\t\tvar impl = this.doc.implementation;\n\t if (impl && impl.createDocumentType) {\n\t var dt = impl.createDocumentType(name, publicId, systemId);\n\t this.locator && position(this.locator,dt)\n\t appendElement(this, dt);\n\t\t\t\t\tthis.doc.doctype = dt;\n\t }\n\t},\n\t/**\n\t * @see org.xml.sax.ErrorHandler\n\t * @link http://www.saxproject.org/apidoc/org/xml/sax/ErrorHandler.html\n\t */\n\twarning:function(error) {\n\t\tconsole.warn('[xmldom warning]\\t'+error,_locator(this.locator));\n\t},\n\terror:function(error) {\n\t\tconsole.error('[xmldom error]\\t'+error,_locator(this.locator));\n\t},\n\tfatalError:function(error) {\n\t\tthrow new ParseError(error, this.locator);\n\t}\n}\nfunction _locator(l){\n\tif(l){\n\t\treturn '\\n@'+(l.systemId ||'')+'#[line:'+l.lineNumber+',col:'+l.columnNumber+']'\n\t}\n}\nfunction _toString(chars,start,length){\n\tif(typeof chars == 'string'){\n\t\treturn chars.substr(start,length)\n\t}else{//java sax connect width xmldom on rhino(what about: \"? && !(chars instanceof String)\")\n\t\tif(chars.length >= start+length || start){\n\t\t\treturn new java.lang.String(chars,start,length)+'';\n\t\t}\n\t\treturn chars;\n\t}\n}\n\n/*\n * @link http://www.saxproject.org/apidoc/org/xml/sax/ext/LexicalHandler.html\n * used method of org.xml.sax.ext.LexicalHandler:\n * #comment(chars, start, length)\n * #startCDATA()\n * #endCDATA()\n * #startDTD(name, publicId, systemId)\n *\n *\n * IGNORED method of org.xml.sax.ext.LexicalHandler:\n * #endDTD()\n * #startEntity(name)\n * #endEntity(name)\n *\n *\n * @link http://www.saxproject.org/apidoc/org/xml/sax/ext/DeclHandler.html\n * IGNORED method of org.xml.sax.ext.DeclHandler\n * \t#attributeDecl(eName, aName, type, mode, value)\n * #elementDecl(name, model)\n * #externalEntityDecl(name, publicId, systemId)\n * #internalEntityDecl(name, value)\n * @link http://www.saxproject.org/apidoc/org/xml/sax/ext/EntityResolver2.html\n * IGNORED method of org.xml.sax.EntityResolver2\n * #resolveEntity(String name,String publicId,String baseURI,String systemId)\n * #resolveEntity(publicId, systemId)\n * #getExternalSubset(name, baseURI)\n * @link http://www.saxproject.org/apidoc/org/xml/sax/DTDHandler.html\n * IGNORED method of org.xml.sax.DTDHandler\n * #notationDecl(name, publicId, systemId) {};\n * #unparsedEntityDecl(name, publicId, systemId, notationName) {};\n */\n\"endDTD,startEntity,endEntity,attributeDecl,elementDecl,externalEntityDecl,internalEntityDecl,resolveEntity,getExternalSubset,notationDecl,unparsedEntityDecl\".replace(/\\w+/g,function(key){\n\tDOMHandler.prototype[key] = function(){return null}\n})\n\n/* Private static helpers treated below as private instance methods, so don't need to add these to the public API; we might use a Relator to also get rid of non-standard public properties */\nfunction appendElement (hander,node) {\n if (!hander.currentElement) {\n hander.doc.appendChild(node);\n } else {\n hander.currentElement.appendChild(node);\n }\n}//appendChild and setAttributeNS are preformance key\n\nexports.__DOMHandler = DOMHandler;\nexports.normalizeLineEndings = normalizeLineEndings;\nexports.DOMParser = DOMParser;\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9HcC8uL25vZGVfbW9kdWxlcy9AeG1sZG9tL3htbGRvbS9saWIvZG9tLXBhcnNlci5qcz9iMDc0Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGtCQUFrQixtQkFBTyxDQUFDLHVFQUFlO0FBQ3pDLFVBQVUsbUJBQU8sQ0FBQyx1REFBTztBQUN6QixlQUFlLG1CQUFPLENBQUMsaUVBQVk7QUFDbkMsVUFBVSxtQkFBTyxDQUFDLHVEQUFPOztBQUV6Qjs7QUFFQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFdBQVcsT0FBTztBQUNsQixhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxjQUFjLE9BQU87QUFDckIsY0FBYyxPQUFPO0FBQ3JCOztBQUVBO0FBQ0E7QUFDQSxjQUFjLFdBQVc7QUFDekIsY0FBYyxTQUFTO0FBQ3ZCLGNBQWMsbUJBQW1CO0FBQ2pDO0FBQ0EsY0FBYyxRQUFRO0FBQ3RCLGNBQWMsdUJBQXVCO0FBQ3JDO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFdBQVcsaUJBQWlCO0FBQzVCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDJCQUEyQjtBQUMzQjs7QUFFQTtBQUNBO0FBQ0E7QUFDQSx5REFBeUQ7QUFDekQ7QUFDQTtBQUNBO0FBQ0EsMENBQTBDO0FBQzFDO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsRUFBRTtBQUNGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw0Q0FBNEMsbUJBQW1CO0FBQy9EO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsRUFBRTtBQUNGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLHFCQUFxQixTQUFTO0FBQzlCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxFQUFFO0FBQ0Y7QUFDQTtBQUNBO0FBQ0E7QUFDQSxFQUFFO0FBQ0Y7QUFDQSxFQUFFO0FBQ0Y7QUFDQSxFQUFFO0FBQ0Y7QUFDQTtBQUNBO0FBQ0E7QUFDQSxFQUFFO0FBQ0Y7QUFDQSxFQUFFO0FBQ0Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxFQUFFO0FBQ0Y7QUFDQSxFQUFFO0FBQ0Y7QUFDQTtBQUNBLEVBQUU7QUFDRjtBQUNBLGdDQUFnQztBQUNoQztBQUNBO0FBQ0EsRUFBRTtBQUNGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEVBQUU7O0FBRUY7QUFDQTtBQUNBO0FBQ0EsRUFBRTtBQUNGO0FBQ0E7QUFDQSxFQUFFOztBQUVGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxFQUFFO0FBQ0Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsRUFBRTtBQUNGO0FBQ0E7QUFDQSxFQUFFO0FBQ0Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsRUFBRSxLQUFLO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3Q0FBd0M7QUFDeEMsQ0FBQzs7QUFFRCxrSEFBa0g7QUFDbEg7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQSxDQUFDOztBQUVEO0FBQ0E7QUFDQSIsImZpbGUiOiIuL25vZGVfbW9kdWxlcy9AeG1sZG9tL3htbGRvbS9saWIvZG9tLXBhcnNlci5qcy5qcyIsInNvdXJjZXNDb250ZW50IjpbInZhciBjb252ZW50aW9ucyA9IHJlcXVpcmUoXCIuL2NvbnZlbnRpb25zXCIpO1xudmFyIGRvbSA9IHJlcXVpcmUoJy4vZG9tJylcbnZhciBlbnRpdGllcyA9IHJlcXVpcmUoJy4vZW50aXRpZXMnKTtcbnZhciBzYXggPSByZXF1aXJlKCcuL3NheCcpO1xuXG52YXIgRE9NSW1wbGVtZW50YXRpb24gPSBkb20uRE9NSW1wbGVtZW50YXRpb247XG5cbnZhciBOQU1FU1BBQ0UgPSBjb252ZW50aW9ucy5OQU1FU1BBQ0U7XG5cbnZhciBQYXJzZUVycm9yID0gc2F4LlBhcnNlRXJyb3I7XG52YXIgWE1MUmVhZGVyID0gc2F4LlhNTFJlYWRlcjtcblxuLyoqXG4gKiBOb3JtYWxpemVzIGxpbmUgZW5kaW5nIGFjY29yZGluZyB0byBodHRwczovL3d3dy53My5vcmcvVFIveG1sMTEvI3NlYy1saW5lLWVuZHM6XG4gKlxuICogPiBYTUwgcGFyc2VkIGVudGl0aWVzIGFyZSBvZnRlbiBzdG9yZWQgaW4gY29tcHV0ZXIgZmlsZXMgd2hpY2gsXG4gKiA+IGZvciBlZGl0aW5nIGNvbnZlbmllbmNlLCBhcmUgb3JnYW5pemVkIGludG8gbGluZXMuXG4gKiA+IFRoZXNlIGxpbmVzIGFyZSB0eXBpY2FsbHkgc2VwYXJhdGVkIGJ5IHNvbWUgY29tYmluYXRpb25cbiAqID4gb2YgdGhlIGNoYXJhY3RlcnMgQ0FSUklBR0UgUkVUVVJOICgjeEQpIGFuZCBMSU5FIEZFRUQgKCN4QSkuXG4gKiA+XG4gKiA+IFRvIHNpbXBsaWZ5IHRoZSB0YXNrcyBvZiBhcHBsaWNhdGlvbnMsIHRoZSBYTUwgcHJvY2Vzc29yIG11c3QgYmVoYXZlXG4gKiA+IGFzIGlmIGl0IG5vcm1hbGl6ZWQgYWxsIGxpbmUgYnJlYWtzIGluIGV4dGVybmFsIHBhcnNlZCBlbnRpdGllcyAoaW5jbHVkaW5nIHRoZSBkb2N1bWVudCBlbnRpdHkpXG4gKiA+IG9uIGlucHV0LCBiZWZvcmUgcGFyc2luZywgYnkgdHJhbnNsYXRpbmcgYWxsIG9mIHRoZSBmb2xsb3dpbmcgdG8gYSBzaW5nbGUgI3hBIGNoYXJhY3RlcjpcbiAqID5cbiAqID4gMS4gdGhlIHR3by1jaGFyYWN0ZXIgc2VxdWVuY2UgI3hEICN4QVxuICogPiAyLiB0aGUgdHdvLWNoYXJhY3RlciBzZXF1ZW5jZSAjeEQgI3g4NVxuICogPiAzLiB0aGUgc2luZ2xlIGNoYXJhY3RlciAjeDg1XG4gKiA+IDQuIHRoZSBzaW5nbGUgY2hhcmFjdGVyICN4MjAyOFxuICogPiA1LiBhbnkgI3hEIGNoYXJhY3RlciB0aGF0IGlzIG5vdCBpbW1lZGlhdGVseSBmb2xsb3dlZCBieSAjeEEgb3IgI3g4NS5cbiAqXG4gKiBAcGFyYW0ge3N0cmluZ30gaW5wdXRcbiAqIEByZXR1cm5zIHtzdHJpbmd9XG4gKi9cbmZ1bmN0aW9uIG5vcm1hbGl6ZUxpbmVFbmRpbmdzKGlucHV0KSB7XG5cdHJldHVybiBpbnB1dFxuXHRcdC5yZXBsYWNlKC9cXHJbXFxuXFx1MDA4NV0vZywgJ1xcbicpXG5cdFx0LnJlcGxhY2UoL1tcXHJcXHUwMDg1XFx1MjAyOF0vZywgJ1xcbicpXG59XG5cbi8qKlxuICogQHR5cGVkZWYgTG9jYXRvclxuICogQHByb3BlcnR5IHtudW1iZXJ9IFtjb2x1bW5OdW1iZXJdXG4gKiBAcHJvcGVydHkge251bWJlcn0gW2xpbmVOdW1iZXJdXG4gKi9cblxuLyoqXG4gKiBAdHlwZWRlZiBET01QYXJzZXJPcHRpb25zXG4gKiBAcHJvcGVydHkge0RPTUhhbmRsZXJ9IFtkb21CdWlsZGVyXVxuICogQHByb3BlcnR5IHtGdW5jdGlvbn0gW2Vycm9ySGFuZGxlcl1cbiAqIEBwcm9wZXJ0eSB7KHN0cmluZykgPT4gc3RyaW5nfSBbbm9ybWFsaXplTGluZUVuZGluZ3NdIHVzZWQgdG8gcmVwbGFjZSBsaW5lIGVuZGluZ3MgYmVmb3JlIHBhcnNpbmdcbiAqIFx0XHRcdFx0XHRcdGRlZmF1bHRzIHRvIGBub3JtYWxpemVMaW5lRW5kaW5nc2BcbiAqIEBwcm9wZXJ0eSB7TG9jYXRvcn0gW2xvY2F0b3JdXG4gKiBAcHJvcGVydHkge1JlY29yZDxzdHJpbmcsIHN0cmluZz59IFt4bWxuc11cbiAqXG4gKiBAc2VlIG5vcm1hbGl6ZUxpbmVFbmRpbmdzXG4gKi9cblxuLyoqXG4gKiBUaGUgRE9NUGFyc2VyIGludGVyZmFjZSBwcm92aWRlcyB0aGUgYWJpbGl0eSB0byBwYXJzZSBYTUwgb3IgSFRNTCBzb3VyY2UgY29kZVxuICogZnJvbSBhIHN0cmluZyBpbnRvIGEgRE9NIGBEb2N1bWVudGAuXG4gKlxuICogX3htbGRvbSBpcyBkaWZmZXJlbnQgZnJvbSB0aGUgc3BlYyBpbiB0aGF0IGl0IGFsbG93cyBhbiBgb3B0aW9uc2AgcGFyYW1ldGVyLFxuICogdG8gb3ZlcnJpZGUgdGhlIGRlZmF1bHQgYmVoYXZpb3IuX1xuICpcbiAqIEBwYXJhbSB7RE9NUGFyc2VyT3B0aW9uc30gW29wdGlvbnNdXG4gKiBAY29uc3RydWN0b3JcbiAqXG4gKiBAc2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0FQSS9ET01QYXJzZXJcbiAqIEBzZWUgaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2UvZHluYW1pYy1tYXJrdXAtaW5zZXJ0aW9uLmh0bWwjZG9tLXBhcnNpbmctYW5kLXNlcmlhbGl6YXRpb25cbiAqL1xuZnVuY3Rpb24gRE9NUGFyc2VyKG9wdGlvbnMpe1xuXHR0aGlzLm9wdGlvbnMgPSBvcHRpb25zIHx8e2xvY2F0b3I6e319O1xufVxuXG5ET01QYXJzZXIucHJvdG90eXBlLnBhcnNlRnJvbVN0cmluZyA9IGZ1bmN0aW9uKHNvdXJjZSxtaW1lVHlwZSl7XG5cdHZhciBvcHRpb25zID0gdGhpcy5vcHRpb25zO1xuXHR2YXIgc2F4ID0gIG5ldyBYTUxSZWFkZXIoKTtcblx0dmFyIGRvbUJ1aWxkZXIgPSBvcHRpb25zLmRvbUJ1aWxkZXIgfHwgbmV3IERPTUhhbmRsZXIoKTsvL2NvbnRlbnRIYW5kbGVyIGFuZCBMZXhpY2FsSGFuZGxlclxuXHR2YXIgZXJyb3JIYW5kbGVyID0gb3B0aW9ucy5lcnJvckhhbmRsZXI7XG5cdHZhciBsb2NhdG9yID0gb3B0aW9ucy5sb2NhdG9yO1xuXHR2YXIgZGVmYXVsdE5TTWFwID0gb3B0aW9ucy54bWxuc3x8e307XG5cdHZhciBpc0hUTUwgPSAvXFwveD9odG1sPyQvLnRlc3QobWltZVR5cGUpOy8vbWltZVR5cGUudG9Mb3dlckNhc2UoKS5pbmRleE9mKCdodG1sJykgPiAtMTtcbiAgXHR2YXIgZW50aXR5TWFwID0gaXNIVE1MID8gZW50aXRpZXMuSFRNTF9FTlRJVElFUyA6IGVudGl0aWVzLlhNTF9FTlRJVElFUztcblx0aWYobG9jYXRvcil7XG5cdFx0ZG9tQnVpbGRlci5zZXREb2N1bWVudExvY2F0b3IobG9jYXRvcilcblx0fVxuXG5cdHNheC5lcnJvckhhbmRsZXIgPSBidWlsZEVycm9ySGFuZGxlcihlcnJvckhhbmRsZXIsZG9tQnVpbGRlcixsb2NhdG9yKTtcblx0c2F4LmRvbUJ1aWxkZXIgPSBvcHRpb25zLmRvbUJ1aWxkZXIgfHwgZG9tQnVpbGRlcjtcblx0aWYoaXNIVE1MKXtcblx0XHRkZWZhdWx0TlNNYXBbJyddID0gTkFNRVNQQUNFLkhUTUw7XG5cdH1cblx0ZGVmYXVsdE5TTWFwLnhtbCA9IGRlZmF1bHROU01hcC54bWwgfHwgTkFNRVNQQUNFLlhNTDtcblx0dmFyIG5vcm1hbGl6ZSA9IG9wdGlvbnMubm9ybWFsaXplTGluZUVuZGluZ3MgfHwgbm9ybWFsaXplTGluZUVuZGluZ3M7XG5cdGlmIChzb3VyY2UgJiYgdHlwZW9mIHNvdXJjZSA9PT0gJ3N0cmluZycpIHtcblx0XHRzYXgucGFyc2UoXG5cdFx0XHRub3JtYWxpemUoc291cmNlKSxcblx0XHRcdGRlZmF1bHROU01hcCxcblx0XHRcdGVudGl0eU1hcFxuXHRcdClcblx0fSBlbHNlIHtcblx0XHRzYXguZXJyb3JIYW5kbGVyLmVycm9yKCdpbnZhbGlkIGRvYyBzb3VyY2UnKVxuXHR9XG5cdHJldHVybiBkb21CdWlsZGVyLmRvYztcbn1cbmZ1bmN0aW9uIGJ1aWxkRXJyb3JIYW5kbGVyKGVycm9ySW1wbCxkb21CdWlsZGVyLGxvY2F0b3Ipe1xuXHRpZighZXJyb3JJbXBsKXtcblx0XHRpZihkb21CdWlsZGVyIGluc3RhbmNlb2YgRE9NSGFuZGxlcil7XG5cdFx0XHRyZXR1cm4gZG9tQnVpbGRlcjtcblx0XHR9XG5cdFx0ZXJyb3JJbXBsID0gZG9tQnVpbGRlciA7XG5cdH1cblx0dmFyIGVycm9ySGFuZGxlciA9IHt9XG5cdHZhciBpc0NhbGxiYWNrID0gZXJyb3JJbXBsIGluc3RhbmNlb2YgRnVuY3Rpb247XG5cdGxvY2F0b3IgPSBsb2NhdG9yfHx7fVxuXHRmdW5jdGlvbiBidWlsZChrZXkpe1xuXHRcdHZhciBmbiA9IGVycm9ySW1wbFtrZXldO1xuXHRcdGlmKCFmbiAmJiBpc0NhbGxiYWNrKXtcblx0XHRcdGZuID0gZXJyb3JJbXBsLmxlbmd0aCA9PSAyP2Z1bmN0aW9uKG1zZyl7ZXJyb3JJbXBsKGtleSxtc2cpfTplcnJvckltcGw7XG5cdFx0fVxuXHRcdGVycm9ySGFuZGxlcltrZXldID0gZm4gJiYgZnVuY3Rpb24obXNnKXtcblx0XHRcdGZuKCdbeG1sZG9tICcra2V5KyddXFx0Jyttc2crX2xvY2F0b3IobG9jYXRvcikpO1xuXHRcdH18fGZ1bmN0aW9uKCl7fTtcblx0fVxuXHRidWlsZCgnd2FybmluZycpO1xuXHRidWlsZCgnZXJyb3InKTtcblx0YnVpbGQoJ2ZhdGFsRXJyb3InKTtcblx0cmV0dXJuIGVycm9ySGFuZGxlcjtcbn1cblxuLy9jb25zb2xlLmxvZygnI1xcblxcblxcblxcblxcblxcblxcbiMjIyMnKVxuLyoqXG4gKiArQ29udGVudEhhbmRsZXIrRXJyb3JIYW5kbGVyXG4gKiArTGV4aWNhbEhhbmRsZXIrRW50aXR5UmVzb2x2ZXIyXG4gKiAtRGVjbEhhbmRsZXItRFRESGFuZGxlclxuICpcbiAqIERlZmF1bHRIYW5kbGVyOkVudGl0eVJlc29sdmVyLCBEVERIYW5kbGVyLCBDb250ZW50SGFuZGxlciwgRXJyb3JIYW5kbGVyXG4gKiBEZWZhdWx0SGFuZGxlcjI6RGVmYXVsdEhhbmRsZXIsTGV4aWNhbEhhbmRsZXIsIERlY2xIYW5kbGVyLCBFbnRpdHlSZXNvbHZlcjJcbiAqIEBsaW5rIGh0dHA6Ly93d3cuc2F4cHJvamVjdC5vcmcvYXBpZG9jL29yZy94bWwvc2F4L2hlbHBlcnMvRGVmYXVsdEhhbmRsZXIuaHRtbFxuICovXG5mdW5jdGlvbiBET01IYW5kbGVyKCkge1xuICAgIHRoaXMuY2RhdGEgPSBmYWxzZTtcbn1cbmZ1bmN0aW9uIHBvc2l0aW9uKGxvY2F0b3Isbm9kZSl7XG5cdG5vZGUubGluZU51bWJlciA9IGxvY2F0b3IubGluZU51bWJlcjtcblx0bm9kZS5jb2x1bW5OdW1iZXIgPSBsb2NhdG9yLmNvbHVtbk51bWJlcjtcbn1cbi8qKlxuICogQHNlZSBvcmcueG1sLnNheC5Db250ZW50SGFuZGxlciNzdGFydERvY3VtZW50XG4gKiBAbGluayBodHRwOi8vd3d3LnNheHByb2plY3Qub3JnL2FwaWRvYy9vcmcveG1sL3NheC9Db250ZW50SGFuZGxlci5odG1sXG4gKi9cbkRPTUhhbmRsZXIucHJvdG90eXBlID0ge1xuXHRzdGFydERvY3VtZW50IDogZnVuY3Rpb24oKSB7XG4gICAgXHR0aGlzLmRvYyA9IG5ldyBET01JbXBsZW1lbnRhdGlvbigpLmNyZWF0ZURvY3VtZW50KG51bGwsIG51bGwsIG51bGwpO1xuICAgIFx0aWYgKHRoaXMubG9jYXRvcikge1xuICAgICAgICBcdHRoaXMuZG9jLmRvY3VtZW50VVJJID0gdGhpcy5sb2NhdG9yLnN5c3RlbUlkO1xuICAgIFx0fVxuXHR9LFxuXHRzdGFydEVsZW1lbnQ6ZnVuY3Rpb24obmFtZXNwYWNlVVJJLCBsb2NhbE5hbWUsIHFOYW1lLCBhdHRycykge1xuXHRcdHZhciBkb2MgPSB0aGlzLmRvYztcblx0ICAgIHZhciBlbCA9IGRvYy5jcmVhdGVFbGVtZW50TlMobmFtZXNwYWNlVVJJLCBxTmFtZXx8bG9jYWxOYW1lKTtcblx0ICAgIHZhciBsZW4gPSBhdHRycy5sZW5ndGg7XG5cdCAgICBhcHBlbmRFbGVtZW50KHRoaXMsIGVsKTtcblx0ICAgIHRoaXMuY3VycmVudEVsZW1lbnQgPSBlbDtcblxuXHRcdHRoaXMubG9jYXRvciAmJiBwb3NpdGlvbih0aGlzLmxvY2F0b3IsZWwpXG5cdCAgICBmb3IgKHZhciBpID0gMCA7IGkgPCBsZW47IGkrKykge1xuXHQgICAgICAgIHZhciBuYW1lc3BhY2VVUkkgPSBhdHRycy5nZXRVUkkoaSk7XG5cdCAgICAgICAgdmFyIHZhbHVlID0gYXR0cnMuZ2V0VmFsdWUoaSk7XG5cdCAgICAgICAgdmFyIHFOYW1lID0gYXR0cnMuZ2V0UU5hbWUoaSk7XG5cdFx0XHR2YXIgYXR0ciA9IGRvYy5jcmVhdGVBdHRyaWJ1dGVOUyhuYW1lc3BhY2VVUkksIHFOYW1lKTtcblx0XHRcdHRoaXMubG9jYXRvciAmJnBvc2l0aW9uKGF0dHJzLmdldExvY2F0b3IoaSksYXR0cik7XG5cdFx0XHRhdHRyLnZhbHVlID0gYXR0ci5ub2RlVmFsdWUgPSB2YWx1ZTtcblx0XHRcdGVsLnNldEF0dHJpYnV0ZU5vZGUoYXR0cilcblx0ICAgIH1cblx0fSxcblx0ZW5kRWxlbWVudDpmdW5jdGlvbihuYW1lc3BhY2VVUkksIGxvY2FsTmFtZSwgcU5hbWUpIHtcblx0XHR2YXIgY3VycmVudCA9IHRoaXMuY3VycmVudEVsZW1lbnRcblx0XHR2YXIgdGFnTmFtZSA9IGN1cnJlbnQudGFnTmFtZTtcblx0XHR0aGlzLmN1cnJlbnRFbGVtZW50ID0gY3VycmVudC5wYXJlbnROb2RlO1xuXHR9LFxuXHRzdGFydFByZWZpeE1hcHBpbmc6ZnVuY3Rpb24ocHJlZml4LCB1cmkpIHtcblx0fSxcblx0ZW5kUHJlZml4TWFwcGluZzpmdW5jdGlvbihwcmVmaXgpIHtcblx0fSxcblx0cHJvY2Vzc2luZ0luc3RydWN0aW9uOmZ1bmN0aW9uKHRhcmdldCwgZGF0YSkge1xuXHQgICAgdmFyIGlucyA9IHRoaXMuZG9jLmNyZWF0ZVByb2Nlc3NpbmdJbnN0cnVjdGlvbih0YXJnZXQsIGRhdGEpO1xuXHQgICAgdGhpcy5sb2NhdG9yICYmIHBvc2l0aW9uKHRoaXMubG9jYXRvcixpbnMpXG5cdCAgICBhcHBlbmRFbGVtZW50KHRoaXMsIGlucyk7XG5cdH0sXG5cdGlnbm9yYWJsZVdoaXRlc3BhY2U6ZnVuY3Rpb24oY2gsIHN0YXJ0LCBsZW5ndGgpIHtcblx0fSxcblx0Y2hhcmFjdGVyczpmdW5jdGlvbihjaGFycywgc3RhcnQsIGxlbmd0aCkge1xuXHRcdGNoYXJzID0gX3RvU3RyaW5nLmFwcGx5KHRoaXMsYXJndW1lbnRzKVxuXHRcdC8vY29uc29sZS5sb2coY2hhcnMpXG5cdFx0aWYoY2hhcnMpe1xuXHRcdFx0aWYgKHRoaXMuY2RhdGEpIHtcblx0XHRcdFx0dmFyIGNoYXJOb2RlID0gdGhpcy5kb2MuY3JlYXRlQ0RBVEFTZWN0aW9uKGNoYXJzKTtcblx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdHZhciBjaGFyTm9kZSA9IHRoaXMuZG9jLmNyZWF0ZVRleHROb2RlKGNoYXJzKTtcblx0XHRcdH1cblx0XHRcdGlmKHRoaXMuY3VycmVudEVsZW1lbnQpe1xuXHRcdFx0XHR0aGlzLmN1cnJlbnRFbGVtZW50LmFwcGVuZENoaWxkKGNoYXJOb2RlKTtcblx0XHRcdH1lbHNlIGlmKC9eXFxzKiQvLnRlc3QoY2hhcnMpKXtcblx0XHRcdFx0dGhpcy5kb2MuYXBwZW5kQ2hpbGQoY2hhck5vZGUpO1xuXHRcdFx0XHQvL3Byb2Nlc3MgeG1sXG5cdFx0XHR9XG5cdFx0XHR0aGlzLmxvY2F0b3IgJiYgcG9zaXRpb24odGhpcy5sb2NhdG9yLGNoYXJOb2RlKVxuXHRcdH1cblx0fSxcblx0c2tpcHBlZEVudGl0eTpmdW5jdGlvbihuYW1lKSB7XG5cdH0sXG5cdGVuZERvY3VtZW50OmZ1bmN0aW9uKCkge1xuXHRcdHRoaXMuZG9jLm5vcm1hbGl6ZSgpO1xuXHR9LFxuXHRzZXREb2N1bWVudExvY2F0b3I6ZnVuY3Rpb24gKGxvY2F0b3IpIHtcblx0ICAgIGlmKHRoaXMubG9jYXRvciA9IGxvY2F0b3Ipey8vICYmICEoJ2xpbmVOdW1iZXInIGluIGxvY2F0b3IpKXtcblx0ICAgIFx0bG9jYXRvci5saW5lTnVtYmVyID0gMDtcblx0ICAgIH1cblx0fSxcblx0Ly9MZXhpY2FsSGFuZGxlclxuXHRjb21tZW50OmZ1bmN0aW9uKGNoYXJzLCBzdGFydCwgbGVuZ3RoKSB7XG5cdFx0Y2hhcnMgPSBfdG9TdHJpbmcuYXBwbHkodGhpcyxhcmd1bWVudHMpXG5cdCAgICB2YXIgY29tbSA9IHRoaXMuZG9jLmNyZWF0ZUNvbW1lbnQoY2hhcnMpO1xuXHQgICAgdGhpcy5sb2NhdG9yICYmIHBvc2l0aW9uKHRoaXMubG9jYXRvcixjb21tKVxuXHQgICAgYXBwZW5kRWxlbWVudCh0aGlzLCBjb21tKTtcblx0fSxcblxuXHRzdGFydENEQVRBOmZ1bmN0aW9uKCkge1xuXHQgICAgLy91c2VkIGluIGNoYXJhY3RlcnMoKSBtZXRob2RzXG5cdCAgICB0aGlzLmNkYXRhID0gdHJ1ZTtcblx0fSxcblx0ZW5kQ0RBVEE6ZnVuY3Rpb24oKSB7XG5cdCAgICB0aGlzLmNkYXRhID0gZmFsc2U7XG5cdH0sXG5cblx0c3RhcnREVEQ6ZnVuY3Rpb24obmFtZSwgcHVibGljSWQsIHN5c3RlbUlkKSB7XG5cdFx0dmFyIGltcGwgPSB0aGlzLmRvYy5pbXBsZW1lbnRhdGlvbjtcblx0ICAgIGlmIChpbXBsICYmIGltcGwuY3JlYXRlRG9jdW1lbnRUeXBlKSB7XG5cdCAgICAgICAgdmFyIGR0ID0gaW1wbC5jcmVhdGVEb2N1bWVudFR5cGUobmFtZSwgcHVibGljSWQsIHN5c3RlbUlkKTtcblx0ICAgICAgICB0aGlzLmxvY2F0b3IgJiYgcG9zaXRpb24odGhpcy5sb2NhdG9yLGR0KVxuXHQgICAgICAgIGFwcGVuZEVsZW1lbnQodGhpcywgZHQpO1xuXHRcdFx0XHRcdHRoaXMuZG9jLmRvY3R5cGUgPSBkdDtcblx0ICAgIH1cblx0fSxcblx0LyoqXG5cdCAqIEBzZWUgb3JnLnhtbC5zYXguRXJyb3JIYW5kbGVyXG5cdCAqIEBsaW5rIGh0dHA6Ly93d3cuc2F4cHJvamVjdC5vcmcvYXBpZG9jL29yZy94bWwvc2F4L0Vycm9ySGFuZGxlci5odG1sXG5cdCAqL1xuXHR3YXJuaW5nOmZ1bmN0aW9uKGVycm9yKSB7XG5cdFx0Y29uc29sZS53YXJuKCdbeG1sZG9tIHdhcm5pbmddXFx0JytlcnJvcixfbG9jYXRvcih0aGlzLmxvY2F0b3IpKTtcblx0fSxcblx0ZXJyb3I6ZnVuY3Rpb24oZXJyb3IpIHtcblx0XHRjb25zb2xlLmVycm9yKCdbeG1sZG9tIGVycm9yXVxcdCcrZXJyb3IsX2xvY2F0b3IodGhpcy5sb2NhdG9yKSk7XG5cdH0sXG5cdGZhdGFsRXJyb3I6ZnVuY3Rpb24oZXJyb3IpIHtcblx0XHR0aHJvdyBuZXcgUGFyc2VFcnJvcihlcnJvciwgdGhpcy5sb2NhdG9yKTtcblx0fVxufVxuZnVuY3Rpb24gX2xvY2F0b3IobCl7XG5cdGlmKGwpe1xuXHRcdHJldHVybiAnXFxuQCcrKGwuc3lzdGVtSWQgfHwnJykrJyNbbGluZTonK2wubGluZU51bWJlcisnLGNvbDonK2wuY29sdW1uTnVtYmVyKyddJ1xuXHR9XG59XG5mdW5jdGlvbiBfdG9TdHJpbmcoY2hhcnMsc3RhcnQsbGVuZ3RoKXtcblx0aWYodHlwZW9mIGNoYXJzID09ICdzdHJpbmcnKXtcblx0XHRyZXR1cm4gY2hhcnMuc3Vic3RyKHN0YXJ0LGxlbmd0aClcblx0fWVsc2V7Ly9qYXZhIHNheCBjb25uZWN0IHdpZHRoIHhtbGRvbSBvbiByaGlubyh3aGF0IGFib3V0OiBcIj8gJiYgIShjaGFycyBpbnN0YW5jZW9mIFN0cmluZylcIilcblx0XHRpZihjaGFycy5sZW5ndGggPj0gc3RhcnQrbGVuZ3RoIHx8IHN0YXJ0KXtcblx0XHRcdHJldHVybiBuZXcgamF2YS5sYW5nLlN0cmluZyhjaGFycyxzdGFydCxsZW5ndGgpKycnO1xuXHRcdH1cblx0XHRyZXR1cm4gY2hhcnM7XG5cdH1cbn1cblxuLypcbiAqIEBsaW5rIGh0dHA6Ly93d3cuc2F4cHJvamVjdC5vcmcvYXBpZG9jL29yZy94bWwvc2F4L2V4dC9MZXhpY2FsSGFuZGxlci5odG1sXG4gKiB1c2VkIG1ldGhvZCBvZiBvcmcueG1sLnNheC5leHQuTGV4aWNhbEhhbmRsZXI6XG4gKiAgI2NvbW1lbnQoY2hhcnMsIHN0YXJ0LCBsZW5ndGgpXG4gKiAgI3N0YXJ0Q0RBVEEoKVxuICogICNlbmRDREFUQSgpXG4gKiAgI3N0YXJ0RFREKG5hbWUsIHB1YmxpY0lkLCBzeXN0ZW1JZClcbiAqXG4gKlxuICogSUdOT1JFRCBtZXRob2Qgb2Ygb3JnLnhtbC5zYXguZXh0LkxleGljYWxIYW5kbGVyOlxuICogICNlbmREVEQoKVxuICogICNzdGFydEVudGl0eShuYW1lKVxuICogICNlbmRFbnRpdHkobmFtZSlcbiAqXG4gKlxuICogQGxpbmsgaHR0cDovL3d3dy5zYXhwcm9qZWN0Lm9yZy9hcGlkb2Mvb3JnL3htbC9zYXgvZXh0L0RlY2xIYW5kbGVyLmh0bWxcbiAqIElHTk9SRUQgbWV0aG9kIG9mIG9yZy54bWwuc2F4LmV4dC5EZWNsSGFuZGxlclxuICogXHQjYXR0cmlidXRlRGVjbChlTmFtZSwgYU5hbWUsIHR5cGUsIG1vZGUsIHZhbHVlKVxuICogICNlbGVtZW50RGVjbChuYW1lLCBtb2RlbClcbiAqICAjZXh0ZXJuYWxFbnRpdHlEZWNsKG5hbWUsIHB1YmxpY0lkLCBzeXN0ZW1JZClcbiAqICAjaW50ZXJuYWxFbnRpdHlEZWNsKG5hbWUsIHZhbHVlKVxuICogQGxpbmsgaHR0cDovL3d3dy5zYXhwcm9qZWN0Lm9yZy9hcGlkb2Mvb3JnL3htbC9zYXgvZXh0L0VudGl0eVJlc29sdmVyMi5odG1sXG4gKiBJR05PUkVEIG1ldGhvZCBvZiBvcmcueG1sLnNheC5FbnRpdHlSZXNvbHZlcjJcbiAqICAjcmVzb2x2ZUVudGl0eShTdHJpbmcgbmFtZSxTdHJpbmcgcHVibGljSWQsU3RyaW5nIGJhc2VVUkksU3RyaW5nIHN5c3RlbUlkKVxuICogICNyZXNvbHZlRW50aXR5KHB1YmxpY0lkLCBzeXN0ZW1JZClcbiAqICAjZ2V0RXh0ZXJuYWxTdWJzZXQobmFtZSwgYmFzZVVSSSlcbiAqIEBsaW5rIGh0dHA6Ly93d3cuc2F4cHJvamVjdC5vcmcvYXBpZG9jL29yZy94bWwvc2F4L0RUREhhbmRsZXIuaHRtbFxuICogSUdOT1JFRCBtZXRob2Qgb2Ygb3JnLnhtbC5zYXguRFRESGFuZGxlclxuICogICNub3RhdGlvbkRlY2wobmFtZSwgcHVibGljSWQsIHN5c3RlbUlkKSB7fTtcbiAqICAjdW5wYXJzZWRFbnRpdHlEZWNsKG5hbWUsIHB1YmxpY0lkLCBzeXN0ZW1JZCwgbm90YXRpb25OYW1lKSB7fTtcbiAqL1xuXCJlbmREVEQsc3RhcnRFbnRpdHksZW5kRW50aXR5LGF0dHJpYnV0ZURlY2wsZWxlbWVudERlY2wsZXh0ZXJuYWxFbnRpdHlEZWNsLGludGVybmFsRW50aXR5RGVjbCxyZXNvbHZlRW50aXR5LGdldEV4dGVybmFsU3Vic2V0LG5vdGF0aW9uRGVjbCx1bnBhcnNlZEVudGl0eURlY2xcIi5yZXBsYWNlKC9cXHcrL2csZnVuY3Rpb24oa2V5KXtcblx0RE9NSGFuZGxlci5wcm90b3R5cGVba2V5XSA9IGZ1bmN0aW9uKCl7cmV0dXJuIG51bGx9XG59KVxuXG4vKiBQcml2YXRlIHN0YXRpYyBoZWxwZXJzIHRyZWF0ZWQgYmVsb3cgYXMgcHJpdmF0ZSBpbnN0YW5jZSBtZXRob2RzLCBzbyBkb24ndCBuZWVkIHRvIGFkZCB0aGVzZSB0byB0aGUgcHVibGljIEFQSTsgd2UgbWlnaHQgdXNlIGEgUmVsYXRvciB0byBhbHNvIGdldCByaWQgb2Ygbm9uLXN0YW5kYXJkIHB1YmxpYyBwcm9wZXJ0aWVzICovXG5mdW5jdGlvbiBhcHBlbmRFbGVtZW50IChoYW5kZXIsbm9kZSkge1xuICAgIGlmICghaGFuZGVyLmN1cnJlbnRFbGVtZW50KSB7XG4gICAgICAgIGhhbmRlci5kb2MuYXBwZW5kQ2hpbGQobm9kZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgaGFuZGVyLmN1cnJlbnRFbGVtZW50LmFwcGVuZENoaWxkKG5vZGUpO1xuICAgIH1cbn0vL2FwcGVuZENoaWxkIGFuZCBzZXRBdHRyaWJ1dGVOUyBhcmUgcHJlZm9ybWFuY2Uga2V5XG5cbmV4cG9ydHMuX19ET01IYW5kbGVyID0gRE9NSGFuZGxlcjtcbmV4cG9ydHMubm9ybWFsaXplTGluZUVuZGluZ3MgPSBub3JtYWxpemVMaW5lRW5kaW5ncztcbmV4cG9ydHMuRE9NUGFyc2VyID0gRE9NUGFyc2VyO1xuIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/@xmldom/xmldom/lib/dom-parser.js\n"); + +/***/ }), + +/***/ "./node_modules/@xmldom/xmldom/lib/dom.js": +/*!************************************************!*\ + !*** ./node_modules/@xmldom/xmldom/lib/dom.js ***! + \************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +eval("var conventions = __webpack_require__(/*! ./conventions */ \"./node_modules/@xmldom/xmldom/lib/conventions.js\");\n\nvar find = conventions.find;\nvar NAMESPACE = conventions.NAMESPACE;\n\n/**\n * A prerequisite for `[].filter`, to drop elements that are empty\n * @param {string} input\n * @returns {boolean}\n */\nfunction notEmptyString (input) {\n\treturn input !== ''\n}\n/**\n * @see https://infra.spec.whatwg.org/#split-on-ascii-whitespace\n * @see https://infra.spec.whatwg.org/#ascii-whitespace\n *\n * @param {string} input\n * @returns {string[]} (can be empty)\n */\nfunction splitOnASCIIWhitespace(input) {\n\t// U+0009 TAB, U+000A LF, U+000C FF, U+000D CR, U+0020 SPACE\n\treturn input ? input.split(/[\\t\\n\\f\\r ]+/).filter(notEmptyString) : []\n}\n\n/**\n * Adds element as a key to current if it is not already present.\n *\n * @param {Record} current\n * @param {string} element\n * @returns {Record}\n */\nfunction orderedSetReducer (current, element) {\n\tif (!current.hasOwnProperty(element)) {\n\t\tcurrent[element] = true;\n\t}\n\treturn current;\n}\n\n/**\n * @see https://infra.spec.whatwg.org/#ordered-set\n * @param {string} input\n * @returns {string[]}\n */\nfunction toOrderedSet(input) {\n\tif (!input) return [];\n\tvar list = splitOnASCIIWhitespace(input);\n\treturn Object.keys(list.reduce(orderedSetReducer, {}))\n}\n\n/**\n * Uses `list.indexOf` to implement something like `Array.prototype.includes`,\n * which we can not rely on being available.\n *\n * @param {any[]} list\n * @returns {function(any): boolean}\n */\nfunction arrayIncludes (list) {\n\treturn function(element) {\n\t\treturn list && list.indexOf(element) !== -1;\n\t}\n}\n\nfunction copy(src,dest){\n\tfor(var p in src){\n\t\tif (Object.prototype.hasOwnProperty.call(src, p)) {\n\t\t\tdest[p] = src[p];\n\t\t}\n\t}\n}\n\n/**\n^\\w+\\.prototype\\.([_\\w]+)\\s*=\\s*((?:.*\\{\\s*?[\\r\\n][\\s\\S]*?^})|\\S.*?(?=[;\\r\\n]));?\n^\\w+\\.prototype\\.([_\\w]+)\\s*=\\s*(\\S.*?(?=[;\\r\\n]));?\n */\nfunction _extends(Class,Super){\n\tvar pt = Class.prototype;\n\tif(!(pt instanceof Super)){\n\t\tfunction t(){};\n\t\tt.prototype = Super.prototype;\n\t\tt = new t();\n\t\tcopy(pt,t);\n\t\tClass.prototype = pt = t;\n\t}\n\tif(pt.constructor != Class){\n\t\tif(typeof Class != 'function'){\n\t\t\tconsole.error(\"unknown Class:\"+Class)\n\t\t}\n\t\tpt.constructor = Class\n\t}\n}\n\n// Node Types\nvar NodeType = {}\nvar ELEMENT_NODE = NodeType.ELEMENT_NODE = 1;\nvar ATTRIBUTE_NODE = NodeType.ATTRIBUTE_NODE = 2;\nvar TEXT_NODE = NodeType.TEXT_NODE = 3;\nvar CDATA_SECTION_NODE = NodeType.CDATA_SECTION_NODE = 4;\nvar ENTITY_REFERENCE_NODE = NodeType.ENTITY_REFERENCE_NODE = 5;\nvar ENTITY_NODE = NodeType.ENTITY_NODE = 6;\nvar PROCESSING_INSTRUCTION_NODE = NodeType.PROCESSING_INSTRUCTION_NODE = 7;\nvar COMMENT_NODE = NodeType.COMMENT_NODE = 8;\nvar DOCUMENT_NODE = NodeType.DOCUMENT_NODE = 9;\nvar DOCUMENT_TYPE_NODE = NodeType.DOCUMENT_TYPE_NODE = 10;\nvar DOCUMENT_FRAGMENT_NODE = NodeType.DOCUMENT_FRAGMENT_NODE = 11;\nvar NOTATION_NODE = NodeType.NOTATION_NODE = 12;\n\n// ExceptionCode\nvar ExceptionCode = {}\nvar ExceptionMessage = {};\nvar INDEX_SIZE_ERR = ExceptionCode.INDEX_SIZE_ERR = ((ExceptionMessage[1]=\"Index size error\"),1);\nvar DOMSTRING_SIZE_ERR = ExceptionCode.DOMSTRING_SIZE_ERR = ((ExceptionMessage[2]=\"DOMString size error\"),2);\nvar HIERARCHY_REQUEST_ERR = ExceptionCode.HIERARCHY_REQUEST_ERR = ((ExceptionMessage[3]=\"Hierarchy request error\"),3);\nvar WRONG_DOCUMENT_ERR = ExceptionCode.WRONG_DOCUMENT_ERR = ((ExceptionMessage[4]=\"Wrong document\"),4);\nvar INVALID_CHARACTER_ERR = ExceptionCode.INVALID_CHARACTER_ERR = ((ExceptionMessage[5]=\"Invalid character\"),5);\nvar NO_DATA_ALLOWED_ERR = ExceptionCode.NO_DATA_ALLOWED_ERR = ((ExceptionMessage[6]=\"No data allowed\"),6);\nvar NO_MODIFICATION_ALLOWED_ERR = ExceptionCode.NO_MODIFICATION_ALLOWED_ERR = ((ExceptionMessage[7]=\"No modification allowed\"),7);\nvar NOT_FOUND_ERR = ExceptionCode.NOT_FOUND_ERR = ((ExceptionMessage[8]=\"Not found\"),8);\nvar NOT_SUPPORTED_ERR = ExceptionCode.NOT_SUPPORTED_ERR = ((ExceptionMessage[9]=\"Not supported\"),9);\nvar INUSE_ATTRIBUTE_ERR = ExceptionCode.INUSE_ATTRIBUTE_ERR = ((ExceptionMessage[10]=\"Attribute in use\"),10);\n//level2\nvar INVALID_STATE_ERR \t= ExceptionCode.INVALID_STATE_ERR \t= ((ExceptionMessage[11]=\"Invalid state\"),11);\nvar SYNTAX_ERR \t= ExceptionCode.SYNTAX_ERR \t= ((ExceptionMessage[12]=\"Syntax error\"),12);\nvar INVALID_MODIFICATION_ERR \t= ExceptionCode.INVALID_MODIFICATION_ERR \t= ((ExceptionMessage[13]=\"Invalid modification\"),13);\nvar NAMESPACE_ERR \t= ExceptionCode.NAMESPACE_ERR \t= ((ExceptionMessage[14]=\"Invalid namespace\"),14);\nvar INVALID_ACCESS_ERR \t= ExceptionCode.INVALID_ACCESS_ERR \t= ((ExceptionMessage[15]=\"Invalid access\"),15);\n\n/**\n * DOM Level 2\n * Object DOMException\n * @see http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html\n * @see http://www.w3.org/TR/REC-DOM-Level-1/ecma-script-language-binding.html\n */\nfunction DOMException(code, message) {\n\tif(message instanceof Error){\n\t\tvar error = message;\n\t}else{\n\t\terror = this;\n\t\tError.call(this, ExceptionMessage[code]);\n\t\tthis.message = ExceptionMessage[code];\n\t\tif(Error.captureStackTrace) Error.captureStackTrace(this, DOMException);\n\t}\n\terror.code = code;\n\tif(message) this.message = this.message + \": \" + message;\n\treturn error;\n};\nDOMException.prototype = Error.prototype;\ncopy(ExceptionCode,DOMException)\n\n/**\n * @see http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/core.html#ID-536297177\n * The NodeList interface provides the abstraction of an ordered collection of nodes, without defining or constraining how this collection is implemented. NodeList objects in the DOM are live.\n * The items in the NodeList are accessible via an integral index, starting from 0.\n */\nfunction NodeList() {\n};\nNodeList.prototype = {\n\t/**\n\t * The number of nodes in the list. The range of valid child node indices is 0 to length-1 inclusive.\n\t * @standard level1\n\t */\n\tlength:0,\n\t/**\n\t * Returns the indexth item in the collection. If index is greater than or equal to the number of nodes in the list, this returns null.\n\t * @standard level1\n\t * @param index unsigned long\n\t * Index into the collection.\n\t * @return Node\n\t * \tThe node at the indexth position in the NodeList, or null if that is not a valid index.\n\t */\n\titem: function(index) {\n\t\treturn index >= 0 && index < this.length ? this[index] : null;\n\t},\n\ttoString:function(isHTML,nodeFilter){\n\t\tfor(var buf = [], i = 0;i=0){\n\t\tvar lastIndex = list.length-1\n\t\twhile(i0 || key == 'xmlns'){\n//\t\t\treturn null;\n//\t\t}\n\t\t//console.log()\n\t\tvar i = this.length;\n\t\twhile(i--){\n\t\t\tvar attr = this[i];\n\t\t\t//console.log(attr.nodeName,key)\n\t\t\tif(attr.nodeName == key){\n\t\t\t\treturn attr;\n\t\t\t}\n\t\t}\n\t},\n\tsetNamedItem: function(attr) {\n\t\tvar el = attr.ownerElement;\n\t\tif(el && el!=this._ownerElement){\n\t\t\tthrow new DOMException(INUSE_ATTRIBUTE_ERR);\n\t\t}\n\t\tvar oldAttr = this.getNamedItem(attr.nodeName);\n\t\t_addNamedNode(this._ownerElement,this,attr,oldAttr);\n\t\treturn oldAttr;\n\t},\n\t/* returns Node */\n\tsetNamedItemNS: function(attr) {// raises: WRONG_DOCUMENT_ERR,NO_MODIFICATION_ALLOWED_ERR,INUSE_ATTRIBUTE_ERR\n\t\tvar el = attr.ownerElement, oldAttr;\n\t\tif(el && el!=this._ownerElement){\n\t\t\tthrow new DOMException(INUSE_ATTRIBUTE_ERR);\n\t\t}\n\t\toldAttr = this.getNamedItemNS(attr.namespaceURI,attr.localName);\n\t\t_addNamedNode(this._ownerElement,this,attr,oldAttr);\n\t\treturn oldAttr;\n\t},\n\n\t/* returns Node */\n\tremoveNamedItem: function(key) {\n\t\tvar attr = this.getNamedItem(key);\n\t\t_removeNamedNode(this._ownerElement,this,attr);\n\t\treturn attr;\n\n\n\t},// raises: NOT_FOUND_ERR,NO_MODIFICATION_ALLOWED_ERR\n\n\t//for level2\n\tremoveNamedItemNS:function(namespaceURI,localName){\n\t\tvar attr = this.getNamedItemNS(namespaceURI,localName);\n\t\t_removeNamedNode(this._ownerElement,this,attr);\n\t\treturn attr;\n\t},\n\tgetNamedItemNS: function(namespaceURI, localName) {\n\t\tvar i = this.length;\n\t\twhile(i--){\n\t\t\tvar node = this[i];\n\t\t\tif(node.localName == localName && node.namespaceURI == namespaceURI){\n\t\t\t\treturn node;\n\t\t\t}\n\t\t}\n\t\treturn null;\n\t}\n};\n\n/**\n * The DOMImplementation interface represents an object providing methods\n * which are not dependent on any particular document.\n * Such an object is returned by the `Document.implementation` property.\n *\n * __The individual methods describe the differences compared to the specs.__\n *\n * @constructor\n *\n * @see https://developer.mozilla.org/en-US/docs/Web/API/DOMImplementation MDN\n * @see https://www.w3.org/TR/REC-DOM-Level-1/level-one-core.html#ID-102161490 DOM Level 1 Core (Initial)\n * @see https://www.w3.org/TR/DOM-Level-2-Core/core.html#ID-102161490 DOM Level 2 Core\n * @see https://www.w3.org/TR/DOM-Level-3-Core/core.html#ID-102161490 DOM Level 3 Core\n * @see https://dom.spec.whatwg.org/#domimplementation DOM Living Standard\n */\nfunction DOMImplementation() {\n}\n\nDOMImplementation.prototype = {\n\t/**\n\t * The DOMImplementation.hasFeature() method returns a Boolean flag indicating if a given feature is supported.\n\t * The different implementations fairly diverged in what kind of features were reported.\n\t * The latest version of the spec settled to force this method to always return true, where the functionality was accurate and in use.\n\t *\n\t * @deprecated It is deprecated and modern browsers return true in all cases.\n\t *\n\t * @param {string} feature\n\t * @param {string} [version]\n\t * @returns {boolean} always true\n\t *\n\t * @see https://developer.mozilla.org/en-US/docs/Web/API/DOMImplementation/hasFeature MDN\n\t * @see https://www.w3.org/TR/REC-DOM-Level-1/level-one-core.html#ID-5CED94D7 DOM Level 1 Core\n\t * @see https://dom.spec.whatwg.org/#dom-domimplementation-hasfeature DOM Living Standard\n\t */\n\thasFeature: function(feature, version) {\n\t\t\treturn true;\n\t},\n\t/**\n\t * Creates an XML Document object of the specified type with its document element.\n\t *\n\t * __It behaves slightly different from the description in the living standard__:\n\t * - There is no interface/class `XMLDocument`, it returns a `Document` instance.\n\t * - `contentType`, `encoding`, `mode`, `origin`, `url` fields are currently not declared.\n\t * - this implementation is not validating names or qualified names\n\t * (when parsing XML strings, the SAX parser takes care of that)\n\t *\n\t * @param {string|null} namespaceURI\n\t * @param {string} qualifiedName\n\t * @param {DocumentType=null} doctype\n\t * @returns {Document}\n\t *\n\t * @see https://developer.mozilla.org/en-US/docs/Web/API/DOMImplementation/createDocument MDN\n\t * @see https://www.w3.org/TR/DOM-Level-2-Core/core.html#Level-2-Core-DOM-createDocument DOM Level 2 Core (initial)\n\t * @see https://dom.spec.whatwg.org/#dom-domimplementation-createdocument DOM Level 2 Core\n\t *\n\t * @see https://dom.spec.whatwg.org/#validate-and-extract DOM: Validate and extract\n\t * @see https://www.w3.org/TR/xml/#NT-NameStartChar XML Spec: Names\n\t * @see https://www.w3.org/TR/xml-names/#ns-qualnames XML Namespaces: Qualified names\n\t */\n\tcreateDocument: function(namespaceURI, qualifiedName, doctype){\n\t\tvar doc = new Document();\n\t\tdoc.implementation = this;\n\t\tdoc.childNodes = new NodeList();\n\t\tdoc.doctype = doctype || null;\n\t\tif (doctype){\n\t\t\tdoc.appendChild(doctype);\n\t\t}\n\t\tif (qualifiedName){\n\t\t\tvar root = doc.createElementNS(namespaceURI, qualifiedName);\n\t\t\tdoc.appendChild(root);\n\t\t}\n\t\treturn doc;\n\t},\n\t/**\n\t * Returns a doctype, with the given `qualifiedName`, `publicId`, and `systemId`.\n\t *\n\t * __This behavior is slightly different from the in the specs__:\n\t * - this implementation is not validating names or qualified names\n\t * (when parsing XML strings, the SAX parser takes care of that)\n\t *\n\t * @param {string} qualifiedName\n\t * @param {string} [publicId]\n\t * @param {string} [systemId]\n\t * @returns {DocumentType} which can either be used with `DOMImplementation.createDocument` upon document creation\n\t * \t\t\t\t or can be put into the document via methods like `Node.insertBefore()` or `Node.replaceChild()`\n\t *\n\t * @see https://developer.mozilla.org/en-US/docs/Web/API/DOMImplementation/createDocumentType MDN\n\t * @see https://www.w3.org/TR/DOM-Level-2-Core/core.html#Level-2-Core-DOM-createDocType DOM Level 2 Core\n\t * @see https://dom.spec.whatwg.org/#dom-domimplementation-createdocumenttype DOM Living Standard\n\t *\n\t * @see https://dom.spec.whatwg.org/#validate-and-extract DOM: Validate and extract\n\t * @see https://www.w3.org/TR/xml/#NT-NameStartChar XML Spec: Names\n\t * @see https://www.w3.org/TR/xml-names/#ns-qualnames XML Namespaces: Qualified names\n\t */\n\tcreateDocumentType: function(qualifiedName, publicId, systemId){\n\t\tvar node = new DocumentType();\n\t\tnode.name = qualifiedName;\n\t\tnode.nodeName = qualifiedName;\n\t\tnode.publicId = publicId || '';\n\t\tnode.systemId = systemId || '';\n\n\t\treturn node;\n\t}\n};\n\n\n/**\n * @see http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/core.html#ID-1950641247\n */\n\nfunction Node() {\n};\n\nNode.prototype = {\n\tfirstChild : null,\n\tlastChild : null,\n\tpreviousSibling : null,\n\tnextSibling : null,\n\tattributes : null,\n\tparentNode : null,\n\tchildNodes : null,\n\townerDocument : null,\n\tnodeValue : null,\n\tnamespaceURI : null,\n\tprefix : null,\n\tlocalName : null,\n\t// Modified in DOM Level 2:\n\tinsertBefore:function(newChild, refChild){//raises\n\t\treturn _insertBefore(this,newChild,refChild);\n\t},\n\treplaceChild:function(newChild, oldChild){//raises\n\t\t_insertBefore(this, newChild,oldChild, assertPreReplacementValidityInDocument);\n\t\tif(oldChild){\n\t\t\tthis.removeChild(oldChild);\n\t\t}\n\t},\n\tremoveChild:function(oldChild){\n\t\treturn _removeChild(this,oldChild);\n\t},\n\tappendChild:function(newChild){\n\t\treturn this.insertBefore(newChild,null);\n\t},\n\thasChildNodes:function(){\n\t\treturn this.firstChild != null;\n\t},\n\tcloneNode:function(deep){\n\t\treturn cloneNode(this.ownerDocument||this,this,deep);\n\t},\n\t// Modified in DOM Level 2:\n\tnormalize:function(){\n\t\tvar child = this.firstChild;\n\t\twhile(child){\n\t\t\tvar next = child.nextSibling;\n\t\t\tif(next && next.nodeType == TEXT_NODE && child.nodeType == TEXT_NODE){\n\t\t\t\tthis.removeChild(next);\n\t\t\t\tchild.appendData(next.data);\n\t\t\t}else{\n\t\t\t\tchild.normalize();\n\t\t\t\tchild = next;\n\t\t\t}\n\t\t}\n\t},\n \t// Introduced in DOM Level 2:\n\tisSupported:function(feature, version){\n\t\treturn this.ownerDocument.implementation.hasFeature(feature,version);\n\t},\n // Introduced in DOM Level 2:\n hasAttributes:function(){\n \treturn this.attributes.length>0;\n },\n\t/**\n\t * Look up the prefix associated to the given namespace URI, starting from this node.\n\t * **The default namespace declarations are ignored by this method.**\n\t * See Namespace Prefix Lookup for details on the algorithm used by this method.\n\t *\n\t * _Note: The implementation seems to be incomplete when compared to the algorithm described in the specs._\n\t *\n\t * @param {string | null} namespaceURI\n\t * @returns {string | null}\n\t * @see https://www.w3.org/TR/DOM-Level-3-Core/core.html#Node3-lookupNamespacePrefix\n\t * @see https://www.w3.org/TR/DOM-Level-3-Core/namespaces-algorithms.html#lookupNamespacePrefixAlgo\n\t * @see https://dom.spec.whatwg.org/#dom-node-lookupprefix\n\t * @see https://github.com/xmldom/xmldom/issues/322\n\t */\n lookupPrefix:function(namespaceURI){\n \tvar el = this;\n \twhile(el){\n \t\tvar map = el._nsMap;\n \t\t//console.dir(map)\n \t\tif(map){\n \t\t\tfor(var n in map){\n\t\t\t\t\t\tif (Object.prototype.hasOwnProperty.call(map, n) && map[n] === namespaceURI) {\n\t\t\t\t\t\t\treturn n;\n\t\t\t\t\t\t}\n \t\t\t}\n \t\t}\n \t\tel = el.nodeType == ATTRIBUTE_NODE?el.ownerDocument : el.parentNode;\n \t}\n \treturn null;\n },\n // Introduced in DOM Level 3:\n lookupNamespaceURI:function(prefix){\n \tvar el = this;\n \twhile(el){\n \t\tvar map = el._nsMap;\n \t\t//console.dir(map)\n \t\tif(map){\n \t\t\tif(Object.prototype.hasOwnProperty.call(map, prefix)){\n \t\t\t\treturn map[prefix] ;\n \t\t\t}\n \t\t}\n \t\tel = el.nodeType == ATTRIBUTE_NODE?el.ownerDocument : el.parentNode;\n \t}\n \treturn null;\n },\n // Introduced in DOM Level 3:\n isDefaultNamespace:function(namespaceURI){\n \tvar prefix = this.lookupPrefix(namespaceURI);\n \treturn prefix == null;\n }\n};\n\n\nfunction _xmlEncoder(c){\n\treturn c == '<' && '<' ||\n c == '>' && '>' ||\n c == '&' && '&' ||\n c == '\"' && '"' ||\n '&#'+c.charCodeAt()+';'\n}\n\n\ncopy(NodeType,Node);\ncopy(NodeType,Node.prototype);\n\n/**\n * @param callback return true for continue,false for break\n * @return boolean true: break visit;\n */\nfunction _visitNode(node,callback){\n\tif(callback(node)){\n\t\treturn true;\n\t}\n\tif(node = node.firstChild){\n\t\tdo{\n\t\t\tif(_visitNode(node,callback)){return true}\n }while(node=node.nextSibling)\n }\n}\n\n\n\nfunction Document(){\n\tthis.ownerDocument = this;\n}\n\nfunction _onAddAttribute(doc,el,newAttr){\n\tdoc && doc._inc++;\n\tvar ns = newAttr.namespaceURI ;\n\tif(ns === NAMESPACE.XMLNS){\n\t\t//update namespace\n\t\tel._nsMap[newAttr.prefix?newAttr.localName:''] = newAttr.value\n\t}\n}\n\nfunction _onRemoveAttribute(doc,el,newAttr,remove){\n\tdoc && doc._inc++;\n\tvar ns = newAttr.namespaceURI ;\n\tif(ns === NAMESPACE.XMLNS){\n\t\t//update namespace\n\t\tdelete el._nsMap[newAttr.prefix?newAttr.localName:'']\n\t}\n}\n\n/**\n * Updates `el.childNodes`, updating the indexed items and it's `length`.\n * Passing `newChild` means it will be appended.\n * Otherwise it's assumed that an item has been removed,\n * and `el.firstNode` and it's `.nextSibling` are used\n * to walk the current list of child nodes.\n *\n * @param {Document} doc\n * @param {Node} el\n * @param {Node} [newChild]\n * @private\n */\nfunction _onUpdateChild (doc, el, newChild) {\n\tif(doc && doc._inc){\n\t\tdoc._inc++;\n\t\t//update childNodes\n\t\tvar cs = el.childNodes;\n\t\tif (newChild) {\n\t\t\tcs[cs.length++] = newChild;\n\t\t} else {\n\t\t\tvar child = el.firstChild;\n\t\t\tvar i = 0;\n\t\t\twhile (child) {\n\t\t\t\tcs[i++] = child;\n\t\t\t\tchild = child.nextSibling;\n\t\t\t}\n\t\t\tcs.length = i;\n\t\t\tdelete cs[cs.length];\n\t\t}\n\t}\n}\n\n/**\n * Removes the connections between `parentNode` and `child`\n * and any existing `child.previousSibling` or `child.nextSibling`.\n *\n * @see https://github.com/xmldom/xmldom/issues/135\n * @see https://github.com/xmldom/xmldom/issues/145\n *\n * @param {Node} parentNode\n * @param {Node} child\n * @returns {Node} the child that was removed.\n * @private\n */\nfunction _removeChild (parentNode, child) {\n\tvar previous = child.previousSibling;\n\tvar next = child.nextSibling;\n\tif (previous) {\n\t\tprevious.nextSibling = next;\n\t} else {\n\t\tparentNode.firstChild = next;\n\t}\n\tif (next) {\n\t\tnext.previousSibling = previous;\n\t} else {\n\t\tparentNode.lastChild = previous;\n\t}\n\tchild.parentNode = null;\n\tchild.previousSibling = null;\n\tchild.nextSibling = null;\n\t_onUpdateChild(parentNode.ownerDocument, parentNode);\n\treturn child;\n}\n\n/**\n * Returns `true` if `node` can be a parent for insertion.\n * @param {Node} node\n * @returns {boolean}\n */\nfunction hasValidParentNodeType(node) {\n\treturn (\n\t\tnode &&\n\t\t(node.nodeType === Node.DOCUMENT_NODE || node.nodeType === Node.DOCUMENT_FRAGMENT_NODE || node.nodeType === Node.ELEMENT_NODE)\n\t);\n}\n\n/**\n * Returns `true` if `node` can be inserted according to it's `nodeType`.\n * @param {Node} node\n * @returns {boolean}\n */\nfunction hasInsertableNodeType(node) {\n\treturn (\n\t\tnode &&\n\t\t(isElementNode(node) ||\n\t\t\tisTextNode(node) ||\n\t\t\tisDocTypeNode(node) ||\n\t\t\tnode.nodeType === Node.DOCUMENT_FRAGMENT_NODE ||\n\t\t\tnode.nodeType === Node.COMMENT_NODE ||\n\t\t\tnode.nodeType === Node.PROCESSING_INSTRUCTION_NODE)\n\t);\n}\n\n/**\n * Returns true if `node` is a DOCTYPE node\n * @param {Node} node\n * @returns {boolean}\n */\nfunction isDocTypeNode(node) {\n\treturn node && node.nodeType === Node.DOCUMENT_TYPE_NODE;\n}\n\n/**\n * Returns true if the node is an element\n * @param {Node} node\n * @returns {boolean}\n */\nfunction isElementNode(node) {\n\treturn node && node.nodeType === Node.ELEMENT_NODE;\n}\n/**\n * Returns true if `node` is a text node\n * @param {Node} node\n * @returns {boolean}\n */\nfunction isTextNode(node) {\n\treturn node && node.nodeType === Node.TEXT_NODE;\n}\n\n/**\n * Check if en element node can be inserted before `child`, or at the end if child is falsy,\n * according to the presence and position of a doctype node on the same level.\n *\n * @param {Document} doc The document node\n * @param {Node} child the node that would become the nextSibling if the element would be inserted\n * @returns {boolean} `true` if an element can be inserted before child\n * @private\n * https://dom.spec.whatwg.org/#concept-node-ensure-pre-insertion-validity\n */\nfunction isElementInsertionPossible(doc, child) {\n\tvar parentChildNodes = doc.childNodes || [];\n\tif (find(parentChildNodes, isElementNode) || isDocTypeNode(child)) {\n\t\treturn false;\n\t}\n\tvar docTypeNode = find(parentChildNodes, isDocTypeNode);\n\treturn !(child && docTypeNode && parentChildNodes.indexOf(docTypeNode) > parentChildNodes.indexOf(child));\n}\n\n/**\n * Check if en element node can be inserted before `child`, or at the end if child is falsy,\n * according to the presence and position of a doctype node on the same level.\n *\n * @param {Node} doc The document node\n * @param {Node} child the node that would become the nextSibling if the element would be inserted\n * @returns {boolean} `true` if an element can be inserted before child\n * @private\n * https://dom.spec.whatwg.org/#concept-node-ensure-pre-insertion-validity\n */\nfunction isElementReplacementPossible(doc, child) {\n\tvar parentChildNodes = doc.childNodes || [];\n\n\tfunction hasElementChildThatIsNotChild(node) {\n\t\treturn isElementNode(node) && node !== child;\n\t}\n\n\tif (find(parentChildNodes, hasElementChildThatIsNotChild)) {\n\t\treturn false;\n\t}\n\tvar docTypeNode = find(parentChildNodes, isDocTypeNode);\n\treturn !(child && docTypeNode && parentChildNodes.indexOf(docTypeNode) > parentChildNodes.indexOf(child));\n}\n\n/**\n * @private\n * Steps 1-5 of the checks before inserting and before replacing a child are the same.\n *\n * @param {Node} parent the parent node to insert `node` into\n * @param {Node} node the node to insert\n * @param {Node=} child the node that should become the `nextSibling` of `node`\n * @returns {Node}\n * @throws DOMException for several node combinations that would create a DOM that is not well-formed.\n * @throws DOMException if `child` is provided but is not a child of `parent`.\n * @see https://dom.spec.whatwg.org/#concept-node-ensure-pre-insertion-validity\n * @see https://dom.spec.whatwg.org/#concept-node-replace\n */\nfunction assertPreInsertionValidity1to5(parent, node, child) {\n\t// 1. If `parent` is not a Document, DocumentFragment, or Element node, then throw a \"HierarchyRequestError\" DOMException.\n\tif (!hasValidParentNodeType(parent)) {\n\t\tthrow new DOMException(HIERARCHY_REQUEST_ERR, 'Unexpected parent node type ' + parent.nodeType);\n\t}\n\t// 2. If `node` is a host-including inclusive ancestor of `parent`, then throw a \"HierarchyRequestError\" DOMException.\n\t// not implemented!\n\t// 3. If `child` is non-null and its parent is not `parent`, then throw a \"NotFoundError\" DOMException.\n\tif (child && child.parentNode !== parent) {\n\t\tthrow new DOMException(NOT_FOUND_ERR, 'child not in parent');\n\t}\n\tif (\n\t\t// 4. If `node` is not a DocumentFragment, DocumentType, Element, or CharacterData node, then throw a \"HierarchyRequestError\" DOMException.\n\t\t!hasInsertableNodeType(node) ||\n\t\t// 5. If either `node` is a Text node and `parent` is a document,\n\t\t// the sax parser currently adds top level text nodes, this will be fixed in 0.9.0\n\t\t// || (node.nodeType === Node.TEXT_NODE && parent.nodeType === Node.DOCUMENT_NODE)\n\t\t// or `node` is a doctype and `parent` is not a document, then throw a \"HierarchyRequestError\" DOMException.\n\t\t(isDocTypeNode(node) && parent.nodeType !== Node.DOCUMENT_NODE)\n\t) {\n\t\tthrow new DOMException(\n\t\t\tHIERARCHY_REQUEST_ERR,\n\t\t\t'Unexpected node type ' + node.nodeType + ' for parent node type ' + parent.nodeType\n\t\t);\n\t}\n}\n\n/**\n * @private\n * Step 6 of the checks before inserting and before replacing a child are different.\n *\n * @param {Document} parent the parent node to insert `node` into\n * @param {Node} node the node to insert\n * @param {Node | undefined} child the node that should become the `nextSibling` of `node`\n * @returns {Node}\n * @throws DOMException for several node combinations that would create a DOM that is not well-formed.\n * @throws DOMException if `child` is provided but is not a child of `parent`.\n * @see https://dom.spec.whatwg.org/#concept-node-ensure-pre-insertion-validity\n * @see https://dom.spec.whatwg.org/#concept-node-replace\n */\nfunction assertPreInsertionValidityInDocument(parent, node, child) {\n\tvar parentChildNodes = parent.childNodes || [];\n\tvar nodeChildNodes = node.childNodes || [];\n\n\t// DocumentFragment\n\tif (node.nodeType === Node.DOCUMENT_FRAGMENT_NODE) {\n\t\tvar nodeChildElements = nodeChildNodes.filter(isElementNode);\n\t\t// If node has more than one element child or has a Text node child.\n\t\tif (nodeChildElements.length > 1 || find(nodeChildNodes, isTextNode)) {\n\t\t\tthrow new DOMException(HIERARCHY_REQUEST_ERR, 'More than one element or text in fragment');\n\t\t}\n\t\t// Otherwise, if `node` has one element child and either `parent` has an element child,\n\t\t// `child` is a doctype, or `child` is non-null and a doctype is following `child`.\n\t\tif (nodeChildElements.length === 1 && !isElementInsertionPossible(parent, child)) {\n\t\t\tthrow new DOMException(HIERARCHY_REQUEST_ERR, 'Element in fragment can not be inserted before doctype');\n\t\t}\n\t}\n\t// Element\n\tif (isElementNode(node)) {\n\t\t// `parent` has an element child, `child` is a doctype,\n\t\t// or `child` is non-null and a doctype is following `child`.\n\t\tif (!isElementInsertionPossible(parent, child)) {\n\t\t\tthrow new DOMException(HIERARCHY_REQUEST_ERR, 'Only one element can be added and only after doctype');\n\t\t}\n\t}\n\t// DocumentType\n\tif (isDocTypeNode(node)) {\n\t\t// `parent` has a doctype child,\n\t\tif (find(parentChildNodes, isDocTypeNode)) {\n\t\t\tthrow new DOMException(HIERARCHY_REQUEST_ERR, 'Only one doctype is allowed');\n\t\t}\n\t\tvar parentElementChild = find(parentChildNodes, isElementNode);\n\t\t// `child` is non-null and an element is preceding `child`,\n\t\tif (child && parentChildNodes.indexOf(parentElementChild) < parentChildNodes.indexOf(child)) {\n\t\t\tthrow new DOMException(HIERARCHY_REQUEST_ERR, 'Doctype can only be inserted before an element');\n\t\t}\n\t\t// or `child` is null and `parent` has an element child.\n\t\tif (!child && parentElementChild) {\n\t\t\tthrow new DOMException(HIERARCHY_REQUEST_ERR, 'Doctype can not be appended since element is present');\n\t\t}\n\t}\n}\n\n/**\n * @private\n * Step 6 of the checks before inserting and before replacing a child are different.\n *\n * @param {Document} parent the parent node to insert `node` into\n * @param {Node} node the node to insert\n * @param {Node | undefined} child the node that should become the `nextSibling` of `node`\n * @returns {Node}\n * @throws DOMException for several node combinations that would create a DOM that is not well-formed.\n * @throws DOMException if `child` is provided but is not a child of `parent`.\n * @see https://dom.spec.whatwg.org/#concept-node-ensure-pre-insertion-validity\n * @see https://dom.spec.whatwg.org/#concept-node-replace\n */\nfunction assertPreReplacementValidityInDocument(parent, node, child) {\n\tvar parentChildNodes = parent.childNodes || [];\n\tvar nodeChildNodes = node.childNodes || [];\n\n\t// DocumentFragment\n\tif (node.nodeType === Node.DOCUMENT_FRAGMENT_NODE) {\n\t\tvar nodeChildElements = nodeChildNodes.filter(isElementNode);\n\t\t// If `node` has more than one element child or has a Text node child.\n\t\tif (nodeChildElements.length > 1 || find(nodeChildNodes, isTextNode)) {\n\t\t\tthrow new DOMException(HIERARCHY_REQUEST_ERR, 'More than one element or text in fragment');\n\t\t}\n\t\t// Otherwise, if `node` has one element child and either `parent` has an element child that is not `child` or a doctype is following `child`.\n\t\tif (nodeChildElements.length === 1 && !isElementReplacementPossible(parent, child)) {\n\t\t\tthrow new DOMException(HIERARCHY_REQUEST_ERR, 'Element in fragment can not be inserted before doctype');\n\t\t}\n\t}\n\t// Element\n\tif (isElementNode(node)) {\n\t\t// `parent` has an element child that is not `child` or a doctype is following `child`.\n\t\tif (!isElementReplacementPossible(parent, child)) {\n\t\t\tthrow new DOMException(HIERARCHY_REQUEST_ERR, 'Only one element can be added and only after doctype');\n\t\t}\n\t}\n\t// DocumentType\n\tif (isDocTypeNode(node)) {\n\t\tfunction hasDoctypeChildThatIsNotChild(node) {\n\t\t\treturn isDocTypeNode(node) && node !== child;\n\t\t}\n\n\t\t// `parent` has a doctype child that is not `child`,\n\t\tif (find(parentChildNodes, hasDoctypeChildThatIsNotChild)) {\n\t\t\tthrow new DOMException(HIERARCHY_REQUEST_ERR, 'Only one doctype is allowed');\n\t\t}\n\t\tvar parentElementChild = find(parentChildNodes, isElementNode);\n\t\t// or an element is preceding `child`.\n\t\tif (child && parentChildNodes.indexOf(parentElementChild) < parentChildNodes.indexOf(child)) {\n\t\t\tthrow new DOMException(HIERARCHY_REQUEST_ERR, 'Doctype can only be inserted before an element');\n\t\t}\n\t}\n}\n\n/**\n * @private\n * @param {Node} parent the parent node to insert `node` into\n * @param {Node} node the node to insert\n * @param {Node=} child the node that should become the `nextSibling` of `node`\n * @returns {Node}\n * @throws DOMException for several node combinations that would create a DOM that is not well-formed.\n * @throws DOMException if `child` is provided but is not a child of `parent`.\n * @see https://dom.spec.whatwg.org/#concept-node-ensure-pre-insertion-validity\n */\nfunction _insertBefore(parent, node, child, _inDocumentAssertion) {\n\t// To ensure pre-insertion validity of a node into a parent before a child, run these steps:\n\tassertPreInsertionValidity1to5(parent, node, child);\n\n\t// If parent is a document, and any of the statements below, switched on the interface node implements,\n\t// are true, then throw a \"HierarchyRequestError\" DOMException.\n\tif (parent.nodeType === Node.DOCUMENT_NODE) {\n\t\t(_inDocumentAssertion || assertPreInsertionValidityInDocument)(parent, node, child);\n\t}\n\n\tvar cp = node.parentNode;\n\tif(cp){\n\t\tcp.removeChild(node);//remove and update\n\t}\n\tif(node.nodeType === DOCUMENT_FRAGMENT_NODE){\n\t\tvar newFirst = node.firstChild;\n\t\tif (newFirst == null) {\n\t\t\treturn node;\n\t\t}\n\t\tvar newLast = node.lastChild;\n\t}else{\n\t\tnewFirst = newLast = node;\n\t}\n\tvar pre = child ? child.previousSibling : parent.lastChild;\n\n\tnewFirst.previousSibling = pre;\n\tnewLast.nextSibling = child;\n\n\n\tif(pre){\n\t\tpre.nextSibling = newFirst;\n\t}else{\n\t\tparent.firstChild = newFirst;\n\t}\n\tif(child == null){\n\t\tparent.lastChild = newLast;\n\t}else{\n\t\tchild.previousSibling = newLast;\n\t}\n\tdo{\n\t\tnewFirst.parentNode = parent;\n\t}while(newFirst !== newLast && (newFirst= newFirst.nextSibling))\n\t_onUpdateChild(parent.ownerDocument||parent, parent);\n\t//console.log(parent.lastChild.nextSibling == null)\n\tif (node.nodeType == DOCUMENT_FRAGMENT_NODE) {\n\t\tnode.firstChild = node.lastChild = null;\n\t}\n\treturn node;\n}\n\n/**\n * Appends `newChild` to `parentNode`.\n * If `newChild` is already connected to a `parentNode` it is first removed from it.\n *\n * @see https://github.com/xmldom/xmldom/issues/135\n * @see https://github.com/xmldom/xmldom/issues/145\n * @param {Node} parentNode\n * @param {Node} newChild\n * @returns {Node}\n * @private\n */\nfunction _appendSingleChild (parentNode, newChild) {\n\tif (newChild.parentNode) {\n\t\tnewChild.parentNode.removeChild(newChild);\n\t}\n\tnewChild.parentNode = parentNode;\n\tnewChild.previousSibling = parentNode.lastChild;\n\tnewChild.nextSibling = null;\n\tif (newChild.previousSibling) {\n\t\tnewChild.previousSibling.nextSibling = newChild;\n\t} else {\n\t\tparentNode.firstChild = newChild;\n\t}\n\tparentNode.lastChild = newChild;\n\t_onUpdateChild(parentNode.ownerDocument, parentNode, newChild);\n\treturn newChild;\n}\n\nDocument.prototype = {\n\t//implementation : null,\n\tnodeName : '#document',\n\tnodeType : DOCUMENT_NODE,\n\t/**\n\t * The DocumentType node of the document.\n\t *\n\t * @readonly\n\t * @type DocumentType\n\t */\n\tdoctype : null,\n\tdocumentElement : null,\n\t_inc : 1,\n\n\tinsertBefore : function(newChild, refChild){//raises\n\t\tif(newChild.nodeType == DOCUMENT_FRAGMENT_NODE){\n\t\t\tvar child = newChild.firstChild;\n\t\t\twhile(child){\n\t\t\t\tvar next = child.nextSibling;\n\t\t\t\tthis.insertBefore(child,refChild);\n\t\t\t\tchild = next;\n\t\t\t}\n\t\t\treturn newChild;\n\t\t}\n\t\t_insertBefore(this, newChild, refChild);\n\t\tnewChild.ownerDocument = this;\n\t\tif (this.documentElement === null && newChild.nodeType === ELEMENT_NODE) {\n\t\t\tthis.documentElement = newChild;\n\t\t}\n\n\t\treturn newChild;\n\t},\n\tremoveChild : function(oldChild){\n\t\tif(this.documentElement == oldChild){\n\t\t\tthis.documentElement = null;\n\t\t}\n\t\treturn _removeChild(this,oldChild);\n\t},\n\treplaceChild: function (newChild, oldChild) {\n\t\t//raises\n\t\t_insertBefore(this, newChild, oldChild, assertPreReplacementValidityInDocument);\n\t\tnewChild.ownerDocument = this;\n\t\tif (oldChild) {\n\t\t\tthis.removeChild(oldChild);\n\t\t}\n\t\tif (isElementNode(newChild)) {\n\t\t\tthis.documentElement = newChild;\n\t\t}\n\t},\n\t// Introduced in DOM Level 2:\n\timportNode : function(importedNode,deep){\n\t\treturn importNode(this,importedNode,deep);\n\t},\n\t// Introduced in DOM Level 2:\n\tgetElementById :\tfunction(id){\n\t\tvar rtv = null;\n\t\t_visitNode(this.documentElement,function(node){\n\t\t\tif(node.nodeType == ELEMENT_NODE){\n\t\t\t\tif(node.getAttribute('id') == id){\n\t\t\t\t\trtv = node;\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t}\n\t\t})\n\t\treturn rtv;\n\t},\n\n\t/**\n\t * The `getElementsByClassName` method of `Document` interface returns an array-like object\n\t * of all child elements which have **all** of the given class name(s).\n\t *\n\t * Returns an empty list if `classeNames` is an empty string or only contains HTML white space characters.\n\t *\n\t *\n\t * Warning: This is a live LiveNodeList.\n\t * Changes in the DOM will reflect in the array as the changes occur.\n\t * If an element selected by this array no longer qualifies for the selector,\n\t * it will automatically be removed. Be aware of this for iteration purposes.\n\t *\n\t * @param {string} classNames is a string representing the class name(s) to match; multiple class names are separated by (ASCII-)whitespace\n\t *\n\t * @see https://developer.mozilla.org/en-US/docs/Web/API/Document/getElementsByClassName\n\t * @see https://dom.spec.whatwg.org/#concept-getelementsbyclassname\n\t */\n\tgetElementsByClassName: function(classNames) {\n\t\tvar classNamesSet = toOrderedSet(classNames)\n\t\treturn new LiveNodeList(this, function(base) {\n\t\t\tvar ls = [];\n\t\t\tif (classNamesSet.length > 0) {\n\t\t\t\t_visitNode(base.documentElement, function(node) {\n\t\t\t\t\tif(node !== base && node.nodeType === ELEMENT_NODE) {\n\t\t\t\t\t\tvar nodeClassNames = node.getAttribute('class')\n\t\t\t\t\t\t// can be null if the attribute does not exist\n\t\t\t\t\t\tif (nodeClassNames) {\n\t\t\t\t\t\t\t// before splitting and iterating just compare them for the most common case\n\t\t\t\t\t\t\tvar matches = classNames === nodeClassNames;\n\t\t\t\t\t\t\tif (!matches) {\n\t\t\t\t\t\t\t\tvar nodeClassNamesSet = toOrderedSet(nodeClassNames)\n\t\t\t\t\t\t\t\tmatches = classNamesSet.every(arrayIncludes(nodeClassNamesSet))\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif(matches) {\n\t\t\t\t\t\t\t\tls.push(node);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t\treturn ls;\n\t\t});\n\t},\n\n\t//document factory method:\n\tcreateElement :\tfunction(tagName){\n\t\tvar node = new Element();\n\t\tnode.ownerDocument = this;\n\t\tnode.nodeName = tagName;\n\t\tnode.tagName = tagName;\n\t\tnode.localName = tagName;\n\t\tnode.childNodes = new NodeList();\n\t\tvar attrs\t= node.attributes = new NamedNodeMap();\n\t\tattrs._ownerElement = node;\n\t\treturn node;\n\t},\n\tcreateDocumentFragment :\tfunction(){\n\t\tvar node = new DocumentFragment();\n\t\tnode.ownerDocument = this;\n\t\tnode.childNodes = new NodeList();\n\t\treturn node;\n\t},\n\tcreateTextNode :\tfunction(data){\n\t\tvar node = new Text();\n\t\tnode.ownerDocument = this;\n\t\tnode.appendData(data)\n\t\treturn node;\n\t},\n\tcreateComment :\tfunction(data){\n\t\tvar node = new Comment();\n\t\tnode.ownerDocument = this;\n\t\tnode.appendData(data)\n\t\treturn node;\n\t},\n\tcreateCDATASection :\tfunction(data){\n\t\tvar node = new CDATASection();\n\t\tnode.ownerDocument = this;\n\t\tnode.appendData(data)\n\t\treturn node;\n\t},\n\tcreateProcessingInstruction :\tfunction(target,data){\n\t\tvar node = new ProcessingInstruction();\n\t\tnode.ownerDocument = this;\n\t\tnode.tagName = node.nodeName = node.target = target;\n\t\tnode.nodeValue = node.data = data;\n\t\treturn node;\n\t},\n\tcreateAttribute :\tfunction(name){\n\t\tvar node = new Attr();\n\t\tnode.ownerDocument\t= this;\n\t\tnode.name = name;\n\t\tnode.nodeName\t= name;\n\t\tnode.localName = name;\n\t\tnode.specified = true;\n\t\treturn node;\n\t},\n\tcreateEntityReference :\tfunction(name){\n\t\tvar node = new EntityReference();\n\t\tnode.ownerDocument\t= this;\n\t\tnode.nodeName\t= name;\n\t\treturn node;\n\t},\n\t// Introduced in DOM Level 2:\n\tcreateElementNS :\tfunction(namespaceURI,qualifiedName){\n\t\tvar node = new Element();\n\t\tvar pl = qualifiedName.split(':');\n\t\tvar attrs\t= node.attributes = new NamedNodeMap();\n\t\tnode.childNodes = new NodeList();\n\t\tnode.ownerDocument = this;\n\t\tnode.nodeName = qualifiedName;\n\t\tnode.tagName = qualifiedName;\n\t\tnode.namespaceURI = namespaceURI;\n\t\tif(pl.length == 2){\n\t\t\tnode.prefix = pl[0];\n\t\t\tnode.localName = pl[1];\n\t\t}else{\n\t\t\t//el.prefix = null;\n\t\t\tnode.localName = qualifiedName;\n\t\t}\n\t\tattrs._ownerElement = node;\n\t\treturn node;\n\t},\n\t// Introduced in DOM Level 2:\n\tcreateAttributeNS :\tfunction(namespaceURI,qualifiedName){\n\t\tvar node = new Attr();\n\t\tvar pl = qualifiedName.split(':');\n\t\tnode.ownerDocument = this;\n\t\tnode.nodeName = qualifiedName;\n\t\tnode.name = qualifiedName;\n\t\tnode.namespaceURI = namespaceURI;\n\t\tnode.specified = true;\n\t\tif(pl.length == 2){\n\t\t\tnode.prefix = pl[0];\n\t\t\tnode.localName = pl[1];\n\t\t}else{\n\t\t\t//el.prefix = null;\n\t\t\tnode.localName = qualifiedName;\n\t\t}\n\t\treturn node;\n\t}\n};\n_extends(Document,Node);\n\n\nfunction Element() {\n\tthis._nsMap = {};\n};\nElement.prototype = {\n\tnodeType : ELEMENT_NODE,\n\thasAttribute : function(name){\n\t\treturn this.getAttributeNode(name)!=null;\n\t},\n\tgetAttribute : function(name){\n\t\tvar attr = this.getAttributeNode(name);\n\t\treturn attr && attr.value || '';\n\t},\n\tgetAttributeNode : function(name){\n\t\treturn this.attributes.getNamedItem(name);\n\t},\n\tsetAttribute : function(name, value){\n\t\tvar attr = this.ownerDocument.createAttribute(name);\n\t\tattr.value = attr.nodeValue = \"\" + value;\n\t\tthis.setAttributeNode(attr)\n\t},\n\tremoveAttribute : function(name){\n\t\tvar attr = this.getAttributeNode(name)\n\t\tattr && this.removeAttributeNode(attr);\n\t},\n\n\t//four real opeartion method\n\tappendChild:function(newChild){\n\t\tif(newChild.nodeType === DOCUMENT_FRAGMENT_NODE){\n\t\t\treturn this.insertBefore(newChild,null);\n\t\t}else{\n\t\t\treturn _appendSingleChild(this,newChild);\n\t\t}\n\t},\n\tsetAttributeNode : function(newAttr){\n\t\treturn this.attributes.setNamedItem(newAttr);\n\t},\n\tsetAttributeNodeNS : function(newAttr){\n\t\treturn this.attributes.setNamedItemNS(newAttr);\n\t},\n\tremoveAttributeNode : function(oldAttr){\n\t\t//console.log(this == oldAttr.ownerElement)\n\t\treturn this.attributes.removeNamedItem(oldAttr.nodeName);\n\t},\n\t//get real attribute name,and remove it by removeAttributeNode\n\tremoveAttributeNS : function(namespaceURI, localName){\n\t\tvar old = this.getAttributeNodeNS(namespaceURI, localName);\n\t\told && this.removeAttributeNode(old);\n\t},\n\n\thasAttributeNS : function(namespaceURI, localName){\n\t\treturn this.getAttributeNodeNS(namespaceURI, localName)!=null;\n\t},\n\tgetAttributeNS : function(namespaceURI, localName){\n\t\tvar attr = this.getAttributeNodeNS(namespaceURI, localName);\n\t\treturn attr && attr.value || '';\n\t},\n\tsetAttributeNS : function(namespaceURI, qualifiedName, value){\n\t\tvar attr = this.ownerDocument.createAttributeNS(namespaceURI, qualifiedName);\n\t\tattr.value = attr.nodeValue = \"\" + value;\n\t\tthis.setAttributeNode(attr)\n\t},\n\tgetAttributeNodeNS : function(namespaceURI, localName){\n\t\treturn this.attributes.getNamedItemNS(namespaceURI, localName);\n\t},\n\n\tgetElementsByTagName : function(tagName){\n\t\treturn new LiveNodeList(this,function(base){\n\t\t\tvar ls = [];\n\t\t\t_visitNode(base,function(node){\n\t\t\t\tif(node !== base && node.nodeType == ELEMENT_NODE && (tagName === '*' || node.tagName == tagName)){\n\t\t\t\t\tls.push(node);\n\t\t\t\t}\n\t\t\t});\n\t\t\treturn ls;\n\t\t});\n\t},\n\tgetElementsByTagNameNS : function(namespaceURI, localName){\n\t\treturn new LiveNodeList(this,function(base){\n\t\t\tvar ls = [];\n\t\t\t_visitNode(base,function(node){\n\t\t\t\tif(node !== base && node.nodeType === ELEMENT_NODE && (namespaceURI === '*' || node.namespaceURI === namespaceURI) && (localName === '*' || node.localName == localName)){\n\t\t\t\t\tls.push(node);\n\t\t\t\t}\n\t\t\t});\n\t\t\treturn ls;\n\n\t\t});\n\t}\n};\nDocument.prototype.getElementsByTagName = Element.prototype.getElementsByTagName;\nDocument.prototype.getElementsByTagNameNS = Element.prototype.getElementsByTagNameNS;\n\n\n_extends(Element,Node);\nfunction Attr() {\n};\nAttr.prototype.nodeType = ATTRIBUTE_NODE;\n_extends(Attr,Node);\n\n\nfunction CharacterData() {\n};\nCharacterData.prototype = {\n\tdata : '',\n\tsubstringData : function(offset, count) {\n\t\treturn this.data.substring(offset, offset+count);\n\t},\n\tappendData: function(text) {\n\t\ttext = this.data+text;\n\t\tthis.nodeValue = this.data = text;\n\t\tthis.length = text.length;\n\t},\n\tinsertData: function(offset,text) {\n\t\tthis.replaceData(offset,0,text);\n\n\t},\n\tappendChild:function(newChild){\n\t\tthrow new Error(ExceptionMessage[HIERARCHY_REQUEST_ERR])\n\t},\n\tdeleteData: function(offset, count) {\n\t\tthis.replaceData(offset,count,\"\");\n\t},\n\treplaceData: function(offset, count, text) {\n\t\tvar start = this.data.substring(0,offset);\n\t\tvar end = this.data.substring(offset+count);\n\t\ttext = start + text + end;\n\t\tthis.nodeValue = this.data = text;\n\t\tthis.length = text.length;\n\t}\n}\n_extends(CharacterData,Node);\nfunction Text() {\n};\nText.prototype = {\n\tnodeName : \"#text\",\n\tnodeType : TEXT_NODE,\n\tsplitText : function(offset) {\n\t\tvar text = this.data;\n\t\tvar newText = text.substring(offset);\n\t\ttext = text.substring(0, offset);\n\t\tthis.data = this.nodeValue = text;\n\t\tthis.length = text.length;\n\t\tvar newNode = this.ownerDocument.createTextNode(newText);\n\t\tif(this.parentNode){\n\t\t\tthis.parentNode.insertBefore(newNode, this.nextSibling);\n\t\t}\n\t\treturn newNode;\n\t}\n}\n_extends(Text,CharacterData);\nfunction Comment() {\n};\nComment.prototype = {\n\tnodeName : \"#comment\",\n\tnodeType : COMMENT_NODE\n}\n_extends(Comment,CharacterData);\n\nfunction CDATASection() {\n};\nCDATASection.prototype = {\n\tnodeName : \"#cdata-section\",\n\tnodeType : CDATA_SECTION_NODE\n}\n_extends(CDATASection,CharacterData);\n\n\nfunction DocumentType() {\n};\nDocumentType.prototype.nodeType = DOCUMENT_TYPE_NODE;\n_extends(DocumentType,Node);\n\nfunction Notation() {\n};\nNotation.prototype.nodeType = NOTATION_NODE;\n_extends(Notation,Node);\n\nfunction Entity() {\n};\nEntity.prototype.nodeType = ENTITY_NODE;\n_extends(Entity,Node);\n\nfunction EntityReference() {\n};\nEntityReference.prototype.nodeType = ENTITY_REFERENCE_NODE;\n_extends(EntityReference,Node);\n\nfunction DocumentFragment() {\n};\nDocumentFragment.prototype.nodeName =\t\"#document-fragment\";\nDocumentFragment.prototype.nodeType =\tDOCUMENT_FRAGMENT_NODE;\n_extends(DocumentFragment,Node);\n\n\nfunction ProcessingInstruction() {\n}\nProcessingInstruction.prototype.nodeType = PROCESSING_INSTRUCTION_NODE;\n_extends(ProcessingInstruction,Node);\nfunction XMLSerializer(){}\nXMLSerializer.prototype.serializeToString = function(node,isHtml,nodeFilter){\n\treturn nodeSerializeToString.call(node,isHtml,nodeFilter);\n}\nNode.prototype.toString = nodeSerializeToString;\nfunction nodeSerializeToString(isHtml,nodeFilter){\n\tvar buf = [];\n\tvar refNode = this.nodeType == 9 && this.documentElement || this;\n\tvar prefix = refNode.prefix;\n\tvar uri = refNode.namespaceURI;\n\n\tif(uri && prefix == null){\n\t\t//console.log(prefix)\n\t\tvar prefix = refNode.lookupPrefix(uri);\n\t\tif(prefix == null){\n\t\t\t//isHTML = true;\n\t\t\tvar visibleNamespaces=[\n\t\t\t{namespace:uri,prefix:null}\n\t\t\t//{namespace:uri,prefix:''}\n\t\t\t]\n\t\t}\n\t}\n\tserializeToString(this,buf,isHtml,nodeFilter,visibleNamespaces);\n\t//console.log('###',this.nodeType,uri,prefix,buf.join(''))\n\treturn buf.join('');\n}\n\nfunction needNamespaceDefine(node, isHTML, visibleNamespaces) {\n\tvar prefix = node.prefix || '';\n\tvar uri = node.namespaceURI;\n\t// According to [Namespaces in XML 1.0](https://www.w3.org/TR/REC-xml-names/#ns-using) ,\n\t// and more specifically https://www.w3.org/TR/REC-xml-names/#nsc-NoPrefixUndecl :\n\t// > In a namespace declaration for a prefix [...], the attribute value MUST NOT be empty.\n\t// in a similar manner [Namespaces in XML 1.1](https://www.w3.org/TR/xml-names11/#ns-using)\n\t// and more specifically https://www.w3.org/TR/xml-names11/#nsc-NSDeclared :\n\t// > [...] Furthermore, the attribute value [...] must not be an empty string.\n\t// so serializing empty namespace value like xmlns:ds=\"\" would produce an invalid XML document.\n\tif (!uri) {\n\t\treturn false;\n\t}\n\tif (prefix === \"xml\" && uri === NAMESPACE.XML || uri === NAMESPACE.XMLNS) {\n\t\treturn false;\n\t}\n\n\tvar i = visibleNamespaces.length\n\twhile (i--) {\n\t\tvar ns = visibleNamespaces[i];\n\t\t// get namespace prefix\n\t\tif (ns.prefix === prefix) {\n\t\t\treturn ns.namespace !== uri;\n\t\t}\n\t}\n\treturn true;\n}\n/**\n * Well-formed constraint: No < in Attribute Values\n * > The replacement text of any entity referred to directly or indirectly\n * > in an attribute value must not contain a <.\n * @see https://www.w3.org/TR/xml11/#CleanAttrVals\n * @see https://www.w3.org/TR/xml11/#NT-AttValue\n *\n * Literal whitespace other than space that appear in attribute values\n * are serialized as their entity references, so they will be preserved.\n * (In contrast to whitespace literals in the input which are normalized to spaces)\n * @see https://www.w3.org/TR/xml11/#AVNormalize\n * @see https://w3c.github.io/DOM-Parsing/#serializing-an-element-s-attributes\n */\nfunction addSerializedAttribute(buf, qualifiedName, value) {\n\tbuf.push(' ', qualifiedName, '=\"', value.replace(/[<>&\"\\t\\n\\r]/g, _xmlEncoder), '\"')\n}\n\nfunction serializeToString(node,buf,isHTML,nodeFilter,visibleNamespaces){\n\tif (!visibleNamespaces) {\n\t\tvisibleNamespaces = [];\n\t}\n\n\tif(nodeFilter){\n\t\tnode = nodeFilter(node);\n\t\tif(node){\n\t\t\tif(typeof node == 'string'){\n\t\t\t\tbuf.push(node);\n\t\t\t\treturn;\n\t\t\t}\n\t\t}else{\n\t\t\treturn;\n\t\t}\n\t\t//buf.sort.apply(attrs, attributeSorter);\n\t}\n\n\tswitch(node.nodeType){\n\tcase ELEMENT_NODE:\n\t\tvar attrs = node.attributes;\n\t\tvar len = attrs.length;\n\t\tvar child = node.firstChild;\n\t\tvar nodeName = node.tagName;\n\n\t\tisHTML = NAMESPACE.isHTML(node.namespaceURI) || isHTML\n\n\t\tvar prefixedNodeName = nodeName\n\t\tif (!isHTML && !node.prefix && node.namespaceURI) {\n\t\t\tvar defaultNS\n\t\t\t// lookup current default ns from `xmlns` attribute\n\t\t\tfor (var ai = 0; ai < attrs.length; ai++) {\n\t\t\t\tif (attrs.item(ai).name === 'xmlns') {\n\t\t\t\t\tdefaultNS = attrs.item(ai).value\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (!defaultNS) {\n\t\t\t\t// lookup current default ns in visibleNamespaces\n\t\t\t\tfor (var nsi = visibleNamespaces.length - 1; nsi >= 0; nsi--) {\n\t\t\t\t\tvar namespace = visibleNamespaces[nsi]\n\t\t\t\t\tif (namespace.prefix === '' && namespace.namespace === node.namespaceURI) {\n\t\t\t\t\t\tdefaultNS = namespace.namespace\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (defaultNS !== node.namespaceURI) {\n\t\t\t\tfor (var nsi = visibleNamespaces.length - 1; nsi >= 0; nsi--) {\n\t\t\t\t\tvar namespace = visibleNamespaces[nsi]\n\t\t\t\t\tif (namespace.namespace === node.namespaceURI) {\n\t\t\t\t\t\tif (namespace.prefix) {\n\t\t\t\t\t\t\tprefixedNodeName = namespace.prefix + ':' + nodeName\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tbuf.push('<', prefixedNodeName);\n\n\t\tfor(var i=0;i');\n\t\t\t//if is cdata child node\n\t\t\tif(isHTML && /^script$/i.test(nodeName)){\n\t\t\t\twhile(child){\n\t\t\t\t\tif(child.data){\n\t\t\t\t\t\tbuf.push(child.data);\n\t\t\t\t\t}else{\n\t\t\t\t\t\tserializeToString(child, buf, isHTML, nodeFilter, visibleNamespaces.slice());\n\t\t\t\t\t}\n\t\t\t\t\tchild = child.nextSibling;\n\t\t\t\t}\n\t\t\t}else\n\t\t\t{\n\t\t\t\twhile(child){\n\t\t\t\t\tserializeToString(child, buf, isHTML, nodeFilter, visibleNamespaces.slice());\n\t\t\t\t\tchild = child.nextSibling;\n\t\t\t\t}\n\t\t\t}\n\t\t\tbuf.push('');\n\t\t}else{\n\t\t\tbuf.push('/>');\n\t\t}\n\t\t// remove added visible namespaces\n\t\t//visibleNamespaces.length = startVisibleNamespaces;\n\t\treturn;\n\tcase DOCUMENT_NODE:\n\tcase DOCUMENT_FRAGMENT_NODE:\n\t\tvar child = node.firstChild;\n\t\twhile(child){\n\t\t\tserializeToString(child, buf, isHTML, nodeFilter, visibleNamespaces.slice());\n\t\t\tchild = child.nextSibling;\n\t\t}\n\t\treturn;\n\tcase ATTRIBUTE_NODE:\n\t\treturn addSerializedAttribute(buf, node.name, node.value);\n\tcase TEXT_NODE:\n\t\t/**\n\t\t * The ampersand character (&) and the left angle bracket (<) must not appear in their literal form,\n\t\t * except when used as markup delimiters, or within a comment, a processing instruction, or a CDATA section.\n\t\t * If they are needed elsewhere, they must be escaped using either numeric character references or the strings\n\t\t * `&` and `<` respectively.\n\t\t * The right angle bracket (>) may be represented using the string \" > \", and must, for compatibility,\n\t\t * be escaped using either `>` or a character reference when it appears in the string `]]>` in content,\n\t\t * when that string is not marking the end of a CDATA section.\n\t\t *\n\t\t * In the content of elements, character data is any string of characters\n\t\t * which does not contain the start-delimiter of any markup\n\t\t * and does not include the CDATA-section-close delimiter, `]]>`.\n\t\t *\n\t\t * @see https://www.w3.org/TR/xml/#NT-CharData\n\t\t * @see https://w3c.github.io/DOM-Parsing/#xml-serializing-a-text-node\n\t\t */\n\t\treturn buf.push(node.data\n\t\t\t.replace(/[<&>]/g,_xmlEncoder)\n\t\t);\n\tcase CDATA_SECTION_NODE:\n\t\treturn buf.push( '');\n\tcase COMMENT_NODE:\n\t\treturn buf.push( \"\");\n\tcase DOCUMENT_TYPE_NODE:\n\t\tvar pubid = node.publicId;\n\t\tvar sysid = node.systemId;\n\t\tbuf.push('');\n\t\t}else if(sysid && sysid!='.'){\n\t\t\tbuf.push(' SYSTEM ', sysid, '>');\n\t\t}else{\n\t\t\tvar sub = node.internalSubset;\n\t\t\tif(sub){\n\t\t\t\tbuf.push(\" [\",sub,\"]\");\n\t\t\t}\n\t\t\tbuf.push(\">\");\n\t\t}\n\t\treturn;\n\tcase PROCESSING_INSTRUCTION_NODE:\n\t\treturn buf.push( \"\");\n\tcase ENTITY_REFERENCE_NODE:\n\t\treturn buf.push( '&',node.nodeName,';');\n\t//case ENTITY_NODE:\n\t//case NOTATION_NODE:\n\tdefault:\n\t\tbuf.push('??',node.nodeName);\n\t}\n}\nfunction importNode(doc,node,deep){\n\tvar node2;\n\tswitch (node.nodeType) {\n\tcase ELEMENT_NODE:\n\t\tnode2 = node.cloneNode(false);\n\t\tnode2.ownerDocument = doc;\n\t\t//var attrs = node2.attributes;\n\t\t//var len = attrs.length;\n\t\t//for(var i=0;i',\n\tlt: '<',\n\tquot: '\"',\n});\n\n/**\n * A map of all entities that are detected in an HTML document.\n * They contain all entries from `XML_ENTITIES`.\n *\n * @see XML_ENTITIES\n * @see DOMParser.parseFromString\n * @see DOMImplementation.prototype.createHTMLDocument\n * @see https://html.spec.whatwg.org/#named-character-references WHATWG HTML(5) Spec\n * @see https://html.spec.whatwg.org/entities.json JSON\n * @see https://www.w3.org/TR/xml-entity-names/ W3C XML Entity Names\n * @see https://www.w3.org/TR/html4/sgml/entities.html W3C HTML4/SGML\n * @see https://en.wikipedia.org/wiki/List_of_XML_and_HTML_character_entity_references#Character_entity_references_in_HTML Wikipedia (HTML)\n * @see https://en.wikipedia.org/wiki/List_of_XML_and_HTML_character_entity_references#Entities_representing_special_characters_in_XHTML Wikpedia (XHTML)\n */\nexports.HTML_ENTITIES = freeze({\n\tAacute: '\\u00C1',\n\taacute: '\\u00E1',\n\tAbreve: '\\u0102',\n\tabreve: '\\u0103',\n\tac: '\\u223E',\n\tacd: '\\u223F',\n\tacE: '\\u223E\\u0333',\n\tAcirc: '\\u00C2',\n\tacirc: '\\u00E2',\n\tacute: '\\u00B4',\n\tAcy: '\\u0410',\n\tacy: '\\u0430',\n\tAElig: '\\u00C6',\n\taelig: '\\u00E6',\n\taf: '\\u2061',\n\tAfr: '\\uD835\\uDD04',\n\tafr: '\\uD835\\uDD1E',\n\tAgrave: '\\u00C0',\n\tagrave: '\\u00E0',\n\talefsym: '\\u2135',\n\taleph: '\\u2135',\n\tAlpha: '\\u0391',\n\talpha: '\\u03B1',\n\tAmacr: '\\u0100',\n\tamacr: '\\u0101',\n\tamalg: '\\u2A3F',\n\tAMP: '\\u0026',\n\tamp: '\\u0026',\n\tAnd: '\\u2A53',\n\tand: '\\u2227',\n\tandand: '\\u2A55',\n\tandd: '\\u2A5C',\n\tandslope: '\\u2A58',\n\tandv: '\\u2A5A',\n\tang: '\\u2220',\n\tange: '\\u29A4',\n\tangle: '\\u2220',\n\tangmsd: '\\u2221',\n\tangmsdaa: '\\u29A8',\n\tangmsdab: '\\u29A9',\n\tangmsdac: '\\u29AA',\n\tangmsdad: '\\u29AB',\n\tangmsdae: '\\u29AC',\n\tangmsdaf: '\\u29AD',\n\tangmsdag: '\\u29AE',\n\tangmsdah: '\\u29AF',\n\tangrt: '\\u221F',\n\tangrtvb: '\\u22BE',\n\tangrtvbd: '\\u299D',\n\tangsph: '\\u2222',\n\tangst: '\\u00C5',\n\tangzarr: '\\u237C',\n\tAogon: '\\u0104',\n\taogon: '\\u0105',\n\tAopf: '\\uD835\\uDD38',\n\taopf: '\\uD835\\uDD52',\n\tap: '\\u2248',\n\tapacir: '\\u2A6F',\n\tapE: '\\u2A70',\n\tape: '\\u224A',\n\tapid: '\\u224B',\n\tapos: '\\u0027',\n\tApplyFunction: '\\u2061',\n\tapprox: '\\u2248',\n\tapproxeq: '\\u224A',\n\tAring: '\\u00C5',\n\taring: '\\u00E5',\n\tAscr: '\\uD835\\uDC9C',\n\tascr: '\\uD835\\uDCB6',\n\tAssign: '\\u2254',\n\tast: '\\u002A',\n\tasymp: '\\u2248',\n\tasympeq: '\\u224D',\n\tAtilde: '\\u00C3',\n\tatilde: '\\u00E3',\n\tAuml: '\\u00C4',\n\tauml: '\\u00E4',\n\tawconint: '\\u2233',\n\tawint: '\\u2A11',\n\tbackcong: '\\u224C',\n\tbackepsilon: '\\u03F6',\n\tbackprime: '\\u2035',\n\tbacksim: '\\u223D',\n\tbacksimeq: '\\u22CD',\n\tBackslash: '\\u2216',\n\tBarv: '\\u2AE7',\n\tbarvee: '\\u22BD',\n\tBarwed: '\\u2306',\n\tbarwed: '\\u2305',\n\tbarwedge: '\\u2305',\n\tbbrk: '\\u23B5',\n\tbbrktbrk: '\\u23B6',\n\tbcong: '\\u224C',\n\tBcy: '\\u0411',\n\tbcy: '\\u0431',\n\tbdquo: '\\u201E',\n\tbecaus: '\\u2235',\n\tBecause: '\\u2235',\n\tbecause: '\\u2235',\n\tbemptyv: '\\u29B0',\n\tbepsi: '\\u03F6',\n\tbernou: '\\u212C',\n\tBernoullis: '\\u212C',\n\tBeta: '\\u0392',\n\tbeta: '\\u03B2',\n\tbeth: '\\u2136',\n\tbetween: '\\u226C',\n\tBfr: '\\uD835\\uDD05',\n\tbfr: '\\uD835\\uDD1F',\n\tbigcap: '\\u22C2',\n\tbigcirc: '\\u25EF',\n\tbigcup: '\\u22C3',\n\tbigodot: '\\u2A00',\n\tbigoplus: '\\u2A01',\n\tbigotimes: '\\u2A02',\n\tbigsqcup: '\\u2A06',\n\tbigstar: '\\u2605',\n\tbigtriangledown: '\\u25BD',\n\tbigtriangleup: '\\u25B3',\n\tbiguplus: '\\u2A04',\n\tbigvee: '\\u22C1',\n\tbigwedge: '\\u22C0',\n\tbkarow: '\\u290D',\n\tblacklozenge: '\\u29EB',\n\tblacksquare: '\\u25AA',\n\tblacktriangle: '\\u25B4',\n\tblacktriangledown: '\\u25BE',\n\tblacktriangleleft: '\\u25C2',\n\tblacktriangleright: '\\u25B8',\n\tblank: '\\u2423',\n\tblk12: '\\u2592',\n\tblk14: '\\u2591',\n\tblk34: '\\u2593',\n\tblock: '\\u2588',\n\tbne: '\\u003D\\u20E5',\n\tbnequiv: '\\u2261\\u20E5',\n\tbNot: '\\u2AED',\n\tbnot: '\\u2310',\n\tBopf: '\\uD835\\uDD39',\n\tbopf: '\\uD835\\uDD53',\n\tbot: '\\u22A5',\n\tbottom: '\\u22A5',\n\tbowtie: '\\u22C8',\n\tboxbox: '\\u29C9',\n\tboxDL: '\\u2557',\n\tboxDl: '\\u2556',\n\tboxdL: '\\u2555',\n\tboxdl: '\\u2510',\n\tboxDR: '\\u2554',\n\tboxDr: '\\u2553',\n\tboxdR: '\\u2552',\n\tboxdr: '\\u250C',\n\tboxH: '\\u2550',\n\tboxh: '\\u2500',\n\tboxHD: '\\u2566',\n\tboxHd: '\\u2564',\n\tboxhD: '\\u2565',\n\tboxhd: '\\u252C',\n\tboxHU: '\\u2569',\n\tboxHu: '\\u2567',\n\tboxhU: '\\u2568',\n\tboxhu: '\\u2534',\n\tboxminus: '\\u229F',\n\tboxplus: '\\u229E',\n\tboxtimes: '\\u22A0',\n\tboxUL: '\\u255D',\n\tboxUl: '\\u255C',\n\tboxuL: '\\u255B',\n\tboxul: '\\u2518',\n\tboxUR: '\\u255A',\n\tboxUr: '\\u2559',\n\tboxuR: '\\u2558',\n\tboxur: '\\u2514',\n\tboxV: '\\u2551',\n\tboxv: '\\u2502',\n\tboxVH: '\\u256C',\n\tboxVh: '\\u256B',\n\tboxvH: '\\u256A',\n\tboxvh: '\\u253C',\n\tboxVL: '\\u2563',\n\tboxVl: '\\u2562',\n\tboxvL: '\\u2561',\n\tboxvl: '\\u2524',\n\tboxVR: '\\u2560',\n\tboxVr: '\\u255F',\n\tboxvR: '\\u255E',\n\tboxvr: '\\u251C',\n\tbprime: '\\u2035',\n\tBreve: '\\u02D8',\n\tbreve: '\\u02D8',\n\tbrvbar: '\\u00A6',\n\tBscr: '\\u212C',\n\tbscr: '\\uD835\\uDCB7',\n\tbsemi: '\\u204F',\n\tbsim: '\\u223D',\n\tbsime: '\\u22CD',\n\tbsol: '\\u005C',\n\tbsolb: '\\u29C5',\n\tbsolhsub: '\\u27C8',\n\tbull: '\\u2022',\n\tbullet: '\\u2022',\n\tbump: '\\u224E',\n\tbumpE: '\\u2AAE',\n\tbumpe: '\\u224F',\n\tBumpeq: '\\u224E',\n\tbumpeq: '\\u224F',\n\tCacute: '\\u0106',\n\tcacute: '\\u0107',\n\tCap: '\\u22D2',\n\tcap: '\\u2229',\n\tcapand: '\\u2A44',\n\tcapbrcup: '\\u2A49',\n\tcapcap: '\\u2A4B',\n\tcapcup: '\\u2A47',\n\tcapdot: '\\u2A40',\n\tCapitalDifferentialD: '\\u2145',\n\tcaps: '\\u2229\\uFE00',\n\tcaret: '\\u2041',\n\tcaron: '\\u02C7',\n\tCayleys: '\\u212D',\n\tccaps: '\\u2A4D',\n\tCcaron: '\\u010C',\n\tccaron: '\\u010D',\n\tCcedil: '\\u00C7',\n\tccedil: '\\u00E7',\n\tCcirc: '\\u0108',\n\tccirc: '\\u0109',\n\tCconint: '\\u2230',\n\tccups: '\\u2A4C',\n\tccupssm: '\\u2A50',\n\tCdot: '\\u010A',\n\tcdot: '\\u010B',\n\tcedil: '\\u00B8',\n\tCedilla: '\\u00B8',\n\tcemptyv: '\\u29B2',\n\tcent: '\\u00A2',\n\tCenterDot: '\\u00B7',\n\tcenterdot: '\\u00B7',\n\tCfr: '\\u212D',\n\tcfr: '\\uD835\\uDD20',\n\tCHcy: '\\u0427',\n\tchcy: '\\u0447',\n\tcheck: '\\u2713',\n\tcheckmark: '\\u2713',\n\tChi: '\\u03A7',\n\tchi: '\\u03C7',\n\tcir: '\\u25CB',\n\tcirc: '\\u02C6',\n\tcirceq: '\\u2257',\n\tcirclearrowleft: '\\u21BA',\n\tcirclearrowright: '\\u21BB',\n\tcircledast: '\\u229B',\n\tcircledcirc: '\\u229A',\n\tcircleddash: '\\u229D',\n\tCircleDot: '\\u2299',\n\tcircledR: '\\u00AE',\n\tcircledS: '\\u24C8',\n\tCircleMinus: '\\u2296',\n\tCirclePlus: '\\u2295',\n\tCircleTimes: '\\u2297',\n\tcirE: '\\u29C3',\n\tcire: '\\u2257',\n\tcirfnint: '\\u2A10',\n\tcirmid: '\\u2AEF',\n\tcirscir: '\\u29C2',\n\tClockwiseContourIntegral: '\\u2232',\n\tCloseCurlyDoubleQuote: '\\u201D',\n\tCloseCurlyQuote: '\\u2019',\n\tclubs: '\\u2663',\n\tclubsuit: '\\u2663',\n\tColon: '\\u2237',\n\tcolon: '\\u003A',\n\tColone: '\\u2A74',\n\tcolone: '\\u2254',\n\tcoloneq: '\\u2254',\n\tcomma: '\\u002C',\n\tcommat: '\\u0040',\n\tcomp: '\\u2201',\n\tcompfn: '\\u2218',\n\tcomplement: '\\u2201',\n\tcomplexes: '\\u2102',\n\tcong: '\\u2245',\n\tcongdot: '\\u2A6D',\n\tCongruent: '\\u2261',\n\tConint: '\\u222F',\n\tconint: '\\u222E',\n\tContourIntegral: '\\u222E',\n\tCopf: '\\u2102',\n\tcopf: '\\uD835\\uDD54',\n\tcoprod: '\\u2210',\n\tCoproduct: '\\u2210',\n\tCOPY: '\\u00A9',\n\tcopy: '\\u00A9',\n\tcopysr: '\\u2117',\n\tCounterClockwiseContourIntegral: '\\u2233',\n\tcrarr: '\\u21B5',\n\tCross: '\\u2A2F',\n\tcross: '\\u2717',\n\tCscr: '\\uD835\\uDC9E',\n\tcscr: '\\uD835\\uDCB8',\n\tcsub: '\\u2ACF',\n\tcsube: '\\u2AD1',\n\tcsup: '\\u2AD0',\n\tcsupe: '\\u2AD2',\n\tctdot: '\\u22EF',\n\tcudarrl: '\\u2938',\n\tcudarrr: '\\u2935',\n\tcuepr: '\\u22DE',\n\tcuesc: '\\u22DF',\n\tcularr: '\\u21B6',\n\tcularrp: '\\u293D',\n\tCup: '\\u22D3',\n\tcup: '\\u222A',\n\tcupbrcap: '\\u2A48',\n\tCupCap: '\\u224D',\n\tcupcap: '\\u2A46',\n\tcupcup: '\\u2A4A',\n\tcupdot: '\\u228D',\n\tcupor: '\\u2A45',\n\tcups: '\\u222A\\uFE00',\n\tcurarr: '\\u21B7',\n\tcurarrm: '\\u293C',\n\tcurlyeqprec: '\\u22DE',\n\tcurlyeqsucc: '\\u22DF',\n\tcurlyvee: '\\u22CE',\n\tcurlywedge: '\\u22CF',\n\tcurren: '\\u00A4',\n\tcurvearrowleft: '\\u21B6',\n\tcurvearrowright: '\\u21B7',\n\tcuvee: '\\u22CE',\n\tcuwed: '\\u22CF',\n\tcwconint: '\\u2232',\n\tcwint: '\\u2231',\n\tcylcty: '\\u232D',\n\tDagger: '\\u2021',\n\tdagger: '\\u2020',\n\tdaleth: '\\u2138',\n\tDarr: '\\u21A1',\n\tdArr: '\\u21D3',\n\tdarr: '\\u2193',\n\tdash: '\\u2010',\n\tDashv: '\\u2AE4',\n\tdashv: '\\u22A3',\n\tdbkarow: '\\u290F',\n\tdblac: '\\u02DD',\n\tDcaron: '\\u010E',\n\tdcaron: '\\u010F',\n\tDcy: '\\u0414',\n\tdcy: '\\u0434',\n\tDD: '\\u2145',\n\tdd: '\\u2146',\n\tddagger: '\\u2021',\n\tddarr: '\\u21CA',\n\tDDotrahd: '\\u2911',\n\tddotseq: '\\u2A77',\n\tdeg: '\\u00B0',\n\tDel: '\\u2207',\n\tDelta: '\\u0394',\n\tdelta: '\\u03B4',\n\tdemptyv: '\\u29B1',\n\tdfisht: '\\u297F',\n\tDfr: '\\uD835\\uDD07',\n\tdfr: '\\uD835\\uDD21',\n\tdHar: '\\u2965',\n\tdharl: '\\u21C3',\n\tdharr: '\\u21C2',\n\tDiacriticalAcute: '\\u00B4',\n\tDiacriticalDot: '\\u02D9',\n\tDiacriticalDoubleAcute: '\\u02DD',\n\tDiacriticalGrave: '\\u0060',\n\tDiacriticalTilde: '\\u02DC',\n\tdiam: '\\u22C4',\n\tDiamond: '\\u22C4',\n\tdiamond: '\\u22C4',\n\tdiamondsuit: '\\u2666',\n\tdiams: '\\u2666',\n\tdie: '\\u00A8',\n\tDifferentialD: '\\u2146',\n\tdigamma: '\\u03DD',\n\tdisin: '\\u22F2',\n\tdiv: '\\u00F7',\n\tdivide: '\\u00F7',\n\tdivideontimes: '\\u22C7',\n\tdivonx: '\\u22C7',\n\tDJcy: '\\u0402',\n\tdjcy: '\\u0452',\n\tdlcorn: '\\u231E',\n\tdlcrop: '\\u230D',\n\tdollar: '\\u0024',\n\tDopf: '\\uD835\\uDD3B',\n\tdopf: '\\uD835\\uDD55',\n\tDot: '\\u00A8',\n\tdot: '\\u02D9',\n\tDotDot: '\\u20DC',\n\tdoteq: '\\u2250',\n\tdoteqdot: '\\u2251',\n\tDotEqual: '\\u2250',\n\tdotminus: '\\u2238',\n\tdotplus: '\\u2214',\n\tdotsquare: '\\u22A1',\n\tdoublebarwedge: '\\u2306',\n\tDoubleContourIntegral: '\\u222F',\n\tDoubleDot: '\\u00A8',\n\tDoubleDownArrow: '\\u21D3',\n\tDoubleLeftArrow: '\\u21D0',\n\tDoubleLeftRightArrow: '\\u21D4',\n\tDoubleLeftTee: '\\u2AE4',\n\tDoubleLongLeftArrow: '\\u27F8',\n\tDoubleLongLeftRightArrow: '\\u27FA',\n\tDoubleLongRightArrow: '\\u27F9',\n\tDoubleRightArrow: '\\u21D2',\n\tDoubleRightTee: '\\u22A8',\n\tDoubleUpArrow: '\\u21D1',\n\tDoubleUpDownArrow: '\\u21D5',\n\tDoubleVerticalBar: '\\u2225',\n\tDownArrow: '\\u2193',\n\tDownarrow: '\\u21D3',\n\tdownarrow: '\\u2193',\n\tDownArrowBar: '\\u2913',\n\tDownArrowUpArrow: '\\u21F5',\n\tDownBreve: '\\u0311',\n\tdowndownarrows: '\\u21CA',\n\tdownharpoonleft: '\\u21C3',\n\tdownharpoonright: '\\u21C2',\n\tDownLeftRightVector: '\\u2950',\n\tDownLeftTeeVector: '\\u295E',\n\tDownLeftVector: '\\u21BD',\n\tDownLeftVectorBar: '\\u2956',\n\tDownRightTeeVector: '\\u295F',\n\tDownRightVector: '\\u21C1',\n\tDownRightVectorBar: '\\u2957',\n\tDownTee: '\\u22A4',\n\tDownTeeArrow: '\\u21A7',\n\tdrbkarow: '\\u2910',\n\tdrcorn: '\\u231F',\n\tdrcrop: '\\u230C',\n\tDscr: '\\uD835\\uDC9F',\n\tdscr: '\\uD835\\uDCB9',\n\tDScy: '\\u0405',\n\tdscy: '\\u0455',\n\tdsol: '\\u29F6',\n\tDstrok: '\\u0110',\n\tdstrok: '\\u0111',\n\tdtdot: '\\u22F1',\n\tdtri: '\\u25BF',\n\tdtrif: '\\u25BE',\n\tduarr: '\\u21F5',\n\tduhar: '\\u296F',\n\tdwangle: '\\u29A6',\n\tDZcy: '\\u040F',\n\tdzcy: '\\u045F',\n\tdzigrarr: '\\u27FF',\n\tEacute: '\\u00C9',\n\teacute: '\\u00E9',\n\teaster: '\\u2A6E',\n\tEcaron: '\\u011A',\n\tecaron: '\\u011B',\n\tecir: '\\u2256',\n\tEcirc: '\\u00CA',\n\tecirc: '\\u00EA',\n\tecolon: '\\u2255',\n\tEcy: '\\u042D',\n\tecy: '\\u044D',\n\teDDot: '\\u2A77',\n\tEdot: '\\u0116',\n\teDot: '\\u2251',\n\tedot: '\\u0117',\n\tee: '\\u2147',\n\tefDot: '\\u2252',\n\tEfr: '\\uD835\\uDD08',\n\tefr: '\\uD835\\uDD22',\n\teg: '\\u2A9A',\n\tEgrave: '\\u00C8',\n\tegrave: '\\u00E8',\n\tegs: '\\u2A96',\n\tegsdot: '\\u2A98',\n\tel: '\\u2A99',\n\tElement: '\\u2208',\n\telinters: '\\u23E7',\n\tell: '\\u2113',\n\tels: '\\u2A95',\n\telsdot: '\\u2A97',\n\tEmacr: '\\u0112',\n\temacr: '\\u0113',\n\tempty: '\\u2205',\n\temptyset: '\\u2205',\n\tEmptySmallSquare: '\\u25FB',\n\temptyv: '\\u2205',\n\tEmptyVerySmallSquare: '\\u25AB',\n\temsp: '\\u2003',\n\temsp13: '\\u2004',\n\temsp14: '\\u2005',\n\tENG: '\\u014A',\n\teng: '\\u014B',\n\tensp: '\\u2002',\n\tEogon: '\\u0118',\n\teogon: '\\u0119',\n\tEopf: '\\uD835\\uDD3C',\n\teopf: '\\uD835\\uDD56',\n\tepar: '\\u22D5',\n\teparsl: '\\u29E3',\n\teplus: '\\u2A71',\n\tepsi: '\\u03B5',\n\tEpsilon: '\\u0395',\n\tepsilon: '\\u03B5',\n\tepsiv: '\\u03F5',\n\teqcirc: '\\u2256',\n\teqcolon: '\\u2255',\n\teqsim: '\\u2242',\n\teqslantgtr: '\\u2A96',\n\teqslantless: '\\u2A95',\n\tEqual: '\\u2A75',\n\tequals: '\\u003D',\n\tEqualTilde: '\\u2242',\n\tequest: '\\u225F',\n\tEquilibrium: '\\u21CC',\n\tequiv: '\\u2261',\n\tequivDD: '\\u2A78',\n\teqvparsl: '\\u29E5',\n\terarr: '\\u2971',\n\terDot: '\\u2253',\n\tEscr: '\\u2130',\n\tescr: '\\u212F',\n\tesdot: '\\u2250',\n\tEsim: '\\u2A73',\n\tesim: '\\u2242',\n\tEta: '\\u0397',\n\teta: '\\u03B7',\n\tETH: '\\u00D0',\n\teth: '\\u00F0',\n\tEuml: '\\u00CB',\n\teuml: '\\u00EB',\n\teuro: '\\u20AC',\n\texcl: '\\u0021',\n\texist: '\\u2203',\n\tExists: '\\u2203',\n\texpectation: '\\u2130',\n\tExponentialE: '\\u2147',\n\texponentiale: '\\u2147',\n\tfallingdotseq: '\\u2252',\n\tFcy: '\\u0424',\n\tfcy: '\\u0444',\n\tfemale: '\\u2640',\n\tffilig: '\\uFB03',\n\tfflig: '\\uFB00',\n\tffllig: '\\uFB04',\n\tFfr: '\\uD835\\uDD09',\n\tffr: '\\uD835\\uDD23',\n\tfilig: '\\uFB01',\n\tFilledSmallSquare: '\\u25FC',\n\tFilledVerySmallSquare: '\\u25AA',\n\tfjlig: '\\u0066\\u006A',\n\tflat: '\\u266D',\n\tfllig: '\\uFB02',\n\tfltns: '\\u25B1',\n\tfnof: '\\u0192',\n\tFopf: '\\uD835\\uDD3D',\n\tfopf: '\\uD835\\uDD57',\n\tForAll: '\\u2200',\n\tforall: '\\u2200',\n\tfork: '\\u22D4',\n\tforkv: '\\u2AD9',\n\tFouriertrf: '\\u2131',\n\tfpartint: '\\u2A0D',\n\tfrac12: '\\u00BD',\n\tfrac13: '\\u2153',\n\tfrac14: '\\u00BC',\n\tfrac15: '\\u2155',\n\tfrac16: '\\u2159',\n\tfrac18: '\\u215B',\n\tfrac23: '\\u2154',\n\tfrac25: '\\u2156',\n\tfrac34: '\\u00BE',\n\tfrac35: '\\u2157',\n\tfrac38: '\\u215C',\n\tfrac45: '\\u2158',\n\tfrac56: '\\u215A',\n\tfrac58: '\\u215D',\n\tfrac78: '\\u215E',\n\tfrasl: '\\u2044',\n\tfrown: '\\u2322',\n\tFscr: '\\u2131',\n\tfscr: '\\uD835\\uDCBB',\n\tgacute: '\\u01F5',\n\tGamma: '\\u0393',\n\tgamma: '\\u03B3',\n\tGammad: '\\u03DC',\n\tgammad: '\\u03DD',\n\tgap: '\\u2A86',\n\tGbreve: '\\u011E',\n\tgbreve: '\\u011F',\n\tGcedil: '\\u0122',\n\tGcirc: '\\u011C',\n\tgcirc: '\\u011D',\n\tGcy: '\\u0413',\n\tgcy: '\\u0433',\n\tGdot: '\\u0120',\n\tgdot: '\\u0121',\n\tgE: '\\u2267',\n\tge: '\\u2265',\n\tgEl: '\\u2A8C',\n\tgel: '\\u22DB',\n\tgeq: '\\u2265',\n\tgeqq: '\\u2267',\n\tgeqslant: '\\u2A7E',\n\tges: '\\u2A7E',\n\tgescc: '\\u2AA9',\n\tgesdot: '\\u2A80',\n\tgesdoto: '\\u2A82',\n\tgesdotol: '\\u2A84',\n\tgesl: '\\u22DB\\uFE00',\n\tgesles: '\\u2A94',\n\tGfr: '\\uD835\\uDD0A',\n\tgfr: '\\uD835\\uDD24',\n\tGg: '\\u22D9',\n\tgg: '\\u226B',\n\tggg: '\\u22D9',\n\tgimel: '\\u2137',\n\tGJcy: '\\u0403',\n\tgjcy: '\\u0453',\n\tgl: '\\u2277',\n\tgla: '\\u2AA5',\n\tglE: '\\u2A92',\n\tglj: '\\u2AA4',\n\tgnap: '\\u2A8A',\n\tgnapprox: '\\u2A8A',\n\tgnE: '\\u2269',\n\tgne: '\\u2A88',\n\tgneq: '\\u2A88',\n\tgneqq: '\\u2269',\n\tgnsim: '\\u22E7',\n\tGopf: '\\uD835\\uDD3E',\n\tgopf: '\\uD835\\uDD58',\n\tgrave: '\\u0060',\n\tGreaterEqual: '\\u2265',\n\tGreaterEqualLess: '\\u22DB',\n\tGreaterFullEqual: '\\u2267',\n\tGreaterGreater: '\\u2AA2',\n\tGreaterLess: '\\u2277',\n\tGreaterSlantEqual: '\\u2A7E',\n\tGreaterTilde: '\\u2273',\n\tGscr: '\\uD835\\uDCA2',\n\tgscr: '\\u210A',\n\tgsim: '\\u2273',\n\tgsime: '\\u2A8E',\n\tgsiml: '\\u2A90',\n\tGt: '\\u226B',\n\tGT: '\\u003E',\n\tgt: '\\u003E',\n\tgtcc: '\\u2AA7',\n\tgtcir: '\\u2A7A',\n\tgtdot: '\\u22D7',\n\tgtlPar: '\\u2995',\n\tgtquest: '\\u2A7C',\n\tgtrapprox: '\\u2A86',\n\tgtrarr: '\\u2978',\n\tgtrdot: '\\u22D7',\n\tgtreqless: '\\u22DB',\n\tgtreqqless: '\\u2A8C',\n\tgtrless: '\\u2277',\n\tgtrsim: '\\u2273',\n\tgvertneqq: '\\u2269\\uFE00',\n\tgvnE: '\\u2269\\uFE00',\n\tHacek: '\\u02C7',\n\thairsp: '\\u200A',\n\thalf: '\\u00BD',\n\thamilt: '\\u210B',\n\tHARDcy: '\\u042A',\n\thardcy: '\\u044A',\n\thArr: '\\u21D4',\n\tharr: '\\u2194',\n\tharrcir: '\\u2948',\n\tharrw: '\\u21AD',\n\tHat: '\\u005E',\n\thbar: '\\u210F',\n\tHcirc: '\\u0124',\n\thcirc: '\\u0125',\n\thearts: '\\u2665',\n\theartsuit: '\\u2665',\n\thellip: '\\u2026',\n\thercon: '\\u22B9',\n\tHfr: '\\u210C',\n\thfr: '\\uD835\\uDD25',\n\tHilbertSpace: '\\u210B',\n\thksearow: '\\u2925',\n\thkswarow: '\\u2926',\n\thoarr: '\\u21FF',\n\thomtht: '\\u223B',\n\thookleftarrow: '\\u21A9',\n\thookrightarrow: '\\u21AA',\n\tHopf: '\\u210D',\n\thopf: '\\uD835\\uDD59',\n\thorbar: '\\u2015',\n\tHorizontalLine: '\\u2500',\n\tHscr: '\\u210B',\n\thscr: '\\uD835\\uDCBD',\n\thslash: '\\u210F',\n\tHstrok: '\\u0126',\n\thstrok: '\\u0127',\n\tHumpDownHump: '\\u224E',\n\tHumpEqual: '\\u224F',\n\thybull: '\\u2043',\n\thyphen: '\\u2010',\n\tIacute: '\\u00CD',\n\tiacute: '\\u00ED',\n\tic: '\\u2063',\n\tIcirc: '\\u00CE',\n\ticirc: '\\u00EE',\n\tIcy: '\\u0418',\n\ticy: '\\u0438',\n\tIdot: '\\u0130',\n\tIEcy: '\\u0415',\n\tiecy: '\\u0435',\n\tiexcl: '\\u00A1',\n\tiff: '\\u21D4',\n\tIfr: '\\u2111',\n\tifr: '\\uD835\\uDD26',\n\tIgrave: '\\u00CC',\n\tigrave: '\\u00EC',\n\tii: '\\u2148',\n\tiiiint: '\\u2A0C',\n\tiiint: '\\u222D',\n\tiinfin: '\\u29DC',\n\tiiota: '\\u2129',\n\tIJlig: '\\u0132',\n\tijlig: '\\u0133',\n\tIm: '\\u2111',\n\tImacr: '\\u012A',\n\timacr: '\\u012B',\n\timage: '\\u2111',\n\tImaginaryI: '\\u2148',\n\timagline: '\\u2110',\n\timagpart: '\\u2111',\n\timath: '\\u0131',\n\timof: '\\u22B7',\n\timped: '\\u01B5',\n\tImplies: '\\u21D2',\n\tin: '\\u2208',\n\tincare: '\\u2105',\n\tinfin: '\\u221E',\n\tinfintie: '\\u29DD',\n\tinodot: '\\u0131',\n\tInt: '\\u222C',\n\tint: '\\u222B',\n\tintcal: '\\u22BA',\n\tintegers: '\\u2124',\n\tIntegral: '\\u222B',\n\tintercal: '\\u22BA',\n\tIntersection: '\\u22C2',\n\tintlarhk: '\\u2A17',\n\tintprod: '\\u2A3C',\n\tInvisibleComma: '\\u2063',\n\tInvisibleTimes: '\\u2062',\n\tIOcy: '\\u0401',\n\tiocy: '\\u0451',\n\tIogon: '\\u012E',\n\tiogon: '\\u012F',\n\tIopf: '\\uD835\\uDD40',\n\tiopf: '\\uD835\\uDD5A',\n\tIota: '\\u0399',\n\tiota: '\\u03B9',\n\tiprod: '\\u2A3C',\n\tiquest: '\\u00BF',\n\tIscr: '\\u2110',\n\tiscr: '\\uD835\\uDCBE',\n\tisin: '\\u2208',\n\tisindot: '\\u22F5',\n\tisinE: '\\u22F9',\n\tisins: '\\u22F4',\n\tisinsv: '\\u22F3',\n\tisinv: '\\u2208',\n\tit: '\\u2062',\n\tItilde: '\\u0128',\n\titilde: '\\u0129',\n\tIukcy: '\\u0406',\n\tiukcy: '\\u0456',\n\tIuml: '\\u00CF',\n\tiuml: '\\u00EF',\n\tJcirc: '\\u0134',\n\tjcirc: '\\u0135',\n\tJcy: '\\u0419',\n\tjcy: '\\u0439',\n\tJfr: '\\uD835\\uDD0D',\n\tjfr: '\\uD835\\uDD27',\n\tjmath: '\\u0237',\n\tJopf: '\\uD835\\uDD41',\n\tjopf: '\\uD835\\uDD5B',\n\tJscr: '\\uD835\\uDCA5',\n\tjscr: '\\uD835\\uDCBF',\n\tJsercy: '\\u0408',\n\tjsercy: '\\u0458',\n\tJukcy: '\\u0404',\n\tjukcy: '\\u0454',\n\tKappa: '\\u039A',\n\tkappa: '\\u03BA',\n\tkappav: '\\u03F0',\n\tKcedil: '\\u0136',\n\tkcedil: '\\u0137',\n\tKcy: '\\u041A',\n\tkcy: '\\u043A',\n\tKfr: '\\uD835\\uDD0E',\n\tkfr: '\\uD835\\uDD28',\n\tkgreen: '\\u0138',\n\tKHcy: '\\u0425',\n\tkhcy: '\\u0445',\n\tKJcy: '\\u040C',\n\tkjcy: '\\u045C',\n\tKopf: '\\uD835\\uDD42',\n\tkopf: '\\uD835\\uDD5C',\n\tKscr: '\\uD835\\uDCA6',\n\tkscr: '\\uD835\\uDCC0',\n\tlAarr: '\\u21DA',\n\tLacute: '\\u0139',\n\tlacute: '\\u013A',\n\tlaemptyv: '\\u29B4',\n\tlagran: '\\u2112',\n\tLambda: '\\u039B',\n\tlambda: '\\u03BB',\n\tLang: '\\u27EA',\n\tlang: '\\u27E8',\n\tlangd: '\\u2991',\n\tlangle: '\\u27E8',\n\tlap: '\\u2A85',\n\tLaplacetrf: '\\u2112',\n\tlaquo: '\\u00AB',\n\tLarr: '\\u219E',\n\tlArr: '\\u21D0',\n\tlarr: '\\u2190',\n\tlarrb: '\\u21E4',\n\tlarrbfs: '\\u291F',\n\tlarrfs: '\\u291D',\n\tlarrhk: '\\u21A9',\n\tlarrlp: '\\u21AB',\n\tlarrpl: '\\u2939',\n\tlarrsim: '\\u2973',\n\tlarrtl: '\\u21A2',\n\tlat: '\\u2AAB',\n\tlAtail: '\\u291B',\n\tlatail: '\\u2919',\n\tlate: '\\u2AAD',\n\tlates: '\\u2AAD\\uFE00',\n\tlBarr: '\\u290E',\n\tlbarr: '\\u290C',\n\tlbbrk: '\\u2772',\n\tlbrace: '\\u007B',\n\tlbrack: '\\u005B',\n\tlbrke: '\\u298B',\n\tlbrksld: '\\u298F',\n\tlbrkslu: '\\u298D',\n\tLcaron: '\\u013D',\n\tlcaron: '\\u013E',\n\tLcedil: '\\u013B',\n\tlcedil: '\\u013C',\n\tlceil: '\\u2308',\n\tlcub: '\\u007B',\n\tLcy: '\\u041B',\n\tlcy: '\\u043B',\n\tldca: '\\u2936',\n\tldquo: '\\u201C',\n\tldquor: '\\u201E',\n\tldrdhar: '\\u2967',\n\tldrushar: '\\u294B',\n\tldsh: '\\u21B2',\n\tlE: '\\u2266',\n\tle: '\\u2264',\n\tLeftAngleBracket: '\\u27E8',\n\tLeftArrow: '\\u2190',\n\tLeftarrow: '\\u21D0',\n\tleftarrow: '\\u2190',\n\tLeftArrowBar: '\\u21E4',\n\tLeftArrowRightArrow: '\\u21C6',\n\tleftarrowtail: '\\u21A2',\n\tLeftCeiling: '\\u2308',\n\tLeftDoubleBracket: '\\u27E6',\n\tLeftDownTeeVector: '\\u2961',\n\tLeftDownVector: '\\u21C3',\n\tLeftDownVectorBar: '\\u2959',\n\tLeftFloor: '\\u230A',\n\tleftharpoondown: '\\u21BD',\n\tleftharpoonup: '\\u21BC',\n\tleftleftarrows: '\\u21C7',\n\tLeftRightArrow: '\\u2194',\n\tLeftrightarrow: '\\u21D4',\n\tleftrightarrow: '\\u2194',\n\tleftrightarrows: '\\u21C6',\n\tleftrightharpoons: '\\u21CB',\n\tleftrightsquigarrow: '\\u21AD',\n\tLeftRightVector: '\\u294E',\n\tLeftTee: '\\u22A3',\n\tLeftTeeArrow: '\\u21A4',\n\tLeftTeeVector: '\\u295A',\n\tleftthreetimes: '\\u22CB',\n\tLeftTriangle: '\\u22B2',\n\tLeftTriangleBar: '\\u29CF',\n\tLeftTriangleEqual: '\\u22B4',\n\tLeftUpDownVector: '\\u2951',\n\tLeftUpTeeVector: '\\u2960',\n\tLeftUpVector: '\\u21BF',\n\tLeftUpVectorBar: '\\u2958',\n\tLeftVector: '\\u21BC',\n\tLeftVectorBar: '\\u2952',\n\tlEg: '\\u2A8B',\n\tleg: '\\u22DA',\n\tleq: '\\u2264',\n\tleqq: '\\u2266',\n\tleqslant: '\\u2A7D',\n\tles: '\\u2A7D',\n\tlescc: '\\u2AA8',\n\tlesdot: '\\u2A7F',\n\tlesdoto: '\\u2A81',\n\tlesdotor: '\\u2A83',\n\tlesg: '\\u22DA\\uFE00',\n\tlesges: '\\u2A93',\n\tlessapprox: '\\u2A85',\n\tlessdot: '\\u22D6',\n\tlesseqgtr: '\\u22DA',\n\tlesseqqgtr: '\\u2A8B',\n\tLessEqualGreater: '\\u22DA',\n\tLessFullEqual: '\\u2266',\n\tLessGreater: '\\u2276',\n\tlessgtr: '\\u2276',\n\tLessLess: '\\u2AA1',\n\tlesssim: '\\u2272',\n\tLessSlantEqual: '\\u2A7D',\n\tLessTilde: '\\u2272',\n\tlfisht: '\\u297C',\n\tlfloor: '\\u230A',\n\tLfr: '\\uD835\\uDD0F',\n\tlfr: '\\uD835\\uDD29',\n\tlg: '\\u2276',\n\tlgE: '\\u2A91',\n\tlHar: '\\u2962',\n\tlhard: '\\u21BD',\n\tlharu: '\\u21BC',\n\tlharul: '\\u296A',\n\tlhblk: '\\u2584',\n\tLJcy: '\\u0409',\n\tljcy: '\\u0459',\n\tLl: '\\u22D8',\n\tll: '\\u226A',\n\tllarr: '\\u21C7',\n\tllcorner: '\\u231E',\n\tLleftarrow: '\\u21DA',\n\tllhard: '\\u296B',\n\tlltri: '\\u25FA',\n\tLmidot: '\\u013F',\n\tlmidot: '\\u0140',\n\tlmoust: '\\u23B0',\n\tlmoustache: '\\u23B0',\n\tlnap: '\\u2A89',\n\tlnapprox: '\\u2A89',\n\tlnE: '\\u2268',\n\tlne: '\\u2A87',\n\tlneq: '\\u2A87',\n\tlneqq: '\\u2268',\n\tlnsim: '\\u22E6',\n\tloang: '\\u27EC',\n\tloarr: '\\u21FD',\n\tlobrk: '\\u27E6',\n\tLongLeftArrow: '\\u27F5',\n\tLongleftarrow: '\\u27F8',\n\tlongleftarrow: '\\u27F5',\n\tLongLeftRightArrow: '\\u27F7',\n\tLongleftrightarrow: '\\u27FA',\n\tlongleftrightarrow: '\\u27F7',\n\tlongmapsto: '\\u27FC',\n\tLongRightArrow: '\\u27F6',\n\tLongrightarrow: '\\u27F9',\n\tlongrightarrow: '\\u27F6',\n\tlooparrowleft: '\\u21AB',\n\tlooparrowright: '\\u21AC',\n\tlopar: '\\u2985',\n\tLopf: '\\uD835\\uDD43',\n\tlopf: '\\uD835\\uDD5D',\n\tloplus: '\\u2A2D',\n\tlotimes: '\\u2A34',\n\tlowast: '\\u2217',\n\tlowbar: '\\u005F',\n\tLowerLeftArrow: '\\u2199',\n\tLowerRightArrow: '\\u2198',\n\tloz: '\\u25CA',\n\tlozenge: '\\u25CA',\n\tlozf: '\\u29EB',\n\tlpar: '\\u0028',\n\tlparlt: '\\u2993',\n\tlrarr: '\\u21C6',\n\tlrcorner: '\\u231F',\n\tlrhar: '\\u21CB',\n\tlrhard: '\\u296D',\n\tlrm: '\\u200E',\n\tlrtri: '\\u22BF',\n\tlsaquo: '\\u2039',\n\tLscr: '\\u2112',\n\tlscr: '\\uD835\\uDCC1',\n\tLsh: '\\u21B0',\n\tlsh: '\\u21B0',\n\tlsim: '\\u2272',\n\tlsime: '\\u2A8D',\n\tlsimg: '\\u2A8F',\n\tlsqb: '\\u005B',\n\tlsquo: '\\u2018',\n\tlsquor: '\\u201A',\n\tLstrok: '\\u0141',\n\tlstrok: '\\u0142',\n\tLt: '\\u226A',\n\tLT: '\\u003C',\n\tlt: '\\u003C',\n\tltcc: '\\u2AA6',\n\tltcir: '\\u2A79',\n\tltdot: '\\u22D6',\n\tlthree: '\\u22CB',\n\tltimes: '\\u22C9',\n\tltlarr: '\\u2976',\n\tltquest: '\\u2A7B',\n\tltri: '\\u25C3',\n\tltrie: '\\u22B4',\n\tltrif: '\\u25C2',\n\tltrPar: '\\u2996',\n\tlurdshar: '\\u294A',\n\tluruhar: '\\u2966',\n\tlvertneqq: '\\u2268\\uFE00',\n\tlvnE: '\\u2268\\uFE00',\n\tmacr: '\\u00AF',\n\tmale: '\\u2642',\n\tmalt: '\\u2720',\n\tmaltese: '\\u2720',\n\tMap: '\\u2905',\n\tmap: '\\u21A6',\n\tmapsto: '\\u21A6',\n\tmapstodown: '\\u21A7',\n\tmapstoleft: '\\u21A4',\n\tmapstoup: '\\u21A5',\n\tmarker: '\\u25AE',\n\tmcomma: '\\u2A29',\n\tMcy: '\\u041C',\n\tmcy: '\\u043C',\n\tmdash: '\\u2014',\n\tmDDot: '\\u223A',\n\tmeasuredangle: '\\u2221',\n\tMediumSpace: '\\u205F',\n\tMellintrf: '\\u2133',\n\tMfr: '\\uD835\\uDD10',\n\tmfr: '\\uD835\\uDD2A',\n\tmho: '\\u2127',\n\tmicro: '\\u00B5',\n\tmid: '\\u2223',\n\tmidast: '\\u002A',\n\tmidcir: '\\u2AF0',\n\tmiddot: '\\u00B7',\n\tminus: '\\u2212',\n\tminusb: '\\u229F',\n\tminusd: '\\u2238',\n\tminusdu: '\\u2A2A',\n\tMinusPlus: '\\u2213',\n\tmlcp: '\\u2ADB',\n\tmldr: '\\u2026',\n\tmnplus: '\\u2213',\n\tmodels: '\\u22A7',\n\tMopf: '\\uD835\\uDD44',\n\tmopf: '\\uD835\\uDD5E',\n\tmp: '\\u2213',\n\tMscr: '\\u2133',\n\tmscr: '\\uD835\\uDCC2',\n\tmstpos: '\\u223E',\n\tMu: '\\u039C',\n\tmu: '\\u03BC',\n\tmultimap: '\\u22B8',\n\tmumap: '\\u22B8',\n\tnabla: '\\u2207',\n\tNacute: '\\u0143',\n\tnacute: '\\u0144',\n\tnang: '\\u2220\\u20D2',\n\tnap: '\\u2249',\n\tnapE: '\\u2A70\\u0338',\n\tnapid: '\\u224B\\u0338',\n\tnapos: '\\u0149',\n\tnapprox: '\\u2249',\n\tnatur: '\\u266E',\n\tnatural: '\\u266E',\n\tnaturals: '\\u2115',\n\tnbsp: '\\u00A0',\n\tnbump: '\\u224E\\u0338',\n\tnbumpe: '\\u224F\\u0338',\n\tncap: '\\u2A43',\n\tNcaron: '\\u0147',\n\tncaron: '\\u0148',\n\tNcedil: '\\u0145',\n\tncedil: '\\u0146',\n\tncong: '\\u2247',\n\tncongdot: '\\u2A6D\\u0338',\n\tncup: '\\u2A42',\n\tNcy: '\\u041D',\n\tncy: '\\u043D',\n\tndash: '\\u2013',\n\tne: '\\u2260',\n\tnearhk: '\\u2924',\n\tneArr: '\\u21D7',\n\tnearr: '\\u2197',\n\tnearrow: '\\u2197',\n\tnedot: '\\u2250\\u0338',\n\tNegativeMediumSpace: '\\u200B',\n\tNegativeThickSpace: '\\u200B',\n\tNegativeThinSpace: '\\u200B',\n\tNegativeVeryThinSpace: '\\u200B',\n\tnequiv: '\\u2262',\n\tnesear: '\\u2928',\n\tnesim: '\\u2242\\u0338',\n\tNestedGreaterGreater: '\\u226B',\n\tNestedLessLess: '\\u226A',\n\tNewLine: '\\u000A',\n\tnexist: '\\u2204',\n\tnexists: '\\u2204',\n\tNfr: '\\uD835\\uDD11',\n\tnfr: '\\uD835\\uDD2B',\n\tngE: '\\u2267\\u0338',\n\tnge: '\\u2271',\n\tngeq: '\\u2271',\n\tngeqq: '\\u2267\\u0338',\n\tngeqslant: '\\u2A7E\\u0338',\n\tnges: '\\u2A7E\\u0338',\n\tnGg: '\\u22D9\\u0338',\n\tngsim: '\\u2275',\n\tnGt: '\\u226B\\u20D2',\n\tngt: '\\u226F',\n\tngtr: '\\u226F',\n\tnGtv: '\\u226B\\u0338',\n\tnhArr: '\\u21CE',\n\tnharr: '\\u21AE',\n\tnhpar: '\\u2AF2',\n\tni: '\\u220B',\n\tnis: '\\u22FC',\n\tnisd: '\\u22FA',\n\tniv: '\\u220B',\n\tNJcy: '\\u040A',\n\tnjcy: '\\u045A',\n\tnlArr: '\\u21CD',\n\tnlarr: '\\u219A',\n\tnldr: '\\u2025',\n\tnlE: '\\u2266\\u0338',\n\tnle: '\\u2270',\n\tnLeftarrow: '\\u21CD',\n\tnleftarrow: '\\u219A',\n\tnLeftrightarrow: '\\u21CE',\n\tnleftrightarrow: '\\u21AE',\n\tnleq: '\\u2270',\n\tnleqq: '\\u2266\\u0338',\n\tnleqslant: '\\u2A7D\\u0338',\n\tnles: '\\u2A7D\\u0338',\n\tnless: '\\u226E',\n\tnLl: '\\u22D8\\u0338',\n\tnlsim: '\\u2274',\n\tnLt: '\\u226A\\u20D2',\n\tnlt: '\\u226E',\n\tnltri: '\\u22EA',\n\tnltrie: '\\u22EC',\n\tnLtv: '\\u226A\\u0338',\n\tnmid: '\\u2224',\n\tNoBreak: '\\u2060',\n\tNonBreakingSpace: '\\u00A0',\n\tNopf: '\\u2115',\n\tnopf: '\\uD835\\uDD5F',\n\tNot: '\\u2AEC',\n\tnot: '\\u00AC',\n\tNotCongruent: '\\u2262',\n\tNotCupCap: '\\u226D',\n\tNotDoubleVerticalBar: '\\u2226',\n\tNotElement: '\\u2209',\n\tNotEqual: '\\u2260',\n\tNotEqualTilde: '\\u2242\\u0338',\n\tNotExists: '\\u2204',\n\tNotGreater: '\\u226F',\n\tNotGreaterEqual: '\\u2271',\n\tNotGreaterFullEqual: '\\u2267\\u0338',\n\tNotGreaterGreater: '\\u226B\\u0338',\n\tNotGreaterLess: '\\u2279',\n\tNotGreaterSlantEqual: '\\u2A7E\\u0338',\n\tNotGreaterTilde: '\\u2275',\n\tNotHumpDownHump: '\\u224E\\u0338',\n\tNotHumpEqual: '\\u224F\\u0338',\n\tnotin: '\\u2209',\n\tnotindot: '\\u22F5\\u0338',\n\tnotinE: '\\u22F9\\u0338',\n\tnotinva: '\\u2209',\n\tnotinvb: '\\u22F7',\n\tnotinvc: '\\u22F6',\n\tNotLeftTriangle: '\\u22EA',\n\tNotLeftTriangleBar: '\\u29CF\\u0338',\n\tNotLeftTriangleEqual: '\\u22EC',\n\tNotLess: '\\u226E',\n\tNotLessEqual: '\\u2270',\n\tNotLessGreater: '\\u2278',\n\tNotLessLess: '\\u226A\\u0338',\n\tNotLessSlantEqual: '\\u2A7D\\u0338',\n\tNotLessTilde: '\\u2274',\n\tNotNestedGreaterGreater: '\\u2AA2\\u0338',\n\tNotNestedLessLess: '\\u2AA1\\u0338',\n\tnotni: '\\u220C',\n\tnotniva: '\\u220C',\n\tnotnivb: '\\u22FE',\n\tnotnivc: '\\u22FD',\n\tNotPrecedes: '\\u2280',\n\tNotPrecedesEqual: '\\u2AAF\\u0338',\n\tNotPrecedesSlantEqual: '\\u22E0',\n\tNotReverseElement: '\\u220C',\n\tNotRightTriangle: '\\u22EB',\n\tNotRightTriangleBar: '\\u29D0\\u0338',\n\tNotRightTriangleEqual: '\\u22ED',\n\tNotSquareSubset: '\\u228F\\u0338',\n\tNotSquareSubsetEqual: '\\u22E2',\n\tNotSquareSuperset: '\\u2290\\u0338',\n\tNotSquareSupersetEqual: '\\u22E3',\n\tNotSubset: '\\u2282\\u20D2',\n\tNotSubsetEqual: '\\u2288',\n\tNotSucceeds: '\\u2281',\n\tNotSucceedsEqual: '\\u2AB0\\u0338',\n\tNotSucceedsSlantEqual: '\\u22E1',\n\tNotSucceedsTilde: '\\u227F\\u0338',\n\tNotSuperset: '\\u2283\\u20D2',\n\tNotSupersetEqual: '\\u2289',\n\tNotTilde: '\\u2241',\n\tNotTildeEqual: '\\u2244',\n\tNotTildeFullEqual: '\\u2247',\n\tNotTildeTilde: '\\u2249',\n\tNotVerticalBar: '\\u2224',\n\tnpar: '\\u2226',\n\tnparallel: '\\u2226',\n\tnparsl: '\\u2AFD\\u20E5',\n\tnpart: '\\u2202\\u0338',\n\tnpolint: '\\u2A14',\n\tnpr: '\\u2280',\n\tnprcue: '\\u22E0',\n\tnpre: '\\u2AAF\\u0338',\n\tnprec: '\\u2280',\n\tnpreceq: '\\u2AAF\\u0338',\n\tnrArr: '\\u21CF',\n\tnrarr: '\\u219B',\n\tnrarrc: '\\u2933\\u0338',\n\tnrarrw: '\\u219D\\u0338',\n\tnRightarrow: '\\u21CF',\n\tnrightarrow: '\\u219B',\n\tnrtri: '\\u22EB',\n\tnrtrie: '\\u22ED',\n\tnsc: '\\u2281',\n\tnsccue: '\\u22E1',\n\tnsce: '\\u2AB0\\u0338',\n\tNscr: '\\uD835\\uDCA9',\n\tnscr: '\\uD835\\uDCC3',\n\tnshortmid: '\\u2224',\n\tnshortparallel: '\\u2226',\n\tnsim: '\\u2241',\n\tnsime: '\\u2244',\n\tnsimeq: '\\u2244',\n\tnsmid: '\\u2224',\n\tnspar: '\\u2226',\n\tnsqsube: '\\u22E2',\n\tnsqsupe: '\\u22E3',\n\tnsub: '\\u2284',\n\tnsubE: '\\u2AC5\\u0338',\n\tnsube: '\\u2288',\n\tnsubset: '\\u2282\\u20D2',\n\tnsubseteq: '\\u2288',\n\tnsubseteqq: '\\u2AC5\\u0338',\n\tnsucc: '\\u2281',\n\tnsucceq: '\\u2AB0\\u0338',\n\tnsup: '\\u2285',\n\tnsupE: '\\u2AC6\\u0338',\n\tnsupe: '\\u2289',\n\tnsupset: '\\u2283\\u20D2',\n\tnsupseteq: '\\u2289',\n\tnsupseteqq: '\\u2AC6\\u0338',\n\tntgl: '\\u2279',\n\tNtilde: '\\u00D1',\n\tntilde: '\\u00F1',\n\tntlg: '\\u2278',\n\tntriangleleft: '\\u22EA',\n\tntrianglelefteq: '\\u22EC',\n\tntriangleright: '\\u22EB',\n\tntrianglerighteq: '\\u22ED',\n\tNu: '\\u039D',\n\tnu: '\\u03BD',\n\tnum: '\\u0023',\n\tnumero: '\\u2116',\n\tnumsp: '\\u2007',\n\tnvap: '\\u224D\\u20D2',\n\tnVDash: '\\u22AF',\n\tnVdash: '\\u22AE',\n\tnvDash: '\\u22AD',\n\tnvdash: '\\u22AC',\n\tnvge: '\\u2265\\u20D2',\n\tnvgt: '\\u003E\\u20D2',\n\tnvHarr: '\\u2904',\n\tnvinfin: '\\u29DE',\n\tnvlArr: '\\u2902',\n\tnvle: '\\u2264\\u20D2',\n\tnvlt: '\\u003C\\u20D2',\n\tnvltrie: '\\u22B4\\u20D2',\n\tnvrArr: '\\u2903',\n\tnvrtrie: '\\u22B5\\u20D2',\n\tnvsim: '\\u223C\\u20D2',\n\tnwarhk: '\\u2923',\n\tnwArr: '\\u21D6',\n\tnwarr: '\\u2196',\n\tnwarrow: '\\u2196',\n\tnwnear: '\\u2927',\n\tOacute: '\\u00D3',\n\toacute: '\\u00F3',\n\toast: '\\u229B',\n\tocir: '\\u229A',\n\tOcirc: '\\u00D4',\n\tocirc: '\\u00F4',\n\tOcy: '\\u041E',\n\tocy: '\\u043E',\n\todash: '\\u229D',\n\tOdblac: '\\u0150',\n\todblac: '\\u0151',\n\todiv: '\\u2A38',\n\todot: '\\u2299',\n\todsold: '\\u29BC',\n\tOElig: '\\u0152',\n\toelig: '\\u0153',\n\tofcir: '\\u29BF',\n\tOfr: '\\uD835\\uDD12',\n\tofr: '\\uD835\\uDD2C',\n\togon: '\\u02DB',\n\tOgrave: '\\u00D2',\n\tograve: '\\u00F2',\n\togt: '\\u29C1',\n\tohbar: '\\u29B5',\n\tohm: '\\u03A9',\n\toint: '\\u222E',\n\tolarr: '\\u21BA',\n\tolcir: '\\u29BE',\n\tolcross: '\\u29BB',\n\toline: '\\u203E',\n\tolt: '\\u29C0',\n\tOmacr: '\\u014C',\n\tomacr: '\\u014D',\n\tOmega: '\\u03A9',\n\tomega: '\\u03C9',\n\tOmicron: '\\u039F',\n\tomicron: '\\u03BF',\n\tomid: '\\u29B6',\n\tominus: '\\u2296',\n\tOopf: '\\uD835\\uDD46',\n\toopf: '\\uD835\\uDD60',\n\topar: '\\u29B7',\n\tOpenCurlyDoubleQuote: '\\u201C',\n\tOpenCurlyQuote: '\\u2018',\n\toperp: '\\u29B9',\n\toplus: '\\u2295',\n\tOr: '\\u2A54',\n\tor: '\\u2228',\n\torarr: '\\u21BB',\n\tord: '\\u2A5D',\n\torder: '\\u2134',\n\torderof: '\\u2134',\n\tordf: '\\u00AA',\n\tordm: '\\u00BA',\n\torigof: '\\u22B6',\n\toror: '\\u2A56',\n\torslope: '\\u2A57',\n\torv: '\\u2A5B',\n\toS: '\\u24C8',\n\tOscr: '\\uD835\\uDCAA',\n\toscr: '\\u2134',\n\tOslash: '\\u00D8',\n\toslash: '\\u00F8',\n\tosol: '\\u2298',\n\tOtilde: '\\u00D5',\n\totilde: '\\u00F5',\n\tOtimes: '\\u2A37',\n\totimes: '\\u2297',\n\totimesas: '\\u2A36',\n\tOuml: '\\u00D6',\n\touml: '\\u00F6',\n\tovbar: '\\u233D',\n\tOverBar: '\\u203E',\n\tOverBrace: '\\u23DE',\n\tOverBracket: '\\u23B4',\n\tOverParenthesis: '\\u23DC',\n\tpar: '\\u2225',\n\tpara: '\\u00B6',\n\tparallel: '\\u2225',\n\tparsim: '\\u2AF3',\n\tparsl: '\\u2AFD',\n\tpart: '\\u2202',\n\tPartialD: '\\u2202',\n\tPcy: '\\u041F',\n\tpcy: '\\u043F',\n\tpercnt: '\\u0025',\n\tperiod: '\\u002E',\n\tpermil: '\\u2030',\n\tperp: '\\u22A5',\n\tpertenk: '\\u2031',\n\tPfr: '\\uD835\\uDD13',\n\tpfr: '\\uD835\\uDD2D',\n\tPhi: '\\u03A6',\n\tphi: '\\u03C6',\n\tphiv: '\\u03D5',\n\tphmmat: '\\u2133',\n\tphone: '\\u260E',\n\tPi: '\\u03A0',\n\tpi: '\\u03C0',\n\tpitchfork: '\\u22D4',\n\tpiv: '\\u03D6',\n\tplanck: '\\u210F',\n\tplanckh: '\\u210E',\n\tplankv: '\\u210F',\n\tplus: '\\u002B',\n\tplusacir: '\\u2A23',\n\tplusb: '\\u229E',\n\tpluscir: '\\u2A22',\n\tplusdo: '\\u2214',\n\tplusdu: '\\u2A25',\n\tpluse: '\\u2A72',\n\tPlusMinus: '\\u00B1',\n\tplusmn: '\\u00B1',\n\tplussim: '\\u2A26',\n\tplustwo: '\\u2A27',\n\tpm: '\\u00B1',\n\tPoincareplane: '\\u210C',\n\tpointint: '\\u2A15',\n\tPopf: '\\u2119',\n\tpopf: '\\uD835\\uDD61',\n\tpound: '\\u00A3',\n\tPr: '\\u2ABB',\n\tpr: '\\u227A',\n\tprap: '\\u2AB7',\n\tprcue: '\\u227C',\n\tprE: '\\u2AB3',\n\tpre: '\\u2AAF',\n\tprec: '\\u227A',\n\tprecapprox: '\\u2AB7',\n\tpreccurlyeq: '\\u227C',\n\tPrecedes: '\\u227A',\n\tPrecedesEqual: '\\u2AAF',\n\tPrecedesSlantEqual: '\\u227C',\n\tPrecedesTilde: '\\u227E',\n\tpreceq: '\\u2AAF',\n\tprecnapprox: '\\u2AB9',\n\tprecneqq: '\\u2AB5',\n\tprecnsim: '\\u22E8',\n\tprecsim: '\\u227E',\n\tPrime: '\\u2033',\n\tprime: '\\u2032',\n\tprimes: '\\u2119',\n\tprnap: '\\u2AB9',\n\tprnE: '\\u2AB5',\n\tprnsim: '\\u22E8',\n\tprod: '\\u220F',\n\tProduct: '\\u220F',\n\tprofalar: '\\u232E',\n\tprofline: '\\u2312',\n\tprofsurf: '\\u2313',\n\tprop: '\\u221D',\n\tProportion: '\\u2237',\n\tProportional: '\\u221D',\n\tpropto: '\\u221D',\n\tprsim: '\\u227E',\n\tprurel: '\\u22B0',\n\tPscr: '\\uD835\\uDCAB',\n\tpscr: '\\uD835\\uDCC5',\n\tPsi: '\\u03A8',\n\tpsi: '\\u03C8',\n\tpuncsp: '\\u2008',\n\tQfr: '\\uD835\\uDD14',\n\tqfr: '\\uD835\\uDD2E',\n\tqint: '\\u2A0C',\n\tQopf: '\\u211A',\n\tqopf: '\\uD835\\uDD62',\n\tqprime: '\\u2057',\n\tQscr: '\\uD835\\uDCAC',\n\tqscr: '\\uD835\\uDCC6',\n\tquaternions: '\\u210D',\n\tquatint: '\\u2A16',\n\tquest: '\\u003F',\n\tquesteq: '\\u225F',\n\tQUOT: '\\u0022',\n\tquot: '\\u0022',\n\trAarr: '\\u21DB',\n\trace: '\\u223D\\u0331',\n\tRacute: '\\u0154',\n\tracute: '\\u0155',\n\tradic: '\\u221A',\n\traemptyv: '\\u29B3',\n\tRang: '\\u27EB',\n\trang: '\\u27E9',\n\trangd: '\\u2992',\n\trange: '\\u29A5',\n\trangle: '\\u27E9',\n\traquo: '\\u00BB',\n\tRarr: '\\u21A0',\n\trArr: '\\u21D2',\n\trarr: '\\u2192',\n\trarrap: '\\u2975',\n\trarrb: '\\u21E5',\n\trarrbfs: '\\u2920',\n\trarrc: '\\u2933',\n\trarrfs: '\\u291E',\n\trarrhk: '\\u21AA',\n\trarrlp: '\\u21AC',\n\trarrpl: '\\u2945',\n\trarrsim: '\\u2974',\n\tRarrtl: '\\u2916',\n\trarrtl: '\\u21A3',\n\trarrw: '\\u219D',\n\trAtail: '\\u291C',\n\tratail: '\\u291A',\n\tratio: '\\u2236',\n\trationals: '\\u211A',\n\tRBarr: '\\u2910',\n\trBarr: '\\u290F',\n\trbarr: '\\u290D',\n\trbbrk: '\\u2773',\n\trbrace: '\\u007D',\n\trbrack: '\\u005D',\n\trbrke: '\\u298C',\n\trbrksld: '\\u298E',\n\trbrkslu: '\\u2990',\n\tRcaron: '\\u0158',\n\trcaron: '\\u0159',\n\tRcedil: '\\u0156',\n\trcedil: '\\u0157',\n\trceil: '\\u2309',\n\trcub: '\\u007D',\n\tRcy: '\\u0420',\n\trcy: '\\u0440',\n\trdca: '\\u2937',\n\trdldhar: '\\u2969',\n\trdquo: '\\u201D',\n\trdquor: '\\u201D',\n\trdsh: '\\u21B3',\n\tRe: '\\u211C',\n\treal: '\\u211C',\n\trealine: '\\u211B',\n\trealpart: '\\u211C',\n\treals: '\\u211D',\n\trect: '\\u25AD',\n\tREG: '\\u00AE',\n\treg: '\\u00AE',\n\tReverseElement: '\\u220B',\n\tReverseEquilibrium: '\\u21CB',\n\tReverseUpEquilibrium: '\\u296F',\n\trfisht: '\\u297D',\n\trfloor: '\\u230B',\n\tRfr: '\\u211C',\n\trfr: '\\uD835\\uDD2F',\n\trHar: '\\u2964',\n\trhard: '\\u21C1',\n\trharu: '\\u21C0',\n\trharul: '\\u296C',\n\tRho: '\\u03A1',\n\trho: '\\u03C1',\n\trhov: '\\u03F1',\n\tRightAngleBracket: '\\u27E9',\n\tRightArrow: '\\u2192',\n\tRightarrow: '\\u21D2',\n\trightarrow: '\\u2192',\n\tRightArrowBar: '\\u21E5',\n\tRightArrowLeftArrow: '\\u21C4',\n\trightarrowtail: '\\u21A3',\n\tRightCeiling: '\\u2309',\n\tRightDoubleBracket: '\\u27E7',\n\tRightDownTeeVector: '\\u295D',\n\tRightDownVector: '\\u21C2',\n\tRightDownVectorBar: '\\u2955',\n\tRightFloor: '\\u230B',\n\trightharpoondown: '\\u21C1',\n\trightharpoonup: '\\u21C0',\n\trightleftarrows: '\\u21C4',\n\trightleftharpoons: '\\u21CC',\n\trightrightarrows: '\\u21C9',\n\trightsquigarrow: '\\u219D',\n\tRightTee: '\\u22A2',\n\tRightTeeArrow: '\\u21A6',\n\tRightTeeVector: '\\u295B',\n\trightthreetimes: '\\u22CC',\n\tRightTriangle: '\\u22B3',\n\tRightTriangleBar: '\\u29D0',\n\tRightTriangleEqual: '\\u22B5',\n\tRightUpDownVector: '\\u294F',\n\tRightUpTeeVector: '\\u295C',\n\tRightUpVector: '\\u21BE',\n\tRightUpVectorBar: '\\u2954',\n\tRightVector: '\\u21C0',\n\tRightVectorBar: '\\u2953',\n\tring: '\\u02DA',\n\trisingdotseq: '\\u2253',\n\trlarr: '\\u21C4',\n\trlhar: '\\u21CC',\n\trlm: '\\u200F',\n\trmoust: '\\u23B1',\n\trmoustache: '\\u23B1',\n\trnmid: '\\u2AEE',\n\troang: '\\u27ED',\n\troarr: '\\u21FE',\n\trobrk: '\\u27E7',\n\tropar: '\\u2986',\n\tRopf: '\\u211D',\n\tropf: '\\uD835\\uDD63',\n\troplus: '\\u2A2E',\n\trotimes: '\\u2A35',\n\tRoundImplies: '\\u2970',\n\trpar: '\\u0029',\n\trpargt: '\\u2994',\n\trppolint: '\\u2A12',\n\trrarr: '\\u21C9',\n\tRrightarrow: '\\u21DB',\n\trsaquo: '\\u203A',\n\tRscr: '\\u211B',\n\trscr: '\\uD835\\uDCC7',\n\tRsh: '\\u21B1',\n\trsh: '\\u21B1',\n\trsqb: '\\u005D',\n\trsquo: '\\u2019',\n\trsquor: '\\u2019',\n\trthree: '\\u22CC',\n\trtimes: '\\u22CA',\n\trtri: '\\u25B9',\n\trtrie: '\\u22B5',\n\trtrif: '\\u25B8',\n\trtriltri: '\\u29CE',\n\tRuleDelayed: '\\u29F4',\n\truluhar: '\\u2968',\n\trx: '\\u211E',\n\tSacute: '\\u015A',\n\tsacute: '\\u015B',\n\tsbquo: '\\u201A',\n\tSc: '\\u2ABC',\n\tsc: '\\u227B',\n\tscap: '\\u2AB8',\n\tScaron: '\\u0160',\n\tscaron: '\\u0161',\n\tsccue: '\\u227D',\n\tscE: '\\u2AB4',\n\tsce: '\\u2AB0',\n\tScedil: '\\u015E',\n\tscedil: '\\u015F',\n\tScirc: '\\u015C',\n\tscirc: '\\u015D',\n\tscnap: '\\u2ABA',\n\tscnE: '\\u2AB6',\n\tscnsim: '\\u22E9',\n\tscpolint: '\\u2A13',\n\tscsim: '\\u227F',\n\tScy: '\\u0421',\n\tscy: '\\u0441',\n\tsdot: '\\u22C5',\n\tsdotb: '\\u22A1',\n\tsdote: '\\u2A66',\n\tsearhk: '\\u2925',\n\tseArr: '\\u21D8',\n\tsearr: '\\u2198',\n\tsearrow: '\\u2198',\n\tsect: '\\u00A7',\n\tsemi: '\\u003B',\n\tseswar: '\\u2929',\n\tsetminus: '\\u2216',\n\tsetmn: '\\u2216',\n\tsext: '\\u2736',\n\tSfr: '\\uD835\\uDD16',\n\tsfr: '\\uD835\\uDD30',\n\tsfrown: '\\u2322',\n\tsharp: '\\u266F',\n\tSHCHcy: '\\u0429',\n\tshchcy: '\\u0449',\n\tSHcy: '\\u0428',\n\tshcy: '\\u0448',\n\tShortDownArrow: '\\u2193',\n\tShortLeftArrow: '\\u2190',\n\tshortmid: '\\u2223',\n\tshortparallel: '\\u2225',\n\tShortRightArrow: '\\u2192',\n\tShortUpArrow: '\\u2191',\n\tshy: '\\u00AD',\n\tSigma: '\\u03A3',\n\tsigma: '\\u03C3',\n\tsigmaf: '\\u03C2',\n\tsigmav: '\\u03C2',\n\tsim: '\\u223C',\n\tsimdot: '\\u2A6A',\n\tsime: '\\u2243',\n\tsimeq: '\\u2243',\n\tsimg: '\\u2A9E',\n\tsimgE: '\\u2AA0',\n\tsiml: '\\u2A9D',\n\tsimlE: '\\u2A9F',\n\tsimne: '\\u2246',\n\tsimplus: '\\u2A24',\n\tsimrarr: '\\u2972',\n\tslarr: '\\u2190',\n\tSmallCircle: '\\u2218',\n\tsmallsetminus: '\\u2216',\n\tsmashp: '\\u2A33',\n\tsmeparsl: '\\u29E4',\n\tsmid: '\\u2223',\n\tsmile: '\\u2323',\n\tsmt: '\\u2AAA',\n\tsmte: '\\u2AAC',\n\tsmtes: '\\u2AAC\\uFE00',\n\tSOFTcy: '\\u042C',\n\tsoftcy: '\\u044C',\n\tsol: '\\u002F',\n\tsolb: '\\u29C4',\n\tsolbar: '\\u233F',\n\tSopf: '\\uD835\\uDD4A',\n\tsopf: '\\uD835\\uDD64',\n\tspades: '\\u2660',\n\tspadesuit: '\\u2660',\n\tspar: '\\u2225',\n\tsqcap: '\\u2293',\n\tsqcaps: '\\u2293\\uFE00',\n\tsqcup: '\\u2294',\n\tsqcups: '\\u2294\\uFE00',\n\tSqrt: '\\u221A',\n\tsqsub: '\\u228F',\n\tsqsube: '\\u2291',\n\tsqsubset: '\\u228F',\n\tsqsubseteq: '\\u2291',\n\tsqsup: '\\u2290',\n\tsqsupe: '\\u2292',\n\tsqsupset: '\\u2290',\n\tsqsupseteq: '\\u2292',\n\tsqu: '\\u25A1',\n\tSquare: '\\u25A1',\n\tsquare: '\\u25A1',\n\tSquareIntersection: '\\u2293',\n\tSquareSubset: '\\u228F',\n\tSquareSubsetEqual: '\\u2291',\n\tSquareSuperset: '\\u2290',\n\tSquareSupersetEqual: '\\u2292',\n\tSquareUnion: '\\u2294',\n\tsquarf: '\\u25AA',\n\tsquf: '\\u25AA',\n\tsrarr: '\\u2192',\n\tSscr: '\\uD835\\uDCAE',\n\tsscr: '\\uD835\\uDCC8',\n\tssetmn: '\\u2216',\n\tssmile: '\\u2323',\n\tsstarf: '\\u22C6',\n\tStar: '\\u22C6',\n\tstar: '\\u2606',\n\tstarf: '\\u2605',\n\tstraightepsilon: '\\u03F5',\n\tstraightphi: '\\u03D5',\n\tstrns: '\\u00AF',\n\tSub: '\\u22D0',\n\tsub: '\\u2282',\n\tsubdot: '\\u2ABD',\n\tsubE: '\\u2AC5',\n\tsube: '\\u2286',\n\tsubedot: '\\u2AC3',\n\tsubmult: '\\u2AC1',\n\tsubnE: '\\u2ACB',\n\tsubne: '\\u228A',\n\tsubplus: '\\u2ABF',\n\tsubrarr: '\\u2979',\n\tSubset: '\\u22D0',\n\tsubset: '\\u2282',\n\tsubseteq: '\\u2286',\n\tsubseteqq: '\\u2AC5',\n\tSubsetEqual: '\\u2286',\n\tsubsetneq: '\\u228A',\n\tsubsetneqq: '\\u2ACB',\n\tsubsim: '\\u2AC7',\n\tsubsub: '\\u2AD5',\n\tsubsup: '\\u2AD3',\n\tsucc: '\\u227B',\n\tsuccapprox: '\\u2AB8',\n\tsucccurlyeq: '\\u227D',\n\tSucceeds: '\\u227B',\n\tSucceedsEqual: '\\u2AB0',\n\tSucceedsSlantEqual: '\\u227D',\n\tSucceedsTilde: '\\u227F',\n\tsucceq: '\\u2AB0',\n\tsuccnapprox: '\\u2ABA',\n\tsuccneqq: '\\u2AB6',\n\tsuccnsim: '\\u22E9',\n\tsuccsim: '\\u227F',\n\tSuchThat: '\\u220B',\n\tSum: '\\u2211',\n\tsum: '\\u2211',\n\tsung: '\\u266A',\n\tSup: '\\u22D1',\n\tsup: '\\u2283',\n\tsup1: '\\u00B9',\n\tsup2: '\\u00B2',\n\tsup3: '\\u00B3',\n\tsupdot: '\\u2ABE',\n\tsupdsub: '\\u2AD8',\n\tsupE: '\\u2AC6',\n\tsupe: '\\u2287',\n\tsupedot: '\\u2AC4',\n\tSuperset: '\\u2283',\n\tSupersetEqual: '\\u2287',\n\tsuphsol: '\\u27C9',\n\tsuphsub: '\\u2AD7',\n\tsuplarr: '\\u297B',\n\tsupmult: '\\u2AC2',\n\tsupnE: '\\u2ACC',\n\tsupne: '\\u228B',\n\tsupplus: '\\u2AC0',\n\tSupset: '\\u22D1',\n\tsupset: '\\u2283',\n\tsupseteq: '\\u2287',\n\tsupseteqq: '\\u2AC6',\n\tsupsetneq: '\\u228B',\n\tsupsetneqq: '\\u2ACC',\n\tsupsim: '\\u2AC8',\n\tsupsub: '\\u2AD4',\n\tsupsup: '\\u2AD6',\n\tswarhk: '\\u2926',\n\tswArr: '\\u21D9',\n\tswarr: '\\u2199',\n\tswarrow: '\\u2199',\n\tswnwar: '\\u292A',\n\tszlig: '\\u00DF',\n\tTab: '\\u0009',\n\ttarget: '\\u2316',\n\tTau: '\\u03A4',\n\ttau: '\\u03C4',\n\ttbrk: '\\u23B4',\n\tTcaron: '\\u0164',\n\ttcaron: '\\u0165',\n\tTcedil: '\\u0162',\n\ttcedil: '\\u0163',\n\tTcy: '\\u0422',\n\ttcy: '\\u0442',\n\ttdot: '\\u20DB',\n\ttelrec: '\\u2315',\n\tTfr: '\\uD835\\uDD17',\n\ttfr: '\\uD835\\uDD31',\n\tthere4: '\\u2234',\n\tTherefore: '\\u2234',\n\ttherefore: '\\u2234',\n\tTheta: '\\u0398',\n\ttheta: '\\u03B8',\n\tthetasym: '\\u03D1',\n\tthetav: '\\u03D1',\n\tthickapprox: '\\u2248',\n\tthicksim: '\\u223C',\n\tThickSpace: '\\u205F\\u200A',\n\tthinsp: '\\u2009',\n\tThinSpace: '\\u2009',\n\tthkap: '\\u2248',\n\tthksim: '\\u223C',\n\tTHORN: '\\u00DE',\n\tthorn: '\\u00FE',\n\tTilde: '\\u223C',\n\ttilde: '\\u02DC',\n\tTildeEqual: '\\u2243',\n\tTildeFullEqual: '\\u2245',\n\tTildeTilde: '\\u2248',\n\ttimes: '\\u00D7',\n\ttimesb: '\\u22A0',\n\ttimesbar: '\\u2A31',\n\ttimesd: '\\u2A30',\n\ttint: '\\u222D',\n\ttoea: '\\u2928',\n\ttop: '\\u22A4',\n\ttopbot: '\\u2336',\n\ttopcir: '\\u2AF1',\n\tTopf: '\\uD835\\uDD4B',\n\ttopf: '\\uD835\\uDD65',\n\ttopfork: '\\u2ADA',\n\ttosa: '\\u2929',\n\ttprime: '\\u2034',\n\tTRADE: '\\u2122',\n\ttrade: '\\u2122',\n\ttriangle: '\\u25B5',\n\ttriangledown: '\\u25BF',\n\ttriangleleft: '\\u25C3',\n\ttrianglelefteq: '\\u22B4',\n\ttriangleq: '\\u225C',\n\ttriangleright: '\\u25B9',\n\ttrianglerighteq: '\\u22B5',\n\ttridot: '\\u25EC',\n\ttrie: '\\u225C',\n\ttriminus: '\\u2A3A',\n\tTripleDot: '\\u20DB',\n\ttriplus: '\\u2A39',\n\ttrisb: '\\u29CD',\n\ttritime: '\\u2A3B',\n\ttrpezium: '\\u23E2',\n\tTscr: '\\uD835\\uDCAF',\n\ttscr: '\\uD835\\uDCC9',\n\tTScy: '\\u0426',\n\ttscy: '\\u0446',\n\tTSHcy: '\\u040B',\n\ttshcy: '\\u045B',\n\tTstrok: '\\u0166',\n\ttstrok: '\\u0167',\n\ttwixt: '\\u226C',\n\ttwoheadleftarrow: '\\u219E',\n\ttwoheadrightarrow: '\\u21A0',\n\tUacute: '\\u00DA',\n\tuacute: '\\u00FA',\n\tUarr: '\\u219F',\n\tuArr: '\\u21D1',\n\tuarr: '\\u2191',\n\tUarrocir: '\\u2949',\n\tUbrcy: '\\u040E',\n\tubrcy: '\\u045E',\n\tUbreve: '\\u016C',\n\tubreve: '\\u016D',\n\tUcirc: '\\u00DB',\n\tucirc: '\\u00FB',\n\tUcy: '\\u0423',\n\tucy: '\\u0443',\n\tudarr: '\\u21C5',\n\tUdblac: '\\u0170',\n\tudblac: '\\u0171',\n\tudhar: '\\u296E',\n\tufisht: '\\u297E',\n\tUfr: '\\uD835\\uDD18',\n\tufr: '\\uD835\\uDD32',\n\tUgrave: '\\u00D9',\n\tugrave: '\\u00F9',\n\tuHar: '\\u2963',\n\tuharl: '\\u21BF',\n\tuharr: '\\u21BE',\n\tuhblk: '\\u2580',\n\tulcorn: '\\u231C',\n\tulcorner: '\\u231C',\n\tulcrop: '\\u230F',\n\tultri: '\\u25F8',\n\tUmacr: '\\u016A',\n\tumacr: '\\u016B',\n\tuml: '\\u00A8',\n\tUnderBar: '\\u005F',\n\tUnderBrace: '\\u23DF',\n\tUnderBracket: '\\u23B5',\n\tUnderParenthesis: '\\u23DD',\n\tUnion: '\\u22C3',\n\tUnionPlus: '\\u228E',\n\tUogon: '\\u0172',\n\tuogon: '\\u0173',\n\tUopf: '\\uD835\\uDD4C',\n\tuopf: '\\uD835\\uDD66',\n\tUpArrow: '\\u2191',\n\tUparrow: '\\u21D1',\n\tuparrow: '\\u2191',\n\tUpArrowBar: '\\u2912',\n\tUpArrowDownArrow: '\\u21C5',\n\tUpDownArrow: '\\u2195',\n\tUpdownarrow: '\\u21D5',\n\tupdownarrow: '\\u2195',\n\tUpEquilibrium: '\\u296E',\n\tupharpoonleft: '\\u21BF',\n\tupharpoonright: '\\u21BE',\n\tuplus: '\\u228E',\n\tUpperLeftArrow: '\\u2196',\n\tUpperRightArrow: '\\u2197',\n\tUpsi: '\\u03D2',\n\tupsi: '\\u03C5',\n\tupsih: '\\u03D2',\n\tUpsilon: '\\u03A5',\n\tupsilon: '\\u03C5',\n\tUpTee: '\\u22A5',\n\tUpTeeArrow: '\\u21A5',\n\tupuparrows: '\\u21C8',\n\turcorn: '\\u231D',\n\turcorner: '\\u231D',\n\turcrop: '\\u230E',\n\tUring: '\\u016E',\n\turing: '\\u016F',\n\turtri: '\\u25F9',\n\tUscr: '\\uD835\\uDCB0',\n\tuscr: '\\uD835\\uDCCA',\n\tutdot: '\\u22F0',\n\tUtilde: '\\u0168',\n\tutilde: '\\u0169',\n\tutri: '\\u25B5',\n\tutrif: '\\u25B4',\n\tuuarr: '\\u21C8',\n\tUuml: '\\u00DC',\n\tuuml: '\\u00FC',\n\tuwangle: '\\u29A7',\n\tvangrt: '\\u299C',\n\tvarepsilon: '\\u03F5',\n\tvarkappa: '\\u03F0',\n\tvarnothing: '\\u2205',\n\tvarphi: '\\u03D5',\n\tvarpi: '\\u03D6',\n\tvarpropto: '\\u221D',\n\tvArr: '\\u21D5',\n\tvarr: '\\u2195',\n\tvarrho: '\\u03F1',\n\tvarsigma: '\\u03C2',\n\tvarsubsetneq: '\\u228A\\uFE00',\n\tvarsubsetneqq: '\\u2ACB\\uFE00',\n\tvarsupsetneq: '\\u228B\\uFE00',\n\tvarsupsetneqq: '\\u2ACC\\uFE00',\n\tvartheta: '\\u03D1',\n\tvartriangleleft: '\\u22B2',\n\tvartriangleright: '\\u22B3',\n\tVbar: '\\u2AEB',\n\tvBar: '\\u2AE8',\n\tvBarv: '\\u2AE9',\n\tVcy: '\\u0412',\n\tvcy: '\\u0432',\n\tVDash: '\\u22AB',\n\tVdash: '\\u22A9',\n\tvDash: '\\u22A8',\n\tvdash: '\\u22A2',\n\tVdashl: '\\u2AE6',\n\tVee: '\\u22C1',\n\tvee: '\\u2228',\n\tveebar: '\\u22BB',\n\tveeeq: '\\u225A',\n\tvellip: '\\u22EE',\n\tVerbar: '\\u2016',\n\tverbar: '\\u007C',\n\tVert: '\\u2016',\n\tvert: '\\u007C',\n\tVerticalBar: '\\u2223',\n\tVerticalLine: '\\u007C',\n\tVerticalSeparator: '\\u2758',\n\tVerticalTilde: '\\u2240',\n\tVeryThinSpace: '\\u200A',\n\tVfr: '\\uD835\\uDD19',\n\tvfr: '\\uD835\\uDD33',\n\tvltri: '\\u22B2',\n\tvnsub: '\\u2282\\u20D2',\n\tvnsup: '\\u2283\\u20D2',\n\tVopf: '\\uD835\\uDD4D',\n\tvopf: '\\uD835\\uDD67',\n\tvprop: '\\u221D',\n\tvrtri: '\\u22B3',\n\tVscr: '\\uD835\\uDCB1',\n\tvscr: '\\uD835\\uDCCB',\n\tvsubnE: '\\u2ACB\\uFE00',\n\tvsubne: '\\u228A\\uFE00',\n\tvsupnE: '\\u2ACC\\uFE00',\n\tvsupne: '\\u228B\\uFE00',\n\tVvdash: '\\u22AA',\n\tvzigzag: '\\u299A',\n\tWcirc: '\\u0174',\n\twcirc: '\\u0175',\n\twedbar: '\\u2A5F',\n\tWedge: '\\u22C0',\n\twedge: '\\u2227',\n\twedgeq: '\\u2259',\n\tweierp: '\\u2118',\n\tWfr: '\\uD835\\uDD1A',\n\twfr: '\\uD835\\uDD34',\n\tWopf: '\\uD835\\uDD4E',\n\twopf: '\\uD835\\uDD68',\n\twp: '\\u2118',\n\twr: '\\u2240',\n\twreath: '\\u2240',\n\tWscr: '\\uD835\\uDCB2',\n\twscr: '\\uD835\\uDCCC',\n\txcap: '\\u22C2',\n\txcirc: '\\u25EF',\n\txcup: '\\u22C3',\n\txdtri: '\\u25BD',\n\tXfr: '\\uD835\\uDD1B',\n\txfr: '\\uD835\\uDD35',\n\txhArr: '\\u27FA',\n\txharr: '\\u27F7',\n\tXi: '\\u039E',\n\txi: '\\u03BE',\n\txlArr: '\\u27F8',\n\txlarr: '\\u27F5',\n\txmap: '\\u27FC',\n\txnis: '\\u22FB',\n\txodot: '\\u2A00',\n\tXopf: '\\uD835\\uDD4F',\n\txopf: '\\uD835\\uDD69',\n\txoplus: '\\u2A01',\n\txotime: '\\u2A02',\n\txrArr: '\\u27F9',\n\txrarr: '\\u27F6',\n\tXscr: '\\uD835\\uDCB3',\n\txscr: '\\uD835\\uDCCD',\n\txsqcup: '\\u2A06',\n\txuplus: '\\u2A04',\n\txutri: '\\u25B3',\n\txvee: '\\u22C1',\n\txwedge: '\\u22C0',\n\tYacute: '\\u00DD',\n\tyacute: '\\u00FD',\n\tYAcy: '\\u042F',\n\tyacy: '\\u044F',\n\tYcirc: '\\u0176',\n\tycirc: '\\u0177',\n\tYcy: '\\u042B',\n\tycy: '\\u044B',\n\tyen: '\\u00A5',\n\tYfr: '\\uD835\\uDD1C',\n\tyfr: '\\uD835\\uDD36',\n\tYIcy: '\\u0407',\n\tyicy: '\\u0457',\n\tYopf: '\\uD835\\uDD50',\n\tyopf: '\\uD835\\uDD6A',\n\tYscr: '\\uD835\\uDCB4',\n\tyscr: '\\uD835\\uDCCE',\n\tYUcy: '\\u042E',\n\tyucy: '\\u044E',\n\tYuml: '\\u0178',\n\tyuml: '\\u00FF',\n\tZacute: '\\u0179',\n\tzacute: '\\u017A',\n\tZcaron: '\\u017D',\n\tzcaron: '\\u017E',\n\tZcy: '\\u0417',\n\tzcy: '\\u0437',\n\tZdot: '\\u017B',\n\tzdot: '\\u017C',\n\tzeetrf: '\\u2128',\n\tZeroWidthSpace: '\\u200B',\n\tZeta: '\\u0396',\n\tzeta: '\\u03B6',\n\tZfr: '\\u2128',\n\tzfr: '\\uD835\\uDD37',\n\tZHcy: '\\u0416',\n\tzhcy: '\\u0436',\n\tzigrarr: '\\u21DD',\n\tZopf: '\\u2124',\n\tzopf: '\\uD835\\uDD6B',\n\tZscr: '\\uD835\\uDCB5',\n\tzscr: '\\uD835\\uDCCF',\n\tzwj: '\\u200D',\n\tzwnj: '\\u200C',\n});\n\n/**\n * @deprecated use `HTML_ENTITIES` instead\n * @see HTML_ENTITIES\n */\nexports.entityMap = exports.HTML_ENTITIES;\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9HcC8uL25vZGVfbW9kdWxlcy9AeG1sZG9tL3htbGRvbS9saWIvZW50aXRpZXMuanM/YjMwZiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBYTs7QUFFYixhQUFhLG1CQUFPLENBQUMsdUVBQWU7O0FBRXBDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQzs7QUFFRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsImZpbGUiOiIuL25vZGVfbW9kdWxlcy9AeG1sZG9tL3htbGRvbS9saWIvZW50aXRpZXMuanMuanMiLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIHN0cmljdCc7XG5cbnZhciBmcmVlemUgPSByZXF1aXJlKCcuL2NvbnZlbnRpb25zJykuZnJlZXplO1xuXG4vKipcbiAqIFRoZSBlbnRpdGllcyB0aGF0IGFyZSBwcmVkZWZpbmVkIGluIGV2ZXJ5IFhNTCBkb2N1bWVudC5cbiAqXG4gKiBAc2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi8yMDA2L1JFQy14bWwxMS0yMDA2MDgxNi8jc2VjLXByZWRlZmluZWQtZW50IFczQyBYTUwgMS4xXG4gKiBAc2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi8yMDA4L1JFQy14bWwtMjAwODExMjYvI3NlYy1wcmVkZWZpbmVkLWVudCBXM0MgWE1MIDEuMFxuICogQHNlZSBodHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9MaXN0X29mX1hNTF9hbmRfSFRNTF9jaGFyYWN0ZXJfZW50aXR5X3JlZmVyZW5jZXMjUHJlZGVmaW5lZF9lbnRpdGllc19pbl9YTUwgV2lraXBlZGlhXG4gKi9cbmV4cG9ydHMuWE1MX0VOVElUSUVTID0gZnJlZXplKHtcblx0YW1wOiAnJicsXG5cdGFwb3M6IFwiJ1wiLFxuXHRndDogJz4nLFxuXHRsdDogJzwnLFxuXHRxdW90OiAnXCInLFxufSk7XG5cbi8qKlxuICogQSBtYXAgb2YgYWxsIGVudGl0aWVzIHRoYXQgYXJlIGRldGVjdGVkIGluIGFuIEhUTUwgZG9jdW1lbnQuXG4gKiBUaGV5IGNvbnRhaW4gYWxsIGVudHJpZXMgZnJvbSBgWE1MX0VOVElUSUVTYC5cbiAqXG4gKiBAc2VlIFhNTF9FTlRJVElFU1xuICogQHNlZSBET01QYXJzZXIucGFyc2VGcm9tU3RyaW5nXG4gKiBAc2VlIERPTUltcGxlbWVudGF0aW9uLnByb3RvdHlwZS5jcmVhdGVIVE1MRG9jdW1lbnRcbiAqIEBzZWUgaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy8jbmFtZWQtY2hhcmFjdGVyLXJlZmVyZW5jZXMgV0hBVFdHIEhUTUwoNSkgU3BlY1xuICogQHNlZSBodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL2VudGl0aWVzLmpzb24gSlNPTlxuICogQHNlZSBodHRwczovL3d3dy53My5vcmcvVFIveG1sLWVudGl0eS1uYW1lcy8gVzNDIFhNTCBFbnRpdHkgTmFtZXNcbiAqIEBzZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL2h0bWw0L3NnbWwvZW50aXRpZXMuaHRtbCBXM0MgSFRNTDQvU0dNTFxuICogQHNlZSBodHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9MaXN0X29mX1hNTF9hbmRfSFRNTF9jaGFyYWN0ZXJfZW50aXR5X3JlZmVyZW5jZXMjQ2hhcmFjdGVyX2VudGl0eV9yZWZlcmVuY2VzX2luX0hUTUwgV2lraXBlZGlhIChIVE1MKVxuICogQHNlZSBodHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9MaXN0X29mX1hNTF9hbmRfSFRNTF9jaGFyYWN0ZXJfZW50aXR5X3JlZmVyZW5jZXMjRW50aXRpZXNfcmVwcmVzZW50aW5nX3NwZWNpYWxfY2hhcmFjdGVyc19pbl9YSFRNTCBXaWtwZWRpYSAoWEhUTUwpXG4gKi9cbmV4cG9ydHMuSFRNTF9FTlRJVElFUyA9IGZyZWV6ZSh7XG5cdEFhY3V0ZTogJ1xcdTAwQzEnLFxuXHRhYWN1dGU6ICdcXHUwMEUxJyxcblx0QWJyZXZlOiAnXFx1MDEwMicsXG5cdGFicmV2ZTogJ1xcdTAxMDMnLFxuXHRhYzogJ1xcdTIyM0UnLFxuXHRhY2Q6ICdcXHUyMjNGJyxcblx0YWNFOiAnXFx1MjIzRVxcdTAzMzMnLFxuXHRBY2lyYzogJ1xcdTAwQzInLFxuXHRhY2lyYzogJ1xcdTAwRTInLFxuXHRhY3V0ZTogJ1xcdTAwQjQnLFxuXHRBY3k6ICdcXHUwNDEwJyxcblx0YWN5OiAnXFx1MDQzMCcsXG5cdEFFbGlnOiAnXFx1MDBDNicsXG5cdGFlbGlnOiAnXFx1MDBFNicsXG5cdGFmOiAnXFx1MjA2MScsXG5cdEFmcjogJ1xcdUQ4MzVcXHVERDA0Jyxcblx0YWZyOiAnXFx1RDgzNVxcdUREMUUnLFxuXHRBZ3JhdmU6ICdcXHUwMEMwJyxcblx0YWdyYXZlOiAnXFx1MDBFMCcsXG5cdGFsZWZzeW06ICdcXHUyMTM1Jyxcblx0YWxlcGg6ICdcXHUyMTM1Jyxcblx0QWxwaGE6ICdcXHUwMzkxJyxcblx0YWxwaGE6ICdcXHUwM0IxJyxcblx0QW1hY3I6ICdcXHUwMTAwJyxcblx0YW1hY3I6ICdcXHUwMTAxJyxcblx0YW1hbGc6ICdcXHUyQTNGJyxcblx0QU1QOiAnXFx1MDAyNicsXG5cdGFtcDogJ1xcdTAwMjYnLFxuXHRBbmQ6ICdcXHUyQTUzJyxcblx0YW5kOiAnXFx1MjIyNycsXG5cdGFuZGFuZDogJ1xcdTJBNTUnLFxuXHRhbmRkOiAnXFx1MkE1QycsXG5cdGFuZHNsb3BlOiAnXFx1MkE1OCcsXG5cdGFuZHY6ICdcXHUyQTVBJyxcblx0YW5nOiAnXFx1MjIyMCcsXG5cdGFuZ2U6ICdcXHUyOUE0Jyxcblx0YW5nbGU6ICdcXHUyMjIwJyxcblx0YW5nbXNkOiAnXFx1MjIyMScsXG5cdGFuZ21zZGFhOiAnXFx1MjlBOCcsXG5cdGFuZ21zZGFiOiAnXFx1MjlBOScsXG5cdGFuZ21zZGFjOiAnXFx1MjlBQScsXG5cdGFuZ21zZGFkOiAnXFx1MjlBQicsXG5cdGFuZ21zZGFlOiAnXFx1MjlBQycsXG5cdGFuZ21zZGFmOiAnXFx1MjlBRCcsXG5cdGFuZ21zZGFnOiAnXFx1MjlBRScsXG5cdGFuZ21zZGFoOiAnXFx1MjlBRicsXG5cdGFuZ3J0OiAnXFx1MjIxRicsXG5cdGFuZ3J0dmI6ICdcXHUyMkJFJyxcblx0YW5ncnR2YmQ6ICdcXHUyOTlEJyxcblx0YW5nc3BoOiAnXFx1MjIyMicsXG5cdGFuZ3N0OiAnXFx1MDBDNScsXG5cdGFuZ3phcnI6ICdcXHUyMzdDJyxcblx0QW9nb246ICdcXHUwMTA0Jyxcblx0YW9nb246ICdcXHUwMTA1Jyxcblx0QW9wZjogJ1xcdUQ4MzVcXHVERDM4Jyxcblx0YW9wZjogJ1xcdUQ4MzVcXHVERDUyJyxcblx0YXA6ICdcXHUyMjQ4Jyxcblx0YXBhY2lyOiAnXFx1MkE2RicsXG5cdGFwRTogJ1xcdTJBNzAnLFxuXHRhcGU6ICdcXHUyMjRBJyxcblx0YXBpZDogJ1xcdTIyNEInLFxuXHRhcG9zOiAnXFx1MDAyNycsXG5cdEFwcGx5RnVuY3Rpb246ICdcXHUyMDYxJyxcblx0YXBwcm94OiAnXFx1MjI0OCcsXG5cdGFwcHJveGVxOiAnXFx1MjI0QScsXG5cdEFyaW5nOiAnXFx1MDBDNScsXG5cdGFyaW5nOiAnXFx1MDBFNScsXG5cdEFzY3I6ICdcXHVEODM1XFx1REM5QycsXG5cdGFzY3I6ICdcXHVEODM1XFx1RENCNicsXG5cdEFzc2lnbjogJ1xcdTIyNTQnLFxuXHRhc3Q6ICdcXHUwMDJBJyxcblx0YXN5bXA6ICdcXHUyMjQ4Jyxcblx0YXN5bXBlcTogJ1xcdTIyNEQnLFxuXHRBdGlsZGU6ICdcXHUwMEMzJyxcblx0YXRpbGRlOiAnXFx1MDBFMycsXG5cdEF1bWw6ICdcXHUwMEM0Jyxcblx0YXVtbDogJ1xcdTAwRTQnLFxuXHRhd2NvbmludDogJ1xcdTIyMzMnLFxuXHRhd2ludDogJ1xcdTJBMTEnLFxuXHRiYWNrY29uZzogJ1xcdTIyNEMnLFxuXHRiYWNrZXBzaWxvbjogJ1xcdTAzRjYnLFxuXHRiYWNrcHJpbWU6ICdcXHUyMDM1Jyxcblx0YmFja3NpbTogJ1xcdTIyM0QnLFxuXHRiYWNrc2ltZXE6ICdcXHUyMkNEJyxcblx0QmFja3NsYXNoOiAnXFx1MjIxNicsXG5cdEJhcnY6ICdcXHUyQUU3Jyxcblx0YmFydmVlOiAnXFx1MjJCRCcsXG5cdEJhcndlZDogJ1xcdTIzMDYnLFxuXHRiYXJ3ZWQ6ICdcXHUyMzA1Jyxcblx0YmFyd2VkZ2U6ICdcXHUyMzA1Jyxcblx0YmJyazogJ1xcdTIzQjUnLFxuXHRiYnJrdGJyazogJ1xcdTIzQjYnLFxuXHRiY29uZzogJ1xcdTIyNEMnLFxuXHRCY3k6ICdcXHUwNDExJyxcblx0YmN5OiAnXFx1MDQzMScsXG5cdGJkcXVvOiAnXFx1MjAxRScsXG5cdGJlY2F1czogJ1xcdTIyMzUnLFxuXHRCZWNhdXNlOiAnXFx1MjIzNScsXG5cdGJlY2F1c2U6ICdcXHUyMjM1Jyxcblx0YmVtcHR5djogJ1xcdTI5QjAnLFxuXHRiZXBzaTogJ1xcdTAzRjYnLFxuXHRiZXJub3U6ICdcXHUyMTJDJyxcblx0QmVybm91bGxpczogJ1xcdTIxMkMnLFxuXHRCZXRhOiAnXFx1MDM5MicsXG5cdGJldGE6ICdcXHUwM0IyJyxcblx0YmV0aDogJ1xcdTIxMzYnLFxuXHRiZXR3ZWVuOiAnXFx1MjI2QycsXG5cdEJmcjogJ1xcdUQ4MzVcXHVERDA1Jyxcblx0YmZyOiAnXFx1RDgzNVxcdUREMUYnLFxuXHRiaWdjYXA6ICdcXHUyMkMyJyxcblx0YmlnY2lyYzogJ1xcdTI1RUYnLFxuXHRiaWdjdXA6ICdcXHUyMkMzJyxcblx0Ymlnb2RvdDogJ1xcdTJBMDAnLFxuXHRiaWdvcGx1czogJ1xcdTJBMDEnLFxuXHRiaWdvdGltZXM6ICdcXHUyQTAyJyxcblx0Ymlnc3FjdXA6ICdcXHUyQTA2Jyxcblx0Ymlnc3RhcjogJ1xcdTI2MDUnLFxuXHRiaWd0cmlhbmdsZWRvd246ICdcXHUyNUJEJyxcblx0YmlndHJpYW5nbGV1cDogJ1xcdTI1QjMnLFxuXHRiaWd1cGx1czogJ1xcdTJBMDQnLFxuXHRiaWd2ZWU6ICdcXHUyMkMxJyxcblx0Ymlnd2VkZ2U6ICdcXHUyMkMwJyxcblx0Ymthcm93OiAnXFx1MjkwRCcsXG5cdGJsYWNrbG96ZW5nZTogJ1xcdTI5RUInLFxuXHRibGFja3NxdWFyZTogJ1xcdTI1QUEnLFxuXHRibGFja3RyaWFuZ2xlOiAnXFx1MjVCNCcsXG5cdGJsYWNrdHJpYW5nbGVkb3duOiAnXFx1MjVCRScsXG5cdGJsYWNrdHJpYW5nbGVsZWZ0OiAnXFx1MjVDMicsXG5cdGJsYWNrdHJpYW5nbGVyaWdodDogJ1xcdTI1QjgnLFxuXHRibGFuazogJ1xcdTI0MjMnLFxuXHRibGsxMjogJ1xcdTI1OTInLFxuXHRibGsxNDogJ1xcdTI1OTEnLFxuXHRibGszNDogJ1xcdTI1OTMnLFxuXHRibG9jazogJ1xcdTI1ODgnLFxuXHRibmU6ICdcXHUwMDNEXFx1MjBFNScsXG5cdGJuZXF1aXY6ICdcXHUyMjYxXFx1MjBFNScsXG5cdGJOb3Q6ICdcXHUyQUVEJyxcblx0Ym5vdDogJ1xcdTIzMTAnLFxuXHRCb3BmOiAnXFx1RDgzNVxcdUREMzknLFxuXHRib3BmOiAnXFx1RDgzNVxcdURENTMnLFxuXHRib3Q6ICdcXHUyMkE1Jyxcblx0Ym90dG9tOiAnXFx1MjJBNScsXG5cdGJvd3RpZTogJ1xcdTIyQzgnLFxuXHRib3hib3g6ICdcXHUyOUM5Jyxcblx0Ym94REw6ICdcXHUyNTU3Jyxcblx0Ym94RGw6ICdcXHUyNTU2Jyxcblx0Ym94ZEw6ICdcXHUyNTU1Jyxcblx0Ym94ZGw6ICdcXHUyNTEwJyxcblx0Ym94RFI6ICdcXHUyNTU0Jyxcblx0Ym94RHI6ICdcXHUyNTUzJyxcblx0Ym94ZFI6ICdcXHUyNTUyJyxcblx0Ym94ZHI6ICdcXHUyNTBDJyxcblx0Ym94SDogJ1xcdTI1NTAnLFxuXHRib3hoOiAnXFx1MjUwMCcsXG5cdGJveEhEOiAnXFx1MjU2NicsXG5cdGJveEhkOiAnXFx1MjU2NCcsXG5cdGJveGhEOiAnXFx1MjU2NScsXG5cdGJveGhkOiAnXFx1MjUyQycsXG5cdGJveEhVOiAnXFx1MjU2OScsXG5cdGJveEh1OiAnXFx1MjU2NycsXG5cdGJveGhVOiAnXFx1MjU2OCcsXG5cdGJveGh1OiAnXFx1MjUzNCcsXG5cdGJveG1pbnVzOiAnXFx1MjI5RicsXG5cdGJveHBsdXM6ICdcXHUyMjlFJyxcblx0Ym94dGltZXM6ICdcXHUyMkEwJyxcblx0Ym94VUw6ICdcXHUyNTVEJyxcblx0Ym94VWw6ICdcXHUyNTVDJyxcblx0Ym94dUw6ICdcXHUyNTVCJyxcblx0Ym94dWw6ICdcXHUyNTE4Jyxcblx0Ym94VVI6ICdcXHUyNTVBJyxcblx0Ym94VXI6ICdcXHUyNTU5Jyxcblx0Ym94dVI6ICdcXHUyNTU4Jyxcblx0Ym94dXI6ICdcXHUyNTE0Jyxcblx0Ym94VjogJ1xcdTI1NTEnLFxuXHRib3h2OiAnXFx1MjUwMicsXG5cdGJveFZIOiAnXFx1MjU2QycsXG5cdGJveFZoOiAnXFx1MjU2QicsXG5cdGJveHZIOiAnXFx1MjU2QScsXG5cdGJveHZoOiAnXFx1MjUzQycsXG5cdGJveFZMOiAnXFx1MjU2MycsXG5cdGJveFZsOiAnXFx1MjU2MicsXG5cdGJveHZMOiAnXFx1MjU2MScsXG5cdGJveHZsOiAnXFx1MjUyNCcsXG5cdGJveFZSOiAnXFx1MjU2MCcsXG5cdGJveFZyOiAnXFx1MjU1RicsXG5cdGJveHZSOiAnXFx1MjU1RScsXG5cdGJveHZyOiAnXFx1MjUxQycsXG5cdGJwcmltZTogJ1xcdTIwMzUnLFxuXHRCcmV2ZTogJ1xcdTAyRDgnLFxuXHRicmV2ZTogJ1xcdTAyRDgnLFxuXHRicnZiYXI6ICdcXHUwMEE2Jyxcblx0QnNjcjogJ1xcdTIxMkMnLFxuXHRic2NyOiAnXFx1RDgzNVxcdURDQjcnLFxuXHRic2VtaTogJ1xcdTIwNEYnLFxuXHRic2ltOiAnXFx1MjIzRCcsXG5cdGJzaW1lOiAnXFx1MjJDRCcsXG5cdGJzb2w6ICdcXHUwMDVDJyxcblx0YnNvbGI6ICdcXHUyOUM1Jyxcblx0YnNvbGhzdWI6ICdcXHUyN0M4Jyxcblx0YnVsbDogJ1xcdTIwMjInLFxuXHRidWxsZXQ6ICdcXHUyMDIyJyxcblx0YnVtcDogJ1xcdTIyNEUnLFxuXHRidW1wRTogJ1xcdTJBQUUnLFxuXHRidW1wZTogJ1xcdTIyNEYnLFxuXHRCdW1wZXE6ICdcXHUyMjRFJyxcblx0YnVtcGVxOiAnXFx1MjI0RicsXG5cdENhY3V0ZTogJ1xcdTAxMDYnLFxuXHRjYWN1dGU6ICdcXHUwMTA3Jyxcblx0Q2FwOiAnXFx1MjJEMicsXG5cdGNhcDogJ1xcdTIyMjknLFxuXHRjYXBhbmQ6ICdcXHUyQTQ0Jyxcblx0Y2FwYnJjdXA6ICdcXHUyQTQ5Jyxcblx0Y2FwY2FwOiAnXFx1MkE0QicsXG5cdGNhcGN1cDogJ1xcdTJBNDcnLFxuXHRjYXBkb3Q6ICdcXHUyQTQwJyxcblx0Q2FwaXRhbERpZmZlcmVudGlhbEQ6ICdcXHUyMTQ1Jyxcblx0Y2FwczogJ1xcdTIyMjlcXHVGRTAwJyxcblx0Y2FyZXQ6ICdcXHUyMDQxJyxcblx0Y2Fyb246ICdcXHUwMkM3Jyxcblx0Q2F5bGV5czogJ1xcdTIxMkQnLFxuXHRjY2FwczogJ1xcdTJBNEQnLFxuXHRDY2Fyb246ICdcXHUwMTBDJyxcblx0Y2Nhcm9uOiAnXFx1MDEwRCcsXG5cdENjZWRpbDogJ1xcdTAwQzcnLFxuXHRjY2VkaWw6ICdcXHUwMEU3Jyxcblx0Q2NpcmM6ICdcXHUwMTA4Jyxcblx0Y2NpcmM6ICdcXHUwMTA5Jyxcblx0Q2NvbmludDogJ1xcdTIyMzAnLFxuXHRjY3VwczogJ1xcdTJBNEMnLFxuXHRjY3Vwc3NtOiAnXFx1MkE1MCcsXG5cdENkb3Q6ICdcXHUwMTBBJyxcblx0Y2RvdDogJ1xcdTAxMEInLFxuXHRjZWRpbDogJ1xcdTAwQjgnLFxuXHRDZWRpbGxhOiAnXFx1MDBCOCcsXG5cdGNlbXB0eXY6ICdcXHUyOUIyJyxcblx0Y2VudDogJ1xcdTAwQTInLFxuXHRDZW50ZXJEb3Q6ICdcXHUwMEI3Jyxcblx0Y2VudGVyZG90OiAnXFx1MDBCNycsXG5cdENmcjogJ1xcdTIxMkQnLFxuXHRjZnI6ICdcXHVEODM1XFx1REQyMCcsXG5cdENIY3k6ICdcXHUwNDI3Jyxcblx0Y2hjeTogJ1xcdTA0NDcnLFxuXHRjaGVjazogJ1xcdTI3MTMnLFxuXHRjaGVja21hcms6ICdcXHUyNzEzJyxcblx0Q2hpOiAnXFx1MDNBNycsXG5cdGNoaTogJ1xcdTAzQzcnLFxuXHRjaXI6ICdcXHUyNUNCJyxcblx0Y2lyYzogJ1xcdTAyQzYnLFxuXHRjaXJjZXE6ICdcXHUyMjU3Jyxcblx0Y2lyY2xlYXJyb3dsZWZ0OiAnXFx1MjFCQScsXG5cdGNpcmNsZWFycm93cmlnaHQ6ICdcXHUyMUJCJyxcblx0Y2lyY2xlZGFzdDogJ1xcdTIyOUInLFxuXHRjaXJjbGVkY2lyYzogJ1xcdTIyOUEnLFxuXHRjaXJjbGVkZGFzaDogJ1xcdTIyOUQnLFxuXHRDaXJjbGVEb3Q6ICdcXHUyMjk5Jyxcblx0Y2lyY2xlZFI6ICdcXHUwMEFFJyxcblx0Y2lyY2xlZFM6ICdcXHUyNEM4Jyxcblx0Q2lyY2xlTWludXM6ICdcXHUyMjk2Jyxcblx0Q2lyY2xlUGx1czogJ1xcdTIyOTUnLFxuXHRDaXJjbGVUaW1lczogJ1xcdTIyOTcnLFxuXHRjaXJFOiAnXFx1MjlDMycsXG5cdGNpcmU6ICdcXHUyMjU3Jyxcblx0Y2lyZm5pbnQ6ICdcXHUyQTEwJyxcblx0Y2lybWlkOiAnXFx1MkFFRicsXG5cdGNpcnNjaXI6ICdcXHUyOUMyJyxcblx0Q2xvY2t3aXNlQ29udG91ckludGVncmFsOiAnXFx1MjIzMicsXG5cdENsb3NlQ3VybHlEb3VibGVRdW90ZTogJ1xcdTIwMUQnLFxuXHRDbG9zZUN1cmx5UXVvdGU6ICdcXHUyMDE5Jyxcblx0Y2x1YnM6ICdcXHUyNjYzJyxcblx0Y2x1YnN1aXQ6ICdcXHUyNjYzJyxcblx0Q29sb246ICdcXHUyMjM3Jyxcblx0Y29sb246ICdcXHUwMDNBJyxcblx0Q29sb25lOiAnXFx1MkE3NCcsXG5cdGNvbG9uZTogJ1xcdTIyNTQnLFxuXHRjb2xvbmVxOiAnXFx1MjI1NCcsXG5cdGNvbW1hOiAnXFx1MDAyQycsXG5cdGNvbW1hdDogJ1xcdTAwNDAnLFxuXHRjb21wOiAnXFx1MjIwMScsXG5cdGNvbXBmbjogJ1xcdTIyMTgnLFxuXHRjb21wbGVtZW50OiAnXFx1MjIwMScsXG5cdGNvbXBsZXhlczogJ1xcdTIxMDInLFxuXHRjb25nOiAnXFx1MjI0NScsXG5cdGNvbmdkb3Q6ICdcXHUyQTZEJyxcblx0Q29uZ3J1ZW50OiAnXFx1MjI2MScsXG5cdENvbmludDogJ1xcdTIyMkYnLFxuXHRjb25pbnQ6ICdcXHUyMjJFJyxcblx0Q29udG91ckludGVncmFsOiAnXFx1MjIyRScsXG5cdENvcGY6ICdcXHUyMTAyJyxcblx0Y29wZjogJ1xcdUQ4MzVcXHVERDU0Jyxcblx0Y29wcm9kOiAnXFx1MjIxMCcsXG5cdENvcHJvZHVjdDogJ1xcdTIyMTAnLFxuXHRDT1BZOiAnXFx1MDBBOScsXG5cdGNvcHk6ICdcXHUwMEE5Jyxcblx0Y29weXNyOiAnXFx1MjExNycsXG5cdENvdW50ZXJDbG9ja3dpc2VDb250b3VySW50ZWdyYWw6ICdcXHUyMjMzJyxcblx0Y3JhcnI6ICdcXHUyMUI1Jyxcblx0Q3Jvc3M6ICdcXHUyQTJGJyxcblx0Y3Jvc3M6ICdcXHUyNzE3Jyxcblx0Q3NjcjogJ1xcdUQ4MzVcXHVEQzlFJyxcblx0Y3NjcjogJ1xcdUQ4MzVcXHVEQ0I4Jyxcblx0Y3N1YjogJ1xcdTJBQ0YnLFxuXHRjc3ViZTogJ1xcdTJBRDEnLFxuXHRjc3VwOiAnXFx1MkFEMCcsXG5cdGNzdXBlOiAnXFx1MkFEMicsXG5cdGN0ZG90OiAnXFx1MjJFRicsXG5cdGN1ZGFycmw6ICdcXHUyOTM4Jyxcblx0Y3VkYXJycjogJ1xcdTI5MzUnLFxuXHRjdWVwcjogJ1xcdTIyREUnLFxuXHRjdWVzYzogJ1xcdTIyREYnLFxuXHRjdWxhcnI6ICdcXHUyMUI2Jyxcblx0Y3VsYXJycDogJ1xcdTI5M0QnLFxuXHRDdXA6ICdcXHUyMkQzJyxcblx0Y3VwOiAnXFx1MjIyQScsXG5cdGN1cGJyY2FwOiAnXFx1MkE0OCcsXG5cdEN1cENhcDogJ1xcdTIyNEQnLFxuXHRjdXBjYXA6ICdcXHUyQTQ2Jyxcblx0Y3VwY3VwOiAnXFx1MkE0QScsXG5cdGN1cGRvdDogJ1xcdTIyOEQnLFxuXHRjdXBvcjogJ1xcdTJBNDUnLFxuXHRjdXBzOiAnXFx1MjIyQVxcdUZFMDAnLFxuXHRjdXJhcnI6ICdcXHUyMUI3Jyxcblx0Y3VyYXJybTogJ1xcdTI5M0MnLFxuXHRjdXJseWVxcHJlYzogJ1xcdTIyREUnLFxuXHRjdXJseWVxc3VjYzogJ1xcdTIyREYnLFxuXHRjdXJseXZlZTogJ1xcdTIyQ0UnLFxuXHRjdXJseXdlZGdlOiAnXFx1MjJDRicsXG5cdGN1cnJlbjogJ1xcdTAwQTQnLFxuXHRjdXJ2ZWFycm93bGVmdDogJ1xcdTIxQjYnLFxuXHRjdXJ2ZWFycm93cmlnaHQ6ICdcXHUyMUI3Jyxcblx0Y3V2ZWU6ICdcXHUyMkNFJyxcblx0Y3V3ZWQ6ICdcXHUyMkNGJyxcblx0Y3djb25pbnQ6ICdcXHUyMjMyJyxcblx0Y3dpbnQ6ICdcXHUyMjMxJyxcblx0Y3lsY3R5OiAnXFx1MjMyRCcsXG5cdERhZ2dlcjogJ1xcdTIwMjEnLFxuXHRkYWdnZXI6ICdcXHUyMDIwJyxcblx0ZGFsZXRoOiAnXFx1MjEzOCcsXG5cdERhcnI6ICdcXHUyMUExJyxcblx0ZEFycjogJ1xcdTIxRDMnLFxuXHRkYXJyOiAnXFx1MjE5MycsXG5cdGRhc2g6ICdcXHUyMDEwJyxcblx0RGFzaHY6ICdcXHUyQUU0Jyxcblx0ZGFzaHY6ICdcXHUyMkEzJyxcblx0ZGJrYXJvdzogJ1xcdTI5MEYnLFxuXHRkYmxhYzogJ1xcdTAyREQnLFxuXHREY2Fyb246ICdcXHUwMTBFJyxcblx0ZGNhcm9uOiAnXFx1MDEwRicsXG5cdERjeTogJ1xcdTA0MTQnLFxuXHRkY3k6ICdcXHUwNDM0Jyxcblx0REQ6ICdcXHUyMTQ1Jyxcblx0ZGQ6ICdcXHUyMTQ2Jyxcblx0ZGRhZ2dlcjogJ1xcdTIwMjEnLFxuXHRkZGFycjogJ1xcdTIxQ0EnLFxuXHRERG90cmFoZDogJ1xcdTI5MTEnLFxuXHRkZG90c2VxOiAnXFx1MkE3NycsXG5cdGRlZzogJ1xcdTAwQjAnLFxuXHREZWw6ICdcXHUyMjA3Jyxcblx0RGVsdGE6ICdcXHUwMzk0Jyxcblx0ZGVsdGE6ICdcXHUwM0I0Jyxcblx0ZGVtcHR5djogJ1xcdTI5QjEnLFxuXHRkZmlzaHQ6ICdcXHUyOTdGJyxcblx0RGZyOiAnXFx1RDgzNVxcdUREMDcnLFxuXHRkZnI6ICdcXHVEODM1XFx1REQyMScsXG5cdGRIYXI6ICdcXHUyOTY1Jyxcblx0ZGhhcmw6ICdcXHUyMUMzJyxcblx0ZGhhcnI6ICdcXHUyMUMyJyxcblx0RGlhY3JpdGljYWxBY3V0ZTogJ1xcdTAwQjQnLFxuXHREaWFjcml0aWNhbERvdDogJ1xcdTAyRDknLFxuXHREaWFjcml0aWNhbERvdWJsZUFjdXRlOiAnXFx1MDJERCcsXG5cdERpYWNyaXRpY2FsR3JhdmU6ICdcXHUwMDYwJyxcblx0RGlhY3JpdGljYWxUaWxkZTogJ1xcdTAyREMnLFxuXHRkaWFtOiAnXFx1MjJDNCcsXG5cdERpYW1vbmQ6ICdcXHUyMkM0Jyxcblx0ZGlhbW9uZDogJ1xcdTIyQzQnLFxuXHRkaWFtb25kc3VpdDogJ1xcdTI2NjYnLFxuXHRkaWFtczogJ1xcdTI2NjYnLFxuXHRkaWU6ICdcXHUwMEE4Jyxcblx0RGlmZmVyZW50aWFsRDogJ1xcdTIxNDYnLFxuXHRkaWdhbW1hOiAnXFx1MDNERCcsXG5cdGRpc2luOiAnXFx1MjJGMicsXG5cdGRpdjogJ1xcdTAwRjcnLFxuXHRkaXZpZGU6ICdcXHUwMEY3Jyxcblx0ZGl2aWRlb250aW1lczogJ1xcdTIyQzcnLFxuXHRkaXZvbng6ICdcXHUyMkM3Jyxcblx0REpjeTogJ1xcdTA0MDInLFxuXHRkamN5OiAnXFx1MDQ1MicsXG5cdGRsY29ybjogJ1xcdTIzMUUnLFxuXHRkbGNyb3A6ICdcXHUyMzBEJyxcblx0ZG9sbGFyOiAnXFx1MDAyNCcsXG5cdERvcGY6ICdcXHVEODM1XFx1REQzQicsXG5cdGRvcGY6ICdcXHVEODM1XFx1REQ1NScsXG5cdERvdDogJ1xcdTAwQTgnLFxuXHRkb3Q6ICdcXHUwMkQ5Jyxcblx0RG90RG90OiAnXFx1MjBEQycsXG5cdGRvdGVxOiAnXFx1MjI1MCcsXG5cdGRvdGVxZG90OiAnXFx1MjI1MScsXG5cdERvdEVxdWFsOiAnXFx1MjI1MCcsXG5cdGRvdG1pbnVzOiAnXFx1MjIzOCcsXG5cdGRvdHBsdXM6ICdcXHUyMjE0Jyxcblx0ZG90c3F1YXJlOiAnXFx1MjJBMScsXG5cdGRvdWJsZWJhcndlZGdlOiAnXFx1MjMwNicsXG5cdERvdWJsZUNvbnRvdXJJbnRlZ3JhbDogJ1xcdTIyMkYnLFxuXHREb3VibGVEb3Q6ICdcXHUwMEE4Jyxcblx0RG91YmxlRG93bkFycm93OiAnXFx1MjFEMycsXG5cdERvdWJsZUxlZnRBcnJvdzogJ1xcdTIxRDAnLFxuXHREb3VibGVMZWZ0UmlnaHRBcnJvdzogJ1xcdTIxRDQnLFxuXHREb3VibGVMZWZ0VGVlOiAnXFx1MkFFNCcsXG5cdERvdWJsZUxvbmdMZWZ0QXJyb3c6ICdcXHUyN0Y4Jyxcblx0RG91YmxlTG9uZ0xlZnRSaWdodEFycm93OiAnXFx1MjdGQScsXG5cdERvdWJsZUxvbmdSaWdodEFycm93OiAnXFx1MjdGOScsXG5cdERvdWJsZVJpZ2h0QXJyb3c6ICdcXHUyMUQyJyxcblx0RG91YmxlUmlnaHRUZWU6ICdcXHUyMkE4Jyxcblx0RG91YmxlVXBBcnJvdzogJ1xcdTIxRDEnLFxuXHREb3VibGVVcERvd25BcnJvdzogJ1xcdTIxRDUnLFxuXHREb3VibGVWZXJ0aWNhbEJhcjogJ1xcdTIyMjUnLFxuXHREb3duQXJyb3c6ICdcXHUyMTkzJyxcblx0RG93bmFycm93OiAnXFx1MjFEMycsXG5cdGRvd25hcnJvdzogJ1xcdTIxOTMnLFxuXHREb3duQXJyb3dCYXI6ICdcXHUyOTEzJyxcblx0RG93bkFycm93VXBBcnJvdzogJ1xcdTIxRjUnLFxuXHREb3duQnJldmU6ICdcXHUwMzExJyxcblx0ZG93bmRvd25hcnJvd3M6ICdcXHUyMUNBJyxcblx0ZG93bmhhcnBvb25sZWZ0OiAnXFx1MjFDMycsXG5cdGRvd25oYXJwb29ucmlnaHQ6ICdcXHUyMUMyJyxcblx0RG93bkxlZnRSaWdodFZlY3RvcjogJ1xcdTI5NTAnLFxuXHREb3duTGVmdFRlZVZlY3RvcjogJ1xcdTI5NUUnLFxuXHREb3duTGVmdFZlY3RvcjogJ1xcdTIxQkQnLFxuXHREb3duTGVmdFZlY3RvckJhcjogJ1xcdTI5NTYnLFxuXHREb3duUmlnaHRUZWVWZWN0b3I6ICdcXHUyOTVGJyxcblx0RG93blJpZ2h0VmVjdG9yOiAnXFx1MjFDMScsXG5cdERvd25SaWdodFZlY3RvckJhcjogJ1xcdTI5NTcnLFxuXHREb3duVGVlOiAnXFx1MjJBNCcsXG5cdERvd25UZWVBcnJvdzogJ1xcdTIxQTcnLFxuXHRkcmJrYXJvdzogJ1xcdTI5MTAnLFxuXHRkcmNvcm46ICdcXHUyMzFGJyxcblx0ZHJjcm9wOiAnXFx1MjMwQycsXG5cdERzY3I6ICdcXHVEODM1XFx1REM5RicsXG5cdGRzY3I6ICdcXHVEODM1XFx1RENCOScsXG5cdERTY3k6ICdcXHUwNDA1Jyxcblx0ZHNjeTogJ1xcdTA0NTUnLFxuXHRkc29sOiAnXFx1MjlGNicsXG5cdERzdHJvazogJ1xcdTAxMTAnLFxuXHRkc3Ryb2s6ICdcXHUwMTExJyxcblx0ZHRkb3Q6ICdcXHUyMkYxJyxcblx0ZHRyaTogJ1xcdTI1QkYnLFxuXHRkdHJpZjogJ1xcdTI1QkUnLFxuXHRkdWFycjogJ1xcdTIxRjUnLFxuXHRkdWhhcjogJ1xcdTI5NkYnLFxuXHRkd2FuZ2xlOiAnXFx1MjlBNicsXG5cdERaY3k6ICdcXHUwNDBGJyxcblx0ZHpjeTogJ1xcdTA0NUYnLFxuXHRkemlncmFycjogJ1xcdTI3RkYnLFxuXHRFYWN1dGU6ICdcXHUwMEM5Jyxcblx0ZWFjdXRlOiAnXFx1MDBFOScsXG5cdGVhc3RlcjogJ1xcdTJBNkUnLFxuXHRFY2Fyb246ICdcXHUwMTFBJyxcblx0ZWNhcm9uOiAnXFx1MDExQicsXG5cdGVjaXI6ICdcXHUyMjU2Jyxcblx0RWNpcmM6ICdcXHUwMENBJyxcblx0ZWNpcmM6ICdcXHUwMEVBJyxcblx0ZWNvbG9uOiAnXFx1MjI1NScsXG5cdEVjeTogJ1xcdTA0MkQnLFxuXHRlY3k6ICdcXHUwNDREJyxcblx0ZUREb3Q6ICdcXHUyQTc3Jyxcblx0RWRvdDogJ1xcdTAxMTYnLFxuXHRlRG90OiAnXFx1MjI1MScsXG5cdGVkb3Q6ICdcXHUwMTE3Jyxcblx0ZWU6ICdcXHUyMTQ3Jyxcblx0ZWZEb3Q6ICdcXHUyMjUyJyxcblx0RWZyOiAnXFx1RDgzNVxcdUREMDgnLFxuXHRlZnI6ICdcXHVEODM1XFx1REQyMicsXG5cdGVnOiAnXFx1MkE5QScsXG5cdEVncmF2ZTogJ1xcdTAwQzgnLFxuXHRlZ3JhdmU6ICdcXHUwMEU4Jyxcblx0ZWdzOiAnXFx1MkE5NicsXG5cdGVnc2RvdDogJ1xcdTJBOTgnLFxuXHRlbDogJ1xcdTJBOTknLFxuXHRFbGVtZW50OiAnXFx1MjIwOCcsXG5cdGVsaW50ZXJzOiAnXFx1MjNFNycsXG5cdGVsbDogJ1xcdTIxMTMnLFxuXHRlbHM6ICdcXHUyQTk1Jyxcblx0ZWxzZG90OiAnXFx1MkE5NycsXG5cdEVtYWNyOiAnXFx1MDExMicsXG5cdGVtYWNyOiAnXFx1MDExMycsXG5cdGVtcHR5OiAnXFx1MjIwNScsXG5cdGVtcHR5c2V0OiAnXFx1MjIwNScsXG5cdEVtcHR5U21hbGxTcXVhcmU6ICdcXHUyNUZCJyxcblx0ZW1wdHl2OiAnXFx1MjIwNScsXG5cdEVtcHR5VmVyeVNtYWxsU3F1YXJlOiAnXFx1MjVBQicsXG5cdGVtc3A6ICdcXHUyMDAzJyxcblx0ZW1zcDEzOiAnXFx1MjAwNCcsXG5cdGVtc3AxNDogJ1xcdTIwMDUnLFxuXHRFTkc6ICdcXHUwMTRBJyxcblx0ZW5nOiAnXFx1MDE0QicsXG5cdGVuc3A6ICdcXHUyMDAyJyxcblx0RW9nb246ICdcXHUwMTE4Jyxcblx0ZW9nb246ICdcXHUwMTE5Jyxcblx0RW9wZjogJ1xcdUQ4MzVcXHVERDNDJyxcblx0ZW9wZjogJ1xcdUQ4MzVcXHVERDU2Jyxcblx0ZXBhcjogJ1xcdTIyRDUnLFxuXHRlcGFyc2w6ICdcXHUyOUUzJyxcblx0ZXBsdXM6ICdcXHUyQTcxJyxcblx0ZXBzaTogJ1xcdTAzQjUnLFxuXHRFcHNpbG9uOiAnXFx1MDM5NScsXG5cdGVwc2lsb246ICdcXHUwM0I1Jyxcblx0ZXBzaXY6ICdcXHUwM0Y1Jyxcblx0ZXFjaXJjOiAnXFx1MjI1NicsXG5cdGVxY29sb246ICdcXHUyMjU1Jyxcblx0ZXFzaW06ICdcXHUyMjQyJyxcblx0ZXFzbGFudGd0cjogJ1xcdTJBOTYnLFxuXHRlcXNsYW50bGVzczogJ1xcdTJBOTUnLFxuXHRFcXVhbDogJ1xcdTJBNzUnLFxuXHRlcXVhbHM6ICdcXHUwMDNEJyxcblx0RXF1YWxUaWxkZTogJ1xcdTIyNDInLFxuXHRlcXVlc3Q6ICdcXHUyMjVGJyxcblx0RXF1aWxpYnJpdW06ICdcXHUyMUNDJyxcblx0ZXF1aXY6ICdcXHUyMjYxJyxcblx0ZXF1aXZERDogJ1xcdTJBNzgnLFxuXHRlcXZwYXJzbDogJ1xcdTI5RTUnLFxuXHRlcmFycjogJ1xcdTI5NzEnLFxuXHRlckRvdDogJ1xcdTIyNTMnLFxuXHRFc2NyOiAnXFx1MjEzMCcsXG5cdGVzY3I6ICdcXHUyMTJGJyxcblx0ZXNkb3Q6ICdcXHUyMjUwJyxcblx0RXNpbTogJ1xcdTJBNzMnLFxuXHRlc2ltOiAnXFx1MjI0MicsXG5cdEV0YTogJ1xcdTAzOTcnLFxuXHRldGE6ICdcXHUwM0I3Jyxcblx0RVRIOiAnXFx1MDBEMCcsXG5cdGV0aDogJ1xcdTAwRjAnLFxuXHRFdW1sOiAnXFx1MDBDQicsXG5cdGV1bWw6ICdcXHUwMEVCJyxcblx0ZXVybzogJ1xcdTIwQUMnLFxuXHRleGNsOiAnXFx1MDAyMScsXG5cdGV4aXN0OiAnXFx1MjIwMycsXG5cdEV4aXN0czogJ1xcdTIyMDMnLFxuXHRleHBlY3RhdGlvbjogJ1xcdTIxMzAnLFxuXHRFeHBvbmVudGlhbEU6ICdcXHUyMTQ3Jyxcblx0ZXhwb25lbnRpYWxlOiAnXFx1MjE0NycsXG5cdGZhbGxpbmdkb3RzZXE6ICdcXHUyMjUyJyxcblx0RmN5OiAnXFx1MDQyNCcsXG5cdGZjeTogJ1xcdTA0NDQnLFxuXHRmZW1hbGU6ICdcXHUyNjQwJyxcblx0ZmZpbGlnOiAnXFx1RkIwMycsXG5cdGZmbGlnOiAnXFx1RkIwMCcsXG5cdGZmbGxpZzogJ1xcdUZCMDQnLFxuXHRGZnI6ICdcXHVEODM1XFx1REQwOScsXG5cdGZmcjogJ1xcdUQ4MzVcXHVERDIzJyxcblx0ZmlsaWc6ICdcXHVGQjAxJyxcblx0RmlsbGVkU21hbGxTcXVhcmU6ICdcXHUyNUZDJyxcblx0RmlsbGVkVmVyeVNtYWxsU3F1YXJlOiAnXFx1MjVBQScsXG5cdGZqbGlnOiAnXFx1MDA2NlxcdTAwNkEnLFxuXHRmbGF0OiAnXFx1MjY2RCcsXG5cdGZsbGlnOiAnXFx1RkIwMicsXG5cdGZsdG5zOiAnXFx1MjVCMScsXG5cdGZub2Y6ICdcXHUwMTkyJyxcblx0Rm9wZjogJ1xcdUQ4MzVcXHVERDNEJyxcblx0Zm9wZjogJ1xcdUQ4MzVcXHVERDU3Jyxcblx0Rm9yQWxsOiAnXFx1MjIwMCcsXG5cdGZvcmFsbDogJ1xcdTIyMDAnLFxuXHRmb3JrOiAnXFx1MjJENCcsXG5cdGZvcmt2OiAnXFx1MkFEOScsXG5cdEZvdXJpZXJ0cmY6ICdcXHUyMTMxJyxcblx0ZnBhcnRpbnQ6ICdcXHUyQTBEJyxcblx0ZnJhYzEyOiAnXFx1MDBCRCcsXG5cdGZyYWMxMzogJ1xcdTIxNTMnLFxuXHRmcmFjMTQ6ICdcXHUwMEJDJyxcblx0ZnJhYzE1OiAnXFx1MjE1NScsXG5cdGZyYWMxNjogJ1xcdTIxNTknLFxuXHRmcmFjMTg6ICdcXHUyMTVCJyxcblx0ZnJhYzIzOiAnXFx1MjE1NCcsXG5cdGZyYWMyNTogJ1xcdTIxNTYnLFxuXHRmcmFjMzQ6ICdcXHUwMEJFJyxcblx0ZnJhYzM1OiAnXFx1MjE1NycsXG5cdGZyYWMzODogJ1xcdTIxNUMnLFxuXHRmcmFjNDU6ICdcXHUyMTU4Jyxcblx0ZnJhYzU2OiAnXFx1MjE1QScsXG5cdGZyYWM1ODogJ1xcdTIxNUQnLFxuXHRmcmFjNzg6ICdcXHUyMTVFJyxcblx0ZnJhc2w6ICdcXHUyMDQ0Jyxcblx0ZnJvd246ICdcXHUyMzIyJyxcblx0RnNjcjogJ1xcdTIxMzEnLFxuXHRmc2NyOiAnXFx1RDgzNVxcdURDQkInLFxuXHRnYWN1dGU6ICdcXHUwMUY1Jyxcblx0R2FtbWE6ICdcXHUwMzkzJyxcblx0Z2FtbWE6ICdcXHUwM0IzJyxcblx0R2FtbWFkOiAnXFx1MDNEQycsXG5cdGdhbW1hZDogJ1xcdTAzREQnLFxuXHRnYXA6ICdcXHUyQTg2Jyxcblx0R2JyZXZlOiAnXFx1MDExRScsXG5cdGdicmV2ZTogJ1xcdTAxMUYnLFxuXHRHY2VkaWw6ICdcXHUwMTIyJyxcblx0R2NpcmM6ICdcXHUwMTFDJyxcblx0Z2NpcmM6ICdcXHUwMTFEJyxcblx0R2N5OiAnXFx1MDQxMycsXG5cdGdjeTogJ1xcdTA0MzMnLFxuXHRHZG90OiAnXFx1MDEyMCcsXG5cdGdkb3Q6ICdcXHUwMTIxJyxcblx0Z0U6ICdcXHUyMjY3Jyxcblx0Z2U6ICdcXHUyMjY1Jyxcblx0Z0VsOiAnXFx1MkE4QycsXG5cdGdlbDogJ1xcdTIyREInLFxuXHRnZXE6ICdcXHUyMjY1Jyxcblx0Z2VxcTogJ1xcdTIyNjcnLFxuXHRnZXFzbGFudDogJ1xcdTJBN0UnLFxuXHRnZXM6ICdcXHUyQTdFJyxcblx0Z2VzY2M6ICdcXHUyQUE5Jyxcblx0Z2VzZG90OiAnXFx1MkE4MCcsXG5cdGdlc2RvdG86ICdcXHUyQTgyJyxcblx0Z2VzZG90b2w6ICdcXHUyQTg0Jyxcblx0Z2VzbDogJ1xcdTIyREJcXHVGRTAwJyxcblx0Z2VzbGVzOiAnXFx1MkE5NCcsXG5cdEdmcjogJ1xcdUQ4MzVcXHVERDBBJyxcblx0Z2ZyOiAnXFx1RDgzNVxcdUREMjQnLFxuXHRHZzogJ1xcdTIyRDknLFxuXHRnZzogJ1xcdTIyNkInLFxuXHRnZ2c6ICdcXHUyMkQ5Jyxcblx0Z2ltZWw6ICdcXHUyMTM3Jyxcblx0R0pjeTogJ1xcdTA0MDMnLFxuXHRnamN5OiAnXFx1MDQ1MycsXG5cdGdsOiAnXFx1MjI3NycsXG5cdGdsYTogJ1xcdTJBQTUnLFxuXHRnbEU6ICdcXHUyQTkyJyxcblx0Z2xqOiAnXFx1MkFBNCcsXG5cdGduYXA6ICdcXHUyQThBJyxcblx0Z25hcHByb3g6ICdcXHUyQThBJyxcblx0Z25FOiAnXFx1MjI2OScsXG5cdGduZTogJ1xcdTJBODgnLFxuXHRnbmVxOiAnXFx1MkE4OCcsXG5cdGduZXFxOiAnXFx1MjI2OScsXG5cdGduc2ltOiAnXFx1MjJFNycsXG5cdEdvcGY6ICdcXHVEODM1XFx1REQzRScsXG5cdGdvcGY6ICdcXHVEODM1XFx1REQ1OCcsXG5cdGdyYXZlOiAnXFx1MDA2MCcsXG5cdEdyZWF0ZXJFcXVhbDogJ1xcdTIyNjUnLFxuXHRHcmVhdGVyRXF1YWxMZXNzOiAnXFx1MjJEQicsXG5cdEdyZWF0ZXJGdWxsRXF1YWw6ICdcXHUyMjY3Jyxcblx0R3JlYXRlckdyZWF0ZXI6ICdcXHUyQUEyJyxcblx0R3JlYXRlckxlc3M6ICdcXHUyMjc3Jyxcblx0R3JlYXRlclNsYW50RXF1YWw6ICdcXHUyQTdFJyxcblx0R3JlYXRlclRpbGRlOiAnXFx1MjI3MycsXG5cdEdzY3I6ICdcXHVEODM1XFx1RENBMicsXG5cdGdzY3I6ICdcXHUyMTBBJyxcblx0Z3NpbTogJ1xcdTIyNzMnLFxuXHRnc2ltZTogJ1xcdTJBOEUnLFxuXHRnc2ltbDogJ1xcdTJBOTAnLFxuXHRHdDogJ1xcdTIyNkInLFxuXHRHVDogJ1xcdTAwM0UnLFxuXHRndDogJ1xcdTAwM0UnLFxuXHRndGNjOiAnXFx1MkFBNycsXG5cdGd0Y2lyOiAnXFx1MkE3QScsXG5cdGd0ZG90OiAnXFx1MjJENycsXG5cdGd0bFBhcjogJ1xcdTI5OTUnLFxuXHRndHF1ZXN0OiAnXFx1MkE3QycsXG5cdGd0cmFwcHJveDogJ1xcdTJBODYnLFxuXHRndHJhcnI6ICdcXHUyOTc4Jyxcblx0Z3RyZG90OiAnXFx1MjJENycsXG5cdGd0cmVxbGVzczogJ1xcdTIyREInLFxuXHRndHJlcXFsZXNzOiAnXFx1MkE4QycsXG5cdGd0cmxlc3M6ICdcXHUyMjc3Jyxcblx0Z3Ryc2ltOiAnXFx1MjI3MycsXG5cdGd2ZXJ0bmVxcTogJ1xcdTIyNjlcXHVGRTAwJyxcblx0Z3ZuRTogJ1xcdTIyNjlcXHVGRTAwJyxcblx0SGFjZWs6ICdcXHUwMkM3Jyxcblx0aGFpcnNwOiAnXFx1MjAwQScsXG5cdGhhbGY6ICdcXHUwMEJEJyxcblx0aGFtaWx0OiAnXFx1MjEwQicsXG5cdEhBUkRjeTogJ1xcdTA0MkEnLFxuXHRoYXJkY3k6ICdcXHUwNDRBJyxcblx0aEFycjogJ1xcdTIxRDQnLFxuXHRoYXJyOiAnXFx1MjE5NCcsXG5cdGhhcnJjaXI6ICdcXHUyOTQ4Jyxcblx0aGFycnc6ICdcXHUyMUFEJyxcblx0SGF0OiAnXFx1MDA1RScsXG5cdGhiYXI6ICdcXHUyMTBGJyxcblx0SGNpcmM6ICdcXHUwMTI0Jyxcblx0aGNpcmM6ICdcXHUwMTI1Jyxcblx0aGVhcnRzOiAnXFx1MjY2NScsXG5cdGhlYXJ0c3VpdDogJ1xcdTI2NjUnLFxuXHRoZWxsaXA6ICdcXHUyMDI2Jyxcblx0aGVyY29uOiAnXFx1MjJCOScsXG5cdEhmcjogJ1xcdTIxMEMnLFxuXHRoZnI6ICdcXHVEODM1XFx1REQyNScsXG5cdEhpbGJlcnRTcGFjZTogJ1xcdTIxMEInLFxuXHRoa3NlYXJvdzogJ1xcdTI5MjUnLFxuXHRoa3N3YXJvdzogJ1xcdTI5MjYnLFxuXHRob2FycjogJ1xcdTIxRkYnLFxuXHRob210aHQ6ICdcXHUyMjNCJyxcblx0aG9va2xlZnRhcnJvdzogJ1xcdTIxQTknLFxuXHRob29rcmlnaHRhcnJvdzogJ1xcdTIxQUEnLFxuXHRIb3BmOiAnXFx1MjEwRCcsXG5cdGhvcGY6ICdcXHVEODM1XFx1REQ1OScsXG5cdGhvcmJhcjogJ1xcdTIwMTUnLFxuXHRIb3Jpem9udGFsTGluZTogJ1xcdTI1MDAnLFxuXHRIc2NyOiAnXFx1MjEwQicsXG5cdGhzY3I6ICdcXHVEODM1XFx1RENCRCcsXG5cdGhzbGFzaDogJ1xcdTIxMEYnLFxuXHRIc3Ryb2s6ICdcXHUwMTI2Jyxcblx0aHN0cm9rOiAnXFx1MDEyNycsXG5cdEh1bXBEb3duSHVtcDogJ1xcdTIyNEUnLFxuXHRIdW1wRXF1YWw6ICdcXHUyMjRGJyxcblx0aHlidWxsOiAnXFx1MjA0MycsXG5cdGh5cGhlbjogJ1xcdTIwMTAnLFxuXHRJYWN1dGU6ICdcXHUwMENEJyxcblx0aWFjdXRlOiAnXFx1MDBFRCcsXG5cdGljOiAnXFx1MjA2MycsXG5cdEljaXJjOiAnXFx1MDBDRScsXG5cdGljaXJjOiAnXFx1MDBFRScsXG5cdEljeTogJ1xcdTA0MTgnLFxuXHRpY3k6ICdcXHUwNDM4Jyxcblx0SWRvdDogJ1xcdTAxMzAnLFxuXHRJRWN5OiAnXFx1MDQxNScsXG5cdGllY3k6ICdcXHUwNDM1Jyxcblx0aWV4Y2w6ICdcXHUwMEExJyxcblx0aWZmOiAnXFx1MjFENCcsXG5cdElmcjogJ1xcdTIxMTEnLFxuXHRpZnI6ICdcXHVEODM1XFx1REQyNicsXG5cdElncmF2ZTogJ1xcdTAwQ0MnLFxuXHRpZ3JhdmU6ICdcXHUwMEVDJyxcblx0aWk6ICdcXHUyMTQ4Jyxcblx0aWlpaW50OiAnXFx1MkEwQycsXG5cdGlpaW50OiAnXFx1MjIyRCcsXG5cdGlpbmZpbjogJ1xcdTI5REMnLFxuXHRpaW90YTogJ1xcdTIxMjknLFxuXHRJSmxpZzogJ1xcdTAxMzInLFxuXHRpamxpZzogJ1xcdTAxMzMnLFxuXHRJbTogJ1xcdTIxMTEnLFxuXHRJbWFjcjogJ1xcdTAxMkEnLFxuXHRpbWFjcjogJ1xcdTAxMkInLFxuXHRpbWFnZTogJ1xcdTIxMTEnLFxuXHRJbWFnaW5hcnlJOiAnXFx1MjE0OCcsXG5cdGltYWdsaW5lOiAnXFx1MjExMCcsXG5cdGltYWdwYXJ0OiAnXFx1MjExMScsXG5cdGltYXRoOiAnXFx1MDEzMScsXG5cdGltb2Y6ICdcXHUyMkI3Jyxcblx0aW1wZWQ6ICdcXHUwMUI1Jyxcblx0SW1wbGllczogJ1xcdTIxRDInLFxuXHRpbjogJ1xcdTIyMDgnLFxuXHRpbmNhcmU6ICdcXHUyMTA1Jyxcblx0aW5maW46ICdcXHUyMjFFJyxcblx0aW5maW50aWU6ICdcXHUyOUREJyxcblx0aW5vZG90OiAnXFx1MDEzMScsXG5cdEludDogJ1xcdTIyMkMnLFxuXHRpbnQ6ICdcXHUyMjJCJyxcblx0aW50Y2FsOiAnXFx1MjJCQScsXG5cdGludGVnZXJzOiAnXFx1MjEyNCcsXG5cdEludGVncmFsOiAnXFx1MjIyQicsXG5cdGludGVyY2FsOiAnXFx1MjJCQScsXG5cdEludGVyc2VjdGlvbjogJ1xcdTIyQzInLFxuXHRpbnRsYXJoazogJ1xcdTJBMTcnLFxuXHRpbnRwcm9kOiAnXFx1MkEzQycsXG5cdEludmlzaWJsZUNvbW1hOiAnXFx1MjA2MycsXG5cdEludmlzaWJsZVRpbWVzOiAnXFx1MjA2MicsXG5cdElPY3k6ICdcXHUwNDAxJyxcblx0aW9jeTogJ1xcdTA0NTEnLFxuXHRJb2dvbjogJ1xcdTAxMkUnLFxuXHRpb2dvbjogJ1xcdTAxMkYnLFxuXHRJb3BmOiAnXFx1RDgzNVxcdURENDAnLFxuXHRpb3BmOiAnXFx1RDgzNVxcdURENUEnLFxuXHRJb3RhOiAnXFx1MDM5OScsXG5cdGlvdGE6ICdcXHUwM0I5Jyxcblx0aXByb2Q6ICdcXHUyQTNDJyxcblx0aXF1ZXN0OiAnXFx1MDBCRicsXG5cdElzY3I6ICdcXHUyMTEwJyxcblx0aXNjcjogJ1xcdUQ4MzVcXHVEQ0JFJyxcblx0aXNpbjogJ1xcdTIyMDgnLFxuXHRpc2luZG90OiAnXFx1MjJGNScsXG5cdGlzaW5FOiAnXFx1MjJGOScsXG5cdGlzaW5zOiAnXFx1MjJGNCcsXG5cdGlzaW5zdjogJ1xcdTIyRjMnLFxuXHRpc2ludjogJ1xcdTIyMDgnLFxuXHRpdDogJ1xcdTIwNjInLFxuXHRJdGlsZGU6ICdcXHUwMTI4Jyxcblx0aXRpbGRlOiAnXFx1MDEyOScsXG5cdEl1a2N5OiAnXFx1MDQwNicsXG5cdGl1a2N5OiAnXFx1MDQ1NicsXG5cdEl1bWw6ICdcXHUwMENGJyxcblx0aXVtbDogJ1xcdTAwRUYnLFxuXHRKY2lyYzogJ1xcdTAxMzQnLFxuXHRqY2lyYzogJ1xcdTAxMzUnLFxuXHRKY3k6ICdcXHUwNDE5Jyxcblx0amN5OiAnXFx1MDQzOScsXG5cdEpmcjogJ1xcdUQ4MzVcXHVERDBEJyxcblx0amZyOiAnXFx1RDgzNVxcdUREMjcnLFxuXHRqbWF0aDogJ1xcdTAyMzcnLFxuXHRKb3BmOiAnXFx1RDgzNVxcdURENDEnLFxuXHRqb3BmOiAnXFx1RDgzNVxcdURENUInLFxuXHRKc2NyOiAnXFx1RDgzNVxcdURDQTUnLFxuXHRqc2NyOiAnXFx1RDgzNVxcdURDQkYnLFxuXHRKc2VyY3k6ICdcXHUwNDA4Jyxcblx0anNlcmN5OiAnXFx1MDQ1OCcsXG5cdEp1a2N5OiAnXFx1MDQwNCcsXG5cdGp1a2N5OiAnXFx1MDQ1NCcsXG5cdEthcHBhOiAnXFx1MDM5QScsXG5cdGthcHBhOiAnXFx1MDNCQScsXG5cdGthcHBhdjogJ1xcdTAzRjAnLFxuXHRLY2VkaWw6ICdcXHUwMTM2Jyxcblx0a2NlZGlsOiAnXFx1MDEzNycsXG5cdEtjeTogJ1xcdTA0MUEnLFxuXHRrY3k6ICdcXHUwNDNBJyxcblx0S2ZyOiAnXFx1RDgzNVxcdUREMEUnLFxuXHRrZnI6ICdcXHVEODM1XFx1REQyOCcsXG5cdGtncmVlbjogJ1xcdTAxMzgnLFxuXHRLSGN5OiAnXFx1MDQyNScsXG5cdGtoY3k6ICdcXHUwNDQ1Jyxcblx0S0pjeTogJ1xcdTA0MEMnLFxuXHRramN5OiAnXFx1MDQ1QycsXG5cdEtvcGY6ICdcXHVEODM1XFx1REQ0MicsXG5cdGtvcGY6ICdcXHVEODM1XFx1REQ1QycsXG5cdEtzY3I6ICdcXHVEODM1XFx1RENBNicsXG5cdGtzY3I6ICdcXHVEODM1XFx1RENDMCcsXG5cdGxBYXJyOiAnXFx1MjFEQScsXG5cdExhY3V0ZTogJ1xcdTAxMzknLFxuXHRsYWN1dGU6ICdcXHUwMTNBJyxcblx0bGFlbXB0eXY6ICdcXHUyOUI0Jyxcblx0bGFncmFuOiAnXFx1MjExMicsXG5cdExhbWJkYTogJ1xcdTAzOUInLFxuXHRsYW1iZGE6ICdcXHUwM0JCJyxcblx0TGFuZzogJ1xcdTI3RUEnLFxuXHRsYW5nOiAnXFx1MjdFOCcsXG5cdGxhbmdkOiAnXFx1Mjk5MScsXG5cdGxhbmdsZTogJ1xcdTI3RTgnLFxuXHRsYXA6ICdcXHUyQTg1Jyxcblx0TGFwbGFjZXRyZjogJ1xcdTIxMTInLFxuXHRsYXF1bzogJ1xcdTAwQUInLFxuXHRMYXJyOiAnXFx1MjE5RScsXG5cdGxBcnI6ICdcXHUyMUQwJyxcblx0bGFycjogJ1xcdTIxOTAnLFxuXHRsYXJyYjogJ1xcdTIxRTQnLFxuXHRsYXJyYmZzOiAnXFx1MjkxRicsXG5cdGxhcnJmczogJ1xcdTI5MUQnLFxuXHRsYXJyaGs6ICdcXHUyMUE5Jyxcblx0bGFycmxwOiAnXFx1MjFBQicsXG5cdGxhcnJwbDogJ1xcdTI5MzknLFxuXHRsYXJyc2ltOiAnXFx1Mjk3MycsXG5cdGxhcnJ0bDogJ1xcdTIxQTInLFxuXHRsYXQ6ICdcXHUyQUFCJyxcblx0bEF0YWlsOiAnXFx1MjkxQicsXG5cdGxhdGFpbDogJ1xcdTI5MTknLFxuXHRsYXRlOiAnXFx1MkFBRCcsXG5cdGxhdGVzOiAnXFx1MkFBRFxcdUZFMDAnLFxuXHRsQmFycjogJ1xcdTI5MEUnLFxuXHRsYmFycjogJ1xcdTI5MEMnLFxuXHRsYmJyazogJ1xcdTI3NzInLFxuXHRsYnJhY2U6ICdcXHUwMDdCJyxcblx0bGJyYWNrOiAnXFx1MDA1QicsXG5cdGxicmtlOiAnXFx1Mjk4QicsXG5cdGxicmtzbGQ6ICdcXHUyOThGJyxcblx0bGJya3NsdTogJ1xcdTI5OEQnLFxuXHRMY2Fyb246ICdcXHUwMTNEJyxcblx0bGNhcm9uOiAnXFx1MDEzRScsXG5cdExjZWRpbDogJ1xcdTAxM0InLFxuXHRsY2VkaWw6ICdcXHUwMTNDJyxcblx0bGNlaWw6ICdcXHUyMzA4Jyxcblx0bGN1YjogJ1xcdTAwN0InLFxuXHRMY3k6ICdcXHUwNDFCJyxcblx0bGN5OiAnXFx1MDQzQicsXG5cdGxkY2E6ICdcXHUyOTM2Jyxcblx0bGRxdW86ICdcXHUyMDFDJyxcblx0bGRxdW9yOiAnXFx1MjAxRScsXG5cdGxkcmRoYXI6ICdcXHUyOTY3Jyxcblx0bGRydXNoYXI6ICdcXHUyOTRCJyxcblx0bGRzaDogJ1xcdTIxQjInLFxuXHRsRTogJ1xcdTIyNjYnLFxuXHRsZTogJ1xcdTIyNjQnLFxuXHRMZWZ0QW5nbGVCcmFja2V0OiAnXFx1MjdFOCcsXG5cdExlZnRBcnJvdzogJ1xcdTIxOTAnLFxuXHRMZWZ0YXJyb3c6ICdcXHUyMUQwJyxcblx0bGVmdGFycm93OiAnXFx1MjE5MCcsXG5cdExlZnRBcnJvd0JhcjogJ1xcdTIxRTQnLFxuXHRMZWZ0QXJyb3dSaWdodEFycm93OiAnXFx1MjFDNicsXG5cdGxlZnRhcnJvd3RhaWw6ICdcXHUyMUEyJyxcblx0TGVmdENlaWxpbmc6ICdcXHUyMzA4Jyxcblx0TGVmdERvdWJsZUJyYWNrZXQ6ICdcXHUyN0U2Jyxcblx0TGVmdERvd25UZWVWZWN0b3I6ICdcXHUyOTYxJyxcblx0TGVmdERvd25WZWN0b3I6ICdcXHUyMUMzJyxcblx0TGVmdERvd25WZWN0b3JCYXI6ICdcXHUyOTU5Jyxcblx0TGVmdEZsb29yOiAnXFx1MjMwQScsXG5cdGxlZnRoYXJwb29uZG93bjogJ1xcdTIxQkQnLFxuXHRsZWZ0aGFycG9vbnVwOiAnXFx1MjFCQycsXG5cdGxlZnRsZWZ0YXJyb3dzOiAnXFx1MjFDNycsXG5cdExlZnRSaWdodEFycm93OiAnXFx1MjE5NCcsXG5cdExlZnRyaWdodGFycm93OiAnXFx1MjFENCcsXG5cdGxlZnRyaWdodGFycm93OiAnXFx1MjE5NCcsXG5cdGxlZnRyaWdodGFycm93czogJ1xcdTIxQzYnLFxuXHRsZWZ0cmlnaHRoYXJwb29uczogJ1xcdTIxQ0InLFxuXHRsZWZ0cmlnaHRzcXVpZ2Fycm93OiAnXFx1MjFBRCcsXG5cdExlZnRSaWdodFZlY3RvcjogJ1xcdTI5NEUnLFxuXHRMZWZ0VGVlOiAnXFx1MjJBMycsXG5cdExlZnRUZWVBcnJvdzogJ1xcdTIxQTQnLFxuXHRMZWZ0VGVlVmVjdG9yOiAnXFx1Mjk1QScsXG5cdGxlZnR0aHJlZXRpbWVzOiAnXFx1MjJDQicsXG5cdExlZnRUcmlhbmdsZTogJ1xcdTIyQjInLFxuXHRMZWZ0VHJpYW5nbGVCYXI6ICdcXHUyOUNGJyxcblx0TGVmdFRyaWFuZ2xlRXF1YWw6ICdcXHUyMkI0Jyxcblx0TGVmdFVwRG93blZlY3RvcjogJ1xcdTI5NTEnLFxuXHRMZWZ0VXBUZWVWZWN0b3I6ICdcXHUyOTYwJyxcblx0TGVmdFVwVmVjdG9yOiAnXFx1MjFCRicsXG5cdExlZnRVcFZlY3RvckJhcjogJ1xcdTI5NTgnLFxuXHRMZWZ0VmVjdG9yOiAnXFx1MjFCQycsXG5cdExlZnRWZWN0b3JCYXI6ICdcXHUyOTUyJyxcblx0bEVnOiAnXFx1MkE4QicsXG5cdGxlZzogJ1xcdTIyREEnLFxuXHRsZXE6ICdcXHUyMjY0Jyxcblx0bGVxcTogJ1xcdTIyNjYnLFxuXHRsZXFzbGFudDogJ1xcdTJBN0QnLFxuXHRsZXM6ICdcXHUyQTdEJyxcblx0bGVzY2M6ICdcXHUyQUE4Jyxcblx0bGVzZG90OiAnXFx1MkE3RicsXG5cdGxlc2RvdG86ICdcXHUyQTgxJyxcblx0bGVzZG90b3I6ICdcXHUyQTgzJyxcblx0bGVzZzogJ1xcdTIyREFcXHVGRTAwJyxcblx0bGVzZ2VzOiAnXFx1MkE5MycsXG5cdGxlc3NhcHByb3g6ICdcXHUyQTg1Jyxcblx0bGVzc2RvdDogJ1xcdTIyRDYnLFxuXHRsZXNzZXFndHI6ICdcXHUyMkRBJyxcblx0bGVzc2VxcWd0cjogJ1xcdTJBOEInLFxuXHRMZXNzRXF1YWxHcmVhdGVyOiAnXFx1MjJEQScsXG5cdExlc3NGdWxsRXF1YWw6ICdcXHUyMjY2Jyxcblx0TGVzc0dyZWF0ZXI6ICdcXHUyMjc2Jyxcblx0bGVzc2d0cjogJ1xcdTIyNzYnLFxuXHRMZXNzTGVzczogJ1xcdTJBQTEnLFxuXHRsZXNzc2ltOiAnXFx1MjI3MicsXG5cdExlc3NTbGFudEVxdWFsOiAnXFx1MkE3RCcsXG5cdExlc3NUaWxkZTogJ1xcdTIyNzInLFxuXHRsZmlzaHQ6ICdcXHUyOTdDJyxcblx0bGZsb29yOiAnXFx1MjMwQScsXG5cdExmcjogJ1xcdUQ4MzVcXHVERDBGJyxcblx0bGZyOiAnXFx1RDgzNVxcdUREMjknLFxuXHRsZzogJ1xcdTIyNzYnLFxuXHRsZ0U6ICdcXHUyQTkxJyxcblx0bEhhcjogJ1xcdTI5NjInLFxuXHRsaGFyZDogJ1xcdTIxQkQnLFxuXHRsaGFydTogJ1xcdTIxQkMnLFxuXHRsaGFydWw6ICdcXHUyOTZBJyxcblx0bGhibGs6ICdcXHUyNTg0Jyxcblx0TEpjeTogJ1xcdTA0MDknLFxuXHRsamN5OiAnXFx1MDQ1OScsXG5cdExsOiAnXFx1MjJEOCcsXG5cdGxsOiAnXFx1MjI2QScsXG5cdGxsYXJyOiAnXFx1MjFDNycsXG5cdGxsY29ybmVyOiAnXFx1MjMxRScsXG5cdExsZWZ0YXJyb3c6ICdcXHUyMURBJyxcblx0bGxoYXJkOiAnXFx1Mjk2QicsXG5cdGxsdHJpOiAnXFx1MjVGQScsXG5cdExtaWRvdDogJ1xcdTAxM0YnLFxuXHRsbWlkb3Q6ICdcXHUwMTQwJyxcblx0bG1vdXN0OiAnXFx1MjNCMCcsXG5cdGxtb3VzdGFjaGU6ICdcXHUyM0IwJyxcblx0bG5hcDogJ1xcdTJBODknLFxuXHRsbmFwcHJveDogJ1xcdTJBODknLFxuXHRsbkU6ICdcXHUyMjY4Jyxcblx0bG5lOiAnXFx1MkE4NycsXG5cdGxuZXE6ICdcXHUyQTg3Jyxcblx0bG5lcXE6ICdcXHUyMjY4Jyxcblx0bG5zaW06ICdcXHUyMkU2Jyxcblx0bG9hbmc6ICdcXHUyN0VDJyxcblx0bG9hcnI6ICdcXHUyMUZEJyxcblx0bG9icms6ICdcXHUyN0U2Jyxcblx0TG9uZ0xlZnRBcnJvdzogJ1xcdTI3RjUnLFxuXHRMb25nbGVmdGFycm93OiAnXFx1MjdGOCcsXG5cdGxvbmdsZWZ0YXJyb3c6ICdcXHUyN0Y1Jyxcblx0TG9uZ0xlZnRSaWdodEFycm93OiAnXFx1MjdGNycsXG5cdExvbmdsZWZ0cmlnaHRhcnJvdzogJ1xcdTI3RkEnLFxuXHRsb25nbGVmdHJpZ2h0YXJyb3c6ICdcXHUyN0Y3Jyxcblx0bG9uZ21hcHN0bzogJ1xcdTI3RkMnLFxuXHRMb25nUmlnaHRBcnJvdzogJ1xcdTI3RjYnLFxuXHRMb25ncmlnaHRhcnJvdzogJ1xcdTI3RjknLFxuXHRsb25ncmlnaHRhcnJvdzogJ1xcdTI3RjYnLFxuXHRsb29wYXJyb3dsZWZ0OiAnXFx1MjFBQicsXG5cdGxvb3BhcnJvd3JpZ2h0OiAnXFx1MjFBQycsXG5cdGxvcGFyOiAnXFx1Mjk4NScsXG5cdExvcGY6ICdcXHVEODM1XFx1REQ0MycsXG5cdGxvcGY6ICdcXHVEODM1XFx1REQ1RCcsXG5cdGxvcGx1czogJ1xcdTJBMkQnLFxuXHRsb3RpbWVzOiAnXFx1MkEzNCcsXG5cdGxvd2FzdDogJ1xcdTIyMTcnLFxuXHRsb3diYXI6ICdcXHUwMDVGJyxcblx0TG93ZXJMZWZ0QXJyb3c6ICdcXHUyMTk5Jyxcblx0TG93ZXJSaWdodEFycm93OiAnXFx1MjE5OCcsXG5cdGxvejogJ1xcdTI1Q0EnLFxuXHRsb3plbmdlOiAnXFx1MjVDQScsXG5cdGxvemY6ICdcXHUyOUVCJyxcblx0bHBhcjogJ1xcdTAwMjgnLFxuXHRscGFybHQ6ICdcXHUyOTkzJyxcblx0bHJhcnI6ICdcXHUyMUM2Jyxcblx0bHJjb3JuZXI6ICdcXHUyMzFGJyxcblx0bHJoYXI6ICdcXHUyMUNCJyxcblx0bHJoYXJkOiAnXFx1Mjk2RCcsXG5cdGxybTogJ1xcdTIwMEUnLFxuXHRscnRyaTogJ1xcdTIyQkYnLFxuXHRsc2FxdW86ICdcXHUyMDM5Jyxcblx0THNjcjogJ1xcdTIxMTInLFxuXHRsc2NyOiAnXFx1RDgzNVxcdURDQzEnLFxuXHRMc2g6ICdcXHUyMUIwJyxcblx0bHNoOiAnXFx1MjFCMCcsXG5cdGxzaW06ICdcXHUyMjcyJyxcblx0bHNpbWU6ICdcXHUyQThEJyxcblx0bHNpbWc6ICdcXHUyQThGJyxcblx0bHNxYjogJ1xcdTAwNUInLFxuXHRsc3F1bzogJ1xcdTIwMTgnLFxuXHRsc3F1b3I6ICdcXHUyMDFBJyxcblx0THN0cm9rOiAnXFx1MDE0MScsXG5cdGxzdHJvazogJ1xcdTAxNDInLFxuXHRMdDogJ1xcdTIyNkEnLFxuXHRMVDogJ1xcdTAwM0MnLFxuXHRsdDogJ1xcdTAwM0MnLFxuXHRsdGNjOiAnXFx1MkFBNicsXG5cdGx0Y2lyOiAnXFx1MkE3OScsXG5cdGx0ZG90OiAnXFx1MjJENicsXG5cdGx0aHJlZTogJ1xcdTIyQ0InLFxuXHRsdGltZXM6ICdcXHUyMkM5Jyxcblx0bHRsYXJyOiAnXFx1Mjk3NicsXG5cdGx0cXVlc3Q6ICdcXHUyQTdCJyxcblx0bHRyaTogJ1xcdTI1QzMnLFxuXHRsdHJpZTogJ1xcdTIyQjQnLFxuXHRsdHJpZjogJ1xcdTI1QzInLFxuXHRsdHJQYXI6ICdcXHUyOTk2Jyxcblx0bHVyZHNoYXI6ICdcXHUyOTRBJyxcblx0bHVydWhhcjogJ1xcdTI5NjYnLFxuXHRsdmVydG5lcXE6ICdcXHUyMjY4XFx1RkUwMCcsXG5cdGx2bkU6ICdcXHUyMjY4XFx1RkUwMCcsXG5cdG1hY3I6ICdcXHUwMEFGJyxcblx0bWFsZTogJ1xcdTI2NDInLFxuXHRtYWx0OiAnXFx1MjcyMCcsXG5cdG1hbHRlc2U6ICdcXHUyNzIwJyxcblx0TWFwOiAnXFx1MjkwNScsXG5cdG1hcDogJ1xcdTIxQTYnLFxuXHRtYXBzdG86ICdcXHUyMUE2Jyxcblx0bWFwc3RvZG93bjogJ1xcdTIxQTcnLFxuXHRtYXBzdG9sZWZ0OiAnXFx1MjFBNCcsXG5cdG1hcHN0b3VwOiAnXFx1MjFBNScsXG5cdG1hcmtlcjogJ1xcdTI1QUUnLFxuXHRtY29tbWE6ICdcXHUyQTI5Jyxcblx0TWN5OiAnXFx1MDQxQycsXG5cdG1jeTogJ1xcdTA0M0MnLFxuXHRtZGFzaDogJ1xcdTIwMTQnLFxuXHRtRERvdDogJ1xcdTIyM0EnLFxuXHRtZWFzdXJlZGFuZ2xlOiAnXFx1MjIyMScsXG5cdE1lZGl1bVNwYWNlOiAnXFx1MjA1RicsXG5cdE1lbGxpbnRyZjogJ1xcdTIxMzMnLFxuXHRNZnI6ICdcXHVEODM1XFx1REQxMCcsXG5cdG1mcjogJ1xcdUQ4MzVcXHVERDJBJyxcblx0bWhvOiAnXFx1MjEyNycsXG5cdG1pY3JvOiAnXFx1MDBCNScsXG5cdG1pZDogJ1xcdTIyMjMnLFxuXHRtaWRhc3Q6ICdcXHUwMDJBJyxcblx0bWlkY2lyOiAnXFx1MkFGMCcsXG5cdG1pZGRvdDogJ1xcdTAwQjcnLFxuXHRtaW51czogJ1xcdTIyMTInLFxuXHRtaW51c2I6ICdcXHUyMjlGJyxcblx0bWludXNkOiAnXFx1MjIzOCcsXG5cdG1pbnVzZHU6ICdcXHUyQTJBJyxcblx0TWludXNQbHVzOiAnXFx1MjIxMycsXG5cdG1sY3A6ICdcXHUyQURCJyxcblx0bWxkcjogJ1xcdTIwMjYnLFxuXHRtbnBsdXM6ICdcXHUyMjEzJyxcblx0bW9kZWxzOiAnXFx1MjJBNycsXG5cdE1vcGY6ICdcXHVEODM1XFx1REQ0NCcsXG5cdG1vcGY6ICdcXHVEODM1XFx1REQ1RScsXG5cdG1wOiAnXFx1MjIxMycsXG5cdE1zY3I6ICdcXHUyMTMzJyxcblx0bXNjcjogJ1xcdUQ4MzVcXHVEQ0MyJyxcblx0bXN0cG9zOiAnXFx1MjIzRScsXG5cdE11OiAnXFx1MDM5QycsXG5cdG11OiAnXFx1MDNCQycsXG5cdG11bHRpbWFwOiAnXFx1MjJCOCcsXG5cdG11bWFwOiAnXFx1MjJCOCcsXG5cdG5hYmxhOiAnXFx1MjIwNycsXG5cdE5hY3V0ZTogJ1xcdTAxNDMnLFxuXHRuYWN1dGU6ICdcXHUwMTQ0Jyxcblx0bmFuZzogJ1xcdTIyMjBcXHUyMEQyJyxcblx0bmFwOiAnXFx1MjI0OScsXG5cdG5hcEU6ICdcXHUyQTcwXFx1MDMzOCcsXG5cdG5hcGlkOiAnXFx1MjI0QlxcdTAzMzgnLFxuXHRuYXBvczogJ1xcdTAxNDknLFxuXHRuYXBwcm94OiAnXFx1MjI0OScsXG5cdG5hdHVyOiAnXFx1MjY2RScsXG5cdG5hdHVyYWw6ICdcXHUyNjZFJyxcblx0bmF0dXJhbHM6ICdcXHUyMTE1Jyxcblx0bmJzcDogJ1xcdTAwQTAnLFxuXHRuYnVtcDogJ1xcdTIyNEVcXHUwMzM4Jyxcblx0bmJ1bXBlOiAnXFx1MjI0RlxcdTAzMzgnLFxuXHRuY2FwOiAnXFx1MkE0MycsXG5cdE5jYXJvbjogJ1xcdTAxNDcnLFxuXHRuY2Fyb246ICdcXHUwMTQ4Jyxcblx0TmNlZGlsOiAnXFx1MDE0NScsXG5cdG5jZWRpbDogJ1xcdTAxNDYnLFxuXHRuY29uZzogJ1xcdTIyNDcnLFxuXHRuY29uZ2RvdDogJ1xcdTJBNkRcXHUwMzM4Jyxcblx0bmN1cDogJ1xcdTJBNDInLFxuXHROY3k6ICdcXHUwNDFEJyxcblx0bmN5OiAnXFx1MDQzRCcsXG5cdG5kYXNoOiAnXFx1MjAxMycsXG5cdG5lOiAnXFx1MjI2MCcsXG5cdG5lYXJoazogJ1xcdTI5MjQnLFxuXHRuZUFycjogJ1xcdTIxRDcnLFxuXHRuZWFycjogJ1xcdTIxOTcnLFxuXHRuZWFycm93OiAnXFx1MjE5NycsXG5cdG5lZG90OiAnXFx1MjI1MFxcdTAzMzgnLFxuXHROZWdhdGl2ZU1lZGl1bVNwYWNlOiAnXFx1MjAwQicsXG5cdE5lZ2F0aXZlVGhpY2tTcGFjZTogJ1xcdTIwMEInLFxuXHROZWdhdGl2ZVRoaW5TcGFjZTogJ1xcdTIwMEInLFxuXHROZWdhdGl2ZVZlcnlUaGluU3BhY2U6ICdcXHUyMDBCJyxcblx0bmVxdWl2OiAnXFx1MjI2MicsXG5cdG5lc2VhcjogJ1xcdTI5MjgnLFxuXHRuZXNpbTogJ1xcdTIyNDJcXHUwMzM4Jyxcblx0TmVzdGVkR3JlYXRlckdyZWF0ZXI6ICdcXHUyMjZCJyxcblx0TmVzdGVkTGVzc0xlc3M6ICdcXHUyMjZBJyxcblx0TmV3TGluZTogJ1xcdTAwMEEnLFxuXHRuZXhpc3Q6ICdcXHUyMjA0Jyxcblx0bmV4aXN0czogJ1xcdTIyMDQnLFxuXHROZnI6ICdcXHVEODM1XFx1REQxMScsXG5cdG5mcjogJ1xcdUQ4MzVcXHVERDJCJyxcblx0bmdFOiAnXFx1MjI2N1xcdTAzMzgnLFxuXHRuZ2U6ICdcXHUyMjcxJyxcblx0bmdlcTogJ1xcdTIyNzEnLFxuXHRuZ2VxcTogJ1xcdTIyNjdcXHUwMzM4Jyxcblx0bmdlcXNsYW50OiAnXFx1MkE3RVxcdTAzMzgnLFxuXHRuZ2VzOiAnXFx1MkE3RVxcdTAzMzgnLFxuXHRuR2c6ICdcXHUyMkQ5XFx1MDMzOCcsXG5cdG5nc2ltOiAnXFx1MjI3NScsXG5cdG5HdDogJ1xcdTIyNkJcXHUyMEQyJyxcblx0bmd0OiAnXFx1MjI2RicsXG5cdG5ndHI6ICdcXHUyMjZGJyxcblx0bkd0djogJ1xcdTIyNkJcXHUwMzM4Jyxcblx0bmhBcnI6ICdcXHUyMUNFJyxcblx0bmhhcnI6ICdcXHUyMUFFJyxcblx0bmhwYXI6ICdcXHUyQUYyJyxcblx0bmk6ICdcXHUyMjBCJyxcblx0bmlzOiAnXFx1MjJGQycsXG5cdG5pc2Q6ICdcXHUyMkZBJyxcblx0bml2OiAnXFx1MjIwQicsXG5cdE5KY3k6ICdcXHUwNDBBJyxcblx0bmpjeTogJ1xcdTA0NUEnLFxuXHRubEFycjogJ1xcdTIxQ0QnLFxuXHRubGFycjogJ1xcdTIxOUEnLFxuXHRubGRyOiAnXFx1MjAyNScsXG5cdG5sRTogJ1xcdTIyNjZcXHUwMzM4Jyxcblx0bmxlOiAnXFx1MjI3MCcsXG5cdG5MZWZ0YXJyb3c6ICdcXHUyMUNEJyxcblx0bmxlZnRhcnJvdzogJ1xcdTIxOUEnLFxuXHRuTGVmdHJpZ2h0YXJyb3c6ICdcXHUyMUNFJyxcblx0bmxlZnRyaWdodGFycm93OiAnXFx1MjFBRScsXG5cdG5sZXE6ICdcXHUyMjcwJyxcblx0bmxlcXE6ICdcXHUyMjY2XFx1MDMzOCcsXG5cdG5sZXFzbGFudDogJ1xcdTJBN0RcXHUwMzM4Jyxcblx0bmxlczogJ1xcdTJBN0RcXHUwMzM4Jyxcblx0bmxlc3M6ICdcXHUyMjZFJyxcblx0bkxsOiAnXFx1MjJEOFxcdTAzMzgnLFxuXHRubHNpbTogJ1xcdTIyNzQnLFxuXHRuTHQ6ICdcXHUyMjZBXFx1MjBEMicsXG5cdG5sdDogJ1xcdTIyNkUnLFxuXHRubHRyaTogJ1xcdTIyRUEnLFxuXHRubHRyaWU6ICdcXHUyMkVDJyxcblx0bkx0djogJ1xcdTIyNkFcXHUwMzM4Jyxcblx0bm1pZDogJ1xcdTIyMjQnLFxuXHROb0JyZWFrOiAnXFx1MjA2MCcsXG5cdE5vbkJyZWFraW5nU3BhY2U6ICdcXHUwMEEwJyxcblx0Tm9wZjogJ1xcdTIxMTUnLFxuXHRub3BmOiAnXFx1RDgzNVxcdURENUYnLFxuXHROb3Q6ICdcXHUyQUVDJyxcblx0bm90OiAnXFx1MDBBQycsXG5cdE5vdENvbmdydWVudDogJ1xcdTIyNjInLFxuXHROb3RDdXBDYXA6ICdcXHUyMjZEJyxcblx0Tm90RG91YmxlVmVydGljYWxCYXI6ICdcXHUyMjI2Jyxcblx0Tm90RWxlbWVudDogJ1xcdTIyMDknLFxuXHROb3RFcXVhbDogJ1xcdTIyNjAnLFxuXHROb3RFcXVhbFRpbGRlOiAnXFx1MjI0MlxcdTAzMzgnLFxuXHROb3RFeGlzdHM6ICdcXHUyMjA0Jyxcblx0Tm90R3JlYXRlcjogJ1xcdTIyNkYnLFxuXHROb3RHcmVhdGVyRXF1YWw6ICdcXHUyMjcxJyxcblx0Tm90R3JlYXRlckZ1bGxFcXVhbDogJ1xcdTIyNjdcXHUwMzM4Jyxcblx0Tm90R3JlYXRlckdyZWF0ZXI6ICdcXHUyMjZCXFx1MDMzOCcsXG5cdE5vdEdyZWF0ZXJMZXNzOiAnXFx1MjI3OScsXG5cdE5vdEdyZWF0ZXJTbGFudEVxdWFsOiAnXFx1MkE3RVxcdTAzMzgnLFxuXHROb3RHcmVhdGVyVGlsZGU6ICdcXHUyMjc1Jyxcblx0Tm90SHVtcERvd25IdW1wOiAnXFx1MjI0RVxcdTAzMzgnLFxuXHROb3RIdW1wRXF1YWw6ICdcXHUyMjRGXFx1MDMzOCcsXG5cdG5vdGluOiAnXFx1MjIwOScsXG5cdG5vdGluZG90OiAnXFx1MjJGNVxcdTAzMzgnLFxuXHRub3RpbkU6ICdcXHUyMkY5XFx1MDMzOCcsXG5cdG5vdGludmE6ICdcXHUyMjA5Jyxcblx0bm90aW52YjogJ1xcdTIyRjcnLFxuXHRub3RpbnZjOiAnXFx1MjJGNicsXG5cdE5vdExlZnRUcmlhbmdsZTogJ1xcdTIyRUEnLFxuXHROb3RMZWZ0VHJpYW5nbGVCYXI6ICdcXHUyOUNGXFx1MDMzOCcsXG5cdE5vdExlZnRUcmlhbmdsZUVxdWFsOiAnXFx1MjJFQycsXG5cdE5vdExlc3M6ICdcXHUyMjZFJyxcblx0Tm90TGVzc0VxdWFsOiAnXFx1MjI3MCcsXG5cdE5vdExlc3NHcmVhdGVyOiAnXFx1MjI3OCcsXG5cdE5vdExlc3NMZXNzOiAnXFx1MjI2QVxcdTAzMzgnLFxuXHROb3RMZXNzU2xhbnRFcXVhbDogJ1xcdTJBN0RcXHUwMzM4Jyxcblx0Tm90TGVzc1RpbGRlOiAnXFx1MjI3NCcsXG5cdE5vdE5lc3RlZEdyZWF0ZXJHcmVhdGVyOiAnXFx1MkFBMlxcdTAzMzgnLFxuXHROb3ROZXN0ZWRMZXNzTGVzczogJ1xcdTJBQTFcXHUwMzM4Jyxcblx0bm90bmk6ICdcXHUyMjBDJyxcblx0bm90bml2YTogJ1xcdTIyMEMnLFxuXHRub3RuaXZiOiAnXFx1MjJGRScsXG5cdG5vdG5pdmM6ICdcXHUyMkZEJyxcblx0Tm90UHJlY2VkZXM6ICdcXHUyMjgwJyxcblx0Tm90UHJlY2VkZXNFcXVhbDogJ1xcdTJBQUZcXHUwMzM4Jyxcblx0Tm90UHJlY2VkZXNTbGFudEVxdWFsOiAnXFx1MjJFMCcsXG5cdE5vdFJldmVyc2VFbGVtZW50OiAnXFx1MjIwQycsXG5cdE5vdFJpZ2h0VHJpYW5nbGU6ICdcXHUyMkVCJyxcblx0Tm90UmlnaHRUcmlhbmdsZUJhcjogJ1xcdTI5RDBcXHUwMzM4Jyxcblx0Tm90UmlnaHRUcmlhbmdsZUVxdWFsOiAnXFx1MjJFRCcsXG5cdE5vdFNxdWFyZVN1YnNldDogJ1xcdTIyOEZcXHUwMzM4Jyxcblx0Tm90U3F1YXJlU3Vic2V0RXF1YWw6ICdcXHUyMkUyJyxcblx0Tm90U3F1YXJlU3VwZXJzZXQ6ICdcXHUyMjkwXFx1MDMzOCcsXG5cdE5vdFNxdWFyZVN1cGVyc2V0RXF1YWw6ICdcXHUyMkUzJyxcblx0Tm90U3Vic2V0OiAnXFx1MjI4MlxcdTIwRDInLFxuXHROb3RTdWJzZXRFcXVhbDogJ1xcdTIyODgnLFxuXHROb3RTdWNjZWVkczogJ1xcdTIyODEnLFxuXHROb3RTdWNjZWVkc0VxdWFsOiAnXFx1MkFCMFxcdTAzMzgnLFxuXHROb3RTdWNjZWVkc1NsYW50RXF1YWw6ICdcXHUyMkUxJyxcblx0Tm90U3VjY2VlZHNUaWxkZTogJ1xcdTIyN0ZcXHUwMzM4Jyxcblx0Tm90U3VwZXJzZXQ6ICdcXHUyMjgzXFx1MjBEMicsXG5cdE5vdFN1cGVyc2V0RXF1YWw6ICdcXHUyMjg5Jyxcblx0Tm90VGlsZGU6ICdcXHUyMjQxJyxcblx0Tm90VGlsZGVFcXVhbDogJ1xcdTIyNDQnLFxuXHROb3RUaWxkZUZ1bGxFcXVhbDogJ1xcdTIyNDcnLFxuXHROb3RUaWxkZVRpbGRlOiAnXFx1MjI0OScsXG5cdE5vdFZlcnRpY2FsQmFyOiAnXFx1MjIyNCcsXG5cdG5wYXI6ICdcXHUyMjI2Jyxcblx0bnBhcmFsbGVsOiAnXFx1MjIyNicsXG5cdG5wYXJzbDogJ1xcdTJBRkRcXHUyMEU1Jyxcblx0bnBhcnQ6ICdcXHUyMjAyXFx1MDMzOCcsXG5cdG5wb2xpbnQ6ICdcXHUyQTE0Jyxcblx0bnByOiAnXFx1MjI4MCcsXG5cdG5wcmN1ZTogJ1xcdTIyRTAnLFxuXHRucHJlOiAnXFx1MkFBRlxcdTAzMzgnLFxuXHRucHJlYzogJ1xcdTIyODAnLFxuXHRucHJlY2VxOiAnXFx1MkFBRlxcdTAzMzgnLFxuXHRuckFycjogJ1xcdTIxQ0YnLFxuXHRucmFycjogJ1xcdTIxOUInLFxuXHRucmFycmM6ICdcXHUyOTMzXFx1MDMzOCcsXG5cdG5yYXJydzogJ1xcdTIxOURcXHUwMzM4Jyxcblx0blJpZ2h0YXJyb3c6ICdcXHUyMUNGJyxcblx0bnJpZ2h0YXJyb3c6ICdcXHUyMTlCJyxcblx0bnJ0cmk6ICdcXHUyMkVCJyxcblx0bnJ0cmllOiAnXFx1MjJFRCcsXG5cdG5zYzogJ1xcdTIyODEnLFxuXHRuc2NjdWU6ICdcXHUyMkUxJyxcblx0bnNjZTogJ1xcdTJBQjBcXHUwMzM4Jyxcblx0TnNjcjogJ1xcdUQ4MzVcXHVEQ0E5Jyxcblx0bnNjcjogJ1xcdUQ4MzVcXHVEQ0MzJyxcblx0bnNob3J0bWlkOiAnXFx1MjIyNCcsXG5cdG5zaG9ydHBhcmFsbGVsOiAnXFx1MjIyNicsXG5cdG5zaW06ICdcXHUyMjQxJyxcblx0bnNpbWU6ICdcXHUyMjQ0Jyxcblx0bnNpbWVxOiAnXFx1MjI0NCcsXG5cdG5zbWlkOiAnXFx1MjIyNCcsXG5cdG5zcGFyOiAnXFx1MjIyNicsXG5cdG5zcXN1YmU6ICdcXHUyMkUyJyxcblx0bnNxc3VwZTogJ1xcdTIyRTMnLFxuXHRuc3ViOiAnXFx1MjI4NCcsXG5cdG5zdWJFOiAnXFx1MkFDNVxcdTAzMzgnLFxuXHRuc3ViZTogJ1xcdTIyODgnLFxuXHRuc3Vic2V0OiAnXFx1MjI4MlxcdTIwRDInLFxuXHRuc3Vic2V0ZXE6ICdcXHUyMjg4Jyxcblx0bnN1YnNldGVxcTogJ1xcdTJBQzVcXHUwMzM4Jyxcblx0bnN1Y2M6ICdcXHUyMjgxJyxcblx0bnN1Y2NlcTogJ1xcdTJBQjBcXHUwMzM4Jyxcblx0bnN1cDogJ1xcdTIyODUnLFxuXHRuc3VwRTogJ1xcdTJBQzZcXHUwMzM4Jyxcblx0bnN1cGU6ICdcXHUyMjg5Jyxcblx0bnN1cHNldDogJ1xcdTIyODNcXHUyMEQyJyxcblx0bnN1cHNldGVxOiAnXFx1MjI4OScsXG5cdG5zdXBzZXRlcXE6ICdcXHUyQUM2XFx1MDMzOCcsXG5cdG50Z2w6ICdcXHUyMjc5Jyxcblx0TnRpbGRlOiAnXFx1MDBEMScsXG5cdG50aWxkZTogJ1xcdTAwRjEnLFxuXHRudGxnOiAnXFx1MjI3OCcsXG5cdG50cmlhbmdsZWxlZnQ6ICdcXHUyMkVBJyxcblx0bnRyaWFuZ2xlbGVmdGVxOiAnXFx1MjJFQycsXG5cdG50cmlhbmdsZXJpZ2h0OiAnXFx1MjJFQicsXG5cdG50cmlhbmdsZXJpZ2h0ZXE6ICdcXHUyMkVEJyxcblx0TnU6ICdcXHUwMzlEJyxcblx0bnU6ICdcXHUwM0JEJyxcblx0bnVtOiAnXFx1MDAyMycsXG5cdG51bWVybzogJ1xcdTIxMTYnLFxuXHRudW1zcDogJ1xcdTIwMDcnLFxuXHRudmFwOiAnXFx1MjI0RFxcdTIwRDInLFxuXHRuVkRhc2g6ICdcXHUyMkFGJyxcblx0blZkYXNoOiAnXFx1MjJBRScsXG5cdG52RGFzaDogJ1xcdTIyQUQnLFxuXHRudmRhc2g6ICdcXHUyMkFDJyxcblx0bnZnZTogJ1xcdTIyNjVcXHUyMEQyJyxcblx0bnZndDogJ1xcdTAwM0VcXHUyMEQyJyxcblx0bnZIYXJyOiAnXFx1MjkwNCcsXG5cdG52aW5maW46ICdcXHUyOURFJyxcblx0bnZsQXJyOiAnXFx1MjkwMicsXG5cdG52bGU6ICdcXHUyMjY0XFx1MjBEMicsXG5cdG52bHQ6ICdcXHUwMDNDXFx1MjBEMicsXG5cdG52bHRyaWU6ICdcXHUyMkI0XFx1MjBEMicsXG5cdG52ckFycjogJ1xcdTI5MDMnLFxuXHRudnJ0cmllOiAnXFx1MjJCNVxcdTIwRDInLFxuXHRudnNpbTogJ1xcdTIyM0NcXHUyMEQyJyxcblx0bndhcmhrOiAnXFx1MjkyMycsXG5cdG53QXJyOiAnXFx1MjFENicsXG5cdG53YXJyOiAnXFx1MjE5NicsXG5cdG53YXJyb3c6ICdcXHUyMTk2Jyxcblx0bnduZWFyOiAnXFx1MjkyNycsXG5cdE9hY3V0ZTogJ1xcdTAwRDMnLFxuXHRvYWN1dGU6ICdcXHUwMEYzJyxcblx0b2FzdDogJ1xcdTIyOUInLFxuXHRvY2lyOiAnXFx1MjI5QScsXG5cdE9jaXJjOiAnXFx1MDBENCcsXG5cdG9jaXJjOiAnXFx1MDBGNCcsXG5cdE9jeTogJ1xcdTA0MUUnLFxuXHRvY3k6ICdcXHUwNDNFJyxcblx0b2Rhc2g6ICdcXHUyMjlEJyxcblx0T2RibGFjOiAnXFx1MDE1MCcsXG5cdG9kYmxhYzogJ1xcdTAxNTEnLFxuXHRvZGl2OiAnXFx1MkEzOCcsXG5cdG9kb3Q6ICdcXHUyMjk5Jyxcblx0b2Rzb2xkOiAnXFx1MjlCQycsXG5cdE9FbGlnOiAnXFx1MDE1MicsXG5cdG9lbGlnOiAnXFx1MDE1MycsXG5cdG9mY2lyOiAnXFx1MjlCRicsXG5cdE9mcjogJ1xcdUQ4MzVcXHVERDEyJyxcblx0b2ZyOiAnXFx1RDgzNVxcdUREMkMnLFxuXHRvZ29uOiAnXFx1MDJEQicsXG5cdE9ncmF2ZTogJ1xcdTAwRDInLFxuXHRvZ3JhdmU6ICdcXHUwMEYyJyxcblx0b2d0OiAnXFx1MjlDMScsXG5cdG9oYmFyOiAnXFx1MjlCNScsXG5cdG9obTogJ1xcdTAzQTknLFxuXHRvaW50OiAnXFx1MjIyRScsXG5cdG9sYXJyOiAnXFx1MjFCQScsXG5cdG9sY2lyOiAnXFx1MjlCRScsXG5cdG9sY3Jvc3M6ICdcXHUyOUJCJyxcblx0b2xpbmU6ICdcXHUyMDNFJyxcblx0b2x0OiAnXFx1MjlDMCcsXG5cdE9tYWNyOiAnXFx1MDE0QycsXG5cdG9tYWNyOiAnXFx1MDE0RCcsXG5cdE9tZWdhOiAnXFx1MDNBOScsXG5cdG9tZWdhOiAnXFx1MDNDOScsXG5cdE9taWNyb246ICdcXHUwMzlGJyxcblx0b21pY3JvbjogJ1xcdTAzQkYnLFxuXHRvbWlkOiAnXFx1MjlCNicsXG5cdG9taW51czogJ1xcdTIyOTYnLFxuXHRPb3BmOiAnXFx1RDgzNVxcdURENDYnLFxuXHRvb3BmOiAnXFx1RDgzNVxcdURENjAnLFxuXHRvcGFyOiAnXFx1MjlCNycsXG5cdE9wZW5DdXJseURvdWJsZVF1b3RlOiAnXFx1MjAxQycsXG5cdE9wZW5DdXJseVF1b3RlOiAnXFx1MjAxOCcsXG5cdG9wZXJwOiAnXFx1MjlCOScsXG5cdG9wbHVzOiAnXFx1MjI5NScsXG5cdE9yOiAnXFx1MkE1NCcsXG5cdG9yOiAnXFx1MjIyOCcsXG5cdG9yYXJyOiAnXFx1MjFCQicsXG5cdG9yZDogJ1xcdTJBNUQnLFxuXHRvcmRlcjogJ1xcdTIxMzQnLFxuXHRvcmRlcm9mOiAnXFx1MjEzNCcsXG5cdG9yZGY6ICdcXHUwMEFBJyxcblx0b3JkbTogJ1xcdTAwQkEnLFxuXHRvcmlnb2Y6ICdcXHUyMkI2Jyxcblx0b3JvcjogJ1xcdTJBNTYnLFxuXHRvcnNsb3BlOiAnXFx1MkE1NycsXG5cdG9ydjogJ1xcdTJBNUInLFxuXHRvUzogJ1xcdTI0QzgnLFxuXHRPc2NyOiAnXFx1RDgzNVxcdURDQUEnLFxuXHRvc2NyOiAnXFx1MjEzNCcsXG5cdE9zbGFzaDogJ1xcdTAwRDgnLFxuXHRvc2xhc2g6ICdcXHUwMEY4Jyxcblx0b3NvbDogJ1xcdTIyOTgnLFxuXHRPdGlsZGU6ICdcXHUwMEQ1Jyxcblx0b3RpbGRlOiAnXFx1MDBGNScsXG5cdE90aW1lczogJ1xcdTJBMzcnLFxuXHRvdGltZXM6ICdcXHUyMjk3Jyxcblx0b3RpbWVzYXM6ICdcXHUyQTM2Jyxcblx0T3VtbDogJ1xcdTAwRDYnLFxuXHRvdW1sOiAnXFx1MDBGNicsXG5cdG92YmFyOiAnXFx1MjMzRCcsXG5cdE92ZXJCYXI6ICdcXHUyMDNFJyxcblx0T3ZlckJyYWNlOiAnXFx1MjNERScsXG5cdE92ZXJCcmFja2V0OiAnXFx1MjNCNCcsXG5cdE92ZXJQYXJlbnRoZXNpczogJ1xcdTIzREMnLFxuXHRwYXI6ICdcXHUyMjI1Jyxcblx0cGFyYTogJ1xcdTAwQjYnLFxuXHRwYXJhbGxlbDogJ1xcdTIyMjUnLFxuXHRwYXJzaW06ICdcXHUyQUYzJyxcblx0cGFyc2w6ICdcXHUyQUZEJyxcblx0cGFydDogJ1xcdTIyMDInLFxuXHRQYXJ0aWFsRDogJ1xcdTIyMDInLFxuXHRQY3k6ICdcXHUwNDFGJyxcblx0cGN5OiAnXFx1MDQzRicsXG5cdHBlcmNudDogJ1xcdTAwMjUnLFxuXHRwZXJpb2Q6ICdcXHUwMDJFJyxcblx0cGVybWlsOiAnXFx1MjAzMCcsXG5cdHBlcnA6ICdcXHUyMkE1Jyxcblx0cGVydGVuazogJ1xcdTIwMzEnLFxuXHRQZnI6ICdcXHVEODM1XFx1REQxMycsXG5cdHBmcjogJ1xcdUQ4MzVcXHVERDJEJyxcblx0UGhpOiAnXFx1MDNBNicsXG5cdHBoaTogJ1xcdTAzQzYnLFxuXHRwaGl2OiAnXFx1MDNENScsXG5cdHBobW1hdDogJ1xcdTIxMzMnLFxuXHRwaG9uZTogJ1xcdTI2MEUnLFxuXHRQaTogJ1xcdTAzQTAnLFxuXHRwaTogJ1xcdTAzQzAnLFxuXHRwaXRjaGZvcms6ICdcXHUyMkQ0Jyxcblx0cGl2OiAnXFx1MDNENicsXG5cdHBsYW5jazogJ1xcdTIxMEYnLFxuXHRwbGFuY2toOiAnXFx1MjEwRScsXG5cdHBsYW5rdjogJ1xcdTIxMEYnLFxuXHRwbHVzOiAnXFx1MDAyQicsXG5cdHBsdXNhY2lyOiAnXFx1MkEyMycsXG5cdHBsdXNiOiAnXFx1MjI5RScsXG5cdHBsdXNjaXI6ICdcXHUyQTIyJyxcblx0cGx1c2RvOiAnXFx1MjIxNCcsXG5cdHBsdXNkdTogJ1xcdTJBMjUnLFxuXHRwbHVzZTogJ1xcdTJBNzInLFxuXHRQbHVzTWludXM6ICdcXHUwMEIxJyxcblx0cGx1c21uOiAnXFx1MDBCMScsXG5cdHBsdXNzaW06ICdcXHUyQTI2Jyxcblx0cGx1c3R3bzogJ1xcdTJBMjcnLFxuXHRwbTogJ1xcdTAwQjEnLFxuXHRQb2luY2FyZXBsYW5lOiAnXFx1MjEwQycsXG5cdHBvaW50aW50OiAnXFx1MkExNScsXG5cdFBvcGY6ICdcXHUyMTE5Jyxcblx0cG9wZjogJ1xcdUQ4MzVcXHVERDYxJyxcblx0cG91bmQ6ICdcXHUwMEEzJyxcblx0UHI6ICdcXHUyQUJCJyxcblx0cHI6ICdcXHUyMjdBJyxcblx0cHJhcDogJ1xcdTJBQjcnLFxuXHRwcmN1ZTogJ1xcdTIyN0MnLFxuXHRwckU6ICdcXHUyQUIzJyxcblx0cHJlOiAnXFx1MkFBRicsXG5cdHByZWM6ICdcXHUyMjdBJyxcblx0cHJlY2FwcHJveDogJ1xcdTJBQjcnLFxuXHRwcmVjY3VybHllcTogJ1xcdTIyN0MnLFxuXHRQcmVjZWRlczogJ1xcdTIyN0EnLFxuXHRQcmVjZWRlc0VxdWFsOiAnXFx1MkFBRicsXG5cdFByZWNlZGVzU2xhbnRFcXVhbDogJ1xcdTIyN0MnLFxuXHRQcmVjZWRlc1RpbGRlOiAnXFx1MjI3RScsXG5cdHByZWNlcTogJ1xcdTJBQUYnLFxuXHRwcmVjbmFwcHJveDogJ1xcdTJBQjknLFxuXHRwcmVjbmVxcTogJ1xcdTJBQjUnLFxuXHRwcmVjbnNpbTogJ1xcdTIyRTgnLFxuXHRwcmVjc2ltOiAnXFx1MjI3RScsXG5cdFByaW1lOiAnXFx1MjAzMycsXG5cdHByaW1lOiAnXFx1MjAzMicsXG5cdHByaW1lczogJ1xcdTIxMTknLFxuXHRwcm5hcDogJ1xcdTJBQjknLFxuXHRwcm5FOiAnXFx1MkFCNScsXG5cdHBybnNpbTogJ1xcdTIyRTgnLFxuXHRwcm9kOiAnXFx1MjIwRicsXG5cdFByb2R1Y3Q6ICdcXHUyMjBGJyxcblx0cHJvZmFsYXI6ICdcXHUyMzJFJyxcblx0cHJvZmxpbmU6ICdcXHUyMzEyJyxcblx0cHJvZnN1cmY6ICdcXHUyMzEzJyxcblx0cHJvcDogJ1xcdTIyMUQnLFxuXHRQcm9wb3J0aW9uOiAnXFx1MjIzNycsXG5cdFByb3BvcnRpb25hbDogJ1xcdTIyMUQnLFxuXHRwcm9wdG86ICdcXHUyMjFEJyxcblx0cHJzaW06ICdcXHUyMjdFJyxcblx0cHJ1cmVsOiAnXFx1MjJCMCcsXG5cdFBzY3I6ICdcXHVEODM1XFx1RENBQicsXG5cdHBzY3I6ICdcXHVEODM1XFx1RENDNScsXG5cdFBzaTogJ1xcdTAzQTgnLFxuXHRwc2k6ICdcXHUwM0M4Jyxcblx0cHVuY3NwOiAnXFx1MjAwOCcsXG5cdFFmcjogJ1xcdUQ4MzVcXHVERDE0Jyxcblx0cWZyOiAnXFx1RDgzNVxcdUREMkUnLFxuXHRxaW50OiAnXFx1MkEwQycsXG5cdFFvcGY6ICdcXHUyMTFBJyxcblx0cW9wZjogJ1xcdUQ4MzVcXHVERDYyJyxcblx0cXByaW1lOiAnXFx1MjA1NycsXG5cdFFzY3I6ICdcXHVEODM1XFx1RENBQycsXG5cdHFzY3I6ICdcXHVEODM1XFx1RENDNicsXG5cdHF1YXRlcm5pb25zOiAnXFx1MjEwRCcsXG5cdHF1YXRpbnQ6ICdcXHUyQTE2Jyxcblx0cXVlc3Q6ICdcXHUwMDNGJyxcblx0cXVlc3RlcTogJ1xcdTIyNUYnLFxuXHRRVU9UOiAnXFx1MDAyMicsXG5cdHF1b3Q6ICdcXHUwMDIyJyxcblx0ckFhcnI6ICdcXHUyMURCJyxcblx0cmFjZTogJ1xcdTIyM0RcXHUwMzMxJyxcblx0UmFjdXRlOiAnXFx1MDE1NCcsXG5cdHJhY3V0ZTogJ1xcdTAxNTUnLFxuXHRyYWRpYzogJ1xcdTIyMUEnLFxuXHRyYWVtcHR5djogJ1xcdTI5QjMnLFxuXHRSYW5nOiAnXFx1MjdFQicsXG5cdHJhbmc6ICdcXHUyN0U5Jyxcblx0cmFuZ2Q6ICdcXHUyOTkyJyxcblx0cmFuZ2U6ICdcXHUyOUE1Jyxcblx0cmFuZ2xlOiAnXFx1MjdFOScsXG5cdHJhcXVvOiAnXFx1MDBCQicsXG5cdFJhcnI6ICdcXHUyMUEwJyxcblx0ckFycjogJ1xcdTIxRDInLFxuXHRyYXJyOiAnXFx1MjE5MicsXG5cdHJhcnJhcDogJ1xcdTI5NzUnLFxuXHRyYXJyYjogJ1xcdTIxRTUnLFxuXHRyYXJyYmZzOiAnXFx1MjkyMCcsXG5cdHJhcnJjOiAnXFx1MjkzMycsXG5cdHJhcnJmczogJ1xcdTI5MUUnLFxuXHRyYXJyaGs6ICdcXHUyMUFBJyxcblx0cmFycmxwOiAnXFx1MjFBQycsXG5cdHJhcnJwbDogJ1xcdTI5NDUnLFxuXHRyYXJyc2ltOiAnXFx1Mjk3NCcsXG5cdFJhcnJ0bDogJ1xcdTI5MTYnLFxuXHRyYXJydGw6ICdcXHUyMUEzJyxcblx0cmFycnc6ICdcXHUyMTlEJyxcblx0ckF0YWlsOiAnXFx1MjkxQycsXG5cdHJhdGFpbDogJ1xcdTI5MUEnLFxuXHRyYXRpbzogJ1xcdTIyMzYnLFxuXHRyYXRpb25hbHM6ICdcXHUyMTFBJyxcblx0UkJhcnI6ICdcXHUyOTEwJyxcblx0ckJhcnI6ICdcXHUyOTBGJyxcblx0cmJhcnI6ICdcXHUyOTBEJyxcblx0cmJicms6ICdcXHUyNzczJyxcblx0cmJyYWNlOiAnXFx1MDA3RCcsXG5cdHJicmFjazogJ1xcdTAwNUQnLFxuXHRyYnJrZTogJ1xcdTI5OEMnLFxuXHRyYnJrc2xkOiAnXFx1Mjk4RScsXG5cdHJicmtzbHU6ICdcXHUyOTkwJyxcblx0UmNhcm9uOiAnXFx1MDE1OCcsXG5cdHJjYXJvbjogJ1xcdTAxNTknLFxuXHRSY2VkaWw6ICdcXHUwMTU2Jyxcblx0cmNlZGlsOiAnXFx1MDE1NycsXG5cdHJjZWlsOiAnXFx1MjMwOScsXG5cdHJjdWI6ICdcXHUwMDdEJyxcblx0UmN5OiAnXFx1MDQyMCcsXG5cdHJjeTogJ1xcdTA0NDAnLFxuXHRyZGNhOiAnXFx1MjkzNycsXG5cdHJkbGRoYXI6ICdcXHUyOTY5Jyxcblx0cmRxdW86ICdcXHUyMDFEJyxcblx0cmRxdW9yOiAnXFx1MjAxRCcsXG5cdHJkc2g6ICdcXHUyMUIzJyxcblx0UmU6ICdcXHUyMTFDJyxcblx0cmVhbDogJ1xcdTIxMUMnLFxuXHRyZWFsaW5lOiAnXFx1MjExQicsXG5cdHJlYWxwYXJ0OiAnXFx1MjExQycsXG5cdHJlYWxzOiAnXFx1MjExRCcsXG5cdHJlY3Q6ICdcXHUyNUFEJyxcblx0UkVHOiAnXFx1MDBBRScsXG5cdHJlZzogJ1xcdTAwQUUnLFxuXHRSZXZlcnNlRWxlbWVudDogJ1xcdTIyMEInLFxuXHRSZXZlcnNlRXF1aWxpYnJpdW06ICdcXHUyMUNCJyxcblx0UmV2ZXJzZVVwRXF1aWxpYnJpdW06ICdcXHUyOTZGJyxcblx0cmZpc2h0OiAnXFx1Mjk3RCcsXG5cdHJmbG9vcjogJ1xcdTIzMEInLFxuXHRSZnI6ICdcXHUyMTFDJyxcblx0cmZyOiAnXFx1RDgzNVxcdUREMkYnLFxuXHRySGFyOiAnXFx1Mjk2NCcsXG5cdHJoYXJkOiAnXFx1MjFDMScsXG5cdHJoYXJ1OiAnXFx1MjFDMCcsXG5cdHJoYXJ1bDogJ1xcdTI5NkMnLFxuXHRSaG86ICdcXHUwM0ExJyxcblx0cmhvOiAnXFx1MDNDMScsXG5cdHJob3Y6ICdcXHUwM0YxJyxcblx0UmlnaHRBbmdsZUJyYWNrZXQ6ICdcXHUyN0U5Jyxcblx0UmlnaHRBcnJvdzogJ1xcdTIxOTInLFxuXHRSaWdodGFycm93OiAnXFx1MjFEMicsXG5cdHJpZ2h0YXJyb3c6ICdcXHUyMTkyJyxcblx0UmlnaHRBcnJvd0JhcjogJ1xcdTIxRTUnLFxuXHRSaWdodEFycm93TGVmdEFycm93OiAnXFx1MjFDNCcsXG5cdHJpZ2h0YXJyb3d0YWlsOiAnXFx1MjFBMycsXG5cdFJpZ2h0Q2VpbGluZzogJ1xcdTIzMDknLFxuXHRSaWdodERvdWJsZUJyYWNrZXQ6ICdcXHUyN0U3Jyxcblx0UmlnaHREb3duVGVlVmVjdG9yOiAnXFx1Mjk1RCcsXG5cdFJpZ2h0RG93blZlY3RvcjogJ1xcdTIxQzInLFxuXHRSaWdodERvd25WZWN0b3JCYXI6ICdcXHUyOTU1Jyxcblx0UmlnaHRGbG9vcjogJ1xcdTIzMEInLFxuXHRyaWdodGhhcnBvb25kb3duOiAnXFx1MjFDMScsXG5cdHJpZ2h0aGFycG9vbnVwOiAnXFx1MjFDMCcsXG5cdHJpZ2h0bGVmdGFycm93czogJ1xcdTIxQzQnLFxuXHRyaWdodGxlZnRoYXJwb29uczogJ1xcdTIxQ0MnLFxuXHRyaWdodHJpZ2h0YXJyb3dzOiAnXFx1MjFDOScsXG5cdHJpZ2h0c3F1aWdhcnJvdzogJ1xcdTIxOUQnLFxuXHRSaWdodFRlZTogJ1xcdTIyQTInLFxuXHRSaWdodFRlZUFycm93OiAnXFx1MjFBNicsXG5cdFJpZ2h0VGVlVmVjdG9yOiAnXFx1Mjk1QicsXG5cdHJpZ2h0dGhyZWV0aW1lczogJ1xcdTIyQ0MnLFxuXHRSaWdodFRyaWFuZ2xlOiAnXFx1MjJCMycsXG5cdFJpZ2h0VHJpYW5nbGVCYXI6ICdcXHUyOUQwJyxcblx0UmlnaHRUcmlhbmdsZUVxdWFsOiAnXFx1MjJCNScsXG5cdFJpZ2h0VXBEb3duVmVjdG9yOiAnXFx1Mjk0RicsXG5cdFJpZ2h0VXBUZWVWZWN0b3I6ICdcXHUyOTVDJyxcblx0UmlnaHRVcFZlY3RvcjogJ1xcdTIxQkUnLFxuXHRSaWdodFVwVmVjdG9yQmFyOiAnXFx1Mjk1NCcsXG5cdFJpZ2h0VmVjdG9yOiAnXFx1MjFDMCcsXG5cdFJpZ2h0VmVjdG9yQmFyOiAnXFx1Mjk1MycsXG5cdHJpbmc6ICdcXHUwMkRBJyxcblx0cmlzaW5nZG90c2VxOiAnXFx1MjI1MycsXG5cdHJsYXJyOiAnXFx1MjFDNCcsXG5cdHJsaGFyOiAnXFx1MjFDQycsXG5cdHJsbTogJ1xcdTIwMEYnLFxuXHRybW91c3Q6ICdcXHUyM0IxJyxcblx0cm1vdXN0YWNoZTogJ1xcdTIzQjEnLFxuXHRybm1pZDogJ1xcdTJBRUUnLFxuXHRyb2FuZzogJ1xcdTI3RUQnLFxuXHRyb2FycjogJ1xcdTIxRkUnLFxuXHRyb2JyazogJ1xcdTI3RTcnLFxuXHRyb3BhcjogJ1xcdTI5ODYnLFxuXHRSb3BmOiAnXFx1MjExRCcsXG5cdHJvcGY6ICdcXHVEODM1XFx1REQ2MycsXG5cdHJvcGx1czogJ1xcdTJBMkUnLFxuXHRyb3RpbWVzOiAnXFx1MkEzNScsXG5cdFJvdW5kSW1wbGllczogJ1xcdTI5NzAnLFxuXHRycGFyOiAnXFx1MDAyOScsXG5cdHJwYXJndDogJ1xcdTI5OTQnLFxuXHRycHBvbGludDogJ1xcdTJBMTInLFxuXHRycmFycjogJ1xcdTIxQzknLFxuXHRScmlnaHRhcnJvdzogJ1xcdTIxREInLFxuXHRyc2FxdW86ICdcXHUyMDNBJyxcblx0UnNjcjogJ1xcdTIxMUInLFxuXHRyc2NyOiAnXFx1RDgzNVxcdURDQzcnLFxuXHRSc2g6ICdcXHUyMUIxJyxcblx0cnNoOiAnXFx1MjFCMScsXG5cdHJzcWI6ICdcXHUwMDVEJyxcblx0cnNxdW86ICdcXHUyMDE5Jyxcblx0cnNxdW9yOiAnXFx1MjAxOScsXG5cdHJ0aHJlZTogJ1xcdTIyQ0MnLFxuXHRydGltZXM6ICdcXHUyMkNBJyxcblx0cnRyaTogJ1xcdTI1QjknLFxuXHRydHJpZTogJ1xcdTIyQjUnLFxuXHRydHJpZjogJ1xcdTI1QjgnLFxuXHRydHJpbHRyaTogJ1xcdTI5Q0UnLFxuXHRSdWxlRGVsYXllZDogJ1xcdTI5RjQnLFxuXHRydWx1aGFyOiAnXFx1Mjk2OCcsXG5cdHJ4OiAnXFx1MjExRScsXG5cdFNhY3V0ZTogJ1xcdTAxNUEnLFxuXHRzYWN1dGU6ICdcXHUwMTVCJyxcblx0c2JxdW86ICdcXHUyMDFBJyxcblx0U2M6ICdcXHUyQUJDJyxcblx0c2M6ICdcXHUyMjdCJyxcblx0c2NhcDogJ1xcdTJBQjgnLFxuXHRTY2Fyb246ICdcXHUwMTYwJyxcblx0c2Nhcm9uOiAnXFx1MDE2MScsXG5cdHNjY3VlOiAnXFx1MjI3RCcsXG5cdHNjRTogJ1xcdTJBQjQnLFxuXHRzY2U6ICdcXHUyQUIwJyxcblx0U2NlZGlsOiAnXFx1MDE1RScsXG5cdHNjZWRpbDogJ1xcdTAxNUYnLFxuXHRTY2lyYzogJ1xcdTAxNUMnLFxuXHRzY2lyYzogJ1xcdTAxNUQnLFxuXHRzY25hcDogJ1xcdTJBQkEnLFxuXHRzY25FOiAnXFx1MkFCNicsXG5cdHNjbnNpbTogJ1xcdTIyRTknLFxuXHRzY3BvbGludDogJ1xcdTJBMTMnLFxuXHRzY3NpbTogJ1xcdTIyN0YnLFxuXHRTY3k6ICdcXHUwNDIxJyxcblx0c2N5OiAnXFx1MDQ0MScsXG5cdHNkb3Q6ICdcXHUyMkM1Jyxcblx0c2RvdGI6ICdcXHUyMkExJyxcblx0c2RvdGU6ICdcXHUyQTY2Jyxcblx0c2VhcmhrOiAnXFx1MjkyNScsXG5cdHNlQXJyOiAnXFx1MjFEOCcsXG5cdHNlYXJyOiAnXFx1MjE5OCcsXG5cdHNlYXJyb3c6ICdcXHUyMTk4Jyxcblx0c2VjdDogJ1xcdTAwQTcnLFxuXHRzZW1pOiAnXFx1MDAzQicsXG5cdHNlc3dhcjogJ1xcdTI5MjknLFxuXHRzZXRtaW51czogJ1xcdTIyMTYnLFxuXHRzZXRtbjogJ1xcdTIyMTYnLFxuXHRzZXh0OiAnXFx1MjczNicsXG5cdFNmcjogJ1xcdUQ4MzVcXHVERDE2Jyxcblx0c2ZyOiAnXFx1RDgzNVxcdUREMzAnLFxuXHRzZnJvd246ICdcXHUyMzIyJyxcblx0c2hhcnA6ICdcXHUyNjZGJyxcblx0U0hDSGN5OiAnXFx1MDQyOScsXG5cdHNoY2hjeTogJ1xcdTA0NDknLFxuXHRTSGN5OiAnXFx1MDQyOCcsXG5cdHNoY3k6ICdcXHUwNDQ4Jyxcblx0U2hvcnREb3duQXJyb3c6ICdcXHUyMTkzJyxcblx0U2hvcnRMZWZ0QXJyb3c6ICdcXHUyMTkwJyxcblx0c2hvcnRtaWQ6ICdcXHUyMjIzJyxcblx0c2hvcnRwYXJhbGxlbDogJ1xcdTIyMjUnLFxuXHRTaG9ydFJpZ2h0QXJyb3c6ICdcXHUyMTkyJyxcblx0U2hvcnRVcEFycm93OiAnXFx1MjE5MScsXG5cdHNoeTogJ1xcdTAwQUQnLFxuXHRTaWdtYTogJ1xcdTAzQTMnLFxuXHRzaWdtYTogJ1xcdTAzQzMnLFxuXHRzaWdtYWY6ICdcXHUwM0MyJyxcblx0c2lnbWF2OiAnXFx1MDNDMicsXG5cdHNpbTogJ1xcdTIyM0MnLFxuXHRzaW1kb3Q6ICdcXHUyQTZBJyxcblx0c2ltZTogJ1xcdTIyNDMnLFxuXHRzaW1lcTogJ1xcdTIyNDMnLFxuXHRzaW1nOiAnXFx1MkE5RScsXG5cdHNpbWdFOiAnXFx1MkFBMCcsXG5cdHNpbWw6ICdcXHUyQTlEJyxcblx0c2ltbEU6ICdcXHUyQTlGJyxcblx0c2ltbmU6ICdcXHUyMjQ2Jyxcblx0c2ltcGx1czogJ1xcdTJBMjQnLFxuXHRzaW1yYXJyOiAnXFx1Mjk3MicsXG5cdHNsYXJyOiAnXFx1MjE5MCcsXG5cdFNtYWxsQ2lyY2xlOiAnXFx1MjIxOCcsXG5cdHNtYWxsc2V0bWludXM6ICdcXHUyMjE2Jyxcblx0c21hc2hwOiAnXFx1MkEzMycsXG5cdHNtZXBhcnNsOiAnXFx1MjlFNCcsXG5cdHNtaWQ6ICdcXHUyMjIzJyxcblx0c21pbGU6ICdcXHUyMzIzJyxcblx0c210OiAnXFx1MkFBQScsXG5cdHNtdGU6ICdcXHUyQUFDJyxcblx0c210ZXM6ICdcXHUyQUFDXFx1RkUwMCcsXG5cdFNPRlRjeTogJ1xcdTA0MkMnLFxuXHRzb2Z0Y3k6ICdcXHUwNDRDJyxcblx0c29sOiAnXFx1MDAyRicsXG5cdHNvbGI6ICdcXHUyOUM0Jyxcblx0c29sYmFyOiAnXFx1MjMzRicsXG5cdFNvcGY6ICdcXHVEODM1XFx1REQ0QScsXG5cdHNvcGY6ICdcXHVEODM1XFx1REQ2NCcsXG5cdHNwYWRlczogJ1xcdTI2NjAnLFxuXHRzcGFkZXN1aXQ6ICdcXHUyNjYwJyxcblx0c3BhcjogJ1xcdTIyMjUnLFxuXHRzcWNhcDogJ1xcdTIyOTMnLFxuXHRzcWNhcHM6ICdcXHUyMjkzXFx1RkUwMCcsXG5cdHNxY3VwOiAnXFx1MjI5NCcsXG5cdHNxY3VwczogJ1xcdTIyOTRcXHVGRTAwJyxcblx0U3FydDogJ1xcdTIyMUEnLFxuXHRzcXN1YjogJ1xcdTIyOEYnLFxuXHRzcXN1YmU6ICdcXHUyMjkxJyxcblx0c3FzdWJzZXQ6ICdcXHUyMjhGJyxcblx0c3FzdWJzZXRlcTogJ1xcdTIyOTEnLFxuXHRzcXN1cDogJ1xcdTIyOTAnLFxuXHRzcXN1cGU6ICdcXHUyMjkyJyxcblx0c3FzdXBzZXQ6ICdcXHUyMjkwJyxcblx0c3FzdXBzZXRlcTogJ1xcdTIyOTInLFxuXHRzcXU6ICdcXHUyNUExJyxcblx0U3F1YXJlOiAnXFx1MjVBMScsXG5cdHNxdWFyZTogJ1xcdTI1QTEnLFxuXHRTcXVhcmVJbnRlcnNlY3Rpb246ICdcXHUyMjkzJyxcblx0U3F1YXJlU3Vic2V0OiAnXFx1MjI4RicsXG5cdFNxdWFyZVN1YnNldEVxdWFsOiAnXFx1MjI5MScsXG5cdFNxdWFyZVN1cGVyc2V0OiAnXFx1MjI5MCcsXG5cdFNxdWFyZVN1cGVyc2V0RXF1YWw6ICdcXHUyMjkyJyxcblx0U3F1YXJlVW5pb246ICdcXHUyMjk0Jyxcblx0c3F1YXJmOiAnXFx1MjVBQScsXG5cdHNxdWY6ICdcXHUyNUFBJyxcblx0c3JhcnI6ICdcXHUyMTkyJyxcblx0U3NjcjogJ1xcdUQ4MzVcXHVEQ0FFJyxcblx0c3NjcjogJ1xcdUQ4MzVcXHVEQ0M4Jyxcblx0c3NldG1uOiAnXFx1MjIxNicsXG5cdHNzbWlsZTogJ1xcdTIzMjMnLFxuXHRzc3RhcmY6ICdcXHUyMkM2Jyxcblx0U3RhcjogJ1xcdTIyQzYnLFxuXHRzdGFyOiAnXFx1MjYwNicsXG5cdHN0YXJmOiAnXFx1MjYwNScsXG5cdHN0cmFpZ2h0ZXBzaWxvbjogJ1xcdTAzRjUnLFxuXHRzdHJhaWdodHBoaTogJ1xcdTAzRDUnLFxuXHRzdHJuczogJ1xcdTAwQUYnLFxuXHRTdWI6ICdcXHUyMkQwJyxcblx0c3ViOiAnXFx1MjI4MicsXG5cdHN1YmRvdDogJ1xcdTJBQkQnLFxuXHRzdWJFOiAnXFx1MkFDNScsXG5cdHN1YmU6ICdcXHUyMjg2Jyxcblx0c3ViZWRvdDogJ1xcdTJBQzMnLFxuXHRzdWJtdWx0OiAnXFx1MkFDMScsXG5cdHN1Ym5FOiAnXFx1MkFDQicsXG5cdHN1Ym5lOiAnXFx1MjI4QScsXG5cdHN1YnBsdXM6ICdcXHUyQUJGJyxcblx0c3VicmFycjogJ1xcdTI5NzknLFxuXHRTdWJzZXQ6ICdcXHUyMkQwJyxcblx0c3Vic2V0OiAnXFx1MjI4MicsXG5cdHN1YnNldGVxOiAnXFx1MjI4NicsXG5cdHN1YnNldGVxcTogJ1xcdTJBQzUnLFxuXHRTdWJzZXRFcXVhbDogJ1xcdTIyODYnLFxuXHRzdWJzZXRuZXE6ICdcXHUyMjhBJyxcblx0c3Vic2V0bmVxcTogJ1xcdTJBQ0InLFxuXHRzdWJzaW06ICdcXHUyQUM3Jyxcblx0c3Vic3ViOiAnXFx1MkFENScsXG5cdHN1YnN1cDogJ1xcdTJBRDMnLFxuXHRzdWNjOiAnXFx1MjI3QicsXG5cdHN1Y2NhcHByb3g6ICdcXHUyQUI4Jyxcblx0c3VjY2N1cmx5ZXE6ICdcXHUyMjdEJyxcblx0U3VjY2VlZHM6ICdcXHUyMjdCJyxcblx0U3VjY2VlZHNFcXVhbDogJ1xcdTJBQjAnLFxuXHRTdWNjZWVkc1NsYW50RXF1YWw6ICdcXHUyMjdEJyxcblx0U3VjY2VlZHNUaWxkZTogJ1xcdTIyN0YnLFxuXHRzdWNjZXE6ICdcXHUyQUIwJyxcblx0c3VjY25hcHByb3g6ICdcXHUyQUJBJyxcblx0c3VjY25lcXE6ICdcXHUyQUI2Jyxcblx0c3VjY25zaW06ICdcXHUyMkU5Jyxcblx0c3VjY3NpbTogJ1xcdTIyN0YnLFxuXHRTdWNoVGhhdDogJ1xcdTIyMEInLFxuXHRTdW06ICdcXHUyMjExJyxcblx0c3VtOiAnXFx1MjIxMScsXG5cdHN1bmc6ICdcXHUyNjZBJyxcblx0U3VwOiAnXFx1MjJEMScsXG5cdHN1cDogJ1xcdTIyODMnLFxuXHRzdXAxOiAnXFx1MDBCOScsXG5cdHN1cDI6ICdcXHUwMEIyJyxcblx0c3VwMzogJ1xcdTAwQjMnLFxuXHRzdXBkb3Q6ICdcXHUyQUJFJyxcblx0c3VwZHN1YjogJ1xcdTJBRDgnLFxuXHRzdXBFOiAnXFx1MkFDNicsXG5cdHN1cGU6ICdcXHUyMjg3Jyxcblx0c3VwZWRvdDogJ1xcdTJBQzQnLFxuXHRTdXBlcnNldDogJ1xcdTIyODMnLFxuXHRTdXBlcnNldEVxdWFsOiAnXFx1MjI4NycsXG5cdHN1cGhzb2w6ICdcXHUyN0M5Jyxcblx0c3VwaHN1YjogJ1xcdTJBRDcnLFxuXHRzdXBsYXJyOiAnXFx1Mjk3QicsXG5cdHN1cG11bHQ6ICdcXHUyQUMyJyxcblx0c3VwbkU6ICdcXHUyQUNDJyxcblx0c3VwbmU6ICdcXHUyMjhCJyxcblx0c3VwcGx1czogJ1xcdTJBQzAnLFxuXHRTdXBzZXQ6ICdcXHUyMkQxJyxcblx0c3Vwc2V0OiAnXFx1MjI4MycsXG5cdHN1cHNldGVxOiAnXFx1MjI4NycsXG5cdHN1cHNldGVxcTogJ1xcdTJBQzYnLFxuXHRzdXBzZXRuZXE6ICdcXHUyMjhCJyxcblx0c3Vwc2V0bmVxcTogJ1xcdTJBQ0MnLFxuXHRzdXBzaW06ICdcXHUyQUM4Jyxcblx0c3Vwc3ViOiAnXFx1MkFENCcsXG5cdHN1cHN1cDogJ1xcdTJBRDYnLFxuXHRzd2FyaGs6ICdcXHUyOTI2Jyxcblx0c3dBcnI6ICdcXHUyMUQ5Jyxcblx0c3dhcnI6ICdcXHUyMTk5Jyxcblx0c3dhcnJvdzogJ1xcdTIxOTknLFxuXHRzd253YXI6ICdcXHUyOTJBJyxcblx0c3psaWc6ICdcXHUwMERGJyxcblx0VGFiOiAnXFx1MDAwOScsXG5cdHRhcmdldDogJ1xcdTIzMTYnLFxuXHRUYXU6ICdcXHUwM0E0Jyxcblx0dGF1OiAnXFx1MDNDNCcsXG5cdHRicms6ICdcXHUyM0I0Jyxcblx0VGNhcm9uOiAnXFx1MDE2NCcsXG5cdHRjYXJvbjogJ1xcdTAxNjUnLFxuXHRUY2VkaWw6ICdcXHUwMTYyJyxcblx0dGNlZGlsOiAnXFx1MDE2MycsXG5cdFRjeTogJ1xcdTA0MjInLFxuXHR0Y3k6ICdcXHUwNDQyJyxcblx0dGRvdDogJ1xcdTIwREInLFxuXHR0ZWxyZWM6ICdcXHUyMzE1Jyxcblx0VGZyOiAnXFx1RDgzNVxcdUREMTcnLFxuXHR0ZnI6ICdcXHVEODM1XFx1REQzMScsXG5cdHRoZXJlNDogJ1xcdTIyMzQnLFxuXHRUaGVyZWZvcmU6ICdcXHUyMjM0Jyxcblx0dGhlcmVmb3JlOiAnXFx1MjIzNCcsXG5cdFRoZXRhOiAnXFx1MDM5OCcsXG5cdHRoZXRhOiAnXFx1MDNCOCcsXG5cdHRoZXRhc3ltOiAnXFx1MDNEMScsXG5cdHRoZXRhdjogJ1xcdTAzRDEnLFxuXHR0aGlja2FwcHJveDogJ1xcdTIyNDgnLFxuXHR0aGlja3NpbTogJ1xcdTIyM0MnLFxuXHRUaGlja1NwYWNlOiAnXFx1MjA1RlxcdTIwMEEnLFxuXHR0aGluc3A6ICdcXHUyMDA5Jyxcblx0VGhpblNwYWNlOiAnXFx1MjAwOScsXG5cdHRoa2FwOiAnXFx1MjI0OCcsXG5cdHRoa3NpbTogJ1xcdTIyM0MnLFxuXHRUSE9STjogJ1xcdTAwREUnLFxuXHR0aG9ybjogJ1xcdTAwRkUnLFxuXHRUaWxkZTogJ1xcdTIyM0MnLFxuXHR0aWxkZTogJ1xcdTAyREMnLFxuXHRUaWxkZUVxdWFsOiAnXFx1MjI0MycsXG5cdFRpbGRlRnVsbEVxdWFsOiAnXFx1MjI0NScsXG5cdFRpbGRlVGlsZGU6ICdcXHUyMjQ4Jyxcblx0dGltZXM6ICdcXHUwMEQ3Jyxcblx0dGltZXNiOiAnXFx1MjJBMCcsXG5cdHRpbWVzYmFyOiAnXFx1MkEzMScsXG5cdHRpbWVzZDogJ1xcdTJBMzAnLFxuXHR0aW50OiAnXFx1MjIyRCcsXG5cdHRvZWE6ICdcXHUyOTI4Jyxcblx0dG9wOiAnXFx1MjJBNCcsXG5cdHRvcGJvdDogJ1xcdTIzMzYnLFxuXHR0b3BjaXI6ICdcXHUyQUYxJyxcblx0VG9wZjogJ1xcdUQ4MzVcXHVERDRCJyxcblx0dG9wZjogJ1xcdUQ4MzVcXHVERDY1Jyxcblx0dG9wZm9yazogJ1xcdTJBREEnLFxuXHR0b3NhOiAnXFx1MjkyOScsXG5cdHRwcmltZTogJ1xcdTIwMzQnLFxuXHRUUkFERTogJ1xcdTIxMjInLFxuXHR0cmFkZTogJ1xcdTIxMjInLFxuXHR0cmlhbmdsZTogJ1xcdTI1QjUnLFxuXHR0cmlhbmdsZWRvd246ICdcXHUyNUJGJyxcblx0dHJpYW5nbGVsZWZ0OiAnXFx1MjVDMycsXG5cdHRyaWFuZ2xlbGVmdGVxOiAnXFx1MjJCNCcsXG5cdHRyaWFuZ2xlcTogJ1xcdTIyNUMnLFxuXHR0cmlhbmdsZXJpZ2h0OiAnXFx1MjVCOScsXG5cdHRyaWFuZ2xlcmlnaHRlcTogJ1xcdTIyQjUnLFxuXHR0cmlkb3Q6ICdcXHUyNUVDJyxcblx0dHJpZTogJ1xcdTIyNUMnLFxuXHR0cmltaW51czogJ1xcdTJBM0EnLFxuXHRUcmlwbGVEb3Q6ICdcXHUyMERCJyxcblx0dHJpcGx1czogJ1xcdTJBMzknLFxuXHR0cmlzYjogJ1xcdTI5Q0QnLFxuXHR0cml0aW1lOiAnXFx1MkEzQicsXG5cdHRycGV6aXVtOiAnXFx1MjNFMicsXG5cdFRzY3I6ICdcXHVEODM1XFx1RENBRicsXG5cdHRzY3I6ICdcXHVEODM1XFx1RENDOScsXG5cdFRTY3k6ICdcXHUwNDI2Jyxcblx0dHNjeTogJ1xcdTA0NDYnLFxuXHRUU0hjeTogJ1xcdTA0MEInLFxuXHR0c2hjeTogJ1xcdTA0NUInLFxuXHRUc3Ryb2s6ICdcXHUwMTY2Jyxcblx0dHN0cm9rOiAnXFx1MDE2NycsXG5cdHR3aXh0OiAnXFx1MjI2QycsXG5cdHR3b2hlYWRsZWZ0YXJyb3c6ICdcXHUyMTlFJyxcblx0dHdvaGVhZHJpZ2h0YXJyb3c6ICdcXHUyMUEwJyxcblx0VWFjdXRlOiAnXFx1MDBEQScsXG5cdHVhY3V0ZTogJ1xcdTAwRkEnLFxuXHRVYXJyOiAnXFx1MjE5RicsXG5cdHVBcnI6ICdcXHUyMUQxJyxcblx0dWFycjogJ1xcdTIxOTEnLFxuXHRVYXJyb2NpcjogJ1xcdTI5NDknLFxuXHRVYnJjeTogJ1xcdTA0MEUnLFxuXHR1YnJjeTogJ1xcdTA0NUUnLFxuXHRVYnJldmU6ICdcXHUwMTZDJyxcblx0dWJyZXZlOiAnXFx1MDE2RCcsXG5cdFVjaXJjOiAnXFx1MDBEQicsXG5cdHVjaXJjOiAnXFx1MDBGQicsXG5cdFVjeTogJ1xcdTA0MjMnLFxuXHR1Y3k6ICdcXHUwNDQzJyxcblx0dWRhcnI6ICdcXHUyMUM1Jyxcblx0VWRibGFjOiAnXFx1MDE3MCcsXG5cdHVkYmxhYzogJ1xcdTAxNzEnLFxuXHR1ZGhhcjogJ1xcdTI5NkUnLFxuXHR1ZmlzaHQ6ICdcXHUyOTdFJyxcblx0VWZyOiAnXFx1RDgzNVxcdUREMTgnLFxuXHR1ZnI6ICdcXHVEODM1XFx1REQzMicsXG5cdFVncmF2ZTogJ1xcdTAwRDknLFxuXHR1Z3JhdmU6ICdcXHUwMEY5Jyxcblx0dUhhcjogJ1xcdTI5NjMnLFxuXHR1aGFybDogJ1xcdTIxQkYnLFxuXHR1aGFycjogJ1xcdTIxQkUnLFxuXHR1aGJsazogJ1xcdTI1ODAnLFxuXHR1bGNvcm46ICdcXHUyMzFDJyxcblx0dWxjb3JuZXI6ICdcXHUyMzFDJyxcblx0dWxjcm9wOiAnXFx1MjMwRicsXG5cdHVsdHJpOiAnXFx1MjVGOCcsXG5cdFVtYWNyOiAnXFx1MDE2QScsXG5cdHVtYWNyOiAnXFx1MDE2QicsXG5cdHVtbDogJ1xcdTAwQTgnLFxuXHRVbmRlckJhcjogJ1xcdTAwNUYnLFxuXHRVbmRlckJyYWNlOiAnXFx1MjNERicsXG5cdFVuZGVyQnJhY2tldDogJ1xcdTIzQjUnLFxuXHRVbmRlclBhcmVudGhlc2lzOiAnXFx1MjNERCcsXG5cdFVuaW9uOiAnXFx1MjJDMycsXG5cdFVuaW9uUGx1czogJ1xcdTIyOEUnLFxuXHRVb2dvbjogJ1xcdTAxNzInLFxuXHR1b2dvbjogJ1xcdTAxNzMnLFxuXHRVb3BmOiAnXFx1RDgzNVxcdURENEMnLFxuXHR1b3BmOiAnXFx1RDgzNVxcdURENjYnLFxuXHRVcEFycm93OiAnXFx1MjE5MScsXG5cdFVwYXJyb3c6ICdcXHUyMUQxJyxcblx0dXBhcnJvdzogJ1xcdTIxOTEnLFxuXHRVcEFycm93QmFyOiAnXFx1MjkxMicsXG5cdFVwQXJyb3dEb3duQXJyb3c6ICdcXHUyMUM1Jyxcblx0VXBEb3duQXJyb3c6ICdcXHUyMTk1Jyxcblx0VXBkb3duYXJyb3c6ICdcXHUyMUQ1Jyxcblx0dXBkb3duYXJyb3c6ICdcXHUyMTk1Jyxcblx0VXBFcXVpbGlicml1bTogJ1xcdTI5NkUnLFxuXHR1cGhhcnBvb25sZWZ0OiAnXFx1MjFCRicsXG5cdHVwaGFycG9vbnJpZ2h0OiAnXFx1MjFCRScsXG5cdHVwbHVzOiAnXFx1MjI4RScsXG5cdFVwcGVyTGVmdEFycm93OiAnXFx1MjE5NicsXG5cdFVwcGVyUmlnaHRBcnJvdzogJ1xcdTIxOTcnLFxuXHRVcHNpOiAnXFx1MDNEMicsXG5cdHVwc2k6ICdcXHUwM0M1Jyxcblx0dXBzaWg6ICdcXHUwM0QyJyxcblx0VXBzaWxvbjogJ1xcdTAzQTUnLFxuXHR1cHNpbG9uOiAnXFx1MDNDNScsXG5cdFVwVGVlOiAnXFx1MjJBNScsXG5cdFVwVGVlQXJyb3c6ICdcXHUyMUE1Jyxcblx0dXB1cGFycm93czogJ1xcdTIxQzgnLFxuXHR1cmNvcm46ICdcXHUyMzFEJyxcblx0dXJjb3JuZXI6ICdcXHUyMzFEJyxcblx0dXJjcm9wOiAnXFx1MjMwRScsXG5cdFVyaW5nOiAnXFx1MDE2RScsXG5cdHVyaW5nOiAnXFx1MDE2RicsXG5cdHVydHJpOiAnXFx1MjVGOScsXG5cdFVzY3I6ICdcXHVEODM1XFx1RENCMCcsXG5cdHVzY3I6ICdcXHVEODM1XFx1RENDQScsXG5cdHV0ZG90OiAnXFx1MjJGMCcsXG5cdFV0aWxkZTogJ1xcdTAxNjgnLFxuXHR1dGlsZGU6ICdcXHUwMTY5Jyxcblx0dXRyaTogJ1xcdTI1QjUnLFxuXHR1dHJpZjogJ1xcdTI1QjQnLFxuXHR1dWFycjogJ1xcdTIxQzgnLFxuXHRVdW1sOiAnXFx1MDBEQycsXG5cdHV1bWw6ICdcXHUwMEZDJyxcblx0dXdhbmdsZTogJ1xcdTI5QTcnLFxuXHR2YW5ncnQ6ICdcXHUyOTlDJyxcblx0dmFyZXBzaWxvbjogJ1xcdTAzRjUnLFxuXHR2YXJrYXBwYTogJ1xcdTAzRjAnLFxuXHR2YXJub3RoaW5nOiAnXFx1MjIwNScsXG5cdHZhcnBoaTogJ1xcdTAzRDUnLFxuXHR2YXJwaTogJ1xcdTAzRDYnLFxuXHR2YXJwcm9wdG86ICdcXHUyMjFEJyxcblx0dkFycjogJ1xcdTIxRDUnLFxuXHR2YXJyOiAnXFx1MjE5NScsXG5cdHZhcnJobzogJ1xcdTAzRjEnLFxuXHR2YXJzaWdtYTogJ1xcdTAzQzInLFxuXHR2YXJzdWJzZXRuZXE6ICdcXHUyMjhBXFx1RkUwMCcsXG5cdHZhcnN1YnNldG5lcXE6ICdcXHUyQUNCXFx1RkUwMCcsXG5cdHZhcnN1cHNldG5lcTogJ1xcdTIyOEJcXHVGRTAwJyxcblx0dmFyc3Vwc2V0bmVxcTogJ1xcdTJBQ0NcXHVGRTAwJyxcblx0dmFydGhldGE6ICdcXHUwM0QxJyxcblx0dmFydHJpYW5nbGVsZWZ0OiAnXFx1MjJCMicsXG5cdHZhcnRyaWFuZ2xlcmlnaHQ6ICdcXHUyMkIzJyxcblx0VmJhcjogJ1xcdTJBRUInLFxuXHR2QmFyOiAnXFx1MkFFOCcsXG5cdHZCYXJ2OiAnXFx1MkFFOScsXG5cdFZjeTogJ1xcdTA0MTInLFxuXHR2Y3k6ICdcXHUwNDMyJyxcblx0VkRhc2g6ICdcXHUyMkFCJyxcblx0VmRhc2g6ICdcXHUyMkE5Jyxcblx0dkRhc2g6ICdcXHUyMkE4Jyxcblx0dmRhc2g6ICdcXHUyMkEyJyxcblx0VmRhc2hsOiAnXFx1MkFFNicsXG5cdFZlZTogJ1xcdTIyQzEnLFxuXHR2ZWU6ICdcXHUyMjI4Jyxcblx0dmVlYmFyOiAnXFx1MjJCQicsXG5cdHZlZWVxOiAnXFx1MjI1QScsXG5cdHZlbGxpcDogJ1xcdTIyRUUnLFxuXHRWZXJiYXI6ICdcXHUyMDE2Jyxcblx0dmVyYmFyOiAnXFx1MDA3QycsXG5cdFZlcnQ6ICdcXHUyMDE2Jyxcblx0dmVydDogJ1xcdTAwN0MnLFxuXHRWZXJ0aWNhbEJhcjogJ1xcdTIyMjMnLFxuXHRWZXJ0aWNhbExpbmU6ICdcXHUwMDdDJyxcblx0VmVydGljYWxTZXBhcmF0b3I6ICdcXHUyNzU4Jyxcblx0VmVydGljYWxUaWxkZTogJ1xcdTIyNDAnLFxuXHRWZXJ5VGhpblNwYWNlOiAnXFx1MjAwQScsXG5cdFZmcjogJ1xcdUQ4MzVcXHVERDE5Jyxcblx0dmZyOiAnXFx1RDgzNVxcdUREMzMnLFxuXHR2bHRyaTogJ1xcdTIyQjInLFxuXHR2bnN1YjogJ1xcdTIyODJcXHUyMEQyJyxcblx0dm5zdXA6ICdcXHUyMjgzXFx1MjBEMicsXG5cdFZvcGY6ICdcXHVEODM1XFx1REQ0RCcsXG5cdHZvcGY6ICdcXHVEODM1XFx1REQ2NycsXG5cdHZwcm9wOiAnXFx1MjIxRCcsXG5cdHZydHJpOiAnXFx1MjJCMycsXG5cdFZzY3I6ICdcXHVEODM1XFx1RENCMScsXG5cdHZzY3I6ICdcXHVEODM1XFx1RENDQicsXG5cdHZzdWJuRTogJ1xcdTJBQ0JcXHVGRTAwJyxcblx0dnN1Ym5lOiAnXFx1MjI4QVxcdUZFMDAnLFxuXHR2c3VwbkU6ICdcXHUyQUNDXFx1RkUwMCcsXG5cdHZzdXBuZTogJ1xcdTIyOEJcXHVGRTAwJyxcblx0VnZkYXNoOiAnXFx1MjJBQScsXG5cdHZ6aWd6YWc6ICdcXHUyOTlBJyxcblx0V2NpcmM6ICdcXHUwMTc0Jyxcblx0d2NpcmM6ICdcXHUwMTc1Jyxcblx0d2VkYmFyOiAnXFx1MkE1RicsXG5cdFdlZGdlOiAnXFx1MjJDMCcsXG5cdHdlZGdlOiAnXFx1MjIyNycsXG5cdHdlZGdlcTogJ1xcdTIyNTknLFxuXHR3ZWllcnA6ICdcXHUyMTE4Jyxcblx0V2ZyOiAnXFx1RDgzNVxcdUREMUEnLFxuXHR3ZnI6ICdcXHVEODM1XFx1REQzNCcsXG5cdFdvcGY6ICdcXHVEODM1XFx1REQ0RScsXG5cdHdvcGY6ICdcXHVEODM1XFx1REQ2OCcsXG5cdHdwOiAnXFx1MjExOCcsXG5cdHdyOiAnXFx1MjI0MCcsXG5cdHdyZWF0aDogJ1xcdTIyNDAnLFxuXHRXc2NyOiAnXFx1RDgzNVxcdURDQjInLFxuXHR3c2NyOiAnXFx1RDgzNVxcdURDQ0MnLFxuXHR4Y2FwOiAnXFx1MjJDMicsXG5cdHhjaXJjOiAnXFx1MjVFRicsXG5cdHhjdXA6ICdcXHUyMkMzJyxcblx0eGR0cmk6ICdcXHUyNUJEJyxcblx0WGZyOiAnXFx1RDgzNVxcdUREMUInLFxuXHR4ZnI6ICdcXHVEODM1XFx1REQzNScsXG5cdHhoQXJyOiAnXFx1MjdGQScsXG5cdHhoYXJyOiAnXFx1MjdGNycsXG5cdFhpOiAnXFx1MDM5RScsXG5cdHhpOiAnXFx1MDNCRScsXG5cdHhsQXJyOiAnXFx1MjdGOCcsXG5cdHhsYXJyOiAnXFx1MjdGNScsXG5cdHhtYXA6ICdcXHUyN0ZDJyxcblx0eG5pczogJ1xcdTIyRkInLFxuXHR4b2RvdDogJ1xcdTJBMDAnLFxuXHRYb3BmOiAnXFx1RDgzNVxcdURENEYnLFxuXHR4b3BmOiAnXFx1RDgzNVxcdURENjknLFxuXHR4b3BsdXM6ICdcXHUyQTAxJyxcblx0eG90aW1lOiAnXFx1MkEwMicsXG5cdHhyQXJyOiAnXFx1MjdGOScsXG5cdHhyYXJyOiAnXFx1MjdGNicsXG5cdFhzY3I6ICdcXHVEODM1XFx1RENCMycsXG5cdHhzY3I6ICdcXHVEODM1XFx1RENDRCcsXG5cdHhzcWN1cDogJ1xcdTJBMDYnLFxuXHR4dXBsdXM6ICdcXHUyQTA0Jyxcblx0eHV0cmk6ICdcXHUyNUIzJyxcblx0eHZlZTogJ1xcdTIyQzEnLFxuXHR4d2VkZ2U6ICdcXHUyMkMwJyxcblx0WWFjdXRlOiAnXFx1MDBERCcsXG5cdHlhY3V0ZTogJ1xcdTAwRkQnLFxuXHRZQWN5OiAnXFx1MDQyRicsXG5cdHlhY3k6ICdcXHUwNDRGJyxcblx0WWNpcmM6ICdcXHUwMTc2Jyxcblx0eWNpcmM6ICdcXHUwMTc3Jyxcblx0WWN5OiAnXFx1MDQyQicsXG5cdHljeTogJ1xcdTA0NEInLFxuXHR5ZW46ICdcXHUwMEE1Jyxcblx0WWZyOiAnXFx1RDgzNVxcdUREMUMnLFxuXHR5ZnI6ICdcXHVEODM1XFx1REQzNicsXG5cdFlJY3k6ICdcXHUwNDA3Jyxcblx0eWljeTogJ1xcdTA0NTcnLFxuXHRZb3BmOiAnXFx1RDgzNVxcdURENTAnLFxuXHR5b3BmOiAnXFx1RDgzNVxcdURENkEnLFxuXHRZc2NyOiAnXFx1RDgzNVxcdURDQjQnLFxuXHR5c2NyOiAnXFx1RDgzNVxcdURDQ0UnLFxuXHRZVWN5OiAnXFx1MDQyRScsXG5cdHl1Y3k6ICdcXHUwNDRFJyxcblx0WXVtbDogJ1xcdTAxNzgnLFxuXHR5dW1sOiAnXFx1MDBGRicsXG5cdFphY3V0ZTogJ1xcdTAxNzknLFxuXHR6YWN1dGU6ICdcXHUwMTdBJyxcblx0WmNhcm9uOiAnXFx1MDE3RCcsXG5cdHpjYXJvbjogJ1xcdTAxN0UnLFxuXHRaY3k6ICdcXHUwNDE3Jyxcblx0emN5OiAnXFx1MDQzNycsXG5cdFpkb3Q6ICdcXHUwMTdCJyxcblx0emRvdDogJ1xcdTAxN0MnLFxuXHR6ZWV0cmY6ICdcXHUyMTI4Jyxcblx0WmVyb1dpZHRoU3BhY2U6ICdcXHUyMDBCJyxcblx0WmV0YTogJ1xcdTAzOTYnLFxuXHR6ZXRhOiAnXFx1MDNCNicsXG5cdFpmcjogJ1xcdTIxMjgnLFxuXHR6ZnI6ICdcXHVEODM1XFx1REQzNycsXG5cdFpIY3k6ICdcXHUwNDE2Jyxcblx0emhjeTogJ1xcdTA0MzYnLFxuXHR6aWdyYXJyOiAnXFx1MjFERCcsXG5cdFpvcGY6ICdcXHUyMTI0Jyxcblx0em9wZjogJ1xcdUQ4MzVcXHVERDZCJyxcblx0WnNjcjogJ1xcdUQ4MzVcXHVEQ0I1Jyxcblx0enNjcjogJ1xcdUQ4MzVcXHVEQ0NGJyxcblx0endqOiAnXFx1MjAwRCcsXG5cdHp3bmo6ICdcXHUyMDBDJyxcbn0pO1xuXG4vKipcbiAqIEBkZXByZWNhdGVkIHVzZSBgSFRNTF9FTlRJVElFU2AgaW5zdGVhZFxuICogQHNlZSBIVE1MX0VOVElUSUVTXG4gKi9cbmV4cG9ydHMuZW50aXR5TWFwID0gZXhwb3J0cy5IVE1MX0VOVElUSUVTO1xuIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/@xmldom/xmldom/lib/entities.js\n"); + +/***/ }), + +/***/ "./node_modules/@xmldom/xmldom/lib/index.js": +/*!**************************************************!*\ + !*** ./node_modules/@xmldom/xmldom/lib/index.js ***! + \**************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +eval("var dom = __webpack_require__(/*! ./dom */ \"./node_modules/@xmldom/xmldom/lib/dom.js\")\nexports.DOMImplementation = dom.DOMImplementation\nexports.XMLSerializer = dom.XMLSerializer\nexports.DOMParser = __webpack_require__(/*! ./dom-parser */ \"./node_modules/@xmldom/xmldom/lib/dom-parser.js\").DOMParser\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9HcC8uL25vZGVfbW9kdWxlcy9AeG1sZG9tL3htbGRvbS9saWIvaW5kZXguanM/MjEwYiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxVQUFVLG1CQUFPLENBQUMsdURBQU87QUFDekI7QUFDQTtBQUNBLG9CQUFvQixtQkFBTyxDQUFDLHFFQUFjIiwiZmlsZSI6Ii4vbm9kZV9tb2R1bGVzL0B4bWxkb20veG1sZG9tL2xpYi9pbmRleC5qcy5qcyIsInNvdXJjZXNDb250ZW50IjpbInZhciBkb20gPSByZXF1aXJlKCcuL2RvbScpXG5leHBvcnRzLkRPTUltcGxlbWVudGF0aW9uID0gZG9tLkRPTUltcGxlbWVudGF0aW9uXG5leHBvcnRzLlhNTFNlcmlhbGl6ZXIgPSBkb20uWE1MU2VyaWFsaXplclxuZXhwb3J0cy5ET01QYXJzZXIgPSByZXF1aXJlKCcuL2RvbS1wYXJzZXInKS5ET01QYXJzZXJcbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/@xmldom/xmldom/lib/index.js\n"); + +/***/ }), + +/***/ "./node_modules/@xmldom/xmldom/lib/sax.js": +/*!************************************************!*\ + !*** ./node_modules/@xmldom/xmldom/lib/sax.js ***! + \************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +eval("var NAMESPACE = __webpack_require__(/*! ./conventions */ \"./node_modules/@xmldom/xmldom/lib/conventions.js\").NAMESPACE;\n\n//[4] \tNameStartChar\t ::= \t\":\" | [A-Z] | \"_\" | [a-z] | [#xC0-#xD6] | [#xD8-#xF6] | [#xF8-#x2FF] | [#x370-#x37D] | [#x37F-#x1FFF] | [#x200C-#x200D] | [#x2070-#x218F] | [#x2C00-#x2FEF] | [#x3001-#xD7FF] | [#xF900-#xFDCF] | [#xFDF0-#xFFFD] | [#x10000-#xEFFFF]\n//[4a] \tNameChar\t ::= \tNameStartChar | \"-\" | \".\" | [0-9] | #xB7 | [#x0300-#x036F] | [#x203F-#x2040]\n//[5] \tName\t ::= \tNameStartChar (NameChar)*\nvar nameStartChar = /[A-Z_a-z\\xC0-\\xD6\\xD8-\\xF6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD]///\\u10000-\\uEFFFF\nvar nameChar = new RegExp(\"[\\\\-\\\\.0-9\"+nameStartChar.source.slice(1,-1)+\"\\\\u00B7\\\\u0300-\\\\u036F\\\\u203F-\\\\u2040]\");\nvar tagNamePattern = new RegExp('^'+nameStartChar.source+nameChar.source+'*(?:\\:'+nameStartChar.source+nameChar.source+'*)?$');\n//var tagNamePattern = /^[a-zA-Z_][\\w\\-\\.]*(?:\\:[a-zA-Z_][\\w\\-\\.]*)?$/\n//var handlers = 'resolveEntity,getExternalSubset,characters,endDocument,endElement,endPrefixMapping,ignorableWhitespace,processingInstruction,setDocumentLocator,skippedEntity,startDocument,startElement,startPrefixMapping,notationDecl,unparsedEntityDecl,error,fatalError,warning,attributeDecl,elementDecl,externalEntityDecl,internalEntityDecl,comment,endCDATA,endDTD,endEntity,startCDATA,startDTD,startEntity'.split(',')\n\n//S_TAG,\tS_ATTR,\tS_EQ,\tS_ATTR_NOQUOT_VALUE\n//S_ATTR_SPACE,\tS_ATTR_END,\tS_TAG_SPACE, S_TAG_CLOSE\nvar S_TAG = 0;//tag name offerring\nvar S_ATTR = 1;//attr name offerring\nvar S_ATTR_SPACE=2;//attr name end and space offer\nvar S_EQ = 3;//=space?\nvar S_ATTR_NOQUOT_VALUE = 4;//attr value(no quot value only)\nvar S_ATTR_END = 5;//attr value end and no space(quot end)\nvar S_TAG_SPACE = 6;//(attr value end || tag end ) && (space offer)\nvar S_TAG_CLOSE = 7;//closed el\n\n/**\n * Creates an error that will not be caught by XMLReader aka the SAX parser.\n *\n * @param {string} message\n * @param {any?} locator Optional, can provide details about the location in the source\n * @constructor\n */\nfunction ParseError(message, locator) {\n\tthis.message = message\n\tthis.locator = locator\n\tif(Error.captureStackTrace) Error.captureStackTrace(this, ParseError);\n}\nParseError.prototype = new Error();\nParseError.prototype.name = ParseError.name\n\nfunction XMLReader(){\n\n}\n\nXMLReader.prototype = {\n\tparse:function(source,defaultNSMap,entityMap){\n\t\tvar domBuilder = this.domBuilder;\n\t\tdomBuilder.startDocument();\n\t\t_copy(defaultNSMap ,defaultNSMap = {})\n\t\tparse(source,defaultNSMap,entityMap,\n\t\t\t\tdomBuilder,this.errorHandler);\n\t\tdomBuilder.endDocument();\n\t}\n}\nfunction parse(source,defaultNSMapCopy,entityMap,domBuilder,errorHandler){\n\tfunction fixedFromCharCode(code) {\n\t\t// String.prototype.fromCharCode does not supports\n\t\t// > 2 bytes unicode chars directly\n\t\tif (code > 0xffff) {\n\t\t\tcode -= 0x10000;\n\t\t\tvar surrogate1 = 0xd800 + (code >> 10)\n\t\t\t\t, surrogate2 = 0xdc00 + (code & 0x3ff);\n\n\t\t\treturn String.fromCharCode(surrogate1, surrogate2);\n\t\t} else {\n\t\t\treturn String.fromCharCode(code);\n\t\t}\n\t}\n\tfunction entityReplacer(a){\n\t\tvar k = a.slice(1,-1);\n\t\tif (Object.hasOwnProperty.call(entityMap, k)) {\n\t\t\treturn entityMap[k];\n\t\t}else if(k.charAt(0) === '#'){\n\t\t\treturn fixedFromCharCode(parseInt(k.substr(1).replace('x','0x')))\n\t\t}else{\n\t\t\terrorHandler.error('entity not found:'+a);\n\t\t\treturn a;\n\t\t}\n\t}\n\tfunction appendText(end){//has some bugs\n\t\tif(end>start){\n\t\t\tvar xt = source.substring(start,end).replace(/&#?\\w+;/g,entityReplacer);\n\t\t\tlocator&&position(start);\n\t\t\tdomBuilder.characters(xt,0,end-start);\n\t\t\tstart = end\n\t\t}\n\t}\n\tfunction position(p,m){\n\t\twhile(p>=lineEnd && (m = linePattern.exec(source))){\n\t\t\tlineStart = m.index;\n\t\t\tlineEnd = lineStart + m[0].length;\n\t\t\tlocator.lineNumber++;\n\t\t\t//console.log('line++:',locator,startPos,endPos)\n\t\t}\n\t\tlocator.columnNumber = p-lineStart+1;\n\t}\n\tvar lineStart = 0;\n\tvar lineEnd = 0;\n\tvar linePattern = /.*(?:\\r\\n?|\\n)|.*$/g\n\tvar locator = domBuilder.locator;\n\n\tvar parseStack = [{currentNSMap:defaultNSMapCopy}]\n\tvar closeMap = {};\n\tvar start = 0;\n\twhile(true){\n\t\ttry{\n\t\t\tvar tagStart = source.indexOf('<',start);\n\t\t\tif(tagStart<0){\n\t\t\t\tif(!source.substr(start).match(/^\\s*$/)){\n\t\t\t\t\tvar doc = domBuilder.doc;\n\t \t\t\tvar text = doc.createTextNode(source.substr(start));\n\t \t\t\tdoc.appendChild(text);\n\t \t\t\tdomBuilder.currentElement = text;\n\t\t\t\t}\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif(tagStart>start){\n\t\t\t\tappendText(tagStart);\n\t\t\t}\n\t\t\tswitch(source.charAt(tagStart+1)){\n\t\t\tcase '/':\n\t\t\t\tvar end = source.indexOf('>',tagStart+3);\n\t\t\t\tvar tagName = source.substring(tagStart + 2, end).replace(/[ \\t\\n\\r]+$/g, '');\n\t\t\t\tvar config = parseStack.pop();\n\t\t\t\tif(end<0){\n\n\t \t\ttagName = source.substring(tagStart+2).replace(/[\\s<].*/,'');\n\t \t\terrorHandler.error(\"end tag name: \"+tagName+' is not complete:'+config.tagName);\n\t \t\tend = tagStart+1+tagName.length;\n\t \t}else if(tagName.match(/\\s\n\t\t\t\tlocator&&position(tagStart);\n\t\t\t\tend = parseInstruction(source,tagStart,domBuilder);\n\t\t\t\tbreak;\n\t\t\tcase '!':// start){\n\t\t\tstart = end;\n\t\t}else{\n\t\t\t//TODO: 这里有可能sax回退,有位置错误风险\n\t\t\tappendText(Math.max(tagStart,start)+1);\n\t\t}\n\t}\n}\nfunction copyLocator(f,t){\n\tt.lineNumber = f.lineNumber;\n\tt.columnNumber = f.columnNumber;\n\treturn t;\n}\n\n/**\n * @see #appendElement(source,elStartEnd,el,selfClosed,entityReplacer,domBuilder,parseStack);\n * @return end of the elementStartPart(end of elementEndPart for selfClosed el)\n */\nfunction parseElementStartPart(source,start,el,currentNSMap,entityReplacer,errorHandler){\n\n\t/**\n\t * @param {string} qname\n\t * @param {string} value\n\t * @param {number} startIndex\n\t */\n\tfunction addAttribute(qname, value, startIndex) {\n\t\tif (el.attributeNames.hasOwnProperty(qname)) {\n\t\t\terrorHandler.fatalError('Attribute ' + qname + ' redefined')\n\t\t}\n\t\tel.addValue(\n\t\t\tqname,\n\t\t\t// @see https://www.w3.org/TR/xml/#AVNormalize\n\t\t\t// since the xmldom sax parser does not \"interpret\" DTD the following is not implemented:\n\t\t\t// - recursive replacement of (DTD) entity references\n\t\t\t// - trimming and collapsing multiple spaces into a single one for attributes that are not of type CDATA\n\t\t\tvalue.replace(/[\\t\\n\\r]/g, ' ').replace(/&#?\\w+;/g, entityReplacer),\n\t\t\tstartIndex\n\t\t)\n\t}\n\tvar attrName;\n\tvar value;\n\tvar p = ++start;\n\tvar s = S_TAG;//status\n\twhile(true){\n\t\tvar c = source.charAt(p);\n\t\tswitch(c){\n\t\tcase '=':\n\t\t\tif(s === S_ATTR){//attrName\n\t\t\t\tattrName = source.slice(start,p);\n\t\t\t\ts = S_EQ;\n\t\t\t}else if(s === S_ATTR_SPACE){\n\t\t\t\ts = S_EQ;\n\t\t\t}else{\n\t\t\t\t//fatalError: equal must after attrName or space after attrName\n\t\t\t\tthrow new Error('attribute equal must after attrName'); // No known test case\n\t\t\t}\n\t\t\tbreak;\n\t\tcase '\\'':\n\t\tcase '\"':\n\t\t\tif(s === S_EQ || s === S_ATTR //|| s == S_ATTR_SPACE\n\t\t\t\t){//equal\n\t\t\t\tif(s === S_ATTR){\n\t\t\t\t\terrorHandler.warning('attribute value must after \"=\"')\n\t\t\t\t\tattrName = source.slice(start,p)\n\t\t\t\t}\n\t\t\t\tstart = p+1;\n\t\t\t\tp = source.indexOf(c,start)\n\t\t\t\tif(p>0){\n\t\t\t\t\tvalue = source.slice(start, p);\n\t\t\t\t\taddAttribute(attrName, value, start-1);\n\t\t\t\t\ts = S_ATTR_END;\n\t\t\t\t}else{\n\t\t\t\t\t//fatalError: no end quot match\n\t\t\t\t\tthrow new Error('attribute value no end \\''+c+'\\' match');\n\t\t\t\t}\n\t\t\t}else if(s == S_ATTR_NOQUOT_VALUE){\n\t\t\t\tvalue = source.slice(start, p);\n\t\t\t\taddAttribute(attrName, value, start);\n\t\t\t\terrorHandler.warning('attribute \"'+attrName+'\" missed start quot('+c+')!!');\n\t\t\t\tstart = p+1;\n\t\t\t\ts = S_ATTR_END\n\t\t\t}else{\n\t\t\t\t//fatalError: no equal before\n\t\t\t\tthrow new Error('attribute value must after \"=\"'); // No known test case\n\t\t\t}\n\t\t\tbreak;\n\t\tcase '/':\n\t\t\tswitch(s){\n\t\t\tcase S_TAG:\n\t\t\t\tel.setTagName(source.slice(start,p));\n\t\t\tcase S_ATTR_END:\n\t\t\tcase S_TAG_SPACE:\n\t\t\tcase S_TAG_CLOSE:\n\t\t\t\ts =S_TAG_CLOSE;\n\t\t\t\tel.closed = true;\n\t\t\tcase S_ATTR_NOQUOT_VALUE:\n\t\t\tcase S_ATTR:\n\t\t\t\tbreak;\n\t\t\t\tcase S_ATTR_SPACE:\n\t\t\t\t\tel.closed = true;\n\t\t\t\tbreak;\n\t\t\t//case S_EQ:\n\t\t\tdefault:\n\t\t\t\tthrow new Error(\"attribute invalid close char('/')\") // No known test case\n\t\t\t}\n\t\t\tbreak;\n\t\tcase ''://end document\n\t\t\terrorHandler.error('unexpected end of input');\n\t\t\tif(s == S_TAG){\n\t\t\t\tel.setTagName(source.slice(start,p));\n\t\t\t}\n\t\t\treturn p;\n\t\tcase '>':\n\t\t\tswitch(s){\n\t\t\tcase S_TAG:\n\t\t\t\tel.setTagName(source.slice(start,p));\n\t\t\tcase S_ATTR_END:\n\t\t\tcase S_TAG_SPACE:\n\t\t\tcase S_TAG_CLOSE:\n\t\t\t\tbreak;//normal\n\t\t\tcase S_ATTR_NOQUOT_VALUE://Compatible state\n\t\t\tcase S_ATTR:\n\t\t\t\tvalue = source.slice(start,p);\n\t\t\t\tif(value.slice(-1) === '/'){\n\t\t\t\t\tel.closed = true;\n\t\t\t\t\tvalue = value.slice(0,-1)\n\t\t\t\t}\n\t\t\tcase S_ATTR_SPACE:\n\t\t\t\tif(s === S_ATTR_SPACE){\n\t\t\t\t\tvalue = attrName;\n\t\t\t\t}\n\t\t\t\tif(s == S_ATTR_NOQUOT_VALUE){\n\t\t\t\t\terrorHandler.warning('attribute \"'+value+'\" missed quot(\")!');\n\t\t\t\t\taddAttribute(attrName, value, start)\n\t\t\t\t}else{\n\t\t\t\t\tif(!NAMESPACE.isHTML(currentNSMap['']) || !value.match(/^(?:disabled|checked|selected)$/i)){\n\t\t\t\t\t\terrorHandler.warning('attribute \"'+value+'\" missed value!! \"'+value+'\" instead!!')\n\t\t\t\t\t}\n\t\t\t\t\taddAttribute(value, value, start)\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\tcase S_EQ:\n\t\t\t\tthrow new Error('attribute value missed!!');\n\t\t\t}\n//\t\t\tconsole.log(tagName,tagNamePattern,tagNamePattern.test(tagName))\n\t\t\treturn p;\n\t\t/*xml space '\\x20' | #x9 | #xD | #xA; */\n\t\tcase '\\u0080':\n\t\t\tc = ' ';\n\t\tdefault:\n\t\t\tif(c<= ' '){//space\n\t\t\t\tswitch(s){\n\t\t\t\tcase S_TAG:\n\t\t\t\t\tel.setTagName(source.slice(start,p));//tagName\n\t\t\t\t\ts = S_TAG_SPACE;\n\t\t\t\t\tbreak;\n\t\t\t\tcase S_ATTR:\n\t\t\t\t\tattrName = source.slice(start,p)\n\t\t\t\t\ts = S_ATTR_SPACE;\n\t\t\t\t\tbreak;\n\t\t\t\tcase S_ATTR_NOQUOT_VALUE:\n\t\t\t\t\tvar value = source.slice(start, p);\n\t\t\t\t\terrorHandler.warning('attribute \"'+value+'\" missed quot(\")!!');\n\t\t\t\t\taddAttribute(attrName, value, start)\n\t\t\t\tcase S_ATTR_END:\n\t\t\t\t\ts = S_TAG_SPACE;\n\t\t\t\t\tbreak;\n\t\t\t\t//case S_TAG_SPACE:\n\t\t\t\t//case S_EQ:\n\t\t\t\t//case S_ATTR_SPACE:\n\t\t\t\t//\tvoid();break;\n\t\t\t\t//case S_TAG_CLOSE:\n\t\t\t\t\t//ignore warning\n\t\t\t\t}\n\t\t\t}else{//not space\n//S_TAG,\tS_ATTR,\tS_EQ,\tS_ATTR_NOQUOT_VALUE\n//S_ATTR_SPACE,\tS_ATTR_END,\tS_TAG_SPACE, S_TAG_CLOSE\n\t\t\t\tswitch(s){\n\t\t\t\t//case S_TAG:void();break;\n\t\t\t\t//case S_ATTR:void();break;\n\t\t\t\t//case S_ATTR_NOQUOT_VALUE:void();break;\n\t\t\t\tcase S_ATTR_SPACE:\n\t\t\t\t\tvar tagName = el.tagName;\n\t\t\t\t\tif (!NAMESPACE.isHTML(currentNSMap['']) || !attrName.match(/^(?:disabled|checked|selected)$/i)) {\n\t\t\t\t\t\terrorHandler.warning('attribute \"'+attrName+'\" missed value!! \"'+attrName+'\" instead2!!')\n\t\t\t\t\t}\n\t\t\t\t\taddAttribute(attrName, attrName, start);\n\t\t\t\t\tstart = p;\n\t\t\t\t\ts = S_ATTR;\n\t\t\t\t\tbreak;\n\t\t\t\tcase S_ATTR_END:\n\t\t\t\t\terrorHandler.warning('attribute space is required\"'+attrName+'\"!!')\n\t\t\t\tcase S_TAG_SPACE:\n\t\t\t\t\ts = S_ATTR;\n\t\t\t\t\tstart = p;\n\t\t\t\t\tbreak;\n\t\t\t\tcase S_EQ:\n\t\t\t\t\ts = S_ATTR_NOQUOT_VALUE;\n\t\t\t\t\tstart = p;\n\t\t\t\t\tbreak;\n\t\t\t\tcase S_TAG_CLOSE:\n\t\t\t\t\tthrow new Error(\"elements closed character '/' and '>' must be connected to\");\n\t\t\t\t}\n\t\t\t}\n\t\t}//end outer switch\n\t\t//console.log('p++',p)\n\t\tp++;\n\t}\n}\n/**\n * @return true if has new namespace define\n */\nfunction appendElement(el,domBuilder,currentNSMap){\n\tvar tagName = el.tagName;\n\tvar localNSMap = null;\n\t//var currentNSMap = parseStack[parseStack.length-1].currentNSMap;\n\tvar i = el.length;\n\twhile(i--){\n\t\tvar a = el[i];\n\t\tvar qName = a.qName;\n\t\tvar value = a.value;\n\t\tvar nsp = qName.indexOf(':');\n\t\tif(nsp>0){\n\t\t\tvar prefix = a.prefix = qName.slice(0,nsp);\n\t\t\tvar localName = qName.slice(nsp+1);\n\t\t\tvar nsPrefix = prefix === 'xmlns' && localName\n\t\t}else{\n\t\t\tlocalName = qName;\n\t\t\tprefix = null\n\t\t\tnsPrefix = qName === 'xmlns' && ''\n\t\t}\n\t\t//can not set prefix,because prefix !== ''\n\t\ta.localName = localName ;\n\t\t//prefix == null for no ns prefix attribute\n\t\tif(nsPrefix !== false){//hack!!\n\t\t\tif(localNSMap == null){\n\t\t\t\tlocalNSMap = {}\n\t\t\t\t//console.log(currentNSMap,0)\n\t\t\t\t_copy(currentNSMap,currentNSMap={})\n\t\t\t\t//console.log(currentNSMap,1)\n\t\t\t}\n\t\t\tcurrentNSMap[nsPrefix] = localNSMap[nsPrefix] = value;\n\t\t\ta.uri = NAMESPACE.XMLNS\n\t\t\tdomBuilder.startPrefixMapping(nsPrefix, value)\n\t\t}\n\t}\n\tvar i = el.length;\n\twhile(i--){\n\t\ta = el[i];\n\t\tvar prefix = a.prefix;\n\t\tif(prefix){//no prefix attribute has no namespace\n\t\t\tif(prefix === 'xml'){\n\t\t\t\ta.uri = NAMESPACE.XML;\n\t\t\t}if(prefix !== 'xmlns'){\n\t\t\t\ta.uri = currentNSMap[prefix || '']\n\n\t\t\t\t//{console.log('###'+a.qName,domBuilder.locator.systemId+'',currentNSMap,a.uri)}\n\t\t\t}\n\t\t}\n\t}\n\tvar nsp = tagName.indexOf(':');\n\tif(nsp>0){\n\t\tprefix = el.prefix = tagName.slice(0,nsp);\n\t\tlocalName = el.localName = tagName.slice(nsp+1);\n\t}else{\n\t\tprefix = null;//important!!\n\t\tlocalName = el.localName = tagName;\n\t}\n\t//no prefix element has default namespace\n\tvar ns = el.uri = currentNSMap[prefix || ''];\n\tdomBuilder.startElement(ns,localName,tagName,el);\n\t//endPrefixMapping and startPrefixMapping have not any help for dom builder\n\t//localNSMap = null\n\tif(el.closed){\n\t\tdomBuilder.endElement(ns,localName,tagName);\n\t\tif(localNSMap){\n\t\t\tfor (prefix in localNSMap) {\n\t\t\t\tif (Object.prototype.hasOwnProperty.call(localNSMap, prefix)) {\n\t\t\t\t\tdomBuilder.endPrefixMapping(prefix);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}else{\n\t\tel.currentNSMap = currentNSMap;\n\t\tel.localNSMap = localNSMap;\n\t\t//parseStack.push(el);\n\t\treturn true;\n\t}\n}\nfunction parseHtmlSpecialContent(source,elStartEnd,tagName,entityReplacer,domBuilder){\n\tif(/^(?:script|textarea)$/i.test(tagName)){\n\t\tvar elEndStart = source.indexOf('',elStartEnd);\n\t\tvar text = source.substring(elStartEnd+1,elEndStart);\n\t\tif(/[&<]/.test(text)){\n\t\t\tif(/^script$/i.test(tagName)){\n\t\t\t\t//if(!/\\]\\]>/.test(text)){\n\t\t\t\t\t//lexHandler.startCDATA();\n\t\t\t\t\tdomBuilder.characters(text,0,text.length);\n\t\t\t\t\t//lexHandler.endCDATA();\n\t\t\t\t\treturn elEndStart;\n\t\t\t\t//}\n\t\t\t}//}else{//text area\n\t\t\t\ttext = text.replace(/&#?\\w+;/g,entityReplacer);\n\t\t\t\tdomBuilder.characters(text,0,text.length);\n\t\t\t\treturn elEndStart;\n\t\t\t//}\n\n\t\t}\n\t}\n\treturn elStartEnd+1;\n}\nfunction fixSelfClosed(source,elStartEnd,tagName,closeMap){\n\t//if(tagName in closeMap){\n\tvar pos = closeMap[tagName];\n\tif(pos == null){\n\t\t//console.log(tagName)\n\t\tpos = source.lastIndexOf('')\n\t\tif(pos',start+4);\n\t\t\t//append comment source.substring(4,end)//"); + case DOCUMENT_TYPE_NODE: + var pubid = node.publicId; + var sysid = node.systemId; + buf.push(''); + }else if(sysid && sysid!='.'){ + buf.push(' SYSTEM ', sysid, '>'); + }else{ + var sub = node.internalSubset; + if(sub){ + buf.push(" [",sub,"]"); + } + buf.push(">"); + } + return; + case PROCESSING_INSTRUCTION_NODE: + return buf.push( ""); + case ENTITY_REFERENCE_NODE: + return buf.push( '&',node.nodeName,';'); + //case ENTITY_NODE: + //case NOTATION_NODE: + default: + buf.push('??',node.nodeName); + } +} +function importNode(doc,node,deep){ + var node2; + switch (node.nodeType) { + case ELEMENT_NODE: + node2 = node.cloneNode(false); + node2.ownerDocument = doc; + //var attrs = node2.attributes; + //var len = attrs.length; + //for(var i=0;i | ({length:number, [number]: T})} list + * @param {function (item: T, index: number, list:Array | ({length:number, [number]: T})):boolean} predicate + * @param {Partial>?} ac `Array.prototype` by default, + * allows injecting a custom implementation in tests + * @returns {T | undefined} + * + * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/find + * @see https://tc39.es/ecma262/multipage/indexed-collections.html#sec-array.prototype.find + */ +function find(list, predicate, ac) { + if (ac === undefined) { + ac = Array.prototype; + } + if (list && typeof ac.find === 'function') { + return ac.find.call(list, predicate); + } + for (var i = 0; i < list.length; i++) { + if (Object.prototype.hasOwnProperty.call(list, i)) { + var item = list[i]; + if (predicate.call(undefined, item, i, list)) { + return item; + } + } + } +} + +/** + * "Shallow freezes" an object to render it immutable. + * Uses `Object.freeze` if available, + * otherwise the immutability is only in the type. + * + * Is used to create "enum like" objects. + * + * @template T + * @param {T} object the object to freeze + * @param {Pick = Object} oc `Object` by default, + * allows to inject custom object constructor for tests + * @returns {Readonly} + * + * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/freeze + */ +function freeze(object, oc) { + if (oc === undefined) { + oc = Object + } + return oc && typeof oc.freeze === 'function' ? oc.freeze(object) : object +} + +/** + * Since we can not rely on `Object.assign` we provide a simplified version + * that is sufficient for our needs. + * + * @param {Object} target + * @param {Object | null | undefined} source + * + * @returns {Object} target + * @throws TypeError if target is not an object + * + * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/assign + * @see https://tc39.es/ecma262/multipage/fundamental-objects.html#sec-object.assign + */ +function assign(target, source) { + if (target === null || typeof target !== 'object') { + throw new TypeError('target is not an object') + } + for (var key in source) { + if (Object.prototype.hasOwnProperty.call(source, key)) { + target[key] = source[key] + } + } + return target +} + +/** + * All mime types that are allowed as input to `DOMParser.parseFromString` + * + * @see https://developer.mozilla.org/en-US/docs/Web/API/DOMParser/parseFromString#Argument02 MDN + * @see https://html.spec.whatwg.org/multipage/dynamic-markup-insertion.html#domparsersupportedtype WHATWG HTML Spec + * @see DOMParser.prototype.parseFromString + */ +var MIME_TYPE = freeze({ + /** + * `text/html`, the only mime type that triggers treating an XML document as HTML. + * + * @see DOMParser.SupportedType.isHTML + * @see https://www.iana.org/assignments/media-types/text/html IANA MimeType registration + * @see https://en.wikipedia.org/wiki/HTML Wikipedia + * @see https://developer.mozilla.org/en-US/docs/Web/API/DOMParser/parseFromString MDN + * @see https://html.spec.whatwg.org/multipage/dynamic-markup-insertion.html#dom-domparser-parsefromstring WHATWG HTML Spec + */ + HTML: 'text/html', + + /** + * Helper method to check a mime type if it indicates an HTML document + * + * @param {string} [value] + * @returns {boolean} + * + * @see https://www.iana.org/assignments/media-types/text/html IANA MimeType registration + * @see https://en.wikipedia.org/wiki/HTML Wikipedia + * @see https://developer.mozilla.org/en-US/docs/Web/API/DOMParser/parseFromString MDN + * @see https://html.spec.whatwg.org/multipage/dynamic-markup-insertion.html#dom-domparser-parsefromstring */ + isHTML: function (value) { + return value === MIME_TYPE.HTML + }, + + /** + * `application/xml`, the standard mime type for XML documents. + * + * @see https://www.iana.org/assignments/media-types/application/xml IANA MimeType registration + * @see https://tools.ietf.org/html/rfc7303#section-9.1 RFC 7303 + * @see https://en.wikipedia.org/wiki/XML_and_MIME Wikipedia + */ + XML_APPLICATION: 'application/xml', + + /** + * `text/html`, an alias for `application/xml`. + * + * @see https://tools.ietf.org/html/rfc7303#section-9.2 RFC 7303 + * @see https://www.iana.org/assignments/media-types/text/xml IANA MimeType registration + * @see https://en.wikipedia.org/wiki/XML_and_MIME Wikipedia + */ + XML_TEXT: 'text/xml', + + /** + * `application/xhtml+xml`, indicates an XML document that has the default HTML namespace, + * but is parsed as an XML document. + * + * @see https://www.iana.org/assignments/media-types/application/xhtml+xml IANA MimeType registration + * @see https://dom.spec.whatwg.org/#dom-domimplementation-createdocument WHATWG DOM Spec + * @see https://en.wikipedia.org/wiki/XHTML Wikipedia + */ + XML_XHTML_APPLICATION: 'application/xhtml+xml', + + /** + * `image/svg+xml`, + * + * @see https://www.iana.org/assignments/media-types/image/svg+xml IANA MimeType registration + * @see https://www.w3.org/TR/SVG11/ W3C SVG 1.1 + * @see https://en.wikipedia.org/wiki/Scalable_Vector_Graphics Wikipedia + */ + XML_SVG_IMAGE: 'image/svg+xml', +}) + +/** + * Namespaces that are used in this code base. + * + * @see http://www.w3.org/TR/REC-xml-names + */ +var NAMESPACE = freeze({ + /** + * The XHTML namespace. + * + * @see http://www.w3.org/1999/xhtml + */ + HTML: 'http://www.w3.org/1999/xhtml', + + /** + * Checks if `uri` equals `NAMESPACE.HTML`. + * + * @param {string} [uri] + * + * @see NAMESPACE.HTML + */ + isHTML: function (uri) { + return uri === NAMESPACE.HTML + }, + + /** + * The SVG namespace. + * + * @see http://www.w3.org/2000/svg + */ + SVG: 'http://www.w3.org/2000/svg', + + /** + * The `xml:` namespace. + * + * @see http://www.w3.org/XML/1998/namespace + */ + XML: 'http://www.w3.org/XML/1998/namespace', + + /** + * The `xmlns:` namespace + * + * @see https://www.w3.org/2000/xmlns/ + */ + XMLNS: 'http://www.w3.org/2000/xmlns/', +}) + +exports.assign = assign; +exports.find = find; +exports.freeze = freeze; +exports.MIME_TYPE = MIME_TYPE; +exports.NAMESPACE = NAMESPACE; + + +/***/ }), +/* 67 */ +/***/ (function(module, exports, __webpack_require__) { + +var conventions = __webpack_require__(66); +var dom = __webpack_require__(65) +var entities = __webpack_require__(68); +var sax = __webpack_require__(69); + +var DOMImplementation = dom.DOMImplementation; + +var NAMESPACE = conventions.NAMESPACE; + +var ParseError = sax.ParseError; +var XMLReader = sax.XMLReader; + +/** + * Normalizes line ending according to https://www.w3.org/TR/xml11/#sec-line-ends: + * + * > XML parsed entities are often stored in computer files which, + * > for editing convenience, are organized into lines. + * > These lines are typically separated by some combination + * > of the characters CARRIAGE RETURN (#xD) and LINE FEED (#xA). + * > + * > To simplify the tasks of applications, the XML processor must behave + * > as if it normalized all line breaks in external parsed entities (including the document entity) + * > on input, before parsing, by translating all of the following to a single #xA character: + * > + * > 1. the two-character sequence #xD #xA + * > 2. the two-character sequence #xD #x85 + * > 3. the single character #x85 + * > 4. the single character #x2028 + * > 5. any #xD character that is not immediately followed by #xA or #x85. + * + * @param {string} input + * @returns {string} + */ +function normalizeLineEndings(input) { + return input + .replace(/\r[\n\u0085]/g, '\n') + .replace(/[\r\u0085\u2028]/g, '\n') +} + +/** + * @typedef Locator + * @property {number} [columnNumber] + * @property {number} [lineNumber] + */ + +/** + * @typedef DOMParserOptions + * @property {DOMHandler} [domBuilder] + * @property {Function} [errorHandler] + * @property {(string) => string} [normalizeLineEndings] used to replace line endings before parsing + * defaults to `normalizeLineEndings` + * @property {Locator} [locator] + * @property {Record} [xmlns] + * + * @see normalizeLineEndings + */ + +/** + * The DOMParser interface provides the ability to parse XML or HTML source code + * from a string into a DOM `Document`. + * + * _xmldom is different from the spec in that it allows an `options` parameter, + * to override the default behavior._ + * + * @param {DOMParserOptions} [options] + * @constructor + * + * @see https://developer.mozilla.org/en-US/docs/Web/API/DOMParser + * @see https://html.spec.whatwg.org/multipage/dynamic-markup-insertion.html#dom-parsing-and-serialization + */ +function DOMParser(options){ + this.options = options ||{locator:{}}; +} + +DOMParser.prototype.parseFromString = function(source,mimeType){ + var options = this.options; + var sax = new XMLReader(); + var domBuilder = options.domBuilder || new DOMHandler();//contentHandler and LexicalHandler + var errorHandler = options.errorHandler; + var locator = options.locator; + var defaultNSMap = options.xmlns||{}; + var isHTML = /\/x?html?$/.test(mimeType);//mimeType.toLowerCase().indexOf('html') > -1; + var entityMap = isHTML ? entities.HTML_ENTITIES : entities.XML_ENTITIES; + if(locator){ + domBuilder.setDocumentLocator(locator) + } + + sax.errorHandler = buildErrorHandler(errorHandler,domBuilder,locator); + sax.domBuilder = options.domBuilder || domBuilder; + if(isHTML){ + defaultNSMap[''] = NAMESPACE.HTML; + } + defaultNSMap.xml = defaultNSMap.xml || NAMESPACE.XML; + var normalize = options.normalizeLineEndings || normalizeLineEndings; + if (source && typeof source === 'string') { + sax.parse( + normalize(source), + defaultNSMap, + entityMap + ) + } else { + sax.errorHandler.error('invalid doc source') + } + return domBuilder.doc; +} +function buildErrorHandler(errorImpl,domBuilder,locator){ + if(!errorImpl){ + if(domBuilder instanceof DOMHandler){ + return domBuilder; + } + errorImpl = domBuilder ; + } + var errorHandler = {} + var isCallback = errorImpl instanceof Function; + locator = locator||{} + function build(key){ + var fn = errorImpl[key]; + if(!fn && isCallback){ + fn = errorImpl.length == 2?function(msg){errorImpl(key,msg)}:errorImpl; + } + errorHandler[key] = fn && function(msg){ + fn('[xmldom '+key+']\t'+msg+_locator(locator)); + }||function(){}; + } + build('warning'); + build('error'); + build('fatalError'); + return errorHandler; +} + +//console.log('#\n\n\n\n\n\n\n####') +/** + * +ContentHandler+ErrorHandler + * +LexicalHandler+EntityResolver2 + * -DeclHandler-DTDHandler + * + * DefaultHandler:EntityResolver, DTDHandler, ContentHandler, ErrorHandler + * DefaultHandler2:DefaultHandler,LexicalHandler, DeclHandler, EntityResolver2 + * @link http://www.saxproject.org/apidoc/org/xml/sax/helpers/DefaultHandler.html + */ +function DOMHandler() { + this.cdata = false; +} +function position(locator,node){ + node.lineNumber = locator.lineNumber; + node.columnNumber = locator.columnNumber; +} +/** + * @see org.xml.sax.ContentHandler#startDocument + * @link http://www.saxproject.org/apidoc/org/xml/sax/ContentHandler.html + */ +DOMHandler.prototype = { + startDocument : function() { + this.doc = new DOMImplementation().createDocument(null, null, null); + if (this.locator) { + this.doc.documentURI = this.locator.systemId; + } + }, + startElement:function(namespaceURI, localName, qName, attrs) { + var doc = this.doc; + var el = doc.createElementNS(namespaceURI, qName||localName); + var len = attrs.length; + appendElement(this, el); + this.currentElement = el; + + this.locator && position(this.locator,el) + for (var i = 0 ; i < len; i++) { + var namespaceURI = attrs.getURI(i); + var value = attrs.getValue(i); + var qName = attrs.getQName(i); + var attr = doc.createAttributeNS(namespaceURI, qName); + this.locator &&position(attrs.getLocator(i),attr); + attr.value = attr.nodeValue = value; + el.setAttributeNode(attr) + } + }, + endElement:function(namespaceURI, localName, qName) { + var current = this.currentElement + var tagName = current.tagName; + this.currentElement = current.parentNode; + }, + startPrefixMapping:function(prefix, uri) { + }, + endPrefixMapping:function(prefix) { + }, + processingInstruction:function(target, data) { + var ins = this.doc.createProcessingInstruction(target, data); + this.locator && position(this.locator,ins) + appendElement(this, ins); + }, + ignorableWhitespace:function(ch, start, length) { + }, + characters:function(chars, start, length) { + chars = _toString.apply(this,arguments) + //console.log(chars) + if(chars){ + if (this.cdata) { + var charNode = this.doc.createCDATASection(chars); + } else { + var charNode = this.doc.createTextNode(chars); + } + if(this.currentElement){ + this.currentElement.appendChild(charNode); + }else if(/^\s*$/.test(chars)){ + this.doc.appendChild(charNode); + //process xml + } + this.locator && position(this.locator,charNode) + } + }, + skippedEntity:function(name) { + }, + endDocument:function() { + this.doc.normalize(); + }, + setDocumentLocator:function (locator) { + if(this.locator = locator){// && !('lineNumber' in locator)){ + locator.lineNumber = 0; + } + }, + //LexicalHandler + comment:function(chars, start, length) { + chars = _toString.apply(this,arguments) + var comm = this.doc.createComment(chars); + this.locator && position(this.locator,comm) + appendElement(this, comm); + }, + + startCDATA:function() { + //used in characters() methods + this.cdata = true; + }, + endCDATA:function() { + this.cdata = false; + }, + + startDTD:function(name, publicId, systemId) { + var impl = this.doc.implementation; + if (impl && impl.createDocumentType) { + var dt = impl.createDocumentType(name, publicId, systemId); + this.locator && position(this.locator,dt) + appendElement(this, dt); + this.doc.doctype = dt; + } + }, + /** + * @see org.xml.sax.ErrorHandler + * @link http://www.saxproject.org/apidoc/org/xml/sax/ErrorHandler.html + */ + warning:function(error) { + console.warn('[xmldom warning]\t'+error,_locator(this.locator)); + }, + error:function(error) { + console.error('[xmldom error]\t'+error,_locator(this.locator)); + }, + fatalError:function(error) { + throw new ParseError(error, this.locator); + } +} +function _locator(l){ + if(l){ + return '\n@'+(l.systemId ||'')+'#[line:'+l.lineNumber+',col:'+l.columnNumber+']' + } +} +function _toString(chars,start,length){ + if(typeof chars == 'string'){ + return chars.substr(start,length) + }else{//java sax connect width xmldom on rhino(what about: "? && !(chars instanceof String)") + if(chars.length >= start+length || start){ + return new java.lang.String(chars,start,length)+''; + } + return chars; + } +} + +/* + * @link http://www.saxproject.org/apidoc/org/xml/sax/ext/LexicalHandler.html + * used method of org.xml.sax.ext.LexicalHandler: + * #comment(chars, start, length) + * #startCDATA() + * #endCDATA() + * #startDTD(name, publicId, systemId) + * + * + * IGNORED method of org.xml.sax.ext.LexicalHandler: + * #endDTD() + * #startEntity(name) + * #endEntity(name) + * + * + * @link http://www.saxproject.org/apidoc/org/xml/sax/ext/DeclHandler.html + * IGNORED method of org.xml.sax.ext.DeclHandler + * #attributeDecl(eName, aName, type, mode, value) + * #elementDecl(name, model) + * #externalEntityDecl(name, publicId, systemId) + * #internalEntityDecl(name, value) + * @link http://www.saxproject.org/apidoc/org/xml/sax/ext/EntityResolver2.html + * IGNORED method of org.xml.sax.EntityResolver2 + * #resolveEntity(String name,String publicId,String baseURI,String systemId) + * #resolveEntity(publicId, systemId) + * #getExternalSubset(name, baseURI) + * @link http://www.saxproject.org/apidoc/org/xml/sax/DTDHandler.html + * IGNORED method of org.xml.sax.DTDHandler + * #notationDecl(name, publicId, systemId) {}; + * #unparsedEntityDecl(name, publicId, systemId, notationName) {}; + */ +"endDTD,startEntity,endEntity,attributeDecl,elementDecl,externalEntityDecl,internalEntityDecl,resolveEntity,getExternalSubset,notationDecl,unparsedEntityDecl".replace(/\w+/g,function(key){ + DOMHandler.prototype[key] = function(){return null} +}) + +/* Private static helpers treated below as private instance methods, so don't need to add these to the public API; we might use a Relator to also get rid of non-standard public properties */ +function appendElement (hander,node) { + if (!hander.currentElement) { + hander.doc.appendChild(node); + } else { + hander.currentElement.appendChild(node); + } +}//appendChild and setAttributeNS are preformance key + +exports.__DOMHandler = DOMHandler; +exports.normalizeLineEndings = normalizeLineEndings; +exports.DOMParser = DOMParser; + + +/***/ }), +/* 68 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var freeze = __webpack_require__(66).freeze; + +/** + * The entities that are predefined in every XML document. + * + * @see https://www.w3.org/TR/2006/REC-xml11-20060816/#sec-predefined-ent W3C XML 1.1 + * @see https://www.w3.org/TR/2008/REC-xml-20081126/#sec-predefined-ent W3C XML 1.0 + * @see https://en.wikipedia.org/wiki/List_of_XML_and_HTML_character_entity_references#Predefined_entities_in_XML Wikipedia + */ +exports.XML_ENTITIES = freeze({ + amp: '&', + apos: "'", + gt: '>', + lt: '<', + quot: '"', +}); + +/** + * A map of all entities that are detected in an HTML document. + * They contain all entries from `XML_ENTITIES`. + * + * @see XML_ENTITIES + * @see DOMParser.parseFromString + * @see DOMImplementation.prototype.createHTMLDocument + * @see https://html.spec.whatwg.org/#named-character-references WHATWG HTML(5) Spec + * @see https://html.spec.whatwg.org/entities.json JSON + * @see https://www.w3.org/TR/xml-entity-names/ W3C XML Entity Names + * @see https://www.w3.org/TR/html4/sgml/entities.html W3C HTML4/SGML + * @see https://en.wikipedia.org/wiki/List_of_XML_and_HTML_character_entity_references#Character_entity_references_in_HTML Wikipedia (HTML) + * @see https://en.wikipedia.org/wiki/List_of_XML_and_HTML_character_entity_references#Entities_representing_special_characters_in_XHTML Wikpedia (XHTML) + */ +exports.HTML_ENTITIES = freeze({ + Aacute: '\u00C1', + aacute: '\u00E1', + Abreve: '\u0102', + abreve: '\u0103', + ac: '\u223E', + acd: '\u223F', + acE: '\u223E\u0333', + Acirc: '\u00C2', + acirc: '\u00E2', + acute: '\u00B4', + Acy: '\u0410', + acy: '\u0430', + AElig: '\u00C6', + aelig: '\u00E6', + af: '\u2061', + Afr: '\uD835\uDD04', + afr: '\uD835\uDD1E', + Agrave: '\u00C0', + agrave: '\u00E0', + alefsym: '\u2135', + aleph: '\u2135', + Alpha: '\u0391', + alpha: '\u03B1', + Amacr: '\u0100', + amacr: '\u0101', + amalg: '\u2A3F', + AMP: '\u0026', + amp: '\u0026', + And: '\u2A53', + and: '\u2227', + andand: '\u2A55', + andd: '\u2A5C', + andslope: '\u2A58', + andv: '\u2A5A', + ang: '\u2220', + ange: '\u29A4', + angle: '\u2220', + angmsd: '\u2221', + angmsdaa: '\u29A8', + angmsdab: '\u29A9', + angmsdac: '\u29AA', + angmsdad: '\u29AB', + angmsdae: '\u29AC', + angmsdaf: '\u29AD', + angmsdag: '\u29AE', + angmsdah: '\u29AF', + angrt: '\u221F', + angrtvb: '\u22BE', + angrtvbd: '\u299D', + angsph: '\u2222', + angst: '\u00C5', + angzarr: '\u237C', + Aogon: '\u0104', + aogon: '\u0105', + Aopf: '\uD835\uDD38', + aopf: '\uD835\uDD52', + ap: '\u2248', + apacir: '\u2A6F', + apE: '\u2A70', + ape: '\u224A', + apid: '\u224B', + apos: '\u0027', + ApplyFunction: '\u2061', + approx: '\u2248', + approxeq: '\u224A', + Aring: '\u00C5', + aring: '\u00E5', + Ascr: '\uD835\uDC9C', + ascr: '\uD835\uDCB6', + Assign: '\u2254', + ast: '\u002A', + asymp: '\u2248', + asympeq: '\u224D', + Atilde: '\u00C3', + atilde: '\u00E3', + Auml: '\u00C4', + auml: '\u00E4', + awconint: '\u2233', + awint: '\u2A11', + backcong: '\u224C', + backepsilon: '\u03F6', + backprime: '\u2035', + backsim: '\u223D', + backsimeq: '\u22CD', + Backslash: '\u2216', + Barv: '\u2AE7', + barvee: '\u22BD', + Barwed: '\u2306', + barwed: '\u2305', + barwedge: '\u2305', + bbrk: '\u23B5', + bbrktbrk: '\u23B6', + bcong: '\u224C', + Bcy: '\u0411', + bcy: '\u0431', + bdquo: '\u201E', + becaus: '\u2235', + Because: '\u2235', + because: '\u2235', + bemptyv: '\u29B0', + bepsi: '\u03F6', + bernou: '\u212C', + Bernoullis: '\u212C', + Beta: '\u0392', + beta: '\u03B2', + beth: '\u2136', + between: '\u226C', + Bfr: '\uD835\uDD05', + bfr: '\uD835\uDD1F', + bigcap: '\u22C2', + bigcirc: '\u25EF', + bigcup: '\u22C3', + bigodot: '\u2A00', + bigoplus: '\u2A01', + bigotimes: '\u2A02', + bigsqcup: '\u2A06', + bigstar: '\u2605', + bigtriangledown: '\u25BD', + bigtriangleup: '\u25B3', + biguplus: '\u2A04', + bigvee: '\u22C1', + bigwedge: '\u22C0', + bkarow: '\u290D', + blacklozenge: '\u29EB', + blacksquare: '\u25AA', + blacktriangle: '\u25B4', + blacktriangledown: '\u25BE', + blacktriangleleft: '\u25C2', + blacktriangleright: '\u25B8', + blank: '\u2423', + blk12: '\u2592', + blk14: '\u2591', + blk34: '\u2593', + block: '\u2588', + bne: '\u003D\u20E5', + bnequiv: '\u2261\u20E5', + bNot: '\u2AED', + bnot: '\u2310', + Bopf: '\uD835\uDD39', + bopf: '\uD835\uDD53', + bot: '\u22A5', + bottom: '\u22A5', + bowtie: '\u22C8', + boxbox: '\u29C9', + boxDL: '\u2557', + boxDl: '\u2556', + boxdL: '\u2555', + boxdl: '\u2510', + boxDR: '\u2554', + boxDr: '\u2553', + boxdR: '\u2552', + boxdr: '\u250C', + boxH: '\u2550', + boxh: '\u2500', + boxHD: '\u2566', + boxHd: '\u2564', + boxhD: '\u2565', + boxhd: '\u252C', + boxHU: '\u2569', + boxHu: '\u2567', + boxhU: '\u2568', + boxhu: '\u2534', + boxminus: '\u229F', + boxplus: '\u229E', + boxtimes: '\u22A0', + boxUL: '\u255D', + boxUl: '\u255C', + boxuL: '\u255B', + boxul: '\u2518', + boxUR: '\u255A', + boxUr: '\u2559', + boxuR: '\u2558', + boxur: '\u2514', + boxV: '\u2551', + boxv: '\u2502', + boxVH: '\u256C', + boxVh: '\u256B', + boxvH: '\u256A', + boxvh: '\u253C', + boxVL: '\u2563', + boxVl: '\u2562', + boxvL: '\u2561', + boxvl: '\u2524', + boxVR: '\u2560', + boxVr: '\u255F', + boxvR: '\u255E', + boxvr: '\u251C', + bprime: '\u2035', + Breve: '\u02D8', + breve: '\u02D8', + brvbar: '\u00A6', + Bscr: '\u212C', + bscr: '\uD835\uDCB7', + bsemi: '\u204F', + bsim: '\u223D', + bsime: '\u22CD', + bsol: '\u005C', + bsolb: '\u29C5', + bsolhsub: '\u27C8', + bull: '\u2022', + bullet: '\u2022', + bump: '\u224E', + bumpE: '\u2AAE', + bumpe: '\u224F', + Bumpeq: '\u224E', + bumpeq: '\u224F', + Cacute: '\u0106', + cacute: '\u0107', + Cap: '\u22D2', + cap: '\u2229', + capand: '\u2A44', + capbrcup: '\u2A49', + capcap: '\u2A4B', + capcup: '\u2A47', + capdot: '\u2A40', + CapitalDifferentialD: '\u2145', + caps: '\u2229\uFE00', + caret: '\u2041', + caron: '\u02C7', + Cayleys: '\u212D', + ccaps: '\u2A4D', + Ccaron: '\u010C', + ccaron: '\u010D', + Ccedil: '\u00C7', + ccedil: '\u00E7', + Ccirc: '\u0108', + ccirc: '\u0109', + Cconint: '\u2230', + ccups: '\u2A4C', + ccupssm: '\u2A50', + Cdot: '\u010A', + cdot: '\u010B', + cedil: '\u00B8', + Cedilla: '\u00B8', + cemptyv: '\u29B2', + cent: '\u00A2', + CenterDot: '\u00B7', + centerdot: '\u00B7', + Cfr: '\u212D', + cfr: '\uD835\uDD20', + CHcy: '\u0427', + chcy: '\u0447', + check: '\u2713', + checkmark: '\u2713', + Chi: '\u03A7', + chi: '\u03C7', + cir: '\u25CB', + circ: '\u02C6', + circeq: '\u2257', + circlearrowleft: '\u21BA', + circlearrowright: '\u21BB', + circledast: '\u229B', + circledcirc: '\u229A', + circleddash: '\u229D', + CircleDot: '\u2299', + circledR: '\u00AE', + circledS: '\u24C8', + CircleMinus: '\u2296', + CirclePlus: '\u2295', + CircleTimes: '\u2297', + cirE: '\u29C3', + cire: '\u2257', + cirfnint: '\u2A10', + cirmid: '\u2AEF', + cirscir: '\u29C2', + ClockwiseContourIntegral: '\u2232', + CloseCurlyDoubleQuote: '\u201D', + CloseCurlyQuote: '\u2019', + clubs: '\u2663', + clubsuit: '\u2663', + Colon: '\u2237', + colon: '\u003A', + Colone: '\u2A74', + colone: '\u2254', + coloneq: '\u2254', + comma: '\u002C', + commat: '\u0040', + comp: '\u2201', + compfn: '\u2218', + complement: '\u2201', + complexes: '\u2102', + cong: '\u2245', + congdot: '\u2A6D', + Congruent: '\u2261', + Conint: '\u222F', + conint: '\u222E', + ContourIntegral: '\u222E', + Copf: '\u2102', + copf: '\uD835\uDD54', + coprod: '\u2210', + Coproduct: '\u2210', + COPY: '\u00A9', + copy: '\u00A9', + copysr: '\u2117', + CounterClockwiseContourIntegral: '\u2233', + crarr: '\u21B5', + Cross: '\u2A2F', + cross: '\u2717', + Cscr: '\uD835\uDC9E', + cscr: '\uD835\uDCB8', + csub: '\u2ACF', + csube: '\u2AD1', + csup: '\u2AD0', + csupe: '\u2AD2', + ctdot: '\u22EF', + cudarrl: '\u2938', + cudarrr: '\u2935', + cuepr: '\u22DE', + cuesc: '\u22DF', + cularr: '\u21B6', + cularrp: '\u293D', + Cup: '\u22D3', + cup: '\u222A', + cupbrcap: '\u2A48', + CupCap: '\u224D', + cupcap: '\u2A46', + cupcup: '\u2A4A', + cupdot: '\u228D', + cupor: '\u2A45', + cups: '\u222A\uFE00', + curarr: '\u21B7', + curarrm: '\u293C', + curlyeqprec: '\u22DE', + curlyeqsucc: '\u22DF', + curlyvee: '\u22CE', + curlywedge: '\u22CF', + curren: '\u00A4', + curvearrowleft: '\u21B6', + curvearrowright: '\u21B7', + cuvee: '\u22CE', + cuwed: '\u22CF', + cwconint: '\u2232', + cwint: '\u2231', + cylcty: '\u232D', + Dagger: '\u2021', + dagger: '\u2020', + daleth: '\u2138', + Darr: '\u21A1', + dArr: '\u21D3', + darr: '\u2193', + dash: '\u2010', + Dashv: '\u2AE4', + dashv: '\u22A3', + dbkarow: '\u290F', + dblac: '\u02DD', + Dcaron: '\u010E', + dcaron: '\u010F', + Dcy: '\u0414', + dcy: '\u0434', + DD: '\u2145', + dd: '\u2146', + ddagger: '\u2021', + ddarr: '\u21CA', + DDotrahd: '\u2911', + ddotseq: '\u2A77', + deg: '\u00B0', + Del: '\u2207', + Delta: '\u0394', + delta: '\u03B4', + demptyv: '\u29B1', + dfisht: '\u297F', + Dfr: '\uD835\uDD07', + dfr: '\uD835\uDD21', + dHar: '\u2965', + dharl: '\u21C3', + dharr: '\u21C2', + DiacriticalAcute: '\u00B4', + DiacriticalDot: '\u02D9', + DiacriticalDoubleAcute: '\u02DD', + DiacriticalGrave: '\u0060', + DiacriticalTilde: '\u02DC', + diam: '\u22C4', + Diamond: '\u22C4', + diamond: '\u22C4', + diamondsuit: '\u2666', + diams: '\u2666', + die: '\u00A8', + DifferentialD: '\u2146', + digamma: '\u03DD', + disin: '\u22F2', + div: '\u00F7', + divide: '\u00F7', + divideontimes: '\u22C7', + divonx: '\u22C7', + DJcy: '\u0402', + djcy: '\u0452', + dlcorn: '\u231E', + dlcrop: '\u230D', + dollar: '\u0024', + Dopf: '\uD835\uDD3B', + dopf: '\uD835\uDD55', + Dot: '\u00A8', + dot: '\u02D9', + DotDot: '\u20DC', + doteq: '\u2250', + doteqdot: '\u2251', + DotEqual: '\u2250', + dotminus: '\u2238', + dotplus: '\u2214', + dotsquare: '\u22A1', + doublebarwedge: '\u2306', + DoubleContourIntegral: '\u222F', + DoubleDot: '\u00A8', + DoubleDownArrow: '\u21D3', + DoubleLeftArrow: '\u21D0', + DoubleLeftRightArrow: '\u21D4', + DoubleLeftTee: '\u2AE4', + DoubleLongLeftArrow: '\u27F8', + DoubleLongLeftRightArrow: '\u27FA', + DoubleLongRightArrow: '\u27F9', + DoubleRightArrow: '\u21D2', + DoubleRightTee: '\u22A8', + DoubleUpArrow: '\u21D1', + DoubleUpDownArrow: '\u21D5', + DoubleVerticalBar: '\u2225', + DownArrow: '\u2193', + Downarrow: '\u21D3', + downarrow: '\u2193', + DownArrowBar: '\u2913', + DownArrowUpArrow: '\u21F5', + DownBreve: '\u0311', + downdownarrows: '\u21CA', + downharpoonleft: '\u21C3', + downharpoonright: '\u21C2', + DownLeftRightVector: '\u2950', + DownLeftTeeVector: '\u295E', + DownLeftVector: '\u21BD', + DownLeftVectorBar: '\u2956', + DownRightTeeVector: '\u295F', + DownRightVector: '\u21C1', + DownRightVectorBar: '\u2957', + DownTee: '\u22A4', + DownTeeArrow: '\u21A7', + drbkarow: '\u2910', + drcorn: '\u231F', + drcrop: '\u230C', + Dscr: '\uD835\uDC9F', + dscr: '\uD835\uDCB9', + DScy: '\u0405', + dscy: '\u0455', + dsol: '\u29F6', + Dstrok: '\u0110', + dstrok: '\u0111', + dtdot: '\u22F1', + dtri: '\u25BF', + dtrif: '\u25BE', + duarr: '\u21F5', + duhar: '\u296F', + dwangle: '\u29A6', + DZcy: '\u040F', + dzcy: '\u045F', + dzigrarr: '\u27FF', + Eacute: '\u00C9', + eacute: '\u00E9', + easter: '\u2A6E', + Ecaron: '\u011A', + ecaron: '\u011B', + ecir: '\u2256', + Ecirc: '\u00CA', + ecirc: '\u00EA', + ecolon: '\u2255', + Ecy: '\u042D', + ecy: '\u044D', + eDDot: '\u2A77', + Edot: '\u0116', + eDot: '\u2251', + edot: '\u0117', + ee: '\u2147', + efDot: '\u2252', + Efr: '\uD835\uDD08', + efr: '\uD835\uDD22', + eg: '\u2A9A', + Egrave: '\u00C8', + egrave: '\u00E8', + egs: '\u2A96', + egsdot: '\u2A98', + el: '\u2A99', + Element: '\u2208', + elinters: '\u23E7', + ell: '\u2113', + els: '\u2A95', + elsdot: '\u2A97', + Emacr: '\u0112', + emacr: '\u0113', + empty: '\u2205', + emptyset: '\u2205', + EmptySmallSquare: '\u25FB', + emptyv: '\u2205', + EmptyVerySmallSquare: '\u25AB', + emsp: '\u2003', + emsp13: '\u2004', + emsp14: '\u2005', + ENG: '\u014A', + eng: '\u014B', + ensp: '\u2002', + Eogon: '\u0118', + eogon: '\u0119', + Eopf: '\uD835\uDD3C', + eopf: '\uD835\uDD56', + epar: '\u22D5', + eparsl: '\u29E3', + eplus: '\u2A71', + epsi: '\u03B5', + Epsilon: '\u0395', + epsilon: '\u03B5', + epsiv: '\u03F5', + eqcirc: '\u2256', + eqcolon: '\u2255', + eqsim: '\u2242', + eqslantgtr: '\u2A96', + eqslantless: '\u2A95', + Equal: '\u2A75', + equals: '\u003D', + EqualTilde: '\u2242', + equest: '\u225F', + Equilibrium: '\u21CC', + equiv: '\u2261', + equivDD: '\u2A78', + eqvparsl: '\u29E5', + erarr: '\u2971', + erDot: '\u2253', + Escr: '\u2130', + escr: '\u212F', + esdot: '\u2250', + Esim: '\u2A73', + esim: '\u2242', + Eta: '\u0397', + eta: '\u03B7', + ETH: '\u00D0', + eth: '\u00F0', + Euml: '\u00CB', + euml: '\u00EB', + euro: '\u20AC', + excl: '\u0021', + exist: '\u2203', + Exists: '\u2203', + expectation: '\u2130', + ExponentialE: '\u2147', + exponentiale: '\u2147', + fallingdotseq: '\u2252', + Fcy: '\u0424', + fcy: '\u0444', + female: '\u2640', + ffilig: '\uFB03', + fflig: '\uFB00', + ffllig: '\uFB04', + Ffr: '\uD835\uDD09', + ffr: '\uD835\uDD23', + filig: '\uFB01', + FilledSmallSquare: '\u25FC', + FilledVerySmallSquare: '\u25AA', + fjlig: '\u0066\u006A', + flat: '\u266D', + fllig: '\uFB02', + fltns: '\u25B1', + fnof: '\u0192', + Fopf: '\uD835\uDD3D', + fopf: '\uD835\uDD57', + ForAll: '\u2200', + forall: '\u2200', + fork: '\u22D4', + forkv: '\u2AD9', + Fouriertrf: '\u2131', + fpartint: '\u2A0D', + frac12: '\u00BD', + frac13: '\u2153', + frac14: '\u00BC', + frac15: '\u2155', + frac16: '\u2159', + frac18: '\u215B', + frac23: '\u2154', + frac25: '\u2156', + frac34: '\u00BE', + frac35: '\u2157', + frac38: '\u215C', + frac45: '\u2158', + frac56: '\u215A', + frac58: '\u215D', + frac78: '\u215E', + frasl: '\u2044', + frown: '\u2322', + Fscr: '\u2131', + fscr: '\uD835\uDCBB', + gacute: '\u01F5', + Gamma: '\u0393', + gamma: '\u03B3', + Gammad: '\u03DC', + gammad: '\u03DD', + gap: '\u2A86', + Gbreve: '\u011E', + gbreve: '\u011F', + Gcedil: '\u0122', + Gcirc: '\u011C', + gcirc: '\u011D', + Gcy: '\u0413', + gcy: '\u0433', + Gdot: '\u0120', + gdot: '\u0121', + gE: '\u2267', + ge: '\u2265', + gEl: '\u2A8C', + gel: '\u22DB', + geq: '\u2265', + geqq: '\u2267', + geqslant: '\u2A7E', + ges: '\u2A7E', + gescc: '\u2AA9', + gesdot: '\u2A80', + gesdoto: '\u2A82', + gesdotol: '\u2A84', + gesl: '\u22DB\uFE00', + gesles: '\u2A94', + Gfr: '\uD835\uDD0A', + gfr: '\uD835\uDD24', + Gg: '\u22D9', + gg: '\u226B', + ggg: '\u22D9', + gimel: '\u2137', + GJcy: '\u0403', + gjcy: '\u0453', + gl: '\u2277', + gla: '\u2AA5', + glE: '\u2A92', + glj: '\u2AA4', + gnap: '\u2A8A', + gnapprox: '\u2A8A', + gnE: '\u2269', + gne: '\u2A88', + gneq: '\u2A88', + gneqq: '\u2269', + gnsim: '\u22E7', + Gopf: '\uD835\uDD3E', + gopf: '\uD835\uDD58', + grave: '\u0060', + GreaterEqual: '\u2265', + GreaterEqualLess: '\u22DB', + GreaterFullEqual: '\u2267', + GreaterGreater: '\u2AA2', + GreaterLess: '\u2277', + GreaterSlantEqual: '\u2A7E', + GreaterTilde: '\u2273', + Gscr: '\uD835\uDCA2', + gscr: '\u210A', + gsim: '\u2273', + gsime: '\u2A8E', + gsiml: '\u2A90', + Gt: '\u226B', + GT: '\u003E', + gt: '\u003E', + gtcc: '\u2AA7', + gtcir: '\u2A7A', + gtdot: '\u22D7', + gtlPar: '\u2995', + gtquest: '\u2A7C', + gtrapprox: '\u2A86', + gtrarr: '\u2978', + gtrdot: '\u22D7', + gtreqless: '\u22DB', + gtreqqless: '\u2A8C', + gtrless: '\u2277', + gtrsim: '\u2273', + gvertneqq: '\u2269\uFE00', + gvnE: '\u2269\uFE00', + Hacek: '\u02C7', + hairsp: '\u200A', + half: '\u00BD', + hamilt: '\u210B', + HARDcy: '\u042A', + hardcy: '\u044A', + hArr: '\u21D4', + harr: '\u2194', + harrcir: '\u2948', + harrw: '\u21AD', + Hat: '\u005E', + hbar: '\u210F', + Hcirc: '\u0124', + hcirc: '\u0125', + hearts: '\u2665', + heartsuit: '\u2665', + hellip: '\u2026', + hercon: '\u22B9', + Hfr: '\u210C', + hfr: '\uD835\uDD25', + HilbertSpace: '\u210B', + hksearow: '\u2925', + hkswarow: '\u2926', + hoarr: '\u21FF', + homtht: '\u223B', + hookleftarrow: '\u21A9', + hookrightarrow: '\u21AA', + Hopf: '\u210D', + hopf: '\uD835\uDD59', + horbar: '\u2015', + HorizontalLine: '\u2500', + Hscr: '\u210B', + hscr: '\uD835\uDCBD', + hslash: '\u210F', + Hstrok: '\u0126', + hstrok: '\u0127', + HumpDownHump: '\u224E', + HumpEqual: '\u224F', + hybull: '\u2043', + hyphen: '\u2010', + Iacute: '\u00CD', + iacute: '\u00ED', + ic: '\u2063', + Icirc: '\u00CE', + icirc: '\u00EE', + Icy: '\u0418', + icy: '\u0438', + Idot: '\u0130', + IEcy: '\u0415', + iecy: '\u0435', + iexcl: '\u00A1', + iff: '\u21D4', + Ifr: '\u2111', + ifr: '\uD835\uDD26', + Igrave: '\u00CC', + igrave: '\u00EC', + ii: '\u2148', + iiiint: '\u2A0C', + iiint: '\u222D', + iinfin: '\u29DC', + iiota: '\u2129', + IJlig: '\u0132', + ijlig: '\u0133', + Im: '\u2111', + Imacr: '\u012A', + imacr: '\u012B', + image: '\u2111', + ImaginaryI: '\u2148', + imagline: '\u2110', + imagpart: '\u2111', + imath: '\u0131', + imof: '\u22B7', + imped: '\u01B5', + Implies: '\u21D2', + in: '\u2208', + incare: '\u2105', + infin: '\u221E', + infintie: '\u29DD', + inodot: '\u0131', + Int: '\u222C', + int: '\u222B', + intcal: '\u22BA', + integers: '\u2124', + Integral: '\u222B', + intercal: '\u22BA', + Intersection: '\u22C2', + intlarhk: '\u2A17', + intprod: '\u2A3C', + InvisibleComma: '\u2063', + InvisibleTimes: '\u2062', + IOcy: '\u0401', + iocy: '\u0451', + Iogon: '\u012E', + iogon: '\u012F', + Iopf: '\uD835\uDD40', + iopf: '\uD835\uDD5A', + Iota: '\u0399', + iota: '\u03B9', + iprod: '\u2A3C', + iquest: '\u00BF', + Iscr: '\u2110', + iscr: '\uD835\uDCBE', + isin: '\u2208', + isindot: '\u22F5', + isinE: '\u22F9', + isins: '\u22F4', + isinsv: '\u22F3', + isinv: '\u2208', + it: '\u2062', + Itilde: '\u0128', + itilde: '\u0129', + Iukcy: '\u0406', + iukcy: '\u0456', + Iuml: '\u00CF', + iuml: '\u00EF', + Jcirc: '\u0134', + jcirc: '\u0135', + Jcy: '\u0419', + jcy: '\u0439', + Jfr: '\uD835\uDD0D', + jfr: '\uD835\uDD27', + jmath: '\u0237', + Jopf: '\uD835\uDD41', + jopf: '\uD835\uDD5B', + Jscr: '\uD835\uDCA5', + jscr: '\uD835\uDCBF', + Jsercy: '\u0408', + jsercy: '\u0458', + Jukcy: '\u0404', + jukcy: '\u0454', + Kappa: '\u039A', + kappa: '\u03BA', + kappav: '\u03F0', + Kcedil: '\u0136', + kcedil: '\u0137', + Kcy: '\u041A', + kcy: '\u043A', + Kfr: '\uD835\uDD0E', + kfr: '\uD835\uDD28', + kgreen: '\u0138', + KHcy: '\u0425', + khcy: '\u0445', + KJcy: '\u040C', + kjcy: '\u045C', + Kopf: '\uD835\uDD42', + kopf: '\uD835\uDD5C', + Kscr: '\uD835\uDCA6', + kscr: '\uD835\uDCC0', + lAarr: '\u21DA', + Lacute: '\u0139', + lacute: '\u013A', + laemptyv: '\u29B4', + lagran: '\u2112', + Lambda: '\u039B', + lambda: '\u03BB', + Lang: '\u27EA', + lang: '\u27E8', + langd: '\u2991', + langle: '\u27E8', + lap: '\u2A85', + Laplacetrf: '\u2112', + laquo: '\u00AB', + Larr: '\u219E', + lArr: '\u21D0', + larr: '\u2190', + larrb: '\u21E4', + larrbfs: '\u291F', + larrfs: '\u291D', + larrhk: '\u21A9', + larrlp: '\u21AB', + larrpl: '\u2939', + larrsim: '\u2973', + larrtl: '\u21A2', + lat: '\u2AAB', + lAtail: '\u291B', + latail: '\u2919', + late: '\u2AAD', + lates: '\u2AAD\uFE00', + lBarr: '\u290E', + lbarr: '\u290C', + lbbrk: '\u2772', + lbrace: '\u007B', + lbrack: '\u005B', + lbrke: '\u298B', + lbrksld: '\u298F', + lbrkslu: '\u298D', + Lcaron: '\u013D', + lcaron: '\u013E', + Lcedil: '\u013B', + lcedil: '\u013C', + lceil: '\u2308', + lcub: '\u007B', + Lcy: '\u041B', + lcy: '\u043B', + ldca: '\u2936', + ldquo: '\u201C', + ldquor: '\u201E', + ldrdhar: '\u2967', + ldrushar: '\u294B', + ldsh: '\u21B2', + lE: '\u2266', + le: '\u2264', + LeftAngleBracket: '\u27E8', + LeftArrow: '\u2190', + Leftarrow: '\u21D0', + leftarrow: '\u2190', + LeftArrowBar: '\u21E4', + LeftArrowRightArrow: '\u21C6', + leftarrowtail: '\u21A2', + LeftCeiling: '\u2308', + LeftDoubleBracket: '\u27E6', + LeftDownTeeVector: '\u2961', + LeftDownVector: '\u21C3', + LeftDownVectorBar: '\u2959', + LeftFloor: '\u230A', + leftharpoondown: '\u21BD', + leftharpoonup: '\u21BC', + leftleftarrows: '\u21C7', + LeftRightArrow: '\u2194', + Leftrightarrow: '\u21D4', + leftrightarrow: '\u2194', + leftrightarrows: '\u21C6', + leftrightharpoons: '\u21CB', + leftrightsquigarrow: '\u21AD', + LeftRightVector: '\u294E', + LeftTee: '\u22A3', + LeftTeeArrow: '\u21A4', + LeftTeeVector: '\u295A', + leftthreetimes: '\u22CB', + LeftTriangle: '\u22B2', + LeftTriangleBar: '\u29CF', + LeftTriangleEqual: '\u22B4', + LeftUpDownVector: '\u2951', + LeftUpTeeVector: '\u2960', + LeftUpVector: '\u21BF', + LeftUpVectorBar: '\u2958', + LeftVector: '\u21BC', + LeftVectorBar: '\u2952', + lEg: '\u2A8B', + leg: '\u22DA', + leq: '\u2264', + leqq: '\u2266', + leqslant: '\u2A7D', + les: '\u2A7D', + lescc: '\u2AA8', + lesdot: '\u2A7F', + lesdoto: '\u2A81', + lesdotor: '\u2A83', + lesg: '\u22DA\uFE00', + lesges: '\u2A93', + lessapprox: '\u2A85', + lessdot: '\u22D6', + lesseqgtr: '\u22DA', + lesseqqgtr: '\u2A8B', + LessEqualGreater: '\u22DA', + LessFullEqual: '\u2266', + LessGreater: '\u2276', + lessgtr: '\u2276', + LessLess: '\u2AA1', + lesssim: '\u2272', + LessSlantEqual: '\u2A7D', + LessTilde: '\u2272', + lfisht: '\u297C', + lfloor: '\u230A', + Lfr: '\uD835\uDD0F', + lfr: '\uD835\uDD29', + lg: '\u2276', + lgE: '\u2A91', + lHar: '\u2962', + lhard: '\u21BD', + lharu: '\u21BC', + lharul: '\u296A', + lhblk: '\u2584', + LJcy: '\u0409', + ljcy: '\u0459', + Ll: '\u22D8', + ll: '\u226A', + llarr: '\u21C7', + llcorner: '\u231E', + Lleftarrow: '\u21DA', + llhard: '\u296B', + lltri: '\u25FA', + Lmidot: '\u013F', + lmidot: '\u0140', + lmoust: '\u23B0', + lmoustache: '\u23B0', + lnap: '\u2A89', + lnapprox: '\u2A89', + lnE: '\u2268', + lne: '\u2A87', + lneq: '\u2A87', + lneqq: '\u2268', + lnsim: '\u22E6', + loang: '\u27EC', + loarr: '\u21FD', + lobrk: '\u27E6', + LongLeftArrow: '\u27F5', + Longleftarrow: '\u27F8', + longleftarrow: '\u27F5', + LongLeftRightArrow: '\u27F7', + Longleftrightarrow: '\u27FA', + longleftrightarrow: '\u27F7', + longmapsto: '\u27FC', + LongRightArrow: '\u27F6', + Longrightarrow: '\u27F9', + longrightarrow: '\u27F6', + looparrowleft: '\u21AB', + looparrowright: '\u21AC', + lopar: '\u2985', + Lopf: '\uD835\uDD43', + lopf: '\uD835\uDD5D', + loplus: '\u2A2D', + lotimes: '\u2A34', + lowast: '\u2217', + lowbar: '\u005F', + LowerLeftArrow: '\u2199', + LowerRightArrow: '\u2198', + loz: '\u25CA', + lozenge: '\u25CA', + lozf: '\u29EB', + lpar: '\u0028', + lparlt: '\u2993', + lrarr: '\u21C6', + lrcorner: '\u231F', + lrhar: '\u21CB', + lrhard: '\u296D', + lrm: '\u200E', + lrtri: '\u22BF', + lsaquo: '\u2039', + Lscr: '\u2112', + lscr: '\uD835\uDCC1', + Lsh: '\u21B0', + lsh: '\u21B0', + lsim: '\u2272', + lsime: '\u2A8D', + lsimg: '\u2A8F', + lsqb: '\u005B', + lsquo: '\u2018', + lsquor: '\u201A', + Lstrok: '\u0141', + lstrok: '\u0142', + Lt: '\u226A', + LT: '\u003C', + lt: '\u003C', + ltcc: '\u2AA6', + ltcir: '\u2A79', + ltdot: '\u22D6', + lthree: '\u22CB', + ltimes: '\u22C9', + ltlarr: '\u2976', + ltquest: '\u2A7B', + ltri: '\u25C3', + ltrie: '\u22B4', + ltrif: '\u25C2', + ltrPar: '\u2996', + lurdshar: '\u294A', + luruhar: '\u2966', + lvertneqq: '\u2268\uFE00', + lvnE: '\u2268\uFE00', + macr: '\u00AF', + male: '\u2642', + malt: '\u2720', + maltese: '\u2720', + Map: '\u2905', + map: '\u21A6', + mapsto: '\u21A6', + mapstodown: '\u21A7', + mapstoleft: '\u21A4', + mapstoup: '\u21A5', + marker: '\u25AE', + mcomma: '\u2A29', + Mcy: '\u041C', + mcy: '\u043C', + mdash: '\u2014', + mDDot: '\u223A', + measuredangle: '\u2221', + MediumSpace: '\u205F', + Mellintrf: '\u2133', + Mfr: '\uD835\uDD10', + mfr: '\uD835\uDD2A', + mho: '\u2127', + micro: '\u00B5', + mid: '\u2223', + midast: '\u002A', + midcir: '\u2AF0', + middot: '\u00B7', + minus: '\u2212', + minusb: '\u229F', + minusd: '\u2238', + minusdu: '\u2A2A', + MinusPlus: '\u2213', + mlcp: '\u2ADB', + mldr: '\u2026', + mnplus: '\u2213', + models: '\u22A7', + Mopf: '\uD835\uDD44', + mopf: '\uD835\uDD5E', + mp: '\u2213', + Mscr: '\u2133', + mscr: '\uD835\uDCC2', + mstpos: '\u223E', + Mu: '\u039C', + mu: '\u03BC', + multimap: '\u22B8', + mumap: '\u22B8', + nabla: '\u2207', + Nacute: '\u0143', + nacute: '\u0144', + nang: '\u2220\u20D2', + nap: '\u2249', + napE: '\u2A70\u0338', + napid: '\u224B\u0338', + napos: '\u0149', + napprox: '\u2249', + natur: '\u266E', + natural: '\u266E', + naturals: '\u2115', + nbsp: '\u00A0', + nbump: '\u224E\u0338', + nbumpe: '\u224F\u0338', + ncap: '\u2A43', + Ncaron: '\u0147', + ncaron: '\u0148', + Ncedil: '\u0145', + ncedil: '\u0146', + ncong: '\u2247', + ncongdot: '\u2A6D\u0338', + ncup: '\u2A42', + Ncy: '\u041D', + ncy: '\u043D', + ndash: '\u2013', + ne: '\u2260', + nearhk: '\u2924', + neArr: '\u21D7', + nearr: '\u2197', + nearrow: '\u2197', + nedot: '\u2250\u0338', + NegativeMediumSpace: '\u200B', + NegativeThickSpace: '\u200B', + NegativeThinSpace: '\u200B', + NegativeVeryThinSpace: '\u200B', + nequiv: '\u2262', + nesear: '\u2928', + nesim: '\u2242\u0338', + NestedGreaterGreater: '\u226B', + NestedLessLess: '\u226A', + NewLine: '\u000A', + nexist: '\u2204', + nexists: '\u2204', + Nfr: '\uD835\uDD11', + nfr: '\uD835\uDD2B', + ngE: '\u2267\u0338', + nge: '\u2271', + ngeq: '\u2271', + ngeqq: '\u2267\u0338', + ngeqslant: '\u2A7E\u0338', + nges: '\u2A7E\u0338', + nGg: '\u22D9\u0338', + ngsim: '\u2275', + nGt: '\u226B\u20D2', + ngt: '\u226F', + ngtr: '\u226F', + nGtv: '\u226B\u0338', + nhArr: '\u21CE', + nharr: '\u21AE', + nhpar: '\u2AF2', + ni: '\u220B', + nis: '\u22FC', + nisd: '\u22FA', + niv: '\u220B', + NJcy: '\u040A', + njcy: '\u045A', + nlArr: '\u21CD', + nlarr: '\u219A', + nldr: '\u2025', + nlE: '\u2266\u0338', + nle: '\u2270', + nLeftarrow: '\u21CD', + nleftarrow: '\u219A', + nLeftrightarrow: '\u21CE', + nleftrightarrow: '\u21AE', + nleq: '\u2270', + nleqq: '\u2266\u0338', + nleqslant: '\u2A7D\u0338', + nles: '\u2A7D\u0338', + nless: '\u226E', + nLl: '\u22D8\u0338', + nlsim: '\u2274', + nLt: '\u226A\u20D2', + nlt: '\u226E', + nltri: '\u22EA', + nltrie: '\u22EC', + nLtv: '\u226A\u0338', + nmid: '\u2224', + NoBreak: '\u2060', + NonBreakingSpace: '\u00A0', + Nopf: '\u2115', + nopf: '\uD835\uDD5F', + Not: '\u2AEC', + not: '\u00AC', + NotCongruent: '\u2262', + NotCupCap: '\u226D', + NotDoubleVerticalBar: '\u2226', + NotElement: '\u2209', + NotEqual: '\u2260', + NotEqualTilde: '\u2242\u0338', + NotExists: '\u2204', + NotGreater: '\u226F', + NotGreaterEqual: '\u2271', + NotGreaterFullEqual: '\u2267\u0338', + NotGreaterGreater: '\u226B\u0338', + NotGreaterLess: '\u2279', + NotGreaterSlantEqual: '\u2A7E\u0338', + NotGreaterTilde: '\u2275', + NotHumpDownHump: '\u224E\u0338', + NotHumpEqual: '\u224F\u0338', + notin: '\u2209', + notindot: '\u22F5\u0338', + notinE: '\u22F9\u0338', + notinva: '\u2209', + notinvb: '\u22F7', + notinvc: '\u22F6', + NotLeftTriangle: '\u22EA', + NotLeftTriangleBar: '\u29CF\u0338', + NotLeftTriangleEqual: '\u22EC', + NotLess: '\u226E', + NotLessEqual: '\u2270', + NotLessGreater: '\u2278', + NotLessLess: '\u226A\u0338', + NotLessSlantEqual: '\u2A7D\u0338', + NotLessTilde: '\u2274', + NotNestedGreaterGreater: '\u2AA2\u0338', + NotNestedLessLess: '\u2AA1\u0338', + notni: '\u220C', + notniva: '\u220C', + notnivb: '\u22FE', + notnivc: '\u22FD', + NotPrecedes: '\u2280', + NotPrecedesEqual: '\u2AAF\u0338', + NotPrecedesSlantEqual: '\u22E0', + NotReverseElement: '\u220C', + NotRightTriangle: '\u22EB', + NotRightTriangleBar: '\u29D0\u0338', + NotRightTriangleEqual: '\u22ED', + NotSquareSubset: '\u228F\u0338', + NotSquareSubsetEqual: '\u22E2', + NotSquareSuperset: '\u2290\u0338', + NotSquareSupersetEqual: '\u22E3', + NotSubset: '\u2282\u20D2', + NotSubsetEqual: '\u2288', + NotSucceeds: '\u2281', + NotSucceedsEqual: '\u2AB0\u0338', + NotSucceedsSlantEqual: '\u22E1', + NotSucceedsTilde: '\u227F\u0338', + NotSuperset: '\u2283\u20D2', + NotSupersetEqual: '\u2289', + NotTilde: '\u2241', + NotTildeEqual: '\u2244', + NotTildeFullEqual: '\u2247', + NotTildeTilde: '\u2249', + NotVerticalBar: '\u2224', + npar: '\u2226', + nparallel: '\u2226', + nparsl: '\u2AFD\u20E5', + npart: '\u2202\u0338', + npolint: '\u2A14', + npr: '\u2280', + nprcue: '\u22E0', + npre: '\u2AAF\u0338', + nprec: '\u2280', + npreceq: '\u2AAF\u0338', + nrArr: '\u21CF', + nrarr: '\u219B', + nrarrc: '\u2933\u0338', + nrarrw: '\u219D\u0338', + nRightarrow: '\u21CF', + nrightarrow: '\u219B', + nrtri: '\u22EB', + nrtrie: '\u22ED', + nsc: '\u2281', + nsccue: '\u22E1', + nsce: '\u2AB0\u0338', + Nscr: '\uD835\uDCA9', + nscr: '\uD835\uDCC3', + nshortmid: '\u2224', + nshortparallel: '\u2226', + nsim: '\u2241', + nsime: '\u2244', + nsimeq: '\u2244', + nsmid: '\u2224', + nspar: '\u2226', + nsqsube: '\u22E2', + nsqsupe: '\u22E3', + nsub: '\u2284', + nsubE: '\u2AC5\u0338', + nsube: '\u2288', + nsubset: '\u2282\u20D2', + nsubseteq: '\u2288', + nsubseteqq: '\u2AC5\u0338', + nsucc: '\u2281', + nsucceq: '\u2AB0\u0338', + nsup: '\u2285', + nsupE: '\u2AC6\u0338', + nsupe: '\u2289', + nsupset: '\u2283\u20D2', + nsupseteq: '\u2289', + nsupseteqq: '\u2AC6\u0338', + ntgl: '\u2279', + Ntilde: '\u00D1', + ntilde: '\u00F1', + ntlg: '\u2278', + ntriangleleft: '\u22EA', + ntrianglelefteq: '\u22EC', + ntriangleright: '\u22EB', + ntrianglerighteq: '\u22ED', + Nu: '\u039D', + nu: '\u03BD', + num: '\u0023', + numero: '\u2116', + numsp: '\u2007', + nvap: '\u224D\u20D2', + nVDash: '\u22AF', + nVdash: '\u22AE', + nvDash: '\u22AD', + nvdash: '\u22AC', + nvge: '\u2265\u20D2', + nvgt: '\u003E\u20D2', + nvHarr: '\u2904', + nvinfin: '\u29DE', + nvlArr: '\u2902', + nvle: '\u2264\u20D2', + nvlt: '\u003C\u20D2', + nvltrie: '\u22B4\u20D2', + nvrArr: '\u2903', + nvrtrie: '\u22B5\u20D2', + nvsim: '\u223C\u20D2', + nwarhk: '\u2923', + nwArr: '\u21D6', + nwarr: '\u2196', + nwarrow: '\u2196', + nwnear: '\u2927', + Oacute: '\u00D3', + oacute: '\u00F3', + oast: '\u229B', + ocir: '\u229A', + Ocirc: '\u00D4', + ocirc: '\u00F4', + Ocy: '\u041E', + ocy: '\u043E', + odash: '\u229D', + Odblac: '\u0150', + odblac: '\u0151', + odiv: '\u2A38', + odot: '\u2299', + odsold: '\u29BC', + OElig: '\u0152', + oelig: '\u0153', + ofcir: '\u29BF', + Ofr: '\uD835\uDD12', + ofr: '\uD835\uDD2C', + ogon: '\u02DB', + Ograve: '\u00D2', + ograve: '\u00F2', + ogt: '\u29C1', + ohbar: '\u29B5', + ohm: '\u03A9', + oint: '\u222E', + olarr: '\u21BA', + olcir: '\u29BE', + olcross: '\u29BB', + oline: '\u203E', + olt: '\u29C0', + Omacr: '\u014C', + omacr: '\u014D', + Omega: '\u03A9', + omega: '\u03C9', + Omicron: '\u039F', + omicron: '\u03BF', + omid: '\u29B6', + ominus: '\u2296', + Oopf: '\uD835\uDD46', + oopf: '\uD835\uDD60', + opar: '\u29B7', + OpenCurlyDoubleQuote: '\u201C', + OpenCurlyQuote: '\u2018', + operp: '\u29B9', + oplus: '\u2295', + Or: '\u2A54', + or: '\u2228', + orarr: '\u21BB', + ord: '\u2A5D', + order: '\u2134', + orderof: '\u2134', + ordf: '\u00AA', + ordm: '\u00BA', + origof: '\u22B6', + oror: '\u2A56', + orslope: '\u2A57', + orv: '\u2A5B', + oS: '\u24C8', + Oscr: '\uD835\uDCAA', + oscr: '\u2134', + Oslash: '\u00D8', + oslash: '\u00F8', + osol: '\u2298', + Otilde: '\u00D5', + otilde: '\u00F5', + Otimes: '\u2A37', + otimes: '\u2297', + otimesas: '\u2A36', + Ouml: '\u00D6', + ouml: '\u00F6', + ovbar: '\u233D', + OverBar: '\u203E', + OverBrace: '\u23DE', + OverBracket: '\u23B4', + OverParenthesis: '\u23DC', + par: '\u2225', + para: '\u00B6', + parallel: '\u2225', + parsim: '\u2AF3', + parsl: '\u2AFD', + part: '\u2202', + PartialD: '\u2202', + Pcy: '\u041F', + pcy: '\u043F', + percnt: '\u0025', + period: '\u002E', + permil: '\u2030', + perp: '\u22A5', + pertenk: '\u2031', + Pfr: '\uD835\uDD13', + pfr: '\uD835\uDD2D', + Phi: '\u03A6', + phi: '\u03C6', + phiv: '\u03D5', + phmmat: '\u2133', + phone: '\u260E', + Pi: '\u03A0', + pi: '\u03C0', + pitchfork: '\u22D4', + piv: '\u03D6', + planck: '\u210F', + planckh: '\u210E', + plankv: '\u210F', + plus: '\u002B', + plusacir: '\u2A23', + plusb: '\u229E', + pluscir: '\u2A22', + plusdo: '\u2214', + plusdu: '\u2A25', + pluse: '\u2A72', + PlusMinus: '\u00B1', + plusmn: '\u00B1', + plussim: '\u2A26', + plustwo: '\u2A27', + pm: '\u00B1', + Poincareplane: '\u210C', + pointint: '\u2A15', + Popf: '\u2119', + popf: '\uD835\uDD61', + pound: '\u00A3', + Pr: '\u2ABB', + pr: '\u227A', + prap: '\u2AB7', + prcue: '\u227C', + prE: '\u2AB3', + pre: '\u2AAF', + prec: '\u227A', + precapprox: '\u2AB7', + preccurlyeq: '\u227C', + Precedes: '\u227A', + PrecedesEqual: '\u2AAF', + PrecedesSlantEqual: '\u227C', + PrecedesTilde: '\u227E', + preceq: '\u2AAF', + precnapprox: '\u2AB9', + precneqq: '\u2AB5', + precnsim: '\u22E8', + precsim: '\u227E', + Prime: '\u2033', + prime: '\u2032', + primes: '\u2119', + prnap: '\u2AB9', + prnE: '\u2AB5', + prnsim: '\u22E8', + prod: '\u220F', + Product: '\u220F', + profalar: '\u232E', + profline: '\u2312', + profsurf: '\u2313', + prop: '\u221D', + Proportion: '\u2237', + Proportional: '\u221D', + propto: '\u221D', + prsim: '\u227E', + prurel: '\u22B0', + Pscr: '\uD835\uDCAB', + pscr: '\uD835\uDCC5', + Psi: '\u03A8', + psi: '\u03C8', + puncsp: '\u2008', + Qfr: '\uD835\uDD14', + qfr: '\uD835\uDD2E', + qint: '\u2A0C', + Qopf: '\u211A', + qopf: '\uD835\uDD62', + qprime: '\u2057', + Qscr: '\uD835\uDCAC', + qscr: '\uD835\uDCC6', + quaternions: '\u210D', + quatint: '\u2A16', + quest: '\u003F', + questeq: '\u225F', + QUOT: '\u0022', + quot: '\u0022', + rAarr: '\u21DB', + race: '\u223D\u0331', + Racute: '\u0154', + racute: '\u0155', + radic: '\u221A', + raemptyv: '\u29B3', + Rang: '\u27EB', + rang: '\u27E9', + rangd: '\u2992', + range: '\u29A5', + rangle: '\u27E9', + raquo: '\u00BB', + Rarr: '\u21A0', + rArr: '\u21D2', + rarr: '\u2192', + rarrap: '\u2975', + rarrb: '\u21E5', + rarrbfs: '\u2920', + rarrc: '\u2933', + rarrfs: '\u291E', + rarrhk: '\u21AA', + rarrlp: '\u21AC', + rarrpl: '\u2945', + rarrsim: '\u2974', + Rarrtl: '\u2916', + rarrtl: '\u21A3', + rarrw: '\u219D', + rAtail: '\u291C', + ratail: '\u291A', + ratio: '\u2236', + rationals: '\u211A', + RBarr: '\u2910', + rBarr: '\u290F', + rbarr: '\u290D', + rbbrk: '\u2773', + rbrace: '\u007D', + rbrack: '\u005D', + rbrke: '\u298C', + rbrksld: '\u298E', + rbrkslu: '\u2990', + Rcaron: '\u0158', + rcaron: '\u0159', + Rcedil: '\u0156', + rcedil: '\u0157', + rceil: '\u2309', + rcub: '\u007D', + Rcy: '\u0420', + rcy: '\u0440', + rdca: '\u2937', + rdldhar: '\u2969', + rdquo: '\u201D', + rdquor: '\u201D', + rdsh: '\u21B3', + Re: '\u211C', + real: '\u211C', + realine: '\u211B', + realpart: '\u211C', + reals: '\u211D', + rect: '\u25AD', + REG: '\u00AE', + reg: '\u00AE', + ReverseElement: '\u220B', + ReverseEquilibrium: '\u21CB', + ReverseUpEquilibrium: '\u296F', + rfisht: '\u297D', + rfloor: '\u230B', + Rfr: '\u211C', + rfr: '\uD835\uDD2F', + rHar: '\u2964', + rhard: '\u21C1', + rharu: '\u21C0', + rharul: '\u296C', + Rho: '\u03A1', + rho: '\u03C1', + rhov: '\u03F1', + RightAngleBracket: '\u27E9', + RightArrow: '\u2192', + Rightarrow: '\u21D2', + rightarrow: '\u2192', + RightArrowBar: '\u21E5', + RightArrowLeftArrow: '\u21C4', + rightarrowtail: '\u21A3', + RightCeiling: '\u2309', + RightDoubleBracket: '\u27E7', + RightDownTeeVector: '\u295D', + RightDownVector: '\u21C2', + RightDownVectorBar: '\u2955', + RightFloor: '\u230B', + rightharpoondown: '\u21C1', + rightharpoonup: '\u21C0', + rightleftarrows: '\u21C4', + rightleftharpoons: '\u21CC', + rightrightarrows: '\u21C9', + rightsquigarrow: '\u219D', + RightTee: '\u22A2', + RightTeeArrow: '\u21A6', + RightTeeVector: '\u295B', + rightthreetimes: '\u22CC', + RightTriangle: '\u22B3', + RightTriangleBar: '\u29D0', + RightTriangleEqual: '\u22B5', + RightUpDownVector: '\u294F', + RightUpTeeVector: '\u295C', + RightUpVector: '\u21BE', + RightUpVectorBar: '\u2954', + RightVector: '\u21C0', + RightVectorBar: '\u2953', + ring: '\u02DA', + risingdotseq: '\u2253', + rlarr: '\u21C4', + rlhar: '\u21CC', + rlm: '\u200F', + rmoust: '\u23B1', + rmoustache: '\u23B1', + rnmid: '\u2AEE', + roang: '\u27ED', + roarr: '\u21FE', + robrk: '\u27E7', + ropar: '\u2986', + Ropf: '\u211D', + ropf: '\uD835\uDD63', + roplus: '\u2A2E', + rotimes: '\u2A35', + RoundImplies: '\u2970', + rpar: '\u0029', + rpargt: '\u2994', + rppolint: '\u2A12', + rrarr: '\u21C9', + Rrightarrow: '\u21DB', + rsaquo: '\u203A', + Rscr: '\u211B', + rscr: '\uD835\uDCC7', + Rsh: '\u21B1', + rsh: '\u21B1', + rsqb: '\u005D', + rsquo: '\u2019', + rsquor: '\u2019', + rthree: '\u22CC', + rtimes: '\u22CA', + rtri: '\u25B9', + rtrie: '\u22B5', + rtrif: '\u25B8', + rtriltri: '\u29CE', + RuleDelayed: '\u29F4', + ruluhar: '\u2968', + rx: '\u211E', + Sacute: '\u015A', + sacute: '\u015B', + sbquo: '\u201A', + Sc: '\u2ABC', + sc: '\u227B', + scap: '\u2AB8', + Scaron: '\u0160', + scaron: '\u0161', + sccue: '\u227D', + scE: '\u2AB4', + sce: '\u2AB0', + Scedil: '\u015E', + scedil: '\u015F', + Scirc: '\u015C', + scirc: '\u015D', + scnap: '\u2ABA', + scnE: '\u2AB6', + scnsim: '\u22E9', + scpolint: '\u2A13', + scsim: '\u227F', + Scy: '\u0421', + scy: '\u0441', + sdot: '\u22C5', + sdotb: '\u22A1', + sdote: '\u2A66', + searhk: '\u2925', + seArr: '\u21D8', + searr: '\u2198', + searrow: '\u2198', + sect: '\u00A7', + semi: '\u003B', + seswar: '\u2929', + setminus: '\u2216', + setmn: '\u2216', + sext: '\u2736', + Sfr: '\uD835\uDD16', + sfr: '\uD835\uDD30', + sfrown: '\u2322', + sharp: '\u266F', + SHCHcy: '\u0429', + shchcy: '\u0449', + SHcy: '\u0428', + shcy: '\u0448', + ShortDownArrow: '\u2193', + ShortLeftArrow: '\u2190', + shortmid: '\u2223', + shortparallel: '\u2225', + ShortRightArrow: '\u2192', + ShortUpArrow: '\u2191', + shy: '\u00AD', + Sigma: '\u03A3', + sigma: '\u03C3', + sigmaf: '\u03C2', + sigmav: '\u03C2', + sim: '\u223C', + simdot: '\u2A6A', + sime: '\u2243', + simeq: '\u2243', + simg: '\u2A9E', + simgE: '\u2AA0', + siml: '\u2A9D', + simlE: '\u2A9F', + simne: '\u2246', + simplus: '\u2A24', + simrarr: '\u2972', + slarr: '\u2190', + SmallCircle: '\u2218', + smallsetminus: '\u2216', + smashp: '\u2A33', + smeparsl: '\u29E4', + smid: '\u2223', + smile: '\u2323', + smt: '\u2AAA', + smte: '\u2AAC', + smtes: '\u2AAC\uFE00', + SOFTcy: '\u042C', + softcy: '\u044C', + sol: '\u002F', + solb: '\u29C4', + solbar: '\u233F', + Sopf: '\uD835\uDD4A', + sopf: '\uD835\uDD64', + spades: '\u2660', + spadesuit: '\u2660', + spar: '\u2225', + sqcap: '\u2293', + sqcaps: '\u2293\uFE00', + sqcup: '\u2294', + sqcups: '\u2294\uFE00', + Sqrt: '\u221A', + sqsub: '\u228F', + sqsube: '\u2291', + sqsubset: '\u228F', + sqsubseteq: '\u2291', + sqsup: '\u2290', + sqsupe: '\u2292', + sqsupset: '\u2290', + sqsupseteq: '\u2292', + squ: '\u25A1', + Square: '\u25A1', + square: '\u25A1', + SquareIntersection: '\u2293', + SquareSubset: '\u228F', + SquareSubsetEqual: '\u2291', + SquareSuperset: '\u2290', + SquareSupersetEqual: '\u2292', + SquareUnion: '\u2294', + squarf: '\u25AA', + squf: '\u25AA', + srarr: '\u2192', + Sscr: '\uD835\uDCAE', + sscr: '\uD835\uDCC8', + ssetmn: '\u2216', + ssmile: '\u2323', + sstarf: '\u22C6', + Star: '\u22C6', + star: '\u2606', + starf: '\u2605', + straightepsilon: '\u03F5', + straightphi: '\u03D5', + strns: '\u00AF', + Sub: '\u22D0', + sub: '\u2282', + subdot: '\u2ABD', + subE: '\u2AC5', + sube: '\u2286', + subedot: '\u2AC3', + submult: '\u2AC1', + subnE: '\u2ACB', + subne: '\u228A', + subplus: '\u2ABF', + subrarr: '\u2979', + Subset: '\u22D0', + subset: '\u2282', + subseteq: '\u2286', + subseteqq: '\u2AC5', + SubsetEqual: '\u2286', + subsetneq: '\u228A', + subsetneqq: '\u2ACB', + subsim: '\u2AC7', + subsub: '\u2AD5', + subsup: '\u2AD3', + succ: '\u227B', + succapprox: '\u2AB8', + succcurlyeq: '\u227D', + Succeeds: '\u227B', + SucceedsEqual: '\u2AB0', + SucceedsSlantEqual: '\u227D', + SucceedsTilde: '\u227F', + succeq: '\u2AB0', + succnapprox: '\u2ABA', + succneqq: '\u2AB6', + succnsim: '\u22E9', + succsim: '\u227F', + SuchThat: '\u220B', + Sum: '\u2211', + sum: '\u2211', + sung: '\u266A', + Sup: '\u22D1', + sup: '\u2283', + sup1: '\u00B9', + sup2: '\u00B2', + sup3: '\u00B3', + supdot: '\u2ABE', + supdsub: '\u2AD8', + supE: '\u2AC6', + supe: '\u2287', + supedot: '\u2AC4', + Superset: '\u2283', + SupersetEqual: '\u2287', + suphsol: '\u27C9', + suphsub: '\u2AD7', + suplarr: '\u297B', + supmult: '\u2AC2', + supnE: '\u2ACC', + supne: '\u228B', + supplus: '\u2AC0', + Supset: '\u22D1', + supset: '\u2283', + supseteq: '\u2287', + supseteqq: '\u2AC6', + supsetneq: '\u228B', + supsetneqq: '\u2ACC', + supsim: '\u2AC8', + supsub: '\u2AD4', + supsup: '\u2AD6', + swarhk: '\u2926', + swArr: '\u21D9', + swarr: '\u2199', + swarrow: '\u2199', + swnwar: '\u292A', + szlig: '\u00DF', + Tab: '\u0009', + target: '\u2316', + Tau: '\u03A4', + tau: '\u03C4', + tbrk: '\u23B4', + Tcaron: '\u0164', + tcaron: '\u0165', + Tcedil: '\u0162', + tcedil: '\u0163', + Tcy: '\u0422', + tcy: '\u0442', + tdot: '\u20DB', + telrec: '\u2315', + Tfr: '\uD835\uDD17', + tfr: '\uD835\uDD31', + there4: '\u2234', + Therefore: '\u2234', + therefore: '\u2234', + Theta: '\u0398', + theta: '\u03B8', + thetasym: '\u03D1', + thetav: '\u03D1', + thickapprox: '\u2248', + thicksim: '\u223C', + ThickSpace: '\u205F\u200A', + thinsp: '\u2009', + ThinSpace: '\u2009', + thkap: '\u2248', + thksim: '\u223C', + THORN: '\u00DE', + thorn: '\u00FE', + Tilde: '\u223C', + tilde: '\u02DC', + TildeEqual: '\u2243', + TildeFullEqual: '\u2245', + TildeTilde: '\u2248', + times: '\u00D7', + timesb: '\u22A0', + timesbar: '\u2A31', + timesd: '\u2A30', + tint: '\u222D', + toea: '\u2928', + top: '\u22A4', + topbot: '\u2336', + topcir: '\u2AF1', + Topf: '\uD835\uDD4B', + topf: '\uD835\uDD65', + topfork: '\u2ADA', + tosa: '\u2929', + tprime: '\u2034', + TRADE: '\u2122', + trade: '\u2122', + triangle: '\u25B5', + triangledown: '\u25BF', + triangleleft: '\u25C3', + trianglelefteq: '\u22B4', + triangleq: '\u225C', + triangleright: '\u25B9', + trianglerighteq: '\u22B5', + tridot: '\u25EC', + trie: '\u225C', + triminus: '\u2A3A', + TripleDot: '\u20DB', + triplus: '\u2A39', + trisb: '\u29CD', + tritime: '\u2A3B', + trpezium: '\u23E2', + Tscr: '\uD835\uDCAF', + tscr: '\uD835\uDCC9', + TScy: '\u0426', + tscy: '\u0446', + TSHcy: '\u040B', + tshcy: '\u045B', + Tstrok: '\u0166', + tstrok: '\u0167', + twixt: '\u226C', + twoheadleftarrow: '\u219E', + twoheadrightarrow: '\u21A0', + Uacute: '\u00DA', + uacute: '\u00FA', + Uarr: '\u219F', + uArr: '\u21D1', + uarr: '\u2191', + Uarrocir: '\u2949', + Ubrcy: '\u040E', + ubrcy: '\u045E', + Ubreve: '\u016C', + ubreve: '\u016D', + Ucirc: '\u00DB', + ucirc: '\u00FB', + Ucy: '\u0423', + ucy: '\u0443', + udarr: '\u21C5', + Udblac: '\u0170', + udblac: '\u0171', + udhar: '\u296E', + ufisht: '\u297E', + Ufr: '\uD835\uDD18', + ufr: '\uD835\uDD32', + Ugrave: '\u00D9', + ugrave: '\u00F9', + uHar: '\u2963', + uharl: '\u21BF', + uharr: '\u21BE', + uhblk: '\u2580', + ulcorn: '\u231C', + ulcorner: '\u231C', + ulcrop: '\u230F', + ultri: '\u25F8', + Umacr: '\u016A', + umacr: '\u016B', + uml: '\u00A8', + UnderBar: '\u005F', + UnderBrace: '\u23DF', + UnderBracket: '\u23B5', + UnderParenthesis: '\u23DD', + Union: '\u22C3', + UnionPlus: '\u228E', + Uogon: '\u0172', + uogon: '\u0173', + Uopf: '\uD835\uDD4C', + uopf: '\uD835\uDD66', + UpArrow: '\u2191', + Uparrow: '\u21D1', + uparrow: '\u2191', + UpArrowBar: '\u2912', + UpArrowDownArrow: '\u21C5', + UpDownArrow: '\u2195', + Updownarrow: '\u21D5', + updownarrow: '\u2195', + UpEquilibrium: '\u296E', + upharpoonleft: '\u21BF', + upharpoonright: '\u21BE', + uplus: '\u228E', + UpperLeftArrow: '\u2196', + UpperRightArrow: '\u2197', + Upsi: '\u03D2', + upsi: '\u03C5', + upsih: '\u03D2', + Upsilon: '\u03A5', + upsilon: '\u03C5', + UpTee: '\u22A5', + UpTeeArrow: '\u21A5', + upuparrows: '\u21C8', + urcorn: '\u231D', + urcorner: '\u231D', + urcrop: '\u230E', + Uring: '\u016E', + uring: '\u016F', + urtri: '\u25F9', + Uscr: '\uD835\uDCB0', + uscr: '\uD835\uDCCA', + utdot: '\u22F0', + Utilde: '\u0168', + utilde: '\u0169', + utri: '\u25B5', + utrif: '\u25B4', + uuarr: '\u21C8', + Uuml: '\u00DC', + uuml: '\u00FC', + uwangle: '\u29A7', + vangrt: '\u299C', + varepsilon: '\u03F5', + varkappa: '\u03F0', + varnothing: '\u2205', + varphi: '\u03D5', + varpi: '\u03D6', + varpropto: '\u221D', + vArr: '\u21D5', + varr: '\u2195', + varrho: '\u03F1', + varsigma: '\u03C2', + varsubsetneq: '\u228A\uFE00', + varsubsetneqq: '\u2ACB\uFE00', + varsupsetneq: '\u228B\uFE00', + varsupsetneqq: '\u2ACC\uFE00', + vartheta: '\u03D1', + vartriangleleft: '\u22B2', + vartriangleright: '\u22B3', + Vbar: '\u2AEB', + vBar: '\u2AE8', + vBarv: '\u2AE9', + Vcy: '\u0412', + vcy: '\u0432', + VDash: '\u22AB', + Vdash: '\u22A9', + vDash: '\u22A8', + vdash: '\u22A2', + Vdashl: '\u2AE6', + Vee: '\u22C1', + vee: '\u2228', + veebar: '\u22BB', + veeeq: '\u225A', + vellip: '\u22EE', + Verbar: '\u2016', + verbar: '\u007C', + Vert: '\u2016', + vert: '\u007C', + VerticalBar: '\u2223', + VerticalLine: '\u007C', + VerticalSeparator: '\u2758', + VerticalTilde: '\u2240', + VeryThinSpace: '\u200A', + Vfr: '\uD835\uDD19', + vfr: '\uD835\uDD33', + vltri: '\u22B2', + vnsub: '\u2282\u20D2', + vnsup: '\u2283\u20D2', + Vopf: '\uD835\uDD4D', + vopf: '\uD835\uDD67', + vprop: '\u221D', + vrtri: '\u22B3', + Vscr: '\uD835\uDCB1', + vscr: '\uD835\uDCCB', + vsubnE: '\u2ACB\uFE00', + vsubne: '\u228A\uFE00', + vsupnE: '\u2ACC\uFE00', + vsupne: '\u228B\uFE00', + Vvdash: '\u22AA', + vzigzag: '\u299A', + Wcirc: '\u0174', + wcirc: '\u0175', + wedbar: '\u2A5F', + Wedge: '\u22C0', + wedge: '\u2227', + wedgeq: '\u2259', + weierp: '\u2118', + Wfr: '\uD835\uDD1A', + wfr: '\uD835\uDD34', + Wopf: '\uD835\uDD4E', + wopf: '\uD835\uDD68', + wp: '\u2118', + wr: '\u2240', + wreath: '\u2240', + Wscr: '\uD835\uDCB2', + wscr: '\uD835\uDCCC', + xcap: '\u22C2', + xcirc: '\u25EF', + xcup: '\u22C3', + xdtri: '\u25BD', + Xfr: '\uD835\uDD1B', + xfr: '\uD835\uDD35', + xhArr: '\u27FA', + xharr: '\u27F7', + Xi: '\u039E', + xi: '\u03BE', + xlArr: '\u27F8', + xlarr: '\u27F5', + xmap: '\u27FC', + xnis: '\u22FB', + xodot: '\u2A00', + Xopf: '\uD835\uDD4F', + xopf: '\uD835\uDD69', + xoplus: '\u2A01', + xotime: '\u2A02', + xrArr: '\u27F9', + xrarr: '\u27F6', + Xscr: '\uD835\uDCB3', + xscr: '\uD835\uDCCD', + xsqcup: '\u2A06', + xuplus: '\u2A04', + xutri: '\u25B3', + xvee: '\u22C1', + xwedge: '\u22C0', + Yacute: '\u00DD', + yacute: '\u00FD', + YAcy: '\u042F', + yacy: '\u044F', + Ycirc: '\u0176', + ycirc: '\u0177', + Ycy: '\u042B', + ycy: '\u044B', + yen: '\u00A5', + Yfr: '\uD835\uDD1C', + yfr: '\uD835\uDD36', + YIcy: '\u0407', + yicy: '\u0457', + Yopf: '\uD835\uDD50', + yopf: '\uD835\uDD6A', + Yscr: '\uD835\uDCB4', + yscr: '\uD835\uDCCE', + YUcy: '\u042E', + yucy: '\u044E', + Yuml: '\u0178', + yuml: '\u00FF', + Zacute: '\u0179', + zacute: '\u017A', + Zcaron: '\u017D', + zcaron: '\u017E', + Zcy: '\u0417', + zcy: '\u0437', + Zdot: '\u017B', + zdot: '\u017C', + zeetrf: '\u2128', + ZeroWidthSpace: '\u200B', + Zeta: '\u0396', + zeta: '\u03B6', + Zfr: '\u2128', + zfr: '\uD835\uDD37', + ZHcy: '\u0416', + zhcy: '\u0436', + zigrarr: '\u21DD', + Zopf: '\u2124', + zopf: '\uD835\uDD6B', + Zscr: '\uD835\uDCB5', + zscr: '\uD835\uDCCF', + zwj: '\u200D', + zwnj: '\u200C', +}); + +/** + * @deprecated use `HTML_ENTITIES` instead + * @see HTML_ENTITIES + */ +exports.entityMap = exports.HTML_ENTITIES; + + +/***/ }), +/* 69 */ +/***/ (function(module, exports, __webpack_require__) { + +var NAMESPACE = __webpack_require__(66).NAMESPACE; + +//[4] NameStartChar ::= ":" | [A-Z] | "_" | [a-z] | [#xC0-#xD6] | [#xD8-#xF6] | [#xF8-#x2FF] | [#x370-#x37D] | [#x37F-#x1FFF] | [#x200C-#x200D] | [#x2070-#x218F] | [#x2C00-#x2FEF] | [#x3001-#xD7FF] | [#xF900-#xFDCF] | [#xFDF0-#xFFFD] | [#x10000-#xEFFFF] +//[4a] NameChar ::= NameStartChar | "-" | "." | [0-9] | #xB7 | [#x0300-#x036F] | [#x203F-#x2040] +//[5] Name ::= NameStartChar (NameChar)* +var nameStartChar = /[A-Z_a-z\xC0-\xD6\xD8-\xF6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]///\u10000-\uEFFFF +var nameChar = new RegExp("[\\-\\.0-9"+nameStartChar.source.slice(1,-1)+"\\u00B7\\u0300-\\u036F\\u203F-\\u2040]"); +var tagNamePattern = new RegExp('^'+nameStartChar.source+nameChar.source+'*(?:\:'+nameStartChar.source+nameChar.source+'*)?$'); +//var tagNamePattern = /^[a-zA-Z_][\w\-\.]*(?:\:[a-zA-Z_][\w\-\.]*)?$/ +//var handlers = 'resolveEntity,getExternalSubset,characters,endDocument,endElement,endPrefixMapping,ignorableWhitespace,processingInstruction,setDocumentLocator,skippedEntity,startDocument,startElement,startPrefixMapping,notationDecl,unparsedEntityDecl,error,fatalError,warning,attributeDecl,elementDecl,externalEntityDecl,internalEntityDecl,comment,endCDATA,endDTD,endEntity,startCDATA,startDTD,startEntity'.split(',') + +//S_TAG, S_ATTR, S_EQ, S_ATTR_NOQUOT_VALUE +//S_ATTR_SPACE, S_ATTR_END, S_TAG_SPACE, S_TAG_CLOSE +var S_TAG = 0;//tag name offerring +var S_ATTR = 1;//attr name offerring +var S_ATTR_SPACE=2;//attr name end and space offer +var S_EQ = 3;//=space? +var S_ATTR_NOQUOT_VALUE = 4;//attr value(no quot value only) +var S_ATTR_END = 5;//attr value end and no space(quot end) +var S_TAG_SPACE = 6;//(attr value end || tag end ) && (space offer) +var S_TAG_CLOSE = 7;//closed el + +/** + * Creates an error that will not be caught by XMLReader aka the SAX parser. + * + * @param {string} message + * @param {any?} locator Optional, can provide details about the location in the source + * @constructor + */ +function ParseError(message, locator) { + this.message = message + this.locator = locator + if(Error.captureStackTrace) Error.captureStackTrace(this, ParseError); +} +ParseError.prototype = new Error(); +ParseError.prototype.name = ParseError.name + +function XMLReader(){ + +} + +XMLReader.prototype = { + parse:function(source,defaultNSMap,entityMap){ + var domBuilder = this.domBuilder; + domBuilder.startDocument(); + _copy(defaultNSMap ,defaultNSMap = {}) + parse(source,defaultNSMap,entityMap, + domBuilder,this.errorHandler); + domBuilder.endDocument(); + } +} +function parse(source,defaultNSMapCopy,entityMap,domBuilder,errorHandler){ + function fixedFromCharCode(code) { + // String.prototype.fromCharCode does not supports + // > 2 bytes unicode chars directly + if (code > 0xffff) { + code -= 0x10000; + var surrogate1 = 0xd800 + (code >> 10) + , surrogate2 = 0xdc00 + (code & 0x3ff); + + return String.fromCharCode(surrogate1, surrogate2); + } else { + return String.fromCharCode(code); + } + } + function entityReplacer(a){ + var k = a.slice(1,-1); + if (Object.hasOwnProperty.call(entityMap, k)) { + return entityMap[k]; + }else if(k.charAt(0) === '#'){ + return fixedFromCharCode(parseInt(k.substr(1).replace('x','0x'))) + }else{ + errorHandler.error('entity not found:'+a); + return a; + } + } + function appendText(end){//has some bugs + if(end>start){ + var xt = source.substring(start,end).replace(/&#?\w+;/g,entityReplacer); + locator&&position(start); + domBuilder.characters(xt,0,end-start); + start = end + } + } + function position(p,m){ + while(p>=lineEnd && (m = linePattern.exec(source))){ + lineStart = m.index; + lineEnd = lineStart + m[0].length; + locator.lineNumber++; + //console.log('line++:',locator,startPos,endPos) + } + locator.columnNumber = p-lineStart+1; + } + var lineStart = 0; + var lineEnd = 0; + var linePattern = /.*(?:\r\n?|\n)|.*$/g + var locator = domBuilder.locator; + + var parseStack = [{currentNSMap:defaultNSMapCopy}] + var closeMap = {}; + var start = 0; + while(true){ + try{ + var tagStart = source.indexOf('<',start); + if(tagStart<0){ + if(!source.substr(start).match(/^\s*$/)){ + var doc = domBuilder.doc; + var text = doc.createTextNode(source.substr(start)); + doc.appendChild(text); + domBuilder.currentElement = text; + } + return; + } + if(tagStart>start){ + appendText(tagStart); + } + switch(source.charAt(tagStart+1)){ + case '/': + var end = source.indexOf('>',tagStart+3); + var tagName = source.substring(tagStart + 2, end).replace(/[ \t\n\r]+$/g, ''); + var config = parseStack.pop(); + if(end<0){ + + tagName = source.substring(tagStart+2).replace(/[\s<].*/,''); + errorHandler.error("end tag name: "+tagName+' is not complete:'+config.tagName); + end = tagStart+1+tagName.length; + }else if(tagName.match(/\s + locator&&position(tagStart); + end = parseInstruction(source,tagStart,domBuilder); + break; + case '!':// start){ + start = end; + }else{ + //TODO: 这里有可能sax回退,有位置错误风险 + appendText(Math.max(tagStart,start)+1); + } + } +} +function copyLocator(f,t){ + t.lineNumber = f.lineNumber; + t.columnNumber = f.columnNumber; + return t; +} + +/** + * @see #appendElement(source,elStartEnd,el,selfClosed,entityReplacer,domBuilder,parseStack); + * @return end of the elementStartPart(end of elementEndPart for selfClosed el) + */ +function parseElementStartPart(source,start,el,currentNSMap,entityReplacer,errorHandler){ + + /** + * @param {string} qname + * @param {string} value + * @param {number} startIndex + */ + function addAttribute(qname, value, startIndex) { + if (el.attributeNames.hasOwnProperty(qname)) { + errorHandler.fatalError('Attribute ' + qname + ' redefined') + } + el.addValue( + qname, + // @see https://www.w3.org/TR/xml/#AVNormalize + // since the xmldom sax parser does not "interpret" DTD the following is not implemented: + // - recursive replacement of (DTD) entity references + // - trimming and collapsing multiple spaces into a single one for attributes that are not of type CDATA + value.replace(/[\t\n\r]/g, ' ').replace(/&#?\w+;/g, entityReplacer), + startIndex + ) + } + var attrName; + var value; + var p = ++start; + var s = S_TAG;//status + while(true){ + var c = source.charAt(p); + switch(c){ + case '=': + if(s === S_ATTR){//attrName + attrName = source.slice(start,p); + s = S_EQ; + }else if(s === S_ATTR_SPACE){ + s = S_EQ; + }else{ + //fatalError: equal must after attrName or space after attrName + throw new Error('attribute equal must after attrName'); // No known test case + } + break; + case '\'': + case '"': + if(s === S_EQ || s === S_ATTR //|| s == S_ATTR_SPACE + ){//equal + if(s === S_ATTR){ + errorHandler.warning('attribute value must after "="') + attrName = source.slice(start,p) + } + start = p+1; + p = source.indexOf(c,start) + if(p>0){ + value = source.slice(start, p); + addAttribute(attrName, value, start-1); + s = S_ATTR_END; + }else{ + //fatalError: no end quot match + throw new Error('attribute value no end \''+c+'\' match'); + } + }else if(s == S_ATTR_NOQUOT_VALUE){ + value = source.slice(start, p); + addAttribute(attrName, value, start); + errorHandler.warning('attribute "'+attrName+'" missed start quot('+c+')!!'); + start = p+1; + s = S_ATTR_END + }else{ + //fatalError: no equal before + throw new Error('attribute value must after "="'); // No known test case + } + break; + case '/': + switch(s){ + case S_TAG: + el.setTagName(source.slice(start,p)); + case S_ATTR_END: + case S_TAG_SPACE: + case S_TAG_CLOSE: + s =S_TAG_CLOSE; + el.closed = true; + case S_ATTR_NOQUOT_VALUE: + case S_ATTR: + break; + case S_ATTR_SPACE: + el.closed = true; + break; + //case S_EQ: + default: + throw new Error("attribute invalid close char('/')") // No known test case + } + break; + case ''://end document + errorHandler.error('unexpected end of input'); + if(s == S_TAG){ + el.setTagName(source.slice(start,p)); + } + return p; + case '>': + switch(s){ + case S_TAG: + el.setTagName(source.slice(start,p)); + case S_ATTR_END: + case S_TAG_SPACE: + case S_TAG_CLOSE: + break;//normal + case S_ATTR_NOQUOT_VALUE://Compatible state + case S_ATTR: + value = source.slice(start,p); + if(value.slice(-1) === '/'){ + el.closed = true; + value = value.slice(0,-1) + } + case S_ATTR_SPACE: + if(s === S_ATTR_SPACE){ + value = attrName; + } + if(s == S_ATTR_NOQUOT_VALUE){ + errorHandler.warning('attribute "'+value+'" missed quot(")!'); + addAttribute(attrName, value, start) + }else{ + if(!NAMESPACE.isHTML(currentNSMap['']) || !value.match(/^(?:disabled|checked|selected)$/i)){ + errorHandler.warning('attribute "'+value+'" missed value!! "'+value+'" instead!!') + } + addAttribute(value, value, start) + } + break; + case S_EQ: + throw new Error('attribute value missed!!'); + } +// console.log(tagName,tagNamePattern,tagNamePattern.test(tagName)) + return p; + /*xml space '\x20' | #x9 | #xD | #xA; */ + case '\u0080': + c = ' '; + default: + if(c<= ' '){//space + switch(s){ + case S_TAG: + el.setTagName(source.slice(start,p));//tagName + s = S_TAG_SPACE; + break; + case S_ATTR: + attrName = source.slice(start,p) + s = S_ATTR_SPACE; + break; + case S_ATTR_NOQUOT_VALUE: + var value = source.slice(start, p); + errorHandler.warning('attribute "'+value+'" missed quot(")!!'); + addAttribute(attrName, value, start) + case S_ATTR_END: + s = S_TAG_SPACE; + break; + //case S_TAG_SPACE: + //case S_EQ: + //case S_ATTR_SPACE: + // void();break; + //case S_TAG_CLOSE: + //ignore warning + } + }else{//not space +//S_TAG, S_ATTR, S_EQ, S_ATTR_NOQUOT_VALUE +//S_ATTR_SPACE, S_ATTR_END, S_TAG_SPACE, S_TAG_CLOSE + switch(s){ + //case S_TAG:void();break; + //case S_ATTR:void();break; + //case S_ATTR_NOQUOT_VALUE:void();break; + case S_ATTR_SPACE: + var tagName = el.tagName; + if (!NAMESPACE.isHTML(currentNSMap['']) || !attrName.match(/^(?:disabled|checked|selected)$/i)) { + errorHandler.warning('attribute "'+attrName+'" missed value!! "'+attrName+'" instead2!!') + } + addAttribute(attrName, attrName, start); + start = p; + s = S_ATTR; + break; + case S_ATTR_END: + errorHandler.warning('attribute space is required"'+attrName+'"!!') + case S_TAG_SPACE: + s = S_ATTR; + start = p; + break; + case S_EQ: + s = S_ATTR_NOQUOT_VALUE; + start = p; + break; + case S_TAG_CLOSE: + throw new Error("elements closed character '/' and '>' must be connected to"); + } + } + }//end outer switch + //console.log('p++',p) + p++; + } +} +/** + * @return true if has new namespace define + */ +function appendElement(el,domBuilder,currentNSMap){ + var tagName = el.tagName; + var localNSMap = null; + //var currentNSMap = parseStack[parseStack.length-1].currentNSMap; + var i = el.length; + while(i--){ + var a = el[i]; + var qName = a.qName; + var value = a.value; + var nsp = qName.indexOf(':'); + if(nsp>0){ + var prefix = a.prefix = qName.slice(0,nsp); + var localName = qName.slice(nsp+1); + var nsPrefix = prefix === 'xmlns' && localName + }else{ + localName = qName; + prefix = null + nsPrefix = qName === 'xmlns' && '' + } + //can not set prefix,because prefix !== '' + a.localName = localName ; + //prefix == null for no ns prefix attribute + if(nsPrefix !== false){//hack!! + if(localNSMap == null){ + localNSMap = {} + //console.log(currentNSMap,0) + _copy(currentNSMap,currentNSMap={}) + //console.log(currentNSMap,1) + } + currentNSMap[nsPrefix] = localNSMap[nsPrefix] = value; + a.uri = NAMESPACE.XMLNS + domBuilder.startPrefixMapping(nsPrefix, value) + } + } + var i = el.length; + while(i--){ + a = el[i]; + var prefix = a.prefix; + if(prefix){//no prefix attribute has no namespace + if(prefix === 'xml'){ + a.uri = NAMESPACE.XML; + }if(prefix !== 'xmlns'){ + a.uri = currentNSMap[prefix || ''] + + //{console.log('###'+a.qName,domBuilder.locator.systemId+'',currentNSMap,a.uri)} + } + } + } + var nsp = tagName.indexOf(':'); + if(nsp>0){ + prefix = el.prefix = tagName.slice(0,nsp); + localName = el.localName = tagName.slice(nsp+1); + }else{ + prefix = null;//important!! + localName = el.localName = tagName; + } + //no prefix element has default namespace + var ns = el.uri = currentNSMap[prefix || '']; + domBuilder.startElement(ns,localName,tagName,el); + //endPrefixMapping and startPrefixMapping have not any help for dom builder + //localNSMap = null + if(el.closed){ + domBuilder.endElement(ns,localName,tagName); + if(localNSMap){ + for (prefix in localNSMap) { + if (Object.prototype.hasOwnProperty.call(localNSMap, prefix)) { + domBuilder.endPrefixMapping(prefix); + } + } + } + }else{ + el.currentNSMap = currentNSMap; + el.localNSMap = localNSMap; + //parseStack.push(el); + return true; + } +} +function parseHtmlSpecialContent(source,elStartEnd,tagName,entityReplacer,domBuilder){ + if(/^(?:script|textarea)$/i.test(tagName)){ + var elEndStart = source.indexOf('',elStartEnd); + var text = source.substring(elStartEnd+1,elEndStart); + if(/[&<]/.test(text)){ + if(/^script$/i.test(tagName)){ + //if(!/\]\]>/.test(text)){ + //lexHandler.startCDATA(); + domBuilder.characters(text,0,text.length); + //lexHandler.endCDATA(); + return elEndStart; + //} + }//}else{//text area + text = text.replace(/&#?\w+;/g,entityReplacer); + domBuilder.characters(text,0,text.length); + return elEndStart; + //} + + } + } + return elStartEnd+1; +} +function fixSelfClosed(source,elStartEnd,tagName,closeMap){ + //if(tagName in closeMap){ + var pos = closeMap[tagName]; + if(pos == null){ + //console.log(tagName) + pos = source.lastIndexOf('') + if(pos',start+4); + //append comment source.substring(4,end)///g,this.__addDataInputs()))?(this.requestString=e,this.logger.trace("traduction tmpl",e),!0):(this.logger.warn("traduction tmpl : empty request !?"),!1)},__addDataInputs:function(){this.logger.trace("WPS::__addDataInputs ()");for(var e,t="GET"===this.method?this.template.get.input:this.template.post.input,o="GET"===this.method?";":"",n="",i=this,r=this.DataObject.getData(),a=0;a0)for(var a=n.getElementsByTagName("parsererror"),s=0;s0){var n=function(e){if(e.attributes.length>0){for(var t={},o=e.attributes,n=0;n0?t.index=t.filters.type[0]:t.index=t.filters.type),delete t.filters.type),t.filters.bbox&&(this.logger.warn("The parameter 'filterOptions.bbox' is deprecated"),delete t.filters.bbox)),delete t.filterOptions),t.position&&(t.position.x&&(this.logger.warn("The parameter 'position.x' is deprecated"),t.position.lon||(t.position.lon=t.position.x),delete t.position.x),t.position.y&&(this.logger.warn("The parameter 'position.y' is deprecated"),t.position.lat||(t.position.lat=t.position.y),delete t.position.y)),t.returnFreeForm&&(this.logger.warn("The parameter 'returnFreeForm' is deprecated"),delete t.returnFreeForm),t.srs&&(this.logger.warn("The parameter 'srs' is deprecated"),delete t.srs),t},Ee.prototype.buildRequest=function(e,t){var o={httpMethod:this.options.httpMethod,geocodeMethod:"search",query:this.options.query,index:this.options.index,returnTrueGeometry:this.options.returnTrueGeometry,position:this.options.position,maxResp:this.options.maximumResponses,filters:this.options.filters};this.request=fe.build(o),this.request?t.call(this,this.request):e.call(this,new P(C.getMessage("SERVICE_REQUEST_BUILD")))},Ee.prototype.analyzeResponse=function(e,t){if(this.response){var o={response:this.response,rawResponse:this.options.rawResponse,onError:e,onSuccess:t,scope:this};_e.build(o)}else e.call(this,new P(C.getMessage("SERVICE_RESPONSE_EMPTY")))};var Se=Ee;function Me(e){if(!(this instanceof Me))throw new TypeError(C.getMessage("CLASS_CONSTRUCTOR","ReverseGeocode"));this.CLASSNAME="ReverseGeocode",this.logger=v.getLogger("Gp.Services.ReverseGeocode"),this.logger.trace("[Constructeur ReverseGeocode (options)]");var t=this.patchOptionConvertor(e);if(t.serverUrl||(t.serverUrl=T.ReverseGeocode.newUrl()),G.apply(this,[t]),t.searchGeometry)this.options.searchGeometry=t.searchGeometry;else if(!t.position)throw new Error(C.getMessage("PARAM_MISSING","searchGeometry"));if(t.index||(this.options.index=t.index="StreetAddress"),t.filters)for(var o=Object.keys(t.filters),n=0;n0?t.index=t.filterOptions.type[0]:t.index=t.filterOptions.type),delete t.filterOptions.type),t.filterOptions.bbox&&(this.logger.warn("The parameter 'filterOptions.bbox' is deprecated"),t.searchGeometry||(t.searchGeometry=this.bbox2Json(t.filterOptions.bbox)),delete t.filterOptions.bbox),t.filterOptions.circle&&(this.logger.warn("The parameter 'filterOptions.circle' is deprecated"),t.searchGeometry||(t.searchGeometry=this.circle2Json(t.filterOptions.circle)),delete t.filterOptions.circle),t.filterOptions.polygon&&(this.logger.warn("The parameter 'filterOptions.polygon' is deprecated"),t.searchGeometry||(t.searchGeometry=this.polygon2Json(t.filterOptions.polygon)),delete t.filterOptions.polygon),!t.filters&&Object.keys(t.filterOptions).length>0&&(t.filters=t.filterOptions),delete t.filterOptions),t.position&&(t.position.x&&(this.logger.warn("The parameter 'position.x' is deprecated"),t.position.lon||(t.position.lon=t.position.x),delete t.position.x),t.position.y&&(this.logger.warn("The parameter 'position.y' is deprecated"),t.position.lat||(t.position.lat=t.position.y),delete t.position.y)),t.srs&&(this.logger.warn("The parameter 'srs' is deprecated"),delete t.srs),t},Me.prototype.buildRequest=function(e,t){var o={httpMethod:this.options.httpMethod,geocodeMethod:"reverse",searchGeometry:this.options.searchGeometry,index:this.options.index,position:this.options.position,returnTrueGeometry:this.options.returnTrueGeometry,maxResp:this.options.maximumResponses,filters:this.options.filters};this.request=fe.build(o),this.request?t.call(this,this.request):e.call(this,new P(C.getMessage("SERVICE_REQUEST_BUILD")))},Me.prototype.analyzeResponse=function(e,t){if(this.response){var o={response:this.response,rawResponse:this.options.rawResponse,onError:e,onSuccess:t,scope:this};_e.build(o)}else e.call(this,new P(C.getMessage("SERVICE_RESPONSE_EMPTY")))},Me.prototype.bbox2Json=function(e){return{type:"Polygon",coordinates:[[[e.left,e.top],[e.right,e.top],[e.right,e.bottom],[e.left,e.bottom],[e.left,e.top]]]}},Me.prototype.circle2Json=function(e){return{type:"Circle",radius:e.radius,coordinates:[e.x,e.y]}},Me.prototype.polygon2Json=function(e){for(var t={type:"Polygon",coordinates:[[]]},o=0;o0)for(var n in t.noProxyDomains)if(o.trace("[ProxyUtils] proxifyUrl : analyzing "+t.noProxyDomains[n]),-1!==e.indexOf(t.noProxyDomains[n]))return o.info("[ProxyUtils] proxifyUrl : "+e+" found in noProxyDomains list ("+t.noProxyDomains[n]+")."),e;return t.proxyUrl+encodeURIComponent(e)}};function ut(e){return(ut="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var dt=lt.getLogger("GfiUtils"),pt={getLayerFormat:function(e){var t="function"==typeof e.getType?e.getType():null,o=e.getSource();if(t){if("VECTOR"===t||"VECTOR_TILE"===t)return"vector";if("TILE"===t)return o.tileGrid?"wmts":"wms";if("IMAGE"===t)return"wms"}else{if(o instanceof p.a||o instanceof f.a)return"wms";if(o instanceof g.a)return"wmts";if(o instanceof u.a||o instanceof l.a)return"vector"}return"unknown"},displayInfo:function(e,t,n,i,r){if(dt.trace("[GfiUtils] : displayInfo..."),i||(i="text/html"),null!==n){var s=null,l=n;l=(l=l.replace(/\n/g,"")).replace(/(>)\s*(<)/g,"$1$2");var c="undefined"!=typeof window?window:null;if("object"===("undefined"==typeof exports?"undefined":ut(exports))&&null===window)s=(new(0,o(35).DOMParser)).parseFromString(l,i);else if(c.DOMParser)s=(new c.DOMParser).parseFromString(l,i);else{if(!c.ActiveXObject)return dt.log("Incompatible environment for DOM Parser !"),!1;(s=new c.ActiveXObject("Microsoft.XMLDOM")).async=!1,s.loadXML(l)}var u=s.getElementsByTagName("body");if(u&&1===u.length&&!u[0].hasChildNodes())return!1;var d=document.createElement("div");d.className="gp-feature-info-div";var p=document.createElement("input");p.type="button",p.className="gp-styling-button closer",p.onclick=function(){return e.featuresOverlay&&(e.removeOverlay(e.featuresOverlay),e.featuresOverlay=null),!1};var h=document.createElement("div");return h.className="gp-features-content-div",h.innerHTML=n,d.appendChild(h),d.appendChild(p),e.featuresOverlay&&(e.removeOverlay(e.featuresOverlay),e.featuresOverlay=null),e.featuresOverlay=new a.a({element:d,autoPan:r.autoPan,autoPanAnimation:r.autoPanAnimation,autoPanMargin:r.autoPanMargin,positioning:"bottom-center",insertFirst:!1,stopEvent:!0}),e.addOverlay(e.featuresOverlay),e.featuresOverlay.setPosition(t),e.featuresOverlay.render(),!0}},features2html:function(e,t){var o=document.createElement("div");return t.forEach((function(e){var t=e.getProperties();if(t.hasOwnProperty("render"))o.insertAdjacentHTML("beforeend",t.render);else{if(t.hasOwnProperty("name")){var n=document.createElement("div");n.className="gp-att-name-div",n.insertAdjacentHTML("afterbegin",t.name),o.appendChild(n)}if(t.hasOwnProperty("description")){var i=document.createElement("div");i.className="gp-att-description-div",i.insertAdjacentHTML("afterbegin",t.description),o.appendChild(i)}var r=null,a=!1,s=null,l=null,c=null,u=["fill","fill-opacity","stroke","stroke-opacity","stroke-width","marker-symbol","marker-color","marker-size","geometry","value","name","description","styleUrl","extensionsNode_","icon"];for(r in t)if(void 0!==t[r]&&-1===u.indexOf(r)){a||((s=document.createElement("div")).className="gp-att-others-div",l=document.createElement("ul"),a=!0),c=document.createElement("li");var d=document.createElement("span");d.className="gp-attname-others-span",d.appendChild(document.createTextNode(r+" : ")),c.appendChild(d),c.appendChild(document.createTextNode(t[r])),l.appendChild(c)}l&&(s.appendChild(l),o.appendChild(s))}}),e),o.hasChildNodes()||(o=null),o},layerGetFeatureAtCoordinates:function(e,t,o){var n=e.getPixelFromCoordinate(o);return e.hasFeatureAtPixel(n,(function(e){return e===t}))},displayVectorFeatureInfo:function(e,t,o,n){var i=e.getPixelFromCoordinate(t),r=[];if(e.forEachFeatureAtPixel(i,(function(e,t){(!o||o.indexOf(t)>-1)&&r.push(e)})),0===r.length)return!1;var a=this.features2html(e,r);return null!==a&&(this.displayInfo(e,t,a.innerHTML,"text/html",n),!0)},displayFeatureInfo:function(e,t,o,n,i){for(var r={},a=0;ae.getResolution()&&(f=!1),f&&g.maxResolution&&g.maxResolution255)throw new Error("'"+e+"'' is greater than 255(0xff);");return("0"+Number(e).toString(16)).slice(-2)},num:function(e){return parseInt(e,16)},arrayToRgba:function(e){if(!Array.isArray(e))throw new Error("Not an array !");var t=e[0],o=e[1],n=e[2],i=e[3]||1;return"rgba("+t+", "+o+", "+n+", "+parseFloat(i)+")"},arrayToHex:function(e){if(!Array.isArray(e))throw new Error("Not an array !");var t=e[0],o=e[1],n=e[2],i=e[3],r=[this.hex(t),this.hex(o),this.hex(n)],a={};return a.hex="#"+r.join(""),i&&(a.opacity=parseFloat(i)),a},rgbaToHex:function(e){var t=/rgba?\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(?:,\s*(0?.?\d+)\s*)?\)/.exec(e);if(!t)throw new Error("Invalid format: "+e);var o=t[1],n=t[2],i=t[3],r=t[4],a=[this.hex(o),this.hex(n),this.hex(i)],s={};return s.hex="#"+a.join(""),r&&(s.opacity=parseFloat(r)),s},hexToRgba:function(e,t){if(!e)throw new Error("Invalid format");e=e.replace(/^#?([a-f\d])([a-f\d])([a-f\d])$/i,(function(e,t,o,n){return t+t+o+o+n+n}));var o=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(e);return(o=o?{r:parseInt(o[1],16),g:parseInt(o[2],16),b:parseInt(o[3],16)}:null)?"rgba("+o.r+", "+o.g+", "+o.b+", "+t+")":null},isHex:function(e){if(!e)return!1;if("#"!==e.charAt(0))return!1;return!!/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(e)},isRGB:function(e){if(!e)return!1;return!!/rgba?\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(?:,\s*(0?.?\d+)\s*)?\)/.exec(e)}},At={lightOrange:"data:image/png;base64,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IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiCiAgICB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iCiAgICB4bWxuczpHSU1QPSJodHRwOi8vd3d3LmdpbXAub3JnL3htcC8iCiAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyIKICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgeG1wTU06RG9jdW1lbnRJRD0iZ2ltcDpkb2NpZDpnaW1wOjkyYWVkNjM2LWY3MDMtNDAzOC1hNzM4LWZiYzYxYzZlMTljNCIKICAgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo5NWMzZWI3NC0zYWRmLTRkYzUtOWZjZS1iODQ4NTc3Nzg4ODQiCiAgIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo0NjI3ZDg3NC1lZDIyLTRiZTUtYTlkNS00NDlmMzVhZDIxYzgiCiAgIGRjOkZvcm1hdD0iaW1hZ2UvcG5nIgogICBHSU1QOkFQST0iMi4wIgogICBHSU1QOlBsYXRmb3JtPSJMaW51eCIKICAgR0lNUDpUaW1lU3RhbXA9IjE2ODQ5NDE5Mjc4OTUzMDYiCiAgIEdJTVA6VmVyc2lvbj0iMi4xMC4zMCIKICAgdGlmZjpPcmllbnRhdGlvbj0iMSIKICAgeG1wOkNyZWF0b3JUb29sPSJHSU1QIDIuMTAiPgogICA8eG1wTU06SGlzdG9yeT4KICAgIDxyZGY6U2VxPgogICAgIDxyZGY6bGkKICAgICAgc3RFdnQ6YWN0aW9uPSJzYXZlZCIKICAgICAgc3RFdnQ6Y2hhbmdlZD0iLyIKICAgICAgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDphM2U3ZWQ1MS0xNTI4LTRhYjAtODVjOS0zNzNkNzgxZGM2ZmMiCiAgICAgIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkdpbXAgMi4xMCAoTGludXgpIgogICAgICBzdEV2dDp3aGVuPSIyMDIzLTA1LTI0VDE3OjI1OjI3KzAyOjAwIi8+CiAgICA8L3JkZjpTZXE+CiAgIDwveG1wTU06SGlzdG9yeT4KICA8L3JkZjpEZXNjcmlwdGlvbj4KIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAKPD94cGFja2V0IGVuZD0idyI/PofUkY4AAAAGYktHRAD/AP8A/6C9p5MAAAAJcEhZcwAADdcAAA3XAUIom3gAAAAHdElNRQfnBRgPGRuA4VZTAAAFcElEQVRYw82YW2xbVRaGv7XP8bHjXByHQkNhWigdVX1AikRBMBoQ8wASl4fRqPDAAxIPKAVxeRqQRohHBEVCaoGKUBCl4qHcNKCZVKMRRQxtgTaACLRKqlwB14NzM2ni2D2XvXjgBFXQOnFiA1uy/HB89u9/7bX+vf4l1HnpK57hTNCE0AzqAS5gAAuEID5KiWSiLPf4tp7YUjcSu4yLZzdi2IJyNXANcBlwAdAKzAHTwDhwDKEPywC+GZWHbPi7IKOvZIWguAnlr8BtwJ+AxDJeDYCPgF6Ed0hkh+Weov5mZLTHJMDeBjwYk0itYJtKTOpZML3SbYNfnYz2SBr0buARYENcFytdFvga2AGyT7p14Vcjoz3ShOgdKDuAi+pUewpMIDyCypvSreWGk9HdroOEV2F4A1hfTxGJCX2D5U7U/UzuD6NaXq49NRJhBsOjwMVLEtE4gaL4W5cV3IsxPEoizDT0ZLTHcSH6M/BWLLlVwpQKuPzhb+i8sRkv04Y/e5rvPigxtnM9trKU2k0D28A5LN3RsmXbrbFOU8DtQLpqfJqu97nh6TydmzvwWpOI8VDbxqbrkmz62yk+/Ps6yoe8KkeV/hHHfgrMNyrNEkBX1SAktgRs3T7ApV1rSWayiEkDLmLSJDNZLu1ay9btAyS2BEsEuWuZ99WKyRhgHeCcn8wGw/qbOnAS3jmfOwmP9Td1kNhQDduJcUwjyciS0RJXMMkWkPPUo/z4XFxZRhZII8mEwFCsT+f5xXTE7FAOteduItVaZodyhNPVZDeKccJGkxmsChIMOvTt6aRSzIP+7A9rRKWYp29PJ8GgsyqcVauZSADaj+IDTecWvBlD4e01HKjM07XtOOuuy+A2X0BYmib/8SxfvLWRYm8LdqZaCvkI/SDBci6nld0ze7KCLa4F3gSurR4MB5x1FnMhiCeor9hJiPKmWpbGp3EU2IbJFuTe5XfStbczLxgP7K0IPcCFDWhnJoFuMAek2/oNbWdku/WxHATejT1JPZcPvINysFYiK+gAFkXTK6H+MyhXADeseJ9fmrVDM6X080/+p1M2/yFsD1zjEIauEeMAqNpQE16oaKiqwfjYeLk+fuYl10HDq7DsBTavxs8o6FzFKez/dM3rLx9LjUyVxcb7yVkfzmpXFbACJURHIxgyxkyu1ml6qL0Z4YX4xl7Jfrrgm9Ov9bX/e++x1tHCgkQ11lgELGA4sBp3iHRbH5GDwJPAFLXo6KJnDmTh/aG2w2/3t47VSGQxs1zAE9U2s9pEjx3hXuBloCa7G1rxv8o3f/7SkUz/UFFWMqGRWMpHAqsDbl00KGotIXM7MawF7gKSS5oJJRospI7v+rD96Ikp8aV2EgrkVPW4OnIy6SVL9ZubvZgyaOVyYDfwl2oNqVWiXNEb231oTe+/BrzvK9Gy01MFyoiOKzIEmqsEfjGf/39U1yHgosJFUXhlFMl+z9E/nkvhVNHZsjux+9Caf77RnyzMBaJLmW4RrWAlB3Y4Uh13HLOA4wQjo6O2IRPNxVV4JuG5Et2SSelzjtFLzsZQ0NIZ8/2rx7K9+/paxqbKvyh4Bc4AFQxzau23Dow7FS+nHmfEUz05OqINH8+evXJPJVOuE93XkY4eSziaXcQpB2b+vZNt7+/8IPPl2OxPRMJ4dDsLzIho3hpzamJ6aqJ0ei6qtZAasmZ2OS1RyOMd6egBIzSFVoKj4y1Hnvhv+8cD02ZOkEmgIKITVnXKWDs1ksvNrgbTbRSZ46cypY50aWcllIsyKXvr8GTyi9f6WvePFGVQhO8EPW2NzI+OfV2pF2bDTgbg8D/aJeVUspd1BK3/G24u7/skO3+iYP3h3LdhI/B+AGodUpo8WKwoAAAAAElFTkSuQmCC",darkOrange:"data:image/png;base64,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czpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiCiAgICB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iCiAgICB4bWxuczpHSU1QPSJodHRwOi8vd3d3LmdpbXAub3JnL3htcC8iCiAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyIKICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgeG1wTU06RG9jdW1lbnRJRD0iZ2ltcDpkb2NpZDpnaW1wOjIxNDZjMzUzLWIxZjItNGVjOC04NzQ3LTIwMGEyYWExM2ViMyIKICAgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo2NGViNmI2Ni03Y2I2LTRkZGUtYTI3OS01MGY0ZWFiZGFhODAiCiAgIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo1ODRhM2VjZC1kNGFmLTQ3NjItYjA1ZS04ODk2MGQ4ZTk0Y2MiCiAgIGRjOkZvcm1hdD0iaW1hZ2UvcG5nIgogICBHSU1QOkFQST0iMi4wIgogICBHSU1QOlBsYXRmb3JtPSJMaW51eCIKICAgR0lNUDpUaW1lU3RhbXA9IjE2ODQ5NDE5MDM3ODI2MTQiCiAgIEdJTVA6VmVyc2lvbj0iMi4xMC4zMCIKICAgdGlmZjpPcmllbnRhdGlvbj0iMSIKICAgeG1wOkNyZWF0b3JUb29sPSJHSU1QIDIuMTAiPgogICA8eG1wTU06SGlzdG9yeT4KICAgIDxyZGY6U2VxPgogICAgIDxyZGY6bGkKICAgICAgc3RFdnQ6YWN0aW9uPSJzYXZlZCIKICAgICAgc3RFdnQ6Y2hhbmdlZD0iLyIKICAgICAgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDoxYzNjOGRkZi1kMjVkLTQ4YzQtYTAwYS0yMmU3ZDYwMzg1YjYiCiAgICAgIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkdpbXAgMi4xMCAoTGludXgpIgogICAgICBzdEV2dDp3aGVuPSIyMDIzLTA1LTI0VDE3OjI1OjAzKzAyOjAwIi8+CiAgICA8L3JkZjpTZXE+CiAgIDwveG1wTU06SGlzdG9yeT4KICA8L3JkZjpEZXNjcmlwdGlvbj4KIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAKPD94cGFja2V0IGVuZD0idyI/PuhCAHgAAAAGYktHRAD/AP8A/6C9p5MAAAAJcEhZcwAADdcAAA3XAUIom3gAAAAHdElNRQfnBRgPGQOTjc4FAAAFdklEQVRYw82YW2gcZRTHf+eb2dlkc9lsrFYr2notfSgWxKKiog8VvIFI9UFQEaWtYPFJfREfRRSEeqlttViLD/WGisYXrShWpfWC1WpSN5eN3cZumkuTzWY3c/mOD9lI0WSTTXbVA8M8zMz3n//5zvl/5xyhxqb3ewYvaERpAvUAFzCABUIQH6GAHyvKa76tJbbUjMRW4+LbC7GsQbgCWA+sAs4AWoA8MAxkgEMo32LoxDO98oIN/xdk9IGUYEYvRrgduAW4Gogt4NMA+BroQHkfm+qW3aP6n5HRTSYG9hZga5lEwyKWKZVJvQCmQ3bZ4F8no5skAXov8BiwspwXizUL9APPgOyVXTr5r5HRzdKI1TsRngHOqlHuKTCI8hhG3padWqw7GX3IddDwcixvAefXUkTKhH7HcBfifi8vh1E1H1cfGkGYxPI4cM68RGw5zf3y3S7IuedgeZwgTNZ1Z3Sz46LRNcA7Zcmd25yGgPWP/M7q65toTLZSHBvn6OcFDm07n6g0n9oNAxsR54DsjBYs2251QWAbgFuBREX/tF3rc9+zA6xa3U5jSxwxHmpbueyqOOvvOM7rj67g1JfedFTNagngVtR+B0zUK8xiwLqKTmhcE3Dblk4uXbecRDKFmATgIiZBIpni0nXLuW1LJ41rgnmcvG6B59WiyRhgBeDM+UZipWHthnbcmDf7b8Y81m5oJ7GyErZTxjH1JCPzesu4ghtvBpkjH2X6uXFlAVEg9SMjhEAamFsyp4Yjcuks1s6uXdZacuksU8OVZDcC0mW8OpFRQqBruvqdwwpdDh+9cjaF0QHQv/2wRhRGB6afdzkVkKZxtDoyVaqZBKCHEXygcXafjhi63l3G9tIEGzYe4ZKrksSbzmCqMEz6mzE+eedC+juaiUYqhZCPchgkqKB4SzxntqQEO7oceBu4srIzHIitsMTOBOMJ1leCkxAMmEpRWt6Vg8BGTConOxZeSVdfzmwxHmpvRtkJnFmHcuYksBkxH8tO69e1nJEd1sdhP/BBuUippfnA+3jsr5ZI9TnzV33mFcB/DuEi4LpFr/PPZu3LkanES08fOltWnxe2Ba5xCEPXiHEAVG2oMS9UNFTVINOXKdamn3nQdSC8HMMeYPVS+hkFzQdObl9m2Zu7+xt6hkKx5fXktGumdNXyZQUKiPZGkDbGnFxqp+kh9kaUHeUTezHr6WRkxt/oa/toT39Lby6QqMoci4BJDB8vpTtEdlkflf3A08AQ1ejoTM8cyeRnudYD72Zb+qokMhNZLuCJaqtZaqDLLi0i7EHYDVTV7oZW/J9PNf3wanfycLoki5nQSFnKewKrnW5NNMhtKRDlt6EsB+4G4vM2/UrUNd5w5Pl028FfiuJL9SQUyKrqEXXkaNyLF2o3N9vUYKB0AbAduKFSQWqVKFv0+rYfXdbx4aB3qqQLDk8VKCKaUSQNmi0F/ujAwB9RTYeAMwoXabg2QvZ5jl4ym8Ip6FjgDm7/bdl7bw3Ec/lItEJyWyAS0RJWsmC7I9WM45hJHCfo6e21dZlozlju3pjnSnRT0tMXHdFzT8dQ0EJoTr2eSXXs7W/uG/pnwiswBZQw5NXaYw5knJKXVY8p8VSP9vZo3cezp1v2nniDK9FD7V70RMxoaganGJmJT0+0frbtt+RPfVN/EQnLo9sxYEREB6wxxweHhwYL4/mo2kSqi43c5zRH8GS7Fz1shMZQJTg41PzVU7+2fdNZNHlBTgI5ER20qkPG2qGebHZsSTpULzJH8slCe6ywrWTlrGTM3tw9Ef/xjUzLvp6idIlwQtBxa2Sit6+/VCvMuu0MwIE726RBSqlViaDli6Gm4t6e1MQveet3Z4+F9cD7Ewo4WRJBbaaSAAAAAElFTkSuQmCC",red:"data:image/png;base64,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293bv2fa/f0ASM5yljz/NiUAAA0aaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJYTVAgQ29yZSA0LjQuMC1FeGl2MiI+CiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiCiAgICB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iCiAgICB4bWxuczpHSU1QPSJodHRwOi8vd3d3LmdpbXAub3JnL3htcC8iCiAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyIKICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgeG1wTU06RG9jdW1lbnRJRD0iZ2ltcDpkb2NpZDpnaW1wOmI5YjA2YTAwLWZkOTQtNDc5MC1hNzIzLTlkMGUwNGRiNTRlNyIKICAgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo1MTQ3ZGU5Yi1kOTA0LTRlNWYtYjIyYy0wZmMzOGRmMWI3ZGEiCiAgIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo4YzBjNTI2YS1lYTkyLTQxYWItODM5Yy05OWFhYTM0YjdlYzciCiAgIGRjOkZvcm1hdD0iaW1hZ2UvcG5nIgogICBHSU1QOkFQST0iMi4wIgogICBHSU1QOlBsYXRmb3JtPSJMaW51eCIKICAgR0lNUDpUaW1lU3RhbXA9IjE2ODQ5NDE2NDAxNTU0MjYiCiAgIEdJTVA6VmVyc2lvbj0iMi4xMC4zMCIKICAgdGlmZjpPcmllbnRhdGlvbj0iMSIKICAgeG1wOkNyZWF0b3JUb29sPSJHSU1QIDIuMTAiPgogICA8eG1wTU06SGlzdG9yeT4KICAgIDxyZGY6U2VxPgogICAgIDxyZGY6bGkKICAgICAgc3RFdnQ6YWN0aW9uPSJzYXZlZCIKICAgICAgc3RFdnQ6Y2hhbmdlZD0iLyIKICAgICAgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDowMjQ4MDc5ZS1kMTYyLTQxZmItOGViYS1lMzY2NTRiNGRjMjYiCiAgICAgIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkdpbXAgMi4xMCAoTGludXgpIgogICAgICBzdEV2dDp3aGVuPSIyMDIzLTA1LTI0VDE3OjIwOjQwKzAyOjAwIi8+CiAgICA8L3JkZjpTZXE+CiAgIDwveG1wTU06SGlzdG9yeT4KICA8L3JkZjpEZXNjcmlwdGlvbj4KIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAKPD94cGFja2V0IGVuZD0idyI/PkaovgIAAAAGYktHRAD/AP8A/6C9p5MAAAAJcEhZcwAADdcAAA3XAUIom3gAAAAHdElNRQfnBRgPFCiKn0kIAAAFfUlEQVRYw82YTWxc1RXHf+e+N2/GH+Px2IEEV02AgqIsIkwgoYS2ahepVGCBUOiCRRdsAAnECthErBBCICGFj4gqRQqBRSABUrVm1URtCSATJ5ASZCPHH0kGgx1/xJl5nvH7uIcFY4iIM/GzZyhHenqL994993/u+f/fOUeos+nNnkHCJoQWRD0UFzCARYhQCVB8NFWWTwNbT99SNxC3GZfIXg9sADYDWxCuRekEskARYQplFPgEOAr045ph6bXRzwKM3pEX5mduQLkHuAvYCqSW8GkIfAT0IBwknT8lH87o/w2M3mpSqL0LeLQKIrOMZSpVUC8hpkf6bPiTg9FbpBn0L8ATwLoqL5ZrFjgNPAeyV47p3E8GRjdLE6r3oTwHXF0n7ikwgfAEIvvlqJYbDkY3uw4a3YLyNrC2niJSBXQG4c+Ie0yORnGSj5OnRhzlUJ4ErrkikBAoAjPVe7ik4F6D8iRxlGvoyegmx4X4NwgHgM6a8fUyIfc8doZbf99Ca66N0uwF+v7tc3DnWoJK6gqep1C2g3NEjsdLlm03GXSbAe4GmmvGZ91vA3Y8P8aN6ztoyaYxxsPaNrbcnmbbvV/x9ONdnPnA+w71otaMcDfYPqDUmDQTUgjdNYPQsSHkgYf62di9mmwujzHNgIsxzWRzeTZ2r+aBh/rp2BDWDLLQjSzpf7VMMIpB6QKcy77Tuc6wdVsHbspbfJspj63bOuhcV8u3g9KFJtufWQbHakfLdQUv3YrI4qwQ+e65616Jr6mknE4KJgIGgctLZnEq5vRgAWsXLyKttZweLFCcqiW7cdVP1DgwQoQwUNPJxIDDG7vXMDszBvqjDWvM7MwYb+xew8SAUzNowgCSDEwyNVMJQU8AAdC06DvBtOG/76xirlLi3u0nufn2HJmWTir+FJ9+PMu7B66nr6eVYLpWCgUoJ0DCGoq3wv/MbXkhmlkN7Ad+XTMY4kBTl6XlKnA8IQ4U/xyUx8wlB3ZpKvcC23Hz49K79Ep6GeWM8VB7J8pfgasaUM6cAx5EzPvSZ4OGljNy1AYIh4C/L6lASWYBcBCHQ0mBJOfM94rk+WjwAsKvgN8te51LK7kPpm3zK89OrZH1v4zaQ9c4RJFrxDgAqjbSlBcpGqlqODoyWq5TP1OtnoU9wPqV9DMKWlRnfJ+/6q3XKpmhSRVbXU8uuhb6Hq1eVsBHdDiGQWPMuZV1mpuMB/aPCK8CXcsMjs6pufCm3/7PPZXs8LhKnJBjMTCH4f2VdIfIcRsgcgh4FpgkiY4u9Mwqc4fn2468M58dSQhkIbNcwBPVNrPSRJdjWgb2AK8BidrdSCX4PGw5/re53IlBK8uZ0EhVyodCq/1uXTTIzfrExZ0oq4H7gfQSmv54IMqcfNFv7/0ilkCSg1CgoKon1ZEv017ar9/cbEvGEFeuQ9mF8IdaBamFuBB7I7tKq3r+EXjnK0tPTxUoIzqqyCBooRIGM2NjX8d1HQIuKFys0cYY2eeJ3riYwinorHUndvmr3nt7Pj1eVNEa5LZALKIVrBTAnopVRx3HzOE44dDwsG3IRHPBxrtTnkv8p5yjLzvoLy72oaC+mvOvz+V79pZbRyYvJbwC80AFQ1GtPevAqFPxCuoxL57ql8ND2vDx7MVW2JTOuMQPdxDvSInmF/yU1ZT+Nd92eGcp97+RH4BE1XHHLDAtomPWmK8mpiYn/AvFOCmRGmLTm53WOOKpDhM/YqApQsLe+dYPnym1f9xvTVGQc8C4iE5Y1Ulj7eRQoTC7Ih1qFJiTQc7vwN9ZUbk6Z+ydp6L0Z2+Ws/uGrAyI8I2gF6yR0vDI6Uq9fDbsZACO3NQuGa3kr3XC7H+ClvJeP1/6IrbBqbNno0b4+xbMlmARngcRbAAAAABJRU5ErkJggg==",turquoiseBlue:"data:image/png;base64,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/MUi8H5G35QHBm+BvjV3bu1znD4AWZpV+gY4OARGS5S97vHu3u65/XunPb8fN2tyj8UDOK0AAA0aaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJYTVAgQ29yZSA0LjQuMC1FeGl2MiI+CiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiCiAgICB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iCiAgICB4bWxuczpHSU1QPSJodHRwOi8vd3d3LmdpbXAub3JnL3htcC8iCiAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyIKICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgeG1wTU06RG9jdW1lbnRJRD0iZ2ltcDpkb2NpZDpnaW1wOjEwNGNlNWFhLTE1YzctNGI4Yi1iOGU1LTFmYWQyNWFiYzBhZCIKICAgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpkNDMyZTY1Zi0xOThhLTQxM2EtYWYyMy1jNzhlNzczNGRlN2QiCiAgIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDoyNzExODVkMi03MWZiLTRhZDMtYTJmMi1iNjM3OWU3MDc1OTEiCiAgIGRjOkZvcm1hdD0iaW1hZ2UvcG5nIgogICBHSU1QOkFQST0iMi4wIgogICBHSU1QOlBsYXRmb3JtPSJMaW51eCIKICAgR0lNUDpUaW1lU3RhbXA9IjE2ODQ5NDE4NjYyMzgzMjQiCiAgIEdJTVA6VmVyc2lvbj0iMi4xMC4zMCIKICAgdGlmZjpPcmllbnRhdGlvbj0iMSIKICAgeG1wOkNyZWF0b3JUb29sPSJHSU1QIDIuMTAiPgogICA8eG1wTU06SGlzdG9yeT4KICAgIDxyZGY6U2VxPgogICAgIDxyZGY6bGkKICAgICAgc3RFdnQ6YWN0aW9uPSJzYXZlZCIKICAgICAgc3RFdnQ6Y2hhbmdlZD0iLyIKICAgICAgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo1NGFiYzNkYS1lZWJiLTRlZjctYjdjNS04ZDRjODY5OGVjODMiCiAgICAgIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkdpbXAgMi4xMCAoTGludXgpIgogICAgICBzdEV2dDp3aGVuPSIyMDIzLTA1LTI0VDE3OjI0OjI2KzAyOjAwIi8+CiAgICA8L3JkZjpTZXE+CiAgIDwveG1wTU06SGlzdG9yeT4KICA8L3JkZjpEZXNjcmlwdGlvbj4KIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAKPD94cGFja2V0IGVuZD0idyI/Pj0tlUwAAAAJcEhZcwAADdcAAA3XAUIom3gAAAAHdElNRQfnBRgPGBru/VeEAAAABmJLR0QA/wD/AP+gvaeTAAAFO0lEQVRYw9WYe2xTVRzHTx97dYS5B1UHa+/tY12dDoOKWyIGlfgHkCkSNTHGwHxA3NiAP/A5x4CMKEzdYL29YyAyBxKQZbI+NvYIaowaH9Ogi2GRbGjcFrbBNrq2a2/9nq5LCFnbbfSOeZJPTs/t6Tm/7/39zu+cU0IiXc7WSImNX0BsZiVYAhigmah5tHklsZrjSYtJSuZtaeSiiJU3gHUwfC9oARfBIHBP1DzaPH1eRuzmp0E6aTgSNX9EWMwSvOkMGPgG+CpguG8a0H7nA78zkMYqye0V0lYXDSHrYUw7cE5TxM04/b+38+vJ+RPRt0eIjVeAAhhyCQizFDKJEBjndaCY49Di4+CRlzFxfwSE3Ciol9i4DSBujoRUy7HIszFxdwSF3CioBy8qm1g5ufhirHwyJqwHrrDGWTlg8hFL1URN2+EF0XFPkyYuSWwhUVgnT2CygXBG3dFcM7bz1/au1u7OK9/93eWidUlHe1dCc810EsUAsXOPQZCI3rGZ6Wb4EXAEM0SCUFnZduz6T/09l4bHXYOCz+f0+XxeWg+7XYM/4vnKtlqHJHSIOrAHlYMFYmawRNCKycaDGZLVfMRdf/nPDpfXM+abotDnpy93dtzXfNgdZg+im2uimJ6h66UTeIMZsrat1jvkdPRRb/imLt4hl6N3DfqFEIPvOMzDJYspJsWfbUKEyFNttcKoyzkKo4UgYoRRt3OE9guT1br984nsmQ7gCWbIipaj4xeu9v/hFQTPlG7B89+u9v9O+4UQQ8f/BSlaVM8kgBOhji4p9mpvwQ+Wfwddjp6bQw2u8g44HT3535/tTUa/0Eccvg4sFDE1m2PBZkx2LVRqVcLQvG/PDDX1/tVxze38x+UZH6O1He28b764qgwtxOcf327eBGLFE9NikiD3qzDZhVBJgCJH3KubDnkfbD4s5Jw74qM1bcvDnxq8/vHt1SrS9InIJ2m7OQ4UYsKhCB9lJqHj0gPsHJzPvsS9w8rRRPDptI40M8PlH9fOJ5M5K008rsZmIwi5gc4QN9Zja8zn+5epch9PTFepU1iGuVunVqeyS9g0iv8zy96l0WiSjIsXx28iJEJhaONkMGB5YP14bkmI1SzIz1T0pRa9VKnNzCjUMcwWUAS2BtgWYLJN+xTo1OyrOhW7xsAwqnSGkd3i+uGjkT5Xw6DLt3AdEKQNB4YXbdtwQpuVuRtG7pwhxWA7vJgRib0nDuSDvtkIkjYcHE3aVWjRLL9/zyyETPK2Vq3OidAaOhiPDLcbxo3MRIik0eReWPnO15pHHiqbpYhS6hkNw7wAz0To6GM5hAzH3wkDa6b7x4bEwnkUfMnP6idX7Nex7GxElIDNerV6hU6jSdbp9RHck2w0w/FaGGoJm7KtnCfmWNlF1fOrK3Q6bekMRFABO7QM8yxewFLUi+5JSxPpAmcxy0gjt1Rytir4NcHKCfJTH/al5j1j1hr0pWEML55YD+x2GP6cVqNZZjQYEvUsG4vP4v8jKju5L1p6qnytxGKa6qogyOorBpVbXvxMe69xdxABb9I0DAGvIIRWp7NsBsJIoWVZKfaXuf+jMKp2b6z8+Adb4aErNwpCCh5J2pnfoH0ga08g7invBfaQjXjjuQifhyEgLdNolJP5UqR17y+QnSwvk1i565OZK6F8RzubvWwvDH8LvKZnmHXY8HKws+sNLJtI5muJ/7hYElOzJ1V+fN9R7CVDClPJOVXuqo06vS4HQjTwgDKDZRXk/1JiD7wrieFLk6T1lczCXUVK7aPZinS9XrTw+Q+Tql7SUmvGuQAAAABJRU5ErkJggg==",defaultOffset:[-25.5,-32]},vt=o(12),Ct=o.n(vt),It=o(13),bt=o.n(It),wt=o(32),_t=o.n(wt),Et=o(33),St=o.n(Et),Mt=o(15),Pt=o.n(Mt),xt=o(16),kt=o.n(xt),Gt=o(34),Rt=o.n(Gt),Tt=o(63),Ot=o.n(Tt),Lt=o(64),Dt=o.n(Lt),jt=lt.getLogger("styling");Ct.a.prototype.setPropertyFill=function(){var e=this.getStyle();if(e&&(!Array.isArray(e)||0!==e.length)){var t=e.getFill();if(t){var o=t.getColor();if(Array.isArray(o)){var n="rgba(";n+=o[0]+",",n+=o[1]+",",n+=o[2]+",",o=n+=o[3]+")"}if(yt.isRGB(o)){var i=yt.rgbaToHex(o);this.set("fill",i.hex),this.set("fill-opacity",i.opacity)}else this.set("fill",o),this.set("fill-opacity",1)}}},Ct.a.prototype.setPropertyStroke=function(){var e=this.getStyle();if(e&&(!Array.isArray(e)||0!==e.length)){var t=e.getStroke();if(t){var o=t.getColor();if(Array.isArray(o)){var n="rgba(";n+=o[0]+",",n+=o[1]+",",n+=o[2]+",",o=n+=o[3]+")"}if(yt.isRGB(o)){var i=yt.rgbaToHex(o);this.set("stroke",i.hex),this.set("stroke-opacity",i.opacity)}else this.set("stroke",o),this.set("stroke-opacity",1);this.set("stroke-width",t.getWidth())}}},Ct.a.prototype.setPropertyLabel=function(){var e=this.getStyle();if(e&&(!Array.isArray(e)||0!==e.length)){var t=void 0!==this.get("name");if(e.getText()&&t){var o=e.getText().getFill();if(o){var n=o.getColor();if(Array.isArray(n)){var i="rgba(";i+=n[0]+",",i+=n[1]+",",i+=n[2]+",",n=i+=n[3]+")"}if(yt.isRGB(n)){var r=yt.rgbaToHex(n);this.set("label-fill",r.hex),this.set("label-fill-opacity",r.opacity)}else this.set("label-fill",n),this.set("label-fill-opacity",1)}var a=e.getText().getStroke();if(a){var s=a.getColor();if(Array.isArray(s)){var l="rgba(";l+=s[0]+",",l+=s[1]+",",l+=s[2]+",",s=l+=s[3]+")"}if(yt.isRGB(s)){var c=yt.rgbaToHex(s);this.set("label-stroke",c.hex),this.set("label-stroke-opacity",c.opacity)}else this.set("label-stroke",s),this.set("label-stroke-opacity",1);this.set("label-stroke-width",a.getWidth())}this.set("label-font",e.getText().getFont()||Ut.DEFAULT_TEXT.font),this.set("label-textAlign",e.getText().getTextAlign()||Ut.DEFAULT_TEXT.textAlign)}}},Ct.a.prototype.setPropertyMarker=function(){var e=this.getStyle();if(e&&(!Array.isArray(e)||0!==e.length)){var t=e.getImage();if(t)if(t instanceof St.a){var o=t.getColor();if(Array.isArray(o)){var n="rgba(";n+=o[0]+",",n+=o[1]+",",n+=o[2]+",",o=n+=o[3]+")"}if(o){var i=yt.rgbaToHex(o);this.set("marker-color",i.hex)}var r=t.getScale();switch(Math.round(2*r)/2){case 0:case.5:this.set("marker-size","small");break;case 1:this.set("marker-size","medium");break;case 1.5:case 2:this.set("marker-size","large")}var a=t.getSrc();a&&this.set("marker-symbol",a),this.unset("circle-fill"),this.unset("circle-fill-opacity"),this.unset("circle-stroke"),this.unset("circle-stroke-width"),this.unset("circle-stroke-opacity"),this.unset("circle-radius")}else{var s=t.getFill();if(s){var l=s.getColor();if(Array.isArray(l)){var c="rgba(";c+=l[0]+",",c+=l[1]+",",c+=l[2]+",",l=c+=l[3]+")"}if(yt.isRGB(l)){var u=yt.rgbaToHex(l);this.set("circle-fill",u.hex),this.set("circle-fill-opacity",u.opacity)}else this.set("circle-fill",l),this.set("circle-fill-opacity",1)}var d=t.getStroke();if(d){var p=d.getColor();if(Array.isArray(p)){var h="rgba(";h+=p[0]+",",h+=p[1]+",",h+=p[2]+",",p=h+=p[3]+")"}if(yt.isRGB(p)){var g=yt.rgbaToHex(p);this.set("circle-stroke",g.hex),this.set("circle-stroke-opacity",g.opacity)}else this.set("circle-stroke",p),this.set("circle-stroke-opacity",1);this.set("circle-stroke-width",d.getWidth())}var m=t.getRadius();this.set("circle-radius",m)}}};var Ut={APPLY_CONVERT_GEOM_GPX:!0,DEFAULT_ICON:{src:At.lightOrange,anchor:[.5,1],scale:1},DEFAULT_CIRCLE:{radius:10,fill:{opacity:1,color:[0,0,0,1]},stroke:{width:1,opacity:1,color:[0,0,0,1]}},DEFAULT_STROKE:{width:5,opacity:1,color:[250,250,250,1]},DEFAULT_FILL:{opacity:1,color:[0,0,0,1]},DEFAULT_TEXT:{font:"16px sans",textAlign:"left",stroke:{color:[250,250,250,1],width:5,opactity:1},fill:{opacity:1,color:[0,0,0,1]}},getListTags:function(){return["type","fill","fill-opacity","stroke","stroke-opacity","stroke-width","circle-fill","circle-fill-opacity","circle-stroke","circle-stroke-opacity","circle-stroke-width","circle-radius","marker-symbol","marker-color","marker-size","label-fill","label-fill-opacity","label-stroke","label-stroke-width","label-stroke-opacity","label-font","label-textAlign"]},defineStyleFromProperties:function(e){var t=null,o={},n=null;if(e.get("marker-color")||e.get("marker-size")||e.get("marker-symbol")){(n={}).src=this.DEFAULT_ICON.src,n.anchor=this.DEFAULT_ICON.anchor;var i=e.get("marker-symbol");i&&-1!==i.search("data:image/png;base64")&&(n.src=i);var r=e.get("marker-color");yt.isHex(r)&&(n.color=yt.hexToRgba(r,1));var a=e.get("marker-size");if(a)switch(a){case"small":n.scale=.5;break;case"medium":n.scale=1;break;case"large":n.scale=1.5;break;default:n.scale=this.DEFAULT_ICON.scale}}var s=null;(e.get("stroke")||e.get("stroke-opacity")||e.get("stroke-width"))&&((s={}).color=yt.hexToRgba(e.get("stroke"),+e.get("stroke-opacity")||this.DEFAULT_STROKE.opacity),s.width=+e.get("stroke-width")||this.DEFAULT_STROKE.width);var l=null;(e.get("fill")||e.get("fill-opacity"))&&((l={}).color=yt.hexToRgba(e.get("fill"),+e.get("fill-opacity")||this.DEFAULT_FILL.opacity));var c=null,u=null,d=""!==e.get("name");d&&((e.get("label-fill")||e.get("label-fill-opacity"))&&((u={}).color=yt.hexToRgba(e.get("label-fill"),+e.get("label-fill-opacity")||this.DEFAULT_TEXT.fill.opacity)),(e.get("label-stroke")||e.get("label-stroke-opacity")||e.get("label-stroke-width"))&&((c={}).color=yt.hexToRgba(e.get("label-stroke"),+e.get("label-stroke-opacity")||this.DEFAULT_TEXT.stroke.opacity),c.width=+e.get("label-stroke-width")||this.DEFAULT_TEXT.stroke.width));var p=e.get("circle-radius")||this.DEFAULT_CIRCLE.radius,h=null;(e.get("circle-stroke")||e.get("circle-stroke-opacity")||e.get("circle-stroke-width"))&&((h={}).color=yt.hexToRgba(e.get("circle-stroke"),+e.get("circle-stroke-opacity")||this.DEFAULT_CIRCLE.stroke.opacity),h.width=+e.get("circle-stroke-width")||this.DEFAULT_CIRCLE.stroke.width);var g=null;(e.get("circle-fill")||e.get("circle-fill-opacity"))&&((g={}).color=yt.hexToRgba(e.get("circle-fill"),+e.get("circle-fill-opacity")||this.DEFAULT_CIRCLE.fill.opacity));var m=e.getGeometry().getType();switch(m){case"Circle":case"Point":case"MultiPoint":var f=!1,y={};if(h&&(y.stroke=new kt.a(h)),g&&(y.fill=new Pt.a(g)),0!==Object.keys(y).length&&(f=!0,y.radius=+p,o.image=new _t.a(y)),n&&(o.image=new St.a(n)),d){var A={};if(c&&(A.stroke=new kt.a(c)),u&&(A.fill=new Pt.a(u)),0!==Object.keys(A).length)A.text=e.get("name"),A.textAlign=e.get("label-textAlign")||this.DEFAULT_TEXT.textAlign,A.font=e.get("label-font")||this.DEFAULT_TEXT.font,o.text=new Rt.a(Object.assign({},this.DEFAULT_TEXT,A));else if(n||f){var v=new Rt.a(Object.assign({},this.DEFAULT_TEXT,{fill:new Pt.a(this.DEFAULT_TEXT.fill),stroke:new kt.a(this.DEFAULT_TEXT.stroke)}));if(v){var C=v.clone();C.setText(e.get("name")),o.text=C}}}break;case"Polygon":case"MultiPolygon":s&&(o.stroke=new kt.a(s)),l&&(o.fill=new Pt.a(l));break;case"LineString":case"MultiLineString":if(s&&(o.stroke=new kt.a(s)),this.APPLY_CONVERT_GEOM_GPX&&l){var I=e.get("type");if(I&&("Polygon"===I||"MultiPolygon"===I)){o.fill=new Pt.a(l);var b=e.clone(),w="LineString"===m?Ot.a:Dt.a;e.setGeometry(new w([b.getGeometry().getCoordinates()]))}}}return 0!==Object.keys(o).length&&(t=new bt.a(o)),t},defineStyleFunctionByDefault:function(e){if(!e)return[];if(0===Object.keys(e).length)return[];return function(t,o){var n=null;switch(t.getGeometry().getType()){case"Point":case"MultiPoint":var i={};if(e.getImage()&&(i.image=e.getImage()),e.getText()&&t.get("name")){var r=e.getText().clone();r.setText(t.get("name")),i.text=r}n=new bt.a(i);break;case"Circle":var a={},s={};if(e.getFill()&&(s.fill=e.getFill()),e.getStroke()&&(s.stroke=e.getStroke()),e.getText()&&t.get("name")){var l=e.getText().clone();l.setText(t.get("name")),a.text=l}0!==Object.keys(s).length&&(s.radius=3,a.image=new _t.a(s)),n=new bt.a(a);break;case"Polygon":case"MultiPolygon":var c={};e.getFill()&&(c.fill=e.getFill()),e.getStroke()&&(c.stroke=e.getStroke()),n=new bt.a(c);break;case"LineString":case"LinearRing":case"MultiLineString":var u={};e.getStroke()&&(u.stroke=e.getStroke()),n=new bt.a(u)}return[n]}},definePropertiesFromStyleByType:function(e){switch(e.getGeometry().getType()){case"Point":case"MultiPoint":e.setPropertyMarker(),e.setPropertyLabel();break;case"LineString":case"MultiLineString":e.setPropertyStroke();break;case"Polygon":case"MultiPolygon":e.setPropertyStroke(),e.setPropertyFill()}},definePropertiesFromStyle:function(e){var t=e.getStyle()||e.getStyleFunction();if(t){if("function"==typeof t){var o=t.call(this,e,0);if(!o||0===o.length)return;t=Array.isArray(o)?o[0]:o,e.setStyle(t)}this.definePropertiesFromStyleByType(e)}},defineTagFromStyle:function(e,t){return jt.trace("todo..."),null}},Nt=Ut;function Bt(e){return(Bt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var Ft=lt.getLogger("parser"),zt={parse:function(e){var t=null,n="undefined"!=typeof window?window:null;"object"===("undefined"==typeof exports?"undefined":Bt(exports))&&null===window?t=(new(0,o(35).DOMParser)).parseFromString(e,"text/xml"):n.DOMParser?t=(new n.DOMParser).parseFromString(e,"text/xml"):n.ActiveXObject?((t=new n.ActiveXObject("Microsoft.XMLDOM")).async=!1,t.loadXML(e)):Ft.log("Incompatible environment for DOM Parser !");var i=t.querySelector("parsererror");return i?(console.error(i),null):(Ft.trace(t),t)},toString:function(e){var t=(new XMLSerializer).serializeToString(e);return Ft.trace(t),t},format:function(e){for(var t="",o=(e=e.replace(/(>)\s*(<)(\/*)/g,"$1\n$2$3").replace(/ *(.*) +\n/g,"$1\n").replace(/(<.+>)(.+\n)/g,"$1\n$2")).split("\n"),n=0,i="other",r={"single->single":0,"single->closing":-1,"single->opening":0,"single->other":0,"closing->single":0,"closing->closing":-1,"closing->opening":0,"closing->other":0,"opening->single":1,"opening->closing":0,"opening->opening":1,"opening->other":1,"other->single":0,"other->closing":-1,"other->opening":0,"other->other":0},a=0;a/)),c=Boolean(s.match(/<\/.+>/)),u=Boolean(s.match(/<[^!].*>/)),d=l?"single":c?"closing":u?"opening":"other",p=i+"->"+d;i=d;var h="";n+=r[p];for(var g=0;gclosing"===p?t=t.substr(0,t.length-1)+s+"\n":t+=h+s+"\n"}return Ft.trace(t),t}};function Vt(e){return(Vt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var Wt={detectSupport:function(){var e=!0,t=window.navigator.userAgent.toLowerCase();return-1===t.indexOf("iphone")&&-1===t.indexOf("ipod")&&-1===t.indexOf("ipad")&&-1===t.indexOf("android")&&-1===t.indexOf("mobile")&&-1===t.indexOf("blackberry")&&-1===t.indexOf("tablet")&&-1===t.indexOf("phone")&&-1===t.indexOf("touch")||(e=!1),-1===t.indexOf("msie")&&-1===t.indexOf("trident")||(e=!0),e},assign:function(e,t){for(var o in e=e||{},t)t.hasOwnProperty(o)&&(e[o]=t[o]);return e},mergeParams:function(e,t,o){if(e&&t)for(var n in void 0===o&&(o=!0),t)t.hasOwnProperty(n)&&("object"===Vt(t[n])?e.hasOwnProperty(n)?this.mergeParams(e[n],t[n],o):e[n]=t[n]:e.hasOwnProperty(n)?o&&(e[n]=t[n]):e[n]=t[n])}},qt=lt.getLogger("extended KML format"),Ht=function(e){function t(o){if(!(this instanceof t))throw new TypeError("ERROR CLASS_CONSTRUCTOR");o=o||{},this.source=null,this.extensions=o.extensions||null,o.defaultStyle&&!Array.isArray(o.defaultStyle)&&(o.defaultStyle=[o.defaultStyle]),null!==o.defaultStyle&&void 0!==o.defaultStyle||(o.defaultStyle=[]),e.call(this,o)}function o(e,t,o){for(var n="#document"===e.nodeName?e.childNodes[0].childNodes:e.childNodes,i=n,r=0;r)\s*(<)/g,"$1$2"),null===(i=zt.parse(a)))return r;function s(e){var t="";t+=e.substr(6,2),t+=e.substr(4,2),t+=e.substr(2,2);for(var o=parseInt(t,16).toString(16),n="",i=o.length||0,r=0;r<6-i;r++)n+="0";return o="#"+n+o}var l=function(e,t){if(qt.trace("label with style :",t),e){for(var o=e.getProperties().name,n=s("ff000000"),i="#FFFFFF",r=0,a="Sans",l="16px",c=null,u=5,d="#000000",p="#ffffff",h=1,g=!1,m=!1,f=t.childNodes,y=0;yt&&(n=!1),n&&p&&pt?1:er&&(c-s)*(r-l)-(i-s)*(u-l)>0&&a++:u<=r&&(c-s)*(r-l)-(i-s)*(u-l)<0&&a--,s=c,l=u}return 0!==a}function Xo(e,t,o,n,i,r){if(0===o.length)return!1;if(!Ko(e,t,o[0],n,i,r))return!1;for(var a=1,s=o.length;aC&&Xo(e,t,o,n,c=(u+d)/2,g)&&(v=c,C=I),u=d}return isNaN(v)&&(v=i[r]),a?(a.push(v,g,C),a):[v,g,C]}var $o={RADIANS:"radians",DEGREES:"degrees",FEET:"ft",METERS:"m",PIXELS:"pixels",TILE_PIXELS:"tile-pixels",USFEET:"us-ft"};var en={};en[$o.RADIANS]=6370997/(2*Math.PI),en[$o.DEGREES]=2*Math.PI*6370997/360,en[$o.FEET]=.3048,en[$o.METERS]=1,en[$o.USFEET]=1200/3937;var tn=$o,on=function(){function e(e){this.code_=e.code,this.units_=e.units,this.extent_=void 0!==e.extent?e.extent:null,this.worldExtent_=void 0!==e.worldExtent?e.worldExtent:null,this.axisOrientation_=void 0!==e.axisOrientation?e.axisOrientation:"enu",this.global_=void 0!==e.global&&e.global,this.canWrapX_=!(!this.global_||!this.extent_),this.getPointResolutionFunc_=e.getPointResolution,this.defaultTileGrid_=null,this.metersPerUnit_=e.metersPerUnit}return e.prototype.canWrapX=function(){return this.canWrapX_},e.prototype.getCode=function(){return this.code_},e.prototype.getExtent=function(){return this.extent_},e.prototype.getUnits=function(){return this.units_},e.prototype.getMetersPerUnit=function(){return this.metersPerUnit_||en[this.units_]},e.prototype.getWorldExtent=function(){return this.worldExtent_},e.prototype.getAxisOrientation=function(){return this.axisOrientation_},e.prototype.isGlobal=function(){return this.global_},e.prototype.setGlobal=function(e){this.global_=e,this.canWrapX_=!(!e||!this.extent_)},e.prototype.getDefaultTileGrid=function(){return this.defaultTileGrid_},e.prototype.setDefaultTileGrid=function(e){this.defaultTileGrid_=e},e.prototype.setExtent=function(e){this.extent_=e,this.canWrapX_=!(!this.global_||!e)},e.prototype.setWorldExtent=function(e){this.worldExtent_=e},e.prototype.setGetPointResolution=function(e){this.getPointResolutionFunc_=e},e.prototype.getPointResolutionFunc=function(){return this.getPointResolutionFunc_},e}();var nn="cosh"in Math?Math.cosh:function(e){var t=Math.exp(e);return(t+1/t)/2};"log2"in Math&&Math.log2;function rn(e,t,o){return e+o*(t-e)}var an=function(){var e=function(t,o){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])})(t,o)};return function(t,o){if("function"!=typeof o&&null!==o)throw new TypeError("Class extends value "+String(o)+" is not a constructor or null");function n(){this.constructor=t}e(t,o),t.prototype=null===o?Object.create(o):(n.prototype=o.prototype,new n)}}(),sn=6378137*Math.PI,ln=[-sn,-sn,sn,sn],cn=[-180,-85,180,85],un=6378137*Math.log(Math.tan(Math.PI/2)),dn=function(e){function t(t){return e.call(this,{code:t,units:tn.METERS,extent:ln,global:!0,worldExtent:cn,getPointResolution:function(e,t){return e/nn(t[1]/6378137)}})||this}return an(t,e),t}(on),pn=[new dn("EPSG:3857"),new dn("EPSG:102100"),new dn("EPSG:102113"),new dn("EPSG:900913"),new dn("http://www.opengis.net/def/crs/EPSG/0/3857"),new dn("http://www.opengis.net/gml/srs/epsg.xml#3857")];function hn(e,t,o){var n=e.length,i=o>1?o:2,r=t;void 0===r&&(r=i>2?e.slice():new Array(n));for(var a=0;aun?s=un:s<-un&&(s=-un),r[a+1]=s}return r}function gn(e,t,o){var n=e.length,i=o>1?o:2,r=t;void 0===r&&(r=i>2?e.slice():new Array(n));for(var a=0;a>1)],t))<0?a=n+1:(s=n,l=!i);return l?a:~a}(h,y);A<0?(l=(y-h[-A-2])/(h[-A-1]-h[-A-2]),s=t+(-A-2)*n):s=t+A*n}var v=a>1?a:2,C=r||new Array(v);for(g=0;g=.05){for(var o="",n=e.split("\n"),i=Vn.slice(0,Math.round(t/.1)),r=0,a=n.length;r0&&(o+="\n"),o+=n[r].split("").join(i);return o}return e}function qn(){return zn||(zn=Fn(1,1).getContext("2d")),zn}function Hn(e,t){return qn().measureText(e).width+(e.length-1)*t}var Yn={};jn.labelCache&&Un(jn.labelCache,"clear",(function(){Yn={}}));var Jn,Zn,Kn=Dn.e.isFunction,Xn=Dn.e.convertFunction,Qn=Dn.c.isExpression,$n=Dn.c.createPropertyExpression,ei={Point:1,MultiPoint:1,LineString:2,MultiLineString:2,Polygon:3,MultiPolygon:3},ti={center:[.5,.5],left:[0,.5],right:[1,.5],top:[.5,0],bottom:[.5,1],"top-left":[0,0],"top-right":[1,0],"bottom-left":[0,1],"bottom-right":[1,1]},oi={},ni={zoom:0};function ii(e,t,o,n,i,r){var a=e.id;r||(r={},console.warn("No functionCache provided to getValue()")),r[a]||(r[a]={});var s=r[a];if(!s[o]){var l=(e[t]||oi)[o],c=Dn.f["".concat(t,"_").concat(e.type)][o];void 0===l&&(l=c.default);var u=Qn(l);if(!u&&Kn(l)&&(l=Xn(l,c),u=!0),u){var d=function(e,t){var o=$n(e,t);if("error"===o.result)throw new Error(o.value.map((function(e){return"".concat(e.key,": ").concat(e.message)})).join(", "));return o.value}(l,c);s[o]=d.evaluate.bind(d)}else"color"==c.type&&(l=Dn.a.parse(l)),s[o]=function(){return l}}return ni.zoom=n,s[o](ni,i)}function ri(e,t){if(e){if(0===e.a||0===t)return;var o=e.a;return t=void 0===t?1:t,"rgba("+Math.round(255*e.r/o)+","+Math.round(255*e.g/o)+","+Math.round(255*e.b/o)+","+o*t+")"}return e}var ai=/^([^]*)\{(.*)\}([^]*)$/;function si(e,t){var o;do{if(o=e.match(ai)){var n=t[o[2]]||"";e=o[1]+n+o[3]}}while(o);return e}var li=!1;var ci=function(e,t,o,n,i,r,a){if(void 0===n&&(n=Bn),"string"==typeof t&&(t=JSON.parse(t)),8!=t.version)throw new Error("glStyle version 8 required.");var s,l;if(r)if("undefined"!=typeof Image){var c=new Image;c.crossOrigin="anonymous",c.onload=function(){s=c,l=[c.width,c.height],e.changed(),c.onload=null},c.src=r}else if("undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope){var u=self;u.postMessage({action:"loadImage",src:r}),u.addEventListener("message",(function(e){"imageLoaded"===e.data.action&&e.data.src===r&&(s=e.data.image,l=[s.width,s.height])}))}for(var d,p=Object(Dn.b)(t.layers),h={},g=[],m={},f={},y={},A={},v=0,C=p.length;v=C.maxzoom)return"continue";var _=C.filter;if(!_||function(e,t,o,n,i){return i||console.warn("No filterCache provided to evaluateFilter()"),e in i||(i[e]=Object(Dn.d)(t).filter),ni.zoom=n,i[e](ni,o)}(I,_,p,c,A)){u=C;var E=void 0,S=void 0,k=void 0,G=void 0,R=void 0,T=void 0,O=v.index;if(3==d&&("fill"==C.type||"fill-extrusion"==C.type))if(S=ii(C,"paint",C.type+"-opacity",c,p,y),C.type+"-pattern"in w){var L=ii(C,"paint",C.type+"-pattern",c,p,y);if(L){var D="string"==typeof L?si(L,o):L.toString();if(s&&i&&i[D]){++g,(T=x[g])&&T.getFill()&&!T.getStroke()&&!T.getText()||(T=new bt.a({fill:new Pt.a}),x[g]=T),k=T.getFill(),T.setZIndex(O);var j=f[he=D+"."+S];if(!j){var U=Fn((ge=i[D]).width,ge.height),N=U.getContext("2d");N.globalAlpha=S,N.drawImage(s,ge.x,ge.y,ge.width,ge.height,0,0,ge.width,ge.height),j=N.createPattern(U,"repeat"),f[he]=j}k.setColor(j)}}}else(E=ri(ii(C,"paint",C.type+"-color",c,p,y),S))&&(C.type+"-outline-color"in w&&(R=ri(ii(C,"paint",C.type+"-outline-color",c,p,y),S)),R||(R=E),++g,(T=x[g])&&T.getFill()&&T.getStroke()&&!T.getText()||(T=new bt.a({fill:new Pt.a,stroke:new kt.a}),x[g]=T),(k=T.getFill()).setColor(E),(G=T.getStroke()).setColor(R),G.setWidth(1),T.setZIndex(O));if(1!=d&&"line"==C.type){E=!("line-pattern"in w)&&"line-color"in w?ri(ii(C,"paint","line-color",c,p,y),ii(C,"paint","line-opacity",c,p,y)):void 0;var B=ii(C,"paint","line-width",c,p,y);E&&B>0&&(++g,(T=x[g])&&T.getStroke()&&!T.getFill()&&!T.getText()||(T=new bt.a({stroke:new kt.a}),x[g]=T),(G=T.getStroke()).setLineCap(ii(C,"layout","line-cap",c,p,y)),G.setLineJoin(ii(C,"layout","line-join",c,p,y)),G.setMiterLimit(ii(C,"layout","line-miter-limit",c,p,y)),G.setColor(E),G.setWidth(B),G.setLineDash(w["line-dasharray"]?ii(C,"paint","line-dasharray",c,p,y).map((function(e){return e*B})):null),T.setZIndex(O))}var F=!1,z=null,V=0,W=void 0,q=void 0,H=void 0;if((1==d||2==d)&&"icon-image"in b){var Y=ii(C,"layout","icon-image",c,p,y);if(Y){W="string"==typeof Y?si(Y,o):Y.toString();var J=void 0;if(s&&i&&i[W]){var Z=ii(C,"layout","icon-rotation-alignment",c,p,y);if(2==d){var K=e.getGeometry();if(K.getFlatMidpoint||K.getFlatMidpoints){var X=K.getExtent();if(Math.sqrt(Math.max(Math.pow((X[2]-X[0])/t,2),Math.pow((X[3]-X[1])/t,2)))>150){var Q="MultiLineString"===K.getType()?K.getFlatMidpoints():K.getFlatMidpoint();if(Zn||(Zn=new Tn("Point",Jn=[NaN,NaN],[],{},null)),J=Zn,Jn[0]=Q[0],Jn[1]=Q[1],"line"===(ke=ii(C,"layout","symbol-placement",c,p,y))&&"map"===Z)for(var $=K.getStride(),ee=K.getFlatCoordinates(),te=0,oe=ee.length-$;te=se&&Q[0]<=ce&&Q[1]>=le&&Q[1]<=ue){V=Math.atan2(ie-ae,re-ne);break}}}}}if(2!==d||J){var de=ii(C,"layout","icon-size",c,p,y),pe=void 0!==w["icon-color"]?ii(C,"paint","icon-color",c,p,y):null;if(!pe||0!==pe.a){var he=W+"."+de;if(null!==pe&&(he+="."+pe),!(q=m[he])){var ge=i[W];q=new St.a({color:pe?[255*pe.r,255*pe.g,255*pe.b,pe.a]:void 0,img:s,imgSize:l,size:[ge.width,ge.height],offset:[ge.x,ge.y],rotateWithView:"map"===Z,scale:de/ge.pixelRatio}),m[he]=q}}q&&(++g,(T=x[g])&&T.getImage()&&!T.getFill()&&!T.getStroke()||(T=new bt.a,x[g]=T),T.setGeometry(J),q.setRotation(V+Nn(ii(C,"layout","icon-rotate",c,p,y))),q.setOpacity(ii(C,"paint","icon-opacity",c,p,y)),q.setAnchor(ti[ii(C,"layout","icon-anchor",c,p,y)]),T.setImage(q),z=T.getText(),T.setText(void 0),T.setZIndex(O),F=!0,H=!1)}else H=!0}}}if(1==d&&"circle-radius"in w){++g,(T=x[g])&&T.getImage()&&!T.getFill()&&!T.getStroke()||(T=new bt.a,x[g]=T);var me=ii(C,"paint","circle-radius",c,p,y),fe=ri(ii(C,"paint","circle-stroke-color",c,p,y),ii(C,"paint","circle-stroke-opacity",c,p,y)),ye=ri(ii(C,"paint","circle-color",c,p,y),ii(C,"paint","circle-opacity",c,p,y)),Ae=ii(C,"paint","circle-stroke-width",c,p,y),ve=me+"."+fe+"."+ye+"."+Ae;(q=m[ve])||(q=new _t.a({radius:me,stroke:fe&&Ae>0?new kt.a({width:Ae,color:fe}):void 0,fill:ye?new Pt.a({color:ye}):void 0}),m[ve]=q),T.setImage(q),z=T.getText(),T.setText(void 0),T.setGeometry(void 0),T.setZIndex(O),F=!0}var Ce=void 0;if("text-field"in b)Ce=si(ii(C,"layout","text-field",c,p,y).toString(),o).trim(),S=ii(C,"paint","text-opacity",c,p,y);if(Ce&&S&&!H){F||(++g,(T=x[g])&&T.getText()&&!T.getFill()&&!T.getStroke()||(T=new bt.a,x[g]=T),T.setImage(void 0),T.setGeometry(void 0)),T.getText()||T.setText(z||new Rt.a({padding:[2,2,2,2]})),z=T.getText();var Ie=Math.round(ii(C,"layout","text-size",c,p,y)),be=ii(C,"layout","text-font",c,p,y),we=ii(C,"layout","text-line-height",c,p,y),_e=Ln()(a?a(be):be,Ie,we),Ee=b["text-transform"];"uppercase"==Ee?Ce=Ce.toUpperCase():"lowercase"==Ee&&(Ce=Ce.toLowerCase());var Se=ii(C,"layout","text-max-width",c,p,y),Me=ii(C,"layout","text-letter-spacing",c,p,y),Pe=2==d?Wn(Ce,Me):function e(t,o,n,i){if(-1!==t.indexOf("\n")){for(var r=t.split("\n"),a=[],s=0,l=r.length;s1){var p=qn();p.font=o;var h=p.measureText("M").width*n,g="";for(a=[],s=0,l=d.length;s1;++s){var y=a[s];if(Hn(y,i)<.35*h){var A=s>0?Hn(a[s-1],i):1/0,v=s.7*h&&Hn(I,i)<.6*h){var b=C.split(" "),w=b.pop();Hn(w,i)<.2*h&&(a[s]=b.join(" "),a[s+1]=w+" "+I),l-=1}}u=a.join("\n")}else u=t;u=Wn(u,i),Yn[c]=u}return u}(Ce,_e,Se,Me);z.setText(Pe),z.setFont(_e),z.setRotation(Nn(ii(C,"layout","text-rotate",c,p,y)));var xe=ii(C,"layout","text-anchor",c,p,y),ke=F||1==d?"point":ii(C,"layout","symbol-placement",c,p,y);z.setPlacement(ke);var Ge=ii(C,"paint","text-halo-width",c,p,y),Re=ii(C,"layout","text-offset",c,p,y),Te=ii(C,"paint","text-translate",c,p,y),Oe=0,Le=0;if("point"==ke){var De="center";-1!==xe.indexOf("left")?(De="left",Le=Ge):-1!==xe.indexOf("right")&&(De="right",Le=-Ge),z.setTextAlign(De);var je=ii(C,"layout","text-rotation-alignment",c,p,y);z.setRotateWithView("map"==je)}else z.setMaxAngle(Nn(ii(C,"layout","text-max-angle",c,p,y))*Ce.length/Pe.length),z.setTextAlign(),z.setRotateWithView(!1);var Ue="middle";0==xe.indexOf("bottom")?(Ue="bottom",Oe=-Ge-.5*(we-1)*Ie):0==xe.indexOf("top")&&(Ue="top",Oe=Ge+.5*(we-1)*Ie),z.setTextBaseline(Ue),z.setOffsetX(Re[0]*Ie+Le+Te[0]),z.setOffsetY(Re[1]*Ie+Oe+Te[1]),P.setColor(ri(ii(C,"paint","text-color",c,p,y),S)),z.setFill(P);var Ne=ri(ii(C,"paint","text-halo-color",c,p,y),S);if(Ne){M.setColor(Ne),Ge*=2;var Be=.5*Ie;M.setWidth(Ge<=Be?Ge:Be),z.setStroke(M)}else z.setStroke(void 0);var Fe=ii(C,"layout","text-padding",c,p,y),ze=z.getPadding();Fe!==ze[0]&&(ze[0]=Fe,ze[1]=Fe,ze[2]=Fe,ze[3]=Fe),T.setZIndex(O)}}},C=0,I=r.length;C-1?(x.length=g+1,li&&("function"==typeof e.set?e.set("mapbox-layer",u):e.getProperties()["mapbox-layer"]=u),x):void 0}};return e.setStyle(k),e.set("mapbox-source",d),e.set("mapbox-layers",g),k},ui=o(69),di=o.n(ui);o(70);function pi(e){return(pi="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var hi,gi=/font-family: ?([^;]*);/,mi=/("|')/g;function fi(e){if(!hi){hi={};for(var t=document.styleSheets,o=0,n=t.length;o2?n[2]:""):e+o}function wi(e,t,o,n,i){return new Promise((function(r,a){if("object"!=pi(t)&&(t=JSON.parse(t)),8!=t.version)return a(new Error("glStyle version 8 required."));if(!(e instanceof Do.a||e instanceof xo.a))return a(new Error("Can only apply to VectorLayer or VectorTileLayer"));var s,l,c;function u(){c||t.sprite&&!s?c?(e.setStyle(c),r()):a(new Error("Something went wrong trying to apply style.")):(c=ci(e,t,o,i,s,l,vi),e.getStyle()?r():a(new Error("Nothing to show for source [".concat(o,"]"))))}if(t.sprite){var d=.5==(window.devicePixelRatio>=1.5?.5:1)?"@2x":"",p=bi(t.sprite,n,d+".json");fetch(p,{credentials:"same-origin"}).then((function(e){return e.ok||""===d?e:(p=bi(t.sprite,n,".json"),fetch(p,{credentials:"same-origin"}))})).then((function(e){if(e.ok)return e.json();a(new Error("Problem fetching sprite from ".concat(p,": ").concat(e.statusText)))})).then((function(e){if(void 0===e)return a(new Error("No sprites found."));s=e,l=bi(t.sprite,n,d+".png"),u()})).catch((function(e){a(new Error("Sprites cannot be loaded: ".concat(p,": ").concat(e.message)))}))}else u()}))}new no.a;var _i=function(e){function t(o,n){if(!(this instanceof t))throw new TypeError("ERROR CLASS_CONSTRUCTOR");if(!o.layer)throw new Error("ERROR PARAM_MISSING : layer");if("string"!=typeof o.layer)throw new Error("ERROR WRONG TYPE : layer");if(this.layerName=o.layer,this.styleName=o.style,this.sourceId=o.source,void 0===o.ssl&&(o.ssl=!0),this.protocol=!1===o.ssl?"http://":"https://",!ho.a.isConfigLoaded())throw new Error("ERROR : contract key configuration has to be loaded to load Geoportal layers.");var i=this.layerName+"$GEOPORTAIL:GPP:TMS",r=ho.a.configuration.getLayerConf(i);if(!r)throw new Error("ERROR : Layer ID not found into the catalogue !?");this.styleUrl=null,this.styleTitle="";for(var a=0;a>1,u=-7,d=o?i-1:0,p=o?-1:1,h=e[t+d];for(d+=p,r=h&(1<<-u)-1,h>>=-u,u+=s;u>0;r=256*r+e[t+d],d+=p,u-=8);for(a=r&(1<<-u)-1,r>>=-u,u+=n;u>0;a=256*a+e[t+d],d+=p,u-=8);if(0===r)r=1-c;else{if(r===l)return a?NaN:1/0*(h?-1:1);a+=Math.pow(2,n),r-=c}return(h?-1:1)*a*Math.pow(2,r-n)},t.write=function(e,t,o,n,i,r){var a,s,l,c=8*r-i-1,u=(1<>1,p=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,h=n?0:r-1,g=n?1:-1,m=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,a=u):(a=Math.floor(Math.log(t)/Math.LN2),t*(l=Math.pow(2,-a))<1&&(a--,l*=2),(t+=a+d>=1?p/l:p*Math.pow(2,1-d))*l>=2&&(a++,l/=2),a+d>=u?(s=0,a=u):a+d>=1?(s=(t*l-1)*Math.pow(2,i),a+=d):(s=t*Math.pow(2,d-1)*Math.pow(2,i),a=0));i>=8;e[o+h]=255&s,h+=g,s/=256,i-=8);for(a=a<0;e[o+h]=255&a,h+=g,a/=256,c-=8);e[o+h-g]|=128*m}},function(e,t){var o={}.toString;e.exports=Array.isArray||function(e){return"[object Array]"==o.call(e)}},function(e,t,o){e.exports=function(){"use strict";var e=484813681109536e-20,t=Math.PI/2,o=.017453292519943295,n=57.29577951308232,i=Math.PI/4,r=2*Math.PI,a=3.14159265359,s={greenwich:0,lisbon:-9.131906111111,paris:2.337229166667,bogota:-74.080916666667,madrid:-3.687938888889,rome:12.452333333333,bern:7.439583333333,jakarta:106.807719444444,ferro:-17.666666666667,brussels:4.367975,stockholm:18.058277777778,athens:23.7163375,oslo:10.722916666667},l={ft:{to_meter:.3048},"us-ft":{to_meter:1200/3937}},c=/[\s_\-\/\(\)]/g;function u(e,t){if(e[t])return e[t];for(var o,n=Object.keys(e),i=t.toLowerCase().replace(c,""),r=-1;++r=this.text.length)return;e=this.text[this.place++]}switch(this.state){case 1:return this.neutral(e);case 2:return this.keyword(e);case 4:return this.quoted(e);case 5:return this.afterquote(e);case 3:return this.number(e);case-1:return}},y.prototype.afterquote=function(e){if('"'===e)return this.word+='"',void(this.state=4);if(m.test(e))return this.word=this.word.trim(),void this.afterItem(e);throw new Error("havn't handled \""+e+'" in afterquote yet, index '+this.place)},y.prototype.afterItem=function(e){return","===e?(null!==this.word&&this.currentObject.push(this.word),this.word=null,void(this.state=1)):"]"===e?(this.level--,null!==this.word&&(this.currentObject.push(this.word),this.word=null),this.state=1,this.currentObject=this.stack.pop(),void(this.currentObject||(this.state=-1))):void 0},y.prototype.number=function(e){if(!f.test(e)){if(m.test(e))return this.word=parseFloat(this.word),void this.afterItem(e);throw new Error("havn't handled \""+e+'" in number yet, index '+this.place)}this.word+=e},y.prototype.quoted=function(e){'"'!==e?this.word+=e:this.state=5},y.prototype.keyword=function(e){if(g.test(e))this.word+=e;else{if("["===e){var t=[];return t.push(this.word),this.level++,null===this.root?this.root=t:this.currentObject.push(t),this.stack.push(this.currentObject),this.currentObject=t,void(this.state=1)}if(!m.test(e))throw new Error("havn't handled \""+e+'" in keyword yet, index '+this.place);this.afterItem(e)}},y.prototype.neutral=function(e){if(h.test(e))return this.word=e,void(this.state=2);if('"'===e)return this.word="",void(this.state=4);if(f.test(e))return this.word=e,void(this.state=3);if(!m.test(e))throw new Error("havn't handled \""+e+'" in neutral yet, index '+this.place);this.afterItem(e)},y.prototype.output=function(){for(;this.place0?90:-90),e.lat_ts=e.lat1)}(i),i};function b(e){var t=this;if(2===arguments.length){var o=arguments[1];"string"==typeof o?"+"===o.charAt(0)?b[e]=d(arguments[1]):b[e]=I(arguments[1]):b[e]=o}else if(1===arguments.length){if(Array.isArray(e))return e.map((function(e){Array.isArray(e)?b.apply(t,e):b(e)}));if("string"==typeof e){if(e in b)return b[e]}else"EPSG"in e?b["EPSG:"+e.EPSG]=e:"ESRI"in e?b["ESRI:"+e.ESRI]=e:"IAU2000"in e?b["IAU2000:"+e.IAU2000]=e:console.log(e);return}}!function(e){e("EPSG:4326","+title=WGS 84 (long/lat) +proj=longlat +ellps=WGS84 +datum=WGS84 +units=degrees"),e("EPSG:4269","+title=NAD83 (long/lat) +proj=longlat +a=6378137.0 +b=6356752.31414036 +ellps=GRS80 +datum=NAD83 +units=degrees"),e("EPSG:3857","+title=WGS 84 / Pseudo-Mercator +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +no_defs"),e.WGS84=e["EPSG:4326"],e["EPSG:3785"]=e["EPSG:3857"],e.GOOGLE=e["EPSG:3857"],e["EPSG:900913"]=e["EPSG:3857"],e["EPSG:102113"]=e["EPSG:3857"]}(b);var w=["PROJECTEDCRS","PROJCRS","GEOGCS","GEOCCS","PROJCS","LOCAL_CS","GEODCRS","GEODETICCRS","GEODETICDATUM","ENGCRS","ENGINEERINGCRS"],E=["3857","900913","3785","102113"];function _(e){if(!function(e){return"string"==typeof e}(e))return e;if(function(e){return e in b}(e))return b[e];if(function(e){return w.some((function(t){return e.indexOf(t)>-1}))}(e)){var t=I(e);if(function(e){var t=u(e,"authority");if(t){var o=u(t,"epsg");return o&&E.indexOf(o)>-1}}(t))return b["EPSG:3857"];var o=function(e){var t=u(e,"extension");if(t)return u(t,"proj4")}(t);return o?d(o):t}return function(e){return"+"===e[0]}(e)?d(e):void 0}var S=function(e,t){var o,n;if(e=e||{},!t)return e;for(n in t)void 0!==(o=t[n])&&(e[n]=o);return e},M=function(e,t,o){var n=e*t;return o/Math.sqrt(1-n*n)},x=function(e){return e<0?-1:1},P=function(e){return Math.abs(e)<=a?e:e-x(e)*r},k=function(e,o,n){var i=e*n,r=.5*e;return i=Math.pow((1-i)/(1+i),r),Math.tan(.5*(t-o))/i},G=function(e,o){for(var n,i,r=.5*e,a=t-2*Math.atan(o),s=0;s<=15;s++)if(n=e*Math.sin(a),a+=i=t-2*Math.atan(o*Math.pow((1-n)/(1+n),r))-a,Math.abs(i)<=1e-10)return a;return-9999};function R(e){return e}var T=[{init:function(){var e=this.b/this.a;this.es=1-e*e,"x0"in this||(this.x0=0),"y0"in this||(this.y0=0),this.e=Math.sqrt(this.es),this.lat_ts?this.sphere?this.k0=Math.cos(this.lat_ts):this.k0=M(this.e,Math.sin(this.lat_ts),Math.cos(this.lat_ts)):this.k0||(this.k?this.k0=this.k:this.k0=1)},forward:function(e){var o,r,a=e.x,s=e.y;if(s*n>90&&s*n<-90&&a*n>180&&a*n<-180)return null;if(Math.abs(Math.abs(s)-t)<=1e-10)return null;if(this.sphere)o=this.x0+this.a*this.k0*P(a-this.long0),r=this.y0+this.a*this.k0*Math.log(Math.tan(i+.5*s));else{var l=Math.sin(s),c=k(this.e,s,l);o=this.x0+this.a*this.k0*P(a-this.long0),r=this.y0-this.a*this.k0*Math.log(c)}return e.x=o,e.y=r,e},inverse:function(e){var o,n,i=e.x-this.x0,r=e.y-this.y0;if(this.sphere)n=t-2*Math.atan(Math.exp(-r/(this.a*this.k0)));else{var a=Math.exp(-r/(this.a*this.k0));if(-9999===(n=G(this.e,a)))return null}return o=P(this.long0+i/(this.a*this.k0)),e.x=o,e.y=n,e},names:["Mercator","Popular Visualisation Pseudo Mercator","Mercator_1SP","Mercator_Auxiliary_Sphere","merc"]},{init:function(){},forward:R,inverse:R,names:["longlat","identity"]}],O={},L=[];function D(e,t){var o=L.length;return e.names?(L[o]=e,e.names.forEach((function(e){O[e.toLowerCase()]=o})),this):(console.log(t),!0)}var N={start:function(){T.forEach(D)},add:D,get:function(e){if(!e)return!1;var t=e.toLowerCase();return void 0!==O[t]&&L[O[t]]?L[O[t]]:void 0}},j={MERIT:{a:6378137,rf:298.257,ellipseName:"MERIT 1983"},SGS85:{a:6378136,rf:298.257,ellipseName:"Soviet Geodetic System 85"},GRS80:{a:6378137,rf:298.257222101,ellipseName:"GRS 1980(IUGG, 1980)"},IAU76:{a:6378140,rf:298.257,ellipseName:"IAU 1976"},airy:{a:6377563.396,b:6356256.91,ellipseName:"Airy 1830"},APL4:{a:6378137,rf:298.25,ellipseName:"Appl. Physics. 1965"},NWL9D:{a:6378145,rf:298.25,ellipseName:"Naval Weapons Lab., 1965"},mod_airy:{a:6377340.189,b:6356034.446,ellipseName:"Modified Airy"},andrae:{a:6377104.43,rf:300,ellipseName:"Andrae 1876 (Den., Iclnd.)"},aust_SA:{a:6378160,rf:298.25,ellipseName:"Australian Natl & S. Amer. 1969"},GRS67:{a:6378160,rf:298.247167427,ellipseName:"GRS 67(IUGG 1967)"},bessel:{a:6377397.155,rf:299.1528128,ellipseName:"Bessel 1841"},bess_nam:{a:6377483.865,rf:299.1528128,ellipseName:"Bessel 1841 (Namibia)"},clrk66:{a:6378206.4,b:6356583.8,ellipseName:"Clarke 1866"},clrk80:{a:6378249.145,rf:293.4663,ellipseName:"Clarke 1880 mod."},clrk58:{a:6378293.645208759,rf:294.2606763692654,ellipseName:"Clarke 1858"},CPM:{a:6375738.7,rf:334.29,ellipseName:"Comm. des Poids et Mesures 1799"},delmbr:{a:6376428,rf:311.5,ellipseName:"Delambre 1810 (Belgium)"},engelis:{a:6378136.05,rf:298.2566,ellipseName:"Engelis 1985"},evrst30:{a:6377276.345,rf:300.8017,ellipseName:"Everest 1830"},evrst48:{a:6377304.063,rf:300.8017,ellipseName:"Everest 1948"},evrst56:{a:6377301.243,rf:300.8017,ellipseName:"Everest 1956"},evrst69:{a:6377295.664,rf:300.8017,ellipseName:"Everest 1969"},evrstSS:{a:6377298.556,rf:300.8017,ellipseName:"Everest (Sabah & Sarawak)"},fschr60:{a:6378166,rf:298.3,ellipseName:"Fischer (Mercury Datum) 1960"},fschr60m:{a:6378155,rf:298.3,ellipseName:"Fischer 1960"},fschr68:{a:6378150,rf:298.3,ellipseName:"Fischer 1968"},helmert:{a:6378200,rf:298.3,ellipseName:"Helmert 1906"},hough:{a:6378270,rf:297,ellipseName:"Hough"},intl:{a:6378388,rf:297,ellipseName:"International 1909 (Hayford)"},kaula:{a:6378163,rf:298.24,ellipseName:"Kaula 1961"},lerch:{a:6378139,rf:298.257,ellipseName:"Lerch 1979"},mprts:{a:6397300,rf:191,ellipseName:"Maupertius 1738"},new_intl:{a:6378157.5,b:6356772.2,ellipseName:"New International 1967"},plessis:{a:6376523,rf:6355863,ellipseName:"Plessis 1817 (France)"},krass:{a:6378245,rf:298.3,ellipseName:"Krassovsky, 1942"},SEasia:{a:6378155,b:6356773.3205,ellipseName:"Southeast Asia"},walbeck:{a:6376896,b:6355834.8467,ellipseName:"Walbeck"},WGS60:{a:6378165,rf:298.3,ellipseName:"WGS 60"},WGS66:{a:6378145,rf:298.25,ellipseName:"WGS 66"},WGS7:{a:6378135,rf:298.26,ellipseName:"WGS 72"}},U=j.WGS84={a:6378137,rf:298.257223563,ellipseName:"WGS 84"};j.sphere={a:6370997,b:6370997,ellipseName:"Normal Sphere (r=6370997)"};var B={wgs84:{towgs84:"0,0,0",ellipse:"WGS84",datumName:"WGS84"},ch1903:{towgs84:"674.374,15.056,405.346",ellipse:"bessel",datumName:"swiss"},ggrs87:{towgs84:"-199.87,74.79,246.62",ellipse:"GRS80",datumName:"Greek_Geodetic_Reference_System_1987"},nad83:{towgs84:"0,0,0",ellipse:"GRS80",datumName:"North_American_Datum_1983"},nad27:{nadgrids:"@conus,@alaska,@ntv2_0.gsb,@ntv1_can.dat",ellipse:"clrk66",datumName:"North_American_Datum_1927"},potsdam:{towgs84:"598.1,73.7,418.2,0.202,0.045,-2.455,6.7",ellipse:"bessel",datumName:"Potsdam Rauenberg 1950 DHDN"},carthage:{towgs84:"-263.0,6.0,431.0",ellipse:"clark80",datumName:"Carthage 1934 Tunisia"},hermannskogel:{towgs84:"577.326,90.129,463.919,5.137,1.474,5.297,2.4232",ellipse:"bessel",datumName:"Hermannskogel"},osni52:{towgs84:"482.530,-130.596,564.557,-1.042,-0.214,-0.631,8.15",ellipse:"airy",datumName:"Irish National"},ire65:{towgs84:"482.530,-130.596,564.557,-1.042,-0.214,-0.631,8.15",ellipse:"mod_airy",datumName:"Ireland 1965"},rassadiran:{towgs84:"-133.63,-157.5,-158.62",ellipse:"intl",datumName:"Rassadiran"},nzgd49:{towgs84:"59.47,-5.04,187.44,0.47,-0.1,1.024,-4.5993",ellipse:"intl",datumName:"New Zealand Geodetic Datum 1949"},osgb36:{towgs84:"446.448,-125.157,542.060,0.1502,0.2470,0.8421,-20.4894",ellipse:"airy",datumName:"Airy 1830"},s_jtsk:{towgs84:"589,76,480",ellipse:"bessel",datumName:"S-JTSK (Ferro)"},beduaram:{towgs84:"-106,-87,188",ellipse:"clrk80",datumName:"Beduaram"},gunung_segara:{towgs84:"-403,684,41",ellipse:"bessel",datumName:"Gunung Segara Jakarta"},rnb72:{towgs84:"106.869,-52.2978,103.724,-0.33657,0.456955,-1.84218,1",ellipse:"intl",datumName:"Reseau National Belge 1972"}},F={};function z(e){if(0===e.length)return null;var t="@"===e[0];return t&&(e=e.slice(1)),"null"===e?{name:"null",mandatory:!t,grid:null,isNull:!0}:{name:e,mandatory:!t,grid:F[e]||null,isNull:!1}}function V(e){return e/3600*Math.PI/180}function q(e,t,o){return String.fromCharCode.apply(null,new Uint8Array(e.buffer.slice(t,o)))}function W(e){return e.map((function(e){return[V(e.longitudeShift),V(e.latitudeShift)]}))}function H(e,t,o){return{name:q(e,t+8,t+16).trim(),parent:q(e,t+24,t+24+8).trim(),lowerLatitude:e.getFloat64(t+72,o),upperLatitude:e.getFloat64(t+88,o),lowerLongitude:e.getFloat64(t+104,o),upperLongitude:e.getFloat64(t+120,o),latitudeInterval:e.getFloat64(t+136,o),longitudeInterval:e.getFloat64(t+152,o),gridNodeCount:e.getInt32(t+168,o)}}function Y(e,t,o,n){for(var i=t+176,r=[],a=0;a3&&(0===l.datum_params[3]&&0===l.datum_params[4]&&0===l.datum_params[5]&&0===l.datum_params[6]||(l.datum_type=2,l.datum_params[3]*=e,l.datum_params[4]*=e,l.datum_params[5]*=e,l.datum_params[6]=l.datum_params[6]/1e6+1))),s&&(l.datum_type=3,l.grids=s),l.a=n,l.b=i,l.es=r,l.ep2=a,l}(n.datumCode,n.datum_params,g.a,g.b,m.es,m.ep2,f);S(this,n),S(this,i),this.a=g.a,this.b=g.b,this.rf=g.rf,this.sphere=g.sphere,this.es=m.es,this.e=m.e,this.ep2=m.ep2,this.datum=y,this.init(),o(null,this)}else o(t)}else o(t)}function Z(e,o,n){var i,r,a,s,l=e.x,c=e.y,u=e.z?e.z:0;if(c<-t&&c>-1.001*t)c=-t;else if(c>t&&c<1.001*t)c=t;else{if(c<-t)return{x:-1/0,y:-1/0,z:e.z};if(c>t)return{x:1/0,y:1/0,z:e.z}}return l>Math.PI&&(l-=2*Math.PI),r=Math.sin(c),s=Math.cos(c),a=r*r,{x:((i=n/Math.sqrt(1-o*a))+u)*s*Math.cos(l),y:(i+u)*s*Math.sin(l),z:(i*(1-o)+u)*r}}function K(e,t,o,n){var i,r,a,s,l,c,u,d,p,h,g,m,f,y,A,v=e.x,C=e.y,I=e.z?e.z:0;if(i=Math.sqrt(v*v+C*C),r=Math.sqrt(v*v+C*C+I*I),i/o<1e-12){if(y=0,r/o<1e-12)return A=-n,{x:e.x,y:e.y,z:e.z}}else y=Math.atan2(C,v);a=I/r,d=(s=i/r)*(1-t)*(l=1/Math.sqrt(1-t*(2-t)*s*s)),p=a*l,f=0;do{f++,c=t*(u=o/Math.sqrt(1-t*p*p))/(u+(A=i*d+I*p-u*(1-t*p*p))),m=(g=a*(l=1/Math.sqrt(1-c*(2-c)*s*s)))*d-(h=s*(1-c)*l)*p,d=h,p=g}while(m*m>1e-24&&f<30);return{x:y,y:Math.atan(g/Math.abs(h)),z:A}}function X(e){return 1===e||2===e}J.projections=N,J.projections.start();var Q=function(e,t,o){if(function(e,t){return e.datum_type===t.datum_type&&!(e.a!==t.a||Math.abs(e.es-t.es)>5e-11)&&(1===e.datum_type?e.datum_params[0]===t.datum_params[0]&&e.datum_params[1]===t.datum_params[1]&&e.datum_params[2]===t.datum_params[2]:2!==e.datum_type||e.datum_params[0]===t.datum_params[0]&&e.datum_params[1]===t.datum_params[1]&&e.datum_params[2]===t.datum_params[2]&&e.datum_params[3]===t.datum_params[3]&&e.datum_params[4]===t.datum_params[4]&&e.datum_params[5]===t.datum_params[5]&&e.datum_params[6]===t.datum_params[6])}(e,t))return o;if(5===e.datum_type||5===t.datum_type)return o;var n=e.a,i=e.es;if(3===e.datum_type){if(0!==$(e,!1,o))return;n=6378137,i=.0066943799901413165}var r=t.a,a=t.b,s=t.es;return 3===t.datum_type&&(r=6378137,a=6356752.314,s=.0066943799901413165),i!==s||n!==r||X(e.datum_type)||X(t.datum_type)?(o=Z(o,i,n),X(e.datum_type)&&(o=function(e,t,o){if(1===t)return{x:e.x+o[0],y:e.y+o[1],z:e.z+o[2]};if(2===t){var n=o[0],i=o[1],r=o[2],a=o[3],s=o[4],l=o[5],c=o[6];return{x:c*(e.x-l*e.y+s*e.z)+n,y:c*(l*e.x+e.y-a*e.z)+i,z:c*(-s*e.x+a*e.y+e.z)+r}}}(o,e.datum_type,e.datum_params)),X(t.datum_type)&&(o=function(e,t,o){if(1===t)return{x:e.x-o[0],y:e.y-o[1],z:e.z-o[2]};if(2===t){var n=o[0],i=o[1],r=o[2],a=o[3],s=o[4],l=o[5],c=o[6],u=(e.x-n)/c,d=(e.y-i)/c,p=(e.z-r)/c;return{x:u+l*d-s*p,y:-l*u+d+a*p,z:s*u-a*d+p}}}(o,t.datum_type,t.datum_params)),o=K(o,s,r,a),3!==t.datum_type||0===$(t,!0,o)?o:void 0):o};function $(e,t,o){if(null===e.grids||0===e.grids.length)return console.log("Grid shift grids not found"),-1;for(var i={x:-o.x,y:o.y},r={x:Number.NaN,y:Number.NaN},a=[],s=0;si.y||d>i.x||g1e-12&&Math.abs(a.y)>1e-12);if(l<0)return console.log("Inverse grid shift iterator failed to converge."),n;n.x=P(r.x+o.ll[0]),n.y=r.y+o.ll[1]}else isNaN(r.x)||(n.x=e.x+r.x,n.y=e.y+r.y);return n}function te(e,t){var o,n={x:e.x/t.del[0],y:e.y/t.del[1]},i=Math.floor(n.x),r=Math.floor(n.y),a=n.x-1*i,s=n.y-1*r,l={x:Number.NaN,y:Number.NaN};if(i<0||i>=t.lim[0])return l;if(r<0||r>=t.lim[1])return l;o=r*t.lim[0]+i;var c=t.cvs[o][0],u=t.cvs[o][1];o++;var d=t.cvs[o][0],p=t.cvs[o][1];o+=t.lim[0];var h=t.cvs[o][0],g=t.cvs[o][1];o--;var m=t.cvs[o][0],f=t.cvs[o][1],y=a*s,A=a*(1-s),v=(1-a)*(1-s),C=(1-a)*s;return l.x=v*c+A*d+C*m+y*h,l.y=v*u+A*p+C*f+y*g,l}var oe=function(e,t,o){var n,i,r,a=o.x,s=o.y,l=o.z||0,c={};for(r=0;r<3;r++)if(!t||2!==r||void 0!==o.z)switch(0===r?(n=a,i=-1!=="ew".indexOf(e.axis[r])?"x":"y"):1===r?(n=s,i=-1!=="ns".indexOf(e.axis[r])?"y":"x"):(n=l,i="z"),e.axis[r]){case"e":c[i]=n;break;case"w":c[i]=-n;break;case"n":c[i]=n;break;case"s":c[i]=-n;break;case"u":void 0!==o[i]&&(c.z=n);break;case"d":void 0!==o[i]&&(c.z=-n);break;default:return null}return c},ne=function(e){var t={x:e[0],y:e[1]};return e.length>2&&(t.z=e[2]),e.length>3&&(t.m=e[3]),t};function ie(e){if("function"==typeof Number.isFinite){if(Number.isFinite(e))return;throw new TypeError("coordinates must be finite numbers")}if("number"!=typeof e||e!=e||!isFinite(e))throw new TypeError("coordinates must be finite numbers")}function re(e,t,i,r){var a;if(Array.isArray(i)&&(i=ne(i)),function(e){ie(e.x),ie(e.y)}(i),e.datum&&t.datum&&function(e,t){return(1===e.datum.datum_type||2===e.datum.datum_type)&&"WGS84"!==t.datumCode||(1===t.datum.datum_type||2===t.datum.datum_type)&&"WGS84"!==e.datumCode}(e,t)&&(i=re(e,a=new J("WGS84"),i,r),e=a),r&&"enu"!==e.axis&&(i=oe(e,!1,i)),"longlat"===e.projName)i={x:i.x*o,y:i.y*o,z:i.z||0};else if(e.to_meter&&(i={x:i.x*e.to_meter,y:i.y*e.to_meter,z:i.z||0}),!(i=e.inverse(i)))return;if(e.from_greenwich&&(i.x+=e.from_greenwich),i=Q(e.datum,t.datum,i))return t.from_greenwich&&(i={x:i.x-t.from_greenwich,y:i.y,z:i.z||0}),"longlat"===t.projName?i={x:i.x*n,y:i.y*n,z:i.z||0}:(i=t.forward(i),t.to_meter&&(i={x:i.x/t.to_meter,y:i.y/t.to_meter,z:i.z||0})),r&&"enu"!==t.axis?oe(t,!0,i):i}var ae=J("WGS84");function se(e,t,o,n){var i,r,a;return Array.isArray(o)?(i=re(e,t,o,n)||{x:NaN,y:NaN},o.length>2?void 0!==e.name&&"geocent"===e.name||void 0!==t.name&&"geocent"===t.name?"number"==typeof i.z?[i.x,i.y,i.z].concat(o.splice(3)):[i.x,i.y,o[2]].concat(o.splice(3)):[i.x,i.y].concat(o.splice(2)):[i.x,i.y]):(r=re(e,t,o,n),2===(a=Object.keys(o)).length||a.forEach((function(n){if(void 0!==e.name&&"geocent"===e.name||void 0!==t.name&&"geocent"===t.name){if("x"===n||"y"===n||"z"===n)return}else if("x"===n||"y"===n)return;r[n]=o[n]})),r)}function le(e){return e instanceof J?e:e.oProj?e.oProj:J(e)}function ce(e,t,o){e=le(e);var n,i=!1;return void 0===t?(t=e,e=ae,i=!0):(void 0!==t.x||Array.isArray(t))&&(o=t,t=e,e=ae,i=!0),t=le(t),o?se(e,t,o):(n={forward:function(o,n){return se(e,t,o,n)},inverse:function(o,n){return se(t,e,o,n)}},i&&(n.oProj=t),n)}var ue=65,de=73,pe=79,he={forward:ge,inverse:function(e){var t=Ae(Ce(e.toUpperCase()));return t.lat&&t.lon?[t.lon,t.lat,t.lon,t.lat]:[t.left,t.bottom,t.right,t.top]},toPoint:me};function ge(e,t){return t=t||5,function(e,t){var o,n,i,r,a,s,l,c,u,d,p,h,g,m,f="00000"+e.easting,y="00000"+e.northing;return e.zoneNumber+e.zoneLetter+(u=e.easting,d=e.northing,p=e.zoneNumber,h=ve(p),g=Math.floor(u/1e5),m=Math.floor(d/1e5)%20,o=g,n=m,r="AJSAJS".charCodeAt(i=h-1),a="AFAFAF".charCodeAt(i),c=!1,(s=r+o-1)>90&&(s=s-90+ue-1,c=!0),(s===de||rde||(s>de||rpe||(s>pe||r90&&(s=s-90+ue-1),(l=a+n)>86?(l=l-86+ue-1,c=!0):c=!1,(l===de||ade||(l>de||ape||(l>pe||a86&&(l=l-86+ue-1),String.fromCharCode(s)+String.fromCharCode(l))+f.substr(f.length-5,t)+y.substr(y.length-5,t)}(function(e){var t,o,n,i,r,a,s,l=e.lat,c=e.lon,u=6378137,d=fe(l),p=fe(c);s=Math.floor((c+180)/6)+1,180===c&&(s=60),l>=56&&l<64&&c>=3&&c<12&&(s=32),l>=72&&l<84&&(c>=0&&c<9?s=31:c>=9&&c<21?s=33:c>=21&&c<33?s=35:c>=33&&c<42&&(s=37)),a=fe(6*(s-1)-180+3),t=u/Math.sqrt(1-.00669438*Math.sin(d)*Math.sin(d)),o=Math.tan(d)*Math.tan(d),n=.006739496752268451*Math.cos(d)*Math.cos(d),i=Math.cos(d)*(p-a),r=u*(.9983242984503243*d-.002514607064228144*Math.sin(2*d)+2639046602129982e-21*Math.sin(4*d)-3.418046101696858e-9*Math.sin(6*d));var h,g,m=.9996*t*(i+(1-o+n)*i*i*i/6+(5-18*o+o*o+72*n-.39089081163157013)*i*i*i*i*i/120)+5e5,f=.9996*(r+t*Math.tan(d)*(i*i/2+(5-o+9*n+4*n*n)*i*i*i*i/24+(61-58*o+o*o+600*n-2.2240339282485886)*i*i*i*i*i*i/720));return l<0&&(f+=1e7),{northing:Math.round(f),easting:Math.round(m),zoneNumber:s,zoneLetter:(h=l,g="Z",84>=h&&h>=72?g="X":72>h&&h>=64?g="W":64>h&&h>=56?g="V":56>h&&h>=48?g="U":48>h&&h>=40?g="T":40>h&&h>=32?g="S":32>h&&h>=24?g="R":24>h&&h>=16?g="Q":16>h&&h>=8?g="P":8>h&&h>=0?g="N":0>h&&h>=-8?g="M":-8>h&&h>=-16?g="L":-16>h&&h>=-24?g="K":-24>h&&h>=-32?g="J":-32>h&&h>=-40?g="H":-40>h&&h>=-48?g="G":-48>h&&h>=-56?g="F":-56>h&&h>=-64?g="E":-64>h&&h>=-72?g="D":-72>h&&h>=-80&&(g="C"),g)}}({lat:e[1],lon:e[0]}),t)}function me(e){var t=Ae(Ce(e.toUpperCase()));return t.lat&&t.lon?[t.lon,t.lat]:[(t.left+t.right)/2,(t.top+t.bottom)/2]}function fe(e){return e*(Math.PI/180)}function ye(e){return e/Math.PI*180}function Ae(e){var t=e.northing,o=e.easting,n=e.zoneLetter,i=e.zoneNumber;if(i<0||i>60)return null;var r,a,s,l,c,u,d,p,h=6378137,g=(1-Math.sqrt(.99330562))/(1+Math.sqrt(.99330562)),m=o-5e5,f=t;n<"N"&&(f-=1e7),u=6*(i-1)-180+3,p=(d=f/.9996/6367449.145945056)+(3*g/2-27*g*g*g/32)*Math.sin(2*d)+(21*g*g/16-55*g*g*g*g/32)*Math.sin(4*d)+151*g*g*g/96*Math.sin(6*d),r=h/Math.sqrt(1-.00669438*Math.sin(p)*Math.sin(p)),a=Math.tan(p)*Math.tan(p),s=.006739496752268451*Math.cos(p)*Math.cos(p),l=.99330562*h/Math.pow(1-.00669438*Math.sin(p)*Math.sin(p),1.5),c=m/(.9996*r);var y=p-r*Math.tan(p)/l*(c*c/2-(5+3*a+10*s-4*s*s-.06065547077041606)*c*c*c*c/24+(61+90*a+298*s+45*a*a-1.6983531815716497-3*s*s)*c*c*c*c*c*c/720);y=ye(y);var A,v=(c-(1+2*a+s)*c*c*c/6+(5-2*s+28*a-3*s*s+.05391597401814761+24*a*a)*c*c*c*c*c/120)/Math.cos(p);if(v=u+ye(v),e.accuracy){var C=Ae({northing:e.northing+e.accuracy,easting:e.easting+e.accuracy,zoneLetter:e.zoneLetter,zoneNumber:e.zoneNumber});A={top:C.lat,right:C.lon,bottom:y,left:v}}else A={lat:y,lon:v};return A}function ve(e){var t=e%6;return 0===t&&(t=6),t}function Ce(e){if(e&&0===e.length)throw"MGRSPoint coverting from nothing";for(var t,o=e.length,n=null,i="",r=0;!/[A-Z]/.test(t=e.charAt(r));){if(r>=2)throw"MGRSPoint bad conversion from: "+e;i+=t,r++}var a=parseInt(i,10);if(0===r||r+3>o)throw"MGRSPoint bad conversion from: "+e;var s=e.charAt(r++);if(s<="A"||"B"===s||"Y"===s||s>="Z"||"I"===s||"O"===s)throw"MGRSPoint zone letter "+s+" not handled: "+e;n=e.substring(r,r+=2);for(var l=ve(a),c=function(e,t){for(var o="AJSAJS".charCodeAt(t-1),n=1e5,i=!1;o!==e.charCodeAt(0);){if(++o===de&&o++,o===pe&&o++,o>90){if(i)throw"Bad character: "+e;o=ue,i=!0}n+=1e5}return n}(n.charAt(0),l),u=function(e,t){if(e>"V")throw"MGRSPoint given invalid Northing "+e;for(var o="AFAFAF".charCodeAt(t-1),n=0,i=!1;o!==e.charCodeAt(0);){if(++o===de&&o++,o===pe&&o++,o>86){if(i)throw"Bad character: "+e;o=ue,i=!0}n+=1e5}return n}(n.charAt(1),l);u0&&(p=1e5/Math.pow(10,m),h=e.substring(r,r+m),f=parseFloat(h)*p,g=e.substring(r+m),y=parseFloat(g)*p),{easting:f+c,northing:y+u,zoneLetter:s,zoneNumber:a,accuracy:p}}function Ie(e){var t;switch(e){case"C":t=11e5;break;case"D":t=2e6;break;case"E":t=28e5;break;case"F":t=37e5;break;case"G":t=46e5;break;case"H":t=55e5;break;case"J":t=64e5;break;case"K":t=73e5;break;case"L":t=82e5;break;case"M":t=91e5;break;case"N":t=0;break;case"P":t=8e5;break;case"Q":t=17e5;break;case"R":t=26e5;break;case"S":t=35e5;break;case"T":t=44e5;break;case"U":t=53e5;break;case"V":t=62e5;break;case"W":t=7e6;break;case"X":t=79e5;break;default:t=-1}if(t>=0)return t;throw"Invalid zone letter: "+e}function be(e,t,o){if(!(this instanceof be))return new be(e,t,o);if(Array.isArray(e))this.x=e[0],this.y=e[1],this.z=e[2]||0;else if("object"==typeof e)this.x=e.x,this.y=e.y,this.z=e.z||0;else if("string"==typeof e&&void 0===t){var n=e.split(",");this.x=parseFloat(n[0],10),this.y=parseFloat(n[1],10),this.z=parseFloat(n[2],10)||0}else this.x=e,this.y=t,this.z=o||0;console.warn("proj4.Point will be removed in version 3, use proj4.toPoint")}be.fromMGRS=function(e){return new be(me(e))},be.prototype.toMGRS=function(e){return ge([this.x,this.y],e)};var we=.01068115234375,Ee=function(e){var t=[];t[0]=1-e*(.25+e*(.046875+e*(.01953125+e*we))),t[1]=e*(.75-e*(.046875+e*(.01953125+e*we)));var o=e*e;return t[2]=o*(.46875-e*(.013020833333333334+.007120768229166667*e)),o*=e,t[3]=o*(.3645833333333333-.005696614583333333*e),t[4]=o*e*.3076171875,t},_e=function(e,t,o,n){return o*=t,t*=t,n[0]*e-o*(n[1]+t*(n[2]+t*(n[3]+t*n[4])))},Se=function(e,t,o){for(var n=1/(1-t),i=e,r=20;r;--r){var a=Math.sin(i),s=1-t*a*a;if(i-=s=(_e(i,a,Math.cos(i),o)-e)*(s*Math.sqrt(s))*n,Math.abs(s)<1e-10)return i}return i},Me={init:function(){this.x0=void 0!==this.x0?this.x0:0,this.y0=void 0!==this.y0?this.y0:0,this.long0=void 0!==this.long0?this.long0:0,this.lat0=void 0!==this.lat0?this.lat0:0,this.es&&(this.en=Ee(this.es),this.ml0=_e(this.lat0,Math.sin(this.lat0),Math.cos(this.lat0),this.en))},forward:function(e){var t,o,n,i=e.x,r=e.y,a=P(i-this.long0),s=Math.sin(r),l=Math.cos(r);if(this.es){var c=l*a,u=Math.pow(c,2),d=this.ep2*Math.pow(l,2),p=Math.pow(d,2),h=Math.abs(l)>1e-10?Math.tan(r):0,g=Math.pow(h,2),m=Math.pow(g,2);t=1-this.es*Math.pow(s,2),c/=Math.sqrt(t);var f=_e(r,s,l,this.en);o=this.a*(this.k0*c*(1+u/6*(1-g+d+u/20*(5-18*g+m+14*d-58*g*d+u/42*(61+179*m-m*g-479*g)))))+this.x0,n=this.a*(this.k0*(f-this.ml0+s*a*c/2*(1+u/12*(5-g+9*d+4*p+u/30*(61+m-58*g+270*d-330*g*d+u/56*(1385+543*m-m*g-3111*g))))))+this.y0}else{var y=l*Math.sin(a);if(Math.abs(Math.abs(y)-1)<1e-10)return 93;if(o=.5*this.a*this.k0*Math.log((1+y)/(1-y))+this.x0,n=l*Math.cos(a)/Math.sqrt(1-Math.pow(y,2)),(y=Math.abs(n))>=1){if(y-1>1e-10)return 93;n=0}else n=Math.acos(n);r<0&&(n=-n),n=this.a*this.k0*(n-this.lat0)+this.y0}return e.x=o,e.y=n,e},inverse:function(e){var o,n,i,r,a=(e.x-this.x0)*(1/this.a),s=(e.y-this.y0)*(1/this.a);if(this.es)if(o=this.ml0+s/this.k0,n=Se(o,this.es,this.en),Math.abs(n)1e-10?Math.tan(n):0,d=this.ep2*Math.pow(c,2),p=Math.pow(d,2),h=Math.pow(u,2),g=Math.pow(h,2);o=1-this.es*Math.pow(l,2);var m=a*Math.sqrt(o)/this.k0,f=Math.pow(m,2);i=n-(o*=u)*f/(1-this.es)*.5*(1-f/12*(5+3*h-9*d*h+d-4*p-f/30*(61+90*h-252*d*h+45*g+46*d-f/56*(1385+3633*h+4095*g+1574*g*h)))),r=P(this.long0+m*(1-f/6*(1+2*h+d-f/20*(5+28*h+24*g+8*d*h+6*d-f/42*(61+662*h+1320*g+720*g*h))))/c)}else i=t*x(s),r=0;else{var y=Math.exp(a/this.k0),A=.5*(y-1/y),v=this.lat0+s/this.k0,C=Math.cos(v);o=Math.sqrt((1-Math.pow(C,2))/(1+Math.pow(A,2))),i=Math.asin(o),s<0&&(i=-i),r=0===A&&0===C?0:P(Math.atan2(A,C)+this.long0)}return e.x=r,e.y=i,e},names:["Fast_Transverse_Mercator","Fast Transverse Mercator"]},xe=function(e){var t=Math.exp(e);return t=(t-1/t)/2},Pe=function(e,t){e=Math.abs(e),t=Math.abs(t);var o=Math.max(e,t),n=Math.min(e,t)/(o||1);return o*Math.sqrt(1+Math.pow(n,2))},ke=function(e){var t=Math.abs(e);return t=function(e){var t=1+e,o=t-1;return 0===o?e:e*Math.log(t)/o}(t*(1+t/(Pe(1,t)+1))),e<0?-t:t},Ge=function(e,t){for(var o,n=2*Math.cos(2*t),i=e.length-1,r=e[i],a=0;--i>=0;)o=n*r-a+e[i],a=r,r=o;return t+o*Math.sin(2*t)},Re=function(e,t,o){for(var n,i,r=Math.sin(t),a=Math.cos(t),s=xe(o),l=function(e){var t=Math.exp(e);return t=(t+1/t)/2}(o),c=2*a*l,u=-2*r*s,d=e.length-1,p=e[d],h=0,g=0,m=0;--d>=0;)n=g,i=h,p=c*(g=p)-n-u*(h=m)+e[d],m=u*g-i+c*h;return[(c=r*l)*p-(u=a*s)*m,c*m+u*p]},Te={init:function(){if(!this.approx&&(isNaN(this.es)||this.es<=0))throw new Error('Incorrect elliptical usage. Try using the +approx option in the proj string, or PROJECTION["Fast_Transverse_Mercator"] in the WKT.');this.approx&&(Me.init.apply(this),this.forward=Me.forward,this.inverse=Me.inverse),this.x0=void 0!==this.x0?this.x0:0,this.y0=void 0!==this.y0?this.y0:0,this.long0=void 0!==this.long0?this.long0:0,this.lat0=void 0!==this.lat0?this.lat0:0,this.cgb=[],this.cbg=[],this.utg=[],this.gtu=[];var e=this.es/(1+Math.sqrt(1-this.es)),t=e/(2-e),o=t;this.cgb[0]=t*(2+t*(-2/3+t*(t*(116/45+t*(26/45+t*(-2854/675)))-2))),this.cbg[0]=t*(t*(2/3+t*(4/3+t*(-82/45+t*(32/45+t*(4642/4725)))))-2),o*=t,this.cgb[1]=o*(7/3+t*(t*(-227/45+t*(2704/315+t*(2323/945)))-1.6)),this.cbg[1]=o*(5/3+t*(-16/15+t*(-13/9+t*(904/315+t*(-1522/945))))),o*=t,this.cgb[2]=o*(56/15+t*(-136/35+t*(-1262/105+t*(73814/2835)))),this.cbg[2]=o*(-26/15+t*(34/21+t*(1.6+t*(-12686/2835)))),o*=t,this.cgb[3]=o*(4279/630+t*(-332/35+t*(-399572/14175))),this.cbg[3]=o*(1237/630+t*(t*(-24832/14175)-2.4)),o*=t,this.cgb[4]=o*(4174/315+t*(-144838/6237)),this.cbg[4]=o*(-734/315+t*(109598/31185)),o*=t,this.cgb[5]=o*(601676/22275),this.cbg[5]=o*(444337/155925),o=Math.pow(t,2),this.Qn=this.k0/(1+t)*(1+o*(1/4+o*(1/64+o/256))),this.utg[0]=t*(t*(2/3+t*(-37/96+t*(1/360+t*(81/512+t*(-96199/604800)))))-.5),this.gtu[0]=t*(.5+t*(-2/3+t*(5/16+t*(41/180+t*(-127/288+t*(7891/37800)))))),this.utg[1]=o*(-1/48+t*(-1/15+t*(437/1440+t*(-46/105+t*(1118711/3870720))))),this.gtu[1]=o*(13/48+t*(t*(557/1440+t*(281/630+t*(-1983433/1935360)))-.6)),o*=t,this.utg[2]=o*(-17/480+t*(37/840+t*(209/4480+t*(-5569/90720)))),this.gtu[2]=o*(61/240+t*(-103/140+t*(15061/26880+t*(167603/181440)))),o*=t,this.utg[3]=o*(-4397/161280+t*(11/504+t*(830251/7257600))),this.gtu[3]=o*(49561/161280+t*(-179/168+t*(6601661/7257600))),o*=t,this.utg[4]=o*(-4583/161280+t*(108847/3991680)),this.gtu[4]=o*(34729/80640+t*(-3418889/1995840)),o*=t,this.utg[5]=o*(-20648693/638668800),this.gtu[5]=.6650675310896665*o;var n=Ge(this.cbg,this.lat0);this.Zb=-this.Qn*(n+function(e,t){for(var o,n=2*Math.cos(t),i=e.length-1,r=e[i],a=0;--i>=0;)o=n*r-a+e[i],a=r,r=o;return Math.sin(t)*o}(this.gtu,2*n))},forward:function(e){var t=P(e.x-this.long0),o=e.y;o=Ge(this.cbg,o);var n=Math.sin(o),i=Math.cos(o),r=Math.sin(t),a=Math.cos(t);o=Math.atan2(n,a*i),t=Math.atan2(r*i,Pe(n,i*a)),t=ke(Math.tan(t));var s,l,c=Re(this.gtu,2*o,2*t);return o+=c[0],t+=c[1],Math.abs(t)<=2.623395162778?(s=this.a*(this.Qn*t)+this.x0,l=this.a*(this.Qn*o+this.Zb)+this.y0):(s=1/0,l=1/0),e.x=s,e.y=l,e},inverse:function(e){var t,o,n=(e.x-this.x0)*(1/this.a),i=(e.y-this.y0)*(1/this.a);if(i=(i-this.Zb)/this.Qn,n/=this.Qn,Math.abs(n)<=2.623395162778){var r=Re(this.utg,2*i,2*n);i+=r[0],n+=r[1],n=Math.atan(xe(n));var a=Math.sin(i),s=Math.cos(i),l=Math.sin(n),c=Math.cos(n);i=Math.atan2(a*c,Pe(l,c*s)),n=Math.atan2(l,c*s),t=P(n+this.long0),o=Ge(this.cgb,i)}else t=1/0,o=1/0;return e.x=t,e.y=o,e},names:["Extended_Transverse_Mercator","Extended Transverse Mercator","etmerc","Transverse_Mercator","Transverse Mercator","tmerc"]},Oe={init:function(){var e=function(e,t){if(void 0===e){if((e=Math.floor(30*(P(t)+Math.PI)/Math.PI)+1)<0)return 0;if(e>60)return 60}return e}(this.zone,this.long0);if(void 0===e)throw new Error("unknown utm zone");this.lat0=0,this.long0=(6*Math.abs(e)-183)*o,this.x0=5e5,this.y0=this.utmSouth?1e7:0,this.k0=.9996,Te.init.apply(this),this.forward=Te.forward,this.inverse=Te.inverse},names:["Universal Transverse Mercator System","utm"],dependsOn:"etmerc"},Le=function(e,t){return Math.pow((1-e)/(1+e),t)},De={init:function(){var e=Math.sin(this.lat0),t=Math.cos(this.lat0);t*=t,this.rc=Math.sqrt(1-this.es)/(1-this.es*e*e),this.C=Math.sqrt(1+this.es*t*t/(1-this.es)),this.phic0=Math.asin(e/this.C),this.ratexp=.5*this.C*this.e,this.K=Math.tan(.5*this.phic0+i)/(Math.pow(Math.tan(.5*this.lat0+i),this.C)*Le(this.e*e,this.ratexp))},forward:function(e){var o=e.x,n=e.y;return e.y=2*Math.atan(this.K*Math.pow(Math.tan(.5*n+i),this.C)*Le(this.e*Math.sin(n),this.ratexp))-t,e.x=this.C*o,e},inverse:function(e){for(var o=e.x/this.C,n=e.y,r=Math.pow(Math.tan(.5*n+i)/this.K,1/this.C),a=20;a>0&&(n=2*Math.atan(r*Le(this.e*Math.sin(e.y),-.5*this.e))-t,!(Math.abs(n-e.y)<1e-14));--a)e.y=n;return a?(e.x=o,e.y=n,e):null},names:["gauss"]},Ne={init:function(){De.init.apply(this),this.rc&&(this.sinc0=Math.sin(this.phic0),this.cosc0=Math.cos(this.phic0),this.R2=2*this.rc,this.title||(this.title="Oblique Stereographic Alternative"))},forward:function(e){var t,o,n,i;return e.x=P(e.x-this.long0),De.forward.apply(this,[e]),t=Math.sin(e.y),o=Math.cos(e.y),n=Math.cos(e.x),i=this.k0*this.R2/(1+this.sinc0*t+this.cosc0*o*n),e.x=i*o*Math.sin(e.x),e.y=i*(this.cosc0*t-this.sinc0*o*n),e.x=this.a*e.x+this.x0,e.y=this.a*e.y+this.y0,e},inverse:function(e){var t,o,n,i,r;if(e.x=(e.x-this.x0)/this.a,e.y=(e.y-this.y0)/this.a,e.x/=this.k0,e.y/=this.k0,r=Math.sqrt(e.x*e.x+e.y*e.y)){var a=2*Math.atan2(r,this.R2);t=Math.sin(a),o=Math.cos(a),i=Math.asin(o*this.sinc0+e.y*t*this.cosc0/r),n=Math.atan2(e.x*t,r*this.cosc0*o-e.y*this.sinc0*t)}else i=this.phic0,n=0;return e.x=n,e.y=i,De.inverse.apply(this,[e]),e.x=P(e.x+this.long0),e},names:["Stereographic_North_Pole","Oblique_Stereographic","Polar_Stereographic","sterea","Oblique Stereographic Alternative","Double_Stereographic"]},je={init:function(){this.coslat0=Math.cos(this.lat0),this.sinlat0=Math.sin(this.lat0),this.sphere?1===this.k0&&!isNaN(this.lat_ts)&&Math.abs(this.coslat0)<=1e-10&&(this.k0=.5*(1+x(this.lat0)*Math.sin(this.lat_ts))):(Math.abs(this.coslat0)<=1e-10&&(this.lat0>0?this.con=1:this.con=-1),this.cons=Math.sqrt(Math.pow(1+this.e,1+this.e)*Math.pow(1-this.e,1-this.e)),1===this.k0&&!isNaN(this.lat_ts)&&Math.abs(this.coslat0)<=1e-10&&(this.k0=.5*this.cons*M(this.e,Math.sin(this.lat_ts),Math.cos(this.lat_ts))/k(this.e,this.con*this.lat_ts,this.con*Math.sin(this.lat_ts))),this.ms1=M(this.e,this.sinlat0,this.coslat0),this.X0=2*Math.atan(this.ssfn_(this.lat0,this.sinlat0,this.e))-t,this.cosX0=Math.cos(this.X0),this.sinX0=Math.sin(this.X0))},forward:function(e){var o,n,i,r,a,s,l=e.x,c=e.y,u=Math.sin(c),d=Math.cos(c),p=P(l-this.long0);return Math.abs(Math.abs(l-this.long0)-Math.PI)<=1e-10&&Math.abs(c+this.lat0)<=1e-10?(e.x=NaN,e.y=NaN,e):this.sphere?(o=2*this.k0/(1+this.sinlat0*u+this.coslat0*d*Math.cos(p)),e.x=this.a*o*d*Math.sin(p)+this.x0,e.y=this.a*o*(this.coslat0*u-this.sinlat0*d*Math.cos(p))+this.y0,e):(n=2*Math.atan(this.ssfn_(c,u,this.e))-t,r=Math.cos(n),i=Math.sin(n),Math.abs(this.coslat0)<=1e-10?(a=k(this.e,c*this.con,this.con*u),s=2*this.a*this.k0*a/this.cons,e.x=this.x0+s*Math.sin(l-this.long0),e.y=this.y0-this.con*s*Math.cos(l-this.long0),e):(Math.abs(this.sinlat0)<1e-10?(o=2*this.a*this.k0/(1+r*Math.cos(p)),e.y=o*i):(o=2*this.a*this.k0*this.ms1/(this.cosX0*(1+this.sinX0*i+this.cosX0*r*Math.cos(p))),e.y=o*(this.cosX0*i-this.sinX0*r*Math.cos(p))+this.y0),e.x=o*r*Math.sin(p)+this.x0,e))},inverse:function(e){var o,n,i,r,a;e.x-=this.x0,e.y-=this.y0;var s=Math.sqrt(e.x*e.x+e.y*e.y);if(this.sphere){var l=2*Math.atan(s/(2*this.a*this.k0));return o=this.long0,n=this.lat0,s<=1e-10?(e.x=o,e.y=n,e):(n=Math.asin(Math.cos(l)*this.sinlat0+e.y*Math.sin(l)*this.coslat0/s),o=Math.abs(this.coslat0)<1e-10?this.lat0>0?P(this.long0+Math.atan2(e.x,-1*e.y)):P(this.long0+Math.atan2(e.x,e.y)):P(this.long0+Math.atan2(e.x*Math.sin(l),s*this.coslat0*Math.cos(l)-e.y*this.sinlat0*Math.sin(l))),e.x=o,e.y=n,e)}if(Math.abs(this.coslat0)<=1e-10){if(s<=1e-10)return n=this.lat0,o=this.long0,e.x=o,e.y=n,e;e.x*=this.con,e.y*=this.con,i=s*this.cons/(2*this.a*this.k0),n=this.con*G(this.e,i),o=this.con*P(this.con*this.long0+Math.atan2(e.x,-1*e.y))}else r=2*Math.atan(s*this.cosX0/(2*this.a*this.k0*this.ms1)),o=this.long0,s<=1e-10?a=this.X0:(a=Math.asin(Math.cos(r)*this.sinX0+e.y*Math.sin(r)*this.cosX0/s),o=P(this.long0+Math.atan2(e.x*Math.sin(r),s*this.cosX0*Math.cos(r)-e.y*this.sinX0*Math.sin(r)))),n=-1*G(this.e,Math.tan(.5*(t+a)));return e.x=o,e.y=n,e},names:["stere","Stereographic_South_Pole","Polar Stereographic (variant B)"],ssfn_:function(e,o,n){return o*=n,Math.tan(.5*(t+e))*Math.pow((1-o)/(1+o),.5*n)}},Ue={init:function(){var e=this.lat0;this.lambda0=this.long0;var t=Math.sin(e),o=this.a,n=1/this.rf,i=2*n-Math.pow(n,2),r=this.e=Math.sqrt(i);this.R=this.k0*o*Math.sqrt(1-i)/(1-i*Math.pow(t,2)),this.alpha=Math.sqrt(1+i/(1-i)*Math.pow(Math.cos(e),4)),this.b0=Math.asin(t/this.alpha);var a=Math.log(Math.tan(Math.PI/4+this.b0/2)),s=Math.log(Math.tan(Math.PI/4+e/2)),l=Math.log((1+r*t)/(1-r*t));this.K=a-this.alpha*s+this.alpha*r/2*l},forward:function(e){var t=Math.log(Math.tan(Math.PI/4-e.y/2)),o=this.e/2*Math.log((1+this.e*Math.sin(e.y))/(1-this.e*Math.sin(e.y))),n=-this.alpha*(t+o)+this.K,i=2*(Math.atan(Math.exp(n))-Math.PI/4),r=this.alpha*(e.x-this.lambda0),a=Math.atan(Math.sin(r)/(Math.sin(this.b0)*Math.tan(i)+Math.cos(this.b0)*Math.cos(r))),s=Math.asin(Math.cos(this.b0)*Math.sin(i)-Math.sin(this.b0)*Math.cos(i)*Math.cos(r));return e.y=this.R/2*Math.log((1+Math.sin(s))/(1-Math.sin(s)))+this.y0,e.x=this.R*a+this.x0,e},inverse:function(e){for(var t=e.x-this.x0,o=e.y-this.y0,n=t/this.R,i=2*(Math.atan(Math.exp(o/this.R))-Math.PI/4),r=Math.asin(Math.cos(this.b0)*Math.sin(i)+Math.sin(this.b0)*Math.cos(i)*Math.cos(n)),a=Math.atan(Math.sin(n)/(Math.cos(this.b0)*Math.cos(n)-Math.sin(this.b0)*Math.tan(i))),s=this.lambda0+a/this.alpha,l=0,c=r,u=-1e3,d=0;Math.abs(c-u)>1e-7;){if(++d>20)return;l=1/this.alpha*(Math.log(Math.tan(Math.PI/4+r/2))-this.K)+this.e*Math.log(Math.tan(Math.PI/4+Math.asin(this.e*Math.sin(c))/2)),u=c,c=2*Math.atan(Math.exp(l))-Math.PI/2}return e.x=s,e.y=c,e},names:["somerc"]},Be={init:function(){var e,n,a,s,l,c,u,d,p,h,g,m,f,y=0,A=0,v=0,C=0,I=0,b=0,w=0;this.no_off=(f="object"==typeof(m=this).PROJECTION?Object.keys(m.PROJECTION)[0]:m.PROJECTION,"no_uoff"in m||"no_off"in m||-1!==["Hotine_Oblique_Mercator","Hotine_Oblique_Mercator_Azimuth_Natural_Origin"].indexOf(f)),this.no_rot="no_rot"in this;var E=!1;"alpha"in this&&(E=!0);var _=!1;if("rectified_grid_angle"in this&&(_=!0),E&&(w=this.alpha),_&&(y=this.rectified_grid_angle*o),E||_)A=this.longc;else if(v=this.long1,I=this.lat1,C=this.long2,b=this.lat2,Math.abs(I-b)<=1e-7||(e=Math.abs(I))<=1e-7||Math.abs(e-t)<=1e-7||Math.abs(Math.abs(this.lat0)-t)<=1e-7||Math.abs(Math.abs(b)-t)<=1e-7)throw new Error;var S=1-this.es;n=Math.sqrt(S),Math.abs(this.lat0)>1e-10?(d=Math.sin(this.lat0),a=Math.cos(this.lat0),e=1-this.es*d*d,this.B=a*a,this.B=Math.sqrt(1+this.es*this.B*this.B/S),this.A=this.B*this.k0*n/e,(l=(s=this.B*n/(a*Math.sqrt(e)))*s-1)<=0?l=0:(l=Math.sqrt(l),this.lat0<0&&(l=-l)),this.E=l+=s,this.E*=Math.pow(k(this.e,this.lat0,d),this.B)):(this.B=1/n,this.A=this.k0,this.E=s=l=1),E||_?(E?(g=Math.asin(Math.sin(w)/s),_||(y=w)):(g=y,w=Math.asin(s*Math.sin(g))),this.lam0=A-Math.asin(.5*(l-1/l)*Math.tan(g))/this.B):(c=Math.pow(k(this.e,I,Math.sin(I)),this.B),u=Math.pow(k(this.e,b,Math.sin(b)),this.B),l=this.E/c,p=(u-c)/(u+c),h=((h=this.E*this.E)-u*c)/(h+u*c),(e=v-C)<-Math.pi?C-=r:e>Math.pi&&(C+=r),this.lam0=P(.5*(v+C)-Math.atan(h*Math.tan(.5*this.B*(v-C))/p)/this.B),g=Math.atan(2*Math.sin(this.B*P(v-this.lam0))/(l-1/l)),y=w=Math.asin(s*Math.sin(g))),this.singam=Math.sin(g),this.cosgam=Math.cos(g),this.sinrot=Math.sin(y),this.cosrot=Math.cos(y),this.rB=1/this.B,this.ArB=this.A*this.rB,this.BrA=1/this.ArB,this.no_off?this.u_0=0:(this.u_0=Math.abs(this.ArB*Math.atan(Math.sqrt(s*s-1)/Math.cos(w))),this.lat0<0&&(this.u_0=-this.u_0)),l=.5*g,this.v_pole_n=this.ArB*Math.log(Math.tan(i-l)),this.v_pole_s=this.ArB*Math.log(Math.tan(i+l))},forward:function(e){var o,n,i,r,a,s,l,c,u={};if(e.x=e.x-this.lam0,Math.abs(Math.abs(e.y)-t)>1e-10){if(o=.5*((a=this.E/Math.pow(k(this.e,e.y,Math.sin(e.y)),this.B))-(s=1/a)),n=.5*(a+s),r=Math.sin(this.B*e.x),i=(o*this.singam-r*this.cosgam)/n,Math.abs(Math.abs(i)-1)<1e-10)throw new Error;c=.5*this.ArB*Math.log((1-i)/(1+i)),s=Math.cos(this.B*e.x),l=Math.abs(s)<1e-7?this.A*e.x:this.ArB*Math.atan2(o*this.cosgam+r*this.singam,s)}else c=e.y>0?this.v_pole_n:this.v_pole_s,l=this.ArB*e.y;return this.no_rot?(u.x=l,u.y=c):(l-=this.u_0,u.x=c*this.cosrot+l*this.sinrot,u.y=l*this.cosrot-c*this.sinrot),u.x=this.a*u.x+this.x0,u.y=this.a*u.y+this.y0,u},inverse:function(e){var o,n,i,r,a,s,l,c={};if(e.x=(e.x-this.x0)*(1/this.a),e.y=(e.y-this.y0)*(1/this.a),this.no_rot?(n=e.y,o=e.x):(n=e.x*this.cosrot-e.y*this.sinrot,o=e.y*this.cosrot+e.x*this.sinrot+this.u_0),r=.5*((i=Math.exp(-this.BrA*n))-1/i),a=.5*(i+1/i),l=((s=Math.sin(this.BrA*o))*this.cosgam+r*this.singam)/a,Math.abs(Math.abs(l)-1)<1e-10)c.x=0,c.y=l<0?-t:t;else{if(c.y=this.E/Math.sqrt((1+l)/(1-l)),c.y=G(this.e,Math.pow(c.y,1/this.B)),c.y===1/0)throw new Error;c.x=-this.rB*Math.atan2(r*this.cosgam-s*this.singam,Math.cos(this.BrA*o))}return c.x+=this.lam0,c},names:["Hotine_Oblique_Mercator","Hotine Oblique Mercator","Hotine_Oblique_Mercator_Azimuth_Natural_Origin","Hotine_Oblique_Mercator_Two_Point_Natural_Origin","Hotine_Oblique_Mercator_Azimuth_Center","Oblique_Mercator","omerc"]},Fe={init:function(){if(this.lat2||(this.lat2=this.lat1),this.k0||(this.k0=1),this.x0=this.x0||0,this.y0=this.y0||0,!(Math.abs(this.lat1+this.lat2)<1e-10)){var e=this.b/this.a;this.e=Math.sqrt(1-e*e);var t=Math.sin(this.lat1),o=Math.cos(this.lat1),n=M(this.e,t,o),i=k(this.e,this.lat1,t),r=Math.sin(this.lat2),a=Math.cos(this.lat2),s=M(this.e,r,a),l=k(this.e,this.lat2,r),c=k(this.e,this.lat0,Math.sin(this.lat0));Math.abs(this.lat1-this.lat2)>1e-10?this.ns=Math.log(n/s)/Math.log(i/l):this.ns=t,isNaN(this.ns)&&(this.ns=t),this.f0=n/(this.ns*Math.pow(i,this.ns)),this.rh=this.a*this.f0*Math.pow(c,this.ns),this.title||(this.title="Lambert Conformal Conic")}},forward:function(e){var o=e.x,n=e.y;Math.abs(2*Math.abs(n)-Math.PI)<=1e-10&&(n=x(n)*(t-2e-10));var i,r,a=Math.abs(Math.abs(n)-t);if(a>1e-10)i=k(this.e,n,Math.sin(n)),r=this.a*this.f0*Math.pow(i,this.ns);else{if((a=n*this.ns)<=0)return null;r=0}var s=this.ns*P(o-this.long0);return e.x=this.k0*(r*Math.sin(s))+this.x0,e.y=this.k0*(this.rh-r*Math.cos(s))+this.y0,e},inverse:function(e){var o,n,i,r,a,s=(e.x-this.x0)/this.k0,l=this.rh-(e.y-this.y0)/this.k0;this.ns>0?(o=Math.sqrt(s*s+l*l),n=1):(o=-Math.sqrt(s*s+l*l),n=-1);var c=0;if(0!==o&&(c=Math.atan2(n*s,n*l)),0!==o||this.ns>0){if(n=1/this.ns,i=Math.pow(o/(this.a*this.f0),n),-9999===(r=G(this.e,i)))return null}else r=-t;return a=P(c/this.ns+this.long0),e.x=a,e.y=r,e},names:["Lambert Tangential Conformal Conic Projection","Lambert_Conformal_Conic","Lambert_Conformal_Conic_1SP","Lambert_Conformal_Conic_2SP","lcc"]},ze={init:function(){this.a=6377397.155,this.es=.006674372230614,this.e=Math.sqrt(this.es),this.lat0||(this.lat0=.863937979737193),this.long0||(this.long0=.4334234309119251),this.k0||(this.k0=.9999),this.s45=.785398163397448,this.s90=2*this.s45,this.fi0=this.lat0,this.e2=this.es,this.e=Math.sqrt(this.e2),this.alfa=Math.sqrt(1+this.e2*Math.pow(Math.cos(this.fi0),4)/(1-this.e2)),this.uq=1.04216856380474,this.u0=Math.asin(Math.sin(this.fi0)/this.alfa),this.g=Math.pow((1+this.e*Math.sin(this.fi0))/(1-this.e*Math.sin(this.fi0)),this.alfa*this.e/2),this.k=Math.tan(this.u0/2+this.s45)/Math.pow(Math.tan(this.fi0/2+this.s45),this.alfa)*this.g,this.k1=this.k0,this.n0=this.a*Math.sqrt(1-this.e2)/(1-this.e2*Math.pow(Math.sin(this.fi0),2)),this.s0=1.37008346281555,this.n=Math.sin(this.s0),this.ro0=this.k1*this.n0/Math.tan(this.s0),this.ad=this.s90-this.uq},forward:function(e){var t,o,n,i,r,a,s,l=e.x,c=e.y,u=P(l-this.long0);return t=Math.pow((1+this.e*Math.sin(c))/(1-this.e*Math.sin(c)),this.alfa*this.e/2),o=2*(Math.atan(this.k*Math.pow(Math.tan(c/2+this.s45),this.alfa)/t)-this.s45),n=-u*this.alfa,i=Math.asin(Math.cos(this.ad)*Math.sin(o)+Math.sin(this.ad)*Math.cos(o)*Math.cos(n)),r=Math.asin(Math.cos(o)*Math.sin(n)/Math.cos(i)),a=this.n*r,s=this.ro0*Math.pow(Math.tan(this.s0/2+this.s45),this.n)/Math.pow(Math.tan(i/2+this.s45),this.n),e.y=s*Math.cos(a)/1,e.x=s*Math.sin(a)/1,this.czech||(e.y*=-1,e.x*=-1),e},inverse:function(e){var t,o,n,i,r,a,s,l=e.x;e.x=e.y,e.y=l,this.czech||(e.y*=-1,e.x*=-1),r=Math.sqrt(e.x*e.x+e.y*e.y),i=Math.atan2(e.y,e.x)/Math.sin(this.s0),n=2*(Math.atan(Math.pow(this.ro0/r,1/this.n)*Math.tan(this.s0/2+this.s45))-this.s45),t=Math.asin(Math.cos(this.ad)*Math.sin(n)-Math.sin(this.ad)*Math.cos(n)*Math.cos(i)),o=Math.asin(Math.cos(n)*Math.sin(i)/Math.cos(t)),e.x=this.long0-o/this.alfa,a=t,s=0;var c=0;do{e.y=2*(Math.atan(Math.pow(this.k,-1/this.alfa)*Math.pow(Math.tan(t/2+this.s45),1/this.alfa)*Math.pow((1+this.e*Math.sin(a))/(1-this.e*Math.sin(a)),this.e/2))-this.s45),Math.abs(a-e.y)<1e-10&&(s=1),a=e.y,c+=1}while(0===s&&c<15);return c>=15?null:e},names:["Krovak","krovak"]},Ve=function(e,t,o,n,i){return e*i-t*Math.sin(2*i)+o*Math.sin(4*i)-n*Math.sin(6*i)},qe=function(e){return 1-.25*e*(1+e/16*(3+1.25*e))},We=function(e){return.375*e*(1+.25*e*(1+.46875*e))},He=function(e){return.05859375*e*e*(1+.75*e)},Ye=function(e){return e*e*e*(35/3072)},Je=function(e,t,o){var n=t*o;return e/Math.sqrt(1-n*n)},Ze=function(e){return Math.abs(e)1e-7?(1-e*e)*(t/(1-(o=e*t)*o)-.5/e*Math.log((1-o)/(1+o))):2*t},$e={init:function(){var e,o=Math.abs(this.lat0);if(Math.abs(o-t)<1e-10?this.mode=this.lat0<0?this.S_POLE:this.N_POLE:Math.abs(o)<1e-10?this.mode=this.EQUIT:this.mode=this.OBLIQ,this.es>0)switch(this.qp=Qe(this.e,1),this.mmf=.5/(1-this.es),this.apa=function(e){var t,o=[];return o[0]=.3333333333333333*e,t=e*e,o[0]+=.17222222222222222*t,o[1]=.06388888888888888*t,t*=e,o[0]+=.10257936507936508*t,o[1]+=.0664021164021164*t,o[2]=.016415012942191543*t,o}(this.es),this.mode){case this.N_POLE:case this.S_POLE:this.dd=1;break;case this.EQUIT:this.rq=Math.sqrt(.5*this.qp),this.dd=1/this.rq,this.xmf=1,this.ymf=.5*this.qp;break;case this.OBLIQ:this.rq=Math.sqrt(.5*this.qp),e=Math.sin(this.lat0),this.sinb1=Qe(this.e,e)/this.qp,this.cosb1=Math.sqrt(1-this.sinb1*this.sinb1),this.dd=Math.cos(this.lat0)/(Math.sqrt(1-this.es*e*e)*this.rq*this.cosb1),this.ymf=(this.xmf=this.rq)/this.dd,this.xmf*=this.dd}else this.mode===this.OBLIQ&&(this.sinph0=Math.sin(this.lat0),this.cosph0=Math.cos(this.lat0))},forward:function(e){var o,n,r,a,s,l,c,u,d,p,h=e.x,g=e.y;if(h=P(h-this.long0),this.sphere){if(s=Math.sin(g),p=Math.cos(g),r=Math.cos(h),this.mode===this.OBLIQ||this.mode===this.EQUIT){if((n=this.mode===this.EQUIT?1+p*r:1+this.sinph0*s+this.cosph0*p*r)<=1e-10)return null;o=(n=Math.sqrt(2/n))*p*Math.sin(h),n*=this.mode===this.EQUIT?s:this.cosph0*s-this.sinph0*p*r}else if(this.mode===this.N_POLE||this.mode===this.S_POLE){if(this.mode===this.N_POLE&&(r=-r),Math.abs(g+this.lat0)<1e-10)return null;n=i-.5*g,o=(n=2*(this.mode===this.S_POLE?Math.cos(n):Math.sin(n)))*Math.sin(h),n*=r}}else{switch(c=0,u=0,d=0,r=Math.cos(h),a=Math.sin(h),s=Math.sin(g),l=Qe(this.e,s),this.mode!==this.OBLIQ&&this.mode!==this.EQUIT||(c=l/this.qp,u=Math.sqrt(1-c*c)),this.mode){case this.OBLIQ:d=1+this.sinb1*c+this.cosb1*u*r;break;case this.EQUIT:d=1+u*r;break;case this.N_POLE:d=t+g,l=this.qp-l;break;case this.S_POLE:d=g-t,l=this.qp+l}if(Math.abs(d)<1e-10)return null;switch(this.mode){case this.OBLIQ:case this.EQUIT:d=Math.sqrt(2/d),n=this.mode===this.OBLIQ?this.ymf*d*(this.cosb1*c-this.sinb1*u*r):(d=Math.sqrt(2/(1+u*r)))*c*this.ymf,o=this.xmf*d*u*a;break;case this.N_POLE:case this.S_POLE:l>=0?(o=(d=Math.sqrt(l))*a,n=r*(this.mode===this.S_POLE?d:-d)):o=n=0}}return e.x=this.a*o+this.x0,e.y=this.a*n+this.y0,e},inverse:function(e){e.x-=this.x0,e.y-=this.y0;var o,n,i,r,a,s,l,c,u,d,p=e.x/this.a,h=e.y/this.a;if(this.sphere){var g,m=0,f=0;if((n=.5*(g=Math.sqrt(p*p+h*h)))>1)return null;switch(n=2*Math.asin(n),this.mode!==this.OBLIQ&&this.mode!==this.EQUIT||(f=Math.sin(n),m=Math.cos(n)),this.mode){case this.EQUIT:n=Math.abs(g)<=1e-10?0:Math.asin(h*f/g),p*=f,h=m*g;break;case this.OBLIQ:n=Math.abs(g)<=1e-10?this.lat0:Math.asin(m*this.sinph0+h*f*this.cosph0/g),p*=f*this.cosph0,h=(m-Math.sin(n)*this.sinph0)*g;break;case this.N_POLE:h=-h,n=t-n;break;case this.S_POLE:n-=t}o=0!==h||this.mode!==this.EQUIT&&this.mode!==this.OBLIQ?Math.atan2(p,h):0}else{if(l=0,this.mode===this.OBLIQ||this.mode===this.EQUIT){if(p/=this.dd,h*=this.dd,(s=Math.sqrt(p*p+h*h))<1e-10)return e.x=this.long0,e.y=this.lat0,e;r=2*Math.asin(.5*s/this.rq),i=Math.cos(r),p*=r=Math.sin(r),this.mode===this.OBLIQ?(l=i*this.sinb1+h*r*this.cosb1/s,a=this.qp*l,h=s*this.cosb1*i-h*this.sinb1*r):(l=h*r/s,a=this.qp*l,h=s*i)}else if(this.mode===this.N_POLE||this.mode===this.S_POLE){if(this.mode===this.N_POLE&&(h=-h),!(a=p*p+h*h))return e.x=this.long0,e.y=this.lat0,e;l=1-a/this.qp,this.mode===this.S_POLE&&(l=-l)}o=Math.atan2(p,h),c=Math.asin(l),u=this.apa,d=c+c,n=c+u[0]*Math.sin(d)+u[1]*Math.sin(d+d)+u[2]*Math.sin(d+d+d)}return e.x=P(this.long0+o),e.y=n,e},names:["Lambert Azimuthal Equal Area","Lambert_Azimuthal_Equal_Area","laea"],S_POLE:1,N_POLE:2,EQUIT:3,OBLIQ:4},et=function(e){return Math.abs(e)>1&&(e=e>1?1:-1),Math.asin(e)},tt={init:function(){Math.abs(this.lat1+this.lat2)<1e-10||(this.temp=this.b/this.a,this.es=1-Math.pow(this.temp,2),this.e3=Math.sqrt(this.es),this.sin_po=Math.sin(this.lat1),this.cos_po=Math.cos(this.lat1),this.t1=this.sin_po,this.con=this.sin_po,this.ms1=M(this.e3,this.sin_po,this.cos_po),this.qs1=Qe(this.e3,this.sin_po,this.cos_po),this.sin_po=Math.sin(this.lat2),this.cos_po=Math.cos(this.lat2),this.t2=this.sin_po,this.ms2=M(this.e3,this.sin_po,this.cos_po),this.qs2=Qe(this.e3,this.sin_po,this.cos_po),this.sin_po=Math.sin(this.lat0),this.cos_po=Math.cos(this.lat0),this.t3=this.sin_po,this.qs0=Qe(this.e3,this.sin_po,this.cos_po),Math.abs(this.lat1-this.lat2)>1e-10?this.ns0=(this.ms1*this.ms1-this.ms2*this.ms2)/(this.qs2-this.qs1):this.ns0=this.con,this.c=this.ms1*this.ms1+this.ns0*this.qs1,this.rh=this.a*Math.sqrt(this.c-this.ns0*this.qs0)/this.ns0)},forward:function(e){var t=e.x,o=e.y;this.sin_phi=Math.sin(o),this.cos_phi=Math.cos(o);var n=Qe(this.e3,this.sin_phi,this.cos_phi),i=this.a*Math.sqrt(this.c-this.ns0*n)/this.ns0,r=this.ns0*P(t-this.long0),a=i*Math.sin(r)+this.x0,s=this.rh-i*Math.cos(r)+this.y0;return e.x=a,e.y=s,e},inverse:function(e){var t,o,n,i,r,a;return e.x-=this.x0,e.y=this.rh-e.y+this.y0,this.ns0>=0?(t=Math.sqrt(e.x*e.x+e.y*e.y),n=1):(t=-Math.sqrt(e.x*e.x+e.y*e.y),n=-1),i=0,0!==t&&(i=Math.atan2(n*e.x,n*e.y)),n=t*this.ns0/this.a,this.sphere?a=Math.asin((this.c-n*n)/(2*this.ns0)):(o=(this.c-n*n)/this.ns0,a=this.phi1z(this.e3,o)),r=P(i/this.ns0+this.long0),e.x=r,e.y=a,e},names:["Albers_Conic_Equal_Area","Albers","aea"],phi1z:function(e,t){var o,n,i,r,a=et(.5*t);if(e<1e-10)return a;for(var s=e*e,l=1;l<=25;l++)if(a+=r=.5*(i=1-(n=e*(o=Math.sin(a)))*n)*i/Math.cos(a)*(t/(1-s)-o/i+.5/e*Math.log((1-n)/(1+n))),Math.abs(r)<=1e-7)return a;return null}},ot={init:function(){this.sin_p14=Math.sin(this.lat0),this.cos_p14=Math.cos(this.lat0),this.infinity_dist=1e3*this.a,this.rc=1},forward:function(e){var t,o,n,i,r,a,s,l=e.x,c=e.y;return n=P(l-this.long0),t=Math.sin(c),o=Math.cos(c),i=Math.cos(n),(r=this.sin_p14*t+this.cos_p14*o*i)>0||Math.abs(r)<=1e-10?(a=this.x0+1*this.a*o*Math.sin(n)/r,s=this.y0+1*this.a*(this.cos_p14*t-this.sin_p14*o*i)/r):(a=this.x0+this.infinity_dist*o*Math.sin(n),s=this.y0+this.infinity_dist*(this.cos_p14*t-this.sin_p14*o*i)),e.x=a,e.y=s,e},inverse:function(e){var t,o,n,i,r,a;return e.x=(e.x-this.x0)/this.a,e.y=(e.y-this.y0)/this.a,e.x/=this.k0,e.y/=this.k0,(t=Math.sqrt(e.x*e.x+e.y*e.y))?(i=Math.atan2(t,this.rc),o=Math.sin(i),n=Math.cos(i),a=et(n*this.sin_p14+e.y*o*this.cos_p14/t),r=Math.atan2(e.x*o,t*this.cos_p14*n-e.y*this.sin_p14*o),r=P(this.long0+r)):(a=this.phic0,r=0),e.x=r,e.y=a,e},names:["gnom"]},nt={init:function(){this.sphere||(this.k0=M(this.e,Math.sin(this.lat_ts),Math.cos(this.lat_ts)))},forward:function(e){var t,o,n=e.x,i=e.y,r=P(n-this.long0);if(this.sphere)t=this.x0+this.a*r*Math.cos(this.lat_ts),o=this.y0+this.a*Math.sin(i)/Math.cos(this.lat_ts);else{var a=Qe(this.e,Math.sin(i));t=this.x0+this.a*this.k0*r,o=this.y0+this.a*a*.5/this.k0}return e.x=t,e.y=o,e},inverse:function(e){var o,n;return e.x-=this.x0,e.y-=this.y0,this.sphere?(o=P(this.long0+e.x/this.a/Math.cos(this.lat_ts)),n=Math.asin(e.y/this.a*Math.cos(this.lat_ts))):(n=function(e,o){var n=1-(1-e*e)/(2*e)*Math.log((1-e)/(1+e));if(Math.abs(Math.abs(o)-n)<1e-6)return o<0?-1*t:t;for(var i,r,a,s,l=Math.asin(.5*o),c=0;c<30;c++)if(r=Math.sin(l),a=Math.cos(l),s=e*r,l+=i=Math.pow(1-s*s,2)/(2*a)*(o/(1-e*e)-r/(1-s*s)+.5/e*Math.log((1-s)/(1+s))),Math.abs(i)<=1e-10)return l;return NaN}(this.e,2*e.y*this.k0/this.a),o=P(this.long0+e.x/(this.a*this.k0))),e.x=o,e.y=n,e},names:["cea"]},it={init:function(){this.x0=this.x0||0,this.y0=this.y0||0,this.lat0=this.lat0||0,this.long0=this.long0||0,this.lat_ts=this.lat_ts||0,this.title=this.title||"Equidistant Cylindrical (Plate Carre)",this.rc=Math.cos(this.lat_ts)},forward:function(e){var t=e.x,o=e.y,n=P(t-this.long0),i=Ze(o-this.lat0);return e.x=this.x0+this.a*n*this.rc,e.y=this.y0+this.a*i,e},inverse:function(e){var t=e.x,o=e.y;return e.x=P(this.long0+(t-this.x0)/(this.a*this.rc)),e.y=Ze(this.lat0+(o-this.y0)/this.a),e},names:["Equirectangular","Equidistant_Cylindrical","eqc"]},rt={init:function(){this.temp=this.b/this.a,this.es=1-Math.pow(this.temp,2),this.e=Math.sqrt(this.es),this.e0=qe(this.es),this.e1=We(this.es),this.e2=He(this.es),this.e3=Ye(this.es),this.ml0=this.a*Ve(this.e0,this.e1,this.e2,this.e3,this.lat0)},forward:function(e){var t,o,n,i=e.x,r=e.y,a=P(i-this.long0);if(n=a*Math.sin(r),this.sphere)Math.abs(r)<=1e-10?(t=this.a*a,o=-1*this.a*this.lat0):(t=this.a*Math.sin(n)/Math.tan(r),o=this.a*(Ze(r-this.lat0)+(1-Math.cos(n))/Math.tan(r)));else if(Math.abs(r)<=1e-10)t=this.a*a,o=-1*this.ml0;else{var s=Je(this.a,this.e,Math.sin(r))/Math.tan(r);t=s*Math.sin(n),o=this.a*Ve(this.e0,this.e1,this.e2,this.e3,r)-this.ml0+s*(1-Math.cos(n))}return e.x=t+this.x0,e.y=o+this.y0,e},inverse:function(e){var t,o,n,i,r,a,s,l,c;if(n=e.x-this.x0,i=e.y-this.y0,this.sphere)if(Math.abs(i+this.a*this.lat0)<=1e-10)t=P(n/this.a+this.long0),o=0;else{var u;for(a=this.lat0+i/this.a,s=n*n/this.a/this.a+a*a,l=a,r=20;r;--r)if(l+=c=-1*(a*(l*(u=Math.tan(l))+1)-l-.5*(l*l+s)*u)/((l-a)/u-1),Math.abs(c)<=1e-10){o=l;break}t=P(this.long0+Math.asin(n*Math.tan(l)/this.a)/Math.sin(o))}else if(Math.abs(i+this.ml0)<=1e-10)o=0,t=P(this.long0+n/this.a);else{var d,p,h,g,m;for(a=(this.ml0+i)/this.a,s=n*n/this.a/this.a+a*a,l=a,r=20;r;--r)if(m=this.e*Math.sin(l),d=Math.sqrt(1-m*m)*Math.tan(l),p=this.a*Ve(this.e0,this.e1,this.e2,this.e3,l),h=this.e0-2*this.e1*Math.cos(2*l)+4*this.e2*Math.cos(4*l)-6*this.e3*Math.cos(6*l),l-=c=(a*(d*(g=p/this.a)+1)-g-.5*d*(g*g+s))/(this.es*Math.sin(2*l)*(g*g+s-2*a*g)/(4*d)+(a-g)*(d*h-2/Math.sin(2*l))-h),Math.abs(c)<=1e-10){o=l;break}d=Math.sqrt(1-this.es*Math.pow(Math.sin(o),2))*Math.tan(o),t=P(this.long0+Math.asin(n*d/this.a)/Math.sin(o))}return e.x=t,e.y=o,e},names:["Polyconic","poly"]},at={init:function(){this.A=[],this.A[1]=.6399175073,this.A[2]=-.1358797613,this.A[3]=.063294409,this.A[4]=-.02526853,this.A[5]=.0117879,this.A[6]=-.0055161,this.A[7]=.0026906,this.A[8]=-.001333,this.A[9]=67e-5,this.A[10]=-34e-5,this.B_re=[],this.B_im=[],this.B_re[1]=.7557853228,this.B_im[1]=0,this.B_re[2]=.249204646,this.B_im[2]=.003371507,this.B_re[3]=-.001541739,this.B_im[3]=.04105856,this.B_re[4]=-.10162907,this.B_im[4]=.01727609,this.B_re[5]=-.26623489,this.B_im[5]=-.36249218,this.B_re[6]=-.6870983,this.B_im[6]=-1.1651967,this.C_re=[],this.C_im=[],this.C_re[1]=1.3231270439,this.C_im[1]=0,this.C_re[2]=-.577245789,this.C_im[2]=-.007809598,this.C_re[3]=.508307513,this.C_im[3]=-.112208952,this.C_re[4]=-.15094762,this.C_im[4]=.18200602,this.C_re[5]=1.01418179,this.C_im[5]=1.64497696,this.C_re[6]=1.9660549,this.C_im[6]=2.5127645,this.D=[],this.D[1]=1.5627014243,this.D[2]=.5185406398,this.D[3]=-.03333098,this.D[4]=-.1052906,this.D[5]=-.0368594,this.D[6]=.007317,this.D[7]=.0122,this.D[8]=.00394,this.D[9]=-.0013},forward:function(t){var o,n=t.x,i=t.y-this.lat0,r=n-this.long0,a=i/e*1e-5,s=r,l=1,c=0;for(o=1;o<=10;o++)l*=a,c+=this.A[o]*l;var u,d=c,p=s,h=1,g=0,m=0,f=0;for(o=1;o<=6;o++)u=g*d+h*p,h=h*d-g*p,g=u,m=m+this.B_re[o]*h-this.B_im[o]*g,f=f+this.B_im[o]*h+this.B_re[o]*g;return t.x=f*this.a+this.x0,t.y=m*this.a+this.y0,t},inverse:function(t){var o,n,i=t.x,r=t.y,a=i-this.x0,s=(r-this.y0)/this.a,l=a/this.a,c=1,u=0,d=0,p=0;for(o=1;o<=6;o++)n=u*s+c*l,c=c*s-u*l,u=n,d=d+this.C_re[o]*c-this.C_im[o]*u,p=p+this.C_im[o]*c+this.C_re[o]*u;for(var h=0;h.999999999999&&(o=.999999999999),t=Math.asin(o);var n=P(this.long0+e.x/(.900316316158*this.a*Math.cos(t)));n<-Math.PI&&(n=-Math.PI),n>Math.PI&&(n=Math.PI),o=(2*t+Math.sin(2*t))/Math.PI,Math.abs(o)>1&&(o=1);var i=Math.asin(o);return e.x=n,e.y=i,e},names:["Mollweide","moll"]},ut={init:function(){Math.abs(this.lat1+this.lat2)<1e-10||(this.lat2=this.lat2||this.lat1,this.temp=this.b/this.a,this.es=1-Math.pow(this.temp,2),this.e=Math.sqrt(this.es),this.e0=qe(this.es),this.e1=We(this.es),this.e2=He(this.es),this.e3=Ye(this.es),this.sinphi=Math.sin(this.lat1),this.cosphi=Math.cos(this.lat1),this.ms1=M(this.e,this.sinphi,this.cosphi),this.ml1=Ve(this.e0,this.e1,this.e2,this.e3,this.lat1),Math.abs(this.lat1-this.lat2)<1e-10?this.ns=this.sinphi:(this.sinphi=Math.sin(this.lat2),this.cosphi=Math.cos(this.lat2),this.ms2=M(this.e,this.sinphi,this.cosphi),this.ml2=Ve(this.e0,this.e1,this.e2,this.e3,this.lat2),this.ns=(this.ms1-this.ms2)/(this.ml2-this.ml1)),this.g=this.ml1+this.ms1/this.ns,this.ml0=Ve(this.e0,this.e1,this.e2,this.e3,this.lat0),this.rh=this.a*(this.g-this.ml0))},forward:function(e){var t,o=e.x,n=e.y;if(this.sphere)t=this.a*(this.g-n);else{var i=Ve(this.e0,this.e1,this.e2,this.e3,n);t=this.a*(this.g-i)}var r=this.ns*P(o-this.long0),a=this.x0+t*Math.sin(r),s=this.y0+this.rh-t*Math.cos(r);return e.x=a,e.y=s,e},inverse:function(e){var t,o,n,i;e.x-=this.x0,e.y=this.rh-e.y+this.y0,this.ns>=0?(o=Math.sqrt(e.x*e.x+e.y*e.y),t=1):(o=-Math.sqrt(e.x*e.x+e.y*e.y),t=-1);var r=0;if(0!==o&&(r=Math.atan2(t*e.x,t*e.y)),this.sphere)return i=P(this.long0+r/this.ns),n=Ze(this.g-o/this.a),e.x=i,e.y=n,e;var a=this.g-o/this.a;return n=Ke(a,this.e0,this.e1,this.e2,this.e3),i=P(this.long0+r/this.ns),e.x=i,e.y=n,e},names:["Equidistant_Conic","eqdc"]},dt={init:function(){this.R=this.a},forward:function(e){var o,n,i=e.x,r=e.y,a=P(i-this.long0);Math.abs(r)<=1e-10&&(o=this.x0+this.R*a,n=this.y0);var s=et(2*Math.abs(r/Math.PI));(Math.abs(a)<=1e-10||Math.abs(Math.abs(r)-t)<=1e-10)&&(o=this.x0,n=r>=0?this.y0+Math.PI*this.R*Math.tan(.5*s):this.y0+Math.PI*this.R*-Math.tan(.5*s));var l=.5*Math.abs(Math.PI/a-a/Math.PI),c=l*l,u=Math.sin(s),d=Math.cos(s),p=d/(u+d-1),h=p*p,g=p*(2/u-1),m=g*g,f=Math.PI*this.R*(l*(p-m)+Math.sqrt(c*(p-m)*(p-m)-(m+c)*(h-m)))/(m+c);a<0&&(f=-f),o=this.x0+f;var y=c+p;return f=Math.PI*this.R*(g*y-l*Math.sqrt((m+c)*(c+1)-y*y))/(m+c),n=r>=0?this.y0+f:this.y0-f,e.x=o,e.y=n,e},inverse:function(e){var t,o,n,i,r,a,s,l,c,u,d,p;return e.x-=this.x0,e.y-=this.y0,d=Math.PI*this.R,r=(n=e.x/d)*n+(i=e.y/d)*i,d=3*(i*i/(l=-2*(a=-Math.abs(i)*(1+r))+1+2*i*i+r*r)+(2*(s=a-2*i*i+n*n)*s*s/l/l/l-9*a*s/l/l)/27)/(c=(a-s*s/3/l)/l)/(u=2*Math.sqrt(-c/3)),Math.abs(d)>1&&(d=d>=0?1:-1),p=Math.acos(d)/3,o=e.y>=0?(-u*Math.cos(p+Math.PI/3)-s/3/l)*Math.PI:-(-u*Math.cos(p+Math.PI/3)-s/3/l)*Math.PI,t=Math.abs(n)<1e-10?this.long0:P(this.long0+Math.PI*(r-1+Math.sqrt(1+2*(n*n-i*i)+r*r))/2/n),e.x=t,e.y=o,e},names:["Van_der_Grinten_I","VanDerGrinten","vandg"]},pt={init:function(){this.sin_p12=Math.sin(this.lat0),this.cos_p12=Math.cos(this.lat0)},forward:function(e){var o,n,i,r,a,s,l,c,u,d,p,h,g,m,f,y,A,v,C,I,b,w,E=e.x,_=e.y,S=Math.sin(e.y),M=Math.cos(e.y),x=P(E-this.long0);return this.sphere?Math.abs(this.sin_p12-1)<=1e-10?(e.x=this.x0+this.a*(t-_)*Math.sin(x),e.y=this.y0-this.a*(t-_)*Math.cos(x),e):Math.abs(this.sin_p12+1)<=1e-10?(e.x=this.x0+this.a*(t+_)*Math.sin(x),e.y=this.y0+this.a*(t+_)*Math.cos(x),e):(v=this.sin_p12*S+this.cos_p12*M*Math.cos(x),A=(y=Math.acos(v))?y/Math.sin(y):1,e.x=this.x0+this.a*A*M*Math.sin(x),e.y=this.y0+this.a*A*(this.cos_p12*S-this.sin_p12*M*Math.cos(x)),e):(o=qe(this.es),n=We(this.es),i=He(this.es),r=Ye(this.es),Math.abs(this.sin_p12-1)<=1e-10?(a=this.a*Ve(o,n,i,r,t),s=this.a*Ve(o,n,i,r,_),e.x=this.x0+(a-s)*Math.sin(x),e.y=this.y0-(a-s)*Math.cos(x),e):Math.abs(this.sin_p12+1)<=1e-10?(a=this.a*Ve(o,n,i,r,t),s=this.a*Ve(o,n,i,r,_),e.x=this.x0+(a+s)*Math.sin(x),e.y=this.y0+(a+s)*Math.cos(x),e):(l=S/M,c=Je(this.a,this.e,this.sin_p12),u=Je(this.a,this.e,S),d=Math.atan((1-this.es)*l+this.es*c*this.sin_p12/(u*M)),C=0===(p=Math.atan2(Math.sin(x),this.cos_p12*Math.tan(d)-this.sin_p12*Math.cos(x)))?Math.asin(this.cos_p12*Math.sin(d)-this.sin_p12*Math.cos(d)):Math.abs(Math.abs(p)-Math.PI)<=1e-10?-Math.asin(this.cos_p12*Math.sin(d)-this.sin_p12*Math.cos(d)):Math.asin(Math.sin(x)*Math.cos(d)/Math.sin(p)),h=this.e*this.sin_p12/Math.sqrt(1-this.es),y=c*C*(1-(I=C*C)*(f=(g=this.e*this.cos_p12*Math.cos(p)/Math.sqrt(1-this.es))*g)*(1-f)/6+(b=I*C)/8*(m=h*g)*(1-2*f)+(w=b*C)/120*(f*(4-7*f)-3*h*h*(1-7*f))-w*C/48*m),e.x=this.x0+y*Math.sin(p),e.y=this.y0+y*Math.cos(p),e))},inverse:function(e){var o,n,i,r,a,s,l,c,u,d,p,h,g,m,f,y,A,v,C,I,b,w,E;if(e.x-=this.x0,e.y-=this.y0,this.sphere){if((o=Math.sqrt(e.x*e.x+e.y*e.y))>2*t*this.a)return;return n=o/this.a,i=Math.sin(n),r=Math.cos(n),a=this.long0,Math.abs(o)<=1e-10?s=this.lat0:(s=et(r*this.sin_p12+e.y*i*this.cos_p12/o),l=Math.abs(this.lat0)-t,a=Math.abs(l)<=1e-10?this.lat0>=0?P(this.long0+Math.atan2(e.x,-e.y)):P(this.long0-Math.atan2(-e.x,e.y)):P(this.long0+Math.atan2(e.x*i,o*this.cos_p12*r-e.y*this.sin_p12*i))),e.x=a,e.y=s,e}return c=qe(this.es),u=We(this.es),d=He(this.es),p=Ye(this.es),Math.abs(this.sin_p12-1)<=1e-10?(h=this.a*Ve(c,u,d,p,t),o=Math.sqrt(e.x*e.x+e.y*e.y),s=Ke((h-o)/this.a,c,u,d,p),a=P(this.long0+Math.atan2(e.x,-1*e.y)),e.x=a,e.y=s,e):Math.abs(this.sin_p12+1)<=1e-10?(h=this.a*Ve(c,u,d,p,t),o=Math.sqrt(e.x*e.x+e.y*e.y),s=Ke((o-h)/this.a,c,u,d,p),a=P(this.long0+Math.atan2(e.x,e.y)),e.x=a,e.y=s,e):(o=Math.sqrt(e.x*e.x+e.y*e.y),f=Math.atan2(e.x,e.y),g=Je(this.a,this.e,this.sin_p12),y=Math.cos(f),v=-(A=this.e*this.cos_p12*y)*A/(1-this.es),C=3*this.es*(1-v)*this.sin_p12*this.cos_p12*y/(1-this.es),w=1-v*(b=(I=o/g)-v*(1+v)*Math.pow(I,3)/6-C*(1+3*v)*Math.pow(I,4)/24)*b/2-I*b*b*b/6,m=Math.asin(this.sin_p12*Math.cos(b)+this.cos_p12*Math.sin(b)*y),a=P(this.long0+Math.asin(Math.sin(f)*Math.sin(b)/Math.cos(m))),E=Math.sin(m),s=Math.atan2((E-this.es*w*this.sin_p12)*Math.tan(m),E*(1-this.es)),e.x=a,e.y=s,e)},names:["Azimuthal_Equidistant","aeqd"]},ht={init:function(){this.sin_p14=Math.sin(this.lat0),this.cos_p14=Math.cos(this.lat0)},forward:function(e){var t,o,n,i,r,a,s,l=e.x,c=e.y;return n=P(l-this.long0),t=Math.sin(c),o=Math.cos(c),i=Math.cos(n),((r=this.sin_p14*t+this.cos_p14*o*i)>0||Math.abs(r)<=1e-10)&&(a=1*this.a*o*Math.sin(n),s=this.y0+1*this.a*(this.cos_p14*t-this.sin_p14*o*i)),e.x=a,e.y=s,e},inverse:function(e){var o,n,i,r,a,s,l;return e.x-=this.x0,e.y-=this.y0,o=Math.sqrt(e.x*e.x+e.y*e.y),n=et(o/this.a),i=Math.sin(n),r=Math.cos(n),s=this.long0,Math.abs(o)<=1e-10?(l=this.lat0,e.x=s,e.y=l,e):(l=et(r*this.sin_p14+e.y*i*this.cos_p14/o),a=Math.abs(this.lat0)-t,Math.abs(a)<=1e-10?(s=this.lat0>=0?P(this.long0+Math.atan2(e.x,-e.y)):P(this.long0-Math.atan2(-e.x,e.y)),e.x=s,e.y=l,e):(s=P(this.long0+Math.atan2(e.x*i,o*this.cos_p14*r-e.y*this.sin_p14*i)),e.x=s,e.y=l,e))},names:["ortho"]},gt=1,mt=2,ft=3,yt=4,At=5,vt=6,Ct=1,It=2,bt=3,wt=4;function Et(e,o,n,r){var s;return e<1e-10?(r.value=Ct,s=0):(s=Math.atan2(o,n),Math.abs(s)<=i?r.value=Ct:s>i&&s<=t+i?(r.value=It,s-=t):s>t+i||s<=-(t+i)?(r.value=bt,s=s>=0?s-a:s+a):(r.value=wt,s+=t)),s}function _t(e,t){var o=e+t;return o<-a?o+=r:o>+a&&(o-=r),o}var St,Mt={init:function(){this.x0=this.x0||0,this.y0=this.y0||0,this.lat0=this.lat0||0,this.long0=this.long0||0,this.lat_ts=this.lat_ts||0,this.title=this.title||"Quadrilateralized Spherical Cube",this.lat0>=t-i/2?this.face=At:this.lat0<=-(t-i/2)?this.face=vt:Math.abs(this.long0)<=i?this.face=gt:Math.abs(this.long0)<=t+i?this.face=this.long0>0?mt:yt:this.face=ft,0!==this.es&&(this.one_minus_f=1-(this.a-this.b)/this.a,this.one_minus_f_squared=this.one_minus_f*this.one_minus_f)},forward:function(e){var o,n,r,s,l,c,u={x:0,y:0},d={value:0};if(e.x-=this.long0,o=0!==this.es?Math.atan(this.one_minus_f_squared*Math.tan(e.y)):e.y,n=e.x,this.face===At)s=t-o,n>=i&&n<=t+i?(d.value=Ct,r=n-t):n>t+i||n<=-(t+i)?(d.value=It,r=n>0?n-a:n+a):n>-(t+i)&&n<=-i?(d.value=bt,r=n+t):(d.value=wt,r=n);else if(this.face===vt)s=t+o,n>=i&&n<=t+i?(d.value=Ct,r=-n+t):n=-i?(d.value=It,r=-n):n<-i&&n>=-(t+i)?(d.value=bt,r=-n-t):(d.value=wt,r=n>0?-n+a:-n-a);else{var p,h,g,m,f,y;this.face===mt?n=_t(n,+t):this.face===ft?n=_t(n,+a):this.face===yt&&(n=_t(n,-t)),m=Math.sin(o),f=Math.cos(o),y=Math.sin(n),p=f*Math.cos(n),h=f*y,g=m,this.face===gt?r=Et(s=Math.acos(p),g,h,d):this.face===mt?r=Et(s=Math.acos(h),g,-p,d):this.face===ft?r=Et(s=Math.acos(-p),g,-h,d):this.face===yt?r=Et(s=Math.acos(-h),g,p,d):(s=r=0,d.value=Ct)}return c=Math.atan(12/a*(r+Math.acos(Math.sin(r)*Math.cos(i))-t)),l=Math.sqrt((1-Math.cos(s))/(Math.cos(c)*Math.cos(c))/(1-Math.cos(Math.atan(1/Math.cos(r))))),d.value===It?c+=t:d.value===bt?c+=a:d.value===wt&&(c+=1.5*a),u.x=l*Math.cos(c),u.y=l*Math.sin(c),u.x=u.x*this.a+this.x0,u.y=u.y*this.a+this.y0,e.x=u.x,e.y=u.y,e},inverse:function(e){var o,n,i,r,s,l,c,u,d,p,h,g,m={lam:0,phi:0},f={value:0};if(e.x=(e.x-this.x0)/this.a,e.y=(e.y-this.y0)/this.a,n=Math.atan(Math.sqrt(e.x*e.x+e.y*e.y)),o=Math.atan2(e.y,e.x),e.x>=0&&e.x>=Math.abs(e.y)?f.value=Ct:e.y>=0&&e.y>=Math.abs(e.x)?(f.value=It,o-=t):e.x<0&&-e.x>=Math.abs(e.y)?(f.value=bt,o=o<0?o+a:o-a):(f.value=wt,o+=t),d=a/12*Math.tan(o),s=Math.sin(d)/(Math.cos(d)-1/Math.sqrt(2)),l=Math.atan(s),(c=1-(i=Math.cos(o))*i*(r=Math.tan(n))*r*(1-Math.cos(Math.atan(1/Math.cos(l)))))<-1?c=-1:c>1&&(c=1),this.face===At)u=Math.acos(c),m.phi=t-u,f.value===Ct?m.lam=l+t:f.value===It?m.lam=l<0?l+a:l-a:f.value===bt?m.lam=l-t:m.lam=l;else if(this.face===vt)u=Math.acos(c),m.phi=u-t,f.value===Ct?m.lam=-l+t:f.value===It?m.lam=-l:f.value===bt?m.lam=-l-t:m.lam=l<0?-l-a:-l+a;else{var y,A,v;d=(y=c)*y,A=(d+=(v=d>=1?0:Math.sqrt(1-d)*Math.sin(l))*v)>=1?0:Math.sqrt(1-d),f.value===It?(d=A,A=-v,v=d):f.value===bt?(A=-A,v=-v):f.value===wt&&(d=A,A=v,v=-d),this.face===mt?(d=y,y=-A,A=d):this.face===ft?(y=-y,A=-A):this.face===yt&&(d=y,y=A,A=-d),m.phi=Math.acos(-v)-t,m.lam=Math.atan2(A,y),this.face===mt?m.lam=_t(m.lam,-t):this.face===ft?m.lam=_t(m.lam,-a):this.face===yt&&(m.lam=_t(m.lam,+t))}return 0!==this.es&&(p=m.phi<0?1:0,h=Math.tan(m.phi),g=this.b/Math.sqrt(h*h+this.one_minus_f_squared),m.phi=Math.atan(Math.sqrt(this.a*this.a-g*g)/(this.one_minus_f*g)),p&&(m.phi=-m.phi)),m.lam+=this.long0,e.x=m.lam,e.y=m.phi,e},names:["Quadrilateralized Spherical Cube","Quadrilateralized_Spherical_Cube","qsc"]},xt=[[1,22199e-21,-715515e-10,31103e-10],[.9986,-482243e-9,-24897e-9,-13309e-10],[.9954,-83103e-8,-448605e-10,-9.86701e-7],[.99,-.00135364,-59661e-9,36777e-10],[.9822,-.00167442,-449547e-11,-572411e-11],[.973,-.00214868,-903571e-10,1.8736e-8],[.96,-.00305085,-900761e-10,164917e-11],[.9427,-.00382792,-653386e-10,-26154e-10],[.9216,-.00467746,-10457e-8,481243e-11],[.8962,-.00536223,-323831e-10,-543432e-11],[.8679,-.00609363,-113898e-9,332484e-11],[.835,-.00698325,-640253e-10,9.34959e-7],[.7986,-.00755338,-500009e-10,9.35324e-7],[.7597,-.00798324,-35971e-9,-227626e-11],[.7186,-.00851367,-701149e-10,-86303e-10],[.6732,-.00986209,-199569e-9,191974e-10],[.6213,-.010418,883923e-10,624051e-11],[.5722,-.00906601,182e-6,624051e-11],[.5322,-.00677797,275608e-9,624051e-11]],Pt=[[-520417e-23,.0124,121431e-23,-845284e-16],[.062,.0124,-1.26793e-9,4.22642e-10],[.124,.0124,5.07171e-9,-1.60604e-9],[.186,.0123999,-1.90189e-8,6.00152e-9],[.248,.0124002,7.10039e-8,-2.24e-8],[.31,.0123992,-2.64997e-7,8.35986e-8],[.372,.0124029,9.88983e-7,-3.11994e-7],[.434,.0123893,-369093e-11,-4.35621e-7],[.4958,.0123198,-102252e-10,-3.45523e-7],[.5571,.0121916,-154081e-10,-5.82288e-7],[.6176,.0119938,-241424e-10,-5.25327e-7],[.6769,.011713,-320223e-10,-5.16405e-7],[.7346,.0113541,-397684e-10,-6.09052e-7],[.7903,.0109107,-489042e-10,-104739e-11],[.8435,.0103431,-64615e-9,-1.40374e-9],[.8936,.00969686,-64636e-9,-8547e-9],[.9394,.00840947,-192841e-9,-42106e-10],[.9761,.00616527,-256e-6,-42106e-10],[1,.00328947,-319159e-9,-42106e-10]],kt=n/5,Gt=function(e,t){return e[0]+t*(e[1]+t*(e[2]+t*e[3]))},Rt={init:function(){this.x0=this.x0||0,this.y0=this.y0||0,this.long0=this.long0||0,this.es=0,this.title=this.title||"Robinson"},forward:function(e){var t=P(e.x-this.long0),o=Math.abs(e.y),i=Math.floor(o*kt);i<0?i=0:i>=18&&(i=17);var r={x:Gt(xt[i],o=n*(o-.08726646259971647*i))*t,y:Gt(Pt[i],o)};return e.y<0&&(r.y=-r.y),r.x=r.x*this.a*.8487+this.x0,r.y=r.y*this.a*1.3523+this.y0,r},inverse:function(e){var n={x:(e.x-this.x0)/(.8487*this.a),y:Math.abs(e.y-this.y0)/(1.3523*this.a)};if(n.y>=1)n.x/=xt[18][0],n.y=e.y<0?-t:t;else{var i=Math.floor(18*n.y);for(i<0?i=0:i>=18&&(i=17);;)if(Pt[i][0]>n.y)--i;else{if(!(Pt[i+1][0]<=n.y))break;++i}var r=Pt[i],a=5*(n.y-r[0])/(Pt[i+1][0]-r[0]);a=function(e,t,o,n){for(var i=t;n;--n){var r=e(i);if(i-=r,Math.abs(r)1&&console.log("Only single NTv2 subgrids are currently supported, subsequent sub grids are ignored");var r=function(e,t,o){for(var n=[],i=0;i3?n.splice(3,n.length-1):[],void 0!==this.listeners[e]?this.listeners[e].push({scope:o,callback:t,args:n}):this.listeners[e]=[{scope:o,callback:t,args:n}]},removeEventListener:function(e,t,o){if(void 0!==this.listeners[e]){for(var n=this.listeners[e].length,i=[],r=0;r0;for(var i=0;i2?n.splice(2,n.length-1):[],n=[o].concat(n),void 0!==this.listeners[e]){var a=this.listeners[e].slice(),s=a.length;for(r=0;r0?r.replace("%var%",i.join(" - ")):r.replace("%var%","%var% (not specified)")}catch(e){}return r}},I={normalyzeParameters:function(e){var t=null;if(e){var o=[];for(var n in e)if(e.hasOwnProperty(n)){var i=e[n];i||(i=""),o.push(n+"="+i)}t=o.join("&")}return t},normalyzeUrl:function(e,t,o){var n=e;if(e){var i=e.indexOf("?");-1===i&&(n+="?"),-1!==i&&i!==e.length-1&&(n+="&")}return t&&(n+="string"==typeof t?t=t.replace("?",""):this.normalyzeParameters(t)),o&&(n=encodeURIComponent(n)),n},indent:function(e,t){return new Array((e||0)+1).join("\t")+t}},b=o(64),w=o.n(b),E={call:function(e){var t=v.getLogger("XHR");if(t.trace("[XHR::call()]"),w.a.polyfill(),!e.url)throw new Error("missing parameter : url is not defined !");if(!e.method)throw new Error("missing parameter : method is not defined !");e.format||(e.format="text");var o={};switch(o.url=e.url,o.data=e.data?e.data:null,o.method=e.method,o.timeOut=e.timeOut||0,o.scope=e.scope||this,o.proxy=e.proxy||null,o.content=e.content||null,o.headers=e.headers||{referer:"http://localhost"},e.method){case"DELETE":case"GET":break;case"PUT":case"POST":o.content=e.content?e.content:"application/x-www-form-urlencoded",o.headers=e.headers?e.headers:{referer:"http://localhost"};break;case"HEAD":case"OPTIONS":throw new Error("HTTP method not yet supported !");default:throw new Error("HTTP method unknown !")}switch(e.format){case"text":this.__call(o).then((function(o){t.trace(o),e.onResponse.call(this,o)})).catch((function(t){e.onFailure.call(this,t)}));break;case"json":this.__callJSON(o).then((function(o){t.trace(o),e.onResponse.call(this,o)})).catch((function(t){e.onFailure.call(this,t)}));break;case"xml":this.__callXML(o).then((function(o){t.trace(o),e.onResponse.call(this,o)})).catch((function(t){e.onFailure.call(this,t)}));break;default:throw new Error("This output Format is not yet supported !")}},__call:function(e){var t=v.getLogger("XHR");return t.trace("[XHR::__call()]"),new Promise((function(n,i){var r="POST"===e.method||"PUT"===e.method?1:0;e.data&&("object"==typeof e.data&&Object.keys(e.data).length||"string"==typeof e.data&&e.data.length)&&!r&&(e.url=I.normalyzeUrl(e.url,e.data)),t.trace("URL = ",e.url);var a=null;if("undefined"==typeof window){var s=o(59),l={headers:{Referer:"https://localhost"}};return e.data&&"string"==typeof e.data&&r&&(l={method:e.method,body:e.data,headers:{"Content-Type":e.content,Referer:"https://localhost"}}),s(e.url,l).then((function(e){if(e.ok)n(e.text());else{var t="Errors Occured on Http Request (status : '"+e.statusText+"' | url : '"+e.url+"')",o=e.status;i({message:t,status:o})}})).catch((function(e){i({message:e,status:-1})}))}if(window.XMLHttpRequest){t.trace("XMLHttpRequest"),(a=new XMLHttpRequest).open(e.method,e.url,!0),a.overrideMimeType=e.content;var c=null;e.timeOut>0&&(t.trace("XHR - TimeOut actif !"),c=window.setTimeout((function(){i({message:"TimeOut Occured on Http Request with XMLHttpRequest !",status:-1})}),e.timeOut)),r&&(t.trace("data = ",e.data),a.setRequestHeader("Content-type",e.content)),a.onerror=function(e){console.log(e),i(new Error("Errors Occured on Http Request with XMLHttpRequest !"))},a.ontimeout=function(e){console.log(e),i(new Error("TimeOut Occured on Http Request with XMLHttpRequest !"))},a.onreadystatechange=function(e){if(4===a.readyState)if(200===a.status)window.clearTimeout(c),n(a.response);else{var t="Errors Occured on Http Request (status : '"+e.target.statusText+"' | url : '"+e.target.responseURL+"' | response : '"+e.target.response+"')",o=e.target.status;i({message:t,status:o})}};var u=e.data&&r?e.data:null;a.send(u)}else{if(!window.XDomainRequest)throw new Error("CORS not supported");t.trace("XDomainRequest"),(a=new XDomainRequest).open(e.method,e.url),a.overrideMimeType=e.content,e.timeOut>0&&(a.timeout=e.timeout,t.trace("XHR - TimeOut actif !")),r&&a.setRequestHeader("Content-type",e.content),a.onerror=function(){i(new Error("Errors Occured on Http Request with XMLHttpRequest !"))},a.ontimeout=function(){i(new Error("TimeOut Occured on Http Request with XMLHttpRequest !"))},a.onload=function(e){if(200===a.status)n(a.responseText);else{var t="Errors Occured on Http Request (status : '"+e.target.statusText+"' | url : '"+e.target.responseURL+"')",o=e.target.status;i({message:t,status:o})}};var d=e.data&&r?e.data:null;a.send(d)}}))},__callJSON:function(e){return this.__call(e).then(JSON.parse).catch((function(t){console.log("_callJSON failed on : ",e.url,t)}))},__callXML:function(e){return this.__call(e).then((function(e){var t;"undefined"==typeof window?t=(new(0,o(60).DOMParser)).parseFromString(e,"text/xml"):window.DOMParser?t=(new window.DOMParser).parseFromString(e,"text/xml"):((t=new window.ActiveXObject("Microsoft.XMLDOM")).async=!1,t.loadXML(e));return t})).catch((function(t){console.log("__callXML failed on : ",e.url,t)}))}},_={uuid:(n=Math.floor(Date.now()),function(){return n++}),call:function(e){var t=v.getLogger("JSONP");if(t.trace("[JSONP::call ()]"),!e)throw t.error("missing parameter : options !"),new Error("missing parameter : options !");if(!e.url)throw t.error("missing parameter : options.url !"),new Error("missing parameter : options.url !");if(e.timeOut||(t.info("setting 'options.timeOut' default value"),e.timeOut=0),!e.onResponse)throw t.error("missing parameter : options.onResponse !"),new Error("missing parameter : options.onResponse !");var o="string"==typeof e.callbackSuffix?e.callbackSuffix:this.uuid(),n=!1,i=!1,r=e.url.indexOf("callback=");if(-1!==r){n=!0;var a=e.url.indexOf("&",r);-1===a&&(a=e.url.length);var s=e.url.substring(r+9,a);s&&(i=!0,e.callbackName=s,t.info("setting 'options.callbackName' value ("+e.callbackName+") from 'options.url' parameter"))}if(!n){var l=e.url.indexOf("?");-1===l?e.url=e.url+"?callback=":l===e.url.length?e.url=e.url+"callback=":e.url=e.url+"&callback=",t.info("setting callback default key in 'options.url' : "+e.url)}var c=!!e.callbackName||i;if(i||(e.callbackName||(t.info("setting 'options.callbackName' default value"),e.callbackName="callback",(o||""===o)&&(e.callbackName+=o)),e.url=e.url.replace("callback=","callback="+e.callbackName),t.info("setting callback function name in 'options.url' : "+e.url)),e.onTimeOut||(t.info("setting 'options.onTimeOut' default value"),e.onTimeOut=function(){console.log("TimeOut while invoking url : "+e.url)}),!c){var u=this,d=null;e.timeOut>0&&(d=window.setTimeout((function(){window[e.callbackName]=function(){},e.onTimeOut(),u._deleteScript(o)}),e.timeOut)),window[e.callbackName]=function(t){window.clearTimeout(d),e.onResponse(t),u._deleteScript(o)}}this._createScript(o,e.url)},_createScript:function(e,t){var o,n=document.getElementById("results"+e);(o=document.createElement("script")).setAttribute("type","text/javascript"),o.setAttribute("src",t),o.setAttribute("charset","UTF-8"),o.setAttribute("id","results"+e),o.setAttribute("async","true");var i=document.documentElement||document.getElementsByTagName("head")[0];null===n?i.appendChild(o):i.replaceChild(o,n)},_deleteScript:function(e){var t=document.getElementById("results"+e);if(t){var o=t.parentNode||document.documentElement;if(!o)return;o.removeChild(t)}}},S={send:function(e){var t=e||{method:"GET",protocol:"XHR",timeOut:0,format:null,wrap:!0,nocache:!0,output:"json",callback:null,callbackSuffix:null};if("undefined"!=typeof window||"JSONP"!==e.protocol){if("XHR"===e.protocol||"json"===e.format?t.wrap=!1:"JSONP"===e.protocol&&"xml"===e.format&&(t.wrap=!0),t.callback=null,t.output=t.wrap?"json":null,t.wrap){var o={};o.output=t.output,o.callback=t.callback,delete o.callback,t.url=I.normalyzeUrl(e.url,o)}switch(t.protocol){case"XHR":"GET"===e.method&&e.nocache&&(t.url=I.normalyzeUrl(t.url,{t:(new Date).getTime()})),E.call(t);break;case"JSONP":t.data&&(t.url=I.normalyzeUrl(t.url,t.data)),_.call(t);break;default:throw new Error("protocol not supported (XHR|JSONP) !")}}else console.log("Value (s) for parameter (s) 'protocol=JSONP (instead use XHR)' not supported to NodeJS")}};function M(e){if(!(this instanceof M))throw new TypeError("ErrorService constructor cannot be called as a function.");var t=e;"string"==typeof e||e instanceof String?(this.message=e,this.status=-1,this.type=M.TYPE_UNKERR):(this.message=t.message||"undefined!?",this.type=t.type,this.status=t.status||-1),this.name="ErrorService",this.stack=(new Error).stack}M.TYPE_SRVERR="SERVICE_ERROR",M.TYPE_USEERR="USAGE_ERROR",M.TYPE_UNKERR="UNKNOWN_ERROR",M.prototype=Object.create(Error.prototype,{constructor:{value:M,writable:!0,configurable:!0}});var x=M,P=o(31);function k(e){if(!(this instanceof k))throw new TypeError(C.getMessage("CLASS_CONSTRUCTOR"));for(var t in this.logger=v.getLogger("CommonService"),this.logger.trace("[Constructeur CommonService (options)]"),this.options={protocol:"XHR",ssl:!0,proxyURL:"",callbackSuffix:null,httpMethod:"GET",timeOut:0,rawResponse:!1,scope:this,onSuccess:function(e){console.log("onSuccess - la reponse est la suivante : ",e)},onFailure:function(e){200!==e.status&&e.status?console.log("onFailure - Erreur (",e.status,") : ",e.message):console.log("onFailure : ",e.message)}},e)e.hasOwnProperty(t)&&(this.options[t]=e[t]);if(this.options.rawResponse&&!this.options.onSuccess&&(this.options.onSuccess=function(e){console.log("onSuccess - la réponse brute du service est la suivante : ",e)}),!!(null===this.options.onSuccess||"function"!=typeof this.options.onSuccess))throw new Error(C.getMessage("PARAM_MISSING","onSuccess()"));switch(this.options.httpMethod="string"==typeof e.httpMethod?e.httpMethod.toUpperCase():"GET",this.options.httpMethod){case"POST":case"GET":break;case"PUT":case"DELETE":case"HEAD":case"OPTIONS":throw new Error(C.getMessage("PARAM_NOT_SUPPORT","httpMethod"));default:throw new Error(C.getMessage("PARAM_UNKNOWN","httpMethod"))}switch(this.options.protocol="string"==typeof e.protocol?e.protocol.toUpperCase():"XHR",this.options.protocol){case"JSONP":case"XHR":break;default:throw new Error(C.getMessage("PARAM_UNKNOWN","protocol"))}if("undefined"==typeof window&&"JSONP"===this.options.protocol)throw new Error(C.getMessage("PARAM_NOT_SUPPORT_NODEJS","protocol=JSONP (instead use XHR)"));"JSONP"===this.options.protocol&&(this.options.httpMethod="GET"),this.options.nocache=e.nocache||!1,this.options.outputFormat=null,this.request=null,this.response=null}k.prototype={constructor:k,call:function(){this.logger.trace("CommonService::call ()");var e=this;function t(t){this.logger.trace("CommonService::onBuildRequest : ",t),this.callService.call(e,i,o)}function o(t){this.logger.trace("CommonService::onCallService : ",t),this.analyzeResponse.call(e,i,n)}function n(e){if(this.logger.trace("CommonService::onAnalyzeResponse : ",e),!e)return i.call(this,new x("Analyse de la reponse en échec !?"));this.options.onSuccess.call(this,e)}function i(e){this.logger.trace("CommonService::onError()");var t=e;t instanceof x||(t=new x(e.message)),this.options.onFailure.call(this,t)}(function(){this.logger.trace("CommonService::run ()"),this.buildRequest.call(e,i,t)}).call(e)},buildRequest:function(e,t){this.logger.error("overwritten method !"),e&&e.call(this,"This method must be overwritten !"),t.call(this,"This method must be overwritten !")},callService:function(e,t){var o=null,n=this.request,i=!(!this.options.proxyURL||"XHR"!==this.options.protocol),r={"gp-access-lib":P.version};this.options.apiKey&&(r.apiKey=this.options.apiKey),this.options.serverUrl=I.normalyzeUrl(this.options.serverUrl,r,!1),i&&("GET"===this.options.httpMethod&&(o=this.options.proxyURL+I.normalyzeUrl(this.options.serverUrl,this.request,!0),n=null),"POST"===this.options.httpMethod&&(o=this.options.proxyURL+I.normalyzeUrl(this.options.serverUrl,null,!0),n=this.request));var a=this,s={url:o||this.options.serverUrl,method:this.options.httpMethod,protocol:this.options.protocol,timeOut:this.options.timeOut||0,format:this.options.outputFormat,nocache:this.options.nocache||!1,wrap:"XHR"!==this.options.protocol,callbackSuffix:this.options.callbackSuffix,data:n,headers:null,content:this.options.contentType||"application/xml",scope:this.options.scope||this,onResponse:function(o){a.logger.trace("callService::onResponse()");var n=null;if("XHR"===a.options.protocol&&(a.logger.trace("Response XHR",o),n=o),"JSONP"===a.options.protocol){if(a.logger.trace("Response JSON",o),!o)return void e.call(a,new x("Le contenu de la reponse est vide !?"));if(o.http){if(200!==o.http.status)return void e.call(a,new x({status:o.http.status,message:o.http.error,type:x.TYPE_SRVERR}));n=o.xml,a.options.rawResponse&&(n=o)}else n=o}if("function"==typeof a.options.onBeforeParse){var i=a.options.onBeforeParse(n);"string"==typeof i&&(n=i)}a.response=n,t.call(a,n)},onFailure:function(t){a.logger.trace("callService::onFailure()"),t.type=x.TYPE_SRVERR,e.call(a,new x(t))},onTimeOut:function(){a.logger.trace("callService::onTimeOut()"),e.call(a,new x("TimeOut!"))}};S.send(s)},analyzeResponse:function(e,t){this.logger.error("overwritten method !"),e&&e.call(this,"This method must be overwritten !"),t.call(this,"This method must be overwritten !")}};var G=k,R={ssl:!0,newUrl:function(e){return(!1===R.ssl?"http://":"https://")+"data.geopf.fr"+e},Alti:{new_key:{"elevation-json":"/altimetrie/1.0/calcul/alti/rest/elevation.json","elevation-xml":"/altimetrie/1.0/calcul/alti/rest/elevation.xml","profil-json":"/altimetrie/1.0/calcul/alti/rest/elevationLine.json","profil-xml":"/altimetrie/1.0/calcul/alti/rest/elevationLine.xml"},newUrl:function(){return{"elevation-json":R.newUrl(this.new_key["elevation-json"]),"elevation-xml":R.newUrl(this.new_key["elevation-xml"]),"profil-json":R.newUrl(this.new_key["profil-json"]),"profil-xml":R.newUrl(this.new_key["profil-xml"])}}},ProcessIsoCurve:{new_key:"/navigation/isochrone",newUrl:function(){return R.newUrl(this.new_key)}},Config:{_key:"https://raw.githubusercontent.com/IGNF/geoportal-configuration/new-url/dist/",url:function(e){Array.isArray(e)||(e=e.split(","));for(var t=[],o=0;on(e,{credentials:"same-origin"}).then(e=>{if(e.ok)return e.json().then(e=>e).catch(e=>{throw new Error("Exception Json : "+e)});throw new Error("Exception HTTP : "+e.status+" (status code) !")}).catch(e=>new Promise((t,o)=>{o(e)})),a=[];for(let e=0;e{if(!e)throw new Error("results config empty !?");e.forEach(e=>{this.listConfigResults.push(e)})}).then(()=>{t.call(this,this.listConfigResults)}).catch(t=>{e.call(this,t)})},j=function(e,t){this.listConfigResults=[];for(var o=0;ot||e__IDENTIFIER__\x3c!-- __DATAINPUTS__ --\x3e__RAWDATAOUTPUT__',input:"__KEY____DATA__"}},namespaceByDefault:function(){return['xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"','xmlns="http://www.opengis.net/wps/1.0.0"','xmlns:wfs="http://www.opengis.net/wfs"','xmlns:wps="http://www.opengis.net/wps/1.0.0"','xmlns:ows="http://www.opengis.net/ows/1.1"','xmlns:gml="http://www.opengis.net/gml"','xmlns:ogc="http://www.opengis.net/ogc"','xmlns:wcs="http://www.opengis.net/wcs/1.1.1"','xmlns:xlink="http://www.w3.org/1999/xlink"'].join(" ")},schemaLocationByDefault:function(){return'xsi:schemaLocation="http://www.opengis.net/wps/1.0.0 http://schemas.opengis.net/wps/1.0.0/wpsAll.xsd"'},processRequestString:function(){this.logger.trace("WPS::processRequestString ()");var e="";if("POST"===this.method)e=this.template.post.value;else{if("GET"!==this.method)return this.logger.error("No other method supported by the service !"),!1;e=this.template.get.value}return e=(e=(e=(e=(e=e.replace(/__SERVICE__/g,this.paramservice)).replace(/__VERSION__/g,this.paramversion)).replace(/__RAWDATAOUTPUT__/g,this.paramrawdataoutput)).replace(/__IDENTIFIER__/g,this.paramidentifier)).replace(/__REQUEST__/g,this.paramrequest),"POST"===this.method&&(e=(e=e.replace(/__NAMESPACE__/g,this.namespaceByDefault)).replace(/__SCHEMALOCATION__/g,this.schemaLocationByDefault)),(e=e.replace(//g,this.__addDataInputs()))?(this.requestString=e,this.logger.trace("traduction tmpl",e),!0):(this.logger.warn("traduction tmpl : empty request !?"),!1)},__addDataInputs:function(){this.logger.trace("WPS::__addDataInputs ()");for(var e,t="GET"===this.method?this.template.get.input:this.template.post.input,o="GET"===this.method?";":"",n="",i=this,r=this.DataObject.getData(),a=0;a0)for(var a=n.getElementsByTagName("parsererror"),s=0;s0){var n=function(e){if(e.attributes.length>0){for(var t={},o=e.attributes,n=0;n0?t.index=t.filters.type[0]:t.index=t.filters.type),delete t.filters.type),t.filters.bbox&&(this.logger.warn("The parameter 'filterOptions.bbox' is deprecated"),delete t.filters.bbox)),delete t.filterOptions),t.position&&(t.position.x&&(this.logger.warn("The parameter 'position.x' is deprecated"),t.position.lon||(t.position.lon=t.position.x),delete t.position.x),t.position.y&&(this.logger.warn("The parameter 'position.y' is deprecated"),t.position.lat||(t.position.lat=t.position.y),delete t.position.y)),t.returnFreeForm&&(this.logger.warn("The parameter 'returnFreeForm' is deprecated"),delete t.returnFreeForm),t.srs&&(this.logger.warn("The parameter 'srs' is deprecated"),delete t.srs),t},_e.prototype.buildRequest=function(e,t){var o={httpMethod:this.options.httpMethod,geocodeMethod:"search",query:this.options.query,index:this.options.index,returnTrueGeometry:this.options.returnTrueGeometry,position:this.options.position,maxResp:this.options.maximumResponses,filters:this.options.filters};this.request=fe.build(o),this.request?t.call(this,this.request):e.call(this,new x(C.getMessage("SERVICE_REQUEST_BUILD")))},_e.prototype.analyzeResponse=function(e,t){if(this.response){var o={response:this.response,rawResponse:this.options.rawResponse,onError:e,onSuccess:t,scope:this};Ee.build(o)}else e.call(this,new x(C.getMessage("SERVICE_RESPONSE_EMPTY")))};var Se=_e;function Me(e){if(!(this instanceof Me))throw new TypeError(C.getMessage("CLASS_CONSTRUCTOR","ReverseGeocode"));this.CLASSNAME="ReverseGeocode",this.logger=v.getLogger("Gp.Services.ReverseGeocode"),this.logger.trace("[Constructeur ReverseGeocode (options)]");var t=this.patchOptionConvertor(e);if(t.serverUrl||(t.serverUrl=T.ReverseGeocode.newUrl()),G.apply(this,[t]),t.searchGeometry)this.options.searchGeometry=t.searchGeometry;else if(!t.position)throw new Error(C.getMessage("PARAM_MISSING","searchGeometry"));if(t.index||(this.options.index=t.index="StreetAddress"),t.filters)for(var o=Object.keys(t.filters),n=0;n0?t.index=t.filterOptions.type[0]:t.index=t.filterOptions.type),delete t.filterOptions.type),t.filterOptions.bbox&&(this.logger.warn("The parameter 'filterOptions.bbox' is deprecated"),t.searchGeometry||(t.searchGeometry=this.bbox2Json(t.filterOptions.bbox)),delete t.filterOptions.bbox),t.filterOptions.circle&&(this.logger.warn("The parameter 'filterOptions.circle' is deprecated"),t.searchGeometry||(t.searchGeometry=this.circle2Json(t.filterOptions.circle)),delete t.filterOptions.circle),t.filterOptions.polygon&&(this.logger.warn("The parameter 'filterOptions.polygon' is deprecated"),t.searchGeometry||(t.searchGeometry=this.polygon2Json(t.filterOptions.polygon)),delete t.filterOptions.polygon),!t.filters&&Object.keys(t.filterOptions).length>0&&(t.filters=t.filterOptions),delete t.filterOptions),t.position&&(t.position.x&&(this.logger.warn("The parameter 'position.x' is deprecated"),t.position.lon||(t.position.lon=t.position.x),delete t.position.x),t.position.y&&(this.logger.warn("The parameter 'position.y' is deprecated"),t.position.lat||(t.position.lat=t.position.y),delete t.position.y)),t.srs&&(this.logger.warn("The parameter 'srs' is deprecated"),delete t.srs),t},Me.prototype.buildRequest=function(e,t){var o={httpMethod:this.options.httpMethod,geocodeMethod:"reverse",searchGeometry:this.options.searchGeometry,index:this.options.index,position:this.options.position,returnTrueGeometry:this.options.returnTrueGeometry,maxResp:this.options.maximumResponses,filters:this.options.filters};this.request=fe.build(o),this.request?t.call(this,this.request):e.call(this,new x(C.getMessage("SERVICE_REQUEST_BUILD")))},Me.prototype.analyzeResponse=function(e,t){if(this.response){var o={response:this.response,rawResponse:this.options.rawResponse,onError:e,onSuccess:t,scope:this};Ee.build(o)}else e.call(this,new x(C.getMessage("SERVICE_RESPONSE_EMPTY")))},Me.prototype.bbox2Json=function(e){return{type:"Polygon",coordinates:[[[e.left,e.top],[e.right,e.top],[e.right,e.bottom],[e.left,e.bottom],[e.left,e.top]]]}},Me.prototype.circle2Json=function(e){return{type:"Circle",radius:e.radius,coordinates:[e.x,e.y]}},Me.prototype.polygon2Json=function(e){for(var t={type:"Polygon",coordinates:[[]]},o=0;o0)for(var n in t.noProxyDomains)if(o.trace("[ProxyUtils] proxifyUrl : analyzing "+t.noProxyDomains[n]),-1!==e.indexOf(t.noProxyDomains[n]))return o.info("[ProxyUtils] proxifyUrl : "+e+" found in noProxyDomains list ("+t.noProxyDomains[n]+")."),e;return t.proxyUrl+encodeURIComponent(e)}};function ut(e){return(ut="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var dt=lt.getLogger("GfiUtils"),pt={getLayerFormat:function(e){var t="function"==typeof e.getType?e.getType():null,o=e.getSource();if(t){if("VECTOR"===t||"VECTOR_TILE"===t)return"vector";if("TILE"===t)return o.tileGrid?"wmts":"wms";if("IMAGE"===t)return"wms"}else{if(o instanceof p.a||o instanceof f.a)return"wms";if(o instanceof g.a)return"wmts";if(o instanceof u.a||o instanceof l.a)return"vector"}return"unknown"},displayInfo:function(e,t,n,i,r){if(dt.trace("[GfiUtils] : displayInfo..."),i||(i="text/html"),null!==n){var s=null,l=n;l=(l=l.replace(/\n/g,"")).replace(/(>)\s*(<)/g,"$1$2");var c="undefined"!=typeof window?window:null;if("object"===("undefined"==typeof exports?"undefined":ut(exports))&&null===window)s=(new(0,o(62).DOMParser)).parseFromString(l,i);else if(c.DOMParser)s=(new c.DOMParser).parseFromString(l,i);else{if(!c.ActiveXObject)return dt.log("Incompatible environment for DOM Parser !"),!1;(s=new c.ActiveXObject("Microsoft.XMLDOM")).async=!1,s.loadXML(l)}var u=s.getElementsByTagName("body");if(u&&1===u.length&&!u[0].hasChildNodes())return!1;var d=document.createElement("div");d.className="gp-feature-info-div";var p=document.createElement("input");p.type="button",p.className="gp-styling-button closer",p.onclick=function(){return e.featuresOverlay&&(e.removeOverlay(e.featuresOverlay),e.featuresOverlay=null),!1};var h=document.createElement("div");return h.className="gp-features-content-div",h.innerHTML=n,d.appendChild(h),d.appendChild(p),e.featuresOverlay&&(e.removeOverlay(e.featuresOverlay),e.featuresOverlay=null),e.featuresOverlay=new a.a({element:d,autoPan:r.autoPan,autoPanAnimation:r.autoPanAnimation,autoPanMargin:r.autoPanMargin,positioning:"bottom-center",insertFirst:!1,stopEvent:!0}),e.addOverlay(e.featuresOverlay),e.featuresOverlay.setPosition(t),e.featuresOverlay.render(),!0}},features2html:function(e,t){var o=document.createElement("div");return t.forEach((function(e){var t=e.getProperties();if(t.hasOwnProperty("render"))o.insertAdjacentHTML("beforeend",t.render);else{if(t.hasOwnProperty("name")){var n=document.createElement("div");n.className="gp-att-name-div",n.insertAdjacentHTML("afterbegin",t.name),o.appendChild(n)}if(t.hasOwnProperty("description")){var i=document.createElement("div");i.className="gp-att-description-div",i.insertAdjacentHTML("afterbegin",t.description),o.appendChild(i)}var r=null,a=!1,s=null,l=null,c=null,u=["fill","fill-opacity","stroke","stroke-opacity","stroke-width","marker-symbol","marker-color","marker-size","geometry","value","name","description","styleUrl","extensionsNode_","icon"];for(r in t)if(void 0!==t[r]&&-1===u.indexOf(r)){a||((s=document.createElement("div")).className="gp-att-others-div",l=document.createElement("ul"),a=!0),c=document.createElement("li");var d=document.createElement("span");d.className="gp-attname-others-span",d.appendChild(document.createTextNode(r+" : ")),c.appendChild(d),c.appendChild(document.createTextNode(t[r])),l.appendChild(c)}l&&(s.appendChild(l),o.appendChild(s))}}),e),o.hasChildNodes()||(o=null),o},layerGetFeatureAtCoordinates:function(e,t,o){var n=e.getPixelFromCoordinate(o);return e.hasFeatureAtPixel(n,(function(e){return e===t}))},displayVectorFeatureInfo:function(e,t,o,n){var i=e.getPixelFromCoordinate(t),r=[];if(e.forEachFeatureAtPixel(i,(function(e,t){(!o||o.indexOf(t)>-1)&&r.push(e)})),0===r.length)return!1;var a=this.features2html(e,r);return null!==a&&(this.displayInfo(e,t,a.innerHTML,"text/html",n),!0)},displayFeatureInfo:function(e,t,o,n,i){for(var r={},a=0;ae.getResolution()&&(f=!1),f&&g.maxResolution&&g.maxResolution255)throw new Error("'"+e+"'' is greater than 255(0xff);");return("0"+Number(e).toString(16)).slice(-2)},num:function(e){return parseInt(e,16)},arrayToRgba:function(e){if(!Array.isArray(e))throw new Error("Not an array !");var t=e[0],o=e[1],n=e[2],i=e[3]||1;return"rgba("+t+", "+o+", "+n+", "+parseFloat(i)+")"},arrayToHex:function(e){if(!Array.isArray(e))throw new Error("Not an array !");var t=e[0],o=e[1],n=e[2],i=e[3],r=[this.hex(t),this.hex(o),this.hex(n)],a={};return a.hex="#"+r.join(""),i&&(a.opacity=parseFloat(i)),a},rgbaToHex:function(e){var t=/rgba?\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(?:,\s*(0?.?\d+)\s*)?\)/.exec(e);if(!t)throw new Error("Invalid format: "+e);var o=t[1],n=t[2],i=t[3],r=t[4],a=[this.hex(o),this.hex(n),this.hex(i)],s={};return s.hex="#"+a.join(""),r&&(s.opacity=parseFloat(r)),s},hexToRgba:function(e,t){if(!e)throw new Error("Invalid format");e=e.replace(/^#?([a-f\d])([a-f\d])([a-f\d])$/i,(function(e,t,o,n){return t+t+o+o+n+n}));var o=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(e);return(o=o?{r:parseInt(o[1],16),g:parseInt(o[2],16),b:parseInt(o[3],16)}:null)?"rgba("+o.r+", "+o.g+", "+o.b+", "+t+")":null},isHex:function(e){if(!e)return!1;if("#"!==e.charAt(0))return!1;return!!/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(e)},isRGB:function(e){if(!e)return!1;return!!/rgba?\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(?:,\s*(0?.?\d+)\s*)?\)/.exec(e)}},At={lightOrange:"data:image/png;base64,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IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiCiAgICB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iCiAgICB4bWxuczpHSU1QPSJodHRwOi8vd3d3LmdpbXAub3JnL3htcC8iCiAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyIKICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgeG1wTU06RG9jdW1lbnRJRD0iZ2ltcDpkb2NpZDpnaW1wOjkyYWVkNjM2LWY3MDMtNDAzOC1hNzM4LWZiYzYxYzZlMTljNCIKICAgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo5NWMzZWI3NC0zYWRmLTRkYzUtOWZjZS1iODQ4NTc3Nzg4ODQiCiAgIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo0NjI3ZDg3NC1lZDIyLTRiZTUtYTlkNS00NDlmMzVhZDIxYzgiCiAgIGRjOkZvcm1hdD0iaW1hZ2UvcG5nIgogICBHSU1QOkFQST0iMi4wIgogICBHSU1QOlBsYXRmb3JtPSJMaW51eCIKICAgR0lNUDpUaW1lU3RhbXA9IjE2ODQ5NDE5Mjc4OTUzMDYiCiAgIEdJTVA6VmVyc2lvbj0iMi4xMC4zMCIKICAgdGlmZjpPcmllbnRhdGlvbj0iMSIKICAgeG1wOkNyZWF0b3JUb29sPSJHSU1QIDIuMTAiPgogICA8eG1wTU06SGlzdG9yeT4KICAgIDxyZGY6U2VxPgogICAgIDxyZGY6bGkKICAgICAgc3RFdnQ6YWN0aW9uPSJzYXZlZCIKICAgICAgc3RFdnQ6Y2hhbmdlZD0iLyIKICAgICAgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDphM2U3ZWQ1MS0xNTI4LTRhYjAtODVjOS0zNzNkNzgxZGM2ZmMiCiAgICAgIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkdpbXAgMi4xMCAoTGludXgpIgogICAgICBzdEV2dDp3aGVuPSIyMDIzLTA1LTI0VDE3OjI1OjI3KzAyOjAwIi8+CiAgICA8L3JkZjpTZXE+CiAgIDwveG1wTU06SGlzdG9yeT4KICA8L3JkZjpEZXNjcmlwdGlvbj4KIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAKPD94cGFja2V0IGVuZD0idyI/PofUkY4AAAAGYktHRAD/AP8A/6C9p5MAAAAJcEhZcwAADdcAAA3XAUIom3gAAAAHdElNRQfnBRgPGRuA4VZTAAAFcElEQVRYw82YW2xbVRaGv7XP8bHjXByHQkNhWigdVX1AikRBMBoQ8wASl4fRqPDAAxIPKAVxeRqQRohHBEVCaoGKUBCl4qHcNKCZVKMRRQxtgTaACLRKqlwB14NzM2ni2D2XvXjgBFXQOnFiA1uy/HB89u9/7bX+vf4l1HnpK57hTNCE0AzqAS5gAAuEID5KiWSiLPf4tp7YUjcSu4yLZzdi2IJyNXANcBlwAdAKzAHTwDhwDKEPywC+GZWHbPi7IKOvZIWguAnlr8BtwJ+AxDJeDYCPgF6Ed0hkh+Weov5mZLTHJMDeBjwYk0itYJtKTOpZML3SbYNfnYz2SBr0buARYENcFytdFvga2AGyT7p14Vcjoz3ShOgdKDuAi+pUewpMIDyCypvSreWGk9HdroOEV2F4A1hfTxGJCX2D5U7U/UzuD6NaXq49NRJhBsOjwMVLEtE4gaL4W5cV3IsxPEoizDT0ZLTHcSH6M/BWLLlVwpQKuPzhb+i8sRkv04Y/e5rvPigxtnM9trKU2k0D28A5LN3RsmXbrbFOU8DtQLpqfJqu97nh6TydmzvwWpOI8VDbxqbrkmz62yk+/Ps6yoe8KkeV/hHHfgrMNyrNEkBX1SAktgRs3T7ApV1rSWayiEkDLmLSJDNZLu1ay9btAyS2BEsEuWuZ99WKyRhgHeCcn8wGw/qbOnAS3jmfOwmP9Td1kNhQDduJcUwjyciS0RJXMMkWkPPUo/z4XFxZRhZII8mEwFCsT+f5xXTE7FAOteduItVaZodyhNPVZDeKccJGkxmsChIMOvTt6aRSzIP+7A9rRKWYp29PJ8GgsyqcVauZSADaj+IDTecWvBlD4e01HKjM07XtOOuuy+A2X0BYmib/8SxfvLWRYm8LdqZaCvkI/SDBci6nld0ze7KCLa4F3gSurR4MB5x1FnMhiCeor9hJiPKmWpbGp3EU2IbJFuTe5XfStbczLxgP7K0IPcCFDWhnJoFuMAek2/oNbWdku/WxHATejT1JPZcPvINysFYiK+gAFkXTK6H+MyhXADeseJ9fmrVDM6X080/+p1M2/yFsD1zjEIauEeMAqNpQE16oaKiqwfjYeLk+fuYl10HDq7DsBTavxs8o6FzFKez/dM3rLx9LjUyVxcb7yVkfzmpXFbACJURHIxgyxkyu1ml6qL0Z4YX4xl7Jfrrgm9Ov9bX/e++x1tHCgkQ11lgELGA4sBp3iHRbH5GDwJPAFLXo6KJnDmTh/aG2w2/3t47VSGQxs1zAE9U2s9pEjx3hXuBloCa7G1rxv8o3f/7SkUz/UFFWMqGRWMpHAqsDbl00KGotIXM7MawF7gKSS5oJJRospI7v+rD96Ikp8aV2EgrkVPW4OnIy6SVL9ZubvZgyaOVyYDfwl2oNqVWiXNEb231oTe+/BrzvK9Gy01MFyoiOKzIEmqsEfjGf/39U1yHgosJFUXhlFMl+z9E/nkvhVNHZsjux+9Caf77RnyzMBaJLmW4RrWAlB3Y4Uh13HLOA4wQjo6O2IRPNxVV4JuG5Et2SSelzjtFLzsZQ0NIZ8/2rx7K9+/paxqbKvyh4Bc4AFQxzau23Dow7FS+nHmfEUz05OqINH8+evXJPJVOuE93XkY4eSziaXcQpB2b+vZNt7+/8IPPl2OxPRMJ4dDsLzIho3hpzamJ6aqJ0ei6qtZAasmZ2OS1RyOMd6egBIzSFVoKj4y1Hnvhv+8cD02ZOkEmgIKITVnXKWDs1ksvNrgbTbRSZ46cypY50aWcllIsyKXvr8GTyi9f6WvePFGVQhO8EPW2NzI+OfV2pF2bDTgbg8D/aJeVUspd1BK3/G24u7/skO3+iYP3h3LdhI/B+AGodUpo8WKwoAAAAAElFTkSuQmCC",darkOrange:"data:image/png;base64,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czpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiCiAgICB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iCiAgICB4bWxuczpHSU1QPSJodHRwOi8vd3d3LmdpbXAub3JnL3htcC8iCiAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyIKICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgeG1wTU06RG9jdW1lbnRJRD0iZ2ltcDpkb2NpZDpnaW1wOjIxNDZjMzUzLWIxZjItNGVjOC04NzQ3LTIwMGEyYWExM2ViMyIKICAgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo2NGViNmI2Ni03Y2I2LTRkZGUtYTI3OS01MGY0ZWFiZGFhODAiCiAgIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo1ODRhM2VjZC1kNGFmLTQ3NjItYjA1ZS04ODk2MGQ4ZTk0Y2MiCiAgIGRjOkZvcm1hdD0iaW1hZ2UvcG5nIgogICBHSU1QOkFQST0iMi4wIgogICBHSU1QOlBsYXRmb3JtPSJMaW51eCIKICAgR0lNUDpUaW1lU3RhbXA9IjE2ODQ5NDE5MDM3ODI2MTQiCiAgIEdJTVA6VmVyc2lvbj0iMi4xMC4zMCIKICAgdGlmZjpPcmllbnRhdGlvbj0iMSIKICAgeG1wOkNyZWF0b3JUb29sPSJHSU1QIDIuMTAiPgogICA8eG1wTU06SGlzdG9yeT4KICAgIDxyZGY6U2VxPgogICAgIDxyZGY6bGkKICAgICAgc3RFdnQ6YWN0aW9uPSJzYXZlZCIKICAgICAgc3RFdnQ6Y2hhbmdlZD0iLyIKICAgICAgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDoxYzNjOGRkZi1kMjVkLTQ4YzQtYTAwYS0yMmU3ZDYwMzg1YjYiCiAgICAgIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkdpbXAgMi4xMCAoTGludXgpIgogICAgICBzdEV2dDp3aGVuPSIyMDIzLTA1LTI0VDE3OjI1OjAzKzAyOjAwIi8+CiAgICA8L3JkZjpTZXE+CiAgIDwveG1wTU06SGlzdG9yeT4KICA8L3JkZjpEZXNjcmlwdGlvbj4KIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAKPD94cGFja2V0IGVuZD0idyI/PuhCAHgAAAAGYktHRAD/AP8A/6C9p5MAAAAJcEhZcwAADdcAAA3XAUIom3gAAAAHdElNRQfnBRgPGQOTjc4FAAAFdklEQVRYw82YW2gcZRTHf+eb2dlkc9lsrFYr2notfSgWxKKiog8VvIFI9UFQEaWtYPFJfREfRRSEeqlttViLD/WGisYXrShWpfWC1WpSN5eN3cZumkuTzWY3c/mOD9lI0WSTTXbVA8M8zMz3n//5zvl/5xyhxqb3ewYvaERpAvUAFzCABUIQH6GAHyvKa76tJbbUjMRW4+LbC7GsQbgCWA+sAs4AWoA8MAxkgEMo32LoxDO98oIN/xdk9IGUYEYvRrgduAW4Gogt4NMA+BroQHkfm+qW3aP6n5HRTSYG9hZga5lEwyKWKZVJvQCmQ3bZ4F8no5skAXov8BiwspwXizUL9APPgOyVXTr5r5HRzdKI1TsRngHOqlHuKTCI8hhG3padWqw7GX3IddDwcixvAefXUkTKhH7HcBfifi8vh1E1H1cfGkGYxPI4cM68RGw5zf3y3S7IuedgeZwgTNZ1Z3Sz46LRNcA7Zcmd25yGgPWP/M7q65toTLZSHBvn6OcFDm07n6g0n9oNAxsR54DsjBYs2251QWAbgFuBREX/tF3rc9+zA6xa3U5jSxwxHmpbueyqOOvvOM7rj67g1JfedFTNagngVtR+B0zUK8xiwLqKTmhcE3Dblk4uXbecRDKFmATgIiZBIpni0nXLuW1LJ41rgnmcvG6B59WiyRhgBeDM+UZipWHthnbcmDf7b8Y81m5oJ7GyErZTxjH1JCPzesu4ghtvBpkjH2X6uXFlAVEg9SMjhEAamFsyp4Yjcuks1s6uXdZacuksU8OVZDcC0mW8OpFRQqBruvqdwwpdDh+9cjaF0QHQv/2wRhRGB6afdzkVkKZxtDoyVaqZBKCHEXygcXafjhi63l3G9tIEGzYe4ZKrksSbzmCqMEz6mzE+eedC+juaiUYqhZCPchgkqKB4SzxntqQEO7oceBu4srIzHIitsMTOBOMJ1leCkxAMmEpRWt6Vg8BGTConOxZeSVdfzmwxHmpvRtkJnFmHcuYksBkxH8tO69e1nJEd1sdhP/BBuUippfnA+3jsr5ZI9TnzV33mFcB/DuEi4LpFr/PPZu3LkanES08fOltWnxe2Ba5xCEPXiHEAVG2oMS9UNFTVINOXKdamn3nQdSC8HMMeYPVS+hkFzQdObl9m2Zu7+xt6hkKx5fXktGumdNXyZQUKiPZGkDbGnFxqp+kh9kaUHeUTezHr6WRkxt/oa/toT39Lby6QqMoci4BJDB8vpTtEdlkflf3A08AQ1ejoTM8cyeRnudYD72Zb+qokMhNZLuCJaqtZaqDLLi0i7EHYDVTV7oZW/J9PNf3wanfycLoki5nQSFnKewKrnW5NNMhtKRDlt6EsB+4G4vM2/UrUNd5w5Pl028FfiuJL9SQUyKrqEXXkaNyLF2o3N9vUYKB0AbAduKFSQWqVKFv0+rYfXdbx4aB3qqQLDk8VKCKaUSQNmi0F/ujAwB9RTYeAMwoXabg2QvZ5jl4ym8Ip6FjgDm7/bdl7bw3Ec/lItEJyWyAS0RJWsmC7I9WM45hJHCfo6e21dZlozlju3pjnSnRT0tMXHdFzT8dQ0EJoTr2eSXXs7W/uG/pnwiswBZQw5NXaYw5knJKXVY8p8VSP9vZo3cezp1v2nniDK9FD7V70RMxoaganGJmJT0+0frbtt+RPfVN/EQnLo9sxYEREB6wxxweHhwYL4/mo2kSqi43c5zRH8GS7Fz1shMZQJTg41PzVU7+2fdNZNHlBTgI5ER20qkPG2qGebHZsSTpULzJH8slCe6ywrWTlrGTM3tw9Ef/xjUzLvp6idIlwQtBxa2Sit6+/VCvMuu0MwIE726RBSqlViaDli6Gm4t6e1MQveet3Z4+F9cD7Ewo4WRJBbaaSAAAAAElFTkSuQmCC",red:"data:image/png;base64,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293bv2fa/f0ASM5yljz/NiUAAA0aaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJYTVAgQ29yZSA0LjQuMC1FeGl2MiI+CiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiCiAgICB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iCiAgICB4bWxuczpHSU1QPSJodHRwOi8vd3d3LmdpbXAub3JnL3htcC8iCiAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyIKICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgeG1wTU06RG9jdW1lbnRJRD0iZ2ltcDpkb2NpZDpnaW1wOmI5YjA2YTAwLWZkOTQtNDc5MC1hNzIzLTlkMGUwNGRiNTRlNyIKICAgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo1MTQ3ZGU5Yi1kOTA0LTRlNWYtYjIyYy0wZmMzOGRmMWI3ZGEiCiAgIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo4YzBjNTI2YS1lYTkyLTQxYWItODM5Yy05OWFhYTM0YjdlYzciCiAgIGRjOkZvcm1hdD0iaW1hZ2UvcG5nIgogICBHSU1QOkFQST0iMi4wIgogICBHSU1QOlBsYXRmb3JtPSJMaW51eCIKICAgR0lNUDpUaW1lU3RhbXA9IjE2ODQ5NDE2NDAxNTU0MjYiCiAgIEdJTVA6VmVyc2lvbj0iMi4xMC4zMCIKICAgdGlmZjpPcmllbnRhdGlvbj0iMSIKICAgeG1wOkNyZWF0b3JUb29sPSJHSU1QIDIuMTAiPgogICA8eG1wTU06SGlzdG9yeT4KICAgIDxyZGY6U2VxPgogICAgIDxyZGY6bGkKICAgICAgc3RFdnQ6YWN0aW9uPSJzYXZlZCIKICAgICAgc3RFdnQ6Y2hhbmdlZD0iLyIKICAgICAgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDowMjQ4MDc5ZS1kMTYyLTQxZmItOGViYS1lMzY2NTRiNGRjMjYiCiAgICAgIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkdpbXAgMi4xMCAoTGludXgpIgogICAgICBzdEV2dDp3aGVuPSIyMDIzLTA1LTI0VDE3OjIwOjQwKzAyOjAwIi8+CiAgICA8L3JkZjpTZXE+CiAgIDwveG1wTU06SGlzdG9yeT4KICA8L3JkZjpEZXNjcmlwdGlvbj4KIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAKPD94cGFja2V0IGVuZD0idyI/PkaovgIAAAAGYktHRAD/AP8A/6C9p5MAAAAJcEhZcwAADdcAAA3XAUIom3gAAAAHdElNRQfnBRgPFCiKn0kIAAAFfUlEQVRYw82YTWxc1RXHf+e+N2/GH+Px2IEEV02AgqIsIkwgoYS2ahepVGCBUOiCRRdsAAnECthErBBCICGFj4gqRQqBRSABUrVm1URtCSATJ5ASZCPHH0kGgx1/xJl5nvH7uIcFY4iIM/GzZyhHenqL994993/u+f/fOUeos+nNnkHCJoQWRD0UFzCARYhQCVB8NFWWTwNbT99SNxC3GZfIXg9sADYDWxCuRekEskARYQplFPgEOAr045ph6bXRzwKM3pEX5mduQLkHuAvYCqSW8GkIfAT0IBwknT8lH87o/w2M3mpSqL0LeLQKIrOMZSpVUC8hpkf6bPiTg9FbpBn0L8ATwLoqL5ZrFjgNPAeyV47p3E8GRjdLE6r3oTwHXF0n7ikwgfAEIvvlqJYbDkY3uw4a3YLyNrC2niJSBXQG4c+Ie0yORnGSj5OnRhzlUJ4ErrkikBAoAjPVe7ik4F6D8iRxlGvoyegmx4X4NwgHgM6a8fUyIfc8doZbf99Ca66N0uwF+v7tc3DnWoJK6gqep1C2g3NEjsdLlm03GXSbAe4GmmvGZ91vA3Y8P8aN6ztoyaYxxsPaNrbcnmbbvV/x9ONdnPnA+w71otaMcDfYPqDUmDQTUgjdNYPQsSHkgYf62di9mmwujzHNgIsxzWRzeTZ2r+aBh/rp2BDWDLLQjSzpf7VMMIpB6QKcy77Tuc6wdVsHbspbfJspj63bOuhcV8u3g9KFJtufWQbHakfLdQUv3YrI4qwQ+e65616Jr6mknE4KJgIGgctLZnEq5vRgAWsXLyKttZweLFCcqiW7cdVP1DgwQoQwUNPJxIDDG7vXMDszBvqjDWvM7MwYb+xew8SAUzNowgCSDEwyNVMJQU8AAdC06DvBtOG/76xirlLi3u0nufn2HJmWTir+FJ9+PMu7B66nr6eVYLpWCgUoJ0DCGoq3wv/MbXkhmlkN7Ad+XTMY4kBTl6XlKnA8IQ4U/xyUx8wlB3ZpKvcC23Hz49K79Ep6GeWM8VB7J8pfgasaUM6cAx5EzPvSZ4OGljNy1AYIh4C/L6lASWYBcBCHQ0mBJOfM94rk+WjwAsKvgN8te51LK7kPpm3zK89OrZH1v4zaQ9c4RJFrxDgAqjbSlBcpGqlqODoyWq5TP1OtnoU9wPqV9DMKWlRnfJ+/6q3XKpmhSRVbXU8uuhb6Hq1eVsBHdDiGQWPMuZV1mpuMB/aPCK8CXcsMjs6pufCm3/7PPZXs8LhKnJBjMTCH4f2VdIfIcRsgcgh4FpgkiY4u9Mwqc4fn2468M58dSQhkIbNcwBPVNrPSRJdjWgb2AK8BidrdSCX4PGw5/re53IlBK8uZ0EhVyodCq/1uXTTIzfrExZ0oq4H7gfQSmv54IMqcfNFv7/0ilkCSg1CgoKon1ZEv017ar9/cbEvGEFeuQ9mF8IdaBamFuBB7I7tKq3r+EXjnK0tPTxUoIzqqyCBooRIGM2NjX8d1HQIuKFys0cYY2eeJ3riYwinorHUndvmr3nt7Pj1eVNEa5LZALKIVrBTAnopVRx3HzOE44dDwsG3IRHPBxrtTnkv8p5yjLzvoLy72oaC+mvOvz+V79pZbRyYvJbwC80AFQ1GtPevAqFPxCuoxL57ql8ND2vDx7MVW2JTOuMQPdxDvSInmF/yU1ZT+Nd92eGcp97+RH4BE1XHHLDAtomPWmK8mpiYn/AvFOCmRGmLTm53WOOKpDhM/YqApQsLe+dYPnym1f9xvTVGQc8C4iE5Y1Ulj7eRQoTC7Ih1qFJiTQc7vwN9ZUbk6Z+ydp6L0Z2+Ws/uGrAyI8I2gF6yR0vDI6Uq9fDbsZACO3NQuGa3kr3XC7H+ClvJeP1/6IrbBqbNno0b4+xbMlmARngcRbAAAAABJRU5ErkJggg==",turquoiseBlue:"data:image/png;base64,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/MUi8H5G35QHBm+BvjV3bu1znD4AWZpV+gY4OARGS5S97vHu3u65/XunPb8fN2tyj8UDOK0AAA0aaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJYTVAgQ29yZSA0LjQuMC1FeGl2MiI+CiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiCiAgICB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iCiAgICB4bWxuczpHSU1QPSJodHRwOi8vd3d3LmdpbXAub3JnL3htcC8iCiAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyIKICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgeG1wTU06RG9jdW1lbnRJRD0iZ2ltcDpkb2NpZDpnaW1wOjEwNGNlNWFhLTE1YzctNGI4Yi1iOGU1LTFmYWQyNWFiYzBhZCIKICAgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpkNDMyZTY1Zi0xOThhLTQxM2EtYWYyMy1jNzhlNzczNGRlN2QiCiAgIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDoyNzExODVkMi03MWZiLTRhZDMtYTJmMi1iNjM3OWU3MDc1OTEiCiAgIGRjOkZvcm1hdD0iaW1hZ2UvcG5nIgogICBHSU1QOkFQST0iMi4wIgogICBHSU1QOlBsYXRmb3JtPSJMaW51eCIKICAgR0lNUDpUaW1lU3RhbXA9IjE2ODQ5NDE4NjYyMzgzMjQiCiAgIEdJTVA6VmVyc2lvbj0iMi4xMC4zMCIKICAgdGlmZjpPcmllbnRhdGlvbj0iMSIKICAgeG1wOkNyZWF0b3JUb29sPSJHSU1QIDIuMTAiPgogICA8eG1wTU06SGlzdG9yeT4KICAgIDxyZGY6U2VxPgogICAgIDxyZGY6bGkKICAgICAgc3RFdnQ6YWN0aW9uPSJzYXZlZCIKICAgICAgc3RFdnQ6Y2hhbmdlZD0iLyIKICAgICAgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo1NGFiYzNkYS1lZWJiLTRlZjctYjdjNS04ZDRjODY5OGVjODMiCiAgICAgIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkdpbXAgMi4xMCAoTGludXgpIgogICAgICBzdEV2dDp3aGVuPSIyMDIzLTA1LTI0VDE3OjI0OjI2KzAyOjAwIi8+CiAgICA8L3JkZjpTZXE+CiAgIDwveG1wTU06SGlzdG9yeT4KICA8L3JkZjpEZXNjcmlwdGlvbj4KIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAKPD94cGFja2V0IGVuZD0idyI/Pj0tlUwAAAAJcEhZcwAADdcAAA3XAUIom3gAAAAHdElNRQfnBRgPGBru/VeEAAAABmJLR0QA/wD/AP+gvaeTAAAFO0lEQVRYw9WYe2xTVRzHTx97dYS5B1UHa+/tY12dDoOKWyIGlfgHkCkSNTHGwHxA3NiAP/A5x4CMKEzdYL29YyAyBxKQZbI+NvYIaowaH9Ogi2GRbGjcFrbBNrq2a2/9nq5LCFnbbfSOeZJPTs/t6Tm/7/39zu+cU0IiXc7WSImNX0BsZiVYAhigmah5tHklsZrjSYtJSuZtaeSiiJU3gHUwfC9oARfBIHBP1DzaPH1eRuzmp0E6aTgSNX9EWMwSvOkMGPgG+CpguG8a0H7nA78zkMYqye0V0lYXDSHrYUw7cE5TxM04/b+38+vJ+RPRt0eIjVeAAhhyCQizFDKJEBjndaCY49Di4+CRlzFxfwSE3Ciol9i4DSBujoRUy7HIszFxdwSF3CioBy8qm1g5ufhirHwyJqwHrrDGWTlg8hFL1URN2+EF0XFPkyYuSWwhUVgnT2CygXBG3dFcM7bz1/au1u7OK9/93eWidUlHe1dCc810EsUAsXOPQZCI3rGZ6Wb4EXAEM0SCUFnZduz6T/09l4bHXYOCz+f0+XxeWg+7XYM/4vnKtlqHJHSIOrAHlYMFYmawRNCKycaDGZLVfMRdf/nPDpfXM+abotDnpy93dtzXfNgdZg+im2uimJ6h66UTeIMZsrat1jvkdPRRb/imLt4hl6N3DfqFEIPvOMzDJYspJsWfbUKEyFNttcKoyzkKo4UgYoRRt3OE9guT1br984nsmQ7gCWbIipaj4xeu9v/hFQTPlG7B89+u9v9O+4UQQ8f/BSlaVM8kgBOhji4p9mpvwQ+Wfwddjp6bQw2u8g44HT3535/tTUa/0Eccvg4sFDE1m2PBZkx2LVRqVcLQvG/PDDX1/tVxze38x+UZH6O1He28b764qgwtxOcf327eBGLFE9NikiD3qzDZhVBJgCJH3KubDnkfbD4s5Jw74qM1bcvDnxq8/vHt1SrS9InIJ2m7OQ4UYsKhCB9lJqHj0gPsHJzPvsS9w8rRRPDptI40M8PlH9fOJ5M5K008rsZmIwi5gc4QN9Zja8zn+5epch9PTFepU1iGuVunVqeyS9g0iv8zy96l0WiSjIsXx28iJEJhaONkMGB5YP14bkmI1SzIz1T0pRa9VKnNzCjUMcwWUAS2BtgWYLJN+xTo1OyrOhW7xsAwqnSGkd3i+uGjkT5Xw6DLt3AdEKQNB4YXbdtwQpuVuRtG7pwhxWA7vJgRib0nDuSDvtkIkjYcHE3aVWjRLL9/zyyETPK2Vq3OidAaOhiPDLcbxo3MRIik0eReWPnO15pHHiqbpYhS6hkNw7wAz0To6GM5hAzH3wkDa6b7x4bEwnkUfMnP6idX7Nex7GxElIDNerV6hU6jSdbp9RHck2w0w/FaGGoJm7KtnCfmWNlF1fOrK3Q6bekMRFABO7QM8yxewFLUi+5JSxPpAmcxy0gjt1Rytir4NcHKCfJTH/al5j1j1hr0pWEML55YD+x2GP6cVqNZZjQYEvUsG4vP4v8jKju5L1p6qnytxGKa6qogyOorBpVbXvxMe69xdxABb9I0DAGvIIRWp7NsBsJIoWVZKfaXuf+jMKp2b6z8+Adb4aErNwpCCh5J2pnfoH0ga08g7invBfaQjXjjuQifhyEgLdNolJP5UqR17y+QnSwvk1i565OZK6F8RzubvWwvDH8LvKZnmHXY8HKws+sNLJtI5muJ/7hYElOzJ1V+fN9R7CVDClPJOVXuqo06vS4HQjTwgDKDZRXk/1JiD7wrieFLk6T1lczCXUVK7aPZinS9XrTw+Q+Tql7SUmvGuQAAAABJRU5ErkJggg==",defaultOffset:[-25.5,-32]},vt=o(12),Ct=o.n(vt),It=o(13),bt=o.n(It),wt=o(32),Et=o.n(wt),_t=o(33),St=o.n(_t),Mt=o(15),xt=o.n(Mt),Pt=o(16),kt=o.n(Pt),Gt=o(34),Rt=o.n(Gt),Tt=o(66),Ot=o.n(Tt),Lt=o(67),Dt=o.n(Lt),Nt=lt.getLogger("styling");Ct.a.prototype.setPropertyFill=function(){var e=this.getStyle();if(e&&(!Array.isArray(e)||0!==e.length)){var t=e.getFill();if(t){var o=t.getColor();if(Array.isArray(o)){var n="rgba(";n+=o[0]+",",n+=o[1]+",",n+=o[2]+",",o=n+=o[3]+")"}if(yt.isRGB(o)){var i=yt.rgbaToHex(o);this.set("fill",i.hex),this.set("fill-opacity",i.opacity)}else this.set("fill",o),this.set("fill-opacity",1)}}},Ct.a.prototype.setPropertyStroke=function(){var e=this.getStyle();if(e&&(!Array.isArray(e)||0!==e.length)){var t=e.getStroke();if(t){var o=t.getColor();if(Array.isArray(o)){var n="rgba(";n+=o[0]+",",n+=o[1]+",",n+=o[2]+",",o=n+=o[3]+")"}if(yt.isRGB(o)){var i=yt.rgbaToHex(o);this.set("stroke",i.hex),this.set("stroke-opacity",i.opacity)}else this.set("stroke",o),this.set("stroke-opacity",1);this.set("stroke-width",t.getWidth())}}},Ct.a.prototype.setPropertyLabel=function(){var e=this.getStyle();if(e&&(!Array.isArray(e)||0!==e.length)){var t=void 0!==this.get("name");if(e.getText()&&t){var o=e.getText().getFill();if(o){var n=o.getColor();if(Array.isArray(n)){var i="rgba(";i+=n[0]+",",i+=n[1]+",",i+=n[2]+",",n=i+=n[3]+")"}if(yt.isRGB(n)){var r=yt.rgbaToHex(n);this.set("label-fill",r.hex),this.set("label-fill-opacity",r.opacity)}else this.set("label-fill",n),this.set("label-fill-opacity",1)}var a=e.getText().getStroke();if(a){var s=a.getColor();if(Array.isArray(s)){var l="rgba(";l+=s[0]+",",l+=s[1]+",",l+=s[2]+",",s=l+=s[3]+")"}if(yt.isRGB(s)){var c=yt.rgbaToHex(s);this.set("label-stroke",c.hex),this.set("label-stroke-opacity",c.opacity)}else this.set("label-stroke",s),this.set("label-stroke-opacity",1);this.set("label-stroke-width",a.getWidth())}this.set("label-font",e.getText().getFont()||jt.DEFAULT_TEXT.font),this.set("label-textAlign",e.getText().getTextAlign()||jt.DEFAULT_TEXT.textAlign)}}},Ct.a.prototype.setPropertyMarker=function(){var e=this.getStyle();if(e&&(!Array.isArray(e)||0!==e.length)){var t=e.getImage();if(t)if(t instanceof St.a){var o=t.getColor();if(Array.isArray(o)){var n="rgba(";n+=o[0]+",",n+=o[1]+",",n+=o[2]+",",o=n+=o[3]+")"}if(o){var i=yt.rgbaToHex(o);this.set("marker-color",i.hex)}var r=t.getScale();switch(Math.round(2*r)/2){case 0:case.5:this.set("marker-size","small");break;case 1:this.set("marker-size","medium");break;case 1.5:case 2:this.set("marker-size","large")}var a=t.getSrc();a&&this.set("marker-symbol",a),this.unset("circle-fill"),this.unset("circle-fill-opacity"),this.unset("circle-stroke"),this.unset("circle-stroke-width"),this.unset("circle-stroke-opacity"),this.unset("circle-radius")}else{var s=t.getFill();if(s){var l=s.getColor();if(Array.isArray(l)){var c="rgba(";c+=l[0]+",",c+=l[1]+",",c+=l[2]+",",l=c+=l[3]+")"}if(yt.isRGB(l)){var u=yt.rgbaToHex(l);this.set("circle-fill",u.hex),this.set("circle-fill-opacity",u.opacity)}else this.set("circle-fill",l),this.set("circle-fill-opacity",1)}var d=t.getStroke();if(d){var p=d.getColor();if(Array.isArray(p)){var h="rgba(";h+=p[0]+",",h+=p[1]+",",h+=p[2]+",",p=h+=p[3]+")"}if(yt.isRGB(p)){var g=yt.rgbaToHex(p);this.set("circle-stroke",g.hex),this.set("circle-stroke-opacity",g.opacity)}else this.set("circle-stroke",p),this.set("circle-stroke-opacity",1);this.set("circle-stroke-width",d.getWidth())}var m=t.getRadius();this.set("circle-radius",m)}}};var jt={APPLY_CONVERT_GEOM_GPX:!0,DEFAULT_ICON:{src:At.lightOrange,anchor:[.5,1],scale:1},DEFAULT_CIRCLE:{radius:10,fill:{opacity:1,color:[0,0,0,1]},stroke:{width:1,opacity:1,color:[0,0,0,1]}},DEFAULT_STROKE:{width:5,opacity:1,color:[250,250,250,1]},DEFAULT_FILL:{opacity:1,color:[0,0,0,1]},DEFAULT_TEXT:{font:"16px sans",textAlign:"left",stroke:{color:[250,250,250,1],width:5,opactity:1},fill:{opacity:1,color:[0,0,0,1]}},getListTags:function(){return["type","fill","fill-opacity","stroke","stroke-opacity","stroke-width","circle-fill","circle-fill-opacity","circle-stroke","circle-stroke-opacity","circle-stroke-width","circle-radius","marker-symbol","marker-color","marker-size","label-fill","label-fill-opacity","label-stroke","label-stroke-width","label-stroke-opacity","label-font","label-textAlign"]},defineStyleFromProperties:function(e){var t=null,o={},n=null;if(e.get("marker-color")||e.get("marker-size")||e.get("marker-symbol")){(n={}).src=this.DEFAULT_ICON.src,n.anchor=this.DEFAULT_ICON.anchor;var i=e.get("marker-symbol");i&&-1!==i.search("data:image/png;base64")&&(n.src=i);var r=e.get("marker-color");yt.isHex(r)&&(n.color=yt.hexToRgba(r,1));var a=e.get("marker-size");if(a)switch(a){case"small":n.scale=.5;break;case"medium":n.scale=1;break;case"large":n.scale=1.5;break;default:n.scale=this.DEFAULT_ICON.scale}}var s=null;(e.get("stroke")||e.get("stroke-opacity")||e.get("stroke-width"))&&((s={}).color=yt.hexToRgba(e.get("stroke"),+e.get("stroke-opacity")||this.DEFAULT_STROKE.opacity),s.width=+e.get("stroke-width")||this.DEFAULT_STROKE.width);var l=null;(e.get("fill")||e.get("fill-opacity"))&&((l={}).color=yt.hexToRgba(e.get("fill"),+e.get("fill-opacity")||this.DEFAULT_FILL.opacity));var c=null,u=null,d=""!==e.get("name");d&&((e.get("label-fill")||e.get("label-fill-opacity"))&&((u={}).color=yt.hexToRgba(e.get("label-fill"),+e.get("label-fill-opacity")||this.DEFAULT_TEXT.fill.opacity)),(e.get("label-stroke")||e.get("label-stroke-opacity")||e.get("label-stroke-width"))&&((c={}).color=yt.hexToRgba(e.get("label-stroke"),+e.get("label-stroke-opacity")||this.DEFAULT_TEXT.stroke.opacity),c.width=+e.get("label-stroke-width")||this.DEFAULT_TEXT.stroke.width));var p=e.get("circle-radius")||this.DEFAULT_CIRCLE.radius,h=null;(e.get("circle-stroke")||e.get("circle-stroke-opacity")||e.get("circle-stroke-width"))&&((h={}).color=yt.hexToRgba(e.get("circle-stroke"),+e.get("circle-stroke-opacity")||this.DEFAULT_CIRCLE.stroke.opacity),h.width=+e.get("circle-stroke-width")||this.DEFAULT_CIRCLE.stroke.width);var g=null;(e.get("circle-fill")||e.get("circle-fill-opacity"))&&((g={}).color=yt.hexToRgba(e.get("circle-fill"),+e.get("circle-fill-opacity")||this.DEFAULT_CIRCLE.fill.opacity));var m=e.getGeometry().getType();switch(m){case"Circle":case"Point":case"MultiPoint":var f=!1,y={};if(h&&(y.stroke=new kt.a(h)),g&&(y.fill=new xt.a(g)),0!==Object.keys(y).length&&(f=!0,y.radius=+p,o.image=new Et.a(y)),n&&(o.image=new St.a(n)),d){var A={};if(c&&(A.stroke=new kt.a(c)),u&&(A.fill=new xt.a(u)),0!==Object.keys(A).length)A.text=e.get("name"),A.textAlign=e.get("label-textAlign")||this.DEFAULT_TEXT.textAlign,A.font=e.get("label-font")||this.DEFAULT_TEXT.font,o.text=new Rt.a(Object.assign({},this.DEFAULT_TEXT,A));else if(n||f){var v=new Rt.a(Object.assign({},this.DEFAULT_TEXT,{fill:new xt.a(this.DEFAULT_TEXT.fill),stroke:new kt.a(this.DEFAULT_TEXT.stroke)}));if(v){var C=v.clone();C.setText(e.get("name")),o.text=C}}}break;case"Polygon":case"MultiPolygon":s&&(o.stroke=new kt.a(s)),l&&(o.fill=new xt.a(l));break;case"LineString":case"MultiLineString":if(s&&(o.stroke=new kt.a(s)),this.APPLY_CONVERT_GEOM_GPX&&l){var I=e.get("type");if(I&&("Polygon"===I||"MultiPolygon"===I)){o.fill=new xt.a(l);var b=e.clone(),w="LineString"===m?Ot.a:Dt.a;e.setGeometry(new w([b.getGeometry().getCoordinates()]))}}}return 0!==Object.keys(o).length&&(t=new bt.a(o)),t},defineStyleFunctionByDefault:function(e){if(!e)return[];if(0===Object.keys(e).length)return[];return function(t,o){var n=null;switch(t.getGeometry().getType()){case"Point":case"MultiPoint":var i={};if(e.getImage()&&(i.image=e.getImage()),e.getText()&&t.get("name")){var r=e.getText().clone();r.setText(t.get("name")),i.text=r}n=new bt.a(i);break;case"Circle":var a={},s={};if(e.getFill()&&(s.fill=e.getFill()),e.getStroke()&&(s.stroke=e.getStroke()),e.getText()&&t.get("name")){var l=e.getText().clone();l.setText(t.get("name")),a.text=l}0!==Object.keys(s).length&&(s.radius=3,a.image=new Et.a(s)),n=new bt.a(a);break;case"Polygon":case"MultiPolygon":var c={};e.getFill()&&(c.fill=e.getFill()),e.getStroke()&&(c.stroke=e.getStroke()),n=new bt.a(c);break;case"LineString":case"LinearRing":case"MultiLineString":var u={};e.getStroke()&&(u.stroke=e.getStroke()),n=new bt.a(u)}return[n]}},definePropertiesFromStyleByType:function(e){switch(e.getGeometry().getType()){case"Point":case"MultiPoint":e.setPropertyMarker(),e.setPropertyLabel();break;case"LineString":case"MultiLineString":e.setPropertyStroke();break;case"Polygon":case"MultiPolygon":e.setPropertyStroke(),e.setPropertyFill()}},definePropertiesFromStyle:function(e){var t=e.getStyle()||e.getStyleFunction();if(t){if("function"==typeof t){var o=t.call(this,e,0);if(!o||0===o.length)return;t=Array.isArray(o)?o[0]:o,e.setStyle(t)}this.definePropertiesFromStyleByType(e)}},defineTagFromStyle:function(e,t){return Nt.trace("todo..."),null}},Ut=jt;function Bt(e){return(Bt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var Ft=lt.getLogger("parser"),zt={parse:function(e){var t=null,n="undefined"!=typeof window?window:null;"object"===("undefined"==typeof exports?"undefined":Bt(exports))&&null===window?t=(new(0,o(62).DOMParser)).parseFromString(e,"text/xml"):n.DOMParser?t=(new n.DOMParser).parseFromString(e,"text/xml"):n.ActiveXObject?((t=new n.ActiveXObject("Microsoft.XMLDOM")).async=!1,t.loadXML(e)):Ft.log("Incompatible environment for DOM Parser !");var i=t.querySelector("parsererror");return i?(console.error(i),null):(Ft.trace(t),t)},toString:function(e){var t=(new XMLSerializer).serializeToString(e);return Ft.trace(t),t},format:function(e){for(var t="",o=(e=e.replace(/(>)\s*(<)(\/*)/g,"$1\n$2$3").replace(/ *(.*) +\n/g,"$1\n").replace(/(<.+>)(.+\n)/g,"$1\n$2")).split("\n"),n=0,i="other",r={"single->single":0,"single->closing":-1,"single->opening":0,"single->other":0,"closing->single":0,"closing->closing":-1,"closing->opening":0,"closing->other":0,"opening->single":1,"opening->closing":0,"opening->opening":1,"opening->other":1,"other->single":0,"other->closing":-1,"other->opening":0,"other->other":0},a=0;a/)),c=Boolean(s.match(/<\/.+>/)),u=Boolean(s.match(/<[^!].*>/)),d=l?"single":c?"closing":u?"opening":"other",p=i+"->"+d;i=d;var h="";n+=r[p];for(var g=0;gclosing"===p?t=t.substr(0,t.length-1)+s+"\n":t+=h+s+"\n"}return Ft.trace(t),t}};function Vt(e){return(Vt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var qt={detectSupport:function(){var e=!0,t=window.navigator.userAgent.toLowerCase();return-1===t.indexOf("iphone")&&-1===t.indexOf("ipod")&&-1===t.indexOf("ipad")&&-1===t.indexOf("android")&&-1===t.indexOf("mobile")&&-1===t.indexOf("blackberry")&&-1===t.indexOf("tablet")&&-1===t.indexOf("phone")&&-1===t.indexOf("touch")||(e=!1),-1===t.indexOf("msie")&&-1===t.indexOf("trident")||(e=!0),e},assign:function(e,t){for(var o in e=e||{},t)t.hasOwnProperty(o)&&(e[o]=t[o]);return e},mergeParams:function(e,t,o){if(e&&t)for(var n in void 0===o&&(o=!0),t)t.hasOwnProperty(n)&&("object"===Vt(t[n])?e.hasOwnProperty(n)?this.mergeParams(e[n],t[n],o):e[n]=t[n]:e.hasOwnProperty(n)?o&&(e[n]=t[n]):e[n]=t[n])}},Wt=lt.getLogger("extended KML format"),Ht=function(e){function t(o){if(!(this instanceof t))throw new TypeError("ERROR CLASS_CONSTRUCTOR");o=o||{},this.source=null,this.extensions=o.extensions||null,o.defaultStyle&&!Array.isArray(o.defaultStyle)&&(o.defaultStyle=[o.defaultStyle]),null!==o.defaultStyle&&void 0!==o.defaultStyle||(o.defaultStyle=[]),e.call(this,o)}function o(e,t,o){for(var n="#document"===e.nodeName?e.childNodes[0].childNodes:e.childNodes,i=n,r=0;r)\s*(<)/g,"$1$2"),null===(i=zt.parse(a)))return r;function s(e){var t="";t+=e.substr(6,2),t+=e.substr(4,2),t+=e.substr(2,2);for(var o=parseInt(t,16).toString(16),n="",i=o.length||0,r=0;r<6-i;r++)n+="0";return o="#"+n+o}var l=function(e,t){if(Wt.trace("label with style :",t),e){for(var o=e.getProperties().name,n=s("ff000000"),i="#FFFFFF",r=0,a="Sans",l="16px",c=null,u=5,d="#000000",p="#ffffff",h=1,g=!1,m=!1,f=t.childNodes,y=0;yt&&(n=!1),n&&p&&pt?1:er&&(c-s)*(r-l)-(i-s)*(u-l)>0&&a++:u<=r&&(c-s)*(r-l)-(i-s)*(u-l)<0&&a--,s=c,l=u}return 0!==a}function Xo(e,t,o,n,i,r){if(0===o.length)return!1;if(!Ko(e,t,o[0],n,i,r))return!1;for(var a=1,s=o.length;aC&&Xo(e,t,o,n,c=(u+d)/2,g)&&(v=c,C=I),u=d}return isNaN(v)&&(v=i[r]),a?(a.push(v,g,C),a):[v,g,C]}var $o={RADIANS:"radians",DEGREES:"degrees",FEET:"ft",METERS:"m",PIXELS:"pixels",TILE_PIXELS:"tile-pixels",USFEET:"us-ft"};var en={};en[$o.RADIANS]=6370997/(2*Math.PI),en[$o.DEGREES]=2*Math.PI*6370997/360,en[$o.FEET]=.3048,en[$o.METERS]=1,en[$o.USFEET]=1200/3937;var tn=$o,on=function(){function e(e){this.code_=e.code,this.units_=e.units,this.extent_=void 0!==e.extent?e.extent:null,this.worldExtent_=void 0!==e.worldExtent?e.worldExtent:null,this.axisOrientation_=void 0!==e.axisOrientation?e.axisOrientation:"enu",this.global_=void 0!==e.global&&e.global,this.canWrapX_=!(!this.global_||!this.extent_),this.getPointResolutionFunc_=e.getPointResolution,this.defaultTileGrid_=null,this.metersPerUnit_=e.metersPerUnit}return e.prototype.canWrapX=function(){return this.canWrapX_},e.prototype.getCode=function(){return this.code_},e.prototype.getExtent=function(){return this.extent_},e.prototype.getUnits=function(){return this.units_},e.prototype.getMetersPerUnit=function(){return this.metersPerUnit_||en[this.units_]},e.prototype.getWorldExtent=function(){return this.worldExtent_},e.prototype.getAxisOrientation=function(){return this.axisOrientation_},e.prototype.isGlobal=function(){return this.global_},e.prototype.setGlobal=function(e){this.global_=e,this.canWrapX_=!(!e||!this.extent_)},e.prototype.getDefaultTileGrid=function(){return this.defaultTileGrid_},e.prototype.setDefaultTileGrid=function(e){this.defaultTileGrid_=e},e.prototype.setExtent=function(e){this.extent_=e,this.canWrapX_=!(!this.global_||!e)},e.prototype.setWorldExtent=function(e){this.worldExtent_=e},e.prototype.setGetPointResolution=function(e){this.getPointResolutionFunc_=e},e.prototype.getPointResolutionFunc=function(){return this.getPointResolutionFunc_},e}();var nn="cosh"in Math?Math.cosh:function(e){var t=Math.exp(e);return(t+1/t)/2};"log2"in Math&&Math.log2;function rn(e,t,o){return e+o*(t-e)}var an=function(){var e=function(t,o){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])})(t,o)};return function(t,o){if("function"!=typeof o&&null!==o)throw new TypeError("Class extends value "+String(o)+" is not a constructor or null");function n(){this.constructor=t}e(t,o),t.prototype=null===o?Object.create(o):(n.prototype=o.prototype,new n)}}(),sn=6378137*Math.PI,ln=[-sn,-sn,sn,sn],cn=[-180,-85,180,85],un=6378137*Math.log(Math.tan(Math.PI/2)),dn=function(e){function t(t){return e.call(this,{code:t,units:tn.METERS,extent:ln,global:!0,worldExtent:cn,getPointResolution:function(e,t){return e/nn(t[1]/6378137)}})||this}return an(t,e),t}(on),pn=[new dn("EPSG:3857"),new dn("EPSG:102100"),new dn("EPSG:102113"),new dn("EPSG:900913"),new dn("http://www.opengis.net/def/crs/EPSG/0/3857"),new dn("http://www.opengis.net/gml/srs/epsg.xml#3857")];function hn(e,t,o){var n=e.length,i=o>1?o:2,r=t;void 0===r&&(r=i>2?e.slice():new Array(n));for(var a=0;aun?s=un:s<-un&&(s=-un),r[a+1]=s}return r}function gn(e,t,o){var n=e.length,i=o>1?o:2,r=t;void 0===r&&(r=i>2?e.slice():new Array(n));for(var a=0;a>1)],t))<0?a=n+1:(s=n,l=!i);return l?a:~a}(h,y);A<0?(l=(y-h[-A-2])/(h[-A-1]-h[-A-2]),s=t+(-A-2)*n):s=t+A*n}var v=a>1?a:2,C=r||new Array(v);for(g=0;g=.05){for(var o="",n=e.split("\n"),i=Vn.slice(0,Math.round(t/.1)),r=0,a=n.length;r0&&(o+="\n"),o+=n[r].split("").join(i);return o}return e}function Wn(){return zn||(zn=Fn(1,1).getContext("2d")),zn}function Hn(e,t){return Wn().measureText(e).width+(e.length-1)*t}var Yn={};Nn.labelCache&&jn(Nn.labelCache,"clear",(function(){Yn={}}));var Jn,Zn,Kn=Dn.e.isFunction,Xn=Dn.e.convertFunction,Qn=Dn.c.isExpression,$n=Dn.c.createPropertyExpression,ei={Point:1,MultiPoint:1,LineString:2,MultiLineString:2,Polygon:3,MultiPolygon:3},ti={center:[.5,.5],left:[0,.5],right:[1,.5],top:[.5,0],bottom:[.5,1],"top-left":[0,0],"top-right":[1,0],"bottom-left":[0,1],"bottom-right":[1,1]},oi={},ni={zoom:0};function ii(e,t,o,n,i,r){var a=e.id;r||(r={},console.warn("No functionCache provided to getValue()")),r[a]||(r[a]={});var s=r[a];if(!s[o]){var l=(e[t]||oi)[o],c=Dn.f["".concat(t,"_").concat(e.type)][o];void 0===l&&(l=c.default);var u=Qn(l);if(!u&&Kn(l)&&(l=Xn(l,c),u=!0),u){var d=function(e,t){var o=$n(e,t);if("error"===o.result)throw new Error(o.value.map((function(e){return"".concat(e.key,": ").concat(e.message)})).join(", "));return o.value}(l,c);s[o]=d.evaluate.bind(d)}else"color"==c.type&&(l=Dn.a.parse(l)),s[o]=function(){return l}}return ni.zoom=n,s[o](ni,i)}function ri(e,t){if(e){if(0===e.a||0===t)return;var o=e.a;return t=void 0===t?1:t,"rgba("+Math.round(255*e.r/o)+","+Math.round(255*e.g/o)+","+Math.round(255*e.b/o)+","+o*t+")"}return e}var ai=/^([^]*)\{(.*)\}([^]*)$/;function si(e,t){var o;do{if(o=e.match(ai)){var n=t[o[2]]||"";e=o[1]+n+o[3]}}while(o);return e}var li=!1;var ci=function(e,t,o,n,i,r,a){if(void 0===n&&(n=Bn),"string"==typeof t&&(t=JSON.parse(t)),8!=t.version)throw new Error("glStyle version 8 required.");var s,l;if(r)if("undefined"!=typeof Image){var c=new Image;c.crossOrigin="anonymous",c.onload=function(){s=c,l=[c.width,c.height],e.changed(),c.onload=null},c.src=r}else if("undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope){var u=self;u.postMessage({action:"loadImage",src:r}),u.addEventListener("message",(function(e){"imageLoaded"===e.data.action&&e.data.src===r&&(s=e.data.image,l=[s.width,s.height])}))}for(var d,p=Object(Dn.b)(t.layers),h={},g=[],m={},f={},y={},A={},v=0,C=p.length;v=C.maxzoom)return"continue";var E=C.filter;if(!E||function(e,t,o,n,i){return i||console.warn("No filterCache provided to evaluateFilter()"),e in i||(i[e]=Object(Dn.d)(t).filter),ni.zoom=n,i[e](ni,o)}(I,E,p,c,A)){u=C;var _=void 0,S=void 0,k=void 0,G=void 0,R=void 0,T=void 0,O=v.index;if(3==d&&("fill"==C.type||"fill-extrusion"==C.type))if(S=ii(C,"paint",C.type+"-opacity",c,p,y),C.type+"-pattern"in w){var L=ii(C,"paint",C.type+"-pattern",c,p,y);if(L){var D="string"==typeof L?si(L,o):L.toString();if(s&&i&&i[D]){++g,(T=P[g])&&T.getFill()&&!T.getStroke()&&!T.getText()||(T=new bt.a({fill:new xt.a}),P[g]=T),k=T.getFill(),T.setZIndex(O);var N=f[he=D+"."+S];if(!N){var j=Fn((ge=i[D]).width,ge.height),U=j.getContext("2d");U.globalAlpha=S,U.drawImage(s,ge.x,ge.y,ge.width,ge.height,0,0,ge.width,ge.height),N=U.createPattern(j,"repeat"),f[he]=N}k.setColor(N)}}}else(_=ri(ii(C,"paint",C.type+"-color",c,p,y),S))&&(C.type+"-outline-color"in w&&(R=ri(ii(C,"paint",C.type+"-outline-color",c,p,y),S)),R||(R=_),++g,(T=P[g])&&T.getFill()&&T.getStroke()&&!T.getText()||(T=new bt.a({fill:new xt.a,stroke:new kt.a}),P[g]=T),(k=T.getFill()).setColor(_),(G=T.getStroke()).setColor(R),G.setWidth(1),T.setZIndex(O));if(1!=d&&"line"==C.type){_=!("line-pattern"in w)&&"line-color"in w?ri(ii(C,"paint","line-color",c,p,y),ii(C,"paint","line-opacity",c,p,y)):void 0;var B=ii(C,"paint","line-width",c,p,y);_&&B>0&&(++g,(T=P[g])&&T.getStroke()&&!T.getFill()&&!T.getText()||(T=new bt.a({stroke:new kt.a}),P[g]=T),(G=T.getStroke()).setLineCap(ii(C,"layout","line-cap",c,p,y)),G.setLineJoin(ii(C,"layout","line-join",c,p,y)),G.setMiterLimit(ii(C,"layout","line-miter-limit",c,p,y)),G.setColor(_),G.setWidth(B),G.setLineDash(w["line-dasharray"]?ii(C,"paint","line-dasharray",c,p,y).map((function(e){return e*B})):null),T.setZIndex(O))}var F=!1,z=null,V=0,q=void 0,W=void 0,H=void 0;if((1==d||2==d)&&"icon-image"in b){var Y=ii(C,"layout","icon-image",c,p,y);if(Y){q="string"==typeof Y?si(Y,o):Y.toString();var J=void 0;if(s&&i&&i[q]){var Z=ii(C,"layout","icon-rotation-alignment",c,p,y);if(2==d){var K=e.getGeometry();if(K.getFlatMidpoint||K.getFlatMidpoints){var X=K.getExtent();if(Math.sqrt(Math.max(Math.pow((X[2]-X[0])/t,2),Math.pow((X[3]-X[1])/t,2)))>150){var Q="MultiLineString"===K.getType()?K.getFlatMidpoints():K.getFlatMidpoint();if(Zn||(Zn=new Tn("Point",Jn=[NaN,NaN],[],{},null)),J=Zn,Jn[0]=Q[0],Jn[1]=Q[1],"line"===(ke=ii(C,"layout","symbol-placement",c,p,y))&&"map"===Z)for(var $=K.getStride(),ee=K.getFlatCoordinates(),te=0,oe=ee.length-$;te=se&&Q[0]<=ce&&Q[1]>=le&&Q[1]<=ue){V=Math.atan2(ie-ae,re-ne);break}}}}}if(2!==d||J){var de=ii(C,"layout","icon-size",c,p,y),pe=void 0!==w["icon-color"]?ii(C,"paint","icon-color",c,p,y):null;if(!pe||0!==pe.a){var he=q+"."+de;if(null!==pe&&(he+="."+pe),!(W=m[he])){var ge=i[q];W=new St.a({color:pe?[255*pe.r,255*pe.g,255*pe.b,pe.a]:void 0,img:s,imgSize:l,size:[ge.width,ge.height],offset:[ge.x,ge.y],rotateWithView:"map"===Z,scale:de/ge.pixelRatio}),m[he]=W}}W&&(++g,(T=P[g])&&T.getImage()&&!T.getFill()&&!T.getStroke()||(T=new bt.a,P[g]=T),T.setGeometry(J),W.setRotation(V+Un(ii(C,"layout","icon-rotate",c,p,y))),W.setOpacity(ii(C,"paint","icon-opacity",c,p,y)),W.setAnchor(ti[ii(C,"layout","icon-anchor",c,p,y)]),T.setImage(W),z=T.getText(),T.setText(void 0),T.setZIndex(O),F=!0,H=!1)}else H=!0}}}if(1==d&&"circle-radius"in w){++g,(T=P[g])&&T.getImage()&&!T.getFill()&&!T.getStroke()||(T=new bt.a,P[g]=T);var me=ii(C,"paint","circle-radius",c,p,y),fe=ri(ii(C,"paint","circle-stroke-color",c,p,y),ii(C,"paint","circle-stroke-opacity",c,p,y)),ye=ri(ii(C,"paint","circle-color",c,p,y),ii(C,"paint","circle-opacity",c,p,y)),Ae=ii(C,"paint","circle-stroke-width",c,p,y),ve=me+"."+fe+"."+ye+"."+Ae;(W=m[ve])||(W=new Et.a({radius:me,stroke:fe&&Ae>0?new kt.a({width:Ae,color:fe}):void 0,fill:ye?new xt.a({color:ye}):void 0}),m[ve]=W),T.setImage(W),z=T.getText(),T.setText(void 0),T.setGeometry(void 0),T.setZIndex(O),F=!0}var Ce=void 0;if("text-field"in b)Ce=si(ii(C,"layout","text-field",c,p,y).toString(),o).trim(),S=ii(C,"paint","text-opacity",c,p,y);if(Ce&&S&&!H){F||(++g,(T=P[g])&&T.getText()&&!T.getFill()&&!T.getStroke()||(T=new bt.a,P[g]=T),T.setImage(void 0),T.setGeometry(void 0)),T.getText()||T.setText(z||new Rt.a({padding:[2,2,2,2]})),z=T.getText();var Ie=Math.round(ii(C,"layout","text-size",c,p,y)),be=ii(C,"layout","text-font",c,p,y),we=ii(C,"layout","text-line-height",c,p,y),Ee=Ln()(a?a(be):be,Ie,we),_e=b["text-transform"];"uppercase"==_e?Ce=Ce.toUpperCase():"lowercase"==_e&&(Ce=Ce.toLowerCase());var Se=ii(C,"layout","text-max-width",c,p,y),Me=ii(C,"layout","text-letter-spacing",c,p,y),xe=2==d?qn(Ce,Me):function e(t,o,n,i){if(-1!==t.indexOf("\n")){for(var r=t.split("\n"),a=[],s=0,l=r.length;s1){var p=Wn();p.font=o;var h=p.measureText("M").width*n,g="";for(a=[],s=0,l=d.length;s1;++s){var y=a[s];if(Hn(y,i)<.35*h){var A=s>0?Hn(a[s-1],i):1/0,v=s.7*h&&Hn(I,i)<.6*h){var b=C.split(" "),w=b.pop();Hn(w,i)<.2*h&&(a[s]=b.join(" "),a[s+1]=w+" "+I),l-=1}}u=a.join("\n")}else u=t;u=qn(u,i),Yn[c]=u}return u}(Ce,Ee,Se,Me);z.setText(xe),z.setFont(Ee),z.setRotation(Un(ii(C,"layout","text-rotate",c,p,y)));var Pe=ii(C,"layout","text-anchor",c,p,y),ke=F||1==d?"point":ii(C,"layout","symbol-placement",c,p,y);z.setPlacement(ke);var Ge=ii(C,"paint","text-halo-width",c,p,y),Re=ii(C,"layout","text-offset",c,p,y),Te=ii(C,"paint","text-translate",c,p,y),Oe=0,Le=0;if("point"==ke){var De="center";-1!==Pe.indexOf("left")?(De="left",Le=Ge):-1!==Pe.indexOf("right")&&(De="right",Le=-Ge),z.setTextAlign(De);var Ne=ii(C,"layout","text-rotation-alignment",c,p,y);z.setRotateWithView("map"==Ne)}else z.setMaxAngle(Un(ii(C,"layout","text-max-angle",c,p,y))*Ce.length/xe.length),z.setTextAlign(),z.setRotateWithView(!1);var je="middle";0==Pe.indexOf("bottom")?(je="bottom",Oe=-Ge-.5*(we-1)*Ie):0==Pe.indexOf("top")&&(je="top",Oe=Ge+.5*(we-1)*Ie),z.setTextBaseline(je),z.setOffsetX(Re[0]*Ie+Le+Te[0]),z.setOffsetY(Re[1]*Ie+Oe+Te[1]),x.setColor(ri(ii(C,"paint","text-color",c,p,y),S)),z.setFill(x);var Ue=ri(ii(C,"paint","text-halo-color",c,p,y),S);if(Ue){M.setColor(Ue),Ge*=2;var Be=.5*Ie;M.setWidth(Ge<=Be?Ge:Be),z.setStroke(M)}else z.setStroke(void 0);var Fe=ii(C,"layout","text-padding",c,p,y),ze=z.getPadding();Fe!==ze[0]&&(ze[0]=Fe,ze[1]=Fe,ze[2]=Fe,ze[3]=Fe),T.setZIndex(O)}}},C=0,I=r.length;C-1?(P.length=g+1,li&&("function"==typeof e.set?e.set("mapbox-layer",u):e.getProperties()["mapbox-layer"]=u),P):void 0}};return e.setStyle(k),e.set("mapbox-source",d),e.set("mapbox-layers",g),k},ui=o(72),di=o.n(ui);o(73);function pi(e){return(pi="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var hi,gi=/font-family: ?([^;]*);/,mi=/("|')/g;function fi(e){if(!hi){hi={};for(var t=document.styleSheets,o=0,n=t.length;o2?n[2]:""):e+o}function wi(e,t,o,n,i){return new Promise((function(r,a){if("object"!=pi(t)&&(t=JSON.parse(t)),8!=t.version)return a(new Error("glStyle version 8 required."));if(!(e instanceof Do.a||e instanceof Po.a))return a(new Error("Can only apply to VectorLayer or VectorTileLayer"));var s,l,c;function u(){c||t.sprite&&!s?c?(e.setStyle(c),r()):a(new Error("Something went wrong trying to apply style.")):(c=ci(e,t,o,i,s,l,vi),e.getStyle()?r():a(new Error("Nothing to show for source [".concat(o,"]"))))}if(t.sprite){var d=.5==(window.devicePixelRatio>=1.5?.5:1)?"@2x":"",p=bi(t.sprite,n,d+".json");fetch(p,{credentials:"same-origin"}).then((function(e){return e.ok||""===d?e:(p=bi(t.sprite,n,".json"),fetch(p,{credentials:"same-origin"}))})).then((function(e){if(e.ok)return e.json();a(new Error("Problem fetching sprite from ".concat(p,": ").concat(e.statusText)))})).then((function(e){if(void 0===e)return a(new Error("No sprites found."));s=e,l=bi(t.sprite,n,d+".png"),u()})).catch((function(e){a(new Error("Sprites cannot be loaded: ".concat(p,": ").concat(e.message)))}))}else u()}))}new no.a;var Ei=function(e){function t(o,n){if(!(this instanceof t))throw new TypeError("ERROR CLASS_CONSTRUCTOR");if(!o.layer)throw new Error("ERROR PARAM_MISSING : layer");if("string"!=typeof o.layer)throw new Error("ERROR WRONG TYPE : layer");if(this.layerName=o.layer,this.styleName=o.style,this.sourceId=o.source,void 0===o.ssl&&(o.ssl=!0),this.protocol=!1===o.ssl?"http://":"https://",!ho.a.isConfigLoaded())throw new Error("ERROR : contract key configuration has to be loaded to load Geoportal layers.");var i=this.layerName+"$GEOPORTAIL:GPP:TMS",r=ho.a.configuration.getLayerConf(i);if(!r)throw new Error("ERROR : Layer ID not found into the catalogue !?");this.styleUrl=null,this.styleTitle="";for(var a=0;a * @author owenm * @license MIT */ -function ki(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,n)}return o}function Gi(e){for(var t=1;t=0||(i[o]=e[o]);return i}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(i[o]=e[o])}return i}function Di(e){if("undefined"!=typeof window&&window.navigator)return!!navigator.userAgent.match(e)}var ji=Di(/(?:Trident.*rv[ :]?11\.|msie|iemobile|Windows Phone)/i),Ui=Di(/Edge/i),Ni=Di(/firefox/i),Bi=Di(/safari/i)&&!Di(/chrome/i)&&!Di(/android/i),Fi=Di(/iP(ad|od|hone)/i),zi=Di(/chrome/i)&&Di(/android/i),Vi={capture:!1,passive:!1};function Wi(e,t,o){e.addEventListener(t,o,!ji&&Vi)}function qi(e,t,o){e.removeEventListener(t,o,!ji&&Vi)}function Hi(e,t){if(t){if(">"===t[0]&&(t=t.substring(1)),e)try{if(e.matches)return e.matches(t);if(e.msMatchesSelector)return e.msMatchesSelector(t);if(e.webkitMatchesSelector)return e.webkitMatchesSelector(t)}catch(e){return!1}return!1}}function Yi(e){return e.host&&e!==document&&e.host.nodeType?e.host:e.parentNode}function Ji(e,t,o,n){if(e){o=o||document;do{if(null!=t&&(">"===t[0]?e.parentNode===o&&Hi(e,t):Hi(e,t))||n&&e===o)return e;if(e===o)break}while(e=Yi(e))}return null}var Zi,Ki=/\s+/g;function Xi(e,t,o){if(e&&t)if(e.classList)e.classList[o?"add":"remove"](t);else{var n=(" "+e.className+" ").replace(Ki," ").replace(" "+t+" "," ");e.className=(n+(o?" "+t:"")).replace(Ki," ")}}function Qi(e,t,o){var n=e&&e.style;if(n){if(void 0===o)return document.defaultView&&document.defaultView.getComputedStyle?o=document.defaultView.getComputedStyle(e,""):e.currentStyle&&(o=e.currentStyle),void 0===t?o:o[t];t in n||-1!==t.indexOf("webkit")||(t="-webkit-"+t),n[t]=o+("string"==typeof o?"":"px")}}function $i(e,t){var o="";if("string"==typeof e)o=e;else do{var n=Qi(e,"transform");n&&"none"!==n&&(o=n+" "+o)}while(!t&&(e=e.parentNode));var i=window.DOMMatrix||window.WebKitCSSMatrix||window.CSSMatrix||window.MSCSSMatrix;return i&&new i(o)}function er(e,t,o){if(e){var n=e.getElementsByTagName(t),i=0,r=n.length;if(o)for(;i=r:i<=r))return n;if(n===tr())break;n=lr(n,!1)}return!1}function ir(e,t,o,n){for(var i=0,r=0,a=e.children;r2&&void 0!==arguments[2]?arguments[2]:{},n=o.evt,i=Li(o,vr);yr.pluginEvent.bind(pa)(e,t,Gi({dragEl:br,parentEl:wr,ghostEl:_r,rootEl:Er,nextEl:Sr,lastDownEl:Mr,cloneEl:Pr,cloneHidden:xr,dragStarted:zr,putSortable:Lr,activeSortable:pa.active,originalEvent:n,oldIndex:kr,oldDraggableIndex:Rr,newIndex:Gr,newDraggableIndex:Tr,hideGhostForTarget:la,unhideGhostForTarget:ca,cloneNowHidden:function(){xr=!0},cloneNowShown:function(){xr=!1},dispatchSortableEvent:function(e){Ir({sortable:t,name:e,originalEvent:n})}},i))};function Ir(e){Ar(Gi({putSortable:Lr,cloneEl:Pr,targetEl:br,rootEl:Er,oldIndex:kr,oldDraggableIndex:Rr,newIndex:Gr,newDraggableIndex:Tr},e))}var br,wr,_r,Er,Sr,Mr,Pr,xr,kr,Gr,Rr,Tr,Or,Lr,Dr,jr,Ur,Nr,Br,Fr,zr,Vr,Wr,qr,Hr,Yr=!1,Jr=!1,Zr=[],Kr=!1,Xr=!1,Qr=[],$r=!1,ea=[],ta="undefined"!=typeof document,oa=Fi,na=Ui||ji?"cssFloat":"float",ia=ta&&!zi&&!Fi&&"draggable"in document.createElement("div"),ra=function(){if(ta){if(ji)return!1;var e=document.createElement("x");return e.style.cssText="pointer-events:auto","auto"===e.style.pointerEvents}}(),aa=function(e,t){var o=Qi(e),n=parseInt(o.width)-parseInt(o.paddingLeft)-parseInt(o.paddingRight)-parseInt(o.borderLeftWidth)-parseInt(o.borderRightWidth),i=ir(e,0,t),r=ir(e,1,t),a=i&&Qi(i),s=r&&Qi(r),l=a&&parseInt(a.marginLeft)+parseInt(a.marginRight)+or(i).width,c=s&&parseInt(s.marginLeft)+parseInt(s.marginRight)+or(r).width;if("flex"===o.display)return"column"===o.flexDirection||"column-reverse"===o.flexDirection?"vertical":"horizontal";if("grid"===o.display)return o.gridTemplateColumns.split(" ").length<=1?"vertical":"horizontal";if(i&&a.float&&"none"!==a.float){var u="left"===a.float?"left":"right";return!r||"both"!==s.clear&&s.clear!==u?"horizontal":"vertical"}return i&&("block"===a.display||"flex"===a.display||"table"===a.display||"grid"===a.display||l>=n&&"none"===o[na]||r&&"none"===o[na]&&l+c>n)?"vertical":"horizontal"},sa=function(e){function t(e,o){return function(n,i,r,a){var s=n.options.group.name&&i.options.group.name&&n.options.group.name===i.options.group.name;if(null==e&&(o||s))return!0;if(null==e||!1===e)return!1;if(o&&"clone"===e)return e;if("function"==typeof e)return t(e(n,i,r,a),o)(n,i,r,a);var l=(o?n:i).options.group.name;return!0===e||"string"==typeof e&&e===l||e.join&&e.indexOf(l)>-1}}var o={},n=e.group;n&&"object"==Ri(n)||(n={name:n}),o.name=n.name,o.checkPull=t(n.pull,!0),o.checkPut=t(n.put),o.revertClone=n.revertClone,e.group=o},la=function(){!ra&&_r&&Qi(_r,"display","none")},ca=function(){!ra&&_r&&Qi(_r,"display","")};ta&&document.addEventListener("click",(function(e){if(Jr)return e.preventDefault(),e.stopPropagation&&e.stopPropagation(),e.stopImmediatePropagation&&e.stopImmediatePropagation(),Jr=!1,!1}),!0);var ua=function(e){if(br){e=e.touches?e.touches[0]:e;var t=(i=e.clientX,r=e.clientY,Zr.some((function(e){var t=e[hr].options.emptyInsertThreshold;if(t&&!rr(e)){var o=or(e),n=i>=o.left-t&&i<=o.right+t,s=r>=o.top-t&&r<=o.bottom+t;return n&&s?a=e:void 0}})),a);if(t){var o={};for(var n in e)e.hasOwnProperty(n)&&(o[n]=e[n]);o.target=o.rootEl=t,o.preventDefault=void 0,o.stopPropagation=void 0,t[hr]._onDragOver(o)}}var i,r,a},da=function(e){br&&br.parentNode[hr]._isOutsideThisEl(e.target)};function pa(e,t){if(!e||!e.nodeType||1!==e.nodeType)throw"Sortable: `el` must be an HTMLElement, not ".concat({}.toString.call(e));this.el=e,this.options=t=Oi({},t),e[hr]=this;var o={group:null,sort:!0,disabled:!1,store:null,handle:null,draggable:/^[uo]l$/i.test(e.nodeName)?">li":">*",swapThreshold:1,invertSwap:!1,invertedSwapThreshold:null,removeCloneOnHide:!0,direction:function(){return aa(e,this.options)},ghostClass:"sortable-ghost",chosenClass:"sortable-chosen",dragClass:"sortable-drag",ignore:"a, img",filter:null,preventOnFilter:!0,animation:0,easing:null,setData:function(e,t){e.setData("Text",t.textContent)},dropBubble:!1,dragoverBubble:!1,dataIdAttr:"data-id",delay:0,delayOnTouchOnly:!1,touchStartThreshold:(Number.parseInt?Number:window).parseInt(window.devicePixelRatio,10)||1,forceFallback:!1,fallbackClass:"sortable-fallback",fallbackOnBody:!1,fallbackTolerance:0,fallbackOffset:{x:0,y:0},supportPointer:!1!==pa.supportPointer&&"PointerEvent"in window&&!Bi,emptyInsertThreshold:5};for(var n in yr.initializePlugins(this,e,o),o)!(n in t)&&(t[n]=o[n]);for(var i in sa(t),this)"_"===i.charAt(0)&&"function"==typeof this[i]&&(this[i]=this[i].bind(this));this.nativeDraggable=!t.forceFallback&&ia,this.nativeDraggable&&(this.options.touchStartThreshold=1),t.supportPointer?Wi(e,"pointerdown",this._onTapStart):(Wi(e,"mousedown",this._onTapStart),Wi(e,"touchstart",this._onTapStart)),this.nativeDraggable&&(Wi(e,"dragover",this),Wi(e,"dragenter",this)),Zr.push(this.el),t.store&&t.store.get&&this.sort(t.store.get(this)||[]),Oi(this,gr())}function ha(e,t,o,n,i,r,a,s){var l,c,u=e[hr],d=u.options.onMove;return!window.CustomEvent||ji||Ui?(l=document.createEvent("Event")).initEvent("move",!0,!0):l=new CustomEvent("move",{bubbles:!0,cancelable:!0}),l.to=t,l.from=e,l.dragged=o,l.draggedRect=n,l.related=i||t,l.relatedRect=r||or(t),l.willInsertAfter=s,l.originalEvent=a,e.dispatchEvent(l),d&&(c=d.call(u,l,a)),c}function ga(e){e.draggable=!1}function ma(){$r=!1}function fa(e){for(var t=e.tagName+e.className+e.src+e.href+e.textContent,o=t.length,n=0;o--;)n+=t.charCodeAt(o);return n.toString(36)}function ya(e){return setTimeout(e,0)}function Aa(e){return clearTimeout(e)}pa.prototype={constructor:pa,_isOutsideThisEl:function(e){this.el.contains(e)||e===this.el||(Vr=null)},_getDirection:function(e,t){return"function"==typeof this.options.direction?this.options.direction.call(this,e,t,br):this.options.direction},_onTapStart:function(e){if(e.cancelable){var t=this,o=this.el,n=this.options,i=n.preventOnFilter,r=e.type,a=e.touches&&e.touches[0]||e.pointerType&&"touch"===e.pointerType&&e,s=(a||e).target,l=e.target.shadowRoot&&(e.path&&e.path[0]||e.composedPath&&e.composedPath()[0])||s,c=n.filter;if(function(e){ea.length=0;var t=e.getElementsByTagName("input"),o=t.length;for(;o--;){var n=t[o];n.checked&&ea.push(n)}}(o),!br&&!(/mousedown|pointerdown/.test(r)&&0!==e.button||n.disabled)&&!l.isContentEditable&&(this.nativeDraggable||!Bi||!s||"SELECT"!==s.tagName.toUpperCase())&&!((s=Ji(s,n.draggable,o,!1))&&s.animated||Mr===s)){if(kr=ar(s),Rr=ar(s,n.draggable),"function"==typeof c){if(c.call(this,e,s,this))return Ir({sortable:t,rootEl:l,name:"filter",targetEl:s,toEl:o,fromEl:o}),Cr("filter",t,{evt:e}),void(i&&e.cancelable&&e.preventDefault())}else if(c&&(c=c.split(",").some((function(n){if(n=Ji(l,n.trim(),o,!1))return Ir({sortable:t,rootEl:n,name:"filter",targetEl:s,fromEl:o,toEl:o}),Cr("filter",t,{evt:e}),!0}))))return void(i&&e.cancelable&&e.preventDefault());n.handle&&!Ji(l,n.handle,o,!1)||this._prepareDragStart(e,a,s)}}},_prepareDragStart:function(e,t,o){var n,i=this,r=i.el,a=i.options,s=r.ownerDocument;if(o&&!br&&o.parentNode===r){var l=or(o);if(Er=r,wr=(br=o).parentNode,Sr=br.nextSibling,Mr=o,Or=a.group,pa.dragged=br,Dr={target:br,clientX:(t||e).clientX,clientY:(t||e).clientY},Br=Dr.clientX-l.left,Fr=Dr.clientY-l.top,this._lastX=(t||e).clientX,this._lastY=(t||e).clientY,br.style["will-change"]="all",n=function(){Cr("delayEnded",i,{evt:e}),pa.eventCanceled?i._onDrop():(i._disableDelayedDragEvents(),!Ni&&i.nativeDraggable&&(br.draggable=!0),i._triggerDragStart(e,t),Ir({sortable:i,name:"choose",originalEvent:e}),Xi(br,a.chosenClass,!0))},a.ignore.split(",").forEach((function(e){er(br,e.trim(),ga)})),Wi(s,"dragover",ua),Wi(s,"mousemove",ua),Wi(s,"touchmove",ua),Wi(s,"mouseup",i._onDrop),Wi(s,"touchend",i._onDrop),Wi(s,"touchcancel",i._onDrop),Ni&&this.nativeDraggable&&(this.options.touchStartThreshold=4,br.draggable=!0),Cr("delayStart",this,{evt:e}),!a.delay||a.delayOnTouchOnly&&!t||this.nativeDraggable&&(Ui||ji))n();else{if(pa.eventCanceled)return void this._onDrop();Wi(s,"mouseup",i._disableDelayedDrag),Wi(s,"touchend",i._disableDelayedDrag),Wi(s,"touchcancel",i._disableDelayedDrag),Wi(s,"mousemove",i._delayedDragTouchMoveHandler),Wi(s,"touchmove",i._delayedDragTouchMoveHandler),a.supportPointer&&Wi(s,"pointermove",i._delayedDragTouchMoveHandler),i._dragStartTimer=setTimeout(n,a.delay)}}},_delayedDragTouchMoveHandler:function(e){var t=e.touches?e.touches[0]:e;Math.max(Math.abs(t.clientX-this._lastX),Math.abs(t.clientY-this._lastY))>=Math.floor(this.options.touchStartThreshold/(this.nativeDraggable&&window.devicePixelRatio||1))&&this._disableDelayedDrag()},_disableDelayedDrag:function(){br&&ga(br),clearTimeout(this._dragStartTimer),this._disableDelayedDragEvents()},_disableDelayedDragEvents:function(){var e=this.el.ownerDocument;qi(e,"mouseup",this._disableDelayedDrag),qi(e,"touchend",this._disableDelayedDrag),qi(e,"touchcancel",this._disableDelayedDrag),qi(e,"mousemove",this._delayedDragTouchMoveHandler),qi(e,"touchmove",this._delayedDragTouchMoveHandler),qi(e,"pointermove",this._delayedDragTouchMoveHandler)},_triggerDragStart:function(e,t){t=t||"touch"==e.pointerType&&e,!this.nativeDraggable||t?this.options.supportPointer?Wi(document,"pointermove",this._onTouchMove):Wi(document,t?"touchmove":"mousemove",this._onTouchMove):(Wi(br,"dragend",this),Wi(Er,"dragstart",this._onDragStart));try{document.selection?ya((function(){document.selection.empty()})):window.getSelection().removeAllRanges()}catch(e){}},_dragStarted:function(e,t){if(Yr=!1,Er&&br){Cr("dragStarted",this,{evt:t}),this.nativeDraggable&&Wi(document,"dragover",da);var o=this.options;!e&&Xi(br,o.dragClass,!1),Xi(br,o.ghostClass,!0),pa.active=this,e&&this._appendGhost(),Ir({sortable:this,name:"start",originalEvent:t})}else this._nulling()},_emulateDragOver:function(){if(jr){this._lastX=jr.clientX,this._lastY=jr.clientY,la();for(var e=document.elementFromPoint(jr.clientX,jr.clientY),t=e;e&&e.shadowRoot&&(e=e.shadowRoot.elementFromPoint(jr.clientX,jr.clientY))!==t;)t=e;if(br.parentNode[hr]._isOutsideThisEl(e),t)do{if(t[hr]){if(t[hr]._onDragOver({clientX:jr.clientX,clientY:jr.clientY,target:e,rootEl:t})&&!this.options.dragoverBubble)break}e=t}while(t=t.parentNode);ca()}},_onTouchMove:function(e){if(Dr){var t=this.options,o=t.fallbackTolerance,n=t.fallbackOffset,i=e.touches?e.touches[0]:e,r=_r&&$i(_r,!0),a=_r&&r&&r.a,s=_r&&r&&r.d,l=oa&&Hr&&sr(Hr),c=(i.clientX-Dr.clientX+n.x)/(a||1)+(l?l[0]-Qr[0]:0)/(a||1),u=(i.clientY-Dr.clientY+n.y)/(s||1)+(l?l[1]-Qr[1]:0)/(s||1);if(!pa.active&&!Yr){if(o&&Math.max(Math.abs(i.clientX-this._lastX),Math.abs(i.clientY-this._lastY))n.right+10||e.clientX<=n.right&&e.clientY>n.bottom&&e.clientX>=n.left:e.clientX>n.right&&e.clientY>n.top||e.clientX<=n.right&&e.clientY>n.bottom+10}(e,i,this)&&!m.animated){if(m===br)return G(!1);if(m&&r===e.target&&(a=m),a&&(o=or(a)),!1!==ha(Er,r,br,t,a,o,e,!!a))return k(),r.appendChild(br),wr=r,R(),G(!0)}else if(m&&function(e,t,o){var n=or(ir(o.el,0,o.options,!0));return t?e.clientXu+c*r/2:ld-qr)return-Wr}else if(l>u+c*(1-i)/2&&ld-c*r/2))return l>u+c/2?1:-1;return 0}(e,a,o,i,I?1:s.swapThreshold,null==s.invertedSwapThreshold?s.swapThreshold:s.invertedSwapThreshold,Xr,Vr===a))){var E=ar(br);do{E-=y,v=wr.children[E]}while(v&&("none"===Qi(v,"display")||v===_r))}if(0===y||v===a)return G(!1);Vr=a,Wr=y;var S=a.nextElementSibling,M=!1,P=ha(Er,r,br,t,a,o,e,M=1===y);if(!1!==P)return 1!==P&&-1!==P||(M=1===P),$r=!0,setTimeout(ma,30),k(),M&&!S?r.appendChild(br):a.parentNode.insertBefore(br,M?S:a),w&&dr(w,0,_-w.scrollTop),wr=br.parentNode,void 0===A||Xr||(qr=Math.abs(A-or(a)[b])),R(),G(!0)}if(r.contains(br))return G(!1)}return!1}function x(s,l){Cr(s,h,Gi({evt:e,isOwner:u,axis:i?"vertical":"horizontal",revert:n,dragRect:t,targetRect:o,canSort:d,fromSortable:p,target:a,completed:G,onMove:function(o,n){return ha(Er,r,br,t,o,or(o),e,n)},changed:R},l))}function k(){x("dragOverAnimationCapture"),h.captureAnimationState(),h!==p&&p.captureAnimationState()}function G(t){return x("dragOverCompleted",{insertion:t}),t&&(u?c._hideClone():c._showClone(h),h!==p&&(Xi(br,Lr?Lr.options.ghostClass:c.options.ghostClass,!1),Xi(br,s.ghostClass,!0)),Lr!==h&&h!==pa.active?Lr=h:h===pa.active&&Lr&&(Lr=null),p===h&&(h._ignoreWhileAnimating=a),h.animateAll((function(){x("dragOverAnimationComplete"),h._ignoreWhileAnimating=null})),h!==p&&(p.animateAll(),p._ignoreWhileAnimating=null)),(a===br&&!br.animated||a===r&&!a.animated)&&(Vr=null),s.dragoverBubble||e.rootEl||a===document||(br.parentNode[hr]._isOutsideThisEl(e.target),!t&&ua(e)),!s.dragoverBubble&&e.stopPropagation&&e.stopPropagation(),g=!0}function R(){Gr=ar(br),Tr=ar(br,s.draggable),Ir({sortable:h,name:"change",toEl:r,newIndex:Gr,newDraggableIndex:Tr,originalEvent:e})}},_ignoreWhileAnimating:null,_offMoveEvents:function(){qi(document,"mousemove",this._onTouchMove),qi(document,"touchmove",this._onTouchMove),qi(document,"pointermove",this._onTouchMove),qi(document,"dragover",ua),qi(document,"mousemove",ua),qi(document,"touchmove",ua)},_offUpEvents:function(){var e=this.el.ownerDocument;qi(e,"mouseup",this._onDrop),qi(e,"touchend",this._onDrop),qi(e,"pointerup",this._onDrop),qi(e,"touchcancel",this._onDrop),qi(document,"selectstart",this)},_onDrop:function(e){var t=this.el,o=this.options;Gr=ar(br),Tr=ar(br,o.draggable),Cr("drop",this,{evt:e}),wr=br&&br.parentNode,Gr=ar(br),Tr=ar(br,o.draggable),pa.eventCanceled||(Yr=!1,Xr=!1,Kr=!1,clearInterval(this._loopId),clearTimeout(this._dragStartTimer),Aa(this.cloneId),Aa(this._dragStartId),this.nativeDraggable&&(qi(document,"drop",this),qi(t,"dragstart",this._onDragStart)),this._offMoveEvents(),this._offUpEvents(),Bi&&Qi(document.body,"user-select",""),Qi(br,"transform",""),e&&(zr&&(e.cancelable&&e.preventDefault(),!o.dropBubble&&e.stopPropagation()),_r&&_r.parentNode&&_r.parentNode.removeChild(_r),(Er===wr||Lr&&"clone"!==Lr.lastPutMode)&&Pr&&Pr.parentNode&&Pr.parentNode.removeChild(Pr),br&&(this.nativeDraggable&&qi(br,"dragend",this),ga(br),br.style["will-change"]="",zr&&!Yr&&Xi(br,Lr?Lr.options.ghostClass:this.options.ghostClass,!1),Xi(br,this.options.chosenClass,!1),Ir({sortable:this,name:"unchoose",toEl:wr,newIndex:null,newDraggableIndex:null,originalEvent:e}),Er!==wr?(Gr>=0&&(Ir({rootEl:wr,name:"add",toEl:wr,fromEl:Er,originalEvent:e}),Ir({sortable:this,name:"remove",toEl:wr,originalEvent:e}),Ir({rootEl:wr,name:"sort",toEl:wr,fromEl:Er,originalEvent:e}),Ir({sortable:this,name:"sort",toEl:wr,originalEvent:e})),Lr&&Lr.save()):Gr!==kr&&Gr>=0&&(Ir({sortable:this,name:"update",toEl:wr,originalEvent:e}),Ir({sortable:this,name:"sort",toEl:wr,originalEvent:e})),pa.active&&(null!=Gr&&-1!==Gr||(Gr=kr,Tr=Rr),Ir({sortable:this,name:"end",toEl:wr,originalEvent:e}),this.save())))),this._nulling()},_nulling:function(){Cr("nulling",this),Er=br=wr=_r=Sr=Pr=Mr=xr=Dr=jr=zr=Gr=Tr=kr=Rr=Vr=Wr=Lr=Or=pa.dragged=pa.ghost=pa.clone=pa.active=null,ea.forEach((function(e){e.checked=!0})),ea.length=Ur=Nr=0},handleEvent:function(e){switch(e.type){case"drop":case"dragend":this._onDrop(e);break;case"dragenter":case"dragover":br&&(this._onDragOver(e),function(e){e.dataTransfer&&(e.dataTransfer.dropEffect="move");e.cancelable&&e.preventDefault()}(e));break;case"selectstart":e.preventDefault()}},toArray:function(){for(var e,t=[],o=this.el.children,n=0,i=o.length,r=this.options;n=0;n--)this._layersOrder[n].layer.setZIndex(0)}e.prototype.setMap.call(this,t)},t.prototype.addLayer=function(e,t){var o=this,n=this.getMap();if(t=t||{},e){var i=e.gpLayerId;if(void 0!==i){var r=!1;if(n.getLayers().forEach((function(e){e.gpLayerId===i&&(r=!0)})),r)if(this._layers[i]){for(var a in t)t.hasOwnProperty(a)&&(this._layers[i][a]=t[a]);if(t.title){var s=document.getElementById(this._addUID("GPname_ID_"+i));s&&(s.innerHTML=t.title,s.title=t.description||t.title)}var l=document.getElementById(this._addUID("GPinfo_ID_"+i));if(!document.getElementById(this._addUID("GPinfo_ID_"+i))&&t.description){var c=document.getElementById(this._addUID("GPadvancedTools_ID_"+i));c&&c.appendChild(this._createAdvancedToolInformationElement({id:i}))}l&&"GPlayerInfoOpened"===l.className&&(document.getElementById(this._addUID("GPlayerInfoPanel")).className="GPlayerInfoPanelClosed",l.className="GPlayerInfo")}else{var u=this.getLayerInfo(e)||{},d=e.getOpacity(),p=e.getVisible(),h=this.isInRange(e,n),g={layer:e,id:i,opacity:null!=d?d:1,visibility:null==p||p,inRange:null==h||h,title:null!=t.title?t.title:u._title||i,description:t.description||u._description||null,legends:t.legends||u._legends||[],metadata:t.metadata||u._metadata||[],quicklookUrl:t.quicklookUrl||u._quicklookUrl||null};this._layers[i]=g;var m=this._createLayerDiv(g);this._layers[i].div=m,e.getZIndex&&0!==e.getZIndex()&&void 0!==e.getZIndex()||e._forceNullzIndex?this._updateLayersOrder():(this._layersOrder.unshift(g),this._lastZIndex++,e.setZIndex(this._lastZIndex),this._layerListContainer.insertBefore(m,this._layerListContainer.firstChild)),this._listeners.updateLayerOpacity=e.on("change:opacity",(function(e){return o._updateLayerOpacity(e)})),this._listeners.updateLayerVisibility=e.on("change:visible",(function(e){return o._updateLayerVisibility(e)})),null==this._layers[i].onZIndexChangeEvent&&(this._layers[i].onZIndexChangeEvent=e.on("change:zIndex",(function(){return o._updateLayersOrder()})))}else Da.log("[ERROR] LayerSwitcher:addLayer - configuration cannot be set for ",e," layer (layer is not in map.getLayers() )")}else Da.trace("[WARN] LayerSwitcher:addLayer - configuration cannot be set for this layer (layer id not found)",e)}else Da.log("[ERROR] LayerSwitcher:addLayer - missing layer parameter")},t.prototype.removeLayer=function(e){if(e){Object(Oo.unByKey)(this._listeners.updateLayerOpacity),Object(Oo.unByKey)(this._listeners.updateLayerVisibility),Da.trace(e);var t=e.gpLayerId,o=document.getElementById(this._addUID("GPlayersList")),n=document.getElementById(this._addUID("GPinfo_ID_"+t));n&&"GPlayerInfoOpened"===n.className&&(document.getElementById(this._addUID("GPlayerInfoPanel")).className="GPlayerInfoPanelClosed",n.className="GPlayerInfo");var i=document.getElementById(this._addUID("GPlayerSwitcher_ID_"+t));i&&o.removeChild(i);var r=Math.abs(e.getZIndex()-this._lastZIndex);this._layersOrder.splice(r,1),this._lastZIndex--;for(var a=this._layersOrder,s=0;s1&&(t=1),t<0&&(t=0);var o=e.target.gpLayerId,n=document.getElementById(this._addUID("GPopacityValueDiv_ID_"+o));n&&(n.value=Math.round(100*t));var i=document.getElementById(this._addUID("GPopacityValue_ID_"+o));i&&(i.innerHTML=Math.round(100*t)+"%")},t.prototype._onVisibilityLayerClick=function(e){var t=e.target.id,o=xi.index(t);this._layers[o].layer.setVisible(e.target.checked)},t.prototype._updateLayerVisibility=function(e){var t=e.target.getVisible(),o=e.target.gpLayerId,n=document.getElementById(this._addUID("GPvisibility_ID_"+o));n&&(n.checked=t)},t.prototype._updateLayersOrder=function(){var e=this,t=this.getMap();if(t){var o,n;for(var i in this._layersIndex={},t.getLayers().forEach((function(t){n=t.gpLayerId,Object(Oo.unByKey)(e._layers[n].onZIndexChangeEvent),e._layers[n].onZIndexChangeEvent=null,o=null,void 0!==t.getZIndex&&(o=t.getZIndex(),e._layersIndex[o]&&Array.isArray(e._layersIndex[o])||(e._layersIndex[o]=[]),e._layersIndex[o].push(e._layers[n]))})),this._lastZIndex=0,this._layersOrder=[],this._layersIndex)if(this._layersIndex.hasOwnProperty(i))for(var r=this._layersIndex[i],a=0;ae.getMaxResolution()||o-1},t.prototype._activateEvent=function(e,t){var o=this,n=function(e){ht.onDisplayFeatureInfo(e,o)};"contextmenu"===e?t.getViewport().addEventListener(e,n):t.on(e,n),this._eventsHandler[e]=n,this._events[e]=!0},t.prototype._deactivateEvent=function(e,t){"contextmenu"===e?t.getViewport().removeEventListener(e,this._eventsHandler[e]):t.un(e,this._eventsHandler[e]),delete this._eventsHandler[e],this._events[e]=!1},t.prototype._updateEvents=function(e){e||(e=this.getMap());for(var t=[],o=0;o=0?this._activateEvent(i,e):this._events[i]&&t.indexOf(i)<0&&this._deactivateEvent(i,e)},t.prototype._clearEvents=function(){var e=this.getMap();for(var t in this._events)this._events[t]&&this._deactivateEvent(t,e)},t.prototype._hasLayer=function(e){for(var t=0;t