From c2d40d370cb46f895075b3c27862f0cc8f421ea0 Mon Sep 17 00:00:00 2001 From: Vladimir Petriko Date: Thu, 22 Jan 2015 16:29:43 +0300 Subject: [PATCH] Updates --- bower.json | 2 +- build/development/plugins/tauCharts.export.js | 6598 ----------------- build/development/tauCharts.js | 98 +- build/production/tauCharts.min.css | 4 +- build/production/tauCharts.min.js | 13 +- component.json | 2 +- package.json | 2 +- 7 files changed, 60 insertions(+), 6659 deletions(-) delete mode 100644 build/development/plugins/tauCharts.export.js diff --git a/bower.json b/bower.json index fd2e93ae2..7c8af469a 100644 --- a/bower.json +++ b/bower.json @@ -1,6 +1,6 @@ { "name": "tauCharts", - "version": "0.3.7", + "version": "0.3.8", "homepage": "https://github.com/TargetProcess/tauCharts", "description": "Simple charts library based on d3", "keywords": [ diff --git a/build/development/plugins/tauCharts.export.js b/build/development/plugins/tauCharts.export.js deleted file mode 100644 index 6442387a0..000000000 --- a/build/development/plugins/tauCharts.export.js +++ /dev/null @@ -1,6598 +0,0 @@ -(function (root, factory) { - if (typeof define === 'function' && define.amd) { - define(['tauCharts'],function(tauCharts){ - return factory(tauCharts); - }); - } else if (typeof module === "object" && module.exports) { - var tauChart = require('tauCharts'); - module.exports = factory(tauCharts); - } else { - factory(root.tauCharts); - } -}(this, function (tauCharts) { -/** - * @license almond 0.3.0 Copyright (c) 2011-2014, The Dojo Foundation All Rights Reserved. - * Available via the MIT or new BSD license. - * see: http://github.com/jrburke/almond for details - */ -//Going sloppy to avoid 'use strict' string cost, but strict practices should -//be followed. -/*jslint sloppy: true */ -/*global setTimeout: false */ - -var requirejs, require, define; -(function (undef) { - var main, req, makeMap, handlers, - defined = {}, - waiting = {}, - config = {}, - defining = {}, - hasOwn = Object.prototype.hasOwnProperty, - aps = [].slice, - jsSuffixRegExp = /\.js$/; - - function hasProp(obj, prop) { - return hasOwn.call(obj, prop); - } - - /** - * Given a relative module name, like ./something, normalize it to - * a real name that can be mapped to a path. - * @param {String} name the relative name - * @param {String} baseName a real name that the name arg is relative - * to. - * @returns {String} normalized name - */ - function normalize(name, baseName) { - var nameParts, nameSegment, mapValue, foundMap, lastIndex, - foundI, foundStarMap, starI, i, j, part, - baseParts = baseName && baseName.split("/"), - map = config.map, - starMap = (map && map['*']) || {}; - - //Adjust any relative paths. - if (name && name.charAt(0) === ".") { - //If have a base name, try to normalize against it, - //otherwise, assume it is a top-level require that will - //be relative to baseUrl in the end. - if (baseName) { - //Convert baseName to array, and lop off the last part, - //so that . matches that "directory" and not name of the baseName's - //module. For instance, baseName of "one/two/three", maps to - //"one/two/three.js", but we want the directory, "one/two" for - //this normalization. - baseParts = baseParts.slice(0, baseParts.length - 1); - name = name.split('/'); - lastIndex = name.length - 1; - - // Node .js allowance: - if (config.nodeIdCompat && jsSuffixRegExp.test(name[lastIndex])) { - name[lastIndex] = name[lastIndex].replace(jsSuffixRegExp, ''); - } - - name = baseParts.concat(name); - - //start trimDots - for (i = 0; i < name.length; i += 1) { - part = name[i]; - if (part === ".") { - name.splice(i, 1); - i -= 1; - } else if (part === "..") { - if (i === 1 && (name[2] === '..' || name[0] === '..')) { - //End of the line. Keep at least one non-dot - //path segment at the front so it can be mapped - //correctly to disk. Otherwise, there is likely - //no path mapping for a path starting with '..'. - //This can still fail, but catches the most reasonable - //uses of .. - break; - } else if (i > 0) { - name.splice(i - 1, 2); - i -= 2; - } - } - } - //end trimDots - - name = name.join("/"); - } else if (name.indexOf('./') === 0) { - // No baseName, so this is ID is resolved relative - // to baseUrl, pull off the leading dot. - name = name.substring(2); - } - } - - //Apply map config if available. - if ((baseParts || starMap) && map) { - nameParts = name.split('/'); - - for (i = nameParts.length; i > 0; i -= 1) { - nameSegment = nameParts.slice(0, i).join("/"); - - if (baseParts) { - //Find the longest baseName segment match in the config. - //So, do joins on the biggest to smallest lengths of baseParts. - for (j = baseParts.length; j > 0; j -= 1) { - mapValue = map[baseParts.slice(0, j).join('/')]; - - //baseName segment has config, find if it has one for - //this name. - if (mapValue) { - mapValue = mapValue[nameSegment]; - if (mapValue) { - //Match, update name to the new value. - foundMap = mapValue; - foundI = i; - break; - } - } - } - } - - if (foundMap) { - break; - } - - //Check for a star map match, but just hold on to it, - //if there is a shorter segment match later in a matching - //config, then favor over this star map. - if (!foundStarMap && starMap && starMap[nameSegment]) { - foundStarMap = starMap[nameSegment]; - starI = i; - } - } - - if (!foundMap && foundStarMap) { - foundMap = foundStarMap; - foundI = starI; - } - - if (foundMap) { - nameParts.splice(0, foundI, foundMap); - name = nameParts.join('/'); - } - } - - return name; - } - - function makeRequire(relName, forceSync) { - return function () { - //A version of a require function that passes a moduleName - //value for items that may need to - //look up paths relative to the moduleName - var args = aps.call(arguments, 0); - - //If first arg is not require('string'), and there is only - //one arg, it is the array form without a callback. Insert - //a null so that the following concat is correct. - if (typeof args[0] !== 'string' && args.length === 1) { - args.push(null); - } - return req.apply(undef, args.concat([relName, forceSync])); - }; - } - - function makeNormalize(relName) { - return function (name) { - return normalize(name, relName); - }; - } - - function makeLoad(depName) { - return function (value) { - defined[depName] = value; - }; - } - - function callDep(name) { - if (hasProp(waiting, name)) { - var args = waiting[name]; - delete waiting[name]; - defining[name] = true; - main.apply(undef, args); - } - - if (!hasProp(defined, name) && !hasProp(defining, name)) { - throw new Error('No ' + name); - } - return defined[name]; - } - - //Turns a plugin!resource to [plugin, resource] - //with the plugin being undefined if the name - //did not have a plugin prefix. - function splitPrefix(name) { - var prefix, - index = name ? name.indexOf('!') : -1; - if (index > -1) { - prefix = name.substring(0, index); - name = name.substring(index + 1, name.length); - } - return [prefix, name]; - } - - /** - * Makes a name map, normalizing the name, and using a plugin - * for normalization if necessary. Grabs a ref to plugin - * too, as an optimization. - */ - makeMap = function (name, relName) { - var plugin, - parts = splitPrefix(name), - prefix = parts[0]; - - name = parts[1]; - - if (prefix) { - prefix = normalize(prefix, relName); - plugin = callDep(prefix); - } - - //Normalize according - if (prefix) { - if (plugin && plugin.normalize) { - name = plugin.normalize(name, makeNormalize(relName)); - } else { - name = normalize(name, relName); - } - } else { - name = normalize(name, relName); - parts = splitPrefix(name); - prefix = parts[0]; - name = parts[1]; - if (prefix) { - plugin = callDep(prefix); - } - } - - //Using ridiculous property names for space reasons - return { - f: prefix ? prefix + '!' + name : name, //fullName - n: name, - pr: prefix, - p: plugin - }; - }; - - function makeConfig(name) { - return function () { - return (config && config.config && config.config[name]) || {}; - }; - } - - handlers = { - require: function (name) { - return makeRequire(name); - }, - exports: function (name) { - var e = defined[name]; - if (typeof e !== 'undefined') { - return e; - } else { - return (defined[name] = {}); - } - }, - module: function (name) { - return { - id: name, - uri: '', - exports: defined[name], - config: makeConfig(name) - }; - } - }; - - main = function (name, deps, callback, relName) { - var cjsModule, depName, ret, map, i, - args = [], - callbackType = typeof callback, - usingExports; - - //Use name if no relName - relName = relName || name; - - //Call the callback to define the module, if necessary. - if (callbackType === 'undefined' || callbackType === 'function') { - //Pull out the defined dependencies and pass the ordered - //values to the callback. - //Default to [require, exports, module] if no deps - deps = !deps.length && callback.length ? ['require', 'exports', 'module'] : deps; - for (i = 0; i < deps.length; i += 1) { - map = makeMap(deps[i], relName); - depName = map.f; - - //Fast path CommonJS standard dependencies. - if (depName === "require") { - args[i] = handlers.require(name); - } else if (depName === "exports") { - //CommonJS module spec 1.1 - args[i] = handlers.exports(name); - usingExports = true; - } else if (depName === "module") { - //CommonJS module spec 1.1 - cjsModule = args[i] = handlers.module(name); - } else if (hasProp(defined, depName) || - hasProp(waiting, depName) || - hasProp(defining, depName)) { - args[i] = callDep(depName); - } else if (map.p) { - map.p.load(map.n, makeRequire(relName, true), makeLoad(depName), {}); - args[i] = defined[depName]; - } else { - throw new Error(name + ' missing ' + depName); - } - } - - ret = callback ? callback.apply(defined[name], args) : undefined; - - if (name) { - //If setting exports via "module" is in play, - //favor that over return value and exports. After that, - //favor a non-undefined return value over exports use. - if (cjsModule && cjsModule.exports !== undef && - cjsModule.exports !== defined[name]) { - defined[name] = cjsModule.exports; - } else if (ret !== undef || !usingExports) { - //Use the return value from the function. - defined[name] = ret; - } - } - } else if (name) { - //May just be an object definition for the module. Only - //worry about defining if have a module name. - defined[name] = callback; - } - }; - - requirejs = require = req = function (deps, callback, relName, forceSync, alt) { - if (typeof deps === "string") { - if (handlers[deps]) { - //callback in this case is really relName - return handlers[deps](callback); - } - //Just return the module wanted. In this scenario, the - //deps arg is the module name, and second arg (if passed) - //is just the relName. - //Normalize module name, if it contains . or .. - return callDep(makeMap(deps, callback).f); - } else if (!deps.splice) { - //deps is a config object, not an array. - config = deps; - if (config.deps) { - req(config.deps, config.callback); - } - if (!callback) { - return; - } - - if (callback.splice) { - //callback is an array, which means it is a dependency list. - //Adjust args if there are dependencies - deps = callback; - callback = relName; - relName = null; - } else { - deps = undef; - } - } - - //Support require(['a']) - callback = callback || function () {}; - - //If relName is a function, it is an errback handler, - //so remove it. - if (typeof relName === 'function') { - relName = forceSync; - forceSync = alt; - } - - //Simulate async callback; - if (forceSync) { - main(undef, deps, callback, relName); - } else { - //Using a non-zero value because of concern for what old browsers - //do, and latest browsers "upgrade" to 4 if lower value is used: - //http://www.whatwg.org/specs/web-apps/current-work/multipage/timers.html#dom-windowtimers-settimeout: - //If want a value immediately, use require('id') instead -- something - //that works in almond on the global level, but not guaranteed and - //unlikely to work in other AMD implementations. - setTimeout(function () { - main(undef, deps, callback, relName); - }, 4); - } - - return req; - }; - - /** - * Just drops the config on the floor, but returns req in case - * the config return value is used. - */ - req.config = function (cfg) { - return req(cfg); - }; - - /** - * Expose module registry for debugging and tooling - */ - requirejs._defined = defined; - - define = function (name, deps, callback) { - - //This module may not have dependencies - if (!deps.splice) { - //deps is not an array, so probably means - //an object literal or factory function for - //the value. Adjust args. - callback = deps; - deps = []; - } - - if (!hasProp(defined, name) && !hasProp(waiting, name)) { - waiting[name] = [name, deps, callback]; - } - }; - - define.amd = { - jQuery: true - }; -}()); - -define("../node_modules/almond/almond", function(){}); - -/** - * A class to parse color values - * @author Stoyan Stefanov - * @link http://www.phpied.com/rgb-color-parser-in-javascript/ - * @license Use it if you like it - */ -(function ( global ) { - - function RGBColor(color_string) - { - this.ok = false; - - // strip any leading # - if (color_string.charAt(0) == '#') { // remove # if any - color_string = color_string.substr(1,6); - } - - color_string = color_string.replace(/ /g,''); - color_string = color_string.toLowerCase(); - - // before getting into regexps, try simple matches - // and overwrite the input - var simple_colors = { - aliceblue: 'f0f8ff', - antiquewhite: 'faebd7', - aqua: '00ffff', - aquamarine: '7fffd4', - azure: 'f0ffff', - beige: 'f5f5dc', - bisque: 'ffe4c4', - black: '000000', - blanchedalmond: 'ffebcd', - blue: '0000ff', - blueviolet: '8a2be2', - brown: 'a52a2a', - burlywood: 'deb887', - cadetblue: '5f9ea0', - chartreuse: '7fff00', - chocolate: 'd2691e', - coral: 'ff7f50', - cornflowerblue: '6495ed', - cornsilk: 'fff8dc', - crimson: 'dc143c', - cyan: '00ffff', - darkblue: '00008b', - darkcyan: '008b8b', - darkgoldenrod: 'b8860b', - darkgray: 'a9a9a9', - darkgreen: '006400', - darkkhaki: 'bdb76b', - darkmagenta: '8b008b', - darkolivegreen: '556b2f', - darkorange: 'ff8c00', - darkorchid: '9932cc', - darkred: '8b0000', - darksalmon: 'e9967a', - darkseagreen: '8fbc8f', - darkslateblue: '483d8b', - darkslategray: '2f4f4f', - darkturquoise: '00ced1', - darkviolet: '9400d3', - deeppink: 'ff1493', - deepskyblue: '00bfff', - dimgray: '696969', - dodgerblue: '1e90ff', - feldspar: 'd19275', - firebrick: 'b22222', - floralwhite: 'fffaf0', - forestgreen: '228b22', - fuchsia: 'ff00ff', - gainsboro: 'dcdcdc', - ghostwhite: 'f8f8ff', - gold: 'ffd700', - goldenrod: 'daa520', - gray: '808080', - green: '008000', - greenyellow: 'adff2f', - honeydew: 'f0fff0', - hotpink: 'ff69b4', - indianred : 'cd5c5c', - indigo : '4b0082', - ivory: 'fffff0', - khaki: 'f0e68c', - lavender: 'e6e6fa', - lavenderblush: 'fff0f5', - lawngreen: '7cfc00', - lemonchiffon: 'fffacd', - lightblue: 'add8e6', - lightcoral: 'f08080', - lightcyan: 'e0ffff', - lightgoldenrodyellow: 'fafad2', - lightgrey: 'd3d3d3', - lightgreen: '90ee90', - lightpink: 'ffb6c1', - lightsalmon: 'ffa07a', - lightseagreen: '20b2aa', - lightskyblue: '87cefa', - lightslateblue: '8470ff', - lightslategray: '778899', - lightsteelblue: 'b0c4de', - lightyellow: 'ffffe0', - lime: '00ff00', - limegreen: '32cd32', - linen: 'faf0e6', - magenta: 'ff00ff', - maroon: '800000', - mediumaquamarine: '66cdaa', - mediumblue: '0000cd', - mediumorchid: 'ba55d3', - mediumpurple: '9370d8', - mediumseagreen: '3cb371', - mediumslateblue: '7b68ee', - mediumspringgreen: '00fa9a', - mediumturquoise: '48d1cc', - mediumvioletred: 'c71585', - midnightblue: '191970', - mintcream: 'f5fffa', - mistyrose: 'ffe4e1', - moccasin: 'ffe4b5', - navajowhite: 'ffdead', - navy: '000080', - oldlace: 'fdf5e6', - olive: '808000', - olivedrab: '6b8e23', - orange: 'ffa500', - orangered: 'ff4500', - orchid: 'da70d6', - palegoldenrod: 'eee8aa', - palegreen: '98fb98', - paleturquoise: 'afeeee', - palevioletred: 'd87093', - papayawhip: 'ffefd5', - peachpuff: 'ffdab9', - peru: 'cd853f', - pink: 'ffc0cb', - plum: 'dda0dd', - powderblue: 'b0e0e6', - purple: '800080', - red: 'ff0000', - rosybrown: 'bc8f8f', - royalblue: '4169e1', - saddlebrown: '8b4513', - salmon: 'fa8072', - sandybrown: 'f4a460', - seagreen: '2e8b57', - seashell: 'fff5ee', - sienna: 'a0522d', - silver: 'c0c0c0', - skyblue: '87ceeb', - slateblue: '6a5acd', - slategray: '708090', - snow: 'fffafa', - springgreen: '00ff7f', - steelblue: '4682b4', - tan: 'd2b48c', - teal: '008080', - thistle: 'd8bfd8', - tomato: 'ff6347', - turquoise: '40e0d0', - violet: 'ee82ee', - violetred: 'd02090', - wheat: 'f5deb3', - white: 'ffffff', - whitesmoke: 'f5f5f5', - yellow: 'ffff00', - yellowgreen: '9acd32' - }; - for (var key in simple_colors) { - if (color_string == key) { - color_string = simple_colors[key]; - } - } - // emd of simple type-in colors - - // array of color definition objects - var color_defs = [ - { - re: /^rgb\((\d{1,3}),\s*(\d{1,3}),\s*(\d{1,3})\)$/, - example: ['rgb(123, 234, 45)', 'rgb(255,234,245)'], - process: function (bits){ - return [ - parseInt(bits[1]), - parseInt(bits[2]), - parseInt(bits[3]) - ]; - } - }, - { - re: /^(\w{2})(\w{2})(\w{2})$/, - example: ['#00ff00', '336699'], - process: function (bits){ - return [ - parseInt(bits[1], 16), - parseInt(bits[2], 16), - parseInt(bits[3], 16) - ]; - } - }, - { - re: /^(\w{1})(\w{1})(\w{1})$/, - example: ['#fb0', 'f0f'], - process: function (bits){ - return [ - parseInt(bits[1] + bits[1], 16), - parseInt(bits[2] + bits[2], 16), - parseInt(bits[3] + bits[3], 16) - ]; - } - } - ]; - - // search through the definitions to find a match - for (var i = 0; i < color_defs.length; i++) { - var re = color_defs[i].re; - var processor = color_defs[i].process; - var bits = re.exec(color_string); - if (bits) { - channels = processor(bits); - this.r = channels[0]; - this.g = channels[1]; - this.b = channels[2]; - this.ok = true; - } - - } - - // validate/cleanup values - this.r = (this.r < 0 || isNaN(this.r)) ? 0 : ((this.r > 255) ? 255 : this.r); - this.g = (this.g < 0 || isNaN(this.g)) ? 0 : ((this.g > 255) ? 255 : this.g); - this.b = (this.b < 0 || isNaN(this.b)) ? 0 : ((this.b > 255) ? 255 : this.b); - - // some getters - this.toRGB = function () { - return 'rgb(' + this.r + ', ' + this.g + ', ' + this.b + ')'; - } - this.toHex = function () { - var r = this.r.toString(16); - var g = this.g.toString(16); - var b = this.b.toString(16); - if (r.length == 1) r = '0' + r; - if (g.length == 1) g = '0' + g; - if (b.length == 1) b = '0' + b; - return '#' + r + g + b; - } - - // help - this.getHelpXML = function () { - - var examples = new Array(); - // add regexps - for (var i = 0; i < color_defs.length; i++) { - var example = color_defs[i].example; - for (var j = 0; j < example.length; j++) { - examples[examples.length] = example[j]; - } - } - // add type-in colors - for (var sc in simple_colors) { - examples[examples.length] = sc; - } - - var xml = document.createElement('ul'); - xml.setAttribute('id', 'rgbcolor-examples'); - for (var i = 0; i < examples.length; i++) { - try { - var list_item = document.createElement('li'); - var list_color = new RGBColor(examples[i]); - var example_div = document.createElement('div'); - example_div.style.cssText = - 'margin: 3px; ' - + 'border: 1px solid black; ' - + 'background:' + list_color.toHex() + '; ' - + 'color:' + list_color.toHex() - ; - example_div.appendChild(document.createTextNode('test')); - var list_item_value = document.createTextNode( - ' ' + examples[i] + ' -> ' + list_color.toRGB() + ' -> ' + list_color.toHex() - ); - list_item.appendChild(example_div); - list_item.appendChild(list_item_value); - xml.appendChild(list_item); - - } catch(e){} - } - return xml; - - } - - } - - // export as AMD... - if ( typeof define !== 'undefined' && define.amd ) { - define( '../bower_components/canvg/rgbcolor',[],function () { return RGBColor; }); - } - - // ...or as browserify - else if ( typeof module !== 'undefined' && module.exports ) { - module.exports = RGBColor; - } - - global.RGBColor = RGBColor; - -}( typeof window !== 'undefined' ? window : this )); -/* - -StackBlur - a fast almost Gaussian Blur For Canvas - -Version: 0.5 -Author: Mario Klingemann -Contact: mario@quasimondo.com -Website: http://www.quasimondo.com/StackBlurForCanvas -Twitter: @quasimondo - -In case you find this class useful - especially in commercial projects - -I am not totally unhappy for a small donation to my PayPal account -mario@quasimondo.de - -Or support me on flattr: -https://flattr.com/thing/72791/StackBlur-a-fast-almost-Gaussian-Blur-Effect-for-CanvasJavascript - -Copyright (c) 2010 Mario Klingemann - -Permission is hereby granted, free of charge, to any person -obtaining a copy of this software and associated documentation -files (the "Software"), to deal in the Software without -restriction, including without limitation the rights to use, -copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the -Software is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice shall be -included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -OTHER DEALINGS IN THE SOFTWARE. -*/ - -(function ( global ) { - - var mul_table = [ - 512,512,456,512,328,456,335,512,405,328,271,456,388,335,292,512, - 454,405,364,328,298,271,496,456,420,388,360,335,312,292,273,512, - 482,454,428,405,383,364,345,328,312,298,284,271,259,496,475,456, - 437,420,404,388,374,360,347,335,323,312,302,292,282,273,265,512, - 497,482,468,454,441,428,417,405,394,383,373,364,354,345,337,328, - 320,312,305,298,291,284,278,271,265,259,507,496,485,475,465,456, - 446,437,428,420,412,404,396,388,381,374,367,360,354,347,341,335, - 329,323,318,312,307,302,297,292,287,282,278,273,269,265,261,512, - 505,497,489,482,475,468,461,454,447,441,435,428,422,417,411,405, - 399,394,389,383,378,373,368,364,359,354,350,345,341,337,332,328, - 324,320,316,312,309,305,301,298,294,291,287,284,281,278,274,271, - 268,265,262,259,257,507,501,496,491,485,480,475,470,465,460,456, - 451,446,442,437,433,428,424,420,416,412,408,404,400,396,392,388, - 385,381,377,374,370,367,363,360,357,354,350,347,344,341,338,335, - 332,329,326,323,320,318,315,312,310,307,304,302,299,297,294,292, - 289,287,285,282,280,278,275,273,271,269,267,265,263,261,259]; - - - var shg_table = [ - 9, 11, 12, 13, 13, 14, 14, 15, 15, 15, 15, 16, 16, 16, 16, 17, - 17, 17, 17, 17, 17, 17, 18, 18, 18, 18, 18, 18, 18, 18, 18, 19, - 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 20, 20, 20, - 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 21, - 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, - 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 22, 22, 22, 22, 22, 22, - 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, - 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 23, - 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, - 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, - 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, - 23, 23, 23, 23, 23, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, - 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, - 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, - 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, - 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24 ]; - - function stackBlurImage( imageID, canvasID, radius, blurAlphaChannel ) - { - - var img = document.getElementById( imageID ); - var w = img.naturalWidth; - var h = img.naturalHeight; - - var canvas = document.getElementById( canvasID ); - - canvas.style.width = w + "px"; - canvas.style.height = h + "px"; - canvas.width = w; - canvas.height = h; - - var context = canvas.getContext("2d"); - context.clearRect( 0, 0, w, h ); - context.drawImage( img, 0, 0 ); - - if ( isNaN(radius) || radius < 1 ) return; - - if ( blurAlphaChannel ) - stackBlurCanvasRGBA( canvasID, 0, 0, w, h, radius ); - else - stackBlurCanvasRGB( canvasID, 0, 0, w, h, radius ); - } - - - function stackBlurCanvasRGBA( id, top_x, top_y, width, height, radius ) - { - if ( isNaN(radius) || radius < 1 ) return; - radius |= 0; - - var canvas = document.getElementById( id ); - var context = canvas.getContext("2d"); - var imageData; - - try { - try { - imageData = context.getImageData( top_x, top_y, width, height ); - } catch(e) { - - // NOTE: this part is supposedly only needed if you want to work with local files - // so it might be okay to remove the whole try/catch block and just use - // imageData = context.getImageData( top_x, top_y, width, height ); - try { - netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead"); - imageData = context.getImageData( top_x, top_y, width, height ); - } catch(e) { - alert("Cannot access local image"); - throw new Error("unable to access local image data: " + e); - return; - } - } - } catch(e) { - alert("Cannot access image"); - throw new Error("unable to access image data: " + e); - } - - var pixels = imageData.data; - - var x, y, i, p, yp, yi, yw, r_sum, g_sum, b_sum, a_sum, - r_out_sum, g_out_sum, b_out_sum, a_out_sum, - r_in_sum, g_in_sum, b_in_sum, a_in_sum, - pr, pg, pb, pa, rbs; - - var div = radius + radius + 1; - var w4 = width << 2; - var widthMinus1 = width - 1; - var heightMinus1 = height - 1; - var radiusPlus1 = radius + 1; - var sumFactor = radiusPlus1 * ( radiusPlus1 + 1 ) / 2; - - var stackStart = new BlurStack(); - var stack = stackStart; - for ( i = 1; i < div; i++ ) - { - stack = stack.next = new BlurStack(); - if ( i == radiusPlus1 ) var stackEnd = stack; - } - stack.next = stackStart; - var stackIn = null; - var stackOut = null; - - yw = yi = 0; - - var mul_sum = mul_table[radius]; - var shg_sum = shg_table[radius]; - - for ( y = 0; y < height; y++ ) - { - r_in_sum = g_in_sum = b_in_sum = a_in_sum = r_sum = g_sum = b_sum = a_sum = 0; - - r_out_sum = radiusPlus1 * ( pr = pixels[yi] ); - g_out_sum = radiusPlus1 * ( pg = pixels[yi+1] ); - b_out_sum = radiusPlus1 * ( pb = pixels[yi+2] ); - a_out_sum = radiusPlus1 * ( pa = pixels[yi+3] ); - - r_sum += sumFactor * pr; - g_sum += sumFactor * pg; - b_sum += sumFactor * pb; - a_sum += sumFactor * pa; - - stack = stackStart; - - for( i = 0; i < radiusPlus1; i++ ) - { - stack.r = pr; - stack.g = pg; - stack.b = pb; - stack.a = pa; - stack = stack.next; - } - - for( i = 1; i < radiusPlus1; i++ ) - { - p = yi + (( widthMinus1 < i ? widthMinus1 : i ) << 2 ); - r_sum += ( stack.r = ( pr = pixels[p])) * ( rbs = radiusPlus1 - i ); - g_sum += ( stack.g = ( pg = pixels[p+1])) * rbs; - b_sum += ( stack.b = ( pb = pixels[p+2])) * rbs; - a_sum += ( stack.a = ( pa = pixels[p+3])) * rbs; - - r_in_sum += pr; - g_in_sum += pg; - b_in_sum += pb; - a_in_sum += pa; - - stack = stack.next; - } - - - stackIn = stackStart; - stackOut = stackEnd; - for ( x = 0; x < width; x++ ) - { - pixels[yi+3] = pa = (a_sum * mul_sum) >> shg_sum; - if ( pa != 0 ) - { - pa = 255 / pa; - pixels[yi] = ((r_sum * mul_sum) >> shg_sum) * pa; - pixels[yi+1] = ((g_sum * mul_sum) >> shg_sum) * pa; - pixels[yi+2] = ((b_sum * mul_sum) >> shg_sum) * pa; - } else { - pixels[yi] = pixels[yi+1] = pixels[yi+2] = 0; - } - - r_sum -= r_out_sum; - g_sum -= g_out_sum; - b_sum -= b_out_sum; - a_sum -= a_out_sum; - - r_out_sum -= stackIn.r; - g_out_sum -= stackIn.g; - b_out_sum -= stackIn.b; - a_out_sum -= stackIn.a; - - p = ( yw + ( ( p = x + radius + 1 ) < widthMinus1 ? p : widthMinus1 ) ) << 2; - - r_in_sum += ( stackIn.r = pixels[p]); - g_in_sum += ( stackIn.g = pixels[p+1]); - b_in_sum += ( stackIn.b = pixels[p+2]); - a_in_sum += ( stackIn.a = pixels[p+3]); - - r_sum += r_in_sum; - g_sum += g_in_sum; - b_sum += b_in_sum; - a_sum += a_in_sum; - - stackIn = stackIn.next; - - r_out_sum += ( pr = stackOut.r ); - g_out_sum += ( pg = stackOut.g ); - b_out_sum += ( pb = stackOut.b ); - a_out_sum += ( pa = stackOut.a ); - - r_in_sum -= pr; - g_in_sum -= pg; - b_in_sum -= pb; - a_in_sum -= pa; - - stackOut = stackOut.next; - - yi += 4; - } - yw += width; - } - - - for ( x = 0; x < width; x++ ) - { - g_in_sum = b_in_sum = a_in_sum = r_in_sum = g_sum = b_sum = a_sum = r_sum = 0; - - yi = x << 2; - r_out_sum = radiusPlus1 * ( pr = pixels[yi]); - g_out_sum = radiusPlus1 * ( pg = pixels[yi+1]); - b_out_sum = radiusPlus1 * ( pb = pixels[yi+2]); - a_out_sum = radiusPlus1 * ( pa = pixels[yi+3]); - - r_sum += sumFactor * pr; - g_sum += sumFactor * pg; - b_sum += sumFactor * pb; - a_sum += sumFactor * pa; - - stack = stackStart; - - for( i = 0; i < radiusPlus1; i++ ) - { - stack.r = pr; - stack.g = pg; - stack.b = pb; - stack.a = pa; - stack = stack.next; - } - - yp = width; - - for( i = 1; i <= radius; i++ ) - { - yi = ( yp + x ) << 2; - - r_sum += ( stack.r = ( pr = pixels[yi])) * ( rbs = radiusPlus1 - i ); - g_sum += ( stack.g = ( pg = pixels[yi+1])) * rbs; - b_sum += ( stack.b = ( pb = pixels[yi+2])) * rbs; - a_sum += ( stack.a = ( pa = pixels[yi+3])) * rbs; - - r_in_sum += pr; - g_in_sum += pg; - b_in_sum += pb; - a_in_sum += pa; - - stack = stack.next; - - if( i < heightMinus1 ) - { - yp += width; - } - } - - yi = x; - stackIn = stackStart; - stackOut = stackEnd; - for ( y = 0; y < height; y++ ) - { - p = yi << 2; - pixels[p+3] = pa = (a_sum * mul_sum) >> shg_sum; - if ( pa > 0 ) - { - pa = 255 / pa; - pixels[p] = ((r_sum * mul_sum) >> shg_sum ) * pa; - pixels[p+1] = ((g_sum * mul_sum) >> shg_sum ) * pa; - pixels[p+2] = ((b_sum * mul_sum) >> shg_sum ) * pa; - } else { - pixels[p] = pixels[p+1] = pixels[p+2] = 0; - } - - r_sum -= r_out_sum; - g_sum -= g_out_sum; - b_sum -= b_out_sum; - a_sum -= a_out_sum; - - r_out_sum -= stackIn.r; - g_out_sum -= stackIn.g; - b_out_sum -= stackIn.b; - a_out_sum -= stackIn.a; - - p = ( x + (( ( p = y + radiusPlus1) < heightMinus1 ? p : heightMinus1 ) * width )) << 2; - - r_sum += ( r_in_sum += ( stackIn.r = pixels[p])); - g_sum += ( g_in_sum += ( stackIn.g = pixels[p+1])); - b_sum += ( b_in_sum += ( stackIn.b = pixels[p+2])); - a_sum += ( a_in_sum += ( stackIn.a = pixels[p+3])); - - stackIn = stackIn.next; - - r_out_sum += ( pr = stackOut.r ); - g_out_sum += ( pg = stackOut.g ); - b_out_sum += ( pb = stackOut.b ); - a_out_sum += ( pa = stackOut.a ); - - r_in_sum -= pr; - g_in_sum -= pg; - b_in_sum -= pb; - a_in_sum -= pa; - - stackOut = stackOut.next; - - yi += width; - } - } - - context.putImageData( imageData, top_x, top_y ); - - } - - - function stackBlurCanvasRGB( id, top_x, top_y, width, height, radius ) - { - if ( isNaN(radius) || radius < 1 ) return; - radius |= 0; - - var canvas = document.getElementById( id ); - var context = canvas.getContext("2d"); - var imageData; - - try { - try { - imageData = context.getImageData( top_x, top_y, width, height ); - } catch(e) { - - // NOTE: this part is supposedly only needed if you want to work with local files - // so it might be okay to remove the whole try/catch block and just use - // imageData = context.getImageData( top_x, top_y, width, height ); - try { - netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead"); - imageData = context.getImageData( top_x, top_y, width, height ); - } catch(e) { - alert("Cannot access local image"); - throw new Error("unable to access local image data: " + e); - return; - } - } - } catch(e) { - alert("Cannot access image"); - throw new Error("unable to access image data: " + e); - } - - var pixels = imageData.data; - - var x, y, i, p, yp, yi, yw, r_sum, g_sum, b_sum, - r_out_sum, g_out_sum, b_out_sum, - r_in_sum, g_in_sum, b_in_sum, - pr, pg, pb, rbs; - - var div = radius + radius + 1; - var w4 = width << 2; - var widthMinus1 = width - 1; - var heightMinus1 = height - 1; - var radiusPlus1 = radius + 1; - var sumFactor = radiusPlus1 * ( radiusPlus1 + 1 ) / 2; - - var stackStart = new BlurStack(); - var stack = stackStart; - for ( i = 1; i < div; i++ ) - { - stack = stack.next = new BlurStack(); - if ( i == radiusPlus1 ) var stackEnd = stack; - } - stack.next = stackStart; - var stackIn = null; - var stackOut = null; - - yw = yi = 0; - - var mul_sum = mul_table[radius]; - var shg_sum = shg_table[radius]; - - for ( y = 0; y < height; y++ ) - { - r_in_sum = g_in_sum = b_in_sum = r_sum = g_sum = b_sum = 0; - - r_out_sum = radiusPlus1 * ( pr = pixels[yi] ); - g_out_sum = radiusPlus1 * ( pg = pixels[yi+1] ); - b_out_sum = radiusPlus1 * ( pb = pixels[yi+2] ); - - r_sum += sumFactor * pr; - g_sum += sumFactor * pg; - b_sum += sumFactor * pb; - - stack = stackStart; - - for( i = 0; i < radiusPlus1; i++ ) - { - stack.r = pr; - stack.g = pg; - stack.b = pb; - stack = stack.next; - } - - for( i = 1; i < radiusPlus1; i++ ) - { - p = yi + (( widthMinus1 < i ? widthMinus1 : i ) << 2 ); - r_sum += ( stack.r = ( pr = pixels[p])) * ( rbs = radiusPlus1 - i ); - g_sum += ( stack.g = ( pg = pixels[p+1])) * rbs; - b_sum += ( stack.b = ( pb = pixels[p+2])) * rbs; - - r_in_sum += pr; - g_in_sum += pg; - b_in_sum += pb; - - stack = stack.next; - } - - - stackIn = stackStart; - stackOut = stackEnd; - for ( x = 0; x < width; x++ ) - { - pixels[yi] = (r_sum * mul_sum) >> shg_sum; - pixels[yi+1] = (g_sum * mul_sum) >> shg_sum; - pixels[yi+2] = (b_sum * mul_sum) >> shg_sum; - - r_sum -= r_out_sum; - g_sum -= g_out_sum; - b_sum -= b_out_sum; - - r_out_sum -= stackIn.r; - g_out_sum -= stackIn.g; - b_out_sum -= stackIn.b; - - p = ( yw + ( ( p = x + radius + 1 ) < widthMinus1 ? p : widthMinus1 ) ) << 2; - - r_in_sum += ( stackIn.r = pixels[p]); - g_in_sum += ( stackIn.g = pixels[p+1]); - b_in_sum += ( stackIn.b = pixels[p+2]); - - r_sum += r_in_sum; - g_sum += g_in_sum; - b_sum += b_in_sum; - - stackIn = stackIn.next; - - r_out_sum += ( pr = stackOut.r ); - g_out_sum += ( pg = stackOut.g ); - b_out_sum += ( pb = stackOut.b ); - - r_in_sum -= pr; - g_in_sum -= pg; - b_in_sum -= pb; - - stackOut = stackOut.next; - - yi += 4; - } - yw += width; - } - - - for ( x = 0; x < width; x++ ) - { - g_in_sum = b_in_sum = r_in_sum = g_sum = b_sum = r_sum = 0; - - yi = x << 2; - r_out_sum = radiusPlus1 * ( pr = pixels[yi]); - g_out_sum = radiusPlus1 * ( pg = pixels[yi+1]); - b_out_sum = radiusPlus1 * ( pb = pixels[yi+2]); - - r_sum += sumFactor * pr; - g_sum += sumFactor * pg; - b_sum += sumFactor * pb; - - stack = stackStart; - - for( i = 0; i < radiusPlus1; i++ ) - { - stack.r = pr; - stack.g = pg; - stack.b = pb; - stack = stack.next; - } - - yp = width; - - for( i = 1; i <= radius; i++ ) - { - yi = ( yp + x ) << 2; - - r_sum += ( stack.r = ( pr = pixels[yi])) * ( rbs = radiusPlus1 - i ); - g_sum += ( stack.g = ( pg = pixels[yi+1])) * rbs; - b_sum += ( stack.b = ( pb = pixels[yi+2])) * rbs; - - r_in_sum += pr; - g_in_sum += pg; - b_in_sum += pb; - - stack = stack.next; - - if( i < heightMinus1 ) - { - yp += width; - } - } - - yi = x; - stackIn = stackStart; - stackOut = stackEnd; - for ( y = 0; y < height; y++ ) - { - p = yi << 2; - pixels[p] = (r_sum * mul_sum) >> shg_sum; - pixels[p+1] = (g_sum * mul_sum) >> shg_sum; - pixels[p+2] = (b_sum * mul_sum) >> shg_sum; - - r_sum -= r_out_sum; - g_sum -= g_out_sum; - b_sum -= b_out_sum; - - r_out_sum -= stackIn.r; - g_out_sum -= stackIn.g; - b_out_sum -= stackIn.b; - - p = ( x + (( ( p = y + radiusPlus1) < heightMinus1 ? p : heightMinus1 ) * width )) << 2; - - r_sum += ( r_in_sum += ( stackIn.r = pixels[p])); - g_sum += ( g_in_sum += ( stackIn.g = pixels[p+1])); - b_sum += ( b_in_sum += ( stackIn.b = pixels[p+2])); - - stackIn = stackIn.next; - - r_out_sum += ( pr = stackOut.r ); - g_out_sum += ( pg = stackOut.g ); - b_out_sum += ( pb = stackOut.b ); - - r_in_sum -= pr; - g_in_sum -= pg; - b_in_sum -= pb; - - stackOut = stackOut.next; - - yi += width; - } - } - - context.putImageData( imageData, top_x, top_y ); - - } - - function BlurStack() - { - this.r = 0; - this.g = 0; - this.b = 0; - this.a = 0; - this.next = null; - } - - var stackBlur = { - image: stackBlurImage, - canvasRGBA: stackBlurCanvasRGBA, - canvasRGB: stackBlurCanvasRGB - }; - - // export as AMD... - if ( typeof define !== 'undefined' && define.amd ) { - define( '../bower_components/canvg/StackBlur',[],function () { return stackBlur; }); - } - - // ...or as browserify - else if ( typeof module !== 'undefined' && module.exports ) { - module.exports = stackBlur; - } - - global.stackBlur = stackBlur; - -}( typeof window !== 'undefined' ? window : this )); -/* - * canvg.js - Javascript SVG parser and renderer on Canvas - * MIT Licensed - * Gabe Lerner (gabelerner@gmail.com) - * http://code.google.com/p/canvg/ - * - * Requires: rgbcolor.js - http://www.phpied.com/rgb-color-parser-in-javascript/ - */ -(function ( global, factory ) { - - - - // export as AMD... - if ( typeof define !== 'undefined' && define.amd ) { - define('../bower_components/canvg/canvg',[ 'rgbcolor', 'stackblur' ], factory ); - } - - // ...or as browserify - else if ( typeof module !== 'undefined' && module.exports ) { - module.exports = factory( require( 'rgbcolor' ), require( 'stackblur' ) ); - } - - global.canvg = factory( global.RGBColor, global.stackBlur ); - -}( typeof window !== 'undefined' ? window : this, function ( RGBColor, stackBlur ) { - - // canvg(target, s) - // empty parameters: replace all 'svg' elements on page with 'canvas' elements - // target: canvas element or the id of a canvas element - // s: svg string, url to svg file, or xml document - // opts: optional hash of options - // ignoreMouse: true => ignore mouse events - // ignoreAnimation: true => ignore animations - // ignoreDimensions: true => does not try to resize canvas - // ignoreClear: true => does not clear canvas - // offsetX: int => draws at a x offset - // offsetY: int => draws at a y offset - // scaleWidth: int => scales horizontally to width - // scaleHeight: int => scales vertically to height - // renderCallback: function => will call the function after the first render is completed - // forceRedraw: function => will call the function on every frame, if it returns true, will redraw - var canvg = function (target, s, opts) { - // no parameters - if (target == null && s == null && opts == null) { - var svgTags = document.querySelectorAll('svg'); - for (var i=0; i~\.\[:]+)/g; - var classRegex = /(\.[^\s\+>~\.\[:]+)/g; - var pseudoElementRegex = /(::[^\s\+>~\.\[:]+|:first-line|:first-letter|:before|:after)/gi; - var pseudoClassWithBracketsRegex = /(:[\w-]+\([^\)]*\))/gi; - var pseudoClassRegex = /(:[^\s\+>~\.\[:]+)/g; - var elementRegex = /([^\s\+>~\.\[:]+)/g; - function getSelectorSpecificity(selector) { - var typeCount = [0, 0, 0]; - var findMatch = function(regex, type) { - var matches = selector.match(regex); - if (matches == null) { - return; - } - typeCount[type] += matches.length; - selector = selector.replace(regex, ' '); - }; - - selector = selector.replace(/:not\(([^\)]*)\)/g, ' $1 '); - selector = selector.replace(/{[^]*/gm, ' '); - findMatch(attributeRegex, 1); - findMatch(idRegex, 0); - findMatch(classRegex, 1); - findMatch(pseudoElementRegex, 2); - findMatch(pseudoClassWithBracketsRegex, 1); - findMatch(pseudoClassRegex, 1); - selector = selector.replace(/[\*\s\+>~]/g, ' '); - selector = selector.replace(/[#\.]/g, ' '); - findMatch(elementRegex, 2); - return typeCount.join(''); - } - - function build(opts) { - var svg = { opts: opts }; - - svg.FRAMERATE = 30; - svg.MAX_VIRTUAL_PIXELS = 30000; - - svg.log = function(msg) {}; - if (svg.opts['log'] == true && typeof(console) != 'undefined') { - svg.log = function(msg) { console.log(msg); }; - }; - - // globals - svg.init = function(ctx) { - var uniqueId = 0; - svg.UniqueId = function () { uniqueId++; return 'canvg' + uniqueId; }; - svg.Definitions = {}; - svg.Styles = {}; - svg.StylesSpecificity = {}; - svg.Animations = []; - svg.Images = []; - svg.ctx = ctx; - svg.ViewPort = new (function () { - this.viewPorts = []; - this.Clear = function() { this.viewPorts = []; } - this.SetCurrent = function(width, height) { this.viewPorts.push({ width: width, height: height }); } - this.RemoveCurrent = function() { this.viewPorts.pop(); } - this.Current = function() { return this.viewPorts[this.viewPorts.length - 1]; } - this.width = function() { return this.Current().width; } - this.height = function() { return this.Current().height; } - this.ComputeSize = function(d) { - if (d != null && typeof(d) == 'number') return d; - if (d == 'x') return this.width(); - if (d == 'y') return this.height(); - return Math.sqrt(Math.pow(this.width(), 2) + Math.pow(this.height(), 2)) / Math.sqrt(2); - } - }); - } - svg.init(); - - // images loaded - svg.ImagesLoaded = function() { - for (var i=0; i]*>/, ''); - var xmlDoc = new ActiveXObject('Microsoft.XMLDOM'); - xmlDoc.async = 'false'; - xmlDoc.loadXML(xml); - return xmlDoc; - } - } - - svg.Property = function(name, value) { - this.name = name; - this.value = value; - } - svg.Property.prototype.getValue = function() { - return this.value; - } - - svg.Property.prototype.hasValue = function() { - return (this.value != null && this.value !== ''); - } - - // return the numerical value of the property - svg.Property.prototype.numValue = function() { - if (!this.hasValue()) return 0; - - var n = parseFloat(this.value); - if ((this.value + '').match(/%$/)) { - n = n / 100.0; - } - return n; - } - - svg.Property.prototype.valueOrDefault = function(def) { - if (this.hasValue()) return this.value; - return def; - } - - svg.Property.prototype.numValueOrDefault = function(def) { - if (this.hasValue()) return this.numValue(); - return def; - } - - // color extensions - // augment the current color value with the opacity - svg.Property.prototype.addOpacity = function(opacityProp) { - var newValue = this.value; - if (opacityProp.value != null && opacityProp.value != '' && typeof(this.value)=='string') { // can only add opacity to colors, not patterns - var color = new RGBColor(this.value); - if (color.ok) { - newValue = 'rgba(' + color.r + ', ' + color.g + ', ' + color.b + ', ' + opacityProp.numValue() + ')'; - } - } - return new svg.Property(this.name, newValue); - } - - // definition extensions - // get the definition from the definitions table - svg.Property.prototype.getDefinition = function() { - var name = this.value.match(/#([^\)'"]+)/); - if (name) { name = name[1]; } - if (!name) { name = this.value; } - return svg.Definitions[name]; - } - - svg.Property.prototype.isUrlDefinition = function() { - return this.value.indexOf('url(') == 0 - } - - svg.Property.prototype.getFillStyleDefinition = function(e, opacityProp) { - var def = this.getDefinition(); - - // gradient - if (def != null && def.createGradient) { - return def.createGradient(svg.ctx, e, opacityProp); - } - - // pattern - if (def != null && def.createPattern) { - if (def.getHrefAttribute().hasValue()) { - var pt = def.attribute('patternTransform'); - def = def.getHrefAttribute().getDefinition(); - if (pt.hasValue()) { def.attribute('patternTransform', true).value = pt.value; } - } - return def.createPattern(svg.ctx, e); - } - - return null; - } - - // length extensions - svg.Property.prototype.getDPI = function(viewPort) { - return 96.0; // TODO: compute? - } - - svg.Property.prototype.getEM = function(viewPort) { - var em = 12; - - var fontSize = new svg.Property('fontSize', svg.Font.Parse(svg.ctx.font).fontSize); - if (fontSize.hasValue()) em = fontSize.toPixels(viewPort); - - return em; - } - - svg.Property.prototype.getUnits = function() { - var s = this.value+''; - return s.replace(/[0-9\.\-]/g,''); - } - - // get the length as pixels - svg.Property.prototype.toPixels = function(viewPort, processPercent) { - if (!this.hasValue()) return 0; - var s = this.value+''; - if (s.match(/em$/)) return this.numValue() * this.getEM(viewPort); - if (s.match(/ex$/)) return this.numValue() * this.getEM(viewPort) / 2.0; - if (s.match(/px$/)) return this.numValue(); - if (s.match(/pt$/)) return this.numValue() * this.getDPI(viewPort) * (1.0 / 72.0); - if (s.match(/pc$/)) return this.numValue() * 15; - if (s.match(/cm$/)) return this.numValue() * this.getDPI(viewPort) / 2.54; - if (s.match(/mm$/)) return this.numValue() * this.getDPI(viewPort) / 25.4; - if (s.match(/in$/)) return this.numValue() * this.getDPI(viewPort); - if (s.match(/%$/)) return this.numValue() * svg.ViewPort.ComputeSize(viewPort); - var n = this.numValue(); - if (processPercent && n < 1.0) return n * svg.ViewPort.ComputeSize(viewPort); - return n; - } - - // time extensions - // get the time as milliseconds - svg.Property.prototype.toMilliseconds = function() { - if (!this.hasValue()) return 0; - var s = this.value+''; - if (s.match(/s$/)) return this.numValue() * 1000; - if (s.match(/ms$/)) return this.numValue(); - return this.numValue(); - } - - // angle extensions - // get the angle as radians - svg.Property.prototype.toRadians = function() { - if (!this.hasValue()) return 0; - var s = this.value+''; - if (s.match(/deg$/)) return this.numValue() * (Math.PI / 180.0); - if (s.match(/grad$/)) return this.numValue() * (Math.PI / 200.0); - if (s.match(/rad$/)) return this.numValue(); - return this.numValue() * (Math.PI / 180.0); - } - - // text extensions - // get the text baseline - var textBaselineMapping = { - 'baseline': 'alphabetic', - 'before-edge': 'top', - 'text-before-edge': 'top', - 'middle': 'middle', - 'central': 'middle', - 'after-edge': 'bottom', - 'text-after-edge': 'bottom', - 'ideographic': 'ideographic', - 'alphabetic': 'alphabetic', - 'hanging': 'hanging', - 'mathematical': 'alphabetic' - }; - svg.Property.prototype.toTextBaseline = function () { - if (!this.hasValue()) return null; - return textBaselineMapping[this.value]; - } - - // fonts - svg.Font = new (function() { - this.Styles = 'normal|italic|oblique|inherit'; - this.Variants = 'normal|small-caps|inherit'; - this.Weights = 'normal|bold|bolder|lighter|100|200|300|400|500|600|700|800|900|inherit'; - - this.CreateFont = function(fontStyle, fontVariant, fontWeight, fontSize, fontFamily, inherit) { - var f = inherit != null ? this.Parse(inherit) : this.CreateFont('', '', '', '', '', svg.ctx.font); - return { - fontFamily: fontFamily || f.fontFamily, - fontSize: fontSize || f.fontSize, - fontStyle: fontStyle || f.fontStyle, - fontWeight: fontWeight || f.fontWeight, - fontVariant: fontVariant || f.fontVariant, - toString: function () { return [this.fontStyle, this.fontVariant, this.fontWeight, this.fontSize, this.fontFamily].join(' ') } - } - } - - var that = this; - this.Parse = function(s) { - var f = {}; - var d = svg.trim(svg.compressSpaces(s || '')).split(' '); - var set = { fontSize: false, fontStyle: false, fontWeight: false, fontVariant: false } - var ff = ''; - for (var i=0; i this.x2) this.x2 = x; - } - - if (y != null) { - if (isNaN(this.y1) || isNaN(this.y2)) { - this.y1 = y; - this.y2 = y; - } - if (y < this.y1) this.y1 = y; - if (y > this.y2) this.y2 = y; - } - } - this.addX = function(x) { this.addPoint(x, null); } - this.addY = function(y) { this.addPoint(null, y); } - - this.addBoundingBox = function(bb) { - this.addPoint(bb.x1, bb.y1); - this.addPoint(bb.x2, bb.y2); - } - - this.addQuadraticCurve = function(p0x, p0y, p1x, p1y, p2x, p2y) { - var cp1x = p0x + 2/3 * (p1x - p0x); // CP1 = QP0 + 2/3 *(QP1-QP0) - var cp1y = p0y + 2/3 * (p1y - p0y); // CP1 = QP0 + 2/3 *(QP1-QP0) - var cp2x = cp1x + 1/3 * (p2x - p0x); // CP2 = CP1 + 1/3 *(QP2-QP0) - var cp2y = cp1y + 1/3 * (p2y - p0y); // CP2 = CP1 + 1/3 *(QP2-QP0) - this.addBezierCurve(p0x, p0y, cp1x, cp2x, cp1y, cp2y, p2x, p2y); - } - - this.addBezierCurve = function(p0x, p0y, p1x, p1y, p2x, p2y, p3x, p3y) { - // from http://blog.hackers-cafe.net/2009/06/how-to-calculate-bezier-curves-bounding.html - var p0 = [p0x, p0y], p1 = [p1x, p1y], p2 = [p2x, p2y], p3 = [p3x, p3y]; - this.addPoint(p0[0], p0[1]); - this.addPoint(p3[0], p3[1]); - - for (i=0; i<=1; i++) { - var f = function(t) { - return Math.pow(1-t, 3) * p0[i] - + 3 * Math.pow(1-t, 2) * t * p1[i] - + 3 * (1-t) * Math.pow(t, 2) * p2[i] - + Math.pow(t, 3) * p3[i]; - } - - var b = 6 * p0[i] - 12 * p1[i] + 6 * p2[i]; - var a = -3 * p0[i] + 9 * p1[i] - 9 * p2[i] + 3 * p3[i]; - var c = 3 * p1[i] - 3 * p0[i]; - - if (a == 0) { - if (b == 0) continue; - var t = -c / b; - if (0 < t && t < 1) { - if (i == 0) this.addX(f(t)); - if (i == 1) this.addY(f(t)); - } - continue; - } - - var b2ac = Math.pow(b, 2) - 4 * c * a; - if (b2ac < 0) continue; - var t1 = (-b + Math.sqrt(b2ac)) / (2 * a); - if (0 < t1 && t1 < 1) { - if (i == 0) this.addX(f(t1)); - if (i == 1) this.addY(f(t1)); - } - var t2 = (-b - Math.sqrt(b2ac)) / (2 * a); - if (0 < t2 && t2 < 1) { - if (i == 0) this.addX(f(t2)); - if (i == 1) this.addY(f(t2)); - } - } - } - - this.isPointInBox = function(x, y) { - return (this.x1 <= x && x <= this.x2 && this.y1 <= y && y <= this.y2); - } - - this.addPoint(x1, y1); - this.addPoint(x2, y2); - } - - // transforms - svg.Transform = function(v) { - var that = this; - this.Type = {} - - // translate - this.Type.translate = function(s) { - this.p = svg.CreatePoint(s); - this.apply = function(ctx) { - ctx.translate(this.p.x || 0.0, this.p.y || 0.0); - } - this.unapply = function(ctx) { - ctx.translate(-1.0 * this.p.x || 0.0, -1.0 * this.p.y || 0.0); - } - this.applyToPoint = function(p) { - p.applyTransform([1, 0, 0, 1, this.p.x || 0.0, this.p.y || 0.0]); - } - } - - // rotate - this.Type.rotate = function(s) { - var a = svg.ToNumberArray(s); - this.angle = new svg.Property('angle', a[0]); - this.cx = a[1] || 0; - this.cy = a[2] || 0; - this.apply = function(ctx) { - ctx.translate(this.cx, this.cy); - ctx.rotate(this.angle.toRadians()); - ctx.translate(-this.cx, -this.cy); - } - this.unapply = function(ctx) { - ctx.translate(this.cx, this.cy); - ctx.rotate(-1.0 * this.angle.toRadians()); - ctx.translate(-this.cx, -this.cy); - } - this.applyToPoint = function(p) { - var a = this.angle.toRadians(); - p.applyTransform([1, 0, 0, 1, this.p.x || 0.0, this.p.y || 0.0]); - p.applyTransform([Math.cos(a), Math.sin(a), -Math.sin(a), Math.cos(a), 0, 0]); - p.applyTransform([1, 0, 0, 1, -this.p.x || 0.0, -this.p.y || 0.0]); - } - } - - this.Type.scale = function(s) { - this.p = svg.CreatePoint(s); - this.apply = function(ctx) { - ctx.scale(this.p.x || 1.0, this.p.y || this.p.x || 1.0); - } - this.unapply = function(ctx) { - ctx.scale(1.0 / this.p.x || 1.0, 1.0 / this.p.y || this.p.x || 1.0); - } - this.applyToPoint = function(p) { - p.applyTransform([this.p.x || 0.0, 0, 0, this.p.y || 0.0, 0, 0]); - } - } - - this.Type.matrix = function(s) { - this.m = svg.ToNumberArray(s); - this.apply = function(ctx) { - ctx.transform(this.m[0], this.m[1], this.m[2], this.m[3], this.m[4], this.m[5]); - } - this.unapply = function(ctx) { - var a = this.m[0]; - var b = this.m[2]; - var c = this.m[4]; - var d = this.m[1]; - var e = this.m[3]; - var f = this.m[5]; - var g = 0.0; - var h = 0.0; - var i = 1.0; - var det = 1 / (a*(e*i-f*h)-b*(d*i-f*g)+c*(d*h-e*g)); - ctx.transform( - det*(e*i-f*h), - det*(f*g-d*i), - det*(c*h-b*i), - det*(a*i-c*g), - det*(b*f-c*e), - det*(c*d-a*f) - ); - } - this.applyToPoint = function(p) { - p.applyTransform(this.m); - } - } - - this.Type.SkewBase = function(s) { - this.base = that.Type.matrix; - this.base(s); - this.angle = new svg.Property('angle', s); - } - this.Type.SkewBase.prototype = new this.Type.matrix; - - this.Type.skewX = function(s) { - this.base = that.Type.SkewBase; - this.base(s); - this.m = [1, 0, Math.tan(this.angle.toRadians()), 1, 0, 0]; - } - this.Type.skewX.prototype = new this.Type.SkewBase; - - this.Type.skewY = function(s) { - this.base = that.Type.SkewBase; - this.base(s); - this.m = [1, Math.tan(this.angle.toRadians()), 0, 1, 0, 0]; - } - this.Type.skewY.prototype = new this.Type.SkewBase; - - this.transforms = []; - - this.apply = function(ctx) { - for (var i=0; i=0; i--) { - this.transforms[i].unapply(ctx); - } - } - - this.applyToPoint = function(p) { - for (var i=0; i existingSpecificity) { - this.styles[name] = styles[name]; - this.stylesSpecificity[name] = specificity; - } - } - } - } - } - - // add inline styles - if (this.attribute('style').hasValue()) { - var styles = this.attribute('style').value.split(';'); - for (var i=0; i= this.tokens.length - 1; - } - - this.isCommandOrEnd = function() { - if (this.isEnd()) return true; - return this.tokens[this.i + 1].match(/^[A-Za-z]$/) != null; - } - - this.isRelativeCommand = function() { - switch(this.command) - { - case 'm': - case 'l': - case 'h': - case 'v': - case 'c': - case 's': - case 'q': - case 't': - case 'a': - case 'z': - return true; - break; - } - return false; - } - - this.getToken = function() { - this.i++; - return this.tokens[this.i]; - } - - this.getScalar = function() { - return parseFloat(this.getToken()); - } - - this.nextCommand = function() { - this.previousCommand = this.command; - this.command = this.getToken(); - } - - this.getPoint = function() { - var p = new svg.Point(this.getScalar(), this.getScalar()); - return this.makeAbsolute(p); - } - - this.getAsControlPoint = function() { - var p = this.getPoint(); - this.control = p; - return p; - } - - this.getAsCurrentPoint = function() { - var p = this.getPoint(); - this.current = p; - return p; - } - - this.getReflectedControlPoint = function() { - if (this.previousCommand.toLowerCase() != 'c' && - this.previousCommand.toLowerCase() != 's' && - this.previousCommand.toLowerCase() != 'q' && - this.previousCommand.toLowerCase() != 't' ){ - return this.current; - } - - // reflect point - var p = new svg.Point(2 * this.current.x - this.control.x, 2 * this.current.y - this.control.y); - return p; - } - - this.makeAbsolute = function(p) { - if (this.isRelativeCommand()) { - p.x += this.current.x; - p.y += this.current.y; - } - return p; - } - - this.addMarker = function(p, from, priorTo) { - // if the last angle isn't filled in because we didn't have this point yet ... - if (priorTo != null && this.angles.length > 0 && this.angles[this.angles.length-1] == null) { - this.angles[this.angles.length-1] = this.points[this.points.length-1].angleTo(priorTo); - } - this.addMarkerAngle(p, from == null ? null : from.angleTo(p)); - } - - this.addMarkerAngle = function(p, a) { - this.points.push(p); - this.angles.push(a); - } - - this.getMarkerPoints = function() { return this.points; } - this.getMarkerAngles = function() { - for (var i=0; i 1) { - rx *= Math.sqrt(l); - ry *= Math.sqrt(l); - } - // cx', cy' - var s = (largeArcFlag == sweepFlag ? -1 : 1) * Math.sqrt( - ((Math.pow(rx,2)*Math.pow(ry,2))-(Math.pow(rx,2)*Math.pow(currp.y,2))-(Math.pow(ry,2)*Math.pow(currp.x,2))) / - (Math.pow(rx,2)*Math.pow(currp.y,2)+Math.pow(ry,2)*Math.pow(currp.x,2)) - ); - if (isNaN(s)) s = 0; - var cpp = new svg.Point(s * rx * currp.y / ry, s * -ry * currp.x / rx); - // cx, cy - var centp = new svg.Point( - (curr.x + cp.x) / 2.0 + Math.cos(xAxisRotation) * cpp.x - Math.sin(xAxisRotation) * cpp.y, - (curr.y + cp.y) / 2.0 + Math.sin(xAxisRotation) * cpp.x + Math.cos(xAxisRotation) * cpp.y - ); - // vector magnitude - var m = function(v) { return Math.sqrt(Math.pow(v[0],2) + Math.pow(v[1],2)); } - // ratio between two vectors - var r = function(u, v) { return (u[0]*v[0]+u[1]*v[1]) / (m(u)*m(v)) } - // angle between two vectors - var a = function(u, v) { return (u[0]*v[1] < u[1]*v[0] ? -1 : 1) * Math.acos(r(u,v)); } - // initial angle - var a1 = a([1,0], [(currp.x-cpp.x)/rx,(currp.y-cpp.y)/ry]); - // angle delta - var u = [(currp.x-cpp.x)/rx,(currp.y-cpp.y)/ry]; - var v = [(-currp.x-cpp.x)/rx,(-currp.y-cpp.y)/ry]; - var ad = a(u, v); - if (r(u,v) <= -1) ad = Math.PI; - if (r(u,v) >= 1) ad = 0; - - // for markers - var dir = 1 - sweepFlag ? 1.0 : -1.0; - var ah = a1 + dir * (ad / 2.0); - var halfWay = new svg.Point( - centp.x + rx * Math.cos(ah), - centp.y + ry * Math.sin(ah) - ); - pp.addMarkerAngle(halfWay, ah - dir * Math.PI / 2); - pp.addMarkerAngle(cp, ah - dir * Math.PI); - - bb.addPoint(cp.x, cp.y); // TODO: this is too naive, make it better - if (ctx != null) { - var r = rx > ry ? rx : ry; - var sx = rx > ry ? 1 : rx / ry; - var sy = rx > ry ? ry / rx : 1; - - ctx.translate(centp.x, centp.y); - ctx.rotate(xAxisRotation); - ctx.scale(sx, sy); - ctx.arc(0, 0, r, a1, a1 + ad, 1 - sweepFlag); - ctx.scale(1/sx, 1/sy); - ctx.rotate(-xAxisRotation); - ctx.translate(-centp.x, -centp.y); - } - } - break; - case 'Z': - case 'z': - if (ctx != null) ctx.closePath(); - pp.current = pp.start; - } - } - - return bb; - } - - this.getMarkers = function() { - var points = this.PathParser.getMarkerPoints(); - var angles = this.PathParser.getMarkerAngles(); - - var markers = []; - for (var i=0; i 1) this.offset = 1; - - var stopColor = this.style('stop-color'); - if (this.style('stop-opacity').hasValue()) stopColor = stopColor.addOpacity(this.style('stop-opacity')); - this.color = stopColor.value; - } - svg.Element.stop.prototype = new svg.Element.ElementBase; - - // animation base element - svg.Element.AnimateBase = function(node) { - this.base = svg.Element.ElementBase; - this.base(node); - - svg.Animations.push(this); - - this.duration = 0.0; - this.begin = this.attribute('begin').toMilliseconds(); - this.maxDuration = this.begin + this.attribute('dur').toMilliseconds(); - - this.getProperty = function() { - var attributeType = this.attribute('attributeType').value; - var attributeName = this.attribute('attributeName').value; - - if (attributeType == 'CSS') { - return this.parent.style(attributeName, true); - } - return this.parent.attribute(attributeName, true); - }; - - this.initialValue = null; - this.initialUnits = ''; - this.removed = false; - - this.calcValue = function() { - // OVERRIDE ME! - return ''; - } - - this.update = function(delta) { - // set initial value - if (this.initialValue == null) { - this.initialValue = this.getProperty().value; - this.initialUnits = this.getProperty().getUnits(); - } - - // if we're past the end time - if (this.duration > this.maxDuration) { - // loop for indefinitely repeating animations - if (this.attribute('repeatCount').value == 'indefinite' - || this.attribute('repeatDur').value == 'indefinite') { - this.duration = 0.0 - } - else if (this.attribute('fill').valueOrDefault('remove') == 'freeze' && !this.frozen) { - this.frozen = true; - this.parent.animationFrozen = true; - this.parent.animationFrozenValue = this.getProperty().value; - } - else if (this.attribute('fill').valueOrDefault('remove') == 'remove' && !this.removed) { - this.removed = true; - this.getProperty().value = this.parent.animationFrozen ? this.parent.animationFrozenValue : this.initialValue; - return true; - } - return false; - } - this.duration = this.duration + delta; - - // if we're past the begin time - var updated = false; - if (this.begin < this.duration) { - var newValue = this.calcValue(); // tween - - if (this.attribute('type').hasValue()) { - // for transform, etc. - var type = this.attribute('type').value; - newValue = type + '(' + newValue + ')'; - } - - this.getProperty().value = newValue; - updated = true; - } - - return updated; - } - - this.from = this.attribute('from'); - this.to = this.attribute('to'); - this.values = this.attribute('values'); - if (this.values.hasValue()) this.values.value = this.values.value.split(';'); - - // fraction of duration we've covered - this.progress = function() { - var ret = { progress: (this.duration - this.begin) / (this.maxDuration - this.begin) }; - if (this.values.hasValue()) { - var p = ret.progress * (this.values.value.length - 1); - var lb = Math.floor(p), ub = Math.ceil(p); - ret.from = new svg.Property('from', parseFloat(this.values.value[lb])); - ret.to = new svg.Property('to', parseFloat(this.values.value[ub])); - ret.progress = (p - lb) / (ub - lb); - } - else { - ret.from = this.from; - ret.to = this.to; - } - return ret; - } - } - svg.Element.AnimateBase.prototype = new svg.Element.ElementBase; - - // animate element - svg.Element.animate = function(node) { - this.base = svg.Element.AnimateBase; - this.base(node); - - this.calcValue = function() { - var p = this.progress(); - - // tween value linearly - var newValue = p.from.numValue() + (p.to.numValue() - p.from.numValue()) * p.progress; - return newValue + this.initialUnits; - }; - } - svg.Element.animate.prototype = new svg.Element.AnimateBase; - - // animate color element - svg.Element.animateColor = function(node) { - this.base = svg.Element.AnimateBase; - this.base(node); - - this.calcValue = function() { - var p = this.progress(); - var from = new RGBColor(p.from.value); - var to = new RGBColor(p.to.value); - - if (from.ok && to.ok) { - // tween color linearly - var r = from.r + (to.r - from.r) * p.progress; - var g = from.g + (to.g - from.g) * p.progress; - var b = from.b + (to.b - from.b) * p.progress; - return 'rgb('+parseInt(r,10)+','+parseInt(g,10)+','+parseInt(b,10)+')'; - } - return this.attribute('from').value; - }; - } - svg.Element.animateColor.prototype = new svg.Element.AnimateBase; - - // animate transform element - svg.Element.animateTransform = function(node) { - this.base = svg.Element.AnimateBase; - this.base(node); - - this.calcValue = function() { - var p = this.progress(); - - // tween value linearly - var from = svg.ToNumberArray(p.from.value); - var to = svg.ToNumberArray(p.to.value); - var newValue = ''; - for (var i=0; i startI && child.attribute('x').hasValue()) break; // new group - width += child.measureTextRecursive(ctx); - } - return -1 * (textAnchor == 'end' ? width : width / 2.0); - } - return 0; - } - - this.renderChild = function(ctx, parent, i) { - var child = parent.children[i]; - if (child.attribute('x').hasValue()) { - child.x = child.attribute('x').toPixels('x') + this.getAnchorDelta(ctx, parent, i); - if (child.attribute('dx').hasValue()) child.x += child.attribute('dx').toPixels('x'); - } - else { - if (this.attribute('dx').hasValue()) this.x += this.attribute('dx').toPixels('x'); - if (child.attribute('dx').hasValue()) this.x += child.attribute('dx').toPixels('x'); - child.x = this.x; - } - this.x = child.x + child.measureText(ctx); - - if (child.attribute('y').hasValue()) { - child.y = child.attribute('y').toPixels('y'); - if (child.attribute('dy').hasValue()) child.y += child.attribute('dy').toPixels('y'); - } - else { - if (this.attribute('dy').hasValue()) this.y += this.attribute('dy').toPixels('y'); - if (child.attribute('dy').hasValue()) this.y += child.attribute('dy').toPixels('y'); - child.y = this.y; - } - this.y = child.y; - - child.render(ctx); - - for (var i=0; i0 && text[i-1]!=' ' && i0 && text[i-1]!=' ' && (i == text.length-1 || text[i+1]==' ')) arabicForm = 'initial'; - if (typeof(font.glyphs[c]) != 'undefined') { - glyph = font.glyphs[c][arabicForm]; - if (glyph == null && font.glyphs[c].type == 'glyph') glyph = font.glyphs[c]; - } - } - else { - glyph = font.glyphs[c]; - } - if (glyph == null) glyph = font.missingGlyph; - return glyph; - } - - this.renderChildren = function(ctx) { - var customFont = this.parent.style('font-family').getDefinition(); - if (customFont != null) { - var fontSize = this.parent.style('font-size').numValueOrDefault(svg.Font.Parse(svg.ctx.font).fontSize); - var fontStyle = this.parent.style('font-style').valueOrDefault(svg.Font.Parse(svg.ctx.font).fontStyle); - var text = this.getText(); - if (customFont.isRTL) text = text.split("").reverse().join(""); - - var dx = svg.ToNumberArray(this.parent.attribute('dx').value); - for (var i=0; i 0; - for (var i=0; i 0) { - // render as temporary group - var g = new svg.Element.g(); - g.children = this.children; - g.parent = this; - g.render(ctx); - } - } - - this.onclick = function() { - window.open(this.getHrefAttribute().value); - } - - this.onmousemove = function() { - svg.ctx.canvas.style.cursor = 'pointer'; - } - } - svg.Element.a.prototype = new svg.Element.TextElementBase; - - // image element - svg.Element.image = function(node) { - this.base = svg.Element.RenderedElementBase; - this.base(node); - - var href = this.getHrefAttribute().value; - if (href == '') { return; } - var isSvg = href.match(/\.svg$/) - - svg.Images.push(this); - this.loaded = false; - if (!isSvg) { - this.img = document.createElement('img'); - if (svg.opts['useCORS'] == true) { this.img.crossOrigin = 'Anonymous'; } - var self = this; - this.img.onload = function() { self.loaded = true; } - this.img.onerror = function() { svg.log('ERROR: image "' + href + '" not found'); self.loaded = true; } - this.img.src = href; - } - else { - this.img = svg.ajax(href); - this.loaded = true; - } - - this.renderChildren = function(ctx) { - var x = this.attribute('x').toPixels('x'); - var y = this.attribute('y').toPixels('y'); - - var width = this.attribute('width').toPixels('x'); - var height = this.attribute('height').toPixels('y'); - if (width == 0 || height == 0) return; - - ctx.save(); - if (isSvg) { - ctx.drawSvg(this.img, x, y, width, height); - } - else { - ctx.translate(x, y); - svg.AspectRatio(ctx, - this.attribute('preserveAspectRatio').value, - width, - this.img.width, - height, - this.img.height, - 0, - 0); - ctx.drawImage(this.img, 0, 0); - } - ctx.restore(); - } - - this.getBoundingBox = function() { - var x = this.attribute('x').toPixels('x'); - var y = this.attribute('y').toPixels('y'); - var width = this.attribute('width').toPixels('x'); - var height = this.attribute('height').toPixels('y'); - return new svg.BoundingBox(x, y, x + width, y + height); - } - } - svg.Element.image.prototype = new svg.Element.RenderedElementBase; - - // group element - svg.Element.g = function(node) { - this.base = svg.Element.RenderedElementBase; - this.base(node); - - this.getBoundingBox = function() { - var bb = new svg.BoundingBox(); - for (var i=0; i 0) { - var urlStart = srcs[s].indexOf('url'); - var urlEnd = srcs[s].indexOf(')', urlStart); - var url = srcs[s].substr(urlStart + 5, urlEnd - urlStart - 6); - var doc = svg.parseXml(svg.ajax(url)); - var fonts = doc.getElementsByTagName('font'); - for (var f=0; f 1) { - throw new Error('Second argument not supported'); - } - if (typeof o !== 'object') { - throw new TypeError('Argument must be an object'); - } - $$utils$$F.prototype = o; - return new $$utils$$F(); - }); - - var $$asap$$len = 0; - - var $$asap$$default = function asap(callback, arg) { - $$asap$$queue[$$asap$$len] = callback; - $$asap$$queue[$$asap$$len + 1] = arg; - $$asap$$len += 2; - if ($$asap$$len === 2) { - // If len is 1, that means that we need to schedule an async flush. - // If additional callbacks are queued before the queue is flushed, they - // will be processed by this flush that we are scheduling. - $$asap$$scheduleFlush(); - } - }; - - var $$asap$$browserGlobal = (typeof window !== 'undefined') ? window : {}; - var $$asap$$BrowserMutationObserver = $$asap$$browserGlobal.MutationObserver || $$asap$$browserGlobal.WebKitMutationObserver; - - // test for web worker but not in IE10 - var $$asap$$isWorker = typeof Uint8ClampedArray !== 'undefined' && - typeof importScripts !== 'undefined' && - typeof MessageChannel !== 'undefined'; - - // node - function $$asap$$useNextTick() { - return function() { - process.nextTick($$asap$$flush); - }; - } - - function $$asap$$useMutationObserver() { - var iterations = 0; - var observer = new $$asap$$BrowserMutationObserver($$asap$$flush); - var node = document.createTextNode(''); - observer.observe(node, { characterData: true }); - - return function() { - node.data = (iterations = ++iterations % 2); - }; - } - - // web worker - function $$asap$$useMessageChannel() { - var channel = new MessageChannel(); - channel.port1.onmessage = $$asap$$flush; - return function () { - channel.port2.postMessage(0); - }; - } - - function $$asap$$useSetTimeout() { - return function() { - setTimeout($$asap$$flush, 1); - }; - } - - var $$asap$$queue = new Array(1000); - - function $$asap$$flush() { - for (var i = 0; i < $$asap$$len; i+=2) { - var callback = $$asap$$queue[i]; - var arg = $$asap$$queue[i+1]; - - callback(arg); - - $$asap$$queue[i] = undefined; - $$asap$$queue[i+1] = undefined; - } - - $$asap$$len = 0; - } - - var $$asap$$scheduleFlush; - - // Decide what async method to use to triggering processing of queued callbacks: - if (typeof process !== 'undefined' && {}.toString.call(process) === '[object process]') { - $$asap$$scheduleFlush = $$asap$$useNextTick(); - } else if ($$asap$$BrowserMutationObserver) { - $$asap$$scheduleFlush = $$asap$$useMutationObserver(); - } else if ($$asap$$isWorker) { - $$asap$$scheduleFlush = $$asap$$useMessageChannel(); - } else { - $$asap$$scheduleFlush = $$asap$$useSetTimeout(); - } - - function $$$internal$$noop() {} - var $$$internal$$PENDING = void 0; - var $$$internal$$FULFILLED = 1; - var $$$internal$$REJECTED = 2; - var $$$internal$$GET_THEN_ERROR = new $$$internal$$ErrorObject(); - - function $$$internal$$selfFullfillment() { - return new TypeError("You cannot resolve a promise with itself"); - } - - function $$$internal$$cannotReturnOwn() { - return new TypeError('A promises callback cannot return that same promise.') - } - - function $$$internal$$getThen(promise) { - try { - return promise.then; - } catch(error) { - $$$internal$$GET_THEN_ERROR.error = error; - return $$$internal$$GET_THEN_ERROR; - } - } - - function $$$internal$$tryThen(then, value, fulfillmentHandler, rejectionHandler) { - try { - then.call(value, fulfillmentHandler, rejectionHandler); - } catch(e) { - return e; - } - } - - function $$$internal$$handleForeignThenable(promise, thenable, then) { - $$asap$$default(function(promise) { - var sealed = false; - var error = $$$internal$$tryThen(then, thenable, function(value) { - if (sealed) { return; } - sealed = true; - if (thenable !== value) { - $$$internal$$resolve(promise, value); - } else { - $$$internal$$fulfill(promise, value); - } - }, function(reason) { - if (sealed) { return; } - sealed = true; - - $$$internal$$reject(promise, reason); - }, 'Settle: ' + (promise._label || ' unknown promise')); - - if (!sealed && error) { - sealed = true; - $$$internal$$reject(promise, error); - } - }, promise); - } - - function $$$internal$$handleOwnThenable(promise, thenable) { - if (thenable._state === $$$internal$$FULFILLED) { - $$$internal$$fulfill(promise, thenable._result); - } else if (promise._state === $$$internal$$REJECTED) { - $$$internal$$reject(promise, thenable._result); - } else { - $$$internal$$subscribe(thenable, undefined, function(value) { - $$$internal$$resolve(promise, value); - }, function(reason) { - $$$internal$$reject(promise, reason); - }); - } - } - - function $$$internal$$handleMaybeThenable(promise, maybeThenable) { - if (maybeThenable.constructor === promise.constructor) { - $$$internal$$handleOwnThenable(promise, maybeThenable); - } else { - var then = $$$internal$$getThen(maybeThenable); - - if (then === $$$internal$$GET_THEN_ERROR) { - $$$internal$$reject(promise, $$$internal$$GET_THEN_ERROR.error); - } else if (then === undefined) { - $$$internal$$fulfill(promise, maybeThenable); - } else if ($$utils$$isFunction(then)) { - $$$internal$$handleForeignThenable(promise, maybeThenable, then); - } else { - $$$internal$$fulfill(promise, maybeThenable); - } - } - } - - function $$$internal$$resolve(promise, value) { - if (promise === value) { - $$$internal$$reject(promise, $$$internal$$selfFullfillment()); - } else if ($$utils$$objectOrFunction(value)) { - $$$internal$$handleMaybeThenable(promise, value); - } else { - $$$internal$$fulfill(promise, value); - } - } - - function $$$internal$$publishRejection(promise) { - if (promise._onerror) { - promise._onerror(promise._result); - } - - $$$internal$$publish(promise); - } - - function $$$internal$$fulfill(promise, value) { - if (promise._state !== $$$internal$$PENDING) { return; } - - promise._result = value; - promise._state = $$$internal$$FULFILLED; - - if (promise._subscribers.length === 0) { - } else { - $$asap$$default($$$internal$$publish, promise); - } - } - - function $$$internal$$reject(promise, reason) { - if (promise._state !== $$$internal$$PENDING) { return; } - promise._state = $$$internal$$REJECTED; - promise._result = reason; - - $$asap$$default($$$internal$$publishRejection, promise); - } - - function $$$internal$$subscribe(parent, child, onFulfillment, onRejection) { - var subscribers = parent._subscribers; - var length = subscribers.length; - - parent._onerror = null; - - subscribers[length] = child; - subscribers[length + $$$internal$$FULFILLED] = onFulfillment; - subscribers[length + $$$internal$$REJECTED] = onRejection; - - if (length === 0 && parent._state) { - $$asap$$default($$$internal$$publish, parent); - } - } - - function $$$internal$$publish(promise) { - var subscribers = promise._subscribers; - var settled = promise._state; - - if (subscribers.length === 0) { return; } - - var child, callback, detail = promise._result; - - for (var i = 0; i < subscribers.length; i += 3) { - child = subscribers[i]; - callback = subscribers[i + settled]; - - if (child) { - $$$internal$$invokeCallback(settled, child, callback, detail); - } else { - callback(detail); - } - } - - promise._subscribers.length = 0; - } - - function $$$internal$$ErrorObject() { - this.error = null; - } - - var $$$internal$$TRY_CATCH_ERROR = new $$$internal$$ErrorObject(); - - function $$$internal$$tryCatch(callback, detail) { - try { - return callback(detail); - } catch(e) { - $$$internal$$TRY_CATCH_ERROR.error = e; - return $$$internal$$TRY_CATCH_ERROR; - } - } - - function $$$internal$$invokeCallback(settled, promise, callback, detail) { - var hasCallback = $$utils$$isFunction(callback), - value, error, succeeded, failed; - - if (hasCallback) { - value = $$$internal$$tryCatch(callback, detail); - - if (value === $$$internal$$TRY_CATCH_ERROR) { - failed = true; - error = value.error; - value = null; - } else { - succeeded = true; - } - - if (promise === value) { - $$$internal$$reject(promise, $$$internal$$cannotReturnOwn()); - return; - } - - } else { - value = detail; - succeeded = true; - } - - if (promise._state !== $$$internal$$PENDING) { - // noop - } else if (hasCallback && succeeded) { - $$$internal$$resolve(promise, value); - } else if (failed) { - $$$internal$$reject(promise, error); - } else if (settled === $$$internal$$FULFILLED) { - $$$internal$$fulfill(promise, value); - } else if (settled === $$$internal$$REJECTED) { - $$$internal$$reject(promise, value); - } - } - - function $$$internal$$initializePromise(promise, resolver) { - try { - resolver(function resolvePromise(value){ - $$$internal$$resolve(promise, value); - }, function rejectPromise(reason) { - $$$internal$$reject(promise, reason); - }); - } catch(e) { - $$$internal$$reject(promise, e); - } - } - - function $$$enumerator$$makeSettledResult(state, position, value) { - if (state === $$$internal$$FULFILLED) { - return { - state: 'fulfilled', - value: value - }; - } else { - return { - state: 'rejected', - reason: value - }; - } - } - - function $$$enumerator$$Enumerator(Constructor, input, abortOnReject, label) { - this._instanceConstructor = Constructor; - this.promise = new Constructor($$$internal$$noop, label); - this._abortOnReject = abortOnReject; - - if (this._validateInput(input)) { - this._input = input; - this.length = input.length; - this._remaining = input.length; - - this._init(); - - if (this.length === 0) { - $$$internal$$fulfill(this.promise, this._result); - } else { - this.length = this.length || 0; - this._enumerate(); - if (this._remaining === 0) { - $$$internal$$fulfill(this.promise, this._result); - } - } - } else { - $$$internal$$reject(this.promise, this._validationError()); - } - } - - $$$enumerator$$Enumerator.prototype._validateInput = function(input) { - return $$utils$$isArray(input); - }; - - $$$enumerator$$Enumerator.prototype._validationError = function() { - return new Error('Array Methods must be provided an Array'); - }; - - $$$enumerator$$Enumerator.prototype._init = function() { - this._result = new Array(this.length); - }; - - var $$$enumerator$$default = $$$enumerator$$Enumerator; - - $$$enumerator$$Enumerator.prototype._enumerate = function() { - var length = this.length; - var promise = this.promise; - var input = this._input; - - for (var i = 0; promise._state === $$$internal$$PENDING && i < length; i++) { - this._eachEntry(input[i], i); - } - }; - - $$$enumerator$$Enumerator.prototype._eachEntry = function(entry, i) { - var c = this._instanceConstructor; - if ($$utils$$isMaybeThenable(entry)) { - if (entry.constructor === c && entry._state !== $$$internal$$PENDING) { - entry._onerror = null; - this._settledAt(entry._state, i, entry._result); - } else { - this._willSettleAt(c.resolve(entry), i); - } - } else { - this._remaining--; - this._result[i] = this._makeResult($$$internal$$FULFILLED, i, entry); - } - }; - - $$$enumerator$$Enumerator.prototype._settledAt = function(state, i, value) { - var promise = this.promise; - - if (promise._state === $$$internal$$PENDING) { - this._remaining--; - - if (this._abortOnReject && state === $$$internal$$REJECTED) { - $$$internal$$reject(promise, value); - } else { - this._result[i] = this._makeResult(state, i, value); - } - } - - if (this._remaining === 0) { - $$$internal$$fulfill(promise, this._result); - } - }; - - $$$enumerator$$Enumerator.prototype._makeResult = function(state, i, value) { - return value; - }; - - $$$enumerator$$Enumerator.prototype._willSettleAt = function(promise, i) { - var enumerator = this; - - $$$internal$$subscribe(promise, undefined, function(value) { - enumerator._settledAt($$$internal$$FULFILLED, i, value); - }, function(reason) { - enumerator._settledAt($$$internal$$REJECTED, i, reason); - }); - }; - - var $$promise$all$$default = function all(entries, label) { - return new $$$enumerator$$default(this, entries, true /* abort on reject */, label).promise; - }; - - var $$promise$race$$default = function race(entries, label) { - /*jshint validthis:true */ - var Constructor = this; - - var promise = new Constructor($$$internal$$noop, label); - - if (!$$utils$$isArray(entries)) { - $$$internal$$reject(promise, new TypeError('You must pass an array to race.')); - return promise; - } - - var length = entries.length; - - function onFulfillment(value) { - $$$internal$$resolve(promise, value); - } - - function onRejection(reason) { - $$$internal$$reject(promise, reason); - } - - for (var i = 0; promise._state === $$$internal$$PENDING && i < length; i++) { - $$$internal$$subscribe(Constructor.resolve(entries[i]), undefined, onFulfillment, onRejection); - } - - return promise; - }; - - var $$promise$resolve$$default = function resolve(object, label) { - /*jshint validthis:true */ - var Constructor = this; - - if (object && typeof object === 'object' && object.constructor === Constructor) { - return object; - } - - var promise = new Constructor($$$internal$$noop, label); - $$$internal$$resolve(promise, object); - return promise; - }; - - var $$promise$reject$$default = function reject(reason, label) { - /*jshint validthis:true */ - var Constructor = this; - var promise = new Constructor($$$internal$$noop, label); - $$$internal$$reject(promise, reason); - return promise; - }; - - var $$es6$promise$promise$$counter = 0; - - function $$es6$promise$promise$$needsResolver() { - throw new TypeError('You must pass a resolver function as the first argument to the promise constructor'); - } - - function $$es6$promise$promise$$needsNew() { - throw new TypeError("Failed to construct 'Promise': Please use the 'new' operator, this object constructor cannot be called as a function."); - } - - var $$es6$promise$promise$$default = $$es6$promise$promise$$Promise; - - /** - Promise objects represent the eventual result of an asynchronous operation. The - primary way of interacting with a promise is through its `then` method, which - registers callbacks to receive either a promise’s eventual value or the reason - why the promise cannot be fulfilled. - - Terminology - ----------- - - - `promise` is an object or function with a `then` method whose behavior conforms to this specification. - - `thenable` is an object or function that defines a `then` method. - - `value` is any legal JavaScript value (including undefined, a thenable, or a promise). - - `exception` is a value that is thrown using the throw statement. - - `reason` is a value that indicates why a promise was rejected. - - `settled` the final resting state of a promise, fulfilled or rejected. - - A promise can be in one of three states: pending, fulfilled, or rejected. - - Promises that are fulfilled have a fulfillment value and are in the fulfilled - state. Promises that are rejected have a rejection reason and are in the - rejected state. A fulfillment value is never a thenable. - - Promises can also be said to *resolve* a value. If this value is also a - promise, then the original promise's settled state will match the value's - settled state. So a promise that *resolves* a promise that rejects will - itself reject, and a promise that *resolves* a promise that fulfills will - itself fulfill. - - - Basic Usage: - ------------ - - ```js - var promise = new Promise(function(resolve, reject) { - // on success - resolve(value); - - // on failure - reject(reason); - }); - - promise.then(function(value) { - // on fulfillment - }, function(reason) { - // on rejection - }); - ``` - - Advanced Usage: - --------------- - - Promises shine when abstracting away asynchronous interactions such as - `XMLHttpRequest`s. - - ```js - function getJSON(url) { - return new Promise(function(resolve, reject){ - var xhr = new XMLHttpRequest(); - - xhr.open('GET', url); - xhr.onreadystatechange = handler; - xhr.responseType = 'json'; - xhr.setRequestHeader('Accept', 'application/json'); - xhr.send(); - - function handler() { - if (this.readyState === this.DONE) { - if (this.status === 200) { - resolve(this.response); - } else { - reject(new Error('getJSON: `' + url + '` failed with status: [' + this.status + ']')); - } - } - }; - }); - } - - getJSON('/posts.json').then(function(json) { - // on fulfillment - }, function(reason) { - // on rejection - }); - ``` - - Unlike callbacks, promises are great composable primitives. - - ```js - Promise.all([ - getJSON('/posts'), - getJSON('/comments') - ]).then(function(values){ - values[0] // => postsJSON - values[1] // => commentsJSON - - return values; - }); - ``` - - @class Promise - @param {function} resolver - Useful for tooling. - @constructor - */ - function $$es6$promise$promise$$Promise(resolver) { - this._id = $$es6$promise$promise$$counter++; - this._state = undefined; - this._result = undefined; - this._subscribers = []; - - if ($$$internal$$noop !== resolver) { - if (!$$utils$$isFunction(resolver)) { - $$es6$promise$promise$$needsResolver(); - } - - if (!(this instanceof $$es6$promise$promise$$Promise)) { - $$es6$promise$promise$$needsNew(); - } - - $$$internal$$initializePromise(this, resolver); - } - } - - $$es6$promise$promise$$Promise.all = $$promise$all$$default; - $$es6$promise$promise$$Promise.race = $$promise$race$$default; - $$es6$promise$promise$$Promise.resolve = $$promise$resolve$$default; - $$es6$promise$promise$$Promise.reject = $$promise$reject$$default; - - $$es6$promise$promise$$Promise.prototype = { - constructor: $$es6$promise$promise$$Promise, - - /** - The primary way of interacting with a promise is through its `then` method, - which registers callbacks to receive either a promise's eventual value or the - reason why the promise cannot be fulfilled. - - ```js - findUser().then(function(user){ - // user is available - }, function(reason){ - // user is unavailable, and you are given the reason why - }); - ``` - - Chaining - -------- - - The return value of `then` is itself a promise. This second, 'downstream' - promise is resolved with the return value of the first promise's fulfillment - or rejection handler, or rejected if the handler throws an exception. - - ```js - findUser().then(function (user) { - return user.name; - }, function (reason) { - return 'default name'; - }).then(function (userName) { - // If `findUser` fulfilled, `userName` will be the user's name, otherwise it - // will be `'default name'` - }); - - findUser().then(function (user) { - throw new Error('Found user, but still unhappy'); - }, function (reason) { - throw new Error('`findUser` rejected and we're unhappy'); - }).then(function (value) { - // never reached - }, function (reason) { - // if `findUser` fulfilled, `reason` will be 'Found user, but still unhappy'. - // If `findUser` rejected, `reason` will be '`findUser` rejected and we're unhappy'. - }); - ``` - If the downstream promise does not specify a rejection handler, rejection reasons will be propagated further downstream. - - ```js - findUser().then(function (user) { - throw new PedagogicalException('Upstream error'); - }).then(function (value) { - // never reached - }).then(function (value) { - // never reached - }, function (reason) { - // The `PedgagocialException` is propagated all the way down to here - }); - ``` - - Assimilation - ------------ - - Sometimes the value you want to propagate to a downstream promise can only be - retrieved asynchronously. This can be achieved by returning a promise in the - fulfillment or rejection handler. The downstream promise will then be pending - until the returned promise is settled. This is called *assimilation*. - - ```js - findUser().then(function (user) { - return findCommentsByAuthor(user); - }).then(function (comments) { - // The user's comments are now available - }); - ``` - - If the assimliated promise rejects, then the downstream promise will also reject. - - ```js - findUser().then(function (user) { - return findCommentsByAuthor(user); - }).then(function (comments) { - // If `findCommentsByAuthor` fulfills, we'll have the value here - }, function (reason) { - // If `findCommentsByAuthor` rejects, we'll have the reason here - }); - ``` - - Simple Example - -------------- - - Synchronous Example - - ```javascript - var result; - - try { - result = findResult(); - // success - } catch(reason) { - // failure - } - ``` - - Errback Example - - ```js - findResult(function(result, err){ - if (err) { - // failure - } else { - // success - } - }); - ``` - - Promise Example; - - ```javascript - findResult().then(function(result){ - // success - }, function(reason){ - // failure - }); - ``` - - Advanced Example - -------------- - - Synchronous Example - - ```javascript - var author, books; - - try { - author = findAuthor(); - books = findBooksByAuthor(author); - // success - } catch(reason) { - // failure - } - ``` - - Errback Example - - ```js - - function foundBooks(books) { - - } - - function failure(reason) { - - } - - findAuthor(function(author, err){ - if (err) { - failure(err); - // failure - } else { - try { - findBoooksByAuthor(author, function(books, err) { - if (err) { - failure(err); - } else { - try { - foundBooks(books); - } catch(reason) { - failure(reason); - } - } - }); - } catch(error) { - failure(err); - } - // success - } - }); - ``` - - Promise Example; - - ```javascript - findAuthor(). - then(findBooksByAuthor). - then(function(books){ - // found books - }).catch(function(reason){ - // something went wrong - }); - ``` - - @method then - @param {Function} onFulfilled - @param {Function} onRejected - Useful for tooling. - @return {Promise} - */ - then: function(onFulfillment, onRejection) { - var parent = this; - var state = parent._state; - - if (state === $$$internal$$FULFILLED && !onFulfillment || state === $$$internal$$REJECTED && !onRejection) { - return this; - } - - var child = new this.constructor($$$internal$$noop); - var result = parent._result; - - if (state) { - var callback = arguments[state - 1]; - $$asap$$default(function(){ - $$$internal$$invokeCallback(state, child, callback, result); - }); - } else { - $$$internal$$subscribe(parent, child, onFulfillment, onRejection); - } - - return child; - }, - - /** - `catch` is simply sugar for `then(undefined, onRejection)` which makes it the same - as the catch block of a try/catch statement. - - ```js - function findAuthor(){ - throw new Error('couldn't find that author'); - } - - // synchronous - try { - findAuthor(); - } catch(reason) { - // something went wrong - } - - // async with promises - findAuthor().catch(function(reason){ - // something went wrong - }); - ``` - - @method catch - @param {Function} onRejection - Useful for tooling. - @return {Promise} - */ - 'catch': function(onRejection) { - return this.then(null, onRejection); - } - }; - - var $$es6$promise$polyfill$$default = function polyfill() { - var local; - - if (typeof global !== 'undefined') { - local = global; - } else if (typeof window !== 'undefined' && window.document) { - local = window; - } else { - local = self; - } - - var es6PromiseSupport = - "Promise" in local && - // Some of these methods are missing from - // Firefox/Chrome experimental implementations - "resolve" in local.Promise && - "reject" in local.Promise && - "all" in local.Promise && - "race" in local.Promise && - // Older version of the spec had a resolver object - // as the arg rather than a function - (function() { - var resolve; - new local.Promise(function(r) { resolve = r; }); - return $$utils$$isFunction(resolve); - }()); - - if (!es6PromiseSupport) { - local.Promise = $$es6$promise$promise$$default; - } - }; - - var es6$promise$umd$$ES6Promise = { - 'Promise': $$es6$promise$promise$$default, - 'polyfill': $$es6$promise$polyfill$$default - }; - - /* global define:true module:true window: true */ - if (typeof define === 'function' && define['amd']) { - define('../bower_components/es6-promise/promise',[],function() { return es6$promise$umd$$ES6Promise; }); - } else if (typeof module !== 'undefined' && module['exports']) { - module['exports'] = es6$promise$umd$$ES6Promise; - } else if (typeof this !== 'undefined') { - this['ES6Promise'] = es6$promise$umd$$ES6Promise; - } -}).call(this); -/** - * @license RequireJS text 2.0.12 Copyright (c) 2010-2014, The Dojo Foundation All Rights Reserved. - * Available via the MIT or new BSD license. - * see: http://github.com/requirejs/text for details - */ -/*jslint regexp: true */ -/*global require, XMLHttpRequest, ActiveXObject, - define, window, process, Packages, - java, location, Components, FileUtils */ - -define('../node_modules/requirejs-text/text',['module'], function (module) { - - - var text, fs, Cc, Ci, xpcIsWindows, - progIds = ['Msxml2.XMLHTTP', 'Microsoft.XMLHTTP', 'Msxml2.XMLHTTP.4.0'], - xmlRegExp = /^\s*<\?xml(\s)+version=[\'\"](\d)*.(\d)*[\'\"](\s)*\?>/im, - bodyRegExp = /]*>\s*([\s\S]+)\s*<\/body>/im, - hasLocation = typeof location !== 'undefined' && location.href, - defaultProtocol = hasLocation && location.protocol && location.protocol.replace(/\:/, ''), - defaultHostName = hasLocation && location.hostname, - defaultPort = hasLocation && (location.port || undefined), - buildMap = {}, - masterConfig = (module.config && module.config()) || {}; - - text = { - version: '2.0.12', - - strip: function (content) { - //Strips declarations so that external SVG and XML - //documents can be added to a document without worry. Also, if the string - //is an HTML document, only the part inside the body tag is returned. - if (content) { - content = content.replace(xmlRegExp, ""); - var matches = content.match(bodyRegExp); - if (matches) { - content = matches[1]; - } - } else { - content = ""; - } - return content; - }, - - jsEscape: function (content) { - return content.replace(/(['\\])/g, '\\$1') - .replace(/[\f]/g, "\\f") - .replace(/[\b]/g, "\\b") - .replace(/[\n]/g, "\\n") - .replace(/[\t]/g, "\\t") - .replace(/[\r]/g, "\\r") - .replace(/[\u2028]/g, "\\u2028") - .replace(/[\u2029]/g, "\\u2029"); - }, - - createXhr: masterConfig.createXhr || function () { - //Would love to dump the ActiveX crap in here. Need IE 6 to die first. - var xhr, i, progId; - if (typeof XMLHttpRequest !== "undefined") { - return new XMLHttpRequest(); - } else if (typeof ActiveXObject !== "undefined") { - for (i = 0; i < 3; i += 1) { - progId = progIds[i]; - try { - xhr = new ActiveXObject(progId); - } catch (e) {} - - if (xhr) { - progIds = [progId]; // so faster next time - break; - } - } - } - - return xhr; - }, - - /** - * Parses a resource name into its component parts. Resource names - * look like: module/name.ext!strip, where the !strip part is - * optional. - * @param {String} name the resource name - * @returns {Object} with properties "moduleName", "ext" and "strip" - * where strip is a boolean. - */ - parseName: function (name) { - var modName, ext, temp, - strip = false, - index = name.indexOf("."), - isRelative = name.indexOf('./') === 0 || - name.indexOf('../') === 0; - - if (index !== -1 && (!isRelative || index > 1)) { - modName = name.substring(0, index); - ext = name.substring(index + 1, name.length); - } else { - modName = name; - } - - temp = ext || modName; - index = temp.indexOf("!"); - if (index !== -1) { - //Pull off the strip arg. - strip = temp.substring(index + 1) === "strip"; - temp = temp.substring(0, index); - if (ext) { - ext = temp; - } else { - modName = temp; - } - } - - return { - moduleName: modName, - ext: ext, - strip: strip - }; - }, - - xdRegExp: /^((\w+)\:)?\/\/([^\/\\]+)/, - - /** - * Is an URL on another domain. Only works for browser use, returns - * false in non-browser environments. Only used to know if an - * optimized .js version of a text resource should be loaded - * instead. - * @param {String} url - * @returns Boolean - */ - useXhr: function (url, protocol, hostname, port) { - var uProtocol, uHostName, uPort, - match = text.xdRegExp.exec(url); - if (!match) { - return true; - } - uProtocol = match[2]; - uHostName = match[3]; - - uHostName = uHostName.split(':'); - uPort = uHostName[1]; - uHostName = uHostName[0]; - - return (!uProtocol || uProtocol === protocol) && - (!uHostName || uHostName.toLowerCase() === hostname.toLowerCase()) && - ((!uPort && !uHostName) || uPort === port); - }, - - finishLoad: function (name, strip, content, onLoad) { - content = strip ? text.strip(content) : content; - if (masterConfig.isBuild) { - buildMap[name] = content; - } - onLoad(content); - }, - - load: function (name, req, onLoad, config) { - //Name has format: some.module.filext!strip - //The strip part is optional. - //if strip is present, then that means only get the string contents - //inside a body tag in an HTML string. For XML/SVG content it means - //removing the declarations so the content can be inserted - //into the current doc without problems. - - // Do not bother with the work if a build and text will - // not be inlined. - if (config && config.isBuild && !config.inlineText) { - onLoad(); - return; - } - - masterConfig.isBuild = config && config.isBuild; - - var parsed = text.parseName(name), - nonStripName = parsed.moduleName + - (parsed.ext ? '.' + parsed.ext : ''), - url = req.toUrl(nonStripName), - useXhr = (masterConfig.useXhr) || - text.useXhr; - - // Do not load if it is an empty: url - if (url.indexOf('empty:') === 0) { - onLoad(); - return; - } - - //Load the text. Use XHR if possible and in a browser. - if (!hasLocation || useXhr(url, defaultProtocol, defaultHostName, defaultPort)) { - text.get(url, function (content) { - text.finishLoad(name, parsed.strip, content, onLoad); - }, function (err) { - if (onLoad.error) { - onLoad.error(err); - } - }); - } else { - //Need to fetch the resource across domains. Assume - //the resource has been optimized into a JS module. Fetch - //by the module name + extension, but do not include the - //!strip part to avoid file system issues. - req([nonStripName], function (content) { - text.finishLoad(parsed.moduleName + '.' + parsed.ext, - parsed.strip, content, onLoad); - }); - } - }, - - write: function (pluginName, moduleName, write, config) { - if (buildMap.hasOwnProperty(moduleName)) { - var content = text.jsEscape(buildMap[moduleName]); - write.asModule(pluginName + "!" + moduleName, - "define(function () { return '" + - content + - "';});\n"); - } - }, - - writeFile: function (pluginName, moduleName, req, write, config) { - var parsed = text.parseName(moduleName), - extPart = parsed.ext ? '.' + parsed.ext : '', - nonStripName = parsed.moduleName + extPart, - //Use a '.js' file name so that it indicates it is a - //script that can be loaded across domains. - fileName = req.toUrl(parsed.moduleName + extPart) + '.js'; - - //Leverage own load() method to load plugin value, but only - //write out values that do not have the strip argument, - //to avoid any potential issues with ! in file names. - text.load(nonStripName, req, function (value) { - //Use own write() method to construct full module value. - //But need to create shell that translates writeFile's - //write() to the right interface. - var textWrite = function (contents) { - return write(fileName, contents); - }; - textWrite.asModule = function (moduleName, contents) { - return write.asModule(moduleName, fileName, contents); - }; - - text.write(pluginName, nonStripName, textWrite, config); - }, config); - } - }; - - if (masterConfig.env === 'node' || (!masterConfig.env && - typeof process !== "undefined" && - process.versions && - !!process.versions.node && - !process.versions['node-webkit'])) { - //Using special require.nodeRequire, something added by r.js. - fs = require.nodeRequire('fs'); - - text.get = function (url, callback, errback) { - try { - var file = fs.readFileSync(url, 'utf8'); - //Remove BOM (Byte Mark Order) from utf8 files if it is there. - if (file.indexOf('\uFEFF') === 0) { - file = file.substring(1); - } - callback(file); - } catch (e) { - if (errback) { - errback(e); - } - } - }; - } else if (masterConfig.env === 'xhr' || (!masterConfig.env && - text.createXhr())) { - text.get = function (url, callback, errback, headers) { - var xhr = text.createXhr(), header; - xhr.open('GET', url, true); - - //Allow plugins direct access to xhr headers - if (headers) { - for (header in headers) { - if (headers.hasOwnProperty(header)) { - xhr.setRequestHeader(header.toLowerCase(), headers[header]); - } - } - } - - //Allow overrides specified in config - if (masterConfig.onXhr) { - masterConfig.onXhr(xhr, url); - } - - xhr.onreadystatechange = function (evt) { - var status, err; - //Do not explicitly handle errors, those should be - //visible via console output in the browser. - if (xhr.readyState === 4) { - status = xhr.status || 0; - if (status > 399 && status < 600) { - //An http 4xx or 5xx error. Signal an error. - err = new Error(url + ' HTTP status: ' + status); - err.xhr = xhr; - if (errback) { - errback(err); - } - } else { - callback(xhr.responseText); - } - - if (masterConfig.onXhrComplete) { - masterConfig.onXhrComplete(xhr, url); - } - } - }; - xhr.send(null); - }; - } else if (masterConfig.env === 'rhino' || (!masterConfig.env && - typeof Packages !== 'undefined' && typeof java !== 'undefined')) { - //Why Java, why is this so awkward? - text.get = function (url, callback) { - var stringBuffer, line, - encoding = "utf-8", - file = new java.io.File(url), - lineSeparator = java.lang.System.getProperty("line.separator"), - input = new java.io.BufferedReader(new java.io.InputStreamReader(new java.io.FileInputStream(file), encoding)), - content = ''; - try { - stringBuffer = new java.lang.StringBuffer(); - line = input.readLine(); - - // Byte Order Mark (BOM) - The Unicode Standard, version 3.0, page 324 - // http://www.unicode.org/faq/utf_bom.html - - // Note that when we use utf-8, the BOM should appear as "EF BB BF", but it doesn't due to this bug in the JDK: - // http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4508058 - if (line && line.length() && line.charAt(0) === 0xfeff) { - // Eat the BOM, since we've already found the encoding on this file, - // and we plan to concatenating this buffer with others; the BOM should - // only appear at the top of a file. - line = line.substring(1); - } - - if (line !== null) { - stringBuffer.append(line); - } - - while ((line = input.readLine()) !== null) { - stringBuffer.append(lineSeparator); - stringBuffer.append(line); - } - //Make sure we return a JavaScript string and not a Java string. - content = String(stringBuffer.toString()); //String - } finally { - input.close(); - } - callback(content); - }; - } else if (masterConfig.env === 'xpconnect' || (!masterConfig.env && - typeof Components !== 'undefined' && Components.classes && - Components.interfaces)) { - //Avert your gaze! - Cc = Components.classes; - Ci = Components.interfaces; - Components.utils['import']('resource://gre/modules/FileUtils.jsm'); - xpcIsWindows = ('@mozilla.org/windows-registry-key;1' in Cc); - - text.get = function (url, callback) { - var inStream, convertStream, fileObj, - readData = {}; - - if (xpcIsWindows) { - url = url.replace(/\//g, '\\'); - } - - fileObj = new FileUtils.File(url); - - //XPCOM, you so crazy - try { - inStream = Cc['@mozilla.org/network/file-input-stream;1'] - .createInstance(Ci.nsIFileInputStream); - inStream.init(fileObj, 1, 0, false); - - convertStream = Cc['@mozilla.org/intl/converter-input-stream;1'] - .createInstance(Ci.nsIConverterInputStream); - convertStream.init(inStream, "utf-8", inStream.available(), - Ci.nsIConverterInputStream.DEFAULT_REPLACEMENT_CHARACTER); - - convertStream.readString(inStream.available(), readData); - convertStream.close(); - inStream.close(); - callback(readData.value); - } catch (e) { - throw new Error((fileObj && fileObj.path || '') + ': ' + e); - } - }; - } - return text; -}); - - -define('../node_modules/requirejs-text/text!print.style.css',[],function () { return 'body > * {\n visibility: hidden;\n}\nbody {\n overflow: hidden;\n}\nbody * {\n visibility: hidden !important;\n}\n\n.graphical-report__print-block {\n position: absolute;\n top: 0;\n left: 0;\n visibility: visible !important;\n display: block;\n width: 100%;\n /*height: 100%;*/\n}\n';}); - -(function() { - - - if (self.fetch) { - return - } - - function Headers(headers) { - this.map = {} - - var self = this - if (headers instanceof Headers) { - headers.forEach(function(name, values) { - values.forEach(function(value) { - self.append(name, value) - }) - }) - - } else if (headers) { - Object.getOwnPropertyNames(headers).forEach(function(name) { - self.append(name, headers[name]) - }) - } - } - - Headers.prototype.append = function(name, value) { - name = name.toLowerCase() - var list = this.map[name] - if (!list) { - list = [] - this.map[name] = list - } - list.push(value) - } - - Headers.prototype['delete'] = function(name) { - delete this.map[name.toLowerCase()] - } - - Headers.prototype.get = function(name) { - var values = this.map[name.toLowerCase()] - return values ? values[0] : null - } - - Headers.prototype.getAll = function(name) { - return this.map[name.toLowerCase()] || [] - } - - Headers.prototype.has = function(name) { - return this.map.hasOwnProperty(name.toLowerCase()) - } - - Headers.prototype.set = function(name, value) { - this.map[name.toLowerCase()] = [value] - } - - // Instead of iterable for now. - Headers.prototype.forEach = function(callback) { - var self = this - Object.getOwnPropertyNames(this.map).forEach(function(name) { - callback(name, self.map[name]) - }) - } - - function consumed(body) { - if (body.bodyUsed) { - return Promise.reject(new TypeError('Already read')) - } - body.bodyUsed = true - } - - function fileReaderReady(reader) { - return new Promise(function(resolve, reject) { - reader.onload = function() { - resolve(reader.result) - } - reader.onerror = function() { - reject(reader.error) - } - }) - } - - function readBlobAsArrayBuffer(blob) { - var reader = new FileReader() - reader.readAsArrayBuffer(blob) - return fileReaderReady(reader) - } - - function readBlobAsText(blob) { - var reader = new FileReader() - reader.readAsText(blob) - return fileReaderReady(reader) - } - - var blobSupport = 'FileReader' in self && 'Blob' in self && (function() { - try { - new Blob(); - return true - } catch(e) { - return false - } - })(); - - function Body() { - this.bodyUsed = false - - if (blobSupport) { - this.blob = function() { - var rejected = consumed(this) - return rejected ? rejected : Promise.resolve(this._bodyBlob) - } - - this.arrayBuffer = function() { - return this.blob().then(readBlobAsArrayBuffer) - } - - this.text = function() { - return this.blob().then(readBlobAsText) - } - } else { - this.text = function() { - var rejected = consumed(this) - return rejected ? rejected : Promise.resolve(this._bodyText) - } - } - - if ('FormData' in self) { - this.formData = function() { - return this.text().then(decode) - } - } - - this.json = function() { - return this.text().then(JSON.parse) - } - - return this - } - - // HTTP methods whose capitalization should be normalized - var methods = ['DELETE', 'GET', 'HEAD', 'OPTIONS', 'POST', 'PUT'] - - function normalizeMethod(method) { - var upcased = method.toUpperCase() - return (methods.indexOf(upcased) > -1) ? upcased : method - } - - function Request(url, options) { - options = options || {} - this.url = url - this._body = options.body - this.credentials = options.credentials || 'omit' - this.headers = new Headers(options.headers) - this.method = normalizeMethod(options.method || 'GET') - this.mode = options.mode || null - this.referrer = null - } - - function decode(body) { - var form = new FormData() - body.trim().split('&').forEach(function(bytes) { - if (bytes) { - var split = bytes.split('=') - var name = split.shift().replace(/\+/g, ' ') - var value = split.join('=').replace(/\+/g, ' ') - form.append(decodeURIComponent(name), decodeURIComponent(value)) - } - }) - return form - } - - function headers(xhr) { - var head = new Headers() - var pairs = xhr.getAllResponseHeaders().trim().split('\n') - pairs.forEach(function(header) { - var split = header.trim().split(':') - var key = split.shift().trim() - var value = split.join(':').trim() - head.append(key, value) - }) - return head - } - - Request.prototype.fetch = function() { - var self = this - - return new Promise(function(resolve, reject) { - var xhr = new XMLHttpRequest() - - function responseURL() { - if ('responseURL' in xhr) { - return xhr.responseURL - } - - // Avoid security warnings on getResponseHeader when not allowed by CORS - if (/^X-Request-URL:/m.test(xhr.getAllResponseHeaders())) { - return xhr.getResponseHeader('X-Request-URL') - } - - return; - } - - xhr.onload = function() { - var status = (xhr.status === 1223) ? 204 : xhr.status - if (status < 100 || status > 599) { - reject(new TypeError('Network request failed')) - return - } - var options = { - status: status, - statusText: xhr.statusText, - headers: headers(xhr), - url: responseURL() - } - var body = 'response' in xhr ? xhr.response : xhr.responseText; - resolve(new Response(body, options)) - } - - xhr.onerror = function() { - reject(new TypeError('Network request failed')) - } - - xhr.open(self.method, self.url) - if ('responseType' in xhr && blobSupport) { - xhr.responseType = 'blob' - } - - self.headers.forEach(function(name, values) { - values.forEach(function(value) { - xhr.setRequestHeader(name, value) - }) - }) - - xhr.send((self._body === undefined) ? null : self._body) - }) - } - - Body.call(Request.prototype) - - function Response(bodyInit, options) { - if (!options) { - options = {} - } - - if (blobSupport) { - if (typeof bodyInit === 'string') { - this._bodyBlob = new Blob([bodyInit]) - } else { - this._bodyBlob = bodyInit - } - } else { - this._bodyText = bodyInit - } - this.type = 'default' - this.url = null - this.status = options.status - this.statusText = options.statusText - this.headers = options.headers - this.url = options.url || '' - } - - Body.call(Response.prototype) - - self.Headers = Headers; - self.Request = Request; - self.Response = Response; - - self.fetch = function (url, options) { - return new Request(url, options).fetch() - } - self.fetch.polyfill = true -})(); - -define("../bower_components/fetch/fetch", function(){}); - -(function (factory) { - if (typeof define === "function" && define.amd) { - define('export',['tauCharts', 'canvg', 'FileSaver', 'promise', 'text!./print.style.css', 'fetch'], function (tauPlugins, canvg, saveAs, Promise, printCss) { - window.Promise = window.Promise || Promise.Promise; - return factory(tauPlugins, canvg, saveAs, window.Promise, printCss); - }); - } else { - factory(this.tauCharts, this.canvg, this.saveAs); - } -})(function (tauCharts, canvg, saveAs, Promise, printCss) { - var d3 = tauCharts.api.d3; - var _ = tauCharts.api._; - var dfs = function (node) { - if (node.color) { - return node; - } - var i, children = node.unit || [], child, found; - for (i = 0; i < children.length; i += 1) { - child = children[i]; - found = dfs(child); - if (found) { - return found; - } - } - }; - var keyCode = { - "BACKSPACE": 8, - "COMMA": 188, - "DELETE": 46, - "DOWN": 40, - "END": 35, - "ENTER": 13, - "ESCAPE": 27, - "HOME": 36, - "LEFT": 37, - "PAGE_DOWN": 34, - "PAGE_UP": 33, - "PERIOD": 190, - "RIGHT": 39, - "SPACE": 32, - "TAB": 9, - "UP": 38 - }; - var createStyleElement = function (styles, mediaType) { - mediaType = mediaType || 'all'; - var style = document.createElement('style'); - style.setAttribute('media', mediaType); - style.innerHTML = styles; - return style; - }; - var printStyles = createStyleElement(printCss, 'print'); - var imagePlaceHolder; - var removePrintStyles = function () { - if (printStyles.parentNode) { - printStyles.parentNode.removeChild(printStyles); - } - if (imagePlaceHolder.parentNode) { - imagePlaceHolder.parentNode.removeChild(imagePlaceHolder); - } - }; - if ('onafterprint' in window) { - window.addEventListener('afterprint', removePrintStyles); - } else { - window.matchMedia('screen').addListener(removePrintStyles); - } - var focusinDetected; - var isSupportFocusin = function isSupportFocusin() { - if (focusinDetected) { - return focusinDetected; - } - var hasIt = false; - - function swap() { - hasIt = true; - } - - var a = document.createElement('a'); - a.href = "#"; - a.addEventListener('focusin', swap, false); - - document.body.appendChild(a); - a.focus(); - document.body.removeChild(a); - focusinDetected = hasIt; - return hasIt; - }; - - function exportTo(settings) { - return { - _createDataUrl: function (chart) { - var cssPromises = this.cssPaths.map(function (css) { - return fetch(css).then(function (r) { - return r.text(); - }); - }); - return Promise - .all(cssPromises) - .then(function (res) { - return res.join(' '); - }).then(function (res) { - var style = createStyleElement(res); - var div = document.createElement('div'); - var svg = chart.getSVG().cloneNode(true); - div.appendChild(svg); - d3.select(svg).attr("version", 1.1) - .attr("xmlns", "http://www.w3.org/2000/svg"); - svg.insertBefore(style, svg.firstChild); - this._renderAdditionalInfo(svg, chart); - var canvas = document.createElement('canvas'); - canvas.height = svg.getAttribute('height'); - canvas.width = svg.getAttribute('width'); - canvg(canvas, svg.parentNode.innerHTML); - return canvas.toDataURL("image/png"); - }.bind(this)); - }, - _toPng: function (chart) { - this._createDataUrl(chart) - .then(function (dataURL) { - var data = atob(dataURL.substring("data:image/png;base64,".length)), - asArray = new Uint8Array(data.length); - - for (var i = 0, len = data.length; i < len; ++i) { - asArray[i] = data.charCodeAt(i); - } - - var blob = new Blob([asArray.buffer], {type: "image/png"}); - saveAs(blob); - }); - }, - _toPrint: function (chart) { - this._createDataUrl(chart) - .then(function (dataURL) { - imagePlaceHolder = document.createElement('img'); - imagePlaceHolder.classList.add('graphical-report__print-block'); - var img = imagePlaceHolder; - document.body.appendChild(img); - img.src = dataURL; - document.head.appendChild(printStyles); - img.onload = function () { - window.print(); - }; - }); - }, - _renderAdditionalInfo: function (svg, chart) { - var conf = chart.getConfig(); - var configUnit = dfs(conf.spec.unit); - if (!configUnit) { - return; - } - configUnit.guide = configUnit.guide || {}; - configUnit.guide.color = this._unit.guide.color; - var colorScaleName = configUnit.guide.color.label.text || this._unit.options.color.dimension; - svg = d3.select(svg); - var width = parseInt(svg.attr('width'), 10); - var height = svg.attr('height'); - svg.attr('width', width + 160); - var data = this._getColorMap(chart); - var draw = function () { - this.attr('transform', function (d, index) { - return 'translate(0,' + 20 * (index + 1) + ')'; - }); - this.append('circle') - .attr('r', 6) - .attr('class', function (d) { - return d.color; - }); - this.append('text').attr('x', 12).attr('y', 5) - .text(function (d) { - return d.label; - }).style({ - 'font-size': '13px' - }); - }; - var container = svg.append('g') - .attr('class', 'legend') - .attr('transform', 'translate(' + (width + 10) + ',20)'); - container.append('text').text(colorScaleName.toUpperCase()).style({ - 'text-transform': 'uppercase', - 'font-weight': '600', - 'font-size': '13px' - }); - container.selectAll('g') - .data(data).enter().append('g').call(draw); - }, - onUnitReady: function (chart, unit) { - if (unit.type.indexOf('ELEMENT') !== -1) { - this._unit = unit; - } - }, - _getColorMap: function (chart) { - var colorScale = this._unit.options.color; - var colorDimension = this._unit.color.scaleDim; - var data = chart.getData(); - return _(data) - .chain() - .map(function (item) { - return colorScale.legend(item[colorDimension]); - }) - .uniq(function (legendItem) { - return legendItem.value; - }) - .value() - .reduce(function (memo, item) { - memo.push(item); - return memo; - }, - []); - }, - _select: function (value, chart) { - value = value || ''; - var method = this['_to' + value.charAt(0).toUpperCase() + value.slice(1)]; - if (method) { - method.call(this, chart); - } - }, - _handleMenu: function (popupElement, chart, popup) { - popupElement.addEventListener('click', function (e) { - if (e.target.tagName.toLowerCase() === 'a') { - var value = e.target.getAttribute('data-value'); - this._select(value, chart); - popup.hide(); - } - }.bind(this)); - popupElement.addEventListener('keydown', function (e) { - if (e.keyCode === keyCode.ESCAPE) { - popup.hide(); - } - if (e.keyCode === keyCode.DOWN) { - if (e.target.parentNode.nextSibling) { - e.target.parentNode.nextSibling.childNodes[0].focus(); - } else { - e.target.parentNode.parentNode.firstChild.childNodes[0].focus(); - } - } - if (e.keyCode === keyCode.UP) { - if (e.target.parentNode.previousSibling) { - e.target.parentNode.previousSibling.childNodes[0].focus(); - } else { - e.target.parentNode.parentNode.lastChild.childNodes[0].focus(); - } - } - if (e.keyCode === keyCode.ENTER) { - var value = e.target.getAttribute('data-value'); - this._select(value, chart); - } - e.preventDefault(); - }.bind(this)); - var timeoutID = null; - var iSF = isSupportFocusin(); - var focusin = iSF ? 'focusin' : 'focus'; - var focusout = iSF ? 'focusout' : 'blur'; - popupElement.addEventListener(focusout, function () { - timeoutID = setTimeout(function () { - popup.hide(); - }, 100); - - }, !iSF); - popupElement.addEventListener(focusin, function () { - clearTimeout(timeoutID); - }, !iSF); - this._container.addEventListener('click', function () { - popup.toggle(); - if (!popup.hidden) { - popupElement.querySelectorAll('a')[0].focus(); - } - }); - }, - init: function (chart) { - settings = settings || {}; - this.cssPaths = settings.cssPaths; - if (!this.cssPaths) { - this.cssPaths = []; - tauCharts.api.globalSettings.log('You should specified cssPath for correct work export plugin', 'warn'); - } - this._container = chart.insertToHeader('Export>'); - var popup = chart.addBalloon({ - place: 'bottom-left' - }); - popup.content([ - '' - ].join('')); - popup.attach(this._container); - var popupElement = popup.getElement(); - popupElement.setAttribute('tabindex', '-1'); - this._handleMenu(popupElement, chart, popup); - chart.on('exportTo', function (chart, type) { - this._select(type, chart); - }.bind(this)); - } - }; - } - - tauCharts.api.plugins.add('exportTo', exportTo); - - return exportTo; -}) -; - - define('tauCharts',function(){ - return tauCharts; - }); - require.config({ - map:{ - '*':{ - 'canvg':'../bower_components/canvg/canvg', - 'FileSaver':'../bower_components/FileSaver.js/FileSaver', - 'rgbcolor': '../bower_components/canvg/rgbcolor', - 'stackblur': '../bower_components/canvg/StackBlur', - 'fetch':'../bower_components/fetch/fetch', - 'promise':'../bower_components/es6-promise/promise', - 'text': '../node_modules/requirejs-text/text' - } - } - }) - - return require('export'); -})); \ No newline at end of file diff --git a/build/development/tauCharts.js b/build/development/tauCharts.js index 24a41b520..eb1bafe48 100644 --- a/build/development/tauCharts.js +++ b/build/development/tauCharts.js @@ -1,4 +1,4 @@ -/*! taucharts - v0.3.7 - 2015-01-22 +/*! taucharts - v0.3.8 - 2015-01-22 * https://github.com/TargetProcess/tauCharts * Copyright (c) 2015 Taucraft Limited; Licensed Apache License 2.0 */ (function (root, factory) { @@ -566,7 +566,7 @@ define('dsl-reader',["exports"], function (exports) { _prototypeProperties(DSLReader, null, { buildGraph: { - value: function buildGraph(spec) { + value: function (spec) { var _this = this; var buildRecursively = function (unit) { return _this.UnitsRegistry.get(unit.type).walk(_this.domain.mix(unit), buildRecursively); @@ -578,7 +578,7 @@ define('dsl-reader',["exports"], function (exports) { configurable: true }, calcLayout: { - value: function calcLayout(graph, size) { + value: function (graph, size) { graph.options = { top: 0, left: 0, width: size.width, height: size.height }; var fnTraverseLayout = function (root) { @@ -644,7 +644,7 @@ define('dsl-reader',["exports"], function (exports) { configurable: true }, renderGraph: { - value: function renderGraph(styledGraph, target, xIterator) { + value: function (styledGraph, target, xIterator) { var _this2 = this; var iterator = xIterator || function (x) { return x; @@ -1282,26 +1282,27 @@ define('api/balloon',["exports", "../const"], function (exports, _const) { * @return {Void} */ Tooltip.reposition = (function () { - var requestReposition = function () { + var rAF = window.requestAnimationFrame || window.webkitRequestAnimationFrame || function (fn) { + return setTimeout(fn, 17); + }; + var rIndex; + + function requestReposition() { if (rIndex || !Tooltip.winAware.length) { return; } rIndex = rAF(reposition); - }; + } - var reposition = function () { + function reposition() { rIndex = 0; var tip; - for (var i = 0, l = Tooltip.winAware.length; i < l; i++) { + for (var i = 0, + l = Tooltip.winAware.length; i < l; i++) { tip = Tooltip.winAware[i]; tip.position(); } - }; - - var rAF = window.requestAnimationFrame || window.webkitRequestAnimationFrame || function (fn) { - return setTimeout(fn, 17); - }; - var rIndex; + } return requestReposition; })(); @@ -1428,7 +1429,7 @@ define('event',["exports"], function (exports) { * @param {object} callbacks Callback set. * @param {object=} context Context object. */ - value: function addHandler(callbacks, context) { + value: function (callbacks, context) { context = context || this; // add handler this.handler = { @@ -1442,7 +1443,7 @@ define('event',["exports"], function (exports) { configurable: true }, on: { - value: function on(name, callback, context) { + value: function (name, callback, context) { var obj = {}; obj[name] = callback; this.addHandler(obj, context); @@ -1453,7 +1454,7 @@ define('event',["exports"], function (exports) { configurable: true }, fire: { - value: function fire(name, data) { + value: function (name, data) { createDispatcher.call(this, name).call(this, data); }, writable: true, @@ -1468,7 +1469,7 @@ define('event',["exports"], function (exports) { * @param {object} callbacks Callback set. * @param {object=} context Context object. */ - value: function removeHandler(callbacks, context) { + value: function (callbacks, context) { var cursor = this; var prev; @@ -1499,7 +1500,7 @@ define('event',["exports"], function (exports) { /** * @destructor */ - value: function destroy() { + value: function () { // fire object destroy event handlers this.emit_destroy(); // drop event handlers if any @@ -2943,7 +2944,7 @@ define('plugins',["exports"], function (exports) { _prototypeProperties(Plugins, null, { initPlugin: { - value: function initPlugin(plugin) { + value: function (plugin) { var _this = this; if (plugin.init) { plugin.init(this.chart); @@ -3444,7 +3445,7 @@ define('unit-domain-mixin',["exports", "./unit-domain-period-generator", "./util _prototypeProperties(UnitDomainMixin, null, { mix: { - value: function mix(unit) { + value: function (unit) { unit.dimension = this.fnDimension; unit.source = this.fnSource; unit.domain = this.fnDomain; @@ -3780,7 +3781,7 @@ define('charts/tau.plot',["exports", "../dsl-reader", "../api/balloon", "../even _prototypeProperties(Plot, null, { setupConfig: { - value: function setupConfig(config) { + value: function (config) { if (!config.spec && !config.spec.unit) { throw new Error("Provide spec for plot"); } @@ -3820,7 +3821,7 @@ define('charts/tau.plot',["exports", "../dsl-reader", "../api/balloon", "../even configurable: true }, getConfig: { - value: function getConfig() { + value: function () { return this.config; }, writable: true, @@ -3828,7 +3829,7 @@ define('charts/tau.plot',["exports", "../dsl-reader", "../api/balloon", "../even configurable: true }, setupMetaInfo: { - value: function setupMetaInfo(dims, data) { + value: function (dims, data) { var meta = dims ? dims : DataProcessor.autoDetectDimTypes(data); return DataProcessor.autoAssignScales(meta); }, @@ -3837,7 +3838,7 @@ define('charts/tau.plot',["exports", "../dsl-reader", "../api/balloon", "../even configurable: true }, setupSettings: { - value: function setupSettings(configSettings) { + value: function (configSettings) { var globalSettings = Plot.globalSettings; var localSettings = {}; Object.keys(globalSettings).forEach(function (k) { @@ -3851,7 +3852,7 @@ define('charts/tau.plot',["exports", "../dsl-reader", "../api/balloon", "../even configurable: true }, insertToRightSidebar: { - value: function insertToRightSidebar(el) { + value: function (el) { return utilsDom.appendTo(el, this._layout.rightSidebar); }, writable: true, @@ -3859,7 +3860,7 @@ define('charts/tau.plot',["exports", "../dsl-reader", "../api/balloon", "../even configurable: true }, insertToHeader: { - value: function insertToHeader(el) { + value: function (el) { return utilsDom.appendTo(el, this._layout.header); }, writable: true, @@ -3867,7 +3868,7 @@ define('charts/tau.plot',["exports", "../dsl-reader", "../api/balloon", "../even configurable: true }, addBalloon: { - value: function addBalloon(conf) { + value: function (conf) { return new Tooltip("", conf || {}); }, writable: true, @@ -3875,7 +3876,7 @@ define('charts/tau.plot',["exports", "../dsl-reader", "../api/balloon", "../even configurable: true }, renderTo: { - value: function renderTo(target, xSize) { + value: function (target, xSize) { this._renderGraph = null; this._svg = null; this._defaultSize = _.clone(xSize); @@ -3938,7 +3939,7 @@ define('charts/tau.plot',["exports", "../dsl-reader", "../api/balloon", "../even configurable: true }, getData: { - value: function getData(param) { + value: function (param) { param = param || {}; var filters = _.chain(this._filtersStore.filters).values().flatten().reject(function (filter) { return _.contains(param.excludeFilter, filter.tag); @@ -3956,7 +3957,7 @@ define('charts/tau.plot',["exports", "../dsl-reader", "../api/balloon", "../even configurable: true }, setData: { - value: function setData(data) { + value: function (data) { this.config.data = data; this.refresh(); }, @@ -3965,7 +3966,7 @@ define('charts/tau.plot',["exports", "../dsl-reader", "../api/balloon", "../even configurable: true }, getSVG: { - value: function getSVG() { + value: function () { return this._svg; }, writable: true, @@ -3973,7 +3974,7 @@ define('charts/tau.plot',["exports", "../dsl-reader", "../api/balloon", "../even configurable: true }, addFilter: { - value: function addFilter(filter) { + value: function (filter) { var tag = filter.tag; var filters = this._filtersStore.filters[tag] = this._filtersStore.filters[tag] || []; var id = this._filtersStore.tick++; @@ -3987,7 +3988,7 @@ define('charts/tau.plot',["exports", "../dsl-reader", "../api/balloon", "../even configurable: true }, removeFilter: { - value: function removeFilter(id) { + value: function (id) { var _this = this; _.each(this._filtersStore.filters, function (filters, key) { _this._filtersStore.filters[key] = _.reject(filters, function (item) { @@ -4001,7 +4002,7 @@ define('charts/tau.plot',["exports", "../dsl-reader", "../api/balloon", "../even configurable: true }, refresh: { - value: function refresh() { + value: function () { if (this._target) { this.renderTo(this._target, this._defaultSize); } @@ -4011,7 +4012,7 @@ define('charts/tau.plot',["exports", "../dsl-reader", "../api/balloon", "../even configurable: true }, resize: { - value: function resize() { + value: function () { var sizes = arguments[0] === undefined ? {} : arguments[0]; this.renderTo(this._target, sizes); }, @@ -4020,7 +4021,7 @@ define('charts/tau.plot',["exports", "../dsl-reader", "../api/balloon", "../even configurable: true }, select: { - value: function select(queryFilter) { + value: function (queryFilter) { var r = []; if (!this._renderGraph) { @@ -4367,7 +4368,7 @@ define('charts/tau.chart',["exports", "./tau.plot", "../utils/utils", "../data-p _prototypeProperties(Chart, null, { destroy: { - value: function destroy() { + value: function () { var index = Chart.winAware.indexOf(this); if (index !== -1) { Chart.winAware.splice(index, 1); @@ -4384,26 +4385,27 @@ define('charts/tau.chart',["exports", "./tau.plot", "../utils/utils", "../data-p })(Plot); Chart.resizeOnWindowEvent = (function () { - var requestReposition = function () { + var rAF = window.requestAnimationFrame || window.webkitRequestAnimationFrame || function (fn) { + return setTimeout(fn, 17); + }; + var rIndex; + + function requestReposition() { if (rIndex || !Chart.winAware.length) { return; } rIndex = rAF(resize); - }; + } - var resize = function () { + function resize() { rIndex = 0; var chart; - for (var i = 0, l = Chart.winAware.length; i < l; i++) { + for (var i = 0, + l = Chart.winAware.length; i < l; i++) { chart = Chart.winAware[i]; chart.resize(); } - }; - - var rAF = window.requestAnimationFrame || window.webkitRequestAnimationFrame || function (fn) { - return setTimeout(fn, 17); - }; - var rIndex; + } return requestReposition; })(); diff --git a/build/production/tauCharts.min.css b/build/production/tauCharts.min.css index 1a2160de9..7acb15af2 100644 --- a/build/production/tauCharts.min.css +++ b/build/production/tauCharts.min.css @@ -1,3 +1,3 @@ -/*! taucharts - v0.3.7 - 2015-01-22 +/*! taucharts - v0.3.8 - 2015-01-22 * https://github.com/TargetProcess/tauCharts -* Copyright (c) 2015 Taucraft Limited; Licensed Apache License 2.0 */.YlGn.q0-3{fill:#f7fcb9;background:#f7fcb9;stroke:#f7fcb9}.YlGn.q1-3{fill:#addd8e;background:#addd8e;stroke:#addd8e}.YlGn.q2-3{fill:#31a354;background:#31a354;stroke:#31a354}.YlGn.q0-4{fill:#ffc;background:#ffc;stroke:#ffc}.YlGn.q1-4{fill:#c2e699;background:#c2e699;stroke:#c2e699}.YlGn.q2-4{fill:#78c679;background:#78c679;stroke:#78c679}.YlGn.q3-4{fill:#238443;background:#238443;stroke:#238443}.YlGn.q0-5{fill:#ffc;background:#ffc;stroke:#ffc}.YlGn.q1-5{fill:#c2e699;background:#c2e699;stroke:#c2e699}.YlGn.q2-5{fill:#78c679;background:#78c679;stroke:#78c679}.YlGn.q3-5{fill:#31a354;background:#31a354;stroke:#31a354}.YlGn.q4-5{fill:#006837;background:#006837;stroke:#006837}.YlGn.q0-6{fill:#ffc;background:#ffc;stroke:#ffc}.YlGn.q1-6{fill:#d9f0a3;background:#d9f0a3;stroke:#d9f0a3}.YlGn.q2-6{fill:#addd8e;background:#addd8e;stroke:#addd8e}.YlGn.q3-6{fill:#78c679;background:#78c679;stroke:#78c679}.YlGn.q4-6{fill:#31a354;background:#31a354;stroke:#31a354}.YlGn.q5-6{fill:#006837;background:#006837;stroke:#006837}.YlGn.q0-7{fill:#ffc;background:#ffc;stroke:#ffc}.YlGn.q1-7{fill:#d9f0a3;background:#d9f0a3;stroke:#d9f0a3}.YlGn.q2-7{fill:#addd8e;background:#addd8e;stroke:#addd8e}.YlGn.q3-7{fill:#78c679;background:#78c679;stroke:#78c679}.YlGn.q4-7{fill:#41ab5d;background:#41ab5d;stroke:#41ab5d}.YlGn.q5-7{fill:#238443;background:#238443;stroke:#238443}.YlGn.q6-7{fill:#005a32;background:#005a32;stroke:#005a32}.YlGn.q0-8{fill:#ffffe5;background:#ffffe5;stroke:#ffffe5}.YlGn.q1-8{fill:#f7fcb9;background:#f7fcb9;stroke:#f7fcb9}.YlGn.q2-8{fill:#d9f0a3;background:#d9f0a3;stroke:#d9f0a3}.YlGn.q3-8{fill:#addd8e;background:#addd8e;stroke:#addd8e}.YlGn.q4-8{fill:#78c679;background:#78c679;stroke:#78c679}.YlGn.q5-8{fill:#41ab5d;background:#41ab5d;stroke:#41ab5d}.YlGn.q6-8{fill:#238443;background:#238443;stroke:#238443}.YlGn.q7-8{fill:#005a32;background:#005a32;stroke:#005a32}.YlGn.q0-9{fill:#ffffe5;background:#ffffe5;stroke:#ffffe5}.YlGn.q1-9{fill:#f7fcb9;background:#f7fcb9;stroke:#f7fcb9}.YlGn.q2-9{fill:#d9f0a3;background:#d9f0a3;stroke:#d9f0a3}.YlGn.q3-9{fill:#addd8e;background:#addd8e;stroke:#addd8e}.YlGn.q4-9{fill:#78c679;background:#78c679;stroke:#78c679}.YlGn.q5-9{fill:#41ab5d;background:#41ab5d;stroke:#41ab5d}.YlGn.q6-9{fill:#238443;background:#238443;stroke:#238443}.YlGn.q7-9{fill:#006837;background:#006837;stroke:#006837}.YlGn.q8-9{fill:#004529;background:#004529;stroke:#004529}.YlGnBu.q0-3{fill:#edf8b1;background:#edf8b1;stroke:#edf8b1}.YlGnBu.q1-3{fill:#7fcdbb;background:#7fcdbb;stroke:#7fcdbb}.YlGnBu.q2-3{fill:#2c7fb8;background:#2c7fb8;stroke:#2c7fb8}.YlGnBu.q0-4{fill:#ffc;background:#ffc;stroke:#ffc}.YlGnBu.q1-4{fill:#a1dab4;background:#a1dab4;stroke:#a1dab4}.YlGnBu.q2-4{fill:#41b6c4;background:#41b6c4;stroke:#41b6c4}.YlGnBu.q3-4{fill:#225ea8;background:#225ea8;stroke:#225ea8}.YlGnBu.q0-5{fill:#ffc;background:#ffc;stroke:#ffc}.YlGnBu.q1-5{fill:#a1dab4;background:#a1dab4;stroke:#a1dab4}.YlGnBu.q2-5{fill:#41b6c4;background:#41b6c4;stroke:#41b6c4}.YlGnBu.q3-5{fill:#2c7fb8;background:#2c7fb8;stroke:#2c7fb8}.YlGnBu.q4-5{fill:#253494;background:#253494;stroke:#253494}.YlGnBu.q0-6{fill:#ffc;background:#ffc;stroke:#ffc}.YlGnBu.q1-6{fill:#c7e9b4;background:#c7e9b4;stroke:#c7e9b4}.YlGnBu.q2-6{fill:#7fcdbb;background:#7fcdbb;stroke:#7fcdbb}.YlGnBu.q3-6{fill:#41b6c4;background:#41b6c4;stroke:#41b6c4}.YlGnBu.q4-6{fill:#2c7fb8;background:#2c7fb8;stroke:#2c7fb8}.YlGnBu.q5-6{fill:#253494;background:#253494;stroke:#253494}.YlGnBu.q0-7{fill:#ffc;background:#ffc;stroke:#ffc}.YlGnBu.q1-7{fill:#c7e9b4;background:#c7e9b4;stroke:#c7e9b4}.YlGnBu.q2-7{fill:#7fcdbb;background:#7fcdbb;stroke:#7fcdbb}.YlGnBu.q3-7{fill:#41b6c4;background:#41b6c4;stroke:#41b6c4}.YlGnBu.q4-7{fill:#1d91c0;background:#1d91c0;stroke:#1d91c0}.YlGnBu.q5-7{fill:#225ea8;background:#225ea8;stroke:#225ea8}.YlGnBu.q6-7{fill:#0c2c84;background:#0c2c84;stroke:#0c2c84}.YlGnBu.q0-8{fill:#ffffd9;background:#ffffd9;stroke:#ffffd9}.YlGnBu.q1-8{fill:#edf8b1;background:#edf8b1;stroke:#edf8b1}.YlGnBu.q2-8{fill:#c7e9b4;background:#c7e9b4;stroke:#c7e9b4}.YlGnBu.q3-8{fill:#7fcdbb;background:#7fcdbb;stroke:#7fcdbb}.YlGnBu.q4-8{fill:#41b6c4;background:#41b6c4;stroke:#41b6c4}.YlGnBu.q5-8{fill:#1d91c0;background:#1d91c0;stroke:#1d91c0}.YlGnBu.q6-8{fill:#225ea8;background:#225ea8;stroke:#225ea8}.YlGnBu.q7-8{fill:#0c2c84;background:#0c2c84;stroke:#0c2c84}.YlGnBu.q0-9{fill:#ffffd9;background:#ffffd9;stroke:#ffffd9}.YlGnBu.q1-9{fill:#edf8b1;background:#edf8b1;stroke:#edf8b1}.YlGnBu.q2-9{fill:#c7e9b4;background:#c7e9b4;stroke:#c7e9b4}.YlGnBu.q3-9{fill:#7fcdbb;background:#7fcdbb;stroke:#7fcdbb}.YlGnBu.q4-9{fill:#41b6c4;background:#41b6c4;stroke:#41b6c4}.YlGnBu.q5-9{fill:#1d91c0;background:#1d91c0;stroke:#1d91c0}.YlGnBu.q6-9{fill:#225ea8;background:#225ea8;stroke:#225ea8}.YlGnBu.q7-9{fill:#253494;background:#253494;stroke:#253494}.YlGnBu.q8-9{fill:#081d58;background:#081d58;stroke:#081d58}.GnBu.q0-3{fill:#e0f3db;background:#e0f3db;stroke:#e0f3db}.GnBu.q1-3{fill:#a8ddb5;background:#a8ddb5;stroke:#a8ddb5}.GnBu.q2-3{fill:#43a2ca;background:#43a2ca;stroke:#43a2ca}.GnBu.q0-4{fill:#f0f9e8;background:#f0f9e8;stroke:#f0f9e8}.GnBu.q1-4{fill:#bae4bc;background:#bae4bc;stroke:#bae4bc}.GnBu.q2-4{fill:#7bccc4;background:#7bccc4;stroke:#7bccc4}.GnBu.q3-4{fill:#2b8cbe;background:#2b8cbe;stroke:#2b8cbe}.GnBu.q0-5{fill:#f0f9e8;background:#f0f9e8;stroke:#f0f9e8}.GnBu.q1-5{fill:#bae4bc;background:#bae4bc;stroke:#bae4bc}.GnBu.q2-5{fill:#7bccc4;background:#7bccc4;stroke:#7bccc4}.GnBu.q3-5{fill:#43a2ca;background:#43a2ca;stroke:#43a2ca}.GnBu.q4-5{fill:#0868ac;background:#0868ac;stroke:#0868ac}.GnBu.q0-6{fill:#f0f9e8;background:#f0f9e8;stroke:#f0f9e8}.GnBu.q1-6{fill:#ccebc5;background:#ccebc5;stroke:#ccebc5}.GnBu.q2-6{fill:#a8ddb5;background:#a8ddb5;stroke:#a8ddb5}.GnBu.q3-6{fill:#7bccc4;background:#7bccc4;stroke:#7bccc4}.GnBu.q4-6{fill:#43a2ca;background:#43a2ca;stroke:#43a2ca}.GnBu.q5-6{fill:#0868ac;background:#0868ac;stroke:#0868ac}.GnBu.q0-7{fill:#f0f9e8;background:#f0f9e8;stroke:#f0f9e8}.GnBu.q1-7{fill:#ccebc5;background:#ccebc5;stroke:#ccebc5}.GnBu.q2-7{fill:#a8ddb5;background:#a8ddb5;stroke:#a8ddb5}.GnBu.q3-7{fill:#7bccc4;background:#7bccc4;stroke:#7bccc4}.GnBu.q4-7{fill:#4eb3d3;background:#4eb3d3;stroke:#4eb3d3}.GnBu.q5-7{fill:#2b8cbe;background:#2b8cbe;stroke:#2b8cbe}.GnBu.q6-7{fill:#08589e;background:#08589e;stroke:#08589e}.GnBu.q0-8{fill:#f7fcf0;background:#f7fcf0;stroke:#f7fcf0}.GnBu.q1-8{fill:#e0f3db;background:#e0f3db;stroke:#e0f3db}.GnBu.q2-8{fill:#ccebc5;background:#ccebc5;stroke:#ccebc5}.GnBu.q3-8{fill:#a8ddb5;background:#a8ddb5;stroke:#a8ddb5}.GnBu.q4-8{fill:#7bccc4;background:#7bccc4;stroke:#7bccc4}.GnBu.q5-8{fill:#4eb3d3;background:#4eb3d3;stroke:#4eb3d3}.GnBu.q6-8{fill:#2b8cbe;background:#2b8cbe;stroke:#2b8cbe}.GnBu.q7-8{fill:#08589e;background:#08589e;stroke:#08589e}.GnBu.q0-9{fill:#f7fcf0;background:#f7fcf0;stroke:#f7fcf0}.GnBu.q1-9{fill:#e0f3db;background:#e0f3db;stroke:#e0f3db}.GnBu.q2-9{fill:#ccebc5;background:#ccebc5;stroke:#ccebc5}.GnBu.q3-9{fill:#a8ddb5;background:#a8ddb5;stroke:#a8ddb5}.GnBu.q4-9{fill:#7bccc4;background:#7bccc4;stroke:#7bccc4}.GnBu.q5-9{fill:#4eb3d3;background:#4eb3d3;stroke:#4eb3d3}.GnBu.q6-9{fill:#2b8cbe;background:#2b8cbe;stroke:#2b8cbe}.GnBu.q7-9{fill:#0868ac;background:#0868ac;stroke:#0868ac}.GnBu.q8-9{fill:#084081;background:#084081;stroke:#084081}.BuGn.q0-3{fill:#e5f5f9;background:#e5f5f9;stroke:#e5f5f9}.BuGn.q1-3{fill:#99d8c9;background:#99d8c9;stroke:#99d8c9}.BuGn.q2-3{fill:#2ca25f;background:#2ca25f;stroke:#2ca25f}.BuGn.q0-4{fill:#edf8fb;background:#edf8fb;stroke:#edf8fb}.BuGn.q1-4{fill:#b2e2e2;background:#b2e2e2;stroke:#b2e2e2}.BuGn.q2-4{fill:#66c2a4;background:#66c2a4;stroke:#66c2a4}.BuGn.q3-4{fill:#238b45;background:#238b45;stroke:#238b45}.BuGn.q0-5{fill:#edf8fb;background:#edf8fb;stroke:#edf8fb}.BuGn.q1-5{fill:#b2e2e2;background:#b2e2e2;stroke:#b2e2e2}.BuGn.q2-5{fill:#66c2a4;background:#66c2a4;stroke:#66c2a4}.BuGn.q3-5{fill:#2ca25f;background:#2ca25f;stroke:#2ca25f}.BuGn.q4-5{fill:#006d2c;background:#006d2c;stroke:#006d2c}.BuGn.q0-6{fill:#edf8fb;background:#edf8fb;stroke:#edf8fb}.BuGn.q1-6{fill:#ccece6;background:#ccece6;stroke:#ccece6}.BuGn.q2-6{fill:#99d8c9;background:#99d8c9;stroke:#99d8c9}.BuGn.q3-6{fill:#66c2a4;background:#66c2a4;stroke:#66c2a4}.BuGn.q4-6{fill:#2ca25f;background:#2ca25f;stroke:#2ca25f}.BuGn.q5-6{fill:#006d2c;background:#006d2c;stroke:#006d2c}.BuGn.q0-7{fill:#edf8fb;background:#edf8fb;stroke:#edf8fb}.BuGn.q1-7{fill:#ccece6;background:#ccece6;stroke:#ccece6}.BuGn.q2-7{fill:#99d8c9;background:#99d8c9;stroke:#99d8c9}.BuGn.q3-7{fill:#66c2a4;background:#66c2a4;stroke:#66c2a4}.BuGn.q4-7{fill:#41ae76;background:#41ae76;stroke:#41ae76}.BuGn.q5-7{fill:#238b45;background:#238b45;stroke:#238b45}.BuGn.q6-7{fill:#005824;background:#005824;stroke:#005824}.BuGn.q0-8{fill:#f7fcfd;background:#f7fcfd;stroke:#f7fcfd}.BuGn.q1-8{fill:#e5f5f9;background:#e5f5f9;stroke:#e5f5f9}.BuGn.q2-8{fill:#ccece6;background:#ccece6;stroke:#ccece6}.BuGn.q3-8{fill:#99d8c9;background:#99d8c9;stroke:#99d8c9}.BuGn.q4-8{fill:#66c2a4;background:#66c2a4;stroke:#66c2a4}.BuGn.q5-8{fill:#41ae76;background:#41ae76;stroke:#41ae76}.BuGn.q6-8{fill:#238b45;background:#238b45;stroke:#238b45}.BuGn.q7-8{fill:#005824;background:#005824;stroke:#005824}.BuGn.q0-9{fill:#f7fcfd;background:#f7fcfd;stroke:#f7fcfd}.BuGn.q1-9{fill:#e5f5f9;background:#e5f5f9;stroke:#e5f5f9}.BuGn.q2-9{fill:#ccece6;background:#ccece6;stroke:#ccece6}.BuGn.q3-9{fill:#99d8c9;background:#99d8c9;stroke:#99d8c9}.BuGn.q4-9{fill:#66c2a4;background:#66c2a4;stroke:#66c2a4}.BuGn.q5-9{fill:#41ae76;background:#41ae76;stroke:#41ae76}.BuGn.q6-9{fill:#238b45;background:#238b45;stroke:#238b45}.BuGn.q7-9{fill:#006d2c;background:#006d2c;stroke:#006d2c}.BuGn.q8-9{fill:#00441b;background:#00441b;stroke:#00441b}.PuBuGn.q0-3{fill:#ece2f0;background:#ece2f0;stroke:#ece2f0}.PuBuGn.q1-3{fill:#a6bddb;background:#a6bddb;stroke:#a6bddb}.PuBuGn.q2-3{fill:#1c9099;background:#1c9099;stroke:#1c9099}.PuBuGn.q0-4{fill:#f6eff7;background:#f6eff7;stroke:#f6eff7}.PuBuGn.q1-4{fill:#bdc9e1;background:#bdc9e1;stroke:#bdc9e1}.PuBuGn.q2-4{fill:#67a9cf;background:#67a9cf;stroke:#67a9cf}.PuBuGn.q3-4{fill:#02818a;background:#02818a;stroke:#02818a}.PuBuGn.q0-5{fill:#f6eff7;background:#f6eff7;stroke:#f6eff7}.PuBuGn.q1-5{fill:#bdc9e1;background:#bdc9e1;stroke:#bdc9e1}.PuBuGn.q2-5{fill:#67a9cf;background:#67a9cf;stroke:#67a9cf}.PuBuGn.q3-5{fill:#1c9099;background:#1c9099;stroke:#1c9099}.PuBuGn.q4-5{fill:#016c59;background:#016c59;stroke:#016c59}.PuBuGn.q0-6{fill:#f6eff7;background:#f6eff7;stroke:#f6eff7}.PuBuGn.q1-6{fill:#d0d1e6;background:#d0d1e6;stroke:#d0d1e6}.PuBuGn.q2-6{fill:#a6bddb;background:#a6bddb;stroke:#a6bddb}.PuBuGn.q3-6{fill:#67a9cf;background:#67a9cf;stroke:#67a9cf}.PuBuGn.q4-6{fill:#1c9099;background:#1c9099;stroke:#1c9099}.PuBuGn.q5-6{fill:#016c59;background:#016c59;stroke:#016c59}.PuBuGn.q0-7{fill:#f6eff7;background:#f6eff7;stroke:#f6eff7}.PuBuGn.q1-7{fill:#d0d1e6;background:#d0d1e6;stroke:#d0d1e6}.PuBuGn.q2-7{fill:#a6bddb;background:#a6bddb;stroke:#a6bddb}.PuBuGn.q3-7{fill:#67a9cf;background:#67a9cf;stroke:#67a9cf}.PuBuGn.q4-7{fill:#3690c0;background:#3690c0;stroke:#3690c0}.PuBuGn.q5-7{fill:#02818a;background:#02818a;stroke:#02818a}.PuBuGn.q6-7{fill:#016450;background:#016450;stroke:#016450}.PuBuGn.q0-8{fill:#fff7fb;background:#fff7fb;stroke:#fff7fb}.PuBuGn.q1-8{fill:#ece2f0;background:#ece2f0;stroke:#ece2f0}.PuBuGn.q2-8{fill:#d0d1e6;background:#d0d1e6;stroke:#d0d1e6}.PuBuGn.q3-8{fill:#a6bddb;background:#a6bddb;stroke:#a6bddb}.PuBuGn.q4-8{fill:#67a9cf;background:#67a9cf;stroke:#67a9cf}.PuBuGn.q5-8{fill:#3690c0;background:#3690c0;stroke:#3690c0}.PuBuGn.q6-8{fill:#02818a;background:#02818a;stroke:#02818a}.PuBuGn.q7-8{fill:#016450;background:#016450;stroke:#016450}.PuBuGn.q0-9{fill:#fff7fb;background:#fff7fb;stroke:#fff7fb}.PuBuGn.q1-9{fill:#ece2f0;background:#ece2f0;stroke:#ece2f0}.PuBuGn.q2-9{fill:#d0d1e6;background:#d0d1e6;stroke:#d0d1e6}.PuBuGn.q3-9{fill:#a6bddb;background:#a6bddb;stroke:#a6bddb}.PuBuGn.q4-9{fill:#67a9cf;background:#67a9cf;stroke:#67a9cf}.PuBuGn.q5-9{fill:#3690c0;background:#3690c0;stroke:#3690c0}.PuBuGn.q6-9{fill:#02818a;background:#02818a;stroke:#02818a}.PuBuGn.q7-9{fill:#016c59;background:#016c59;stroke:#016c59}.PuBuGn.q8-9{fill:#014636;background:#014636;stroke:#014636}.PuBu.q0-3{fill:#ece7f2;background:#ece7f2;stroke:#ece7f2}.PuBu.q1-3{fill:#a6bddb;background:#a6bddb;stroke:#a6bddb}.PuBu.q2-3{fill:#2b8cbe;background:#2b8cbe;stroke:#2b8cbe}.PuBu.q0-4{fill:#f1eef6;background:#f1eef6;stroke:#f1eef6}.PuBu.q1-4{fill:#bdc9e1;background:#bdc9e1;stroke:#bdc9e1}.PuBu.q2-4{fill:#74a9cf;background:#74a9cf;stroke:#74a9cf}.PuBu.q3-4{fill:#0570b0;background:#0570b0;stroke:#0570b0}.PuBu.q0-5{fill:#f1eef6;background:#f1eef6;stroke:#f1eef6}.PuBu.q1-5{fill:#bdc9e1;background:#bdc9e1;stroke:#bdc9e1}.PuBu.q2-5{fill:#74a9cf;background:#74a9cf;stroke:#74a9cf}.PuBu.q3-5{fill:#2b8cbe;background:#2b8cbe;stroke:#2b8cbe}.PuBu.q4-5{fill:#045a8d;background:#045a8d;stroke:#045a8d}.PuBu.q0-6{fill:#f1eef6;background:#f1eef6;stroke:#f1eef6}.PuBu.q1-6{fill:#d0d1e6;background:#d0d1e6;stroke:#d0d1e6}.PuBu.q2-6{fill:#a6bddb;background:#a6bddb;stroke:#a6bddb}.PuBu.q3-6{fill:#74a9cf;background:#74a9cf;stroke:#74a9cf}.PuBu.q4-6{fill:#2b8cbe;background:#2b8cbe;stroke:#2b8cbe}.PuBu.q5-6{fill:#045a8d;background:#045a8d;stroke:#045a8d}.PuBu.q0-7{fill:#f1eef6;background:#f1eef6;stroke:#f1eef6}.PuBu.q1-7{fill:#d0d1e6;background:#d0d1e6;stroke:#d0d1e6}.PuBu.q2-7{fill:#a6bddb;background:#a6bddb;stroke:#a6bddb}.PuBu.q3-7{fill:#74a9cf;background:#74a9cf;stroke:#74a9cf}.PuBu.q4-7{fill:#3690c0;background:#3690c0;stroke:#3690c0}.PuBu.q5-7{fill:#0570b0;background:#0570b0;stroke:#0570b0}.PuBu.q6-7{fill:#034e7b;background:#034e7b;stroke:#034e7b}.PuBu.q0-8{fill:#fff7fb;background:#fff7fb;stroke:#fff7fb}.PuBu.q1-8{fill:#ece7f2;background:#ece7f2;stroke:#ece7f2}.PuBu.q2-8{fill:#d0d1e6;background:#d0d1e6;stroke:#d0d1e6}.PuBu.q3-8{fill:#a6bddb;background:#a6bddb;stroke:#a6bddb}.PuBu.q4-8{fill:#74a9cf;background:#74a9cf;stroke:#74a9cf}.PuBu.q5-8{fill:#3690c0;background:#3690c0;stroke:#3690c0}.PuBu.q6-8{fill:#0570b0;background:#0570b0;stroke:#0570b0}.PuBu.q7-8{fill:#034e7b;background:#034e7b;stroke:#034e7b}.PuBu.q0-9{fill:#fff7fb;background:#fff7fb;stroke:#fff7fb}.PuBu.q1-9{fill:#ece7f2;background:#ece7f2;stroke:#ece7f2}.PuBu.q2-9{fill:#d0d1e6;background:#d0d1e6;stroke:#d0d1e6}.PuBu.q3-9{fill:#a6bddb;background:#a6bddb;stroke:#a6bddb}.PuBu.q4-9{fill:#74a9cf;background:#74a9cf;stroke:#74a9cf}.PuBu.q5-9{fill:#3690c0;background:#3690c0;stroke:#3690c0}.PuBu.q6-9{fill:#0570b0;background:#0570b0;stroke:#0570b0}.PuBu.q7-9{fill:#045a8d;background:#045a8d;stroke:#045a8d}.PuBu.q8-9{fill:#023858;background:#023858;stroke:#023858}.BuPu.q0-3{fill:#e0ecf4;background:#e0ecf4;stroke:#e0ecf4}.BuPu.q1-3{fill:#9ebcda;background:#9ebcda;stroke:#9ebcda}.BuPu.q2-3{fill:#8856a7;background:#8856a7;stroke:#8856a7}.BuPu.q0-4{fill:#edf8fb;background:#edf8fb;stroke:#edf8fb}.BuPu.q1-4{fill:#b3cde3;background:#b3cde3;stroke:#b3cde3}.BuPu.q2-4{fill:#8c96c6;background:#8c96c6;stroke:#8c96c6}.BuPu.q3-4{fill:#88419d;background:#88419d;stroke:#88419d}.BuPu.q0-5{fill:#edf8fb;background:#edf8fb;stroke:#edf8fb}.BuPu.q1-5{fill:#b3cde3;background:#b3cde3;stroke:#b3cde3}.BuPu.q2-5{fill:#8c96c6;background:#8c96c6;stroke:#8c96c6}.BuPu.q3-5{fill:#8856a7;background:#8856a7;stroke:#8856a7}.BuPu.q4-5{fill:#810f7c;background:#810f7c;stroke:#810f7c}.BuPu.q0-6{fill:#edf8fb;background:#edf8fb;stroke:#edf8fb}.BuPu.q1-6{fill:#bfd3e6;background:#bfd3e6;stroke:#bfd3e6}.BuPu.q2-6{fill:#9ebcda;background:#9ebcda;stroke:#9ebcda}.BuPu.q3-6{fill:#8c96c6;background:#8c96c6;stroke:#8c96c6}.BuPu.q4-6{fill:#8856a7;background:#8856a7;stroke:#8856a7}.BuPu.q5-6{fill:#810f7c;background:#810f7c;stroke:#810f7c}.BuPu.q0-7{fill:#edf8fb;background:#edf8fb;stroke:#edf8fb}.BuPu.q1-7{fill:#bfd3e6;background:#bfd3e6;stroke:#bfd3e6}.BuPu.q2-7{fill:#9ebcda;background:#9ebcda;stroke:#9ebcda}.BuPu.q3-7{fill:#8c96c6;background:#8c96c6;stroke:#8c96c6}.BuPu.q4-7{fill:#8c6bb1;background:#8c6bb1;stroke:#8c6bb1}.BuPu.q5-7{fill:#88419d;background:#88419d;stroke:#88419d}.BuPu.q6-7{fill:#6e016b;background:#6e016b;stroke:#6e016b}.BuPu.q0-8{fill:#f7fcfd;background:#f7fcfd;stroke:#f7fcfd}.BuPu.q1-8{fill:#e0ecf4;background:#e0ecf4;stroke:#e0ecf4}.BuPu.q2-8{fill:#bfd3e6;background:#bfd3e6;stroke:#bfd3e6}.BuPu.q3-8{fill:#9ebcda;background:#9ebcda;stroke:#9ebcda}.BuPu.q4-8{fill:#8c96c6;background:#8c96c6;stroke:#8c96c6}.BuPu.q5-8{fill:#8c6bb1;background:#8c6bb1;stroke:#8c6bb1}.BuPu.q6-8{fill:#88419d;background:#88419d;stroke:#88419d}.BuPu.q7-8{fill:#6e016b;background:#6e016b;stroke:#6e016b}.BuPu.q0-9{fill:#f7fcfd;background:#f7fcfd;stroke:#f7fcfd}.BuPu.q1-9{fill:#e0ecf4;background:#e0ecf4;stroke:#e0ecf4}.BuPu.q2-9{fill:#bfd3e6;background:#bfd3e6;stroke:#bfd3e6}.BuPu.q3-9{fill:#9ebcda;background:#9ebcda;stroke:#9ebcda}.BuPu.q4-9{fill:#8c96c6;background:#8c96c6;stroke:#8c96c6}.BuPu.q5-9{fill:#8c6bb1;background:#8c6bb1;stroke:#8c6bb1}.BuPu.q6-9{fill:#88419d;background:#88419d;stroke:#88419d}.BuPu.q7-9{fill:#810f7c;background:#810f7c;stroke:#810f7c}.BuPu.q8-9{fill:#4d004b;background:#4d004b;stroke:#4d004b}.RdPu.q0-3{fill:#fde0dd;background:#fde0dd;stroke:#fde0dd}.RdPu.q1-3{fill:#fa9fb5;background:#fa9fb5;stroke:#fa9fb5}.RdPu.q2-3{fill:#c51b8a;background:#c51b8a;stroke:#c51b8a}.RdPu.q0-4{fill:#feebe2;background:#feebe2;stroke:#feebe2}.RdPu.q1-4{fill:#fbb4b9;background:#fbb4b9;stroke:#fbb4b9}.RdPu.q2-4{fill:#f768a1;background:#f768a1;stroke:#f768a1}.RdPu.q3-4{fill:#ae017e;background:#ae017e;stroke:#ae017e}.RdPu.q0-5{fill:#feebe2;background:#feebe2;stroke:#feebe2}.RdPu.q1-5{fill:#fbb4b9;background:#fbb4b9;stroke:#fbb4b9}.RdPu.q2-5{fill:#f768a1;background:#f768a1;stroke:#f768a1}.RdPu.q3-5{fill:#c51b8a;background:#c51b8a;stroke:#c51b8a}.RdPu.q4-5{fill:#7a0177;background:#7a0177;stroke:#7a0177}.RdPu.q0-6{fill:#feebe2;background:#feebe2;stroke:#feebe2}.RdPu.q1-6{fill:#fcc5c0;background:#fcc5c0;stroke:#fcc5c0}.RdPu.q2-6{fill:#fa9fb5;background:#fa9fb5;stroke:#fa9fb5}.RdPu.q3-6{fill:#f768a1;background:#f768a1;stroke:#f768a1}.RdPu.q4-6{fill:#c51b8a;background:#c51b8a;stroke:#c51b8a}.RdPu.q5-6{fill:#7a0177;background:#7a0177;stroke:#7a0177}.RdPu.q0-7{fill:#feebe2;background:#feebe2;stroke:#feebe2}.RdPu.q1-7{fill:#fcc5c0;background:#fcc5c0;stroke:#fcc5c0}.RdPu.q2-7{fill:#fa9fb5;background:#fa9fb5;stroke:#fa9fb5}.RdPu.q3-7{fill:#f768a1;background:#f768a1;stroke:#f768a1}.RdPu.q4-7{fill:#dd3497;background:#dd3497;stroke:#dd3497}.RdPu.q5-7{fill:#ae017e;background:#ae017e;stroke:#ae017e}.RdPu.q6-7{fill:#7a0177;background:#7a0177;stroke:#7a0177}.RdPu.q0-8{fill:#fff7f3;background:#fff7f3;stroke:#fff7f3}.RdPu.q1-8{fill:#fde0dd;background:#fde0dd;stroke:#fde0dd}.RdPu.q2-8{fill:#fcc5c0;background:#fcc5c0;stroke:#fcc5c0}.RdPu.q3-8{fill:#fa9fb5;background:#fa9fb5;stroke:#fa9fb5}.RdPu.q4-8{fill:#f768a1;background:#f768a1;stroke:#f768a1}.RdPu.q5-8{fill:#dd3497;background:#dd3497;stroke:#dd3497}.RdPu.q6-8{fill:#ae017e;background:#ae017e;stroke:#ae017e}.RdPu.q7-8{fill:#7a0177;background:#7a0177;stroke:#7a0177}.RdPu.q0-9{fill:#fff7f3;background:#fff7f3;stroke:#fff7f3}.RdPu.q1-9{fill:#fde0dd;background:#fde0dd;stroke:#fde0dd}.RdPu.q2-9{fill:#fcc5c0;background:#fcc5c0;stroke:#fcc5c0}.RdPu.q3-9{fill:#fa9fb5;background:#fa9fb5;stroke:#fa9fb5}.RdPu.q4-9{fill:#f768a1;background:#f768a1;stroke:#f768a1}.RdPu.q5-9{fill:#dd3497;background:#dd3497;stroke:#dd3497}.RdPu.q6-9{fill:#ae017e;background:#ae017e;stroke:#ae017e}.RdPu.q7-9{fill:#7a0177;background:#7a0177;stroke:#7a0177}.RdPu.q8-9{fill:#49006a;background:#49006a;stroke:#49006a}.PuRd.q0-3{fill:#e7e1ef;background:#e7e1ef;stroke:#e7e1ef}.PuRd.q1-3{fill:#c994c7;background:#c994c7;stroke:#c994c7}.PuRd.q2-3{fill:#dd1c77;background:#dd1c77;stroke:#dd1c77}.PuRd.q0-4{fill:#f1eef6;background:#f1eef6;stroke:#f1eef6}.PuRd.q1-4{fill:#d7b5d8;background:#d7b5d8;stroke:#d7b5d8}.PuRd.q2-4{fill:#df65b0;background:#df65b0;stroke:#df65b0}.PuRd.q3-4{fill:#ce1256;background:#ce1256;stroke:#ce1256}.PuRd.q0-5{fill:#f1eef6;background:#f1eef6;stroke:#f1eef6}.PuRd.q1-5{fill:#d7b5d8;background:#d7b5d8;stroke:#d7b5d8}.PuRd.q2-5{fill:#df65b0;background:#df65b0;stroke:#df65b0}.PuRd.q3-5{fill:#dd1c77;background:#dd1c77;stroke:#dd1c77}.PuRd.q4-5{fill:#980043;background:#980043;stroke:#980043}.PuRd.q0-6{fill:#f1eef6;background:#f1eef6;stroke:#f1eef6}.PuRd.q1-6{fill:#d4b9da;background:#d4b9da;stroke:#d4b9da}.PuRd.q2-6{fill:#c994c7;background:#c994c7;stroke:#c994c7}.PuRd.q3-6{fill:#df65b0;background:#df65b0;stroke:#df65b0}.PuRd.q4-6{fill:#dd1c77;background:#dd1c77;stroke:#dd1c77}.PuRd.q5-6{fill:#980043;background:#980043;stroke:#980043}.PuRd.q0-7{fill:#f1eef6;background:#f1eef6;stroke:#f1eef6}.PuRd.q1-7{fill:#d4b9da;background:#d4b9da;stroke:#d4b9da}.PuRd.q2-7{fill:#c994c7;background:#c994c7;stroke:#c994c7}.PuRd.q3-7{fill:#df65b0;background:#df65b0;stroke:#df65b0}.PuRd.q4-7{fill:#e7298a;background:#e7298a;stroke:#e7298a}.PuRd.q5-7{fill:#ce1256;background:#ce1256;stroke:#ce1256}.PuRd.q6-7{fill:#91003f;background:#91003f;stroke:#91003f}.PuRd.q0-8{fill:#f7f4f9;background:#f7f4f9;stroke:#f7f4f9}.PuRd.q1-8{fill:#e7e1ef;background:#e7e1ef;stroke:#e7e1ef}.PuRd.q2-8{fill:#d4b9da;background:#d4b9da;stroke:#d4b9da}.PuRd.q3-8{fill:#c994c7;background:#c994c7;stroke:#c994c7}.PuRd.q4-8{fill:#df65b0;background:#df65b0;stroke:#df65b0}.PuRd.q5-8{fill:#e7298a;background:#e7298a;stroke:#e7298a}.PuRd.q6-8{fill:#ce1256;background:#ce1256;stroke:#ce1256}.PuRd.q7-8{fill:#91003f;background:#91003f;stroke:#91003f}.PuRd.q0-9{fill:#f7f4f9;background:#f7f4f9;stroke:#f7f4f9}.PuRd.q1-9{fill:#e7e1ef;background:#e7e1ef;stroke:#e7e1ef}.PuRd.q2-9{fill:#d4b9da;background:#d4b9da;stroke:#d4b9da}.PuRd.q3-9{fill:#c994c7;background:#c994c7;stroke:#c994c7}.PuRd.q4-9{fill:#df65b0;background:#df65b0;stroke:#df65b0}.PuRd.q5-9{fill:#e7298a;background:#e7298a;stroke:#e7298a}.PuRd.q6-9{fill:#ce1256;background:#ce1256;stroke:#ce1256}.PuRd.q7-9{fill:#980043;background:#980043;stroke:#980043}.PuRd.q8-9{fill:#67001f;background:#67001f;stroke:#67001f}.OrRd.q0-3{fill:#fee8c8;background:#fee8c8;stroke:#fee8c8}.OrRd.q1-3{fill:#fdbb84;background:#fdbb84;stroke:#fdbb84}.OrRd.q2-3{fill:#e34a33;background:#e34a33;stroke:#e34a33}.OrRd.q0-4{fill:#fef0d9;background:#fef0d9;stroke:#fef0d9}.OrRd.q1-4{fill:#fdcc8a;background:#fdcc8a;stroke:#fdcc8a}.OrRd.q2-4{fill:#fc8d59;background:#fc8d59;stroke:#fc8d59}.OrRd.q3-4{fill:#d7301f;background:#d7301f;stroke:#d7301f}.OrRd.q0-5{fill:#fef0d9;background:#fef0d9;stroke:#fef0d9}.OrRd.q1-5{fill:#fdcc8a;background:#fdcc8a;stroke:#fdcc8a}.OrRd.q2-5{fill:#fc8d59;background:#fc8d59;stroke:#fc8d59}.OrRd.q3-5{fill:#e34a33;background:#e34a33;stroke:#e34a33}.OrRd.q4-5{fill:#b30000;background:#b30000;stroke:#b30000}.OrRd.q0-6{fill:#fef0d9;background:#fef0d9;stroke:#fef0d9}.OrRd.q1-6{fill:#fdd49e;background:#fdd49e;stroke:#fdd49e}.OrRd.q2-6{fill:#fdbb84;background:#fdbb84;stroke:#fdbb84}.OrRd.q3-6{fill:#fc8d59;background:#fc8d59;stroke:#fc8d59}.OrRd.q4-6{fill:#e34a33;background:#e34a33;stroke:#e34a33}.OrRd.q5-6{fill:#b30000;background:#b30000;stroke:#b30000}.OrRd.q0-7{fill:#fef0d9;background:#fef0d9;stroke:#fef0d9}.OrRd.q1-7{fill:#fdd49e;background:#fdd49e;stroke:#fdd49e}.OrRd.q2-7{fill:#fdbb84;background:#fdbb84;stroke:#fdbb84}.OrRd.q3-7{fill:#fc8d59;background:#fc8d59;stroke:#fc8d59}.OrRd.q4-7{fill:#ef6548;background:#ef6548;stroke:#ef6548}.OrRd.q5-7{fill:#d7301f;background:#d7301f;stroke:#d7301f}.OrRd.q6-7{fill:#900;background:#900;stroke:#900}.OrRd.q0-8{fill:#fff7ec;background:#fff7ec;stroke:#fff7ec}.OrRd.q1-8{fill:#fee8c8;background:#fee8c8;stroke:#fee8c8}.OrRd.q2-8{fill:#fdd49e;background:#fdd49e;stroke:#fdd49e}.OrRd.q3-8{fill:#fdbb84;background:#fdbb84;stroke:#fdbb84}.OrRd.q4-8{fill:#fc8d59;background:#fc8d59;stroke:#fc8d59}.OrRd.q5-8{fill:#ef6548;background:#ef6548;stroke:#ef6548}.OrRd.q6-8{fill:#d7301f;background:#d7301f;stroke:#d7301f}.OrRd.q7-8{fill:#900;background:#900;stroke:#900}.OrRd.q0-9{fill:#fff7ec;background:#fff7ec;stroke:#fff7ec}.OrRd.q1-9{fill:#fee8c8;background:#fee8c8;stroke:#fee8c8}.OrRd.q2-9{fill:#fdd49e;background:#fdd49e;stroke:#fdd49e}.OrRd.q3-9{fill:#fdbb84;background:#fdbb84;stroke:#fdbb84}.OrRd.q4-9{fill:#fc8d59;background:#fc8d59;stroke:#fc8d59}.OrRd.q5-9{fill:#ef6548;background:#ef6548;stroke:#ef6548}.OrRd.q6-9{fill:#d7301f;background:#d7301f;stroke:#d7301f}.OrRd.q7-9{fill:#b30000;background:#b30000;stroke:#b30000}.OrRd.q8-9{fill:#7f0000;background:#7f0000;stroke:#7f0000}.YlOrRd.q0-3{fill:#ffeda0;background:#ffeda0;stroke:#ffeda0}.YlOrRd.q1-3{fill:#feb24c;background:#feb24c;stroke:#feb24c}.YlOrRd.q2-3{fill:#f03b20;background:#f03b20;stroke:#f03b20}.YlOrRd.q0-4{fill:#ffffb2;background:#ffffb2;stroke:#ffffb2}.YlOrRd.q1-4{fill:#fecc5c;background:#fecc5c;stroke:#fecc5c}.YlOrRd.q2-4{fill:#fd8d3c;background:#fd8d3c;stroke:#fd8d3c}.YlOrRd.q3-4{fill:#e31a1c;background:#e31a1c;stroke:#e31a1c}.YlOrRd.q0-5{fill:#ffffb2;background:#ffffb2;stroke:#ffffb2}.YlOrRd.q1-5{fill:#fecc5c;background:#fecc5c;stroke:#fecc5c}.YlOrRd.q2-5{fill:#fd8d3c;background:#fd8d3c;stroke:#fd8d3c}.YlOrRd.q3-5{fill:#f03b20;background:#f03b20;stroke:#f03b20}.YlOrRd.q4-5{fill:#bd0026;background:#bd0026;stroke:#bd0026}.YlOrRd.q0-6{fill:#ffffb2;background:#ffffb2;stroke:#ffffb2}.YlOrRd.q1-6{fill:#fed976;background:#fed976;stroke:#fed976}.YlOrRd.q2-6{fill:#feb24c;background:#feb24c;stroke:#feb24c}.YlOrRd.q3-6{fill:#fd8d3c;background:#fd8d3c;stroke:#fd8d3c}.YlOrRd.q4-6{fill:#f03b20;background:#f03b20;stroke:#f03b20}.YlOrRd.q5-6{fill:#bd0026;background:#bd0026;stroke:#bd0026}.YlOrRd.q0-7{fill:#ffffb2;background:#ffffb2;stroke:#ffffb2}.YlOrRd.q1-7{fill:#fed976;background:#fed976;stroke:#fed976}.YlOrRd.q2-7{fill:#feb24c;background:#feb24c;stroke:#feb24c}.YlOrRd.q3-7{fill:#fd8d3c;background:#fd8d3c;stroke:#fd8d3c}.YlOrRd.q4-7{fill:#fc4e2a;background:#fc4e2a;stroke:#fc4e2a}.YlOrRd.q5-7{fill:#e31a1c;background:#e31a1c;stroke:#e31a1c}.YlOrRd.q6-7{fill:#b10026;background:#b10026;stroke:#b10026}.YlOrRd.q0-8{fill:#ffc;background:#ffc;stroke:#ffc}.YlOrRd.q1-8{fill:#ffeda0;background:#ffeda0;stroke:#ffeda0}.YlOrRd.q2-8{fill:#fed976;background:#fed976;stroke:#fed976}.YlOrRd.q3-8{fill:#feb24c;background:#feb24c;stroke:#feb24c}.YlOrRd.q4-8{fill:#fd8d3c;background:#fd8d3c;stroke:#fd8d3c}.YlOrRd.q5-8{fill:#fc4e2a;background:#fc4e2a;stroke:#fc4e2a}.YlOrRd.q6-8{fill:#e31a1c;background:#e31a1c;stroke:#e31a1c}.YlOrRd.q7-8{fill:#b10026;background:#b10026;stroke:#b10026}.YlOrRd.q0-9{fill:#ffc;background:#ffc;stroke:#ffc}.YlOrRd.q1-9{fill:#ffeda0;background:#ffeda0;stroke:#ffeda0}.YlOrRd.q2-9{fill:#fed976;background:#fed976;stroke:#fed976}.YlOrRd.q3-9{fill:#feb24c;background:#feb24c;stroke:#feb24c}.YlOrRd.q4-9{fill:#fd8d3c;background:#fd8d3c;stroke:#fd8d3c}.YlOrRd.q5-9{fill:#fc4e2a;background:#fc4e2a;stroke:#fc4e2a}.YlOrRd.q6-9{fill:#e31a1c;background:#e31a1c;stroke:#e31a1c}.YlOrRd.q7-9{fill:#bd0026;background:#bd0026;stroke:#bd0026}.YlOrRd.q8-9{fill:#800026;background:#800026;stroke:#800026}.YlOrBr.q0-3{fill:#fff7bc;background:#fff7bc;stroke:#fff7bc}.YlOrBr.q1-3{fill:#fec44f;background:#fec44f;stroke:#fec44f}.YlOrBr.q2-3{fill:#d95f0e;background:#d95f0e;stroke:#d95f0e}.YlOrBr.q0-4{fill:#ffffd4;background:#ffffd4;stroke:#ffffd4}.YlOrBr.q1-4{fill:#fed98e;background:#fed98e;stroke:#fed98e}.YlOrBr.q2-4{fill:#fe9929;background:#fe9929;stroke:#fe9929}.YlOrBr.q3-4{fill:#cc4c02;background:#cc4c02;stroke:#cc4c02}.YlOrBr.q0-5{fill:#ffffd4;background:#ffffd4;stroke:#ffffd4}.YlOrBr.q1-5{fill:#fed98e;background:#fed98e;stroke:#fed98e}.YlOrBr.q2-5{fill:#fe9929;background:#fe9929;stroke:#fe9929}.YlOrBr.q3-5{fill:#d95f0e;background:#d95f0e;stroke:#d95f0e}.YlOrBr.q4-5{fill:#993404;background:#993404;stroke:#993404}.YlOrBr.q0-6{fill:#ffffd4;background:#ffffd4;stroke:#ffffd4}.YlOrBr.q1-6{fill:#fee391;background:#fee391;stroke:#fee391}.YlOrBr.q2-6{fill:#fec44f;background:#fec44f;stroke:#fec44f}.YlOrBr.q3-6{fill:#fe9929;background:#fe9929;stroke:#fe9929}.YlOrBr.q4-6{fill:#d95f0e;background:#d95f0e;stroke:#d95f0e}.YlOrBr.q5-6{fill:#993404;background:#993404;stroke:#993404}.YlOrBr.q0-7{fill:#ffffd4;background:#ffffd4;stroke:#ffffd4}.YlOrBr.q1-7{fill:#fee391;background:#fee391;stroke:#fee391}.YlOrBr.q2-7{fill:#fec44f;background:#fec44f;stroke:#fec44f}.YlOrBr.q3-7{fill:#fe9929;background:#fe9929;stroke:#fe9929}.YlOrBr.q4-7{fill:#ec7014;background:#ec7014;stroke:#ec7014}.YlOrBr.q5-7{fill:#cc4c02;background:#cc4c02;stroke:#cc4c02}.YlOrBr.q6-7{fill:#8c2d04;background:#8c2d04;stroke:#8c2d04}.YlOrBr.q0-8{fill:#ffffe5;background:#ffffe5;stroke:#ffffe5}.YlOrBr.q1-8{fill:#fff7bc;background:#fff7bc;stroke:#fff7bc}.YlOrBr.q2-8{fill:#fee391;background:#fee391;stroke:#fee391}.YlOrBr.q3-8{fill:#fec44f;background:#fec44f;stroke:#fec44f}.YlOrBr.q4-8{fill:#fe9929;background:#fe9929;stroke:#fe9929}.YlOrBr.q5-8{fill:#ec7014;background:#ec7014;stroke:#ec7014}.YlOrBr.q6-8{fill:#cc4c02;background:#cc4c02;stroke:#cc4c02}.YlOrBr.q7-8{fill:#8c2d04;background:#8c2d04;stroke:#8c2d04}.YlOrBr.q0-9{fill:#ffffe5;background:#ffffe5;stroke:#ffffe5}.YlOrBr.q1-9{fill:#fff7bc;background:#fff7bc;stroke:#fff7bc}.YlOrBr.q2-9{fill:#fee391;background:#fee391;stroke:#fee391}.YlOrBr.q3-9{fill:#fec44f;background:#fec44f;stroke:#fec44f}.YlOrBr.q4-9{fill:#fe9929;background:#fe9929;stroke:#fe9929}.YlOrBr.q5-9{fill:#ec7014;background:#ec7014;stroke:#ec7014}.YlOrBr.q6-9{fill:#cc4c02;background:#cc4c02;stroke:#cc4c02}.YlOrBr.q7-9{fill:#993404;background:#993404;stroke:#993404}.YlOrBr.q8-9{fill:#662506;background:#662506;stroke:#662506}.Purples.q0-3{fill:#efedf5;background:#efedf5;stroke:#efedf5}.Purples.q1-3{fill:#bcbddc;background:#bcbddc;stroke:#bcbddc}.Purples.q2-3{fill:#756bb1;background:#756bb1;stroke:#756bb1}.Purples.q0-4{fill:#f2f0f7;background:#f2f0f7;stroke:#f2f0f7}.Purples.q1-4{fill:#cbc9e2;background:#cbc9e2;stroke:#cbc9e2}.Purples.q2-4{fill:#9e9ac8;background:#9e9ac8;stroke:#9e9ac8}.Purples.q3-4{fill:#6a51a3;background:#6a51a3;stroke:#6a51a3}.Purples.q0-5{fill:#f2f0f7;background:#f2f0f7;stroke:#f2f0f7}.Purples.q1-5{fill:#cbc9e2;background:#cbc9e2;stroke:#cbc9e2}.Purples.q2-5{fill:#9e9ac8;background:#9e9ac8;stroke:#9e9ac8}.Purples.q3-5{fill:#756bb1;background:#756bb1;stroke:#756bb1}.Purples.q4-5{fill:#54278f;background:#54278f;stroke:#54278f}.Purples.q0-6{fill:#f2f0f7;background:#f2f0f7;stroke:#f2f0f7}.Purples.q1-6{fill:#dadaeb;background:#dadaeb;stroke:#dadaeb}.Purples.q2-6{fill:#bcbddc;background:#bcbddc;stroke:#bcbddc}.Purples.q3-6{fill:#9e9ac8;background:#9e9ac8;stroke:#9e9ac8}.Purples.q4-6{fill:#756bb1;background:#756bb1;stroke:#756bb1}.Purples.q5-6{fill:#54278f;background:#54278f;stroke:#54278f}.Purples.q0-7{fill:#f2f0f7;background:#f2f0f7;stroke:#f2f0f7}.Purples.q1-7{fill:#dadaeb;background:#dadaeb;stroke:#dadaeb}.Purples.q2-7{fill:#bcbddc;background:#bcbddc;stroke:#bcbddc}.Purples.q3-7{fill:#9e9ac8;background:#9e9ac8;stroke:#9e9ac8}.Purples.q4-7{fill:#807dba;background:#807dba;stroke:#807dba}.Purples.q5-7{fill:#6a51a3;background:#6a51a3;stroke:#6a51a3}.Purples.q6-7{fill:#4a1486;background:#4a1486;stroke:#4a1486}.Purples.q0-8{fill:#fcfbfd;background:#fcfbfd;stroke:#fcfbfd}.Purples.q1-8{fill:#efedf5;background:#efedf5;stroke:#efedf5}.Purples.q2-8{fill:#dadaeb;background:#dadaeb;stroke:#dadaeb}.Purples.q3-8{fill:#bcbddc;background:#bcbddc;stroke:#bcbddc}.Purples.q4-8{fill:#9e9ac8;background:#9e9ac8;stroke:#9e9ac8}.Purples.q5-8{fill:#807dba;background:#807dba;stroke:#807dba}.Purples.q6-8{fill:#6a51a3;background:#6a51a3;stroke:#6a51a3}.Purples.q7-8{fill:#4a1486;background:#4a1486;stroke:#4a1486}.Purples.q0-9{fill:#fcfbfd;background:#fcfbfd;stroke:#fcfbfd}.Purples.q1-9{fill:#efedf5;background:#efedf5;stroke:#efedf5}.Purples.q2-9{fill:#dadaeb;background:#dadaeb;stroke:#dadaeb}.Purples.q3-9{fill:#bcbddc;background:#bcbddc;stroke:#bcbddc}.Purples.q4-9{fill:#9e9ac8;background:#9e9ac8;stroke:#9e9ac8}.Purples.q5-9{fill:#807dba;background:#807dba;stroke:#807dba}.Purples.q6-9{fill:#6a51a3;background:#6a51a3;stroke:#6a51a3}.Purples.q7-9{fill:#54278f;background:#54278f;stroke:#54278f}.Purples.q8-9{fill:#3f007d;background:#3f007d;stroke:#3f007d}.Blues.q0-3{fill:#deebf7;background:#deebf7;stroke:#deebf7}.Blues.q1-3{fill:#9ecae1;background:#9ecae1;stroke:#9ecae1}.Blues.q2-3{fill:#3182bd;background:#3182bd;stroke:#3182bd}.Blues.q0-4{fill:#eff3ff;background:#eff3ff;stroke:#eff3ff}.Blues.q1-4{fill:#bdd7e7;background:#bdd7e7;stroke:#bdd7e7}.Blues.q2-4{fill:#6baed6;background:#6baed6;stroke:#6baed6}.Blues.q3-4{fill:#2171b5;background:#2171b5;stroke:#2171b5}.Blues.q0-5{fill:#eff3ff;background:#eff3ff;stroke:#eff3ff}.Blues.q1-5{fill:#bdd7e7;background:#bdd7e7;stroke:#bdd7e7}.Blues.q2-5{fill:#6baed6;background:#6baed6;stroke:#6baed6}.Blues.q3-5{fill:#3182bd;background:#3182bd;stroke:#3182bd}.Blues.q4-5{fill:#08519c;background:#08519c;stroke:#08519c}.Blues.q0-6{fill:#eff3ff;background:#eff3ff;stroke:#eff3ff}.Blues.q1-6{fill:#c6dbef;background:#c6dbef;stroke:#c6dbef}.Blues.q2-6{fill:#9ecae1;background:#9ecae1;stroke:#9ecae1}.Blues.q3-6{fill:#6baed6;background:#6baed6;stroke:#6baed6}.Blues.q4-6{fill:#3182bd;background:#3182bd;stroke:#3182bd}.Blues.q5-6{fill:#08519c;background:#08519c;stroke:#08519c}.Blues.q0-7{fill:#eff3ff;background:#eff3ff;stroke:#eff3ff}.Blues.q1-7{fill:#c6dbef;background:#c6dbef;stroke:#c6dbef}.Blues.q2-7{fill:#9ecae1;background:#9ecae1;stroke:#9ecae1}.Blues.q3-7{fill:#6baed6;background:#6baed6;stroke:#6baed6}.Blues.q4-7{fill:#4292c6;background:#4292c6;stroke:#4292c6}.Blues.q5-7{fill:#2171b5;background:#2171b5;stroke:#2171b5}.Blues.q6-7{fill:#084594;background:#084594;stroke:#084594}.Blues.q0-8{fill:#f7fbff;background:#f7fbff;stroke:#f7fbff}.Blues.q1-8{fill:#deebf7;background:#deebf7;stroke:#deebf7}.Blues.q2-8{fill:#c6dbef;background:#c6dbef;stroke:#c6dbef}.Blues.q3-8{fill:#9ecae1;background:#9ecae1;stroke:#9ecae1}.Blues.q4-8{fill:#6baed6;background:#6baed6;stroke:#6baed6}.Blues.q5-8{fill:#4292c6;background:#4292c6;stroke:#4292c6}.Blues.q6-8{fill:#2171b5;background:#2171b5;stroke:#2171b5}.Blues.q7-8{fill:#084594;background:#084594;stroke:#084594}.Blues.q0-9{fill:#f7fbff;background:#f7fbff;stroke:#f7fbff}.Blues.q1-9{fill:#deebf7;background:#deebf7;stroke:#deebf7}.Blues.q2-9{fill:#c6dbef;background:#c6dbef;stroke:#c6dbef}.Blues.q3-9{fill:#9ecae1;background:#9ecae1;stroke:#9ecae1}.Blues.q4-9{fill:#6baed6;background:#6baed6;stroke:#6baed6}.Blues.q5-9{fill:#4292c6;background:#4292c6;stroke:#4292c6}.Blues.q6-9{fill:#2171b5;background:#2171b5;stroke:#2171b5}.Blues.q7-9{fill:#08519c;background:#08519c;stroke:#08519c}.Blues.q8-9{fill:#08306b;background:#08306b;stroke:#08306b}.Greens.q0-3{fill:#e5f5e0;background:#e5f5e0;stroke:#e5f5e0}.Greens.q1-3{fill:#a1d99b;background:#a1d99b;stroke:#a1d99b}.Greens.q2-3{fill:#31a354;background:#31a354;stroke:#31a354}.Greens.q0-4{fill:#edf8e9;background:#edf8e9;stroke:#edf8e9}.Greens.q1-4{fill:#bae4b3;background:#bae4b3;stroke:#bae4b3}.Greens.q2-4{fill:#74c476;background:#74c476;stroke:#74c476}.Greens.q3-4{fill:#238b45;background:#238b45;stroke:#238b45}.Greens.q0-5{fill:#edf8e9;background:#edf8e9;stroke:#edf8e9}.Greens.q1-5{fill:#bae4b3;background:#bae4b3;stroke:#bae4b3}.Greens.q2-5{fill:#74c476;background:#74c476;stroke:#74c476}.Greens.q3-5{fill:#31a354;background:#31a354;stroke:#31a354}.Greens.q4-5{fill:#006d2c;background:#006d2c;stroke:#006d2c}.Greens.q0-6{fill:#edf8e9;background:#edf8e9;stroke:#edf8e9}.Greens.q1-6{fill:#c7e9c0;background:#c7e9c0;stroke:#c7e9c0}.Greens.q2-6{fill:#a1d99b;background:#a1d99b;stroke:#a1d99b}.Greens.q3-6{fill:#74c476;background:#74c476;stroke:#74c476}.Greens.q4-6{fill:#31a354;background:#31a354;stroke:#31a354}.Greens.q5-6{fill:#006d2c;background:#006d2c;stroke:#006d2c}.Greens.q0-7{fill:#edf8e9;background:#edf8e9;stroke:#edf8e9}.Greens.q1-7{fill:#c7e9c0;background:#c7e9c0;stroke:#c7e9c0}.Greens.q2-7{fill:#a1d99b;background:#a1d99b;stroke:#a1d99b}.Greens.q3-7{fill:#74c476;background:#74c476;stroke:#74c476}.Greens.q4-7{fill:#41ab5d;background:#41ab5d;stroke:#41ab5d}.Greens.q5-7{fill:#238b45;background:#238b45;stroke:#238b45}.Greens.q6-7{fill:#005a32;background:#005a32;stroke:#005a32}.Greens.q0-8{fill:#f7fcf5;background:#f7fcf5;stroke:#f7fcf5}.Greens.q1-8{fill:#e5f5e0;background:#e5f5e0;stroke:#e5f5e0}.Greens.q2-8{fill:#c7e9c0;background:#c7e9c0;stroke:#c7e9c0}.Greens.q3-8{fill:#a1d99b;background:#a1d99b;stroke:#a1d99b}.Greens.q4-8{fill:#74c476;background:#74c476;stroke:#74c476}.Greens.q5-8{fill:#41ab5d;background:#41ab5d;stroke:#41ab5d}.Greens.q6-8{fill:#238b45;background:#238b45;stroke:#238b45}.Greens.q7-8{fill:#005a32;background:#005a32;stroke:#005a32}.Greens.q0-9{fill:#f7fcf5;background:#f7fcf5;stroke:#f7fcf5}.Greens.q1-9{fill:#e5f5e0;background:#e5f5e0;stroke:#e5f5e0}.Greens.q2-9{fill:#c7e9c0;background:#c7e9c0;stroke:#c7e9c0}.Greens.q3-9{fill:#a1d99b;background:#a1d99b;stroke:#a1d99b}.Greens.q4-9{fill:#74c476;background:#74c476;stroke:#74c476}.Greens.q5-9{fill:#41ab5d;background:#41ab5d;stroke:#41ab5d}.Greens.q6-9{fill:#238b45;background:#238b45;stroke:#238b45}.Greens.q7-9{fill:#006d2c;background:#006d2c;stroke:#006d2c}.Greens.q8-9{fill:#00441b;background:#00441b;stroke:#00441b}.Oranges.q0-3{fill:#fee6ce;background:#fee6ce;stroke:#fee6ce}.Oranges.q1-3{fill:#fdae6b;background:#fdae6b;stroke:#fdae6b}.Oranges.q2-3{fill:#e6550d;background:#e6550d;stroke:#e6550d}.Oranges.q0-4{fill:#feedde;background:#feedde;stroke:#feedde}.Oranges.q1-4{fill:#fdbe85;background:#fdbe85;stroke:#fdbe85}.Oranges.q2-4{fill:#fd8d3c;background:#fd8d3c;stroke:#fd8d3c}.Oranges.q3-4{fill:#d94701;background:#d94701;stroke:#d94701}.Oranges.q0-5{fill:#feedde;background:#feedde;stroke:#feedde}.Oranges.q1-5{fill:#fdbe85;background:#fdbe85;stroke:#fdbe85}.Oranges.q2-5{fill:#fd8d3c;background:#fd8d3c;stroke:#fd8d3c}.Oranges.q3-5{fill:#e6550d;background:#e6550d;stroke:#e6550d}.Oranges.q4-5{fill:#a63603;background:#a63603;stroke:#a63603}.Oranges.q0-6{fill:#feedde;background:#feedde;stroke:#feedde}.Oranges.q1-6{fill:#fdd0a2;background:#fdd0a2;stroke:#fdd0a2}.Oranges.q2-6{fill:#fdae6b;background:#fdae6b;stroke:#fdae6b}.Oranges.q3-6{fill:#fd8d3c;background:#fd8d3c;stroke:#fd8d3c}.Oranges.q4-6{fill:#e6550d;background:#e6550d;stroke:#e6550d}.Oranges.q5-6{fill:#a63603;background:#a63603;stroke:#a63603}.Oranges.q0-7{fill:#feedde;background:#feedde;stroke:#feedde}.Oranges.q1-7{fill:#fdd0a2;background:#fdd0a2;stroke:#fdd0a2}.Oranges.q2-7{fill:#fdae6b;background:#fdae6b;stroke:#fdae6b}.Oranges.q3-7{fill:#fd8d3c;background:#fd8d3c;stroke:#fd8d3c}.Oranges.q4-7{fill:#f16913;background:#f16913;stroke:#f16913}.Oranges.q5-7{fill:#d94801;background:#d94801;stroke:#d94801}.Oranges.q6-7{fill:#8c2d04;background:#8c2d04;stroke:#8c2d04}.Oranges.q0-8{fill:#fff5eb;background:#fff5eb;stroke:#fff5eb}.Oranges.q1-8{fill:#fee6ce;background:#fee6ce;stroke:#fee6ce}.Oranges.q2-8{fill:#fdd0a2;background:#fdd0a2;stroke:#fdd0a2}.Oranges.q3-8{fill:#fdae6b;background:#fdae6b;stroke:#fdae6b}.Oranges.q4-8{fill:#fd8d3c;background:#fd8d3c;stroke:#fd8d3c}.Oranges.q5-8{fill:#f16913;background:#f16913;stroke:#f16913}.Oranges.q6-8{fill:#d94801;background:#d94801;stroke:#d94801}.Oranges.q7-8{fill:#8c2d04;background:#8c2d04;stroke:#8c2d04}.Oranges.q0-9{fill:#fff5eb;background:#fff5eb;stroke:#fff5eb}.Oranges.q1-9{fill:#fee6ce;background:#fee6ce;stroke:#fee6ce}.Oranges.q2-9{fill:#fdd0a2;background:#fdd0a2;stroke:#fdd0a2}.Oranges.q3-9{fill:#fdae6b;background:#fdae6b;stroke:#fdae6b}.Oranges.q4-9{fill:#fd8d3c;background:#fd8d3c;stroke:#fd8d3c}.Oranges.q5-9{fill:#f16913;background:#f16913;stroke:#f16913}.Oranges.q6-9{fill:#d94801;background:#d94801;stroke:#d94801}.Oranges.q7-9{fill:#a63603;background:#a63603;stroke:#a63603}.Oranges.q8-9{fill:#7f2704;background:#7f2704;stroke:#7f2704}.Reds.q0-3{fill:#fee0d2;background:#fee0d2;stroke:#fee0d2}.Reds.q1-3{fill:#fc9272;background:#fc9272;stroke:#fc9272}.Reds.q2-3{fill:#de2d26;background:#de2d26;stroke:#de2d26}.Reds.q0-4{fill:#fee5d9;background:#fee5d9;stroke:#fee5d9}.Reds.q1-4{fill:#fcae91;background:#fcae91;stroke:#fcae91}.Reds.q2-4{fill:#fb6a4a;background:#fb6a4a;stroke:#fb6a4a}.Reds.q3-4{fill:#cb181d;background:#cb181d;stroke:#cb181d}.Reds.q0-5{fill:#fee5d9;background:#fee5d9;stroke:#fee5d9}.Reds.q1-5{fill:#fcae91;background:#fcae91;stroke:#fcae91}.Reds.q2-5{fill:#fb6a4a;background:#fb6a4a;stroke:#fb6a4a}.Reds.q3-5{fill:#de2d26;background:#de2d26;stroke:#de2d26}.Reds.q4-5{fill:#a50f15;background:#a50f15;stroke:#a50f15}.Reds.q0-6{fill:#fee5d9;background:#fee5d9;stroke:#fee5d9}.Reds.q1-6{fill:#fcbba1;background:#fcbba1;stroke:#fcbba1}.Reds.q2-6{fill:#fc9272;background:#fc9272;stroke:#fc9272}.Reds.q3-6{fill:#fb6a4a;background:#fb6a4a;stroke:#fb6a4a}.Reds.q4-6{fill:#de2d26;background:#de2d26;stroke:#de2d26}.Reds.q5-6{fill:#a50f15;background:#a50f15;stroke:#a50f15}.Reds.q0-7{fill:#fee5d9;background:#fee5d9;stroke:#fee5d9}.Reds.q1-7{fill:#fcbba1;background:#fcbba1;stroke:#fcbba1}.Reds.q2-7{fill:#fc9272;background:#fc9272;stroke:#fc9272}.Reds.q3-7{fill:#fb6a4a;background:#fb6a4a;stroke:#fb6a4a}.Reds.q4-7{fill:#ef3b2c;background:#ef3b2c;stroke:#ef3b2c}.Reds.q5-7{fill:#cb181d;background:#cb181d;stroke:#cb181d}.Reds.q6-7{fill:#99000d;background:#99000d;stroke:#99000d}.Reds.q0-8{fill:#fff5f0;background:#fff5f0;stroke:#fff5f0}.Reds.q1-8{fill:#fee0d2;background:#fee0d2;stroke:#fee0d2}.Reds.q2-8{fill:#fcbba1;background:#fcbba1;stroke:#fcbba1}.Reds.q3-8{fill:#fc9272;background:#fc9272;stroke:#fc9272}.Reds.q4-8{fill:#fb6a4a;background:#fb6a4a;stroke:#fb6a4a}.Reds.q5-8{fill:#ef3b2c;background:#ef3b2c;stroke:#ef3b2c}.Reds.q6-8{fill:#cb181d;background:#cb181d;stroke:#cb181d}.Reds.q7-8{fill:#99000d;background:#99000d;stroke:#99000d}.Reds.q0-9{fill:#fff5f0;background:#fff5f0;stroke:#fff5f0}.Reds.q1-9{fill:#fee0d2;background:#fee0d2;stroke:#fee0d2}.Reds.q2-9{fill:#fcbba1;background:#fcbba1;stroke:#fcbba1}.Reds.q3-9{fill:#fc9272;background:#fc9272;stroke:#fc9272}.Reds.q4-9{fill:#fb6a4a;background:#fb6a4a;stroke:#fb6a4a}.Reds.q5-9{fill:#ef3b2c;background:#ef3b2c;stroke:#ef3b2c}.Reds.q6-9{fill:#cb181d;background:#cb181d;stroke:#cb181d}.Reds.q7-9{fill:#a50f15;background:#a50f15;stroke:#a50f15}.Reds.q8-9{fill:#67000d;background:#67000d;stroke:#67000d}.Greys.q0-3{fill:#f0f0f0;background:#f0f0f0;stroke:#f0f0f0}.Greys.q1-3{fill:#bdbdbd;background:#bdbdbd;stroke:#bdbdbd}.Greys.q2-3{fill:#636363;background:#636363;stroke:#636363}.Greys.q0-4{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.Greys.q1-4{fill:#ccc;background:#ccc;stroke:#ccc}.Greys.q2-4{fill:#969696;background:#969696;stroke:#969696}.Greys.q3-4{fill:#525252;background:#525252;stroke:#525252}.Greys.q0-5{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.Greys.q1-5{fill:#ccc;background:#ccc;stroke:#ccc}.Greys.q2-5{fill:#969696;background:#969696;stroke:#969696}.Greys.q3-5{fill:#636363;background:#636363;stroke:#636363}.Greys.q4-5{fill:#252525;background:#252525;stroke:#252525}.Greys.q0-6{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.Greys.q1-6{fill:#d9d9d9;background:#d9d9d9;stroke:#d9d9d9}.Greys.q2-6{fill:#bdbdbd;background:#bdbdbd;stroke:#bdbdbd}.Greys.q3-6{fill:#969696;background:#969696;stroke:#969696}.Greys.q4-6{fill:#636363;background:#636363;stroke:#636363}.Greys.q5-6{fill:#252525;background:#252525;stroke:#252525}.Greys.q0-7{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.Greys.q1-7{fill:#d9d9d9;background:#d9d9d9;stroke:#d9d9d9}.Greys.q2-7{fill:#bdbdbd;background:#bdbdbd;stroke:#bdbdbd}.Greys.q3-7{fill:#969696;background:#969696;stroke:#969696}.Greys.q4-7{fill:#737373;background:#737373;stroke:#737373}.Greys.q5-7{fill:#525252;background:#525252;stroke:#525252}.Greys.q6-7{fill:#252525;background:#252525;stroke:#252525}.Greys.q0-8{fill:#fff;background:#fff;stroke:#fff}.Greys.q1-8{fill:#f0f0f0;background:#f0f0f0;stroke:#f0f0f0}.Greys.q2-8{fill:#d9d9d9;background:#d9d9d9;stroke:#d9d9d9}.Greys.q3-8{fill:#bdbdbd;background:#bdbdbd;stroke:#bdbdbd}.Greys.q4-8{fill:#969696;background:#969696;stroke:#969696}.Greys.q5-8{fill:#737373;background:#737373;stroke:#737373}.Greys.q6-8{fill:#525252;background:#525252;stroke:#525252}.Greys.q7-8{fill:#252525;background:#252525;stroke:#252525}.Greys.q0-9{fill:#fff;background:#fff;stroke:#fff}.Greys.q1-9{fill:#f0f0f0;background:#f0f0f0;stroke:#f0f0f0}.Greys.q2-9{fill:#d9d9d9;background:#d9d9d9;stroke:#d9d9d9}.Greys.q3-9{fill:#bdbdbd;background:#bdbdbd;stroke:#bdbdbd}.Greys.q4-9{fill:#969696;background:#969696;stroke:#969696}.Greys.q5-9{fill:#737373;background:#737373;stroke:#737373}.Greys.q6-9{fill:#525252;background:#525252;stroke:#525252}.Greys.q7-9{fill:#252525;background:#252525;stroke:#252525}.Greys.q8-9{fill:#000;background:#000;stroke:#000}.PuOr.q0-3{fill:#f1a340;background:#f1a340;stroke:#f1a340}.PuOr.q1-3{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.PuOr.q2-3{fill:#998ec3;background:#998ec3;stroke:#998ec3}.PuOr.q0-4{fill:#e66101;background:#e66101;stroke:#e66101}.PuOr.q1-4{fill:#fdb863;background:#fdb863;stroke:#fdb863}.PuOr.q2-4{fill:#b2abd2;background:#b2abd2;stroke:#b2abd2}.PuOr.q3-4{fill:#5e3c99;background:#5e3c99;stroke:#5e3c99}.PuOr.q0-5{fill:#e66101;background:#e66101;stroke:#e66101}.PuOr.q1-5{fill:#fdb863;background:#fdb863;stroke:#fdb863}.PuOr.q2-5{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.PuOr.q3-5{fill:#b2abd2;background:#b2abd2;stroke:#b2abd2}.PuOr.q4-5{fill:#5e3c99;background:#5e3c99;stroke:#5e3c99}.PuOr.q0-6{fill:#b35806;background:#b35806;stroke:#b35806}.PuOr.q1-6{fill:#f1a340;background:#f1a340;stroke:#f1a340}.PuOr.q2-6{fill:#fee0b6;background:#fee0b6;stroke:#fee0b6}.PuOr.q3-6{fill:#d8daeb;background:#d8daeb;stroke:#d8daeb}.PuOr.q4-6{fill:#998ec3;background:#998ec3;stroke:#998ec3}.PuOr.q5-6{fill:#542788;background:#542788;stroke:#542788}.PuOr.q0-7{fill:#b35806;background:#b35806;stroke:#b35806}.PuOr.q1-7{fill:#f1a340;background:#f1a340;stroke:#f1a340}.PuOr.q2-7{fill:#fee0b6;background:#fee0b6;stroke:#fee0b6}.PuOr.q3-7{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.PuOr.q4-7{fill:#d8daeb;background:#d8daeb;stroke:#d8daeb}.PuOr.q5-7{fill:#998ec3;background:#998ec3;stroke:#998ec3}.PuOr.q6-7{fill:#542788;background:#542788;stroke:#542788}.PuOr.q0-8{fill:#b35806;background:#b35806;stroke:#b35806}.PuOr.q1-8{fill:#e08214;background:#e08214;stroke:#e08214}.PuOr.q2-8{fill:#fdb863;background:#fdb863;stroke:#fdb863}.PuOr.q3-8{fill:#fee0b6;background:#fee0b6;stroke:#fee0b6}.PuOr.q4-8{fill:#d8daeb;background:#d8daeb;stroke:#d8daeb}.PuOr.q5-8{fill:#b2abd2;background:#b2abd2;stroke:#b2abd2}.PuOr.q6-8{fill:#8073ac;background:#8073ac;stroke:#8073ac}.PuOr.q7-8{fill:#542788;background:#542788;stroke:#542788}.PuOr.q0-9{fill:#b35806;background:#b35806;stroke:#b35806}.PuOr.q1-9{fill:#e08214;background:#e08214;stroke:#e08214}.PuOr.q2-9{fill:#fdb863;background:#fdb863;stroke:#fdb863}.PuOr.q3-9{fill:#fee0b6;background:#fee0b6;stroke:#fee0b6}.PuOr.q4-9{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.PuOr.q5-9{fill:#d8daeb;background:#d8daeb;stroke:#d8daeb}.PuOr.q6-9{fill:#b2abd2;background:#b2abd2;stroke:#b2abd2}.PuOr.q7-9{fill:#8073ac;background:#8073ac;stroke:#8073ac}.PuOr.q8-9{fill:#542788;background:#542788;stroke:#542788}.PuOr.q0-10{fill:#7f3b08;background:#7f3b08;stroke:#7f3b08}.PuOr.q1-10{fill:#b35806;background:#b35806;stroke:#b35806}.PuOr.q2-10{fill:#e08214;background:#e08214;stroke:#e08214}.PuOr.q3-10{fill:#fdb863;background:#fdb863;stroke:#fdb863}.PuOr.q4-10{fill:#fee0b6;background:#fee0b6;stroke:#fee0b6}.PuOr.q5-10{fill:#d8daeb;background:#d8daeb;stroke:#d8daeb}.PuOr.q6-10{fill:#b2abd2;background:#b2abd2;stroke:#b2abd2}.PuOr.q7-10{fill:#8073ac;background:#8073ac;stroke:#8073ac}.PuOr.q8-10{fill:#542788;background:#542788;stroke:#542788}.PuOr.q9-10{fill:#2d004b;background:#2d004b;stroke:#2d004b}.PuOr.q0-11{fill:#7f3b08;background:#7f3b08;stroke:#7f3b08}.PuOr.q1-11{fill:#b35806;background:#b35806;stroke:#b35806}.PuOr.q2-11{fill:#e08214;background:#e08214;stroke:#e08214}.PuOr.q3-11{fill:#fdb863;background:#fdb863;stroke:#fdb863}.PuOr.q4-11{fill:#fee0b6;background:#fee0b6;stroke:#fee0b6}.PuOr.q5-11{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.PuOr.q6-11{fill:#d8daeb;background:#d8daeb;stroke:#d8daeb}.PuOr.q7-11{fill:#b2abd2;background:#b2abd2;stroke:#b2abd2}.PuOr.q8-11{fill:#8073ac;background:#8073ac;stroke:#8073ac}.PuOr.q9-11{fill:#542788;background:#542788;stroke:#542788}.PuOr.q10-11{fill:#2d004b;background:#2d004b;stroke:#2d004b}.BrBG.q0-3{fill:#d8b365;background:#d8b365;stroke:#d8b365}.BrBG.q1-3{fill:#f5f5f5;background:#f5f5f5;stroke:#f5f5f5}.BrBG.q2-3{fill:#5ab4ac;background:#5ab4ac;stroke:#5ab4ac}.BrBG.q0-4{fill:#a6611a;background:#a6611a;stroke:#a6611a}.BrBG.q1-4{fill:#dfc27d;background:#dfc27d;stroke:#dfc27d}.BrBG.q2-4{fill:#80cdc1;background:#80cdc1;stroke:#80cdc1}.BrBG.q3-4{fill:#018571;background:#018571;stroke:#018571}.BrBG.q0-5{fill:#a6611a;background:#a6611a;stroke:#a6611a}.BrBG.q1-5{fill:#dfc27d;background:#dfc27d;stroke:#dfc27d}.BrBG.q2-5{fill:#f5f5f5;background:#f5f5f5;stroke:#f5f5f5}.BrBG.q3-5{fill:#80cdc1;background:#80cdc1;stroke:#80cdc1}.BrBG.q4-5{fill:#018571;background:#018571;stroke:#018571}.BrBG.q0-6{fill:#8c510a;background:#8c510a;stroke:#8c510a}.BrBG.q1-6{fill:#d8b365;background:#d8b365;stroke:#d8b365}.BrBG.q2-6{fill:#f6e8c3;background:#f6e8c3;stroke:#f6e8c3}.BrBG.q3-6{fill:#c7eae5;background:#c7eae5;stroke:#c7eae5}.BrBG.q4-6{fill:#5ab4ac;background:#5ab4ac;stroke:#5ab4ac}.BrBG.q5-6{fill:#01665e;background:#01665e;stroke:#01665e}.BrBG.q0-7{fill:#8c510a;background:#8c510a;stroke:#8c510a}.BrBG.q1-7{fill:#d8b365;background:#d8b365;stroke:#d8b365}.BrBG.q2-7{fill:#f6e8c3;background:#f6e8c3;stroke:#f6e8c3}.BrBG.q3-7{fill:#f5f5f5;background:#f5f5f5;stroke:#f5f5f5}.BrBG.q4-7{fill:#c7eae5;background:#c7eae5;stroke:#c7eae5}.BrBG.q5-7{fill:#5ab4ac;background:#5ab4ac;stroke:#5ab4ac}.BrBG.q6-7{fill:#01665e;background:#01665e;stroke:#01665e}.BrBG.q0-8{fill:#8c510a;background:#8c510a;stroke:#8c510a}.BrBG.q1-8{fill:#bf812d;background:#bf812d;stroke:#bf812d}.BrBG.q2-8{fill:#dfc27d;background:#dfc27d;stroke:#dfc27d}.BrBG.q3-8{fill:#f6e8c3;background:#f6e8c3;stroke:#f6e8c3}.BrBG.q4-8{fill:#c7eae5;background:#c7eae5;stroke:#c7eae5}.BrBG.q5-8{fill:#80cdc1;background:#80cdc1;stroke:#80cdc1}.BrBG.q6-8{fill:#35978f;background:#35978f;stroke:#35978f}.BrBG.q7-8{fill:#01665e;background:#01665e;stroke:#01665e}.BrBG.q0-9{fill:#8c510a;background:#8c510a;stroke:#8c510a}.BrBG.q1-9{fill:#bf812d;background:#bf812d;stroke:#bf812d}.BrBG.q2-9{fill:#dfc27d;background:#dfc27d;stroke:#dfc27d}.BrBG.q3-9{fill:#f6e8c3;background:#f6e8c3;stroke:#f6e8c3}.BrBG.q4-9{fill:#f5f5f5;background:#f5f5f5;stroke:#f5f5f5}.BrBG.q5-9{fill:#c7eae5;background:#c7eae5;stroke:#c7eae5}.BrBG.q6-9{fill:#80cdc1;background:#80cdc1;stroke:#80cdc1}.BrBG.q7-9{fill:#35978f;background:#35978f;stroke:#35978f}.BrBG.q8-9{fill:#01665e;background:#01665e;stroke:#01665e}.BrBG.q0-10{fill:#543005;background:#543005;stroke:#543005}.BrBG.q1-10{fill:#8c510a;background:#8c510a;stroke:#8c510a}.BrBG.q2-10{fill:#bf812d;background:#bf812d;stroke:#bf812d}.BrBG.q3-10{fill:#dfc27d;background:#dfc27d;stroke:#dfc27d}.BrBG.q4-10{fill:#f6e8c3;background:#f6e8c3;stroke:#f6e8c3}.BrBG.q5-10{fill:#c7eae5;background:#c7eae5;stroke:#c7eae5}.BrBG.q6-10{fill:#80cdc1;background:#80cdc1;stroke:#80cdc1}.BrBG.q7-10{fill:#35978f;background:#35978f;stroke:#35978f}.BrBG.q8-10{fill:#01665e;background:#01665e;stroke:#01665e}.BrBG.q9-10{fill:#003c30;background:#003c30;stroke:#003c30}.BrBG.q0-11{fill:#543005;background:#543005;stroke:#543005}.BrBG.q1-11{fill:#8c510a;background:#8c510a;stroke:#8c510a}.BrBG.q2-11{fill:#bf812d;background:#bf812d;stroke:#bf812d}.BrBG.q3-11{fill:#dfc27d;background:#dfc27d;stroke:#dfc27d}.BrBG.q4-11{fill:#f6e8c3;background:#f6e8c3;stroke:#f6e8c3}.BrBG.q5-11{fill:#f5f5f5;background:#f5f5f5;stroke:#f5f5f5}.BrBG.q6-11{fill:#c7eae5;background:#c7eae5;stroke:#c7eae5}.BrBG.q7-11{fill:#80cdc1;background:#80cdc1;stroke:#80cdc1}.BrBG.q8-11{fill:#35978f;background:#35978f;stroke:#35978f}.BrBG.q9-11{fill:#01665e;background:#01665e;stroke:#01665e}.BrBG.q10-11{fill:#003c30;background:#003c30;stroke:#003c30}.PRGn.q0-3{fill:#af8dc3;background:#af8dc3;stroke:#af8dc3}.PRGn.q1-3{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.PRGn.q2-3{fill:#7fbf7b;background:#7fbf7b;stroke:#7fbf7b}.PRGn.q0-4{fill:#7b3294;background:#7b3294;stroke:#7b3294}.PRGn.q1-4{fill:#c2a5cf;background:#c2a5cf;stroke:#c2a5cf}.PRGn.q2-4{fill:#a6dba0;background:#a6dba0;stroke:#a6dba0}.PRGn.q3-4{fill:#008837;background:#008837;stroke:#008837}.PRGn.q0-5{fill:#7b3294;background:#7b3294;stroke:#7b3294}.PRGn.q1-5{fill:#c2a5cf;background:#c2a5cf;stroke:#c2a5cf}.PRGn.q2-5{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.PRGn.q3-5{fill:#a6dba0;background:#a6dba0;stroke:#a6dba0}.PRGn.q4-5{fill:#008837;background:#008837;stroke:#008837}.PRGn.q0-6{fill:#762a83;background:#762a83;stroke:#762a83}.PRGn.q1-6{fill:#af8dc3;background:#af8dc3;stroke:#af8dc3}.PRGn.q2-6{fill:#e7d4e8;background:#e7d4e8;stroke:#e7d4e8}.PRGn.q3-6{fill:#d9f0d3;background:#d9f0d3;stroke:#d9f0d3}.PRGn.q4-6{fill:#7fbf7b;background:#7fbf7b;stroke:#7fbf7b}.PRGn.q5-6{fill:#1b7837;background:#1b7837;stroke:#1b7837}.PRGn.q0-7{fill:#762a83;background:#762a83;stroke:#762a83}.PRGn.q1-7{fill:#af8dc3;background:#af8dc3;stroke:#af8dc3}.PRGn.q2-7{fill:#e7d4e8;background:#e7d4e8;stroke:#e7d4e8}.PRGn.q3-7{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.PRGn.q4-7{fill:#d9f0d3;background:#d9f0d3;stroke:#d9f0d3}.PRGn.q5-7{fill:#7fbf7b;background:#7fbf7b;stroke:#7fbf7b}.PRGn.q6-7{fill:#1b7837;background:#1b7837;stroke:#1b7837}.PRGn.q0-8{fill:#762a83;background:#762a83;stroke:#762a83}.PRGn.q1-8{fill:#9970ab;background:#9970ab;stroke:#9970ab}.PRGn.q2-8{fill:#c2a5cf;background:#c2a5cf;stroke:#c2a5cf}.PRGn.q3-8{fill:#e7d4e8;background:#e7d4e8;stroke:#e7d4e8}.PRGn.q4-8{fill:#d9f0d3;background:#d9f0d3;stroke:#d9f0d3}.PRGn.q5-8{fill:#a6dba0;background:#a6dba0;stroke:#a6dba0}.PRGn.q6-8{fill:#5aae61;background:#5aae61;stroke:#5aae61}.PRGn.q7-8{fill:#1b7837;background:#1b7837;stroke:#1b7837}.PRGn.q0-9{fill:#762a83;background:#762a83;stroke:#762a83}.PRGn.q1-9{fill:#9970ab;background:#9970ab;stroke:#9970ab}.PRGn.q2-9{fill:#c2a5cf;background:#c2a5cf;stroke:#c2a5cf}.PRGn.q3-9{fill:#e7d4e8;background:#e7d4e8;stroke:#e7d4e8}.PRGn.q4-9{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.PRGn.q5-9{fill:#d9f0d3;background:#d9f0d3;stroke:#d9f0d3}.PRGn.q6-9{fill:#a6dba0;background:#a6dba0;stroke:#a6dba0}.PRGn.q7-9{fill:#5aae61;background:#5aae61;stroke:#5aae61}.PRGn.q8-9{fill:#1b7837;background:#1b7837;stroke:#1b7837}.PRGn.q0-10{fill:#40004b;background:#40004b;stroke:#40004b}.PRGn.q1-10{fill:#762a83;background:#762a83;stroke:#762a83}.PRGn.q2-10{fill:#9970ab;background:#9970ab;stroke:#9970ab}.PRGn.q3-10{fill:#c2a5cf;background:#c2a5cf;stroke:#c2a5cf}.PRGn.q4-10{fill:#e7d4e8;background:#e7d4e8;stroke:#e7d4e8}.PRGn.q5-10{fill:#d9f0d3;background:#d9f0d3;stroke:#d9f0d3}.PRGn.q6-10{fill:#a6dba0;background:#a6dba0;stroke:#a6dba0}.PRGn.q7-10{fill:#5aae61;background:#5aae61;stroke:#5aae61}.PRGn.q8-10{fill:#1b7837;background:#1b7837;stroke:#1b7837}.PRGn.q9-10{fill:#00441b;background:#00441b;stroke:#00441b}.PRGn.q0-11{fill:#40004b;background:#40004b;stroke:#40004b}.PRGn.q1-11{fill:#762a83;background:#762a83;stroke:#762a83}.PRGn.q2-11{fill:#9970ab;background:#9970ab;stroke:#9970ab}.PRGn.q3-11{fill:#c2a5cf;background:#c2a5cf;stroke:#c2a5cf}.PRGn.q4-11{fill:#e7d4e8;background:#e7d4e8;stroke:#e7d4e8}.PRGn.q5-11{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.PRGn.q6-11{fill:#d9f0d3;background:#d9f0d3;stroke:#d9f0d3}.PRGn.q7-11{fill:#a6dba0;background:#a6dba0;stroke:#a6dba0}.PRGn.q8-11{fill:#5aae61;background:#5aae61;stroke:#5aae61}.PRGn.q9-11{fill:#1b7837;background:#1b7837;stroke:#1b7837}.PRGn.q10-11{fill:#00441b;background:#00441b;stroke:#00441b}.PiYG.q0-3{fill:#e9a3c9;background:#e9a3c9;stroke:#e9a3c9}.PiYG.q1-3{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.PiYG.q2-3{fill:#a1d76a;background:#a1d76a;stroke:#a1d76a}.PiYG.q0-4{fill:#d01c8b;background:#d01c8b;stroke:#d01c8b}.PiYG.q1-4{fill:#f1b6da;background:#f1b6da;stroke:#f1b6da}.PiYG.q2-4{fill:#b8e186;background:#b8e186;stroke:#b8e186}.PiYG.q3-4{fill:#4dac26;background:#4dac26;stroke:#4dac26}.PiYG.q0-5{fill:#d01c8b;background:#d01c8b;stroke:#d01c8b}.PiYG.q1-5{fill:#f1b6da;background:#f1b6da;stroke:#f1b6da}.PiYG.q2-5{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.PiYG.q3-5{fill:#b8e186;background:#b8e186;stroke:#b8e186}.PiYG.q4-5{fill:#4dac26;background:#4dac26;stroke:#4dac26}.PiYG.q0-6{fill:#c51b7d;background:#c51b7d;stroke:#c51b7d}.PiYG.q1-6{fill:#e9a3c9;background:#e9a3c9;stroke:#e9a3c9}.PiYG.q2-6{fill:#fde0ef;background:#fde0ef;stroke:#fde0ef}.PiYG.q3-6{fill:#e6f5d0;background:#e6f5d0;stroke:#e6f5d0}.PiYG.q4-6{fill:#a1d76a;background:#a1d76a;stroke:#a1d76a}.PiYG.q5-6{fill:#4d9221;background:#4d9221;stroke:#4d9221}.PiYG.q0-7{fill:#c51b7d;background:#c51b7d;stroke:#c51b7d}.PiYG.q1-7{fill:#e9a3c9;background:#e9a3c9;stroke:#e9a3c9}.PiYG.q2-7{fill:#fde0ef;background:#fde0ef;stroke:#fde0ef}.PiYG.q3-7{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.PiYG.q4-7{fill:#e6f5d0;background:#e6f5d0;stroke:#e6f5d0}.PiYG.q5-7{fill:#a1d76a;background:#a1d76a;stroke:#a1d76a}.PiYG.q6-7{fill:#4d9221;background:#4d9221;stroke:#4d9221}.PiYG.q0-8{fill:#c51b7d;background:#c51b7d;stroke:#c51b7d}.PiYG.q1-8{fill:#de77ae;background:#de77ae;stroke:#de77ae}.PiYG.q2-8{fill:#f1b6da;background:#f1b6da;stroke:#f1b6da}.PiYG.q3-8{fill:#fde0ef;background:#fde0ef;stroke:#fde0ef}.PiYG.q4-8{fill:#e6f5d0;background:#e6f5d0;stroke:#e6f5d0}.PiYG.q5-8{fill:#b8e186;background:#b8e186;stroke:#b8e186}.PiYG.q6-8{fill:#7fbc41;background:#7fbc41;stroke:#7fbc41}.PiYG.q7-8{fill:#4d9221;background:#4d9221;stroke:#4d9221}.PiYG.q0-9{fill:#c51b7d;background:#c51b7d;stroke:#c51b7d}.PiYG.q1-9{fill:#de77ae;background:#de77ae;stroke:#de77ae}.PiYG.q2-9{fill:#f1b6da;background:#f1b6da;stroke:#f1b6da}.PiYG.q3-9{fill:#fde0ef;background:#fde0ef;stroke:#fde0ef}.PiYG.q4-9{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.PiYG.q5-9{fill:#e6f5d0;background:#e6f5d0;stroke:#e6f5d0}.PiYG.q6-9{fill:#b8e186;background:#b8e186;stroke:#b8e186}.PiYG.q7-9{fill:#7fbc41;background:#7fbc41;stroke:#7fbc41}.PiYG.q8-9{fill:#4d9221;background:#4d9221;stroke:#4d9221}.PiYG.q0-10{fill:#8e0152;background:#8e0152;stroke:#8e0152}.PiYG.q1-10{fill:#c51b7d;background:#c51b7d;stroke:#c51b7d}.PiYG.q2-10{fill:#de77ae;background:#de77ae;stroke:#de77ae}.PiYG.q3-10{fill:#f1b6da;background:#f1b6da;stroke:#f1b6da}.PiYG.q4-10{fill:#fde0ef;background:#fde0ef;stroke:#fde0ef}.PiYG.q5-10{fill:#e6f5d0;background:#e6f5d0;stroke:#e6f5d0}.PiYG.q6-10{fill:#b8e186;background:#b8e186;stroke:#b8e186}.PiYG.q7-10{fill:#7fbc41;background:#7fbc41;stroke:#7fbc41}.PiYG.q8-10{fill:#4d9221;background:#4d9221;stroke:#4d9221}.PiYG.q9-10{fill:#276419;background:#276419;stroke:#276419}.PiYG.q0-11{fill:#8e0152;background:#8e0152;stroke:#8e0152}.PiYG.q1-11{fill:#c51b7d;background:#c51b7d;stroke:#c51b7d}.PiYG.q2-11{fill:#de77ae;background:#de77ae;stroke:#de77ae}.PiYG.q3-11{fill:#f1b6da;background:#f1b6da;stroke:#f1b6da}.PiYG.q4-11{fill:#fde0ef;background:#fde0ef;stroke:#fde0ef}.PiYG.q5-11{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.PiYG.q6-11{fill:#e6f5d0;background:#e6f5d0;stroke:#e6f5d0}.PiYG.q7-11{fill:#b8e186;background:#b8e186;stroke:#b8e186}.PiYG.q8-11{fill:#7fbc41;background:#7fbc41;stroke:#7fbc41}.PiYG.q9-11{fill:#4d9221;background:#4d9221;stroke:#4d9221}.PiYG.q10-11{fill:#276419;background:#276419;stroke:#276419}.RdBu.q0-3{fill:#ef8a62;background:#ef8a62;stroke:#ef8a62}.RdBu.q1-3{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.RdBu.q2-3{fill:#67a9cf;background:#67a9cf;stroke:#67a9cf}.RdBu.q0-4{fill:#ca0020;background:#ca0020;stroke:#ca0020}.RdBu.q1-4{fill:#f4a582;background:#f4a582;stroke:#f4a582}.RdBu.q2-4{fill:#92c5de;background:#92c5de;stroke:#92c5de}.RdBu.q3-4{fill:#0571b0;background:#0571b0;stroke:#0571b0}.RdBu.q0-5{fill:#ca0020;background:#ca0020;stroke:#ca0020}.RdBu.q1-5{fill:#f4a582;background:#f4a582;stroke:#f4a582}.RdBu.q2-5{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.RdBu.q3-5{fill:#92c5de;background:#92c5de;stroke:#92c5de}.RdBu.q4-5{fill:#0571b0;background:#0571b0;stroke:#0571b0}.RdBu.q0-6{fill:#b2182b;background:#b2182b;stroke:#b2182b}.RdBu.q1-6{fill:#ef8a62;background:#ef8a62;stroke:#ef8a62}.RdBu.q2-6{fill:#fddbc7;background:#fddbc7;stroke:#fddbc7}.RdBu.q3-6{fill:#d1e5f0;background:#d1e5f0;stroke:#d1e5f0}.RdBu.q4-6{fill:#67a9cf;background:#67a9cf;stroke:#67a9cf}.RdBu.q5-6{fill:#2166ac;background:#2166ac;stroke:#2166ac}.RdBu.q0-7{fill:#b2182b;background:#b2182b;stroke:#b2182b}.RdBu.q1-7{fill:#ef8a62;background:#ef8a62;stroke:#ef8a62}.RdBu.q2-7{fill:#fddbc7;background:#fddbc7;stroke:#fddbc7}.RdBu.q3-7{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.RdBu.q4-7{fill:#d1e5f0;background:#d1e5f0;stroke:#d1e5f0}.RdBu.q5-7{fill:#67a9cf;background:#67a9cf;stroke:#67a9cf}.RdBu.q6-7{fill:#2166ac;background:#2166ac;stroke:#2166ac}.RdBu.q0-8{fill:#b2182b;background:#b2182b;stroke:#b2182b}.RdBu.q1-8{fill:#d6604d;background:#d6604d;stroke:#d6604d}.RdBu.q2-8{fill:#f4a582;background:#f4a582;stroke:#f4a582}.RdBu.q3-8{fill:#fddbc7;background:#fddbc7;stroke:#fddbc7}.RdBu.q4-8{fill:#d1e5f0;background:#d1e5f0;stroke:#d1e5f0}.RdBu.q5-8{fill:#92c5de;background:#92c5de;stroke:#92c5de}.RdBu.q6-8{fill:#4393c3;background:#4393c3;stroke:#4393c3}.RdBu.q7-8{fill:#2166ac;background:#2166ac;stroke:#2166ac}.RdBu.q0-9{fill:#b2182b;background:#b2182b;stroke:#b2182b}.RdBu.q1-9{fill:#d6604d;background:#d6604d;stroke:#d6604d}.RdBu.q2-9{fill:#f4a582;background:#f4a582;stroke:#f4a582}.RdBu.q3-9{fill:#fddbc7;background:#fddbc7;stroke:#fddbc7}.RdBu.q4-9{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.RdBu.q5-9{fill:#d1e5f0;background:#d1e5f0;stroke:#d1e5f0}.RdBu.q6-9{fill:#92c5de;background:#92c5de;stroke:#92c5de}.RdBu.q7-9{fill:#4393c3;background:#4393c3;stroke:#4393c3}.RdBu.q8-9{fill:#2166ac;background:#2166ac;stroke:#2166ac}.RdBu.q0-10{fill:#67001f;background:#67001f;stroke:#67001f}.RdBu.q1-10{fill:#b2182b;background:#b2182b;stroke:#b2182b}.RdBu.q2-10{fill:#d6604d;background:#d6604d;stroke:#d6604d}.RdBu.q3-10{fill:#f4a582;background:#f4a582;stroke:#f4a582}.RdBu.q4-10{fill:#fddbc7;background:#fddbc7;stroke:#fddbc7}.RdBu.q5-10{fill:#d1e5f0;background:#d1e5f0;stroke:#d1e5f0}.RdBu.q6-10{fill:#92c5de;background:#92c5de;stroke:#92c5de}.RdBu.q7-10{fill:#4393c3;background:#4393c3;stroke:#4393c3}.RdBu.q8-10{fill:#2166ac;background:#2166ac;stroke:#2166ac}.RdBu.q9-10{fill:#053061;background:#053061;stroke:#053061}.RdBu.q0-11{fill:#67001f;background:#67001f;stroke:#67001f}.RdBu.q1-11{fill:#b2182b;background:#b2182b;stroke:#b2182b}.RdBu.q2-11{fill:#d6604d;background:#d6604d;stroke:#d6604d}.RdBu.q3-11{fill:#f4a582;background:#f4a582;stroke:#f4a582}.RdBu.q4-11{fill:#fddbc7;background:#fddbc7;stroke:#fddbc7}.RdBu.q5-11{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.RdBu.q6-11{fill:#d1e5f0;background:#d1e5f0;stroke:#d1e5f0}.RdBu.q7-11{fill:#92c5de;background:#92c5de;stroke:#92c5de}.RdBu.q8-11{fill:#4393c3;background:#4393c3;stroke:#4393c3}.RdBu.q9-11{fill:#2166ac;background:#2166ac;stroke:#2166ac}.RdBu.q10-11{fill:#053061;background:#053061;stroke:#053061}.RdGy.q0-3{fill:#ef8a62;background:#ef8a62;stroke:#ef8a62}.RdGy.q1-3{fill:#fff;background:#fff;stroke:#fff}.RdGy.q2-3{fill:#999;background:#999;stroke:#999}.RdGy.q0-4{fill:#ca0020;background:#ca0020;stroke:#ca0020}.RdGy.q1-4{fill:#f4a582;background:#f4a582;stroke:#f4a582}.RdGy.q2-4{fill:#bababa;background:#bababa;stroke:#bababa}.RdGy.q3-4{fill:#404040;background:#404040;stroke:#404040}.RdGy.q0-5{fill:#ca0020;background:#ca0020;stroke:#ca0020}.RdGy.q1-5{fill:#f4a582;background:#f4a582;stroke:#f4a582}.RdGy.q2-5{fill:#fff;background:#fff;stroke:#fff}.RdGy.q3-5{fill:#bababa;background:#bababa;stroke:#bababa}.RdGy.q4-5{fill:#404040;background:#404040;stroke:#404040}.RdGy.q0-6{fill:#b2182b;background:#b2182b;stroke:#b2182b}.RdGy.q1-6{fill:#ef8a62;background:#ef8a62;stroke:#ef8a62}.RdGy.q2-6{fill:#fddbc7;background:#fddbc7;stroke:#fddbc7}.RdGy.q3-6{fill:#e0e0e0;background:#e0e0e0;stroke:#e0e0e0}.RdGy.q4-6{fill:#999;background:#999;stroke:#999}.RdGy.q5-6{fill:#4d4d4d;background:#4d4d4d;stroke:#4d4d4d}.RdGy.q0-7{fill:#b2182b;background:#b2182b;stroke:#b2182b}.RdGy.q1-7{fill:#ef8a62;background:#ef8a62;stroke:#ef8a62}.RdGy.q2-7{fill:#fddbc7;background:#fddbc7;stroke:#fddbc7}.RdGy.q3-7{fill:#fff;background:#fff;stroke:#fff}.RdGy.q4-7{fill:#e0e0e0;background:#e0e0e0;stroke:#e0e0e0}.RdGy.q5-7{fill:#999;background:#999;stroke:#999}.RdGy.q6-7{fill:#4d4d4d;background:#4d4d4d;stroke:#4d4d4d}.RdGy.q0-8{fill:#b2182b;background:#b2182b;stroke:#b2182b}.RdGy.q1-8{fill:#d6604d;background:#d6604d;stroke:#d6604d}.RdGy.q2-8{fill:#f4a582;background:#f4a582;stroke:#f4a582}.RdGy.q3-8{fill:#fddbc7;background:#fddbc7;stroke:#fddbc7}.RdGy.q4-8{fill:#e0e0e0;background:#e0e0e0;stroke:#e0e0e0}.RdGy.q5-8{fill:#bababa;background:#bababa;stroke:#bababa}.RdGy.q6-8{fill:#878787;background:#878787;stroke:#878787}.RdGy.q7-8{fill:#4d4d4d;background:#4d4d4d;stroke:#4d4d4d}.RdGy.q0-9{fill:#b2182b;background:#b2182b;stroke:#b2182b}.RdGy.q1-9{fill:#d6604d;background:#d6604d;stroke:#d6604d}.RdGy.q2-9{fill:#f4a582;background:#f4a582;stroke:#f4a582}.RdGy.q3-9{fill:#fddbc7;background:#fddbc7;stroke:#fddbc7}.RdGy.q4-9{fill:#fff;background:#fff;stroke:#fff}.RdGy.q5-9{fill:#e0e0e0;background:#e0e0e0;stroke:#e0e0e0}.RdGy.q6-9{fill:#bababa;background:#bababa;stroke:#bababa}.RdGy.q7-9{fill:#878787;background:#878787;stroke:#878787}.RdGy.q8-9{fill:#4d4d4d;background:#4d4d4d;stroke:#4d4d4d}.RdGy.q0-10{fill:#67001f;background:#67001f;stroke:#67001f}.RdGy.q1-10{fill:#b2182b;background:#b2182b;stroke:#b2182b}.RdGy.q2-10{fill:#d6604d;background:#d6604d;stroke:#d6604d}.RdGy.q3-10{fill:#f4a582;background:#f4a582;stroke:#f4a582}.RdGy.q4-10{fill:#fddbc7;background:#fddbc7;stroke:#fddbc7}.RdGy.q5-10{fill:#e0e0e0;background:#e0e0e0;stroke:#e0e0e0}.RdGy.q6-10{fill:#bababa;background:#bababa;stroke:#bababa}.RdGy.q7-10{fill:#878787;background:#878787;stroke:#878787}.RdGy.q8-10{fill:#4d4d4d;background:#4d4d4d;stroke:#4d4d4d}.RdGy.q9-10{fill:#1a1a1a;background:#1a1a1a;stroke:#1a1a1a}.RdGy.q0-11{fill:#67001f;background:#67001f;stroke:#67001f}.RdGy.q1-11{fill:#b2182b;background:#b2182b;stroke:#b2182b}.RdGy.q2-11{fill:#d6604d;background:#d6604d;stroke:#d6604d}.RdGy.q3-11{fill:#f4a582;background:#f4a582;stroke:#f4a582}.RdGy.q4-11{fill:#fddbc7;background:#fddbc7;stroke:#fddbc7}.RdGy.q5-11{fill:#fff;background:#fff;stroke:#fff}.RdGy.q6-11{fill:#e0e0e0;background:#e0e0e0;stroke:#e0e0e0}.RdGy.q7-11{fill:#bababa;background:#bababa;stroke:#bababa}.RdGy.q8-11{fill:#878787;background:#878787;stroke:#878787}.RdGy.q9-11{fill:#4d4d4d;background:#4d4d4d;stroke:#4d4d4d}.RdGy.q10-11{fill:#1a1a1a;background:#1a1a1a;stroke:#1a1a1a}.RdYlBu.q0-3{fill:#fc8d59;background:#fc8d59;stroke:#fc8d59}.RdYlBu.q1-3{fill:#ffffbf;background:#ffffbf;stroke:#ffffbf}.RdYlBu.q2-3{fill:#91bfdb;background:#91bfdb;stroke:#91bfdb}.RdYlBu.q0-4{fill:#d7191c;background:#d7191c;stroke:#d7191c}.RdYlBu.q1-4{fill:#fdae61;background:#fdae61;stroke:#fdae61}.RdYlBu.q2-4{fill:#abd9e9;background:#abd9e9;stroke:#abd9e9}.RdYlBu.q3-4{fill:#2c7bb6;background:#2c7bb6;stroke:#2c7bb6}.RdYlBu.q0-5{fill:#d7191c;background:#d7191c;stroke:#d7191c}.RdYlBu.q1-5{fill:#fdae61;background:#fdae61;stroke:#fdae61}.RdYlBu.q2-5{fill:#ffffbf;background:#ffffbf;stroke:#ffffbf}.RdYlBu.q3-5{fill:#abd9e9;background:#abd9e9;stroke:#abd9e9}.RdYlBu.q4-5{fill:#2c7bb6;background:#2c7bb6;stroke:#2c7bb6}.RdYlBu.q0-6{fill:#d73027;background:#d73027;stroke:#d73027}.RdYlBu.q1-6{fill:#fc8d59;background:#fc8d59;stroke:#fc8d59}.RdYlBu.q2-6{fill:#fee090;background:#fee090;stroke:#fee090}.RdYlBu.q3-6{fill:#e0f3f8;background:#e0f3f8;stroke:#e0f3f8}.RdYlBu.q4-6{fill:#91bfdb;background:#91bfdb;stroke:#91bfdb}.RdYlBu.q5-6{fill:#4575b4;background:#4575b4;stroke:#4575b4}.RdYlBu.q0-7{fill:#d73027;background:#d73027;stroke:#d73027}.RdYlBu.q1-7{fill:#fc8d59;background:#fc8d59;stroke:#fc8d59}.RdYlBu.q2-7{fill:#fee090;background:#fee090;stroke:#fee090}.RdYlBu.q3-7{fill:#ffffbf;background:#ffffbf;stroke:#ffffbf}.RdYlBu.q4-7{fill:#e0f3f8;background:#e0f3f8;stroke:#e0f3f8}.RdYlBu.q5-7{fill:#91bfdb;background:#91bfdb;stroke:#91bfdb}.RdYlBu.q6-7{fill:#4575b4;background:#4575b4;stroke:#4575b4}.RdYlBu.q0-8{fill:#d73027;background:#d73027;stroke:#d73027}.RdYlBu.q1-8{fill:#f46d43;background:#f46d43;stroke:#f46d43}.RdYlBu.q2-8{fill:#fdae61;background:#fdae61;stroke:#fdae61}.RdYlBu.q3-8{fill:#fee090;background:#fee090;stroke:#fee090}.RdYlBu.q4-8{fill:#e0f3f8;background:#e0f3f8;stroke:#e0f3f8}.RdYlBu.q5-8{fill:#abd9e9;background:#abd9e9;stroke:#abd9e9}.RdYlBu.q6-8{fill:#74add1;background:#74add1;stroke:#74add1}.RdYlBu.q7-8{fill:#4575b4;background:#4575b4;stroke:#4575b4}.RdYlBu.q0-9{fill:#d73027;background:#d73027;stroke:#d73027}.RdYlBu.q1-9{fill:#f46d43;background:#f46d43;stroke:#f46d43}.RdYlBu.q2-9{fill:#fdae61;background:#fdae61;stroke:#fdae61}.RdYlBu.q3-9{fill:#fee090;background:#fee090;stroke:#fee090}.RdYlBu.q4-9{fill:#ffffbf;background:#ffffbf;stroke:#ffffbf}.RdYlBu.q5-9{fill:#e0f3f8;background:#e0f3f8;stroke:#e0f3f8}.RdYlBu.q6-9{fill:#abd9e9;background:#abd9e9;stroke:#abd9e9}.RdYlBu.q7-9{fill:#74add1;background:#74add1;stroke:#74add1}.RdYlBu.q8-9{fill:#4575b4;background:#4575b4;stroke:#4575b4}.RdYlBu.q0-10{fill:#a50026;background:#a50026;stroke:#a50026}.RdYlBu.q1-10{fill:#d73027;background:#d73027;stroke:#d73027}.RdYlBu.q2-10{fill:#f46d43;background:#f46d43;stroke:#f46d43}.RdYlBu.q3-10{fill:#fdae61;background:#fdae61;stroke:#fdae61}.RdYlBu.q4-10{fill:#fee090;background:#fee090;stroke:#fee090}.RdYlBu.q5-10{fill:#e0f3f8;background:#e0f3f8;stroke:#e0f3f8}.RdYlBu.q6-10{fill:#abd9e9;background:#abd9e9;stroke:#abd9e9}.RdYlBu.q7-10{fill:#74add1;background:#74add1;stroke:#74add1}.RdYlBu.q8-10{fill:#4575b4;background:#4575b4;stroke:#4575b4}.RdYlBu.q9-10{fill:#313695;background:#313695;stroke:#313695}.RdYlBu.q0-11{fill:#a50026;background:#a50026;stroke:#a50026}.RdYlBu.q1-11{fill:#d73027;background:#d73027;stroke:#d73027}.RdYlBu.q2-11{fill:#f46d43;background:#f46d43;stroke:#f46d43}.RdYlBu.q3-11{fill:#fdae61;background:#fdae61;stroke:#fdae61}.RdYlBu.q4-11{fill:#fee090;background:#fee090;stroke:#fee090}.RdYlBu.q5-11{fill:#ffffbf;background:#ffffbf;stroke:#ffffbf}.RdYlBu.q6-11{fill:#e0f3f8;background:#e0f3f8;stroke:#e0f3f8}.RdYlBu.q7-11{fill:#abd9e9;background:#abd9e9;stroke:#abd9e9}.RdYlBu.q8-11{fill:#74add1;background:#74add1;stroke:#74add1}.RdYlBu.q9-11{fill:#4575b4;background:#4575b4;stroke:#4575b4}.RdYlBu.q10-11{fill:#313695;background:#313695;stroke:#313695}.Spectral.q0-3{fill:#fc8d59;background:#fc8d59;stroke:#fc8d59}.Spectral.q1-3{fill:#ffffbf;background:#ffffbf;stroke:#ffffbf}.Spectral.q2-3{fill:#99d594;background:#99d594;stroke:#99d594}.Spectral.q0-4{fill:#d7191c;background:#d7191c;stroke:#d7191c}.Spectral.q1-4{fill:#fdae61;background:#fdae61;stroke:#fdae61}.Spectral.q2-4{fill:#abdda4;background:#abdda4;stroke:#abdda4}.Spectral.q3-4{fill:#2b83ba;background:#2b83ba;stroke:#2b83ba}.Spectral.q0-5{fill:#d7191c;background:#d7191c;stroke:#d7191c}.Spectral.q1-5{fill:#fdae61;background:#fdae61;stroke:#fdae61}.Spectral.q2-5{fill:#ffffbf;background:#ffffbf;stroke:#ffffbf}.Spectral.q3-5{fill:#abdda4;background:#abdda4;stroke:#abdda4}.Spectral.q4-5{fill:#2b83ba;background:#2b83ba;stroke:#2b83ba}.Spectral.q0-6{fill:#d53e4f;background:#d53e4f;stroke:#d53e4f}.Spectral.q1-6{fill:#fc8d59;background:#fc8d59;stroke:#fc8d59}.Spectral.q2-6{fill:#fee08b;background:#fee08b;stroke:#fee08b}.Spectral.q3-6{fill:#e6f598;background:#e6f598;stroke:#e6f598}.Spectral.q4-6{fill:#99d594;background:#99d594;stroke:#99d594}.Spectral.q5-6{fill:#3288bd;background:#3288bd;stroke:#3288bd}.Spectral.q0-7{fill:#d53e4f;background:#d53e4f;stroke:#d53e4f}.Spectral.q1-7{fill:#fc8d59;background:#fc8d59;stroke:#fc8d59}.Spectral.q2-7{fill:#fee08b;background:#fee08b;stroke:#fee08b}.Spectral.q3-7{fill:#ffffbf;background:#ffffbf;stroke:#ffffbf}.Spectral.q4-7{fill:#e6f598;background:#e6f598;stroke:#e6f598}.Spectral.q5-7{fill:#99d594;background:#99d594;stroke:#99d594}.Spectral.q6-7{fill:#3288bd;background:#3288bd;stroke:#3288bd}.Spectral.q0-8{fill:#d53e4f;background:#d53e4f;stroke:#d53e4f}.Spectral.q1-8{fill:#f46d43;background:#f46d43;stroke:#f46d43}.Spectral.q2-8{fill:#fdae61;background:#fdae61;stroke:#fdae61}.Spectral.q3-8{fill:#fee08b;background:#fee08b;stroke:#fee08b}.Spectral.q4-8{fill:#e6f598;background:#e6f598;stroke:#e6f598}.Spectral.q5-8{fill:#abdda4;background:#abdda4;stroke:#abdda4}.Spectral.q6-8{fill:#66c2a5;background:#66c2a5;stroke:#66c2a5}.Spectral.q7-8{fill:#3288bd;background:#3288bd;stroke:#3288bd}.Spectral.q0-9{fill:#d53e4f;background:#d53e4f;stroke:#d53e4f}.Spectral.q1-9{fill:#f46d43;background:#f46d43;stroke:#f46d43}.Spectral.q2-9{fill:#fdae61;background:#fdae61;stroke:#fdae61}.Spectral.q3-9{fill:#fee08b;background:#fee08b;stroke:#fee08b}.Spectral.q4-9{fill:#ffffbf;background:#ffffbf;stroke:#ffffbf}.Spectral.q5-9{fill:#e6f598;background:#e6f598;stroke:#e6f598}.Spectral.q6-9{fill:#abdda4;background:#abdda4;stroke:#abdda4}.Spectral.q7-9{fill:#66c2a5;background:#66c2a5;stroke:#66c2a5}.Spectral.q8-9{fill:#3288bd;background:#3288bd;stroke:#3288bd}.Spectral.q0-10{fill:#9e0142;background:#9e0142;stroke:#9e0142}.Spectral.q1-10{fill:#d53e4f;background:#d53e4f;stroke:#d53e4f}.Spectral.q2-10{fill:#f46d43;background:#f46d43;stroke:#f46d43}.Spectral.q3-10{fill:#fdae61;background:#fdae61;stroke:#fdae61}.Spectral.q4-10{fill:#fee08b;background:#fee08b;stroke:#fee08b}.Spectral.q5-10{fill:#e6f598;background:#e6f598;stroke:#e6f598}.Spectral.q6-10{fill:#abdda4;background:#abdda4;stroke:#abdda4}.Spectral.q7-10{fill:#66c2a5;background:#66c2a5;stroke:#66c2a5}.Spectral.q8-10{fill:#3288bd;background:#3288bd;stroke:#3288bd}.Spectral.q9-10{fill:#5e4fa2;background:#5e4fa2;stroke:#5e4fa2}.Spectral.q0-11{fill:#9e0142;background:#9e0142;stroke:#9e0142}.Spectral.q1-11{fill:#d53e4f;background:#d53e4f;stroke:#d53e4f}.Spectral.q2-11{fill:#f46d43;background:#f46d43;stroke:#f46d43}.Spectral.q3-11{fill:#fdae61;background:#fdae61;stroke:#fdae61}.Spectral.q4-11{fill:#fee08b;background:#fee08b;stroke:#fee08b}.Spectral.q5-11{fill:#ffffbf;background:#ffffbf;stroke:#ffffbf}.Spectral.q6-11{fill:#e6f598;background:#e6f598;stroke:#e6f598}.Spectral.q7-11{fill:#abdda4;background:#abdda4;stroke:#abdda4}.Spectral.q8-11{fill:#66c2a5;background:#66c2a5;stroke:#66c2a5}.Spectral.q9-11{fill:#3288bd;background:#3288bd;stroke:#3288bd}.Spectral.q10-11{fill:#5e4fa2;background:#5e4fa2;stroke:#5e4fa2}.RdYlGn.q0-3{fill:#fc8d59;background:#fc8d59;stroke:#fc8d59}.RdYlGn.q1-3{fill:#ffffbf;background:#ffffbf;stroke:#ffffbf}.RdYlGn.q2-3{fill:#91cf60;background:#91cf60;stroke:#91cf60}.RdYlGn.q0-4{fill:#d7191c;background:#d7191c;stroke:#d7191c}.RdYlGn.q1-4{fill:#fdae61;background:#fdae61;stroke:#fdae61}.RdYlGn.q2-4{fill:#a6d96a;background:#a6d96a;stroke:#a6d96a}.RdYlGn.q3-4{fill:#1a9641;background:#1a9641;stroke:#1a9641}.RdYlGn.q0-5{fill:#d7191c;background:#d7191c;stroke:#d7191c}.RdYlGn.q1-5{fill:#fdae61;background:#fdae61;stroke:#fdae61}.RdYlGn.q2-5{fill:#ffffbf;background:#ffffbf;stroke:#ffffbf}.RdYlGn.q3-5{fill:#a6d96a;background:#a6d96a;stroke:#a6d96a}.RdYlGn.q4-5{fill:#1a9641;background:#1a9641;stroke:#1a9641}.RdYlGn.q0-6{fill:#d73027;background:#d73027;stroke:#d73027}.RdYlGn.q1-6{fill:#fc8d59;background:#fc8d59;stroke:#fc8d59}.RdYlGn.q2-6{fill:#fee08b;background:#fee08b;stroke:#fee08b}.RdYlGn.q3-6{fill:#d9ef8b;background:#d9ef8b;stroke:#d9ef8b}.RdYlGn.q4-6{fill:#91cf60;background:#91cf60;stroke:#91cf60}.RdYlGn.q5-6{fill:#1a9850;background:#1a9850;stroke:#1a9850}.RdYlGn.q0-7{fill:#d73027;background:#d73027;stroke:#d73027}.RdYlGn.q1-7{fill:#fc8d59;background:#fc8d59;stroke:#fc8d59}.RdYlGn.q2-7{fill:#fee08b;background:#fee08b;stroke:#fee08b}.RdYlGn.q3-7{fill:#ffffbf;background:#ffffbf;stroke:#ffffbf}.RdYlGn.q4-7{fill:#d9ef8b;background:#d9ef8b;stroke:#d9ef8b}.RdYlGn.q5-7{fill:#91cf60;background:#91cf60;stroke:#91cf60}.RdYlGn.q6-7{fill:#1a9850;background:#1a9850;stroke:#1a9850}.RdYlGn.q0-8{fill:#d73027;background:#d73027;stroke:#d73027}.RdYlGn.q1-8{fill:#f46d43;background:#f46d43;stroke:#f46d43}.RdYlGn.q2-8{fill:#fdae61;background:#fdae61;stroke:#fdae61}.RdYlGn.q3-8{fill:#fee08b;background:#fee08b;stroke:#fee08b}.RdYlGn.q4-8{fill:#d9ef8b;background:#d9ef8b;stroke:#d9ef8b}.RdYlGn.q5-8{fill:#a6d96a;background:#a6d96a;stroke:#a6d96a}.RdYlGn.q6-8{fill:#66bd63;background:#66bd63;stroke:#66bd63}.RdYlGn.q7-8{fill:#1a9850;background:#1a9850;stroke:#1a9850}.RdYlGn.q0-9{fill:#d73027;background:#d73027;stroke:#d73027}.RdYlGn.q1-9{fill:#f46d43;background:#f46d43;stroke:#f46d43}.RdYlGn.q2-9{fill:#fdae61;background:#fdae61;stroke:#fdae61}.RdYlGn.q3-9{fill:#fee08b;background:#fee08b;stroke:#fee08b}.RdYlGn.q4-9{fill:#ffffbf;background:#ffffbf;stroke:#ffffbf}.RdYlGn.q5-9{fill:#d9ef8b;background:#d9ef8b;stroke:#d9ef8b}.RdYlGn.q6-9{fill:#a6d96a;background:#a6d96a;stroke:#a6d96a}.RdYlGn.q7-9{fill:#66bd63;background:#66bd63;stroke:#66bd63}.RdYlGn.q8-9{fill:#1a9850;background:#1a9850;stroke:#1a9850}.RdYlGn.q0-10{fill:#a50026;background:#a50026;stroke:#a50026}.RdYlGn.q1-10{fill:#d73027;background:#d73027;stroke:#d73027}.RdYlGn.q2-10{fill:#f46d43;background:#f46d43;stroke:#f46d43}.RdYlGn.q3-10{fill:#fdae61;background:#fdae61;stroke:#fdae61}.RdYlGn.q4-10{fill:#fee08b;background:#fee08b;stroke:#fee08b}.RdYlGn.q5-10{fill:#d9ef8b;background:#d9ef8b;stroke:#d9ef8b}.RdYlGn.q6-10{fill:#a6d96a;background:#a6d96a;stroke:#a6d96a}.RdYlGn.q7-10{fill:#66bd63;background:#66bd63;stroke:#66bd63}.RdYlGn.q8-10{fill:#1a9850;background:#1a9850;stroke:#1a9850}.RdYlGn.q9-10{fill:#006837;background:#006837;stroke:#006837}.RdYlGn.q0-11{fill:#a50026;background:#a50026;stroke:#a50026}.RdYlGn.q1-11{fill:#d73027;background:#d73027;stroke:#d73027}.RdYlGn.q2-11{fill:#f46d43;background:#f46d43;stroke:#f46d43}.RdYlGn.q3-11{fill:#fdae61;background:#fdae61;stroke:#fdae61}.RdYlGn.q4-11{fill:#fee08b;background:#fee08b;stroke:#fee08b}.RdYlGn.q5-11{fill:#ffffbf;background:#ffffbf;stroke:#ffffbf}.RdYlGn.q6-11{fill:#d9ef8b;background:#d9ef8b;stroke:#d9ef8b}.RdYlGn.q7-11{fill:#a6d96a;background:#a6d96a;stroke:#a6d96a}.RdYlGn.q8-11{fill:#66bd63;background:#66bd63;stroke:#66bd63}.RdYlGn.q9-11{fill:#1a9850;background:#1a9850;stroke:#1a9850}.RdYlGn.q10-11{fill:#006837;background:#006837;stroke:#006837}.Accent.q0-3{fill:#7fc97f;background:#7fc97f;stroke:#7fc97f}.Accent.q1-3{fill:#beaed4;background:#beaed4;stroke:#beaed4}.Accent.q2-3{fill:#fdc086;background:#fdc086;stroke:#fdc086}.Accent.q0-4{fill:#7fc97f;background:#7fc97f;stroke:#7fc97f}.Accent.q1-4{fill:#beaed4;background:#beaed4;stroke:#beaed4}.Accent.q2-4{fill:#fdc086;background:#fdc086;stroke:#fdc086}.Accent.q3-4{fill:#ff9;background:#ff9;stroke:#ff9}.Accent.q0-5{fill:#7fc97f;background:#7fc97f;stroke:#7fc97f}.Accent.q1-5{fill:#beaed4;background:#beaed4;stroke:#beaed4}.Accent.q2-5{fill:#fdc086;background:#fdc086;stroke:#fdc086}.Accent.q3-5{fill:#ff9;background:#ff9;stroke:#ff9}.Accent.q4-5{fill:#386cb0;background:#386cb0;stroke:#386cb0}.Accent.q0-6{fill:#7fc97f;background:#7fc97f;stroke:#7fc97f}.Accent.q1-6{fill:#beaed4;background:#beaed4;stroke:#beaed4}.Accent.q2-6{fill:#fdc086;background:#fdc086;stroke:#fdc086}.Accent.q3-6{fill:#ff9;background:#ff9;stroke:#ff9}.Accent.q4-6{fill:#386cb0;background:#386cb0;stroke:#386cb0}.Accent.q5-6{fill:red27f;background:0 0;stroke:red27f}.Accent.q0-7{fill:#7fc97f;background:#7fc97f;stroke:#7fc97f}.Accent.q1-7{fill:#beaed4;background:#beaed4;stroke:#beaed4}.Accent.q2-7{fill:#fdc086;background:#fdc086;stroke:#fdc086}.Accent.q3-7{fill:#ff9;background:#ff9;stroke:#ff9}.Accent.q4-7{fill:#386cb0;background:#386cb0;stroke:#386cb0}.Accent.q5-7{fill:red27f;background:0 0;stroke:red27f}.Accent.q6-7{fill:#bf5b17;background:#bf5b17;stroke:#bf5b17}.Accent.q0-8{fill:#7fc97f;background:#7fc97f;stroke:#7fc97f}.Accent.q1-8{fill:#beaed4;background:#beaed4;stroke:#beaed4}.Accent.q2-8{fill:#fdc086;background:#fdc086;stroke:#fdc086}.Accent.q3-8{fill:#ff9;background:#ff9;stroke:#ff9}.Accent.q4-8{fill:#386cb0;background:#386cb0;stroke:#386cb0}.Accent.q5-8{fill:red27f;background:0 0;stroke:red27f}.Accent.q6-8{fill:#bf5b17;background:#bf5b17;stroke:#bf5b17}.Accent.q7-8{fill:#666;background:#666;stroke:#666}.Dark2.q0-3{fill:#1b9e77;background:#1b9e77;stroke:#1b9e77}.Dark2.q1-3{fill:#d95f02;background:#d95f02;stroke:#d95f02}.Dark2.q2-3{fill:#7570b3;background:#7570b3;stroke:#7570b3}.Dark2.q0-4{fill:#1b9e77;background:#1b9e77;stroke:#1b9e77}.Dark2.q1-4{fill:#d95f02;background:#d95f02;stroke:#d95f02}.Dark2.q2-4{fill:#7570b3;background:#7570b3;stroke:#7570b3}.Dark2.q3-4{fill:#e7298a;background:#e7298a;stroke:#e7298a}.Dark2.q0-5{fill:#1b9e77;background:#1b9e77;stroke:#1b9e77}.Dark2.q1-5{fill:#d95f02;background:#d95f02;stroke:#d95f02}.Dark2.q2-5{fill:#7570b3;background:#7570b3;stroke:#7570b3}.Dark2.q3-5{fill:#e7298a;background:#e7298a;stroke:#e7298a}.Dark2.q4-5{fill:#66a61e;background:#66a61e;stroke:#66a61e}.Dark2.q0-6{fill:#1b9e77;background:#1b9e77;stroke:#1b9e77}.Dark2.q1-6{fill:#d95f02;background:#d95f02;stroke:#d95f02}.Dark2.q2-6{fill:#7570b3;background:#7570b3;stroke:#7570b3}.Dark2.q3-6{fill:#e7298a;background:#e7298a;stroke:#e7298a}.Dark2.q4-6{fill:#66a61e;background:#66a61e;stroke:#66a61e}.Dark2.q5-6{fill:#e6ab02;background:#e6ab02;stroke:#e6ab02}.Dark2.q0-7{fill:#1b9e77;background:#1b9e77;stroke:#1b9e77}.Dark2.q1-7{fill:#d95f02;background:#d95f02;stroke:#d95f02}.Dark2.q2-7{fill:#7570b3;background:#7570b3;stroke:#7570b3}.Dark2.q3-7{fill:#e7298a;background:#e7298a;stroke:#e7298a}.Dark2.q4-7{fill:#66a61e;background:#66a61e;stroke:#66a61e}.Dark2.q5-7{fill:#e6ab02;background:#e6ab02;stroke:#e6ab02}.Dark2.q6-7{fill:#a6761d;background:#a6761d;stroke:#a6761d}.Dark2.q0-8{fill:#1b9e77;background:#1b9e77;stroke:#1b9e77}.Dark2.q1-8{fill:#d95f02;background:#d95f02;stroke:#d95f02}.Dark2.q2-8{fill:#7570b3;background:#7570b3;stroke:#7570b3}.Dark2.q3-8{fill:#e7298a;background:#e7298a;stroke:#e7298a}.Dark2.q4-8{fill:#66a61e;background:#66a61e;stroke:#66a61e}.Dark2.q5-8{fill:#e6ab02;background:#e6ab02;stroke:#e6ab02}.Dark2.q6-8{fill:#a6761d;background:#a6761d;stroke:#a6761d}.Dark2.q7-8{fill:#666;background:#666;stroke:#666}.Paired.q0-3{fill:#a6cee3;background:#a6cee3;stroke:#a6cee3}.Paired.q1-3{fill:#1f78b4;background:#1f78b4;stroke:#1f78b4}.Paired.q2-3{fill:#b2df8a;background:#b2df8a;stroke:#b2df8a}.Paired.q0-4{fill:#a6cee3;background:#a6cee3;stroke:#a6cee3}.Paired.q1-4{fill:#1f78b4;background:#1f78b4;stroke:#1f78b4}.Paired.q2-4{fill:#b2df8a;background:#b2df8a;stroke:#b2df8a}.Paired.q3-4{fill:#33a02c;background:#33a02c;stroke:#33a02c}.Paired.q0-5{fill:#a6cee3;background:#a6cee3;stroke:#a6cee3}.Paired.q1-5{fill:#1f78b4;background:#1f78b4;stroke:#1f78b4}.Paired.q2-5{fill:#b2df8a;background:#b2df8a;stroke:#b2df8a}.Paired.q3-5{fill:#33a02c;background:#33a02c;stroke:#33a02c}.Paired.q4-5{fill:#fb9a99;background:#fb9a99;stroke:#fb9a99}.Paired.q0-6{fill:#a6cee3;background:#a6cee3;stroke:#a6cee3}.Paired.q1-6{fill:#1f78b4;background:#1f78b4;stroke:#1f78b4}.Paired.q2-6{fill:#b2df8a;background:#b2df8a;stroke:#b2df8a}.Paired.q3-6{fill:#33a02c;background:#33a02c;stroke:#33a02c}.Paired.q4-6{fill:#fb9a99;background:#fb9a99;stroke:#fb9a99}.Paired.q5-6{fill:#e31a1c;background:#e31a1c;stroke:#e31a1c}.Paired.q0-7{fill:#a6cee3;background:#a6cee3;stroke:#a6cee3}.Paired.q1-7{fill:#1f78b4;background:#1f78b4;stroke:#1f78b4}.Paired.q2-7{fill:#b2df8a;background:#b2df8a;stroke:#b2df8a}.Paired.q3-7{fill:#33a02c;background:#33a02c;stroke:#33a02c}.Paired.q4-7{fill:#fb9a99;background:#fb9a99;stroke:#fb9a99}.Paired.q5-7{fill:#e31a1c;background:#e31a1c;stroke:#e31a1c}.Paired.q6-7{fill:#fdbf6f;background:#fdbf6f;stroke:#fdbf6f}.Paired.q0-8{fill:#a6cee3;background:#a6cee3;stroke:#a6cee3}.Paired.q1-8{fill:#1f78b4;background:#1f78b4;stroke:#1f78b4}.Paired.q2-8{fill:#b2df8a;background:#b2df8a;stroke:#b2df8a}.Paired.q3-8{fill:#33a02c;background:#33a02c;stroke:#33a02c}.Paired.q4-8{fill:#fb9a99;background:#fb9a99;stroke:#fb9a99}.Paired.q5-8{fill:#e31a1c;background:#e31a1c;stroke:#e31a1c}.Paired.q6-8{fill:#fdbf6f;background:#fdbf6f;stroke:#fdbf6f}.Paired.q7-8{fill:#ff7f00;background:#ff7f00;stroke:#ff7f00}.Paired.q0-9{fill:#a6cee3;background:#a6cee3;stroke:#a6cee3}.Paired.q1-9{fill:#1f78b4;background:#1f78b4;stroke:#1f78b4}.Paired.q2-9{fill:#b2df8a;background:#b2df8a;stroke:#b2df8a}.Paired.q3-9{fill:#33a02c;background:#33a02c;stroke:#33a02c}.Paired.q4-9{fill:#fb9a99;background:#fb9a99;stroke:#fb9a99}.Paired.q5-9{fill:#e31a1c;background:#e31a1c;stroke:#e31a1c}.Paired.q6-9{fill:#fdbf6f;background:#fdbf6f;stroke:#fdbf6f}.Paired.q7-9{fill:#ff7f00;background:#ff7f00;stroke:#ff7f00}.Paired.q8-9{fill:#cab2d6;background:#cab2d6;stroke:#cab2d6}.Paired.q0-10{fill:#a6cee3;background:#a6cee3;stroke:#a6cee3}.Paired.q1-10{fill:#1f78b4;background:#1f78b4;stroke:#1f78b4}.Paired.q2-10{fill:#b2df8a;background:#b2df8a;stroke:#b2df8a}.Paired.q3-10{fill:#33a02c;background:#33a02c;stroke:#33a02c}.Paired.q4-10{fill:#fb9a99;background:#fb9a99;stroke:#fb9a99}.Paired.q5-10{fill:#e31a1c;background:#e31a1c;stroke:#e31a1c}.Paired.q6-10{fill:#fdbf6f;background:#fdbf6f;stroke:#fdbf6f}.Paired.q7-10{fill:#ff7f00;background:#ff7f00;stroke:#ff7f00}.Paired.q8-10{fill:#cab2d6;background:#cab2d6;stroke:#cab2d6}.Paired.q9-10{fill:#6a3d9a;background:#6a3d9a;stroke:#6a3d9a}.Paired.q0-11{fill:#a6cee3;background:#a6cee3;stroke:#a6cee3}.Paired.q1-11{fill:#1f78b4;background:#1f78b4;stroke:#1f78b4}.Paired.q2-11{fill:#b2df8a;background:#b2df8a;stroke:#b2df8a}.Paired.q3-11{fill:#33a02c;background:#33a02c;stroke:#33a02c}.Paired.q4-11{fill:#fb9a99;background:#fb9a99;stroke:#fb9a99}.Paired.q5-11{fill:#e31a1c;background:#e31a1c;stroke:#e31a1c}.Paired.q6-11{fill:#fdbf6f;background:#fdbf6f;stroke:#fdbf6f}.Paired.q7-11{fill:#ff7f00;background:#ff7f00;stroke:#ff7f00}.Paired.q8-11{fill:#cab2d6;background:#cab2d6;stroke:#cab2d6}.Paired.q9-11{fill:#6a3d9a;background:#6a3d9a;stroke:#6a3d9a}.Paired.q10-11{fill:#ff9;background:#ff9;stroke:#ff9}.Paired.q0-12{fill:#a6cee3;background:#a6cee3;stroke:#a6cee3}.Paired.q1-12{fill:#1f78b4;background:#1f78b4;stroke:#1f78b4}.Paired.q2-12{fill:#b2df8a;background:#b2df8a;stroke:#b2df8a}.Paired.q3-12{fill:#33a02c;background:#33a02c;stroke:#33a02c}.Paired.q4-12{fill:#fb9a99;background:#fb9a99;stroke:#fb9a99}.Paired.q5-12{fill:#e31a1c;background:#e31a1c;stroke:#e31a1c}.Paired.q6-12{fill:#fdbf6f;background:#fdbf6f;stroke:#fdbf6f}.Paired.q7-12{fill:#ff7f00;background:#ff7f00;stroke:#ff7f00}.Paired.q8-12{fill:#cab2d6;background:#cab2d6;stroke:#cab2d6}.Paired.q9-12{fill:#6a3d9a;background:#6a3d9a;stroke:#6a3d9a}.Paired.q10-12{fill:#ff9;background:#ff9;stroke:#ff9}.Paired.q11-12{fill:#b15928;background:#b15928;stroke:#b15928}.Pastel1.q0-3{fill:#fbb4ae;background:#fbb4ae;stroke:#fbb4ae}.Pastel1.q1-3{fill:#b3cde3;background:#b3cde3;stroke:#b3cde3}.Pastel1.q2-3{fill:#ccebc5;background:#ccebc5;stroke:#ccebc5}.Pastel1.q0-4{fill:#fbb4ae;background:#fbb4ae;stroke:#fbb4ae}.Pastel1.q1-4{fill:#b3cde3;background:#b3cde3;stroke:#b3cde3}.Pastel1.q2-4{fill:#ccebc5;background:#ccebc5;stroke:#ccebc5}.Pastel1.q3-4{fill:#decbe4;background:#decbe4;stroke:#decbe4}.Pastel1.q0-5{fill:#fbb4ae;background:#fbb4ae;stroke:#fbb4ae}.Pastel1.q1-5{fill:#b3cde3;background:#b3cde3;stroke:#b3cde3}.Pastel1.q2-5{fill:#ccebc5;background:#ccebc5;stroke:#ccebc5}.Pastel1.q3-5{fill:#decbe4;background:#decbe4;stroke:#decbe4}.Pastel1.q4-5{fill:#fed9a6;background:#fed9a6;stroke:#fed9a6}.Pastel1.q0-6{fill:#fbb4ae;background:#fbb4ae;stroke:#fbb4ae}.Pastel1.q1-6{fill:#b3cde3;background:#b3cde3;stroke:#b3cde3}.Pastel1.q2-6{fill:#ccebc5;background:#ccebc5;stroke:#ccebc5}.Pastel1.q3-6{fill:#decbe4;background:#decbe4;stroke:#decbe4}.Pastel1.q4-6{fill:#fed9a6;background:#fed9a6;stroke:#fed9a6}.Pastel1.q5-6{fill:#ffc;background:#ffc;stroke:#ffc}.Pastel1.q0-7{fill:#fbb4ae;background:#fbb4ae;stroke:#fbb4ae}.Pastel1.q1-7{fill:#b3cde3;background:#b3cde3;stroke:#b3cde3}.Pastel1.q2-7{fill:#ccebc5;background:#ccebc5;stroke:#ccebc5}.Pastel1.q3-7{fill:#decbe4;background:#decbe4;stroke:#decbe4}.Pastel1.q4-7{fill:#fed9a6;background:#fed9a6;stroke:#fed9a6}.Pastel1.q5-7{fill:#ffc;background:#ffc;stroke:#ffc}.Pastel1.q6-7{fill:#e5d8bd;background:#e5d8bd;stroke:#e5d8bd}.Pastel1.q0-8{fill:#fbb4ae;background:#fbb4ae;stroke:#fbb4ae}.Pastel1.q1-8{fill:#b3cde3;background:#b3cde3;stroke:#b3cde3}.Pastel1.q2-8{fill:#ccebc5;background:#ccebc5;stroke:#ccebc5}.Pastel1.q3-8{fill:#decbe4;background:#decbe4;stroke:#decbe4}.Pastel1.q4-8{fill:#fed9a6;background:#fed9a6;stroke:#fed9a6}.Pastel1.q5-8{fill:#ffc;background:#ffc;stroke:#ffc}.Pastel1.q6-8{fill:#e5d8bd;background:#e5d8bd;stroke:#e5d8bd}.Pastel1.q7-8{fill:#fddaec;background:#fddaec;stroke:#fddaec}.Pastel1.q0-9{fill:#fbb4ae;background:#fbb4ae;stroke:#fbb4ae}.Pastel1.q1-9{fill:#b3cde3;background:#b3cde3;stroke:#b3cde3}.Pastel1.q2-9{fill:#ccebc5;background:#ccebc5;stroke:#ccebc5}.Pastel1.q3-9{fill:#decbe4;background:#decbe4;stroke:#decbe4}.Pastel1.q4-9{fill:#fed9a6;background:#fed9a6;stroke:#fed9a6}.Pastel1.q5-9{fill:#ffc;background:#ffc;stroke:#ffc}.Pastel1.q6-9{fill:#e5d8bd;background:#e5d8bd;stroke:#e5d8bd}.Pastel1.q7-9{fill:#fddaec;background:#fddaec;stroke:#fddaec}.Pastel1.q8-9{fill:#f2f2f2;background:#f2f2f2;stroke:#f2f2f2}.Pastel2.q0-3{fill:#b3e2cd;background:#b3e2cd;stroke:#b3e2cd}.Pastel2.q1-3{fill:#fdcdac;background:#fdcdac;stroke:#fdcdac}.Pastel2.q2-3{fill:#cbd5e8;background:#cbd5e8;stroke:#cbd5e8}.Pastel2.q0-4{fill:#b3e2cd;background:#b3e2cd;stroke:#b3e2cd}.Pastel2.q1-4{fill:#fdcdac;background:#fdcdac;stroke:#fdcdac}.Pastel2.q2-4{fill:#cbd5e8;background:#cbd5e8;stroke:#cbd5e8}.Pastel2.q3-4{fill:#f4cae4;background:#f4cae4;stroke:#f4cae4}.Pastel2.q0-5{fill:#b3e2cd;background:#b3e2cd;stroke:#b3e2cd}.Pastel2.q1-5{fill:#fdcdac;background:#fdcdac;stroke:#fdcdac}.Pastel2.q2-5{fill:#cbd5e8;background:#cbd5e8;stroke:#cbd5e8}.Pastel2.q3-5{fill:#f4cae4;background:#f4cae4;stroke:#f4cae4}.Pastel2.q4-5{fill:#e6f5c9;background:#e6f5c9;stroke:#e6f5c9}.Pastel2.q0-6{fill:#b3e2cd;background:#b3e2cd;stroke:#b3e2cd}.Pastel2.q1-6{fill:#fdcdac;background:#fdcdac;stroke:#fdcdac}.Pastel2.q2-6{fill:#cbd5e8;background:#cbd5e8;stroke:#cbd5e8}.Pastel2.q3-6{fill:#f4cae4;background:#f4cae4;stroke:#f4cae4}.Pastel2.q4-6{fill:#e6f5c9;background:#e6f5c9;stroke:#e6f5c9}.Pastel2.q5-6{fill:#fff2ae;background:#fff2ae;stroke:#fff2ae}.Pastel2.q0-7{fill:#b3e2cd;background:#b3e2cd;stroke:#b3e2cd}.Pastel2.q1-7{fill:#fdcdac;background:#fdcdac;stroke:#fdcdac}.Pastel2.q2-7{fill:#cbd5e8;background:#cbd5e8;stroke:#cbd5e8}.Pastel2.q3-7{fill:#f4cae4;background:#f4cae4;stroke:#f4cae4}.Pastel2.q4-7{fill:#e6f5c9;background:#e6f5c9;stroke:#e6f5c9}.Pastel2.q5-7{fill:#fff2ae;background:#fff2ae;stroke:#fff2ae}.Pastel2.q6-7{fill:#f1e2cc;background:#f1e2cc;stroke:#f1e2cc}.Pastel2.q0-8{fill:#b3e2cd;background:#b3e2cd;stroke:#b3e2cd}.Pastel2.q1-8{fill:#fdcdac;background:#fdcdac;stroke:#fdcdac}.Pastel2.q2-8{fill:#cbd5e8;background:#cbd5e8;stroke:#cbd5e8}.Pastel2.q3-8{fill:#f4cae4;background:#f4cae4;stroke:#f4cae4}.Pastel2.q4-8{fill:#e6f5c9;background:#e6f5c9;stroke:#e6f5c9}.Pastel2.q5-8{fill:#fff2ae;background:#fff2ae;stroke:#fff2ae}.Pastel2.q6-8{fill:#f1e2cc;background:#f1e2cc;stroke:#f1e2cc}.Pastel2.q7-8{fill:#ccc;background:#ccc;stroke:#ccc}.Set1.q0-3{fill:#e41a1c;background:#e41a1c;stroke:#e41a1c}.Set1.q1-3{fill:#377eb8;background:#377eb8;stroke:#377eb8}.Set1.q2-3{fill:#4daf4a;background:#4daf4a;stroke:#4daf4a}.Set1.q0-4{fill:#e41a1c;background:#e41a1c;stroke:#e41a1c}.Set1.q1-4{fill:#377eb8;background:#377eb8;stroke:#377eb8}.Set1.q2-4{fill:#4daf4a;background:#4daf4a;stroke:#4daf4a}.Set1.q3-4{fill:#984ea3;background:#984ea3;stroke:#984ea3}.Set1.q0-5{fill:#e41a1c;background:#e41a1c;stroke:#e41a1c}.Set1.q1-5{fill:#377eb8;background:#377eb8;stroke:#377eb8}.Set1.q2-5{fill:#4daf4a;background:#4daf4a;stroke:#4daf4a}.Set1.q3-5{fill:#984ea3;background:#984ea3;stroke:#984ea3}.Set1.q4-5{fill:#ff7f00;background:#ff7f00;stroke:#ff7f00}.Set1.q0-6{fill:#e41a1c;background:#e41a1c;stroke:#e41a1c}.Set1.q1-6{fill:#377eb8;background:#377eb8;stroke:#377eb8}.Set1.q2-6{fill:#4daf4a;background:#4daf4a;stroke:#4daf4a}.Set1.q3-6{fill:#984ea3;background:#984ea3;stroke:#984ea3}.Set1.q4-6{fill:#ff7f00;background:#ff7f00;stroke:#ff7f00}.Set1.q5-6{fill:#ff3;background:#ff3;stroke:#ff3}.Set1.q0-7{fill:#e41a1c;background:#e41a1c;stroke:#e41a1c}.Set1.q1-7{fill:#377eb8;background:#377eb8;stroke:#377eb8}.Set1.q2-7{fill:#4daf4a;background:#4daf4a;stroke:#4daf4a}.Set1.q3-7{fill:#984ea3;background:#984ea3;stroke:#984ea3}.Set1.q4-7{fill:#ff7f00;background:#ff7f00;stroke:#ff7f00}.Set1.q5-7{fill:#ff3;background:#ff3;stroke:#ff3}.Set1.q6-7{fill:#a65628;background:#a65628;stroke:#a65628}.Set1.q0-8{fill:#e41a1c;background:#e41a1c;stroke:#e41a1c}.Set1.q1-8{fill:#377eb8;background:#377eb8;stroke:#377eb8}.Set1.q2-8{fill:#4daf4a;background:#4daf4a;stroke:#4daf4a}.Set1.q3-8{fill:#984ea3;background:#984ea3;stroke:#984ea3}.Set1.q4-8{fill:#ff7f00;background:#ff7f00;stroke:#ff7f00}.Set1.q5-8{fill:#ff3;background:#ff3;stroke:#ff3}.Set1.q6-8{fill:#a65628;background:#a65628;stroke:#a65628}.Set1.q7-8{fill:#f781bf;background:#f781bf;stroke:#f781bf}.Set1.q0-9{fill:#e41a1c;background:#e41a1c;stroke:#e41a1c}.Set1.q1-9{fill:#377eb8;background:#377eb8;stroke:#377eb8}.Set1.q2-9{fill:#4daf4a;background:#4daf4a;stroke:#4daf4a}.Set1.q3-9{fill:#984ea3;background:#984ea3;stroke:#984ea3}.Set1.q4-9{fill:#ff7f00;background:#ff7f00;stroke:#ff7f00}.Set1.q5-9{fill:#ff3;background:#ff3;stroke:#ff3}.Set1.q6-9{fill:#a65628;background:#a65628;stroke:#a65628}.Set1.q7-9{fill:#f781bf;background:#f781bf;stroke:#f781bf}.Set1.q8-9{fill:#999;background:#999;stroke:#999}.Set2.q0-3{fill:#66c2a5;background:#66c2a5;stroke:#66c2a5}.Set2.q1-3{fill:#fc8d62;background:#fc8d62;stroke:#fc8d62}.Set2.q2-3{fill:#8da0cb;background:#8da0cb;stroke:#8da0cb}.Set2.q0-4{fill:#66c2a5;background:#66c2a5;stroke:#66c2a5}.Set2.q1-4{fill:#fc8d62;background:#fc8d62;stroke:#fc8d62}.Set2.q2-4{fill:#8da0cb;background:#8da0cb;stroke:#8da0cb}.Set2.q3-4{fill:#e78ac3;background:#e78ac3;stroke:#e78ac3}.Set2.q0-5{fill:#66c2a5;background:#66c2a5;stroke:#66c2a5}.Set2.q1-5{fill:#fc8d62;background:#fc8d62;stroke:#fc8d62}.Set2.q2-5{fill:#8da0cb;background:#8da0cb;stroke:#8da0cb}.Set2.q3-5{fill:#e78ac3;background:#e78ac3;stroke:#e78ac3}.Set2.q4-5{fill:#a6d854;background:#a6d854;stroke:#a6d854}.Set2.q0-6{fill:#66c2a5;background:#66c2a5;stroke:#66c2a5}.Set2.q1-6{fill:#fc8d62;background:#fc8d62;stroke:#fc8d62}.Set2.q2-6{fill:#8da0cb;background:#8da0cb;stroke:#8da0cb}.Set2.q3-6{fill:#e78ac3;background:#e78ac3;stroke:#e78ac3}.Set2.q4-6{fill:#a6d854;background:#a6d854;stroke:#a6d854}.Set2.q5-6{fill:#ffd92f;background:#ffd92f;stroke:#ffd92f}.Set2.q0-7{fill:#66c2a5;background:#66c2a5;stroke:#66c2a5}.Set2.q1-7{fill:#fc8d62;background:#fc8d62;stroke:#fc8d62}.Set2.q2-7{fill:#8da0cb;background:#8da0cb;stroke:#8da0cb}.Set2.q3-7{fill:#e78ac3;background:#e78ac3;stroke:#e78ac3}.Set2.q4-7{fill:#a6d854;background:#a6d854;stroke:#a6d854}.Set2.q5-7{fill:#ffd92f;background:#ffd92f;stroke:#ffd92f}.Set2.q6-7{fill:#e5c494;background:#e5c494;stroke:#e5c494}.Set2.q0-8{fill:#66c2a5;background:#66c2a5;stroke:#66c2a5}.Set2.q1-8{fill:#fc8d62;background:#fc8d62;stroke:#fc8d62}.Set2.q2-8{fill:#8da0cb;background:#8da0cb;stroke:#8da0cb}.Set2.q3-8{fill:#e78ac3;background:#e78ac3;stroke:#e78ac3}.Set2.q4-8{fill:#a6d854;background:#a6d854;stroke:#a6d854}.Set2.q5-8{fill:#ffd92f;background:#ffd92f;stroke:#ffd92f}.Set2.q6-8{fill:#e5c494;background:#e5c494;stroke:#e5c494}.Set2.q7-8{fill:#b3b3b3;background:#b3b3b3;stroke:#b3b3b3}.Set3.q0-3{fill:#8dd3c7;background:#8dd3c7;stroke:#8dd3c7}.Set3.q1-3{fill:#ffffb3;background:#ffffb3;stroke:#ffffb3}.Set3.q2-3{fill:#bebada;background:#bebada;stroke:#bebada}.Set3.q0-4{fill:#8dd3c7;background:#8dd3c7;stroke:#8dd3c7}.Set3.q1-4{fill:#ffffb3;background:#ffffb3;stroke:#ffffb3}.Set3.q2-4{fill:#bebada;background:#bebada;stroke:#bebada}.Set3.q3-4{fill:#fb8072;background:#fb8072;stroke:#fb8072}.Set3.q0-5{fill:#8dd3c7;background:#8dd3c7;stroke:#8dd3c7}.Set3.q1-5{fill:#ffffb3;background:#ffffb3;stroke:#ffffb3}.Set3.q2-5{fill:#bebada;background:#bebada;stroke:#bebada}.Set3.q3-5{fill:#fb8072;background:#fb8072;stroke:#fb8072}.Set3.q4-5{fill:#80b1d3;background:#80b1d3;stroke:#80b1d3}.Set3.q0-6{fill:#8dd3c7;background:#8dd3c7;stroke:#8dd3c7}.Set3.q1-6{fill:#ffffb3;background:#ffffb3;stroke:#ffffb3}.Set3.q2-6{fill:#bebada;background:#bebada;stroke:#bebada}.Set3.q3-6{fill:#fb8072;background:#fb8072;stroke:#fb8072}.Set3.q4-6{fill:#80b1d3;background:#80b1d3;stroke:#80b1d3}.Set3.q5-6{fill:#fdb462;background:#fdb462;stroke:#fdb462}.Set3.q0-7{fill:#8dd3c7;background:#8dd3c7;stroke:#8dd3c7}.Set3.q1-7{fill:#ffffb3;background:#ffffb3;stroke:#ffffb3}.Set3.q2-7{fill:#bebada;background:#bebada;stroke:#bebada}.Set3.q3-7{fill:#fb8072;background:#fb8072;stroke:#fb8072}.Set3.q4-7{fill:#80b1d3;background:#80b1d3;stroke:#80b1d3}.Set3.q5-7{fill:#fdb462;background:#fdb462;stroke:#fdb462}.Set3.q6-7{fill:#b3de69;background:#b3de69;stroke:#b3de69}.Set3.q0-8{fill:#8dd3c7;background:#8dd3c7;stroke:#8dd3c7}.Set3.q1-8{fill:#ffffb3;background:#ffffb3;stroke:#ffffb3}.Set3.q2-8{fill:#bebada;background:#bebada;stroke:#bebada}.Set3.q3-8{fill:#fb8072;background:#fb8072;stroke:#fb8072}.Set3.q4-8{fill:#80b1d3;background:#80b1d3;stroke:#80b1d3}.Set3.q5-8{fill:#fdb462;background:#fdb462;stroke:#fdb462}.Set3.q6-8{fill:#b3de69;background:#b3de69;stroke:#b3de69}.Set3.q7-8{fill:#fccde5;background:#fccde5;stroke:#fccde5}.Set3.q0-9{fill:#8dd3c7;background:#8dd3c7;stroke:#8dd3c7}.Set3.q1-9{fill:#ffffb3;background:#ffffb3;stroke:#ffffb3}.Set3.q2-9{fill:#bebada;background:#bebada;stroke:#bebada}.Set3.q3-9{fill:#fb8072;background:#fb8072;stroke:#fb8072}.Set3.q4-9{fill:#80b1d3;background:#80b1d3;stroke:#80b1d3}.Set3.q5-9{fill:#fdb462;background:#fdb462;stroke:#fdb462}.Set3.q6-9{fill:#b3de69;background:#b3de69;stroke:#b3de69}.Set3.q7-9{fill:#fccde5;background:#fccde5;stroke:#fccde5}.Set3.q8-9{fill:#d9d9d9;background:#d9d9d9;stroke:#d9d9d9}.Set3.q0-10{fill:#8dd3c7;background:#8dd3c7;stroke:#8dd3c7}.Set3.q1-10{fill:#ffffb3;background:#ffffb3;stroke:#ffffb3}.Set3.q2-10{fill:#bebada;background:#bebada;stroke:#bebada}.Set3.q3-10{fill:#fb8072;background:#fb8072;stroke:#fb8072}.Set3.q4-10{fill:#80b1d3;background:#80b1d3;stroke:#80b1d3}.Set3.q5-10{fill:#fdb462;background:#fdb462;stroke:#fdb462}.Set3.q6-10{fill:#b3de69;background:#b3de69;stroke:#b3de69}.Set3.q7-10{fill:#fccde5;background:#fccde5;stroke:#fccde5}.Set3.q8-10{fill:#d9d9d9;background:#d9d9d9;stroke:#d9d9d9}.Set3.q9-10{fill:#bc80bd;background:#bc80bd;stroke:#bc80bd}.Set3.q0-11{fill:#8dd3c7;background:#8dd3c7;stroke:#8dd3c7}.Set3.q1-11{fill:#ffffb3;background:#ffffb3;stroke:#ffffb3}.Set3.q2-11{fill:#bebada;background:#bebada;stroke:#bebada}.Set3.q3-11{fill:#fb8072;background:#fb8072;stroke:#fb8072}.Set3.q4-11{fill:#80b1d3;background:#80b1d3;stroke:#80b1d3}.Set3.q5-11{fill:#fdb462;background:#fdb462;stroke:#fdb462}.Set3.q6-11{fill:#b3de69;background:#b3de69;stroke:#b3de69}.Set3.q7-11{fill:#fccde5;background:#fccde5;stroke:#fccde5}.Set3.q8-11{fill:#d9d9d9;background:#d9d9d9;stroke:#d9d9d9}.Set3.q9-11{fill:#bc80bd;background:#bc80bd;stroke:#bc80bd}.Set3.q10-11{fill:#ccebc5;background:#ccebc5;stroke:#ccebc5}.Set3.q0-12{fill:#8dd3c7;background:#8dd3c7;stroke:#8dd3c7}.Set3.q1-12{fill:#ffffb3;background:#ffffb3;stroke:#ffffb3}.Set3.q2-12{fill:#bebada;background:#bebada;stroke:#bebada}.Set3.q3-12{fill:#fb8072;background:#fb8072;stroke:#fb8072}.Set3.q4-12{fill:#80b1d3;background:#80b1d3;stroke:#80b1d3}.Set3.q5-12{fill:#fdb462;background:#fdb462;stroke:#fdb462}.Set3.q6-12{fill:#b3de69;background:#b3de69;stroke:#b3de69}.Set3.q7-12{fill:#fccde5;background:#fccde5;stroke:#fccde5}.Set3.q8-12{fill:#d9d9d9;background:#d9d9d9;stroke:#d9d9d9}.Set3.q9-12{fill:#bc80bd;background:#bc80bd;stroke:#bc80bd}.Set3.q10-12{fill:#ccebc5;background:#ccebc5;stroke:#ccebc5}.Set3.q11-12{fill:#ffed6f;background:#ffed6f;stroke:#ffed6f}.graphical-report__chart{font-family:OpenSans,'Helvetica Neue',Helvetica,Arial,sans-serif;position:absolute;height:100%;width:100%;overflow:auto}.graphical-report__layout{display:-webkit-flexbox;display:-ms-flexbox;display:-webkit-flex;display:flex;-ms-flex-align:stretch;-webkit-align-items:stretch;align-items:stretch;-ms-flex-direction:column;-webkit-flex-direction:column;flex-direction:column;height:100%;width:100%;overflow:auto}.graphical-report__layout__header{-ms-flex:0 1 auto;-webkit-flex:0 1 auto;flex:0 1 auto}.graphical-report__layout__container{display:-webkit-flexbox;display:-ms-flexbox;display:-webkit-flex;display:flex;-ms-flex:1 1 auto;-webkit-flex:1 1 auto;flex:1 1 auto}.graphical-report__layout__footer,.graphical-report__layout__sidebar{-ms-flex:0 1 auto;-webkit-flex:0 1 auto;flex:0 1 auto}.graphical-report__layout__content{-ms-flex:1 0 auto;-webkit-flex:1 0 auto;flex:1 0 auto}.graphical-report__layout__content div{overflow:auto}.graphical-report__layout__sidebar-right{position:relative;-ms-flex:0 0 auto;-webkit-flex:0 0 auto;flex:0 0 auto}.graphical-report__layout__sidebar-right__wrap{max-height:100%;overflow-y:auto;box-sizing:border-box}.graphical-report__checkbox{position:relative;display:block}.graphical-report__checkbox__input{position:absolute;z-index:-1;opacity:0}.graphical-report__checkbox__icon{position:relative;width:14px;height:14px;top:3px;display:inline-block;border:1px solid #c3c3c3;border-radius:2px;background:#fff}.graphical-report__checkbox__icon:before{display:none;content:'';background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAFoTx1HAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYxIDY0LjE0MDk0OSwgMjAxMC8xMi8wNy0xMDo1NzowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNS4xIFdpbmRvd3MiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MEQ4M0RDOTE4NDQ2MTFFNEE5RTdBRERDQzRBQzNEMTQiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MEQ4M0RDOTI4NDQ2MTFFNEE5RTdBRERDQzRBQzNEMTQiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDowRDgzREM4Rjg0NDYxMUU0QTlFN0FERENDNEFDM0QxNCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDowRDgzREM5MDg0NDYxMUU0QTlFN0FERENDNEFDM0QxNCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pn2UjdoAAAEGSURBVHjaYvz//z8DGIAYSUlJdwECiBEukpiY/BDEAQggBrgIVBkLjAEDAAHEiMyBywBNOwDmJCYm/cdQBhBAqHrQAUgSojV5P8QtSY+A+D7cPTDdMAUwTQABhNdYJgZ8AF1nRkaGAgjDvQzi/AOCP3+YWX7+/HmXiYlRAcXY37//AEPs511OTg65uXPnPkQxNi0tTTklJUWGaNcCBBj+EMIDmBjIBCwo1jMyYigAul/x79//B4CulwOqODBv3hxHDKcmJycfAHLtgfrvMTExJf/7938xUF4GaOB9FhZmh1mzZj2CqUdNEkAdSUmZSsAgBNrAIAsUAQYlu+O0adMeo0cS/QMHAGJZps83N5ZDAAAAAElFTkSuQmCC);width:100%;height:100%;position:absolute;top:0;left:0}.graphical-report__checkbox__text{margin-left:5px}.graphical-report__checkbox__input~.graphical-report__checkbox__text{cursor:pointer}.graphical-report__checkbox__input:disabled~.graphical-report__checkbox__text{cursor:default;opacity:.3}.graphical-report__checkbox__input:not(:disabled):focus+.graphical-report__checkbox__icon{box-shadow:0 0 0 1px rgba(255,255,255,.3),0 0 7px 0 #52a8ec;outline:0}.graphical-report__checkbox:hover .graphical-report__checkbox__input:not(:disabled)~.graphical-report__checkbox__icon{border-color:#999}.graphical-report__checkbox__input:checked+.graphical-report__checkbox__icon{background:linear-gradient(top,#fff 0,#dbdbde 100%)}.graphical-report__checkbox__input:checked+.graphical-report__checkbox__icon:before{display:block}.graphical-report__select{font-size:13px;font-family:inherit;display:inline-block;height:24px;line-height:24px;vertical-align:middle;padding:2px;background-color:#fff;border:1px solid #c3c3c3;border-radius:2px;color:#333}.graphical-report__select:focus{box-shadow:0 0 0 1px rgba(255,255,255,.3),0 0 7px 0 #52a8ec;outline:0}.graphical-report__select[disabled]{opacity:.3;cursor:default}.graphical-report__select[multiple]{height:auto}.graphical-report__select option[disabled]{opacity:.6}.graphical-report__svg .color20-1{stroke:#6fa1d9;fill:#6fa1d9}.graphical-report__svg .color20-2{stroke:#df2b59;fill:#df2b59}.graphical-report__svg .color20-3{stroke:#66da26;fill:#66da26}.graphical-report__svg .color20-4{stroke:#4c3862;fill:#4c3862}.graphical-report__svg .color20-5{stroke:#e5b011;fill:#e5b011}.graphical-report__svg .color20-6{stroke:#3a3226;fill:#3a3226}.graphical-report__svg .color20-7{stroke:#cb461a;fill:#cb461a}.graphical-report__svg .color20-8{stroke:#c7ce23;fill:#c7ce23}.graphical-report__svg .color20-9{stroke:#7fcdc2;fill:#7fcdc2}.graphical-report__svg .color20-10{stroke:#cca1c8;fill:#cca1c8}.graphical-report__svg .color20-11{stroke:#c84cce;fill:#c84cce}.graphical-report__svg .color20-12{stroke:#54762e;fill:#54762e}.graphical-report__svg .color20-13{stroke:#746bc9;fill:#746bc9}.graphical-report__svg .color20-14{stroke:#953441;fill:#953441}.graphical-report__svg .color20-15{stroke:#5c7a76;fill:#5c7a76}.graphical-report__svg .color20-16{stroke:#c8bf87;fill:#c8bf87}.graphical-report__svg .color20-17{stroke:#bfc1c3;fill:#bfc1c3}.graphical-report__svg .color20-18{stroke:#8e5c31;fill:#8e5c31}.graphical-report__svg .color20-19{stroke:#71ce7b;fill:#71ce7b}.graphical-report__svg .color20-20{stroke:#be478b;fill:#be478b}.graphical-report__svg .color-default{stroke:#6fa1d9;fill:#6fa1d9}.graphical-report__line-width-1{stroke-width:1px}.graphical-report__line-width-2{stroke-width:1.5px}.graphical-report__line-width-3{stroke-width:2px}.graphical-report__line-width-4{stroke-width:2.5px}.graphical-report__line-width-5{stroke-width:3px}.graphical-report__line-opacity-1{stroke-opacity:1}.graphical-report__line-opacity-2{stroke-opacity:.95}.graphical-report__line-opacity-3{stroke-opacity:.9}.graphical-report__line-opacity-4{stroke-opacity:.85}.graphical-report__line-opacity-5{stroke-opacity:.8}.graphical-report a{color:#3962ff;border-bottom:1px solid rgba(57,98,255,.3);text-decoration:none}.graphical-report a:hover{color:#e17152;border-bottom:1px solid rgba(225,113,82,.3)}.graphical-report__d3-time-overflown .tick:nth-child(even){display:none}.graphical-report__svg{display:block;overflow:hidden}.graphical-report__svg .axis line,.graphical-report__svg .axis path{stroke-width:1;fill:none;stroke:#bdc3cd;shape-rendering:crispEdges}.graphical-report__svg .axis.facet-axis .tick line{opacity:0}.graphical-report__svg .axis.facet-axis .tick text{font-weight:700}.graphical-report__svg .axis.facet-axis path.domain{opacity:0}.graphical-report__svg .axis.facet-axis.compact .label,.graphical-report__svg .axis.facet-axis.compact .label .label-token,.graphical-report__svg .axis.facet-axis.compact .tick text{font-weight:400}.graphical-report__svg .tick text{font-size:11px}.graphical-report__svg .grid .grid-lines path{shape-rendering:crispEdges}.graphical-report__svg .grid path{fill:none}.graphical-report__svg .grid line{fill:none;stroke:rgba(189,195,205,.5);stroke-width:1px;shape-rendering:crispEdges}.graphical-report__svg .grid .line path{shape-rendering:auto}.graphical-report__svg .label{font-size:11px;font-weight:700}.graphical-report__svg .label .label-token{font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase}.graphical-report__svg .label .label-token-1,.graphical-report__svg .label .label-token-2{font-weight:400}.graphical-report__svg .label .label-token-2{fill:gray}.graphical-report__svg .label .label-token-delimiter{font-weight:400;fill:gray}.graphical-report__svg .label.inline .label-token{font-weight:400;fill:gray;text-transform:none;letter-spacing:0}.graphical-report__dot{opacity:.6;transition:stroke-width .1s ease,opacity .1s ease;stroke-width:0;cursor:pointer}.graphical-report__line{fill:none;transition:stroke-opacity .2s ease,stroke-width .2s ease}.graphical-report__dot-line{opacity:1;transition:stroke-opacity .2s ease}.graphical-report__bar{shape-rendering:crispEdges;transition:opacity .2s ease}.graphical-report__highlighted_chart .graphical-report__dot.graphical-report__highlighted{stroke-width:2;opacity:1}.graphical-report__highlighted_chart .graphical-report__line.graphical-report__highlighted{stroke-opacity:1;stroke-width:3}.graphical-report__highlighted_chart .graphical-report__bar.graphical-report__highlighted{stroke-opacity:1;opacity:1}.graphical-report__highlighted_chart .graphical-report__line{stroke-opacity:.2}.graphical-report__highlighted_chart .graphical-report__bar,.graphical-report__highlighted_chart .graphical-report__dot{opacity:.2}.graphical-report__print-block{display:none}.graphical-report__export{float:right;margin:20px 20px 0 0;display:block;background-repeat:no-repeat;background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTgiIGhlaWdodD0iMTgiIHZpZXdCb3g9IjAgMCAxOCAxOCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48dGl0bGU+ZXhwb3J0PC90aXRsZT48ZGVzYz5DcmVhdGVkIHdpdGggU2tldGNoLjwvZGVzYz48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxnIGZpbGw9IiMwMDAiPjxwYXRoIGQ9Ik0xNyAxLjY3bC04LjMyOCA4LjM2Nkw4IDkuNSAxNi4zNTMgMUgxMlYwaDZ2NmgtMVYxLjY3eiIgb3BhY2l0eT0iLjgiLz48cGF0aCBkPSJNMCA1LjAxQzAgMy4zNDYgMS4zMzcgMiAzLjAxIDJIMTZ2MTIuOTljMCAxLjY2My0xLjMzNyAzLjAxLTMuMDEgMy4wMUgzLjAxQzEuMzQ2IDE4IDAgMTYuNjYzIDAgMTQuOTlWNS4wMXpNMTUgMTVDMTUgMTYuMTA1IDE0LjEwMyAxNyAxMi45OTQgMTdIMy4wMDZDMS44OTggMTcgMSAxNi4xMDMgMSAxNC45OTRWNS4wMDZDMSAzLjg5OCAxLjg4NyAzIDIuOTk4IDNIOVYyaDd2N2gtMXY2LjAwMnoiIG9wYWNpdHk9Ii40Ii8+PC9nPjwvZz48L3N2Zz4=);width:20px;height:20px;color:transparent;font-size:1px;opacity:.6;cursor:pointer}.graphical-report__export:hover{opacity:1}.graphical-report__export__list{font-size:11px}.graphical-report__export__item{overflow:hidden;box-sizing:border-box}.graphical-report__export__item>a{display:block;padding:7px 15px;color:inherit;text-decoration:none}.graphical-report__export__item>a:focus,.graphical-report__export__item>a:hover{background:#eaf2fc;outline:0;box-shadow:none}.graphical-report__legend{padding:20px 0 20px 10px;margin-right:20px;width:160px;box-sizing:border-box}.graphical-report__legend__title{margin:0 0 10px 10px;text-transform:uppercase;font-weight:600;font-size:13px}.graphical-report__legend__item{padding:11px 30px 10px;position:relative;font-size:13px;cursor:pointer}.graphical-report__legend__item:hover{background-color:rgba(189,195,205,.2)}.graphical-report__legend__item .color-default{background:#6fa1d9;border-color:#6fa1d9}.graphical-report__legend__item.disabled,.graphical-report__legend__item:disabled{color:#ccc}.graphical-report__legend__item.disabled .graphical-report__legend__guide{background:0 0}.graphical-report__legend__guide{width:15px;height:15px;box-sizing:border-box;border-width:1px;border-style:solid;border-radius:50%;position:absolute;top:12px;left:10px}.graphical-report__legend__item .color20-1{background:#6fa1d9;border:1px solid #6fa1d9}.graphical-report__legend__item.disabled .color20-1{background-color:transparent}.graphical-report__legend__item .color20-2{background:#df2b59;border:1px solid #df2b59}.graphical-report__legend__item.disabled .color20-2{background-color:transparent}.graphical-report__legend__item .color20-3{background:#66da26;border:1px solid #66da26}.graphical-report__legend__item.disabled .color20-3{background-color:transparent}.graphical-report__legend__item .color20-4{background:#4c3862;border:1px solid #4c3862}.graphical-report__legend__item.disabled .color20-4{background-color:transparent}.graphical-report__legend__item .color20-5{background:#e5b011;border:1px solid #e5b011}.graphical-report__legend__item.disabled .color20-5{background-color:transparent}.graphical-report__legend__item .color20-6{background:#3a3226;border:1px solid #3a3226}.graphical-report__legend__item.disabled .color20-6{background-color:transparent}.graphical-report__legend__item .color20-7{background:#cb461a;border:1px solid #cb461a}.graphical-report__legend__item.disabled .color20-7{background-color:transparent}.graphical-report__legend__item .color20-8{background:#c7ce23;border:1px solid #c7ce23}.graphical-report__legend__item.disabled .color20-8{background-color:transparent}.graphical-report__legend__item .color20-9{background:#7fcdc2;border:1px solid #7fcdc2}.graphical-report__legend__item.disabled .color20-9{background-color:transparent}.graphical-report__legend__item .color20-10{background:#cca1c8;border:1px solid #cca1c8}.graphical-report__legend__item.disabled .color20-10{background-color:transparent}.graphical-report__legend__item .color20-11{background:#c84cce;border:1px solid #c84cce}.graphical-report__legend__item.disabled .color20-11{background-color:transparent}.graphical-report__legend__item .color20-12{background:#54762e;border:1px solid #54762e}.graphical-report__legend__item.disabled .color20-12{background-color:transparent}.graphical-report__legend__item .color20-13{background:#746bc9;border:1px solid #746bc9}.graphical-report__legend__item.disabled .color20-13{background-color:transparent}.graphical-report__legend__item .color20-14{background:#953441;border:1px solid #953441}.graphical-report__legend__item.disabled .color20-14{background-color:transparent}.graphical-report__legend__item .color20-15{background:#5c7a76;border:1px solid #5c7a76}.graphical-report__legend__item.disabled .color20-15{background-color:transparent}.graphical-report__legend__item .color20-16{background:#c8bf87;border:1px solid #c8bf87}.graphical-report__legend__item.disabled .color20-16{background-color:transparent}.graphical-report__legend__item .color20-17{background:#bfc1c3;border:1px solid #bfc1c3}.graphical-report__legend__item.disabled .color20-17{background-color:transparent}.graphical-report__legend__item .color20-18{background:#8e5c31;border:1px solid #8e5c31}.graphical-report__legend__item.disabled .color20-18{background-color:transparent}.graphical-report__legend__item .color20-19{background:#71ce7b;border:1px solid #71ce7b}.graphical-report__legend__item.disabled .color20-19{background-color:transparent}.graphical-report__legend__item .color20-20{background:#be478b;border:1px solid #be478b}.graphical-report__legend__item.disabled .color20-20{background-color:transparent}.graphical-report__tooltip{position:absolute;top:0;left:0;max-width:500px;z-index:900;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:stretch;-ms-flex-align:stretch;align-items:stretch;font-family:OpenSans,'Helvetica Neue',Helvetica,Arial,sans-serif;font-size:11px;background:rgba(255,255,255,.9);box-shadow:0 1px 4px 0 rgba(0,0,0,.2),0 0 0 1px rgba(0,0,0,.05);overflow:hidden}.graphical-report__tooltip.fade{opacity:0;transition:opacity 200ms ease-out}.graphical-report__tooltip.fade.in{opacity:1;transition-duration:100ms}.graphical-report__tooltip__content{overflow:hidden;padding:15px 15px 10px;box-sizing:border-box;max-width:calc(100% - 26px)}.graphical-report__tooltip__exclude{color:rgba(101,113,127,.8);cursor:pointer;min-height:86px;width:26px;position:relative;box-shadow:inset 2px 0 2px -2px rgba(0,0,0,.2)}.graphical-report__tooltip__exclude__wrap{line-height:26px;padding:0 15px;-webkit-transform:rotate(-90deg);transform:rotate(-90deg);-webkit-transform-origin:0 0;transform-origin:0 0;height:100%;white-space:nowrap;position:absolute;top:100%;left:0;box-sizing:border-box}.graphical-report__tooltip__exclude:hover{color:#65717f;background:linear-gradient(to right,rgba(235,238,241,.9) 0,rgba(255,255,255,0) 100%)}.graphical-report__tooltip__exclude .tau-icon-close-gray{display:inline-block;width:12px;height:12px;position:relative;top:3px;margin-right:5px;background-image:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSIzMHB4IiBoZWlnaHQ9IjMwcHgiIHZpZXdCb3g9IjAgMCAzMCAzMCIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgMzAgMzAiIHhtbDpzcGFjZT0icHJlc2VydmUiPjxwYXRoIGlkPSJTaGFwZV8zNV8iIGZpbGw9IiM4NDk2QTciIGQ9Ik0xMCwwLjcxNUw5LjI4NSwwTDUsNC4yODVMMC43MTUsMEwwLDAuNzE1TDQuMjg1LDVMMCw5LjI4NUwwLjcxNSwxMEw1LDUuNzE1TDkuMjg1LDEwTDEwLDkuMjg1TDUuNzE1LDVMMTAsMC43MTV6Ii8+PC9zdmc+)}.graphical-report__tooltip__list{display:table}.graphical-report__tooltip__list__item{display:table-row}.graphical-report__tooltip__list__elem{display:table-cell;padding-bottom:4px;line-height:1.3}.graphical-report__tooltip__list__elem:not(:first-child){padding-left:15px}.graphical-report__tooltip__gray-text,.graphical-report__tooltip__list__elem:first-child{color:#8e8e8e}.graphical-report__svg .graphical-report__trendline.color20-1{stroke:#357ac7}.graphical-report__svg .graphical-report__trendline.color20-2{stroke:#a5193d}.graphical-report__svg .graphical-report__trendline.color20-3{stroke:#47991a}.graphical-report__svg .graphical-report__trendline.color20-4{stroke:#261c31}.graphical-report__svg .graphical-report__trendline.color20-5{stroke:#9e790c}.graphical-report__svg .graphical-report__trendline.color20-6{stroke:#0c0a08}.graphical-report__svg .graphical-report__trendline.color20-7{stroke:#872f11}.graphical-report__svg .graphical-report__trendline.color20-8{stroke:#888d18}.graphical-report__svg .graphical-report__trendline.color20-9{stroke:#48b8a8}.graphical-report__svg .graphical-report__trendline.color20-10{stroke:#b16fab}.graphical-report__svg .graphical-report__trendline.color20-11{stroke:#9c2ca1}.graphical-report__svg .graphical-report__trendline.color20-12{stroke:#2d3f19}.graphical-report__svg .graphical-report__trendline.color20-13{stroke:#483eaa}.graphical-report__svg .graphical-report__trendline.color20-14{stroke:#5c2028}.graphical-report__svg .graphical-report__trendline.color20-15{stroke:#3b4e4c}.graphical-report__svg .graphical-report__trendline.color20-16{stroke:#b0a353}.graphical-report__svg .graphical-report__trendline.color20-17{stroke:#989b9e}.graphical-report__svg .graphical-report__trendline.color20-18{stroke:#55371d}.graphical-report__svg .graphical-report__trendline.color20-19{stroke:#3eb44b}.graphical-report__svg .graphical-report__trendline.color20-20{stroke:#883063}.graphical-report__svg .graphical-report__trendline.color-default{stroke:#357ac7}.graphical-report__trendlinepanel{padding:20px 0 20px 20px;margin-right:20px;width:160px;box-sizing:border-box}.graphical-report__trendlinepanel__title{margin:0 0 10px;text-transform:uppercase;font-weight:600;font-size:13px}.graphical-report__trendlinepanel__control{width:100%}.graphical-report__trendlinepanel__error-message{font-size:12px;margin-left:5px}.graphical-report__trendlinepanel.applicable-false .graphical-report__checkbox__icon,.graphical-report__trendlinepanel.applicable-false .graphical-report__checkbox__input,.graphical-report__trendlinepanel.applicable-false .graphical-report__trendlinepanel__control{display:none}.graphical-report__trendline{stroke-dasharray:4,4} \ No newline at end of file +* Copyright (c) 2015 Taucraft Limited; Licensed Apache License 2.0 */.YlGn.q0-3{fill:#f7fcb9;background:#f7fcb9;stroke:#f7fcb9}.YlGn.q1-3{fill:#addd8e;background:#addd8e;stroke:#addd8e}.YlGn.q2-3{fill:#31a354;background:#31a354;stroke:#31a354}.YlGn.q0-4{fill:#ffc;background:#ffc;stroke:#ffc}.YlGn.q1-4{fill:#c2e699;background:#c2e699;stroke:#c2e699}.YlGn.q2-4{fill:#78c679;background:#78c679;stroke:#78c679}.YlGn.q3-4{fill:#238443;background:#238443;stroke:#238443}.YlGn.q0-5{fill:#ffc;background:#ffc;stroke:#ffc}.YlGn.q1-5{fill:#c2e699;background:#c2e699;stroke:#c2e699}.YlGn.q2-5{fill:#78c679;background:#78c679;stroke:#78c679}.YlGn.q3-5{fill:#31a354;background:#31a354;stroke:#31a354}.YlGn.q4-5{fill:#006837;background:#006837;stroke:#006837}.YlGn.q0-6{fill:#ffc;background:#ffc;stroke:#ffc}.YlGn.q1-6{fill:#d9f0a3;background:#d9f0a3;stroke:#d9f0a3}.YlGn.q2-6{fill:#addd8e;background:#addd8e;stroke:#addd8e}.YlGn.q3-6{fill:#78c679;background:#78c679;stroke:#78c679}.YlGn.q4-6{fill:#31a354;background:#31a354;stroke:#31a354}.YlGn.q5-6{fill:#006837;background:#006837;stroke:#006837}.YlGn.q0-7{fill:#ffc;background:#ffc;stroke:#ffc}.YlGn.q1-7{fill:#d9f0a3;background:#d9f0a3;stroke:#d9f0a3}.YlGn.q2-7{fill:#addd8e;background:#addd8e;stroke:#addd8e}.YlGn.q3-7{fill:#78c679;background:#78c679;stroke:#78c679}.YlGn.q4-7{fill:#41ab5d;background:#41ab5d;stroke:#41ab5d}.YlGn.q5-7{fill:#238443;background:#238443;stroke:#238443}.YlGn.q6-7{fill:#005a32;background:#005a32;stroke:#005a32}.YlGn.q0-8{fill:#ffffe5;background:#ffffe5;stroke:#ffffe5}.YlGn.q1-8{fill:#f7fcb9;background:#f7fcb9;stroke:#f7fcb9}.YlGn.q2-8{fill:#d9f0a3;background:#d9f0a3;stroke:#d9f0a3}.YlGn.q3-8{fill:#addd8e;background:#addd8e;stroke:#addd8e}.YlGn.q4-8{fill:#78c679;background:#78c679;stroke:#78c679}.YlGn.q5-8{fill:#41ab5d;background:#41ab5d;stroke:#41ab5d}.YlGn.q6-8{fill:#238443;background:#238443;stroke:#238443}.YlGn.q7-8{fill:#005a32;background:#005a32;stroke:#005a32}.YlGn.q0-9{fill:#ffffe5;background:#ffffe5;stroke:#ffffe5}.YlGn.q1-9{fill:#f7fcb9;background:#f7fcb9;stroke:#f7fcb9}.YlGn.q2-9{fill:#d9f0a3;background:#d9f0a3;stroke:#d9f0a3}.YlGn.q3-9{fill:#addd8e;background:#addd8e;stroke:#addd8e}.YlGn.q4-9{fill:#78c679;background:#78c679;stroke:#78c679}.YlGn.q5-9{fill:#41ab5d;background:#41ab5d;stroke:#41ab5d}.YlGn.q6-9{fill:#238443;background:#238443;stroke:#238443}.YlGn.q7-9{fill:#006837;background:#006837;stroke:#006837}.YlGn.q8-9{fill:#004529;background:#004529;stroke:#004529}.YlGnBu.q0-3{fill:#edf8b1;background:#edf8b1;stroke:#edf8b1}.YlGnBu.q1-3{fill:#7fcdbb;background:#7fcdbb;stroke:#7fcdbb}.YlGnBu.q2-3{fill:#2c7fb8;background:#2c7fb8;stroke:#2c7fb8}.YlGnBu.q0-4{fill:#ffc;background:#ffc;stroke:#ffc}.YlGnBu.q1-4{fill:#a1dab4;background:#a1dab4;stroke:#a1dab4}.YlGnBu.q2-4{fill:#41b6c4;background:#41b6c4;stroke:#41b6c4}.YlGnBu.q3-4{fill:#225ea8;background:#225ea8;stroke:#225ea8}.YlGnBu.q0-5{fill:#ffc;background:#ffc;stroke:#ffc}.YlGnBu.q1-5{fill:#a1dab4;background:#a1dab4;stroke:#a1dab4}.YlGnBu.q2-5{fill:#41b6c4;background:#41b6c4;stroke:#41b6c4}.YlGnBu.q3-5{fill:#2c7fb8;background:#2c7fb8;stroke:#2c7fb8}.YlGnBu.q4-5{fill:#253494;background:#253494;stroke:#253494}.YlGnBu.q0-6{fill:#ffc;background:#ffc;stroke:#ffc}.YlGnBu.q1-6{fill:#c7e9b4;background:#c7e9b4;stroke:#c7e9b4}.YlGnBu.q2-6{fill:#7fcdbb;background:#7fcdbb;stroke:#7fcdbb}.YlGnBu.q3-6{fill:#41b6c4;background:#41b6c4;stroke:#41b6c4}.YlGnBu.q4-6{fill:#2c7fb8;background:#2c7fb8;stroke:#2c7fb8}.YlGnBu.q5-6{fill:#253494;background:#253494;stroke:#253494}.YlGnBu.q0-7{fill:#ffc;background:#ffc;stroke:#ffc}.YlGnBu.q1-7{fill:#c7e9b4;background:#c7e9b4;stroke:#c7e9b4}.YlGnBu.q2-7{fill:#7fcdbb;background:#7fcdbb;stroke:#7fcdbb}.YlGnBu.q3-7{fill:#41b6c4;background:#41b6c4;stroke:#41b6c4}.YlGnBu.q4-7{fill:#1d91c0;background:#1d91c0;stroke:#1d91c0}.YlGnBu.q5-7{fill:#225ea8;background:#225ea8;stroke:#225ea8}.YlGnBu.q6-7{fill:#0c2c84;background:#0c2c84;stroke:#0c2c84}.YlGnBu.q0-8{fill:#ffffd9;background:#ffffd9;stroke:#ffffd9}.YlGnBu.q1-8{fill:#edf8b1;background:#edf8b1;stroke:#edf8b1}.YlGnBu.q2-8{fill:#c7e9b4;background:#c7e9b4;stroke:#c7e9b4}.YlGnBu.q3-8{fill:#7fcdbb;background:#7fcdbb;stroke:#7fcdbb}.YlGnBu.q4-8{fill:#41b6c4;background:#41b6c4;stroke:#41b6c4}.YlGnBu.q5-8{fill:#1d91c0;background:#1d91c0;stroke:#1d91c0}.YlGnBu.q6-8{fill:#225ea8;background:#225ea8;stroke:#225ea8}.YlGnBu.q7-8{fill:#0c2c84;background:#0c2c84;stroke:#0c2c84}.YlGnBu.q0-9{fill:#ffffd9;background:#ffffd9;stroke:#ffffd9}.YlGnBu.q1-9{fill:#edf8b1;background:#edf8b1;stroke:#edf8b1}.YlGnBu.q2-9{fill:#c7e9b4;background:#c7e9b4;stroke:#c7e9b4}.YlGnBu.q3-9{fill:#7fcdbb;background:#7fcdbb;stroke:#7fcdbb}.YlGnBu.q4-9{fill:#41b6c4;background:#41b6c4;stroke:#41b6c4}.YlGnBu.q5-9{fill:#1d91c0;background:#1d91c0;stroke:#1d91c0}.YlGnBu.q6-9{fill:#225ea8;background:#225ea8;stroke:#225ea8}.YlGnBu.q7-9{fill:#253494;background:#253494;stroke:#253494}.YlGnBu.q8-9{fill:#081d58;background:#081d58;stroke:#081d58}.GnBu.q0-3{fill:#e0f3db;background:#e0f3db;stroke:#e0f3db}.GnBu.q1-3{fill:#a8ddb5;background:#a8ddb5;stroke:#a8ddb5}.GnBu.q2-3{fill:#43a2ca;background:#43a2ca;stroke:#43a2ca}.GnBu.q0-4{fill:#f0f9e8;background:#f0f9e8;stroke:#f0f9e8}.GnBu.q1-4{fill:#bae4bc;background:#bae4bc;stroke:#bae4bc}.GnBu.q2-4{fill:#7bccc4;background:#7bccc4;stroke:#7bccc4}.GnBu.q3-4{fill:#2b8cbe;background:#2b8cbe;stroke:#2b8cbe}.GnBu.q0-5{fill:#f0f9e8;background:#f0f9e8;stroke:#f0f9e8}.GnBu.q1-5{fill:#bae4bc;background:#bae4bc;stroke:#bae4bc}.GnBu.q2-5{fill:#7bccc4;background:#7bccc4;stroke:#7bccc4}.GnBu.q3-5{fill:#43a2ca;background:#43a2ca;stroke:#43a2ca}.GnBu.q4-5{fill:#0868ac;background:#0868ac;stroke:#0868ac}.GnBu.q0-6{fill:#f0f9e8;background:#f0f9e8;stroke:#f0f9e8}.GnBu.q1-6{fill:#ccebc5;background:#ccebc5;stroke:#ccebc5}.GnBu.q2-6{fill:#a8ddb5;background:#a8ddb5;stroke:#a8ddb5}.GnBu.q3-6{fill:#7bccc4;background:#7bccc4;stroke:#7bccc4}.GnBu.q4-6{fill:#43a2ca;background:#43a2ca;stroke:#43a2ca}.GnBu.q5-6{fill:#0868ac;background:#0868ac;stroke:#0868ac}.GnBu.q0-7{fill:#f0f9e8;background:#f0f9e8;stroke:#f0f9e8}.GnBu.q1-7{fill:#ccebc5;background:#ccebc5;stroke:#ccebc5}.GnBu.q2-7{fill:#a8ddb5;background:#a8ddb5;stroke:#a8ddb5}.GnBu.q3-7{fill:#7bccc4;background:#7bccc4;stroke:#7bccc4}.GnBu.q4-7{fill:#4eb3d3;background:#4eb3d3;stroke:#4eb3d3}.GnBu.q5-7{fill:#2b8cbe;background:#2b8cbe;stroke:#2b8cbe}.GnBu.q6-7{fill:#08589e;background:#08589e;stroke:#08589e}.GnBu.q0-8{fill:#f7fcf0;background:#f7fcf0;stroke:#f7fcf0}.GnBu.q1-8{fill:#e0f3db;background:#e0f3db;stroke:#e0f3db}.GnBu.q2-8{fill:#ccebc5;background:#ccebc5;stroke:#ccebc5}.GnBu.q3-8{fill:#a8ddb5;background:#a8ddb5;stroke:#a8ddb5}.GnBu.q4-8{fill:#7bccc4;background:#7bccc4;stroke:#7bccc4}.GnBu.q5-8{fill:#4eb3d3;background:#4eb3d3;stroke:#4eb3d3}.GnBu.q6-8{fill:#2b8cbe;background:#2b8cbe;stroke:#2b8cbe}.GnBu.q7-8{fill:#08589e;background:#08589e;stroke:#08589e}.GnBu.q0-9{fill:#f7fcf0;background:#f7fcf0;stroke:#f7fcf0}.GnBu.q1-9{fill:#e0f3db;background:#e0f3db;stroke:#e0f3db}.GnBu.q2-9{fill:#ccebc5;background:#ccebc5;stroke:#ccebc5}.GnBu.q3-9{fill:#a8ddb5;background:#a8ddb5;stroke:#a8ddb5}.GnBu.q4-9{fill:#7bccc4;background:#7bccc4;stroke:#7bccc4}.GnBu.q5-9{fill:#4eb3d3;background:#4eb3d3;stroke:#4eb3d3}.GnBu.q6-9{fill:#2b8cbe;background:#2b8cbe;stroke:#2b8cbe}.GnBu.q7-9{fill:#0868ac;background:#0868ac;stroke:#0868ac}.GnBu.q8-9{fill:#084081;background:#084081;stroke:#084081}.BuGn.q0-3{fill:#e5f5f9;background:#e5f5f9;stroke:#e5f5f9}.BuGn.q1-3{fill:#99d8c9;background:#99d8c9;stroke:#99d8c9}.BuGn.q2-3{fill:#2ca25f;background:#2ca25f;stroke:#2ca25f}.BuGn.q0-4{fill:#edf8fb;background:#edf8fb;stroke:#edf8fb}.BuGn.q1-4{fill:#b2e2e2;background:#b2e2e2;stroke:#b2e2e2}.BuGn.q2-4{fill:#66c2a4;background:#66c2a4;stroke:#66c2a4}.BuGn.q3-4{fill:#238b45;background:#238b45;stroke:#238b45}.BuGn.q0-5{fill:#edf8fb;background:#edf8fb;stroke:#edf8fb}.BuGn.q1-5{fill:#b2e2e2;background:#b2e2e2;stroke:#b2e2e2}.BuGn.q2-5{fill:#66c2a4;background:#66c2a4;stroke:#66c2a4}.BuGn.q3-5{fill:#2ca25f;background:#2ca25f;stroke:#2ca25f}.BuGn.q4-5{fill:#006d2c;background:#006d2c;stroke:#006d2c}.BuGn.q0-6{fill:#edf8fb;background:#edf8fb;stroke:#edf8fb}.BuGn.q1-6{fill:#ccece6;background:#ccece6;stroke:#ccece6}.BuGn.q2-6{fill:#99d8c9;background:#99d8c9;stroke:#99d8c9}.BuGn.q3-6{fill:#66c2a4;background:#66c2a4;stroke:#66c2a4}.BuGn.q4-6{fill:#2ca25f;background:#2ca25f;stroke:#2ca25f}.BuGn.q5-6{fill:#006d2c;background:#006d2c;stroke:#006d2c}.BuGn.q0-7{fill:#edf8fb;background:#edf8fb;stroke:#edf8fb}.BuGn.q1-7{fill:#ccece6;background:#ccece6;stroke:#ccece6}.BuGn.q2-7{fill:#99d8c9;background:#99d8c9;stroke:#99d8c9}.BuGn.q3-7{fill:#66c2a4;background:#66c2a4;stroke:#66c2a4}.BuGn.q4-7{fill:#41ae76;background:#41ae76;stroke:#41ae76}.BuGn.q5-7{fill:#238b45;background:#238b45;stroke:#238b45}.BuGn.q6-7{fill:#005824;background:#005824;stroke:#005824}.BuGn.q0-8{fill:#f7fcfd;background:#f7fcfd;stroke:#f7fcfd}.BuGn.q1-8{fill:#e5f5f9;background:#e5f5f9;stroke:#e5f5f9}.BuGn.q2-8{fill:#ccece6;background:#ccece6;stroke:#ccece6}.BuGn.q3-8{fill:#99d8c9;background:#99d8c9;stroke:#99d8c9}.BuGn.q4-8{fill:#66c2a4;background:#66c2a4;stroke:#66c2a4}.BuGn.q5-8{fill:#41ae76;background:#41ae76;stroke:#41ae76}.BuGn.q6-8{fill:#238b45;background:#238b45;stroke:#238b45}.BuGn.q7-8{fill:#005824;background:#005824;stroke:#005824}.BuGn.q0-9{fill:#f7fcfd;background:#f7fcfd;stroke:#f7fcfd}.BuGn.q1-9{fill:#e5f5f9;background:#e5f5f9;stroke:#e5f5f9}.BuGn.q2-9{fill:#ccece6;background:#ccece6;stroke:#ccece6}.BuGn.q3-9{fill:#99d8c9;background:#99d8c9;stroke:#99d8c9}.BuGn.q4-9{fill:#66c2a4;background:#66c2a4;stroke:#66c2a4}.BuGn.q5-9{fill:#41ae76;background:#41ae76;stroke:#41ae76}.BuGn.q6-9{fill:#238b45;background:#238b45;stroke:#238b45}.BuGn.q7-9{fill:#006d2c;background:#006d2c;stroke:#006d2c}.BuGn.q8-9{fill:#00441b;background:#00441b;stroke:#00441b}.PuBuGn.q0-3{fill:#ece2f0;background:#ece2f0;stroke:#ece2f0}.PuBuGn.q1-3{fill:#a6bddb;background:#a6bddb;stroke:#a6bddb}.PuBuGn.q2-3{fill:#1c9099;background:#1c9099;stroke:#1c9099}.PuBuGn.q0-4{fill:#f6eff7;background:#f6eff7;stroke:#f6eff7}.PuBuGn.q1-4{fill:#bdc9e1;background:#bdc9e1;stroke:#bdc9e1}.PuBuGn.q2-4{fill:#67a9cf;background:#67a9cf;stroke:#67a9cf}.PuBuGn.q3-4{fill:#02818a;background:#02818a;stroke:#02818a}.PuBuGn.q0-5{fill:#f6eff7;background:#f6eff7;stroke:#f6eff7}.PuBuGn.q1-5{fill:#bdc9e1;background:#bdc9e1;stroke:#bdc9e1}.PuBuGn.q2-5{fill:#67a9cf;background:#67a9cf;stroke:#67a9cf}.PuBuGn.q3-5{fill:#1c9099;background:#1c9099;stroke:#1c9099}.PuBuGn.q4-5{fill:#016c59;background:#016c59;stroke:#016c59}.PuBuGn.q0-6{fill:#f6eff7;background:#f6eff7;stroke:#f6eff7}.PuBuGn.q1-6{fill:#d0d1e6;background:#d0d1e6;stroke:#d0d1e6}.PuBuGn.q2-6{fill:#a6bddb;background:#a6bddb;stroke:#a6bddb}.PuBuGn.q3-6{fill:#67a9cf;background:#67a9cf;stroke:#67a9cf}.PuBuGn.q4-6{fill:#1c9099;background:#1c9099;stroke:#1c9099}.PuBuGn.q5-6{fill:#016c59;background:#016c59;stroke:#016c59}.PuBuGn.q0-7{fill:#f6eff7;background:#f6eff7;stroke:#f6eff7}.PuBuGn.q1-7{fill:#d0d1e6;background:#d0d1e6;stroke:#d0d1e6}.PuBuGn.q2-7{fill:#a6bddb;background:#a6bddb;stroke:#a6bddb}.PuBuGn.q3-7{fill:#67a9cf;background:#67a9cf;stroke:#67a9cf}.PuBuGn.q4-7{fill:#3690c0;background:#3690c0;stroke:#3690c0}.PuBuGn.q5-7{fill:#02818a;background:#02818a;stroke:#02818a}.PuBuGn.q6-7{fill:#016450;background:#016450;stroke:#016450}.PuBuGn.q0-8{fill:#fff7fb;background:#fff7fb;stroke:#fff7fb}.PuBuGn.q1-8{fill:#ece2f0;background:#ece2f0;stroke:#ece2f0}.PuBuGn.q2-8{fill:#d0d1e6;background:#d0d1e6;stroke:#d0d1e6}.PuBuGn.q3-8{fill:#a6bddb;background:#a6bddb;stroke:#a6bddb}.PuBuGn.q4-8{fill:#67a9cf;background:#67a9cf;stroke:#67a9cf}.PuBuGn.q5-8{fill:#3690c0;background:#3690c0;stroke:#3690c0}.PuBuGn.q6-8{fill:#02818a;background:#02818a;stroke:#02818a}.PuBuGn.q7-8{fill:#016450;background:#016450;stroke:#016450}.PuBuGn.q0-9{fill:#fff7fb;background:#fff7fb;stroke:#fff7fb}.PuBuGn.q1-9{fill:#ece2f0;background:#ece2f0;stroke:#ece2f0}.PuBuGn.q2-9{fill:#d0d1e6;background:#d0d1e6;stroke:#d0d1e6}.PuBuGn.q3-9{fill:#a6bddb;background:#a6bddb;stroke:#a6bddb}.PuBuGn.q4-9{fill:#67a9cf;background:#67a9cf;stroke:#67a9cf}.PuBuGn.q5-9{fill:#3690c0;background:#3690c0;stroke:#3690c0}.PuBuGn.q6-9{fill:#02818a;background:#02818a;stroke:#02818a}.PuBuGn.q7-9{fill:#016c59;background:#016c59;stroke:#016c59}.PuBuGn.q8-9{fill:#014636;background:#014636;stroke:#014636}.PuBu.q0-3{fill:#ece7f2;background:#ece7f2;stroke:#ece7f2}.PuBu.q1-3{fill:#a6bddb;background:#a6bddb;stroke:#a6bddb}.PuBu.q2-3{fill:#2b8cbe;background:#2b8cbe;stroke:#2b8cbe}.PuBu.q0-4{fill:#f1eef6;background:#f1eef6;stroke:#f1eef6}.PuBu.q1-4{fill:#bdc9e1;background:#bdc9e1;stroke:#bdc9e1}.PuBu.q2-4{fill:#74a9cf;background:#74a9cf;stroke:#74a9cf}.PuBu.q3-4{fill:#0570b0;background:#0570b0;stroke:#0570b0}.PuBu.q0-5{fill:#f1eef6;background:#f1eef6;stroke:#f1eef6}.PuBu.q1-5{fill:#bdc9e1;background:#bdc9e1;stroke:#bdc9e1}.PuBu.q2-5{fill:#74a9cf;background:#74a9cf;stroke:#74a9cf}.PuBu.q3-5{fill:#2b8cbe;background:#2b8cbe;stroke:#2b8cbe}.PuBu.q4-5{fill:#045a8d;background:#045a8d;stroke:#045a8d}.PuBu.q0-6{fill:#f1eef6;background:#f1eef6;stroke:#f1eef6}.PuBu.q1-6{fill:#d0d1e6;background:#d0d1e6;stroke:#d0d1e6}.PuBu.q2-6{fill:#a6bddb;background:#a6bddb;stroke:#a6bddb}.PuBu.q3-6{fill:#74a9cf;background:#74a9cf;stroke:#74a9cf}.PuBu.q4-6{fill:#2b8cbe;background:#2b8cbe;stroke:#2b8cbe}.PuBu.q5-6{fill:#045a8d;background:#045a8d;stroke:#045a8d}.PuBu.q0-7{fill:#f1eef6;background:#f1eef6;stroke:#f1eef6}.PuBu.q1-7{fill:#d0d1e6;background:#d0d1e6;stroke:#d0d1e6}.PuBu.q2-7{fill:#a6bddb;background:#a6bddb;stroke:#a6bddb}.PuBu.q3-7{fill:#74a9cf;background:#74a9cf;stroke:#74a9cf}.PuBu.q4-7{fill:#3690c0;background:#3690c0;stroke:#3690c0}.PuBu.q5-7{fill:#0570b0;background:#0570b0;stroke:#0570b0}.PuBu.q6-7{fill:#034e7b;background:#034e7b;stroke:#034e7b}.PuBu.q0-8{fill:#fff7fb;background:#fff7fb;stroke:#fff7fb}.PuBu.q1-8{fill:#ece7f2;background:#ece7f2;stroke:#ece7f2}.PuBu.q2-8{fill:#d0d1e6;background:#d0d1e6;stroke:#d0d1e6}.PuBu.q3-8{fill:#a6bddb;background:#a6bddb;stroke:#a6bddb}.PuBu.q4-8{fill:#74a9cf;background:#74a9cf;stroke:#74a9cf}.PuBu.q5-8{fill:#3690c0;background:#3690c0;stroke:#3690c0}.PuBu.q6-8{fill:#0570b0;background:#0570b0;stroke:#0570b0}.PuBu.q7-8{fill:#034e7b;background:#034e7b;stroke:#034e7b}.PuBu.q0-9{fill:#fff7fb;background:#fff7fb;stroke:#fff7fb}.PuBu.q1-9{fill:#ece7f2;background:#ece7f2;stroke:#ece7f2}.PuBu.q2-9{fill:#d0d1e6;background:#d0d1e6;stroke:#d0d1e6}.PuBu.q3-9{fill:#a6bddb;background:#a6bddb;stroke:#a6bddb}.PuBu.q4-9{fill:#74a9cf;background:#74a9cf;stroke:#74a9cf}.PuBu.q5-9{fill:#3690c0;background:#3690c0;stroke:#3690c0}.PuBu.q6-9{fill:#0570b0;background:#0570b0;stroke:#0570b0}.PuBu.q7-9{fill:#045a8d;background:#045a8d;stroke:#045a8d}.PuBu.q8-9{fill:#023858;background:#023858;stroke:#023858}.BuPu.q0-3{fill:#e0ecf4;background:#e0ecf4;stroke:#e0ecf4}.BuPu.q1-3{fill:#9ebcda;background:#9ebcda;stroke:#9ebcda}.BuPu.q2-3{fill:#8856a7;background:#8856a7;stroke:#8856a7}.BuPu.q0-4{fill:#edf8fb;background:#edf8fb;stroke:#edf8fb}.BuPu.q1-4{fill:#b3cde3;background:#b3cde3;stroke:#b3cde3}.BuPu.q2-4{fill:#8c96c6;background:#8c96c6;stroke:#8c96c6}.BuPu.q3-4{fill:#88419d;background:#88419d;stroke:#88419d}.BuPu.q0-5{fill:#edf8fb;background:#edf8fb;stroke:#edf8fb}.BuPu.q1-5{fill:#b3cde3;background:#b3cde3;stroke:#b3cde3}.BuPu.q2-5{fill:#8c96c6;background:#8c96c6;stroke:#8c96c6}.BuPu.q3-5{fill:#8856a7;background:#8856a7;stroke:#8856a7}.BuPu.q4-5{fill:#810f7c;background:#810f7c;stroke:#810f7c}.BuPu.q0-6{fill:#edf8fb;background:#edf8fb;stroke:#edf8fb}.BuPu.q1-6{fill:#bfd3e6;background:#bfd3e6;stroke:#bfd3e6}.BuPu.q2-6{fill:#9ebcda;background:#9ebcda;stroke:#9ebcda}.BuPu.q3-6{fill:#8c96c6;background:#8c96c6;stroke:#8c96c6}.BuPu.q4-6{fill:#8856a7;background:#8856a7;stroke:#8856a7}.BuPu.q5-6{fill:#810f7c;background:#810f7c;stroke:#810f7c}.BuPu.q0-7{fill:#edf8fb;background:#edf8fb;stroke:#edf8fb}.BuPu.q1-7{fill:#bfd3e6;background:#bfd3e6;stroke:#bfd3e6}.BuPu.q2-7{fill:#9ebcda;background:#9ebcda;stroke:#9ebcda}.BuPu.q3-7{fill:#8c96c6;background:#8c96c6;stroke:#8c96c6}.BuPu.q4-7{fill:#8c6bb1;background:#8c6bb1;stroke:#8c6bb1}.BuPu.q5-7{fill:#88419d;background:#88419d;stroke:#88419d}.BuPu.q6-7{fill:#6e016b;background:#6e016b;stroke:#6e016b}.BuPu.q0-8{fill:#f7fcfd;background:#f7fcfd;stroke:#f7fcfd}.BuPu.q1-8{fill:#e0ecf4;background:#e0ecf4;stroke:#e0ecf4}.BuPu.q2-8{fill:#bfd3e6;background:#bfd3e6;stroke:#bfd3e6}.BuPu.q3-8{fill:#9ebcda;background:#9ebcda;stroke:#9ebcda}.BuPu.q4-8{fill:#8c96c6;background:#8c96c6;stroke:#8c96c6}.BuPu.q5-8{fill:#8c6bb1;background:#8c6bb1;stroke:#8c6bb1}.BuPu.q6-8{fill:#88419d;background:#88419d;stroke:#88419d}.BuPu.q7-8{fill:#6e016b;background:#6e016b;stroke:#6e016b}.BuPu.q0-9{fill:#f7fcfd;background:#f7fcfd;stroke:#f7fcfd}.BuPu.q1-9{fill:#e0ecf4;background:#e0ecf4;stroke:#e0ecf4}.BuPu.q2-9{fill:#bfd3e6;background:#bfd3e6;stroke:#bfd3e6}.BuPu.q3-9{fill:#9ebcda;background:#9ebcda;stroke:#9ebcda}.BuPu.q4-9{fill:#8c96c6;background:#8c96c6;stroke:#8c96c6}.BuPu.q5-9{fill:#8c6bb1;background:#8c6bb1;stroke:#8c6bb1}.BuPu.q6-9{fill:#88419d;background:#88419d;stroke:#88419d}.BuPu.q7-9{fill:#810f7c;background:#810f7c;stroke:#810f7c}.BuPu.q8-9{fill:#4d004b;background:#4d004b;stroke:#4d004b}.RdPu.q0-3{fill:#fde0dd;background:#fde0dd;stroke:#fde0dd}.RdPu.q1-3{fill:#fa9fb5;background:#fa9fb5;stroke:#fa9fb5}.RdPu.q2-3{fill:#c51b8a;background:#c51b8a;stroke:#c51b8a}.RdPu.q0-4{fill:#feebe2;background:#feebe2;stroke:#feebe2}.RdPu.q1-4{fill:#fbb4b9;background:#fbb4b9;stroke:#fbb4b9}.RdPu.q2-4{fill:#f768a1;background:#f768a1;stroke:#f768a1}.RdPu.q3-4{fill:#ae017e;background:#ae017e;stroke:#ae017e}.RdPu.q0-5{fill:#feebe2;background:#feebe2;stroke:#feebe2}.RdPu.q1-5{fill:#fbb4b9;background:#fbb4b9;stroke:#fbb4b9}.RdPu.q2-5{fill:#f768a1;background:#f768a1;stroke:#f768a1}.RdPu.q3-5{fill:#c51b8a;background:#c51b8a;stroke:#c51b8a}.RdPu.q4-5{fill:#7a0177;background:#7a0177;stroke:#7a0177}.RdPu.q0-6{fill:#feebe2;background:#feebe2;stroke:#feebe2}.RdPu.q1-6{fill:#fcc5c0;background:#fcc5c0;stroke:#fcc5c0}.RdPu.q2-6{fill:#fa9fb5;background:#fa9fb5;stroke:#fa9fb5}.RdPu.q3-6{fill:#f768a1;background:#f768a1;stroke:#f768a1}.RdPu.q4-6{fill:#c51b8a;background:#c51b8a;stroke:#c51b8a}.RdPu.q5-6{fill:#7a0177;background:#7a0177;stroke:#7a0177}.RdPu.q0-7{fill:#feebe2;background:#feebe2;stroke:#feebe2}.RdPu.q1-7{fill:#fcc5c0;background:#fcc5c0;stroke:#fcc5c0}.RdPu.q2-7{fill:#fa9fb5;background:#fa9fb5;stroke:#fa9fb5}.RdPu.q3-7{fill:#f768a1;background:#f768a1;stroke:#f768a1}.RdPu.q4-7{fill:#dd3497;background:#dd3497;stroke:#dd3497}.RdPu.q5-7{fill:#ae017e;background:#ae017e;stroke:#ae017e}.RdPu.q6-7{fill:#7a0177;background:#7a0177;stroke:#7a0177}.RdPu.q0-8{fill:#fff7f3;background:#fff7f3;stroke:#fff7f3}.RdPu.q1-8{fill:#fde0dd;background:#fde0dd;stroke:#fde0dd}.RdPu.q2-8{fill:#fcc5c0;background:#fcc5c0;stroke:#fcc5c0}.RdPu.q3-8{fill:#fa9fb5;background:#fa9fb5;stroke:#fa9fb5}.RdPu.q4-8{fill:#f768a1;background:#f768a1;stroke:#f768a1}.RdPu.q5-8{fill:#dd3497;background:#dd3497;stroke:#dd3497}.RdPu.q6-8{fill:#ae017e;background:#ae017e;stroke:#ae017e}.RdPu.q7-8{fill:#7a0177;background:#7a0177;stroke:#7a0177}.RdPu.q0-9{fill:#fff7f3;background:#fff7f3;stroke:#fff7f3}.RdPu.q1-9{fill:#fde0dd;background:#fde0dd;stroke:#fde0dd}.RdPu.q2-9{fill:#fcc5c0;background:#fcc5c0;stroke:#fcc5c0}.RdPu.q3-9{fill:#fa9fb5;background:#fa9fb5;stroke:#fa9fb5}.RdPu.q4-9{fill:#f768a1;background:#f768a1;stroke:#f768a1}.RdPu.q5-9{fill:#dd3497;background:#dd3497;stroke:#dd3497}.RdPu.q6-9{fill:#ae017e;background:#ae017e;stroke:#ae017e}.RdPu.q7-9{fill:#7a0177;background:#7a0177;stroke:#7a0177}.RdPu.q8-9{fill:#49006a;background:#49006a;stroke:#49006a}.PuRd.q0-3{fill:#e7e1ef;background:#e7e1ef;stroke:#e7e1ef}.PuRd.q1-3{fill:#c994c7;background:#c994c7;stroke:#c994c7}.PuRd.q2-3{fill:#dd1c77;background:#dd1c77;stroke:#dd1c77}.PuRd.q0-4{fill:#f1eef6;background:#f1eef6;stroke:#f1eef6}.PuRd.q1-4{fill:#d7b5d8;background:#d7b5d8;stroke:#d7b5d8}.PuRd.q2-4{fill:#df65b0;background:#df65b0;stroke:#df65b0}.PuRd.q3-4{fill:#ce1256;background:#ce1256;stroke:#ce1256}.PuRd.q0-5{fill:#f1eef6;background:#f1eef6;stroke:#f1eef6}.PuRd.q1-5{fill:#d7b5d8;background:#d7b5d8;stroke:#d7b5d8}.PuRd.q2-5{fill:#df65b0;background:#df65b0;stroke:#df65b0}.PuRd.q3-5{fill:#dd1c77;background:#dd1c77;stroke:#dd1c77}.PuRd.q4-5{fill:#980043;background:#980043;stroke:#980043}.PuRd.q0-6{fill:#f1eef6;background:#f1eef6;stroke:#f1eef6}.PuRd.q1-6{fill:#d4b9da;background:#d4b9da;stroke:#d4b9da}.PuRd.q2-6{fill:#c994c7;background:#c994c7;stroke:#c994c7}.PuRd.q3-6{fill:#df65b0;background:#df65b0;stroke:#df65b0}.PuRd.q4-6{fill:#dd1c77;background:#dd1c77;stroke:#dd1c77}.PuRd.q5-6{fill:#980043;background:#980043;stroke:#980043}.PuRd.q0-7{fill:#f1eef6;background:#f1eef6;stroke:#f1eef6}.PuRd.q1-7{fill:#d4b9da;background:#d4b9da;stroke:#d4b9da}.PuRd.q2-7{fill:#c994c7;background:#c994c7;stroke:#c994c7}.PuRd.q3-7{fill:#df65b0;background:#df65b0;stroke:#df65b0}.PuRd.q4-7{fill:#e7298a;background:#e7298a;stroke:#e7298a}.PuRd.q5-7{fill:#ce1256;background:#ce1256;stroke:#ce1256}.PuRd.q6-7{fill:#91003f;background:#91003f;stroke:#91003f}.PuRd.q0-8{fill:#f7f4f9;background:#f7f4f9;stroke:#f7f4f9}.PuRd.q1-8{fill:#e7e1ef;background:#e7e1ef;stroke:#e7e1ef}.PuRd.q2-8{fill:#d4b9da;background:#d4b9da;stroke:#d4b9da}.PuRd.q3-8{fill:#c994c7;background:#c994c7;stroke:#c994c7}.PuRd.q4-8{fill:#df65b0;background:#df65b0;stroke:#df65b0}.PuRd.q5-8{fill:#e7298a;background:#e7298a;stroke:#e7298a}.PuRd.q6-8{fill:#ce1256;background:#ce1256;stroke:#ce1256}.PuRd.q7-8{fill:#91003f;background:#91003f;stroke:#91003f}.PuRd.q0-9{fill:#f7f4f9;background:#f7f4f9;stroke:#f7f4f9}.PuRd.q1-9{fill:#e7e1ef;background:#e7e1ef;stroke:#e7e1ef}.PuRd.q2-9{fill:#d4b9da;background:#d4b9da;stroke:#d4b9da}.PuRd.q3-9{fill:#c994c7;background:#c994c7;stroke:#c994c7}.PuRd.q4-9{fill:#df65b0;background:#df65b0;stroke:#df65b0}.PuRd.q5-9{fill:#e7298a;background:#e7298a;stroke:#e7298a}.PuRd.q6-9{fill:#ce1256;background:#ce1256;stroke:#ce1256}.PuRd.q7-9{fill:#980043;background:#980043;stroke:#980043}.PuRd.q8-9{fill:#67001f;background:#67001f;stroke:#67001f}.OrRd.q0-3{fill:#fee8c8;background:#fee8c8;stroke:#fee8c8}.OrRd.q1-3{fill:#fdbb84;background:#fdbb84;stroke:#fdbb84}.OrRd.q2-3{fill:#e34a33;background:#e34a33;stroke:#e34a33}.OrRd.q0-4{fill:#fef0d9;background:#fef0d9;stroke:#fef0d9}.OrRd.q1-4{fill:#fdcc8a;background:#fdcc8a;stroke:#fdcc8a}.OrRd.q2-4{fill:#fc8d59;background:#fc8d59;stroke:#fc8d59}.OrRd.q3-4{fill:#d7301f;background:#d7301f;stroke:#d7301f}.OrRd.q0-5{fill:#fef0d9;background:#fef0d9;stroke:#fef0d9}.OrRd.q1-5{fill:#fdcc8a;background:#fdcc8a;stroke:#fdcc8a}.OrRd.q2-5{fill:#fc8d59;background:#fc8d59;stroke:#fc8d59}.OrRd.q3-5{fill:#e34a33;background:#e34a33;stroke:#e34a33}.OrRd.q4-5{fill:#b30000;background:#b30000;stroke:#b30000}.OrRd.q0-6{fill:#fef0d9;background:#fef0d9;stroke:#fef0d9}.OrRd.q1-6{fill:#fdd49e;background:#fdd49e;stroke:#fdd49e}.OrRd.q2-6{fill:#fdbb84;background:#fdbb84;stroke:#fdbb84}.OrRd.q3-6{fill:#fc8d59;background:#fc8d59;stroke:#fc8d59}.OrRd.q4-6{fill:#e34a33;background:#e34a33;stroke:#e34a33}.OrRd.q5-6{fill:#b30000;background:#b30000;stroke:#b30000}.OrRd.q0-7{fill:#fef0d9;background:#fef0d9;stroke:#fef0d9}.OrRd.q1-7{fill:#fdd49e;background:#fdd49e;stroke:#fdd49e}.OrRd.q2-7{fill:#fdbb84;background:#fdbb84;stroke:#fdbb84}.OrRd.q3-7{fill:#fc8d59;background:#fc8d59;stroke:#fc8d59}.OrRd.q4-7{fill:#ef6548;background:#ef6548;stroke:#ef6548}.OrRd.q5-7{fill:#d7301f;background:#d7301f;stroke:#d7301f}.OrRd.q6-7{fill:#900;background:#900;stroke:#900}.OrRd.q0-8{fill:#fff7ec;background:#fff7ec;stroke:#fff7ec}.OrRd.q1-8{fill:#fee8c8;background:#fee8c8;stroke:#fee8c8}.OrRd.q2-8{fill:#fdd49e;background:#fdd49e;stroke:#fdd49e}.OrRd.q3-8{fill:#fdbb84;background:#fdbb84;stroke:#fdbb84}.OrRd.q4-8{fill:#fc8d59;background:#fc8d59;stroke:#fc8d59}.OrRd.q5-8{fill:#ef6548;background:#ef6548;stroke:#ef6548}.OrRd.q6-8{fill:#d7301f;background:#d7301f;stroke:#d7301f}.OrRd.q7-8{fill:#900;background:#900;stroke:#900}.OrRd.q0-9{fill:#fff7ec;background:#fff7ec;stroke:#fff7ec}.OrRd.q1-9{fill:#fee8c8;background:#fee8c8;stroke:#fee8c8}.OrRd.q2-9{fill:#fdd49e;background:#fdd49e;stroke:#fdd49e}.OrRd.q3-9{fill:#fdbb84;background:#fdbb84;stroke:#fdbb84}.OrRd.q4-9{fill:#fc8d59;background:#fc8d59;stroke:#fc8d59}.OrRd.q5-9{fill:#ef6548;background:#ef6548;stroke:#ef6548}.OrRd.q6-9{fill:#d7301f;background:#d7301f;stroke:#d7301f}.OrRd.q7-9{fill:#b30000;background:#b30000;stroke:#b30000}.OrRd.q8-9{fill:#7f0000;background:#7f0000;stroke:#7f0000}.YlOrRd.q0-3{fill:#ffeda0;background:#ffeda0;stroke:#ffeda0}.YlOrRd.q1-3{fill:#feb24c;background:#feb24c;stroke:#feb24c}.YlOrRd.q2-3{fill:#f03b20;background:#f03b20;stroke:#f03b20}.YlOrRd.q0-4{fill:#ffffb2;background:#ffffb2;stroke:#ffffb2}.YlOrRd.q1-4{fill:#fecc5c;background:#fecc5c;stroke:#fecc5c}.YlOrRd.q2-4{fill:#fd8d3c;background:#fd8d3c;stroke:#fd8d3c}.YlOrRd.q3-4{fill:#e31a1c;background:#e31a1c;stroke:#e31a1c}.YlOrRd.q0-5{fill:#ffffb2;background:#ffffb2;stroke:#ffffb2}.YlOrRd.q1-5{fill:#fecc5c;background:#fecc5c;stroke:#fecc5c}.YlOrRd.q2-5{fill:#fd8d3c;background:#fd8d3c;stroke:#fd8d3c}.YlOrRd.q3-5{fill:#f03b20;background:#f03b20;stroke:#f03b20}.YlOrRd.q4-5{fill:#bd0026;background:#bd0026;stroke:#bd0026}.YlOrRd.q0-6{fill:#ffffb2;background:#ffffb2;stroke:#ffffb2}.YlOrRd.q1-6{fill:#fed976;background:#fed976;stroke:#fed976}.YlOrRd.q2-6{fill:#feb24c;background:#feb24c;stroke:#feb24c}.YlOrRd.q3-6{fill:#fd8d3c;background:#fd8d3c;stroke:#fd8d3c}.YlOrRd.q4-6{fill:#f03b20;background:#f03b20;stroke:#f03b20}.YlOrRd.q5-6{fill:#bd0026;background:#bd0026;stroke:#bd0026}.YlOrRd.q0-7{fill:#ffffb2;background:#ffffb2;stroke:#ffffb2}.YlOrRd.q1-7{fill:#fed976;background:#fed976;stroke:#fed976}.YlOrRd.q2-7{fill:#feb24c;background:#feb24c;stroke:#feb24c}.YlOrRd.q3-7{fill:#fd8d3c;background:#fd8d3c;stroke:#fd8d3c}.YlOrRd.q4-7{fill:#fc4e2a;background:#fc4e2a;stroke:#fc4e2a}.YlOrRd.q5-7{fill:#e31a1c;background:#e31a1c;stroke:#e31a1c}.YlOrRd.q6-7{fill:#b10026;background:#b10026;stroke:#b10026}.YlOrRd.q0-8{fill:#ffc;background:#ffc;stroke:#ffc}.YlOrRd.q1-8{fill:#ffeda0;background:#ffeda0;stroke:#ffeda0}.YlOrRd.q2-8{fill:#fed976;background:#fed976;stroke:#fed976}.YlOrRd.q3-8{fill:#feb24c;background:#feb24c;stroke:#feb24c}.YlOrRd.q4-8{fill:#fd8d3c;background:#fd8d3c;stroke:#fd8d3c}.YlOrRd.q5-8{fill:#fc4e2a;background:#fc4e2a;stroke:#fc4e2a}.YlOrRd.q6-8{fill:#e31a1c;background:#e31a1c;stroke:#e31a1c}.YlOrRd.q7-8{fill:#b10026;background:#b10026;stroke:#b10026}.YlOrRd.q0-9{fill:#ffc;background:#ffc;stroke:#ffc}.YlOrRd.q1-9{fill:#ffeda0;background:#ffeda0;stroke:#ffeda0}.YlOrRd.q2-9{fill:#fed976;background:#fed976;stroke:#fed976}.YlOrRd.q3-9{fill:#feb24c;background:#feb24c;stroke:#feb24c}.YlOrRd.q4-9{fill:#fd8d3c;background:#fd8d3c;stroke:#fd8d3c}.YlOrRd.q5-9{fill:#fc4e2a;background:#fc4e2a;stroke:#fc4e2a}.YlOrRd.q6-9{fill:#e31a1c;background:#e31a1c;stroke:#e31a1c}.YlOrRd.q7-9{fill:#bd0026;background:#bd0026;stroke:#bd0026}.YlOrRd.q8-9{fill:#800026;background:#800026;stroke:#800026}.YlOrBr.q0-3{fill:#fff7bc;background:#fff7bc;stroke:#fff7bc}.YlOrBr.q1-3{fill:#fec44f;background:#fec44f;stroke:#fec44f}.YlOrBr.q2-3{fill:#d95f0e;background:#d95f0e;stroke:#d95f0e}.YlOrBr.q0-4{fill:#ffffd4;background:#ffffd4;stroke:#ffffd4}.YlOrBr.q1-4{fill:#fed98e;background:#fed98e;stroke:#fed98e}.YlOrBr.q2-4{fill:#fe9929;background:#fe9929;stroke:#fe9929}.YlOrBr.q3-4{fill:#cc4c02;background:#cc4c02;stroke:#cc4c02}.YlOrBr.q0-5{fill:#ffffd4;background:#ffffd4;stroke:#ffffd4}.YlOrBr.q1-5{fill:#fed98e;background:#fed98e;stroke:#fed98e}.YlOrBr.q2-5{fill:#fe9929;background:#fe9929;stroke:#fe9929}.YlOrBr.q3-5{fill:#d95f0e;background:#d95f0e;stroke:#d95f0e}.YlOrBr.q4-5{fill:#993404;background:#993404;stroke:#993404}.YlOrBr.q0-6{fill:#ffffd4;background:#ffffd4;stroke:#ffffd4}.YlOrBr.q1-6{fill:#fee391;background:#fee391;stroke:#fee391}.YlOrBr.q2-6{fill:#fec44f;background:#fec44f;stroke:#fec44f}.YlOrBr.q3-6{fill:#fe9929;background:#fe9929;stroke:#fe9929}.YlOrBr.q4-6{fill:#d95f0e;background:#d95f0e;stroke:#d95f0e}.YlOrBr.q5-6{fill:#993404;background:#993404;stroke:#993404}.YlOrBr.q0-7{fill:#ffffd4;background:#ffffd4;stroke:#ffffd4}.YlOrBr.q1-7{fill:#fee391;background:#fee391;stroke:#fee391}.YlOrBr.q2-7{fill:#fec44f;background:#fec44f;stroke:#fec44f}.YlOrBr.q3-7{fill:#fe9929;background:#fe9929;stroke:#fe9929}.YlOrBr.q4-7{fill:#ec7014;background:#ec7014;stroke:#ec7014}.YlOrBr.q5-7{fill:#cc4c02;background:#cc4c02;stroke:#cc4c02}.YlOrBr.q6-7{fill:#8c2d04;background:#8c2d04;stroke:#8c2d04}.YlOrBr.q0-8{fill:#ffffe5;background:#ffffe5;stroke:#ffffe5}.YlOrBr.q1-8{fill:#fff7bc;background:#fff7bc;stroke:#fff7bc}.YlOrBr.q2-8{fill:#fee391;background:#fee391;stroke:#fee391}.YlOrBr.q3-8{fill:#fec44f;background:#fec44f;stroke:#fec44f}.YlOrBr.q4-8{fill:#fe9929;background:#fe9929;stroke:#fe9929}.YlOrBr.q5-8{fill:#ec7014;background:#ec7014;stroke:#ec7014}.YlOrBr.q6-8{fill:#cc4c02;background:#cc4c02;stroke:#cc4c02}.YlOrBr.q7-8{fill:#8c2d04;background:#8c2d04;stroke:#8c2d04}.YlOrBr.q0-9{fill:#ffffe5;background:#ffffe5;stroke:#ffffe5}.YlOrBr.q1-9{fill:#fff7bc;background:#fff7bc;stroke:#fff7bc}.YlOrBr.q2-9{fill:#fee391;background:#fee391;stroke:#fee391}.YlOrBr.q3-9{fill:#fec44f;background:#fec44f;stroke:#fec44f}.YlOrBr.q4-9{fill:#fe9929;background:#fe9929;stroke:#fe9929}.YlOrBr.q5-9{fill:#ec7014;background:#ec7014;stroke:#ec7014}.YlOrBr.q6-9{fill:#cc4c02;background:#cc4c02;stroke:#cc4c02}.YlOrBr.q7-9{fill:#993404;background:#993404;stroke:#993404}.YlOrBr.q8-9{fill:#662506;background:#662506;stroke:#662506}.Purples.q0-3{fill:#efedf5;background:#efedf5;stroke:#efedf5}.Purples.q1-3{fill:#bcbddc;background:#bcbddc;stroke:#bcbddc}.Purples.q2-3{fill:#756bb1;background:#756bb1;stroke:#756bb1}.Purples.q0-4{fill:#f2f0f7;background:#f2f0f7;stroke:#f2f0f7}.Purples.q1-4{fill:#cbc9e2;background:#cbc9e2;stroke:#cbc9e2}.Purples.q2-4{fill:#9e9ac8;background:#9e9ac8;stroke:#9e9ac8}.Purples.q3-4{fill:#6a51a3;background:#6a51a3;stroke:#6a51a3}.Purples.q0-5{fill:#f2f0f7;background:#f2f0f7;stroke:#f2f0f7}.Purples.q1-5{fill:#cbc9e2;background:#cbc9e2;stroke:#cbc9e2}.Purples.q2-5{fill:#9e9ac8;background:#9e9ac8;stroke:#9e9ac8}.Purples.q3-5{fill:#756bb1;background:#756bb1;stroke:#756bb1}.Purples.q4-5{fill:#54278f;background:#54278f;stroke:#54278f}.Purples.q0-6{fill:#f2f0f7;background:#f2f0f7;stroke:#f2f0f7}.Purples.q1-6{fill:#dadaeb;background:#dadaeb;stroke:#dadaeb}.Purples.q2-6{fill:#bcbddc;background:#bcbddc;stroke:#bcbddc}.Purples.q3-6{fill:#9e9ac8;background:#9e9ac8;stroke:#9e9ac8}.Purples.q4-6{fill:#756bb1;background:#756bb1;stroke:#756bb1}.Purples.q5-6{fill:#54278f;background:#54278f;stroke:#54278f}.Purples.q0-7{fill:#f2f0f7;background:#f2f0f7;stroke:#f2f0f7}.Purples.q1-7{fill:#dadaeb;background:#dadaeb;stroke:#dadaeb}.Purples.q2-7{fill:#bcbddc;background:#bcbddc;stroke:#bcbddc}.Purples.q3-7{fill:#9e9ac8;background:#9e9ac8;stroke:#9e9ac8}.Purples.q4-7{fill:#807dba;background:#807dba;stroke:#807dba}.Purples.q5-7{fill:#6a51a3;background:#6a51a3;stroke:#6a51a3}.Purples.q6-7{fill:#4a1486;background:#4a1486;stroke:#4a1486}.Purples.q0-8{fill:#fcfbfd;background:#fcfbfd;stroke:#fcfbfd}.Purples.q1-8{fill:#efedf5;background:#efedf5;stroke:#efedf5}.Purples.q2-8{fill:#dadaeb;background:#dadaeb;stroke:#dadaeb}.Purples.q3-8{fill:#bcbddc;background:#bcbddc;stroke:#bcbddc}.Purples.q4-8{fill:#9e9ac8;background:#9e9ac8;stroke:#9e9ac8}.Purples.q5-8{fill:#807dba;background:#807dba;stroke:#807dba}.Purples.q6-8{fill:#6a51a3;background:#6a51a3;stroke:#6a51a3}.Purples.q7-8{fill:#4a1486;background:#4a1486;stroke:#4a1486}.Purples.q0-9{fill:#fcfbfd;background:#fcfbfd;stroke:#fcfbfd}.Purples.q1-9{fill:#efedf5;background:#efedf5;stroke:#efedf5}.Purples.q2-9{fill:#dadaeb;background:#dadaeb;stroke:#dadaeb}.Purples.q3-9{fill:#bcbddc;background:#bcbddc;stroke:#bcbddc}.Purples.q4-9{fill:#9e9ac8;background:#9e9ac8;stroke:#9e9ac8}.Purples.q5-9{fill:#807dba;background:#807dba;stroke:#807dba}.Purples.q6-9{fill:#6a51a3;background:#6a51a3;stroke:#6a51a3}.Purples.q7-9{fill:#54278f;background:#54278f;stroke:#54278f}.Purples.q8-9{fill:#3f007d;background:#3f007d;stroke:#3f007d}.Blues.q0-3{fill:#deebf7;background:#deebf7;stroke:#deebf7}.Blues.q1-3{fill:#9ecae1;background:#9ecae1;stroke:#9ecae1}.Blues.q2-3{fill:#3182bd;background:#3182bd;stroke:#3182bd}.Blues.q0-4{fill:#eff3ff;background:#eff3ff;stroke:#eff3ff}.Blues.q1-4{fill:#bdd7e7;background:#bdd7e7;stroke:#bdd7e7}.Blues.q2-4{fill:#6baed6;background:#6baed6;stroke:#6baed6}.Blues.q3-4{fill:#2171b5;background:#2171b5;stroke:#2171b5}.Blues.q0-5{fill:#eff3ff;background:#eff3ff;stroke:#eff3ff}.Blues.q1-5{fill:#bdd7e7;background:#bdd7e7;stroke:#bdd7e7}.Blues.q2-5{fill:#6baed6;background:#6baed6;stroke:#6baed6}.Blues.q3-5{fill:#3182bd;background:#3182bd;stroke:#3182bd}.Blues.q4-5{fill:#08519c;background:#08519c;stroke:#08519c}.Blues.q0-6{fill:#eff3ff;background:#eff3ff;stroke:#eff3ff}.Blues.q1-6{fill:#c6dbef;background:#c6dbef;stroke:#c6dbef}.Blues.q2-6{fill:#9ecae1;background:#9ecae1;stroke:#9ecae1}.Blues.q3-6{fill:#6baed6;background:#6baed6;stroke:#6baed6}.Blues.q4-6{fill:#3182bd;background:#3182bd;stroke:#3182bd}.Blues.q5-6{fill:#08519c;background:#08519c;stroke:#08519c}.Blues.q0-7{fill:#eff3ff;background:#eff3ff;stroke:#eff3ff}.Blues.q1-7{fill:#c6dbef;background:#c6dbef;stroke:#c6dbef}.Blues.q2-7{fill:#9ecae1;background:#9ecae1;stroke:#9ecae1}.Blues.q3-7{fill:#6baed6;background:#6baed6;stroke:#6baed6}.Blues.q4-7{fill:#4292c6;background:#4292c6;stroke:#4292c6}.Blues.q5-7{fill:#2171b5;background:#2171b5;stroke:#2171b5}.Blues.q6-7{fill:#084594;background:#084594;stroke:#084594}.Blues.q0-8{fill:#f7fbff;background:#f7fbff;stroke:#f7fbff}.Blues.q1-8{fill:#deebf7;background:#deebf7;stroke:#deebf7}.Blues.q2-8{fill:#c6dbef;background:#c6dbef;stroke:#c6dbef}.Blues.q3-8{fill:#9ecae1;background:#9ecae1;stroke:#9ecae1}.Blues.q4-8{fill:#6baed6;background:#6baed6;stroke:#6baed6}.Blues.q5-8{fill:#4292c6;background:#4292c6;stroke:#4292c6}.Blues.q6-8{fill:#2171b5;background:#2171b5;stroke:#2171b5}.Blues.q7-8{fill:#084594;background:#084594;stroke:#084594}.Blues.q0-9{fill:#f7fbff;background:#f7fbff;stroke:#f7fbff}.Blues.q1-9{fill:#deebf7;background:#deebf7;stroke:#deebf7}.Blues.q2-9{fill:#c6dbef;background:#c6dbef;stroke:#c6dbef}.Blues.q3-9{fill:#9ecae1;background:#9ecae1;stroke:#9ecae1}.Blues.q4-9{fill:#6baed6;background:#6baed6;stroke:#6baed6}.Blues.q5-9{fill:#4292c6;background:#4292c6;stroke:#4292c6}.Blues.q6-9{fill:#2171b5;background:#2171b5;stroke:#2171b5}.Blues.q7-9{fill:#08519c;background:#08519c;stroke:#08519c}.Blues.q8-9{fill:#08306b;background:#08306b;stroke:#08306b}.Greens.q0-3{fill:#e5f5e0;background:#e5f5e0;stroke:#e5f5e0}.Greens.q1-3{fill:#a1d99b;background:#a1d99b;stroke:#a1d99b}.Greens.q2-3{fill:#31a354;background:#31a354;stroke:#31a354}.Greens.q0-4{fill:#edf8e9;background:#edf8e9;stroke:#edf8e9}.Greens.q1-4{fill:#bae4b3;background:#bae4b3;stroke:#bae4b3}.Greens.q2-4{fill:#74c476;background:#74c476;stroke:#74c476}.Greens.q3-4{fill:#238b45;background:#238b45;stroke:#238b45}.Greens.q0-5{fill:#edf8e9;background:#edf8e9;stroke:#edf8e9}.Greens.q1-5{fill:#bae4b3;background:#bae4b3;stroke:#bae4b3}.Greens.q2-5{fill:#74c476;background:#74c476;stroke:#74c476}.Greens.q3-5{fill:#31a354;background:#31a354;stroke:#31a354}.Greens.q4-5{fill:#006d2c;background:#006d2c;stroke:#006d2c}.Greens.q0-6{fill:#edf8e9;background:#edf8e9;stroke:#edf8e9}.Greens.q1-6{fill:#c7e9c0;background:#c7e9c0;stroke:#c7e9c0}.Greens.q2-6{fill:#a1d99b;background:#a1d99b;stroke:#a1d99b}.Greens.q3-6{fill:#74c476;background:#74c476;stroke:#74c476}.Greens.q4-6{fill:#31a354;background:#31a354;stroke:#31a354}.Greens.q5-6{fill:#006d2c;background:#006d2c;stroke:#006d2c}.Greens.q0-7{fill:#edf8e9;background:#edf8e9;stroke:#edf8e9}.Greens.q1-7{fill:#c7e9c0;background:#c7e9c0;stroke:#c7e9c0}.Greens.q2-7{fill:#a1d99b;background:#a1d99b;stroke:#a1d99b}.Greens.q3-7{fill:#74c476;background:#74c476;stroke:#74c476}.Greens.q4-7{fill:#41ab5d;background:#41ab5d;stroke:#41ab5d}.Greens.q5-7{fill:#238b45;background:#238b45;stroke:#238b45}.Greens.q6-7{fill:#005a32;background:#005a32;stroke:#005a32}.Greens.q0-8{fill:#f7fcf5;background:#f7fcf5;stroke:#f7fcf5}.Greens.q1-8{fill:#e5f5e0;background:#e5f5e0;stroke:#e5f5e0}.Greens.q2-8{fill:#c7e9c0;background:#c7e9c0;stroke:#c7e9c0}.Greens.q3-8{fill:#a1d99b;background:#a1d99b;stroke:#a1d99b}.Greens.q4-8{fill:#74c476;background:#74c476;stroke:#74c476}.Greens.q5-8{fill:#41ab5d;background:#41ab5d;stroke:#41ab5d}.Greens.q6-8{fill:#238b45;background:#238b45;stroke:#238b45}.Greens.q7-8{fill:#005a32;background:#005a32;stroke:#005a32}.Greens.q0-9{fill:#f7fcf5;background:#f7fcf5;stroke:#f7fcf5}.Greens.q1-9{fill:#e5f5e0;background:#e5f5e0;stroke:#e5f5e0}.Greens.q2-9{fill:#c7e9c0;background:#c7e9c0;stroke:#c7e9c0}.Greens.q3-9{fill:#a1d99b;background:#a1d99b;stroke:#a1d99b}.Greens.q4-9{fill:#74c476;background:#74c476;stroke:#74c476}.Greens.q5-9{fill:#41ab5d;background:#41ab5d;stroke:#41ab5d}.Greens.q6-9{fill:#238b45;background:#238b45;stroke:#238b45}.Greens.q7-9{fill:#006d2c;background:#006d2c;stroke:#006d2c}.Greens.q8-9{fill:#00441b;background:#00441b;stroke:#00441b}.Oranges.q0-3{fill:#fee6ce;background:#fee6ce;stroke:#fee6ce}.Oranges.q1-3{fill:#fdae6b;background:#fdae6b;stroke:#fdae6b}.Oranges.q2-3{fill:#e6550d;background:#e6550d;stroke:#e6550d}.Oranges.q0-4{fill:#feedde;background:#feedde;stroke:#feedde}.Oranges.q1-4{fill:#fdbe85;background:#fdbe85;stroke:#fdbe85}.Oranges.q2-4{fill:#fd8d3c;background:#fd8d3c;stroke:#fd8d3c}.Oranges.q3-4{fill:#d94701;background:#d94701;stroke:#d94701}.Oranges.q0-5{fill:#feedde;background:#feedde;stroke:#feedde}.Oranges.q1-5{fill:#fdbe85;background:#fdbe85;stroke:#fdbe85}.Oranges.q2-5{fill:#fd8d3c;background:#fd8d3c;stroke:#fd8d3c}.Oranges.q3-5{fill:#e6550d;background:#e6550d;stroke:#e6550d}.Oranges.q4-5{fill:#a63603;background:#a63603;stroke:#a63603}.Oranges.q0-6{fill:#feedde;background:#feedde;stroke:#feedde}.Oranges.q1-6{fill:#fdd0a2;background:#fdd0a2;stroke:#fdd0a2}.Oranges.q2-6{fill:#fdae6b;background:#fdae6b;stroke:#fdae6b}.Oranges.q3-6{fill:#fd8d3c;background:#fd8d3c;stroke:#fd8d3c}.Oranges.q4-6{fill:#e6550d;background:#e6550d;stroke:#e6550d}.Oranges.q5-6{fill:#a63603;background:#a63603;stroke:#a63603}.Oranges.q0-7{fill:#feedde;background:#feedde;stroke:#feedde}.Oranges.q1-7{fill:#fdd0a2;background:#fdd0a2;stroke:#fdd0a2}.Oranges.q2-7{fill:#fdae6b;background:#fdae6b;stroke:#fdae6b}.Oranges.q3-7{fill:#fd8d3c;background:#fd8d3c;stroke:#fd8d3c}.Oranges.q4-7{fill:#f16913;background:#f16913;stroke:#f16913}.Oranges.q5-7{fill:#d94801;background:#d94801;stroke:#d94801}.Oranges.q6-7{fill:#8c2d04;background:#8c2d04;stroke:#8c2d04}.Oranges.q0-8{fill:#fff5eb;background:#fff5eb;stroke:#fff5eb}.Oranges.q1-8{fill:#fee6ce;background:#fee6ce;stroke:#fee6ce}.Oranges.q2-8{fill:#fdd0a2;background:#fdd0a2;stroke:#fdd0a2}.Oranges.q3-8{fill:#fdae6b;background:#fdae6b;stroke:#fdae6b}.Oranges.q4-8{fill:#fd8d3c;background:#fd8d3c;stroke:#fd8d3c}.Oranges.q5-8{fill:#f16913;background:#f16913;stroke:#f16913}.Oranges.q6-8{fill:#d94801;background:#d94801;stroke:#d94801}.Oranges.q7-8{fill:#8c2d04;background:#8c2d04;stroke:#8c2d04}.Oranges.q0-9{fill:#fff5eb;background:#fff5eb;stroke:#fff5eb}.Oranges.q1-9{fill:#fee6ce;background:#fee6ce;stroke:#fee6ce}.Oranges.q2-9{fill:#fdd0a2;background:#fdd0a2;stroke:#fdd0a2}.Oranges.q3-9{fill:#fdae6b;background:#fdae6b;stroke:#fdae6b}.Oranges.q4-9{fill:#fd8d3c;background:#fd8d3c;stroke:#fd8d3c}.Oranges.q5-9{fill:#f16913;background:#f16913;stroke:#f16913}.Oranges.q6-9{fill:#d94801;background:#d94801;stroke:#d94801}.Oranges.q7-9{fill:#a63603;background:#a63603;stroke:#a63603}.Oranges.q8-9{fill:#7f2704;background:#7f2704;stroke:#7f2704}.Reds.q0-3{fill:#fee0d2;background:#fee0d2;stroke:#fee0d2}.Reds.q1-3{fill:#fc9272;background:#fc9272;stroke:#fc9272}.Reds.q2-3{fill:#de2d26;background:#de2d26;stroke:#de2d26}.Reds.q0-4{fill:#fee5d9;background:#fee5d9;stroke:#fee5d9}.Reds.q1-4{fill:#fcae91;background:#fcae91;stroke:#fcae91}.Reds.q2-4{fill:#fb6a4a;background:#fb6a4a;stroke:#fb6a4a}.Reds.q3-4{fill:#cb181d;background:#cb181d;stroke:#cb181d}.Reds.q0-5{fill:#fee5d9;background:#fee5d9;stroke:#fee5d9}.Reds.q1-5{fill:#fcae91;background:#fcae91;stroke:#fcae91}.Reds.q2-5{fill:#fb6a4a;background:#fb6a4a;stroke:#fb6a4a}.Reds.q3-5{fill:#de2d26;background:#de2d26;stroke:#de2d26}.Reds.q4-5{fill:#a50f15;background:#a50f15;stroke:#a50f15}.Reds.q0-6{fill:#fee5d9;background:#fee5d9;stroke:#fee5d9}.Reds.q1-6{fill:#fcbba1;background:#fcbba1;stroke:#fcbba1}.Reds.q2-6{fill:#fc9272;background:#fc9272;stroke:#fc9272}.Reds.q3-6{fill:#fb6a4a;background:#fb6a4a;stroke:#fb6a4a}.Reds.q4-6{fill:#de2d26;background:#de2d26;stroke:#de2d26}.Reds.q5-6{fill:#a50f15;background:#a50f15;stroke:#a50f15}.Reds.q0-7{fill:#fee5d9;background:#fee5d9;stroke:#fee5d9}.Reds.q1-7{fill:#fcbba1;background:#fcbba1;stroke:#fcbba1}.Reds.q2-7{fill:#fc9272;background:#fc9272;stroke:#fc9272}.Reds.q3-7{fill:#fb6a4a;background:#fb6a4a;stroke:#fb6a4a}.Reds.q4-7{fill:#ef3b2c;background:#ef3b2c;stroke:#ef3b2c}.Reds.q5-7{fill:#cb181d;background:#cb181d;stroke:#cb181d}.Reds.q6-7{fill:#99000d;background:#99000d;stroke:#99000d}.Reds.q0-8{fill:#fff5f0;background:#fff5f0;stroke:#fff5f0}.Reds.q1-8{fill:#fee0d2;background:#fee0d2;stroke:#fee0d2}.Reds.q2-8{fill:#fcbba1;background:#fcbba1;stroke:#fcbba1}.Reds.q3-8{fill:#fc9272;background:#fc9272;stroke:#fc9272}.Reds.q4-8{fill:#fb6a4a;background:#fb6a4a;stroke:#fb6a4a}.Reds.q5-8{fill:#ef3b2c;background:#ef3b2c;stroke:#ef3b2c}.Reds.q6-8{fill:#cb181d;background:#cb181d;stroke:#cb181d}.Reds.q7-8{fill:#99000d;background:#99000d;stroke:#99000d}.Reds.q0-9{fill:#fff5f0;background:#fff5f0;stroke:#fff5f0}.Reds.q1-9{fill:#fee0d2;background:#fee0d2;stroke:#fee0d2}.Reds.q2-9{fill:#fcbba1;background:#fcbba1;stroke:#fcbba1}.Reds.q3-9{fill:#fc9272;background:#fc9272;stroke:#fc9272}.Reds.q4-9{fill:#fb6a4a;background:#fb6a4a;stroke:#fb6a4a}.Reds.q5-9{fill:#ef3b2c;background:#ef3b2c;stroke:#ef3b2c}.Reds.q6-9{fill:#cb181d;background:#cb181d;stroke:#cb181d}.Reds.q7-9{fill:#a50f15;background:#a50f15;stroke:#a50f15}.Reds.q8-9{fill:#67000d;background:#67000d;stroke:#67000d}.Greys.q0-3{fill:#f0f0f0;background:#f0f0f0;stroke:#f0f0f0}.Greys.q1-3{fill:#bdbdbd;background:#bdbdbd;stroke:#bdbdbd}.Greys.q2-3{fill:#636363;background:#636363;stroke:#636363}.Greys.q0-4{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.Greys.q1-4{fill:#ccc;background:#ccc;stroke:#ccc}.Greys.q2-4{fill:#969696;background:#969696;stroke:#969696}.Greys.q3-4{fill:#525252;background:#525252;stroke:#525252}.Greys.q0-5{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.Greys.q1-5{fill:#ccc;background:#ccc;stroke:#ccc}.Greys.q2-5{fill:#969696;background:#969696;stroke:#969696}.Greys.q3-5{fill:#636363;background:#636363;stroke:#636363}.Greys.q4-5{fill:#252525;background:#252525;stroke:#252525}.Greys.q0-6{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.Greys.q1-6{fill:#d9d9d9;background:#d9d9d9;stroke:#d9d9d9}.Greys.q2-6{fill:#bdbdbd;background:#bdbdbd;stroke:#bdbdbd}.Greys.q3-6{fill:#969696;background:#969696;stroke:#969696}.Greys.q4-6{fill:#636363;background:#636363;stroke:#636363}.Greys.q5-6{fill:#252525;background:#252525;stroke:#252525}.Greys.q0-7{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.Greys.q1-7{fill:#d9d9d9;background:#d9d9d9;stroke:#d9d9d9}.Greys.q2-7{fill:#bdbdbd;background:#bdbdbd;stroke:#bdbdbd}.Greys.q3-7{fill:#969696;background:#969696;stroke:#969696}.Greys.q4-7{fill:#737373;background:#737373;stroke:#737373}.Greys.q5-7{fill:#525252;background:#525252;stroke:#525252}.Greys.q6-7{fill:#252525;background:#252525;stroke:#252525}.Greys.q0-8{fill:#fff;background:#fff;stroke:#fff}.Greys.q1-8{fill:#f0f0f0;background:#f0f0f0;stroke:#f0f0f0}.Greys.q2-8{fill:#d9d9d9;background:#d9d9d9;stroke:#d9d9d9}.Greys.q3-8{fill:#bdbdbd;background:#bdbdbd;stroke:#bdbdbd}.Greys.q4-8{fill:#969696;background:#969696;stroke:#969696}.Greys.q5-8{fill:#737373;background:#737373;stroke:#737373}.Greys.q6-8{fill:#525252;background:#525252;stroke:#525252}.Greys.q7-8{fill:#252525;background:#252525;stroke:#252525}.Greys.q0-9{fill:#fff;background:#fff;stroke:#fff}.Greys.q1-9{fill:#f0f0f0;background:#f0f0f0;stroke:#f0f0f0}.Greys.q2-9{fill:#d9d9d9;background:#d9d9d9;stroke:#d9d9d9}.Greys.q3-9{fill:#bdbdbd;background:#bdbdbd;stroke:#bdbdbd}.Greys.q4-9{fill:#969696;background:#969696;stroke:#969696}.Greys.q5-9{fill:#737373;background:#737373;stroke:#737373}.Greys.q6-9{fill:#525252;background:#525252;stroke:#525252}.Greys.q7-9{fill:#252525;background:#252525;stroke:#252525}.Greys.q8-9{fill:#000;background:#000;stroke:#000}.PuOr.q0-3{fill:#f1a340;background:#f1a340;stroke:#f1a340}.PuOr.q1-3{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.PuOr.q2-3{fill:#998ec3;background:#998ec3;stroke:#998ec3}.PuOr.q0-4{fill:#e66101;background:#e66101;stroke:#e66101}.PuOr.q1-4{fill:#fdb863;background:#fdb863;stroke:#fdb863}.PuOr.q2-4{fill:#b2abd2;background:#b2abd2;stroke:#b2abd2}.PuOr.q3-4{fill:#5e3c99;background:#5e3c99;stroke:#5e3c99}.PuOr.q0-5{fill:#e66101;background:#e66101;stroke:#e66101}.PuOr.q1-5{fill:#fdb863;background:#fdb863;stroke:#fdb863}.PuOr.q2-5{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.PuOr.q3-5{fill:#b2abd2;background:#b2abd2;stroke:#b2abd2}.PuOr.q4-5{fill:#5e3c99;background:#5e3c99;stroke:#5e3c99}.PuOr.q0-6{fill:#b35806;background:#b35806;stroke:#b35806}.PuOr.q1-6{fill:#f1a340;background:#f1a340;stroke:#f1a340}.PuOr.q2-6{fill:#fee0b6;background:#fee0b6;stroke:#fee0b6}.PuOr.q3-6{fill:#d8daeb;background:#d8daeb;stroke:#d8daeb}.PuOr.q4-6{fill:#998ec3;background:#998ec3;stroke:#998ec3}.PuOr.q5-6{fill:#542788;background:#542788;stroke:#542788}.PuOr.q0-7{fill:#b35806;background:#b35806;stroke:#b35806}.PuOr.q1-7{fill:#f1a340;background:#f1a340;stroke:#f1a340}.PuOr.q2-7{fill:#fee0b6;background:#fee0b6;stroke:#fee0b6}.PuOr.q3-7{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.PuOr.q4-7{fill:#d8daeb;background:#d8daeb;stroke:#d8daeb}.PuOr.q5-7{fill:#998ec3;background:#998ec3;stroke:#998ec3}.PuOr.q6-7{fill:#542788;background:#542788;stroke:#542788}.PuOr.q0-8{fill:#b35806;background:#b35806;stroke:#b35806}.PuOr.q1-8{fill:#e08214;background:#e08214;stroke:#e08214}.PuOr.q2-8{fill:#fdb863;background:#fdb863;stroke:#fdb863}.PuOr.q3-8{fill:#fee0b6;background:#fee0b6;stroke:#fee0b6}.PuOr.q4-8{fill:#d8daeb;background:#d8daeb;stroke:#d8daeb}.PuOr.q5-8{fill:#b2abd2;background:#b2abd2;stroke:#b2abd2}.PuOr.q6-8{fill:#8073ac;background:#8073ac;stroke:#8073ac}.PuOr.q7-8{fill:#542788;background:#542788;stroke:#542788}.PuOr.q0-9{fill:#b35806;background:#b35806;stroke:#b35806}.PuOr.q1-9{fill:#e08214;background:#e08214;stroke:#e08214}.PuOr.q2-9{fill:#fdb863;background:#fdb863;stroke:#fdb863}.PuOr.q3-9{fill:#fee0b6;background:#fee0b6;stroke:#fee0b6}.PuOr.q4-9{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.PuOr.q5-9{fill:#d8daeb;background:#d8daeb;stroke:#d8daeb}.PuOr.q6-9{fill:#b2abd2;background:#b2abd2;stroke:#b2abd2}.PuOr.q7-9{fill:#8073ac;background:#8073ac;stroke:#8073ac}.PuOr.q8-9{fill:#542788;background:#542788;stroke:#542788}.PuOr.q0-10{fill:#7f3b08;background:#7f3b08;stroke:#7f3b08}.PuOr.q1-10{fill:#b35806;background:#b35806;stroke:#b35806}.PuOr.q2-10{fill:#e08214;background:#e08214;stroke:#e08214}.PuOr.q3-10{fill:#fdb863;background:#fdb863;stroke:#fdb863}.PuOr.q4-10{fill:#fee0b6;background:#fee0b6;stroke:#fee0b6}.PuOr.q5-10{fill:#d8daeb;background:#d8daeb;stroke:#d8daeb}.PuOr.q6-10{fill:#b2abd2;background:#b2abd2;stroke:#b2abd2}.PuOr.q7-10{fill:#8073ac;background:#8073ac;stroke:#8073ac}.PuOr.q8-10{fill:#542788;background:#542788;stroke:#542788}.PuOr.q9-10{fill:#2d004b;background:#2d004b;stroke:#2d004b}.PuOr.q0-11{fill:#7f3b08;background:#7f3b08;stroke:#7f3b08}.PuOr.q1-11{fill:#b35806;background:#b35806;stroke:#b35806}.PuOr.q2-11{fill:#e08214;background:#e08214;stroke:#e08214}.PuOr.q3-11{fill:#fdb863;background:#fdb863;stroke:#fdb863}.PuOr.q4-11{fill:#fee0b6;background:#fee0b6;stroke:#fee0b6}.PuOr.q5-11{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.PuOr.q6-11{fill:#d8daeb;background:#d8daeb;stroke:#d8daeb}.PuOr.q7-11{fill:#b2abd2;background:#b2abd2;stroke:#b2abd2}.PuOr.q8-11{fill:#8073ac;background:#8073ac;stroke:#8073ac}.PuOr.q9-11{fill:#542788;background:#542788;stroke:#542788}.PuOr.q10-11{fill:#2d004b;background:#2d004b;stroke:#2d004b}.BrBG.q0-3{fill:#d8b365;background:#d8b365;stroke:#d8b365}.BrBG.q1-3{fill:#f5f5f5;background:#f5f5f5;stroke:#f5f5f5}.BrBG.q2-3{fill:#5ab4ac;background:#5ab4ac;stroke:#5ab4ac}.BrBG.q0-4{fill:#a6611a;background:#a6611a;stroke:#a6611a}.BrBG.q1-4{fill:#dfc27d;background:#dfc27d;stroke:#dfc27d}.BrBG.q2-4{fill:#80cdc1;background:#80cdc1;stroke:#80cdc1}.BrBG.q3-4{fill:#018571;background:#018571;stroke:#018571}.BrBG.q0-5{fill:#a6611a;background:#a6611a;stroke:#a6611a}.BrBG.q1-5{fill:#dfc27d;background:#dfc27d;stroke:#dfc27d}.BrBG.q2-5{fill:#f5f5f5;background:#f5f5f5;stroke:#f5f5f5}.BrBG.q3-5{fill:#80cdc1;background:#80cdc1;stroke:#80cdc1}.BrBG.q4-5{fill:#018571;background:#018571;stroke:#018571}.BrBG.q0-6{fill:#8c510a;background:#8c510a;stroke:#8c510a}.BrBG.q1-6{fill:#d8b365;background:#d8b365;stroke:#d8b365}.BrBG.q2-6{fill:#f6e8c3;background:#f6e8c3;stroke:#f6e8c3}.BrBG.q3-6{fill:#c7eae5;background:#c7eae5;stroke:#c7eae5}.BrBG.q4-6{fill:#5ab4ac;background:#5ab4ac;stroke:#5ab4ac}.BrBG.q5-6{fill:#01665e;background:#01665e;stroke:#01665e}.BrBG.q0-7{fill:#8c510a;background:#8c510a;stroke:#8c510a}.BrBG.q1-7{fill:#d8b365;background:#d8b365;stroke:#d8b365}.BrBG.q2-7{fill:#f6e8c3;background:#f6e8c3;stroke:#f6e8c3}.BrBG.q3-7{fill:#f5f5f5;background:#f5f5f5;stroke:#f5f5f5}.BrBG.q4-7{fill:#c7eae5;background:#c7eae5;stroke:#c7eae5}.BrBG.q5-7{fill:#5ab4ac;background:#5ab4ac;stroke:#5ab4ac}.BrBG.q6-7{fill:#01665e;background:#01665e;stroke:#01665e}.BrBG.q0-8{fill:#8c510a;background:#8c510a;stroke:#8c510a}.BrBG.q1-8{fill:#bf812d;background:#bf812d;stroke:#bf812d}.BrBG.q2-8{fill:#dfc27d;background:#dfc27d;stroke:#dfc27d}.BrBG.q3-8{fill:#f6e8c3;background:#f6e8c3;stroke:#f6e8c3}.BrBG.q4-8{fill:#c7eae5;background:#c7eae5;stroke:#c7eae5}.BrBG.q5-8{fill:#80cdc1;background:#80cdc1;stroke:#80cdc1}.BrBG.q6-8{fill:#35978f;background:#35978f;stroke:#35978f}.BrBG.q7-8{fill:#01665e;background:#01665e;stroke:#01665e}.BrBG.q0-9{fill:#8c510a;background:#8c510a;stroke:#8c510a}.BrBG.q1-9{fill:#bf812d;background:#bf812d;stroke:#bf812d}.BrBG.q2-9{fill:#dfc27d;background:#dfc27d;stroke:#dfc27d}.BrBG.q3-9{fill:#f6e8c3;background:#f6e8c3;stroke:#f6e8c3}.BrBG.q4-9{fill:#f5f5f5;background:#f5f5f5;stroke:#f5f5f5}.BrBG.q5-9{fill:#c7eae5;background:#c7eae5;stroke:#c7eae5}.BrBG.q6-9{fill:#80cdc1;background:#80cdc1;stroke:#80cdc1}.BrBG.q7-9{fill:#35978f;background:#35978f;stroke:#35978f}.BrBG.q8-9{fill:#01665e;background:#01665e;stroke:#01665e}.BrBG.q0-10{fill:#543005;background:#543005;stroke:#543005}.BrBG.q1-10{fill:#8c510a;background:#8c510a;stroke:#8c510a}.BrBG.q2-10{fill:#bf812d;background:#bf812d;stroke:#bf812d}.BrBG.q3-10{fill:#dfc27d;background:#dfc27d;stroke:#dfc27d}.BrBG.q4-10{fill:#f6e8c3;background:#f6e8c3;stroke:#f6e8c3}.BrBG.q5-10{fill:#c7eae5;background:#c7eae5;stroke:#c7eae5}.BrBG.q6-10{fill:#80cdc1;background:#80cdc1;stroke:#80cdc1}.BrBG.q7-10{fill:#35978f;background:#35978f;stroke:#35978f}.BrBG.q8-10{fill:#01665e;background:#01665e;stroke:#01665e}.BrBG.q9-10{fill:#003c30;background:#003c30;stroke:#003c30}.BrBG.q0-11{fill:#543005;background:#543005;stroke:#543005}.BrBG.q1-11{fill:#8c510a;background:#8c510a;stroke:#8c510a}.BrBG.q2-11{fill:#bf812d;background:#bf812d;stroke:#bf812d}.BrBG.q3-11{fill:#dfc27d;background:#dfc27d;stroke:#dfc27d}.BrBG.q4-11{fill:#f6e8c3;background:#f6e8c3;stroke:#f6e8c3}.BrBG.q5-11{fill:#f5f5f5;background:#f5f5f5;stroke:#f5f5f5}.BrBG.q6-11{fill:#c7eae5;background:#c7eae5;stroke:#c7eae5}.BrBG.q7-11{fill:#80cdc1;background:#80cdc1;stroke:#80cdc1}.BrBG.q8-11{fill:#35978f;background:#35978f;stroke:#35978f}.BrBG.q9-11{fill:#01665e;background:#01665e;stroke:#01665e}.BrBG.q10-11{fill:#003c30;background:#003c30;stroke:#003c30}.PRGn.q0-3{fill:#af8dc3;background:#af8dc3;stroke:#af8dc3}.PRGn.q1-3{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.PRGn.q2-3{fill:#7fbf7b;background:#7fbf7b;stroke:#7fbf7b}.PRGn.q0-4{fill:#7b3294;background:#7b3294;stroke:#7b3294}.PRGn.q1-4{fill:#c2a5cf;background:#c2a5cf;stroke:#c2a5cf}.PRGn.q2-4{fill:#a6dba0;background:#a6dba0;stroke:#a6dba0}.PRGn.q3-4{fill:#008837;background:#008837;stroke:#008837}.PRGn.q0-5{fill:#7b3294;background:#7b3294;stroke:#7b3294}.PRGn.q1-5{fill:#c2a5cf;background:#c2a5cf;stroke:#c2a5cf}.PRGn.q2-5{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.PRGn.q3-5{fill:#a6dba0;background:#a6dba0;stroke:#a6dba0}.PRGn.q4-5{fill:#008837;background:#008837;stroke:#008837}.PRGn.q0-6{fill:#762a83;background:#762a83;stroke:#762a83}.PRGn.q1-6{fill:#af8dc3;background:#af8dc3;stroke:#af8dc3}.PRGn.q2-6{fill:#e7d4e8;background:#e7d4e8;stroke:#e7d4e8}.PRGn.q3-6{fill:#d9f0d3;background:#d9f0d3;stroke:#d9f0d3}.PRGn.q4-6{fill:#7fbf7b;background:#7fbf7b;stroke:#7fbf7b}.PRGn.q5-6{fill:#1b7837;background:#1b7837;stroke:#1b7837}.PRGn.q0-7{fill:#762a83;background:#762a83;stroke:#762a83}.PRGn.q1-7{fill:#af8dc3;background:#af8dc3;stroke:#af8dc3}.PRGn.q2-7{fill:#e7d4e8;background:#e7d4e8;stroke:#e7d4e8}.PRGn.q3-7{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.PRGn.q4-7{fill:#d9f0d3;background:#d9f0d3;stroke:#d9f0d3}.PRGn.q5-7{fill:#7fbf7b;background:#7fbf7b;stroke:#7fbf7b}.PRGn.q6-7{fill:#1b7837;background:#1b7837;stroke:#1b7837}.PRGn.q0-8{fill:#762a83;background:#762a83;stroke:#762a83}.PRGn.q1-8{fill:#9970ab;background:#9970ab;stroke:#9970ab}.PRGn.q2-8{fill:#c2a5cf;background:#c2a5cf;stroke:#c2a5cf}.PRGn.q3-8{fill:#e7d4e8;background:#e7d4e8;stroke:#e7d4e8}.PRGn.q4-8{fill:#d9f0d3;background:#d9f0d3;stroke:#d9f0d3}.PRGn.q5-8{fill:#a6dba0;background:#a6dba0;stroke:#a6dba0}.PRGn.q6-8{fill:#5aae61;background:#5aae61;stroke:#5aae61}.PRGn.q7-8{fill:#1b7837;background:#1b7837;stroke:#1b7837}.PRGn.q0-9{fill:#762a83;background:#762a83;stroke:#762a83}.PRGn.q1-9{fill:#9970ab;background:#9970ab;stroke:#9970ab}.PRGn.q2-9{fill:#c2a5cf;background:#c2a5cf;stroke:#c2a5cf}.PRGn.q3-9{fill:#e7d4e8;background:#e7d4e8;stroke:#e7d4e8}.PRGn.q4-9{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.PRGn.q5-9{fill:#d9f0d3;background:#d9f0d3;stroke:#d9f0d3}.PRGn.q6-9{fill:#a6dba0;background:#a6dba0;stroke:#a6dba0}.PRGn.q7-9{fill:#5aae61;background:#5aae61;stroke:#5aae61}.PRGn.q8-9{fill:#1b7837;background:#1b7837;stroke:#1b7837}.PRGn.q0-10{fill:#40004b;background:#40004b;stroke:#40004b}.PRGn.q1-10{fill:#762a83;background:#762a83;stroke:#762a83}.PRGn.q2-10{fill:#9970ab;background:#9970ab;stroke:#9970ab}.PRGn.q3-10{fill:#c2a5cf;background:#c2a5cf;stroke:#c2a5cf}.PRGn.q4-10{fill:#e7d4e8;background:#e7d4e8;stroke:#e7d4e8}.PRGn.q5-10{fill:#d9f0d3;background:#d9f0d3;stroke:#d9f0d3}.PRGn.q6-10{fill:#a6dba0;background:#a6dba0;stroke:#a6dba0}.PRGn.q7-10{fill:#5aae61;background:#5aae61;stroke:#5aae61}.PRGn.q8-10{fill:#1b7837;background:#1b7837;stroke:#1b7837}.PRGn.q9-10{fill:#00441b;background:#00441b;stroke:#00441b}.PRGn.q0-11{fill:#40004b;background:#40004b;stroke:#40004b}.PRGn.q1-11{fill:#762a83;background:#762a83;stroke:#762a83}.PRGn.q2-11{fill:#9970ab;background:#9970ab;stroke:#9970ab}.PRGn.q3-11{fill:#c2a5cf;background:#c2a5cf;stroke:#c2a5cf}.PRGn.q4-11{fill:#e7d4e8;background:#e7d4e8;stroke:#e7d4e8}.PRGn.q5-11{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.PRGn.q6-11{fill:#d9f0d3;background:#d9f0d3;stroke:#d9f0d3}.PRGn.q7-11{fill:#a6dba0;background:#a6dba0;stroke:#a6dba0}.PRGn.q8-11{fill:#5aae61;background:#5aae61;stroke:#5aae61}.PRGn.q9-11{fill:#1b7837;background:#1b7837;stroke:#1b7837}.PRGn.q10-11{fill:#00441b;background:#00441b;stroke:#00441b}.PiYG.q0-3{fill:#e9a3c9;background:#e9a3c9;stroke:#e9a3c9}.PiYG.q1-3{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.PiYG.q2-3{fill:#a1d76a;background:#a1d76a;stroke:#a1d76a}.PiYG.q0-4{fill:#d01c8b;background:#d01c8b;stroke:#d01c8b}.PiYG.q1-4{fill:#f1b6da;background:#f1b6da;stroke:#f1b6da}.PiYG.q2-4{fill:#b8e186;background:#b8e186;stroke:#b8e186}.PiYG.q3-4{fill:#4dac26;background:#4dac26;stroke:#4dac26}.PiYG.q0-5{fill:#d01c8b;background:#d01c8b;stroke:#d01c8b}.PiYG.q1-5{fill:#f1b6da;background:#f1b6da;stroke:#f1b6da}.PiYG.q2-5{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.PiYG.q3-5{fill:#b8e186;background:#b8e186;stroke:#b8e186}.PiYG.q4-5{fill:#4dac26;background:#4dac26;stroke:#4dac26}.PiYG.q0-6{fill:#c51b7d;background:#c51b7d;stroke:#c51b7d}.PiYG.q1-6{fill:#e9a3c9;background:#e9a3c9;stroke:#e9a3c9}.PiYG.q2-6{fill:#fde0ef;background:#fde0ef;stroke:#fde0ef}.PiYG.q3-6{fill:#e6f5d0;background:#e6f5d0;stroke:#e6f5d0}.PiYG.q4-6{fill:#a1d76a;background:#a1d76a;stroke:#a1d76a}.PiYG.q5-6{fill:#4d9221;background:#4d9221;stroke:#4d9221}.PiYG.q0-7{fill:#c51b7d;background:#c51b7d;stroke:#c51b7d}.PiYG.q1-7{fill:#e9a3c9;background:#e9a3c9;stroke:#e9a3c9}.PiYG.q2-7{fill:#fde0ef;background:#fde0ef;stroke:#fde0ef}.PiYG.q3-7{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.PiYG.q4-7{fill:#e6f5d0;background:#e6f5d0;stroke:#e6f5d0}.PiYG.q5-7{fill:#a1d76a;background:#a1d76a;stroke:#a1d76a}.PiYG.q6-7{fill:#4d9221;background:#4d9221;stroke:#4d9221}.PiYG.q0-8{fill:#c51b7d;background:#c51b7d;stroke:#c51b7d}.PiYG.q1-8{fill:#de77ae;background:#de77ae;stroke:#de77ae}.PiYG.q2-8{fill:#f1b6da;background:#f1b6da;stroke:#f1b6da}.PiYG.q3-8{fill:#fde0ef;background:#fde0ef;stroke:#fde0ef}.PiYG.q4-8{fill:#e6f5d0;background:#e6f5d0;stroke:#e6f5d0}.PiYG.q5-8{fill:#b8e186;background:#b8e186;stroke:#b8e186}.PiYG.q6-8{fill:#7fbc41;background:#7fbc41;stroke:#7fbc41}.PiYG.q7-8{fill:#4d9221;background:#4d9221;stroke:#4d9221}.PiYG.q0-9{fill:#c51b7d;background:#c51b7d;stroke:#c51b7d}.PiYG.q1-9{fill:#de77ae;background:#de77ae;stroke:#de77ae}.PiYG.q2-9{fill:#f1b6da;background:#f1b6da;stroke:#f1b6da}.PiYG.q3-9{fill:#fde0ef;background:#fde0ef;stroke:#fde0ef}.PiYG.q4-9{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.PiYG.q5-9{fill:#e6f5d0;background:#e6f5d0;stroke:#e6f5d0}.PiYG.q6-9{fill:#b8e186;background:#b8e186;stroke:#b8e186}.PiYG.q7-9{fill:#7fbc41;background:#7fbc41;stroke:#7fbc41}.PiYG.q8-9{fill:#4d9221;background:#4d9221;stroke:#4d9221}.PiYG.q0-10{fill:#8e0152;background:#8e0152;stroke:#8e0152}.PiYG.q1-10{fill:#c51b7d;background:#c51b7d;stroke:#c51b7d}.PiYG.q2-10{fill:#de77ae;background:#de77ae;stroke:#de77ae}.PiYG.q3-10{fill:#f1b6da;background:#f1b6da;stroke:#f1b6da}.PiYG.q4-10{fill:#fde0ef;background:#fde0ef;stroke:#fde0ef}.PiYG.q5-10{fill:#e6f5d0;background:#e6f5d0;stroke:#e6f5d0}.PiYG.q6-10{fill:#b8e186;background:#b8e186;stroke:#b8e186}.PiYG.q7-10{fill:#7fbc41;background:#7fbc41;stroke:#7fbc41}.PiYG.q8-10{fill:#4d9221;background:#4d9221;stroke:#4d9221}.PiYG.q9-10{fill:#276419;background:#276419;stroke:#276419}.PiYG.q0-11{fill:#8e0152;background:#8e0152;stroke:#8e0152}.PiYG.q1-11{fill:#c51b7d;background:#c51b7d;stroke:#c51b7d}.PiYG.q2-11{fill:#de77ae;background:#de77ae;stroke:#de77ae}.PiYG.q3-11{fill:#f1b6da;background:#f1b6da;stroke:#f1b6da}.PiYG.q4-11{fill:#fde0ef;background:#fde0ef;stroke:#fde0ef}.PiYG.q5-11{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.PiYG.q6-11{fill:#e6f5d0;background:#e6f5d0;stroke:#e6f5d0}.PiYG.q7-11{fill:#b8e186;background:#b8e186;stroke:#b8e186}.PiYG.q8-11{fill:#7fbc41;background:#7fbc41;stroke:#7fbc41}.PiYG.q9-11{fill:#4d9221;background:#4d9221;stroke:#4d9221}.PiYG.q10-11{fill:#276419;background:#276419;stroke:#276419}.RdBu.q0-3{fill:#ef8a62;background:#ef8a62;stroke:#ef8a62}.RdBu.q1-3{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.RdBu.q2-3{fill:#67a9cf;background:#67a9cf;stroke:#67a9cf}.RdBu.q0-4{fill:#ca0020;background:#ca0020;stroke:#ca0020}.RdBu.q1-4{fill:#f4a582;background:#f4a582;stroke:#f4a582}.RdBu.q2-4{fill:#92c5de;background:#92c5de;stroke:#92c5de}.RdBu.q3-4{fill:#0571b0;background:#0571b0;stroke:#0571b0}.RdBu.q0-5{fill:#ca0020;background:#ca0020;stroke:#ca0020}.RdBu.q1-5{fill:#f4a582;background:#f4a582;stroke:#f4a582}.RdBu.q2-5{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.RdBu.q3-5{fill:#92c5de;background:#92c5de;stroke:#92c5de}.RdBu.q4-5{fill:#0571b0;background:#0571b0;stroke:#0571b0}.RdBu.q0-6{fill:#b2182b;background:#b2182b;stroke:#b2182b}.RdBu.q1-6{fill:#ef8a62;background:#ef8a62;stroke:#ef8a62}.RdBu.q2-6{fill:#fddbc7;background:#fddbc7;stroke:#fddbc7}.RdBu.q3-6{fill:#d1e5f0;background:#d1e5f0;stroke:#d1e5f0}.RdBu.q4-6{fill:#67a9cf;background:#67a9cf;stroke:#67a9cf}.RdBu.q5-6{fill:#2166ac;background:#2166ac;stroke:#2166ac}.RdBu.q0-7{fill:#b2182b;background:#b2182b;stroke:#b2182b}.RdBu.q1-7{fill:#ef8a62;background:#ef8a62;stroke:#ef8a62}.RdBu.q2-7{fill:#fddbc7;background:#fddbc7;stroke:#fddbc7}.RdBu.q3-7{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.RdBu.q4-7{fill:#d1e5f0;background:#d1e5f0;stroke:#d1e5f0}.RdBu.q5-7{fill:#67a9cf;background:#67a9cf;stroke:#67a9cf}.RdBu.q6-7{fill:#2166ac;background:#2166ac;stroke:#2166ac}.RdBu.q0-8{fill:#b2182b;background:#b2182b;stroke:#b2182b}.RdBu.q1-8{fill:#d6604d;background:#d6604d;stroke:#d6604d}.RdBu.q2-8{fill:#f4a582;background:#f4a582;stroke:#f4a582}.RdBu.q3-8{fill:#fddbc7;background:#fddbc7;stroke:#fddbc7}.RdBu.q4-8{fill:#d1e5f0;background:#d1e5f0;stroke:#d1e5f0}.RdBu.q5-8{fill:#92c5de;background:#92c5de;stroke:#92c5de}.RdBu.q6-8{fill:#4393c3;background:#4393c3;stroke:#4393c3}.RdBu.q7-8{fill:#2166ac;background:#2166ac;stroke:#2166ac}.RdBu.q0-9{fill:#b2182b;background:#b2182b;stroke:#b2182b}.RdBu.q1-9{fill:#d6604d;background:#d6604d;stroke:#d6604d}.RdBu.q2-9{fill:#f4a582;background:#f4a582;stroke:#f4a582}.RdBu.q3-9{fill:#fddbc7;background:#fddbc7;stroke:#fddbc7}.RdBu.q4-9{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.RdBu.q5-9{fill:#d1e5f0;background:#d1e5f0;stroke:#d1e5f0}.RdBu.q6-9{fill:#92c5de;background:#92c5de;stroke:#92c5de}.RdBu.q7-9{fill:#4393c3;background:#4393c3;stroke:#4393c3}.RdBu.q8-9{fill:#2166ac;background:#2166ac;stroke:#2166ac}.RdBu.q0-10{fill:#67001f;background:#67001f;stroke:#67001f}.RdBu.q1-10{fill:#b2182b;background:#b2182b;stroke:#b2182b}.RdBu.q2-10{fill:#d6604d;background:#d6604d;stroke:#d6604d}.RdBu.q3-10{fill:#f4a582;background:#f4a582;stroke:#f4a582}.RdBu.q4-10{fill:#fddbc7;background:#fddbc7;stroke:#fddbc7}.RdBu.q5-10{fill:#d1e5f0;background:#d1e5f0;stroke:#d1e5f0}.RdBu.q6-10{fill:#92c5de;background:#92c5de;stroke:#92c5de}.RdBu.q7-10{fill:#4393c3;background:#4393c3;stroke:#4393c3}.RdBu.q8-10{fill:#2166ac;background:#2166ac;stroke:#2166ac}.RdBu.q9-10{fill:#053061;background:#053061;stroke:#053061}.RdBu.q0-11{fill:#67001f;background:#67001f;stroke:#67001f}.RdBu.q1-11{fill:#b2182b;background:#b2182b;stroke:#b2182b}.RdBu.q2-11{fill:#d6604d;background:#d6604d;stroke:#d6604d}.RdBu.q3-11{fill:#f4a582;background:#f4a582;stroke:#f4a582}.RdBu.q4-11{fill:#fddbc7;background:#fddbc7;stroke:#fddbc7}.RdBu.q5-11{fill:#f7f7f7;background:#f7f7f7;stroke:#f7f7f7}.RdBu.q6-11{fill:#d1e5f0;background:#d1e5f0;stroke:#d1e5f0}.RdBu.q7-11{fill:#92c5de;background:#92c5de;stroke:#92c5de}.RdBu.q8-11{fill:#4393c3;background:#4393c3;stroke:#4393c3}.RdBu.q9-11{fill:#2166ac;background:#2166ac;stroke:#2166ac}.RdBu.q10-11{fill:#053061;background:#053061;stroke:#053061}.RdGy.q0-3{fill:#ef8a62;background:#ef8a62;stroke:#ef8a62}.RdGy.q1-3{fill:#fff;background:#fff;stroke:#fff}.RdGy.q2-3{fill:#999;background:#999;stroke:#999}.RdGy.q0-4{fill:#ca0020;background:#ca0020;stroke:#ca0020}.RdGy.q1-4{fill:#f4a582;background:#f4a582;stroke:#f4a582}.RdGy.q2-4{fill:#bababa;background:#bababa;stroke:#bababa}.RdGy.q3-4{fill:#404040;background:#404040;stroke:#404040}.RdGy.q0-5{fill:#ca0020;background:#ca0020;stroke:#ca0020}.RdGy.q1-5{fill:#f4a582;background:#f4a582;stroke:#f4a582}.RdGy.q2-5{fill:#fff;background:#fff;stroke:#fff}.RdGy.q3-5{fill:#bababa;background:#bababa;stroke:#bababa}.RdGy.q4-5{fill:#404040;background:#404040;stroke:#404040}.RdGy.q0-6{fill:#b2182b;background:#b2182b;stroke:#b2182b}.RdGy.q1-6{fill:#ef8a62;background:#ef8a62;stroke:#ef8a62}.RdGy.q2-6{fill:#fddbc7;background:#fddbc7;stroke:#fddbc7}.RdGy.q3-6{fill:#e0e0e0;background:#e0e0e0;stroke:#e0e0e0}.RdGy.q4-6{fill:#999;background:#999;stroke:#999}.RdGy.q5-6{fill:#4d4d4d;background:#4d4d4d;stroke:#4d4d4d}.RdGy.q0-7{fill:#b2182b;background:#b2182b;stroke:#b2182b}.RdGy.q1-7{fill:#ef8a62;background:#ef8a62;stroke:#ef8a62}.RdGy.q2-7{fill:#fddbc7;background:#fddbc7;stroke:#fddbc7}.RdGy.q3-7{fill:#fff;background:#fff;stroke:#fff}.RdGy.q4-7{fill:#e0e0e0;background:#e0e0e0;stroke:#e0e0e0}.RdGy.q5-7{fill:#999;background:#999;stroke:#999}.RdGy.q6-7{fill:#4d4d4d;background:#4d4d4d;stroke:#4d4d4d}.RdGy.q0-8{fill:#b2182b;background:#b2182b;stroke:#b2182b}.RdGy.q1-8{fill:#d6604d;background:#d6604d;stroke:#d6604d}.RdGy.q2-8{fill:#f4a582;background:#f4a582;stroke:#f4a582}.RdGy.q3-8{fill:#fddbc7;background:#fddbc7;stroke:#fddbc7}.RdGy.q4-8{fill:#e0e0e0;background:#e0e0e0;stroke:#e0e0e0}.RdGy.q5-8{fill:#bababa;background:#bababa;stroke:#bababa}.RdGy.q6-8{fill:#878787;background:#878787;stroke:#878787}.RdGy.q7-8{fill:#4d4d4d;background:#4d4d4d;stroke:#4d4d4d}.RdGy.q0-9{fill:#b2182b;background:#b2182b;stroke:#b2182b}.RdGy.q1-9{fill:#d6604d;background:#d6604d;stroke:#d6604d}.RdGy.q2-9{fill:#f4a582;background:#f4a582;stroke:#f4a582}.RdGy.q3-9{fill:#fddbc7;background:#fddbc7;stroke:#fddbc7}.RdGy.q4-9{fill:#fff;background:#fff;stroke:#fff}.RdGy.q5-9{fill:#e0e0e0;background:#e0e0e0;stroke:#e0e0e0}.RdGy.q6-9{fill:#bababa;background:#bababa;stroke:#bababa}.RdGy.q7-9{fill:#878787;background:#878787;stroke:#878787}.RdGy.q8-9{fill:#4d4d4d;background:#4d4d4d;stroke:#4d4d4d}.RdGy.q0-10{fill:#67001f;background:#67001f;stroke:#67001f}.RdGy.q1-10{fill:#b2182b;background:#b2182b;stroke:#b2182b}.RdGy.q2-10{fill:#d6604d;background:#d6604d;stroke:#d6604d}.RdGy.q3-10{fill:#f4a582;background:#f4a582;stroke:#f4a582}.RdGy.q4-10{fill:#fddbc7;background:#fddbc7;stroke:#fddbc7}.RdGy.q5-10{fill:#e0e0e0;background:#e0e0e0;stroke:#e0e0e0}.RdGy.q6-10{fill:#bababa;background:#bababa;stroke:#bababa}.RdGy.q7-10{fill:#878787;background:#878787;stroke:#878787}.RdGy.q8-10{fill:#4d4d4d;background:#4d4d4d;stroke:#4d4d4d}.RdGy.q9-10{fill:#1a1a1a;background:#1a1a1a;stroke:#1a1a1a}.RdGy.q0-11{fill:#67001f;background:#67001f;stroke:#67001f}.RdGy.q1-11{fill:#b2182b;background:#b2182b;stroke:#b2182b}.RdGy.q2-11{fill:#d6604d;background:#d6604d;stroke:#d6604d}.RdGy.q3-11{fill:#f4a582;background:#f4a582;stroke:#f4a582}.RdGy.q4-11{fill:#fddbc7;background:#fddbc7;stroke:#fddbc7}.RdGy.q5-11{fill:#fff;background:#fff;stroke:#fff}.RdGy.q6-11{fill:#e0e0e0;background:#e0e0e0;stroke:#e0e0e0}.RdGy.q7-11{fill:#bababa;background:#bababa;stroke:#bababa}.RdGy.q8-11{fill:#878787;background:#878787;stroke:#878787}.RdGy.q9-11{fill:#4d4d4d;background:#4d4d4d;stroke:#4d4d4d}.RdGy.q10-11{fill:#1a1a1a;background:#1a1a1a;stroke:#1a1a1a}.RdYlBu.q0-3{fill:#fc8d59;background:#fc8d59;stroke:#fc8d59}.RdYlBu.q1-3{fill:#ffffbf;background:#ffffbf;stroke:#ffffbf}.RdYlBu.q2-3{fill:#91bfdb;background:#91bfdb;stroke:#91bfdb}.RdYlBu.q0-4{fill:#d7191c;background:#d7191c;stroke:#d7191c}.RdYlBu.q1-4{fill:#fdae61;background:#fdae61;stroke:#fdae61}.RdYlBu.q2-4{fill:#abd9e9;background:#abd9e9;stroke:#abd9e9}.RdYlBu.q3-4{fill:#2c7bb6;background:#2c7bb6;stroke:#2c7bb6}.RdYlBu.q0-5{fill:#d7191c;background:#d7191c;stroke:#d7191c}.RdYlBu.q1-5{fill:#fdae61;background:#fdae61;stroke:#fdae61}.RdYlBu.q2-5{fill:#ffffbf;background:#ffffbf;stroke:#ffffbf}.RdYlBu.q3-5{fill:#abd9e9;background:#abd9e9;stroke:#abd9e9}.RdYlBu.q4-5{fill:#2c7bb6;background:#2c7bb6;stroke:#2c7bb6}.RdYlBu.q0-6{fill:#d73027;background:#d73027;stroke:#d73027}.RdYlBu.q1-6{fill:#fc8d59;background:#fc8d59;stroke:#fc8d59}.RdYlBu.q2-6{fill:#fee090;background:#fee090;stroke:#fee090}.RdYlBu.q3-6{fill:#e0f3f8;background:#e0f3f8;stroke:#e0f3f8}.RdYlBu.q4-6{fill:#91bfdb;background:#91bfdb;stroke:#91bfdb}.RdYlBu.q5-6{fill:#4575b4;background:#4575b4;stroke:#4575b4}.RdYlBu.q0-7{fill:#d73027;background:#d73027;stroke:#d73027}.RdYlBu.q1-7{fill:#fc8d59;background:#fc8d59;stroke:#fc8d59}.RdYlBu.q2-7{fill:#fee090;background:#fee090;stroke:#fee090}.RdYlBu.q3-7{fill:#ffffbf;background:#ffffbf;stroke:#ffffbf}.RdYlBu.q4-7{fill:#e0f3f8;background:#e0f3f8;stroke:#e0f3f8}.RdYlBu.q5-7{fill:#91bfdb;background:#91bfdb;stroke:#91bfdb}.RdYlBu.q6-7{fill:#4575b4;background:#4575b4;stroke:#4575b4}.RdYlBu.q0-8{fill:#d73027;background:#d73027;stroke:#d73027}.RdYlBu.q1-8{fill:#f46d43;background:#f46d43;stroke:#f46d43}.RdYlBu.q2-8{fill:#fdae61;background:#fdae61;stroke:#fdae61}.RdYlBu.q3-8{fill:#fee090;background:#fee090;stroke:#fee090}.RdYlBu.q4-8{fill:#e0f3f8;background:#e0f3f8;stroke:#e0f3f8}.RdYlBu.q5-8{fill:#abd9e9;background:#abd9e9;stroke:#abd9e9}.RdYlBu.q6-8{fill:#74add1;background:#74add1;stroke:#74add1}.RdYlBu.q7-8{fill:#4575b4;background:#4575b4;stroke:#4575b4}.RdYlBu.q0-9{fill:#d73027;background:#d73027;stroke:#d73027}.RdYlBu.q1-9{fill:#f46d43;background:#f46d43;stroke:#f46d43}.RdYlBu.q2-9{fill:#fdae61;background:#fdae61;stroke:#fdae61}.RdYlBu.q3-9{fill:#fee090;background:#fee090;stroke:#fee090}.RdYlBu.q4-9{fill:#ffffbf;background:#ffffbf;stroke:#ffffbf}.RdYlBu.q5-9{fill:#e0f3f8;background:#e0f3f8;stroke:#e0f3f8}.RdYlBu.q6-9{fill:#abd9e9;background:#abd9e9;stroke:#abd9e9}.RdYlBu.q7-9{fill:#74add1;background:#74add1;stroke:#74add1}.RdYlBu.q8-9{fill:#4575b4;background:#4575b4;stroke:#4575b4}.RdYlBu.q0-10{fill:#a50026;background:#a50026;stroke:#a50026}.RdYlBu.q1-10{fill:#d73027;background:#d73027;stroke:#d73027}.RdYlBu.q2-10{fill:#f46d43;background:#f46d43;stroke:#f46d43}.RdYlBu.q3-10{fill:#fdae61;background:#fdae61;stroke:#fdae61}.RdYlBu.q4-10{fill:#fee090;background:#fee090;stroke:#fee090}.RdYlBu.q5-10{fill:#e0f3f8;background:#e0f3f8;stroke:#e0f3f8}.RdYlBu.q6-10{fill:#abd9e9;background:#abd9e9;stroke:#abd9e9}.RdYlBu.q7-10{fill:#74add1;background:#74add1;stroke:#74add1}.RdYlBu.q8-10{fill:#4575b4;background:#4575b4;stroke:#4575b4}.RdYlBu.q9-10{fill:#313695;background:#313695;stroke:#313695}.RdYlBu.q0-11{fill:#a50026;background:#a50026;stroke:#a50026}.RdYlBu.q1-11{fill:#d73027;background:#d73027;stroke:#d73027}.RdYlBu.q2-11{fill:#f46d43;background:#f46d43;stroke:#f46d43}.RdYlBu.q3-11{fill:#fdae61;background:#fdae61;stroke:#fdae61}.RdYlBu.q4-11{fill:#fee090;background:#fee090;stroke:#fee090}.RdYlBu.q5-11{fill:#ffffbf;background:#ffffbf;stroke:#ffffbf}.RdYlBu.q6-11{fill:#e0f3f8;background:#e0f3f8;stroke:#e0f3f8}.RdYlBu.q7-11{fill:#abd9e9;background:#abd9e9;stroke:#abd9e9}.RdYlBu.q8-11{fill:#74add1;background:#74add1;stroke:#74add1}.RdYlBu.q9-11{fill:#4575b4;background:#4575b4;stroke:#4575b4}.RdYlBu.q10-11{fill:#313695;background:#313695;stroke:#313695}.Spectral.q0-3{fill:#fc8d59;background:#fc8d59;stroke:#fc8d59}.Spectral.q1-3{fill:#ffffbf;background:#ffffbf;stroke:#ffffbf}.Spectral.q2-3{fill:#99d594;background:#99d594;stroke:#99d594}.Spectral.q0-4{fill:#d7191c;background:#d7191c;stroke:#d7191c}.Spectral.q1-4{fill:#fdae61;background:#fdae61;stroke:#fdae61}.Spectral.q2-4{fill:#abdda4;background:#abdda4;stroke:#abdda4}.Spectral.q3-4{fill:#2b83ba;background:#2b83ba;stroke:#2b83ba}.Spectral.q0-5{fill:#d7191c;background:#d7191c;stroke:#d7191c}.Spectral.q1-5{fill:#fdae61;background:#fdae61;stroke:#fdae61}.Spectral.q2-5{fill:#ffffbf;background:#ffffbf;stroke:#ffffbf}.Spectral.q3-5{fill:#abdda4;background:#abdda4;stroke:#abdda4}.Spectral.q4-5{fill:#2b83ba;background:#2b83ba;stroke:#2b83ba}.Spectral.q0-6{fill:#d53e4f;background:#d53e4f;stroke:#d53e4f}.Spectral.q1-6{fill:#fc8d59;background:#fc8d59;stroke:#fc8d59}.Spectral.q2-6{fill:#fee08b;background:#fee08b;stroke:#fee08b}.Spectral.q3-6{fill:#e6f598;background:#e6f598;stroke:#e6f598}.Spectral.q4-6{fill:#99d594;background:#99d594;stroke:#99d594}.Spectral.q5-6{fill:#3288bd;background:#3288bd;stroke:#3288bd}.Spectral.q0-7{fill:#d53e4f;background:#d53e4f;stroke:#d53e4f}.Spectral.q1-7{fill:#fc8d59;background:#fc8d59;stroke:#fc8d59}.Spectral.q2-7{fill:#fee08b;background:#fee08b;stroke:#fee08b}.Spectral.q3-7{fill:#ffffbf;background:#ffffbf;stroke:#ffffbf}.Spectral.q4-7{fill:#e6f598;background:#e6f598;stroke:#e6f598}.Spectral.q5-7{fill:#99d594;background:#99d594;stroke:#99d594}.Spectral.q6-7{fill:#3288bd;background:#3288bd;stroke:#3288bd}.Spectral.q0-8{fill:#d53e4f;background:#d53e4f;stroke:#d53e4f}.Spectral.q1-8{fill:#f46d43;background:#f46d43;stroke:#f46d43}.Spectral.q2-8{fill:#fdae61;background:#fdae61;stroke:#fdae61}.Spectral.q3-8{fill:#fee08b;background:#fee08b;stroke:#fee08b}.Spectral.q4-8{fill:#e6f598;background:#e6f598;stroke:#e6f598}.Spectral.q5-8{fill:#abdda4;background:#abdda4;stroke:#abdda4}.Spectral.q6-8{fill:#66c2a5;background:#66c2a5;stroke:#66c2a5}.Spectral.q7-8{fill:#3288bd;background:#3288bd;stroke:#3288bd}.Spectral.q0-9{fill:#d53e4f;background:#d53e4f;stroke:#d53e4f}.Spectral.q1-9{fill:#f46d43;background:#f46d43;stroke:#f46d43}.Spectral.q2-9{fill:#fdae61;background:#fdae61;stroke:#fdae61}.Spectral.q3-9{fill:#fee08b;background:#fee08b;stroke:#fee08b}.Spectral.q4-9{fill:#ffffbf;background:#ffffbf;stroke:#ffffbf}.Spectral.q5-9{fill:#e6f598;background:#e6f598;stroke:#e6f598}.Spectral.q6-9{fill:#abdda4;background:#abdda4;stroke:#abdda4}.Spectral.q7-9{fill:#66c2a5;background:#66c2a5;stroke:#66c2a5}.Spectral.q8-9{fill:#3288bd;background:#3288bd;stroke:#3288bd}.Spectral.q0-10{fill:#9e0142;background:#9e0142;stroke:#9e0142}.Spectral.q1-10{fill:#d53e4f;background:#d53e4f;stroke:#d53e4f}.Spectral.q2-10{fill:#f46d43;background:#f46d43;stroke:#f46d43}.Spectral.q3-10{fill:#fdae61;background:#fdae61;stroke:#fdae61}.Spectral.q4-10{fill:#fee08b;background:#fee08b;stroke:#fee08b}.Spectral.q5-10{fill:#e6f598;background:#e6f598;stroke:#e6f598}.Spectral.q6-10{fill:#abdda4;background:#abdda4;stroke:#abdda4}.Spectral.q7-10{fill:#66c2a5;background:#66c2a5;stroke:#66c2a5}.Spectral.q8-10{fill:#3288bd;background:#3288bd;stroke:#3288bd}.Spectral.q9-10{fill:#5e4fa2;background:#5e4fa2;stroke:#5e4fa2}.Spectral.q0-11{fill:#9e0142;background:#9e0142;stroke:#9e0142}.Spectral.q1-11{fill:#d53e4f;background:#d53e4f;stroke:#d53e4f}.Spectral.q2-11{fill:#f46d43;background:#f46d43;stroke:#f46d43}.Spectral.q3-11{fill:#fdae61;background:#fdae61;stroke:#fdae61}.Spectral.q4-11{fill:#fee08b;background:#fee08b;stroke:#fee08b}.Spectral.q5-11{fill:#ffffbf;background:#ffffbf;stroke:#ffffbf}.Spectral.q6-11{fill:#e6f598;background:#e6f598;stroke:#e6f598}.Spectral.q7-11{fill:#abdda4;background:#abdda4;stroke:#abdda4}.Spectral.q8-11{fill:#66c2a5;background:#66c2a5;stroke:#66c2a5}.Spectral.q9-11{fill:#3288bd;background:#3288bd;stroke:#3288bd}.Spectral.q10-11{fill:#5e4fa2;background:#5e4fa2;stroke:#5e4fa2}.RdYlGn.q0-3{fill:#fc8d59;background:#fc8d59;stroke:#fc8d59}.RdYlGn.q1-3{fill:#ffffbf;background:#ffffbf;stroke:#ffffbf}.RdYlGn.q2-3{fill:#91cf60;background:#91cf60;stroke:#91cf60}.RdYlGn.q0-4{fill:#d7191c;background:#d7191c;stroke:#d7191c}.RdYlGn.q1-4{fill:#fdae61;background:#fdae61;stroke:#fdae61}.RdYlGn.q2-4{fill:#a6d96a;background:#a6d96a;stroke:#a6d96a}.RdYlGn.q3-4{fill:#1a9641;background:#1a9641;stroke:#1a9641}.RdYlGn.q0-5{fill:#d7191c;background:#d7191c;stroke:#d7191c}.RdYlGn.q1-5{fill:#fdae61;background:#fdae61;stroke:#fdae61}.RdYlGn.q2-5{fill:#ffffbf;background:#ffffbf;stroke:#ffffbf}.RdYlGn.q3-5{fill:#a6d96a;background:#a6d96a;stroke:#a6d96a}.RdYlGn.q4-5{fill:#1a9641;background:#1a9641;stroke:#1a9641}.RdYlGn.q0-6{fill:#d73027;background:#d73027;stroke:#d73027}.RdYlGn.q1-6{fill:#fc8d59;background:#fc8d59;stroke:#fc8d59}.RdYlGn.q2-6{fill:#fee08b;background:#fee08b;stroke:#fee08b}.RdYlGn.q3-6{fill:#d9ef8b;background:#d9ef8b;stroke:#d9ef8b}.RdYlGn.q4-6{fill:#91cf60;background:#91cf60;stroke:#91cf60}.RdYlGn.q5-6{fill:#1a9850;background:#1a9850;stroke:#1a9850}.RdYlGn.q0-7{fill:#d73027;background:#d73027;stroke:#d73027}.RdYlGn.q1-7{fill:#fc8d59;background:#fc8d59;stroke:#fc8d59}.RdYlGn.q2-7{fill:#fee08b;background:#fee08b;stroke:#fee08b}.RdYlGn.q3-7{fill:#ffffbf;background:#ffffbf;stroke:#ffffbf}.RdYlGn.q4-7{fill:#d9ef8b;background:#d9ef8b;stroke:#d9ef8b}.RdYlGn.q5-7{fill:#91cf60;background:#91cf60;stroke:#91cf60}.RdYlGn.q6-7{fill:#1a9850;background:#1a9850;stroke:#1a9850}.RdYlGn.q0-8{fill:#d73027;background:#d73027;stroke:#d73027}.RdYlGn.q1-8{fill:#f46d43;background:#f46d43;stroke:#f46d43}.RdYlGn.q2-8{fill:#fdae61;background:#fdae61;stroke:#fdae61}.RdYlGn.q3-8{fill:#fee08b;background:#fee08b;stroke:#fee08b}.RdYlGn.q4-8{fill:#d9ef8b;background:#d9ef8b;stroke:#d9ef8b}.RdYlGn.q5-8{fill:#a6d96a;background:#a6d96a;stroke:#a6d96a}.RdYlGn.q6-8{fill:#66bd63;background:#66bd63;stroke:#66bd63}.RdYlGn.q7-8{fill:#1a9850;background:#1a9850;stroke:#1a9850}.RdYlGn.q0-9{fill:#d73027;background:#d73027;stroke:#d73027}.RdYlGn.q1-9{fill:#f46d43;background:#f46d43;stroke:#f46d43}.RdYlGn.q2-9{fill:#fdae61;background:#fdae61;stroke:#fdae61}.RdYlGn.q3-9{fill:#fee08b;background:#fee08b;stroke:#fee08b}.RdYlGn.q4-9{fill:#ffffbf;background:#ffffbf;stroke:#ffffbf}.RdYlGn.q5-9{fill:#d9ef8b;background:#d9ef8b;stroke:#d9ef8b}.RdYlGn.q6-9{fill:#a6d96a;background:#a6d96a;stroke:#a6d96a}.RdYlGn.q7-9{fill:#66bd63;background:#66bd63;stroke:#66bd63}.RdYlGn.q8-9{fill:#1a9850;background:#1a9850;stroke:#1a9850}.RdYlGn.q0-10{fill:#a50026;background:#a50026;stroke:#a50026}.RdYlGn.q1-10{fill:#d73027;background:#d73027;stroke:#d73027}.RdYlGn.q2-10{fill:#f46d43;background:#f46d43;stroke:#f46d43}.RdYlGn.q3-10{fill:#fdae61;background:#fdae61;stroke:#fdae61}.RdYlGn.q4-10{fill:#fee08b;background:#fee08b;stroke:#fee08b}.RdYlGn.q5-10{fill:#d9ef8b;background:#d9ef8b;stroke:#d9ef8b}.RdYlGn.q6-10{fill:#a6d96a;background:#a6d96a;stroke:#a6d96a}.RdYlGn.q7-10{fill:#66bd63;background:#66bd63;stroke:#66bd63}.RdYlGn.q8-10{fill:#1a9850;background:#1a9850;stroke:#1a9850}.RdYlGn.q9-10{fill:#006837;background:#006837;stroke:#006837}.RdYlGn.q0-11{fill:#a50026;background:#a50026;stroke:#a50026}.RdYlGn.q1-11{fill:#d73027;background:#d73027;stroke:#d73027}.RdYlGn.q2-11{fill:#f46d43;background:#f46d43;stroke:#f46d43}.RdYlGn.q3-11{fill:#fdae61;background:#fdae61;stroke:#fdae61}.RdYlGn.q4-11{fill:#fee08b;background:#fee08b;stroke:#fee08b}.RdYlGn.q5-11{fill:#ffffbf;background:#ffffbf;stroke:#ffffbf}.RdYlGn.q6-11{fill:#d9ef8b;background:#d9ef8b;stroke:#d9ef8b}.RdYlGn.q7-11{fill:#a6d96a;background:#a6d96a;stroke:#a6d96a}.RdYlGn.q8-11{fill:#66bd63;background:#66bd63;stroke:#66bd63}.RdYlGn.q9-11{fill:#1a9850;background:#1a9850;stroke:#1a9850}.RdYlGn.q10-11{fill:#006837;background:#006837;stroke:#006837}.Accent.q0-3{fill:#7fc97f;background:#7fc97f;stroke:#7fc97f}.Accent.q1-3{fill:#beaed4;background:#beaed4;stroke:#beaed4}.Accent.q2-3{fill:#fdc086;background:#fdc086;stroke:#fdc086}.Accent.q0-4{fill:#7fc97f;background:#7fc97f;stroke:#7fc97f}.Accent.q1-4{fill:#beaed4;background:#beaed4;stroke:#beaed4}.Accent.q2-4{fill:#fdc086;background:#fdc086;stroke:#fdc086}.Accent.q3-4{fill:#ff9;background:#ff9;stroke:#ff9}.Accent.q0-5{fill:#7fc97f;background:#7fc97f;stroke:#7fc97f}.Accent.q1-5{fill:#beaed4;background:#beaed4;stroke:#beaed4}.Accent.q2-5{fill:#fdc086;background:#fdc086;stroke:#fdc086}.Accent.q3-5{fill:#ff9;background:#ff9;stroke:#ff9}.Accent.q4-5{fill:#386cb0;background:#386cb0;stroke:#386cb0}.Accent.q0-6{fill:#7fc97f;background:#7fc97f;stroke:#7fc97f}.Accent.q1-6{fill:#beaed4;background:#beaed4;stroke:#beaed4}.Accent.q2-6{fill:#fdc086;background:#fdc086;stroke:#fdc086}.Accent.q3-6{fill:#ff9;background:#ff9;stroke:#ff9}.Accent.q4-6{fill:#386cb0;background:#386cb0;stroke:#386cb0}.Accent.q5-6{fill:#f0027f;background:#f0027f;stroke:#f0027f}.Accent.q0-7{fill:#7fc97f;background:#7fc97f;stroke:#7fc97f}.Accent.q1-7{fill:#beaed4;background:#beaed4;stroke:#beaed4}.Accent.q2-7{fill:#fdc086;background:#fdc086;stroke:#fdc086}.Accent.q3-7{fill:#ff9;background:#ff9;stroke:#ff9}.Accent.q4-7{fill:#386cb0;background:#386cb0;stroke:#386cb0}.Accent.q5-7{fill:#f0027f;background:#f0027f;stroke:#f0027f}.Accent.q6-7{fill:#bf5b17;background:#bf5b17;stroke:#bf5b17}.Accent.q0-8{fill:#7fc97f;background:#7fc97f;stroke:#7fc97f}.Accent.q1-8{fill:#beaed4;background:#beaed4;stroke:#beaed4}.Accent.q2-8{fill:#fdc086;background:#fdc086;stroke:#fdc086}.Accent.q3-8{fill:#ff9;background:#ff9;stroke:#ff9}.Accent.q4-8{fill:#386cb0;background:#386cb0;stroke:#386cb0}.Accent.q5-8{fill:#f0027f;background:#f0027f;stroke:#f0027f}.Accent.q6-8{fill:#bf5b17;background:#bf5b17;stroke:#bf5b17}.Accent.q7-8{fill:#666;background:#666;stroke:#666}.Dark2.q0-3{fill:#1b9e77;background:#1b9e77;stroke:#1b9e77}.Dark2.q1-3{fill:#d95f02;background:#d95f02;stroke:#d95f02}.Dark2.q2-3{fill:#7570b3;background:#7570b3;stroke:#7570b3}.Dark2.q0-4{fill:#1b9e77;background:#1b9e77;stroke:#1b9e77}.Dark2.q1-4{fill:#d95f02;background:#d95f02;stroke:#d95f02}.Dark2.q2-4{fill:#7570b3;background:#7570b3;stroke:#7570b3}.Dark2.q3-4{fill:#e7298a;background:#e7298a;stroke:#e7298a}.Dark2.q0-5{fill:#1b9e77;background:#1b9e77;stroke:#1b9e77}.Dark2.q1-5{fill:#d95f02;background:#d95f02;stroke:#d95f02}.Dark2.q2-5{fill:#7570b3;background:#7570b3;stroke:#7570b3}.Dark2.q3-5{fill:#e7298a;background:#e7298a;stroke:#e7298a}.Dark2.q4-5{fill:#66a61e;background:#66a61e;stroke:#66a61e}.Dark2.q0-6{fill:#1b9e77;background:#1b9e77;stroke:#1b9e77}.Dark2.q1-6{fill:#d95f02;background:#d95f02;stroke:#d95f02}.Dark2.q2-6{fill:#7570b3;background:#7570b3;stroke:#7570b3}.Dark2.q3-6{fill:#e7298a;background:#e7298a;stroke:#e7298a}.Dark2.q4-6{fill:#66a61e;background:#66a61e;stroke:#66a61e}.Dark2.q5-6{fill:#e6ab02;background:#e6ab02;stroke:#e6ab02}.Dark2.q0-7{fill:#1b9e77;background:#1b9e77;stroke:#1b9e77}.Dark2.q1-7{fill:#d95f02;background:#d95f02;stroke:#d95f02}.Dark2.q2-7{fill:#7570b3;background:#7570b3;stroke:#7570b3}.Dark2.q3-7{fill:#e7298a;background:#e7298a;stroke:#e7298a}.Dark2.q4-7{fill:#66a61e;background:#66a61e;stroke:#66a61e}.Dark2.q5-7{fill:#e6ab02;background:#e6ab02;stroke:#e6ab02}.Dark2.q6-7{fill:#a6761d;background:#a6761d;stroke:#a6761d}.Dark2.q0-8{fill:#1b9e77;background:#1b9e77;stroke:#1b9e77}.Dark2.q1-8{fill:#d95f02;background:#d95f02;stroke:#d95f02}.Dark2.q2-8{fill:#7570b3;background:#7570b3;stroke:#7570b3}.Dark2.q3-8{fill:#e7298a;background:#e7298a;stroke:#e7298a}.Dark2.q4-8{fill:#66a61e;background:#66a61e;stroke:#66a61e}.Dark2.q5-8{fill:#e6ab02;background:#e6ab02;stroke:#e6ab02}.Dark2.q6-8{fill:#a6761d;background:#a6761d;stroke:#a6761d}.Dark2.q7-8{fill:#666;background:#666;stroke:#666}.Paired.q0-3{fill:#a6cee3;background:#a6cee3;stroke:#a6cee3}.Paired.q1-3{fill:#1f78b4;background:#1f78b4;stroke:#1f78b4}.Paired.q2-3{fill:#b2df8a;background:#b2df8a;stroke:#b2df8a}.Paired.q0-4{fill:#a6cee3;background:#a6cee3;stroke:#a6cee3}.Paired.q1-4{fill:#1f78b4;background:#1f78b4;stroke:#1f78b4}.Paired.q2-4{fill:#b2df8a;background:#b2df8a;stroke:#b2df8a}.Paired.q3-4{fill:#33a02c;background:#33a02c;stroke:#33a02c}.Paired.q0-5{fill:#a6cee3;background:#a6cee3;stroke:#a6cee3}.Paired.q1-5{fill:#1f78b4;background:#1f78b4;stroke:#1f78b4}.Paired.q2-5{fill:#b2df8a;background:#b2df8a;stroke:#b2df8a}.Paired.q3-5{fill:#33a02c;background:#33a02c;stroke:#33a02c}.Paired.q4-5{fill:#fb9a99;background:#fb9a99;stroke:#fb9a99}.Paired.q0-6{fill:#a6cee3;background:#a6cee3;stroke:#a6cee3}.Paired.q1-6{fill:#1f78b4;background:#1f78b4;stroke:#1f78b4}.Paired.q2-6{fill:#b2df8a;background:#b2df8a;stroke:#b2df8a}.Paired.q3-6{fill:#33a02c;background:#33a02c;stroke:#33a02c}.Paired.q4-6{fill:#fb9a99;background:#fb9a99;stroke:#fb9a99}.Paired.q5-6{fill:#e31a1c;background:#e31a1c;stroke:#e31a1c}.Paired.q0-7{fill:#a6cee3;background:#a6cee3;stroke:#a6cee3}.Paired.q1-7{fill:#1f78b4;background:#1f78b4;stroke:#1f78b4}.Paired.q2-7{fill:#b2df8a;background:#b2df8a;stroke:#b2df8a}.Paired.q3-7{fill:#33a02c;background:#33a02c;stroke:#33a02c}.Paired.q4-7{fill:#fb9a99;background:#fb9a99;stroke:#fb9a99}.Paired.q5-7{fill:#e31a1c;background:#e31a1c;stroke:#e31a1c}.Paired.q6-7{fill:#fdbf6f;background:#fdbf6f;stroke:#fdbf6f}.Paired.q0-8{fill:#a6cee3;background:#a6cee3;stroke:#a6cee3}.Paired.q1-8{fill:#1f78b4;background:#1f78b4;stroke:#1f78b4}.Paired.q2-8{fill:#b2df8a;background:#b2df8a;stroke:#b2df8a}.Paired.q3-8{fill:#33a02c;background:#33a02c;stroke:#33a02c}.Paired.q4-8{fill:#fb9a99;background:#fb9a99;stroke:#fb9a99}.Paired.q5-8{fill:#e31a1c;background:#e31a1c;stroke:#e31a1c}.Paired.q6-8{fill:#fdbf6f;background:#fdbf6f;stroke:#fdbf6f}.Paired.q7-8{fill:#ff7f00;background:#ff7f00;stroke:#ff7f00}.Paired.q0-9{fill:#a6cee3;background:#a6cee3;stroke:#a6cee3}.Paired.q1-9{fill:#1f78b4;background:#1f78b4;stroke:#1f78b4}.Paired.q2-9{fill:#b2df8a;background:#b2df8a;stroke:#b2df8a}.Paired.q3-9{fill:#33a02c;background:#33a02c;stroke:#33a02c}.Paired.q4-9{fill:#fb9a99;background:#fb9a99;stroke:#fb9a99}.Paired.q5-9{fill:#e31a1c;background:#e31a1c;stroke:#e31a1c}.Paired.q6-9{fill:#fdbf6f;background:#fdbf6f;stroke:#fdbf6f}.Paired.q7-9{fill:#ff7f00;background:#ff7f00;stroke:#ff7f00}.Paired.q8-9{fill:#cab2d6;background:#cab2d6;stroke:#cab2d6}.Paired.q0-10{fill:#a6cee3;background:#a6cee3;stroke:#a6cee3}.Paired.q1-10{fill:#1f78b4;background:#1f78b4;stroke:#1f78b4}.Paired.q2-10{fill:#b2df8a;background:#b2df8a;stroke:#b2df8a}.Paired.q3-10{fill:#33a02c;background:#33a02c;stroke:#33a02c}.Paired.q4-10{fill:#fb9a99;background:#fb9a99;stroke:#fb9a99}.Paired.q5-10{fill:#e31a1c;background:#e31a1c;stroke:#e31a1c}.Paired.q6-10{fill:#fdbf6f;background:#fdbf6f;stroke:#fdbf6f}.Paired.q7-10{fill:#ff7f00;background:#ff7f00;stroke:#ff7f00}.Paired.q8-10{fill:#cab2d6;background:#cab2d6;stroke:#cab2d6}.Paired.q9-10{fill:#6a3d9a;background:#6a3d9a;stroke:#6a3d9a}.Paired.q0-11{fill:#a6cee3;background:#a6cee3;stroke:#a6cee3}.Paired.q1-11{fill:#1f78b4;background:#1f78b4;stroke:#1f78b4}.Paired.q2-11{fill:#b2df8a;background:#b2df8a;stroke:#b2df8a}.Paired.q3-11{fill:#33a02c;background:#33a02c;stroke:#33a02c}.Paired.q4-11{fill:#fb9a99;background:#fb9a99;stroke:#fb9a99}.Paired.q5-11{fill:#e31a1c;background:#e31a1c;stroke:#e31a1c}.Paired.q6-11{fill:#fdbf6f;background:#fdbf6f;stroke:#fdbf6f}.Paired.q7-11{fill:#ff7f00;background:#ff7f00;stroke:#ff7f00}.Paired.q8-11{fill:#cab2d6;background:#cab2d6;stroke:#cab2d6}.Paired.q9-11{fill:#6a3d9a;background:#6a3d9a;stroke:#6a3d9a}.Paired.q10-11{fill:#ff9;background:#ff9;stroke:#ff9}.Paired.q0-12{fill:#a6cee3;background:#a6cee3;stroke:#a6cee3}.Paired.q1-12{fill:#1f78b4;background:#1f78b4;stroke:#1f78b4}.Paired.q2-12{fill:#b2df8a;background:#b2df8a;stroke:#b2df8a}.Paired.q3-12{fill:#33a02c;background:#33a02c;stroke:#33a02c}.Paired.q4-12{fill:#fb9a99;background:#fb9a99;stroke:#fb9a99}.Paired.q5-12{fill:#e31a1c;background:#e31a1c;stroke:#e31a1c}.Paired.q6-12{fill:#fdbf6f;background:#fdbf6f;stroke:#fdbf6f}.Paired.q7-12{fill:#ff7f00;background:#ff7f00;stroke:#ff7f00}.Paired.q8-12{fill:#cab2d6;background:#cab2d6;stroke:#cab2d6}.Paired.q9-12{fill:#6a3d9a;background:#6a3d9a;stroke:#6a3d9a}.Paired.q10-12{fill:#ff9;background:#ff9;stroke:#ff9}.Paired.q11-12{fill:#b15928;background:#b15928;stroke:#b15928}.Pastel1.q0-3{fill:#fbb4ae;background:#fbb4ae;stroke:#fbb4ae}.Pastel1.q1-3{fill:#b3cde3;background:#b3cde3;stroke:#b3cde3}.Pastel1.q2-3{fill:#ccebc5;background:#ccebc5;stroke:#ccebc5}.Pastel1.q0-4{fill:#fbb4ae;background:#fbb4ae;stroke:#fbb4ae}.Pastel1.q1-4{fill:#b3cde3;background:#b3cde3;stroke:#b3cde3}.Pastel1.q2-4{fill:#ccebc5;background:#ccebc5;stroke:#ccebc5}.Pastel1.q3-4{fill:#decbe4;background:#decbe4;stroke:#decbe4}.Pastel1.q0-5{fill:#fbb4ae;background:#fbb4ae;stroke:#fbb4ae}.Pastel1.q1-5{fill:#b3cde3;background:#b3cde3;stroke:#b3cde3}.Pastel1.q2-5{fill:#ccebc5;background:#ccebc5;stroke:#ccebc5}.Pastel1.q3-5{fill:#decbe4;background:#decbe4;stroke:#decbe4}.Pastel1.q4-5{fill:#fed9a6;background:#fed9a6;stroke:#fed9a6}.Pastel1.q0-6{fill:#fbb4ae;background:#fbb4ae;stroke:#fbb4ae}.Pastel1.q1-6{fill:#b3cde3;background:#b3cde3;stroke:#b3cde3}.Pastel1.q2-6{fill:#ccebc5;background:#ccebc5;stroke:#ccebc5}.Pastel1.q3-6{fill:#decbe4;background:#decbe4;stroke:#decbe4}.Pastel1.q4-6{fill:#fed9a6;background:#fed9a6;stroke:#fed9a6}.Pastel1.q5-6{fill:#ffc;background:#ffc;stroke:#ffc}.Pastel1.q0-7{fill:#fbb4ae;background:#fbb4ae;stroke:#fbb4ae}.Pastel1.q1-7{fill:#b3cde3;background:#b3cde3;stroke:#b3cde3}.Pastel1.q2-7{fill:#ccebc5;background:#ccebc5;stroke:#ccebc5}.Pastel1.q3-7{fill:#decbe4;background:#decbe4;stroke:#decbe4}.Pastel1.q4-7{fill:#fed9a6;background:#fed9a6;stroke:#fed9a6}.Pastel1.q5-7{fill:#ffc;background:#ffc;stroke:#ffc}.Pastel1.q6-7{fill:#e5d8bd;background:#e5d8bd;stroke:#e5d8bd}.Pastel1.q0-8{fill:#fbb4ae;background:#fbb4ae;stroke:#fbb4ae}.Pastel1.q1-8{fill:#b3cde3;background:#b3cde3;stroke:#b3cde3}.Pastel1.q2-8{fill:#ccebc5;background:#ccebc5;stroke:#ccebc5}.Pastel1.q3-8{fill:#decbe4;background:#decbe4;stroke:#decbe4}.Pastel1.q4-8{fill:#fed9a6;background:#fed9a6;stroke:#fed9a6}.Pastel1.q5-8{fill:#ffc;background:#ffc;stroke:#ffc}.Pastel1.q6-8{fill:#e5d8bd;background:#e5d8bd;stroke:#e5d8bd}.Pastel1.q7-8{fill:#fddaec;background:#fddaec;stroke:#fddaec}.Pastel1.q0-9{fill:#fbb4ae;background:#fbb4ae;stroke:#fbb4ae}.Pastel1.q1-9{fill:#b3cde3;background:#b3cde3;stroke:#b3cde3}.Pastel1.q2-9{fill:#ccebc5;background:#ccebc5;stroke:#ccebc5}.Pastel1.q3-9{fill:#decbe4;background:#decbe4;stroke:#decbe4}.Pastel1.q4-9{fill:#fed9a6;background:#fed9a6;stroke:#fed9a6}.Pastel1.q5-9{fill:#ffc;background:#ffc;stroke:#ffc}.Pastel1.q6-9{fill:#e5d8bd;background:#e5d8bd;stroke:#e5d8bd}.Pastel1.q7-9{fill:#fddaec;background:#fddaec;stroke:#fddaec}.Pastel1.q8-9{fill:#f2f2f2;background:#f2f2f2;stroke:#f2f2f2}.Pastel2.q0-3{fill:#b3e2cd;background:#b3e2cd;stroke:#b3e2cd}.Pastel2.q1-3{fill:#fdcdac;background:#fdcdac;stroke:#fdcdac}.Pastel2.q2-3{fill:#cbd5e8;background:#cbd5e8;stroke:#cbd5e8}.Pastel2.q0-4{fill:#b3e2cd;background:#b3e2cd;stroke:#b3e2cd}.Pastel2.q1-4{fill:#fdcdac;background:#fdcdac;stroke:#fdcdac}.Pastel2.q2-4{fill:#cbd5e8;background:#cbd5e8;stroke:#cbd5e8}.Pastel2.q3-4{fill:#f4cae4;background:#f4cae4;stroke:#f4cae4}.Pastel2.q0-5{fill:#b3e2cd;background:#b3e2cd;stroke:#b3e2cd}.Pastel2.q1-5{fill:#fdcdac;background:#fdcdac;stroke:#fdcdac}.Pastel2.q2-5{fill:#cbd5e8;background:#cbd5e8;stroke:#cbd5e8}.Pastel2.q3-5{fill:#f4cae4;background:#f4cae4;stroke:#f4cae4}.Pastel2.q4-5{fill:#e6f5c9;background:#e6f5c9;stroke:#e6f5c9}.Pastel2.q0-6{fill:#b3e2cd;background:#b3e2cd;stroke:#b3e2cd}.Pastel2.q1-6{fill:#fdcdac;background:#fdcdac;stroke:#fdcdac}.Pastel2.q2-6{fill:#cbd5e8;background:#cbd5e8;stroke:#cbd5e8}.Pastel2.q3-6{fill:#f4cae4;background:#f4cae4;stroke:#f4cae4}.Pastel2.q4-6{fill:#e6f5c9;background:#e6f5c9;stroke:#e6f5c9}.Pastel2.q5-6{fill:#fff2ae;background:#fff2ae;stroke:#fff2ae}.Pastel2.q0-7{fill:#b3e2cd;background:#b3e2cd;stroke:#b3e2cd}.Pastel2.q1-7{fill:#fdcdac;background:#fdcdac;stroke:#fdcdac}.Pastel2.q2-7{fill:#cbd5e8;background:#cbd5e8;stroke:#cbd5e8}.Pastel2.q3-7{fill:#f4cae4;background:#f4cae4;stroke:#f4cae4}.Pastel2.q4-7{fill:#e6f5c9;background:#e6f5c9;stroke:#e6f5c9}.Pastel2.q5-7{fill:#fff2ae;background:#fff2ae;stroke:#fff2ae}.Pastel2.q6-7{fill:#f1e2cc;background:#f1e2cc;stroke:#f1e2cc}.Pastel2.q0-8{fill:#b3e2cd;background:#b3e2cd;stroke:#b3e2cd}.Pastel2.q1-8{fill:#fdcdac;background:#fdcdac;stroke:#fdcdac}.Pastel2.q2-8{fill:#cbd5e8;background:#cbd5e8;stroke:#cbd5e8}.Pastel2.q3-8{fill:#f4cae4;background:#f4cae4;stroke:#f4cae4}.Pastel2.q4-8{fill:#e6f5c9;background:#e6f5c9;stroke:#e6f5c9}.Pastel2.q5-8{fill:#fff2ae;background:#fff2ae;stroke:#fff2ae}.Pastel2.q6-8{fill:#f1e2cc;background:#f1e2cc;stroke:#f1e2cc}.Pastel2.q7-8{fill:#ccc;background:#ccc;stroke:#ccc}.Set1.q0-3{fill:#e41a1c;background:#e41a1c;stroke:#e41a1c}.Set1.q1-3{fill:#377eb8;background:#377eb8;stroke:#377eb8}.Set1.q2-3{fill:#4daf4a;background:#4daf4a;stroke:#4daf4a}.Set1.q0-4{fill:#e41a1c;background:#e41a1c;stroke:#e41a1c}.Set1.q1-4{fill:#377eb8;background:#377eb8;stroke:#377eb8}.Set1.q2-4{fill:#4daf4a;background:#4daf4a;stroke:#4daf4a}.Set1.q3-4{fill:#984ea3;background:#984ea3;stroke:#984ea3}.Set1.q0-5{fill:#e41a1c;background:#e41a1c;stroke:#e41a1c}.Set1.q1-5{fill:#377eb8;background:#377eb8;stroke:#377eb8}.Set1.q2-5{fill:#4daf4a;background:#4daf4a;stroke:#4daf4a}.Set1.q3-5{fill:#984ea3;background:#984ea3;stroke:#984ea3}.Set1.q4-5{fill:#ff7f00;background:#ff7f00;stroke:#ff7f00}.Set1.q0-6{fill:#e41a1c;background:#e41a1c;stroke:#e41a1c}.Set1.q1-6{fill:#377eb8;background:#377eb8;stroke:#377eb8}.Set1.q2-6{fill:#4daf4a;background:#4daf4a;stroke:#4daf4a}.Set1.q3-6{fill:#984ea3;background:#984ea3;stroke:#984ea3}.Set1.q4-6{fill:#ff7f00;background:#ff7f00;stroke:#ff7f00}.Set1.q5-6{fill:#ff3;background:#ff3;stroke:#ff3}.Set1.q0-7{fill:#e41a1c;background:#e41a1c;stroke:#e41a1c}.Set1.q1-7{fill:#377eb8;background:#377eb8;stroke:#377eb8}.Set1.q2-7{fill:#4daf4a;background:#4daf4a;stroke:#4daf4a}.Set1.q3-7{fill:#984ea3;background:#984ea3;stroke:#984ea3}.Set1.q4-7{fill:#ff7f00;background:#ff7f00;stroke:#ff7f00}.Set1.q5-7{fill:#ff3;background:#ff3;stroke:#ff3}.Set1.q6-7{fill:#a65628;background:#a65628;stroke:#a65628}.Set1.q0-8{fill:#e41a1c;background:#e41a1c;stroke:#e41a1c}.Set1.q1-8{fill:#377eb8;background:#377eb8;stroke:#377eb8}.Set1.q2-8{fill:#4daf4a;background:#4daf4a;stroke:#4daf4a}.Set1.q3-8{fill:#984ea3;background:#984ea3;stroke:#984ea3}.Set1.q4-8{fill:#ff7f00;background:#ff7f00;stroke:#ff7f00}.Set1.q5-8{fill:#ff3;background:#ff3;stroke:#ff3}.Set1.q6-8{fill:#a65628;background:#a65628;stroke:#a65628}.Set1.q7-8{fill:#f781bf;background:#f781bf;stroke:#f781bf}.Set1.q0-9{fill:#e41a1c;background:#e41a1c;stroke:#e41a1c}.Set1.q1-9{fill:#377eb8;background:#377eb8;stroke:#377eb8}.Set1.q2-9{fill:#4daf4a;background:#4daf4a;stroke:#4daf4a}.Set1.q3-9{fill:#984ea3;background:#984ea3;stroke:#984ea3}.Set1.q4-9{fill:#ff7f00;background:#ff7f00;stroke:#ff7f00}.Set1.q5-9{fill:#ff3;background:#ff3;stroke:#ff3}.Set1.q6-9{fill:#a65628;background:#a65628;stroke:#a65628}.Set1.q7-9{fill:#f781bf;background:#f781bf;stroke:#f781bf}.Set1.q8-9{fill:#999;background:#999;stroke:#999}.Set2.q0-3{fill:#66c2a5;background:#66c2a5;stroke:#66c2a5}.Set2.q1-3{fill:#fc8d62;background:#fc8d62;stroke:#fc8d62}.Set2.q2-3{fill:#8da0cb;background:#8da0cb;stroke:#8da0cb}.Set2.q0-4{fill:#66c2a5;background:#66c2a5;stroke:#66c2a5}.Set2.q1-4{fill:#fc8d62;background:#fc8d62;stroke:#fc8d62}.Set2.q2-4{fill:#8da0cb;background:#8da0cb;stroke:#8da0cb}.Set2.q3-4{fill:#e78ac3;background:#e78ac3;stroke:#e78ac3}.Set2.q0-5{fill:#66c2a5;background:#66c2a5;stroke:#66c2a5}.Set2.q1-5{fill:#fc8d62;background:#fc8d62;stroke:#fc8d62}.Set2.q2-5{fill:#8da0cb;background:#8da0cb;stroke:#8da0cb}.Set2.q3-5{fill:#e78ac3;background:#e78ac3;stroke:#e78ac3}.Set2.q4-5{fill:#a6d854;background:#a6d854;stroke:#a6d854}.Set2.q0-6{fill:#66c2a5;background:#66c2a5;stroke:#66c2a5}.Set2.q1-6{fill:#fc8d62;background:#fc8d62;stroke:#fc8d62}.Set2.q2-6{fill:#8da0cb;background:#8da0cb;stroke:#8da0cb}.Set2.q3-6{fill:#e78ac3;background:#e78ac3;stroke:#e78ac3}.Set2.q4-6{fill:#a6d854;background:#a6d854;stroke:#a6d854}.Set2.q5-6{fill:#ffd92f;background:#ffd92f;stroke:#ffd92f}.Set2.q0-7{fill:#66c2a5;background:#66c2a5;stroke:#66c2a5}.Set2.q1-7{fill:#fc8d62;background:#fc8d62;stroke:#fc8d62}.Set2.q2-7{fill:#8da0cb;background:#8da0cb;stroke:#8da0cb}.Set2.q3-7{fill:#e78ac3;background:#e78ac3;stroke:#e78ac3}.Set2.q4-7{fill:#a6d854;background:#a6d854;stroke:#a6d854}.Set2.q5-7{fill:#ffd92f;background:#ffd92f;stroke:#ffd92f}.Set2.q6-7{fill:#e5c494;background:#e5c494;stroke:#e5c494}.Set2.q0-8{fill:#66c2a5;background:#66c2a5;stroke:#66c2a5}.Set2.q1-8{fill:#fc8d62;background:#fc8d62;stroke:#fc8d62}.Set2.q2-8{fill:#8da0cb;background:#8da0cb;stroke:#8da0cb}.Set2.q3-8{fill:#e78ac3;background:#e78ac3;stroke:#e78ac3}.Set2.q4-8{fill:#a6d854;background:#a6d854;stroke:#a6d854}.Set2.q5-8{fill:#ffd92f;background:#ffd92f;stroke:#ffd92f}.Set2.q6-8{fill:#e5c494;background:#e5c494;stroke:#e5c494}.Set2.q7-8{fill:#b3b3b3;background:#b3b3b3;stroke:#b3b3b3}.Set3.q0-3{fill:#8dd3c7;background:#8dd3c7;stroke:#8dd3c7}.Set3.q1-3{fill:#ffffb3;background:#ffffb3;stroke:#ffffb3}.Set3.q2-3{fill:#bebada;background:#bebada;stroke:#bebada}.Set3.q0-4{fill:#8dd3c7;background:#8dd3c7;stroke:#8dd3c7}.Set3.q1-4{fill:#ffffb3;background:#ffffb3;stroke:#ffffb3}.Set3.q2-4{fill:#bebada;background:#bebada;stroke:#bebada}.Set3.q3-4{fill:#fb8072;background:#fb8072;stroke:#fb8072}.Set3.q0-5{fill:#8dd3c7;background:#8dd3c7;stroke:#8dd3c7}.Set3.q1-5{fill:#ffffb3;background:#ffffb3;stroke:#ffffb3}.Set3.q2-5{fill:#bebada;background:#bebada;stroke:#bebada}.Set3.q3-5{fill:#fb8072;background:#fb8072;stroke:#fb8072}.Set3.q4-5{fill:#80b1d3;background:#80b1d3;stroke:#80b1d3}.Set3.q0-6{fill:#8dd3c7;background:#8dd3c7;stroke:#8dd3c7}.Set3.q1-6{fill:#ffffb3;background:#ffffb3;stroke:#ffffb3}.Set3.q2-6{fill:#bebada;background:#bebada;stroke:#bebada}.Set3.q3-6{fill:#fb8072;background:#fb8072;stroke:#fb8072}.Set3.q4-6{fill:#80b1d3;background:#80b1d3;stroke:#80b1d3}.Set3.q5-6{fill:#fdb462;background:#fdb462;stroke:#fdb462}.Set3.q0-7{fill:#8dd3c7;background:#8dd3c7;stroke:#8dd3c7}.Set3.q1-7{fill:#ffffb3;background:#ffffb3;stroke:#ffffb3}.Set3.q2-7{fill:#bebada;background:#bebada;stroke:#bebada}.Set3.q3-7{fill:#fb8072;background:#fb8072;stroke:#fb8072}.Set3.q4-7{fill:#80b1d3;background:#80b1d3;stroke:#80b1d3}.Set3.q5-7{fill:#fdb462;background:#fdb462;stroke:#fdb462}.Set3.q6-7{fill:#b3de69;background:#b3de69;stroke:#b3de69}.Set3.q0-8{fill:#8dd3c7;background:#8dd3c7;stroke:#8dd3c7}.Set3.q1-8{fill:#ffffb3;background:#ffffb3;stroke:#ffffb3}.Set3.q2-8{fill:#bebada;background:#bebada;stroke:#bebada}.Set3.q3-8{fill:#fb8072;background:#fb8072;stroke:#fb8072}.Set3.q4-8{fill:#80b1d3;background:#80b1d3;stroke:#80b1d3}.Set3.q5-8{fill:#fdb462;background:#fdb462;stroke:#fdb462}.Set3.q6-8{fill:#b3de69;background:#b3de69;stroke:#b3de69}.Set3.q7-8{fill:#fccde5;background:#fccde5;stroke:#fccde5}.Set3.q0-9{fill:#8dd3c7;background:#8dd3c7;stroke:#8dd3c7}.Set3.q1-9{fill:#ffffb3;background:#ffffb3;stroke:#ffffb3}.Set3.q2-9{fill:#bebada;background:#bebada;stroke:#bebada}.Set3.q3-9{fill:#fb8072;background:#fb8072;stroke:#fb8072}.Set3.q4-9{fill:#80b1d3;background:#80b1d3;stroke:#80b1d3}.Set3.q5-9{fill:#fdb462;background:#fdb462;stroke:#fdb462}.Set3.q6-9{fill:#b3de69;background:#b3de69;stroke:#b3de69}.Set3.q7-9{fill:#fccde5;background:#fccde5;stroke:#fccde5}.Set3.q8-9{fill:#d9d9d9;background:#d9d9d9;stroke:#d9d9d9}.Set3.q0-10{fill:#8dd3c7;background:#8dd3c7;stroke:#8dd3c7}.Set3.q1-10{fill:#ffffb3;background:#ffffb3;stroke:#ffffb3}.Set3.q2-10{fill:#bebada;background:#bebada;stroke:#bebada}.Set3.q3-10{fill:#fb8072;background:#fb8072;stroke:#fb8072}.Set3.q4-10{fill:#80b1d3;background:#80b1d3;stroke:#80b1d3}.Set3.q5-10{fill:#fdb462;background:#fdb462;stroke:#fdb462}.Set3.q6-10{fill:#b3de69;background:#b3de69;stroke:#b3de69}.Set3.q7-10{fill:#fccde5;background:#fccde5;stroke:#fccde5}.Set3.q8-10{fill:#d9d9d9;background:#d9d9d9;stroke:#d9d9d9}.Set3.q9-10{fill:#bc80bd;background:#bc80bd;stroke:#bc80bd}.Set3.q0-11{fill:#8dd3c7;background:#8dd3c7;stroke:#8dd3c7}.Set3.q1-11{fill:#ffffb3;background:#ffffb3;stroke:#ffffb3}.Set3.q2-11{fill:#bebada;background:#bebada;stroke:#bebada}.Set3.q3-11{fill:#fb8072;background:#fb8072;stroke:#fb8072}.Set3.q4-11{fill:#80b1d3;background:#80b1d3;stroke:#80b1d3}.Set3.q5-11{fill:#fdb462;background:#fdb462;stroke:#fdb462}.Set3.q6-11{fill:#b3de69;background:#b3de69;stroke:#b3de69}.Set3.q7-11{fill:#fccde5;background:#fccde5;stroke:#fccde5}.Set3.q8-11{fill:#d9d9d9;background:#d9d9d9;stroke:#d9d9d9}.Set3.q9-11{fill:#bc80bd;background:#bc80bd;stroke:#bc80bd}.Set3.q10-11{fill:#ccebc5;background:#ccebc5;stroke:#ccebc5}.Set3.q0-12{fill:#8dd3c7;background:#8dd3c7;stroke:#8dd3c7}.Set3.q1-12{fill:#ffffb3;background:#ffffb3;stroke:#ffffb3}.Set3.q2-12{fill:#bebada;background:#bebada;stroke:#bebada}.Set3.q3-12{fill:#fb8072;background:#fb8072;stroke:#fb8072}.Set3.q4-12{fill:#80b1d3;background:#80b1d3;stroke:#80b1d3}.Set3.q5-12{fill:#fdb462;background:#fdb462;stroke:#fdb462}.Set3.q6-12{fill:#b3de69;background:#b3de69;stroke:#b3de69}.Set3.q7-12{fill:#fccde5;background:#fccde5;stroke:#fccde5}.Set3.q8-12{fill:#d9d9d9;background:#d9d9d9;stroke:#d9d9d9}.Set3.q9-12{fill:#bc80bd;background:#bc80bd;stroke:#bc80bd}.Set3.q10-12{fill:#ccebc5;background:#ccebc5;stroke:#ccebc5}.Set3.q11-12{fill:#ffed6f;background:#ffed6f;stroke:#ffed6f}.graphical-report__chart{font-family:OpenSans,'Helvetica Neue',Helvetica,Arial,sans-serif;position:absolute;height:100%;width:100%;overflow:auto}.graphical-report__layout{display:-webkit-flexbox;display:-ms-flexbox;display:-webkit-flex;display:flex;-ms-flex-align:stretch;-webkit-align-items:stretch;align-items:stretch;-ms-flex-direction:column;-webkit-flex-direction:column;flex-direction:column;height:100%;width:100%;overflow:auto}.graphical-report__layout__header{-ms-flex:0 1 auto;-webkit-flex:0 1 auto;flex:0 1 auto}.graphical-report__layout__container{display:-webkit-flexbox;display:-ms-flexbox;display:-webkit-flex;display:flex;-ms-flex:1 1 auto;-webkit-flex:1 1 auto;flex:1 1 auto}.graphical-report__layout__footer,.graphical-report__layout__sidebar{-ms-flex:0 1 auto;-webkit-flex:0 1 auto;flex:0 1 auto}.graphical-report__layout__content{-ms-flex:1 0 auto;-webkit-flex:1 0 auto;flex:1 0 auto}.graphical-report__layout__content div{overflow:auto}.graphical-report__layout__sidebar-right{position:relative;-ms-flex:0 0 auto;-webkit-flex:0 0 auto;flex:0 0 auto}.graphical-report__layout__sidebar-right__wrap{max-height:100%;overflow-y:auto;box-sizing:border-box}.graphical-report__checkbox{position:relative;display:block}.graphical-report__checkbox__input{position:absolute;z-index:-1;opacity:0}.graphical-report__checkbox__icon{position:relative;width:14px;height:14px;top:3px;display:inline-block;border:1px solid #c3c3c3;border-radius:2px;background:#fff}.graphical-report__checkbox__icon:before{display:none;content:'';background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAFoTx1HAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYxIDY0LjE0MDk0OSwgMjAxMC8xMi8wNy0xMDo1NzowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNS4xIFdpbmRvd3MiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MEQ4M0RDOTE4NDQ2MTFFNEE5RTdBRERDQzRBQzNEMTQiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MEQ4M0RDOTI4NDQ2MTFFNEE5RTdBRERDQzRBQzNEMTQiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDowRDgzREM4Rjg0NDYxMUU0QTlFN0FERENDNEFDM0QxNCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDowRDgzREM5MDg0NDYxMUU0QTlFN0FERENDNEFDM0QxNCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pn2UjdoAAAEGSURBVHjaYvz//z8DGIAYSUlJdwECiBEukpiY/BDEAQggBrgIVBkLjAEDAAHEiMyBywBNOwDmJCYm/cdQBhBAqHrQAUgSojV5P8QtSY+A+D7cPTDdMAUwTQABhNdYJgZ8AF1nRkaGAgjDvQzi/AOCP3+YWX7+/HmXiYlRAcXY37//AEPs511OTg65uXPnPkQxNi0tTTklJUWGaNcCBBj+EMIDmBjIBCwo1jMyYigAul/x79//B4CulwOqODBv3hxHDKcmJycfAHLtgfrvMTExJf/7938xUF4GaOB9FhZmh1mzZj2CqUdNEkAdSUmZSsAgBNrAIAsUAQYlu+O0adMeo0cS/QMHAGJZps83N5ZDAAAAAElFTkSuQmCC);width:100%;height:100%;position:absolute;top:0;left:0}.graphical-report__checkbox__text{margin-left:5px}.graphical-report__checkbox__input~.graphical-report__checkbox__text{cursor:pointer}.graphical-report__checkbox__input:disabled~.graphical-report__checkbox__text{cursor:default;opacity:.3}.graphical-report__checkbox__input:not(:disabled):focus+.graphical-report__checkbox__icon{box-shadow:0 0 0 1px rgba(255,255,255,.3),0 0 7px 0 #52a8ec;outline:0}.graphical-report__checkbox:hover .graphical-report__checkbox__input:not(:disabled)~.graphical-report__checkbox__icon{border-color:#999}.graphical-report__checkbox__input:checked+.graphical-report__checkbox__icon{background:linear-gradient(top,#fff 0,#dbdbde 100%)}.graphical-report__checkbox__input:checked+.graphical-report__checkbox__icon:before{display:block}.graphical-report__select{font-size:13px;font-family:inherit;display:inline-block;height:24px;line-height:24px;vertical-align:middle;padding:2px;background-color:#fff;border:1px solid #c3c3c3;border-radius:2px;color:#333}.graphical-report__select:focus{box-shadow:0 0 0 1px rgba(255,255,255,.3),0 0 7px 0 #52a8ec;outline:0}.graphical-report__select[disabled]{opacity:.3;cursor:default}.graphical-report__select[multiple]{height:auto}.graphical-report__select option[disabled]{opacity:.6}.graphical-report__svg .color20-1{stroke:#6fa1d9;fill:#6fa1d9}.graphical-report__svg .color20-2{stroke:#df2b59;fill:#df2b59}.graphical-report__svg .color20-3{stroke:#66da26;fill:#66da26}.graphical-report__svg .color20-4{stroke:#4c3862;fill:#4c3862}.graphical-report__svg .color20-5{stroke:#e5b011;fill:#e5b011}.graphical-report__svg .color20-6{stroke:#3a3226;fill:#3a3226}.graphical-report__svg .color20-7{stroke:#cb461a;fill:#cb461a}.graphical-report__svg .color20-8{stroke:#c7ce23;fill:#c7ce23}.graphical-report__svg .color20-9{stroke:#7fcdc2;fill:#7fcdc2}.graphical-report__svg .color20-10{stroke:#cca1c8;fill:#cca1c8}.graphical-report__svg .color20-11{stroke:#c84cce;fill:#c84cce}.graphical-report__svg .color20-12{stroke:#54762e;fill:#54762e}.graphical-report__svg .color20-13{stroke:#746bc9;fill:#746bc9}.graphical-report__svg .color20-14{stroke:#953441;fill:#953441}.graphical-report__svg .color20-15{stroke:#5c7a76;fill:#5c7a76}.graphical-report__svg .color20-16{stroke:#c8bf87;fill:#c8bf87}.graphical-report__svg .color20-17{stroke:#bfc1c3;fill:#bfc1c3}.graphical-report__svg .color20-18{stroke:#8e5c31;fill:#8e5c31}.graphical-report__svg .color20-19{stroke:#71ce7b;fill:#71ce7b}.graphical-report__svg .color20-20{stroke:#be478b;fill:#be478b}.graphical-report__svg .color-default{stroke:#6fa1d9;fill:#6fa1d9}.graphical-report__line-width-1{stroke-width:1px}.graphical-report__line-width-2{stroke-width:1.5px}.graphical-report__line-width-3{stroke-width:2px}.graphical-report__line-width-4{stroke-width:2.5px}.graphical-report__line-width-5{stroke-width:3px}.graphical-report__line-opacity-1{stroke-opacity:1}.graphical-report__line-opacity-2{stroke-opacity:.95}.graphical-report__line-opacity-3{stroke-opacity:.9}.graphical-report__line-opacity-4{stroke-opacity:.85}.graphical-report__line-opacity-5{stroke-opacity:.8}.graphical-report a{color:#3962ff;border-bottom:1px solid rgba(57,98,255,.3);text-decoration:none}.graphical-report a:hover{color:#e17152;border-bottom:1px solid rgba(225,113,82,.3)}.graphical-report__d3-time-overflown .tick:nth-child(even){display:none}.graphical-report__svg{display:block;overflow:hidden}.graphical-report__svg .axis line,.graphical-report__svg .axis path{stroke-width:1;fill:none;stroke:#bdc3cd;shape-rendering:crispEdges}.graphical-report__svg .axis.facet-axis .tick line{opacity:0}.graphical-report__svg .axis.facet-axis .tick text{font-weight:700}.graphical-report__svg .axis.facet-axis path.domain{opacity:0}.graphical-report__svg .axis.facet-axis.compact .label,.graphical-report__svg .axis.facet-axis.compact .label .label-token,.graphical-report__svg .axis.facet-axis.compact .tick text{font-weight:400}.graphical-report__svg .tick text{font-size:11px}.graphical-report__svg .grid .grid-lines path{shape-rendering:crispEdges}.graphical-report__svg .grid path{fill:none}.graphical-report__svg .grid line{fill:none;stroke:rgba(189,195,205,.5);stroke-width:1px;shape-rendering:crispEdges}.graphical-report__svg .grid .line path{shape-rendering:auto}.graphical-report__svg .label{font-size:11px;font-weight:700}.graphical-report__svg .label .label-token{font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase}.graphical-report__svg .label .label-token-1,.graphical-report__svg .label .label-token-2{font-weight:400}.graphical-report__svg .label .label-token-2{fill:gray}.graphical-report__svg .label .label-token-delimiter{font-weight:400;fill:gray}.graphical-report__svg .label.inline .label-token{font-weight:400;fill:gray;text-transform:none;letter-spacing:0}.graphical-report__dot{opacity:.6;transition:stroke-width .1s ease,opacity .1s ease;stroke-width:0;cursor:pointer}.graphical-report__line{fill:none;transition:stroke-opacity .2s ease,stroke-width .2s ease}.graphical-report__dot-line{opacity:1;transition:stroke-opacity .2s ease}.graphical-report__bar{shape-rendering:crispEdges;transition:opacity .2s ease}.graphical-report__highlighted_chart .graphical-report__dot.graphical-report__highlighted{stroke-width:2;opacity:1}.graphical-report__highlighted_chart .graphical-report__line.graphical-report__highlighted{stroke-opacity:1;stroke-width:3}.graphical-report__highlighted_chart .graphical-report__bar.graphical-report__highlighted{stroke-opacity:1;opacity:1}.graphical-report__highlighted_chart .graphical-report__line{stroke-opacity:.2}.graphical-report__highlighted_chart .graphical-report__bar,.graphical-report__highlighted_chart .graphical-report__dot{opacity:.2}.graphical-report__print-block{display:none}.graphical-report__export{float:right;margin:20px 20px 0 0;display:block;background-repeat:no-repeat;background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTgiIGhlaWdodD0iMTgiIHZpZXdCb3g9IjAgMCAxOCAxOCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48dGl0bGU+ZXhwb3J0PC90aXRsZT48ZGVzYz5DcmVhdGVkIHdpdGggU2tldGNoLjwvZGVzYz48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxnIGZpbGw9IiMwMDAiPjxwYXRoIGQ9Ik0xNyAxLjY3bC04LjMyOCA4LjM2Nkw4IDkuNSAxNi4zNTMgMUgxMlYwaDZ2NmgtMVYxLjY3eiIgb3BhY2l0eT0iLjgiLz48cGF0aCBkPSJNMCA1LjAxQzAgMy4zNDYgMS4zMzcgMiAzLjAxIDJIMTZ2MTIuOTljMCAxLjY2My0xLjMzNyAzLjAxLTMuMDEgMy4wMUgzLjAxQzEuMzQ2IDE4IDAgMTYuNjYzIDAgMTQuOTlWNS4wMXpNMTUgMTVDMTUgMTYuMTA1IDE0LjEwMyAxNyAxMi45OTQgMTdIMy4wMDZDMS44OTggMTcgMSAxNi4xMDMgMSAxNC45OTRWNS4wMDZDMSAzLjg5OCAxLjg4NyAzIDIuOTk4IDNIOVYyaDd2N2gtMXY2LjAwMnoiIG9wYWNpdHk9Ii40Ii8+PC9nPjwvZz48L3N2Zz4=);width:20px;height:20px;color:transparent;font-size:1px;opacity:.6;cursor:pointer}.graphical-report__export:hover{opacity:1}.graphical-report__export__list{font-size:11px}.graphical-report__export__item{overflow:hidden;box-sizing:border-box}.graphical-report__export__item>a{display:block;padding:7px 15px;color:inherit;text-decoration:none}.graphical-report__export__item>a:focus,.graphical-report__export__item>a:hover{background:#eaf2fc;outline:0;box-shadow:none}.graphical-report__legend{padding:20px 0 20px 10px;margin-right:20px;width:160px;box-sizing:border-box}.graphical-report__legend__title{margin:0 0 10px 10px;text-transform:uppercase;font-weight:600;font-size:13px}.graphical-report__legend__item{padding:11px 30px 10px;position:relative;font-size:13px;cursor:pointer}.graphical-report__legend__item:hover{background-color:rgba(189,195,205,.2)}.graphical-report__legend__item .color-default{background:#6fa1d9;border-color:#6fa1d9}.graphical-report__legend__item.disabled,.graphical-report__legend__item:disabled{color:#ccc}.graphical-report__legend__item.disabled .graphical-report__legend__guide{background:0 0}.graphical-report__legend__guide{width:15px;height:15px;box-sizing:border-box;border-width:1px;border-style:solid;border-radius:50%;position:absolute;top:12px;left:10px}.graphical-report__legend__item .color20-1{background:#6fa1d9;border:1px solid #6fa1d9}.graphical-report__legend__item.disabled .color20-1{background-color:transparent}.graphical-report__legend__item .color20-2{background:#df2b59;border:1px solid #df2b59}.graphical-report__legend__item.disabled .color20-2{background-color:transparent}.graphical-report__legend__item .color20-3{background:#66da26;border:1px solid #66da26}.graphical-report__legend__item.disabled .color20-3{background-color:transparent}.graphical-report__legend__item .color20-4{background:#4c3862;border:1px solid #4c3862}.graphical-report__legend__item.disabled .color20-4{background-color:transparent}.graphical-report__legend__item .color20-5{background:#e5b011;border:1px solid #e5b011}.graphical-report__legend__item.disabled .color20-5{background-color:transparent}.graphical-report__legend__item .color20-6{background:#3a3226;border:1px solid #3a3226}.graphical-report__legend__item.disabled .color20-6{background-color:transparent}.graphical-report__legend__item .color20-7{background:#cb461a;border:1px solid #cb461a}.graphical-report__legend__item.disabled .color20-7{background-color:transparent}.graphical-report__legend__item .color20-8{background:#c7ce23;border:1px solid #c7ce23}.graphical-report__legend__item.disabled .color20-8{background-color:transparent}.graphical-report__legend__item .color20-9{background:#7fcdc2;border:1px solid #7fcdc2}.graphical-report__legend__item.disabled .color20-9{background-color:transparent}.graphical-report__legend__item .color20-10{background:#cca1c8;border:1px solid #cca1c8}.graphical-report__legend__item.disabled .color20-10{background-color:transparent}.graphical-report__legend__item .color20-11{background:#c84cce;border:1px solid #c84cce}.graphical-report__legend__item.disabled .color20-11{background-color:transparent}.graphical-report__legend__item .color20-12{background:#54762e;border:1px solid #54762e}.graphical-report__legend__item.disabled .color20-12{background-color:transparent}.graphical-report__legend__item .color20-13{background:#746bc9;border:1px solid #746bc9}.graphical-report__legend__item.disabled .color20-13{background-color:transparent}.graphical-report__legend__item .color20-14{background:#953441;border:1px solid #953441}.graphical-report__legend__item.disabled .color20-14{background-color:transparent}.graphical-report__legend__item .color20-15{background:#5c7a76;border:1px solid #5c7a76}.graphical-report__legend__item.disabled .color20-15{background-color:transparent}.graphical-report__legend__item .color20-16{background:#c8bf87;border:1px solid #c8bf87}.graphical-report__legend__item.disabled .color20-16{background-color:transparent}.graphical-report__legend__item .color20-17{background:#bfc1c3;border:1px solid #bfc1c3}.graphical-report__legend__item.disabled .color20-17{background-color:transparent}.graphical-report__legend__item .color20-18{background:#8e5c31;border:1px solid #8e5c31}.graphical-report__legend__item.disabled .color20-18{background-color:transparent}.graphical-report__legend__item .color20-19{background:#71ce7b;border:1px solid #71ce7b}.graphical-report__legend__item.disabled .color20-19{background-color:transparent}.graphical-report__legend__item .color20-20{background:#be478b;border:1px solid #be478b}.graphical-report__legend__item.disabled .color20-20{background-color:transparent}.graphical-report__tooltip{position:absolute;top:0;left:0;max-width:500px;z-index:900;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:stretch;-ms-flex-align:stretch;align-items:stretch;font-family:OpenSans,'Helvetica Neue',Helvetica,Arial,sans-serif;font-size:11px;background:rgba(255,255,255,.9);box-shadow:0 1px 4px 0 rgba(0,0,0,.2),0 0 0 1px rgba(0,0,0,.05);overflow:hidden}.graphical-report__tooltip.fade{opacity:0;transition:opacity 200ms ease-out}.graphical-report__tooltip.fade.in{opacity:1;transition-duration:100ms}.graphical-report__tooltip__content{overflow:hidden;padding:15px 15px 10px;box-sizing:border-box;max-width:calc(100% - 26px)}.graphical-report__tooltip__exclude{color:rgba(101,113,127,.8);cursor:pointer;min-height:86px;width:26px;position:relative;box-shadow:inset 2px 0 2px -2px rgba(0,0,0,.2)}.graphical-report__tooltip__exclude__wrap{line-height:26px;padding:0 15px;-webkit-transform:rotate(-90deg);transform:rotate(-90deg);-webkit-transform-origin:0 0;transform-origin:0 0;height:100%;white-space:nowrap;position:absolute;top:100%;left:0;box-sizing:border-box}.graphical-report__tooltip__exclude:hover{color:#65717f;background:linear-gradient(to right,rgba(235,238,241,.9) 0,rgba(255,255,255,0) 100%)}.graphical-report__tooltip__exclude .tau-icon-close-gray{display:inline-block;width:12px;height:12px;position:relative;top:3px;margin-right:5px;background-image:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSIzMHB4IiBoZWlnaHQ9IjMwcHgiIHZpZXdCb3g9IjAgMCAzMCAzMCIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgMzAgMzAiIHhtbDpzcGFjZT0icHJlc2VydmUiPjxwYXRoIGlkPSJTaGFwZV8zNV8iIGZpbGw9IiM4NDk2QTciIGQ9Ik0xMCwwLjcxNUw5LjI4NSwwTDUsNC4yODVMMC43MTUsMEwwLDAuNzE1TDQuMjg1LDVMMCw5LjI4NUwwLjcxNSwxMEw1LDUuNzE1TDkuMjg1LDEwTDEwLDkuMjg1TDUuNzE1LDVMMTAsMC43MTV6Ii8+PC9zdmc+)}.graphical-report__tooltip__list{display:table}.graphical-report__tooltip__list__item{display:table-row}.graphical-report__tooltip__list__elem{display:table-cell;padding-bottom:4px;line-height:1.3}.graphical-report__tooltip__list__elem:not(:first-child){padding-left:15px}.graphical-report__tooltip__gray-text,.graphical-report__tooltip__list__elem:first-child{color:#8e8e8e}.graphical-report__svg .graphical-report__trendline.color20-1{stroke:#357ac7}.graphical-report__svg .graphical-report__trendline.color20-2{stroke:#a5193d}.graphical-report__svg .graphical-report__trendline.color20-3{stroke:#47991a}.graphical-report__svg .graphical-report__trendline.color20-4{stroke:#261c31}.graphical-report__svg .graphical-report__trendline.color20-5{stroke:#9e790c}.graphical-report__svg .graphical-report__trendline.color20-6{stroke:#0c0a08}.graphical-report__svg .graphical-report__trendline.color20-7{stroke:#872f11}.graphical-report__svg .graphical-report__trendline.color20-8{stroke:#888d18}.graphical-report__svg .graphical-report__trendline.color20-9{stroke:#48b8a8}.graphical-report__svg .graphical-report__trendline.color20-10{stroke:#b16fab}.graphical-report__svg .graphical-report__trendline.color20-11{stroke:#9c2ca1}.graphical-report__svg .graphical-report__trendline.color20-12{stroke:#2d3f19}.graphical-report__svg .graphical-report__trendline.color20-13{stroke:#483eaa}.graphical-report__svg .graphical-report__trendline.color20-14{stroke:#5c2028}.graphical-report__svg .graphical-report__trendline.color20-15{stroke:#3b4e4c}.graphical-report__svg .graphical-report__trendline.color20-16{stroke:#b0a353}.graphical-report__svg .graphical-report__trendline.color20-17{stroke:#989b9e}.graphical-report__svg .graphical-report__trendline.color20-18{stroke:#55371d}.graphical-report__svg .graphical-report__trendline.color20-19{stroke:#3eb44b}.graphical-report__svg .graphical-report__trendline.color20-20{stroke:#883063}.graphical-report__svg .graphical-report__trendline.color-default{stroke:#357ac7}.graphical-report__trendlinepanel{padding:20px 0 20px 20px;margin-right:20px;width:160px;box-sizing:border-box}.graphical-report__trendlinepanel__title{margin:0 0 10px;text-transform:uppercase;font-weight:600;font-size:13px}.graphical-report__trendlinepanel__control{width:100%}.graphical-report__trendlinepanel__error-message{font-size:12px;margin-left:5px}.graphical-report__trendlinepanel.applicable-false .graphical-report__checkbox__icon,.graphical-report__trendlinepanel.applicable-false .graphical-report__checkbox__input,.graphical-report__trendlinepanel.applicable-false .graphical-report__trendlinepanel__control{display:none}.graphical-report__trendline{stroke-dasharray:4,4} \ No newline at end of file diff --git a/build/production/tauCharts.min.js b/build/production/tauCharts.min.js index dbea556ca..27260458d 100644 --- a/build/production/tauCharts.min.js +++ b/build/production/tauCharts.min.js @@ -1,10 +1,7 @@ -/*! taucharts - v0.3.7 - 2015-01-22 +/*! taucharts - v0.3.8 - 2015-01-22 * https://github.com/TargetProcess/tauCharts * Copyright (c) 2015 Taucraft Limited; Licensed Apache License 2.0 */ -!function(a,b){if("function"==typeof define&&define.amd)define(["underscore","d3"],function(a,c){return b(a,c)});else if("object"==typeof module&&module.exports){var c=require("underscore"),d=require("d3");module.exports=b(c,d)}else a.tauCharts=b(a._,a.d3)}(this,function(a,b){var c,d,e;return function(a){function b(a,b){return u.call(a,b)}function f(a,b){var c,d,e,f,g,h,i,j,k,l,m,n=b&&b.split("/"),o=s.map,p=o&&o["*"]||{};if(a&&"."===a.charAt(0))if(b){for(n=n.slice(0,n.length-1),a=a.split("/"),g=a.length-1,s.nodeIdCompat&&w.test(a[g])&&(a[g]=a[g].replace(w,"")),a=n.concat(a),k=0;k0&&(a.splice(k-1,2),k-=2)}a=a.join("/")}else 0===a.indexOf("./")&&(a=a.substring(2));if((n||p)&&o){for(c=a.split("/"),k=c.length;k>0;k-=1){if(d=c.slice(0,k).join("/"),n)for(l=n.length;l>0;l-=1)if(e=o[n.slice(0,l).join("/")],e&&(e=e[d])){f=e,h=k;break}if(f)break;!i&&p&&p[d]&&(i=p[d],j=k)}!f&&i&&(f=i,h=j),f&&(c.splice(0,h,f),a=c.join("/"))}return a}function g(b,c){return function(){var d=v.call(arguments,0);return"string"!=typeof d[0]&&1===d.length&&d.push(null),n.apply(a,d.concat([b,c]))}}function h(a){return function(b){return f(b,a)}}function i(a){return function(b){q[a]=b}}function j(c){if(b(r,c)){var d=r[c];delete r[c],t[c]=!0,m.apply(a,d)}if(!b(q,c)&&!b(t,c))throw new Error("No "+c);return q[c]}function k(a){var b,c=a?a.indexOf("!"):-1;return c>-1&&(b=a.substring(0,c),a=a.substring(c+1,a.length)),[b,a]}function l(a){return function(){return s&&s.config&&s.config[a]||{}}}var m,n,o,p,q={},r={},s={},t={},u=Object.prototype.hasOwnProperty,v=[].slice,w=/\.js$/;o=function(a,b){var c,d=k(a),e=d[0];return a=d[1],e&&(e=f(e,b),c=j(e)),e?a=c&&c.normalize?c.normalize(a,h(b)):f(a,b):(a=f(a,b),d=k(a),e=d[0],a=d[1],e&&(c=j(e))),{f:e?e+"!"+a:a,n:a,pr:e,p:c}},p={require:function(a){return g(a)},exports:function(a){var b=q[a];return"undefined"!=typeof b?b:q[a]={}},module:function(a){return{id:a,uri:"",exports:q[a],config:l(a)}}},m=function(c,d,e,f){var h,k,l,m,n,s,u=[],v=typeof e;if(f=f||c,"undefined"===v||"function"===v){for(d=!d.length&&e.length?["require","exports","module"]:d,n=0;n','','','<%= xTick %>',"","",""].join(""),e=a.template(d),f=document.createElement("div");f.style.position="absolute",f.style.visibility="hidden",f.style.width="100px",f.style.height="100px",f.style.border="1px solid green",document.body.appendChild(f),f.innerHTML=e({xTick:c});var g=b.select(f).selectAll(".x.axis .tick text")[0][0],h={width:0,height:0},i=g.getBoundingClientRect();h.width=i.right-i.left,h.height=i.bottom-i.top;var j=0!==c.length?h.width/c.length:0;return h.width=h.width+1.5*j,document.body.removeChild(f),h}};c.utilsDom=e}),e("dsl-reader",["exports"],function(b){var c=function(a,b,c){b&&Object.defineProperties(a,b),c&&Object.defineProperties(a.prototype,c)},d=function(){function b(a,b){this.domain=a,this.UnitsRegistry=b}return c(b,null,{buildGraph:{value:function(a){var b=this,c=function(a){return b.UnitsRegistry.get(a.type).walk(b.domain.mix(a),c)};return c(a.unit)},writable:!0,enumerable:!0,configurable:!0},calcLayout:{value:function(a,b){a.options={top:0,left:0,width:b.width,height:b.height};var c=function(a){if(!a.$matrix)return a;var b,d=a.options,e=a.guide.padding,f=d.width-(e.l+e.r),g=d.height-(e.t+e.b),h=a.$matrix.sizeR(),i=a.$matrix.sizeC(),j=f/i,k=g/h;return b=a.guide.split?{calcHeight:function(a,b,c,d){return a/d},calcTop:function(a,b,c,d){return(b+1)*(a/d)*c}}:{calcHeight:function(a){return a},calcTop:function(a,b){return b*k}},a.childUnits=a.childUnits||[],a.$matrix.iterate(function(d,e,f){var g=f.length;f.forEach(function(f,h){f.options={width:j,left:e*j,height:b.calcHeight(k,d,h,g),top:b.calcTop(k,d,h,g)},a.childUnits.push(f),c(f)})}),a};return c(a)},writable:!0,enumerable:!0,configurable:!0},renderGraph:{value:function(b,c,d){var e=this,f=d||function(a){return a};b.options.container=c;var g=function(b){var c=e.domain.mix(b),d=e.UnitsRegistry.get(b.type).draw(c),h=b.childUnits||[];h.forEach(function(c){c.options=a.extend({container:d},c.options),c.parentUnit=b,g(c)}),f(c)};return b.parentUnit=null,g(b),b.options.container},writable:!0,enumerable:!0,configurable:!0}}),b}();b.DSLReader=d}),e("const",["exports"],function(a){a.CSS_PREFIX="graphical-report__"}),e("api/balloon",["exports","../const"],function(a,b){function c(a,b){for(var c in b)a[c]=b[c];return a}function d(a){return a&&null!=a.setInterval}function e(a){var b=l.pageYOffset||o.scrollTop,e=l.pageXOffset||o.scrollLeft,f={left:0,right:0,top:0,bottom:0,width:0,height:0};if(d(a))f.width=l.innerWidth||o.clientWidth,f.height=l.innerHeight||o.clientHeight;else{if(!o.contains(a)||null==a.getBoundingClientRect)return f;c(f,a.getBoundingClientRect()),f.width=f.right-f.left,f.height=f.bottom-f.top}return f.top=f.top+b-o.clientTop,f.left=f.left+e-o.clientLeft,f.right=f.left+f.width,f.bottom=f.top+f.height,f}function f(a){return 0|Math.round(String(a).replace(/[^\-0-9.]/g,""))}function g(a){var b=String(q(a,g.propName)),c=b.match(/([0-9.]+)([ms]{1,2})/);return c&&(b=Number(c[1]),"s"===c[2]&&(b*=1e3)),0|b}function h(a,b){return this instanceof h?(this.hidden=1,this.options=c(r(h.defaults),b),this._createElement(),void this.content(a)):new h(a,b)}var i=b.CSS_PREFIX,j=function(a){return{add:function(b){a.classList.add(b)},remove:function(b){a.classList.remove(b)}}},k=function(a,b){return a.indexOf(b)},l=window,m=l.document,n=m.body,o=m.documentElement,p=["top","bottom"],q=l.getComputedStyle;g.propName=function(){for(var a=m.createElement("div"),b=["transitionDuration","webkitTransitionDuration"],c="1s",d=0;d=b.bottom&&(c[0]="top"),c[1]){case"left":a.right-this.width<=b.left&&(c[1]="right");break;case"right":a.left+this.width>=b.right&&(c[1]="left");break;default:a.left+a.width/2+this.width/2>=b.right?c[1]="left":a.right-a.width/2-this.width/2<=b.left&&(c[1]="right")}else switch(a.left-this.width-d<=b.left?c[0]="right":a.right+this.width+d>=b.right&&(c[0]="left"),c[1]){case"top":a.bottom-this.height<=b.top&&(c[1]="bottom");break;case"bottom":a.top+this.height>=b.bottom&&(c[1]="top");break;default:a.top+a.height/2+this.height/2>=b.bottom?c[1]="top":a.bottom-a.height/2-this.height/2<=b.top&&(c[1]="bottom")}return c.join("-")},h.prototype.position=function(a,b){this.attachedTo&&(a=this.attachedTo),null==a&&this._p?(a=this._p[0],b=this._p[1]):this._p=arguments;var c="number"==typeof a?{left:0|a,right:0|a,top:0|b,bottom:0|b,width:0,height:0}:e(a),d=this.spacing,f=this._pickPlace(c);f!==this.curPlace&&(this.curPlace&&this.classes.remove(this.curPlace),this.classes.add(f),this.curPlace=f);var g,h;switch(this.curPlace){case"top":g=c.top-this.height-d,h=c.left+c.width/2-this.width/2;break;case"top-left":g=c.top-this.height-d,h=c.right-this.width;break;case"top-right":g=c.top-this.height-d,h=c.left;break;case"bottom":g=c.bottom+d,h=c.left+c.width/2-this.width/2;break;case"bottom-left":g=c.bottom+d,h=c.right-this.width;break;case"bottom-right":g=c.bottom+d,h=c.left;break;case"left":g=c.top+c.height/2-this.height/2,h=c.left-this.width-d;break;case"left-top":g=c.bottom-this.height,h=c.left-this.width-d;break;case"left-bottom":g=c.top,h=c.left-this.width-d;break;case"right":g=c.top+c.height/2-this.height/2,h=c.right+d;break;case"right-top":g=c.bottom-this.height,h=c.right+d;break;case"right-bottom":g=c.top,h=c.right+d}return this.element.style.top=Math.round(g)+"px",this.element.style.left=Math.round(h)+"px",this},h.prototype.show=function(a,b){return a=this.attachedTo?this.attachedTo:a,clearTimeout(this.aIndex),null!=a&&this.position(a,b),this.hidden&&(this.hidden=0,n.appendChild(this.element)),this.attachedTo&&this._aware(),this.options.inClass&&(this.options.effectClass&&void this.element.clientHeight,this.classes.add(this.options.inClass)),this},h.prototype.getElement=function(){return this.element},h.prototype.hide=function(){if(!this.hidden){var a=this,b=0;return this.options.inClass&&(this.classes.remove(this.options.inClass),this.options.effectClass&&(b=g(this.element))),this.attachedTo&&this._unaware(),clearTimeout(this.aIndex),this.aIndex=setTimeout(function(){a.aIndex=0,n.removeChild(a.element),a.hidden=1},b),this}},h.prototype.toggle=function(a,b){return this[this.hidden?"show":"hide"](a,b)},h.prototype.destroy=function(){clearTimeout(this.aIndex),this._unaware(),this.hidden||n.removeChild(this.element),this.element=this.options=null},h.prototype._aware=function(){var a=k(h.winAware,this);~a||h.winAware.push(this)},h.prototype._unaware=function(){var a=k(h.winAware,this);~a&&h.winAware.splice(a,1)},h.reposition=function(){var a,b=function(){!a&&h.winAware.length&&(a=d(c))},c=function(){a=0;for(var b,c=0,d=h.winAware.length;d>c;c++)b=h.winAware[c],b.position()},d=window.requestAnimationFrame||window.webkitRequestAnimationFrame||function(a){return setTimeout(a,17)};return b}(),h.winAware=[],window.addEventListener("resize",h.reposition),window.addEventListener("scroll",h.reposition),h.classTypes=["type","effect"],h.defaults={baseClass:i+"tooltip",typeClass:null,effectClass:null,inClass:"in",place:"top",spacing:null,auto:0},a.Tooltip=h}),e("event",["exports"],function(a){function b(a){var b=e[a];return b||(b=function(){for(var b,c,d=this,e=0;d=d.handler;){if(c=d.callbacks[a],"function"==typeof c){if(!b)for(b=[this],e=0;e=0?-1:1,f=d||1;d-=e*f/b}for(var g=[c,d],h=g[1]-g[0],i=Math.pow(10,Math.floor(Math.log(h/b)/Math.LN10)),j=b/h*i,k=[[.15,10],[.35,5],[.75,2],[1,1],[2,1]],l=-1;j>k[++l][0];);i*=k[l][1],g[0]=Math.floor(g[0]/i)*i,g[1]=Math.ceil(g[1]/i)*i;var m=c-g[0],n=g[1]-d,o=i/2;if(c>=0)g[0]=0;else{var p=o>=m?i:0;g[0]=g[0]-p}if(0>=d)g[1]=0;else{var q=o>=n?i:0;g[1]=g[1]+q}return[parseFloat(g[0].toFixed(15)),parseFloat(g[1].toFixed(15))]},traverseJSON:b};a.utils=c}),e("formatter-registry",["exports","d3"],function(b,c){var d=c,e={"x-num-auto":function(a){var b=parseFloat(a.toFixed(2));return Math.abs(b)<1?b.toString():d.format("s")(b)},percent:function(a){var b=parseFloat((100*a).toFixed(2));return b.toString()+"%"},day:d.time.format("%d-%b-%Y"),"day-short":d.time.format("%d-%b"),week:d.time.format("%d-%b-%Y"),"week-short":d.time.format("%d-%b"),month:function(a){var b=new Date(a),c=b.getMonth(),e=0===c?"%B, %Y":"%B";return d.time.format(e)(a)},"month-short":function(a){var b=new Date(a),c=b.getMonth(),e=0===c?"%b '%y":"%b";return d.time.format(e)(a)},"month-year":d.time.format("%B, %Y"),quarter:function(a){var b=new Date(a),c=b.getMonth(),d=(c-c%3)/3;return"Q"+(d+1)+" "+b.getFullYear()},year:d.time.format("%Y"),"x-time-auto":null},f={get:function(b,c){var f=c||"",g=function(a){return(null===a||"undefined"==typeof a?f:a).toString()},h=e.hasOwnProperty(b),i=h?e[b]:g;return h&&(i=e[b]),!h&&b&&(i=function(c){var e=a.isDate(c)?d.time.format(b):d.format(b);return e(c)}),h||b||(i=g),i},add:function(a,b){e[a]=b}};b.FormatterRegistry=f}),e("utils/utils-draw",["exports","../utils/utils","../formatter-registry","underscore","d3"],function(a,b,c,d,e){var f=(b.utils,c.FormatterRegistry),g=d,h=e,i=function(a,b){return"translate("+a+","+b+")"},j=function(a){return"rotate("+a+")"},k=function(a){return g.contains(["bottom","top"],a.toLowerCase())?"h":"v"},l=function(a,b,c){c=c||function(a){return a.node().getComputedTextLength()},a.each(function(){var a=h.select(this),d=a.text().split(/\s+/),e=!1,f=d.reduce(function(d,f,g){if(e)return d;var h=g>0?[d,f].join(" "):f,i=c(a.text(h));if(b>i)d=h;else{var j=Math.floor(b/i*h.length);d=h.substr(0,j-4)+"...",e=!0}return d},"");a.text(f)})},m=function(a,b,c,d,e,f){f=f||function(a){return a.node().getComputedTextLength()};var g=function(a,b,c,d,e,f,g){var h=g*c+f;return a.append("tspan").attr("x",d).attr("y",e).attr("dy",h+"em").text(b)};a.each(function(){var a=h.select(this),i=a.text().split(/\s+/),j=1.1,k=a.attr("x"),l=a.attr("y"),m=parseFloat(a.attr("dy"));a.text(null);var n=g(a,null,j,k,l,m,0),o=!1,p=i.length-1,q=i.reduce(function(a,d,e){if(o)return a;var g=a.length===c||e===p,h=a[a.length-1],i=""!==h?h+" "+d:d,j=f(n.text(i)),k=j>b;if(k&&g){var l=Math.floor(b/j*i.length);a[a.length-1]=i.substr(0,l-4)+"...",o=!0}return k&&!g&&a.push(d),k||(a[a.length-1]=i),a},[""]).filter(function(a){return a.length>0});l=e?-1*(q.length-1)*Math.floor(.5*d):l,q.forEach(function(b,c){return g(a,b,j,k,l,m,c)}),n.remove()})},n=function(a,b,c){var d=a.selectAll(".tick line"),e=c/d[0].length,f=e/2,g="h"===k(b.guide.scaleOrient);if("ordinal"===b.scaleType||"period"===b.scaleType){var h=g?"x":"y",i=g?f:-f;d.attr(h+"1",i).attr(h+"2",i)}},o=function(a,b){var c="h"===k(b.guide.scaleOrient);if(c&&"time"===b.scaleType){var d=a.selectAll(".tick")[0];if(d.length<2)return;var e=parseFloat(d[0].attributes.transform.value.replace("translate(","")),f=parseFloat(d[1].attributes.transform.value.replace("translate(","")),g=f-e,h=0,i=-1,j=a.selectAll(".tick text")[0];if(j.forEach(function(a,b){var c=a.innerHTML||"",d=c.length;d>h&&(h=d,i=b)}),i>=0){var l=j[i].getBoundingClientRect();g-l.width<8&&a.classed({"graphical-report__d3-time-overflown":!0})}}},p=function(a,b,c){var d=a.selectAll(".tick line"),e="h"===k(b.guide.scaleOrient);if(!e){var f=!1,g=-1;if("time"===b.scaleType)f=!0,g=0;else if("ordinal"===b.scaleType||"period"===b.scaleType){f=!0;var h=c/d[0].length,j=h/2;g=-j}if(f){var l=a.select(".tick").node().cloneNode(!0);a.append(function(){return l}).attr("transform",i(0,c-g))}}},q=function(a,b){var c=k(b.guide.scaleOrient),d="h"===c?1:-1,e=a.append("text").attr("transform",j(b.guide.label.rotate)).attr("class",b.guide.label.cssClass).attr("x",d*b.guide.size*.5).attr("y",d*b.guide.label.padding).style("text-anchor",b.guide.label.textAnchor),f=" > ",g=b.guide.label.text.split(f),h=g.length;if(g.forEach(function(a,b){e.append("tspan").attr("class","label-token label-token-"+b).text(a),h-1>b&&e.append("tspan").attr("class","label-token-delimiter label-token-delimiter-"+b).text(f)}),"right"===b.guide.label.dock){var i=a.selectAll("path.domain").node().getBBox();e.attr("x","h"===c?i.width:0)}else if("left"===b.guide.label.dock){var i=a.selectAll("path.domain").node().getBBox();e.attr("x","h"===c?0:-i.height)}},r=function(a,b){var c="h"===k(b.guide.scaleOrient),d=b.guide.rotate,e=a.selectAll(".tick text");if(e.attr("transform",j(d)).style("text-anchor",b.guide.textAnchor),90===d){var f=parseFloat(e.attr("dy"))/2;e.attr("x",9).attr("y",0).attr("dy",""+f+"em")}b.guide.tickFormatWordWrap?e.call(m,b.guide.tickFormatWordWrapLimit,b.guide.tickFormatWordWrapLines,b.guide.$maxTickTextH,!c):e.call(l,b.guide.tickFormatWordWrapLimit)},s=function(a,b,c){var d=this;if(a.scaleDim){var e=h.svg.axis().scale(a.scaleObj).orient(a.guide.scaleOrient),g=f.get(a.guide.tickFormat,a.guide.tickFormatNullAlias);null!==g&&(e.ticks(Math.round(c/a.guide.density)),e.tickFormat(g));var j=d.append("g").attr("class",a.guide.cssClass).attr("transform",i.apply(null,b)).call(e);n(j,a,c),r(j,a),q(j,a),o(j,a)}},t=function(a,b,c){var d=this,e=d.append("g").attr("class","grid").attr("transform",i(0,0)),g=(a.guide.showGridLines||"").toLowerCase();if(g.length>0){var j=e.append("g").attr("class","grid-lines");if(g.indexOf("x")>-1&&a.x.scaleDim){var k=a.x,l=h.svg.axis().scale(k.scaleObj).orient(k.guide.scaleOrient).tickSize(b),m=f.get(k.guide.tickFormat);null!==m&&(l.ticks(Math.round(c/k.guide.density)),l.tickFormat(m));var o=j.append("g").attr("class","grid-lines-x").call(l);n(o,k,c);var q=o.select("g.tick");if(q.node()&&"translate(0,0)"!==q.attr("transform")){var r=q.node().cloneNode(!0);j.node().appendChild(r),h.select(r).attr("class","border").attr("transform",i(0,0)).select("line").attr("x1",0).attr("x2",0)}}if(g.indexOf("y")>-1&&a.y.scaleDim){var s=a.y,t=h.svg.axis().scale(s.scaleObj).orient(s.guide.scaleOrient).tickSize(-c),m=f.get(s.guide.tickFormat);null!==m&&(t.ticks(Math.round(b/s.guide.density)),t.tickFormat(m));var u=j.append("g").attr("class","grid-lines-y").call(t);n(u,s,b),p(u,s,b)}j.selectAll("text").remove()}return e},u=function(a,b,c){return a[b]=g.defaults(a[b]||{},{label:""}),a[b].label=g.isObject(a[b].label)?a[b].label:{text:a[b].label},a[b].label=g.defaults(a[b].label,c||{},{padding:32,rotate:0,textAnchor:"middle",cssClass:"label",dock:null}),a[b]},v=function(a,b,c){return a[b]=g.defaults(a[b],c||{},{padding:0,density:30,rotate:0,tickPeriod:null,tickFormat:null,autoScale:!0}),a[b].tickFormat=a[b].tickFormat||a[b].tickPeriod,a[b]},w=function(a){return a.options=a.options||{},a.guide=a.guide||{},a.guide.padding=g.defaults(a.guide.padding||{},{l:0,b:0,r:0,t:0}),a.guide.x=u(a.guide,"x"),a.guide.x=v(a.guide,"x",{cssClass:"x axis",scaleOrient:"bottom",textAnchor:"middle"}),a.guide.y=u(a.guide,"y",{rotate:-90}),a.guide.y=v(a.guide,"y",{cssClass:"y axis",scaleOrient:"left",textAnchor:"end"}),a.guide.size=u(a.guide,"size"),a.guide.color=u(a.guide,"color"),a},x={translate:i,rotate:j,getOrientation:k,fnDrawDimAxis:s,fnDrawGrid:t,applyNodeDefaults:w,cutText:l,wrapText:m};a.utilsDraw=x}),e("spec-engine-factory",["exports","./utils/utils","./utils/utils-draw","./formatter-registry","./utils/utils-dom"],function(b,c,d,e,f){function g(b,c,d,e){var f=b.hasOwnProperty(d)?b[d]:{};a.each(e,function(b){a.extend(c.guide[d][b],f[b])}),a.extend(c.guide[d],a.omit.apply(a,[f].concat[e]))}var h=c.utils,i=d.utilsDraw,j=e.FormatterRegistry,k=(f.utilsDom,function(b,c){var d=c.guide||{},e={x:["label"],y:["label"],size:["label"],color:["label"],padding:[]};return a.each(e,function(a,c){g(d,b,c,a)}),a.extend(b.guide,a.omit.apply(a,[d].concat(a.keys(e)))),b}),l=function(b,c){return b.guide=b.guide||{},b.guide.padding=b.guide.padding||{l:0,t:0,r:0,b:0},b.hasOwnProperty("unit")||(b=a.defaults(b,c),b.guide=a.defaults(b.guide,h.clone(c.guide)),b.guide.x=a.defaults(b.guide.x,h.clone(c.guide.x)),b.guide.y=a.defaults(b.guide.y,h.clone(c.guide.y))),b},m=function(a){var b=a.unit||[],c=!a.hasOwnProperty("unit"),d=!b.some(function(a){return a.hasOwnProperty("unit")});return{type:a.type,isLeaf:c,isLeafParent:!c&&d}},n=function(b,c,d,e){if(0===b.length)return{width:0,height:0};if(null===c){var f=d("TauChart Library");return f.width=.625*e,f}var g=a.max(b,function(a){return c(a).toString().length}),h=a.isNumber(g)?".00":"";return d(c(g)+h)},o=function(a,b,c){var d=a.dimType,e=a.scaleType,f="*";if("measure"===d&&"time"===e){var g=b.source.filter(function(a){return null!==a}).sort(),h=0;if(g.length>1){for(var i=1,j=g.length,k=[];j>i;)k.push(g[i]-g[i-1]),++i;var l=k.reduce(function(a,b){return a+=b},0);h=l/k.length}var m=[[31536e6,"year"],[7776e6,"quarter"],[2592e6,"month"],[6048e5,"week"],[864e5,"day"],[36e5,"hour"],[6e4,"min"],[1e3,"sec"],[0,"ms"]],n=-1;do++n;while(m[n][0]>h);f=m[n][1]}var o=[d,e,f].join(":"),p=[d,e].join(":");return c[o]||c[p]||c[d]||null},p=function(a,b,c,d,e,f){var g=b.dimension(a.x),h=b.dimension(a.y),i="measure"===g.dimType,k="measure"===h.dimType,l=c.hasOwnProperty("xDensityPadding:"+g.dimType)?c["xDensityPadding:"+g.dimType]:c.xDensityPadding,m=c.hasOwnProperty("yDensityPadding:"+h.dimType)?c["yDensityPadding:"+h.dimType]:c.yDensityPadding,p=b.scaleMeta(a.x,a.guide.x),q=p.values,r=b.scaleMeta(a.y,a.guide.y),s=r.values;a.guide.x.tickFormat=a.guide.x.tickFormat||o(g,p,c.defaultFormats),a.guide.y.tickFormat=a.guide.y.tickFormat||o(h,r,c.defaultFormats),["day","week","month"].indexOf(a.guide.x.tickFormat)>=0&&(a.guide.x.tickFormat+="-short"),["day","week","month"].indexOf(a.guide.y.tickFormat)>=0&&(a.guide.y.tickFormat+="-short");var t=0===q.length,u=0===s.length,v=n(q,j.get(a.guide.x.tickFormat,a.guide.x.tickFormatNullAlias),c.getAxisTickLabelSize,c.xAxisTickLabelLimit),w=n(s,j.get(a.guide.y.tickFormat,a.guide.y.tickFormatNullAlias),c.getAxisTickLabelSize,c.yAxisTickLabelLimit),x=c.xAxisPadding,y=c.yAxisPadding,z=d?!i:!1,A=e?!k:!1;a.guide.x.padding=t?0:x,a.guide.y.padding=u?0:y,a.guide.x.rotate=z?90:0,a.guide.x.textAnchor=z?"start":a.guide.x.textAnchor,a.guide.y.rotate=A?-90:0,a.guide.y.textAnchor=A?"middle":a.guide.y.textAnchor;var B=t?0:c.xTickWidth,C=u?0:c.yTickWidth;a.guide.x.tickFormatWordWrapLimit=c.xAxisTickLabelLimit,a.guide.y.tickFormatWordWrapLimit=c.yAxisTickLabelLimit;var D=z?{w:v.height,h:v.width}:{h:v.height,w:v.width};if(v.width>c.xAxisTickLabelLimit){a.guide.x.tickFormatWordWrap=!0,a.guide.x.tickFormatWordWrapLines=c.xTickWordWrapLinesLimit;var E=Math.ceil(v.width/c.xAxisTickLabelLimit),F=Math.min(E,c.xTickWordWrapLinesLimit),G=F*v.height;z?(D.h=c.xAxisTickLabelLimit,D.w=G):(D.h=G,D.w=c.xAxisTickLabelLimit)}var H=A?{w:w.height,h:w.width}:{h:w.height,w:w.width};if(w.width>c.yAxisTickLabelLimit){a.guide.y.tickFormatWordWrap=!0,a.guide.y.tickFormatWordWrapLines=c.yTickWordWrapLinesLimit;var E=Math.ceil(w.width/c.yAxisTickLabelLimit),F=Math.min(E,c.yTickWordWrapLinesLimit),G=F*w.height;A?(H.w=G,H.h=c.yAxisTickLabelLimit):(H.w=c.yAxisTickLabelLimit,H.h=G)}var I=B+D.h,J=C+H.w,K=c.xFontLabelHeight,L=c.yFontLabelHeight,M=c.distToXAxisLabel,N=c.distToYAxisLabel;if(a.guide.x.density=D.w+2*l,a.guide.y.density=H.h+2*m,f){var O=(x-K)/2;a.guide.x.label.padding=0+K-M+O,a.guide.y.label.padding=0-N+O,a.guide.x.label.cssClass+=" inline",a.guide.x.label.dock="right",a.guide.x.label.textAnchor="end",a.guide.y.label.cssClass+=" inline",a.guide.y.label.dock="right",a.guide.y.label.textAnchor="end",a.guide.padding.b=x+I,a.guide.padding.l=y+J,a.guide.padding.b=a.guide.x.hide?0:a.guide.padding.b,a.guide.padding.l=a.guide.y.hide?0:a.guide.padding.l}else{a.guide.x.label.padding=+K+(a.guide.x.label.text?I+M:0),a.guide.y.label.padding=-K+(a.guide.y.label.text?J+N:0);var P=a.guide.x.label.text?a.guide.x.label.padding+K:I,Q=a.guide.y.label.text?a.guide.y.label.padding+L:J;a.guide.padding.b=x+P-B,a.guide.padding.l=y+Q,a.guide.padding.b=a.guide.x.hide?0:a.guide.padding.b,a.guide.padding.l=a.guide.y.hide?0:a.guide.padding.l}return a.guide.x.tickFontHeight=v.height,a.guide.y.tickFontHeight=w.height,a.guide.x.$minimalDomain=q.length,a.guide.y.$minimalDomain=s.length,a.guide.x.$maxTickTextW=v.width,a.guide.x.$maxTickTextH=v.height,a.guide.y.$maxTickTextW=w.width,a.guide.y.$maxTickTextH=w.height,a},q={NONE:function(a,b,c){var d=h.clone(a);return r(h.clone(d.unit),d.unit,function(a,b){return b.guide.x.tickFontHeight=c.getAxisTickLabelSize("X").height,b.guide.y.tickFontHeight=c.getAxisTickLabelSize("Y").height,b.guide.x.tickFormatWordWrapLimit=c.xAxisTickLabelLimit,b.guide.y.tickFormatWordWrapLimit=c.yAxisTickLabelLimit,b}),d},"BUILD-LABELS":function(b){var c=h.clone(b),d=[],e=[],f=null,g=null;return h.traverseJSON(c.unit,"unit",m,function(b,c){if(b.isLeaf)return c;!f&&c.x&&(f=c),!g&&c.y&&(g=c),c.guide=c.guide||{},c.guide.x=c.guide.x||{label:""},c.guide.y=c.guide.y||{label:""},c.guide.x.label=a.isObject(c.guide.x.label)?c.guide.x.label:{text:c.guide.x.label},c.guide.y.label=a.isObject(c.guide.y.label)?c.guide.y.label:{text:c.guide.y.label},c.x&&(c.guide.x.label.text=c.guide.x.label.text||c.x),c.y&&(c.guide.y.label.text=c.guide.y.label.text||c.y);var h=c.guide.x.label.text;h&&(d.push(h),c.guide.x.tickFormatNullAlias=c.guide.x.hasOwnProperty("tickFormatNullAlias")?c.guide.x.tickFormatNullAlias:"No "+h,c.guide.x.label.text="");var i=c.guide.y.label.text;return i&&(e.push(i),c.guide.y.tickFormatNullAlias=c.guide.y.hasOwnProperty("tickFormatNullAlias")?c.guide.y.tickFormatNullAlias:"No "+i,c.guide.y.label.text=""),c}),f&&(f.guide.x.label.text=d.join(" > ")),g&&(g.guide.y.label.text=e.join(" > ")),c},"BUILD-GUIDE":function(a,b,c){var d=h.clone(a);return r(h.clone(d.unit),d.unit,function(a,d){if(a.isLeaf)return d;a.isLeafParent&&!d.guide.hasOwnProperty("showGridLines")&&(d.guide.showGridLines="xy");var e=!a.isLeaf&&!a.isLeafParent;e&&(d.guide.x.cssClass+=" facet-axis",d.guide.y.cssClass+=" facet-axis");var f=b.dimension(d.x),g=b.dimension(d.y),h="measure"===f.dimType,i="measure"===g.dimType,k=c.hasOwnProperty("xDensityPadding:"+f.dimType)?c["xDensityPadding:"+f.dimType]:c.xDensityPadding,l=c.hasOwnProperty("yDensityPadding:"+g.dimType)?c["yDensityPadding:"+g.dimType]:c.yDensityPadding,m=b.scaleMeta(d.x,d.guide.x),p=m.values,q=b.scaleMeta(d.y,d.guide.y),r=q.values;d.guide.x.tickFormat=d.guide.x.tickFormat||o(f,m,c.defaultFormats),d.guide.y.tickFormat=d.guide.y.tickFormat||o(g,q,c.defaultFormats);var s=0===p.length,t=0===r.length,u=n(p,j.get(d.guide.x.tickFormat,d.guide.x.tickFormatNullAlias),c.getAxisTickLabelSize,c.xAxisTickLabelLimit),v=n(r,j.get(d.guide.y.tickFormat,d.guide.y.tickFormatNullAlias),c.getAxisTickLabelSize,c.yAxisTickLabelLimit),w=a.isLeafParent?c.xAxisPadding:0,x=a.isLeafParent?c.yAxisPadding:0,y=!e&&!!f.dimType&&"measure"!==f.dimType;d.guide.x.padding=s?0:w,d.guide.y.padding=t?0:x,d.guide.x.rotate=y?90:0,d.guide.x.textAnchor=y?"start":d.guide.x.textAnchor;var z=s?0:c.xTickWidth,A=t?0:c.yTickWidth;d.guide.x.tickFormatWordWrapLimit=c.xAxisTickLabelLimit,d.guide.y.tickFormatWordWrapLimit=c.yAxisTickLabelLimit;var B=y?u.width:u.height;!h&&B>c.xAxisTickLabelLimit&&(B=c.xAxisTickLabelLimit),!y&&u.width>c.xAxisTickLabelLimit&&(d.guide.x.tickFormatWordWrap=!0,d.guide.x.tickFormatWordWrapLines=c.xTickWordWrapLinesLimit,B=c.xTickWordWrapLinesLimit*u.height);var C=v.width;!i&&C>c.yAxisTickLabelLimit&&(C=c.yAxisTickLabelLimit,d.guide.y.tickFormatWordWrap=!0,d.guide.y.tickFormatWordWrapLines=c.yTickWordWrapLinesLimit);var D=z+B,E=A+C,F=c.xFontLabelHeight,G=c.yFontLabelHeight,H=c.distToXAxisLabel,I=c.distToYAxisLabel,J=Math.min(c.xAxisTickLabelLimit,y?u.height:u.width);d.guide.x.density=J+2*k;var K=Math.ceil(v.width/c.yAxisTickLabelLimit),L=Math.min(K,c.yTickWordWrapLinesLimit),M=Math.min(c.yAxisTickLabelLimit,L*v.height);d.guide.y.density=M+2*l,d.guide.x.label.padding=d.guide.x.label.text?D+H:0,d.guide.y.label.padding=d.guide.y.label.text?E+I:0;var N=d.guide.x.label.text?d.guide.x.label.padding+F:D,O=d.guide.y.label.text?d.guide.y.label.padding+G:E;return d.guide.padding.b=w+N,d.guide.padding.l=x+O,d.guide.padding.b=d.guide.x.hide?0:d.guide.padding.b,d.guide.padding.l=d.guide.y.hide?0:d.guide.padding.l,d.guide.x.tickFontHeight=u.height,d.guide.y.tickFontHeight=v.height,d.guide.x.$minimalDomain=p.length,d.guide.y.$minimalDomain=r.length,d.guide.x.$maxTickTextW=u.width,d.guide.x.$maxTickTextH=u.height,d.guide.y.$maxTickTextW=v.width,d.guide.y.$maxTickTextH=v.height,d}),d},"BUILD-COMPACT":function(b,c,d){var e=h.clone(b);return r(h.clone(e.unit),e.unit,function(b,e){return b.isLeaf?e:b.isLeafParent?(e.guide.showGridLines=e.guide.hasOwnProperty("showGridLines")?e.guide.showGridLines:"xy",p(e,c,a.defaults({xTickWordWrapLinesLimit:1,yTickWordWrapLinesLimit:1},d),!0,!1,!0)):(e.guide.x.cssClass+=" facet-axis compact",e.guide.y.cssClass+=" facet-axis compact",p(e,c,a.defaults({xAxisPadding:0,yAxisPadding:0,distToXAxisLabel:0,distToYAxisLabel:0,xTickWordWrapLinesLimit:1,yTickWordWrapLinesLimit:1},d),!1,!0,!1))}),e},"OPTIMAL-SIZE":function(a,b,c){var d=h.clone(a),e=function(a){var b; -if(a.unit){var c=e(a.unit[0]),d=a.guide,f=d.x.$minimalDomain||1,g=d.y.$minimalDomain||1,h=Math.max(f*d.x.density,f*c.w),i=Math.max(g*d.y.density,g*c.h);b={w:h+d.padding.l+d.padding.r,h:i+d.padding.t+d.padding.b}}else b={w:0,h:0};return b},f=function(a,b,c,d){var e=b.guide.x.$minimalDomain||1,g=b.guide.y.$minimalDomain||1,h=c.width/e,i=c.height/g,j=a.dimension(b.x),k=a.dimension(b.y),l=d.hasOwnProperty("xDensityPadding:"+j.dimType)?d["xDensityPadding:"+j.dimType]:d.xDensityPadding,m=d.hasOwnProperty("yDensityPadding:"+k.dimType)?d["yDensityPadding:"+k.dimType]:d.yDensityPadding;if(b.guide.x.hide!==!0&&0!==b.guide.x.rotate&&h>b.guide.x.$maxTickTextW+2*l){b.guide.x.rotate=0,b.guide.x.textAnchor="middle",b.guide.x.tickFormatWordWrapLimit=h;var n=Math.min(d.xAxisTickLabelLimit,b.guide.x.$maxTickTextW),o=0-n+b.guide.x.$maxTickTextH;b.guide.padding.b+=b.guide.padding.b>0?o:0,b.guide.x.label.padding>n+d.xAxisPadding&&(b.guide.x.label.padding+=o)}b.guide.y.hide!==!0&&0!==b.guide.y.rotate&&1===b.guide.y.tickFormatWordWrapLines&&i>b.guide.y.$maxTickTextW+2*m&&(b.guide.y.tickFormatWordWrapLimit=i-2*m);var p={width:h,height:i};b.unit&&f(a,b.unit[0],p,d)},g=e(d.unit),i=g.w,j=g.h,k=c.size,l=c.getScrollBarWidth(),m=k.width-i,n=k.height-j,o=m>=0?k.width:i,p=n>=0?0:l,q=n>=0?k.height:j,r=m>=0?0:l;return c.size.height=q-r,c.size.width=o-p,f(b,d.unit,c.size,c),d}};q.AUTO=function(a,b,c){return["BUILD-LABELS","BUILD-GUIDE"].reduce(function(a,d){return q[d](a,b,c)},a)},q.COMPACT=function(a,b,c){return["BUILD-LABELS","BUILD-COMPACT"].reduce(function(a,d){return q[d](a,b,c)},a)};var r=function(b,c,d){var e=i.applyNodeDefaults(c);e=d(m(e),e),e=k(e,b);var f=a.omit(e,"unit");return(e.unit||[]).forEach(function(a){return r(h.clone(a),l(a,f),d)}),e},s={get:function(a,b){var c=q[a]||q.NONE;return function(a,d){var e=c(a,d,b);return b.fitSize&&(e=q["OPTIMAL-SIZE"](e,d,b)),e}}};b.SpecEngineFactory=s}),e("matrix",["exports"],function(b){var c=function(){var b=function(b,c){var d,e=a.toArray(arguments);d=a.isArray(e[0])?e[0]:a.times(b,function(){return a.times(c,function(){return null})}),this.cube=d};return b.prototype={iterate:function(b){var c=this.cube;return a.each(c,function(c,d){a.each(c,function(a,c){b(d,c,a)})}),this},getRC:function(a,b){return this.cube[a][b]},setRC:function(a,b,c){return this.cube[a][b]=c,this},sizeR:function(){return this.cube.length},sizeC:function(){var a=this.cube[0]||[];return a.length}},b}();b.TMatrix=c}),e("layout-engine-factory",["exports","./utils/utils","./utils/utils-draw","./matrix"],function(a,b,c,d){var e=b.utils,f=c.utilsDraw,g=d.TMatrix,h=function(a,b){var c=b?b:{depth:-1,paddings:[]},d=a.guide.padding;return c.depth+=1,c.paddings.unshift({l:d.l,b:d.b,r:d.r,t:d.t}),a.unit&&a.unit.length&&h(a.unit[0],c),c},i={NONE:function(a){return a},EXTRACT:function(a){var b=function(a,c,d){var e=a,f=e.sizeR(),h=e.sizeC();e.iterate(function(a,e,i){i.forEach(function(b){return d(b,{firstRow:0===a,firstCol:0===e,lastRow:a===f-1,lastCol:e===h-1,depth:c})}),i.filter(function(a){return a.$matrix}).forEach(function(a){a.$matrix=new g(a.$matrix.cube),b(a.$matrix,c-1,d)})})},c=e.clone(a),d=new g([[[c]]]),i=h(c),j=i.paddings.reduce(function(a,b){return a.l+=b.l,a.b+=b.b,a.r+=b.r,a.t+=b.t,a},{l:0,b:0,r:0,t:0}),k=e.clone(j),l=i.paddings.reverse().map(function(a){return a.l=k.l-a.l,a.b=k.b-a.b,k={l:a.l,b:a.b},a});i.paddings=l.reverse();var m=10,n=f.applyNodeDefaults({type:"COORDS.RECT",options:e.clone(a.options),$matrix:new g([[[c]]]),guide:{padding:{l:j.l-m,b:j.b-m,r:j.r+m,t:j.t+m}}});return b(d,i.depth,function(a,b){var c=b.depth;a.guide.x.hide=a.guide.x.hide?a.guide.x.hide:!b.lastRow,a.guide.y.hide=a.guide.y.hide?a.guide.y.hide:!b.firstCol;var d=c>1?0:m,e=c>1?m:0;return a.guide.x.padding+=i.paddings[c].b,a.guide.y.padding+=i.paddings[c].l,a.guide.x.padding-=e,a.guide.y.padding-=e,a.guide.padding.l=d,a.guide.padding.b=d,a.guide.padding.r=d,a.guide.padding.t=d,a}),n}},j={get:function(a){return i[a]||i.NONE}};a.LayoutEngineFactory=j}),e("plugins",["exports"],function(a){var c=function(a,b,c){b&&Object.defineProperties(a,b),c&&Object.defineProperties(a.prototype,c)},d=function(){function a(a,b){this.chart=b,this._plugins=a.map(this.initPlugin,this)}return c(a,null,{initPlugin:{value:function(a){var b=this;a.init&&a.init(this.chart),this.chart.on("destroy",a.destroy&&a.destroy.bind(a)||function(){}),Object.keys(a).forEach(function(c){if(0===c.indexOf("on")){var d=c.substr(2);b.chart.on(d.toLowerCase(),a[c].bind(a))}})},writable:!0,enumerable:!0,configurable:!0}}),a}(),e=["click","mouseover","mouseout","mousemove"],f=function(a){return function(){e.forEach(function(c){this.on(c,function(d){a.fire("element"+c,{elementData:d,element:this,cellData:b.select(this.parentNode.parentNode).datum()})})},this)}};a.propagateDatumEvents=f,a.Plugins=d}),e("unit-domain-period-generator",["exports"],function(a){var b={day:{cast:function(a){return new Date(a.setHours(0,0,0,0))},next:function(a){return new Date(a.setDate(a.getDate()+1))}},week:{cast:function(a){return a=new Date(a.setHours(0,0,0,0)),a=new Date(a.setDate(a.getDate()-a.getDay()))},next:function(a){return new Date(a.setDate(a.getDate()+7))}},month:{cast:function(a){return a=new Date(a.setHours(0,0,0,0)),a=new Date(a.setDate(1))},next:function(a){return new Date(a.setMonth(a.getMonth()+1))}},quarter:{cast:function(a){a=new Date(a.setHours(0,0,0,0)),a=new Date(a.setDate(1));var b=a.getMonth(),c=b-b%3;return new Date(a.setMonth(c))},next:function(a){return new Date(a.setMonth(a.getMonth()+3))}},year:{cast:function(a){return a=new Date(a.setHours(0,0,0,0)),a=new Date(a.setDate(1)),a=new Date(a.setMonth(0))},next:function(a){return new Date(a.setFullYear(a.getFullYear()+1))}}},c={add:function(a,c){return b[a.toLowerCase()]=c,this},get:function(a){return b[a.toLowerCase()]},generate:function(a,c,d){var e=[],f=b[d.toLowerCase()];if(f){var g=f.cast(new Date(c)),h=f.cast(new Date(a));for(e.push(h);(h=f.next(new Date(h)))<=g;)e.push(h)}return e}};a.UnitDomainPeriodGenerator=c}),e("size",["exports"],function(b){var c=function(a){return Math.sqrt(a)},d=function(b,d,e,f){var g=a.filter(b,a.isFinite);if(0===g.length)return function(){return f};var h=1,i=0,j=Math.min.apply(null,g),k=Math.max.apply(null,g),l=c(Math.max.apply(null,[Math.abs(j),Math.abs(k),k-j]));return i=0>j?j:0,h=0===l?1:(e-d)/l,function(b){var f=null!==b?parseFloat(b):0;if(!a.isFinite(f))return e;var g=f-i;return d+c(g)*h}};b.sizeScale=d}),e("unit-domain-mixin",["exports","./unit-domain-period-generator","./utils/utils","./size","underscore","d3"],function(a,b,c,d,e,f){var g=function(a,b,c){b&&Object.defineProperties(a,b),c&&Object.defineProperties(a.prototype,c)},h=b.UnitDomainPeriodGenerator,i=c.utils,j=d.sizeScale,k=e,l=f,m={ordinal:function(a){return a},linear:function(a,b){var c=b.autoScale?i.autoScale(a):l.extent(a),d=k.isNumber(b.min)?b.min:c[0],e=k.isNumber(b.max)?b.max:c[1];return[Math.min(d,c[0]),Math.max(e,c[1])]},period:function(a,b){var c=l.extent(a),d=k.isNull(b.min)||k.isUndefined(b.min)?c[0]:new Date(b.min).getTime(),e=k.isNull(b.max)||k.isUndefined(b.max)?c[1]:new Date(b.max).getTime(),f=[new Date(Math.min(d,c[0])),new Date(Math.max(e,c[1]))];return h.generate(f[0],f[1],b.period)},time:function(a,b){var c=l.extent(a),d=k.isNull(b.min)||k.isUndefined(b.min)?c[0]:new Date(b.min).getTime(),e=k.isNull(b.max)||k.isUndefined(b.max)?c[1]:new Date(b.max).getTime();return[new Date(Math.min(d,c[0])),new Date(Math.max(e,c[1]))]}},n={ordinal:function(a,b){return l.scale.ordinal().domain(a).rangePoints(b,1)},linear:function(a,b){return l.scale.linear().domain(a).rangeRound(b,1)},period:function(a,b){return l.scale.ordinal().domain(a).rangePoints(b,1)},time:function(a,b){return l.time.scale().domain(a).range(b)}},o=function(){function a(a,b){var c=function(a){return function(b){var c=b||{};return c.hasOwnProperty(a)?c[a]:null}},d=function(b){var d=a[b]||{},e=d.value?c(d.value):function(a){return a},f=k.contains(["period","time"],d.scale);return f?k.compose(function(a){return new Date(a).getTime()},e):e},e=function(b){var c=a[b]||{};return c.order||null},f=function(a){var b={category:function(a,b,c){return c},order:function(a,b,c){var d=e(a);return d?k.union(d,c):k.sortBy(c,b)},measure:function(a,b,c){return k.sortBy(c,b)},"as-is":function(a,b,c){return c}};return b[a]||b["as-is"]},g=function(a){var b={category:f("category"),order:f("order"),measure:f("measure"),"as-is":f("as-is")};return b[a]||b["as-is"]};this.fnDimension=function(b,c){var d=(c||{}).dimensions||{},e=a[b]||{},f=d[b]||{};return{scaleDim:b,scaleType:f.scale||e.scale,dimType:f.type||e.type}},this.fnSource=function(a){var c=k.map(a,function(a,b){return function(c){return d(b)(c[b])===a}});return k(b).filter(function(a){return k.every(c,function(b){return b(a)})})};var i=function(c,e){if(!a[c])return[];var f=d(c),g=k(b).chain().pluck(c).uniq(f).value();return e(c,f,g)};this.fnDomain=function(b){var c=d(b),e=(a[b]||{}).type,g=i(b,f(e));return g.map(c)};var o=function(b,e){var f={},j=e||{};f.map=j.hasOwnProperty("map")?j.map:j.tickLabel,f.min=j.hasOwnProperty("min")?j.min:j.tickMin,f.max=j.hasOwnProperty("max")?j.max:j.tickMax,f.period=j.hasOwnProperty("period")?j.period:j.tickPeriod,f.autoScale=j.autoScale;var l=k.defaults({},a[b]),n={"order:period":function(a){return function(b){return h.get(a.period).cast(new Date(b))}},"*":function(){return function(a){return a}}},o=f.map?c(f.map):d(b),p=[l.type,l.scale].join(":"),q=(n[p]||n["*"])(f),r=i(b,g(l.type)).map(o),s=l.scale?m[l.scale](r,f):r;return{extract:function(a){return q(o(a))},values:s,source:r}};this.fnScaleMeta=o,this.fnScaleTo=function(b,c,d){var e=d||{},f=k.defaults({},a[b]),g=o(b,d),h=n[f.scale](g.values,c,e),i=function(a){return h(g.extract(a))};return Object.keys(h).forEach(function(a){return i[a]=h[a]}),i},this.fnScaleColor=function(a,b,c){var d,e=c||{},f=o(a,e),g=k.constant("color-default"),h=k.times(20,function(a){return"color20-"+(1+a)}),i=function(a,b){if(0===a.length||1===a.length&&null===a[0])return g;var c=a.map(function(a){return String(a).toString()});return l.scale.ordinal().range(b).domain(c)},j=function(a,b){var c=k.keys(a),d=k.values(a),e=l.scale.ordinal().range(d).domain(c);return function(c){return a.hasOwnProperty(c)?e(c):b(c)}},m=function(a){return function(b){return a(String(b).toString())}};if(b)if(k.isArray(b))d=m(i(f.values,b));else if(k.isFunction(b))d=function(a){return b(a,m(i(f.values,h)))};else{if(!k.isObject(b))throw new Error("This brewer is not supported");d=j(b,g)}else d=m(i(f.values,h));var n=function(a){return d(f.extract(a))};return n.get=n,n.dimension=a,n.legend=function(a){var b=f.extract(a),c=e.tickLabel?(a||{})[e.tickLabel]:b,g=d(b);return{value:b,color:g,label:c}},n},this.fnScaleSize=function(a,b,c){var d=c||{},e=b[0],f=b[1],g=b[b.length-1],h=o(a,d),i=j(h.source,e,f,g),k=function(a){return i(h.extract(a))};return k}}return g(a,null,{mix:{value:function(a){return a.dimension=this.fnDimension,a.source=this.fnSource,a.domain=this.fnDomain,a.scaleMeta=this.fnScaleMeta,a.scaleTo=this.fnScaleTo,a.scaleDist=this.fnScaleTo,a.scaleColor=this.fnScaleColor,a.scaleSize=this.fnScaleSize,a.partition=function(){return a.data||a.source(a.$where)},a.groupBy=function(b,c){var d=a.scaleMeta(c);return k.chain(b).groupBy(function(a){return d.extract(a[c])}).map(function(a){return{key:a[0][c],values:a}}).value()},a},writable:!0,enumerable:!0,configurable:!0}}),a}();a.UnitDomainMixin=o}),e("units-registry",["exports"],function(a){var b={},c={add:function(a,c){var d={};return d.draw="function"==typeof c?c:c.draw,d.walk=c.walk||function(a){return a},b[a]=d,this},get:function(a){if(!b.hasOwnProperty(a))throw new Error("Unknown unit type: "+a);return b[a]}};a.UnitsRegistry=c}),e("data-processor",["exports","./utils/utils"],function(b,c){var d=c.utils,e=function(a){return a===Object(a)},f={isYFunctionOfX:function(a,b,c){var d=!0,f=null;try{a.reduce(function(a,d){var g=function(a,b){var c=d[b],f=e(c)?JSON.stringify(c):c;return a.push(f),a},h=b.reduce(g,[]).join("/"),i=c.reduce(g,[]).join("/");if(a.hasOwnProperty(h)){var j=a[h];if(j!==i)throw f={type:"RelationIsNotAFunction",keyX:b.join("/"),keyY:c.join("/"),valX:h,errY:[j,i]},new Error("RelationIsNotAFunction")}else a[h]=i;return a},{})}catch(g){if("RelationIsNotAFunction"!==g.message)throw g;d=!1}return{result:d,error:f}},excludeNullValues:function(a,b){var c=Object.keys(a).reduce(function(b,c){var d=a[c];return d.hasOwnProperty("hasNull")&&!d.hasNull||"measure"!==d.type&&"period"!==d.scale||b.push(c),b},[]);return function(a){var d=!c.some(function(b){return!(b in a)||null===a[b]});return d||b(a),d}},autoAssignScales:function(a){var b="category",c={category:"ordinal",order:"ordinal",measure:"linear"},d={};return Object.keys(a).forEach(function(e){var f=a[e],g=(f.type||b).toLowerCase();d[e]={},d[e].type=g,d[e].scale=f.scale||c[g],d[e].value=f.value}),d},autoDetectDimTypes:function(b){var c={type:"category",scale:"ordinal"},e=function(b,c){var d=c;return a.isDate(b)?(d.type="measure",d.scale="time"):a.isObject(b)?(d.type="order",d.scale="ordinal"):a.isNumber(b)&&(d.type="measure",d.scale="linear"),d},f=function(a,b){return Object.keys(b).forEach(function(f){var g=b.hasOwnProperty(f)?b[f]:null;if(a[f]=a[f]||{type:null,hasNull:!1},null===g)a[f].hasNull=!0;else{var h=e(g,d.clone(c)),i=h.type,j=h.scale,k=null!==a[f].type&&a[f].type!==i;a[f].type=k?c.type:i,a[f].scale=k?c.scale:j}}),a};return a.reduce(b,f,{})}};b.DataProcessor=f}),e("utils/layuot-template",["exports","../const"],function(a,b){var c=b.CSS_PREFIX,d=function(a,b){var d="div",e=document.createElement(d);return e.classList.add(c+a),b&&b.appendChild(e),e},e=function(){var a=d("layout"),b=d("layout__header",a),c=d("layout__container",a),e=d("layout__sidebar",c),f=d("layout__content",c),g=d("layout__content__wrap",f),h=d("layout__sidebar-right",c),i=d("layout__sidebar-right__wrap",h),j=d("layout__footer",a);return{layout:a,header:b,content:g,leftSidebar:e,rightSidebar:i,footer:j}};a.getLayout=e}),e("charts/tau.plot",["exports","../dsl-reader","../api/balloon","../event","../spec-engine-factory","../layout-engine-factory","../plugins","../utils/utils","../utils/utils-dom","../const","../unit-domain-mixin","../units-registry","../data-processor","../utils/layuot-template"],function(c,d,e,f,g,h,i,j,k,l,m,n,o,p){var q=function(a,b,c){b&&Object.defineProperties(a,b),c&&Object.defineProperties(a.prototype,c)},r=function I(a,b,c){var d=Object.getOwnPropertyDescriptor(a,b);if(void 0===d){var e=Object.getPrototypeOf(a);return null===e?void 0:I(e,b,c)}if("value"in d&&d.writable)return d.value;var f=d.get;return void 0===f?void 0:f.call(c)},s=function(a,b){if("function"!=typeof b&&null!==b)throw new TypeError("Super expression must either be null or a function, not "+typeof b);a.prototype=Object.create(b&&b.prototype,{constructor:{value:a,enumerable:!1,writable:!0,configurable:!0}}),b&&(a.__proto__=b)},t=d.DSLReader,u=e.Tooltip,v=f.Emitter,w=g.SpecEngineFactory,x=h.LayoutEngineFactory,y=i.Plugins,z=i.propagateDatumEvents,A=j.utils,B=k.utilsDom,C=l.CSS_PREFIX,D=m.UnitDomainMixin,E=n.UnitsRegistry,F=o.DataProcessor,G=p.getLayout,H=function(c){function d(a){r(Object.getPrototypeOf(d.prototype),"constructor",this).call(this),this._svg=null,this._filtersStore={filters:{},tick:0},this._layout=G(),this.setupConfig(a),this._plugins=new y(this.config.plugins,this)}return s(d,c),q(d,null,{setupConfig:{value:function(b){if(!b.spec&&!b.spec.unit)throw new Error("Provide spec for plot");this.config=a.defaults(b,{spec:{},data:[],plugins:[],settings:{}}),this._emptyContainer=b.emptyContainer||"",this.config.settings.specEngine=this.config.specEngine||this.config.settings.specEngine,this.config.settings.layoutEngine=this.config.layoutEngine||this.config.settings.layoutEngine,this.config.settings=this.setupSettings(this.config.settings),A.isArray(this.config.settings.specEngine)||(this.config.settings.specEngine=[{width:Number.MAX_VALUE,name:this.config.settings.specEngine}]),this.config.spec.dimensions=this.setupMetaInfo(this.config.spec.dimensions,this.config.data);var c=this.config.settings.log;this.config.settings.excludeNull&&this.addFilter({tag:"default",predicate:F.excludeNullValues(this.config.spec.dimensions,function(a){c([a,"point was excluded, because it has undefined values."],"WARN")})})},writable:!0,enumerable:!0,configurable:!0},getConfig:{value:function(){return this.config},writable:!0,enumerable:!0,configurable:!0},setupMetaInfo:{value:function(a,b){var c=a?a:F.autoDetectDimTypes(b);return F.autoAssignScales(c)},writable:!0,enumerable:!0,configurable:!0},setupSettings:{value:function(b){var c=d.globalSettings,e={};return Object.keys(c).forEach(function(b){e[b]=a.isFunction(c[b])?c[b]:A.clone(c[b])}),a.defaults(b||{},e)},writable:!0,enumerable:!0,configurable:!0},insertToRightSidebar:{value:function(a){return B.appendTo(a,this._layout.rightSidebar)},writable:!0,enumerable:!0,configurable:!0},insertToHeader:{value:function(a){return B.appendTo(a,this._layout.header)},writable:!0,enumerable:!0,configurable:!0},addBalloon:{value:function(a){return new u("",a||{})},writable:!0,enumerable:!0,configurable:!0},renderTo:{value:function(c,d){this._renderGraph=null,this._svg=null,this._defaultSize=a.clone(d);var e=b.select(c),f=e.node();if(this._target=c,this._targetSizes=d,null===f)throw new Error("Target element not found");f.appendChild(this._layout.layout),e=b.select(this._layout.content);var g=d||{};this._layout.content.innerHTML="",g.width&&g.height||(g=a.defaults(g,B.getContainerSize(this._layout.content.parentNode)));var h=this.getData();if(0===h.length)return void(this._layout.content.innerHTML=this._emptyContainer);this._targetSizes=g,this._layout.content.innerHTML="";var i=new D(this.config.spec.dimensions,h),j=a.find(this.config.settings.specEngine,function(a){return g.width<=a.width});this.config.settings.size=g;var k=w.get(j.name,this.config.settings),l=k(this.config.spec,i.mix({})),m=this.config.settings.size,n=new t(i,E),o=this,p=n.buildGraph(l),q=x.get(this.config.settings.layoutEngine)(p),r=n.calcLayout(q,m),s=n.renderGraph(r,e.append("svg").attr("class",C+"svg").attr("width",m.width).attr("height",m.height),function(a){return o.fire("unitready",a)});this._renderGraph=r,this._svg=s.node(),s.selectAll(".i-role-datum").call(z(this)),this._layout.rightSidebar.style.maxHeight=m.height+"px",this.fire("render",this._svg)},writable:!0,enumerable:!0,configurable:!0},getData:{value:function(b){b=b||{};var c=a.chain(this._filtersStore.filters).values().flatten().reject(function(c){return a.contains(b.excludeFilter,c.tag)}).pluck("predicate").value();return a.filter(this.config.data,a.reduce(c,function(a,b){return function(c){return a(c)&&b(c)}},function(){return!0}))},writable:!0,enumerable:!0,configurable:!0},setData:{value:function(a){this.config.data=a,this.refresh()},writable:!0,enumerable:!0,configurable:!0},getSVG:{value:function(){return this._svg},writable:!0,enumerable:!0,configurable:!0},addFilter:{value:function(a){var b=a.tag,c=this._filtersStore.filters[b]=this._filtersStore.filters[b]||[],d=this._filtersStore.tick++;return a.id=d,c.push(a),this.refresh(),d},writable:!0,enumerable:!0,configurable:!0},removeFilter:{value:function(b){var c=this;a.each(this._filtersStore.filters,function(d,e){c._filtersStore.filters[e]=a.reject(d,function(a){return a.id===b})}),this.refresh()},writable:!0,enumerable:!0,configurable:!0},refresh:{value:function(){this._target&&this.renderTo(this._target,this._defaultSize)},writable:!0,enumerable:!0,configurable:!0},resize:{value:function(){var a=void 0===arguments[0]?{}:arguments[0];this.renderTo(this._target,a)},writable:!0,enumerable:!0,configurable:!0},select:{value:function(a){var b=[];if(!this._renderGraph)return b;var c=function(a,b){b(a),(a.childUnits||[]).forEach(function(a){return c(a,b)})};return c(this._renderGraph,function(c){a(c)&&b.push(c)}),b},writable:!0,enumerable:!0,configurable:!0}}),d}(v);c.Plot=H}),e("charts/tau.chart",["exports","./tau.plot","../utils/utils","../data-processor"],function(b,c,d,e){function f(a,b,c){return b.reduce(function(b,d,e){var f=a[d];return f?b.status!=r.FAIL&&("measure"===f.type&&(b.countMeasureAxis++,b.indexMeasureAxis.push(e)),"measure"!==f.type&&1===b.countMeasureAxis?b.status=r.WARNING:b.countMeasureAxis>1&&(b.status=r.FAIL,b.messages.push('There is more than one measure dimension for "'+c+'" axis'))):(b.status=r.FAIL,b.messages.push(d?'"'+d+'" dimension is undefined for "'+c+'" axis':'"'+c+'" axis should be specified')),b},{status:r.SUCCESS,countMeasureAxis:0,indexMeasureAxis:[],messages:[],axis:c})}function g(b,c){for(var d=p(c.x),e=p(c.y),g=Math.max(d.length,e.length),h=p(c.guide);h.length0;l--){var m=d.pop(),n=e.pop(),r=h.pop()||{};l===g?(k.x=m,k.y=n,k.unit.push(q(b,{x:o(m),y:o(n),color:c.color,size:c.size,flip:c.flip,colorGuide:r.color,sizeGuide:r.size})),k.guide=a.defaults(r,{x:{label:m},y:{label:n}})):k={type:"COORDS.RECT",x:o(m),y:o(n),unit:[k],guide:a.defaults(r,{x:{label:m},y:{label:n}})}}return c.spec={dimensions:c.dimensions,unit:k},c}var h=function(a,b,c){return Object.defineProperty(a,b,{value:c,enumerable:!0,configurable:!0,writable:!0})},i=function(a,b,c){b&&Object.defineProperties(a,b),c&&Object.defineProperties(a.prototype,c)},j=function v(a,b,c){var d=Object.getOwnPropertyDescriptor(a,b);if(void 0===d){var e=Object.getPrototypeOf(a);return null===e?void 0:v(e,b,c)}if("value"in d&&d.writable)return d.value;var f=d.get;return void 0===f?void 0:f.call(c)},k=function(a,b){if("function"!=typeof b&&null!==b)throw new TypeError("Super expression must either be null or a function, not "+typeof b);a.prototype=Object.create(b&&b.prototype,{constructor:{value:a,enumerable:!1,writable:!0,configurable:!0}}),b&&(a.__proto__=b)},l=c.Plot,m=d.utils,n=e.DataProcessor,o=function(a){return a?a:null},p=function(a){return m.isArray(a)?0===a.length?[null]:a:[a]},q=function(a,b){return{type:a,x:b.x,y:b.y,color:b.color,guide:{color:b.colorGuide,size:b.sizeGuide},flip:b.flip,size:b.size}},r={SUCCESS:"SUCCESS",WARNING:"WARNING",FAIL:"FAIL"},s=function(){var b={};return h(b,r.SUCCESS,function(a){return a}),h(b,r.FAIL,function(a,b){throw new Error((b.messages||[]).join("\n")||"This configuration is not supported, See http://api.taucharts.com/basic/facet.html#easy-approach-for-creating-facet-chart")}),h(b,r.WARNING,function(b,c,d){var e=c.axis,f=c.indexMeasureAxis[0],g=b[f],h=a.without(b,g);h.push(g);var i=d[f][e]||{},j=d[d.length-1][e]||{};return d[d.length-1][e]=i,d[f][e]=j,h}),b}(),t={scatterplot:function(a){return g("ELEMENT.POINT",a)},line:function(b){var c=b.data,d=b.settings.log,e={none:function(){return null},horizontal:function(a){var b=m.isArray(a.x)?a.x:[a.x];return b[b.length-1]},vertical:function(a){var b=m.isArray(a.y)?a.y:[a.y];return b[b.length-1]},auto:function(a){var b,e=m.isArray(a.x)?a.x:[a.x],f=m.isArray(a.y)?a.y:[a.y],g=e[e.length-1],h=e.slice(0,e.length-1),i=f[f.length-1],j=f.slice(0,f.length-1),k=a.color,l=h.concat(j).concat([k]).filter(function(a){return null!==a}),o=-1,p=[[[g].concat(l),i],[[i].concat(l),g]],q=p.some(function(a,b){var e=a[0],f=a[1],g=n.isYFunctionOfX(c,e,[f]);return g.result?o=b:d(["Attempt to find a functional relation between",a[0]+" and "+a[1]+" is failed.","There are several "+g.error.keyY+" values (e.g. "+g.error.errY.join(",")+")","for ("+g.error.keyX+" = "+g.error.valX+")."].join(" ")),g.result});return q?b=p[o][0][0]:(d(["All attempts are failed.","Will orient line horizontally by default.","NOTE: the [scatterplot] chart is more convenient for that data."].join(" ")),b=g),b}},f=(b.lineOrientation||"auto").toLowerCase(),h=e.hasOwnProperty(f)?e[f]:e.auto,i=h(b);return null!==i&&(b.data=a(c).sortBy(i)),g("ELEMENT.LINE",b)},bar:function(a){return a.flip=!1,g("ELEMENT.INTERVAL",a)},horizontalBar:function(a){return a.flip=!0,g("ELEMENT.INTERVAL",a)}},u=function(b){function c(b){b=a.defaults(b,{autoResize:!0}),b.autoResize&&c.winAware.push(this),b.settings=this.setupSettings(b.settings),b.dimensions=this.setupMetaInfo(b.dimensions,b.data);var d=t[b.type];if(!a.isFunction(d))throw new Error("Chart type "+b.type+" is not supported. Use one of "+a.keys(t).join(", ")+".");j(Object.getPrototypeOf(c.prototype),"constructor",this).call(this,d(b))}return k(c,b),i(c,null,{destroy:{value:function(){var a=c.winAware.indexOf(this);-1!==a&&c.winAware.splice(a,1),j(Object.getPrototypeOf(c.prototype),"destroy",this).call(this)},writable:!0,enumerable:!0,configurable:!0}}),c}(l);u.resizeOnWindowEvent=function(){var a,b=function(){!a&&u.winAware.length&&(a=d(c))},c=function(){a=0;for(var b,c=0,d=u.winAware.length;d>c;c++)b=u.winAware[c],b.resize()},d=window.requestAnimationFrame||window.webkitRequestAnimationFrame||function(a){return setTimeout(a,17)};return b}(),u.winAware=[],window.addEventListener("resize",u.resizeOnWindowEvent),b.Chart=u}),e("elements/coords",["exports","../utils/utils-draw","../const","../utils/utils","../matrix"],function(b,c,d,e,f){var g=c.utilsDraw,h=d.CSS_PREFIX,i=e.utils,j=f.TMatrix,k={CROSS:function(b,c,d,e,f){var g=0===d.length?[null]:d,h=0===f.length?[null]:f.reverse(),i=function(a){return a instanceof Date?a.getTime():a};return a(h).map(function(b){return a(g).map(function(a){var d={};return c&&(d[c]=i(a)),e&&(d[e]=i(b)),d})})}},l=function(a){return k[a]||function(){return[[{}]]}},m=function(b,c,d){var e=a.defaults(i.clone(b),a.pick.apply(a,[c].concat(d)));return e.guide=a.extend(i.clone(c.guide),e.guide),e},n={walk:function(b,c){var d=a.defaults(b,{$where:{}}),e=a.any(d.unit,function(a){return 0===a.type.indexOf("COORDS.")}),f=l(e?"CROSS":""),g=d.scaleMeta(d.x,a.omit(d.guide.x,"tickLabel")).values,h=d.scaleMeta(d.y,a.omit(d.guide.y,"tickLabel")).values,i=new j(f(d,d.x,g,d.y,h)),k=new j(i.sizeR(),i.sizeC());return i.iterate(function(b,c,e){var f=a.extend({},d.$where,e),g=a(d.unit).map(function(b){return a.extend(m(b,d,["x","y"]),{$where:f})});k.setRC(b,c,g)}),d.$matrix=k,k.iterate(function(b,d,e){a.each(e,function(a){return c(a)})}),d},draw:function(a){var b=a.options,c=a.guide.padding;a.x.guide=a.guide.x,a.y.guide=a.guide.y;var d=b.left+c.l,e=b.top+c.t,f=b.width-(c.l+c.r),i=b.height-(c.t+c.b);a.x.scaleObj=a.x.scaleDim&&a.scaleTo(a.x.scaleDim,[0,f],a.x.guide),a.y.scaleObj=a.y.scaleDim&&a.scaleTo(a.y.scaleDim,[i,0],a.y.guide),a.x.guide.size=f,a.y.guide.size=i;var j=[0,i+a.guide.x.padding],k=[0-a.guide.y.padding,0],l=b.container.append("g").attr("class",h+"cell cell").attr("transform",g.translate(d,e)).datum({$where:a.$where});return a.x.guide.hide||g.fnDrawDimAxis.call(l,a.x,j,f),a.y.guide.hide||g.fnDrawDimAxis.call(l,a.y,k,i),g.fnDrawGrid.call(l,a,i,f)}};b.coords=n}),e("utils/css-class-map",["exports","../const"],function(a,b){function c(a){return g[a-1]||g[4]}function d(a){var b=0;return a>=160&&320>a?b=1:a>=320&&480>a?b=2:a>=480&&640>a?b=3:a>=640&&(b=4),h[b]}var e=b.CSS_PREFIX,f=[1,2,3,4,5],g=f.map(function(a){return e+"line-opacity-"+a}),h=f.map(function(a){return e+"line-width-"+a});a.getLineClassesByWidth=d,a.getLineClassesByCount=c}),e("elements/line",["exports","../const","../utils/css-class-map"],function(a,c,d){var e=c.CSS_PREFIX,f=d.getLineClassesByWidth,g=d.getLineClassesByCount,h=function(a){var c=a.options,d=c.xScale,h=c.yScale,i=c.color,j=a.groupBy(a.partition(),a.color.scaleDim),k=f(c.width),l=g(j.length),m=function(){this.attr("class",function(a){return""+e+"line i-role-element i-role-datum line "+i(a.key)+" "+k+" "+l});var a=this.selectAll("path").data(function(a){return[a.values]});a.call(p),a.enter().append("path").call(p),a.exit().remove()},n=function(b){var f=function(){return this.attr("r",1.5).attr("class",function(b){return""+e+"dot-line dot-line i-role-element "+e+"dot i-role-datum "+i(b[a.color.scaleDim])}).attr("cx",function(b){return d(b[a.x.scaleDim])}).attr("cy",function(b){return h(b[a.y.scaleDim])})},g=c.container.selectAll(".dot-line").data(b);g.call(f),g.exit().remove(),g.enter().append("circle").call(f)},o=b.svg.line().x(function(b){return d(b[a.x.scaleDim])}).y(function(b){return h(b[a.y.scaleDim])}),p=function(){this.attr("d",o)},q=j.reduce(function(a,b){var c=b.values;return 1===c.length&&a.push(c[0]),a},[]);q.length>0&&n(q);var r=c.container.selectAll(".line").data(j);r.call(m),r.enter().append("g").call(m),r.exit().remove()};a.line=h}),e("elements/point",["exports","../const"],function(a,b){var c=b.CSS_PREFIX,d=function(a){var b=a.options,d=b.xScale,e=b.yScale,f=b.color,g=b.sizeScale,h=function(){return this.attr("r",function(b){return g(b[a.size.scaleDim])}).attr("cx",function(b){return d(b[a.x.scaleDim])}).attr("cy",function(b){return e(b[a.y.scaleDim])}).attr("class",function(b){return""+c+"dot dot i-role-element i-role-datum "+f(b[a.color.scaleDim])})},i=b.container.selectAll(".dot").data(a.partition());i.call(h),i.exit().remove(),i.enter().append("circle").call(h)};a.point=d}),e("elements/interval",["exports","../utils/utils-draw","../const"],function(a,b,c){var d=function(a){return Array.isArray(a)?a:Array.from(a)},e=b.utilsDraw,f=c.CSS_PREFIX,g="i-role-bar-group",h=function(a){return"measure"===a.dimType},i=function(a){var b=a.domain().length,c=a.category.length,d=a.size/b,e=d/(c+1);return{tickWidth:d,intervalWidth:e,offsetCategory:e}},j={NORM:function(a,b,c,f,g,j,k){var l=1,m=Math.min.apply(Math,d(c.domain())),n=!isNaN(m),o=!n||0>=m?0:m,p=h(a.x),q=p?j:i({domain:b.domain,category:k,size:f}),r=q.tickWidth,s=q.intervalWidth,t=q.offsetCategory,u=function(c){return b(c[a.x.scaleDim])-r/2},v=n?function(b){var d=b[a.y.scaleDim],e=c(Math.max(o,d)),f=Math.abs(c(d)-c(o)),g=l>f;return g&&d>0?e-l:e}:function(b){return c(b[a.y.scaleDim])},w=function(){return s},x=n?function(b){var d=b[a.y.scaleDim],e=Math.abs(c(d)-c(o));return 0===d?e:Math.max(l,e)}:function(b){return g-c(b[a.y.scaleDim])},y=function(a,b){return e.translate(b*t+t/2,0)};return{calculateX:u,calculateY:v,calculateWidth:w,calculateHeight:x,calculateTranslate:y}},FLIP:function(a,b,c,f,g,j,k){var l=1,m=Math.min.apply(Math,d(b.domain())),n=!isNaN(m),o=!n||0>=m?0:m,p=h(a.y),q=p?j:i({domain:c.domain,category:k,size:g}),r=q.tickWidth,s=q.intervalWidth,t=q.offsetCategory,u=n?function(c){var d=c[a.x.scaleDim],e=Math.abs(b(d)-b(o)),f=b(Math.min(o,d)),g=e-l,h=d>0?l+g:0>d?0-l:0,i=0>g;return i?f+h:f}:0,v=function(b){return c(b[a.y.scaleDim])-r/2},w=n?function(c){var d=c[a.x.scaleDim],e=Math.abs(b(d)-b(o));return 0===d?e:Math.max(l,e)}:function(c){return b(c[a.x.scaleDim])},x=function(){return s},y=function(a,b){return e.translate(0,b*t+t/2)};return{calculateX:u,calculateY:v,calculateWidth:w,calculateHeight:x,calculateTranslate:y}}},k=function(a){var b=a.options,c=b.xScale,d=b.yScale,e=b.color,h=a.groupBy(a.partition(),a.color.scaleDim),i=j[a.flip?"FLIP":"NORM"],k=a.parentUnit.parentUnit||a.parentUnit,l=i(a,c,d,b.width,b.height,{tickWidth:5,intervalWidth:5,offsetCategory:0},a.groupBy(k.partition(),a.color.scaleDim)),m=l.calculateX,n=l.calculateY,o=l.calculateWidth,p=l.calculateHeight,q=l.calculateTranslate,r=function(){return this.attr("height",p).attr("width",o).attr("class",function(b){return"i-role-element i-role-datum bar "+f+"bar "+e(b[a.color.scaleDim])}).attr("x",m).attr("y",n)},s=function(){this.attr("class",g).attr("transform",q);var a=this.selectAll("bar").data(function(a){return a.values});a.call(r),a.enter().append("rect").call(r),a.exit().remove()},t=b.container.selectAll("."+g).data(h);t.call(s),t.enter().append("g").call(s),t.exit().remove()};a.interval=k}),e("elements/coords-parallel",["exports","../utils/utils-draw","../const","../utils/utils","../matrix"],function(c,d,e,f,g){var h=d.utilsDraw,i=(e.CSS_PREFIX,f.utils),j=g.TMatrix,k=function(b,c,d){var e=a.defaults(i.clone(b),a.pick.apply(a,[c].concat(d)));return e.guide=a.extend(i.clone(c.guide||{}),e.guide||{}),e},l={walk:function(b,c){var d=a.defaults(b,{$where:{}}),e=new j(1,1),f=new j(1,1);return e.iterate(function(b,c){var e=a.extend({},d.$where),g=a(d.unit).map(function(b){return a.extend(k(b,d,["x"]),{$where:e}) -});f.setRC(b,c,g)}),d.$matrix=f,f.iterate(function(b,d,e){a.each(e,function(a){return c(a)})}),d},draw:function(a){var c=a.options,d=a.guide.padding,e=c.left+d.l,f=c.top+d.t,g=c.width-(d.l+d.r),i=c.height-(d.t+d.b),j=a.x.map(function(b){return a.scaleTo(b,[i,0],{})}),k=c.container.append("g").attr("class","graphical-report__cell cell").attr("transform",h.translate(e,f)),l=function(a,b){return"translate("+a+","+b+")"},m=function(a){return"rotate("+a+")"},n=function(a,c){var d=this,e=b.svg.axis().scale(a).orient("left"),f=d.append("g").attr("class","y axis").attr("transform",l.apply(null,c)).call(e);f.selectAll(".tick text").attr("transform",m(0)).style("text-anchor","end")},o=g/(a.x.length-1);return j.forEach(function(a,b){n.call(k,a,[b*o,0])}),k.append("g").attr("class","grid").attr("transform",l(0,0))}};c.CoordsParallel=l}),e("elements/coords-parallel-line",["exports","../utils/utils-draw","../const"],function(a,c,d){var e=(c.utilsDraw,d.CSS_PREFIX,{draw:function(a){a.color=a.dimension(a.color,a);var c=a.guide.color||{},d=a.scaleColor(a.color.scaleDim,c.brewer,c),e=a.options,f=a.x.reduce(function(b,c){return b[c]=a.scaleTo(c,[e.height,0],{}),b},{}),g=b.nest().key(function(a){return a[d.dimension]}).entries(a.partition()).map(function(b){var c=b.values[0],d=[];return a.x.forEach(function(a){d.push({key:a,val:c[a]})}),d}),h=function(){this.attr("class",function(){return"graphical-report__line line color20-9"});var a=this.selectAll("path").data(function(a){return[a]});a.call(l),a.enter().append("path").call(l),a.exit().remove()},i=e.width/(a.x.length-1),j={};a.x.forEach(function(a,b){j[a]=b*i});var k=b.svg.line().x(function(a){return j[a.key]}).y(function(a){return f[a.key](a.val)}),l=function(){this.attr("d",k)},m=e.container.selectAll(".line").data(g);m.call(h),m.enter().append("g").call(h),m.exit().remove()}});a.CoordsParallelLine=e}),e("node-map",["exports","./elements/coords","./elements/line","./elements/point","./elements/interval","./utils/utils-draw","./elements/coords-parallel","./elements/coords-parallel-line"],function(b,c,d,e,f,g,h,i){var j=c.coords,k=d.line,l=e.point,m=f.interval,n=(g.utilsDraw,h.CoordsParallel),o=i.CoordsParallelLine,p=function(b,c){c.forEach(function(a){b[a]=b.dimension(b[a],b)});var d=b.options,e=d.width,f=d.height;b.x.guide=b.guide.x,b.y.guide=b.guide.y,b.options.xScale=b.x.scaleDim&&b.scaleTo(b.x.scaleDim,[0,e],b.x.guide),b.options.yScale=b.y.scaleDim&&b.scaleTo(b.y.scaleDim,[f,0],b.y.guide);var g=b.guide.color||{};if(b.options.color=b.scaleColor(b.color.scaleDim,g.brewer,g),b.size){var h=.5*a.min([b.guide.x.tickFontHeight,b.guide.y.tickFontHeight].filter(function(a){return 0!==a})),i=.5*a.min([b.guide.x.density,b.guide.y.density].filter(function(a){return 0!==a})),j=b.guide.size||{};b.options.sizeScale=b.scaleSize(b.size.scaleDim,[2,i,h],j)}return b},q={"COORDS.RECT":{walk:j.walk,draw:function(a,b){return a.x=a.dimension(a.x,a),a.y=a.dimension(a.y,a),j.draw(a,b)}},"ELEMENT.POINT":function(a){return l(p(a,["x","y","color","size"]))},"ELEMENT.LINE":function(a){return k(p(a,["x","y","color"]))},"ELEMENT.INTERVAL":function(a){return m(p(a,["x","y","color"]))},"COORDS.PARALLEL":n,"PARALLEL/ELEMENT.LINE":o};b.nodeMap=q}),e("tau.newCharts",["exports","./utils/utils-dom","./charts/tau.plot","./charts/tau.chart","./unit-domain-mixin","./unit-domain-period-generator","./dsl-reader","./spec-engine-factory","./layout-engine-factory","./formatter-registry","./node-map","./units-registry"],function(c,d,e,f,g,h,i,j,k,l,m,n){var o=d.utilsDom,p=e.Plot,q=f.Chart,r=g.UnitDomainMixin,s=h.UnitDomainPeriodGenerator,t=i.DSLReader,u=j.SpecEngineFactory,v=k.LayoutEngineFactory,w=l.FormatterRegistry,x=m.nodeMap,y=n.UnitsRegistry,z={},A={},B={UnitDomainMixin:r,UnitDomainPeriodGenerator:s,DSLReader:t,SpecEngineFactory:u,LayoutEngineFactory:v},C={UnitsRegistry:y,tickFormat:w,d3:b,_:a,tickPeriod:s,colorBrewers:{add:function(a,b){a in z||(z[a]=b)},get:function(a){return z[a]}},plugins:{add:function(a,b){if(a in A)throw new Error("Plugin is already registered.");A[a]=b},get:function(a){return A[a]}},globalSettings:{log:function(a,b){b=b||"INFO",Array.isArray(a)||(a=[a]),console[b.toLowerCase()].apply(console,a)},excludeNull:!0,specEngine:[{name:"COMPACT",width:600},{name:"AUTO",width:Number.MAX_VALUE}],fitSize:!0,layoutEngine:"EXTRACT",getAxisTickLabelSize:o.getAxisTickLabelSize,getScrollBarWidth:o.getScrollbarWidth,xAxisTickLabelLimit:100,yAxisTickLabelLimit:100,xTickWordWrapLinesLimit:2,yTickWordWrapLinesLimit:2,xTickWidth:9,yTickWidth:9,distToXAxisLabel:20,distToYAxisLabel:20,xAxisPadding:20,yAxisPadding:20,xFontLabelHeight:10,yFontLabelHeight:10,xDensityPadding:4,yDensityPadding:4,"xDensityPadding:measure":8,"yDensityPadding:measure":8,defaultFormats:{measure:"x-num-auto","measure:time":"x-time-auto","measure:time:year":"year","measure:time:quarter":"quarter","measure:time:month":"month","measure:time:week":"x-time-auto","measure:time:day":"x-time-auto","measure:time:hour":"x-time-auto","measure:time:min":"x-time-auto","measure:time:sec":"x-time-auto","measure:time:ms":"x-time-auto"}}};p.globalSettings=C.globalSettings,C.UnitsRegistry.add("COORDS.PARALLEL",x["COORDS.PARALLEL"]).add("PARALLEL/ELEMENT.LINE",x["PARALLEL/ELEMENT.LINE"]).add("COORDS.RECT",x["COORDS.RECT"]).add("ELEMENT.POINT",x["ELEMENT.POINT"]).add("ELEMENT.LINE",x["ELEMENT.LINE"]).add("ELEMENT.INTERVAL",x["ELEMENT.INTERVAL"]),c.Plot=p,c.Chart=q,c.__api__=B,c.api=C}),e("underscore",function(){return a}),e("d3",function(){return b}),d("tau.newCharts")}),function(a){if("function"==typeof define&&define.amd)define(["tauCharts"],function(b){return a(b)});else if("object"==typeof module&&module.exports){var b=require("tauCharts");module.exports=a(b)}else a(this.tauCharts)}(function(a){var b={YlGn:{3:["#f7fcb9","#addd8e","#31a354"],4:["#ffffcc","#c2e699","#78c679","#238443"],5:["#ffffcc","#c2e699","#78c679","#31a354","#006837"],6:["#ffffcc","#d9f0a3","#addd8e","#78c679","#31a354","#006837"],7:["#ffffcc","#d9f0a3","#addd8e","#78c679","#41ab5d","#238443","#005a32"],8:["#ffffe5","#f7fcb9","#d9f0a3","#addd8e","#78c679","#41ab5d","#238443","#005a32"],9:["#ffffe5","#f7fcb9","#d9f0a3","#addd8e","#78c679","#41ab5d","#238443","#006837","#004529"]},YlGnBu:{3:["#edf8b1","#7fcdbb","#2c7fb8"],4:["#ffffcc","#a1dab4","#41b6c4","#225ea8"],5:["#ffffcc","#a1dab4","#41b6c4","#2c7fb8","#253494"],6:["#ffffcc","#c7e9b4","#7fcdbb","#41b6c4","#2c7fb8","#253494"],7:["#ffffcc","#c7e9b4","#7fcdbb","#41b6c4","#1d91c0","#225ea8","#0c2c84"],8:["#ffffd9","#edf8b1","#c7e9b4","#7fcdbb","#41b6c4","#1d91c0","#225ea8","#0c2c84"],9:["#ffffd9","#edf8b1","#c7e9b4","#7fcdbb","#41b6c4","#1d91c0","#225ea8","#253494","#081d58"]},GnBu:{3:["#e0f3db","#a8ddb5","#43a2ca"],4:["#f0f9e8","#bae4bc","#7bccc4","#2b8cbe"],5:["#f0f9e8","#bae4bc","#7bccc4","#43a2ca","#0868ac"],6:["#f0f9e8","#ccebc5","#a8ddb5","#7bccc4","#43a2ca","#0868ac"],7:["#f0f9e8","#ccebc5","#a8ddb5","#7bccc4","#4eb3d3","#2b8cbe","#08589e"],8:["#f7fcf0","#e0f3db","#ccebc5","#a8ddb5","#7bccc4","#4eb3d3","#2b8cbe","#08589e"],9:["#f7fcf0","#e0f3db","#ccebc5","#a8ddb5","#7bccc4","#4eb3d3","#2b8cbe","#0868ac","#084081"]},BuGn:{3:["#e5f5f9","#99d8c9","#2ca25f"],4:["#edf8fb","#b2e2e2","#66c2a4","#238b45"],5:["#edf8fb","#b2e2e2","#66c2a4","#2ca25f","#006d2c"],6:["#edf8fb","#ccece6","#99d8c9","#66c2a4","#2ca25f","#006d2c"],7:["#edf8fb","#ccece6","#99d8c9","#66c2a4","#41ae76","#238b45","#005824"],8:["#f7fcfd","#e5f5f9","#ccece6","#99d8c9","#66c2a4","#41ae76","#238b45","#005824"],9:["#f7fcfd","#e5f5f9","#ccece6","#99d8c9","#66c2a4","#41ae76","#238b45","#006d2c","#00441b"]},PuBuGn:{3:["#ece2f0","#a6bddb","#1c9099"],4:["#f6eff7","#bdc9e1","#67a9cf","#02818a"],5:["#f6eff7","#bdc9e1","#67a9cf","#1c9099","#016c59"],6:["#f6eff7","#d0d1e6","#a6bddb","#67a9cf","#1c9099","#016c59"],7:["#f6eff7","#d0d1e6","#a6bddb","#67a9cf","#3690c0","#02818a","#016450"],8:["#fff7fb","#ece2f0","#d0d1e6","#a6bddb","#67a9cf","#3690c0","#02818a","#016450"],9:["#fff7fb","#ece2f0","#d0d1e6","#a6bddb","#67a9cf","#3690c0","#02818a","#016c59","#014636"]},PuBu:{3:["#ece7f2","#a6bddb","#2b8cbe"],4:["#f1eef6","#bdc9e1","#74a9cf","#0570b0"],5:["#f1eef6","#bdc9e1","#74a9cf","#2b8cbe","#045a8d"],6:["#f1eef6","#d0d1e6","#a6bddb","#74a9cf","#2b8cbe","#045a8d"],7:["#f1eef6","#d0d1e6","#a6bddb","#74a9cf","#3690c0","#0570b0","#034e7b"],8:["#fff7fb","#ece7f2","#d0d1e6","#a6bddb","#74a9cf","#3690c0","#0570b0","#034e7b"],9:["#fff7fb","#ece7f2","#d0d1e6","#a6bddb","#74a9cf","#3690c0","#0570b0","#045a8d","#023858"]},BuPu:{3:["#e0ecf4","#9ebcda","#8856a7"],4:["#edf8fb","#b3cde3","#8c96c6","#88419d"],5:["#edf8fb","#b3cde3","#8c96c6","#8856a7","#810f7c"],6:["#edf8fb","#bfd3e6","#9ebcda","#8c96c6","#8856a7","#810f7c"],7:["#edf8fb","#bfd3e6","#9ebcda","#8c96c6","#8c6bb1","#88419d","#6e016b"],8:["#f7fcfd","#e0ecf4","#bfd3e6","#9ebcda","#8c96c6","#8c6bb1","#88419d","#6e016b"],9:["#f7fcfd","#e0ecf4","#bfd3e6","#9ebcda","#8c96c6","#8c6bb1","#88419d","#810f7c","#4d004b"]},RdPu:{3:["#fde0dd","#fa9fb5","#c51b8a"],4:["#feebe2","#fbb4b9","#f768a1","#ae017e"],5:["#feebe2","#fbb4b9","#f768a1","#c51b8a","#7a0177"],6:["#feebe2","#fcc5c0","#fa9fb5","#f768a1","#c51b8a","#7a0177"],7:["#feebe2","#fcc5c0","#fa9fb5","#f768a1","#dd3497","#ae017e","#7a0177"],8:["#fff7f3","#fde0dd","#fcc5c0","#fa9fb5","#f768a1","#dd3497","#ae017e","#7a0177"],9:["#fff7f3","#fde0dd","#fcc5c0","#fa9fb5","#f768a1","#dd3497","#ae017e","#7a0177","#49006a"]},PuRd:{3:["#e7e1ef","#c994c7","#dd1c77"],4:["#f1eef6","#d7b5d8","#df65b0","#ce1256"],5:["#f1eef6","#d7b5d8","#df65b0","#dd1c77","#980043"],6:["#f1eef6","#d4b9da","#c994c7","#df65b0","#dd1c77","#980043"],7:["#f1eef6","#d4b9da","#c994c7","#df65b0","#e7298a","#ce1256","#91003f"],8:["#f7f4f9","#e7e1ef","#d4b9da","#c994c7","#df65b0","#e7298a","#ce1256","#91003f"],9:["#f7f4f9","#e7e1ef","#d4b9da","#c994c7","#df65b0","#e7298a","#ce1256","#980043","#67001f"]},OrRd:{3:["#fee8c8","#fdbb84","#e34a33"],4:["#fef0d9","#fdcc8a","#fc8d59","#d7301f"],5:["#fef0d9","#fdcc8a","#fc8d59","#e34a33","#b30000"],6:["#fef0d9","#fdd49e","#fdbb84","#fc8d59","#e34a33","#b30000"],7:["#fef0d9","#fdd49e","#fdbb84","#fc8d59","#ef6548","#d7301f","#990000"],8:["#fff7ec","#fee8c8","#fdd49e","#fdbb84","#fc8d59","#ef6548","#d7301f","#990000"],9:["#fff7ec","#fee8c8","#fdd49e","#fdbb84","#fc8d59","#ef6548","#d7301f","#b30000","#7f0000"]},YlOrRd:{3:["#ffeda0","#feb24c","#f03b20"],4:["#ffffb2","#fecc5c","#fd8d3c","#e31a1c"],5:["#ffffb2","#fecc5c","#fd8d3c","#f03b20","#bd0026"],6:["#ffffb2","#fed976","#feb24c","#fd8d3c","#f03b20","#bd0026"],7:["#ffffb2","#fed976","#feb24c","#fd8d3c","#fc4e2a","#e31a1c","#b10026"],8:["#ffffcc","#ffeda0","#fed976","#feb24c","#fd8d3c","#fc4e2a","#e31a1c","#b10026"],9:["#ffffcc","#ffeda0","#fed976","#feb24c","#fd8d3c","#fc4e2a","#e31a1c","#bd0026","#800026"]},YlOrBr:{3:["#fff7bc","#fec44f","#d95f0e"],4:["#ffffd4","#fed98e","#fe9929","#cc4c02"],5:["#ffffd4","#fed98e","#fe9929","#d95f0e","#993404"],6:["#ffffd4","#fee391","#fec44f","#fe9929","#d95f0e","#993404"],7:["#ffffd4","#fee391","#fec44f","#fe9929","#ec7014","#cc4c02","#8c2d04"],8:["#ffffe5","#fff7bc","#fee391","#fec44f","#fe9929","#ec7014","#cc4c02","#8c2d04"],9:["#ffffe5","#fff7bc","#fee391","#fec44f","#fe9929","#ec7014","#cc4c02","#993404","#662506"]},Purples:{3:["#efedf5","#bcbddc","#756bb1"],4:["#f2f0f7","#cbc9e2","#9e9ac8","#6a51a3"],5:["#f2f0f7","#cbc9e2","#9e9ac8","#756bb1","#54278f"],6:["#f2f0f7","#dadaeb","#bcbddc","#9e9ac8","#756bb1","#54278f"],7:["#f2f0f7","#dadaeb","#bcbddc","#9e9ac8","#807dba","#6a51a3","#4a1486"],8:["#fcfbfd","#efedf5","#dadaeb","#bcbddc","#9e9ac8","#807dba","#6a51a3","#4a1486"],9:["#fcfbfd","#efedf5","#dadaeb","#bcbddc","#9e9ac8","#807dba","#6a51a3","#54278f","#3f007d"]},Blues:{3:["#deebf7","#9ecae1","#3182bd"],4:["#eff3ff","#bdd7e7","#6baed6","#2171b5"],5:["#eff3ff","#bdd7e7","#6baed6","#3182bd","#08519c"],6:["#eff3ff","#c6dbef","#9ecae1","#6baed6","#3182bd","#08519c"],7:["#eff3ff","#c6dbef","#9ecae1","#6baed6","#4292c6","#2171b5","#084594"],8:["#f7fbff","#deebf7","#c6dbef","#9ecae1","#6baed6","#4292c6","#2171b5","#084594"],9:["#f7fbff","#deebf7","#c6dbef","#9ecae1","#6baed6","#4292c6","#2171b5","#08519c","#08306b"]},Greens:{3:["#e5f5e0","#a1d99b","#31a354"],4:["#edf8e9","#bae4b3","#74c476","#238b45"],5:["#edf8e9","#bae4b3","#74c476","#31a354","#006d2c"],6:["#edf8e9","#c7e9c0","#a1d99b","#74c476","#31a354","#006d2c"],7:["#edf8e9","#c7e9c0","#a1d99b","#74c476","#41ab5d","#238b45","#005a32"],8:["#f7fcf5","#e5f5e0","#c7e9c0","#a1d99b","#74c476","#41ab5d","#238b45","#005a32"],9:["#f7fcf5","#e5f5e0","#c7e9c0","#a1d99b","#74c476","#41ab5d","#238b45","#006d2c","#00441b"]},Oranges:{3:["#fee6ce","#fdae6b","#e6550d"],4:["#feedde","#fdbe85","#fd8d3c","#d94701"],5:["#feedde","#fdbe85","#fd8d3c","#e6550d","#a63603"],6:["#feedde","#fdd0a2","#fdae6b","#fd8d3c","#e6550d","#a63603"],7:["#feedde","#fdd0a2","#fdae6b","#fd8d3c","#f16913","#d94801","#8c2d04"],8:["#fff5eb","#fee6ce","#fdd0a2","#fdae6b","#fd8d3c","#f16913","#d94801","#8c2d04"],9:["#fff5eb","#fee6ce","#fdd0a2","#fdae6b","#fd8d3c","#f16913","#d94801","#a63603","#7f2704"]},Reds:{3:["#fee0d2","#fc9272","#de2d26"],4:["#fee5d9","#fcae91","#fb6a4a","#cb181d"],5:["#fee5d9","#fcae91","#fb6a4a","#de2d26","#a50f15"],6:["#fee5d9","#fcbba1","#fc9272","#fb6a4a","#de2d26","#a50f15"],7:["#fee5d9","#fcbba1","#fc9272","#fb6a4a","#ef3b2c","#cb181d","#99000d"],8:["#fff5f0","#fee0d2","#fcbba1","#fc9272","#fb6a4a","#ef3b2c","#cb181d","#99000d"],9:["#fff5f0","#fee0d2","#fcbba1","#fc9272","#fb6a4a","#ef3b2c","#cb181d","#a50f15","#67000d"]},Greys:{3:["#f0f0f0","#bdbdbd","#636363"],4:["#f7f7f7","#cccccc","#969696","#525252"],5:["#f7f7f7","#cccccc","#969696","#636363","#252525"],6:["#f7f7f7","#d9d9d9","#bdbdbd","#969696","#636363","#252525"],7:["#f7f7f7","#d9d9d9","#bdbdbd","#969696","#737373","#525252","#252525"],8:["#ffffff","#f0f0f0","#d9d9d9","#bdbdbd","#969696","#737373","#525252","#252525"],9:["#ffffff","#f0f0f0","#d9d9d9","#bdbdbd","#969696","#737373","#525252","#252525","#000000"]},PuOr:{3:["#f1a340","#f7f7f7","#998ec3"],4:["#e66101","#fdb863","#b2abd2","#5e3c99"],5:["#e66101","#fdb863","#f7f7f7","#b2abd2","#5e3c99"],6:["#b35806","#f1a340","#fee0b6","#d8daeb","#998ec3","#542788"],7:["#b35806","#f1a340","#fee0b6","#f7f7f7","#d8daeb","#998ec3","#542788"],8:["#b35806","#e08214","#fdb863","#fee0b6","#d8daeb","#b2abd2","#8073ac","#542788"],9:["#b35806","#e08214","#fdb863","#fee0b6","#f7f7f7","#d8daeb","#b2abd2","#8073ac","#542788"],10:["#7f3b08","#b35806","#e08214","#fdb863","#fee0b6","#d8daeb","#b2abd2","#8073ac","#542788","#2d004b"],11:["#7f3b08","#b35806","#e08214","#fdb863","#fee0b6","#f7f7f7","#d8daeb","#b2abd2","#8073ac","#542788","#2d004b"]},BrBG:{3:["#d8b365","#f5f5f5","#5ab4ac"],4:["#a6611a","#dfc27d","#80cdc1","#018571"],5:["#a6611a","#dfc27d","#f5f5f5","#80cdc1","#018571"],6:["#8c510a","#d8b365","#f6e8c3","#c7eae5","#5ab4ac","#01665e"],7:["#8c510a","#d8b365","#f6e8c3","#f5f5f5","#c7eae5","#5ab4ac","#01665e"],8:["#8c510a","#bf812d","#dfc27d","#f6e8c3","#c7eae5","#80cdc1","#35978f","#01665e"],9:["#8c510a","#bf812d","#dfc27d","#f6e8c3","#f5f5f5","#c7eae5","#80cdc1","#35978f","#01665e"],10:["#543005","#8c510a","#bf812d","#dfc27d","#f6e8c3","#c7eae5","#80cdc1","#35978f","#01665e","#003c30"],11:["#543005","#8c510a","#bf812d","#dfc27d","#f6e8c3","#f5f5f5","#c7eae5","#80cdc1","#35978f","#01665e","#003c30"]},PRGn:{3:["#af8dc3","#f7f7f7","#7fbf7b"],4:["#7b3294","#c2a5cf","#a6dba0","#008837"],5:["#7b3294","#c2a5cf","#f7f7f7","#a6dba0","#008837"],6:["#762a83","#af8dc3","#e7d4e8","#d9f0d3","#7fbf7b","#1b7837"],7:["#762a83","#af8dc3","#e7d4e8","#f7f7f7","#d9f0d3","#7fbf7b","#1b7837"],8:["#762a83","#9970ab","#c2a5cf","#e7d4e8","#d9f0d3","#a6dba0","#5aae61","#1b7837"],9:["#762a83","#9970ab","#c2a5cf","#e7d4e8","#f7f7f7","#d9f0d3","#a6dba0","#5aae61","#1b7837"],10:["#40004b","#762a83","#9970ab","#c2a5cf","#e7d4e8","#d9f0d3","#a6dba0","#5aae61","#1b7837","#00441b"],11:["#40004b","#762a83","#9970ab","#c2a5cf","#e7d4e8","#f7f7f7","#d9f0d3","#a6dba0","#5aae61","#1b7837","#00441b"]},PiYG:{3:["#e9a3c9","#f7f7f7","#a1d76a"],4:["#d01c8b","#f1b6da","#b8e186","#4dac26"],5:["#d01c8b","#f1b6da","#f7f7f7","#b8e186","#4dac26"],6:["#c51b7d","#e9a3c9","#fde0ef","#e6f5d0","#a1d76a","#4d9221"],7:["#c51b7d","#e9a3c9","#fde0ef","#f7f7f7","#e6f5d0","#a1d76a","#4d9221"],8:["#c51b7d","#de77ae","#f1b6da","#fde0ef","#e6f5d0","#b8e186","#7fbc41","#4d9221"],9:["#c51b7d","#de77ae","#f1b6da","#fde0ef","#f7f7f7","#e6f5d0","#b8e186","#7fbc41","#4d9221"],10:["#8e0152","#c51b7d","#de77ae","#f1b6da","#fde0ef","#e6f5d0","#b8e186","#7fbc41","#4d9221","#276419"],11:["#8e0152","#c51b7d","#de77ae","#f1b6da","#fde0ef","#f7f7f7","#e6f5d0","#b8e186","#7fbc41","#4d9221","#276419"]},RdBu:{3:["#ef8a62","#f7f7f7","#67a9cf"],4:["#ca0020","#f4a582","#92c5de","#0571b0"],5:["#ca0020","#f4a582","#f7f7f7","#92c5de","#0571b0"],6:["#b2182b","#ef8a62","#fddbc7","#d1e5f0","#67a9cf","#2166ac"],7:["#b2182b","#ef8a62","#fddbc7","#f7f7f7","#d1e5f0","#67a9cf","#2166ac"],8:["#b2182b","#d6604d","#f4a582","#fddbc7","#d1e5f0","#92c5de","#4393c3","#2166ac"],9:["#b2182b","#d6604d","#f4a582","#fddbc7","#f7f7f7","#d1e5f0","#92c5de","#4393c3","#2166ac"],10:["#67001f","#b2182b","#d6604d","#f4a582","#fddbc7","#d1e5f0","#92c5de","#4393c3","#2166ac","#053061"],11:["#67001f","#b2182b","#d6604d","#f4a582","#fddbc7","#f7f7f7","#d1e5f0","#92c5de","#4393c3","#2166ac","#053061"]},RdGy:{3:["#ef8a62","#ffffff","#999999"],4:["#ca0020","#f4a582","#bababa","#404040"],5:["#ca0020","#f4a582","#ffffff","#bababa","#404040"],6:["#b2182b","#ef8a62","#fddbc7","#e0e0e0","#999999","#4d4d4d"],7:["#b2182b","#ef8a62","#fddbc7","#ffffff","#e0e0e0","#999999","#4d4d4d"],8:["#b2182b","#d6604d","#f4a582","#fddbc7","#e0e0e0","#bababa","#878787","#4d4d4d"],9:["#b2182b","#d6604d","#f4a582","#fddbc7","#ffffff","#e0e0e0","#bababa","#878787","#4d4d4d"],10:["#67001f","#b2182b","#d6604d","#f4a582","#fddbc7","#e0e0e0","#bababa","#878787","#4d4d4d","#1a1a1a"],11:["#67001f","#b2182b","#d6604d","#f4a582","#fddbc7","#ffffff","#e0e0e0","#bababa","#878787","#4d4d4d","#1a1a1a"]},RdYlBu:{3:["#fc8d59","#ffffbf","#91bfdb"],4:["#d7191c","#fdae61","#abd9e9","#2c7bb6"],5:["#d7191c","#fdae61","#ffffbf","#abd9e9","#2c7bb6"],6:["#d73027","#fc8d59","#fee090","#e0f3f8","#91bfdb","#4575b4"],7:["#d73027","#fc8d59","#fee090","#ffffbf","#e0f3f8","#91bfdb","#4575b4"],8:["#d73027","#f46d43","#fdae61","#fee090","#e0f3f8","#abd9e9","#74add1","#4575b4"],9:["#d73027","#f46d43","#fdae61","#fee090","#ffffbf","#e0f3f8","#abd9e9","#74add1","#4575b4"],10:["#a50026","#d73027","#f46d43","#fdae61","#fee090","#e0f3f8","#abd9e9","#74add1","#4575b4","#313695"],11:["#a50026","#d73027","#f46d43","#fdae61","#fee090","#ffffbf","#e0f3f8","#abd9e9","#74add1","#4575b4","#313695"]},Spectral:{3:["#fc8d59","#ffffbf","#99d594"],4:["#d7191c","#fdae61","#abdda4","#2b83ba"],5:["#d7191c","#fdae61","#ffffbf","#abdda4","#2b83ba"],6:["#d53e4f","#fc8d59","#fee08b","#e6f598","#99d594","#3288bd"],7:["#d53e4f","#fc8d59","#fee08b","#ffffbf","#e6f598","#99d594","#3288bd"],8:["#d53e4f","#f46d43","#fdae61","#fee08b","#e6f598","#abdda4","#66c2a5","#3288bd"],9:["#d53e4f","#f46d43","#fdae61","#fee08b","#ffffbf","#e6f598","#abdda4","#66c2a5","#3288bd"],10:["#9e0142","#d53e4f","#f46d43","#fdae61","#fee08b","#e6f598","#abdda4","#66c2a5","#3288bd","#5e4fa2"],11:["#9e0142","#d53e4f","#f46d43","#fdae61","#fee08b","#ffffbf","#e6f598","#abdda4","#66c2a5","#3288bd","#5e4fa2"]},RdYlGn:{3:["#fc8d59","#ffffbf","#91cf60"],4:["#d7191c","#fdae61","#a6d96a","#1a9641"],5:["#d7191c","#fdae61","#ffffbf","#a6d96a","#1a9641"],6:["#d73027","#fc8d59","#fee08b","#d9ef8b","#91cf60","#1a9850"],7:["#d73027","#fc8d59","#fee08b","#ffffbf","#d9ef8b","#91cf60","#1a9850"],8:["#d73027","#f46d43","#fdae61","#fee08b","#d9ef8b","#a6d96a","#66bd63","#1a9850"],9:["#d73027","#f46d43","#fdae61","#fee08b","#ffffbf","#d9ef8b","#a6d96a","#66bd63","#1a9850"],10:["#a50026","#d73027","#f46d43","#fdae61","#fee08b","#d9ef8b","#a6d96a","#66bd63","#1a9850","#006837"],11:["#a50026","#d73027","#f46d43","#fdae61","#fee08b","#ffffbf","#d9ef8b","#a6d96a","#66bd63","#1a9850","#006837"]},Accent:{3:["#7fc97f","#beaed4","#fdc086"],4:["#7fc97f","#beaed4","#fdc086","#ffff99"],5:["#7fc97f","#beaed4","#fdc086","#ffff99","#386cb0"],6:["#7fc97f","#beaed4","#fdc086","#ffff99","#386cb0","#f0027f"],7:["#7fc97f","#beaed4","#fdc086","#ffff99","#386cb0","#f0027f","#bf5b17"],8:["#7fc97f","#beaed4","#fdc086","#ffff99","#386cb0","#f0027f","#bf5b17","#666666"]},Dark2:{3:["#1b9e77","#d95f02","#7570b3"],4:["#1b9e77","#d95f02","#7570b3","#e7298a"],5:["#1b9e77","#d95f02","#7570b3","#e7298a","#66a61e"],6:["#1b9e77","#d95f02","#7570b3","#e7298a","#66a61e","#e6ab02"],7:["#1b9e77","#d95f02","#7570b3","#e7298a","#66a61e","#e6ab02","#a6761d"],8:["#1b9e77","#d95f02","#7570b3","#e7298a","#66a61e","#e6ab02","#a6761d","#666666"]},Paired:{3:["#a6cee3","#1f78b4","#b2df8a"],4:["#a6cee3","#1f78b4","#b2df8a","#33a02c"],5:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99"],6:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c"],7:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f"],8:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f","#ff7f00"],9:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f","#ff7f00","#cab2d6"],10:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f","#ff7f00","#cab2d6","#6a3d9a"],11:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f","#ff7f00","#cab2d6","#6a3d9a","#ffff99"],12:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f","#ff7f00","#cab2d6","#6a3d9a","#ffff99","#b15928"]},Pastel1:{3:["#fbb4ae","#b3cde3","#ccebc5"],4:["#fbb4ae","#b3cde3","#ccebc5","#decbe4"],5:["#fbb4ae","#b3cde3","#ccebc5","#decbe4","#fed9a6"],6:["#fbb4ae","#b3cde3","#ccebc5","#decbe4","#fed9a6","#ffffcc"],7:["#fbb4ae","#b3cde3","#ccebc5","#decbe4","#fed9a6","#ffffcc","#e5d8bd"],8:["#fbb4ae","#b3cde3","#ccebc5","#decbe4","#fed9a6","#ffffcc","#e5d8bd","#fddaec"],9:["#fbb4ae","#b3cde3","#ccebc5","#decbe4","#fed9a6","#ffffcc","#e5d8bd","#fddaec","#f2f2f2"]},Pastel2:{3:["#b3e2cd","#fdcdac","#cbd5e8"],4:["#b3e2cd","#fdcdac","#cbd5e8","#f4cae4"],5:["#b3e2cd","#fdcdac","#cbd5e8","#f4cae4","#e6f5c9"],6:["#b3e2cd","#fdcdac","#cbd5e8","#f4cae4","#e6f5c9","#fff2ae"],7:["#b3e2cd","#fdcdac","#cbd5e8","#f4cae4","#e6f5c9","#fff2ae","#f1e2cc"],8:["#b3e2cd","#fdcdac","#cbd5e8","#f4cae4","#e6f5c9","#fff2ae","#f1e2cc","#cccccc"]},Set1:{3:["#e41a1c","#377eb8","#4daf4a"],4:["#e41a1c","#377eb8","#4daf4a","#984ea3"],5:["#e41a1c","#377eb8","#4daf4a","#984ea3","#ff7f00"],6:["#e41a1c","#377eb8","#4daf4a","#984ea3","#ff7f00","#ffff33"],7:["#e41a1c","#377eb8","#4daf4a","#984ea3","#ff7f00","#ffff33","#a65628"],8:["#e41a1c","#377eb8","#4daf4a","#984ea3","#ff7f00","#ffff33","#a65628","#f781bf"],9:["#e41a1c","#377eb8","#4daf4a","#984ea3","#ff7f00","#ffff33","#a65628","#f781bf","#999999"]},Set2:{3:["#66c2a5","#fc8d62","#8da0cb"],4:["#66c2a5","#fc8d62","#8da0cb","#e78ac3"],5:["#66c2a5","#fc8d62","#8da0cb","#e78ac3","#a6d854"],6:["#66c2a5","#fc8d62","#8da0cb","#e78ac3","#a6d854","#ffd92f"],7:["#66c2a5","#fc8d62","#8da0cb","#e78ac3","#a6d854","#ffd92f","#e5c494"],8:["#66c2a5","#fc8d62","#8da0cb","#e78ac3","#a6d854","#ffd92f","#e5c494","#b3b3b3"]},Set3:{3:["#8dd3c7","#ffffb3","#bebada"],4:["#8dd3c7","#ffffb3","#bebada","#fb8072"],5:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3"],6:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462"],7:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69"],8:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69","#fccde5"],9:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69","#fccde5","#d9d9d9"],10:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69","#fccde5","#d9d9d9","#bc80bd"],11:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69","#fccde5","#d9d9d9","#bc80bd","#ccebc5"],12:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69","#fccde5","#d9d9d9","#bc80bd","#ccebc5","#ffed6f"]}},c=function(a,c){return b[a][c].map(function(b,d){return a+" q"+d+"-"+c})};return a.api.colorBrewers.add("tauBrewer",c),c}),function(a,b){if("function"==typeof define&&define.amd)define(["tauCharts"],function(a){return b(a)});else if("object"==typeof module&&module.exports){{require("tauCharts")}module.exports=b(tauCharts)}else b(a.tauCharts)}(this,function(a){var b,c,d;!function(a){function e(a,b){return u.call(a,b)}function f(a,b){var c,d,e,f,g,h,i,j,k,l,m,n=b&&b.split("/"),o=s.map,p=o&&o["*"]||{};if(a&&"."===a.charAt(0))if(b){for(n=n.slice(0,n.length-1),a=a.split("/"),g=a.length-1,s.nodeIdCompat&&w.test(a[g])&&(a[g]=a[g].replace(w,"")),a=n.concat(a),k=0;k0&&(a.splice(k-1,2),k-=2)}a=a.join("/")}else 0===a.indexOf("./")&&(a=a.substring(2));if((n||p)&&o){for(c=a.split("/"),k=c.length;k>0;k-=1){if(d=c.slice(0,k).join("/"),n)for(l=n.length;l>0;l-=1)if(e=o[n.slice(0,l).join("/")],e&&(e=e[d])){f=e,h=k;break}if(f)break;!i&&p&&p[d]&&(i=p[d],j=k)}!f&&i&&(f=i,h=j),f&&(c.splice(0,h,f),a=c.join("/"))}return a}function g(b,c){return function(){var d=v.call(arguments,0);return"string"!=typeof d[0]&&1===d.length&&d.push(null),n.apply(a,d.concat([b,c]))}}function h(a){return function(b){return f(b,a)}}function i(a){return function(b){q[a]=b}}function j(b){if(e(r,b)){var c=r[b];delete r[b],t[b]=!0,m.apply(a,c)}if(!e(q,b)&&!e(t,b))throw new Error("No "+b);return q[b]}function k(a){var b,c=a?a.indexOf("!"):-1;return c>-1&&(b=a.substring(0,c),a=a.substring(c+1,a.length)),[b,a]}function l(a){return function(){return s&&s.config&&s.config[a]||{}}}var m,n,o,p,q={},r={},s={},t={},u=Object.prototype.hasOwnProperty,v=[].slice,w=/\.js$/;o=function(a,b){var c,d=k(a),e=d[0];return a=d[1],e&&(e=f(e,b),c=j(e)),e?a=c&&c.normalize?c.normalize(a,h(b)):f(a,b):(a=f(a,b),d=k(a),e=d[0],a=d[1],e&&(c=j(e))),{f:e?e+"!"+a:a,n:a,pr:e,p:c}},p={require:function(a){return g(a)},exports:function(a){var b=q[a];return"undefined"!=typeof b?b:q[a]={}},module:function(a){return{id:a,uri:"",exports:q[a],config:l(a)}}},m=function(b,c,d,f){var h,k,l,m,n,s,u=[],v=typeof d;if(f=f||b,"undefined"===v||"function"===v){for(c=!c.length&&d.length?["require","exports","module"]:c,n=0;n255?255:this.r,this.g=this.g<0||isNaN(this.g)?0:this.g>255?255:this.g,this.b=this.b<0||isNaN(this.b)?0:this.b>255?255:this.b,this.toRGB=function(){return"rgb("+this.r+", "+this.g+", "+this.b+")"},this.toHex=function(){var a=this.r.toString(16),b=this.g.toString(16),c=this.b.toString(16);return 1==a.length&&(a="0"+a),1==b.length&&(b="0"+b),1==c.length&&(c="0"+c),"#"+a+b+c},this.getHelpXML=function(){for(var a=new Array,d=0;d "+k.toRGB()+" -> "+k.toHex());j.appendChild(l),j.appendChild(m),i.appendChild(j)}catch(n){}return i}}"undefined"!=typeof d&&d.amd?d("../bower_components/canvg/rgbcolor",[],function(){return b}):"undefined"!=typeof module&&module.exports&&(module.exports=b),a.RGBColor=b}("undefined"!=typeof window?window:this),function(a){function b(a,b,d,f){var g=document.getElementById(a),h=g.naturalWidth,i=g.naturalHeight,j=document.getElementById(b); -j.style.width=h+"px",j.style.height=i+"px",j.width=h,j.height=i;var k=j.getContext("2d");k.clearRect(0,0,h,i),k.drawImage(g,0,0),isNaN(d)||1>d||(f?c(b,0,0,h,i,d):e(b,0,0,h,i,d))}function c(a,b,c,d,e,i){if(!(isNaN(i)||1>i)){i|=0;var j,k=document.getElementById(a),l=k.getContext("2d");try{try{j=l.getImageData(b,c,d,e)}catch(m){try{netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead"),j=l.getImageData(b,c,d,e)}catch(m){throw alert("Cannot access local image"),new Error("unable to access local image data: "+m)}}}catch(m){throw alert("Cannot access image"),new Error("unable to access image data: "+m)}var n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L=j.data,M=i+i+1,N=d-1,O=e-1,P=i+1,Q=P*(P+1)/2,R=new f,S=R;for(p=1;M>p;p++)if(S=S.next=new f,p==P)var T=S;S.next=R;var U=null,V=null;t=s=0;var W=g[i],X=h[i];for(o=0;e>o;o++){for(C=D=E=F=u=v=w=x=0,y=P*(G=L[s]),z=P*(H=L[s+1]),A=P*(I=L[s+2]),B=P*(J=L[s+3]),u+=Q*G,v+=Q*H,w+=Q*I,x+=Q*J,S=R,p=0;P>p;p++)S.r=G,S.g=H,S.b=I,S.a=J,S=S.next;for(p=1;P>p;p++)q=s+((p>N?N:p)<<2),u+=(S.r=G=L[q])*(K=P-p),v+=(S.g=H=L[q+1])*K,w+=(S.b=I=L[q+2])*K,x+=(S.a=J=L[q+3])*K,C+=G,D+=H,E+=I,F+=J,S=S.next;for(U=R,V=T,n=0;d>n;n++)L[s+3]=J=x*W>>X,0!=J?(J=255/J,L[s]=(u*W>>X)*J,L[s+1]=(v*W>>X)*J,L[s+2]=(w*W>>X)*J):L[s]=L[s+1]=L[s+2]=0,u-=y,v-=z,w-=A,x-=B,y-=U.r,z-=U.g,A-=U.b,B-=U.a,q=t+((q=n+i+1)n;n++){for(D=E=F=C=v=w=x=u=0,s=n<<2,y=P*(G=L[s]),z=P*(H=L[s+1]),A=P*(I=L[s+2]),B=P*(J=L[s+3]),u+=Q*G,v+=Q*H,w+=Q*I,x+=Q*J,S=R,p=0;P>p;p++)S.r=G,S.g=H,S.b=I,S.a=J,S=S.next;for(r=d,p=1;i>=p;p++)s=r+n<<2,u+=(S.r=G=L[s])*(K=P-p),v+=(S.g=H=L[s+1])*K,w+=(S.b=I=L[s+2])*K,x+=(S.a=J=L[s+3])*K,C+=G,D+=H,E+=I,F+=J,S=S.next,O>p&&(r+=d);for(s=n,U=R,V=T,o=0;e>o;o++)q=s<<2,L[q+3]=J=x*W>>X,J>0?(J=255/J,L[q]=(u*W>>X)*J,L[q+1]=(v*W>>X)*J,L[q+2]=(w*W>>X)*J):L[q]=L[q+1]=L[q+2]=0,u-=y,v-=z,w-=A,x-=B,y-=U.r,z-=U.g,A-=U.b,B-=U.a,q=n+((q=o+P)i)){i|=0;var j,k=document.getElementById(a),l=k.getContext("2d");try{try{j=l.getImageData(b,c,d,e)}catch(m){try{netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead"),j=l.getImageData(b,c,d,e)}catch(m){throw alert("Cannot access local image"),new Error("unable to access local image data: "+m)}}}catch(m){throw alert("Cannot access image"),new Error("unable to access image data: "+m)}var n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H=j.data,I=i+i+1,J=d-1,K=e-1,L=i+1,M=L*(L+1)/2,N=new f,O=N;for(p=1;I>p;p++)if(O=O.next=new f,p==L)var P=O;O.next=N;var Q=null,R=null;t=s=0;var S=g[i],T=h[i];for(o=0;e>o;o++){for(A=B=C=u=v=w=0,x=L*(D=H[s]),y=L*(E=H[s+1]),z=L*(F=H[s+2]),u+=M*D,v+=M*E,w+=M*F,O=N,p=0;L>p;p++)O.r=D,O.g=E,O.b=F,O=O.next;for(p=1;L>p;p++)q=s+((p>J?J:p)<<2),u+=(O.r=D=H[q])*(G=L-p),v+=(O.g=E=H[q+1])*G,w+=(O.b=F=H[q+2])*G,A+=D,B+=E,C+=F,O=O.next;for(Q=N,R=P,n=0;d>n;n++)H[s]=u*S>>T,H[s+1]=v*S>>T,H[s+2]=w*S>>T,u-=x,v-=y,w-=z,x-=Q.r,y-=Q.g,z-=Q.b,q=t+((q=n+i+1)n;n++){for(B=C=A=v=w=u=0,s=n<<2,x=L*(D=H[s]),y=L*(E=H[s+1]),z=L*(F=H[s+2]),u+=M*D,v+=M*E,w+=M*F,O=N,p=0;L>p;p++)O.r=D,O.g=E,O.b=F,O=O.next;for(r=d,p=1;i>=p;p++)s=r+n<<2,u+=(O.r=D=H[s])*(G=L-p),v+=(O.g=E=H[s+1])*G,w+=(O.b=F=H[s+2])*G,A+=D,B+=E,C+=F,O=O.next,K>p&&(r+=d);for(s=n,Q=N,R=P,o=0;e>o;o++)q=s<<2,H[q]=u*S>>T,H[q+1]=v*S>>T,H[q+2]=w*S>>T,u-=x,v-=y,w-=z,x-=Q.r,y-=Q.g,z-=Q.b,q=n+((q=o+L)~]/g," "),a=a.replace(/[#\.]/g," "),c(n,2),b.join("")}function d(d){var f={opts:d};f.FRAMERATE=30,f.MAX_VIRTUAL_PIXELS=3e4,f.log=function(){},1==f.opts.log&&"undefined"!=typeof console&&(f.log=function(a){console.log(a)}),f.init=function(a){var b=0;f.UniqueId=function(){return b++,"canvg"+b},f.Definitions={},f.Styles={},f.StylesSpecificity={},f.Animations=[],f.Images=[],f.ctx=a,f.ViewPort=new function(){this.viewPorts=[],this.Clear=function(){this.viewPorts=[]},this.SetCurrent=function(a,b){this.viewPorts.push({width:a,height:b})},this.RemoveCurrent=function(){this.viewPorts.pop()},this.Current=function(){return this.viewPorts[this.viewPorts.length-1]},this.width=function(){return this.Current().width},this.height=function(){return this.Current().height},this.ComputeSize=function(a){return null!=a&&"number"==typeof a?a:"x"==a?this.width():"y"==a?this.height():Math.sqrt(Math.pow(this.width(),2)+Math.pow(this.height(),2))/Math.sqrt(2)}}},f.init(),f.ImagesLoaded=function(){for(var a=0;a]*>/,"");var b=new ActiveXObject("Microsoft.XMLDOM");return b.async="false",b.loadXML(a),b},f.Property=function(a,b){this.name=a,this.value=b},f.Property.prototype.getValue=function(){return this.value},f.Property.prototype.hasValue=function(){return null!=this.value&&""!==this.value},f.Property.prototype.numValue=function(){if(!this.hasValue())return 0;var a=parseFloat(this.value);return(this.value+"").match(/%$/)&&(a/=100),a},f.Property.prototype.valueOrDefault=function(a){return this.hasValue()?this.value:a},f.Property.prototype.numValueOrDefault=function(a){return this.hasValue()?this.numValue():a},f.Property.prototype.addOpacity=function(b){var c=this.value;if(null!=b.value&&""!=b.value&&"string"==typeof this.value){var d=new a(this.value);d.ok&&(c="rgba("+d.r+", "+d.g+", "+d.b+", "+b.numValue()+")")}return new f.Property(this.name,c)},f.Property.prototype.getDefinition=function(){var a=this.value.match(/#([^\)'"]+)/);return a&&(a=a[1]),a||(a=this.value),f.Definitions[a]},f.Property.prototype.isUrlDefinition=function(){return 0==this.value.indexOf("url(")},f.Property.prototype.getFillStyleDefinition=function(a,b){var c=this.getDefinition();if(null!=c&&c.createGradient)return c.createGradient(f.ctx,a,b);if(null!=c&&c.createPattern){if(c.getHrefAttribute().hasValue()){var d=c.attribute("patternTransform");c=c.getHrefAttribute().getDefinition(),d.hasValue()&&(c.attribute("patternTransform",!0).value=d.value)}return c.createPattern(f.ctx,a)}return null},f.Property.prototype.getDPI=function(){return 96},f.Property.prototype.getEM=function(a){var b=12,c=new f.Property("fontSize",f.Font.Parse(f.ctx.font).fontSize);return c.hasValue()&&(b=c.toPixels(a)),b},f.Property.prototype.getUnits=function(){var a=this.value+"";return a.replace(/[0-9\.\-]/g,"")},f.Property.prototype.toPixels=function(a,b){if(!this.hasValue())return 0;var c=this.value+"";if(c.match(/em$/))return this.numValue()*this.getEM(a);if(c.match(/ex$/))return this.numValue()*this.getEM(a)/2;if(c.match(/px$/))return this.numValue();if(c.match(/pt$/))return this.numValue()*this.getDPI(a)*(1/72);if(c.match(/pc$/))return 15*this.numValue();if(c.match(/cm$/))return this.numValue()*this.getDPI(a)/2.54;if(c.match(/mm$/))return this.numValue()*this.getDPI(a)/25.4;if(c.match(/in$/))return this.numValue()*this.getDPI(a);if(c.match(/%$/))return this.numValue()*f.ViewPort.ComputeSize(a);var d=this.numValue();return b&&1>d?d*f.ViewPort.ComputeSize(a):d},f.Property.prototype.toMilliseconds=function(){if(!this.hasValue())return 0;var a=this.value+"";return a.match(/s$/)?1e3*this.numValue():(a.match(/ms$/),this.numValue())},f.Property.prototype.toRadians=function(){if(!this.hasValue())return 0;var a=this.value+"";return a.match(/deg$/)?this.numValue()*(Math.PI/180):a.match(/grad$/)?this.numValue()*(Math.PI/200):a.match(/rad$/)?this.numValue():this.numValue()*(Math.PI/180)};var g={baseline:"alphabetic","before-edge":"top","text-before-edge":"top",middle:"middle",central:"middle","after-edge":"bottom","text-after-edge":"bottom",ideographic:"ideographic",alphabetic:"alphabetic",hanging:"hanging",mathematical:"alphabetic"};return f.Property.prototype.toTextBaseline=function(){return this.hasValue()?g[this.value]:null},f.Font=new function(){this.Styles="normal|italic|oblique|inherit",this.Variants="normal|small-caps|inherit",this.Weights="normal|bold|bolder|lighter|100|200|300|400|500|600|700|800|900|inherit",this.CreateFont=function(a,b,c,d,e,g){var h=null!=g?this.Parse(g):this.CreateFont("","","","","",f.ctx.font);return{fontFamily:e||h.fontFamily,fontSize:d||h.fontSize,fontStyle:a||h.fontStyle,fontWeight:c||h.fontWeight,fontVariant:b||h.fontVariant,toString:function(){return[this.fontStyle,this.fontVariant,this.fontWeight,this.fontSize,this.fontFamily].join(" ")}}};var a=this;this.Parse=function(b){for(var c={},d=f.trim(f.compressSpaces(b||"")).split(" "),e={fontSize:!1,fontStyle:!1,fontWeight:!1,fontVariant:!1},g="",h=0;hthis.x2&&(this.x2=a)),null!=b&&((isNaN(this.y1)||isNaN(this.y2))&&(this.y1=b,this.y2=b),bthis.y2&&(this.y2=b))},this.addX=function(a){this.addPoint(a,null)},this.addY=function(a){this.addPoint(null,a)},this.addBoundingBox=function(a){this.addPoint(a.x1,a.y1),this.addPoint(a.x2,a.y2)},this.addQuadraticCurve=function(a,b,c,d,e,f){var g=a+2/3*(c-a),h=b+2/3*(d-b),i=g+1/3*(e-a),j=h+1/3*(f-b);this.addBezierCurve(a,b,g,i,h,j,e,f)},this.addBezierCurve=function(a,b,c,d,e,f,g,h){var j=[a,b],k=[c,d],l=[e,f],m=[g,h];for(this.addPoint(j[0],j[1]),this.addPoint(m[0],m[1]),i=0;i<=1;i++){var n=function(a){return Math.pow(1-a,3)*j[i]+3*Math.pow(1-a,2)*a*k[i]+3*(1-a)*Math.pow(a,2)*l[i]+Math.pow(a,3)*m[i]},o=6*j[i]-12*k[i]+6*l[i],p=-3*j[i]+9*k[i]-9*l[i]+3*m[i],q=3*k[i]-3*j[i];if(0!=p){var r=Math.pow(o,2)-4*q*p;if(!(0>r)){var s=(-o+Math.sqrt(r))/(2*p);s>0&&1>s&&(0==i&&this.addX(n(s)),1==i&&this.addY(n(s)));var t=(-o-Math.sqrt(r))/(2*p);t>0&&1>t&&(0==i&&this.addX(n(t)),1==i&&this.addY(n(t)))}}else{if(0==o)continue;var u=-q/o;u>0&&1>u&&(0==i&&this.addX(n(u)),1==i&&this.addY(n(u)))}}},this.isPointInBox=function(a,b){return this.x1<=a&&a<=this.x2&&this.y1<=b&&b<=this.y2},this.addPoint(a,b),this.addPoint(c,d)},f.Transform=function(a){var b=this;this.Type={},this.Type.translate=function(a){this.p=f.CreatePoint(a),this.apply=function(a){a.translate(this.p.x||0,this.p.y||0)},this.unapply=function(a){a.translate(-1*this.p.x||0,-1*this.p.y||0)},this.applyToPoint=function(a){a.applyTransform([1,0,0,1,this.p.x||0,this.p.y||0])}},this.Type.rotate=function(a){var b=f.ToNumberArray(a);this.angle=new f.Property("angle",b[0]),this.cx=b[1]||0,this.cy=b[2]||0,this.apply=function(a){a.translate(this.cx,this.cy),a.rotate(this.angle.toRadians()),a.translate(-this.cx,-this.cy)},this.unapply=function(a){a.translate(this.cx,this.cy),a.rotate(-1*this.angle.toRadians()),a.translate(-this.cx,-this.cy)},this.applyToPoint=function(a){var b=this.angle.toRadians();a.applyTransform([1,0,0,1,this.p.x||0,this.p.y||0]),a.applyTransform([Math.cos(b),Math.sin(b),-Math.sin(b),Math.cos(b),0,0]),a.applyTransform([1,0,0,1,-this.p.x||0,-this.p.y||0])}},this.Type.scale=function(a){this.p=f.CreatePoint(a),this.apply=function(a){a.scale(this.p.x||1,this.p.y||this.p.x||1)},this.unapply=function(a){a.scale(1/this.p.x||1,1/this.p.y||this.p.x||1)},this.applyToPoint=function(a){a.applyTransform([this.p.x||0,0,0,this.p.y||0,0,0])}},this.Type.matrix=function(a){this.m=f.ToNumberArray(a),this.apply=function(a){a.transform(this.m[0],this.m[1],this.m[2],this.m[3],this.m[4],this.m[5])},this.unapply=function(a){var b=this.m[0],c=this.m[2],d=this.m[4],e=this.m[1],f=this.m[3],g=this.m[5],h=0,i=0,j=1,k=1/(b*(f*j-g*i)-c*(e*j-g*h)+d*(e*i-f*h));a.transform(k*(f*j-g*i),k*(g*h-e*j),k*(d*i-c*j),k*(b*j-d*h),k*(c*g-d*f),k*(d*e-b*g))},this.applyToPoint=function(a){a.applyTransform(this.m)}},this.Type.SkewBase=function(a){this.base=b.Type.matrix,this.base(a),this.angle=new f.Property("angle",a)},this.Type.SkewBase.prototype=new this.Type.matrix,this.Type.skewX=function(a){this.base=b.Type.SkewBase,this.base(a),this.m=[1,0,Math.tan(this.angle.toRadians()),1,0,0]},this.Type.skewX.prototype=new this.Type.SkewBase,this.Type.skewY=function(a){this.base=b.Type.SkewBase,this.base(a),this.m=[1,Math.tan(this.angle.toRadians()),0,1,0,0]},this.Type.skewY.prototype=new this.Type.SkewBase,this.transforms=[],this.apply=function(a){for(var b=0;b=0;b--)this.transforms[b].unapply(a)},this.applyToPoint=function(a){for(var b=0;bj&&(this.styles[i]=g[i],this.stylesSpecificity[i]=h)}}if(this.attribute("style").hasValue())for(var g=this.attribute("style").value.split(";"),b=0;b=this.tokens.length-1},this.isCommandOrEnd=function(){return this.isEnd()?!0:null!=this.tokens[this.i+1].match(/^[A-Za-z]$/)},this.isRelativeCommand=function(){switch(this.command){case"m":case"l":case"h":case"v":case"c":case"s":case"q":case"t":case"a":case"z":return!0}return!1},this.getToken=function(){return this.i++,this.tokens[this.i]},this.getScalar=function(){return parseFloat(this.getToken())},this.nextCommand=function(){this.previousCommand=this.command,this.command=this.getToken()},this.getPoint=function(){var a=new f.Point(this.getScalar(),this.getScalar());return this.makeAbsolute(a)},this.getAsControlPoint=function(){var a=this.getPoint();return this.control=a,a},this.getAsCurrentPoint=function(){var a=this.getPoint();return this.current=a,a},this.getReflectedControlPoint=function(){if("c"!=this.previousCommand.toLowerCase()&&"s"!=this.previousCommand.toLowerCase()&&"q"!=this.previousCommand.toLowerCase()&&"t"!=this.previousCommand.toLowerCase())return this.current;var a=new f.Point(2*this.current.x-this.control.x,2*this.current.y-this.control.y);return a},this.makeAbsolute=function(a){return this.isRelativeCommand()&&(a.x+=this.current.x,a.y+=this.current.y),a},this.addMarker=function(a,b,c){null!=c&&this.angles.length>0&&null==this.angles[this.angles.length-1]&&(this.angles[this.angles.length-1]=this.points[this.points.length-1].angleTo(c)),this.addMarkerAngle(a,null==b?null:b.angleTo(a)) -},this.addMarkerAngle=function(a,b){this.points.push(a),this.angles.push(b)},this.getMarkerPoints=function(){return this.points},this.getMarkerAngles=function(){for(var a=0;a1&&(l*=Math.sqrt(r),m*=Math.sqrt(r));var s=(o==p?-1:1)*Math.sqrt((Math.pow(l,2)*Math.pow(m,2)-Math.pow(l,2)*Math.pow(q.y,2)-Math.pow(m,2)*Math.pow(q.x,2))/(Math.pow(l,2)*Math.pow(q.y,2)+Math.pow(m,2)*Math.pow(q.x,2)));isNaN(s)&&(s=0);var t=new f.Point(s*l*q.y/m,s*-m*q.x/l),u=new f.Point((h.x+k.x)/2+Math.cos(n)*t.x-Math.sin(n)*t.y,(h.y+k.y)/2+Math.sin(n)*t.x+Math.cos(n)*t.y),v=function(a){return Math.sqrt(Math.pow(a[0],2)+Math.pow(a[1],2))},w=function(a,b){return(a[0]*b[0]+a[1]*b[1])/(v(a)*v(b))},x=function(a,b){return(a[0]*b[1]=1&&(B=0);var C=1-p?1:-1,D=y+C*(B/2),E=new f.Point(u.x+l*Math.cos(D),u.y+m*Math.sin(D));if(b.addMarkerAngle(E,D-C*Math.PI/2),b.addMarkerAngle(k,D-C*Math.PI),c.addPoint(k.x,k.y),null!=a){var w=l>m?l:m,F=l>m?1:l/m,G=l>m?m/l:1;a.translate(u.x,u.y),a.rotate(n),a.scale(F,G),a.arc(0,0,w,y,y+B,1-p),a.scale(1/F,1/G),a.rotate(-n),a.translate(-u.x,-u.y)}}break;case"Z":case"z":null!=a&&a.closePath(),b.current=b.start}return c},this.getMarkers=function(){for(var a=this.PathParser.getMarkerPoints(),b=this.PathParser.getMarkerAngles(),c=[],d=0;d=h;h++)for(var i=-1;1>=i;i++)g.save(),g.translate(h*e.width,i*e.height),d.render(g),g.restore();var j=a.createPattern(e,"repeat");return j}},f.Element.pattern.prototype=new f.Element.ElementBase,f.Element.marker=function(a){this.base=f.Element.ElementBase,this.base(a),this.baseRender=this.render,this.render=function(a,b,c){a.translate(b.x,b.y),"auto"==this.attribute("orient").valueOrDefault("auto")&&a.rotate(c),"strokeWidth"==this.attribute("markerUnits").valueOrDefault("strokeWidth")&&a.scale(a.lineWidth,a.lineWidth),a.save();var d=new f.Element.svg;d.attributes.viewBox=new f.Property("viewBox",this.attribute("viewBox").value),d.attributes.refX=new f.Property("refX",this.attribute("refX").value),d.attributes.refY=new f.Property("refY",this.attribute("refY").value),d.attributes.width=new f.Property("width",this.attribute("markerWidth").value),d.attributes.height=new f.Property("height",this.attribute("markerHeight").value),d.attributes.fill=new f.Property("fill",this.attribute("fill").valueOrDefault("black")),d.attributes.stroke=new f.Property("stroke",this.attribute("stroke").valueOrDefault("none")),d.children=this.children,d.render(a),a.restore(),"strokeWidth"==this.attribute("markerUnits").valueOrDefault("strokeWidth")&&a.scale(1/a.lineWidth,1/a.lineWidth),"auto"==this.attribute("orient").valueOrDefault("auto")&&a.rotate(-c),a.translate(-b.x,-b.y)}},f.Element.marker.prototype=new f.Element.ElementBase,f.Element.defs=function(a){this.base=f.Element.ElementBase,this.base(a),this.render=function(){}},f.Element.defs.prototype=new f.Element.ElementBase,f.Element.GradientBase=function(a){this.base=f.Element.ElementBase,this.base(a),this.gradientUnits=this.attribute("gradientUnits").valueOrDefault("objectBoundingBox"),this.stops=[];for(var b=0;b1&&(this.offset=1);var b=this.style("stop-color");this.style("stop-opacity").hasValue()&&(b=b.addOpacity(this.style("stop-opacity"))),this.color=b.value},f.Element.stop.prototype=new f.Element.ElementBase,f.Element.AnimateBase=function(a){this.base=f.Element.ElementBase,this.base(a),f.Animations.push(this),this.duration=0,this.begin=this.attribute("begin").toMilliseconds(),this.maxDuration=this.begin+this.attribute("dur").toMilliseconds(),this.getProperty=function(){var a=this.attribute("attributeType").value,b=this.attribute("attributeName").value;return"CSS"==a?this.parent.style(b,!0):this.parent.attribute(b,!0)},this.initialValue=null,this.initialUnits="",this.removed=!1,this.calcValue=function(){return""},this.update=function(a){if(null==this.initialValue&&(this.initialValue=this.getProperty().value,this.initialUnits=this.getProperty().getUnits()),this.duration>this.maxDuration){if("indefinite"==this.attribute("repeatCount").value||"indefinite"==this.attribute("repeatDur").value)this.duration=0;else if("freeze"!=this.attribute("fill").valueOrDefault("remove")||this.frozen){if("remove"==this.attribute("fill").valueOrDefault("remove")&&!this.removed)return this.removed=!0,this.getProperty().value=this.parent.animationFrozen?this.parent.animationFrozenValue:this.initialValue,!0}else this.frozen=!0,this.parent.animationFrozen=!0,this.parent.animationFrozenValue=this.getProperty().value;return!1}this.duration=this.duration+a;var b=!1;if(this.beginc&&g.attribute("x").hasValue())break;e+=g.measureTextRecursive(a)}return-1*("end"==d?e:e/2)}return 0},this.renderChild=function(a,b,c){var d=b.children[c];d.attribute("x").hasValue()?(d.x=d.attribute("x").toPixels("x")+this.getAnchorDelta(a,b,c),d.attribute("dx").hasValue()&&(d.x+=d.attribute("dx").toPixels("x"))):(this.attribute("dx").hasValue()&&(this.x+=this.attribute("dx").toPixels("x")),d.attribute("dx").hasValue()&&(this.x+=d.attribute("dx").toPixels("x")),d.x=this.x),this.x=d.x+d.measureText(a),d.attribute("y").hasValue()?(d.y=d.attribute("y").toPixels("y"),d.attribute("dy").hasValue()&&(d.y+=d.attribute("dy").toPixels("y"))):(this.attribute("dy").hasValue()&&(this.y+=this.attribute("dy").toPixels("y")),d.attribute("dy").hasValue()&&(this.y+=d.attribute("dy").toPixels("y")),d.y=this.y),this.y=d.y,d.render(a);for(var c=0;c0&&" "!=b[c-1]&&c0&&" "!=b[c-1]&&(c==b.length-1||" "==b[c+1])&&(f="initial"),"undefined"!=typeof a.glyphs[d]&&(e=a.glyphs[d][f],null==e&&"glyph"==a.glyphs[d].type&&(e=a.glyphs[d]))}else e=a.glyphs[d];return null==e&&(e=a.missingGlyph),e},this.renderChildren=function(a){var b=this.parent.style("font-family").getDefinition();if(null==b)""!=a.fillStyle&&a.fillText(f.compressSpaces(this.getText()),this.x,this.y),""!=a.strokeStyle&&a.strokeText(f.compressSpaces(this.getText()),this.x,this.y);else{var c=this.parent.style("font-size").numValueOrDefault(f.Font.Parse(f.ctx.font).fontSize),d=this.parent.style("font-style").valueOrDefault(f.Font.Parse(f.ctx.font).fontStyle),e=this.getText();b.isRTL&&(e=e.split("").reverse().join(""));for(var g=f.ToNumberArray(this.parent.attribute("dx").value),h=0;h0;for(var b=0;b0){var c=new f.Element.g;c.children=this.children,c.parent=this,c.render(a)}},this.onclick=function(){window.open(this.getHrefAttribute().value)},this.onmousemove=function(){f.ctx.canvas.style.cursor="pointer"}},f.Element.a.prototype=new f.Element.TextElementBase,f.Element.image=function(a){this.base=f.Element.RenderedElementBase,this.base(a);var b=this.getHrefAttribute().value;if(""!=b){var c=b.match(/\.svg$/);if(f.Images.push(this),this.loaded=!1,c)this.img=f.ajax(b),this.loaded=!0;else{this.img=document.createElement("img"),1==f.opts.useCORS&&(this.img.crossOrigin="Anonymous");var d=this;this.img.onload=function(){d.loaded=!0},this.img.onerror=function(){f.log('ERROR: image "'+b+'" not found'),d.loaded=!0},this.img.src=b}this.renderChildren=function(a){var b=this.attribute("x").toPixels("x"),d=this.attribute("y").toPixels("y"),e=this.attribute("width").toPixels("x"),g=this.attribute("height").toPixels("y");0!=e&&0!=g&&(a.save(),c?a.drawSvg(this.img,b,d,e,g):(a.translate(b,d),f.AspectRatio(a,this.attribute("preserveAspectRatio").value,e,this.img.width,g,this.img.height,0,0),a.drawImage(this.img,0,0)),a.restore())},this.getBoundingBox=function(){var a=this.attribute("x").toPixels("x"),b=this.attribute("y").toPixels("y"),c=this.attribute("width").toPixels("x"),d=this.attribute("height").toPixels("y");return new f.BoundingBox(a,b,a+c,b+d)}}},f.Element.image.prototype=new f.Element.RenderedElementBase,f.Element.g=function(a){this.base=f.Element.RenderedElementBase,this.base(a),this.getBoundingBox=function(){for(var a=new f.BoundingBox,b=0;b0)for(var t=r[s].indexOf("url"),u=r[s].indexOf(")",t),v=r[s].substr(t+5,u-t-6),w=f.parseXml(f.ajax(v)),x=w.getElementsByTagName("font"),y=0;yc?b-255:b)}this.base=f.Element.ElementBase,this.base(a);var e=f.ToNumberArray(this.attribute("values").value);switch(this.attribute("type").valueOrDefault("matrix")){case"saturate":var g=e[0];e=[.213+.787*g,.715-.715*g,.072-.072*g,0,0,.213-.213*g,.715+.285*g,.072-.072*g,0,0,.213-.213*g,.715-.715*g,.072+.928*g,0,0,0,0,0,1,0,0,0,0,0,1];break;case"hueRotate":var h=e[0]*Math.PI/180,i=function(a,b,c){return a+Math.cos(h)*b+Math.sin(h)*c};e=[i(.213,.787,-.213),i(.715,-.715,-.715),i(.072,-.072,.928),0,0,i(.213,-.213,.143),i(.715,.285,.14),i(.072,-.072,-.283),0,0,i(.213,-.213,-.787),i(.715,-.715,.715),i(.072,.928,.072),0,0,0,0,0,1,0,0,0,0,0,1];break;case"luminanceToAlpha":e=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,.2125,.7154,.0721,0,0,0,0,0,0,1]}this.apply=function(a,e,f,g,h){for(var i=a.getImageData(0,0,g,h),f=0;h>f;f++)for(var e=0;g>e;e++){var j=b(i.data,e,f,g,h,0),k=b(i.data,e,f,g,h,1),l=b(i.data,e,f,g,h,2),m=b(i.data,e,f,g,h,3);c(i.data,e,f,g,h,0,d(0,j)+d(1,k)+d(2,l)+d(3,m)+d(4,1)),c(i.data,e,f,g,h,1,d(5,j)+d(6,k)+d(7,l)+d(8,m)+d(9,1)),c(i.data,e,f,g,h,2,d(10,j)+d(11,k)+d(12,l)+d(13,m)+d(14,1)),c(i.data,e,f,g,h,3,d(15,j)+d(16,k)+d(17,l)+d(18,m)+d(19,1))}a.clearRect(0,0,g,h),a.putImageData(i,0,0)}},f.Element.feColorMatrix.prototype=new f.Element.ElementBase,f.Element.feGaussianBlur=function(a){this.base=f.Element.ElementBase,this.base(a),this.blurRadius=Math.floor(this.attribute("stdDeviation").numValue()),this.extraFilterDistance=this.blurRadius,this.apply=function(a,c,d,e,g){return"undefined"==typeof b.canvasRGBA?void f.log("ERROR: StackBlur.js must be included for blur to work"):(a.canvas.id=f.UniqueId(),a.canvas.style.display="none",document.body.appendChild(a.canvas),b.canvasRGBA(a.canvas.id,c,d,e,g,this.blurRadius),void document.body.removeChild(a.canvas))}},f.Element.feGaussianBlur.prototype=new f.Element.ElementBase,f.Element.title=function(){},f.Element.title.prototype=new f.Element.ElementBase,f.Element.desc=function(){},f.Element.desc.prototype=new f.Element.ElementBase,f.Element.MISSING=function(a){f.log("ERROR: Element '"+a.nodeName+"' not yet implemented.")},f.Element.MISSING.prototype=new f.Element.ElementBase,f.CreateElement=function(a){var b=a.nodeName.replace(/^[^:]+:/,"");b=b.replace(/\-/g,"");var c=null;return c="undefined"!=typeof f.Element[b]?new f.Element[b](a):new f.Element.MISSING(a),c.type=a.nodeName,c},f.load=function(a,b){f.loadXml(a,f.ajax(b))},f.loadXml=function(a,b){f.loadXmlDoc(a,f.parseXml(b))},f.loadXmlDoc=function(a,b){f.init(a);var c=function(b){for(var c=a.canvas;c;)b.x-=c.offsetLeft,b.y-=c.offsetTop,c=c.offsetParent;return window.scrollX&&(b.x+=window.scrollX),window.scrollY&&(b.y+=window.scrollY),b};1!=f.opts.ignoreMouse&&(a.canvas.onclick=function(a){var b=c(new f.Point(null!=a?a.clientX:event.clientX,null!=a?a.clientY:event.clientY));f.Mouse.onclick(b.x,b.y)},a.canvas.onmousemove=function(a){var b=c(new f.Point(null!=a?a.clientX:event.clientX,null!=a?a.clientY:event.clientY));f.Mouse.onmousemove(b.x,b.y)});var d=f.CreateElement(b.documentElement);d.root=!0;var e=!0,g=function(){f.ViewPort.Clear(),a.canvas.parentNode&&f.ViewPort.SetCurrent(a.canvas.parentNode.clientWidth,a.canvas.parentNode.clientHeight),1!=f.opts.ignoreDimensions&&(d.style("width").hasValue()&&(a.canvas.width=d.style("width").toPixels("x"),a.canvas.style.width=a.canvas.width+"px"),d.style("height").hasValue()&&(a.canvas.height=d.style("height").toPixels("y"),a.canvas.style.height=a.canvas.height+"px"));var c=a.canvas.clientWidth||a.canvas.width,g=a.canvas.clientHeight||a.canvas.height;if(1==f.opts.ignoreDimensions&&d.style("width").hasValue()&&d.style("height").hasValue()&&(c=d.style("width").toPixels("x"),g=d.style("height").toPixels("y")),f.ViewPort.SetCurrent(c,g),null!=f.opts.offsetX&&(d.attribute("x",!0).value=f.opts.offsetX),null!=f.opts.offsetY&&(d.attribute("y",!0).value=f.opts.offsetY),null!=f.opts.scaleWidth||null!=f.opts.scaleHeight){var h=null,i=null,j=f.ToNumberArray(d.attribute("viewBox").value);null!=f.opts.scaleWidth&&(d.attribute("width").hasValue()?h=d.attribute("width").toPixels("x")/f.opts.scaleWidth:isNaN(j[2])||(h=j[2]/f.opts.scaleWidth)),null!=f.opts.scaleHeight&&(d.attribute("height").hasValue()?i=d.attribute("height").toPixels("y")/f.opts.scaleHeight:isNaN(j[3])||(i=j[3]/f.opts.scaleHeight)),null==h&&(h=i),null==i&&(i=h),d.attribute("width",!0).value=f.opts.scaleWidth,d.attribute("height",!0).value=f.opts.scaleHeight,d.attribute("transform",!0).value+=" scale("+1/h+","+1/i+")" -}1!=f.opts.ignoreClear&&a.clearRect(0,0,c,g),d.render(a),e&&(e=!1,"function"==typeof f.opts.renderCallback&&f.opts.renderCallback(b))},h=!0;f.ImagesLoaded()&&(h=!1,g()),f.intervalID=setInterval(function(){var a=!1;if(h&&f.ImagesLoaded()&&(h=!1,a=!0),1!=f.opts.ignoreMouse&&(a|=f.Mouse.hasEvents()),1!=f.opts.ignoreAnimation)for(var b=0;b~\.\[:]+)/g,j=/(\.[^\s\+>~\.\[:]+)/g,k=/(::[^\s\+>~\.\[:]+|:first-line|:first-letter|:before|:after)/gi,l=/(:[\w-]+\([^\)]*\))/gi,m=/(:[^\s\+>~\.\[:]+)/g,n=/([^\s\+>~\.\[:]+)/g;return"undefined"!=typeof CanvasRenderingContext2D&&(CanvasRenderingContext2D.prototype.drawSvg=function(a,b,c,d,e){f(this.canvas,a,{ignoreMouse:!0,ignoreAnimation:!0,ignoreDimensions:!0,ignoreClear:!0,offsetX:b,offsetY:c,scaleWidth:d,scaleHeight:e})}),f});var e=e||"undefined"!=typeof navigator&&navigator.msSaveOrOpenBlob&&navigator.msSaveOrOpenBlob.bind(navigator)||function(a){if("undefined"==typeof navigator||!/MSIE [1-9]\./.test(navigator.userAgent)){var b=a.document,c=function(){return a.URL||a.webkitURL||a},d=b.createElementNS("http://www.w3.org/1999/xhtml","a"),e="download"in d,f=function(c){var d=b.createEvent("MouseEvents");d.initMouseEvent("click",!0,!1,a,0,0,0,0,0,!1,!1,!1,!1,0,null),c.dispatchEvent(d)},g=a.webkitRequestFileSystem,h=a.requestFileSystem||g||a.mozRequestFileSystem,i=function(b){(a.setImmediate||a.setTimeout)(function(){throw b},0)},j="application/octet-stream",k=0,l=500,m=function(b){var d=function(){"string"==typeof b?c().revokeObjectURL(b):b.remove()};a.chrome?d():setTimeout(d,l)},n=function(a,b,c){b=[].concat(b);for(var d=b.length;d--;){var e=a["on"+b[d]];if("function"==typeof e)try{e.call(a,c||a)}catch(f){i(f)}}},o=function(b,i){var l,o,p,q=this,r=b.type,s=!1,t=function(){n(q,"writestart progress write writeend".split(" "))},u=function(){if((s||!l)&&(l=c().createObjectURL(b)),o)o.location.href=l;else{var d=a.open(l,"_blank");void 0==d&&"undefined"!=typeof safari&&(a.location.href=l)}q.readyState=q.DONE,t(),m(l)},v=function(a){return function(){return q.readyState!==q.DONE?a.apply(this,arguments):void 0}},w={create:!0,exclusive:!1};return q.readyState=q.INIT,i||(i="download"),e?(l=c().createObjectURL(b),d.href=l,d.download=i,f(d),q.readyState=q.DONE,t(),void m(l)):(a.chrome&&r&&r!==j&&(p=b.slice||b.webkitSlice,b=p.call(b,0,b.size,j),s=!0),g&&"download"!==i&&(i+=".download"),(r===j||g)&&(o=a),h?(k+=b.size,void h(a.TEMPORARY,k,v(function(a){a.root.getDirectory("saved",w,v(function(a){var c=function(){a.getFile(i,w,v(function(a){a.createWriter(v(function(c){c.onwriteend=function(b){o.location.href=a.toURL(),q.readyState=q.DONE,n(q,"writeend",b),m(a)},c.onerror=function(){var a=c.error;a.code!==a.ABORT_ERR&&u()},"writestart progress write abort".split(" ").forEach(function(a){c["on"+a]=q["on"+a]}),c.write(b),q.abort=function(){c.abort(),q.readyState=q.DONE},q.readyState=q.WRITING}),u)}),u)};a.getFile(i,{create:!1},v(function(a){a.remove(),c()}),v(function(a){a.code===a.NOT_FOUND_ERR?c():u()}))}),u)}),u)):void u())},p=o.prototype,q=function(a,b){return new o(a,b)};return p.abort=function(){var a=this;a.readyState=a.DONE,n(a,"abort")},p.readyState=p.INIT=0,p.WRITING=1,p.DONE=2,p.error=p.onwritestart=p.onprogress=p.onwrite=p.onabort=p.onerror=p.onwriteend=null,q}}("undefined"!=typeof self&&self||"undefined"!=typeof window&&window||this.content);return"undefined"!=typeof module&&module.exports?module.exports.saveAs=e:"undefined"!=typeof d&&null!==d&&null!=d.amd&&d("../bower_components/FileSaver.js/FileSaver",[],function(){return e}),function(){function a(a){return"function"==typeof a||"object"==typeof a&&null!==a}function b(a){return"function"==typeof a}function c(a){return"object"==typeof a&&null!==a}function e(){}function f(){return function(){process.nextTick(j)}}function g(){var a=0,b=new M(j),c=document.createTextNode("");return b.observe(c,{characterData:!0}),function(){c.data=a=++a%2}}function h(){var a=new MessageChannel;return a.port1.onmessage=j,function(){a.port2.postMessage(0)}}function i(){return function(){setTimeout(j,1)}}function j(){for(var a=0;J>a;a+=2){var b=O[a],c=O[a+1];b(c),O[a]=void 0,O[a+1]=void 0}J=0}function k(){}function l(){return new TypeError("You cannot resolve a promise with itself")}function m(){return new TypeError("A promises callback cannot return that same promise.")}function n(a){try{return a.then}catch(b){return S.error=b,S}}function o(a,b,c,d){try{a.call(b,c,d)}catch(e){return e}}function p(a,b,c){K(function(a){var d=!1,e=o(c,b,function(c){d||(d=!0,b!==c?s(a,c):u(a,c))},function(b){d||(d=!0,v(a,b))},"Settle: "+(a._label||" unknown promise"));!d&&e&&(d=!0,v(a,e))},a)}function q(a,b){b._state===Q?u(a,b._result):a._state===R?v(a,b._result):w(b,void 0,function(b){s(a,b)},function(b){v(a,b)})}function r(a,c){if(c.constructor===a.constructor)q(a,c);else{var d=n(c);d===S?v(a,S.error):void 0===d?u(a,c):b(d)?p(a,c,d):u(a,c)}}function s(b,c){b===c?v(b,l()):a(c)?r(b,c):u(b,c)}function t(a){a._onerror&&a._onerror(a._result),x(a)}function u(a,b){a._state===P&&(a._result=b,a._state=Q,0===a._subscribers.length||K(x,a))}function v(a,b){a._state===P&&(a._state=R,a._result=b,K(t,a))}function w(a,b,c,d){var e=a._subscribers,f=e.length;a._onerror=null,e[f]=b,e[f+Q]=c,e[f+R]=d,0===f&&a._state&&K(x,a)}function x(a){var b=a._subscribers,c=a._state;if(0!==b.length){for(var d,e,f=a._result,g=0;g1)throw new Error("Second argument not supported");if("object"!=typeof a)throw new TypeError("Argument must be an object");return e.prototype=a,new e},0),K=function(a,b){O[J]=a,O[J+1]=b,J+=2,2===J&&H()},L="undefined"!=typeof window?window:{},M=L.MutationObserver||L.WebKitMutationObserver,N="undefined"!=typeof Uint8ClampedArray&&"undefined"!=typeof importScripts&&"undefined"!=typeof MessageChannel,O=new Array(1e3);H="undefined"!=typeof process&&"[object process]"==={}.toString.call(process)?f():M?g():N?h():i();var P=void 0,Q=1,R=2,S=new y,T=new y;C.prototype._validateInput=function(a){return I(a)},C.prototype._validationError=function(){return new Error("Array Methods must be provided an Array")},C.prototype._init=function(){this._result=new Array(this.length)};var U=C;C.prototype._enumerate=function(){for(var a=this.length,b=this.promise,c=this._input,d=0;b._state===P&&a>d;d++)this._eachEntry(c[d],d)},C.prototype._eachEntry=function(a,b){var d=this._instanceConstructor;c(a)?a.constructor===d&&a._state!==P?(a._onerror=null,this._settledAt(a._state,b,a._result)):this._willSettleAt(d.resolve(a),b):(this._remaining--,this._result[b]=this._makeResult(Q,b,a))},C.prototype._settledAt=function(a,b,c){var d=this.promise;d._state===P&&(this._remaining--,this._abortOnReject&&a===R?v(d,c):this._result[b]=this._makeResult(a,b,c)),0===this._remaining&&u(d,this._result)},C.prototype._makeResult=function(a,b,c){return c},C.prototype._willSettleAt=function(a,b){var c=this;w(a,void 0,function(a){c._settledAt(Q,b,a)},function(a){c._settledAt(R,b,a)})};var V=function(a,b){return new U(this,a,!0,b).promise},W=function(a,b){function c(a){s(f,a)}function d(a){v(f,a)}var e=this,f=new e(k,b);if(!I(a))return v(f,new TypeError("You must pass an array to race.")),f;for(var g=a.length,h=0;f._state===P&&g>h;h++)w(e.resolve(a[h]),void 0,c,d);return f},X=function(a,b){var c=this;if(a&&"object"==typeof a&&a.constructor===c)return a;var d=new c(k,b);return s(d,a),d},Y=function(a,b){var c=this,d=new c(k,b);return v(d,a),d},Z=0,$=F;F.all=V,F.race=W,F.resolve=X,F.reject=Y,F.prototype={constructor:F,then:function(a,b){var c=this,d=c._state;if(d===Q&&!a||d===R&&!b)return this;var e=new this.constructor(k),f=c._result;if(d){var g=arguments[d-1];K(function(){A(d,e,g,f)})}else w(c,e,a,b);return e},"catch":function(a){return this.then(null,a)}};var _=function(){var a;a="undefined"!=typeof global?global:"undefined"!=typeof window&&window.document?window:self;var c="Promise"in a&&"resolve"in a.Promise&&"reject"in a.Promise&&"all"in a.Promise&&"race"in a.Promise&&function(){var c;return new a.Promise(function(a){c=a}),b(c)}();c||(a.Promise=$)},ab={Promise:$,polyfill:_};"function"==typeof d&&d.amd?d("../bower_components/es6-promise/promise",[],function(){return ab}):"undefined"!=typeof module&&module.exports?module.exports=ab:"undefined"!=typeof this&&(this.ES6Promise=ab)}.call(this),d("../node_modules/requirejs-text/text",["module"],function(a){var b,d,e,f,g,h=["Msxml2.XMLHTTP","Microsoft.XMLHTTP","Msxml2.XMLHTTP.4.0"],i=/^\s*<\?xml(\s)+version=[\'\"](\d)*.(\d)*[\'\"](\s)*\?>/im,j=/]*>\s*([\s\S]+)\s*<\/body>/im,k="undefined"!=typeof location&&location.href,l=k&&location.protocol&&location.protocol.replace(/\:/,""),m=k&&location.hostname,n=k&&(location.port||void 0),o={},p=a.config&&a.config()||{};return b={version:"2.0.12",strip:function(a){if(a){a=a.replace(i,"");var b=a.match(j);b&&(a=b[1])}else a="";return a},jsEscape:function(a){return a.replace(/(['\\])/g,"\\$1").replace(/[\f]/g,"\\f").replace(/[\b]/g,"\\b").replace(/[\n]/g,"\\n").replace(/[\t]/g,"\\t").replace(/[\r]/g,"\\r").replace(/[\u2028]/g,"\\u2028").replace(/[\u2029]/g,"\\u2029")},createXhr:p.createXhr||function(){var a,b,c;if("undefined"!=typeof XMLHttpRequest)return new XMLHttpRequest;if("undefined"!=typeof ActiveXObject)for(b=0;3>b;b+=1){c=h[b];try{a=new ActiveXObject(c)}catch(d){}if(a){h=[c];break}}return a},parseName:function(a){var b,c,d,e=!1,f=a.indexOf("."),g=0===a.indexOf("./")||0===a.indexOf("../");return-1!==f&&(!g||f>1)?(b=a.substring(0,f),c=a.substring(f+1,a.length)):b=a,d=c||b,f=d.indexOf("!"),-1!==f&&(e="strip"===d.substring(f+1),d=d.substring(0,f),c?c=d:b=d),{moduleName:b,ext:c,strip:e}},xdRegExp:/^((\w+)\:)?\/\/([^\/\\]+)/,useXhr:function(a,c,d,e){var f,g,h,i=b.xdRegExp.exec(a);return i?(f=i[2],g=i[3],g=g.split(":"),h=g[1],g=g[0],!(f&&f!==c||g&&g.toLowerCase()!==d.toLowerCase()||(h||g)&&h!==e)):!0},finishLoad:function(a,c,d,e){d=c?b.strip(d):d,p.isBuild&&(o[a]=d),e(d)},load:function(a,c,d,e){if(e&&e.isBuild&&!e.inlineText)return void d();p.isBuild=e&&e.isBuild;var f=b.parseName(a),g=f.moduleName+(f.ext?"."+f.ext:""),h=c.toUrl(g),i=p.useXhr||b.useXhr;return 0===h.indexOf("empty:")?void d():void(!k||i(h,l,m,n)?b.get(h,function(c){b.finishLoad(a,f.strip,c,d)},function(a){d.error&&d.error(a)}):c([g],function(a){b.finishLoad(f.moduleName+"."+f.ext,f.strip,a,d)}))},write:function(a,c,d){if(o.hasOwnProperty(c)){var e=b.jsEscape(o[c]);d.asModule(a+"!"+c,"define(function () { return '"+e+"';});\n")}},writeFile:function(a,c,d,e,f){var g=b.parseName(c),h=g.ext?"."+g.ext:"",i=g.moduleName+h,j=d.toUrl(g.moduleName+h)+".js";b.load(i,d,function(){var c=function(a){return e(j,a)};c.asModule=function(a,b){return e.asModule(a,j,b)},b.write(a,i,c,f)},f)}},"node"===p.env||!p.env&&"undefined"!=typeof process&&process.versions&&process.versions.node&&!process.versions["node-webkit"]?(d=c.nodeRequire("fs"),b.get=function(a,b,c){try{var e=d.readFileSync(a,"utf8");0===e.indexOf("")&&(e=e.substring(1)),b(e)}catch(f){c&&c(f)}}):"xhr"===p.env||!p.env&&b.createXhr()?b.get=function(a,c,d,e){var f,g=b.createXhr();if(g.open("GET",a,!0),e)for(f in e)e.hasOwnProperty(f)&&g.setRequestHeader(f.toLowerCase(),e[f]);p.onXhr&&p.onXhr(g,a),g.onreadystatechange=function(){var b,e;4===g.readyState&&(b=g.status||0,b>399&&600>b?(e=new Error(a+" HTTP status: "+b),e.xhr=g,d&&d(e)):c(g.responseText),p.onXhrComplete&&p.onXhrComplete(g,a))},g.send(null)}:"rhino"===p.env||!p.env&&"undefined"!=typeof Packages&&"undefined"!=typeof java?b.get=function(a,b){var c,d,e="utf-8",f=new java.io.File(a),g=java.lang.System.getProperty("line.separator"),h=new java.io.BufferedReader(new java.io.InputStreamReader(new java.io.FileInputStream(f),e)),i="";try{for(c=new java.lang.StringBuffer,d=h.readLine(),d&&d.length()&&65279===d.charAt(0)&&(d=d.substring(1)),null!==d&&c.append(d);null!==(d=h.readLine());)c.append(g),c.append(d);i=String(c.toString())}finally{h.close()}b(i)}:("xpconnect"===p.env||!p.env&&"undefined"!=typeof Components&&Components.classes&&Components.interfaces)&&(e=Components.classes,f=Components.interfaces,Components.utils["import"]("resource://gre/modules/FileUtils.jsm"),g="@mozilla.org/windows-registry-key;1"in e,b.get=function(a,b){var c,d,h,i={};g&&(a=a.replace(/\//g,"\\")),h=new FileUtils.File(a);try{c=e["@mozilla.org/network/file-input-stream;1"].createInstance(f.nsIFileInputStream),c.init(h,1,0,!1),d=e["@mozilla.org/intl/converter-input-stream;1"].createInstance(f.nsIConverterInputStream),d.init(c,"utf-8",c.available(),f.nsIConverterInputStream.DEFAULT_REPLACEMENT_CHARACTER),d.readString(c.available(),i),d.close(),c.close(),b(i.value)}catch(j){throw new Error((h&&h.path||"")+": "+j)}}),b}),d("../node_modules/requirejs-text/text!print.style.css",[],function(){return"body > * {\n visibility: hidden;\n}\nbody {\n overflow: hidden;\n}\nbody * {\n visibility: hidden !important;\n}\n\n.graphical-report__print-block {\n position: absolute;\n top: 0;\n left: 0;\n visibility: visible !important;\n display: block;\n width: 100%;\n /*height: 100%;*/\n}\n"}),function(){function a(b){this.map={};var c=this;b instanceof a?b.forEach(function(a,b){b.forEach(function(b){c.append(a,b)})}):b&&Object.getOwnPropertyNames(b).forEach(function(a){c.append(a,b[a])})}function b(a){return a.bodyUsed?Promise.reject(new TypeError("Already read")):void(a.bodyUsed=!0)}function c(a){return new Promise(function(b,c){a.onload=function(){b(a.result)},a.onerror=function(){c(a.error)}})}function d(a){var b=new FileReader;return b.readAsArrayBuffer(a),c(b)}function e(a){var b=new FileReader;return b.readAsText(a),c(b)}function f(){return this.bodyUsed=!1,l?(this.blob=function(){var a=b(this);return a?a:Promise.resolve(this._bodyBlob)},this.arrayBuffer=function(){return this.blob().then(d)},this.text=function(){return this.blob().then(e)}):this.text=function(){var a=b(this);return a?a:Promise.resolve(this._bodyText)},"FormData"in self&&(this.formData=function(){return this.text().then(i)}),this.json=function(){return this.text().then(JSON.parse)},this}function g(a){var b=a.toUpperCase();return m.indexOf(b)>-1?b:a}function h(b,c){c=c||{},this.url=b,this._body=c.body,this.credentials=c.credentials||"omit",this.headers=new a(c.headers),this.method=g(c.method||"GET"),this.mode=c.mode||null,this.referrer=null}function i(a){var b=new FormData;return a.trim().split("&").forEach(function(a){if(a){var c=a.split("="),d=c.shift().replace(/\+/g," "),e=c.join("=").replace(/\+/g," ");b.append(decodeURIComponent(d),decodeURIComponent(e))}}),b}function j(b){var c=new a,d=b.getAllResponseHeaders().trim().split("\n");return d.forEach(function(a){var b=a.trim().split(":"),d=b.shift().trim(),e=b.join(":").trim();c.append(d,e)}),c}function k(a,b){b||(b={}),l?this._bodyBlob="string"==typeof a?new Blob([a]):a:this._bodyText=a,this.type="default",this.url=null,this.status=b.status,this.statusText=b.statusText,this.headers=b.headers,this.url=b.url||""}if(!self.fetch){a.prototype.append=function(a,b){a=a.toLowerCase();var c=this.map[a];c||(c=[],this.map[a]=c),c.push(b)},a.prototype["delete"]=function(a){delete this.map[a.toLowerCase()]},a.prototype.get=function(a){var b=this.map[a.toLowerCase()];return b?b[0]:null},a.prototype.getAll=function(a){return this.map[a.toLowerCase()]||[]},a.prototype.has=function(a){return this.map.hasOwnProperty(a.toLowerCase())},a.prototype.set=function(a,b){this.map[a.toLowerCase()]=[b]},a.prototype.forEach=function(a){var b=this;Object.getOwnPropertyNames(this.map).forEach(function(c){a(c,b.map[c])})};var l="FileReader"in self&&"Blob"in self&&function(){try{return new Blob,!0}catch(a){return!1}}(),m=["DELETE","GET","HEAD","OPTIONS","POST","PUT"];h.prototype.fetch=function(){var a=this;return new Promise(function(b,c){function d(){return"responseURL"in e?e.responseURL:/^X-Request-URL:/m.test(e.getAllResponseHeaders())?e.getResponseHeader("X-Request-URL"):void 0}var e=new XMLHttpRequest;e.onload=function(){var a=1223===e.status?204:e.status;if(100>a||a>599)return void c(new TypeError("Network request failed"));var f={status:a,statusText:e.statusText,headers:j(e),url:d()},g="response"in e?e.response:e.responseText;b(new k(g,f))},e.onerror=function(){c(new TypeError("Network request failed"))},e.open(a.method,a.url),"responseType"in e&&l&&(e.responseType="blob"),a.headers.forEach(function(a,b){b.forEach(function(b){e.setRequestHeader(a,b)})}),e.send(void 0===a._body?null:a._body)})},f.call(h.prototype),f.call(k.prototype),self.Headers=a,self.Request=h,self.Response=k,self.fetch=function(a,b){return new h(a,b).fetch()},self.fetch.polyfill=!0}}(),d("../bower_components/fetch/fetch",function(){}),function(a){"function"==typeof d&&d.amd?d("export",["tauCharts","canvg","FileSaver","promise","text!./print.style.css","fetch"],function(b,c,d,e,f){return window.Promise=window.Promise||e.Promise,a(b,c,d,window.Promise,f)}):a(this.tauCharts,this.canvg,this.saveAs)}(function(a,b,c,d,e){function f(e){return{_createDataUrl:function(a){var c=this.cssPaths.map(function(a){return fetch(a).then(function(a){return a.text()})});return d.all(c).then(function(a){return a.join(" ")}).then(function(c){var d=l(c),e=document.createElement("div"),f=a.getSVG().cloneNode(!0);e.appendChild(f),h.select(f).attr("version",1.1).attr("xmlns","http://www.w3.org/2000/svg"),f.insertBefore(d,f.firstChild),this._renderAdditionalInfo(f,a);var g=document.createElement("canvas");return g.height=f.getAttribute("height"),g.width=f.getAttribute("width"),b(g,f.parentNode.innerHTML),g.toDataURL("image/png")}.bind(this))},_toPng:function(a){this._createDataUrl(a).then(function(a){for(var b=atob(a.substring("data:image/png;base64,".length)),d=new Uint8Array(b.length),e=0,f=b.length;f>e;++e)d[e]=b.charCodeAt(e);var g=new Blob([d.buffer],{type:"image/png"});c(g)})},_toPrint:function(a){this._createDataUrl(a).then(function(a){g=document.createElement("img"),g.classList.add("graphical-report__print-block");var b=g;document.body.appendChild(b),b.src=a,document.head.appendChild(m),b.onload=function(){window.print()}})},_renderAdditionalInfo:function(a,b){var c=b.getConfig(),d=j(c.spec.unit);if(d){d.guide=d.guide||{},d.guide.color=this._unit.guide.color;var e=d.guide.color.label.text||this._unit.options.color.dimension;a=h.select(a);{var f=parseInt(a.attr("width"),10);a.attr("height")}a.attr("width",f+160);var g=this._getColorMap(b),i=function(){this.attr("transform",function(a,b){return"translate(0,"+20*(b+1)+")"}),this.append("circle").attr("r",6).attr("class",function(a){return a.color}),this.append("text").attr("x",12).attr("y",5).text(function(a){return a.label}).style({"font-size":"13px"})},k=a.append("g").attr("class","legend").attr("transform","translate("+(f+10)+",20)");k.append("text").text(e.toUpperCase()).style({"text-transform":"uppercase","font-weight":"600","font-size":"13px"}),k.selectAll("g").data(g).enter().append("g").call(i)}},onUnitReady:function(a,b){-1!==b.type.indexOf("ELEMENT")&&(this._unit=b)},_getColorMap:function(a){var b=this._unit.options.color,c=this._unit.color.scaleDim,d=a.getData();return i(d).chain().map(function(a){return b.legend(a[c])}).uniq(function(a){return a.value}).value().reduce(function(a,b){return a.push(b),a},[])},_select:function(a,b){a=a||"";var c=this["_to"+a.charAt(0).toUpperCase()+a.slice(1)];c&&c.call(this,b)},_handleMenu:function(a,b,c){a.addEventListener("click",function(a){if("a"===a.target.tagName.toLowerCase()){var d=a.target.getAttribute("data-value");this._select(d,b),c.hide()}}.bind(this)),a.addEventListener("keydown",function(a){if(a.keyCode===k.ESCAPE&&c.hide(),a.keyCode===k.DOWN&&(a.target.parentNode.nextSibling?a.target.parentNode.nextSibling.childNodes[0].focus():a.target.parentNode.parentNode.firstChild.childNodes[0].focus()),a.keyCode===k.UP&&(a.target.parentNode.previousSibling?a.target.parentNode.previousSibling.childNodes[0].focus():a.target.parentNode.parentNode.lastChild.childNodes[0].focus()),a.keyCode===k.ENTER){var d=a.target.getAttribute("data-value");this._select(d,b)}a.preventDefault()}.bind(this));var d=null,e=p(),f=e?"focusin":"focus",g=e?"focusout":"blur";a.addEventListener(g,function(){d=setTimeout(function(){c.hide()},100)},!e),a.addEventListener(f,function(){clearTimeout(d)},!e),this._container.addEventListener("click",function(){c.toggle(),c.hidden||a.querySelectorAll("a")[0].focus()})},init:function(b){e=e||{},this.cssPaths=e.cssPaths,this.cssPaths||(this.cssPaths=[],a.api.globalSettings.log("You should specified cssPath for correct work export plugin","warn")),this._container=b.insertToHeader('Export>');var c=b.addBalloon({place:"bottom-left"});c.content(['"].join("")),c.attach(this._container);var d=c.getElement();d.setAttribute("tabindex","-1"),this._handleMenu(d,b,c),b.on("exportTo",function(a,b){this._select(b,a)}.bind(this))}}}var g,h=a.api.d3,i=a.api._,j=function(a){if(a.color)return a;var b,c,d,e=a.unit||[];for(b=0;b',_template:c.template('
<%=name%>
<%=items%>'),_itemTemplate:c.template(["
\">",'
<%=label%>',"
"].join("")),onRender:function(a){if(this._container){var d=this._unit.options.color,f=this._unit.color.scaleDim,g=a.getConfig(),h=b(g.spec.unit);h.guide=h.guide||{},h.guide.color=this._unit.guide.color;var i=h.guide.color.label.text||d.dimension,j=this._getColorMap(a.getData({excludeFilter:["legend"]}),d,f);h.guide.color.brewer=j.brewer;var k=c.reduce(j.values,function(a,b){var d={dimension:f,value:b.value,color:b.color},g=JSON.stringify(d),h=c.escape(e(b.label)?"No "+i:b.label);return a.items.push(this._itemTemplate({color:b.color,classDisabled:this._currentFilters[g]?"disabled":"",label:h,value:c.escape(g)})),a.storageValues[g]=d,a},{items:[],storageValues:{}},this);this._storageValues=k.storageValues,this._container.innerHTML=this._template({items:k.items.join(""),name:i})}}}};return a.api.plugins.add("legend",f),f}),function(a){if("function"==typeof define&&define.amd)define(["tauCharts"],function(b){return a(b)});else if("object"==typeof module&&module.exports){var b=require("tauCharts");module.exports=a(b)}else a(this.tauCharts)}(function(a){function b(b){return b=b||{},{template:['
','
','
','Exclude',"
","
"].join(""),itemTemplate:['
','
<%=label%>
','
<%=value%>
',"
"].join(""),onExcludeData:function(){},_drawPoint:function(a,b,c,d){this.circle&&this.circle.remove(),this.circle=a.append("circle").attr("cx",b).attr("cy",c).attr("class",d).attr("r",4),this.circle.node().addEventListener("mouseover",function(){clearTimeout(this._timeoutHideId)}.bind(this),!1),this.circle.node().addEventListener("mouseleave",function(){this._hide()}.bind(this),!1)},formatters:{},labels:{},init:function(a){this._chart=a,this._dataFields=b.fields,this._getDataFields=b.getFields,c.extend(this,c.omit(b,"fields","getFields")),this._timeoutHideId=null,this._dataWithCoords={},this._unitMeta={},this._templateItem=c.template(this.itemTemplate),this._tooltip=a.addBalloon({spacing:3,auto:!0,effectClass:"fade"}),this._elementTooltip=this._tooltip.getElement();var d=a.getConfig().spec,e=this._findDimensionGuides(d),f=c.reduce(e,function(a,b,d){return a[d]=c.last(b),a},{}),g=this._generateDefaultFormatters(f,d.dimensions);c.extend(this.formatters,g);var h=this._generateDefaultLabels(f);c.extend(this.labels,h);var i=this._elementTooltip;i.addEventListener("mouseover",function(){clearTimeout(this._timeoutHideId)}.bind(this),!1),i.addEventListener("mouseleave",function(){this._hide()}.bind(this),!1),i.addEventListener("click",function(a){for(var b=a.target;b!==a.currentTarget&&null!==b;)b.classList.contains("i-role-exclude")&&(this._exclude(),this._hide()),b=b.parentNode -}.bind(this),!1),i.insertAdjacentHTML("afterbegin",this.template),this.afterInit(this._elementTooltip)},afterInit:function(){},onUnitReady:function(a,b){if(b.type&&0===b.type.indexOf("ELEMENT")){var c=this._generateKey(b.$where);this._unitMeta[c]=b;var d=b.partition();this._dataWithCoords[c]=d.map(function(a){return{x:b.options.xScale(a[b.x.scaleDim]),y:b.options.yScale(a[b.y.scaleDim]),item:a}},this)}},renderItem:function(a,b){return this._templateItem({label:a,value:b})},render:function(a,b){return b=c.unique(b),b.map(function(b){var c=a[b],d=this._getFormatter(b)(c),e=this._getLabel(b);return this.renderItem(e,d,b,c)},this).join("")},afterRender:function(){},onRender:function(a){c.isFunction(this._getDataFields)&&(this._dataFields=this._getDataFields(a)),this._hide()},_getFormatter:function(a){return this.formatters[a]||c.identity},_getLabel:function(a){return this.labels[a]||a},_generateDefaultLabels:function(a){return c.reduce(a,function(a,b,c){return a[c]=b.label||c,a},{})},_generateDefaultFormatters:function(b,d){return c.reduce(b,function(b,c,e){var f=function(b){if(null==b)return null;var f=c.tickPeriod||c.tickFormat;return f?a.api.tickFormat.get(f)(b):c.tickLabel?b[c.tickLabel]:d[e].value?b[d[e].value]:b};return b[e]=function(a){var b=f(a);return null==b?"No "+c.label:b},b},{})},_findDimensionGuides:function(a){var b={},c=function(a,c){var d=c[a];if(d){var e=(c.guide||{})[a];e&&(b[d]||(b[d]=[]),b[d].push(e))}};return f(a.unit,function(a){return c("x",a),c("y",a),c("color",a),c("size",a),!1}),b},_exclude:function(){this._chart.addFilter({tag:"exclude",predicate:function(a){return function(b){return JSON.stringify(b)!==JSON.stringify(a)}}(this._currentElement)}),this.onExcludeData(this._currentElement)},_calculateLength:function(a,b,c,d){return(c-a)*(c-a)+(d-b)*(d-b)},_calculateLengthToLine:function(a,b,c,d,f,g){var h={x:c-a,y:d-b},i={x:f-a,y:g-b},j=h.x*i.x+h.y*i.y;if(0>j)return e(a,f,b,g);var k={x:a-c,y:b-d},l={x:f-c,y:g-d},m=k.x*l.x+k.y*l.y;return 0>m?e(c,f,d,g):Math.abs(((c-a)*(g-b)-(d-b)*(f-a))/e(a,c,b,d))},_generateKey:function(a){return JSON.stringify(a)},_getFields:function(a){if(this._dataFields)return this._dataFields;for(var b=[a.size&&a.size.scaleDim,a.color&&a.color.scaleDim],d=[],e=[];a=a.parentUnit;)d.push(a.x.scaleDim),e.push(a.y.scaleDim);return c.compact(b.concat(e,d).reverse())},isLine:function(a){return a.elementData.hasOwnProperty("key")&&Array.isArray(a.elementData.values)},_onElementMouseOver:function(a,b,e,f){clearTimeout(this._timeoutHideId);var g=this._generateKey(b.cellData.$where),h=b.elementData,i=this.isLine(b);if(i){var j=this._dataWithCoords[g],k=j.filter(function(a){return c.contains(h.values,a.item)}),l=c.reduce(k,function(a,b,c,d){var f;if(c+1===d.length){var g=b;b=d[c-1],f=g}else f=d[c+1];var h=this._calculateLengthToLine(b.x,b.y,f.x,f.y,e[0],e[1]);return h1&&f("i-trendline-"+e,p,i.xScale,i.yScale,i.color(g),i.container,h)});var q=function(a){return function(){var b=e.select(this);b.classed({active:a,"graphical-report__line-width-1":!a,"graphical-report__line-width-2":a})}};i.container.selectAll(".graphical-report__trendline").on("mouseenter",q(!0)).on("mouseleave",q(!1))}},containerTemplate:'
',template:d.template(['","
",'","
",'
<%= error %>
'].join("")),onRender:function(){this._container&&(this._container.innerHTML=this.template({title:"Trend line",error:this._error,showTrend:b.showTrend&&this._isApplicable?"checked":"",models:["linear","exponential","logarithmic"].map(function(a){var c=b.type===a?"selected":"";return""})}))}}}var c=function(){"use strict";var a=function(a,b){var c=0,d=0,e=0,f=0,g=0,h=a.length-1,i=new Array(b);for(c=0;h>c;c++){for(f=c,d=c+1;h>d;d++)Math.abs(a[c][d])>Math.abs(a[c][f])&&(f=d);for(e=c;h+1>e;e++)g=a[e][c],a[e][c]=a[e][f],a[e][f]=g;for(d=c+1;h>d;d++)for(e=h;e>=c;e--)a[e][d]-=a[e][c]*a[c][d]/a[c][c]}for(d=h-1;d>=0;d--){for(g=0,e=d+1;h>e;e++)g+=a[e][d]*i[e];i[d]=(a[h][d]-g)/a[d][d]}return i},b={linear:function(a){for(var b=[0,0,0,0,0],c=0,d=[];cg;g++){var i=[a[g][0],a[g][0]*e+f];d.push(i)}var j="y = "+Math.round(100*e)/100+"x + "+Math.round(100*f)/100;return{equation:[e,f],points:d,string:j}},exponential:function(a){var b=[0,0,0,0,0,0],c=0,d=[];for(i=a.length;i>c;c++)a[c][1]&&(b[0]+=a[c][0],b[1]+=a[c][1],b[2]+=a[c][0]*a[c][0]*a[c][1],b[3]+=a[c][1]*Math.log(a[c][1]),b[4]+=a[c][0]*a[c][1]*Math.log(a[c][1]),b[5]+=a[c][0]*a[c][1]);for(var e=b[1]*b[2]-b[5]*b[5],f=Math.pow(Math.E,(b[2]*b[3]-b[5]*b[4])/e),g=(b[1]*b[4]-b[5]*b[3])/e,h=0,i=a.length;i>h;h++){var j=[a[h][0],f*Math.pow(Math.E,g*a[h][0])];d.push(j)}var k="y = "+Math.round(100*f)/100+"e^("+Math.round(100*g)/100+"x)";return{equation:[f,g],points:d,string:k}},logarithmic:function(a){var b=[0,0,0,0],c=0,d=[];for(h=a.length;h>c;c++)a[c][1]&&(b[0]+=Math.log(a[c][0]),b[1]+=a[c][1]*Math.log(a[c][0]),b[2]+=a[c][1],b[3]+=Math.pow(Math.log(a[c][0]),2));for(var e=(c*b[1]-b[2]*b[0])/(c*b[3]-b[0]*b[0]),f=(b[2]-e*b[0])/c,g=0,h=a.length;h>g;g++){var i=[a[g][0],f+e*Math.log(a[g][0])];d.push(i)}var j="y = "+Math.round(100*f)/100+" + "+Math.round(100*e)/100+" ln(x)";return{equation:[f,e],points:d,string:j}},power:function(a){var b=[0,0,0,0],c=0,d=[];for(h=a.length;h>c;c++)a[c][1]&&(b[0]+=Math.log(a[c][0]),b[1]+=Math.log(a[c][1])*Math.log(a[c][0]),b[2]+=Math.log(a[c][1]),b[3]+=Math.pow(Math.log(a[c][0]),2));for(var e=(c*b[1]-b[2]*b[0])/(c*b[3]-b[0]*b[0]),f=Math.pow(Math.E,(b[2]-e*b[0])/c),g=0,h=a.length;h>g;g++){var i=[a[g][0],f*Math.pow(a[g][0],e)];d.push(i)}var j="y = "+Math.round(100*f)/100+"x^"+Math.round(100*e)/100;return{equation:[f,e],points:d,string:j}},polynomial:function(b,c){"undefined"==typeof c&&(c=2);for(var d=[],e=[],f=[],g=0,h=0,i=0,j=c+1;j>i;i++){for(var k=0,l=b.length;l>k;k++)b[k][1]&&(g+=Math.pow(b[k][0],i)*b[k][1]);d.push(g),g=0;for(var m=[],n=0;j>n;n++){for(var k=0,l=b.length;l>k;k++)b[k][1]&&(h+=Math.pow(b[k][0],i+n));m.push(h),h=0}e.push(m)}e.push(d);for(var o=a(e,j),i=0,l=b.length;l>i;i++){for(var p=0,q=0;q=0;i--)r+=i>1?Math.round(100*o[i])/100+"x^"+i+" + ":1==i?Math.round(100*o[i])/100+"x + ":Math.round(100*o[i])/100;return{equation:o,points:f,string:r}},lastvalue:function(a){for(var b=[],c=null,d=0;d0&&(a.splice(k-1,2),k-=2)}a=a.join("/")}else 0===a.indexOf("./")&&(a=a.substring(2));if((n||p)&&o){for(c=a.split("/"),k=c.length;k>0;k-=1){if(d=c.slice(0,k).join("/"),n)for(l=n.length;l>0;l-=1)if(e=o[n.slice(0,l).join("/")],e&&(e=e[d])){f=e,h=k;break}if(f)break;!i&&p&&p[d]&&(i=p[d],j=k)}!f&&i&&(f=i,h=j),f&&(c.splice(0,h,f),a=c.join("/"))}return a}function g(b,c){return function(){var d=v.call(arguments,0);return"string"!=typeof d[0]&&1===d.length&&d.push(null),n.apply(a,d.concat([b,c]))}}function h(a){return function(b){return f(b,a)}}function i(a){return function(b){q[a]=b}}function j(c){if(b(r,c)){var d=r[c];delete r[c],t[c]=!0,m.apply(a,d)}if(!b(q,c)&&!b(t,c))throw new Error("No "+c);return q[c]}function k(a){var b,c=a?a.indexOf("!"):-1;return c>-1&&(b=a.substring(0,c),a=a.substring(c+1,a.length)),[b,a]}function l(a){return function(){return s&&s.config&&s.config[a]||{}}}var m,n,o,p,q={},r={},s={},t={},u=Object.prototype.hasOwnProperty,v=[].slice,w=/\.js$/;o=function(a,b){var c,d=k(a),e=d[0];return a=d[1],e&&(e=f(e,b),c=j(e)),e?a=c&&c.normalize?c.normalize(a,h(b)):f(a,b):(a=f(a,b),d=k(a),e=d[0],a=d[1],e&&(c=j(e))),{f:e?e+"!"+a:a,n:a,pr:e,p:c}},p={require:function(a){return g(a)},exports:function(a){var b=q[a];return"undefined"!=typeof b?b:q[a]={}},module:function(a){return{id:a,uri:"",exports:q[a],config:l(a)}}},m=function(c,d,e,f){var h,k,l,m,n,s,u=[],v=typeof e;if(f=f||c,"undefined"===v||"function"===v){for(d=!d.length&&e.length?["require","exports","module"]:d,n=0;n','','','<%= xTick %>',"","",""].join(""),e=a.template(d),f=document.createElement("div");f.style.position="absolute",f.style.visibility="hidden",f.style.width="100px",f.style.height="100px",f.style.border="1px solid green",document.body.appendChild(f),f.innerHTML=e({xTick:c});var g=b.select(f).selectAll(".x.axis .tick text")[0][0],h={width:0,height:0},i=g.getBoundingClientRect();h.width=i.right-i.left,h.height=i.bottom-i.top;var j=0!==c.length?h.width/c.length:0;return h.width=h.width+1.5*j,document.body.removeChild(f),h}};c.utilsDom=e}),e("dsl-reader",["exports"],function(b){var c=function(a,b,c){b&&Object.defineProperties(a,b),c&&Object.defineProperties(a.prototype,c)},d=function(){function b(a,b){this.domain=a,this.UnitsRegistry=b}return c(b,null,{buildGraph:{value:function(a){var b=this,c=function(a){return b.UnitsRegistry.get(a.type).walk(b.domain.mix(a),c)};return c(a.unit)},writable:!0,enumerable:!0,configurable:!0},calcLayout:{value:function(a,b){a.options={top:0,left:0,width:b.width,height:b.height};var c=function(a){if(!a.$matrix)return a;var b,d=a.options,e=a.guide.padding,f=d.width-(e.l+e.r),g=d.height-(e.t+e.b),h=a.$matrix.sizeR(),i=a.$matrix.sizeC(),j=f/i,k=g/h;return b=a.guide.split?{calcHeight:function(a,b,c,d){return a/d},calcTop:function(a,b,c,d){return(b+1)*(a/d)*c}}:{calcHeight:function(a){return a},calcTop:function(a,b){return b*k}},a.childUnits=a.childUnits||[],a.$matrix.iterate(function(d,e,f){var g=f.length;f.forEach(function(f,h){f.options={width:j,left:e*j,height:b.calcHeight(k,d,h,g),top:b.calcTop(k,d,h,g)},a.childUnits.push(f),c(f)})}),a};return c(a)},writable:!0,enumerable:!0,configurable:!0},renderGraph:{value:function(b,c,d){var e=this,f=d||function(a){return a};b.options.container=c;var g=function(b){var c=e.domain.mix(b),d=e.UnitsRegistry.get(b.type).draw(c),h=b.childUnits||[];h.forEach(function(c){c.options=a.extend({container:d},c.options),c.parentUnit=b,g(c)}),f(c)};return b.parentUnit=null,g(b),b.options.container},writable:!0,enumerable:!0,configurable:!0}}),b}();b.DSLReader=d}),e("const",["exports"],function(a){a.CSS_PREFIX="graphical-report__"}),e("api/balloon",["exports","../const"],function(a,b){function c(a,b){for(var c in b)a[c]=b[c];return a}function d(a){return a&&null!=a.setInterval}function e(a){var b=l.pageYOffset||o.scrollTop,e=l.pageXOffset||o.scrollLeft,f={left:0,right:0,top:0,bottom:0,width:0,height:0};if(d(a))f.width=l.innerWidth||o.clientWidth,f.height=l.innerHeight||o.clientHeight;else{if(!o.contains(a)||null==a.getBoundingClientRect)return f;c(f,a.getBoundingClientRect()),f.width=f.right-f.left,f.height=f.bottom-f.top}return f.top=f.top+b-o.clientTop,f.left=f.left+e-o.clientLeft,f.right=f.left+f.width,f.bottom=f.top+f.height,f}function f(a){return 0|Math.round(String(a).replace(/[^\-0-9.]/g,""))}function g(a){var b=String(q(a,g.propName)),c=b.match(/([0-9.]+)([ms]{1,2})/);return c&&(b=Number(c[1]),"s"===c[2]&&(b*=1e3)),0|b}function h(a,b){return this instanceof h?(this.hidden=1,this.options=c(r(h.defaults),b),this._createElement(),void this.content(a)):new h(a,b)}var i=b.CSS_PREFIX,j=function(a){return{add:function(b){a.classList.add(b)},remove:function(b){a.classList.remove(b)}}},k=function(a,b){return a.indexOf(b)},l=window,m=l.document,n=m.body,o=m.documentElement,p=["top","bottom"],q=l.getComputedStyle;g.propName=function(){for(var a=m.createElement("div"),b=["transitionDuration","webkitTransitionDuration"],c="1s",d=0;d=b.bottom&&(c[0]="top"),c[1]){case"left":a.right-this.width<=b.left&&(c[1]="right");break;case"right":a.left+this.width>=b.right&&(c[1]="left");break;default:a.left+a.width/2+this.width/2>=b.right?c[1]="left":a.right-a.width/2-this.width/2<=b.left&&(c[1]="right")}else switch(a.left-this.width-d<=b.left?c[0]="right":a.right+this.width+d>=b.right&&(c[0]="left"),c[1]){case"top":a.bottom-this.height<=b.top&&(c[1]="bottom");break;case"bottom":a.top+this.height>=b.bottom&&(c[1]="top");break;default:a.top+a.height/2+this.height/2>=b.bottom?c[1]="top":a.bottom-a.height/2-this.height/2<=b.top&&(c[1]="bottom")}return c.join("-")},h.prototype.position=function(a,b){this.attachedTo&&(a=this.attachedTo),null==a&&this._p?(a=this._p[0],b=this._p[1]):this._p=arguments;var c="number"==typeof a?{left:0|a,right:0|a,top:0|b,bottom:0|b,width:0,height:0}:e(a),d=this.spacing,f=this._pickPlace(c);f!==this.curPlace&&(this.curPlace&&this.classes.remove(this.curPlace),this.classes.add(f),this.curPlace=f);var g,h;switch(this.curPlace){case"top":g=c.top-this.height-d,h=c.left+c.width/2-this.width/2;break;case"top-left":g=c.top-this.height-d,h=c.right-this.width;break;case"top-right":g=c.top-this.height-d,h=c.left;break;case"bottom":g=c.bottom+d,h=c.left+c.width/2-this.width/2;break;case"bottom-left":g=c.bottom+d,h=c.right-this.width;break;case"bottom-right":g=c.bottom+d,h=c.left;break;case"left":g=c.top+c.height/2-this.height/2,h=c.left-this.width-d;break;case"left-top":g=c.bottom-this.height,h=c.left-this.width-d;break;case"left-bottom":g=c.top,h=c.left-this.width-d;break;case"right":g=c.top+c.height/2-this.height/2,h=c.right+d;break;case"right-top":g=c.bottom-this.height,h=c.right+d;break;case"right-bottom":g=c.top,h=c.right+d}return this.element.style.top=Math.round(g)+"px",this.element.style.left=Math.round(h)+"px",this},h.prototype.show=function(a,b){return a=this.attachedTo?this.attachedTo:a,clearTimeout(this.aIndex),null!=a&&this.position(a,b),this.hidden&&(this.hidden=0,n.appendChild(this.element)),this.attachedTo&&this._aware(),this.options.inClass&&(this.options.effectClass&&void this.element.clientHeight,this.classes.add(this.options.inClass)),this},h.prototype.getElement=function(){return this.element},h.prototype.hide=function(){if(!this.hidden){var a=this,b=0;return this.options.inClass&&(this.classes.remove(this.options.inClass),this.options.effectClass&&(b=g(this.element))),this.attachedTo&&this._unaware(),clearTimeout(this.aIndex),this.aIndex=setTimeout(function(){a.aIndex=0,n.removeChild(a.element),a.hidden=1},b),this}},h.prototype.toggle=function(a,b){return this[this.hidden?"show":"hide"](a,b)},h.prototype.destroy=function(){clearTimeout(this.aIndex),this._unaware(),this.hidden||n.removeChild(this.element),this.element=this.options=null},h.prototype._aware=function(){var a=k(h.winAware,this);~a||h.winAware.push(this)},h.prototype._unaware=function(){var a=k(h.winAware,this);~a&&h.winAware.splice(a,1)},h.reposition=function(){function a(){!c&&h.winAware.length&&(c=d(b))}function b(){c=0;for(var a,b=0,d=h.winAware.length;d>b;b++)a=h.winAware[b],a.position()}var c,d=window.requestAnimationFrame||window.webkitRequestAnimationFrame||function(a){return setTimeout(a,17)};return a}(),h.winAware=[],window.addEventListener("resize",h.reposition),window.addEventListener("scroll",h.reposition),h.classTypes=["type","effect"],h.defaults={baseClass:i+"tooltip",typeClass:null,effectClass:null,inClass:"in",place:"top",spacing:null,auto:0},a.Tooltip=h}),e("event",["exports"],function(a){function b(a){var b=e[a];return b||(b=function(){for(var b,c,d=this,e=0;d=d.handler;){if(c=d.callbacks[a],"function"==typeof c){if(!b)for(b=[this],e=0;e=0?-1:1,f=d||1;d-=e*f/b}for(var g=[c,d],h=g[1]-g[0],i=Math.pow(10,Math.floor(Math.log(h/b)/Math.LN10)),j=b/h*i,k=[[.15,10],[.35,5],[.75,2],[1,1],[2,1]],l=-1;j>k[++l][0];);i*=k[l][1],g[0]=Math.floor(g[0]/i)*i,g[1]=Math.ceil(g[1]/i)*i;var m=c-g[0],n=g[1]-d,o=i/2;if(c>=0)g[0]=0;else{var p=o>=m?i:0;g[0]=g[0]-p}if(0>=d)g[1]=0;else{var q=o>=n?i:0;g[1]=g[1]+q}return[parseFloat(g[0].toFixed(15)),parseFloat(g[1].toFixed(15))]},traverseJSON:b};a.utils=c}),e("formatter-registry",["exports","d3"],function(b,c){var d=c,e={"x-num-auto":function(a){var b=parseFloat(a.toFixed(2));return Math.abs(b)<1?b.toString():d.format("s")(b)},percent:function(a){var b=parseFloat((100*a).toFixed(2));return b.toString()+"%"},day:d.time.format("%d-%b-%Y"),"day-short":d.time.format("%d-%b"),week:d.time.format("%d-%b-%Y"),"week-short":d.time.format("%d-%b"),month:function(a){var b=new Date(a),c=b.getMonth(),e=0===c?"%B, %Y":"%B";return d.time.format(e)(a)},"month-short":function(a){var b=new Date(a),c=b.getMonth(),e=0===c?"%b '%y":"%b";return d.time.format(e)(a)},"month-year":d.time.format("%B, %Y"),quarter:function(a){var b=new Date(a),c=b.getMonth(),d=(c-c%3)/3;return"Q"+(d+1)+" "+b.getFullYear()},year:d.time.format("%Y"),"x-time-auto":null},f={get:function(b,c){var f=c||"",g=function(a){return(null===a||"undefined"==typeof a?f:a).toString()},h=e.hasOwnProperty(b),i=h?e[b]:g;return h&&(i=e[b]),!h&&b&&(i=function(c){var e=a.isDate(c)?d.time.format(b):d.format(b);return e(c)}),h||b||(i=g),i},add:function(a,b){e[a]=b}};b.FormatterRegistry=f}),e("utils/utils-draw",["exports","../utils/utils","../formatter-registry","underscore","d3"],function(a,b,c,d,e){var f=(b.utils,c.FormatterRegistry),g=d,h=e,i=function(a,b){return"translate("+a+","+b+")"},j=function(a){return"rotate("+a+")"},k=function(a){return g.contains(["bottom","top"],a.toLowerCase())?"h":"v"},l=function(a,b,c){c=c||function(a){return a.node().getComputedTextLength()},a.each(function(){var a=h.select(this),d=a.text().split(/\s+/),e=!1,f=d.reduce(function(d,f,g){if(e)return d;var h=g>0?[d,f].join(" "):f,i=c(a.text(h));if(b>i)d=h;else{var j=Math.floor(b/i*h.length);d=h.substr(0,j-4)+"...",e=!0}return d},"");a.text(f)})},m=function(a,b,c,d,e,f){f=f||function(a){return a.node().getComputedTextLength()};var g=function(a,b,c,d,e,f,g){var h=g*c+f;return a.append("tspan").attr("x",d).attr("y",e).attr("dy",h+"em").text(b)};a.each(function(){var a=h.select(this),i=a.text().split(/\s+/),j=1.1,k=a.attr("x"),l=a.attr("y"),m=parseFloat(a.attr("dy"));a.text(null);var n=g(a,null,j,k,l,m,0),o=!1,p=i.length-1,q=i.reduce(function(a,d,e){if(o)return a;var g=a.length===c||e===p,h=a[a.length-1],i=""!==h?h+" "+d:d,j=f(n.text(i)),k=j>b;if(k&&g){var l=Math.floor(b/j*i.length);a[a.length-1]=i.substr(0,l-4)+"...",o=!0}return k&&!g&&a.push(d),k||(a[a.length-1]=i),a},[""]).filter(function(a){return a.length>0});l=e?-1*(q.length-1)*Math.floor(.5*d):l,q.forEach(function(b,c){return g(a,b,j,k,l,m,c)}),n.remove()})},n=function(a,b,c){var d=a.selectAll(".tick line"),e=c/d[0].length,f=e/2,g="h"===k(b.guide.scaleOrient);if("ordinal"===b.scaleType||"period"===b.scaleType){var h=g?"x":"y",i=g?f:-f;d.attr(h+"1",i).attr(h+"2",i)}},o=function(a,b){var c="h"===k(b.guide.scaleOrient);if(c&&"time"===b.scaleType){var d=a.selectAll(".tick")[0];if(d.length<2)return;var e=parseFloat(d[0].attributes.transform.value.replace("translate(","")),f=parseFloat(d[1].attributes.transform.value.replace("translate(","")),g=f-e,h=0,i=-1,j=a.selectAll(".tick text")[0];if(j.forEach(function(a,b){var c=a.innerHTML||"",d=c.length;d>h&&(h=d,i=b)}),i>=0){var l=j[i].getBoundingClientRect();g-l.width<8&&a.classed({"graphical-report__d3-time-overflown":!0})}}},p=function(a,b,c){var d=a.selectAll(".tick line"),e="h"===k(b.guide.scaleOrient);if(!e){var f=!1,g=-1;if("time"===b.scaleType)f=!0,g=0;else if("ordinal"===b.scaleType||"period"===b.scaleType){f=!0;var h=c/d[0].length,j=h/2;g=-j}if(f){var l=a.select(".tick").node().cloneNode(!0);a.append(function(){return l}).attr("transform",i(0,c-g))}}},q=function(a,b){var c=k(b.guide.scaleOrient),d="h"===c?1:-1,e=a.append("text").attr("transform",j(b.guide.label.rotate)).attr("class",b.guide.label.cssClass).attr("x",d*b.guide.size*.5).attr("y",d*b.guide.label.padding).style("text-anchor",b.guide.label.textAnchor),f=" > ",g=b.guide.label.text.split(f),h=g.length;if(g.forEach(function(a,b){e.append("tspan").attr("class","label-token label-token-"+b).text(a),h-1>b&&e.append("tspan").attr("class","label-token-delimiter label-token-delimiter-"+b).text(f)}),"right"===b.guide.label.dock){var i=a.selectAll("path.domain").node().getBBox();e.attr("x","h"===c?i.width:0)}else if("left"===b.guide.label.dock){var i=a.selectAll("path.domain").node().getBBox();e.attr("x","h"===c?0:-i.height)}},r=function(a,b){var c="h"===k(b.guide.scaleOrient),d=b.guide.rotate,e=a.selectAll(".tick text");if(e.attr("transform",j(d)).style("text-anchor",b.guide.textAnchor),90===d){var f=parseFloat(e.attr("dy"))/2;e.attr("x",9).attr("y",0).attr("dy",""+f+"em")}b.guide.tickFormatWordWrap?e.call(m,b.guide.tickFormatWordWrapLimit,b.guide.tickFormatWordWrapLines,b.guide.$maxTickTextH,!c):e.call(l,b.guide.tickFormatWordWrapLimit)},s=function(a,b,c){var d=this;if(a.scaleDim){var e=h.svg.axis().scale(a.scaleObj).orient(a.guide.scaleOrient),g=f.get(a.guide.tickFormat,a.guide.tickFormatNullAlias);null!==g&&(e.ticks(Math.round(c/a.guide.density)),e.tickFormat(g));var j=d.append("g").attr("class",a.guide.cssClass).attr("transform",i.apply(null,b)).call(e);n(j,a,c),r(j,a),q(j,a),o(j,a)}},t=function(a,b,c){var d=this,e=d.append("g").attr("class","grid").attr("transform",i(0,0)),g=(a.guide.showGridLines||"").toLowerCase();if(g.length>0){var j=e.append("g").attr("class","grid-lines");if(g.indexOf("x")>-1&&a.x.scaleDim){var k=a.x,l=h.svg.axis().scale(k.scaleObj).orient(k.guide.scaleOrient).tickSize(b),m=f.get(k.guide.tickFormat);null!==m&&(l.ticks(Math.round(c/k.guide.density)),l.tickFormat(m));var o=j.append("g").attr("class","grid-lines-x").call(l);n(o,k,c);var q=o.select("g.tick");if(q.node()&&"translate(0,0)"!==q.attr("transform")){var r=q.node().cloneNode(!0);j.node().appendChild(r),h.select(r).attr("class","border").attr("transform",i(0,0)).select("line").attr("x1",0).attr("x2",0)}}if(g.indexOf("y")>-1&&a.y.scaleDim){var s=a.y,t=h.svg.axis().scale(s.scaleObj).orient(s.guide.scaleOrient).tickSize(-c),m=f.get(s.guide.tickFormat);null!==m&&(t.ticks(Math.round(b/s.guide.density)),t.tickFormat(m));var u=j.append("g").attr("class","grid-lines-y").call(t);n(u,s,b),p(u,s,b)}j.selectAll("text").remove()}return e},u=function(a,b,c){return a[b]=g.defaults(a[b]||{},{label:""}),a[b].label=g.isObject(a[b].label)?a[b].label:{text:a[b].label},a[b].label=g.defaults(a[b].label,c||{},{padding:32,rotate:0,textAnchor:"middle",cssClass:"label",dock:null}),a[b]},v=function(a,b,c){return a[b]=g.defaults(a[b],c||{},{padding:0,density:30,rotate:0,tickPeriod:null,tickFormat:null,autoScale:!0}),a[b].tickFormat=a[b].tickFormat||a[b].tickPeriod,a[b]},w=function(a){return a.options=a.options||{},a.guide=a.guide||{},a.guide.padding=g.defaults(a.guide.padding||{},{l:0,b:0,r:0,t:0}),a.guide.x=u(a.guide,"x"),a.guide.x=v(a.guide,"x",{cssClass:"x axis",scaleOrient:"bottom",textAnchor:"middle"}),a.guide.y=u(a.guide,"y",{rotate:-90}),a.guide.y=v(a.guide,"y",{cssClass:"y axis",scaleOrient:"left",textAnchor:"end"}),a.guide.size=u(a.guide,"size"),a.guide.color=u(a.guide,"color"),a},x={translate:i,rotate:j,getOrientation:k,fnDrawDimAxis:s,fnDrawGrid:t,applyNodeDefaults:w,cutText:l,wrapText:m};a.utilsDraw=x}),e("spec-engine-factory",["exports","./utils/utils","./utils/utils-draw","./formatter-registry","./utils/utils-dom"],function(b,c,d,e,f){function g(b,c,d,e){var f=b.hasOwnProperty(d)?b[d]:{};a.each(e,function(b){a.extend(c.guide[d][b],f[b])}),a.extend(c.guide[d],a.omit.apply(a,[f].concat[e]))}var h=c.utils,i=d.utilsDraw,j=e.FormatterRegistry,k=(f.utilsDom,function(b,c){var d=c.guide||{},e={x:["label"],y:["label"],size:["label"],color:["label"],padding:[]};return a.each(e,function(a,c){g(d,b,c,a)}),a.extend(b.guide,a.omit.apply(a,[d].concat(a.keys(e)))),b}),l=function(b,c){return b.guide=b.guide||{},b.guide.padding=b.guide.padding||{l:0,t:0,r:0,b:0},b.hasOwnProperty("unit")||(b=a.defaults(b,c),b.guide=a.defaults(b.guide,h.clone(c.guide)),b.guide.x=a.defaults(b.guide.x,h.clone(c.guide.x)),b.guide.y=a.defaults(b.guide.y,h.clone(c.guide.y))),b},m=function(a){var b=a.unit||[],c=!a.hasOwnProperty("unit"),d=!b.some(function(a){return a.hasOwnProperty("unit")});return{type:a.type,isLeaf:c,isLeafParent:!c&&d}},n=function(b,c,d,e){if(0===b.length)return{width:0,height:0};if(null===c){var f=d("TauChart Library");return f.width=.625*e,f}var g=a.max(b,function(a){return c(a).toString().length}),h=a.isNumber(g)?".00":"";return d(c(g)+h)},o=function(a,b,c){var d=a.dimType,e=a.scaleType,f="*";if("measure"===d&&"time"===e){var g=b.source.filter(function(a){return null!==a}).sort(),h=0;if(g.length>1){for(var i=1,j=g.length,k=[];j>i;)k.push(g[i]-g[i-1]),++i;var l=k.reduce(function(a,b){return a+=b},0);h=l/k.length}var m=[[31536e6,"year"],[7776e6,"quarter"],[2592e6,"month"],[6048e5,"week"],[864e5,"day"],[36e5,"hour"],[6e4,"min"],[1e3,"sec"],[0,"ms"]],n=-1;do++n;while(m[n][0]>h);f=m[n][1]}var o=[d,e,f].join(":"),p=[d,e].join(":");return c[o]||c[p]||c[d]||null},p=function(a,b,c,d,e,f){var g=b.dimension(a.x),h=b.dimension(a.y),i="measure"===g.dimType,k="measure"===h.dimType,l=c.hasOwnProperty("xDensityPadding:"+g.dimType)?c["xDensityPadding:"+g.dimType]:c.xDensityPadding,m=c.hasOwnProperty("yDensityPadding:"+h.dimType)?c["yDensityPadding:"+h.dimType]:c.yDensityPadding,p=b.scaleMeta(a.x,a.guide.x),q=p.values,r=b.scaleMeta(a.y,a.guide.y),s=r.values;a.guide.x.tickFormat=a.guide.x.tickFormat||o(g,p,c.defaultFormats),a.guide.y.tickFormat=a.guide.y.tickFormat||o(h,r,c.defaultFormats),["day","week","month"].indexOf(a.guide.x.tickFormat)>=0&&(a.guide.x.tickFormat+="-short"),["day","week","month"].indexOf(a.guide.y.tickFormat)>=0&&(a.guide.y.tickFormat+="-short");var t=0===q.length,u=0===s.length,v=n(q,j.get(a.guide.x.tickFormat,a.guide.x.tickFormatNullAlias),c.getAxisTickLabelSize,c.xAxisTickLabelLimit),w=n(s,j.get(a.guide.y.tickFormat,a.guide.y.tickFormatNullAlias),c.getAxisTickLabelSize,c.yAxisTickLabelLimit),x=c.xAxisPadding,y=c.yAxisPadding,z=d?!i:!1,A=e?!k:!1;a.guide.x.padding=t?0:x,a.guide.y.padding=u?0:y,a.guide.x.rotate=z?90:0,a.guide.x.textAnchor=z?"start":a.guide.x.textAnchor,a.guide.y.rotate=A?-90:0,a.guide.y.textAnchor=A?"middle":a.guide.y.textAnchor;var B=t?0:c.xTickWidth,C=u?0:c.yTickWidth;a.guide.x.tickFormatWordWrapLimit=c.xAxisTickLabelLimit,a.guide.y.tickFormatWordWrapLimit=c.yAxisTickLabelLimit;var D=z?{w:v.height,h:v.width}:{h:v.height,w:v.width};if(v.width>c.xAxisTickLabelLimit){a.guide.x.tickFormatWordWrap=!0,a.guide.x.tickFormatWordWrapLines=c.xTickWordWrapLinesLimit;var E=Math.ceil(v.width/c.xAxisTickLabelLimit),F=Math.min(E,c.xTickWordWrapLinesLimit),G=F*v.height;z?(D.h=c.xAxisTickLabelLimit,D.w=G):(D.h=G,D.w=c.xAxisTickLabelLimit)}var H=A?{w:w.height,h:w.width}:{h:w.height,w:w.width};if(w.width>c.yAxisTickLabelLimit){a.guide.y.tickFormatWordWrap=!0,a.guide.y.tickFormatWordWrapLines=c.yTickWordWrapLinesLimit;var E=Math.ceil(w.width/c.yAxisTickLabelLimit),F=Math.min(E,c.yTickWordWrapLinesLimit),G=F*w.height;A?(H.w=G,H.h=c.yAxisTickLabelLimit):(H.w=c.yAxisTickLabelLimit,H.h=G)}var I=B+D.h,J=C+H.w,K=c.xFontLabelHeight,L=c.yFontLabelHeight,M=c.distToXAxisLabel,N=c.distToYAxisLabel;if(a.guide.x.density=D.w+2*l,a.guide.y.density=H.h+2*m,f){var O=(x-K)/2;a.guide.x.label.padding=0+K-M+O,a.guide.y.label.padding=0-N+O,a.guide.x.label.cssClass+=" inline",a.guide.x.label.dock="right",a.guide.x.label.textAnchor="end",a.guide.y.label.cssClass+=" inline",a.guide.y.label.dock="right",a.guide.y.label.textAnchor="end",a.guide.padding.b=x+I,a.guide.padding.l=y+J,a.guide.padding.b=a.guide.x.hide?0:a.guide.padding.b,a.guide.padding.l=a.guide.y.hide?0:a.guide.padding.l}else{a.guide.x.label.padding=+K+(a.guide.x.label.text?I+M:0),a.guide.y.label.padding=-K+(a.guide.y.label.text?J+N:0);var P=a.guide.x.label.text?a.guide.x.label.padding+K:I,Q=a.guide.y.label.text?a.guide.y.label.padding+L:J;a.guide.padding.b=x+P-B,a.guide.padding.l=y+Q,a.guide.padding.b=a.guide.x.hide?0:a.guide.padding.b,a.guide.padding.l=a.guide.y.hide?0:a.guide.padding.l}return a.guide.x.tickFontHeight=v.height,a.guide.y.tickFontHeight=w.height,a.guide.x.$minimalDomain=q.length,a.guide.y.$minimalDomain=s.length,a.guide.x.$maxTickTextW=v.width,a.guide.x.$maxTickTextH=v.height,a.guide.y.$maxTickTextW=w.width,a.guide.y.$maxTickTextH=w.height,a},q={NONE:function(a,b,c){var d=h.clone(a);return r(h.clone(d.unit),d.unit,function(a,b){return b.guide.x.tickFontHeight=c.getAxisTickLabelSize("X").height,b.guide.y.tickFontHeight=c.getAxisTickLabelSize("Y").height,b.guide.x.tickFormatWordWrapLimit=c.xAxisTickLabelLimit,b.guide.y.tickFormatWordWrapLimit=c.yAxisTickLabelLimit,b}),d},"BUILD-LABELS":function(b){var c=h.clone(b),d=[],e=[],f=null,g=null;return h.traverseJSON(c.unit,"unit",m,function(b,c){if(b.isLeaf)return c;!f&&c.x&&(f=c),!g&&c.y&&(g=c),c.guide=c.guide||{},c.guide.x=c.guide.x||{label:""},c.guide.y=c.guide.y||{label:""},c.guide.x.label=a.isObject(c.guide.x.label)?c.guide.x.label:{text:c.guide.x.label},c.guide.y.label=a.isObject(c.guide.y.label)?c.guide.y.label:{text:c.guide.y.label},c.x&&(c.guide.x.label.text=c.guide.x.label.text||c.x),c.y&&(c.guide.y.label.text=c.guide.y.label.text||c.y);var h=c.guide.x.label.text;h&&(d.push(h),c.guide.x.tickFormatNullAlias=c.guide.x.hasOwnProperty("tickFormatNullAlias")?c.guide.x.tickFormatNullAlias:"No "+h,c.guide.x.label.text="");var i=c.guide.y.label.text;return i&&(e.push(i),c.guide.y.tickFormatNullAlias=c.guide.y.hasOwnProperty("tickFormatNullAlias")?c.guide.y.tickFormatNullAlias:"No "+i,c.guide.y.label.text=""),c}),f&&(f.guide.x.label.text=d.join(" > ")),g&&(g.guide.y.label.text=e.join(" > ")),c},"BUILD-GUIDE":function(a,b,c){var d=h.clone(a);return r(h.clone(d.unit),d.unit,function(a,d){if(a.isLeaf)return d;a.isLeafParent&&!d.guide.hasOwnProperty("showGridLines")&&(d.guide.showGridLines="xy");var e=!a.isLeaf&&!a.isLeafParent;e&&(d.guide.x.cssClass+=" facet-axis",d.guide.y.cssClass+=" facet-axis");var f=b.dimension(d.x),g=b.dimension(d.y),h="measure"===f.dimType,i="measure"===g.dimType,k=c.hasOwnProperty("xDensityPadding:"+f.dimType)?c["xDensityPadding:"+f.dimType]:c.xDensityPadding,l=c.hasOwnProperty("yDensityPadding:"+g.dimType)?c["yDensityPadding:"+g.dimType]:c.yDensityPadding,m=b.scaleMeta(d.x,d.guide.x),p=m.values,q=b.scaleMeta(d.y,d.guide.y),r=q.values;d.guide.x.tickFormat=d.guide.x.tickFormat||o(f,m,c.defaultFormats),d.guide.y.tickFormat=d.guide.y.tickFormat||o(g,q,c.defaultFormats);var s=0===p.length,t=0===r.length,u=n(p,j.get(d.guide.x.tickFormat,d.guide.x.tickFormatNullAlias),c.getAxisTickLabelSize,c.xAxisTickLabelLimit),v=n(r,j.get(d.guide.y.tickFormat,d.guide.y.tickFormatNullAlias),c.getAxisTickLabelSize,c.yAxisTickLabelLimit),w=a.isLeafParent?c.xAxisPadding:0,x=a.isLeafParent?c.yAxisPadding:0,y=!e&&!!f.dimType&&"measure"!==f.dimType;d.guide.x.padding=s?0:w,d.guide.y.padding=t?0:x,d.guide.x.rotate=y?90:0,d.guide.x.textAnchor=y?"start":d.guide.x.textAnchor;var z=s?0:c.xTickWidth,A=t?0:c.yTickWidth;d.guide.x.tickFormatWordWrapLimit=c.xAxisTickLabelLimit,d.guide.y.tickFormatWordWrapLimit=c.yAxisTickLabelLimit;var B=y?u.width:u.height;!h&&B>c.xAxisTickLabelLimit&&(B=c.xAxisTickLabelLimit),!y&&u.width>c.xAxisTickLabelLimit&&(d.guide.x.tickFormatWordWrap=!0,d.guide.x.tickFormatWordWrapLines=c.xTickWordWrapLinesLimit,B=c.xTickWordWrapLinesLimit*u.height);var C=v.width;!i&&C>c.yAxisTickLabelLimit&&(C=c.yAxisTickLabelLimit,d.guide.y.tickFormatWordWrap=!0,d.guide.y.tickFormatWordWrapLines=c.yTickWordWrapLinesLimit);var D=z+B,E=A+C,F=c.xFontLabelHeight,G=c.yFontLabelHeight,H=c.distToXAxisLabel,I=c.distToYAxisLabel,J=Math.min(c.xAxisTickLabelLimit,y?u.height:u.width);d.guide.x.density=J+2*k;var K=Math.ceil(v.width/c.yAxisTickLabelLimit),L=Math.min(K,c.yTickWordWrapLinesLimit),M=Math.min(c.yAxisTickLabelLimit,L*v.height);d.guide.y.density=M+2*l,d.guide.x.label.padding=d.guide.x.label.text?D+H:0,d.guide.y.label.padding=d.guide.y.label.text?E+I:0;var N=d.guide.x.label.text?d.guide.x.label.padding+F:D,O=d.guide.y.label.text?d.guide.y.label.padding+G:E;return d.guide.padding.b=w+N,d.guide.padding.l=x+O,d.guide.padding.b=d.guide.x.hide?0:d.guide.padding.b,d.guide.padding.l=d.guide.y.hide?0:d.guide.padding.l,d.guide.x.tickFontHeight=u.height,d.guide.y.tickFontHeight=v.height,d.guide.x.$minimalDomain=p.length,d.guide.y.$minimalDomain=r.length,d.guide.x.$maxTickTextW=u.width,d.guide.x.$maxTickTextH=u.height,d.guide.y.$maxTickTextW=v.width,d.guide.y.$maxTickTextH=v.height,d}),d},"BUILD-COMPACT":function(b,c,d){var e=h.clone(b);return r(h.clone(e.unit),e.unit,function(b,e){return b.isLeaf?e:b.isLeafParent?(e.guide.showGridLines=e.guide.hasOwnProperty("showGridLines")?e.guide.showGridLines:"xy",p(e,c,a.defaults({xTickWordWrapLinesLimit:1,yTickWordWrapLinesLimit:1},d),!0,!1,!0)):(e.guide.x.cssClass+=" facet-axis compact",e.guide.y.cssClass+=" facet-axis compact",p(e,c,a.defaults({xAxisPadding:0,yAxisPadding:0,distToXAxisLabel:0,distToYAxisLabel:0,xTickWordWrapLinesLimit:1,yTickWordWrapLinesLimit:1},d),!1,!0,!1))}),e},"OPTIMAL-SIZE":function(a,b,c){var d=h.clone(a),e=function(a){var b; +if(a.unit){var c=e(a.unit[0]),d=a.guide,f=d.x.$minimalDomain||1,g=d.y.$minimalDomain||1,h=Math.max(f*d.x.density,f*c.w),i=Math.max(g*d.y.density,g*c.h);b={w:h+d.padding.l+d.padding.r,h:i+d.padding.t+d.padding.b}}else b={w:0,h:0};return b},f=function(a,b,c,d){var e=b.guide.x.$minimalDomain||1,g=b.guide.y.$minimalDomain||1,h=c.width/e,i=c.height/g,j=a.dimension(b.x),k=a.dimension(b.y),l=d.hasOwnProperty("xDensityPadding:"+j.dimType)?d["xDensityPadding:"+j.dimType]:d.xDensityPadding,m=d.hasOwnProperty("yDensityPadding:"+k.dimType)?d["yDensityPadding:"+k.dimType]:d.yDensityPadding;if(b.guide.x.hide!==!0&&0!==b.guide.x.rotate&&h>b.guide.x.$maxTickTextW+2*l){b.guide.x.rotate=0,b.guide.x.textAnchor="middle",b.guide.x.tickFormatWordWrapLimit=h;var n=Math.min(d.xAxisTickLabelLimit,b.guide.x.$maxTickTextW),o=0-n+b.guide.x.$maxTickTextH;b.guide.padding.b+=b.guide.padding.b>0?o:0,b.guide.x.label.padding>n+d.xAxisPadding&&(b.guide.x.label.padding+=o)}b.guide.y.hide!==!0&&0!==b.guide.y.rotate&&1===b.guide.y.tickFormatWordWrapLines&&i>b.guide.y.$maxTickTextW+2*m&&(b.guide.y.tickFormatWordWrapLimit=i-2*m);var p={width:h,height:i};b.unit&&f(a,b.unit[0],p,d)},g=e(d.unit),i=g.w,j=g.h,k=c.size,l=c.getScrollBarWidth(),m=k.width-i,n=k.height-j,o=m>=0?k.width:i,p=n>=0?0:l,q=n>=0?k.height:j,r=m>=0?0:l;return c.size.height=q-r,c.size.width=o-p,f(b,d.unit,c.size,c),d}};q.AUTO=function(a,b,c){return["BUILD-LABELS","BUILD-GUIDE"].reduce(function(a,d){return q[d](a,b,c)},a)},q.COMPACT=function(a,b,c){return["BUILD-LABELS","BUILD-COMPACT"].reduce(function(a,d){return q[d](a,b,c)},a)};var r=function(b,c,d){var e=i.applyNodeDefaults(c);e=d(m(e),e),e=k(e,b);var f=a.omit(e,"unit");return(e.unit||[]).forEach(function(a){return r(h.clone(a),l(a,f),d)}),e},s={get:function(a,b){var c=q[a]||q.NONE;return function(a,d){var e=c(a,d,b);return b.fitSize&&(e=q["OPTIMAL-SIZE"](e,d,b)),e}}};b.SpecEngineFactory=s}),e("matrix",["exports"],function(b){var c=function(){var b=function(b,c){var d,e=a.toArray(arguments);d=a.isArray(e[0])?e[0]:a.times(b,function(){return a.times(c,function(){return null})}),this.cube=d};return b.prototype={iterate:function(b){var c=this.cube;return a.each(c,function(c,d){a.each(c,function(a,c){b(d,c,a)})}),this},getRC:function(a,b){return this.cube[a][b]},setRC:function(a,b,c){return this.cube[a][b]=c,this},sizeR:function(){return this.cube.length},sizeC:function(){var a=this.cube[0]||[];return a.length}},b}();b.TMatrix=c}),e("layout-engine-factory",["exports","./utils/utils","./utils/utils-draw","./matrix"],function(a,b,c,d){var e=b.utils,f=c.utilsDraw,g=d.TMatrix,h=function(a,b){var c=b?b:{depth:-1,paddings:[]},d=a.guide.padding;return c.depth+=1,c.paddings.unshift({l:d.l,b:d.b,r:d.r,t:d.t}),a.unit&&a.unit.length&&h(a.unit[0],c),c},i={NONE:function(a){return a},EXTRACT:function(a){var b=function(a,c,d){var e=a,f=e.sizeR(),h=e.sizeC();e.iterate(function(a,e,i){i.forEach(function(b){return d(b,{firstRow:0===a,firstCol:0===e,lastRow:a===f-1,lastCol:e===h-1,depth:c})}),i.filter(function(a){return a.$matrix}).forEach(function(a){a.$matrix=new g(a.$matrix.cube),b(a.$matrix,c-1,d)})})},c=e.clone(a),d=new g([[[c]]]),i=h(c),j=i.paddings.reduce(function(a,b){return a.l+=b.l,a.b+=b.b,a.r+=b.r,a.t+=b.t,a},{l:0,b:0,r:0,t:0}),k=e.clone(j),l=i.paddings.reverse().map(function(a){return a.l=k.l-a.l,a.b=k.b-a.b,k={l:a.l,b:a.b},a});i.paddings=l.reverse();var m=10,n=f.applyNodeDefaults({type:"COORDS.RECT",options:e.clone(a.options),$matrix:new g([[[c]]]),guide:{padding:{l:j.l-m,b:j.b-m,r:j.r+m,t:j.t+m}}});return b(d,i.depth,function(a,b){var c=b.depth;a.guide.x.hide=a.guide.x.hide?a.guide.x.hide:!b.lastRow,a.guide.y.hide=a.guide.y.hide?a.guide.y.hide:!b.firstCol;var d=c>1?0:m,e=c>1?m:0;return a.guide.x.padding+=i.paddings[c].b,a.guide.y.padding+=i.paddings[c].l,a.guide.x.padding-=e,a.guide.y.padding-=e,a.guide.padding.l=d,a.guide.padding.b=d,a.guide.padding.r=d,a.guide.padding.t=d,a}),n}},j={get:function(a){return i[a]||i.NONE}};a.LayoutEngineFactory=j}),e("plugins",["exports"],function(a){var c=function(a,b,c){b&&Object.defineProperties(a,b),c&&Object.defineProperties(a.prototype,c)},d=function(){function a(a,b){this.chart=b,this._plugins=a.map(this.initPlugin,this)}return c(a,null,{initPlugin:{value:function(a){var b=this;a.init&&a.init(this.chart),this.chart.on("destroy",a.destroy&&a.destroy.bind(a)||function(){}),Object.keys(a).forEach(function(c){if(0===c.indexOf("on")){var d=c.substr(2);b.chart.on(d.toLowerCase(),a[c].bind(a))}})},writable:!0,enumerable:!0,configurable:!0}}),a}(),e=["click","mouseover","mouseout","mousemove"],f=function(a){return function(){e.forEach(function(c){this.on(c,function(d){a.fire("element"+c,{elementData:d,element:this,cellData:b.select(this.parentNode.parentNode).datum()})})},this)}};a.propagateDatumEvents=f,a.Plugins=d}),e("unit-domain-period-generator",["exports"],function(a){var b={day:{cast:function(a){return new Date(a.setHours(0,0,0,0))},next:function(a){return new Date(a.setDate(a.getDate()+1))}},week:{cast:function(a){return a=new Date(a.setHours(0,0,0,0)),a=new Date(a.setDate(a.getDate()-a.getDay()))},next:function(a){return new Date(a.setDate(a.getDate()+7))}},month:{cast:function(a){return a=new Date(a.setHours(0,0,0,0)),a=new Date(a.setDate(1))},next:function(a){return new Date(a.setMonth(a.getMonth()+1))}},quarter:{cast:function(a){a=new Date(a.setHours(0,0,0,0)),a=new Date(a.setDate(1));var b=a.getMonth(),c=b-b%3;return new Date(a.setMonth(c))},next:function(a){return new Date(a.setMonth(a.getMonth()+3))}},year:{cast:function(a){return a=new Date(a.setHours(0,0,0,0)),a=new Date(a.setDate(1)),a=new Date(a.setMonth(0))},next:function(a){return new Date(a.setFullYear(a.getFullYear()+1))}}},c={add:function(a,c){return b[a.toLowerCase()]=c,this},get:function(a){return b[a.toLowerCase()]},generate:function(a,c,d){var e=[],f=b[d.toLowerCase()];if(f){var g=f.cast(new Date(c)),h=f.cast(new Date(a));for(e.push(h);(h=f.next(new Date(h)))<=g;)e.push(h)}return e}};a.UnitDomainPeriodGenerator=c}),e("size",["exports"],function(b){var c=function(a){return Math.sqrt(a)},d=function(b,d,e,f){var g=a.filter(b,a.isFinite);if(0===g.length)return function(){return f};var h=1,i=0,j=Math.min.apply(null,g),k=Math.max.apply(null,g),l=c(Math.max.apply(null,[Math.abs(j),Math.abs(k),k-j]));return i=0>j?j:0,h=0===l?1:(e-d)/l,function(b){var f=null!==b?parseFloat(b):0;if(!a.isFinite(f))return e;var g=f-i;return d+c(g)*h}};b.sizeScale=d}),e("unit-domain-mixin",["exports","./unit-domain-period-generator","./utils/utils","./size","underscore","d3"],function(a,b,c,d,e,f){var g=function(a,b,c){b&&Object.defineProperties(a,b),c&&Object.defineProperties(a.prototype,c)},h=b.UnitDomainPeriodGenerator,i=c.utils,j=d.sizeScale,k=e,l=f,m={ordinal:function(a){return a},linear:function(a,b){var c=b.autoScale?i.autoScale(a):l.extent(a),d=k.isNumber(b.min)?b.min:c[0],e=k.isNumber(b.max)?b.max:c[1];return[Math.min(d,c[0]),Math.max(e,c[1])]},period:function(a,b){var c=l.extent(a),d=k.isNull(b.min)||k.isUndefined(b.min)?c[0]:new Date(b.min).getTime(),e=k.isNull(b.max)||k.isUndefined(b.max)?c[1]:new Date(b.max).getTime(),f=[new Date(Math.min(d,c[0])),new Date(Math.max(e,c[1]))];return h.generate(f[0],f[1],b.period)},time:function(a,b){var c=l.extent(a),d=k.isNull(b.min)||k.isUndefined(b.min)?c[0]:new Date(b.min).getTime(),e=k.isNull(b.max)||k.isUndefined(b.max)?c[1]:new Date(b.max).getTime();return[new Date(Math.min(d,c[0])),new Date(Math.max(e,c[1]))]}},n={ordinal:function(a,b){return l.scale.ordinal().domain(a).rangePoints(b,1)},linear:function(a,b){return l.scale.linear().domain(a).rangeRound(b,1)},period:function(a,b){return l.scale.ordinal().domain(a).rangePoints(b,1)},time:function(a,b){return l.time.scale().domain(a).range(b)}},o=function(){function a(a,b){var c=function(a){return function(b){var c=b||{};return c.hasOwnProperty(a)?c[a]:null}},d=function(b){var d=a[b]||{},e=d.value?c(d.value):function(a){return a},f=k.contains(["period","time"],d.scale);return f?k.compose(function(a){return new Date(a).getTime()},e):e},e=function(b){var c=a[b]||{};return c.order||null},f=function(a){var b={category:function(a,b,c){return c},order:function(a,b,c){var d=e(a);return d?k.union(d,c):k.sortBy(c,b)},measure:function(a,b,c){return k.sortBy(c,b)},"as-is":function(a,b,c){return c}};return b[a]||b["as-is"]},g=function(a){var b={category:f("category"),order:f("order"),measure:f("measure"),"as-is":f("as-is")};return b[a]||b["as-is"]};this.fnDimension=function(b,c){var d=(c||{}).dimensions||{},e=a[b]||{},f=d[b]||{};return{scaleDim:b,scaleType:f.scale||e.scale,dimType:f.type||e.type}},this.fnSource=function(a){var c=k.map(a,function(a,b){return function(c){return d(b)(c[b])===a}});return k(b).filter(function(a){return k.every(c,function(b){return b(a)})})};var i=function(c,e){if(!a[c])return[];var f=d(c),g=k(b).chain().pluck(c).uniq(f).value();return e(c,f,g)};this.fnDomain=function(b){var c=d(b),e=(a[b]||{}).type,g=i(b,f(e));return g.map(c)};var o=function(b,e){var f={},j=e||{};f.map=j.hasOwnProperty("map")?j.map:j.tickLabel,f.min=j.hasOwnProperty("min")?j.min:j.tickMin,f.max=j.hasOwnProperty("max")?j.max:j.tickMax,f.period=j.hasOwnProperty("period")?j.period:j.tickPeriod,f.autoScale=j.autoScale;var l=k.defaults({},a[b]),n={"order:period":function(a){return function(b){return h.get(a.period).cast(new Date(b))}},"*":function(){return function(a){return a}}},o=f.map?c(f.map):d(b),p=[l.type,l.scale].join(":"),q=(n[p]||n["*"])(f),r=i(b,g(l.type)).map(o),s=l.scale?m[l.scale](r,f):r;return{extract:function(a){return q(o(a))},values:s,source:r}};this.fnScaleMeta=o,this.fnScaleTo=function(b,c,d){var e=d||{},f=k.defaults({},a[b]),g=o(b,d),h=n[f.scale](g.values,c,e),i=function(a){return h(g.extract(a))};return Object.keys(h).forEach(function(a){return i[a]=h[a]}),i},this.fnScaleColor=function(a,b,c){var d,e=c||{},f=o(a,e),g=k.constant("color-default"),h=k.times(20,function(a){return"color20-"+(1+a)}),i=function(a,b){if(0===a.length||1===a.length&&null===a[0])return g;var c=a.map(function(a){return String(a).toString()});return l.scale.ordinal().range(b).domain(c)},j=function(a,b){var c=k.keys(a),d=k.values(a),e=l.scale.ordinal().range(d).domain(c);return function(c){return a.hasOwnProperty(c)?e(c):b(c)}},m=function(a){return function(b){return a(String(b).toString())}};if(b)if(k.isArray(b))d=m(i(f.values,b));else if(k.isFunction(b))d=function(a){return b(a,m(i(f.values,h)))};else{if(!k.isObject(b))throw new Error("This brewer is not supported");d=j(b,g)}else d=m(i(f.values,h));var n=function(a){return d(f.extract(a))};return n.get=n,n.dimension=a,n.legend=function(a){var b=f.extract(a),c=e.tickLabel?(a||{})[e.tickLabel]:b,g=d(b);return{value:b,color:g,label:c}},n},this.fnScaleSize=function(a,b,c){var d=c||{},e=b[0],f=b[1],g=b[b.length-1],h=o(a,d),i=j(h.source,e,f,g),k=function(a){return i(h.extract(a))};return k}}return g(a,null,{mix:{value:function(a){return a.dimension=this.fnDimension,a.source=this.fnSource,a.domain=this.fnDomain,a.scaleMeta=this.fnScaleMeta,a.scaleTo=this.fnScaleTo,a.scaleDist=this.fnScaleTo,a.scaleColor=this.fnScaleColor,a.scaleSize=this.fnScaleSize,a.partition=function(){return a.data||a.source(a.$where)},a.groupBy=function(b,c){var d=a.scaleMeta(c);return k.chain(b).groupBy(function(a){return d.extract(a[c])}).map(function(a){return{key:a[0][c],values:a}}).value()},a},writable:!0,enumerable:!0,configurable:!0}}),a}();a.UnitDomainMixin=o}),e("units-registry",["exports"],function(a){var b={},c={add:function(a,c){var d={};return d.draw="function"==typeof c?c:c.draw,d.walk=c.walk||function(a){return a},b[a]=d,this},get:function(a){if(!b.hasOwnProperty(a))throw new Error("Unknown unit type: "+a);return b[a]}};a.UnitsRegistry=c}),e("data-processor",["exports","./utils/utils"],function(b,c){var d=c.utils,e=function(a){return a===Object(a)},f={isYFunctionOfX:function(a,b,c){var d=!0,f=null;try{a.reduce(function(a,d){var g=function(a,b){var c=d[b],f=e(c)?JSON.stringify(c):c;return a.push(f),a},h=b.reduce(g,[]).join("/"),i=c.reduce(g,[]).join("/");if(a.hasOwnProperty(h)){var j=a[h];if(j!==i)throw f={type:"RelationIsNotAFunction",keyX:b.join("/"),keyY:c.join("/"),valX:h,errY:[j,i]},new Error("RelationIsNotAFunction")}else a[h]=i;return a},{})}catch(g){if("RelationIsNotAFunction"!==g.message)throw g;d=!1}return{result:d,error:f}},excludeNullValues:function(a,b){var c=Object.keys(a).reduce(function(b,c){var d=a[c];return d.hasOwnProperty("hasNull")&&!d.hasNull||"measure"!==d.type&&"period"!==d.scale||b.push(c),b},[]);return function(a){var d=!c.some(function(b){return!(b in a)||null===a[b]});return d||b(a),d}},autoAssignScales:function(a){var b="category",c={category:"ordinal",order:"ordinal",measure:"linear"},d={};return Object.keys(a).forEach(function(e){var f=a[e],g=(f.type||b).toLowerCase();d[e]={},d[e].type=g,d[e].scale=f.scale||c[g],d[e].value=f.value}),d},autoDetectDimTypes:function(b){var c={type:"category",scale:"ordinal"},e=function(b,c){var d=c;return a.isDate(b)?(d.type="measure",d.scale="time"):a.isObject(b)?(d.type="order",d.scale="ordinal"):a.isNumber(b)&&(d.type="measure",d.scale="linear"),d},f=function(a,b){return Object.keys(b).forEach(function(f){var g=b.hasOwnProperty(f)?b[f]:null;if(a[f]=a[f]||{type:null,hasNull:!1},null===g)a[f].hasNull=!0;else{var h=e(g,d.clone(c)),i=h.type,j=h.scale,k=null!==a[f].type&&a[f].type!==i;a[f].type=k?c.type:i,a[f].scale=k?c.scale:j}}),a};return a.reduce(b,f,{})}};b.DataProcessor=f}),e("utils/layuot-template",["exports","../const"],function(a,b){var c=b.CSS_PREFIX,d=function(a,b){var d="div",e=document.createElement(d);return e.classList.add(c+a),b&&b.appendChild(e),e},e=function(){var a=d("layout"),b=d("layout__header",a),c=d("layout__container",a),e=d("layout__sidebar",c),f=d("layout__content",c),g=d("layout__content__wrap",f),h=d("layout__sidebar-right",c),i=d("layout__sidebar-right__wrap",h),j=d("layout__footer",a);return{layout:a,header:b,content:g,leftSidebar:e,rightSidebar:i,footer:j}};a.getLayout=e}),e("charts/tau.plot",["exports","../dsl-reader","../api/balloon","../event","../spec-engine-factory","../layout-engine-factory","../plugins","../utils/utils","../utils/utils-dom","../const","../unit-domain-mixin","../units-registry","../data-processor","../utils/layuot-template"],function(c,d,e,f,g,h,i,j,k,l,m,n,o,p){var q=function(a,b,c){b&&Object.defineProperties(a,b),c&&Object.defineProperties(a.prototype,c)},r=function I(a,b,c){var d=Object.getOwnPropertyDescriptor(a,b);if(void 0===d){var e=Object.getPrototypeOf(a);return null===e?void 0:I(e,b,c)}if("value"in d&&d.writable)return d.value;var f=d.get;return void 0===f?void 0:f.call(c)},s=function(a,b){if("function"!=typeof b&&null!==b)throw new TypeError("Super expression must either be null or a function, not "+typeof b);a.prototype=Object.create(b&&b.prototype,{constructor:{value:a,enumerable:!1,writable:!0,configurable:!0}}),b&&(a.__proto__=b)},t=d.DSLReader,u=e.Tooltip,v=f.Emitter,w=g.SpecEngineFactory,x=h.LayoutEngineFactory,y=i.Plugins,z=i.propagateDatumEvents,A=j.utils,B=k.utilsDom,C=l.CSS_PREFIX,D=m.UnitDomainMixin,E=n.UnitsRegistry,F=o.DataProcessor,G=p.getLayout,H=function(c){function d(a){r(Object.getPrototypeOf(d.prototype),"constructor",this).call(this),this._svg=null,this._filtersStore={filters:{},tick:0},this._layout=G(),this.setupConfig(a),this._plugins=new y(this.config.plugins,this)}return s(d,c),q(d,null,{setupConfig:{value:function(b){if(!b.spec&&!b.spec.unit)throw new Error("Provide spec for plot");this.config=a.defaults(b,{spec:{},data:[],plugins:[],settings:{}}),this._emptyContainer=b.emptyContainer||"",this.config.settings.specEngine=this.config.specEngine||this.config.settings.specEngine,this.config.settings.layoutEngine=this.config.layoutEngine||this.config.settings.layoutEngine,this.config.settings=this.setupSettings(this.config.settings),A.isArray(this.config.settings.specEngine)||(this.config.settings.specEngine=[{width:Number.MAX_VALUE,name:this.config.settings.specEngine}]),this.config.spec.dimensions=this.setupMetaInfo(this.config.spec.dimensions,this.config.data);var c=this.config.settings.log;this.config.settings.excludeNull&&this.addFilter({tag:"default",predicate:F.excludeNullValues(this.config.spec.dimensions,function(a){c([a,"point was excluded, because it has undefined values."],"WARN")})})},writable:!0,enumerable:!0,configurable:!0},getConfig:{value:function(){return this.config},writable:!0,enumerable:!0,configurable:!0},setupMetaInfo:{value:function(a,b){var c=a?a:F.autoDetectDimTypes(b);return F.autoAssignScales(c)},writable:!0,enumerable:!0,configurable:!0},setupSettings:{value:function(b){var c=d.globalSettings,e={};return Object.keys(c).forEach(function(b){e[b]=a.isFunction(c[b])?c[b]:A.clone(c[b])}),a.defaults(b||{},e)},writable:!0,enumerable:!0,configurable:!0},insertToRightSidebar:{value:function(a){return B.appendTo(a,this._layout.rightSidebar)},writable:!0,enumerable:!0,configurable:!0},insertToHeader:{value:function(a){return B.appendTo(a,this._layout.header)},writable:!0,enumerable:!0,configurable:!0},addBalloon:{value:function(a){return new u("",a||{})},writable:!0,enumerable:!0,configurable:!0},renderTo:{value:function(c,d){this._renderGraph=null,this._svg=null,this._defaultSize=a.clone(d);var e=b.select(c),f=e.node();if(this._target=c,this._targetSizes=d,null===f)throw new Error("Target element not found");f.appendChild(this._layout.layout),e=b.select(this._layout.content);var g=d||{};this._layout.content.innerHTML="",g.width&&g.height||(g=a.defaults(g,B.getContainerSize(this._layout.content.parentNode)));var h=this.getData();if(0===h.length)return void(this._layout.content.innerHTML=this._emptyContainer);this._targetSizes=g,this._layout.content.innerHTML="";var i=new D(this.config.spec.dimensions,h),j=a.find(this.config.settings.specEngine,function(a){return g.width<=a.width});this.config.settings.size=g;var k=w.get(j.name,this.config.settings),l=k(this.config.spec,i.mix({})),m=this.config.settings.size,n=new t(i,E),o=this,p=n.buildGraph(l),q=x.get(this.config.settings.layoutEngine)(p),r=n.calcLayout(q,m),s=n.renderGraph(r,e.append("svg").attr("class",C+"svg").attr("width",m.width).attr("height",m.height),function(a){return o.fire("unitready",a)});this._renderGraph=r,this._svg=s.node(),s.selectAll(".i-role-datum").call(z(this)),this._layout.rightSidebar.style.maxHeight=m.height+"px",this.fire("render",this._svg)},writable:!0,enumerable:!0,configurable:!0},getData:{value:function(b){b=b||{};var c=a.chain(this._filtersStore.filters).values().flatten().reject(function(c){return a.contains(b.excludeFilter,c.tag)}).pluck("predicate").value();return a.filter(this.config.data,a.reduce(c,function(a,b){return function(c){return a(c)&&b(c)}},function(){return!0}))},writable:!0,enumerable:!0,configurable:!0},setData:{value:function(a){this.config.data=a,this.refresh()},writable:!0,enumerable:!0,configurable:!0},getSVG:{value:function(){return this._svg},writable:!0,enumerable:!0,configurable:!0},addFilter:{value:function(a){var b=a.tag,c=this._filtersStore.filters[b]=this._filtersStore.filters[b]||[],d=this._filtersStore.tick++;return a.id=d,c.push(a),this.refresh(),d},writable:!0,enumerable:!0,configurable:!0},removeFilter:{value:function(b){var c=this;a.each(this._filtersStore.filters,function(d,e){c._filtersStore.filters[e]=a.reject(d,function(a){return a.id===b})}),this.refresh()},writable:!0,enumerable:!0,configurable:!0},refresh:{value:function(){this._target&&this.renderTo(this._target,this._defaultSize)},writable:!0,enumerable:!0,configurable:!0},resize:{value:function(){var a=void 0===arguments[0]?{}:arguments[0];this.renderTo(this._target,a)},writable:!0,enumerable:!0,configurable:!0},select:{value:function(a){var b=[];if(!this._renderGraph)return b;var c=function(a,b){b(a),(a.childUnits||[]).forEach(function(a){return c(a,b)})};return c(this._renderGraph,function(c){a(c)&&b.push(c)}),b},writable:!0,enumerable:!0,configurable:!0}}),d}(v);c.Plot=H}),e("charts/tau.chart",["exports","./tau.plot","../utils/utils","../data-processor"],function(b,c,d,e){function f(a,b,c){return b.reduce(function(b,d,e){var f=a[d];return f?b.status!=r.FAIL&&("measure"===f.type&&(b.countMeasureAxis++,b.indexMeasureAxis.push(e)),"measure"!==f.type&&1===b.countMeasureAxis?b.status=r.WARNING:b.countMeasureAxis>1&&(b.status=r.FAIL,b.messages.push('There is more than one measure dimension for "'+c+'" axis'))):(b.status=r.FAIL,b.messages.push(d?'"'+d+'" dimension is undefined for "'+c+'" axis':'"'+c+'" axis should be specified')),b},{status:r.SUCCESS,countMeasureAxis:0,indexMeasureAxis:[],messages:[],axis:c})}function g(b,c){for(var d=p(c.x),e=p(c.y),g=Math.max(d.length,e.length),h=p(c.guide);h.length0;l--){var m=d.pop(),n=e.pop(),r=h.pop()||{};l===g?(k.x=m,k.y=n,k.unit.push(q(b,{x:o(m),y:o(n),color:c.color,size:c.size,flip:c.flip,colorGuide:r.color,sizeGuide:r.size})),k.guide=a.defaults(r,{x:{label:m},y:{label:n}})):k={type:"COORDS.RECT",x:o(m),y:o(n),unit:[k],guide:a.defaults(r,{x:{label:m},y:{label:n}})}}return c.spec={dimensions:c.dimensions,unit:k},c}var h=function(a,b,c){return Object.defineProperty(a,b,{value:c,enumerable:!0,configurable:!0,writable:!0})},i=function(a,b,c){b&&Object.defineProperties(a,b),c&&Object.defineProperties(a.prototype,c)},j=function v(a,b,c){var d=Object.getOwnPropertyDescriptor(a,b);if(void 0===d){var e=Object.getPrototypeOf(a);return null===e?void 0:v(e,b,c)}if("value"in d&&d.writable)return d.value;var f=d.get;return void 0===f?void 0:f.call(c)},k=function(a,b){if("function"!=typeof b&&null!==b)throw new TypeError("Super expression must either be null or a function, not "+typeof b);a.prototype=Object.create(b&&b.prototype,{constructor:{value:a,enumerable:!1,writable:!0,configurable:!0}}),b&&(a.__proto__=b)},l=c.Plot,m=d.utils,n=e.DataProcessor,o=function(a){return a?a:null},p=function(a){return m.isArray(a)?0===a.length?[null]:a:[a]},q=function(a,b){return{type:a,x:b.x,y:b.y,color:b.color,guide:{color:b.colorGuide,size:b.sizeGuide},flip:b.flip,size:b.size}},r={SUCCESS:"SUCCESS",WARNING:"WARNING",FAIL:"FAIL"},s=function(){var b={};return h(b,r.SUCCESS,function(a){return a}),h(b,r.FAIL,function(a,b){throw new Error((b.messages||[]).join("\n")||"This configuration is not supported, See http://api.taucharts.com/basic/facet.html#easy-approach-for-creating-facet-chart")}),h(b,r.WARNING,function(b,c,d){var e=c.axis,f=c.indexMeasureAxis[0],g=b[f],h=a.without(b,g);h.push(g);var i=d[f][e]||{},j=d[d.length-1][e]||{};return d[d.length-1][e]=i,d[f][e]=j,h}),b}(),t={scatterplot:function(a){return g("ELEMENT.POINT",a)},line:function(b){var c=b.data,d=b.settings.log,e={none:function(){return null},horizontal:function(a){var b=m.isArray(a.x)?a.x:[a.x];return b[b.length-1]},vertical:function(a){var b=m.isArray(a.y)?a.y:[a.y];return b[b.length-1]},auto:function(a){var b,e=m.isArray(a.x)?a.x:[a.x],f=m.isArray(a.y)?a.y:[a.y],g=e[e.length-1],h=e.slice(0,e.length-1),i=f[f.length-1],j=f.slice(0,f.length-1),k=a.color,l=h.concat(j).concat([k]).filter(function(a){return null!==a}),o=-1,p=[[[g].concat(l),i],[[i].concat(l),g]],q=p.some(function(a,b){var e=a[0],f=a[1],g=n.isYFunctionOfX(c,e,[f]);return g.result?o=b:d(["Attempt to find a functional relation between",a[0]+" and "+a[1]+" is failed.","There are several "+g.error.keyY+" values (e.g. "+g.error.errY.join(",")+")","for ("+g.error.keyX+" = "+g.error.valX+")."].join(" ")),g.result});return q?b=p[o][0][0]:(d(["All attempts are failed.","Will orient line horizontally by default.","NOTE: the [scatterplot] chart is more convenient for that data."].join(" ")),b=g),b}},f=(b.lineOrientation||"auto").toLowerCase(),h=e.hasOwnProperty(f)?e[f]:e.auto,i=h(b);return null!==i&&(b.data=a(c).sortBy(i)),g("ELEMENT.LINE",b)},bar:function(a){return a.flip=!1,g("ELEMENT.INTERVAL",a)},horizontalBar:function(a){return a.flip=!0,g("ELEMENT.INTERVAL",a)}},u=function(b){function c(b){b=a.defaults(b,{autoResize:!0}),b.autoResize&&c.winAware.push(this),b.settings=this.setupSettings(b.settings),b.dimensions=this.setupMetaInfo(b.dimensions,b.data);var d=t[b.type];if(!a.isFunction(d))throw new Error("Chart type "+b.type+" is not supported. Use one of "+a.keys(t).join(", ")+".");j(Object.getPrototypeOf(c.prototype),"constructor",this).call(this,d(b))}return k(c,b),i(c,null,{destroy:{value:function(){var a=c.winAware.indexOf(this);-1!==a&&c.winAware.splice(a,1),j(Object.getPrototypeOf(c.prototype),"destroy",this).call(this)},writable:!0,enumerable:!0,configurable:!0}}),c}(l);u.resizeOnWindowEvent=function(){function a(){!c&&u.winAware.length&&(c=d(b))}function b(){c=0;for(var a,b=0,d=u.winAware.length;d>b;b++)a=u.winAware[b],a.resize()}var c,d=window.requestAnimationFrame||window.webkitRequestAnimationFrame||function(a){return setTimeout(a,17)};return a}(),u.winAware=[],window.addEventListener("resize",u.resizeOnWindowEvent),b.Chart=u}),e("elements/coords",["exports","../utils/utils-draw","../const","../utils/utils","../matrix"],function(b,c,d,e,f){var g=c.utilsDraw,h=d.CSS_PREFIX,i=e.utils,j=f.TMatrix,k={CROSS:function(b,c,d,e,f){var g=0===d.length?[null]:d,h=0===f.length?[null]:f.reverse(),i=function(a){return a instanceof Date?a.getTime():a};return a(h).map(function(b){return a(g).map(function(a){var d={};return c&&(d[c]=i(a)),e&&(d[e]=i(b)),d})})}},l=function(a){return k[a]||function(){return[[{}]]}},m=function(b,c,d){var e=a.defaults(i.clone(b),a.pick.apply(a,[c].concat(d)));return e.guide=a.extend(i.clone(c.guide),e.guide),e},n={walk:function(b,c){var d=a.defaults(b,{$where:{}}),e=a.any(d.unit,function(a){return 0===a.type.indexOf("COORDS.")}),f=l(e?"CROSS":""),g=d.scaleMeta(d.x,a.omit(d.guide.x,"tickLabel")).values,h=d.scaleMeta(d.y,a.omit(d.guide.y,"tickLabel")).values,i=new j(f(d,d.x,g,d.y,h)),k=new j(i.sizeR(),i.sizeC());return i.iterate(function(b,c,e){var f=a.extend({},d.$where,e),g=a(d.unit).map(function(b){return a.extend(m(b,d,["x","y"]),{$where:f})});k.setRC(b,c,g)}),d.$matrix=k,k.iterate(function(b,d,e){a.each(e,function(a){return c(a)})}),d},draw:function(a){var b=a.options,c=a.guide.padding;a.x.guide=a.guide.x,a.y.guide=a.guide.y;var d=b.left+c.l,e=b.top+c.t,f=b.width-(c.l+c.r),i=b.height-(c.t+c.b);a.x.scaleObj=a.x.scaleDim&&a.scaleTo(a.x.scaleDim,[0,f],a.x.guide),a.y.scaleObj=a.y.scaleDim&&a.scaleTo(a.y.scaleDim,[i,0],a.y.guide),a.x.guide.size=f,a.y.guide.size=i;var j=[0,i+a.guide.x.padding],k=[0-a.guide.y.padding,0],l=b.container.append("g").attr("class",h+"cell cell").attr("transform",g.translate(d,e)).datum({$where:a.$where});return a.x.guide.hide||g.fnDrawDimAxis.call(l,a.x,j,f),a.y.guide.hide||g.fnDrawDimAxis.call(l,a.y,k,i),g.fnDrawGrid.call(l,a,i,f)}};b.coords=n}),e("utils/css-class-map",["exports","../const"],function(a,b){function c(a){return g[a-1]||g[4]}function d(a){var b=0;return a>=160&&320>a?b=1:a>=320&&480>a?b=2:a>=480&&640>a?b=3:a>=640&&(b=4),h[b]}var e=b.CSS_PREFIX,f=[1,2,3,4,5],g=f.map(function(a){return e+"line-opacity-"+a}),h=f.map(function(a){return e+"line-width-"+a});a.getLineClassesByWidth=d,a.getLineClassesByCount=c}),e("elements/line",["exports","../const","../utils/css-class-map"],function(a,c,d){var e=c.CSS_PREFIX,f=d.getLineClassesByWidth,g=d.getLineClassesByCount,h=function(a){var c=a.options,d=c.xScale,h=c.yScale,i=c.color,j=a.groupBy(a.partition(),a.color.scaleDim),k=f(c.width),l=g(j.length),m=function(){this.attr("class",function(a){return""+e+"line i-role-element i-role-datum line "+i(a.key)+" "+k+" "+l});var a=this.selectAll("path").data(function(a){return[a.values]});a.call(p),a.enter().append("path").call(p),a.exit().remove()},n=function(b){var f=function(){return this.attr("r",1.5).attr("class",function(b){return""+e+"dot-line dot-line i-role-element "+e+"dot i-role-datum "+i(b[a.color.scaleDim])}).attr("cx",function(b){return d(b[a.x.scaleDim])}).attr("cy",function(b){return h(b[a.y.scaleDim])})},g=c.container.selectAll(".dot-line").data(b);g.call(f),g.exit().remove(),g.enter().append("circle").call(f)},o=b.svg.line().x(function(b){return d(b[a.x.scaleDim])}).y(function(b){return h(b[a.y.scaleDim])}),p=function(){this.attr("d",o)},q=j.reduce(function(a,b){var c=b.values;return 1===c.length&&a.push(c[0]),a},[]);q.length>0&&n(q);var r=c.container.selectAll(".line").data(j);r.call(m),r.enter().append("g").call(m),r.exit().remove()};a.line=h}),e("elements/point",["exports","../const"],function(a,b){var c=b.CSS_PREFIX,d=function(a){var b=a.options,d=b.xScale,e=b.yScale,f=b.color,g=b.sizeScale,h=function(){return this.attr("r",function(b){return g(b[a.size.scaleDim])}).attr("cx",function(b){return d(b[a.x.scaleDim])}).attr("cy",function(b){return e(b[a.y.scaleDim])}).attr("class",function(b){return""+c+"dot dot i-role-element i-role-datum "+f(b[a.color.scaleDim])})},i=b.container.selectAll(".dot").data(a.partition());i.call(h),i.exit().remove(),i.enter().append("circle").call(h)};a.point=d}),e("elements/interval",["exports","../utils/utils-draw","../const"],function(a,b,c){var d=function(a){return Array.isArray(a)?a:Array.from(a)},e=b.utilsDraw,f=c.CSS_PREFIX,g="i-role-bar-group",h=function(a){return"measure"===a.dimType},i=function(a){var b=a.domain().length,c=a.category.length,d=a.size/b,e=d/(c+1);return{tickWidth:d,intervalWidth:e,offsetCategory:e}},j={NORM:function(a,b,c,f,g,j,k){var l=1,m=Math.min.apply(Math,d(c.domain())),n=!isNaN(m),o=!n||0>=m?0:m,p=h(a.x),q=p?j:i({domain:b.domain,category:k,size:f}),r=q.tickWidth,s=q.intervalWidth,t=q.offsetCategory,u=function(c){return b(c[a.x.scaleDim])-r/2},v=n?function(b){var d=b[a.y.scaleDim],e=c(Math.max(o,d)),f=Math.abs(c(d)-c(o)),g=l>f;return g&&d>0?e-l:e}:function(b){return c(b[a.y.scaleDim])},w=function(){return s},x=n?function(b){var d=b[a.y.scaleDim],e=Math.abs(c(d)-c(o));return 0===d?e:Math.max(l,e)}:function(b){return g-c(b[a.y.scaleDim])},y=function(a,b){return e.translate(b*t+t/2,0)};return{calculateX:u,calculateY:v,calculateWidth:w,calculateHeight:x,calculateTranslate:y}},FLIP:function(a,b,c,f,g,j,k){var l=1,m=Math.min.apply(Math,d(b.domain())),n=!isNaN(m),o=!n||0>=m?0:m,p=h(a.y),q=p?j:i({domain:c.domain,category:k,size:g}),r=q.tickWidth,s=q.intervalWidth,t=q.offsetCategory,u=n?function(c){var d=c[a.x.scaleDim],e=Math.abs(b(d)-b(o)),f=b(Math.min(o,d)),g=e-l,h=d>0?l+g:0>d?0-l:0,i=0>g;return i?f+h:f}:0,v=function(b){return c(b[a.y.scaleDim])-r/2},w=n?function(c){var d=c[a.x.scaleDim],e=Math.abs(b(d)-b(o));return 0===d?e:Math.max(l,e)}:function(c){return b(c[a.x.scaleDim])},x=function(){return s},y=function(a,b){return e.translate(0,b*t+t/2)};return{calculateX:u,calculateY:v,calculateWidth:w,calculateHeight:x,calculateTranslate:y}}},k=function(a){var b=a.options,c=b.xScale,d=b.yScale,e=b.color,h=a.groupBy(a.partition(),a.color.scaleDim),i=j[a.flip?"FLIP":"NORM"],k=a.parentUnit.parentUnit||a.parentUnit,l=i(a,c,d,b.width,b.height,{tickWidth:5,intervalWidth:5,offsetCategory:0},a.groupBy(k.partition(),a.color.scaleDim)),m=l.calculateX,n=l.calculateY,o=l.calculateWidth,p=l.calculateHeight,q=l.calculateTranslate,r=function(){return this.attr("height",p).attr("width",o).attr("class",function(b){return"i-role-element i-role-datum bar "+f+"bar "+e(b[a.color.scaleDim])}).attr("x",m).attr("y",n)},s=function(){this.attr("class",g).attr("transform",q);var a=this.selectAll("bar").data(function(a){return a.values});a.call(r),a.enter().append("rect").call(r),a.exit().remove()},t=b.container.selectAll("."+g).data(h);t.call(s),t.enter().append("g").call(s),t.exit().remove()};a.interval=k}),e("elements/coords-parallel",["exports","../utils/utils-draw","../const","../utils/utils","../matrix"],function(c,d,e,f,g){var h=d.utilsDraw,i=(e.CSS_PREFIX,f.utils),j=g.TMatrix,k=function(b,c,d){var e=a.defaults(i.clone(b),a.pick.apply(a,[c].concat(d)));return e.guide=a.extend(i.clone(c.guide||{}),e.guide||{}),e},l={walk:function(b,c){var d=a.defaults(b,{$where:{}}),e=new j(1,1),f=new j(1,1);return e.iterate(function(b,c){var e=a.extend({},d.$where),g=a(d.unit).map(function(b){return a.extend(k(b,d,["x"]),{$where:e}) +});f.setRC(b,c,g)}),d.$matrix=f,f.iterate(function(b,d,e){a.each(e,function(a){return c(a)})}),d},draw:function(a){var c=a.options,d=a.guide.padding,e=c.left+d.l,f=c.top+d.t,g=c.width-(d.l+d.r),i=c.height-(d.t+d.b),j=a.x.map(function(b){return a.scaleTo(b,[i,0],{})}),k=c.container.append("g").attr("class","graphical-report__cell cell").attr("transform",h.translate(e,f)),l=function(a,b){return"translate("+a+","+b+")"},m=function(a){return"rotate("+a+")"},n=function(a,c){var d=this,e=b.svg.axis().scale(a).orient("left"),f=d.append("g").attr("class","y axis").attr("transform",l.apply(null,c)).call(e);f.selectAll(".tick text").attr("transform",m(0)).style("text-anchor","end")},o=g/(a.x.length-1);return j.forEach(function(a,b){n.call(k,a,[b*o,0])}),k.append("g").attr("class","grid").attr("transform",l(0,0))}};c.CoordsParallel=l}),e("elements/coords-parallel-line",["exports","../utils/utils-draw","../const"],function(a,c,d){var e=(c.utilsDraw,d.CSS_PREFIX,{draw:function(a){a.color=a.dimension(a.color,a);var c=a.guide.color||{},d=a.scaleColor(a.color.scaleDim,c.brewer,c),e=a.options,f=a.x.reduce(function(b,c){return b[c]=a.scaleTo(c,[e.height,0],{}),b},{}),g=b.nest().key(function(a){return a[d.dimension]}).entries(a.partition()).map(function(b){var c=b.values[0],d=[];return a.x.forEach(function(a){d.push({key:a,val:c[a]})}),d}),h=function(){this.attr("class",function(){return"graphical-report__line line color20-9"});var a=this.selectAll("path").data(function(a){return[a]});a.call(l),a.enter().append("path").call(l),a.exit().remove()},i=e.width/(a.x.length-1),j={};a.x.forEach(function(a,b){j[a]=b*i});var k=b.svg.line().x(function(a){return j[a.key]}).y(function(a){return f[a.key](a.val)}),l=function(){this.attr("d",k)},m=e.container.selectAll(".line").data(g);m.call(h),m.enter().append("g").call(h),m.exit().remove()}});a.CoordsParallelLine=e}),e("node-map",["exports","./elements/coords","./elements/line","./elements/point","./elements/interval","./utils/utils-draw","./elements/coords-parallel","./elements/coords-parallel-line"],function(b,c,d,e,f,g,h,i){var j=c.coords,k=d.line,l=e.point,m=f.interval,n=(g.utilsDraw,h.CoordsParallel),o=i.CoordsParallelLine,p=function(b,c){c.forEach(function(a){b[a]=b.dimension(b[a],b)});var d=b.options,e=d.width,f=d.height;b.x.guide=b.guide.x,b.y.guide=b.guide.y,b.options.xScale=b.x.scaleDim&&b.scaleTo(b.x.scaleDim,[0,e],b.x.guide),b.options.yScale=b.y.scaleDim&&b.scaleTo(b.y.scaleDim,[f,0],b.y.guide);var g=b.guide.color||{};if(b.options.color=b.scaleColor(b.color.scaleDim,g.brewer,g),b.size){var h=.5*a.min([b.guide.x.tickFontHeight,b.guide.y.tickFontHeight].filter(function(a){return 0!==a})),i=.5*a.min([b.guide.x.density,b.guide.y.density].filter(function(a){return 0!==a})),j=b.guide.size||{};b.options.sizeScale=b.scaleSize(b.size.scaleDim,[2,i,h],j)}return b},q={"COORDS.RECT":{walk:j.walk,draw:function(a,b){return a.x=a.dimension(a.x,a),a.y=a.dimension(a.y,a),j.draw(a,b)}},"ELEMENT.POINT":function(a){return l(p(a,["x","y","color","size"]))},"ELEMENT.LINE":function(a){return k(p(a,["x","y","color"]))},"ELEMENT.INTERVAL":function(a){return m(p(a,["x","y","color"]))},"COORDS.PARALLEL":n,"PARALLEL/ELEMENT.LINE":o};b.nodeMap=q}),e("tau.newCharts",["exports","./utils/utils-dom","./charts/tau.plot","./charts/tau.chart","./unit-domain-mixin","./unit-domain-period-generator","./dsl-reader","./spec-engine-factory","./layout-engine-factory","./formatter-registry","./node-map","./units-registry"],function(c,d,e,f,g,h,i,j,k,l,m,n){var o=d.utilsDom,p=e.Plot,q=f.Chart,r=g.UnitDomainMixin,s=h.UnitDomainPeriodGenerator,t=i.DSLReader,u=j.SpecEngineFactory,v=k.LayoutEngineFactory,w=l.FormatterRegistry,x=m.nodeMap,y=n.UnitsRegistry,z={},A={},B={UnitDomainMixin:r,UnitDomainPeriodGenerator:s,DSLReader:t,SpecEngineFactory:u,LayoutEngineFactory:v},C={UnitsRegistry:y,tickFormat:w,d3:b,_:a,tickPeriod:s,colorBrewers:{add:function(a,b){a in z||(z[a]=b)},get:function(a){return z[a]}},plugins:{add:function(a,b){if(a in A)throw new Error("Plugin is already registered.");A[a]=b},get:function(a){return A[a]}},globalSettings:{log:function(a,b){b=b||"INFO",Array.isArray(a)||(a=[a]),console[b.toLowerCase()].apply(console,a)},excludeNull:!0,specEngine:[{name:"COMPACT",width:600},{name:"AUTO",width:Number.MAX_VALUE}],fitSize:!0,layoutEngine:"EXTRACT",getAxisTickLabelSize:o.getAxisTickLabelSize,getScrollBarWidth:o.getScrollbarWidth,xAxisTickLabelLimit:100,yAxisTickLabelLimit:100,xTickWordWrapLinesLimit:2,yTickWordWrapLinesLimit:2,xTickWidth:9,yTickWidth:9,distToXAxisLabel:20,distToYAxisLabel:20,xAxisPadding:20,yAxisPadding:20,xFontLabelHeight:10,yFontLabelHeight:10,xDensityPadding:4,yDensityPadding:4,"xDensityPadding:measure":8,"yDensityPadding:measure":8,defaultFormats:{measure:"x-num-auto","measure:time":"x-time-auto","measure:time:year":"year","measure:time:quarter":"quarter","measure:time:month":"month","measure:time:week":"x-time-auto","measure:time:day":"x-time-auto","measure:time:hour":"x-time-auto","measure:time:min":"x-time-auto","measure:time:sec":"x-time-auto","measure:time:ms":"x-time-auto"}}};p.globalSettings=C.globalSettings,C.UnitsRegistry.add("COORDS.PARALLEL",x["COORDS.PARALLEL"]).add("PARALLEL/ELEMENT.LINE",x["PARALLEL/ELEMENT.LINE"]).add("COORDS.RECT",x["COORDS.RECT"]).add("ELEMENT.POINT",x["ELEMENT.POINT"]).add("ELEMENT.LINE",x["ELEMENT.LINE"]).add("ELEMENT.INTERVAL",x["ELEMENT.INTERVAL"]),c.Plot=p,c.Chart=q,c.__api__=B,c.api=C}),e("underscore",function(){return a}),e("d3",function(){return b}),d("tau.newCharts")}),function(a){if("function"==typeof define&&define.amd)define(["tauCharts"],function(b){return a(b)});else if("object"==typeof module&&module.exports){var b=require("tauCharts");module.exports=a(b)}else a(this.tauCharts)}(function(a){var b={YlGn:{3:["#f7fcb9","#addd8e","#31a354"],4:["#ffffcc","#c2e699","#78c679","#238443"],5:["#ffffcc","#c2e699","#78c679","#31a354","#006837"],6:["#ffffcc","#d9f0a3","#addd8e","#78c679","#31a354","#006837"],7:["#ffffcc","#d9f0a3","#addd8e","#78c679","#41ab5d","#238443","#005a32"],8:["#ffffe5","#f7fcb9","#d9f0a3","#addd8e","#78c679","#41ab5d","#238443","#005a32"],9:["#ffffe5","#f7fcb9","#d9f0a3","#addd8e","#78c679","#41ab5d","#238443","#006837","#004529"]},YlGnBu:{3:["#edf8b1","#7fcdbb","#2c7fb8"],4:["#ffffcc","#a1dab4","#41b6c4","#225ea8"],5:["#ffffcc","#a1dab4","#41b6c4","#2c7fb8","#253494"],6:["#ffffcc","#c7e9b4","#7fcdbb","#41b6c4","#2c7fb8","#253494"],7:["#ffffcc","#c7e9b4","#7fcdbb","#41b6c4","#1d91c0","#225ea8","#0c2c84"],8:["#ffffd9","#edf8b1","#c7e9b4","#7fcdbb","#41b6c4","#1d91c0","#225ea8","#0c2c84"],9:["#ffffd9","#edf8b1","#c7e9b4","#7fcdbb","#41b6c4","#1d91c0","#225ea8","#253494","#081d58"]},GnBu:{3:["#e0f3db","#a8ddb5","#43a2ca"],4:["#f0f9e8","#bae4bc","#7bccc4","#2b8cbe"],5:["#f0f9e8","#bae4bc","#7bccc4","#43a2ca","#0868ac"],6:["#f0f9e8","#ccebc5","#a8ddb5","#7bccc4","#43a2ca","#0868ac"],7:["#f0f9e8","#ccebc5","#a8ddb5","#7bccc4","#4eb3d3","#2b8cbe","#08589e"],8:["#f7fcf0","#e0f3db","#ccebc5","#a8ddb5","#7bccc4","#4eb3d3","#2b8cbe","#08589e"],9:["#f7fcf0","#e0f3db","#ccebc5","#a8ddb5","#7bccc4","#4eb3d3","#2b8cbe","#0868ac","#084081"]},BuGn:{3:["#e5f5f9","#99d8c9","#2ca25f"],4:["#edf8fb","#b2e2e2","#66c2a4","#238b45"],5:["#edf8fb","#b2e2e2","#66c2a4","#2ca25f","#006d2c"],6:["#edf8fb","#ccece6","#99d8c9","#66c2a4","#2ca25f","#006d2c"],7:["#edf8fb","#ccece6","#99d8c9","#66c2a4","#41ae76","#238b45","#005824"],8:["#f7fcfd","#e5f5f9","#ccece6","#99d8c9","#66c2a4","#41ae76","#238b45","#005824"],9:["#f7fcfd","#e5f5f9","#ccece6","#99d8c9","#66c2a4","#41ae76","#238b45","#006d2c","#00441b"]},PuBuGn:{3:["#ece2f0","#a6bddb","#1c9099"],4:["#f6eff7","#bdc9e1","#67a9cf","#02818a"],5:["#f6eff7","#bdc9e1","#67a9cf","#1c9099","#016c59"],6:["#f6eff7","#d0d1e6","#a6bddb","#67a9cf","#1c9099","#016c59"],7:["#f6eff7","#d0d1e6","#a6bddb","#67a9cf","#3690c0","#02818a","#016450"],8:["#fff7fb","#ece2f0","#d0d1e6","#a6bddb","#67a9cf","#3690c0","#02818a","#016450"],9:["#fff7fb","#ece2f0","#d0d1e6","#a6bddb","#67a9cf","#3690c0","#02818a","#016c59","#014636"]},PuBu:{3:["#ece7f2","#a6bddb","#2b8cbe"],4:["#f1eef6","#bdc9e1","#74a9cf","#0570b0"],5:["#f1eef6","#bdc9e1","#74a9cf","#2b8cbe","#045a8d"],6:["#f1eef6","#d0d1e6","#a6bddb","#74a9cf","#2b8cbe","#045a8d"],7:["#f1eef6","#d0d1e6","#a6bddb","#74a9cf","#3690c0","#0570b0","#034e7b"],8:["#fff7fb","#ece7f2","#d0d1e6","#a6bddb","#74a9cf","#3690c0","#0570b0","#034e7b"],9:["#fff7fb","#ece7f2","#d0d1e6","#a6bddb","#74a9cf","#3690c0","#0570b0","#045a8d","#023858"]},BuPu:{3:["#e0ecf4","#9ebcda","#8856a7"],4:["#edf8fb","#b3cde3","#8c96c6","#88419d"],5:["#edf8fb","#b3cde3","#8c96c6","#8856a7","#810f7c"],6:["#edf8fb","#bfd3e6","#9ebcda","#8c96c6","#8856a7","#810f7c"],7:["#edf8fb","#bfd3e6","#9ebcda","#8c96c6","#8c6bb1","#88419d","#6e016b"],8:["#f7fcfd","#e0ecf4","#bfd3e6","#9ebcda","#8c96c6","#8c6bb1","#88419d","#6e016b"],9:["#f7fcfd","#e0ecf4","#bfd3e6","#9ebcda","#8c96c6","#8c6bb1","#88419d","#810f7c","#4d004b"]},RdPu:{3:["#fde0dd","#fa9fb5","#c51b8a"],4:["#feebe2","#fbb4b9","#f768a1","#ae017e"],5:["#feebe2","#fbb4b9","#f768a1","#c51b8a","#7a0177"],6:["#feebe2","#fcc5c0","#fa9fb5","#f768a1","#c51b8a","#7a0177"],7:["#feebe2","#fcc5c0","#fa9fb5","#f768a1","#dd3497","#ae017e","#7a0177"],8:["#fff7f3","#fde0dd","#fcc5c0","#fa9fb5","#f768a1","#dd3497","#ae017e","#7a0177"],9:["#fff7f3","#fde0dd","#fcc5c0","#fa9fb5","#f768a1","#dd3497","#ae017e","#7a0177","#49006a"]},PuRd:{3:["#e7e1ef","#c994c7","#dd1c77"],4:["#f1eef6","#d7b5d8","#df65b0","#ce1256"],5:["#f1eef6","#d7b5d8","#df65b0","#dd1c77","#980043"],6:["#f1eef6","#d4b9da","#c994c7","#df65b0","#dd1c77","#980043"],7:["#f1eef6","#d4b9da","#c994c7","#df65b0","#e7298a","#ce1256","#91003f"],8:["#f7f4f9","#e7e1ef","#d4b9da","#c994c7","#df65b0","#e7298a","#ce1256","#91003f"],9:["#f7f4f9","#e7e1ef","#d4b9da","#c994c7","#df65b0","#e7298a","#ce1256","#980043","#67001f"]},OrRd:{3:["#fee8c8","#fdbb84","#e34a33"],4:["#fef0d9","#fdcc8a","#fc8d59","#d7301f"],5:["#fef0d9","#fdcc8a","#fc8d59","#e34a33","#b30000"],6:["#fef0d9","#fdd49e","#fdbb84","#fc8d59","#e34a33","#b30000"],7:["#fef0d9","#fdd49e","#fdbb84","#fc8d59","#ef6548","#d7301f","#990000"],8:["#fff7ec","#fee8c8","#fdd49e","#fdbb84","#fc8d59","#ef6548","#d7301f","#990000"],9:["#fff7ec","#fee8c8","#fdd49e","#fdbb84","#fc8d59","#ef6548","#d7301f","#b30000","#7f0000"]},YlOrRd:{3:["#ffeda0","#feb24c","#f03b20"],4:["#ffffb2","#fecc5c","#fd8d3c","#e31a1c"],5:["#ffffb2","#fecc5c","#fd8d3c","#f03b20","#bd0026"],6:["#ffffb2","#fed976","#feb24c","#fd8d3c","#f03b20","#bd0026"],7:["#ffffb2","#fed976","#feb24c","#fd8d3c","#fc4e2a","#e31a1c","#b10026"],8:["#ffffcc","#ffeda0","#fed976","#feb24c","#fd8d3c","#fc4e2a","#e31a1c","#b10026"],9:["#ffffcc","#ffeda0","#fed976","#feb24c","#fd8d3c","#fc4e2a","#e31a1c","#bd0026","#800026"]},YlOrBr:{3:["#fff7bc","#fec44f","#d95f0e"],4:["#ffffd4","#fed98e","#fe9929","#cc4c02"],5:["#ffffd4","#fed98e","#fe9929","#d95f0e","#993404"],6:["#ffffd4","#fee391","#fec44f","#fe9929","#d95f0e","#993404"],7:["#ffffd4","#fee391","#fec44f","#fe9929","#ec7014","#cc4c02","#8c2d04"],8:["#ffffe5","#fff7bc","#fee391","#fec44f","#fe9929","#ec7014","#cc4c02","#8c2d04"],9:["#ffffe5","#fff7bc","#fee391","#fec44f","#fe9929","#ec7014","#cc4c02","#993404","#662506"]},Purples:{3:["#efedf5","#bcbddc","#756bb1"],4:["#f2f0f7","#cbc9e2","#9e9ac8","#6a51a3"],5:["#f2f0f7","#cbc9e2","#9e9ac8","#756bb1","#54278f"],6:["#f2f0f7","#dadaeb","#bcbddc","#9e9ac8","#756bb1","#54278f"],7:["#f2f0f7","#dadaeb","#bcbddc","#9e9ac8","#807dba","#6a51a3","#4a1486"],8:["#fcfbfd","#efedf5","#dadaeb","#bcbddc","#9e9ac8","#807dba","#6a51a3","#4a1486"],9:["#fcfbfd","#efedf5","#dadaeb","#bcbddc","#9e9ac8","#807dba","#6a51a3","#54278f","#3f007d"]},Blues:{3:["#deebf7","#9ecae1","#3182bd"],4:["#eff3ff","#bdd7e7","#6baed6","#2171b5"],5:["#eff3ff","#bdd7e7","#6baed6","#3182bd","#08519c"],6:["#eff3ff","#c6dbef","#9ecae1","#6baed6","#3182bd","#08519c"],7:["#eff3ff","#c6dbef","#9ecae1","#6baed6","#4292c6","#2171b5","#084594"],8:["#f7fbff","#deebf7","#c6dbef","#9ecae1","#6baed6","#4292c6","#2171b5","#084594"],9:["#f7fbff","#deebf7","#c6dbef","#9ecae1","#6baed6","#4292c6","#2171b5","#08519c","#08306b"]},Greens:{3:["#e5f5e0","#a1d99b","#31a354"],4:["#edf8e9","#bae4b3","#74c476","#238b45"],5:["#edf8e9","#bae4b3","#74c476","#31a354","#006d2c"],6:["#edf8e9","#c7e9c0","#a1d99b","#74c476","#31a354","#006d2c"],7:["#edf8e9","#c7e9c0","#a1d99b","#74c476","#41ab5d","#238b45","#005a32"],8:["#f7fcf5","#e5f5e0","#c7e9c0","#a1d99b","#74c476","#41ab5d","#238b45","#005a32"],9:["#f7fcf5","#e5f5e0","#c7e9c0","#a1d99b","#74c476","#41ab5d","#238b45","#006d2c","#00441b"]},Oranges:{3:["#fee6ce","#fdae6b","#e6550d"],4:["#feedde","#fdbe85","#fd8d3c","#d94701"],5:["#feedde","#fdbe85","#fd8d3c","#e6550d","#a63603"],6:["#feedde","#fdd0a2","#fdae6b","#fd8d3c","#e6550d","#a63603"],7:["#feedde","#fdd0a2","#fdae6b","#fd8d3c","#f16913","#d94801","#8c2d04"],8:["#fff5eb","#fee6ce","#fdd0a2","#fdae6b","#fd8d3c","#f16913","#d94801","#8c2d04"],9:["#fff5eb","#fee6ce","#fdd0a2","#fdae6b","#fd8d3c","#f16913","#d94801","#a63603","#7f2704"]},Reds:{3:["#fee0d2","#fc9272","#de2d26"],4:["#fee5d9","#fcae91","#fb6a4a","#cb181d"],5:["#fee5d9","#fcae91","#fb6a4a","#de2d26","#a50f15"],6:["#fee5d9","#fcbba1","#fc9272","#fb6a4a","#de2d26","#a50f15"],7:["#fee5d9","#fcbba1","#fc9272","#fb6a4a","#ef3b2c","#cb181d","#99000d"],8:["#fff5f0","#fee0d2","#fcbba1","#fc9272","#fb6a4a","#ef3b2c","#cb181d","#99000d"],9:["#fff5f0","#fee0d2","#fcbba1","#fc9272","#fb6a4a","#ef3b2c","#cb181d","#a50f15","#67000d"]},Greys:{3:["#f0f0f0","#bdbdbd","#636363"],4:["#f7f7f7","#cccccc","#969696","#525252"],5:["#f7f7f7","#cccccc","#969696","#636363","#252525"],6:["#f7f7f7","#d9d9d9","#bdbdbd","#969696","#636363","#252525"],7:["#f7f7f7","#d9d9d9","#bdbdbd","#969696","#737373","#525252","#252525"],8:["#ffffff","#f0f0f0","#d9d9d9","#bdbdbd","#969696","#737373","#525252","#252525"],9:["#ffffff","#f0f0f0","#d9d9d9","#bdbdbd","#969696","#737373","#525252","#252525","#000000"]},PuOr:{3:["#f1a340","#f7f7f7","#998ec3"],4:["#e66101","#fdb863","#b2abd2","#5e3c99"],5:["#e66101","#fdb863","#f7f7f7","#b2abd2","#5e3c99"],6:["#b35806","#f1a340","#fee0b6","#d8daeb","#998ec3","#542788"],7:["#b35806","#f1a340","#fee0b6","#f7f7f7","#d8daeb","#998ec3","#542788"],8:["#b35806","#e08214","#fdb863","#fee0b6","#d8daeb","#b2abd2","#8073ac","#542788"],9:["#b35806","#e08214","#fdb863","#fee0b6","#f7f7f7","#d8daeb","#b2abd2","#8073ac","#542788"],10:["#7f3b08","#b35806","#e08214","#fdb863","#fee0b6","#d8daeb","#b2abd2","#8073ac","#542788","#2d004b"],11:["#7f3b08","#b35806","#e08214","#fdb863","#fee0b6","#f7f7f7","#d8daeb","#b2abd2","#8073ac","#542788","#2d004b"]},BrBG:{3:["#d8b365","#f5f5f5","#5ab4ac"],4:["#a6611a","#dfc27d","#80cdc1","#018571"],5:["#a6611a","#dfc27d","#f5f5f5","#80cdc1","#018571"],6:["#8c510a","#d8b365","#f6e8c3","#c7eae5","#5ab4ac","#01665e"],7:["#8c510a","#d8b365","#f6e8c3","#f5f5f5","#c7eae5","#5ab4ac","#01665e"],8:["#8c510a","#bf812d","#dfc27d","#f6e8c3","#c7eae5","#80cdc1","#35978f","#01665e"],9:["#8c510a","#bf812d","#dfc27d","#f6e8c3","#f5f5f5","#c7eae5","#80cdc1","#35978f","#01665e"],10:["#543005","#8c510a","#bf812d","#dfc27d","#f6e8c3","#c7eae5","#80cdc1","#35978f","#01665e","#003c30"],11:["#543005","#8c510a","#bf812d","#dfc27d","#f6e8c3","#f5f5f5","#c7eae5","#80cdc1","#35978f","#01665e","#003c30"]},PRGn:{3:["#af8dc3","#f7f7f7","#7fbf7b"],4:["#7b3294","#c2a5cf","#a6dba0","#008837"],5:["#7b3294","#c2a5cf","#f7f7f7","#a6dba0","#008837"],6:["#762a83","#af8dc3","#e7d4e8","#d9f0d3","#7fbf7b","#1b7837"],7:["#762a83","#af8dc3","#e7d4e8","#f7f7f7","#d9f0d3","#7fbf7b","#1b7837"],8:["#762a83","#9970ab","#c2a5cf","#e7d4e8","#d9f0d3","#a6dba0","#5aae61","#1b7837"],9:["#762a83","#9970ab","#c2a5cf","#e7d4e8","#f7f7f7","#d9f0d3","#a6dba0","#5aae61","#1b7837"],10:["#40004b","#762a83","#9970ab","#c2a5cf","#e7d4e8","#d9f0d3","#a6dba0","#5aae61","#1b7837","#00441b"],11:["#40004b","#762a83","#9970ab","#c2a5cf","#e7d4e8","#f7f7f7","#d9f0d3","#a6dba0","#5aae61","#1b7837","#00441b"]},PiYG:{3:["#e9a3c9","#f7f7f7","#a1d76a"],4:["#d01c8b","#f1b6da","#b8e186","#4dac26"],5:["#d01c8b","#f1b6da","#f7f7f7","#b8e186","#4dac26"],6:["#c51b7d","#e9a3c9","#fde0ef","#e6f5d0","#a1d76a","#4d9221"],7:["#c51b7d","#e9a3c9","#fde0ef","#f7f7f7","#e6f5d0","#a1d76a","#4d9221"],8:["#c51b7d","#de77ae","#f1b6da","#fde0ef","#e6f5d0","#b8e186","#7fbc41","#4d9221"],9:["#c51b7d","#de77ae","#f1b6da","#fde0ef","#f7f7f7","#e6f5d0","#b8e186","#7fbc41","#4d9221"],10:["#8e0152","#c51b7d","#de77ae","#f1b6da","#fde0ef","#e6f5d0","#b8e186","#7fbc41","#4d9221","#276419"],11:["#8e0152","#c51b7d","#de77ae","#f1b6da","#fde0ef","#f7f7f7","#e6f5d0","#b8e186","#7fbc41","#4d9221","#276419"]},RdBu:{3:["#ef8a62","#f7f7f7","#67a9cf"],4:["#ca0020","#f4a582","#92c5de","#0571b0"],5:["#ca0020","#f4a582","#f7f7f7","#92c5de","#0571b0"],6:["#b2182b","#ef8a62","#fddbc7","#d1e5f0","#67a9cf","#2166ac"],7:["#b2182b","#ef8a62","#fddbc7","#f7f7f7","#d1e5f0","#67a9cf","#2166ac"],8:["#b2182b","#d6604d","#f4a582","#fddbc7","#d1e5f0","#92c5de","#4393c3","#2166ac"],9:["#b2182b","#d6604d","#f4a582","#fddbc7","#f7f7f7","#d1e5f0","#92c5de","#4393c3","#2166ac"],10:["#67001f","#b2182b","#d6604d","#f4a582","#fddbc7","#d1e5f0","#92c5de","#4393c3","#2166ac","#053061"],11:["#67001f","#b2182b","#d6604d","#f4a582","#fddbc7","#f7f7f7","#d1e5f0","#92c5de","#4393c3","#2166ac","#053061"]},RdGy:{3:["#ef8a62","#ffffff","#999999"],4:["#ca0020","#f4a582","#bababa","#404040"],5:["#ca0020","#f4a582","#ffffff","#bababa","#404040"],6:["#b2182b","#ef8a62","#fddbc7","#e0e0e0","#999999","#4d4d4d"],7:["#b2182b","#ef8a62","#fddbc7","#ffffff","#e0e0e0","#999999","#4d4d4d"],8:["#b2182b","#d6604d","#f4a582","#fddbc7","#e0e0e0","#bababa","#878787","#4d4d4d"],9:["#b2182b","#d6604d","#f4a582","#fddbc7","#ffffff","#e0e0e0","#bababa","#878787","#4d4d4d"],10:["#67001f","#b2182b","#d6604d","#f4a582","#fddbc7","#e0e0e0","#bababa","#878787","#4d4d4d","#1a1a1a"],11:["#67001f","#b2182b","#d6604d","#f4a582","#fddbc7","#ffffff","#e0e0e0","#bababa","#878787","#4d4d4d","#1a1a1a"]},RdYlBu:{3:["#fc8d59","#ffffbf","#91bfdb"],4:["#d7191c","#fdae61","#abd9e9","#2c7bb6"],5:["#d7191c","#fdae61","#ffffbf","#abd9e9","#2c7bb6"],6:["#d73027","#fc8d59","#fee090","#e0f3f8","#91bfdb","#4575b4"],7:["#d73027","#fc8d59","#fee090","#ffffbf","#e0f3f8","#91bfdb","#4575b4"],8:["#d73027","#f46d43","#fdae61","#fee090","#e0f3f8","#abd9e9","#74add1","#4575b4"],9:["#d73027","#f46d43","#fdae61","#fee090","#ffffbf","#e0f3f8","#abd9e9","#74add1","#4575b4"],10:["#a50026","#d73027","#f46d43","#fdae61","#fee090","#e0f3f8","#abd9e9","#74add1","#4575b4","#313695"],11:["#a50026","#d73027","#f46d43","#fdae61","#fee090","#ffffbf","#e0f3f8","#abd9e9","#74add1","#4575b4","#313695"]},Spectral:{3:["#fc8d59","#ffffbf","#99d594"],4:["#d7191c","#fdae61","#abdda4","#2b83ba"],5:["#d7191c","#fdae61","#ffffbf","#abdda4","#2b83ba"],6:["#d53e4f","#fc8d59","#fee08b","#e6f598","#99d594","#3288bd"],7:["#d53e4f","#fc8d59","#fee08b","#ffffbf","#e6f598","#99d594","#3288bd"],8:["#d53e4f","#f46d43","#fdae61","#fee08b","#e6f598","#abdda4","#66c2a5","#3288bd"],9:["#d53e4f","#f46d43","#fdae61","#fee08b","#ffffbf","#e6f598","#abdda4","#66c2a5","#3288bd"],10:["#9e0142","#d53e4f","#f46d43","#fdae61","#fee08b","#e6f598","#abdda4","#66c2a5","#3288bd","#5e4fa2"],11:["#9e0142","#d53e4f","#f46d43","#fdae61","#fee08b","#ffffbf","#e6f598","#abdda4","#66c2a5","#3288bd","#5e4fa2"]},RdYlGn:{3:["#fc8d59","#ffffbf","#91cf60"],4:["#d7191c","#fdae61","#a6d96a","#1a9641"],5:["#d7191c","#fdae61","#ffffbf","#a6d96a","#1a9641"],6:["#d73027","#fc8d59","#fee08b","#d9ef8b","#91cf60","#1a9850"],7:["#d73027","#fc8d59","#fee08b","#ffffbf","#d9ef8b","#91cf60","#1a9850"],8:["#d73027","#f46d43","#fdae61","#fee08b","#d9ef8b","#a6d96a","#66bd63","#1a9850"],9:["#d73027","#f46d43","#fdae61","#fee08b","#ffffbf","#d9ef8b","#a6d96a","#66bd63","#1a9850"],10:["#a50026","#d73027","#f46d43","#fdae61","#fee08b","#d9ef8b","#a6d96a","#66bd63","#1a9850","#006837"],11:["#a50026","#d73027","#f46d43","#fdae61","#fee08b","#ffffbf","#d9ef8b","#a6d96a","#66bd63","#1a9850","#006837"]},Accent:{3:["#7fc97f","#beaed4","#fdc086"],4:["#7fc97f","#beaed4","#fdc086","#ffff99"],5:["#7fc97f","#beaed4","#fdc086","#ffff99","#386cb0"],6:["#7fc97f","#beaed4","#fdc086","#ffff99","#386cb0","#f0027f"],7:["#7fc97f","#beaed4","#fdc086","#ffff99","#386cb0","#f0027f","#bf5b17"],8:["#7fc97f","#beaed4","#fdc086","#ffff99","#386cb0","#f0027f","#bf5b17","#666666"]},Dark2:{3:["#1b9e77","#d95f02","#7570b3"],4:["#1b9e77","#d95f02","#7570b3","#e7298a"],5:["#1b9e77","#d95f02","#7570b3","#e7298a","#66a61e"],6:["#1b9e77","#d95f02","#7570b3","#e7298a","#66a61e","#e6ab02"],7:["#1b9e77","#d95f02","#7570b3","#e7298a","#66a61e","#e6ab02","#a6761d"],8:["#1b9e77","#d95f02","#7570b3","#e7298a","#66a61e","#e6ab02","#a6761d","#666666"]},Paired:{3:["#a6cee3","#1f78b4","#b2df8a"],4:["#a6cee3","#1f78b4","#b2df8a","#33a02c"],5:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99"],6:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c"],7:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f"],8:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f","#ff7f00"],9:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f","#ff7f00","#cab2d6"],10:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f","#ff7f00","#cab2d6","#6a3d9a"],11:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f","#ff7f00","#cab2d6","#6a3d9a","#ffff99"],12:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f","#ff7f00","#cab2d6","#6a3d9a","#ffff99","#b15928"]},Pastel1:{3:["#fbb4ae","#b3cde3","#ccebc5"],4:["#fbb4ae","#b3cde3","#ccebc5","#decbe4"],5:["#fbb4ae","#b3cde3","#ccebc5","#decbe4","#fed9a6"],6:["#fbb4ae","#b3cde3","#ccebc5","#decbe4","#fed9a6","#ffffcc"],7:["#fbb4ae","#b3cde3","#ccebc5","#decbe4","#fed9a6","#ffffcc","#e5d8bd"],8:["#fbb4ae","#b3cde3","#ccebc5","#decbe4","#fed9a6","#ffffcc","#e5d8bd","#fddaec"],9:["#fbb4ae","#b3cde3","#ccebc5","#decbe4","#fed9a6","#ffffcc","#e5d8bd","#fddaec","#f2f2f2"]},Pastel2:{3:["#b3e2cd","#fdcdac","#cbd5e8"],4:["#b3e2cd","#fdcdac","#cbd5e8","#f4cae4"],5:["#b3e2cd","#fdcdac","#cbd5e8","#f4cae4","#e6f5c9"],6:["#b3e2cd","#fdcdac","#cbd5e8","#f4cae4","#e6f5c9","#fff2ae"],7:["#b3e2cd","#fdcdac","#cbd5e8","#f4cae4","#e6f5c9","#fff2ae","#f1e2cc"],8:["#b3e2cd","#fdcdac","#cbd5e8","#f4cae4","#e6f5c9","#fff2ae","#f1e2cc","#cccccc"]},Set1:{3:["#e41a1c","#377eb8","#4daf4a"],4:["#e41a1c","#377eb8","#4daf4a","#984ea3"],5:["#e41a1c","#377eb8","#4daf4a","#984ea3","#ff7f00"],6:["#e41a1c","#377eb8","#4daf4a","#984ea3","#ff7f00","#ffff33"],7:["#e41a1c","#377eb8","#4daf4a","#984ea3","#ff7f00","#ffff33","#a65628"],8:["#e41a1c","#377eb8","#4daf4a","#984ea3","#ff7f00","#ffff33","#a65628","#f781bf"],9:["#e41a1c","#377eb8","#4daf4a","#984ea3","#ff7f00","#ffff33","#a65628","#f781bf","#999999"]},Set2:{3:["#66c2a5","#fc8d62","#8da0cb"],4:["#66c2a5","#fc8d62","#8da0cb","#e78ac3"],5:["#66c2a5","#fc8d62","#8da0cb","#e78ac3","#a6d854"],6:["#66c2a5","#fc8d62","#8da0cb","#e78ac3","#a6d854","#ffd92f"],7:["#66c2a5","#fc8d62","#8da0cb","#e78ac3","#a6d854","#ffd92f","#e5c494"],8:["#66c2a5","#fc8d62","#8da0cb","#e78ac3","#a6d854","#ffd92f","#e5c494","#b3b3b3"]},Set3:{3:["#8dd3c7","#ffffb3","#bebada"],4:["#8dd3c7","#ffffb3","#bebada","#fb8072"],5:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3"],6:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462"],7:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69"],8:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69","#fccde5"],9:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69","#fccde5","#d9d9d9"],10:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69","#fccde5","#d9d9d9","#bc80bd"],11:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69","#fccde5","#d9d9d9","#bc80bd","#ccebc5"],12:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69","#fccde5","#d9d9d9","#bc80bd","#ccebc5","#ffed6f"]}},c=function(a,c){return b[a][c].map(function(b,d){return a+" q"+d+"-"+c})};return a.api.colorBrewers.add("tauBrewer",c),c}),function(a){if("function"==typeof define&&define.amd)define(["tauCharts"],function(b){return a(b)});else if("object"==typeof module&&module.exports){var b=require("tauCharts");module.exports=a(b)}else a(this.tauCharts)}(function(a){var b=function(a){if(a.color)return a;var c,d,e,f=a.unit||[];for(c=0;c',_template:c.template('
<%=name%>
<%=items%>'),_itemTemplate:c.template(["
\">",'
<%=label%>',"
"].join("")),onRender:function(a){if(this._container){var d=this._unit.options.color,f=this._unit.color.scaleDim,g=a.getConfig(),h=b(g.spec.unit);h.guide=h.guide||{},h.guide.color=this._unit.guide.color;var i=h.guide.color.label.text||d.dimension,j=this._getColorMap(a.getData({excludeFilter:["legend"]}),d,f);h.guide.color.brewer=j.brewer;var k=c.reduce(j.values,function(a,b){var d={dimension:f,value:b.value,color:b.color},g=JSON.stringify(d),h=c.escape(e(b.label)?"No "+i:b.label);return a.items.push(this._itemTemplate({color:b.color,classDisabled:this._currentFilters[g]?"disabled":"",label:h,value:c.escape(g)})),a.storageValues[g]=d,a},{items:[],storageValues:{}},this);this._storageValues=k.storageValues,this._container.innerHTML=this._template({items:k.items.join(""),name:i})}}}};return a.api.plugins.add("legend",f),f}),function(a){if("function"==typeof define&&define.amd)define(["tauCharts"],function(b){return a(b)});else if("object"==typeof module&&module.exports){var b=require("tauCharts");module.exports=a(b)}else a(this.tauCharts)}(function(a){function b(b){return b=b||{},{template:['
','
','
','Exclude',"
","
"].join(""),itemTemplate:['
','
<%=label%>
','
<%=value%>
',"
"].join(""),onExcludeData:function(){},_drawPoint:function(a,b,c,d){this.circle&&this.circle.remove(),this.circle=a.append("circle").attr("cx",b).attr("cy",c).attr("class",d).attr("r",4),this.circle.node().addEventListener("mouseover",function(){clearTimeout(this._timeoutHideId)}.bind(this),!1),this.circle.node().addEventListener("mouseleave",function(){this._hide()}.bind(this),!1)},formatters:{},labels:{},init:function(a){this._chart=a,this._dataFields=b.fields,this._getDataFields=b.getFields,c.extend(this,c.omit(b,"fields","getFields")),this._timeoutHideId=null,this._dataWithCoords={},this._unitMeta={},this._templateItem=c.template(this.itemTemplate),this._tooltip=a.addBalloon({spacing:3,auto:!0,effectClass:"fade"}),this._elementTooltip=this._tooltip.getElement();var d=a.getConfig().spec,e=this._findDimensionGuides(d),f=c.reduce(e,function(a,b,d){return a[d]=c.last(b),a},{}),g=this._generateDefaultFormatters(f,d.dimensions);c.extend(this.formatters,g);var h=this._generateDefaultLabels(f);c.extend(this.labels,h);var i=this._elementTooltip;i.addEventListener("mouseover",function(){clearTimeout(this._timeoutHideId)}.bind(this),!1),i.addEventListener("mouseleave",function(){this._hide()}.bind(this),!1),i.addEventListener("click",function(a){for(var b=a.target;b!==a.currentTarget&&null!==b;)b.classList.contains("i-role-exclude")&&(this._exclude(),this._hide()),b=b.parentNode}.bind(this),!1),i.insertAdjacentHTML("afterbegin",this.template),this.afterInit(this._elementTooltip)},afterInit:function(){},onUnitReady:function(a,b){if(b.type&&0===b.type.indexOf("ELEMENT")){var c=this._generateKey(b.$where);this._unitMeta[c]=b;var d=b.partition();this._dataWithCoords[c]=d.map(function(a){return{x:b.options.xScale(a[b.x.scaleDim]),y:b.options.yScale(a[b.y.scaleDim]),item:a}},this)}},renderItem:function(a,b){return this._templateItem({label:a,value:b})},render:function(a,b){return b=c.unique(b),b.map(function(b){var c=a[b],d=this._getFormatter(b)(c),e=this._getLabel(b);return this.renderItem(e,d,b,c)},this).join("")},afterRender:function(){},onRender:function(a){c.isFunction(this._getDataFields)&&(this._dataFields=this._getDataFields(a)),this._hide()},_getFormatter:function(a){return this.formatters[a]||c.identity},_getLabel:function(a){return this.labels[a]||a},_generateDefaultLabels:function(a){return c.reduce(a,function(a,b,c){return a[c]=b.label||c,a},{})},_generateDefaultFormatters:function(b,d){return c.reduce(b,function(b,c,e){var f=function(b){if(null==b)return null;var f=c.tickPeriod||c.tickFormat;return f?a.api.tickFormat.get(f)(b):c.tickLabel?b[c.tickLabel]:d[e].value?b[d[e].value]:b};return b[e]=function(a){var b=f(a);return null==b?"No "+c.label:b},b},{})},_findDimensionGuides:function(a){var b={},c=function(a,c){var d=c[a];if(d){var e=(c.guide||{})[a];e&&(b[d]||(b[d]=[]),b[d].push(e))}};return f(a.unit,function(a){return c("x",a),c("y",a),c("color",a),c("size",a),!1}),b},_exclude:function(){this._chart.addFilter({tag:"exclude",predicate:function(a){return function(b){return JSON.stringify(b)!==JSON.stringify(a)}}(this._currentElement)}),this.onExcludeData(this._currentElement)},_calculateLength:function(a,b,c,d){return(c-a)*(c-a)+(d-b)*(d-b) +},_calculateLengthToLine:function(a,b,c,d,f,g){var h={x:c-a,y:d-b},i={x:f-a,y:g-b},j=h.x*i.x+h.y*i.y;if(0>j)return e(a,f,b,g);var k={x:a-c,y:b-d},l={x:f-c,y:g-d},m=k.x*l.x+k.y*l.y;return 0>m?e(c,f,d,g):Math.abs(((c-a)*(g-b)-(d-b)*(f-a))/e(a,c,b,d))},_generateKey:function(a){return JSON.stringify(a)},_getFields:function(a){if(this._dataFields)return this._dataFields;for(var b=[a.size&&a.size.scaleDim,a.color&&a.color.scaleDim],d=[],e=[];a=a.parentUnit;)d.push(a.x.scaleDim),e.push(a.y.scaleDim);return c.compact(b.concat(e,d).reverse())},isLine:function(a){return a.elementData.hasOwnProperty("key")&&Array.isArray(a.elementData.values)},_onElementMouseOver:function(a,b,e,f){clearTimeout(this._timeoutHideId);var g=this._generateKey(b.cellData.$where),h=b.elementData,i=this.isLine(b);if(i){var j=this._dataWithCoords[g],k=j.filter(function(a){return c.contains(h.values,a.item)}),l=c.reduce(k,function(a,b,c,d){var f;if(c+1===d.length){var g=b;b=d[c-1],f=g}else f=d[c+1];var h=this._calculateLengthToLine(b.x,b.y,f.x,f.y,e[0],e[1]);return h1&&f("i-trendline-"+e,p,i.xScale,i.yScale,i.color(g),i.container,h)});var q=function(a){return function(){var b=e.select(this);b.classed({active:a,"graphical-report__line-width-1":!a,"graphical-report__line-width-2":a})}};i.container.selectAll(".graphical-report__trendline").on("mouseenter",q(!0)).on("mouseleave",q(!1))}},containerTemplate:'
',template:d.template(['","
",'","
",'
<%= error %>
'].join("")),onRender:function(){this._container&&(this._container.innerHTML=this.template({title:"Trend line",error:this._error,showTrend:b.showTrend&&this._isApplicable?"checked":"",models:["linear","exponential","logarithmic"].map(function(a){var c=b.type===a?"selected":"";return""})}))}}}var c=function(){"use strict";var a=function(a,b){var c=0,d=0,e=0,f=0,g=0,h=a.length-1,i=new Array(b);for(c=0;h>c;c++){for(f=c,d=c+1;h>d;d++)Math.abs(a[c][d])>Math.abs(a[c][f])&&(f=d);for(e=c;h+1>e;e++)g=a[e][c],a[e][c]=a[e][f],a[e][f]=g;for(d=c+1;h>d;d++)for(e=h;e>=c;e--)a[e][d]-=a[e][c]*a[c][d]/a[c][c]}for(d=h-1;d>=0;d--){for(g=0,e=d+1;h>e;e++)g+=a[e][d]*i[e];i[d]=(a[h][d]-g)/a[d][d]}return i},b={linear:function(a){for(var b=[0,0,0,0,0],c=0,d=[];cg;g++){var i=[a[g][0],a[g][0]*e+f];d.push(i)}var j="y = "+Math.round(100*e)/100+"x + "+Math.round(100*f)/100;return{equation:[e,f],points:d,string:j}},exponential:function(a){var b=[0,0,0,0,0,0],c=0,d=[];for(i=a.length;i>c;c++)a[c][1]&&(b[0]+=a[c][0],b[1]+=a[c][1],b[2]+=a[c][0]*a[c][0]*a[c][1],b[3]+=a[c][1]*Math.log(a[c][1]),b[4]+=a[c][0]*a[c][1]*Math.log(a[c][1]),b[5]+=a[c][0]*a[c][1]);for(var e=b[1]*b[2]-b[5]*b[5],f=Math.pow(Math.E,(b[2]*b[3]-b[5]*b[4])/e),g=(b[1]*b[4]-b[5]*b[3])/e,h=0,i=a.length;i>h;h++){var j=[a[h][0],f*Math.pow(Math.E,g*a[h][0])];d.push(j)}var k="y = "+Math.round(100*f)/100+"e^("+Math.round(100*g)/100+"x)";return{equation:[f,g],points:d,string:k}},logarithmic:function(a){var b=[0,0,0,0],c=0,d=[];for(h=a.length;h>c;c++)a[c][1]&&(b[0]+=Math.log(a[c][0]),b[1]+=a[c][1]*Math.log(a[c][0]),b[2]+=a[c][1],b[3]+=Math.pow(Math.log(a[c][0]),2));for(var e=(c*b[1]-b[2]*b[0])/(c*b[3]-b[0]*b[0]),f=(b[2]-e*b[0])/c,g=0,h=a.length;h>g;g++){var i=[a[g][0],f+e*Math.log(a[g][0])];d.push(i)}var j="y = "+Math.round(100*f)/100+" + "+Math.round(100*e)/100+" ln(x)";return{equation:[f,e],points:d,string:j}},power:function(a){var b=[0,0,0,0],c=0,d=[];for(h=a.length;h>c;c++)a[c][1]&&(b[0]+=Math.log(a[c][0]),b[1]+=Math.log(a[c][1])*Math.log(a[c][0]),b[2]+=Math.log(a[c][1]),b[3]+=Math.pow(Math.log(a[c][0]),2));for(var e=(c*b[1]-b[2]*b[0])/(c*b[3]-b[0]*b[0]),f=Math.pow(Math.E,(b[2]-e*b[0])/c),g=0,h=a.length;h>g;g++){var i=[a[g][0],f*Math.pow(a[g][0],e)];d.push(i)}var j="y = "+Math.round(100*f)/100+"x^"+Math.round(100*e)/100;return{equation:[f,e],points:d,string:j}},polynomial:function(b,c){"undefined"==typeof c&&(c=2);for(var d=[],e=[],f=[],g=0,h=0,i=0,j=c+1;j>i;i++){for(var k=0,l=b.length;l>k;k++)b[k][1]&&(g+=Math.pow(b[k][0],i)*b[k][1]);d.push(g),g=0;for(var m=[],n=0;j>n;n++){for(var k=0,l=b.length;l>k;k++)b[k][1]&&(h+=Math.pow(b[k][0],i+n));m.push(h),h=0}e.push(m)}e.push(d);for(var o=a(e,j),i=0,l=b.length;l>i;i++){for(var p=0,q=0;q=0;i--)r+=i>1?Math.round(100*o[i])/100+"x^"+i+" + ":1==i?Math.round(100*o[i])/100+"x + ":Math.round(100*o[i])/100;return{equation:o,points:f,string:r}},lastvalue:function(a){for(var b=[],c=null,d=0;d