ext !== component.context) {\n\t\tif (!component.prevContext) component.prevContext = component.context;\n\t\tcomponent.context = context;\n\t}\n\n\tif (!component.prevProps) component.prevProps = component.props;\n\tcomponent.props = props;\n\n\tcomponent._disable = false;\n\n\tif (opts !== 0) {\n\t\tif (opts === 1 || options.syncComponentUpdates !== false || !component.base) {\n\t\t\trenderComponent(component, 1, mountAll);\n\t\t} else {\n\t\t\tenqueueRender(component);\n\t\t}\n\t}\n\n\tif (component.__ref) component.__ref(component);\n}\n\n/** Render a Component, triggering necessary lifecycle events and taking High-Order Components into account.\n *\t@param {Component} component\n *\t@param {Object} [opts]\n *\t@param {boolean} [opts.build=false]\t\tIf `true`, component will build and store a DOM node if not already associated with one.\n *\t@private\n */\nfunction renderComponent(component, opts, mountAll, isChild) {\n\tif (component._disable) return;\n\n\tvar props = component.props,\n\t state = component.state,\n\t context = component.context,\n\t previousProps = component.prevProps || props,\n\t previousState = component.prevState || state,\n\t previousContext = component.prevContext || context,\n\t isUpdate = component.base,\n\t nextBase = component.nextBase,\n\t initialBase = isUpdate || nextBase,\n\t initialChildComponent = component._component,\n\t skip = false,\n\t rendered,\n\t inst,\n\t cbase;\n\n\t// if updating\n\tif (isUpdate) {\n\t\tcomponent.props = previousProps;\n\t\tcomponent.state = previousState;\n\t\tcomponent.context = previousContext;\n\t\tif (opts !== 2 && component.shouldComponentUpdate && component.shouldComponentUpdate(props, state, context) === false) {\n\t\t\tskip = true;\n\t\t} else if (component.componentWillUpdate) {\n\t\t\tcomponent.componentWillUpdate(props, state, context);\n\t\t}\n\t\tcomponent.props = props;\n\t\tcomponent.state = state;\n\t\tcomponent.context = context;\n\t}\n\n\tcomponent.prevProps = component.prevState = component.prevContext = component.nextBase = null;\n\tcomponent._dirty = false;\n\n\tif (!skip) {\n\t\trendered = component.render(props, state, context);\n\n\t\t// context to pass to the child, can be updated via (grand-)parent component\n\t\tif (component.getChildContext) {\n\t\t\tcontext = extend(extend({}, context), component.getChildContext());\n\t\t}\n\n\t\tvar childComponent = rendered && rendered.nodeName,\n\t\t toUnmount,\n\t\t base;\n\n\t\tif (typeof childComponent === 'function') {\n\t\t\t// set up high order component link\n\n\t\t\tvar childProps = getNodeProps(rendered);\n\t\t\tinst = initialChildComponent;\n\n\t\t\tif (inst && inst.constructor === childComponent && childProps.key == inst.__key) {\n\t\t\t\tsetComponentProps(inst, childProps, 1, context, false);\n\t\t\t} else {\n\t\t\t\ttoUnmount = inst;\n\n\t\t\t\tcomponent._component = inst = createComponent(childComponent, childProps, context);\n\t\t\t\tinst.nextBase = inst.nextBase || nextBase;\n\t\t\t\tinst._parentComponent = component;\n\t\t\t\tsetComponentProps(inst, childProps, 0, context, false);\n\t\t\t\trenderComponent(inst, 1, mountAll, true);\n\t\t\t}\n\n\t\t\tbase = inst.base;\n\t\t} else {\n\t\t\tcbase = initialBase;\n\n\t\t\t// destroy high order component link\n\t\t\ttoUnmount = initialChildComponent;\n\t\t\tif (toUnmount) {\n\t\t\t\tcbase = component._component = null;\n\t\t\t}\n\n\t\t\tif (initialBase || opts === 1) {\n\t\t\t\tif (cbase) cbase._component = null;\n\t\t\t\tbase = diff(cbase, rendered, context, mountAll || !isUpdate, initialBase && initialBase.parentNode, true);\n\t\t\t}\n\t\t}\n\n\t\tif (initialBase && base !== initialBase && inst !== initialChildComponent) {\n\t\t\tvar baseParent = initialBase.parentNode;\n\t\t\tif (baseParent && base !== baseParent) {\n\t\t\t\tbaseParent.replaceChild(base, initialBase);\n\n\t\t\t\tif (!toUnmount) {\n\t\t\t\t\tinitialBase._component = null;\n\t\t\t\t\trecollectNodeTree(initialBase, false);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (toUnmount) {\n\t\t\tunmountComponent(toUnmount);\n\t\t}\n\n\t\tcomponent.base = base;\n\t\tif (base && !isChild) {\n\t\t\tvar componentRef = component,\n\t\t\t t = component;\n\t\t\twhile (t = t._parentComponent) {\n\t\t\t\t(componentRef = t).base = base;\n\t\t\t}\n\t\t\tbase._component = componentRef;\n\t\t\tbase._componentConstructor = componentRef.constructor;\n\t\t}\n\t}\n\n\tif (!isUpdate || mountAll) {\n\t\tmounts.unshift(component);\n\t} else if (!skip) {\n\t\t// Ensure that pending componentDidMount() hooks of child components\n\t\t// are called before the componentDidUpdate() hook in the parent.\n\t\t// Note: disabled as it causes duplicate hooks, see https://github.com/developit/preact/issues/750\n\t\t// flushMounts();\n\n\t\tif (component.componentDidUpdate) {\n\t\t\tcomponent.componentDidUpdate(previousProps, previousState, previousContext);\n\t\t}\n\t\tif (options.afterUpdate) options.afterUpdate(component);\n\t}\n\n\tif (component._renderCallbacks != null) {\n\t\twhile (component._renderCallbacks.length) {\n\t\t\tcomponent._renderCallbacks.pop().call(component);\n\t\t}\n\t}\n\n\tif (!diffLevel && !isChild) flushMounts();\n}\n\n/** Apply the Component referenced by a VNode to the DOM.\n *\t@param {Element} dom\tThe DOM node to mutate\n *\t@param {VNode} vnode\tA Component-referencing VNode\n *\t@returns {Element} dom\tThe created/mutated element\n *\t@private\n */\nfunction buildComponentFromVNode(dom, vnode, context, mountAll) {\n\tvar c = dom && dom._component,\n\t originalComponent = c,\n\t oldDom = dom,\n\t isDirectOwner = c && dom._componentConstructor === vnode.nodeName,\n\t isOwner = isDirectOwner,\n\t props = getNodeProps(vnode);\n\twhile (c && !isOwner && (c = c._parentComponent)) {\n\t\tisOwner = c.constructor === vnode.nodeName;\n\t}\n\n\tif (c && isOwner && (!mountAll || c._component)) {\n\t\tsetComponentProps(c, props, 3, context, mountAll);\n\t\tdom = c.base;\n\t} else {\n\t\tif (originalComponent && !isDirectOwner) {\n\t\t\tunmountComponent(originalComponent);\n\t\t\tdom = oldDom = null;\n\t\t}\n\n\t\tc = createComponent(vnode.nodeName, props, context);\n\t\tif (dom && !c.nextBase) {\n\t\t\tc.nextBase = dom;\n\t\t\t// passing dom/oldDom as nextBase will recycle it if unused, so bypass recycling on L229:\n\t\t\toldDom = null;\n\t\t}\n\t\tsetComponentProps(c, props, 1, context, mountAll);\n\t\tdom = c.base;\n\n\t\tif (oldDom && dom !== oldDom) {\n\t\t\toldDom._component = null;\n\t\t\trecollectNodeTree(oldDom, false);\n\t\t}\n\t}\n\n\treturn dom;\n}\n\n/** Remove a component from the DOM and recycle it.\n *\t@param {Component} component\tThe Component instance to unmount\n *\t@private\n */\nfunction unmountComponent(component) {\n\tif (options.beforeUnmount) options.beforeUnmount(component);\n\n\tvar base = component.base;\n\n\tcomponent._disable = true;\n\n\tif (component.componentWillUnmount) component.componentWillUnmount();\n\n\tcomponent.base = null;\n\n\t// recursively tear down & recollect high-order component children:\n\tvar inner = component._component;\n\tif (inner) {\n\t\tunmountComponent(inner);\n\t} else if (base) {\n\t\tif (base['__preactattr_'] && base['__preactattr_'].ref) base['__preactattr_'].ref(null);\n\n\t\tcomponent.nextBase = base;\n\n\t\tremoveNode(base);\n\t\tcollectComponent(component);\n\n\t\tremoveChildren(base);\n\t}\n\n\tif (component.__ref) component.__ref(null);\n}\n\n/** Base Component class.\n *\tProvides `setState()` and `forceUpdate()`, which trigger rendering.\n *\t@public\n *\n *\t@example\n *\tclass MyFoo extends Component {\n *\t\trender(props, state) {\n *\t\t\treturn <div />;\n *\t\t}\n *\t}\n */\nfunction Component(props, context) {\n\tthis._dirty = true;\n\n\t/** @public\n *\t@type {object}\n */\n\tthis.context = context;\n\n\t/** @public\n *\t@type {object}\n */\n\tthis.props = props;\n\n\t/** @public\n *\t@type {object}\n */\n\tthis.state = this.state || {};\n}\n\nextend(Component.prototype, {\n\n\t/** Returns a `boolean` indicating if the component should re-render when receiving the given `props` and `state`.\n *\t@param {object} nextProps\n *\t@param {object} nextState\n *\t@param {object} nextContext\n *\t@returns {Boolean} should the component re-render\n *\t@name shouldComponentUpdate\n *\t@function\n */\n\n\t/** Update component state by copying properties from `state` to `this.state`.\n *\t@param {object} state\t\tA hash of state properties to update with new values\n *\t@param {function} callback\tA function to be called once component state is updated\n */\n\tsetState: function setState(state, callback) {\n\t\tvar s = this.state;\n\t\tif (!this.prevState) this.prevState = extend({}, s);\n\t\textend(s, typeof state === 'function' ? state(s, this.props) : state);\n\t\tif (callback) (this._renderCallbacks = this._renderCallbacks || []).push(callback);\n\t\tenqueueRender(this);\n\t},\n\n\n\t/** Immediately perform a synchronous re-render of the component.\n *\t@param {function} callback\t\tA function to be called after component is re-rendered.\n *\t@private\n */\n\tforceUpdate: function forceUpdate(callback) {\n\t\tif (callback) (this._renderCallbacks = this._renderCallbacks || []).push(callback);\n\t\trenderComponent(this, 2);\n\t},\n\n\n\t/** Accepts `props` and `state`, and returns a new Virtual DOM tree to build.\n *\tVirtual DOM is generally constructed via [JSX](http://jasonformat.com/wtf-is-jsx).\n *\t@param {object} props\t\tProps (eg: JSX attributes) received from parent element/component\n *\t@param {object} state\t\tThe component's current state\n *\t@param {object} context\t\tContext object (if a parent component has provided context)\n *\t@returns VNode\n */\n\trender: function render() {}\n});\n\n/** Render JSX into a `parent` Element.\n *\t@param {VNode} vnode\t\tA (JSX) VNode to render\n *\t@param {Element} parent\t\tDOM element to render into\n *\t@param {Element} [merge]\tAttempt to re-use an existing DOM tree rooted at `merge`\n *\t@public\n *\n *\t@example\n *\t// render a div into <body>:\n *\trender(<div id=\"hello\">hello!</div>, document.body);\n *\n *\t@example\n *\t// render a \"Thing\" component into #foo:\n *\tconst Thing = ({ name }) => <span>{ name }</span>;\n *\trender(<Thing name=\"one\" />, document.querySelector('#foo'));\n */\nfunction render(vnode, parent, merge) {\n return diff(merge, vnode, {}, false, parent, false);\n}\n\nvar preact = {\n\th: h,\n\tcreateElement: h,\n\tcloneElement: cloneElement,\n\tComponent: Component,\n\trender: render,\n\trerender: rerender,\n\toptions: options\n};\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (preact);\n//# sourceMappingURL=preact.esm.js.map\n\n\n/***/ }),\n/* 1 */\n/***/ (function(module, exports) {\n\n/*\n\tMIT License http://www.opensource.org/licenses/mit-license.php\n\tAuthor Tobias Koppers @sokra\n*/\n// css base code, injected by the css-loader\nmodule.exports = function(useSourceMap) {\n\tvar list = [];\n\n\t// return the list of modules as css string\n\tlist.toString = function toString() {\n\t\treturn this.map(function (item) {\n\t\t\tvar content = cssWithMappingToString(item, useSourceMap);\n\t\t\tif(item[2]) {\n\t\t\t\treturn \"@media \" + item[2] + \"{\" + content + \"}\";\n\t\t\t} else {\n\t\t\t\treturn content;\n\t\t\t}\n\t\t}).join(\"\");\n\t};\n\n\t// import a list of modules into the list\n\tlist.i = function(modules, mediaQuery) {\n\t\tif(typeof modules === \"string\")\n\t\t\tmodules = [[null, modules, \"\"]];\n\t\tvar alreadyImportedModules = {};\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar id = this[i][0];\n\t\t\tif(typeof id === \"number\")\n\t\t\t\talreadyImportedModules[id] = true;\n\t\t}\n\t\tfor(i = 0; i < modules.length; i++) {\n\t\t\tvar item = modules[i];\n\t\t\t// skip already imported module\n\t\t\t// this implementation is not 100% perfect for weird media query combinations\n\t\t\t// when a module is imported multiple times with different media queries.\n\t\t\t// I hope this will never occur (Hey this way we have smaller bundles)\n\t\t\tif(typeof item[0] !== \"number\" || !alreadyImportedModules[item[0]]) {\n\t\t\t\tif(mediaQuery && !item[2]) {\n\t\t\t\t\titem[2] = mediaQuery;\n\t\t\t\t} else if(mediaQuery) {\n\t\t\t\t\titem[2] = \"(\" + item[2] + \") and (\" + mediaQuery + \")\";\n\t\t\t\t}\n\t\t\t\tlist.push(item);\n\t\t\t}\n\t\t}\n\t};\n\treturn list;\n};\n\nfunction cssWithMappingToString(item, useSourceMap) {\n\tvar content = item[1] || '';\n\tvar cssMapping = item[3];\n\tif (!cssMapping) {\n\t\treturn content;\n\t}\n\n\tif (useSourceMap && typeof btoa === 'function') {\n\t\tvar sourceMapping = toComment(cssMapping);\n\t\tvar sourceURLs = cssMapping.sources.map(function (source) {\n\t\t\treturn '/*# sourceURL=' + cssMapping.sourceRoot + source + ' */'\n\t\t});\n\n\t\treturn [content].concat(sourceURLs).concat([sourceMapping]).join('\\n');\n\t}\n\n\treturn [content].join('\\n');\n}\n\n// Adapted from convert-source-map (MIT)\nfunction toComment(sourceMap) {\n\t// eslint-disable-next-line no-undef\n\tvar base64 = btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap))));\n\tvar data = 'sourceMappingURL=data:application/json;charset=utf-8;base64,' + base64;\n\n\treturn '/*# ' + data + ' */';\n}\n\n\n/***/ }),\n/* 2 */\n/***/ (function(module, exports, __webpack_require__) {\n\n/*\n\tMIT License http://www.opensource.org/licenses/mit-license.php\n\tAuthor Tobias Koppers @sokra\n*/\n\nvar stylesInDom = {};\n\nvar\tmemoize = function (fn) {\n\tvar memo;\n\n\treturn function () {\n\t\tif (typeof memo === \"undefined\") memo = fn.apply(this, arguments);\n\t\treturn memo;\n\t};\n};\n\nvar isOldIE = memoize(function () {\n\t// Test for IE <= 9 as proposed by Browserhacks\n\t// @see http://browserhacks.com/#hack-e71d8692f65334173fee715c222cb805\n\t// Tests for existence of standard globals is to allow style-loader\n\t// to operate correctly into non-standard environments\n\t// @see https://github.com/webpack-contrib/style-loader/issues/177\n\treturn window && document && document.all && !window.atob;\n});\n\nvar getTarget = function (target) {\n return document.querySelector(target);\n};\n\nvar getElement = (function (fn) {\n\tvar memo = {};\n\n\treturn function(target) {\n // If passing function in options, then use it for resolve \"head\" element.\n // Useful for Shadow Root style i.e\n // {\n // insertInto: function () { return document.querySelector(\"#foo\").shadowRoot }\n // }\n if (typeof target === 'function') {\n return target();\n }\n if (typeof memo[target] === \"undefined\") {\n\t\t\tvar styleTarget = getTarget.call(this, target);\n\t\t\t// Special case to return head of iframe instead of iframe itself\n\t\t\tif (window.HTMLIFrameElement && styleTarget instanceof window.HTMLIFrameElement) {\n\t\t\t\ttry {\n\t\t\t\t\t// This will throw an exception if access to iframe is blocked\n\t\t\t\t\t// due to cross-origin restrictions\n\t\t\t\t\tstyleTarget = styleTarget.contentDocument.head;\n\t\t\t\t} catch(e) {\n\t\t\t\t\tstyleTarget = null;\n\t\t\t\t}\n\t\t\t}\n\t\t\tmemo[target] = styleTarget;\n\t\t}\n\t\treturn memo[target]\n\t};\n})();\n\nvar singleton = null;\nvar\tsingletonCounter = 0;\nvar\tstylesInsertedAtTop = [];\n\nvar\tfixUrls = __webpack_require__(16);\n\nmodule.exports = function(list, options) {\n\tif (typeof DEBUG !== \"undefined\" && DEBUG) {\n\t\tif (typeof document !== \"object\") throw new Error(\"The style-loader cannot be used in a non-browser environment\");\n\t}\n\n\toptions = options || {};\n\n\toptions.attrs = typeof options.attrs === \"object\" ? options.attrs : {};\n\n\t// Force single-tag solution on IE6-9, which has a hard limit on the # of <style>\n\t// tags it will allow on a page\n\tif (!options.singleton && typeof options.singleton !== \"boolean\") options.singleton = isOldIE();\n\n\t// By default, add <style> tags to the <head> element\n if (!options.insertInto) options.insertInto = \"head\";\n\n\t// By default, add <style> tags to the bottom of the target\n\tif (!options.insertAt) options.insertAt = \"bottom\";\n\n\tvar styles = listToStyles(list, options);\n\n\taddStylesToDom(styles, options);\n\n\treturn function update (newList) {\n\t\tvar mayRemove = [];\n\n\t\tfor (var i = 0; i < styles.length; i++) {\n\t\t\tvar item = styles[i];\n\t\t\tvar domStyle = stylesInDom[item.id];\n\n\t\t\tdomStyle.refs--;\n\t\t\tmayRemove.push(domStyle);\n\t\t}\n\n\t\tif(newList) {\n\t\t\tvar newStyles = listToStyles(newList, options);\n\t\t\taddStylesToDom(newStyles, options);\n\t\t}\n\n\t\tfor (var i = 0; i < mayRemove.length; i++) {\n\t\t\tvar domStyle = mayRemove[i];\n\n\t\t\tif(domStyle.refs === 0) {\n\t\t\t\tfor (var j = 0; j < domStyle.parts.length; j++) domStyle.parts[j]();\n\n\t\t\t\tdelete stylesInDom[domStyle.id];\n\t\t\t}\n\t\t}\n\t};\n};\n\nfunction addStylesToDom (styles, options) {\n\tfor (var i = 0; i < styles.length; i++) {\n\t\tvar item = styles[i];\n\t\tvar domStyle = stylesInDom[item.id];\n\n\t\tif(domStyle) {\n\t\t\tdomStyle.refs++;\n\n\t\t\tfor(var j = 0; j < domStyle.parts.length; j++) {\n\t\t\t\tdomStyle.parts[j](item.parts[j]);\n\t\t\t}\n\n\t\t\tfor(; j < item.parts.length; j++) {\n\t\t\t\tdomStyle.parts.push(addStyle(item.parts[j], options));\n\t\t\t}\n\t\t} else {\n\t\t\tvar parts = [];\n\n\t\t\tfor(var j = 0; j < item.parts.length; j++) {\n\t\t\t\tparts.push(addStyle(item.parts[j], options));\n\t\t\t}\n\n\t\t\tstylesInDom[item.id] = {id: item.id, refs: 1, parts: parts};\n\t\t}\n\t}\n}\n\nfunction listToStyles (list, options) {\n\tvar styles = [];\n\tvar newStyles = {};\n\n\tfor (var i = 0; i < list.length; i++) {\n\t\tvar item = list[i];\n\t\tvar id = options.base ? item[0] + options.base : item[0];\n\t\tvar css = item[1];\n\t\tvar media = item[2];\n\t\tvar sourceMap = item[3];\n\t\tvar part = {css: css, media: media, sourceMap: sourceMap};\n\n\t\tif(!newStyles[id]) styles.push(newStyles[id] = {id: id, parts: [part]});\n\t\telse newStyles[id].parts.push(part);\n\t}\n\n\treturn styles;\n}\n\nfunction insertStyleElement (options, style) {\n\tvar target = getElement(options.insertInto)\n\n\tif (!target) {\n\t\tthrow new Error(\"Couldn't find a style target. This probably means that the value for the 'insertInto' parameter is invalid.\");\n\t}\n\n\tvar lastStyleElementInsertedAtTop = stylesInsertedAtTop[stylesInsertedAtTop.length - 1];\n\n\tif (options.insertAt === \"top\") {\n\t\tif (!lastStyleElementInsertedAtTop) {\n\t\t\ttarget.insertBefore(style, target.firstChild);\n\t\t} else if (lastStyleElementInsertedAtTop.nextSibling) {\n\t\t\ttarget.insertBefore(style, lastStyleElementInsertedAtTop.nextSibling);\n\t\t} else {\n\t\t\ttarget.appendChild(style);\n\t\t}\n\t\tstylesInsertedAtTop.push(style);\n\t} else if (options.insertAt === \"bottom\") {\n\t\ttarget.appendChild(style);\n\t} else if (typeof options.insertAt === \"object\" && options.insertAt.before) {\n\t\tvar nextSibling = getElement(options.insertInto + \" \" + options.insertAt.before);\n\t\ttarget.insertBefore(style, nextSibling);\n\t} else {\n\t\tthrow new Error(\"[Style Loader]\\n\\n Invalid value for parameter 'insertAt' ('options.insertAt') found.\\n Must be 'top', 'bottom', or Object.\\n (https://github.com/webpack-contrib/style-loader#insertat)\\n\");\n\t}\n}\n\nfunction removeStyleElement (style) {\n\tif (style.parentNode === null) return false;\n\tstyle.parentNode.removeChild(style);\n\n\tvar idx = stylesInsertedAtTop.indexOf(style);\n\tif(idx >= 0) {\n\t\tstylesInsertedAtTop.splice(idx, 1);\n\t}\n}\n\nfunction createStyleElement (options) {\n\tvar style = document.createElement(\"style\");\n\n\toptions.attrs.type = \"text/css\";\n\n\taddAttrs(style, options.attrs);\n\tinsertStyleElement(options, style);\n\n\treturn style;\n}\n\nfunction createLinkElement (options) {\n\tvar link = document.createElement(\"link\");\n\n\toptions.attrs.type = \"text/css\";\n\toptions.attrs.rel = \"stylesheet\";\n\n\taddAttrs(link, options.attrs);\n\tinsertStyleElement(options, link);\n\n\treturn link;\n}\n\nfunction addAttrs (el, attrs) {\n\tObject.keys(attrs).forEach(function (key) {\n\t\tel.setAttribute(key, attrs[key]);\n\t});\n}\n\nfunction addStyle (obj, options) {\n\tvar style, update, remove, result;\n\n\t// If a transform function was defined, run it on the css\n\tif (options.transform && obj.css) {\n\t result = options.transform(obj.css);\n\n\t if (result) {\n\t \t// If transform returns a value, use that instead of the original css.\n\t \t// This allows running runtime transformations on the css.\n\t \tobj.css = result;\n\t } else {\n\t \t// If the transform function returns a falsy value, don't add this css.\n\t \t// This allows conditional loading of css\n\t \treturn function() {\n\t \t\t// noop\n\t \t};\n\t }\n\t}\n\n\tif (options.singleton) {\n\t\tvar styleIndex = singletonCounter++;\n\n\t\tstyle = singleton || (singleton = createStyleElement(options));\n\n\t\tupdate = applyToSingletonTag.bind(null, style, styleIndex, false);\n\t\tremove = applyToSingletonTag.bind(null, style, styleIndex, true);\n\n\t} else if (\n\t\tobj.sourceMap &&\n\t\ttypeof URL === \"function\" &&\n\t\ttypeof URL.createObjectURL === \"function\" &&\n\t\ttypeof URL.revokeObjectURL === \"function\" &&\n\t\ttypeof Blob === \"function\" &&\n\t\ttypeof btoa === \"function\"\n\t) {\n\t\tstyle = createLinkElement(options);\n\t\tupdate = updateLink.bind(null, style, options);\n\t\tremove = function () {\n\t\t\tremoveStyleElement(style);\n\n\t\t\tif(style.href) URL.revokeObjectURL(style.href);\n\t\t};\n\t} else {\n\t\tstyle = createStyleElement(options);\n\t\tupdate = applyToTag.bind(null, style);\n\t\tremove = function () {\n\t\t\tremoveStyleElement(style);\n\t\t};\n\t}\n\n\tupdate(obj);\n\n\treturn function updateStyle (newObj) {\n\t\tif (newObj) {\n\t\t\tif (\n\t\t\t\tnewObj.css === obj.css &&\n\t\t\t\tnewObj.media === obj.media &&\n\t\t\t\tnewObj.sourceMap === obj.sourceMap\n\t\t\t) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tupdate(obj = newObj);\n\t\t} else {\n\t\t\tremove();\n\t\t}\n\t};\n}\n\nvar replaceText = (function () {\n\tvar textStore = [];\n\n\treturn function (index, replacement) {\n\t\ttextStore[index] = replacement;\n\n\t\treturn textStore.filter(Boolean).join('\\n');\n\t};\n})();\n\nfunction applyToSingletonTag (style, index, remove, obj) {\n\tvar css = remove ? \"\" : obj.css;\n\n\tif (style.styleSheet) {\n\t\tstyle.styleSheet.cssText = replaceText(index, css);\n\t} else {\n\t\tvar cssNode = document.createTextNode(css);\n\t\tvar childNodes = style.childNodes;\n\n\t\tif (childNodes[index]) style.removeChild(childNodes[index]);\n\n\t\tif (childNodes.length) {\n\t\t\tstyle.insertBefore(cssNode, childNodes[index]);\n\t\t} else {\n\t\t\tstyle.appendChild(cssNode);\n\t\t}\n\t}\n}\n\nfunction applyToTag (style, obj) {\n\tvar css = obj.css;\n\tvar media = obj.media;\n\n\tif(media) {\n\t\tstyle.setAttribute(\"media\", media)\n\t}\n\n\tif(style.styleSheet) {\n\t\tstyle.styleSheet.cssText = css;\n\t} else {\n\t\twhile(style.firstChild) {\n\t\t\tstyle.removeChild(style.firstChild);\n\t\t}\n\n\t\tstyle.appendChild(document.createTextNode(css));\n\t}\n}\n\nfunction updateLink (link, options, obj) {\n\tvar css = obj.css;\n\tvar sourceMap = obj.sourceMap;\n\n\t/*\n\t\tIf convertToAbsoluteUrls isn't defined, but sourcemaps are enabled\n\t\tand there is no publicPath defined then lets turn convertToAbsoluteUrls\n\t\ton by default. Otherwise default to the convertToAbsoluteUrls option\n\t\tdirectly\n\t*/\n\tvar autoFixUrls = options.convertToAbsoluteUrls === undefined && sourceMap;\n\n\tif (options.convertToAbsoluteUrls || autoFixUrls) {\n\t\tcss = fixUrls(css);\n\t}\n\n\tif (sourceMap) {\n\t\t// http://stackoverflow.com/a/26603875\n\t\tcss += \"\\n/*# sourceMappingURL=data:application/json;base64,\" + btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))) + \" */\";\n\t}\n\n\tvar blob = new Blob([css], { type: \"text/css\" });\n\n\tvar oldSrc = link.href;\n\n\tlink.href = URL.createObjectURL(blob);\n\n\tif(oldSrc) URL.revokeObjectURL(oldSrc);\n}\n\n\n/***/ }),\n/* 3 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*!\n Copyright (c) 2016 Jed Watson.\n Licensed under the MIT License (MIT), see\n http://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg)) {\n\t\t\t\tclasses.push(classNames.apply(null, arg));\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tfor (var key in arg) {\n\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tmodule.exports = classNames;\n\t} else if (true) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\t!(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_RESULT__ = (function () {\n\t\t\treturn classNames;\n\t\t}).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__),\n\t\t\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n\n\n/***/ }),\n/* 4 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\nvar content = __webpack_require__(19);\n\nif(typeof content === 'string') content = [[module.i, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = __webpack_require__(2)(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(false) {\n\tmodule.hot.accept(\"!!../../node_modules/css-loader/index.js??ref--1-1!./Switcher.css\", function() {\n\t\tvar newContent = require(\"!!../../node_modules/css-loader/index.js??ref--1-1!./Switcher.css\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}\n\n/***/ }),\n/* 5 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _preact = __webpack_require__(0);\n\nvar _CheckboxListItem = __webpack_require__(23);\n\nvar _CheckboxListItem2 = _interopRequireDefault(_CheckboxListItem);\n\nvar _CheckboxList = __webpack_require__(6);\n\nvar _CheckboxList2 = _interopRequireDefault(_CheckboxList);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } /** @jsx h */\n\n\nvar ALL_ITEM = Symbol('ALL_ITEM');\n\nvar CheckboxList = function (_Component) {\n _inherits(CheckboxList, _Component);\n\n function CheckboxList(props) {\n _classCallCheck(this, CheckboxList);\n\n var _this = _possibleConstructorReturn(this, (CheckboxList.__proto__ || Object.getPrototypeOf(CheckboxList)).call(this, props));\n\n _this.handleToggleAllCheck = function () {\n var checkedItems = _this.isAllChecked() ? [] : _this.props.items;\n _this.setState({ checkedItems: checkedItems });\n _this.informAboutChange(checkedItems);\n };\n\n _this.handleItemCheck = function (item) {\n var checkedItems = void 0;\n\n if (_this.isItemChecked(item)) {\n checkedItems = _this.state.checkedItems.filter(function (checkedItem) {\n return checkedItem !== item;\n });\n } else {\n checkedItems = [].concat(_toConsumableArray(_this.state.checkedItems), [item]);\n }\n\n _this.setState({ checkedItems: checkedItems });\n _this.informAboutChange(checkedItems);\n };\n\n _this.state = {\n checkedItems: props.checkedItems || props.items\n };\n return _this;\n }\n\n _createClass(CheckboxList, [{\n key: 'componentWillReceiveProps',\n value: function componentWillReceiveProps(newProps) {\n var _this2 = this;\n\n if (newProps.items !== this.props.items) {\n if (this.isAllChecked()) {\n // Preserving `all checked` state\n this.setState({ checkedItems: newProps.items });\n this.informAboutChange(newProps.items);\n } else if (this.state.checkedItems.length) {\n // Checking only items that are in the new `items` array\n var checkedItems = newProps.items.filter(function (item) {\n return _this2.state.checkedItems.find(function (checkedItem) {\n return checkedItem.label === item.label;\n });\n });\n\n this.setState({ checkedItems: checkedItems });\n this.informAboutChange(checkedItems);\n }\n }\n }\n }, {\n key: 'render',\n value: function render() {\n var _this3 = this;\n\n var _props = this.props,\n label = _props.label,\n items = _props.items,\n renderLabel = _props.renderLabel;\n\n\n return (0, _preact.h)(\n 'div',\n { className: _CheckboxList2.default.container },\n (0, _preact.h)(\n 'div',\n { className: _CheckboxList2.default.label },\n label,\n ':'\n ),\n (0, _preact.h)(\n 'div',\n null,\n (0, _preact.h)(\n _CheckboxListItem2.default,\n { item: ALL_ITEM,\n checked: this.isAllChecked(),\n onChange: this.handleToggleAllCheck },\n renderLabel\n ),\n items.map(function (item) {\n return (0, _preact.h)(\n _CheckboxListItem2.default,\n { key: item.label,\n item: item,\n checked: _this3.isItemChecked(item),\n onChange: _this3.handleItemCheck },\n renderLabel\n );\n })\n )\n );\n }\n }, {\n key: 'isItemChecked',\n value: function isItemChecked(item) {\n return this.state.checkedItems.includes(item);\n }\n }, {\n key: 'isAllChecked',\n value: function isAllChecked() {\n return this.props.items.length === this.state.checkedItems.length;\n }\n }, {\n key: 'informAboutChange',\n value: function informAboutChange(checkedItems) {\n var _this4 = this;\n\n setTimeout(function () {\n return _this4.props.onChange(checkedItems);\n });\n }\n }]);\n\n return CheckboxList;\n}(_preact.Component);\n\nCheckboxList.ALL_ITEM = ALL_ITEM;\nexports.default = CheckboxList;\n\n/***/ }),\n/* 6 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\nvar content = __webpack_require__(24);\n\nif(typeof content === 'string') content = [[module.i, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = __webpack_require__(2)(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(false) {\n\tmodule.hot.accept(\"!!../../node_modules/css-loader/index.js??ref--1-1!./CheckboxList.css\", function() {\n\t\tvar newContent = require(\"!!../../node_modules/css-loader/index.js??ref--1-1!./CheckboxList.css\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}\n\n/***/ }),\n/* 7 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nvar _preact = __webpack_require__(0);\n\nvar _ModulesTreemap = __webpack_require__(8);\n\nvar _ModulesTreemap2 = _interopRequireDefault(_ModulesTreemap);\n\nvar _viewer = __webpack_require__(27);\n\nvar _viewer2 = _interopRequireDefault(_viewer);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// Initializing WebSocket for live treemap updates\nvar ws = void 0;\n/* eslint no-unused-vars: \"off\" */\n/** @jsx h */\n\ntry {\n ws = new WebSocket('ws://' + location.host);\n} catch (err) {\n console.warn(\"Couldn't connect to analyzer websocket server so you'll have to reload page manually to see updates in the treemap\");\n}\n\nwindow.addEventListener('load', function () {\n renderApp(window.chartData);\n\n if (ws) {\n ws.addEventListener('message', function (event) {\n var msg = JSON.parse(event.data);\n\n if (msg.event === 'chartDataUpdated') {\n renderApp(msg.data);\n }\n });\n }\n}, false);\n\nvar app = void 0;\nfunction renderApp(chartData, initialRender) {\n app = (0, _preact.render)((0, _preact.h)(_ModulesTreemap2.default, { data: chartData, defaultSizes: window.defaultSizes }), document.getElementById('app'), app);\n}\n\n/***/ }),\n/* 8 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _preact = __webpack_require__(0);\n\nvar _filesize = __webpack_require__(9);\n\nvar _filesize2 = _interopRequireDefault(_filesize);\n\nvar _Treemap = __webpack_require__(11);\n\nvar _Treemap2 = _interopRequireDefault(_Treemap);\n\nvar _Tooltip = __webpack_require__(13);\n\nvar _Tooltip2 = _interopRequireDefault(_Tooltip);\n\nvar _Switcher = __webpack_require__(17);\n\nvar _Switcher2 = _interopRequireDefault(_Switcher);\n\nvar _Sidebar = __webpack_require__(20);\n\nvar _Sidebar2 = _interopRequireDefault(_Sidebar);\n\nvar _CheckboxList = __webpack_require__(5);\n\nvar _CheckboxList2 = _interopRequireDefault(_CheckboxList);\n\nvar _ModulesTreemap = __webpack_require__(25);\n\nvar _ModulesTreemap2 = _interopRequireDefault(_ModulesTreemap);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } /** @jsx h */\n\n\nvar SIZE_SWITCH_ITEMS = [{ label: 'Stat', prop: 'statSize' }, { label: 'Parsed', prop: 'parsedSize' }, { label: 'Gzipped', prop: 'gzipSize' }];\n\nvar ModulesTreemap = function (_Component) {\n _inherits(ModulesTreemap, _Component);\n\n function ModulesTreemap(props) {\n _classCallCheck(this, ModulesTreemap);\n\n var _this = _possibleConstructorReturn(this, (ModulesTreemap.__proto__ || Object.getPrototypeOf(ModulesTreemap)).call(this, props));\n\n _this.renderChunkItemLabel = function (item, labelClass) {\n var isAllItem = item === _CheckboxList2.default.ALL_ITEM;\n var label = isAllItem ? 'All' : item.label;\n var size = isAllItem ? _this.totalChunksSize : item[_this.state.activeSizeItem.prop];\n\n return (0, _preact.h)(\n 'span',\n { className: labelClass },\n label,\n ' (',\n (0, _preact.h)(\n 'strong',\n null,\n (0, _filesize2.default)(size)\n ),\n ')'\n );\n };\n\n _this.handleSizeSwitch = function (sizeSwitchItem) {\n _this.setState({ activeSizeItem: sizeSwitchItem });\n };\n\n _this.handleVisibleChunksChange = function (visibleChunkItems) {\n _this.visibleChunkItems = visibleChunkItems;\n _this.setState({ data: _this.getVisibleChunksData() });\n };\n\n _this.handleMouseLeaveTreemap = function () {\n _this.setState({ showTooltip: false });\n };\n\n _this.handleTreemapGroupHover = function (event) {\n var group = event.group;\n\n\n if (group) {\n _this.setState({\n showTooltip: true,\n tooltipContent: _this.getTooltipContent(group)\n });\n } else {\n _this.setState({ showTooltip: false });\n }\n };\n\n _this.setData(props.data, true);\n return _this;\n }\n\n _createClass(ModulesTreemap, [{\n key: 'componentWillReceiveProps',\n value: function componentWillReceiveProps(newProps) {\n if (newProps.data !== this.props.data) {\n this.setData(newProps.data);\n }\n }\n }, {\n key: 'render',\n value: function render() {\n var _state = this.state,\n data = _state.data,\n showTooltip = _state.showTooltip,\n tooltipContent = _state.tooltipContent,\n activeSizeItem = _state.activeSizeItem;\n\n\n return (0, _preact.h)(\n 'div',\n { className: _ModulesTreemap2.default.container },\n (0, _preact.h)(\n _Sidebar2.default,\n null,\n (0, _preact.h)(\n 'div',\n { className: _ModulesTreemap2.default.sidebarGroup },\n (0, _preact.h)(_Switcher2.default, { label: 'Treemap sizes',\n items: this.sizeSwitchItems,\n activeItem: activeSizeItem,\n onSwitch: this.handleSizeSwitch })\n ),\n this.state.chunkItems.length > 1 && (0, _preact.h)(\n 'div',\n { className: _ModulesTreemap2.default.sidebarGroup },\n (0, _preact.h)(_CheckboxList2.default, { label: 'Show chunks',\n items: this.state.chunkItems,\n checkedItems: this.visibleChunkItems,\n renderLabel: this.renderChunkItemLabel,\n onChange: this.handleVisibleChunksChange })\n )\n ),\n (0, _preact.h)(_Treemap2.default, { className: _ModulesTreemap2.default.map,\n data: data,\n weightProp: activeSizeItem.prop,\n onMouseLeave: this.handleMouseLeaveTreemap,\n onGroupHover: this.handleTreemapGroupHover }),\n (0, _preact.h)(\n _Tooltip2.default,\n { visible: showTooltip },\n tooltipContent\n )\n );\n }\n }, {\n key: 'renderModuleSize',\n value: function renderModuleSize(module, sizeType) {\n var sizeProp = sizeType + 'Size';\n var size = module[sizeProp];\n var sizeLabel = SIZE_SWITCH_ITEMS.find(function (item) {\n return item.prop === sizeProp;\n }).label;\n var isActive = this.state.activeSizeItem.prop === sizeProp;\n\n return typeof size === 'number' ? (0, _preact.h)(\n 'div',\n { className: isActive ? _ModulesTreemap2.default.activeSize : '' },\n sizeLabel,\n ' size: ',\n (0, _preact.h)(\n 'strong',\n null,\n (0, _filesize2.default)(size)\n )\n ) : null;\n }\n }, {\n key: 'setData',\n value: function setData(data, initial) {\n var hasParsedSizes = typeof data[0].parsedSize === 'number';\n this.sizeSwitchItems = hasParsedSizes ? SIZE_SWITCH_ITEMS : SIZE_SWITCH_ITEMS.slice(0, 1);\n var activeSizeItemProp = initial ? this.props.defaultSizes + 'Size' : this.state.activeSizeItem.prop;\n var activeSizeItem = this.sizeSwitchItems.find(function (item) {\n return item.prop === activeSizeItemProp;\n });\n if (!activeSizeItem) activeSizeItem = this.sizeSwitchItems[0];\n\n var chunkItems = [].concat(_toConsumableArray(data)).sort(function (chunk1, chunk2) {\n return chunk2[activeSizeItem.prop] - chunk1[activeSizeItem.prop];\n });\n\n if (initial) {\n this.visibleChunkItems = chunkItems;\n }\n\n this.setState({\n data: this.getVisibleChunksData(),\n showTooltip: false,\n tooltipContent: null,\n activeSizeItem: activeSizeItem,\n chunkItems: chunkItems\n });\n }\n }, {\n key: 'getVisibleChunksData',\n value: function getVisibleChunksData() {\n var _this2 = this;\n\n return this.props.data.filter(function (chunk) {\n return _this2.visibleChunkItems.find(function (item) {\n return item.label === chunk.label;\n });\n });\n }\n }, {\n key: 'getTooltipContent',\n value: function getTooltipContent(module) {\n if (!module) return null;\n\n return (0, _preact.h)(\n 'div',\n null,\n (0, _preact.h)(\n 'div',\n null,\n (0, _preact.h)(\n 'strong',\n null,\n module.label\n )\n ),\n (0, _preact.h)('br', null),\n this.renderModuleSize(module, 'stat'),\n !module.inaccurateSizes && this.renderModuleSize(module, 'parsed'),\n !module.inaccurateSizes && this.renderModuleSize(module, 'gzip'),\n module.path && (0, _preact.h)(\n 'div',\n null,\n 'Path: ',\n (0, _preact.h)(\n 'strong',\n null,\n module.path\n )\n )\n );\n }\n }, {\n key: 'totalChunksSize',\n get: function get() {\n var sizeProp = this.state.activeSizeItem.prop;\n return this.props.data.reduce(function (totalSize, chunk) {\n return totalSize + chunk[sizeProp];\n }, 0);\n }\n }]);\n\n return ModulesTreemap;\n}(_preact.Component);\n\nexports.default = ModulesTreemap;\n\n/***/ }),\n/* 9 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function(global) {\n\n/**\n * filesize\n *\n * @copyright 2017 Jason Mulligan <jason.mulligan@avoidwork.com>\n * @license BSD-3-Clause\n * @version 3.5.11\n */\n(function (global) {\n\tvar b = /^(b|B)$/,\n\t symbol = {\n\t\tiec: {\n\t\t\tbits: [\"b\", \"Kib\", \"Mib\", \"Gib\", \"Tib\", \"Pib\", \"Eib\", \"Zib\", \"Yib\"],\n\t\t\tbytes: [\"B\", \"KiB\", \"MiB\", \"GiB\", \"TiB\", \"PiB\", \"EiB\", \"ZiB\", \"YiB\"]\n\t\t},\n\t\tjedec: {\n\t\t\tbits: [\"b\", \"Kb\", \"Mb\", \"Gb\", \"Tb\", \"Pb\", \"Eb\", \"Zb\", \"Yb\"],\n\t\t\tbytes: [\"B\", \"KB\", \"MB\", \"GB\", \"TB\", \"PB\", \"EB\", \"ZB\", \"YB\"]\n\t\t}\n\t},\n\t fullform = {\n\t\tiec: [\"\", \"kibi\", \"mebi\", \"gibi\", \"tebi\", \"pebi\", \"exbi\", \"zebi\", \"yobi\"],\n\t\tjedec: [\"\", \"kilo\", \"mega\", \"giga\", \"tera\", \"peta\", \"exa\", \"zetta\", \"yotta\"]\n\t};\n\n\t/**\n * filesize\n *\n * @method filesize\n * @param {Mixed} arg String, Int or Float to transform\n * @param {Object} descriptor [Optional] Flags\n * @return {String} Readable file size String\n */\n\tfunction filesize(arg) {\n\t\tvar descriptor = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n\t\tvar result = [],\n\t\t val = 0,\n\t\t e = void 0,\n\t\t base = void 0,\n\t\t bits = void 0,\n\t\t ceil = void 0,\n\t\t full = void 0,\n\t\t fullforms = void 0,\n\t\t neg = void 0,\n\t\t num = void 0,\n\t\t output = void 0,\n\t\t round = void 0,\n\t\t unix = void 0,\n\t\t spacer = void 0,\n\t\t standard = void 0,\n\t\t symbols = void 0;\n\n\t\tif (isNaN(arg)) {\n\t\t\tthrow new Error(\"Invalid arguments\");\n\t\t}\n\n\t\tbits = descriptor.bits === true;\n\t\tunix = descriptor.unix === true;\n\t\tbase = descriptor.base || 2;\n\t\tround = descriptor.round !== undefined ? descriptor.round : unix ? 1 : 2;\n\t\tspacer = descriptor.spacer !== undefined ? descriptor.spacer : unix ? \"\" : \" \";\n\t\tsymbols = descriptor.symbols || descriptor.suffixes || {};\n\t\tstandard = base === 2 ? descriptor.standard || \"jedec\" : \"jedec\";\n\t\toutput = descriptor.output || \"string\";\n\t\tfull = descriptor.fullform === true;\n\t\tfullforms = descriptor.fullforms instanceof Array ? descriptor.fullforms : [];\n\t\te = descriptor.exponent !== undefined ? descriptor.exponent : -1;\n\t\tnum = Number(arg);\n\t\tneg = num < 0;\n\t\tceil = base > 2 ? 1000 : 1024;\n\n\t\t// Flipping a negative number to determine the size\n\t\tif (neg) {\n\t\t\tnum = -num;\n\t\t}\n\n\t\t// Determining the exponent\n\t\tif (e === -1 || isNaN(e)) {\n\t\t\te = Math.floor(Math.log(num) / Math.log(ceil));\n\n\t\t\tif (e < 0) {\n\t\t\t\te = 0;\n\t\t\t}\n\t\t}\n\n\t\t// Exceeding supported length, time to reduce & multiply\n\t\tif (e > 8) {\n\t\t\te = 8;\n\t\t}\n\n\t\t// Zero is now a special case because bytes divide by 1\n\t\tif (num === 0) {\n\t\t\tresult[0] = 0;\n\t\t\tresult[1] = unix ? \"\" : symbol[standard][bits ? \"bits\" : \"bytes\"][e];\n\t\t} else {\n\t\t\tval = num / (base === 2 ? Math.pow(2, e * 10) : Math.pow(1000, e));\n\n\t\t\tif (bits) {\n\t\t\t\tval = val * 8;\n\n\t\t\t\tif (val >= ceil && e < 8) {\n\t\t\t\t\tval = val / ceil;\n\t\t\t\t\te++;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tresult[0] = Number(val.toFixed(e > 0 ? round : 0));\n\t\t\tresult[1] = base === 10 && e === 1 ? bits ? \"kb\" : \"kB\" : symbol[standard][bits ? \"bits\" : \"bytes\"][e];\n\n\t\t\tif (unix) {\n\t\t\t\tresult[1] = standard === \"jedec\" ? result[1].charAt(0) : e > 0 ? result[1].replace(/B$/, \"\") : result[1];\n\n\t\t\t\tif (b.test(result[1])) {\n\t\t\t\t\tresult[0] = Math.floor(result[0]);\n\t\t\t\t\tresult[1] = \"\";\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Decorating a 'diff'\n\t\tif (neg) {\n\t\t\tresult[0] = -result[0];\n\t\t}\n\n\t\t// Applying custom symbol\n\t\tresult[1] = symbols[result[1]] || result[1];\n\n\t\t// Returning Array, Object, or String (default)\n\t\tif (output === \"array\") {\n\t\t\treturn result;\n\t\t}\n\n\t\tif (output === \"exponent\") {\n\t\t\treturn e;\n\t\t}\n\n\t\tif (output === \"object\") {\n\t\t\treturn { value: result[0], suffix: result[1], symbol: result[1] };\n\t\t}\n\n\t\tif (full) {\n\t\t\tresult[1] = fullforms[e] ? fullforms[e] : fullform[standard][e] + (bits ? \"bit\" : \"byte\") + (result[0] === 1 ? \"\" : \"s\");\n\t\t}\n\n\t\treturn result.join(spacer);\n\t}\n\n\t// Partial application for functional programming\n\tfilesize.partial = function (opt) {\n\t\treturn function (arg) {\n\t\t\treturn filesize(arg, opt);\n\t\t};\n\t};\n\n\t// CommonJS, AMD, script tag\n\tif (true) {\n\t\tmodule.exports = filesize;\n\t} else if (typeof define === \"function\" && define.amd) {\n\t\tdefine(function () {\n\t\t\treturn filesize;\n\t\t});\n\t} else {\n\t\tglobal.filesize = filesize;\n\t}\n})(typeof window !== \"undefined\" ? window : global);\n\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(10)))\n\n/***/ }),\n/* 10 */\n/***/ (function(module, exports) {\n\nvar g;\r\n\r\n// This works in non-strict mode\r\ng = (function() {\r\n\treturn this;\r\n})();\r\n\r\ntry {\r\n\t// This works if eval is allowed (see CSP)\r\n\tg = g || Function(\"return this\")() || (1,eval)(\"this\");\r\n} catch(e) {\r\n\t// This works if the window reference is available\r\n\tif(typeof window === \"object\")\r\n\t\tg = window;\r\n}\r\n\r\n// g can still be undefined, but nothing to do about it...\r\n// We return undefined, instead of nothing here, so it's\r\n// easier to handle this case. if(!global) { ...}\r\n\r\nmodule.exports = g;\r\n\n\n/***/ }),\n/* 11 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _preact = __webpack_require__(0);\n\nvar _carrotsearch = __webpack_require__(12);\n\nvar _carrotsearch2 = _interopRequireDefault(_carrotsearch);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } /** @jsx h */\n\n\nvar Treemap = function (_Component) {\n _inherits(Treemap, _Component);\n\n function Treemap(props) {\n _classCallCheck(this, Treemap);\n\n var _this = _possibleConstructorReturn(this, (Treemap.__proto__ || Object.getPrototypeOf(Treemap)).call(this, props));\n\n _this.saveNode = function (node) {\n return _this.node = node;\n };\n\n _this.treemap = null;\n _this.zoomOutDisabled = false;\n return _this;\n }\n\n _createClass(Treemap, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n this.setWeightProp(this.props.weightProp);\n this.treemap = this.createTreemap();\n window.addEventListener('resize', this.treemap.resize, false);\n }\n }, {\n key: 'componentWillReceiveProps',\n value: function componentWillReceiveProps(nextProps) {\n if (nextProps.data !== this.props.data) {\n this.setWeightProp(nextProps.weightProp, nextProps.data);\n this.treemap.set({\n dataObject: { groups: nextProps.data }\n });\n } else if (nextProps.weightProp !== this.props.weightProp) {\n this.setWeightProp(nextProps.weightProp);\n this.update();\n }\n }\n }, {\n key: 'shouldComponentUpdate',\n value: function shouldComponentUpdate() {\n return false;\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n window.removeEventListener('resize', this.treemap.resize);\n this.treemap.dispose();\n }\n }, {\n key: 'render',\n value: function render() {\n return (0, _preact.h)('div', _extends({}, this.props, { ref: this.saveNode }));\n }\n }, {\n key: 'createTreemap',\n value: function createTreemap() {\n var component = this;\n var props = this.props;\n\n var zoomOutDisabled = false;\n\n return new _carrotsearch2.default({\n element: this.node,\n layout: 'squarified',\n stacking: 'flattened',\n pixelRatio: window.devicePixelRatio || 1,\n maxGroupLevelsDrawn: Number.MAX_VALUE,\n maxGroupLabelLevelsDrawn: Number.MAX_VALUE,\n groupLabelVerticalPadding: 0.2,\n rolloutDuration: 0,\n pullbackDuration: 0,\n fadeDuration: 0,\n zoomMouseWheelDuration: 300,\n openCloseDuration: 200,\n dataObject: {\n groups: this.props.data\n },\n titleBarDecorator: function titleBarDecorator(opts, props, vars) {\n vars.titleBarShown = false;\n },\n onGroupClick: function onGroupClick(event) {\n preventDefault(event);\n zoomOutDisabled = false;\n this.zoom(event.group);\n },\n\n onGroupDoubleClick: preventDefault,\n onGroupHover: function onGroupHover(event) {\n // Ignoring hovering on `FoamTree` branding group\n if (event.group && event.group.attribution) {\n event.preventDefault();\n return;\n }\n\n if (props.onGroupHover) {\n props.onGroupHover.call(component, event);\n }\n },\n onGroupMouseWheel: function onGroupMouseWheel(event) {\n var isZoomOut = event.delta < 0;\n\n if (isZoomOut) {\n if (zoomOutDisabled) return preventDefault(event);\n if (this.get('viewport').scale < 1) {\n zoomOutDisabled = true;\n preventDefault(event);\n }\n } else {\n zoomOutDisabled = false;\n }\n }\n });\n }\n }, {\n key: 'update',\n value: function update() {\n this.treemap.update();\n }\n }, {\n key: 'setWeightProp',\n value: function setWeightProp(prop, data) {\n data = data || this.props.data;\n\n data.forEach(setProp);\n\n function setProp(group) {\n group.weight = group[prop];\n\n if (group.groups) {\n group.groups.forEach(setProp);\n }\n }\n }\n }]);\n\n return Treemap;\n}(_preact.Component);\n\nexports.default = Treemap;\n\n\nfunction preventDefault(event) {\n event.preventDefault();\n}\n\n/***/ }),\n/* 12 */\n/***/ (function(module, exports) {\n\n/**\n * Carrot Search FoamTree HTML5 (demo variant)\n * v3.4.4, 36955f78f6b79223438db3b18b9b64b5aad799bb/36955f78, build FOAMTREE-SOFTWARE4-DIST-26, Sep 23, 2016\n * \n * Carrot Search confidential.\n * Copyright 2002-2016, Carrot Search s.c, All Rights Reserved.\n */\n(function() {var v=function(){var a=window.navigator.userAgent,m;try{window.localStorage.setItem(\"ftap5caavc\",\"ftap5caavc\"),window.localStorage.removeItem(\"ftap5caavc\"),m=!0}catch(k){m=!1}return{pf:function(){return/webkit/i.test(a)},nf:function(){return/Mac/.test(a)},mf:function(){return/iPad|iPod|iPhone/.test(a)},jf:function(){return/Android/.test(a)},ii:function(){return\"ontouchstart\"in window||!!window.DocumentTouch&&document instanceof window.DocumentTouch},hi:function(){return m},gi:function(){var a=document.createElement(\"canvas\");\nreturn!(!a.getContext||!a.getContext(\"2d\"))},Cd:function(a,d){return[].forEach&&v.gi()?a&&a():d&&d()}}}();var aa=function(){function a(){return window.performance&&(window.performance.now||window.performance.mozNow||window.performance.msNow||window.performance.oNow||window.performance.webkitNow)||Date.now}var m=a();return{create:function(){return{now:function(){var k=a();return function(){return k.call(window.performance)}}()}},now:function(){return m.call(window.performance)}}}();function ba(){function a(){if(!c)throw\"AF0\";var a=aa.now();0!==g&&(k.Jd=a-g);g=a;d=d.filter(function(a){return null!==a});k.frames++;for(var e=0;e<d.length;e++){var b=d[e];null!==b&&(!0===b.ze.call(b.Yg)?d[e]=null:D.Rc(b.repeat)&&(b.repeat=b.repeat-1,0>=b.repeat&&(d[e]=null)))}d=d.filter(function(a){return null!==a});c=!1;m();a=aa.now()-a;0!==a&&(k.Id=a);k.totalTime+=a;k.Pe=1E3*k.frames/k.totalTime;g=0===d.length?0:aa.now()}function m(){0<d.length&&!c&&(c=!0,f(a))}var k=this.rg={frames:0,totalTime:0,\nId:0,Jd:0,Pe:0};da=k;var f=function(){return v.mf()?function(a){window.setTimeout(a,0)}:window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(){var a=aa.create();return function(e){var b=0;window.setTimeout(function(){var d=a.now();e();b=a.now()-d},16>b?16-b:0)}}()}(),d=[],c=!1,g=0;this.repeat=function(a,e,b){this.cancel(a);d.push({ze:a,Yg:b,repeat:e});m()};this.d=function(a,e){this.repeat(a,\n1,e)};this.cancel=function(a){for(var e=0;e<d.length;e++){var b=d[e];null!==b&&b.ze===a&&(d[e]=null)}};this.k=function(){d=[]}}var da;var ea=v.Cd(function(){function a(){this.buffer=[];this.oa=0;this.Fc=D.extend({},g)}function m(a){return function(){var e,b=this.buffer,d=this.oa;b[d++]=\"call\";b[d++]=a;b[d++]=arguments.length;for(e=0;e<arguments.length;e++)b[d++]=arguments[e];this.oa=d}}function k(a){return function(){return d[a].apply(d,arguments)}}var f=document.createElement(\"canvas\");f.width=1;f.height=1;var d=f.getContext(\"2d\"),f=[\"font\"],c=\"fillStyle globalAlpha globalCompositeOperation lineCap lineDashOffset lineJoin lineWidth miterLimit shadowBlur shadowColor shadowOffsetX shadowOffsetY strokeStyle textAlign textBaseline\".split(\" \"),\ng={};c.concat(f).forEach(function(a){g[a]=d[a]});a.prototype.clear=function(){this.oa=0};a.prototype.Na=function(){return 0===this.oa};a.prototype.Sa=function(a){function e(a,b,e){for(var d=0,c=a.oa,f=a.buffer;d<e;)f[c++]=b[d++];a.oa=c}function b(a,b,e,d){for(var c=0;c<e;)switch(b[c++]){case \"set\":a[b[c++]]=b[c++];break;case \"setGlobalAlpha\":a[b[c++]]=b[c++]*d;break;case \"call\":var f=b[c++];switch(b[c++]){case 0:a[f]();break;case 1:a[f](b[c++]);break;case 2:a[f](b[c++],b[c++]);break;case 3:a[f](b[c++],\nb[c++],b[c++]);break;case 4:a[f](b[c++],b[c++],b[c++],b[c++]);break;case 5:a[f](b[c++],b[c++],b[c++],b[c++],b[c++]);break;case 6:a[f](b[c++],b[c++],b[c++],b[c++],b[c++],b[c++]);break;case 7:a[f](b[c++],b[c++],b[c++],b[c++],b[c++],b[c++],b[c++]);break;case 8:a[f](b[c++],b[c++],b[c++],b[c++],b[c++],b[c++],b[c++],b[c++]);break;case 9:a[f](b[c++],b[c++],b[c++],b[c++],b[c++],b[c++],b[c++],b[c++],b[c++]);break;default:throw\"CB0\";}}}a instanceof ea?e(a,this.buffer,this.oa):b(a,this.buffer,this.oa,D.B(a.globalAlpha,\n1))};a.prototype.replay=a.prototype.Sa;a.prototype.d=function(){return new a};a.prototype.scratch=a.prototype.d;\"arc arcTo beginPath bezierCurveTo clearRect clip closePath drawImage fill fillRect fillText lineTo moveTo putImageData quadraticCurveTo rect rotate scale setLineDash setTransform stroke strokeRect strokeText transform translate\".split(\" \").forEach(function(c){a.prototype[c]=m(c)});[\"measureText\",\"createLinearGradient\",\"createRadialGradient\",\"createPattern\",\"getLineDash\"].forEach(function(c){a.prototype[c]=\nk(c)});[\"save\",\"restore\"].forEach(function(c){a.prototype[c]=function(a,b){return function(){a.apply(this,arguments);b.apply(this,arguments)}}(m(c),k(c))});f.forEach(function(c){Object.defineProperty(a.prototype,c,{set:function(a){d[c]=a;this.Fc[c]=a;var b=this.buffer;b[this.oa++]=\"set\";b[this.oa++]=c;b[this.oa++]=a},get:function(){return this.Fc[c]}})});c.forEach(function(c){Object.defineProperty(a.prototype,c,{set:function(a){this.Fc[c]=a;var b=this.buffer;b[this.oa++]=\"globalAlpha\"===c?\"setGlobalAlpha\":\n\"set\";b[this.oa++]=c;b[this.oa++]=a},get:function(){return this.Fc[c]}})});a.prototype.roundRect=function(a,c,b,d,f){this.beginPath();this.moveTo(a+f,c);this.lineTo(a+b-f,c);this.quadraticCurveTo(a+b,c,a+b,c+f);this.lineTo(a+b,c+d-f);this.quadraticCurveTo(a+b,c+d,a+b-f,c+d);this.lineTo(a+f,c+d);this.quadraticCurveTo(a,c+d,a,c+d-f);this.lineTo(a,c+f);this.quadraticCurveTo(a,c,a+f,c);this.closePath()};a.prototype.fillPolygonWithText=function(a,c,b,d,f){f||(f={});var k={rb:D.B(f.maxFontSize,G.Ea.rb),\nYc:D.B(f.minFontSize,G.Ea.Yc),lineHeight:D.B(f.lineHeight,G.Ea.lineHeight),ob:D.B(f.horizontalPadding,G.Ea.ob),eb:D.B(f.verticalPadding,G.Ea.eb),sb:D.B(f.maxTotalTextHeight,G.Ea.sb),fontFamily:D.B(f.fontFamily,G.Ea.fontFamily),fontStyle:D.B(f.fontStyle,G.Ea.fontStyle),fontVariant:D.B(f.fontVariant,G.Ea.fontVariant),fontWeight:D.B(f.fontWeight,G.Ea.fontWeight),verticalAlign:D.B(f.verticalAlign,G.Ea.verticalAlign)},g=f.cache;if(g&&D.Q(f,\"area\")){g.hd||(g.hd=new ea);var q=f.area,s=D.B(f.cacheInvalidationThreshold,\n0.05);a=G.ye(k,this,d,a,L.q(a,{}),{x:c,y:b},f.allowForcedSplit||!1,f.allowEllipsis||!1,g,q,s,f.invalidateCache)}else a=G.Me(k,this,d,a,L.q(a,{}),{x:c,y:b},f.allowForcedSplit||!1,f.allowEllipsis||!1);return a.la?{fit:!0,lineCount:a.mc,fontSize:a.fontSize,box:{x:a.da.x,y:a.da.y,w:a.da.f,h:a.da.i},ellipsis:a.ec}:{fit:!1}};return a});var ga=v.Cd(function(){function a(a){this.O=a;this.d=[];this.Hb=[void 0];this.Mc=[\"#SIZE#px sans-serif\"];this.Kd=[0];this.Ld=[1];this.ie=[0];this.je=[0];this.ke=[0];this.Qd=[10];this.hc=[10];this.Rb=[this.Hb,this.Mc,this.hc,this.Kd,this.Ld,this.ie,this.Qd,this.je,this.ke];this.ga=[1,0,0,1,0,0]}function m(a){var c=a.O,d=a.Rb[0].length-1;a.Hb[d]&&(c.setLineDash(a.Hb[d]),c.Sj=a.Kd[d]);c.miterLimit=a.Qd[d];c.lineWidth=a.Ld[d];c.shadowBlur=a.ie[d];c.shadowOffsetX=a.je[d];c.shadowOffsetY=a.ke[d];c.font=\na.Mc[d].replace(\"#SIZE#\",a.hc[d].toString())}function k(a){return function(){return this.O[a].apply(this.O,arguments)}}function f(a){return function(d,e){var f=this.ga;return this.O[a].call(this.O,c(d,e,f),g(d,e,f))}}function d(a){return function(d,e,f,k){var q=this.ga;return this.O[a].call(this.O,c(d,e,q),g(d,e,q),f*q[0],k*q[3])}}function c(a,c,d){return a*d[0]+c*d[2]+d[4]}function g(a,c,d){return a*d[1]+c*d[3]+d[5]}function l(a,c){for(var d=0;d<a.length;d++)a[d]*=c[0];return a}a.prototype.save=\nfunction(){this.d.push(this.ga.slice(0));for(var a=0;a<this.Rb.length;a++){var c=this.Rb[a];c.push(c[c.length-1])}this.O.save()};a.prototype.restore=function(){this.ga=this.d.pop();for(var a=0;a<this.Rb.length;a++)this.Rb[a].pop();this.O.restore();m(this)};a.prototype.scale=function(a,c){var d=this.ga;d[0]*=a;d[1]*=a;d[2]*=c;d[3]*=c;var d=this.ga,e=this.Rb,f=e[0].length-1,k=this.Hb[f];k&&l(k,d);for(k=2;k<e.length;k++){var g=e[k];g[f]*=d[0]}m(this)};a.prototype.translate=function(a,c){var d=this.ga;\nd[4]+=d[0]*a+d[2]*c;d[5]+=d[1]*a+d[3]*c};[\"moveTo\",\"lineTo\"].forEach(function(b){a.prototype[b]=f(b)});[\"clearRect\",\"fillRect\",\"strokeRect\",\"rect\"].forEach(function(b){a.prototype[b]=d(b)});\"fill stroke beginPath closePath clip createImageData createPattern getImageData putImageData getLineDash setLineDash\".split(\" \").forEach(function(b){a.prototype[b]=k(b)});[{ub:\"lineDashOffset\",yb:function(a){return a.Kd}},{ub:\"lineWidth\",yb:function(a){return a.Ld}},{ub:\"miterLimit\",yb:function(a){return a.Qd}},\n{ub:\"shadowBlur\",yb:function(a){return a.ie}},{ub:\"shadowOffsetX\",yb:function(a){return a.je}},{ub:\"shadowOffsetY\",yb:function(a){return a.ke}}].forEach(function(b){Object.defineProperty(a.prototype,b.ub,{set:function(a){var c=b.yb(this);a*=this.ga[0];c[c.length-1]=a;this.O[b.ub]=a}})});var e=/(\\d+(?:\\.\\d+)?)px/;Object.defineProperty(a.prototype,\"font\",{set:function(a){var c=e.exec(a);if(1<c.length){var d=this.hc.length-1;this.hc[d]=parseFloat(c[1]);this.Mc[d]=a.replace(e,\"#SIZE#px\");this.O.font=\nthis.Mc[d].replace(\"#SIZE#\",(this.hc[d]*this.ga[0]).toString())}}});\"fillStyle globalAlpha globalCompositeOperation lineCap lineJoin shadowColor strokeStyle textAlign textBaseline\".split(\" \").forEach(function(b){Object.defineProperty(a.prototype,b,{set:function(a){this.O[b]=a}})});a.prototype.arc=function(a,d,e,f,k,q){var s=this.ga;this.O.arc(c(a,d,s),g(a,d,s),e*s[0],f,k,q)};a.prototype.arcTo=function(a,d,e,f,k){var q=this.ga;this.O.arc(c(a,d,q),g(a,d,q),c(e,f,q),g(e,f,q),k*q[0])};a.prototype.bezierCurveTo=\nfunction(a,d,e,f,k,q){var s=this.ga;this.O.bezierCurveTo(c(a,d,s),g(a,d,s),c(e,f,s),g(e,f,s),c(k,q,s),g(k,q,s))};a.prototype.drawImage=function(a,d,e,f,k,q,s,l,m){function x(d,e,f,h){C.push(c(d,e,y));C.push(g(d,e,y));f=D.V(f)?a.width:f;h=D.V(h)?a.height:h;C.push(f*y[0]);C.push(h*y[3])}var y=this.ga,C=[a];D.V(q)?x(d,e,f,k):x(q,s,l,m);this.O.drawImage.apply(this.O,C)};a.prototype.quadraticCurveTo=function(a,d,e,f){var k=this.ga;this.O.quadraticCurveTo(c(a,d,k),g(a,d,k),c(e,f,k),g(e,f,k))};a.prototype.fillText=\nfunction(a,d,e,f){var k=this.ga;this.O.fillText(a,c(d,e,k),g(d,e,k),D.Rc(f)?f*k[0]:1E20)};a.prototype.setLineDash=function(a){a=l(a.slice(0),this.ga);this.Hb[this.Hb.length-1]=a;this.O.setLineDash(a)};return a});var ia=function(){var a=!v.pf()||v.mf()||v.jf()?1:7;return{eh:function(){function m(a){a.beginPath();ha.le(a,l)}var k=document.createElement(\"canvas\");k.width=800;k.height=600;var f=k.getContext(\"2d\"),d=k.width,k=k.height,c,g=0,l=[{x:0,y:100}];for(c=1;6>=c;c++)g=2*c*Math.PI/6,l.push({x:0+100*Math.sin(g),y:0+100*Math.cos(g)});c={polygonPlainFill:[m,function(a){a.fillStyle=\"rgb(255, 0, 0)\";a.fill()}],polygonPlainStroke:[m,function(a){a.strokeStyle=\"rgb(128, 0, 0)\";a.lineWidth=2;a.closePath();a.stroke()}],\npolygonGradientFill:[m,function(a){var b=a.createRadialGradient(0,0,10,0,0,60);b.addColorStop(0,\"rgb(255, 0, 0)\");b.addColorStop(1,\"rgb(255, 255, 0)\");a.fillStyle=b;a.fill()}],polygonGradientStroke:[m,function(a){var b=a.createLinearGradient(-100,-100,100,100);b.addColorStop(0,\"rgb(224, 0, 0)\");b.addColorStop(1,\"rgb(32, 0, 0)\");a.strokeStyle=b;a.lineWidth=2;a.closePath();a.stroke()}],polygonExposureShadow:[m,function(a){a.shadowBlur=50;a.shadowColor=\"rgba(0, 0, 0, 1)\";a.fillStyle=\"rgba(0, 0, 0, 1)\";\na.globalCompositeOperation=\"source-over\";a.fill();a.shadowBlur=0;a.shadowColor=\"transparent\";a.globalCompositeOperation=\"destination-out\";a.fill()}],labelPlainFill:[function(a){a.fillStyle=\"#000\";a.font=\"24px sans-serif\";a.textAlign=\"center\"},function(a){a.fillText(\"Some text\",0,-16);a.fillText(\"for testing purposes\",0,16)}]};var g=100/Object.keys(c).length,e=aa.now(),b={},h;for(h in c){var n=c[h],r=aa.now(),p,q=0;do{f.save();f.translate(Math.random()*d,Math.random()*k);p=3*Math.random()+0.5;f.scale(p,\np);for(p=0;p<n.length;p++)n[p](f);f.restore();q++;p=aa.now()}while(p-r<g);b[h]=a*(p-r)/q}b.total=aa.now()-e;return b}}}();var ha={le:function(a,m){var k=m[0];a.moveTo(k.x,k.y);for(var f=m.length-1;0<f;f--)k=m[f],a.lineTo(k.x,k.y)},qj:function(a,m,k,f){var d,c,g,l=[],e=0,b=m.length;for(g=0;g<b;g++)d=m[g],c=m[(g+1)%b],d=L.d(d,c),d=Math.sqrt(d),l.push(d),e+=d;k=f*(k+0.5*f*e/b);var h,n;f={};var e={},r={},p=0;for(g=0;g<b;g++)d=m[g],c=m[(g+1)%b],h=m[(g+2)%b],n=l[(g+1)%b],n=Math.min(0.5,k/n),L.Aa(1-n,c,h,e),L.Aa(n,c,h,r),p++,0==g&&(h=Math.min(0.5,k/l[0]),L.Aa(h,d,c,f),p++,a.moveTo(f.x,f.y)),a.quadraticCurveTo(c.x,c.y,e.x,e.y),\na.lineTo(r.x,r.y);return!0}};function ja(a){function m(a){h[a].style.opacity=r*n[a]}function k(a){a.width=Math.round(c*a.n);a.height=Math.round(g*a.n)}function f(){return/relative|absolute|fixed/.test(window.getComputedStyle(d,null).getPropertyValue(\"position\"))}var d,c,g,l,e,b=[],h={},n={},r=0;this.H=function(b){d=b;f()||(d.style.position=\"relative\");0!=d.clientWidth&&0!=d.clientHeight||na.Pa(\"element has zero dimensions: \"+d.clientWidth+\" x \"+d.clientHeight+\".\");d.innerHTML=\"\";c=d.clientWidth;g=d.clientHeight;l=0!==c?c:void 0;\ne=0!==g?g:void 0;\"embedded\"===d.getAttribute(\"data-foamtree\")&&na.Pa(\"visualization already embedded in the element.\");d.setAttribute(\"data-foamtree\",\"embedded\");a.c.p(\"stage:initialized\",this,d,c,g)};this.kb=function(){d.removeAttribute(\"data-foamtree\");b=[];h={};a.c.p(\"stage:disposed\",this,d)};this.k=function(){f()||(d.style.position=\"relative\");c=d.clientWidth;g=d.clientHeight;if(0!==c&&0!==g&&(c!==l||g!==e)){for(var h=b.length-1;0<=h;h--)k(b[h]);a.c.p(\"stage:resized\",l,e,c,g);l=c;e=g}};this.ej=\nfunction(a,b){a.n=b;k(a)};this.oc=function(c,e,f){var g=document.createElement(\"canvas\");g.setAttribute(\"style\",\"position: absolute; top: 0; bottom: 0; left: 0; right: 0; width: 100%; height: 100%; -webkit-touch-callout: none; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none;\");g.n=e;k(g);b.push(g);h[c]=g;n[c]=1;m(c);f||d.appendChild(g);a.c.p(\"stage:newLayer\",c,g);return g};this.kc=function(a,b){D.V(b)||(n[a]=b,m(a));return n[a]};this.d=function(a){D.V(a)||\n(r=a,D.Ga(h,function(a,b){m(b)}));return r}};function oa(a){function m(a,b,e){x=!0;r.x=0;r.y=0;p.x=0;p.y=0;d=h;c.x=n.x;c.y=n.y;b();g*=a;l=e?g/d:a;l=Math.max(0.25/d,l);return!0}function k(a,b){b.x=a.x/h+n.x;b.y=a.y/h+n.y;return b}function f(a,b,c,d,e,f,h,k,g){var s=(a-c)*(f-k)-(b-d)*(e-h);if(1E-5>Math.abs(s))return!1;g.x=((a*d-b*c)*(e-h)-(a-c)*(e*k-f*h))/s;g.y=((a*d-b*c)*(f-k)-(b-d)*(e*k-f*h))/s;return!0}var d=1,c={x:0,y:0},g=1,l=1,e=1,b={x:0,y:0},h=1,n={x:0,y:0},r={x:0,y:0},p={x:0,y:0},q,s,u={x:0,y:0,f:0,i:0},w={x:0,y:0,f:0,i:0,scale:1},x=!0;\na.c.j(\"stage:initialized\",function(a,b,c,d){q=c;s=d;u.x=0;u.y=0;u.f=c;u.i=d;w.x=0;w.y=0;w.f=c;w.i=d;w.scale=1});a.c.j(\"stage:resized\",function(a,d,e,f){function h(a){a.x*=g;a.y*=l}function k(a){h(a);a.f*=g;a.i*=l}q=e;s=f;var g=e/a,l=f/d;h(c);h(n);h(b);h(r);h(p);k(u);k(w)});this.Yb=function(a,d){return m(d,function(){k(a,b)},!0)};this.Y=function(a,d){if(1===Math.round(1E4*d)/1E4){var c=u.x-n.x,e=u.y-n.y;m(1,function(){},!0);return this.d(-c,-e)}return m(d,function(){for(var d=!1;!d;)var d=Math.random(),\nc=Math.random(),e=Math.random(),h=Math.random(),d=f(a.x+d*a.f,a.y+c*a.i,u.x+d*u.f,u.y+c*u.i,a.x+e*a.f,a.y+h*a.i,u.x+e*u.f,u.y+h*u.i,b)},!0)};this.sc=function(a,d){var c,e,k,g;c=a.f/a.i;e=q/s;c<e?(k=a.i*e,g=a.i,c=a.x-0.5*(k-a.f),e=a.y):c>e?(k=a.f,g=a.f*s/q,c=a.x,e=a.y-0.5*(g-a.i)):(c=a.x,e=a.y,k=a.f,g=a.i);c-=k*d;e-=g*d;k*=1+2*d;if(f(c,e,n.x,n.y,c+k,e,n.x+q/h,n.y,b))return m(q/h/k,D.ta,!1);x=!1;return this.d(h*(n.x-c),h*(n.y-e))};this.d=function(a,b){var c=Math.round(1E4*a)/1E4,d=Math.round(1E4*b)/\n1E4;p.x+=c/h;p.y+=d/h;return 0!==c||0!==d};this.reset=function(a){a&&this.content(0,0,q,s);return this.Y({x:u.x+n.x,y:u.y+n.y,f:u.f/h,i:u.i/h},e/g)};this.Pb=function(a){e=Math.min(1,Math.round(1E4*(a||g))/1E4)};this.k=function(){return n.x<u.x?(u.x-n.x)*h:n.x+q/h>u.x+u.f?-(n.x+q/h-u.x-u.f)*h:0};this.A=function(){return n.y<u.y?(u.y-n.y)*h:n.y+s/h>u.y+u.i?-(n.y+s/h-u.y-u.i)*h:0};this.update=function(a){var e=Math.abs(Math.log(l));6>e?e=2:(e/=4,e+=3*e*(1<l?a:1-a));e=1<l?Math.pow(a,e):1-Math.pow(1-a,\ne);e=(x?e:1)*(l-1)+1;h=d*e;n.x=b.x-(b.x-c.x)/e;n.y=b.y-(b.y-c.y)/e;n.x-=r.x*(1-a)+p.x*a;n.y-=r.y*(1-a)+p.y*a;1===a&&(r.x=p.x,r.y=p.y);w.x=n.x;w.y=n.y;w.f=q/h;w.i=s/h;w.scale=h};this.S=function(a){a.x=w.x;a.y=w.y;a.scale=w.scale;return a};this.absolute=function(a,b){return k(a,b||{})};this.md=function(a,b){var c=b||{};c.x=(a.x-n.x)*h;c.y=(a.y-n.y)*h;return c};this.Gc=function(a){return this.scale()<e/a};this.Rd=function(){return D.Ed(h,1)};this.scale=function(){return Math.round(1E4*h)/1E4};this.content=\nfunction(a,b,c,d){u.x=a;u.y=b;u.f=c;u.i=d};this.Ic=function(a,b){var c;for(c=a.length-1;0<=c;c--){var d=a[c];d.save();d.scale(h,h);d.translate(-n.x,-n.y)}b(w);for(c=a.length-1;0<=c;c--)d=a[c],d.restore()}};var T=new function(){function a(a){if(\"hsl\"==a.model||\"hsla\"==a.model)return a;var f=a.r/=255,d=a.g/=255,c=a.b/=255,g=Math.max(f,d,c),l=Math.min(f,d,c),e,b=(g+l)/2;if(g==l)e=l=0;else{var h=g-l,l=0.5<b?h/(2-g-l):h/(g+l);switch(g){case f:e=(d-c)/h+(d<c?6:0);break;case d:e=(c-f)/h+2;break;case c:e=(f-d)/h+4}e/=6}a.h=360*e;a.s=100*l;a.l=100*b;a.model=\"hsl\";return a}var m={h:0,s:0,l:0,a:1,model:\"hsla\"};this.Ba=function(k){return D.Sc(k)?a(T.Hg(k)):D.jc(k)?a(k):m};this.Hg=function(a){var f;return(f=/rgba\\(\\s*([^,\\s]+)\\s*,\\s*([^,\\s]+)\\s*,\\s*([^,\\s]+)\\s*,\\s*([^,\\s]+)\\s*\\)/.exec(a))&&\n5==f.length?{r:parseFloat(f[1]),g:parseFloat(f[2]),b:parseFloat(f[3]),a:parseFloat(f[4]),model:\"rgba\"}:(f=/hsla\\(\\s*([^,\\s]+)\\s*,\\s*([^,%\\s]+)%\\s*,\\s*([^,\\s%]+)%\\s*,\\s*([^,\\s]+)\\s*\\)/.exec(a))&&5==f.length?{h:parseFloat(f[1]),s:parseFloat(f[2]),l:parseFloat(f[3]),a:parseFloat(f[4]),model:\"hsla\"}:(f=/rgb\\(\\s*([^,\\s]+)\\s*,\\s*([^,\\s]+)\\s*,\\s*([^,\\s]+)\\s*\\)/.exec(a))&&4==f.length?{r:parseFloat(f[1]),g:parseFloat(f[2]),b:parseFloat(f[3]),a:1,model:\"rgb\"}:(f=/hsl\\(\\s*([^,\\s]+)\\s*,\\s*([^,\\s%]+)%\\s*,\\s*([^,\\s%]+)%\\s*\\)/.exec(a))&&\n4==f.length?{h:parseFloat(f[1]),s:parseFloat(f[2]),l:parseFloat(f[3]),a:1,model:\"hsl\"}:(f=/#([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})/.exec(a))&&4==f.length?{r:parseInt(f[1],16),g:parseInt(f[2],16),b:parseInt(f[3],16),a:1,model:\"rgb\"}:(f=/#([0-9a-fA-F])([0-9a-fA-F])([0-9a-fA-F])/.exec(a))&&4==f.length?{r:17*parseInt(f[1],16),g:17*parseInt(f[2],16),b:17*parseInt(f[3],16),a:1,model:\"rgb\"}:m};this.Cg=function(a){function f(a,b,c){0>c&&(c+=1);1<c&&(c-=1);return c<1/6?a+6*(b-a)*c:0.5>c?b:c<2/3?\na+(b-a)*(2/3-c)*6:a}if(\"rgb\"==a.model||\"rgba\"==a.model)return Math.sqrt(a.r*a.r*0.241+a.g*a.g*0.691+a.b*a.b*0.068)/255;var d,c;d=a.l/100;var g=a.s/100;c=a.h/360;if(0==a.Vj)d=a=c=d;else{var g=0.5>d?d*(1+g):d+g-d*g,l=2*d-g;d=f(l,g,c+1/3);a=f(l,g,c);c=f(l,g,c-1/3)}return Math.sqrt(65025*d*d*0.241+65025*a*a*0.691+65025*c*c*0.068)/255};this.Ng=function(a){if(D.Sc(a))return a;if(D.jc(a))switch(a.model){case \"hsla\":return T.Ig(a);case \"hsl\":return T.Ac(a);case \"rgba\":return T.Lg(a);case \"rgb\":return T.Kg(a);\ndefault:return\"#000\"}else return\"#000\"};this.Lg=function(a){return\"rgba(\"+(0.5+a.r|0)+\",\"+(0.5+a.g|0)+\",\"+(0.5+a.b|0)+\",\"+a.a+\")\"};this.Kg=function(a){return\"rgba(\"+(0.5+a.r|0)+\",\"+(0.5+a.g|0)+\",\"+(0.5+a.b|0)+\")\"};this.Ig=function(a){return\"hsla(\"+(0.5+a.h|0)+\",\"+(0.5+a.s|0)+\"%,\"+(0.5+a.l|0)+\"%,\"+a.a+\")\"};this.Ac=function(a){return\"hsl(\"+(0.5+a.h|0)+\",\"+(0.5+a.s|0)+\"%,\"+(0.5+a.l|0)+\"%)\"};this.Y=function(a,f,d){return\"hsl(\"+(0.5+a|0)+\",\"+(0.5+f|0)+\"%,\"+(0.5+d|0)+\"%)\"}};function V(){var a=!1,m,k=[],f=this,d=new function(){this.N=function(c){c&&(a?c.apply(f,m):k.push(c));return this};this.ih=function(a){f=a;return{then:this.N}}};this.J=function(){m=arguments;for(var c=0;c<k.length;c++)k[c].apply(f,m);a=!0;return this};this.L=function(){return d}}function pa(a){var m=new V,k=a.length;if(0<a.length)for(var f=a.length-1;0<=f;f--)a[f].N(function(){0===--k&&m.J()});else m.J();return m.L()}\nfunction qa(a){var m=0;this.d=function(){m++};this.k=function(){m--;0===m&&a()};this.clear=function(){m=0};this.A=function(){return 0===m}};var ra={Je:function(a,m,k,f){f=f||{};a=a.getBoundingClientRect();f.x=m-a.left;f.y=k-a.top;return f}};function sa(){var a=document,m={};this.addEventListener=function(k,f){var d=m[k];d||(d=[],m[k]=d);d.push(f);a.addEventListener(k,f)};this.d=function(){D.Ga(m,function(k,f){for(var d=k.length-1;0<=d;d--)a.removeEventListener(f,k[d])})}};function ta(a){function m(a){return function(b){k(b)&&a.apply(this,arguments)}}function k(b){for(b=b.target;b;){if(b===a)return!0;b=b.parentElement}return!1}function f(a,b,c){c=c||{};d(a,c);for(var e=0;e<b.length;e++)b[e].call(a.target,c);(void 0===c.Lb&&c.yi||\"prevent\"===c.Lb)&&a.preventDefault();return c}function d(b,c){ra.Je(a,b.clientX,b.clientY,c);c.altKey=b.altKey;c.metaKey=b.metaKey;c.ctrlKey=b.ctrlKey;c.shiftKey=b.shiftKey;c.wb=3===b.which;return c}var c=new sa,g=[],l=[],e=[],b=[],h=[],n=\n[],r=[],p=[],q=[],s=[],u=[];this.d=function(a){g.push(a)};this.k=function(a){h.push(a)};this.ya=function(a){l.push(a)};this.Ba=function(a){e.push(a)};this.Pa=function(a){b.push(a)};this.Aa=function(a){u.push(a)};this.za=function(a){n.push(a)};this.Ja=function(a){r.push(a)};this.Y=function(a){p.push(a)};this.A=function(a){q.push(a)};this.S=function(a){s.push(a)};this.kb=function(){c.d()};var w,x,y,C,B={x:0,y:0},K={x:0,y:0},A=!1,I=!1;c.addEventListener(\"mousedown\",m(function(b){if(b.target!==a){var c=\nf(b,e);K.x=c.x;K.y=c.y;B.x=c.x;B.y=c.y;A=!0;f(b,p);x=!1;w=window.setTimeout(function(){100>L.d(B,c)&&(window.clearTimeout(C),f(b,l),x=!0)},400)}}));c.addEventListener(\"mouseup\",function(a){function c(a){var b={};b.x=a.pageX;b.y=a.pageY;return b}f(a,b);if(A){I&&f(a,s);window.clearTimeout(w);if(!x&&!I&&k(a)){var d=c(a);y&&100>L.d(d,y)?f(a,h):f(a,g);y=d;C=window.setTimeout(function(){y=null},350)}I=A=!1}});c.addEventListener(\"mousemove\",function(a){var b=d(a,{});k(a)&&f(a,n,{type:\"move\"});B.x=b.x;B.y=\nb.y;A&&!I&&100<L.d(K,B)&&(I=!0);I&&f(a,q,b)});c.addEventListener(\"mouseout\",m(function(a){f(a,r,{type:\"out\"})}));c.addEventListener(void 0!==document.onmousewheel?\"mousewheel\":\"MozMousePixelScroll\",m(function(a){var b=a.wheelDelta,c=a.detail;f(a,u,{vd:(c?b?0<b/c/40*c?1:-1:-c/(v.nf()?40:19):b/40)/3,yi:!0})}));c.addEventListener(\"contextmenu\",m(function(a){a.preventDefault()}))};var X=function(){function a(a){return function(c){return Math.pow(c,a)}}function m(a){return function(c){return 1-Math.pow(1-c,a)}}function k(a){return function(c){return 1>(c*=2)?0.5*Math.pow(c,a):1-0.5*Math.abs(Math.pow(2-c,a))}}function f(a){return function(c){for(var f=0;f<a.length;f++)c=(0,a[f])(c);return c}}return{pa:function(a){switch(a){case \"linear\":return X.Ib;case \"bounce\":return X.Vg;case \"squareIn\":return X.og;case \"squareOut\":return X.Qb;case \"squareInOut\":return X.pg;case \"cubicIn\":return X.Zg;\ncase \"cubicOut\":return X.Ae;case \"cubicInOut\":return X.$g;case \"quadIn\":return X.Qi;case \"quadOut\":return X.Si;case \"quadInOut\":return X.Ri;default:return X.Ib}},Ib:function(a){return a},Vg:f([k(2),function(a){return 0===a?0:1===a?1:a*(a*(a*(a*(25.9425*a-85.88)+105.78)-58.69)+13.8475)}]),og:a(2),Qb:m(2),pg:k(2),Zg:a(3),Ae:m(3),$g:k(3),Qi:a(2),Si:m(2),Ri:k(2),d:f}}();var D={V:function(a){return void 0===a},of:function(a){return null===a},Rc:function(a){return\"[object Number]\"===Object.prototype.toString.call(a)},Sc:function(a){return\"[object String]\"===Object.prototype.toString.call(a)},Fd:function(a){return\"function\"===typeof a},jc:function(a){return a===Object(a)},Ed:function(a,m){return 1E-6>a-m&&-1E-6<a-m},kf:function(a){return D.V(a)||D.of(a)||D.Sc(a)&&!/\\S/.test(a)},Q:function(a,m){return a&&a.hasOwnProperty(m)},nb:function(a,m){if(a)for(var k=m.length-\n1;0<=k;k--)if(a.hasOwnProperty(m[k]))return!0;return!1},extend:function(a){D.dh(Array.prototype.slice.call(arguments,1),function(m){if(m)for(var k in m)m.hasOwnProperty(k)&&(a[k]=m[k])});return a},A:function(a,m){return a.map(function(a){return a[m]},[])},dh:function(a,m,k){null!=a&&(a.forEach?a.forEach(m,k):D.Ga(a,m,k))},Ga:function(a,m,k){for(var f in a)if(a.hasOwnProperty(f)&&!1===m.call(k,a[f],f,a))break},B:function(){for(var a=0;a<arguments.length;a++){var m=arguments[a];if(!(D.V(m)||D.Rc(m)&&\nisNaN(m)||D.Sc(m)&&D.kf(m)))return m}},cg:function(a,m){var k=a.indexOf(m);0<=k&&a.splice(k,1)},ah:function(a,m,k){var f;return function(){var d=this,c=arguments,g=k&&!f;clearTimeout(f);f=setTimeout(function(){f=null;k||a.apply(d,c)},m);g&&a.apply(d,c)}},defer:function(a){setTimeout(a,1)},k:function(a){return a},ta:function(){}};var ua={ji:function(a,m,k){return v.hi()?function(){var f=m+\":\"+JSON.stringify(arguments),d=window.localStorage.getItem(f);d&&(d=JSON.parse(d));if(d&&Date.now()-d.t<k)return d.v;d=a.apply(this,arguments);window.localStorage.setItem(f,JSON.stringify({v:d,t:Date.now()}));return d}:a}};var va={m:function(a,m){function k(){var f=[];if(Array.isArray(a))for(var d=0;d<a.length;d++){var c=a[d];c&&f.push(c.apply(m,arguments))}else a&&f.push(a.apply(m,arguments));return f}k.empty=function(){return 0===a.length&&!D.Fd(a)};return k}};function wa(){var a={};this.j=function(m,k){var f=a[m];f||(f=[],a[m]=f);f.push(k)};this.p=function(m,k){var f=a[m];if(f)for(var d=Array.prototype.slice.call(arguments,1),c=0;c<f.length;c++)f[c].apply(this,d)}};var xa={kg:function(a){for(var m=\"\",k=0;k<a.length;k++)m+=String.fromCharCode(a.charCodeAt(k)^1);return m}};function ya(a){function m(b,d,k){var m=this,p,q=0;this.id=g++;this.name=k?k:\"{unnamed on \"+b+\"}\";this.target=function(){return b};this.Fb=function(){return-1!=e.indexOf(m)};this.start=function(){if(!m.Fb()){if(-1==e.indexOf(m)){var b=l.now();!0===m.xf(b)&&(e=e.slice(),e.push(m))}0<e.length&&a.repeat(f)}return this};this.stop=function(){for(c(m);p<d.length;p++){var a=d[p];a.ib&&a.Xa.call()}return this};this.eg=function(){p=void 0};this.xf=function(a){q++;if(0!==d.length){var b;D.V(p)?(p=0,b=d[p],b.W&&\nb.W.call(b,a,q,m)):b=d[p];for(;p<d.length;){if(b.Xa&&b.Xa.call(b,a,q,m))return!0;b.Da&&b.Da.call(b,a,q,m);D.V(p)&&(p=-1);++p<d.length&&(b=d[p],b.W&&b.W.call(b,a,q,m))}}return!1}}function k(a){return D.V(a)?e.slice():e.filter(function(c){return c.target()===a})}function f(){d();0==e.length&&a.cancel(f)}function d(){var a=l.now();e.forEach(function(d){!0!==d.xf(a)&&c(d)})}function c(a){e=e.filter(function(c){return c!==a})}var g=0,l=aa.create(),e=[];this.d=function(){for(var a=e.length-1;0<=a;a--)e[a].stop();\ne=[]};this.D=function(){function a(){}function c(a){var b=a.target,d=a.duration,e=a.ca,f,h;this.W=function(){f={};for(var c in a.G)b.hasOwnProperty(c)&&(f[c]={start:D.V(a.G[c].start)?b[c]:D.Fd(a.G[c].start)?a.G[c].start.call(void 0):a.G[c].start,end:D.V(a.G[c].end)?b[c]:D.Fd(a.G[c].end)?a.G[c].end.call(void 0):a.G[c].end,P:D.V(a.G[c].P)?X.Ib:a.G[c].P});h=l.now()};this.Xa=function(){var a=l.now()-h,a=0===d?1:Math.min(d,a)/d,c;for(c in f){var g=f[c];b[c]=g.start+(g.end-g.start)*g.P(a)}e&&e.call(b,a);\nreturn 1>a}}function d(a,b,c){this.ib=c;this.Xa=function(){a.call(b);return!1}}function e(a){var b;this.W=function(c,d){b=d+a};this.Xa=function(a,c){return c<b}}function f(a){var b;this.W=function(c){b=c+a};this.Xa=function(a){return a<b}}function g(a){this.W=function(){a.forEach(function(a){a.start()})};this.Xa=function(){for(var b=0;b<a.length;b++)if(a[b].Fb())return!0;return!1}}a.m=function(a,b){return new function(){function k(b,c,e,f){return c?(D.V(e)&&(e=a),b.Ab(new d(c,e,f))):b}var l=[];this.Ab=\nfunction(a){l.push(a);return this};this.fb=function(a){return this.Ab(new f(a))};this.oe=function(a){return this.Ab(new e(a||1))};this.call=function(a,b){return k(this,a,b,!1)};this.ib=function(a,b){return k(this,a,b,!0)};this.ia=function(b){D.V(b.target)&&(b.target=a);return this.Ab(new c(b))};this.Ya=function(a){return this.Ab(new g(a))};this.eg=function(){return this.Ab({Xa:function(a,b){b.eg();return!0}})};this.xa=function(){return new m(a,l,b)};this.start=function(){return this.xa().start()};\nthis.Fg=function(){var a=new V;this.oe().call(a.J).xa();return a.L()};this.bb=function(){var a=this.Fg();this.start();return a}}};a.tc=function(c){k(c).forEach(function(a){a.stop()});return a.m(c,void 0)};return a}()};var Y=function(){var a={Ie:function(a,k){if(a.e)for(var f=a.e,d=0;d<f.length;d++)k(f[d],d)},Jc:function(m,k){if(m.e)for(var f=m.e,d=0;d<f.length;d++)if(!1===a.Jc(f[d],k)||!1===k(f[d],d))return!1}};a.F=a.Jc;a.Kc=function(m,k){if(m.e)for(var f=m.e,d=0;d<f.length;d++)if(!1===k(f[d],d)||!1===a.Kc(f[d],k))return!1};a.Fa=function(m,k){if(m.e)for(var f=m.e,d=0;d<f.length;d++)if(!1===a.Fa(f[d],k))return!1;return k(m)};a.Mj=a.Fa;a.wd=function(m,k){!1!==k(m)&&a.Kc(m,k)};a.Lc=function(m,k){var f=[];a.Kc(m,function(a){f.push(a)});\nreturn k?f.filter(k):f};a.He=function(a,k){for(var f=a.parent;f&&!1!==k(f);)f=f.parent};a.ki=function(a,k){for(var f=a.parent;f&&f!==k;)f=f.parent;return!!f};return a}();var L=new function(){function a(a,f){var d=a.x-f.x,c=a.y-f.y;return d*d+c*c}function m(a,f,d){for(var c=0;c<a.length;c++){var g=L.za(a[c],a[c+1]||a[0],f,d,!0);if(g)return g}}this.za=function(a,f,d,c,g){var l=a.x;a=a.y;var e=f.x-l;f=f.y-a;var b=d.x,h=d.y;d=c.x-b;var n=c.y-h;c=e*n-d*f;if(!(1E-12>=c&&-1E-12<=c)&&(b=b-l,h=h-a,d=(b*n-d*h)/c,c=(b*f-e*h)/c,0<=c&&(g||1>=c)&&0<=d&&1>=d))return{x:l+e*d,y:a+f*d}};this.Jg=function(a,f,d,c){var g=a.x;a=a.y;var l=f.x-g;f=f.y-a;var e=d.x;d=d.y;var b=c.x-e;c=c.y-\nd;var h=l*c-b*f;if(!(1E-12>=h&&-1E-12<=h)&&(c=((e-g)*c-b*(d-a))/h,0<=c&&1>=c))return{x:g+l*c,y:a+f*c}};this.qe=function(a,f,d){for(var c=L.k(f,{}),g=L.k(d,{}),l,e=g.x-c.x,b=g.y-c.y,h=[],g=0;g<d.length;g++)l=d[g],h.push({x:l.x-e,y:l.y-b});d=[];l=[];for(g=0;g<a.length;g++){var n=a[g],r=m(f,c,n);r?(d.push(r),l.push(m(h,c,n))):(d.push(null),l.push(null))}for(g=0;g<a.length;g++)if(r=d[g],n=l[g],r&&n){f=a[g];var h=c,p=r.x-c.x,r=r.y-c.y,r=Math.sqrt(p*p+r*r);if(1E-12<r){var p=f.x-c.x,q=f.y-c.y,r=Math.sqrt(p*\np+q*q)/r;f.x=h.x+r*(n.x-h.x);f.y=h.y+r*(n.y-h.y)}else f.x=h.x,f.y=h.y}for(g=0;g<a.length;g++)l=a[g],l.x+=e,l.y+=b};this.q=function(a,f){if(0!==a.length){var d,c,g,l;d=c=a[0].x;g=l=a[0].y;for(var e=a.length;0<--e;)d=Math.min(d,a[e].x),c=Math.max(c,a[e].x),g=Math.min(g,a[e].y),l=Math.max(l,a[e].y);f.x=d;f.y=g;f.f=c-d;f.i=l-g;return f}};this.A=function(a){return[{x:a.x,y:a.y},{x:a.x+a.f,y:a.y},{x:a.x+a.f,y:a.y+a.i},{x:a.x,y:a.y+a.i}]};this.k=function(a,f){for(var d=0,c=0,g=a.length,l=a[0],e=0,b=1;b<\ng-1;b++)var h=a[b],n=a[b+1],m=l.y+h.y+n.y,p=(h.x-l.x)*(n.y-l.y)-(n.x-l.x)*(h.y-l.y),d=d+p*(l.x+h.x+n.x),c=c+p*m,e=e+p;f.x=d/(3*e);f.y=c/(3*e);f.ja=e/2;return f};this.se=function(a,f){this.k(a,f);f.Nb=Math.sqrt(f.ja/Math.PI)};this.Ta=function(a,f){for(var d=0;d<a.length;d++){var c=a[d],g=a[d+1]||a[0];if(0>(f.y-c.y)*(g.x-c.x)-(f.x-c.x)*(g.y-c.y))return!1}return!0};this.Mg=function(a,f,d){var c=a.x,g=f.x;a.x>f.x&&(c=f.x,g=a.x);g>d.x+d.f&&(g=d.x+d.f);c<d.x&&(c=d.x);if(c>g)return!1;var l=a.y,e=f.y,b=f.x-\na.x;1E-7<Math.abs(b)&&(e=(f.y-a.y)/b,a=a.y-e*a.x,l=e*c+a,e=e*g+a);l>e&&(c=e,e=l,l=c);e>d.y+d.i&&(e=d.y+d.i);l<d.y&&(l=d.y);return l<=e};this.te=function(k,f,d,c,g){var l,e;function b(b,c,d){if(f.x===n.x&&f.y===n.y)return d;var g=m(k,f,n),p=Math.sqrt(a(g,f)/(b*b+c*c));return p<h?(h=p,l=g.x,e=g.y,0!==c?Math.abs(e-f.y)/Math.abs(c):Math.abs(l-f.x)/Math.abs(b)):d}c=D.B(c,0.5);g=D.B(g,0.5);d=D.B(d,1);var h=Number.MAX_VALUE;e=l=0;var n={x:0,y:0},r,p=c*d;d=(1-c)*d;c=1-g;n.x=f.x-p;n.y=f.y-g;r=b(p,g,r);n.x=\nf.x+d;n.y=f.y-g;r=b(d,g,r);n.x=f.x-p;n.y=f.y+c;r=b(p,c,r);n.x=f.x+d;n.y=f.y+c;return r=b(d,c,r)};this.Eg=function(a,f){function d(a,c,d){var e=c.x,f=d.x;c=c.y;d=d.y;var g=f-e,k=d-c;return Math.abs(k*a.x-g*a.y-e*d+f*c)/Math.sqrt(g*g+k*k)}for(var c=a.length,g=d(f,a[c-1],a[0]),l=0;l<c-1;l++){var e=d(f,a[l],a[l+1]);e<g&&(g=e)}return g};this.Wb=function(a,f,d){var c;d={x:f.x+Math.cos(d),y:f.y-Math.sin(d)};var g=[],l=[],e=a.length;for(c=0;c<e;c++){var b=L.Jg(a[c],a[(c+1)%e],f,d);if(b&&(g.push(b),2==l.push(c)))break}if(2==\ng.length){var b=g[0],g=g[1],h=l[0],l=l[1],n=[g,b];for(c=h+1;c<=l;c++)n.push(a[c]);for(c=[b,g];l!=h;)l=(l+1)%e,c.push(a[l]);a=[n,c];e=d.x-f.x;c=g.x-b.x;0===e&&(e=d.y-f.y,c=g.y-b.y);(0>e?-1:0<e?1:0)!==(0>c?-1:0<c?1:0)&&a.reverse();return a}};this.Aa=function(a,f,d,c){c.x=a*(f.x-d.x)+d.x;c.y=a*(f.y-d.y)+d.y;return c};this.d=a;this.re=function(a,f,d){if(D.Rc(f))f=2*Math.PI*f/360;else{var c=L.q(a,{});switch(f){case \"random\":f=Math.random()*Math.PI*2;break;case \"top\":f=Math.atan2(-c.i,0);break;case \"bottom\":f=\nMath.atan2(c.i,0);break;case \"topleft\":f=Math.atan2(-c.i,-c.f);break;default:f=Math.atan2(c.i,c.f)}}c=L.k(a,{});return L.Aa(d,m(a,c,{x:c.x+Math.cos(f),y:c.y+Math.sin(f)}),c,{})};return this};var za=new function(){function a(a,d){this.face=a;this.jd=d;this.pc=this.cd=null}function m(a,d,f){this.ma=[a,d,f];this.C=Array(3);var e=d.y-a.y,b=f.z-a.z,h=d.x-a.x;d=d.z-a.z;var k=f.x-a.x;a=f.y-a.y;this.Oa={x:e*b-d*a,y:d*k-h*b,z:h*a-e*k};this.jb=[];this.sd=this.visible=!1}this.S=function(c){function f(b,c,d){var h,g,k=b.ma[0],l=b.Oa,q=l.x,s=l.y,l=l.z,m=Array(n);c=c.jb;h=c.length;for(e=0;e<h;e++)g=c[e].jd,m[g.index]=!0,0>q*(g.x-k.x)+s*(g.y-k.y)+l*(g.z-k.z)&&a.d(b,g);c=d.jb;h=c.length;for(e=0;e<h;e++)g=\nc[e].jd,!0!==m[g.index]&&0>q*(g.x-k.x)+s*(g.y-k.y)+l*(g.z-k.z)&&a.d(b,g)}var l,e,b,h,n=c.length;for(l=0;l<n;l++)c[l].index=l,c[l].$b=null;var r=[],p;if(0<(p=function(){function b(a,c,d,e){var f=(c.y-a.y)*(d.z-a.z)-(c.z-a.z)*(d.y-a.y),h=(c.z-a.z)*(d.x-a.x)-(c.x-a.x)*(d.z-a.z),g=(c.x-a.x)*(d.y-a.y)-(c.y-a.y)*(d.x-a.x);return f*e.x+h*e.y+g*e.z>f*a.x+h*a.y+g*a.z?new m(a,c,d):new m(d,c,a)}function d(a,b,c,e){function f(a,b,c){a=a.ma;b=a[0]==b?0:a[1]==b?1:2;return a[(b+1)%3]!=c?(b+2)%3:b}b.C[f(b,c,e)]=\na;a.C[f(a,e,c)]=b}if(4>n)return 0;var e=c[0],f=c[1],h=c[2],g=c[3],k=b(e,f,h,g),l=b(e,h,g,f),q=b(e,f,g,h),s=b(f,h,g,e);d(k,l,h,e);d(k,q,e,f);d(k,s,f,h);d(l,q,g,e);d(l,s,h,g);d(q,s,g,f);r.push(k,l,q,s);for(e=4;e<n;e++)for(f=c[e],h=0;4>h;h++)g=r[h],k=g.ma[0],l=g.Oa,0>l.x*(f.x-k.x)+l.y*(f.y-k.y)+l.z*(f.z-k.z)&&a.d(g,f);return 4}())){for(;p<n;){b=c[p];if(b.$b){for(l=b.$b;null!==l;)l.face.visible=!0,l=l.pc;var q,s;l=0;a:for(;l<r.length;l++)if(h=r[l],!1===h.visible){var u=h.C;for(e=0;3>e;e++)if(!0===u[e].visible){q=\nh;s=e;break a}}h=[];var u=[],w=q,x=s;do if(h.push(w),u.push(x),x=(x+1)%3,!1===w.C[x].visible){do for(l=w.ma[x],w=w.C[x],e=0;3>e;e++)w.ma[e]==l&&(x=e);while(!1===w.C[x].visible&&(w!==q||x!==s))}while(w!==q||x!==s);var y=null,C=null;for(l=0;l<h.length;l++){var w=h[l],x=u[l],B=w.C[x],K=w.ma[(x+1)%3],A=w.ma[x],I=K.y-b.y,R=A.z-b.z,O=K.x-b.x,P=K.z-b.z,F=A.x-b.x,U=A.y-b.y,N;0<d.length?(N=d.pop(),N.ma[0]=b,N.ma[1]=K,N.ma[2]=A,N.Oa.x=I*R-P*U,N.Oa.y=P*F-O*R,N.Oa.z=O*U-I*F,N.jb.length=0,N.visible=!1,N.sd=!0):\nN={ma:[b,K,A],C:Array(3),Oa:{x:I*R-P*U,y:P*F-O*R,z:O*U-I*F},jb:[],visible:!1};r.push(N);w.C[x]=N;N.C[1]=w;null!==C&&(C.C[0]=N,N.C[2]=C);C=N;null===y&&(y=N);f(N,w,B)}C.C[0]=y;y.C[2]=C;l=[];for(e=0;e<r.length;e++)if(h=r[e],!0===h.visible){u=h.jb;w=u.length;for(b=0;b<w;b++)x=u[b],y=x.cd,C=x.pc,null!==y&&(y.pc=C),null!==C&&(C.cd=y),null===y&&(x.jd.$b=C),k.push(x);h.sd&&d.push(h)}else l.push(h);r=l}p++}for(l=0;l<r.length;l++)h=r[l],h.sd&&d.push(h)}return{Ke:r}};a.d=function(c,d){var f;0<k.length?(f=k.pop(),\nf.face=c,f.jd=d,f.pc=null,f.cd=null):f=new a(c,d);c.jb.push(f);var e=d.$b;null!==e&&(e.cd=f);f.pc=e;d.$b=f};for(var k=Array(2E3),f=0;f<k.length;f++)k[f]=new a(null,null);for(var d=Array(1E3),f=0;f<d.length;f++)d[f]={ma:Array(3),C:Array(3),Oa:{x:0,y:0,z:0},jb:[],visible:!1}};var Aa=new function(){function a(a,f,d,c,g,l,e,b){var h=(a-d)*(l-b)-(f-c)*(g-e);return Math.abs(h)<m?void 0:{x:((a*c-f*d)*(g-e)-(a-d)*(g*b-l*e))/h,y:((a*c-f*d)*(l-b)-(f-c)*(g*b-l*e))/h}}var m=1E-12;this.cb=function(k,f){for(var d=k[0],c=d.x,g=d.y,l=d.x,e=d.y,b=k.length-1;0<b;b--)d=k[b],c=Math.min(c,d.x),g=Math.min(g,d.y),l=Math.max(l,d.x),e=Math.max(e,d.y);if(l-c<3*f||e-g<3*f)d=void 0;else{a:{d=!0;void 0==d&&(d=!1);c=[];g=k.length;for(l=0;l<=g;l++){var e=k[l%g],b=k[(l+1)%g],h=k[(l+2)%g],n,r,p;n=b.x-\ne.x;r=b.y-e.y;p=Math.sqrt(n*n+r*r);var q=f*n/p,s=f*r/p;n=h.x-b.x;r=h.y-b.y;p=Math.sqrt(n*n+r*r);n=f*n/p;r=f*r/p;if(e=a(e.x-s,e.y+q,b.x-s,b.y+q,b.x-r,b.y+n,h.x-r,h.y+n))if(c.push(e),h=c.length,d&&3<=h&&(e=c[h-3],b=c[h-2],h=c[h-1],0>(b.x-e.x)*(h.y-e.y)-(h.x-e.x)*(b.y-e.y))){d=void 0;break a}}c.shift();d=3>c.length?void 0:c}if(!d)a:{c=k.slice(0);for(d=0;d<k.length;d++){l=k[d%k.length];b=k[(d+1)%k.length];h=b.x-l.x;g=b.y-l.y;e=Math.sqrt(h*h+g*g);h=f*h/e;e=f*g/e;g=l.x-e;l=l.y+h;e=b.x-e;b=b.y+h;if(0!=c.length){s=\ng-e;r=l-b;h=[];n=p=!0;q=void 0;for(q=0;q<c.length;q++){var u=s*(l-c[q].y)-(g-c[q].x)*r;u<=m&&u>=-m&&(u=0);h.push(u);0<u&&(p=!1);0>u&&(n=!1)}if(p)c=[];else if(!n){s=[];for(q=0;q<c.length;q++)r=(q+1)%c.length,p=h[q],n=h[r],0<=p&&s.push(c[q]),(0<p&&0>n||0>p&&0<n)&&s.push(a(c[q].x,c[q].y,c[r].x,c[r].y,g,l,e,b));c=s}}if(3>c.length){d=void 0;break a}}d=c}}return d};return this};var Ba=new function(){function a(a){for(var f=a[0].x,d=a[0].y,c=f,g=d,l=1;l<a.length;l++)var e=a[l],f=Math.min(f,e.x),d=Math.min(d,e.y),c=Math.max(c,e.x),g=Math.max(g,e.y);a=c-f;g=g-d;return[{x:f+2*a,y:d+2*g,f:0},{x:f+2*a,y:d-2*g,f:0},{x:f-2*a,y:d+2*g,f:0}]}var m=1E-12;this.S=function(k,f){function d(){for(b=0;b<p.length;b++){var a=p[b],c=a.ma,d=c[0],e=c[1],f=c[2],c=d.x,h=d.y,d=d.z,g=e.x,k=e.y,e=e.z,l=f.x,q=f.y,f=f.z,s=c*(k-q)+g*(q-h)+l*(h-k);a.ha={x:-(h*(e-f)+k*(f-d)+q*(d-e))/s/2,y:-(d*(g-l)+e*(l-\nc)+f*(c-g))/s/2}}}function c(a){for(b=0;b<p.length;b++){var c=p[b];c.tb=!L.Ta(a,c.ha)}}function g(a,b){var c=Array(b.length),d;for(d=0;d<c.length;d++)c[d]=[];for(d=0;d<a.length;d++){var e=a[d];if(!(0>e.Oa.z))for(var f=e.C,h=0;h<f.length;h++){var g=f[h];if(!(0>g.Oa.z)){var k=e.ma,l=k[(h+1)%3].index,k=k[h].index;2<l&&c[l-3].push([e,g,2<k?b[k-3]:null])}}}return c}function l(a){var b=[a[0]],c=a[0][0],d=a[0][1],e=a.length,f=1;a:for(;f<e;f++)for(var h=1;h<e;h++){var g=a[h];if(null!==g){if(g[1]===c)if(b.unshift(g),\nc=g[0],a[h]=null,b.length===e)break a;else continue;if(g[0]===d&&(b.push(g),d=g[1],a[h]=null,b.length===e))break a}}b[0][0]!=b[e-1][1]&&b.push([b[e-1][1],b[0][0]]);return b}function e(a,b,c,d){var e=[],f=[],h=c.length,g,k=b.length,l=0,q=-1,s=-1,n=-1,p=null,u=d;for(d=0;d<h;d++){var r=(u+1)%h,w=c[u][0],E=c[r][0];if(L.d(w.ha,E.ha)>m)if(w.tb&&E.tb){var J=[],M=[];for(g=0;g<k;g++){q=(l+1)%k;if(p=L.za(b[l],b[q],w.ha,E.ha,!1))if(M.push(l),2===J.push(p))break;l=q}if(2===J.length){q=J[1];p=L.d(w.ha,J[0]);q=\nL.d(w.ha,q);w=p<q?0:1;p=p<q?1:0;q=M[w];-1===s&&(s=q);if(-1!==n)for(;q!=n;)n=(n+1)%k,e.push(b[n]),f.push(null);e.push(J[w],J[p]);f.push(c[u][2],null);n=M[p]}}else if(w.tb&&!E.tb)for(g=0;g<k;g++){q=(l+1)%k;if(p=L.za(b[l],b[q],w.ha,E.ha,!1)){if(-1!==n)for(J=n;l!=J;)J=(J+1)%k,e.push(b[J]),f.push(null);e.push(p);f.push(c[u][2]);-1===s&&(s=l);break}l=q}else if(!w.tb&&E.tb)for(g=0;g<k;g++){q=(l+1)%k;if(p=L.za(b[l],b[q],w.ha,E.ha,!1)){e.push(w.ha,p);f.push(c[u][2],null);n=l;break}l=q}else e.push(w.ha),f.push(c[u][2]);\nu=r}if(0==e.length)f=e=null;else if(-1!==n)for(;s!=n;)n=(n+1)%k,e.push(b[n]),f.push(null);a.o=e;a.C=f}if(1===k.length)k[0].o=f.slice(0),k[0].C=[];else{var b,h;h=a(f);var n=[],r;for(b=0;b<h.length;b++)r=h[b],n.push({x:r.x,y:r.y,z:r.x*r.x+r.y*r.y-r.f});for(b=0;b<k.length;b++)r=k[b],r.o=null,n.push({x:r.x,y:r.y,z:r.x*r.x+r.y*r.y-r.f});var p=za.S(n).Ke;d();c(f);n=g(p,k);for(b=0;b<k.length;b++)if(r=n[b],0!==r.length){var q=k[b];r=l(r);var s=r.length,u=-1;for(h=0;h<s;h++)r[h][0].tb&&(u=h);if(0<=u)e(q,f,\nr,u);else{var u=[],w=[];for(h=0;h<s;h++)L.d(r[h][0].ha,r[(h+1)%s][0].ha)>m&&(u.push(r[h][0].ha),w.push(r[h][2]));q.o=u;q.C=w}q.o&&3>q.o.length&&(q.o=null,q.C=null)}}};this.zc=function(k,f){var d,c,g=!1,l=k.length;for(c=0;c<l;c++)d=k[c],null===d.o&&(g=!0),d.pe=d.f;if(g){var g=a(f),e=[],b,h;c=k.length;for(d=0;d<g.length;d++)b=g[d],e.push({x:b.x,y:b.y,z:b.x*b.x+b.y*b.y});for(d=0;d<c;d++)b=k[d],e.push({x:b.x,y:b.y,z:b.x*b.x+b.y*b.y});b=za.S(e).Ke;g=Array(c);for(d=0;d<c;d++)g[d]={};e=b.length;for(d=0;d<\ne;d++)if(h=b[d],0<h.Oa.z){var n=h.ma,m=n.length;for(h=0;h<m-1;h++){var p=n[h].index-3,q=n[h+1].index-3;0<=p&&0<=q&&(g[p][q]=!0,g[q][p]=!0)}h=n[0].index-3;0<=q&&0<=h&&(g[q][h]=!0,g[h][q]=!0)}for(d=0;d<c;d++){h=g[d];b=k[d];var q=Number.MAX_VALUE,e=null,s;for(s in h)h=k[s],n=L.d(b,h),q>n&&(q=n,e=h);b.Tj=e;b.vf=Math.sqrt(q)}for(c=0;c<l;c++)d=k[c],s=Math.min(Math.sqrt(d.f),0.95*d.vf),d.f=s*s;this.S(k,f);for(c=0;c<l;c++)d=k[c],d.pe!==d.f&&0<d.uc&&(s=Math.min(d.uc,d.pe-d.f),d.f+=s,d.uc-=s)}}};var Ca=new function(){this.Dg=function(a){a=a.e;for(var m=0,k=a.length,f=0;f<k;f++){var d=a[f];if(d.o){var c=d.x,g=d.y;L.k(d.o,d);c=c-d.x;d=g-d.y;d=(0<c?c:-c)+(0<d?d:-d);m<d&&(m=d)}}return m};this.ya=function(a,m){var k=a.e,f,d,c,g;switch(m){case \"random\":return a.e[Math.floor(k.length*Math.random())];case \"topleft\":f=k[0];var l=f.x+f.y;for(g=1;g<k.length;g++)d=k[g],c=d.x+d.y,c<l&&(l=c,f=d);return f;case \"bottomright\":f=k[0];l=f.x+f.y;for(g=1;g<k.length;g++)d=k[g],c=d.x+d.y,c>l&&(l=c,f=d);return f;\ndefault:f=k[0];c=d=L.d(a,f);for(g=k.length-1;1<=g;g--)l=k[g],d=L.d(a,l),d<c&&(c=d,f=l);return f}};this.Ja=function(a,m,k){var f=a.e;if(f[0].C){var d=f.length;for(a=0;a<d;a++)f[a].kd=!1,f[a].ic=0;var d=[],c,g;g=c=0;d[c++]=m||f[0];for(m=m.ic=0;g<c;)if(f=d[g++],!f.kd&&f.C){k(f,m++,f.ic);f.kd=!0;var l=f.C,e=l.length;for(a=0;a<e;a++){var b=l[a];b&&!0!==b.kd&&(0===b.ic&&(b.ic=f.ic+1),d[c++]=b)}}}else for(a=0;a<f.length;a++)k(f[a],a,1)}};var G=function(){function a(a,e,h,q,s,p,u,P){var F=D.extend({},l,a);1>a.lineHeight&&(a.lineHeight=1);a=F.fontFamily;var U=F.fontStyle+\" \"+F.fontVariant+\" \"+F.fontWeight,N=F.rb,S=F.Yc,t=U+\" \"+a;F.Oe=t;var z={la:!1,mc:0,fontSize:0};e.save();e.font=U+\" \"+y+\"px \"+a;e.textBaseline=\"middle\";e.textAlign=\"center\";m(e,F);h=h.trim();w.text=h;d(q,s,p,x);if(/[\\u3000-\\u303f\\u3040-\\u309f\\u30a0-\\u30ff\\uff00-\\uff9f\\u4e00-\\u9faf\\u3400-\\u4dbf]/.test(h))f(w),k(e,w,t),c(F,w,x,S,N,!0,z);else if(k(e,w,t),c(F,w,x,S,N,!1,\nz),!z.la&&(u&&(f(w),k(e,w,t)),P||u))P&&(z.ec=!0),c(F,w,x,S,S,!0,z);if(z.la){var H=\"\",E=0,J=Number.MAX_VALUE,M=Number.MIN_VALUE;g(F,w,z.mc,z.fontSize,x,z.ec,function(a,c){0<H.length&&c===b&&(H+=b);H+=a},function(a,b,c,d,f){d===r&&(H+=n);e.save();e.translate(p.x,b);a=z.fontSize/y;e.scale(a,a);e.fillText(H,0,0);e.restore();H=c;E<f&&(E=f);J>b&&(J=b);M<b&&(M=b)});z.da={x:p.x-E/2,y:J-z.fontSize/2,f:E,i:M-J+z.fontSize};e.restore()}else e.clear&&e.clear();return z}function m(a,c){var d=c.Oe,f=e[d];void 0===\nf&&(f={},e[d]=f);f[b]=a.measureText(b).width;f[h]=a.measureText(h).width}function k(a,b,c){var d,f=b.text.split(/(\\n|[ \\f\\r\\t\\v\\u2028\\u2029]+|\\u00ad+|\\u200b+)/),h=[],g=[],k=f.length>>>1;for(d=0;d<k;d++)h.push(f[2*d]),g.push(f[2*d+1]);2*d<f.length&&(h.push(f[2*d]),g.push(void 0));c=e[c];for(d=0;d<h.length;d++)f=h[d],k=c[f],void 0===k&&(k=a.measureText(f).width,c[f]=k);b.ld=h;b.lg=g}function f(a){for(var c=a.text.split(/\\s+/),d=[],e={\".\":!0,\",\":!0,\";\":!0,\"?\":!0,\"!\":!0,\":\":!0,\"\\u3002\":!0},f=0;f<c.length;f++){var h=\nc[f];if(3<h.length){for(var g=\"\",g=g+h.charAt(0),g=g+h.charAt(1),k=2;k<h.length-2;k++){var q=h.charAt(k);e[q]||(g+=p);g+=q}g+=p;g+=h.charAt(h.length-2);g+=h.charAt(h.length-1);d.push(g)}else d.push(h)}a.text=d.join(b)}function d(a,b,c,d){for(var e,f,h=0;h<a.length;h++)a[h].y===b.y&&(void 0===e?e=h:f=h);void 0===f&&(f=e);e!==f&&a[f].x<a[e].x&&(h=e,e=f,f=h);d.o=a;d.q=b;d.ud=c;d.tf=e;d.uf=f}function c(a,b,c,d,e,f,h){var k=a.lineHeight,q=Math.max(a.eb,0.001),l=a.sb,s=b.ld,n=c.ud,p=c.q,m=void 0,u=void 0;\nswitch(a.verticalAlign){case \"top\":n=p.y+p.i-n.y;break;case \"bottom\":n=n.y-p.y;break;default:n=2*Math.min(n.y-p.y,p.y+p.i-n.y)}l=Math.min(n,l*c.q.i);if(0>=l)h.la=!1;else{n=d;e=Math.min(e,l);p=Math.min(1,l/Math.max(20,b.ld.length));do{var r=(n+e)/2,x=Math.min(s.length,Math.floor((l+r*(k-1-2*q))/(r*k))),w=void 0;if(0<x){var y=1,$=x;do{var Z=Math.floor((y+$)/2);if(g(a,b,Z,r,c,f&&r===d&&Z===x,null,null)){if($=m=w=Z,y===$)break}else if(y=Z+1,y>$)break}while(1)}void 0!==w?n=u=r:e=r}while(e-n>p);void 0===\nu?(h.la=!1,h.fontSize=0):(h.la=!0,h.fontSize=u,h.mc=m,h.ec=f&&r===n)}}function g(a,c,d,f,g,k,l,n){var p=a.ob,m=f*(a.lineHeight-1),r=a.verticalAlign,x=Math.max(a.eb,0.001);a=e[a.Oe];var w=c.ld;c=c.lg;var z=g.o,H=g.ud,E=g.tf,J=g.uf,M;switch(r){case \"top\":g=H.y+f/2+f*x;M=1;break;case \"bottom\":g=H.y-(f*d+m*(d-1))+f/2-f*x;M=-1;break;default:g=H.y-(f*(d-1)/2+m*(d-1)/2),M=1}r=g;for(x=0;x<d;x++)q[2*x]=g-f/2,q[2*x+1]=g+f/2,g+=M*f,g+=M*m;for(;s.length<q.length;)s.push(Array(2));x=q;g=2*d;M=s;for(var Q=z.length,\n$=E,E=(E-1+Q)%Q,Z=J,J=(J+1)%Q,W=0;W<g;){for(var ca=x[W],ka=z[E];ka.y<ca;)$=E,E=(E-1+Q)%Q,ka=z[E];for(var fa=z[J];fa.y<ca;)Z=J,J=(J+1)%Q,fa=z[J];var la=z[$],ma=z[Z],fa=ma.x+(fa.x-ma.x)*(ca-ma.y)/(fa.y-ma.y);M[W][0]=la.x+(ka.x-la.x)*(ca-la.y)/(ka.y-la.y);M[W][1]=fa;W++}for(x=0;x<d;x++)z=2*x,g=H.x,M=g-s[z][0],Q=s[z][1]-g,M=M<Q?M:Q,Q=g-s[z+1][0],z=s[z+1][1]-g,z=Q<z?Q:z,u[x]=2*(M<z?M:z)-p*f;$=a[b]*f/y;M=a[h]*f/y;p=0;E=u[p];H=0;z=void 0;for(x=0;x<w.length;x++){g=w[x];Z=c[x];Q=a[g]*f/y;if(H+Q<E&&w.length-\nx>=d-p&&\"\\n\"!=z)H+=Q,\" \"===Z&&(H+=$),l&&l(g,z);else{if(Q>E&&(p!==d-1||!k))return!1;if(p+1>=d){if(k){d=E-H-M;if(d>M||Q>M)d=Math.floor(g.length*d/Q),0<d&&l&&l(g.substring(0,d),z);l&&l(h,void 0);n&&n(p,r,g,z,H);return!0}return!1}p++;n&&n(p,r,g,z,H);r+=f;r+=m;E=u[p];H=Q;\" \"===Z&&(H+=$);if(Q>E&&(p!==d||!k))return!1}z=Z}n&&n(p,r,void 0,void 0,H);return!0}var l={rb:72,Yc:0,lineHeight:1.05,ob:1,eb:0.5,sb:0.9,fontFamily:\"sans-serif\",fontStyle:\"normal\",fontWeight:\"normal\",fontVariant:\"normal\",verticalAlign:\"center\"},\ne={},b=\" \",h=\"\\u2026\",n=\"\\u2010\",r=\"\\u00ad\",p=\"\\u200b\",q=[],s=[],u=[],w={text:\"\",ld:void 0,lg:void 0},x={o:void 0,q:void 0,ud:void 0,tf:0,uf:0},y=100;return{Me:a,ye:function(b,c,d,e,f,g,h,k,l,q,n,s){var p,m=0,u=0;d=d.toString().trim();!s&&l.result&&d===l.sg&&Math.abs(q-l.ve)/q<=n&&(p=l.result,p.la&&(m=g.x-l.zg,u=g.y-l.Ag,n=l.hd,c.save(),c.translate(m,u),n.Sa(c),c.restore()));p||(n=l.hd,n.clear(),p=a(b,n,d,e,f,g,h,k),p.la&&n.Sa(c),l.ve=q,l.zg=g.x,l.Ag=g.y,l.result=p,l.sg=d);return p.la?{la:!0,mc:p.mc,\nfontSize:p.fontSize,da:{x:p.da.x+m,y:p.da.y+u,f:p.da.f,i:p.da.i},ec:p.ec}:{la:!1}},xi:function(){return{ve:0,zg:0,Ag:0,result:void 0,hd:new ea,sg:void 0}},Ea:l}}();var Da=new function(){function a(a,d){return function(c,g,l,e){function b(a,c,e,f,g){if(0!=a.length){var n=a.shift(),q=k(n),s,p,m,r;if(d(f,g)){s=c;m=q/f;do{q=n.shift();p=q.vc;r=p/m;p=q;var P=e,F=m;p.x=s+r/2;p.y=P+F/2;l&&h(q,s,e,r,m);s+=r}while(0<n.length);return b(a,c,e+m,f,g-m)}s=e;r=q/g;do q=n.shift(),p=q.vc,m=p/r,p=q,P=s,F=m,p.x=c+r/2,p.y=P+F/2,l&&h(q,c,s,r,m),s+=m;while(0<n.length);return b(a,c+r,e,f-r,g)}}function h(a,b,c,d,e){a.o=[{x:b,y:c},{x:b+d,y:c},{x:b+d,y:c+e},{x:b,y:c+e}]}var n=g.x,m=\ng.y,p=g.f;g=g.i;if(0!=c.length)if(1==c.length)c[0].x=n+p/2,c[0].y=m+g/2,c[0].Dd=0,l&&h(c[0],n,m,p,g);else{c=c.slice(0);for(var q=0,s=0;s<c.length;s++)q+=c[s].T;q=p*g/q;for(s=0;s<c.length;s++)c[s].vc=c[s].T*q;e=a(c,p,g,[[c.shift()]],e);b(e,n,m,p,g)}}}function m(a,d,c,g){function l(a){return Math.max(Math.pow(h*a/b,c),Math.pow(b/(h*a),g))}var e=k(a),b=e*e,h=d*d;d=l(a[0].vc);for(e=1;e<a.length;e++)d=Math.max(d,l(a[e].vc));return d}function k(a){for(var d=0,c=0;c<a.length;c++)d+=a[c].vc;return d}this.ue=\na(function(a,d,c,g,l){l=Math.pow(2,l);for(var e=1/l,b=d<c;0<a.length;){var h=g[g.length-1],n=a.shift(),r=b?d:c,p=b?l:e,q=b?e:l,s=m(h,r,p,q);h.push(n);r=m(h,r,p,q);s<r&&(h.pop(),g.push([n]),b?c-=k(h)/d:d-=k(h)/c,b=d<c)}return g},function(a,d){return a<d});this.Xb=a(function(a,d,c,g,l){function e(a){if(1<g.length){for(var c=g[g.length-1],e=g[g.length-2].slice(0),f=0;f<c.length;f++)e.push(c[f]);m(e,d,b,h)<a&&g.splice(-2,2,e)}}for(var b=Math.pow(2,l),h=1/b;0<a.length;){c=g[g.length-1];l=m(c,d,b,h);if(0==\na.length)return;var k=a.shift();c.push(k);var r=m(c,d,b,h);l<r&&(c.pop(),e(l),g.push([k]))}e(m(g[g.length-1],d,b,h));return g},function(){return!0})};function Ea(a){var m={},k=a.Ud,f;a.c.j(\"model:loaded\",function(a){f=a});this.H=function(){a.c.p(\"api:initialized\",this)};this.Cc=function(a,c,f,l){this.od(m,c);this.pd(m,c);this.nd(m,c,!1);l&&l(m);a(k,m,f)};this.td=function(a,c,g,k,e,b,h){if(a){for(a=c.length-1;0<=a;a--){var n=c[a],m=D.extend({group:n.group},e);m[g]=k(n);b(m)}0<c.length&&h(D.extend({groups:Y.Lc(f,k).map(function(a){return a.group})},e))}};this.pd=function(a,c){a.selected=c.selected;a.hovered=c.Db;a.open=c.open;a.openness=c.Kb;a.exposed=\nc.U;a.exposure=c.ka;a.transitionProgress=c.ua;a.revealed=!c.ba.Na();a.browseable=c.Qa?c.M:void 0;a.visible=c.ea;a.labelDrawn=c.ra&&c.ra.la;return a};this.od=function(a,c){var f=c.parent;a.group=c.group;a.parent=f&&f.group;a.weightNormalized=c.xg;a.level=c.R-1;a.siblingCount=f&&f.e.length;a.hasChildren=!c.empty();a.index=c.index;a.indexByWeight=c.Dd;a.description=c.description;a.attribution=c.na;return a};this.nd=function(a,c,f){a.polygonCenterX=c.K.x;a.polygonCenterY=c.K.y;a.polygonArea=c.K.ja;a.boxLeft=\nc.q.x;a.boxTop=c.q.y;a.boxWidth=c.q.f;a.boxHeight=c.q.i;if(c.ra&&c.ra.la){var k=c.ra.da;a.labelBoxLeft=k.x;a.labelBoxTop=k.y;a.labelBoxWidth=k.f;a.labelBoxHeight=k.i;a.labelFontSize=c.ra.fontSize}f&&c.aa&&(a.polygon=c.aa.map(function(a){return{x:a.x,y:a.y}}),a.neighbors=c.C&&c.C.map(function(a){return a&&a.group}));return a}};var na=new function(){var a=window.console;this.Pa=function(a){throw\"FoamTree: \"+a;};this.info=function(m){a.info(\"FoamTree: \"+m)};this.warn=function(m){a.warn(\"FoamTree: \"+m)}};function Fa(a){function m(b,c){b.e=[];b.La=!0;var e=d(c),f=0;if(\"flattened\"==a.ab&&0<c.length&&0<b.R){var g=c.reduce(function(a,b){return a+D.B(b.weight,1)},0),h=k(b.group,!1);h.description=!0;h.T=g*a.cc;h.index=f++;h.parent=b;h.R=b.R+1;h.id=h.id+\"_d\";b.e.push(h)}for(g=0;g<c.length;g++){var l=c[g],h=D.B(l.weight,1);if(0>=h)if(a.tj)h=0.9*e;else continue;l=k(l,!0);l.T=h;l.index=f;l.parent=b;l.R=b.R+1;b.e.push(l);f++}}function k(a,b){var c=new Ga;f(a);c.id=a.__id;c.group=a;b&&(n[a.__id]=c);return c}\nfunction f(a){D.Q(a,\"__id\")||(Object.defineProperty(a,\"__id\",{enumerable:!1,configurable:!1,writable:!1,value:h}),h++)}function d(a){for(var b=Number.MAX_VALUE,c=0;c<a.length;c++){var d=a[c].weight;0<d&&b>d&&(b=d)}b===Number.MAX_VALUE&&(b=1);return b}function c(a){if(!a.empty()){a=a.e;var b=0,c;for(c=a.length-1;0<=c;c--){var d=a[c].T;b<d&&(b=d)}for(c=a.length-1;0<=c;c--)d=a[c],d.xg=d.T/b}}function g(a){if(!a.empty()){a=a.e.slice(0).sort(function(a,b){return a.T<b.T?1:a.T>b.T?-1:a.index-b.index});\nfor(var b=0;b<a.length;b++)a[b].Dd=b}}function l(){for(var c=b.e.reduce(function(a,b){return a+b.T},0),d=0;d<b.e.length;d++){var e=b.e[d];e.na&&(e.T=Math.max(0.025,a.Ug)*c)}}var e=this,b=new Ga,h,n,r,p,q;this.H=function(){return b};this.S=function(b){var d=b.group.groups,e=a.pi;return!b.e&&!b.description&&d&&0<d.length&&q+d.length<=e?(q+=d.length,m(b,d),c(b),g(b),!0):!1};this.Y=function(a){function d(a){var b=a.groups;if(b)for(var c=0;c<b.length;c++){var e=b[c];f(e);var h=e.__id;n[h]=null;p[h]=a;\nh=e.id;D.V(h)||(r[h]=e);d(e)}}function e(a,b){if(!a)return b;var c=Math.max(b,a.__id||0),d=a.groups;if(d&&0<d.length)for(var f=d.length-1;0<=f;f--)c=e(d[f],c);return c}b.group=a;b.Ca=!1;b.M=!1;b.Qa=!1;b.open=!0;b.Kb=1;h=e(a,0)+1;n={};r={};p={};q=0;a&&(f(a),n[a.__id]=b,D.V(a.id)||(r[a.id]=a),d(a));m(b,a&&a.groups||[]);(function(a){if(!a.empty()){var b=k({attribution:!0});b.index=a.e.length;b.parent=a;b.R=a.R+1;b.na=!0;a.e.push(b)}})(b);c(b);l();g(b)};this.update=function(){Y.Fa(b,function(a){if(!a.empty()){a=\na.e;for(var b=d(a.map(function(a){return a.group})),c=0;c<a.length;c++){var e=a[c];e.T=0<e.group.weight?e.group.weight:0.9*b}}});c(b);l();g(b)};this.A=function(a){return function(){if(D.V(a)||D.of(a))return[];if(Array.isArray(a))return a.map(e.d,e);if(D.jc(a)){if(D.Q(a,\"__id\"))return[e.d(a)];if(D.Q(a,\"all\")){var c=[];Y.F(b,function(a){c.push(a)});return c}if(D.Q(a,\"groups\"))return e.A(a.groups)}return[e.d(a)]}().filter(function(a){return void 0!==a})};this.d=function(a){if(D.jc(a)&&D.Q(a,\"__id\")){if(a=\na.__id,D.Q(n,a)){if(null===n[a]){for(var b=p[a],c=[];b;){b=b.__id;c.push(b);if(n[b])break;b=p[b]}for(b=c.length-1;0<=b;b--)this.S(n[c[b]])}return n[a]}}else if(D.Q(r,a))return this.d(r[a])};this.k=function(a,b,c){return{e:e.A(a),Ia:D.B(a&&a[b],!0),Ha:D.B(a&&a.keepPrevious,c)}}}function Ha(a,m,k){var f={};m.Ha&&Y.F(a,function(a){k(a)&&(f[a.id]=a)});a=m.e;m=m.Ia;for(var d=a.length-1;0<=d;d--){var c=a[d];f[c.id]=m?c:void 0}var g=[];D.Ga(f,function(a){void 0!==a&&g.push(a)});return g};function Ia(a){function m(a,b){var c=a.ka;b.opacity=1;b.Ka=1;b.va=0>c?1-p.ei/100*c:1;b.wa=0>c?1-p.fi/100*c:1;b.fa=0>c?1+0.5*c:1}function k(a){a=a.ka;return Math.max(0.001,0===a?1:1+a*(p.Va-1))}function f(a,b){for(var c=a.reduce(function(a,b){a[b.id]=b;return a},{}),d=a.length-1;0<=d;d--)Y.F(a[d],function(a){c[a.id]=void 0});var e=[];D.Ga(c,function(a){a&&Y.He(a,function(a){a.open||e.push(a)})});var f=[];D.Ga(c,function(a){a&&a.open&&f.push(a)});d=[];0!==e.length&&d.push(y.Jb({e:e,Ia:!0,Ha:!0},b,!0));\nreturn pa(d)}function d(d,f,k,n){var m=l();if(0===d.length&&!m)return(new V).J().L();var s=d.reduce(function(a,b){a[b.id]=!0;return a},{}),r=[];d=[];if(C.reduce(function(a,b){return a||s[b.id]&&(!b.U||1!==b.ka)||!s[b.id]&&!b.parent.U&&(b.U||-1!==b.ka)},!1)){var y=[],A={};C.forEach(function(a){s[a.id]&&(a.U||r.push(a),a.U=!0,Y.Fa(a,function(a){y.push(b(a,1));A[a.id]=!0}))});0<y.length?(Y.F(q,function(a){s[a.id]||(a.U&&r.push(a),a.U=!1);A[a.id]||y.push(b(a,-1))}),d.push(x.D.m({}).Ya(y).call(h).bb()),\nc(s),d.push(g(m)),k&&(w.sc(B,p.Pc,p.Ua,X.pa(p.gc)),w.Pb())):(d.push(e(k)),f&&Y.F(q,function(a){a.U&&r.push(a)}))}return pa(d).N(function(){u.td(f,r,\"exposed\",function(a){return a.U},{indirect:n},a.options.Ef,a.options.Df)})}function c(a){C.reduce(n(!0,void 0,function(b){return b.U||a[b.id]}),r(B));B.x-=B.f*(p.Va-1)/2;B.y-=B.i*(p.Va-1)/2;B.f*=p.Va;B.i*=p.Va}function g(b){if(b||!w.Rd())return x.D.m(s).ia({duration:0.7*p.Ua,G:{x:{end:B.x+B.f/2,P:X.pa(p.gc)},y:{end:B.y+B.i/2,P:X.pa(p.gc)}},ca:function(){a.c.p(\"foamtree:dirty\",\n!0)}}).bb();s.x=B.x+B.f/2;s.y=B.y+B.i/2;return(new V).J().L()}function l(){return!!C&&C.reduce(function(a,b){return a||0!==b.ka},!1)}function e(a){var c=[],d=[];Y.F(q,function(a){0!==a.ka&&d.push(b(a,0,function(){this.U=!1}))});c.push(x.D.m({}).Ya(d).bb());w.content(0,0,K,A);a&&(c.push(w.reset(p.Ua,X.pa(p.gc))),w.Pb());return pa(c)}function b(b,c,d){var e=x.D.m(b);0===b.ka&&0!==c&&e.call(function(){this.Bc(I);this.zb(m)});e.ia({duration:p.Ua,G:{ka:{end:c,P:X.pa(p.gc)}},ca:function(){q.I=!0;q.Ma=!0;\na.c.p(\"foamtree:dirty\",!0)}});0===c&&e.call(function(){this.Md();this.nc();this.ed(I);this.dd(m)});return e.call(d).xa()}function h(){var a=q.e.reduce(n(!1,I.Tb,void 0),r({})).da,b=p.Pc,c=Math.min(a.x,B.x-B.f*b),d=Math.max(a.x+a.f,B.x+B.f*(1+b)),e=Math.min(a.y,B.y-B.i*b),a=Math.max(a.y+a.i,B.y+B.i*(1+b));w.content(c,e,d-c,a-e)}function n(a,b,c){var d={};return function(e,f){if(!c||c(f)){for(var h=a?f.aa||f.o:f.o,g,k=h.length-1;0<=k;k--)g=void 0!==b?b(f,h[k],d):h[k],e.Zc=Math.min(e.Zc,g.x),e.Od=Math.max(e.Od,\ng.x),e.$c=Math.min(e.$c,g.y),e.Pd=Math.max(e.Pd,g.y);e.da.x=e.Zc;e.da.y=e.$c;e.da.f=e.Od-e.Zc;e.da.i=e.Pd-e.$c}return e}}function r(a){return{Zc:Number.MAX_VALUE,Od:Number.MIN_VALUE,$c:Number.MAX_VALUE,Pd:Number.MIN_VALUE,da:a}}var p=a.options,q,s,u,w,x,y,C,B,K,A,I={sf:function(a,b){b.scale=k(a);return!1},Sb:function(a,b){var c=k(a),d=s.x,e=s.y;b.translate(d,e);b.scale(c,c);b.translate(-d,-e)},Ub:function(a,b,c){a=k(a);var d=s.x,e=s.y;c.x=(b.x-d)/a+d;c.y=(b.y-e)/a+e},Tb:function(a,b,c){a=k(a);var d=\ns.x,e=s.y;c.x=(b.x-d)*a+d;c.y=(b.y-e)*a+e;return c}};a.c.j(\"stage:initialized\",function(a,b,c,d){s={x:c/2,y:d/2};K=c;A=d;B={x:0,y:0,f:K,i:A}});a.c.j(\"stage:resized\",function(a,b,c,d){s.x*=c/a;s.y*=d/b;K=c;A=d});a.c.j(\"api:initialized\",function(a){u=a});a.c.j(\"zoom:initialized\",function(a){w=a});a.c.j(\"model:loaded\",function(a,b){q=a;C=b});a.c.j(\"model:childrenAttached\",function(a){C=a});a.c.j(\"timeline:initialized\",function(a){x=a});a.c.j(\"openclose:initialized\",function(a){y=a});var R=[\"groupExposureScale\",\n\"groupUnexposureScale\",\"groupExposureZoomMargin\"];a.c.j(\"options:changed\",function(a){D.nb(a,R)&&l()&&(c({}),w.Aj(B,p.Pc),w.Pb())});this.H=function(){a.c.p(\"expose:initialized\",this)};this.fc=function(a,b,c,e){var h=a.e.reduce(function(a,b){for(var c=b;c=c.parent;)a[c.id]=!0;return a},{}),g=Ha(q,a,function(a){return a.U&&!a.open&&!h[a.id]}),k=new V;f(g,b).N(function(){d(g.filter(function(a){return a.o&&a.aa}),b,c,e).N(k.J)});return k.L()}};function Ja(a){function m(d){function b(a,b){var c=Math.min(1,Math.max(0,a.ua));b.opacity=c;b.va=1;b.wa=c;b.Ka=c;b.fa=a.Gb}var h=a.options,k=h.oj,m=h.pj,p=h.lj,q=h.mj,s=h.nj,u=h.fe,w=k+m+p+q+s,x=0<w?u/w:0,y=[];l.gb(h.hg,h.gg,h.ig,h.jg,h.fg);if(0===x&&d.e&&d.M){u=d.e;for(w=0;w<u.length;w++){var C=u[w];C.ua=1;C.Gb=1;C.zb(b);C.nc();C.dd(b)}d.I=!0;a.c.p(\"foamtree:dirty\",0<x);return(new V).J().L()}if(d.e&&d.M){Ca.Ja(d,Ca.ya(d,a.options.he),function(c,d,e){c.Bc(l);c.zb(b);e=\"groups\"===a.options.ge?e:d;\nd=f.D.m(c).fb(e*x*k).ia({duration:x*m,G:{ua:{end:1,P:X.pa(h.kj)}},ca:function(){this.I=!0;a.c.p(\"foamtree:dirty\",0<x)}}).xa();e=f.D.m(c).fb(g?x*(p+e*q):0).ia({duration:g?x*s:0,G:{Gb:{end:1,P:X.Ib}},ca:function(){this.I=!0;a.c.p(\"foamtree:dirty\",0<x)}}).xa();c=f.D.m(c).Ya([d,e]).oe().ib(function(){this.Md();this.nc();this.ed(l);this.dd(b)}).xa();y.push(c)});c.d();var B=new V;f.D.m({}).Ya(y).call(function(){c.k();B.J()}).start();return B.L()}return(new V).J().L()}var k,f,d=[],c=new qa(D.ta);a.c.j(\"stage:initialized\",\nfunction(){});a.c.j(\"stage:resized\",function(){});a.c.j(\"stage:newLayer\",function(a,b){d.push(b)});a.c.j(\"model:loaded\",function(a){k=a;c.clear()});a.c.j(\"zoom:initialized\",function(){});a.c.j(\"timeline:initialized\",function(a){f=a});var g=!1;a.c.j(\"render:renderers:resolved\",function(a){g=a.labelPlainFill||!1});var l=new function(){var a=0,b=0,c=0,d=0,f=0,g=0;this.gb=function(k,l,m,w,x){a=1+l;b=1-a;c=m;d=w;f=x;g=k};this.sf=function(g,k){k.scale=a+b*g.ua;return 0!==f||0!==c||0!==d};this.Sb=function(k,\nl){var m=a+b*k.ua,w=k.parent,x=g*k.x+(1-g)*w.x,y=g*k.y+(1-g)*w.y;l.translate(x,y);l.scale(m,m);m=1-k.ua;l.rotate(f*Math.PI*m);l.translate(-x,-y);l.translate(w.q.f*c*m,w.q.i*d*m)};this.Ub=function(f,k,l){var m=a+b*f.ua,r=g*f.x+(1-g)*f.parent.x,y=g*f.y+(1-g)*f.parent.y,C=1-f.ua;f=f.parent;l.x=(k.x-r)/m+r-f.q.f*c*C;l.y=(k.y-y)/m+y-f.q.i*d*C};this.Tb=function(f,k,l){var m=a+b*f.ua,r=g*f.x+(1-g)*f.parent.x,y=g*f.y+(1-g)*f.parent.y,C=1-f.ua;f=f.parent;l.x=(k.x-r)*m+r-f.q.f*c*C;l.y=(k.y-y)*m+y-f.q.i*d*C}};\nthis.H=function(){};this.k=function(){function d(a,b){var c=Math.min(1,Math.max(0,a.ua));b.opacity=c;b.va=1;b.wa=c;b.Ka=c;b.fa=a.Gb}function b(a,b){var c=Math.min(1,Math.max(0,a.Zd));b.opacity=c;b.Ka=c;b.va=1;b.wa=1;b.fa=a.Gb}var h=a.options,n=h.Yd,m=h.Hi,p=h.Ii,q=h.Ji,s=h.Di,u=h.Ei,w=h.Fi,x=h.zi,y=h.Ai,C=h.Bi,B=s+u+w+x+y+C+m+p+q,K=0<B?n/B:0,A=[];c.A()?l.gb(h.Ni,h.Li,h.Oi,h.Pi,h.Ki):l.gb(h.hg,h.gg,h.ig,h.jg,h.fg);Ca.Ja(k,Ca.ya(k,a.options.Mi),function(c,k,n){var B=\"groups\"===a.options.Gi?n:k;A.push(f.D.m(c).call(function(){this.zb(d)}).fb(g?\nK*(s+B*u):0).ia({duration:g?K*w:0,G:{Gb:{end:0,P:X.Ib}},ca:function(){this.I=!0;a.c.p(\"foamtree:dirty\",!0)}}).xa());Y.F(c,function(c){A.push(f.D.m(c).call(function(){this.Bc(l);this.zb(b)}).fb(K*(x+y*B)).ia({duration:K*C,G:{Zd:{end:0,P:X.Ib}},ca:function(){this.I=!0;a.c.p(\"foamtree:dirty\",!0)}}).ib(function(){this.selected=!1;this.ed(l)}).xa())});A.push(f.D.m(c).call(function(){this.Bc(l)}).fb(K*(m+p*B)).ia({duration:K*q,G:{ua:{end:0,P:X.pa(h.Ci)}},ca:function(){this.I=!0;a.c.p(\"foamtree:dirty\",!0)}}).ib(function(){this.selected=\n!1;this.ed(l)}).xa())});return f.D.m({}).Ya(A).bb()};this.d=function(a){return m(a)}};function Ka(a){function m(a,b){var d=[];Y.F(g,function(b){if(b.e){var c=D.Q(a,b.id);b.open!==c&&(c||b.U||Y.F(b,function(a){if(a.U)return d.push(b),!1}))}});if(0===d.length)return(new V).J().L();var f;for(f=d.length-1;0<=f;f--)d[f].open=!1;var k=c.fc({e:d,Ia:!0,Ha:!0},b,!0,!0);for(f=d.length-1;0<=f;f--)d[f].open=!0;return k}function k(c,b,h){function k(b,c){b.zb(m);var e=d.D.m(b).ia({duration:a.options.bd,G:{Kb:{end:c?1:0,P:X.Ae}},ca:function(){this.I=!0;a.c.p(\"foamtree:dirty\",!0)}}).call(function(){this.open=\nc;b.Vb=!1}).ib(function(){this.nc();this.dd(m);delete f[this.id]}).xa();return f[b.id]=e}function m(a,b){b.opacity=1-a.Kb;b.va=1;b.wa=1;b.fa=1;b.Ka=1}var p=[],q=[];Y.F(g,function(a){if(a.M&&a.X){var b=D.Q(c,a.id),d=f[a.id];if(d&&d.Fb())d.stop();else if(a.open===b)return;a.Vb=b;b||(a.open=b,a.Td=!1);q.push(a);p.push(k(a,b))}});return 0<p.length?(a.c.p(\"openclose:changing\"),d.D.m({}).Ya(p).bb().N(function(){l.td(b,q,\"open\",function(a){return a.open},{indirect:h},a.options.Mf,a.options.Lf)})):(new V).J().L()}\nvar f,d,c,g,l;a.c.j(\"api:initialized\",function(a){l=a});a.c.j(\"model:loaded\",function(a){g=a;f={}});a.c.j(\"timeline:initialized\",function(a){d=a});a.c.j(\"expose:initialized\",function(a){c=a});this.H=function(){a.c.p(\"openclose:initialized\",this)};this.Jb=function(c,b,d){if(\"flattened\"==a.options.ab)return(new V).J().L();c=Ha(g,c,function(a){return a.open||a.Vb});for(var f=new V,l=0;l<c.length;l++)c[l].Vb=!0;0<c.length&&a.c.p(\"foamtree:attachChildren\");var p=c.reduce(function(a,b){a[b.id]=!0;return a},\n{});m(p,b).N(function(){k(p,b,d).N(f.J)});return f.L()}};function La(a){function m(d,c){var g=Ha(k,d,function(a){return a.selected});Y.F(k,function(a){!0===a.selected&&(a.selected=!a.selected,a.I=!a.I,a.$a=!a.$a)});var l;for(l=g.length-1;0<=l;l--){var e=g[l];e.selected=!e.selected;e.I=!e.I;e.$a=!e.$a}var b=[];Y.F(k,function(a){a.I&&b.push(a)});0<b.length&&a.c.p(\"foamtree:dirty\",!1);f.td(c,b,\"selected\",function(a){return a.selected},{},a.options.Of,a.options.Nf)}var k,f;a.c.j(\"api:initialized\",function(a){f=a});a.c.j(\"model:loaded\",function(a){k=a});this.H=\nfunction(){a.c.p(\"select:initialized\",this)};this.select=function(a,c){return m(a,c)}};function Ma(a){function m(a){return function(b){a.call(this,{x:b.x,y:b.y,scale:b.scale,vd:b.delta,ctrlKey:b.ctrlKey,metaKey:b.metaKey,altKey:b.altKey,shiftKey:b.shiftKey,wb:b.secondary,touches:b.touches})}}function k(){function b(a){return function(b){b.x*=N/r.clientWidth;b.y*=S/r.clientHeight;return a(b)}}\"external\"!==n.hf&&(\"hammerjs\"===n.hf&&D.Q(window,\"Hammer\")&&(E.H(r),E.m(\"tap\",b(h.d),!0),E.m(\"doubletap\",b(h.k),!0),E.m(\"hold\",b(h.ya),!0),E.m(\"touch\",b(h.Aa),!1),E.m(\"release\",b(h.Ba),!1),E.m(\"dragstart\",\nb(h.Y),!0),E.m(\"drag\",b(h.A),!0),E.m(\"dragend\",b(h.S),!0),E.m(\"transformstart\",b(h.Ta),!0),E.m(\"transform\",b(h.Ja),!0),E.m(\"transformend\",b(h.cb),!0)),F=new ta(r),U=new sa,F.d(b(h.d)),F.k(b(h.k)),F.ya(b(h.ya)),F.Ba(b(h.Aa)),F.Pa(b(h.Ba)),F.Y(b(h.Y)),F.A(b(h.A)),F.S(b(h.S)),F.za(b(h.za)),F.Ja(b(h.za)),F.Aa(b(h.Pa)),U.addEventListener(\"keyup\",function(b){var c=!1,d=void 0,e=n.Sf({keyCode:b.keyCode,preventDefault:function(){c=!0},preventOriginalEventDefault:function(){d=\"prevent\"},allowOriginalEventDefault:function(){d=\n\"allow\"}});\"prevent\"===d&&b.preventDefault();(c=c||0<=e.indexOf(!1))||27===b.keyCode&&a.c.p(\"interaction:reset\")}))}function f(){p.Gc(2)?a.c.p(\"interaction:reset\"):p.normalize(n.wc,X.pa(n.xc))}function d(a){return function(){y.empty()||a.apply(this,arguments)}}function c(a,b,c){var d={},f={};return function(g){var h;switch(a){case \"click\":h=n.yf;break;case \"doubleclick\":h=n.zf;break;case \"hold\":h=n.Ff;break;case \"hover\":h=n.Gf;break;case \"mousemove\":h=n.If;break;case \"mousewheel\":h=n.Kf;break;case \"mousedown\":h=\nn.Hf;break;case \"mouseup\":h=n.Jf;break;case \"dragstart\":h=n.Cf;break;case \"drag\":h=n.Af;break;case \"dragend\":h=n.Bf;break;case \"transformstart\":h=n.Rf;break;case \"transform\":h=n.Pf;break;case \"transformend\":h=n.Qf}var k=!1,m=!h.empty(),q=p.absolute(g,d),r=(b||m)&&l(q),s=(b||m)&&e(q);m&&(m=r?r.group:null,q=r?r.Ub(q,f):q,g.Lb=void 0,h=h({type:a,group:m,topmostClosedGroup:m,bottommostOpenGroup:s?s.group:null,x:g.x,y:g.y,xAbsolute:q.x,yAbsolute:q.y,scale:D.B(g.scale,1),secondary:g.wb,touches:D.B(g.touches,\n1),delta:D.B(g.vd,0),ctrlKey:g.ctrlKey,metaKey:g.metaKey,altKey:g.altKey,shiftKey:g.shiftKey,preventDefault:function(){k=!0},preventOriginalEventDefault:function(){g.Lb=\"prevent\"},allowOriginalEventDefault:function(){g.Lb=\"allow\"}}),k=k||0<=h.indexOf(!1),r&&r.na&&\"click\"===a&&(k=!1));k||c&&c({Dc:r,Wg:s},g)}}function g(a){function b(a,c){var d=c.e;if(d){for(var e=-Number.MAX_VALUE,f,g=0;g<d.length;g++){var h=d[g];!h.description&&h.ea&&J(h,a)&&h.scale>e&&(f=h,e=h.scale)}var k;f&&(k=b(a,f));return k||\nf}}return b(a,y)}function l(a,b){var c;if(\"flattened\"==n.ab)c=g(a);else{c=b||0;for(var d=t.length,e=void 0,f=0;f<d;f++){var h=t[f];h.scale>c&&!1===h.open&&h.ea&&J(h,a)&&(e=h,c=h.scale)}c=e}return c}function e(a){var b=void 0,c=0;Y.Jc(y,function(d){!0===d.open&&d.ea&&d.scale>c&&J(d,a)&&(b=d,c=d.scale)});return b}var b=v.nf(),h=this,n=a.options,r,p,q,s,u,w,x,y,C=!1,B,K,A,I,R,O,P,F,U,N,S;a.c.j(\"stage:initialized\",function(a,b,c,d){r=b;N=c;S=d;k()});a.c.j(\"stage:resized\",function(a,b,c,d){N=c;S=d});a.c.j(\"stage:disposed\",\nfunction(){F.kb();E.kb();U.d()});a.c.j(\"expose:initialized\",function(a){s=a});a.c.j(\"zoom:initialized\",function(a){p=a});a.c.j(\"openclose:initialized\",function(a){u=a});a.c.j(\"select:initialized\",function(a){w=a});a.c.j(\"titlebar:initialized\",function(a){x=a});a.c.j(\"timeline:initialized\",function(a){q=a});var t;a.c.j(\"model:loaded\",function(a,b){y=a;t=b});a.c.j(\"model:childrenAttached\",function(a){t=a});this.H=function(){};this.Aa=d(c(\"mousedown\",!1,function(){p.ui()}));this.Ba=d(c(\"mouseup\",!1,\nvoid 0));this.d=d(c(\"click\",!0,function(a,b){if(!b.wb&&!b.shiftKey){var c=a.Dc;c&&(c.na?document.location.href=xa.kg(\"iuuq;..b`ssnurd`sbi/bnl.gn`lusdd\"):w.select({e:[c],Ia:!c.selected,Ha:b.metaKey||b.ctrlKey},!0))}}));this.k=d(c(\"doubleclick\",!0,function(b,c){var d,e;if(c.wb||c.shiftKey){if(d=b.Dc)d.parent.U&&(d=d.parent),e={e:d.parent!==y?[d.parent]:[],Ia:!0,Ha:!1},w.select(e,!0),s.fc(e,!0,!0,!1)}else if(d=b.Dc)e={e:[d],Ia:!0,Ha:!1},d.Vb=!0,a.c.p(\"foamtree:attachChildren\"),s.fc(e,!0,!0,!1);d&&q.D.m({}).fb(n.Ua/\n2).call(function(){u.Jb({e:Y.Lc(y,function(a){return a.Td&&!Y.ki(d,a)}),Ia:!1,Ha:!0},!0,!0);d.Td=!0;u.Jb({e:[d],Ia:!(c.wb||c.shiftKey),Ha:!0},!0,!0)}).start()}));this.ya=d(c(\"hold\",!0,function(a,b){var c=!(b.metaKey||b.ctrlKey||b.shiftKey)&&!b.wb,d;(d=c?a.Dc:a.Wg)&&d!==y&&!d.empty()&&u.Jb({e:[d],Ia:c,Ha:!0},!0,!1)}));this.Y=d(c(\"dragstart\",!1,function(a,b){B=b.x;K=b.y;A=Date.now();C=!0}));this.A=d(c(\"drag\",!1,function(a,b){if(C){var c=Date.now();O=Math.min(1,c-A);A=c;var c=b.x-B,d=b.y-K;p.si(c,d);\nI=c;R=d;B=b.x;K=b.y}}));this.S=d(c(\"dragend\",!1,function(){if(C){C=!1;var a=Math.sqrt(I*I+R*R)/O;4<=a?p.ti(a,I,R):p.wf()}}));this.Ta=d(c(\"transformstart\",!1,function(a,b){P=1;B=b.x;K=b.y}));var z=1,H=!1;this.Ja=d(c(\"transform\",!1,function(a,b){var c=b.scale-0.01;p.Qg(b,c/P,b.x-B,b.y-K);P=c;B=b.x;K=b.y;z=P;H=H||2<b.touches}));this.cb=d(c(\"transformend\",!1,function(){H&&0.8>z?a.c.p(\"interaction:reset\"):f();H=!1}));this.Pa=d(c(\"mousewheel\",!1,function(){var a=D.ah(function(){f()},300);return function(c,\nd){var e=n.Gj;1!==e&&(e=Math.pow(e,d.vd),b?(p.Rg(d,e),a()):p.Yb(d,e,n.wc,X.pa(n.xc)).N(f))}}()));this.za=d(function(){var b=void 0,d={},e=!1,f,g=c(\"hover\",!1,function(){b&&(b.Db=!1,b.I=!0);f&&(f.Db=!0,f.I=!0);x.update(f);a.c.p(\"foamtree:dirty\",!1)}),h=c(\"mousemove\",!1,void 0);return function(a){if(\"out\"===a.type)f=void 0,e=f!==b;else if(p.absolute(a,d),b&&!b.open&&J(b,d)){var c=l(d,b.scale);c&&c!=b?(e=!0,f=c):e=!1}else f=l(d),e=f!==b;e&&(g(a),b=f,e=!1);b&&h(a)}}());this.gb={click:m(this.d),doubleclick:m(this.k),\nhold:m(this.ya),mouseup:m(this.Ba),mousedown:m(this.Aa),dragstart:m(this.Y),drag:m(this.A),dragend:m(this.S),transformstart:m(this.Ta),transform:m(this.Ja),transformend:m(this.cb),hover:m(this.za),mousewheel:m(this.Pa)};var E=function(){function a(b,c){return function(a){a=a.gesture;var d=a.center,d=ra.Je(r,d.pageX,d.pageY,{});d.scale=a.scale;d.wb=1<a.touches.length;d.touches=a.touches.length;b.call(r,d);(void 0===d.Lb&&c||\"prevent\"===d.Lb)&&a.preventDefault()}}var b,c={};return{H:function(a){b=window.Hammer(a,\n{doubletap_interval:350,hold_timeout:400,doubletap_distance:10})},m:function(d,e,f){c[d]=e;b.on(d,a(e,f))},kb:function(){b&&D.Ga(c,function(a,c){b.off(c,a)})}}}(),J=function(){var a={};return function(b,c){b.Ub(c,a);return b.aa&&L.Ta(b.aa,a)}}()};function Na(a){function m(a,c,f,k){var e,b=0,h=[];for(e=0;e<c.length;e++){var m=Math.sqrt(L.d(c[e],c[(e+1)%c.length]));h.push(m);b+=m}for(e=0;e<h.length;e++)h[e]/=b;a[0].x=f.x;a[0].y=f.y;var r=m=b=0;for(e=1;e<a.length;e++){for(var p=a[e],q=0.95*Math.pow(e/a.length,k),b=b+0.3819;m<b;)m+=h[r],r=(r+1)%h.length;var s=(r-1+h.length)%h.length,u=1-(m-b)/h[s],w=c[s].x,s=c[s].y,x=c[r].x,y=c[r].y,w=(w-f.x)*q+f.x,s=(s-f.y)*q+f.y,x=(x-f.x)*q+f.x,y=(y-f.y)*q+f.y;p.x=w*(1-u)+x*u;p.y=s*(1-u)+y*u}}var k={random:{Eb:function(a,\nc){for(var f=0;f<a.length;f++){var k=a[f];k.x=c.x+Math.random()*c.f;k.y=c.y+Math.random()*c.i}},Zb:\"box\"},ordered:{Eb:function(a,c){var g=a.slice(0);f.lc&&g.sort(Oa);Da.Xb(g,c,!1,f.ce)},Zb:\"box\"},squarified:{Eb:function(a,c){var g=a.slice(0);f.lc&&g.sort(Oa);Da.ue(g,c,!1,f.ce)},Zb:\"box\"},fisheye:{Eb:function(a,c,g){a=a.slice(0);f.lc&&a.sort(Oa);m(a,c,g,0.25)},Zb:\"polygon\"},blackhole:{Eb:function(a,c,g){a=a.slice(0);f.lc&&a.sort(Oa).reverse();m(a,c,g,1)},Zb:\"polygon\"}};k.order=k.ordered;k.treemap=\nk.squarified;var f=a.options;this.d=function(a,c,g){if(0<a.length){g=k[g.relaxationInitializer||g.initializer||f.fj||\"random\"];if(\"box\"===g.Zb){var l=L.q(c,{});g.Eb(a,l);L.qe(a,L.A(l),c)}else g.Eb(a,c,L.k(c,{}));for(l=a.length-1;0<=l;l--){g=a[l];if(g.description){a=L.re(c,f.Hc,f.bh);g.x=a.x;g.y=a.y;break}if(g.na){a=L.re(c,f.we,f.Sg);g.x=a.x;g.y=a.y;break}}}}};function Pa(a){var m,k=a.options,f=new Qa(a,this),d=new Ra(a,this),c={relaxed:f,ordered:d,squarified:d},g=c[a.options.Vc]||f;this.Bg=5E-5;a.c.j(\"model:loaded\",function(a){m=a});a.c.j(\"options:changed\",function(a){a.layout&&D.Q(c,k.Vc)&&(g=c[k.Vc])});this.step=function(a,c,b,d){return g.step(a,c,b,d)};this.complete=function(a){g.complete(a)};this.lf=function(a){return a===m?!0:2*Math.sqrt(a.K.ja/(Math.PI*a.e.length))>=Math.max(k.We,5E-5)};this.xd=function(a,c){for(var b=Math.pow(k.Ra,a.R),d=k.lb*b,\nb=k.zd*b,f=a.e,m=f.length-1;0<=m;m--){var p=f[m];g.xe(p,b);var q=p;q.aa=0<d?Aa.cb(q.o,d):q.o;q.aa&&(L.q(q.aa,q.q),L.se(q.aa,q.K));p.e&&c.push(p)}};this.qc=function(a){g.qc(a)};this.Mb=function(a){g.Mb(a)}};function Qa(a,m){function k(a){if(a.e){a=a.e;for(var b=0;b<a.length;b++){var c=a[b];c.uc=c.rc*n.Rh}}}function f(a,c){m.lf(a)&&(a.u||(a.u=Aa.cb(a.o,n.zd*Math.pow(n.Ra,a.R-1)),a.u&&\"flattened\"==n.ab&&\"stab\"==n.dc&&l(a)),a.u&&(b.Mb(a),r.d(d(a),a.u,a.group),a.M=!0,c(a)),k(a))}function d(a){return\"stab\"==n.dc&&0<a.e.length&&a.e[0].description?a.e.slice(1):a.e}function c(a){var b=d(a);Ba.S(b,a.u);Ba.zc(b,a.u);return Ca.Dg(a)*Math.sqrt(h.K.ja/a.K.ja)}function g(a){return a<n.bg||1E-4>a}function l(a){var b=\nn.cc/(1+n.cc),c=L.q(a.u,{}),d={x:c.x,y:0},e=c.y,f=c.i,g=n.De*Math.pow(n.Ra,a.R-1),h=f*n.Ce,k=n.Hc;\"bottom\"==k||0<=k&&180>k?(k=Math.PI,e+=f,f=-1):(k=0,f=1);for(var l,m=a.u,p=k,r=0,P=1,F=L.k(m,{}),U=F.ja,b=U*b,N=0;r<P&&20>N++;){var S=(r+P)/2;d.y=c.y+c.i*S;l=L.Wb(m,d,p);L.k(l[0],F);var t=F.ja-b;if(0.01>=Math.abs(t)/U)break;else 0<(0==p?1:-1)*t?P=S:r=S}L.q(l[0],c);if(c.i<g||c.i>h)d.y=c.i<g?e+f*Math.min(g,h):e+f*h,l=L.Wb(a.u,d,k);a.e[0].o=l[0];a.u=l[1]}function e(a){a!==h&&2*Math.sqrt(a.K.ja/(Math.PI*\na.e.length))<Math.max(0.85*n.We,m.Bg)&&(a.M=!1,a.Ca=!1,a.Qa=!0,a.u=null)}var b=this,h,n=a.options,r=new Na(a),p=0;a.c.j(\"model:loaded\",function(a){h=a;p=0});this.step=function(a,b,k,l){function r(b){b.M&&b.Ca?e(b):b.Qa&&b.o&&f(b,function(){var c=d(b);Ba.S(c,b.u);Ba.zc(c,b.u);a(b)});if(!b.u||!b.M)return 0;var h;b.parent&&b.parent.Z||b.La?(h=c(b),l&&l(b),b.La=!g(h),b.Z=!0):h=0;m.xd(b,B);return h}function y(a,b,c){p<a&&(p=a);var d=n.bg;n.Sd(b?1:1-(a-d)/(p-d||1),b,c);b&&(p=0)}for(var C=0,B=[h];0<B.length;)C=\nMath.max(C,r(B.shift()));var K=g(C);b&&y(C,K,k);return K};this.complete=function(a){for(var b=[h];0<b.length;){var d=b.shift();!d.M&&d.Qa&&d.o&&f(d,a);if(d.u){if(d.parent&&d.parent.Z||d.La){for(var e=1E-4>d.K.ja,k=0;!(g(c(d))||e&&32<k++););d.Z=!0;d.La=!1}m.xd(d,b)}}};this.qc=function(a){Y.F(a,k)};this.xe=function(a,b){if(a.M){var c=a.u;c&&(a.Xd=c);a.u=Aa.cb(a.o,b);a.u&&\"flattened\"==n.ab&&\"stab\"==n.dc&&l(a);c&&!a.u&&(a.Z=!0);a.u&&a.Xd&&L.qe(d(a),a.Xd,a.u)}};this.Mb=function(a){for(var b=d(a),c=a.ja,\ne,f=e=0;f<b.length;f++)e+=b[f].T;a.$j=e;for(a=0;a<b.length;a++)f=b[a],f.qg=f.f,f.rc=c/Math.PI*(0<e?f.T/e:1/b.length)}};function Ra(a,m){function k(a,c){if(m.lf(a)){if(!a.u||a.parent&&a.parent.Z){var e=l.zd*Math.pow(l.Ra,a.R-1);a.u=L.A(d(L.q(a.o,{}),e))}a.u&&(a.M=!0,c(a))}else a.M=!1,Y.Fa(a,function(a){a.u=null})}function f(a){function d(a){function b(){e.o=L.A(f);e.x=f.x+f.f/2;e.y=f.y+f.i/2}var c=l.cc/(1+l.cc),e=a.e[0],f=L.q(a.u,{}),g=f.i,c=Math.min(Math.max(g*c,l.De*Math.pow(l.Ra,a.R-1)),g*l.Ce),h=l.Hc;\"bottom\"==h||0<=h&&180>h?(f.i=g-c,a.u=L.A(f),f.y+=g-c,f.i=c,b()):(f.i=c,b(),f.y+=c,f.i=g-c,a.u=L.A(f))}var f;\"stab\"==\nl.dc&&0<a.e.length&&a.e[0].description?(f=a.e.slice(1),d(a)):f=a.e;l.lc&&f.sort(Oa);\"floating\"==l.dc&&c(f,l.Hc,function(a){return a.description});c(f,l.we,function(a){return a.na});var g=L.q(a.u,{});(e[l.Vc]||Da.Xb)(f,g,!0,l.ce);a.La=!1;a.Z=!0;a.I=!0;a.Ma=!0}function d(a,c){var d=2*c;a.x+=c;a.y+=c;a.f-=d;a.i-=d;return a}function c(a,c,d){for(var e=0;e<a.length;e++){var f=a[e];if(d(f)){a.splice(e,1);\"topleft\"==c||135<=c&&315>c?a.unshift(f):a.push(f);break}}}var g,l=a.options,e={squarified:Da.ue,ordered:Da.Xb};\na.c.j(\"model:loaded\",function(a){g=a});this.step=function(a,c,d){this.complete(a);c&&l.Sd(1,!0,d);return!0};this.complete=function(a){for(var c=[g];0<c.length;){var d=c.shift();(!d.M||d.parent&&d.parent.Z)&&d.Qa&&d.o&&k(d,a);d.u&&((d.parent&&d.parent.Z||d.La)&&f(d),m.xd(d,c))}};this.Mb=this.qc=this.xe=D.ta};var Sa=new function(){this.Gg=function(a){a.beginPath();a.moveTo(3.2,497);a.bezierCurveTo(0.1,495.1,0,494.1,0,449.6);a.bezierCurveTo(0,403.5,-0.1,404.8,4.1,402.6);a.bezierCurveTo(5.2,402,7.4,401.4,9,401.2);a.bezierCurveTo(10.6,401,31.2,400.6,54.7,400.2);a.bezierCurveTo(99.5,399.4,101,399.5,104.6,402.3);a.bezierCurveTo(107.9,404.9,107.6,404,129.3,473.2);a.bezierCurveTo(131,478.6,132.9,484.4,133.4,486.1);a.bezierCurveTo(135.2,491.4,135.4,494.9,134,496.4);a.bezierCurveTo(132.8,497.7,131.7,497.7,68.6,\n497.7);a.bezierCurveTo(24.2,497.7,4,497.5,3.2,497);a.closePath();a.fillStyle=\"rgba(220,20,3,1)\";a.fill();a.beginPath();a.moveTo(162.1,497);a.bezierCurveTo(159.5,496.3,157.7,494.6,156.2,491.6);a.bezierCurveTo(155.5,490.3,148.7,469.4,141.1,445.2);a.bezierCurveTo(126.1,397.5,125.6,395.4,128.1,389.8);a.bezierCurveTo(129.5,386.7,164.1,339,168,334.9);a.bezierCurveTo(170.3,332.5,172.2,332.1,175.1,333.7);a.bezierCurveTo(176.1,334.2,189.3,347,204.3,362.1);a.bezierCurveTo(229.4,387.4,231.8,390,233.5,394);a.bezierCurveTo(235.2,\n397.8,235.4,399.2,235.4,404.3);a.bezierCurveTo(235.3,415,230.5,489.9,229.8,492.5);a.bezierCurveTo(228.4,497.5,229.2,497.4,194.7,497.5);a.bezierCurveTo(177.8,497.6,163.1,497.4,162.1,497);a.closePath();a.fillStyle=\"rgba(220,20,3,1)\";a.fill();a.beginPath();a.moveTo(258.7,497);a.bezierCurveTo(255.8,496.1,252.6,492.3,252,489.1);a.bezierCurveTo(251.4,484.8,256.8,405.2,258.1,401.1);a.bezierCurveTo(260.4,393.4,262.7,391.1,300.4,359.2);a.bezierCurveTo(319.9,342.6,337.7,327.9,339.9,326.5);a.bezierCurveTo(347.4,\n321.6,350.4,321,372,320.5);a.bezierCurveTo(393.4,320,400.5,320.4,407.5,322.5);a.bezierCurveTo(413.9,324.4,487.4,359.5,490.6,362.1);a.bezierCurveTo(492,363.3,493.9,365.8,495,367.7);a.lineTo(496.8,371.2);a.lineTo(497,419.3);a.bezierCurveTo(497.1,445.7,497,468,496.8,468.8);a.bezierCurveTo(496.2,471.6,489.6,480.8,485,485.3);a.bezierCurveTo(478.6,491.7,474.9,494.1,468.2,496);a.lineTo(462.3,497.7);a.lineTo(361.6,497.7);a.bezierCurveTo(303.1,497.6,259.9,497.3,258.7,497);a.closePath();a.fillStyle=\"rgba(200,200,200,1)\";\na.fill();a.beginPath();a.moveTo(4.4,380.8);a.bezierCurveTo(2.9,380.2,1.7,379.8,1.6,379.8);a.bezierCurveTo(1.5,379.8,1.2,378.8,0.7,377.6);a.bezierCurveTo(0.2,376.1,0,361.6,0,331.2);a.bezierCurveTo(0,281.2,-0.2,283.1,4.9,280.9);a.bezierCurveTo(7.1,279.9,19.3,278.2,54.8,274.1);a.bezierCurveTo(80.6,271.1,102.9,268.6,104.4,268.6);a.bezierCurveTo(105.8,268.6,109.1,269.4,111.7,270.4);a.bezierCurveTo(116,272.1,117.2,273.2,133.4,289.3);a.bezierCurveTo(150.9,306.8,153.4,310,153.4,314.5);a.bezierCurveTo(153.4,\n317.6,151.1,321.3,136.4,341.2);a.bezierCurveTo(109.4,377.8,111.6,375.3,105.4,378.1);a.lineTo(101.3,380);a.lineTo(75.7,380.5);a.bezierCurveTo(6.8,381.8,7.3,381.8,4.4,380.8);a.closePath();a.fillStyle=\"rgba(220,20,3,1)\";a.fill();a.beginPath();a.moveTo(243.5,372.4);a.bezierCurveTo(240.2,370.8,136.6,266.7,134.2,262.6);a.bezierCurveTo(132.1,259,131.7,254.9,133.2,251.3);a.bezierCurveTo(134.5,248.2,166.3,206,169.3,203.4);a.bezierCurveTo(172.6,200.5,178.5,198.4,183.2,198.4);a.bezierCurveTo(187.1,198.4,275.2,\n204.1,281.6,204.8);a.bezierCurveTo(289.7,205.7,294.6,208.7,297.6,214.6);a.bezierCurveTo(300.5,220.3,327.4,297.4,327.8,301.1);a.bezierCurveTo(328.3,305.7,326.7,310.4,323.4,314);a.bezierCurveTo(322,315.6,307.8,327.9,291.9,341.3);a.bezierCurveTo(256.2,371.4,256.6,371.2,253.9,372.5);a.bezierCurveTo(251.1,373.9,246.5,373.9,243.5,372.4);a.closePath();a.fillStyle=\"rgba(220,20,3,1)\";a.fill();a.beginPath();a.moveTo(489.3,339.1);a.bezierCurveTo(488.6,338.9,473.7,331.9,456.3,323.6);a.bezierCurveTo(435.9,313.9,\n423.8,307.8,422.4,306.4);a.bezierCurveTo(419.5,303.7,418,300.2,418,296.1);a.bezierCurveTo(418,292.5,438,185,439.3,181.6);a.bezierCurveTo(441.2,176.6,445.5,173.1,450.8,172.1);a.bezierCurveTo(456,171.2,487.1,169.2,489.6,169.7);a.bezierCurveTo(493.1,170.3,495.5,171.9,497,174.7);a.bezierCurveTo(498.1,176.7,498.2,181.7,498.4,253.2);a.bezierCurveTo(498.5,295.3,498.4,330.9,498.2,332.5);a.bezierCurveTo(497.5,337.4,493.7,340.2,489.3,339.1);a.closePath();a.fillStyle=\"rgba(220,20,3,1)\";a.fill();a.beginPath();\na.moveTo(353.2,300.7);a.bezierCurveTo(350.4,299.8,347.9,297.9,346.5,295.6);a.bezierCurveTo(345.8,294.5,338.2,273.7,329.6,249.5);a.bezierCurveTo(314.6,207.1,314.1,205.3,314.1,200.4);a.bezierCurveTo(314.1,196.7,314.4,194.6,315.3,193);a.bezierCurveTo(316,191.7,322.5,181.6,329.8,170.6);a.bezierCurveTo(346.8,144.8,345.4,145.8,365.8,144.4);a.bezierCurveTo(380.9,143.4,385.7,143.7,390.6,146.3);a.bezierCurveTo(397.3,149.8,417.4,164.4,419.2,167);a.bezierCurveTo(422.4,171.8,422.4,171.8,410.6,234.4);a.bezierCurveTo(402.3,\n278.6,399.3,293.2,398.1,295.3);a.bezierCurveTo(395.4,300.1,393.7,300.5,373,300.9);a.bezierCurveTo(363.1,301.1,354.2,301,353.2,300.7);a.closePath();a.fillStyle=\"rgba(220,20,3,1)\";a.fill();a.beginPath();a.moveTo(6.2,259.9);a.bezierCurveTo(4.9,259.2,3.2,257.8,2.4,256.8);a.bezierCurveTo(1,254.9,1,254.8,0.8,148.7);a.bezierCurveTo(0.7,74,0.9,40.8,1.4,36.7);a.bezierCurveTo(2.3,29.6,4.7,24.4,9.8,18.3);a.bezierCurveTo(14.1,13.1,20.9,7.3,25,5.3);a.bezierCurveTo(26.5,4.6,31,3.3,34.9,2.6);a.bezierCurveTo(41.3,\n1.3,44.2,1.2,68.5,1.4);a.lineTo(95.1,1.6);a.lineTo(99,3.5);a.bezierCurveTo(101.2,4.6,103.9,6.6,105.2,8.1);a.bezierCurveTo(107.7,11,153.1,88.2,155.8,94);a.bezierCurveTo(159.1,101.4,159.6,104.7,159.5,121.6);a.bezierCurveTo(159.5,147.8,158.4,177.2,157.3,181);a.bezierCurveTo(156.8,182.8,155.6,186.1,154.6,188.1);a.bezierCurveTo(152.6,192.2,119.5,237.2,115.1,241.8);a.bezierCurveTo(112.1,244.9,106.3,248.3,102,249.4);a.bezierCurveTo(99.2,250.1,13,261.1,10.1,261.1);a.bezierCurveTo(9.2,261.1,7.5,260.6,6.2,\n259.9);a.closePath();a.fillStyle=\"rgba(200,200,200,1)\";a.fill();a.beginPath();a.moveTo(234.1,183.4);a.bezierCurveTo(180.2,179.7,182.3,180,179.5,174.5);a.lineTo(178,171.4);a.lineTo(178.7,142.4);a.bezierCurveTo(179.4,114.8,179.5,113.3,180.9,110.4);a.bezierCurveTo(183.5,105,182.7,105.2,237.9,95.3);a.bezierCurveTo(285.1,86.7,287.9,86.3,291,87.1);a.bezierCurveTo(292.8,87.6,295.3,88.8,296.7,89.9);a.bezierCurveTo(299.1,91.8,321.9,124.4,325,130.3);a.bezierCurveTo(326.9,134,327.2,139.1,325.7,142.6);a.bezierCurveTo(324.5,\n145.5,302.5,179.1,300.2,181.5);a.bezierCurveTo(297,184.9,293.5,186.3,287.4,186.5);a.bezierCurveTo(284.4,186.6,260.4,185.2,234.1,183.4);a.closePath();a.fillStyle=\"rgba(220,20,3,1)\";a.fill();a.beginPath();a.moveTo(435.8,153.4);a.bezierCurveTo(434.8,153.1,433,152.3,431.7,151.6);a.bezierCurveTo(428.4,150,410.1,137.1,407,134.4);a.bezierCurveTo(404.1,131.8,402.7,128.3,403.2,125.1);a.bezierCurveTo(403.6,122.9,420.3,81.3,423,75.9);a.bezierCurveTo(424.7,72.6,426.6,70.4,429.3,68.9);a.bezierCurveTo(431.1,67.9,\n435,67.7,462.2,67.6);a.lineTo(493.1,67.3);a.lineTo(495.4,69.6);a.bezierCurveTo(497,71.3,497.8,72.8,498.1,75);a.bezierCurveTo(498.4,76.6,498.5,92.9,498.4,111.1);a.bezierCurveTo(498.2,141.2,498.1,144.3,497,146.3);a.bezierCurveTo(494.8,150.3,493.3,150.6,470.3,152.4);a.bezierCurveTo(448.6,154,438.8,154.3,435.8,153.4);a.closePath();a.fillStyle=\"rgba(220,20,3,1)\";a.fill();a.beginPath();a.moveTo(346.6,125.3);a.bezierCurveTo(345,124.5,342.6,122.6,341.4,121);a.bezierCurveTo(337.1,115.7,313,79.8,311.6,76.7);\na.bezierCurveTo(309.4,71.7,309.3,68,311.2,58.2);a.bezierCurveTo(319.2,16.9,321.3,7.1,322.4,5.2);a.bezierCurveTo(323.1,4,324.7,2.4,326,1.6);a.bezierCurveTo(328.3,0.3,329.4,0.3,353.9,0.3);a.bezierCurveTo(379.2,0.3,379.5,0.3,382.4,1.8);a.bezierCurveTo(384,2.7,386,4.5,386.9,5.9);a.bezierCurveTo(388.6,8.6,405.1,46.3,407.2,52.2);a.bezierCurveTo(408.7,56.3,408.8,60.7,407.7,64.1);a.bezierCurveTo(407.3,65.4,402.2,78.2,396.3,92.7);a.bezierCurveTo(382.6,126.3,384.1,124.6,366.6,126);a.bezierCurveTo(353.4,127.1,\n350,127,346.6,125.3);a.closePath();a.fillStyle=\"rgba(220,20,3,1)\";a.fill();a.beginPath();a.moveTo(179.2,85.6);a.bezierCurveTo(175.7,84.6,171.9,82,170,79.2);a.bezierCurveTo(167.2,75.2,130.6,12.4,129.3,9.3);a.bezierCurveTo(128.2,6.7,128.1,5.9,128.8,4.2);a.bezierCurveTo(130.5,0,125.2,0.3,211.7,0);a.bezierCurveTo(255.3,-0.1,292.2,0,293.9,0.3);a.bezierCurveTo(297.7,0.8,301.1,4,301.8,7.6);a.bezierCurveTo(302.3,10.5,293.9,55.2,291.9,59.6);a.bezierCurveTo(290.4,63,286.1,66.9,282.3,68.3);a.bezierCurveTo(279.6,\n69.3,193.5,85.1,185.5,86.1);a.bezierCurveTo(183.8,86.3,181,86.1,179.2,85.6);a.closePath();a.fillStyle=\"rgba(220,20,3,1)\";a.fill();a.beginPath();a.moveTo(431.9,47.7);a.bezierCurveTo(428.7,46.9,426.4,45.2,424.6,42.3);a.bezierCurveTo(421.8,37.8,409.2,7.7,409.2,5.5);a.bezierCurveTo(409.2,1.2,408,1.3,451.6,1.3);a.bezierCurveTo(495,1.3,494,1.2,496.1,5.4);a.bezierCurveTo(497,7.2,497.2,10.2,497,25.5);a.lineTo(496.8,43.5);a.lineTo(494.9,45.4);a.lineTo(493,47.3);a.lineTo(474.8,47.7);a.bezierCurveTo(450.1,48.3,\n434.5,48.3,431.9,47.7);a.closePath();a.fillStyle=\"rgba(200,200,200,1)\";a.fill();a.beginPath();a.moveTo(1.3,511.9);a.lineTo(1.3,514.3);a.lineTo(3.7,514.3);a.bezierCurveTo(7.2,514.4,9.5,515.5,10.6,517.6);a.bezierCurveTo(11.7,519.8,12.1,522.7,12,526.3);a.lineTo(12,591);a.lineTo(22.8,591);a.lineTo(22.8,553.2);a.lineTo(49.9,553.2);a.lineTo(49.9,548.5);a.lineTo(22.8,548.5);a.lineTo(22.8,516.7);a.lineTo(41.9,516.7);a.bezierCurveTo(46.7,516.7,50.4,517.8,52.9,520);a.bezierCurveTo(55.5,522.2,56.8,525.7,56.8,\n530.5);a.lineTo(59.2,530.5);a.lineTo(59.2,521.5);a.bezierCurveTo(59.3,519,58.7,516.8,57.3,514.9);a.bezierCurveTo(55.9,513,53.1,512,49,511.9);a.closePath();a.fillStyle=\"rgba(220,20,3,1)\";a.fill();a.beginPath();a.moveTo(107.6,562.8);a.bezierCurveTo(107.6,569.9,106.2,575.7,103.5,580.3);a.bezierCurveTo(100.8,584.8,97.2,587.2,92.7,587.4);a.bezierCurveTo(88.1,587.2,84.5,584.8,81.8,580.3);a.bezierCurveTo(79.1,575.7,77.8,569.9,77.7,562.8);a.bezierCurveTo(77.8,555.8,79.1,550,81.8,545.4);a.bezierCurveTo(84.5,\n540.8,88.1,538.4,92.7,538.3);a.bezierCurveTo(97.2,538.4,100.8,540.8,103.5,545.4);a.bezierCurveTo(106.2,550,107.6,555.8,107.6,562.8);a.moveTo(66.3,562.8);a.bezierCurveTo(66.4,571.1,68.7,578,73.2,583.5);a.bezierCurveTo(77.8,589.1,84.2,591.9,92.7,592.1);a.bezierCurveTo(101.1,591.9,107.6,589.1,112.1,583.5);a.bezierCurveTo(116.7,578,118.9,571.1,119,562.8);a.bezierCurveTo(118.9,554.5,116.7,547.6,112.1,542.1);a.bezierCurveTo(107.6,536.6,101.1,533.7,92.7,533.5);a.bezierCurveTo(84.2,533.7,77.8,536.6,73.2,\n542.1);a.bezierCurveTo(68.7,547.6,66.4,554.5,66.3,562.8);a.closePath();a.fillStyle=\"rgba(220,20,3,1)\";a.fill();a.beginPath();a.moveTo(161.5,579.6);a.bezierCurveTo(160.3,581.4,158.9,583.1,157.2,584.5);a.bezierCurveTo(155.4,585.9,153.1,586.7,150.1,586.8);a.bezierCurveTo(147,586.8,144.4,585.9,142.2,584);a.bezierCurveTo(140,582.1,138.9,579.3,138.8,575.4);a.bezierCurveTo(138.8,571.7,140.5,568.9,143.8,566.7);a.bezierCurveTo(147.2,564.6,151.9,563.5,157.9,563.4);a.lineTo(161.5,563.4);a.moveTo(172.3,591);\na.lineTo(172.3,558.6);a.bezierCurveTo(172.1,548.2,169.9,541.3,165.8,538);a.bezierCurveTo(161.7,534.7,156.9,533.2,151.3,533.5);a.bezierCurveTo(147.6,533.5,144.1,533.8,140.8,534.5);a.bezierCurveTo(137.4,535.1,135,536.2,133.4,537.7);a.bezierCurveTo(131.9,539.2,131.1,540.8,130.7,542.6);a.bezierCurveTo(130.4,544.4,130.3,546.4,130.4,548.5);a.lineTo(135.8,548.5);a.bezierCurveTo(136.7,544.6,138.3,542,140.5,540.5);a.bezierCurveTo(142.8,538.9,145.6,538.2,148.9,538.3);a.bezierCurveTo(152.6,538.1,155.6,539.4,\n157.9,542.2);a.bezierCurveTo(160.2,545,161.4,550.5,161.5,558.6);a.lineTo(157.9,558.6);a.bezierCurveTo(149.6,558.5,142.5,559.7,136.6,562.1);a.bezierCurveTo(130.7,564.5,127.6,568.9,127.4,575.4);a.bezierCurveTo(127.7,581.8,129.8,586.3,133.6,588.7);a.bezierCurveTo(137.4,591.1,141.1,592.3,144.7,592.1);a.bezierCurveTo(149.2,592.1,152.8,591.3,155.6,590);a.bezierCurveTo(158.3,588.6,160.3,587.1,161.5,585.6);a.lineTo(162.1,585.6);a.lineTo(166.3,591);a.closePath();a.fillStyle=\"rgba(220,20,3,1)\";a.fill();a.beginPath();\na.moveTo(200.3,539.5);a.bezierCurveTo(199.8,538,198.7,536.8,197,536);a.bezierCurveTo(195.4,535.1,193.1,534.7,190.2,534.7);a.lineTo(179.4,534.7);a.lineTo(179.4,537.1);a.lineTo(181.8,537.1);a.bezierCurveTo(185.3,537.1,187.6,538.2,188.7,540.4);a.bezierCurveTo(189.8,542.5,190.3,545.4,190.2,549.1);a.lineTo(190.2,591);a.lineTo(200.9,591);a.lineTo(200.9,545.2);a.bezierCurveTo(202.4,543.5,204.2,542,206.2,540.8);a.bezierCurveTo(208.3,539.6,210.5,538.9,212.9,538.9);a.bezierCurveTo(215.9,538.8,218.3,540,219.9,\n542.5);a.bezierCurveTo(221.6,544.9,222.4,549.1,222.5,555);a.lineTo(222.5,591);a.lineTo(233.2,591);a.lineTo(233.2,555);a.bezierCurveTo(233.3,553.8,233.2,552.3,233.2,550.6);a.bezierCurveTo(233.1,549,232.9,547.6,232.6,546.7);a.bezierCurveTo(233.9,544.8,235.7,543,238,541.4);a.bezierCurveTo(240.4,539.8,242.7,539,245.2,538.9);a.bezierCurveTo(248.2,538.8,250.6,540,252.3,542.5);a.bezierCurveTo(253.9,544.9,254.8,549.1,254.8,555);a.lineTo(254.8,591);a.lineTo(265.6,591);a.lineTo(265.6,555);a.bezierCurveTo(265.4,\n546.5,263.8,540.8,260.6,537.8);a.bezierCurveTo(257.4,534.7,253.4,533.3,248.8,533.5);a.bezierCurveTo(245.4,533.5,242.2,534.2,238.9,535.7);a.bezierCurveTo(235.7,537.1,233,539.2,230.9,541.9);a.bezierCurveTo(229.3,538.6,227.3,536.4,224.8,535.2);a.bezierCurveTo(222.3,534,219.5,533.4,216.5,533.5);a.bezierCurveTo(212.9,533.6,209.8,534.2,207.1,535.4);a.bezierCurveTo(204.5,536.5,202.4,537.9,200.9,539.5);a.closePath();a.fillStyle=\"rgba(220,20,3,1)\";a.fill();a.beginPath();a.moveTo(284,511.9);a.bezierCurveTo(279.9,\n512,277.2,513,275.8,514.9);a.bezierCurveTo(274.4,516.8,273.7,519,273.8,521.5);a.lineTo(273.8,530.5);a.lineTo(276.2,530.5);a.bezierCurveTo(276.3,525.7,277.6,522.2,280.1,520);a.bezierCurveTo(282.7,517.8,286.4,516.7,291.2,516.7);a.lineTo(302,516.7);a.lineTo(302,590.9);a.lineTo(312.7,590.9);a.lineTo(312.7,516.7);a.lineTo(339.7,516.7);a.lineTo(339.7,511.9);a.closePath();a.fillStyle=\"rgba(220,20,3,1)\";a.fill();a.beginPath();a.moveTo(349.4,590.9);a.lineTo(360.2,590.9);a.lineTo(360.2,546.7);a.bezierCurveTo(361.4,\n544.8,363,543.4,364.9,542.3);a.bezierCurveTo(366.9,541.2,369.1,540.7,371.5,540.7);a.bezierCurveTo(373.7,540.7,375.5,541,377.2,541.6);a.bezierCurveTo(378.9,542.2,380.2,543.1,381.1,544.3);a.lineTo(385.9,540.7);a.bezierCurveTo(385.3,539.5,384.7,538.4,384,537.5);a.bezierCurveTo(383.4,536.6,382.6,535.9,381.7,535.3);a.bezierCurveTo(380.8,534.7,379.7,534.2,378.3,533.9);a.bezierCurveTo(377,533.6,375.8,533.5,374.5,533.5);a.bezierCurveTo(370.9,533.6,367.9,534.3,365.5,535.7);a.bezierCurveTo(363.2,537,361.4,\n538.5,360.2,540.1);a.lineTo(359.6,540.1);a.bezierCurveTo(359,538.3,357.9,536.9,356.3,536);a.bezierCurveTo(354.6,535.1,352.4,534.7,349.4,534.7);a.lineTo(339.8,534.7);a.lineTo(339.8,537.1);a.lineTo(341,537.1);a.bezierCurveTo(344.5,537.1,346.8,538.2,347.9,540.4);a.bezierCurveTo(349,542.5,349.5,545.4,349.4,549.1);a.closePath();a.fillStyle=\"rgba(220,20,3,1)\";a.fill();a.beginPath();a.moveTo(440.3,559.8);a.bezierCurveTo(440.3,551.4,438.3,544.9,434.4,540.4);a.bezierCurveTo(430.4,535.8,424.4,533.5,416.3,533.5);\na.bezierCurveTo(408.8,533.7,403,536.6,399,542.1);a.bezierCurveTo(395,547.6,393,554.5,393,562.8);a.bezierCurveTo(393,571.1,395.1,578,399.3,583.5);a.bezierCurveTo(403.5,589.1,409.7,591.9,418.1,592.1);a.bezierCurveTo(422.6,592.2,426.7,591.2,430.2,589.2);a.bezierCurveTo(433.8,587.2,437,584,439.7,579.6);a.lineTo(437.3,577.8);a.bezierCurveTo(435.2,580.8,432.9,583.1,430.2,584.8);a.bezierCurveTo(427.6,586.5,424.4,587.3,420.5,587.4);a.bezierCurveTo(415.4,587.2,411.4,585.1,408.6,580.9);a.bezierCurveTo(405.8,\n576.8,404.4,571.3,404.4,564.6);a.lineTo(440,564.6);a.moveTo(404.4,559.8);a.bezierCurveTo(404.4,553.7,405.6,548.7,407.9,544.9);a.bezierCurveTo(410.3,541,413.3,539,416.9,538.9);a.bezierCurveTo(421.1,538.9,424.3,540.8,426.4,544.4);a.bezierCurveTo(428.4,548.1,429.5,553.2,429.5,559.8);a.closePath();a.fillStyle=\"rgba(220,20,3,1)\";a.fill();a.beginPath();a.moveTo(497.1,559.8);a.bezierCurveTo(497.1,551.4,495.1,544.9,491.2,540.4);a.bezierCurveTo(487.2,535.8,481.2,533.5,473.1,533.5);a.bezierCurveTo(465.6,533.7,\n459.9,536.6,455.9,542.1);a.bezierCurveTo(451.9,547.6,449.8,554.5,449.8,562.8);a.bezierCurveTo(449.8,571.1,451.9,578,456.1,583.5);a.bezierCurveTo(460.3,589.1,466.6,591.9,474.9,592.1);a.bezierCurveTo(479.4,592.2,483.5,591.2,487.1,589.2);a.bezierCurveTo(490.6,587.2,493.8,584,496.5,579.6);a.lineTo(494.1,577.8);a.bezierCurveTo(492,580.8,489.7,583.1,487.1,584.8);a.bezierCurveTo(484.4,586.5,481.2,587.3,477.3,587.4);a.bezierCurveTo(472.2,587.2,468.2,585.1,465.4,580.9);a.bezierCurveTo(462.6,576.8,461.2,571.3,\n461.2,564.6);a.lineTo(496.8,564.6);a.moveTo(461.2,559.8);a.bezierCurveTo(461.2,553.7,462.4,548.7,464.8,544.9);a.bezierCurveTo(467.1,541,470.1,539,473.7,538.9);a.bezierCurveTo(477.9,538.9,481.1,540.8,483.2,544.4);a.bezierCurveTo(485.3,548.1,486.3,553.2,486.3,559.8);a.closePath();a.fillStyle=\"rgba(220,20,3,1)\";a.fill()}};Sa.yc={width:498,height:592};function Ta(a,m){function k(a,b){var c=a.K.Nb,d=c/15,e=0.5*c/15,c=c/5,f=a.K.x,g=a.K.y;b.fillRect(f-e,g-e,d,d);b.fillRect(f-e-c,g-e,d,d);b.fillRect(f-e+c,g-e,d,d)}function f(a,b,c,d){null===a&&c.clearRect(0,0,I,R);var e,f=Array(W.length);for(e=W.length-1;0<=e;e--)f[e]=W[e].qa(c,d);for(e=W.length-1;0<=e;e--)f[e]&&W[e].W(c,d);U.Ic([c,A],function(d){var e;if(null!==a){c.save();c.globalCompositeOperation=\"destination-out\";c.fillStyle=c.strokeStyle=\"rgba(255, 255, 255, 1)\";for(e=a.length-1;0<=e;e--){var g=\na[e],h=g.o;h&&(c.save(),c.beginPath(),g.Sb(c),ha.le(c,h),c.fill(),g=t.lb*Math.pow(t.Ra,g.R-1),0<g&&(c.lineWidth=g/2,c.stroke()),c.restore())}c.restore()}d=d.scale;if(0!==b.length){e={};for(h=W.length-1;0<=h;h--)W[h].Og(e);for(g=Z.length-1;0<=g;g--)if(h=Z[g],e[h.id])for(var k=h.be,h=0;h<b.length;h++){var l=b[h];!l.parent||l.parent.Ca&&l.parent.M?k(l,d):l.ba.clear()}}for(e=W.length-1;0<=e;e--)g=W[e],f[e]&&g.ee(b,c,d)});for(e=W.length-1;0<=e;e--)f[e]&&W[e].Da(c);t.qd&&(c.canvas.style.opacity=0.99,setTimeout(function(){c.canvas.style.opacity=\n1},1))}function d(a){s===w?a<0.9*r&&(s=u,y=C,e()):a>=r&&(s=w,y=B,e())}function c(){function a(b,c,d){b.Bb=Math.floor(1E3*b.scale)-d*c;0<b.opacity&&!b.open&&c++;var e=b.e;if(e)for(var f=e.length-1;0<=f;f--)b.$&&a(e[f],c,d)}var b=null,c=null,e=null;U.Ic([],function(f){d(f.scale);var h=!1;Y.F(z,function(a){a.$&&(h=a.Md()||h,a.nc(),a.Wa=P.d(a)||a.Wa)});h&&(z.I=!0);var k=\"onSurfaceDirty\"===t.oh;Y.wd(z,function(a){a.parent&&a.parent.Z&&(a.ba.clear(),a.Wa=!0,k||(a.Ec=!0,a.ac.clear()));k&&(a.Ec=!0,a.ac.clear())});\nvar l=f.scale*f.scale;Y.wd(z,function(a){if(a.M){for(var b=a.e,c=0;c<b.length;c++)if(5<b[c].K.ja*l){a.X=!0;return}a.X=!1}});n(f);e=[];Y.Kc(z,function(a){if(a.parent.X&&a.ea&&a.$){e.push(a);for(var b=a.parent;b!==z&&(b.open||0===b.opacity);)b=b.parent;b!==z&&0.02>Math.abs(b.scale-a.scale)&&(a.scale=Math.min(a.scale,b.scale))}});a(z,0,\"flattened\"==t.ab?-1:1);e.sort(function(a,b){return a.Bb-b.Bb});if(g())b=e,c=null;else{var m={},p={},q=\"none\"!=t.Bd&&t.lb<t.mb/2,r=t.lb<t.Qc/2+t.Ad*t.Ye.a;Y.F(z,function(a){if(a.$&&\n!a.description&&(a.Z||a.I||a.Xc&&a.parent.X&&a.Wa)){var b,c,d=[a],e=a.C||a.parent.e;if(q)for(b=0;b<e.length;b++)(c=e[b])&&d.push(c);else if(r)if(!a.selected&&a.$a){c=!0;for(b=0;b<e.length;b++)e[b]?d.push(e[b]):c=!1;!c&&1<a.R&&d.push(a.parent)}else for(b=0;b<e.length;b++)(c=e[b])&&c.selected&&d.push(c);var f;for(b=a.parent;b!=z;)b.selected&&(f=b),b=b.parent;f&&d.push(f);for(b=0;b<d.length;b++){f=d[b];for(a=f.parent;a&&a!==z;)0<a.opacity&&(f=a),a=a.parent;p[f.id]=!0;Y.Fa(f,function(a){m[a.id]=!0})}}});\nb=e.filter(function(a){return m[a.id]});c=b.filter(function(a){return p[a.id]})}});(function(){var a=!1;t.ag&&Y.F(z,function(b){if(b.$&&0!==b.sa.a&&1!==b.sa.a)return a=!0,!1});a?(Y.Jc(z,function(a){if(a.$&&(a.opacity!==a.ad||a.Ma)){var b=a.e;if(b){for(var c=0,d=b.length-1;0<=d;d--)c=Math.max(c,b[d].Wc);a.Wc=c+a.opacity*a.sa.a}else a.Wc=a.opacity*a.sa.a}}),Y.F(z,function(a){if(a.$&&(a.opacity!==a.ad||a.Ma)){for(var b=a.Wc,c=a;(c=c.parent)&&c!==z;)b+=c.opacity*c.sa.a*t.Zf;a.rd=0<b?1-Math.pow(1-a.sa.a,\n1/b):0;a.ad=a.opacity}})):Y.F(z,function(a){a.$&&(a.rd=1,a.ad=-1)})})();return{wg:b,vg:c,ea:e}}function g(){var a=z.Z||z.I||\"none\"==t.ff;if(!a&&!z.empty()){var b=z.e[0].scale;Y.F(z,function(c){if(c.$&&c.ea&&c.scale!==b)return a=!0,!1})}!a&&0<t.Se&&1!=t.Va&&Y.F(z,function(b){if(b.$&&0<b.ka)return a=!0,!1});\"accurate\"==t.ff&&(a=(a=a||0===t.lb)||\"none\"!=t.Bd&&t.lb<t.mb/2,!a&&t.lb<t.Qc/2+t.Ad*t.Ye.a&&Y.F(z,function(b){if(b.$&&(b.selected&&!b.$a||!b.selected&&b.$a))return a=!0,!1}));return a}function l(){if(t.n!==\nt.xb)return!0;var a=\"polygonPlainFill polygonPlainStroke polygonGradientFill polygonGradientStroke labelPlainFill contentDecoration\".split(\" \");Y.F(z,function(b){if(b.$&&b.U)return a.push(\"polygonExposureShadow\"),!1});for(var b=a.length-1;0<=b;b--){var c=a[b];if(!!E[c]!==!!M[c])return!0}return!1}function e(){function a(c,d,e,f,g){function h(a,b,c,d,e){a[d]&&(b-=c*p[d],a[d]=!1,e&&(b+=c*p[e],a[e]=!0));return b}c=D.extend({},c);switch(e){case \"never\":c.labelPlainFill=!1;break;case \"always\":case \"auto\":c.labelPlainFill=\n!0}if(t.Oc)switch(f){case \"never\":c.contentDecoration=!1;break;case \"always\":case \"auto\":c.contentDecoration=!0}else c.contentDecoration=!1;var k=0;D.Ga(c,function(a,b){a&&(k+=d*p[\"contentDecoration\"===b?\"labelPlainFill\":b])});c.polygonExposureShadow=b;k+=2*p.polygonExposureShadow;if(k<=g||(k=h(c,k,2,\"polygonExposureShadow\"))<=g||(k=h(c,k,d,\"polygonGradientFill\",\"polygonPlainFill\"))<=g||(k=h(c,k,d,\"polygonGradientStroke\"))<=g||(k=h(c,k,d,\"polygonPlainStroke\"))<=g||\"auto\"===f&&(k=h(c,k,d,\"contentDecoration\"))<=\ng)return c;\"auto\"===e&&(k=h(c,k,d,\"labelPlainFill\"));return c}var b=s===u,c=0,d=0;Y.Ie(z,function(a){var b=1;Y.F(a,function(){b++});c+=b;d=Math.max(d,b)});var e={};switch(t.xh){case \"plain\":e.polygonPlainFill=!0;break;case \"gradient\":e.polygonPlainFill=!b,e.polygonGradientFill=b}switch(t.Bd){case \"plain\":e.polygonPlainStroke=!0;break;case \"gradient\":e.polygonPlainStroke=!b,e.polygonGradientStroke=b}E=a(e,c,t.Ej,t.Cj,t.Dj);M=a(e,2*d,\"always\",\"always\",t.hh);J=a(e,c,\"always\",\"always\",t.gh)}function b(a){return function(b,\nc){return b===s?!0===E[a]:!0===(c?M:J)[a]}}function h(a,b){return function(c,d){return a(c,d)&&b(c,d)}}function n(a){z.ea=!0;Y.wd(z,function(b){if(b.$&&b.X&&b.Ca&&b.M&&(z.I||b.Z||b.me)){b.me=!1;var c=b.e,d={x:0,y:0,f:0,i:0},e=!!b.u;if(1<I/a.f){var f;for(f=c.length-1;0<=f;f--)c[f].ea=!1;if(b.ea&&e)for(f=c.length-1;0<=f;f--)if(b=c[f],1!==b.scale&&(b.Ub(a,d),d.f=a.f/b.scale,d.i=a.i/b.scale),!1===b.ea&&b.o){var e=b.o,g=e.length;if(L.Ta(b.o,1===b.scale?a:d))b.ea=!0;else for(var h=0;h<g;h++)if(L.Mg(e[h],\ne[(h+1)%g],1===b.scale?a:d)){b.ea=!0;b.C&&(b=b.C[h])&&(c[b.index].ea=!0);break}}}else for(f=0;f<c.length;f++)c[f].ea=e}})}var r=v.pf()?50:1E4,p,q,s,u,w,x,y,C,B,K,A,I,R,O,P=new Ua(a),F=new Va(a),U,N,S,t=a.options,z,H,E,J,M;a.c.j(\"stage:initialized\",function(a,b,c,d){O=a;I=c;R=d;q=O.oc(\"wireframe\",t.xb,!1);u=q.getContext(\"2d\");w=new ga(u);x=O.oc(\"hifi\",t.n,!1);C=x.getContext(\"2d\");B=new ga(C);s=u;y=C;u.n=t.xb;w.n=t.xb;C.n=t.n;B.n=t.n;K=O.oc(\"tmp\",Math.max(t.n,t.xb),!0);A=K.getContext(\"2d\");A.n=1;[u,\nC,A].forEach(function(a){a.scale(a.n,a.n)})});a.c.j(\"stage:resized\",function(a,b,c,d){I=c;R=d;[u,C,A].forEach(function(a){a.scale(a.n,a.n)})});a.c.j(\"model:loaded\",function(b){function c(a){var b=0;if(!a.empty()){for(var d=a.e,e=d.length-1;0<=e;e--)b=Math.max(b,c(d[e]));b+=1}return a.ng=b}z=b;H=!0;c(z);e();a.c.p(\"render:renderers:resolved\",E,M,J)});var Q=\"groupFillType groupStrokeType wireframeDrawMaxDuration wireframeLabelDrawing wireframeContentDecorationDrawing finalCompleteDrawMaxDuration finalIncrementalDrawMaxDuration groupContentDecorator\".split(\" \"),\n$=[\"groupLabelLightColor\",\"groupLabelDarkColor\",\"groupLabelColorThreshold\",\"groupUnexposureLabelColorThreshold\"];a.c.j(\"options:changed\",function(a){function b(a,c,d,e){O.ej(a,d);c.n=d;e&&c.scale(d,d)}a.dataObject||(D.nb(a,Q)&&e(),D.nb(a,$)&&Y.F(z,function(a){a.yd=-1}));var c=D.Q(a,\"pixelRatio\");a=D.Q(a,\"wireframePixelRatio\");if(c||a)c&&b(x,y,t.n,!0),a&&b(q,s,t.xb,!0),b(K,A,Math.max(t.n,t.xb),!1)});a.c.j(\"zoom:initialized\",function(a){U=a});a.c.j(\"timeline:initialized\",function(a){N=a});a.c.j(\"api:initialized\",\nfunction(a){S=a});var Z=[{id:\"offsetPolygon\",be:function(a){if((a.selected||0<a.opacity&&!1===a.open||!a.X)&&a.ba.Na()){var b=a.ba;b.clear();if(a.aa){var c=a.aa,d=t.jh;0<d?(d=Math.min(1,d*Math.pow(1-t.kh*d,a.ng)),ha.qj(b,c,a.parent.K.Nb/32,d)):ha.le(b,c)}a.Vd=!0}}},{id:\"label\",be:function(a){a.Wa&&a.Xc&&P.k(a)}},{id:\"custom\",be:function(b,c){if(b.aa&&(0<b.opacity&&(!1===b.open||!0===b.selected)||!b.X)&&b.Ec&&a.options.Oc&&!b.na){var d={};S.od(d,b);S.pd(d,b);S.nd(d,b,!0);d.context=b.ac;d.polygonContext=\nb.ba;d.labelContext=b.Tc;d.shapeDirty=b.Vd;d.viewportScale=c;var e={groupLabelDrawn:!0,groupPolygonDrawn:!0};a.options.nh(a.Ud,d,e);e.groupLabelDrawn||(b.qf=!1);e.groupPolygonDrawn||(b.Wd=!1);b.Vd=!1;b.Ec=!1}}}].reverse(),W=[new function(a){var b=Array(a.length);this.ee=function(c,d,e){if(0!==c.length){var f,g,h=[],k=c[0].Bb;for(f=0;f<c.length;f++)g=c[f],g.Bb!==k&&(h.push(f),k=g.Bb);h.push(f);for(var l=k=0;l<h.length;l++){for(var m=h[l],p=a.length-1;0<=p;p--)if(b[p]){var n=a[p];d.save();for(f=k;f<\nm;f++)g=c[f],d.save(),g.Sb(d),n.vb.call(n,g,d,e),d.restore();n.hb.call(n,d,e);d.restore()}k=m}}};this.qa=function(c,d){for(var e=!1,f=a.length-1;0<=f;f--)b[f]=a[f].qa(c,d),e|=b[f];return e};this.W=function(c,d){for(var e=a.length-1;0<=e;e--)if(b[e]){var f=a[e];f.W.call(f,c,d)}};this.Da=function(c){for(var d=a.length-1;0<=d;d--)if(b[d]){var e=a[d];e.Da.call(e,c)}};this.Og=function(c){for(var d=a.length-1;0<=d;d--){var e=a[d];if(b[d])for(var f=e.Za.length-1;0<=f;f--)c[e.Za[f]]=!0}}}([{Za:[\"offsetPolygon\"],\nqa:b(\"polygonExposureShadow\"),W:function(a){A.save();A.scale(a.n,a.n)},Da:function(){A.restore()},d:function(){},hb:function(a){this.mg&&(this.mg=!1,a.save(),a.setTransform(1,0,0,1,0,0),a.drawImage(K,0,0,a.canvas.width,a.canvas.height,0,0,a.canvas.width,a.canvas.height),a.restore(),A.save(),A.setTransform(1,0,0,1,0,0),A.clearRect(0,0,K.width,K.height),A.restore())},vb:function(a,b,c){if(!(a.open&&a.X||a.ba.Na())){var d=t.Se*a.opacity*a.ka*(\"flattened\"==t.ab?1-a.parent.ka:(1-a.Kb)*a.parent.Kb)*(1.1<=\nt.Va?1:(t.Va-1)/0.1);0<d&&(A.save(),A.beginPath(),a.Sb(A),a.ba.Sa(A),A.shadowBlur=c*b.n*d,A.shadowColor=t.ph,A.fillStyle=\"rgba(0, 0, 0, 1)\",A.globalCompositeOperation=\"source-over\",A.globalAlpha=a.opacity,A.fill(),A.shadowBlur=0,A.shadowColor=\"transparent\",A.globalCompositeOperation=\"destination-out\",A.fill(),A.restore(),this.mg=!0)}}},{Za:[\"offsetPolygon\"],qa:function(){return!0},W:function(){function a(b){var d=b.sa,e=b.Db,f=b.selected,g=c(d.l*b.va+(e?t.Ch:0)+(f?t.Th:0)),h=c(d.s*b.wa+(e?t.Dh:0)+\n(f?t.Uh:0));b=b.Re;b.h=(d.h+(e?t.Bh:0)+(f?t.Sh:0))%360;b.s=h;b.l=g;return b}function c(a){return 100<a?100:0>a?0:a}var d=[{type:\"fill\",qa:b(\"polygonPlainFill\"),gd:function(b,c){c.fillStyle=T.Ac(a(b))}},{type:\"fill\",qa:b(\"polygonGradientFill\"),gd:function(b,d){var e=b.K.Nb,f=a(b),e=d.createRadialGradient(b.x,b.y,0,b.x,b.y,e*t.th);e.addColorStop(0,T.Y((f.h+t.qh)%360,c(f.s+t.sh),c(f.l+t.rh)));e.addColorStop(1,T.Y((f.h+t.uh)%360,c(f.s+t.wh),c(f.l+t.vh)));b.ba.Sa(d);d.fillStyle=e}},{type:\"stroke\",qa:h(b(\"polygonPlainStroke\"),\nfunction(){return 0<t.mb}),gd:function(a,b){var d=a.sa,e=a.Db,f=a.selected;b.strokeStyle=T.Y((d.h+t.bf+(e?t.Te:0)+(f?t.Ze:0))%360,c(d.s*a.wa+t.df+(e?t.Ve:0)+(f?t.af:0)),c(d.l*a.va+t.cf+(e?t.Ue:0)+(f?t.$e:0)));b.lineWidth=t.mb*Math.pow(t.Ra,a.R-1)}},{type:\"stroke\",qa:h(b(\"polygonGradientStroke\"),function(){return 0<t.mb}),gd:function(a,b){var d=a.K.Nb*t.$h,e=a.sa,f=Math.PI*t.Wh/180,d=b.createLinearGradient(a.x+d*Math.cos(f),a.y+d*Math.sin(f),a.x+d*Math.cos(f+Math.PI),a.y+d*Math.sin(f+Math.PI)),g=a.Db,\nh=a.selected,f=(e.h+t.bf+(g?t.Te:0)+(h?t.Ze:0))%360,k=c(e.s*a.wa+t.df+(g?t.Ve:0)+(h?t.af:0)),e=c(e.l*a.va+t.cf+(g?t.Ue:0)+(h?t.$e:0));d.addColorStop(0,T.Y((f+t.Xh)%360,c(k+t.Zh),c(e+t.Yh)));d.addColorStop(1,T.Y((f+t.ai)%360,c(k+t.ci),c(e+t.bi)));b.strokeStyle=d;b.lineWidth=t.mb*Math.pow(t.Ra,a.R-1)}}],e=Array(d.length);return function(a,b){for(var c=d.length-1;0<=c;c--)e[c]=d[c].qa(a,b);this.uj=d;this.Xg=e}}(),Da:function(){},d:function(){},hb:function(){},vb:function(a,b){if(a.Wd&&!((0===a.opacity||\na.open)&&a.X||a.ba.Na()||!t.Ee&&a.description)){var c=this.uj,d=this.Xg;b.beginPath();a.ba.Sa(b);for(var e=!1,f=!1,g=c.length-1;0<=g;g--){var h=c[g];if(d[g])switch(h.gd(a,b),h.type){case \"fill\":e=!0;break;case \"stroke\":f=!0}}c=(a.X?a.opacity:1)*a.sa.a;d=!a.empty();g=t.ag?a.rd:1;e&&(e=d&&a.X&&a.M&&a.e[0].$?1-a.e.reduce(function(a,b){return a+b.ua*b.Zd},0)/a.e.length*(1-t.Zf):1,b.globalAlpha=c*e*g,Wa(b));f&&(b.globalAlpha=c*(d?t.vi:1)*g,b.closePath(),Xa(b),b.stroke())}}},{Za:[\"offsetPolygon\"],qa:function(){return 0<\nt.Qc},W:function(){},Da:function(){},d:function(){},hb:function(){},vb:function(a,b,c){if(a.Wd&&a.selected&&!a.ba.Na()){b.globalAlpha=a.Ka;b.beginPath();var d=Math.pow(t.Ra,a.R-1);b.lineWidth=t.Qc*d;b.strokeStyle=t.Vh;var e=t.Ad;0<e&&(b.shadowBlur=e*d*c*b.n,b.shadowColor=t.Xe);a.ba.Sa(b);b.closePath();b.stroke()}}},{Za:[],qa:function(){return!0},W:function(){},Da:function(){},d:function(){},hb:function(){},vb:function(a,b){function c(d){var e=Sa.yc.width,f=Sa.yc.height,g=L.te(a.aa,a.K,e/f),g=Math.min(Math.min(0.9*\ng,0.5*a.q.i)/f,0.5*a.q.f/e);b.save();b.translate(a.x,a.y);b.globalAlpha=a.opacity*a.fa;b.scale(g,g);b.translate(-e/2,-f/2);d(b);b.restore()}a.na&&!a.ba.Na()&&c(function(a){Sa.Gg(a)})}},{Za:[],qa:function(a,b){return function(c,d){return a(c,d)||b(c,d)}}(b(\"labelPlainFill\"),h(b(\"contentDecoration\"),function(){return t.Oc})),W:function(){},Da:function(){},d:function(){},hb:function(){},vb:function(a,b,c){(0<a.opacity&&0<a.fa&&!a.open||!a.X)&&!a.ba.Na()&&(a.Uc=a.ra&&a.ra.la&&t.n*a.ra.fontSize*a.scale*\nc>=t.Ph,!t.Ee&&a.description?a.qb=a.parent.qb:\"auto\"===a.Gd?(b=a.Re,c=b.h+(b.s<<9)+(b.l<<16),a.yd!==c&&(a.qb=T.Cg(b)>(0>a.ka?t.di:t.Eh)?t.Fh:t.Oh,a.yd=c)):a.qb=a.Gd)}},{Za:[\"custom\"],qa:h(b(\"contentDecoration\"),function(){return t.Oc}),W:function(){},Da:function(){},d:function(){},hb:function(){},vb:function(a,b){!(0<a.opacity&&0<a.fa&&!a.open||!a.X)||a.ac.Na()||a.ba.Na()||(a.Uc||void 0===a.ra?(b.globalAlpha=a.fa*(a.X?a.opacity:1)*(a.empty()?1:t.$f),b.fillStyle=a.qb,b.strokeStyle=a.qb,a.ac.Sa(b)):\nk(a,b))}},{Za:[\"label\"],qa:b(\"labelPlainFill\"),W:function(){},Da:function(){},d:function(){},hb:function(){},vb:function(a,b,c){a.qf&&a.Xc&&(0<a.opacity&&0<a.fa&&!a.open||!a.X)&&!a.ba.Na()&&a.ra&&(b.fillStyle=a.qb,b.globalAlpha=a.fa*(a.X?a.opacity:1)*(a.empty()?1:t.$f),a.Uc?Ya(a,b,c):k(a,b))}}].reverse())];this.H=function(){p=ua.ji(function(){return ia.eh()},\"CarrotSearchFoamTree\",12096E5)($a());F.H()};this.clear=function(){s.clearRect(0,0,I,R);y.clearRect(0,0,I,R)};this.ee=function(){function a(){window.clearTimeout(b);\nb=setTimeout(function(){if(l()){var a=!g();f(null,d.ea,y,a);D.defer(function(){ca.rj()})}},Math.max(t.Fj,3*m.rg.Jd,3*m.rg.Id))}var b,d;return function(b){ab(F);d=c();var e=null!==d.vg,g=0<O.kc(\"hifi\"),h=g&&(e||!b);b=e||H||!b;H=!1;g&&!h&&ca.sj();f(d.vg,d.wg,h?y:s,b);Y.Fa(z,function(a){a.Z=!1;a.I=!1;a.$a=!1});h||a();t.Vf(e)}}();this.d=function(a){a=a||{};ab(F);z.I=!0;var b=c(),d=t.n;try{var e=D.B(a.pixelRatio,t.n);t.n=e;var g=O.oc(\"export\",e,!0),h=g.getContext(\"2d\");s===w&&(h=new ga(h));h.scale(e,e);\nvar k=D.Q(a,\"backgroundColor\");k&&(h.save(),h.fillStyle=a.backgroundColor,h.fillRect(0,0,I,R),h.restore());f(k?[]:null,b.wg,h,!0)}finally{t.n=d}return g.toDataURL(D.B(a.format,\"image/png\"),D.B(a.quality,0.8))};var ca=function(){function a(b,d,e,f){function g(a,b,c,d){return N.D.m({opacity:O.kc(a)}).ia({duration:c,G:{opacity:{end:b,P:d}},ca:function(){O.kc(a,this.opacity)}}).xa()}var h=D.Ed(O.kc(b),1),k=D.Ed(O.kc(e),0);if(!h||!k){for(var l=c.length-1;0<=l;l--)c[l].stop();c=[];h||c.push(g(b,1,d,X.Qb));\nk||c.push(g(e,0,f,X.og));return N.D.m({}).Ya(c).start()}}var b,c=[];return{sj:function(){t.qd?1!==q.style.opacity&&(q.style.visibility=\"visible\",x.style.visibility=\"hidden\",q.style.opacity=1,x.style.opacity=0):b&&b.Fb()||(b=a(\"wireframe\",t.Ne,\"hifi\",t.Ne))},rj:function(){t.qd?(x.style.visibility=\"visible\",q.style.visibility=\"hidden\",q.style.opacity=0,x.style.opacity=1):a(\"hifi\",t.yg,\"wireframe\",t.yg)}}}();ab=function(a){a.apply()};Wa=function(a){a.fill()};Xa=function(a){a.stroke()};return this}\nvar Wa,Xa,ab;function Ua(a){function m(a){return f.Nh?(e.fontFamily=d.fontFamily,e.fontStyle=d.fontStyle,e.fontVariant=d.fontVariant,e.fontWeight=d.fontWeight,e.lineHeight=d.lineHeight,e.horizontalPadding=d.ob,e.verticalPadding=d.eb,e.maxTotalTextHeight=d.sb,e.maxFontSize=d.rb,g.Cc(f.Mh,a,e),c.fontFamily=e.fontFamily,c.fontStyle=e.fontStyle,c.fontVariant=e.fontVariant,c.fontWeight=e.fontWeight,c.lineHeight=e.lineHeight,c.ob=e.horizontalPadding,c.eb=e.verticalPadding,c.sb=e.maxTotalTextHeight,c.rb=e.maxFontSize,\nc):d}function k(a){\"undefined\"!==typeof a.groupLabelFontFamily&&(d.fontFamily=a.groupLabelFontFamily);\"undefined\"!==typeof a.groupLabelFontStyle&&(d.fontStyle=a.groupLabelFontStyle);\"undefined\"!==typeof a.groupLabelFontVariant&&(d.fontVariant=a.groupLabelFontVariant);\"undefined\"!==typeof a.groupLabelFontWeight&&(d.fontWeight=a.groupLabelFontWeight);\"undefined\"!==typeof a.groupLabelLineHeight&&(d.lineHeight=a.groupLabelLineHeight);\"undefined\"!==typeof a.groupLabelHorizontalPadding&&(d.ob=a.groupLabelHorizontalPadding);\n\"undefined\"!==typeof a.groupLabelVerticalPadding&&(d.eb=a.groupLabelVerticalPadding);\"undefined\"!==typeof a.groupLabelMaxTotalHeight&&(d.sb=a.groupLabelMaxTotalHeight);\"undefined\"!==typeof a.groupLabelMaxFontSize&&(d.rb=a.groupLabelMaxFontSize)}var f=a.options,d={},c={},g,l={groupLabel:\"\"},e={};a.c.j(\"api:initialized\",function(a){g=a});a.c.j(\"options:changed\",k);k(a.Ud);this.d=function(a){if(!a.aa)return!1;var c=a.group.label;f.Hh&&!a.na&&(l.labelText=c,g.Cc(f.Gh,a,l),c=l.labelText);a.rf=c;return a.Hd!=\nc};this.k=function(a){var c=a.rf;a.Hd=c;a.Tc.clear();a.ra=void 0;!a.aa||D.kf(c)||\"flattened\"==f.ab&&!a.empty()&&a.M||(a.ra=G.ye(m(a),a.Tc,c,a.aa,a.q,a.K,!1,!1,a.li,a.K.ja,f.Qh,a.Wa));a.Wa=!1};Ya=this.A=function(a,c){a.Tc.Sa(c)}}var Ya;function Va(a){function m(a,c){var d=a.e,e=d.length,f,g,k=l.K.Nb;for(f=0;f<e;f++)g=d[f],g.Cb=(180*(Math.atan2(g.x-a.x,g.y-a.y)+c)/Math.PI+180)/360,g.Nc=Math.min(1,Math.sqrt(L.d(g,a))/k)}function k(a,c){var d=a.e,e=d.length;if(1===e||2===e&&d[0].description)d[0].Cb=0.5;else{var f,g,k=0,l=Number.MAX_VALUE,m=Math.sin(c),x=Math.cos(c);for(f=0;f<e;f++){g=d[f];var y=g.x*m+g.y*x;k<y&&(k=y);l>y&&(l=y);g.Cb=y;g.Nc=1}for(f=0;f<e;f++)g=d[f],g.Cb=(g.Cb-l)/(k-l)}}function f(a,c,d,e){c=c[e];return c+(d[e]-c)*a}\nvar d={radial:m,linear:k},c=a.options,g,l,e={groupColor:null,labelColor:null};a.c.j(\"model:loaded\",function(a){l=a});a.c.j(\"api:initialized\",function(a){g=a});this.H=function(){};this.apply=function(){function a(d){if(d.M&&d.Ca){var k=d.e,l,m;if(d.Z||d.Ma||u){0===d.R?n(d,c.Ui*Math.PI/180):r(d,c.Yi*Math.PI/180);for(l=k.length-1;0<=l;l--){m=k[l];m.Ma=!0;var A=m.Cb,I,R,O,P,F=m.Qe;0===d.R?(I=f(A,p,q,\"h\"),R=(x+(1-x)*m.Nc)*f(A,p,q,\"s\"),O=(1+(0>m.ka?w*(m.ka+1):w)*(1-m.Nc))*f(A,p,q,\"l\"),P=f(A,p,q,\"a\")):(O=\nd.sa,I=O.h,R=O.s,O=h(O.l,A,c.Zi,c.$i),P=d.Qe.a);F.h=I;F.s=R;F.l=O;F.a=P;I=m.sa;m.na?(I.h=0,I.s=0,I.l=\"light\"==c.Tg?90:10,I.a=1):(I.h=F.h,I.s=F.s,I.l=F.l,I.a=F.a);u&&!m.na&&(e.groupColor=I,e.labelColor=\"auto\",g.Cc(s,m,e,function(a){a.ratio=A}),m.sa=T.Ba(e.groupColor),m.sa.a=D.Q(e.groupColor,\"a\")?e.groupColor.a:1,\"auto\"!==e.labelColor&&(m.Gd=T.Ng(e.labelColor)))}d.Ma=!1}for(l=k.length-1;0<=l;l--)a(k[l])}}function h(a,b,c,d){var e=0>a+c*d?0:100<a+c*d?100:a+c*d;return e+b*((0>a-c*(1-d)?0:100<a-c*(1-d)?\n100:a-c*(1-d))-e)}var n=d[c.Ti]||m,r=k,p=c.cj,q=c.Wi,s=c.lh,u=c.mh,w=c.Xi,x=c.aj;a(l)};return this};function Ga(){this.uc=this.pe=this.rc=this.qg=this.f=this.xg=this.T=this.y=this.x=this.id=0;this.o=this.parent=this.e=null;this.q={x:0,y:0,f:0,i:0};this.C=null;this.Hd=this.rf=void 0;this.kd=!1;this.Nc=this.Cb=0;this.Qe={h:0,s:0,l:0,a:0,model:\"hsla\"};this.sa={h:0,s:0,l:0,a:0,model:\"hsla\"};this.Re={h:0,s:0,l:0,model:\"hsl\"};this.yd=-1;this.Gd=\"auto\";this.qb=\"#000\";this.ng=this.R=this.Dd=this.index=0;this.na=!1;this.ja=this.vf=0;this.ea=!1;this.aa=null;this.K={x:0,y:0,ja:0,Nb:0};this.Xd=this.u=null;\nthis.Xc=this.$=this.$a=this.Ec=this.me=this.Vd=this.Wa=this.Ma=this.I=this.Z=this.La=this.Ca=this.M=this.Qa=!1;this.wa=this.va=this.Ka=this.fa=this.opacity=this.scale=1;this.ua=0;this.Zd=1;this.Kb=this.ka=this.Gb=0;this.description=this.selected=this.Db=this.Td=this.open=this.U=!1;this.Bb=0;this.qf=this.Wd=this.X=!0;this.ra=void 0;this.Uc=!1;this.Tc=new ea;this.ba=new ea;this.ac=new ea;this.li=G.xi();this.Wc=0;this.rd=1;this.ad=-1;this.empty=function(){return!this.e||0===this.e.length};var a=[];this.Bc=\nfunction(d){a.push(d)};this.ed=function(d){D.cg(a,d)};var m={scale:1};this.Md=function(){var d=!1;this.scale=1;for(var c=0;c<a.length;c++)d=a[c].sf(this,m)||d,this.scale*=m.scale;return d};this.Sb=function(d){for(var c=0;c<a.length;c++)a[c].Sb(this,d)};this.Tb=function(d,c){c.x=d.x;c.y=d.y;for(var f=0;f<a.length;f++)a[f].Tb(this,c,c);return c};this.Ub=function(d,c){c.x=d.x;c.y=d.y;for(var f=0;f<a.length;f++)a[f].Ub(this,c,c);return c};var k=[];this.zb=function(a){k.push(a)};this.dd=function(a){D.cg(k,\na)};var f={opacity:1,wa:1,va:1,fa:1,Ka:1};this.nc=function(){if(0!==k.length){this.Ka=this.fa=this.va=this.wa=this.opacity=1;for(var a=k.length-1;0<=a;a--)(0,k[a])(this,f),this.opacity*=f.opacity,this.va*=f.va,this.wa*=f.wa,this.fa*=f.fa,this.Ka*=f.Ka}}}function Oa(a,m){return m.T>a.T?1:m.T<a.T?-1:a.index-m.index};function bb(a){var m=this,k,f,d,c,g=a.options,l,e;a.c.j(\"stage:initialized\",function(b,e,l,r){d=l;c=r;k=b.oc(\"titlebar\",g.n,!1);f=k.getContext(\"2d\");f.n=g.n;f.scale(f.n,f.n);a.c.p(\"titlebar:initialized\",m)});a.c.j(\"stage:resized\",function(a,e,g,k){d=g;c=k;f.scale(f.n,f.n)});a.c.j(\"zoom:initialized\",function(a){e=a});a.c.j(\"api:initialized\",function(a){l=a});a.c.j(\"model:loaded\",function(){f.clearRect(0,0,d,c)});this.update=function(a){f.clearRect(0,0,d,c);if(a){!a.empty()&&a.e[0].description&&(a=\na.e[0]);var h=g.zj,k=g.yj,m=Math.min(c/2,g.ne+2*h),p=m-2*h,q=d-2*k;if(!(0>=p||0>=q)){var s=a.Uc?a.ra.fontSize*a.scale*e.scale():0,u,w={titleBarText:a.Hd,titleBarTextColor:g.ug,titleBarBackgroundColor:g.tg,titleBarMaxFontSize:g.ne,titleBarShown:s<g.qi};a.na?u=xa.kg(\"B`ssnu!Rd`sbi!Gn`lUsdd!whrt`mh{`uhno/!Bmhbj!uid!mnfn!un!fn!un!iuuq;..b`ssnurd`sbi/bnl.gn`lusdd!gns!lnsd!edu`hmr/\"):(l.Cc(g.vj,a,w,function(a){a.titleBarWidth=q;a.titleBarHeight=p;a.labelFontSize=s;a.viewportScale=e.scale()}),u=w.titleBarText);\nu&&0!==u.length&&w.titleBarShown&&(a=e.md(a.Tb(a,{}),{}).y>c/2,h={x:k,y:a?h:c-m+h,f:q,i:p},k=L.A(h),f.fillStyle=g.tg,f.fillRect(0,a?0:c-m,d,m),f.fillStyle=g.ug,G.Me({fontFamily:g.wj||g.Ih,fontStyle:g.Xj||g.Jh,fontWeight:g.Zj||g.Lh,fontVariant:g.Yj||g.Kh,rb:g.ne,Yc:g.xj,ob:0,eb:0,sb:1},f,u,k,h,{x:h.x+h.f/2,y:h.y+h.i/2},!0,!0).la||f.clearRect(0,0,d,c))}}}};function cb(a){function m(a,b,c){w=!0;h&&h.stop();r&&r.stop();return g(e.reset(a),b,c).N(function(){w=!1})}function k(b){e.update(b);s.I=!0;a.c.p(\"foamtree:dirty\",!0)}function f(a,b){return e.d((0!==e.k()?0.35:1)*a,(0!==e.A()?0.35:1)*b)}function d(){if(1===b.Ob){var a=Math.round(1E4*e.k())/1E4;0!==a&&(n.$d=a,h=u.D.tc(n).ia({duration:500,G:{x:{start:a,end:0,P:X.Qb}},ca:function(){e.d(n.x-n.$d,0);k(1);n.$d=n.x}}).start())}}function c(){if(1===b.Ob){var a=Math.round(1E4*e.A())/1E4;0!==a&&(p.ae=a,r=u.D.tc(p).ia({duration:500,\nG:{y:{start:a,end:0,P:X.Qb}},ca:function(){e.d(0,p.y-p.ae);k(1);p.ae=p.y}}).start())}}function g(a,c,d){return a?u.D.tc(b).ia({duration:void 0===c?700:c,G:{Ob:{start:0,end:1,P:d||X.pg}},ca:function(){k(b.Ob)}}).bb():(new V).J().L()}function l(a){return function(){return w?(new V).J().L():a.apply(this,arguments)}}var e=new oa(a),b={Ob:1},h,n={Fe:0,x:0,$d:0},r,p={Ge:0,y:0,ae:0},q=this,s,u,w=!1;a.c.j(\"model:loaded\",function(a){s=a;e.reset(!1);e.update(1)});a.c.j(\"timeline:initialized\",function(a){u=\na});this.H=function(){a.c.p(\"zoom:initialized\",this)};this.reset=function(a,b){e.Pb(1);return m(!0,a,b)};this.normalize=l(function(a,b){e.Gc(1)?m(!1,a,b):q.wf()});this.wf=function(){d();c()};this.k=l(function(a,b,c,d){return q.sc(a.q,b,c,d)});this.Yb=l(function(a,b,c,d){return g(e.Yb(a,b),c,d)});this.sc=l(function(a,b,c,d){return g(e.sc(a,b),c,d)});this.Aj=l(function(a,b){e.sc(a,b)&&k(1)});this.si=l(function(a,c){1===b.Ob&&f(a,c)&&k(1)});this.Rg=l(function(a,b){e.Yb(a,b)&&k(1)});this.Qg=l(function(a,\nb,c,d){a=0|e.Yb(a,b);(a|=f(c,d))&&k(1)});this.ti=l(function(a,g,l){1===b.Ob&&(h=u.D.tc(n).ia({duration:a/0.03,G:{Fe:{start:g,end:0,P:X.Qb}},ca:function(){e.d(n.Fe,0)&&k(1);d()}}).start(),r=u.D.tc(p).ia({duration:a/0.03,G:{Ge:{start:l,end:0,P:X.Qb}},ca:function(){f(0,p.Ge)&&k(1);c()}}).start())});this.ui=function(){h&&0===e.k()&&h.stop();r&&0===e.A()&&r.stop()};this.Ic=function(a,b){e.Ic(a,b)};this.Pb=function(a){return e.Pb(a)};this.Gc=function(a){return e.Gc(a)};this.Rd=function(){return e.Rd()};\nthis.absolute=function(a,b){return e.absolute(a,b)};this.md=function(a,b){return e.md(a,b)};this.scale=function(){return e.scale()};this.d=function(a){return e.S(a)};this.content=function(a,b,c,d){e.content(a,b,c,d)}};function db(a,m,k){function f(a){var b=[];Y.F(n,function(c){a(c)&&b.push(c.group)});return{groups:b}}function d(a,b){var c=h.options,d=c.jj,e=c.ij,c=c.fe,f=0<d+e?c:0,g=[];Ca.Ja(a,Ca.ya(a,h.options.he),function(a,c,k){c=\"groups\"===h.options.ge?k:c;a.e&&(a=p.D.m(a).fb(f*(e+d*c)).call(b).xa(),g.push(a))});return p.D.m({}).Ya(g).bb()}function c(a){Q||(Q=!0,r.d(function(){Q=!1;h.c.p(\"repaint:before\");C.ee(this.Pg)},{Pg:a}))}function g(){function a(d,e){var f=d.$;d.$=e<=b;d.Xc=e<=c;d.$!=f&&Y.He(d,function(a){a.me=\n!0});d.open||d.Vb||e++;if(f=d.e)for(var g=0;g<f.length;g++)a(f[g],e)}var b=h.options.Nd,c=Math.min(h.options.Nd,h.options.oi);a(n,1)}function l(){var a=[],b=e();b.ri&&h.c.p(\"model:childrenAttached\",Y.Lc(n));b.dj&&y.complete(function(b){J.pb(b);a.push(b)});for(b=0;b<a.length;b++){var c=a[b];c.Ca=!0;A.d(c)}}function e(){var a=h.options.Nd,b=!1,c=!1;u.scale();u.scale();for(var d=[n,1];0<d.length;){var e=d.shift(),f=d.shift(),g=!e.na&&f<a,c=c||g;e.Qa=e.Qa||g;e.open||e.Vb||f++;var k=e.e;!k&&g&&(b=x.S(e)||\nb,k=e.e);if(k)for(e=0;e<k.length;e++)d.push(k[e],f)}return{ri:b,dj:c}}var b=this,h={c:new wa,options:m,Ud:k},n,r=new ba,p=new ya(r),q=aa.create(),s=new ja(h),u=new cb(h),w=new Ea(h),x=new Fa(h.options),y=new Pa(h),C=new Ta(h,r),B=new Ma(h);new bb(h);var K=new Ia(h),A=new Ja(h),I=new Ka(h),R=new La(h);h.c.j(\"stage:initialized\",function(a,b,c,d){S.gf(c,d)});h.c.j(\"stage:resized\",function(a,b,c,d){S.hj(a,b,c,d)});h.c.j(\"foamtree:attachChildren\",l);h.c.j(\"openclose:changing\",g);h.c.j(\"interaction:reset\",\nfunction(){M(!0)});h.c.j(\"foamtree:dirty\",c);this.H=function(){h.c.p(\"timeline:initialized\",p);n=x.H();s.H(a);w.H();C.H();B.H();K.H();A.H();u.H();I.H();R.H()};this.kb=function(){p.d();E.stop();r.k();s.kb()};var O=\"groupLabelFontFamily groupLabelFontStyle groupLabelFontVariant groupLabelFontWeight groupLabelLineHeight groupLabelHorizontalPadding groupLabelVerticalPadding groupLabelDottingThreshold groupLabelMaxTotalHeight groupLabelMinFontSize groupLabelMaxFontSize groupLabelDecorator\".split(\" \"),\nP=\"rainbowColorDistribution rainbowLightnessDistribution rainbowColorDistributionAngle rainbowLightnessDistributionAngle rainbowColorModelStartPoint rainbowLightnessCorrection rainbowSaturationCorrection rainbowStartColor rainbowEndColor rainbowHueShift rainbowHueShiftCenter rainbowSaturationShift rainbowSaturationShiftCenter rainbowLightnessShift rainbowLightnessShiftCenter attributionTheme\".split(\" \"),F=!1,U=[\"groupBorderRadius\",\"groupBorderRadiusCorrection\",\"groupBorderWidth\",\"groupInsetWidth\",\n\"groupBorderWidthScaling\"],N=[\"maxGroupLevelsDrawn\",\"maxGroupLabelLevelsDrawn\"];this.Wb=function(a){h.c.p(\"options:changed\",a);D.nb(a,O)&&Y.F(n,function(a){a.Wa=!0});D.nb(a,P)&&(n.Ma=!0);D.nb(a,U)&&(F=!0);D.nb(a,N)&&(g(),l())};this.reload=function(){t.reload()};this.Xb=function(a,b){D.defer(function(){if(F)S.mi(a),F=!1;else{if(b)for(var d=x.A(b),e=d.length-1;0<=e;e--)d[e].I=!0;else n.I=!0;c(a)}})};this.Y=function(){s.k()};this.update=function(){x.update();S.Bj()};this.reset=function(){return M(!1)};\nthis.S=C.d;this.Ba=function(){var a={};return function(b,c){var d=x.d(b);return d?w.nd(a,d,c):null}}();this.Aa=function(){var a={x:0,y:0},b={x:0,y:0};return function(c,d){var e=x.d(c);return e?(a.x=d.x,a.y=d.y,e.Tb(a,a),u.md(a,a),b.x=a.x,b.y=a.y,b):null}}();this.ya=function(){var a={};return function(b){return(b=x.d(b))?w.pd(a,b):null}}();this.gb=function(){var a={};return function(b){return(b=x.d(b))?w.od(a,b):null}}();this.za=function(){var a={};return function(){return u.d(a)}}();this.yc=function(){this.A({groups:f(function(a){return a.group.selected}),\nnewState:!0,keepPrevious:!1});this.k({groups:f(function(a){return a.group.open}),newState:!0,keepPrevious:!1});this.d({groups:f(function(a){return a.group.exposed}),newState:!0,keepPrevious:!1})};this.Ja=function(){return f(function(a){return a.U})};this.d=function(a){return t.submit(function(){return K.fc(x.k(a,\"exposed\",!1),!1,!0,!1)})};this.Pa=function(){return f(function(a){return a.open})};this.k=function(a){return t.submit(function(){return I.Jb(x.k(a,\"open\",!0),!1,!1)})};this.cb=function(){return f(function(a){return a.selected})};\nthis.A=function(a){return t.submit(function(){R.select(x.k(a,\"selected\",!0),!1);return(new V).J().L()})};this.Ac=function(a){return(a=x.d(a))?a===n?u.reset(m.wc,X.pa(m.xc)):u.k(a,m.Pc,m.wc,X.pa(m.xc)):(new V).J().L()};this.Ta=function(a){return B.gb[a]};this.zc=function(){var a=da;return{frames:a.frames,totalTime:a.totalTime,lastFrameTime:a.Id,lastInterFrameTime:a.Jd,fps:a.Pe}};var S=function(){function a(c,f){var g=c||d,h=f||e;d=g;e=h;var k=m.bc&&m.bc.boundary;k&&2<k.length?n.o=k.map(function(a){return{x:g*\na.x,y:h*a.y}}):n.o=[{x:0,y:0},{x:g,y:0},{x:g,y:h},{x:0,y:h}];b()}function b(){n.Z=!0;n.u=n.o;n.q=L.q(n.o,n.q);n.K=n;L.se(n.o,n.K)}var d,e;return{gf:a,hj:function(b,d,e,f){J.stop();var g=e/b,k=f/d;Y.Ie(n,function(a){a.x=a.x*g+(Math.random()-0.5)*e/1E3;a.y=a.y*k+(Math.random()-0.5)*f/1E3});a(e,f);n.La=!0;y.step(J.pb,!0,!1,function(a){var b=a.e;if(b){y.Mb(a);for(var c=b.length-1;0<=c;c--){var d=b[c];d.f=d.rc}a.La=!0}})?c(!1):(y.qc(n),h.options.de?(c(!1),E.dg(),E.fd()):(y.complete(J.pb),n.Ma=!0,c(!1)))},\nmi:function(a){var d=!1;n.empty()||(b(),E.Fb()||(d=y.step(J.pb,!1,!1),c(a)));return d},Bj:function(){Y.Fa(n,function(a){a.empty()||y.Mb(a)});y.qc(n);h.options.de?(E.dg(),Y.Fa(n,function(a){a.empty()||J.ef(a)})):(Y.Fa(n,function(a){a.empty()||J.pb(n)}),y.complete(J.pb),n.Ma=!0,c(!1))}}}(),t=function(){function a(){0===m.Yd&&u.reset(0);h.options.Uf(m.bc);S.gf();x.Y(m.bc);e();g();h.c.p(\"model:loaded\",n,Y.Lc(n));var b;n.empty()||(n.open=!0,n.Qa=!0,m.de?b=E.fd():(E.wi(),b=k()),c(),0<m.fe?(C.clear(),s.d(1)):\nb=pa([b,f(1)]));h.options.Tf(m.bc);b&&(h.options.Xf(),b.N(function(){r.d(h.options.Wf)}))}function c(){var a=m.Ua,d=m.bd;m.Ua=0;m.bd=0;b.yc();m.Ua=a;m.bd=d}function f(a,b){return 0===m.Le||b?(s.d(a),(new V).J().L()):p.D.m({opacity:s.d()}).oe(2).ia({duration:m.Le,G:{opacity:{end:a,P:X.pa(m.fh)}},ca:function(){s.d(this.opacity)}}).bb()}function k(){Y.Fa(n,function(a){a.Ca=!1});var a=new V,b=new qa(a.J);b.d();n.Ca=!0;A.d(n).N(b.k);d(n,function Za(){this.M&&this.o&&(this.Z=this.Ca=!0,b.d(),A.d(this).N(b.k),\nb.d(),d(this,Za).N(b.k))});return a.L()}function l(){for(var a=0;a<t.length;a++){var b=t[a],c=b.action();D.Q(c,\"then\")?c.N(b.Be.J):b.Be.J()}t=[]}var q=!1,t=[];return{reload:function(){q||(n.empty()?a():(J.stop(),p.d(),E.stop(),q=!0,pa(0<m.Yd?[A.k(),M(!1)]:[f(0)]).N(function(){f(0,!0);q=!1;a();D.defer(l)})))},submit:function(a){if(q){var b=new V;t.push({action:a,Be:b});return b.L()}return a()}}}(),z,H=new qa(function(){z.J()}),E=function(){function a(){f||(H.A()&&(z=new V),H.d(),b(),f=!0,r.repeat(e));\nreturn z.L()}function b(){g=q.now()}function e(){var b=q.now()-g>m.gj,b=y.step(function(b){b.Ca=!0;J.ef(b);H.d();A.d(b).N(H.k);H.d();d(b,function(){this.Qa=!0;a()}).N(H.k)},!0,b)||b;c(!0);b&&(f=!1,H.k());return b}var f=!1,g;return{wi:function(){y.complete(J.pb)},fd:a,dg:b,Fb:function(){return!H.A()},stop:function(){r.cancel(e);f=!1;H.clear()}}}(),J=function(){function a(b){var c=!b.empty();b.Ca=!0;if(c){for(var d=b.e,e=d.length-1;0<=e;e--){var f=d[e];f.f=f.rc}b.La=!0}return c}var b=[];return{ef:function(c){var d=\nh.options,e=d.zh;0<e?Ca.Ja(c,Ca.ya(c,h.options.he),function(a,c,f){c=\"groups\"===h.options.ge?f:c;H.d();b.push(p.D.m(a).fb(c*d.yh*e).ia({duration:e,G:{f:{start:a.qg,end:a.rc,P:X.pa(d.Ah)}},ca:function(){this.f=Math.max(0,this.f);this.parent.La=!0;E.fd()}}).ib(H.k).start())}):a(c)&&E.fd()},pb:a,stop:function(){for(var a=b.length-1;0<=a;a--)b[a].stop();b=[]}}}(),M=function(){var a=!1;return function(b){if(a)return(new V).J().L();a=!0;var c=[];c.push(u.reset(m.wc,X.pa(m.xc)));var d=new V;K.fc({e:[],Ia:!1,\nHa:!1},b,!1,!0).N(function(){I.Jb({e:[],Ia:!1,Ha:!1},b,!1).N(d.J)});c.push(d.L());return pa(c).N(function(){a=!1;b&&m.Yf()})}}(),Q=!1}function $a(){return{version:\"3.4.4\",build:\"36955f78f6b79223438db3b18b9b64b5aad799bb/36955f78\",brandingAllowed:!1}};v.Cd(function(){window.CarrotSearchFoamTree=function(a){function m(a,b){if(!l||l.exists(a))switch(a){case \"selection\":return h.cb();case \"open\":return h.Pa();case \"exposure\":return h.Ja();case \"state\":return h.ya.apply(this,b);case \"geometry\":return h.Ba.apply(this,b);case \"hierarchy\":return h.gb.apply(this,b);case \"containerCoordinates\":return h.Aa.apply(this,b);case \"imageData\":return h.S.apply(this,b);case \"viewport\":return h.za();case \"times\":return h.zc();case \"onModelChanged\":case \"onRedraw\":case \"onRolloutStart\":case \"onRolloutComplete\":case \"onRelaxationStep\":case \"onGroupHover\":case \"onGroupOpenOrCloseChanging\":case \"onGroupExposureChanging\":case \"onGroupSelectionChanging\":case \"onGroupSelectionChanged\":case \"onGroupClick\":case \"onGroupDoubleClick\":case \"onGroupHold\":var c=\ne[a];return Array.isArray(c)?c:[c];default:return e[a]}}function k(a){function c(a,b){return D.Q(f,a)?(b(f[a]),delete f[a],1):0}var f;if(0===arguments.length)return 0;1===arguments.length?f=D.extend({},arguments[0]):2===arguments.length&&(f={},f[arguments[0]]=arguments[1]);l&&l.validate(f,b.ni);var g=0;h&&(g+=c(\"selection\",h.A),g+=c(\"open\",h.k),g+=c(\"exposure\",h.d));var k={};D.Ga(f,function(a,b){if(e[b]!==a||D.jc(a))k[b]=a,g++;e[b]=a});0<g&&d(k);return g}function f(a,b){var c=\"on\"+a.charAt(0).toUpperCase()+\na.slice(1),f=e[c];e[c]=b(Array.isArray(f)?f:[f]);f={};f[c]=e[c];d(f)}function d(a){(function(){function c(b,d){return D.Q(a,b)||void 0===d?va.m(e[b],g):d}b.ni=e.logging;b.bc=e.dataObject;b.n=e.pixelRatio;b.xb=e.wireframePixelRatio;b.ab=e.stacking;b.dc=e.descriptionGroupType;b.Hc=e.descriptionGroupPosition;b.bh=e.descriptionGroupDistanceFromCenter;b.cc=e.descriptionGroupSize;b.De=e.descriptionGroupMinHeight;b.Ce=e.descriptionGroupMaxHeight;b.Ee=e.descriptionGroupPolygonDrawn;b.Vc=e.layout;b.lc=e.layoutByWeightOrder;\nb.tj=e.showZeroWeightGroups;b.We=e.groupMinDiameter;b.ce=e.rectangleAspectRatioPreference;b.fj=e.initializer||e.relaxationInitializer;b.gj=e.relaxationMaxDuration;b.de=e.relaxationVisible;b.bg=e.relaxationQualityThreshold;b.Rh=e.groupResizingBudget;b.zh=e.groupGrowingDuration;b.yh=e.groupGrowingDrag;b.Ah=e.groupGrowingEasing;b.jh=e.groupBorderRadius;b.lb=e.groupBorderWidth;b.Ra=e.groupBorderWidthScaling;b.zd=e.groupInsetWidth;b.kh=e.groupBorderRadiusCorrection;b.mb=e.groupStrokeWidth;b.Qc=e.groupSelectionOutlineWidth;\nb.Vh=e.groupSelectionOutlineColor;b.Ad=e.groupSelectionOutlineShadowSize;b.Xe=e.groupSelectionOutlineShadowColor;b.Sh=e.groupSelectionFillHueShift;b.Uh=e.groupSelectionFillSaturationShift;b.Th=e.groupSelectionFillLightnessShift;b.Ze=e.groupSelectionStrokeHueShift;b.af=e.groupSelectionStrokeSaturationShift;b.$e=e.groupSelectionStrokeLightnessShift;b.xh=e.groupFillType;b.th=e.groupFillGradientRadius;b.qh=e.groupFillGradientCenterHueShift;b.sh=e.groupFillGradientCenterSaturationShift;b.rh=e.groupFillGradientCenterLightnessShift;\nb.uh=e.groupFillGradientRimHueShift;b.wh=e.groupFillGradientRimSaturationShift;b.vh=e.groupFillGradientRimLightnessShift;b.Bd=e.groupStrokeType;b.mb=e.groupStrokeWidth;b.bf=e.groupStrokePlainHueShift;b.df=e.groupStrokePlainSaturationShift;b.cf=e.groupStrokePlainLightnessShift;b.$h=e.groupStrokeGradientRadius;b.Wh=e.groupStrokeGradientAngle;b.ai=e.groupStrokeGradientUpperHueShift;b.ci=e.groupStrokeGradientUpperSaturationShift;b.bi=e.groupStrokeGradientUpperLightnessShift;b.Xh=e.groupStrokeGradientLowerHueShift;\nb.Zh=e.groupStrokeGradientLowerSaturationShift;b.Yh=e.groupStrokeGradientLowerLightnessShift;b.Bh=e.groupHoverFillHueShift;b.Dh=e.groupHoverFillSaturationShift;b.Ch=e.groupHoverFillLightnessShift;b.Te=e.groupHoverStrokeHueShift;b.Ve=e.groupHoverStrokeSaturationShift;b.Ue=e.groupHoverStrokeLightnessShift;b.Va=e.groupExposureScale;b.ph=e.groupExposureShadowColor;b.Se=e.groupExposureShadowSize;b.Pc=e.groupExposureZoomMargin;b.ei=e.groupUnexposureLightnessShift;b.fi=e.groupUnexposureSaturationShift;b.di=\ne.groupUnexposureLabelColorThreshold;b.Ua=e.exposeDuration;b.gc=e.exposeEasing;b.bd=e.openCloseDuration;b.lh=va.m(e.groupColorDecorator,g);b.mh=e.groupColorDecorator!==D.ta;b.Gh=va.m(e.groupLabelDecorator,g);b.Hh=e.groupLabelDecorator!==D.ta;b.Mh=va.m(e.groupLabelLayoutDecorator,g);b.Nh=e.groupLabelLayoutDecorator!==D.ta;b.nh=va.m(e.groupContentDecorator,g);b.Oc=e.groupContentDecorator!==D.ta;b.oh=e.groupContentDecoratorTriggering;b.bj=e.rainbowStartColor;b.Vi=e.rainbowEndColor;b.Ti=e.rainbowColorDistribution;\nb.Ui=e.rainbowColorDistributionAngle;b.Yi=e.rainbowLightnessDistributionAngle;b.Zi=e.rainbowLightnessShift;b.$i=e.rainbowLightnessShiftCenter;b.aj=e.rainbowSaturationCorrection;b.Xi=e.rainbowLightnessCorrection;b.Zf=e.parentFillOpacity;b.vi=e.parentStrokeOpacity;b.$f=e.parentLabelOpacity;b.ag=e.parentOpacityBalancing;b.Qh=e.groupLabelUpdateThreshold;b.Ih=e.groupLabelFontFamily;b.Jh=e.groupLabelFontStyle;b.Kh=e.groupLabelFontVariant;b.Lh=e.groupLabelFontWeight;b.Ph=e.groupLabelMinFontSize;b.Pj=e.groupLabelMaxFontSize;\nb.Oj=e.groupLabelLineHeight;b.Nj=e.groupLabelHorizontalPadding;b.Rj=e.groupLabelVerticalPadding;b.Qj=e.groupLabelMaxTotalHeight;b.Fh=e.groupLabelDarkColor;b.Oh=e.groupLabelLightColor;b.Eh=e.groupLabelColorThreshold;b.Dj=e.wireframeDrawMaxDuration;b.Ej=e.wireframeLabelDrawing;b.Cj=e.wireframeContentDecorationDrawing;b.yg=e.wireframeToFinalFadeDuration;b.Fj=e.wireframeToFinalFadeDelay;b.gh=e.finalCompleteDrawMaxDuration;b.hh=e.finalIncrementalDrawMaxDuration;b.Ne=e.finalToWireframeFadeDuration;b.qd=\ne.androidStockBrowserWorkaround;b.ff=e.incrementalDraw;b.pi=e.maxGroups;b.Nd=e.maxGroupLevelsDrawn;b.oi=e.maxGroupLabelLevelsDrawn;b.he=e.rolloutStartPoint;b.ge=e.rolloutMethod;b.kj=e.rolloutEasing;b.fe=e.rolloutDuration;b.gg=e.rolloutScalingStrength;b.ig=e.rolloutTranslationXStrength;b.jg=e.rolloutTranslationYStrength;b.fg=e.rolloutRotationStrength;b.hg=e.rolloutTransformationCenter;b.oj=e.rolloutPolygonDrag;b.pj=e.rolloutPolygonDuration;b.lj=e.rolloutLabelDelay;b.mj=e.rolloutLabelDrag;b.nj=e.rolloutLabelDuration;\nb.jj=e.rolloutChildGroupsDrag;b.ij=e.rolloutChildGroupsDelay;b.Mi=e.pullbackStartPoint;b.Gi=e.pullbackMethod;b.Ci=e.pullbackEasing;b.Uj=e.pullbackType;b.Yd=e.pullbackDuration;b.Li=e.pullbackScalingStrength;b.Oi=e.pullbackTranslationXStrength;b.Pi=e.pullbackTranslationYStrength;b.Ki=e.pullbackRotationStrength;b.Ni=e.pullbackTransformationCenter;b.Hi=e.pullbackPolygonDelay;b.Ii=e.pullbackPolygonDrag;b.Ji=e.pullbackPolygonDuration;b.Di=e.pullbackLabelDelay;b.Ei=e.pullbackLabelDrag;b.Fi=e.pullbackLabelDuration;\nb.zi=e.pullbackChildGroupsDelay;b.Ai=e.pullbackChildGroupsDrag;b.Bi=e.pullbackChildGroupsDuration;b.Le=e.fadeDuration;b.fh=e.fadeEasing;b.Gj=e.zoomMouseWheelFactor;b.wc=e.zoomMouseWheelDuration;b.xc=e.zoomMouseWheelEasing;b.qi=e.maxLabelSizeForTitleBar;b.wj=e.titleBarFontFamily;b.tg=e.titleBarBackgroundColor;b.ug=e.titleBarTextColor;b.xj=e.titleBarMinFontSize;b.ne=e.titleBarMaxFontSize;b.yj=e.titleBarTextPaddingLeftRight;b.zj=e.titleBarTextPaddingTopBottom;b.vj=e.titleBarDecorator;b.Kj=e.attributionText;\nb.Hj=e.attributionLogo;b.Jj=e.attributionLogoScale;b.Lj=e.attributionUrl;b.we=e.attributionPosition;b.Sg=e.attributionDistanceFromCenter;b.Ug=e.attributionWeight;b.Tg=e.attributionTheme;b.hf=e.interactionHandler;b.Uf=c(\"onModelChanging\",b.Uf);b.Tf=c(\"onModelChanged\",b.Tf);b.Vf=c(\"onRedraw\",b.Vf);b.Xf=c(\"onRolloutStart\",b.Xf);b.Wf=c(\"onRolloutComplete\",b.Wf);b.Sd=c(\"onRelaxationStep\",b.Sd);b.Yf=c(\"onViewReset\",b.Yf);b.Mf=c(\"onGroupOpenOrCloseChanging\",b.Mf);b.Lf=c(\"onGroupOpenOrCloseChanged\",b.Lf);\nb.Ef=c(\"onGroupExposureChanging\",b.Ef);b.Df=c(\"onGroupExposureChanged\",b.Df);b.Of=c(\"onGroupSelectionChanging\",b.Of);b.Nf=c(\"onGroupSelectionChanged\",b.Nf);b.Gf=c(\"onGroupHover\",b.Gf);b.If=c(\"onGroupMouseMove\",b.If);b.yf=c(\"onGroupClick\",b.yf);b.zf=c(\"onGroupDoubleClick\",b.zf);b.Ff=c(\"onGroupHold\",b.Ff);b.Kf=c(\"onGroupMouseWheel\",b.Kf);b.Jf=c(\"onGroupMouseUp\",b.Jf);b.Hf=c(\"onGroupMouseDown\",b.Hf);b.Cf=c(\"onGroupDragStart\",b.Cf);b.Af=c(\"onGroupDrag\",b.Af);b.Bf=c(\"onGroupDragEnd\",b.Bf);b.Rf=c(\"onGroupTransformStart\",\nb.Rf);b.Pf=c(\"onGroupTransform\",b.Pf);b.Qf=c(\"onGroupTransformEnd\",b.Qf);b.Sf=c(\"onKeyUp\",b.Sf)})();b.cj=T.Ba(b.bj);b.Wi=T.Ba(b.Vi);b.Ye=T.Ba(b.Xe);b.Ij=null;h&&(h.Wb(a),D.Q(a,\"dataObject\")&&h.reload())}function c(a){return function(){return a.apply(this,arguments).ih(g)}}var g=this,l=window.CarrotSearchFoamTree.asserts,e=D.extend({},window.CarrotSearchFoamTree.defaults),b={};k(a);(a=e.element||document.getElementById(e.id))||na.Pa(\"Element to embed FoamTree in not found.\");e.element=a;var h=new db(a,\nb,e);h.H();var n={get:function(a){return 0===arguments.length?D.extend({},e):m(arguments[0],Array.prototype.slice.call(arguments,1))},set:k,on:function(a,b){f(a,function(a){a.push(b);return a})},off:function(a,b){f(a,function(a){return a.filter(function(a){return a!==b})})},resize:h.Y,redraw:h.Xb,update:h.update,select:c(h.A),expose:c(h.d),open:c(h.k),reset:c(h.reset),zoom:c(h.Ac),trigger:function(a,b){var c=h.Ta(a);c&&c(b)},dispose:function(){function a(){throw\"FoamTree instance disposed\";}h.kb();\nD.Ga(n,function(b,c){\"dispose\"!==c&&(g[c]=a)})}};D.Ga(n,function(a,b){g[b]=a});h.reload()};window[\"CarrotSearchFoamTree.asserts\"]&&(window.CarrotSearchFoamTree.asserts=window[\"CarrotSearchFoamTree.asserts\"],delete window[\"CarrotSearchFoamTree.asserts\"]);window.CarrotSearchFoamTree.supported=!0;window.CarrotSearchFoamTree.version=$a;window.CarrotSearchFoamTree.defaults=Object.freeze({id:void 0,element:void 0,logging:!1,dataObject:void 0,pixelRatio:1,wireframePixelRatio:1,layout:\"relaxed\",layoutByWeightOrder:!0,\nshowZeroWeightGroups:!0,groupMinDiameter:10,rectangleAspectRatioPreference:-1,relaxationInitializer:\"fisheye\",relaxationMaxDuration:3E3,relaxationVisible:!1,relaxationQualityThreshold:1,stacking:\"hierarchical\",descriptionGroupType:\"stab\",descriptionGroupPosition:225,descriptionGroupDistanceFromCenter:1,descriptionGroupSize:0.125,descriptionGroupMinHeight:35,descriptionGroupMaxHeight:0.5,descriptionGroupPolygonDrawn:!1,maxGroups:5E4,maxGroupLevelsDrawn:4,maxGroupLabelLevelsDrawn:3,groupGrowingDuration:0,\ngroupGrowingEasing:\"bounce\",groupGrowingDrag:0,groupResizingBudget:2,groupBorderRadius:0.15,groupBorderWidth:4,groupBorderWidthScaling:0.6,groupInsetWidth:6,groupBorderRadiusCorrection:1,groupSelectionOutlineWidth:5,groupSelectionOutlineColor:\"#222\",groupSelectionOutlineShadowSize:0,groupSelectionOutlineShadowColor:\"#fff\",groupSelectionFillHueShift:0,groupSelectionFillSaturationShift:0,groupSelectionFillLightnessShift:0,groupSelectionStrokeHueShift:0,groupSelectionStrokeSaturationShift:0,groupSelectionStrokeLightnessShift:-10,\ngroupFillType:\"gradient\",groupFillGradientRadius:1,groupFillGradientCenterHueShift:0,groupFillGradientCenterSaturationShift:0,groupFillGradientCenterLightnessShift:20,groupFillGradientRimHueShift:0,groupFillGradientRimSaturationShift:0,groupFillGradientRimLightnessShift:-5,groupStrokeType:\"plain\",groupStrokeWidth:1.5,groupStrokePlainHueShift:0,groupStrokePlainSaturationShift:0,groupStrokePlainLightnessShift:-10,groupStrokeGradientRadius:1,groupStrokeGradientAngle:45,groupStrokeGradientUpperHueShift:0,\ngroupStrokeGradientUpperSaturationShift:0,groupStrokeGradientUpperLightnessShift:20,groupStrokeGradientLowerHueShift:0,groupStrokeGradientLowerSaturationShift:0,groupStrokeGradientLowerLightnessShift:-20,groupHoverFillHueShift:0,groupHoverFillSaturationShift:0,groupHoverFillLightnessShift:20,groupHoverStrokeHueShift:0,groupHoverStrokeSaturationShift:0,groupHoverStrokeLightnessShift:-10,groupExposureScale:1.15,groupExposureShadowColor:\"rgba(0, 0, 0, 0.5)\",groupExposureShadowSize:50,groupExposureZoomMargin:0.1,\ngroupUnexposureLightnessShift:65,groupUnexposureSaturationShift:-65,groupUnexposureLabelColorThreshold:0.35,exposeDuration:700,exposeEasing:\"squareInOut\",groupColorDecorator:D.ta,groupLabelDecorator:D.ta,groupLabelLayoutDecorator:D.ta,groupContentDecorator:D.ta,groupContentDecoratorTriggering:\"onLayoutDirty\",openCloseDuration:500,rainbowColorDistribution:\"radial\",rainbowColorDistributionAngle:-45,rainbowLightnessDistributionAngle:45,rainbowSaturationCorrection:0.1,rainbowLightnessCorrection:0.4,rainbowStartColor:\"hsla(0, 100%, 55%, 1)\",\nrainbowEndColor:\"hsla(359, 100%, 55%, 1)\",rainbowLightnessShift:30,rainbowLightnessShiftCenter:0.4,parentFillOpacity:0.7,parentStrokeOpacity:1,parentLabelOpacity:1,parentOpacityBalancing:!0,wireframeDrawMaxDuration:15,wireframeLabelDrawing:\"auto\",wireframeContentDecorationDrawing:\"auto\",wireframeToFinalFadeDuration:500,wireframeToFinalFadeDelay:300,finalCompleteDrawMaxDuration:80,finalIncrementalDrawMaxDuration:100,finalToWireframeFadeDuration:200,androidStockBrowserWorkaround:v.jf(),incrementalDraw:\"fast\",\ngroupLabelFontFamily:\"sans-serif\",groupLabelFontStyle:\"normal\",groupLabelFontWeight:\"normal\",groupLabelFontVariant:\"normal\",groupLabelLineHeight:1.05,groupLabelHorizontalPadding:1,groupLabelVerticalPadding:1,groupLabelMinFontSize:6,groupLabelMaxFontSize:160,groupLabelMaxTotalHeight:0.9,groupLabelUpdateThreshold:0.05,groupLabelDarkColor:\"#000\",groupLabelLightColor:\"#fff\",groupLabelColorThreshold:0.35,rolloutStartPoint:\"center\",rolloutEasing:\"squareOut\",rolloutMethod:\"groups\",rolloutDuration:2E3,rolloutScalingStrength:-0.7,\nrolloutTranslationXStrength:0,rolloutTranslationYStrength:0,rolloutRotationStrength:-0.7,rolloutTransformationCenter:0.7,rolloutPolygonDrag:0.1,rolloutPolygonDuration:0.5,rolloutLabelDelay:0.8,rolloutLabelDrag:0.1,rolloutLabelDuration:0.5,rolloutChildGroupsDrag:0.1,rolloutChildGroupsDelay:0.2,pullbackStartPoint:\"center\",pullbackEasing:\"squareIn\",pullbackMethod:\"groups\",pullbackDuration:1500,pullbackScalingStrength:-0.7,pullbackTranslationXStrength:0,pullbackTranslationYStrength:0,pullbackRotationStrength:-0.7,\npullbackTransformationCenter:0.7,pullbackPolygonDelay:0.3,pullbackPolygonDrag:0.1,pullbackPolygonDuration:0.8,pullbackLabelDelay:0,pullbackLabelDrag:0.1,pullbackLabelDuration:0.3,pullbackChildGroupsDelay:0.1,pullbackChildGroupsDrag:0.1,pullbackChildGroupsDuration:0.3,fadeDuration:700,fadeEasing:\"cubicInOut\",zoomMouseWheelFactor:1.5,zoomMouseWheelDuration:500,zoomMouseWheelEasing:\"squareOut\",maxLabelSizeForTitleBar:8,titleBarFontFamily:null,titleBarFontStyle:\"normal\",titleBarFontWeight:\"normal\",titleBarFontVariant:\"normal\",\ntitleBarBackgroundColor:\"rgba(0, 0, 0, 0.5)\",titleBarTextColor:\"rgba(255, 255, 255, 1)\",titleBarMinFontSize:10,titleBarMaxFontSize:40,titleBarTextPaddingLeftRight:20,titleBarTextPaddingTopBottom:15,titleBarDecorator:D.ta,attributionText:null,attributionLogo:null,attributionLogoScale:0.5,attributionUrl:\"http://carrotsearch.com/foamtree\",attributionPosition:\"bottom-right\",attributionDistanceFromCenter:1,attributionWeight:0.025,attributionTheme:\"light\",interactionHandler:v.ii()?\"hammerjs\":\"builtin\",\nonModelChanging:[],onModelChanged:[],onRedraw:[],onRolloutStart:[],onRolloutComplete:[],onRelaxationStep:[],onViewReset:[],onGroupOpenOrCloseChanging:[],onGroupOpenOrCloseChanged:[],onGroupExposureChanging:[],onGroupExposureChanged:[],onGroupSelectionChanging:[],onGroupSelectionChanged:[],onGroupHover:[],onGroupMouseMove:[],onGroupClick:[],onGroupDoubleClick:[],onGroupHold:[],onGroupMouseWheel:[],onGroupMouseUp:[],onGroupMouseDown:[],onGroupDragStart:[],onGroupDrag:[],onGroupDragEnd:[],onGroupTransformStart:[],\nonGroupTransform:[],onGroupTransformEnd:[],onKeyUp:[],selection:null,open:null,exposure:null,imageData:null,hierarchy:null,geometry:null,containerCoordinates:null,state:null,viewport:null,times:null});window.CarrotSearchFoamTree.geometry=Object.freeze(function(){return{rectangleInPolygon:function(a,m,k,f,d,c,g){d=D.B(d,1);c=D.B(c,0.5);g=D.B(g,0.5);a=L.te(a,{x:m,y:k},f,c,g)*d;return{x:m-a*f*c,y:k-a*g,w:a*f,h:a}},circleInPolygon:function(a,m,k){return L.Eg(a,{x:m,y:k})},stabPolygon:function(a,m,k,f){return L.Wb(a,\n{x:m,y:k},f)},polygonCentroid:function(a){a=L.k(a,{});return{x:a.x,y:a.y,area:a.ja}},boundingBox:function(a){for(var m=a[0].x,k=a[0].y,f=a[0].x,d=a[0].y,c=1;c<a.length;c++){var g=a[c];g.x<m&&(m=g.x);g.y<k&&(k=g.y);g.x>f&&(f=g.x);g.y>d&&(d=g.y)}return{x:m,y:k,w:f-m,h:d-k}}}}())},function(){window.CarrotSearchFoamTree=function(){window.console.error(\"FoamTree is not supported on this browser.\")};window.CarrotSearchFoamTree.Wj=!1});})();\n\n\n\n/*** EXPORTS FROM exports-loader ***/\nmodule.exports = CarrotSearchFoamTree;\n\n/***/ }),\n/* 13 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _preact = __webpack_require__(0);\n\nvar _classnames = __webpack_require__(3);\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nvar _Tooltip = __webpack_require__(14);\n\nvar _Tooltip2 = _interopRequireDefault(_Tooltip);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } /** @jsx h */\n\n\nvar Tooltip = function (_Component) {\n _inherits(Tooltip, _Component);\n\n function Tooltip(props) {\n _classCallCheck(this, Tooltip);\n\n var _this = _possibleConstructorReturn(this, (Tooltip.__proto__ || Object.getPrototypeOf(Tooltip)).call(this, props));\n\n _this.saveNode = function (node) {\n return _this.node = node;\n };\n\n _this.onMouseMove = function (event) {\n Object.assign(_this.mouseCoords, {\n x: event.pageX,\n y: event.pageY\n });\n\n if (_this.props.visible) {\n _this.updatePosition();\n }\n };\n\n _this.mouseCoords = {\n x: 0,\n y: 0\n };\n\n _this.state = {\n left: 0,\n top: 0\n };\n return _this;\n }\n\n _createClass(Tooltip, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n document.addEventListener('mousemove', this.onMouseMove, false);\n }\n }, {\n key: 'shouldComponentUpdate',\n value: function shouldComponentUpdate(nextProps) {\n return this.props.visible || nextProps.visible;\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n document.removeEventListener('mousemove', this.onMouseMove);\n }\n }, {\n key: 'render',\n value: function render() {\n var _cls;\n\n var _props = this.props,\n children = _props.children,\n visible = _props.visible;\n\n var className = (0, _classnames2.default)((_cls = {}, _defineProperty(_cls, _Tooltip2.default.container, true), _defineProperty(_cls, _Tooltip2.default.hidden, !visible), _cls));\n\n return (0, _preact.h)(\n 'div',\n { ref: this.saveNode,\n className: className,\n style: this.getStyle() },\n children\n );\n }\n }, {\n key: 'getStyle',\n value: function getStyle() {\n return {\n left: this.state.left,\n top: this.state.top\n };\n }\n }, {\n key: 'updatePosition',\n value: function updatePosition() {\n if (!this.props.visible) return;\n\n var pos = {\n left: this.mouseCoords.x + Tooltip.marginX,\n top: this.mouseCoords.y + Tooltip.marginY\n };\n\n var boundingRect = this.node.getBoundingClientRect();\n\n if (pos.left + boundingRect.width > window.innerWidth) {\n // Shifting horizontally\n pos.left = window.innerWidth - boundingRect.width;\n }\n\n if (pos.top + boundingRect.height > window.innerHeight) {\n // Flipping vertically\n pos.top = this.mouseCoords.y - Tooltip.marginY - boundingRect.height;\n }\n\n this.setState(pos);\n }\n }]);\n\n return Tooltip;\n}(_preact.Component);\n\nTooltip.marginX = 10;\nTooltip.marginY = 30;\nexports.default = Tooltip;\n\n/***/ }),\n/* 14 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\nvar content = __webpack_require__(15);\n\nif(typeof content === 'string') content = [[module.i, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = __webpack_require__(2)(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(false) {\n\tmodule.hot.accept(\"!!../../node_modules/css-loader/index.js??ref--1-1!./Tooltip.css\", function() {\n\t\tvar newContent = require(\"!!../../node_modules/css-loader/index.js??ref--1-1!./Tooltip.css\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}\n\n/***/ }),\n/* 15 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(1)(false);\n// imports\n\n\n// module\nexports.push([module.i, \".Tooltip__container{font:normal 10px Verdana;position:absolute;padding:5px 10px;border-radius:4px;background:#fff;border:1px solid #aaa;opacity:.7;white-space:nowrap;visibility:visible;transition:opacity .2s ease,visibility .2s ease}.Tooltip__hidden{opacity:0;visibility:hidden}\", \"\"]);\n\n// exports\nexports.locals = {\n\t\"container\": \"Tooltip__container\",\n\t\"hidden\": \"Tooltip__hidden\"\n};\n\n/***/ }),\n/* 16 */\n/***/ (function(module, exports) {\n\n\n/**\n * When source maps are enabled, `style-loader` uses a link element with a data-uri to\n * embed the css on the page. This breaks all relative urls because now they are relative to a\n * bundle instead of the current page.\n *\n * One solution is to only use full urls, but that may be impossible.\n *\n * Instead, this function \"fixes\" the relative urls to be absolute according to the current page location.\n *\n * A rudimentary test suite is located at `test/fixUrls.js` and can be run via the `npm test` command.\n *\n */\n\nmodule.exports = function (css) {\n // get current location\n var location = typeof window !== \"undefined\" && window.location;\n\n if (!location) {\n throw new Error(\"fixUrls requires window.location\");\n }\n\n\t// blank or null?\n\tif (!css || typeof css !== \"string\") {\n\t return css;\n }\n\n var baseUrl = location.protocol + \"//\" + location.host;\n var currentDir = baseUrl + location.pathname.replace(/\\/[^\\/]*$/, \"/\");\n\n\t// convert each url(...)\n\t/*\n\tThis regular expression is just a way to recursively match brackets within\n\ta string.\n\n\t /url\\s*\\( = Match on the word \"url\" with any whitespace after it and then a parens\n\t ( = Start a capturing group\n\t (?: = Start a non-capturing group\n\t [^)(] = Match anything that isn't a parentheses\n\t | = OR\n\t \\( = Match a start parentheses\n\t (?: = Start another non-capturing groups\n\t [^)(]+ = Match anything that isn't a parentheses\n\t | = OR\n\t \\( = Match a start parentheses\n\t [^)(]* = Match anything that isn't a parentheses\n\t \\) = Match a end parentheses\n\t ) = End Group\n *\\) = Match anything and then a close parens\n ) = Close non-capturing group\n * = Match anything\n ) = Close capturing group\n\t \\) = Match a close parens\n\n\t /gi = Get all matches, not the first. Be case insensitive.\n\t */\n\tvar fixedCss = css.replace(/url\\s*\\(((?:[^)(]|\\((?:[^)(]+|\\([^)(]*\\))*\\))*)\\)/gi, function(fullMatch, origUrl) {\n\t\t// strip quotes (if they exist)\n\t\tvar unquotedOrigUrl = origUrl\n\t\t\t.trim()\n\t\t\t.replace(/^\"(.*)\"$/, function(o, $1){ return $1; })\n\t\t\t.replace(/^'(.*)'$/, function(o, $1){ return $1; });\n\n\t\t// already a full url? no change\n\t\tif (/^(#|data:|http:\\/\\/|https:\\/\\/|file:\\/\\/\\/)/i.test(unquotedOrigUrl)) {\n\t\t return fullMatch;\n\t\t}\n\n\t\t// convert the url to a full url\n\t\tvar newUrl;\n\n\t\tif (unquotedOrigUrl.indexOf(\"//\") === 0) {\n\t\t \t//TODO: should we add protocol?\n\t\t\tnewUrl = unquotedOrigUrl;\n\t\t} else if (unquotedOrigUrl.indexOf(\"/\") === 0) {\n\t\t\t// path should be relative to the base url\n\t\t\tnewUrl = baseUrl + unquotedOrigUrl; // already starts with '/'\n\t\t} else {\n\t\t\t// path should be relative to current directory\n\t\t\tnewUrl = currentDir + unquotedOrigUrl.replace(/^\\.\\//, \"\"); // Strip leading './'\n\t\t}\n\n\t\t// send back the fixed url(...)\n\t\treturn \"url(\" + JSON.stringify(newUrl) + \")\";\n\t});\n\n\t// send back the fixed css\n\treturn fixedCss;\n};\n\n\n/***/ }),\n/* 17 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _preact = __webpack_require__(0);\n\nvar _SwitcherItem = __webpack_require__(18);\n\nvar _SwitcherItem2 = _interopRequireDefault(_SwitcherItem);\n\nvar _Switcher = __webpack_require__(4);\n\nvar _Switcher2 = _interopRequireDefault(_Switcher);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } /** @jsx h */\n\n\nvar Switcher = function (_Component) {\n _inherits(Switcher, _Component);\n\n function Switcher() {\n _classCallCheck(this, Switcher);\n\n return _possibleConstructorReturn(this, (Switcher.__proto__ || Object.getPrototypeOf(Switcher)).apply(this, arguments));\n }\n\n _createClass(Switcher, [{\n key: 'render',\n value: function render() {\n var _props = this.props,\n label = _props.label,\n items = _props.items,\n activeItem = _props.activeItem,\n onSwitch = _props.onSwitch;\n\n\n return (0, _preact.h)(\n 'div',\n { className: _Switcher2.default.container },\n (0, _preact.h)(\n 'div',\n { className: _Switcher2.default.label },\n label,\n ':'\n ),\n (0, _preact.h)(\n 'div',\n null,\n items.map(function (item) {\n return (0, _preact.h)(_SwitcherItem2.default, { key: item.label,\n item: item,\n active: item === activeItem,\n onClick: onSwitch });\n })\n )\n );\n }\n }]);\n\n return Switcher;\n}(_preact.Component);\n\nexports.default = Switcher;\n\n/***/ }),\n/* 18 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _preact = __webpack_require__(0);\n\nvar _classnames = __webpack_require__(3);\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nvar _Switcher = __webpack_require__(4);\n\nvar _Switcher2 = _interopRequireDefault(_Switcher);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } /** @jsx h */\n\n\nvar SwitcherItem = function (_Component) {\n _inherits(SwitcherItem, _Component);\n\n function SwitcherItem() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, SwitcherItem);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = SwitcherItem.__proto__ || Object.getPrototypeOf(SwitcherItem)).call.apply(_ref, [this].concat(args))), _this), _this.handleClick = function () {\n if (_this.props.onClick) {\n _this.props.onClick(_this.props.item);\n }\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(SwitcherItem, [{\n key: 'render',\n value: function render() {\n var _cls;\n\n var _props = this.props,\n item = _props.item,\n active = _props.active;\n\n\n var className = (0, _classnames2.default)((_cls = {}, _defineProperty(_cls, _Switcher2.default.item, true), _defineProperty(_cls, _Switcher2.default.active, active), _cls));\n\n return (0, _preact.h)(\n 'span',\n { className: className,\n onClick: this.handleClick },\n item.label\n );\n }\n }]);\n\n return SwitcherItem;\n}(_preact.Component);\n\nexports.default = SwitcherItem;\n\n/***/ }),\n/* 19 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(1)(false);\n// imports\n\n\n// module\nexports.push([module.i, \".Switcher__container{font:normal 10px Verdana;white-space:nowrap}.Switcher__label{font-weight:700;font-size:11px;margin-bottom:7px}.Switcher__item{display:inline-block;border:1px solid #aaa;border-radius:4px;padding:5px 7px;cursor:pointer;transition:background .3s ease}.Switcher__item:hover{background:rgba(255,165,0,.15)}.Switcher__item.Switcher__active{cursor:default;background:orange}.Switcher__item+.Switcher__item{margin-left:5px}\", \"\"]);\n\n// exports\nexports.locals = {\n\t\"container\": \"Switcher__container\",\n\t\"label\": \"Switcher__label\",\n\t\"item\": \"Switcher__item\",\n\t\"active\": \"Switcher__active\"\n};\n\n/***/ }),\n/* 20 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _preact = __webpack_require__(0);\n\nvar _classnames = __webpack_require__(3);\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nvar _Sidebar = __webpack_require__(21);\n\nvar _Sidebar2 = _interopRequireDefault(_Sidebar);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } /** @jsx h */\n\n\nvar Sidebar = function (_Component) {\n _inherits(Sidebar, _Component);\n\n function Sidebar() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, Sidebar);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = Sidebar.__proto__ || Object.getPrototypeOf(Sidebar)).call.apply(_ref, [this].concat(args))), _this), _this.state = {\n visible: true,\n renderContent: true\n }, _this.handleMouseEnter = function () {\n clearTimeout(_this.hideTimeoutId);\n _this.toggleVisibility(true);\n }, _this.handleMouseLeave = function () {\n return _this.toggleVisibility(false);\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(Sidebar, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n var _this2 = this;\n\n this.hideTimeoutId = setTimeout(function () {\n return _this2.toggleVisibility(false);\n }, 1500);\n this.hideContentTimeout = null;\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n clearTimeout(this.hideTimeoutId);\n clearTimeout(this.hideContentTimeout);\n }\n }, {\n key: 'render',\n value: function render() {\n var _cls;\n\n var _props = this.props,\n position = _props.position,\n children = _props.children;\n var _state = this.state,\n visible = _state.visible,\n renderContent = _state.renderContent;\n\n\n var className = (0, _classnames2.default)((_cls = {}, _defineProperty(_cls, _Sidebar2.default.container, true), _defineProperty(_cls, _Sidebar2.default.left, position === 'left'), _defineProperty(_cls, _Sidebar2.default.hidden, !visible), _cls));\n\n return (0, _preact.h)(\n 'div',\n { className: className,\n onMouseEnter: this.handleMouseEnter,\n onMouseLeave: this.handleMouseLeave },\n renderContent ? children : null\n );\n }\n }, {\n key: 'toggleVisibility',\n value: function toggleVisibility(flag) {\n var _this3 = this;\n\n clearTimeout(this.hideContentTimeout);\n\n this.setState({ visible: flag });\n\n if (flag) {\n this.setState({ renderContent: true });\n } else {\n // Waiting for the CSS animation to finish and hiding content\n this.hideContentTimeout = setTimeout(function () {\n return _this3.setState({ renderContent: false });\n }, 500);\n }\n }\n }]);\n\n return Sidebar;\n}(_preact.Component);\n\nSidebar.defaultProps = {\n position: 'left'\n};\nexports.default = Sidebar;\n\n/***/ }),\n/* 21 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\nvar content = __webpack_require__(22);\n\nif(typeof content === 'string') content = [[module.i, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = __webpack_require__(2)(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(false) {\n\tmodule.hot.accept(\"!!../../node_modules/css-loader/index.js??ref--1-1!./Sidebar.css\", function() {\n\t\tvar newContent = require(\"!!../../node_modules/css-loader/index.js??ref--1-1!./Sidebar.css\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}\n\n/***/ }),\n/* 22 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(1)(false);\n// imports\n\n\n// module\nexports.push([module.i, \".Sidebar__container{background:#fff;border:none;border-right:1px solid #aaa;bottom:0;opacity:.95;overflow-y:auto;padding:20px;position:absolute;top:0;transition:transform .2s ease;z-index:1}.Sidebar__container.Sidebar__left{left:0}.Sidebar__container.Sidebar__left.Sidebar__hidden{transform:translateX(calc(-100% + 7px))}\", \"\"]);\n\n// exports\nexports.locals = {\n\t\"container\": \"Sidebar__container\",\n\t\"left\": \"Sidebar__left\",\n\t\"hidden\": \"Sidebar__hidden\"\n};\n\n/***/ }),\n/* 23 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _preact = __webpack_require__(0);\n\nvar _CheckboxList = __webpack_require__(5);\n\nvar _CheckboxList2 = _interopRequireDefault(_CheckboxList);\n\nvar _CheckboxList3 = __webpack_require__(6);\n\nvar _CheckboxList4 = _interopRequireDefault(_CheckboxList3);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } /** @jsx h */\n\n\nvar CheckboxListItem = function (_Component) {\n _inherits(CheckboxListItem, _Component);\n\n function CheckboxListItem() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, CheckboxListItem);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = CheckboxListItem.__proto__ || Object.getPrototypeOf(CheckboxListItem)).call.apply(_ref, [this].concat(args))), _this), _this.handleChange = function () {\n _this.props.onChange(_this.props.item);\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(CheckboxListItem, [{\n key: 'render',\n value: function render() {\n var checked = this.props.checked;\n\n\n return (0, _preact.h)(\n 'label',\n { className: _CheckboxList4.default.item },\n (0, _preact.h)('input', { className: _CheckboxList4.default.checkbox,\n type: 'checkbox',\n checked: checked,\n onChange: this.handleChange }),\n this.renderLabel()\n );\n }\n }, {\n key: 'renderLabel',\n value: function renderLabel() {\n var _props = this.props,\n children = _props.children,\n item = _props.item;\n\n\n if (children && children.length) {\n return children[0](item, _CheckboxList4.default.itemText);\n }\n\n return (0, _preact.h)(\n 'span',\n { className: _CheckboxList4.default.itemText },\n item === _CheckboxList2.default.ALL_ITEM ? 'All' : item.label\n );\n }\n }]);\n\n return CheckboxListItem;\n}(_preact.Component);\n\nexports.default = CheckboxListItem;\n\n/***/ }),\n/* 24 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(1)(false);\n// imports\n\n\n// module\nexports.push([module.i, \".CheckboxList__container{font:normal 10px Verdana;white-space:nowrap}.CheckboxList__label{font-size:11px;font-weight:700;margin-bottom:7px}.CheckboxList__checkbox{cursor:pointer}.CheckboxList__item{cursor:pointer;display:block;margin-bottom:3px}.CheckboxList__itemText{margin-left:3px;position:relative;top:-2px;vertical-align:middle}\", \"\"]);\n\n// exports\nexports.locals = {\n\t\"container\": \"CheckboxList__container\",\n\t\"label\": \"CheckboxList__label\",\n\t\"checkbox\": \"CheckboxList__checkbox\",\n\t\"item\": \"CheckboxList__item\",\n\t\"itemText\": \"CheckboxList__itemText\"\n};\n\n/***/ }),\n/* 25 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\nvar content = __webpack_require__(26);\n\nif(typeof content === 'string') content = [[module.i, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = __webpack_require__(2)(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(false) {\n\tmodule.hot.accept(\"!!../../node_modules/css-loader/index.js??ref--1-1!./ModulesTreemap.css\", function() {\n\t\tvar newContent = require(\"!!../../node_modules/css-loader/index.js??ref--1-1!./ModulesTreemap.css\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}\n\n/***/ }),\n/* 26 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(1)(false);\n// imports\n\n\n// module\nexports.push([module.i, \".ModulesTreemap__container,.ModulesTreemap__map{position:relative;width:100%;height:100%}.ModulesTreemap__sidebarGroup{margin-bottom:20px}.ModulesTreemap__activeSize{font-weight:700}\", \"\"]);\n\n// exports\nexports.locals = {\n\t\"container\": \"ModulesTreemap__container\",\n\t\"map\": \"ModulesTreemap__map\",\n\t\"sidebarGroup\": \"ModulesTreemap__sidebarGroup\",\n\t\"activeSize\": \"ModulesTreemap__activeSize\"\n};\n\n/***/ }),\n/* 27 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\nvar content = __webpack_require__(28);\n\nif(typeof content === 'string') content = [[module.i, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = __webpack_require__(2)(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(false) {\n\tmodule.hot.accept(\"!!../node_modules/css-loader/index.js??ref--1-1!./viewer.css\", function() {\n\t\tvar newContent = require(\"!!../node_modules/css-loader/index.js??ref--1-1!./viewer.css\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}\n\n/***/ }),\n/* 28 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(1)(false);\n// imports\n\n\n// module\nexports.push([module.i, \"#app,body,html{width:100%;height:100%;padding:0;margin:0;overflow:hidden}\", \"\"]);\n\n// exports\n\n\n/***/ })\n/******/ ]);\n\n\n// WEBPACK FOOTER //\n// viewer.js"," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 7);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap f48ee5078d978c8fda10","/** Virtual DOM Node */\nfunction VNode() {}\n\n/** Global options\n *\t@public\n *\t@namespace options {Object}\n */\nvar options = {\n\n\t/** If `true`, `prop` changes trigger synchronous component updates.\n *\t@name syncComponentUpdates\n *\t@type Boolean\n *\t@default true\n */\n\t//syncComponentUpdates: true,\n\n\t/** Processes all created VNodes.\n *\t@param {VNode} vnode\tA newly-created VNode to normalize/process\n */\n\t//vnode(vnode) { }\n\n\t/** Hook invoked after a component is mounted. */\n\t// afterMount(component) { }\n\n\t/** Hook invoked after the DOM is updated with a component's latest render. */\n\t// afterUpdate(component) { }\n\n\t/** Hook invoked immediately before a component is unmounted. */\n\t// beforeUnmount(component) { }\n};\n\nvar stack = [];\n\nvar EMPTY_CHILDREN = [];\n\n/**\n * JSX/hyperscript reviver.\n * @see http://jasonformat.com/wtf-is-jsx\n * Benchmarks: https://esbench.com/bench/57ee8f8e330ab09900a1a1a0\n *\n * Note: this is exported as both `h()` and `createElement()` for compatibility reasons.\n *\n * Creates a VNode (virtual DOM element). A tree of VNodes can be used as a lightweight representation\n * of the structure of a DOM tree. This structure can be realized by recursively comparing it against\n * the current _actual_ DOM structure, and applying only the differences.\n *\n * `h()`/`createElement()` accepts an element name, a list of attributes/props,\n * and optionally children to append to the element.\n *\n * @example The following DOM tree\n *\n * `<div id=\"foo\" name=\"bar\">Hello!</div>`\n *\n * can be constructed using this function as:\n *\n * `h('div', { id: 'foo', name : 'bar' }, 'Hello!');`\n *\n * @param {string} nodeName\tAn element name. Ex: `div`, `a`, `span`, etc.\n * @param {Object} attributes\tAny attributes/props to set on the created element.\n * @param rest\t\t\tAdditional arguments are taken to be children to append. Can be infinitely nested Arrays.\n *\n * @public\n */\nfunction h(nodeName, attributes) {\n\tvar children = EMPTY_CHILDREN,\n\t lastSimple,\n\t child,\n\t simple,\n\t i;\n\tfor (i = arguments.length; i-- > 2;) {\n\t\tstack.push(arguments[i]);\n\t}\n\tif (attributes && attributes.children != null) {\n\t\tif (!stack.length) stack.push(attributes.children);\n\t\tdelete attributes.children;\n\t}\n\twhile (stack.length) {\n\t\tif ((child = stack.pop()) && child.pop !== undefined) {\n\t\t\tfor (i = child.length; i--;) {\n\t\t\t\tstack.push(child[i]);\n\t\t\t}\n\t\t} else {\n\t\t\tif (typeof child === 'boolean') child = null;\n\n\t\t\tif (simple = typeof nodeName !== 'function') {\n\t\t\t\tif (child == null) child = '';else if (typeof child === 'number') child = String(child);else if (typeof child !== 'string') simple = false;\n\t\t\t}\n\n\t\t\tif (simple && lastSimple) {\n\t\t\t\tchildren[children.length - 1] += child;\n\t\t\t} else if (children === EMPTY_CHILDREN) {\n\t\t\t\tchildren = [child];\n\t\t\t} else {\n\t\t\t\tchildren.push(child);\n\t\t\t}\n\n\t\t\tlastSimple = simple;\n\t\t}\n\t}\n\n\tvar p = new VNode();\n\tp.nodeName = nodeName;\n\tp.children = children;\n\tp.attributes = attributes == null ? undefined : attributes;\n\tp.key = attributes == null ? undefined : attributes.key;\n\n\t// if a \"vnode hook\" is defined, pass every created VNode to it\n\tif (options.vnode !== undefined) options.vnode(p);\n\n\treturn p;\n}\n\n/**\n * Copy all properties from `props` onto `obj`.\n * @param {Object} obj\t\tObject onto which properties should be copied.\n * @param {Object} props\tObject from which to copy properties.\n * @returns obj\n * @private\n */\nfunction extend(obj, props) {\n for (var i in props) {\n obj[i] = props[i];\n }return obj;\n}\n\n/**\n * Call a function asynchronously, as soon as possible. Makes\n * use of HTML Promise to schedule the callback if available,\n * otherwise falling back to `setTimeout` (mainly for IE<11).\n *\n * @param {Function} callback\n */\nvar defer = typeof Promise == 'function' ? Promise.resolve().then.bind(Promise.resolve()) : setTimeout;\n\n/**\n * Clones the given VNode, optionally adding attributes/props and replacing its children.\n * @param {VNode} vnode\t\tThe virutal DOM element to clone\n * @param {Object} props\tAttributes/props to add when cloning\n * @param {VNode} rest\t\tAny additional arguments will be used as replacement children.\n */\nfunction cloneElement(vnode, props) {\n return h(vnode.nodeName, extend(extend({}, vnode.attributes), props), arguments.length > 2 ? [].slice.call(arguments, 2) : vnode.children);\n}\n\n// DOM properties that should NOT have \"px\" added when numeric\nvar IS_NON_DIMENSIONAL = /acit|ex(?:s|g|n|p|$)|rph|ows|mnc|ntw|ine[ch]|zoo|^ord/i;\n\n/** Managed queue of dirty components to be re-rendered */\n\nvar items = [];\n\nfunction enqueueRender(component) {\n\tif (!component._dirty && (component._dirty = true) && items.push(component) == 1) {\n\t\t(options.debounceRendering || defer)(rerender);\n\t}\n}\n\nfunction rerender() {\n\tvar p,\n\t list = items;\n\titems = [];\n\twhile (p = list.pop()) {\n\t\tif (p._dirty) renderComponent(p);\n\t}\n}\n\n/**\n * Check if two nodes are equivalent.\n *\n * @param {Node} node\t\t\tDOM Node to compare\n * @param {VNode} vnode\t\t\tVirtual DOM node to compare\n * @param {boolean} [hyrdating=false]\tIf true, ignores component constructors when comparing.\n * @private\n */\nfunction isSameNodeType(node, vnode, hydrating) {\n if (typeof vnode === 'string' || typeof vnode === 'number') {\n return node.splitText !== undefined;\n }\n if (typeof vnode.nodeName === 'string') {\n return !node._componentConstructor && isNamedNode(node, vnode.nodeName);\n }\n return hydrating || node._componentConstructor === vnode.nodeName;\n}\n\n/**\n * Check if an Element has a given nodeName, case-insensitively.\n *\n * @param {Element} node\tA DOM Element to inspect the name of.\n * @param {String} nodeName\tUnnormalized name to compare against.\n */\nfunction isNamedNode(node, nodeName) {\n return node.normalizedNodeName === nodeName || node.nodeName.toLowerCase() === nodeName.toLowerCase();\n}\n\n/**\n * Reconstruct Component-style `props` from a VNode.\n * Ensures default/fallback values from `defaultProps`:\n * Own-properties of `defaultProps` not present in `vnode.attributes` are added.\n *\n * @param {VNode} vnode\n * @returns {Object} props\n */\nfunction getNodeProps(vnode) {\n var props = extend({}, vnode.attributes);\n props.children = vnode.children;\n\n var defaultProps = vnode.nodeName.defaultProps;\n if (defaultProps !== undefined) {\n for (var i in defaultProps) {\n if (props[i] === undefined) {\n props[i] = defaultProps[i];\n }\n }\n }\n\n return props;\n}\n\n/** Create an element with the given nodeName.\n *\t@param {String} nodeName\n *\t@param {Boolean} [isSvg=false]\tIf `true`, creates an element within the SVG namespace.\n *\t@returns {Element} node\n */\nfunction createNode(nodeName, isSvg) {\n\tvar node = isSvg ? document.createElementNS('http://www.w3.org/2000/svg', nodeName) : document.createElement(nodeName);\n\tnode.normalizedNodeName = nodeName;\n\treturn node;\n}\n\n/** Remove a child node from its parent if attached.\n *\t@param {Element} node\t\tThe node to remove\n */\nfunction removeNode(node) {\n\tvar parentNode = node.parentNode;\n\tif (parentNode) parentNode.removeChild(node);\n}\n\n/** Set a named attribute on the given Node, with special behavior for some names and event handlers.\n *\tIf `value` is `null`, the attribute/handler will be removed.\n *\t@param {Element} node\tAn element to mutate\n *\t@param {string} name\tThe name/key to set, such as an event or attribute name\n *\t@param {any} old\tThe last value that was set for this name/node pair\n *\t@param {any} value\tAn attribute value, such as a function to be used as an event handler\n *\t@param {Boolean} isSvg\tAre we currently diffing inside an svg?\n *\t@private\n */\nfunction setAccessor(node, name, old, value, isSvg) {\n\tif (name === 'className') name = 'class';\n\n\tif (name === 'key') {\n\t\t// ignore\n\t} else if (name === 'ref') {\n\t\tif (old) old(null);\n\t\tif (value) value(node);\n\t} else if (name === 'class' && !isSvg) {\n\t\tnode.className = value || '';\n\t} else if (name === 'style') {\n\t\tif (!value || typeof value === 'string' || typeof old === 'string') {\n\t\t\tnode.style.cssText = value || '';\n\t\t}\n\t\tif (value && typeof value === 'object') {\n\t\t\tif (typeof old !== 'string') {\n\t\t\t\tfor (var i in old) {\n\t\t\t\t\tif (!(i in value)) node.style[i] = '';\n\t\t\t\t}\n\t\t\t}\n\t\t\tfor (var i in value) {\n\t\t\t\tnode.style[i] = typeof value[i] === 'number' && IS_NON_DIMENSIONAL.test(i) === false ? value[i] + 'px' : value[i];\n\t\t\t}\n\t\t}\n\t} else if (name === 'dangerouslySetInnerHTML') {\n\t\tif (value) node.innerHTML = value.__html || '';\n\t} else if (name[0] == 'o' && name[1] == 'n') {\n\t\tvar useCapture = name !== (name = name.replace(/Capture$/, ''));\n\t\tname = name.toLowerCase().substring(2);\n\t\tif (value) {\n\t\t\tif (!old) node.addEventListener(name, eventProxy, useCapture);\n\t\t} else {\n\t\t\tnode.removeEventListener(name, eventProxy, useCapture);\n\t\t}\n\t\t(node._listeners || (node._listeners = {}))[name] = value;\n\t} else if (name !== 'list' && name !== 'type' && !isSvg && name in node) {\n\t\tsetProperty(node, name, value == null ? '' : value);\n\t\tif (value == null || value === false) node.removeAttribute(name);\n\t} else {\n\t\tvar ns = isSvg && name !== (name = name.replace(/^xlink\\:?/, ''));\n\t\tif (value == null || value === false) {\n\t\t\tif (ns) node.removeAttributeNS('http://www.w3.org/1999/xlink', name.toLowerCase());else node.removeAttribute(name);\n\t\t} else if (typeof value !== 'function') {\n\t\t\tif (ns) node.setAttributeNS('http://www.w3.org/1999/xlink', name.toLowerCase(), value);else node.setAttribute(name, value);\n\t\t}\n\t}\n}\n\n/** Attempt to set a DOM property to the given value.\n *\tIE & FF throw for certain property-value combinations.\n */\nfunction setProperty(node, name, value) {\n\ttry {\n\t\tnode[name] = value;\n\t} catch (e) {}\n}\n\n/** Proxy an event to hooked event handlers\n *\t@private\n */\nfunction eventProxy(e) {\n\treturn this._listeners[e.type](options.event && options.event(e) || e);\n}\n\n/** Queue of components that have been mounted and are awaiting componentDidMount */\nvar mounts = [];\n\n/** Diff recursion count, used to track the end of the diff cycle. */\nvar diffLevel = 0;\n\n/** Global flag indicating if the diff is currently within an SVG */\nvar isSvgMode = false;\n\n/** Global flag indicating if the diff is performing hydration */\nvar hydrating = false;\n\n/** Invoke queued componentDidMount lifecycle methods */\nfunction flushMounts() {\n\tvar c;\n\twhile (c = mounts.pop()) {\n\t\tif (options.afterMount) options.afterMount(c);\n\t\tif (c.componentDidMount) c.componentDidMount();\n\t}\n}\n\n/** Apply differences in a given vnode (and it's deep children) to a real DOM Node.\n *\t@param {Element} [dom=null]\t\tA DOM node to mutate into the shape of the `vnode`\n *\t@param {VNode} vnode\t\t\tA VNode (with descendants forming a tree) representing the desired DOM structure\n *\t@returns {Element} dom\t\t\tThe created/mutated element\n *\t@private\n */\nfunction diff(dom, vnode, context, mountAll, parent, componentRoot) {\n\t// diffLevel having been 0 here indicates initial entry into the diff (not a subdiff)\n\tif (!diffLevel++) {\n\t\t// when first starting the diff, check if we're diffing an SVG or within an SVG\n\t\tisSvgMode = parent != null && parent.ownerSVGElement !== undefined;\n\n\t\t// hydration is indicated by the existing element to be diffed not having a prop cache\n\t\thydrating = dom != null && !('__preactattr_' in dom);\n\t}\n\n\tvar ret = idiff(dom, vnode, context, mountAll, componentRoot);\n\n\t// append the element if its a new parent\n\tif (parent && ret.parentNode !== parent) parent.appendChild(ret);\n\n\t// diffLevel being reduced to 0 means we're exiting the diff\n\tif (! --diffLevel) {\n\t\thydrating = false;\n\t\t// invoke queued componentDidMount lifecycle methods\n\t\tif (!componentRoot) flushMounts();\n\t}\n\n\treturn ret;\n}\n\n/** Internals of `diff()`, separated to allow bypassing diffLevel / mount flushing. */\nfunction idiff(dom, vnode, context, mountAll, componentRoot) {\n\tvar out = dom,\n\t prevSvgMode = isSvgMode;\n\n\t// empty values (null, undefined, booleans) render as empty Text nodes\n\tif (vnode == null || typeof vnode === 'boolean') vnode = '';\n\n\t// Fast case: Strings & Numbers create/update Text nodes.\n\tif (typeof vnode === 'string' || typeof vnode === 'number') {\n\n\t\t// update if it's already a Text node:\n\t\tif (dom && dom.splitText !== undefined && dom.parentNode && (!dom._component || componentRoot)) {\n\t\t\t/* istanbul ignore if */ /* Browser quirk that can't be covered: https://github.com/developit/preact/commit/fd4f21f5c45dfd75151bd27b4c217d8003aa5eb9 */\n\t\t\tif (dom.nodeValue != vnode) {\n\t\t\t\tdom.nodeValue = vnode;\n\t\t\t}\n\t\t} else {\n\t\t\t// it wasn't a Text node: replace it with one and recycle the old Element\n\t\t\tout = document.createTextNode(vnode);\n\t\t\tif (dom) {\n\t\t\t\tif (dom.parentNode) dom.parentNode.replaceChild(out, dom);\n\t\t\t\trecollectNodeTree(dom, true);\n\t\t\t}\n\t\t}\n\n\t\tout['__preactattr_'] = true;\n\n\t\treturn out;\n\t}\n\n\t// If the VNode represents a Component, perform a component diff:\n\tvar vnodeName = vnode.nodeName;\n\tif (typeof vnodeName === 'function') {\n\t\treturn buildComponentFromVNode(dom, vnode, context, mountAll);\n\t}\n\n\t// Tracks entering and exiting SVG namespace when descending through the tree.\n\tisSvgMode = vnodeName === 'svg' ? true : vnodeName === 'foreignObject' ? false : isSvgMode;\n\n\t// If there's no existing element or it's the wrong type, create a new one:\n\tvnodeName = String(vnodeName);\n\tif (!dom || !isNamedNode(dom, vnodeName)) {\n\t\tout = createNode(vnodeName, isSvgMode);\n\n\t\tif (dom) {\n\t\t\t// move children into the replacement node\n\t\t\twhile (dom.firstChild) {\n\t\t\t\tout.appendChild(dom.firstChild);\n\t\t\t} // if the previous Element was mounted into the DOM, replace it inline\n\t\t\tif (dom.parentNode) dom.parentNode.replaceChild(out, dom);\n\n\t\t\t// recycle the old element (skips non-Element node types)\n\t\t\trecollectNodeTree(dom, true);\n\t\t}\n\t}\n\n\tvar fc = out.firstChild,\n\t props = out['__preactattr_'],\n\t vchildren = vnode.children;\n\n\tif (props == null) {\n\t\tprops = out['__preactattr_'] = {};\n\t\tfor (var a = out.attributes, i = a.length; i--;) {\n\t\t\tprops[a[i].name] = a[i].value;\n\t\t}\n\t}\n\n\t// Optimization: fast-path for elements containing a single TextNode:\n\tif (!hydrating && vchildren && vchildren.length === 1 && typeof vchildren[0] === 'string' && fc != null && fc.splitText !== undefined && fc.nextSibling == null) {\n\t\tif (fc.nodeValue != vchildren[0]) {\n\t\t\tfc.nodeValue = vchildren[0];\n\t\t}\n\t}\n\t// otherwise, if there are existing or new children, diff them:\n\telse if (vchildren && vchildren.length || fc != null) {\n\t\t\tinnerDiffNode(out, vchildren, context, mountAll, hydrating || props.dangerouslySetInnerHTML != null);\n\t\t}\n\n\t// Apply attributes/props from VNode to the DOM Element:\n\tdiffAttributes(out, vnode.attributes, props);\n\n\t// restore previous SVG mode: (in case we're exiting an SVG namespace)\n\tisSvgMode = prevSvgMode;\n\n\treturn out;\n}\n\n/** Apply child and attribute changes between a VNode and a DOM Node to the DOM.\n *\t@param {Element} dom\t\t\tElement whose children should be compared & mutated\n *\t@param {Array} vchildren\t\tArray of VNodes to compare to `dom.childNodes`\n *\t@param {Object} context\t\t\tImplicitly descendant context object (from most recent `getChildContext()`)\n *\t@param {Boolean} mountAll\n *\t@param {Boolean} isHydrating\tIf `true`, consumes externally created elements similar to hydration\n */\nfunction innerDiffNode(dom, vchildren, context, mountAll, isHydrating) {\n\tvar originalChildren = dom.childNodes,\n\t children = [],\n\t keyed = {},\n\t keyedLen = 0,\n\t min = 0,\n\t len = originalChildren.length,\n\t childrenLen = 0,\n\t vlen = vchildren ? vchildren.length : 0,\n\t j,\n\t c,\n\t f,\n\t vchild,\n\t child;\n\n\t// Build up a map of keyed children and an Array of unkeyed children:\n\tif (len !== 0) {\n\t\tfor (var i = 0; i < len; i++) {\n\t\t\tvar _child = originalChildren[i],\n\t\t\t props = _child['__preactattr_'],\n\t\t\t key = vlen && props ? _child._component ? _child._component.__key : props.key : null;\n\t\t\tif (key != null) {\n\t\t\t\tkeyedLen++;\n\t\t\t\tkeyed[key] = _child;\n\t\t\t} else if (props || (_child.splitText !== undefined ? isHydrating ? _child.nodeValue.trim() : true : isHydrating)) {\n\t\t\t\tchildren[childrenLen++] = _child;\n\t\t\t}\n\t\t}\n\t}\n\n\tif (vlen !== 0) {\n\t\tfor (var i = 0; i < vlen; i++) {\n\t\t\tvchild = vchildren[i];\n\t\t\tchild = null;\n\n\t\t\t// attempt to find a node based on key matching\n\t\t\tvar key = vchild.key;\n\t\t\tif (key != null) {\n\t\t\t\tif (keyedLen && keyed[key] !== undefined) {\n\t\t\t\t\tchild = keyed[key];\n\t\t\t\t\tkeyed[key] = undefined;\n\t\t\t\t\tkeyedLen--;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// attempt to pluck a node of the same type from the existing children\n\t\t\telse if (!child && min < childrenLen) {\n\t\t\t\t\tfor (j = min; j < childrenLen; j++) {\n\t\t\t\t\t\tif (children[j] !== undefined && isSameNodeType(c = children[j], vchild, isHydrating)) {\n\t\t\t\t\t\t\tchild = c;\n\t\t\t\t\t\t\tchildren[j] = undefined;\n\t\t\t\t\t\t\tif (j === childrenLen - 1) childrenLen--;\n\t\t\t\t\t\t\tif (j === min) min++;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t// morph the matched/found/created DOM child to match vchild (deep)\n\t\t\tchild = idiff(child, vchild, context, mountAll);\n\n\t\t\tf = originalChildren[i];\n\t\t\tif (child && child !== dom && child !== f) {\n\t\t\t\tif (f == null) {\n\t\t\t\t\tdom.appendChild(child);\n\t\t\t\t} else if (child === f.nextSibling) {\n\t\t\t\t\tremoveNode(f);\n\t\t\t\t} else {\n\t\t\t\t\tdom.insertBefore(child, f);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t// remove unused keyed children:\n\tif (keyedLen) {\n\t\tfor (var i in keyed) {\n\t\t\tif (keyed[i] !== undefined) recollectNodeTree(keyed[i], false);\n\t\t}\n\t}\n\n\t// remove orphaned unkeyed children:\n\twhile (min <= childrenLen) {\n\t\tif ((child = children[childrenLen--]) !== undefined) recollectNodeTree(child, false);\n\t}\n}\n\n/** Recursively recycle (or just unmount) a node and its descendants.\n *\t@param {Node} node\t\t\t\t\t\tDOM node to start unmount/removal from\n *\t@param {Boolean} [unmountOnly=false]\tIf `true`, only triggers unmount lifecycle, skips removal\n */\nfunction recollectNodeTree(node, unmountOnly) {\n\tvar component = node._component;\n\tif (component) {\n\t\t// if node is owned by a Component, unmount that component (ends up recursing back here)\n\t\tunmountComponent(component);\n\t} else {\n\t\t// If the node's VNode had a ref function, invoke it with null here.\n\t\t// (this is part of the React spec, and smart for unsetting references)\n\t\tif (node['__preactattr_'] != null && node['__preactattr_'].ref) node['__preactattr_'].ref(null);\n\n\t\tif (unmountOnly === false || node['__preactattr_'] == null) {\n\t\t\tremoveNode(node);\n\t\t}\n\n\t\tremoveChildren(node);\n\t}\n}\n\n/** Recollect/unmount all children.\n *\t- we use .lastChild here because it causes less reflow than .firstChild\n *\t- it's also cheaper than accessing the .childNodes Live NodeList\n */\nfunction removeChildren(node) {\n\tnode = node.lastChild;\n\twhile (node) {\n\t\tvar next = node.previousSibling;\n\t\trecollectNodeTree(node, true);\n\t\tnode = next;\n\t}\n}\n\n/** Apply differences in attributes from a VNode to the given DOM Element.\n *\t@param {Element} dom\t\tElement with attributes to diff `attrs` against\n *\t@param {Object} attrs\t\tThe desired end-state key-value attribute pairs\n *\t@param {Object} old\t\t\tCurrent/previous attributes (from previous VNode or element's prop cache)\n */\nfunction diffAttributes(dom, attrs, old) {\n\tvar name;\n\n\t// remove attributes no longer present on the vnode by setting them to undefined\n\tfor (name in old) {\n\t\tif (!(attrs && attrs[name] != null) && old[name] != null) {\n\t\t\tsetAccessor(dom, name, old[name], old[name] = undefined, isSvgMode);\n\t\t}\n\t}\n\n\t// add new & update changed attributes\n\tfor (name in attrs) {\n\t\tif (name !== 'children' && name !== 'innerHTML' && (!(name in old) || attrs[name] !== (name === 'value' || name === 'checked' ? dom[name] : old[name]))) {\n\t\t\tsetAccessor(dom, name, old[name], old[name] = attrs[name], isSvgMode);\n\t\t}\n\t}\n}\n\n/** Retains a pool of Components for re-use, keyed on component name.\n *\tNote: since component names are not unique or even necessarily available, these are primarily a form of sharding.\n *\t@private\n */\nvar components = {};\n\n/** Reclaim a component for later re-use by the recycler. */\nfunction collectComponent(component) {\n\tvar name = component.constructor.name;\n\t(components[name] || (components[name] = [])).push(component);\n}\n\n/** Create a component. Normalizes differences between PFC's and classful Components. */\nfunction createComponent(Ctor, props, context) {\n\tvar list = components[Ctor.name],\n\t inst;\n\n\tif (Ctor.prototype && Ctor.prototype.render) {\n\t\tinst = new Ctor(props, context);\n\t\tComponent.call(inst, props, context);\n\t} else {\n\t\tinst = new Component(props, context);\n\t\tinst.constructor = Ctor;\n\t\tinst.render = doRender;\n\t}\n\n\tif (list) {\n\t\tfor (var i = list.length; i--;) {\n\t\t\tif (list[i].constructor === Ctor) {\n\t\t\t\tinst.nextBase = list[i].nextBase;\n\t\t\t\tlist.splice(i, 1);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\treturn inst;\n}\n\n/** The `.render()` method for a PFC backing instance. */\nfunction doRender(props, state, context) {\n\treturn this.constructor(props, context);\n}\n\n/** Set a component's `props` (generally derived from JSX attributes).\n *\t@param {Object} props\n *\t@param {Object} [opts]\n *\t@param {boolean} [opts.renderSync=false]\tIf `true` and {@link options.syncComponentUpdates} is `true`, triggers synchronous rendering.\n *\t@param {boolean} [opts.render=true]\t\t\tIf `false`, no render will be triggered.\n */\nfunction setComponentProps(component, props, opts, context, mountAll) {\n\tif (component._disable) return;\n\tcomponent._disable = true;\n\n\tif (component.__ref = props.ref) delete props.ref;\n\tif (component.__key = props.key) delete props.key;\n\n\tif (!component.base || mountAll) {\n\t\tif (component.componentWillMount) component.componentWillMount();\n\t} else if (component.componentWillReceiveProps) {\n\t\tcomponent.componentWillReceiveProps(props, context);\n\t}\n\n\tif (context && context !== component.context) {\n\t\tif (!component.prevContext) component.prevContext = component.context;\n\t\tcomponent.context = context;\n\t}\n\n\tif (!component.prevProps) component.prevProps = component.props;\n\tcomponent.props = props;\n\n\tcomponent._disable = false;\n\n\tif (opts !== 0) {\n\t\tif (opts === 1 || options.syncComponentUpdates !== false || !component.base) {\n\t\t\trenderComponent(component, 1, mountAll);\n\t\t} else {\n\t\t\tenqueueRender(component);\n\t\t}\n\t}\n\n\tif (component.__ref) component.__ref(component);\n}\n\n/** Render a Component, triggering necessary lifecycle events and taking High-Order Components into account.\n *\t@param {Component} component\n *\t@param {Object} [opts]\n *\t@param {boolean} [opts.build=false]\t\tIf `true`, component will build and store a DOM node if not already associated with one.\n *\t@private\n */\nfunction renderComponent(component, opts, mountAll, isChild) {\n\tif (component._disable) return;\n\n\tvar props = component.props,\n\t state = component.state,\n\t context = component.context,\n\t previousProps = component.prevProps || props,\n\t previousState = component.prevState || state,\n\t previousContext = component.prevContext || context,\n\t isUpdate = component.base,\n\t nextBase = component.nextBase,\n\t initialBase = isUpdate || nextBase,\n\t initialChildComponent = component._component,\n\t skip = false,\n\t rendered,\n\t inst,\n\t cbase;\n\n\t// if updating\n\tif (isUpdate) {\n\t\tcomponent.props = previousProps;\n\t\tcomponent.state = previousState;\n\t\tcomponent.context = previousContext;\n\t\tif (opts !== 2 && component.shouldComponentUpdate && component.shouldComponentUpdate(props, state, context) === false) {\n\t\t\tskip = true;\n\t\t} else if (component.componentWillUpdate) {\n\t\t\tcomponent.componentWillUpdate(props, state, context);\n\t\t}\n\t\tcomponent.props = props;\n\t\tcomponent.state = state;\n\t\tcomponent.context = context;\n\t}\n\n\tcomponent.prevProps = component.prevState = component.prevContext = component.nextBase = null;\n\tcomponent._dirty = false;\n\n\tif (!skip) {\n\t\trendered = component.render(props, state, context);\n\n\t\t// context to pass to the child, can be updated via (grand-)parent component\n\t\tif (component.getChildContext) {\n\t\t\tcontext = extend(extend({}, context), component.getChildContext());\n\t\t}\n\n\t\tvar childComponent = rendered && rendered.nodeName,\n\t\t toUnmount,\n\t\t base;\n\n\t\tif (typeof childComponent === 'function') {\n\t\t\t// set up high order component link\n\n\t\t\tvar childProps = getNodeProps(rendered);\n\t\t\tinst = initialChildComponent;\n\n\t\t\tif (inst && inst.constructor === childComponent && childProps.key == inst.__key) {\n\t\t\t\tsetComponentProps(inst, childProps, 1, context, false);\n\t\t\t} else {\n\t\t\t\ttoUnmount = inst;\n\n\t\t\t\tcomponent._component = inst = createComponent(childComponent, childProps, context);\n\t\t\t\tinst.nextBase = inst.nextBase || nextBase;\n\t\t\t\tinst._parentComponent = component;\n\t\t\t\tsetComponentProps(inst, childProps, 0, context, false);\n\t\t\t\trenderComponent(inst, 1, mountAll, true);\n\t\t\t}\n\n\t\t\tbase = inst.base;\n\t\t} else {\n\t\t\tcbase = initialBase;\n\n\t\t\t// destroy high order component link\n\t\t\ttoUnmount = initialChildComponent;\n\t\t\tif (toUnmount) {\n\t\t\t\tcbase = component._component = null;\n\t\t\t}\n\n\t\t\tif (initialBase || opts === 1) {\n\t\t\t\tif (cbase) cbase._component = null;\n\t\t\t\tbase = diff(cbase, rendered, context, mountAll || !isUpdate, initialBase && initialBase.parentNode, true);\n\t\t\t}\n\t\t}\n\n\t\tif (initialBase && base !== initialBase && inst !== initialChildComponent) {\n\t\t\tvar baseParent = initialBase.parentNode;\n\t\t\tif (baseParent && base !== baseParent) {\n\t\t\t\tbaseParent.replaceChild(base, initialBase);\n\n\t\t\t\tif (!toUnmount) {\n\t\t\t\t\tinitialBase._component = null;\n\t\t\t\t\trecollectNodeTree(initialBase, false);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (toUnmount) {\n\t\t\tunmountComponent(toUnmount);\n\t\t}\n\n\t\tcomponent.base = base;\n\t\tif (base && !isChild) {\n\t\t\tvar componentRef = component,\n\t\t\t t = component;\n\t\t\twhile (t = t._parentComponent) {\n\t\t\t\t(componentRef = t).base = base;\n\t\t\t}\n\t\t\tbase._component = componentRef;\n\t\t\tbase._componentConstructor = componentRef.constructor;\n\t\t}\n\t}\n\n\tif (!isUpdate || mountAll) {\n\t\tmounts.unshift(component);\n\t} else if (!skip) {\n\t\t// Ensure that pending componentDidMount() hooks of child components\n\t\t// are called before the componentDidUpdate() hook in the parent.\n\t\t// Note: disabled as it causes duplicate hooks, see https://github.com/developit/preact/issues/750\n\t\t// flushMounts();\n\n\t\tif (component.componentDidUpdate) {\n\t\t\tcomponent.componentDidUpdate(previousProps, previousState, previousContext);\n\t\t}\n\t\tif (options.afterUpdate) options.afterUpdate(component);\n\t}\n\n\tif (component._renderCallbacks != null) {\n\t\twhile (component._renderCallbacks.length) {\n\t\t\tcomponent._renderCallbacks.pop().call(component);\n\t\t}\n\t}\n\n\tif (!diffLevel && !isChild) flushMounts();\n}\n\n/** Apply the Component referenced by a VNode to the DOM.\n *\t@param {Element} dom\tThe DOM node to mutate\n *\t@param {VNode} vnode\tA Component-referencing VNode\n *\t@returns {Element} dom\tThe created/mutated element\n *\t@private\n */\nfunction buildComponentFromVNode(dom, vnode, context, mountAll) {\n\tvar c = dom && dom._component,\n\t originalComponent = c,\n\t oldDom = dom,\n\t isDirectOwner = c && dom._componentConstructor === vnode.nodeName,\n\t isOwner = isDirectOwner,\n\t props = getNodeProps(vnode);\n\twhile (c && !isOwner && (c = c._parentComponent)) {\n\t\tisOwner = c.constructor === vnode.nodeName;\n\t}\n\n\tif (c && isOwner && (!mountAll || c._component)) {\n\t\tsetComponentProps(c, props, 3, context, mountAll);\n\t\tdom = c.base;\n\t} else {\n\t\tif (originalComponent && !isDirectOwner) {\n\t\t\tunmountComponent(originalComponent);\n\t\t\tdom = oldDom = null;\n\t\t}\n\n\t\tc = createComponent(vnode.nodeName, props, context);\n\t\tif (dom && !c.nextBase) {\n\t\t\tc.nextBase = dom;\n\t\t\t// passing dom/oldDom as nextBase will recycle it if unused, so bypass recycling on L229:\n\t\t\toldDom = null;\n\t\t}\n\t\tsetComponentProps(c, props, 1, context, mountAll);\n\t\tdom = c.base;\n\n\t\tif (oldDom && dom !== oldDom) {\n\t\t\toldDom._component = null;\n\t\t\trecollectNodeTree(oldDom, false);\n\t\t}\n\t}\n\n\treturn dom;\n}\n\n/** Remove a component from the DOM and recycle it.\n *\t@param {Component} component\tThe Component instance to unmount\n *\t@private\n */\nfunction unmountComponent(component) {\n\tif (options.beforeUnmount) options.beforeUnmount(component);\n\n\tvar base = component.base;\n\n\tcomponent._disable = true;\n\n\tif (component.componentWillUnmount) component.componentWillUnmount();\n\n\tcomponent.base = null;\n\n\t// recursively tear down & recollect high-order component children:\n\tvar inner = component._component;\n\tif (inner) {\n\t\tunmountComponent(inner);\n\t} else if (base) {\n\t\tif (base['__preactattr_'] && base['__preactattr_'].ref) base['__preactattr_'].ref(null);\n\n\t\tcomponent.nextBase = base;\n\n\t\tremoveNode(base);\n\t\tcollectComponent(component);\n\n\t\tremoveChildren(base);\n\t}\n\n\tif (component.__ref) component.__ref(null);\n}\n\n/** Base Component class.\n *\tProvides `setState()` and `forceUpdate()`, which trigger rendering.\n *\t@public\n *\n *\t@example\n *\tclass MyFoo extends Component {\n *\t\trender(props, state) {\n *\t\t\treturn <div />;\n *\t\t}\n *\t}\n */\nfunction Component(props, context) {\n\tthis._dirty = true;\n\n\t/** @public\n *\t@type {object}\n */\n\tthis.context = context;\n\n\t/** @public\n *\t@type {object}\n */\n\tthis.props = props;\n\n\t/** @public\n *\t@type {object}\n */\n\tthis.state = this.state || {};\n}\n\nextend(Component.prototype, {\n\n\t/** Returns a `boolean` indicating if the component should re-render when receiving the given `props` and `state`.\n *\t@param {object} nextProps\n *\t@param {object} nextState\n *\t@param {object} nextContext\n *\t@returns {Boolean} should the component re-render\n *\t@name shouldComponentUpdate\n *\t@function\n */\n\n\t/** Update component state by copying properties from `state` to `this.state`.\n *\t@param {object} state\t\tA hash of state properties to update with new values\n *\t@param {function} callback\tA function to be called once component state is updated\n */\n\tsetState: function setState(state, callback) {\n\t\tvar s = this.state;\n\t\tif (!this.prevState) this.prevState = extend({}, s);\n\t\textend(s, typeof state === 'function' ? state(s, this.props) : state);\n\t\tif (callback) (this._renderCallbacks = this._renderCallbacks || []).push(callback);\n\t\tenqueueRender(this);\n\t},\n\n\n\t/** Immediately perform a synchronous re-render of the component.\n *\t@param {function} callback\t\tA function to be called after component is re-rendered.\n *\t@private\n */\n\tforceUpdate: function forceUpdate(callback) {\n\t\tif (callback) (this._renderCallbacks = this._renderCallbacks || []).push(callback);\n\t\trenderComponent(this, 2);\n\t},\n\n\n\t/** Accepts `props` and `state`, and returns a new Virtual DOM tree to build.\n *\tVirtual DOM is generally constructed via [JSX](http://jasonformat.com/wtf-is-jsx).\n *\t@param {object} props\t\tProps (eg: JSX attributes) received from parent element/component\n *\t@param {object} state\t\tThe component's current state\n *\t@param {object} context\t\tContext object (if a parent component has provided context)\n *\t@returns VNode\n */\n\trender: function render() {}\n});\n\n/** Render JSX into a `parent` Element.\n *\t@param {VNode} vnode\t\tA (JSX) VNode to render\n *\t@param {Element} parent\t\tDOM element to render into\n *\t@param {Element} [merge]\tAttempt to re-use an existing DOM tree rooted at `merge`\n *\t@public\n *\n *\t@example\n *\t// render a div into <body>:\n *\trender(<div id=\"hello\">hello!</div>, document.body);\n *\n *\t@example\n *\t// render a \"Thing\" component into #foo:\n *\tconst Thing = ({ name }) => <span>{ name }</span>;\n *\trender(<Thing name=\"one\" />, document.querySelector('#foo'));\n */\nfunction render(vnode, parent, merge) {\n return diff(merge, vnode, {}, false, parent, false);\n}\n\nvar preact = {\n\th: h,\n\tcreateElement: h,\n\tcloneElement: cloneElement,\n\tComponent: Component,\n\trender: render,\n\trerender: rerender,\n\toptions: options\n};\n\nexport { h, h as createElement, cloneElement, Component, render, rerender, options };\nexport default preact;\n//# sourceMappingURL=preact.esm.js.map\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/preact/dist/preact.esm.js\n// module id = 0\n// module chunks = 0","/*\n\tMIT License http://www.opensource.org/licenses/mit-license.php\n\tAuthor Tobias Koppers @sokra\n*/\n// css base code, injected by the css-loader\nmodule.exports = function(useSourceMap) {\n\tvar list = [];\n\n\t// return the list of modules as css string\n\tlist.toString = function toString() {\n\t\treturn this.map(function (item) {\n\t\t\tvar content = cssWithMappingToString(item, useSourceMap);\n\t\t\tif(item[2]) {\n\t\t\t\treturn \"@media \" + item[2] + \"{\" + content + \"}\";\n\t\t\t} else {\n\t\t\t\treturn content;\n\t\t\t}\n\t\t}).join(\"\");\n\t};\n\n\t// import a list of modules into the list\n\tlist.i = function(modules, mediaQuery) {\n\t\tif(typeof modules === \"string\")\n\t\t\tmodules = [[null, modules, \"\"]];\n\t\tvar alreadyImportedModules = {};\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar id = this[i][0];\n\t\t\tif(typeof id === \"number\")\n\t\t\t\talreadyImportedModules[id] = true;\n\t\t}\n\t\tfor(i = 0; i < modules.length; i++) {\n\t\t\tvar item = modules[i];\n\t\t\t// skip already imported module\n\t\t\t// this implementation is not 100% perfect for weird media query combinations\n\t\t\t// when a module is imported multiple times with different media queries.\n\t\t\t// I hope this will never occur (Hey this way we have smaller bundles)\n\t\t\tif(typeof item[0] !== \"number\" || !alreadyImportedModules[item[0]]) {\n\t\t\t\tif(mediaQuery && !item[2]) {\n\t\t\t\t\titem[2] = mediaQuery;\n\t\t\t\t} else if(mediaQuery) {\n\t\t\t\t\titem[2] = \"(\" + item[2] + \") and (\" + mediaQuery + \")\";\n\t\t\t\t}\n\t\t\t\tlist.push(item);\n\t\t\t}\n\t\t}\n\t};\n\treturn list;\n};\n\nfunction cssWithMappingToString(item, useSourceMap) {\n\tvar content = item[1] || '';\n\tvar cssMapping = item[3];\n\tif (!cssMapping) {\n\t\treturn content;\n\t}\n\n\tif (useSourceMap && typeof btoa === 'function') {\n\t\tvar sourceMapping = toComment(cssMapping);\n\t\tvar sourceURLs = cssMapping.sources.map(function (source) {\n\t\t\treturn '/*# sourceURL=' + cssMapping.sourceRoot + source + ' */'\n\t\t});\n\n\t\treturn [content].concat(sourceURLs).concat([sourceMapping]).join('\\n');\n\t}\n\n\treturn [content].join('\\n');\n}\n\n// Adapted from convert-source-map (MIT)\nfunction toComment(sourceMap) {\n\t// eslint-disable-next-line no-undef\n\tvar base64 = btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap))));\n\tvar data = 'sourceMappingURL=data:application/json;charset=utf-8;base64,' + base64;\n\n\treturn '/*# ' + data + ' */';\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/css-loader/lib/css-base.js\n// module id = 1\n// module chunks = 0","/*\n\tMIT License http://www.opensource.org/licenses/mit-license.php\n\tAuthor Tobias Koppers @sokra\n*/\n\nvar stylesInDom = {};\n\nvar\tmemoize = function (fn) {\n\tvar memo;\n\n\treturn function () {\n\t\tif (typeof memo === \"undefined\") memo = fn.apply(this, arguments);\n\t\treturn memo;\n\t};\n};\n\nvar isOldIE = memoize(function () {\n\t// Test for IE <= 9 as proposed by Browserhacks\n\t// @see http://browserhacks.com/#hack-e71d8692f65334173fee715c222cb805\n\t// Tests for existence of standard globals is to allow style-loader\n\t// to operate correctly into non-standard environments\n\t// @see https://github.com/webpack-contrib/style-loader/issues/177\n\treturn window && document && document.all && !window.atob;\n});\n\nvar getTarget = function (target) {\n return document.querySelector(target);\n};\n\nvar getElement = (function (fn) {\n\tvar memo = {};\n\n\treturn function(target) {\n // If passing function in options, then use it for resolve \"head\" element.\n // Useful for Shadow Root style i.e\n // {\n // insertInto: function () { return document.querySelector(\"#foo\").shadowRoot }\n // }\n if (typeof target === 'function') {\n return target();\n }\n if (typeof memo[target] === \"undefined\") {\n\t\t\tvar styleTarget = getTarget.call(this, target);\n\t\t\t// Special case to return head of iframe instead of iframe itself\n\t\t\tif (window.HTMLIFrameElement && styleTarget instanceof window.HTMLIFrameElement) {\n\t\t\t\ttry {\n\t\t\t\t\t// This will throw an exception if access to iframe is blocked\n\t\t\t\t\t// due to cross-origin restrictions\n\t\t\t\t\tstyleTarget = styleTarget.contentDocument.head;\n\t\t\t\t} catch(e) {\n\t\t\t\t\tstyleTarget = null;\n\t\t\t\t}\n\t\t\t}\n\t\t\tmemo[target] = styleTarget;\n\t\t}\n\t\treturn memo[target]\n\t};\n})();\n\nvar singleton = null;\nvar\tsingletonCounter = 0;\nvar\tstylesInsertedAtTop = [];\n\nvar\tfixUrls = require(\"./urls\");\n\nmodule.exports = function(list, options) {\n\tif (typeof DEBUG !== \"undefined\" && DEBUG) {\n\t\tif (typeof document !== \"object\") throw new Error(\"The style-loader cannot be used in a non-browser environment\");\n\t}\n\n\toptions = options || {};\n\n\toptions.attrs = typeof options.attrs === \"object\" ? options.attrs : {};\n\n\t// Force single-tag solution on IE6-9, which has a hard limit on the # of <style>\n\t// tags it will allow on a page\n\tif (!options.singleton && typeof options.singleton !== \"boolean\") options.singleton = isOldIE();\n\n\t// By default, add <style> tags to the <head> element\n if (!options.insertInto) options.insertInto = \"head\";\n\n\t// By default, add <style> tags to the bottom of the target\n\tif (!options.insertAt) options.insertAt = \"bottom\";\n\n\tvar styles = listToStyles(list, options);\n\n\taddStylesToDom(styles, options);\n\n\treturn function update (newList) {\n\t\tvar mayRemove = [];\n\n\t\tfor (var i = 0; i < styles.length; i++) {\n\t\t\tvar item = styles[i];\n\t\t\tvar domStyle = stylesInDom[item.id];\n\n\t\t\tdomStyle.refs--;\n\t\t\tmayRemove.push(domStyle);\n\t\t}\n\n\t\tif(newList) {\n\t\t\tvar newStyles = listToStyles(newList, options);\n\t\t\taddStylesToDom(newStyles, options);\n\t\t}\n\n\t\tfor (var i = 0; i < mayRemove.length; i++) {\n\t\t\tvar domStyle = mayRemove[i];\n\n\t\t\tif(domStyle.refs === 0) {\n\t\t\t\tfor (var j = 0; j < domStyle.parts.length; j++) domStyle.parts[j]();\n\n\t\t\t\tdelete stylesInDom[domStyle.id];\n\t\t\t}\n\t\t}\n\t};\n};\n\nfunction addStylesToDom (styles, options) {\n\tfor (var i = 0; i < styles.length; i++) {\n\t\tvar item = styles[i];\n\t\tvar domStyle = stylesInDom[item.id];\n\n\t\tif(domStyle) {\n\t\t\tdomStyle.refs++;\n\n\t\t\tfor(var j = 0; j < domStyle.parts.length; j++) {\n\t\t\t\tdomStyle.parts[j](item.parts[j]);\n\t\t\t}\n\n\t\t\tfor(; j < item.parts.length; j++) {\n\t\t\t\tdomStyle.parts.push(addStyle(item.parts[j], options));\n\t\t\t}\n\t\t} else {\n\t\t\tvar parts = [];\n\n\t\t\tfor(var j = 0; j < item.parts.length; j++) {\n\t\t\t\tparts.push(addStyle(item.parts[j], options));\n\t\t\t}\n\n\t\t\tstylesInDom[item.id] = {id: item.id, refs: 1, parts: parts};\n\t\t}\n\t}\n}\n\nfunction listToStyles (list, options) {\n\tvar styles = [];\n\tvar newStyles = {};\n\n\tfor (var i = 0; i < list.length; i++) {\n\t\tvar item = list[i];\n\t\tvar id = options.base ? item[0] + options.base : item[0];\n\t\tvar css = item[1];\n\t\tvar media = item[2];\n\t\tvar sourceMap = item[3];\n\t\tvar part = {css: css, media: media, sourceMap: sourceMap};\n\n\t\tif(!newStyles[id]) styles.push(newStyles[id] = {id: id, parts: [part]});\n\t\telse newStyles[id].parts.push(part);\n\t}\n\n\treturn styles;\n}\n\nfunction insertStyleElement (options, style) {\n\tvar target = getElement(options.insertInto)\n\n\tif (!target) {\n\t\tthrow new Error(\"Couldn't find a style target. This probably means that the value for the 'insertInto' parameter is invalid.\");\n\t}\n\n\tvar lastStyleElementInsertedAtTop = stylesInsertedAtTop[stylesInsertedAtTop.length - 1];\n\n\tif (options.insertAt === \"top\") {\n\t\tif (!lastStyleElementInsertedAtTop) {\n\t\t\ttarget.insertBefore(style, target.firstChild);\n\t\t} else if (lastStyleElementInsertedAtTop.nextSibling) {\n\t\t\ttarget.insertBefore(style, lastStyleElementInsertedAtTop.nextSibling);\n\t\t} else {\n\t\t\ttarget.appendChild(style);\n\t\t}\n\t\tstylesInsertedAtTop.push(style);\n\t} else if (options.insertAt === \"bottom\") {\n\t\ttarget.appendChild(style);\n\t} else if (typeof options.insertAt === \"object\" && options.insertAt.before) {\n\t\tvar nextSibling = getElement(options.insertInto + \" \" + options.insertAt.before);\n\t\ttarget.insertBefore(style, nextSibling);\n\t} else {\n\t\tthrow new Error(\"[Style Loader]\\n\\n Invalid value for parameter 'insertAt' ('options.insertAt') found.\\n Must be 'top', 'bottom', or Object.\\n (https://github.com/webpack-contrib/style-loader#insertat)\\n\");\n\t}\n}\n\nfunction removeStyleElement (style) {\n\tif (style.parentNode === null) return false;\n\tstyle.parentNode.removeChild(style);\n\n\tvar idx = stylesInsertedAtTop.indexOf(style);\n\tif(idx >= 0) {\n\t\tstylesInsertedAtTop.splice(idx, 1);\n\t}\n}\n\nfunction createStyleElement (options) {\n\tvar style = document.createElement(\"style\");\n\n\toptions.attrs.type = \"text/css\";\n\n\taddAttrs(style, options.attrs);\n\tinsertStyleElement(options, style);\n\n\treturn style;\n}\n\nfunction createLinkElement (options) {\n\tvar link = document.createElement(\"link\");\n\n\toptions.attrs.type = \"text/css\";\n\toptions.attrs.rel = \"stylesheet\";\n\n\taddAttrs(link, options.attrs);\n\tinsertStyleElement(options, link);\n\n\treturn link;\n}\n\nfunction addAttrs (el, attrs) {\n\tObject.keys(attrs).forEach(function (key) {\n\t\tel.setAttribute(key, attrs[key]);\n\t});\n}\n\nfunction addStyle (obj, options) {\n\tvar style, update, remove, result;\n\n\t// If a transform function was defined, run it on the css\n\tif (options.transform && obj.css) {\n\t result = options.transform(obj.css);\n\n\t if (result) {\n\t \t// If transform returns a value, use that instead of the original css.\n\t \t// This allows running runtime transformations on the css.\n\t \tobj.css = result;\n\t } else {\n\t \t// If the transform function returns a falsy value, don't add this css.\n\t \t// This allows conditional loading of css\n\t \treturn function() {\n\t \t\t// noop\n\t \t};\n\t }\n\t}\n\n\tif (options.singleton) {\n\t\tvar styleIndex = singletonCounter++;\n\n\t\tstyle = singleton || (singleton = createStyleElement(options));\n\n\t\tupdate = applyToSingletonTag.bind(null, style, styleIndex, false);\n\t\tremove = applyToSingletonTag.bind(null, style, styleIndex, true);\n\n\t} else if (\n\t\tobj.sourceMap &&\n\t\ttypeof URL === \"function\" &&\n\t\ttypeof URL.createObjectURL === \"function\" &&\n\t\ttypeof URL.revokeObjectURL === \"function\" &&\n\t\ttypeof Blob === \"function\" &&\n\t\ttypeof btoa === \"function\"\n\t) {\n\t\tstyle = createLinkElement(options);\n\t\tupdate = updateLink.bind(null, style, options);\n\t\tremove = function () {\n\t\t\tremoveStyleElement(style);\n\n\t\t\tif(style.href) URL.revokeObjectURL(style.href);\n\t\t};\n\t} else {\n\t\tstyle = createStyleElement(options);\n\t\tupdate = applyToTag.bind(null, style);\n\t\tremove = function () {\n\t\t\tremoveStyleElement(style);\n\t\t};\n\t}\n\n\tupdate(obj);\n\n\treturn function updateStyle (newObj) {\n\t\tif (newObj) {\n\t\t\tif (\n\t\t\t\tnewObj.css === obj.css &&\n\t\t\t\tnewObj.media === obj.media &&\n\t\t\t\tnewObj.sourceMap === obj.sourceMap\n\t\t\t) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tupdate(obj = newObj);\n\t\t} else {\n\t\t\tremove();\n\t\t}\n\t};\n}\n\nvar replaceText = (function () {\n\tvar textStore = [];\n\n\treturn function (index, replacement) {\n\t\ttextStore[index] = replacement;\n\n\t\treturn textStore.filter(Boolean).join('\\n');\n\t};\n})();\n\nfunction applyToSingletonTag (style, index, remove, obj) {\n\tvar css = remove ? \"\" : obj.css;\n\n\tif (style.styleSheet) {\n\t\tstyle.styleSheet.cssText = replaceText(index, css);\n\t} else {\n\t\tvar cssNode = document.createTextNode(css);\n\t\tvar childNodes = style.childNodes;\n\n\t\tif (childNodes[index]) style.removeChild(childNodes[index]);\n\n\t\tif (childNodes.length) {\n\t\t\tstyle.insertBefore(cssNode, childNodes[index]);\n\t\t} else {\n\t\t\tstyle.appendChild(cssNode);\n\t\t}\n\t}\n}\n\nfunction applyToTag (style, obj) {\n\tvar css = obj.css;\n\tvar media = obj.media;\n\n\tif(media) {\n\t\tstyle.setAttribute(\"media\", media)\n\t}\n\n\tif(style.styleSheet) {\n\t\tstyle.styleSheet.cssText = css;\n\t} else {\n\t\twhile(style.firstChild) {\n\t\t\tstyle.removeChild(style.firstChild);\n\t\t}\n\n\t\tstyle.appendChild(document.createTextNode(css));\n\t}\n}\n\nfunction updateLink (link, options, obj) {\n\tvar css = obj.css;\n\tvar sourceMap = obj.sourceMap;\n\n\t/*\n\t\tIf convertToAbsoluteUrls isn't defined, but sourcemaps are enabled\n\t\tand there is no publicPath defined then lets turn convertToAbsoluteUrls\n\t\ton by default. Otherwise default to the convertToAbsoluteUrls option\n\t\tdirectly\n\t*/\n\tvar autoFixUrls = options.convertToAbsoluteUrls === undefined && sourceMap;\n\n\tif (options.convertToAbsoluteUrls || autoFixUrls) {\n\t\tcss = fixUrls(css);\n\t}\n\n\tif (sourceMap) {\n\t\t// http://stackoverflow.com/a/26603875\n\t\tcss += \"\\n/*# sourceMappingURL=data:application/json;base64,\" + btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))) + \" */\";\n\t}\n\n\tvar blob = new Blob([css], { type: \"text/css\" });\n\n\tvar oldSrc = link.href;\n\n\tlink.href = URL.createObjectURL(blob);\n\n\tif(oldSrc) URL.revokeObjectURL(oldSrc);\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/style-loader/lib/addStyles.js\n// module id = 2\n// module chunks = 0","/*!\n Copyright (c) 2016 Jed Watson.\n Licensed under the MIT License (MIT), see\n http://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg)) {\n\t\t\t\tclasses.push(classNames.apply(null, arg));\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tfor (var key in arg) {\n\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/classnames/index.js\n// module id = 3\n// module chunks = 0","\nvar content = require(\"!!../../node_modules/css-loader/index.js??ref--1-1!./Switcher.css\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../node_modules/css-loader/index.js??ref--1-1!./Switcher.css\", function() {\n\t\tvar newContent = require(\"!!../../node_modules/css-loader/index.js??ref--1-1!./Switcher.css\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./client/components/Switcher.css\n// module id = 4\n// module chunks = 0","/** @jsx h */\nimport { h, Component } from 'preact';\n\nimport CheckboxListItem from './CheckboxListItem';\nimport s from './CheckboxList.css';\n\nconst ALL_ITEM = Symbol('ALL_ITEM');\n\nexport default class CheckboxList extends Component {\n\n static ALL_ITEM = ALL_ITEM;\n\n constructor(props) {\n super(props);\n this.state = {\n checkedItems: props.checkedItems || props.items\n };\n }\n\n componentWillReceiveProps(newProps) {\n if (newProps.items !== this.props.items) {\n if (this.isAllChecked()) {\n // Preserving `all checked` state\n this.setState({ checkedItems: newProps.items });\n this.informAboutChange(newProps.items);\n } else if (this.state.checkedItems.length) {\n // Checking only items that are in the new `items` array\n const checkedItems = newProps.items.filter(item =>\n this.state.checkedItems.find(checkedItem => checkedItem.label === item.label)\n );\n\n this.setState({ checkedItems });\n this.informAboutChange(checkedItems);\n }\n }\n }\n\n render() {\n const { label, items, renderLabel } = this.props;\n\n return (\n <div className={s.container}>\n <div className={s.label}>\n {label}:\n </div>\n <div>\n <CheckboxListItem item={ALL_ITEM}\n checked={this.isAllChecked()}\n onChange={this.handleToggleAllCheck}>\n {renderLabel}\n </CheckboxListItem>\n {items.map(item =>\n <CheckboxListItem key={item.label}\n item={item}\n checked={this.isItemChecked(item)}\n onChange={this.handleItemCheck}>\n {renderLabel}\n </CheckboxListItem>\n )}\n </div>\n </div>\n );\n }\n\n handleToggleAllCheck = () => {\n const checkedItems = this.isAllChecked() ? [] : this.props.items;\n this.setState({ checkedItems });\n this.informAboutChange(checkedItems);\n };\n\n handleItemCheck = item => {\n let checkedItems;\n\n if (this.isItemChecked(item)) {\n checkedItems = this.state.checkedItems.filter(checkedItem => checkedItem !== item);\n } else {\n checkedItems = [...this.state.checkedItems, item];\n }\n\n this.setState({ checkedItems });\n this.informAboutChange(checkedItems);\n };\n\n isItemChecked(item) {\n return this.state.checkedItems.includes(item);\n }\n\n isAllChecked() {\n return (this.props.items.length === this.state.checkedItems.length);\n }\n\n informAboutChange(checkedItems) {\n setTimeout(() => this.props.onChange(checkedItems));\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./client/components/CheckboxList.jsx","\nvar content = require(\"!!../../node_modules/css-loader/index.js??ref--1-1!./CheckboxList.css\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../node_modules/css-loader/index.js??ref--1-1!./CheckboxList.css\", function() {\n\t\tvar newContent = require(\"!!../../node_modules/css-loader/index.js??ref--1-1!./CheckboxList.css\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./client/components/CheckboxList.css\n// module id = 6\n// module chunks = 0","/** @jsx h */\nimport { h, render } from 'preact';\n\nimport ModulesTreemap from './components/ModulesTreemap';\n/* eslint no-unused-vars: \"off\" */\nimport styles from './viewer.css';\n\n// Initializing WebSocket for live treemap updates\nlet ws;\ntry {\n ws = new WebSocket(`ws://${location.host}`);\n} catch (err) {\n console.warn(\n \"Couldn't connect to analyzer websocket server so you'll have to reload page manually to see updates in the treemap\"\n );\n}\n\nwindow.addEventListener('load', () => {\n renderApp(window.chartData);\n\n if (ws) {\n ws.addEventListener('message', event => {\n const msg = JSON.parse(event.data);\n\n if (msg.event === 'chartDataUpdated') {\n renderApp(msg.data);\n }\n });\n }\n}, false);\n\nlet app;\nfunction renderApp(chartData, initialRender) {\n app = render(\n <ModulesTreemap data={chartData} defaultSizes={window.defaultSizes}/>,\n document.getElementById('app'),\n app\n );\n}\n\n\n\n// WEBPACK FOOTER //\n// ./client/viewer.jsx","/** @jsx h */\nimport { h, Component } from 'preact';\nimport filesize from 'filesize';\n\nimport Treemap from './Treemap';\nimport Tooltip from './Tooltip';\nimport Switcher from './Switcher';\nimport Sidebar from './Sidebar';\nimport CheckboxList from './CheckboxList';\n\nimport s from './ModulesTreemap.css';\n\nconst SIZE_SWITCH_ITEMS = [\n { label: 'Stat', prop: 'statSize' },\n { label: 'Parsed', prop: 'parsedSize' },\n { label: 'Gzipped', prop: 'gzipSize' }\n];\n\nexport default class ModulesTreemap extends Component {\n\n constructor(props) {\n super(props);\n this.setData(props.data, true);\n }\n\n componentWillReceiveProps(newProps) {\n if (newProps.data !== this.props.data) {\n this.setData(newProps.data);\n }\n }\n\n render() {\n const { data, showTooltip, tooltipContent, activeSizeItem } = this.state;\n\n return (\n <div className={s.container}>\n <Sidebar>\n <div className={s.sidebarGroup}>\n <Switcher label=\"Treemap sizes\"\n items={this.sizeSwitchItems}\n activeItem={activeSizeItem}\n onSwitch={this.handleSizeSwitch}/>\n </div>\n {this.state.chunkItems.length > 1 &&\n <div className={s.sidebarGroup}>\n <CheckboxList label=\"Show chunks\"\n items={this.state.chunkItems}\n checkedItems={this.visibleChunkItems}\n renderLabel={this.renderChunkItemLabel}\n onChange={this.handleVisibleChunksChange}/>\n </div>\n }\n </Sidebar>\n <Treemap className={s.map}\n data={data}\n weightProp={activeSizeItem.prop}\n onMouseLeave={this.handleMouseLeaveTreemap}\n onGroupHover={this.handleTreemapGroupHover}/>\n <Tooltip visible={showTooltip}>\n {tooltipContent}\n </Tooltip>\n </div>\n );\n }\n\n renderModuleSize(module, sizeType) {\n const sizeProp = `${sizeType}Size`;\n const size = module[sizeProp];\n const sizeLabel = SIZE_SWITCH_ITEMS.find(item => item.prop === sizeProp).label;\n const isActive = (this.state.activeSizeItem.prop === sizeProp);\n\n return (typeof size === 'number') ?\n <div className={isActive ? s.activeSize : ''}>\n {sizeLabel} size: <strong>{filesize(size)}</strong>\n </div>\n :\n null;\n }\n\n renderChunkItemLabel = (item, labelClass) => {\n const isAllItem = (item === CheckboxList.ALL_ITEM);\n const label = isAllItem ? 'All' : item.label;\n const size = isAllItem ? this.totalChunksSize : item[this.state.activeSizeItem.prop];\n\n return (\n <span className={labelClass}>{label} (<strong>{filesize(size)}</strong>)</span>\n );\n };\n\n handleSizeSwitch = sizeSwitchItem => {\n this.setState({ activeSizeItem: sizeSwitchItem });\n };\n\n handleVisibleChunksChange = visibleChunkItems => {\n this.visibleChunkItems = visibleChunkItems;\n this.setState({ data: this.getVisibleChunksData() });\n };\n\n handleMouseLeaveTreemap = () => {\n this.setState({ showTooltip: false });\n };\n\n handleTreemapGroupHover = event => {\n const { group } = event;\n\n if (group) {\n this.setState({\n showTooltip: true,\n tooltipContent: this.getTooltipContent(group)\n });\n } else {\n this.setState({ showTooltip: false });\n }\n };\n\n get totalChunksSize() {\n const sizeProp = this.state.activeSizeItem.prop;\n return this.props.data.reduce((totalSize, chunk) => totalSize + chunk[sizeProp], 0);\n }\n\n setData(data, initial) {\n const hasParsedSizes = (typeof data[0].parsedSize === 'number');\n this.sizeSwitchItems = hasParsedSizes ? SIZE_SWITCH_ITEMS : SIZE_SWITCH_ITEMS.slice(0, 1);\n const activeSizeItemProp = initial ? `${this.props.defaultSizes}Size` : this.state.activeSizeItem.prop;\n let activeSizeItem = this.sizeSwitchItems.find(item => item.prop === activeSizeItemProp);\n if (!activeSizeItem) activeSizeItem = this.sizeSwitchItems[0];\n\n const chunkItems = [...data]\n .sort((chunk1, chunk2) => chunk2[activeSizeItem.prop] - chunk1[activeSizeItem.prop]);\n\n if (initial) {\n this.visibleChunkItems = chunkItems;\n }\n\n this.setState({\n data: this.getVisibleChunksData(),\n showTooltip: false,\n tooltipContent: null,\n activeSizeItem,\n chunkItems\n });\n }\n\n getVisibleChunksData() {\n return this.props.data.filter(chunk =>\n this.visibleChunkItems.find(item => item.label === chunk.label)\n );\n }\n\n getTooltipContent(module) {\n if (!module) return null;\n\n return (\n <div>\n <div><strong>{module.label}</strong></div>\n <br/>\n {this.renderModuleSize(module, 'stat')}\n {!module.inaccurateSizes && this.renderModuleSize(module, 'parsed')}\n {!module.inaccurateSizes && this.renderModuleSize(module, 'gzip')}\n {module.path &&\n <div>Path: <strong>{module.path}</strong></div>\n }\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./client/components/ModulesTreemap.jsx","\"use strict\";\n\n/**\n * filesize\n *\n * @copyright 2017 Jason Mulligan <jason.mulligan@avoidwork.com>\n * @license BSD-3-Clause\n * @version 3.5.11\n */\n(function (global) {\n\tvar b = /^(b|B)$/,\n\t symbol = {\n\t\tiec: {\n\t\t\tbits: [\"b\", \"Kib\", \"Mib\", \"Gib\", \"Tib\", \"Pib\", \"Eib\", \"Zib\", \"Yib\"],\n\t\t\tbytes: [\"B\", \"KiB\", \"MiB\", \"GiB\", \"TiB\", \"PiB\", \"EiB\", \"ZiB\", \"YiB\"]\n\t\t},\n\t\tjedec: {\n\t\t\tbits: [\"b\", \"Kb\", \"Mb\", \"Gb\", \"Tb\", \"Pb\", \"Eb\", \"Zb\", \"Yb\"],\n\t\t\tbytes: [\"B\", \"KB\", \"MB\", \"GB\", \"TB\", \"PB\", \"EB\", \"ZB\", \"YB\"]\n\t\t}\n\t},\n\t fullform = {\n\t\tiec: [\"\", \"kibi\", \"mebi\", \"gibi\", \"tebi\", \"pebi\", \"exbi\", \"zebi\", \"yobi\"],\n\t\tjedec: [\"\", \"kilo\", \"mega\", \"giga\", \"tera\", \"peta\", \"exa\", \"zetta\", \"yotta\"]\n\t};\n\n\t/**\n * filesize\n *\n * @method filesize\n * @param {Mixed} arg String, Int or Float to transform\n * @param {Object} descriptor [Optional] Flags\n * @return {String} Readable file size String\n */\n\tfunction filesize(arg) {\n\t\tvar descriptor = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n\t\tvar result = [],\n\t\t val = 0,\n\t\t e = void 0,\n\t\t base = void 0,\n\t\t bits = void 0,\n\t\t ceil = void 0,\n\t\t full = void 0,\n\t\t fullforms = void 0,\n\t\t neg = void 0,\n\t\t num = void 0,\n\t\t output = void 0,\n\t\t round = void 0,\n\t\t unix = void 0,\n\t\t spacer = void 0,\n\t\t standard = void 0,\n\t\t symbols = void 0;\n\n\t\tif (isNaN(arg)) {\n\t\t\tthrow new Error(\"Invalid arguments\");\n\t\t}\n\n\t\tbits = descriptor.bits === true;\n\t\tunix = descriptor.unix === true;\n\t\tbase = descriptor.base || 2;\n\t\tround = descriptor.round !== undefined ? descriptor.round : unix ? 1 : 2;\n\t\tspacer = descriptor.spacer !== undefined ? descriptor.spacer : unix ? \"\" : \" \";\n\t\tsymbols = descriptor.symbols || descriptor.suffixes || {};\n\t\tstandard = base === 2 ? descriptor.standard || \"jedec\" : \"jedec\";\n\t\toutput = descriptor.output || \"string\";\n\t\tfull = descriptor.fullform === true;\n\t\tfullforms = descriptor.fullforms instanceof Array ? descriptor.fullforms : [];\n\t\te = descriptor.exponent !== undefined ? descriptor.exponent : -1;\n\t\tnum = Number(arg);\n\t\tneg = num < 0;\n\t\tceil = base > 2 ? 1000 : 1024;\n\n\t\t// Flipping a negative number to determine the size\n\t\tif (neg) {\n\t\t\tnum = -num;\n\t\t}\n\n\t\t// Determining the exponent\n\t\tif (e === -1 || isNaN(e)) {\n\t\t\te = Math.floor(Math.log(num) / Math.log(ceil));\n\n\t\t\tif (e < 0) {\n\t\t\t\te = 0;\n\t\t\t}\n\t\t}\n\n\t\t// Exceeding supported length, time to reduce & multiply\n\t\tif (e > 8) {\n\t\t\te = 8;\n\t\t}\n\n\t\t// Zero is now a special case because bytes divide by 1\n\t\tif (num === 0) {\n\t\t\tresult[0] = 0;\n\t\t\tresult[1] = unix ? \"\" : symbol[standard][bits ? \"bits\" : \"bytes\"][e];\n\t\t} else {\n\t\t\tval = num / (base === 2 ? Math.pow(2, e * 10) : Math.pow(1000, e));\n\n\t\t\tif (bits) {\n\t\t\t\tval = val * 8;\n\n\t\t\t\tif (val >= ceil && e < 8) {\n\t\t\t\t\tval = val / ceil;\n\t\t\t\t\te++;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tresult[0] = Number(val.toFixed(e > 0 ? round : 0));\n\t\t\tresult[1] = base === 10 && e === 1 ? bits ? \"kb\" : \"kB\" : symbol[standard][bits ? \"bits\" : \"bytes\"][e];\n\n\t\t\tif (unix) {\n\t\t\t\tresult[1] = standard === \"jedec\" ? result[1].charAt(0) : e > 0 ? result[1].replace(/B$/, \"\") : result[1];\n\n\t\t\t\tif (b.test(result[1])) {\n\t\t\t\t\tresult[0] = Math.floor(result[0]);\n\t\t\t\t\tresult[1] = \"\";\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Decorating a 'diff'\n\t\tif (neg) {\n\t\t\tresult[0] = -result[0];\n\t\t}\n\n\t\t// Applying custom symbol\n\t\tresult[1] = symbols[result[1]] || result[1];\n\n\t\t// Returning Array, Object, or String (default)\n\t\tif (output === \"array\") {\n\t\t\treturn result;\n\t\t}\n\n\t\tif (output === \"exponent\") {\n\t\t\treturn e;\n\t\t}\n\n\t\tif (output === \"object\") {\n\t\t\treturn { value: result[0], suffix: result[1], symbol: result[1] };\n\t\t}\n\n\t\tif (full) {\n\t\t\tresult[1] = fullforms[e] ? fullforms[e] : fullform[standard][e] + (bits ? \"bit\" : \"byte\") + (result[0] === 1 ? \"\" : \"s\");\n\t\t}\n\n\t\treturn result.join(spacer);\n\t}\n\n\t// Partial application for functional programming\n\tfilesize.partial = function (opt) {\n\t\treturn function (arg) {\n\t\t\treturn filesize(arg, opt);\n\t\t};\n\t};\n\n\t// CommonJS, AMD, script tag\n\tif (typeof exports !== \"undefined\") {\n\t\tmodule.exports = filesize;\n\t} else if (typeof define === \"function\" && define.amd) {\n\t\tdefine(function () {\n\t\t\treturn filesize;\n\t\t});\n\t} else {\n\t\tglobal.filesize = filesize;\n\t}\n})(typeof window !== \"undefined\" ? window : global);\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/filesize/lib/filesize.js\n// module id = 9\n// module chunks = 0","var g;\r\n\r\n// This works in non-strict mode\r\ng = (function() {\r\n\treturn this;\r\n})();\r\n\r\ntry {\r\n\t// This works if eval is allowed (see CSP)\r\n\tg = g || Function(\"return this\")() || (1,eval)(\"this\");\r\n} catch(e) {\r\n\t// This works if the window reference is available\r\n\tif(typeof window === \"object\")\r\n\t\tg = window;\r\n}\r\n\r\n// g can still be undefined, but nothing to do about it...\r\n// We return undefined, instead of nothing here, so it's\r\n// easier to handle this case. if(!global) { ...}\r\n\r\nmodule.exports = g;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// (webpack)/buildin/global.js\n// module id = 10\n// module chunks = 0","/** @jsx h */\nimport { h, Component } from 'preact';\nimport FoamTree from 'carrotsearch.foamtree';\n\nexport default class Treemap extends Component {\n\n constructor(props) {\n super(props);\n this.treemap = null;\n this.zoomOutDisabled = false;\n }\n\n componentDidMount() {\n this.setWeightProp(this.props.weightProp);\n this.treemap = this.createTreemap();\n window.addEventListener('resize', this.treemap.resize, false);\n }\n\n componentWillReceiveProps(nextProps) {\n if (nextProps.data !== this.props.data) {\n this.setWeightProp(nextProps.weightProp, nextProps.data);\n this.treemap.set({\n dataObject: { groups: nextProps.data }\n });\n } else if (nextProps.weightProp !== this.props.weightProp) {\n this.setWeightProp(nextProps.weightProp);\n this.update();\n }\n }\n\n shouldComponentUpdate() {\n return false;\n }\n\n componentWillUnmount() {\n window.removeEventListener('resize', this.treemap.resize);\n this.treemap.dispose();\n }\n\n render() {\n return (\n <div {...this.props} ref={this.saveNode}/>\n );\n }\n\n saveNode = node => (this.node = node);\n\n createTreemap() {\n const component = this;\n const { props } = this;\n let zoomOutDisabled = false;\n\n return new FoamTree({\n element: this.node,\n layout: 'squarified',\n stacking: 'flattened',\n pixelRatio: window.devicePixelRatio || 1,\n maxGroupLevelsDrawn: Number.MAX_VALUE,\n maxGroupLabelLevelsDrawn: Number.MAX_VALUE,\n groupLabelVerticalPadding: 0.2,\n rolloutDuration: 0,\n pullbackDuration: 0,\n fadeDuration: 0,\n zoomMouseWheelDuration: 300,\n openCloseDuration: 200,\n dataObject: {\n groups: this.props.data\n },\n titleBarDecorator(opts, props, vars) {\n vars.titleBarShown = false;\n },\n onGroupClick(event) {\n preventDefault(event);\n zoomOutDisabled = false;\n this.zoom(event.group);\n },\n onGroupDoubleClick: preventDefault,\n onGroupHover(event) {\n // Ignoring hovering on `FoamTree` branding group\n if (event.group && event.group.attribution) {\n event.preventDefault();\n return;\n }\n\n if (props.onGroupHover) {\n props.onGroupHover.call(component, event);\n }\n },\n onGroupMouseWheel(event) {\n const isZoomOut = (event.delta < 0);\n\n if (isZoomOut) {\n if (zoomOutDisabled) return preventDefault(event);\n if (this.get('viewport').scale < 1) {\n zoomOutDisabled = true;\n preventDefault(event);\n }\n } else {\n zoomOutDisabled = false;\n }\n }\n });\n }\n\n update() {\n this.treemap.update();\n }\n\n setWeightProp(prop, data) {\n data = data || this.props.data;\n\n data.forEach(setProp);\n\n function setProp(group) {\n group.weight = group[prop];\n\n if (group.groups) {\n group.groups.forEach(setProp);\n }\n }\n }\n\n}\n\nfunction preventDefault(event) {\n event.preventDefault();\n}\n\n\n\n// WEBPACK FOOTER //\n// ./client/components/Treemap.jsx","/**\n * Carrot Search FoamTree HTML5 (demo variant)\n * v3.4.4, 36955f78f6b79223438db3b18b9b64b5aad799bb/36955f78, build FOAMTREE-SOFTWARE4-DIST-26, Sep 23, 2016\n * \n * Carrot Search confidential.\n * Copyright 2002-2016, Carrot Search s.c, All Rights Reserved.\n */\n(function() {var v=function(){var a=window.navigator.userAgent,m;try{window.localStorage.setItem(\"ftap5caavc\",\"ftap5caavc\"),window.localStorage.removeItem(\"ftap5caavc\"),m=!0}catch(k){m=!1}return{pf:function(){return/webkit/i.test(a)},nf:function(){return/Mac/.test(a)},mf:function(){return/iPad|iPod|iPhone/.test(a)},jf:function(){return/Android/.test(a)},ii:function(){return\"ontouchstart\"in window||!!window.DocumentTouch&&document instanceof window.DocumentTouch},hi:function(){return m},gi:function(){var a=document.createElement(\"canvas\");\nreturn!(!a.getContext||!a.getContext(\"2d\"))},Cd:function(a,d){return[].forEach&&v.gi()?a&&a():d&&d()}}}();var aa=function(){function a(){return window.performance&&(window.performance.now||window.performance.mozNow||window.performance.msNow||window.performance.oNow||window.performance.webkitNow)||Date.now}var m=a();return{create:function(){return{now:function(){var k=a();return function(){return k.call(window.performance)}}()}},now:function(){return m.call(window.performance)}}}();function ba(){function a(){if(!c)throw\"AF0\";var a=aa.now();0!==g&&(k.Jd=a-g);g=a;d=d.filter(function(a){return null!==a});k.frames++;for(var e=0;e<d.length;e++){var b=d[e];null!==b&&(!0===b.ze.call(b.Yg)?d[e]=null:D.Rc(b.repeat)&&(b.repeat=b.repeat-1,0>=b.repeat&&(d[e]=null)))}d=d.filter(function(a){return null!==a});c=!1;m();a=aa.now()-a;0!==a&&(k.Id=a);k.totalTime+=a;k.Pe=1E3*k.frames/k.totalTime;g=0===d.length?0:aa.now()}function m(){0<d.length&&!c&&(c=!0,f(a))}var k=this.rg={frames:0,totalTime:0,\nId:0,Jd:0,Pe:0};da=k;var f=function(){return v.mf()?function(a){window.setTimeout(a,0)}:window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(){var a=aa.create();return function(e){var b=0;window.setTimeout(function(){var d=a.now();e();b=a.now()-d},16>b?16-b:0)}}()}(),d=[],c=!1,g=0;this.repeat=function(a,e,b){this.cancel(a);d.push({ze:a,Yg:b,repeat:e});m()};this.d=function(a,e){this.repeat(a,\n1,e)};this.cancel=function(a){for(var e=0;e<d.length;e++){var b=d[e];null!==b&&b.ze===a&&(d[e]=null)}};this.k=function(){d=[]}}var da;var ea=v.Cd(function(){function a(){this.buffer=[];this.oa=0;this.Fc=D.extend({},g)}function m(a){return function(){var e,b=this.buffer,d=this.oa;b[d++]=\"call\";b[d++]=a;b[d++]=arguments.length;for(e=0;e<arguments.length;e++)b[d++]=arguments[e];this.oa=d}}function k(a){return function(){return d[a].apply(d,arguments)}}var f=document.createElement(\"canvas\");f.width=1;f.height=1;var d=f.getContext(\"2d\"),f=[\"font\"],c=\"fillStyle globalAlpha globalCompositeOperation lineCap lineDashOffset lineJoin lineWidth miterLimit shadowBlur shadowColor shadowOffsetX shadowOffsetY strokeStyle textAlign textBaseline\".split(\" \"),\ng={};c.concat(f).forEach(function(a){g[a]=d[a]});a.prototype.clear=function(){this.oa=0};a.prototype.Na=function(){return 0===this.oa};a.prototype.Sa=function(a){function e(a,b,e){for(var d=0,c=a.oa,f=a.buffer;d<e;)f[c++]=b[d++];a.oa=c}function b(a,b,e,d){for(var c=0;c<e;)switch(b[c++]){case \"set\":a[b[c++]]=b[c++];break;case \"setGlobalAlpha\":a[b[c++]]=b[c++]*d;break;case \"call\":var f=b[c++];switch(b[c++]){case 0:a[f]();break;case 1:a[f](b[c++]);break;case 2:a[f](b[c++],b[c++]);break;case 3:a[f](b[c++],\nb[c++],b[c++]);break;case 4:a[f](b[c++],b[c++],b[c++],b[c++]);break;case 5:a[f](b[c++],b[c++],b[c++],b[c++],b[c++]);break;case 6:a[f](b[c++],b[c++],b[c++],b[c++],b[c++],b[c++]);break;case 7:a[f](b[c++],b[c++],b[c++],b[c++],b[c++],b[c++],b[c++]);break;case 8:a[f](b[c++],b[c++],b[c++],b[c++],b[c++],b[c++],b[c++],b[c++]);break;case 9:a[f](b[c++],b[c++],b[c++],b[c++],b[c++],b[c++],b[c++],b[c++],b[c++]);break;default:throw\"CB0\";}}}a instanceof ea?e(a,this.buffer,this.oa):b(a,this.buffer,this.oa,D.B(a.globalAlpha,\n1))};a.prototype.replay=a.prototype.Sa;a.prototype.d=function(){return new a};a.prototype.scratch=a.prototype.d;\"arc arcTo beginPath bezierCurveTo clearRect clip closePath drawImage fill fillRect fillText lineTo moveTo putImageData quadraticCurveTo rect rotate scale setLineDash setTransform stroke strokeRect strokeText transform translate\".split(\" \").forEach(function(c){a.prototype[c]=m(c)});[\"measureText\",\"createLinearGradient\",\"createRadialGradient\",\"createPattern\",\"getLineDash\"].forEach(function(c){a.prototype[c]=\nk(c)});[\"save\",\"restore\"].forEach(function(c){a.prototype[c]=function(a,b){return function(){a.apply(this,arguments);b.apply(this,arguments)}}(m(c),k(c))});f.forEach(function(c){Object.defineProperty(a.prototype,c,{set:function(a){d[c]=a;this.Fc[c]=a;var b=this.buffer;b[this.oa++]=\"set\";b[this.oa++]=c;b[this.oa++]=a},get:function(){return this.Fc[c]}})});c.forEach(function(c){Object.defineProperty(a.prototype,c,{set:function(a){this.Fc[c]=a;var b=this.buffer;b[this.oa++]=\"globalAlpha\"===c?\"setGlobalAlpha\":\n\"set\";b[this.oa++]=c;b[this.oa++]=a},get:function(){return this.Fc[c]}})});a.prototype.roundRect=function(a,c,b,d,f){this.beginPath();this.moveTo(a+f,c);this.lineTo(a+b-f,c);this.quadraticCurveTo(a+b,c,a+b,c+f);this.lineTo(a+b,c+d-f);this.quadraticCurveTo(a+b,c+d,a+b-f,c+d);this.lineTo(a+f,c+d);this.quadraticCurveTo(a,c+d,a,c+d-f);this.lineTo(a,c+f);this.quadraticCurveTo(a,c,a+f,c);this.closePath()};a.prototype.fillPolygonWithText=function(a,c,b,d,f){f||(f={});var k={rb:D.B(f.maxFontSize,G.Ea.rb),\nYc:D.B(f.minFontSize,G.Ea.Yc),lineHeight:D.B(f.lineHeight,G.Ea.lineHeight),ob:D.B(f.horizontalPadding,G.Ea.ob),eb:D.B(f.verticalPadding,G.Ea.eb),sb:D.B(f.maxTotalTextHeight,G.Ea.sb),fontFamily:D.B(f.fontFamily,G.Ea.fontFamily),fontStyle:D.B(f.fontStyle,G.Ea.fontStyle),fontVariant:D.B(f.fontVariant,G.Ea.fontVariant),fontWeight:D.B(f.fontWeight,G.Ea.fontWeight),verticalAlign:D.B(f.verticalAlign,G.Ea.verticalAlign)},g=f.cache;if(g&&D.Q(f,\"area\")){g.hd||(g.hd=new ea);var q=f.area,s=D.B(f.cacheInvalidationThreshold,\n0.05);a=G.ye(k,this,d,a,L.q(a,{}),{x:c,y:b},f.allowForcedSplit||!1,f.allowEllipsis||!1,g,q,s,f.invalidateCache)}else a=G.Me(k,this,d,a,L.q(a,{}),{x:c,y:b},f.allowForcedSplit||!1,f.allowEllipsis||!1);return a.la?{fit:!0,lineCount:a.mc,fontSize:a.fontSize,box:{x:a.da.x,y:a.da.y,w:a.da.f,h:a.da.i},ellipsis:a.ec}:{fit:!1}};return a});var ga=v.Cd(function(){function a(a){this.O=a;this.d=[];this.Hb=[void 0];this.Mc=[\"#SIZE#px sans-serif\"];this.Kd=[0];this.Ld=[1];this.ie=[0];this.je=[0];this.ke=[0];this.Qd=[10];this.hc=[10];this.Rb=[this.Hb,this.Mc,this.hc,this.Kd,this.Ld,this.ie,this.Qd,this.je,this.ke];this.ga=[1,0,0,1,0,0]}function m(a){var c=a.O,d=a.Rb[0].length-1;a.Hb[d]&&(c.setLineDash(a.Hb[d]),c.Sj=a.Kd[d]);c.miterLimit=a.Qd[d];c.lineWidth=a.Ld[d];c.shadowBlur=a.ie[d];c.shadowOffsetX=a.je[d];c.shadowOffsetY=a.ke[d];c.font=\na.Mc[d].replace(\"#SIZE#\",a.hc[d].toString())}function k(a){return function(){return this.O[a].apply(this.O,arguments)}}function f(a){return function(d,e){var f=this.ga;return this.O[a].call(this.O,c(d,e,f),g(d,e,f))}}function d(a){return function(d,e,f,k){var q=this.ga;return this.O[a].call(this.O,c(d,e,q),g(d,e,q),f*q[0],k*q[3])}}function c(a,c,d){return a*d[0]+c*d[2]+d[4]}function g(a,c,d){return a*d[1]+c*d[3]+d[5]}function l(a,c){for(var d=0;d<a.length;d++)a[d]*=c[0];return a}a.prototype.save=\nfunction(){this.d.push(this.ga.slice(0));for(var a=0;a<this.Rb.length;a++){var c=this.Rb[a];c.push(c[c.length-1])}this.O.save()};a.prototype.restore=function(){this.ga=this.d.pop();for(var a=0;a<this.Rb.length;a++)this.Rb[a].pop();this.O.restore();m(this)};a.prototype.scale=function(a,c){var d=this.ga;d[0]*=a;d[1]*=a;d[2]*=c;d[3]*=c;var d=this.ga,e=this.Rb,f=e[0].length-1,k=this.Hb[f];k&&l(k,d);for(k=2;k<e.length;k++){var g=e[k];g[f]*=d[0]}m(this)};a.prototype.translate=function(a,c){var d=this.ga;\nd[4]+=d[0]*a+d[2]*c;d[5]+=d[1]*a+d[3]*c};[\"moveTo\",\"lineTo\"].forEach(function(b){a.prototype[b]=f(b)});[\"clearRect\",\"fillRect\",\"strokeRect\",\"rect\"].forEach(function(b){a.prototype[b]=d(b)});\"fill stroke beginPath closePath clip createImageData createPattern getImageData putImageData getLineDash setLineDash\".split(\" \").forEach(function(b){a.prototype[b]=k(b)});[{ub:\"lineDashOffset\",yb:function(a){return a.Kd}},{ub:\"lineWidth\",yb:function(a){return a.Ld}},{ub:\"miterLimit\",yb:function(a){return a.Qd}},\n{ub:\"shadowBlur\",yb:function(a){return a.ie}},{ub:\"shadowOffsetX\",yb:function(a){return a.je}},{ub:\"shadowOffsetY\",yb:function(a){return a.ke}}].forEach(function(b){Object.defineProperty(a.prototype,b.ub,{set:function(a){var c=b.yb(this);a*=this.ga[0];c[c.length-1]=a;this.O[b.ub]=a}})});var e=/(\\d+(?:\\.\\d+)?)px/;Object.defineProperty(a.prototype,\"font\",{set:function(a){var c=e.exec(a);if(1<c.length){var d=this.hc.length-1;this.hc[d]=parseFloat(c[1]);this.Mc[d]=a.replace(e,\"#SIZE#px\");this.O.font=\nthis.Mc[d].replace(\"#SIZE#\",(this.hc[d]*this.ga[0]).toString())}}});\"fillStyle globalAlpha globalCompositeOperation lineCap lineJoin shadowColor strokeStyle textAlign textBaseline\".split(\" \").forEach(function(b){Object.defineProperty(a.prototype,b,{set:function(a){this.O[b]=a}})});a.prototype.arc=function(a,d,e,f,k,q){var s=this.ga;this.O.arc(c(a,d,s),g(a,d,s),e*s[0],f,k,q)};a.prototype.arcTo=function(a,d,e,f,k){var q=this.ga;this.O.arc(c(a,d,q),g(a,d,q),c(e,f,q),g(e,f,q),k*q[0])};a.prototype.bezierCurveTo=\nfunction(a,d,e,f,k,q){var s=this.ga;this.O.bezierCurveTo(c(a,d,s),g(a,d,s),c(e,f,s),g(e,f,s),c(k,q,s),g(k,q,s))};a.prototype.drawImage=function(a,d,e,f,k,q,s,l,m){function x(d,e,f,h){C.push(c(d,e,y));C.push(g(d,e,y));f=D.V(f)?a.width:f;h=D.V(h)?a.height:h;C.push(f*y[0]);C.push(h*y[3])}var y=this.ga,C=[a];D.V(q)?x(d,e,f,k):x(q,s,l,m);this.O.drawImage.apply(this.O,C)};a.prototype.quadraticCurveTo=function(a,d,e,f){var k=this.ga;this.O.quadraticCurveTo(c(a,d,k),g(a,d,k),c(e,f,k),g(e,f,k))};a.prototype.fillText=\nfunction(a,d,e,f){var k=this.ga;this.O.fillText(a,c(d,e,k),g(d,e,k),D.Rc(f)?f*k[0]:1E20)};a.prototype.setLineDash=function(a){a=l(a.slice(0),this.ga);this.Hb[this.Hb.length-1]=a;this.O.setLineDash(a)};return a});var ia=function(){var a=!v.pf()||v.mf()||v.jf()?1:7;return{eh:function(){function m(a){a.beginPath();ha.le(a,l)}var k=document.createElement(\"canvas\");k.width=800;k.height=600;var f=k.getContext(\"2d\"),d=k.width,k=k.height,c,g=0,l=[{x:0,y:100}];for(c=1;6>=c;c++)g=2*c*Math.PI/6,l.push({x:0+100*Math.sin(g),y:0+100*Math.cos(g)});c={polygonPlainFill:[m,function(a){a.fillStyle=\"rgb(255, 0, 0)\";a.fill()}],polygonPlainStroke:[m,function(a){a.strokeStyle=\"rgb(128, 0, 0)\";a.lineWidth=2;a.closePath();a.stroke()}],\npolygonGradientFill:[m,function(a){var b=a.createRadialGradient(0,0,10,0,0,60);b.addColorStop(0,\"rgb(255, 0, 0)\");b.addColorStop(1,\"rgb(255, 255, 0)\");a.fillStyle=b;a.fill()}],polygonGradientStroke:[m,function(a){var b=a.createLinearGradient(-100,-100,100,100);b.addColorStop(0,\"rgb(224, 0, 0)\");b.addColorStop(1,\"rgb(32, 0, 0)\");a.strokeStyle=b;a.lineWidth=2;a.closePath();a.stroke()}],polygonExposureShadow:[m,function(a){a.shadowBlur=50;a.shadowColor=\"rgba(0, 0, 0, 1)\";a.fillStyle=\"rgba(0, 0, 0, 1)\";\na.globalCompositeOperation=\"source-over\";a.fill();a.shadowBlur=0;a.shadowColor=\"transparent\";a.globalCompositeOperation=\"destination-out\";a.fill()}],labelPlainFill:[function(a){a.fillStyle=\"#000\";a.font=\"24px sans-serif\";a.textAlign=\"center\"},function(a){a.fillText(\"Some text\",0,-16);a.fillText(\"for testing purposes\",0,16)}]};var g=100/Object.keys(c).length,e=aa.now(),b={},h;for(h in c){var n=c[h],r=aa.now(),p,q=0;do{f.save();f.translate(Math.random()*d,Math.random()*k);p=3*Math.random()+0.5;f.scale(p,\np);for(p=0;p<n.length;p++)n[p](f);f.restore();q++;p=aa.now()}while(p-r<g);b[h]=a*(p-r)/q}b.total=aa.now()-e;return b}}}();var ha={le:function(a,m){var k=m[0];a.moveTo(k.x,k.y);for(var f=m.length-1;0<f;f--)k=m[f],a.lineTo(k.x,k.y)},qj:function(a,m,k,f){var d,c,g,l=[],e=0,b=m.length;for(g=0;g<b;g++)d=m[g],c=m[(g+1)%b],d=L.d(d,c),d=Math.sqrt(d),l.push(d),e+=d;k=f*(k+0.5*f*e/b);var h,n;f={};var e={},r={},p=0;for(g=0;g<b;g++)d=m[g],c=m[(g+1)%b],h=m[(g+2)%b],n=l[(g+1)%b],n=Math.min(0.5,k/n),L.Aa(1-n,c,h,e),L.Aa(n,c,h,r),p++,0==g&&(h=Math.min(0.5,k/l[0]),L.Aa(h,d,c,f),p++,a.moveTo(f.x,f.y)),a.quadraticCurveTo(c.x,c.y,e.x,e.y),\na.lineTo(r.x,r.y);return!0}};function ja(a){function m(a){h[a].style.opacity=r*n[a]}function k(a){a.width=Math.round(c*a.n);a.height=Math.round(g*a.n)}function f(){return/relative|absolute|fixed/.test(window.getComputedStyle(d,null).getPropertyValue(\"position\"))}var d,c,g,l,e,b=[],h={},n={},r=0;this.H=function(b){d=b;f()||(d.style.position=\"relative\");0!=d.clientWidth&&0!=d.clientHeight||na.Pa(\"element has zero dimensions: \"+d.clientWidth+\" x \"+d.clientHeight+\".\");d.innerHTML=\"\";c=d.clientWidth;g=d.clientHeight;l=0!==c?c:void 0;\ne=0!==g?g:void 0;\"embedded\"===d.getAttribute(\"data-foamtree\")&&na.Pa(\"visualization already embedded in the element.\");d.setAttribute(\"data-foamtree\",\"embedded\");a.c.p(\"stage:initialized\",this,d,c,g)};this.kb=function(){d.removeAttribute(\"data-foamtree\");b=[];h={};a.c.p(\"stage:disposed\",this,d)};this.k=function(){f()||(d.style.position=\"relative\");c=d.clientWidth;g=d.clientHeight;if(0!==c&&0!==g&&(c!==l||g!==e)){for(var h=b.length-1;0<=h;h--)k(b[h]);a.c.p(\"stage:resized\",l,e,c,g);l=c;e=g}};this.ej=\nfunction(a,b){a.n=b;k(a)};this.oc=function(c,e,f){var g=document.createElement(\"canvas\");g.setAttribute(\"style\",\"position: absolute; top: 0; bottom: 0; left: 0; right: 0; width: 100%; height: 100%; -webkit-touch-callout: none; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none;\");g.n=e;k(g);b.push(g);h[c]=g;n[c]=1;m(c);f||d.appendChild(g);a.c.p(\"stage:newLayer\",c,g);return g};this.kc=function(a,b){D.V(b)||(n[a]=b,m(a));return n[a]};this.d=function(a){D.V(a)||\n(r=a,D.Ga(h,function(a,b){m(b)}));return r}};function oa(a){function m(a,b,e){x=!0;r.x=0;r.y=0;p.x=0;p.y=0;d=h;c.x=n.x;c.y=n.y;b();g*=a;l=e?g/d:a;l=Math.max(0.25/d,l);return!0}function k(a,b){b.x=a.x/h+n.x;b.y=a.y/h+n.y;return b}function f(a,b,c,d,e,f,h,k,g){var s=(a-c)*(f-k)-(b-d)*(e-h);if(1E-5>Math.abs(s))return!1;g.x=((a*d-b*c)*(e-h)-(a-c)*(e*k-f*h))/s;g.y=((a*d-b*c)*(f-k)-(b-d)*(e*k-f*h))/s;return!0}var d=1,c={x:0,y:0},g=1,l=1,e=1,b={x:0,y:0},h=1,n={x:0,y:0},r={x:0,y:0},p={x:0,y:0},q,s,u={x:0,y:0,f:0,i:0},w={x:0,y:0,f:0,i:0,scale:1},x=!0;\na.c.j(\"stage:initialized\",function(a,b,c,d){q=c;s=d;u.x=0;u.y=0;u.f=c;u.i=d;w.x=0;w.y=0;w.f=c;w.i=d;w.scale=1});a.c.j(\"stage:resized\",function(a,d,e,f){function h(a){a.x*=g;a.y*=l}function k(a){h(a);a.f*=g;a.i*=l}q=e;s=f;var g=e/a,l=f/d;h(c);h(n);h(b);h(r);h(p);k(u);k(w)});this.Yb=function(a,d){return m(d,function(){k(a,b)},!0)};this.Y=function(a,d){if(1===Math.round(1E4*d)/1E4){var c=u.x-n.x,e=u.y-n.y;m(1,function(){},!0);return this.d(-c,-e)}return m(d,function(){for(var d=!1;!d;)var d=Math.random(),\nc=Math.random(),e=Math.random(),h=Math.random(),d=f(a.x+d*a.f,a.y+c*a.i,u.x+d*u.f,u.y+c*u.i,a.x+e*a.f,a.y+h*a.i,u.x+e*u.f,u.y+h*u.i,b)},!0)};this.sc=function(a,d){var c,e,k,g;c=a.f/a.i;e=q/s;c<e?(k=a.i*e,g=a.i,c=a.x-0.5*(k-a.f),e=a.y):c>e?(k=a.f,g=a.f*s/q,c=a.x,e=a.y-0.5*(g-a.i)):(c=a.x,e=a.y,k=a.f,g=a.i);c-=k*d;e-=g*d;k*=1+2*d;if(f(c,e,n.x,n.y,c+k,e,n.x+q/h,n.y,b))return m(q/h/k,D.ta,!1);x=!1;return this.d(h*(n.x-c),h*(n.y-e))};this.d=function(a,b){var c=Math.round(1E4*a)/1E4,d=Math.round(1E4*b)/\n1E4;p.x+=c/h;p.y+=d/h;return 0!==c||0!==d};this.reset=function(a){a&&this.content(0,0,q,s);return this.Y({x:u.x+n.x,y:u.y+n.y,f:u.f/h,i:u.i/h},e/g)};this.Pb=function(a){e=Math.min(1,Math.round(1E4*(a||g))/1E4)};this.k=function(){return n.x<u.x?(u.x-n.x)*h:n.x+q/h>u.x+u.f?-(n.x+q/h-u.x-u.f)*h:0};this.A=function(){return n.y<u.y?(u.y-n.y)*h:n.y+s/h>u.y+u.i?-(n.y+s/h-u.y-u.i)*h:0};this.update=function(a){var e=Math.abs(Math.log(l));6>e?e=2:(e/=4,e+=3*e*(1<l?a:1-a));e=1<l?Math.pow(a,e):1-Math.pow(1-a,\ne);e=(x?e:1)*(l-1)+1;h=d*e;n.x=b.x-(b.x-c.x)/e;n.y=b.y-(b.y-c.y)/e;n.x-=r.x*(1-a)+p.x*a;n.y-=r.y*(1-a)+p.y*a;1===a&&(r.x=p.x,r.y=p.y);w.x=n.x;w.y=n.y;w.f=q/h;w.i=s/h;w.scale=h};this.S=function(a){a.x=w.x;a.y=w.y;a.scale=w.scale;return a};this.absolute=function(a,b){return k(a,b||{})};this.md=function(a,b){var c=b||{};c.x=(a.x-n.x)*h;c.y=(a.y-n.y)*h;return c};this.Gc=function(a){return this.scale()<e/a};this.Rd=function(){return D.Ed(h,1)};this.scale=function(){return Math.round(1E4*h)/1E4};this.content=\nfunction(a,b,c,d){u.x=a;u.y=b;u.f=c;u.i=d};this.Ic=function(a,b){var c;for(c=a.length-1;0<=c;c--){var d=a[c];d.save();d.scale(h,h);d.translate(-n.x,-n.y)}b(w);for(c=a.length-1;0<=c;c--)d=a[c],d.restore()}};var T=new function(){function a(a){if(\"hsl\"==a.model||\"hsla\"==a.model)return a;var f=a.r/=255,d=a.g/=255,c=a.b/=255,g=Math.max(f,d,c),l=Math.min(f,d,c),e,b=(g+l)/2;if(g==l)e=l=0;else{var h=g-l,l=0.5<b?h/(2-g-l):h/(g+l);switch(g){case f:e=(d-c)/h+(d<c?6:0);break;case d:e=(c-f)/h+2;break;case c:e=(f-d)/h+4}e/=6}a.h=360*e;a.s=100*l;a.l=100*b;a.model=\"hsl\";return a}var m={h:0,s:0,l:0,a:1,model:\"hsla\"};this.Ba=function(k){return D.Sc(k)?a(T.Hg(k)):D.jc(k)?a(k):m};this.Hg=function(a){var f;return(f=/rgba\\(\\s*([^,\\s]+)\\s*,\\s*([^,\\s]+)\\s*,\\s*([^,\\s]+)\\s*,\\s*([^,\\s]+)\\s*\\)/.exec(a))&&\n5==f.length?{r:parseFloat(f[1]),g:parseFloat(f[2]),b:parseFloat(f[3]),a:parseFloat(f[4]),model:\"rgba\"}:(f=/hsla\\(\\s*([^,\\s]+)\\s*,\\s*([^,%\\s]+)%\\s*,\\s*([^,\\s%]+)%\\s*,\\s*([^,\\s]+)\\s*\\)/.exec(a))&&5==f.length?{h:parseFloat(f[1]),s:parseFloat(f[2]),l:parseFloat(f[3]),a:parseFloat(f[4]),model:\"hsla\"}:(f=/rgb\\(\\s*([^,\\s]+)\\s*,\\s*([^,\\s]+)\\s*,\\s*([^,\\s]+)\\s*\\)/.exec(a))&&4==f.length?{r:parseFloat(f[1]),g:parseFloat(f[2]),b:parseFloat(f[3]),a:1,model:\"rgb\"}:(f=/hsl\\(\\s*([^,\\s]+)\\s*,\\s*([^,\\s%]+)%\\s*,\\s*([^,\\s%]+)%\\s*\\)/.exec(a))&&\n4==f.length?{h:parseFloat(f[1]),s:parseFloat(f[2]),l:parseFloat(f[3]),a:1,model:\"hsl\"}:(f=/#([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})/.exec(a))&&4==f.length?{r:parseInt(f[1],16),g:parseInt(f[2],16),b:parseInt(f[3],16),a:1,model:\"rgb\"}:(f=/#([0-9a-fA-F])([0-9a-fA-F])([0-9a-fA-F])/.exec(a))&&4==f.length?{r:17*parseInt(f[1],16),g:17*parseInt(f[2],16),b:17*parseInt(f[3],16),a:1,model:\"rgb\"}:m};this.Cg=function(a){function f(a,b,c){0>c&&(c+=1);1<c&&(c-=1);return c<1/6?a+6*(b-a)*c:0.5>c?b:c<2/3?\na+(b-a)*(2/3-c)*6:a}if(\"rgb\"==a.model||\"rgba\"==a.model)return Math.sqrt(a.r*a.r*0.241+a.g*a.g*0.691+a.b*a.b*0.068)/255;var d,c;d=a.l/100;var g=a.s/100;c=a.h/360;if(0==a.Vj)d=a=c=d;else{var g=0.5>d?d*(1+g):d+g-d*g,l=2*d-g;d=f(l,g,c+1/3);a=f(l,g,c);c=f(l,g,c-1/3)}return Math.sqrt(65025*d*d*0.241+65025*a*a*0.691+65025*c*c*0.068)/255};this.Ng=function(a){if(D.Sc(a))return a;if(D.jc(a))switch(a.model){case \"hsla\":return T.Ig(a);case \"hsl\":return T.Ac(a);case \"rgba\":return T.Lg(a);case \"rgb\":return T.Kg(a);\ndefault:return\"#000\"}else return\"#000\"};this.Lg=function(a){return\"rgba(\"+(0.5+a.r|0)+\",\"+(0.5+a.g|0)+\",\"+(0.5+a.b|0)+\",\"+a.a+\")\"};this.Kg=function(a){return\"rgba(\"+(0.5+a.r|0)+\",\"+(0.5+a.g|0)+\",\"+(0.5+a.b|0)+\")\"};this.Ig=function(a){return\"hsla(\"+(0.5+a.h|0)+\",\"+(0.5+a.s|0)+\"%,\"+(0.5+a.l|0)+\"%,\"+a.a+\")\"};this.Ac=function(a){return\"hsl(\"+(0.5+a.h|0)+\",\"+(0.5+a.s|0)+\"%,\"+(0.5+a.l|0)+\"%)\"};this.Y=function(a,f,d){return\"hsl(\"+(0.5+a|0)+\",\"+(0.5+f|0)+\"%,\"+(0.5+d|0)+\"%)\"}};function V(){var a=!1,m,k=[],f=this,d=new function(){this.N=function(c){c&&(a?c.apply(f,m):k.push(c));return this};this.ih=function(a){f=a;return{then:this.N}}};this.J=function(){m=arguments;for(var c=0;c<k.length;c++)k[c].apply(f,m);a=!0;return this};this.L=function(){return d}}function pa(a){var m=new V,k=a.length;if(0<a.length)for(var f=a.length-1;0<=f;f--)a[f].N(function(){0===--k&&m.J()});else m.J();return m.L()}\nfunction qa(a){var m=0;this.d=function(){m++};this.k=function(){m--;0===m&&a()};this.clear=function(){m=0};this.A=function(){return 0===m}};var ra={Je:function(a,m,k,f){f=f||{};a=a.getBoundingClientRect();f.x=m-a.left;f.y=k-a.top;return f}};function sa(){var a=document,m={};this.addEventListener=function(k,f){var d=m[k];d||(d=[],m[k]=d);d.push(f);a.addEventListener(k,f)};this.d=function(){D.Ga(m,function(k,f){for(var d=k.length-1;0<=d;d--)a.removeEventListener(f,k[d])})}};function ta(a){function m(a){return function(b){k(b)&&a.apply(this,arguments)}}function k(b){for(b=b.target;b;){if(b===a)return!0;b=b.parentElement}return!1}function f(a,b,c){c=c||{};d(a,c);for(var e=0;e<b.length;e++)b[e].call(a.target,c);(void 0===c.Lb&&c.yi||\"prevent\"===c.Lb)&&a.preventDefault();return c}function d(b,c){ra.Je(a,b.clientX,b.clientY,c);c.altKey=b.altKey;c.metaKey=b.metaKey;c.ctrlKey=b.ctrlKey;c.shiftKey=b.shiftKey;c.wb=3===b.which;return c}var c=new sa,g=[],l=[],e=[],b=[],h=[],n=\n[],r=[],p=[],q=[],s=[],u=[];this.d=function(a){g.push(a)};this.k=function(a){h.push(a)};this.ya=function(a){l.push(a)};this.Ba=function(a){e.push(a)};this.Pa=function(a){b.push(a)};this.Aa=function(a){u.push(a)};this.za=function(a){n.push(a)};this.Ja=function(a){r.push(a)};this.Y=function(a){p.push(a)};this.A=function(a){q.push(a)};this.S=function(a){s.push(a)};this.kb=function(){c.d()};var w,x,y,C,B={x:0,y:0},K={x:0,y:0},A=!1,I=!1;c.addEventListener(\"mousedown\",m(function(b){if(b.target!==a){var c=\nf(b,e);K.x=c.x;K.y=c.y;B.x=c.x;B.y=c.y;A=!0;f(b,p);x=!1;w=window.setTimeout(function(){100>L.d(B,c)&&(window.clearTimeout(C),f(b,l),x=!0)},400)}}));c.addEventListener(\"mouseup\",function(a){function c(a){var b={};b.x=a.pageX;b.y=a.pageY;return b}f(a,b);if(A){I&&f(a,s);window.clearTimeout(w);if(!x&&!I&&k(a)){var d=c(a);y&&100>L.d(d,y)?f(a,h):f(a,g);y=d;C=window.setTimeout(function(){y=null},350)}I=A=!1}});c.addEventListener(\"mousemove\",function(a){var b=d(a,{});k(a)&&f(a,n,{type:\"move\"});B.x=b.x;B.y=\nb.y;A&&!I&&100<L.d(K,B)&&(I=!0);I&&f(a,q,b)});c.addEventListener(\"mouseout\",m(function(a){f(a,r,{type:\"out\"})}));c.addEventListener(void 0!==document.onmousewheel?\"mousewheel\":\"MozMousePixelScroll\",m(function(a){var b=a.wheelDelta,c=a.detail;f(a,u,{vd:(c?b?0<b/c/40*c?1:-1:-c/(v.nf()?40:19):b/40)/3,yi:!0})}));c.addEventListener(\"contextmenu\",m(function(a){a.preventDefault()}))};var X=function(){function a(a){return function(c){return Math.pow(c,a)}}function m(a){return function(c){return 1-Math.pow(1-c,a)}}function k(a){return function(c){return 1>(c*=2)?0.5*Math.pow(c,a):1-0.5*Math.abs(Math.pow(2-c,a))}}function f(a){return function(c){for(var f=0;f<a.length;f++)c=(0,a[f])(c);return c}}return{pa:function(a){switch(a){case \"linear\":return X.Ib;case \"bounce\":return X.Vg;case \"squareIn\":return X.og;case \"squareOut\":return X.Qb;case \"squareInOut\":return X.pg;case \"cubicIn\":return X.Zg;\ncase \"cubicOut\":return X.Ae;case \"cubicInOut\":return X.$g;case \"quadIn\":return X.Qi;case \"quadOut\":return X.Si;case \"quadInOut\":return X.Ri;default:return X.Ib}},Ib:function(a){return a},Vg:f([k(2),function(a){return 0===a?0:1===a?1:a*(a*(a*(a*(25.9425*a-85.88)+105.78)-58.69)+13.8475)}]),og:a(2),Qb:m(2),pg:k(2),Zg:a(3),Ae:m(3),$g:k(3),Qi:a(2),Si:m(2),Ri:k(2),d:f}}();var D={V:function(a){return void 0===a},of:function(a){return null===a},Rc:function(a){return\"[object Number]\"===Object.prototype.toString.call(a)},Sc:function(a){return\"[object String]\"===Object.prototype.toString.call(a)},Fd:function(a){return\"function\"===typeof a},jc:function(a){return a===Object(a)},Ed:function(a,m){return 1E-6>a-m&&-1E-6<a-m},kf:function(a){return D.V(a)||D.of(a)||D.Sc(a)&&!/\\S/.test(a)},Q:function(a,m){return a&&a.hasOwnProperty(m)},nb:function(a,m){if(a)for(var k=m.length-\n1;0<=k;k--)if(a.hasOwnProperty(m[k]))return!0;return!1},extend:function(a){D.dh(Array.prototype.slice.call(arguments,1),function(m){if(m)for(var k in m)m.hasOwnProperty(k)&&(a[k]=m[k])});return a},A:function(a,m){return a.map(function(a){return a[m]},[])},dh:function(a,m,k){null!=a&&(a.forEach?a.forEach(m,k):D.Ga(a,m,k))},Ga:function(a,m,k){for(var f in a)if(a.hasOwnProperty(f)&&!1===m.call(k,a[f],f,a))break},B:function(){for(var a=0;a<arguments.length;a++){var m=arguments[a];if(!(D.V(m)||D.Rc(m)&&\nisNaN(m)||D.Sc(m)&&D.kf(m)))return m}},cg:function(a,m){var k=a.indexOf(m);0<=k&&a.splice(k,1)},ah:function(a,m,k){var f;return function(){var d=this,c=arguments,g=k&&!f;clearTimeout(f);f=setTimeout(function(){f=null;k||a.apply(d,c)},m);g&&a.apply(d,c)}},defer:function(a){setTimeout(a,1)},k:function(a){return a},ta:function(){}};var ua={ji:function(a,m,k){return v.hi()?function(){var f=m+\":\"+JSON.stringify(arguments),d=window.localStorage.getItem(f);d&&(d=JSON.parse(d));if(d&&Date.now()-d.t<k)return d.v;d=a.apply(this,arguments);window.localStorage.setItem(f,JSON.stringify({v:d,t:Date.now()}));return d}:a}};var va={m:function(a,m){function k(){var f=[];if(Array.isArray(a))for(var d=0;d<a.length;d++){var c=a[d];c&&f.push(c.apply(m,arguments))}else a&&f.push(a.apply(m,arguments));return f}k.empty=function(){return 0===a.length&&!D.Fd(a)};return k}};function wa(){var a={};this.j=function(m,k){var f=a[m];f||(f=[],a[m]=f);f.push(k)};this.p=function(m,k){var f=a[m];if(f)for(var d=Array.prototype.slice.call(arguments,1),c=0;c<f.length;c++)f[c].apply(this,d)}};var xa={kg:function(a){for(var m=\"\",k=0;k<a.length;k++)m+=String.fromCharCode(a.charCodeAt(k)^1);return m}};function ya(a){function m(b,d,k){var m=this,p,q=0;this.id=g++;this.name=k?k:\"{unnamed on \"+b+\"}\";this.target=function(){return b};this.Fb=function(){return-1!=e.indexOf(m)};this.start=function(){if(!m.Fb()){if(-1==e.indexOf(m)){var b=l.now();!0===m.xf(b)&&(e=e.slice(),e.push(m))}0<e.length&&a.repeat(f)}return this};this.stop=function(){for(c(m);p<d.length;p++){var a=d[p];a.ib&&a.Xa.call()}return this};this.eg=function(){p=void 0};this.xf=function(a){q++;if(0!==d.length){var b;D.V(p)?(p=0,b=d[p],b.W&&\nb.W.call(b,a,q,m)):b=d[p];for(;p<d.length;){if(b.Xa&&b.Xa.call(b,a,q,m))return!0;b.Da&&b.Da.call(b,a,q,m);D.V(p)&&(p=-1);++p<d.length&&(b=d[p],b.W&&b.W.call(b,a,q,m))}}return!1}}function k(a){return D.V(a)?e.slice():e.filter(function(c){return c.target()===a})}function f(){d();0==e.length&&a.cancel(f)}function d(){var a=l.now();e.forEach(function(d){!0!==d.xf(a)&&c(d)})}function c(a){e=e.filter(function(c){return c!==a})}var g=0,l=aa.create(),e=[];this.d=function(){for(var a=e.length-1;0<=a;a--)e[a].stop();\ne=[]};this.D=function(){function a(){}function c(a){var b=a.target,d=a.duration,e=a.ca,f,h;this.W=function(){f={};for(var c in a.G)b.hasOwnProperty(c)&&(f[c]={start:D.V(a.G[c].start)?b[c]:D.Fd(a.G[c].start)?a.G[c].start.call(void 0):a.G[c].start,end:D.V(a.G[c].end)?b[c]:D.Fd(a.G[c].end)?a.G[c].end.call(void 0):a.G[c].end,P:D.V(a.G[c].P)?X.Ib:a.G[c].P});h=l.now()};this.Xa=function(){var a=l.now()-h,a=0===d?1:Math.min(d,a)/d,c;for(c in f){var g=f[c];b[c]=g.start+(g.end-g.start)*g.P(a)}e&&e.call(b,a);\nreturn 1>a}}function d(a,b,c){this.ib=c;this.Xa=function(){a.call(b);return!1}}function e(a){var b;this.W=function(c,d){b=d+a};this.Xa=function(a,c){return c<b}}function f(a){var b;this.W=function(c){b=c+a};this.Xa=function(a){return a<b}}function g(a){this.W=function(){a.forEach(function(a){a.start()})};this.Xa=function(){for(var b=0;b<a.length;b++)if(a[b].Fb())return!0;return!1}}a.m=function(a,b){return new function(){function k(b,c,e,f){return c?(D.V(e)&&(e=a),b.Ab(new d(c,e,f))):b}var l=[];this.Ab=\nfunction(a){l.push(a);return this};this.fb=function(a){return this.Ab(new f(a))};this.oe=function(a){return this.Ab(new e(a||1))};this.call=function(a,b){return k(this,a,b,!1)};this.ib=function(a,b){return k(this,a,b,!0)};this.ia=function(b){D.V(b.target)&&(b.target=a);return this.Ab(new c(b))};this.Ya=function(a){return this.Ab(new g(a))};this.eg=function(){return this.Ab({Xa:function(a,b){b.eg();return!0}})};this.xa=function(){return new m(a,l,b)};this.start=function(){return this.xa().start()};\nthis.Fg=function(){var a=new V;this.oe().call(a.J).xa();return a.L()};this.bb=function(){var a=this.Fg();this.start();return a}}};a.tc=function(c){k(c).forEach(function(a){a.stop()});return a.m(c,void 0)};return a}()};var Y=function(){var a={Ie:function(a,k){if(a.e)for(var f=a.e,d=0;d<f.length;d++)k(f[d],d)},Jc:function(m,k){if(m.e)for(var f=m.e,d=0;d<f.length;d++)if(!1===a.Jc(f[d],k)||!1===k(f[d],d))return!1}};a.F=a.Jc;a.Kc=function(m,k){if(m.e)for(var f=m.e,d=0;d<f.length;d++)if(!1===k(f[d],d)||!1===a.Kc(f[d],k))return!1};a.Fa=function(m,k){if(m.e)for(var f=m.e,d=0;d<f.length;d++)if(!1===a.Fa(f[d],k))return!1;return k(m)};a.Mj=a.Fa;a.wd=function(m,k){!1!==k(m)&&a.Kc(m,k)};a.Lc=function(m,k){var f=[];a.Kc(m,function(a){f.push(a)});\nreturn k?f.filter(k):f};a.He=function(a,k){for(var f=a.parent;f&&!1!==k(f);)f=f.parent};a.ki=function(a,k){for(var f=a.parent;f&&f!==k;)f=f.parent;return!!f};return a}();var L=new function(){function a(a,f){var d=a.x-f.x,c=a.y-f.y;return d*d+c*c}function m(a,f,d){for(var c=0;c<a.length;c++){var g=L.za(a[c],a[c+1]||a[0],f,d,!0);if(g)return g}}this.za=function(a,f,d,c,g){var l=a.x;a=a.y;var e=f.x-l;f=f.y-a;var b=d.x,h=d.y;d=c.x-b;var n=c.y-h;c=e*n-d*f;if(!(1E-12>=c&&-1E-12<=c)&&(b=b-l,h=h-a,d=(b*n-d*h)/c,c=(b*f-e*h)/c,0<=c&&(g||1>=c)&&0<=d&&1>=d))return{x:l+e*d,y:a+f*d}};this.Jg=function(a,f,d,c){var g=a.x;a=a.y;var l=f.x-g;f=f.y-a;var e=d.x;d=d.y;var b=c.x-e;c=c.y-\nd;var h=l*c-b*f;if(!(1E-12>=h&&-1E-12<=h)&&(c=((e-g)*c-b*(d-a))/h,0<=c&&1>=c))return{x:g+l*c,y:a+f*c}};this.qe=function(a,f,d){for(var c=L.k(f,{}),g=L.k(d,{}),l,e=g.x-c.x,b=g.y-c.y,h=[],g=0;g<d.length;g++)l=d[g],h.push({x:l.x-e,y:l.y-b});d=[];l=[];for(g=0;g<a.length;g++){var n=a[g],r=m(f,c,n);r?(d.push(r),l.push(m(h,c,n))):(d.push(null),l.push(null))}for(g=0;g<a.length;g++)if(r=d[g],n=l[g],r&&n){f=a[g];var h=c,p=r.x-c.x,r=r.y-c.y,r=Math.sqrt(p*p+r*r);if(1E-12<r){var p=f.x-c.x,q=f.y-c.y,r=Math.sqrt(p*\np+q*q)/r;f.x=h.x+r*(n.x-h.x);f.y=h.y+r*(n.y-h.y)}else f.x=h.x,f.y=h.y}for(g=0;g<a.length;g++)l=a[g],l.x+=e,l.y+=b};this.q=function(a,f){if(0!==a.length){var d,c,g,l;d=c=a[0].x;g=l=a[0].y;for(var e=a.length;0<--e;)d=Math.min(d,a[e].x),c=Math.max(c,a[e].x),g=Math.min(g,a[e].y),l=Math.max(l,a[e].y);f.x=d;f.y=g;f.f=c-d;f.i=l-g;return f}};this.A=function(a){return[{x:a.x,y:a.y},{x:a.x+a.f,y:a.y},{x:a.x+a.f,y:a.y+a.i},{x:a.x,y:a.y+a.i}]};this.k=function(a,f){for(var d=0,c=0,g=a.length,l=a[0],e=0,b=1;b<\ng-1;b++)var h=a[b],n=a[b+1],m=l.y+h.y+n.y,p=(h.x-l.x)*(n.y-l.y)-(n.x-l.x)*(h.y-l.y),d=d+p*(l.x+h.x+n.x),c=c+p*m,e=e+p;f.x=d/(3*e);f.y=c/(3*e);f.ja=e/2;return f};this.se=function(a,f){this.k(a,f);f.Nb=Math.sqrt(f.ja/Math.PI)};this.Ta=function(a,f){for(var d=0;d<a.length;d++){var c=a[d],g=a[d+1]||a[0];if(0>(f.y-c.y)*(g.x-c.x)-(f.x-c.x)*(g.y-c.y))return!1}return!0};this.Mg=function(a,f,d){var c=a.x,g=f.x;a.x>f.x&&(c=f.x,g=a.x);g>d.x+d.f&&(g=d.x+d.f);c<d.x&&(c=d.x);if(c>g)return!1;var l=a.y,e=f.y,b=f.x-\na.x;1E-7<Math.abs(b)&&(e=(f.y-a.y)/b,a=a.y-e*a.x,l=e*c+a,e=e*g+a);l>e&&(c=e,e=l,l=c);e>d.y+d.i&&(e=d.y+d.i);l<d.y&&(l=d.y);return l<=e};this.te=function(k,f,d,c,g){var l,e;function b(b,c,d){if(f.x===n.x&&f.y===n.y)return d;var g=m(k,f,n),p=Math.sqrt(a(g,f)/(b*b+c*c));return p<h?(h=p,l=g.x,e=g.y,0!==c?Math.abs(e-f.y)/Math.abs(c):Math.abs(l-f.x)/Math.abs(b)):d}c=D.B(c,0.5);g=D.B(g,0.5);d=D.B(d,1);var h=Number.MAX_VALUE;e=l=0;var n={x:0,y:0},r,p=c*d;d=(1-c)*d;c=1-g;n.x=f.x-p;n.y=f.y-g;r=b(p,g,r);n.x=\nf.x+d;n.y=f.y-g;r=b(d,g,r);n.x=f.x-p;n.y=f.y+c;r=b(p,c,r);n.x=f.x+d;n.y=f.y+c;return r=b(d,c,r)};this.Eg=function(a,f){function d(a,c,d){var e=c.x,f=d.x;c=c.y;d=d.y;var g=f-e,k=d-c;return Math.abs(k*a.x-g*a.y-e*d+f*c)/Math.sqrt(g*g+k*k)}for(var c=a.length,g=d(f,a[c-1],a[0]),l=0;l<c-1;l++){var e=d(f,a[l],a[l+1]);e<g&&(g=e)}return g};this.Wb=function(a,f,d){var c;d={x:f.x+Math.cos(d),y:f.y-Math.sin(d)};var g=[],l=[],e=a.length;for(c=0;c<e;c++){var b=L.Jg(a[c],a[(c+1)%e],f,d);if(b&&(g.push(b),2==l.push(c)))break}if(2==\ng.length){var b=g[0],g=g[1],h=l[0],l=l[1],n=[g,b];for(c=h+1;c<=l;c++)n.push(a[c]);for(c=[b,g];l!=h;)l=(l+1)%e,c.push(a[l]);a=[n,c];e=d.x-f.x;c=g.x-b.x;0===e&&(e=d.y-f.y,c=g.y-b.y);(0>e?-1:0<e?1:0)!==(0>c?-1:0<c?1:0)&&a.reverse();return a}};this.Aa=function(a,f,d,c){c.x=a*(f.x-d.x)+d.x;c.y=a*(f.y-d.y)+d.y;return c};this.d=a;this.re=function(a,f,d){if(D.Rc(f))f=2*Math.PI*f/360;else{var c=L.q(a,{});switch(f){case \"random\":f=Math.random()*Math.PI*2;break;case \"top\":f=Math.atan2(-c.i,0);break;case \"bottom\":f=\nMath.atan2(c.i,0);break;case \"topleft\":f=Math.atan2(-c.i,-c.f);break;default:f=Math.atan2(c.i,c.f)}}c=L.k(a,{});return L.Aa(d,m(a,c,{x:c.x+Math.cos(f),y:c.y+Math.sin(f)}),c,{})};return this};var za=new function(){function a(a,d){this.face=a;this.jd=d;this.pc=this.cd=null}function m(a,d,f){this.ma=[a,d,f];this.C=Array(3);var e=d.y-a.y,b=f.z-a.z,h=d.x-a.x;d=d.z-a.z;var k=f.x-a.x;a=f.y-a.y;this.Oa={x:e*b-d*a,y:d*k-h*b,z:h*a-e*k};this.jb=[];this.sd=this.visible=!1}this.S=function(c){function f(b,c,d){var h,g,k=b.ma[0],l=b.Oa,q=l.x,s=l.y,l=l.z,m=Array(n);c=c.jb;h=c.length;for(e=0;e<h;e++)g=c[e].jd,m[g.index]=!0,0>q*(g.x-k.x)+s*(g.y-k.y)+l*(g.z-k.z)&&a.d(b,g);c=d.jb;h=c.length;for(e=0;e<h;e++)g=\nc[e].jd,!0!==m[g.index]&&0>q*(g.x-k.x)+s*(g.y-k.y)+l*(g.z-k.z)&&a.d(b,g)}var l,e,b,h,n=c.length;for(l=0;l<n;l++)c[l].index=l,c[l].$b=null;var r=[],p;if(0<(p=function(){function b(a,c,d,e){var f=(c.y-a.y)*(d.z-a.z)-(c.z-a.z)*(d.y-a.y),h=(c.z-a.z)*(d.x-a.x)-(c.x-a.x)*(d.z-a.z),g=(c.x-a.x)*(d.y-a.y)-(c.y-a.y)*(d.x-a.x);return f*e.x+h*e.y+g*e.z>f*a.x+h*a.y+g*a.z?new m(a,c,d):new m(d,c,a)}function d(a,b,c,e){function f(a,b,c){a=a.ma;b=a[0]==b?0:a[1]==b?1:2;return a[(b+1)%3]!=c?(b+2)%3:b}b.C[f(b,c,e)]=\na;a.C[f(a,e,c)]=b}if(4>n)return 0;var e=c[0],f=c[1],h=c[2],g=c[3],k=b(e,f,h,g),l=b(e,h,g,f),q=b(e,f,g,h),s=b(f,h,g,e);d(k,l,h,e);d(k,q,e,f);d(k,s,f,h);d(l,q,g,e);d(l,s,h,g);d(q,s,g,f);r.push(k,l,q,s);for(e=4;e<n;e++)for(f=c[e],h=0;4>h;h++)g=r[h],k=g.ma[0],l=g.Oa,0>l.x*(f.x-k.x)+l.y*(f.y-k.y)+l.z*(f.z-k.z)&&a.d(g,f);return 4}())){for(;p<n;){b=c[p];if(b.$b){for(l=b.$b;null!==l;)l.face.visible=!0,l=l.pc;var q,s;l=0;a:for(;l<r.length;l++)if(h=r[l],!1===h.visible){var u=h.C;for(e=0;3>e;e++)if(!0===u[e].visible){q=\nh;s=e;break a}}h=[];var u=[],w=q,x=s;do if(h.push(w),u.push(x),x=(x+1)%3,!1===w.C[x].visible){do for(l=w.ma[x],w=w.C[x],e=0;3>e;e++)w.ma[e]==l&&(x=e);while(!1===w.C[x].visible&&(w!==q||x!==s))}while(w!==q||x!==s);var y=null,C=null;for(l=0;l<h.length;l++){var w=h[l],x=u[l],B=w.C[x],K=w.ma[(x+1)%3],A=w.ma[x],I=K.y-b.y,R=A.z-b.z,O=K.x-b.x,P=K.z-b.z,F=A.x-b.x,U=A.y-b.y,N;0<d.length?(N=d.pop(),N.ma[0]=b,N.ma[1]=K,N.ma[2]=A,N.Oa.x=I*R-P*U,N.Oa.y=P*F-O*R,N.Oa.z=O*U-I*F,N.jb.length=0,N.visible=!1,N.sd=!0):\nN={ma:[b,K,A],C:Array(3),Oa:{x:I*R-P*U,y:P*F-O*R,z:O*U-I*F},jb:[],visible:!1};r.push(N);w.C[x]=N;N.C[1]=w;null!==C&&(C.C[0]=N,N.C[2]=C);C=N;null===y&&(y=N);f(N,w,B)}C.C[0]=y;y.C[2]=C;l=[];for(e=0;e<r.length;e++)if(h=r[e],!0===h.visible){u=h.jb;w=u.length;for(b=0;b<w;b++)x=u[b],y=x.cd,C=x.pc,null!==y&&(y.pc=C),null!==C&&(C.cd=y),null===y&&(x.jd.$b=C),k.push(x);h.sd&&d.push(h)}else l.push(h);r=l}p++}for(l=0;l<r.length;l++)h=r[l],h.sd&&d.push(h)}return{Ke:r}};a.d=function(c,d){var f;0<k.length?(f=k.pop(),\nf.face=c,f.jd=d,f.pc=null,f.cd=null):f=new a(c,d);c.jb.push(f);var e=d.$b;null!==e&&(e.cd=f);f.pc=e;d.$b=f};for(var k=Array(2E3),f=0;f<k.length;f++)k[f]=new a(null,null);for(var d=Array(1E3),f=0;f<d.length;f++)d[f]={ma:Array(3),C:Array(3),Oa:{x:0,y:0,z:0},jb:[],visible:!1}};var Aa=new function(){function a(a,f,d,c,g,l,e,b){var h=(a-d)*(l-b)-(f-c)*(g-e);return Math.abs(h)<m?void 0:{x:((a*c-f*d)*(g-e)-(a-d)*(g*b-l*e))/h,y:((a*c-f*d)*(l-b)-(f-c)*(g*b-l*e))/h}}var m=1E-12;this.cb=function(k,f){for(var d=k[0],c=d.x,g=d.y,l=d.x,e=d.y,b=k.length-1;0<b;b--)d=k[b],c=Math.min(c,d.x),g=Math.min(g,d.y),l=Math.max(l,d.x),e=Math.max(e,d.y);if(l-c<3*f||e-g<3*f)d=void 0;else{a:{d=!0;void 0==d&&(d=!1);c=[];g=k.length;for(l=0;l<=g;l++){var e=k[l%g],b=k[(l+1)%g],h=k[(l+2)%g],n,r,p;n=b.x-\ne.x;r=b.y-e.y;p=Math.sqrt(n*n+r*r);var q=f*n/p,s=f*r/p;n=h.x-b.x;r=h.y-b.y;p=Math.sqrt(n*n+r*r);n=f*n/p;r=f*r/p;if(e=a(e.x-s,e.y+q,b.x-s,b.y+q,b.x-r,b.y+n,h.x-r,h.y+n))if(c.push(e),h=c.length,d&&3<=h&&(e=c[h-3],b=c[h-2],h=c[h-1],0>(b.x-e.x)*(h.y-e.y)-(h.x-e.x)*(b.y-e.y))){d=void 0;break a}}c.shift();d=3>c.length?void 0:c}if(!d)a:{c=k.slice(0);for(d=0;d<k.length;d++){l=k[d%k.length];b=k[(d+1)%k.length];h=b.x-l.x;g=b.y-l.y;e=Math.sqrt(h*h+g*g);h=f*h/e;e=f*g/e;g=l.x-e;l=l.y+h;e=b.x-e;b=b.y+h;if(0!=c.length){s=\ng-e;r=l-b;h=[];n=p=!0;q=void 0;for(q=0;q<c.length;q++){var u=s*(l-c[q].y)-(g-c[q].x)*r;u<=m&&u>=-m&&(u=0);h.push(u);0<u&&(p=!1);0>u&&(n=!1)}if(p)c=[];else if(!n){s=[];for(q=0;q<c.length;q++)r=(q+1)%c.length,p=h[q],n=h[r],0<=p&&s.push(c[q]),(0<p&&0>n||0>p&&0<n)&&s.push(a(c[q].x,c[q].y,c[r].x,c[r].y,g,l,e,b));c=s}}if(3>c.length){d=void 0;break a}}d=c}}return d};return this};var Ba=new function(){function a(a){for(var f=a[0].x,d=a[0].y,c=f,g=d,l=1;l<a.length;l++)var e=a[l],f=Math.min(f,e.x),d=Math.min(d,e.y),c=Math.max(c,e.x),g=Math.max(g,e.y);a=c-f;g=g-d;return[{x:f+2*a,y:d+2*g,f:0},{x:f+2*a,y:d-2*g,f:0},{x:f-2*a,y:d+2*g,f:0}]}var m=1E-12;this.S=function(k,f){function d(){for(b=0;b<p.length;b++){var a=p[b],c=a.ma,d=c[0],e=c[1],f=c[2],c=d.x,h=d.y,d=d.z,g=e.x,k=e.y,e=e.z,l=f.x,q=f.y,f=f.z,s=c*(k-q)+g*(q-h)+l*(h-k);a.ha={x:-(h*(e-f)+k*(f-d)+q*(d-e))/s/2,y:-(d*(g-l)+e*(l-\nc)+f*(c-g))/s/2}}}function c(a){for(b=0;b<p.length;b++){var c=p[b];c.tb=!L.Ta(a,c.ha)}}function g(a,b){var c=Array(b.length),d;for(d=0;d<c.length;d++)c[d]=[];for(d=0;d<a.length;d++){var e=a[d];if(!(0>e.Oa.z))for(var f=e.C,h=0;h<f.length;h++){var g=f[h];if(!(0>g.Oa.z)){var k=e.ma,l=k[(h+1)%3].index,k=k[h].index;2<l&&c[l-3].push([e,g,2<k?b[k-3]:null])}}}return c}function l(a){var b=[a[0]],c=a[0][0],d=a[0][1],e=a.length,f=1;a:for(;f<e;f++)for(var h=1;h<e;h++){var g=a[h];if(null!==g){if(g[1]===c)if(b.unshift(g),\nc=g[0],a[h]=null,b.length===e)break a;else continue;if(g[0]===d&&(b.push(g),d=g[1],a[h]=null,b.length===e))break a}}b[0][0]!=b[e-1][1]&&b.push([b[e-1][1],b[0][0]]);return b}function e(a,b,c,d){var e=[],f=[],h=c.length,g,k=b.length,l=0,q=-1,s=-1,n=-1,p=null,u=d;for(d=0;d<h;d++){var r=(u+1)%h,w=c[u][0],E=c[r][0];if(L.d(w.ha,E.ha)>m)if(w.tb&&E.tb){var J=[],M=[];for(g=0;g<k;g++){q=(l+1)%k;if(p=L.za(b[l],b[q],w.ha,E.ha,!1))if(M.push(l),2===J.push(p))break;l=q}if(2===J.length){q=J[1];p=L.d(w.ha,J[0]);q=\nL.d(w.ha,q);w=p<q?0:1;p=p<q?1:0;q=M[w];-1===s&&(s=q);if(-1!==n)for(;q!=n;)n=(n+1)%k,e.push(b[n]),f.push(null);e.push(J[w],J[p]);f.push(c[u][2],null);n=M[p]}}else if(w.tb&&!E.tb)for(g=0;g<k;g++){q=(l+1)%k;if(p=L.za(b[l],b[q],w.ha,E.ha,!1)){if(-1!==n)for(J=n;l!=J;)J=(J+1)%k,e.push(b[J]),f.push(null);e.push(p);f.push(c[u][2]);-1===s&&(s=l);break}l=q}else if(!w.tb&&E.tb)for(g=0;g<k;g++){q=(l+1)%k;if(p=L.za(b[l],b[q],w.ha,E.ha,!1)){e.push(w.ha,p);f.push(c[u][2],null);n=l;break}l=q}else e.push(w.ha),f.push(c[u][2]);\nu=r}if(0==e.length)f=e=null;else if(-1!==n)for(;s!=n;)n=(n+1)%k,e.push(b[n]),f.push(null);a.o=e;a.C=f}if(1===k.length)k[0].o=f.slice(0),k[0].C=[];else{var b,h;h=a(f);var n=[],r;for(b=0;b<h.length;b++)r=h[b],n.push({x:r.x,y:r.y,z:r.x*r.x+r.y*r.y-r.f});for(b=0;b<k.length;b++)r=k[b],r.o=null,n.push({x:r.x,y:r.y,z:r.x*r.x+r.y*r.y-r.f});var p=za.S(n).Ke;d();c(f);n=g(p,k);for(b=0;b<k.length;b++)if(r=n[b],0!==r.length){var q=k[b];r=l(r);var s=r.length,u=-1;for(h=0;h<s;h++)r[h][0].tb&&(u=h);if(0<=u)e(q,f,\nr,u);else{var u=[],w=[];for(h=0;h<s;h++)L.d(r[h][0].ha,r[(h+1)%s][0].ha)>m&&(u.push(r[h][0].ha),w.push(r[h][2]));q.o=u;q.C=w}q.o&&3>q.o.length&&(q.o=null,q.C=null)}}};this.zc=function(k,f){var d,c,g=!1,l=k.length;for(c=0;c<l;c++)d=k[c],null===d.o&&(g=!0),d.pe=d.f;if(g){var g=a(f),e=[],b,h;c=k.length;for(d=0;d<g.length;d++)b=g[d],e.push({x:b.x,y:b.y,z:b.x*b.x+b.y*b.y});for(d=0;d<c;d++)b=k[d],e.push({x:b.x,y:b.y,z:b.x*b.x+b.y*b.y});b=za.S(e).Ke;g=Array(c);for(d=0;d<c;d++)g[d]={};e=b.length;for(d=0;d<\ne;d++)if(h=b[d],0<h.Oa.z){var n=h.ma,m=n.length;for(h=0;h<m-1;h++){var p=n[h].index-3,q=n[h+1].index-3;0<=p&&0<=q&&(g[p][q]=!0,g[q][p]=!0)}h=n[0].index-3;0<=q&&0<=h&&(g[q][h]=!0,g[h][q]=!0)}for(d=0;d<c;d++){h=g[d];b=k[d];var q=Number.MAX_VALUE,e=null,s;for(s in h)h=k[s],n=L.d(b,h),q>n&&(q=n,e=h);b.Tj=e;b.vf=Math.sqrt(q)}for(c=0;c<l;c++)d=k[c],s=Math.min(Math.sqrt(d.f),0.95*d.vf),d.f=s*s;this.S(k,f);for(c=0;c<l;c++)d=k[c],d.pe!==d.f&&0<d.uc&&(s=Math.min(d.uc,d.pe-d.f),d.f+=s,d.uc-=s)}}};var Ca=new function(){this.Dg=function(a){a=a.e;for(var m=0,k=a.length,f=0;f<k;f++){var d=a[f];if(d.o){var c=d.x,g=d.y;L.k(d.o,d);c=c-d.x;d=g-d.y;d=(0<c?c:-c)+(0<d?d:-d);m<d&&(m=d)}}return m};this.ya=function(a,m){var k=a.e,f,d,c,g;switch(m){case \"random\":return a.e[Math.floor(k.length*Math.random())];case \"topleft\":f=k[0];var l=f.x+f.y;for(g=1;g<k.length;g++)d=k[g],c=d.x+d.y,c<l&&(l=c,f=d);return f;case \"bottomright\":f=k[0];l=f.x+f.y;for(g=1;g<k.length;g++)d=k[g],c=d.x+d.y,c>l&&(l=c,f=d);return f;\ndefault:f=k[0];c=d=L.d(a,f);for(g=k.length-1;1<=g;g--)l=k[g],d=L.d(a,l),d<c&&(c=d,f=l);return f}};this.Ja=function(a,m,k){var f=a.e;if(f[0].C){var d=f.length;for(a=0;a<d;a++)f[a].kd=!1,f[a].ic=0;var d=[],c,g;g=c=0;d[c++]=m||f[0];for(m=m.ic=0;g<c;)if(f=d[g++],!f.kd&&f.C){k(f,m++,f.ic);f.kd=!0;var l=f.C,e=l.length;for(a=0;a<e;a++){var b=l[a];b&&!0!==b.kd&&(0===b.ic&&(b.ic=f.ic+1),d[c++]=b)}}}else for(a=0;a<f.length;a++)k(f[a],a,1)}};var G=function(){function a(a,e,h,q,s,p,u,P){var F=D.extend({},l,a);1>a.lineHeight&&(a.lineHeight=1);a=F.fontFamily;var U=F.fontStyle+\" \"+F.fontVariant+\" \"+F.fontWeight,N=F.rb,S=F.Yc,t=U+\" \"+a;F.Oe=t;var z={la:!1,mc:0,fontSize:0};e.save();e.font=U+\" \"+y+\"px \"+a;e.textBaseline=\"middle\";e.textAlign=\"center\";m(e,F);h=h.trim();w.text=h;d(q,s,p,x);if(/[\\u3000-\\u303f\\u3040-\\u309f\\u30a0-\\u30ff\\uff00-\\uff9f\\u4e00-\\u9faf\\u3400-\\u4dbf]/.test(h))f(w),k(e,w,t),c(F,w,x,S,N,!0,z);else if(k(e,w,t),c(F,w,x,S,N,!1,\nz),!z.la&&(u&&(f(w),k(e,w,t)),P||u))P&&(z.ec=!0),c(F,w,x,S,S,!0,z);if(z.la){var H=\"\",E=0,J=Number.MAX_VALUE,M=Number.MIN_VALUE;g(F,w,z.mc,z.fontSize,x,z.ec,function(a,c){0<H.length&&c===b&&(H+=b);H+=a},function(a,b,c,d,f){d===r&&(H+=n);e.save();e.translate(p.x,b);a=z.fontSize/y;e.scale(a,a);e.fillText(H,0,0);e.restore();H=c;E<f&&(E=f);J>b&&(J=b);M<b&&(M=b)});z.da={x:p.x-E/2,y:J-z.fontSize/2,f:E,i:M-J+z.fontSize};e.restore()}else e.clear&&e.clear();return z}function m(a,c){var d=c.Oe,f=e[d];void 0===\nf&&(f={},e[d]=f);f[b]=a.measureText(b).width;f[h]=a.measureText(h).width}function k(a,b,c){var d,f=b.text.split(/(\\n|[ \\f\\r\\t\\v\\u2028\\u2029]+|\\u00ad+|\\u200b+)/),h=[],g=[],k=f.length>>>1;for(d=0;d<k;d++)h.push(f[2*d]),g.push(f[2*d+1]);2*d<f.length&&(h.push(f[2*d]),g.push(void 0));c=e[c];for(d=0;d<h.length;d++)f=h[d],k=c[f],void 0===k&&(k=a.measureText(f).width,c[f]=k);b.ld=h;b.lg=g}function f(a){for(var c=a.text.split(/\\s+/),d=[],e={\".\":!0,\",\":!0,\";\":!0,\"?\":!0,\"!\":!0,\":\":!0,\"\\u3002\":!0},f=0;f<c.length;f++){var h=\nc[f];if(3<h.length){for(var g=\"\",g=g+h.charAt(0),g=g+h.charAt(1),k=2;k<h.length-2;k++){var q=h.charAt(k);e[q]||(g+=p);g+=q}g+=p;g+=h.charAt(h.length-2);g+=h.charAt(h.length-1);d.push(g)}else d.push(h)}a.text=d.join(b)}function d(a,b,c,d){for(var e,f,h=0;h<a.length;h++)a[h].y===b.y&&(void 0===e?e=h:f=h);void 0===f&&(f=e);e!==f&&a[f].x<a[e].x&&(h=e,e=f,f=h);d.o=a;d.q=b;d.ud=c;d.tf=e;d.uf=f}function c(a,b,c,d,e,f,h){var k=a.lineHeight,q=Math.max(a.eb,0.001),l=a.sb,s=b.ld,n=c.ud,p=c.q,m=void 0,u=void 0;\nswitch(a.verticalAlign){case \"top\":n=p.y+p.i-n.y;break;case \"bottom\":n=n.y-p.y;break;default:n=2*Math.min(n.y-p.y,p.y+p.i-n.y)}l=Math.min(n,l*c.q.i);if(0>=l)h.la=!1;else{n=d;e=Math.min(e,l);p=Math.min(1,l/Math.max(20,b.ld.length));do{var r=(n+e)/2,x=Math.min(s.length,Math.floor((l+r*(k-1-2*q))/(r*k))),w=void 0;if(0<x){var y=1,$=x;do{var Z=Math.floor((y+$)/2);if(g(a,b,Z,r,c,f&&r===d&&Z===x,null,null)){if($=m=w=Z,y===$)break}else if(y=Z+1,y>$)break}while(1)}void 0!==w?n=u=r:e=r}while(e-n>p);void 0===\nu?(h.la=!1,h.fontSize=0):(h.la=!0,h.fontSize=u,h.mc=m,h.ec=f&&r===n)}}function g(a,c,d,f,g,k,l,n){var p=a.ob,m=f*(a.lineHeight-1),r=a.verticalAlign,x=Math.max(a.eb,0.001);a=e[a.Oe];var w=c.ld;c=c.lg;var z=g.o,H=g.ud,E=g.tf,J=g.uf,M;switch(r){case \"top\":g=H.y+f/2+f*x;M=1;break;case \"bottom\":g=H.y-(f*d+m*(d-1))+f/2-f*x;M=-1;break;default:g=H.y-(f*(d-1)/2+m*(d-1)/2),M=1}r=g;for(x=0;x<d;x++)q[2*x]=g-f/2,q[2*x+1]=g+f/2,g+=M*f,g+=M*m;for(;s.length<q.length;)s.push(Array(2));x=q;g=2*d;M=s;for(var Q=z.length,\n$=E,E=(E-1+Q)%Q,Z=J,J=(J+1)%Q,W=0;W<g;){for(var ca=x[W],ka=z[E];ka.y<ca;)$=E,E=(E-1+Q)%Q,ka=z[E];for(var fa=z[J];fa.y<ca;)Z=J,J=(J+1)%Q,fa=z[J];var la=z[$],ma=z[Z],fa=ma.x+(fa.x-ma.x)*(ca-ma.y)/(fa.y-ma.y);M[W][0]=la.x+(ka.x-la.x)*(ca-la.y)/(ka.y-la.y);M[W][1]=fa;W++}for(x=0;x<d;x++)z=2*x,g=H.x,M=g-s[z][0],Q=s[z][1]-g,M=M<Q?M:Q,Q=g-s[z+1][0],z=s[z+1][1]-g,z=Q<z?Q:z,u[x]=2*(M<z?M:z)-p*f;$=a[b]*f/y;M=a[h]*f/y;p=0;E=u[p];H=0;z=void 0;for(x=0;x<w.length;x++){g=w[x];Z=c[x];Q=a[g]*f/y;if(H+Q<E&&w.length-\nx>=d-p&&\"\\n\"!=z)H+=Q,\" \"===Z&&(H+=$),l&&l(g,z);else{if(Q>E&&(p!==d-1||!k))return!1;if(p+1>=d){if(k){d=E-H-M;if(d>M||Q>M)d=Math.floor(g.length*d/Q),0<d&&l&&l(g.substring(0,d),z);l&&l(h,void 0);n&&n(p,r,g,z,H);return!0}return!1}p++;n&&n(p,r,g,z,H);r+=f;r+=m;E=u[p];H=Q;\" \"===Z&&(H+=$);if(Q>E&&(p!==d||!k))return!1}z=Z}n&&n(p,r,void 0,void 0,H);return!0}var l={rb:72,Yc:0,lineHeight:1.05,ob:1,eb:0.5,sb:0.9,fontFamily:\"sans-serif\",fontStyle:\"normal\",fontWeight:\"normal\",fontVariant:\"normal\",verticalAlign:\"center\"},\ne={},b=\" \",h=\"\\u2026\",n=\"\\u2010\",r=\"\\u00ad\",p=\"\\u200b\",q=[],s=[],u=[],w={text:\"\",ld:void 0,lg:void 0},x={o:void 0,q:void 0,ud:void 0,tf:0,uf:0},y=100;return{Me:a,ye:function(b,c,d,e,f,g,h,k,l,q,n,s){var p,m=0,u=0;d=d.toString().trim();!s&&l.result&&d===l.sg&&Math.abs(q-l.ve)/q<=n&&(p=l.result,p.la&&(m=g.x-l.zg,u=g.y-l.Ag,n=l.hd,c.save(),c.translate(m,u),n.Sa(c),c.restore()));p||(n=l.hd,n.clear(),p=a(b,n,d,e,f,g,h,k),p.la&&n.Sa(c),l.ve=q,l.zg=g.x,l.Ag=g.y,l.result=p,l.sg=d);return p.la?{la:!0,mc:p.mc,\nfontSize:p.fontSize,da:{x:p.da.x+m,y:p.da.y+u,f:p.da.f,i:p.da.i},ec:p.ec}:{la:!1}},xi:function(){return{ve:0,zg:0,Ag:0,result:void 0,hd:new ea,sg:void 0}},Ea:l}}();var Da=new function(){function a(a,d){return function(c,g,l,e){function b(a,c,e,f,g){if(0!=a.length){var n=a.shift(),q=k(n),s,p,m,r;if(d(f,g)){s=c;m=q/f;do{q=n.shift();p=q.vc;r=p/m;p=q;var P=e,F=m;p.x=s+r/2;p.y=P+F/2;l&&h(q,s,e,r,m);s+=r}while(0<n.length);return b(a,c,e+m,f,g-m)}s=e;r=q/g;do q=n.shift(),p=q.vc,m=p/r,p=q,P=s,F=m,p.x=c+r/2,p.y=P+F/2,l&&h(q,c,s,r,m),s+=m;while(0<n.length);return b(a,c+r,e,f-r,g)}}function h(a,b,c,d,e){a.o=[{x:b,y:c},{x:b+d,y:c},{x:b+d,y:c+e},{x:b,y:c+e}]}var n=g.x,m=\ng.y,p=g.f;g=g.i;if(0!=c.length)if(1==c.length)c[0].x=n+p/2,c[0].y=m+g/2,c[0].Dd=0,l&&h(c[0],n,m,p,g);else{c=c.slice(0);for(var q=0,s=0;s<c.length;s++)q+=c[s].T;q=p*g/q;for(s=0;s<c.length;s++)c[s].vc=c[s].T*q;e=a(c,p,g,[[c.shift()]],e);b(e,n,m,p,g)}}}function m(a,d,c,g){function l(a){return Math.max(Math.pow(h*a/b,c),Math.pow(b/(h*a),g))}var e=k(a),b=e*e,h=d*d;d=l(a[0].vc);for(e=1;e<a.length;e++)d=Math.max(d,l(a[e].vc));return d}function k(a){for(var d=0,c=0;c<a.length;c++)d+=a[c].vc;return d}this.ue=\na(function(a,d,c,g,l){l=Math.pow(2,l);for(var e=1/l,b=d<c;0<a.length;){var h=g[g.length-1],n=a.shift(),r=b?d:c,p=b?l:e,q=b?e:l,s=m(h,r,p,q);h.push(n);r=m(h,r,p,q);s<r&&(h.pop(),g.push([n]),b?c-=k(h)/d:d-=k(h)/c,b=d<c)}return g},function(a,d){return a<d});this.Xb=a(function(a,d,c,g,l){function e(a){if(1<g.length){for(var c=g[g.length-1],e=g[g.length-2].slice(0),f=0;f<c.length;f++)e.push(c[f]);m(e,d,b,h)<a&&g.splice(-2,2,e)}}for(var b=Math.pow(2,l),h=1/b;0<a.length;){c=g[g.length-1];l=m(c,d,b,h);if(0==\na.length)return;var k=a.shift();c.push(k);var r=m(c,d,b,h);l<r&&(c.pop(),e(l),g.push([k]))}e(m(g[g.length-1],d,b,h));return g},function(){return!0})};function Ea(a){var m={},k=a.Ud,f;a.c.j(\"model:loaded\",function(a){f=a});this.H=function(){a.c.p(\"api:initialized\",this)};this.Cc=function(a,c,f,l){this.od(m,c);this.pd(m,c);this.nd(m,c,!1);l&&l(m);a(k,m,f)};this.td=function(a,c,g,k,e,b,h){if(a){for(a=c.length-1;0<=a;a--){var n=c[a],m=D.extend({group:n.group},e);m[g]=k(n);b(m)}0<c.length&&h(D.extend({groups:Y.Lc(f,k).map(function(a){return a.group})},e))}};this.pd=function(a,c){a.selected=c.selected;a.hovered=c.Db;a.open=c.open;a.openness=c.Kb;a.exposed=\nc.U;a.exposure=c.ka;a.transitionProgress=c.ua;a.revealed=!c.ba.Na();a.browseable=c.Qa?c.M:void 0;a.visible=c.ea;a.labelDrawn=c.ra&&c.ra.la;return a};this.od=function(a,c){var f=c.parent;a.group=c.group;a.parent=f&&f.group;a.weightNormalized=c.xg;a.level=c.R-1;a.siblingCount=f&&f.e.length;a.hasChildren=!c.empty();a.index=c.index;a.indexByWeight=c.Dd;a.description=c.description;a.attribution=c.na;return a};this.nd=function(a,c,f){a.polygonCenterX=c.K.x;a.polygonCenterY=c.K.y;a.polygonArea=c.K.ja;a.boxLeft=\nc.q.x;a.boxTop=c.q.y;a.boxWidth=c.q.f;a.boxHeight=c.q.i;if(c.ra&&c.ra.la){var k=c.ra.da;a.labelBoxLeft=k.x;a.labelBoxTop=k.y;a.labelBoxWidth=k.f;a.labelBoxHeight=k.i;a.labelFontSize=c.ra.fontSize}f&&c.aa&&(a.polygon=c.aa.map(function(a){return{x:a.x,y:a.y}}),a.neighbors=c.C&&c.C.map(function(a){return a&&a.group}));return a}};var na=new function(){var a=window.console;this.Pa=function(a){throw\"FoamTree: \"+a;};this.info=function(m){a.info(\"FoamTree: \"+m)};this.warn=function(m){a.warn(\"FoamTree: \"+m)}};function Fa(a){function m(b,c){b.e=[];b.La=!0;var e=d(c),f=0;if(\"flattened\"==a.ab&&0<c.length&&0<b.R){var g=c.reduce(function(a,b){return a+D.B(b.weight,1)},0),h=k(b.group,!1);h.description=!0;h.T=g*a.cc;h.index=f++;h.parent=b;h.R=b.R+1;h.id=h.id+\"_d\";b.e.push(h)}for(g=0;g<c.length;g++){var l=c[g],h=D.B(l.weight,1);if(0>=h)if(a.tj)h=0.9*e;else continue;l=k(l,!0);l.T=h;l.index=f;l.parent=b;l.R=b.R+1;b.e.push(l);f++}}function k(a,b){var c=new Ga;f(a);c.id=a.__id;c.group=a;b&&(n[a.__id]=c);return c}\nfunction f(a){D.Q(a,\"__id\")||(Object.defineProperty(a,\"__id\",{enumerable:!1,configurable:!1,writable:!1,value:h}),h++)}function d(a){for(var b=Number.MAX_VALUE,c=0;c<a.length;c++){var d=a[c].weight;0<d&&b>d&&(b=d)}b===Number.MAX_VALUE&&(b=1);return b}function c(a){if(!a.empty()){a=a.e;var b=0,c;for(c=a.length-1;0<=c;c--){var d=a[c].T;b<d&&(b=d)}for(c=a.length-1;0<=c;c--)d=a[c],d.xg=d.T/b}}function g(a){if(!a.empty()){a=a.e.slice(0).sort(function(a,b){return a.T<b.T?1:a.T>b.T?-1:a.index-b.index});\nfor(var b=0;b<a.length;b++)a[b].Dd=b}}function l(){for(var c=b.e.reduce(function(a,b){return a+b.T},0),d=0;d<b.e.length;d++){var e=b.e[d];e.na&&(e.T=Math.max(0.025,a.Ug)*c)}}var e=this,b=new Ga,h,n,r,p,q;this.H=function(){return b};this.S=function(b){var d=b.group.groups,e=a.pi;return!b.e&&!b.description&&d&&0<d.length&&q+d.length<=e?(q+=d.length,m(b,d),c(b),g(b),!0):!1};this.Y=function(a){function d(a){var b=a.groups;if(b)for(var c=0;c<b.length;c++){var e=b[c];f(e);var h=e.__id;n[h]=null;p[h]=a;\nh=e.id;D.V(h)||(r[h]=e);d(e)}}function e(a,b){if(!a)return b;var c=Math.max(b,a.__id||0),d=a.groups;if(d&&0<d.length)for(var f=d.length-1;0<=f;f--)c=e(d[f],c);return c}b.group=a;b.Ca=!1;b.M=!1;b.Qa=!1;b.open=!0;b.Kb=1;h=e(a,0)+1;n={};r={};p={};q=0;a&&(f(a),n[a.__id]=b,D.V(a.id)||(r[a.id]=a),d(a));m(b,a&&a.groups||[]);(function(a){if(!a.empty()){var b=k({attribution:!0});b.index=a.e.length;b.parent=a;b.R=a.R+1;b.na=!0;a.e.push(b)}})(b);c(b);l();g(b)};this.update=function(){Y.Fa(b,function(a){if(!a.empty()){a=\na.e;for(var b=d(a.map(function(a){return a.group})),c=0;c<a.length;c++){var e=a[c];e.T=0<e.group.weight?e.group.weight:0.9*b}}});c(b);l();g(b)};this.A=function(a){return function(){if(D.V(a)||D.of(a))return[];if(Array.isArray(a))return a.map(e.d,e);if(D.jc(a)){if(D.Q(a,\"__id\"))return[e.d(a)];if(D.Q(a,\"all\")){var c=[];Y.F(b,function(a){c.push(a)});return c}if(D.Q(a,\"groups\"))return e.A(a.groups)}return[e.d(a)]}().filter(function(a){return void 0!==a})};this.d=function(a){if(D.jc(a)&&D.Q(a,\"__id\")){if(a=\na.__id,D.Q(n,a)){if(null===n[a]){for(var b=p[a],c=[];b;){b=b.__id;c.push(b);if(n[b])break;b=p[b]}for(b=c.length-1;0<=b;b--)this.S(n[c[b]])}return n[a]}}else if(D.Q(r,a))return this.d(r[a])};this.k=function(a,b,c){return{e:e.A(a),Ia:D.B(a&&a[b],!0),Ha:D.B(a&&a.keepPrevious,c)}}}function Ha(a,m,k){var f={};m.Ha&&Y.F(a,function(a){k(a)&&(f[a.id]=a)});a=m.e;m=m.Ia;for(var d=a.length-1;0<=d;d--){var c=a[d];f[c.id]=m?c:void 0}var g=[];D.Ga(f,function(a){void 0!==a&&g.push(a)});return g};function Ia(a){function m(a,b){var c=a.ka;b.opacity=1;b.Ka=1;b.va=0>c?1-p.ei/100*c:1;b.wa=0>c?1-p.fi/100*c:1;b.fa=0>c?1+0.5*c:1}function k(a){a=a.ka;return Math.max(0.001,0===a?1:1+a*(p.Va-1))}function f(a,b){for(var c=a.reduce(function(a,b){a[b.id]=b;return a},{}),d=a.length-1;0<=d;d--)Y.F(a[d],function(a){c[a.id]=void 0});var e=[];D.Ga(c,function(a){a&&Y.He(a,function(a){a.open||e.push(a)})});var f=[];D.Ga(c,function(a){a&&a.open&&f.push(a)});d=[];0!==e.length&&d.push(y.Jb({e:e,Ia:!0,Ha:!0},b,!0));\nreturn pa(d)}function d(d,f,k,n){var m=l();if(0===d.length&&!m)return(new V).J().L();var s=d.reduce(function(a,b){a[b.id]=!0;return a},{}),r=[];d=[];if(C.reduce(function(a,b){return a||s[b.id]&&(!b.U||1!==b.ka)||!s[b.id]&&!b.parent.U&&(b.U||-1!==b.ka)},!1)){var y=[],A={};C.forEach(function(a){s[a.id]&&(a.U||r.push(a),a.U=!0,Y.Fa(a,function(a){y.push(b(a,1));A[a.id]=!0}))});0<y.length?(Y.F(q,function(a){s[a.id]||(a.U&&r.push(a),a.U=!1);A[a.id]||y.push(b(a,-1))}),d.push(x.D.m({}).Ya(y).call(h).bb()),\nc(s),d.push(g(m)),k&&(w.sc(B,p.Pc,p.Ua,X.pa(p.gc)),w.Pb())):(d.push(e(k)),f&&Y.F(q,function(a){a.U&&r.push(a)}))}return pa(d).N(function(){u.td(f,r,\"exposed\",function(a){return a.U},{indirect:n},a.options.Ef,a.options.Df)})}function c(a){C.reduce(n(!0,void 0,function(b){return b.U||a[b.id]}),r(B));B.x-=B.f*(p.Va-1)/2;B.y-=B.i*(p.Va-1)/2;B.f*=p.Va;B.i*=p.Va}function g(b){if(b||!w.Rd())return x.D.m(s).ia({duration:0.7*p.Ua,G:{x:{end:B.x+B.f/2,P:X.pa(p.gc)},y:{end:B.y+B.i/2,P:X.pa(p.gc)}},ca:function(){a.c.p(\"foamtree:dirty\",\n!0)}}).bb();s.x=B.x+B.f/2;s.y=B.y+B.i/2;return(new V).J().L()}function l(){return!!C&&C.reduce(function(a,b){return a||0!==b.ka},!1)}function e(a){var c=[],d=[];Y.F(q,function(a){0!==a.ka&&d.push(b(a,0,function(){this.U=!1}))});c.push(x.D.m({}).Ya(d).bb());w.content(0,0,K,A);a&&(c.push(w.reset(p.Ua,X.pa(p.gc))),w.Pb());return pa(c)}function b(b,c,d){var e=x.D.m(b);0===b.ka&&0!==c&&e.call(function(){this.Bc(I);this.zb(m)});e.ia({duration:p.Ua,G:{ka:{end:c,P:X.pa(p.gc)}},ca:function(){q.I=!0;q.Ma=!0;\na.c.p(\"foamtree:dirty\",!0)}});0===c&&e.call(function(){this.Md();this.nc();this.ed(I);this.dd(m)});return e.call(d).xa()}function h(){var a=q.e.reduce(n(!1,I.Tb,void 0),r({})).da,b=p.Pc,c=Math.min(a.x,B.x-B.f*b),d=Math.max(a.x+a.f,B.x+B.f*(1+b)),e=Math.min(a.y,B.y-B.i*b),a=Math.max(a.y+a.i,B.y+B.i*(1+b));w.content(c,e,d-c,a-e)}function n(a,b,c){var d={};return function(e,f){if(!c||c(f)){for(var h=a?f.aa||f.o:f.o,g,k=h.length-1;0<=k;k--)g=void 0!==b?b(f,h[k],d):h[k],e.Zc=Math.min(e.Zc,g.x),e.Od=Math.max(e.Od,\ng.x),e.$c=Math.min(e.$c,g.y),e.Pd=Math.max(e.Pd,g.y);e.da.x=e.Zc;e.da.y=e.$c;e.da.f=e.Od-e.Zc;e.da.i=e.Pd-e.$c}return e}}function r(a){return{Zc:Number.MAX_VALUE,Od:Number.MIN_VALUE,$c:Number.MAX_VALUE,Pd:Number.MIN_VALUE,da:a}}var p=a.options,q,s,u,w,x,y,C,B,K,A,I={sf:function(a,b){b.scale=k(a);return!1},Sb:function(a,b){var c=k(a),d=s.x,e=s.y;b.translate(d,e);b.scale(c,c);b.translate(-d,-e)},Ub:function(a,b,c){a=k(a);var d=s.x,e=s.y;c.x=(b.x-d)/a+d;c.y=(b.y-e)/a+e},Tb:function(a,b,c){a=k(a);var d=\ns.x,e=s.y;c.x=(b.x-d)*a+d;c.y=(b.y-e)*a+e;return c}};a.c.j(\"stage:initialized\",function(a,b,c,d){s={x:c/2,y:d/2};K=c;A=d;B={x:0,y:0,f:K,i:A}});a.c.j(\"stage:resized\",function(a,b,c,d){s.x*=c/a;s.y*=d/b;K=c;A=d});a.c.j(\"api:initialized\",function(a){u=a});a.c.j(\"zoom:initialized\",function(a){w=a});a.c.j(\"model:loaded\",function(a,b){q=a;C=b});a.c.j(\"model:childrenAttached\",function(a){C=a});a.c.j(\"timeline:initialized\",function(a){x=a});a.c.j(\"openclose:initialized\",function(a){y=a});var R=[\"groupExposureScale\",\n\"groupUnexposureScale\",\"groupExposureZoomMargin\"];a.c.j(\"options:changed\",function(a){D.nb(a,R)&&l()&&(c({}),w.Aj(B,p.Pc),w.Pb())});this.H=function(){a.c.p(\"expose:initialized\",this)};this.fc=function(a,b,c,e){var h=a.e.reduce(function(a,b){for(var c=b;c=c.parent;)a[c.id]=!0;return a},{}),g=Ha(q,a,function(a){return a.U&&!a.open&&!h[a.id]}),k=new V;f(g,b).N(function(){d(g.filter(function(a){return a.o&&a.aa}),b,c,e).N(k.J)});return k.L()}};function Ja(a){function m(d){function b(a,b){var c=Math.min(1,Math.max(0,a.ua));b.opacity=c;b.va=1;b.wa=c;b.Ka=c;b.fa=a.Gb}var h=a.options,k=h.oj,m=h.pj,p=h.lj,q=h.mj,s=h.nj,u=h.fe,w=k+m+p+q+s,x=0<w?u/w:0,y=[];l.gb(h.hg,h.gg,h.ig,h.jg,h.fg);if(0===x&&d.e&&d.M){u=d.e;for(w=0;w<u.length;w++){var C=u[w];C.ua=1;C.Gb=1;C.zb(b);C.nc();C.dd(b)}d.I=!0;a.c.p(\"foamtree:dirty\",0<x);return(new V).J().L()}if(d.e&&d.M){Ca.Ja(d,Ca.ya(d,a.options.he),function(c,d,e){c.Bc(l);c.zb(b);e=\"groups\"===a.options.ge?e:d;\nd=f.D.m(c).fb(e*x*k).ia({duration:x*m,G:{ua:{end:1,P:X.pa(h.kj)}},ca:function(){this.I=!0;a.c.p(\"foamtree:dirty\",0<x)}}).xa();e=f.D.m(c).fb(g?x*(p+e*q):0).ia({duration:g?x*s:0,G:{Gb:{end:1,P:X.Ib}},ca:function(){this.I=!0;a.c.p(\"foamtree:dirty\",0<x)}}).xa();c=f.D.m(c).Ya([d,e]).oe().ib(function(){this.Md();this.nc();this.ed(l);this.dd(b)}).xa();y.push(c)});c.d();var B=new V;f.D.m({}).Ya(y).call(function(){c.k();B.J()}).start();return B.L()}return(new V).J().L()}var k,f,d=[],c=new qa(D.ta);a.c.j(\"stage:initialized\",\nfunction(){});a.c.j(\"stage:resized\",function(){});a.c.j(\"stage:newLayer\",function(a,b){d.push(b)});a.c.j(\"model:loaded\",function(a){k=a;c.clear()});a.c.j(\"zoom:initialized\",function(){});a.c.j(\"timeline:initialized\",function(a){f=a});var g=!1;a.c.j(\"render:renderers:resolved\",function(a){g=a.labelPlainFill||!1});var l=new function(){var a=0,b=0,c=0,d=0,f=0,g=0;this.gb=function(k,l,m,w,x){a=1+l;b=1-a;c=m;d=w;f=x;g=k};this.sf=function(g,k){k.scale=a+b*g.ua;return 0!==f||0!==c||0!==d};this.Sb=function(k,\nl){var m=a+b*k.ua,w=k.parent,x=g*k.x+(1-g)*w.x,y=g*k.y+(1-g)*w.y;l.translate(x,y);l.scale(m,m);m=1-k.ua;l.rotate(f*Math.PI*m);l.translate(-x,-y);l.translate(w.q.f*c*m,w.q.i*d*m)};this.Ub=function(f,k,l){var m=a+b*f.ua,r=g*f.x+(1-g)*f.parent.x,y=g*f.y+(1-g)*f.parent.y,C=1-f.ua;f=f.parent;l.x=(k.x-r)/m+r-f.q.f*c*C;l.y=(k.y-y)/m+y-f.q.i*d*C};this.Tb=function(f,k,l){var m=a+b*f.ua,r=g*f.x+(1-g)*f.parent.x,y=g*f.y+(1-g)*f.parent.y,C=1-f.ua;f=f.parent;l.x=(k.x-r)*m+r-f.q.f*c*C;l.y=(k.y-y)*m+y-f.q.i*d*C}};\nthis.H=function(){};this.k=function(){function d(a,b){var c=Math.min(1,Math.max(0,a.ua));b.opacity=c;b.va=1;b.wa=c;b.Ka=c;b.fa=a.Gb}function b(a,b){var c=Math.min(1,Math.max(0,a.Zd));b.opacity=c;b.Ka=c;b.va=1;b.wa=1;b.fa=a.Gb}var h=a.options,n=h.Yd,m=h.Hi,p=h.Ii,q=h.Ji,s=h.Di,u=h.Ei,w=h.Fi,x=h.zi,y=h.Ai,C=h.Bi,B=s+u+w+x+y+C+m+p+q,K=0<B?n/B:0,A=[];c.A()?l.gb(h.Ni,h.Li,h.Oi,h.Pi,h.Ki):l.gb(h.hg,h.gg,h.ig,h.jg,h.fg);Ca.Ja(k,Ca.ya(k,a.options.Mi),function(c,k,n){var B=\"groups\"===a.options.Gi?n:k;A.push(f.D.m(c).call(function(){this.zb(d)}).fb(g?\nK*(s+B*u):0).ia({duration:g?K*w:0,G:{Gb:{end:0,P:X.Ib}},ca:function(){this.I=!0;a.c.p(\"foamtree:dirty\",!0)}}).xa());Y.F(c,function(c){A.push(f.D.m(c).call(function(){this.Bc(l);this.zb(b)}).fb(K*(x+y*B)).ia({duration:K*C,G:{Zd:{end:0,P:X.Ib}},ca:function(){this.I=!0;a.c.p(\"foamtree:dirty\",!0)}}).ib(function(){this.selected=!1;this.ed(l)}).xa())});A.push(f.D.m(c).call(function(){this.Bc(l)}).fb(K*(m+p*B)).ia({duration:K*q,G:{ua:{end:0,P:X.pa(h.Ci)}},ca:function(){this.I=!0;a.c.p(\"foamtree:dirty\",!0)}}).ib(function(){this.selected=\n!1;this.ed(l)}).xa())});return f.D.m({}).Ya(A).bb()};this.d=function(a){return m(a)}};function Ka(a){function m(a,b){var d=[];Y.F(g,function(b){if(b.e){var c=D.Q(a,b.id);b.open!==c&&(c||b.U||Y.F(b,function(a){if(a.U)return d.push(b),!1}))}});if(0===d.length)return(new V).J().L();var f;for(f=d.length-1;0<=f;f--)d[f].open=!1;var k=c.fc({e:d,Ia:!0,Ha:!0},b,!0,!0);for(f=d.length-1;0<=f;f--)d[f].open=!0;return k}function k(c,b,h){function k(b,c){b.zb(m);var e=d.D.m(b).ia({duration:a.options.bd,G:{Kb:{end:c?1:0,P:X.Ae}},ca:function(){this.I=!0;a.c.p(\"foamtree:dirty\",!0)}}).call(function(){this.open=\nc;b.Vb=!1}).ib(function(){this.nc();this.dd(m);delete f[this.id]}).xa();return f[b.id]=e}function m(a,b){b.opacity=1-a.Kb;b.va=1;b.wa=1;b.fa=1;b.Ka=1}var p=[],q=[];Y.F(g,function(a){if(a.M&&a.X){var b=D.Q(c,a.id),d=f[a.id];if(d&&d.Fb())d.stop();else if(a.open===b)return;a.Vb=b;b||(a.open=b,a.Td=!1);q.push(a);p.push(k(a,b))}});return 0<p.length?(a.c.p(\"openclose:changing\"),d.D.m({}).Ya(p).bb().N(function(){l.td(b,q,\"open\",function(a){return a.open},{indirect:h},a.options.Mf,a.options.Lf)})):(new V).J().L()}\nvar f,d,c,g,l;a.c.j(\"api:initialized\",function(a){l=a});a.c.j(\"model:loaded\",function(a){g=a;f={}});a.c.j(\"timeline:initialized\",function(a){d=a});a.c.j(\"expose:initialized\",function(a){c=a});this.H=function(){a.c.p(\"openclose:initialized\",this)};this.Jb=function(c,b,d){if(\"flattened\"==a.options.ab)return(new V).J().L();c=Ha(g,c,function(a){return a.open||a.Vb});for(var f=new V,l=0;l<c.length;l++)c[l].Vb=!0;0<c.length&&a.c.p(\"foamtree:attachChildren\");var p=c.reduce(function(a,b){a[b.id]=!0;return a},\n{});m(p,b).N(function(){k(p,b,d).N(f.J)});return f.L()}};function La(a){function m(d,c){var g=Ha(k,d,function(a){return a.selected});Y.F(k,function(a){!0===a.selected&&(a.selected=!a.selected,a.I=!a.I,a.$a=!a.$a)});var l;for(l=g.length-1;0<=l;l--){var e=g[l];e.selected=!e.selected;e.I=!e.I;e.$a=!e.$a}var b=[];Y.F(k,function(a){a.I&&b.push(a)});0<b.length&&a.c.p(\"foamtree:dirty\",!1);f.td(c,b,\"selected\",function(a){return a.selected},{},a.options.Of,a.options.Nf)}var k,f;a.c.j(\"api:initialized\",function(a){f=a});a.c.j(\"model:loaded\",function(a){k=a});this.H=\nfunction(){a.c.p(\"select:initialized\",this)};this.select=function(a,c){return m(a,c)}};function Ma(a){function m(a){return function(b){a.call(this,{x:b.x,y:b.y,scale:b.scale,vd:b.delta,ctrlKey:b.ctrlKey,metaKey:b.metaKey,altKey:b.altKey,shiftKey:b.shiftKey,wb:b.secondary,touches:b.touches})}}function k(){function b(a){return function(b){b.x*=N/r.clientWidth;b.y*=S/r.clientHeight;return a(b)}}\"external\"!==n.hf&&(\"hammerjs\"===n.hf&&D.Q(window,\"Hammer\")&&(E.H(r),E.m(\"tap\",b(h.d),!0),E.m(\"doubletap\",b(h.k),!0),E.m(\"hold\",b(h.ya),!0),E.m(\"touch\",b(h.Aa),!1),E.m(\"release\",b(h.Ba),!1),E.m(\"dragstart\",\nb(h.Y),!0),E.m(\"drag\",b(h.A),!0),E.m(\"dragend\",b(h.S),!0),E.m(\"transformstart\",b(h.Ta),!0),E.m(\"transform\",b(h.Ja),!0),E.m(\"transformend\",b(h.cb),!0)),F=new ta(r),U=new sa,F.d(b(h.d)),F.k(b(h.k)),F.ya(b(h.ya)),F.Ba(b(h.Aa)),F.Pa(b(h.Ba)),F.Y(b(h.Y)),F.A(b(h.A)),F.S(b(h.S)),F.za(b(h.za)),F.Ja(b(h.za)),F.Aa(b(h.Pa)),U.addEventListener(\"keyup\",function(b){var c=!1,d=void 0,e=n.Sf({keyCode:b.keyCode,preventDefault:function(){c=!0},preventOriginalEventDefault:function(){d=\"prevent\"},allowOriginalEventDefault:function(){d=\n\"allow\"}});\"prevent\"===d&&b.preventDefault();(c=c||0<=e.indexOf(!1))||27===b.keyCode&&a.c.p(\"interaction:reset\")}))}function f(){p.Gc(2)?a.c.p(\"interaction:reset\"):p.normalize(n.wc,X.pa(n.xc))}function d(a){return function(){y.empty()||a.apply(this,arguments)}}function c(a,b,c){var d={},f={};return function(g){var h;switch(a){case \"click\":h=n.yf;break;case \"doubleclick\":h=n.zf;break;case \"hold\":h=n.Ff;break;case \"hover\":h=n.Gf;break;case \"mousemove\":h=n.If;break;case \"mousewheel\":h=n.Kf;break;case \"mousedown\":h=\nn.Hf;break;case \"mouseup\":h=n.Jf;break;case \"dragstart\":h=n.Cf;break;case \"drag\":h=n.Af;break;case \"dragend\":h=n.Bf;break;case \"transformstart\":h=n.Rf;break;case \"transform\":h=n.Pf;break;case \"transformend\":h=n.Qf}var k=!1,m=!h.empty(),q=p.absolute(g,d),r=(b||m)&&l(q),s=(b||m)&&e(q);m&&(m=r?r.group:null,q=r?r.Ub(q,f):q,g.Lb=void 0,h=h({type:a,group:m,topmostClosedGroup:m,bottommostOpenGroup:s?s.group:null,x:g.x,y:g.y,xAbsolute:q.x,yAbsolute:q.y,scale:D.B(g.scale,1),secondary:g.wb,touches:D.B(g.touches,\n1),delta:D.B(g.vd,0),ctrlKey:g.ctrlKey,metaKey:g.metaKey,altKey:g.altKey,shiftKey:g.shiftKey,preventDefault:function(){k=!0},preventOriginalEventDefault:function(){g.Lb=\"prevent\"},allowOriginalEventDefault:function(){g.Lb=\"allow\"}}),k=k||0<=h.indexOf(!1),r&&r.na&&\"click\"===a&&(k=!1));k||c&&c({Dc:r,Wg:s},g)}}function g(a){function b(a,c){var d=c.e;if(d){for(var e=-Number.MAX_VALUE,f,g=0;g<d.length;g++){var h=d[g];!h.description&&h.ea&&J(h,a)&&h.scale>e&&(f=h,e=h.scale)}var k;f&&(k=b(a,f));return k||\nf}}return b(a,y)}function l(a,b){var c;if(\"flattened\"==n.ab)c=g(a);else{c=b||0;for(var d=t.length,e=void 0,f=0;f<d;f++){var h=t[f];h.scale>c&&!1===h.open&&h.ea&&J(h,a)&&(e=h,c=h.scale)}c=e}return c}function e(a){var b=void 0,c=0;Y.Jc(y,function(d){!0===d.open&&d.ea&&d.scale>c&&J(d,a)&&(b=d,c=d.scale)});return b}var b=v.nf(),h=this,n=a.options,r,p,q,s,u,w,x,y,C=!1,B,K,A,I,R,O,P,F,U,N,S;a.c.j(\"stage:initialized\",function(a,b,c,d){r=b;N=c;S=d;k()});a.c.j(\"stage:resized\",function(a,b,c,d){N=c;S=d});a.c.j(\"stage:disposed\",\nfunction(){F.kb();E.kb();U.d()});a.c.j(\"expose:initialized\",function(a){s=a});a.c.j(\"zoom:initialized\",function(a){p=a});a.c.j(\"openclose:initialized\",function(a){u=a});a.c.j(\"select:initialized\",function(a){w=a});a.c.j(\"titlebar:initialized\",function(a){x=a});a.c.j(\"timeline:initialized\",function(a){q=a});var t;a.c.j(\"model:loaded\",function(a,b){y=a;t=b});a.c.j(\"model:childrenAttached\",function(a){t=a});this.H=function(){};this.Aa=d(c(\"mousedown\",!1,function(){p.ui()}));this.Ba=d(c(\"mouseup\",!1,\nvoid 0));this.d=d(c(\"click\",!0,function(a,b){if(!b.wb&&!b.shiftKey){var c=a.Dc;c&&(c.na?document.location.href=xa.kg(\"iuuq;..b`ssnurd`sbi/bnl.gn`lusdd\"):w.select({e:[c],Ia:!c.selected,Ha:b.metaKey||b.ctrlKey},!0))}}));this.k=d(c(\"doubleclick\",!0,function(b,c){var d,e;if(c.wb||c.shiftKey){if(d=b.Dc)d.parent.U&&(d=d.parent),e={e:d.parent!==y?[d.parent]:[],Ia:!0,Ha:!1},w.select(e,!0),s.fc(e,!0,!0,!1)}else if(d=b.Dc)e={e:[d],Ia:!0,Ha:!1},d.Vb=!0,a.c.p(\"foamtree:attachChildren\"),s.fc(e,!0,!0,!1);d&&q.D.m({}).fb(n.Ua/\n2).call(function(){u.Jb({e:Y.Lc(y,function(a){return a.Td&&!Y.ki(d,a)}),Ia:!1,Ha:!0},!0,!0);d.Td=!0;u.Jb({e:[d],Ia:!(c.wb||c.shiftKey),Ha:!0},!0,!0)}).start()}));this.ya=d(c(\"hold\",!0,function(a,b){var c=!(b.metaKey||b.ctrlKey||b.shiftKey)&&!b.wb,d;(d=c?a.Dc:a.Wg)&&d!==y&&!d.empty()&&u.Jb({e:[d],Ia:c,Ha:!0},!0,!1)}));this.Y=d(c(\"dragstart\",!1,function(a,b){B=b.x;K=b.y;A=Date.now();C=!0}));this.A=d(c(\"drag\",!1,function(a,b){if(C){var c=Date.now();O=Math.min(1,c-A);A=c;var c=b.x-B,d=b.y-K;p.si(c,d);\nI=c;R=d;B=b.x;K=b.y}}));this.S=d(c(\"dragend\",!1,function(){if(C){C=!1;var a=Math.sqrt(I*I+R*R)/O;4<=a?p.ti(a,I,R):p.wf()}}));this.Ta=d(c(\"transformstart\",!1,function(a,b){P=1;B=b.x;K=b.y}));var z=1,H=!1;this.Ja=d(c(\"transform\",!1,function(a,b){var c=b.scale-0.01;p.Qg(b,c/P,b.x-B,b.y-K);P=c;B=b.x;K=b.y;z=P;H=H||2<b.touches}));this.cb=d(c(\"transformend\",!1,function(){H&&0.8>z?a.c.p(\"interaction:reset\"):f();H=!1}));this.Pa=d(c(\"mousewheel\",!1,function(){var a=D.ah(function(){f()},300);return function(c,\nd){var e=n.Gj;1!==e&&(e=Math.pow(e,d.vd),b?(p.Rg(d,e),a()):p.Yb(d,e,n.wc,X.pa(n.xc)).N(f))}}()));this.za=d(function(){var b=void 0,d={},e=!1,f,g=c(\"hover\",!1,function(){b&&(b.Db=!1,b.I=!0);f&&(f.Db=!0,f.I=!0);x.update(f);a.c.p(\"foamtree:dirty\",!1)}),h=c(\"mousemove\",!1,void 0);return function(a){if(\"out\"===a.type)f=void 0,e=f!==b;else if(p.absolute(a,d),b&&!b.open&&J(b,d)){var c=l(d,b.scale);c&&c!=b?(e=!0,f=c):e=!1}else f=l(d),e=f!==b;e&&(g(a),b=f,e=!1);b&&h(a)}}());this.gb={click:m(this.d),doubleclick:m(this.k),\nhold:m(this.ya),mouseup:m(this.Ba),mousedown:m(this.Aa),dragstart:m(this.Y),drag:m(this.A),dragend:m(this.S),transformstart:m(this.Ta),transform:m(this.Ja),transformend:m(this.cb),hover:m(this.za),mousewheel:m(this.Pa)};var E=function(){function a(b,c){return function(a){a=a.gesture;var d=a.center,d=ra.Je(r,d.pageX,d.pageY,{});d.scale=a.scale;d.wb=1<a.touches.length;d.touches=a.touches.length;b.call(r,d);(void 0===d.Lb&&c||\"prevent\"===d.Lb)&&a.preventDefault()}}var b,c={};return{H:function(a){b=window.Hammer(a,\n{doubletap_interval:350,hold_timeout:400,doubletap_distance:10})},m:function(d,e,f){c[d]=e;b.on(d,a(e,f))},kb:function(){b&&D.Ga(c,function(a,c){b.off(c,a)})}}}(),J=function(){var a={};return function(b,c){b.Ub(c,a);return b.aa&&L.Ta(b.aa,a)}}()};function Na(a){function m(a,c,f,k){var e,b=0,h=[];for(e=0;e<c.length;e++){var m=Math.sqrt(L.d(c[e],c[(e+1)%c.length]));h.push(m);b+=m}for(e=0;e<h.length;e++)h[e]/=b;a[0].x=f.x;a[0].y=f.y;var r=m=b=0;for(e=1;e<a.length;e++){for(var p=a[e],q=0.95*Math.pow(e/a.length,k),b=b+0.3819;m<b;)m+=h[r],r=(r+1)%h.length;var s=(r-1+h.length)%h.length,u=1-(m-b)/h[s],w=c[s].x,s=c[s].y,x=c[r].x,y=c[r].y,w=(w-f.x)*q+f.x,s=(s-f.y)*q+f.y,x=(x-f.x)*q+f.x,y=(y-f.y)*q+f.y;p.x=w*(1-u)+x*u;p.y=s*(1-u)+y*u}}var k={random:{Eb:function(a,\nc){for(var f=0;f<a.length;f++){var k=a[f];k.x=c.x+Math.random()*c.f;k.y=c.y+Math.random()*c.i}},Zb:\"box\"},ordered:{Eb:function(a,c){var g=a.slice(0);f.lc&&g.sort(Oa);Da.Xb(g,c,!1,f.ce)},Zb:\"box\"},squarified:{Eb:function(a,c){var g=a.slice(0);f.lc&&g.sort(Oa);Da.ue(g,c,!1,f.ce)},Zb:\"box\"},fisheye:{Eb:function(a,c,g){a=a.slice(0);f.lc&&a.sort(Oa);m(a,c,g,0.25)},Zb:\"polygon\"},blackhole:{Eb:function(a,c,g){a=a.slice(0);f.lc&&a.sort(Oa).reverse();m(a,c,g,1)},Zb:\"polygon\"}};k.order=k.ordered;k.treemap=\nk.squarified;var f=a.options;this.d=function(a,c,g){if(0<a.length){g=k[g.relaxationInitializer||g.initializer||f.fj||\"random\"];if(\"box\"===g.Zb){var l=L.q(c,{});g.Eb(a,l);L.qe(a,L.A(l),c)}else g.Eb(a,c,L.k(c,{}));for(l=a.length-1;0<=l;l--){g=a[l];if(g.description){a=L.re(c,f.Hc,f.bh);g.x=a.x;g.y=a.y;break}if(g.na){a=L.re(c,f.we,f.Sg);g.x=a.x;g.y=a.y;break}}}}};function Pa(a){var m,k=a.options,f=new Qa(a,this),d=new Ra(a,this),c={relaxed:f,ordered:d,squarified:d},g=c[a.options.Vc]||f;this.Bg=5E-5;a.c.j(\"model:loaded\",function(a){m=a});a.c.j(\"options:changed\",function(a){a.layout&&D.Q(c,k.Vc)&&(g=c[k.Vc])});this.step=function(a,c,b,d){return g.step(a,c,b,d)};this.complete=function(a){g.complete(a)};this.lf=function(a){return a===m?!0:2*Math.sqrt(a.K.ja/(Math.PI*a.e.length))>=Math.max(k.We,5E-5)};this.xd=function(a,c){for(var b=Math.pow(k.Ra,a.R),d=k.lb*b,\nb=k.zd*b,f=a.e,m=f.length-1;0<=m;m--){var p=f[m];g.xe(p,b);var q=p;q.aa=0<d?Aa.cb(q.o,d):q.o;q.aa&&(L.q(q.aa,q.q),L.se(q.aa,q.K));p.e&&c.push(p)}};this.qc=function(a){g.qc(a)};this.Mb=function(a){g.Mb(a)}};function Qa(a,m){function k(a){if(a.e){a=a.e;for(var b=0;b<a.length;b++){var c=a[b];c.uc=c.rc*n.Rh}}}function f(a,c){m.lf(a)&&(a.u||(a.u=Aa.cb(a.o,n.zd*Math.pow(n.Ra,a.R-1)),a.u&&\"flattened\"==n.ab&&\"stab\"==n.dc&&l(a)),a.u&&(b.Mb(a),r.d(d(a),a.u,a.group),a.M=!0,c(a)),k(a))}function d(a){return\"stab\"==n.dc&&0<a.e.length&&a.e[0].description?a.e.slice(1):a.e}function c(a){var b=d(a);Ba.S(b,a.u);Ba.zc(b,a.u);return Ca.Dg(a)*Math.sqrt(h.K.ja/a.K.ja)}function g(a){return a<n.bg||1E-4>a}function l(a){var b=\nn.cc/(1+n.cc),c=L.q(a.u,{}),d={x:c.x,y:0},e=c.y,f=c.i,g=n.De*Math.pow(n.Ra,a.R-1),h=f*n.Ce,k=n.Hc;\"bottom\"==k||0<=k&&180>k?(k=Math.PI,e+=f,f=-1):(k=0,f=1);for(var l,m=a.u,p=k,r=0,P=1,F=L.k(m,{}),U=F.ja,b=U*b,N=0;r<P&&20>N++;){var S=(r+P)/2;d.y=c.y+c.i*S;l=L.Wb(m,d,p);L.k(l[0],F);var t=F.ja-b;if(0.01>=Math.abs(t)/U)break;else 0<(0==p?1:-1)*t?P=S:r=S}L.q(l[0],c);if(c.i<g||c.i>h)d.y=c.i<g?e+f*Math.min(g,h):e+f*h,l=L.Wb(a.u,d,k);a.e[0].o=l[0];a.u=l[1]}function e(a){a!==h&&2*Math.sqrt(a.K.ja/(Math.PI*\na.e.length))<Math.max(0.85*n.We,m.Bg)&&(a.M=!1,a.Ca=!1,a.Qa=!0,a.u=null)}var b=this,h,n=a.options,r=new Na(a),p=0;a.c.j(\"model:loaded\",function(a){h=a;p=0});this.step=function(a,b,k,l){function r(b){b.M&&b.Ca?e(b):b.Qa&&b.o&&f(b,function(){var c=d(b);Ba.S(c,b.u);Ba.zc(c,b.u);a(b)});if(!b.u||!b.M)return 0;var h;b.parent&&b.parent.Z||b.La?(h=c(b),l&&l(b),b.La=!g(h),b.Z=!0):h=0;m.xd(b,B);return h}function y(a,b,c){p<a&&(p=a);var d=n.bg;n.Sd(b?1:1-(a-d)/(p-d||1),b,c);b&&(p=0)}for(var C=0,B=[h];0<B.length;)C=\nMath.max(C,r(B.shift()));var K=g(C);b&&y(C,K,k);return K};this.complete=function(a){for(var b=[h];0<b.length;){var d=b.shift();!d.M&&d.Qa&&d.o&&f(d,a);if(d.u){if(d.parent&&d.parent.Z||d.La){for(var e=1E-4>d.K.ja,k=0;!(g(c(d))||e&&32<k++););d.Z=!0;d.La=!1}m.xd(d,b)}}};this.qc=function(a){Y.F(a,k)};this.xe=function(a,b){if(a.M){var c=a.u;c&&(a.Xd=c);a.u=Aa.cb(a.o,b);a.u&&\"flattened\"==n.ab&&\"stab\"==n.dc&&l(a);c&&!a.u&&(a.Z=!0);a.u&&a.Xd&&L.qe(d(a),a.Xd,a.u)}};this.Mb=function(a){for(var b=d(a),c=a.ja,\ne,f=e=0;f<b.length;f++)e+=b[f].T;a.$j=e;for(a=0;a<b.length;a++)f=b[a],f.qg=f.f,f.rc=c/Math.PI*(0<e?f.T/e:1/b.length)}};function Ra(a,m){function k(a,c){if(m.lf(a)){if(!a.u||a.parent&&a.parent.Z){var e=l.zd*Math.pow(l.Ra,a.R-1);a.u=L.A(d(L.q(a.o,{}),e))}a.u&&(a.M=!0,c(a))}else a.M=!1,Y.Fa(a,function(a){a.u=null})}function f(a){function d(a){function b(){e.o=L.A(f);e.x=f.x+f.f/2;e.y=f.y+f.i/2}var c=l.cc/(1+l.cc),e=a.e[0],f=L.q(a.u,{}),g=f.i,c=Math.min(Math.max(g*c,l.De*Math.pow(l.Ra,a.R-1)),g*l.Ce),h=l.Hc;\"bottom\"==h||0<=h&&180>h?(f.i=g-c,a.u=L.A(f),f.y+=g-c,f.i=c,b()):(f.i=c,b(),f.y+=c,f.i=g-c,a.u=L.A(f))}var f;\"stab\"==\nl.dc&&0<a.e.length&&a.e[0].description?(f=a.e.slice(1),d(a)):f=a.e;l.lc&&f.sort(Oa);\"floating\"==l.dc&&c(f,l.Hc,function(a){return a.description});c(f,l.we,function(a){return a.na});var g=L.q(a.u,{});(e[l.Vc]||Da.Xb)(f,g,!0,l.ce);a.La=!1;a.Z=!0;a.I=!0;a.Ma=!0}function d(a,c){var d=2*c;a.x+=c;a.y+=c;a.f-=d;a.i-=d;return a}function c(a,c,d){for(var e=0;e<a.length;e++){var f=a[e];if(d(f)){a.splice(e,1);\"topleft\"==c||135<=c&&315>c?a.unshift(f):a.push(f);break}}}var g,l=a.options,e={squarified:Da.ue,ordered:Da.Xb};\na.c.j(\"model:loaded\",function(a){g=a});this.step=function(a,c,d){this.complete(a);c&&l.Sd(1,!0,d);return!0};this.complete=function(a){for(var c=[g];0<c.length;){var d=c.shift();(!d.M||d.parent&&d.parent.Z)&&d.Qa&&d.o&&k(d,a);d.u&&((d.parent&&d.parent.Z||d.La)&&f(d),m.xd(d,c))}};this.Mb=this.qc=this.xe=D.ta};var Sa=new function(){this.Gg=function(a){a.beginPath();a.moveTo(3.2,497);a.bezierCurveTo(0.1,495.1,0,494.1,0,449.6);a.bezierCurveTo(0,403.5,-0.1,404.8,4.1,402.6);a.bezierCurveTo(5.2,402,7.4,401.4,9,401.2);a.bezierCurveTo(10.6,401,31.2,400.6,54.7,400.2);a.bezierCurveTo(99.5,399.4,101,399.5,104.6,402.3);a.bezierCurveTo(107.9,404.9,107.6,404,129.3,473.2);a.bezierCurveTo(131,478.6,132.9,484.4,133.4,486.1);a.bezierCurveTo(135.2,491.4,135.4,494.9,134,496.4);a.bezierCurveTo(132.8,497.7,131.7,497.7,68.6,\n497.7);a.bezierCurveTo(24.2,497.7,4,497.5,3.2,497);a.closePath();a.fillStyle=\"rgba(220,20,3,1)\";a.fill();a.beginPath();a.moveTo(162.1,497);a.bezierCurveTo(159.5,496.3,157.7,494.6,156.2,491.6);a.bezierCurveTo(155.5,490.3,148.7,469.4,141.1,445.2);a.bezierCurveTo(126.1,397.5,125.6,395.4,128.1,389.8);a.bezierCurveTo(129.5,386.7,164.1,339,168,334.9);a.bezierCurveTo(170.3,332.5,172.2,332.1,175.1,333.7);a.bezierCurveTo(176.1,334.2,189.3,347,204.3,362.1);a.bezierCurveTo(229.4,387.4,231.8,390,233.5,394);a.bezierCurveTo(235.2,\n397.8,235.4,399.2,235.4,404.3);a.bezierCurveTo(235.3,415,230.5,489.9,229.8,492.5);a.bezierCurveTo(228.4,497.5,229.2,497.4,194.7,497.5);a.bezierCurveTo(177.8,497.6,163.1,497.4,162.1,497);a.closePath();a.fillStyle=\"rgba(220,20,3,1)\";a.fill();a.beginPath();a.moveTo(258.7,497);a.bezierCurveTo(255.8,496.1,252.6,492.3,252,489.1);a.bezierCurveTo(251.4,484.8,256.8,405.2,258.1,401.1);a.bezierCurveTo(260.4,393.4,262.7,391.1,300.4,359.2);a.bezierCurveTo(319.9,342.6,337.7,327.9,339.9,326.5);a.bezierCurveTo(347.4,\n321.6,350.4,321,372,320.5);a.bezierCurveTo(393.4,320,400.5,320.4,407.5,322.5);a.bezierCurveTo(413.9,324.4,487.4,359.5,490.6,362.1);a.bezierCurveTo(492,363.3,493.9,365.8,495,367.7);a.lineTo(496.8,371.2);a.lineTo(497,419.3);a.bezierCurveTo(497.1,445.7,497,468,496.8,468.8);a.bezierCurveTo(496.2,471.6,489.6,480.8,485,485.3);a.bezierCurveTo(478.6,491.7,474.9,494.1,468.2,496);a.lineTo(462.3,497.7);a.lineTo(361.6,497.7);a.bezierCurveTo(303.1,497.6,259.9,497.3,258.7,497);a.closePath();a.fillStyle=\"rgba(200,200,200,1)\";\na.fill();a.beginPath();a.moveTo(4.4,380.8);a.bezierCurveTo(2.9,380.2,1.7,379.8,1.6,379.8);a.bezierCurveTo(1.5,379.8,1.2,378.8,0.7,377.6);a.bezierCurveTo(0.2,376.1,0,361.6,0,331.2);a.bezierCurveTo(0,281.2,-0.2,283.1,4.9,280.9);a.bezierCurveTo(7.1,279.9,19.3,278.2,54.8,274.1);a.bezierCurveTo(80.6,271.1,102.9,268.6,104.4,268.6);a.bezierCurveTo(105.8,268.6,109.1,269.4,111.7,270.4);a.bezierCurveTo(116,272.1,117.2,273.2,133.4,289.3);a.bezierCurveTo(150.9,306.8,153.4,310,153.4,314.5);a.bezierCurveTo(153.4,\n317.6,151.1,321.3,136.4,341.2);a.bezierCurveTo(109.4,377.8,111.6,375.3,105.4,378.1);a.lineTo(101.3,380);a.lineTo(75.7,380.5);a.bezierCurveTo(6.8,381.8,7.3,381.8,4.4,380.8);a.closePath();a.fillStyle=\"rgba(220,20,3,1)\";a.fill();a.beginPath();a.moveTo(243.5,372.4);a.bezierCurveTo(240.2,370.8,136.6,266.7,134.2,262.6);a.bezierCurveTo(132.1,259,131.7,254.9,133.2,251.3);a.bezierCurveTo(134.5,248.2,166.3,206,169.3,203.4);a.bezierCurveTo(172.6,200.5,178.5,198.4,183.2,198.4);a.bezierCurveTo(187.1,198.4,275.2,\n204.1,281.6,204.8);a.bezierCurveTo(289.7,205.7,294.6,208.7,297.6,214.6);a.bezierCurveTo(300.5,220.3,327.4,297.4,327.8,301.1);a.bezierCurveTo(328.3,305.7,326.7,310.4,323.4,314);a.bezierCurveTo(322,315.6,307.8,327.9,291.9,341.3);a.bezierCurveTo(256.2,371.4,256.6,371.2,253.9,372.5);a.bezierCurveTo(251.1,373.9,246.5,373.9,243.5,372.4);a.closePath();a.fillStyle=\"rgba(220,20,3,1)\";a.fill();a.beginPath();a.moveTo(489.3,339.1);a.bezierCurveTo(488.6,338.9,473.7,331.9,456.3,323.6);a.bezierCurveTo(435.9,313.9,\n423.8,307.8,422.4,306.4);a.bezierCurveTo(419.5,303.7,418,300.2,418,296.1);a.bezierCurveTo(418,292.5,438,185,439.3,181.6);a.bezierCurveTo(441.2,176.6,445.5,173.1,450.8,172.1);a.bezierCurveTo(456,171.2,487.1,169.2,489.6,169.7);a.bezierCurveTo(493.1,170.3,495.5,171.9,497,174.7);a.bezierCurveTo(498.1,176.7,498.2,181.7,498.4,253.2);a.bezierCurveTo(498.5,295.3,498.4,330.9,498.2,332.5);a.bezierCurveTo(497.5,337.4,493.7,340.2,489.3,339.1);a.closePath();a.fillStyle=\"rgba(220,20,3,1)\";a.fill();a.beginPath();\na.moveTo(353.2,300.7);a.bezierCurveTo(350.4,299.8,347.9,297.9,346.5,295.6);a.bezierCurveTo(345.8,294.5,338.2,273.7,329.6,249.5);a.bezierCurveTo(314.6,207.1,314.1,205.3,314.1,200.4);a.bezierCurveTo(314.1,196.7,314.4,194.6,315.3,193);a.bezierCurveTo(316,191.7,322.5,181.6,329.8,170.6);a.bezierCurveTo(346.8,144.8,345.4,145.8,365.8,144.4);a.bezierCurveTo(380.9,143.4,385.7,143.7,390.6,146.3);a.bezierCurveTo(397.3,149.8,417.4,164.4,419.2,167);a.bezierCurveTo(422.4,171.8,422.4,171.8,410.6,234.4);a.bezierCurveTo(402.3,\n278.6,399.3,293.2,398.1,295.3);a.bezierCurveTo(395.4,300.1,393.7,300.5,373,300.9);a.bezierCurveTo(363.1,301.1,354.2,301,353.2,300.7);a.closePath();a.fillStyle=\"rgba(220,20,3,1)\";a.fill();a.beginPath();a.moveTo(6.2,259.9);a.bezierCurveTo(4.9,259.2,3.2,257.8,2.4,256.8);a.bezierCurveTo(1,254.9,1,254.8,0.8,148.7);a.bezierCurveTo(0.7,74,0.9,40.8,1.4,36.7);a.bezierCurveTo(2.3,29.6,4.7,24.4,9.8,18.3);a.bezierCurveTo(14.1,13.1,20.9,7.3,25,5.3);a.bezierCurveTo(26.5,4.6,31,3.3,34.9,2.6);a.bezierCurveTo(41.3,\n1.3,44.2,1.2,68.5,1.4);a.lineTo(95.1,1.6);a.lineTo(99,3.5);a.bezierCurveTo(101.2,4.6,103.9,6.6,105.2,8.1);a.bezierCurveTo(107.7,11,153.1,88.2,155.8,94);a.bezierCurveTo(159.1,101.4,159.6,104.7,159.5,121.6);a.bezierCurveTo(159.5,147.8,158.4,177.2,157.3,181);a.bezierCurveTo(156.8,182.8,155.6,186.1,154.6,188.1);a.bezierCurveTo(152.6,192.2,119.5,237.2,115.1,241.8);a.bezierCurveTo(112.1,244.9,106.3,248.3,102,249.4);a.bezierCurveTo(99.2,250.1,13,261.1,10.1,261.1);a.bezierCurveTo(9.2,261.1,7.5,260.6,6.2,\n259.9);a.closePath();a.fillStyle=\"rgba(200,200,200,1)\";a.fill();a.beginPath();a.moveTo(234.1,183.4);a.bezierCurveTo(180.2,179.7,182.3,180,179.5,174.5);a.lineTo(178,171.4);a.lineTo(178.7,142.4);a.bezierCurveTo(179.4,114.8,179.5,113.3,180.9,110.4);a.bezierCurveTo(183.5,105,182.7,105.2,237.9,95.3);a.bezierCurveTo(285.1,86.7,287.9,86.3,291,87.1);a.bezierCurveTo(292.8,87.6,295.3,88.8,296.7,89.9);a.bezierCurveTo(299.1,91.8,321.9,124.4,325,130.3);a.bezierCurveTo(326.9,134,327.2,139.1,325.7,142.6);a.bezierCurveTo(324.5,\n145.5,302.5,179.1,300.2,181.5);a.bezierCurveTo(297,184.9,293.5,186.3,287.4,186.5);a.bezierCurveTo(284.4,186.6,260.4,185.2,234.1,183.4);a.closePath();a.fillStyle=\"rgba(220,20,3,1)\";a.fill();a.beginPath();a.moveTo(435.8,153.4);a.bezierCurveTo(434.8,153.1,433,152.3,431.7,151.6);a.bezierCurveTo(428.4,150,410.1,137.1,407,134.4);a.bezierCurveTo(404.1,131.8,402.7,128.3,403.2,125.1);a.bezierCurveTo(403.6,122.9,420.3,81.3,423,75.9);a.bezierCurveTo(424.7,72.6,426.6,70.4,429.3,68.9);a.bezierCurveTo(431.1,67.9,\n435,67.7,462.2,67.6);a.lineTo(493.1,67.3);a.lineTo(495.4,69.6);a.bezierCurveTo(497,71.3,497.8,72.8,498.1,75);a.bezierCurveTo(498.4,76.6,498.5,92.9,498.4,111.1);a.bezierCurveTo(498.2,141.2,498.1,144.3,497,146.3);a.bezierCurveTo(494.8,150.3,493.3,150.6,470.3,152.4);a.bezierCurveTo(448.6,154,438.8,154.3,435.8,153.4);a.closePath();a.fillStyle=\"rgba(220,20,3,1)\";a.fill();a.beginPath();a.moveTo(346.6,125.3);a.bezierCurveTo(345,124.5,342.6,122.6,341.4,121);a.bezierCurveTo(337.1,115.7,313,79.8,311.6,76.7);\na.bezierCurveTo(309.4,71.7,309.3,68,311.2,58.2);a.bezierCurveTo(319.2,16.9,321.3,7.1,322.4,5.2);a.bezierCurveTo(323.1,4,324.7,2.4,326,1.6);a.bezierCurveTo(328.3,0.3,329.4,0.3,353.9,0.3);a.bezierCurveTo(379.2,0.3,379.5,0.3,382.4,1.8);a.bezierCurveTo(384,2.7,386,4.5,386.9,5.9);a.bezierCurveTo(388.6,8.6,405.1,46.3,407.2,52.2);a.bezierCurveTo(408.7,56.3,408.8,60.7,407.7,64.1);a.bezierCurveTo(407.3,65.4,402.2,78.2,396.3,92.7);a.bezierCurveTo(382.6,126.3,384.1,124.6,366.6,126);a.bezierCurveTo(353.4,127.1,\n350,127,346.6,125.3);a.closePath();a.fillStyle=\"rgba(220,20,3,1)\";a.fill();a.beginPath();a.moveTo(179.2,85.6);a.bezierCurveTo(175.7,84.6,171.9,82,170,79.2);a.bezierCurveTo(167.2,75.2,130.6,12.4,129.3,9.3);a.bezierCurveTo(128.2,6.7,128.1,5.9,128.8,4.2);a.bezierCurveTo(130.5,0,125.2,0.3,211.7,0);a.bezierCurveTo(255.3,-0.1,292.2,0,293.9,0.3);a.bezierCurveTo(297.7,0.8,301.1,4,301.8,7.6);a.bezierCurveTo(302.3,10.5,293.9,55.2,291.9,59.6);a.bezierCurveTo(290.4,63,286.1,66.9,282.3,68.3);a.bezierCurveTo(279.6,\n69.3,193.5,85.1,185.5,86.1);a.bezierCurveTo(183.8,86.3,181,86.1,179.2,85.6);a.closePath();a.fillStyle=\"rgba(220,20,3,1)\";a.fill();a.beginPath();a.moveTo(431.9,47.7);a.bezierCurveTo(428.7,46.9,426.4,45.2,424.6,42.3);a.bezierCurveTo(421.8,37.8,409.2,7.7,409.2,5.5);a.bezierCurveTo(409.2,1.2,408,1.3,451.6,1.3);a.bezierCurveTo(495,1.3,494,1.2,496.1,5.4);a.bezierCurveTo(497,7.2,497.2,10.2,497,25.5);a.lineTo(496.8,43.5);a.lineTo(494.9,45.4);a.lineTo(493,47.3);a.lineTo(474.8,47.7);a.bezierCurveTo(450.1,48.3,\n434.5,48.3,431.9,47.7);a.closePath();a.fillStyle=\"rgba(200,200,200,1)\";a.fill();a.beginPath();a.moveTo(1.3,511.9);a.lineTo(1.3,514.3);a.lineTo(3.7,514.3);a.bezierCurveTo(7.2,514.4,9.5,515.5,10.6,517.6);a.bezierCurveTo(11.7,519.8,12.1,522.7,12,526.3);a.lineTo(12,591);a.lineTo(22.8,591);a.lineTo(22.8,553.2);a.lineTo(49.9,553.2);a.lineTo(49.9,548.5);a.lineTo(22.8,548.5);a.lineTo(22.8,516.7);a.lineTo(41.9,516.7);a.bezierCurveTo(46.7,516.7,50.4,517.8,52.9,520);a.bezierCurveTo(55.5,522.2,56.8,525.7,56.8,\n530.5);a.lineTo(59.2,530.5);a.lineTo(59.2,521.5);a.bezierCurveTo(59.3,519,58.7,516.8,57.3,514.9);a.bezierCurveTo(55.9,513,53.1,512,49,511.9);a.closePath();a.fillStyle=\"rgba(220,20,3,1)\";a.fill();a.beginPath();a.moveTo(107.6,562.8);a.bezierCurveTo(107.6,569.9,106.2,575.7,103.5,580.3);a.bezierCurveTo(100.8,584.8,97.2,587.2,92.7,587.4);a.bezierCurveTo(88.1,587.2,84.5,584.8,81.8,580.3);a.bezierCurveTo(79.1,575.7,77.8,569.9,77.7,562.8);a.bezierCurveTo(77.8,555.8,79.1,550,81.8,545.4);a.bezierCurveTo(84.5,\n540.8,88.1,538.4,92.7,538.3);a.bezierCurveTo(97.2,538.4,100.8,540.8,103.5,545.4);a.bezierCurveTo(106.2,550,107.6,555.8,107.6,562.8);a.moveTo(66.3,562.8);a.bezierCurveTo(66.4,571.1,68.7,578,73.2,583.5);a.bezierCurveTo(77.8,589.1,84.2,591.9,92.7,592.1);a.bezierCurveTo(101.1,591.9,107.6,589.1,112.1,583.5);a.bezierCurveTo(116.7,578,118.9,571.1,119,562.8);a.bezierCurveTo(118.9,554.5,116.7,547.6,112.1,542.1);a.bezierCurveTo(107.6,536.6,101.1,533.7,92.7,533.5);a.bezierCurveTo(84.2,533.7,77.8,536.6,73.2,\n542.1);a.bezierCurveTo(68.7,547.6,66.4,554.5,66.3,562.8);a.closePath();a.fillStyle=\"rgba(220,20,3,1)\";a.fill();a.beginPath();a.moveTo(161.5,579.6);a.bezierCurveTo(160.3,581.4,158.9,583.1,157.2,584.5);a.bezierCurveTo(155.4,585.9,153.1,586.7,150.1,586.8);a.bezierCurveTo(147,586.8,144.4,585.9,142.2,584);a.bezierCurveTo(140,582.1,138.9,579.3,138.8,575.4);a.bezierCurveTo(138.8,571.7,140.5,568.9,143.8,566.7);a.bezierCurveTo(147.2,564.6,151.9,563.5,157.9,563.4);a.lineTo(161.5,563.4);a.moveTo(172.3,591);\na.lineTo(172.3,558.6);a.bezierCurveTo(172.1,548.2,169.9,541.3,165.8,538);a.bezierCurveTo(161.7,534.7,156.9,533.2,151.3,533.5);a.bezierCurveTo(147.6,533.5,144.1,533.8,140.8,534.5);a.bezierCurveTo(137.4,535.1,135,536.2,133.4,537.7);a.bezierCurveTo(131.9,539.2,131.1,540.8,130.7,542.6);a.bezierCurveTo(130.4,544.4,130.3,546.4,130.4,548.5);a.lineTo(135.8,548.5);a.bezierCurveTo(136.7,544.6,138.3,542,140.5,540.5);a.bezierCurveTo(142.8,538.9,145.6,538.2,148.9,538.3);a.bezierCurveTo(152.6,538.1,155.6,539.4,\n157.9,542.2);a.bezierCurveTo(160.2,545,161.4,550.5,161.5,558.6);a.lineTo(157.9,558.6);a.bezierCurveTo(149.6,558.5,142.5,559.7,136.6,562.1);a.bezierCurveTo(130.7,564.5,127.6,568.9,127.4,575.4);a.bezierCurveTo(127.7,581.8,129.8,586.3,133.6,588.7);a.bezierCurveTo(137.4,591.1,141.1,592.3,144.7,592.1);a.bezierCurveTo(149.2,592.1,152.8,591.3,155.6,590);a.bezierCurveTo(158.3,588.6,160.3,587.1,161.5,585.6);a.lineTo(162.1,585.6);a.lineTo(166.3,591);a.closePath();a.fillStyle=\"rgba(220,20,3,1)\";a.fill();a.beginPath();\na.moveTo(200.3,539.5);a.bezierCurveTo(199.8,538,198.7,536.8,197,536);a.bezierCurveTo(195.4,535.1,193.1,534.7,190.2,534.7);a.lineTo(179.4,534.7);a.lineTo(179.4,537.1);a.lineTo(181.8,537.1);a.bezierCurveTo(185.3,537.1,187.6,538.2,188.7,540.4);a.bezierCurveTo(189.8,542.5,190.3,545.4,190.2,549.1);a.lineTo(190.2,591);a.lineTo(200.9,591);a.lineTo(200.9,545.2);a.bezierCurveTo(202.4,543.5,204.2,542,206.2,540.8);a.bezierCurveTo(208.3,539.6,210.5,538.9,212.9,538.9);a.bezierCurveTo(215.9,538.8,218.3,540,219.9,\n542.5);a.bezierCurveTo(221.6,544.9,222.4,549.1,222.5,555);a.lineTo(222.5,591);a.lineTo(233.2,591);a.lineTo(233.2,555);a.bezierCurveTo(233.3,553.8,233.2,552.3,233.2,550.6);a.bezierCurveTo(233.1,549,232.9,547.6,232.6,546.7);a.bezierCurveTo(233.9,544.8,235.7,543,238,541.4);a.bezierCurveTo(240.4,539.8,242.7,539,245.2,538.9);a.bezierCurveTo(248.2,538.8,250.6,540,252.3,542.5);a.bezierCurveTo(253.9,544.9,254.8,549.1,254.8,555);a.lineTo(254.8,591);a.lineTo(265.6,591);a.lineTo(265.6,555);a.bezierCurveTo(265.4,\n546.5,263.8,540.8,260.6,537.8);a.bezierCurveTo(257.4,534.7,253.4,533.3,248.8,533.5);a.bezierCurveTo(245.4,533.5,242.2,534.2,238.9,535.7);a.bezierCurveTo(235.7,537.1,233,539.2,230.9,541.9);a.bezierCurveTo(229.3,538.6,227.3,536.4,224.8,535.2);a.bezierCurveTo(222.3,534,219.5,533.4,216.5,533.5);a.bezierCurveTo(212.9,533.6,209.8,534.2,207.1,535.4);a.bezierCurveTo(204.5,536.5,202.4,537.9,200.9,539.5);a.closePath();a.fillStyle=\"rgba(220,20,3,1)\";a.fill();a.beginPath();a.moveTo(284,511.9);a.bezierCurveTo(279.9,\n512,277.2,513,275.8,514.9);a.bezierCurveTo(274.4,516.8,273.7,519,273.8,521.5);a.lineTo(273.8,530.5);a.lineTo(276.2,530.5);a.bezierCurveTo(276.3,525.7,277.6,522.2,280.1,520);a.bezierCurveTo(282.7,517.8,286.4,516.7,291.2,516.7);a.lineTo(302,516.7);a.lineTo(302,590.9);a.lineTo(312.7,590.9);a.lineTo(312.7,516.7);a.lineTo(339.7,516.7);a.lineTo(339.7,511.9);a.closePath();a.fillStyle=\"rgba(220,20,3,1)\";a.fill();a.beginPath();a.moveTo(349.4,590.9);a.lineTo(360.2,590.9);a.lineTo(360.2,546.7);a.bezierCurveTo(361.4,\n544.8,363,543.4,364.9,542.3);a.bezierCurveTo(366.9,541.2,369.1,540.7,371.5,540.7);a.bezierCurveTo(373.7,540.7,375.5,541,377.2,541.6);a.bezierCurveTo(378.9,542.2,380.2,543.1,381.1,544.3);a.lineTo(385.9,540.7);a.bezierCurveTo(385.3,539.5,384.7,538.4,384,537.5);a.bezierCurveTo(383.4,536.6,382.6,535.9,381.7,535.3);a.bezierCurveTo(380.8,534.7,379.7,534.2,378.3,533.9);a.bezierCurveTo(377,533.6,375.8,533.5,374.5,533.5);a.bezierCurveTo(370.9,533.6,367.9,534.3,365.5,535.7);a.bezierCurveTo(363.2,537,361.4,\n538.5,360.2,540.1);a.lineTo(359.6,540.1);a.bezierCurveTo(359,538.3,357.9,536.9,356.3,536);a.bezierCurveTo(354.6,535.1,352.4,534.7,349.4,534.7);a.lineTo(339.8,534.7);a.lineTo(339.8,537.1);a.lineTo(341,537.1);a.bezierCurveTo(344.5,537.1,346.8,538.2,347.9,540.4);a.bezierCurveTo(349,542.5,349.5,545.4,349.4,549.1);a.closePath();a.fillStyle=\"rgba(220,20,3,1)\";a.fill();a.beginPath();a.moveTo(440.3,559.8);a.bezierCurveTo(440.3,551.4,438.3,544.9,434.4,540.4);a.bezierCurveTo(430.4,535.8,424.4,533.5,416.3,533.5);\na.bezierCurveTo(408.8,533.7,403,536.6,399,542.1);a.bezierCurveTo(395,547.6,393,554.5,393,562.8);a.bezierCurveTo(393,571.1,395.1,578,399.3,583.5);a.bezierCurveTo(403.5,589.1,409.7,591.9,418.1,592.1);a.bezierCurveTo(422.6,592.2,426.7,591.2,430.2,589.2);a.bezierCurveTo(433.8,587.2,437,584,439.7,579.6);a.lineTo(437.3,577.8);a.bezierCurveTo(435.2,580.8,432.9,583.1,430.2,584.8);a.bezierCurveTo(427.6,586.5,424.4,587.3,420.5,587.4);a.bezierCurveTo(415.4,587.2,411.4,585.1,408.6,580.9);a.bezierCurveTo(405.8,\n576.8,404.4,571.3,404.4,564.6);a.lineTo(440,564.6);a.moveTo(404.4,559.8);a.bezierCurveTo(404.4,553.7,405.6,548.7,407.9,544.9);a.bezierCurveTo(410.3,541,413.3,539,416.9,538.9);a.bezierCurveTo(421.1,538.9,424.3,540.8,426.4,544.4);a.bezierCurveTo(428.4,548.1,429.5,553.2,429.5,559.8);a.closePath();a.fillStyle=\"rgba(220,20,3,1)\";a.fill();a.beginPath();a.moveTo(497.1,559.8);a.bezierCurveTo(497.1,551.4,495.1,544.9,491.2,540.4);a.bezierCurveTo(487.2,535.8,481.2,533.5,473.1,533.5);a.bezierCurveTo(465.6,533.7,\n459.9,536.6,455.9,542.1);a.bezierCurveTo(451.9,547.6,449.8,554.5,449.8,562.8);a.bezierCurveTo(449.8,571.1,451.9,578,456.1,583.5);a.bezierCurveTo(460.3,589.1,466.6,591.9,474.9,592.1);a.bezierCurveTo(479.4,592.2,483.5,591.2,487.1,589.2);a.bezierCurveTo(490.6,587.2,493.8,584,496.5,579.6);a.lineTo(494.1,577.8);a.bezierCurveTo(492,580.8,489.7,583.1,487.1,584.8);a.bezierCurveTo(484.4,586.5,481.2,587.3,477.3,587.4);a.bezierCurveTo(472.2,587.2,468.2,585.1,465.4,580.9);a.bezierCurveTo(462.6,576.8,461.2,571.3,\n461.2,564.6);a.lineTo(496.8,564.6);a.moveTo(461.2,559.8);a.bezierCurveTo(461.2,553.7,462.4,548.7,464.8,544.9);a.bezierCurveTo(467.1,541,470.1,539,473.7,538.9);a.bezierCurveTo(477.9,538.9,481.1,540.8,483.2,544.4);a.bezierCurveTo(485.3,548.1,486.3,553.2,486.3,559.8);a.closePath();a.fillStyle=\"rgba(220,20,3,1)\";a.fill()}};Sa.yc={width:498,height:592};function Ta(a,m){function k(a,b){var c=a.K.Nb,d=c/15,e=0.5*c/15,c=c/5,f=a.K.x,g=a.K.y;b.fillRect(f-e,g-e,d,d);b.fillRect(f-e-c,g-e,d,d);b.fillRect(f-e+c,g-e,d,d)}function f(a,b,c,d){null===a&&c.clearRect(0,0,I,R);var e,f=Array(W.length);for(e=W.length-1;0<=e;e--)f[e]=W[e].qa(c,d);for(e=W.length-1;0<=e;e--)f[e]&&W[e].W(c,d);U.Ic([c,A],function(d){var e;if(null!==a){c.save();c.globalCompositeOperation=\"destination-out\";c.fillStyle=c.strokeStyle=\"rgba(255, 255, 255, 1)\";for(e=a.length-1;0<=e;e--){var g=\na[e],h=g.o;h&&(c.save(),c.beginPath(),g.Sb(c),ha.le(c,h),c.fill(),g=t.lb*Math.pow(t.Ra,g.R-1),0<g&&(c.lineWidth=g/2,c.stroke()),c.restore())}c.restore()}d=d.scale;if(0!==b.length){e={};for(h=W.length-1;0<=h;h--)W[h].Og(e);for(g=Z.length-1;0<=g;g--)if(h=Z[g],e[h.id])for(var k=h.be,h=0;h<b.length;h++){var l=b[h];!l.parent||l.parent.Ca&&l.parent.M?k(l,d):l.ba.clear()}}for(e=W.length-1;0<=e;e--)g=W[e],f[e]&&g.ee(b,c,d)});for(e=W.length-1;0<=e;e--)f[e]&&W[e].Da(c);t.qd&&(c.canvas.style.opacity=0.99,setTimeout(function(){c.canvas.style.opacity=\n1},1))}function d(a){s===w?a<0.9*r&&(s=u,y=C,e()):a>=r&&(s=w,y=B,e())}function c(){function a(b,c,d){b.Bb=Math.floor(1E3*b.scale)-d*c;0<b.opacity&&!b.open&&c++;var e=b.e;if(e)for(var f=e.length-1;0<=f;f--)b.$&&a(e[f],c,d)}var b=null,c=null,e=null;U.Ic([],function(f){d(f.scale);var h=!1;Y.F(z,function(a){a.$&&(h=a.Md()||h,a.nc(),a.Wa=P.d(a)||a.Wa)});h&&(z.I=!0);var k=\"onSurfaceDirty\"===t.oh;Y.wd(z,function(a){a.parent&&a.parent.Z&&(a.ba.clear(),a.Wa=!0,k||(a.Ec=!0,a.ac.clear()));k&&(a.Ec=!0,a.ac.clear())});\nvar l=f.scale*f.scale;Y.wd(z,function(a){if(a.M){for(var b=a.e,c=0;c<b.length;c++)if(5<b[c].K.ja*l){a.X=!0;return}a.X=!1}});n(f);e=[];Y.Kc(z,function(a){if(a.parent.X&&a.ea&&a.$){e.push(a);for(var b=a.parent;b!==z&&(b.open||0===b.opacity);)b=b.parent;b!==z&&0.02>Math.abs(b.scale-a.scale)&&(a.scale=Math.min(a.scale,b.scale))}});a(z,0,\"flattened\"==t.ab?-1:1);e.sort(function(a,b){return a.Bb-b.Bb});if(g())b=e,c=null;else{var m={},p={},q=\"none\"!=t.Bd&&t.lb<t.mb/2,r=t.lb<t.Qc/2+t.Ad*t.Ye.a;Y.F(z,function(a){if(a.$&&\n!a.description&&(a.Z||a.I||a.Xc&&a.parent.X&&a.Wa)){var b,c,d=[a],e=a.C||a.parent.e;if(q)for(b=0;b<e.length;b++)(c=e[b])&&d.push(c);else if(r)if(!a.selected&&a.$a){c=!0;for(b=0;b<e.length;b++)e[b]?d.push(e[b]):c=!1;!c&&1<a.R&&d.push(a.parent)}else for(b=0;b<e.length;b++)(c=e[b])&&c.selected&&d.push(c);var f;for(b=a.parent;b!=z;)b.selected&&(f=b),b=b.parent;f&&d.push(f);for(b=0;b<d.length;b++){f=d[b];for(a=f.parent;a&&a!==z;)0<a.opacity&&(f=a),a=a.parent;p[f.id]=!0;Y.Fa(f,function(a){m[a.id]=!0})}}});\nb=e.filter(function(a){return m[a.id]});c=b.filter(function(a){return p[a.id]})}});(function(){var a=!1;t.ag&&Y.F(z,function(b){if(b.$&&0!==b.sa.a&&1!==b.sa.a)return a=!0,!1});a?(Y.Jc(z,function(a){if(a.$&&(a.opacity!==a.ad||a.Ma)){var b=a.e;if(b){for(var c=0,d=b.length-1;0<=d;d--)c=Math.max(c,b[d].Wc);a.Wc=c+a.opacity*a.sa.a}else a.Wc=a.opacity*a.sa.a}}),Y.F(z,function(a){if(a.$&&(a.opacity!==a.ad||a.Ma)){for(var b=a.Wc,c=a;(c=c.parent)&&c!==z;)b+=c.opacity*c.sa.a*t.Zf;a.rd=0<b?1-Math.pow(1-a.sa.a,\n1/b):0;a.ad=a.opacity}})):Y.F(z,function(a){a.$&&(a.rd=1,a.ad=-1)})})();return{wg:b,vg:c,ea:e}}function g(){var a=z.Z||z.I||\"none\"==t.ff;if(!a&&!z.empty()){var b=z.e[0].scale;Y.F(z,function(c){if(c.$&&c.ea&&c.scale!==b)return a=!0,!1})}!a&&0<t.Se&&1!=t.Va&&Y.F(z,function(b){if(b.$&&0<b.ka)return a=!0,!1});\"accurate\"==t.ff&&(a=(a=a||0===t.lb)||\"none\"!=t.Bd&&t.lb<t.mb/2,!a&&t.lb<t.Qc/2+t.Ad*t.Ye.a&&Y.F(z,function(b){if(b.$&&(b.selected&&!b.$a||!b.selected&&b.$a))return a=!0,!1}));return a}function l(){if(t.n!==\nt.xb)return!0;var a=\"polygonPlainFill polygonPlainStroke polygonGradientFill polygonGradientStroke labelPlainFill contentDecoration\".split(\" \");Y.F(z,function(b){if(b.$&&b.U)return a.push(\"polygonExposureShadow\"),!1});for(var b=a.length-1;0<=b;b--){var c=a[b];if(!!E[c]!==!!M[c])return!0}return!1}function e(){function a(c,d,e,f,g){function h(a,b,c,d,e){a[d]&&(b-=c*p[d],a[d]=!1,e&&(b+=c*p[e],a[e]=!0));return b}c=D.extend({},c);switch(e){case \"never\":c.labelPlainFill=!1;break;case \"always\":case \"auto\":c.labelPlainFill=\n!0}if(t.Oc)switch(f){case \"never\":c.contentDecoration=!1;break;case \"always\":case \"auto\":c.contentDecoration=!0}else c.contentDecoration=!1;var k=0;D.Ga(c,function(a,b){a&&(k+=d*p[\"contentDecoration\"===b?\"labelPlainFill\":b])});c.polygonExposureShadow=b;k+=2*p.polygonExposureShadow;if(k<=g||(k=h(c,k,2,\"polygonExposureShadow\"))<=g||(k=h(c,k,d,\"polygonGradientFill\",\"polygonPlainFill\"))<=g||(k=h(c,k,d,\"polygonGradientStroke\"))<=g||(k=h(c,k,d,\"polygonPlainStroke\"))<=g||\"auto\"===f&&(k=h(c,k,d,\"contentDecoration\"))<=\ng)return c;\"auto\"===e&&(k=h(c,k,d,\"labelPlainFill\"));return c}var b=s===u,c=0,d=0;Y.Ie(z,function(a){var b=1;Y.F(a,function(){b++});c+=b;d=Math.max(d,b)});var e={};switch(t.xh){case \"plain\":e.polygonPlainFill=!0;break;case \"gradient\":e.polygonPlainFill=!b,e.polygonGradientFill=b}switch(t.Bd){case \"plain\":e.polygonPlainStroke=!0;break;case \"gradient\":e.polygonPlainStroke=!b,e.polygonGradientStroke=b}E=a(e,c,t.Ej,t.Cj,t.Dj);M=a(e,2*d,\"always\",\"always\",t.hh);J=a(e,c,\"always\",\"always\",t.gh)}function b(a){return function(b,\nc){return b===s?!0===E[a]:!0===(c?M:J)[a]}}function h(a,b){return function(c,d){return a(c,d)&&b(c,d)}}function n(a){z.ea=!0;Y.wd(z,function(b){if(b.$&&b.X&&b.Ca&&b.M&&(z.I||b.Z||b.me)){b.me=!1;var c=b.e,d={x:0,y:0,f:0,i:0},e=!!b.u;if(1<I/a.f){var f;for(f=c.length-1;0<=f;f--)c[f].ea=!1;if(b.ea&&e)for(f=c.length-1;0<=f;f--)if(b=c[f],1!==b.scale&&(b.Ub(a,d),d.f=a.f/b.scale,d.i=a.i/b.scale),!1===b.ea&&b.o){var e=b.o,g=e.length;if(L.Ta(b.o,1===b.scale?a:d))b.ea=!0;else for(var h=0;h<g;h++)if(L.Mg(e[h],\ne[(h+1)%g],1===b.scale?a:d)){b.ea=!0;b.C&&(b=b.C[h])&&(c[b.index].ea=!0);break}}}else for(f=0;f<c.length;f++)c[f].ea=e}})}var r=v.pf()?50:1E4,p,q,s,u,w,x,y,C,B,K,A,I,R,O,P=new Ua(a),F=new Va(a),U,N,S,t=a.options,z,H,E,J,M;a.c.j(\"stage:initialized\",function(a,b,c,d){O=a;I=c;R=d;q=O.oc(\"wireframe\",t.xb,!1);u=q.getContext(\"2d\");w=new ga(u);x=O.oc(\"hifi\",t.n,!1);C=x.getContext(\"2d\");B=new ga(C);s=u;y=C;u.n=t.xb;w.n=t.xb;C.n=t.n;B.n=t.n;K=O.oc(\"tmp\",Math.max(t.n,t.xb),!0);A=K.getContext(\"2d\");A.n=1;[u,\nC,A].forEach(function(a){a.scale(a.n,a.n)})});a.c.j(\"stage:resized\",function(a,b,c,d){I=c;R=d;[u,C,A].forEach(function(a){a.scale(a.n,a.n)})});a.c.j(\"model:loaded\",function(b){function c(a){var b=0;if(!a.empty()){for(var d=a.e,e=d.length-1;0<=e;e--)b=Math.max(b,c(d[e]));b+=1}return a.ng=b}z=b;H=!0;c(z);e();a.c.p(\"render:renderers:resolved\",E,M,J)});var Q=\"groupFillType groupStrokeType wireframeDrawMaxDuration wireframeLabelDrawing wireframeContentDecorationDrawing finalCompleteDrawMaxDuration finalIncrementalDrawMaxDuration groupContentDecorator\".split(\" \"),\n$=[\"groupLabelLightColor\",\"groupLabelDarkColor\",\"groupLabelColorThreshold\",\"groupUnexposureLabelColorThreshold\"];a.c.j(\"options:changed\",function(a){function b(a,c,d,e){O.ej(a,d);c.n=d;e&&c.scale(d,d)}a.dataObject||(D.nb(a,Q)&&e(),D.nb(a,$)&&Y.F(z,function(a){a.yd=-1}));var c=D.Q(a,\"pixelRatio\");a=D.Q(a,\"wireframePixelRatio\");if(c||a)c&&b(x,y,t.n,!0),a&&b(q,s,t.xb,!0),b(K,A,Math.max(t.n,t.xb),!1)});a.c.j(\"zoom:initialized\",function(a){U=a});a.c.j(\"timeline:initialized\",function(a){N=a});a.c.j(\"api:initialized\",\nfunction(a){S=a});var Z=[{id:\"offsetPolygon\",be:function(a){if((a.selected||0<a.opacity&&!1===a.open||!a.X)&&a.ba.Na()){var b=a.ba;b.clear();if(a.aa){var c=a.aa,d=t.jh;0<d?(d=Math.min(1,d*Math.pow(1-t.kh*d,a.ng)),ha.qj(b,c,a.parent.K.Nb/32,d)):ha.le(b,c)}a.Vd=!0}}},{id:\"label\",be:function(a){a.Wa&&a.Xc&&P.k(a)}},{id:\"custom\",be:function(b,c){if(b.aa&&(0<b.opacity&&(!1===b.open||!0===b.selected)||!b.X)&&b.Ec&&a.options.Oc&&!b.na){var d={};S.od(d,b);S.pd(d,b);S.nd(d,b,!0);d.context=b.ac;d.polygonContext=\nb.ba;d.labelContext=b.Tc;d.shapeDirty=b.Vd;d.viewportScale=c;var e={groupLabelDrawn:!0,groupPolygonDrawn:!0};a.options.nh(a.Ud,d,e);e.groupLabelDrawn||(b.qf=!1);e.groupPolygonDrawn||(b.Wd=!1);b.Vd=!1;b.Ec=!1}}}].reverse(),W=[new function(a){var b=Array(a.length);this.ee=function(c,d,e){if(0!==c.length){var f,g,h=[],k=c[0].Bb;for(f=0;f<c.length;f++)g=c[f],g.Bb!==k&&(h.push(f),k=g.Bb);h.push(f);for(var l=k=0;l<h.length;l++){for(var m=h[l],p=a.length-1;0<=p;p--)if(b[p]){var n=a[p];d.save();for(f=k;f<\nm;f++)g=c[f],d.save(),g.Sb(d),n.vb.call(n,g,d,e),d.restore();n.hb.call(n,d,e);d.restore()}k=m}}};this.qa=function(c,d){for(var e=!1,f=a.length-1;0<=f;f--)b[f]=a[f].qa(c,d),e|=b[f];return e};this.W=function(c,d){for(var e=a.length-1;0<=e;e--)if(b[e]){var f=a[e];f.W.call(f,c,d)}};this.Da=function(c){for(var d=a.length-1;0<=d;d--)if(b[d]){var e=a[d];e.Da.call(e,c)}};this.Og=function(c){for(var d=a.length-1;0<=d;d--){var e=a[d];if(b[d])for(var f=e.Za.length-1;0<=f;f--)c[e.Za[f]]=!0}}}([{Za:[\"offsetPolygon\"],\nqa:b(\"polygonExposureShadow\"),W:function(a){A.save();A.scale(a.n,a.n)},Da:function(){A.restore()},d:function(){},hb:function(a){this.mg&&(this.mg=!1,a.save(),a.setTransform(1,0,0,1,0,0),a.drawImage(K,0,0,a.canvas.width,a.canvas.height,0,0,a.canvas.width,a.canvas.height),a.restore(),A.save(),A.setTransform(1,0,0,1,0,0),A.clearRect(0,0,K.width,K.height),A.restore())},vb:function(a,b,c){if(!(a.open&&a.X||a.ba.Na())){var d=t.Se*a.opacity*a.ka*(\"flattened\"==t.ab?1-a.parent.ka:(1-a.Kb)*a.parent.Kb)*(1.1<=\nt.Va?1:(t.Va-1)/0.1);0<d&&(A.save(),A.beginPath(),a.Sb(A),a.ba.Sa(A),A.shadowBlur=c*b.n*d,A.shadowColor=t.ph,A.fillStyle=\"rgba(0, 0, 0, 1)\",A.globalCompositeOperation=\"source-over\",A.globalAlpha=a.opacity,A.fill(),A.shadowBlur=0,A.shadowColor=\"transparent\",A.globalCompositeOperation=\"destination-out\",A.fill(),A.restore(),this.mg=!0)}}},{Za:[\"offsetPolygon\"],qa:function(){return!0},W:function(){function a(b){var d=b.sa,e=b.Db,f=b.selected,g=c(d.l*b.va+(e?t.Ch:0)+(f?t.Th:0)),h=c(d.s*b.wa+(e?t.Dh:0)+\n(f?t.Uh:0));b=b.Re;b.h=(d.h+(e?t.Bh:0)+(f?t.Sh:0))%360;b.s=h;b.l=g;return b}function c(a){return 100<a?100:0>a?0:a}var d=[{type:\"fill\",qa:b(\"polygonPlainFill\"),gd:function(b,c){c.fillStyle=T.Ac(a(b))}},{type:\"fill\",qa:b(\"polygonGradientFill\"),gd:function(b,d){var e=b.K.Nb,f=a(b),e=d.createRadialGradient(b.x,b.y,0,b.x,b.y,e*t.th);e.addColorStop(0,T.Y((f.h+t.qh)%360,c(f.s+t.sh),c(f.l+t.rh)));e.addColorStop(1,T.Y((f.h+t.uh)%360,c(f.s+t.wh),c(f.l+t.vh)));b.ba.Sa(d);d.fillStyle=e}},{type:\"stroke\",qa:h(b(\"polygonPlainStroke\"),\nfunction(){return 0<t.mb}),gd:function(a,b){var d=a.sa,e=a.Db,f=a.selected;b.strokeStyle=T.Y((d.h+t.bf+(e?t.Te:0)+(f?t.Ze:0))%360,c(d.s*a.wa+t.df+(e?t.Ve:0)+(f?t.af:0)),c(d.l*a.va+t.cf+(e?t.Ue:0)+(f?t.$e:0)));b.lineWidth=t.mb*Math.pow(t.Ra,a.R-1)}},{type:\"stroke\",qa:h(b(\"polygonGradientStroke\"),function(){return 0<t.mb}),gd:function(a,b){var d=a.K.Nb*t.$h,e=a.sa,f=Math.PI*t.Wh/180,d=b.createLinearGradient(a.x+d*Math.cos(f),a.y+d*Math.sin(f),a.x+d*Math.cos(f+Math.PI),a.y+d*Math.sin(f+Math.PI)),g=a.Db,\nh=a.selected,f=(e.h+t.bf+(g?t.Te:0)+(h?t.Ze:0))%360,k=c(e.s*a.wa+t.df+(g?t.Ve:0)+(h?t.af:0)),e=c(e.l*a.va+t.cf+(g?t.Ue:0)+(h?t.$e:0));d.addColorStop(0,T.Y((f+t.Xh)%360,c(k+t.Zh),c(e+t.Yh)));d.addColorStop(1,T.Y((f+t.ai)%360,c(k+t.ci),c(e+t.bi)));b.strokeStyle=d;b.lineWidth=t.mb*Math.pow(t.Ra,a.R-1)}}],e=Array(d.length);return function(a,b){for(var c=d.length-1;0<=c;c--)e[c]=d[c].qa(a,b);this.uj=d;this.Xg=e}}(),Da:function(){},d:function(){},hb:function(){},vb:function(a,b){if(a.Wd&&!((0===a.opacity||\na.open)&&a.X||a.ba.Na()||!t.Ee&&a.description)){var c=this.uj,d=this.Xg;b.beginPath();a.ba.Sa(b);for(var e=!1,f=!1,g=c.length-1;0<=g;g--){var h=c[g];if(d[g])switch(h.gd(a,b),h.type){case \"fill\":e=!0;break;case \"stroke\":f=!0}}c=(a.X?a.opacity:1)*a.sa.a;d=!a.empty();g=t.ag?a.rd:1;e&&(e=d&&a.X&&a.M&&a.e[0].$?1-a.e.reduce(function(a,b){return a+b.ua*b.Zd},0)/a.e.length*(1-t.Zf):1,b.globalAlpha=c*e*g,Wa(b));f&&(b.globalAlpha=c*(d?t.vi:1)*g,b.closePath(),Xa(b),b.stroke())}}},{Za:[\"offsetPolygon\"],qa:function(){return 0<\nt.Qc},W:function(){},Da:function(){},d:function(){},hb:function(){},vb:function(a,b,c){if(a.Wd&&a.selected&&!a.ba.Na()){b.globalAlpha=a.Ka;b.beginPath();var d=Math.pow(t.Ra,a.R-1);b.lineWidth=t.Qc*d;b.strokeStyle=t.Vh;var e=t.Ad;0<e&&(b.shadowBlur=e*d*c*b.n,b.shadowColor=t.Xe);a.ba.Sa(b);b.closePath();b.stroke()}}},{Za:[],qa:function(){return!0},W:function(){},Da:function(){},d:function(){},hb:function(){},vb:function(a,b){function c(d){var e=Sa.yc.width,f=Sa.yc.height,g=L.te(a.aa,a.K,e/f),g=Math.min(Math.min(0.9*\ng,0.5*a.q.i)/f,0.5*a.q.f/e);b.save();b.translate(a.x,a.y);b.globalAlpha=a.opacity*a.fa;b.scale(g,g);b.translate(-e/2,-f/2);d(b);b.restore()}a.na&&!a.ba.Na()&&c(function(a){Sa.Gg(a)})}},{Za:[],qa:function(a,b){return function(c,d){return a(c,d)||b(c,d)}}(b(\"labelPlainFill\"),h(b(\"contentDecoration\"),function(){return t.Oc})),W:function(){},Da:function(){},d:function(){},hb:function(){},vb:function(a,b,c){(0<a.opacity&&0<a.fa&&!a.open||!a.X)&&!a.ba.Na()&&(a.Uc=a.ra&&a.ra.la&&t.n*a.ra.fontSize*a.scale*\nc>=t.Ph,!t.Ee&&a.description?a.qb=a.parent.qb:\"auto\"===a.Gd?(b=a.Re,c=b.h+(b.s<<9)+(b.l<<16),a.yd!==c&&(a.qb=T.Cg(b)>(0>a.ka?t.di:t.Eh)?t.Fh:t.Oh,a.yd=c)):a.qb=a.Gd)}},{Za:[\"custom\"],qa:h(b(\"contentDecoration\"),function(){return t.Oc}),W:function(){},Da:function(){},d:function(){},hb:function(){},vb:function(a,b){!(0<a.opacity&&0<a.fa&&!a.open||!a.X)||a.ac.Na()||a.ba.Na()||(a.Uc||void 0===a.ra?(b.globalAlpha=a.fa*(a.X?a.opacity:1)*(a.empty()?1:t.$f),b.fillStyle=a.qb,b.strokeStyle=a.qb,a.ac.Sa(b)):\nk(a,b))}},{Za:[\"label\"],qa:b(\"labelPlainFill\"),W:function(){},Da:function(){},d:function(){},hb:function(){},vb:function(a,b,c){a.qf&&a.Xc&&(0<a.opacity&&0<a.fa&&!a.open||!a.X)&&!a.ba.Na()&&a.ra&&(b.fillStyle=a.qb,b.globalAlpha=a.fa*(a.X?a.opacity:1)*(a.empty()?1:t.$f),a.Uc?Ya(a,b,c):k(a,b))}}].reverse())];this.H=function(){p=ua.ji(function(){return ia.eh()},\"CarrotSearchFoamTree\",12096E5)($a());F.H()};this.clear=function(){s.clearRect(0,0,I,R);y.clearRect(0,0,I,R)};this.ee=function(){function a(){window.clearTimeout(b);\nb=setTimeout(function(){if(l()){var a=!g();f(null,d.ea,y,a);D.defer(function(){ca.rj()})}},Math.max(t.Fj,3*m.rg.Jd,3*m.rg.Id))}var b,d;return function(b){ab(F);d=c();var e=null!==d.vg,g=0<O.kc(\"hifi\"),h=g&&(e||!b);b=e||H||!b;H=!1;g&&!h&&ca.sj();f(d.vg,d.wg,h?y:s,b);Y.Fa(z,function(a){a.Z=!1;a.I=!1;a.$a=!1});h||a();t.Vf(e)}}();this.d=function(a){a=a||{};ab(F);z.I=!0;var b=c(),d=t.n;try{var e=D.B(a.pixelRatio,t.n);t.n=e;var g=O.oc(\"export\",e,!0),h=g.getContext(\"2d\");s===w&&(h=new ga(h));h.scale(e,e);\nvar k=D.Q(a,\"backgroundColor\");k&&(h.save(),h.fillStyle=a.backgroundColor,h.fillRect(0,0,I,R),h.restore());f(k?[]:null,b.wg,h,!0)}finally{t.n=d}return g.toDataURL(D.B(a.format,\"image/png\"),D.B(a.quality,0.8))};var ca=function(){function a(b,d,e,f){function g(a,b,c,d){return N.D.m({opacity:O.kc(a)}).ia({duration:c,G:{opacity:{end:b,P:d}},ca:function(){O.kc(a,this.opacity)}}).xa()}var h=D.Ed(O.kc(b),1),k=D.Ed(O.kc(e),0);if(!h||!k){for(var l=c.length-1;0<=l;l--)c[l].stop();c=[];h||c.push(g(b,1,d,X.Qb));\nk||c.push(g(e,0,f,X.og));return N.D.m({}).Ya(c).start()}}var b,c=[];return{sj:function(){t.qd?1!==q.style.opacity&&(q.style.visibility=\"visible\",x.style.visibility=\"hidden\",q.style.opacity=1,x.style.opacity=0):b&&b.Fb()||(b=a(\"wireframe\",t.Ne,\"hifi\",t.Ne))},rj:function(){t.qd?(x.style.visibility=\"visible\",q.style.visibility=\"hidden\",q.style.opacity=0,x.style.opacity=1):a(\"hifi\",t.yg,\"wireframe\",t.yg)}}}();ab=function(a){a.apply()};Wa=function(a){a.fill()};Xa=function(a){a.stroke()};return this}\nvar Wa,Xa,ab;function Ua(a){function m(a){return f.Nh?(e.fontFamily=d.fontFamily,e.fontStyle=d.fontStyle,e.fontVariant=d.fontVariant,e.fontWeight=d.fontWeight,e.lineHeight=d.lineHeight,e.horizontalPadding=d.ob,e.verticalPadding=d.eb,e.maxTotalTextHeight=d.sb,e.maxFontSize=d.rb,g.Cc(f.Mh,a,e),c.fontFamily=e.fontFamily,c.fontStyle=e.fontStyle,c.fontVariant=e.fontVariant,c.fontWeight=e.fontWeight,c.lineHeight=e.lineHeight,c.ob=e.horizontalPadding,c.eb=e.verticalPadding,c.sb=e.maxTotalTextHeight,c.rb=e.maxFontSize,\nc):d}function k(a){\"undefined\"!==typeof a.groupLabelFontFamily&&(d.fontFamily=a.groupLabelFontFamily);\"undefined\"!==typeof a.groupLabelFontStyle&&(d.fontStyle=a.groupLabelFontStyle);\"undefined\"!==typeof a.groupLabelFontVariant&&(d.fontVariant=a.groupLabelFontVariant);\"undefined\"!==typeof a.groupLabelFontWeight&&(d.fontWeight=a.groupLabelFontWeight);\"undefined\"!==typeof a.groupLabelLineHeight&&(d.lineHeight=a.groupLabelLineHeight);\"undefined\"!==typeof a.groupLabelHorizontalPadding&&(d.ob=a.groupLabelHorizontalPadding);\n\"undefined\"!==typeof a.groupLabelVerticalPadding&&(d.eb=a.groupLabelVerticalPadding);\"undefined\"!==typeof a.groupLabelMaxTotalHeight&&(d.sb=a.groupLabelMaxTotalHeight);\"undefined\"!==typeof a.groupLabelMaxFontSize&&(d.rb=a.groupLabelMaxFontSize)}var f=a.options,d={},c={},g,l={groupLabel:\"\"},e={};a.c.j(\"api:initialized\",function(a){g=a});a.c.j(\"options:changed\",k);k(a.Ud);this.d=function(a){if(!a.aa)return!1;var c=a.group.label;f.Hh&&!a.na&&(l.labelText=c,g.Cc(f.Gh,a,l),c=l.labelText);a.rf=c;return a.Hd!=\nc};this.k=function(a){var c=a.rf;a.Hd=c;a.Tc.clear();a.ra=void 0;!a.aa||D.kf(c)||\"flattened\"==f.ab&&!a.empty()&&a.M||(a.ra=G.ye(m(a),a.Tc,c,a.aa,a.q,a.K,!1,!1,a.li,a.K.ja,f.Qh,a.Wa));a.Wa=!1};Ya=this.A=function(a,c){a.Tc.Sa(c)}}var Ya;function Va(a){function m(a,c){var d=a.e,e=d.length,f,g,k=l.K.Nb;for(f=0;f<e;f++)g=d[f],g.Cb=(180*(Math.atan2(g.x-a.x,g.y-a.y)+c)/Math.PI+180)/360,g.Nc=Math.min(1,Math.sqrt(L.d(g,a))/k)}function k(a,c){var d=a.e,e=d.length;if(1===e||2===e&&d[0].description)d[0].Cb=0.5;else{var f,g,k=0,l=Number.MAX_VALUE,m=Math.sin(c),x=Math.cos(c);for(f=0;f<e;f++){g=d[f];var y=g.x*m+g.y*x;k<y&&(k=y);l>y&&(l=y);g.Cb=y;g.Nc=1}for(f=0;f<e;f++)g=d[f],g.Cb=(g.Cb-l)/(k-l)}}function f(a,c,d,e){c=c[e];return c+(d[e]-c)*a}\nvar d={radial:m,linear:k},c=a.options,g,l,e={groupColor:null,labelColor:null};a.c.j(\"model:loaded\",function(a){l=a});a.c.j(\"api:initialized\",function(a){g=a});this.H=function(){};this.apply=function(){function a(d){if(d.M&&d.Ca){var k=d.e,l,m;if(d.Z||d.Ma||u){0===d.R?n(d,c.Ui*Math.PI/180):r(d,c.Yi*Math.PI/180);for(l=k.length-1;0<=l;l--){m=k[l];m.Ma=!0;var A=m.Cb,I,R,O,P,F=m.Qe;0===d.R?(I=f(A,p,q,\"h\"),R=(x+(1-x)*m.Nc)*f(A,p,q,\"s\"),O=(1+(0>m.ka?w*(m.ka+1):w)*(1-m.Nc))*f(A,p,q,\"l\"),P=f(A,p,q,\"a\")):(O=\nd.sa,I=O.h,R=O.s,O=h(O.l,A,c.Zi,c.$i),P=d.Qe.a);F.h=I;F.s=R;F.l=O;F.a=P;I=m.sa;m.na?(I.h=0,I.s=0,I.l=\"light\"==c.Tg?90:10,I.a=1):(I.h=F.h,I.s=F.s,I.l=F.l,I.a=F.a);u&&!m.na&&(e.groupColor=I,e.labelColor=\"auto\",g.Cc(s,m,e,function(a){a.ratio=A}),m.sa=T.Ba(e.groupColor),m.sa.a=D.Q(e.groupColor,\"a\")?e.groupColor.a:1,\"auto\"!==e.labelColor&&(m.Gd=T.Ng(e.labelColor)))}d.Ma=!1}for(l=k.length-1;0<=l;l--)a(k[l])}}function h(a,b,c,d){var e=0>a+c*d?0:100<a+c*d?100:a+c*d;return e+b*((0>a-c*(1-d)?0:100<a-c*(1-d)?\n100:a-c*(1-d))-e)}var n=d[c.Ti]||m,r=k,p=c.cj,q=c.Wi,s=c.lh,u=c.mh,w=c.Xi,x=c.aj;a(l)};return this};function Ga(){this.uc=this.pe=this.rc=this.qg=this.f=this.xg=this.T=this.y=this.x=this.id=0;this.o=this.parent=this.e=null;this.q={x:0,y:0,f:0,i:0};this.C=null;this.Hd=this.rf=void 0;this.kd=!1;this.Nc=this.Cb=0;this.Qe={h:0,s:0,l:0,a:0,model:\"hsla\"};this.sa={h:0,s:0,l:0,a:0,model:\"hsla\"};this.Re={h:0,s:0,l:0,model:\"hsl\"};this.yd=-1;this.Gd=\"auto\";this.qb=\"#000\";this.ng=this.R=this.Dd=this.index=0;this.na=!1;this.ja=this.vf=0;this.ea=!1;this.aa=null;this.K={x:0,y:0,ja:0,Nb:0};this.Xd=this.u=null;\nthis.Xc=this.$=this.$a=this.Ec=this.me=this.Vd=this.Wa=this.Ma=this.I=this.Z=this.La=this.Ca=this.M=this.Qa=!1;this.wa=this.va=this.Ka=this.fa=this.opacity=this.scale=1;this.ua=0;this.Zd=1;this.Kb=this.ka=this.Gb=0;this.description=this.selected=this.Db=this.Td=this.open=this.U=!1;this.Bb=0;this.qf=this.Wd=this.X=!0;this.ra=void 0;this.Uc=!1;this.Tc=new ea;this.ba=new ea;this.ac=new ea;this.li=G.xi();this.Wc=0;this.rd=1;this.ad=-1;this.empty=function(){return!this.e||0===this.e.length};var a=[];this.Bc=\nfunction(d){a.push(d)};this.ed=function(d){D.cg(a,d)};var m={scale:1};this.Md=function(){var d=!1;this.scale=1;for(var c=0;c<a.length;c++)d=a[c].sf(this,m)||d,this.scale*=m.scale;return d};this.Sb=function(d){for(var c=0;c<a.length;c++)a[c].Sb(this,d)};this.Tb=function(d,c){c.x=d.x;c.y=d.y;for(var f=0;f<a.length;f++)a[f].Tb(this,c,c);return c};this.Ub=function(d,c){c.x=d.x;c.y=d.y;for(var f=0;f<a.length;f++)a[f].Ub(this,c,c);return c};var k=[];this.zb=function(a){k.push(a)};this.dd=function(a){D.cg(k,\na)};var f={opacity:1,wa:1,va:1,fa:1,Ka:1};this.nc=function(){if(0!==k.length){this.Ka=this.fa=this.va=this.wa=this.opacity=1;for(var a=k.length-1;0<=a;a--)(0,k[a])(this,f),this.opacity*=f.opacity,this.va*=f.va,this.wa*=f.wa,this.fa*=f.fa,this.Ka*=f.Ka}}}function Oa(a,m){return m.T>a.T?1:m.T<a.T?-1:a.index-m.index};function bb(a){var m=this,k,f,d,c,g=a.options,l,e;a.c.j(\"stage:initialized\",function(b,e,l,r){d=l;c=r;k=b.oc(\"titlebar\",g.n,!1);f=k.getContext(\"2d\");f.n=g.n;f.scale(f.n,f.n);a.c.p(\"titlebar:initialized\",m)});a.c.j(\"stage:resized\",function(a,e,g,k){d=g;c=k;f.scale(f.n,f.n)});a.c.j(\"zoom:initialized\",function(a){e=a});a.c.j(\"api:initialized\",function(a){l=a});a.c.j(\"model:loaded\",function(){f.clearRect(0,0,d,c)});this.update=function(a){f.clearRect(0,0,d,c);if(a){!a.empty()&&a.e[0].description&&(a=\na.e[0]);var h=g.zj,k=g.yj,m=Math.min(c/2,g.ne+2*h),p=m-2*h,q=d-2*k;if(!(0>=p||0>=q)){var s=a.Uc?a.ra.fontSize*a.scale*e.scale():0,u,w={titleBarText:a.Hd,titleBarTextColor:g.ug,titleBarBackgroundColor:g.tg,titleBarMaxFontSize:g.ne,titleBarShown:s<g.qi};a.na?u=xa.kg(\"B`ssnu!Rd`sbi!Gn`lUsdd!whrt`mh{`uhno/!Bmhbj!uid!mnfn!un!fn!un!iuuq;..b`ssnurd`sbi/bnl.gn`lusdd!gns!lnsd!edu`hmr/\"):(l.Cc(g.vj,a,w,function(a){a.titleBarWidth=q;a.titleBarHeight=p;a.labelFontSize=s;a.viewportScale=e.scale()}),u=w.titleBarText);\nu&&0!==u.length&&w.titleBarShown&&(a=e.md(a.Tb(a,{}),{}).y>c/2,h={x:k,y:a?h:c-m+h,f:q,i:p},k=L.A(h),f.fillStyle=g.tg,f.fillRect(0,a?0:c-m,d,m),f.fillStyle=g.ug,G.Me({fontFamily:g.wj||g.Ih,fontStyle:g.Xj||g.Jh,fontWeight:g.Zj||g.Lh,fontVariant:g.Yj||g.Kh,rb:g.ne,Yc:g.xj,ob:0,eb:0,sb:1},f,u,k,h,{x:h.x+h.f/2,y:h.y+h.i/2},!0,!0).la||f.clearRect(0,0,d,c))}}}};function cb(a){function m(a,b,c){w=!0;h&&h.stop();r&&r.stop();return g(e.reset(a),b,c).N(function(){w=!1})}function k(b){e.update(b);s.I=!0;a.c.p(\"foamtree:dirty\",!0)}function f(a,b){return e.d((0!==e.k()?0.35:1)*a,(0!==e.A()?0.35:1)*b)}function d(){if(1===b.Ob){var a=Math.round(1E4*e.k())/1E4;0!==a&&(n.$d=a,h=u.D.tc(n).ia({duration:500,G:{x:{start:a,end:0,P:X.Qb}},ca:function(){e.d(n.x-n.$d,0);k(1);n.$d=n.x}}).start())}}function c(){if(1===b.Ob){var a=Math.round(1E4*e.A())/1E4;0!==a&&(p.ae=a,r=u.D.tc(p).ia({duration:500,\nG:{y:{start:a,end:0,P:X.Qb}},ca:function(){e.d(0,p.y-p.ae);k(1);p.ae=p.y}}).start())}}function g(a,c,d){return a?u.D.tc(b).ia({duration:void 0===c?700:c,G:{Ob:{start:0,end:1,P:d||X.pg}},ca:function(){k(b.Ob)}}).bb():(new V).J().L()}function l(a){return function(){return w?(new V).J().L():a.apply(this,arguments)}}var e=new oa(a),b={Ob:1},h,n={Fe:0,x:0,$d:0},r,p={Ge:0,y:0,ae:0},q=this,s,u,w=!1;a.c.j(\"model:loaded\",function(a){s=a;e.reset(!1);e.update(1)});a.c.j(\"timeline:initialized\",function(a){u=\na});this.H=function(){a.c.p(\"zoom:initialized\",this)};this.reset=function(a,b){e.Pb(1);return m(!0,a,b)};this.normalize=l(function(a,b){e.Gc(1)?m(!1,a,b):q.wf()});this.wf=function(){d();c()};this.k=l(function(a,b,c,d){return q.sc(a.q,b,c,d)});this.Yb=l(function(a,b,c,d){return g(e.Yb(a,b),c,d)});this.sc=l(function(a,b,c,d){return g(e.sc(a,b),c,d)});this.Aj=l(function(a,b){e.sc(a,b)&&k(1)});this.si=l(function(a,c){1===b.Ob&&f(a,c)&&k(1)});this.Rg=l(function(a,b){e.Yb(a,b)&&k(1)});this.Qg=l(function(a,\nb,c,d){a=0|e.Yb(a,b);(a|=f(c,d))&&k(1)});this.ti=l(function(a,g,l){1===b.Ob&&(h=u.D.tc(n).ia({duration:a/0.03,G:{Fe:{start:g,end:0,P:X.Qb}},ca:function(){e.d(n.Fe,0)&&k(1);d()}}).start(),r=u.D.tc(p).ia({duration:a/0.03,G:{Ge:{start:l,end:0,P:X.Qb}},ca:function(){f(0,p.Ge)&&k(1);c()}}).start())});this.ui=function(){h&&0===e.k()&&h.stop();r&&0===e.A()&&r.stop()};this.Ic=function(a,b){e.Ic(a,b)};this.Pb=function(a){return e.Pb(a)};this.Gc=function(a){return e.Gc(a)};this.Rd=function(){return e.Rd()};\nthis.absolute=function(a,b){return e.absolute(a,b)};this.md=function(a,b){return e.md(a,b)};this.scale=function(){return e.scale()};this.d=function(a){return e.S(a)};this.content=function(a,b,c,d){e.content(a,b,c,d)}};function db(a,m,k){function f(a){var b=[];Y.F(n,function(c){a(c)&&b.push(c.group)});return{groups:b}}function d(a,b){var c=h.options,d=c.jj,e=c.ij,c=c.fe,f=0<d+e?c:0,g=[];Ca.Ja(a,Ca.ya(a,h.options.he),function(a,c,k){c=\"groups\"===h.options.ge?k:c;a.e&&(a=p.D.m(a).fb(f*(e+d*c)).call(b).xa(),g.push(a))});return p.D.m({}).Ya(g).bb()}function c(a){Q||(Q=!0,r.d(function(){Q=!1;h.c.p(\"repaint:before\");C.ee(this.Pg)},{Pg:a}))}function g(){function a(d,e){var f=d.$;d.$=e<=b;d.Xc=e<=c;d.$!=f&&Y.He(d,function(a){a.me=\n!0});d.open||d.Vb||e++;if(f=d.e)for(var g=0;g<f.length;g++)a(f[g],e)}var b=h.options.Nd,c=Math.min(h.options.Nd,h.options.oi);a(n,1)}function l(){var a=[],b=e();b.ri&&h.c.p(\"model:childrenAttached\",Y.Lc(n));b.dj&&y.complete(function(b){J.pb(b);a.push(b)});for(b=0;b<a.length;b++){var c=a[b];c.Ca=!0;A.d(c)}}function e(){var a=h.options.Nd,b=!1,c=!1;u.scale();u.scale();for(var d=[n,1];0<d.length;){var e=d.shift(),f=d.shift(),g=!e.na&&f<a,c=c||g;e.Qa=e.Qa||g;e.open||e.Vb||f++;var k=e.e;!k&&g&&(b=x.S(e)||\nb,k=e.e);if(k)for(e=0;e<k.length;e++)d.push(k[e],f)}return{ri:b,dj:c}}var b=this,h={c:new wa,options:m,Ud:k},n,r=new ba,p=new ya(r),q=aa.create(),s=new ja(h),u=new cb(h),w=new Ea(h),x=new Fa(h.options),y=new Pa(h),C=new Ta(h,r),B=new Ma(h);new bb(h);var K=new Ia(h),A=new Ja(h),I=new Ka(h),R=new La(h);h.c.j(\"stage:initialized\",function(a,b,c,d){S.gf(c,d)});h.c.j(\"stage:resized\",function(a,b,c,d){S.hj(a,b,c,d)});h.c.j(\"foamtree:attachChildren\",l);h.c.j(\"openclose:changing\",g);h.c.j(\"interaction:reset\",\nfunction(){M(!0)});h.c.j(\"foamtree:dirty\",c);this.H=function(){h.c.p(\"timeline:initialized\",p);n=x.H();s.H(a);w.H();C.H();B.H();K.H();A.H();u.H();I.H();R.H()};this.kb=function(){p.d();E.stop();r.k();s.kb()};var O=\"groupLabelFontFamily groupLabelFontStyle groupLabelFontVariant groupLabelFontWeight groupLabelLineHeight groupLabelHorizontalPadding groupLabelVerticalPadding groupLabelDottingThreshold groupLabelMaxTotalHeight groupLabelMinFontSize groupLabelMaxFontSize groupLabelDecorator\".split(\" \"),\nP=\"rainbowColorDistribution rainbowLightnessDistribution rainbowColorDistributionAngle rainbowLightnessDistributionAngle rainbowColorModelStartPoint rainbowLightnessCorrection rainbowSaturationCorrection rainbowStartColor rainbowEndColor rainbowHueShift rainbowHueShiftCenter rainbowSaturationShift rainbowSaturationShiftCenter rainbowLightnessShift rainbowLightnessShiftCenter attributionTheme\".split(\" \"),F=!1,U=[\"groupBorderRadius\",\"groupBorderRadiusCorrection\",\"groupBorderWidth\",\"groupInsetWidth\",\n\"groupBorderWidthScaling\"],N=[\"maxGroupLevelsDrawn\",\"maxGroupLabelLevelsDrawn\"];this.Wb=function(a){h.c.p(\"options:changed\",a);D.nb(a,O)&&Y.F(n,function(a){a.Wa=!0});D.nb(a,P)&&(n.Ma=!0);D.nb(a,U)&&(F=!0);D.nb(a,N)&&(g(),l())};this.reload=function(){t.reload()};this.Xb=function(a,b){D.defer(function(){if(F)S.mi(a),F=!1;else{if(b)for(var d=x.A(b),e=d.length-1;0<=e;e--)d[e].I=!0;else n.I=!0;c(a)}})};this.Y=function(){s.k()};this.update=function(){x.update();S.Bj()};this.reset=function(){return M(!1)};\nthis.S=C.d;this.Ba=function(){var a={};return function(b,c){var d=x.d(b);return d?w.nd(a,d,c):null}}();this.Aa=function(){var a={x:0,y:0},b={x:0,y:0};return function(c,d){var e=x.d(c);return e?(a.x=d.x,a.y=d.y,e.Tb(a,a),u.md(a,a),b.x=a.x,b.y=a.y,b):null}}();this.ya=function(){var a={};return function(b){return(b=x.d(b))?w.pd(a,b):null}}();this.gb=function(){var a={};return function(b){return(b=x.d(b))?w.od(a,b):null}}();this.za=function(){var a={};return function(){return u.d(a)}}();this.yc=function(){this.A({groups:f(function(a){return a.group.selected}),\nnewState:!0,keepPrevious:!1});this.k({groups:f(function(a){return a.group.open}),newState:!0,keepPrevious:!1});this.d({groups:f(function(a){return a.group.exposed}),newState:!0,keepPrevious:!1})};this.Ja=function(){return f(function(a){return a.U})};this.d=function(a){return t.submit(function(){return K.fc(x.k(a,\"exposed\",!1),!1,!0,!1)})};this.Pa=function(){return f(function(a){return a.open})};this.k=function(a){return t.submit(function(){return I.Jb(x.k(a,\"open\",!0),!1,!1)})};this.cb=function(){return f(function(a){return a.selected})};\nthis.A=function(a){return t.submit(function(){R.select(x.k(a,\"selected\",!0),!1);return(new V).J().L()})};this.Ac=function(a){return(a=x.d(a))?a===n?u.reset(m.wc,X.pa(m.xc)):u.k(a,m.Pc,m.wc,X.pa(m.xc)):(new V).J().L()};this.Ta=function(a){return B.gb[a]};this.zc=function(){var a=da;return{frames:a.frames,totalTime:a.totalTime,lastFrameTime:a.Id,lastInterFrameTime:a.Jd,fps:a.Pe}};var S=function(){function a(c,f){var g=c||d,h=f||e;d=g;e=h;var k=m.bc&&m.bc.boundary;k&&2<k.length?n.o=k.map(function(a){return{x:g*\na.x,y:h*a.y}}):n.o=[{x:0,y:0},{x:g,y:0},{x:g,y:h},{x:0,y:h}];b()}function b(){n.Z=!0;n.u=n.o;n.q=L.q(n.o,n.q);n.K=n;L.se(n.o,n.K)}var d,e;return{gf:a,hj:function(b,d,e,f){J.stop();var g=e/b,k=f/d;Y.Ie(n,function(a){a.x=a.x*g+(Math.random()-0.5)*e/1E3;a.y=a.y*k+(Math.random()-0.5)*f/1E3});a(e,f);n.La=!0;y.step(J.pb,!0,!1,function(a){var b=a.e;if(b){y.Mb(a);for(var c=b.length-1;0<=c;c--){var d=b[c];d.f=d.rc}a.La=!0}})?c(!1):(y.qc(n),h.options.de?(c(!1),E.dg(),E.fd()):(y.complete(J.pb),n.Ma=!0,c(!1)))},\nmi:function(a){var d=!1;n.empty()||(b(),E.Fb()||(d=y.step(J.pb,!1,!1),c(a)));return d},Bj:function(){Y.Fa(n,function(a){a.empty()||y.Mb(a)});y.qc(n);h.options.de?(E.dg(),Y.Fa(n,function(a){a.empty()||J.ef(a)})):(Y.Fa(n,function(a){a.empty()||J.pb(n)}),y.complete(J.pb),n.Ma=!0,c(!1))}}}(),t=function(){function a(){0===m.Yd&&u.reset(0);h.options.Uf(m.bc);S.gf();x.Y(m.bc);e();g();h.c.p(\"model:loaded\",n,Y.Lc(n));var b;n.empty()||(n.open=!0,n.Qa=!0,m.de?b=E.fd():(E.wi(),b=k()),c(),0<m.fe?(C.clear(),s.d(1)):\nb=pa([b,f(1)]));h.options.Tf(m.bc);b&&(h.options.Xf(),b.N(function(){r.d(h.options.Wf)}))}function c(){var a=m.Ua,d=m.bd;m.Ua=0;m.bd=0;b.yc();m.Ua=a;m.bd=d}function f(a,b){return 0===m.Le||b?(s.d(a),(new V).J().L()):p.D.m({opacity:s.d()}).oe(2).ia({duration:m.Le,G:{opacity:{end:a,P:X.pa(m.fh)}},ca:function(){s.d(this.opacity)}}).bb()}function k(){Y.Fa(n,function(a){a.Ca=!1});var a=new V,b=new qa(a.J);b.d();n.Ca=!0;A.d(n).N(b.k);d(n,function Za(){this.M&&this.o&&(this.Z=this.Ca=!0,b.d(),A.d(this).N(b.k),\nb.d(),d(this,Za).N(b.k))});return a.L()}function l(){for(var a=0;a<t.length;a++){var b=t[a],c=b.action();D.Q(c,\"then\")?c.N(b.Be.J):b.Be.J()}t=[]}var q=!1,t=[];return{reload:function(){q||(n.empty()?a():(J.stop(),p.d(),E.stop(),q=!0,pa(0<m.Yd?[A.k(),M(!1)]:[f(0)]).N(function(){f(0,!0);q=!1;a();D.defer(l)})))},submit:function(a){if(q){var b=new V;t.push({action:a,Be:b});return b.L()}return a()}}}(),z,H=new qa(function(){z.J()}),E=function(){function a(){f||(H.A()&&(z=new V),H.d(),b(),f=!0,r.repeat(e));\nreturn z.L()}function b(){g=q.now()}function e(){var b=q.now()-g>m.gj,b=y.step(function(b){b.Ca=!0;J.ef(b);H.d();A.d(b).N(H.k);H.d();d(b,function(){this.Qa=!0;a()}).N(H.k)},!0,b)||b;c(!0);b&&(f=!1,H.k());return b}var f=!1,g;return{wi:function(){y.complete(J.pb)},fd:a,dg:b,Fb:function(){return!H.A()},stop:function(){r.cancel(e);f=!1;H.clear()}}}(),J=function(){function a(b){var c=!b.empty();b.Ca=!0;if(c){for(var d=b.e,e=d.length-1;0<=e;e--){var f=d[e];f.f=f.rc}b.La=!0}return c}var b=[];return{ef:function(c){var d=\nh.options,e=d.zh;0<e?Ca.Ja(c,Ca.ya(c,h.options.he),function(a,c,f){c=\"groups\"===h.options.ge?f:c;H.d();b.push(p.D.m(a).fb(c*d.yh*e).ia({duration:e,G:{f:{start:a.qg,end:a.rc,P:X.pa(d.Ah)}},ca:function(){this.f=Math.max(0,this.f);this.parent.La=!0;E.fd()}}).ib(H.k).start())}):a(c)&&E.fd()},pb:a,stop:function(){for(var a=b.length-1;0<=a;a--)b[a].stop();b=[]}}}(),M=function(){var a=!1;return function(b){if(a)return(new V).J().L();a=!0;var c=[];c.push(u.reset(m.wc,X.pa(m.xc)));var d=new V;K.fc({e:[],Ia:!1,\nHa:!1},b,!1,!0).N(function(){I.Jb({e:[],Ia:!1,Ha:!1},b,!1).N(d.J)});c.push(d.L());return pa(c).N(function(){a=!1;b&&m.Yf()})}}(),Q=!1}function $a(){return{version:\"3.4.4\",build:\"36955f78f6b79223438db3b18b9b64b5aad799bb/36955f78\",brandingAllowed:!1}};v.Cd(function(){window.CarrotSearchFoamTree=function(a){function m(a,b){if(!l||l.exists(a))switch(a){case \"selection\":return h.cb();case \"open\":return h.Pa();case \"exposure\":return h.Ja();case \"state\":return h.ya.apply(this,b);case \"geometry\":return h.Ba.apply(this,b);case \"hierarchy\":return h.gb.apply(this,b);case \"containerCoordinates\":return h.Aa.apply(this,b);case \"imageData\":return h.S.apply(this,b);case \"viewport\":return h.za();case \"times\":return h.zc();case \"onModelChanged\":case \"onRedraw\":case \"onRolloutStart\":case \"onRolloutComplete\":case \"onRelaxationStep\":case \"onGroupHover\":case \"onGroupOpenOrCloseChanging\":case \"onGroupExposureChanging\":case \"onGroupSelectionChanging\":case \"onGroupSelectionChanged\":case \"onGroupClick\":case \"onGroupDoubleClick\":case \"onGroupHold\":var c=\ne[a];return Array.isArray(c)?c:[c];default:return e[a]}}function k(a){function c(a,b){return D.Q(f,a)?(b(f[a]),delete f[a],1):0}var f;if(0===arguments.length)return 0;1===arguments.length?f=D.extend({},arguments[0]):2===arguments.length&&(f={},f[arguments[0]]=arguments[1]);l&&l.validate(f,b.ni);var g=0;h&&(g+=c(\"selection\",h.A),g+=c(\"open\",h.k),g+=c(\"exposure\",h.d));var k={};D.Ga(f,function(a,b){if(e[b]!==a||D.jc(a))k[b]=a,g++;e[b]=a});0<g&&d(k);return g}function f(a,b){var c=\"on\"+a.charAt(0).toUpperCase()+\na.slice(1),f=e[c];e[c]=b(Array.isArray(f)?f:[f]);f={};f[c]=e[c];d(f)}function d(a){(function(){function c(b,d){return D.Q(a,b)||void 0===d?va.m(e[b],g):d}b.ni=e.logging;b.bc=e.dataObject;b.n=e.pixelRatio;b.xb=e.wireframePixelRatio;b.ab=e.stacking;b.dc=e.descriptionGroupType;b.Hc=e.descriptionGroupPosition;b.bh=e.descriptionGroupDistanceFromCenter;b.cc=e.descriptionGroupSize;b.De=e.descriptionGroupMinHeight;b.Ce=e.descriptionGroupMaxHeight;b.Ee=e.descriptionGroupPolygonDrawn;b.Vc=e.layout;b.lc=e.layoutByWeightOrder;\nb.tj=e.showZeroWeightGroups;b.We=e.groupMinDiameter;b.ce=e.rectangleAspectRatioPreference;b.fj=e.initializer||e.relaxationInitializer;b.gj=e.relaxationMaxDuration;b.de=e.relaxationVisible;b.bg=e.relaxationQualityThreshold;b.Rh=e.groupResizingBudget;b.zh=e.groupGrowingDuration;b.yh=e.groupGrowingDrag;b.Ah=e.groupGrowingEasing;b.jh=e.groupBorderRadius;b.lb=e.groupBorderWidth;b.Ra=e.groupBorderWidthScaling;b.zd=e.groupInsetWidth;b.kh=e.groupBorderRadiusCorrection;b.mb=e.groupStrokeWidth;b.Qc=e.groupSelectionOutlineWidth;\nb.Vh=e.groupSelectionOutlineColor;b.Ad=e.groupSelectionOutlineShadowSize;b.Xe=e.groupSelectionOutlineShadowColor;b.Sh=e.groupSelectionFillHueShift;b.Uh=e.groupSelectionFillSaturationShift;b.Th=e.groupSelectionFillLightnessShift;b.Ze=e.groupSelectionStrokeHueShift;b.af=e.groupSelectionStrokeSaturationShift;b.$e=e.groupSelectionStrokeLightnessShift;b.xh=e.groupFillType;b.th=e.groupFillGradientRadius;b.qh=e.groupFillGradientCenterHueShift;b.sh=e.groupFillGradientCenterSaturationShift;b.rh=e.groupFillGradientCenterLightnessShift;\nb.uh=e.groupFillGradientRimHueShift;b.wh=e.groupFillGradientRimSaturationShift;b.vh=e.groupFillGradientRimLightnessShift;b.Bd=e.groupStrokeType;b.mb=e.groupStrokeWidth;b.bf=e.groupStrokePlainHueShift;b.df=e.groupStrokePlainSaturationShift;b.cf=e.groupStrokePlainLightnessShift;b.$h=e.groupStrokeGradientRadius;b.Wh=e.groupStrokeGradientAngle;b.ai=e.groupStrokeGradientUpperHueShift;b.ci=e.groupStrokeGradientUpperSaturationShift;b.bi=e.groupStrokeGradientUpperLightnessShift;b.Xh=e.groupStrokeGradientLowerHueShift;\nb.Zh=e.groupStrokeGradientLowerSaturationShift;b.Yh=e.groupStrokeGradientLowerLightnessShift;b.Bh=e.groupHoverFillHueShift;b.Dh=e.groupHoverFillSaturationShift;b.Ch=e.groupHoverFillLightnessShift;b.Te=e.groupHoverStrokeHueShift;b.Ve=e.groupHoverStrokeSaturationShift;b.Ue=e.groupHoverStrokeLightnessShift;b.Va=e.groupExposureScale;b.ph=e.groupExposureShadowColor;b.Se=e.groupExposureShadowSize;b.Pc=e.groupExposureZoomMargin;b.ei=e.groupUnexposureLightnessShift;b.fi=e.groupUnexposureSaturationShift;b.di=\ne.groupUnexposureLabelColorThreshold;b.Ua=e.exposeDuration;b.gc=e.exposeEasing;b.bd=e.openCloseDuration;b.lh=va.m(e.groupColorDecorator,g);b.mh=e.groupColorDecorator!==D.ta;b.Gh=va.m(e.groupLabelDecorator,g);b.Hh=e.groupLabelDecorator!==D.ta;b.Mh=va.m(e.groupLabelLayoutDecorator,g);b.Nh=e.groupLabelLayoutDecorator!==D.ta;b.nh=va.m(e.groupContentDecorator,g);b.Oc=e.groupContentDecorator!==D.ta;b.oh=e.groupContentDecoratorTriggering;b.bj=e.rainbowStartColor;b.Vi=e.rainbowEndColor;b.Ti=e.rainbowColorDistribution;\nb.Ui=e.rainbowColorDistributionAngle;b.Yi=e.rainbowLightnessDistributionAngle;b.Zi=e.rainbowLightnessShift;b.$i=e.rainbowLightnessShiftCenter;b.aj=e.rainbowSaturationCorrection;b.Xi=e.rainbowLightnessCorrection;b.Zf=e.parentFillOpacity;b.vi=e.parentStrokeOpacity;b.$f=e.parentLabelOpacity;b.ag=e.parentOpacityBalancing;b.Qh=e.groupLabelUpdateThreshold;b.Ih=e.groupLabelFontFamily;b.Jh=e.groupLabelFontStyle;b.Kh=e.groupLabelFontVariant;b.Lh=e.groupLabelFontWeight;b.Ph=e.groupLabelMinFontSize;b.Pj=e.groupLabelMaxFontSize;\nb.Oj=e.groupLabelLineHeight;b.Nj=e.groupLabelHorizontalPadding;b.Rj=e.groupLabelVerticalPadding;b.Qj=e.groupLabelMaxTotalHeight;b.Fh=e.groupLabelDarkColor;b.Oh=e.groupLabelLightColor;b.Eh=e.groupLabelColorThreshold;b.Dj=e.wireframeDrawMaxDuration;b.Ej=e.wireframeLabelDrawing;b.Cj=e.wireframeContentDecorationDrawing;b.yg=e.wireframeToFinalFadeDuration;b.Fj=e.wireframeToFinalFadeDelay;b.gh=e.finalCompleteDrawMaxDuration;b.hh=e.finalIncrementalDrawMaxDuration;b.Ne=e.finalToWireframeFadeDuration;b.qd=\ne.androidStockBrowserWorkaround;b.ff=e.incrementalDraw;b.pi=e.maxGroups;b.Nd=e.maxGroupLevelsDrawn;b.oi=e.maxGroupLabelLevelsDrawn;b.he=e.rolloutStartPoint;b.ge=e.rolloutMethod;b.kj=e.rolloutEasing;b.fe=e.rolloutDuration;b.gg=e.rolloutScalingStrength;b.ig=e.rolloutTranslationXStrength;b.jg=e.rolloutTranslationYStrength;b.fg=e.rolloutRotationStrength;b.hg=e.rolloutTransformationCenter;b.oj=e.rolloutPolygonDrag;b.pj=e.rolloutPolygonDuration;b.lj=e.rolloutLabelDelay;b.mj=e.rolloutLabelDrag;b.nj=e.rolloutLabelDuration;\nb.jj=e.rolloutChildGroupsDrag;b.ij=e.rolloutChildGroupsDelay;b.Mi=e.pullbackStartPoint;b.Gi=e.pullbackMethod;b.Ci=e.pullbackEasing;b.Uj=e.pullbackType;b.Yd=e.pullbackDuration;b.Li=e.pullbackScalingStrength;b.Oi=e.pullbackTranslationXStrength;b.Pi=e.pullbackTranslationYStrength;b.Ki=e.pullbackRotationStrength;b.Ni=e.pullbackTransformationCenter;b.Hi=e.pullbackPolygonDelay;b.Ii=e.pullbackPolygonDrag;b.Ji=e.pullbackPolygonDuration;b.Di=e.pullbackLabelDelay;b.Ei=e.pullbackLabelDrag;b.Fi=e.pullbackLabelDuration;\nb.zi=e.pullbackChildGroupsDelay;b.Ai=e.pullbackChildGroupsDrag;b.Bi=e.pullbackChildGroupsDuration;b.Le=e.fadeDuration;b.fh=e.fadeEasing;b.Gj=e.zoomMouseWheelFactor;b.wc=e.zoomMouseWheelDuration;b.xc=e.zoomMouseWheelEasing;b.qi=e.maxLabelSizeForTitleBar;b.wj=e.titleBarFontFamily;b.tg=e.titleBarBackgroundColor;b.ug=e.titleBarTextColor;b.xj=e.titleBarMinFontSize;b.ne=e.titleBarMaxFontSize;b.yj=e.titleBarTextPaddingLeftRight;b.zj=e.titleBarTextPaddingTopBottom;b.vj=e.titleBarDecorator;b.Kj=e.attributionText;\nb.Hj=e.attributionLogo;b.Jj=e.attributionLogoScale;b.Lj=e.attributionUrl;b.we=e.attributionPosition;b.Sg=e.attributionDistanceFromCenter;b.Ug=e.attributionWeight;b.Tg=e.attributionTheme;b.hf=e.interactionHandler;b.Uf=c(\"onModelChanging\",b.Uf);b.Tf=c(\"onModelChanged\",b.Tf);b.Vf=c(\"onRedraw\",b.Vf);b.Xf=c(\"onRolloutStart\",b.Xf);b.Wf=c(\"onRolloutComplete\",b.Wf);b.Sd=c(\"onRelaxationStep\",b.Sd);b.Yf=c(\"onViewReset\",b.Yf);b.Mf=c(\"onGroupOpenOrCloseChanging\",b.Mf);b.Lf=c(\"onGroupOpenOrCloseChanged\",b.Lf);\nb.Ef=c(\"onGroupExposureChanging\",b.Ef);b.Df=c(\"onGroupExposureChanged\",b.Df);b.Of=c(\"onGroupSelectionChanging\",b.Of);b.Nf=c(\"onGroupSelectionChanged\",b.Nf);b.Gf=c(\"onGroupHover\",b.Gf);b.If=c(\"onGroupMouseMove\",b.If);b.yf=c(\"onGroupClick\",b.yf);b.zf=c(\"onGroupDoubleClick\",b.zf);b.Ff=c(\"onGroupHold\",b.Ff);b.Kf=c(\"onGroupMouseWheel\",b.Kf);b.Jf=c(\"onGroupMouseUp\",b.Jf);b.Hf=c(\"onGroupMouseDown\",b.Hf);b.Cf=c(\"onGroupDragStart\",b.Cf);b.Af=c(\"onGroupDrag\",b.Af);b.Bf=c(\"onGroupDragEnd\",b.Bf);b.Rf=c(\"onGroupTransformStart\",\nb.Rf);b.Pf=c(\"onGroupTransform\",b.Pf);b.Qf=c(\"onGroupTransformEnd\",b.Qf);b.Sf=c(\"onKeyUp\",b.Sf)})();b.cj=T.Ba(b.bj);b.Wi=T.Ba(b.Vi);b.Ye=T.Ba(b.Xe);b.Ij=null;h&&(h.Wb(a),D.Q(a,\"dataObject\")&&h.reload())}function c(a){return function(){return a.apply(this,arguments).ih(g)}}var g=this,l=window.CarrotSearchFoamTree.asserts,e=D.extend({},window.CarrotSearchFoamTree.defaults),b={};k(a);(a=e.element||document.getElementById(e.id))||na.Pa(\"Element to embed FoamTree in not found.\");e.element=a;var h=new db(a,\nb,e);h.H();var n={get:function(a){return 0===arguments.length?D.extend({},e):m(arguments[0],Array.prototype.slice.call(arguments,1))},set:k,on:function(a,b){f(a,function(a){a.push(b);return a})},off:function(a,b){f(a,function(a){return a.filter(function(a){return a!==b})})},resize:h.Y,redraw:h.Xb,update:h.update,select:c(h.A),expose:c(h.d),open:c(h.k),reset:c(h.reset),zoom:c(h.Ac),trigger:function(a,b){var c=h.Ta(a);c&&c(b)},dispose:function(){function a(){throw\"FoamTree instance disposed\";}h.kb();\nD.Ga(n,function(b,c){\"dispose\"!==c&&(g[c]=a)})}};D.Ga(n,function(a,b){g[b]=a});h.reload()};window[\"CarrotSearchFoamTree.asserts\"]&&(window.CarrotSearchFoamTree.asserts=window[\"CarrotSearchFoamTree.asserts\"],delete window[\"CarrotSearchFoamTree.asserts\"]);window.CarrotSearchFoamTree.supported=!0;window.CarrotSearchFoamTree.version=$a;window.CarrotSearchFoamTree.defaults=Object.freeze({id:void 0,element:void 0,logging:!1,dataObject:void 0,pixelRatio:1,wireframePixelRatio:1,layout:\"relaxed\",layoutByWeightOrder:!0,\nshowZeroWeightGroups:!0,groupMinDiameter:10,rectangleAspectRatioPreference:-1,relaxationInitializer:\"fisheye\",relaxationMaxDuration:3E3,relaxationVisible:!1,relaxationQualityThreshold:1,stacking:\"hierarchical\",descriptionGroupType:\"stab\",descriptionGroupPosition:225,descriptionGroupDistanceFromCenter:1,descriptionGroupSize:0.125,descriptionGroupMinHeight:35,descriptionGroupMaxHeight:0.5,descriptionGroupPolygonDrawn:!1,maxGroups:5E4,maxGroupLevelsDrawn:4,maxGroupLabelLevelsDrawn:3,groupGrowingDuration:0,\ngroupGrowingEasing:\"bounce\",groupGrowingDrag:0,groupResizingBudget:2,groupBorderRadius:0.15,groupBorderWidth:4,groupBorderWidthScaling:0.6,groupInsetWidth:6,groupBorderRadiusCorrection:1,groupSelectionOutlineWidth:5,groupSelectionOutlineColor:\"#222\",groupSelectionOutlineShadowSize:0,groupSelectionOutlineShadowColor:\"#fff\",groupSelectionFillHueShift:0,groupSelectionFillSaturationShift:0,groupSelectionFillLightnessShift:0,groupSelectionStrokeHueShift:0,groupSelectionStrokeSaturationShift:0,groupSelectionStrokeLightnessShift:-10,\ngroupFillType:\"gradient\",groupFillGradientRadius:1,groupFillGradientCenterHueShift:0,groupFillGradientCenterSaturationShift:0,groupFillGradientCenterLightnessShift:20,groupFillGradientRimHueShift:0,groupFillGradientRimSaturationShift:0,groupFillGradientRimLightnessShift:-5,groupStrokeType:\"plain\",groupStrokeWidth:1.5,groupStrokePlainHueShift:0,groupStrokePlainSaturationShift:0,groupStrokePlainLightnessShift:-10,groupStrokeGradientRadius:1,groupStrokeGradientAngle:45,groupStrokeGradientUpperHueShift:0,\ngroupStrokeGradientUpperSaturationShift:0,groupStrokeGradientUpperLightnessShift:20,groupStrokeGradientLowerHueShift:0,groupStrokeGradientLowerSaturationShift:0,groupStrokeGradientLowerLightnessShift:-20,groupHoverFillHueShift:0,groupHoverFillSaturationShift:0,groupHoverFillLightnessShift:20,groupHoverStrokeHueShift:0,groupHoverStrokeSaturationShift:0,groupHoverStrokeLightnessShift:-10,groupExposureScale:1.15,groupExposureShadowColor:\"rgba(0, 0, 0, 0.5)\",groupExposureShadowSize:50,groupExposureZoomMargin:0.1,\ngroupUnexposureLightnessShift:65,groupUnexposureSaturationShift:-65,groupUnexposureLabelColorThreshold:0.35,exposeDuration:700,exposeEasing:\"squareInOut\",groupColorDecorator:D.ta,groupLabelDecorator:D.ta,groupLabelLayoutDecorator:D.ta,groupContentDecorator:D.ta,groupContentDecoratorTriggering:\"onLayoutDirty\",openCloseDuration:500,rainbowColorDistribution:\"radial\",rainbowColorDistributionAngle:-45,rainbowLightnessDistributionAngle:45,rainbowSaturationCorrection:0.1,rainbowLightnessCorrection:0.4,rainbowStartColor:\"hsla(0, 100%, 55%, 1)\",\nrainbowEndColor:\"hsla(359, 100%, 55%, 1)\",rainbowLightnessShift:30,rainbowLightnessShiftCenter:0.4,parentFillOpacity:0.7,parentStrokeOpacity:1,parentLabelOpacity:1,parentOpacityBalancing:!0,wireframeDrawMaxDuration:15,wireframeLabelDrawing:\"auto\",wireframeContentDecorationDrawing:\"auto\",wireframeToFinalFadeDuration:500,wireframeToFinalFadeDelay:300,finalCompleteDrawMaxDuration:80,finalIncrementalDrawMaxDuration:100,finalToWireframeFadeDuration:200,androidStockBrowserWorkaround:v.jf(),incrementalDraw:\"fast\",\ngroupLabelFontFamily:\"sans-serif\",groupLabelFontStyle:\"normal\",groupLabelFontWeight:\"normal\",groupLabelFontVariant:\"normal\",groupLabelLineHeight:1.05,groupLabelHorizontalPadding:1,groupLabelVerticalPadding:1,groupLabelMinFontSize:6,groupLabelMaxFontSize:160,groupLabelMaxTotalHeight:0.9,groupLabelUpdateThreshold:0.05,groupLabelDarkColor:\"#000\",groupLabelLightColor:\"#fff\",groupLabelColorThreshold:0.35,rolloutStartPoint:\"center\",rolloutEasing:\"squareOut\",rolloutMethod:\"groups\",rolloutDuration:2E3,rolloutScalingStrength:-0.7,\nrolloutTranslationXStrength:0,rolloutTranslationYStrength:0,rolloutRotationStrength:-0.7,rolloutTransformationCenter:0.7,rolloutPolygonDrag:0.1,rolloutPolygonDuration:0.5,rolloutLabelDelay:0.8,rolloutLabelDrag:0.1,rolloutLabelDuration:0.5,rolloutChildGroupsDrag:0.1,rolloutChildGroupsDelay:0.2,pullbackStartPoint:\"center\",pullbackEasing:\"squareIn\",pullbackMethod:\"groups\",pullbackDuration:1500,pullbackScalingStrength:-0.7,pullbackTranslationXStrength:0,pullbackTranslationYStrength:0,pullbackRotationStrength:-0.7,\npullbackTransformationCenter:0.7,pullbackPolygonDelay:0.3,pullbackPolygonDrag:0.1,pullbackPolygonDuration:0.8,pullbackLabelDelay:0,pullbackLabelDrag:0.1,pullbackLabelDuration:0.3,pullbackChildGroupsDelay:0.1,pullbackChildGroupsDrag:0.1,pullbackChildGroupsDuration:0.3,fadeDuration:700,fadeEasing:\"cubicInOut\",zoomMouseWheelFactor:1.5,zoomMouseWheelDuration:500,zoomMouseWheelEasing:\"squareOut\",maxLabelSizeForTitleBar:8,titleBarFontFamily:null,titleBarFontStyle:\"normal\",titleBarFontWeight:\"normal\",titleBarFontVariant:\"normal\",\ntitleBarBackgroundColor:\"rgba(0, 0, 0, 0.5)\",titleBarTextColor:\"rgba(255, 255, 255, 1)\",titleBarMinFontSize:10,titleBarMaxFontSize:40,titleBarTextPaddingLeftRight:20,titleBarTextPaddingTopBottom:15,titleBarDecorator:D.ta,attributionText:null,attributionLogo:null,attributionLogoScale:0.5,attributionUrl:\"http://carrotsearch.com/foamtree\",attributionPosition:\"bottom-right\",attributionDistanceFromCenter:1,attributionWeight:0.025,attributionTheme:\"light\",interactionHandler:v.ii()?\"hammerjs\":\"builtin\",\nonModelChanging:[],onModelChanged:[],onRedraw:[],onRolloutStart:[],onRolloutComplete:[],onRelaxationStep:[],onViewReset:[],onGroupOpenOrCloseChanging:[],onGroupOpenOrCloseChanged:[],onGroupExposureChanging:[],onGroupExposureChanged:[],onGroupSelectionChanging:[],onGroupSelectionChanged:[],onGroupHover:[],onGroupMouseMove:[],onGroupClick:[],onGroupDoubleClick:[],onGroupHold:[],onGroupMouseWheel:[],onGroupMouseUp:[],onGroupMouseDown:[],onGroupDragStart:[],onGroupDrag:[],onGroupDragEnd:[],onGroupTransformStart:[],\nonGroupTransform:[],onGroupTransformEnd:[],onKeyUp:[],selection:null,open:null,exposure:null,imageData:null,hierarchy:null,geometry:null,containerCoordinates:null,state:null,viewport:null,times:null});window.CarrotSearchFoamTree.geometry=Object.freeze(function(){return{rectangleInPolygon:function(a,m,k,f,d,c,g){d=D.B(d,1);c=D.B(c,0.5);g=D.B(g,0.5);a=L.te(a,{x:m,y:k},f,c,g)*d;return{x:m-a*f*c,y:k-a*g,w:a*f,h:a}},circleInPolygon:function(a,m,k){return L.Eg(a,{x:m,y:k})},stabPolygon:function(a,m,k,f){return L.Wb(a,\n{x:m,y:k},f)},polygonCentroid:function(a){a=L.k(a,{});return{x:a.x,y:a.y,area:a.ja}},boundingBox:function(a){for(var m=a[0].x,k=a[0].y,f=a[0].x,d=a[0].y,c=1;c<a.length;c++){var g=a[c];g.x<m&&(m=g.x);g.y<k&&(k=g.y);g.x>f&&(f=g.x);g.y>d&&(d=g.y)}return{x:m,y:k,w:f-m,h:d-k}}}}())},function(){window.CarrotSearchFoamTree=function(){window.console.error(\"FoamTree is not supported on this browser.\")};window.CarrotSearchFoamTree.Wj=!1});})();\n\n\n\n/*** EXPORTS FROM exports-loader ***/\nmodule.exports = CarrotSearchFoamTree;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./client/vendor/carrotsearch.foamtree.js\n// module id = 12\n// module chunks = 0","/** @jsx h */\nimport { h, Component } from 'preact';\nimport cls from 'classnames';\n\nimport s from './Tooltip.css';\n\nexport default class Tooltip extends Component {\n\n static marginX = 10;\n static marginY = 30;\n\n constructor(props) {\n super(props);\n\n this.mouseCoords = {\n x: 0,\n y: 0\n };\n\n this.state = {\n left: 0,\n top: 0\n };\n }\n\n componentDidMount() {\n document.addEventListener('mousemove', this.onMouseMove, false);\n }\n\n shouldComponentUpdate(nextProps) {\n return this.props.visible || nextProps.visible;\n }\n\n componentWillUnmount() {\n document.removeEventListener('mousemove', this.onMouseMove);\n }\n\n render() {\n const { children, visible } = this.props;\n const className = cls({\n [s.container]: true,\n [s.hidden]: !visible\n });\n\n return (\n <div ref={this.saveNode}\n className={className}\n style={this.getStyle()}>\n {children}\n </div>\n );\n }\n\n saveNode = node => (this.node = node);\n\n getStyle() {\n return {\n left: this.state.left,\n top: this.state.top\n };\n }\n\n updatePosition() {\n if (!this.props.visible) return;\n\n const pos = {\n left: this.mouseCoords.x + Tooltip.marginX,\n top: this.mouseCoords.y + Tooltip.marginY\n };\n\n const boundingRect = this.node.getBoundingClientRect();\n\n if (pos.left + boundingRect.width > window.innerWidth) {\n // Shifting horizontally\n pos.left = window.innerWidth - boundingRect.width;\n }\n\n if (pos.top + boundingRect.height > window.innerHeight) {\n // Flipping vertically\n pos.top = this.mouseCoords.y - Tooltip.marginY - boundingRect.height;\n }\n\n this.setState(pos);\n }\n\n onMouseMove = event => {\n Object.assign(this.mouseCoords, {\n x: event.pageX,\n y: event.pageY\n });\n\n if (this.props.visible) {\n this.updatePosition();\n }\n };\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./client/components/Tooltip.jsx","\nvar content = require(\"!!../../node_modules/css-loader/index.js??ref--1-1!./Tooltip.css\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../node_modules/css-loader/index.js??ref--1-1!./Tooltip.css\", function() {\n\t\tvar newContent = require(\"!!../../node_modules/css-loader/index.js??ref--1-1!./Tooltip.css\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./client/components/Tooltip.css\n// module id = 14\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".Tooltip__container{font:normal 10px Verdana;position:absolute;padding:5px 10px;border-radius:4px;background:#fff;border:1px solid #aaa;opacity:.7;white-space:nowrap;visibility:visible;transition:opacity .2s ease,visibility .2s ease}.Tooltip__hidden{opacity:0;visibility:hidden}\", \"\"]);\n\n// exports\nexports.locals = {\n\t\"container\": \"Tooltip__container\",\n\t\"hidden\": \"Tooltip__hidden\"\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/css-loader?{\"modules\":true,\"minimize\":true,\"localIdentName\":\"[name]__[local]\"}!./client/components/Tooltip.css\n// module id = 15\n// module chunks = 0","\n/**\n * When source maps are enabled, `style-loader` uses a link element with a data-uri to\n * embed the css on the page. This breaks all relative urls because now they are relative to a\n * bundle instead of the current page.\n *\n * One solution is to only use full urls, but that may be impossible.\n *\n * Instead, this function \"fixes\" the relative urls to be absolute according to the current page location.\n *\n * A rudimentary test suite is located at `test/fixUrls.js` and can be run via the `npm test` command.\n *\n */\n\nmodule.exports = function (css) {\n // get current location\n var location = typeof window !== \"undefined\" && window.location;\n\n if (!location) {\n throw new Error(\"fixUrls requires window.location\");\n }\n\n\t// blank or null?\n\tif (!css || typeof css !== \"string\") {\n\t return css;\n }\n\n var baseUrl = location.protocol + \"//\" + location.host;\n var currentDir = baseUrl + location.pathname.replace(/\\/[^\\/]*$/, \"/\");\n\n\t// convert each url(...)\n\t/*\n\tThis regular expression is just a way to recursively match brackets within\n\ta string.\n\n\t /url\\s*\\( = Match on the word \"url\" with any whitespace after it and then a parens\n\t ( = Start a capturing group\n\t (?: = Start a non-capturing group\n\t [^)(] = Match anything that isn't a parentheses\n\t | = OR\n\t \\( = Match a start parentheses\n\t (?: = Start another non-capturing groups\n\t [^)(]+ = Match anything that isn't a parentheses\n\t | = OR\n\t \\( = Match a start parentheses\n\t [^)(]* = Match anything that isn't a parentheses\n\t \\) = Match a end parentheses\n\t ) = End Group\n *\\) = Match anything and then a close parens\n ) = Close non-capturing group\n * = Match anything\n ) = Close capturing group\n\t \\) = Match a close parens\n\n\t /gi = Get all matches, not the first. Be case insensitive.\n\t */\n\tvar fixedCss = css.replace(/url\\s*\\(((?:[^)(]|\\((?:[^)(]+|\\([^)(]*\\))*\\))*)\\)/gi, function(fullMatch, origUrl) {\n\t\t// strip quotes (if they exist)\n\t\tvar unquotedOrigUrl = origUrl\n\t\t\t.trim()\n\t\t\t.replace(/^\"(.*)\"$/, function(o, $1){ return $1; })\n\t\t\t.replace(/^'(.*)'$/, function(o, $1){ return $1; });\n\n\t\t// already a full url? no change\n\t\tif (/^(#|data:|http:\\/\\/|https:\\/\\/|file:\\/\\/\\/)/i.test(unquotedOrigUrl)) {\n\t\t return fullMatch;\n\t\t}\n\n\t\t// convert the url to a full url\n\t\tvar newUrl;\n\n\t\tif (unquotedOrigUrl.indexOf(\"//\") === 0) {\n\t\t \t//TODO: should we add protocol?\n\t\t\tnewUrl = unquotedOrigUrl;\n\t\t} else if (unquotedOrigUrl.indexOf(\"/\") === 0) {\n\t\t\t// path should be relative to the base url\n\t\t\tnewUrl = baseUrl + unquotedOrigUrl; // already starts with '/'\n\t\t} else {\n\t\t\t// path should be relative to current directory\n\t\t\tnewUrl = currentDir + unquotedOrigUrl.replace(/^\\.\\//, \"\"); // Strip leading './'\n\t\t}\n\n\t\t// send back the fixed url(...)\n\t\treturn \"url(\" + JSON.stringify(newUrl) + \")\";\n\t});\n\n\t// send back the fixed css\n\treturn fixedCss;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/style-loader/lib/urls.js\n// module id = 16\n// module chunks = 0","/** @jsx h */\nimport { h, Component } from 'preact';\n\nimport SwitcherItem from './SwitcherItem';\nimport s from './Switcher.css';\n\nexport default class Switcher extends Component {\n\n render() {\n const { label, items, activeItem, onSwitch } = this.props;\n\n return (\n <div className={s.container}>\n <div className={s.label}>\n {label}:\n </div>\n <div>\n {items.map(item =>\n <SwitcherItem key={item.label}\n item={item}\n active={item === activeItem}\n onClick={onSwitch}/>\n )}\n </div>\n </div>\n );\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./client/components/Switcher.jsx","/** @jsx h */\nimport { h, Component } from 'preact';\nimport cls from 'classnames';\n\nimport s from './Switcher.css';\n\nexport default class SwitcherItem extends Component {\n\n render() {\n const { item, active } = this.props;\n\n const className = cls({\n [s.item]: true,\n [s.active]: active\n });\n\n return (\n <span className={className}\n onClick={this.handleClick}>\n {item.label}\n </span>\n );\n }\n\n handleClick = () => {\n if (this.props.onClick) {\n this.props.onClick(this.props.item);\n }\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./client/components/SwitcherItem.jsx","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".Switcher__container{font:normal 10px Verdana;white-space:nowrap}.Switcher__label{font-weight:700;font-size:11px;margin-bottom:7px}.Switcher__item{display:inline-block;border:1px solid #aaa;border-radius:4px;padding:5px 7px;cursor:pointer;transition:background .3s ease}.Switcher__item:hover{background:rgba(255,165,0,.15)}.Switcher__item.Switcher__active{cursor:default;background:orange}.Switcher__item+.Switcher__item{margin-left:5px}\", \"\"]);\n\n// exports\nexports.locals = {\n\t\"container\": \"Switcher__container\",\n\t\"label\": \"Switcher__label\",\n\t\"item\": \"Switcher__item\",\n\t\"active\": \"Switcher__active\"\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/css-loader?{\"modules\":true,\"minimize\":true,\"localIdentName\":\"[name]__[local]\"}!./client/components/Switcher.css\n// module id = 19\n// module chunks = 0","/** @jsx h */\nimport { h, Component } from 'preact';\nimport cls from 'classnames';\n\nimport s from './Sidebar.css';\n\nexport default class Sidebar extends Component {\n\n static defaultProps = {\n position: 'left'\n };\n\n state = {\n visible: true,\n renderContent: true\n };\n\n componentDidMount() {\n this.hideTimeoutId = setTimeout(() => this.toggleVisibility(false), 1500);\n this.hideContentTimeout = null;\n }\n\n componentWillUnmount() {\n clearTimeout(this.hideTimeoutId);\n clearTimeout(this.hideContentTimeout);\n }\n\n render() {\n const { position, children } = this.props;\n const { visible, renderContent } = this.state;\n\n const className = cls({\n [s.container]: true,\n [s.left]: (position === 'left'),\n [s.hidden]: !visible\n });\n\n return (\n <div className={className}\n onMouseEnter={this.handleMouseEnter}\n onMouseLeave={this.handleMouseLeave}>\n {renderContent ? children : null}\n </div>\n );\n }\n\n handleMouseEnter = () => {\n clearTimeout(this.hideTimeoutId);\n this.toggleVisibility(true);\n };\n\n handleMouseLeave = () => this.toggleVisibility(false);\n\n toggleVisibility(flag) {\n clearTimeout(this.hideContentTimeout);\n\n this.setState({ visible: flag });\n\n if (flag) {\n this.setState({ renderContent: true });\n } else {\n // Waiting for the CSS animation to finish and hiding content\n this.hideContentTimeout = setTimeout(\n () => this.setState({ renderContent: false }),\n 500\n );\n }\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./client/components/Sidebar.jsx","\nvar content = require(\"!!../../node_modules/css-loader/index.js??ref--1-1!./Sidebar.css\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../node_modules/css-loader/index.js??ref--1-1!./Sidebar.css\", function() {\n\t\tvar newContent = require(\"!!../../node_modules/css-loader/index.js??ref--1-1!./Sidebar.css\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./client/components/Sidebar.css\n// module id = 21\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".Sidebar__container{background:#fff;border:none;border-right:1px solid #aaa;bottom:0;opacity:.95;overflow-y:auto;padding:20px;position:absolute;top:0;transition:transform .2s ease;z-index:1}.Sidebar__container.Sidebar__left{left:0}.Sidebar__container.Sidebar__left.Sidebar__hidden{transform:translateX(calc(-100% + 7px))}\", \"\"]);\n\n// exports\nexports.locals = {\n\t\"container\": \"Sidebar__container\",\n\t\"left\": \"Sidebar__left\",\n\t\"hidden\": \"Sidebar__hidden\"\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/css-loader?{\"modules\":true,\"minimize\":true,\"localIdentName\":\"[name]__[local]\"}!./client/components/Sidebar.css\n// module id = 22\n// module chunks = 0","/** @jsx h */\nimport { h, Component } from 'preact';\n\nimport CheckboxList from './CheckboxList';\n\nimport s from './CheckboxList.css';\n\nexport default class CheckboxListItem extends Component {\n\n render() {\n const { checked } = this.props;\n\n return (\n <label className={s.item}>\n <input className={s.checkbox}\n type=\"checkbox\"\n checked={checked}\n onChange={this.handleChange}/>\n {this.renderLabel()}\n </label>\n );\n }\n\n renderLabel() {\n const { children, item } = this.props;\n\n if (children && children.length) {\n return children[0](item, s.itemText);\n }\n\n return (\n <span className={s.itemText}>\n {item === CheckboxList.ALL_ITEM ? 'All' : item.label}\n </span>\n );\n }\n\n handleChange = () => {\n this.props.onChange(this.props.item);\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./client/components/CheckboxListItem.jsx","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".CheckboxList__container{font:normal 10px Verdana;white-space:nowrap}.CheckboxList__label{font-size:11px;font-weight:700;margin-bottom:7px}.CheckboxList__checkbox{cursor:pointer}.CheckboxList__item{cursor:pointer;display:block;margin-bottom:3px}.CheckboxList__itemText{margin-left:3px;position:relative;top:-2px;vertical-align:middle}\", \"\"]);\n\n// exports\nexports.locals = {\n\t\"container\": \"CheckboxList__container\",\n\t\"label\": \"CheckboxList__label\",\n\t\"checkbox\": \"CheckboxList__checkbox\",\n\t\"item\": \"CheckboxList__item\",\n\t\"itemText\": \"CheckboxList__itemText\"\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/css-loader?{\"modules\":true,\"minimize\":true,\"localIdentName\":\"[name]__[local]\"}!./client/components/CheckboxList.css\n// module id = 24\n// module chunks = 0","\nvar content = require(\"!!../../node_modules/css-loader/index.js??ref--1-1!./ModulesTreemap.css\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../node_modules/css-loader/index.js??ref--1-1!./ModulesTreemap.css\", function() {\n\t\tvar newContent = require(\"!!../../node_modules/css-loader/index.js??ref--1-1!./ModulesTreemap.css\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./client/components/ModulesTreemap.css\n// module id = 25\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".ModulesTreemap__container,.ModulesTreemap__map{position:relative;width:100%;height:100%}.ModulesTreemap__sidebarGroup{margin-bottom:20px}.ModulesTreemap__activeSize{font-weight:700}\", \"\"]);\n\n// exports\nexports.locals = {\n\t\"container\": \"ModulesTreemap__container\",\n\t\"map\": \"ModulesTreemap__map\",\n\t\"sidebarGroup\": \"ModulesTreemap__sidebarGroup\",\n\t\"activeSize\": \"ModulesTreemap__activeSize\"\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/css-loader?{\"modules\":true,\"minimize\":true,\"localIdentName\":\"[name]__[local]\"}!./client/components/ModulesTreemap.css\n// module id = 26\n// module chunks = 0","\nvar content = require(\"!!../node_modules/css-loader/index.js??ref--1-1!./viewer.css\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../node_modules/css-loader/index.js??ref--1-1!./viewer.css\", function() {\n\t\tvar newContent = require(\"!!../node_modules/css-loader/index.js??ref--1-1!./viewer.css\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./client/viewer.css\n// module id = 27\n// module chunks = 0","exports = module.exports = require(\"../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"#app,body,html{width:100%;height:100%;padding:0;margin:0;overflow:hidden}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/css-loader?{\"modules\":true,\"minimize\":true,\"localIdentName\":\"[name]__[local]\"}!./client/viewer.css\n// module id = 28\n// module chunks = 0"],"sourceRoot":""} adminSystem - Gogs: Go Git Service

Няма описание

system.js 199B

    // Provide a "System" global. module.exports = { // Make sure import is only used as "System.import" import: function() { throw new Error("System.import cannot be used indirectly"); } };
client - Gogs: Go Git Service

Aucune description

UrlContainer.java 3.1KB

    package ai.pai.client.utils; /** * Created by chengzhenyu on 2015/8/20. */ public class UrlContainer { public static final String HOST_URL = "https://api.pai.ai/"; public static final String HOME_PHOTO_URL = HOST_URL+"pai2/home"; public static final String CHECK_UPDATE_URL = HOST_URL+"op/upgrade"; public static final String QR_SESSION_GROUP_URL = "https://pai.ai/s/"; public static final String QR_APP_GROUP_URL = "https://pai.ai/g/"; public static final String QR_GUIDE_APP_GROUP_URL= "https://pai.ai/tgu/"; public static final String APP_GROUP_JOIN_URL = HOST_URL+"g/join"; public static final String SESSION_GROUP_JOIN_URL = HOST_URL+"s/join"; public static final String GUIDE_GROUP_JOIN_URL = HOST_URL+"tgu/join"; public static final String GROUP_CREATE_URL = HOST_URL+"g/create"; public static final String GROUP_DETAIL_URL = HOST_URL+"g/detail"; public static final String GROUP_UPDATE_URL = HOST_URL+"g/update"; public static final String GROUP_QUIT_URL = HOST_URL+"g/quit"; public static final String GROUP_LOCK_URL = HOST_URL+"g/lock"; public static final String GROUP_UNLOCK_URL = HOST_URL+"g/unlock"; public static final String GROUP_REFRESH_URL = HOST_URL+"g/data"; public static final String GROUP_REMOVE_MEMBER_URL = HOST_URL+"g/remove"; public static final String HISTORY_GROUP_URL = HOST_URL+"g/list"; public static final String GROUP_PHOTO_LIST_URL = HOST_URL+"f/list"; public static final String GROUP_UPLOAD_PHOTO_URL = HOST_URL+"f/upload"; public static final String WX_AUTHORIZE_URL = HOST_URL+"u/wx/authorize"; public static final String PHOTO_LIKE_URL = HOST_URL+"f/thumbup/submit"; public static final String PHOTO_LIKE_LIST_URL = HOST_URL+"f/thumbup/list"; public static final String PHOTO_COMMENT_URL = HOST_URL+"f/comment/submit"; public static final String PHOTO_COMMENT_LIST_URL = HOST_URL +"f/comment/list"; public static final String MESSAGE_NUMBER_URL = HOST_URL+"msg/list"; public static final String MESSAGE_LIST_URL = HOST_URL+"msg"; public static final String SPLASH_IMG_URL = HOST_URL+"op/splash"; public static final String CLEAR_MSG_URL = HOST_URL +"msg"; public static final String FEEDBACK_URL = HOST_URL +"op/feedback"; public static final String GET_PRICE_URL = HOST_URL +"f/price"; public static final String CREATE_ORDER_URL = HOST_URL+"wx/order_create"; public static final String QUERY_ORDER_URL = HOST_URL+"wx/order_query"; public static final String ORDER_LIST_URL = HOST_URL +"wx/order_list"; public static final String ORDER_DETAIL_URL = HOST_URL +"wx/order_detail"; public static final String BOUGHT_PHOTO_URL = HOST_URL +"f/bought"; public static final String GUEST_STATUS_URL = HOST_URL +"u/guest/status"; public static final String GUEST_LOGIN_URL = HOST_URL +"u/guest/login"; public static final String GEO_LOCATION_URL = HOST_URL+"geo/submit"; public static final String TOUR_INFO_URL = HOST_URL +"pai2/tginfo"; public static final String PATCH_CONFIG_URL = HOST_URL+"patch"; }
kodo - Gogs: Go Git Service

Няма описание

Brightcells: 212e3994d1 MP verify file преди 9 години
..
JQ8Eskhrjp.txt 25cce5e3b1 Add qrcodejump verify file преди 9 години
MP_verify_vEq7hPudfncXpZ57.txt 212e3994d1 MP verify file преди 9 години